diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 8ac1a5317..000000000 --- a/.editorconfig +++ /dev/null @@ -1,12 +0,0 @@ -root = true - -[*] -indent_style = space -indent_size = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true - -[*.svg] -insert_final_newline = false diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index 371816b49..000000000 --- a/.gitattributes +++ /dev/null @@ -1,3 +0,0 @@ -text=auto - -*.json eol=lf diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index de71c6e9f..000000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,21 +0,0 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates - -version: 2 -updates: - - package-ecosystem: "pub" - directory: "/" - schedule: - interval: weekly - time: "09:00" - timezone: Asia/Shanghai - open-pull-requests-limit: 5 - - - package-ecosystem: github-actions - directory: "/" - schedule: - interval: weekly - time: "09:00" - timezone: Asia/Shanghai diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 4ffcc3079..000000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,195 +0,0 @@ -name: 1.Flutter Build - -on: workflow_dispatch -permissions: write-all - -env: - flutter_version: '3.19.6' - -jobs: - build_android: - runs-on: ubuntu-latest - if: github.ref == 'refs/heads/master' - - steps: - - name: Checkout the code - uses: actions/checkout@v4 - - - name: Change version info - run: | - git config --global user.email "github-actions[bot]@users.noreply.github.com" - git config --global user.name "github-actions[bot]" - python3 ./build-tools/addBuildNumber.py ${{ github.server_url }} ${{ github.repository }} ${{ github.run_id }} ${{ github.run_attempt }} - - - name: Install JDK 17 - uses: actions/setup-java@v4 - with: - distribution: 'temurin' - java-version: '17' - - - name: Install Flutter - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.flutter_version }} - channel: stable - cache: true - - - name: Setup Flutter - run: | - flutter config --no-cli-animations - - - name: Build APK - run: | - flutter build apk --target-platform android-arm64,android-arm - - - name: Sign APK - uses: r0adkll/sign-android-release@v1 - with: - releaseDirectory: build/app/outputs/flutter-apk - signingKeyBase64: ${{ secrets.APK_SIGN_JKS_BASE64 }} - alias: ${{ secrets.APK_SIGN_ALIAS }} - keyStorePassword: ${{ secrets.APK_SIGN_PASS }} - keyPassword: ${{ secrets.APK_SIGN_ALIAS_PASS }} - env: - BUILD_TOOLS_VERSION: "30.0.3" - - - name: Get Git info - id: get_git_info - run: | - git fetch --tags - echo "RESOLVED_VERSION="$(git tag --sort=-v:refname | head -n 1) >> "$GITHUB_OUTPUT" - - - name: Rename APK file - run: | - mkdir -p build/upload-artifacts/ - mv build/app/outputs/flutter-apk/app-release-signed.apk build/upload-artifacts/SITLife-${{ steps.get_git_info.outputs.RESOLVED_VERSION }}.apk - - - name: Publish Android Artifact - uses: actions/upload-artifact@v4 - with: - name: SITLife-Android-release - path: build/upload-artifacts/SITLife-${{ steps.get_git_info.outputs.RESOLVED_VERSION }}.apk - - build_ios: - runs-on: macos-14 # macos-latest is macos-12 actually, and iOS 17+ SDK not supported - if: github.ref == 'refs/heads/master' - - steps: - - name: Checkout the code - uses: actions/checkout@v4 - - - name: Change version info - run: | - git config --global user.email "github-actions[bot]@users.noreply.github.com" - git config --global user.name "github-actions[bot]" - python3 ./build-tools/addBuildNumber.py ${{ github.server_url }} ${{ github.repository }} ${{ github.run_id }} ${{ github.run_attempt }} - - - name: Change Develop to Distribution - run: | - python3 ./build-tools/toDistribution.py - - - name: Install Apple Certificate - uses: apple-actions/import-codesign-certs@v2 - with: - p12-file-base64: ${{ secrets.P12_BASE64 }} - p12-password: ${{ secrets.P12_PASSWORD }} - - - name: Install the provisioning profile - env: - PROVISIONING_CERTIFICATE_BASE64: ${{ secrets.PROVISIONING_PROFILE_BASE64 }} - run: | - PP_PATH=$RUNNER_TEMP/build_pp.mobileprovision - - echo -n "$PROVISIONING_CERTIFICATE_BASE64" | base64 --decode --output $PP_PATH - - mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles - cp $PP_PATH ~/Library/MobileDevice/Provisioning\ Profiles - - - name: Install Flutter - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.flutter_version }} - channel: stable - cache: true - - - name: Setup Flutter - run: | - flutter config --no-cli-animations - - - name: Build iOS - run: | - flutter build ios --release --no-codesign - - - name: Build resolve Swift dependencies - run: | - xcodebuild -resolvePackageDependencies -workspace ios/Runner.xcworkspace -scheme Runner -configuration Release - - - name: Build xArchive - run: | - xcodebuild -workspace ios/Runner.xcworkspace -scheme Runner -configuration Release DEVELOPMENT_TEAM="M5APZD5CKA" -sdk 'iphoneos' -destination 'generic/platform=iOS' -archivePath build-output/app.xcarchive PROVISIONING_PROFILE="eb8b1f5f-3329-42a5-a18f-8254a2e85b41" clean archive CODE_SIGN_IDENTITY="Apple Distribution: ziqi wei" - - - name: Export ipa - run: | - xcodebuild -exportArchive -archivePath build-output/app.xcarchive -exportPath build-output/ios -exportOptionsPlist ios/ExportOptions.plist - - - name: Get Git info - id: get_git_info - run: | - git fetch --tags - echo "RESOLVED_VERSION="$(git tag --sort=-v:refname | head -n 1) >> "$GITHUB_OUTPUT" - - - name: Rename ipa file - run: | - mkdir -p build/upload-artifacts/ - mv build-output/ios/life.mysit.SITLife.ipa build/upload-artifacts/SITLife-${{ steps.get_git_info.outputs.RESOLVED_VERSION }}.ipa - - - name: Publish iOS Artifact - uses: actions/upload-artifact@v4 - with: - name: SITLife-iOS-release - path: build/upload-artifacts/SITLife-${{ steps.get_git_info.outputs.RESOLVED_VERSION }}.ipa - - after_build: - runs-on: macos-latest - needs: [build_android, build_ios] - steps: - - name: Checkout the code - uses: actions/checkout@v4 - - - name: Change version info - run: | - git config --global user.email "github-actions[bot]@users.noreply.github.com" - git config --global user.name "github-actions[bot]" - python3 ./build-tools/addBuildNumber.py ${{ github.server_url }} ${{ github.repository }} ${{ github.run_id }} ${{ github.run_attempt }} - - - name: Get Git info - id: get_git_info - run: | - git fetch --tags - echo "RESOLVED_VERSION="$(git tag --sort=-v:refname | head -n 1) >> "$GITHUB_OUTPUT" - - - name: Get iOS Artifact - if: github.repository == 'liplum-dev/mimir' - uses: actions/download-artifact@v4 - with: - name: SITLife-iOS-release - path: build/ - - - name: Deploy to App Store (TestFlight) - if: github.repository == 'liplum-dev/mimir' - uses: apple-actions/upload-testflight-build@v1 - with: - app-path: ${{ github.workspace }}/build/SITLife-${{ steps.get_git_info.outputs.RESOLVED_VERSION }}.ipa - issuer-id: ${{ secrets.APP_STORE_CONNECT_ISSUER_ID }} - api-key-id: ${{ secrets.APP_STORE_CONNECT_API_KEY_ID }} - api-private-key: ${{ secrets.APP_STORE_CONNECT_API_PRIVATE_KEY }} - - - name: Push changes - uses: ad-m/github-push-action@master - with: - branch: ${{ github.ref }} - - - name: Send Message to Group - continue-on-error: true - run: | - curl -G -s --connect-timeout 5 ${{ secrets.gocq_sendgroupmsg_url }} --data-urlencode "group_id=${{ secrets.gocq_group_number }}" --data-urlencode "message=新测试版(${{ steps.get_git_info.outputs.RESOLVED_VERSION }})已完成构建,请通过Github Actions下载。或等待开发者操作完成后,前往群文件/TestFlight下载。" diff --git a/.github/workflows/draft-new-release.yml b/.github/workflows/draft-new-release.yml deleted file mode 100644 index 1db1a5472..000000000 --- a/.github/workflows/draft-new-release.yml +++ /dev/null @@ -1,112 +0,0 @@ -name: 2.Draft New Release - -on: - workflow_dispatch: - inputs: - ipa-publish: - description: 'Publish the ipa file' - required: true - default: false - type: boolean - -permissions: - contents: write - -jobs: - draft-new-release: - runs-on: ubuntu-latest - if: github.ref == 'refs/heads/master' - - steps: - - name: Get Flutter Build Run ID - id: get_run_id - run: | - echo "run_id="$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" https://api.github.com/repos/${{ github.repository }}/actions/workflows/build.yml/runs | jq -r '.workflow_runs[0].id') >> "$GITHUB_OUTPUT" - - - name: Download artifacts - run: | - mkdir new-build-artifacts - cd new-build-artifacts - curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -L https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ steps.get_run_id.outputs.run_id }}/artifacts | jq -r '.artifacts[].archive_download_url' | xargs -n 1 curl -LJO -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" - echo $(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -L https://api.github.com/repos/${{ github.repository }}/actions/runs/${{ steps.get_run_id.outputs.run_id }}/artifacts | jq -r '.artifacts[].archive_download_url') - cd .. - ls -l new-build-artifacts - - - name: Unzip artifacts - run: | - unzip -o 'new-build-artifacts/*.zip' -d new-build-artifacts - ls -l new-build-artifacts - - - name: Get Git info - id: get_git_info - run: | - echo "RESOLVED_VERSION="$(ls new-build-artifacts | grep -oP 'SITLife-v\d+\.\d+\.\d+\+\d+' | head -n 1 | cut -d'-' -f2) >> "$GITHUB_OUTPUT" - echo "PREVIOUS_TAG="$(curl -s https://api.github.com/repos/${{ github.repository }}/releases/latest | jq -r '.tag_name') >> "$GITHUB_OUTPUT" - - - name: Check builds - id: builds - env: - RESOLVED_VERSION: ${{ steps.get_git_info.outputs.RESOLVED_VERSION }} - run: | - if [ "${{ github.event.inputs.ipa-publish }}" == "false" ]; then - rm -rf new-build-artifacts/SITLife-${{ env.RESOLVED_VERSION }}.ipa - fi - - if [ ! -f "new-build-artifacts/SITLife-${{ env.RESOLVED_VERSION }}.apk" ]; then - echo "APK_SHA256=" >> "$GITHUB_OUTPUT" - else - echo "APK_SHA256=- \`SITLife-${{ env.RESOLVED_VERSION }}.apk\`: "$(sha256sum new-build-artifacts/SITLife-${{ env.RESOLVED_VERSION }}.apk | awk '{print $1}') >> "$GITHUB_OUTPUT" - fi - if [ ! -f "new-build-artifacts/SITLife-${{ env.RESOLVED_VERSION }}.ipa" ]; then - echo "IPA_SHA256=" >> "$GITHUB_OUTPUT" - else - echo "IPA_SHA256=- \`SITLife-${{ env.RESOLVED_VERSION }}.ipa\`: "$(sha256sum new-build-artifacts/SITLife-${{ env.RESOLVED_VERSION }}.ipa | awk '{print $1}') >> "$GITHUB_OUTPUT" - fi - - - name: Print path of builds - run: | - ls -a new-build-artifacts - - - name: Release - uses: softprops/action-gh-release@v2 - env: - RESOLVED_VERSION: ${{ steps.get_git_info.outputs.RESOLVED_VERSION }} - PREVIOUS_TAG: ${{ steps.get_git_info.outputs.PREVIOUS_TAG }} - with: - files: | - new-build-artifacts/SITLife-${{ env.RESOLVED_VERSION }}.apk - new-build-artifacts/SITLife-${{ env.RESOLVED_VERSION }}.ipa - tag_name: ${{ env.RESOLVED_VERSION }} - body: | - ## Changes - ### Features - - Foo - ### Bug fixes - - Bar - - ## 更改 - ### 新功能 - - Foo - ### Bug 修复 - - Bar - - ## How to download - - - - - - - - - - - `Android`: Click the .apk files below. - - `iOS`: [Download on the App Store](https://apps.apple.com/cn/app/id6468989112). - - ## Checksum (sha256) - ${{ steps.builds.outputs.APK_SHA256 }} - ${{ steps.builds.outputs.IPA_SHA256 }} - - Full Changelog: https://github.com/${{ github.repository }}/compare/${{ env.PREVIOUS_TAG }}...${{ env.RESOLVED_VERSION }} - draft: true - prerelease: false diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 919a83466..000000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,97 +0,0 @@ -name: 3.Release New Version - -on: - release: - types: [released] - -permissions: - contents: read - packages: write - -jobs: - main: - runs-on: ubuntu-latest - steps: - - name: Install deploy key - uses: shimataro/ssh-key-action@v2 - with: - key: ${{ secrets.DOCS_SSH_KEY }} - known_hosts: ${{ secrets.DOCS_KNOWN_HOST }} - - - name: Deploy - if: github.repository == 'liplum-dev/mimir' - shell: bash - run: | - git clone --single-branch --branch main "https://github.com/Amazefcc233/mimir-docs" ~/deploy - cd ~/deploy - - version=$(echo "${{ github.event.release.tag_name }}" | sed 's/v//g') - release_time=$(echo "${{ github.event.release.published_at }}" | sed 's/T/ /g' | sed 's/Z//g') - release_time=$(date -d "$release_time 8 hours" "+%Y-%m-%d %H:%M:%S") - release_note=$(echo "${{ github.event.release.body }}" | sed -n '/## 更改/,/## How to download/p' | sed '1d;$d') - apk_name=$(echo "${{ github.event.release.assets[0].name }}") - apk_url=$(echo "${{ github.event.release.assets[0].browser_download_url }}") - if [ -z "$apk_url" ]; then - apk_sha256="" - else - apk_sha256=$(curl -sL "$apk_url" | sha256sum | cut -d ' ' -f 1) - fi - ipa_name=$(echo "${{ github.event.release.assets[1].name }}") - ipa_url=$(echo "${{ github.event.release.assets[1].browser_download_url }}") - if [ -z "$ipa_url" ]; then - ipa_sha256="" - else - ipa_sha256=$(curl -sL "$ipa_url" | sha256sum | cut -d ' ' -f 1) - fi - git config --global user.name "github-actions[bot]" - git config --global user.email "github-actions[bot]@users.noreply.github.com" - - mkdir -p "artifact/" - - jq -n \ - --arg version "$version" \ - --arg release_time "$release_time" \ - --arg release_note "$release_note" \ - --arg apk_name "$apk_name" \ - --arg apk_sha256 "$apk_sha256" \ - --arg apk_url1 "$apk_url" \ - --arg apk_url2 "https://mirror.ghproxy.com/$apk_url" \ - --arg ipa_name "$ipa_name" \ - --arg ipa_sha256 "$ipa_sha256" \ - --arg ipa_url1 "$ipa_url" \ - --arg ipa_url2 "https://mirror.ghproxy.com/$ipa_url" \ - ' - { - "version": $version, - "release_time": $release_time, - "release_note": $release_note, - "downloads": { - "Android": { - "name": $apk_name, - "default": "mirror", - "sha256": $apk_sha256, - "url": { - "official": $apk_url1, - "mirror": $apk_url2, - }, - }, - "iOS": { - "name": $ipa_name, - "default": "mirror", - "sha256": $ipa_sha256, - "url": { - "official": $ipa_url1, - "mirror": $ipa_url2, - } - } - } - } - ' > "artifact/$version.json" - - rm -f artifact/latest.json - ln -s "$version.json" "artifact/latest.json" - - git add --all - git commit -m "Release New Version: $version" - git push "git@github.com:Amazefcc233/mimir-docs" main:main - \ No newline at end of file diff --git a/.github/workflows/web.yml b/.github/workflows/web.yml deleted file mode 100644 index 59fa0c143..000000000 --- a/.github/workflows/web.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: Web -on: workflow_dispatch -permissions: write-all - -env: - flutter_version: '3.19.6' - -jobs: - build: - runs-on: ubuntu-latest - if: github.ref == 'refs/heads/master' - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install Flutter - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.flutter_version }} - channel: stable - cache: true - - - uses: bluefireteam/flutter-gh-pages@v8 - with: - baseHref: /mimir/ diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml deleted file mode 100644 index 434e4ef02..000000000 --- a/.github/workflows/windows.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: Windows -on: workflow_dispatch - -env: - flutter_version: '3.19.6' - -jobs: - build: - runs-on: windows-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Install Flutter - uses: subosito/flutter-action@v2 - with: - flutter-version: ${{ env.flutter_version }} - channel: stable - cache: true - - - name: Setup Flutter - run: | - flutter config --no-cli-animations - - - name: Build Windows - run: | - flutter pub run build_runner build --delete-conflicting-outputs - dart run msix:create - - - name: Upload building - uses: actions/upload-artifact@v4 - with: - name: SITLife-Windows-release - path: build\windows\x64\runner\Release\SIT-Life.msix diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 0f7b23678..000000000 --- a/.gitignore +++ /dev/null @@ -1,145 +0,0 @@ -# See https://www.dartlang.org/guides/libraries/private-files - -# Files and directories created by pub -.dart_tool/ -.packages -build/ - -# Directory created by dartdoc -# If you don't generate documentation locally you can remove this line. -doc/api/ - -# Avoid committing generated Javascript files: -*.dart.js -*.info.json # Produced by the --dump-info flag. -*.js # When generated by dart2js. Don't specify *.js if your - # project includes source files written in JavaScript. -*.js_ -*.js.deps -*.js.map - -# IDE -.idea/ -.vs/ -.vscode/ - -# Flutter -.flutter-plugins-dependencies -.flutter-plugins - -# iOS/XCode related -**/ios/**/*.mode1v3 -**/ios/**/*.mode2v3 -**/ios/**/*.moved-aside -**/ios/**/*.pbxuser -**/ios/**/*.perspectivev3 -**/ios/**/*sync/ -**/ios/**/.sconsign.dblite -**/ios/**/.tags* -**/ios/**/.vagrant/ -**/ios/**/DerivedData/ -**/ios/**/Icon? -**/ios/**/Pods/ -**/ios/**/.symlinks/ -**/ios/**/profile -**/ios/**/xcuserdata -**/ios/.generated/ -**/ios/Flutter/.last_build_id -**/ios/Flutter/App.framework -**/ios/Flutter/Flutter.framework -**/ios/Flutter/Flutter.podspec -**/ios/Flutter/Generated.xcconfig -**/ios/Flutter/ephemeral -**/ios/Flutter/app.flx -**/ios/Flutter/app.zip -**/ios/Flutter/flutter_assets/ -**/ios/Flutter/flutter_export_environment.sh -**/ios/ServiceDefinitions.json -**/ios/Runner/GeneratedPluginRegistrant.* - - -# Miscellaneous -*.class -*.log -*.pyc -*.swp -.DS_Store -.atom/ -.buildlog/ -.history -.svn/ - -# IntelliJ related -*.iml -*.ipr -*.iws - -# Visual Studio Code related -.classpath -.project -.settings/ -.VSCodeCounter - -# Flutter repo-specific -/bin/cache/ -/bin/internal/bootstrap.bat -/bin/internal/bootstrap.sh -/bin/mingit/ -/dev/benchmarks/mega_gallery/ -/dev/bots/.recipe_deps -/dev/bots/android_tools/ -/dev/devicelab/ABresults*.json -/dev/docs/doc/ -/dev/docs/flutter.docs.zip -/dev/docs/lib/ -/dev/docs/pubspec.yaml -/dev/integration_tests/**/xcuserdata -/dev/integration_tests/**/Pods -/packages/flutter/coverage/ -version -analysis_benchmark.json - -# packages file containing multi-root paths -.packages.generated - -# Flutter/Dart/Pub related -**/doc/api/ -**/generated_plugin_registrant.dart -.pub-cache/ -.pub/ -flutter_*.png -linked_*.ds -unlinked.ds -unlinked_spec.ds - -# Android related -**/android/**/gradle-wrapper.jar -.gradle/ -**/android/captures/ -**/android/gradlew -**/android/gradlew.bat -**/android/local.properties -**/android/**/GeneratedPluginRegistrant.java -**/android/key.properties -*.jks - - -# macOS -**/macos/Flutter/GeneratedPluginRegistrant.swift -**/macos/Flutter/ephemeral - -# Coverage -coverage/ - -# Symbols -app.*.symbols - -# Exceptions to above rules. -!**/ios/**/default.mode1v3 -!**/ios/**/default.mode2v3 -!**/ios/**/default.pbxuser -!**/ios/**/default.perspectivev3 -!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages -!/dev/ci/**/Gemfile.lock -generated_plugin* -.cookies diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index f18c82db8..000000000 --- a/.gitmodules +++ /dev/null @@ -1,6 +0,0 @@ -[submodule "tool/tui"] - path = tool/tui - url = https://github.com/liplum/pytui.git -[submodule "tool/l10n"] - path = tool/l10n - url = https://github.com/liplum/L10nArbTool.git diff --git a/.last_build_id b/.last_build_id new file mode 100644 index 000000000..bb5829bff --- /dev/null +++ b/.last_build_id @@ -0,0 +1 @@ +e5a05b6c855d69b9743e27bd750859fc \ No newline at end of file diff --git a/.metadata b/.metadata deleted file mode 100644 index a778330bd..000000000 --- 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 and should not be manually edited. - -version: - revision: "d211f42860350d914a5ad8102f9ec32764dc6d06" - channel: "stable" - -project_type: app - -# Tracks metadata for the flutter migrate command -migration: - platforms: - - platform: root - create_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - base_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - - platform: android - create_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - base_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - - platform: ios - create_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - base_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - - platform: linux - create_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - base_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - - platform: macos - create_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - base_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - - platform: web - create_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - base_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - - platform: windows - create_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - base_revision: d211f42860350d914a5ad8102f9ec32764dc6d06 - - # 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/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index d5e6b3018..000000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,52 +0,0 @@ -# Changelog - -## v2.4.0 -- Redesigned the expense statistics page. -- Redesigned the network tool page. -- Changed duration of skipping update up to 7 days. -- Changed web icons. -- Timetable wallpaper support on web. -- Fixed: Gif image not working in timetable wallpaper -- Allowed to join QQ group on desktop and web. -- [Demo mode] Attended activity mock service in class 2nd. -- Timetable issue inspection. -- Prompt user to save changes before quit. -- Timetable courses can be hidden now. -- Toggle haptic feedback in game settings. -- Toggle quick look lesson on tap feature in timetable settings. -- Improved zh-Hans and zh-Hant localization. -- Timetable patch for moving, copying, swapping and removing lessons of days. -- Shrunk the size of .ics file exported from timetable. -- Redesigned entities of proxy. - -## v2.3.0 -- The 2048 game supports save/load feature. -- You can add, delete, and edit courses in the timetable. -- The Timetable is now more colorful than ever. -- Improved "Classic" timetable color palette. -- A new page for customizing theme colors has been added. -- You can withdraw applications of second class activities. -- The Cache is no longer cleared when the device runs out of storage space. -- Other minor UI improvements and localizations. - -## v2.2.0 -- The Minesweeper game was introduced. -- Login-related error dialogs now have detailed description. -- [Bug fix] Wrong localization text. -- UI and performance improvement. - -## v2.1.3 -- More types of OA login errors can be recognized. -- Except for iOS and macOS, the app automatically checks update on startup. -- By following school changes, electricity price rises from 0.61 to 0.636. -- [iOS] It's supported to scan QR code generated from this app with Camera app. -- [Bug fix] In some cases, OA captcha is infinitely asking for input, but the login doesn't work. - -## v2.1.2 -- GPA calculator was added. -- Library searching and borrowing list were added. -- HTTP and HTTPS proxy settings page was added. -- The UI of some pages was redesigned. -- ICP licence was added. -- [Bug Fix] Applying for a second classroom activity would make a double-application. -- [Bug Fix] In some cases, it is not possible to load the activities already attended in the second class. diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md deleted file mode 100644 index 1ca204a84..000000000 --- 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 -Li_plum@outlook.com. -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 sort of interaction or public -communication with the community for a specified period of time. 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 sort of 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/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 3cd814848..000000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,95 +0,0 @@ -# Contributing - -## Getting Started - -Clone the repository to a local folder. -Note: you have to put it in a folder named as `mimir`. - -``` shell -git clone https://github.com/Liplum/Mimir mimir -``` - -Then run the necessary build steps. - -``` shell -flutter pub get -flutter pub run build_runner build -``` - -Finally, build the SIT Life based on your platform. - -```shell -# On Windows, macOS, or Linux -flutter build apk # build for Android -# On Windows -flutter build winodws # build for Windows -# On macOS -flutter build macos # build for macOS -flutter build ios # build for iOS -# On Linux -flutter build linux # build for Linux -# On Windows, macOS, or Linux -flutter build web # build for web -``` - -### iOS Build - -SIT Life for iOS requires at least `Xcode 14.3.1`. -You can search and download it [here](https://developer.apple.com/download/all/?q=Xcode), -or install it on macOS App Store. - -## Dependency - -## Code Style - -### Dart - -As to formatting, please follow what `dart format` does. -The dedicated configuration for Kite is `line length: 120`. -You can run the command below to format the whole project by this principle. - -```shell -dart format . -l 120 -``` - -As to naming principle, please follow -the [official naming convention](https://dart.dev/guides/language/effective-dart/style). - -To be flexible and easy to reconstruct, -`relative import` should be applied, meanwhile, `absolute import` should be applied outside. - -### Json - -As to formatting, the indent is 2 spaces. - -As to naming, please keep the key `lowerCamelCase`, -which can be mapped to a valid dart variable name. - -### Build Tool - -Build tool always works on the latest python. -Requirements: - -``` -ruamel.yaml -#IF Windows - pywin32 -#ELSE - curses -#ENDIF -``` - -The [entry point](/tool/main.py) is located in [tool folder](/tool). - -If the current working directory is [the root of project](..). - -```shell -python ./tool/main.py -``` - -Build tool will locate the project automatically, -so you can run the [main.py](/tool/main.py) anywhere. - -### Web icon - -Generated on https://realfavicongenerator.net/ diff --git a/LICENSE b/LICENSE deleted file mode 100644 index f288702d2..000000000 --- a/LICENSE +++ /dev/null @@ -1,674 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU General Public License is a free, copyleft license for -software and other kinds of works. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Use with the GNU Affero General Public License. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - Copyright (C) - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -. diff --git a/Privacy Policy.md b/Privacy Policy.md deleted file mode 100644 index 4de14d597..000000000 --- a/Privacy Policy.md +++ /dev/null @@ -1,46 +0,0 @@ -# 小应生活 隐私政策 -更新时间:【2023】年【10】月【10】日 -生效时间:【2023】年【10】月【10】日 - -欢迎您使用我们的产品。小应生活(包括App等产品提供的服务,以下简称“产品和服务”)是由小应生活管理团队(以下简称“我们”)开发并运营的。确保用户的数据安全和隐私保护是我们的首要任务,本隐私政策载明了您访问和使用我们的产品和服务时所收集的数据及其处理方式。 - -请您在继续使用我们的产品前务必认真仔细阅读并确认充分理解本隐私政策全部规则和要点,一旦您选择使用本软件,即视为您同意本隐私政策的全部内容,同意我们按其收集和使用您的相关信息。如您在阅读过程中,对本政策有任何疑问,请通过产品中的反馈方式与我们取得联系。如您不同意相关协议或其中的任何条款的,您应选择使用产品的离线模式,或停止使用我们的产品和服务。 - -本隐私政策帮助您了解以下内容: -一、我们如何收集和使用您的个人信息; -二、我们如何存储和保护您的个人信息; -三、我们如何共享、转让、公开披露您的个人信息; -四、我们如何使用Cookie和其他追踪技术。 - -## 一、我们如何收集和使用您的个人信息 -个人信息是指以电子或者其他方式记录的能够单独或者与其他信息,结合识别特定自然人身份或者反映特定自然人活动情况的各种信息。我们根据《中华人民共和国网络安全法》和《信息安全技术个人信息安全规范》(GB/T 35273-2017)以及其它相关法律法规的要求,并严格遵循正当、合法、必要的原则,出于您使用我们提供的服务和/或产品等过程中而收集和使用您的个人信息,包括但不限于学号、电子邮箱等。 - -若我们的产品或服务需要使用您的个人信息时,将仅会在您明示同意或您明确需要使用所对应的产品或服务后,将在所需的最小范围内使用您的个人信息。 - -## 二、我们如何存储和保护您的个人信息 -作为一般规则,我们仅在实现信息收集目的所需的时间内保留您的个人信息。出于遵守法律义务或为证明某项权利或合同满足适用的诉讼时效要求的目的,我们可能需要在上述期限到期后保留您存档的个人信息。当您的个人信息对于我们的法定义务或法定时效对应的目的或档案不再必要时,我们确保将其完全删除。当您要求抹除数据并退出账户时,我们确保存储在您本地上的数据将即时完全删除,存储在服务器的数据将在24小时内完全删除。 - -涉及到您隐私的相关个人信息数据,例如密码等,将会加密存储至本地。任何自然人或机构将无法读取。 - -关于需存储在本地上的个人信息,请见下方列表。如果您不同意存储您的个人信息至本地,您将可能无法使用部分或所有产品及服务。 -- 学号 -- 密码 -- 根据上述信息,利用相关服务,所获得或生成的相关用户数据 - -关于需存储于远程服务器上的个人信息,请见下方列表。如果您不同意存储您的个人信息至远程服务器,您将可能无法使用部分或所有产品及服务。 -- 学号 -- 电子邮箱 -- 根据上述信息所生成的用户生成数据(user-generated data) - -## 三、我们如何共享、转让、公开披露您的个人信息 -我们可能会根据法律法规规定,或按政府主管部门的强制性要求,对外共享您的个人信息。在符合法律法规的前提下,当我们收到上述披露信息的请求时,我们会要求必须出具与之相应的法律文件,如传票或调查函后,将会按照对应的需求提供相应信息。 - -除上述情形以外,我们将不会把您的个人信息以任何方式共享、转让、公开给第三方,并且也将无任何自然人或任何机构可读取您的个人信息,但不包含下述情形: -1. 用于维护所提供的产品或服务的安全稳定运行所必需的,例如发现、处置产品或服务的故障; -2. 您自行把个人信息提供给其他人的; -3. 法律法规规定的其他情形。 - -## 四、我们如何使用Cookie和其他追踪技术 -为确保产品正常运转,我们会在您的计算机或移动设备上存储名为Cookie的小数据文件。Cookie通常包含标识符、产品名称以及一些号码和字符。借助于Cookie,我们能够存储您的登录信息等数据,提升服务和产品质量及优化用户体验。 - -我们不会将Cookie用于本政策所述目的之外的任何用途。您可根据自己的偏好管理或删除Cookie。阻止或禁用Cookie功能后,可能影响您使用或不能充分使用我们的产品和服务。 diff --git a/README.md b/README.md deleted file mode 100644 index ceb13948e..000000000 --- a/README.md +++ /dev/null @@ -1,51 +0,0 @@ -
- -# SIT Life - -Icon - -[![Buttons Online Preview]][Online Preview] -[![Buttons Download]][Download] - -### A multiplatform app for SIT students. - -*Android, iOS, Windows, macOS, and Linux* - -## Features - -| Timetable | School Life | Daily Life | Featured | -|-----------------|:----------------:|:-------------------:|:---------------:| -| Importing | Yellow Pages | Expense Records | Network Tool | -| Sharing | Exam Results | Electricity Balance | QR Code Sharing | -| Personalization | Exam Arrangement | Edu Email | HTTP proxy | -| Screenshot | OA Announcement | | Localization | -| | Second Class | | | -| | SIT YWB | | | - -## Contribution - -If you met any bug, feel free to [make an issue](https://github.com/liplum/mimir/issues/new). - -Welcome to contribute SIT Life, please read the [contribution guide](specifications/CONTRIBUTION_GUIDE.md). - -### License - -The source codes and configurations are open source under [GPL v3](LICENSE). - -### Copyright - -Copyright©️2023 Liplum Dev. All Rights Reserved. - -
- - - -[Online Preview]: https://liplum-dev.github.io/mimir/ - -[Download]: https://github.com/liplum-dev/mimir/releases/latest - - - -[Buttons Download]: https://img.shields.io/github/downloads/liplum-dev/mimir/total?color=023a46&label=Download&logo=docusign&logoColor=white&style=for-the-badge&labelColor=034e5e - -[Buttons Online Preview]: https://img.shields.io/badge/Oneline%20Preview-2d7b7e?style=for-the-badge diff --git a/Terms of use.md b/Terms of use.md deleted file mode 100644 index 2a528cec1..000000000 --- a/Terms of use.md +++ /dev/null @@ -1,31 +0,0 @@ -# 小应生活 用户服务协议及免责条款 -更新时间:【2023】年【10】月【10】日 -生效时间:【2023】年【10】月【10】日 - -《小应生活 用户服务协议及免责条款》(以下简称“协议”)及其条款,系您下载、安装及使用“小应生活”(以下简称“本软件”)所订立的、描述您与本软件之间权利义务的协议。 - -在使用本软件前,您应认真阅读本协议的内容、充分理解各条款内容,如有异议,您可选择不使用本软件。一旦您确认本协议后,本协议即在您和本软件之间产生法律效力,意味着您完全同意并接受协议的全部条款。请您审慎阅读并选择接受或不接受协议。 - -## 1. 服务说明 -用户进入本软件,选择登入或进入离线模式后,即成为本软件的用户。 - -本软件依赖于上海应用技术大学(以下简称“官方”)的相关平台数据读取,进行二次整合或包装,以提供相关数据的展示服务。用户在使用本软件时,应在正常范围内使用本软件,不可对应用或应用内的相关服务器作出包含但不限于超批量读取数据、压测等可视为对服务器有攻击的行为。 - -用户在登入时所使用的账号全部来自官方,本软件不提供账户方面的支持。 - -## 2. 法律责任与免责 -本软件不是官方服务。与官方的相关开发团队没有关系。 - -因用户使用本软件,导致账户被官方冻结或出现其他的异常行为,由用户自行承担。 - -本软件平台对平台进行停机维护、定期检查、更新软硬件、针对突发事件、不可抗力、电脑病毒、系统故障等因素导致的正常服务中断、中止,本软件不承担责任,本软件平台将尽力避免服务中断并将中断时间限制在最短时间内。 - -用户因第三方如电信部门的通讯线路故障、技术问题、网络、电脑故障、系统不稳定性及其他各种不可抗力原因而遭受的一切损失,本软件不承担责任。 - -## 3. 知识产权 -本软件的一切知识产权,以及与软件相关的所有信息内容,包括但不限于:文字表述及其组合、图标、图饰、图像、图表、色彩、界面设计、版面框架、有关数据、附加程序、印刷材料或电子文档等均归本软件所有,受著作权法和国际著作权条约以及其他知识产权法律法规的保护。 - -未经本软件书面同意,用户不得为任何营利性或非营利性的目的自行实施、利用、转让或许可任何三方实施、利用、转让上述知识产权。出现上述未经许可之行为时,本软件保留追究相关责任人法律责任之权利。 - -## 4. 修改与解释权 -根据互联网的发展和有关法律、法规及规范性文件的变化,或者因业务发展需要,本软件有权对本协议的条款作出修改或变更,一旦本协议的内容发生变动,您可在本软件官方网站查阅最新版协议条款,该公布行为视为本软件已经通知用户修改内容,而不另行对用户进行个别通知。在本软件修改协议条款后,如果您不接受修改后的条款,请立即停止使用本软件提供的服务,您继续使用本软件提供的服务将被视为已接受了修改后的协议。 diff --git a/analysis_options.yaml b/analysis_options.yaml deleted file mode 100644 index 50889b73b..000000000 --- a/analysis_options.yaml +++ /dev/null @@ -1,34 +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 - -analyzer: - exclude: - - lib/**/*.g.dart - - -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 - -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options diff --git a/web/android-chrome-192x192.png b/android-chrome-192x192.png similarity index 100% rename from web/android-chrome-192x192.png rename to android-chrome-192x192.png diff --git a/web/android-chrome-512x512.png b/android-chrome-512x512.png similarity index 100% rename from web/android-chrome-512x512.png rename to android-chrome-512x512.png diff --git a/android/.gitignore b/android/.gitignore deleted file mode 100644 index 6f568019d..000000000 --- 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 77c580c05..000000000 --- a/android/app/build.gradle +++ /dev/null @@ -1,85 +0,0 @@ -plugins { - id "com.android.application" - id "kotlin-android" - id "dev.flutter.flutter-gradle-plugin" -} - -def localProperties = new Properties() -def localPropertiesFile = rootProject.file('local.properties') -if (localPropertiesFile.exists()) { - localPropertiesFile.withReader('UTF-8') { reader -> - localProperties.load(reader) - } -} - -def flutterVersionCode = localProperties.getProperty('flutter.versionCode') -if (flutterVersionCode == null) { - flutterVersionCode = '1' -} - -def flutterVersionName = localProperties.getProperty('flutter.versionName') -if (flutterVersionName == null) { - flutterVersionName = '1.0' -} - -def keystoreProperties = new Properties() -def keystorePropertiesFile = rootProject.file('key.properties') -if (keystorePropertiesFile.exists()) { - keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) -} - -android { - namespace 'life.mysit.sit_life' - compileSdk flutter.compileSdkVersion - ndkVersion flutter.ndkVersion - compileSdkVersion 34 - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - kotlinOptions { - jvmTarget = '1.8' - } - - sourceSets { - main.java.srcDirs += 'src/main/kotlin' - } - - defaultConfig { - applicationId "life.mysit.sit_life" - minSdkVersion 23 - targetSdkVersion flutter.compileSdkVersion - versionCode flutterVersionCode.toInteger() - versionName flutterVersionName - } - - if (keystorePropertiesFile.exists()) { - signingConfigs { - release { - keyAlias keystoreProperties['keyAlias'] - keyPassword keystoreProperties['keyPassword'] - storeFile file(keystoreProperties['storeFile']) - storePassword keystoreProperties['storePassword'] - } - } - } - - buildTypes { - release { - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - if (keystorePropertiesFile.exists()) { - signingConfig signingConfigs.release - } else { - signingConfig signingConfigs.debug - } - } - } -} - -flutter { - source '../..' -} - -dependencies {} diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro deleted file mode 100644 index e16d1f50c..000000000 --- a/android/app/proguard-rules.pro +++ /dev/null @@ -1,3 +0,0 @@ -# Flutter -# fix by https://github.com/juliansteenbakker/mobile_scanner/issues/614#issuecomment-1665473831 --keep public class androidx.camera.core.impl.CameraCaptureMetaData$** { *; } diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml deleted file mode 100644 index 17a44c787..000000000 --- a/android/app/src/debug/AndroidManifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml deleted file mode 100644 index cd3ff327f..000000000 --- a/android/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/android/app/src/main/kotlin/MainActivity.kt b/android/app/src/main/kotlin/MainActivity.kt deleted file mode 100644 index c1ba0ec0e..000000000 --- a/android/app/src/main/kotlin/MainActivity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package life.mysit.sit_life - -import io.flutter.embedding.android.FlutterActivity - -class MainActivity: FlutterActivity() { -} 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 bad28179d..000000000 --- a/android/app/src/main/res/drawable-v21/launch_background.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - 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 bad28179d..000000000 --- a/android/app/src/main/res/drawable/launch_background.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - diff --git a/android/app/src/main/res/drawable/splash.png b/android/app/src/main/res/drawable/splash.png deleted file mode 100644 index d0041a6f2..000000000 Binary files a/android/app/src/main/res/drawable/splash.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap/icon.png b/android/app/src/main/res/mipmap/icon.png deleted file mode 100644 index 67c2ee91e..000000000 Binary files a/android/app/src/main/res/mipmap/icon.png and /dev/null differ diff --git a/android/app/src/main/res/values-b+zh+CN/strings.xml b/android/app/src/main/res/values-b+zh+CN/strings.xml deleted file mode 100644 index b0fe142ad..000000000 --- a/android/app/src/main/res/values-b+zh+CN/strings.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - 小应生活 - diff --git a/android/app/src/main/res/values-b+zh+TW/strings.xml b/android/app/src/main/res/values-b+zh+TW/strings.xml deleted file mode 100644 index f2cc16863..000000000 --- a/android/app/src/main/res/values-b+zh+TW/strings.xml +++ /dev/null @@ -1,4 +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 449a9f930..000000000 --- a/android/app/src/main/res/values-night/styles.xml +++ /dev/null @@ -1,18 +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 67c0c69f3..000000000 --- a/android/app/src/main/res/values-v31/styles.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml deleted file mode 100644 index cf1677d44..000000000 --- a/android/app/src/main/res/values/strings.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - SIT Life - 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 919efdaa8..000000000 --- a/android/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - diff --git a/android/app/src/main/res/xml/network_security_config.xml b/android/app/src/main/res/xml/network_security_config.xml deleted file mode 100644 index f18e1f040..000000000 --- a/android/app/src/main/res/xml/network_security_config.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml deleted file mode 100644 index f880684a6..000000000 --- a/android/app/src/profile/AndroidManifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/android/build.gradle b/android/build.gradle deleted file mode 100644 index 14e0b4fa0..000000000 --- a/android/build.gradle +++ /dev/null @@ -1,18 +0,0 @@ -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 c70f915bc..000000000 --- a/android/gradle.properties +++ /dev/null @@ -1,4 +0,0 @@ -org.gradle.jvmargs=-Xmx1536M --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-exports=jdk.unsupported/sun.misc=ALL-UNNAMED -android.useAndroidX=true -android.enableJetifier=true -android.jetifier.ignorelist=bcprov-jdk15on diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index 6b665338b..000000000 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,6 +0,0 @@ -#Fri Jun 23 08:50:38 CEST 2017 -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip diff --git a/android/settings.gradle b/android/settings.gradle deleted file mode 100644 index 991724d55..000000000 --- a/android/settings.gradle +++ /dev/null @@ -1,26 +0,0 @@ -pluginManagement { - def flutterSdkPath = { - def properties = new Properties() - file("local.properties").withInputStream { properties.load(it) } - def flutterSdkPath = properties.getProperty("flutter.sdk") - assert flutterSdkPath != null, "flutter.sdk not set in local.properties" - return flutterSdkPath - } - settings.ext.flutterSdkPath = flutterSdkPath() - - includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") - - repositories { - google() - mavenCentral() - gradlePluginPortal() - } -} - -plugins { - id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false - id "org.jetbrains.kotlin.android" version "1.7.10" apply false -} - -include ":app" diff --git a/web/apple-touch-icon.png b/apple-touch-icon.png similarity index 100% rename from web/apple-touch-icon.png rename to apple-touch-icon.png diff --git a/assets/AssetManifest.bin b/assets/AssetManifest.bin new file mode 100644 index 000000000..8bce65358 --- /dev/null +++ b/assets/AssetManifest.bin @@ -0,0 +1 @@ + Dassets/course/art.png  assetassets/course/art.pngassets/course/biological.png  assetassets/course/biological.pngassets/course/building.png  assetassets/course/building.pngassets/course/business.png  assetassets/course/business.pngassets/course/chemical.png  assetassets/course/chemical.pngassets/course/circuit.png  assetassets/course/circuit.pngassets/course/computer.png  assetassets/course/computer.pngassets/course/control.png  assetassets/course/control.pngassets/course/curriculum.png  assetassets/course/curriculum.pngassets/course/design.png  assetassets/course/design.pngassets/course/economic.png  assetassets/course/economic.pngassets/course/electricity.png  assetassets/course/electricity.pngassets/course/engineering.png  assetassets/course/engineering.pngassets/course/experiment.png  assetassets/course/experiment.pngassets/course/generality.png  assetassets/course/generality.pngassets/course/geography.png  assetassets/course/geography.pngassets/course/history.png  assetassets/course/history.pngassets/course/ideological.png  assetassets/course/ideological.pngassets/course/internship.png  assetassets/course/internship.pngassets/course/language.png  assetassets/course/language.pngassets/course/literature.png  assetassets/course/literature.pngassets/course/management.png  assetassets/course/management.pngassets/course/mathematics.png  assetassets/course/mathematics.pngassets/course/mechanical.png  assetassets/course/mechanical.pngassets/course/music.png  assetassets/course/music.pngassets/course/physical.png  assetassets/course/physical.pngassets/course/political .png  assetassets/course/political .pngassets/course/practice.png  assetassets/course/practice.pngassets/course/principle.png  assetassets/course/principle.pngassets/course/reading.png  assetassets/course/reading.pngassets/course/running.png  assetassets/course/running.pngassets/course/social.png  assetassets/course/social.pngassets/course/sports.png  assetassets/course/sports.pngassets/course/statistical.png  assetassets/course/statistical.pngassets/course/technology.png  assetassets/course/technology.pngassets/course/training.png  assetassets/course/training.pngassets/fonts/ywb_iconfont.ttf  assetassets/fonts/ywb_iconfont.ttfassets/game/suika/fruit-1.png  assetassets/game/suika/fruit-1.pngassets/game/suika/fruit-10.png  assetassets/game/suika/fruit-10.pngassets/game/suika/fruit-11.png  assetassets/game/suika/fruit-11.pngassets/game/suika/fruit-2.png  assetassets/game/suika/fruit-2.pngassets/game/suika/fruit-3.png  assetassets/game/suika/fruit-3.pngassets/game/suika/fruit-4.png  assetassets/game/suika/fruit-4.pngassets/game/suika/fruit-5.png  assetassets/game/suika/fruit-5.pngassets/game/suika/fruit-6.png  assetassets/game/suika/fruit-6.pngassets/game/suika/fruit-7.png  assetassets/game/suika/fruit-7.pngassets/game/suika/fruit-8.png  assetassets/game/suika/fruit-8.pngassets/game/suika/fruit-9.png  assetassets/game/suika/fruit-9.pngassets/icon.svg  assetassets/icon.svgassets/l10n/en.yaml  assetassets/l10n/en.yamlassets/l10n/zh-Hans.yaml  assetassets/l10n/zh-Hans.yamlassets/l10n/zh-Hant.yaml  assetassets/l10n/zh-Hant.yamlassets/room_list.json  assetassets/room_list.jsonassets/user_agent.json  assetassets/user_agent.jsonassets/webview/dark.js  assetassets/webview/dark.jsassets/yellow_pages.json  assetassets/yellow_pages.json2packages/cupertino_icons/assets/CupertinoIcons.ttf  asset2packages/cupertino_icons/assets/CupertinoIcons.ttf-packages/flex_color_picker/assets/opacity.png  asset-packages/flex_color_picker/assets/opacity.png6packages/flutter_image_compress_web/assets/pica.min.js  asset6packages/flutter_image_compress_web/assets/pica.min.js+packages/simple_icons/fonts/SimpleIcons.ttf  asset+packages/simple_icons/fonts/SimpleIcons.ttf&packages/unicons/icons/UniconsLine.ttf  asset&packages/unicons/icons/UniconsLine.ttf'packages/unicons/icons/UniconsSolid.ttf  asset'packages/unicons/icons/UniconsSolid.ttf*packages/unicons/icons/UniconsThinline.ttf  asset*packages/unicons/icons/UniconsThinline.ttf)packages/wakelock_plus/assets/no_sleep.js  asset)packages/wakelock_plus/assets/no_sleep.js2packages/window_manager/images/ic_chrome_close.png  asset2packages/window_manager/images/ic_chrome_close.png5packages/window_manager/images/ic_chrome_maximize.png  asset5packages/window_manager/images/ic_chrome_maximize.png5packages/window_manager/images/ic_chrome_minimize.png  asset5packages/window_manager/images/ic_chrome_minimize.png7packages/window_manager/images/ic_chrome_unmaximize.png  asset7packages/window_manager/images/ic_chrome_unmaximize.png \ No newline at end of file diff --git a/assets/AssetManifest.bin.json b/assets/AssetManifest.bin.json new file mode 100644 index 000000000..feb46566a --- /dev/null +++ b/assets/AssetManifest.bin.json @@ -0,0 +1 @@ +"DUQHFWFzc2V0cy9jb3Vyc2UvYXJ0LnBuZwwBDQEHBWFzc2V0BxVhc3NldHMvY291cnNlL2FydC5wbmcHHGFzc2V0cy9jb3Vyc2UvYmlvbG9naWNhbC5wbmcMAQ0BBwVhc3NldAccYXNzZXRzL2NvdXJzZS9iaW9sb2dpY2FsLnBuZwcaYXNzZXRzL2NvdXJzZS9idWlsZGluZy5wbmcMAQ0BBwVhc3NldAcaYXNzZXRzL2NvdXJzZS9idWlsZGluZy5wbmcHGmFzc2V0cy9jb3Vyc2UvYnVzaW5lc3MucG5nDAENAQcFYXNzZXQHGmFzc2V0cy9jb3Vyc2UvYnVzaW5lc3MucG5nBxphc3NldHMvY291cnNlL2NoZW1pY2FsLnBuZwwBDQEHBWFzc2V0Bxphc3NldHMvY291cnNlL2NoZW1pY2FsLnBuZwcZYXNzZXRzL2NvdXJzZS9jaXJjdWl0LnBuZwwBDQEHBWFzc2V0Bxlhc3NldHMvY291cnNlL2NpcmN1aXQucG5nBxphc3NldHMvY291cnNlL2NvbXB1dGVyLnBuZwwBDQEHBWFzc2V0Bxphc3NldHMvY291cnNlL2NvbXB1dGVyLnBuZwcZYXNzZXRzL2NvdXJzZS9jb250cm9sLnBuZwwBDQEHBWFzc2V0Bxlhc3NldHMvY291cnNlL2NvbnRyb2wucG5nBxxhc3NldHMvY291cnNlL2N1cnJpY3VsdW0ucG5nDAENAQcFYXNzZXQHHGFzc2V0cy9jb3Vyc2UvY3VycmljdWx1bS5wbmcHGGFzc2V0cy9jb3Vyc2UvZGVzaWduLnBuZwwBDQEHBWFzc2V0Bxhhc3NldHMvY291cnNlL2Rlc2lnbi5wbmcHGmFzc2V0cy9jb3Vyc2UvZWNvbm9taWMucG5nDAENAQcFYXNzZXQHGmFzc2V0cy9jb3Vyc2UvZWNvbm9taWMucG5nBx1hc3NldHMvY291cnNlL2VsZWN0cmljaXR5LnBuZwwBDQEHBWFzc2V0Bx1hc3NldHMvY291cnNlL2VsZWN0cmljaXR5LnBuZwcdYXNzZXRzL2NvdXJzZS9lbmdpbmVlcmluZy5wbmcMAQ0BBwVhc3NldAcdYXNzZXRzL2NvdXJzZS9lbmdpbmVlcmluZy5wbmcHHGFzc2V0cy9jb3Vyc2UvZXhwZXJpbWVudC5wbmcMAQ0BBwVhc3NldAccYXNzZXRzL2NvdXJzZS9leHBlcmltZW50LnBuZwccYXNzZXRzL2NvdXJzZS9nZW5lcmFsaXR5LnBuZwwBDQEHBWFzc2V0Bxxhc3NldHMvY291cnNlL2dlbmVyYWxpdHkucG5nBxthc3NldHMvY291cnNlL2dlb2dyYXBoeS5wbmcMAQ0BBwVhc3NldAcbYXNzZXRzL2NvdXJzZS9nZW9ncmFwaHkucG5nBxlhc3NldHMvY291cnNlL2hpc3RvcnkucG5nDAENAQcFYXNzZXQHGWFzc2V0cy9jb3Vyc2UvaGlzdG9yeS5wbmcHHWFzc2V0cy9jb3Vyc2UvaWRlb2xvZ2ljYWwucG5nDAENAQcFYXNzZXQHHWFzc2V0cy9jb3Vyc2UvaWRlb2xvZ2ljYWwucG5nBxxhc3NldHMvY291cnNlL2ludGVybnNoaXAucG5nDAENAQcFYXNzZXQHHGFzc2V0cy9jb3Vyc2UvaW50ZXJuc2hpcC5wbmcHGmFzc2V0cy9jb3Vyc2UvbGFuZ3VhZ2UucG5nDAENAQcFYXNzZXQHGmFzc2V0cy9jb3Vyc2UvbGFuZ3VhZ2UucG5nBxxhc3NldHMvY291cnNlL2xpdGVyYXR1cmUucG5nDAENAQcFYXNzZXQHHGFzc2V0cy9jb3Vyc2UvbGl0ZXJhdHVyZS5wbmcHHGFzc2V0cy9jb3Vyc2UvbWFuYWdlbWVudC5wbmcMAQ0BBwVhc3NldAccYXNzZXRzL2NvdXJzZS9tYW5hZ2VtZW50LnBuZwcdYXNzZXRzL2NvdXJzZS9tYXRoZW1hdGljcy5wbmcMAQ0BBwVhc3NldAcdYXNzZXRzL2NvdXJzZS9tYXRoZW1hdGljcy5wbmcHHGFzc2V0cy9jb3Vyc2UvbWVjaGFuaWNhbC5wbmcMAQ0BBwVhc3NldAccYXNzZXRzL2NvdXJzZS9tZWNoYW5pY2FsLnBuZwcXYXNzZXRzL2NvdXJzZS9tdXNpYy5wbmcMAQ0BBwVhc3NldAcXYXNzZXRzL2NvdXJzZS9tdXNpYy5wbmcHGmFzc2V0cy9jb3Vyc2UvcGh5c2ljYWwucG5nDAENAQcFYXNzZXQHGmFzc2V0cy9jb3Vyc2UvcGh5c2ljYWwucG5nBxxhc3NldHMvY291cnNlL3BvbGl0aWNhbCAucG5nDAENAQcFYXNzZXQHHGFzc2V0cy9jb3Vyc2UvcG9saXRpY2FsIC5wbmcHGmFzc2V0cy9jb3Vyc2UvcHJhY3RpY2UucG5nDAENAQcFYXNzZXQHGmFzc2V0cy9jb3Vyc2UvcHJhY3RpY2UucG5nBxthc3NldHMvY291cnNlL3ByaW5jaXBsZS5wbmcMAQ0BBwVhc3NldAcbYXNzZXRzL2NvdXJzZS9wcmluY2lwbGUucG5nBxlhc3NldHMvY291cnNlL3JlYWRpbmcucG5nDAENAQcFYXNzZXQHGWFzc2V0cy9jb3Vyc2UvcmVhZGluZy5wbmcHGWFzc2V0cy9jb3Vyc2UvcnVubmluZy5wbmcMAQ0BBwVhc3NldAcZYXNzZXRzL2NvdXJzZS9ydW5uaW5nLnBuZwcYYXNzZXRzL2NvdXJzZS9zb2NpYWwucG5nDAENAQcFYXNzZXQHGGFzc2V0cy9jb3Vyc2Uvc29jaWFsLnBuZwcYYXNzZXRzL2NvdXJzZS9zcG9ydHMucG5nDAENAQcFYXNzZXQHGGFzc2V0cy9jb3Vyc2Uvc3BvcnRzLnBuZwcdYXNzZXRzL2NvdXJzZS9zdGF0aXN0aWNhbC5wbmcMAQ0BBwVhc3NldAcdYXNzZXRzL2NvdXJzZS9zdGF0aXN0aWNhbC5wbmcHHGFzc2V0cy9jb3Vyc2UvdGVjaG5vbG9neS5wbmcMAQ0BBwVhc3NldAccYXNzZXRzL2NvdXJzZS90ZWNobm9sb2d5LnBuZwcaYXNzZXRzL2NvdXJzZS90cmFpbmluZy5wbmcMAQ0BBwVhc3NldAcaYXNzZXRzL2NvdXJzZS90cmFpbmluZy5wbmcHHWFzc2V0cy9mb250cy95d2JfaWNvbmZvbnQudHRmDAENAQcFYXNzZXQHHWFzc2V0cy9mb250cy95d2JfaWNvbmZvbnQudHRmBx1hc3NldHMvZ2FtZS9zdWlrYS9mcnVpdC0xLnBuZwwBDQEHBWFzc2V0Bx1hc3NldHMvZ2FtZS9zdWlrYS9mcnVpdC0xLnBuZwceYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtMTAucG5nDAENAQcFYXNzZXQHHmFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTEwLnBuZwceYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtMTEucG5nDAENAQcFYXNzZXQHHmFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTExLnBuZwcdYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtMi5wbmcMAQ0BBwVhc3NldAcdYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtMi5wbmcHHWFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTMucG5nDAENAQcFYXNzZXQHHWFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTMucG5nBx1hc3NldHMvZ2FtZS9zdWlrYS9mcnVpdC00LnBuZwwBDQEHBWFzc2V0Bx1hc3NldHMvZ2FtZS9zdWlrYS9mcnVpdC00LnBuZwcdYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtNS5wbmcMAQ0BBwVhc3NldAcdYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtNS5wbmcHHWFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTYucG5nDAENAQcFYXNzZXQHHWFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTYucG5nBx1hc3NldHMvZ2FtZS9zdWlrYS9mcnVpdC03LnBuZwwBDQEHBWFzc2V0Bx1hc3NldHMvZ2FtZS9zdWlrYS9mcnVpdC03LnBuZwcdYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtOC5wbmcMAQ0BBwVhc3NldAcdYXNzZXRzL2dhbWUvc3Vpa2EvZnJ1aXQtOC5wbmcHHWFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTkucG5nDAENAQcFYXNzZXQHHWFzc2V0cy9nYW1lL3N1aWthL2ZydWl0LTkucG5nBw9hc3NldHMvaWNvbi5zdmcMAQ0BBwVhc3NldAcPYXNzZXRzL2ljb24uc3ZnBxNhc3NldHMvbDEwbi9lbi55YW1sDAENAQcFYXNzZXQHE2Fzc2V0cy9sMTBuL2VuLnlhbWwHGGFzc2V0cy9sMTBuL3poLUhhbnMueWFtbAwBDQEHBWFzc2V0Bxhhc3NldHMvbDEwbi96aC1IYW5zLnlhbWwHGGFzc2V0cy9sMTBuL3poLUhhbnQueWFtbAwBDQEHBWFzc2V0Bxhhc3NldHMvbDEwbi96aC1IYW50LnlhbWwHFWFzc2V0cy9yb29tX2xpc3QuanNvbgwBDQEHBWFzc2V0BxVhc3NldHMvcm9vbV9saXN0Lmpzb24HFmFzc2V0cy91c2VyX2FnZW50Lmpzb24MAQ0BBwVhc3NldAcWYXNzZXRzL3VzZXJfYWdlbnQuanNvbgcWYXNzZXRzL3dlYnZpZXcvZGFyay5qcwwBDQEHBWFzc2V0BxZhc3NldHMvd2Vidmlldy9kYXJrLmpzBxhhc3NldHMveWVsbG93X3BhZ2VzLmpzb24MAQ0BBwVhc3NldAcYYXNzZXRzL3llbGxvd19wYWdlcy5qc29uBzJwYWNrYWdlcy9jdXBlcnRpbm9faWNvbnMvYXNzZXRzL0N1cGVydGlub0ljb25zLnR0ZgwBDQEHBWFzc2V0BzJwYWNrYWdlcy9jdXBlcnRpbm9faWNvbnMvYXNzZXRzL0N1cGVydGlub0ljb25zLnR0ZgctcGFja2FnZXMvZmxleF9jb2xvcl9waWNrZXIvYXNzZXRzL29wYWNpdHkucG5nDAENAQcFYXNzZXQHLXBhY2thZ2VzL2ZsZXhfY29sb3JfcGlja2VyL2Fzc2V0cy9vcGFjaXR5LnBuZwc2cGFja2FnZXMvZmx1dHRlcl9pbWFnZV9jb21wcmVzc193ZWIvYXNzZXRzL3BpY2EubWluLmpzDAENAQcFYXNzZXQHNnBhY2thZ2VzL2ZsdXR0ZXJfaW1hZ2VfY29tcHJlc3Nfd2ViL2Fzc2V0cy9waWNhLm1pbi5qcwcrcGFja2FnZXMvc2ltcGxlX2ljb25zL2ZvbnRzL1NpbXBsZUljb25zLnR0ZgwBDQEHBWFzc2V0BytwYWNrYWdlcy9zaW1wbGVfaWNvbnMvZm9udHMvU2ltcGxlSWNvbnMudHRmByZwYWNrYWdlcy91bmljb25zL2ljb25zL1VuaWNvbnNMaW5lLnR0ZgwBDQEHBWFzc2V0ByZwYWNrYWdlcy91bmljb25zL2ljb25zL1VuaWNvbnNMaW5lLnR0ZgcncGFja2FnZXMvdW5pY29ucy9pY29ucy9Vbmljb25zU29saWQudHRmDAENAQcFYXNzZXQHJ3BhY2thZ2VzL3VuaWNvbnMvaWNvbnMvVW5pY29uc1NvbGlkLnR0ZgcqcGFja2FnZXMvdW5pY29ucy9pY29ucy9Vbmljb25zVGhpbmxpbmUudHRmDAENAQcFYXNzZXQHKnBhY2thZ2VzL3VuaWNvbnMvaWNvbnMvVW5pY29uc1RoaW5saW5lLnR0ZgcpcGFja2FnZXMvd2FrZWxvY2tfcGx1cy9hc3NldHMvbm9fc2xlZXAuanMMAQ0BBwVhc3NldAcpcGFja2FnZXMvd2FrZWxvY2tfcGx1cy9hc3NldHMvbm9fc2xlZXAuanMHMnBhY2thZ2VzL3dpbmRvd19tYW5hZ2VyL2ltYWdlcy9pY19jaHJvbWVfY2xvc2UucG5nDAENAQcFYXNzZXQHMnBhY2thZ2VzL3dpbmRvd19tYW5hZ2VyL2ltYWdlcy9pY19jaHJvbWVfY2xvc2UucG5nBzVwYWNrYWdlcy93aW5kb3dfbWFuYWdlci9pbWFnZXMvaWNfY2hyb21lX21heGltaXplLnBuZwwBDQEHBWFzc2V0BzVwYWNrYWdlcy93aW5kb3dfbWFuYWdlci9pbWFnZXMvaWNfY2hyb21lX21heGltaXplLnBuZwc1cGFja2FnZXMvd2luZG93X21hbmFnZXIvaW1hZ2VzL2ljX2Nocm9tZV9taW5pbWl6ZS5wbmcMAQ0BBwVhc3NldAc1cGFja2FnZXMvd2luZG93X21hbmFnZXIvaW1hZ2VzL2ljX2Nocm9tZV9taW5pbWl6ZS5wbmcHN3BhY2thZ2VzL3dpbmRvd19tYW5hZ2VyL2ltYWdlcy9pY19jaHJvbWVfdW5tYXhpbWl6ZS5wbmcMAQ0BBwVhc3NldAc3cGFja2FnZXMvd2luZG93X21hbmFnZXIvaW1hZ2VzL2ljX2Nocm9tZV91bm1heGltaXplLnBuZw==" \ No newline at end of file diff --git a/assets/AssetManifest.json b/assets/AssetManifest.json new file mode 100644 index 000000000..d5bd55679 --- /dev/null +++ b/assets/AssetManifest.json @@ -0,0 +1 @@ +{"assets/course/art.png":["assets/course/art.png"],"assets/course/biological.png":["assets/course/biological.png"],"assets/course/building.png":["assets/course/building.png"],"assets/course/business.png":["assets/course/business.png"],"assets/course/chemical.png":["assets/course/chemical.png"],"assets/course/circuit.png":["assets/course/circuit.png"],"assets/course/computer.png":["assets/course/computer.png"],"assets/course/control.png":["assets/course/control.png"],"assets/course/curriculum.png":["assets/course/curriculum.png"],"assets/course/design.png":["assets/course/design.png"],"assets/course/economic.png":["assets/course/economic.png"],"assets/course/electricity.png":["assets/course/electricity.png"],"assets/course/engineering.png":["assets/course/engineering.png"],"assets/course/experiment.png":["assets/course/experiment.png"],"assets/course/generality.png":["assets/course/generality.png"],"assets/course/geography.png":["assets/course/geography.png"],"assets/course/history.png":["assets/course/history.png"],"assets/course/ideological.png":["assets/course/ideological.png"],"assets/course/internship.png":["assets/course/internship.png"],"assets/course/language.png":["assets/course/language.png"],"assets/course/literature.png":["assets/course/literature.png"],"assets/course/management.png":["assets/course/management.png"],"assets/course/mathematics.png":["assets/course/mathematics.png"],"assets/course/mechanical.png":["assets/course/mechanical.png"],"assets/course/music.png":["assets/course/music.png"],"assets/course/physical.png":["assets/course/physical.png"],"assets/course/political .png":["assets/course/political .png"],"assets/course/practice.png":["assets/course/practice.png"],"assets/course/principle.png":["assets/course/principle.png"],"assets/course/reading.png":["assets/course/reading.png"],"assets/course/running.png":["assets/course/running.png"],"assets/course/social.png":["assets/course/social.png"],"assets/course/sports.png":["assets/course/sports.png"],"assets/course/statistical.png":["assets/course/statistical.png"],"assets/course/technology.png":["assets/course/technology.png"],"assets/course/training.png":["assets/course/training.png"],"assets/fonts/ywb_iconfont.ttf":["assets/fonts/ywb_iconfont.ttf"],"assets/game/suika/fruit-1.png":["assets/game/suika/fruit-1.png"],"assets/game/suika/fruit-10.png":["assets/game/suika/fruit-10.png"],"assets/game/suika/fruit-11.png":["assets/game/suika/fruit-11.png"],"assets/game/suika/fruit-2.png":["assets/game/suika/fruit-2.png"],"assets/game/suika/fruit-3.png":["assets/game/suika/fruit-3.png"],"assets/game/suika/fruit-4.png":["assets/game/suika/fruit-4.png"],"assets/game/suika/fruit-5.png":["assets/game/suika/fruit-5.png"],"assets/game/suika/fruit-6.png":["assets/game/suika/fruit-6.png"],"assets/game/suika/fruit-7.png":["assets/game/suika/fruit-7.png"],"assets/game/suika/fruit-8.png":["assets/game/suika/fruit-8.png"],"assets/game/suika/fruit-9.png":["assets/game/suika/fruit-9.png"],"assets/icon.svg":["assets/icon.svg"],"assets/l10n/en.yaml":["assets/l10n/en.yaml"],"assets/l10n/zh-Hans.yaml":["assets/l10n/zh-Hans.yaml"],"assets/l10n/zh-Hant.yaml":["assets/l10n/zh-Hant.yaml"],"assets/room_list.json":["assets/room_list.json"],"assets/user_agent.json":["assets/user_agent.json"],"assets/webview/dark.js":["assets/webview/dark.js"],"assets/yellow_pages.json":["assets/yellow_pages.json"],"packages/cupertino_icons/assets/CupertinoIcons.ttf":["packages/cupertino_icons/assets/CupertinoIcons.ttf"],"packages/flex_color_picker/assets/opacity.png":["packages/flex_color_picker/assets/opacity.png"],"packages/flutter_image_compress_web/assets/pica.min.js":["packages/flutter_image_compress_web/assets/pica.min.js"],"packages/simple_icons/fonts/SimpleIcons.ttf":["packages/simple_icons/fonts/SimpleIcons.ttf"],"packages/unicons/icons/UniconsLine.ttf":["packages/unicons/icons/UniconsLine.ttf"],"packages/unicons/icons/UniconsSolid.ttf":["packages/unicons/icons/UniconsSolid.ttf"],"packages/unicons/icons/UniconsThinline.ttf":["packages/unicons/icons/UniconsThinline.ttf"],"packages/wakelock_plus/assets/no_sleep.js":["packages/wakelock_plus/assets/no_sleep.js"],"packages/window_manager/images/ic_chrome_close.png":["packages/window_manager/images/ic_chrome_close.png"],"packages/window_manager/images/ic_chrome_maximize.png":["packages/window_manager/images/ic_chrome_maximize.png"],"packages/window_manager/images/ic_chrome_minimize.png":["packages/window_manager/images/ic_chrome_minimize.png"],"packages/window_manager/images/ic_chrome_unmaximize.png":["packages/window_manager/images/ic_chrome_unmaximize.png"]} \ No newline at end of file diff --git a/assets/FontManifest.json b/assets/FontManifest.json new file mode 100644 index 000000000..0164c2fc3 --- /dev/null +++ b/assets/FontManifest.json @@ -0,0 +1 @@ +[{"family":"MaterialIcons","fonts":[{"asset":"fonts/MaterialIcons-Regular.otf"}]},{"family":"ywb_iconfont","fonts":[{"asset":"assets/fonts/ywb_iconfont.ttf"}]},{"family":"packages/cupertino_icons/CupertinoIcons","fonts":[{"asset":"packages/cupertino_icons/assets/CupertinoIcons.ttf"}]},{"family":"packages/simple_icons/SimpleIcons","fonts":[{"asset":"packages/simple_icons/fonts/SimpleIcons.ttf"}]},{"family":"packages/unicons/UniconsLine","fonts":[{"asset":"packages/unicons/icons/UniconsLine.ttf"}]},{"family":"packages/unicons/UniconsSolid","fonts":[{"asset":"packages/unicons/icons/UniconsSolid.ttf"}]},{"family":"packages/unicons/UniconsThinline","fonts":[{"asset":"packages/unicons/icons/UniconsThinline.ttf"}]}] \ No newline at end of file diff --git a/assets/NOTICES b/assets/NOTICES new file mode 100644 index 000000000..f553de9f0 --- /dev/null +++ b/assets/NOTICES @@ -0,0 +1,41657 @@ +_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. + +-------------------------------------------------------------------------------- +aFileChooser + + 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 2011 - 2013 Paul Burke + + 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. + +-------------------------------------------------------------------------------- +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_sdk +glslang +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 +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 +angle +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 +engine +image_picker +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. +-------------------------------------------------------------------------------- +add_2_calendar + +MIT License + +Copyright (c) 2018 Javi Hurtado + +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +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) 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 + +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 +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. +-------------------------------------------------------------------------------- +animated_size_and_fade + +Copyright 2019 by Marcelo Glasberg + +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. + +-------------------------------------------------------------------------------- +animations +cross_file +file_selector_linux +file_selector_macos +file_selector_platform_interface +file_selector_windows +flutter_lints +flutter_plugin_android_lifecycle +go_router +image_picker_for_web +image_picker_linux +image_picker_macos +image_picker_platform_interface +image_picker_windows +path_provider +path_provider_android +path_provider_foundation +path_provider_linux +path_provider_platform_interface +path_provider_windows +platform +plugin_platform_interface +quick_actions +quick_actions_android +quick_actions_ios +quick_actions_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 +vector_graphics +vector_graphics_codec +vector_graphics_compiler +video_player +video_player_android +video_player_avfoundation +video_player_platform_interface +video_player_web +webview_flutter +webview_flutter_platform_interface +webview_flutter_wkwebview +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. + +-------------------------------------------------------------------------------- +app_links + + 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. + +-------------------------------------------------------------------------------- +app_settings + +MIT License + +Copyright (c) 2019 Daniel Spencer + +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +asn1lib + +http://opensource.org/licenses/BSD-3-Clause +Copyright (c) 2015, Warren Strange +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. +-------------------------------------------------------------------------------- +async +cli_util +collection +mime +source_map_stack_trace +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. + +-------------------------------------------------------------------------------- +async_locks + + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. + +-------------------------------------------------------------------------------- +audio_session +just_audio_platform_interface +just_audio_web + +MIT License + +Copyright (c) 2020 Ryan Heise and the project contributors. + +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. + +-------------------------------------------------------------------------------- +auto_size_text + +MIT License + +Copyright (c) 2018 Simon Leier + +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. + +-------------------------------------------------------------------------------- +base_codecs + +Copyright 2021 package Author. 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 +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. + +-------------------------------------------------------------------------------- +basic_utils + +MIT License + +Copyright (c) 2023 Ephenodrom + +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. + +-------------------------------------------------------------------------------- +beautiful_soup_dart + +MIT License + +Copyright (c) 2021 Matej Zidek + +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. +-------------------------------------------------------------------------------- +boolean_selector +meta +shelf_packages_handler + +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. + +-------------------------------------------------------------------------------- +bordered_text + +MIT License + +Copyright (c) 2019 Michael Joseph + +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. + +-------------------------------------------------------------------------------- +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 +test_core +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 +forge2d + +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. + +-------------------------------------------------------------------------------- +carousel_slider + +MIT License + +Copyright (c) 2017 serenader + +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. +-------------------------------------------------------------------------------- +charcode + +Copyright 2014, 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. + +-------------------------------------------------------------------------------- +check_vpn_connection + +MIT License + +Copyright (c) 2020 Renat Fakhrutdinov + +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. +© 2020 GitHub, Inc. +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +chewie + +The MIT License (MIT) +Copyright (c) 2017 Brian Egan + +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. + +-------------------------------------------------------------------------------- +clock +data_serializer +fake_async +statistics + + + 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. +-------------------------------------------------------------------------------- +connectivity_plus +device_info_plus +package_info_plus +package_info_plus_platform_interface +share_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. + +-------------------------------------------------------------------------------- +connectivity_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. + +-------------------------------------------------------------------------------- +convert +crypto +shelf_static +source_gen +vm_service + +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. + +-------------------------------------------------------------------------------- +cookie_jar + +MIT License + +Copyright (c) 2018 wendux + +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. +-------------------------------------------------------------------------------- +copy_with_extension +copy_with_extension_gen + +MIT License + +Copyright (c) 2019 Oleksandr Kirichenko + +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. +-------------------------------------------------------------------------------- +coverage +dart_style +glob +http +http_parser +matcher +path +pool +pub_semver +source_span +string_scanner +test +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +cupertino_onboarding + +The MIT License (MIT) +Copyright (c) 2023 Hubert Jóźwiak + +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +dbus +enough_convert +enough_mail +enough_mail_html +gtk + +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. + +-------------------------------------------------------------------------------- +device_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. + +-------------------------------------------------------------------------------- +dio +dio_cookie_manager + +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. +-------------------------------------------------------------------------------- +dismissible_page + +Free of charge +The MIT License (MIT) +Copyright (c) 2022 Tornike Kurdadze + +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. +-------------------------------------------------------------------------------- +dots_indicator + +MIT License + +Copyright (c) 2019 Jean-Charles Moussé + +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +dynamic_color +flutter_svg_provider + + 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. + +-------------------------------------------------------------------------------- +easy_localization + +MIT License + +Copyright (c) 2018 + +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. +-------------------------------------------------------------------------------- +easy_logger + +MIT License + +Copyright (c) 2021 + +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. +-------------------------------------------------------------------------------- +email_validator + +MIT License + +Copyright (c) 2018 Fredrik Eilertsen + +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. + +-------------------------------------------------------------------------------- +encrypt + +BSD 3-Clause License + +Copyright (c) 2018, Leo Cavalcante +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 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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +enough_icalendar + +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. + +-------------------------------------------------------------------------------- +equatable + +MIT License + +Copyright (c) 2018 Felix Angelov + +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +event_bus + +The MIT License (MIT) + +Copyright (c) 2013 Marco Jakob (majakob@gmx.ch) + +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. +-------------------------------------------------------------------------------- +fallback_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/sdk/+/7f2523c2fa9a74ef3cbe21ae885458fc1fb99d1b +/third_party/fallback_root_certificates/ + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +fit_system_screenshot + +MIT License + +Copyright (c) 2022 YANG LANG + +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. + +-------------------------------------------------------------------------------- +fixnum +http_multi_server +shelf +shelf_web_socket +source_maps +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. + +-------------------------------------------------------------------------------- +fk_user_agent + +MIT License +----------- + +Copyright (c) 2021 flutter-fast-kit (http://github.com/flutter-fast-kit/) +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. + +-------------------------------------------------------------------------------- +fl_chart + +MIT License + +Copyright (c) 2022 Flutter 4 Fun + +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. + +-------------------------------------------------------------------------------- +flame +flame_forge2d + +MIT License + +Copyright (c) 2021 Blue Fire + +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. + + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +flex_color_picker + +BSD 3-Clause License + +Copyright (c) 2020-2024 Mike Rydstrom (Rydmike) +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. + +-------------------------------------------------------------------------------- +flex_seed_scheme + +BSD 3-Clause License + +FlexSeedScheme Copyright (c) 2022-2024 +Mike Rydstrom (Twitter @RydMike GitHub rydmike) +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. + +-------------------------------------------------------------------------------- +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_adaptive_ui + +MIT License + +Copyright (c) 2022 Mohammad Taheri + +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_highlight +highlight + +MIT License + +Copyright (c) 2019 Rongjian Zhang + +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_html + +MIT License + +Copyright (c) 2019-2022 The flutter_html developers + +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_image_compress +flutter_image_compress_common +flutter_image_compress_macos +flutter_image_compress_ohos +flutter_image_compress_platform_interface +flutter_image_compress_web + +MIT License + +Copyright (c) 2023 FlutterCandies + +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_platform_widgets + +MIT License + +Copyright (c) 2018 Lance Johnstone + +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 +riverpod +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. + +-------------------------------------------------------------------------------- +flutter_svg + +Copyright (c) 2018 Dan Field + +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_swipe_action_cell + + 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. + +-------------------------------------------------------------------------------- +flutter_swipe_detector + +MIT License + +Copyright (c) 2021 Baseflow BV + +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. + +-------------------------------------------------------------------------------- +flutter_widget_from_html +flutter_widget_from_html_core +fwfh_cached_network_image +fwfh_chewie +fwfh_just_audio +fwfh_svg +fwfh_url_launcher +fwfh_webview + +MIT License + +Copyright (c) 2020 Dao Hoang Son + +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. + +-------------------------------------------------------------------------------- +format + +Copyright 2020 Victor Dunaev (vi-k, nashol) + +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +get_it + +MIT License + +Copyright (c) 2018 Thomas Burkhart + +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +hashlib_codecs + +BSD 3-Clause License + +Copyright (c) 2023, Sudipto Chandra +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +hive_flutter +hive_generator + +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. +-------------------------------------------------------------------------------- +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-2023 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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +irondash_engine_context +irondash_message_channel +pixel_snap + +Copyright (c) 2022 Matej Knopp and the contributors + +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +just_audio + +MIT License + +Copyright (c) 2019-2020 Ryan Heise and the project contributors. + +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. + +============================================================================== + +This software includes the ExoPlayer library which is licensed under the Apache +License, Version 2.0. + + + 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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +leak_tracker +leak_tracker_flutter_testing +leak_tracker_testing + +Copyright 2022, 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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 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 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 2022 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. + +-------------------------------------------------------------------------------- +list_counter + +MIT License + +Copyright (c) 2022 The list_counter developers + +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. +-------------------------------------------------------------------------------- +locale_names + +BSD 3-Clause License + +Copyright (c) 2020, Wenqi Li +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. + +-------------------------------------------------------------------------------- +logger + +MIT License + +Copyright (c) 2019 Simon Leier +Copyright (c) 2019 Harm Aarts +Copyright (c) 2023 Severin Hamader + +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +markdown_widget + +MIT License + +Copyright (c) 2020 android-bro + +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. + +-------------------------------------------------------------------------------- +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 + + Copyright 2021 Google LLC + + 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. + +-------------------------------------------------------------------------------- +mobile_scanner + +BSD 3-Clause License + +Copyright (c) 2022, Julian Steenbakker +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. + +-------------------------------------------------------------------------------- +modal_bottom_sheet + +MIT License + +Copyright (c) 2020 Jaime Blasco + +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. + +-------------------------------------------------------------------------------- +msix + +MIT License + +Copyright (c) 2022 Yehuda Kremer + +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. + +-------------------------------------------------------------------------------- +nested +provider + +MIT License + +Copyright (c) 2019 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. +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +node_preamble + +The MIT License (MIT) + +Copyright (c) 2015 Michael Bullington + +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. + +=== + +Copyright 2012, 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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +open_file + +Copyright 2018 crazecoder. 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. +-------------------------------------------------------------------------------- +ordered_set + +MIT License + +Copyright (c) 2017 Luan Nico + +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. + + +-------------------------------------------------------------------------------- +path_parsing + +Copyright (c) 2018 Dan Field + +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. + +-------------------------------------------------------------------------------- +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_html +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. + + +-------------------------------------------------------------------------------- +pretty_qr_code + +MIT License + +Copyright (c) 2023 Oleg Lobkov + +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. + +-------------------------------------------------------------------------------- +pull_down_button + +The MIT License (MIT) + +Copyright (c) 2022 https://github.com/notDmDrl + +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. +-------------------------------------------------------------------------------- +qr + +Copyright 2014, the Dart QR 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. + +-------------------------------------------------------------------------------- +qr_flutter + +BSD 3-Clause License + +Copyright (c) 2020, Luke Freeman. +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +reorderables + +MIT License + +Copyright (c) 2019 Hansheng Chiu + +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. +-------------------------------------------------------------------------------- +rettulf + +BSD 3-Clause License + +Copyright (c) 2022, Li plum +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +sanitize_filename + + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. +-------------------------------------------------------------------------------- +screen_retriever +window_manager + +MIT License + +Copyright (c) 2022 LiJianying + +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. +-------------------------------------------------------------------------------- +screenshot + +The MIT License (MIT) + +Copyright (c) 2018 Sachin Ganesh + +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. +-------------------------------------------------------------------------------- +scroll_to_index + +MIT License + +Copyright (c) 2019 Quire + +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. + +-------------------------------------------------------------------------------- +share_plus + +Copyright 2017, the Flutter 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. + +-------------------------------------------------------------------------------- +simple_icons + +# CC0 1.0 Universal + +## Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an “owner”) of an original work of authorship and/or a database (each, a “Work”). + +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works (“Commons”) that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the “Affirmer”), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights (“Copyright and Related Rights”). Copyright and Related Rights include, but are not limited to, the following: + 1. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; + 2. moral rights retained by the original author(s) and/or performer(s); + 3. publicity and privacy rights pertaining to a person’s image or likeness depicted in a Work; + 4. rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(i), below; + 5. rights protecting the extraction, dissemination, use and reuse of data in a Work; + 6. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and + 7. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer’s Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the “Waiver”). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer’s heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer’s express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer’s express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer’s Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the “License”). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer’s express Statement of Purpose. + +4. Limitations and Disclaimers. + 1. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. + 2. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. + 3. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person’s Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. + 4. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + +For more information, please see https://creativecommons.org/publicdomain/zero/1.0/. +-------------------------------------------------------------------------------- +sit + + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. + +-------------------------------------------------------------------------------- +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 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, 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2024 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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +super_context_menu + +Copyright (c) 2023 Superlist, Matej Knopp and the contributors + +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. + +-------------------------------------------------------------------------------- +super_native_extensions + +Copyright (c) 2022 Superlist, Matej Knopp and the contributors + +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +system_theme +system_theme_web + +BSD 3-Clause License + +Copyright (c) 2021, Bruno D'Luka +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. +-------------------------------------------------------------------------------- +text_scroll + +Copyright 2022 yurii-khi.com + +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. +-------------------------------------------------------------------------------- +unicons + +BSD 3-Clause License + +Copyright (c) 2020, Pedro Lemos +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. + +-------------------------------------------------------------------------------- +universal_html + + 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. + +---------------------------------------------------------------------------------------------------- + +This version of "universal_html" contains source code from the Dart package "csslib", which was +obtained from: + https://github.com/dart-lang/csslib + +When the source code was obtained, the original source code had the following license: + +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. + +---------------------------------------------------------------------------------------------------- + +This version of "universal_html" contains source code from the Dart package "html", which was +obtained copied from: + https://github.com/dart-lang/html + +When the source code was obtained, the original source code had the following license: + +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 Inc. (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. + +---------------------------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +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 +-------------------------------------------------------------------------------- +universal_platform + +MIT License + +Copyright (c) 2019 gskinner.com + +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. +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +version + +Copyright (c) 2021, Matthew Barbour. +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 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 BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- +vibration + +BSD 2-Clause License + +Copyright (c) 2018, Benjamin Dean +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. + +-------------------------------------------------------------------------------- +visibility_detector + +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +wakelock_plus + +BSD 3-Clause License + +Copyright (c) 2020-2023, creativecreatorormaybenot +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. +-------------------------------------------------------------------------------- +wakelock_plus_platform_interface + +BSD 3-Clause License + +Copyright (c) 2020-2023, creativecreatorormaybenot +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. + +-------------------------------------------------------------------------------- +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_browser_detect + +MIT License + +Copyright (c) 2020 Tomáš Chylý + +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +webkit_inspection_protocol + +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 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. + +-------------------------------------------------------------------------------- +webview_flutter_android + +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. + + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +win32_registry + +BSD 3-Clause License + +Copyright (c) 2023, Halil Durmus + +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. +-------------------------------------------------------------------------------- +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/course/art.png b/assets/assets/course/art.png similarity index 100% rename from assets/course/art.png rename to assets/assets/course/art.png diff --git a/assets/course/biological.png b/assets/assets/course/biological.png similarity index 100% rename from assets/course/biological.png rename to assets/assets/course/biological.png diff --git a/assets/course/building.png b/assets/assets/course/building.png similarity index 100% rename from assets/course/building.png rename to assets/assets/course/building.png diff --git a/assets/course/business.png b/assets/assets/course/business.png similarity index 100% rename from assets/course/business.png rename to assets/assets/course/business.png diff --git a/assets/course/chemical.png b/assets/assets/course/chemical.png similarity index 100% rename from assets/course/chemical.png rename to assets/assets/course/chemical.png diff --git a/assets/course/circuit.png b/assets/assets/course/circuit.png similarity index 100% rename from assets/course/circuit.png rename to assets/assets/course/circuit.png diff --git a/assets/course/computer.png b/assets/assets/course/computer.png similarity index 100% rename from assets/course/computer.png rename to assets/assets/course/computer.png diff --git a/assets/course/control.png b/assets/assets/course/control.png similarity index 100% rename from assets/course/control.png rename to assets/assets/course/control.png diff --git a/assets/course/curriculum.png b/assets/assets/course/curriculum.png similarity index 100% rename from assets/course/curriculum.png rename to assets/assets/course/curriculum.png diff --git a/assets/course/design.png b/assets/assets/course/design.png similarity index 100% rename from assets/course/design.png rename to assets/assets/course/design.png diff --git a/assets/course/economic.png b/assets/assets/course/economic.png similarity index 100% rename from assets/course/economic.png rename to assets/assets/course/economic.png diff --git a/assets/course/electricity.png b/assets/assets/course/electricity.png similarity index 100% rename from assets/course/electricity.png rename to assets/assets/course/electricity.png diff --git a/assets/course/engineering.png b/assets/assets/course/engineering.png similarity index 100% rename from assets/course/engineering.png rename to assets/assets/course/engineering.png diff --git a/assets/course/experiment.png b/assets/assets/course/experiment.png similarity index 100% rename from assets/course/experiment.png rename to assets/assets/course/experiment.png diff --git a/assets/course/generality.png b/assets/assets/course/generality.png similarity index 100% rename from assets/course/generality.png rename to assets/assets/course/generality.png diff --git a/assets/course/geography.png b/assets/assets/course/geography.png similarity index 100% rename from assets/course/geography.png rename to assets/assets/course/geography.png diff --git a/assets/course/history.png b/assets/assets/course/history.png similarity index 100% rename from assets/course/history.png rename to assets/assets/course/history.png diff --git a/assets/course/ideological.png b/assets/assets/course/ideological.png similarity index 100% rename from assets/course/ideological.png rename to assets/assets/course/ideological.png diff --git a/assets/course/internship.png b/assets/assets/course/internship.png similarity index 100% rename from assets/course/internship.png rename to assets/assets/course/internship.png diff --git a/assets/course/language.png b/assets/assets/course/language.png similarity index 100% rename from assets/course/language.png rename to assets/assets/course/language.png diff --git a/assets/course/literature.png b/assets/assets/course/literature.png similarity index 100% rename from assets/course/literature.png rename to assets/assets/course/literature.png diff --git a/assets/course/management.png b/assets/assets/course/management.png similarity index 100% rename from assets/course/management.png rename to assets/assets/course/management.png diff --git a/assets/course/mathematics.png b/assets/assets/course/mathematics.png similarity index 100% rename from assets/course/mathematics.png rename to assets/assets/course/mathematics.png diff --git a/assets/course/mechanical.png b/assets/assets/course/mechanical.png similarity index 100% rename from assets/course/mechanical.png rename to assets/assets/course/mechanical.png diff --git a/assets/course/music.png b/assets/assets/course/music.png similarity index 100% rename from assets/course/music.png rename to assets/assets/course/music.png diff --git a/assets/course/physical.png b/assets/assets/course/physical.png similarity index 100% rename from assets/course/physical.png rename to assets/assets/course/physical.png diff --git a/assets/course/political .png b/assets/assets/course/political%20.png similarity index 100% rename from assets/course/political .png rename to assets/assets/course/political%20.png diff --git a/assets/course/practice.png b/assets/assets/course/practice.png similarity index 100% rename from assets/course/practice.png rename to assets/assets/course/practice.png diff --git a/assets/course/principle.png b/assets/assets/course/principle.png similarity index 100% rename from assets/course/principle.png rename to assets/assets/course/principle.png diff --git a/assets/course/reading.png b/assets/assets/course/reading.png similarity index 100% rename from assets/course/reading.png rename to assets/assets/course/reading.png diff --git a/assets/course/running.png b/assets/assets/course/running.png similarity index 100% rename from assets/course/running.png rename to assets/assets/course/running.png diff --git a/assets/course/social.png b/assets/assets/course/social.png similarity index 100% rename from assets/course/social.png rename to assets/assets/course/social.png diff --git a/assets/course/sports.png b/assets/assets/course/sports.png similarity index 100% rename from assets/course/sports.png rename to assets/assets/course/sports.png diff --git a/assets/course/statistical.png b/assets/assets/course/statistical.png similarity index 100% rename from assets/course/statistical.png rename to assets/assets/course/statistical.png diff --git a/assets/course/technology.png b/assets/assets/course/technology.png similarity index 100% rename from assets/course/technology.png rename to assets/assets/course/technology.png diff --git a/assets/course/training.png b/assets/assets/course/training.png similarity index 100% rename from assets/course/training.png rename to assets/assets/course/training.png diff --git a/assets/fonts/ywb_iconfont.ttf b/assets/assets/fonts/ywb_iconfont.ttf similarity index 100% rename from assets/fonts/ywb_iconfont.ttf rename to assets/assets/fonts/ywb_iconfont.ttf diff --git a/assets/game/suika/fruit-1.png b/assets/assets/game/suika/fruit-1.png similarity index 100% rename from assets/game/suika/fruit-1.png rename to assets/assets/game/suika/fruit-1.png diff --git a/assets/game/suika/fruit-10.png b/assets/assets/game/suika/fruit-10.png similarity index 100% rename from assets/game/suika/fruit-10.png rename to assets/assets/game/suika/fruit-10.png diff --git a/assets/game/suika/fruit-11.png b/assets/assets/game/suika/fruit-11.png similarity index 100% rename from assets/game/suika/fruit-11.png rename to assets/assets/game/suika/fruit-11.png diff --git a/assets/game/suika/fruit-2.png b/assets/assets/game/suika/fruit-2.png similarity index 100% rename from assets/game/suika/fruit-2.png rename to assets/assets/game/suika/fruit-2.png diff --git a/assets/game/suika/fruit-3.png b/assets/assets/game/suika/fruit-3.png similarity index 100% rename from assets/game/suika/fruit-3.png rename to assets/assets/game/suika/fruit-3.png diff --git a/assets/game/suika/fruit-4.png b/assets/assets/game/suika/fruit-4.png similarity index 100% rename from assets/game/suika/fruit-4.png rename to assets/assets/game/suika/fruit-4.png diff --git a/assets/game/suika/fruit-5.png b/assets/assets/game/suika/fruit-5.png similarity index 100% rename from assets/game/suika/fruit-5.png rename to assets/assets/game/suika/fruit-5.png diff --git a/assets/game/suika/fruit-6.png b/assets/assets/game/suika/fruit-6.png similarity index 100% rename from assets/game/suika/fruit-6.png rename to assets/assets/game/suika/fruit-6.png diff --git a/assets/game/suika/fruit-7.png b/assets/assets/game/suika/fruit-7.png similarity index 100% rename from assets/game/suika/fruit-7.png rename to assets/assets/game/suika/fruit-7.png diff --git a/assets/game/suika/fruit-8.png b/assets/assets/game/suika/fruit-8.png similarity index 100% rename from assets/game/suika/fruit-8.png rename to assets/assets/game/suika/fruit-8.png diff --git a/assets/game/suika/fruit-9.png b/assets/assets/game/suika/fruit-9.png similarity index 100% rename from assets/game/suika/fruit-9.png rename to assets/assets/game/suika/fruit-9.png diff --git a/assets/icon.svg b/assets/assets/icon.svg similarity index 100% rename from assets/icon.svg rename to assets/assets/icon.svg diff --git a/assets/l10n/en.yaml b/assets/assets/l10n/en.yaml similarity index 100% rename from assets/l10n/en.yaml rename to assets/assets/l10n/en.yaml diff --git a/assets/l10n/zh-Hans.yaml b/assets/assets/l10n/zh-Hans.yaml similarity index 100% rename from assets/l10n/zh-Hans.yaml rename to assets/assets/l10n/zh-Hans.yaml diff --git a/assets/l10n/zh-Hant.yaml b/assets/assets/l10n/zh-Hant.yaml similarity index 100% rename from assets/l10n/zh-Hant.yaml rename to assets/assets/l10n/zh-Hant.yaml diff --git a/assets/room_list.json b/assets/assets/room_list.json similarity index 100% rename from assets/room_list.json rename to assets/assets/room_list.json diff --git a/assets/user_agent.json b/assets/assets/user_agent.json similarity index 100% rename from assets/user_agent.json rename to assets/assets/user_agent.json diff --git a/assets/webview/dark.js b/assets/assets/webview/dark.js similarity index 100% rename from assets/webview/dark.js rename to assets/assets/webview/dark.js diff --git a/assets/yellow_pages.json b/assets/assets/yellow_pages.json similarity index 100% rename from assets/yellow_pages.json rename to assets/assets/yellow_pages.json diff --git a/assets/fonts/MaterialIcons-Regular.otf b/assets/fonts/MaterialIcons-Regular.otf new file mode 100644 index 000000000..ae4e6bf0f 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 000000000..5d891d0ad Binary files /dev/null and b/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf differ diff --git a/assets/packages/flex_color_picker/assets/opacity.png b/assets/packages/flex_color_picker/assets/opacity.png new file mode 100644 index 000000000..bc919f353 Binary files /dev/null and b/assets/packages/flex_color_picker/assets/opacity.png differ diff --git a/assets/packages/flutter_image_compress_web/assets/pica.min.js b/assets/packages/flutter_image_compress_web/assets/pica.min.js new file mode 100644 index 000000000..fbd5033ba --- /dev/null +++ b/assets/packages/flutter_image_compress_web/assets/pica.min.js @@ -0,0 +1,13 @@ +/*! + +pica +https://github.com/nodeca/pica + +*/ +!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).pica=t()}}((function(){return function t(e,A,i){function r(a,o){if(!A[a]){if(!e[a]){var s="function"==typeof require&&require;if(!o&&s)return s(a,!0);if(n)return n(a,!0);var h=new Error("Cannot find module '"+a+"'");throw h.code="MODULE_NOT_FOUND",h}var u=A[a]={exports:{}};e[a][0].call(u.exports,(function(t){return r(e[a][1][t]||t)}),u,u.exports,t,e,A,i)}return A[a].exports}for(var n="function"==typeof require&&require,a=0;a=0,wasm:e.indexOf("wasm")>=0};i.call(this,A),this.features={js:A.js,wasm:A.wasm&&this.has_wasm()},this.use(r),this.use(n)}a.prototype=Object.create(i.prototype),a.prototype.constructor=a,a.prototype.resizeAndUnsharp=function(t,e){var A=this.resize(t,e);return t.unsharpAmount&&this.unsharp_mask(A,t.toWidth,t.toHeight,t.unsharpAmount,t.unsharpRadius,t.unsharpThreshold),A},e.exports=a},{"./mm_resize":4,"./mm_unsharp_mask":9,multimath:19}],2:[function(t,e,A){"use strict";function i(t){return t<0?0:t>255?255:t}function r(t){return t>=0?t:0}e.exports={convolveHor:function(t,e,A,i,n,a){var o,s,h,u,c,f,g,l,I,d,B,m=0,Q=0;for(I=0;I0;g--)u=u+(B=a[c++])*t[l+3]|0,h=h+B*t[l+2]|0,s=s+B*t[l+1]|0,o=o+B*t[l]|0,l=l+4|0;e[Q+3]=r(u>>7),e[Q+2]=r(h>>7),e[Q+1]=r(s>>7),e[Q]=r(o>>7),Q=Q+4*i|0}Q=4*(I+1)|0,m=(I+1)*A*4|0}},convolveVert:function(t,e,A,r,n,a){var o,s,h,u,c,f,g,l,I,d,B,m=0,Q=0;for(I=0;I0;g--)u=u+(B=a[c++])*t[l+3]|0,h=h+B*t[l+2]|0,s=s+B*t[l+1]|0,o=o+B*t[l]|0,l=l+4|0;o>>=7,s>>=7,h>>=7,u>>=7,e[Q+3]=i(u+8192>>14),e[Q+2]=i(h+8192>>14),e[Q+1]=i(s+8192>>14),e[Q]=i(o+8192>>14),Q=Q+4*r|0}Q=4*(I+1)|0,m=(I+1)*A*4|0}},convolveHorWithPre:function(t,e,A,i,n,a){var o,s,h,u,c,f,g,l,I,d,B,m,Q=0,p=0;for(d=0;d0;l--)u=u+(m=a[f++])*(c=t[I+3])|0,h=h+m*t[I+2]*c|0,s=s+m*t[I+1]*c|0,o=o+m*t[I]*c|0,I=I+4|0;h=h/255|0,s=s/255|0,o=o/255|0,e[p+3]=r(u>>7),e[p+2]=r(h>>7),e[p+1]=r(s>>7),e[p]=r(o>>7),p=p+4*i|0}p=4*(d+1)|0,Q=(d+1)*A*4|0}},convolveVertWithPre:function(t,e,A,r,n,a){var o,s,h,u,c,f,g,l,I,d,B,m=0,Q=0;for(I=0;I0;g--)u=u+(B=a[c++])*t[l+3]|0,h=h+B*t[l+2]|0,s=s+B*t[l+1]|0,o=o+B*t[l]|0,l=l+4|0;o>>=7,s>>=7,h>>=7,(u=i((u>>=7)+8192>>14))>0&&(o=255*o/u|0,s=255*s/u|0,h=255*h/u|0),e[Q+3]=u,e[Q+2]=i(h+8192>>14),e[Q+1]=i(s+8192>>14),e[Q]=i(o+8192>>14),Q=Q+4*r|0}Q=4*(I+1)|0,m=(I+1)*A*4|0}}}},{}],3:[function(t,e,A){"use strict";e.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAEYA2AGf39/f39/AGAAAGAIf39/f39/f38AAg8BA2VudgZtZW1vcnkCAAADBwYBAAAAAAIGBgF/AEEACweUAQgRX193YXNtX2NhbGxfY3RvcnMAAAtjb252b2x2ZUhvcgABDGNvbnZvbHZlVmVydAACEmNvbnZvbHZlSG9yV2l0aFByZQADE2NvbnZvbHZlVmVydFdpdGhQcmUABApjb252b2x2ZUhWAAUMX19kc29faGFuZGxlAwAYX193YXNtX2FwcGx5X2RhdGFfcmVsb2NzAAAKyA4GAwABC4wDARB/AkAgA0UNACAERQ0AIANBAnQhFQNAQQAhE0EAIQsDQCALQQJqIQcCfyALQQF0IAVqIgYuAQIiC0UEQEEAIQhBACEGQQAhCUEAIQogBwwBCyASIAYuAQBqIQhBACEJQQAhCiALIRRBACEOIAchBkEAIQ8DQCAFIAZBAXRqLgEAIhAgACAIQQJ0aigCACIRQRh2bCAPaiEPIBFB/wFxIBBsIAlqIQkgEUEQdkH/AXEgEGwgDmohDiARQQh2Qf8BcSAQbCAKaiEKIAhBAWohCCAGQQFqIQYgFEEBayIUDQALIAlBB3UhCCAKQQd1IQYgDkEHdSEJIA9BB3UhCiAHIAtqCyELIAEgDEEBdCIHaiAIQQAgCEEAShs7AQAgASAHQQJyaiAGQQAgBkEAShs7AQAgASAHQQRyaiAJQQAgCUEAShs7AQAgASAHQQZyaiAKQQAgCkEAShs7AQAgDCAVaiEMIBNBAWoiEyAERw0ACyANQQFqIg0gAmwhEiANQQJ0IQwgAyANRw0ACwsL2gMBD38CQCADRQ0AIARFDQAgAkECdCEUA0AgCyEMQQAhE0EAIQIDQCACQQJqIQYCfyACQQF0IAVqIgcuAQIiAkUEQEEAIQhBACEHQQAhCkEAIQkgBgwBCyAHLgEAQQJ0IBJqIQhBACEJIAIhCkEAIQ0gBiEHQQAhDkEAIQ8DQCAFIAdBAXRqLgEAIhAgACAIQQF0IhFqLwEAbCAJaiEJIAAgEUEGcmovAQAgEGwgDmohDiAAIBFBBHJqLwEAIBBsIA9qIQ8gACARQQJyai8BACAQbCANaiENIAhBBGohCCAHQQFqIQcgCkEBayIKDQALIAlBB3UhCCANQQd1IQcgDkEHdSEKIA9BB3UhCSACIAZqCyECIAEgDEECdGogB0GAQGtBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobQQh0QYD+A3EgCUGAQGtBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobQRB0QYCA/AdxIApBgEBrQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EYdHJyIAhBgEBrQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG3I2AgAgAyAMaiEMIBNBAWoiEyAERw0ACyAUIAtBAWoiC2whEiADIAtHDQALCwuSAwEQfwJAIANFDQAgBEUNACADQQJ0IRUDQEEAIRNBACEGA0AgBkECaiEIAn8gBkEBdCAFaiIGLgECIgdFBEBBACEJQQAhDEEAIQ1BACEOIAgMAQsgEiAGLgEAaiEJQQAhDkEAIQ1BACEMIAchFEEAIQ8gCCEGA0AgBSAGQQF0ai4BACAAIAlBAnRqKAIAIhBBGHZsIhEgD2ohDyARIBBBEHZB/wFxbCAMaiEMIBEgEEEIdkH/AXFsIA1qIQ0gESAQQf8BcWwgDmohDiAJQQFqIQkgBkEBaiEGIBRBAWsiFA0ACyAPQQd1IQkgByAIagshBiABIApBAXQiCGogDkH/AW1BB3UiB0EAIAdBAEobOwEAIAEgCEECcmogDUH/AW1BB3UiB0EAIAdBAEobOwEAIAEgCEEEcmogDEH/AW1BB3UiB0EAIAdBAEobOwEAIAEgCEEGcmogCUEAIAlBAEobOwEAIAogFWohCiATQQFqIhMgBEcNAAsgC0EBaiILIAJsIRIgC0ECdCEKIAMgC0cNAAsLC4IEAQ9/AkAgA0UNACAERQ0AIAJBAnQhFANAIAshDEEAIRJBACEHA0AgB0ECaiEKAn8gB0EBdCAFaiICLgECIhNFBEBBACEIQQAhCUEAIQYgCiEHQQAMAQsgAi4BAEECdCARaiEJQQAhByATIQJBACENIAohBkEAIQ5BACEPA0AgBSAGQQF0ai4BACIIIAAgCUEBdCIQai8BAGwgB2ohByAAIBBBBnJqLwEAIAhsIA5qIQ4gACAQQQRyai8BACAIbCAPaiEPIAAgEEECcmovAQAgCGwgDWohDSAJQQRqIQkgBkEBaiEGIAJBAWsiAg0ACyAHQQd1IQggDUEHdSEJIA9BB3UhBiAKIBNqIQcgDkEHdQtBgEBrQQ51IgJB/wEgAkH/AUgbIgJBACACQQBKGyIKQf8BcQRAIAlB/wFsIAJtIQkgCEH/AWwgAm0hCCAGQf8BbCACbSEGCyABIAxBAnRqIAlBgEBrQQ51IgJB/wEgAkH/AUgbIgJBACACQQBKG0EIdEGA/gNxIAZBgEBrQQ51IgJB/wEgAkH/AUgbIgJBACACQQBKG0EQdEGAgPwHcSAKQRh0ciAIQYBAa0EOdSICQf8BIAJB/wFIGyICQQAgAkEAShtycjYCACADIAxqIQwgEkEBaiISIARHDQALIBQgC0EBaiILbCERIAMgC0cNAAsLC0AAIAcEQEEAIAIgAyAEIAUgABADIAJBACAEIAUgBiABEAQPC0EAIAIgAyAEIAUgABABIAJBACAEIAUgBiABEAIL"},{}],4:[function(t,e,A){"use strict";e.exports={name:"resize",fn:t("./resize"),wasm_fn:t("./resize_wasm"),wasm_src:t("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(t,e,A){"use strict";var i=t("./resize_filter_gen"),r=t("./convolve"),n=r.convolveHor,a=r.convolveVert,o=r.convolveHorWithPre,s=r.convolveVertWithPre;e.exports=function(t){var e=t.src,A=t.width,r=t.height,h=t.toWidth,u=t.toHeight,c=t.scaleX||t.toWidth/t.width,f=t.scaleY||t.toHeight/t.height,g=t.offsetX||0,l=t.offsetY||0,I=t.dest||new Uint8Array(h*u*4),d=void 0===t.filter?"mks2013":t.filter,B=i(d,A,h,c,g),m=i(d,r,u,f,l),Q=new Uint16Array(h*r*4);return!function(t,e,A){for(var i=3,r=e*A*4|0;i>1]+=r(1-m),p=0;p0&&0===g[E];)E--;if(w=h+p,C=E-p+1,M[x++]=w,M[x++]=C,k)for(d=p;d<=E;d++)M[x++]=g[d];else M.set(g.subarray(p,E+1),x),x+=C}else M[x++]=0,M[x++]=0}return M}},{"./resize_filter_info":7}],7:[function(t,e,A){"use strict";var i={box:{win:.5,fn:function(t){return t<0&&(t=-t),t<.5?1:0}},hamming:{win:1,fn:function(t){if(t<0&&(t=-t),t>=1)return 0;if(t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*(.54+.46*Math.cos(e/1))}},lanczos2:{win:2,fn:function(t){if(t<0&&(t=-t),t>=2)return 0;if(t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*Math.sin(e/2)/(e/2)}},lanczos3:{win:3,fn:function(t){if(t<0&&(t=-t),t>=3)return 0;if(t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*Math.sin(e/3)/(e/3)}},mks2013:{win:2.5,fn:function(t){return t<0&&(t=-t),t>=2.5?0:t>=1.5?-.125*(t-2.5)*(t-2.5):t>=.5?.25*(4*t*t-11*t+7):1.0625-1.75*t*t}}};e.exports={filter:i,f2q:{box:0,hamming:1,lanczos2:2,lanczos3:3},q2f:["box","hamming","lanczos2","lanczos3"]}},{}],8:[function(t,e,A){"use strict";var i=t("./resize_filter_gen");var r=!0;try{r=1===new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]}catch(t){}function n(t,e,A){if(r)e.set(function(t){return new Uint8Array(t.buffer,0,t.byteLength)}(t),A);else for(var i=A,n=0;n>8&255}}e.exports=function(t){var e=t.src,A=t.width,r=t.height,a=t.toWidth,o=t.toHeight,s=t.scaleX||t.toWidth/t.width,h=t.scaleY||t.toHeight/t.height,u=t.offsetX||0,c=t.offsetY||0,f=t.dest||new Uint8Array(a*o*4),g=void 0===t.filter?"mks2013":t.filter,l=i(g,A,a,s,u),I=i(g,r,o,h,c),d=Math.max(e.byteLength,f.byteLength),B=this.__align(0+d),m=r*a*4*2,Q=this.__align(B+m),p=this.__align(Q+l.byteLength),E=p+I.byteLength,w=this.__instance("resize",E),C=new Uint8Array(this.__memory.buffer),_=new Uint32Array(this.__memory.buffer),b=new Uint32Array(e.buffer);_.set(b),n(l,C,Q),n(I,C,p);var y=w.exports.convolveHV||w.exports._convolveHV;return!function(t,e,A){for(var i=3,r=e*A*4|0;i2&&(n=2);var f=function(t,e,A){for(var i,r,n,a,o=e*A,s=new Uint16Array(o),h=0;h=r&&i>=n?i:r>=n&&r>=i?r:n,s[h]=a<<8;return s}(t,e,A),g=new Uint16Array(f);i(g,e,A,n);for(var l=r/100*4096+.5|0,I=a<<8,d=e*A,B=0;B=I&&(h=((s=(s=(s=o+(l*u+2048>>12))>65280?65280:s)<0?0:s)<<12)/(o=0!==o?o:1)|0,t[c=4*B]=t[c]*h+2048>>12,t[c+1]=t[c+1]*h+2048>>12,t[c+2]=t[c+2]*h+2048>>12)}}},{"glur/mono16":18}],11:[function(t,e,A){"use strict";e.exports=function(t,e,A,i,r,n){if(!(0===i||r<.5)){r>2&&(r=2);var a=e*A,o=4*a,s=2*a,h=2*a,u=4*Math.max(e,A),c=o,f=c+s,g=f+h,l=g+h,I=l+u,d=this.__instance("unsharp_mask",o+s+2*h+u+32,{exp:Math.exp}),B=new Uint32Array(t.buffer);new Uint32Array(this.__memory.buffer).set(B);var m=d.exports.hsv_v16||d.exports._hsv_v16;m(0,c,e,A),(m=d.exports.blurMono16||d.exports._blurMono16)(c,f,g,l,I,e,A,r),(m=d.exports.unsharp||d.exports._unsharp)(0,0,c,f,e,A,i,n),B.set(new Uint32Array(this.__memory.buffer,0,a))}}},{}],12:[function(t,e,A){"use strict";e.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAE0B2AAAGAEf39/fwBgBn9/f39/fwBgCH9/f39/f39/AGAIf39/f39/f30AYAJ9fwBgAXwBfAIZAgNlbnYDZXhwAAYDZW52Bm1lbW9yeQIAAAMHBgAFAgQBAwYGAX8AQQALB4oBCBFfX3dhc21fY2FsbF9jdG9ycwABFl9fYnVpbGRfZ2F1c3NpYW5fY29lZnMAAg5fX2dhdXNzMTZfbGluZQADCmJsdXJNb25vMTYABAdoc3ZfdjE2AAUHdW5zaGFycAAGDF9fZHNvX2hhbmRsZQMAGF9fd2FzbV9hcHBseV9kYXRhX3JlbG9jcwABCsUMBgMAAQvWAQEHfCABRNuGukOCGvs/IAC7oyICRAAAAAAAAADAohAAIgW2jDgCFCABIAKaEAAiAyADoCIGtjgCECABRAAAAAAAAPA/IAOhIgQgBKIgAyACIAKgokQAAAAAAADwP6AgBaGjIgS2OAIAIAEgBSAEmqIiB7Y4AgwgASADIAJEAAAAAAAA8D+gIASioiIItjgCCCABIAMgAkQAAAAAAADwv6AgBKKiIgK2OAIEIAEgByAIoCAFRAAAAAAAAPA/IAahoCIDo7Y4AhwgASAEIAKgIAOjtjgCGAuGBQMGfwl8An0gAyoCDCEVIAMqAgghFiADKgIUuyERIAMqAhC7IRACQCAEQQFrIghBAEgiCQRAIAIhByAAIQYMAQsgAiAALwEAuCIPIAMqAhi7oiIMIBGiIg0gDCAQoiAPIAMqAgS7IhOiIhQgAyoCALsiEiAPoqCgoCIOtjgCACACQQRqIQcgAEECaiEGIAhFDQAgCEEBIAhBAUgbIgpBf3MhCwJ/IAQgCmtBAXFFBEAgDiENIAgMAQsgAiANIA4gEKIgFCASIAAvAQK4Ig+ioKCgIg22OAIEIAJBCGohByAAQQRqIQYgDiEMIARBAmsLIQIgC0EAIARrRg0AA0AgByAMIBGiIA0gEKIgDyAToiASIAYvAQC4Ig6ioKCgIgy2OAIAIAcgDSARoiAMIBCiIA4gE6IgEiAGLwECuCIPoqCgoCINtjgCBCAHQQhqIQcgBkEEaiEGIAJBAkohACACQQJrIQIgAA0ACwsCQCAJDQAgASAFIAhsQQF0aiIAAn8gBkECay8BACICuCINIBW7IhKiIA0gFrsiE6KgIA0gAyoCHLuiIgwgEKKgIAwgEaKgIg8gB0EEayIHKgIAu6AiDkQAAAAAAADwQWMgDkQAAAAAAAAAAGZxBEAgDqsMAQtBAAs7AQAgCEUNACAGQQRrIQZBACAFa0EBdCEBA0ACfyANIBKiIAJB//8DcbgiDSAToqAgDyIOIBCioCAMIBGioCIPIAdBBGsiByoCALugIgxEAAAAAAAA8EFjIAxEAAAAAAAAAABmcQRAIAyrDAELQQALIQMgBi8BACECIAAgAWoiACADOwEAIAZBAmshBiAIQQFKIQMgDiEMIAhBAWshCCADDQALCwvRAgIBfwd8AkAgB0MAAAAAWw0AIARE24a6Q4Ia+z8gB0MAAAA/l7ujIglEAAAAAAAAAMCiEAAiDLaMOAIUIAQgCZoQACIKIAqgIg22OAIQIAREAAAAAAAA8D8gCqEiCyALoiAKIAkgCaCiRAAAAAAAAPA/oCAMoaMiC7Y4AgAgBCAMIAuaoiIOtjgCDCAEIAogCUQAAAAAAADwP6AgC6KiIg+2OAIIIAQgCiAJRAAAAAAAAPC/oCALoqIiCbY4AgQgBCAOIA+gIAxEAAAAAAAA8D8gDaGgIgqjtjgCHCAEIAsgCaAgCqO2OAIYIAYEQANAIAAgBSAIbEEBdGogAiAIQQF0aiADIAQgBSAGEAMgCEEBaiIIIAZHDQALCyAFRQ0AQQAhCANAIAIgBiAIbEEBdGogASAIQQF0aiADIAQgBiAFEAMgCEEBaiIIIAVHDQALCwtxAQN/IAIgA2wiBQRAA0AgASAAKAIAIgRBEHZB/wFxIgIgAiAEQQh2Qf8BcSIDIAMgBEH/AXEiBEkbIAIgA0sbIgYgBiAEIAIgBEsbIAMgBEsbQQh0OwEAIAFBAmohASAAQQRqIQAgBUEBayIFDQALCwuZAgIDfwF8IAQgBWwhBAJ/IAazQwAAgEWUQwAAyEKVu0QAAAAAAADgP6AiC5lEAAAAAAAA4EFjBEAgC6oMAQtBgICAgHgLIQUgBARAIAdBCHQhCUEAIQYDQCAJIAIgBkEBdCIHai8BACIBIAMgB2ovAQBrIgcgB0EfdSIIaiAIc00EQCAAIAZBAnQiCGoiCiAFIAdsQYAQakEMdSABaiIHQYD+AyAHQYD+A0gbIgdBACAHQQBKG0EMdCABQQEgARtuIgEgCi0AAGxBgBBqQQx2OgAAIAAgCEEBcmoiByABIActAABsQYAQakEMdjoAACAAIAhBAnJqIgcgASAHLQAAbEGAEGpBDHY6AAALIAZBAWoiBiAERw0ACwsL"},{}],13:[function(t,e,A){"use strict";function i(t,e){this.create=t,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=e||2e3}i.prototype.acquire=function(){var t,e=this;return 0!==this.available.length?t=this.available.pop():((t=this.create()).id=this.lastId++,t.release=function(){return e.release(t)}),this.acquired[t.id]=t,t},i.prototype.release=function(t){var e=this;delete this.acquired[t.id],t.lastUsed=Date.now(),this.available.push(t),0===this.timeoutId&&(this.timeoutId=setTimeout((function(){return e.gc()}),100))},i.prototype.gc=function(){var t=this,e=Date.now();this.available=this.available.filter((function(A){return!(e-A.lastUsed>t.idle)||(A.destroy(),!1)})),0!==this.available.length?this.timeoutId=setTimeout((function(){return t.gc()}),100):this.timeoutId=0},e.exports=i},{}],14:[function(t,e,A){"use strict";e.exports=function(t,e,A,i,r,n){var a=A/t,o=i/e,s=(2*n+2+1)/r;if(s>.5)return[[A,i]];var h=Math.ceil(Math.log(Math.min(a,o))/Math.log(s));if(h<=1)return[[A,i]];for(var u=[],c=0;c=t.toWidth&&(o=t.toWidth-e),(A=a-t.destTileBorder)<0&&(A=0),A+(s=a+f+t.destTileBorder-A)>=t.toHeight&&(s=t.toHeight-A),g={toX:e,toY:A,toWidth:o,toHeight:s,toInnerX:i,toInnerY:a,toInnerWidth:c,toInnerHeight:f,offsetX:e/h-r(e/h),offsetY:A/u-r(A/u),scaleX:h,scaleY:u,x:r(e/h),y:r(A/u),width:n(o/h),height:n(s/u)},l.push(g);return l}},{}],16:[function(t,e,A){"use strict";function i(t){return Object.prototype.toString.call(t)}e.exports.isCanvas=function(t){var e=i(t);return"[object HTMLCanvasElement]"===e||"[object OffscreenCanvas]"===e||"[object Canvas]"===e},e.exports.isImage=function(t){return"[object HTMLImageElement]"===i(t)},e.exports.isImageBitmap=function(t){return"[object ImageBitmap]"===i(t)},e.exports.limiter=function(t){var e=0,A=[];function i(){e=0;I--)s=o*d+a*B+h*m+u*Q,u=h,h=s,a=o,o=t[c],e[f]=A[g]+h,c--,g--,f-=n}}e.exports=function(t,e,A,u){if(u){var c=new Uint16Array(t.length),f=new Float32Array(Math.max(e,A)),g=function(t){t<.5&&(t=.5);var e=Math.exp(.527076)/t,A=Math.exp(-e),h=Math.exp(-2*e),u=(1-A)*(1-A)/(1+2*e*A-h);return i=u,r=u*(e-1)*A,n=u*(e+1)*A,a=-u*h,o=2*A,s=-h,new Float32Array([i,r,n,a,o,s,(i+r)/(1-o-s),(n+a)/(1-o-s)])}(u);h(t,c,f,g,e,A),h(c,t,f,g,A,e)}}},{}],19:[function(t,e,A){"use strict";var i=t("object-assign"),r=t("./lib/base64decode"),n=t("./lib/wa_detect"),a={js:!0,wasm:!0};function o(t){if(!(this instanceof o))return new o(t);var e=i({},a,t||{});if(this.options=e,this.__cache={},this.__init_promise=null,this.__modules=e.modules||{},this.__memory=null,this.__wasm={},this.__isLE=1===new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0],!this.options.js&&!this.options.wasm)throw new Error('mathlib: at least "js" or "wasm" should be enabled')}o.prototype.has_wasm=n,o.prototype.use=function(t){return this.__modules[t.name]=t,this.options.wasm&&this.has_wasm()&&t.wasm_fn?this[t.name]=t.wasm_fn:this[t.name]=t.fn,this},o.prototype.init=function(){if(this.__init_promise)return this.__init_promise;if(!this.options.js&&this.options.wasm&&!this.has_wasm())return Promise.reject(new Error('mathlib: only "wasm" was enabled, but it\'s not supported'));var t=this;return this.__init_promise=Promise.all(Object.keys(t.__modules).map((function(e){var A=t.__modules[e];return t.options.wasm&&t.has_wasm()&&A.wasm_fn?t.__wasm[e]?null:WebAssembly.compile(t.__base64decode(A.wasm_src)).then((function(A){t.__wasm[e]=A})):null}))).then((function(){return t})),this.__init_promise},o.prototype.__base64decode=r,o.prototype.__reallocate=function(t){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(t/65536)}),this.__memory;var e=this.__memory.buffer.byteLength;return e>2),r=0,n=0,a=0;a>16&255,i[n++]=r>>8&255,i[n++]=255&r),r=r<<6|"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(e.charAt(a));var o=A%4*6;return 0===o?(i[n++]=r>>16&255,i[n++]=r>>8&255,i[n++]=255&r):18===o?(i[n++]=r>>10&255,i[n++]=r>>2&255):12===o&&(i[n++]=r>>4&255),i}},{}],21:[function(t,e,A){"use strict";var i;e.exports=function(){if(void 0!==i)return i;if(i=!1,"undefined"==typeof WebAssembly)return i;try{var t=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),e=new WebAssembly.Module(t);return 0!==new WebAssembly.Instance(e,{}).exports.test(4)&&(i=!0),i}catch(t){}return i}},{}],22:[function(t,e,A){ +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ +"use strict";var i=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function a(t){if(null==t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}e.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},A=0;A<10;A++)e["_"+String.fromCharCode(A)]=A;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach((function(t){i[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var A,o,s=a(t),h=1;ht.length)&&(e=t.length);for(var A=0,i=new Array(e);A=0)}catch(t){}var d=1;"undefined"!=typeof navigator&&(d=Math.min(navigator.hardwareConcurrency||1,4));var B={tile:1024,concurrency:d,features:["js","wasm","ww"],idle:2e3,createCanvas:function(t,e){var A=document.createElement("canvas");return A.width=t,A.height=e,A}},m={filter:"mks2013",unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},Q=!1,p=!1,E=!1,w=!1,C=!1;function _(){return{value:a(u),destroy:function(){if(this.value.terminate(),"undefined"!=typeof window){var t=window.URL||window.webkitURL||window.mozURL||window.msURL;t&&t.revokeObjectURL&&this.value.objectURL&&t.revokeObjectURL(this.value.objectURL)}}}}function b(t){if(!(this instanceof b))return new b(t);this.options=n({},B,t||{});var e="lk_".concat(this.options.concurrency);this.__limit=l[e]||h.limiter(this.options.concurrency),l[e]||(l[e]=this.__limit),this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}b.prototype.init=function(){var e=this;if(this.__initPromise)return this.__initPromise;if("undefined"!=typeof ImageData&&"undefined"!=typeof Uint8ClampedArray)try{new ImageData(new Uint8ClampedArray(400),10,10),Q=!0}catch(t){}"undefined"!=typeof ImageBitmap&&(ImageBitmap.prototype&&ImageBitmap.prototype.close?p=!0:this.debug("ImageBitmap does not support .close(), disabled"));var A=this.options.features.slice();if(A.indexOf("all")>=0&&(A=["cib","wasm","js","ww"]),this.__requested_features=A,this.__mathlib=new o(A),A.indexOf("ww")>=0&&"undefined"!=typeof window&&"Worker"in window)try{t("webworkify")((function(){})).terminate(),this.features.ww=!0;var i="wp_".concat(JSON.stringify(this.options));l[i]?this.__workersPool=l[i]:(this.__workersPool=new s(_,this.options.idle),l[i]=this.__workersPool)}catch(t){}var r,a,u=this.__mathlib.init().then((function(t){n(e.features,t.features)}));r=p?h.cib_support(this.options.createCanvas).then((function(t){e.features.cib&&A.indexOf("cib")<0?e.debug("createImageBitmap() resize supported, but disabled by config"):A.indexOf("cib")>=0&&(e.features.cib=t)})):Promise.resolve(!1),E=h.can_use_canvas(this.options.createCanvas),a=(a=p&&Q&&-1!==A.indexOf("ww")?h.worker_offscreen_canvas_support():Promise.resolve(!1)).then((function(t){w=t}));var c=h.cib_can_use_region().then((function(t){C=t}));return this.__initPromise=Promise.all([u,r,a,c]).then((function(){return e})),this.__initPromise},b.prototype.__invokeResize=function(t,e){var A=this;return e.__mathCache=e.__mathCache||{},Promise.resolve().then((function(){return A.features.ww?new Promise((function(i,r){var n=A.__workersPool.acquire();e.cancelToken&&e.cancelToken.catch((function(t){return r(t)})),n.value.onmessage=function(t){n.release(),t.data.err?r(t.data.err):i(t.data)};var a=[];t.src&&a.push(t.src.buffer),t.srcBitmap&&a.push(t.srcBitmap),n.value.postMessage({opts:t,features:A.__requested_features,preload:{wasm_nodule:A.__mathlib.__}},a)})):{data:A.__mathlib.resizeAndUnsharp(t,e.__mathCache)}}))},b.prototype.__extractTileData=function(t,e,A,i,r){if(this.features.ww&&w&&(h.isCanvas(e)||C))return this.debug("Create tile for OffscreenCanvas"),createImageBitmap(i.srcImageBitmap||e,t.x,t.y,t.width,t.height).then((function(t){return r.srcBitmap=t,r}));if(h.isCanvas(e))return i.srcCtx||(i.srcCtx=e.getContext("2d")),this.debug("Get tile pixel data"),r.src=i.srcCtx.getImageData(t.x,t.y,t.width,t.height).data,r;this.debug("Draw tile imageBitmap/image to temporary canvas");var n=this.options.createCanvas(t.width,t.height),a=n.getContext("2d");return a.globalCompositeOperation="copy",a.drawImage(i.srcImageBitmap||e,t.x,t.y,t.width,t.height,0,0,t.width,t.height),this.debug("Get tile pixel data"),r.src=a.getImageData(0,0,t.width,t.height).data,n.width=n.height=0,r},b.prototype.__landTileData=function(t,e,A){var i;if(this.debug("Convert raw rgba tile result to ImageData"),e.bitmap)return A.toCtx.drawImage(e.bitmap,t.toX,t.toY),null;if(Q)i=new ImageData(new Uint8ClampedArray(e.data),t.toWidth,t.toHeight);else if((i=A.toCtx.createImageData(t.toWidth,t.toHeight)).data.set)i.data.set(e.data);else for(var r=i.data.length-1;r>=0;r--)i.data[r]=e.data[r];return this.debug("Draw tile"),I?A.toCtx.putImageData(i,t.toX,t.toY,t.toInnerX-t.toX,t.toInnerY-t.toY,t.toInnerWidth+1e-5,t.toInnerHeight+1e-5):A.toCtx.putImageData(i,t.toX,t.toY,t.toInnerX-t.toX,t.toInnerY-t.toY,t.toInnerWidth,t.toInnerHeight),null},b.prototype.__tileAndResize=function(t,e,A){var i=this,r={srcCtx:null,srcImageBitmap:null,isImageBitmapReused:!1,toCtx:null};return Promise.resolve().then((function(){if(r.toCtx=e.getContext("2d"),h.isCanvas(t))return null;if(h.isImageBitmap(t))return r.srcImageBitmap=t,r.isImageBitmapReused=!0,null;if(h.isImage(t))return p?(i.debug("Decode image via createImageBitmap"),createImageBitmap(t).then((function(t){r.srcImageBitmap=t})).catch((function(t){return null}))):null;throw new Error('Pica: ".from" should be Image, Canvas or ImageBitmap')})).then((function(){if(A.canceled)return A.cancelToken;i.debug("Calculate tiles");var n=f({width:A.width,height:A.height,srcTileSize:i.options.tile,toWidth:A.toWidth,toHeight:A.toHeight,destTileBorder:A.__destTileBorder}).map((function(e){return function(e){return i.__limit((function(){if(A.canceled)return A.cancelToken;var n={width:e.width,height:e.height,toWidth:e.toWidth,toHeight:e.toHeight,scaleX:e.scaleX,scaleY:e.scaleY,offsetX:e.offsetX,offsetY:e.offsetY,filter:A.filter,unsharpAmount:A.unsharpAmount,unsharpRadius:A.unsharpRadius,unsharpThreshold:A.unsharpThreshold};return i.debug("Invoke resize math"),Promise.resolve(n).then((function(n){return i.__extractTileData(e,t,A,r,n)})).then((function(t){return i.debug("Invoke resize math"),i.__invokeResize(t,A)})).then((function(t){return A.canceled?A.cancelToken:(r.srcImageData=null,i.__landTileData(e,t,r))}))}))}(e)}));function a(t){t.srcImageBitmap&&(t.isImageBitmapReused||t.srcImageBitmap.close(),t.srcImageBitmap=null)}return i.debug("Process tiles"),Promise.all(n).then((function(){return i.debug("Finished!"),a(r),e}),(function(t){throw a(r),t}))}))},b.prototype.__processStages=function(t,e,A,r){var a=this;if(r.canceled)return r.cancelToken;var o,s,h=i(t.shift(),2),u=h[0],c=h[1],f=0===t.length;return o=f||g.q2f.indexOf(r.filter)<0?r.filter:"box"===r.filter?"box":"hamming",r=n({},r,{toWidth:u,toHeight:c,filter:o}),f||(s=this.options.createCanvas(u,c)),this.__tileAndResize(e,f?A:s,r).then((function(){return f?A:(r.width=u,r.height=c,a.__processStages(t,s,A,r))})).then((function(t){return s&&(s.width=s.height=0),t}))},b.prototype.__resizeViaCreateImageBitmap=function(t,e,A){var i=this,r=e.getContext("2d");return this.debug("Resize via createImageBitmap()"),createImageBitmap(t,{resizeWidth:A.toWidth,resizeHeight:A.toHeight,resizeQuality:h.cib_quality_name(g.f2q[A.filter])}).then((function(t){if(A.canceled)return A.cancelToken;if(!A.unsharpAmount)return r.drawImage(t,0,0),t.close(),r=null,i.debug("Finished!"),e;i.debug("Unsharp result");var n=i.options.createCanvas(A.toWidth,A.toHeight),a=n.getContext("2d");a.drawImage(t,0,0),t.close();var o=a.getImageData(0,0,A.toWidth,A.toHeight);return i.__mathlib.unsharp_mask(o.data,A.toWidth,A.toHeight,A.unsharpAmount,A.unsharpRadius,A.unsharpThreshold),r.putImageData(o,0,0),n.width=n.height=0,o=a=n=r=null,i.debug("Finished!"),e}))},b.prototype.resize=function(t,e,A){var i=this;this.debug("Start resize...");var r=n({},m);if(isNaN(A)?A&&(r=n(r,A)):r=n(r,{quality:A}),r.toWidth=e.width,r.toHeight=e.height,r.width=t.naturalWidth||t.width,r.height=t.naturalHeight||t.height,Object.prototype.hasOwnProperty.call(r,"quality")){if(r.quality<0||r.quality>3)throw new Error("Pica: .quality should be [0..3], got ".concat(r.quality));r.filter=g.q2f[r.quality]}if(0===e.width||0===e.height)return Promise.reject(new Error("Invalid output size: ".concat(e.width,"x").concat(e.height)));r.unsharpRadius>2&&(r.unsharpRadius=2),r.canceled=!1,r.cancelToken&&(r.cancelToken=r.cancelToken.then((function(t){throw r.canceled=!0,t}),(function(t){throw r.canceled=!0,t})));return r.__destTileBorder=Math.ceil(Math.max(3,2.5*r.unsharpRadius|0)),this.init().then((function(){if(r.canceled)return r.cancelToken;if(i.features.cib){if(g.q2f.indexOf(r.filter)>=0)return i.__resizeViaCreateImageBitmap(t,e,r);i.debug("cib is enabled, but not supports provided filter, fallback to manual math")}if(!E){var A=new Error("Pica: cannot use getImageData on canvas, make sure fingerprinting protection isn't enabled");throw A.code="ERR_GET_IMAGE_DATA",A}var n=c(r.width,r.height,r.toWidth,r.toHeight,i.options.tile,r.__destTileBorder);return i.__processStages(n,t,e,r)}))},b.prototype.resizeBuffer=function(t){var e=this,A=n({},m,t);if(Object.prototype.hasOwnProperty.call(A,"quality")){if(A.quality<0||A.quality>3)throw new Error("Pica: .quality should be [0..3], got ".concat(A.quality));A.filter=g.q2f[A.quality]}return this.init().then((function(){return e.__mathlib.resizeAndUnsharp(A)}))},b.prototype.toBlob=function(t,e,A){return e=e||"image/png",new Promise((function(i){if(t.toBlob)t.toBlob((function(t){return i(t)}),e,A);else if(t.convertToBlob)i(t.convertToBlob({type:e,quality:A}));else{for(var r=atob(t.toDataURL(e,A).split(",")[1]),n=r.length,a=new Uint8Array(n),o=0;o 0.5) { + _this.noSleepVideo.currentTime = Math.random() + } + }) + } + }) + } + } + + _createClass(NoSleep, [ + { + key: '_addSourceToVideo', + value: function _addSourceToVideo(element, type, dataURI) { + var source = document.createElement('source') + source.src = dataURI + source.type = 'video/' + type + element.appendChild(source) + }, + }, + { + key: 'enable', + value: function enable() { + var _this2 = this + + if (nativeWakeLock) { + _nativeRequestInProgress = true + navigator.wakeLock + .request('screen') + .then(function (wakeLock) { + _releasedNative = false + _nativeRequestInProgress = false + + _this2._wakeLock = wakeLock + _this2._wakeLock.addEventListener('release', function () { + _releasedNative = true + _this2._wakeLock = null + }) + }) + .catch(function (err) { + _nativeRequestInProgress = false + console.error(err.name + ', ' + err.message) + }) + } else if (oldIOS) { + this.disable() + console.warn( + '\n NoSleep enabled for older iOS devices. This can interrupt\n active or long-running network requests from completing successfully.\n See https://github.com/richtr/NoSleep.js/issues/15 for more details.\n ' + ) + this.noSleepTimer = window.setInterval(function () { + if (!document.hidden) { + window.location.href = window.location.href.split('#')[0] + window.setTimeout(window.stop, 0) + } + }, 15000) + } else { + this.noSleepVideo.play() + } + }, + }, + { + key: 'disable', + value: function disable() { + if (nativeWakeLock) { + if (this._wakeLock != null) { + _releasedNative = true + this._wakeLock.release() + } + + this._wakeLock = null + } else if (oldIOS) { + if (this.noSleepTimer) { + console.warn( + '\n NoSleep now disabled for older iOS devices.\n ' + ) + window.clearInterval(this.noSleepTimer) + this.noSleepTimer = null + } + } else { + this.noSleepVideo.pause() + } + }, + }, + { + key: 'enabled', + value: async function enabled() { + if (nativeWakeLock) { + if (_nativeRequestInProgress == true) { + // Wait until the request is done. + while (true) { + // Wait for 42 milliseconds. + await new Promise((resolve, reject) => setTimeout(resolve, 42)) + if (_nativeRequestInProgress == false) { + break + } + } + } + + // todo: use WakeLockSentinel.released when that is available (https://developer.mozilla.org/en-US/docs/Web/API/WakeLockSentinel/released) + if (_releasedNative != false) { + return false + } + + return true + } else if (oldIOS) { + return this.noSleepTimer != null + } else { + if (this.noSleepVideo == undefined) { + return false + } + + return !this.noSleepVideo.paused + } + }, + }, + ]) + + return NoSleep +})() + +var noSleep = new NoSleep() + +var Wakelock = { + enabled: async function () { + try { + return noSleep.enabled() + } catch (e) { + return false + } + }, + toggle: async function (enable) { + if (enable) { + noSleep.enable() + } else { + noSleep.disable() + } + }, +} + +if (nativeWakeLock != true) { + // The first non-native call sometimes throws an error, however, + // the error does not leak the try-catch above. Therefore, this + // is an easy fix that realiably works. + Wakelock.enabled() +} diff --git a/assets/packages/window_manager/images/ic_chrome_close.png b/assets/packages/window_manager/images/ic_chrome_close.png new file mode 100644 index 000000000..1949491fe Binary files /dev/null and b/assets/packages/window_manager/images/ic_chrome_close.png differ diff --git a/assets/packages/window_manager/images/ic_chrome_maximize.png b/assets/packages/window_manager/images/ic_chrome_maximize.png new file mode 100644 index 000000000..672e9e49d Binary files /dev/null and b/assets/packages/window_manager/images/ic_chrome_maximize.png differ diff --git a/assets/packages/window_manager/images/ic_chrome_minimize.png b/assets/packages/window_manager/images/ic_chrome_minimize.png new file mode 100644 index 000000000..05534b436 Binary files /dev/null and b/assets/packages/window_manager/images/ic_chrome_minimize.png differ diff --git a/assets/packages/window_manager/images/ic_chrome_unmaximize.png b/assets/packages/window_manager/images/ic_chrome_unmaximize.png new file mode 100644 index 000000000..52b8f4edc Binary files /dev/null and b/assets/packages/window_manager/images/ic_chrome_unmaximize.png differ diff --git a/assets/shaders/ink_sparkle.frag b/assets/shaders/ink_sparkle.frag new file mode 100644 index 000000000..d43532a23 --- /dev/null +++ b/assets/shaders/ink_sparkle.frag @@ -0,0 +1,126 @@ +{ + "sksl": { + "entrypoint": "ink_sparkle_fragment_main", + "shader": "// This SkSL shader is autogenerated by spirv-cross.\n\nfloat4 flutter_FragCoord;\n\nuniform vec4 u_color;\nuniform vec4 u_composite_1;\nuniform vec2 u_center;\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\nfloat u_alpha;\nfloat u_sparkle_alpha;\nfloat u_blur;\nfloat u_radius_scale;\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 _319 = FLT_flutter_local_circle_grid(param, param_1, param_2, param_3, param_4);\n float g1 = _319;\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 _331 = FLT_flutter_local_circle_grid(param_5, param_6, param_7, param_8, param_9);\n float g2 = _331;\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 _344 = FLT_flutter_local_circle_grid(param_10, param_11, param_12, param_13, param_14);\n float g3 = _344;\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 _242 = FLT_flutter_local_triangle_noise(param);\n float n = _242;\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 u_alpha = u_composite_1.x;\n u_sparkle_alpha = u_composite_1.y;\n u_blur = u_composite_1.z;\n u_radius_scale = u_composite_1.w;\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 fragColor = mix(wave_color, vec4(1.0), 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, + "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_composite_1", + "rows": 4, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 2, + "name": "u_center", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 3, + "name": "u_max_radius", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 4, + "name": "u_resolution_scale", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 5, + "name": "u_noise_scale", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 6, + "name": "u_noise_phase", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 7, + "name": "u_circle1", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 8, + "name": "u_circle2", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 9, + "name": "u_circle3", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 10, + "name": "u_rotation1", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 11, + "name": "u_rotation2", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 12, + "name": "u_rotation3", + "rows": 2, + "type": 10 + } + ] + } +} \ No newline at end of file diff --git a/web/browserconfig.xml b/browserconfig.xml similarity index 100% rename from web/browserconfig.xml rename to browserconfig.xml diff --git a/build-tools/addBuildNumber.py b/build-tools/addBuildNumber.py deleted file mode 100644 index 5f9e44f9f..000000000 --- a/build-tools/addBuildNumber.py +++ /dev/null @@ -1,44 +0,0 @@ -import re -import subprocess -import sys - -# 从pubspec.yaml文件中读取版本号,格式为x.x.x+x -with open('pubspec.yaml', 'r') as file: - filedata = file.read() -version = re.findall(r'version: (\d+.\d+.\d+)', filedata)[0] -oldBuildNumber = re.findall(r'version: \d+.\d+.\d+(\+\d+)', filedata) -if len(oldBuildNumber) == 0: - buildNumber = 0 -else: - buildNumber = int(oldBuildNumber[0][1:]) - oldBuildNumber = buildNumber - -# 版本号加1 -buildNumber += 1 -oldVersion = version + '+' + str(oldBuildNumber) -newVersion = version + '+' + str(buildNumber) -print('newVersion: ' + newVersion) -print('buildNumber: ' + str(oldBuildNumber) + ' -> ' + str(buildNumber)) - -# 将新的版本号写入pubspec.yaml文件 -filedata = filedata.replace(f'version: ' + oldVersion, 'version: ' + newVersion) -with open('pubspec.yaml', 'w') as file: - file.write(filedata) - -# 接收参数,如果传值参数无输入,则跳过 -if len(sys.argv) != 1: - cmd = f'git add .' - subprocess.run(cmd, shell=True) - cmd = f'git commit -m "build: {newVersion}"' - subprocess.run(cmd, shell=True) - - # {{ github.server_url }} - server_url = sys.argv[1] - # {{ github.repository }} - repository = sys.argv[2] - # {{ github.run_id }} - run_id = sys.argv[3] - # {{ github.run_attempt }} SHOULD BE 1 - run_attempt = sys.argv[4] - cmd = f'git tag -a v{newVersion} -m "v{newVersion}\nrun id: {run_id}\nrun_attempt(should be 1): {run_attempt}\n{server_url}/{repository}/actions/runs/{run_id}"' - subprocess.run(cmd, shell=True) diff --git a/build-tools/toDistribution.py b/build-tools/toDistribution.py deleted file mode 100644 index b4dad9b16..000000000 --- a/build-tools/toDistribution.py +++ /dev/null @@ -1,18 +0,0 @@ -with open('ios/Runner.xcodeproj/project.pbxproj', 'r') as file: - filedata = file.read() - -# CODE_SIGN_IDENTITY所在行进行替换更改,变为CODE_SIGN_IDENTITY = "Apple Distribution"; -filedata = filedata.replace('CODE_SIGN_IDENTITY = "Apple Development";', 'CODE_SIGN_IDENTITY = "Apple Distribution";') - -# CODE_SIGN_STYLE所在行进行替换更改,变为CODE_SIGN_STYLE = Manual; -filedata = filedata.replace('CODE_SIGN_STYLE = Automatic;', 'CODE_SIGN_STYLE = Manual;') - -# DEVELOPMENT_TEAM所在行进行替换更改,变为DEVELOPMENT_TEAM = "M5APZD5CKA"; -filedata = filedata.replace('DEVELOPMENT_TEAM = "";', 'DEVELOPMENT_TEAM = "M5APZD5CKA";') - -# PROVISIONING_PROFILE_SPECIFIER所在行进行替换更改,变为PROVISIONING_PROFILE_SPECIFIER = "SITLife-Distribution-AppStore"; -filedata = filedata.replace('PROVISIONING_PROFILE_SPECIFIER = "";', 'PROVISIONING_PROFILE_SPECIFIER = "SITLife-Distribution-AppStore";') - -# 文件替换完成后,写回到文件中 -with open('ios/Runner.xcodeproj/project.pbxproj', 'w') as file: - file.write(filedata) diff --git a/canvaskit/canvaskit.js b/canvaskit/canvaskit.js new file mode 100644 index 000000000..c5f4bc2a4 --- /dev/null +++ b/canvaskit/canvaskit.js @@ -0,0 +1,217 @@ + +var CanvasKitInit = (() => { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(moduleArg = {}) { + +var r=moduleArg,aa,ba;r.ready=new Promise((a,b)=>{aa=a;ba=b}); +(function(a){a.Md=a.Md||[];a.Md.push(function(){a.MakeSWCanvasSurface=function(b){var c=b,d="undefined"!==typeof OffscreenCanvas&&c instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&c instanceof HTMLCanvasElement||d||(c=document.getElementById(b),c)))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.me=c;return b};a.MakeCanvasSurface||(a.MakeCanvasSurface=a.MakeSWCanvasSurface);a.MakeSurface=function(b,c){var d={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(d=a.Surface._makeRasterDirect(d,k,4*b))d.me=null,d.Ue=b,d.Re=c,d.Se=f,d.xe=k,d.getCanvas().clear(a.TRANSPARENT);return d};a.MakeRasterDirectSurface=function(b,c,d){return a.Surface._makeRasterDirect(b,c.byteOffset,d)};a.Surface.prototype.flush=function(b){a.Jd(this.Id);this._flush();if(this.me){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.xe,this.Se);c=new ImageData(c,this.Ue,this.Re);b?this.me.getContext("2d").putImageData(c, +0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.me.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.xe&&a._free(this.xe);this.delete()};a.Jd=a.Jd||function(){};a.ne=a.ne||function(){return null}})})(r); +(function(a){a.Md=a.Md||[];a.Md.push(function(){function b(m,p,w){return m&&m.hasOwnProperty(p)?m[p]:w}function c(m){var p=da(ea);ea[p]=m;return p}function d(m){return m.naturalHeight||m.videoHeight||m.displayHeight||m.height}function f(m){return m.naturalWidth||m.videoWidth||m.displayWidth||m.width}function k(m,p,w,y){m.bindTexture(m.TEXTURE_2D,p);y||w.alphaType!==a.AlphaType.Premul||m.pixelStorei(m.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return p}function l(m,p,w){w||p.alphaType!==a.AlphaType.Premul|| +m.pixelStorei(m.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);m.bindTexture(m.TEXTURE_2D,null)}a.GetWebGLContext=function(m,p){if(!m)throw"null canvas passed into makeWebGLContext";var w={alpha:b(p,"alpha",1),depth:b(p,"depth",1),stencil:b(p,"stencil",8),antialias:b(p,"antialias",0),premultipliedAlpha:b(p,"premultipliedAlpha",1),preserveDrawingBuffer:b(p,"preserveDrawingBuffer",0),preferLowPowerToHighPerformance:b(p,"preferLowPowerToHighPerformance",0),failIfMajorPerformanceCaveat:b(p,"failIfMajorPerformanceCaveat", +0),enableExtensionsByDefault:b(p,"enableExtensionsByDefault",1),explicitSwapControl:b(p,"explicitSwapControl",0),renderViaOffscreenBackBuffer:b(p,"renderViaOffscreenBackBuffer",0)};w.majorVersion=p&&p.majorVersion?p.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(w.explicitSwapControl)throw"explicitSwapControl is not supported";m=fa(m,w);if(!m)return 0;ha(m);v.Ud.getExtension("WEBGL_debug_renderer_info");return m};a.deleteContext=function(m){v===ia[m]&&(v=null);"object"==typeof JSEvents&& +JSEvents.yf(ia[m].Ud.canvas);ia[m]&&ia[m].Ud.canvas&&(ia[m].Ud.canvas.Oe=void 0);ia[m]=null};a._setTextureCleanup({deleteTexture:function(m,p){var w=ea[p];w&&ia[m].Ud.deleteTexture(w);ea[p]=null}});a.MakeWebGLContext=function(m){if(!this.Jd(m))return null;var p=this._MakeGrContext();if(!p)return null;p.Id=m;var w=p.delete.bind(p);p["delete"]=function(){a.Jd(this.Id);w()}.bind(p);return v.ze=p};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(m){a.Jd(this.Id);this._setResourceCacheLimitBytes(m)};a.MakeOnScreenGLSurface=function(m,p,w,y,B,D){if(!this.Jd(m.Id))return null;p=void 0===B||void 0===D? +this._MakeOnScreenGLSurface(m,p,w,y):this._MakeOnScreenGLSurface(m,p,w,y,B,D);if(!p)return null;p.Id=m.Id;return p};a.MakeRenderTarget=function(){var m=arguments[0];if(!this.Jd(m.Id))return null;if(3===arguments.length){var p=this._MakeRenderTargetWH(m,arguments[1],arguments[2]);if(!p)return null}else if(2===arguments.length){if(p=this._MakeRenderTargetII(m,arguments[1]),!p)return null}else return null;p.Id=m.Id;return p};a.MakeWebGLCanvasSurface=function(m,p,w){p=p||null;var y=m,B="undefined"!== +typeof OffscreenCanvas&&y instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&y instanceof HTMLCanvasElement||B||(y=document.getElementById(m),y)))throw"Canvas with id "+m+" was not found";m=this.GetWebGLContext(y,w);if(!m||0>m)throw"failed to create webgl context: err "+m;m=this.MakeWebGLContext(m);p=this.MakeOnScreenGLSurface(m,y.width,y.height,p);return p?p:(p=y.cloneNode(!0),y.parentNode.replaceChild(p,y),p.classList.add("ck-replaced"),a.MakeSWCanvasSurface(p))};a.MakeCanvasSurface= +a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(m,p){a.Jd(this.Id);m=c(m);if(p=this._makeImageFromTexture(this.Id,m,p))p.he=m;return p};a.Surface.prototype.makeImageFromTextureSource=function(m,p,w){p||(p={height:d(m),width:f(m),colorType:a.ColorType.RGBA_8888,alphaType:w?a.AlphaType.Premul:a.AlphaType.Unpremul});p.colorSpace||(p.colorSpace=a.ColorSpace.SRGB);a.Jd(this.Id);var y=v.Ud;w=k(y,y.createTexture(),p,w);2===v.version?y.texImage2D(y.TEXTURE_2D,0,y.RGBA,p.width,p.height, +0,y.RGBA,y.UNSIGNED_BYTE,m):y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,m);l(y,p);this._resetContext();return this.makeImageFromTexture(w,p)};a.Surface.prototype.updateTextureFromSource=function(m,p,w){if(m.he){a.Jd(this.Id);var y=m.getImageInfo(),B=v.Ud,D=k(B,ea[m.he],y,w);2===v.version?B.texImage2D(B.TEXTURE_2D,0,B.RGBA,f(p),d(p),0,B.RGBA,B.UNSIGNED_BYTE,p):B.texImage2D(B.TEXTURE_2D,0,B.RGBA,B.RGBA,B.UNSIGNED_BYTE,p);l(B,y,w);this._resetContext();ea[m.he]=null;m.he=c(D);y.colorSpace= +m.getColorSpace();p=this._makeImageFromTexture(this.Id,m.he,y);w=m.kd.Kd;B=m.kd.Pd;m.kd.Kd=p.kd.Kd;m.kd.Pd=p.kd.Pd;p.kd.Kd=w;p.kd.Pd=B;p.delete();y.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(m,p,w){p||(p={height:d(m),width:f(m),colorType:a.ColorType.RGBA_8888,alphaType:w?a.AlphaType.Premul:a.AlphaType.Unpremul});p.colorSpace||(p.colorSpace=a.ColorSpace.SRGB);var y={makeTexture:function(){var B=v,D=B.Ud,u=k(D,D.createTexture(),p,w);2===B.version?D.texImage2D(D.TEXTURE_2D,0,D.RGBA, +p.width,p.height,0,D.RGBA,D.UNSIGNED_BYTE,m):D.texImage2D(D.TEXTURE_2D,0,D.RGBA,D.RGBA,D.UNSIGNED_BYTE,m);l(D,p,w);return c(u)},freeSrc:function(){}};"VideoFrame"===m.constructor.name&&(y.freeSrc=function(){m.close()});return a.Image._makeFromGenerator(p,y)};a.Jd=function(m){return m?ha(m):!1};a.ne=function(){return v&&v.ze&&!v.ze.isDeleted()?v.ze: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 e=Math.floor(g.length/4),h=new Uint32Array(e),n=0;nz;z++)a.HEAPF32[t+n]=g[x][z],n++;g=h}else g=M;e.Rd=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return e}function p(g){if(!g)return M;var e=T.toTypedArray();if(g.length){if(6===g.length||9===g.length)return l(g,"HEAPF32",H),6===g.length&&a.HEAPF32.set(fd,6+H/4),H;if(16===g.length)return e[0]=g[0],e[1]=g[1],e[2]=g[3],e[3]=g[4],e[4]=g[5],e[5]=g[7],e[6]=g[12],e[7]=g[13],e[8]=g[15],H;throw"invalid matrix size"; +}if(void 0===g.m11)throw"invalid matrix argument";e[0]=g.m11;e[1]=g.m21;e[2]=g.m41;e[3]=g.m12;e[4]=g.m22;e[5]=g.m42;e[6]=g.m14;e[7]=g.m24;e[8]=g.m44;return H}function w(g){if(!g)return M;var e=Y.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return l(g,"HEAPF32",ca);e.fill(0);e[0]=g[0];e[1]=g[1];e[3]=g[2];e[4]=g[3];e[5]=g[4];e[7]=g[5];e[10]=1;e[12]=g[6];e[13]=g[7];e[15]=g[8];6===g.length&&(e[12]=0,e[13]=0,e[15]=1);return ca}if(void 0=== +g.m11)throw"invalid matrix argument";e[0]=g.m11;e[1]=g.m21;e[2]=g.m31;e[3]=g.m41;e[4]=g.m12;e[5]=g.m22;e[6]=g.m32;e[7]=g.m42;e[8]=g.m13;e[9]=g.m23;e[10]=g.m33;e[11]=g.m43;e[12]=g.m14;e[13]=g.m24;e[14]=g.m34;e[15]=g.m44;return ca}function y(g,e){return l(g,"HEAPF32",e||va)}function B(g,e,h,n){var t=Ma.toTypedArray();t[0]=g;t[1]=e;t[2]=h;t[3]=n;return va}function D(g){for(var e=new Float32Array(4),h=0;4>h;h++)e[h]=a.HEAPF32[g/4+h];return e}function u(g,e){return l(g,"HEAPF32",e||X)}function F(g,e){return l(g, +"HEAPF32",e||Eb)}a.Color=function(g,e,h,n){void 0===n&&(n=1);return a.Color4f(f(g)/255,f(e)/255,f(h)/255,n)};a.ColorAsInt=function(g,e,h,n){void 0===n&&(n=255);return(f(n)<<24|f(g)<<16|f(e)<<8|f(h)<<0&268435455)>>>0};a.Color4f=function(g,e,h,n){void 0===n&&(n=1);return Float32Array.of(g,e,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,e){g=g.toLowerCase();if(g.startsWith("#")){e=255;switch(g.length){case 9:e=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:e=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,e/255)}return g.startsWith("rgba")?(g=g.slice(5, +-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],d(g[3]))):g.startsWith("rgb")?(g=g.slice(4,-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],d(g[3]))):g.startsWith("gray(")||g.startsWith("hsl")||!e||(g=e[g],void 0===g)?a.BLACK:g};a.multiplyByAlpha=function(g,e){g=g.slice();g[3]=Math.max(0,Math.min(g[3]*e,1));return g};a.Malloc=function(g,e){var h=a._malloc(e*g.BYTES_PER_ELEMENT);return{_ck:!0,length:e,byteOffset:h,be:null,subarray:function(n,t){n=this.toTypedArray().subarray(n,t);n._ck=!0;return n},toTypedArray:function(){if(this.be&& +this.be.length)return this.be;this.be=new g(a.HEAPU8.buffer,h,e);this.be._ck=!0;return this.be}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=M;g.toTypedArray=null;g.be=null};var H=M,T,ca=M,Y,va=M,Ma,na,X=M,fc,Ba=M,gc,Fb=M,hc,Gb=M,hb,Sa=M,ic,Eb=M,jc,kc=M,fd=Float32Array.of(0,0,1),M=0;a.onRuntimeInitialized=function(){function g(e,h,n,t,x,z,E){z||(z=4*t.width,t.colorType===a.ColorType.RGBA_F16?z*=2:t.colorType===a.ColorType.RGBA_F32&&(z*=4));var J=z*t.height;var I=x?x.byteOffset:a._malloc(J); +if(E?!e._readPixels(t,I,z,h,n,E):!e._readPixels(t,I,z,h,n))return x||a._free(I),null;if(x)return x.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:e=(new Uint8Array(a.HEAPU8.buffer,I,J)).slice();break;case a.ColorType.RGBA_F32:e=(new Float32Array(a.HEAPU8.buffer,I,J)).slice();break;default:return null}a._free(I);return e}Ma=a.Malloc(Float32Array,4);va=Ma.byteOffset;Y=a.Malloc(Float32Array,16);ca=Y.byteOffset;T=a.Malloc(Float32Array,9);H=T.byteOffset;ic=a.Malloc(Float32Array, +12);Eb=ic.byteOffset;jc=a.Malloc(Float32Array,12);kc=jc.byteOffset;na=a.Malloc(Float32Array,4);X=na.byteOffset;fc=a.Malloc(Float32Array,4);Ba=fc.byteOffset;gc=a.Malloc(Float32Array,3);Fb=gc.byteOffset;hc=a.Malloc(Float32Array,3);Gb=hc.byteOffset;hb=a.Malloc(Int32Array,4);Sa=hb.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(e){var h=l(e,"HEAPF32"),n=a.Path._MakeFromCmds(h,e.length);k(h,e);return n};a.Path.MakeFromVerbsPointsWeights=function(e,h,n){var t=l(e,"HEAPU8"),x=l(h,"HEAPF32"),z=l(n,"HEAPF32"),E=a.Path._MakeFromVerbsPointsWeights(t,e.length,x,h.length,z,n&&n.length||0);k(t,e);k(x,h);k(z,n);return E};a.Path.prototype.addArc=function(e,h,n){e=u(e);this._addArc(e,h,n);return this};a.Path.prototype.addCircle=function(e,h,n,t){this._addCircle(e,h,n,!!t);return this};a.Path.prototype.addOval=function(e,h,n){void 0=== +n&&(n=1);e=u(e);this._addOval(e,!!h,n);return this};a.Path.prototype.addPath=function(){var e=Array.prototype.slice.call(arguments),h=e[0],n=!1;"boolean"===typeof e[e.length-1]&&(n=e.pop());if(1===e.length)this._addPath(h,1,0,0,0,1,0,0,0,1,n);else if(2===e.length)e=e[1],this._addPath(h,e[0],e[1],e[2],e[3],e[4],e[5],e[6]||0,e[7]||0,e[8]||1,n);else if(7===e.length||10===e.length)this._addPath(h,e[1],e[2],e[3],e[4],e[5],e[6],e[7]||0,e[8]||0,e[9]||1,n);else return null;return this};a.Path.prototype.addPoly= +function(e,h){var n=l(e,"HEAPF32");this._addPoly(n,e.length/2,h);k(n,e);return this};a.Path.prototype.addRect=function(e,h){e=u(e);this._addRect(e,!!h);return this};a.Path.prototype.addRRect=function(e,h){e=F(e);this._addRRect(e,!!h);return this};a.Path.prototype.addVerbsPointsWeights=function(e,h,n){var t=l(e,"HEAPU8"),x=l(h,"HEAPF32"),z=l(n,"HEAPF32");this._addVerbsPointsWeights(t,e.length,x,h.length,z,n&&n.length||0);k(t,e);k(x,h);k(z,n)};a.Path.prototype.arc=function(e,h,n,t,x,z){e=a.LTRBRect(e- +n,h-n,e+n,h+n);x=(x-t)/Math.PI*180-360*!!z;z=new a.Path;z.addArc(e,t/Math.PI*180,x);this.addPath(z,!0);z.delete();return this};a.Path.prototype.arcToOval=function(e,h,n,t){e=u(e);this._arcToOval(e,h,n,t);return this};a.Path.prototype.arcToRotated=function(e,h,n,t,x,z,E){this._arcToRotated(e,h,n,!!t,!!x,z,E);return this};a.Path.prototype.arcToTangent=function(e,h,n,t,x){this._arcToTangent(e,h,n,t,x);return this};a.Path.prototype.close=function(){this._close();return this};a.Path.prototype.conicTo= +function(e,h,n,t,x){this._conicTo(e,h,n,t,x);return this};a.Path.prototype.computeTightBounds=function(e){this._computeTightBounds(X);var h=na.toTypedArray();return e?(e.set(h),e):h.slice()};a.Path.prototype.cubicTo=function(e,h,n,t,x,z){this._cubicTo(e,h,n,t,x,z);return this};a.Path.prototype.dash=function(e,h,n){return this._dash(e,h,n)?this:null};a.Path.prototype.getBounds=function(e){this._getBounds(X);var h=na.toTypedArray();return e?(e.set(h),e):h.slice()};a.Path.prototype.lineTo=function(e, +h){this._lineTo(e,h);return this};a.Path.prototype.moveTo=function(e,h){this._moveTo(e,h);return this};a.Path.prototype.offset=function(e,h){this._transform(1,0,e,0,1,h,0,0,1);return this};a.Path.prototype.quadTo=function(e,h,n,t){this._quadTo(e,h,n,t);return this};a.Path.prototype.rArcTo=function(e,h,n,t,x,z,E){this._rArcTo(e,h,n,t,x,z,E);return this};a.Path.prototype.rConicTo=function(e,h,n,t,x){this._rConicTo(e,h,n,t,x);return this};a.Path.prototype.rCubicTo=function(e,h,n,t,x,z){this._rCubicTo(e, +h,n,t,x,z);return this};a.Path.prototype.rLineTo=function(e,h){this._rLineTo(e,h);return this};a.Path.prototype.rMoveTo=function(e,h){this._rMoveTo(e,h);return this};a.Path.prototype.rQuadTo=function(e,h,n,t){this._rQuadTo(e,h,n,t);return this};a.Path.prototype.stroke=function(e){e=e||{};e.width=e.width||1;e.miter_limit=e.miter_limit||4;e.cap=e.cap||a.StrokeCap.Butt;e.join=e.join||a.StrokeJoin.Miter;e.precision=e.precision||1;return this._stroke(e)?this:null};a.Path.prototype.transform=function(){if(1=== +arguments.length){var e=arguments[0];this._transform(e[0],e[1],e[2],e[3],e[4],e[5],e[6]||0,e[7]||0,e[8]||1)}else if(6===arguments.length||9===arguments.length)e=arguments,this._transform(e[0],e[1],e[2],e[3],e[4],e[5],e[6]||0,e[7]||0,e[8]||1);else throw"transform expected to take 1 or 9 arguments. Got "+arguments.length;return this};a.Path.prototype.trim=function(e,h,n){return this._trim(e,h,!!n)?this:null};a.Image.prototype.encodeToBytes=function(e,h){var n=a.ne();e=e||a.ImageFormat.PNG;h=h||100; +return n?this._encodeToBytes(e,h,n):this._encodeToBytes(e,h)};a.Image.prototype.makeShaderCubic=function(e,h,n,t,x){x=p(x);return this._makeShaderCubic(e,h,n,t,x)};a.Image.prototype.makeShaderOptions=function(e,h,n,t,x){x=p(x);return this._makeShaderOptions(e,h,n,t,x)};a.Image.prototype.readPixels=function(e,h,n,t,x){var z=a.ne();return g(this,e,h,n,t,x,z)};a.Canvas.prototype.clear=function(e){a.Jd(this.Id);e=y(e);this._clear(e)};a.Canvas.prototype.clipRRect=function(e,h,n){a.Jd(this.Id);e=F(e);this._clipRRect(e, +h,n)};a.Canvas.prototype.clipRect=function(e,h,n){a.Jd(this.Id);e=u(e);this._clipRect(e,h,n)};a.Canvas.prototype.concat=function(e){a.Jd(this.Id);e=w(e);this._concat(e)};a.Canvas.prototype.drawArc=function(e,h,n,t,x){a.Jd(this.Id);e=u(e);this._drawArc(e,h,n,t,x)};a.Canvas.prototype.drawAtlas=function(e,h,n,t,x,z,E){if(e&&t&&h&&n&&h.length===n.length){a.Jd(this.Id);x||(x=a.BlendMode.SrcOver);var J=l(h,"HEAPF32"),I=l(n,"HEAPF32"),U=n.length/4,V=l(c(z),"HEAPU32");if(E&&"B"in E&&"C"in E)this._drawAtlasCubic(e, +I,J,V,U,x,E.B,E.C,t);else{let q=a.FilterMode.Linear,A=a.MipmapMode.None;E&&(q=E.filter,"mipmap"in E&&(A=E.mipmap));this._drawAtlasOptions(e,I,J,V,U,x,q,A,t)}k(J,h);k(I,n);k(V,z)}};a.Canvas.prototype.drawCircle=function(e,h,n,t){a.Jd(this.Id);this._drawCircle(e,h,n,t)};a.Canvas.prototype.drawColor=function(e,h){a.Jd(this.Id);e=y(e);void 0!==h?this._drawColor(e,h):this._drawColor(e)};a.Canvas.prototype.drawColorInt=function(e,h){a.Jd(this.Id);this._drawColorInt(e,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents= +function(e,h,n,t,x){a.Jd(this.Id);e=B(e,h,n,t);void 0!==x?this._drawColor(e,x):this._drawColor(e)};a.Canvas.prototype.drawDRRect=function(e,h,n){a.Jd(this.Id);e=F(e,Eb);h=F(h,kc);this._drawDRRect(e,h,n)};a.Canvas.prototype.drawImage=function(e,h,n,t){a.Jd(this.Id);this._drawImage(e,h,n,t||null)};a.Canvas.prototype.drawImageCubic=function(e,h,n,t,x,z){a.Jd(this.Id);this._drawImageCubic(e,h,n,t,x,z||null)};a.Canvas.prototype.drawImageOptions=function(e,h,n,t,x,z){a.Jd(this.Id);this._drawImageOptions(e, +h,n,t,x,z||null)};a.Canvas.prototype.drawImageNine=function(e,h,n,t,x){a.Jd(this.Id);h=l(h,"HEAP32",Sa);n=u(n);this._drawImageNine(e,h,n,t,x||null)};a.Canvas.prototype.drawImageRect=function(e,h,n,t,x){a.Jd(this.Id);u(h,X);u(n,Ba);this._drawImageRect(e,X,Ba,t,!!x)};a.Canvas.prototype.drawImageRectCubic=function(e,h,n,t,x,z){a.Jd(this.Id);u(h,X);u(n,Ba);this._drawImageRectCubic(e,X,Ba,t,x,z||null)};a.Canvas.prototype.drawImageRectOptions=function(e,h,n,t,x,z){a.Jd(this.Id);u(h,X);u(n,Ba);this._drawImageRectOptions(e, +X,Ba,t,x,z||null)};a.Canvas.prototype.drawLine=function(e,h,n,t,x){a.Jd(this.Id);this._drawLine(e,h,n,t,x)};a.Canvas.prototype.drawOval=function(e,h){a.Jd(this.Id);e=u(e);this._drawOval(e,h)};a.Canvas.prototype.drawPaint=function(e){a.Jd(this.Id);this._drawPaint(e)};a.Canvas.prototype.drawParagraph=function(e,h,n){a.Jd(this.Id);this._drawParagraph(e,h,n)};a.Canvas.prototype.drawPatch=function(e,h,n,t,x){if(24>e.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=l(e,"HEAPF32"),E=h?l(c(h),"HEAPU32"):M,J=n?l(n,"HEAPF32"):M;t||(t=a.BlendMode.Modulate);this._drawPatch(z,E,J,t,x);k(J,n);k(E,h);k(z,e)};a.Canvas.prototype.drawPath=function(e,h){a.Jd(this.Id);this._drawPath(e,h)};a.Canvas.prototype.drawPicture=function(e){a.Jd(this.Id);this._drawPicture(e)};a.Canvas.prototype.drawPoints=function(e,h,n){a.Jd(this.Id);var t=l(h,"HEAPF32");this._drawPoints(e,t,h.length/2,n);k(t,h)};a.Canvas.prototype.drawRRect=function(e,h){a.Jd(this.Id);e=F(e); +this._drawRRect(e,h)};a.Canvas.prototype.drawRect=function(e,h){a.Jd(this.Id);e=u(e);this._drawRect(e,h)};a.Canvas.prototype.drawRect4f=function(e,h,n,t,x){a.Jd(this.Id);this._drawRect4f(e,h,n,t,x)};a.Canvas.prototype.drawShadow=function(e,h,n,t,x,z,E){a.Jd(this.Id);var J=l(x,"HEAPF32"),I=l(z,"HEAPF32");h=l(h,"HEAPF32",Fb);n=l(n,"HEAPF32",Gb);this._drawShadow(e,h,n,t,J,I,E);k(J,x);k(I,z)};a.getShadowLocalBounds=function(e,h,n,t,x,z,E){e=p(e);n=l(n,"HEAPF32",Fb);t=l(t,"HEAPF32",Gb);if(!this._getShadowLocalBounds(e, +h,n,t,x,z,X))return null;h=na.toTypedArray();return E?(E.set(h),E):h.slice()};a.Canvas.prototype.drawTextBlob=function(e,h,n,t){a.Jd(this.Id);this._drawTextBlob(e,h,n,t)};a.Canvas.prototype.drawVertices=function(e,h,n){a.Jd(this.Id);this._drawVertices(e,h,n)};a.Canvas.prototype.getDeviceClipBounds=function(e){this._getDeviceClipBounds(Sa);var h=hb.toTypedArray();e?e.set(h):e=h.slice();return e};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(ca);for(var e=ca,h=Array(16),n=0;16> +n;n++)h[n]=a.HEAPF32[e/4+n];return h};a.Canvas.prototype.getTotalMatrix=function(){this._getTotalMatrix(H);for(var e=Array(9),h=0;9>h;h++)e[h]=a.HEAPF32[H/4+h];return e};a.Canvas.prototype.makeSurface=function(e){e=this._makeSurface(e);e.Id=this.Id;return e};a.Canvas.prototype.readPixels=function(e,h,n,t,x){a.Jd(this.Id);return g(this,e,h,n,t,x)};a.Canvas.prototype.saveLayer=function(e,h,n,t){h=u(h);return this._saveLayer(e||null,h,n||null,t||0)};a.Canvas.prototype.writePixels=function(e,h,n,t,x, +z,E,J){if(e.byteLength%(h*n))throw"pixels length must be a multiple of the srcWidth * srcHeight";a.Jd(this.Id);var I=e.byteLength/(h*n);z=z||a.AlphaType.Unpremul;E=E||a.ColorType.RGBA_8888;J=J||a.ColorSpace.SRGB;var U=I*h;I=l(e,"HEAPU8");h=this._writePixels({width:h,height:n,colorType:E,alphaType:z,colorSpace:J},I,U,t,x);k(I,e);return h};a.ColorFilter.MakeBlend=function(e,h,n){e=y(e);n=n||a.ColorSpace.SRGB;return a.ColorFilter._MakeBlend(e,h,n)};a.ColorFilter.MakeMatrix=function(e){if(!e||20!==e.length)throw"invalid color matrix"; +var h=l(e,"HEAPF32"),n=a.ColorFilter._makeMatrix(h);k(h,e);return n};a.ContourMeasure.prototype.getPosTan=function(e,h){this._getPosTan(e,X);e=na.toTypedArray();return h?(h.set(e),h):e.slice()};a.ImageFilter.prototype.getOutputBounds=function(e,h,n){e=u(e,X);h=p(h);this._getOutputBounds(e,h,Sa);h=hb.toTypedArray();return n?(n.set(h),n):h.slice()};a.ImageFilter.MakeDropShadow=function(e,h,n,t,x,z){x=y(x,va);return a.ImageFilter._MakeDropShadow(e,h,n,t,x,z)};a.ImageFilter.MakeDropShadowOnly=function(e, +h,n,t,x,z){x=y(x,va);return a.ImageFilter._MakeDropShadowOnly(e,h,n,t,x,z)};a.ImageFilter.MakeImage=function(e,h,n,t){n=u(n,X);t=u(t,Ba);if("B"in h&&"C"in h)return a.ImageFilter._MakeImageCubic(e,h.B,h.C,n,t);const x=h.filter;let z=a.MipmapMode.None;"mipmap"in h&&(z=h.mipmap);return a.ImageFilter._MakeImageOptions(e,x,z,n,t)};a.ImageFilter.MakeMatrixTransform=function(e,h,n){e=p(e);if("B"in h&&"C"in h)return a.ImageFilter._MakeMatrixTransformCubic(e,h.B,h.C,n);const t=h.filter;let x=a.MipmapMode.None; +"mipmap"in h&&(x=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(e,t,x,n)};a.Paint.prototype.getColor=function(){this._getColor(va);return D(va)};a.Paint.prototype.setColor=function(e,h){h=h||null;e=y(e);this._setColor(e,h)};a.Paint.prototype.setColorComponents=function(e,h,n,t,x){x=x||null;e=B(e,h,n,t);this._setColor(e,x)};a.Path.prototype.getPoint=function(e,h){this._getPoint(e,X);e=na.toTypedArray();return h?(h[0]=e[0],h[1]=e[1],h):e.slice(0,2)};a.Picture.prototype.makeShader=function(e, +h,n,t,x){t=p(t);x=u(x);return this._makeShader(e,h,n,t,x)};a.Picture.prototype.cullRect=function(e){this._cullRect(X);var h=na.toTypedArray();return e?(e.set(h),e):h.slice()};a.PictureRecorder.prototype.beginRecording=function(e,h){e=u(e);return this._beginRecording(e,!!h)};a.Surface.prototype.getCanvas=function(){var e=this._getCanvas();e.Id=this.Id;return e};a.Surface.prototype.makeImageSnapshot=function(e){a.Jd(this.Id);e=l(e,"HEAP32",Sa);return this._makeImageSnapshot(e)};a.Surface.prototype.makeSurface= +function(e){a.Jd(this.Id);e=this._makeSurface(e);e.Id=this.Id;return e};a.Surface.prototype.Te=function(e,h){this.ge||(this.ge=this.getCanvas());return requestAnimationFrame(function(){a.Jd(this.Id);e(this.ge);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Te);a.Surface.prototype.Qe=function(e,h){this.ge||(this.ge=this.getCanvas());requestAnimationFrame(function(){a.Jd(this.Id);e(this.ge);this.flush(h);this.dispose()}.bind(this))}; +a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Qe);a.PathEffect.MakeDash=function(e,h){h||(h=0);if(!e.length||1===e.length%2)throw"Intervals array must have even length";var n=l(e,"HEAPF32");h=a.PathEffect._MakeDash(n,e.length,h);k(n,e);return h};a.PathEffect.MakeLine2D=function(e,h){h=p(h);return a.PathEffect._MakeLine2D(e,h)};a.PathEffect.MakePath2D=function(e,h){e=p(e);return a.PathEffect._MakePath2D(e,h)};a.Shader.MakeColor=function(e,h){h=h||null;e=y(e);return a.Shader._MakeColor(e, +h)};a.Shader.Blend=a.Shader.MakeBlend;a.Shader.Color=a.Shader.MakeColor;a.Shader.MakeLinearGradient=function(e,h,n,t,x,z,E,J){J=J||null;var I=m(n),U=l(t,"HEAPF32");E=E||0;z=p(z);var V=na.toTypedArray();V.set(e);V.set(h,2);e=a.Shader._MakeLinearGradient(X,I.Rd,I.colorType,U,I.count,x,E,z,J);k(I.Rd,n);t&&k(U,t);return e};a.Shader.MakeRadialGradient=function(e,h,n,t,x,z,E,J){J=J||null;var I=m(n),U=l(t,"HEAPF32");E=E||0;z=p(z);e=a.Shader._MakeRadialGradient(e[0],e[1],h,I.Rd,I.colorType,U,I.count,x,E, +z,J);k(I.Rd,n);t&&k(U,t);return e};a.Shader.MakeSweepGradient=function(e,h,n,t,x,z,E,J,I,U){U=U||null;var V=m(n),q=l(t,"HEAPF32");E=E||0;J=J||0;I=I||360;z=p(z);e=a.Shader._MakeSweepGradient(e,h,V.Rd,V.colorType,q,V.count,x,J,I,E,z,U);k(V.Rd,n);t&&k(q,t);return e};a.Shader.MakeTwoPointConicalGradient=function(e,h,n,t,x,z,E,J,I,U){U=U||null;var V=m(x),q=l(z,"HEAPF32");I=I||0;J=p(J);var A=na.toTypedArray();A.set(e);A.set(n,2);e=a.Shader._MakeTwoPointConicalGradient(X,h,t,V.Rd,V.colorType,q,V.count,E, +I,J,U);k(V.Rd,x);z&&k(q,z);return e};a.Vertices.prototype.bounds=function(e){this._bounds(X);var h=na.toTypedArray();return e?(e.set(h),e):h.slice()};a.Md&&a.Md.forEach(function(e){e()})};a.computeTonalColors=function(g){var e=l(g.ambient,"HEAPF32"),h=l(g.spot,"HEAPF32");this._computeTonalColors(e,h);var n={ambient:D(e),spot:D(h)};k(e,g.ambient);k(h,g.spot);return n};a.LTRBRect=function(g,e,h,n){return Float32Array.of(g,e,h,n)};a.XYWHRect=function(g,e,h,n){return Float32Array.of(g,e,g+h,e+n)};a.LTRBiRect= +function(g,e,h,n){return Int32Array.of(g,e,h,n)};a.XYWHiRect=function(g,e,h,n){return Int32Array.of(g,e,g+h,e+n)};a.RRectXY=function(g,e,h){return Float32Array.of(g[0],g[1],g[2],g[3],e,h,e,h,e,h,e,h)};a.MakeAnimatedImageFromEncoded=function(g){g=new Uint8Array(g);var e=a._malloc(g.byteLength);a.HEAPU8.set(g,e);return(g=a._decodeAnimatedImage(e,g.byteLength))?g:null};a.MakeImageFromEncoded=function(g){g=new Uint8Array(g);var e=a._malloc(g.byteLength);a.HEAPU8.set(g,e);return(g=a._decodeImage(e,g.byteLength))? +g:null};var Ta=null;a.MakeImageFromCanvasImageSource=function(g){var e=g.width,h=g.height;Ta||(Ta=document.createElement("canvas"));Ta.width=e;Ta.height=h;var n=Ta.getContext("2d",{willReadFrequently:!0});n.drawImage(g,0,0);g=n.getImageData(0,0,e,h);return a.MakeImage({width:e,height:h,alphaType:a.AlphaType.Unpremul,colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},g.data,4*e)};a.MakeImage=function(g,e,h){var n=a._malloc(e.length);a.HEAPU8.set(e,n);return a._MakeImage(g,n,e.length,h)}; +a.MakeVertices=function(g,e,h,n,t,x){var z=t&&t.length||0,E=0;h&&h.length&&(E|=1);n&&n.length&&(E|=2);void 0===x||x||(E|=4);g=new a._VerticesBuilder(g,e.length/2,z,E);l(e,"HEAPF32",g.positions());g.texCoords()&&l(h,"HEAPF32",g.texCoords());g.colors()&&l(c(n),"HEAPU32",g.colors());g.indices()&&l(t,"HEAPU16",g.indices());return g.detach()};(function(g){g.Md=g.Md||[];g.Md.push(function(){function e(q){q&&(q.dir=0===q.dir?g.TextDirection.RTL:g.TextDirection.LTR);return q}function h(q){if(!q||!q.length)return[]; +for(var A=[],P=0;Pe)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,e);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,e,h,n){var t=l(g,"HEAPU16"),x=l(e,"HEAPF32");return this._getGlyphIntercepts(t, +g.length,!(g&&g._ck),x,e.length,!(e&&e._ck),h,n)};a.Font.prototype.getGlyphWidths=function(g,e,h){var n=l(g,"HEAPU16"),t=a._malloc(4*g.length);this._getGlyphWidthBounds(n,g.length,t,M,e||null);e=new Float32Array(a.HEAPU8.buffer,t,g.length);k(n,g);if(h)return h.set(e),a._free(t),h;g=Float32Array.from(e);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 e=[],h=[],n= +0;ne)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,e);if(h)return h.set(t),a._free(g),h;h=Uint16Array.from(t);a._free(g);return h};a.TextBlob.MakeOnPath=function(g,e,h,n){if(g&&g.length&&e&&e.countPoints()){if(1===e.countPoints())return this.MakeFromText(g,h);n||(n=0);var t=h.getGlyphIDs(g);t=h.getGlyphWidths(t);var x=[];e=new a.ContourMeasureIter(e,!1,1);for(var z=e.next(),E=new Float32Array(4),J=0;Jz.length()){z.delete();z=e.next();if(!z){g=g.substring(0,J);break}n=I/2}z.getPosTan(n,E);var U=E[2],V=E[3];x.push(U,V,E[0]-I/2*U,E[1]-I/2*V);n+=I/2}g=this.MakeFromRSXform(g,x,h);z&&z.delete();e.delete();return g}};a.TextBlob.MakeFromRSXform=function(g,e,h){var n=ja(g)+1,t=a._malloc(n);ka(g,C,t,n);g=l(e,"HEAPF32");h=a.TextBlob._MakeFromRSXform(t,n-1,g,h);a._free(t);return h?h:null};a.TextBlob.MakeFromRSXformGlyphs=function(g,e,h){var n=l(g,"HEAPU16");e=l(e,"HEAPF32"); +h=a.TextBlob._MakeFromRSXformGlyphs(n,2*g.length,e,h);k(n,g);return h?h:null};a.TextBlob.MakeFromGlyphs=function(g,e){var h=l(g,"HEAPU16");e=a.TextBlob._MakeFromGlyphs(h,2*g.length,e);k(h,g);return e?e:null};a.TextBlob.MakeFromText=function(g,e){var h=ja(g)+1,n=a._malloc(h);ka(g,C,n,h);g=a.TextBlob._MakeFromText(n,h-1,e);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 e= +a._malloc(g.byteLength);a.HEAPU8.set(g,e);return(g=a._MakePicture(e,g.byteLength))?g:null}});a.Md=a.Md||[];a.Md.push(function(){a.RuntimeEffect.Make=function(g,e){return a.RuntimeEffect._Make(g,{onError:e||function(h){console.log("RuntimeEffect error",h)}})};a.RuntimeEffect.MakeForBlender=function(g,e){return a.RuntimeEffect._MakeForBlender(g,{onError:e||function(h){console.log("RuntimeEffect error",h)}})};a.RuntimeEffect.prototype.makeShader=function(g,e){var h=!g._ck,n=l(g,"HEAPF32");e=p(e);return this._makeShader(n, +4*g.length,h,e)};a.RuntimeEffect.prototype.makeShaderWithChildren=function(g,e,h){var n=!g._ck,t=l(g,"HEAPF32");h=p(h);for(var x=[],z=0;z{throw b;},pa="object"==typeof window,ra="function"==typeof importScripts,sa="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,ta="",ua,wa,xa; +if(sa){var fs=require("fs"),ya=require("path");ta=ra?ya.dirname(ta)+"/":__dirname+"/";ua=(a,b)=>{a=a.startsWith("file://")?new URL(a):ya.normalize(a);return fs.readFileSync(a,b?void 0:"utf8")};xa=a=>{a=ua(a,!0);a.buffer||(a=new Uint8Array(a));return a};wa=(a,b,c,d=!0)=>{a=a.startsWith("file://")?new URL(a):ya.normalize(a);fs.readFile(a,d?void 0:"utf8",(f,k)=>{f?c(f):b(d?k.buffer:k)})};!r.thisProgram&&1{process.exitCode= +a;throw b;};r.inspect=()=>"[Emscripten Module object]"}else if(pa||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="",ua=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},ra&&(xa=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 d=new XMLHttpRequest;d.open("GET",a,!0);d.responseType="arraybuffer";d.onload=()=>{200==d.status||0==d.status&&d.response?b(d.response):c()};d.onerror=c;d.send(null)};var Aa=r.print||console.log.bind(console),Ca=r.printErr||console.error.bind(console);Object.assign(r,la);la=null;r.thisProgram&&(ma=r.thisProgram);r.quit&&(oa=r.quit);var Da;r.wasmBinary&&(Da=r.wasmBinary);var noExitRuntime=r.noExitRuntime||!0;"object"!=typeof WebAssembly&&Ea("no native wasm support detected"); +var Fa,G,Ga=!1,Ha,C,Ia,Ja,K,L,N,Ka;function La(){var a=Fa.buffer;r.HEAP8=Ha=new Int8Array(a);r.HEAP16=Ia=new Int16Array(a);r.HEAP32=K=new Int32Array(a);r.HEAPU8=C=new Uint8Array(a);r.HEAPU16=Ja=new Uint16Array(a);r.HEAPU32=L=new Uint32Array(a);r.HEAPF32=N=new Float32Array(a);r.HEAPF64=Ka=new Float64Array(a)}var Na,Oa=[],Pa=[],Qa=[];function Ra(){var a=r.preRun.shift();Oa.unshift(a)}var Ua=0,Va=null,Wa=null; +function Ea(a){if(r.onAbort)r.onAbort(a);a="Aborted("+a+")";Ca(a);Ga=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ba(a);throw a;}function Xa(a){return a.startsWith("data:application/octet-stream;base64,")}var Ya;Ya="canvaskit.wasm";if(!Xa(Ya)){var Za=Ya;Ya=r.locateFile?r.locateFile(Za,ta):ta+Za}function $a(a){if(a==Ya&&Da)return new Uint8Array(Da);if(xa)return xa(a);throw"both async and sync fetching of the wasm failed";} +function ab(a){if(!Da&&(pa||ra)){if("function"==typeof fetch&&!a.startsWith("file://"))return fetch(a,{credentials:"same-origin"}).then(b=>{if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(()=>$a(a));if(wa)return new Promise((b,c)=>{wa(a,d=>b(new Uint8Array(d)),c)})}return Promise.resolve().then(()=>$a(a))}function bb(a,b,c){return ab(a).then(d=>WebAssembly.instantiate(d,b)).then(d=>d).then(c,d=>{Ca("failed to asynchronously prepare wasm: "+d);Ea(d)})} +function cb(a,b){var c=Ya;return Da||"function"!=typeof WebAssembly.instantiateStreaming||Xa(c)||c.startsWith("file://")||sa||"function"!=typeof fetch?bb(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(f){Ca("wasm streaming compile failed: "+f);Ca("falling back to ArrayBuffer instantiation");return bb(c,a,b)}))}function db(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var eb=a=>{for(;0>2]=b};this.we=function(b){L[this.Kd+8>>2]=b};this.Zd=function(b,c){this.ve();this.Pe(b);this.we(c)};this.ve=function(){L[this.Kd+16>>2]=0}} +var gb=0,ib=0,jb="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,kb=(a,b,c)=>{var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16f?d+=String.fromCharCode(f):(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else d+=String.fromCharCode(f)}return d}, +lb={};function mb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function nb(a){return this.fromWireType(K[a>>2])}var ob={},pb={},qb={},rb=void 0;function sb(a){throw new rb(a);} +function tb(a,b,c){function d(m){m=c(m);m.length!==a.length&&sb("Mismatched type converter count");for(var p=0;p{pb.hasOwnProperty(m)?f[p]=pb[m]:(k.push(m),ob.hasOwnProperty(m)||(ob[m]=[]),ob[m].push(()=>{f[p]=pb[m];++l;l===k.length&&d(f)}))});0===k.length&&d(f)} +function vb(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 wb=void 0;function O(a){for(var b="";C[a];)b+=wb[C[a++]];return b}var xb=void 0;function Q(a){throw new xb(a);} +function yb(a,b,c={}){var d=b.name;a||Q(`type "${d}" must have a positive integer typeid pointer`);if(pb.hasOwnProperty(a)){if(c.ff)return;Q(`Cannot register type '${d}' twice`)}pb[a]=b;delete qb[a];ob.hasOwnProperty(a)&&(b=ob[a],delete ob[a],b.forEach(f=>f()))}function ub(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");yb(a,b,c)}function zb(a){Q(a.kd.Nd.Ld.name+" instance already deleted")}var Ab=!1;function Bb(){} +function Cb(a){--a.count.value;0===a.count.value&&(a.Pd?a.Td.Xd(a.Pd):a.Nd.Ld.Xd(a.Kd))}function Db(a,b,c){if(b===c)return a;if(void 0===c.Qd)return null;a=Db(a,b,c.Qd);return null===a?null:c.Ye(a)}var Jb={},Kb=[];function Lb(){for(;Kb.length;){var a=Kb.pop();a.kd.ee=!1;a["delete"]()}}var Mb=void 0,Nb={};function Ob(a,b){for(void 0===b&&Q("ptr should not be undefined");a.Qd;)b=a.ke(b),a=a.Qd;return Nb[b]} +function Pb(a,b){b.Nd&&b.Kd||sb("makeClassHandle requires ptr and ptrType");!!b.Td!==!!b.Pd&&sb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Qb(Object.create(a,{kd:{value:b}}))}function Qb(a){if("undefined"===typeof FinalizationRegistry)return Qb=b=>b,a;Ab=new FinalizationRegistry(b=>{Cb(b.kd)});Qb=b=>{var c=b.kd;c.Pd&&Ab.register(b,{kd:c},b);return b};Bb=b=>{Ab.unregister(b)};return Qb(a)}function Rb(){} +function Sb(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 Tb(a,b){a=Sb(a);return{[a]:function(){return b.apply(this,arguments)}}[a]} +function Ub(a,b,c){if(void 0===a[b].Od){var d=a[b];a[b]=function(){a[b].Od.hasOwnProperty(arguments.length)||Q(`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[d.ce]=d}} +function Vb(a,b,c){r.hasOwnProperty(a)?((void 0===c||void 0!==r[a].Od&&void 0!==r[a].Od[c])&&Q(`Cannot register public name '${a}' twice`),Ub(r,a,a),r.hasOwnProperty(c)&&Q(`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].xf=c))}function Wb(a,b,c,d,f,k,l,m){this.name=a;this.constructor=b;this.fe=c;this.Xd=d;this.Qd=f;this.af=k;this.ke=l;this.Ye=m;this.kf=[]} +function Xb(a,b,c){for(;b!==c;)b.ke||Q(`Expected null or instance of ${c.name}, got an instance of ${b.name}`),a=b.ke(a),b=b.Qd;return a}function Yb(a,b){if(null===b)return this.Ae&&Q(`null is not a valid ${this.name}`),0;b.kd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.kd.Kd||Q(`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.Ae&&Q(`null is not a valid ${this.name}`);if(this.pe){var c=this.Be();null!==a&&a.push(this.Xd,c);return c}return 0}b.kd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.kd.Kd||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);!this.oe&&b.kd.Nd.oe&&Q(`Cannot convert argument of type ${b.kd.Td?b.kd.Td.name:b.kd.Nd.name} to parameter type ${this.name}`);c=Xb(b.kd.Kd,b.kd.Nd.Ld,this.Ld);if(this.pe)switch(void 0===b.kd.Pd&&Q("Passing raw pointer to smart pointer is illegal"), +this.qf){case 0:b.kd.Td===this?c=b.kd.Pd:Q(`Cannot convert argument of type ${b.kd.Td?b.kd.Td.name:b.kd.Nd.name} to parameter type ${this.name}`);break;case 1:c=b.kd.Pd;break;case 2:if(b.kd.Td===this)c=b.kd.Pd;else{var d=b.clone();c=this.lf(c,ac(function(){d["delete"]()}));null!==a&&a.push(this.Xd,c)}break;default:Q("Unsupporting sharing policy")}return c} +function bc(a,b){if(null===b)return this.Ae&&Q(`null is not a valid ${this.name}`),0;b.kd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.kd.Kd||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);b.kd.Nd.oe&&Q(`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,d,f,k,l,m,p,w,y){this.name=a;this.Ld=b;this.Ae=c;this.oe=d;this.pe=f;this.jf=k;this.qf=l;this.Ke=m;this.Be=p;this.lf=w;this.Xd=y;f||void 0!==b.Qd?this.toWireType=$b:(this.toWireType=d?Yb:bc,this.Sd=null)}function dc(a,b,c){r.hasOwnProperty(a)||sb("Replacing nonexistant public symbol");void 0!==r[a].Od&&void 0!==c?r[a].Od[c]=b:(r[a]=b,r[a].ce=c)} +var ec=(a,b)=>{var c=[];return function(){c.length=0;Object.assign(c,arguments);if(a.includes("j")){var d=r["dynCall_"+a];d=c&&c.length?d.apply(null,[b].concat(c)):d.call(null,b)}else d=Na.get(b).apply(null,c);return d}};function mc(a,b){a=O(a);var c=a.includes("j")?ec(a,b):Na.get(b);"function"!=typeof c&&Q(`unknown function pointer with signature ${a}: ${b}`);return c}var nc=void 0;function oc(a){a=pc(a);var b=O(a);qc(a);return b} +function rc(a,b){function c(k){f[k]||pb[k]||(qb[k]?qb[k].forEach(c):(d.push(k),f[k]=!0))}var d=[],f={};b.forEach(c);throw new nc(`${a}: `+d.map(oc).join([", "]));} +function sc(a,b,c,d,f){var k=b.length;2>k&&Q("argTypes array size mismatch! Must at least get return value and 'this' types!");var l=null!==b[1]&&null!==c,m=!1;for(c=1;c>2]);return c}function uc(){this.Wd=[void 0];this.Ie=[]}var vc=new uc;function wc(a){a>=vc.Zd&&0===--vc.get(a).Le&&vc.we(a)} +var xc=a=>{a||Q("Cannot use deleted val. handle = "+a);return vc.get(a).value},ac=a=>{switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:return vc.ve({Le:1,value:a})}};function yc(a,b,c){switch(b){case 0:return function(d){return this.fromWireType((c?Ha:C)[d])};case 1:return function(d){return this.fromWireType((c?Ia:Ja)[d>>1])};case 2:return function(d){return this.fromWireType((c?K:L)[d>>2])};default:throw new TypeError("Unknown integer type: "+a);}} +function zc(a,b){var c=pb[a];void 0===c&&Q(b+" has unknown type "+oc(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 Ac(a,b){switch(b){case 2:return function(c){return this.fromWireType(N[c>>2])};case 3:return function(c){return this.fromWireType(Ka[c>>3])};default:throw new TypeError("Unknown float type: "+a);}} +function Bc(a,b,c){switch(b){case 0:return c?function(d){return Ha[d]}:function(d){return C[d]};case 1:return c?function(d){return Ia[d>>1]}:function(d){return Ja[d>>1]};case 2:return c?function(d){return K[d>>2]}:function(d){return L[d>>2]};default:throw new TypeError("Unknown integer type: "+a);}} +var ka=(a,b,c,d)=>{if(!(0=l){var m=a.charCodeAt(++k);l=65536+((l&1023)<<10)|m&1023}if(127>=l){if(c>=d)break;b[c++]=l}else{if(2047>=l){if(c+1>=d)break;b[c++]=192|l>>6}else{if(65535>=l){if(c+2>=d)break;b[c++]=224|l>>12}else{if(c+3>=d)break;b[c++]=240|l>>18;b[c++]=128|l>>12&63}b[c++]=128|l>>6&63}b[c++]=128|l&63}}b[c]=0;return c-f},ja=a=>{for(var b=0,c=0;c=d?b++:2047>= +d?b+=2:55296<=d&&57343>=d?(b+=4,++c):b+=3}return b},Cc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,Dc=(a,b)=>{var c=a>>1;for(var d=c+b/2;!(c>=d)&&Ja[c];)++c;c<<=1;if(32=b/2);++d){var f=Ia[a+2*d>>1];if(0==f)break;c+=String.fromCharCode(f)}return c},Ec=(a,b,c)=>{void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var d=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;Ia[b>>1]=0;return b-d}, +Fc=a=>2*a.length,Gc=(a,b)=>{for(var c=0,d="";!(c>=b/4);){var f=K[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023)):d+=String.fromCharCode(f)}return d},Hc=(a,b,c)=>{void 0===c&&(c=2147483647);if(4>c)return 0;var d=b;c=d+c-4;for(var f=0;f=k){var l=a.charCodeAt(++f);k=65536+((k&1023)<<10)|l&1023}K[b>>2]=k;b+=4;if(b+4>c)break}K[b>>2]=0;return b-d},Ic=a=>{for(var b=0,c=0;c=d&&++c;b+=4}return b},Jc={};function Kc(a){var b=Jc[a];return void 0===b?O(a):b}var Lc=[]; +function Mc(){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 Nc(a){var b=Lc.length;Lc.push(a);return b}function Oc(a,b){for(var c=Array(a),d=0;d>2],"parameter "+d);return c}var Pc=[];function Qc(a){var b=Array(a+1);return function(c,d,f){b[0]=c;for(var k=0;k>2],"parameter "+k);b[k+1]=l.readValueFromPointer(f);f+=l.argPackAdvance}c=new (c.bind.apply(c,b));return ac(c)}}var Rc={}; +function Sc(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,d){b.vertexAttribDivisorANGLE(c,d)},a.drawArraysInstanced=function(c,d,f,k){b.drawArraysInstancedANGLE(c,d,f,k)},a.drawElementsInstanced=function(c,d,f,k,l){b.drawElementsInstancedANGLE(c,d,f,k,l)})} +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,d){b.drawBuffersWEBGL(c,d)})} +var Vc=1,Wc=[],Xc=[],Yc=[],Zc=[],ea=[],$c=[],ad=[],ia=[],bd=[],cd=[],dd={},ed={},gd=4;function R(a){hd||(hd=a)}function da(a){for(var b=Vc++,c=a.length;ca.version||!b.Ge)b.Ge=b.getExtension("EXT_disjoint_timer_query");b.wf=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}} +var v,hd,ld={},nd=()=>{if(!md){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:ma||"./this.program"},b;for(b in ld)void 0===ld[b]?delete a[b]:a[b]=ld[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);md=c}return md},md,od=[null,[],[]];function pd(a){S.bindVertexArray(ad[a])} +function qd(a,b){for(var c=0;c>2];S.deleteVertexArray(ad[d]);ad[d]=null}}var rd=[];function sd(a,b,c,d){S.drawElements(a,b,c,d)}function td(a,b,c,d){for(var f=0;f>2]=l}}function ud(a,b){td(a,b,"createVertexArray",ad)} +function vd(a,b,c){if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:0!=c&&1!=c&&R(1280);return;case 34814:case 36345:d=0;break;case 34466:var f=S.getParameter(34467);d=f?f.length:0;break;case 33309:if(2>v.version){R(1282);return}d=2*(S.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>v.version){R(1280);return}d=33307==a?3:0}if(void 0===d)switch(f=S.getParameter(a),typeof f){case "number":d=f;break;case "boolean":d=f?1:0;break;case "string":R(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:d=0;break;default:R(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:Ha[b+a>>0]=f[a]?1:0}return}try{d=f.name|0}catch(k){R(1280); +Ca("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+k+")");return}}break;default:R(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=d;L[b>>2]=c;L[b+4>>2]=(c-L[b>>2])/4294967296;break;case 0:K[b>>2]=d;break;case 2:N[b>>2]=d;break;case 4:Ha[b>>0]=d?1:0}}else R(1281)}var xd=a=>{var b=ja(a)+1,c=wd(b);c&&ka(a,C,c,b);return c}; +function yd(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function zd(a){a-=5120;return 0==a?Ha:1==a?C:2==a?Ia:4==a?K:6==a?N:5==a||28922==a||28520==a||30779==a||30782==a?L:Ja}function Ad(a,b,c,d,f){a=zd(a);var k=31-Math.clz32(a.BYTES_PER_ELEMENT),l=gd;return a.subarray(f>>k,f+d*(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 W(a){var b=S.We;if(b){var c=b.je[a];"number"==typeof c&&(b.je[a]=c=S.getUniformLocation(b,b.Me[a]+(00===a%4&&(0!==a%100||0===a%400),Ed=[31,29,31,30,31,30,31,31,30,31,30,31],Fd=[31,28,31,30,31,30,31,31,30,31,30,31];function Gd(a){var b=Array(ja(a)+1);ka(a,b,0,b.length);return b} +var Hd=(a,b,c,d)=>{function f(u,F,H){for(u="number"==typeof u?u.toString():u||"";u.lengthca?-1:0T-u.getDate())F-=T-u.getDate()+1,u.setDate(1),11>H?u.setMonth(H+1):(u.setMonth(0),u.setFullYear(u.getFullYear()+1));else{u.setDate(u.getDate()+F);break}}H=new Date(u.getFullYear()+1,0,4);F=m(new Date(u.getFullYear(), +0,4));H=m(H);return 0>=l(F,u)?0>=l(H,u)?u.getFullYear()+1:u.getFullYear():u.getFullYear()-1}var w=K[d+40>>2];d={tf:K[d>>2],sf:K[d+4>>2],te:K[d+8>>2],Ce:K[d+12>>2],ue:K[d+16>>2],ae:K[d+20>>2],Vd:K[d+24>>2],$d:K[d+28>>2],zf:K[d+32>>2],rf:K[d+36>>2],uf:w?w?kb(C,w):"":""};c=c?kb(C,c):"";w={"%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 w)c=c.replace(new RegExp(y,"g"),w[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(" ");w={"%a":u=>B[u.Vd].substring(0,3),"%A":u=>B[u.Vd],"%b":u=>D[u.ue].substring(0,3),"%B":u=>D[u.ue],"%C":u=>k((u.ae+1900)/ +100|0,2),"%d":u=>k(u.Ce,2),"%e":u=>f(u.Ce,2," "),"%g":u=>p(u).toString().substring(2),"%G":u=>p(u),"%H":u=>k(u.te,2),"%I":u=>{u=u.te;0==u?u=12:12{for(var F=0,H=0;H<=u.ue-1;F+=(Dd(u.ae+1900)?Ed:Fd)[H++]);return k(u.Ce+F,3)},"%m":u=>k(u.ue+1,2),"%M":u=>k(u.sf,2),"%n":()=>"\n","%p":u=>0<=u.te&&12>u.te?"AM":"PM","%S":u=>k(u.tf,2),"%t":()=>"\t","%u":u=>u.Vd||7,"%U":u=>k(Math.floor((u.$d+7-u.Vd)/7),2),"%V":u=>{var F=Math.floor((u.$d+7-(u.Vd+6)%7)/7);2>=(u.Vd+371-u.$d- +2)%7&&F++;if(F)53==F&&(H=(u.Vd+371-u.$d)%7,4==H||3==H&&Dd(u.ae)||(F=1));else{F=52;var H=(u.Vd+7-u.$d-1)%7;(4==H||5==H&&Dd(u.ae%400-1))&&F++}return k(F,2)},"%w":u=>u.Vd,"%W":u=>k(Math.floor((u.$d+7-(u.Vd+6)%7)/7),2),"%y":u=>(u.ae+1900).toString().substring(2),"%Y":u=>u.ae+1900,"%z":u=>{u=u.rf;var F=0<=u;u=Math.abs(u)/60;return(F?"+":"-")+String("0000"+(u/60*100+u%60)).slice(-4)},"%Z":u=>u.uf,"%%":()=>"%"};c=c.replace(/%%/g,"\x00\x00");for(y in w)c.includes(y)&&(c=c.replace(new RegExp(y,"g"),w[y](d))); +c=c.replace(/\0\0/g,"%");y=Gd(c);if(y.length>b)return 0;Ha.set(y,a);return y.length-1};rb=r.InternalError=class extends Error{constructor(a){super(a);this.name="InternalError"}};for(var Id=Array(256),Jd=0;256>Jd;++Jd)Id[Jd]=String.fromCharCode(Jd);wb=Id;xb=r.BindingError=class extends Error{constructor(a){super(a);this.name="BindingError"}}; +Rb.prototype.isAliasOf=function(a){if(!(this instanceof Rb&&a instanceof Rb))return!1;var b=this.kd.Nd.Ld,c=this.kd.Kd,d=a.kd.Nd.Ld;for(a=a.kd.Kd;b.Qd;)c=b.ke(c),b=b.Qd;for(;d.Qd;)a=d.ke(a),d=d.Qd;return b===d&&c===a}; +Rb.prototype.clone=function(){this.kd.Kd||zb(this);if(this.kd.ie)return this.kd.count.value+=1,this;var a=Qb,b=Object,c=b.create,d=Object.getPrototypeOf(this),f=this.kd;a=a(c.call(b,d,{kd:{value:{count:f.count,ee:f.ee,ie:f.ie,Kd:f.Kd,Nd:f.Nd,Pd:f.Pd,Td:f.Td}}}));a.kd.count.value+=1;a.kd.ee=!1;return a};Rb.prototype["delete"]=function(){this.kd.Kd||zb(this);this.kd.ee&&!this.kd.ie&&Q("Object already scheduled for deletion");Bb(this);Cb(this.kd);this.kd.ie||(this.kd.Pd=void 0,this.kd.Kd=void 0)}; +Rb.prototype.isDeleted=function(){return!this.kd.Kd};Rb.prototype.deleteLater=function(){this.kd.Kd||zb(this);this.kd.ee&&!this.kd.ie&&Q("Object already scheduled for deletion");Kb.push(this);1===Kb.length&&Mb&&Mb(Lb);this.kd.ee=!0;return this};r.getInheritedInstanceCount=function(){return Object.keys(Nb).length};r.getLiveInheritedInstances=function(){var a=[],b;for(b in Nb)Nb.hasOwnProperty(b)&&a.push(Nb[b]);return a};r.flushPendingDeletes=Lb;r.setDelayFunction=function(a){Mb=a;Kb.length&&Mb&&Mb(Lb)}; +cc.prototype.bf=function(a){this.Ke&&(a=this.Ke(a));return a};cc.prototype.Ee=function(a){this.Xd&&this.Xd(a)};cc.prototype.argPackAdvance=8;cc.prototype.readValueFromPointer=nb;cc.prototype.deleteObject=function(a){if(null!==a)a["delete"]()}; +cc.prototype.fromWireType=function(a){function b(){return this.pe?Pb(this.Ld.fe,{Nd:this.jf,Kd:c,Td:this,Pd:a}):Pb(this.Ld.fe,{Nd:this,Kd:a})}var c=this.bf(a);if(!c)return this.Ee(a),null;var d=Ob(this.Ld,c);if(void 0!==d){if(0===d.kd.count.value)return d.kd.Kd=c,d.kd.Pd=a,d.clone();d=d.clone();this.Ee(a);return d}d=this.Ld.af(c);d=Jb[d];if(!d)return b.call(this);d=this.oe?d.Ve:d.pointerType;var f=Db(c,this.Ld,d.Ld);return null===f?b.call(this):this.pe?Pb(d.Ld.fe,{Nd:d,Kd:f,Td:this,Pd:a}):Pb(d.Ld.fe, +{Nd:d,Kd:f})};nc=r.UnboundTypeError=function(a,b){var c=Tb(b,function(d){this.name=b;this.message=d;d=Error(d).stack;void 0!==d&&(this.stack=this.toString()+"\n"+d.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c}(Error,"UnboundTypeError"); +Object.assign(uc.prototype,{get(a){return this.Wd[a]},has(a){return void 0!==this.Wd[a]},ve(a){var b=this.Ie.pop()||this.Wd.length;this.Wd[b]=a;return b},we(a){this.Wd[a]=void 0;this.Ie.push(a)}});vc.Wd.push({value:void 0},{value:null},{value:!0},{value:!1});vc.Zd=vc.Wd.length;r.count_emval_handles=function(){for(var a=0,b=vc.Zd;bKd;++Kd)rd.push(Array(Kd));var Ld=new Float32Array(288); +for(Kd=0;288>Kd;++Kd)Bd[Kd]=Ld.subarray(0,Kd+1);var Md=new Int32Array(288);for(Kd=0;288>Kd;++Kd)Cd[Kd]=Md.subarray(0,Kd+1); +var $d={H:function(a,b,c){(new fb(a)).Zd(b,c);gb=a;ib++;throw gb;},$:function(){return 0},$c:()=>{},_c:function(){return 0},Zc:()=>{},Yc:()=>{},_:function(){},Xc:()=>{},E:function(a){var b=lb[a];delete lb[a];var c=b.Be,d=b.Xd,f=b.He,k=f.map(l=>l.ef).concat(f.map(l=>l.nf));tb([a],k,l=>{var m={};f.forEach((p,w)=>{var y=l[w],B=p.cf,D=p.df,u=l[w+f.length],F=p.mf,H=p.pf;m[p.$e]={read:T=>y.fromWireType(B(D,T)),write:(T,ca)=>{var Y=[];F(H,T,u.toWireType(Y,ca));mb(Y)}}});return[{name:b.name,fromWireType:function(p){var w= +{},y;for(y in m)w[y]=m[y].read(p);d(p);return w},toWireType:function(p,w){for(var y in m)if(!(y in w))throw new TypeError(`Missing field: "${y}"`);var B=c();for(y in m)m[y].write(B,w[y]);null!==p&&p.push(d,B);return B},argPackAdvance:8,readValueFromPointer:nb,Sd:d}]})},fa:function(){},Tc:function(a,b,c,d,f){var k=vb(c);b=O(b);ub(a,{name:b,fromWireType:function(l){return!!l},toWireType:function(l,m){return m?d:f},argPackAdvance:8,readValueFromPointer:function(l){if(1===c)var m=Ha;else if(2===c)m=Ia; +else if(4===c)m=K;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(m[l>>k])},Sd:null})},l:function(a,b,c,d,f,k,l,m,p,w,y,B,D){y=O(y);k=mc(f,k);m&&(m=mc(l,m));w&&(w=mc(p,w));D=mc(B,D);var u=Sb(y);Vb(u,function(){rc(`Cannot construct ${y} due to unbound types`,[d])});tb([a,b,c],d?[d]:[],function(F){F=F[0];if(d){var H=F.Ld;var T=H.fe}else T=Rb.prototype;F=Tb(u,function(){if(Object.getPrototypeOf(this)!==ca)throw new xb("Use 'new' to construct "+y);if(void 0===Y.Yd)throw new xb(y+ +" has no accessible constructor");var Ma=Y.Yd[arguments.length];if(void 0===Ma)throw new xb(`Tried to invoke ctor of ${y} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(Y.Yd).toString()}) parameters instead!`);return Ma.apply(this,arguments)});var ca=Object.create(T,{constructor:{value:F}});F.prototype=ca;var Y=new Wb(y,F,ca,D,H,k,m,w);Y.Qd&&(void 0===Y.Qd.le&&(Y.Qd.le=[]),Y.Qd.le.push(Y));H=new cc(y,Y,!0,!1,!1);T=new cc(y+"*",Y,!1,!1,!1);var va=new cc(y+" const*", +Y,!1,!0,!1);Jb[a]={pointerType:T,Ve:va};dc(u,F);return[H,T,va]})},e:function(a,b,c,d,f,k,l){var m=tc(c,d);b=O(b);k=mc(f,k);tb([],[a],function(p){function w(){rc(`Cannot call ${y} due to unbound types`,m)}p=p[0];var y=`${p.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var B=p.Ld.constructor;void 0===B[b]?(w.ce=c-1,B[b]=w):(Ub(B,b,y),B[b].Od[c-1]=w);tb([],m,function(D){D=[D[0],null].concat(D.slice(1));D=sc(y,D,null,k,l);void 0===B[b].Od?(D.ce=c-1,B[b]=D):B[b].Od[c-1]=D;if(p.Ld.le)for(const u of p.Ld.le)u.constructor.hasOwnProperty(b)|| +(u.constructor[b]=D);return[]});return[]})},B:function(a,b,c,d,f,k){var l=tc(b,c);f=mc(d,f);tb([],[a],function(m){m=m[0];var p=`constructor ${m.name}`;void 0===m.Ld.Yd&&(m.Ld.Yd=[]);if(void 0!==m.Ld.Yd[b-1])throw new xb(`Cannot register multiple constructors with identical number of parameters (${b-1}) for class '${m.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);m.Ld.Yd[b-1]=()=>{rc(`Cannot construct ${m.name} due to unbound types`,l)}; +tb([],l,function(w){w.splice(1,0,null);m.Ld.Yd[b-1]=sc(p,w,null,f,k);return[]});return[]})},a:function(a,b,c,d,f,k,l,m){var p=tc(c,d);b=O(b);k=mc(f,k);tb([],[a],function(w){function y(){rc(`Cannot call ${B} due to unbound types`,p)}w=w[0];var B=`${w.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);m&&w.Ld.kf.push(b);var D=w.Ld.fe,u=D[b];void 0===u||void 0===u.Od&&u.className!==w.name&&u.ce===c-2?(y.ce=c-2,y.className=w.name,D[b]=y):(Ub(D,b,B),D[b].Od[c-2]=y);tb([],p,function(F){F=sc(B,F, +w,k,l);void 0===D[b].Od?(F.ce=c-2,D[b]=F):D[b].Od[c-2]=F;return[]});return[]})},s:function(a,b,c){a=O(a);tb([],[b],function(d){d=d[0];r[a]=d.fromWireType(c);return[]})},Sc:function(a,b){b=O(b);ub(a,{name:b,fromWireType:function(c){var d=xc(c);wc(c);return d},toWireType:function(c,d){return ac(d)},argPackAdvance:8,readValueFromPointer:nb,Sd:null})},j:function(a,b,c,d){function f(){}c=vb(c);b=O(b);f.values={};ub(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:function(k, +l){return l.value},argPackAdvance:8,readValueFromPointer:yc(b,c,d),Sd:null});Vb(b,f)},b:function(a,b,c){var d=zc(a,"enum");b=O(b);a=d.constructor;d=Object.create(d.constructor.prototype,{value:{value:c},constructor:{value:Tb(`${d.name}_${b}`,function(){})}});a.values[c]=d;a[b]=d},Y:function(a,b,c){c=vb(c);b=O(b);ub(a,{name:b,fromWireType:function(d){return d},toWireType:function(d,f){return f},argPackAdvance:8,readValueFromPointer:Ac(b,c),Sd:null})},v:function(a,b,c,d,f,k){var l=tc(b,c);a=O(a);f= +mc(d,f);Vb(a,function(){rc(`Cannot call ${a} due to unbound types`,l)},b-1);tb([],l,function(m){m=[m[0],null].concat(m.slice(1));dc(a,sc(a,m,null,f,k),b-1);return[]})},D:function(a,b,c,d,f){b=O(b);-1===f&&(f=4294967295);f=vb(c);var k=m=>m;if(0===d){var l=32-8*c;k=m=>m<>>l}c=b.includes("unsigned")?function(m,p){return p>>>0}:function(m,p){return p};ub(a,{name:b,fromWireType:k,toWireType:c,argPackAdvance:8,readValueFromPointer:Bc(b,f,0!==d),Sd:null})},r:function(a,b,c){function d(k){k>>=2;var l= +L;return new f(l.buffer,l[k+1],l[k])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=O(c);ub(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{ff:!0})},q:function(a,b,c,d,f,k,l,m,p,w,y,B){c=O(c);k=mc(f,k);m=mc(l,m);w=mc(p,w);B=mc(y,B);tb([a],[b],function(D){D=D[0];return[new cc(c,D.Ld,!1,!1,!0,D,d,k,m,w,B)]})},X:function(a,b){b=O(b);var c="std::string"===b;ub(a,{name:b,fromWireType:function(d){var f=L[d>>2],k=d+4;if(c)for(var l= +k,m=0;m<=f;++m){var p=k+m;if(m==f||0==C[p]){l=l?kb(C,l,p-l):"";if(void 0===w)var w=l;else w+=String.fromCharCode(0),w+=l;l=p+1}}else{w=Array(f);for(m=0;m>2]= +l;if(c&&k)ka(f,C,p,l+1);else if(k)for(k=0;kJa;var m=1}else 4===b&&(d=Gc,f=Hc,k=Ic,l=()=>L,m=2);ub(a,{name:c,fromWireType:function(p){for(var w=L[p>>2],y=l(),B,D=p+4,u=0;u<=w;++u){var F= +p+4+u*b;if(u==w||0==y[F>>m])D=d(D,F-D),void 0===B?B=D:(B+=String.fromCharCode(0),B+=D),D=F+b}qc(p);return B},toWireType:function(p,w){"string"!=typeof w&&Q(`Cannot pass non-string to C++ string type ${c}`);var y=k(w),B=wd(4+y+b);L[B>>2]=y>>m;f(w,B+4,y+b);null!==p&&p.push(qc,B);return B},argPackAdvance:8,readValueFromPointer:nb,Sd:function(p){qc(p)}})},C:function(a,b,c,d,f,k){lb[a]={name:O(b),Be:mc(c,d),Xd:mc(f,k),He:[]}},d:function(a,b,c,d,f,k,l,m,p,w){lb[a].He.push({$e:O(b),ef:c,cf:mc(d,f),df:k, +nf:l,mf:mc(m,p),pf:w})},Rc:function(a,b){b=O(b);ub(a,{hf:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},Qc:()=>!0,Pc:()=>{throw Infinity;},G:function(a,b,c){a=xc(a);b=zc(b,"emval::as");var d=[],f=ac(d);L[c>>2]=f;return b.toWireType(d,a)},N:function(a,b,c,d,f){a=Lc[a];b=xc(b);c=Kc(c);var k=[];L[d>>2]=ac(k);return a(b,c,k,f)},t:function(a,b,c,d){a=Lc[a];b=xc(b);c=Kc(c);a(b,c,null,d)},c:wc,M:function(a){if(0===a)return ac(Mc());a=Kc(a);return ac(Mc()[a])},p:function(a, +b){var c=Oc(a,b),d=c[0];b=d.name+"_$"+c.slice(1).map(function(l){return l.name}).join("_")+"$";var f=Pc[b];if(void 0!==f)return f;var k=Array(a-1);f=Nc((l,m,p,w)=>{for(var y=0,B=0;B{Ea("")},Nc:()=>performance.now(),Mc:a=>{var b=C.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c); +d=Math.min(d,a+100663296);var f=Math;d=Math.max(a,d);a:{f=f.min.call(f,2147483648,d+(65536-d%65536)%65536)-Fa.buffer.byteLength+65535>>>16;try{Fa.grow(f);La();var k=1;break a}catch(l){}k=void 0}if(k)return!0}return!1},Lc:function(){return v?v.handle:0},Wc:(a,b)=>{var c=0;nd().forEach(function(d,f){var k=b+c;f=L[a+4*f>>2]=k;for(k=0;k>0]=d.charCodeAt(k);Ha[f>>0]=0;c+=d.length+1});return 0},Vc:(a,b)=>{var c=nd();L[a>>2]=c.length;var d=0;c.forEach(function(f){d+=f.length+1});L[b>> +2]=d;return 0},Kc:a=>{if(!noExitRuntime){if(r.onExit)r.onExit(a);Ga=!0}oa(a,new db(a))},P:()=>52,ha:function(){return 52},Uc:()=>52,ga:function(){return 70},Z:(a,b,c,d)=>{for(var f=0,k=0;k>2],m=L[b+4>>2];b+=8;for(var p=0;p>2]=f;return 0},Jc:function(a){S.activeTexture(a)},Ic:function(a,b){S.attachShader(Xc[a],$c[b])},Hc:function(a,b,c){S.bindAttribLocation(Xc[a],b,c?kb(C,c):"")},Gc:function(a, +b){35051==a?S.ye=b:35052==a&&(S.de=b);S.bindBuffer(a,Wc[b])},W:function(a,b){S.bindFramebuffer(a,Yc[b])},Fc:function(a,b){S.bindRenderbuffer(a,Zc[b])},Ec:function(a,b){S.bindSampler(a,bd[b])},Dc:function(a,b){S.bindTexture(a,ea[b])},Cc:pd,Bc:pd,Ac:function(a,b,c,d){S.blendColor(a,b,c,d)},zc:function(a){S.blendEquation(a)},yc:function(a,b){S.blendFunc(a,b)},xc:function(a,b,c,d,f,k,l,m,p,w){S.blitFramebuffer(a,b,c,d,f,k,l,m,p,w)},wc:function(a,b,c,d){2<=v.version?c&&b?S.bufferData(a,C,d,c,b):S.bufferData(a, +b,d):S.bufferData(a,c?C.subarray(c,c+b):b,d)},vc:function(a,b,c,d){2<=v.version?c&&S.bufferSubData(a,b,C,d,c):S.bufferSubData(a,b,C.subarray(d,d+c))},uc:function(a){return S.checkFramebufferStatus(a)},V:function(a){S.clear(a)},U:function(a,b,c,d){S.clearColor(a,b,c,d)},T:function(a){S.clearStencil(a)},ca:function(a,b,c,d){return S.clientWaitSync(cd[a],b,(c>>>0)+4294967296*d)},tc:function(a,b,c,d){S.colorMask(!!a,!!b,!!c,!!d)},sc:function(a){S.compileShader($c[a])},rc:function(a,b,c,d,f,k,l,m){2<= +v.version?S.de||!l?S.compressedTexImage2D(a,b,c,d,f,k,l,m):S.compressedTexImage2D(a,b,c,d,f,k,C,m,l):S.compressedTexImage2D(a,b,c,d,f,k,m?C.subarray(m,m+l):null)},qc:function(a,b,c,d,f,k,l,m,p){2<=v.version?S.de||!m?S.compressedTexSubImage2D(a,b,c,d,f,k,l,m,p):S.compressedTexSubImage2D(a,b,c,d,f,k,l,C,p,m):S.compressedTexSubImage2D(a,b,c,d,f,k,l,p?C.subarray(p,p+m):null)},pc:function(a,b,c,d,f){S.copyBufferSubData(a,b,c,d,f)},oc:function(a,b,c,d,f,k,l,m){S.copyTexSubImage2D(a,b,c,d,f,k,l,m)},nc:function(){var a= +da(Xc),b=S.createProgram();b.name=a;b.se=b.qe=b.re=0;b.De=1;Xc[a]=b;return a},mc:function(a){var b=da($c);$c[b]=S.createShader(a);return b},lc:function(a){S.cullFace(a)},kc:function(a,b){for(var c=0;c>2],f=Wc[d];f&&(S.deleteBuffer(f),f.name=0,Wc[d]=null,d==S.ye&&(S.ye=0),d==S.de&&(S.de=0))}},jc:function(a,b){for(var c=0;c>2],f=Yc[d];f&&(S.deleteFramebuffer(f),f.name=0,Yc[d]=null)}},ic:function(a){if(a){var b=Xc[a];b?(S.deleteProgram(b),b.name=0,Xc[a]=null): +R(1281)}},hc:function(a,b){for(var c=0;c>2],f=Zc[d];f&&(S.deleteRenderbuffer(f),f.name=0,Zc[d]=null)}},gc:function(a,b){for(var c=0;c>2],f=bd[d];f&&(S.deleteSampler(f),f.name=0,bd[d]=null)}},fc:function(a){if(a){var b=$c[a];b?(S.deleteShader(b),$c[a]=null):R(1281)}},ec:function(a){if(a){var b=cd[a];b?(S.deleteSync(b),b.name=0,cd[a]=null):R(1281)}},dc:function(a,b){for(var c=0;c>2],f=ea[d];f&&(S.deleteTexture(f),f.name=0,ea[d]=null)}}, +cc:qd,bc:qd,ac:function(a){S.depthMask(!!a)},$b:function(a){S.disable(a)},_b:function(a){S.disableVertexAttribArray(a)},Zb:function(a,b,c){S.drawArrays(a,b,c)},Yb:function(a,b,c,d){S.drawArraysInstanced(a,b,c,d)},Xb:function(a,b,c,d,f){S.Fe.drawArraysInstancedBaseInstanceWEBGL(a,b,c,d,f)},Wb:function(a,b){for(var c=rd[a],d=0;d>2];S.drawBuffers(c)},Vb:sd,Ub:function(a,b,c,d,f){S.drawElementsInstanced(a,b,c,d,f)},Tb:function(a,b,c,d,f,k,l){S.Fe.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a, +b,c,d,f,k,l)},Sb:function(a,b,c,d,f,k){sd(a,d,f,k)},Rb:function(a){S.enable(a)},Qb:function(a){S.enableVertexAttribArray(a)},Pb:function(a,b){return(a=S.fenceSync(a,b))?(b=da(cd),a.name=b,cd[b]=a,b):0},Ob:function(){S.finish()},Nb:function(){S.flush()},Mb:function(a,b,c,d){S.framebufferRenderbuffer(a,b,c,Zc[d])},Lb:function(a,b,c,d,f){S.framebufferTexture2D(a,b,c,ea[d],f)},Kb:function(a){S.frontFace(a)},Jb:function(a,b){td(a,b,"createBuffer",Wc)},Ib:function(a,b){td(a,b,"createFramebuffer",Yc)},Hb:function(a, +b){td(a,b,"createRenderbuffer",Zc)},Gb:function(a,b){td(a,b,"createSampler",bd)},Fb:function(a,b){td(a,b,"createTexture",ea)},Eb:ud,Db:ud,Cb:function(a){S.generateMipmap(a)},Bb:function(a,b,c){c?K[c>>2]=S.getBufferParameter(a,b):R(1281)},Ab:function(){var a=S.getError()||hd;hd=0;return a},zb:function(a,b){vd(a,b,2)},yb:function(a,b,c,d){a=S.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;K[d>>2]=a},K:function(a,b){vd(a,b,0)},xb:function(a, +b,c,d){a=S.getProgramInfoLog(Xc[a]);null===a&&(a="(unknown error)");b=0>2]=b)},wb:function(a,b,c){if(c)if(a>=Vc)R(1281);else if(a=Xc[a],35716==b)a=S.getProgramInfoLog(a),null===a&&(a="(unknown error)"),K[c>>2]=a.length+1;else if(35719==b){if(!a.se)for(b=0;b>2]=a.se}else if(35722==b){if(!a.qe)for(b=0;b>2]=a.qe}else if(35381==b){if(!a.re)for(b=0;b>2]=a.re}else K[c>>2]=S.getProgramParameter(a,b);else R(1281)},vb:function(a,b,c){c?K[c>>2]=S.getRenderbufferParameter(a,b):R(1281)},ub:function(a,b,c,d){a=S.getShaderInfoLog($c[a]);null===a&&(a="(unknown error)");b=0>2]=b)},tb:function(a,b,c,d){a=S.getShaderPrecisionFormat(a,b);K[c>>2]=a.rangeMin;K[c+4>> +2]=a.rangeMax;K[d>>2]=a.precision},sb:function(a,b,c){c?35716==b?(a=S.getShaderInfoLog($c[a]),null===a&&(a="(unknown error)"),K[c>>2]=a?a.length+1:0):35720==b?(a=S.getShaderSource($c[a]),K[c>>2]=a?a.length+1:0):K[c>>2]=S.getShaderParameter($c[a],b):R(1281)},S:function(a){var b=dd[a];if(!b){switch(a){case 7939:b=S.getSupportedExtensions()||[];b=b.concat(b.map(function(d){return"GL_"+d}));b=xd(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=S.getParameter(a))||R(1280);b=b&&xd(b);break; +case 7938:b=S.getParameter(7938);b=2<=v.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=xd(b);break;case 35724:b=S.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=xd(b);break;default:R(1280)}dd[a]=b}return b},rb:function(a,b){if(2>v.version)return R(1282),0;var c=ed[a];if(c)return 0>b||b>=c.length?(R(1281),0):c[b];switch(a){case 7939:return c=S.getSupportedExtensions()||[], +c=c.concat(c.map(function(d){return"GL_"+d})),c=c.map(function(d){return xd(d)}),c=ed[a]=c,0>b||b>=c.length?(R(1281),0):c[b];default:return R(1280),0}},qb:function(a,b){b=b?kb(C,b):"";if(a=Xc[a]){var c=a,d=c.je,f=c.Ne,k;if(!d)for(c.je=d={},c.Me={},k=0;k>>0,f=b.slice(0, +k));if((f=a.Ne[f])&&d>2];S.invalidateFramebuffer(a,d)},ob:function(a,b,c,d,f,k,l){for(var m=rd[b],p=0;p>2];S.invalidateSubFramebuffer(a,m,d,f,k,l)},nb:function(a){return S.isSync(cd[a])},mb:function(a){return(a=ea[a])?S.isTexture(a):0},lb:function(a){S.lineWidth(a)},kb:function(a){a=Xc[a];S.linkProgram(a);a.je=0;a.Ne={}},jb:function(a, +b,c,d,f,k){S.Je.multiDrawArraysInstancedBaseInstanceWEBGL(a,K,b>>2,K,c>>2,K,d>>2,L,f>>2,k)},ib:function(a,b,c,d,f,k,l,m){S.Je.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,K,b>>2,c,K,d>>2,K,f>>2,K,k>>2,L,l>>2,m)},hb:function(a,b){3317==a&&(gd=b);S.pixelStorei(a,b)},gb:function(a){S.readBuffer(a)},fb:function(a,b,c,d,f,k,l){if(2<=v.version)if(S.ye)S.readPixels(a,b,c,d,f,k,l);else{var m=zd(k);S.readPixels(a,b,c,d,f,k,m,l>>31-Math.clz32(m.BYTES_PER_ELEMENT))}else(l=Ad(k,f,c,d,l))?S.readPixels(a, +b,c,d,f,k,l):R(1280)},eb:function(a,b,c,d){S.renderbufferStorage(a,b,c,d)},db:function(a,b,c,d,f){S.renderbufferStorageMultisample(a,b,c,d,f)},cb:function(a,b,c){S.samplerParameterf(bd[a],b,c)},bb:function(a,b,c){S.samplerParameteri(bd[a],b,c)},ab:function(a,b,c){S.samplerParameteri(bd[a],b,K[c>>2])},$a:function(a,b,c,d){S.scissor(a,b,c,d)},_a:function(a,b,c,d){for(var f="",k=0;k>2]:-1,m=K[c+4*k>>2];l=m?kb(C,m,0>l?void 0:l):"";f+=l}S.shaderSource($c[a],f)},Za:function(a,b, +c){S.stencilFunc(a,b,c)},Ya:function(a,b,c,d){S.stencilFuncSeparate(a,b,c,d)},Xa:function(a){S.stencilMask(a)},Wa:function(a,b){S.stencilMaskSeparate(a,b)},Va:function(a,b,c){S.stencilOp(a,b,c)},Ua:function(a,b,c,d){S.stencilOpSeparate(a,b,c,d)},Ta:function(a,b,c,d,f,k,l,m,p){if(2<=v.version)if(S.de)S.texImage2D(a,b,c,d,f,k,l,m,p);else if(p){var w=zd(m);S.texImage2D(a,b,c,d,f,k,l,m,w,p>>31-Math.clz32(w.BYTES_PER_ELEMENT))}else S.texImage2D(a,b,c,d,f,k,l,m,null);else S.texImage2D(a,b,c,d,f,k,l,m,p? +Ad(m,l,d,f,p):null)},Sa:function(a,b,c){S.texParameterf(a,b,c)},Ra:function(a,b,c){S.texParameterf(a,b,N[c>>2])},Qa:function(a,b,c){S.texParameteri(a,b,c)},Pa:function(a,b,c){S.texParameteri(a,b,K[c>>2])},Oa:function(a,b,c,d,f){S.texStorage2D(a,b,c,d,f)},Na:function(a,b,c,d,f,k,l,m,p){if(2<=v.version)if(S.de)S.texSubImage2D(a,b,c,d,f,k,l,m,p);else if(p){var w=zd(m);S.texSubImage2D(a,b,c,d,f,k,l,m,w,p>>31-Math.clz32(w.BYTES_PER_ELEMENT))}else S.texSubImage2D(a,b,c,d,f,k,l,m,null);else w=null,p&&(w= +Ad(m,l,f,k,p)),S.texSubImage2D(a,b,c,d,f,k,l,m,w)},Ma:function(a,b){S.uniform1f(W(a),b)},La:function(a,b,c){if(2<=v.version)b&&S.uniform1fv(W(a),N,c>>2,b);else{if(288>=b)for(var d=Bd[b-1],f=0;f>2];else d=N.subarray(c>>2,c+4*b>>2);S.uniform1fv(W(a),d)}},Ka:function(a,b){S.uniform1i(W(a),b)},Ja:function(a,b,c){if(2<=v.version)b&&S.uniform1iv(W(a),K,c>>2,b);else{if(288>=b)for(var d=Cd[b-1],f=0;f>2];else d=K.subarray(c>>2,c+4*b>>2);S.uniform1iv(W(a),d)}},Ia:function(a, +b,c){S.uniform2f(W(a),b,c)},Ha:function(a,b,c){if(2<=v.version)b&&S.uniform2fv(W(a),N,c>>2,2*b);else{if(144>=b)for(var d=Bd[2*b-1],f=0;f<2*b;f+=2)d[f]=N[c+4*f>>2],d[f+1]=N[c+(4*f+4)>>2];else d=N.subarray(c>>2,c+8*b>>2);S.uniform2fv(W(a),d)}},Ga:function(a,b,c){S.uniform2i(W(a),b,c)},Fa:function(a,b,c){if(2<=v.version)b&&S.uniform2iv(W(a),K,c>>2,2*b);else{if(144>=b)for(var d=Cd[2*b-1],f=0;f<2*b;f+=2)d[f]=K[c+4*f>>2],d[f+1]=K[c+(4*f+4)>>2];else d=K.subarray(c>>2,c+8*b>>2);S.uniform2iv(W(a),d)}},Ea:function(a, +b,c,d){S.uniform3f(W(a),b,c,d)},Da:function(a,b,c){if(2<=v.version)b&&S.uniform3fv(W(a),N,c>>2,3*b);else{if(96>=b)for(var d=Bd[3*b-1],f=0;f<3*b;f+=3)d[f]=N[c+4*f>>2],d[f+1]=N[c+(4*f+4)>>2],d[f+2]=N[c+(4*f+8)>>2];else d=N.subarray(c>>2,c+12*b>>2);S.uniform3fv(W(a),d)}},Ca:function(a,b,c,d){S.uniform3i(W(a),b,c,d)},Ba:function(a,b,c){if(2<=v.version)b&&S.uniform3iv(W(a),K,c>>2,3*b);else{if(96>=b)for(var d=Cd[3*b-1],f=0;f<3*b;f+=3)d[f]=K[c+4*f>>2],d[f+1]=K[c+(4*f+4)>>2],d[f+2]=K[c+(4*f+8)>>2];else d= +K.subarray(c>>2,c+12*b>>2);S.uniform3iv(W(a),d)}},Aa:function(a,b,c,d,f){S.uniform4f(W(a),b,c,d,f)},za:function(a,b,c){if(2<=v.version)b&&S.uniform4fv(W(a),N,c>>2,4*b);else{if(72>=b){var d=Bd[4*b-1],f=N;c>>=2;for(var k=0;k<4*b;k+=4){var l=c+k;d[k]=f[l];d[k+1]=f[l+1];d[k+2]=f[l+2];d[k+3]=f[l+3]}}else d=N.subarray(c>>2,c+16*b>>2);S.uniform4fv(W(a),d)}},ya:function(a,b,c,d,f){S.uniform4i(W(a),b,c,d,f)},xa:function(a,b,c){if(2<=v.version)b&&S.uniform4iv(W(a),K,c>>2,4*b);else{if(72>=b)for(var d=Cd[4*b- +1],f=0;f<4*b;f+=4)d[f]=K[c+4*f>>2],d[f+1]=K[c+(4*f+4)>>2],d[f+2]=K[c+(4*f+8)>>2],d[f+3]=K[c+(4*f+12)>>2];else d=K.subarray(c>>2,c+16*b>>2);S.uniform4iv(W(a),d)}},wa:function(a,b,c,d){if(2<=v.version)b&&S.uniformMatrix2fv(W(a),!!c,N,d>>2,4*b);else{if(72>=b)for(var f=Bd[4*b-1],k=0;k<4*b;k+=4)f[k]=N[d+4*k>>2],f[k+1]=N[d+(4*k+4)>>2],f[k+2]=N[d+(4*k+8)>>2],f[k+3]=N[d+(4*k+12)>>2];else f=N.subarray(d>>2,d+16*b>>2);S.uniformMatrix2fv(W(a),!!c,f)}},va:function(a,b,c,d){if(2<=v.version)b&&S.uniformMatrix3fv(W(a), +!!c,N,d>>2,9*b);else{if(32>=b)for(var f=Bd[9*b-1],k=0;k<9*b;k+=9)f[k]=N[d+4*k>>2],f[k+1]=N[d+(4*k+4)>>2],f[k+2]=N[d+(4*k+8)>>2],f[k+3]=N[d+(4*k+12)>>2],f[k+4]=N[d+(4*k+16)>>2],f[k+5]=N[d+(4*k+20)>>2],f[k+6]=N[d+(4*k+24)>>2],f[k+7]=N[d+(4*k+28)>>2],f[k+8]=N[d+(4*k+32)>>2];else f=N.subarray(d>>2,d+36*b>>2);S.uniformMatrix3fv(W(a),!!c,f)}},ua:function(a,b,c,d){if(2<=v.version)b&&S.uniformMatrix4fv(W(a),!!c,N,d>>2,16*b);else{if(18>=b){var f=Bd[16*b-1],k=N;d>>=2;for(var l=0;l<16*b;l+=16){var m=d+l;f[l]= +k[m];f[l+1]=k[m+1];f[l+2]=k[m+2];f[l+3]=k[m+3];f[l+4]=k[m+4];f[l+5]=k[m+5];f[l+6]=k[m+6];f[l+7]=k[m+7];f[l+8]=k[m+8];f[l+9]=k[m+9];f[l+10]=k[m+10];f[l+11]=k[m+11];f[l+12]=k[m+12];f[l+13]=k[m+13];f[l+14]=k[m+14];f[l+15]=k[m+15]}}else f=N.subarray(d>>2,d+64*b>>2);S.uniformMatrix4fv(W(a),!!c,f)}},ta:function(a){a=Xc[a];S.useProgram(a);S.We=a},sa:function(a,b){S.vertexAttrib1f(a,b)},ra:function(a,b){S.vertexAttrib2f(a,N[b>>2],N[b+4>>2])},qa:function(a,b){S.vertexAttrib3f(a,N[b>>2],N[b+4>>2],N[b+8>>2])}, +pa:function(a,b){S.vertexAttrib4f(a,N[b>>2],N[b+4>>2],N[b+8>>2],N[b+12>>2])},oa:function(a,b){S.vertexAttribDivisor(a,b)},na:function(a,b,c,d,f){S.vertexAttribIPointer(a,b,c,d,f)},ma:function(a,b,c,d,f,k){S.vertexAttribPointer(a,b,c,!!d,f,k)},la:function(a,b,c,d){S.viewport(a,b,c,d)},ba:function(a,b,c,d){S.waitSync(cd[a],b,(c>>>0)+4294967296*d)},n:Nd,u:Od,k:Pd,J:Qd,R:Rd,Q:Sd,x:Td,y:Ud,o:Vd,w:Wd,ka:Xd,ja:Yd,ia:Zd,aa:(a,b,c,d)=>Hd(a,b,c,d)}; +(function(){function a(c){G=c=c.exports;Fa=G.ad;La();Na=G.cd;Pa.unshift(G.bd);Ua--;r.monitorRunDependencies&&r.monitorRunDependencies(Ua);if(0==Ua&&(null!==Va&&(clearInterval(Va),Va=null),Wa)){var d=Wa;Wa=null;d()}return c}var b={a:$d};Ua++;r.monitorRunDependencies&&r.monitorRunDependencies(Ua);if(r.instantiateWasm)try{return r.instantiateWasm(b,a)}catch(c){Ca("Module.instantiateWasm callback failed with error: "+c),ba(c)}cb(b,function(c){a(c.instance)}).catch(ba);return{}})(); +var qc=r._free=a=>(qc=r._free=G.dd)(a),wd=r._malloc=a=>(wd=r._malloc=G.ed)(a),pc=a=>(pc=G.fd)(a);r.__embind_initialize_bindings=()=>(r.__embind_initialize_bindings=G.gd)();var ae=(a,b)=>(ae=G.hd)(a,b),be=()=>(be=G.id)(),ce=a=>(ce=G.jd)(a);r.dynCall_viji=(a,b,c,d,f)=>(r.dynCall_viji=G.ld)(a,b,c,d,f);r.dynCall_vijiii=(a,b,c,d,f,k,l)=>(r.dynCall_vijiii=G.md)(a,b,c,d,f,k,l);r.dynCall_viiiiij=(a,b,c,d,f,k,l,m)=>(r.dynCall_viiiiij=G.nd)(a,b,c,d,f,k,l,m); +r.dynCall_iiiji=(a,b,c,d,f,k)=>(r.dynCall_iiiji=G.od)(a,b,c,d,f,k);r.dynCall_jii=(a,b,c)=>(r.dynCall_jii=G.pd)(a,b,c);r.dynCall_vij=(a,b,c,d)=>(r.dynCall_vij=G.qd)(a,b,c,d);r.dynCall_iiij=(a,b,c,d,f)=>(r.dynCall_iiij=G.rd)(a,b,c,d,f);r.dynCall_iiiij=(a,b,c,d,f,k)=>(r.dynCall_iiiij=G.sd)(a,b,c,d,f,k);r.dynCall_viij=(a,b,c,d,f)=>(r.dynCall_viij=G.td)(a,b,c,d,f);r.dynCall_viiij=(a,b,c,d,f,k)=>(r.dynCall_viiij=G.ud)(a,b,c,d,f,k);r.dynCall_ji=(a,b)=>(r.dynCall_ji=G.vd)(a,b); +r.dynCall_iij=(a,b,c,d)=>(r.dynCall_iij=G.wd)(a,b,c,d);r.dynCall_jiiiiii=(a,b,c,d,f,k,l)=>(r.dynCall_jiiiiii=G.xd)(a,b,c,d,f,k,l);r.dynCall_jiiiiji=(a,b,c,d,f,k,l,m)=>(r.dynCall_jiiiiji=G.yd)(a,b,c,d,f,k,l,m);r.dynCall_iijj=(a,b,c,d,f,k)=>(r.dynCall_iijj=G.zd)(a,b,c,d,f,k);r.dynCall_iiji=(a,b,c,d,f)=>(r.dynCall_iiji=G.Ad)(a,b,c,d,f);r.dynCall_iijjiii=(a,b,c,d,f,k,l,m,p)=>(r.dynCall_iijjiii=G.Bd)(a,b,c,d,f,k,l,m,p); +r.dynCall_vijjjii=(a,b,c,d,f,k,l,m,p,w)=>(r.dynCall_vijjjii=G.Cd)(a,b,c,d,f,k,l,m,p,w);r.dynCall_jiji=(a,b,c,d,f)=>(r.dynCall_jiji=G.Dd)(a,b,c,d,f);r.dynCall_viijii=(a,b,c,d,f,k,l)=>(r.dynCall_viijii=G.Ed)(a,b,c,d,f,k,l);r.dynCall_iiiiij=(a,b,c,d,f,k,l)=>(r.dynCall_iiiiij=G.Fd)(a,b,c,d,f,k,l);r.dynCall_iiiiijj=(a,b,c,d,f,k,l,m,p)=>(r.dynCall_iiiiijj=G.Gd)(a,b,c,d,f,k,l,m,p);r.dynCall_iiiiiijj=(a,b,c,d,f,k,l,m,p,w)=>(r.dynCall_iiiiiijj=G.Hd)(a,b,c,d,f,k,l,m,p,w); +function Wd(a,b,c,d,f){var k=be();try{Na.get(a)(b,c,d,f)}catch(l){ce(k);if(l!==l+0)throw l;ae(1,0)}}function Od(a,b,c){var d=be();try{return Na.get(a)(b,c)}catch(f){ce(d);if(f!==f+0)throw f;ae(1,0)}}function Ud(a,b,c){var d=be();try{Na.get(a)(b,c)}catch(f){ce(d);if(f!==f+0)throw f;ae(1,0)}}function Nd(a,b){var c=be();try{return Na.get(a)(b)}catch(d){ce(c);if(d!==d+0)throw d;ae(1,0)}}function Td(a,b){var c=be();try{Na.get(a)(b)}catch(d){ce(c);if(d!==d+0)throw d;ae(1,0)}} +function Pd(a,b,c,d){var f=be();try{return Na.get(a)(b,c,d)}catch(k){ce(f);if(k!==k+0)throw k;ae(1,0)}}function Zd(a,b,c,d,f,k,l,m,p,w){var y=be();try{Na.get(a)(b,c,d,f,k,l,m,p,w)}catch(B){ce(y);if(B!==B+0)throw B;ae(1,0)}}function Vd(a,b,c,d){var f=be();try{Na.get(a)(b,c,d)}catch(k){ce(f);if(k!==k+0)throw k;ae(1,0)}}function Yd(a,b,c,d,f,k,l){var m=be();try{Na.get(a)(b,c,d,f,k,l)}catch(p){ce(m);if(p!==p+0)throw p;ae(1,0)}} +function Qd(a,b,c,d,f){var k=be();try{return Na.get(a)(b,c,d,f)}catch(l){ce(k);if(l!==l+0)throw l;ae(1,0)}}function Rd(a,b,c,d,f,k,l){var m=be();try{return Na.get(a)(b,c,d,f,k,l)}catch(p){ce(m);if(p!==p+0)throw p;ae(1,0)}}function Xd(a,b,c,d,f,k){var l=be();try{Na.get(a)(b,c,d,f,k)}catch(m){ce(l);if(m!==m+0)throw m;ae(1,0)}}function Sd(a,b,c,d,f,k,l,m,p,w){var y=be();try{return Na.get(a)(b,c,d,f,k,l,m,p,w)}catch(B){ce(y);if(B!==B+0)throw B;ae(1,0)}}var de;Wa=function ee(){de||fe();de||(Wa=ee)}; +function fe(){function a(){if(!de&&(de=!0,r.calledRun=!0,!Ga)){eb(Pa);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();Qa.unshift(b)}eb(Qa)}}if(!(0 CanvasKitInit); diff --git a/canvaskit/canvaskit.js.symbols b/canvaskit/canvaskit.js.symbols new file mode 100644 index 000000000..af742adee --- /dev/null +++ b/canvaskit/canvaskit.js.symbols @@ -0,0 +1,11847 @@ +0:_embind_register_class_function +1:_embind_register_enum_value +2:_emval_decref +3:_embind_register_value_object_field +4:_embind_register_class_class_function +5:_emval_new_cstring +6:_emval_take_value +7:abort +8:_emval_set_property +9:_embind_register_enum +10:invoke_iiii +11:_embind_register_class +12:_emval_incref +13:invoke_ii +14:invoke_viii +15:_emval_get_method_caller +16:_embind_register_smart_ptr +17:_embind_register_memory_view +18:_embind_register_constant +19:_emval_call_void_method +20:invoke_iii +21:_embind_register_function +22:invoke_viiii +23:invoke_vi +24:invoke_vii +25:_emval_run_destructors +26:_emval_get_property +27:_embind_register_class_constructor +28:_embind_register_value_object +29:_embind_register_integer +30:_embind_finalize_value_object +31:_emval_new_object +32:_emval_as +33:__cxa_throw +34:_emval_new_array +35:invoke_iiiii +36:glGetIntegerv +37:_emval_new +38:_emval_get_global +39:_emval_call_method +40:_embind_register_std_wstring +41:__wasi_fd_close +42:invoke_iiiiiiiiii +43:invoke_iiiiiii +44:glGetString +45:glClearStencil +46:glClearColor +47:glClear +48:glBindFramebuffer +49:_embind_register_std_string +50:_embind_register_float +51:__wasi_fd_write +52:__syscall_openat +53:__syscall_fcntl64 +54:strftime_l +55:legalimport$glWaitSync +56:legalimport$glClientWaitSync +57:legalimport$_munmap_js +58:legalimport$_mmap_js +59:legalimport$_embind_register_bigint +60:legalimport$__wasi_fd_seek +61:legalimport$__wasi_fd_pread +62:invoke_viiiiiiiii +63:invoke_viiiiii +64:invoke_viiiii +65:glViewport +66:glVertexAttribPointer +67:glVertexAttribIPointer +68:glVertexAttribDivisor +69:glVertexAttrib4fv +70:glVertexAttrib3fv +71:glVertexAttrib2fv +72:glVertexAttrib1f +73:glUseProgram +74:glUniformMatrix4fv +75:glUniformMatrix3fv +76:glUniformMatrix2fv +77:glUniform4iv +78:glUniform4i +79:glUniform4fv +80:glUniform4f +81:glUniform3iv +82:glUniform3i +83:glUniform3fv +84:glUniform3f +85:glUniform2iv +86:glUniform2i +87:glUniform2fv +88:glUniform2f +89:glUniform1iv +90:glUniform1i +91:glUniform1fv +92:glUniform1f +93:glTexSubImage2D +94:glTexStorage2D +95:glTexParameteriv +96:glTexParameteri +97:glTexParameterfv +98:glTexParameterf +99:glTexImage2D +100:glStencilOpSeparate +101:glStencilOp +102:glStencilMaskSeparate +103:glStencilMask +104:glStencilFuncSeparate +105:glStencilFunc +106:glShaderSource +107:glScissor +108:glSamplerParameteriv +109:glSamplerParameteri +110:glSamplerParameterf +111:glRenderbufferStorageMultisample +112:glRenderbufferStorage +113:glReadPixels +114:glReadBuffer +115:glPixelStorei +116:glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL +117:glMultiDrawArraysInstancedBaseInstanceWEBGL +118:glLinkProgram +119:glLineWidth +120:glIsTexture +121:glIsSync +122:glInvalidateSubFramebuffer +123:glInvalidateFramebuffer +124:glGetUniformLocation +125:glGetStringi +126:glGetShaderiv +127:glGetShaderPrecisionFormat +128:glGetShaderInfoLog +129:glGetRenderbufferParameteriv +130:glGetProgramiv +131:glGetProgramInfoLog +132:glGetFramebufferAttachmentParameteriv +133:glGetFloatv +134:glGetError +135:glGetBufferParameteriv +136:glGenerateMipmap +137:glGenVertexArraysOES +138:glGenVertexArrays +139:glGenTextures +140:glGenSamplers +141:glGenRenderbuffers +142:glGenFramebuffers +143:glGenBuffers +144:glFrontFace +145:glFramebufferTexture2D +146:glFramebufferRenderbuffer +147:glFlush +148:glFinish +149:glFenceSync +150:glEnableVertexAttribArray +151:glEnable +152:glDrawRangeElements +153:glDrawElementsInstancedBaseVertexBaseInstanceWEBGL +154:glDrawElementsInstanced +155:glDrawElements +156:glDrawBuffers +157:glDrawArraysInstancedBaseInstanceWEBGL +158:glDrawArraysInstanced +159:glDrawArrays +160:glDisableVertexAttribArray +161:glDisable +162:glDepthMask +163:glDeleteVertexArraysOES +164:glDeleteVertexArrays +165:glDeleteTextures +166:glDeleteSync +167:glDeleteShader +168:glDeleteSamplers +169:glDeleteRenderbuffers +170:glDeleteProgram +171:glDeleteFramebuffers +172:glDeleteBuffers +173:glCullFace +174:glCreateShader +175:glCreateProgram +176:glCopyTexSubImage2D +177:glCopyBufferSubData +178:glCompressedTexSubImage2D +179:glCompressedTexImage2D +180:glCompileShader +181:glColorMask +182:glCheckFramebufferStatus +183:glBufferSubData +184:glBufferData +185:glBlitFramebuffer +186:glBlendFunc +187:glBlendEquation +188:glBlendColor +189:glBindVertexArrayOES +190:glBindVertexArray +191:glBindTexture +192:glBindSampler +193:glBindRenderbuffer +194:glBindBuffer +195:glBindAttribLocation +196:glAttachShader +197:glActiveTexture +198:exit +199:emscripten_webgl_get_current_context +200:emscripten_resize_heap +201:emscripten_get_now +202:_emval_not +203:_emscripten_throw_longjmp +204:_emscripten_get_now_is_monotonic +205:_embind_register_void +206:_embind_register_emval +207:_embind_register_bool +208:__wasi_fd_read +209:__wasi_environ_sizes_get +210:__wasi_environ_get +211:__syscall_stat64 +212:__syscall_newfstatat +213:__syscall_lstat64 +214:__syscall_ioctl +215:__syscall_fstat64 +216:dlfree +217:operator\20new\28unsigned\20long\29 +218:void\20emscripten::internal::raw_destructor\28SkColorSpace*\29 +219:__memcpy +220:SkString::~SkString\28\29 +221:__memset +222:GrGLSLShaderBuilder::codeAppendf\28char\20const*\2c\20...\29 +223:uprv_free_73 +224:SkColorInfo::~SkColorInfo\28\29 +225:memcmp +226:SkContainerAllocator::allocate\28int\2c\20double\29 +227:SkString::SkString\28\29 +228:SkDebugf\28char\20const*\2c\20...\29 +229:SkString::insert\28unsigned\20long\2c\20char\20const*\29 +230:memmove +231:SkData::~SkData\28\29 +232:hb_blob_destroy +233:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\29 +234:sk_report_container_overflow_and_die\28\29 +235:SkPath::~SkPath\28\29 +236:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::~__func\28\29 +237:uprv_malloc_73 +238:SkArenaAlloc::ensureSpace\28unsigned\20int\2c\20unsigned\20int\29 +239:strlen +240:SkRasterPipeline::append\28SkRasterPipelineOp\2c\20void*\29 +241:ft_mem_free +242:SkString::SkString\28char\20const*\29 +243:FT_MulFix +244:strcmp +245:emscripten::default_smart_ptr_trait>::share\28void*\29 +246:SkSL::ErrorReporter::error\28SkSL::Position\2c\20std::__2::basic_string_view>\29 +247:SkTDStorage::append\28\29 +248:SkMatrix::computeTypeMask\28\29\20const +249:GrGpuResource::notifyARefCntIsZero\28GrIORef::LastRemovedRef\29\20const +250:SkWriter32::growToAtLeast\28unsigned\20long\29 +251:testSetjmp +252:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\2c\20unsigned\20long\29 +253:std::__2::basic_string\2c\20std::__2::allocator>::size\5babi:v160004\5d\28\29\20const +254:fmaxf +255:SkString::SkString\28SkString&&\29 +256:std::__2::basic_string\2c\20std::__2::allocator>::__throw_length_error\5babi:v160004\5d\28\29\20const +257:std::__2::__shared_weak_count::__release_weak\28\29 +258:SkSL::Pool::AllocMemory\28unsigned\20long\29 +259:GrColorInfo::~GrColorInfo\28\29 +260:SkIRect::intersect\28SkIRect\20const&\2c\20SkIRect\20const&\29 +261:GrBackendFormat::~GrBackendFormat\28\29 +262:icu_73::UnicodeString::~UnicodeString\28\29 +263:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\29 +264:GrContext_Base::caps\28\29\20const +265:SkPaint::~SkPaint\28\29 +266:std::__2::vector>::__throw_length_error\5babi:v160004\5d\28\29\20const +267:strncmp +268:SkTDStorage::~SkTDStorage\28\29 +269:sk_malloc_throw\28unsigned\20long\2c\20unsigned\20long\29 +270:SkTDStorage::SkTDStorage\28int\29 +271:SkSL::RP::Generator::pushExpression\28SkSL::Expression\20const&\2c\20bool\29 +272:SkString::SkString\28SkString\20const&\29 +273:SkStrokeRec::getStyle\28\29\20const +274:icu_73::UMemory::operator\20delete\28void*\29 +275:void\20emscripten::internal::raw_destructor\28SkContourMeasure*\29 +276:hb_ot_map_builder_t::add_feature\28unsigned\20int\2c\20hb_ot_map_feature_flags_t\2c\20unsigned\20int\29 +277:SkMatrix::mapRect\28SkRect*\2c\20SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +278:SkFontMgr*\20emscripten::base::convertPointer\28skia::textlayout::TypefaceFontProvider*\29 +279:SkArenaAlloc::installFooter\28char*\20\28*\29\28char*\29\2c\20unsigned\20int\29 +280:hb_buffer_t::make_room_for\28unsigned\20int\2c\20unsigned\20int\29 +281:SkArenaAlloc::allocObjectWithFooter\28unsigned\20int\2c\20unsigned\20int\29 +282:fminf +283:SkSemaphore::osSignal\28int\29 +284:icu_73::CharString::append\28char\20const*\2c\20int\2c\20UErrorCode&\29 +285:SkString::operator=\28SkString&&\29 +286:skia_private::TArray::push_back\28SkPoint\20const&\29 +287:SkBitmap::~SkBitmap\28\29 +288:SkSL::Parser::nextRawToken\28\29 +289:SkPath::SkPath\28\29 +290:skia_png_error +291:hb_buffer_t::message\28hb_font_t*\2c\20char\20const*\2c\20...\29 +292:SkArenaAlloc::~SkArenaAlloc\28\29 +293:SkMatrix::computePerspectiveTypeMask\28\29\20const +294:SkSemaphore::osWait\28\29 +295:SkColorInfo::SkColorInfo\28SkColorInfo\20const&\29 +296:SkIntersections::insert\28double\2c\20double\2c\20SkDPoint\20const&\29 +297:dlmalloc +298:FT_DivFix +299:SkString::appendf\28char\20const*\2c\20...\29 +300:uprv_isASCIILetter_73 +301:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +302:SkChecksum::Hash32\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20int\29 +303:std::__throw_bad_array_new_length\5babi:v160004\5d\28\29 +304:skia_png_free +305:SkPath::lineTo\28float\2c\20float\29 +306:skia_png_crc_finish +307:skia_png_chunk_benign_error +308:icu_73::StringPiece::StringPiece\28char\20const*\29 +309:SkReadBuffer::readUInt\28\29 +310:utext_getNativeIndex_73 +311:utext_setNativeIndex_73 +312:SkReadBuffer::setInvalid\28\29 +313:SkMatrix::setTranslate\28float\2c\20float\29 +314:SkMatrix::mapPoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +315:dlrealloc +316:ures_closeBundle\28UResourceBundle*\2c\20signed\20char\29 +317:skia_png_warning +318:SkBlitter::~SkBlitter\28\29 +319:OT::VarData::get_delta\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20OT::VarRegionList\20const&\2c\20float*\29\20const +320:ft_mem_qrealloc +321:SkPaint::SkPaint\28SkPaint\20const&\29 +322:SkColorInfo::bytesPerPixel\28\29\20const +323:GrVertexChunkBuilder::allocChunk\28int\29 +324:OT::DeltaSetIndexMap::map\28unsigned\20int\29\20const +325:strchr +326:ft_mem_realloc +327:strstr +328:SkMatrix::reset\28\29 +329:SkImageInfo::MakeUnknown\28int\2c\20int\29 +330:GrSurfaceProxyView::asRenderTargetProxy\28\29\20const +331:skia_private::TArray::push_back\28unsigned\20char&&\29 +332:skia_private::TArray::push_back\28unsigned\20long\20const&\29 +333:SkSL::RP::Builder::appendInstruction\28SkSL::RP::BuilderOp\2c\20SkSL::RP::Builder::SlotList\2c\20int\2c\20int\2c\20int\2c\20int\29 +334:SkPath::SkPath\28SkPath\20const&\29 +335:ft_validator_error +336:SkPaint::SkPaint\28\29 +337:SkOpPtT::segment\28\29\20const +338:SkBitmap::SkBitmap\28\29 +339:skia_private::TArray\2c\20true>::push_back\28sk_sp&&\29 +340:sk_malloc_flags\28unsigned\20long\2c\20unsigned\20int\29 +341:SkSL::Parser::expect\28SkSL::Token::Kind\2c\20char\20const*\2c\20SkSL::Token*\29 +342:std::__2::basic_string\2c\20std::__2::allocator>::__get_pointer\5babi:v160004\5d\28\29 +343:SkMatrix::invertNonIdentity\28SkMatrix*\29\20const +344:GrTextureGenerator::isTextureGenerator\28\29\20const +345:dlcalloc +346:skia_png_get_uint_32 +347:skia_png_calculate_crc +348:SkImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +349:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul>::__dispatch\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\29 +350:std::__2::basic_string\2c\20std::__2::allocator>::resize\5babi:v160004\5d\28unsigned\20long\29 +351:SkSL::GLSLCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +352:SkPoint::Length\28float\2c\20float\29 +353:GrImageInfo::GrImageInfo\28GrImageInfo\20const&\29 +354:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +355:uhash_close_73 +356:std::__2::locale::~locale\28\29 +357:skgpu::Swizzle::Swizzle\28char\20const*\29 +358:SkPath::getBounds\28\29\20const +359:SkLoadICULib\28\29 +360:ucptrie_internalSmallIndex_73 +361:skia_private::TArray>\2c\20true>::operator=\28skia_private::TArray>\2c\20true>&&\29 +362:skia_private::TArray::push_back\28SkString&&\29 +363:FT_Stream_Seek +364:SkRect::join\28SkRect\20const&\29 +365:SkPathRef::Editor::Editor\28sk_sp*\2c\20int\2c\20int\29 +366:skia_private::TArray::push_back\28SkSL::RP::Instruction&&\29 +367:hb_blob_reference +368:cf2_stack_popFixed +369:SkRect::setBoundsCheck\28SkPoint\20const*\2c\20int\29 +370:SkRect::intersect\28SkRect\20const&\29 +371:GrGLExtensions::has\28char\20const*\29\20const +372:SkCachedData::internalUnref\28bool\29\20const +373:GrProcessor::operator\20new\28unsigned\20long\29 +374:FT_MulDiv +375:strcpy +376:std::__2::__throw_bad_function_call\5babi:v160004\5d\28\29 +377:SkJSONWriter::appendName\28char\20const*\29 +378:SkRasterPipeline::uncheckedAppend\28SkRasterPipelineOp\2c\20void*\29 +379:std::__2::to_string\28int\29 +380:std::__2::ios_base::getloc\28\29\20const +381:icu_73::UnicodeString::doAppend\28char16_t\20const*\2c\20int\2c\20int\29 +382:SkRegion::~SkRegion\28\29 +383:skia_png_read_push_finish_row +384:skia::textlayout::TextStyle::~TextStyle\28\29 +385:icu_73::CharString::append\28char\2c\20UErrorCode&\29 +386:hb_blob_make_immutable +387:SkString::operator=\28char\20const*\29 +388:hb_ot_map_builder_t::add_pause\28unsigned\20int\2c\20bool\20\28*\29\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29\29 +389:cff1_path_procs_extents_t::curve\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +390:VP8GetValue +391:SkSemaphore::~SkSemaphore\28\29 +392:SkSL::ThreadContext::ReportError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +393:SkSL::String::printf\28char\20const*\2c\20...\29 +394:SkJSONWriter::beginValue\28bool\29 +395:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28\29 +396:skgpu::ganesh::SurfaceContext::caps\28\29\20const +397:icu_73::UnicodeSet::~UnicodeSet\28\29 +398:icu_73::UnicodeSet::contains\28int\29\20const +399:SkSL::Type::matches\28SkSL::Type\20const&\29\20const +400:SkPoint::normalize\28\29 +401:SkColorInfo::operator=\28SkColorInfo\20const&\29 +402:SkArenaAlloc::SkArenaAlloc\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +403:FT_Stream_ReadUShort +404:jdiv_round_up +405:SkSL::RP::Builder::binary_op\28SkSL::RP::BuilderOp\2c\20int\29 +406:SkImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +407:SkColorInfo::operator=\28SkColorInfo&&\29 +408:utext_next32_73 +409:umtx_unlock_73 +410:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +411:jzero_far +412:hb_blob_get_data_writable +413:SkColorInfo::SkColorInfo\28SkColorInfo&&\29 +414:skia_png_write_data +415:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +416:SkRuntimeEffect::uniformSize\28\29\20const +417:FT_Stream_ExitFrame +418:subtag_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +419:skia_private::TArray::push_back_raw\28int\29 +420:__shgetc +421:SkBlitter::~SkBlitter\28\29.1 +422:FT_Stream_GetUShort +423:uhash_get_73 +424:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28wchar_t\20const*\29 +425:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28char\20const*\29 +426:sktext::gpu::BagOfBytes::~BagOfBytes\28\29 +427:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +428:SkPoint::scale\28float\2c\20SkPoint*\29\20const +429:SkPathRef::growForVerb\28int\2c\20float\29 +430:SkNullBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +431:SkMatrix::setConcat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +432:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20char\20const*\2c\20char\20const*\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +433:skia_png_chunk_error +434:hb_face_reference_table +435:GrSurfaceProxyView::asTextureProxy\28\29\20const +436:umtx_lock_73 +437:sscanf +438:icu_73::UVector32::expandCapacity\28int\2c\20UErrorCode&\29 +439:SkStringPrintf\28char\20const*\2c\20...\29 +440:SkSL::SymbolTable::addWithoutOwnershipOrDie\28SkSL::Symbol*\29 +441:RoughlyEqualUlps\28float\2c\20float\29 +442:GrGLSLVaryingHandler::addVarying\28char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVaryingHandler::Interpolation\29 +443:SkTDStorage::reserve\28int\29 +444:SkPath::Iter::next\28SkPoint*\29 +445:OT::Layout::Common::Coverage::get_coverage\28unsigned\20int\29\20const +446:round +447:SkRecord::grow\28\29 +448:SkRGBA4f<\28SkAlphaType\293>::toBytes_RGBA\28\29\20const +449:GrQuad::MakeFromRect\28SkRect\20const&\2c\20SkMatrix\20const&\29 +450:GrProcessor::operator\20new\28unsigned\20long\2c\20unsigned\20long\29 +451:skgpu::ganesh::SurfaceDrawContext::addDrawOp\28GrClip\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::function\20const&\29 +452:skgpu::ResourceKeyHash\28unsigned\20int\20const*\2c\20unsigned\20long\29 +453:icu_73::UVector::elementAt\28int\29\20const +454:VP8LoadFinalBytes +455:SkPath::moveTo\28float\2c\20float\29 +456:SkPath::conicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +457:SkCanvas::predrawNotify\28bool\29 +458:std::__2::__cloc\28\29 +459:SkSurfaceProps::SkSurfaceProps\28\29 +460:SkStrikeSpec::~SkStrikeSpec\28\29 +461:SkSL::RP::Builder::discard_stack\28int\2c\20int\29 +462:GrSkSLFP::GrSkSLFP\28sk_sp\2c\20char\20const*\2c\20GrSkSLFP::OptFlags\29 +463:GrBackendFormat::GrBackendFormat\28\29 +464:__multf3 +465:VP8LReadBits +466:SkTDStorage::append\28int\29 +467:SkPath::isFinite\28\29\20const +468:SkMatrix::setScale\28float\2c\20float\29 +469:GrOpsRenderPass::setScissorRect\28SkIRect\20const&\29 +470:GrOpsRenderPass::bindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +471:hb_draw_funcs_t::start_path\28void*\2c\20hb_draw_state_t&\29 +472:SkSL::TProgramVisitor::visitStatement\28SkSL::Statement\20const&\29 +473:SkPath::operator=\28SkPath\20const&\29 +474:SkIRect\20skif::Mapping::map\28SkIRect\20const&\2c\20SkMatrix\20const&\29 +475:SkColorSpaceXformSteps::SkColorSpaceXformSteps\28SkColorSpace\20const*\2c\20SkAlphaType\2c\20SkColorSpace\20const*\2c\20SkAlphaType\29 +476:GrSimpleMeshDrawOpHelper::~GrSimpleMeshDrawOpHelper\28\29 +477:GrProcessorSet::GrProcessorSet\28GrPaint&&\29 +478:GrCaps::getDefaultBackendFormat\28GrColorType\2c\20skgpu::Renderable\29\20const +479:GrBackendFormats::AsGLFormat\28GrBackendFormat\20const&\29 +480:std::__2::locale::id::__get\28\29 +481:std::__2::locale::facet::facet\5babi:v160004\5d\28unsigned\20long\29 +482:skia_private::TArray::push_back_raw\28int\29 +483:icu_73::umtx_initImplPreInit\28icu_73::UInitOnce&\29 +484:icu_73::umtx_initImplPostInit\28icu_73::UInitOnce&\29 +485:hb_buffer_t::_infos_set_glyph_flags\28hb_glyph_info_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +486:SkSL::PipelineStage::PipelineStageCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +487:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29 +488:SkSL::GLSLCodeGenerator::writeIdentifier\28std::__2::basic_string_view>\29 +489:SkPath::reset\28\29 +490:SkPath::isEmpty\28\29\20const +491:SkPaint::setStyle\28SkPaint::Style\29 +492:GrGeometryProcessor::AttributeSet::initImplicit\28GrGeometryProcessor::Attribute\20const*\2c\20int\29 +493:GrContext_Base::contextID\28\29\20const +494:FT_Stream_EnterFrame +495:AlmostEqualUlps\28float\2c\20float\29 +496:udata_close_73 +497:std::__2::locale::__imp::install\28std::__2::locale::facet*\2c\20long\29 +498:skia_png_read_data +499:SkSpinlock::contendedAcquire\28\29 +500:SkSL::evaluate_n_way_intrinsic\28SkSL::Context\20const&\2c\20SkSL::Expression\20const*\2c\20SkSL::Expression\20const*\2c\20SkSL::Expression\20const*\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29\20\28.18\29 +501:SkSL::FunctionDeclaration::description\28\29\20const +502:SkDPoint::approximatelyEqual\28SkDPoint\20const&\29\20const +503:GrOpsRenderPass::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +504:uprv_asciitolower_73 +505:ucln_common_registerCleanup_73 +506:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +507:skgpu::ganesh::SurfaceContext::drawingManager\28\29 +508:skgpu::UniqueKey::GenerateDomain\28\29 +509:hb_buffer_t::_set_glyph_flags\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +510:emscripten_longjmp +511:SkReadBuffer::readScalar\28\29 +512:SkDynamicMemoryWStream::write\28void\20const*\2c\20unsigned\20long\29 +513:GrSurfaceProxy::backingStoreDimensions\28\29\20const +514:GrMeshDrawOp::GrMeshDrawOp\28unsigned\20int\29 +515:FT_RoundFix +516:uprv_realloc_73 +517:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +518:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28unsigned\20char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +519:icu_73::UnicodeSet::UnicodeSet\28\29 +520:hb_face_get_glyph_count +521:cf2_stack_pushFixed +522:__multi3 +523:SkSL::RP::Builder::push_duplicates\28int\29 +524:SkSL::ConstructorCompound::MakeFromConstants\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20double\20const*\29 +525:SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +526:SkNullBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +527:SkMatrix::postTranslate\28float\2c\20float\29 +528:SkBlockAllocator::reset\28\29 +529:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20SkFilterMode\2c\20SkMipmapMode\29 +530:GrGLSLVaryingHandler::addPassThroughAttribute\28GrShaderVar\20const&\2c\20char\20const*\2c\20GrGLSLVaryingHandler::Interpolation\29 +531:GrFragmentProcessor::registerChild\28std::__2::unique_ptr>\2c\20SkSL::SampleUsage\29 +532:FT_Stream_ReleaseFrame +533:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +534:skia::textlayout::TextStyle::TextStyle\28skia::textlayout::TextStyle\20const&\29 +535:hb_buffer_t::merge_clusters_impl\28unsigned\20int\2c\20unsigned\20int\29 +536:decltype\28fp.sanitize\28this\29\29\20hb_sanitize_context_t::_dispatch\28OT::Layout::Common::Coverage\20const&\2c\20hb_priority<1u>\29 +537:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +538:SkWStream::writePackedUInt\28unsigned\20long\29 +539:SkSurface_Base::aboutToDraw\28SkSurface::ContentChangeMode\29 +540:SkSL::RP::Builder::push_constant_i\28int\2c\20int\29 +541:SkSL::Pool::FreeMemory\28void*\29 +542:SkSL::BreakStatement::~BreakStatement\28\29 +543:SkColorInfo::refColorSpace\28\29\20const +544:SkBitmapDevice::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +545:GrPipeline::visitProxies\28std::__2::function\20const&\29\20const +546:GrGeometryProcessor::GrGeometryProcessor\28GrProcessor::ClassID\29 +547:void\20emscripten::internal::raw_destructor\28GrDirectContext*\29 +548:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +549:icu_73::UnicodeSet::add\28int\2c\20int\29 +550:SkSL::fold_expression\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +551:SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0::operator\28\29\28SkSL::FunctionDefinition\20const*\2c\20SkSL::FunctionDefinition\20const*\29\20const +552:SkSL::RP::Generator::binaryOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +553:SkPaint::setShader\28sk_sp\29 +554:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b10\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +555:Cr_z_crc32 +556:skia_png_push_save_buffer +557:cosf +558:SkString::equals\28SkString\20const&\29\20const +559:SkSL::RP::Builder::unary_op\28SkSL::RP::BuilderOp\2c\20int\29 +560:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29 +561:SkBitmap::setImmutable\28\29 +562:GrProcessorSet::visitProxies\28std::__2::function\20const&\29\20const +563:GrGLTexture::target\28\29\20const +564:sk_srgb_singleton\28\29 +565:fma +566:SkString::operator=\28SkString\20const&\29 +567:SkShaderBase::SkShaderBase\28\29 +568:SkSL::RP::SlotManager::getVariableSlots\28SkSL::Variable\20const&\29 +569:SkPaint::SkPaint\28SkPaint&&\29 +570:SkDPoint::ApproximatelyEqual\28SkPoint\20const&\2c\20SkPoint\20const&\29 +571:SkBitmap::SkBitmap\28SkBitmap\20const&\29 +572:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28char\29 +573:skip_spaces +574:sk_realloc_throw\28void*\2c\20unsigned\20long\29 +575:cff2_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +576:cff1_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +577:bool\20OT::Layout::Common::Coverage::collect_coverage\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>>\28hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>*\29\20const +578:SkSL::Type::toCompound\28SkSL::Context\20const&\2c\20int\2c\20int\29\20const +579:SkPath::transform\28SkMatrix\20const&\2c\20SkPath*\2c\20SkApplyPerspectiveClip\29\20const +580:SkPath::quadTo\28float\2c\20float\2c\20float\2c\20float\29 +581:SkMatrix::mapVectors\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +582:SkBlockAllocator::addBlock\28int\2c\20int\29 +583:SkAAClipBlitter::~SkAAClipBlitter\28\29 +584:OT::hb_ot_apply_context_t::match_properties_mark\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +585:GrThreadSafeCache::VertexData::~VertexData\28\29 +586:GrShape::asPath\28SkPath*\2c\20bool\29\20const +587:GrShaderVar::appendDecl\28GrShaderCaps\20const*\2c\20SkString*\29\20const +588:GrPixmapBase::~GrPixmapBase\28\29 +589:GrGLSLVaryingHandler::emitAttributes\28GrGeometryProcessor\20const&\29 +590:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__push_back_slow_path>>\28std::__2::unique_ptr>&&\29 +591:std::__2::unique_ptr::reset\5babi:v160004\5d\28unsigned\20char*\29 +592:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +593:std::__2::basic_string\2c\20std::__2::allocator>::__init_copy_ctor_external\28char\20const*\2c\20unsigned\20long\29 +594:sktext::gpu::BagOfBytes::needMoreBytes\28int\2c\20int\29 +595:skcms_Transform +596:png_icc_profile_error +597:icu_73::UnicodeString::getChar32At\28int\29\20const +598:emscripten::smart_ptr_trait>::get\28sk_sp\20const&\29 +599:SkSL::evaluate_pairwise_intrinsic\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +600:SkSL::Type::MakeAliasType\28std::__2::basic_string_view>\2c\20SkSL::Type\20const&\29 +601:SkRasterClip::~SkRasterClip\28\29 +602:SkPixmap::reset\28SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +603:SkPath::countPoints\28\29\20const +604:SkPaint::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +605:SkPaint::canComputeFastBounds\28\29\20const +606:SkOpPtT::contains\28SkOpPtT\20const*\29\20const +607:SkOpAngle::segment\28\29\20const +608:SkMatrix::preConcat\28SkMatrix\20const&\29 +609:SkMasks::getRed\28unsigned\20int\29\20const +610:SkMasks::getGreen\28unsigned\20int\29\20const +611:SkMasks::getBlue\28unsigned\20int\29\20const +612:SkColorInfo::shiftPerPixel\28\29\20const +613:GrProcessorSet::~GrProcessorSet\28\29 +614:GrMeshDrawOp::createProgramInfo\28GrMeshDrawTarget*\29 +615:FT_Stream_ReadFields +616:AutoLayerForImageFilter::~AutoLayerForImageFilter\28\29 +617:ures_getByKey_73 +618:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +619:skia_private::TArray::push_back\28SkPaint\20const&\29 +620:saveSetjmp +621:operator==\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +622:icu_73::UnicodeSet::compact\28\29 +623:hb_face_t::load_num_glyphs\28\29\20const +624:fmodf +625:emscripten::internal::MethodInvoker::invoke\28int\20\28SkAnimatedImage::*\20const&\29\28\29\2c\20SkAnimatedImage*\29 +626:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +627:VP8GetSignedValue +628:SkSafeMath::Mul\28unsigned\20long\2c\20unsigned\20long\29 +629:SkSL::Type::MakeVectorType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\29 +630:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression\20const&\29 +631:SkRasterPipeline::SkRasterPipeline\28SkArenaAlloc*\29 +632:SkPoint::setLength\28float\29 +633:SkMatrix::postConcat\28SkMatrix\20const&\29 +634:SkImageGenerator::onIsValid\28GrRecordingContext*\29\20const +635:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +636:OT::GDEF::accelerator_t::mark_set_covers\28unsigned\20int\2c\20unsigned\20int\29\20const +637:GrTextureProxy::mipmapped\28\29\20const +638:GrGpuResource::~GrGpuResource\28\29 +639:FT_Stream_GetULong +640:FT_Get_Char_Index +641:Cr_z__tr_flush_bits +642:void\20emscripten::internal::MemberAccess::setWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20int\29 +643:uhash_setKeyDeleter_73 +644:uhash_put_73 +645:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +646:std::__2::__throw_overflow_error\5babi:v160004\5d\28char\20const*\29 +647:std::__2::__throw_bad_optional_access\5babi:v160004\5d\28\29 +648:sktext::SkStrikePromise::SkStrikePromise\28sktext::SkStrikePromise&&\29 +649:skia_png_chunk_report +650:skgpu::UniqueKey::operator=\28skgpu::UniqueKey\20const&\29 +651:sk_double_nearly_zero\28double\29 +652:int\20emscripten::internal::MemberAccess::getWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +653:icu_73::UnicodeString::tempSubString\28int\2c\20int\29\20const +654:hb_font_get_glyph +655:ft_mem_qalloc +656:fit_linear\28skcms_Curve\20const*\2c\20int\2c\20float\2c\20float*\2c\20float*\2c\20float*\29 +657:expf +658:emscripten::default_smart_ptr_trait>::construct_null\28\29 +659:_output_with_dotted_circle\28hb_buffer_t*\29 +660:WebPSafeMalloc +661:SkStream::readS32\28int*\29 +662:SkSL::GLSLCodeGenerator::getTypeName\28SkSL::Type\20const&\29 +663:SkRGBA4f<\28SkAlphaType\293>::FromColor\28unsigned\20int\29 +664:SkPath::Iter::Iter\28SkPath\20const&\2c\20bool\29 +665:SkPaint::setPathEffect\28sk_sp\29 +666:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_3::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +667:SkImageFilter::getInput\28int\29\20const +668:SkGlyph::rowBytes\28\29\20const +669:SkDrawable::getBounds\28\29 +670:SkDCubic::ptAtT\28double\29\20const +671:SkColorSpace::MakeSRGB\28\29 +672:SkColorInfo::SkColorInfo\28\29 +673:GrOpFlushState::drawMesh\28GrSimpleMesh\20const&\29 +674:GrImageInfo::GrImageInfo\28SkImageInfo\20const&\29 +675:DefaultGeoProc::Impl::~Impl\28\29 +676:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +677:uhash_init_73 +678:skia_private::THashMap::set\28char\20const*\2c\20unsigned\20int\29 +679:out +680:jpeg_fill_bit_buffer +681:icu_73::UnicodeString::setToBogus\28\29 +682:icu_73::UnicodeString::UnicodeString\28icu_73::UnicodeString\20const&\29 +683:icu_73::ReorderingBuffer::appendZeroCC\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29 +684:icu_73::CharStringByteSink::CharStringByteSink\28icu_73::CharString*\29 +685:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +686:SkString::data\28\29 +687:SkSL::Type::coerceExpression\28std::__2::unique_ptr>\2c\20SkSL::Context\20const&\29\20const +688:SkSL::Type::MakeGenericType\28char\20const*\2c\20SkSpan\2c\20SkSL::Type\20const*\29 +689:SkSL::ConstantFolder::GetConstantValueForVariable\28SkSL::Expression\20const&\29 +690:SkRegion::setRect\28SkIRect\20const&\29 +691:SkRegion::SkRegion\28\29 +692:SkRecords::FillBounds::adjustForSaveLayerPaints\28SkRect*\2c\20int\29\20const +693:SkPathStroker::lineTo\28SkPoint\20const&\2c\20SkPath::Iter\20const*\29 +694:SkPathRef::~SkPathRef\28\29 +695:SkPaint::setMaskFilter\28sk_sp\29 +696:SkPaint::setColor\28unsigned\20int\29 +697:SkOpContourBuilder::flush\28\29 +698:SkMatrix::setRectToRect\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkMatrix::ScaleToFit\29 +699:SkDrawable::getFlattenableType\28\29\20const +700:SkCanvas::restoreToCount\28int\29 +701:SkCanvas::internalQuickReject\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\29 +702:GrMatrixEffect::Make\28SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +703:u_strlen_73 +704:std::__2::char_traits::assign\28char&\2c\20char\20const&\29 +705:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +706:std::__2::__check_grouping\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int&\29 +707:skia_png_malloc +708:skgpu::ganesh::SurfaceDrawContext::drawFilledQuad\28GrClip\20const*\2c\20GrPaint&&\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\29 +709:png_write_complete_chunk +710:pad +711:icu_73::Locale::~Locale\28\29 +712:hb_lockable_set_t::fini\28hb_mutex_t&\29 +713:ft_mem_alloc +714:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20SkBlendMode\29 +715:__ashlti3 +716:SkWBuffer::writeNoSizeCheck\28void\20const*\2c\20unsigned\20long\29 +717:SkTCoincident::setPerp\28SkTCurve\20const&\2c\20double\2c\20SkDPoint\20const&\2c\20SkTCurve\20const&\29 +718:SkStrokeRec::SkStrokeRec\28SkStrokeRec::InitStyle\29 +719:SkString::printf\28char\20const*\2c\20...\29 +720:SkSL::Type::MakeMatrixType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\2c\20signed\20char\29 +721:SkSL::Operator::tightOperatorName\28\29\20const +722:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29 +723:SkReadBuffer::readColor4f\28SkRGBA4f<\28SkAlphaType\293>*\29 +724:SkPixmap::reset\28\29 +725:SkPath::cubicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +726:SkPath::close\28\29 +727:SkPaintToGrPaint\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +728:SkPaint::setColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\29 +729:SkPaint::setBlendMode\28SkBlendMode\29 +730:SkMatrix::mapXY\28float\2c\20float\2c\20SkPoint*\29\20const +731:SkGetICULib\28\29 +732:SkFindUnitQuadRoots\28float\2c\20float\2c\20float\2c\20float*\29 +733:SkDeque::push_back\28\29 +734:SkData::MakeWithCopy\28void\20const*\2c\20unsigned\20long\29 +735:SkCanvas::concat\28SkMatrix\20const&\29 +736:SkBinaryWriteBuffer::writeBool\28bool\29 +737:OT::hb_paint_context_t::return_t\20OT::Paint::dispatch\28OT::hb_paint_context_t*\29\20const +738:GrProgramInfo::GrProgramInfo\28GrCaps\20const&\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrGeometryProcessor\20const*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +739:GrPixmapBase::GrPixmapBase\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +740:GrColorInfo::GrColorInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\29 +741:FT_Outline_Translate +742:FT_Load_Glyph +743:FT_GlyphLoader_CheckPoints +744:DefaultGeoProc::~DefaultGeoProc\28\29 +745:u_memcpy_73 +746:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +747:std::__2::basic_string\2c\20std::__2::allocator>::__set_short_size\5babi:v160004\5d\28unsigned\20long\29 +748:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_size\5babi:v160004\5d\28unsigned\20long\29 +749:skcms_TransferFunction_eval +750:sinf +751:icu_73::UnicodeString::UnicodeString\28char16_t\20const*\29 +752:icu_73::BMPSet::~BMPSet\28\29.1 +753:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28GrDirectContext&\2c\20unsigned\20long\29\2c\20GrDirectContext*\2c\20unsigned\20long\29 +754:cbrtf +755:byn$mgfn-shared$std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28\29\20const +756:SkTextBlob::~SkTextBlob\28\29 +757:SkSL::TProgramVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +758:SkRasterPipeline::extend\28SkRasterPipeline\20const&\29 +759:SkPictureData::requiredPaint\28SkReadBuffer*\29\20const +760:SkMatrix::mapRadius\28float\29\20const +761:SkJSONWriter::appendf\28char\20const*\2c\20...\29 +762:SkData::MakeUninitialized\28unsigned\20long\29 +763:SkDQuad::RootsValidT\28double\2c\20double\2c\20double\2c\20double*\29 +764:SkDLine::nearPoint\28SkDPoint\20const&\2c\20bool*\29\20const +765:SkConic::chopIntoQuadsPOW2\28SkPoint*\2c\20int\29\20const +766:SkColorSpaceXformSteps::apply\28float*\29\20const +767:SkCodec::applyColorXform\28void*\2c\20void\20const*\2c\20int\29\20const +768:SkCanvas::~SkCanvas\28\29.1 +769:SkCachedData::internalRef\28bool\29\20const +770:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29 +771:GrSurface::RefCntedReleaseProc::~RefCntedReleaseProc\28\29 +772:GrStyle::initPathEffect\28sk_sp\29 +773:GrShape::bounds\28\29\20const +774:GrProcessor::operator\20delete\28void*\29 +775:GrGpuResource::hasRef\28\29\20const +776:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::~Impl\28\29 +777:GrBufferAllocPool::~GrBufferAllocPool\28\29.1 +778:AutoLayerForImageFilter::AutoLayerForImageFilter\28SkCanvas*\2c\20SkPaint\20const&\2c\20SkRect\20const*\2c\20bool\29 +779:u_terminateUChars_73 +780:std::__2::numpunct::thousands_sep\5babi:v160004\5d\28\29\20const +781:std::__2::numpunct::grouping\5babi:v160004\5d\28\29\20const +782:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +783:skia_png_malloc_warn +784:skia::textlayout::Cluster::run\28\29\20const +785:rewind\28GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +786:icu_73::UnicodeString::setTo\28signed\20char\2c\20icu_73::ConstChar16Ptr\2c\20int\29 +787:icu_73::UnicodeSet::add\28int\29 +788:icu_73::UVector::removeAllElements\28\29 +789:cf2_stack_popInt +790:SkUTF::NextUTF8\28char\20const**\2c\20char\20const*\29 +791:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29 +792:SkRGBA4f<\28SkAlphaType\293>::toSkColor\28\29\20const +793:SkPaint::setColorFilter\28sk_sp\29 +794:SkMatrixPriv::MapRect\28SkM44\20const&\2c\20SkRect\20const&\29 +795:SkMatrix::preTranslate\28float\2c\20float\29 +796:SkData::MakeEmpty\28\29 +797:SkConic::computeQuadPOW2\28float\29\20const +798:SkColorInfo::makeColorType\28SkColorType\29\20const +799:SkCodec::~SkCodec\28\29 +800:SkAutoPixmapStorage::~SkAutoPixmapStorage\28\29 +801:SkAAClip::quickContains\28int\2c\20int\2c\20int\2c\20int\29\20const +802:SkAAClip::isRect\28\29\20const +803:GrSurface::ComputeSize\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20bool\29 +804:GrSimpleMeshDrawOpHelper::GrSimpleMeshDrawOpHelper\28GrProcessorSet*\2c\20GrAAType\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +805:GrGeometryProcessor::ProgramImpl::SetTransform\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrResourceHandle\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix*\29 +806:GrDrawingManager::flushIfNecessary\28\29 +807:GrBlendFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkBlendMode\2c\20bool\29 +808:FT_Stream_ExtractFrame +809:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +810:utext_current32_73 +811:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +812:std::__2::basic_string\2c\20std::__2::allocator>::__is_long\5babi:v160004\5d\28\29\20const +813:skia_png_malloc_base +814:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29 +815:skgpu::ganesh::AsView\28GrRecordingContext*\2c\20SkImage\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +816:sk_sp::~sk_sp\28\29 +817:icu_73::UnicodeString::releaseBuffer\28int\29 +818:icu_73::UnicodeSet::_appendToPat\28icu_73::UnicodeString&\2c\20int\2c\20signed\20char\29 +819:icu_73::UVector::~UVector\28\29 +820:hb_ot_face_t::init0\28hb_face_t*\29 +821:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::get\28\29\20const +822:__addtf3 +823:SkTDStorage::reset\28\29 +824:SkScan::AntiHairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +825:SkSL::RP::Builder::label\28int\29 +826:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +827:SkReadBuffer::skip\28unsigned\20long\2c\20unsigned\20long\29 +828:SkPath::countVerbs\28\29\20const +829:SkMatrix::set9\28float\20const*\29 +830:SkMatrix::getMaxScale\28\29\20const +831:SkImageInfo::computeByteSize\28unsigned\20long\29\20const +832:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +833:SkImageInfo::MakeA8\28int\2c\20int\29 +834:SkImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +835:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\2c\20bool\2c\20SkBlitter*\29\20const +836:SkDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +837:SkData::MakeWithProc\28void\20const*\2c\20unsigned\20long\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +838:SkColorTypeIsAlwaysOpaque\28SkColorType\29 +839:SkBlockAllocator::SkBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\2c\20unsigned\20long\29 +840:SkBlender::Mode\28SkBlendMode\29 +841:ReadHuffmanCode +842:GrSurfaceProxy::~GrSurfaceProxy\28\29 +843:GrRenderTask::makeClosed\28GrRecordingContext*\29 +844:GrGpuBuffer::unmap\28\29 +845:GrContext_Base::options\28\29\20const +846:GrCaps::getReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +847:GrBufferAllocPool::reset\28\29 +848:FT_Stream_ReadByte +849:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__emplace_back_slow_path>\28unsigned\20int\20const&\2c\20sk_sp&&\29 +850:std::__2::char_traits::assign\28wchar_t&\2c\20wchar_t\20const&\29 +851:std::__2::char_traits::copy\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +852:std::__2::basic_string\2c\20std::__2::allocator>::begin\5babi:v160004\5d\28\29 +853:std::__2::__next_prime\28unsigned\20long\29 +854:std::__2::__libcpp_snprintf_l\28char*\2c\20unsigned\20long\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +855:snprintf +856:skif::LayerSpace::mapRect\28skif::LayerSpace\20const&\29\20const +857:locale_get_default_73 +858:is_equal\28std::type_info\20const*\2c\20std::type_info\20const*\2c\20bool\29 +859:icu_73::BytesTrie::~BytesTrie\28\29 +860:hb_buffer_t::sync\28\29 +861:__floatsitf +862:WebPSafeCalloc +863:StreamRemainingLengthIsBelow\28SkStream*\2c\20unsigned\20long\29 +864:SkSL::RP::Builder::swizzle\28int\2c\20SkSpan\29 +865:SkSL::Parser::expression\28\29 +866:SkPath::isConvex\28\29\20const +867:SkPaint::asBlendMode\28\29\20const +868:SkImageFilter_Base::getFlattenableType\28\29\20const +869:SkImageFilter_Base::SkImageFilter_Base\28sk_sp\20const*\2c\20int\2c\20std::__2::optional\29 +870:SkIRect::join\28SkIRect\20const&\29 +871:SkIDChangeListener::List::~List\28\29 +872:SkFontMgr::countFamilies\28\29\20const +873:SkDQuad::ptAtT\28double\29\20const +874:SkDLine::exactPoint\28SkDPoint\20const&\29\20const +875:SkDConic::ptAtT\28double\29\20const +876:SkColorInfo::makeAlphaType\28SkAlphaType\29\20const +877:SkCanvas::save\28\29 +878:SkCanvas::drawImage\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +879:SkBitmap::setInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +880:SkAAClip::Builder::addRun\28int\2c\20int\2c\20unsigned\20int\2c\20int\29 +881:GrSkSLFP::addChild\28std::__2::unique_ptr>\2c\20bool\29 +882:GrGLSLShaderBuilder::appendTextureLookup\28SkString*\2c\20GrResourceHandle\2c\20char\20const*\29\20const +883:GrFragmentProcessor::cloneAndRegisterAllChildProcessors\28GrFragmentProcessor\20const&\29 +884:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::~SwizzleFragmentProcessor\28\29 +885:GrDrawOpAtlas::~GrDrawOpAtlas\28\29 +886:GrBackendFormat::GrBackendFormat\28GrBackendFormat\20const&\29 +887:AutoFTAccess::AutoFTAccess\28SkTypeface_FreeType\20const*\29 +888:AlmostPequalUlps\28float\2c\20float\29 +889:strncpy +890:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20char\29\20const +891:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\29 +892:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_cap\5babi:v160004\5d\28unsigned\20long\29 +893:skia_private::TArray::operator=\28skia_private::TArray&&\29 +894:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +895:skia_png_reset_crc +896:memchr +897:icu_73::UnicodeString::operator=\28icu_73::UnicodeString\20const&\29 +898:icu_73::UnicodeString::doReplace\28int\2c\20int\2c\20char16_t\20const*\2c\20int\2c\20int\29 +899:icu_73::MlBreakEngine::initKeyValue\28UResourceBundle*\2c\20char\20const*\2c\20char\20const*\2c\20icu_73::Hashtable&\2c\20UErrorCode&\29 +900:icu_73::CharString::appendInvariantChars\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29 +901:icu_73::ByteSinkUtil::appendUnchanged\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_73::ByteSink&\2c\20unsigned\20int\2c\20icu_73::Edits*\2c\20UErrorCode&\29 +902:hb_buffer_t::sync_so_far\28\29 +903:hb_buffer_t::move_to\28unsigned\20int\29 +904:VP8ExitCritical +905:SkTDStorage::resize\28int\29 +906:SkSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +907:SkStream::readPackedUInt\28unsigned\20long*\29 +908:SkSize\20skif::Mapping::map\28SkSize\20const&\2c\20SkMatrix\20const&\29 +909:SkSL::Type::coercionCost\28SkSL::Type\20const&\29\20const +910:SkSL::Type::clone\28SkSL::SymbolTable*\29\20const +911:SkSL::RP::Generator::writeStatement\28SkSL::Statement\20const&\29 +912:SkSL::Parser::operatorRight\28SkSL::Parser::AutoDepth&\2c\20SkSL::OperatorKind\2c\20std::__2::unique_ptr>\20\28SkSL::Parser::*\29\28\29\2c\20std::__2::unique_ptr>&\29 +913:SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +914:SkResourceCache::Key::init\28void*\2c\20unsigned\20long\20long\2c\20unsigned\20long\29 +915:SkReadBuffer::skip\28unsigned\20long\29 +916:SkReadBuffer::readFlattenable\28SkFlattenable::Type\29 +917:SkRBuffer::read\28void*\2c\20unsigned\20long\29 +918:SkIDChangeListener::List::List\28\29 +919:SkGlyph::path\28\29\20const +920:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\29 +921:GrRenderTargetProxy::arenas\28\29 +922:GrOpFlushState::caps\28\29\20const +923:GrGpuResource::hasNoCommandBufferUsages\28\29\20const +924:GrGeometryProcessor::ProgramImpl::WriteLocalCoord\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20GrShaderVar\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +925:GrGLTextureParameters::SamplerOverriddenState::SamplerOverriddenState\28\29 +926:GrGLGpu::deleteFramebuffer\28unsigned\20int\29 +927:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\29 +928:FT_Stream_ReadULong +929:FT_Get_Module +930:Cr_z__tr_flush_block +931:AlmostBequalUlps\28float\2c\20float\29 +932:utext_previous32_73 +933:ures_getByKeyWithFallback_73 +934:std::__2::numpunct::truename\5babi:v160004\5d\28\29\20const +935:std::__2::moneypunct::do_grouping\28\29\20const +936:std::__2::locale::use_facet\28std::__2::locale::id&\29\20const +937:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29\20const +938:std::__2::basic_string\2c\20std::__2::allocator>::empty\5babi:v160004\5d\28\29\20const +939:skia_private::THashTable\2c\20SkGoodHash>::Entry*\2c\20unsigned\20long\20long\2c\20SkLRUCache\2c\20SkGoodHash>::Traits>::removeSlot\28int\29 +940:skia_png_save_int_32 +941:skia_png_safecat +942:skia_png_gamma_significant +943:skgpu::ganesh::SurfaceContext::readPixels\28GrDirectContext*\2c\20GrPixmap\2c\20SkIPoint\29 +944:icu_73::UnicodeString::getBuffer\28int\29 +945:icu_73::UnicodeString::doAppend\28icu_73::UnicodeString\20const&\2c\20int\2c\20int\29 +946:icu_73::UVector32::~UVector32\28\29 +947:icu_73::RuleBasedBreakIterator::handleNext\28\29 +948:hb_lazy_loader_t\2c\20hb_face_t\2c\2026u\2c\20OT::GPOS_accelerator_t>::get\28\29\20const +949:hb_font_get_nominal_glyph +950:hb_buffer_t::clear_output\28\29 +951:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPaint*\29 +952:cff_parse_num +953:T_CString_toLowerCase_73 +954:SkTSect::SkTSect\28SkTCurve\20const&\29 +955:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20float\29 +956:SkString::set\28char\20const*\2c\20unsigned\20long\29 +957:SkSL::Swizzle::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29 +958:SkSL::String::appendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20...\29 +959:SkSL::Parser::layoutInt\28\29 +960:SkSL::Parser::expectIdentifier\28SkSL::Token*\29 +961:SkRegion::Cliperator::next\28\29 +962:SkRegion::Cliperator::Cliperator\28SkRegion\20const&\2c\20SkIRect\20const&\29 +963:SkRRect::initializeRect\28SkRect\20const&\29 +964:SkPictureRecorder::~SkPictureRecorder\28\29 +965:SkPathRef::CreateEmpty\28\29 +966:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +967:SkPaint::setImageFilter\28sk_sp\29 +968:SkMasks::getAlpha\28unsigned\20int\29\20const +969:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29 +970:SkImageFilter_Base::getChildOutputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +971:SkImageFilter_Base::getChildInputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +972:SkData::MakeFromMalloc\28void\20const*\2c\20unsigned\20long\29 +973:SkDRect::setBounds\28SkTCurve\20const&\29 +974:SkColorFilter::isAlphaUnchanged\28\29\20const +975:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +976:SkCanvas::translate\28float\2c\20float\29 +977:SkBitmapCache::Rec::getKey\28\29\20const +978:PS_Conv_ToFixed +979:OT::hb_ot_apply_context_t::hb_ot_apply_context_t\28unsigned\20int\2c\20hb_font_t*\2c\20hb_buffer_t*\2c\20hb_blob_t*\29 +980:GrTriangulator::Line::intersect\28GrTriangulator::Line\20const&\2c\20SkPoint*\29\20const +981:GrSimpleMeshDrawOpHelper::isCompatible\28GrSimpleMeshDrawOpHelper\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +982:GrQuad::MakeFromSkQuad\28SkPoint\20const*\2c\20SkMatrix\20const&\29 +983:GrOpsRenderPass::bindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +984:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkISize\20const&\29 +985:GrColorInfo::GrColorInfo\28SkColorInfo\20const&\29 +986:AlmostDequalUlps\28double\2c\20double\29 +987:utrace_exit_73 +988:utrace_entry_73 +989:ures_hasNext_73 +990:ures_getNextResource_73 +991:uprv_toupper_73 +992:tt_face_get_name +993:strrchr +994:std::__2::vector>::size\5babi:v160004\5d\28\29\20const +995:std::__2::to_string\28long\20long\29 +996:std::__2::__libcpp_locale_guard::~__libcpp_locale_guard\5babi:v160004\5d\28\29 +997:std::__2::__libcpp_locale_guard::__libcpp_locale_guard\5babi:v160004\5d\28__locale_struct*&\29 +998:sktext::gpu::GlyphVector::~GlyphVector\28\29 +999:sktext::gpu::GlyphVector::glyphs\28\29\20const +1000:skia_png_benign_error +1001:skia_png_app_error +1002:skgpu::ganesh::SurfaceFillContext::getOpsTask\28\29 +1003:isdigit +1004:icu_73::Locale::Locale\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +1005:hb_sanitize_context_t::return_t\20OT::Paint::dispatch\28hb_sanitize_context_t*\29\20const +1006:hb_ot_layout_lookup_would_substitute +1007:hb_buffer_t::unsafe_to_break\28unsigned\20int\2c\20unsigned\20int\29 +1008:ft_module_get_service +1009:emscripten::internal::FunctionInvoker::invoke\28unsigned\20long\20\28**\29\28GrDirectContext&\29\2c\20GrDirectContext*\29 +1010:cf2_hintmap_map +1011:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +1012:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +1013:blit_trapezoid_row\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +1014:__sindf +1015:__shlim +1016:__cosdf +1017:\28anonymous\20namespace\29::init_resb_result\28UResourceDataEntry*\2c\20unsigned\20int\2c\20char\20const*\2c\20int\2c\20UResourceDataEntry*\2c\20char\20const*\2c\20int\2c\20UResourceBundle*\2c\20UErrorCode*\29 +1018:SkTiffImageFileDirectory::getEntryValuesGeneric\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20int\2c\20void*\29\20const +1019:SkSurface::getCanvas\28\29 +1020:SkSL::cast_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +1021:SkSL::Variable::initialValue\28\29\20const +1022:SkSL::SymbolTable::addArrayDimension\28SkSL::Type\20const*\2c\20int\29 +1023:SkSL::StringStream::str\28\29\20const +1024:SkSL::RP::Program::appendCopy\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20std::byte*\2c\20SkSL::RP::ProgramOp\2c\20unsigned\20int\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29\20const +1025:SkSL::RP::Generator::makeLValue\28SkSL::Expression\20const&\2c\20bool\29 +1026:SkSL::RP::DynamicIndexLValue::dynamicSlotRange\28\29 +1027:SkSL::GLSLCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1028:SkSL::Expression::description\28\29\20const +1029:SkSL::Analysis::UpdateVariableRefKind\28SkSL::Expression*\2c\20SkSL::VariableRefKind\2c\20SkSL::ErrorReporter*\29 +1030:SkRegion::setEmpty\28\29 +1031:SkRasterPipeline::appendLoadDst\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +1032:SkRRect::setRectRadii\28SkRect\20const&\2c\20SkPoint\20const*\29 +1033:SkRRect::setOval\28SkRect\20const&\29 +1034:SkPointPriv::DistanceToLineSegmentBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +1035:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +1036:SkPath::addPath\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPath::AddPathMode\29 +1037:SkPaint::operator=\28SkPaint&&\29 +1038:SkOpSpanBase::contains\28SkOpSegment\20const*\29\20const +1039:SkMipmap::ComputeLevelCount\28int\2c\20int\29 +1040:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint\20const*\2c\20int\29\20const +1041:SkMD5::bytesWritten\28\29\20const +1042:SkImageFilters::Crop\28SkRect\20const&\2c\20SkTileMode\2c\20sk_sp\29 +1043:SkImageFilter_Base::getChildOutput\28int\2c\20skif::Context\20const&\29\20const +1044:SkIDChangeListener::List::changed\28\29 +1045:SkDevice::makeSpecial\28SkBitmap\20const&\29 +1046:SkCanvas::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +1047:SkBlockMemoryStream::getLength\28\29\20const +1048:SkAAClipBlitterWrapper::init\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1049:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28\29 +1050:RunBasedAdditiveBlitter::flush\28\29 +1051:GrSurface::onRelease\28\29 +1052:GrStyledShape::unstyledKeySize\28\29\20const +1053:GrShape::convex\28bool\29\20const +1054:GrRecordingContext::threadSafeCache\28\29 +1055:GrProxyProvider::caps\28\29\20const +1056:GrOp::GrOp\28unsigned\20int\29 +1057:GrMakeUncachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +1058:GrGLSLShaderBuilder::getMangledFunctionName\28char\20const*\29 +1059:GrGLGpu::bindBuffer\28GrGpuBufferType\2c\20GrBuffer\20const*\29 +1060:GrGLAttribArrayState::set\28GrGLGpu*\2c\20int\2c\20GrBuffer\20const*\2c\20GrVertexAttribType\2c\20SkSLType\2c\20int\2c\20unsigned\20long\2c\20int\29 +1061:GrAAConvexTessellator::Ring::computeNormals\28GrAAConvexTessellator\20const&\29 +1062:GrAAConvexTessellator::Ring::computeBisectors\28GrAAConvexTessellator\20const&\29 +1063:FT_Activate_Size +1064:Cr_z_adler32 +1065:vsnprintf +1066:void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1067:void\20extend_pts<\28SkPaint::Cap\291>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1068:ures_getStringByKey_73 +1069:ucptrie_getRange_73 +1070:u_terminateChars_73 +1071:u_strchr_73 +1072:top12 +1073:toSkImageInfo\28SimpleImageInfo\20const&\29 +1074:std::__2::pair::type\2c\20std::__2::__unwrap_ref_decay::type>\20std::__2::make_pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +1075:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +1076:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\2c\20std::__2::allocator>\28char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +1077:std::__2::__tree\2c\20std::__2::__map_value_compare\2c\20std::__2::less\2c\20true>\2c\20std::__2::allocator>>::destroy\28std::__2::__tree_node\2c\20void*>*\29 +1078:std::__2::__num_put_base::__identify_padding\28char*\2c\20char*\2c\20std::__2::ios_base\20const&\29 +1079:std::__2::__num_get_base::__get_base\28std::__2::ios_base&\29 +1080:std::__2::__libcpp_asprintf_l\28char**\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +1081:skif::RoundOut\28SkRect\29 +1082:skia_private::THashMap::operator\5b\5d\28SkSL::Variable\20const*\20const&\29 +1083:skia_png_zstream_error +1084:skia::textlayout::TextLine::iterateThroughVisualRuns\28bool\2c\20std::__2::function\2c\20float*\29>\20const&\29\20const +1085:skia::textlayout::ParagraphImpl::cluster\28unsigned\20long\29 +1086:skia::textlayout::Cluster::runOrNull\28\29\20const +1087:skgpu::ganesh::SurfaceFillContext::replaceOpsTask\28\29 +1088:skcms_TransferFunction_getType +1089:skcms_GetTagBySignature +1090:read_curve\28unsigned\20char\20const*\2c\20unsigned\20int\2c\20skcms_Curve*\2c\20unsigned\20int*\29 +1091:pow +1092:int\20std::__2::__get_up_to_n_digits\5babi:v160004\5d>>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\2c\20int\29 +1093:int\20std::__2::__get_up_to_n_digits\5babi:v160004\5d>>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\2c\20int\29 +1094:icu_73::UnicodeString::unBogus\28\29 +1095:icu_73::UnicodeString::doIndexOf\28char16_t\2c\20int\2c\20int\29\20const +1096:icu_73::UnicodeSetStringSpan::~UnicodeSetStringSpan\28\29 +1097:icu_73::UVector::adoptElement\28void*\2c\20UErrorCode&\29 +1098:icu_73::SimpleFilteredSentenceBreakIterator::operator==\28icu_73::BreakIterator\20const&\29\20const +1099:icu_73::Locale::init\28char\20const*\2c\20signed\20char\29 +1100:hb_serialize_context_t::pop_pack\28bool\29 +1101:hb_lazy_loader_t\2c\20hb_face_t\2c\206u\2c\20hb_blob_t>::get\28\29\20const +1102:hb_buffer_destroy +1103:getenv +1104:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::__wrap_iter\20const&\2c\20std::__2::__wrap_iter\20const&\29 +1105:afm_parser_read_vals +1106:__extenddftf2 +1107:\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1108:\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1109:\28anonymous\20namespace\29::colrv1_transform\28FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\2c\20SkCanvas*\2c\20SkMatrix*\29 +1110:WebPRescalerImport +1111:SkTDStorage::removeShuffle\28int\29 +1112:SkString::SkString\28char\20const*\2c\20unsigned\20long\29 +1113:SkStrikeCache::GlobalStrikeCache\28\29 +1114:SkScan::HairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1115:SkSL::VariableReference::VariableReference\28SkSL::Position\2c\20SkSL::Variable\20const*\2c\20SkSL::VariableRefKind\29 +1116:SkSL::InlineCandidateAnalyzer::visitExpression\28std::__2::unique_ptr>*\29 +1117:SkSL::GLSLCodeGenerator::getTypePrecision\28SkSL::Type\20const&\29 +1118:SkRuntimeEffect::Uniform::sizeInBytes\28\29\20const +1119:SkReadBuffer::readMatrix\28SkMatrix*\29 +1120:SkReadBuffer::readByteArray\28void*\2c\20unsigned\20long\29 +1121:SkReadBuffer::readBool\28\29 +1122:SkRasterPipeline::run\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +1123:SkPictureData::optionalPaint\28SkReadBuffer*\29\20const +1124:SkPathWriter::isClosed\28\29\20const +1125:SkPath::isRect\28SkRect*\2c\20bool*\2c\20SkPathDirection*\29\20const +1126:SkPaint::setStrokeWidth\28float\29 +1127:SkOpSegment::nextChase\28SkOpSpanBase**\2c\20int*\2c\20SkOpSpan**\2c\20SkOpSpanBase**\29\20const +1128:SkOpSegment::addCurveTo\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkPathWriter*\29\20const +1129:SkMatrix::preScale\28float\2c\20float\29 +1130:SkMatrix::postScale\28float\2c\20float\29 +1131:SkMatrix::isSimilarity\28float\29\20const +1132:SkMask::computeImageSize\28\29\20const +1133:SkIntersections::removeOne\28int\29 +1134:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\29 +1135:SkDynamicMemoryWStream::detachAsData\28\29 +1136:SkDLine::ptAtT\28double\29\20const +1137:SkColorSpace::Equals\28SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +1138:SkColorFilter::makeComposed\28sk_sp\29\20const +1139:SkBulkGlyphMetrics::~SkBulkGlyphMetrics\28\29 +1140:SkBitmap::peekPixels\28SkPixmap*\29\20const +1141:SkAutoPixmapStorage::SkAutoPixmapStorage\28\29 +1142:SkAAClip::setEmpty\28\29 +1143:PS_Conv_Strtol +1144:OT::Layout::GSUB_impl::SubstLookup*\20hb_serialize_context_t::push\28\29 +1145:GrTriangulator::makeConnectingEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\2c\20int\29 +1146:GrTextureProxy::~GrTextureProxy\28\29 +1147:GrSimpleMeshDrawOpHelper::createProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +1148:GrResourceAllocator::addInterval\28GrSurfaceProxy*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20GrResourceAllocator::ActualUse\2c\20GrResourceAllocator::AllowRecycling\29 +1149:GrRecordingContextPriv::makeSFCWithFallback\28GrImageInfo\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1150:GrGpuBuffer::updateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +1151:GrGLTextureParameters::NonsamplerState::NonsamplerState\28\29 +1152:GrGLSLShaderBuilder::~GrGLSLShaderBuilder\28\29 +1153:GrGLSLProgramBuilder::nameVariable\28char\2c\20char\20const*\2c\20bool\29 +1154:GrGLGpu::prepareToDraw\28GrPrimitiveType\29 +1155:GrGLFormatFromGLEnum\28unsigned\20int\29 +1156:GrBackendTexture::getBackendFormat\28\29\20const +1157:GrBackendFormats::MakeGL\28unsigned\20int\2c\20unsigned\20int\29 +1158:GrBackendFormatToCompressionType\28GrBackendFormat\20const&\29 +1159:FilterLoop24_C +1160:FT_Stream_Skip +1161:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1162:AAT::Lookup::sanitize\28hb_sanitize_context_t*\29\20const +1163:write_trc_tag\28skcms_Curve\20const&\29 +1164:utext_close_73 +1165:ures_open_73 +1166:ures_getKey_73 +1167:ulocimp_getLanguage_73\28char\20const*\2c\20char\20const**\2c\20UErrorCode&\29 +1168:u_UCharsToChars_73 +1169:std::__2::time_get>>::get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +1170:std::__2::time_get>>::get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\20const*\2c\20char\20const*\29\20const +1171:std::__2::enable_if::type\20skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::AddTrianglesWhenChopping\2c\20skgpu::tess::DiscardFlatCurves>::writeTriangleStack\28skgpu::tess::MiddleOutPolygonTriangulator::PoppedTriangleStack&&\29 +1172:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +1173:std::__2::basic_string\2c\20std::__2::allocator>::__get_long_cap\5babi:v160004\5d\28\29\20const +1174:skif::LayerSpace::ceil\28\29\20const +1175:skia_private::TArray::push_back\28float\20const&\29 +1176:skia_png_write_finish_row +1177:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29 +1178:scalbn +1179:res_getStringNoTrace_73 +1180:non-virtual\20thunk\20to\20GrOpFlushState::allocator\28\29 +1181:icu_73::UnicodeSet::applyPattern\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29 +1182:icu_73::Normalizer2Impl::getFCD16FromNormData\28int\29\20const +1183:icu_73::Locale::Locale\28\29 +1184:hb_lazy_loader_t\2c\20hb_face_t\2c\2022u\2c\20hb_blob_t>::get\28\29\20const +1185:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::get\28\29\20const +1186:hb_buffer_get_glyph_infos +1187:cff2_path_param_t::line_to\28CFF::point_t\20const&\29 +1188:cff1_path_param_t::line_to\28CFF::point_t\20const&\29 +1189:cf2_stack_getReal +1190:byn$mgfn-shared$GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +1191:antifilldot8\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\2c\20bool\29 +1192:afm_stream_skip_spaces +1193:WebPRescalerInit +1194:WebPRescalerExportRow +1195:SkTextBlobBuilder::allocInternal\28SkFont\20const&\2c\20SkTextBlob::GlyphPositioning\2c\20int\2c\20int\2c\20SkPoint\2c\20SkRect\20const*\29 +1196:SkTDStorage::append\28void\20const*\2c\20int\29 +1197:SkString::Rec::Make\28char\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +1198:SkStrike::digestFor\28skglyph::ActionType\2c\20SkPackedGlyphID\29 +1199:SkShaders::Color\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\29 +1200:SkSafeMath::Add\28unsigned\20long\2c\20unsigned\20long\29 +1201:SkSL::SymbolTable::lookup\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +1202:SkSL::ProgramUsage::get\28SkSL::Variable\20const&\29\20const +1203:SkSL::Parser::assignmentExpression\28\29 +1204:SkSL::Inliner::inlineStatement\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Analysis::ReturnComplexity\2c\20SkSL::Statement\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20bool\29 +1205:SkSL::GLSLCodeGenerator::write\28std::__2::basic_string_view>\29 +1206:SkSL::ConstructorSplat::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1207:SkSL::ConstructorScalarCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1208:SkRuntimeEffectBuilder::writableUniformData\28\29 +1209:SkRuntimeEffect::findUniform\28std::__2::basic_string_view>\29\20const +1210:SkResourceCache::Find\28SkResourceCache::Key\20const&\2c\20bool\20\28*\29\28SkResourceCache::Rec\20const&\2c\20void*\29\2c\20void*\29 +1211:SkRegion::SkRegion\28SkIRect\20const&\29 +1212:SkRect::toQuad\28SkPoint*\29\20const +1213:SkRasterPipeline::appendTransferFunction\28skcms_TransferFunction\20const&\29 +1214:SkRasterPipeline::appendStore\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +1215:SkRasterPipeline::appendConstantColor\28SkArenaAlloc*\2c\20float\20const*\29 +1216:SkRasterClip::SkRasterClip\28\29 +1217:SkRRect::checkCornerContainment\28float\2c\20float\29\20const +1218:SkPictureData::getImage\28SkReadBuffer*\29\20const +1219:SkPathMeasure::getLength\28\29 +1220:SkPathBuilder::~SkPathBuilder\28\29 +1221:SkPathBuilder::detach\28\29 +1222:SkPathBuilder::SkPathBuilder\28\29 +1223:SkPath::getGenerationID\28\29\20const +1224:SkPath::addPoly\28SkPoint\20const*\2c\20int\2c\20bool\29 +1225:SkParse::FindScalars\28char\20const*\2c\20float*\2c\20int\29 +1226:SkPaint::refPathEffect\28\29\20const +1227:SkPaint::operator=\28SkPaint\20const&\29 +1228:SkMipmap::getLevel\28int\2c\20SkMipmap::Level*\29\20const +1229:SkJSONWriter::appendCString\28char\20const*\2c\20char\20const*\29 +1230:SkIntersections::setCoincident\28int\29 +1231:SkImageInfo::computeOffset\28int\2c\20int\2c\20unsigned\20long\29\20const +1232:SkImageFilter_Base::flatten\28SkWriteBuffer&\29\20const +1233:SkDrawBase::SkDrawBase\28\29 +1234:SkDLine::NearPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1235:SkDLine::NearPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1236:SkDLine::ExactPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1237:SkDLine::ExactPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1238:SkColorSpaceXformSteps::apply\28SkRasterPipeline*\29\20const +1239:SkColorFilter::filterColor\28unsigned\20int\29\20const +1240:SkColorFilter::asAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +1241:SkCodec::SkCodec\28SkEncodedInfo&&\2c\20skcms_PixelFormat\2c\20std::__2::unique_ptr>\2c\20SkEncodedOrigin\29 +1242:SkCanvas::drawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +1243:SkCanvas::drawColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +1244:SkBulkGlyphMetrics::SkBulkGlyphMetrics\28SkStrikeSpec\20const&\29 +1245:SkBlockAllocator::releaseBlock\28SkBlockAllocator::Block*\29 +1246:SkBitmap::asImage\28\29\20const +1247:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1248:OT::MVAR::get_var\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29\20const +1249:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\2c\20bool\2c\20GrProcessorAnalysisCoverage\29 +1250:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20GrCaps\20const&\2c\20float\20const*\29 +1251:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\29 +1252:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1253:GrResourceProvider::findResourceByUniqueKey\28skgpu::UniqueKey\20const&\29 +1254:GrRecordingContext::OwnedArenas::get\28\29 +1255:GrProxyProvider::createProxy\28GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\29 +1256:GrProxyProvider::assignUniqueKeyToProxy\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\29 +1257:GrProcessorSet::finalize\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkRGBA4f<\28SkAlphaType\292>*\29 +1258:GrOpFlushState::allocator\28\29 +1259:GrOp::cutChain\28\29 +1260:GrMeshDrawTarget::makeVertexWriter\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +1261:GrGpuResource::GrGpuResource\28GrGpu*\2c\20std::__2::basic_string_view>\29 +1262:GrGeometryProcessor::TextureSampler::reset\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +1263:GrGeometryProcessor::AttributeSet::end\28\29\20const +1264:GrGeometryProcessor::AttributeSet::Iter::operator++\28\29 +1265:GrGeometryProcessor::AttributeSet::Iter::operator*\28\29\20const +1266:GrGLTextureParameters::set\28GrGLTextureParameters::SamplerOverriddenState\20const*\2c\20GrGLTextureParameters::NonsamplerState\20const&\2c\20unsigned\20long\20long\29 +1267:GrGLSLShaderBuilder::appendTextureLookup\28GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +1268:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29 +1269:GrBackendTexture::~GrBackendTexture\28\29 +1270:FT_Outline_Get_CBox +1271:FT_Get_Sfnt_Table +1272:utf8_prevCharSafeBody_73 +1273:ures_getString_73 +1274:ulocimp_getScript_73\28char\20const*\2c\20char\20const**\2c\20UErrorCode&\29 +1275:uhash_open_73 +1276:std::__2::vector>::__destroy_vector::__destroy_vector\28std::__2::vector>&\29 +1277:std::__2::moneypunct::negative_sign\5babi:v160004\5d\28\29\20const +1278:std::__2::moneypunct::neg_format\5babi:v160004\5d\28\29\20const +1279:std::__2::moneypunct::frac_digits\5babi:v160004\5d\28\29\20const +1280:std::__2::moneypunct::do_pos_format\28\29\20const +1281:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +1282:std::__2::char_traits::copy\28wchar_t*\2c\20wchar_t\20const*\2c\20unsigned\20long\29 +1283:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1284:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1285:std::__2::basic_string\2c\20std::__2::allocator>::__set_size\5babi:v160004\5d\28unsigned\20long\29 +1286:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\2c\20unsigned\20long\29 +1287:std::__2::__itoa::__append2\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1288:skif::FilterResult::resolve\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +1289:skia_png_read_finish_row +1290:skia_png_handle_unknown +1291:skia_png_gamma_correct +1292:skia_png_colorspace_sync +1293:skia_png_app_warning +1294:skia::textlayout::TextStyle::operator=\28skia::textlayout::TextStyle\20const&\29 +1295:skia::textlayout::TextLine::offset\28\29\20const +1296:skia::textlayout::Run::placeholderStyle\28\29\20const +1297:skia::textlayout::Cluster::Cluster\28skia::textlayout::ParagraphImpl*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkSpan\2c\20float\2c\20float\29 +1298:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1299:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20SkBackingFit\2c\20SkISize\2c\20SkSurfaceProps\20const&\2c\20std::__2::basic_string_view>\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1300:skgpu::ganesh::SurfaceContext::PixelTransferResult::~PixelTransferResult\28\29 +1301:skgpu::ganesh::ClipStack::SaveRecord::state\28\29\20const +1302:skcms_Matrix3x3_invert +1303:sk_doubles_nearly_equal_ulps\28double\2c\20double\2c\20unsigned\20char\29 +1304:ps_parser_to_token +1305:isspace +1306:icu_73::UnicodeString::moveIndex32\28int\2c\20int\29\20const +1307:icu_73::UnicodeString::cloneArrayIfNeeded\28int\2c\20int\2c\20signed\20char\2c\20int**\2c\20signed\20char\29 +1308:icu_73::UnicodeSet::span\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1309:icu_73::UVector32::UVector32\28UErrorCode&\29 +1310:icu_73::RuleCharacterIterator::next\28int\2c\20signed\20char&\2c\20UErrorCode&\29 +1311:icu_73::ReorderingBuffer::appendBMP\28char16_t\2c\20unsigned\20char\2c\20UErrorCode&\29 +1312:icu_73::ICUServiceKey::prefix\28icu_73::UnicodeString&\29\20const +1313:icu_73::Edits::addReplace\28int\2c\20int\29 +1314:icu_73::BreakIterator::buildInstance\28icu_73::Locale\20const&\2c\20char\20const*\2c\20UErrorCode&\29 +1315:hb_face_t::load_upem\28\29\20const +1316:hb_buffer_t::merge_out_clusters\28unsigned\20int\2c\20unsigned\20int\29 +1317:hb_buffer_t::enlarge\28unsigned\20int\29 +1318:hb_buffer_reverse +1319:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint&\29\2c\20SkCanvas*\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint*\29 +1320:cff_index_init +1321:cf2_glyphpath_curveTo +1322:atan2f +1323:WebPCopyPlane +1324:SkTMaskGamma_build_correcting_lut\28unsigned\20char*\2c\20unsigned\20int\2c\20float\2c\20SkColorSpaceLuminance\20const&\2c\20float\2c\20SkColorSpaceLuminance\20const&\2c\20float\29 +1325:SkSurface_Raster::type\28\29\20const +1326:SkString::swap\28SkString&\29 +1327:SkString::reset\28\29 +1328:SkSampler::Fill\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\29 +1329:SkSL::Type::MakeTextureType\28char\20const*\2c\20SpvDim_\2c\20bool\2c\20bool\2c\20bool\2c\20SkSL::Type::TextureAccess\29 +1330:SkSL::Type::MakeSpecialType\28char\20const*\2c\20char\20const*\2c\20SkSL::Type::TypeKind\29 +1331:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Context\20const&\2c\20SkSL::Symbol*\29 +1332:SkSL::RP::Builder::push_slots_or_immutable\28SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +1333:SkSL::RP::Builder::push_clone_from_stack\28SkSL::RP::SlotRange\2c\20int\2c\20int\29 +1334:SkSL::Program::~Program\28\29 +1335:SkSL::PipelineStage::PipelineStageCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1336:SkSL::Operator::isAssignment\28\29\20const +1337:SkSL::InlineCandidateAnalyzer::visitStatement\28std::__2::unique_ptr>*\2c\20bool\29 +1338:SkSL::GLSLCodeGenerator::writeModifiers\28SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20bool\29 +1339:SkSL::ExpressionStatement::Make\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +1340:SkSL::ConstructorCompound::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +1341:SkSL::Analysis::GetReturnComplexity\28SkSL::FunctionDefinition\20const&\29 +1342:SkSL::AliasType::resolve\28\29\20const +1343:SkResourceCache::Add\28SkResourceCache::Rec*\2c\20void*\29 +1344:SkRegion::writeToMemory\28void*\29\20const +1345:SkRect\20skif::Mapping::map\28SkRect\20const&\2c\20SkMatrix\20const&\29 +1346:SkRasterClip::setRect\28SkIRect\20const&\29 +1347:SkRasterClip::SkRasterClip\28SkRasterClip\20const&\29 +1348:SkPathMeasure::~SkPathMeasure\28\29 +1349:SkPathMeasure::SkPathMeasure\28SkPath\20const&\2c\20bool\2c\20float\29 +1350:SkPath::swap\28SkPath&\29 +1351:SkPaint::setAlphaf\28float\29 +1352:SkOpSpan::computeWindSum\28\29 +1353:SkOpSegment::existing\28double\2c\20SkOpSegment\20const*\29\20const +1354:SkOpPtT::find\28SkOpSegment\20const*\29\20const +1355:SkOpCoincidence::addEndMovedSpans\28SkOpSpan\20const*\2c\20SkOpSpanBase\20const*\29 +1356:SkNoDrawCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1357:SkMakeImageFromRasterBitmap\28SkBitmap\20const&\2c\20SkCopyPixelsMode\29 +1358:SkImage_Ganesh::SkImage_Ganesh\28sk_sp\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20SkColorInfo\29 +1359:SkImageInfo::makeColorSpace\28sk_sp\29\20const +1360:SkImage::refColorSpace\28\29\20const +1361:SkGlyph::imageSize\28\29\20const +1362:SkFont::textToGlyphs\28void\20const*\2c\20unsigned\20long\2c\20SkTextEncoding\2c\20unsigned\20short*\2c\20int\29\20const +1363:SkFont::setSubpixel\28bool\29 +1364:SkDraw::SkDraw\28\29 +1365:SkDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +1366:SkColorTypeBytesPerPixel\28SkColorType\29 +1367:SkChopQuadAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +1368:SkCanvas::drawImageRect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1369:SkBmpCodec::getDstRow\28int\2c\20int\29\20const +1370:SkAutoDescriptor::SkAutoDescriptor\28\29 +1371:OT::DeltaSetIndexMap::sanitize\28hb_sanitize_context_t*\29\20const +1372:OT::ClassDef::sanitize\28hb_sanitize_context_t*\29\20const +1373:GrTriangulator::Comparator::sweep_lt\28SkPoint\20const&\2c\20SkPoint\20const&\29\20const +1374:GrTextureProxy::textureType\28\29\20const +1375:GrSurfaceProxy::createSurfaceImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\29\20const +1376:GrStyledShape::writeUnstyledKey\28unsigned\20int*\29\20const +1377:GrStyledShape::simplify\28\29 +1378:GrSkSLFP::setInput\28std::__2::unique_ptr>\29 +1379:GrSimpleMeshDrawOpHelperWithStencil::GrSimpleMeshDrawOpHelperWithStencil\28GrProcessorSet*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +1380:GrShape::operator=\28GrShape\20const&\29 +1381:GrResourceProvider::createPatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const*\29 +1382:GrRenderTarget::~GrRenderTarget\28\29 +1383:GrRecordingContextPriv::makeSC\28GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1384:GrOpFlushState::detachAppliedClip\28\29 +1385:GrGpuBuffer::map\28\29 +1386:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\29 +1387:GrGLSLShaderBuilder::declAppend\28GrShaderVar\20const&\29 +1388:GrGLGpu::didDrawTo\28GrRenderTarget*\29 +1389:GrFragmentProcessors::Make\28GrRecordingContext*\2c\20SkColorFilter\20const*\2c\20std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1390:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +1391:GrCaps::validateSurfaceParams\28SkISize\20const&\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20GrTextureType\29\20const +1392:GrBufferAllocPool::putBack\28unsigned\20long\29 +1393:GrBlurUtils::GaussianBlur\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20float\2c\20float\2c\20SkTileMode\2c\20SkBackingFit\29::$_0::operator\28\29\28SkIRect\2c\20SkIRect\29\20const +1394:GrAAConvexTessellator::createInsetRing\28GrAAConvexTessellator::Ring\20const&\2c\20GrAAConvexTessellator::Ring*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +1395:FT_Stream_GetByte +1396:FT_Set_Transform +1397:FT_Add_Module +1398:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +1399:AlmostLessOrEqualUlps\28float\2c\20float\29 +1400:ActiveEdge::intersect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29\20const +1401:wrapper_cmp +1402:void\20std::__2::reverse\5babi:v160004\5d\28char*\2c\20char*\29 +1403:void\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__do_rehash\28unsigned\20long\29 +1404:utrace_data_73 +1405:utf8_nextCharSafeBody_73 +1406:utext_setup_73 +1407:uhash_puti_73 +1408:uhash_nextElement_73 +1409:ubidi_getParaLevelAtIndex_73 +1410:u_charType_73 +1411:tanf +1412:std::__2::vector>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29 +1413:std::__2::vector>::capacity\5babi:v160004\5d\28\29\20const +1414:std::__2::ostreambuf_iterator>\20std::__2::__pad_and_output\5babi:v160004\5d>\28std::__2::ostreambuf_iterator>\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20std::__2::ios_base&\2c\20wchar_t\29 +1415:std::__2::ostreambuf_iterator>\20std::__2::__pad_and_output\5babi:v160004\5d>\28std::__2::ostreambuf_iterator>\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20std::__2::ios_base&\2c\20char\29 +1416:std::__2::char_traits::to_int_type\28char\29 +1417:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1418:std::__2::basic_ios>::setstate\5babi:v160004\5d\28unsigned\20int\29 +1419:std::__2::__compressed_pair_elem::__compressed_pair_elem\5babi:v160004\5d\28void\20\28*&&\29\28void*\29\29 +1420:sktext::StrikeMutationMonitor::~StrikeMutationMonitor\28\29 +1421:sktext::StrikeMutationMonitor::StrikeMutationMonitor\28sktext::StrikeForGPU*\29 +1422:skif::LayerSpace::contains\28skif::LayerSpace\20const&\29\20const +1423:skif::Backend::~Backend\28\29.1 +1424:skia_private::TArray::operator=\28skia_private::TArray&&\29 +1425:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::~STArray\28\29 +1426:skia_png_chunk_unknown_handling +1427:skia::textlayout::TextStyle::TextStyle\28\29 +1428:skia::textlayout::TextLine::iterateThroughSingleRunByStyles\28skia::textlayout::TextLine::TextAdjustment\2c\20skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::StyleType\2c\20std::__2::function\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\20const&\29\20const +1429:skgpu::ganesh::SurfaceFillContext::internalClear\28SkIRect\20const*\2c\20std::__2::array\2c\20bool\29 +1430:skgpu::ganesh::SurfaceDrawContext::fillRectToRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +1431:skgpu::SkSLToBackend\28SkSL::ShaderCaps\20const*\2c\20bool\20\28*\29\28SkSL::Program&\2c\20SkSL::ShaderCaps\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\29\2c\20char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20skgpu::ShaderErrorHandler*\29 +1432:res_getTableItemByKey_73 +1433:powf +1434:icu_73::UnicodeString::operator=\28icu_73::UnicodeString&&\29 +1435:icu_73::UnicodeString::doEquals\28icu_73::UnicodeString\20const&\2c\20int\29\20const +1436:icu_73::UnicodeSet::ensureCapacity\28int\29 +1437:icu_73::UnicodeSet::clear\28\29 +1438:icu_73::UVector::addElement\28void*\2c\20UErrorCode&\29 +1439:icu_73::UVector32::setElementAt\28int\2c\20int\29 +1440:icu_73::RuleCharacterIterator::setPos\28icu_73::RuleCharacterIterator::Pos\20const&\29 +1441:icu_73::Locale::operator=\28icu_73::Locale\20const&\29 +1442:icu_73::Edits::addUnchanged\28int\29 +1443:icu_73::CharString::extract\28char*\2c\20int\2c\20UErrorCode&\29\20const +1444:hb_lazy_loader_t\2c\20hb_face_t\2c\2011u\2c\20hb_blob_t>::get\28\29\20const +1445:hb_lazy_loader_t\2c\20hb_face_t\2c\202u\2c\20hb_blob_t>::get\28\29\20const +1446:hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +1447:hb_font_t::scale_glyph_extents\28hb_glyph_extents_t*\29 +1448:hb_font_t::get_glyph_h_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +1449:hb_buffer_append +1450:emscripten::internal::MethodInvoker\29\2c\20void\2c\20SkFont*\2c\20sk_sp>::invoke\28void\20\28SkFont::*\20const&\29\28sk_sp\29\2c\20SkFont*\2c\20sk_sp*\29 +1451:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28\29\29 +1452:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +1453:cos +1454:cf2_glyphpath_lineTo +1455:byn$mgfn-shared$SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +1456:alloc_small +1457:af_latin_hints_compute_segments +1458:_hb_glyph_info_set_unicode_props\28hb_glyph_info_t*\2c\20hb_buffer_t*\29 +1459:__lshrti3 +1460:__letf2 +1461:__cxx_global_array_dtor.3 +1462:SkUTF::ToUTF16\28int\2c\20unsigned\20short*\29 +1463:SkTextBlobBuilder::~SkTextBlobBuilder\28\29 +1464:SkTextBlobBuilder::make\28\29 +1465:SkSurface::makeImageSnapshot\28\29 +1466:SkString::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +1467:SkString::insertUnichar\28unsigned\20long\2c\20int\29 +1468:SkStrikeSpec::findOrCreateScopedStrike\28sktext::StrikeForGPUCacheInterface*\29\20const +1469:SkSpecialImages::MakeDeferredFromGpu\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1470:SkShader::isAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +1471:SkSL::is_constant_value\28SkSL::Expression\20const&\2c\20double\29 +1472:SkSL::compile_and_shrink\28SkSL::Compiler*\2c\20SkSL::ProgramKind\2c\20char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::Module\20const*\29 +1473:SkSL::\28anonymous\20namespace\29::ReturnsOnAllPathsVisitor::visitStatement\28SkSL::Statement\20const&\29 +1474:SkSL::Type::MakeScalarType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type::NumberKind\2c\20signed\20char\2c\20signed\20char\29 +1475:SkSL::RP::Generator::pushBinaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +1476:SkSL::RP::Builder::push_clone\28int\2c\20int\29 +1477:SkSL::ProgramUsage::remove\28SkSL::Statement\20const*\29 +1478:SkSL::Parser::statement\28\29 +1479:SkSL::Operator::determineBinaryType\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Type\20const**\2c\20SkSL::Type\20const**\2c\20SkSL::Type\20const**\29\20const +1480:SkSL::ModifierFlags::description\28\29\20const +1481:SkSL::Layout::paddedDescription\28\29\20const +1482:SkSL::FieldAccess::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +1483:SkSL::ConstructorCompoundCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1484:SkSL::Analysis::IsSameExpressionTree\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1485:SkRectPriv::Subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkIRect*\29 +1486:SkPictureRecorder::SkPictureRecorder\28\29 +1487:SkPictureData::~SkPictureData\28\29 +1488:SkPathMeasure::nextContour\28\29 +1489:SkPathMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29 +1490:SkPathMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29 +1491:SkPathBuilder::lineTo\28SkPoint\29 +1492:SkPath::getPoint\28int\29\20const +1493:SkPath::getLastPt\28SkPoint*\29\20const +1494:SkOpSegment::addT\28double\29 +1495:SkNoPixelsDevice::ClipState&\20skia_private::TArray::emplace_back\28SkIRect&&\2c\20bool&&\2c\20bool&&\29 +1496:SkNextID::ImageID\28\29 +1497:SkMessageBus::Inbox::Inbox\28unsigned\20int\29 +1498:SkImage_Lazy::generator\28\29\20const +1499:SkImage_Base::~SkImage_Base\28\29 +1500:SkImage_Base::SkImage_Base\28SkImageInfo\20const&\2c\20unsigned\20int\29 +1501:SkFont::getWidthsBounds\28unsigned\20short\20const*\2c\20int\2c\20float*\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +1502:SkFont::getMetrics\28SkFontMetrics*\29\20const +1503:SkFont::SkFont\28sk_sp\2c\20float\29 +1504:SkFont::SkFont\28\29 +1505:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20SkRect\20const*\29\20const +1506:SkDevice::setGlobalCTM\28SkM44\20const&\29 +1507:SkDescriptor::operator==\28SkDescriptor\20const&\29\20const +1508:SkConvertPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +1509:SkConic::chopAt\28float\2c\20SkConic*\29\20const +1510:SkColorSpace::gammaIsLinear\28\29\20const +1511:SkColorSpace::MakeRGB\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +1512:SkCodec::fillIncompleteImage\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\2c\20int\2c\20int\29 +1513:SkCanvas::saveLayer\28SkRect\20const*\2c\20SkPaint\20const*\29 +1514:SkCanvas::drawPaint\28SkPaint\20const&\29 +1515:SkCanvas::ImageSetEntry::~ImageSetEntry\28\29 +1516:SkBulkGlyphMetrics::glyphs\28SkSpan\29 +1517:SkBlendMode_AsCoeff\28SkBlendMode\2c\20SkBlendModeCoeff*\2c\20SkBlendModeCoeff*\29 +1518:SkBitmap::getGenerationID\28\29\20const +1519:SkArenaAllocWithReset::reset\28\29 +1520:OT::Layout::GPOS_impl::AnchorFormat3::sanitize\28hb_sanitize_context_t*\29\20const +1521:OT::GDEF::get_glyph_props\28unsigned\20int\29\20const +1522:OT::CmapSubtable::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +1523:Ins_UNKNOWN +1524:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\2c\20bool\29 +1525:GrSurfaceProxyView::mipmapped\28\29\20const +1526:GrSurfaceProxy::instantiateImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::UniqueKey\20const*\29 +1527:GrSimpleMeshDrawOpHelperWithStencil::isCompatible\28GrSimpleMeshDrawOpHelperWithStencil\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +1528:GrSimpleMeshDrawOpHelperWithStencil::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1529:GrShape::simplifyRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +1530:GrQuad::projectedBounds\28\29\20const +1531:GrProcessorSet::MakeEmptySet\28\29 +1532:GrPorterDuffXPFactory::SimpleSrcOverXP\28\29 +1533:GrPixmap::Allocate\28GrImageInfo\20const&\29 +1534:GrPathTessellationShader::MakeSimpleTriangleShader\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +1535:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29 +1536:GrImageInfo::operator=\28GrImageInfo&&\29 +1537:GrImageInfo::makeColorType\28GrColorType\29\20const +1538:GrGpuResource::setUniqueKey\28skgpu::UniqueKey\20const&\29 +1539:GrGpuResource::release\28\29 +1540:GrGpuResource::isPurgeable\28\29\20const +1541:GrGeometryProcessor::textureSampler\28int\29\20const +1542:GrGeometryProcessor::AttributeSet::begin\28\29\20const +1543:GrGLSLShaderBuilder::addFeature\28unsigned\20int\2c\20char\20const*\29 +1544:GrGLGpu::clearErrorsAndCheckForOOM\28\29 +1545:GrGLGpu::bindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\2c\20GrGLGpu::TempFBOTarget\29 +1546:GrGLCompileAndAttachShader\28GrGLContext\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20bool\2c\20GrThreadSafePipelineBuilder::Stats*\2c\20skgpu::ShaderErrorHandler*\29 +1547:GrFragmentProcessor::MakeColor\28SkRGBA4f<\28SkAlphaType\292>\29 +1548:GrDirectContextPriv::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +1549:GrDefaultGeoProcFactory::Make\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +1550:GrConvertPixels\28GrPixmap\20const&\2c\20GrCPixmap\20const&\2c\20bool\29 +1551:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +1552:GrColorInfo::GrColorInfo\28\29 +1553:GrBlurUtils::convolve_gaussian_1d\28skgpu::ganesh::SurfaceFillContext*\2c\20GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\2c\20SkIRect\20const&\2c\20SkAlphaType\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\29 +1554:GrBackendTexture::GrBackendTexture\28\29 +1555:GrBackendFormat::operator=\28GrBackendFormat\20const&\29 +1556:FT_Stream_Read +1557:FT_GlyphLoader_Rewind +1558:Cr_z_inflate +1559:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1560:void\20std::__2::__stable_sort\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\2c\20long\29 +1561:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20unsigned\20int*&\2c\20unsigned\20int*&\29 +1562:void\20icu_73::\28anonymous\20namespace\29::MixedBlocks::extend\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\29 +1563:void\20hb_serialize_context_t::add_link\2c\20true>>\28OT::OffsetTo\2c\20true>&\2c\20unsigned\20int\2c\20hb_serialize_context_t::whence_t\2c\20unsigned\20int\29 +1564:void\20emscripten::internal::MemberAccess::setWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20bool\29 +1565:utext_nativeLength_73 +1566:ures_getStringByKeyWithFallback_73 +1567:uprv_strnicmp_73 +1568:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +1569:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +1570:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +1571:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +1572:ulocimp_getKeywordValue_73 +1573:ulocimp_getCountry_73\28char\20const*\2c\20char\20const**\2c\20UErrorCode&\29 +1574:uenum_close_73 +1575:udata_getMemory_73 +1576:ucptrie_openFromBinary_73 +1577:u_charsToUChars_73 +1578:toupper +1579:top12.2 +1580:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1581:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1582:std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>::_EnableIfConvertible\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot>::type\20std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot>\28skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot*\29\20const +1583:std::__2::ctype::narrow\5babi:v160004\5d\28char\2c\20char\29\20const +1584:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\29 +1585:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1586:std::__2::basic_streambuf>::setg\5babi:v160004\5d\28char*\2c\20char*\2c\20char*\29 +1587:std::__2::basic_ios>::~basic_ios\28\29 +1588:std::__2::__num_get::__stage2_int_loop\28wchar_t\2c\20int\2c\20char*\2c\20char*&\2c\20unsigned\20int&\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20wchar_t\20const*\29 +1589:std::__2::__num_get::__stage2_int_loop\28char\2c\20int\2c\20char*\2c\20char*&\2c\20unsigned\20int&\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20char\20const*\29 +1590:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1591:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1592:src_p\28unsigned\20char\2c\20unsigned\20char\29 +1593:skia_private::TArray::push_back\28skif::FilterResult::Builder::SampledFilterResult&&\29 +1594:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +1595:skia_private::TArray::resize_back\28int\29 +1596:skia_private::TArray::operator=\28skia_private::TArray&&\29 +1597:skia_png_get_valid +1598:skia_png_gamma_8bit_correct +1599:skia_png_free_data +1600:skia_png_chunk_warning +1601:skia::textlayout::TextLine::measureTextInsideOneRun\28skia::textlayout::SkRange\2c\20skia::textlayout::Run\20const*\2c\20float\2c\20float\2c\20bool\2c\20skia::textlayout::TextLine::TextAdjustment\29\20const +1602:skia::textlayout::Run::positionX\28unsigned\20long\29\20const +1603:skia::textlayout::Run::Run\28skia::textlayout::ParagraphImpl*\2c\20SkShaper::RunHandler::RunInfo\20const&\2c\20unsigned\20long\2c\20float\2c\20bool\2c\20float\2c\20unsigned\20long\2c\20float\29 +1604:skia::textlayout::ParagraphCacheKey::operator==\28skia::textlayout::ParagraphCacheKey\20const&\29\20const +1605:skia::textlayout::FontCollection::enableFontFallback\28\29 +1606:skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\294>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\298>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::ReplicateLineEndPoints\2c\20skgpu::tess::TrackJoinControlPoints>::chopAndWriteCubics\28skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20int\29 +1607:skgpu::ganesh::SmallPathAtlasMgr::reset\28\29 +1608:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::vertexSize\28\29\20const +1609:skgpu::ganesh::Device::readSurfaceView\28\29 +1610:skgpu::ganesh::ClipStack::clip\28skgpu::ganesh::ClipStack::RawElement&&\29 +1611:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::RawElement\20const&\29\20const +1612:skgpu::ganesh::ClipStack::RawElement::RawElement\28SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\2c\20SkClipOp\29 +1613:skgpu::TAsyncReadResult::Plane&\20skia_private::TArray::Plane\2c\20false>::emplace_back\2c\20unsigned\20long&>\28sk_sp&&\2c\20unsigned\20long&\29 +1614:skgpu::Swizzle::asString\28\29\20const +1615:skgpu::ScratchKey::GenerateResourceType\28\29 +1616:skgpu::GetBlendFormula\28bool\2c\20bool\2c\20SkBlendMode\29 +1617:skgpu::GetApproxSize\28SkISize\29 +1618:select_curve_ops\28skcms_Curve\20const*\2c\20int\2c\20OpAndArg*\29 +1619:sbrk +1620:ps_tofixedarray +1621:processPropertySeq\28UBiDi*\2c\20LevState*\2c\20unsigned\20char\2c\20int\2c\20int\29 +1622:png_format_buffer +1623:png_check_keyword +1624:nextafterf +1625:jpeg_huff_decode +1626:init_entry\28char\20const*\2c\20char\20const*\2c\20UErrorCode*\29 +1627:icu_73::UnicodeString::countChar32\28int\2c\20int\29\20const +1628:icu_73::UnicodeSet::getRangeStart\28int\29\20const +1629:icu_73::UnicodeSet::getRangeEnd\28int\29\20const +1630:icu_73::UnicodeSet::getRangeCount\28\29\20const +1631:icu_73::UVector::UVector\28void\20\28*\29\28void*\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20int\2c\20UErrorCode&\29 +1632:icu_73::UVector32::addElement\28int\2c\20UErrorCode&\29 +1633:icu_73::UVector32::UVector32\28int\2c\20UErrorCode&\29 +1634:icu_73::UCharsTrie::next\28int\29 +1635:icu_73::UCharsTrie::branchNext\28char16_t\20const*\2c\20int\2c\20int\29 +1636:icu_73::ReorderingBuffer::appendSupplementary\28int\2c\20unsigned\20char\2c\20UErrorCode&\29 +1637:icu_73::Norm2AllModes::createNFCInstance\28UErrorCode&\29 +1638:icu_73::LanguageBreakEngine::LanguageBreakEngine\28\29 +1639:icu_73::CharacterProperties::getInclusionsForProperty\28UProperty\2c\20UErrorCode&\29 +1640:icu_73::CharString::ensureCapacity\28int\2c\20int\2c\20UErrorCode&\29 +1641:hb_unicode_funcs_destroy +1642:hb_serialize_context_t::pop_discard\28\29 +1643:hb_buffer_set_flags +1644:hb_blob_create_sub_blob +1645:hb_array_t::hash\28\29\20const +1646:hairquad\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkRect\20const*\2c\20SkRect\20const*\2c\20SkBlitter*\2c\20int\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +1647:haircubic\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkRect\20const*\2c\20SkRect\20const*\2c\20SkBlitter*\2c\20int\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +1648:fmt_u +1649:flush_pending +1650:emscripten::internal::Invoker>::invoke\28sk_sp\20\28*\29\28\29\29 +1651:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\29\2c\20SkPath*\29 +1652:do_fixed +1653:destroy_face +1654:decltype\28fp\28\28SkRecords::NoOp*\29\28nullptr\29\29\29\20SkRecord::Record::mutate\28SkRecord::Destroyer&\29 +1655:char*\20const&\20std::__2::max\5babi:v160004\5d\28char*\20const&\2c\20char*\20const&\29 +1656:cf2_stack_pushInt +1657:cf2_interpT2CharString +1658:cf2_glyphpath_moveTo +1659:byn$mgfn-shared$SkUnicode_icu::isEmoji\28int\29 +1660:byn$mgfn-shared$SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +1661:byn$mgfn-shared$GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +1662:bool\20hb_hashmap_t::set_with_hash\28unsigned\20int\20const&\2c\20unsigned\20int\2c\20unsigned\20int\20const&\2c\20bool\29 +1663:bool\20emscripten::internal::MemberAccess::getWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +1664:_isVariantSubtag\28char\20const*\2c\20int\29 +1665:_hb_ot_metrics_get_position_common\28hb_font_t*\2c\20hb_ot_metrics_tag_t\2c\20int*\29 +1666:_getStringOrCopyKey\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +1667:__wasi_syscall_ret +1668:__tandf +1669:__syscall_ret +1670:__floatunsitf +1671:__cxa_allocate_exception +1672:\28anonymous\20namespace\29::SkBlurImageFilter::~SkBlurImageFilter\28\29 +1673:\28anonymous\20namespace\29::PathGeoBuilder::createMeshAndPutBackReserve\28\29 +1674:\28anonymous\20namespace\29::MeshOp::fixedFunctionFlags\28\29\20const +1675:\28anonymous\20namespace\29::DrawAtlasOpImpl::fixedFunctionFlags\28\29\20const +1676:WebPDemuxGetI +1677:VP8LDoFillBitWindow +1678:VP8LClear +1679:TT_Get_MM_Var +1680:SkWStream::writeScalar\28float\29 +1681:SkUTF::UTF8ToUTF16\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20unsigned\20long\29 +1682:SkTypeface::MakeEmpty\28\29 +1683:SkTSect::BinarySearch\28SkTSect*\2c\20SkTSect*\2c\20SkIntersections*\29 +1684:SkTConic::operator\5b\5d\28int\29\20const +1685:SkTBlockList::reset\28\29 +1686:SkTBlockList::reset\28\29 +1687:SkSurfaces::RenderTarget\28GrRecordingContext*\2c\20skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20int\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const*\2c\20bool\2c\20bool\29 +1688:SkString::insertU32\28unsigned\20long\2c\20unsigned\20int\29 +1689:SkScan::FillRect\28SkRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +1690:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1691:SkSL::optimize_comparison\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20bool\20\28*\29\28double\2c\20double\29\29 +1692:SkSL::Type::convertArraySize\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20long\20long\29\20const +1693:SkSL::RP::Builder::dot_floats\28int\29 +1694:SkSL::ProgramUsage::get\28SkSL::FunctionDeclaration\20const&\29\20const +1695:SkSL::Parser::type\28SkSL::Modifiers*\29 +1696:SkSL::Parser::modifiers\28\29 +1697:SkSL::ConstructorDiagonalMatrix::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1698:SkSL::ConstructorArrayCast::~ConstructorArrayCast\28\29 +1699:SkSL::ConstantFolder::MakeConstantValueForVariable\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1700:SkSL::Compiler::~Compiler\28\29 +1701:SkSL::Block::Make\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::shared_ptr\29 +1702:SkSL::Analysis::IsTrivialExpression\28SkSL::Expression\20const&\29 +1703:SkRuntimeEffectPriv::CanDraw\28SkCapabilities\20const*\2c\20SkRuntimeEffect\20const*\29 +1704:SkRegion::setPath\28SkPath\20const&\2c\20SkRegion\20const&\29 +1705:SkRegion::operator=\28SkRegion\20const&\29 +1706:SkRegion::op\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\29 +1707:SkRegion::Iterator::next\28\29 +1708:SkRasterPipeline::compile\28\29\20const +1709:SkRasterPipeline::appendClampIfNormalized\28SkImageInfo\20const&\29 +1710:SkRRect::transform\28SkMatrix\20const&\2c\20SkRRect*\29\20const +1711:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20SkBBHFactory*\29 +1712:SkPathWriter::finishContour\28\29 +1713:SkPathStroker::cubicPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +1714:SkPath::getSegmentMasks\28\29\20const +1715:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\29 +1716:SkPaintPriv::ComputeLuminanceColor\28SkPaint\20const&\29 +1717:SkPaint::setBlender\28sk_sp\29 +1718:SkPaint::nothingToDraw\28\29\20const +1719:SkPaint::isSrcOver\28\29\20const +1720:SkOpAngle::linesOnOriginalSide\28SkOpAngle\20const*\29 +1721:SkNotifyBitmapGenIDIsStale\28unsigned\20int\29 +1722:SkNoDrawCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +1723:SkMipmap::Build\28SkPixmap\20const&\2c\20SkDiscardableMemory*\20\28*\29\28unsigned\20long\29\2c\20bool\29 +1724:SkMeshSpecification::~SkMeshSpecification\28\29 +1725:SkMatrix::setSinCos\28float\2c\20float\2c\20float\2c\20float\29 +1726:SkMatrix::setRSXform\28SkRSXform\20const&\29 +1727:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint3\20const*\2c\20int\29\20const +1728:SkMatrix::decomposeScale\28SkSize*\2c\20SkMatrix*\29\20const +1729:SkMaskFilterBase::getFlattenableType\28\29\20const +1730:SkMaskBuilder::AllocImage\28unsigned\20long\2c\20SkMaskBuilder::AllocType\29 +1731:SkIntersections::insertNear\28double\2c\20double\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29 +1732:SkIntersections::flip\28\29 +1733:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +1734:SkImageFilter_Base::~SkImageFilter_Base\28\29 +1735:SkImage::isAlphaOnly\28\29\20const +1736:SkGlyph::drawable\28\29\20const +1737:SkFont::unicharToGlyph\28int\29\20const +1738:SkFont::setTypeface\28sk_sp\29 +1739:SkFont::setHinting\28SkFontHinting\29 +1740:SkFindQuadMaxCurvature\28SkPoint\20const*\29 +1741:SkEvalCubicAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29 +1742:SkDrawTiler::stepAndSetupTileDraw\28\29 +1743:SkDrawTiler::SkDrawTiler\28SkBitmapDevice*\2c\20SkRect\20const*\29 +1744:SkDevice::accessPixels\28SkPixmap*\29 +1745:SkDeque::SkDeque\28unsigned\20long\2c\20void*\2c\20unsigned\20long\2c\20int\29 +1746:SkDCubic::FindExtrema\28double\20const*\2c\20double*\29 +1747:SkColorFilters::Blend\28unsigned\20int\2c\20SkBlendMode\29 +1748:SkCanvas::internalRestore\28\29 +1749:SkCanvas::init\28sk_sp\29 +1750:SkCanvas::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +1751:SkCanvas::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +1752:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\2c\20SkEnumBitMask\29 +1753:SkBitmap::operator=\28SkBitmap&&\29 +1754:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29 +1755:SkAAClip::SkAAClip\28\29 +1756:OT::glyf_accelerator_t::glyf_accelerator_t\28hb_face_t*\29 +1757:OT::VariationStore::sanitize\28hb_sanitize_context_t*\29\20const +1758:OT::Layout::GPOS_impl::ValueFormat::sanitize_value_devices\28hb_sanitize_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\29\20const +1759:OT::Layout::GPOS_impl::ValueFormat::apply_value\28OT::hb_ot_apply_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\2c\20hb_glyph_position_t&\29\20const +1760:OT::HVARVVAR::sanitize\28hb_sanitize_context_t*\29\20const +1761:GrTriangulator::VertexList::insert\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\29 +1762:GrTriangulator::Poly::addEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20GrTriangulator*\29 +1763:GrTriangulator::EdgeList::remove\28GrTriangulator::Edge*\29 +1764:GrStyledShape::operator=\28GrStyledShape\20const&\29 +1765:GrSimpleMeshDrawOpHelperWithStencil::createProgramInfoWithStencil\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +1766:GrResourceCache::purgeAsNeeded\28\29 +1767:GrRenderTask::addDependency\28GrDrawingManager*\2c\20GrSurfaceProxy*\2c\20skgpu::Mipmapped\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +1768:GrRenderTask::GrRenderTask\28\29 +1769:GrRenderTarget::onRelease\28\29 +1770:GrProxyProvider::findOrCreateProxyByUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxy::UseAllocator\29 +1771:GrProcessorSet::operator==\28GrProcessorSet\20const&\29\20const +1772:GrPathUtils::generateQuadraticPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +1773:GrMeshDrawOp::QuadHelper::QuadHelper\28GrMeshDrawTarget*\2c\20unsigned\20long\2c\20int\29 +1774:GrIsStrokeHairlineOrEquivalent\28GrStyle\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +1775:GrImageContext::abandoned\28\29 +1776:GrGpuResource::registerWithCache\28skgpu::Budgeted\29 +1777:GrGpuBuffer::isMapped\28\29\20const +1778:GrGpu::submitToGpu\28GrSyncCpu\29 +1779:GrGpu::didWriteToSurface\28GrSurface*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const*\2c\20unsigned\20int\29\20const +1780:GrGeometryProcessor::ProgramImpl::setupUniformColor\28GrGLSLFPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20GrResourceHandle*\29 +1781:GrGLGpu::flushRenderTarget\28GrGLRenderTarget*\2c\20bool\29 +1782:GrFragmentProcessor::visitTextureEffects\28std::__2::function\20const&\29\20const +1783:GrFragmentProcessor::visitProxies\28std::__2::function\20const&\29\20const +1784:GrCpuBuffer::ref\28\29\20const +1785:GrBufferAllocPool::makeSpace\28unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\29 +1786:GrBackendTextures::GetGLTextureInfo\28GrBackendTexture\20const&\2c\20GrGLTextureInfo*\29 +1787:FilterLoop26_C +1788:FT_Vector_Transform +1789:FT_Vector_NormLen +1790:FT_Outline_Transform +1791:FT_Done_Face +1792:CFF::dict_opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1793:AlmostBetweenUlps\28float\2c\20float\2c\20float\29 +1794:void\20std::__2::vector>::__emplace_back_slow_path\28skia::textlayout::OneLineShaper::RunBlock&\29 +1795:utext_openUChars_73 +1796:utext_char32At_73 +1797:ures_openWithType\28UResourceBundle*\2c\20char\20const*\2c\20char\20const*\2c\20UResOpenType\2c\20UErrorCode*\29 +1798:ures_openDirect_73 +1799:ures_getSize_73 +1800:uprv_min_73 +1801:uloc_forLanguageTag_73 +1802:uhash_openSize_73 +1803:udata_openChoice_73 +1804:ucptrie_internalSmallU8Index_73 +1805:ucptrie_get_73 +1806:ubidi_getMemory_73 +1807:ubidi_getClass_73 +1808:transform\28unsigned\20int*\2c\20unsigned\20char\20const*\29 +1809:toUpperOrTitle\28int\2c\20int\20\28*\29\28void*\2c\20signed\20char\29\2c\20void*\2c\20char16_t\20const**\2c\20int\2c\20signed\20char\29 +1810:strtod +1811:strcspn +1812:std::__2::vector>::__append\28unsigned\20long\29 +1813:std::__2::unique_ptr>\20SkSL::coalesce_pairwise_vectors\28std::__2::array\20const&\2c\20double\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\2c\20double\20\28*\29\28double\29\29 +1814:std::__2::locale::locale\28std::__2::locale\20const&\29 +1815:std::__2::locale::classic\28\29 +1816:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +1817:std::__2::chrono::__libcpp_steady_clock_now\28\29 +1818:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by_and_replace\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20char\20const*\29 +1819:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +1820:std::__2::basic_streambuf>::~basic_streambuf\28\29 +1821:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1822:std::__2::__wrap_iter\20std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float\20const*\2c\20float\20const*\29 +1823:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1824:std::__2::__throw_bad_variant_access\5babi:v160004\5d\28\29 +1825:std::__2::__split_buffer>::push_front\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +1826:std::__2::__shared_count::__release_shared\5babi:v160004\5d\28\29 +1827:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20wchar_t&\29 +1828:std::__2::__num_get::__do_widen\28std::__2::ios_base&\2c\20wchar_t*\29\20const +1829:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20char&\29 +1830:std::__2::__itoa::__append1\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1831:sktext::gpu::VertexFiller::vertexStride\28SkMatrix\20const&\29\20const +1832:skif::\28anonymous\20namespace\29::AutoSurface::snap\28\29 +1833:skif::\28anonymous\20namespace\29::AutoSurface::AutoSurface\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20bool\2c\20SkSurfaceProps\20const*\29 +1834:skif::Mapping::adjustLayerSpace\28SkMatrix\20const&\29 +1835:skif::LayerSpace::round\28\29\20const +1836:skif::FilterResult::analyzeBounds\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20bool\29\20const +1837:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair&&\29 +1838:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::UniqueKey\20const&\29 +1839:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +1840:skia_private::TArray::resize_back\28int\29 +1841:skia_private::TArray::push_back_raw\28int\29 +1842:skia_png_sig_cmp +1843:skia_png_set_progressive_read_fn +1844:skia_png_set_longjmp_fn +1845:skia_png_set_interlace_handling +1846:skia_png_reciprocal +1847:skia_png_read_chunk_header +1848:skia_png_get_io_ptr +1849:skia_png_calloc +1850:skia::textlayout::TextLine::~TextLine\28\29 +1851:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle\20const&\29 +1852:skia::textlayout::ParagraphCacheKey::~ParagraphCacheKey\28\29 +1853:skia::textlayout::FontCollection::findTypefaces\28std::__2::vector>\20const&\2c\20SkFontStyle\2c\20std::__2::optional\20const&\29 +1854:skia::textlayout::Cluster::trimmedWidth\28unsigned\20long\29\20const +1855:skgpu::ganesh::TextureOp::BatchSizeLimiter::createOp\28GrTextureSetEntry*\2c\20int\2c\20GrAAType\29 +1856:skgpu::ganesh::SurfaceFillContext::fillWithFP\28std::__2::unique_ptr>\29 +1857:skgpu::ganesh::SurfaceDrawContext::drawShapeUsingPathRenderer\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\2c\20bool\29 +1858:skgpu::ganesh::SurfaceDrawContext::drawRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const*\29 +1859:skgpu::ganesh::SurfaceDrawContext::drawRRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20GrStyle\20const&\29 +1860:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29 +1861:skgpu::ganesh::QuadPerEdgeAA::CalcIndexBufferOption\28GrAAType\2c\20int\29 +1862:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrSurfaceProxyView\20const&\29\20const +1863:skgpu::ganesh::Device::targetProxy\28\29 +1864:skgpu::ganesh::ClipStack::getConservativeBounds\28\29\20const +1865:skgpu::TAsyncReadResult::addTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult\20const&\2c\20SkISize\2c\20unsigned\20long\2c\20skgpu::TClientMappedBufferManager*\29 +1866:skgpu::Plot::resetRects\28\29 +1867:skcms_TransferFunction_isPQish +1868:skcms_TransferFunction_invert +1869:skcms_Matrix3x3_concat +1870:ps_dimension_add_t1stem +1871:log2f +1872:log +1873:jcopy_sample_rows +1874:icu_73::initSingletons\28char\20const*\2c\20UErrorCode&\29 +1875:icu_73::\28anonymous\20namespace\29::AliasReplacer::replaceLanguage\28bool\2c\20bool\2c\20bool\2c\20icu_73::UVector&\2c\20UErrorCode&\29 +1876:icu_73::UnicodeString::append\28int\29 +1877:icu_73::UnicodeSetStringSpan::UnicodeSetStringSpan\28icu_73::UnicodeSet\20const&\2c\20icu_73::UVector\20const&\2c\20unsigned\20int\29 +1878:icu_73::UnicodeSet::spanUTF8\28char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1879:icu_73::UnicodeSet::spanBack\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1880:icu_73::UnicodeSet::spanBackUTF8\28char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1881:icu_73::UnicodeSet::retain\28int\20const*\2c\20int\2c\20signed\20char\29 +1882:icu_73::UnicodeSet::removeAllStrings\28\29 +1883:icu_73::UnicodeSet::operator=\28icu_73::UnicodeSet\20const&\29 +1884:icu_73::UnicodeSet::complement\28\29 +1885:icu_73::UnicodeSet::_add\28icu_73::UnicodeString\20const&\29 +1886:icu_73::UVector::indexOf\28void*\2c\20int\29\20const +1887:icu_73::UVector::UVector\28void\20\28*\29\28void*\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +1888:icu_73::UCharsTrieBuilder::write\28char16_t\20const*\2c\20int\29 +1889:icu_73::StringEnumeration::~StringEnumeration\28\29 +1890:icu_73::StackUResourceBundle::StackUResourceBundle\28\29 +1891:icu_73::RuleCharacterIterator::getPos\28icu_73::RuleCharacterIterator::Pos&\29\20const +1892:icu_73::RuleBasedBreakIterator::BreakCache::populatePreceding\28UErrorCode&\29 +1893:icu_73::ReorderingBuffer::previousCC\28\29 +1894:icu_73::Normalizer2Impl::compose\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20signed\20char\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +1895:icu_73::Normalizer2Factory::getNFCImpl\28UErrorCode&\29 +1896:icu_73::LocaleUtility::initLocaleFromName\28icu_73::UnicodeString\20const&\2c\20icu_73::Locale&\29 +1897:icu_73::LocaleKeyFactory::~LocaleKeyFactory\28\29 +1898:icu_73::Locale::setToBogus\28\29 +1899:icu_73::CheckedArrayByteSink::CheckedArrayByteSink\28char*\2c\20int\29 +1900:icu_73::BreakIterator::createInstance\28icu_73::Locale\20const&\2c\20int\2c\20UErrorCode&\29 +1901:hb_font_t::has_func\28unsigned\20int\29 +1902:hb_buffer_create_similar +1903:ft_service_list_lookup +1904:fseek +1905:fiprintf +1906:fflush +1907:expm1 +1908:emscripten::internal::MethodInvoker::invoke\28void\20\28GrDirectContext::*\20const&\29\28\29\2c\20GrDirectContext*\29 +1909:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +1910:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFont&\29\2c\20SkFont*\29 +1911:do_putc +1912:crc32_z +1913:cf2_hintmap_insertHint +1914:cf2_hintmap_build +1915:cf2_glyphpath_pushPrevElem +1916:byn$mgfn-shared$std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +1917:byn$mgfn-shared$std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +1918:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +1919:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +1920:byn$mgfn-shared$skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +1921:byn$mgfn-shared$skif::Backend::~Backend\28\29.1 +1922:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +1923:append_multitexture_lookup\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20GrGLSLVarying\20const&\2c\20char\20const*\2c\20char\20const*\29 +1924:afm_stream_read_one +1925:af_latin_hints_link_segments +1926:af_latin_compute_stem_width +1927:af_glyph_hints_reload +1928:acosf +1929:__sin +1930:__cos +1931:\28anonymous\20namespace\29::PathSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +1932:VP8LHuffmanTablesDeallocate +1933:UDataMemory_createNewInstance_73 +1934:SkWriter32::writeSampling\28SkSamplingOptions\20const&\29 +1935:SkVertices::Builder::detach\28\29 +1936:SkUTF::NextUTF8WithReplacement\28char\20const**\2c\20char\20const*\29 +1937:SkTypeface_FreeType::~SkTypeface_FreeType\28\29 +1938:SkTypeface_FreeType::FaceRec::~FaceRec\28\29 +1939:SkTypeface::SkTypeface\28SkFontStyle\20const&\2c\20bool\29 +1940:SkTreatAsSprite\28SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkSamplingOptions\20const&\2c\20bool\29 +1941:SkTextBlobBuilder::TightRunBounds\28SkTextBlob::RunRecord\20const&\29 +1942:SkTextBlob::RunRecord::textSizePtr\28\29\20const +1943:SkTMultiMap::remove\28skgpu::ScratchKey\20const&\2c\20GrGpuResource\20const*\29 +1944:SkTMultiMap::insert\28skgpu::ScratchKey\20const&\2c\20GrGpuResource*\29 +1945:SkTDStorage::insert\28int\2c\20int\2c\20void\20const*\29 +1946:SkTDPQueue<\28anonymous\20namespace\29::RunIteratorQueue::Entry\2c\20&\28anonymous\20namespace\29::RunIteratorQueue::CompareEntry\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29\2c\20\28int*\20\28*\29\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29\290>::insert\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\29 +1947:SkSwizzler::Make\28SkEncodedInfo\20const&\2c\20unsigned\20int\20const*\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20SkIRect\20const*\29 +1948:SkSurface_Base::~SkSurface_Base\28\29 +1949:SkSurfaceProps::SkSurfaceProps\28unsigned\20int\2c\20SkPixelGeometry\29 +1950:SkSurface::recordingContext\28\29\20const +1951:SkString::resize\28unsigned\20long\29 +1952:SkStrikeSpec::SkStrikeSpec\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1953:SkStrikeSpec::MakeMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1954:SkStrikeSpec::MakeCanonicalized\28SkFont\20const&\2c\20SkPaint\20const*\29 +1955:SkStrikeCache::findOrCreateStrike\28SkStrikeSpec\20const&\29 +1956:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +1957:SkShaders::MatrixRec::applyForFragmentProcessor\28SkMatrix\20const&\29\20const +1958:SkShaders::MatrixRec::MatrixRec\28SkMatrix\20const&\29 +1959:SkShaders::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +1960:SkScan::FillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\29 +1961:SkScalerContext_FreeType::emboldenIfNeeded\28FT_FaceRec_*\2c\20FT_GlyphSlotRec_*\2c\20unsigned\20short\29 +1962:SkSL::Type::displayName\28\29\20const +1963:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20double\2c\20SkSL::Position\29\20const +1964:SkSL::ThreadContext::SetErrorReporter\28SkSL::ErrorReporter*\29 +1965:SkSL::SymbolTable::find\28std::__2::basic_string_view>\29\20const +1966:SkSL::String::Separator\28\29::Output::~Output\28\29 +1967:SkSL::RP::SlotManager::addSlotDebugInfoForGroup\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20int*\2c\20bool\29 +1968:SkSL::RP::Generator::foldComparisonOp\28SkSL::Operator\2c\20int\29 +1969:SkSL::RP::Builder::branch_if_no_lanes_active\28int\29 +1970:SkSL::PrefixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +1971:SkSL::PipelineStage::PipelineStageCodeGenerator::typedVariable\28SkSL::Type\20const&\2c\20std::__2::basic_string_view>\29 +1972:SkSL::Parser::parseArrayDimensions\28SkSL::Position\2c\20SkSL::Type\20const**\29 +1973:SkSL::Parser::arraySize\28long\20long*\29 +1974:SkSL::Operator::operatorName\28\29\20const +1975:SkSL::ModifierFlags::paddedDescription\28\29\20const +1976:SkSL::ConstantFolder::GetConstantValue\28SkSL::Expression\20const&\2c\20double*\29 +1977:SkSL::ConstantFolder::GetConstantInt\28SkSL::Expression\20const&\2c\20long\20long*\29 +1978:SkSL::Compiler::Compiler\28\29 +1979:SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +1980:SkResourceCache::remove\28SkResourceCache::Rec*\29 +1981:SkRegion::op\28SkRegion\20const&\2c\20SkIRect\20const&\2c\20SkRegion::Op\29 +1982:SkRegion::Iterator::Iterator\28SkRegion\20const&\29 +1983:SkRecords::FillBounds::bounds\28SkRecords::DrawArc\20const&\29\20const +1984:SkReadBuffer::setMemory\28void\20const*\2c\20unsigned\20long\29 +1985:SkRasterClip::SkRasterClip\28SkIRect\20const&\29 +1986:SkRRect::writeToMemory\28void*\29\20const +1987:SkRRect::setRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +1988:SkPointPriv::DistanceToLineBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPointPriv::Side*\29 +1989:SkPoint::setNormalize\28float\2c\20float\29 +1990:SkPictureRecorder::finishRecordingAsPicture\28\29 +1991:SkPathPriv::ComputeFirstDirection\28SkPath\20const&\29 +1992:SkPathEffect::asADash\28SkPathEffect::DashInfo*\29\20const +1993:SkPathEdgeIter::SkPathEdgeIter\28SkPath\20const&\29 +1994:SkPath::rewind\28\29 +1995:SkPath::isLine\28SkPoint*\29\20const +1996:SkPath::incReserve\28int\29 +1997:SkPath::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +1998:SkPaint::setStrokeCap\28SkPaint::Cap\29 +1999:SkPaint::refShader\28\29\20const +2000:SkOpSpan::setWindSum\28int\29 +2001:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20int\2c\20SkOpSpanBase**\29 +2002:SkOpContourBuilder::addCurve\28SkPath::Verb\2c\20SkPoint\20const*\2c\20float\29 +2003:SkOpAngle::starter\28\29 +2004:SkOpAngle::insert\28SkOpAngle*\29 +2005:SkNoDestructor::SkNoDestructor\28SkSL::String::Separator\28\29::Output&&\29 +2006:SkMatrix::setSinCos\28float\2c\20float\29 +2007:SkMaskFilter::MakeBlur\28SkBlurStyle\2c\20float\2c\20bool\29 +2008:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29 +2009:SkLineClipper::IntersectLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\29 +2010:SkImage_GaneshBase::SkImage_GaneshBase\28sk_sp\2c\20SkImageInfo\2c\20unsigned\20int\29 +2011:SkImageFilters::Empty\28\29 +2012:SkImageFilters::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +2013:SkImage::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +2014:SkImage::makeRasterImage\28GrDirectContext*\2c\20SkImage::CachingHint\29\20const +2015:SkIDChangeListener::SkIDChangeListener\28\29 +2016:SkIDChangeListener::List::reset\28\29 +2017:SkGradientBaseShader::flatten\28SkWriteBuffer&\29\20const +2018:SkFont::setEdging\28SkFont::Edging\29 +2019:SkEvalQuadAt\28SkPoint\20const*\2c\20float\29 +2020:SkEdgeClipper::next\28SkPoint*\29 +2021:SkDevice::scalerContextFlags\28\29\20const +2022:SkConic::evalAt\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +2023:SkColorInfo::SkColorInfo\28SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +2024:SkCodec::skipScanlines\28int\29 +2025:SkCodec::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +2026:SkChopCubicAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +2027:SkCapabilities::RasterBackend\28\29 +2028:SkCanvas::saveLayer\28SkCanvas::SaveLayerRec\20const&\29 +2029:SkCanvas::restore\28\29 +2030:SkCanvas::imageInfo\28\29\20const +2031:SkCanvas::drawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +2032:SkCanvas::drawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +2033:SkCanvas::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +2034:SkBmpBaseCodec::~SkBmpBaseCodec\28\29 +2035:SkBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +2036:SkBlendMode\20SkReadBuffer::read32LE\28SkBlendMode\29 +2037:SkBitmap::operator=\28SkBitmap\20const&\29 +2038:SkBitmap::extractSubset\28SkBitmap*\2c\20SkIRect\20const&\29\20const +2039:SkBinaryWriteBuffer::writeByteArray\28void\20const*\2c\20unsigned\20long\29 +2040:SkBinaryWriteBuffer::SkBinaryWriteBuffer\28SkSerialProcs\20const&\29 +2041:SkBaseShadowTessellator::handleLine\28SkPoint\20const&\29 +2042:SkAutoPixmapStorage::tryAlloc\28SkImageInfo\20const&\29 +2043:SkAutoDescriptor::~SkAutoDescriptor\28\29 +2044:SkAAClip::setRegion\28SkRegion\20const&\29 +2045:R +2046:OT::hb_ot_apply_context_t::_set_glyph_class\28unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +2047:OT::cmap::find_subtable\28unsigned\20int\2c\20unsigned\20int\29\20const +2048:GrXPFactory::FromBlendMode\28SkBlendMode\29 +2049:GrTriangulator::setBottom\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2050:GrTriangulator::mergeCollinearEdges\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2051:GrTriangulator::Edge::disconnect\28\29 +2052:GrThreadSafeCache::find\28skgpu::UniqueKey\20const&\29 +2053:GrThreadSafeCache::add\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2054:GrThreadSafeCache::Entry::makeEmpty\28\29 +2055:GrSurfaceProxyView::operator==\28GrSurfaceProxyView\20const&\29\20const +2056:GrSurfaceProxyView::Copy\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\29 +2057:GrSurfaceProxyPriv::doLazyInstantiation\28GrResourceProvider*\29 +2058:GrSurfaceProxy::isFunctionallyExact\28\29\20const +2059:GrSurfaceProxy::Copy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\2c\20sk_sp*\29 +2060:GrSimpleMeshDrawOpHelperWithStencil::fixedFunctionFlags\28\29\20const +2061:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20GrProcessorAnalysisColor*\29 +2062:GrSimpleMeshDrawOpHelper::CreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrProcessorSet&&\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\2c\20GrPipeline::InputFlags\2c\20GrUserStencilSettings\20const*\29 +2063:GrSimpleMeshDrawOpHelper::CreatePipeline\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20skgpu::Swizzle\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrProcessorSet&&\2c\20GrPipeline::InputFlags\29 +2064:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20void\20const*\2c\20skgpu::UniqueKey\20const&\29 +2065:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20skgpu::UniqueKey\20const&\2c\20void\20\28*\29\28skgpu::VertexWriter\2c\20unsigned\20long\29\29 +2066:GrResourceCache::findAndRefScratchResource\28skgpu::ScratchKey\20const&\29 +2067:GrRecordingContextPriv::makeSFC\28GrImageInfo\2c\20std::__2::basic_string_view>\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +2068:GrQuadUtils::TessellationHelper::Vertices::moveAlong\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +2069:GrQuad::asRect\28SkRect*\29\20const +2070:GrProcessorSet::GrProcessorSet\28GrProcessorSet&&\29 +2071:GrPathUtils::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +2072:GrGpu::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +2073:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +2074:GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +2075:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +2076:GrGLSLColorSpaceXformHelper::emitCode\28GrGLSLUniformHandler*\2c\20GrColorSpaceXform\20const*\2c\20unsigned\20int\29 +2077:GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +2078:GrGLRenderTarget::bindInternal\28unsigned\20int\2c\20bool\29 +2079:GrGLGpu::getErrorAndCheckForOOM\28\29 +2080:GrGLGpu::bindTexture\28int\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20GrGLTexture*\29 +2081:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkMatrix\20const&\29 +2082:GrFragmentProcessor::visitWithImpls\28std::__2::function\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\20const +2083:GrFragmentProcessor::ColorMatrix\28std::__2::unique_ptr>\2c\20float\20const*\2c\20bool\2c\20bool\2c\20bool\29 +2084:GrDrawingManager::appendTask\28sk_sp\29 +2085:GrColorInfo::GrColorInfo\28GrColorInfo\20const&\29 +2086:GrCaps::isFormatCompressed\28GrBackendFormat\20const&\29\20const +2087:GrAAConvexTessellator::lineTo\28SkPoint\20const&\2c\20GrAAConvexTessellator::CurveState\29 +2088:FT_Select_Metrics +2089:FT_Select_Charmap +2090:FT_Get_Next_Char +2091:FT_Get_Module_Interface +2092:FT_Done_Size +2093:DecodeImageStream +2094:CFF::opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +2095:CFF::Charset::get_glyph\28unsigned\20int\2c\20unsigned\20int\29\20const +2096:wuffs_gif__decoder__num_decoded_frames +2097:void\20std::__2::vector\2c\20std::__2::allocator>>::__push_back_slow_path\20const&>\28sk_sp\20const&\29 +2098:void\20std::__2::reverse\5babi:v160004\5d\28wchar_t*\2c\20wchar_t*\29 +2099:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.2 +2100:void\20merge_sort<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2101:void\20merge_sort<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2102:void\20icu_73::\28anonymous\20namespace\29::MixedBlocks::extend\28unsigned\20int\20const*\2c\20int\2c\20int\2c\20int\29 +2103:void\20emscripten::internal::MemberAccess::setWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts&\2c\20float\29 +2104:validate_offsetToRestore\28SkReadBuffer*\2c\20unsigned\20long\29 +2105:utrie2_enum_73 +2106:utext_clone_73 +2107:ustr_hashUCharsN_73 +2108:ures_appendResPath\28UResourceBundle*\2c\20char\20const*\2c\20int\2c\20UErrorCode*\29 +2109:uprv_isInvariantUString_73 +2110:umutablecptrie_set_73 +2111:umutablecptrie_close_73 +2112:uloc_getVariant_73 +2113:uloc_canonicalize_73 +2114:uhash_setValueDeleter_73 +2115:ubidi_setPara_73 +2116:ubidi_getVisualRun_73 +2117:ubidi_getRuns_73 +2118:u_strstr_73 +2119:u_getPropertyValueEnum_73 +2120:u_getIntPropertyValue_73 +2121:tt_set_mm_blend +2122:tt_face_get_ps_name +2123:trinkle +2124:strtox.1 +2125:strtoul +2126:std::__2::unique_ptr::release\5babi:v160004\5d\28\29 +2127:std::__2::pair\2c\20void*>*>\2c\20bool>\20std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::__emplace_unique_key_args\2c\20std::__2::tuple<>>\28GrTriangulator::Vertex*\20const&\2c\20std::__2::piecewise_construct_t\20const&\2c\20std::__2::tuple&&\2c\20std::__2::tuple<>&&\29 +2128:std::__2::pair::pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +2129:std::__2::moneypunct::do_decimal_point\28\29\20const +2130:std::__2::moneypunct::do_decimal_point\28\29\20const +2131:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28std::__2::basic_istream>&\29 +2132:std::__2::ios_base::good\5babi:v160004\5d\28\29\20const +2133:std::__2::default_delete\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair\2c\20SkIcuBreakIteratorCache::Request\2c\20skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair>::Slot\20\5b\5d>::_EnableIfConvertible\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair\2c\20SkIcuBreakIteratorCache::Request\2c\20skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair>::Slot>::type\20std::__2::default_delete\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair\2c\20SkIcuBreakIteratorCache::Request\2c\20skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair\2c\20SkIcuBreakIteratorCache::Request\2c\20skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair>::Slot>\28skia_private::THashTable\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair\2c\20SkIcuBreakIteratorCache::Request\2c\20skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair>::Slot*\29\20const +2134:std::__2::ctype::toupper\5babi:v160004\5d\28char\29\20const +2135:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +2136:std::__2::basic_string\2c\20std::__2::allocator>\20const*\20std::__2::__scan_keyword\5babi:v160004\5d>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype\20const&\2c\20unsigned\20int&\2c\20bool\29 +2137:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +2138:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +2139:std::__2::basic_string\2c\20std::__2::allocator>\20const*\20std::__2::__scan_keyword\5babi:v160004\5d>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype\20const&\2c\20unsigned\20int&\2c\20bool\29 +2140:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +2141:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +2142:std::__2::basic_string\2c\20std::__2::allocator>::__get_short_size\5babi:v160004\5d\28\29\20const +2143:std::__2::basic_string\2c\20std::__2::allocator>&\20std::__2::basic_string\2c\20std::__2::allocator>::__assign_no_alias\28char\20const*\2c\20unsigned\20long\29 +2144:std::__2::basic_streambuf>::__pbump\5babi:v160004\5d\28long\29 +2145:std::__2::basic_iostream>::~basic_iostream\28\29.1 +2146:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20wchar_t*\2c\20unsigned\20long\29 +2147:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20char*\2c\20unsigned\20long\29 +2148:std::__2::__num_put_base::__format_int\28char*\2c\20char\20const*\2c\20bool\2c\20unsigned\20int\29 +2149:std::__2::__num_put_base::__format_float\28char*\2c\20char\20const*\2c\20unsigned\20int\29 +2150:std::__2::__itoa::__append8\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2151:sktext::gpu::VertexFiller::deviceRectAndCheckTransform\28SkMatrix\20const&\29\20const +2152:sktext::gpu::TextBlob::Key::operator==\28sktext::gpu::TextBlob::Key\20const&\29\20const +2153:sktext::gpu::GlyphVector::packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29 +2154:sktext::SkStrikePromise::strike\28\29 +2155:skif::RoundIn\28SkRect\29 +2156:skif::LayerSpace::inverseMapRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29\20const +2157:skif::FilterResult::applyTransform\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29\20const +2158:skif::FilterResult::Builder::~Builder\28\29 +2159:skif::FilterResult::Builder::Builder\28skif::Context\20const&\29 +2160:skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::resize\28int\29 +2161:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +2162:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::resize\28int\29 +2163:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +2164:skia_private::THashTable::Traits>::resize\28int\29 +2165:skia_private::TArray::move\28void*\29 +2166:skia_private::TArray::push_back\28SkRasterPipeline_MemoryCtxInfo&&\29 +2167:skia_private::TArray\2c\20true>::push_back\28SkRGBA4f<\28SkAlphaType\293>&&\29 +2168:skia_png_set_text_2 +2169:skia_png_set_palette_to_rgb +2170:skia_png_handle_IHDR +2171:skia_png_handle_IEND +2172:skia_png_destroy_write_struct +2173:skia::textlayout::operator==\28skia::textlayout::FontArguments\20const&\2c\20skia::textlayout::FontArguments\20const&\29 +2174:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::Cluster*\29 +2175:skia::textlayout::FontCollection::getFontManagerOrder\28\29\20const +2176:skia::textlayout::FontArguments::FontArguments\28skia::textlayout::FontArguments\20const&\29 +2177:skia::textlayout::Decorations::calculateGaps\28skia::textlayout::TextLine::ClipContext\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\29 +2178:skia::textlayout::Block&\20skia_private::TArray::emplace_back\28unsigned\20long&&\2c\20unsigned\20long&&\2c\20skia::textlayout::TextStyle\20const&\29 +2179:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::fixedFunctionFlags\28\29\20const +2180:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +2181:skgpu::ganesh::SurfaceFillContext::SurfaceFillContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +2182:skgpu::ganesh::SurfaceDrawContext::drawShape\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\29 +2183:skgpu::ganesh::SurfaceDrawContext::drawPaint\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\29 +2184:skgpu::ganesh::SurfaceDrawContext::MakeWithFallback\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20SkBackingFit\2c\20SkISize\2c\20SkSurfaceProps\20const&\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +2185:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +2186:skgpu::ganesh::SurfaceContext::PixelTransferResult::operator=\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +2187:skgpu::ganesh::SmallPathAtlasMgr::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +2188:skgpu::ganesh::OpsTask::~OpsTask\28\29 +2189:skgpu::ganesh::OpsTask::setColorLoadOp\28GrLoadOp\2c\20std::__2::array\29 +2190:skgpu::ganesh::OpsTask::deleteOps\28\29 +2191:skgpu::ganesh::FillRectOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +2192:skgpu::ganesh::Device::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29::$_0::operator\28\29\28int\29\20const +2193:skgpu::ganesh::ClipStack::~ClipStack\28\29 +2194:skgpu::TClientMappedBufferManager::~TClientMappedBufferManager\28\29 +2195:skgpu::Swizzle::apply\28SkRasterPipeline*\29\20const +2196:skgpu::Plot::addSubImage\28int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +2197:skgpu::GetLCDBlendFormula\28SkBlendMode\29 +2198:skcms_TransferFunction_isHLGish +2199:sk_srgb_linear_singleton\28\29 +2200:shr +2201:shl +2202:setRegionCheck\28SkRegion*\2c\20SkRegion\20const&\29 +2203:res_getTableItemByIndex_73 +2204:res_getArrayItem_73 +2205:res_findResource_73 +2206:ps_dimension_set_mask_bits +2207:operator==\28SkPath\20const&\2c\20SkPath\20const&\29 +2208:mbrtowc +2209:jround_up +2210:jpeg_make_d_derived_tbl +2211:init\28\29 +2212:ilogbf +2213:icu_73::locale_set_default_internal\28char\20const*\2c\20UErrorCode&\29 +2214:icu_73::compute\28int\2c\20icu_73::ReadArray2D\20const&\2c\20icu_73::ReadArray2D\20const&\2c\20icu_73::ReadArray1D\20const&\2c\20icu_73::ReadArray1D\20const&\2c\20icu_73::Array1D&\2c\20icu_73::Array1D&\2c\20icu_73::Array1D&\29 +2215:icu_73::UnicodeString::getChar32Start\28int\29\20const +2216:icu_73::UnicodeString::extract\28int\2c\20int\2c\20char*\2c\20int\2c\20icu_73::UnicodeString::EInvariant\29\20const +2217:icu_73::UnicodeString::doReplace\28int\2c\20int\2c\20icu_73::UnicodeString\20const&\2c\20int\2c\20int\29 +2218:icu_73::UnicodeString::copyFrom\28icu_73::UnicodeString\20const&\2c\20signed\20char\29 +2219:icu_73::UnicodeString::UnicodeString\28signed\20char\2c\20icu_73::ConstChar16Ptr\2c\20int\29 +2220:icu_73::UnicodeSet::setToBogus\28\29 +2221:icu_73::UnicodeSet::freeze\28\29 +2222:icu_73::UnicodeSet::copyFrom\28icu_73::UnicodeSet\20const&\2c\20signed\20char\29 +2223:icu_73::UnicodeSet::add\28int\20const*\2c\20int\2c\20signed\20char\29 +2224:icu_73::UnicodeSet::_toPattern\28icu_73::UnicodeString&\2c\20signed\20char\29\20const +2225:icu_73::UnicodeSet::UnicodeSet\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29 +2226:icu_73::UVector::removeElementAt\28int\29 +2227:icu_73::UDataPathIterator::next\28UErrorCode*\29 +2228:icu_73::StringTrieBuilder::writeNode\28int\2c\20int\2c\20int\29 +2229:icu_73::StringEnumeration::StringEnumeration\28\29 +2230:icu_73::SimpleFilteredSentenceBreakIterator::breakExceptionAt\28int\29 +2231:icu_73::RuleBasedBreakIterator::DictionaryCache::reset\28\29 +2232:icu_73::RuleBasedBreakIterator::BreakCache::reset\28int\2c\20int\29 +2233:icu_73::RuleBasedBreakIterator::BreakCache::populateNear\28int\2c\20UErrorCode&\29 +2234:icu_73::RuleBasedBreakIterator::BreakCache::populateFollowing\28\29 +2235:icu_73::ResourceDataValue::~ResourceDataValue\28\29 +2236:icu_73::ReorderingBuffer::init\28int\2c\20UErrorCode&\29 +2237:icu_73::Normalizer2Impl::makeFCD\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_73::ReorderingBuffer*\2c\20UErrorCode&\29\20const +2238:icu_73::Normalizer2Impl::hasCompBoundaryBefore\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\29\20const +2239:icu_73::Normalizer2Impl::decomposeShort\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_73::Normalizer2Impl::StopAt\2c\20signed\20char\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +2240:icu_73::Normalizer2Impl::addPropertyStarts\28USetAdder\20const*\2c\20UErrorCode&\29\20const +2241:icu_73::ICU_Utility::skipWhitespace\28icu_73::UnicodeString\20const&\2c\20int&\2c\20signed\20char\29 +2242:hb_ucd_get_unicode_funcs +2243:hb_syllabic_insert_dotted_circles\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +2244:hb_shape_full +2245:hb_serialize_context_t::~hb_serialize_context_t\28\29 +2246:hb_serialize_context_t::resolve_links\28\29 +2247:hb_serialize_context_t::reset\28\29 +2248:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::get\28\29\20const +2249:hb_lazy_loader_t\2c\20hb_face_t\2c\2034u\2c\20hb_blob_t>::get\28\29\20const +2250:hb_language_from_string +2251:hb_font_t::mults_changed\28\29 +2252:hb_font_destroy +2253:hb_buffer_t::next_glyph\28\29 +2254:get_sof +2255:ftell +2256:ft_var_readpackedpoints +2257:ft_mem_strdup +2258:float\20emscripten::internal::MemberAccess::getWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts\20const&\29 +2259:findLikelySubtags\28char\20const*\2c\20char*\2c\20int\2c\20UErrorCode*\29 +2260:fill_window +2261:exp +2262:encodeImage\28GrDirectContext*\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +2263:emscripten::val\20MakeTypedArray\28int\2c\20float\20const*\29 +2264:emscripten::internal::MethodInvoker::invoke\28float\20\28SkContourMeasure::*\20const&\29\28\29\20const\2c\20SkContourMeasure\20const*\29 +2265:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20unsigned\20long\29 +2266:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +2267:dquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2268:do_clip_op\28SkReadBuffer*\2c\20SkCanvas*\2c\20SkRegion::Op\2c\20SkClipOp*\29 +2269:do_anti_hairline\28int\2c\20int\2c\20int\2c\20int\2c\20SkIRect\20const*\2c\20SkBlitter*\29 +2270:doWriteReverse\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2271:doWriteForward\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2272:dline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2273:dispose_chunk +2274:direct_blur_y\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20int\2c\20int\2c\20unsigned\20short*\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +2275:decltype\28fp\28\28SkRecords::NoOp\29\28\29\29\29\20SkRecord::Record::visit\28SkRecords::Draw&\29\20const +2276:dcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2277:dconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2278:crop_rect_edge\28SkRect\20const&\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +2279:createTagStringWithAlternates\28char\20const*\2c\20int\2c\20char\20const*\2c\20int\2c\20char\20const*\2c\20int\2c\20char\20const*\2c\20int\2c\20char\20const*\2c\20icu_73::ByteSink&\2c\20UErrorCode*\29 +2280:createPath\28char\20const*\2c\20int\2c\20char\20const*\2c\20int\2c\20char\20const*\2c\20icu_73::CharString&\2c\20UErrorCode*\29 +2281:char*\20std::__2::__rewrap_iter\5babi:v160004\5d>\28char*\2c\20char*\29 +2282:cff_slot_load +2283:cff_parse_real +2284:cff_index_get_sid_string +2285:cff_index_access_element +2286:cf2_doStems +2287:cf2_doFlex +2288:byn$mgfn-shared$tt_cmap8_get_info +2289:byn$mgfn-shared$tt_cmap0_get_info +2290:byn$mgfn-shared$skia_png_set_strip_16 +2291:byn$mgfn-shared$isBidiControl\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +2292:byn$mgfn-shared$SkSL::Tracer::line\28int\29 +2293:byn$mgfn-shared$AlmostBequalUlps\28float\2c\20float\29 +2294:buffer_verify_error\28hb_buffer_t*\2c\20hb_font_t*\2c\20char\20const*\2c\20...\29 +2295:blur_y_rect\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20unsigned\20short*\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +2296:blur_column\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29::$_0::operator\28\29\28unsigned\20char*\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\29\20const +2297:af_sort_and_quantize_widths +2298:af_glyph_hints_align_weak_points +2299:af_glyph_hints_align_strong_points +2300:af_face_globals_new +2301:af_cjk_compute_stem_width +2302:add_huff_table +2303:addPoint\28UBiDi*\2c\20int\2c\20int\29 +2304:_addExtensionToList\28ExtensionListEntry**\2c\20ExtensionListEntry*\2c\20signed\20char\29 +2305:__uselocale +2306:__math_xflow +2307:__cxxabiv1::__base_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +2308:\28anonymous\20namespace\29::make_vertices_spec\28bool\2c\20bool\29 +2309:\28anonymous\20namespace\29::gather_lines_and_quads\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\29::$_1::operator\28\29\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20bool\29\20const +2310:\28anonymous\20namespace\29::draw_stencil_rect\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrHardClip\20const&\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2311:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29::'lambda'\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29::operator\28\29\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +2312:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29::'lambda'\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29::operator\28\29\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +2313:\28anonymous\20namespace\29::CacheImpl::removeInternal\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +2314:WebPRescalerExport +2315:WebPInitAlphaProcessing +2316:WebPFreeDecBuffer +2317:WebPDemuxDelete +2318:VP8SetError +2319:VP8LInverseTransform +2320:VP8LDelete +2321:VP8LColorCacheClear +2322:UDataMemory_init_73 +2323:TT_Load_Context +2324:StringBuffer\20apply_format_string<1024>\28char\20const*\2c\20void*\2c\20char\20\28&\29\20\5b1024\5d\2c\20SkString*\29 +2325:SkYUVAPixmaps::operator=\28SkYUVAPixmaps\20const&\29 +2326:SkYUVAPixmapInfo::SupportedDataTypes::enableDataType\28SkYUVAPixmapInfo::DataType\2c\20int\29 +2327:SkWriter32::writeMatrix\28SkMatrix\20const&\29 +2328:SkWriter32::snapshotAsData\28\29\20const +2329:SkVertices::uniqueID\28\29\20const +2330:SkVertices::approximateSize\28\29\20const +2331:SkUnicode::convertUtf8ToUtf16\28char\20const*\2c\20int\29 +2332:SkUTF::UTF16ToUTF8\28char*\2c\20int\2c\20unsigned\20short\20const*\2c\20unsigned\20long\29 +2333:SkTypefaceCache::NewTypefaceID\28\29 +2334:SkTextBlobRunIterator::next\28\29 +2335:SkTextBlobRunIterator::SkTextBlobRunIterator\28SkTextBlob\20const*\29 +2336:SkTextBlobBuilder::SkTextBlobBuilder\28\29 +2337:SkTextBlobBuilder::ConservativeRunBounds\28SkTextBlob::RunRecord\20const&\29 +2338:SkTSpan::closestBoundedT\28SkDPoint\20const&\29\20const +2339:SkTSect::updateBounded\28SkTSpan*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2340:SkTSect::trim\28SkTSpan*\2c\20SkTSect*\29 +2341:SkTDStorage::erase\28int\2c\20int\29 +2342:SkTDPQueue::percolateUpIfNecessary\28int\29 +2343:SkSurfaces::Raster\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +2344:SkStrokerPriv::JoinFactory\28SkPaint::Join\29 +2345:SkStrokeRec::setStrokeStyle\28float\2c\20bool\29 +2346:SkStrokeRec::setFillStyle\28\29 +2347:SkStrokeRec::applyToPath\28SkPath*\2c\20SkPath\20const&\29\20const +2348:SkString::set\28char\20const*\29 +2349:SkStrikeSpec::findOrCreateStrike\28\29\20const +2350:SkStrikeSpec::MakeWithNoDevice\28SkFont\20const&\2c\20SkPaint\20const*\29 +2351:SkStrike::unlock\28\29 +2352:SkStrike::lock\28\29 +2353:SkSharedMutex::SkSharedMutex\28\29 +2354:SkShadowTessellator::MakeSpot\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20bool\2c\20bool\29 +2355:SkShaders::MatrixRec::apply\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2356:SkShaders::Empty\28\29 +2357:SkShaders::Color\28unsigned\20int\29 +2358:SkShaderBase::appendRootStages\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2359:SkScalerContext::~SkScalerContext\28\29.1 +2360:SkSL::write_stringstream\28SkSL::StringStream\20const&\2c\20SkSL::OutputStream&\29 +2361:SkSL::evaluate_3_way_intrinsic\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +2362:SkSL::VarDeclaration::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20SkSL::VariableStorage\2c\20std::__2::unique_ptr>\29 +2363:SkSL::Type::priority\28\29\20const +2364:SkSL::Type::checkIfUsableInArray\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +2365:SkSL::SymbolTable::takeOwnershipOfString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +2366:SkSL::SymbolTable::isBuiltinType\28std::__2::basic_string_view>\29\20const +2367:SkSL::StructType::slotCount\28\29\20const +2368:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const +2369:SkSL::RP::Generator::pushVectorizedExpression\28SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +2370:SkSL::RP::Builder::ternary_op\28SkSL::RP::BuilderOp\2c\20int\29 +2371:SkSL::RP::Builder::simplifyPopSlotsUnmasked\28SkSL::RP::SlotRange*\29 +2372:SkSL::RP::Builder::pop_slots_unmasked\28SkSL::RP::SlotRange\29 +2373:SkSL::RP::Builder::pad_stack\28int\29 +2374:SkSL::RP::Builder::exchange_src\28\29 +2375:SkSL::ProgramUsage::remove\28SkSL::ProgramElement\20const&\29 +2376:SkSL::ProgramUsage::isDead\28SkSL::Variable\20const&\29\20const +2377:SkSL::PipelineStage::PipelineStageCodeGenerator::typeName\28SkSL::Type\20const&\29 +2378:SkSL::LiteralType::priority\28\29\20const +2379:SkSL::IndexExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +2380:SkSL::GLSLCodeGenerator::writeAnyConstructor\28SkSL::AnyConstructor\20const&\2c\20SkSL::OperatorPrecedence\29 +2381:SkSL::ExpressionArray::clone\28\29\20const +2382:SkSL::Context::~Context\28\29 +2383:SkSL::Compiler::errorText\28bool\29 +2384:SkSL::Compiler::convertProgram\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::ProgramSettings\29 +2385:SkSL::Analysis::DetectVarDeclarationWithoutScope\28SkSL::Statement\20const&\2c\20SkSL::ErrorReporter*\29 +2386:SkRuntimeShaderBuilder::SkRuntimeShaderBuilder\28sk_sp\29 +2387:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpace\20const*\29 +2388:SkRuntimeEffect::getRPProgram\28SkSL::DebugTracePriv*\29\20const +2389:SkRegion::getBoundaryPath\28SkPath*\29\20const +2390:SkRegion::Spanerator::next\28int*\2c\20int*\29 +2391:SkRegion::SkRegion\28SkRegion\20const&\29 +2392:SkReduceOrder::Quad\28SkPoint\20const*\2c\20SkPoint*\29 +2393:SkReadBuffer::skipByteArray\28unsigned\20long*\29 +2394:SkReadBuffer::readSampling\28\29 +2395:SkReadBuffer::readRect\28\29 +2396:SkReadBuffer::readRRect\28SkRRect*\29 +2397:SkReadBuffer::readPoint\28SkPoint*\29 +2398:SkReadBuffer::readPad32\28void*\2c\20unsigned\20long\29 +2399:SkReadBuffer::readArray\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +2400:SkReadBuffer::checkInt\28int\2c\20int\29 +2401:SkRasterPipeline::appendMatrix\28SkArenaAlloc*\2c\20SkMatrix\20const&\29 +2402:SkQuads::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2403:SkQuadraticEdge::updateQuadratic\28\29 +2404:SkPngCodec::~SkPngCodec\28\29.1 +2405:SkPngCodec::processData\28\29 +2406:SkPixmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2407:SkPictureRecord::~SkPictureRecord\28\29 +2408:SkPicture::~SkPicture\28\29.1 +2409:SkPathStroker::quadStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2410:SkPathStroker::preJoinTo\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20bool\29 +2411:SkPathStroker::intersectRay\28SkQuadConstruct*\2c\20SkPathStroker::IntersectRayType\29\20const +2412:SkPathStroker::cubicStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2413:SkPathStroker::conicStroke\28SkConic\20const&\2c\20SkQuadConstruct*\29 +2414:SkPathMeasure::isClosed\28\29 +2415:SkPathEffectBase::getFlattenableType\28\29\20const +2416:SkPathBuilder::moveTo\28SkPoint\29 +2417:SkPathBuilder::incReserve\28int\2c\20int\29 +2418:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2419:SkPath::isLastContourClosed\28\29\20const +2420:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2421:SkPaintToGrPaintReplaceShader\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2422:SkPaint::setStrokeMiter\28float\29 +2423:SkPaint::setStrokeJoin\28SkPaint::Join\29 +2424:SkOpSpanBase::mergeMatches\28SkOpSpanBase*\29 +2425:SkOpSpanBase::addOpp\28SkOpSpanBase*\29 +2426:SkOpSegment::subDivide\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkDCurve*\29\20const +2427:SkOpSegment::release\28SkOpSpan\20const*\29 +2428:SkOpSegment::operand\28\29\20const +2429:SkOpSegment::moveNearby\28\29 +2430:SkOpSegment::markDone\28SkOpSpan*\29 +2431:SkOpSegment::markAndChaseDone\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpSpanBase**\29 +2432:SkOpSegment::isClose\28double\2c\20SkOpSegment\20const*\29\20const +2433:SkOpSegment::init\28SkPoint*\2c\20float\2c\20SkOpContour*\2c\20SkPath::Verb\29 +2434:SkOpSegment::addT\28double\2c\20SkPoint\20const&\29 +2435:SkOpCoincidence::fixUp\28SkOpPtT*\2c\20SkOpPtT\20const*\29 +2436:SkOpCoincidence::add\28SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\29 +2437:SkOpCoincidence::addMissing\28bool*\29 +2438:SkOpCoincidence::addIfMissing\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double\2c\20double\2c\20SkOpSegment*\2c\20SkOpSegment*\2c\20bool*\29 +2439:SkOpCoincidence::addExpanded\28\29 +2440:SkOpAngle::set\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2441:SkOpAngle::lineOnOneSide\28SkDPoint\20const&\2c\20SkDVector\20const&\2c\20SkOpAngle\20const*\2c\20bool\29\20const +2442:SkNoPixelsDevice::ClipState::op\28SkClipOp\2c\20SkM44\20const&\2c\20SkRect\20const&\2c\20bool\2c\20bool\29 +2443:SkMemoryStream::Make\28sk_sp\29 +2444:SkMatrix\20skif::Mapping::map\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +2445:SkMatrixPriv::DifferentialAreaScale\28SkMatrix\20const&\2c\20SkPoint\20const&\29 +2446:SkMatrix::writeToMemory\28void*\29\20const +2447:SkMatrix::preservesRightAngles\28float\29\20const +2448:SkM44::normalizePerspective\28\29 +2449:SkLatticeIter::~SkLatticeIter\28\29 +2450:SkLatticeIter::next\28SkIRect*\2c\20SkRect*\2c\20bool*\2c\20unsigned\20int*\29 +2451:SkJSONWriter::endObject\28\29 +2452:SkJSONWriter::endArray\28\29 +2453:SkImage_Lazy::Validator::Validator\28sk_sp\2c\20SkColorType\20const*\2c\20sk_sp\29 +2454:SkImageShader::MakeSubset\28sk_sp\2c\20SkRect\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2455:SkImageGenerator::onRefEncodedData\28\29 +2456:SkImageFilters::Image\28sk_sp\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\29 +2457:SkImage::width\28\29\20const +2458:SkImage::readPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +2459:SkHalfToFloat\28unsigned\20short\29 +2460:SkGradientShader::MakeSweep\28float\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +2461:SkGradientShader::MakeRadial\28SkPoint\20const&\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +2462:SkGradientBaseShader::commonAsAGradient\28SkShaderBase::GradientInfo*\29\20const +2463:SkGradientBaseShader::ValidGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2464:SkGradientBaseShader::SkGradientBaseShader\28SkGradientBaseShader::Descriptor\20const&\2c\20SkMatrix\20const&\29 +2465:SkGradientBaseShader::MakeDegenerateGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20float\20const*\2c\20int\2c\20sk_sp\2c\20SkTileMode\29 +2466:SkGradientBaseShader::Descriptor::~Descriptor\28\29 +2467:SkGradientBaseShader::Descriptor::Descriptor\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2468:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkPath\20const*\2c\20bool\29 +2469:SkFontMgr::matchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +2470:SkFontMgr::RefEmpty\28\29 +2471:SkFont::setSize\28float\29 +2472:SkEvalQuadAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +2473:SkEncodedInfo::~SkEncodedInfo\28\29 +2474:SkEncodedInfo::makeImageInfo\28\29\20const +2475:SkEmptyFontMgr::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +2476:SkDrawableList::~SkDrawableList\28\29 +2477:SkDrawable::draw\28SkCanvas*\2c\20SkMatrix\20const*\29 +2478:SkDevice::setDeviceCoordinateSystem\28SkM44\20const&\2c\20SkM44\20const&\2c\20SkM44\20const&\2c\20int\2c\20int\29 +2479:SkData::PrivateNewWithCopy\28void\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +2480:SkDashPathEffect::Make\28float\20const*\2c\20int\2c\20float\29 +2481:SkDQuad::monotonicInX\28\29\20const +2482:SkDCubic::dxdyAtT\28double\29\20const +2483:SkDCubic::RootsValidT\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +2484:SkCubicEdge::updateCubic\28\29 +2485:SkConicalGradient::~SkConicalGradient\28\29 +2486:SkColorSpace::serialize\28\29\20const +2487:SkColorSpace::MakeSRGBLinear\28\29 +2488:SkColorFilterPriv::MakeGaussian\28\29 +2489:SkColorConverter::SkColorConverter\28unsigned\20int\20const*\2c\20int\29 +2490:SkCodec::startScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const*\29 +2491:SkCodec::handleFrameIndex\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20std::__2::function\29 +2492:SkCodec::getScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +2493:SkChopQuadAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2494:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\20const*\2c\20int\29 +2495:SkChopCubicAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2496:SkCharToGlyphCache::SkCharToGlyphCache\28\29 +2497:SkCanvas::topDevice\28\29\20const +2498:SkCanvas::peekPixels\28SkPixmap*\29 +2499:SkCanvas::getTotalMatrix\28\29\20const +2500:SkCanvas::getLocalToDevice\28\29\20const +2501:SkCanvas::getLocalClipBounds\28\29\20const +2502:SkCanvas::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +2503:SkCanvas::drawAtlas\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +2504:SkCanvas::concat\28SkM44\20const&\29 +2505:SkCanvas::SkCanvas\28SkBitmap\20const&\29 +2506:SkCanvas::ImageSetEntry::ImageSetEntry\28SkCanvas::ImageSetEntry\20const&\29 +2507:SkBlitter::blitRectRegion\28SkIRect\20const&\2c\20SkRegion\20const&\29 +2508:SkBlendMode_ShouldPreScaleCoverage\28SkBlendMode\2c\20bool\29 +2509:SkBlendMode_AppendStages\28SkBlendMode\2c\20SkRasterPipeline*\29 +2510:SkBitmap::tryAllocPixels\28SkBitmap::Allocator*\29 +2511:SkBitmap::readPixels\28SkPixmap\20const&\2c\20int\2c\20int\29\20const +2512:SkBitmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2513:SkBitmap::installPixels\28SkPixmap\20const&\29 +2514:SkBitmap::allocPixels\28SkImageInfo\20const&\29 +2515:SkBitmap::SkBitmap\28SkBitmap&&\29 +2516:SkBaseShadowTessellator::handleQuad\28SkPoint\20const*\29 +2517:SkAAClip::~SkAAClip\28\29 +2518:SkAAClip::setPath\28SkPath\20const&\2c\20SkIRect\20const&\2c\20bool\29 +2519:SkAAClip::op\28SkAAClip\20const&\2c\20SkClipOp\29 +2520:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GSUB_impl::SubstLookup\20const&\29 +2521:OT::hb_ot_apply_context_t::replace_glyph\28unsigned\20int\29 +2522:OT::apply_lookup\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20OT::LookupRecord\20const*\2c\20unsigned\20int\29 +2523:OT::Layout::GPOS_impl::ValueFormat::get_device\28OT::IntType\20const*\2c\20bool*\2c\20void\20const*\2c\20hb_sanitize_context_t&\29 +2524:OT::Layout::GPOS_impl::AnchorFormat3::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2525:OT::Layout::GPOS_impl::AnchorFormat2::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2526:OT::ClassDef::get_class\28unsigned\20int\29\20const +2527:JpegDecoderMgr::~JpegDecoderMgr\28\29 +2528:GrTriangulator::simplify\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +2529:GrTriangulator::setTop\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2530:GrTriangulator::mergeCoincidentVertices\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29\20const +2531:GrTriangulator::Vertex*\20SkArenaAlloc::make\28SkPoint&\2c\20int&&\29 +2532:GrThreadSafeCache::remove\28skgpu::UniqueKey\20const&\29 +2533:GrThreadSafeCache::internalFind\28skgpu::UniqueKey\20const&\29 +2534:GrThreadSafeCache::internalAdd\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2535:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29 +2536:GrTexture::markMipmapsClean\28\29 +2537:GrTessellationShader::MakePipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedClip&&\2c\20GrProcessorSet&&\29 +2538:GrSurfaceProxyView::concatSwizzle\28skgpu::Swizzle\29 +2539:GrSurfaceProxy::LazyCallbackResult::LazyCallbackResult\28sk_sp\29 +2540:GrSurfaceProxy::Copy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\2c\20GrSurfaceProxy::RectsMustMatch\2c\20sk_sp*\29 +2541:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +2542:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +2543:GrSimpleMeshDrawOpHelper::CreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrPipeline\20const*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\2c\20GrUserStencilSettings\20const*\29 +2544:GrShape::simplifyLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\29 +2545:GrShape::reset\28\29 +2546:GrShape::conservativeContains\28SkPoint\20const&\29\20const +2547:GrSWMaskHelper::init\28SkIRect\20const&\29 +2548:GrResourceProvider::createNonAAQuadIndexBuffer\28\29 +2549:GrResourceProvider::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\2c\20GrResourceProvider::ZeroInit\29 +2550:GrResourceCache::refAndMakeResourceMRU\28GrGpuResource*\29 +2551:GrResourceCache::findAndRefUniqueResource\28skgpu::UniqueKey\20const&\29 +2552:GrRenderTask::addTarget\28GrDrawingManager*\2c\20sk_sp\29 +2553:GrRenderTarget::~GrRenderTarget\28\29.1 +2554:GrQuadUtils::WillUseHairline\28GrQuad\20const&\2c\20GrAAType\2c\20GrQuadAAFlags\29 +2555:GrQuadUtils::CropToRect\28SkRect\20const&\2c\20GrAA\2c\20DrawQuad*\2c\20bool\29 +2556:GrProxyProvider::processInvalidUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\29 +2557:GrPorterDuffXPFactory::Get\28SkBlendMode\29 +2558:GrPixmap::operator=\28GrPixmap&&\29 +2559:GrPathUtils::scaleToleranceToSrc\28float\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +2560:GrPathUtils::quadraticPointCount\28SkPoint\20const*\2c\20float\29 +2561:GrPathUtils::cubicPointCount\28SkPoint\20const*\2c\20float\29 +2562:GrPaint::setPorterDuffXPFactory\28SkBlendMode\29 +2563:GrPaint::GrPaint\28GrPaint\20const&\29 +2564:GrOpsRenderPass::draw\28int\2c\20int\29 +2565:GrOpsRenderPass::drawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +2566:GrMeshDrawOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +2567:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29 +2568:GrGradientShader::MakeGradientFP\28SkGradientBaseShader\20const&\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\2c\20std::__2::unique_ptr>\2c\20SkMatrix\20const*\29 +2569:GrGpuResource::getContext\28\29 +2570:GrGpu::writePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +2571:GrGLTexture::onSetLabel\28\29 +2572:GrGLTexture::onRelease\28\29 +2573:GrGLTexture::onAbandon\28\29 +2574:GrGLTexture::backendFormat\28\29\20const +2575:GrGLSLUniformHandler::addInputSampler\28skgpu::Swizzle\20const&\2c\20char\20const*\29 +2576:GrGLSLShaderBuilder::appendFunctionDecl\28SkSLType\2c\20char\20const*\2c\20SkSpan\29 +2577:GrGLSLProgramBuilder::fragmentProcessorHasCoordsParam\28GrFragmentProcessor\20const*\29\20const +2578:GrGLRenderTarget::onRelease\28\29 +2579:GrGLRenderTarget::onAbandon\28\29 +2580:GrGLGpu::resolveRenderFBOs\28GrGLRenderTarget*\2c\20SkIRect\20const&\2c\20GrGLRenderTarget::ResolveDirection\2c\20bool\29 +2581:GrGLGpu::flushBlendAndColorWrite\28skgpu::BlendInfo\20const&\2c\20skgpu::Swizzle\20const&\29 +2582:GrGLGetVersionFromString\28char\20const*\29 +2583:GrGLCheckLinkStatus\28GrGLGpu\20const*\2c\20unsigned\20int\2c\20bool\2c\20skgpu::ShaderErrorHandler*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const**\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\29 +2584:GrGLCaps::maxRenderTargetSampleCount\28GrGLFormat\29\20const +2585:GrFragmentProcessors::Make\28SkBlenderBase\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20GrFPArgs\20const&\29 +2586:GrFragmentProcessor::isEqual\28GrFragmentProcessor\20const&\29\20const +2587:GrFragmentProcessor::asTextureEffect\28\29\20const +2588:GrFragmentProcessor::Rect\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRect\29 +2589:GrFragmentProcessor::ModulateRGBA\28std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2590:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29 +2591:GrDrawingManager::~GrDrawingManager\28\29 +2592:GrDrawingManager::removeRenderTasks\28\29 +2593:GrDrawingManager::getPathRenderer\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\2c\20bool\2c\20skgpu::ganesh::PathRendererChain::DrawType\2c\20skgpu::ganesh::PathRenderer::StencilSupport*\29 +2594:GrDrawOpAtlas::compact\28skgpu::AtlasToken\29 +2595:GrContext_Base::~GrContext_Base\28\29 +2596:GrContext_Base::defaultBackendFormat\28SkColorType\2c\20skgpu::Renderable\29\20const +2597:GrColorSpaceXform::XformKey\28GrColorSpaceXform\20const*\29 +2598:GrColorSpaceXform::Make\28SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +2599:GrColorSpaceXform::Make\28GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +2600:GrColorInfo::operator=\28GrColorInfo\20const&\29 +2601:GrCaps::supportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +2602:GrCaps::getFallbackColorTypeAndFormat\28GrColorType\2c\20int\29\20const +2603:GrCaps::areColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +2604:GrBufferAllocPool::~GrBufferAllocPool\28\29 +2605:GrBlurUtils::GaussianBlur\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20float\2c\20float\2c\20SkTileMode\2c\20SkBackingFit\29 +2606:GrBlurUtils::DrawShapeWithMaskFilter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\29 +2607:GrBaseContextPriv::getShaderErrorHandler\28\29\20const +2608:GrBackendTexture::GrBackendTexture\28GrBackendTexture\20const&\29 +2609:GrBackendRenderTarget::getBackendFormat\28\29\20const +2610:GrBackendFormat::operator==\28GrBackendFormat\20const&\29\20const +2611:GrAAConvexTessellator::createOuterRing\28GrAAConvexTessellator::Ring\20const&\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring*\29 +2612:GrAAConvexTessellator::createInsetRings\28GrAAConvexTessellator::Ring&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring**\29 +2613:FindSortableTop\28SkOpContourHead*\29 +2614:FT_Set_Charmap +2615:FT_Outline_Decompose +2616:FT_New_Size +2617:FT_Load_Sfnt_Table +2618:FT_GlyphLoader_Add +2619:FT_Get_Color_Glyph_Paint +2620:FT_Get_Color_Glyph_Layer +2621:FT_Get_Advance +2622:FT_CMap_New +2623:End +2624:Current_Ratio +2625:Cr_z__tr_stored_block +2626:ClipParams_unpackRegionOp\28SkReadBuffer*\2c\20unsigned\20int\29 +2627:CircleOp::Circle&\20skia_private::TArray::emplace_back\28CircleOp::Circle&&\29 +2628:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +2629:AlmostEqualUlps_Pin\28float\2c\20float\29 +2630:wuffs_lzw__decoder__workbuf_len +2631:wuffs_gif__decoder__decode_image_config +2632:wuffs_gif__decoder__decode_frame_config +2633:winding_mono_quad\28SkPoint\20const*\2c\20float\2c\20float\2c\20int*\29 +2634:winding_mono_conic\28SkConic\20const&\2c\20float\2c\20float\2c\20int*\29 +2635:wcrtomb +2636:wchar_t\20const*\20std::__2::find\5babi:v160004\5d\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const&\29 +2637:void\20std::__2::vector\2c\20std::__2::allocator>>::__push_back_slow_path>\28std::__2::shared_ptr&&\29 +2638:void\20std::__2::__introsort\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\2c\20std::__2::iterator_traits::difference_type\29 +2639:void\20std::__2::__introsort\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\2c\20std::__2::iterator_traits<\28anonymous\20namespace\29::Entry*>::difference_type\29 +2640:void\20std::__2::__introsort\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\2c\20std::__2::iterator_traits::difference_type\29 +2641:void\20std::__2::__introsort\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\2c\20std::__2::iterator_traits::difference_type\29 +2642:void\20std::__2::__inplace_merge\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\2c\20long\29 +2643:void\20sort_r_simple\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\2c\20void*\29\2c\20void*\29 +2644:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.3 +2645:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29 +2646:void\20SkTIntroSort\28double*\2c\20double*\29::'lambda'\28double\20const&\2c\20double\20const&\29>\28int\2c\20double*\2c\20int\2c\20void\20SkTQSort\28double*\2c\20double*\29::'lambda'\28double\20const&\2c\20double\20const&\29\20const&\29 +2647:void\20SkTIntroSort\28SkEdge**\2c\20SkEdge**\29::'lambda'\28SkEdge\20const*\2c\20SkEdge\20const*\29>\28int\2c\20SkEdge*\2c\20int\2c\20void\20SkTQSort\28SkEdge**\2c\20SkEdge**\29::'lambda'\28SkEdge\20const*\2c\20SkEdge\20const*\29\20const&\29 +2648:vfprintf +2649:valid_args\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20unsigned\20long*\29 +2650:utf8_back1SafeBody_73 +2651:ustrcase_internalToUpper_73 +2652:uscript_getScript_73 +2653:ures_getStringWithAlias\28UResourceBundle\20const*\2c\20unsigned\20int\2c\20int\2c\20int*\2c\20UErrorCode*\29 +2654:uprv_strdup_73 +2655:uprv_sortArray_73 +2656:uprv_mapFile_73 +2657:uprv_compareASCIIPropertyNames_73 +2658:update_offset_to_base\28char\20const*\2c\20long\29 +2659:update_box +2660:unsigned\20long\20const&\20std::__2::min\5babi:v160004\5d\28unsigned\20long\20const&\2c\20unsigned\20long\20const&\29 +2661:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +2662:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +2663:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +2664:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +2665:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +2666:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +2667:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +2668:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +2669:umutablecptrie_get_73 +2670:ultag_isUnicodeLocaleAttributes_73 +2671:ultag_isPrivateuseValueSubtags_73 +2672:ulocimp_getKeywords_73 +2673:uloc_openKeywords_73 +2674:uloc_getScript_73 +2675:uloc_getLanguage_73 +2676:uloc_getCountry_73 +2677:uhash_remove_73 +2678:uhash_hashChars_73 +2679:uhash_getiAndFound_73 +2680:uhash_compareChars_73 +2681:uenum_next_73 +2682:udata_getHashTable\28UErrorCode&\29 +2683:ucstrTextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +2684:u_strToUTF8_73 +2685:u_strToUTF8WithSub_73 +2686:u_strCompare_73 +2687:u_memmove_73 +2688:u_getUnicodeProperties_73 +2689:u_getDataDirectory_73 +2690:u_charMirror_73 +2691:tt_size_reset +2692:tt_sbit_decoder_load_metrics +2693:tt_face_get_location +2694:tt_face_find_bdf_prop +2695:tolower +2696:toTextStyle\28SimpleTextStyle\20const&\29 +2697:t1_cmap_unicode_done +2698:subdivide_cubic_to\28SkPath*\2c\20SkPoint\20const*\2c\20int\29 +2699:subdivide\28SkConic\20const&\2c\20SkPoint*\2c\20int\29 +2700:subQuickSort\28char*\2c\20int\2c\20int\2c\20int\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\2c\20void\20const*\29\2c\20void\20const*\2c\20void*\2c\20void*\29 +2701:strtox +2702:strtoull_l +2703:strcat +2704:std::logic_error::~logic_error\28\29.1 +2705:std::__2::vector>::push_back\5babi:v160004\5d\28float&&\29 +2706:std::__2::vector>::__append\28unsigned\20long\29 +2707:std::__2::vector>::reserve\28unsigned\20long\29 +2708:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +2709:std::__2::unique_ptr<\28anonymous\20namespace\29::SoftwarePathData\2c\20std::__2::default_delete<\28anonymous\20namespace\29::SoftwarePathData>>::reset\5babi:v160004\5d\28\28anonymous\20namespace\29::SoftwarePathData*\29 +2710:std::__2::time_put>>::~time_put\28\29.1 +2711:std::__2::pair\2c\20std::__2::allocator>>>::~pair\28\29 +2712:std::__2::pair\20std::__2::__copy_trivial::operator\28\29\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +2713:std::__2::locale::operator=\28std::__2::locale\20const&\29 +2714:std::__2::locale::locale\28\29 +2715:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\29 +2716:std::__2::ios_base::~ios_base\28\29 +2717:std::__2::fpos<__mbstate_t>::fpos\5babi:v160004\5d\28long\20long\29 +2718:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28SkAnimatedImage::Frame&\2c\20SkAnimatedImage::Frame&\29 +2719:std::__2::decay>::__call\28std::declval\20const&>\28\29\29\29>::type\20std::__2::__to_address\5babi:v160004\5d\2c\20void>\28std::__2::__wrap_iter\20const&\29 +2720:std::__2::chrono::duration>::duration\5babi:v160004\5d\28long\20long\20const&\2c\20std::__2::enable_if::value\20&&\20\28std::__2::integral_constant::value\20||\20!treat_as_floating_point::value\29\2c\20void>::type*\29 +2721:std::__2::char_traits::move\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +2722:std::__2::char_traits::assign\28char*\2c\20unsigned\20long\2c\20char\29 +2723:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.2 +2724:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29 +2725:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28wchar_t\29 +2726:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +2727:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::allocator\20const&\29 +2728:std::__2::basic_string\2c\20std::__2::allocator>::__make_iterator\5babi:v160004\5d\28char*\29 +2729:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +2730:std::__2::basic_streambuf>::setp\5babi:v160004\5d\28char*\2c\20char*\29 +2731:std::__2::basic_ostream>::~basic_ostream\28\29.1 +2732:std::__2::basic_istream>::~basic_istream\28\29.1 +2733:std::__2::basic_iostream>::~basic_iostream\28\29.2 +2734:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2735:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2736:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2737:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2738:std::__2::__throw_system_error\28int\2c\20char\20const*\29 +2739:std::__2::__throw_out_of_range\5babi:v160004\5d\28char\20const*\29 +2740:std::__2::__throw_length_error\5babi:v160004\5d\28char\20const*\29 +2741:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +2742:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20wchar_t*\2c\20wchar_t&\2c\20wchar_t&\29 +2743:std::__2::__num_get::__stage2_float_loop\28wchar_t\2c\20bool&\2c\20char&\2c\20char*\2c\20char*&\2c\20wchar_t\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20unsigned\20int&\2c\20wchar_t*\29 +2744:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20char*\2c\20char&\2c\20char&\29 +2745:std::__2::__num_get::__stage2_float_loop\28char\2c\20bool&\2c\20char&\2c\20char*\2c\20char*&\2c\20char\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20unsigned\20int&\2c\20char*\29 +2746:std::__2::__libcpp_wcrtomb_l\5babi:v160004\5d\28char*\2c\20wchar_t\2c\20__mbstate_t*\2c\20__locale_struct*\29 +2747:std::__2::__less::operator\28\29\5babi:v160004\5d\28unsigned\20int\20const&\2c\20unsigned\20long\20const&\29\20const +2748:std::__2::__itoa::__base_10_u32\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2749:std::__2::__itoa::__append6\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2750:std::__2::__itoa::__append4\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2751:std::__2::__call_once\28unsigned\20long\20volatile&\2c\20void*\2c\20void\20\28*\29\28void*\29\29 +2752:sktext::gpu::VertexFiller::flatten\28SkWriteBuffer&\29\20const +2753:sktext::gpu::VertexFiller::Make\28skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20SkRect\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::FillerType\29 +2754:sktext::gpu::VertexFiller::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\29 +2755:sktext::gpu::SubRunContainer::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20SkRefCnt\20const*\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +2756:sktext::gpu::SubRunAllocator::SubRunAllocator\28int\29 +2757:sktext::gpu::MakePointsFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\29 +2758:sktext::gpu::GlyphVector::flatten\28SkWriteBuffer&\29\20const +2759:sktext::gpu::GlyphVector::Make\28sktext::SkStrikePromise&&\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\29 +2760:sktext::gpu::GlyphVector::MakeFromBuffer\28SkReadBuffer&\2c\20SkStrikeClient\20const*\2c\20sktext::gpu::SubRunAllocator*\29 +2761:sktext::SkStrikePromise::flatten\28SkWriteBuffer&\29\20const +2762:sktext::SkStrikePromise::MakeFromBuffer\28SkReadBuffer&\2c\20SkStrikeClient\20const*\2c\20SkStrikeCache*\29 +2763:sktext::GlyphRunBuilder::makeGlyphRunList\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20SkPoint\29 +2764:sktext::GlyphRun::GlyphRun\28SkFont\20const&\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\29 +2765:skpaint_to_grpaint_impl\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::optional>>\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2766:skip_literal_string +2767:skif::\28anonymous\20namespace\29::apply_decal\28skif::LayerSpace\20const&\2c\20sk_sp\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29 +2768:skif::FilterResult::Builder::outputBounds\28std::__2::optional>\29\20const +2769:skif::FilterResult::Builder::drawShader\28sk_sp\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +2770:skif::FilterResult::Builder::createInputShaders\28skif::LayerSpace\20const&\2c\20bool\29 +2771:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2772:skia_private::THashTable\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair>::resize\28int\29 +2773:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeSlot\28int\29 +2774:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2775:skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2776:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2777:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2778:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +2779:skia_private::THashTable::Traits>::resize\28int\29 +2780:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::resize\28int\29 +2781:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::find\28GrProgramDesc\20const&\29\20const +2782:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrThreadSafeCache::Entry*&&\29 +2783:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2784:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::UniqueKey\20const&\29 +2785:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrTextureProxy*&&\29 +2786:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2787:skia_private::THashTable::Traits>::uncheckedSet\28FT_Opaque_Paint_&&\29 +2788:skia_private::THashTable::Traits>::resize\28int\29 +2789:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::~THashMap\28\29 +2790:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::find\28std::__2::basic_string_view>\20const&\29\20const +2791:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::THashMap\28std::initializer_list>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>\29 +2792:skia_private::THashMap>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::unique_ptr>\29 +2793:skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::set\28SkIcuBreakIteratorCache::Request\2c\20sk_sp\29 +2794:skia_private::TArray::resize_back\28int\29 +2795:skia_private::TArray::push_back_raw\28int\29 +2796:skia_private::TArray::resize_back\28int\29 +2797:skia_png_write_chunk +2798:skia_png_set_sBIT +2799:skia_png_set_read_fn +2800:skia_png_set_packing +2801:skia_png_set_bKGD +2802:skia_png_save_uint_32 +2803:skia_png_reciprocal2 +2804:skia_png_realloc_array +2805:skia_png_read_start_row +2806:skia_png_read_IDAT_data +2807:skia_png_handle_zTXt +2808:skia_png_handle_tRNS +2809:skia_png_handle_tIME +2810:skia_png_handle_tEXt +2811:skia_png_handle_sRGB +2812:skia_png_handle_sPLT +2813:skia_png_handle_sCAL +2814:skia_png_handle_sBIT +2815:skia_png_handle_pHYs +2816:skia_png_handle_pCAL +2817:skia_png_handle_oFFs +2818:skia_png_handle_iTXt +2819:skia_png_handle_iCCP +2820:skia_png_handle_hIST +2821:skia_png_handle_gAMA +2822:skia_png_handle_cHRM +2823:skia_png_handle_bKGD +2824:skia_png_handle_as_unknown +2825:skia_png_handle_PLTE +2826:skia_png_do_strip_channel +2827:skia_png_destroy_read_struct +2828:skia_png_destroy_info_struct +2829:skia_png_compress_IDAT +2830:skia_png_combine_row +2831:skia_png_colorspace_set_sRGB +2832:skia_png_check_fp_string +2833:skia_png_check_fp_number +2834:skia::textlayout::TypefaceFontStyleSet::createTypeface\28int\29 +2835:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::$_0::operator\28\29\28sk_sp\2c\20sk_sp\29\20const +2836:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const +2837:skia::textlayout::TextLine::getGlyphPositionAtCoordinate\28float\29 +2838:skia::textlayout::Run::isResolved\28\29\20const +2839:skia::textlayout::Run::copyTo\28SkTextBlobBuilder&\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +2840:skia::textlayout::ParagraphImpl::buildClusterTable\28\29 +2841:skia::textlayout::OneLineShaper::~OneLineShaper\28\29 +2842:skia::textlayout::FontCollection::setDefaultFontManager\28sk_sp\29 +2843:skia::textlayout::FontCollection::FontCollection\28\29 +2844:skia::textlayout::Cluster::isSoftBreak\28\29\20const +2845:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::flush\28GrMeshDrawTarget*\2c\20skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::FlushInfo*\29\20const +2846:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +2847:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::programInfo\28\29 +2848:skgpu::ganesh::SurfaceFillContext::discard\28\29 +2849:skgpu::ganesh::SurfaceDrawContext::internalStencilClear\28SkIRect\20const*\2c\20bool\29 +2850:skgpu::ganesh::SurfaceDrawContext::drawPath\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrStyle\20const&\29 +2851:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29 +2852:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +2853:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29::$_0::operator\28\29\28GrSurfaceProxyView\2c\20SkIRect\29\20const +2854:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +2855:skgpu::ganesh::QuadPerEdgeAA::MinColorType\28SkRGBA4f<\28SkAlphaType\292>\29 +2856:skgpu::ganesh::PathRendererChain::PathRendererChain\28GrRecordingContext*\2c\20skgpu::ganesh::PathRendererChain::Options\20const&\29 +2857:skgpu::ganesh::PathRenderer::getStencilSupport\28GrStyledShape\20const&\29\20const +2858:skgpu::ganesh::PathCurveTessellator::draw\28GrOpFlushState*\29\20const +2859:skgpu::ganesh::OpsTask::recordOp\28std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\2c\20GrCaps\20const&\29 +2860:skgpu::ganesh::FillRectOp::MakeNonAARect\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +2861:skgpu::ganesh::FillRRectOp::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2862:skgpu::ganesh::Device::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +2863:skgpu::ganesh::Device::drawImageQuadDirect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +2864:skgpu::ganesh::Device::Make\28std::__2::unique_ptr>\2c\20SkAlphaType\2c\20skgpu::ganesh::Device::InitContents\29 +2865:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::setup_dashed_rect\28SkRect\20const&\2c\20skgpu::VertexWriter&\2c\20SkMatrix\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashCap\29 +2866:skgpu::ganesh::ClipStack::SaveRecord::invalidateMasks\28GrProxyProvider*\2c\20SkTBlockList*\29 +2867:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::SaveRecord\20const&\29\20const +2868:skgpu::ganesh::AtlasTextOp::operator\20new\28unsigned\20long\29 +2869:skgpu::ganesh::AtlasTextOp::Geometry::Make\28sktext::gpu::AtlasSubRun\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\2c\20sk_sp&&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkArenaAlloc*\29 +2870:skgpu::ganesh::AtlasRenderTask::addAtlasDrawOp\28std::__2::unique_ptr>\2c\20GrCaps\20const&\29 +2871:skcms_Transform::$_2::operator\28\29\28skcms_Curve\20const*\2c\20int\29\20const +2872:skcms_MaxRoundtripError +2873:sk_sp::~sk_sp\28\29 +2874:sk_free_releaseproc\28void\20const*\2c\20void*\29 +2875:siprintf +2876:sift +2877:shallowTextClone\28UText*\2c\20UText\20const*\2c\20UErrorCode*\29 +2878:rotate\28SkDCubic\20const&\2c\20int\2c\20int\2c\20SkDCubic&\29 +2879:res_getResource_73 +2880:read_header\28SkStream*\2c\20SkPngChunkReader*\2c\20SkCodec**\2c\20png_struct_def**\2c\20png_info_def**\29 +2881:read_header\28SkStream*\2c\20SkISize*\29 +2882:quad_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2883:qsort +2884:psh_globals_set_scale +2885:ps_parser_skip_PS_token +2886:ps_builder_done +2887:portable::uniform_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +2888:png_text_compress +2889:png_inflate_read +2890:png_inflate_claim +2891:png_image_size +2892:png_colorspace_endpoints_match +2893:png_build_16bit_table +2894:normalize +2895:next_marker +2896:morphpoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\2c\20SkPathMeasure&\2c\20float\29 +2897:make_unpremul_effect\28std::__2::unique_ptr>\29 +2898:long\20std::__2::__libcpp_atomic_refcount_decrement\5babi:v160004\5d\28long&\29 +2899:long\20const&\20std::__2::min\5babi:v160004\5d\28long\20const&\2c\20long\20const&\29 +2900:log1p +2901:locale_getKeywordsStart_73 +2902:load_truetype_glyph +2903:loadParentsExceptRoot\28UResourceDataEntry*&\2c\20char*\2c\20int\2c\20signed\20char\2c\20char*\2c\20UErrorCode*\29 +2904:line_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2905:lang_find_or_insert\28char\20const*\29 +2906:jpeg_calc_output_dimensions +2907:inner_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +2908:inflate_table +2909:increment_simple_rowgroup_ctr +2910:icu_73::spanOneUTF8\28icu_73::UnicodeSet\20const&\2c\20unsigned\20char\20const*\2c\20int\29 +2911:icu_73::enumGroupNames\28icu_73::UCharNames*\2c\20unsigned\20short\20const*\2c\20int\2c\20int\2c\20signed\20char\20\28*\29\28void*\2c\20int\2c\20UCharNameChoice\2c\20char\20const*\2c\20int\29\2c\20void*\2c\20UCharNameChoice\29 +2912:icu_73::\28anonymous\20namespace\29::appendResult\28char16_t*\2c\20int\2c\20int\2c\20int\2c\20char16_t\20const*\2c\20int\2c\20unsigned\20int\2c\20icu_73::Edits*\29 +2913:icu_73::\28anonymous\20namespace\29::AliasReplacer::replace\28icu_73::Locale\20const&\2c\20icu_73::CharString&\2c\20UErrorCode&\29::$_0::__invoke\28UElement\2c\20UElement\29 +2914:icu_73::UnicodeString::fromUTF8\28icu_73::StringPiece\29 +2915:icu_73::UnicodeString::doCompare\28int\2c\20int\2c\20char16_t\20const*\2c\20int\2c\20int\29\20const +2916:icu_73::UnicodeString::UnicodeString\28char\20const*\2c\20int\2c\20icu_73::UnicodeString::EInvariant\29 +2917:icu_73::UnicodeString::UnicodeString\28char16_t\20const*\2c\20int\29 +2918:icu_73::UnicodeSet::retainAll\28icu_73::UnicodeSet\20const&\29 +2919:icu_73::UnicodeSet::remove\28int\2c\20int\29 +2920:icu_73::UnicodeSet::exclusiveOr\28int\20const*\2c\20int\2c\20signed\20char\29 +2921:icu_73::UnicodeSet::ensureBufferCapacity\28int\29 +2922:icu_73::UnicodeSet::applyIntPropertyValue\28UProperty\2c\20int\2c\20UErrorCode&\29 +2923:icu_73::UnicodeSet::applyFilter\28signed\20char\20\28*\29\28int\2c\20void*\29\2c\20void*\2c\20icu_73::UnicodeSet\20const*\2c\20UErrorCode&\29 +2924:icu_73::UnicodeSet::UnicodeSet\28icu_73::UnicodeSet\20const&\29 +2925:icu_73::UVector::sort\28int\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +2926:icu_73::UVector::removeElement\28void*\29 +2927:icu_73::UVector::insertElementAt\28void*\2c\20int\2c\20UErrorCode&\29 +2928:icu_73::UVector::UVector\28UErrorCode&\29 +2929:icu_73::UVector32::setSize\28int\29 +2930:icu_73::UCharsTrieBuilder::add\28icu_73::UnicodeString\20const&\2c\20int\2c\20UErrorCode&\29 +2931:icu_73::StringTrieBuilder::~StringTrieBuilder\28\29 +2932:icu_73::SimpleFilteredSentenceBreakIterator::internalNext\28int\29 +2933:icu_73::RuleCharacterIterator::atEnd\28\29\20const +2934:icu_73::ResourceDataValue::getString\28int&\2c\20UErrorCode&\29\20const +2935:icu_73::ResourceDataValue::getArray\28UErrorCode&\29\20const +2936:icu_73::ReorderingBuffer::append\28char16_t\20const*\2c\20int\2c\20signed\20char\2c\20unsigned\20char\2c\20unsigned\20char\2c\20UErrorCode&\29 +2937:icu_73::PatternProps::isWhiteSpace\28int\29 +2938:icu_73::Normalizer2Impl::~Normalizer2Impl\28\29 +2939:icu_73::Normalizer2Impl::decompose\28int\2c\20unsigned\20short\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +2940:icu_73::Normalizer2Impl::decompose\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_73::ReorderingBuffer*\2c\20UErrorCode&\29\20const +2941:icu_73::Normalizer2Impl::decomposeShort\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20signed\20char\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +2942:icu_73::LocaleUtility::initNameFromLocale\28icu_73::Locale\20const&\2c\20icu_73::UnicodeString&\29 +2943:icu_73::LocaleBuilder::~LocaleBuilder\28\29 +2944:icu_73::Locale::getKeywordValue\28icu_73::StringPiece\2c\20icu_73::ByteSink&\2c\20UErrorCode&\29\20const +2945:icu_73::Locale::getDefault\28\29 +2946:icu_73::ICUServiceKey::~ICUServiceKey\28\29 +2947:icu_73::ICUResourceBundleFactory::~ICUResourceBundleFactory\28\29 +2948:icu_73::ICULocaleService::~ICULocaleService\28\29 +2949:icu_73::EmojiProps::getSingleton\28UErrorCode&\29 +2950:icu_73::Edits::reset\28\29 +2951:icu_73::DictionaryBreakEngine::~DictionaryBreakEngine\28\29 +2952:icu_73::CharString::getAppendBuffer\28int\2c\20int\2c\20int&\2c\20UErrorCode&\29 +2953:icu_73::BytesTrie::readValue\28unsigned\20char\20const*\2c\20int\29 +2954:icu_73::ByteSinkUtil::appendChange\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20char16_t\20const*\2c\20int\2c\20icu_73::ByteSink&\2c\20icu_73::Edits*\2c\20UErrorCode&\29 +2955:icu_73::BreakIterator::makeInstance\28icu_73::Locale\20const&\2c\20int\2c\20UErrorCode&\29 +2956:hb_tag_from_string +2957:hb_shape_plan_destroy +2958:hb_script_get_horizontal_direction +2959:hb_paint_extents_context_t::push_clip\28hb_extents_t\29 +2960:hb_ot_color_palette_get_colors +2961:hb_lazy_loader_t\2c\20hb_face_t\2c\2012u\2c\20OT::vmtx_accelerator_t>::get\28\29\20const +2962:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get\28\29\20const +2963:hb_lazy_loader_t\2c\20hb_face_t\2c\201u\2c\20hb_blob_t>::get\28\29\20const +2964:hb_lazy_loader_t\2c\20hb_face_t\2c\2018u\2c\20hb_blob_t>::get\28\29\20const +2965:hb_hashmap_t::alloc\28unsigned\20int\29 +2966:hb_font_funcs_destroy +2967:hb_face_get_upem +2968:hb_face_destroy +2969:hb_draw_cubic_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +2970:hb_buffer_set_segment_properties +2971:hb_blob_create +2972:gray_render_line +2973:get_vendor\28char\20const*\29 +2974:get_renderer\28char\20const*\2c\20GrGLExtensions\20const&\29 +2975:get_joining_type\28unsigned\20int\2c\20hb_unicode_general_category_t\29 +2976:getDefaultScript\28icu_73::CharString\20const&\2c\20icu_73::CharString\20const&\29 +2977:generate_distance_field_from_image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\29 +2978:ft_var_readpackeddeltas +2979:ft_var_get_item_delta +2980:ft_var_done_item_variation_store +2981:ft_glyphslot_done +2982:ft_glyphslot_alloc_bitmap +2983:freelocale +2984:free_pool +2985:fquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2986:fp_barrierf +2987:fline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2988:fixN0c\28BracketData*\2c\20int\2c\20int\2c\20unsigned\20char\29 +2989:findFirstExisting\28char\20const*\2c\20char*\2c\20char\20const*\2c\20UResOpenType\2c\20signed\20char*\2c\20signed\20char*\2c\20signed\20char*\2c\20UErrorCode*\29 +2990:fcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2991:fconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2992:fclose +2993:expm1f +2994:exp2f +2995:emscripten::internal::MethodInvoker::invoke\28void\20\28SkFont::*\20const&\29\28float\29\2c\20SkFont*\2c\20float\29 +2996:emscripten::internal::MethodInvoker\20\28SkAnimatedImage::*\29\28\29\2c\20sk_sp\2c\20SkAnimatedImage*>::invoke\28sk_sp\20\28SkAnimatedImage::*\20const&\29\28\29\2c\20SkAnimatedImage*\29 +2997:emscripten::internal::Invoker>\2c\20SimpleParagraphStyle\2c\20sk_sp>::invoke\28std::__2::unique_ptr>\20\28*\29\28SimpleParagraphStyle\2c\20sk_sp\29\2c\20SimpleParagraphStyle*\2c\20sk_sp*\29 +2998:emscripten::internal::FunctionInvoker::invoke\28int\20\28**\29\28SkCanvas&\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29\2c\20SkCanvas*\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29 +2999:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFontMgr&\2c\20int\29\2c\20SkFontMgr*\2c\20int\29 +3000:do_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +3001:doLoadFromIndividualFiles\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20signed\20char\20\28*\29\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29\2c\20void*\2c\20UErrorCode*\2c\20UErrorCode*\29 +3002:doLoadFromCommonData\28signed\20char\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20signed\20char\20\28*\29\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29\2c\20void*\2c\20UErrorCode*\2c\20UErrorCode*\29 +3003:decompose\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\2c\20unsigned\20int\29 +3004:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20skgpu::ganesh::DashOp::AAMode\2c\20SkMatrix\20const&\2c\20bool\29::$_0>\28skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Make\28SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::ganesh::DashOp::AAMode\2c\20SkMatrix\20const&\2c\20bool\29::$_0&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3005:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrCaps\20const&\2c\20GrSurfaceProxyView\20const&\2c\20bool&\2c\20GrPipeline*&\2c\20GrUserStencilSettings\20const*&&\2c\20\28anonymous\20namespace\29::DrawAtlasPathShader*&\2c\20GrPrimitiveType&&\2c\20GrXferBarrierFlags&\2c\20GrLoadOp&\29::'lambda'\28void*\29>\28GrProgramInfo&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3006:cubic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3007:conic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3008:char\20const*\20std::__2::find\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char\20const&\29 +3009:char\20const*\20std::__2::__rewrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +3010:cff_index_get_pointers +3011:cff2_path_param_t::move_to\28CFF::point_t\20const&\29 +3012:cff1_path_param_t::move_to\28CFF::point_t\20const&\29 +3013:cf2_glyphpath_computeOffset +3014:cached_mask_gamma\28float\2c\20float\2c\20float\29 +3015:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3016:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3017:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3018:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3019:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3020:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3021:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3022:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3023:byn$mgfn-shared$void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +3024:byn$mgfn-shared$ultag_isExtensionSubtags_73 +3025:byn$mgfn-shared$std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +3026:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +3027:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +3028:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray&&\29 +3029:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3030:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +3031:byn$mgfn-shared$icu_73::LaoBreakEngine::~LaoBreakEngine\28\29.1 +3032:byn$mgfn-shared$icu_73::LaoBreakEngine::~LaoBreakEngine\28\29 +3033:byn$mgfn-shared$getInPC\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +3034:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +3035:byn$mgfn-shared$SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +3036:byn$mgfn-shared$SkImageInfo::MakeN32Premul\28int\2c\20int\29 +3037:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +3038:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +3039:byn$mgfn-shared$SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3040:byn$mgfn-shared$Round_To_Grid +3041:byn$mgfn-shared$LineConicIntersections::addLineNearEndPoints\28\29 +3042:byn$mgfn-shared$GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +3043:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +3044:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +3045:byn$mgfn-shared$DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3046:build_tree +3047:bracketAddOpening\28BracketData*\2c\20char16_t\2c\20int\29 +3048:bool\20OT::glyf_impl::Glyph::get_points\28hb_font_t*\2c\20OT::glyf_accelerator_t\20const&\2c\20contour_point_vector_t&\2c\20contour_point_vector_t*\2c\20head_maxp_info_t*\2c\20unsigned\20int*\2c\20bool\2c\20bool\2c\20bool\2c\20hb_array_t\2c\20hb_map_t*\2c\20unsigned\20int\2c\20unsigned\20int*\29\20const +3049:bool\20OT::glyf_accelerator_t::get_points\28hb_font_t*\2c\20unsigned\20int\2c\20OT::glyf_accelerator_t::points_aggregator_t\29\20const +3050:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3051:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3052:blit_aaa_trapezoid_row\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +3053:auto\20std::__2::__unwrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +3054:atan +3055:alloc_large +3056:af_glyph_hints_done +3057:add_quad\28SkPoint\20const*\2c\20skia_private::TArray*\29 +3058:acos +3059:aaa_fill_path\28SkPath\20const&\2c\20SkIRect\20const&\2c\20AdditiveBlitter*\2c\20int\2c\20int\2c\20bool\2c\20bool\2c\20bool\29 +3060:_get_path\28OT::cff1::accelerator_t\20const*\2c\20hb_font_t*\2c\20unsigned\20int\2c\20hb_draw_session_t&\2c\20bool\2c\20CFF::point_t*\29 +3061:_get_bounds\28OT::cff1::accelerator_t\20const*\2c\20unsigned\20int\2c\20bounds_t&\2c\20bool\29 +3062:_getVariant\28char\20const*\2c\20char\2c\20icu_73::ByteSink&\2c\20signed\20char\29 +3063:_enumPropertyStartsRange\28void\20const*\2c\20int\2c\20int\2c\20unsigned\20int\29 +3064:_embind_register_bindings +3065:_canonicalize\28char\20const*\2c\20icu_73::ByteSink&\2c\20unsigned\20int\2c\20UErrorCode*\29 +3066:__trunctfdf2 +3067:__towrite +3068:__toread +3069:__subtf3 +3070:__strchrnul +3071:__rem_pio2f +3072:__rem_pio2 +3073:__math_uflowf +3074:__math_oflowf +3075:__fwritex +3076:__dynamic_cast +3077:__cxxabiv1::__class_type_info::process_static_type_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\29\20const +3078:__cxxabiv1::__class_type_info::process_static_type_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\29\20const +3079:__cxxabiv1::__class_type_info::process_found_base_class\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +3080:__cxxabiv1::__base_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +3081:\28anonymous\20namespace\29::ulayout_ensureData\28UErrorCode&\29 +3082:\28anonymous\20namespace\29::shape_contains_rect\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20bool\29 +3083:\28anonymous\20namespace\29::getRange\28void\20const*\2c\20int\2c\20unsigned\20int\20\28*\29\28void\20const*\2c\20unsigned\20int\29\2c\20void\20const*\2c\20unsigned\20int*\29 +3084:\28anonymous\20namespace\29::generateFacePathCOLRv1\28FT_FaceRec_*\2c\20unsigned\20short\2c\20SkPath*\29 +3085:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads_with_constraint\28SkPoint\20const*\2c\20float\2c\20SkPathFirstDirection\2c\20skia_private::TArray*\2c\20int\29 +3086:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\2c\20int\2c\20bool\2c\20bool\29 +3087:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const +3088:\28anonymous\20namespace\29::bloat_quad\28SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkMatrix\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +3089:\28anonymous\20namespace\29::SkEmptyTypeface::onMakeClone\28SkFontArguments\20const&\29\20const +3090:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29.1 +3091:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29 +3092:\28anonymous\20namespace\29::SkBlurImageFilter::mapSigma\28skif::Mapping\20const&\2c\20bool\29\20const +3093:\28anonymous\20namespace\29::DrawAtlasOpImpl::visitProxies\28std::__2::function\20const&\29\20const +3094:\28anonymous\20namespace\29::DrawAtlasOpImpl::programInfo\28\29 +3095:\28anonymous\20namespace\29::DrawAtlasOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +3096:\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +3097:\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +3098:WebPRescaleNeededLines +3099:WebPInitDecBufferInternal +3100:WebPInitCustomIo +3101:WebPGetFeaturesInternal +3102:WebPDemuxGetFrame +3103:VP8LInitBitReader +3104:VP8LColorIndexInverseTransformAlpha +3105:VP8InitIoInternal +3106:VP8InitBitReader +3107:UDatamemory_assign_73 +3108:T_CString_toUpperCase_73 +3109:TT_Vary_Apply_Glyph_Deltas +3110:TT_Set_Var_Design +3111:SkWuffsCodec::decodeFrame\28\29 +3112:SkVertices::MakeCopy\28SkVertices::VertexMode\2c\20int\2c\20SkPoint\20const*\2c\20SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20short\20const*\29 +3113:SkVertices::Builder::texCoords\28\29 +3114:SkVertices::Builder::positions\28\29 +3115:SkVertices::Builder::init\28SkVertices::Desc\20const&\29 +3116:SkVertices::Builder::colors\28\29 +3117:SkVertices::Builder::Builder\28SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +3118:SkUnicode_icu::extractPositions\28char\20const*\2c\20int\2c\20SkUnicode::BreakType\2c\20char\20const*\2c\20std::__2::function\20const&\29 +3119:SkTypeface_FreeType::Scanner::GetAxes\28FT_FaceRec_*\2c\20skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>*\29 +3120:SkTypeface_FreeType::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +3121:SkTypeface::getTableSize\28unsigned\20int\29\20const +3122:SkTextBlobRunIterator::positioning\28\29\20const +3123:SkTSpan::splitAt\28SkTSpan*\2c\20double\2c\20SkArenaAlloc*\29 +3124:SkTSect::computePerpendiculars\28SkTSect*\2c\20SkTSpan*\2c\20SkTSpan*\29 +3125:SkTDStorage::insert\28int\29 +3126:SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +3127:SkTDPQueue::percolateDownIfNecessary\28int\29 +3128:SkTConic::hullIntersects\28SkDConic\20const&\2c\20bool*\29\20const +3129:SkSurface_Base::SkSurface_Base\28int\2c\20int\2c\20SkSurfaceProps\20const*\29 +3130:SkSurface::width\28\29\20const +3131:SkStrokerPriv::CapFactory\28SkPaint::Cap\29 +3132:SkStrokeRec::getInflationRadius\28\29\20const +3133:SkString::equals\28char\20const*\29\20const +3134:SkStrikeSpec::MakeTransformMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +3135:SkStrikeSpec::MakePath\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\29 +3136:SkStrike::glyph\28SkGlyphDigest\29 +3137:SkSpecialImages::AsView\28GrRecordingContext*\2c\20SkSpecialImage\20const*\29 +3138:SkShaper::TrivialRunIterator::endOfCurrentRun\28\29\20const +3139:SkShaper::TrivialRunIterator::atEnd\28\29\20const +3140:SkShaper::MakeShapeDontWrapOrReorder\28std::__2::unique_ptr>\2c\20sk_sp\29 +3141:SkShadowTessellator::MakeAmbient\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20bool\29 +3142:SkScan::FillTriangle\28SkPoint\20const*\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3143:SkScan::FillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3144:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3145:SkScan::AntiHairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3146:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\2c\20bool\29 +3147:SkScalerContext_FreeType_Base::drawSVGGlyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +3148:SkScalarInterpFunc\28float\2c\20float\20const*\2c\20float\20const*\2c\20int\29 +3149:SkSLTypeString\28SkSLType\29 +3150:SkSL::simplify_negation\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\29 +3151:SkSL::simplify_matrix_multiplication\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3152:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +3153:SkSL::build_argument_type_list\28SkSpan>\20const>\29 +3154:SkSL::\28anonymous\20namespace\29::SwitchCaseContainsExit::visitStatement\28SkSL::Statement\20const&\29 +3155:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::returnsInputAlpha\28SkSL::Expression\20const&\29 +3156:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +3157:SkSL::\28anonymous\20namespace\29::ConstantExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +3158:SkSL::Variable::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20SkSL::VariableStorage\29 +3159:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29\20const +3160:SkSL::Type::MakeSamplerType\28char\20const*\2c\20SkSL::Type\20const&\29 +3161:SkSL::ThreadContext::~ThreadContext\28\29 +3162:SkSL::SymbolTable::isType\28std::__2::basic_string_view>\29\20const +3163:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Symbol*\29 +3164:SkSL::Symbol::instantiate\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +3165:SkSL::SampleUsage::merge\28SkSL::SampleUsage\20const&\29 +3166:SkSL::ReturnStatement::~ReturnStatement\28\29.1 +3167:SkSL::ReturnStatement::~ReturnStatement\28\29 +3168:SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +3169:SkSL::RP::Generator::pushTernaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +3170:SkSL::RP::Generator::pushStructuredComparison\28SkSL::RP::LValue*\2c\20SkSL::Operator\2c\20SkSL::RP::LValue*\2c\20SkSL::Type\20const&\29 +3171:SkSL::RP::Generator::pushMatrixMultiply\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3172:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29 +3173:SkSL::RP::Builder::push_uniform\28SkSL::RP::SlotRange\29 +3174:SkSL::RP::Builder::merge_condition_mask\28\29 +3175:SkSL::RP::Builder::jump\28int\29 +3176:SkSL::RP::Builder::branch_if_no_active_lanes_on_stack_top_equal\28int\2c\20int\29 +3177:SkSL::Pool::~Pool\28\29 +3178:SkSL::Pool::detachFromThread\28\29 +3179:SkSL::PipelineStage::ConvertProgram\28SkSL::Program\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20SkSL::PipelineStage::Callbacks*\29 +3180:SkSL::Parser::unaryExpression\28\29 +3181:SkSL::Parser::swizzle\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::basic_string_view>\2c\20SkSL::Position\29 +3182:SkSL::Parser::statementOrNop\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +3183:SkSL::Parser::block\28\29 +3184:SkSL::Operator::getBinaryPrecedence\28\29\20const +3185:SkSL::ModuleLoader::loadGPUModule\28SkSL::Compiler*\29 +3186:SkSL::ModifierFlags::checkPermittedFlags\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\29\20const +3187:SkSL::Mangler::uniqueName\28std::__2::basic_string_view>\2c\20SkSL::SymbolTable*\29 +3188:SkSL::LiteralType::slotType\28unsigned\20long\29\20const +3189:SkSL::Layout::operator==\28SkSL::Layout\20const&\29\20const +3190:SkSL::Layout::checkPermittedLayout\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkEnumBitMask\29\20const +3191:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29 +3192:SkSL::GLSLCodeGenerator::writeLiteral\28SkSL::Literal\20const&\29 +3193:SkSL::GLSLCodeGenerator::writeFunctionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +3194:SkSL::ForStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::shared_ptr\29 +3195:SkSL::FieldAccess::description\28SkSL::OperatorPrecedence\29\20const +3196:SkSL::Expression::isIncomplete\28SkSL::Context\20const&\29\20const +3197:SkSL::Expression::compareConstant\28SkSL::Expression\20const&\29\20const +3198:SkSL::DebugTracePriv::~DebugTracePriv\28\29 +3199:SkSL::Context::Context\28SkSL::BuiltinTypes\20const&\2c\20SkSL::ErrorReporter&\29 +3200:SkSL::ConstructorArrayCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +3201:SkSL::ConstructorArray::~ConstructorArray\28\29 +3202:SkSL::ConstructorArray::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +3203:SkSL::Compiler::runInliner\28SkSL::Inliner*\2c\20std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20std::__2::shared_ptr\2c\20SkSL::ProgramUsage*\29 +3204:SkSL::Block::MakeBlock\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::shared_ptr\29 +3205:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +3206:SkSL::Analysis::CallsColorTransformIntrinsics\28SkSL::Program\20const&\29 +3207:SkSL::AliasType::bitWidth\28\29\20const +3208:SkRuntimeShaderBuilder::~SkRuntimeShaderBuilder\28\29 +3209:SkRuntimeShaderBuilder::makeShader\28SkMatrix\20const*\29\20const +3210:SkRuntimeEffectPriv::VarAsUniform\28SkSL::Variable\20const&\2c\20SkSL::Context\20const&\2c\20unsigned\20long*\29 +3211:SkRuntimeEffectPriv::UniformsAsSpan\28SkSpan\2c\20sk_sp\2c\20bool\2c\20SkColorSpace\20const*\2c\20SkArenaAlloc*\29 +3212:SkRuntimeEffect::makeShader\28sk_sp\2c\20SkSpan\2c\20SkMatrix\20const*\29\20const +3213:SkResourceCache::checkMessages\28\29 +3214:SkResourceCache::NewCachedData\28unsigned\20long\29 +3215:SkRegion::translate\28int\2c\20int\2c\20SkRegion*\29\20const +3216:SkReduceOrder::Cubic\28SkPoint\20const*\2c\20SkPoint*\29 +3217:SkRectPriv::QuadContainsRect\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20float\29 +3218:SkRectPriv::ClosestDisjointEdge\28SkIRect\20const&\2c\20SkIRect\20const&\29 +3219:SkRecords::PreCachedPath::PreCachedPath\28SkPath\20const&\29 +3220:SkRecords::FillBounds::pushSaveBlock\28SkPaint\20const*\29 +3221:SkRecordDraw\28SkRecord\20const&\2c\20SkCanvas*\2c\20SkPicture\20const*\20const*\2c\20SkDrawable*\20const*\2c\20int\2c\20SkBBoxHierarchy\20const*\2c\20SkPicture::AbortCallback*\29 +3222:SkReadBuffer::readPath\28SkPath*\29 +3223:SkReadBuffer::readByteArrayAsData\28\29 +3224:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29 +3225:SkRasterPipelineBlitter::blitRectWithTrace\28int\2c\20int\2c\20int\2c\20int\2c\20bool\29 +3226:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +3227:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29 +3228:SkRasterPipeline::appendLoad\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +3229:SkRasterClip::op\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkClipOp\2c\20bool\29 +3230:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29 +3231:SkRRect::scaleRadii\28\29 +3232:SkRRect::AreRectAndRadiiValid\28SkRect\20const&\2c\20SkPoint\20const*\29 +3233:SkRBuffer::skip\28unsigned\20long\29 +3234:SkPixmapUtils::SwapWidthHeight\28SkImageInfo\20const&\29 +3235:SkPixmap::setColorSpace\28sk_sp\29 +3236:SkPixelRef::~SkPixelRef\28\29 +3237:SkPixelRef::notifyPixelsChanged\28\29 +3238:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20sk_sp\29 +3239:SkPictureRecord::addPathToHeap\28SkPath\20const&\29 +3240:SkPictureData::getPath\28SkReadBuffer*\29\20const +3241:SkPicture::serialize\28SkWStream*\2c\20SkSerialProcs\20const*\2c\20SkRefCntSet*\2c\20bool\29\20const +3242:SkPathWriter::update\28SkOpPtT\20const*\29 +3243:SkPathStroker::strokeCloseEnough\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20SkQuadConstruct*\29\20const +3244:SkPathStroker::finishContour\28bool\2c\20bool\29 +3245:SkPathRef::reset\28\29 +3246:SkPathRef::isRRect\28SkRRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +3247:SkPathRef::addGenIDChangeListener\28sk_sp\29 +3248:SkPathPriv::IsRectContour\28SkPath\20const&\2c\20bool\2c\20int*\2c\20SkPoint\20const**\2c\20bool*\2c\20SkPathDirection*\2c\20SkRect*\29 +3249:SkPathEffectBase::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +3250:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\29\20const +3251:SkPathBuilder::quadTo\28SkPoint\2c\20SkPoint\29 +3252:SkPathBuilder::cubicTo\28SkPoint\2c\20SkPoint\2c\20SkPoint\29 +3253:SkPath::writeToMemory\28void*\29\20const +3254:SkPath::reversePathTo\28SkPath\20const&\29 +3255:SkPath::rQuadTo\28float\2c\20float\2c\20float\2c\20float\29 +3256:SkPath::contains\28float\2c\20float\29\20const +3257:SkPath::arcTo\28float\2c\20float\2c\20float\2c\20SkPath::ArcSize\2c\20SkPathDirection\2c\20float\2c\20float\29 +3258:SkPath::approximateBytesUsed\28\29\20const +3259:SkPath::addCircle\28float\2c\20float\2c\20float\2c\20SkPathDirection\29 +3260:SkPath::Rect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3261:SkParsePath::ToSVGString\28SkPath\20const&\2c\20SkParsePath::PathEncoding\29::$_0::operator\28\29\28char\2c\20SkPoint\20const*\2c\20unsigned\20long\29\20const +3262:SkParse::FindScalar\28char\20const*\2c\20float*\29 +3263:SkPairPathEffect::flatten\28SkWriteBuffer&\29\20const +3264:SkPaintToGrPaintWithBlend\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +3265:SkPaint::refImageFilter\28\29\20const +3266:SkPaint::refBlender\28\29\20const +3267:SkPaint::getBlendMode_or\28SkBlendMode\29\20const +3268:SkPackARGB_as_RGBA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3269:SkPackARGB_as_BGRA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3270:SkOpSpan::setOppSum\28int\29 +3271:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20SkOpSpanBase**\29 +3272:SkOpSegment::markAllDone\28\29 +3273:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +3274:SkOpPtT::contains\28SkOpSegment\20const*\29\20const +3275:SkOpEdgeBuilder::closeContour\28SkPoint\20const&\2c\20SkPoint\20const&\29 +3276:SkOpCoincidence::releaseDeleted\28\29 +3277:SkOpCoincidence::markCollapsed\28SkOpPtT*\29 +3278:SkOpCoincidence::findOverlaps\28SkOpCoincidence*\29\20const +3279:SkOpCoincidence::expand\28\29 +3280:SkOpCoincidence::apply\28\29 +3281:SkOpAngle::orderable\28SkOpAngle*\29 +3282:SkOpAngle::computeSector\28\29 +3283:SkNullBlitter::~SkNullBlitter\28\29 +3284:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\2c\20sk_sp\29 +3285:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\29 +3286:SkNoDestructor>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>>::SkNoDestructor\28skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>&&\29 +3287:SkMessageBus::BufferFinishedMessage\2c\20GrDirectContext::DirectContextID\2c\20false>::Get\28\29 +3288:SkMemoryStream::SkMemoryStream\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +3289:SkMemoryStream::SkMemoryStream\28sk_sp\29 +3290:SkMatrixPriv::InverseMapRect\28SkMatrix\20const&\2c\20SkRect*\2c\20SkRect\20const&\29 +3291:SkMatrix::setRotate\28float\29 +3292:SkMatrix::setPolyToPoly\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20int\29 +3293:SkMatrix::postSkew\28float\2c\20float\29 +3294:SkMatrix::invert\28SkMatrix*\29\20const +3295:SkMatrix::getMinScale\28\29\20const +3296:SkMaskBuilder::PrepareDestination\28int\2c\20int\2c\20SkMask\20const&\29 +3297:SkMakeBitmapShaderForPaint\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20SkCopyPixelsMode\29 +3298:SkMD5::write\28void\20const*\2c\20unsigned\20long\29 +3299:SkLineClipper::ClipLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\2c\20bool\29 +3300:SkJSONWriter::separator\28bool\29 +3301:SkIntersections::intersectRay\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +3302:SkIntersections::intersectRay\28SkDLine\20const&\2c\20SkDLine\20const&\29 +3303:SkIntersections::intersectRay\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +3304:SkIntersections::intersectRay\28SkDConic\20const&\2c\20SkDLine\20const&\29 +3305:SkIntersections::cleanUpParallelLines\28bool\29 +3306:SkImages::RasterFromBitmap\28SkBitmap\20const&\29 +3307:SkImage_Raster::SkImage_Raster\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20int\29 +3308:SkImage_Ganesh::~SkImage_Ganesh\28\29 +3309:SkImageShader::Make\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +3310:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\29 +3311:SkImageInfo::MakeN32Premul\28SkISize\29 +3312:SkImageGenerator::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +3313:SkImageGenerator::SkImageGenerator\28SkImageInfo\20const&\2c\20unsigned\20int\29 +3314:SkImageFilters::MatrixTransform\28SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20sk_sp\29 +3315:SkImageFilters::Blur\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +3316:SkImageFilter_Base::getInputBounds\28skif::Mapping\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\29\20const +3317:SkImageFilter_Base::affectsTransparentBlack\28\29\20const +3318:SkImage::readPixels\28GrDirectContext*\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +3319:SkImage::hasMipmaps\28\29\20const +3320:SkIcuBreakIteratorCache::makeBreakIterator\28SkUnicode::BreakType\2c\20char\20const*\29 +3321:SkIDChangeListener::List::add\28sk_sp\29 +3322:SkGradientShader::MakeTwoPointConical\28SkPoint\20const&\2c\20float\2c\20SkPoint\20const&\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +3323:SkGradientShader::MakeLinear\28SkPoint\20const*\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +3324:SkGradientBaseShader::AppendInterpolatedToDstStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20bool\2c\20SkGradientShader::Interpolation\20const&\2c\20SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +3325:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkScalerContext*\29 +3326:SkGlyph::mask\28\29\20const +3327:SkFontPriv::ApproximateTransformedTextSize\28SkFont\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\20const&\29 +3328:SkFontMgr::matchFamily\28char\20const*\29\20const +3329:SkFindCubicMaxCurvature\28SkPoint\20const*\2c\20float*\29 +3330:SkEncodedInfo::ICCProfile::Make\28sk_sp\29 +3331:SkEmptyFontMgr::onMatchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +3332:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkIRect\20const*\2c\20int\29 +3333:SkDynamicMemoryWStream::padToAlign4\28\29 +3334:SkDrawable::SkDrawable\28\29 +3335:SkDrawBase::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29\20const +3336:SkDrawBase::drawDevicePoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\2c\20SkDevice*\29\20const +3337:SkDraw::drawBitmap\28SkBitmap\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29\20const +3338:SkDevice::simplifyGlyphRunRSXFormAndRedraw\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +3339:SkDevice::drawFilteredImage\28skif::Mapping\20const&\2c\20SkSpecialImage*\2c\20SkColorType\2c\20SkImageFilter\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +3340:SkDevice::SkDevice\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +3341:SkDataTable::at\28int\2c\20unsigned\20long*\29\20const +3342:SkData::MakeZeroInitialized\28unsigned\20long\29 +3343:SkDQuad::dxdyAtT\28double\29\20const +3344:SkDQuad::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +3345:SkDQuad::FindExtrema\28double\20const*\2c\20double*\29 +3346:SkDCubic::subDivide\28double\2c\20double\29\20const +3347:SkDCubic::searchRoots\28double*\2c\20int\2c\20double\2c\20SkDCubic::SearchAxis\2c\20double*\29\20const +3348:SkDCubic::Coefficients\28double\20const*\2c\20double*\2c\20double*\2c\20double*\2c\20double*\29 +3349:SkDConic::dxdyAtT\28double\29\20const +3350:SkDConic::FindExtrema\28double\20const*\2c\20float\2c\20double*\29 +3351:SkCopyStreamToData\28SkStream*\29 +3352:SkContourMeasure_segTo\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20float\2c\20SkPath*\29 +3353:SkContourMeasureIter::next\28\29 +3354:SkContourMeasureIter::Impl::compute_quad_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3355:SkContourMeasureIter::Impl::compute_cubic_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3356:SkContourMeasureIter::Impl::compute_conic_segs\28SkConic\20const&\2c\20float\2c\20int\2c\20SkPoint\20const&\2c\20int\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20int\29 +3357:SkContourMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +3358:SkConic::evalAt\28float\29\20const +3359:SkConic::TransformW\28SkPoint\20const*\2c\20float\2c\20SkMatrix\20const&\29 +3360:SkColorToPMColor4f\28unsigned\20int\2c\20GrColorInfo\20const&\29 +3361:SkColorSpaceLuminance::Fetch\28float\29 +3362:SkColorSpace::transferFn\28skcms_TransferFunction*\29\20const +3363:SkColorSpace::toXYZD50\28skcms_Matrix3x3*\29\20const +3364:SkColorPalette::SkColorPalette\28unsigned\20int\20const*\2c\20int\29 +3365:SkColorFilters::Blend\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\2c\20SkBlendMode\29 +3366:SkColor4fPrepForDst\28SkRGBA4f<\28SkAlphaType\293>\2c\20GrColorInfo\20const&\29 +3367:SkCodecs::get_decoders_for_editing\28\29 +3368:SkCodec::startIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +3369:SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +3370:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\2c\20float\29 +3371:SkCanvas::setMatrix\28SkM44\20const&\29 +3372:SkCanvas::scale\28float\2c\20float\29 +3373:SkCanvas::private_draw_shadow_rec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +3374:SkCanvas::onResetClip\28\29 +3375:SkCanvas::onClipShader\28sk_sp\2c\20SkClipOp\29 +3376:SkCanvas::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +3377:SkCanvas::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3378:SkCanvas::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3379:SkCanvas::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3380:SkCanvas::internal_private_resetClip\28\29 +3381:SkCanvas::internalSaveLayer\28SkCanvas::SaveLayerRec\20const&\2c\20SkCanvas::SaveLayerStrategy\2c\20bool\29 +3382:SkCanvas::experimental_DrawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +3383:SkCanvas::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +3384:SkCanvas::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +3385:SkCanvas::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +3386:SkCanvas::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +3387:SkCanvas::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +3388:SkCanvas::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +3389:SkCanvas::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +3390:SkCanvas::SkCanvas\28SkIRect\20const&\29 +3391:SkCachedData::~SkCachedData\28\29 +3392:SkCTMShader::~SkCTMShader\28\29.1 +3393:SkBmpRLECodec::setPixel\28void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20char\29 +3394:SkBmpCodec::prepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +3395:SkBmpCodec::ReadHeader\28SkStream*\2c\20bool\2c\20std::__2::unique_ptr>*\29 +3396:SkBlurMaskFilterImpl::computeXformedSigma\28SkMatrix\20const&\29\20const +3397:SkBlitterClipper::apply\28SkBlitter*\2c\20SkRegion\20const*\2c\20SkIRect\20const*\29 +3398:SkBlitter::blitRegion\28SkRegion\20const&\29 +3399:SkBitmapDevice::BDDraw::~BDDraw\28\29 +3400:SkBitmapCacheDesc::Make\28SkImage\20const*\29 +3401:SkBitmap::writePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +3402:SkBitmap::setPixels\28void*\29 +3403:SkBitmap::pixelRefOrigin\28\29\20const +3404:SkBitmap::notifyPixelsChanged\28\29\20const +3405:SkBitmap::isImmutable\28\29\20const +3406:SkBitmap::allocPixels\28\29 +3407:SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3408:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29.1 +3409:SkBaseShadowTessellator::handleCubic\28SkMatrix\20const&\2c\20SkPoint*\29 +3410:SkBaseShadowTessellator::handleConic\28SkMatrix\20const&\2c\20SkPoint*\2c\20float\29 +3411:SkAutoPathBoundsUpdate::SkAutoPathBoundsUpdate\28SkPath*\2c\20SkRect\20const&\29 +3412:SkAutoDescriptor::SkAutoDescriptor\28SkAutoDescriptor&&\29 +3413:SkArenaAllocWithReset::SkArenaAllocWithReset\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3414:SkAnimatedImage::getFrameCount\28\29\20const +3415:SkAnimatedImage::decodeNextFrame\28\29 +3416:SkAnimatedImage::Frame::copyTo\28SkAnimatedImage::Frame*\29\20const +3417:SkAnalyticQuadraticEdge::updateQuadratic\28\29 +3418:SkAnalyticCubicEdge::updateCubic\28bool\29 +3419:SkAlphaRuns::reset\28int\29 +3420:SkAAClip::setRect\28SkIRect\20const&\29 +3421:Simplify\28SkPath\20const&\2c\20SkPath*\29 +3422:ReconstructRow +3423:R.1 +3424:OpAsWinding::nextEdge\28Contour&\2c\20OpAsWinding::Edge\29 +3425:OT::sbix::sanitize\28hb_sanitize_context_t*\29\20const +3426:OT::post::accelerator_t::cmp_gids\28void\20const*\2c\20void\20const*\2c\20void*\29 +3427:OT::gvar::sanitize_shallow\28hb_sanitize_context_t*\29\20const +3428:OT::fvar::sanitize\28hb_sanitize_context_t*\29\20const +3429:OT::cmap::sanitize\28hb_sanitize_context_t*\29\20const +3430:OT::cmap::accelerator_t::accelerator_t\28hb_face_t*\29 +3431:OT::cff2::accelerator_templ_t>::~accelerator_templ_t\28\29 +3432:OT::avar::sanitize\28hb_sanitize_context_t*\29\20const +3433:OT::VarRegionList::evaluate\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +3434:OT::Rule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +3435:OT::OpenTypeFontFile::sanitize\28hb_sanitize_context_t*\29\20const +3436:OT::MVAR::sanitize\28hb_sanitize_context_t*\29\20const +3437:OT::Layout::GSUB_impl::SubstLookup::serialize_ligature\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20hb_sorted_array_t\2c\20hb_array_t\2c\20hb_array_t\2c\20hb_array_t\2c\20hb_array_t\29 +3438:OT::Layout::GPOS_impl::MarkArray::apply\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20OT::Layout::GPOS_impl::AnchorMatrix\20const&\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +3439:OT::GDEFVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3440:OT::Device::get_y_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3441:OT::Device::get_x_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3442:OT::ClipList::get_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\2c\20OT::VarStoreInstancer\20const&\29\20const +3443:OT::ChainRule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +3444:OT::CPAL::sanitize\28hb_sanitize_context_t*\29\20const +3445:OT::COLR::sanitize\28hb_sanitize_context_t*\29\20const +3446:OT::COLR::paint_glyph\28hb_font_t*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\29\20const +3447:MakeRasterCopyPriv\28SkPixmap\20const&\2c\20unsigned\20int\29 +3448:LineQuadraticIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineQuadraticIntersections::PinTPoint\29 +3449:LineQuadraticIntersections::checkCoincident\28\29 +3450:LineQuadraticIntersections::addLineNearEndPoints\28\29 +3451:LineCubicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineCubicIntersections::PinTPoint\29 +3452:LineCubicIntersections::checkCoincident\28\29 +3453:LineCubicIntersections::addLineNearEndPoints\28\29 +3454:LineConicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineConicIntersections::PinTPoint\29 +3455:LineConicIntersections::checkCoincident\28\29 +3456:LineConicIntersections::addLineNearEndPoints\28\29 +3457:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\29 +3458:GrVertexChunkBuilder::~GrVertexChunkBuilder\28\29 +3459:GrTriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +3460:GrTriangulator::splitEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +3461:GrTriangulator::pathToPolys\28float\2c\20SkRect\20const&\2c\20bool*\29 +3462:GrTriangulator::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20GrTriangulator::VertexList*\2c\20int\29\20const +3463:GrTriangulator::emitTriangle\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20skgpu::VertexWriter\29\20const +3464:GrTriangulator::checkForIntersection\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +3465:GrTriangulator::applyFillType\28int\29\20const +3466:GrTriangulator::EdgeList::insert\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +3467:GrTriangulator::Edge::insertBelow\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3468:GrTriangulator::Edge::insertAbove\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3469:GrToGLStencilFunc\28GrStencilTest\29 +3470:GrThreadSafeCache::dropAllRefs\28\29 +3471:GrTextureRenderTargetProxy::callbackDesc\28\29\20const +3472:GrTexture::GrTexture\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20GrTextureType\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +3473:GrTexture::ComputeScratchKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20skgpu::ScratchKey*\29 +3474:GrSurfaceProxyView::asTextureProxyRef\28\29\20const +3475:GrSurfaceProxy::GrSurfaceProxy\28std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +3476:GrSurfaceProxy::GrSurfaceProxy\28sk_sp\2c\20SkBackingFit\2c\20GrSurfaceProxy::UseAllocator\29 +3477:GrSurface::setRelease\28sk_sp\29 +3478:GrStyledShape::styledBounds\28\29\20const +3479:GrStyledShape::asLine\28SkPoint*\2c\20bool*\29\20const +3480:GrStyledShape::addGenIDChangeListener\28sk_sp\29\20const +3481:GrSimpleMeshDrawOpHelper::fixedFunctionFlags\28\29\20const +3482:GrShape::setRect\28SkRect\20const&\29 +3483:GrShape::setRRect\28SkRRect\20const&\29 +3484:GrResourceProvider::assignUniqueKeyToResource\28skgpu::UniqueKey\20const&\2c\20GrGpuResource*\29 +3485:GrResourceCache::releaseAll\28\29 +3486:GrResourceCache::getNextTimestamp\28\29 +3487:GrRenderTask::addDependency\28GrRenderTask*\29 +3488:GrRenderTargetProxy::canUseStencil\28GrCaps\20const&\29\20const +3489:GrRecordingContextPriv::addOnFlushCallbackObject\28GrOnFlushCallbackObject*\29 +3490:GrRecordingContext::~GrRecordingContext\28\29 +3491:GrRecordingContext::abandonContext\28\29 +3492:GrQuadUtils::TessellationHelper::Vertices::moveTo\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20int>\20const&\29 +3493:GrQuadUtils::TessellationHelper::EdgeEquations::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\29 +3494:GrQuadUtils::ResolveAAType\28GrAAType\2c\20GrQuadAAFlags\2c\20GrQuad\20const&\2c\20GrAAType*\2c\20GrQuadAAFlags*\29 +3495:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA&&\2c\20GrQuad\20const*\29 +3496:GrPixmap::GrPixmap\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +3497:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29 +3498:GrPersistentCacheUtils::UnpackCachedShaders\28SkReadBuffer*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20int\2c\20GrPersistentCacheUtils::ShaderMetadata*\29 +3499:GrPathUtils::convertCubicToQuads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\29 +3500:GrPathTessellationShader::Make\28GrShaderCaps\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::tess::PatchAttribs\29 +3501:GrOp::chainConcat\28std::__2::unique_ptr>\29 +3502:GrOp::GenOpClassID\28\29 +3503:GrMeshDrawOp::PatternHelper::PatternHelper\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +3504:GrMemoryPool::Make\28unsigned\20long\2c\20unsigned\20long\29 +3505:GrMakeKeyFromImageID\28skgpu::UniqueKey*\2c\20unsigned\20int\2c\20SkIRect\20const&\29 +3506:GrImageInfo::GrImageInfo\28GrColorInfo\20const&\2c\20SkISize\20const&\29 +3507:GrGpuResource::removeScratchKey\28\29 +3508:GrGpuResource::registerWithCacheWrapped\28GrWrapCacheable\29 +3509:GrGpuResource::dumpMemoryStatisticsPriv\28SkTraceMemoryDump*\2c\20SkString\20const&\2c\20char\20const*\2c\20unsigned\20long\29\20const +3510:GrGpuBuffer::onGpuMemorySize\28\29\20const +3511:GrGpu::resolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +3512:GrGpu::executeFlushInfo\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3513:GrGeometryProcessor::TextureSampler::TextureSampler\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +3514:GrGeometryProcessor::ProgramImpl::ComputeMatrixKeys\28GrShaderCaps\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3515:GrGLUniformHandler::getUniformVariable\28GrResourceHandle\29\20const +3516:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +3517:GrGLSemaphore::GrGLSemaphore\28GrGLGpu*\2c\20bool\29 +3518:GrGLSLVaryingHandler::~GrGLSLVaryingHandler\28\29 +3519:GrGLSLShaderBuilder::emitFunction\28SkSLType\2c\20char\20const*\2c\20SkSpan\2c\20char\20const*\29 +3520:GrGLSLProgramDataManager::setSkMatrix\28GrResourceHandle\2c\20SkMatrix\20const&\29\20const +3521:GrGLSLProgramBuilder::writeFPFunction\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +3522:GrGLSLProgramBuilder::invokeFP\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +3523:GrGLSLProgramBuilder::addRTFlipUniform\28char\20const*\29 +3524:GrGLSLFragmentShaderBuilder::dstColor\28\29 +3525:GrGLSLBlend::BlendKey\28SkBlendMode\29 +3526:GrGLProgramBuilder::~GrGLProgramBuilder\28\29 +3527:GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29 +3528:GrGLGpu::flushScissor\28GrScissorState\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +3529:GrGLGpu::flushClearColor\28std::__2::array\29 +3530:GrGLGpu::createTexture\28SkISize\2c\20GrGLFormat\2c\20unsigned\20int\2c\20skgpu::Renderable\2c\20GrGLTextureParameters::SamplerOverriddenState*\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +3531:GrGLGpu::copySurfaceAsDraw\28GrSurface*\2c\20bool\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +3532:GrGLGpu::SamplerObjectCache::~SamplerObjectCache\28\29 +3533:GrGLGpu::HWVertexArrayState::bindInternalVertexArray\28GrGLGpu*\2c\20GrBuffer\20const*\29 +3534:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29 +3535:GrGLBuffer::Make\28GrGLGpu*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +3536:GrGLAttribArrayState::enableVertexArrays\28GrGLGpu\20const*\2c\20int\2c\20GrPrimitiveRestart\29 +3537:GrFragmentProcessors::make_effect_fp\28sk_sp\2c\20char\20const*\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkSpan\2c\20GrFPArgs\20const&\29 +3538:GrFragmentProcessors::MakeChildFP\28SkRuntimeEffect::ChildPtr\20const&\2c\20GrFPArgs\20const&\29 +3539:GrFragmentProcessors::IsSupported\28SkMaskFilter\20const*\29 +3540:GrFragmentProcessor::makeProgramImpl\28\29\20const +3541:GrFragmentProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +3542:GrFragmentProcessor::MulInputByChildAlpha\28std::__2::unique_ptr>\29 +3543:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +3544:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +3545:GrFinishCallbacks::callAll\28bool\29 +3546:GrDynamicAtlas::makeNode\28GrDynamicAtlas::Node*\2c\20int\2c\20int\2c\20int\2c\20int\29 +3547:GrDrawingManager::setLastRenderTask\28GrSurfaceProxy\20const*\2c\20GrRenderTask*\29 +3548:GrDrawingManager::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3549:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29 +3550:GrDirectContext::resetContext\28unsigned\20int\29 +3551:GrDirectContext::getResourceCacheLimit\28\29\20const +3552:GrDefaultGeoProcFactory::MakeForDeviceSpace\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +3553:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20sk_sp\29 +3554:GrColorSpaceXform::apply\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +3555:GrColorSpaceXform::Equals\28GrColorSpaceXform\20const*\2c\20GrColorSpaceXform\20const*\29 +3556:GrBufferAllocPool::unmap\28\29 +3557:GrBlurUtils::can_filter_mask\28SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect*\29 +3558:GrBicubicEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkRect\20const&\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +3559:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20sk_sp\2c\20std::__2::basic_string_view>\29 +3560:GrBackendFormatStencilBits\28GrBackendFormat\20const&\29 +3561:GrBackendFormat::asMockCompressionType\28\29\20const +3562:GrAATriangulator::~GrAATriangulator\28\29 +3563:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrAATriangulator::EventList*\29\20const +3564:GrAAConvexTessellator::fanRing\28GrAAConvexTessellator::Ring\20const&\29 +3565:GrAAConvexTessellator::computePtAlongBisector\28int\2c\20SkPoint\20const&\2c\20int\2c\20float\2c\20SkPoint*\29\20const +3566:FT_Stream_ReadAt +3567:FT_Stream_OpenMemory +3568:FT_Set_Char_Size +3569:FT_Request_Metrics +3570:FT_Open_Face +3571:FT_Hypot +3572:FT_Get_Var_Design_Coordinates +3573:FT_Get_Paint +3574:FT_Get_MM_Var +3575:FT_Done_Library +3576:DecodeImageData +3577:Cr_z_inflate_table +3578:Cr_z_inflateReset +3579:Cr_z_deflateEnd +3580:Cr_z_copy_with_crc +3581:Compute_Point_Displacement +3582:AAT::trak::sanitize\28hb_sanitize_context_t*\29\20const +3583:AAT::ltag::sanitize\28hb_sanitize_context_t*\29\20const +3584:AAT::feat::sanitize\28hb_sanitize_context_t*\29\20const +3585:AAT::StateTable::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +3586:AAT::Lookup>\2c\20OT::IntType\2c\20false>>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3587:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3588:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3589:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3590:zeroinfnan +3591:xyz_almost_equal\28skcms_Matrix3x3\20const&\2c\20skcms_Matrix3x3\20const&\29 +3592:wyhash\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\20long\2c\20unsigned\20long\20long\20const*\29 +3593:wuffs_lzw__decoder__transform_io +3594:wuffs_gif__decoder__set_quirk_enabled +3595:wuffs_gif__decoder__restart_frame +3596:wuffs_gif__decoder__num_animation_loops +3597:wuffs_gif__decoder__frame_dirty_rect +3598:wuffs_gif__decoder__decode_up_to_id_part1 +3599:wuffs_gif__decoder__decode_frame +3600:write_vertex_position\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrShaderVar\20const&\2c\20SkMatrix\20const&\2c\20char\20const*\2c\20GrShaderVar*\2c\20GrResourceHandle*\29 +3601:write_text_tag\28char\20const*\29 +3602:write_passthrough_vertex_position\28GrGLSLVertexBuilder*\2c\20GrShaderVar\20const&\2c\20GrShaderVar*\29 +3603:write_mAB_or_mBA_tag\28unsigned\20int\2c\20skcms_Curve\20const*\2c\20skcms_Curve\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20skcms_Curve\20const*\2c\20skcms_Matrix3x4\20const*\29 +3604:webgl_get_gl_proc\28void*\2c\20char\20const*\29 +3605:wctomb +3606:wchar_t*\20std::__2::copy\5babi:v160004\5d\2c\20wchar_t*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20wchar_t*\29 +3607:walk_simple_edges\28SkEdge*\2c\20SkBlitter*\2c\20int\2c\20int\29 +3608:vsscanf +3609:void\20std::__2::vector>::__emplace_back_slow_path&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&>\28SkFont\20const&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\29 +3610:void\20std::__2::vector>::assign\28skia::textlayout::FontFeature*\2c\20skia::textlayout::FontFeature*\29 +3611:void\20std::__2::vector\2c\20std::__2::allocator>>::__emplace_back_slow_path>\28sk_sp&&\29 +3612:void\20std::__2::vector>::assign\28SkString*\2c\20SkString*\29 +3613:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\29 +3614:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Varying&&\29 +3615:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Attribute&&\29 +3616:void\20std::__2::vector>::assign\28SkFontArguments::VariationPosition::Coordinate*\2c\20SkFontArguments::VariationPosition::Coordinate*\29 +3617:void\20std::__2::vector>::__emplace_back_slow_path\28SkRect&\2c\20int&\2c\20int&\29 +3618:void\20std::__2::allocator_traits>::construct\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\29 +3619:void\20std::__2::__tree_balance_after_insert\5babi:v160004\5d*>\28std::__2::__tree_node_base*\2c\20std::__2::__tree_node_base*\29 +3620:void\20std::__2::__stable_sort_move\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\29 +3621:void\20std::__2::__sift_up\5babi:v160004\5d*>>\28std::__2::__wrap_iter*>\2c\20std::__2::__wrap_iter*>\2c\20GrGeometryProcessor::ProgramImpl::emitTransformCode\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\29::$_0&\2c\20std::__2::iterator_traits*>>::difference_type\29 +3622:void\20std::__2::__optional_storage_base::__assign_from\5babi:v160004\5d\20const&>\28std::__2::__optional_copy_assign_base\20const&\29 +3623:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20char*&\2c\20char*&\29 +3624:void\20sorted_merge<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3625:void\20sorted_merge<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3626:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.1 +3627:void\20skgpu::ganesh::SurfaceFillContext::clear<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\20const&\29 +3628:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +3629:void\20emscripten::internal::MemberAccess::setWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle&\2c\20SimpleFontStyle*\29 +3630:void\20\28anonymous\20namespace\29::copyFT2LCD16\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\29 +3631:void\20SkTIntroSort\28int\2c\20int*\2c\20int\2c\20DistanceLessThan\20const&\29 +3632:void\20SkTIntroSort\28float*\2c\20float*\29::'lambda'\28float\20const&\2c\20float\20const&\29>\28int\2c\20float*\2c\20int\2c\20void\20SkTQSort\28float*\2c\20float*\29::'lambda'\28float\20const&\2c\20float\20const&\29\20const&\29 +3633:void\20SkTIntroSort\28int\2c\20SkString*\2c\20int\2c\20bool\20\20const\28&\29\28SkString\20const&\2c\20SkString\20const&\29\29 +3634:void\20SkTIntroSort\28int\2c\20SkOpRayHit**\2c\20int\2c\20bool\20\20const\28&\29\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29\29 +3635:void\20SkTIntroSort\28SkOpContour**\2c\20SkOpContour**\29::'lambda'\28SkOpContour\20const*\2c\20SkOpContour\20const*\29>\28int\2c\20SkOpContour*\2c\20int\2c\20void\20SkTQSort\28SkOpContour**\2c\20SkOpContour**\29::'lambda'\28SkOpContour\20const*\2c\20SkOpContour\20const*\29\20const&\29 +3636:void\20SkTIntroSort>\2c\20SkCodec::Result*\29::Entry\2c\20SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29::EntryLessThan>\28int\2c\20SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29::Entry*\2c\20int\2c\20SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29::EntryLessThan\20const&\29 +3637:void\20SkTIntroSort\28SkClosestRecord\20const**\2c\20SkClosestRecord\20const**\29::'lambda'\28SkClosestRecord\20const*\2c\20SkClosestRecord\20const*\29>\28int\2c\20SkClosestRecord\20const*\2c\20int\2c\20void\20SkTQSort\28SkClosestRecord\20const**\2c\20SkClosestRecord\20const**\29::'lambda'\28SkClosestRecord\20const*\2c\20SkClosestRecord\20const*\29\20const&\29 +3638:void\20SkTIntroSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29>\28int\2c\20SkAnalyticEdge*\2c\20int\2c\20void\20SkTQSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29\20const&\29 +3639:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\20const\28&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3640:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\28*\20const&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3641:void\20SkTIntroSort\28int\2c\20Edge*\2c\20int\2c\20EdgeLT\20const&\29 +3642:void\20GrGeometryProcessor::ProgramImpl::collectTransforms\28GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGLSLUniformHandler*\2c\20GrShaderType\2c\20GrShaderVar\20const&\2c\20GrShaderVar\20const&\2c\20GrPipeline\20const&\29::$_0::operator\28\29<$_0>\28$_0&\2c\20GrFragmentProcessor\20const&\2c\20bool\2c\20GrFragmentProcessor\20const*\2c\20int\2c\20GrGeometryProcessor::ProgramImpl::collectTransforms\28GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGLSLUniformHandler*\2c\20GrShaderType\2c\20GrShaderVar\20const&\2c\20GrShaderVar\20const&\2c\20GrPipeline\20const&\29::BaseCoord\29 +3643:void\20AAT::StateTableDriver::drive::driver_context_t>\28AAT::LigatureSubtable::driver_context_t*\2c\20AAT::hb_aat_apply_context_t*\29::'lambda0'\28\29::operator\28\29\28\29\20const +3644:virtual\20thunk\20to\20GrGLTexture::onSetLabel\28\29 +3645:virtual\20thunk\20to\20GrGLTexture::backendFormat\28\29\20const +3646:vfiprintf +3647:validate_texel_levels\28SkISize\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20GrCaps\20const*\29 +3648:utf8TextClose\28UText*\29 +3649:utf8TextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +3650:utext_openConstUnicodeString_73 +3651:utext_moveIndex32_73 +3652:utext_getPreviousNativeIndex_73 +3653:utext_extract_73 +3654:uscript_getShortName_73 +3655:ures_resetIterator_73 +3656:ures_initStackObject_73 +3657:ures_getValueWithFallback_73 +3658:ures_getInt_73 +3659:ures_getIntVector_73 +3660:ures_copyResb_73 +3661:uprv_stricmp_73 +3662:uprv_getMaxValues_73 +3663:uprv_compareInvAscii_73 +3664:upropsvec_addPropertyStarts_73 +3665:uprops_getSource_73 +3666:unsigned\20short\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3667:unsigned\20long\20long\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3668:unsigned\20int\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3669:unsigned\20int\20const*\20std::__2::lower_bound\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20unsigned\20long\20const&\29 +3670:unorm_getFCD16_73 +3671:ultag_isUnicodeLocaleKey_73 +3672:ultag_isScriptSubtag_73 +3673:ultag_isLanguageSubtag_73 +3674:ultag_isExtensionSubtags_73 +3675:ultag_getTKeyStart_73 +3676:ulocimp_toBcpType_73 +3677:ulocimp_forLanguageTag_73 +3678:uloc_toUnicodeLocaleType_73 +3679:uloc_toUnicodeLocaleKey_73 +3680:uloc_setKeywordValue_73 +3681:uloc_getTableStringWithFallback_73 +3682:uloc_getName_73 +3683:uloc_getDisplayName_73 +3684:uenum_unext_73 +3685:udata_open_73 +3686:udata_checkCommonData_73 +3687:ucptrie_internalU8PrevIndex_73 +3688:uchar_addPropertyStarts_73 +3689:ucase_toFullUpper_73 +3690:ucase_toFullLower_73 +3691:ucase_toFullFolding_73 +3692:ucase_getTypeOrIgnorable_73 +3693:ucase_addPropertyStarts_73 +3694:ubidi_getPairedBracketType_73 +3695:ubidi_close_73 +3696:u_unescapeAt_73 +3697:u_strFindFirst_73 +3698:u_memrchr_73 +3699:u_memcmp_73 +3700:u_hasBinaryProperty_73 +3701:u_getPropertyEnum_73 +3702:tt_size_run_prep +3703:tt_size_done_bytecode +3704:tt_sbit_decoder_load_image +3705:tt_face_vary_cvt +3706:tt_face_palette_set +3707:tt_face_load_cvt +3708:tt_face_get_metrics +3709:tt_done_blend +3710:tt_delta_interpolate +3711:tt_cmap4_set_range +3712:tt_cmap4_next +3713:tt_cmap4_char_map_linear +3714:tt_cmap4_char_map_binary +3715:tt_cmap14_get_def_chars +3716:tt_cmap13_next +3717:tt_cmap12_next +3718:tt_cmap12_init +3719:tt_cmap12_char_map_binary +3720:tt_apply_mvar +3721:toParagraphStyle\28SimpleParagraphStyle\20const&\29 +3722:tanhf +3723:t1_lookup_glyph_by_stdcharcode_ps +3724:t1_builder_close_contour +3725:t1_builder_check_points +3726:strtoull +3727:strtoll_l +3728:strtol +3729:strspn +3730:store_int +3731:std::logic_error::~logic_error\28\29 +3732:std::logic_error::logic_error\28char\20const*\29 +3733:std::exception::exception\5babi:v160004\5d\28\29 +3734:std::__2::vector>::__append\28unsigned\20long\29 +3735:std::__2::vector>::max_size\28\29\20const +3736:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +3737:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +3738:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::locale::facet**\29 +3739:std::__2::vector>::__annotate_shrink\5babi:v160004\5d\28unsigned\20long\29\20const +3740:std::__2::vector>::__annotate_new\5babi:v160004\5d\28unsigned\20long\29\20const +3741:std::__2::vector>::__annotate_delete\5babi:v160004\5d\28\29\20const +3742:std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float&&\29 +3743:std::__2::vector<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20std::__2::allocator<\28anonymous\20namespace\29::CacheImpl::Value*>>::__throw_length_error\5babi:v160004\5d\28\29\20const +3744:std::__2::vector>::erase\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +3745:std::__2::vector>::__append\28unsigned\20long\29 +3746:std::__2::unique_ptr::operator=\5babi:v160004\5d\28std::__2::unique_ptr&&\29 +3747:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3748:std::__2::unique_ptr>\20SkSL::coalesce_vector\28std::__2::array\20const&\2c\20double\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\2c\20double\20\28*\29\28double\29\29 +3749:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::nullptr_t\29 +3750:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda0'\28\29::operator\28\29\28\29\20const +3751:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +3752:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29 +3753:std::__2::to_string\28unsigned\20long\29 +3754:std::__2::to_chars_result\20std::__2::__to_chars_itoa\5babi:v160004\5d\28char*\2c\20char*\2c\20unsigned\20int\2c\20std::__2::integral_constant\29 +3755:std::__2::time_put>>::~time_put\28\29 +3756:std::__2::time_get>>::__get_year\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3757:std::__2::time_get>>::__get_weekdayname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3758:std::__2::time_get>>::__get_monthname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3759:std::__2::time_get>>::__get_year\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3760:std::__2::time_get>>::__get_weekdayname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3761:std::__2::time_get>>::__get_monthname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3762:std::__2::reverse_iterator::operator++\5babi:v160004\5d\28\29 +3763:std::__2::reverse_iterator::operator*\5babi:v160004\5d\28\29\20const +3764:std::__2::priority_queue>\2c\20GrAATriangulator::EventComparator>::push\28GrAATriangulator::Event*\20const&\29 +3765:std::__2::pair\2c\20void*>*>\2c\20bool>\20std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::__emplace_unique_key_args\2c\20std::__2::tuple<>>\28GrFragmentProcessor\20const*\20const&\2c\20std::__2::piecewise_construct_t\20const&\2c\20std::__2::tuple&&\2c\20std::__2::tuple<>&&\29 +3766:std::__2::pair*>\2c\20bool>\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__emplace_unique_key_args\28int\20const&\2c\20int\20const&\29 +3767:std::__2::pair\2c\20std::__2::allocator>>>::pair\28std::__2::pair\2c\20std::__2::allocator>>>&&\29 +3768:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28wchar_t\29 +3769:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28char\29 +3770:std::__2::optional&\20std::__2::optional::operator=\5babi:v160004\5d\28SkPath\20const&\29 +3771:std::__2::numpunct::~numpunct\28\29 +3772:std::__2::numpunct::~numpunct\28\29 +3773:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20int&\29\20const +3774:std::__2::num_get>>\20const&\20std::__2::use_facet\5babi:v160004\5d>>>\28std::__2::locale\20const&\29 +3775:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20int&\29\20const +3776:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3777:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3778:std::__2::moneypunct::do_negative_sign\28\29\20const +3779:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3780:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3781:std::__2::moneypunct::do_negative_sign\28\29\20const +3782:std::__2::money_get>>::__do_get\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::locale\20const&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool&\2c\20std::__2::ctype\20const&\2c\20std::__2::unique_ptr&\2c\20wchar_t*&\2c\20wchar_t*\29 +3783:std::__2::money_get>>::__do_get\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::locale\20const&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool&\2c\20std::__2::ctype\20const&\2c\20std::__2::unique_ptr&\2c\20char*&\2c\20char*\29 +3784:std::__2::locale::__imp::~__imp\28\29 +3785:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20std::__2::random_access_iterator_tag\29 +3786:std::__2::iterator_traits\2c\20std::__2::allocator>\20const*>::difference_type\20std::__2::distance\5babi:v160004\5d\2c\20std::__2::allocator>\20const*>\28std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\29 +3787:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28char*\2c\20char*\29 +3788:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::random_access_iterator_tag\29 +3789:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3790:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3791:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3792:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3793:std::__2::ios_base::width\5babi:v160004\5d\28long\29 +3794:std::__2::ios_base::init\28void*\29 +3795:std::__2::ios_base::imbue\28std::__2::locale\20const&\29 +3796:std::__2::ios_base::clear\28unsigned\20int\29 +3797:std::__2::ios_base::__call_callbacks\28std::__2::ios_base::event\29 +3798:std::__2::hash::operator\28\29\28skia::textlayout::FontArguments\20const&\29\20const +3799:std::__2::enable_if\2c\20sk_sp>::type\20SkLocalMatrixShader::MakeWrapped\2c\20SkTileMode&\2c\20SkTileMode&\2c\20SkFilterMode&\2c\20SkRect\20const*&>\28SkMatrix\20const*\2c\20sk_sp&&\2c\20SkTileMode&\2c\20SkTileMode&\2c\20SkFilterMode&\2c\20SkRect\20const*&\29 +3800:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28char&\2c\20char&\29 +3801:std::__2::enable_if<__is_cpp17_random_access_iterator::value\2c\20char*>::type\20std::__2::copy_n\5babi:v160004\5d\28char\20const*\2c\20unsigned\20long\2c\20char*\29 +3802:std::__2::enable_if<__is_cpp17_forward_iterator::value\2c\20void>::type\20std::__2::basic_string\2c\20std::__2::allocator>::__init\28wchar_t\20const*\2c\20wchar_t\20const*\29 +3803:std::__2::enable_if<__is_cpp17_forward_iterator::value\2c\20void>::type\20std::__2::basic_string\2c\20std::__2::allocator>::__init\28char*\2c\20char*\29 +3804:std::__2::deque>::__add_back_capacity\28\29 +3805:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::gpu::TextBlobRedrawCoordinator*\29\20const +3806:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::GlyphRunBuilder*\29\20const +3807:std::__2::ctype::~ctype\28\29 +3808:std::__2::codecvt::~codecvt\28\29 +3809:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +3810:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char32_t\20const*\2c\20char32_t\20const*\2c\20char32_t\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +3811:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3812:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20char32_t*\2c\20char32_t*\2c\20char32_t*&\29\20const +3813:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char16_t\20const*\2c\20char16_t\20const*\2c\20char16_t\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +3814:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3815:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20char16_t*\2c\20char16_t*\2c\20char16_t*&\29\20const +3816:std::__2::char_traits::not_eof\28int\29 +3817:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +3818:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28\29\20const +3819:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29 +3820:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by_and_replace\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20wchar_t\20const*\29 +3821:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +3822:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +3823:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20char\29 +3824:std::__2::basic_string\2c\20std::__2::allocator>::basic_string>\2c\20void>\28std::__2::basic_string_view>\20const&\29 +3825:std::__2::basic_string\2c\20std::__2::allocator>::__throw_out_of_range\5babi:v160004\5d\28\29\20const +3826:std::__2::basic_string\2c\20std::__2::allocator>::__null_terminate_at\5babi:v160004\5d\28char*\2c\20unsigned\20long\29 +3827:std::__2::basic_string\2c\20std::__2::allocator>&\20std::__2::basic_string\2c\20std::__2::allocator>::__assign_no_alias\28char\20const*\2c\20unsigned\20long\29 +3828:std::__2::basic_string\2c\20std::__2::allocator>&\20skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::emplace_back\28char\20const*&&\29 +3829:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3830:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3831:std::__2::basic_streambuf>::sputc\5babi:v160004\5d\28char\29 +3832:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3833:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3834:std::__2::basic_streambuf>::basic_streambuf\28\29 +3835:std::__2::basic_ostream>::~basic_ostream\28\29.2 +3836:std::__2::basic_ostream>::sentry::~sentry\28\29 +3837:std::__2::basic_ostream>::sentry::sentry\28std::__2::basic_ostream>&\29 +3838:std::__2::basic_ostream>::operator<<\28float\29 +3839:std::__2::basic_ostream>::flush\28\29 +3840:std::__2::basic_istream>::~basic_istream\28\29.2 +3841:std::__2::basic_istream>::sentry::sentry\28std::__2::basic_istream>&\2c\20bool\29 +3842:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\2c\20unsigned\20long\29 +3843:std::__2::allocator::deallocate\5babi:v160004\5d\28wchar_t*\2c\20unsigned\20long\29 +3844:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3845:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3846:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +3847:std::__2::__time_put::__time_put\5babi:v160004\5d\28\29 +3848:std::__2::__time_put::__do_put\28char*\2c\20char*&\2c\20tm\20const*\2c\20char\2c\20char\29\20const +3849:std::__2::__split_buffer>::push_back\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +3850:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3851:std::__2::__num_put::__widen_and_group_int\28char*\2c\20char*\2c\20char*\2c\20wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20std::__2::locale\20const&\29 +3852:std::__2::__num_put::__widen_and_group_float\28char*\2c\20char*\2c\20char*\2c\20wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20std::__2::locale\20const&\29 +3853:std::__2::__num_put::__widen_and_group_int\28char*\2c\20char*\2c\20char*\2c\20char*\2c\20char*&\2c\20char*&\2c\20std::__2::locale\20const&\29 +3854:std::__2::__num_put::__widen_and_group_float\28char*\2c\20char*\2c\20char*\2c\20char*\2c\20char*&\2c\20char*&\2c\20std::__2::locale\20const&\29 +3855:std::__2::__money_put::__gather_info\28bool\2c\20bool\2c\20std::__2::locale\20const&\2c\20std::__2::money_base::pattern&\2c\20wchar_t&\2c\20wchar_t&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20int&\29 +3856:std::__2::__money_put::__format\28wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20unsigned\20int\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20std::__2::ctype\20const&\2c\20bool\2c\20std::__2::money_base::pattern\20const&\2c\20wchar_t\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20int\29 +3857:std::__2::__money_put::__gather_info\28bool\2c\20bool\2c\20std::__2::locale\20const&\2c\20std::__2::money_base::pattern&\2c\20char&\2c\20char&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20int&\29 +3858:std::__2::__money_put::__format\28char*\2c\20char*&\2c\20char*&\2c\20unsigned\20int\2c\20char\20const*\2c\20char\20const*\2c\20std::__2::ctype\20const&\2c\20bool\2c\20std::__2::money_base::pattern\20const&\2c\20char\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20int\29 +3859:std::__2::__libcpp_sscanf_l\28char\20const*\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +3860:std::__2::__libcpp_mbrtowc_l\5babi:v160004\5d\28wchar_t*\2c\20char\20const*\2c\20unsigned\20long\2c\20__mbstate_t*\2c\20__locale_struct*\29 +3861:std::__2::__libcpp_mb_cur_max_l\5babi:v160004\5d\28__locale_struct*\29 +3862:std::__2::__libcpp_deallocate\5babi:v160004\5d\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3863:std::__2::__libcpp_allocate\5babi:v160004\5d\28unsigned\20long\2c\20unsigned\20long\29 +3864:std::__2::__is_overaligned_for_new\5babi:v160004\5d\28unsigned\20long\29 +3865:std::__2::__function::__value_func::swap\5babi:v160004\5d\28std::__2::__function::__value_func&\29 +3866:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +3867:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +3868:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +3869:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy\28\29 +3870:std::__2::__constexpr_wcslen\5babi:v160004\5d\28wchar_t\20const*\29 +3871:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::__sso_allocator&\2c\20unsigned\20long\29 +3872:start_input_pass +3873:sktext::gpu::can_use_direct\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3874:sktext::gpu::build_distance_adjust_table\28float\2c\20float\29 +3875:sktext::gpu::VertexFiller::opMaskType\28\29\20const +3876:sktext::gpu::VertexFiller::fillVertexData\28int\2c\20int\2c\20SkSpan\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkIRect\2c\20void*\29\20const +3877:sktext::gpu::TextBlobRedrawCoordinator::internalRemove\28sktext::gpu::TextBlob*\29 +3878:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29::$_2::operator\28\29\28SkZip\2c\20skgpu::MaskFormat\29\20const +3879:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29::$_0::operator\28\29\28SkZip\2c\20skgpu::MaskFormat\29\20const +3880:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29 +3881:sktext::gpu::SubRunContainer::EstimateAllocSize\28sktext::GlyphRunList\20const&\29 +3882:sktext::gpu::SubRunAllocator::SubRunAllocator\28char*\2c\20int\2c\20int\29 +3883:sktext::gpu::StrikeCache::~StrikeCache\28\29 +3884:sktext::gpu::SlugImpl::Make\28SkMatrix\20const&\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\29 +3885:sktext::gpu::Slug::NextUniqueID\28\29 +3886:sktext::gpu::BagOfBytes::BagOfBytes\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29::$_1::operator\28\29\28\29\20const +3887:sktext::glyphrun_source_bounds\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkZip\2c\20SkSpan\29 +3888:sktext::SkStrikePromise::resetStrike\28\29 +3889:sktext::SkStrikePromise::SkStrikePromise\28sk_sp&&\29 +3890:sktext::GlyphRunList::makeBlob\28\29\20const +3891:sktext::GlyphRunBuilder::blobToGlyphRunList\28SkTextBlob\20const&\2c\20SkPoint\29 +3892:skstd::to_string\28float\29 +3893:skpathutils::FillPathWithPaint\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkPath*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29 +3894:skjpeg_err_exit\28jpeg_common_struct*\29 +3895:skip_string +3896:skip_procedure +3897:skif::\28anonymous\20namespace\29::is_nearly_integer_translation\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29 +3898:skif::\28anonymous\20namespace\29::extract_subset\28SkSpecialImage\20const*\2c\20skif::LayerSpace\2c\20skif::LayerSpace\20const&\2c\20bool\29 +3899:skif::\28anonymous\20namespace\29::decompose_transform\28SkMatrix\20const&\2c\20SkPoint\2c\20SkMatrix*\2c\20SkMatrix*\29 +3900:skif::\28anonymous\20namespace\29::GaneshBackend::maxSigma\28\29\20const +3901:skif::\28anonymous\20namespace\29::GaneshBackend::getBlurEngine\28\29\20const +3902:skif::\28anonymous\20namespace\29::GaneshBackend::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +3903:skif::Mapping::applyOrigin\28skif::LayerSpace\20const&\29 +3904:skif::LayerSpace::relevantSubset\28skif::LayerSpace\2c\20SkTileMode\29\20const +3905:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20bool\2c\20SkBlender\20const*\29\20const +3906:skif::FilterResult::applyCrop\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkTileMode\29\20const +3907:skif::FilterResult::FilterResult\28std::__2::pair\2c\20skif::LayerSpace>\29 +3908:skia_private::THashTable::Traits>::set\28unsigned\20long\20long\29 +3909:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3910:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeSlot\28int\29 +3911:skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair&&\29 +3912:skia_private::THashTable\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair&&\29 +3913:skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair&&\29 +3914:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3915:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +3916:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::find\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +3917:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3918:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +3919:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::resize\28int\29 +3920:skia_private::THashTable\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair\2c\20SkIcuBreakIteratorCache::Request\2c\20skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair&&\29 +3921:skia_private::THashTable\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair\2c\20SkIcuBreakIteratorCache::Request\2c\20skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::Pair&&\2c\20unsigned\20int\29 +3922:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28skgpu::ganesh::SmallPathShapeData*&&\29 +3923:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3924:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::uncheckedSet\28sk_sp&&\29 +3925:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::resize\28int\29 +3926:skia_private::THashTable<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20SkImageFilterCacheKey\2c\20SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::AdaptedTraits>::uncheckedSet\28\28anonymous\20namespace\29::CacheImpl::Value*&&\29 +3927:skia_private::THashTable<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20SkImageFilterCacheKey\2c\20SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::AdaptedTraits>::resize\28int\29 +3928:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3929:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3930:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3931:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3932:skia_private::THashTable::uncheckedSet\28SkResourceCache::Rec*&&\29 +3933:skia_private::THashTable::resize\28int\29 +3934:skia_private::THashTable\2c\20SkGoodHash>::Entry*\2c\20unsigned\20long\20long\2c\20SkLRUCache\2c\20SkGoodHash>::Traits>::resize\28int\29 +3935:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::set\28SkLRUCache::Entry*\29 +3936:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::resize\28int\29 +3937:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::uncheckedSet\28SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*&&\29 +3938:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::resize\28int\29 +3939:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrGpuResource*&&\29 +3940:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3941:skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::set\28unsigned\20int\2c\20sk_sp\20\28*\29\28SkReadBuffer&\29\29 +3942:skia_private::THashMap>\2c\20SkGoodHash>::remove\28SkImageFilter\20const*\20const&\29 +3943:skia_private::TArray::push_back_raw\28int\29 +3944:skia_private::TArray::resize_back\28int\29 +3945:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::checkRealloc\28int\2c\20double\29 +3946:skia_private::TArray::~TArray\28\29 +3947:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3948:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3949:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3950:skia_private::TArray::BufferFinishedMessage\2c\20false>::operator=\28skia_private::TArray::BufferFinishedMessage\2c\20false>&&\29 +3951:skia_private::TArray::BufferFinishedMessage\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +3952:skia_private::TArray::Plane\2c\20false>::move\28void*\29 +3953:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +3954:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3955:skia_private::TArray\29::ReorderedArgument\2c\20false>::push_back\28SkSL::optimize_constructor_swizzle\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ConstructorCompound\20const&\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29::ReorderedArgument&&\29 +3956:skia_private::TArray::TArray\28skia_private::TArray&&\29 +3957:skia_private::TArray::swap\28skia_private::TArray&\29 +3958:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +3959:skia_private::TArray::push_back_raw\28int\29 +3960:skia_private::TArray::push_back_raw\28int\29 +3961:skia_private::TArray::push_back_raw\28int\29 +3962:skia_private::TArray::move_back_n\28int\2c\20GrTextureProxy**\29 +3963:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3964:skia_private::TArray::push_back_n\28int\2c\20EllipticalRRectOp::RRect\20const*\29 +3965:skia_private::STArray<4\2c\20signed\20char\2c\20true>::STArray\28skia_private::STArray<4\2c\20signed\20char\2c\20true>\20const&\29 +3966:skia_png_zfree +3967:skia_png_write_zTXt +3968:skia_png_write_tIME +3969:skia_png_write_tEXt +3970:skia_png_write_iTXt +3971:skia_png_set_write_fn +3972:skia_png_set_strip_16 +3973:skia_png_set_read_user_transform_fn +3974:skia_png_set_read_user_chunk_fn +3975:skia_png_set_option +3976:skia_png_set_mem_fn +3977:skia_png_set_expand_gray_1_2_4_to_8 +3978:skia_png_set_error_fn +3979:skia_png_set_compression_level +3980:skia_png_set_IHDR +3981:skia_png_read_filter_row +3982:skia_png_process_IDAT_data +3983:skia_png_icc_set_sRGB +3984:skia_png_icc_check_tag_table +3985:skia_png_icc_check_header +3986:skia_png_get_uint_31 +3987:skia_png_get_sBIT +3988:skia_png_get_rowbytes +3989:skia_png_get_error_ptr +3990:skia_png_get_IHDR +3991:skia_png_do_swap +3992:skia_png_do_read_transformations +3993:skia_png_do_read_interlace +3994:skia_png_do_packswap +3995:skia_png_do_invert +3996:skia_png_do_gray_to_rgb +3997:skia_png_do_expand +3998:skia_png_do_check_palette_indexes +3999:skia_png_do_bgr +4000:skia_png_destroy_png_struct +4001:skia_png_destroy_gamma_table +4002:skia_png_create_png_struct +4003:skia_png_create_info_struct +4004:skia_png_crc_read +4005:skia_png_colorspace_sync_info +4006:skia_png_check_IHDR +4007:skia::textlayout::TypefaceFontStyleSet::matchStyle\28SkFontStyle\20const&\29 +4008:skia::textlayout::TextStyle::matchOneAttribute\28skia::textlayout::StyleType\2c\20skia::textlayout::TextStyle\20const&\29\20const +4009:skia::textlayout::TextStyle::equals\28skia::textlayout::TextStyle\20const&\29\20const +4010:skia::textlayout::TextShadow::operator!=\28skia::textlayout::TextShadow\20const&\29\20const +4011:skia::textlayout::TextLine::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +4012:skia::textlayout::TextLine::iterateThroughClustersInGlyphsOrder\28bool\2c\20bool\2c\20std::__2::function\20const&\29\20const::$_0::operator\28\29\28unsigned\20long\20const&\29\20const +4013:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29::operator\28\29\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\20const::'lambda'\28SkRect\29::operator\28\29\28SkRect\29\20const +4014:skia::textlayout::TextLine::getMetrics\28\29\20const +4015:skia::textlayout::TextLine::ensureTextBlobCachePopulated\28\29 +4016:skia::textlayout::TextLine::buildTextBlob\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +4017:skia::textlayout::TextLine::TextLine\28skia::textlayout::ParagraphImpl*\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20skia::textlayout::InternalLineMetrics\29 +4018:skia::textlayout::TextLine&\20skia_private::TArray::emplace_back&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20float&\2c\20skia::textlayout::InternalLineMetrics&>\28skia::textlayout::ParagraphImpl*&&\2c\20SkPoint&\2c\20SkPoint&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20float&\2c\20skia::textlayout::InternalLineMetrics&\29 +4019:skia::textlayout::Run::shift\28skia::textlayout::Cluster\20const*\2c\20float\29 +4020:skia::textlayout::Run::newRunBuffer\28\29 +4021:skia::textlayout::Run::findLimitingGlyphClusters\28skia::textlayout::SkRange\29\20const +4022:skia::textlayout::ParagraphStyle::effective_align\28\29\20const +4023:skia::textlayout::ParagraphStyle::ParagraphStyle\28\29 +4024:skia::textlayout::ParagraphPainter::DecorationStyle::DecorationStyle\28unsigned\20int\2c\20float\2c\20std::__2::optional\29 +4025:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29 +4026:skia::textlayout::ParagraphImpl::text\28skia::textlayout::SkRange\29 +4027:skia::textlayout::ParagraphImpl::resolveStrut\28\29 +4028:skia::textlayout::ParagraphImpl::getGlyphInfoAtUTF16Offset\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +4029:skia::textlayout::ParagraphImpl::getGlyphClusterAt\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +4030:skia::textlayout::ParagraphImpl::findPreviousGraphemeBoundary\28unsigned\20long\29\20const +4031:skia::textlayout::ParagraphImpl::computeEmptyMetrics\28\29 +4032:skia::textlayout::ParagraphImpl::clusters\28skia::textlayout::SkRange\29 +4033:skia::textlayout::ParagraphImpl::block\28unsigned\20long\29 +4034:skia::textlayout::ParagraphCacheValue::~ParagraphCacheValue\28\29 +4035:skia::textlayout::ParagraphCacheKey::ParagraphCacheKey\28skia::textlayout::ParagraphImpl\20const*\29 +4036:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29 +4037:skia::textlayout::ParagraphBuilderImpl::make\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\29 +4038:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\2c\20bool\29 +4039:skia::textlayout::ParagraphBuilderImpl::ParagraphBuilderImpl\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\29 +4040:skia::textlayout::Paragraph::~Paragraph\28\29 +4041:skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29 +4042:skia::textlayout::FontCollection::~FontCollection\28\29 +4043:skia::textlayout::FontCollection::matchTypeface\28SkString\20const&\2c\20SkFontStyle\29 +4044:skia::textlayout::FontCollection::defaultFallback\28int\2c\20SkFontStyle\2c\20SkString\20const&\29 +4045:skia::textlayout::FontCollection::FamilyKey::Hasher::operator\28\29\28skia::textlayout::FontCollection::FamilyKey\20const&\29\20const +4046:skgpu::tess::\28anonymous\20namespace\29::write_curve_index_buffer_base_index\28skgpu::VertexWriter\2c\20unsigned\20long\2c\20unsigned\20short\29 +4047:skgpu::tess::StrokeIterator::next\28\29 +4048:skgpu::tess::StrokeIterator::finishOpenContour\28\29 +4049:skgpu::tess::PreChopPathCurves\28float\2c\20SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +4050:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29 +4051:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::SmallPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20GrUserStencilSettings\20const*\29 +4052:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::recordDraw\28GrMeshDrawTarget*\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20int\2c\20unsigned\20short*\29 +4053:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::AAFlatteningConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20float\2c\20SkStrokeRec::Style\2c\20SkPaint::Join\2c\20float\2c\20GrUserStencilSettings\20const*\29 +4054:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::AAConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrUserStencilSettings\20const*\29 +4055:skgpu::ganesh::TextureOp::Make\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::ganesh::TextureOp::Saturate\2c\20SkBlendMode\2c\20GrAAType\2c\20DrawQuad*\2c\20SkRect\20const*\29 +4056:skgpu::ganesh::TessellationPathRenderer::IsSupported\28GrCaps\20const&\29 +4057:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +4058:skgpu::ganesh::SurfaceFillContext::blitTexture\28GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\29 +4059:skgpu::ganesh::SurfaceFillContext::addOp\28std::__2::unique_ptr>\29 +4060:skgpu::ganesh::SurfaceFillContext::addDrawOp\28std::__2::unique_ptr>\29 +4061:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29.1 +4062:skgpu::ganesh::SurfaceDrawContext::drawVertices\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20sk_sp\2c\20GrPrimitiveType*\2c\20bool\29 +4063:skgpu::ganesh::SurfaceDrawContext::drawTexturedQuad\28GrClip\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkBlendMode\2c\20DrawQuad*\2c\20SkRect\20const*\29 +4064:skgpu::ganesh::SurfaceDrawContext::drawTexture\28GrClip\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkBlendMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20sk_sp\29 +4065:skgpu::ganesh::SurfaceDrawContext::drawStrokedLine\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkStrokeRec\20const&\29 +4066:skgpu::ganesh::SurfaceDrawContext::drawRegion\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrStyle\20const&\2c\20GrUserStencilSettings\20const*\29 +4067:skgpu::ganesh::SurfaceDrawContext::drawOval\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\29 +4068:skgpu::ganesh::SurfaceDrawContext::SurfaceDrawContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4069:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29 +4070:skgpu::ganesh::SurfaceContext::writePixels\28GrDirectContext*\2c\20GrCPixmap\2c\20SkIPoint\29 +4071:skgpu::ganesh::SurfaceContext::copy\28sk_sp\2c\20SkIRect\2c\20SkIPoint\29 +4072:skgpu::ganesh::SurfaceContext::copyScaled\28sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20SkFilterMode\29 +4073:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +4074:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::FinishContext::~FinishContext\28\29 +4075:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +4076:skgpu::ganesh::SurfaceContext::SurfaceContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +4077:skgpu::ganesh::StrokeTessellator::draw\28GrOpFlushState*\29\20const +4078:skgpu::ganesh::StrokeTessellateOp::prePrepareTessellator\28GrTessellationShader::ProgramArgs&&\2c\20GrAppliedClip&&\29 +4079:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::NonAAStrokeRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrSimpleMeshDrawOpHelper::InputFlags\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\2c\20GrAAType\29 +4080:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::AAStrokeRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::RectInfo\20const&\2c\20bool\29 +4081:skgpu::ganesh::StencilMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkRegion::Op\2c\20GrAA\29 +4082:skgpu::ganesh::SoftwarePathRenderer::DrawAroundInvPath\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrPaint&&\2c\20GrUserStencilSettings\20const&\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29 +4083:skgpu::ganesh::SmallPathAtlasMgr::findOrCreate\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +4084:skgpu::ganesh::SmallPathAtlasMgr::deleteCacheEntry\28skgpu::ganesh::SmallPathShapeData*\29 +4085:skgpu::ganesh::ShadowRRectOp::Make\28GrRecordingContext*\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20float\2c\20float\29 +4086:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::RegionOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\29 +4087:skgpu::ganesh::RasterAsView\28GrRecordingContext*\2c\20SkImage_Raster\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +4088:skgpu::ganesh::QuadPerEdgeAA::Tessellator::append\28GrQuad*\2c\20GrQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\29 +4089:skgpu::ganesh::QuadPerEdgeAA::Tessellator::Tessellator\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29 +4090:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::initializeAttrs\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29 +4091:skgpu::ganesh::QuadPerEdgeAA::IssueDraw\28GrCaps\20const&\2c\20GrOpsRenderPass*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +4092:skgpu::ganesh::QuadPerEdgeAA::GetIndexBuffer\28GrMeshDrawTarget*\2c\20skgpu::ganesh::QuadPerEdgeAA::IndexBufferOption\29 +4093:skgpu::ganesh::PathTessellateOp::usesMSAA\28\29\20const +4094:skgpu::ganesh::PathTessellateOp::prepareTessellator\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +4095:skgpu::ganesh::PathTessellateOp::PathTessellateOp\28SkArenaAlloc*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\2c\20SkRect\20const&\29 +4096:skgpu::ganesh::PathStencilCoverOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +4097:skgpu::ganesh::PathInnerTriangulateOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +4098:skgpu::ganesh::PathCurveTessellator::~PathCurveTessellator\28\29 +4099:skgpu::ganesh::PathCurveTessellator::prepareWithTriangles\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20GrTriangulator::BreadcrumbTriangleList*\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +4100:skgpu::ganesh::OpsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +4101:skgpu::ganesh::OpsTask::onExecute\28GrOpFlushState*\29 +4102:skgpu::ganesh::OpsTask::addOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +4103:skgpu::ganesh::OpsTask::addDrawOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +4104:skgpu::ganesh::OpsTask::OpsTask\28GrDrawingManager*\2c\20GrSurfaceProxyView\2c\20GrAuditTrail*\2c\20sk_sp\29 +4105:skgpu::ganesh::OpsTask::OpChain::tryConcat\28skgpu::ganesh::OpsTask::OpChain::List*\2c\20GrProcessorSet::Analysis\2c\20GrDstProxyView\20const&\2c\20GrAppliedClip\20const*\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrAuditTrail*\29 +4106:skgpu::ganesh::MakeFragmentProcessorFromView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +4107:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29 +4108:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29 +4109:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::NonAALatticeOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20std::__2::unique_ptr>\2c\20SkRect\20const&\29 +4110:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::LocalCoords\20const&\2c\20GrAA\29 +4111:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::FillRRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::LocalCoords\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::ProcessorFlags\29 +4112:skgpu::ganesh::DrawAtlasPathOp::prepareProgram\28GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +4113:skgpu::ganesh::Device::replaceBackingProxy\28SkSurface::ContentChangeMode\2c\20sk_sp\2c\20GrColorType\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +4114:skgpu::ganesh::Device::makeSpecial\28SkBitmap\20const&\29 +4115:skgpu::ganesh::Device::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +4116:skgpu::ganesh::Device::drawEdgeAAImage\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20SkTileMode\29 +4117:skgpu::ganesh::Device::discard\28\29 +4118:skgpu::ganesh::Device::android_utils_clipAsRgn\28SkRegion*\29\20const +4119:skgpu::ganesh::DefaultPathRenderer::internalDrawPath\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20GrUserStencilSettings\20const&\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20bool\29 +4120:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +4121:skgpu::ganesh::CopyView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\2c\20std::__2::basic_string_view>\29 +4122:skgpu::ganesh::ClipStack::clipPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrAA\2c\20SkClipOp\29 +4123:skgpu::ganesh::ClipStack::SaveRecord::replaceWithElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +4124:skgpu::ganesh::ClipStack::SaveRecord::addElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +4125:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::Draw\20const&\29\20const +4126:skgpu::ganesh::AtlasTextOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +4127:skgpu::ganesh::AtlasTextOp::AtlasTextOp\28skgpu::ganesh::AtlasTextOp::MaskType\2c\20bool\2c\20int\2c\20SkRect\2c\20skgpu::ganesh::AtlasTextOp::Geometry*\2c\20GrColorInfo\20const&\2c\20GrPaint&&\29 +4128:skgpu::ganesh::AtlasRenderTask::stencilAtlasRect\28GrRecordingContext*\2c\20SkRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrUserStencilSettings\20const*\29 +4129:skgpu::ganesh::AtlasRenderTask::addPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIPoint\2c\20int\2c\20int\2c\20bool\2c\20SkIPoint16*\29 +4130:skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +4131:skgpu::ganesh::AtlasPathRenderer::addPathToAtlas\28GrRecordingContext*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRect\20const&\2c\20SkIRect*\2c\20SkIPoint16*\2c\20bool*\2c\20std::__2::function\20const&\29 +4132:skgpu::ganesh::AsFragmentProcessor\28GrRecordingContext*\2c\20SkImage\20const*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +4133:skgpu::TiledTextureUtils::OptimizeSampleArea\28SkISize\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkRect*\2c\20SkRect*\2c\20SkMatrix*\29 +4134:skgpu::TClientMappedBufferManager::process\28\29 +4135:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29 +4136:skgpu::RectanizerSkyline::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +4137:skgpu::Plot::Plot\28int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20SkColorType\2c\20unsigned\20long\29 +4138:skgpu::GetReducedBlendModeInfo\28SkBlendMode\29 +4139:skgpu::BlendFuncName\28SkBlendMode\29 +4140:skcms_private::baseline::exec_stages\28skcms_private::Op\20const*\2c\20void\20const**\2c\20char\20const*\2c\20char*\2c\20int\29 +4141:skcms_private::baseline::clut\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20float\20vector\5b4\5d*\2c\20float\20vector\5b4\5d*\2c\20float\20vector\5b4\5d*\2c\20float\20vector\5b4\5d*\29 +4142:skcms_ApproximatelyEqualProfiles +4143:sk_sp\20sk_make_sp\2c\20SkSurfaceProps\20const*&>\28SkImageInfo\20const&\2c\20sk_sp&&\2c\20SkSurfaceProps\20const*&\29 +4144:sk_fopen\28char\20const*\2c\20SkFILE_Flags\29 +4145:sk_fgetsize\28_IO_FILE*\29 +4146:sk_fclose\28_IO_FILE*\29 +4147:sk_error_fn\28png_struct_def*\2c\20char\20const*\29 +4148:setup_masks_arabic_plan\28arabic_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_script_t\29 +4149:set_khr_debug_label\28GrGLGpu*\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +4150:setThrew +4151:setCommonICUData\28UDataMemory*\2c\20signed\20char\2c\20UErrorCode*\29 +4152:serialize_image\28SkImage\20const*\2c\20SkSerialProcs\29 +4153:send_tree +4154:sect_with_vertical\28SkPoint\20const*\2c\20float\29 +4155:sect_with_horizontal\28SkPoint\20const*\2c\20float\29 +4156:scanexp +4157:scalbnl +4158:rewind_if_necessary\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +4159:resolveImplicitLevels\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +4160:reset_and_decode_image_config\28wuffs_gif__decoder__struct*\2c\20wuffs_base__image_config__struct*\2c\20wuffs_base__io_buffer__struct*\2c\20SkStream*\29 +4161:res_unload_73 +4162:res_countArrayItems_73 +4163:renderbuffer_storage_msaa\28GrGLGpu*\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +4164:recursive_edge_intersect\28GrTriangulator::Line\20const&\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Line\20const&\2c\20SkPoint\2c\20SkPoint\2c\20SkPoint*\2c\20double*\2c\20double*\29 +4165:reclassify_vertex\28TriangulationVertex*\2c\20SkPoint\20const*\2c\20int\2c\20ReflexHash*\2c\20SkTInternalLList*\29 +4166:read_metadata\28std::__2::vector>\20const&\2c\20unsigned\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +4167:quad_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4168:quad_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4169:quad_in_line\28SkPoint\20const*\29 +4170:psh_hint_table_init +4171:psh_hint_table_find_strong_points +4172:psh_hint_table_activate_mask +4173:psh_hint_align +4174:psh_glyph_interpolate_strong_points +4175:psh_glyph_interpolate_other_points +4176:psh_glyph_interpolate_normal_points +4177:psh_blues_set_zones +4178:ps_parser_load_field +4179:ps_dimension_end +4180:ps_dimension_done +4181:ps_builder_start_point +4182:printf_core +4183:premultiply_argb_as_rgba\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4184:premultiply_argb_as_bgra\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4185:position_cluster\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\29 +4186:portable::uniform_color_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4187:portable::set_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4188:portable::scale_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4189:portable::memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\29 +4190:portable::lerp_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4191:portable::copy_from_indirect_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4192:portable::copy_2_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4193:portable::check_decal_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4194:pop_arg +4195:pntz +4196:png_inflate +4197:png_deflate_claim +4198:png_decompress_chunk +4199:png_cache_unknown_chunk +4200:optimize_layer_filter\28SkImageFilter\20const*\2c\20SkPaint*\29 +4201:operator==\28SkPaint\20const&\2c\20SkPaint\20const&\29 +4202:open_face +4203:openCommonData\28char\20const*\2c\20int\2c\20UErrorCode*\29 +4204:offsetTOCEntryCount\28UDataMemory\20const*\29 +4205:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +4206:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4207:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4208:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +4209:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +4210:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4211:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +4212:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +4213:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::size\28\29\20const +4214:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4215:nearly_equal\28double\2c\20double\29 +4216:mbsrtowcs +4217:map_quad_general\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20SkMatrix\20const&\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\29 +4218:make_tiled_gradient\28GrFPArgs\20const&\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +4219:make_premul_effect\28std::__2::unique_ptr>\29 +4220:make_dual_interval_colorizer\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20float\29 +4221:make_clamped_gradient\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20bool\29 +4222:make_bmp_proxy\28GrProxyProvider*\2c\20SkBitmap\20const&\2c\20GrColorType\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +4223:longest_match +4224:long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4225:long\20long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4226:long\20double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +4227:load_post_names +4228:line_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4229:line_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4230:legalfunc$_embind_register_bigint +4231:jpeg_open_backing_store +4232:jpeg_destroy +4233:jpeg_alloc_huff_table +4234:jinit_upsampler +4235:isSpecialTypeCodepoints\28char\20const*\29 +4236:internal_memalign +4237:int\20icu_73::\28anonymous\20namespace\29::MixedBlocks::findBlock\28unsigned\20short\20const*\2c\20unsigned\20short\20const*\2c\20int\29\20const +4238:int\20icu_73::\28anonymous\20namespace\29::MixedBlocks::findBlock\28unsigned\20short\20const*\2c\20unsigned\20int\20const*\2c\20int\29\20const +4239:insertRootBundle\28UResourceDataEntry*&\2c\20UErrorCode*\29 +4240:initial_reordering_consonant_syllable\28hb_ot_shape_plan_t\20const*\2c\20hb_face_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +4241:init_error_limit +4242:init_block +4243:image_filter_color_type\28SkImageInfo\29 +4244:icu_73::set32x64Bits\28unsigned\20int*\2c\20int\2c\20int\29 +4245:icu_73::getExtName\28unsigned\20int\2c\20char*\2c\20unsigned\20short\29 +4246:icu_73::compareUnicodeString\28UElement\2c\20UElement\29 +4247:icu_73::cloneUnicodeString\28UElement*\2c\20UElement*\29 +4248:icu_73::\28anonymous\20namespace\29::mungeCharName\28char*\2c\20char\20const*\2c\20int\29 +4249:icu_73::\28anonymous\20namespace\29::MutableCodePointTrie::getDataBlock\28int\29 +4250:icu_73::UnicodeString::setCharAt\28int\2c\20char16_t\29 +4251:icu_73::UnicodeString::indexOf\28char16_t\20const*\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +4252:icu_73::UnicodeString::doReverse\28int\2c\20int\29 +4253:icu_73::UnicodeSetStringSpan::span\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4254:icu_73::UnicodeSetStringSpan::spanUTF8\28unsigned\20char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4255:icu_73::UnicodeSetStringSpan::spanBack\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4256:icu_73::UnicodeSetStringSpan::spanBackUTF8\28unsigned\20char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4257:icu_73::UnicodeSet::set\28int\2c\20int\29 +4258:icu_73::UnicodeSet::setPattern\28char16_t\20const*\2c\20int\29 +4259:icu_73::UnicodeSet::remove\28int\29 +4260:icu_73::UnicodeSet::removeAll\28icu_73::UnicodeSet\20const&\29 +4261:icu_73::UnicodeSet::matches\28icu_73::Replaceable\20const&\2c\20int&\2c\20int\2c\20signed\20char\29 +4262:icu_73::UnicodeSet::matchesIndexValue\28unsigned\20char\29\20const +4263:icu_73::UnicodeSet::clone\28\29\20const +4264:icu_73::UnicodeSet::cloneAsThawed\28\29\20const +4265:icu_73::UnicodeSet::applyPattern\28icu_73::RuleCharacterIterator&\2c\20icu_73::SymbolTable\20const*\2c\20icu_73::UnicodeString&\2c\20unsigned\20int\2c\20icu_73::UnicodeSet&\20\28icu_73::UnicodeSet::*\29\28int\29\2c\20int\2c\20UErrorCode&\29 +4266:icu_73::UnicodeSet::applyPatternIgnoreSpace\28icu_73::UnicodeString\20const&\2c\20icu_73::ParsePosition&\2c\20icu_73::SymbolTable\20const*\2c\20UErrorCode&\29 +4267:icu_73::UnicodeSet::add\28icu_73::UnicodeString\20const&\29 +4268:icu_73::UnicodeSet::addAll\28icu_73::UnicodeSet\20const&\29 +4269:icu_73::UnicodeSet::_generatePattern\28icu_73::UnicodeString&\2c\20signed\20char\29\20const +4270:icu_73::UnicodeSet::UnicodeSet\28int\2c\20int\29 +4271:icu_73::UVector::sortedInsert\28void*\2c\20int\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +4272:icu_73::UVector::setElementAt\28void*\2c\20int\29 +4273:icu_73::UVector::assign\28icu_73::UVector\20const&\2c\20void\20\28*\29\28UElement*\2c\20UElement*\29\2c\20UErrorCode&\29 +4274:icu_73::UStringSet::~UStringSet\28\29.1 +4275:icu_73::UStringSet::~UStringSet\28\29 +4276:icu_73::UStack::UStack\28void\20\28*\29\28void*\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +4277:icu_73::UDataPathIterator::UDataPathIterator\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +4278:icu_73::UCharsTrieBuilder::build\28UStringTrieBuildOption\2c\20UErrorCode&\29 +4279:icu_73::UCharsTrieBuilder::UCharsTrieBuilder\28UErrorCode&\29 +4280:icu_73::UCharsTrie::nextForCodePoint\28int\29 +4281:icu_73::UCharsTrie::Iterator::next\28UErrorCode&\29 +4282:icu_73::UCharsTrie::Iterator::branchNext\28char16_t\20const*\2c\20int\2c\20UErrorCode&\29 +4283:icu_73::UCharCharacterIterator::setText\28icu_73::ConstChar16Ptr\2c\20int\29 +4284:icu_73::StringTrieBuilder::writeBranchSubNode\28int\2c\20int\2c\20int\2c\20int\29 +4285:icu_73::StringTrieBuilder::LinearMatchNode::operator==\28icu_73::StringTrieBuilder::Node\20const&\29\20const +4286:icu_73::StringTrieBuilder::LinearMatchNode::markRightEdgesFirst\28int\29 +4287:icu_73::RuleCharacterIterator::skipIgnored\28int\29 +4288:icu_73::RuleBasedBreakIterator::~RuleBasedBreakIterator\28\29 +4289:icu_73::RuleBasedBreakIterator::handleSafePrevious\28int\29 +4290:icu_73::RuleBasedBreakIterator::RuleBasedBreakIterator\28UErrorCode*\29 +4291:icu_73::RuleBasedBreakIterator::DictionaryCache::~DictionaryCache\28\29 +4292:icu_73::RuleBasedBreakIterator::DictionaryCache::populateDictionary\28int\2c\20int\2c\20int\2c\20int\29 +4293:icu_73::RuleBasedBreakIterator::BreakCache::seek\28int\29 +4294:icu_73::RuleBasedBreakIterator::BreakCache::current\28\29 +4295:icu_73::ResourceArray::getValue\28int\2c\20icu_73::ResourceValue&\29\20const +4296:icu_73::ReorderingBuffer::equals\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\29\20const +4297:icu_73::RBBIDataWrapper::removeReference\28\29 +4298:icu_73::PropNameData::getPropertyOrValueEnum\28int\2c\20char\20const*\29 +4299:icu_73::Normalizer2WithImpl::normalizeSecondAndAppend\28icu_73::UnicodeString&\2c\20icu_73::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29\20const +4300:icu_73::Normalizer2WithImpl::isNormalized\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +4301:icu_73::Normalizer2Impl::recompose\28icu_73::ReorderingBuffer&\2c\20int\2c\20signed\20char\29\20const +4302:icu_73::Normalizer2Impl::init\28int\20const*\2c\20UCPTrie\20const*\2c\20unsigned\20short\20const*\2c\20unsigned\20char\20const*\29 +4303:icu_73::Normalizer2Impl::findNextFCDBoundary\28char16_t\20const*\2c\20char16_t\20const*\29\20const +4304:icu_73::Normalizer2Impl::decomposeUTF8\28unsigned\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_73::ByteSink*\2c\20icu_73::Edits*\2c\20UErrorCode&\29\20const +4305:icu_73::Normalizer2Impl::composeUTF8\28unsigned\20int\2c\20signed\20char\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_73::ByteSink*\2c\20icu_73::Edits*\2c\20UErrorCode&\29\20const +4306:icu_73::Normalizer2Impl::composeQuickCheck\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20UNormalizationCheckResult*\29\20const +4307:icu_73::Normalizer2Factory::getNFKC_CFImpl\28UErrorCode&\29 +4308:icu_73::Normalizer2Factory::getInstance\28UNormalizationMode\2c\20UErrorCode&\29 +4309:icu_73::Normalizer2::getNFCInstance\28UErrorCode&\29 +4310:icu_73::Norm2AllModes::~Norm2AllModes\28\29 +4311:icu_73::Norm2AllModes::createInstance\28icu_73::Normalizer2Impl*\2c\20UErrorCode&\29 +4312:icu_73::NoopNormalizer2::normalizeSecondAndAppend\28icu_73::UnicodeString&\2c\20icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +4313:icu_73::NoopNormalizer2::isNormalized\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +4314:icu_73::MlBreakEngine::~MlBreakEngine\28\29 +4315:icu_73::LocaleUtility::canonicalLocaleString\28icu_73::UnicodeString\20const*\2c\20icu_73::UnicodeString&\29 +4316:icu_73::LocaleKeyFactory::LocaleKeyFactory\28int\29 +4317:icu_73::LocaleKey::LocaleKey\28icu_73::UnicodeString\20const&\2c\20icu_73::UnicodeString\20const&\2c\20icu_73::UnicodeString\20const*\2c\20int\29 +4318:icu_73::LocaleBuilder::build\28UErrorCode&\29 +4319:icu_73::LocaleBuilder::LocaleBuilder\28\29 +4320:icu_73::LocaleBased::setLocaleIDs\28char\20const*\2c\20char\20const*\29 +4321:icu_73::Locale::setKeywordValue\28char\20const*\2c\20char\20const*\2c\20UErrorCode&\29 +4322:icu_73::Locale::operator=\28icu_73::Locale&&\29 +4323:icu_73::Locale::operator==\28icu_73::Locale\20const&\29\20const +4324:icu_73::Locale::createKeywords\28UErrorCode&\29\20const +4325:icu_73::LoadedNormalizer2Impl::load\28char\20const*\2c\20char\20const*\2c\20UErrorCode&\29 +4326:icu_73::LaoBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +4327:icu_73::InitCanonIterData::doInit\28icu_73::Normalizer2Impl*\2c\20UErrorCode&\29 +4328:icu_73::ICU_Utility::shouldAlwaysBeEscaped\28int\29 +4329:icu_73::ICU_Utility::isUnprintable\28int\29 +4330:icu_73::ICU_Utility::escape\28icu_73::UnicodeString&\2c\20int\29 +4331:icu_73::ICUServiceKey::parseSuffix\28icu_73::UnicodeString&\29 +4332:icu_73::ICUService::~ICUService\28\29 +4333:icu_73::ICUService::getVisibleIDs\28icu_73::UVector&\2c\20UErrorCode&\29\20const +4334:icu_73::ICUService::clearServiceCache\28\29 +4335:icu_73::ICUNotifier::~ICUNotifier\28\29 +4336:icu_73::Hashtable::put\28icu_73::UnicodeString\20const&\2c\20void*\2c\20UErrorCode&\29 +4337:icu_73::DecomposeNormalizer2::hasBoundaryBefore\28int\29\20const +4338:icu_73::DecomposeNormalizer2::hasBoundaryAfter\28int\29\20const +4339:icu_73::CjkBreakEngine::~CjkBreakEngine\28\29 +4340:icu_73::CjkBreakEngine::CjkBreakEngine\28icu_73::DictionaryMatcher*\2c\20icu_73::LanguageType\2c\20UErrorCode&\29 +4341:icu_73::CharString::truncate\28int\29 +4342:icu_73::CharString*\20icu_73::MemoryPool::create\28char\20const*&\2c\20UErrorCode&\29 +4343:icu_73::CharString*\20icu_73::MemoryPool::create<>\28\29 +4344:icu_73::CanonIterData::addToStartSet\28int\2c\20int\2c\20UErrorCode&\29 +4345:icu_73::BytesTrie::next\28int\29 +4346:icu_73::BytesTrie::branchNext\28unsigned\20char\20const*\2c\20int\2c\20int\29 +4347:icu_73::ByteSinkUtil::appendCodePoint\28int\2c\20int\2c\20icu_73::ByteSink&\2c\20icu_73::Edits*\29 +4348:icu_73::BreakIterator::getLocale\28ULocDataLocaleType\2c\20UErrorCode&\29\20const +4349:icu_73::BreakIterator::createCharacterInstance\28icu_73::Locale\20const&\2c\20UErrorCode&\29 +4350:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +4351:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +4352:hb_utf8_t::next\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20int*\2c\20unsigned\20int\29 +4353:hb_unicode_script +4354:hb_unicode_mirroring_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +4355:hb_unicode_funcs_t::is_default_ignorable\28unsigned\20int\29 +4356:hb_shape_plan_key_t::init\28bool\2c\20hb_face_t*\2c\20hb_segment_properties_t\20const*\2c\20hb_feature_t\20const*\2c\20unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20char\20const*\20const*\29 +4357:hb_shape_plan_create2 +4358:hb_serialize_context_t::fini\28\29 +4359:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +4360:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +4361:hb_paint_extents_paint_linear_gradient\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +4362:hb_paint_extents_get_funcs\28\29 +4363:hb_paint_extents_context_t::hb_paint_extents_context_t\28\29 +4364:hb_ot_map_t::fini\28\29 +4365:hb_ot_layout_table_select_script +4366:hb_ot_layout_table_get_lookup_count +4367:hb_ot_layout_table_find_feature_variations +4368:hb_ot_layout_table_find_feature\28hb_face_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +4369:hb_ot_layout_script_select_language +4370:hb_ot_layout_language_get_required_feature +4371:hb_ot_layout_language_find_feature +4372:hb_ot_layout_has_substitution +4373:hb_ot_layout_feature_with_variations_get_lookups +4374:hb_ot_layout_collect_features_map +4375:hb_ot_font_set_funcs +4376:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::create\28hb_face_t*\29 +4377:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::get\28\29\20const +4378:hb_lazy_loader_t\2c\20hb_face_t\2c\2019u\2c\20hb_blob_t>::get\28\29\20const +4379:hb_lazy_loader_t\2c\20hb_face_t\2c\2035u\2c\20hb_blob_t>::get\28\29\20const +4380:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::get\28\29\20const +4381:hb_lazy_loader_t\2c\20hb_face_t\2c\2032u\2c\20hb_blob_t>::get\28\29\20const +4382:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get\28\29\20const +4383:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get\28\29\20const +4384:hb_language_matches +4385:hb_indic_get_categories\28unsigned\20int\29 +4386:hb_hashmap_t::fetch_item\28hb_serialize_context_t::object_t\20const*\20const&\2c\20unsigned\20int\29\20const +4387:hb_hashmap_t::alloc\28unsigned\20int\29 +4388:hb_font_t::get_glyph_v_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +4389:hb_font_set_variations +4390:hb_font_set_funcs +4391:hb_font_get_variation_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +4392:hb_font_get_glyph_h_advance +4393:hb_font_get_glyph_extents +4394:hb_font_get_font_h_extents_nil\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +4395:hb_font_funcs_set_variation_glyph_func +4396:hb_font_funcs_set_nominal_glyphs_func +4397:hb_font_funcs_set_nominal_glyph_func +4398:hb_font_funcs_set_glyph_h_advances_func +4399:hb_font_funcs_set_glyph_extents_func +4400:hb_font_funcs_create +4401:hb_draw_move_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +4402:hb_draw_funcs_set_quadratic_to_func +4403:hb_draw_funcs_set_move_to_func +4404:hb_draw_funcs_set_line_to_func +4405:hb_draw_funcs_set_cubic_to_func +4406:hb_draw_funcs_destroy +4407:hb_draw_funcs_create +4408:hb_draw_extents_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +4409:hb_buffer_t::sort\28unsigned\20int\2c\20unsigned\20int\2c\20int\20\28*\29\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29\29 +4410:hb_buffer_t::safe_to_insert_tatweel\28unsigned\20int\2c\20unsigned\20int\29 +4411:hb_buffer_t::output_info\28hb_glyph_info_t\20const&\29 +4412:hb_buffer_t::message_impl\28hb_font_t*\2c\20char\20const*\2c\20void*\29 +4413:hb_buffer_t::leave\28\29 +4414:hb_buffer_t::delete_glyphs_inplace\28bool\20\28*\29\28hb_glyph_info_t\20const*\29\29 +4415:hb_buffer_t::clear_positions\28\29 +4416:hb_buffer_set_length +4417:hb_buffer_get_glyph_positions +4418:hb_buffer_diff +4419:hb_buffer_create +4420:hb_buffer_clear_contents +4421:hb_buffer_add_utf8 +4422:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4423:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4424:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4425:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4426:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4427:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4428:hb_aat_layout_remove_deleted_glyphs\28hb_buffer_t*\29 +4429:hair_cubic\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkBlitter*\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +4430:getint +4431:get_win_string +4432:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20bool\2c\20float\29 +4433:get_dst_swizzle_and_store\28GrColorType\2c\20SkRasterPipelineOp*\2c\20LumMode*\2c\20bool*\2c\20bool*\29 +4434:get_driver_and_version\28GrGLStandard\2c\20GrGLVendor\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +4435:get_cicp_trfn\28skcms_TransferFunction\20const&\29 +4436:get_cicp_primaries\28skcms_Matrix3x3\20const&\29 +4437:getFallbackData\28UResourceBundle\20const*\2c\20char\20const**\2c\20unsigned\20int*\2c\20UErrorCode*\29 +4438:gen_key\28skgpu::KeyBuilder*\2c\20GrProgramInfo\20const&\2c\20GrCaps\20const&\29 +4439:gen_fp_key\28GrFragmentProcessor\20const&\2c\20GrCaps\20const&\2c\20skgpu::KeyBuilder*\29 +4440:gather_uniforms_and_check_for_main\28SkSL::Program\20const&\2c\20std::__2::vector>*\2c\20std::__2::vector>*\2c\20SkRuntimeEffect::Uniform::Flags\2c\20unsigned\20long*\29 +4441:fwrite +4442:ft_var_to_normalized +4443:ft_var_load_item_variation_store +4444:ft_var_load_hvvar +4445:ft_var_load_avar +4446:ft_var_get_value_pointer +4447:ft_var_apply_tuple +4448:ft_validator_init +4449:ft_mem_strcpyn +4450:ft_hash_num_lookup +4451:ft_glyphslot_set_bitmap +4452:ft_glyphslot_preset_bitmap +4453:ft_corner_orientation +4454:ft_corner_is_flat +4455:frexp +4456:free_entry\28UResourceDataEntry*\29 +4457:fread +4458:fp_force_eval +4459:fp_barrier.1 +4460:fopen +4461:fold_opacity_layer_color_to_paint\28SkPaint\20const*\2c\20bool\2c\20SkPaint*\29 +4462:fmodl +4463:float\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +4464:fill_shadow_rec\28SkPath\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkDrawShadowRec*\29 +4465:fill_inverse_cmap +4466:fileno +4467:examine_app0 +4468:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29\2c\20SkCanvas*\2c\20SkPath*\2c\20SkClipOp\2c\20bool\29 +4469:emscripten::internal::Invoker\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +4470:emscripten::internal::Invoker\2c\20SkBlendMode\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29\2c\20SkBlendMode\2c\20sk_sp*\2c\20sk_sp*\29 +4471:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\29 +4472:emscripten::internal::Invoker\2c\20SkBlendMode>::invoke\28sk_sp\20\28*\29\28SkBlendMode\29\2c\20SkBlendMode\29 +4473:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4474:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\29 +4475:emscripten::internal::FunctionInvoker\29\2c\20void\2c\20SkPaint&\2c\20unsigned\20long\2c\20sk_sp>::invoke\28void\20\28**\29\28SkPaint&\2c\20unsigned\20long\2c\20sk_sp\29\2c\20SkPaint*\2c\20unsigned\20long\2c\20sk_sp*\29 +4476:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29\2c\20SkCanvas*\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +4477:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +4478:emscripten::internal::FunctionInvoker\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +4479:emscripten::internal::FunctionInvoker\20\28*\29\28SkCanvas&\2c\20SimpleImageInfo\29\2c\20sk_sp\2c\20SkCanvas&\2c\20SimpleImageInfo>::invoke\28sk_sp\20\28**\29\28SkCanvas&\2c\20SimpleImageInfo\29\2c\20SkCanvas*\2c\20SimpleImageInfo*\29 +4480:emscripten::internal::FunctionInvoker\20\28*\29\28sk_sp\29\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28**\29\28sk_sp\29\2c\20sk_sp*\29 +4481:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +4482:embind_init_builtin\28\29 +4483:embind_init_Skia\28\29 +4484:embind_init_Paragraph\28\29::$_0::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +4485:embind_init_Paragraph\28\29 +4486:embind_init_ParagraphGen\28\29 +4487:edge_line_needs_recursion\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4488:draw_nine\28SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\2c\20bool\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +4489:dquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4490:dquad_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4491:double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +4492:doOpenChoice\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20signed\20char\20\28*\29\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29\2c\20void*\2c\20UErrorCode*\29 +4493:dline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4494:dline_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4495:deserialize_image\28sk_sp\2c\20SkDeserialProcs\2c\20std::__2::optional\29 +4496:deflate_stored +4497:decompose_current_character\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\29 +4498:decltype\28std::__2::__unwrap_iter_impl\2c\20true>::__unwrap\28std::declval>\28\29\29\29\20std::__2::__unwrap_iter\5babi:v160004\5d\2c\20std::__2::__unwrap_iter_impl\2c\20true>\2c\200>\28std::__2::__wrap_iter\29 +4499:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::Make\28SkArenaAlloc*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4500:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&\2c\20skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::PathCurveTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4501:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\2c\20SkFilterMode\2c\20bool\29::'lambda'\28void*\29>\28skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::Make\28SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20sk_sp\2c\20SkFilterMode\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4502:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::MeshGP::Make\28SkArenaAlloc*\2c\20sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::MeshGP::Make\28SkArenaAlloc*\2c\20sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4503:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker*\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker\2c\20int&>\28int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4504:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkShaderBase\20const&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTransformShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4505:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29::'lambda'\28void*\29>\28SkA8_Blitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4506:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29::'lambda'\28void*\29>\28GrThreadSafeCache::Entry&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4507:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29::'lambda'\28void*\29>\28GrResourceAllocator::Register&&\29 +4508:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20GrCaps\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28GrQuadEffect::Make\28SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrCaps\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4509:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrPipeline::InitArgs&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29::'lambda'\28void*\29>\28GrPipeline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4510:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrDistanceFieldA8TextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20float\2c\20unsigned\20int\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4511:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29>\28GrBitmapTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29&&\29 +4512:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28DefaultGeoProc::Make\28SkArenaAlloc*\2c\20unsigned\20int\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4513:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28DefaultGeoProc::Make\28SkArenaAlloc*\2c\20unsigned\20int\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29 +4514:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28CircleGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4515:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +4516:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>>::__generic_construct\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__ctor\2c\20std::__2::unique_ptr>>>&\2c\20std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&&>\28std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&&\29 +4517:dcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4518:dcubic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4519:dconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4520:dconic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4521:data_destroy_arabic\28void*\29 +4522:data_create_arabic\28hb_ot_shape_plan_t\20const*\29 +4523:cycle +4524:cubic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4525:cubic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4526:create_colorindex +4527:copysignl +4528:copy_bitmap_subset\28SkBitmap\20const&\2c\20SkIRect\20const&\29 +4529:conic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4530:conic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4531:compute_pos_tan\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +4532:compute_intersection\28OffsetSegment\20const&\2c\20OffsetSegment\20const&\2c\20SkPoint*\2c\20float*\2c\20float*\29 +4533:compress_block +4534:compose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +4535:clipHandlesSprite\28SkRasterClip\20const&\2c\20int\2c\20int\2c\20SkPixmap\20const&\29 +4536:clamp\28SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Comparator\20const&\29 +4537:checkint +4538:check_inverse_on_empty_return\28SkRegion*\2c\20SkPath\20const&\2c\20SkRegion\20const&\29 +4539:charIterTextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +4540:char*\20std::__2::copy\5babi:v160004\5d\2c\20char*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20char*\29 +4541:char*\20std::__2::copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +4542:cff_vstore_done +4543:cff_subfont_load +4544:cff_subfont_done +4545:cff_size_select +4546:cff_parser_run +4547:cff_make_private_dict +4548:cff_load_private_dict +4549:cff_index_get_name +4550:cff_get_kerning +4551:cff_blend_build_vector +4552:cf2_getSeacComponent +4553:cf2_computeDarkening +4554:cf2_arrstack_push +4555:cbrt +4556:byn$mgfn-shared$void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +4557:byn$mgfn-shared$void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +4558:byn$mgfn-shared$virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +4559:byn$mgfn-shared$uloc_getName_73 +4560:byn$mgfn-shared$uhash_put_73 +4561:byn$mgfn-shared$ubidi_getClass_73 +4562:byn$mgfn-shared$t1_hints_open +4563:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +4564:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +4565:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +4566:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +4567:byn$mgfn-shared$std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +4568:byn$mgfn-shared$std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +4569:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +4570:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +4571:byn$mgfn-shared$std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +4572:byn$mgfn-shared$std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +4573:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4574:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4575:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4576:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +4577:byn$mgfn-shared$skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4578:byn$mgfn-shared$skgpu::ScratchKey::GenerateResourceType\28\29 +4579:byn$mgfn-shared$skcms_TransferFunction_isPQish +4580:byn$mgfn-shared$setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4581:byn$mgfn-shared$portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4582:byn$mgfn-shared$portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4583:byn$mgfn-shared$portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4584:byn$mgfn-shared$portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4585:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4586:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4587:byn$mgfn-shared$make_unpremul_effect\28std::__2::unique_ptr>\29 +4588:byn$mgfn-shared$icu_73::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +4589:byn$mgfn-shared$icu_73::ResourceDataValue::getIntVector\28int&\2c\20UErrorCode&\29\20const +4590:byn$mgfn-shared$hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +4591:byn$mgfn-shared$hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +4592:byn$mgfn-shared$embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +4593:byn$mgfn-shared$embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +4594:byn$mgfn-shared$embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +4595:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4596:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node\2c\20std::__2::function&\29>\2c\20skgpu::AtlasToken>\28std::__2::function&\29>&&\2c\20skgpu::AtlasToken&&\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4597:byn$mgfn-shared$decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +4598:byn$mgfn-shared$cf2_stack_pushInt +4599:byn$mgfn-shared$__cxx_global_array_dtor.1 +4600:byn$mgfn-shared$\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +4601:byn$mgfn-shared$\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4602:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4603:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4604:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4605:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +4606:byn$mgfn-shared$SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_0::operator\28\29\28int\29\20const +4607:byn$mgfn-shared$SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +4608:byn$mgfn-shared$SkSL::RP::LValue::~LValue\28\29.1 +4609:byn$mgfn-shared$SkSL::FunctionReference::clone\28SkSL::Position\29\20const +4610:byn$mgfn-shared$SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +4611:byn$mgfn-shared$SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +4612:byn$mgfn-shared$SkSL::ChildCall::clone\28SkSL::Position\29\20const +4613:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +4614:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29 +4615:byn$mgfn-shared$SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +4616:byn$mgfn-shared$SkRecorder::onDrawPaint\28SkPaint\20const&\29 +4617:byn$mgfn-shared$SkRecorder::didScale\28float\2c\20float\29 +4618:byn$mgfn-shared$SkRecorder::didConcat44\28SkM44\20const&\29 +4619:byn$mgfn-shared$SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4620:byn$mgfn-shared$SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +4621:byn$mgfn-shared$SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +4622:byn$mgfn-shared$SkPictureRecord::didConcat44\28SkM44\20const&\29 +4623:byn$mgfn-shared$SkPairPathEffect::~SkPairPathEffect\28\29.1 +4624:byn$mgfn-shared$SkJSONWriter::endObject\28\29 +4625:byn$mgfn-shared$SkComposePathEffect::~SkComposePathEffect\28\29 +4626:byn$mgfn-shared$SkColorSpace::MakeSRGB\28\29 +4627:byn$mgfn-shared$SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +4628:byn$mgfn-shared$OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +4629:byn$mgfn-shared$GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4630:byn$mgfn-shared$GrPathTessellationShader::Impl::~Impl\28\29 +4631:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +4632:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +4633:byn$mgfn-shared$GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +4634:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +4635:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +4636:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +4637:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +4638:byn$mgfn-shared$GrBicubicEffect::onMakeProgramImpl\28\29\20const +4639:byn$mgfn-shared$Cr_z_inflate_table +4640:byn$mgfn-shared$BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +4641:byn$mgfn-shared$AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +4642:build_ycc_rgb_table +4643:bracketProcessChar\28BracketData*\2c\20int\29 +4644:bracketInit\28UBiDi*\2c\20BracketData*\29 +4645:bool\20std::__2::operator==\5babi:v160004\5d\28std::__2::unique_ptr\20const&\2c\20std::nullptr_t\29 +4646:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +4647:bool\20std::__2::__insertion_sort_incomplete\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +4648:bool\20std::__2::__insertion_sort_incomplete<\28anonymous\20namespace\29::EntryComparator&\2c\20\28anonymous\20namespace\29::Entry*>\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +4649:bool\20std::__2::__insertion_sort_incomplete\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +4650:bool\20std::__2::__insertion_sort_incomplete\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +4651:bool\20is_parallel\28SkDLine\20const&\2c\20SkTCurve\20const&\29 +4652:bool\20hb_hashmap_t::set_with_hash\28hb_serialize_context_t::object_t*&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool\29 +4653:bool\20apply_string\28OT::hb_ot_apply_context_t*\2c\20GSUBProxy::Lookup\20const&\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\29 +4654:bool\20OT::hb_accelerate_subtables_context_t::cache_func_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\2c\20bool\29 +4655:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4656:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4657:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4658:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4659:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4660:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4661:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4662:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4663:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4664:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4665:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4666:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4667:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4668:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4669:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4670:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4671:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4672:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4673:bool\20OT::OffsetTo\2c\20true>::serialize_serialize\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>&>\28hb_serialize_context_t*\2c\20hb_map_iter_t\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>&\29 +4674:bool\20GrTTopoSort_Visit\28GrRenderTask*\2c\20unsigned\20int*\29 +4675:blur_column\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +4676:blit_saved_trapezoid\28SkAnalyticEdge*\2c\20int\2c\20int\2c\20int\2c\20AdditiveBlitter*\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20int\2c\20int\29 +4677:blend_line\28SkColorType\2c\20void*\2c\20SkColorType\2c\20void\20const*\2c\20SkAlphaType\2c\20bool\2c\20int\29 +4678:bits_to_runs\28SkBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\2c\20long\2c\20unsigned\20char\29 +4679:barycentric_coords\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\29 +4680:auto\20std::__2::__unwrap_range\5babi:v160004\5d\2c\20std::__2::__wrap_iter>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +4681:atanf +4682:apply_forward\28OT::hb_ot_apply_context_t*\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\2c\20unsigned\20int\29 +4683:append_color_output\28PorterDuffXferProcessor\20const&\2c\20GrGLSLXPFragmentBuilder*\2c\20skgpu::BlendFormula::OutputType\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +4684:af_loader_compute_darkening +4685:af_latin_metrics_scale_dim +4686:af_latin_hints_detect_features +4687:af_latin_hint_edges +4688:af_hint_normal_stem +4689:af_cjk_metrics_scale_dim +4690:af_cjk_metrics_scale +4691:af_cjk_metrics_init_widths +4692:af_cjk_metrics_check_digits +4693:af_cjk_hints_init +4694:af_cjk_hints_detect_features +4695:af_cjk_hints_compute_blue_edges +4696:af_cjk_hints_apply +4697:af_cjk_hint_edges +4698:af_cjk_get_standard_widths +4699:af_axis_hints_new_edge +4700:adler32 +4701:a_ctz_32 +4702:_uhash_remove\28UHashtable*\2c\20UElement\29 +4703:_uhash_rehash\28UHashtable*\2c\20UErrorCode*\29 +4704:_uhash_put\28UHashtable*\2c\20UElement\2c\20UElement\2c\20signed\20char\2c\20UErrorCode*\29 +4705:_uhash_create\28int\20\28*\29\28UElement\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20int\2c\20UErrorCode*\29 +4706:_iup_worker_interpolate +4707:_isUnicodeExtensionSubtag\28int&\2c\20char\20const*\2c\20int\29 +4708:_isTransformedExtensionSubtag\28int&\2c\20char\20const*\2c\20int\29 +4709:_hb_preprocess_text_vowel_constraints\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4710:_hb_ot_shape +4711:_hb_options_init\28\29 +4712:_hb_grapheme_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +4713:_hb_font_create\28hb_face_t*\29 +4714:_hb_fallback_shape +4715:_glyf_get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29 +4716:__vfprintf_internal +4717:__trunctfsf2 +4718:__tan +4719:__rem_pio2_large +4720:__overflow +4721:__newlocale +4722:__munmap +4723:__mmap +4724:__math_xflowf +4725:__math_invalidf +4726:__loc_is_allocated +4727:__isxdigit_l +4728:__getf2 +4729:__get_locale +4730:__ftello_unlocked +4731:__fstatat +4732:__fseeko_unlocked +4733:__floatscan +4734:__expo2 +4735:__divtf3 +4736:__cxxabiv1::__base_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +4737:\28anonymous\20namespace\29::set_uv_quad\28SkPoint\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +4738:\28anonymous\20namespace\29::safe_to_ignore_subset_rect\28GrAAType\2c\20SkFilterMode\2c\20DrawQuad\20const&\2c\20SkRect\20const&\29 +4739:\28anonymous\20namespace\29::prepare_for_direct_mask_drawing\28SkStrike*\2c\20SkMatrix\20const&\2c\20SkZip\2c\20SkZip\2c\20SkZip\29 +4740:\28anonymous\20namespace\29::morphology_pass\28skif::Context\20const&\2c\20skif::FilterResult\20const&\2c\20\28anonymous\20namespace\29::MorphType\2c\20\28anonymous\20namespace\29::MorphDirection\2c\20int\29 +4741:\28anonymous\20namespace\29::make_non_convex_fill_op\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20skgpu::ganesh::FillPathFlags\2c\20GrAAType\2c\20SkRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\29 +4742:\28anonymous\20namespace\29::is_newer_better\28SkData*\2c\20SkData*\29 +4743:\28anonymous\20namespace\29::get_glyph_run_intercepts\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20float\20const*\2c\20float*\2c\20int*\29 +4744:\28anonymous\20namespace\29::getStringArray\28ResourceData\20const*\2c\20icu_73::ResourceArray\20const&\2c\20icu_73::UnicodeString*\2c\20int\2c\20UErrorCode&\29 +4745:\28anonymous\20namespace\29::getInclusionsForSource\28UPropertySource\2c\20UErrorCode&\29 +4746:\28anonymous\20namespace\29::filter_and_mm_have_effect\28GrQuad\20const&\2c\20GrQuad\20const&\29 +4747:\28anonymous\20namespace\29::draw_to_sw_mask\28GrSWMaskHelper*\2c\20skgpu::ganesh::ClipStack::Element\20const&\2c\20bool\29 +4748:\28anonymous\20namespace\29::determine_clipped_src_rect\28SkIRect\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkRect\20const*\29 +4749:\28anonymous\20namespace\29::create_hb_face\28SkTypeface\20const&\29::$_0::__invoke\28void*\29 +4750:\28anonymous\20namespace\29::cpu_blur\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20sk_sp\20const&\2c\20skif::LayerSpace\2c\20skif::LayerSpace\29::$_0::operator\28\29\28double\29\20const +4751:\28anonymous\20namespace\29::copyFTBitmap\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\29 +4752:\28anonymous\20namespace\29::colrv1_start_glyph\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20unsigned\20short\2c\20FT_Color_Root_Transform_\2c\20skia_private::THashSet*\29 +4753:\28anonymous\20namespace\29::colrv1_draw_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\29 +4754:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29 +4755:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29 +4756:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29 +4757:\28anonymous\20namespace\29::TriangulatingPathOp::TriangulatingPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\29 +4758:\28anonymous\20namespace\29::TriangulatingPathOp::Triangulate\28GrEagerVertexAllocator*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool*\29 +4759:\28anonymous\20namespace\29::TriangulatingPathOp::CreateKey\28skgpu::UniqueKey*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\29 +4760:\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4761:\28anonymous\20namespace\29::TextureOpImpl::propagateCoverageAAThroughoutChain\28\29 +4762:\28anonymous\20namespace\29::TextureOpImpl::characterize\28\28anonymous\20namespace\29::TextureOpImpl::Desc*\29\20const +4763:\28anonymous\20namespace\29::TextureOpImpl::appendQuad\28DrawQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\29 +4764:\28anonymous\20namespace\29::TextureOpImpl::Make\28GrRecordingContext*\2c\20GrTextureSetEntry*\2c\20int\2c\20int\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20skgpu::ganesh::TextureOp::Saturate\2c\20GrAAType\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20sk_sp\29 +4765:\28anonymous\20namespace\29::TextureOpImpl::FillInVertices\28GrCaps\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl*\2c\20\28anonymous\20namespace\29::TextureOpImpl::Desc*\2c\20char*\29 +4766:\28anonymous\20namespace\29::SpotVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +4767:\28anonymous\20namespace\29::SkImageImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +4768:\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4769:\28anonymous\20namespace\29::RunIteratorQueue::advanceRuns\28\29 +4770:\28anonymous\20namespace\29::Pass::blur\28int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +4771:\28anonymous\20namespace\29::MipLevelHelper::allocAndInit\28SkArenaAlloc*\2c\20SkSamplingOptions\20const&\2c\20SkTileMode\2c\20SkTileMode\29 +4772:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29 +4773:\28anonymous\20namespace\29::MeshOp::MeshOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20sk_sp\2c\20GrPrimitiveType\20const*\2c\20GrAAType\2c\20sk_sp\2c\20SkMatrix\20const&\29 +4774:\28anonymous\20namespace\29::MeshOp::MeshOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMesh\20const&\2c\20skia_private::TArray>\2c\20true>\2c\20GrAAType\2c\20sk_sp\2c\20SkMatrix\20const&\29 +4775:\28anonymous\20namespace\29::MeshOp::Mesh::Mesh\28SkMesh\20const&\29 +4776:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29 +4777:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29 +4778:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineStruct\28char\20const*\29 +4779:\28anonymous\20namespace\29::FillRectOpImpl::tessellate\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29\20const +4780:\28anonymous\20namespace\29::FillRectOpImpl::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4781:\28anonymous\20namespace\29::FillRectOpImpl::FillRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4782:\28anonymous\20namespace\29::EllipticalRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\29 +4783:\28anonymous\20namespace\29::DrawAtlasOpImpl::DrawAtlasOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrAAType\2c\20int\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\29 +4784:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4785:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4786:\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4787:\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4788:\28anonymous\20namespace\29::DefaultPathOp::programInfo\28\29 +4789:\28anonymous\20namespace\29::DefaultPathOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkPath\20const&\2c\20float\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20bool\2c\20GrAAType\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +4790:\28anonymous\20namespace\29::DefaultPathOp::DefaultPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkPath\20const&\2c\20float\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20bool\2c\20GrAAType\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +4791:\28anonymous\20namespace\29::ClipGeometry\20\28anonymous\20namespace\29::get_clip_geometry\28skgpu::ganesh::ClipStack::SaveRecord\20const&\2c\20skgpu::ganesh::ClipStack::Draw\20const&\29 +4792:\28anonymous\20namespace\29::CircularRRectEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +4793:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29 +4794:\28anonymous\20namespace\29::CachedTessellations::CachedTessellations\28\29 +4795:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29 +4796:\28anonymous\20namespace\29::AAHairlineOp::AAHairlineOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIRect\2c\20float\2c\20GrUserStencilSettings\20const*\29 +4797:WebPResetDecParams +4798:WebPRescalerGetScaledDimensions +4799:WebPMultRows +4800:WebPMultARGBRows +4801:WebPIoInitFromOptions +4802:WebPInitUpsamplers +4803:WebPFlipBuffer +4804:WebPDemuxGetChunk +4805:WebPCopyDecBufferPixels +4806:WebPAllocateDecBuffer +4807:VP8RemapBitReader +4808:VP8LHuffmanTablesAllocate +4809:VP8LDspInit +4810:VP8LConvertFromBGRA +4811:VP8LColorCacheInit +4812:VP8LColorCacheCopy +4813:VP8LBuildHuffmanTable +4814:VP8LBitReaderSetBuffer +4815:VP8InitScanline +4816:VP8GetInfo +4817:VP8BitReaderSetBuffer +4818:Update_Max +4819:TransformOne_C +4820:TT_Set_Named_Instance +4821:TT_Hint_Glyph +4822:StoreFrame +4823:SortContourList\28SkOpContourHead**\2c\20bool\2c\20bool\29 +4824:SkYUVAPixmapInfo::isSupported\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\29\20const +4825:SkWuffsCodec::seekFrame\28int\29 +4826:SkWuffsCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +4827:SkWuffsCodec::onIncrementalDecodeTwoPass\28\29 +4828:SkWuffsCodec::decodeFrameConfig\28\29 +4829:SkWriter32::writeString\28char\20const*\2c\20unsigned\20long\29 +4830:SkWriteICCProfile\28skcms_ICCProfile\20const*\2c\20char\20const*\29 +4831:SkWStream::SizeOfPackedUInt\28unsigned\20long\29 +4832:SkWBuffer::padToAlign4\28\29 +4833:SkVertices::Builder::indices\28\29 +4834:SkUnicode_icu::extractWords\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +4835:SkUnicode::convertUtf16ToUtf8\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4836:SkUnicode::MakeIcuBasedUnicode\28\29 +4837:SkUTF::NextUTF16\28unsigned\20short\20const**\2c\20unsigned\20short\20const*\29 +4838:SkTypeface_FreeType::Scanner::~Scanner\28\29 +4839:SkTypeface_FreeType::Scanner::scanFont\28SkStreamAsset*\2c\20int\2c\20SkString*\2c\20SkFontStyle*\2c\20bool*\2c\20skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>*\29\20const +4840:SkTypeface_FreeType::Scanner::Scanner\28\29 +4841:SkTypeface_FreeType::FaceRec::Make\28SkTypeface_FreeType\20const*\29 +4842:SkTypeface_Custom::onGetFamilyName\28SkString*\29\20const +4843:SkTypeface::textToGlyphs\28void\20const*\2c\20unsigned\20long\2c\20SkTextEncoding\2c\20unsigned\20short*\2c\20int\29\20const +4844:SkTypeface::serialize\28SkWStream*\2c\20SkTypeface::SerializeBehavior\29\20const +4845:SkTypeface::openStream\28int*\29\20const +4846:SkTypeface::getFamilyName\28SkString*\29\20const +4847:SkTransformShader::update\28SkMatrix\20const&\29 +4848:SkTransformShader::SkTransformShader\28SkShaderBase\20const&\2c\20bool\29 +4849:SkTiffImageFileDirectory::getEntryTag\28unsigned\20short\29\20const +4850:SkTiffImageFileDirectory::getEntryRawData\28unsigned\20short\2c\20unsigned\20short*\2c\20unsigned\20short*\2c\20unsigned\20int*\2c\20unsigned\20char\20const**\2c\20unsigned\20long*\29\20const +4851:SkTiffImageFileDirectory::MakeFromOffset\28sk_sp\2c\20bool\2c\20unsigned\20int\29 +4852:SkTextBlobBuilder::allocRunPos\28SkFont\20const&\2c\20int\2c\20SkRect\20const*\29 +4853:SkTextBlob::getIntercepts\28float\20const*\2c\20float*\2c\20SkPaint\20const*\29\20const +4854:SkTextBlob::RunRecord::StorageSize\28unsigned\20int\2c\20unsigned\20int\2c\20SkTextBlob::GlyphPositioning\2c\20SkSafeMath*\29 +4855:SkTextBlob::MakeFromText\28void\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4856:SkTextBlob::MakeFromRSXform\28void\20const*\2c\20unsigned\20long\2c\20SkRSXform\20const*\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4857:SkTextBlob::Iter::experimentalNext\28SkTextBlob::Iter::ExperimentalRun*\29 +4858:SkTextBlob::Iter::Iter\28SkTextBlob\20const&\29 +4859:SkTaskGroup::wait\28\29 +4860:SkTaskGroup::add\28std::__2::function\29 +4861:SkTSpan::onlyEndPointsInCommon\28SkTSpan\20const*\2c\20bool*\2c\20bool*\2c\20bool*\29 +4862:SkTSpan::linearIntersects\28SkTCurve\20const&\29\20const +4863:SkTSect::removeAllBut\28SkTSpan\20const*\2c\20SkTSpan*\2c\20SkTSect*\29 +4864:SkTSect::intersects\28SkTSpan*\2c\20SkTSect*\2c\20SkTSpan*\2c\20int*\29 +4865:SkTSect::deleteEmptySpans\28\29 +4866:SkTSect::addSplitAt\28SkTSpan*\2c\20double\29 +4867:SkTSect::addForPerp\28SkTSpan*\2c\20double\29 +4868:SkTSect::EndsEqual\28SkTSect\20const*\2c\20SkTSect\20const*\2c\20SkIntersections*\29 +4869:SkTMultiMap::~SkTMultiMap\28\29 +4870:SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::find\28SkImageFilterCacheKey\20const&\29\20const +4871:SkTDStorage::calculateSizeOrDie\28int\29::$_1::operator\28\29\28\29\20const +4872:SkTDStorage::SkTDStorage\28SkTDStorage&&\29 +4873:SkTCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4874:SkTConic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +4875:SkTConic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +4876:SkTConic::controlsInside\28\29\20const +4877:SkTConic::collapsed\28\29\20const +4878:SkTBlockList::reset\28\29 +4879:SkTBlockList::reset\28\29 +4880:SkTBlockList::push_back\28GrGLProgramDataManager::GLUniformInfo\20const&\29 +4881:SkSwizzler::MakeSimple\28int\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +4882:SkSurfaces::WrapPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +4883:SkSurface_Base::outstandingImageSnapshot\28\29\20const +4884:SkSurface_Base::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +4885:SkSurface_Base::onCapabilities\28\29 +4886:SkStrokeRec::setHairlineStyle\28\29 +4887:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20SkPaint::Style\2c\20float\29 +4888:SkStrokeRec::GetInflationRadius\28SkPaint::Join\2c\20float\2c\20SkPaint::Cap\2c\20float\29 +4889:SkString::insertHex\28unsigned\20long\2c\20unsigned\20int\2c\20int\29 +4890:SkString::appendVAList\28char\20const*\2c\20void*\29 +4891:SkString::SkString\28std::__2::basic_string_view>\29 +4892:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec\20const&\29 +4893:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29 +4894:SkStrikeCache::internalRemoveStrike\28SkStrike*\29 +4895:SkStrikeCache::internalFindStrikeOrNull\28SkDescriptor\20const&\29 +4896:SkStrSplit\28char\20const*\2c\20char\20const*\2c\20SkStrSplitMode\2c\20skia_private::TArray*\29 +4897:SkSpriteBlitter_Memcpy::~SkSpriteBlitter_Memcpy\28\29 +4898:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4899:SkSpecialImages::AsBitmap\28SkSpecialImage\20const*\2c\20SkBitmap*\29 +4900:SkSharedMutex::releaseShared\28\29 +4901:SkShaders::MatrixRec::concat\28SkMatrix\20const&\29\20const +4902:SkShaders::Blend\28sk_sp\2c\20sk_sp\2c\20sk_sp\29 +4903:SkShaderUtils::VisitLineByLine\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::function\20const&\29 +4904:SkShaderUtils::PrettyPrint\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4905:SkShaderUtils::GLSLPrettyPrint::parseUntil\28char\20const*\29 +4906:SkShaderBase::getFlattenableType\28\29\20const +4907:SkShader::makeWithLocalMatrix\28SkMatrix\20const&\29\20const +4908:SkShader::makeWithColorFilter\28sk_sp\29\20const +4909:SkScan::PathRequiresTiling\28SkIRect\20const&\29 +4910:SkScan::HairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +4911:SkScan::AntiFrameRect\28SkRect\20const&\2c\20SkPoint\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4912:SkScan::AntiFillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4913:SkScan::AntiFillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4914:SkScan::AAAFillPath\28SkPath\20const&\2c\20SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +4915:SkScalerContext_FreeType_Base::drawCOLRv1Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +4916:SkScalerContext_FreeType_Base::drawCOLRv0Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +4917:SkScalerContext_FreeType::updateGlyphBoundsIfSubpixel\28SkGlyph\20const&\2c\20SkRect*\2c\20bool\29 +4918:SkScalerContext_FreeType::shouldSubpixelBitmap\28SkGlyph\20const&\2c\20SkMatrix\20const&\29 +4919:SkScalerContextRec::getSingleMatrix\28SkMatrix*\29\20const +4920:SkScalerContext::internalMakeGlyph\28SkPackedGlyphID\2c\20SkMask::Format\2c\20SkArenaAlloc*\29 +4921:SkScalerContext::internalGetPath\28SkGlyph&\2c\20SkArenaAlloc*\29 +4922:SkScalerContext::getFontMetrics\28SkFontMetrics*\29 +4923:SkScalerContext::SkScalerContext\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4924:SkScalerContext::PreprocessRec\28SkTypeface\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const&\29 +4925:SkScalerContext::MakeRecAndEffects\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\2c\20SkScalerContextRec*\2c\20SkScalerContextEffects*\29 +4926:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4927:SkScalerContext::GetMaskPreBlend\28SkScalerContextRec\20const&\29 +4928:SkScalerContext::AutoDescriptorGivenRecAndEffects\28SkScalerContextRec\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkAutoDescriptor*\29 +4929:SkSampledCodec::sampledDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +4930:SkSampledCodec::accountForNativeScaling\28int*\2c\20int*\29\20const +4931:SkSampledCodec::SkSampledCodec\28SkCodec*\29 +4932:SkSL::zero_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\29 +4933:SkSL::type_to_sksltype\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSLType*\29 +4934:SkSL::stoi\28std::__2::basic_string_view>\2c\20long\20long*\29 +4935:SkSL::splat_scalar\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4936:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_2::operator\28\29\28int\29\20const +4937:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_1::operator\28\29\28int\29\20const +4938:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_0::operator\28\29\28int\29\20const +4939:SkSL::negate_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4940:SkSL::move_all_but_break\28std::__2::unique_ptr>&\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\29 +4941:SkSL::make_reciprocal_expression\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29 +4942:SkSL::index_out_of_range\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20long\20long\2c\20SkSL::Expression\20const&\29 +4943:SkSL::find_existing_declaration\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\2c\20SkSL::IntrinsicKind\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray>\2c\20true>&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration**\29::$_0::operator\28\29\28\29\20const +4944:SkSL::extract_matrix\28SkSL::Expression\20const*\2c\20float*\29 +4945:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +4946:SkSL::check_main_signature\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20skia_private::TArray>\2c\20true>&\29::$_4::operator\28\29\28int\29\20const +4947:SkSL::\28anonymous\20namespace\29::check_valid_uniform_type\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Context\20const&\2c\20bool\29 +4948:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +4949:SkSL::VariableReference::setRefKind\28SkSL::VariableRefKind\29 +4950:SkSL::Variable::setVarDeclaration\28SkSL::VarDeclaration*\29 +4951:SkSL::Variable::setGlobalVarDeclaration\28SkSL::GlobalVarDeclaration*\29 +4952:SkSL::Variable::globalVarDeclaration\28\29\20const +4953:SkSL::Variable::Make\28SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20std::__2::basic_string_view>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20bool\2c\20SkSL::VariableStorage\29 +4954:SkSL::Variable::MakeScratchVariable\28SkSL::Context\20const&\2c\20SkSL::Mangler&\2c\20std::__2::basic_string_view>\2c\20SkSL::Type\20const*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>\29 +4955:SkSL::VarDeclaration::Make\28SkSL::Context\20const&\2c\20SkSL::Variable*\2c\20SkSL::Type\20const*\2c\20int\2c\20std::__2::unique_ptr>\29 +4956:SkSL::VarDeclaration::ErrorCheck\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20SkSL::Type\20const*\2c\20SkSL::VariableStorage\29 +4957:SkSL::TypeReference::description\28SkSL::OperatorPrecedence\29\20const +4958:SkSL::TypeReference::VerifyType\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Position\29 +4959:SkSL::TypeReference::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\29 +4960:SkSL::Type::MakeStructType\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20bool\29 +4961:SkSL::Type::MakeLiteralType\28char\20const*\2c\20SkSL::Type\20const&\2c\20signed\20char\29 +4962:SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::addDeclaringElement\28SkSL::ProgramElement\20const*\29 +4963:SkSL::ToGLSL\28SkSL::Program&\2c\20SkSL::ShaderCaps\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\29 +4964:SkSL::ThreadContext::ThreadContext\28SkSL::Context&\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::Module\20const*\2c\20bool\29 +4965:SkSL::ThreadContext::End\28\29 +4966:SkSL::TernaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +4967:SkSL::SymbolTable::wouldShadowSymbolsFrom\28SkSL::SymbolTable\20const*\29\20const +4968:SkSL::Swizzle::MaskString\28skia_private::STArray<4\2c\20signed\20char\2c\20true>\20const&\29 +4969:SkSL::SwitchStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20std::__2::shared_ptr\29 +4970:SkSL::SwitchCase::Make\28SkSL::Position\2c\20long\20long\2c\20std::__2::unique_ptr>\29 +4971:SkSL::SwitchCase::MakeDefault\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +4972:SkSL::StructType::StructType\28SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20int\2c\20bool\29 +4973:SkSL::String::vappendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20void*\29 +4974:SkSL::SingleArgumentConstructor::argumentSpan\28\29 +4975:SkSL::RP::stack_usage\28SkSL::RP::Instruction\20const&\29 +4976:SkSL::RP::UnownedLValueSlice::isWritable\28\29\20const +4977:SkSL::RP::UnownedLValueSlice::dynamicSlotRange\28\29 +4978:SkSL::RP::ScratchLValue::~ScratchLValue\28\29 +4979:SkSL::RP::Program::~Program\28\29 +4980:SkSL::RP::LValue::swizzle\28\29 +4981:SkSL::RP::Generator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\29 +4982:SkSL::RP::Generator::writeFunction\28SkSL::IRNode\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSpan>\20const>\29 +4983:SkSL::RP::Generator::storeImmutableValueToSlots\28skia_private::TArray\20const&\2c\20SkSL::RP::SlotRange\29 +4984:SkSL::RP::Generator::pushVariableReferencePartial\28SkSL::VariableReference\20const&\2c\20SkSL::RP::SlotRange\29 +4985:SkSL::RP::Generator::pushPrefixExpression\28SkSL::Operator\2c\20SkSL::Expression\20const&\29 +4986:SkSL::RP::Generator::pushIntrinsic\28SkSL::IntrinsicKind\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +4987:SkSL::RP::Generator::pushImmutableData\28SkSL::Expression\20const&\29 +4988:SkSL::RP::Generator::pushAbsFloatIntrinsic\28int\29 +4989:SkSL::RP::Generator::getImmutableValueForExpression\28SkSL::Expression\20const&\2c\20skia_private::TArray*\29 +4990:SkSL::RP::Generator::foldWithMultiOp\28SkSL::RP::BuilderOp\2c\20int\29 +4991:SkSL::RP::Generator::findPreexistingImmutableData\28skia_private::TArray\20const&\29 +4992:SkSL::RP::Builder::push_slots_or_immutable_indirect\28SkSL::RP::SlotRange\2c\20int\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +4993:SkSL::RP::Builder::copy_stack_to_slots\28SkSL::RP::SlotRange\2c\20int\29 +4994:SkSL::RP::Builder::branch_if_any_lanes_active\28int\29 +4995:SkSL::ProgramVisitor::visit\28SkSL::Program\20const&\29 +4996:SkSL::ProgramUsage::remove\28SkSL::Expression\20const*\29 +4997:SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +4998:SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +4999:SkSL::Pool::attachToThread\28\29 +5000:SkSL::PipelineStage::PipelineStageCodeGenerator::functionName\28SkSL::FunctionDeclaration\20const&\29 +5001:SkSL::PipelineStage::PipelineStageCodeGenerator::functionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +5002:SkSL::Parser::~Parser\28\29 +5003:SkSL::Parser::varDeclarationsOrExpressionStatement\28\29 +5004:SkSL::Parser::switchCaseBody\28SkSL::ExpressionArray*\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\2c\20std::__2::unique_ptr>\29 +5005:SkSL::Parser::shiftExpression\28\29 +5006:SkSL::Parser::relationalExpression\28\29 +5007:SkSL::Parser::parameter\28std::__2::unique_ptr>*\29 +5008:SkSL::Parser::multiplicativeExpression\28\29 +5009:SkSL::Parser::logicalXorExpression\28\29 +5010:SkSL::Parser::logicalAndExpression\28\29 +5011:SkSL::Parser::localVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +5012:SkSL::Parser::intLiteral\28long\20long*\29 +5013:SkSL::Parser::globalVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +5014:SkSL::Parser::equalityExpression\28\29 +5015:SkSL::Parser::directive\28bool\29 +5016:SkSL::Parser::declarations\28\29 +5017:SkSL::Parser::checkNext\28SkSL::Token::Kind\2c\20SkSL::Token*\29 +5018:SkSL::Parser::bitwiseXorExpression\28\29 +5019:SkSL::Parser::bitwiseOrExpression\28\29 +5020:SkSL::Parser::bitwiseAndExpression\28\29 +5021:SkSL::Parser::additiveExpression\28\29 +5022:SkSL::Parser::Parser\28SkSL::Compiler*\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +5023:SkSL::MultiArgumentConstructor::argumentSpan\28\29 +5024:SkSL::ModuleLoader::~ModuleLoader\28\29 +5025:SkSL::ModuleLoader::loadVertexModule\28SkSL::Compiler*\29 +5026:SkSL::ModuleLoader::loadSharedModule\28SkSL::Compiler*\29 +5027:SkSL::ModuleLoader::loadPublicModule\28SkSL::Compiler*\29 +5028:SkSL::ModuleLoader::loadFragmentModule\28SkSL::Compiler*\29 +5029:SkSL::ModuleLoader::Get\28\29 +5030:SkSL::MethodReference::~MethodReference\28\29.1 +5031:SkSL::MethodReference::~MethodReference\28\29 +5032:SkSL::MatrixType::bitWidth\28\29\20const +5033:SkSL::MakeRasterPipelineProgram\28SkSL::Program\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSL::DebugTracePriv*\2c\20bool\29 +5034:SkSL::Layout::description\28\29\20const +5035:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_matrixCompMult\28double\2c\20double\2c\20double\29 +5036:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_length\28std::__2::array\20const&\29 +5037:SkSL::InterfaceBlock::~InterfaceBlock\28\29 +5038:SkSL::Inliner::candidateCanBeInlined\28SkSL::InlineCandidate\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20skia_private::THashMap*\29 +5039:SkSL::IfStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +5040:SkSL::GLSLCodeGenerator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\2c\20bool\29 +5041:SkSL::GLSLCodeGenerator::writeProgramElement\28SkSL::ProgramElement\20const&\29 +5042:SkSL::GLSLCodeGenerator::writeMinAbsHack\28SkSL::Expression&\2c\20SkSL::Expression&\29 +5043:SkSL::GLSLCodeGenerator::generateCode\28\29 +5044:SkSL::FunctionDefinition::~FunctionDefinition\28\29.1 +5045:SkSL::FunctionDefinition::~FunctionDefinition\28\29 +5046:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::visitStatementPtr\28std::__2::unique_ptr>&\29 +5047:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::addLocalVariable\28SkSL::Variable\20const*\2c\20SkSL::Position\29 +5048:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29.1 +5049:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29 +5050:SkSL::FunctionDeclaration::mangledName\28\29\20const +5051:SkSL::FunctionDeclaration::determineFinalTypes\28SkSL::ExpressionArray\20const&\2c\20skia_private::STArray<8\2c\20SkSL::Type\20const*\2c\20true>*\2c\20SkSL::Type\20const**\29\20const +5052:SkSL::FunctionDeclaration::FunctionDeclaration\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20SkSL::Type\20const*\2c\20SkSL::IntrinsicKind\29 +5053:SkSL::FunctionCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +5054:SkSL::FunctionCall::FindBestFunctionForCall\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\20const&\29 +5055:SkSL::FunctionCall::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +5056:SkSL::ForStatement::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +5057:SkSL::FindIntrinsicKind\28std::__2::basic_string_view>\29 +5058:SkSL::FieldAccess::~FieldAccess\28\29.1 +5059:SkSL::FieldAccess::~FieldAccess\28\29 +5060:SkSL::ExtendedVariable::layout\28\29\20const +5061:SkSL::ExpressionStatement::Convert\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +5062:SkSL::ConstructorScalarCast::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +5063:SkSL::ConstructorMatrixResize::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +5064:SkSL::Constructor::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +5065:SkSL::ConstantFolder::Simplify\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +5066:SkSL::Compiler::writeErrorCount\28\29 +5067:SkSL::ChildCall::~ChildCall\28\29.1 +5068:SkSL::ChildCall::~ChildCall\28\29 +5069:SkSL::ChildCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const&\2c\20SkSL::ExpressionArray\29 +5070:SkSL::BinaryExpression::isAssignmentIntoVariable\28\29 +5071:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\2c\20SkSL::Type\20const*\29 +5072:SkSL::Analysis::\28anonymous\20namespace\29::LoopControlFlowVisitor::visitStatement\28SkSL::Statement\20const&\29 +5073:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29 +5074:SkSL::Analysis::IsConstantExpression\28SkSL::Expression\20const&\29 +5075:SkSL::Analysis::IsAssignable\28SkSL::Expression&\2c\20SkSL::Analysis::AssignmentInfo*\2c\20SkSL::ErrorReporter*\29 +5076:SkSL::Analysis::GetLoopUnrollInfo\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\20const&\2c\20SkSL::Statement\20const*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Expression\20const*\2c\20SkSL::Statement\20const*\2c\20SkSL::ErrorReporter*\29 +5077:SkSL::Analysis::GetLoopControlFlowInfo\28SkSL::Statement\20const&\29 +5078:SkSL::AliasType::numberKind\28\29\20const +5079:SkSL::AliasType::isAllowedInES2\28\29\20const +5080:SkRuntimeShader::~SkRuntimeShader\28\29 +5081:SkRuntimeEffectPriv::WriteChildEffects\28SkWriteBuffer&\2c\20SkSpan\29 +5082:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpaceXformSteps\20const&\29 +5083:SkRuntimeEffect::~SkRuntimeEffect\28\29 +5084:SkRuntimeEffect::source\28\29\20const +5085:SkRuntimeEffect::makeShader\28sk_sp\2c\20sk_sp*\2c\20unsigned\20long\2c\20SkMatrix\20const*\29\20const +5086:SkRuntimeEffect::makeColorFilter\28sk_sp\2c\20SkSpan\29\20const +5087:SkRuntimeEffect::MakeForBlender\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +5088:SkRuntimeEffect::ChildPtr&\20skia_private::TArray::emplace_back&>\28sk_sp&\29 +5089:SkRuntimeBlender::flatten\28SkWriteBuffer&\29\20const +5090:SkRgnBuilder::~SkRgnBuilder\28\29 +5091:SkResourceCache::PostPurgeSharedID\28unsigned\20long\20long\29 +5092:SkResourceCache::GetDiscardableFactory\28\29 +5093:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::rowBytes\28int\29\20const +5094:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +5095:SkRegion::Spanerator::Spanerator\28SkRegion\20const&\2c\20int\2c\20int\2c\20int\29 +5096:SkRegion::Oper\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\2c\20SkRegion*\29 +5097:SkRefCntSet::~SkRefCntSet\28\29 +5098:SkRefCntBase::internal_dispose\28\29\20const +5099:SkReduceOrder::reduce\28SkDQuad\20const&\29 +5100:SkReduceOrder::Conic\28SkConic\20const&\2c\20SkPoint*\29 +5101:SkRectClipBlitter::requestRowsPreserved\28\29\20const +5102:SkRectClipBlitter::allocBlitMemory\28unsigned\20long\29 +5103:SkRect::intersect\28SkRect\20const&\2c\20SkRect\20const&\29 +5104:SkRecords::TypedMatrix::TypedMatrix\28SkMatrix\20const&\29 +5105:SkRecords::FillBounds::popSaveBlock\28\29 +5106:SkRecordOptimize\28SkRecord*\29 +5107:SkRecordFillBounds\28SkRect\20const&\2c\20SkRecord\20const&\2c\20SkRect*\2c\20SkBBoxHierarchy::Metadata*\29 +5108:SkRecord::bytesUsed\28\29\20const +5109:SkReadPixelsRec::trim\28int\2c\20int\29 +5110:SkReadBuffer::readString\28unsigned\20long*\29 +5111:SkReadBuffer::readRegion\28SkRegion*\29 +5112:SkReadBuffer::readPoint3\28SkPoint3*\29 +5113:SkRasterPipeline_<256ul>::SkRasterPipeline_\28\29 +5114:SkRasterPipeline::appendSetRGB\28SkArenaAlloc*\2c\20float\20const*\29 +5115:SkRasterClipStack::SkRasterClipStack\28int\2c\20int\29 +5116:SkRTreeFactory::operator\28\29\28\29\20const +5117:SkRTree::search\28SkRTree::Node*\2c\20SkRect\20const&\2c\20std::__2::vector>*\29\20const +5118:SkRTree::bulkLoad\28std::__2::vector>*\2c\20int\29 +5119:SkRTree::allocateNodeAtLevel\28unsigned\20short\29 +5120:SkRSXform::toQuad\28float\2c\20float\2c\20SkPoint*\29\20const +5121:SkRRect::isValid\28\29\20const +5122:SkRRect::computeType\28\29 +5123:SkRGBA4f<\28SkAlphaType\292>\20skgpu::Swizzle::applyTo<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +5124:SkRBuffer::skipToAlign4\28\29 +5125:SkQuads::EvalAt\28double\2c\20double\2c\20double\2c\20double\29 +5126:SkQuadraticEdge::setQuadraticWithoutUpdate\28SkPoint\20const*\2c\20int\29 +5127:SkPtrSet::reset\28\29 +5128:SkPtrSet::copyToArray\28void**\29\20const +5129:SkPtrSet::add\28void*\29 +5130:SkPoint::Normalize\28SkPoint*\29 +5131:SkPngEncoder::Make\28SkWStream*\2c\20SkPixmap\20const&\2c\20SkPngEncoder::Options\20const&\29 +5132:SkPngCodec::initializeXforms\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +5133:SkPngCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +5134:SkPngCodec::allocateStorage\28SkImageInfo\20const&\29 +5135:SkPngCodec::IsPng\28void\20const*\2c\20unsigned\20long\29 +5136:SkPixmap::erase\28unsigned\20int\2c\20SkIRect\20const&\29\20const +5137:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const +5138:SkPixelRef::getGenerationID\28\29\20const +5139:SkPixelRef::addGenIDChangeListener\28sk_sp\29 +5140:SkPixelRef::SkPixelRef\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +5141:SkPictureShader::CachedImageInfo::makeImage\28sk_sp\2c\20SkPicture\20const*\29\20const +5142:SkPictureShader::CachedImageInfo::Make\28SkRect\20const&\2c\20SkMatrix\20const&\2c\20SkColorType\2c\20SkColorSpace*\2c\20int\2c\20SkSurfaceProps\20const&\29 +5143:SkPictureRecord::endRecording\28\29 +5144:SkPictureRecord::beginRecording\28\29 +5145:SkPicturePriv::Flatten\28sk_sp\2c\20SkWriteBuffer&\29 +5146:SkPicturePlayback::draw\28SkCanvas*\2c\20SkPicture::AbortCallback*\2c\20SkReadBuffer*\29 +5147:SkPictureData::parseBufferTag\28SkReadBuffer&\2c\20unsigned\20int\2c\20unsigned\20int\29 +5148:SkPictureData::getPicture\28SkReadBuffer*\29\20const +5149:SkPictureData::getDrawable\28SkReadBuffer*\29\20const +5150:SkPictureData::flatten\28SkWriteBuffer&\29\20const +5151:SkPictureData::flattenToBuffer\28SkWriteBuffer&\2c\20bool\29\20const +5152:SkPictureData::SkPictureData\28SkPictureRecord\20const&\2c\20SkPictInfo\20const&\29 +5153:SkPicture::backport\28\29\20const +5154:SkPicture::SkPicture\28\29 +5155:SkPicture::MakeFromStreamPriv\28SkStream*\2c\20SkDeserialProcs\20const*\2c\20SkTypefacePlayback*\2c\20int\29 +5156:SkPathWriter::assemble\28\29 +5157:SkPathWriter::SkPathWriter\28SkPath&\29 +5158:SkPathRef::resetToSize\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5159:SkPathPriv::IsNestedFillRects\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\29 +5160:SkPathPriv::CreateDrawArcPath\28SkPath*\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +5161:SkPathEffectBase::PointData::~PointData\28\29 +5162:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +5163:SkPathBuilder::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +5164:SkPath::writeToMemoryAsRRect\28void*\29\20const +5165:SkPath::setLastPt\28float\2c\20float\29 +5166:SkPath::reverseAddPath\28SkPath\20const&\29 +5167:SkPath::readFromMemory\28void\20const*\2c\20unsigned\20long\29 +5168:SkPath::offset\28float\2c\20float\2c\20SkPath*\29\20const +5169:SkPath::isZeroLengthSincePoint\28int\29\20const +5170:SkPath::isRRect\28SkRRect*\29\20const +5171:SkPath::isOval\28SkRect*\29\20const +5172:SkPath::conservativelyContainsRect\28SkRect\20const&\29\20const +5173:SkPath::computeConvexity\28\29\20const +5174:SkPath::addPath\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath::AddPathMode\29 +5175:SkPath::Polygon\28SkPoint\20const*\2c\20int\2c\20bool\2c\20SkPathFillType\2c\20bool\29 +5176:SkPath2DPathEffect::Make\28SkMatrix\20const&\2c\20SkPath\20const&\29 +5177:SkPath1DPathEffect::Make\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29 +5178:SkParseEncodedOrigin\28void\20const*\2c\20unsigned\20long\2c\20SkEncodedOrigin*\29 +5179:SkPaintPriv::Unflatten\28SkReadBuffer&\29 +5180:SkPaintPriv::ShouldDither\28SkPaint\20const&\2c\20SkColorType\29 +5181:SkPaintPriv::Overwrites\28SkPaint\20const*\2c\20SkPaintPriv::ShaderOverrideOpacity\29 +5182:SkPaintPriv::Flatten\28SkPaint\20const&\2c\20SkWriteBuffer&\29 +5183:SkPaint::setStroke\28bool\29 +5184:SkPaint::reset\28\29 +5185:SkPaint::refColorFilter\28\29\20const +5186:SkOpSpanBase::merge\28SkOpSpan*\29 +5187:SkOpSpanBase::globalState\28\29\20const +5188:SkOpSpan::sortableTop\28SkOpContour*\29 +5189:SkOpSpan::release\28SkOpPtT\20const*\29 +5190:SkOpSpan::insertCoincidence\28SkOpSegment\20const*\2c\20bool\2c\20bool\29 +5191:SkOpSpan::init\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +5192:SkOpSegment::updateWindingReverse\28SkOpAngle\20const*\29 +5193:SkOpSegment::oppXor\28\29\20const +5194:SkOpSegment::moveMultiples\28\29 +5195:SkOpSegment::isXor\28\29\20const +5196:SkOpSegment::findNextWinding\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +5197:SkOpSegment::findNextOp\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\2c\20bool*\2c\20SkPathOp\2c\20int\2c\20int\29 +5198:SkOpSegment::computeSum\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpAngle::IncludeType\29 +5199:SkOpSegment::collapsed\28double\2c\20double\29\20const +5200:SkOpSegment::addExpanded\28double\2c\20SkOpSpanBase\20const*\2c\20bool*\29 +5201:SkOpSegment::activeAngle\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +5202:SkOpSegment::UseInnerWinding\28int\2c\20int\29 +5203:SkOpPtT::ptAlreadySeen\28SkOpPtT\20const*\29\20const +5204:SkOpPtT::contains\28SkOpSegment\20const*\2c\20double\29\20const +5205:SkOpGlobalState::SkOpGlobalState\28SkOpContourHead*\2c\20SkArenaAlloc*\29 +5206:SkOpEdgeBuilder::preFetch\28\29 +5207:SkOpEdgeBuilder::init\28\29 +5208:SkOpEdgeBuilder::finish\28\29 +5209:SkOpContourBuilder::addConic\28SkPoint*\2c\20float\29 +5210:SkOpContour::addQuad\28SkPoint*\29 +5211:SkOpContour::addCubic\28SkPoint*\29 +5212:SkOpContour::addConic\28SkPoint*\2c\20float\29 +5213:SkOpCoincidence::release\28SkOpSegment\20const*\29 +5214:SkOpCoincidence::mark\28\29 +5215:SkOpCoincidence::markCollapsed\28SkCoincidentSpans*\2c\20SkOpPtT*\29 +5216:SkOpCoincidence::fixUp\28SkCoincidentSpans*\2c\20SkOpPtT*\2c\20SkOpPtT\20const*\29 +5217:SkOpCoincidence::contains\28SkCoincidentSpans\20const*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\29\20const +5218:SkOpCoincidence::checkOverlap\28SkCoincidentSpans*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20SkTDArray*\29\20const +5219:SkOpCoincidence::addOrOverlap\28SkOpSegment*\2c\20SkOpSegment*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20bool*\29 +5220:SkOpAngle::tangentsDiverge\28SkOpAngle\20const*\2c\20double\29 +5221:SkOpAngle::setSpans\28\29 +5222:SkOpAngle::setSector\28\29 +5223:SkOpAngle::previous\28\29\20const +5224:SkOpAngle::midToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +5225:SkOpAngle::loopCount\28\29\20const +5226:SkOpAngle::loopContains\28SkOpAngle\20const*\29\20const +5227:SkOpAngle::lastMarked\28\29\20const +5228:SkOpAngle::endToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +5229:SkOpAngle::alignmentSameSide\28SkOpAngle\20const*\2c\20int*\29\20const +5230:SkOpAngle::after\28SkOpAngle*\29 +5231:SkOffsetSimplePolygon\28SkPoint\20const*\2c\20int\2c\20SkRect\20const&\2c\20float\2c\20SkTDArray*\2c\20SkTDArray*\29 +5232:SkNoDrawCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +5233:SkNoDrawCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +5234:SkMipmapBuilder::countLevels\28\29\20const +5235:SkMipmap::countLevels\28\29\20const +5236:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +5237:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +5238:SkMeshPriv::CpuBuffer::size\28\29\20const +5239:SkMeshPriv::CpuBuffer::peek\28\29\20const +5240:SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +5241:SkMatrix::setRotate\28float\2c\20float\2c\20float\29 +5242:SkMatrix::mapRectScaleTranslate\28SkRect*\2c\20SkRect\20const&\29\20const +5243:SkMatrix::isFinite\28\29\20const +5244:SkMatrix::getMinMaxScales\28float*\29\20const +5245:SkMatrix::Translate\28float\2c\20float\29 +5246:SkMatrix::Translate\28SkIPoint\29 +5247:SkMatrix::RotTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +5248:SkMaskSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +5249:SkMaskFilterBase::NinePatch::~NinePatch\28\29 +5250:SkMask::computeTotalImageSize\28\29\20const +5251:SkMakeResourceCacheSharedIDForBitmap\28unsigned\20int\29 +5252:SkMakeCachedRuntimeEffect\28SkRuntimeEffect::Result\20\28*\29\28SkString\2c\20SkRuntimeEffect::Options\20const&\29\2c\20char\20const*\29 +5253:SkM44::preTranslate\28float\2c\20float\2c\20float\29 +5254:SkM44::postTranslate\28float\2c\20float\2c\20float\29 +5255:SkLocalMatrixShader::type\28\29\20const +5256:SkLinearColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +5257:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\29 +5258:SkLatticeIter::SkLatticeIter\28SkCanvas::Lattice\20const&\2c\20SkRect\20const&\29 +5259:SkLRUCache\2c\20SkGoodHash>::find\28unsigned\20long\20long\20const&\29 +5260:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::~SkLRUCache\28\29 +5261:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::reset\28\29 +5262:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::insert\28GrProgramDesc\20const&\2c\20std::__2::unique_ptr>\29 +5263:SkJpegCodec::readRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20SkCodec::Options\20const&\29 +5264:SkJpegCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +5265:SkJpegCodec::ReadHeader\28SkStream*\2c\20SkCodec**\2c\20JpegDecoderMgr**\2c\20std::__2::unique_ptr>\29 +5266:SkJSONWriter::appendString\28char\20const*\2c\20unsigned\20long\29 +5267:SkIsSimplePolygon\28SkPoint\20const*\2c\20int\29 +5268:SkIsConvexPolygon\28SkPoint\20const*\2c\20int\29 +5269:SkInvert4x4Matrix\28float\20const*\2c\20float*\29 +5270:SkInvert3x3Matrix\28float\20const*\2c\20float*\29 +5271:SkInvert2x2Matrix\28float\20const*\2c\20float*\29 +5272:SkIntersections::vertical\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5273:SkIntersections::vertical\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5274:SkIntersections::vertical\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5275:SkIntersections::vertical\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5276:SkIntersections::mostOutside\28double\2c\20double\2c\20SkDPoint\20const&\29\20const +5277:SkIntersections::intersect\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +5278:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDQuad\20const&\29 +5279:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +5280:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDConic\20const&\29 +5281:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDQuad\20const&\29 +5282:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDLine\20const&\29 +5283:SkIntersections::insertCoincident\28double\2c\20double\2c\20SkDPoint\20const&\29 +5284:SkIntersections::horizontal\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5285:SkIntersections::horizontal\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5286:SkIntersections::horizontal\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5287:SkIntersections::horizontal\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5288:SkImages::RasterFromPixmap\28SkPixmap\20const&\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +5289:SkImages::RasterFromData\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\29 +5290:SkImages::DeferredFromGenerator\28std::__2::unique_ptr>\29 +5291:SkImages::DeferredFromEncodedData\28sk_sp\2c\20std::__2::optional\29 +5292:SkImage_Raster::onPeekMips\28\29\20const +5293:SkImage_Raster::onPeekBitmap\28\29\20const +5294:SkImage_Lazy::~SkImage_Lazy\28\29.1 +5295:SkImage_GaneshBase::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +5296:SkImage_Base::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +5297:SkImage_Base::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +5298:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_1::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +5299:SkImageInfo::validRowBytes\28unsigned\20long\29\20const +5300:SkImageInfo::MakeN32Premul\28int\2c\20int\29 +5301:SkImageGenerator::~SkImageGenerator\28\29.1 +5302:SkImageFilters::ColorFilter\28sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +5303:SkImageFilter_Base::getCTMCapability\28\29\20const +5304:SkImageFilter_Base::filterImage\28skif::Context\20const&\29\20const +5305:SkImageFilterCache::Get\28\29 +5306:SkImage::withMipmaps\28sk_sp\29\20const +5307:SkImage::peekPixels\28SkPixmap*\29\20const +5308:SkIcuBreakIteratorCache::purgeIfNeeded\28\29 +5309:SkGradientBaseShader::~SkGradientBaseShader\28\29 +5310:SkGradientBaseShader::AppendGradientFillStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\29 +5311:SkGlyphRunListPainterCPU::SkGlyphRunListPainterCPU\28SkSurfaceProps\20const&\2c\20SkColorType\2c\20SkColorSpace*\29 +5312:SkGlyph::setImage\28SkArenaAlloc*\2c\20SkScalerContext*\29 +5313:SkGlyph::setDrawable\28SkArenaAlloc*\2c\20SkScalerContext*\29 +5314:SkGlyph::pathIsHairline\28\29\20const +5315:SkGlyph::mask\28SkPoint\29\20const +5316:SkGlyph::SkGlyph\28SkGlyph&&\29 +5317:SkGenerateDistanceFieldFromA8Image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20unsigned\20long\29 +5318:SkGaussFilter::SkGaussFilter\28double\29 +5319:SkFrameHolder::setAlphaAndRequiredFrame\28SkFrame*\29 +5320:SkFrame::fillIn\28SkCodec::FrameInfo*\2c\20bool\29\20const +5321:SkFontStyleSet_Custom::appendTypeface\28sk_sp\29 +5322:SkFontStyleSet_Custom::SkFontStyleSet_Custom\28SkString\29 +5323:SkFontPriv::GetFontBounds\28SkFont\20const&\29 +5324:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20int\29\20const +5325:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +5326:SkFontMgr::legacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +5327:SkFontDescriptor::SkFontDescriptor\28\29 +5328:SkFont::setupForAsPaths\28SkPaint*\29 +5329:SkFont::setSkewX\28float\29 +5330:SkFont::setLinearMetrics\28bool\29 +5331:SkFont::setEmbolden\28bool\29 +5332:SkFont::operator==\28SkFont\20const&\29\20const +5333:SkFont::getPaths\28unsigned\20short\20const*\2c\20int\2c\20void\20\28*\29\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29\2c\20void*\29\20const +5334:SkFlattenable::RegisterFlattenablesIfNeeded\28\29 +5335:SkFlattenable::PrivateInitializer::InitEffects\28\29 +5336:SkFlattenable::NameToFactory\28char\20const*\29 +5337:SkFlattenable::FactoryToName\28sk_sp\20\28*\29\28SkReadBuffer&\29\29 +5338:SkFindQuadExtrema\28float\2c\20float\2c\20float\2c\20float*\29 +5339:SkFindCubicExtrema\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +5340:SkFactorySet::~SkFactorySet\28\29 +5341:SkExifMetadata::parseIfd\28unsigned\20int\2c\20bool\2c\20bool\29 +5342:SkEncoder::encodeRows\28int\29 +5343:SkEmptyPicture::approximateBytesUsed\28\29\20const +5344:SkEdgeClipper::clipQuad\28SkPoint\20const*\2c\20SkRect\20const&\29 +5345:SkEdgeClipper::ClipPath\28SkPath\20const&\2c\20SkRect\20const&\2c\20bool\2c\20void\20\28*\29\28SkEdgeClipper*\2c\20bool\2c\20void*\29\2c\20void*\29 +5346:SkEdgeBuilder::buildEdges\28SkPath\20const&\2c\20SkIRect\20const*\29 +5347:SkDynamicMemoryWStream::bytesWritten\28\29\20const +5348:SkDrawableList::newDrawableSnapshot\28\29 +5349:SkDrawTreatAAStrokeAsHairline\28float\2c\20SkMatrix\20const&\2c\20float*\29 +5350:SkDrawShadowMetrics::GetSpotShadowTransform\28SkPoint3\20const&\2c\20float\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkRect\20const&\2c\20bool\2c\20SkMatrix*\2c\20float*\29 +5351:SkDrawShadowMetrics::GetLocalBounds\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect*\29 +5352:SkDrawBase::drawPaint\28SkPaint\20const&\29\20const +5353:SkDrawBase::DrawToMask\28SkPath\20const&\2c\20SkIRect\20const&\2c\20SkMaskFilter\20const*\2c\20SkMatrix\20const*\2c\20SkMaskBuilder*\2c\20SkMaskBuilder::CreateMode\2c\20SkStrokeRec::InitStyle\29 +5354:SkDraw::drawSprite\28SkBitmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29\20const +5355:SkDiscretePathEffectImpl::flatten\28SkWriteBuffer&\29\20const +5356:SkDiscretePathEffect::Make\28float\2c\20float\2c\20unsigned\20int\29 +5357:SkDevice::getRelativeTransform\28SkDevice\20const&\29\20const +5358:SkDevice::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +5359:SkDevice::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +5360:SkDevice::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +5361:SkDevice::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +5362:SkDevice::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +5363:SkDescriptor::findEntry\28unsigned\20int\2c\20unsigned\20int*\29\20const +5364:SkDescriptor::computeChecksum\28\29 +5365:SkDescriptor::addEntry\28unsigned\20int\2c\20unsigned\20long\2c\20void\20const*\29 +5366:SkDeque::Iter::next\28\29 +5367:SkDeque::Iter::Iter\28SkDeque\20const&\2c\20SkDeque::Iter::IterStart\29 +5368:SkData::MakeSubset\28SkData\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +5369:SkData::MakeFromStream\28SkStream*\2c\20unsigned\20long\29 +5370:SkDashPath::InternalFilter\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20float\20const*\2c\20int\2c\20float\2c\20int\2c\20float\2c\20float\2c\20SkDashPath::StrokeRecApplication\29 +5371:SkDashPath::CalcDashParameters\28float\2c\20float\20const*\2c\20int\2c\20float*\2c\20int*\2c\20float*\2c\20float*\29 +5372:SkDRect::setBounds\28SkDQuad\20const&\2c\20SkDQuad\20const&\2c\20double\2c\20double\29 +5373:SkDRect::setBounds\28SkDCubic\20const&\2c\20SkDCubic\20const&\2c\20double\2c\20double\29 +5374:SkDRect::setBounds\28SkDConic\20const&\2c\20SkDConic\20const&\2c\20double\2c\20double\29 +5375:SkDQuad::subDivide\28double\2c\20double\29\20const +5376:SkDQuad::monotonicInY\28\29\20const +5377:SkDQuad::isLinear\28int\2c\20int\29\20const +5378:SkDQuad::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +5379:SkDPoint::approximatelyDEqual\28SkDPoint\20const&\29\20const +5380:SkDCurveSweep::setCurveHullSweep\28SkPath::Verb\29 +5381:SkDCurve::nearPoint\28SkPath::Verb\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29\20const +5382:SkDCubic::monotonicInX\28\29\20const +5383:SkDCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +5384:SkDCubic::hullIntersects\28SkDPoint\20const*\2c\20int\2c\20bool*\29\20const +5385:SkDConic::subDivide\28double\2c\20double\29\20const +5386:SkCubics::RootsReal\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +5387:SkCubicEdge::setCubicWithoutUpdate\28SkPoint\20const*\2c\20int\2c\20bool\29 +5388:SkCubicClipper::ChopMonoAtY\28SkPoint\20const*\2c\20float\2c\20float*\29 +5389:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20SkArenaAlloc*\2c\20sk_sp\29 +5390:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkArenaAlloc*\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +5391:SkContourMeasureIter::~SkContourMeasureIter\28\29 +5392:SkContourMeasureIter::SkContourMeasureIter\28SkPath\20const&\2c\20bool\2c\20float\29 +5393:SkContourMeasure::length\28\29\20const +5394:SkContourMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29\20const +5395:SkConic::BuildUnitArc\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRotationDirection\2c\20SkMatrix\20const*\2c\20SkConic*\29 +5396:SkComputeRadialSteps\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float*\2c\20float*\2c\20int*\29 +5397:SkCompressedDataSize\28SkTextureCompressionType\2c\20SkISize\2c\20skia_private::TArray*\2c\20bool\29 +5398:SkColorTypeValidateAlphaType\28SkColorType\2c\20SkAlphaType\2c\20SkAlphaType*\29 +5399:SkColorSpaceSingletonFactory::Make\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +5400:SkColorSpace::toProfile\28skcms_ICCProfile*\29\20const +5401:SkColorSpace::makeLinearGamma\28\29\20const +5402:SkColorSpace::isSRGB\28\29\20const +5403:SkColorMatrix_RGB2YUV\28SkYUVColorSpace\2c\20float*\29 +5404:SkColorFilterShader::SkColorFilterShader\28sk_sp\2c\20float\2c\20sk_sp\29 +5405:SkColorFilter::filterColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\2c\20SkColorSpace*\29\20const +5406:SkColor4fXformer::SkColor4fXformer\28SkGradientBaseShader\20const*\2c\20SkColorSpace*\2c\20bool\29 +5407:SkCoincidentSpans::extend\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +5408:SkCodec::outputScanline\28int\29\20const +5409:SkCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +5410:SkCodec::initializeColorXform\28SkImageInfo\20const&\2c\20SkEncodedInfo::Alpha\2c\20bool\29 +5411:SkCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkSpan\2c\20SkCodec::Result*\2c\20SkPngChunkReader*\2c\20SkCodec::SelectionPolicy\29 +5412:SkChopQuadAtMaxCurvature\28SkPoint\20const*\2c\20SkPoint*\29 +5413:SkChopQuadAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +5414:SkChopMonoCubicAtX\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +5415:SkChopCubicAtInflections\28SkPoint\20const*\2c\20SkPoint*\29 +5416:SkCharToGlyphCache::findGlyphIndex\28int\29\20const +5417:SkCanvasPriv::WriteLattice\28void*\2c\20SkCanvas::Lattice\20const&\29 +5418:SkCanvasPriv::ReadLattice\28SkReadBuffer&\2c\20SkCanvas::Lattice*\29 +5419:SkCanvasPriv::ImageToColorFilter\28SkPaint*\29 +5420:SkCanvasPriv::GetDstClipAndMatrixCounts\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20int*\2c\20int*\29 +5421:SkCanvas::~SkCanvas\28\29 +5422:SkCanvas::skew\28float\2c\20float\29 +5423:SkCanvas::only_axis_aligned_saveBehind\28SkRect\20const*\29 +5424:SkCanvas::internalDrawDeviceWithFilter\28SkDevice*\2c\20SkDevice*\2c\20SkSpan>\2c\20SkPaint\20const&\2c\20SkCanvas::DeviceCompatibleWithFilter\2c\20float\2c\20bool\29 +5425:SkCanvas::getDeviceClipBounds\28\29\20const +5426:SkCanvas::experimental_DrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +5427:SkCanvas::drawVertices\28sk_sp\20const&\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +5428:SkCanvas::drawSlug\28sktext::gpu::Slug\20const*\29 +5429:SkCanvas::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +5430:SkCanvas::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +5431:SkCanvas::drawImageNine\28SkImage\20const*\2c\20SkIRect\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +5432:SkCanvas::drawClippedToSaveBehind\28SkPaint\20const&\29 +5433:SkCanvas::drawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +5434:SkCanvas::didTranslate\28float\2c\20float\29 +5435:SkCanvas::clipShader\28sk_sp\2c\20SkClipOp\29 +5436:SkCanvas::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +5437:SkCanvas::SkCanvas\28sk_sp\29 +5438:SkCanvas::ImageSetEntry::ImageSetEntry\28\29 +5439:SkCachedData::SkCachedData\28void*\2c\20unsigned\20long\29 +5440:SkCachedData::SkCachedData\28unsigned\20long\2c\20SkDiscardableMemory*\29 +5441:SkBulkGlyphMetricsAndPaths::glyphs\28SkSpan\29 +5442:SkBmpStandardCodec::decodeIcoMask\28SkStream*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +5443:SkBmpMaskCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +5444:SkBmpCodec::SkBmpCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +5445:SkBmpBaseCodec::SkBmpBaseCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +5446:SkBlurMask::ConvertRadiusToSigma\28float\29 +5447:SkBlurMask::ComputeBlurredScanline\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20unsigned\20int\2c\20float\29 +5448:SkBlurMask::BlurRect\28float\2c\20SkMaskBuilder*\2c\20SkRect\20const&\2c\20SkBlurStyle\2c\20SkIPoint*\2c\20SkMaskBuilder::CreateMode\29 +5449:SkBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +5450:SkBlitter::Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +5451:SkBlitter::ChooseSprite\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkArenaAlloc*\2c\20sk_sp\29 +5452:SkBlendShader::~SkBlendShader\28\29.1 +5453:SkBlendShader::~SkBlendShader\28\29 +5454:SkBitmapImageGetPixelRef\28SkImage\20const*\29 +5455:SkBitmapDevice::SkBitmapDevice\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\2c\20void*\29 +5456:SkBitmapDevice::Create\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\2c\20SkRasterHandleAllocator*\29 +5457:SkBitmapCache::Rec::install\28SkBitmap*\29 +5458:SkBitmapCache::Rec::diagnostic_only_getDiscardable\28\29\20const +5459:SkBitmapCache::Find\28SkBitmapCacheDesc\20const&\2c\20SkBitmap*\29 +5460:SkBitmapCache::Alloc\28SkBitmapCacheDesc\20const&\2c\20SkImageInfo\20const&\2c\20SkPixmap*\29 +5461:SkBitmapCache::Add\28std::__2::unique_ptr\2c\20SkBitmap*\29 +5462:SkBitmap::setPixelRef\28sk_sp\2c\20int\2c\20int\29 +5463:SkBitmap::setAlphaType\28SkAlphaType\29 +5464:SkBitmap::reset\28\29 +5465:SkBitmap::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +5466:SkBitmap::getAddr\28int\2c\20int\29\20const +5467:SkBitmap::allocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +5468:SkBitmap::HeapAllocator::allocPixelRef\28SkBitmap*\29 +5469:SkBinaryWriteBuffer::writeFlattenable\28SkFlattenable\20const*\29 +5470:SkBinaryWriteBuffer::writeColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +5471:SkBigPicture::SkBigPicture\28SkRect\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20sk_sp\2c\20unsigned\20long\29 +5472:SkBezierQuad::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +5473:SkBezierCubic::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +5474:SkBasicEdgeBuilder::~SkBasicEdgeBuilder\28\29 +5475:SkBaseShadowTessellator::finishPathPolygon\28\29 +5476:SkBaseShadowTessellator::computeConvexShadow\28float\2c\20float\2c\20bool\29 +5477:SkBaseShadowTessellator::computeConcaveShadow\28float\2c\20float\29 +5478:SkBaseShadowTessellator::clipUmbraPoint\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\29 +5479:SkBaseShadowTessellator::addInnerPoint\28SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20int*\29 +5480:SkBaseShadowTessellator::addEdge\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20bool\2c\20bool\29 +5481:SkBaseShadowTessellator::addArc\28SkPoint\20const&\2c\20float\2c\20bool\29 +5482:SkAutoCanvasMatrixPaint::~SkAutoCanvasMatrixPaint\28\29 +5483:SkAutoCanvasMatrixPaint::SkAutoCanvasMatrixPaint\28SkCanvas*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\2c\20SkRect\20const&\29 +5484:SkAndroidCodecAdapter::~SkAndroidCodecAdapter\28\29 +5485:SkAndroidCodecAdapter::SkAndroidCodecAdapter\28SkCodec*\29 +5486:SkAndroidCodec::~SkAndroidCodec\28\29 +5487:SkAndroidCodec::getAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const*\29 +5488:SkAndroidCodec::SkAndroidCodec\28SkCodec*\29 +5489:SkAnalyticEdge::update\28int\2c\20bool\29 +5490:SkAnalyticEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5491:SkAnalyticEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\29 +5492:SkAAClip::operator=\28SkAAClip\20const&\29 +5493:SkAAClip::op\28SkIRect\20const&\2c\20SkClipOp\29 +5494:SkAAClip::Builder::flushRow\28bool\29 +5495:SkAAClip::Builder::finish\28SkAAClip*\29 +5496:SkAAClip::Builder::Blitter::~Blitter\28\29 +5497:SkAAClip::Builder::Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +5498:Sk2DPathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +5499:SimpleImageInfo*\20emscripten::internal::raw_constructor\28\29 +5500:SimpleFontStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle\20const&\29 +5501:SharedGenerator::isTextureGenerator\28\29 +5502:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29.1 +5503:RgnOper::addSpan\28int\2c\20int\20const*\2c\20int\20const*\29 +5504:PorterDuffXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +5505:PathSegment::init\28\29 +5506:PathAddVerbsPointsWeights\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +5507:ParseSingleImage +5508:ParseHeadersInternal +5509:PS_Conv_ASCIIHexDecode +5510:Op\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\2c\20SkPath*\29 +5511:OpAsWinding::markReverse\28Contour*\2c\20Contour*\29 +5512:OpAsWinding::getDirection\28Contour&\29 +5513:OpAsWinding::checkContainerChildren\28Contour*\2c\20Contour*\29 +5514:OffsetEdge::computeCrossingDistance\28OffsetEdge\20const*\29 +5515:OT::sbix::accelerator_t::get_png_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +5516:OT::sbix::accelerator_t::choose_strike\28hb_font_t*\29\20const +5517:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +5518:OT::hmtxvmtx::accelerator_t::get_advance_with_var_unscaled\28unsigned\20int\2c\20hb_font_t*\2c\20float*\29\20const +5519:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +5520:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GPOS_impl::PosLookup\20const&\29 +5521:OT::hb_kern_machine_t::kern\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20bool\29\20const +5522:OT::hb_accelerate_subtables_context_t::return_t\20OT::Context::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +5523:OT::hb_accelerate_subtables_context_t::return_t\20OT::ChainContext::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +5524:OT::glyf_accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\29\20const +5525:OT::glyf_accelerator_t::get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29\20const +5526:OT::cmap::accelerator_t::get_variation_glyph\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_cache_t<21u\2c\2016u\2c\208u\2c\20true>*\29\20const +5527:OT::cff2::accelerator_templ_t>::accelerator_templ_t\28hb_face_t*\29 +5528:OT::cff2::accelerator_templ_t>::_fini\28\29 +5529:OT::cff1::lookup_expert_subset_charset_for_sid\28unsigned\20int\29 +5530:OT::cff1::lookup_expert_charset_for_sid\28unsigned\20int\29 +5531:OT::cff1::accelerator_templ_t>::~accelerator_templ_t\28\29 +5532:OT::cff1::accelerator_templ_t>::_fini\28\29 +5533:OT::TupleVariationData::unpack_points\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +5534:OT::SBIXStrike::get_glyph_blob\28unsigned\20int\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20unsigned\20int\2c\20unsigned\20int*\29\20const +5535:OT::RuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5536:OT::RuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +5537:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5538:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5539:OT::PaintTranslate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5540:OT::PaintSolid::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5541:OT::PaintSkewAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5542:OT::PaintSkew::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5543:OT::PaintScaleUniformAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5544:OT::PaintScaleUniform::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5545:OT::PaintScaleAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5546:OT::PaintScale::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5547:OT::PaintRotateAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5548:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5549:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5550:OT::Lookup::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +5551:OT::Layout::propagate_attachment_offsets\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5552:OT::Layout::GSUB_impl::MultipleSubstFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5553:OT::Layout::GSUB_impl::Ligature::apply\28OT::hb_ot_apply_context_t*\29\20const +5554:OT::Layout::GPOS_impl::reverse_cursive_minor_offset\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5555:OT::Layout::GPOS_impl::MarkRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5556:OT::Layout::GPOS_impl::MarkBasePosFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5557:OT::Layout::GPOS_impl::AnchorMatrix::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5558:OT::IndexSubtableRecord::get_image_data\28unsigned\20int\2c\20void\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5559:OT::FeatureVariationRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5560:OT::FeatureParams::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5561:OT::ContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5562:OT::ContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5563:OT::ContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5564:OT::ContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5565:OT::ColorStop::get_color_stop\28OT::hb_paint_context_t*\2c\20hb_color_stop_t*\2c\20unsigned\20int\2c\20OT::VarStoreInstancer\20const&\29\20const +5566:OT::ColorLine::static_get_extend\28hb_color_line_t*\2c\20void*\2c\20void*\29 +5567:OT::ChainRuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5568:OT::ChainRuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5569:OT::ChainRuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5570:OT::ChainContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5571:OT::ChainContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5572:OT::ChainContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5573:OT::ChainContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5574:OT::CBDT::accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +5575:OT::Affine2x3::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5576:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29 +5577:Load_SBit_Png +5578:LineCubicIntersections::intersectRay\28double*\29 +5579:LineCubicIntersections::VerticalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5580:LineCubicIntersections::HorizontalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5581:Launch +5582:JpegDecoderMgr::returnFalse\28char\20const*\29 +5583:JpegDecoderMgr::getEncodedColor\28SkEncodedInfo::Color*\29 +5584:JSObjectFromLineMetrics\28skia::textlayout::LineMetrics&\29 +5585:JSObjectFromGlyphInfo\28skia::textlayout::Paragraph::GlyphInfo&\29 +5586:Ins_DELTAP +5587:HandleCoincidence\28SkOpContourHead*\2c\20SkOpCoincidence*\29 +5588:GrWritePixelsTask::~GrWritePixelsTask\28\29 +5589:GrWaitRenderTask::~GrWaitRenderTask\28\29 +5590:GrVertexBufferAllocPool::makeSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +5591:GrVertexBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5592:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20SkPathFillType\2c\20skgpu::VertexWriter\29\20const +5593:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20GrEagerVertexAllocator*\29\20const +5594:GrTriangulator::mergeEdgesBelow\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5595:GrTriangulator::mergeEdgesAbove\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5596:GrTriangulator::makeSortedVertex\28SkPoint\20const&\2c\20unsigned\20char\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29\20const +5597:GrTriangulator::makeEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\29 +5598:GrTriangulator::computeBisector\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\29\20const +5599:GrTriangulator::appendQuadraticToContour\28SkPoint\20const*\2c\20float\2c\20GrTriangulator::VertexList*\29\20const +5600:GrTriangulator::SortMesh\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +5601:GrTriangulator::FindEnclosingEdges\28GrTriangulator::Vertex\20const&\2c\20GrTriangulator::EdgeList\20const&\2c\20GrTriangulator::Edge**\2c\20GrTriangulator::Edge**\29 +5602:GrTriangulator::Edge::intersect\28GrTriangulator::Edge\20const&\2c\20SkPoint*\2c\20unsigned\20char*\29\20const +5603:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29 +5604:GrThreadSafeCache::~GrThreadSafeCache\28\29 +5605:GrThreadSafeCache::findVertsWithData\28skgpu::UniqueKey\20const&\29 +5606:GrThreadSafeCache::addVertsWithData\28skgpu::UniqueKey\20const&\2c\20sk_sp\2c\20bool\20\28*\29\28SkData*\2c\20SkData*\29\29 +5607:GrThreadSafeCache::Entry::set\28skgpu::UniqueKey\20const&\2c\20sk_sp\29 +5608:GrThreadSafeCache::CreateLazyView\28GrDirectContext*\2c\20GrColorType\2c\20SkISize\2c\20GrSurfaceOrigin\2c\20SkBackingFit\29 +5609:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29 +5610:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +5611:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28GrCaps\20const&\2c\20std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20GrMipmapStatus\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\2c\20std::__2::basic_string_view>\29 +5612:GrTextureProxyPriv::setDeferredUploader\28std::__2::unique_ptr>\29 +5613:GrTextureProxy::setUniqueKey\28GrProxyProvider*\2c\20skgpu::UniqueKey\20const&\29 +5614:GrTextureProxy::clearUniqueKey\28\29 +5615:GrTextureProxy::ProxiesAreCompatibleAsDynamicState\28GrSurfaceProxy\20const*\2c\20GrSurfaceProxy\20const*\29 +5616:GrTextureProxy::GrTextureProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29.1 +5617:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::$_1::operator\28\29\28int\2c\20GrSamplerState::WrapMode\2c\20GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::Span\2c\20GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::Span\2c\20float\29\20const +5618:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::$_2::operator\28\29\28GrTextureEffect::ShaderMode\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +5619:GrTexture::markMipmapsDirty\28\29 +5620:GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +5621:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29 +5622:GrSurfaceProxy::GrSurfaceProxy\28GrBackendFormat\20const&\2c\20SkISize\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +5623:GrStyledShape::~GrStyledShape\28\29 +5624:GrStyledShape::setInheritedKey\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +5625:GrStyledShape::asRRect\28SkRRect*\2c\20SkPathDirection*\2c\20unsigned\20int*\2c\20bool*\29\20const +5626:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20SkPaint\20const&\2c\20GrStyledShape::DoSimplify\29 +5627:GrStyle::~GrStyle\28\29 +5628:GrStyle::applyToPath\28SkPath*\2c\20SkStrokeRec::InitStyle*\2c\20SkPath\20const&\2c\20float\29\20const +5629:GrStyle::applyPathEffect\28SkPath*\2c\20SkStrokeRec*\2c\20SkPath\20const&\29\20const +5630:GrStencilSettings::SetClipBitSettings\28bool\29 +5631:GrStagingBufferManager::detachBuffers\28\29 +5632:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineStruct\28char\20const*\29 +5633:GrShape::simplify\28unsigned\20int\29 +5634:GrShape::segmentMask\28\29\20const +5635:GrShape::conservativeContains\28SkRect\20const&\29\20const +5636:GrShape::closed\28\29\20const +5637:GrSWMaskHelper::toTextureView\28GrRecordingContext*\2c\20SkBackingFit\29 +5638:GrSWMaskHelper::drawShape\28GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5639:GrSWMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5640:GrResourceProvider::writePixels\28sk_sp\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\29\20const +5641:GrResourceProvider::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +5642:GrResourceProvider::prepareLevels\28GrBackendFormat\20const&\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\2c\20skia_private::AutoSTArray<14\2c\20GrMipLevel>*\2c\20skia_private::AutoSTArray<14\2c\20std::__2::unique_ptr>>*\29\20const +5643:GrResourceProvider::getExactScratch\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5644:GrResourceProvider::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5645:GrResourceProvider::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20GrColorType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMipLevel\20const*\2c\20std::__2::basic_string_view>\29 +5646:GrResourceProvider::createApproxTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5647:GrResourceCache::~GrResourceCache\28\29 +5648:GrResourceCache::removeResource\28GrGpuResource*\29 +5649:GrResourceCache::processFreedGpuResources\28\29 +5650:GrResourceCache::insertResource\28GrGpuResource*\29 +5651:GrResourceCache::didChangeBudgetStatus\28GrGpuResource*\29 +5652:GrResourceAllocator::~GrResourceAllocator\28\29 +5653:GrResourceAllocator::planAssignment\28\29 +5654:GrResourceAllocator::expire\28unsigned\20int\29 +5655:GrRenderTask::makeSkippable\28\29 +5656:GrRenderTask::isInstantiated\28\29\20const +5657:GrRenderTarget::GrRenderTarget\28GrGpu*\2c\20SkISize\20const&\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20sk_sp\29 +5658:GrRecordingContextPriv::createDevice\28skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\2c\20skgpu::ganesh::Device::InitContents\29 +5659:GrRecordingContext::init\28\29 +5660:GrRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\2c\20GrShaderCaps\20const&\29 +5661:GrQuadUtils::TessellationHelper::reset\28GrQuad\20const&\2c\20GrQuad\20const*\29 +5662:GrQuadUtils::TessellationHelper::outset\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad*\2c\20GrQuad*\29 +5663:GrQuadUtils::TessellationHelper::adjustDegenerateVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +5664:GrQuadUtils::TessellationHelper::OutsetRequest::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20GrQuad::Type\2c\20skvx::Vec<4\2c\20float>\20const&\29 +5665:GrQuadUtils::TessellationHelper::EdgeVectors::reset\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad::Type\29 +5666:GrQuadUtils::ClipToW0\28DrawQuad*\2c\20DrawQuad*\29 +5667:GrQuad::bounds\28\29\20const +5668:GrProxyProvider::~GrProxyProvider\28\29 +5669:GrProxyProvider::wrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\2c\20sk_sp\29 +5670:GrProxyProvider::removeUniqueKeyFromProxy\28GrTextureProxy*\29 +5671:GrProxyProvider::processInvalidUniqueKeyImpl\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\2c\20GrProxyProvider::RemoveTableEntry\29 +5672:GrProxyProvider::createLazyProxy\28std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20GrMipmapStatus\2c\20GrInternalSurfaceFlags\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +5673:GrProxyProvider::contextID\28\29\20const +5674:GrProxyProvider::adoptUniqueKeyFromSurface\28GrTextureProxy*\2c\20GrSurface\20const*\29 +5675:GrPixmapBase::clip\28SkISize\2c\20SkIPoint*\29 +5676:GrPixmap::GrPixmap\28GrImageInfo\2c\20sk_sp\2c\20unsigned\20long\29 +5677:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20sk_sp\2c\20GrAppliedHardClip\20const&\29 +5678:GrPersistentCacheUtils::GetType\28SkReadBuffer*\29 +5679:GrPathUtils::QuadUVMatrix::set\28SkPoint\20const*\29 +5680:GrPathTessellationShader::MakeStencilOnlyPipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedHardClip\20const&\2c\20GrPipeline::InputFlags\29 +5681:GrPaint::setCoverageSetOpXPFactory\28SkRegion::Op\2c\20bool\29 +5682:GrOvalOpFactory::MakeOvalOp\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\2c\20GrShaderCaps\20const*\29 +5683:GrOpsRenderPass::drawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +5684:GrOpsRenderPass::drawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5685:GrOpsRenderPass::drawIndexPattern\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5686:GrOpFlushState::reset\28\29 +5687:GrOpFlushState::executeDrawsAndUploadsForMeshDrawOp\28GrOp\20const*\2c\20SkRect\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +5688:GrOpFlushState::addASAPUpload\28std::__2::function&\29>&&\29 +5689:GrOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5690:GrOp::combineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5691:GrOnFlushResourceProvider::instantiateProxy\28GrSurfaceProxy*\29 +5692:GrMeshDrawTarget::allocMesh\28\29 +5693:GrMeshDrawOp::PatternHelper::init\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +5694:GrMeshDrawOp::CombinedQuadCountWillOverflow\28GrAAType\2c\20bool\2c\20int\29 +5695:GrMemoryPool::allocate\28unsigned\20long\29 +5696:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::changed\28\29 +5697:GrIndexBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20int*\29 +5698:GrIndexBufferAllocPool::makeSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5699:GrImageInfo::refColorSpace\28\29\20const +5700:GrImageInfo::minRowBytes\28\29\20const +5701:GrImageInfo::makeDimensions\28SkISize\29\20const +5702:GrImageInfo::bpp\28\29\20const +5703:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20int\2c\20int\29 +5704:GrImageContext::abandonContext\28\29 +5705:GrGpuResource::makeBudgeted\28\29 +5706:GrGpuResource::getResourceName\28\29\20const +5707:GrGpuResource::abandon\28\29 +5708:GrGpuResource::CreateUniqueID\28\29 +5709:GrGpu::~GrGpu\28\29 +5710:GrGpu::regenerateMipMapLevels\28GrTexture*\29 +5711:GrGpu::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5712:GrGpu::createTextureCommon\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +5713:GrGeometryProcessor::AttributeSet::addToKey\28skgpu::KeyBuilder*\29\20const +5714:GrGLVertexArray::invalidateCachedState\28\29 +5715:GrGLTextureParameters::invalidate\28\29 +5716:GrGLTexture::MakeWrapped\28GrGLGpu*\2c\20GrMipmapStatus\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrWrapCacheable\2c\20GrIOType\2c\20std::__2::basic_string_view>\29 +5717:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20skgpu::Budgeted\2c\20GrGLTexture::Desc\20const&\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5718:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5719:GrGLSLVaryingHandler::getFragDecls\28SkString*\2c\20SkString*\29\20const +5720:GrGLSLVaryingHandler::addAttribute\28GrShaderVar\20const&\29 +5721:GrGLSLUniformHandler::liftUniformToVertexShader\28GrProcessor\20const&\2c\20SkString\29 +5722:GrGLSLShaderBuilder::finalize\28unsigned\20int\29 +5723:GrGLSLShaderBuilder::emitFunction\28char\20const*\2c\20char\20const*\29 +5724:GrGLSLShaderBuilder::emitFunctionPrototype\28char\20const*\29 +5725:GrGLSLShaderBuilder::appendTextureLookupAndBlend\28char\20const*\2c\20SkBlendMode\2c\20GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +5726:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29::$_0::operator\28\29\28char\20const*\2c\20GrResourceHandle\2c\20skcms_TFType\29\20const +5727:GrGLSLShaderBuilder::addLayoutQualifier\28char\20const*\2c\20GrGLSLShaderBuilder::InterfaceQualifier\29 +5728:GrGLSLShaderBuilder::GrGLSLShaderBuilder\28GrGLSLProgramBuilder*\29 +5729:GrGLSLProgramDataManager::setRuntimeEffectUniforms\28SkSpan\2c\20SkSpan\20const>\2c\20SkSpan\2c\20void\20const*\29\20const +5730:GrGLSLProgramBuilder::~GrGLSLProgramBuilder\28\29 +5731:GrGLSLBlend::SetBlendModeUniformData\28GrGLSLProgramDataManager\20const&\2c\20GrResourceHandle\2c\20SkBlendMode\29 +5732:GrGLSLBlend::BlendExpression\28GrProcessor\20const*\2c\20GrGLSLUniformHandler*\2c\20GrResourceHandle*\2c\20char\20const*\2c\20char\20const*\2c\20SkBlendMode\29 +5733:GrGLRenderTarget::GrGLRenderTarget\28GrGLGpu*\2c\20SkISize\20const&\2c\20GrGLFormat\2c\20int\2c\20GrGLRenderTarget::IDs\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5734:GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5735:GrGLProgramDataManager::set2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5736:GrGLProgramBuilder::uniformHandler\28\29 +5737:GrGLProgramBuilder::PrecompileProgram\28GrDirectContext*\2c\20GrGLPrecompiledProgram*\2c\20SkData\20const&\29::$_0::operator\28\29\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int\29\20const +5738:GrGLProgramBuilder::CreateProgram\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrGLPrecompiledProgram\20const*\29 +5739:GrGLProgram::~GrGLProgram\28\29 +5740:GrGLMakeAssembledInterface\28void*\2c\20void\20\28*\20\28*\29\28void*\2c\20char\20const*\29\29\28\29\29 +5741:GrGLGpu::~GrGLGpu\28\29 +5742:GrGLGpu::uploadTexData\28SkISize\2c\20unsigned\20int\2c\20SkIRect\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\2c\20GrMipLevel\20const*\2c\20int\29 +5743:GrGLGpu::uploadCompressedTexData\28SkTextureCompressionType\2c\20GrGLFormat\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20unsigned\20int\2c\20void\20const*\2c\20unsigned\20long\29 +5744:GrGLGpu::uploadColorToTex\28GrGLFormat\2c\20SkISize\2c\20unsigned\20int\2c\20std::__2::array\2c\20unsigned\20int\29 +5745:GrGLGpu::readOrTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20int\29 +5746:GrGLGpu::getCompatibleStencilIndex\28GrGLFormat\29 +5747:GrGLGpu::deleteSync\28__GLsync*\29 +5748:GrGLGpu::createRenderTargetObjects\28GrGLTexture::Desc\20const&\2c\20int\2c\20GrGLRenderTarget::IDs*\29 +5749:GrGLGpu::createCompressedTexture2D\28SkISize\2c\20SkTextureCompressionType\2c\20GrGLFormat\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrGLTextureParameters::SamplerOverriddenState*\29 +5750:GrGLGpu::bindFramebuffer\28unsigned\20int\2c\20unsigned\20int\29 +5751:GrGLGpu::ProgramCache::reset\28\29 +5752:GrGLGpu::ProgramCache::findOrCreateProgramImpl\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrThreadSafePipelineBuilder::Stats::ProgramCacheResult*\29 +5753:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29 +5754:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\29 +5755:GrGLFormatIsCompressed\28GrGLFormat\29 +5756:GrGLContext::~GrGLContext\28\29.1 +5757:GrGLContext::~GrGLContext\28\29 +5758:GrGLCaps::~GrGLCaps\28\29 +5759:GrGLCaps::getTexSubImageExternalFormatAndType\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5760:GrGLCaps::getTexSubImageDefaultFormatTypeAndColorType\28GrGLFormat\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20GrColorType*\29\20const +5761:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrGLFormat\29\20const +5762:GrGLCaps::formatSupportsTexStorage\28GrGLFormat\29\20const +5763:GrGLCaps::canCopyAsDraw\28GrGLFormat\2c\20bool\2c\20bool\29\20const +5764:GrGLCaps::canCopyAsBlit\28GrGLFormat\2c\20int\2c\20GrTextureType\20const*\2c\20GrGLFormat\2c\20int\2c\20GrTextureType\20const*\2c\20SkRect\20const&\2c\20bool\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29\20const +5765:GrFragmentProcessor::~GrFragmentProcessor\28\29 +5766:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5767:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5768:GrFragmentProcessor::ProgramImpl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +5769:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::Make\28std::__2::unique_ptr>\29 +5770:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +5771:GrFragmentProcessor::ClampOutput\28std::__2::unique_ptr>\29 +5772:GrFixedClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +5773:GrFixedClip::getConservativeBounds\28\29\20const +5774:GrFixedClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +5775:GrFinishCallbacks::check\28\29 +5776:GrEagerDynamicVertexAllocator::unlock\28int\29 +5777:GrDynamicAtlas::readView\28GrCaps\20const&\29\20const +5778:GrDynamicAtlas::instantiate\28GrOnFlushResourceProvider*\2c\20sk_sp\29 +5779:GrDriverBugWorkarounds::GrDriverBugWorkarounds\28\29 +5780:GrDrawingManager::getLastRenderTask\28GrSurfaceProxy\20const*\29\20const +5781:GrDrawingManager::flush\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +5782:GrDrawOpAtlasConfig::atlasDimensions\28skgpu::MaskFormat\29\20const +5783:GrDrawOpAtlasConfig::GrDrawOpAtlasConfig\28int\2c\20unsigned\20long\29 +5784:GrDrawOpAtlas::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +5785:GrDrawOpAtlas::Make\28GrProxyProvider*\2c\20GrBackendFormat\20const&\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20int\2c\20int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20GrDrawOpAtlas::AllowMultitexturing\2c\20skgpu::PlotEvictionCallback*\2c\20std::__2::basic_string_view>\29 +5786:GrDistanceFieldA8TextGeoProc::onTextureSampler\28int\29\20const +5787:GrDistanceFieldA8TextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5788:GrDisableColorXPFactory::MakeXferProcessor\28\29 +5789:GrDirectContextPriv::validPMUPMConversionExists\28\29 +5790:GrDirectContext::~GrDirectContext\28\29 +5791:GrDirectContext::onGetSmallPathAtlasMgr\28\29 +5792:GrDirectContext::getResourceCacheLimits\28int*\2c\20unsigned\20long*\29\20const +5793:GrCopyRenderTask::~GrCopyRenderTask\28\29 +5794:GrCopyRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +5795:GrCopyBaseMipMapToView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Budgeted\29 +5796:GrContext_Base::threadSafeProxy\28\29 +5797:GrContext_Base::maxSurfaceSampleCountForColorType\28SkColorType\29\20const +5798:GrContext_Base::backend\28\29\20const +5799:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29 +5800:GrColorInfo::makeColorType\28GrColorType\29\20const +5801:GrColorInfo::isLinearlyBlended\28\29\20const +5802:GrColorFragmentProcessorAnalysis::GrColorFragmentProcessorAnalysis\28GrProcessorAnalysisColor\20const&\2c\20std::__2::unique_ptr>\20const*\2c\20int\29 +5803:GrClip::IsPixelAligned\28SkRect\20const&\29 +5804:GrCaps::surfaceSupportsWritePixels\28GrSurface\20const*\29\20const +5805:GrCaps::getDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\2c\20bool\29\20const +5806:GrCPixmap::GrCPixmap\28GrPixmap\20const&\29 +5807:GrBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\2c\20unsigned\20long*\29 +5808:GrBufferAllocPool::createBlock\28unsigned\20long\29 +5809:GrBufferAllocPool::CpuBufferCache::makeBuffer\28unsigned\20long\2c\20bool\29 +5810:GrBlurUtils::draw_shape_with_mask_filter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\29 +5811:GrBlurUtils::draw_mask\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrPaint&&\2c\20GrSurfaceProxyView\29 +5812:GrBlurUtils::create_integral_table\28float\2c\20SkBitmap*\29 +5813:GrBlurUtils::convolve_gaussian\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20SkIRect\2c\20SkIRect\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkBackingFit\29 +5814:GrBlurUtils::\28anonymous\20namespace\29::make_texture_effect\28GrCaps\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20GrSamplerState\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkISize\20const&\29 +5815:GrBitmapTextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5816:GrBicubicEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +5817:GrBicubicEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +5818:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20std::__2::basic_string_view>\29 +5819:GrBackendTexture::operator=\28GrBackendTexture\20const&\29 +5820:GrBackendRenderTargets::MakeGL\28int\2c\20int\2c\20int\2c\20int\2c\20GrGLFramebufferInfo\20const&\29 +5821:GrBackendRenderTargets::GetGLFramebufferInfo\28GrBackendRenderTarget\20const&\2c\20GrGLFramebufferInfo*\29 +5822:GrBackendRenderTarget::~GrBackendRenderTarget\28\29 +5823:GrBackendRenderTarget::isProtected\28\29\20const +5824:GrBackendFormatBytesPerBlock\28GrBackendFormat\20const&\29 +5825:GrBackendFormat::makeTexture2D\28\29\20const +5826:GrBackendFormat::isMockStencilFormat\28\29\20const +5827:GrBackendFormat::MakeMock\28GrColorType\2c\20SkTextureCompressionType\2c\20bool\29 +5828:GrAuditTrail::opsCombined\28GrOp\20const*\2c\20GrOp\20const*\29 +5829:GrAttachment::ComputeSharedAttachmentUniqueKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20GrAttachment::UsageFlags\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMemoryless\2c\20skgpu::UniqueKey*\29 +5830:GrAtlasManager::~GrAtlasManager\28\29 +5831:GrAtlasManager::getViews\28skgpu::MaskFormat\2c\20unsigned\20int*\29 +5832:GrAtlasManager::freeAll\28\29 +5833:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::EventList*\2c\20GrTriangulator::Comparator\20const&\29\20const +5834:GrAATriangulator::collapseOverlapRegions\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\2c\20GrAATriangulator::EventComparator\29 +5835:GrAAConvexTessellator::quadTo\28SkPoint\20const*\29 +5836:GetVariationDesignPosition\28AutoFTAccess&\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20int\29 +5837:GetShapedLines\28skia::textlayout::Paragraph&\29 +5838:GetLargeValue +5839:FontMgrRunIterator::endOfCurrentRun\28\29\20const +5840:FontMgrRunIterator::atEnd\28\29\20const +5841:FinishRow +5842:FindUndone\28SkOpContourHead*\29 +5843:FT_Stream_Close +5844:FT_Sfnt_Table_Info +5845:FT_Render_Glyph_Internal +5846:FT_Remove_Module +5847:FT_Outline_Get_Orientation +5848:FT_Outline_EmboldenXY +5849:FT_New_Library +5850:FT_New_GlyphSlot +5851:FT_List_Iterate +5852:FT_List_Find +5853:FT_List_Finalize +5854:FT_GlyphLoader_CheckSubGlyphs +5855:FT_Get_Postscript_Name +5856:FT_Get_Paint_Layers +5857:FT_Get_PS_Font_Info +5858:FT_Get_Kerning +5859:FT_Get_Glyph_Name +5860:FT_Get_FSType_Flags +5861:FT_Get_Colorline_Stops +5862:FT_Get_Color_Glyph_ClipBox +5863:FT_Bitmap_Convert +5864:FT_Add_Default_Modules +5865:EllipticalRRectOp::~EllipticalRRectOp\28\29.1 +5866:EllipticalRRectOp::~EllipticalRRectOp\28\29 +5867:EllipticalRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5868:EllipticalRRectOp::RRect&\20skia_private::TArray::emplace_back\28EllipticalRRectOp::RRect&&\29 +5869:EllipticalRRectOp::EllipticalRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20SkPoint\2c\20bool\29 +5870:EllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5871:EllipseOp::EllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20EllipseOp::DeviceSpaceParams\20const&\2c\20SkStrokeRec\20const&\29 +5872:EllipseGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5873:DIEllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5874:DIEllipseOp::DIEllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20DIEllipseOp::DeviceSpaceParams\20const&\2c\20SkMatrix\20const&\29 +5875:CustomXP::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +5876:CustomXP::makeProgramImpl\28\29\20const::Impl::emitBlendCodeForDstRead\28GrGLSLXPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20GrXferProcessor\20const&\29 +5877:Cr_z_deflateReset +5878:Cr_z_deflate +5879:Cr_z_crc32_z +5880:CoverageSetOpXP::onIsEqual\28GrXferProcessor\20const&\29\20const +5881:CircularRRectOp::~CircularRRectOp\28\29.1 +5882:CircularRRectOp::~CircularRRectOp\28\29 +5883:CircularRRectOp::CircularRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +5884:CircleOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5885:CircleOp::CircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5886:CircleGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5887:CheckDecBuffer +5888:CFF::path_procs_t::rlineto\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +5889:CFF::dict_interpreter_t\2c\20CFF::interp_env_t>::interpret\28CFF::cff1_private_dict_values_base_t&\29 +5890:CFF::cff2_cs_opset_t::process_blend\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\29 +5891:CFF::FDSelect3_4\2c\20OT::IntType>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5892:CFF::Charset::get_sid\28unsigned\20int\2c\20unsigned\20int\2c\20CFF::code_pair_t*\29\20const +5893:CFF::CFFIndex>::get_size\28\29\20const +5894:CFF::CFF2FDSelect::get_fd\28unsigned\20int\29\20const +5895:ButtCapDashedCircleOp::ButtCapDashedCircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +5896:BuildHuffmanTable +5897:AsWinding\28SkPath\20const&\2c\20SkPath*\29 +5898:AngleWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20bool*\29 +5899:AddIntersectTs\28SkOpContour*\2c\20SkOpContour*\2c\20SkOpCoincidence*\29 +5900:ActiveEdgeList::replace\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +5901:ActiveEdgeList::remove\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5902:ActiveEdgeList::insert\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5903:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5904:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5905:AAT::TrackData::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5906:AAT::TrackData::get_tracking\28void\20const*\2c\20float\29\20const +5907:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5908:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5909:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5910:AAT::RearrangementSubtable::driver_context_t::transition\28AAT::StateTableDriver*\2c\20AAT::Entry\20const&\29 +5911:AAT::NoncontextualSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +5912:AAT::Lookup>::sanitize\28hb_sanitize_context_t*\29\20const +5913:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +5914:AAT::InsertionSubtable::driver_context_t::transition\28AAT::StateTableDriver::EntryData>*\2c\20AAT::Entry::EntryData>\20const&\29 +5915:ycck_cmyk_convert +5916:ycc_rgb_convert +5917:ycc_rgb565_convert +5918:ycc_rgb565D_convert +5919:xyzd50_to_lab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5920:xyzd50_to_hcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5921:wuffs_gif__decoder__tell_me_more +5922:wuffs_gif__decoder__set_report_metadata +5923:wuffs_gif__decoder__num_decoded_frame_configs +5924:wuffs_base__pixel_swizzler__xxxxxxxx__index_binary_alpha__src_over +5925:wuffs_base__pixel_swizzler__xxxxxxxx__index__src +5926:wuffs_base__pixel_swizzler__xxxx__index_binary_alpha__src_over +5927:wuffs_base__pixel_swizzler__xxxx__index__src +5928:wuffs_base__pixel_swizzler__xxx__index_binary_alpha__src_over +5929:wuffs_base__pixel_swizzler__xxx__index__src +5930:wuffs_base__pixel_swizzler__transparent_black_src_over +5931:wuffs_base__pixel_swizzler__transparent_black_src +5932:wuffs_base__pixel_swizzler__copy_1_1 +5933:wuffs_base__pixel_swizzler__bgr_565__index_binary_alpha__src_over +5934:wuffs_base__pixel_swizzler__bgr_565__index__src +5935:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\2c\20int&&\29 +5936:void\20std::__2::vector>::__emplace_back_slow_path\20const&>\28unsigned\20char\20const&\2c\20sk_sp\20const&\29 +5937:void\20std::__2::__call_once_proxy\5babi:v160004\5d>\28void*\29 +5938:void\20std::__2::__call_once_proxy\5babi:v160004\5d>\28void*\29 +5939:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +5940:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +5941:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +5942:void\20emscripten::internal::raw_destructor\28SkVertices::Builder*\29 +5943:void\20emscripten::internal::raw_destructor\28SkPictureRecorder*\29 +5944:void\20emscripten::internal::raw_destructor\28SkPath*\29 +5945:void\20emscripten::internal::raw_destructor\28SkPaint*\29 +5946:void\20emscripten::internal::raw_destructor\28SkContourMeasureIter*\29 +5947:void\20emscripten::internal::raw_destructor\28SimpleImageInfo*\29 +5948:void\20emscripten::internal::MemberAccess::setWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleTextStyle*\29 +5949:void\20emscripten::internal::MemberAccess::setWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleStrutStyle*\29 +5950:void\20emscripten::internal::MemberAccess>::setWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo&\2c\20sk_sp*\29 +5951:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::TypefaceFontProvider*\29 +5952:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::ParagraphBuilderImpl*\29 +5953:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::Paragraph*\29 +5954:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::FontCollection*\29 +5955:void\20const*\20emscripten::internal::getActualType\28SkVertices*\29 +5956:void\20const*\20emscripten::internal::getActualType\28SkVertices::Builder*\29 +5957:void\20const*\20emscripten::internal::getActualType\28SkTypeface*\29 +5958:void\20const*\20emscripten::internal::getActualType\28SkTextBlob*\29 +5959:void\20const*\20emscripten::internal::getActualType\28SkSurface*\29 +5960:void\20const*\20emscripten::internal::getActualType\28SkShader*\29 +5961:void\20const*\20emscripten::internal::getActualType\28SkRuntimeEffect*\29 +5962:void\20const*\20emscripten::internal::getActualType\28SkPictureRecorder*\29 +5963:void\20const*\20emscripten::internal::getActualType\28SkPicture*\29 +5964:void\20const*\20emscripten::internal::getActualType\28SkPathEffect*\29 +5965:void\20const*\20emscripten::internal::getActualType\28SkPath*\29 +5966:void\20const*\20emscripten::internal::getActualType\28SkPaint*\29 +5967:void\20const*\20emscripten::internal::getActualType\28SkMaskFilter*\29 +5968:void\20const*\20emscripten::internal::getActualType\28SkImageFilter*\29 +5969:void\20const*\20emscripten::internal::getActualType\28SkImage*\29 +5970:void\20const*\20emscripten::internal::getActualType\28SkFontMgr*\29 +5971:void\20const*\20emscripten::internal::getActualType\28SkFont*\29 +5972:void\20const*\20emscripten::internal::getActualType\28SkContourMeasureIter*\29 +5973:void\20const*\20emscripten::internal::getActualType\28SkContourMeasure*\29 +5974:void\20const*\20emscripten::internal::getActualType\28SkColorSpace*\29 +5975:void\20const*\20emscripten::internal::getActualType\28SkColorFilter*\29 +5976:void\20const*\20emscripten::internal::getActualType\28SkCanvas*\29 +5977:void\20const*\20emscripten::internal::getActualType\28SkBlender*\29 +5978:void\20const*\20emscripten::internal::getActualType\28SkAnimatedImage*\29 +5979:void\20const*\20emscripten::internal::getActualType\28GrDirectContext*\29 +5980:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5981:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5982:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5983:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5984:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5985:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5986:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5987:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5988:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5989:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5990:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5991:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5992:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5993:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5994:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5995:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5996:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5997:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5998:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5999:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6000:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6001:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6002:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6003:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6004:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6005:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6006:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6007:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6008:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6009:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6010:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6011:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6012:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6013:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6014:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6015:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6016:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6017:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6018:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6019:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6020:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6021:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6022:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6023:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6024:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6025:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6026:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6027:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6028:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6029:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6030:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6031:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6032:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6033:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6034:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6035:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6036:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6037:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6038:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6039:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6040:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6041:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6042:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6043:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6044:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6045:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6046:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6047:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6048:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6049:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6050:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6051:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6052:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6053:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6054:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6055:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6056:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6057:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6058:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6059:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6060:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6061:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6062:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6063:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6064:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6065:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6066:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6067:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6068:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6069:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6070:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6071:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6072:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6073:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6074:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6075:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6076:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6077:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6078:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&fast_swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6079:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6080:void\20SkSwizzler::SkipLeading8888ZerosThen<&swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6081:void\20SkSwizzler::SkipLeading8888ZerosThen<&swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6082:void\20SkSwizzler::SkipLeading8888ZerosThen<&swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6083:void\20SkSwizzler::SkipLeading8888ZerosThen<&sample4\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6084:void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6085:void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6086:void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6087:void\20SkSwizzler::SkipLeading8888ZerosThen<©\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6088:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +6089:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +6090:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29.1 +6091:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29 +6092:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29.1 +6093:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29 +6094:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +6095:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +6096:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +6097:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +6098:virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +6099:virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +6100:virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +6101:virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +6102:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29.1 +6103:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29 +6104:virtual\20thunk\20to\20GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +6105:virtual\20thunk\20to\20GrTextureProxy::instantiate\28GrResourceProvider*\29 +6106:virtual\20thunk\20to\20GrTextureProxy::getUniqueKey\28\29\20const +6107:virtual\20thunk\20to\20GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +6108:virtual\20thunk\20to\20GrTextureProxy::callbackDesc\28\29\20const +6109:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29\20const +6110:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29 +6111:virtual\20thunk\20to\20GrTexture::onGpuMemorySize\28\29\20const +6112:virtual\20thunk\20to\20GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +6113:virtual\20thunk\20to\20GrTexture::asTexture\28\29\20const +6114:virtual\20thunk\20to\20GrTexture::asTexture\28\29 +6115:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +6116:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +6117:virtual\20thunk\20to\20GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +6118:virtual\20thunk\20to\20GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +6119:virtual\20thunk\20to\20GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +6120:virtual\20thunk\20to\20GrRenderTargetProxy::callbackDesc\28\29\20const +6121:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29\20const +6122:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29 +6123:virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +6124:virtual\20thunk\20to\20GrRenderTarget::onAbandon\28\29 +6125:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29\20const +6126:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29 +6127:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +6128:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +6129:virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +6130:virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +6131:virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +6132:virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +6133:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29.1 +6134:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29 +6135:virtual\20thunk\20to\20GrGLTexture::onRelease\28\29 +6136:virtual\20thunk\20to\20GrGLTexture::onAbandon\28\29 +6137:virtual\20thunk\20to\20GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +6138:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +6139:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +6140:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::onFinalize\28\29 +6141:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +6142:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29 +6143:virtual\20thunk\20to\20GrGLRenderTarget::onRelease\28\29 +6144:virtual\20thunk\20to\20GrGLRenderTarget::onGpuMemorySize\28\29\20const +6145:virtual\20thunk\20to\20GrGLRenderTarget::onAbandon\28\29 +6146:virtual\20thunk\20to\20GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +6147:virtual\20thunk\20to\20GrGLRenderTarget::backendFormat\28\29\20const +6148:utf8TextMapOffsetToNative\28UText\20const*\29 +6149:utf8TextMapIndexToUTF16\28UText\20const*\2c\20long\20long\29 +6150:utf8TextLength\28UText*\29 +6151:utf8TextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +6152:utf8TextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +6153:utext_openUTF8_73 +6154:ures_loc_resetLocales\28UEnumeration*\2c\20UErrorCode*\29 +6155:ures_loc_nextLocale\28UEnumeration*\2c\20int*\2c\20UErrorCode*\29 +6156:ures_loc_countLocales\28UEnumeration*\2c\20UErrorCode*\29 +6157:ures_loc_closeLocales\28UEnumeration*\29 +6158:ures_cleanup\28\29 +6159:unistrTextReplace\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t\20const*\2c\20int\2c\20UErrorCode*\29 +6160:unistrTextLength\28UText*\29 +6161:unistrTextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +6162:unistrTextCopy\28UText*\2c\20long\20long\2c\20long\20long\2c\20long\20long\2c\20signed\20char\2c\20UErrorCode*\29 +6163:unistrTextClose\28UText*\29 +6164:unistrTextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +6165:unistrTextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +6166:uloc_kw_resetKeywords\28UEnumeration*\2c\20UErrorCode*\29 +6167:uloc_kw_nextKeyword\28UEnumeration*\2c\20int*\2c\20UErrorCode*\29 +6168:uloc_kw_countKeywords\28UEnumeration*\2c\20UErrorCode*\29 +6169:uloc_kw_closeKeywords\28UEnumeration*\29 +6170:uloc_key_type_cleanup\28\29 +6171:uloc_getDefault_73 +6172:uhash_hashUnicodeString_73 +6173:uhash_hashUChars_73 +6174:uhash_hashIChars_73 +6175:uhash_deleteHashtable_73 +6176:uhash_compareUnicodeString_73 +6177:uhash_compareUChars_73 +6178:uhash_compareLong_73 +6179:uhash_compareIChars_73 +6180:uenum_unextDefault_73 +6181:udata_cleanup\28\29 +6182:ucstrTextLength\28UText*\29 +6183:ucstrTextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +6184:ucstrTextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +6185:ubrk_setUText_73 +6186:ubrk_setText_73 +6187:ubrk_preceding_73 +6188:ubrk_open_73 +6189:ubrk_next_73 +6190:ubrk_getRuleStatus_73 +6191:ubrk_following_73 +6192:ubrk_first_73 +6193:ubrk_current_73 +6194:ubidi_reorderVisual_73 +6195:ubidi_openSized_73 +6196:ubidi_getLevelAt_73 +6197:ubidi_getLength_73 +6198:ubidi_getDirection_73 +6199:u_strToUpper_73 +6200:u_isspace_73 +6201:u_iscntrl_73 +6202:u_isWhitespace_73 +6203:u_errorName_73 +6204:tt_vadvance_adjust +6205:tt_slot_init +6206:tt_size_select +6207:tt_size_reset_iterator +6208:tt_size_request +6209:tt_size_init +6210:tt_size_done +6211:tt_sbit_decoder_load_png +6212:tt_sbit_decoder_load_compound +6213:tt_sbit_decoder_load_byte_aligned +6214:tt_sbit_decoder_load_bit_aligned +6215:tt_property_set +6216:tt_property_get +6217:tt_name_ascii_from_utf16 +6218:tt_name_ascii_from_other +6219:tt_hadvance_adjust +6220:tt_glyph_load +6221:tt_get_var_blend +6222:tt_get_interface +6223:tt_get_glyph_name +6224:tt_get_cmap_info +6225:tt_get_advances +6226:tt_face_set_sbit_strike +6227:tt_face_load_strike_metrics +6228:tt_face_load_sbit_image +6229:tt_face_load_sbit +6230:tt_face_load_post +6231:tt_face_load_pclt +6232:tt_face_load_os2 +6233:tt_face_load_name +6234:tt_face_load_maxp +6235:tt_face_load_kern +6236:tt_face_load_hmtx +6237:tt_face_load_hhea +6238:tt_face_load_head +6239:tt_face_load_gasp +6240:tt_face_load_font_dir +6241:tt_face_load_cpal +6242:tt_face_load_colr +6243:tt_face_load_cmap +6244:tt_face_load_bhed +6245:tt_face_load_any +6246:tt_face_init +6247:tt_face_goto_table +6248:tt_face_get_paint_layers +6249:tt_face_get_paint +6250:tt_face_get_kerning +6251:tt_face_get_colr_layer +6252:tt_face_get_colr_glyph_paint +6253:tt_face_get_colorline_stops +6254:tt_face_get_color_glyph_clipbox +6255:tt_face_free_sbit +6256:tt_face_free_ps_names +6257:tt_face_free_name +6258:tt_face_free_cpal +6259:tt_face_free_colr +6260:tt_face_done +6261:tt_face_colr_blend_layer +6262:tt_driver_init +6263:tt_cvt_ready_iterator +6264:tt_cmap_unicode_init +6265:tt_cmap_unicode_char_next +6266:tt_cmap_unicode_char_index +6267:tt_cmap_init +6268:tt_cmap8_validate +6269:tt_cmap8_get_info +6270:tt_cmap8_char_next +6271:tt_cmap8_char_index +6272:tt_cmap6_validate +6273:tt_cmap6_get_info +6274:tt_cmap6_char_next +6275:tt_cmap6_char_index +6276:tt_cmap4_validate +6277:tt_cmap4_init +6278:tt_cmap4_get_info +6279:tt_cmap4_char_next +6280:tt_cmap4_char_index +6281:tt_cmap2_validate +6282:tt_cmap2_get_info +6283:tt_cmap2_char_next +6284:tt_cmap2_char_index +6285:tt_cmap14_variants +6286:tt_cmap14_variant_chars +6287:tt_cmap14_validate +6288:tt_cmap14_init +6289:tt_cmap14_get_info +6290:tt_cmap14_done +6291:tt_cmap14_char_variants +6292:tt_cmap14_char_var_isdefault +6293:tt_cmap14_char_var_index +6294:tt_cmap14_char_next +6295:tt_cmap13_validate +6296:tt_cmap13_get_info +6297:tt_cmap13_char_next +6298:tt_cmap13_char_index +6299:tt_cmap12_validate +6300:tt_cmap12_get_info +6301:tt_cmap12_char_next +6302:tt_cmap12_char_index +6303:tt_cmap10_validate +6304:tt_cmap10_get_info +6305:tt_cmap10_char_next +6306:tt_cmap10_char_index +6307:tt_cmap0_validate +6308:tt_cmap0_get_info +6309:tt_cmap0_char_next +6310:tt_cmap0_char_index +6311:transform_scanline_rgbA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6312:transform_scanline_memcpy\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6313:transform_scanline_bgra_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6314:transform_scanline_bgra_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6315:transform_scanline_bgr_101010x_xr\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6316:transform_scanline_bgr_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6317:transform_scanline_bgrA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6318:transform_scanline_RGBX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6319:transform_scanline_F32_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6320:transform_scanline_F32\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6321:transform_scanline_F16_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6322:transform_scanline_F16\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6323:transform_scanline_BGRX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6324:transform_scanline_BGRA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6325:transform_scanline_A8_to_GrayAlpha\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6326:transform_scanline_565\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6327:transform_scanline_444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6328:transform_scanline_4444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6329:transform_scanline_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6330:transform_scanline_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6331:transform_scanline_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6332:t2_hints_stems +6333:t2_hints_open +6334:t1_make_subfont +6335:t1_hints_stem +6336:t1_hints_open +6337:t1_decrypt +6338:t1_decoder_parse_metrics +6339:t1_decoder_init +6340:t1_decoder_done +6341:t1_cmap_unicode_init +6342:t1_cmap_unicode_char_next +6343:t1_cmap_unicode_char_index +6344:t1_cmap_std_done +6345:t1_cmap_std_char_next +6346:t1_cmap_std_char_index +6347:t1_cmap_standard_init +6348:t1_cmap_expert_init +6349:t1_cmap_custom_init +6350:t1_cmap_custom_done +6351:t1_cmap_custom_char_next +6352:t1_cmap_custom_char_index +6353:t1_builder_start_point +6354:t1_builder_init +6355:t1_builder_add_point1 +6356:t1_builder_add_point +6357:t1_builder_add_contour +6358:swizzle_small_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6359:swizzle_small_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6360:swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6361:swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6362:swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6363:swizzle_rgba16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6364:swizzle_rgba16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6365:swizzle_rgba16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6366:swizzle_rgba16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6367:swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6368:swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6369:swizzle_rgb_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6370:swizzle_rgb16_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6371:swizzle_rgb16_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6372:swizzle_rgb16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6373:swizzle_mask32_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6374:swizzle_mask32_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6375:swizzle_mask32_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6376:swizzle_mask32_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6377:swizzle_mask32_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6378:swizzle_mask32_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6379:swizzle_mask32_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6380:swizzle_mask24_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6381:swizzle_mask24_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6382:swizzle_mask24_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6383:swizzle_mask24_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6384:swizzle_mask24_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6385:swizzle_mask24_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6386:swizzle_mask24_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6387:swizzle_mask16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6388:swizzle_mask16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6389:swizzle_mask16_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6390:swizzle_mask16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6391:swizzle_mask16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6392:swizzle_mask16_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6393:swizzle_mask16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6394:swizzle_index_to_n32_skipZ\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6395:swizzle_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6396:swizzle_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6397:swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6398:swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6399:swizzle_grayalpha_to_a8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6400:swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6401:swizzle_gray_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6402:swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6403:swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6404:swizzle_cmyk_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6405:swizzle_bit_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6406:swizzle_bit_to_grayscale\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6407:swizzle_bit_to_f16\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6408:swizzle_bit_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6409:swizzle_bgr_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6410:string_read +6411:std::exception::what\28\29\20const +6412:std::bad_variant_access::what\28\29\20const +6413:std::bad_optional_access::what\28\29\20const +6414:std::bad_array_new_length::what\28\29\20const +6415:std::bad_alloc::what\28\29\20const +6416:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +6417:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +6418:std::__2::time_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20tm\20const*\2c\20char\2c\20char\29\20const +6419:std::__2::time_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20tm\20const*\2c\20char\2c\20char\29\20const +6420:std::__2::time_get>>::do_get_year\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6421:std::__2::time_get>>::do_get_weekday\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6422:std::__2::time_get>>::do_get_time\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6423:std::__2::time_get>>::do_get_monthname\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6424:std::__2::time_get>>::do_get_date\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6425:std::__2::time_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\2c\20char\29\20const +6426:std::__2::time_get>>::do_get_year\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6427:std::__2::time_get>>::do_get_weekday\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6428:std::__2::time_get>>::do_get_time\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6429:std::__2::time_get>>::do_get_monthname\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6430:std::__2::time_get>>::do_get_date\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +6431:std::__2::time_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\2c\20char\29\20const +6432:std::__2::numpunct::~numpunct\28\29.1 +6433:std::__2::numpunct::do_truename\28\29\20const +6434:std::__2::numpunct::do_grouping\28\29\20const +6435:std::__2::numpunct::do_falsename\28\29\20const +6436:std::__2::numpunct::~numpunct\28\29.1 +6437:std::__2::numpunct::do_truename\28\29\20const +6438:std::__2::numpunct::do_thousands_sep\28\29\20const +6439:std::__2::numpunct::do_grouping\28\29\20const +6440:std::__2::numpunct::do_falsename\28\29\20const +6441:std::__2::numpunct::do_decimal_point\28\29\20const +6442:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20void\20const*\29\20const +6443:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\29\20const +6444:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\20long\29\20const +6445:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +6446:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +6447:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +6448:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20double\29\20const +6449:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20bool\29\20const +6450:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20void\20const*\29\20const +6451:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\29\20const +6452:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\20long\29\20const +6453:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +6454:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +6455:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +6456:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20double\29\20const +6457:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20bool\29\20const +6458:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20void*&\29\20const +6459:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20short&\29\20const +6460:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20long\20long&\29\20const +6461:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20long&\29\20const +6462:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +6463:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long&\29\20const +6464:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20float&\29\20const +6465:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20double&\29\20const +6466:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20bool&\29\20const +6467:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20void*&\29\20const +6468:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20short&\29\20const +6469:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20long\20long&\29\20const +6470:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20long&\29\20const +6471:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +6472:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long&\29\20const +6473:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20float&\29\20const +6474:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20double&\29\20const +6475:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20bool&\29\20const +6476:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +6477:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +6478:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +6479:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +6480:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\29\20const +6481:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +6482:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\29\20const +6483:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +6484:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +6485:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +6486:std::__2::locale::id::__init\28\29 +6487:std::__2::locale::__imp::~__imp\28\29.1 +6488:std::__2::ios_base::~ios_base\28\29.1 +6489:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +6490:std::__2::ctype::do_toupper\28wchar_t\29\20const +6491:std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +6492:std::__2::ctype::do_tolower\28wchar_t\29\20const +6493:std::__2::ctype::do_tolower\28wchar_t*\2c\20wchar_t\20const*\29\20const +6494:std::__2::ctype::do_scan_not\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6495:std::__2::ctype::do_scan_is\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6496:std::__2::ctype::do_narrow\28wchar_t\2c\20char\29\20const +6497:std::__2::ctype::do_narrow\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20char\2c\20char*\29\20const +6498:std::__2::ctype::do_is\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20unsigned\20long*\29\20const +6499:std::__2::ctype::do_is\28unsigned\20long\2c\20wchar_t\29\20const +6500:std::__2::ctype::~ctype\28\29.1 +6501:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +6502:std::__2::ctype::do_toupper\28char\29\20const +6503:std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +6504:std::__2::ctype::do_tolower\28char\29\20const +6505:std::__2::ctype::do_tolower\28char*\2c\20char\20const*\29\20const +6506:std::__2::ctype::do_narrow\28char\2c\20char\29\20const +6507:std::__2::ctype::do_narrow\28char\20const*\2c\20char\20const*\2c\20char\2c\20char*\29\20const +6508:std::__2::collate::do_transform\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6509:std::__2::collate::do_hash\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6510:std::__2::collate::do_compare\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6511:std::__2::collate::do_transform\28char\20const*\2c\20char\20const*\29\20const +6512:std::__2::collate::do_hash\28char\20const*\2c\20char\20const*\29\20const +6513:std::__2::collate::do_compare\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +6514:std::__2::codecvt::~codecvt\28\29.1 +6515:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +6516:std::__2::codecvt::do_out\28__mbstate_t&\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +6517:std::__2::codecvt::do_max_length\28\29\20const +6518:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +6519:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20wchar_t*\2c\20wchar_t*\2c\20wchar_t*&\29\20const +6520:std::__2::codecvt::do_encoding\28\29\20const +6521:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +6522:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29.1 +6523:std::__2::basic_stringbuf\2c\20std::__2::allocator>::underflow\28\29 +6524:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +6525:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +6526:std::__2::basic_stringbuf\2c\20std::__2::allocator>::pbackfail\28int\29 +6527:std::__2::basic_stringbuf\2c\20std::__2::allocator>::overflow\28int\29 +6528:std::__2::basic_streambuf>::~basic_streambuf\28\29.1 +6529:std::__2::basic_streambuf>::xsputn\28char\20const*\2c\20long\29 +6530:std::__2::basic_streambuf>::xsgetn\28char*\2c\20long\29 +6531:std::__2::basic_streambuf>::uflow\28\29 +6532:std::__2::basic_streambuf>::setbuf\28char*\2c\20long\29 +6533:std::__2::basic_streambuf>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +6534:std::__2::basic_streambuf>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +6535:std::__2::bad_function_call::what\28\29\20const +6536:std::__2::__time_get_c_storage::__x\28\29\20const +6537:std::__2::__time_get_c_storage::__weeks\28\29\20const +6538:std::__2::__time_get_c_storage::__r\28\29\20const +6539:std::__2::__time_get_c_storage::__months\28\29\20const +6540:std::__2::__time_get_c_storage::__c\28\29\20const +6541:std::__2::__time_get_c_storage::__am_pm\28\29\20const +6542:std::__2::__time_get_c_storage::__X\28\29\20const +6543:std::__2::__time_get_c_storage::__x\28\29\20const +6544:std::__2::__time_get_c_storage::__weeks\28\29\20const +6545:std::__2::__time_get_c_storage::__r\28\29\20const +6546:std::__2::__time_get_c_storage::__months\28\29\20const +6547:std::__2::__time_get_c_storage::__c\28\29\20const +6548:std::__2::__time_get_c_storage::__am_pm\28\29\20const +6549:std::__2::__time_get_c_storage::__X\28\29\20const +6550:std::__2::__shared_ptr_pointer<_IO_FILE*\2c\20void\20\28*\29\28_IO_FILE*\29\2c\20std::__2::allocator<_IO_FILE>>::__on_zero_shared\28\29 +6551:std::__2::__shared_ptr_pointer\2c\20std::__2::allocator>::__on_zero_shared\28\29 +6552:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6553:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6554:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6555:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6556:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6557:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6558:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6559:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6560:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6561:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6562:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6563:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6564:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6565:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6566:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6567:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6568:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6569:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6570:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6571:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6572:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6573:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6574:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6575:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6576:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6577:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6578:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6579:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6580:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6581:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6582:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::operator\28\29\28skia::textlayout::Cluster\20const*&&\2c\20unsigned\20long&&\2c\20bool&&\29 +6583:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6584:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +6585:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::operator\28\29\28skia::textlayout::Cluster\20const*&&\2c\20unsigned\20long&&\2c\20bool&&\29 +6586:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6587:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +6588:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6589:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6590:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6591:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6592:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6593:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6594:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6595:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6596:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6597:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6598:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6599:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6600:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6601:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6602:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6603:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6604:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6605:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6606:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6607:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6608:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6609:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6610:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6611:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6612:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6613:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6614:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6615:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6616:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6617:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6618:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6619:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6620:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6621:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6622:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6623:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6624:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6625:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6626:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6627:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20float&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\2c\20SkPoint&&\2c\20SkPoint&&\2c\20skia::textlayout::InternalLineMetrics&&\2c\20bool&&\29 +6628:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>*\29\20const +6629:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::__clone\28\29\20const +6630:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::operator\28\29\28skia::textlayout::Cluster*&&\29 +6631:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28std::__2::__function::__base*\29\20const +6632:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28\29\20const +6633:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6634:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28\29\20const +6635:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20SkSpan&&\2c\20float&\2c\20unsigned\20long&&\2c\20unsigned\20char&&\29 +6636:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28std::__2::__function::__base\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>*\29\20const +6637:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28\29\20const +6638:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::operator\28\29\28skia::textlayout::Block&&\2c\20skia_private::TArray&&\29 +6639:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6640:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::__clone\28\29\20const +6641:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::operator\28\29\28sk_sp&&\29 +6642:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6643:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::__clone\28\29\20const +6644:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::operator\28\29\28skia::textlayout::SkRange&&\29 +6645:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6646:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28\29\20const +6647:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::operator\28\29\28sktext::gpu::AtlasSubRun\20const*&&\2c\20SkPoint&&\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20sktext::gpu::RendererData&&\29 +6648:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28std::__2::__function::__base\2c\20sktext::gpu::RendererData\29>*\29\20const +6649:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28\29\20const +6650:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29.1 +6651:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29 +6652:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::operator\28\29\28void*&&\2c\20void\20const*&&\29 +6653:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy_deallocate\28\29 +6654:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy\28\29 +6655:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6656:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28\29\20const +6657:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6658:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6659:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6660:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6661:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6662:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6663:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6664:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6665:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6666:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6667:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6668:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6669:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6670:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6671:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6672:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::operator\28\29\28sktext::gpu::AtlasSubRun\20const*&&\2c\20SkPoint&&\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20sktext::gpu::RendererData&&\29 +6673:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28std::__2::__function::__base\2c\20sktext::gpu::RendererData\29>*\29\20const +6674:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28\29\20const +6675:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::operator\28\29\28sktext::gpu::GlyphVector*&&\2c\20int&&\2c\20int&&\2c\20skgpu::MaskFormat&&\2c\20int&&\29 +6676:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::__clone\28std::__2::__function::__base\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>*\29\20const +6677:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::__clone\28\29\20const +6678:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::operator\28\29\28GrSurfaceProxy\20const*&&\29 +6679:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6680:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::__clone\28\29\20const +6681:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6682:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6683:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6684:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6685:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6686:std::__2::__function::__func\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6687:std::__2::__function::__func\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6688:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +6689:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6690:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6691:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::operator\28\29\28\29 +6692:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6693:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::__clone\28\29\20const +6694:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6695:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6696:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6697:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6698:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6699:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6700:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6701:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6702:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6703:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6704:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6705:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6706:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6707:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6708:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6709:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6710:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6711:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6712:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6713:std::__2::__function::__func>*\29::'lambda'\28int\2c\20int\29\2c\20std::__2::allocator>*\29::'lambda'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::operator\28\29\28int&&\2c\20int&&\29 +6714:std::__2::__function::__func>*\29::'lambda'\28int\2c\20int\29\2c\20std::__2::allocator>*\29::'lambda'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::__clone\28std::__2::__function::__base*\29\20const +6715:std::__2::__function::__func>*\29::'lambda'\28int\2c\20int\29\2c\20std::__2::allocator>*\29::'lambda'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::__clone\28\29\20const +6716:std::__2::__function::__func*\29::'lambda0'\28int\2c\20int\29\2c\20std::__2::allocator*\29::'lambda0'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::operator\28\29\28int&&\2c\20int&&\29 +6717:std::__2::__function::__func*\29::'lambda0'\28int\2c\20int\29\2c\20std::__2::allocator*\29::'lambda0'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::__clone\28std::__2::__function::__base*\29\20const +6718:std::__2::__function::__func*\29::'lambda0'\28int\2c\20int\29\2c\20std::__2::allocator*\29::'lambda0'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::__clone\28\29\20const +6719:std::__2::__function::__func*\29::'lambda'\28int\2c\20int\29\2c\20std::__2::allocator*\29::'lambda'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::operator\28\29\28int&&\2c\20int&&\29 +6720:std::__2::__function::__func*\29::'lambda'\28int\2c\20int\29\2c\20std::__2::allocator*\29::'lambda'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::__clone\28std::__2::__function::__base*\29\20const +6721:std::__2::__function::__func*\29::'lambda'\28int\2c\20int\29\2c\20std::__2::allocator*\29::'lambda'\28int\2c\20int\29>\2c\20void\20\28int\2c\20int\29>::__clone\28\29\20const +6722:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29.1 +6723:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29 +6724:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +6725:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy_deallocate\28\29 +6726:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy\28\29 +6727:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6728:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6729:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6730:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6731:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6732:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::operator\28\29\28unsigned\20long&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\29 +6733:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +6734:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6735:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +6736:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6737:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::operator\28\29\28SkVertices\20const*&&\2c\20SkBlendMode&&\2c\20SkPaint\20const&\2c\20float&&\2c\20float&&\2c\20bool&&\29 +6738:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6739:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::__clone\28\29\20const +6740:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::operator\28\29\28SkIRect\20const&\29 +6741:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6742:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +6743:std::__2::__function::__func\2c\20SkCodec::Result\20\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int\29>::operator\28\29\28SkImageInfo\20const&\2c\20void*&&\2c\20unsigned\20long&&\2c\20SkCodec::Options\20const&\2c\20int&&\29 +6744:std::__2::__function::__func\2c\20SkCodec::Result\20\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int\29>::__clone\28std::__2::__function::__base*\29\20const +6745:std::__2::__function::__func\2c\20SkCodec::Result\20\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int\29>::__clone\28\29\20const +6746:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6747:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6748:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6749:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6750:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6751:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6752:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6753:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6754:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6755:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6756:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6757:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6758:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6759:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6760:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6761:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6762:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6763:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6764:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6765:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6766:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6767:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::operator\28\29\28GrTextureProxy*&&\2c\20SkIRect&&\2c\20GrColorType&&\2c\20void\20const*&&\2c\20unsigned\20long&&\29 +6768:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +6769:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::__clone\28\29\20const +6770:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::operator\28\29\28GrBackendTexture&&\29 +6771:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28std::__2::__function::__base*\29\20const +6772:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28\29\20const +6773:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6774:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6775:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6776:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6777:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6778:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6779:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6780:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6781:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6782:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6783:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6784:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6785:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6786:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6787:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6788:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6789:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6790:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6791:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6792:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6793:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6794:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6795:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6796:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6797:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6798:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6799:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +6800:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6801:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6802:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::operator\28\29\28int&&\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*&&\29 +6803:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6804:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +6805:start_pass_upsample +6806:start_pass_phuff_decoder +6807:start_pass_merged_upsample +6808:start_pass_main +6809:start_pass_huff_decoder +6810:start_pass_dpost +6811:start_pass_2_quant +6812:start_pass_1_quant +6813:start_pass +6814:start_output_pass +6815:start_input_pass.1 +6816:stackSave +6817:stackRestore +6818:srgb_to_hwb\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6819:srgb_to_hsl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6820:srcover_p\28unsigned\20char\2c\20unsigned\20char\29 +6821:sn_write +6822:sktext::gpu::post_purge_blob_message\28unsigned\20int\2c\20unsigned\20int\29 +6823:sktext::gpu::VertexFiller::isLCD\28\29\20const +6824:sktext::gpu::TextBlob::~TextBlob\28\29.1 +6825:sktext::gpu::TextBlob::~TextBlob\28\29 +6826:sktext::gpu::SubRun::~SubRun\28\29 +6827:sktext::gpu::SlugImpl::~SlugImpl\28\29.1 +6828:sktext::gpu::SlugImpl::~SlugImpl\28\29 +6829:sktext::gpu::SlugImpl::sourceBounds\28\29\20const +6830:sktext::gpu::SlugImpl::sourceBoundsWithOrigin\28\29\20const +6831:sktext::gpu::SlugImpl::doFlatten\28SkWriteBuffer&\29\20const +6832:sktext::gpu::SDFMaskFilterImpl::getTypeName\28\29\20const +6833:sktext::gpu::SDFMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +6834:sktext::gpu::SDFMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +6835:skip_variable +6836:skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +6837:skif::\28anonymous\20namespace\29::RasterBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6838:skif::\28anonymous\20namespace\29::RasterBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6839:skif::\28anonymous\20namespace\29::RasterBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6840:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +6841:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +6842:skif::\28anonymous\20namespace\29::GaneshBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6843:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6844:skif::\28anonymous\20namespace\29::GaneshBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6845:skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +6846:skia_png_zalloc +6847:skia_png_write_rows +6848:skia_png_write_info +6849:skia_png_write_end +6850:skia_png_user_version_check +6851:skia_png_set_text +6852:skia_png_set_sRGB +6853:skia_png_set_keep_unknown_chunks +6854:skia_png_set_iCCP +6855:skia_png_set_gray_to_rgb +6856:skia_png_set_filter +6857:skia_png_set_filler +6858:skia_png_read_update_info +6859:skia_png_read_info +6860:skia_png_read_image +6861:skia_png_read_end +6862:skia_png_push_fill_buffer +6863:skia_png_process_data +6864:skia_png_default_write_data +6865:skia_png_default_read_data +6866:skia_png_default_flush +6867:skia_png_create_read_struct +6868:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29.1 +6869:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29 +6870:skia::textlayout::TypefaceFontStyleSet::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +6871:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29.1 +6872:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29 +6873:skia::textlayout::TypefaceFontProvider::onMatchFamily\28char\20const*\29\20const +6874:skia::textlayout::TypefaceFontProvider::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +6875:skia::textlayout::TypefaceFontProvider::onGetFamilyName\28int\2c\20SkString*\29\20const +6876:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29.1 +6877:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29 +6878:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6879:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6880:skia::textlayout::SkRange*\20emscripten::internal::raw_constructor>\28\29 +6881:skia::textlayout::PositionWithAffinity*\20emscripten::internal::raw_constructor\28\29 +6882:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29.1 +6883:skia::textlayout::ParagraphImpl::visit\28std::__2::function\20const&\29 +6884:skia::textlayout::ParagraphImpl::updateTextAlign\28skia::textlayout::TextAlign\29 +6885:skia::textlayout::ParagraphImpl::updateForegroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6886:skia::textlayout::ParagraphImpl::updateFontSize\28unsigned\20long\2c\20unsigned\20long\2c\20float\29 +6887:skia::textlayout::ParagraphImpl::updateBackgroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6888:skia::textlayout::ParagraphImpl::unresolvedGlyphs\28\29 +6889:skia::textlayout::ParagraphImpl::unresolvedCodepoints\28\29 +6890:skia::textlayout::ParagraphImpl::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +6891:skia::textlayout::ParagraphImpl::paint\28SkCanvas*\2c\20float\2c\20float\29 +6892:skia::textlayout::ParagraphImpl::markDirty\28\29 +6893:skia::textlayout::ParagraphImpl::lineNumber\28\29 +6894:skia::textlayout::ParagraphImpl::layout\28float\29 +6895:skia::textlayout::ParagraphImpl::getWordBoundary\28unsigned\20int\29 +6896:skia::textlayout::ParagraphImpl::getRectsForRange\28unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +6897:skia::textlayout::ParagraphImpl::getRectsForPlaceholders\28\29 +6898:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29::operator\28\29\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\20const::'lambda'\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +6899:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29 +6900:skia::textlayout::ParagraphImpl::getLineNumberAt\28unsigned\20long\29\20const +6901:skia::textlayout::ParagraphImpl::getLineNumberAtUTF16Offset\28unsigned\20long\29 +6902:skia::textlayout::ParagraphImpl::getLineMetrics\28std::__2::vector>&\29 +6903:skia::textlayout::ParagraphImpl::getLineMetricsAt\28int\2c\20skia::textlayout::LineMetrics*\29\20const +6904:skia::textlayout::ParagraphImpl::getGlyphPositionAtCoordinate\28float\2c\20float\29 +6905:skia::textlayout::ParagraphImpl::getFonts\28\29\20const +6906:skia::textlayout::ParagraphImpl::getFontAt\28unsigned\20long\29\20const +6907:skia::textlayout::ParagraphImpl::getFontAtUTF16Offset\28unsigned\20long\29 +6908:skia::textlayout::ParagraphImpl::getClosestUTF16GlyphInfoAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +6909:skia::textlayout::ParagraphImpl::getClosestGlyphClusterAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +6910:skia::textlayout::ParagraphImpl::getActualTextRange\28int\2c\20bool\29\20const +6911:skia::textlayout::ParagraphImpl::extendedVisit\28std::__2::function\20const&\29 +6912:skia::textlayout::ParagraphImpl::containsEmoji\28SkTextBlob*\29 +6913:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29::$_0::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +6914:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29 +6915:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29.1 +6916:skia::textlayout::ParagraphBuilderImpl::pushStyle\28skia::textlayout::TextStyle\20const&\29 +6917:skia::textlayout::ParagraphBuilderImpl::pop\28\29 +6918:skia::textlayout::ParagraphBuilderImpl::peekStyle\28\29 +6919:skia::textlayout::ParagraphBuilderImpl::getText\28\29 +6920:skia::textlayout::ParagraphBuilderImpl::getParagraphStyle\28\29\20const +6921:skia::textlayout::ParagraphBuilderImpl::addText\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +6922:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\2c\20unsigned\20long\29 +6923:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\29 +6924:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\29 +6925:skia::textlayout::ParagraphBuilderImpl::SetUnicode\28std::__2::unique_ptr>\29 +6926:skia::textlayout::ParagraphBuilderImpl::Reset\28\29 +6927:skia::textlayout::ParagraphBuilderImpl::RequiresClientICU\28\29 +6928:skia::textlayout::ParagraphBuilderImpl::Build\28\29 +6929:skia::textlayout::Paragraph::getMinIntrinsicWidth\28\29 +6930:skia::textlayout::Paragraph::getMaxWidth\28\29 +6931:skia::textlayout::Paragraph::getMaxIntrinsicWidth\28\29 +6932:skia::textlayout::Paragraph::getLongestLine\28\29 +6933:skia::textlayout::Paragraph::getIdeographicBaseline\28\29 +6934:skia::textlayout::Paragraph::getHeight\28\29 +6935:skia::textlayout::Paragraph::getAlphabeticBaseline\28\29 +6936:skia::textlayout::Paragraph::didExceedMaxLines\28\29 +6937:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29.1 +6938:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29 +6939:skia::textlayout::OneLineShaper::~OneLineShaper\28\29.1 +6940:skia::textlayout::OneLineShaper::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6941:skia::textlayout::OneLineShaper::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6942:skia::textlayout::LangIterator::~LangIterator\28\29.1 +6943:skia::textlayout::LangIterator::~LangIterator\28\29 +6944:skia::textlayout::LangIterator::endOfCurrentRun\28\29\20const +6945:skia::textlayout::LangIterator::currentLanguage\28\29\20const +6946:skia::textlayout::LangIterator::consume\28\29 +6947:skia::textlayout::LangIterator::atEnd\28\29\20const +6948:skia::textlayout::FontCollection::~FontCollection\28\29.1 +6949:skia::textlayout::CanvasParagraphPainter::translate\28float\2c\20float\29 +6950:skia::textlayout::CanvasParagraphPainter::save\28\29 +6951:skia::textlayout::CanvasParagraphPainter::restore\28\29 +6952:skia::textlayout::CanvasParagraphPainter::drawTextShadow\28sk_sp\20const&\2c\20float\2c\20float\2c\20unsigned\20int\2c\20float\29 +6953:skia::textlayout::CanvasParagraphPainter::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20std::__2::variant\20const&\29 +6954:skia::textlayout::CanvasParagraphPainter::drawRect\28SkRect\20const&\2c\20std::__2::variant\20const&\29 +6955:skia::textlayout::CanvasParagraphPainter::drawPath\28SkPath\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6956:skia::textlayout::CanvasParagraphPainter::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6957:skia::textlayout::CanvasParagraphPainter::drawFilledRect\28SkRect\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6958:skia::textlayout::CanvasParagraphPainter::clipRect\28SkRect\20const&\29 +6959:skgpu::tess::FixedCountWedges::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6960:skgpu::tess::FixedCountWedges::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6961:skgpu::tess::FixedCountStrokes::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6962:skgpu::tess::FixedCountCurves::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6963:skgpu::tess::FixedCountCurves::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6964:skgpu::ganesh::texture_proxy_view_from_planes\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20skgpu::Budgeted\29::$_0::__invoke\28void*\2c\20void*\29 +6965:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29.1 +6966:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::visitProxies\28std::__2::function\20const&\29\20const +6967:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6968:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6969:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6970:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::name\28\29\20const +6971:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::fixedFunctionFlags\28\29\20const +6972:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6973:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::name\28\29\20const +6974:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6975:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6976:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6977:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6978:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29.1 +6979:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29 +6980:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::name\28\29\20const +6981:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6982:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6983:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29.1 +6984:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29 +6985:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +6986:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6987:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6988:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6989:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6990:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::name\28\29\20const +6991:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::fixedFunctionFlags\28\29\20const +6992:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6993:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29.1 +6994:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29 +6995:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +6996:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6997:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6998:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6999:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7000:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::name\28\29\20const +7001:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7002:skgpu::ganesh::TriangulatingPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7003:skgpu::ganesh::TriangulatingPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7004:skgpu::ganesh::TriangulatingPathRenderer::name\28\29\20const +7005:skgpu::ganesh::TessellationPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +7006:skgpu::ganesh::TessellationPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +7007:skgpu::ganesh::TessellationPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7008:skgpu::ganesh::TessellationPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7009:skgpu::ganesh::TessellationPathRenderer::name\28\29\20const +7010:skgpu::ganesh::SurfaceDrawContext::willReplaceOpsTask\28skgpu::ganesh::OpsTask*\2c\20skgpu::ganesh::OpsTask*\29 +7011:skgpu::ganesh::SurfaceDrawContext::canDiscardPreviousOpsOnFullClear\28\29\20const +7012:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29.1 +7013:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::$_0::__invoke\28void*\29 +7014:skgpu::ganesh::SurfaceContext::asyncReadPixels\28GrDirectContext*\2c\20SkIRect\20const&\2c\20SkColorType\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::$_0::__invoke\28void*\29 +7015:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29.1 +7016:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29 +7017:skgpu::ganesh::StrokeTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +7018:skgpu::ganesh::StrokeTessellateOp::usesStencil\28\29\20const +7019:skgpu::ganesh::StrokeTessellateOp::onPrepare\28GrOpFlushState*\29 +7020:skgpu::ganesh::StrokeTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7021:skgpu::ganesh::StrokeTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7022:skgpu::ganesh::StrokeTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7023:skgpu::ganesh::StrokeTessellateOp::name\28\29\20const +7024:skgpu::ganesh::StrokeTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7025:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29.1 +7026:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29 +7027:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +7028:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::programInfo\28\29 +7029:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7030:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7031:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7032:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::name\28\29\20const +7033:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7034:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29.1 +7035:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29 +7036:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +7037:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::programInfo\28\29 +7038:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7039:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7040:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7041:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7042:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::name\28\29\20const +7043:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7044:skgpu::ganesh::StencilClip::~StencilClip\28\29.1 +7045:skgpu::ganesh::StencilClip::~StencilClip\28\29 +7046:skgpu::ganesh::StencilClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +7047:skgpu::ganesh::StencilClip::getConservativeBounds\28\29\20const +7048:skgpu::ganesh::StencilClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +7049:skgpu::ganesh::SoftwarePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7050:skgpu::ganesh::SoftwarePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7051:skgpu::ganesh::SoftwarePathRenderer::name\28\29\20const +7052:skgpu::ganesh::SmallPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7053:skgpu::ganesh::SmallPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7054:skgpu::ganesh::SmallPathRenderer::name\28\29\20const +7055:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +7056:skgpu::ganesh::SmallPathAtlasMgr::preFlush\28GrOnFlushResourceProvider*\29 +7057:skgpu::ganesh::SmallPathAtlasMgr::postFlush\28skgpu::AtlasToken\29 +7058:skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +7059:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29.1 +7060:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29 +7061:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::visitProxies\28std::__2::function\20const&\29\20const +7062:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::programInfo\28\29 +7063:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +7064:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7065:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7066:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7067:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::name\28\29\20const +7068:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7069:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_quad_generic\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7070:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7071:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7072:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_cov_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7073:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_cov_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7074:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7075:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7076:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +7077:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29.1 +7078:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29 +7079:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::onTextureSampler\28int\29\20const +7080:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::name\28\29\20const +7081:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7082:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7083:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7084:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +7085:skgpu::ganesh::PathWedgeTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +7086:skgpu::ganesh::PathTessellator::~PathTessellator\28\29 +7087:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29.1 +7088:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29 +7089:skgpu::ganesh::PathTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +7090:skgpu::ganesh::PathTessellateOp::usesStencil\28\29\20const +7091:skgpu::ganesh::PathTessellateOp::onPrepare\28GrOpFlushState*\29 +7092:skgpu::ganesh::PathTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7093:skgpu::ganesh::PathTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7094:skgpu::ganesh::PathTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7095:skgpu::ganesh::PathTessellateOp::name\28\29\20const +7096:skgpu::ganesh::PathTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7097:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29.1 +7098:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29 +7099:skgpu::ganesh::PathStencilCoverOp::visitProxies\28std::__2::function\20const&\29\20const +7100:skgpu::ganesh::PathStencilCoverOp::onPrepare\28GrOpFlushState*\29 +7101:skgpu::ganesh::PathStencilCoverOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7102:skgpu::ganesh::PathStencilCoverOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7103:skgpu::ganesh::PathStencilCoverOp::name\28\29\20const +7104:skgpu::ganesh::PathStencilCoverOp::fixedFunctionFlags\28\29\20const +7105:skgpu::ganesh::PathStencilCoverOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7106:skgpu::ganesh::PathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +7107:skgpu::ganesh::PathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +7108:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29.1 +7109:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29 +7110:skgpu::ganesh::PathInnerTriangulateOp::visitProxies\28std::__2::function\20const&\29\20const +7111:skgpu::ganesh::PathInnerTriangulateOp::onPrepare\28GrOpFlushState*\29 +7112:skgpu::ganesh::PathInnerTriangulateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7113:skgpu::ganesh::PathInnerTriangulateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7114:skgpu::ganesh::PathInnerTriangulateOp::name\28\29\20const +7115:skgpu::ganesh::PathInnerTriangulateOp::fixedFunctionFlags\28\29\20const +7116:skgpu::ganesh::PathInnerTriangulateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7117:skgpu::ganesh::PathCurveTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +7118:skgpu::ganesh::OpsTask::~OpsTask\28\29.1 +7119:skgpu::ganesh::OpsTask::onPrepare\28GrOpFlushState*\29 +7120:skgpu::ganesh::OpsTask::onPrePrepare\28GrRecordingContext*\29 +7121:skgpu::ganesh::OpsTask::onMakeSkippable\28\29 +7122:skgpu::ganesh::OpsTask::onIsUsed\28GrSurfaceProxy*\29\20const +7123:skgpu::ganesh::OpsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +7124:skgpu::ganesh::OpsTask::endFlush\28GrDrawingManager*\29 +7125:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29.1 +7126:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::visitProxies\28std::__2::function\20const&\29\20const +7127:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7128:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7129:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7130:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7131:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::name\28\29\20const +7132:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7133:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29.1 +7134:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29 +7135:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::onTextureSampler\28int\29\20const +7136:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::name\28\29\20const +7137:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7138:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7139:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7140:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +7141:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29.1 +7142:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29 +7143:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +7144:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::programInfo\28\29 +7145:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +7146:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7147:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7148:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7149:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::name\28\29\20const +7150:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7151:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::clipToShape\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkClipOp\2c\20SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\29 +7152:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29.1 +7153:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29 +7154:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::name\28\29\20const +7155:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7156:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +7157:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7158:skgpu::ganesh::DrawableOp::~DrawableOp\28\29.1 +7159:skgpu::ganesh::DrawableOp::~DrawableOp\28\29 +7160:skgpu::ganesh::DrawableOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7161:skgpu::ganesh::DrawableOp::name\28\29\20const +7162:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29.1 +7163:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29 +7164:skgpu::ganesh::DrawAtlasPathOp::visitProxies\28std::__2::function\20const&\29\20const +7165:skgpu::ganesh::DrawAtlasPathOp::onPrepare\28GrOpFlushState*\29 +7166:skgpu::ganesh::DrawAtlasPathOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7167:skgpu::ganesh::DrawAtlasPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7168:skgpu::ganesh::DrawAtlasPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7169:skgpu::ganesh::DrawAtlasPathOp::name\28\29\20const +7170:skgpu::ganesh::DrawAtlasPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7171:skgpu::ganesh::Device::~Device\28\29.1 +7172:skgpu::ganesh::Device::~Device\28\29 +7173:skgpu::ganesh::Device::strikeDeviceInfo\28\29\20const +7174:skgpu::ganesh::Device::snapSpecial\28SkIRect\20const&\2c\20bool\29 +7175:skgpu::ganesh::Device::snapSpecialScaled\28SkIRect\20const&\2c\20SkISize\20const&\29 +7176:skgpu::ganesh::Device::replaceClip\28SkIRect\20const&\29 +7177:skgpu::ganesh::Device::recordingContext\28\29\20const +7178:skgpu::ganesh::Device::pushClipStack\28\29 +7179:skgpu::ganesh::Device::popClipStack\28\29 +7180:skgpu::ganesh::Device::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +7181:skgpu::ganesh::Device::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +7182:skgpu::ganesh::Device::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +7183:skgpu::ganesh::Device::onClipShader\28sk_sp\29 +7184:skgpu::ganesh::Device::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +7185:skgpu::ganesh::Device::makeSpecial\28SkImage\20const*\29 +7186:skgpu::ganesh::Device::isClipWideOpen\28\29\20const +7187:skgpu::ganesh::Device::isClipRect\28\29\20const +7188:skgpu::ganesh::Device::isClipEmpty\28\29\20const +7189:skgpu::ganesh::Device::isClipAntiAliased\28\29\20const +7190:skgpu::ganesh::Device::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +7191:skgpu::ganesh::Device::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +7192:skgpu::ganesh::Device::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +7193:skgpu::ganesh::Device::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +7194:skgpu::ganesh::Device::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +7195:skgpu::ganesh::Device::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +7196:skgpu::ganesh::Device::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +7197:skgpu::ganesh::Device::drawPaint\28SkPaint\20const&\29 +7198:skgpu::ganesh::Device::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +7199:skgpu::ganesh::Device::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +7200:skgpu::ganesh::Device::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +7201:skgpu::ganesh::Device::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +7202:skgpu::ganesh::Device::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +7203:skgpu::ganesh::Device::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +7204:skgpu::ganesh::Device::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +7205:skgpu::ganesh::Device::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +7206:skgpu::ganesh::Device::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +7207:skgpu::ganesh::Device::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +7208:skgpu::ganesh::Device::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +7209:skgpu::ganesh::Device::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +7210:skgpu::ganesh::Device::devClipBounds\28\29\20const +7211:skgpu::ganesh::Device::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +7212:skgpu::ganesh::Device::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +7213:skgpu::ganesh::Device::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +7214:skgpu::ganesh::Device::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +7215:skgpu::ganesh::Device::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +7216:skgpu::ganesh::Device::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +7217:skgpu::ganesh::Device::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +7218:skgpu::ganesh::Device::android_utils_clipWithStencil\28\29 +7219:skgpu::ganesh::DefaultPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +7220:skgpu::ganesh::DefaultPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +7221:skgpu::ganesh::DefaultPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7222:skgpu::ganesh::DefaultPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7223:skgpu::ganesh::DefaultPathRenderer::name\28\29\20const +7224:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::name\28\29\20const +7225:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7226:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7227:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7228:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::name\28\29\20const +7229:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7230:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7231:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7232:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29.1 +7233:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29 +7234:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::visitProxies\28std::__2::function\20const&\29\20const +7235:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::programInfo\28\29 +7236:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +7237:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7238:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7239:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7240:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::name\28\29\20const +7241:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::fixedFunctionFlags\28\29\20const +7242:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7243:skgpu::ganesh::DashLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7244:skgpu::ganesh::DashLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7245:skgpu::ganesh::DashLinePathRenderer::name\28\29\20const +7246:skgpu::ganesh::ClipStack::~ClipStack\28\29.1 +7247:skgpu::ganesh::ClipStack::preApply\28SkRect\20const&\2c\20GrAA\29\20const +7248:skgpu::ganesh::ClipStack::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +7249:skgpu::ganesh::ClearOp::~ClearOp\28\29 +7250:skgpu::ganesh::ClearOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7251:skgpu::ganesh::ClearOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7252:skgpu::ganesh::ClearOp::name\28\29\20const +7253:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29.1 +7254:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29 +7255:skgpu::ganesh::AtlasTextOp::visitProxies\28std::__2::function\20const&\29\20const +7256:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7257:skgpu::ganesh::AtlasTextOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7258:skgpu::ganesh::AtlasTextOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7259:skgpu::ganesh::AtlasTextOp::name\28\29\20const +7260:skgpu::ganesh::AtlasTextOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7261:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29.1 +7262:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29 +7263:skgpu::ganesh::AtlasRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +7264:skgpu::ganesh::AtlasRenderTask::onExecute\28GrOpFlushState*\29 +7265:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +7266:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +7267:skgpu::ganesh::AtlasPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7268:skgpu::ganesh::AtlasPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7269:skgpu::ganesh::AtlasPathRenderer::name\28\29\20const +7270:skgpu::ganesh::AALinearizingConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7271:skgpu::ganesh::AALinearizingConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7272:skgpu::ganesh::AALinearizingConvexPathRenderer::name\28\29\20const +7273:skgpu::ganesh::AAHairLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7274:skgpu::ganesh::AAHairLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7275:skgpu::ganesh::AAHairLinePathRenderer::name\28\29\20const +7276:skgpu::ganesh::AAConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7277:skgpu::ganesh::AAConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7278:skgpu::ganesh::AAConvexPathRenderer::name\28\29\20const +7279:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29.1 +7280:skgpu::TAsyncReadResult::rowBytes\28int\29\20const +7281:skgpu::TAsyncReadResult::data\28int\29\20const +7282:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29.1 +7283:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29 +7284:skgpu::StringKeyBuilder::appendComment\28char\20const*\29 +7285:skgpu::StringKeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +7286:skgpu::ShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\2c\20bool\29 +7287:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29.1 +7288:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29 +7289:skgpu::RectanizerSkyline::reset\28\29 +7290:skgpu::RectanizerSkyline::percentFull\28\29\20const +7291:skgpu::RectanizerPow2::reset\28\29 +7292:skgpu::RectanizerPow2::percentFull\28\29\20const +7293:skgpu::RectanizerPow2::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +7294:skgpu::Plot::~Plot\28\29.1 +7295:skgpu::Plot::~Plot\28\29 +7296:skgpu::KeyBuilder::~KeyBuilder\28\29 +7297:skgpu::KeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +7298:skgpu::DefaultShaderErrorHandler\28\29::DefaultShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\29 +7299:sk_write_fn\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20long\29 +7300:sk_sp*\20emscripten::internal::MemberAccess>::getWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo\20const&\29 +7301:sk_read_user_chunk\28png_struct_def*\2c\20png_unknown_chunk_t*\29 +7302:sk_mmap_releaseproc\28void\20const*\2c\20void*\29 +7303:sk_ft_stream_io\28FT_StreamRec_*\2c\20unsigned\20long\2c\20unsigned\20char*\2c\20unsigned\20long\29 +7304:sk_ft_realloc\28FT_MemoryRec_*\2c\20long\2c\20long\2c\20void*\29 +7305:sk_ft_free\28FT_MemoryRec_*\2c\20void*\29 +7306:sk_ft_alloc\28FT_MemoryRec_*\2c\20long\29 +7307:sk_dataref_releaseproc\28void\20const*\2c\20void*\29 +7308:sfnt_table_info +7309:sfnt_stream_close +7310:sfnt_load_face +7311:sfnt_is_postscript +7312:sfnt_is_alphanumeric +7313:sfnt_init_face +7314:sfnt_get_ps_name +7315:sfnt_get_name_index +7316:sfnt_get_name_id +7317:sfnt_get_interface +7318:sfnt_get_glyph_name +7319:sfnt_get_charset_id +7320:sfnt_done_face +7321:setup_syllables_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7322:setup_syllables_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7323:setup_syllables_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7324:setup_syllables_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7325:setup_masks_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7326:setup_masks_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7327:setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7328:setup_masks_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7329:setup_masks_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7330:setup_masks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7331:service_cleanup\28\29 +7332:sep_upsample +7333:self_destruct +7334:scriptGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +7335:save_marker +7336:sample8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7337:sample6\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7338:sample4\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7339:sample2\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7340:sample1\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7341:rgb_rgb_convert +7342:rgb_rgb565_convert +7343:rgb_rgb565D_convert +7344:rgb_gray_convert +7345:reverse_hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7346:reverse_hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7347:reset_marker_reader +7348:reset_input_controller +7349:reset_error_mgr +7350:request_virt_sarray +7351:request_virt_barray +7352:reorder_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7353:reorder_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7354:reorder_marks_hebrew\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +7355:reorder_marks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +7356:reorder_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7357:release_data\28void*\2c\20void*\29 +7358:record_stch\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7359:record_rphf_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7360:record_pref_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7361:realize_virt_arrays +7362:read_restart_marker +7363:read_markers +7364:read_data_from_FT_Stream +7365:rbbi_cleanup_73 +7366:quantize_ord_dither +7367:quantize_fs_dither +7368:quantize3_ord_dither +7369:putil_cleanup\28\29 +7370:psnames_get_service +7371:pshinter_get_t2_funcs +7372:pshinter_get_t1_funcs +7373:pshinter_get_globals_funcs +7374:psh_globals_new +7375:psh_globals_destroy +7376:psaux_get_glyph_name +7377:ps_table_release +7378:ps_table_new +7379:ps_table_done +7380:ps_table_add +7381:ps_property_set +7382:ps_property_get +7383:ps_parser_to_token_array +7384:ps_parser_to_int +7385:ps_parser_to_fixed_array +7386:ps_parser_to_fixed +7387:ps_parser_to_coord_array +7388:ps_parser_to_bytes +7389:ps_parser_skip_spaces +7390:ps_parser_load_field_table +7391:ps_parser_init +7392:ps_hints_t2mask +7393:ps_hints_t2counter +7394:ps_hints_t1stem3 +7395:ps_hints_t1reset +7396:ps_hints_close +7397:ps_hints_apply +7398:ps_hinter_init +7399:ps_hinter_done +7400:ps_get_standard_strings +7401:ps_get_macintosh_name +7402:ps_decoder_init +7403:ps_builder_init +7404:progress_monitor\28jpeg_common_struct*\29 +7405:process_data_simple_main +7406:process_data_crank_post +7407:process_data_context_main +7408:prescan_quantize +7409:preprocess_text_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7410:preprocess_text_thai\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7411:preprocess_text_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7412:preprocess_text_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7413:prepare_for_output_pass +7414:premultiply_data +7415:premul_rgb\28SkRGBA4f<\28SkAlphaType\292>\29 +7416:premul_polar\28SkRGBA4f<\28SkAlphaType\292>\29 +7417:postprocess_glyphs_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7418:post_process_prepass +7419:post_process_2pass +7420:post_process_1pass +7421:portable::xy_to_unit_angle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7422:portable::xy_to_radius\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7423:portable::xy_to_2pt_conical_well_behaved\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7424:portable::xy_to_2pt_conical_strip\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7425:portable::xy_to_2pt_conical_smaller\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7426:portable::xy_to_2pt_conical_greater\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7427:portable::xy_to_2pt_conical_focal_on_circle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7428:portable::xor_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7429:portable::white_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7430:portable::unpremul_polar\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7431:portable::unpremul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7432:portable::trace_var\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7433:portable::trace_scope\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7434:portable::trace_line\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7435:portable::trace_exit\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7436:portable::trace_enter\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7437:portable::tan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7438:portable::swizzle_copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7439:portable::swizzle_copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7440:portable::swizzle_copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7441:portable::swizzle_copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7442:portable::swizzle_copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7443:portable::swizzle_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7444:portable::swizzle_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7445:portable::swizzle_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7446:portable::swizzle_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7447:portable::swizzle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7448:portable::swap_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7449:portable::swap_rb_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7450:portable::swap_rb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7451:portable::sub_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7452:portable::sub_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7453:portable::sub_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7454:portable::sub_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7455:portable::sub_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7456:portable::sub_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7457:portable::sub_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7458:portable::sub_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7459:portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7460:portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7461:portable::store_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7462:portable::store_src_a\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7463:portable::store_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7464:portable::store_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7465:portable::store_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7466:portable::store_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7467:portable::store_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7468:portable::store_r8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7469:portable::store_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7470:portable::store_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7471:portable::store_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7472:portable::store_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7473:portable::store_device_xy01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7474:portable::store_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7475:portable::store_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7476:portable::store_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7477:portable::store_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7478:portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7479:portable::store_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7480:portable::store_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7481:portable::store_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7482:portable::store_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7483:portable::store_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7484:portable::store_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7485:portable::start_pipeline\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkRasterPipelineStage*\2c\20SkSpan\2c\20unsigned\20char*\29 +7486:portable::stack_rewind\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7487:portable::stack_checkpoint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7488:portable::srcover_rgba_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7489:portable::srcover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7490:portable::srcout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7491:portable::srcin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7492:portable::srcatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7493:portable::sqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7494:portable::splat_4_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7495:portable::splat_3_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7496:portable::splat_2_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7497:portable::softlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7498:portable::smoothstep_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7499:portable::sin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7500:portable::shuffle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7501:portable::set_base_pointer\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7502:portable::seed_shader\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7503:portable::screen\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7504:portable::scale_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7505:portable::scale_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7506:portable::saturation\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7507:portable::rgb_to_hsl\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7508:portable::repeat_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7509:portable::repeat_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7510:portable::repeat_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7511:portable::refract_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7512:portable::reenable_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7513:portable::rect_memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +7514:portable::rect_memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\2c\20unsigned\20long\2c\20int\29 +7515:portable::rect_memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\2c\20unsigned\20long\2c\20int\29 +7516:portable::premul_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7517:portable::premul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7518:portable::pow_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7519:portable::plus_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7520:portable::parametric\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7521:portable::overlay\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7522:portable::negate_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7523:portable::multiply\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7524:portable::mul_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7525:portable::mul_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7526:portable::mul_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7527:portable::mul_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7528:portable::mul_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7529:portable::mul_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7530:portable::mul_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7531:portable::mul_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7532:portable::mul_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7533:portable::mul_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7534:portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7535:portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7536:portable::move_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7537:portable::move_dst_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7538:portable::modulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7539:portable::mod_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7540:portable::mod_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7541:portable::mod_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7542:portable::mod_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7543:portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7544:portable::mix_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7545:portable::mix_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7546:portable::mix_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7547:portable::mix_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7548:portable::mix_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7549:portable::mix_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7550:portable::mix_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7551:portable::mix_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7552:portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7553:portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7554:portable::mirror_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7555:portable::mirror_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7556:portable::mirror_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7557:portable::mipmap_linear_update\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7558:portable::mipmap_linear_init\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7559:portable::mipmap_linear_finish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7560:portable::min_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7561:portable::min_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7562:portable::min_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7563:portable::min_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7564:portable::min_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7565:portable::min_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7566:portable::min_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7567:portable::min_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7568:portable::min_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7569:portable::min_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7570:portable::min_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7571:portable::min_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7572:portable::min_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7573:portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7574:portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7575:portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7576:portable::merge_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7577:portable::merge_inv_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7578:portable::merge_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7579:portable::memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\29 +7580:portable::memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\29 +7581:portable::max_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7582:portable::max_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7583:portable::max_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7584:portable::max_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7585:portable::max_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7586:portable::max_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7587:portable::max_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7588:portable::max_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7589:portable::max_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7590:portable::max_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7591:portable::max_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7592:portable::max_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7593:portable::max_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7594:portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7595:portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7596:portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7597:portable::matrix_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7598:portable::matrix_scale_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7599:portable::matrix_perspective\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7600:portable::matrix_multiply_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7601:portable::matrix_multiply_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7602:portable::matrix_multiply_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7603:portable::matrix_4x5\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7604:portable::matrix_4x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7605:portable::matrix_3x4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7606:portable::matrix_3x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7607:portable::matrix_2x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7608:portable::mask_off_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7609:portable::mask_off_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7610:portable::mask_2pt_conical_nan\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7611:portable::mask_2pt_conical_degenerates\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7612:portable::luminosity\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7613:portable::log_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7614:portable::log2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7615:portable::load_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7616:portable::load_rgf16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7617:portable::load_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7618:portable::load_rg88_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7619:portable::load_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7620:portable::load_rg1616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7621:portable::load_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7622:portable::load_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7623:portable::load_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7624:portable::load_f32_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7625:portable::load_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7626:portable::load_f16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7627:portable::load_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7628:portable::load_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7629:portable::load_af16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7630:portable::load_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7631:portable::load_a8_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7632:portable::load_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7633:portable::load_a16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7634:portable::load_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7635:portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7636:portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7637:portable::load_565_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7638:portable::load_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7639:portable::load_4444_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7640:portable::load_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7641:portable::load_16161616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7642:portable::load_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7643:portable::load_10x6_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7644:portable::load_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7645:portable::load_1010102_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7646:portable::load_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7647:portable::load_1010102_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7648:portable::load_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7649:portable::lighten\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7650:portable::lerp_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7651:portable::lerp_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7652:portable::just_return\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7653:portable::jump\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7654:portable::invsqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7655:portable::invsqrt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7656:portable::invsqrt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7657:portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7658:portable::inverted_CMYK_to_RGB1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7659:portable::inverted_CMYK_to_BGR1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7660:portable::inverse_mat4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7661:portable::inverse_mat3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7662:portable::inverse_mat2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7663:portable::init_lane_masks\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7664:portable::hue\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7665:portable::hsl_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7666:portable::hardlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7667:portable::gray_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7668:portable::grayA_to_rgbA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7669:portable::grayA_to_RGBA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7670:portable::gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7671:portable::gauss_a_to_rgba\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7672:portable::gather_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7673:portable::gather_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7674:portable::gather_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7675:portable::gather_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7676:portable::gather_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7677:portable::gather_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7678:portable::gather_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7679:portable::gather_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7680:portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7681:portable::gather_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7682:portable::gather_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7683:portable::gather_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7684:portable::gather_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7685:portable::gather_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7686:portable::gather_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7687:portable::gamma_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7688:portable::force_opaque_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7689:portable::force_opaque\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7690:portable::floor_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7691:portable::floor_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7692:portable::floor_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7693:portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7694:portable::exp_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7695:portable::exp2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7696:portable::exclusion\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7697:portable::exchange_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7698:portable::evenly_spaced_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7699:portable::evenly_spaced_2_stop_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7700:portable::emboss\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7701:portable::dstover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7702:portable::dstout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7703:portable::dstin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7704:portable::dstatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7705:portable::dot_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7706:portable::dot_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7707:portable::dot_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7708:portable::div_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7709:portable::div_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7710:portable::div_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7711:portable::div_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7712:portable::div_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7713:portable::div_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7714:portable::div_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7715:portable::div_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7716:portable::div_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7717:portable::div_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7718:portable::div_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7719:portable::div_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7720:portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7721:portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7722:portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7723:portable::dither\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7724:portable::difference\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7725:portable::decal_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7726:portable::decal_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7727:portable::decal_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7728:portable::darken\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7729:portable::css_oklab_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7730:portable::css_oklab_gamut_map_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7731:portable::css_lab_to_xyz\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7732:portable::css_hwb_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7733:portable::css_hsl_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7734:portable::css_hcl_to_lab\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7735:portable::cos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7736:portable::copy_uniform\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7737:portable::copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7738:portable::copy_slot_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7739:portable::copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7740:portable::copy_immutable_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7741:portable::copy_constant\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7742:portable::copy_4_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7743:portable::copy_4_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7744:portable::copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7745:portable::copy_4_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7746:portable::copy_3_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7747:portable::copy_3_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7748:portable::copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7749:portable::copy_3_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7750:portable::copy_2_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7751:portable::copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7752:portable::continue_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7753:portable::colordodge\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7754:portable::colorburn\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7755:portable::color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7756:portable::cmpne_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7757:portable::cmpne_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7758:portable::cmpne_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7759:portable::cmpne_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7760:portable::cmpne_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7761:portable::cmpne_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7762:portable::cmpne_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7763:portable::cmpne_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7764:portable::cmpne_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7765:portable::cmpne_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7766:portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7767:portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7768:portable::cmplt_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7769:portable::cmplt_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7770:portable::cmplt_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7771:portable::cmplt_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7772:portable::cmplt_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7773:portable::cmplt_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7774:portable::cmplt_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7775:portable::cmplt_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7776:portable::cmplt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7777:portable::cmplt_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7778:portable::cmplt_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7779:portable::cmplt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7780:portable::cmplt_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7781:portable::cmplt_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7782:portable::cmplt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7783:portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7784:portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7785:portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7786:portable::cmple_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7787:portable::cmple_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7788:portable::cmple_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7789:portable::cmple_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7790:portable::cmple_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7791:portable::cmple_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7792:portable::cmple_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7793:portable::cmple_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7794:portable::cmple_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7795:portable::cmple_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7796:portable::cmple_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7797:portable::cmple_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7798:portable::cmple_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7799:portable::cmple_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7800:portable::cmple_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7801:portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7802:portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7803:portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7804:portable::cmpeq_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7805:portable::cmpeq_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7806:portable::cmpeq_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7807:portable::cmpeq_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7808:portable::cmpeq_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7809:portable::cmpeq_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7810:portable::cmpeq_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7811:portable::cmpeq_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7812:portable::cmpeq_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7813:portable::cmpeq_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7814:portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7815:portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7816:portable::clear\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7817:portable::clamp_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7818:portable::clamp_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7819:portable::clamp_gamut\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7820:portable::clamp_01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7821:portable::ceil_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7822:portable::ceil_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7823:portable::ceil_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7824:portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7825:portable::cast_to_uint_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7826:portable::cast_to_uint_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7827:portable::cast_to_uint_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7828:portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7829:portable::cast_to_int_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7830:portable::cast_to_int_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7831:portable::cast_to_int_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7832:portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7833:portable::cast_to_float_from_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7834:portable::cast_to_float_from_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7835:portable::cast_to_float_from_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7836:portable::cast_to_float_from_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7837:portable::cast_to_float_from_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7838:portable::cast_to_float_from_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7839:portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7840:portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7841:portable::case_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7842:portable::callback\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7843:portable::byte_tables\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7844:portable::bt709_luminance_or_luma_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7845:portable::bt709_luminance_or_luma_to_alpha\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7846:portable::branch_if_no_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7847:portable::branch_if_no_active_lanes_eq\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7848:portable::branch_if_any_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7849:portable::branch_if_all_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7850:portable::blit_row_s32a_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +7851:portable::black_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7852:portable::bitwise_xor_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7853:portable::bitwise_xor_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7854:portable::bitwise_xor_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7855:portable::bitwise_xor_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7856:portable::bitwise_xor_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7857:portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7858:portable::bitwise_or_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7859:portable::bitwise_or_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7860:portable::bitwise_or_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7861:portable::bitwise_or_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7862:portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7863:portable::bitwise_and_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7864:portable::bitwise_and_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7865:portable::bitwise_and_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7866:portable::bitwise_and_imm_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7867:portable::bitwise_and_imm_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7868:portable::bitwise_and_imm_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7869:portable::bitwise_and_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7870:portable::bitwise_and_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7871:portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7872:portable::bilinear_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7873:portable::bilinear_py\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7874:portable::bilinear_px\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7875:portable::bilinear_ny\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7876:portable::bilinear_nx\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7877:portable::bilerp_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7878:portable::bicubic_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7879:portable::bicubic_p3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7880:portable::bicubic_p3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7881:portable::bicubic_p1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7882:portable::bicubic_p1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7883:portable::bicubic_n3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7884:portable::bicubic_n3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7885:portable::bicubic_n1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7886:portable::bicubic_n1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7887:portable::bicubic_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7888:portable::atan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7889:portable::atan2_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7890:portable::asin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7891:portable::alter_2pt_conical_unswap\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7892:portable::alter_2pt_conical_compensate_focal\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7893:portable::alpha_to_red_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7894:portable::alpha_to_red\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7895:portable::alpha_to_gray_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7896:portable::alpha_to_gray\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7897:portable::add_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7898:portable::add_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7899:portable::add_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7900:portable::add_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7901:portable::add_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7902:portable::add_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7903:portable::add_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7904:portable::add_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7905:portable::add_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7906:portable::add_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7907:portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7908:portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7909:portable::acos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7910:portable::accumulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7911:portable::abs_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7912:portable::abs_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7913:portable::abs_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7914:portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7915:portable::RGB_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7916:portable::RGB_to_BGR1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7917:portable::RGBA_to_rgbA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7918:portable::RGBA_to_bgrA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7919:portable::RGBA_to_BGRA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7920:portable::PQish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7921:portable::HLGish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7922:portable::HLGinvish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7923:pop_arg_long_double +7924:pointerTOCLookupFn\28UDataMemory\20const*\2c\20char\20const*\2c\20int*\2c\20UErrorCode*\29 +7925:png_read_filter_row_up +7926:png_read_filter_row_sub +7927:png_read_filter_row_paeth_multibyte_pixel +7928:png_read_filter_row_paeth_1byte_pixel +7929:png_read_filter_row_avg +7930:pass2_no_dither +7931:pass2_fs_dither +7932:override_features_khmer\28hb_ot_shape_planner_t*\29 +7933:override_features_indic\28hb_ot_shape_planner_t*\29 +7934:override_features_hangul\28hb_ot_shape_planner_t*\29 +7935:output_message\28jpeg_common_struct*\29 +7936:output_message +7937:offsetTOCLookupFn\28UDataMemory\20const*\2c\20char\20const*\2c\20int*\2c\20UErrorCode*\29 +7938:null_convert +7939:noop_upsample +7940:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +7941:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +7942:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +7943:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +7944:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.3 +7945:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.2 +7946:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +7947:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +7948:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +7949:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +7950:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +7951:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +7952:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +7953:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +7954:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +7955:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +7956:non-virtual\20thunk\20to\20icu_73::UnicodeSet::~UnicodeSet\28\29.1 +7957:non-virtual\20thunk\20to\20icu_73::UnicodeSet::~UnicodeSet\28\29 +7958:non-virtual\20thunk\20to\20icu_73::UnicodeSet::toPattern\28icu_73::UnicodeString&\2c\20signed\20char\29\20const +7959:non-virtual\20thunk\20to\20icu_73::UnicodeSet::matches\28icu_73::Replaceable\20const&\2c\20int&\2c\20int\2c\20signed\20char\29 +7960:non-virtual\20thunk\20to\20icu_73::UnicodeSet::matchesIndexValue\28unsigned\20char\29\20const +7961:non-virtual\20thunk\20to\20icu_73::UnicodeSet::addMatchSetTo\28icu_73::UnicodeSet&\29\20const +7962:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +7963:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +7964:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +7965:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +7966:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +7967:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +7968:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +7969:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +7970:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +7971:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +7972:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +7973:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +7974:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +7975:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +7976:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +7977:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +7978:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +7979:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +7980:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7981:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7982:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7983:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +7984:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29.1 +7985:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29 +7986:non-virtual\20thunk\20to\20GrOpFlushState::writeView\28\29\20const +7987:non-virtual\20thunk\20to\20GrOpFlushState::usesMSAASurface\28\29\20const +7988:non-virtual\20thunk\20to\20GrOpFlushState::threadSafeCache\28\29\20const +7989:non-virtual\20thunk\20to\20GrOpFlushState::strikeCache\28\29\20const +7990:non-virtual\20thunk\20to\20GrOpFlushState::smallPathAtlasManager\28\29\20const +7991:non-virtual\20thunk\20to\20GrOpFlushState::sampledProxyArray\28\29 +7992:non-virtual\20thunk\20to\20GrOpFlushState::rtProxy\28\29\20const +7993:non-virtual\20thunk\20to\20GrOpFlushState::resourceProvider\28\29\20const +7994:non-virtual\20thunk\20to\20GrOpFlushState::renderPassBarriers\28\29\20const +7995:non-virtual\20thunk\20to\20GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +7996:non-virtual\20thunk\20to\20GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +7997:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndirectDraws\28int\29 +7998:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndices\28int\29 +7999:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +8000:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +8001:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +8002:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +8003:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +8004:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +8005:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +8006:non-virtual\20thunk\20to\20GrOpFlushState::dstProxyView\28\29\20const +8007:non-virtual\20thunk\20to\20GrOpFlushState::detachAppliedClip\28\29 +8008:non-virtual\20thunk\20to\20GrOpFlushState::deferredUploadTarget\28\29 +8009:non-virtual\20thunk\20to\20GrOpFlushState::colorLoadOp\28\29\20const +8010:non-virtual\20thunk\20to\20GrOpFlushState::caps\28\29\20const +8011:non-virtual\20thunk\20to\20GrOpFlushState::atlasManager\28\29\20const +8012:non-virtual\20thunk\20to\20GrOpFlushState::appliedClip\28\29\20const +8013:non-virtual\20thunk\20to\20GrGpuBuffer::~GrGpuBuffer\28\29 +8014:non-virtual\20thunk\20to\20GrGpuBuffer::unref\28\29\20const +8015:non-virtual\20thunk\20to\20GrGpuBuffer::ref\28\29\20const +8016:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +8017:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +8018:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onSetLabel\28\29 +8019:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +8020:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +8021:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +8022:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +8023:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::backendFormat\28\29\20const +8024:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +8025:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +8026:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +8027:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +8028:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::dstColor\28\29 +8029:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29.1 +8030:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29 +8031:new_color_map_2_quant +8032:new_color_map_1_quant +8033:merged_2v_upsample +8034:merged_1v_upsample +8035:locale_cleanup\28\29 +8036:lin_srgb_to_oklab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +8037:lin_srgb_to_okhcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +8038:legalstub$dynCall_vijjjii +8039:legalstub$dynCall_vijiii +8040:legalstub$dynCall_viji +8041:legalstub$dynCall_vij +8042:legalstub$dynCall_viijii +8043:legalstub$dynCall_viij +8044:legalstub$dynCall_viiij +8045:legalstub$dynCall_viiiiij +8046:legalstub$dynCall_jiji +8047:legalstub$dynCall_jiiiiji +8048:legalstub$dynCall_jiiiiii +8049:legalstub$dynCall_jii +8050:legalstub$dynCall_ji +8051:legalstub$dynCall_iijjiii +8052:legalstub$dynCall_iijj +8053:legalstub$dynCall_iiji +8054:legalstub$dynCall_iij +8055:legalstub$dynCall_iiiji +8056:legalstub$dynCall_iiij +8057:legalstub$dynCall_iiiij +8058:legalstub$dynCall_iiiiijj +8059:legalstub$dynCall_iiiiij +8060:legalstub$dynCall_iiiiiijj +8061:legalfunc$glWaitSync +8062:legalfunc$glClientWaitSync +8063:lcd_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +8064:layoutGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +8065:jpeg_start_decompress +8066:jpeg_skip_scanlines +8067:jpeg_save_markers +8068:jpeg_resync_to_restart +8069:jpeg_read_scanlines +8070:jpeg_read_raw_data +8071:jpeg_read_header +8072:jpeg_idct_islow +8073:jpeg_idct_ifast +8074:jpeg_idct_float +8075:jpeg_idct_9x9 +8076:jpeg_idct_7x7 +8077:jpeg_idct_6x6 +8078:jpeg_idct_5x5 +8079:jpeg_idct_4x4 +8080:jpeg_idct_3x3 +8081:jpeg_idct_2x2 +8082:jpeg_idct_1x1 +8083:jpeg_idct_16x16 +8084:jpeg_idct_15x15 +8085:jpeg_idct_14x14 +8086:jpeg_idct_13x13 +8087:jpeg_idct_12x12 +8088:jpeg_idct_11x11 +8089:jpeg_idct_10x10 +8090:jpeg_crop_scanline +8091:is_deleted_glyph\28hb_glyph_info_t\20const*\29 +8092:isRegionalIndicator\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8093:isPOSIX_xdigit\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8094:isPOSIX_print\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8095:isPOSIX_graph\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8096:isPOSIX_blank\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8097:isPOSIX_alnum\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8098:isNormInert\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8099:isMirrored\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8100:isJoinControl\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8101:isCanonSegmentStarter\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8102:isBidiControl\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8103:isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8104:int_upsample +8105:initial_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8106:icu_73::uprv_normalizer2_cleanup\28\29 +8107:icu_73::uprv_loaded_normalizer2_cleanup\28\29 +8108:icu_73::unames_cleanup\28\29 +8109:icu_73::umtx_init\28\29 +8110:icu_73::umtx_cleanup\28\29 +8111:icu_73::sortComparator\28void\20const*\2c\20void\20const*\2c\20void\20const*\29 +8112:icu_73::segmentStarterMapper\28void\20const*\2c\20unsigned\20int\29 +8113:icu_73::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8114:icu_73::compareElementStrings\28void\20const*\2c\20void\20const*\2c\20void\20const*\29 +8115:icu_73::cacheDeleter\28void*\29 +8116:icu_73::\28anonymous\20namespace\29::versionFilter\28int\2c\20void*\29 +8117:icu_73::\28anonymous\20namespace\29::utf16_caseContextIterator\28void*\2c\20signed\20char\29 +8118:icu_73::\28anonymous\20namespace\29::numericValueFilter\28int\2c\20void*\29 +8119:icu_73::\28anonymous\20namespace\29::intPropertyFilter\28int\2c\20void*\29 +8120:icu_73::\28anonymous\20namespace\29::emojiprops_cleanup\28\29 +8121:icu_73::\28anonymous\20namespace\29::cleanupKnownCanonicalized\28\29 +8122:icu_73::\28anonymous\20namespace\29::AliasReplacer::replace\28icu_73::Locale\20const&\2c\20icu_73::CharString&\2c\20UErrorCode&\29::$_1::__invoke\28void*\29 +8123:icu_73::\28anonymous\20namespace\29::AliasData::cleanup\28\29 +8124:icu_73::UnicodeString::~UnicodeString\28\29.1 +8125:icu_73::UnicodeString::handleReplaceBetween\28int\2c\20int\2c\20icu_73::UnicodeString\20const&\29 +8126:icu_73::UnicodeString::getLength\28\29\20const +8127:icu_73::UnicodeString::getDynamicClassID\28\29\20const +8128:icu_73::UnicodeString::getCharAt\28int\29\20const +8129:icu_73::UnicodeString::extractBetween\28int\2c\20int\2c\20icu_73::UnicodeString&\29\20const +8130:icu_73::UnicodeString::copy\28int\2c\20int\2c\20int\29 +8131:icu_73::UnicodeString::clone\28\29\20const +8132:icu_73::UnicodeSet::~UnicodeSet\28\29.1 +8133:icu_73::UnicodeSet::toPattern\28icu_73::UnicodeString&\2c\20signed\20char\29\20const +8134:icu_73::UnicodeSet::size\28\29\20const +8135:icu_73::UnicodeSet::retain\28int\2c\20int\29 +8136:icu_73::UnicodeSet::operator==\28icu_73::UnicodeSet\20const&\29\20const +8137:icu_73::UnicodeSet::isEmpty\28\29\20const +8138:icu_73::UnicodeSet::hashCode\28\29\20const +8139:icu_73::UnicodeSet::getDynamicClassID\28\29\20const +8140:icu_73::UnicodeSet::contains\28int\2c\20int\29\20const +8141:icu_73::UnicodeSet::containsAll\28icu_73::UnicodeSet\20const&\29\20const +8142:icu_73::UnicodeSet::complement\28int\2c\20int\29 +8143:icu_73::UnicodeSet::complementAll\28icu_73::UnicodeSet\20const&\29 +8144:icu_73::UnicodeSet::addMatchSetTo\28icu_73::UnicodeSet&\29\20const +8145:icu_73::UnhandledEngine::~UnhandledEngine\28\29.1 +8146:icu_73::UnhandledEngine::~UnhandledEngine\28\29 +8147:icu_73::UnhandledEngine::handles\28int\29\20const +8148:icu_73::UnhandledEngine::handleCharacter\28int\29 +8149:icu_73::UnhandledEngine::findBreaks\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8150:icu_73::UVector::~UVector\28\29.1 +8151:icu_73::UVector::getDynamicClassID\28\29\20const +8152:icu_73::UVector32::~UVector32\28\29.1 +8153:icu_73::UVector32::getDynamicClassID\28\29\20const +8154:icu_73::UStack::getDynamicClassID\28\29\20const +8155:icu_73::UCharsTrieBuilder::~UCharsTrieBuilder\28\29.1 +8156:icu_73::UCharsTrieBuilder::~UCharsTrieBuilder\28\29 +8157:icu_73::UCharsTrieBuilder::write\28int\29 +8158:icu_73::UCharsTrieBuilder::writeValueAndType\28signed\20char\2c\20int\2c\20int\29 +8159:icu_73::UCharsTrieBuilder::writeValueAndFinal\28int\2c\20signed\20char\29 +8160:icu_73::UCharsTrieBuilder::writeElementUnits\28int\2c\20int\2c\20int\29 +8161:icu_73::UCharsTrieBuilder::writeDeltaTo\28int\29 +8162:icu_73::UCharsTrieBuilder::skipElementsBySomeUnits\28int\2c\20int\2c\20int\29\20const +8163:icu_73::UCharsTrieBuilder::indexOfElementWithNextUnit\28int\2c\20int\2c\20char16_t\29\20const +8164:icu_73::UCharsTrieBuilder::getMinLinearMatch\28\29\20const +8165:icu_73::UCharsTrieBuilder::getLimitOfLinearMatch\28int\2c\20int\2c\20int\29\20const +8166:icu_73::UCharsTrieBuilder::getElementValue\28int\29\20const +8167:icu_73::UCharsTrieBuilder::getElementUnit\28int\2c\20int\29\20const +8168:icu_73::UCharsTrieBuilder::getElementStringLength\28int\29\20const +8169:icu_73::UCharsTrieBuilder::createLinearMatchNode\28int\2c\20int\2c\20int\2c\20icu_73::StringTrieBuilder::Node*\29\20const +8170:icu_73::UCharsTrieBuilder::countElementUnits\28int\2c\20int\2c\20int\29\20const +8171:icu_73::UCharsTrieBuilder::UCTLinearMatchNode::write\28icu_73::StringTrieBuilder&\29 +8172:icu_73::UCharsTrieBuilder::UCTLinearMatchNode::operator==\28icu_73::StringTrieBuilder::Node\20const&\29\20const +8173:icu_73::UCharsDictionaryMatcher::~UCharsDictionaryMatcher\28\29.1 +8174:icu_73::UCharsDictionaryMatcher::~UCharsDictionaryMatcher\28\29 +8175:icu_73::UCharsDictionaryMatcher::matches\28UText*\2c\20int\2c\20int\2c\20int*\2c\20int*\2c\20int*\2c\20int*\29\20const +8176:icu_73::UCharCharacterIterator::setIndex\28int\29 +8177:icu_73::UCharCharacterIterator::setIndex32\28int\29 +8178:icu_73::UCharCharacterIterator::previous\28\29 +8179:icu_73::UCharCharacterIterator::previous32\28\29 +8180:icu_73::UCharCharacterIterator::operator==\28icu_73::ForwardCharacterIterator\20const&\29\20const +8181:icu_73::UCharCharacterIterator::next\28\29 +8182:icu_73::UCharCharacterIterator::nextPostInc\28\29 +8183:icu_73::UCharCharacterIterator::next32\28\29 +8184:icu_73::UCharCharacterIterator::next32PostInc\28\29 +8185:icu_73::UCharCharacterIterator::move\28int\2c\20icu_73::CharacterIterator::EOrigin\29 +8186:icu_73::UCharCharacterIterator::move32\28int\2c\20icu_73::CharacterIterator::EOrigin\29 +8187:icu_73::UCharCharacterIterator::last\28\29 +8188:icu_73::UCharCharacterIterator::last32\28\29 +8189:icu_73::UCharCharacterIterator::hashCode\28\29\20const +8190:icu_73::UCharCharacterIterator::hasPrevious\28\29 +8191:icu_73::UCharCharacterIterator::hasNext\28\29 +8192:icu_73::UCharCharacterIterator::getText\28icu_73::UnicodeString&\29 +8193:icu_73::UCharCharacterIterator::getDynamicClassID\28\29\20const +8194:icu_73::UCharCharacterIterator::first\28\29 +8195:icu_73::UCharCharacterIterator::firstPostInc\28\29 +8196:icu_73::UCharCharacterIterator::first32\28\29 +8197:icu_73::UCharCharacterIterator::first32PostInc\28\29 +8198:icu_73::UCharCharacterIterator::current\28\29\20const +8199:icu_73::UCharCharacterIterator::current32\28\29\20const +8200:icu_73::UCharCharacterIterator::clone\28\29\20const +8201:icu_73::ThaiBreakEngine::~ThaiBreakEngine\28\29.1 +8202:icu_73::ThaiBreakEngine::~ThaiBreakEngine\28\29 +8203:icu_73::ThaiBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8204:icu_73::StringTrieBuilder::SplitBranchNode::write\28icu_73::StringTrieBuilder&\29 +8205:icu_73::StringTrieBuilder::SplitBranchNode::operator==\28icu_73::StringTrieBuilder::Node\20const&\29\20const +8206:icu_73::StringTrieBuilder::SplitBranchNode::markRightEdgesFirst\28int\29 +8207:icu_73::StringTrieBuilder::Node::markRightEdgesFirst\28int\29 +8208:icu_73::StringTrieBuilder::ListBranchNode::write\28icu_73::StringTrieBuilder&\29 +8209:icu_73::StringTrieBuilder::ListBranchNode::operator==\28icu_73::StringTrieBuilder::Node\20const&\29\20const +8210:icu_73::StringTrieBuilder::ListBranchNode::markRightEdgesFirst\28int\29 +8211:icu_73::StringTrieBuilder::IntermediateValueNode::write\28icu_73::StringTrieBuilder&\29 +8212:icu_73::StringTrieBuilder::IntermediateValueNode::operator==\28icu_73::StringTrieBuilder::Node\20const&\29\20const +8213:icu_73::StringTrieBuilder::IntermediateValueNode::markRightEdgesFirst\28int\29 +8214:icu_73::StringTrieBuilder::FinalValueNode::write\28icu_73::StringTrieBuilder&\29 +8215:icu_73::StringTrieBuilder::FinalValueNode::operator==\28icu_73::StringTrieBuilder::Node\20const&\29\20const +8216:icu_73::StringTrieBuilder::BranchHeadNode::write\28icu_73::StringTrieBuilder&\29 +8217:icu_73::StringEnumeration::unext\28int*\2c\20UErrorCode&\29 +8218:icu_73::StringEnumeration::snext\28UErrorCode&\29 +8219:icu_73::StringEnumeration::operator==\28icu_73::StringEnumeration\20const&\29\20const +8220:icu_73::StringEnumeration::operator!=\28icu_73::StringEnumeration\20const&\29\20const +8221:icu_73::StringEnumeration::next\28int*\2c\20UErrorCode&\29 +8222:icu_73::SimpleLocaleKeyFactory::~SimpleLocaleKeyFactory\28\29.1 +8223:icu_73::SimpleLocaleKeyFactory::~SimpleLocaleKeyFactory\28\29 +8224:icu_73::SimpleLocaleKeyFactory::updateVisibleIDs\28icu_73::Hashtable&\2c\20UErrorCode&\29\20const +8225:icu_73::SimpleLocaleKeyFactory::getDynamicClassID\28\29\20const +8226:icu_73::SimpleLocaleKeyFactory::create\28icu_73::ICUServiceKey\20const&\2c\20icu_73::ICUService\20const*\2c\20UErrorCode&\29\20const +8227:icu_73::SimpleFilteredSentenceBreakIterator::~SimpleFilteredSentenceBreakIterator\28\29.1 +8228:icu_73::SimpleFilteredSentenceBreakIterator::~SimpleFilteredSentenceBreakIterator\28\29 +8229:icu_73::SimpleFilteredSentenceBreakIterator::setText\28icu_73::UnicodeString\20const&\29 +8230:icu_73::SimpleFilteredSentenceBreakIterator::setText\28UText*\2c\20UErrorCode&\29 +8231:icu_73::SimpleFilteredSentenceBreakIterator::refreshInputText\28UText*\2c\20UErrorCode&\29 +8232:icu_73::SimpleFilteredSentenceBreakIterator::previous\28\29 +8233:icu_73::SimpleFilteredSentenceBreakIterator::preceding\28int\29 +8234:icu_73::SimpleFilteredSentenceBreakIterator::next\28int\29 +8235:icu_73::SimpleFilteredSentenceBreakIterator::next\28\29 +8236:icu_73::SimpleFilteredSentenceBreakIterator::last\28\29 +8237:icu_73::SimpleFilteredSentenceBreakIterator::isBoundary\28int\29 +8238:icu_73::SimpleFilteredSentenceBreakIterator::getUText\28UText*\2c\20UErrorCode&\29\20const +8239:icu_73::SimpleFilteredSentenceBreakIterator::getText\28\29\20const +8240:icu_73::SimpleFilteredSentenceBreakIterator::following\28int\29 +8241:icu_73::SimpleFilteredSentenceBreakIterator::first\28\29 +8242:icu_73::SimpleFilteredSentenceBreakIterator::current\28\29\20const +8243:icu_73::SimpleFilteredSentenceBreakIterator::createBufferClone\28void*\2c\20int&\2c\20UErrorCode&\29 +8244:icu_73::SimpleFilteredSentenceBreakIterator::clone\28\29\20const +8245:icu_73::SimpleFilteredSentenceBreakIterator::adoptText\28icu_73::CharacterIterator*\29 +8246:icu_73::SimpleFilteredSentenceBreakData::~SimpleFilteredSentenceBreakData\28\29.1 +8247:icu_73::SimpleFilteredSentenceBreakData::~SimpleFilteredSentenceBreakData\28\29 +8248:icu_73::SimpleFilteredBreakIteratorBuilder::~SimpleFilteredBreakIteratorBuilder\28\29.1 +8249:icu_73::SimpleFilteredBreakIteratorBuilder::~SimpleFilteredBreakIteratorBuilder\28\29 +8250:icu_73::SimpleFilteredBreakIteratorBuilder::unsuppressBreakAfter\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29 +8251:icu_73::SimpleFilteredBreakIteratorBuilder::suppressBreakAfter\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29 +8252:icu_73::SimpleFilteredBreakIteratorBuilder::build\28icu_73::BreakIterator*\2c\20UErrorCode&\29 +8253:icu_73::SimpleFactory::~SimpleFactory\28\29.1 +8254:icu_73::SimpleFactory::~SimpleFactory\28\29 +8255:icu_73::SimpleFactory::updateVisibleIDs\28icu_73::Hashtable&\2c\20UErrorCode&\29\20const +8256:icu_73::SimpleFactory::getDynamicClassID\28\29\20const +8257:icu_73::SimpleFactory::getDisplayName\28icu_73::UnicodeString\20const&\2c\20icu_73::Locale\20const&\2c\20icu_73::UnicodeString&\29\20const +8258:icu_73::SimpleFactory::create\28icu_73::ICUServiceKey\20const&\2c\20icu_73::ICUService\20const*\2c\20UErrorCode&\29\20const +8259:icu_73::ServiceEnumeration::~ServiceEnumeration\28\29.1 +8260:icu_73::ServiceEnumeration::~ServiceEnumeration\28\29 +8261:icu_73::ServiceEnumeration::snext\28UErrorCode&\29 +8262:icu_73::ServiceEnumeration::reset\28UErrorCode&\29 +8263:icu_73::ServiceEnumeration::getDynamicClassID\28\29\20const +8264:icu_73::ServiceEnumeration::count\28UErrorCode&\29\20const +8265:icu_73::ServiceEnumeration::clone\28\29\20const +8266:icu_73::RuleBasedBreakIterator::~RuleBasedBreakIterator\28\29.1 +8267:icu_73::RuleBasedBreakIterator::setText\28icu_73::UnicodeString\20const&\29 +8268:icu_73::RuleBasedBreakIterator::setText\28UText*\2c\20UErrorCode&\29 +8269:icu_73::RuleBasedBreakIterator::refreshInputText\28UText*\2c\20UErrorCode&\29 +8270:icu_73::RuleBasedBreakIterator::previous\28\29 +8271:icu_73::RuleBasedBreakIterator::preceding\28int\29 +8272:icu_73::RuleBasedBreakIterator::operator==\28icu_73::BreakIterator\20const&\29\20const +8273:icu_73::RuleBasedBreakIterator::next\28int\29 +8274:icu_73::RuleBasedBreakIterator::next\28\29 +8275:icu_73::RuleBasedBreakIterator::last\28\29 +8276:icu_73::RuleBasedBreakIterator::isBoundary\28int\29 +8277:icu_73::RuleBasedBreakIterator::hashCode\28\29\20const +8278:icu_73::RuleBasedBreakIterator::getUText\28UText*\2c\20UErrorCode&\29\20const +8279:icu_73::RuleBasedBreakIterator::getText\28\29\20const +8280:icu_73::RuleBasedBreakIterator::getRules\28\29\20const +8281:icu_73::RuleBasedBreakIterator::getRuleStatus\28\29\20const +8282:icu_73::RuleBasedBreakIterator::getRuleStatusVec\28int*\2c\20int\2c\20UErrorCode&\29 +8283:icu_73::RuleBasedBreakIterator::getDynamicClassID\28\29\20const +8284:icu_73::RuleBasedBreakIterator::getBinaryRules\28unsigned\20int&\29 +8285:icu_73::RuleBasedBreakIterator::following\28int\29 +8286:icu_73::RuleBasedBreakIterator::first\28\29 +8287:icu_73::RuleBasedBreakIterator::current\28\29\20const +8288:icu_73::RuleBasedBreakIterator::createBufferClone\28void*\2c\20int&\2c\20UErrorCode&\29 +8289:icu_73::RuleBasedBreakIterator::clone\28\29\20const +8290:icu_73::RuleBasedBreakIterator::adoptText\28icu_73::CharacterIterator*\29 +8291:icu_73::RuleBasedBreakIterator::BreakCache::~BreakCache\28\29.1 +8292:icu_73::RuleBasedBreakIterator::BreakCache::~BreakCache\28\29 +8293:icu_73::ResourceDataValue::~ResourceDataValue\28\29.1 +8294:icu_73::ResourceDataValue::isNoInheritanceMarker\28\29\20const +8295:icu_73::ResourceDataValue::getUInt\28UErrorCode&\29\20const +8296:icu_73::ResourceDataValue::getType\28\29\20const +8297:icu_73::ResourceDataValue::getTable\28UErrorCode&\29\20const +8298:icu_73::ResourceDataValue::getStringOrFirstOfArray\28UErrorCode&\29\20const +8299:icu_73::ResourceDataValue::getStringArray\28icu_73::UnicodeString*\2c\20int\2c\20UErrorCode&\29\20const +8300:icu_73::ResourceDataValue::getStringArrayOrStringAsArray\28icu_73::UnicodeString*\2c\20int\2c\20UErrorCode&\29\20const +8301:icu_73::ResourceDataValue::getInt\28UErrorCode&\29\20const +8302:icu_73::ResourceDataValue::getIntVector\28int&\2c\20UErrorCode&\29\20const +8303:icu_73::ResourceDataValue::getBinary\28int&\2c\20UErrorCode&\29\20const +8304:icu_73::ResourceDataValue::getAliasString\28int&\2c\20UErrorCode&\29\20const +8305:icu_73::ResourceBundle::~ResourceBundle\28\29.1 +8306:icu_73::ResourceBundle::~ResourceBundle\28\29 +8307:icu_73::ResourceBundle::getDynamicClassID\28\29\20const +8308:icu_73::ParsePosition::getDynamicClassID\28\29\20const +8309:icu_73::Normalizer2WithImpl::spanQuickCheckYes\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8310:icu_73::Normalizer2WithImpl::normalize\28icu_73::UnicodeString\20const&\2c\20icu_73::UnicodeString&\2c\20UErrorCode&\29\20const +8311:icu_73::Normalizer2WithImpl::normalizeSecondAndAppend\28icu_73::UnicodeString&\2c\20icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8312:icu_73::Normalizer2WithImpl::getRawDecomposition\28int\2c\20icu_73::UnicodeString&\29\20const +8313:icu_73::Normalizer2WithImpl::getDecomposition\28int\2c\20icu_73::UnicodeString&\29\20const +8314:icu_73::Normalizer2WithImpl::getCombiningClass\28int\29\20const +8315:icu_73::Normalizer2WithImpl::composePair\28int\2c\20int\29\20const +8316:icu_73::Normalizer2WithImpl::append\28icu_73::UnicodeString&\2c\20icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8317:icu_73::Normalizer2Impl::~Normalizer2Impl\28\29.1 +8318:icu_73::Normalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_73::StringPiece\2c\20icu_73::ByteSink&\2c\20icu_73::Edits*\2c\20UErrorCode&\29\20const +8319:icu_73::Normalizer2::isNormalizedUTF8\28icu_73::StringPiece\2c\20UErrorCode&\29\20const +8320:icu_73::NoopNormalizer2::spanQuickCheckYes\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8321:icu_73::NoopNormalizer2::normalize\28icu_73::UnicodeString\20const&\2c\20icu_73::UnicodeString&\2c\20UErrorCode&\29\20const +8322:icu_73::NoopNormalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_73::StringPiece\2c\20icu_73::ByteSink&\2c\20icu_73::Edits*\2c\20UErrorCode&\29\20const +8323:icu_73::MlBreakEngine::~MlBreakEngine\28\29.1 +8324:icu_73::LocaleKeyFactory::~LocaleKeyFactory\28\29.1 +8325:icu_73::LocaleKeyFactory::updateVisibleIDs\28icu_73::Hashtable&\2c\20UErrorCode&\29\20const +8326:icu_73::LocaleKeyFactory::handlesKey\28icu_73::ICUServiceKey\20const&\2c\20UErrorCode&\29\20const +8327:icu_73::LocaleKeyFactory::getDynamicClassID\28\29\20const +8328:icu_73::LocaleKeyFactory::getDisplayName\28icu_73::UnicodeString\20const&\2c\20icu_73::Locale\20const&\2c\20icu_73::UnicodeString&\29\20const +8329:icu_73::LocaleKeyFactory::create\28icu_73::ICUServiceKey\20const&\2c\20icu_73::ICUService\20const*\2c\20UErrorCode&\29\20const +8330:icu_73::LocaleKey::~LocaleKey\28\29.1 +8331:icu_73::LocaleKey::~LocaleKey\28\29 +8332:icu_73::LocaleKey::prefix\28icu_73::UnicodeString&\29\20const +8333:icu_73::LocaleKey::isFallbackOf\28icu_73::UnicodeString\20const&\29\20const +8334:icu_73::LocaleKey::getDynamicClassID\28\29\20const +8335:icu_73::LocaleKey::fallback\28\29 +8336:icu_73::LocaleKey::currentLocale\28icu_73::Locale&\29\20const +8337:icu_73::LocaleKey::currentID\28icu_73::UnicodeString&\29\20const +8338:icu_73::LocaleKey::currentDescriptor\28icu_73::UnicodeString&\29\20const +8339:icu_73::LocaleKey::canonicalLocale\28icu_73::Locale&\29\20const +8340:icu_73::LocaleKey::canonicalID\28icu_73::UnicodeString&\29\20const +8341:icu_73::LocaleBuilder::~LocaleBuilder\28\29.1 +8342:icu_73::Locale::~Locale\28\29.1 +8343:icu_73::Locale::getDynamicClassID\28\29\20const +8344:icu_73::LoadedNormalizer2Impl::~LoadedNormalizer2Impl\28\29.1 +8345:icu_73::LoadedNormalizer2Impl::~LoadedNormalizer2Impl\28\29 +8346:icu_73::LoadedNormalizer2Impl::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8347:icu_73::LaoBreakEngine::~LaoBreakEngine\28\29.1 +8348:icu_73::LaoBreakEngine::~LaoBreakEngine\28\29 +8349:icu_73::LSTMBreakEngine::~LSTMBreakEngine\28\29.1 +8350:icu_73::LSTMBreakEngine::~LSTMBreakEngine\28\29 +8351:icu_73::LSTMBreakEngine::name\28\29\20const +8352:icu_73::LSTMBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8353:icu_73::KhmerBreakEngine::~KhmerBreakEngine\28\29.1 +8354:icu_73::KhmerBreakEngine::~KhmerBreakEngine\28\29 +8355:icu_73::KhmerBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8356:icu_73::KeywordEnumeration::~KeywordEnumeration\28\29.1 +8357:icu_73::KeywordEnumeration::~KeywordEnumeration\28\29 +8358:icu_73::KeywordEnumeration::snext\28UErrorCode&\29 +8359:icu_73::KeywordEnumeration::reset\28UErrorCode&\29 +8360:icu_73::KeywordEnumeration::next\28int*\2c\20UErrorCode&\29 +8361:icu_73::KeywordEnumeration::getDynamicClassID\28\29\20const +8362:icu_73::KeywordEnumeration::count\28UErrorCode&\29\20const +8363:icu_73::KeywordEnumeration::clone\28\29\20const +8364:icu_73::ICUServiceKey::~ICUServiceKey\28\29.1 +8365:icu_73::ICUServiceKey::isFallbackOf\28icu_73::UnicodeString\20const&\29\20const +8366:icu_73::ICUServiceKey::getDynamicClassID\28\29\20const +8367:icu_73::ICUServiceKey::currentDescriptor\28icu_73::UnicodeString&\29\20const +8368:icu_73::ICUServiceKey::canonicalID\28icu_73::UnicodeString&\29\20const +8369:icu_73::ICUService::unregister\28void\20const*\2c\20UErrorCode&\29 +8370:icu_73::ICUService::reset\28\29 +8371:icu_73::ICUService::registerInstance\28icu_73::UObject*\2c\20icu_73::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29 +8372:icu_73::ICUService::registerFactory\28icu_73::ICUServiceFactory*\2c\20UErrorCode&\29 +8373:icu_73::ICUService::reInitializeFactories\28\29 +8374:icu_73::ICUService::notifyListener\28icu_73::EventListener&\29\20const +8375:icu_73::ICUService::isDefault\28\29\20const +8376:icu_73::ICUService::getKey\28icu_73::ICUServiceKey&\2c\20icu_73::UnicodeString*\2c\20UErrorCode&\29\20const +8377:icu_73::ICUService::createSimpleFactory\28icu_73::UObject*\2c\20icu_73::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29 +8378:icu_73::ICUService::createKey\28icu_73::UnicodeString\20const*\2c\20UErrorCode&\29\20const +8379:icu_73::ICUService::clearCaches\28\29 +8380:icu_73::ICUService::acceptsListener\28icu_73::EventListener\20const&\29\20const +8381:icu_73::ICUResourceBundleFactory::~ICUResourceBundleFactory\28\29.1 +8382:icu_73::ICUResourceBundleFactory::handleCreate\28icu_73::Locale\20const&\2c\20int\2c\20icu_73::ICUService\20const*\2c\20UErrorCode&\29\20const +8383:icu_73::ICUResourceBundleFactory::getSupportedIDs\28UErrorCode&\29\20const +8384:icu_73::ICUResourceBundleFactory::getDynamicClassID\28\29\20const +8385:icu_73::ICUNotifier::removeListener\28icu_73::EventListener\20const*\2c\20UErrorCode&\29 +8386:icu_73::ICUNotifier::notifyChanged\28\29 +8387:icu_73::ICUNotifier::addListener\28icu_73::EventListener\20const*\2c\20UErrorCode&\29 +8388:icu_73::ICULocaleService::registerInstance\28icu_73::UObject*\2c\20icu_73::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29 +8389:icu_73::ICULocaleService::registerInstance\28icu_73::UObject*\2c\20icu_73::Locale\20const&\2c\20int\2c\20int\2c\20UErrorCode&\29 +8390:icu_73::ICULocaleService::registerInstance\28icu_73::UObject*\2c\20icu_73::Locale\20const&\2c\20int\2c\20UErrorCode&\29 +8391:icu_73::ICULocaleService::registerInstance\28icu_73::UObject*\2c\20icu_73::Locale\20const&\2c\20UErrorCode&\29 +8392:icu_73::ICULocaleService::getAvailableLocales\28\29\20const +8393:icu_73::ICULocaleService::createKey\28icu_73::UnicodeString\20const*\2c\20int\2c\20UErrorCode&\29\20const +8394:icu_73::ICULocaleService::createKey\28icu_73::UnicodeString\20const*\2c\20UErrorCode&\29\20const +8395:icu_73::ICULanguageBreakFactory::~ICULanguageBreakFactory\28\29.1 +8396:icu_73::ICULanguageBreakFactory::~ICULanguageBreakFactory\28\29 +8397:icu_73::ICULanguageBreakFactory::loadEngineFor\28int\29 +8398:icu_73::ICULanguageBreakFactory::loadDictionaryMatcherFor\28UScriptCode\29 +8399:icu_73::ICULanguageBreakFactory::getEngineFor\28int\29 +8400:icu_73::ICUBreakIteratorService::~ICUBreakIteratorService\28\29.1 +8401:icu_73::ICUBreakIteratorService::~ICUBreakIteratorService\28\29 +8402:icu_73::ICUBreakIteratorService::isDefault\28\29\20const +8403:icu_73::ICUBreakIteratorService::handleDefault\28icu_73::ICUServiceKey\20const&\2c\20icu_73::UnicodeString*\2c\20UErrorCode&\29\20const +8404:icu_73::ICUBreakIteratorService::cloneInstance\28icu_73::UObject*\29\20const +8405:icu_73::ICUBreakIteratorFactory::~ICUBreakIteratorFactory\28\29.1 +8406:icu_73::ICUBreakIteratorFactory::~ICUBreakIteratorFactory\28\29 +8407:icu_73::ICUBreakIteratorFactory::handleCreate\28icu_73::Locale\20const&\2c\20int\2c\20icu_73::ICUService\20const*\2c\20UErrorCode&\29\20const +8408:icu_73::GraphemeClusterVectorizer::vectorize\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20icu_73::UVector32&\2c\20UErrorCode&\29\20const +8409:icu_73::FCDNormalizer2::spanQuickCheckYes\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29\20const +8410:icu_73::FCDNormalizer2::normalize\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8411:icu_73::FCDNormalizer2::normalizeAndAppend\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20icu_73::UnicodeString&\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8412:icu_73::FCDNormalizer2::isInert\28int\29\20const +8413:icu_73::EmojiProps::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8414:icu_73::DictionaryBreakEngine::setCharacters\28icu_73::UnicodeSet\20const&\29 +8415:icu_73::DictionaryBreakEngine::handles\28int\29\20const +8416:icu_73::DictionaryBreakEngine::findBreaks\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8417:icu_73::DecomposeNormalizer2::spanQuickCheckYes\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29\20const +8418:icu_73::DecomposeNormalizer2::normalize\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8419:icu_73::DecomposeNormalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_73::StringPiece\2c\20icu_73::ByteSink&\2c\20icu_73::Edits*\2c\20UErrorCode&\29\20const +8420:icu_73::DecomposeNormalizer2::normalizeAndAppend\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20icu_73::UnicodeString&\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8421:icu_73::DecomposeNormalizer2::isNormalizedUTF8\28icu_73::StringPiece\2c\20UErrorCode&\29\20const +8422:icu_73::DecomposeNormalizer2::isInert\28int\29\20const +8423:icu_73::DecomposeNormalizer2::getQuickCheck\28int\29\20const +8424:icu_73::ConstArray2D::get\28int\2c\20int\29\20const +8425:icu_73::ConstArray1D::get\28int\29\20const +8426:icu_73::ComposeNormalizer2::spanQuickCheckYes\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29\20const +8427:icu_73::ComposeNormalizer2::quickCheck\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8428:icu_73::ComposeNormalizer2::normalize\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8429:icu_73::ComposeNormalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_73::StringPiece\2c\20icu_73::ByteSink&\2c\20icu_73::Edits*\2c\20UErrorCode&\29\20const +8430:icu_73::ComposeNormalizer2::normalizeAndAppend\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20icu_73::UnicodeString&\2c\20icu_73::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8431:icu_73::ComposeNormalizer2::isNormalized\28icu_73::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8432:icu_73::ComposeNormalizer2::isNormalizedUTF8\28icu_73::StringPiece\2c\20UErrorCode&\29\20const +8433:icu_73::ComposeNormalizer2::isInert\28int\29\20const +8434:icu_73::ComposeNormalizer2::hasBoundaryBefore\28int\29\20const +8435:icu_73::ComposeNormalizer2::hasBoundaryAfter\28int\29\20const +8436:icu_73::ComposeNormalizer2::getQuickCheck\28int\29\20const +8437:icu_73::CodePointsVectorizer::vectorize\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20icu_73::UVector32&\2c\20UErrorCode&\29\20const +8438:icu_73::CjkBreakEngine::~CjkBreakEngine\28\29.1 +8439:icu_73::CjkBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_73::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8440:icu_73::CheckedArrayByteSink::Reset\28\29 +8441:icu_73::CheckedArrayByteSink::GetAppendBuffer\28int\2c\20int\2c\20char*\2c\20int\2c\20int*\29 +8442:icu_73::CheckedArrayByteSink::Append\28char\20const*\2c\20int\29 +8443:icu_73::CharacterIterator::firstPostInc\28\29 +8444:icu_73::CharacterIterator::first32PostInc\28\29 +8445:icu_73::CharStringByteSink::GetAppendBuffer\28int\2c\20int\2c\20char*\2c\20int\2c\20int*\29 +8446:icu_73::CharStringByteSink::Append\28char\20const*\2c\20int\29 +8447:icu_73::BytesDictionaryMatcher::~BytesDictionaryMatcher\28\29.1 +8448:icu_73::BytesDictionaryMatcher::~BytesDictionaryMatcher\28\29 +8449:icu_73::BytesDictionaryMatcher::matches\28UText*\2c\20int\2c\20int\2c\20int*\2c\20int*\2c\20int*\2c\20int*\29\20const +8450:icu_73::BurmeseBreakEngine::~BurmeseBreakEngine\28\29.1 +8451:icu_73::BurmeseBreakEngine::~BurmeseBreakEngine\28\29 +8452:icu_73::BreakIterator::getRuleStatusVec\28int*\2c\20int\2c\20UErrorCode&\29 +8453:icu_73::BMPSet::contains\28int\29\20const +8454:icu_73::Array1D::~Array1D\28\29.1 +8455:icu_73::Array1D::~Array1D\28\29 +8456:icu_73::Array1D::get\28int\29\20const +8457:hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8458:hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8459:hb_unicode_script_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8460:hb_unicode_general_category_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8461:hb_ucd_script\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8462:hb_ucd_mirroring\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8463:hb_ucd_general_category\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8464:hb_ucd_decompose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20void*\29 +8465:hb_ucd_compose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8466:hb_ucd_combining_class\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8467:hb_syllabic_clear_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8468:hb_paint_sweep_gradient_nil\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8469:hb_paint_push_transform_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8470:hb_paint_push_clip_rectangle_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8471:hb_paint_image_nil\28hb_paint_funcs_t*\2c\20void*\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\2c\20hb_glyph_extents_t*\2c\20void*\29 +8472:hb_paint_extents_push_transform\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8473:hb_paint_extents_push_group\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +8474:hb_paint_extents_push_clip_rectangle\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8475:hb_paint_extents_push_clip_glyph\28hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_font_t*\2c\20void*\29 +8476:hb_paint_extents_pop_transform\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +8477:hb_paint_extents_pop_group\28hb_paint_funcs_t*\2c\20void*\2c\20hb_paint_composite_mode_t\2c\20void*\29 +8478:hb_paint_extents_pop_clip\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +8479:hb_paint_extents_paint_sweep_gradient\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8480:hb_paint_extents_paint_image\28hb_paint_funcs_t*\2c\20void*\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\2c\20hb_glyph_extents_t*\2c\20void*\29 +8481:hb_paint_extents_paint_color\28hb_paint_funcs_t*\2c\20void*\2c\20int\2c\20unsigned\20int\2c\20void*\29 +8482:hb_outline_recording_pen_quadratic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8483:hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8484:hb_outline_recording_pen_line_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8485:hb_outline_recording_pen_cubic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8486:hb_outline_recording_pen_close_path\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +8487:hb_ot_paint_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +8488:hb_ot_map_t::lookup_map_t::cmp\28void\20const*\2c\20void\20const*\29 +8489:hb_ot_map_t::feature_map_t::cmp\28void\20const*\2c\20void\20const*\29 +8490:hb_ot_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +8491:hb_ot_get_variation_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8492:hb_ot_get_nominal_glyphs\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +8493:hb_ot_get_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8494:hb_ot_get_glyph_v_origin\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8495:hb_ot_get_glyph_v_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +8496:hb_ot_get_glyph_name\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +8497:hb_ot_get_glyph_h_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +8498:hb_ot_get_glyph_from_name\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +8499:hb_ot_get_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8500:hb_ot_get_font_v_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8501:hb_ot_get_font_h_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8502:hb_ot_draw_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +8503:hb_font_paint_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +8504:hb_font_get_variation_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8505:hb_font_get_nominal_glyphs_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +8506:hb_font_get_nominal_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8507:hb_font_get_nominal_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8508:hb_font_get_glyph_v_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8509:hb_font_get_glyph_v_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8510:hb_font_get_glyph_v_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +8511:hb_font_get_glyph_v_advances_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +8512:hb_font_get_glyph_v_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8513:hb_font_get_glyph_v_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8514:hb_font_get_glyph_name_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +8515:hb_font_get_glyph_name_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +8516:hb_font_get_glyph_h_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8517:hb_font_get_glyph_h_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8518:hb_font_get_glyph_h_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +8519:hb_font_get_glyph_h_advances_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +8520:hb_font_get_glyph_h_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8521:hb_font_get_glyph_h_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8522:hb_font_get_glyph_from_name_default\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +8523:hb_font_get_glyph_extents_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8524:hb_font_get_glyph_extents_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8525:hb_font_get_glyph_contour_point_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8526:hb_font_get_glyph_contour_point_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8527:hb_font_get_font_v_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8528:hb_font_get_font_h_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8529:hb_font_draw_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +8530:hb_draw_quadratic_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8531:hb_draw_quadratic_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8532:hb_draw_move_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8533:hb_draw_line_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8534:hb_draw_extents_quadratic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8535:hb_draw_extents_cubic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8536:hb_draw_cubic_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8537:hb_draw_close_path_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +8538:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +8539:hb_aat_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +8540:hb_aat_map_builder_t::feature_event_t::cmp\28void\20const*\2c\20void\20const*\29 +8541:hashStringTrieNode\28UElement\29 +8542:hashEntry\28UElement\29 +8543:hasFullCompositionExclusion\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8544:hasEmojiProperty\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8545:h2v2_upsample +8546:h2v2_merged_upsample_565D +8547:h2v2_merged_upsample_565 +8548:h2v2_merged_upsample +8549:h2v2_fancy_upsample +8550:h2v1_upsample +8551:h2v1_merged_upsample_565D +8552:h2v1_merged_upsample_565 +8553:h2v1_merged_upsample +8554:h2v1_fancy_upsample +8555:grayscale_convert +8556:gray_rgb_convert +8557:gray_rgb565_convert +8558:gray_rgb565D_convert +8559:gray_raster_render +8560:gray_raster_new +8561:gray_raster_done +8562:gray_move_to +8563:gray_line_to +8564:gray_cubic_to +8565:gray_conic_to +8566:get_sk_marker_list\28jpeg_decompress_struct*\29 +8567:get_sfnt_table +8568:get_interesting_appn +8569:getVo\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8570:getTrailCombiningClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8571:getScript\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8572:getNumericType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8573:getNormQuickCheck\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8574:getLeadCombiningClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8575:getJoiningType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8576:getJoiningGroup\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8577:getInSC\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8578:getInPC\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8579:getHangulSyllableType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8580:getGeneralCategory\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8581:getCombiningClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8582:getBiDiPairedBracketType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8583:getBiDiClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8584:fullsize_upsample +8585:ft_smooth_transform +8586:ft_smooth_set_mode +8587:ft_smooth_render +8588:ft_smooth_overlap_spans +8589:ft_smooth_lcd_spans +8590:ft_smooth_init +8591:ft_smooth_get_cbox +8592:ft_gzip_free +8593:ft_gzip_alloc +8594:ft_ansi_stream_io +8595:ft_ansi_stream_close +8596:fquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8597:format_message +8598:fmt_fp +8599:fline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8600:first_axis_intersection\28double\20const*\2c\20bool\2c\20double\2c\20double*\29 +8601:finish_pass1 +8602:finish_output_pass +8603:finish_input_pass +8604:final_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8605:fcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8606:fconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8607:fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8608:fast_swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8609:fast_swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8610:fast_swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8611:fast_swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8612:fast_swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8613:fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8614:fast_swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8615:fast_swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8616:fast_swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8617:error_exit +8618:error_callback +8619:equalStringTrieNodes\28UElement\2c\20UElement\29 +8620:emscripten::internal::MethodInvoker\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20void\2c\20SkCanvas*\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&>::invoke\28void\20\28SkCanvas::*\20const&\29\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20SkPaint*\29 +8621:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint*\29 +8622:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\2c\20SkPaint*\29 +8623:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\29 +8624:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\29 +8625:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPath\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPath*\2c\20SkPaint*\29 +8626:emscripten::internal::MethodInvoker\20\28skia::textlayout::Paragraph::*\29\28unsigned\20int\29\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::Paragraph*\2c\20unsigned\20int>::invoke\28skia::textlayout::SkRange\20\28skia::textlayout::Paragraph::*\20const&\29\28unsigned\20int\29\2c\20skia::textlayout::Paragraph*\2c\20unsigned\20int\29 +8627:emscripten::internal::MethodInvoker::invoke\28skia::textlayout::PositionWithAffinity\20\28skia::textlayout::Paragraph::*\20const&\29\28float\2c\20float\29\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +8628:emscripten::internal::MethodInvoker::invoke\28int\20\28skia::textlayout::Paragraph::*\20const&\29\28unsigned\20long\29\20const\2c\20skia::textlayout::Paragraph\20const*\2c\20unsigned\20long\29 +8629:emscripten::internal::MethodInvoker::invoke\28bool\20\28SkPath::*\20const&\29\28float\2c\20float\29\20const\2c\20SkPath\20const*\2c\20float\2c\20float\29 +8630:emscripten::internal::MethodInvoker::invoke\28SkPath&\20\28SkPath::*\20const&\29\28bool\29\2c\20SkPath*\2c\20bool\29 +8631:emscripten::internal::Invoker::invoke\28void\20\28*\29\28unsigned\20long\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20unsigned\20long\29 +8632:emscripten::internal::Invoker::invoke\28void\20\28*\29\28emscripten::val\29\2c\20emscripten::_EM_VAL*\29 +8633:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28unsigned\20long\29\2c\20unsigned\20long\29 +8634:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont*\29 +8635:emscripten::internal::Invoker\2c\20sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20int\2c\20int\2c\20sk_sp*\2c\20int\2c\20int\29 +8636:emscripten::internal::Invoker\2c\20sk_sp\2c\20int\2c\20int\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\29\2c\20sk_sp*\2c\20int\2c\20int\2c\20sk_sp*\29 +8637:emscripten::internal::Invoker\2c\20sk_sp\2c\20int\2c\20int>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20int\2c\20int\29 +8638:emscripten::internal::Invoker\2c\20sk_sp\2c\20SimpleImageInfo>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20SimpleImageInfo\29\2c\20sk_sp*\2c\20SimpleImageInfo*\29 +8639:emscripten::internal::Invoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\29 +8640:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +8641:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20sk_sp\29\2c\20unsigned\20long\2c\20sk_sp*\29 +8642:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +8643:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +8644:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29\2c\20float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +8645:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +8646:emscripten::internal::Invoker\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val>::invoke\28sk_sp\20\28*\29\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\2c\20emscripten::_EM_VAL*\29 +8647:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20int\2c\20float>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20int\2c\20float\29\2c\20unsigned\20long\2c\20int\2c\20float\29 +8648:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20SkPath>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20SkPath\29\2c\20unsigned\20long\2c\20SkPath*\29 +8649:emscripten::internal::Invoker\2c\20float\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28float\2c\20unsigned\20long\29\2c\20float\2c\20unsigned\20long\29 +8650:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20unsigned\20int>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20unsigned\20int\29\2c\20float\2c\20float\2c\20unsigned\20int\29 +8651:emscripten::internal::Invoker\2c\20float>::invoke\28sk_sp\20\28*\29\28float\29\2c\20float\29 +8652:emscripten::internal::Invoker\2c\20SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style>::invoke\28sk_sp\20\28*\29\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29\2c\20SkPath*\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29 +8653:emscripten::internal::Invoker\2c\20SkBlurStyle\2c\20float\2c\20bool>::invoke\28sk_sp\20\28*\29\28SkBlurStyle\2c\20float\2c\20bool\29\2c\20SkBlurStyle\2c\20float\2c\20bool\29 +8654:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20float\2c\20float\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20float\2c\20float\2c\20sk_sp\29\2c\20unsigned\20long\2c\20float\2c\20float\2c\20sk_sp*\29 +8655:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp\29\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp*\29 +8656:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\29\2c\20sk_sp*\29 +8657:emscripten::internal::Invoker\2c\20sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29 +8658:emscripten::internal::Invoker\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +8659:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20sk_sp\29\2c\20float\2c\20float\2c\20sk_sp*\29 +8660:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29\2c\20float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp*\29 +8661:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20SkTileMode\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\29\2c\20float\2c\20float\2c\20SkTileMode\2c\20sk_sp*\29 +8662:emscripten::internal::Invoker\2c\20SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp\29\2c\20SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp*\2c\20sk_sp*\29 +8663:emscripten::internal::Invoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29 +8664:emscripten::internal::Invoker\2c\20SimpleImageInfo\2c\20emscripten::val>::invoke\28sk_sp\20\28*\29\28SimpleImageInfo\2c\20emscripten::val\29\2c\20SimpleImageInfo*\2c\20emscripten::_EM_VAL*\29 +8665:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20SkBlendMode\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20SkBlendMode\2c\20sk_sp\29\2c\20unsigned\20long\2c\20SkBlendMode\2c\20sk_sp*\29 +8666:emscripten::internal::Invoker\2c\20sk_sp\20const&\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\20const&\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +8667:emscripten::internal::Invoker\2c\20float\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20sk_sp\2c\20sk_sp\29\2c\20float\2c\20sk_sp*\2c\20sk_sp*\29 +8668:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20int\29 +8669:emscripten::internal::Invoker\2c\20std::__2::allocator>>::invoke\28emscripten::val\20\28*\29\28std::__2::basic_string\2c\20std::__2::allocator>\29\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\29 +8670:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28emscripten::val\2c\20emscripten::val\2c\20float\29\2c\20emscripten::_EM_VAL*\2c\20emscripten::_EM_VAL*\2c\20float\29 +8671:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29\2c\20SkPath*\2c\20SkPath*\2c\20float\29 +8672:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +8673:emscripten::internal::Invoker::invoke\28bool\20\28*\29\28unsigned\20long\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20SkPath*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\29 +8674:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28bool\20\28*\29\28sk_sp\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +8675:emscripten::internal::Invoker::invoke\28bool\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +8676:emscripten::internal::Invoker::invoke\28SkVertices::Builder*\20\28*\29\28SkVertices::VertexMode&&\2c\20int&&\2c\20int&&\2c\20unsigned\20int&&\29\2c\20SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +8677:emscripten::internal::Invoker::invoke\28SkPath\20\28*\29\28unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +8678:emscripten::internal::Invoker&&\2c\20float&&\2c\20float&&\2c\20float&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\2c\20float&&\2c\20float&&\2c\20float&&\29\2c\20sk_sp*\2c\20float\2c\20float\2c\20float\29 +8679:emscripten::internal::Invoker&&\2c\20float&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\2c\20float&&\29\2c\20sk_sp*\2c\20float\29 +8680:emscripten::internal::Invoker&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\29\2c\20sk_sp*\29 +8681:emscripten::internal::Invoker::invoke\28SkContourMeasureIter*\20\28*\29\28SkPath\20const&\2c\20bool&&\2c\20float&&\29\2c\20SkPath*\2c\20bool\2c\20float\29 +8682:emscripten::internal::Invoker::invoke\28SkCanvas*\20\28*\29\28float&&\2c\20float&&\29\2c\20float\2c\20float\29 +8683:emscripten::internal::FunctionInvoker\2c\20unsigned\20long\29\2c\20void\2c\20skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long>::invoke\28void\20\28**\29\28skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long\29\2c\20skia::textlayout::TypefaceFontProvider*\2c\20sk_sp*\2c\20unsigned\20long\29 +8684:emscripten::internal::FunctionInvoker\2c\20std::__2::allocator>\29\2c\20void\2c\20skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>>::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\29 +8685:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29 +8686:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\2c\20SkPaint\2c\20SkPaint\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20SimpleTextStyle*\2c\20SkPaint*\2c\20SkPaint*\29 +8687:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20SimpleTextStyle*\29 +8688:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +8689:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +8690:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +8691:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +8692:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +8693:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20SkPath\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29\2c\20SkPath*\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +8694:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29\2c\20SkContourMeasure*\2c\20float\2c\20unsigned\20long\29 +8695:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont*\2c\20SkPaint*\29 +8696:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint*\29 +8697:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8698:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8699:emscripten::internal::FunctionInvoker\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8700:emscripten::internal::FunctionInvoker\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +8701:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont*\2c\20SkPaint*\29 +8702:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint*\29 +8703:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20int\29\2c\20SkCanvas*\2c\20SkPath*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20int\29 +8704:emscripten::internal::FunctionInvoker\20\28*\29\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29\2c\20sk_sp\2c\20SkFontMgr&\2c\20unsigned\20long\2c\20int>::invoke\28sk_sp\20\28**\29\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29\2c\20SkFontMgr*\2c\20unsigned\20long\2c\20int\29 +8705:emscripten::internal::FunctionInvoker\20\28*\29\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29\2c\20sk_sp\2c\20SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val>::invoke\28sk_sp\20\28**\29\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29\2c\20SkFontMgr*\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\2c\20emscripten::_EM_VAL*\29 +8706:emscripten::internal::FunctionInvoker\20\28*\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29\2c\20sk_sp\2c\20sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29 +8707:emscripten::internal::FunctionInvoker\20\28*\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29\2c\20sk_sp\2c\20sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29 +8708:emscripten::internal::FunctionInvoker\20\28*\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20SkRuntimeEffect*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8709:emscripten::internal::FunctionInvoker\20\28*\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29\2c\20SkRuntimeEffect*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29 +8710:emscripten::internal::FunctionInvoker\20\28*\29\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20SkPicture*\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +8711:emscripten::internal::FunctionInvoker\20\28*\29\28SkPictureRecorder&\29\2c\20sk_sp\2c\20SkPictureRecorder&>::invoke\28sk_sp\20\28**\29\28SkPictureRecorder&\29\2c\20SkPictureRecorder*\29 +8712:emscripten::internal::FunctionInvoker\20\28*\29\28SkSurface&\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkSurface&\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkSurface&\2c\20unsigned\20long\29\2c\20SkSurface*\2c\20unsigned\20long\29 +8713:emscripten::internal::FunctionInvoker\20\28*\29\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29\2c\20sk_sp\2c\20SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo>::invoke\28sk_sp\20\28**\29\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29\2c\20SkSurface*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo*\29 +8714:emscripten::internal::FunctionInvoker\20\28*\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29\2c\20sk_sp\2c\20SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool>::invoke\28sk_sp\20\28**\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29\2c\20SkRuntimeEffect*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +8715:emscripten::internal::FunctionInvoker::invoke\28int\20\28**\29\28SkCanvas&\2c\20SkPaint\29\2c\20SkCanvas*\2c\20SkPaint*\29 +8716:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28skia::textlayout::Paragraph&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29\2c\20skia::textlayout::Paragraph*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +8717:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28skia::textlayout::Paragraph&\2c\20float\2c\20float\29\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +8718:emscripten::internal::FunctionInvoker\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29\2c\20emscripten::val\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*>::invoke\28emscripten::val\20\28**\29\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29\2c\20sk_sp*\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29 +8719:emscripten::internal::FunctionInvoker\2c\20SkEncodedImageFormat\2c\20int\29\2c\20emscripten::val\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int>::invoke\28emscripten::val\20\28**\29\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\29\2c\20sk_sp*\2c\20SkEncodedImageFormat\2c\20int\29 +8720:emscripten::internal::FunctionInvoker\29\2c\20emscripten::val\2c\20sk_sp>::invoke\28emscripten::val\20\28**\29\28sk_sp\29\2c\20sk_sp*\29 +8721:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20float\2c\20float\29\2c\20SkFont*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20float\2c\20float\29 +8722:emscripten::internal::FunctionInvoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29\2c\20bool\2c\20sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*>::invoke\28bool\20\28**\29\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29\2c\20sk_sp*\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29 +8723:emscripten::internal::FunctionInvoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29\2c\20bool\2c\20sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int>::invoke\28bool\20\28**\29\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8724:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\29 +8725:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20bool\29\2c\20SkPath*\2c\20float\2c\20float\2c\20bool\29 +8726:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20StrokeOpts\29\2c\20SkPath*\2c\20StrokeOpts*\29 +8727:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29\2c\20SkCanvas*\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8728:emscripten::internal::FunctionInvoker::invoke\28SkPath\20\28**\29\28SkPath\20const&\29\2c\20SkPath*\29 +8729:emscripten::internal::FunctionInvoker::invoke\28SkPath\20\28**\29\28SkContourMeasure&\2c\20float\2c\20float\2c\20bool\29\2c\20SkContourMeasure*\2c\20float\2c\20float\2c\20bool\29 +8730:emscripten::internal::FunctionInvoker::invoke\28SkPaint\20\28**\29\28SkPaint\20const&\29\2c\20SkPaint*\29 +8731:emscripten::internal::FunctionInvoker::invoke\28SimpleImageInfo\20\28**\29\28SkSurface&\29\2c\20SkSurface*\29 +8732:emscripten::internal::FunctionInvoker::invoke\28RuntimeEffectUniform\20\28**\29\28SkRuntimeEffect&\2c\20int\29\2c\20SkRuntimeEffect*\2c\20int\29 +8733:emit_message +8734:embind_init_Skia\28\29::$_9::__invoke\28SkAnimatedImage&\29 +8735:embind_init_Skia\28\29::$_99::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +8736:embind_init_Skia\28\29::$_98::__invoke\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20bool\29 +8737:embind_init_Skia\28\29::$_97::__invoke\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\29 +8738:embind_init_Skia\28\29::$_96::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20int\29 +8739:embind_init_Skia\28\29::$_95::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\29 +8740:embind_init_Skia\28\29::$_94::__invoke\28unsigned\20long\2c\20SkPath\29 +8741:embind_init_Skia\28\29::$_93::__invoke\28float\2c\20unsigned\20long\29 +8742:embind_init_Skia\28\29::$_92::__invoke\28unsigned\20long\2c\20int\2c\20float\29 +8743:embind_init_Skia\28\29::$_91::__invoke\28\29 +8744:embind_init_Skia\28\29::$_90::__invoke\28\29 +8745:embind_init_Skia\28\29::$_8::__invoke\28emscripten::val\29 +8746:embind_init_Skia\28\29::$_89::__invoke\28sk_sp\2c\20sk_sp\29 +8747:embind_init_Skia\28\29::$_88::__invoke\28SkPaint&\2c\20unsigned\20int\2c\20sk_sp\29 +8748:embind_init_Skia\28\29::$_87::__invoke\28SkPaint&\2c\20unsigned\20int\29 +8749:embind_init_Skia\28\29::$_86::__invoke\28SkPaint&\2c\20unsigned\20long\2c\20sk_sp\29 +8750:embind_init_Skia\28\29::$_85::__invoke\28SkPaint&\2c\20unsigned\20long\29 +8751:embind_init_Skia\28\29::$_84::__invoke\28SkPaint\20const&\29 +8752:embind_init_Skia\28\29::$_83::__invoke\28SkBlurStyle\2c\20float\2c\20bool\29 +8753:embind_init_Skia\28\29::$_82::__invoke\28float\2c\20float\2c\20sk_sp\29 +8754:embind_init_Skia\28\29::$_81::__invoke\28unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp\29 +8755:embind_init_Skia\28\29::$_80::__invoke\28unsigned\20long\2c\20float\2c\20float\2c\20sk_sp\29 +8756:embind_init_Skia\28\29::$_7::__invoke\28GrDirectContext&\2c\20unsigned\20long\29 +8757:embind_init_Skia\28\29::$_79::__invoke\28sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +8758:embind_init_Skia\28\29::$_78::__invoke\28sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29 +8759:embind_init_Skia\28\29::$_77::__invoke\28float\2c\20float\2c\20sk_sp\29 +8760:embind_init_Skia\28\29::$_76::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +8761:embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +8762:embind_init_Skia\28\29::$_74::__invoke\28sk_sp\29 +8763:embind_init_Skia\28\29::$_73::__invoke\28SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp\29 +8764:embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +8765:embind_init_Skia\28\29::$_71::__invoke\28sk_sp\2c\20sk_sp\29 +8766:embind_init_Skia\28\29::$_70::__invoke\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\29 +8767:embind_init_Skia\28\29::$_6::__invoke\28GrDirectContext&\29 +8768:embind_init_Skia\28\29::$_69::__invoke\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +8769:embind_init_Skia\28\29::$_68::__invoke\28SkImageFilter\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8770:embind_init_Skia\28\29::$_67::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8771:embind_init_Skia\28\29::$_66::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29 +8772:embind_init_Skia\28\29::$_65::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29 +8773:embind_init_Skia\28\29::$_64::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29 +8774:embind_init_Skia\28\29::$_63::__invoke\28sk_sp\29 +8775:embind_init_Skia\28\29::$_62::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29 +8776:embind_init_Skia\28\29::$_61::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +8777:embind_init_Skia\28\29::$_60::__invoke\28sk_sp\29 +8778:embind_init_Skia\28\29::$_5::__invoke\28GrDirectContext&\29 +8779:embind_init_Skia\28\29::$_59::__invoke\28sk_sp\29 +8780:embind_init_Skia\28\29::$_58::__invoke\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29 +8781:embind_init_Skia\28\29::$_57::__invoke\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +8782:embind_init_Skia\28\29::$_56::__invoke\28SkFontMgr&\2c\20int\29 +8783:embind_init_Skia\28\29::$_55::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20int\29 +8784:embind_init_Skia\28\29::$_54::__invoke\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20float\2c\20float\29 +8785:embind_init_Skia\28\29::$_53::__invoke\28SkFont&\29 +8786:embind_init_Skia\28\29::$_52::__invoke\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8787:embind_init_Skia\28\29::$_51::__invoke\28SkFont&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint*\29 +8788:embind_init_Skia\28\29::$_50::__invoke\28SkContourMeasure&\2c\20float\2c\20float\2c\20bool\29 +8789:embind_init_Skia\28\29::$_4::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +8790:embind_init_Skia\28\29::$_49::__invoke\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29 +8791:embind_init_Skia\28\29::$_48::__invoke\28unsigned\20long\29 +8792:embind_init_Skia\28\29::$_47::__invoke\28unsigned\20long\2c\20SkBlendMode\2c\20sk_sp\29 +8793:embind_init_Skia\28\29::$_46::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8794:embind_init_Skia\28\29::$_45::__invoke\28SkCanvas&\2c\20SkPaint\29 +8795:embind_init_Skia\28\29::$_44::__invoke\28SkCanvas&\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29 +8796:embind_init_Skia\28\29::$_43::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8797:embind_init_Skia\28\29::$_42::__invoke\28SkCanvas&\2c\20SimpleImageInfo\29 +8798:embind_init_Skia\28\29::$_41::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +8799:embind_init_Skia\28\29::$_40::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +8800:embind_init_Skia\28\29::$_3::__invoke\28unsigned\20long\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\29 +8801:embind_init_Skia\28\29::$_39::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +8802:embind_init_Skia\28\29::$_38::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29 +8803:embind_init_Skia\28\29::$_37::__invoke\28SkCanvas&\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20int\29 +8804:embind_init_Skia\28\29::$_36::__invoke\28SkCanvas&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +8805:embind_init_Skia\28\29::$_35::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8806:embind_init_Skia\28\29::$_34::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8807:embind_init_Skia\28\29::$_33::__invoke\28SkCanvas&\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint&\29 +8808:embind_init_Skia\28\29::$_32::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +8809:embind_init_Skia\28\29::$_31::__invoke\28SkCanvas&\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +8810:embind_init_Skia\28\29::$_30::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8811:embind_init_Skia\28\29::$_2::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29 +8812:embind_init_Skia\28\29::$_29::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +8813:embind_init_Skia\28\29::$_28::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8814:embind_init_Skia\28\29::$_27::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const*\2c\20bool\29 +8815:embind_init_Skia\28\29::$_26::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +8816:embind_init_Skia\28\29::$_25::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +8817:embind_init_Skia\28\29::$_24::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8818:embind_init_Skia\28\29::$_23::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8819:embind_init_Skia\28\29::$_22::__invoke\28SkCanvas&\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29 +8820:embind_init_Skia\28\29::$_21::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8821:embind_init_Skia\28\29::$_20::__invoke\28SkCanvas&\2c\20unsigned\20int\2c\20SkBlendMode\29 +8822:embind_init_Skia\28\29::$_1::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +8823:embind_init_Skia\28\29::$_19::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29 +8824:embind_init_Skia\28\29::$_18::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +8825:embind_init_Skia\28\29::$_17::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8826:embind_init_Skia\28\29::$_16::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +8827:embind_init_Skia\28\29::$_15::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +8828:embind_init_Skia\28\29::$_14::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +8829:embind_init_Skia\28\29::$_146::__invoke\28SkVertices::Builder&\29 +8830:embind_init_Skia\28\29::$_145::__invoke\28SkVertices::Builder&\29 +8831:embind_init_Skia\28\29::$_144::__invoke\28SkVertices::Builder&\29 +8832:embind_init_Skia\28\29::$_143::__invoke\28SkVertices::Builder&\29 +8833:embind_init_Skia\28\29::$_142::__invoke\28SkVertices&\2c\20unsigned\20long\29 +8834:embind_init_Skia\28\29::$_141::__invoke\28SkTypeface&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8835:embind_init_Skia\28\29::$_140::__invoke\28unsigned\20long\2c\20int\29 +8836:embind_init_Skia\28\29::$_13::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +8837:embind_init_Skia\28\29::$_139::__invoke\28\29 +8838:embind_init_Skia\28\29::$_138::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8839:embind_init_Skia\28\29::$_137::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8840:embind_init_Skia\28\29::$_136::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8841:embind_init_Skia\28\29::$_135::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8842:embind_init_Skia\28\29::$_134::__invoke\28SkSurface&\29 +8843:embind_init_Skia\28\29::$_133::__invoke\28SkSurface&\29 +8844:embind_init_Skia\28\29::$_132::__invoke\28SkSurface&\29 +8845:embind_init_Skia\28\29::$_131::__invoke\28SkSurface&\2c\20SimpleImageInfo\29 +8846:embind_init_Skia\28\29::$_130::__invoke\28SkSurface&\2c\20unsigned\20long\29 +8847:embind_init_Skia\28\29::$_12::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +8848:embind_init_Skia\28\29::$_129::__invoke\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29 +8849:embind_init_Skia\28\29::$_128::__invoke\28SkSurface&\29 +8850:embind_init_Skia\28\29::$_127::__invoke\28SkSurface&\29 +8851:embind_init_Skia\28\29::$_126::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\29 +8852:embind_init_Skia\28\29::$_125::__invoke\28SkRuntimeEffect&\2c\20int\29 +8853:embind_init_Skia\28\29::$_124::__invoke\28SkRuntimeEffect&\2c\20int\29 +8854:embind_init_Skia\28\29::$_123::__invoke\28SkRuntimeEffect&\29 +8855:embind_init_Skia\28\29::$_122::__invoke\28SkRuntimeEffect&\29 +8856:embind_init_Skia\28\29::$_121::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +8857:embind_init_Skia\28\29::$_120::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8858:embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +8859:embind_init_Skia\28\29::$_119::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29 +8860:embind_init_Skia\28\29::$_118::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +8861:embind_init_Skia\28\29::$_117::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +8862:embind_init_Skia\28\29::$_116::__invoke\28unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +8863:embind_init_Skia\28\29::$_115::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +8864:embind_init_Skia\28\29::$_114::__invoke\28float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +8865:embind_init_Skia\28\29::$_113::__invoke\28float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +8866:embind_init_Skia\28\29::$_112::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +8867:embind_init_Skia\28\29::$_111::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +8868:embind_init_Skia\28\29::$_110::__invoke\28unsigned\20long\2c\20sk_sp\29 +8869:embind_init_Skia\28\29::$_10::__invoke\28SkAnimatedImage&\29 +8870:embind_init_Skia\28\29::$_109::__invoke\28SkPicture&\29 +8871:embind_init_Skia\28\29::$_108::__invoke\28SkPicture&\2c\20unsigned\20long\29 +8872:embind_init_Skia\28\29::$_107::__invoke\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +8873:embind_init_Skia\28\29::$_106::__invoke\28SkPictureRecorder&\29 +8874:embind_init_Skia\28\29::$_105::__invoke\28SkPictureRecorder&\2c\20unsigned\20long\2c\20bool\29 +8875:embind_init_Skia\28\29::$_104::__invoke\28SkPath&\2c\20unsigned\20long\29 +8876:embind_init_Skia\28\29::$_103::__invoke\28SkPath&\2c\20unsigned\20long\29 +8877:embind_init_Skia\28\29::$_102::__invoke\28SkPath&\2c\20int\2c\20unsigned\20long\29 +8878:embind_init_Skia\28\29::$_101::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\29 +8879:embind_init_Skia\28\29::$_100::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +8880:embind_init_Skia\28\29::$_0::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +8881:embind_init_Paragraph\28\29::$_9::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +8882:embind_init_Paragraph\28\29::$_8::__invoke\28skia::textlayout::ParagraphBuilderImpl&\29 +8883:embind_init_Paragraph\28\29::$_7::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29 +8884:embind_init_Paragraph\28\29::$_6::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\2c\20SkPaint\2c\20SkPaint\29 +8885:embind_init_Paragraph\28\29::$_5::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29 +8886:embind_init_Paragraph\28\29::$_4::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +8887:embind_init_Paragraph\28\29::$_3::__invoke\28emscripten::val\2c\20emscripten::val\2c\20float\29 +8888:embind_init_Paragraph\28\29::$_2::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +8889:embind_init_Paragraph\28\29::$_18::__invoke\28skia::textlayout::FontCollection&\2c\20sk_sp\20const&\29 +8890:embind_init_Paragraph\28\29::$_17::__invoke\28\29 +8891:embind_init_Paragraph\28\29::$_16::__invoke\28skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long\29 +8892:embind_init_Paragraph\28\29::$_15::__invoke\28\29 +8893:embind_init_Paragraph\28\29::$_14::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +8894:embind_init_Paragraph\28\29::$_13::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +8895:embind_init_Paragraph\28\29::$_12::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +8896:embind_init_Paragraph\28\29::$_11::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +8897:embind_init_Paragraph\28\29::$_10::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +8898:dispose_external_texture\28void*\29 +8899:deleteJSTexture\28void*\29 +8900:deflate_slow +8901:deflate_fast +8902:defaultGetValue\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8903:defaultGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +8904:defaultContains\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8905:decompress_smooth_data +8906:decompress_onepass +8907:decompress_data +8908:decompose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +8909:decompose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +8910:decompose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +8911:decode_mcu_DC_refine +8912:decode_mcu_DC_first +8913:decode_mcu_AC_refine +8914:decode_mcu_AC_first +8915:decode_mcu +8916:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::Make\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20bool\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8917:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&\2c\20GrShaderCaps\20const&>\28SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28skgpu::ganesh::\28anonymous\20namespace\29::HullShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8918:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::StrokeTessellator::PathStrokeList&&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator::PathStrokeList&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8919:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8920:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&>\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29::'lambda'\28void*\29>\28skgpu::ganesh::PathTessellator::PathDrawList&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8921:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Make\28SkArenaAlloc*\2c\20GrAAType\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::ProcessorFlags\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8922:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerSkyline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8923:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerPow2&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8924:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make*\20SkArenaAlloc::make>\28\29::'lambda'\28void*\29>\28sk_sp&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8925:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc>\28\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::TextureOpImpl::Desc&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8926:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::TentPass*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TentPass\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&>\28skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::TentPass&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8927:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::SimpleTriangleShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::SimpleTriangleShader\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&>\28SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::SimpleTriangleShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8928:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass*\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&>\28skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::GaussPass&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8929:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::DrawAtlasPathShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::DrawAtlasPathShader\2c\20bool&\2c\20skgpu::ganesh::AtlasInstancedHelper*\2c\20GrShaderCaps\20const&>\28bool&\2c\20skgpu::ganesh::AtlasInstancedHelper*&&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::DrawAtlasPathShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8930:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::BoundingBoxShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::BoundingBoxShader\2c\20SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&>\28SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::BoundingBoxShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8931:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20unsigned\20char&&\29::'lambda'\28void*\29>\28Sprite_D32_S32&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8932:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTriColorShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8933:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTCubic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8934:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTConic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8935:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\29::'lambda'\28void*\29>\28SkSpriteBlitter_Memcpy&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8936:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkShaderBase::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::CallbackCtx&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8937:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&>\28SkPixmap\20const&\2c\20SkArenaAlloc*&\2c\20sk_sp&\29::'lambda'\28void*\29>\28SkRasterPipelineSpriteBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8938:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkArenaAlloc*&\29::'lambda'\28void*\29>\28SkRasterPipelineBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8939:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8940:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkImage_Base\20const*&&\2c\20SkMatrix\20const&\2c\20SkMipmapMode&\29::'lambda'\28void*\29>\28SkMipmapAccessor&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8941:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::PathData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8942:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8943:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkGlyph&&\29::'lambda'\28void*\29>\28SkGlyph&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8944:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&\29>>::Node*\20SkArenaAlloc::make&\29>>::Node\2c\20std::__2::function&\29>>\28std::__2::function&\29>&&\29::'lambda'\28void*\29>\28SkArenaAllocList&\29>>::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8945:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node\2c\20std::__2::function&\29>\2c\20skgpu::AtlasToken>\28std::__2::function&\29>&&\2c\20skgpu::AtlasToken&&\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8946:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node>\28\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8947:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29::'lambda'\28void*\29>\28SkA8_Coverage_Blitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8948:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28GrSimpleMesh&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8949:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29::'lambda'\28void*\29>\28GrResourceAllocator::Register&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8950:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPath\20const&\2c\20SkArenaAlloc*\20const&\29::'lambda'\28void*\29>\28GrInnerFanTriangulator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8951:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrDistanceFieldLCDTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20GrDistanceFieldLCDTextGeoProc::DistanceAdjust\2c\20unsigned\20int\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8952:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29>\28GrBitmapTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8953:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrAppliedClip&&\29::'lambda'\28void*\29>\28GrAppliedClip&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8954:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28EllipseGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8955:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_construct\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__ctor>&\2c\20std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +8956:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&\29 +8957:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +8958:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +8959:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\29 +8960:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_construct\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__ctor>&\2c\20std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +8961:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&\29 +8962:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +8963:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +8964:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +8965:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\29 +8966:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul>::__dispatch\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\29 +8967:deallocate_buffer_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8968:ddquad_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8969:ddquad_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8970:ddline_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8971:ddline_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8972:ddcubic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8973:ddcubic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8974:ddconic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8975:ddconic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8976:data_destroy_use\28void*\29 +8977:data_create_use\28hb_ot_shape_plan_t\20const*\29 +8978:data_create_khmer\28hb_ot_shape_plan_t\20const*\29 +8979:data_create_indic\28hb_ot_shape_plan_t\20const*\29 +8980:data_create_hangul\28hb_ot_shape_plan_t\20const*\29 +8981:copy\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8982:convert_bytes_to_data +8983:consume_markers +8984:consume_data +8985:computeTonalColors\28unsigned\20long\2c\20unsigned\20long\29 +8986:compose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8987:compose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8988:compose_hebrew\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8989:compare_ppem +8990:compare_offsets +8991:compare_myanmar_order\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +8992:compare_combining_class\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +8993:compareKeywordStructs\28void\20const*\2c\20void\20const*\2c\20void\20const*\29 +8994:compareEntries\28UElement\2c\20UElement\29 +8995:color_quantize3 +8996:color_quantize +8997:collect_features_use\28hb_ot_shape_planner_t*\29 +8998:collect_features_myanmar\28hb_ot_shape_planner_t*\29 +8999:collect_features_khmer\28hb_ot_shape_planner_t*\29 +9000:collect_features_indic\28hb_ot_shape_planner_t*\29 +9001:collect_features_hangul\28hb_ot_shape_planner_t*\29 +9002:collect_features_arabic\28hb_ot_shape_planner_t*\29 +9003:clip\28SkPath\20const&\2c\20SkHalfPlane\20const&\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +9004:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitStatement\28SkSL::Statement\20const&\29 +9005:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9006:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitExpression\28SkSL::Expression\20const&\29 +9007:charIterTextLength\28UText*\29 +9008:charIterTextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +9009:charIterTextClose\28UText*\29 +9010:charIterTextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +9011:changesWhenNFKC_Casefolded\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +9012:changesWhenCasefolded\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +9013:cff_slot_init +9014:cff_slot_done +9015:cff_size_request +9016:cff_size_init +9017:cff_size_done +9018:cff_sid_to_glyph_name +9019:cff_set_var_design +9020:cff_set_mm_weightvector +9021:cff_set_mm_blend +9022:cff_set_instance +9023:cff_random +9024:cff_ps_has_glyph_names +9025:cff_ps_get_font_info +9026:cff_ps_get_font_extra +9027:cff_parse_vsindex +9028:cff_parse_private_dict +9029:cff_parse_multiple_master +9030:cff_parse_maxstack +9031:cff_parse_font_matrix +9032:cff_parse_font_bbox +9033:cff_parse_cid_ros +9034:cff_parse_blend +9035:cff_metrics_adjust +9036:cff_hadvance_adjust +9037:cff_glyph_load +9038:cff_get_var_design +9039:cff_get_var_blend +9040:cff_get_standard_encoding +9041:cff_get_ros +9042:cff_get_ps_name +9043:cff_get_name_index +9044:cff_get_mm_weightvector +9045:cff_get_mm_var +9046:cff_get_mm_blend +9047:cff_get_is_cid +9048:cff_get_interface +9049:cff_get_glyph_name +9050:cff_get_glyph_data +9051:cff_get_cmap_info +9052:cff_get_cid_from_glyph_index +9053:cff_get_advances +9054:cff_free_glyph_data +9055:cff_fd_select_get +9056:cff_face_init +9057:cff_face_done +9058:cff_driver_init +9059:cff_done_blend +9060:cff_decoder_prepare +9061:cff_decoder_init +9062:cff_cmap_unicode_init +9063:cff_cmap_unicode_char_next +9064:cff_cmap_unicode_char_index +9065:cff_cmap_encoding_init +9066:cff_cmap_encoding_done +9067:cff_cmap_encoding_char_next +9068:cff_cmap_encoding_char_index +9069:cff_builder_start_point +9070:cff_builder_init +9071:cff_builder_add_point1 +9072:cff_builder_add_point +9073:cff_builder_add_contour +9074:cff_blend_check_vector +9075:cf2_free_instance +9076:cf2_decoder_parse_charstrings +9077:cf2_builder_moveTo +9078:cf2_builder_lineTo +9079:cf2_builder_cubeTo +9080:caseBinaryPropertyContains\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +9081:bw_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9082:bw_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9083:bw_pt_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9084:bw_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9085:bw_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9086:breakiterator_cleanup\28\29 +9087:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::SpotVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9088:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::AmbientVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9089:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9090:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9091:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9092:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9093:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9094:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9095:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9096:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9097:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9098:blur_y_radius_4\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9099:blur_y_radius_3\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9100:blur_y_radius_2\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9101:blur_y_radius_1\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9102:blur_x_radius_4\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9103:blur_x_radius_3\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9104:blur_x_radius_2\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9105:blur_x_radius_1\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9106:blit_row_s32a_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9107:blit_row_s32_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9108:blit_row_s32_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9109:biDiGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +9110:argb32_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9111:arabic_fallback_shape\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9112:alwaysSaveTypefaceBytes\28SkTypeface*\2c\20void*\29 +9113:alloc_sarray +9114:alloc_barray +9115:afm_parser_parse +9116:afm_parser_init +9117:afm_parser_done +9118:afm_compare_kern_pairs +9119:af_property_set +9120:af_property_get +9121:af_latin_metrics_scale +9122:af_latin_metrics_init +9123:af_latin_hints_init +9124:af_latin_hints_apply +9125:af_latin_get_standard_widths +9126:af_indic_metrics_init +9127:af_indic_hints_apply +9128:af_get_interface +9129:af_face_globals_free +9130:af_dummy_hints_init +9131:af_dummy_hints_apply +9132:af_cjk_metrics_init +9133:af_autofitter_load_glyph +9134:af_autofitter_init +9135:access_virt_sarray +9136:access_virt_barray +9137:aa_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9138:aa_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9139:aa_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9140:_hb_ot_font_destroy\28void*\29 +9141:_hb_glyph_info_is_default_ignorable\28hb_glyph_info_t\20const*\29 +9142:_hb_face_for_data_reference_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +9143:_hb_face_for_data_closure_destroy\28void*\29 +9144:_hb_clear_substitution_flags\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9145:_embind_initialize_bindings +9146:__wasm_call_ctors +9147:__stdio_write +9148:__stdio_seek +9149:__stdio_read +9150:__stdio_close +9151:__getTypeName +9152:__cxxabiv1::__vmi_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9153:__cxxabiv1::__vmi_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9154:__cxxabiv1::__vmi_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +9155:__cxxabiv1::__si_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9156:__cxxabiv1::__si_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9157:__cxxabiv1::__si_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +9158:__cxxabiv1::__class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9159:__cxxabiv1::__class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9160:__cxxabiv1::__class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +9161:__cxxabiv1::__class_type_info::can_catch\28__cxxabiv1::__shim_type_info\20const*\2c\20void*&\29\20const +9162:__cxx_global_array_dtor.87 +9163:__cxx_global_array_dtor.72 +9164:__cxx_global_array_dtor.6 +9165:__cxx_global_array_dtor.57 +9166:__cxx_global_array_dtor.5 +9167:__cxx_global_array_dtor.44 +9168:__cxx_global_array_dtor.42 +9169:__cxx_global_array_dtor.40 +9170:__cxx_global_array_dtor.4 +9171:__cxx_global_array_dtor.38 +9172:__cxx_global_array_dtor.36 +9173:__cxx_global_array_dtor.34 +9174:__cxx_global_array_dtor.32 +9175:__cxx_global_array_dtor.3.1 +9176:__cxx_global_array_dtor.2 +9177:__cxx_global_array_dtor.17 +9178:__cxx_global_array_dtor.16 +9179:__cxx_global_array_dtor.15 +9180:__cxx_global_array_dtor.138 +9181:__cxx_global_array_dtor.135 +9182:__cxx_global_array_dtor.111 +9183:__cxx_global_array_dtor.11 +9184:__cxx_global_array_dtor.10 +9185:__cxx_global_array_dtor.1.1 +9186:__cxx_global_array_dtor.1 +9187:__cxx_global_array_dtor +9188:__cxa_pure_virtual +9189:__cxa_is_pointer_type +9190:\28anonymous\20namespace\29::uprops_cleanup\28\29 +9191:\28anonymous\20namespace\29::ulayout_isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +9192:\28anonymous\20namespace\29::skhb_nominal_glyphs\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +9193:\28anonymous\20namespace\29::skhb_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9194:\28anonymous\20namespace\29::skhb_glyph_h_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +9195:\28anonymous\20namespace\29::skhb_glyph_h_advance\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9196:\28anonymous\20namespace\29::skhb_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9197:\28anonymous\20namespace\29::skhb_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9198:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29::$_0::__invoke\28void*\29 +9199:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +9200:\28anonymous\20namespace\29::make_morphology\28\28anonymous\20namespace\29::MorphType\2c\20SkSize\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +9201:\28anonymous\20namespace\29::make_drop_shadow_graph\28SkPoint\2c\20SkSize\2c\20unsigned\20int\2c\20bool\2c\20sk_sp\2c\20std::__2::optional\20const&\29 +9202:\28anonymous\20namespace\29::extension_compare\28SkString\20const&\2c\20SkString\20const&\29 +9203:\28anonymous\20namespace\29::characterproperties_cleanup\28\29 +9204:\28anonymous\20namespace\29::_set_add\28USet*\2c\20int\29 +9205:\28anonymous\20namespace\29::_set_addString\28USet*\2c\20char16_t\20const*\2c\20int\29 +9206:\28anonymous\20namespace\29::_set_addRange\28USet*\2c\20int\2c\20int\29 +9207:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29.1 +9208:\28anonymous\20namespace\29::YUVPlanesRec::getCategory\28\29\20const +9209:\28anonymous\20namespace\29::YUVPlanesRec::diagnostic_only_getDiscardable\28\29\20const +9210:\28anonymous\20namespace\29::YUVPlanesRec::bytesUsed\28\29\20const +9211:\28anonymous\20namespace\29::YUVPlanesRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9212:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29.1 +9213:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29 +9214:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29.1 +9215:\28anonymous\20namespace\29::TriangulatingPathOp::visitProxies\28std::__2::function\20const&\29\20const +9216:\28anonymous\20namespace\29::TriangulatingPathOp::programInfo\28\29 +9217:\28anonymous\20namespace\29::TriangulatingPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9218:\28anonymous\20namespace\29::TriangulatingPathOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9219:\28anonymous\20namespace\29::TriangulatingPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9220:\28anonymous\20namespace\29::TriangulatingPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9221:\28anonymous\20namespace\29::TriangulatingPathOp::name\28\29\20const +9222:\28anonymous\20namespace\29::TriangulatingPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9223:\28anonymous\20namespace\29::TransformedMaskSubRun::unflattenSize\28\29\20const +9224:\28anonymous\20namespace\29::TransformedMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +9225:\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +9226:\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9227:\28anonymous\20namespace\29::TransformedMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +9228:\28anonymous\20namespace\29::TransformedMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +9229:\28anonymous\20namespace\29::TransformedMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +9230:\28anonymous\20namespace\29::TransformedMaskSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +9231:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29.1 +9232:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29 +9233:\28anonymous\20namespace\29::TextureOpImpl::visitProxies\28std::__2::function\20const&\29\20const +9234:\28anonymous\20namespace\29::TextureOpImpl::programInfo\28\29 +9235:\28anonymous\20namespace\29::TextureOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +9236:\28anonymous\20namespace\29::TextureOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9237:\28anonymous\20namespace\29::TextureOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9238:\28anonymous\20namespace\29::TextureOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9239:\28anonymous\20namespace\29::TextureOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9240:\28anonymous\20namespace\29::TextureOpImpl::name\28\29\20const +9241:\28anonymous\20namespace\29::TextureOpImpl::fixedFunctionFlags\28\29\20const +9242:\28anonymous\20namespace\29::TextureOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9243:\28anonymous\20namespace\29::TentPass::startBlur\28\29 +9244:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +9245:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +9246:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +9247:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29.1 +9248:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29 +9249:\28anonymous\20namespace\29::StaticVertexAllocator::unlock\28int\29 +9250:\28anonymous\20namespace\29::StaticVertexAllocator::lock\28unsigned\20long\2c\20int\29 +9251:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::currentScript\28\29\20const +9252:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::consume\28\29 +9253:\28anonymous\20namespace\29::SkUbrkGetLocaleByType::getLocaleByType\28UBreakIterator\20const*\2c\20ULocDataLocaleType\2c\20UErrorCode*\29 +9254:\28anonymous\20namespace\29::SkUbrkClone::clone\28UBreakIterator\20const*\2c\20UErrorCode*\29 +9255:\28anonymous\20namespace\29::SkShaderImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9256:\28anonymous\20namespace\29::SkShaderImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9257:\28anonymous\20namespace\29::SkShaderImageFilter::getTypeName\28\29\20const +9258:\28anonymous\20namespace\29::SkShaderImageFilter::flatten\28SkWriteBuffer&\29\20const +9259:\28anonymous\20namespace\29::SkShaderImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9260:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9261:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9262:\28anonymous\20namespace\29::SkMorphologyImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9263:\28anonymous\20namespace\29::SkMorphologyImageFilter::getTypeName\28\29\20const +9264:\28anonymous\20namespace\29::SkMorphologyImageFilter::flatten\28SkWriteBuffer&\29\20const +9265:\28anonymous\20namespace\29::SkMorphologyImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9266:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9267:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9268:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9269:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::getTypeName\28\29\20const +9270:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::flatten\28SkWriteBuffer&\29\20const +9271:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9272:\28anonymous\20namespace\29::SkImageImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9273:\28anonymous\20namespace\29::SkImageImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9274:\28anonymous\20namespace\29::SkImageImageFilter::getTypeName\28\29\20const +9275:\28anonymous\20namespace\29::SkImageImageFilter::flatten\28SkWriteBuffer&\29\20const +9276:\28anonymous\20namespace\29::SkImageImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9277:\28anonymous\20namespace\29::SkFTGeometrySink::Quad\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +9278:\28anonymous\20namespace\29::SkFTGeometrySink::Move\28FT_Vector_\20const*\2c\20void*\29 +9279:\28anonymous\20namespace\29::SkFTGeometrySink::Line\28FT_Vector_\20const*\2c\20void*\29 +9280:\28anonymous\20namespace\29::SkFTGeometrySink::Cubic\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +9281:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9282:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFamilyName\28SkString*\29\20const +9283:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +9284:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateFamilyNameIterator\28\29\20const +9285:\28anonymous\20namespace\29::SkEmptyTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +9286:\28anonymous\20namespace\29::SkEmptyTypeface::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +9287:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9288:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9289:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9290:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::getTypeName\28\29\20const +9291:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::flatten\28SkWriteBuffer&\29\20const +9292:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9293:\28anonymous\20namespace\29::SkCropImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9294:\28anonymous\20namespace\29::SkCropImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9295:\28anonymous\20namespace\29::SkCropImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9296:\28anonymous\20namespace\29::SkCropImageFilter::onAffectsTransparentBlack\28\29\20const +9297:\28anonymous\20namespace\29::SkCropImageFilter::getTypeName\28\29\20const +9298:\28anonymous\20namespace\29::SkCropImageFilter::flatten\28SkWriteBuffer&\29\20const +9299:\28anonymous\20namespace\29::SkCropImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9300:\28anonymous\20namespace\29::SkComposeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9301:\28anonymous\20namespace\29::SkComposeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9302:\28anonymous\20namespace\29::SkComposeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9303:\28anonymous\20namespace\29::SkComposeImageFilter::getTypeName\28\29\20const +9304:\28anonymous\20namespace\29::SkComposeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9305:\28anonymous\20namespace\29::SkColorFilterImageFilter::onIsColorFilterNode\28SkColorFilter**\29\20const +9306:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9307:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9308:\28anonymous\20namespace\29::SkColorFilterImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9309:\28anonymous\20namespace\29::SkColorFilterImageFilter::onAffectsTransparentBlack\28\29\20const +9310:\28anonymous\20namespace\29::SkColorFilterImageFilter::getTypeName\28\29\20const +9311:\28anonymous\20namespace\29::SkColorFilterImageFilter::flatten\28SkWriteBuffer&\29\20const +9312:\28anonymous\20namespace\29::SkColorFilterImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9313:\28anonymous\20namespace\29::SkBlurImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9314:\28anonymous\20namespace\29::SkBlurImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9315:\28anonymous\20namespace\29::SkBlurImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9316:\28anonymous\20namespace\29::SkBlurImageFilter::getTypeName\28\29\20const +9317:\28anonymous\20namespace\29::SkBlurImageFilter::flatten\28SkWriteBuffer&\29\20const +9318:\28anonymous\20namespace\29::SkBlurImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9319:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29.1 +9320:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29 +9321:\28anonymous\20namespace\29::SkBlendImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9322:\28anonymous\20namespace\29::SkBlendImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9323:\28anonymous\20namespace\29::SkBlendImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9324:\28anonymous\20namespace\29::SkBlendImageFilter::onAffectsTransparentBlack\28\29\20const +9325:\28anonymous\20namespace\29::SkBlendImageFilter::getTypeName\28\29\20const +9326:\28anonymous\20namespace\29::SkBlendImageFilter::flatten\28SkWriteBuffer&\29\20const +9327:\28anonymous\20namespace\29::SkBlendImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9328:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29.1 +9329:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29 +9330:\28anonymous\20namespace\29::SkBidiIterator_icu::getLevelAt\28int\29 +9331:\28anonymous\20namespace\29::SkBidiIterator_icu::getLength\28\29 +9332:\28anonymous\20namespace\29::SimpleTriangleShader::name\28\29\20const +9333:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9334:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9335:\28anonymous\20namespace\29::ShaperHarfBuzz::~ShaperHarfBuzz\28\29.1 +9336:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::FontRunIterator&\2c\20SkShaper::BiDiRunIterator&\2c\20SkShaper::ScriptRunIterator&\2c\20SkShaper::LanguageRunIterator&\2c\20float\2c\20SkShaper::RunHandler*\29\20const +9337:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::FontRunIterator&\2c\20SkShaper::BiDiRunIterator&\2c\20SkShaper::ScriptRunIterator&\2c\20SkShaper::LanguageRunIterator&\2c\20SkShaper::Feature\20const*\2c\20unsigned\20long\2c\20float\2c\20SkShaper::RunHandler*\29\20const +9338:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20bool\2c\20float\2c\20SkShaper::RunHandler*\29\20const +9339:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::~ShapeDontWrapOrReorder\28\29 +9340:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::wrap\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::BiDiRunIterator\20const&\2c\20SkShaper::LanguageRunIterator\20const&\2c\20SkShaper::ScriptRunIterator\20const&\2c\20SkShaper::FontRunIterator\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue&\2c\20SkShaper::Feature\20const*\2c\20unsigned\20long\2c\20float\2c\20SkShaper::RunHandler*\29\20const +9341:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29.1 +9342:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29 +9343:\28anonymous\20namespace\29::ShadowInvalidator::changed\28\29 +9344:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29.1 +9345:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29 +9346:\28anonymous\20namespace\29::ShadowCircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +9347:\28anonymous\20namespace\29::ShadowCircularRRectOp::programInfo\28\29 +9348:\28anonymous\20namespace\29::ShadowCircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9349:\28anonymous\20namespace\29::ShadowCircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9350:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9351:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9352:\28anonymous\20namespace\29::ShadowCircularRRectOp::name\28\29\20const +9353:\28anonymous\20namespace\29::ShadowCircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9354:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +9355:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +9356:\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +9357:\28anonymous\20namespace\29::SDFTSubRun::unflattenSize\28\29\20const +9358:\28anonymous\20namespace\29::SDFTSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +9359:\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +9360:\28anonymous\20namespace\29::SDFTSubRun::glyphs\28\29\20const +9361:\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +9362:\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9363:\28anonymous\20namespace\29::SDFTSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +9364:\28anonymous\20namespace\29::SDFTSubRun::doFlatten\28SkWriteBuffer&\29\20const +9365:\28anonymous\20namespace\29::SDFTSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +9366:\28anonymous\20namespace\29::SDFTSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +9367:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29.1 +9368:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29 +9369:\28anonymous\20namespace\29::RectsBlurRec::getCategory\28\29\20const +9370:\28anonymous\20namespace\29::RectsBlurRec::diagnostic_only_getDiscardable\28\29\20const +9371:\28anonymous\20namespace\29::RectsBlurRec::bytesUsed\28\29\20const +9372:\28anonymous\20namespace\29::RectsBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9373:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29.1 +9374:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29 +9375:\28anonymous\20namespace\29::RRectBlurRec::getCategory\28\29\20const +9376:\28anonymous\20namespace\29::RRectBlurRec::diagnostic_only_getDiscardable\28\29\20const +9377:\28anonymous\20namespace\29::RRectBlurRec::bytesUsed\28\29\20const +9378:\28anonymous\20namespace\29::RRectBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9379:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29.1 +9380:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29 +9381:\28anonymous\20namespace\29::PathSubRun::unflattenSize\28\29\20const +9382:\28anonymous\20namespace\29::PathSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +9383:\28anonymous\20namespace\29::PathSubRun::doFlatten\28SkWriteBuffer&\29\20const +9384:\28anonymous\20namespace\29::PathSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +9385:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29.1 +9386:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29 +9387:\28anonymous\20namespace\29::MipMapRec::getCategory\28\29\20const +9388:\28anonymous\20namespace\29::MipMapRec::diagnostic_only_getDiscardable\28\29\20const +9389:\28anonymous\20namespace\29::MipMapRec::bytesUsed\28\29\20const +9390:\28anonymous\20namespace\29::MipMapRec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +9391:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29.1 +9392:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29 +9393:\28anonymous\20namespace\29::MiddleOutShader::name\28\29\20const +9394:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9395:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9396:\28anonymous\20namespace\29::MiddleOutShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9397:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29.1 +9398:\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const +9399:\28anonymous\20namespace\29::MeshOp::programInfo\28\29 +9400:\28anonymous\20namespace\29::MeshOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9401:\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9402:\28anonymous\20namespace\29::MeshOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9403:\28anonymous\20namespace\29::MeshOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9404:\28anonymous\20namespace\29::MeshOp::name\28\29\20const +9405:\28anonymous\20namespace\29::MeshOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9406:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29.1 +9407:\28anonymous\20namespace\29::MeshGP::onTextureSampler\28int\29\20const +9408:\28anonymous\20namespace\29::MeshGP::name\28\29\20const +9409:\28anonymous\20namespace\29::MeshGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9410:\28anonymous\20namespace\29::MeshGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9411:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29.1 +9412:\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +9413:\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9414:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +9415:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +9416:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +9417:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleBlender\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +9418:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMangledName\28char\20const*\29 +9419:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMainName\28\29 +9420:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +9421:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +9422:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +9423:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareFunction\28char\20const*\29 +9424:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29.1 +9425:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29 +9426:\28anonymous\20namespace\29::ImageFromPictureRec::getCategory\28\29\20const +9427:\28anonymous\20namespace\29::ImageFromPictureRec::bytesUsed\28\29\20const +9428:\28anonymous\20namespace\29::ImageFromPictureRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9429:\28anonymous\20namespace\29::HQDownSampler::buildLevel\28SkPixmap\20const&\2c\20SkPixmap\20const&\29 +9430:\28anonymous\20namespace\29::GaussPass::startBlur\28\29 +9431:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +9432:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +9433:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +9434:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29.1 +9435:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29 +9436:\28anonymous\20namespace\29::FillRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +9437:\28anonymous\20namespace\29::FillRectOpImpl::programInfo\28\29 +9438:\28anonymous\20namespace\29::FillRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +9439:\28anonymous\20namespace\29::FillRectOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9440:\28anonymous\20namespace\29::FillRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9441:\28anonymous\20namespace\29::FillRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9442:\28anonymous\20namespace\29::FillRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9443:\28anonymous\20namespace\29::FillRectOpImpl::name\28\29\20const +9444:\28anonymous\20namespace\29::FillRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9445:\28anonymous\20namespace\29::EllipticalRRectEffect::onMakeProgramImpl\28\29\20const +9446:\28anonymous\20namespace\29::EllipticalRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9447:\28anonymous\20namespace\29::EllipticalRRectEffect::name\28\29\20const +9448:\28anonymous\20namespace\29::EllipticalRRectEffect::clone\28\29\20const +9449:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +9450:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +9451:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29.1 +9452:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29 +9453:\28anonymous\20namespace\29::DrawableSubRun::unflattenSize\28\29\20const +9454:\28anonymous\20namespace\29::DrawableSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +9455:\28anonymous\20namespace\29::DrawableSubRun::doFlatten\28SkWriteBuffer&\29\20const +9456:\28anonymous\20namespace\29::DrawableSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +9457:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29.1 +9458:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29 +9459:\28anonymous\20namespace\29::DrawAtlasPathShader::onTextureSampler\28int\29\20const +9460:\28anonymous\20namespace\29::DrawAtlasPathShader::name\28\29\20const +9461:\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9462:\28anonymous\20namespace\29::DrawAtlasPathShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9463:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +9464:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9465:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29.1 +9466:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29 +9467:\28anonymous\20namespace\29::DrawAtlasOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +9468:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9469:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9470:\28anonymous\20namespace\29::DrawAtlasOpImpl::name\28\29\20const +9471:\28anonymous\20namespace\29::DrawAtlasOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9472:\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +9473:\28anonymous\20namespace\29::DirectMaskSubRun::unflattenSize\28\29\20const +9474:\28anonymous\20namespace\29::DirectMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +9475:\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +9476:\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9477:\28anonymous\20namespace\29::DirectMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +9478:\28anonymous\20namespace\29::DirectMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +9479:\28anonymous\20namespace\29::DirectMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +9480:\28anonymous\20namespace\29::DirectMaskSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +9481:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29.1 +9482:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29 +9483:\28anonymous\20namespace\29::DefaultPathOp::visitProxies\28std::__2::function\20const&\29\20const +9484:\28anonymous\20namespace\29::DefaultPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9485:\28anonymous\20namespace\29::DefaultPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9486:\28anonymous\20namespace\29::DefaultPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9487:\28anonymous\20namespace\29::DefaultPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9488:\28anonymous\20namespace\29::DefaultPathOp::name\28\29\20const +9489:\28anonymous\20namespace\29::DefaultPathOp::fixedFunctionFlags\28\29\20const +9490:\28anonymous\20namespace\29::DefaultPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9491:\28anonymous\20namespace\29::CircularRRectEffect::onMakeProgramImpl\28\29\20const +9492:\28anonymous\20namespace\29::CircularRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9493:\28anonymous\20namespace\29::CircularRRectEffect::name\28\29\20const +9494:\28anonymous\20namespace\29::CircularRRectEffect::clone\28\29\20const +9495:\28anonymous\20namespace\29::CircularRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +9496:\28anonymous\20namespace\29::CircularRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +9497:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29.1 +9498:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29 +9499:\28anonymous\20namespace\29::CachedTessellationsRec::getCategory\28\29\20const +9500:\28anonymous\20namespace\29::CachedTessellationsRec::bytesUsed\28\29\20const +9501:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29.1 +9502:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29.1 +9503:\28anonymous\20namespace\29::CacheImpl::set\28SkImageFilterCacheKey\20const&\2c\20SkImageFilter\20const*\2c\20skif::FilterResult\20const&\29 +9504:\28anonymous\20namespace\29::CacheImpl::purge\28\29 +9505:\28anonymous\20namespace\29::CacheImpl::purgeByImageFilter\28SkImageFilter\20const*\29 +9506:\28anonymous\20namespace\29::CacheImpl::get\28SkImageFilterCacheKey\20const&\2c\20skif::FilterResult*\29\20const +9507:\28anonymous\20namespace\29::BoundingBoxShader::name\28\29\20const +9508:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +9509:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9510:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9511:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29.1 +9512:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29 +9513:\28anonymous\20namespace\29::AAHairlineOp::visitProxies\28std::__2::function\20const&\29\20const +9514:\28anonymous\20namespace\29::AAHairlineOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9515:\28anonymous\20namespace\29::AAHairlineOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9516:\28anonymous\20namespace\29::AAHairlineOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9517:\28anonymous\20namespace\29::AAHairlineOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9518:\28anonymous\20namespace\29::AAHairlineOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9519:\28anonymous\20namespace\29::AAHairlineOp::name\28\29\20const +9520:\28anonymous\20namespace\29::AAHairlineOp::fixedFunctionFlags\28\29\20const +9521:\28anonymous\20namespace\29::AAHairlineOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9522:YuvToRgbaRow +9523:YuvToRgba4444Row +9524:YuvToRgbRow +9525:YuvToRgb565Row +9526:YuvToBgraRow +9527:YuvToBgrRow +9528:YuvToArgbRow +9529:Write_CVT_Stretched +9530:Write_CVT +9531:WebPYuv444ToRgba_C +9532:WebPYuv444ToRgba4444_C +9533:WebPYuv444ToRgb_C +9534:WebPYuv444ToRgb565_C +9535:WebPYuv444ToBgra_C +9536:WebPYuv444ToBgr_C +9537:WebPYuv444ToArgb_C +9538:WebPRescalerImportRowShrink_C +9539:WebPRescalerImportRowExpand_C +9540:WebPRescalerExportRowShrink_C +9541:WebPRescalerExportRowExpand_C +9542:WebPMultRow_C +9543:WebPMultARGBRow_C +9544:WebPConvertRGBA32ToUV_C +9545:WebPConvertARGBToUV_C +9546:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29.1 +9547:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29 +9548:WebGLTextureImageGenerator::generateExternalTexture\28GrRecordingContext*\2c\20skgpu::Mipmapped\29 +9549:Vertish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +9550:Vertish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +9551:VerticalUnfilter_C +9552:VerticalFilter_C +9553:VertState::Triangles\28VertState*\29 +9554:VertState::TrianglesX\28VertState*\29 +9555:VertState::TriangleStrip\28VertState*\29 +9556:VertState::TriangleStripX\28VertState*\29 +9557:VertState::TriangleFan\28VertState*\29 +9558:VertState::TriangleFanX\28VertState*\29 +9559:VR4_C +9560:VP8LTransformColorInverse_C +9561:VP8LPredictor9_C +9562:VP8LPredictor8_C +9563:VP8LPredictor7_C +9564:VP8LPredictor6_C +9565:VP8LPredictor5_C +9566:VP8LPredictor4_C +9567:VP8LPredictor3_C +9568:VP8LPredictor2_C +9569:VP8LPredictor1_C +9570:VP8LPredictor13_C +9571:VP8LPredictor12_C +9572:VP8LPredictor11_C +9573:VP8LPredictor10_C +9574:VP8LPredictor0_C +9575:VP8LConvertBGRAToRGB_C +9576:VP8LConvertBGRAToRGBA_C +9577:VP8LConvertBGRAToRGBA4444_C +9578:VP8LConvertBGRAToRGB565_C +9579:VP8LConvertBGRAToBGR_C +9580:VP8LAddGreenToBlueAndRed_C +9581:VLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +9582:VLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +9583:VL4_C +9584:VFilter8i_C +9585:VFilter8_C +9586:VFilter16i_C +9587:VFilter16_C +9588:VE8uv_C +9589:VE4_C +9590:VE16_C +9591:UpsampleRgbaLinePair_C +9592:UpsampleRgba4444LinePair_C +9593:UpsampleRgbLinePair_C +9594:UpsampleRgb565LinePair_C +9595:UpsampleBgraLinePair_C +9596:UpsampleBgrLinePair_C +9597:UpsampleArgbLinePair_C +9598:UnresolvedCodepoints\28skia::textlayout::Paragraph&\29 +9599:UnicodeString_charAt\28int\2c\20void*\29 +9600:TransformWHT_C +9601:TransformUV_C +9602:TransformTwo_C +9603:TransformDC_C +9604:TransformDCUV_C +9605:TransformAC3_C +9606:ToSVGString\28SkPath\20const&\29 +9607:ToCmds\28SkPath\20const&\29 +9608:TT_Set_MM_Blend +9609:TT_RunIns +9610:TT_Load_Simple_Glyph +9611:TT_Load_Glyph_Header +9612:TT_Load_Composite_Glyph +9613:TT_Get_Var_Design +9614:TT_Get_MM_Blend +9615:TT_Forget_Glyph_Frame +9616:TT_Access_Glyph_Frame +9617:TM8uv_C +9618:TM4_C +9619:TM16_C +9620:Sync +9621:SquareCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +9622:Sprite_D32_S32::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9623:SkWuffsFrameHolder::onGetFrame\28int\29\20const +9624:SkWuffsCodec::~SkWuffsCodec\28\29.1 +9625:SkWuffsCodec::~SkWuffsCodec\28\29 +9626:SkWuffsCodec::onIncrementalDecode\28int*\29 +9627:SkWuffsCodec::onGetRepetitionCount\28\29 +9628:SkWuffsCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9629:SkWuffsCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +9630:SkWuffsCodec::onGetFrameCount\28\29 +9631:SkWuffsCodec::getFrameHolder\28\29\20const +9632:SkWriteICCProfile\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +9633:SkWebpDecoder::IsWebp\28void\20const*\2c\20unsigned\20long\29 +9634:SkWebpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9635:SkWebpCodec::~SkWebpCodec\28\29.1 +9636:SkWebpCodec::~SkWebpCodec\28\29 +9637:SkWebpCodec::onGetValidSubset\28SkIRect*\29\20const +9638:SkWebpCodec::onGetRepetitionCount\28\29 +9639:SkWebpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9640:SkWebpCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +9641:SkWebpCodec::onGetFrameCount\28\29 +9642:SkWebpCodec::getFrameHolder\28\29\20const +9643:SkWebpCodec::FrameHolder::~FrameHolder\28\29.1 +9644:SkWebpCodec::FrameHolder::~FrameHolder\28\29 +9645:SkWebpCodec::FrameHolder::onGetFrame\28int\29\20const +9646:SkWeakRefCnt::internal_dispose\28\29\20const +9647:SkWbmpDecoder::IsWbmp\28void\20const*\2c\20unsigned\20long\29 +9648:SkWbmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9649:SkWbmpCodec::~SkWbmpCodec\28\29.1 +9650:SkWbmpCodec::~SkWbmpCodec\28\29 +9651:SkWbmpCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9652:SkWbmpCodec::onSkipScanlines\28int\29 +9653:SkWbmpCodec::onRewind\28\29 +9654:SkWbmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9655:SkWbmpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9656:SkWbmpCodec::getSampler\28bool\29 +9657:SkWbmpCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9658:SkVertices::Builder*\20emscripten::internal::operator_new\28SkVertices::VertexMode&&\2c\20int&&\2c\20int&&\2c\20unsigned\20int&&\29 +9659:SkUserTypeface::~SkUserTypeface\28\29.1 +9660:SkUserTypeface::~SkUserTypeface\28\29 +9661:SkUserTypeface::onOpenStream\28int*\29\20const +9662:SkUserTypeface::onGetUPEM\28\29\20const +9663:SkUserTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9664:SkUserTypeface::onGetFamilyName\28SkString*\29\20const +9665:SkUserTypeface::onFilterRec\28SkScalerContextRec*\29\20const +9666:SkUserTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +9667:SkUserTypeface::onCountGlyphs\28\29\20const +9668:SkUserTypeface::onComputeBounds\28SkRect*\29\20const +9669:SkUserTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +9670:SkUserTypeface::getGlyphToUnicodeMap\28int*\29\20const +9671:SkUserScalerContext::~SkUserScalerContext\28\29 +9672:SkUserScalerContext::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +9673:SkUserScalerContext::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +9674:SkUserScalerContext::generateImage\28SkGlyph\20const&\2c\20void*\29 +9675:SkUserScalerContext::generateFontMetrics\28SkFontMetrics*\29 +9676:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29.1 +9677:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29 +9678:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onGetBounds\28\29 +9679:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onDraw\28SkCanvas*\29 +9680:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onApproximateBytesUsed\28\29 +9681:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29 +9682:SkUnicode_icu::toUpper\28SkString\20const&\29 +9683:SkUnicode_icu::reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29 +9684:SkUnicode_icu::makeBreakIterator\28char\20const*\2c\20SkUnicode::BreakType\29 +9685:SkUnicode_icu::makeBreakIterator\28SkUnicode::BreakType\29 +9686:SkUnicode_icu::makeBidiIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +9687:SkUnicode_icu::makeBidiIterator\28char\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +9688:SkUnicode_icu::isWhitespace\28int\29 +9689:SkUnicode_icu::isTabulation\28int\29 +9690:SkUnicode_icu::isSpace\28int\29 +9691:SkUnicode_icu::isRegionalIndicator\28int\29 +9692:SkUnicode_icu::isIdeographic\28int\29 +9693:SkUnicode_icu::isHardBreak\28int\29 +9694:SkUnicode_icu::isEmoji\28int\29 +9695:SkUnicode_icu::isEmojiModifier\28int\29 +9696:SkUnicode_icu::isEmojiModifierBase\28int\29 +9697:SkUnicode_icu::isEmojiComponent\28int\29 +9698:SkUnicode_icu::isControl\28int\29 +9699:SkUnicode_icu::getWords\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +9700:SkUnicode_icu::getUtf8Words\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +9701:SkUnicode_icu::getSentences\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +9702:SkUnicode_icu::getBidiRegions\28char\20const*\2c\20int\2c\20SkUnicode::TextDirection\2c\20std::__2::vector>*\29 +9703:SkUnicode_icu::copy\28\29 +9704:SkUnicode_icu::computeCodeUnitFlags\28char16_t*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +9705:SkUnicode_icu::computeCodeUnitFlags\28char*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +9706:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29.1 +9707:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29 +9708:SkUnicodeBidiRunIterator::endOfCurrentRun\28\29\20const +9709:SkUnicodeBidiRunIterator::currentLevel\28\29\20const +9710:SkUnicodeBidiRunIterator::consume\28\29 +9711:SkUnicodeBidiRunIterator::atEnd\28\29\20const +9712:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29.1 +9713:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29 +9714:SkTypeface_FreeTypeStream::onOpenStream\28int*\29\20const +9715:SkTypeface_FreeTypeStream::onMakeFontData\28\29\20const +9716:SkTypeface_FreeTypeStream::onMakeClone\28SkFontArguments\20const&\29\20const +9717:SkTypeface_FreeTypeStream::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9718:SkTypeface_FreeType::onGlyphMaskNeedsCurrentColor\28\29\20const +9719:SkTypeface_FreeType::onGetVariationDesignPosition\28SkFontArguments::VariationPosition::Coordinate*\2c\20int\29\20const +9720:SkTypeface_FreeType::onGetVariationDesignParameters\28SkFontParameters::Variation::Axis*\2c\20int\29\20const +9721:SkTypeface_FreeType::onGetUPEM\28\29\20const +9722:SkTypeface_FreeType::onGetTableTags\28unsigned\20int*\29\20const +9723:SkTypeface_FreeType::onGetTableData\28unsigned\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20void*\29\20const +9724:SkTypeface_FreeType::onGetPostScriptName\28SkString*\29\20const +9725:SkTypeface_FreeType::onGetKerningPairAdjustments\28unsigned\20short\20const*\2c\20int\2c\20int*\29\20const +9726:SkTypeface_FreeType::onGetAdvancedMetrics\28\29\20const +9727:SkTypeface_FreeType::onFilterRec\28SkScalerContextRec*\29\20const +9728:SkTypeface_FreeType::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +9729:SkTypeface_FreeType::onCreateFamilyNameIterator\28\29\20const +9730:SkTypeface_FreeType::onCountGlyphs\28\29\20const +9731:SkTypeface_FreeType::onCopyTableData\28unsigned\20int\29\20const +9732:SkTypeface_FreeType::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +9733:SkTypeface_FreeType::getPostScriptGlyphNames\28SkString*\29\20const +9734:SkTypeface_FreeType::getGlyphToUnicodeMap\28int*\29\20const +9735:SkTypeface_Empty::~SkTypeface_Empty\28\29 +9736:SkTypeface_Custom::~SkTypeface_Custom\28\29.1 +9737:SkTypeface_Custom::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9738:SkTypeface::onCopyTableData\28unsigned\20int\29\20const +9739:SkTypeface::onComputeBounds\28SkRect*\29\20const +9740:SkTrimPE::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9741:SkTrimPE::getTypeName\28\29\20const +9742:SkTriColorShader::type\28\29\20const +9743:SkTriColorShader::isOpaque\28\29\20const +9744:SkTriColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9745:SkTransformShader::type\28\29\20const +9746:SkTransformShader::isOpaque\28\29\20const +9747:SkTransformShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9748:SkTQuad::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +9749:SkTQuad::setBounds\28SkDRect*\29\20const +9750:SkTQuad::ptAtT\28double\29\20const +9751:SkTQuad::make\28SkArenaAlloc&\29\20const +9752:SkTQuad::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +9753:SkTQuad::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +9754:SkTQuad::dxdyAtT\28double\29\20const +9755:SkTQuad::debugInit\28\29 +9756:SkTCubic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +9757:SkTCubic::setBounds\28SkDRect*\29\20const +9758:SkTCubic::ptAtT\28double\29\20const +9759:SkTCubic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +9760:SkTCubic::make\28SkArenaAlloc&\29\20const +9761:SkTCubic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +9762:SkTCubic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +9763:SkTCubic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +9764:SkTCubic::dxdyAtT\28double\29\20const +9765:SkTCubic::debugInit\28\29 +9766:SkTCubic::controlsInside\28\29\20const +9767:SkTCubic::collapsed\28\29\20const +9768:SkTConic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +9769:SkTConic::setBounds\28SkDRect*\29\20const +9770:SkTConic::ptAtT\28double\29\20const +9771:SkTConic::make\28SkArenaAlloc&\29\20const +9772:SkTConic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +9773:SkTConic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +9774:SkTConic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +9775:SkTConic::dxdyAtT\28double\29\20const +9776:SkTConic::debugInit\28\29 +9777:SkSwizzler::onSetSampleX\28int\29 +9778:SkSwizzler::fillWidth\28\29\20const +9779:SkSweepGradient::getTypeName\28\29\20const +9780:SkSweepGradient::flatten\28SkWriteBuffer&\29\20const +9781:SkSweepGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9782:SkSweepGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +9783:SkSurface_Raster::~SkSurface_Raster\28\29.1 +9784:SkSurface_Raster::~SkSurface_Raster\28\29 +9785:SkSurface_Raster::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9786:SkSurface_Raster::onRestoreBackingMutability\28\29 +9787:SkSurface_Raster::onNewSurface\28SkImageInfo\20const&\29 +9788:SkSurface_Raster::onNewImageSnapshot\28SkIRect\20const*\29 +9789:SkSurface_Raster::onNewCanvas\28\29 +9790:SkSurface_Raster::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9791:SkSurface_Raster::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +9792:SkSurface_Raster::imageInfo\28\29\20const +9793:SkSurface_Ganesh::~SkSurface_Ganesh\28\29.1 +9794:SkSurface_Ganesh::~SkSurface_Ganesh\28\29 +9795:SkSurface_Ganesh::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +9796:SkSurface_Ganesh::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9797:SkSurface_Ganesh::onWait\28int\2c\20GrBackendSemaphore\20const*\2c\20bool\29 +9798:SkSurface_Ganesh::onNewSurface\28SkImageInfo\20const&\29 +9799:SkSurface_Ganesh::onNewImageSnapshot\28SkIRect\20const*\29 +9800:SkSurface_Ganesh::onNewCanvas\28\29 +9801:SkSurface_Ganesh::onIsCompatible\28GrSurfaceCharacterization\20const&\29\20const +9802:SkSurface_Ganesh::onGetRecordingContext\28\29\20const +9803:SkSurface_Ganesh::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9804:SkSurface_Ganesh::onDiscard\28\29 +9805:SkSurface_Ganesh::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +9806:SkSurface_Ganesh::onCharacterize\28GrSurfaceCharacterization*\29\20const +9807:SkSurface_Ganesh::onCapabilities\28\29 +9808:SkSurface_Ganesh::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +9809:SkSurface_Ganesh::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +9810:SkSurface_Ganesh::imageInfo\28\29\20const +9811:SkSurface_Base::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +9812:SkSurface::imageInfo\28\29\20const +9813:SkStrikeCache::~SkStrikeCache\28\29.1 +9814:SkStrikeCache::~SkStrikeCache\28\29 +9815:SkStrikeCache::findOrCreateScopedStrike\28SkStrikeSpec\20const&\29 +9816:SkStrike::~SkStrike\28\29.1 +9817:SkStrike::~SkStrike\28\29 +9818:SkStrike::strikePromise\28\29 +9819:SkStrike::roundingSpec\28\29\20const +9820:SkStrike::prepareForPath\28SkGlyph*\29 +9821:SkStrike::prepareForImage\28SkGlyph*\29 +9822:SkStrike::prepareForDrawable\28SkGlyph*\29 +9823:SkStrike::getDescriptor\28\29\20const +9824:SkSpriteBlitter_Memcpy::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9825:SkSpriteBlitter::~SkSpriteBlitter\28\29.1 +9826:SkSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +9827:SkSpriteBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9828:SkSpriteBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9829:SkSpriteBlitter::blitH\28int\2c\20int\2c\20int\29 +9830:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29.1 +9831:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29 +9832:SkSpecialImage_Raster::onMakeSubset\28SkIRect\20const&\29\20const +9833:SkSpecialImage_Raster::getSize\28\29\20const +9834:SkSpecialImage_Raster::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +9835:SkSpecialImage_Raster::asImage\28\29\20const +9836:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29.1 +9837:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29 +9838:SkSpecialImage_Gpu::onMakeSubset\28SkIRect\20const&\29\20const +9839:SkSpecialImage_Gpu::getSize\28\29\20const +9840:SkSpecialImage_Gpu::asImage\28\29\20const +9841:SkSpecialImage::~SkSpecialImage\28\29 +9842:SkSpecialImage::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +9843:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29.1 +9844:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29 +9845:SkShaper::TrivialLanguageRunIterator::currentLanguage\28\29\20const +9846:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29.1 +9847:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29 +9848:SkShaper::TrivialBiDiRunIterator::currentLevel\28\29\20const +9849:SkShaderBase::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_0::__invoke\28SkRasterPipeline_CallbackCtx*\2c\20int\29 +9850:SkShaderBase::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9851:SkScan::HairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9852:SkScan::HairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9853:SkScan::HairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9854:SkScan::AntiHairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9855:SkScan::AntiHairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9856:SkScan::AntiHairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9857:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9858:SkScalingCodec::onGetScaledDimensions\28float\29\20const +9859:SkScalingCodec::onDimensionsSupported\28SkISize\20const&\29 +9860:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29.1 +9861:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29 +9862:SkScalerContext_FreeType::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +9863:SkScalerContext_FreeType::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +9864:SkScalerContext_FreeType::generateImage\28SkGlyph\20const&\2c\20void*\29 +9865:SkScalerContext_FreeType::generateFontMetrics\28SkFontMetrics*\29 +9866:SkScalerContext_FreeType::generateDrawable\28SkGlyph\20const&\29 +9867:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::~SkScalerContext_Empty\28\29 +9868:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +9869:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +9870:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateFontMetrics\28SkFontMetrics*\29 +9871:SkSampledCodec::onGetSampledDimensions\28int\29\20const +9872:SkSampledCodec::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +9873:SkSRGBColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +9874:SkSRGBColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +9875:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_3::__invoke\28double\2c\20double\29 +9876:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_2::__invoke\28double\2c\20double\29 +9877:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_1::__invoke\28double\2c\20double\29 +9878:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_0::__invoke\28double\2c\20double\29 +9879:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29.1 +9880:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29 +9881:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29.1 +9882:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29 +9883:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +9884:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitExpressionPtr\28std::__2::unique_ptr>&\29 +9885:SkSL::count_returns_at_end_of_control_flow\28SkSL::FunctionDefinition\20const&\29::CountReturnsAtEndOfControlFlow::visitStatement\28SkSL::Statement\20const&\29 +9886:SkSL::\28anonymous\20namespace\29::VariableWriteVisitor::visitExpression\28SkSL::Expression\20const&\29 +9887:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9888:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitExpression\28SkSL::Expression\20const&\29 +9889:SkSL::\28anonymous\20namespace\29::ReturnsNonOpaqueColorVisitor::visitStatement\28SkSL::Statement\20const&\29 +9890:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitStatement\28SkSL::Statement\20const&\29 +9891:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9892:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitStatement\28SkSL::Statement\20const&\29 +9893:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9894:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitStatement\28SkSL::Statement\20const&\29 +9895:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9896:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitExpression\28SkSL::Expression\20const&\29 +9897:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9898:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +9899:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29.1 +9900:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29 +9901:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitExpression\28SkSL::Expression\20const&\29 +9902:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29.1 +9903:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29 +9904:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitStatement\28SkSL::Statement\20const&\29 +9905:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitExpression\28SkSL::Expression\20const&\29 +9906:SkSL::VectorType::isAllowedInES2\28\29\20const +9907:SkSL::VariableReference::clone\28SkSL::Position\29\20const +9908:SkSL::Variable::~Variable\28\29.1 +9909:SkSL::Variable::~Variable\28\29 +9910:SkSL::Variable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +9911:SkSL::Variable::mangledName\28\29\20const +9912:SkSL::Variable::layout\28\29\20const +9913:SkSL::Variable::description\28\29\20const +9914:SkSL::VarDeclaration::~VarDeclaration\28\29.1 +9915:SkSL::VarDeclaration::~VarDeclaration\28\29 +9916:SkSL::VarDeclaration::description\28\29\20const +9917:SkSL::TypeReference::clone\28SkSL::Position\29\20const +9918:SkSL::Type::minimumValue\28\29\20const +9919:SkSL::Type::maximumValue\28\29\20const +9920:SkSL::Type::fields\28\29\20const +9921:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29.1 +9922:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29 +9923:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::visitStatementPtr\28std::__2::unique_ptr>&\29 +9924:SkSL::Tracer::var\28int\2c\20int\29 +9925:SkSL::Tracer::scope\28int\29 +9926:SkSL::Tracer::line\28int\29 +9927:SkSL::Tracer::exit\28int\29 +9928:SkSL::Tracer::enter\28int\29 +9929:SkSL::ThreadContext::DefaultErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +9930:SkSL::TextureType::textureAccess\28\29\20const +9931:SkSL::TextureType::isMultisampled\28\29\20const +9932:SkSL::TextureType::isDepth\28\29\20const +9933:SkSL::TextureType::isArrayedTexture\28\29\20const +9934:SkSL::TernaryExpression::~TernaryExpression\28\29.1 +9935:SkSL::TernaryExpression::~TernaryExpression\28\29 +9936:SkSL::TernaryExpression::description\28SkSL::OperatorPrecedence\29\20const +9937:SkSL::TernaryExpression::clone\28SkSL::Position\29\20const +9938:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression&\29 +9939:SkSL::Swizzle::~Swizzle\28\29.1 +9940:SkSL::Swizzle::~Swizzle\28\29 +9941:SkSL::Swizzle::description\28SkSL::OperatorPrecedence\29\20const +9942:SkSL::Swizzle::clone\28SkSL::Position\29\20const +9943:SkSL::SwitchStatement::~SwitchStatement\28\29.1 +9944:SkSL::SwitchStatement::~SwitchStatement\28\29 +9945:SkSL::SwitchStatement::description\28\29\20const +9946:SkSL::SwitchCase::description\28\29\20const +9947:SkSL::StructType::slotType\28unsigned\20long\29\20const +9948:SkSL::StructType::isOrContainsUnsizedArray\28\29\20const +9949:SkSL::StructType::isOrContainsAtomic\28\29\20const +9950:SkSL::StructType::isOrContainsArray\28\29\20const +9951:SkSL::StructType::isInterfaceBlock\28\29\20const +9952:SkSL::StructType::isAllowedInES2\28\29\20const +9953:SkSL::StructType::fields\28\29\20const +9954:SkSL::StructDefinition::description\28\29\20const +9955:SkSL::StringStream::~StringStream\28\29.1 +9956:SkSL::StringStream::~StringStream\28\29 +9957:SkSL::StringStream::write\28void\20const*\2c\20unsigned\20long\29 +9958:SkSL::StringStream::writeText\28char\20const*\29 +9959:SkSL::StringStream::write8\28unsigned\20char\29 +9960:SkSL::SingleArgumentConstructor::~SingleArgumentConstructor\28\29 +9961:SkSL::Setting::description\28SkSL::OperatorPrecedence\29\20const +9962:SkSL::Setting::clone\28SkSL::Position\29\20const +9963:SkSL::ScalarType::priority\28\29\20const +9964:SkSL::ScalarType::numberKind\28\29\20const +9965:SkSL::ScalarType::minimumValue\28\29\20const +9966:SkSL::ScalarType::maximumValue\28\29\20const +9967:SkSL::ScalarType::isAllowedInES2\28\29\20const +9968:SkSL::ScalarType::bitWidth\28\29\20const +9969:SkSL::SamplerType::textureAccess\28\29\20const +9970:SkSL::SamplerType::isMultisampled\28\29\20const +9971:SkSL::SamplerType::isDepth\28\29\20const +9972:SkSL::SamplerType::isArrayedTexture\28\29\20const +9973:SkSL::SamplerType::dimensions\28\29\20const +9974:SkSL::ReturnStatement::description\28\29\20const +9975:SkSL::RP::VariableLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9976:SkSL::RP::VariableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9977:SkSL::RP::VariableLValue::isWritable\28\29\20const +9978:SkSL::RP::VariableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9979:SkSL::RP::UnownedLValueSlice::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9980:SkSL::RP::UnownedLValueSlice::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9981:SkSL::RP::UnownedLValueSlice::fixedSlotRange\28SkSL::RP::Generator*\29 +9982:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29.1 +9983:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29 +9984:SkSL::RP::SwizzleLValue::swizzle\28\29 +9985:SkSL::RP::SwizzleLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9986:SkSL::RP::SwizzleLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9987:SkSL::RP::SwizzleLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9988:SkSL::RP::ScratchLValue::~ScratchLValue\28\29.1 +9989:SkSL::RP::ScratchLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9990:SkSL::RP::ScratchLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9991:SkSL::RP::LValueSlice::~LValueSlice\28\29.1 +9992:SkSL::RP::LValueSlice::~LValueSlice\28\29 +9993:SkSL::RP::LValue::~LValue\28\29.1 +9994:SkSL::RP::ImmutableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9995:SkSL::RP::ImmutableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9996:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29.1 +9997:SkSL::RP::DynamicIndexLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9998:SkSL::RP::DynamicIndexLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9999:SkSL::RP::DynamicIndexLValue::isWritable\28\29\20const +10000:SkSL::RP::DynamicIndexLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10001:SkSL::ProgramVisitor::visitStatementPtr\28std::__2::unique_ptr>\20const&\29 +10002:SkSL::ProgramVisitor::visitExpressionPtr\28std::__2::unique_ptr>\20const&\29 +10003:SkSL::PrefixExpression::description\28SkSL::OperatorPrecedence\29\20const +10004:SkSL::PrefixExpression::clone\28SkSL::Position\29\20const +10005:SkSL::PostfixExpression::description\28SkSL::OperatorPrecedence\29\20const +10006:SkSL::PostfixExpression::clone\28SkSL::Position\29\20const +10007:SkSL::Poison::description\28SkSL::OperatorPrecedence\29\20const +10008:SkSL::Poison::clone\28SkSL::Position\29\20const +10009:SkSL::PipelineStage::Callbacks::getMainName\28\29 +10010:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29.1 +10011:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29 +10012:SkSL::Parser::Checkpoint::ForwardingErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10013:SkSL::Nop::description\28\29\20const +10014:SkSL::MultiArgumentConstructor::~MultiArgumentConstructor\28\29 +10015:SkSL::ModifiersDeclaration::description\28\29\20const +10016:SkSL::MethodReference::description\28SkSL::OperatorPrecedence\29\20const +10017:SkSL::MethodReference::clone\28SkSL::Position\29\20const +10018:SkSL::MatrixType::slotCount\28\29\20const +10019:SkSL::MatrixType::rows\28\29\20const +10020:SkSL::MatrixType::isAllowedInES2\28\29\20const +10021:SkSL::LiteralType::minimumValue\28\29\20const +10022:SkSL::LiteralType::maximumValue\28\29\20const +10023:SkSL::Literal::getConstantValue\28int\29\20const +10024:SkSL::Literal::description\28SkSL::OperatorPrecedence\29\20const +10025:SkSL::Literal::compareConstant\28SkSL::Expression\20const&\29\20const +10026:SkSL::Literal::clone\28SkSL::Position\29\20const +10027:SkSL::Intrinsics::\28anonymous\20namespace\29::finalize_distance\28double\29 +10028:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_uintBitsToFloat\28double\2c\20double\2c\20double\29 +10029:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_trunc\28double\2c\20double\2c\20double\29 +10030:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tanh\28double\2c\20double\2c\20double\29 +10031:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tan\28double\2c\20double\2c\20double\29 +10032:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28double\2c\20double\2c\20double\29 +10033:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_step\28double\2c\20double\2c\20double\29 +10034:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sqrt\28double\2c\20double\2c\20double\29 +10035:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_smoothstep\28double\2c\20double\2c\20double\29 +10036:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sinh\28double\2c\20double\2c\20double\29 +10037:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sin\28double\2c\20double\2c\20double\29 +10038:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_saturate\28double\2c\20double\2c\20double\29 +10039:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_radians\28double\2c\20double\2c\20double\29 +10040:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_pow\28double\2c\20double\2c\20double\29 +10041:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mod\28double\2c\20double\2c\20double\29 +10042:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mix\28double\2c\20double\2c\20double\29 +10043:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_min\28double\2c\20double\2c\20double\29 +10044:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_max\28double\2c\20double\2c\20double\29 +10045:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log\28double\2c\20double\2c\20double\29 +10046:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log2\28double\2c\20double\2c\20double\29 +10047:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_inversesqrt\28double\2c\20double\2c\20double\29 +10048:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_intBitsToFloat\28double\2c\20double\2c\20double\29 +10049:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fract\28double\2c\20double\2c\20double\29 +10050:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fma\28double\2c\20double\2c\20double\29 +10051:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floor\28double\2c\20double\2c\20double\29 +10052:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToUint\28double\2c\20double\2c\20double\29 +10053:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToInt\28double\2c\20double\2c\20double\29 +10054:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp\28double\2c\20double\2c\20double\29 +10055:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp2\28double\2c\20double\2c\20double\29 +10056:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_div\28double\2c\20double\2c\20double\29 +10057:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_degrees\28double\2c\20double\2c\20double\29 +10058:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cosh\28double\2c\20double\2c\20double\29 +10059:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cos\28double\2c\20double\2c\20double\29 +10060:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_clamp\28double\2c\20double\2c\20double\29 +10061:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_ceil\28double\2c\20double\2c\20double\29 +10062:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atanh\28double\2c\20double\2c\20double\29 +10063:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan\28double\2c\20double\2c\20double\29 +10064:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan2\28double\2c\20double\2c\20double\29 +10065:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asinh\28double\2c\20double\2c\20double\29 +10066:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asin\28double\2c\20double\2c\20double\29 +10067:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28double\2c\20double\2c\20double\29 +10068:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acosh\28double\2c\20double\2c\20double\29 +10069:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acos\28double\2c\20double\2c\20double\29 +10070:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_abs\28double\2c\20double\2c\20double\29 +10071:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_notEqual\28double\2c\20double\29 +10072:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThan\28double\2c\20double\29 +10073:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThanEqual\28double\2c\20double\29 +10074:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThan\28double\2c\20double\29 +10075:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThanEqual\28double\2c\20double\29 +10076:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_equal\28double\2c\20double\29 +10077:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_dot\28double\2c\20double\2c\20double\29 +10078:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_distance\28double\2c\20double\2c\20double\29 +10079:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_any\28double\2c\20double\2c\20double\29 +10080:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_all\28double\2c\20double\2c\20double\29 +10081:SkSL::InterfaceBlock::~InterfaceBlock\28\29.1 +10082:SkSL::InterfaceBlock::description\28\29\20const +10083:SkSL::IndexExpression::~IndexExpression\28\29.1 +10084:SkSL::IndexExpression::~IndexExpression\28\29 +10085:SkSL::IndexExpression::description\28SkSL::OperatorPrecedence\29\20const +10086:SkSL::IndexExpression::clone\28SkSL::Position\29\20const +10087:SkSL::IfStatement::~IfStatement\28\29.1 +10088:SkSL::IfStatement::~IfStatement\28\29 +10089:SkSL::IfStatement::description\28\29\20const +10090:SkSL::GlobalVarDeclaration::description\28\29\20const +10091:SkSL::GenericType::slotType\28unsigned\20long\29\20const +10092:SkSL::GenericType::coercibleTypes\28\29\20const +10093:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29.1 +10094:SkSL::FunctionReference::description\28SkSL::OperatorPrecedence\29\20const +10095:SkSL::FunctionReference::clone\28SkSL::Position\29\20const +10096:SkSL::FunctionPrototype::description\28\29\20const +10097:SkSL::FunctionDefinition::description\28\29\20const +10098:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::~Finalizer\28\29.1 +10099:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::~Finalizer\28\29 +10100:SkSL::FunctionCall::description\28SkSL::OperatorPrecedence\29\20const +10101:SkSL::FunctionCall::clone\28SkSL::Position\29\20const +10102:SkSL::ForStatement::~ForStatement\28\29.1 +10103:SkSL::ForStatement::~ForStatement\28\29 +10104:SkSL::ForStatement::description\28\29\20const +10105:SkSL::FieldSymbol::description\28\29\20const +10106:SkSL::FieldAccess::clone\28SkSL::Position\29\20const +10107:SkSL::Extension::description\28\29\20const +10108:SkSL::ExtendedVariable::~ExtendedVariable\28\29.1 +10109:SkSL::ExtendedVariable::~ExtendedVariable\28\29 +10110:SkSL::ExtendedVariable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +10111:SkSL::ExtendedVariable::mangledName\28\29\20const +10112:SkSL::ExtendedVariable::interfaceBlock\28\29\20const +10113:SkSL::ExtendedVariable::detachDeadInterfaceBlock\28\29 +10114:SkSL::ExpressionStatement::description\28\29\20const +10115:SkSL::Expression::getConstantValue\28int\29\20const +10116:SkSL::EmptyExpression::description\28SkSL::OperatorPrecedence\29\20const +10117:SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +10118:SkSL::DoStatement::~DoStatement\28\29.1 +10119:SkSL::DoStatement::~DoStatement\28\29 +10120:SkSL::DoStatement::description\28\29\20const +10121:SkSL::DiscardStatement::description\28\29\20const +10122:SkSL::DebugTracePriv::~DebugTracePriv\28\29.1 +10123:SkSL::CountReturnsWithLimit::visitStatement\28SkSL::Statement\20const&\29 +10124:SkSL::ContinueStatement::description\28\29\20const +10125:SkSL::ConstructorStruct::clone\28SkSL::Position\29\20const +10126:SkSL::ConstructorSplat::getConstantValue\28int\29\20const +10127:SkSL::ConstructorSplat::clone\28SkSL::Position\29\20const +10128:SkSL::ConstructorScalarCast::clone\28SkSL::Position\29\20const +10129:SkSL::ConstructorMatrixResize::getConstantValue\28int\29\20const +10130:SkSL::ConstructorMatrixResize::clone\28SkSL::Position\29\20const +10131:SkSL::ConstructorDiagonalMatrix::getConstantValue\28int\29\20const +10132:SkSL::ConstructorDiagonalMatrix::clone\28SkSL::Position\29\20const +10133:SkSL::ConstructorCompoundCast::clone\28SkSL::Position\29\20const +10134:SkSL::ConstructorCompound::clone\28SkSL::Position\29\20const +10135:SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +10136:SkSL::ConstructorArray::clone\28SkSL::Position\29\20const +10137:SkSL::Compiler::CompilerErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10138:SkSL::CodeGenerator::~CodeGenerator\28\29 +10139:SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +10140:SkSL::ChildCall::clone\28SkSL::Position\29\20const +10141:SkSL::BreakStatement::description\28\29\20const +10142:SkSL::Block::~Block\28\29.1 +10143:SkSL::Block::~Block\28\29 +10144:SkSL::Block::isEmpty\28\29\20const +10145:SkSL::Block::description\28\29\20const +10146:SkSL::BinaryExpression::~BinaryExpression\28\29.1 +10147:SkSL::BinaryExpression::~BinaryExpression\28\29 +10148:SkSL::BinaryExpression::description\28SkSL::OperatorPrecedence\29\20const +10149:SkSL::BinaryExpression::clone\28SkSL::Position\29\20const +10150:SkSL::ArrayType::slotType\28unsigned\20long\29\20const +10151:SkSL::ArrayType::slotCount\28\29\20const +10152:SkSL::ArrayType::isUnsizedArray\28\29\20const +10153:SkSL::ArrayType::isOrContainsUnsizedArray\28\29\20const +10154:SkSL::ArrayType::isOrContainsAtomic\28\29\20const +10155:SkSL::AnyConstructor::getConstantValue\28int\29\20const +10156:SkSL::AnyConstructor::description\28SkSL::OperatorPrecedence\29\20const +10157:SkSL::AnyConstructor::compareConstant\28SkSL::Expression\20const&\29\20const +10158:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29::IsDynamicallyUniformExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +10159:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29::IsCompileTimeConstantVisitor::visitExpression\28SkSL::Expression\20const&\29 +10160:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29::HasSideEffectsVisitor::visitExpression\28SkSL::Expression\20const&\29 +10161:SkSL::Analysis::ContainsVariable\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29::ContainsVariableVisitor::visitExpression\28SkSL::Expression\20const&\29 +10162:SkSL::Analysis::ContainsRTAdjust\28SkSL::Expression\20const&\29::ContainsRTAdjustVisitor::visitExpression\28SkSL::Expression\20const&\29 +10163:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29.1 +10164:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29 +10165:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitStatement\28SkSL::Statement\20const&\29 +10166:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitExpression\28SkSL::Expression\20const&\29 +10167:SkSL::AliasType::textureAccess\28\29\20const +10168:SkSL::AliasType::slotType\28unsigned\20long\29\20const +10169:SkSL::AliasType::slotCount\28\29\20const +10170:SkSL::AliasType::rows\28\29\20const +10171:SkSL::AliasType::priority\28\29\20const +10172:SkSL::AliasType::isVector\28\29\20const +10173:SkSL::AliasType::isUnsizedArray\28\29\20const +10174:SkSL::AliasType::isStruct\28\29\20const +10175:SkSL::AliasType::isScalar\28\29\20const +10176:SkSL::AliasType::isMultisampled\28\29\20const +10177:SkSL::AliasType::isMatrix\28\29\20const +10178:SkSL::AliasType::isLiteral\28\29\20const +10179:SkSL::AliasType::isInterfaceBlock\28\29\20const +10180:SkSL::AliasType::isDepth\28\29\20const +10181:SkSL::AliasType::isArrayedTexture\28\29\20const +10182:SkSL::AliasType::isArray\28\29\20const +10183:SkSL::AliasType::dimensions\28\29\20const +10184:SkSL::AliasType::componentType\28\29\20const +10185:SkSL::AliasType::columns\28\29\20const +10186:SkSL::AliasType::coercibleTypes\28\29\20const +10187:SkRuntimeShader::~SkRuntimeShader\28\29.1 +10188:SkRuntimeShader::type\28\29\20const +10189:SkRuntimeShader::isOpaque\28\29\20const +10190:SkRuntimeShader::getTypeName\28\29\20const +10191:SkRuntimeShader::flatten\28SkWriteBuffer&\29\20const +10192:SkRuntimeShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10193:SkRuntimeEffect::~SkRuntimeEffect\28\29.1 +10194:SkRuntimeEffect::MakeFromSource\28SkString\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +10195:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29.1 +10196:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29 +10197:SkRuntimeColorFilter::onIsAlphaUnchanged\28\29\20const +10198:SkRuntimeColorFilter::getTypeName\28\29\20const +10199:SkRuntimeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10200:SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +10201:SkRuntimeBlender::~SkRuntimeBlender\28\29 +10202:SkRuntimeBlender::onAppendStages\28SkStageRec\20const&\29\20const +10203:SkRuntimeBlender::getTypeName\28\29\20const +10204:SkRgnClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10205:SkRgnClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10206:SkRgnClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10207:SkRgnClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10208:SkRgnClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10209:SkRgnClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10210:SkRgnBuilder::~SkRgnBuilder\28\29.1 +10211:SkRgnBuilder::blitH\28int\2c\20int\2c\20int\29 +10212:SkResourceCache::SetTotalByteLimit\28unsigned\20long\29 +10213:SkResourceCache::GetTotalBytesUsed\28\29 +10214:SkResourceCache::GetTotalByteLimit\28\29 +10215:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::~Result\28\29.1 +10216:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::~Result\28\29 +10217:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::data\28int\29\20const +10218:SkRefCntSet::~SkRefCntSet\28\29.1 +10219:SkRefCntSet::incPtr\28void*\29 +10220:SkRefCntSet::decPtr\28void*\29 +10221:SkRectClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10222:SkRectClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10223:SkRectClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10224:SkRectClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10225:SkRectClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10226:SkRectClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10227:SkRecorder::~SkRecorder\28\29.1 +10228:SkRecorder::~SkRecorder\28\29 +10229:SkRecorder::willSave\28\29 +10230:SkRecorder::onResetClip\28\29 +10231:SkRecorder::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10232:SkRecorder::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10233:SkRecorder::onDrawSlug\28sktext::gpu::Slug\20const*\29 +10234:SkRecorder::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10235:SkRecorder::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10236:SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10237:SkRecorder::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10238:SkRecorder::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10239:SkRecorder::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10240:SkRecorder::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10241:SkRecorder::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10242:SkRecorder::onDrawPaint\28SkPaint\20const&\29 +10243:SkRecorder::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10244:SkRecorder::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +10245:SkRecorder::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10246:SkRecorder::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10247:SkRecorder::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10248:SkRecorder::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10249:SkRecorder::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10250:SkRecorder::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10251:SkRecorder::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10252:SkRecorder::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10253:SkRecorder::onDrawBehind\28SkPaint\20const&\29 +10254:SkRecorder::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +10255:SkRecorder::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10256:SkRecorder::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10257:SkRecorder::onDoSaveBehind\28SkRect\20const*\29 +10258:SkRecorder::onClipShader\28sk_sp\2c\20SkClipOp\29 +10259:SkRecorder::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10260:SkRecorder::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10261:SkRecorder::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10262:SkRecorder::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10263:SkRecorder::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10264:SkRecorder::didTranslate\28float\2c\20float\29 +10265:SkRecorder::didSetM44\28SkM44\20const&\29 +10266:SkRecorder::didScale\28float\2c\20float\29 +10267:SkRecorder::didRestore\28\29 +10268:SkRecorder::didConcat44\28SkM44\20const&\29 +10269:SkRecordedDrawable::~SkRecordedDrawable\28\29.1 +10270:SkRecordedDrawable::~SkRecordedDrawable\28\29 +10271:SkRecordedDrawable::onMakePictureSnapshot\28\29 +10272:SkRecordedDrawable::onGetBounds\28\29 +10273:SkRecordedDrawable::onDraw\28SkCanvas*\29 +10274:SkRecordedDrawable::onApproximateBytesUsed\28\29 +10275:SkRecordedDrawable::getTypeName\28\29\20const +10276:SkRecordedDrawable::flatten\28SkWriteBuffer&\29\20const +10277:SkRecord::~SkRecord\28\29.1 +10278:SkRecord::~SkRecord\28\29 +10279:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29.1 +10280:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29 +10281:SkRasterPipelineSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +10282:SkRasterPipelineSpriteBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10283:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29.1 +10284:SkRasterPipelineBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10285:SkRasterPipelineBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10286:SkRasterPipelineBlitter::blitH\28int\2c\20int\2c\20int\29 +10287:SkRasterPipelineBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10288:SkRasterPipelineBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10289:SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10290:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_3::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10291:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_2::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10292:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_1::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10293:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_0::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10294:SkRadialGradient::getTypeName\28\29\20const +10295:SkRadialGradient::flatten\28SkWriteBuffer&\29\20const +10296:SkRadialGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10297:SkRadialGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10298:SkRTree::~SkRTree\28\29.1 +10299:SkRTree::~SkRTree\28\29 +10300:SkRTree::search\28SkRect\20const&\2c\20std::__2::vector>*\29\20const +10301:SkRTree::insert\28SkRect\20const*\2c\20int\29 +10302:SkRTree::bytesUsed\28\29\20const +10303:SkPtrSet::~SkPtrSet\28\29 +10304:SkPngNormalDecoder::~SkPngNormalDecoder\28\29 +10305:SkPngNormalDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +10306:SkPngNormalDecoder::decode\28int*\29 +10307:SkPngNormalDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +10308:SkPngNormalDecoder::RowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +10309:SkPngNormalDecoder::AllRowsCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +10310:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29.1 +10311:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29 +10312:SkPngInterlacedDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +10313:SkPngInterlacedDecoder::decode\28int*\29 +10314:SkPngInterlacedDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +10315:SkPngInterlacedDecoder::InterlacedRowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +10316:SkPngEncoderImpl::~SkPngEncoderImpl\28\29.1 +10317:SkPngEncoderImpl::~SkPngEncoderImpl\28\29 +10318:SkPngEncoderImpl::onEncodeRows\28int\29 +10319:SkPngDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10320:SkPngCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10321:SkPngCodec::onRewind\28\29 +10322:SkPngCodec::onIncrementalDecode\28int*\29 +10323:SkPngCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10324:SkPngCodec::getSampler\28bool\29 +10325:SkPngCodec::createColorTable\28SkImageInfo\20const&\29 +10326:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_2::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10327:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_1::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10328:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_0::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10329:SkPixelRef::~SkPixelRef\28\29.1 +10330:SkPictureShader::~SkPictureShader\28\29.1 +10331:SkPictureShader::~SkPictureShader\28\29 +10332:SkPictureShader::type\28\29\20const +10333:SkPictureShader::getTypeName\28\29\20const +10334:SkPictureShader::flatten\28SkWriteBuffer&\29\20const +10335:SkPictureShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10336:SkPictureRecorder*\20emscripten::internal::operator_new\28\29 +10337:SkPictureRecord::~SkPictureRecord\28\29.1 +10338:SkPictureRecord::willSave\28\29 +10339:SkPictureRecord::willRestore\28\29 +10340:SkPictureRecord::onResetClip\28\29 +10341:SkPictureRecord::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10342:SkPictureRecord::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10343:SkPictureRecord::onDrawSlug\28sktext::gpu::Slug\20const*\29 +10344:SkPictureRecord::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10345:SkPictureRecord::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10346:SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10347:SkPictureRecord::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10348:SkPictureRecord::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10349:SkPictureRecord::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10350:SkPictureRecord::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10351:SkPictureRecord::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10352:SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +10353:SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10354:SkPictureRecord::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10355:SkPictureRecord::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10356:SkPictureRecord::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10357:SkPictureRecord::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10358:SkPictureRecord::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10359:SkPictureRecord::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10360:SkPictureRecord::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10361:SkPictureRecord::onDrawBehind\28SkPaint\20const&\29 +10362:SkPictureRecord::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +10363:SkPictureRecord::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10364:SkPictureRecord::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10365:SkPictureRecord::onDoSaveBehind\28SkRect\20const*\29 +10366:SkPictureRecord::onClipShader\28sk_sp\2c\20SkClipOp\29 +10367:SkPictureRecord::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10368:SkPictureRecord::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10369:SkPictureRecord::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10370:SkPictureRecord::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10371:SkPictureRecord::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10372:SkPictureRecord::didTranslate\28float\2c\20float\29 +10373:SkPictureRecord::didSetM44\28SkM44\20const&\29 +10374:SkPictureRecord::didScale\28float\2c\20float\29 +10375:SkPictureRecord::didConcat44\28SkM44\20const&\29 +10376:SkPictureData::serialize\28SkWStream*\2c\20SkSerialProcs\20const&\2c\20SkRefCntSet*\2c\20bool\29\20const::DevNull::write\28void\20const*\2c\20unsigned\20long\29 +10377:SkPerlinNoiseShader::type\28\29\20const +10378:SkPerlinNoiseShader::getTypeName\28\29\20const +10379:SkPerlinNoiseShader::flatten\28SkWriteBuffer&\29\20const +10380:SkPath::setIsVolatile\28bool\29 +10381:SkPath::setFillType\28SkPathFillType\29 +10382:SkPath::isVolatile\28\29\20const +10383:SkPath::getFillType\28\29\20const +10384:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29.1 +10385:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29 +10386:SkPath2DPathEffectImpl::next\28SkPoint\20const&\2c\20int\2c\20int\2c\20SkPath*\29\20const +10387:SkPath2DPathEffectImpl::getTypeName\28\29\20const +10388:SkPath2DPathEffectImpl::getFactory\28\29\20const +10389:SkPath2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10390:SkPath2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10391:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29.1 +10392:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29 +10393:SkPath1DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10394:SkPath1DPathEffectImpl::next\28SkPath*\2c\20float\2c\20SkPathMeasure&\29\20const +10395:SkPath1DPathEffectImpl::getTypeName\28\29\20const +10396:SkPath1DPathEffectImpl::getFactory\28\29\20const +10397:SkPath1DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10398:SkPath1DPathEffectImpl::begin\28float\29\20const +10399:SkPath1DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10400:SkPath*\20emscripten::internal::operator_new\28\29 +10401:SkPairPathEffect::~SkPairPathEffect\28\29.1 +10402:SkPaint::setDither\28bool\29 +10403:SkPaint::setAntiAlias\28bool\29 +10404:SkPaint::getStrokeMiter\28\29\20const +10405:SkPaint::getStrokeJoin\28\29\20const +10406:SkPaint::getStrokeCap\28\29\20const +10407:SkPaint*\20emscripten::internal::operator_new\28\29 +10408:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29.1 +10409:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29 +10410:SkOTUtils::LocalizedStrings_SingleName::next\28SkTypeface::LocalizedString*\29 +10411:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29.1 +10412:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29 +10413:SkOTUtils::LocalizedStrings_NameTable::next\28SkTypeface::LocalizedString*\29 +10414:SkNoPixelsDevice::~SkNoPixelsDevice\28\29.1 +10415:SkNoPixelsDevice::~SkNoPixelsDevice\28\29 +10416:SkNoPixelsDevice::replaceClip\28SkIRect\20const&\29 +10417:SkNoPixelsDevice::pushClipStack\28\29 +10418:SkNoPixelsDevice::popClipStack\28\29 +10419:SkNoPixelsDevice::onClipShader\28sk_sp\29 +10420:SkNoPixelsDevice::isClipWideOpen\28\29\20const +10421:SkNoPixelsDevice::isClipRect\28\29\20const +10422:SkNoPixelsDevice::isClipEmpty\28\29\20const +10423:SkNoPixelsDevice::isClipAntiAliased\28\29\20const +10424:SkNoPixelsDevice::devClipBounds\28\29\20const +10425:SkNoPixelsDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10426:SkNoPixelsDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +10427:SkNoPixelsDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +10428:SkNoPixelsDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +10429:SkNoPixelsDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +10430:SkNoDrawCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10431:SkNoDrawCanvas::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +10432:SkMipmap::~SkMipmap\28\29.1 +10433:SkMipmap::~SkMipmap\28\29 +10434:SkMipmap::onDataChange\28void*\2c\20void*\29 +10435:SkMemoryStream::~SkMemoryStream\28\29.1 +10436:SkMemoryStream::~SkMemoryStream\28\29 +10437:SkMemoryStream::setMemory\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +10438:SkMemoryStream::seek\28unsigned\20long\29 +10439:SkMemoryStream::rewind\28\29 +10440:SkMemoryStream::read\28void*\2c\20unsigned\20long\29 +10441:SkMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +10442:SkMemoryStream::onFork\28\29\20const +10443:SkMemoryStream::onDuplicate\28\29\20const +10444:SkMemoryStream::move\28long\29 +10445:SkMemoryStream::isAtEnd\28\29\20const +10446:SkMemoryStream::getMemoryBase\28\29 +10447:SkMemoryStream::getLength\28\29\20const +10448:SkMatrixColorFilter::onIsAlphaUnchanged\28\29\20const +10449:SkMatrixColorFilter::onAsAColorMatrix\28float*\29\20const +10450:SkMatrixColorFilter::getTypeName\28\29\20const +10451:SkMatrixColorFilter::flatten\28SkWriteBuffer&\29\20const +10452:SkMatrixColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10453:SkMatrix::Trans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10454:SkMatrix::Trans_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10455:SkMatrix::Scale_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10456:SkMatrix::Scale_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10457:SkMatrix::ScaleTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10458:SkMatrix::Poly4Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10459:SkMatrix::Poly3Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10460:SkMatrix::Poly2Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10461:SkMatrix::Persp_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10462:SkMatrix::Persp_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10463:SkMatrix::Identity_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10464:SkMatrix::Identity_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10465:SkMatrix::Affine_vpts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10466:SkMaskSwizzler::onSetSampleX\28int\29 +10467:SkMaskFilterBase::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10468:SkMaskFilterBase::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10469:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29.1 +10470:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29 +10471:SkMakePixelRefWithProc\28int\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29::PixelRef::~PixelRef\28\29.1 +10472:SkMakePixelRefWithProc\28int\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29::PixelRef::~PixelRef\28\29 +10473:SkLumaColorFilter::Make\28\29 +10474:SkLocalMatrixShader::~SkLocalMatrixShader\28\29.1 +10475:SkLocalMatrixShader::~SkLocalMatrixShader\28\29 +10476:SkLocalMatrixShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +10477:SkLocalMatrixShader::makeAsALocalMatrixShader\28SkMatrix*\29\20const +10478:SkLocalMatrixShader::getTypeName\28\29\20const +10479:SkLocalMatrixShader::flatten\28SkWriteBuffer&\29\20const +10480:SkLocalMatrixShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10481:SkLocalMatrixShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10482:SkLinearGradient::getTypeName\28\29\20const +10483:SkLinearGradient::flatten\28SkWriteBuffer&\29\20const +10484:SkLinearGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10485:SkLine2DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10486:SkLine2DPathEffectImpl::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +10487:SkLine2DPathEffectImpl::getTypeName\28\29\20const +10488:SkLine2DPathEffectImpl::getFactory\28\29\20const +10489:SkLine2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10490:SkLine2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10491:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29.1 +10492:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29 +10493:SkJpegMetadataDecoderImpl::getICCProfileData\28bool\29\20const +10494:SkJpegMetadataDecoderImpl::getExifMetadata\28bool\29\20const +10495:SkJpegMemorySourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10496:SkJpegMemorySourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10497:SkJpegDecoder::IsJpeg\28void\20const*\2c\20unsigned\20long\29 +10498:SkJpegDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10499:SkJpegCodec::~SkJpegCodec\28\29.1 +10500:SkJpegCodec::~SkJpegCodec\28\29 +10501:SkJpegCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10502:SkJpegCodec::onSkipScanlines\28int\29 +10503:SkJpegCodec::onRewind\28\29 +10504:SkJpegCodec::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +10505:SkJpegCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +10506:SkJpegCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +10507:SkJpegCodec::onGetScaledDimensions\28float\29\20const +10508:SkJpegCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10509:SkJpegCodec::onDimensionsSupported\28SkISize\20const&\29 +10510:SkJpegCodec::getSampler\28bool\29 +10511:SkJpegCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +10512:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29.1 +10513:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29 +10514:SkJpegBufferedSourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10515:SkJpegBufferedSourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10516:SkJpegBufferedSourceMgr::fillInputBuffer\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10517:SkImage_Raster::~SkImage_Raster\28\29.1 +10518:SkImage_Raster::~SkImage_Raster\28\29 +10519:SkImage_Raster::onReinterpretColorSpace\28sk_sp\29\20const +10520:SkImage_Raster::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +10521:SkImage_Raster::onPeekPixels\28SkPixmap*\29\20const +10522:SkImage_Raster::onMakeWithMipmaps\28sk_sp\29\20const +10523:SkImage_Raster::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10524:SkImage_Raster::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10525:SkImage_Raster::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +10526:SkImage_Raster::onHasMipmaps\28\29\20const +10527:SkImage_Raster::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +10528:SkImage_Raster::notifyAddedToRasterCache\28\29\20const +10529:SkImage_Raster::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +10530:SkImage_LazyTexture::readPixelsProxy\28GrDirectContext*\2c\20SkPixmap\20const&\29\20const +10531:SkImage_LazyTexture::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10532:SkImage_Lazy::~SkImage_Lazy\28\29 +10533:SkImage_Lazy::onReinterpretColorSpace\28sk_sp\29\20const +10534:SkImage_Lazy::onRefEncoded\28\29\20const +10535:SkImage_Lazy::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +10536:SkImage_Lazy::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10537:SkImage_Lazy::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10538:SkImage_Lazy::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +10539:SkImage_Lazy::onIsProtected\28\29\20const +10540:SkImage_Lazy::isValid\28GrRecordingContext*\29\20const +10541:SkImage_Lazy::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +10542:SkImage_GaneshBase::~SkImage_GaneshBase\28\29 +10543:SkImage_GaneshBase::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +10544:SkImage_GaneshBase::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10545:SkImage_GaneshBase::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +10546:SkImage_GaneshBase::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +10547:SkImage_GaneshBase::isValid\28GrRecordingContext*\29\20const +10548:SkImage_GaneshBase::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +10549:SkImage_GaneshBase::directContext\28\29\20const +10550:SkImage_Ganesh::~SkImage_Ganesh\28\29.1 +10551:SkImage_Ganesh::textureSize\28\29\20const +10552:SkImage_Ganesh::onReinterpretColorSpace\28sk_sp\29\20const +10553:SkImage_Ganesh::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +10554:SkImage_Ganesh::onIsProtected\28\29\20const +10555:SkImage_Ganesh::onHasMipmaps\28\29\20const +10556:SkImage_Ganesh::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +10557:SkImage_Ganesh::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +10558:SkImage_Ganesh::generatingSurfaceIsDeleted\28\29 +10559:SkImage_Ganesh::flush\28GrDirectContext*\2c\20GrFlushInfo\20const&\29\20const +10560:SkImage_Ganesh::asView\28GrRecordingContext*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29\20const +10561:SkImage_Ganesh::asFragmentProcessor\28GrRecordingContext*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29\20const +10562:SkImage_Base::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +10563:SkImage_Base::notifyAddedToRasterCache\28\29\20const +10564:SkImage_Base::makeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10565:SkImage_Base::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10566:SkImage_Base::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +10567:SkImage_Base::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +10568:SkImage_Base::makeColorSpace\28skgpu::graphite::Recorder*\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +10569:SkImage_Base::makeColorSpace\28GrDirectContext*\2c\20sk_sp\29\20const +10570:SkImage_Base::isTextureBacked\28\29\20const +10571:SkImage_Base::isLazyGenerated\28\29\20const +10572:SkImageShader::~SkImageShader\28\29.1 +10573:SkImageShader::~SkImageShader\28\29 +10574:SkImageShader::type\28\29\20const +10575:SkImageShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +10576:SkImageShader::isOpaque\28\29\20const +10577:SkImageShader::getTypeName\28\29\20const +10578:SkImageShader::flatten\28SkWriteBuffer&\29\20const +10579:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10580:SkImageGenerator::~SkImageGenerator\28\29 +10581:SkImageFilters::Compose\28sk_sp\2c\20sk_sp\29 +10582:SkImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10583:SkImage::~SkImage\28\29 +10584:SkImage::height\28\29\20const +10585:SkIcoDecoder::IsIco\28void\20const*\2c\20unsigned\20long\29 +10586:SkIcoDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10587:SkIcoCodec::~SkIcoCodec\28\29.1 +10588:SkIcoCodec::~SkIcoCodec\28\29 +10589:SkIcoCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10590:SkIcoCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10591:SkIcoCodec::onSkipScanlines\28int\29 +10592:SkIcoCodec::onIncrementalDecode\28int*\29 +10593:SkIcoCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +10594:SkIcoCodec::onGetScanlineOrder\28\29\20const +10595:SkIcoCodec::onGetScaledDimensions\28float\29\20const +10596:SkIcoCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10597:SkIcoCodec::onDimensionsSupported\28SkISize\20const&\29 +10598:SkIcoCodec::getSampler\28bool\29 +10599:SkIcoCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +10600:SkGradientBaseShader::onAsLuminanceColor\28unsigned\20int*\29\20const +10601:SkGradientBaseShader::isOpaque\28\29\20const +10602:SkGradientBaseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10603:SkGifDecoder::IsGif\28void\20const*\2c\20unsigned\20long\29 +10604:SkGifDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10605:SkGaussianColorFilter::getTypeName\28\29\20const +10606:SkGaussianColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10607:SkGammaColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +10608:SkGammaColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +10609:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29.1 +10610:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29 +10611:SkFontStyleSet_Custom::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +10612:SkFontMgr_Custom::~SkFontMgr_Custom\28\29.1 +10613:SkFontMgr_Custom::~SkFontMgr_Custom\28\29 +10614:SkFontMgr_Custom::onMatchFamily\28char\20const*\29\20const +10615:SkFontMgr_Custom::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +10616:SkFontMgr_Custom::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +10617:SkFontMgr_Custom::onMakeFromStreamArgs\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +10618:SkFontMgr_Custom::onMakeFromFile\28char\20const*\2c\20int\29\20const +10619:SkFontMgr_Custom::onMakeFromData\28sk_sp\2c\20int\29\20const +10620:SkFontMgr_Custom::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +10621:SkFontMgr_Custom::onGetFamilyName\28int\2c\20SkString*\29\20const +10622:SkFont::setScaleX\28float\29 +10623:SkFont::setEmbeddedBitmaps\28bool\29 +10624:SkFont::isEmbolden\28\29\20const +10625:SkFont::getSkewX\28\29\20const +10626:SkFont::getSize\28\29\20const +10627:SkFont::getScaleX\28\29\20const +10628:SkFont*\20emscripten::internal::operator_new\2c\20float\2c\20float\2c\20float>\28sk_sp&&\2c\20float&&\2c\20float&&\2c\20float&&\29 +10629:SkFont*\20emscripten::internal::operator_new\2c\20float>\28sk_sp&&\2c\20float&&\29 +10630:SkFont*\20emscripten::internal::operator_new>\28sk_sp&&\29 +10631:SkFont*\20emscripten::internal::operator_new\28\29 +10632:SkFILEStream::~SkFILEStream\28\29.1 +10633:SkFILEStream::~SkFILEStream\28\29 +10634:SkFILEStream::seek\28unsigned\20long\29 +10635:SkFILEStream::rewind\28\29 +10636:SkFILEStream::read\28void*\2c\20unsigned\20long\29 +10637:SkFILEStream::onFork\28\29\20const +10638:SkFILEStream::onDuplicate\28\29\20const +10639:SkFILEStream::move\28long\29 +10640:SkFILEStream::isAtEnd\28\29\20const +10641:SkFILEStream::getPosition\28\29\20const +10642:SkFILEStream::getLength\28\29\20const +10643:SkEncoder::~SkEncoder\28\29 +10644:SkEmptyShader::getTypeName\28\29\20const +10645:SkEmptyPicture::~SkEmptyPicture\28\29 +10646:SkEmptyPicture::cullRect\28\29\20const +10647:SkEmptyFontMgr::onMatchFamily\28char\20const*\29\20const +10648:SkEdgeBuilder::~SkEdgeBuilder\28\29 +10649:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +10650:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29.1 +10651:SkDrawable::onMakePictureSnapshot\28\29 +10652:SkDrawBase::~SkDrawBase\28\29 +10653:SkDraw::paintMasks\28SkZip\2c\20SkPaint\20const&\29\20const +10654:SkDiscretePathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10655:SkDiscretePathEffectImpl::getTypeName\28\29\20const +10656:SkDiscretePathEffectImpl::getFactory\28\29\20const +10657:SkDiscretePathEffectImpl::computeFastBounds\28SkRect*\29\20const +10658:SkDiscretePathEffectImpl::CreateProc\28SkReadBuffer&\29 +10659:SkDevice::~SkDevice\28\29 +10660:SkDevice::strikeDeviceInfo\28\29\20const +10661:SkDevice::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +10662:SkDevice::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10663:SkDevice::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20sk_sp\2c\20SkPaint\20const&\29 +10664:SkDevice::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +10665:SkDevice::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10666:SkDevice::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10667:SkDevice::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10668:SkDevice::drawCoverageMask\28SkSpecialImage\20const*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +10669:SkDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +10670:SkDevice::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10671:SkDevice::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +10672:SkDashImpl::~SkDashImpl\28\29.1 +10673:SkDashImpl::~SkDashImpl\28\29 +10674:SkDashImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10675:SkDashImpl::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +10676:SkDashImpl::onAsADash\28SkPathEffect::DashInfo*\29\20const +10677:SkDashImpl::getTypeName\28\29\20const +10678:SkDashImpl::flatten\28SkWriteBuffer&\29\20const +10679:SkCustomTypefaceBuilder::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +10680:SkCornerPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10681:SkCornerPathEffectImpl::getTypeName\28\29\20const +10682:SkCornerPathEffectImpl::getFactory\28\29\20const +10683:SkCornerPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10684:SkCornerPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10685:SkCornerPathEffect::Make\28float\29 +10686:SkContourMeasureIter*\20emscripten::internal::operator_new\28SkPath\20const&\2c\20bool&&\2c\20float&&\29 +10687:SkContourMeasure::~SkContourMeasure\28\29.1 +10688:SkContourMeasure::~SkContourMeasure\28\29 +10689:SkContourMeasure::isClosed\28\29\20const +10690:SkConicalGradient::getTypeName\28\29\20const +10691:SkConicalGradient::flatten\28SkWriteBuffer&\29\20const +10692:SkConicalGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10693:SkConicalGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10694:SkComposePathEffect::~SkComposePathEffect\28\29 +10695:SkComposePathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10696:SkComposePathEffect::getTypeName\28\29\20const +10697:SkComposePathEffect::computeFastBounds\28SkRect*\29\20const +10698:SkComposeColorFilter::onIsAlphaUnchanged\28\29\20const +10699:SkComposeColorFilter::getTypeName\28\29\20const +10700:SkComposeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10701:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29.1 +10702:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29 +10703:SkColorSpaceXformColorFilter::getTypeName\28\29\20const +10704:SkColorSpaceXformColorFilter::flatten\28SkWriteBuffer&\29\20const +10705:SkColorSpaceXformColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10706:SkColorShader::onAsLuminanceColor\28unsigned\20int*\29\20const +10707:SkColorShader::isOpaque\28\29\20const +10708:SkColorShader::getTypeName\28\29\20const +10709:SkColorShader::flatten\28SkWriteBuffer&\29\20const +10710:SkColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10711:SkColorPalette::~SkColorPalette\28\29.1 +10712:SkColorPalette::~SkColorPalette\28\29 +10713:SkColorFilters::SRGBToLinearGamma\28\29 +10714:SkColorFilters::LinearToSRGBGamma\28\29 +10715:SkColorFilters::Lerp\28float\2c\20sk_sp\2c\20sk_sp\29 +10716:SkColorFilters::Compose\28sk_sp\20const&\2c\20sk_sp\29 +10717:SkColorFilterShader::~SkColorFilterShader\28\29.1 +10718:SkColorFilterShader::~SkColorFilterShader\28\29 +10719:SkColorFilterShader::isOpaque\28\29\20const +10720:SkColorFilterShader::getTypeName\28\29\20const +10721:SkColorFilterShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10722:SkColorFilterBase::onFilterColor4f\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkColorSpace*\29\20const +10723:SkColor4Shader::~SkColor4Shader\28\29.1 +10724:SkColor4Shader::~SkColor4Shader\28\29 +10725:SkColor4Shader::isOpaque\28\29\20const +10726:SkColor4Shader::getTypeName\28\29\20const +10727:SkColor4Shader::flatten\28SkWriteBuffer&\29\20const +10728:SkColor4Shader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10729:SkCodecImageGenerator::~SkCodecImageGenerator\28\29.1 +10730:SkCodecImageGenerator::~SkCodecImageGenerator\28\29 +10731:SkCodecImageGenerator::onRefEncodedData\28\29 +10732:SkCodecImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +10733:SkCodecImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +10734:SkCodecImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +10735:SkCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10736:SkCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10737:SkCodec::onOutputScanline\28int\29\20const +10738:SkCodec::onGetScaledDimensions\28float\29\20const +10739:SkCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +10740:SkCanvas::rotate\28float\2c\20float\2c\20float\29 +10741:SkCanvas::recordingContext\28\29\20const +10742:SkCanvas::recorder\28\29\20const +10743:SkCanvas::onPeekPixels\28SkPixmap*\29 +10744:SkCanvas::onNewSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +10745:SkCanvas::onImageInfo\28\29\20const +10746:SkCanvas::onGetProps\28SkSurfaceProps*\2c\20bool\29\20const +10747:SkCanvas::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10748:SkCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10749:SkCanvas::onDrawSlug\28sktext::gpu::Slug\20const*\29 +10750:SkCanvas::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10751:SkCanvas::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10752:SkCanvas::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10753:SkCanvas::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10754:SkCanvas::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10755:SkCanvas::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10756:SkCanvas::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10757:SkCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10758:SkCanvas::onDrawPaint\28SkPaint\20const&\29 +10759:SkCanvas::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10760:SkCanvas::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +10761:SkCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10762:SkCanvas::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10763:SkCanvas::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10764:SkCanvas::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10765:SkCanvas::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10766:SkCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10767:SkCanvas::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10768:SkCanvas::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10769:SkCanvas::onDrawBehind\28SkPaint\20const&\29 +10770:SkCanvas::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +10771:SkCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10772:SkCanvas::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10773:SkCanvas::onDiscard\28\29 +10774:SkCanvas::onConvertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10775:SkCanvas::onAccessTopLayerPixels\28SkPixmap*\29 +10776:SkCanvas::isClipRect\28\29\20const +10777:SkCanvas::isClipEmpty\28\29\20const +10778:SkCanvas::getSaveCount\28\29\20const +10779:SkCanvas::getBaseLayerSize\28\29\20const +10780:SkCanvas::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10781:SkCanvas::drawPicture\28sk_sp\20const&\29 +10782:SkCanvas::drawCircle\28float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10783:SkCanvas*\20emscripten::internal::operator_new\28float&&\2c\20float&&\29 +10784:SkCanvas*\20emscripten::internal::operator_new\28\29 +10785:SkCachedData::~SkCachedData\28\29.1 +10786:SkCTMShader::~SkCTMShader\28\29 +10787:SkCTMShader::getTypeName\28\29\20const +10788:SkCTMShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10789:SkCTMShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10790:SkBreakIterator_icu::~SkBreakIterator_icu\28\29.1 +10791:SkBreakIterator_icu::~SkBreakIterator_icu\28\29 +10792:SkBreakIterator_icu::status\28\29 +10793:SkBreakIterator_icu::setText\28char\20const*\2c\20int\29 +10794:SkBreakIterator_icu::setText\28char16_t\20const*\2c\20int\29 +10795:SkBreakIterator_icu::next\28\29 +10796:SkBreakIterator_icu::isDone\28\29 +10797:SkBreakIterator_icu::first\28\29 +10798:SkBreakIterator_icu::current\28\29 +10799:SkBmpStandardCodec::~SkBmpStandardCodec\28\29.1 +10800:SkBmpStandardCodec::~SkBmpStandardCodec\28\29 +10801:SkBmpStandardCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10802:SkBmpStandardCodec::onInIco\28\29\20const +10803:SkBmpStandardCodec::getSampler\28bool\29 +10804:SkBmpStandardCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10805:SkBmpRLESampler::onSetSampleX\28int\29 +10806:SkBmpRLESampler::fillWidth\28\29\20const +10807:SkBmpRLECodec::~SkBmpRLECodec\28\29.1 +10808:SkBmpRLECodec::~SkBmpRLECodec\28\29 +10809:SkBmpRLECodec::skipRows\28int\29 +10810:SkBmpRLECodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10811:SkBmpRLECodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10812:SkBmpRLECodec::getSampler\28bool\29 +10813:SkBmpRLECodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10814:SkBmpMaskCodec::~SkBmpMaskCodec\28\29.1 +10815:SkBmpMaskCodec::~SkBmpMaskCodec\28\29 +10816:SkBmpMaskCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10817:SkBmpMaskCodec::getSampler\28bool\29 +10818:SkBmpMaskCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10819:SkBmpDecoder::IsBmp\28void\20const*\2c\20unsigned\20long\29 +10820:SkBmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10821:SkBmpCodec::~SkBmpCodec\28\29 +10822:SkBmpCodec::skipRows\28int\29 +10823:SkBmpCodec::onSkipScanlines\28int\29 +10824:SkBmpCodec::onRewind\28\29 +10825:SkBmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +10826:SkBmpCodec::onGetScanlineOrder\28\29\20const +10827:SkBlurMaskFilterImpl::getTypeName\28\29\20const +10828:SkBlurMaskFilterImpl::flatten\28SkWriteBuffer&\29\20const +10829:SkBlurMaskFilterImpl::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10830:SkBlurMaskFilterImpl::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10831:SkBlurMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +10832:SkBlurMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +10833:SkBlurMaskFilterImpl::asImageFilter\28SkMatrix\20const&\29\20const +10834:SkBlurMaskFilterImpl::asABlur\28SkMaskFilterBase::BlurRec*\29\20const +10835:SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +10836:SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +10837:SkBlockMemoryStream::seek\28unsigned\20long\29 +10838:SkBlockMemoryStream::rewind\28\29 +10839:SkBlockMemoryStream::read\28void*\2c\20unsigned\20long\29 +10840:SkBlockMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +10841:SkBlockMemoryStream::onFork\28\29\20const +10842:SkBlockMemoryStream::onDuplicate\28\29\20const +10843:SkBlockMemoryStream::move\28long\29 +10844:SkBlockMemoryStream::isAtEnd\28\29\20const +10845:SkBlockMemoryStream::getMemoryBase\28\29 +10846:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29.1 +10847:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29 +10848:SkBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10849:SkBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10850:SkBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10851:SkBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10852:SkBlitter::allocBlitMemory\28unsigned\20long\29 +10853:SkBlenderBase::asBlendMode\28\29\20const +10854:SkBlendShader::getTypeName\28\29\20const +10855:SkBlendShader::flatten\28SkWriteBuffer&\29\20const +10856:SkBlendShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10857:SkBlendModeColorFilter::onIsAlphaUnchanged\28\29\20const +10858:SkBlendModeColorFilter::onAsAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +10859:SkBlendModeColorFilter::getTypeName\28\29\20const +10860:SkBlendModeColorFilter::flatten\28SkWriteBuffer&\29\20const +10861:SkBlendModeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10862:SkBlendModeBlender::onAppendStages\28SkStageRec\20const&\29\20const +10863:SkBlendModeBlender::getTypeName\28\29\20const +10864:SkBlendModeBlender::flatten\28SkWriteBuffer&\29\20const +10865:SkBlendModeBlender::asBlendMode\28\29\20const +10866:SkBitmapDevice::~SkBitmapDevice\28\29.1 +10867:SkBitmapDevice::~SkBitmapDevice\28\29 +10868:SkBitmapDevice::snapSpecial\28SkIRect\20const&\2c\20bool\29 +10869:SkBitmapDevice::setImmutable\28\29 +10870:SkBitmapDevice::replaceClip\28SkIRect\20const&\29 +10871:SkBitmapDevice::pushClipStack\28\29 +10872:SkBitmapDevice::popClipStack\28\29 +10873:SkBitmapDevice::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10874:SkBitmapDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10875:SkBitmapDevice::onPeekPixels\28SkPixmap*\29 +10876:SkBitmapDevice::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +10877:SkBitmapDevice::onClipShader\28sk_sp\29 +10878:SkBitmapDevice::onAccessPixels\28SkPixmap*\29 +10879:SkBitmapDevice::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +10880:SkBitmapDevice::makeSpecial\28SkImage\20const*\29 +10881:SkBitmapDevice::makeSpecial\28SkBitmap\20const&\29 +10882:SkBitmapDevice::isClipWideOpen\28\29\20const +10883:SkBitmapDevice::isClipRect\28\29\20const +10884:SkBitmapDevice::isClipEmpty\28\29\20const +10885:SkBitmapDevice::isClipAntiAliased\28\29\20const +10886:SkBitmapDevice::getRasterHandle\28\29\20const +10887:SkBitmapDevice::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +10888:SkBitmapDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10889:SkBitmapDevice::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10890:SkBitmapDevice::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10891:SkBitmapDevice::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10892:SkBitmapDevice::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +10893:SkBitmapDevice::drawPaint\28SkPaint\20const&\29 +10894:SkBitmapDevice::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10895:SkBitmapDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10896:SkBitmapDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +10897:SkBitmapDevice::devClipBounds\28\29\20const +10898:SkBitmapDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +10899:SkBitmapDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10900:SkBitmapDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +10901:SkBitmapDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +10902:SkBitmapDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +10903:SkBitmapDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +10904:SkBitmapCache::Rec::~Rec\28\29.1 +10905:SkBitmapCache::Rec::~Rec\28\29 +10906:SkBitmapCache::Rec::postAddInstall\28void*\29 +10907:SkBitmapCache::Rec::getCategory\28\29\20const +10908:SkBitmapCache::Rec::canBePurged\28\29 +10909:SkBitmapCache::Rec::bytesUsed\28\29\20const +10910:SkBitmapCache::Rec::ReleaseProc\28void*\2c\20void*\29 +10911:SkBitmapCache::Rec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +10912:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29.1 +10913:SkBinaryWriteBuffer::write\28SkM44\20const&\29 +10914:SkBinaryWriteBuffer::writeTypeface\28SkTypeface*\29 +10915:SkBinaryWriteBuffer::writeString\28std::__2::basic_string_view>\29 +10916:SkBinaryWriteBuffer::writeStream\28SkStream*\2c\20unsigned\20long\29 +10917:SkBinaryWriteBuffer::writeScalar\28float\29 +10918:SkBinaryWriteBuffer::writeSampling\28SkSamplingOptions\20const&\29 +10919:SkBinaryWriteBuffer::writeRegion\28SkRegion\20const&\29 +10920:SkBinaryWriteBuffer::writeRect\28SkRect\20const&\29 +10921:SkBinaryWriteBuffer::writePoint\28SkPoint\20const&\29 +10922:SkBinaryWriteBuffer::writePointArray\28SkPoint\20const*\2c\20unsigned\20int\29 +10923:SkBinaryWriteBuffer::writePoint3\28SkPoint3\20const&\29 +10924:SkBinaryWriteBuffer::writePath\28SkPath\20const&\29 +10925:SkBinaryWriteBuffer::writePaint\28SkPaint\20const&\29 +10926:SkBinaryWriteBuffer::writePad32\28void\20const*\2c\20unsigned\20long\29 +10927:SkBinaryWriteBuffer::writeMatrix\28SkMatrix\20const&\29 +10928:SkBinaryWriteBuffer::writeImage\28SkImage\20const*\29 +10929:SkBinaryWriteBuffer::writeColor4fArray\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20unsigned\20int\29 +10930:SkBigPicture::~SkBigPicture\28\29.1 +10931:SkBigPicture::~SkBigPicture\28\29 +10932:SkBigPicture::playback\28SkCanvas*\2c\20SkPicture::AbortCallback*\29\20const +10933:SkBigPicture::cullRect\28\29\20const +10934:SkBigPicture::approximateOpCount\28bool\29\20const +10935:SkBigPicture::approximateBytesUsed\28\29\20const +10936:SkBezierCubic::Subdivide\28double\20const*\2c\20double\2c\20double*\29 +10937:SkBasicEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +10938:SkBasicEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +10939:SkBasicEdgeBuilder::addQuad\28SkPoint\20const*\29 +10940:SkBasicEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +10941:SkBasicEdgeBuilder::addLine\28SkPoint\20const*\29 +10942:SkBasicEdgeBuilder::addCubic\28SkPoint\20const*\29 +10943:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29 +10944:SkBBoxHierarchy::insert\28SkRect\20const*\2c\20SkBBoxHierarchy::Metadata\20const*\2c\20int\29 +10945:SkArenaAlloc::SkipPod\28char*\29 +10946:SkArenaAlloc::NextBlock\28char*\29 +10947:SkAnimatedImage::~SkAnimatedImage\28\29.1 +10948:SkAnimatedImage::~SkAnimatedImage\28\29 +10949:SkAnimatedImage::reset\28\29 +10950:SkAnimatedImage::onGetBounds\28\29 +10951:SkAnimatedImage::onDraw\28SkCanvas*\29 +10952:SkAnimatedImage::getRepetitionCount\28\29\20const +10953:SkAnimatedImage::getCurrentFrame\28\29 +10954:SkAnimatedImage::currentFrameDuration\28\29 +10955:SkAndroidCodecAdapter::onGetSupportedSubset\28SkIRect*\29\20const +10956:SkAndroidCodecAdapter::onGetSampledDimensions\28int\29\20const +10957:SkAndroidCodecAdapter::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +10958:SkAnalyticEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +10959:SkAnalyticEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +10960:SkAnalyticEdgeBuilder::addQuad\28SkPoint\20const*\29 +10961:SkAnalyticEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +10962:SkAnalyticEdgeBuilder::addLine\28SkPoint\20const*\29 +10963:SkAnalyticEdgeBuilder::addCubic\28SkPoint\20const*\29 +10964:SkAAClipBlitter::~SkAAClipBlitter\28\29.1 +10965:SkAAClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10966:SkAAClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10967:SkAAClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10968:SkAAClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10969:SkAAClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10970:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_1::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +10971:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_0::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +10972:SkAAClip::Builder::Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10973:SkAAClip::Builder::Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10974:SkAAClip::Builder::Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10975:SkAAClip::Builder::Blitter::blitH\28int\2c\20int\2c\20int\29 +10976:SkAAClip::Builder::Blitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10977:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29.1 +10978:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29 +10979:SkA8_Coverage_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10980:SkA8_Coverage_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10981:SkA8_Coverage_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10982:SkA8_Coverage_Blitter::blitH\28int\2c\20int\2c\20int\29 +10983:SkA8_Coverage_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10984:SkA8_Blitter::~SkA8_Blitter\28\29.1 +10985:SkA8_Blitter::~SkA8_Blitter\28\29 +10986:SkA8_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10987:SkA8_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10988:SkA8_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10989:SkA8_Blitter::blitH\28int\2c\20int\2c\20int\29 +10990:SkA8_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10991:SkA8Blitter_Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +10992:Sk2DPathEffect::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +10993:Sk2DPathEffect::flatten\28SkWriteBuffer&\29\20const +10994:SimpleVFilter16i_C +10995:SimpleVFilter16_C +10996:SimpleTextStyle*\20emscripten::internal::raw_constructor\28\29 +10997:SimpleTextStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +10998:SimpleStrutStyle*\20emscripten::internal::raw_constructor\28\29 +10999:SimpleStrutStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +11000:SimpleParagraphStyle*\20emscripten::internal::raw_constructor\28\29 +11001:SimpleHFilter16i_C +11002:SimpleHFilter16_C +11003:SimpleFontStyle*\20emscripten::internal::raw_constructor\28\29 +11004:ShaderPDXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11005:ShaderPDXferProcessor::name\28\29\20const +11006:ShaderPDXferProcessor::makeProgramImpl\28\29\20const +11007:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11008:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11009:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11010:RuntimeEffectUniform*\20emscripten::internal::raw_constructor\28\29 +11011:RuntimeEffectRPCallbacks::toLinearSrgb\28void\20const*\29 +11012:RuntimeEffectRPCallbacks::fromLinearSrgb\28void\20const*\29 +11013:RuntimeEffectRPCallbacks::appendShader\28int\29 +11014:RuntimeEffectRPCallbacks::appendColorFilter\28int\29 +11015:RuntimeEffectRPCallbacks::appendBlender\28int\29 +11016:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29 +11017:RunBasedAdditiveBlitter::getRealBlitter\28bool\29 +11018:RunBasedAdditiveBlitter::flush_if_y_changed\28int\2c\20int\29 +11019:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11020:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11021:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11022:Round_Up_To_Grid +11023:Round_To_Half_Grid +11024:Round_To_Grid +11025:Round_To_Double_Grid +11026:Round_Super_45 +11027:Round_Super +11028:Round_None +11029:Round_Down_To_Grid +11030:RoundJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11031:RoundCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +11032:Reset +11033:Read_CVT_Stretched +11034:Read_CVT +11035:RD4_C +11036:Project_y +11037:Project +11038:ProcessRows +11039:PredictorAdd9_C +11040:PredictorAdd8_C +11041:PredictorAdd7_C +11042:PredictorAdd6_C +11043:PredictorAdd5_C +11044:PredictorAdd4_C +11045:PredictorAdd3_C +11046:PredictorAdd2_C +11047:PredictorAdd1_C +11048:PredictorAdd13_C +11049:PredictorAdd12_C +11050:PredictorAdd11_C +11051:PredictorAdd10_C +11052:PredictorAdd0_C +11053:PrePostInverseBlitterProc\28SkBlitter*\2c\20int\2c\20bool\29 +11054:PorterDuffXferProcessor::onHasSecondaryOutput\28\29\20const +11055:PorterDuffXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11056:PorterDuffXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11057:PorterDuffXferProcessor::name\28\29\20const +11058:PorterDuffXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11059:PorterDuffXferProcessor::makeProgramImpl\28\29\20const +11060:ParseVP8X +11061:PackRGB_C +11062:PDLCDXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +11063:PDLCDXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11064:PDLCDXferProcessor::name\28\29\20const +11065:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +11066:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11067:PDLCDXferProcessor::makeProgramImpl\28\29\20const +11068:OT::match_glyph\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11069:OT::match_coverage\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11070:OT::match_class_cached\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11071:OT::match_class_cached2\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11072:OT::match_class_cached1\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11073:OT::match_class\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11074:OT::hb_ot_apply_context_t::return_t\20OT::Layout::GSUB_impl::SubstLookup::dispatch_recurse_func\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\29 +11075:OT::hb_ot_apply_context_t::return_t\20OT::Layout::GPOS_impl::PosLookup::dispatch_recurse_func\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\29 +11076:OT::cff1::accelerator_t::gname_t::cmp\28void\20const*\2c\20void\20const*\29 +11077:OT::Layout::Common::RangeRecord::cmp_range\28void\20const*\2c\20void\20const*\29 +11078:OT::ColorLine::static_get_color_stops\28hb_color_line_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_color_stop_t*\2c\20void*\29 +11079:OT::ColorLine::static_get_color_stops\28hb_color_line_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_color_stop_t*\2c\20void*\29 +11080:OT::CmapSubtableFormat4::accelerator_t::get_glyph_func\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +11081:Move_CVT_Stretched +11082:Move_CVT +11083:MiterJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11084:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29.1 +11085:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29 +11086:MaskAdditiveBlitter::getWidth\28\29 +11087:MaskAdditiveBlitter::getRealBlitter\28bool\29 +11088:MaskAdditiveBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11089:MaskAdditiveBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11090:MaskAdditiveBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11091:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11092:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11093:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11094:MapAlpha_C +11095:MapARGB_C +11096:MakeRenderTarget\28sk_sp\2c\20int\2c\20int\29 +11097:MakeRenderTarget\28sk_sp\2c\20SimpleImageInfo\29 +11098:MakePathFromVerbsPointsWeights\28unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +11099:MakePathFromSVGString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11100:MakePathFromOp\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29 +11101:MakePathFromInterpolation\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29 +11102:MakePathFromCmds\28unsigned\20long\2c\20int\29 +11103:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\29 +11104:MakeImageFromGenerator\28SimpleImageInfo\2c\20emscripten::val\29 +11105:MakeGrContext\28\29 +11106:MakeAsWinding\28SkPath\20const&\29 +11107:LD4_C +11108:JpegDecoderMgr::returnFailure\28char\20const*\2c\20SkCodec::Result\29 +11109:JpegDecoderMgr::init\28\29 +11110:JpegDecoderMgr::SourceMgr::SkipInputData\28jpeg_decompress_struct*\2c\20long\29 +11111:JpegDecoderMgr::SourceMgr::InitSource\28jpeg_decompress_struct*\29 +11112:JpegDecoderMgr::SourceMgr::FillInputBuffer\28jpeg_decompress_struct*\29 +11113:JpegDecoderMgr::JpegDecoderMgr\28SkStream*\29 +11114:IsValidSimpleFormat +11115:IsValidExtendedFormat +11116:InverseBlitter::blitH\28int\2c\20int\2c\20int\29 +11117:Init +11118:HorizontalUnfilter_C +11119:HorizontalFilter_C +11120:Horish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11121:Horish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11122:HasAlpha8b_C +11123:HasAlpha32b_C +11124:HU4_C +11125:HLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11126:HLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11127:HFilter8i_C +11128:HFilter8_C +11129:HFilter16i_C +11130:HFilter16_C +11131:HE8uv_C +11132:HE4_C +11133:HE16_C +11134:HD4_C +11135:GradientUnfilter_C +11136:GradientFilter_C +11137:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11138:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11139:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const +11140:GrYUVtoRGBEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11141:GrYUVtoRGBEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11142:GrYUVtoRGBEffect::name\28\29\20const +11143:GrYUVtoRGBEffect::clone\28\29\20const +11144:GrXferProcessor::ProgramImpl::emitWriteSwizzle\28GrGLSLXPFragmentBuilder*\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20char\20const*\29\20const +11145:GrXferProcessor::ProgramImpl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11146:GrXferProcessor::ProgramImpl::emitBlendCodeForDstRead\28GrGLSLXPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20GrXferProcessor\20const&\29 +11147:GrWritePixelsTask::~GrWritePixelsTask\28\29.1 +11148:GrWritePixelsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11149:GrWritePixelsTask::onExecute\28GrOpFlushState*\29 +11150:GrWritePixelsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11151:GrWaitRenderTask::~GrWaitRenderTask\28\29.1 +11152:GrWaitRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +11153:GrWaitRenderTask::onExecute\28GrOpFlushState*\29 +11154:GrWaitRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11155:GrTriangulator::~GrTriangulator\28\29 +11156:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29.1 +11157:GrTransferFromRenderTask::onExecute\28GrOpFlushState*\29 +11158:GrTransferFromRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11159:GrThreadSafeCache::Trampoline::~Trampoline\28\29.1 +11160:GrThreadSafeCache::Trampoline::~Trampoline\28\29 +11161:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29.1 +11162:GrTextureResolveRenderTask::onExecute\28GrOpFlushState*\29 +11163:GrTextureResolveRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11164:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +11165:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +11166:GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +11167:GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +11168:GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +11169:GrTextureProxy::~GrTextureProxy\28\29.2 +11170:GrTextureProxy::~GrTextureProxy\28\29.1 +11171:GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +11172:GrTextureProxy::instantiate\28GrResourceProvider*\29 +11173:GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +11174:GrTextureProxy::callbackDesc\28\29\20const +11175:GrTextureEffect::~GrTextureEffect\28\29.1 +11176:GrTextureEffect::~GrTextureEffect\28\29 +11177:GrTextureEffect::onMakeProgramImpl\28\29\20const +11178:GrTextureEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11179:GrTextureEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11180:GrTextureEffect::name\28\29\20const +11181:GrTextureEffect::clone\28\29\20const +11182:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11183:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11184:GrTexture::onGpuMemorySize\28\29\20const +11185:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29.1 +11186:GrTDeferredProxyUploader>::freeData\28\29 +11187:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29.1 +11188:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29 +11189:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::freeData\28\29 +11190:GrSurfaceProxy::getUniqueKey\28\29\20const +11191:GrSurface::~GrSurface\28\29 +11192:GrSurface::getResourceType\28\29\20const +11193:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29.1 +11194:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29 +11195:GrStrokeTessellationShader::name\28\29\20const +11196:GrStrokeTessellationShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11197:GrStrokeTessellationShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11198:GrStrokeTessellationShader::Impl::~Impl\28\29.1 +11199:GrStrokeTessellationShader::Impl::~Impl\28\29 +11200:GrStrokeTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11201:GrStrokeTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11202:GrSkSLFP::~GrSkSLFP\28\29.1 +11203:GrSkSLFP::~GrSkSLFP\28\29 +11204:GrSkSLFP::onMakeProgramImpl\28\29\20const +11205:GrSkSLFP::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11206:GrSkSLFP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11207:GrSkSLFP::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11208:GrSkSLFP::clone\28\29\20const +11209:GrSkSLFP::Impl::~Impl\28\29.1 +11210:GrSkSLFP::Impl::~Impl\28\29 +11211:GrSkSLFP::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11212:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11213:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11214:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11215:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleBlender\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11216:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::getMangledName\28char\20const*\29 +11217:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11218:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +11219:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +11220:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareFunction\28char\20const*\29 +11221:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11222:GrSimpleMesh*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29::'lambda'\28char*\29::__invoke\28char*\29 +11223:GrRingBuffer::FinishSubmit\28void*\29 +11224:GrResourceCache::CompareTimestamp\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29 +11225:GrRenderTask::~GrRenderTask\28\29 +11226:GrRenderTask::disown\28GrDrawingManager*\29 +11227:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +11228:GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +11229:GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +11230:GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +11231:GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +11232:GrRenderTargetProxy::callbackDesc\28\29\20const +11233:GrRecordingContext::~GrRecordingContext\28\29.1 +11234:GrRecordingContext::abandoned\28\29 +11235:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29.1 +11236:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29 +11237:GrRRectShadowGeoProc::onTextureSampler\28int\29\20const +11238:GrRRectShadowGeoProc::name\28\29\20const +11239:GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11240:GrRRectShadowGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11241:GrQuadEffect::name\28\29\20const +11242:GrQuadEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11243:GrQuadEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11244:GrQuadEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11245:GrQuadEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11246:GrPorterDuffXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11247:GrPorterDuffXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11248:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29.1 +11249:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29 +11250:GrPerlinNoise2Effect::onMakeProgramImpl\28\29\20const +11251:GrPerlinNoise2Effect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11252:GrPerlinNoise2Effect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11253:GrPerlinNoise2Effect::name\28\29\20const +11254:GrPerlinNoise2Effect::clone\28\29\20const +11255:GrPerlinNoise2Effect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11256:GrPerlinNoise2Effect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11257:GrPathTessellationShader::Impl::~Impl\28\29 +11258:GrPathTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11259:GrPathTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11260:GrOpsRenderPass::~GrOpsRenderPass\28\29 +11261:GrOpsRenderPass::onExecuteDrawable\28std::__2::unique_ptr>\29 +11262:GrOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11263:GrOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11264:GrOpFlushState::~GrOpFlushState\28\29.1 +11265:GrOpFlushState::~GrOpFlushState\28\29 +11266:GrOpFlushState::writeView\28\29\20const +11267:GrOpFlushState::usesMSAASurface\28\29\20const +11268:GrOpFlushState::tokenTracker\28\29 +11269:GrOpFlushState::threadSafeCache\28\29\20const +11270:GrOpFlushState::strikeCache\28\29\20const +11271:GrOpFlushState::smallPathAtlasManager\28\29\20const +11272:GrOpFlushState::sampledProxyArray\28\29 +11273:GrOpFlushState::rtProxy\28\29\20const +11274:GrOpFlushState::resourceProvider\28\29\20const +11275:GrOpFlushState::renderPassBarriers\28\29\20const +11276:GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +11277:GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +11278:GrOpFlushState::putBackIndirectDraws\28int\29 +11279:GrOpFlushState::putBackIndices\28int\29 +11280:GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +11281:GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +11282:GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11283:GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +11284:GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11285:GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11286:GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11287:GrOpFlushState::dstProxyView\28\29\20const +11288:GrOpFlushState::colorLoadOp\28\29\20const +11289:GrOpFlushState::atlasManager\28\29\20const +11290:GrOpFlushState::appliedClip\28\29\20const +11291:GrOpFlushState::addInlineUpload\28std::__2::function&\29>&&\29 +11292:GrOp::~GrOp\28\29 +11293:GrOnFlushCallbackObject::postFlush\28skgpu::AtlasToken\29 +11294:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11295:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11296:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +11297:GrModulateAtlasCoverageEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11298:GrModulateAtlasCoverageEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11299:GrModulateAtlasCoverageEffect::name\28\29\20const +11300:GrModulateAtlasCoverageEffect::clone\28\29\20const +11301:GrMeshDrawOp::onPrepare\28GrOpFlushState*\29 +11302:GrMeshDrawOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11303:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11304:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11305:GrMatrixEffect::onMakeProgramImpl\28\29\20const +11306:GrMatrixEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11307:GrMatrixEffect::name\28\29\20const +11308:GrMatrixEffect::clone\28\29\20const +11309:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +11310:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +11311:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::$_0::__invoke\28void\20const*\2c\20void*\29 +11312:GrImageContext::~GrImageContext\28\29.1 +11313:GrImageContext::~GrImageContext\28\29 +11314:GrHardClip::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +11315:GrGpuResource::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +11316:GrGpuBuffer::~GrGpuBuffer\28\29 +11317:GrGpuBuffer::unref\28\29\20const +11318:GrGpuBuffer::getResourceType\28\29\20const +11319:GrGpuBuffer::computeScratchKey\28skgpu::ScratchKey*\29\20const +11320:GrGeometryProcessor::onTextureSampler\28int\29\20const +11321:GrGeometryProcessor::ProgramImpl::~ProgramImpl\28\29 +11322:GrGLVaryingHandler::~GrGLVaryingHandler\28\29 +11323:GrGLUniformHandler::~GrGLUniformHandler\28\29.1 +11324:GrGLUniformHandler::~GrGLUniformHandler\28\29 +11325:GrGLUniformHandler::samplerVariable\28GrResourceHandle\29\20const +11326:GrGLUniformHandler::samplerSwizzle\28GrResourceHandle\29\20const +11327:GrGLUniformHandler::internalAddUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20bool\2c\20int\2c\20char\20const**\29 +11328:GrGLUniformHandler::getUniformCStr\28GrResourceHandle\29\20const +11329:GrGLUniformHandler::appendUniformDecls\28GrShaderFlags\2c\20SkString*\29\20const +11330:GrGLUniformHandler::addSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20GrShaderCaps\20const*\29 +11331:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +11332:GrGLTextureRenderTarget::onSetLabel\28\29 +11333:GrGLTextureRenderTarget::onRelease\28\29 +11334:GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +11335:GrGLTextureRenderTarget::onAbandon\28\29 +11336:GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +11337:GrGLTextureRenderTarget::backendFormat\28\29\20const +11338:GrGLTexture::~GrGLTexture\28\29.1 +11339:GrGLTexture::~GrGLTexture\28\29 +11340:GrGLTexture::textureParamsModified\28\29 +11341:GrGLTexture::onStealBackendTexture\28GrBackendTexture*\2c\20std::__2::function*\29 +11342:GrGLTexture::getBackendTexture\28\29\20const +11343:GrGLSemaphore::~GrGLSemaphore\28\29.1 +11344:GrGLSemaphore::~GrGLSemaphore\28\29 +11345:GrGLSemaphore::setIsOwned\28\29 +11346:GrGLSemaphore::backendSemaphore\28\29\20const +11347:GrGLSLVertexBuilder::~GrGLSLVertexBuilder\28\29 +11348:GrGLSLVertexBuilder::onFinalize\28\29 +11349:GrGLSLUniformHandler::inputSamplerSwizzle\28GrResourceHandle\29\20const +11350:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +11351:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +11352:GrGLSLFragmentShaderBuilder::onFinalize\28\29 +11353:GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +11354:GrGLSLFragmentShaderBuilder::forceHighPrecision\28\29 +11355:GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +11356:GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +11357:GrGLRenderTarget::~GrGLRenderTarget\28\29 +11358:GrGLRenderTarget::onGpuMemorySize\28\29\20const +11359:GrGLRenderTarget::getBackendRenderTarget\28\29\20const +11360:GrGLRenderTarget::completeStencilAttachment\28GrAttachment*\2c\20bool\29 +11361:GrGLRenderTarget::canAttemptStencilAttachment\28bool\29\20const +11362:GrGLRenderTarget::backendFormat\28\29\20const +11363:GrGLRenderTarget::alwaysClearStencil\28\29\20const +11364:GrGLProgramDataManager::~GrGLProgramDataManager\28\29.1 +11365:GrGLProgramDataManager::~GrGLProgramDataManager\28\29 +11366:GrGLProgramDataManager::setMatrix4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11367:GrGLProgramDataManager::setMatrix4f\28GrResourceHandle\2c\20float\20const*\29\20const +11368:GrGLProgramDataManager::setMatrix3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11369:GrGLProgramDataManager::setMatrix3f\28GrResourceHandle\2c\20float\20const*\29\20const +11370:GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11371:GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +11372:GrGLProgramDataManager::set4iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11373:GrGLProgramDataManager::set4i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +11374:GrGLProgramDataManager::set4f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\2c\20float\29\20const +11375:GrGLProgramDataManager::set3iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11376:GrGLProgramDataManager::set3i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\29\20const +11377:GrGLProgramDataManager::set3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11378:GrGLProgramDataManager::set3f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\29\20const +11379:GrGLProgramDataManager::set2iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11380:GrGLProgramDataManager::set2i\28GrResourceHandle\2c\20int\2c\20int\29\20const +11381:GrGLProgramDataManager::set2f\28GrResourceHandle\2c\20float\2c\20float\29\20const +11382:GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11383:GrGLProgramDataManager::set1i\28GrResourceHandle\2c\20int\29\20const +11384:GrGLProgramDataManager::set1fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11385:GrGLProgramDataManager::set1f\28GrResourceHandle\2c\20float\29\20const +11386:GrGLProgramBuilder::~GrGLProgramBuilder\28\29.1 +11387:GrGLProgramBuilder::varyingHandler\28\29 +11388:GrGLProgramBuilder::caps\28\29\20const +11389:GrGLProgram::~GrGLProgram\28\29.1 +11390:GrGLOpsRenderPass::~GrGLOpsRenderPass\28\29 +11391:GrGLOpsRenderPass::onSetScissorRect\28SkIRect\20const&\29 +11392:GrGLOpsRenderPass::onEnd\28\29 +11393:GrGLOpsRenderPass::onDraw\28int\2c\20int\29 +11394:GrGLOpsRenderPass::onDrawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +11395:GrGLOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11396:GrGLOpsRenderPass::onDrawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +11397:GrGLOpsRenderPass::onDrawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +11398:GrGLOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11399:GrGLOpsRenderPass::onClear\28GrScissorState\20const&\2c\20std::__2::array\29 +11400:GrGLOpsRenderPass::onClearStencilClip\28GrScissorState\20const&\2c\20bool\29 +11401:GrGLOpsRenderPass::onBindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +11402:GrGLOpsRenderPass::onBindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +11403:GrGLOpsRenderPass::onBindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +11404:GrGLOpsRenderPass::onBegin\28\29 +11405:GrGLOpsRenderPass::inlineUpload\28GrOpFlushState*\2c\20std::__2::function&\29>&\29 +11406:GrGLInterface::~GrGLInterface\28\29.1 +11407:GrGLInterface::~GrGLInterface\28\29 +11408:GrGLGpu::~GrGLGpu\28\29.1 +11409:GrGLGpu::xferBarrier\28GrRenderTarget*\2c\20GrXferBarrierType\29 +11410:GrGLGpu::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +11411:GrGLGpu::willExecute\28\29 +11412:GrGLGpu::waitSemaphore\28GrSemaphore*\29 +11413:GrGLGpu::waitFence\28unsigned\20long\20long\29 +11414:GrGLGpu::submit\28GrOpsRenderPass*\29 +11415:GrGLGpu::stagingBufferManager\28\29 +11416:GrGLGpu::refPipelineBuilder\28\29 +11417:GrGLGpu::prepareTextureForCrossContextUsage\28GrTexture*\29 +11418:GrGLGpu::precompileShader\28SkData\20const&\2c\20SkData\20const&\29 +11419:GrGLGpu::pipelineBuilder\28\29 +11420:GrGLGpu::onWritePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +11421:GrGLGpu::onWrapRenderableBackendTexture\28GrBackendTexture\20const&\2c\20int\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11422:GrGLGpu::onWrapCompressedBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11423:GrGLGpu::onWrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\29 +11424:GrGLGpu::onWrapBackendRenderTarget\28GrBackendRenderTarget\20const&\29 +11425:GrGLGpu::onUpdateCompressedBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20void\20const*\2c\20unsigned\20long\29 +11426:GrGLGpu::onTransferPixelsTo\28GrTexture*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11427:GrGLGpu::onTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\29 +11428:GrGLGpu::onTransferFromBufferToBuffer\28sk_sp\2c\20unsigned\20long\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11429:GrGLGpu::onSubmitToGpu\28GrSyncCpu\29 +11430:GrGLGpu::onResolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +11431:GrGLGpu::onResetTextureBindings\28\29 +11432:GrGLGpu::onResetContext\28unsigned\20int\29 +11433:GrGLGpu::onRegenerateMipMapLevels\28GrTexture*\29 +11434:GrGLGpu::onReadPixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20unsigned\20long\29 +11435:GrGLGpu::onGetOpsRenderPass\28GrRenderTarget*\2c\20bool\2c\20GrAttachment*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const&\2c\20GrOpsRenderPass::LoadAndStoreInfo\20const&\2c\20GrOpsRenderPass::StencilLoadAndStoreInfo\20const&\2c\20skia_private::TArray\20const&\2c\20GrXferBarrierFlags\29 +11436:GrGLGpu::onDumpJSON\28SkJSONWriter*\29\20const +11437:GrGLGpu::onCreateTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +11438:GrGLGpu::onCreateCompressedTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20void\20const*\2c\20unsigned\20long\29 +11439:GrGLGpu::onCreateCompressedBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\29 +11440:GrGLGpu::onCreateBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +11441:GrGLGpu::onCreateBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +11442:GrGLGpu::onCopySurface\28GrSurface*\2c\20SkIRect\20const&\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +11443:GrGLGpu::onClearBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20std::__2::array\29 +11444:GrGLGpu::makeStencilAttachment\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\29 +11445:GrGLGpu::makeSemaphore\28bool\29 +11446:GrGLGpu::makeMSAAAttachment\28SkISize\2c\20GrBackendFormat\20const&\2c\20int\2c\20skgpu::Protected\2c\20GrMemoryless\29 +11447:GrGLGpu::insertSemaphore\28GrSemaphore*\29 +11448:GrGLGpu::insertFence\28\29 +11449:GrGLGpu::getPreferredStencilFormat\28GrBackendFormat\20const&\29 +11450:GrGLGpu::finishOutstandingGpuWork\28\29 +11451:GrGLGpu::disconnect\28GrGpu::DisconnectType\29 +11452:GrGLGpu::deleteFence\28unsigned\20long\20long\29 +11453:GrGLGpu::deleteBackendTexture\28GrBackendTexture\20const&\29 +11454:GrGLGpu::compile\28GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\29 +11455:GrGLGpu::checkFinishProcs\28\29 +11456:GrGLGpu::addFinishedProc\28void\20\28*\29\28void*\29\2c\20void*\29 +11457:GrGLGpu::ProgramCache::~ProgramCache\28\29.1 +11458:GrGLGpu::ProgramCache::~ProgramCache\28\29 +11459:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20unsigned\20int\2c\20float\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\29 +11460:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\29 +11461:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\2c\20float\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20float\2c\20float\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20float\2c\20float\2c\20float\2c\20float\29 +11462:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\29\29::'lambda'\28void\20const*\2c\20float\29::__invoke\28void\20const*\2c\20float\29 +11463:GrGLFunction::GrGLFunction\28void\20\28*\29\28__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29\29::'lambda'\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29::__invoke\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29 +11464:GrGLFunction::GrGLFunction\28void\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11465:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29\29::'lambda'\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29::__invoke\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29 +11466:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11467:GrGLCaps::~GrGLCaps\28\29.1 +11468:GrGLCaps::surfaceSupportsReadPixels\28GrSurface\20const*\29\20const +11469:GrGLCaps::supportedWritePixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11470:GrGLCaps::onSurfaceSupportsWritePixels\28GrSurface\20const*\29\20const +11471:GrGLCaps::onSupportsDynamicMSAA\28GrRenderTargetProxy\20const*\29\20const +11472:GrGLCaps::onSupportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11473:GrGLCaps::onIsWindowRectanglesSupportedForRT\28GrBackendRenderTarget\20const&\29\20const +11474:GrGLCaps::onGetReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11475:GrGLCaps::onGetDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\29\20const +11476:GrGLCaps::onGetDefaultBackendFormat\28GrColorType\29\20const +11477:GrGLCaps::onDumpJSON\28SkJSONWriter*\29\20const +11478:GrGLCaps::onCanCopySurface\28GrSurfaceProxy\20const*\2c\20SkIRect\20const&\2c\20GrSurfaceProxy\20const*\2c\20SkIRect\20const&\29\20const +11479:GrGLCaps::onAreColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +11480:GrGLCaps::onApplyOptionsOverrides\28GrContextOptions\20const&\29 +11481:GrGLCaps::maxRenderTargetSampleCount\28GrBackendFormat\20const&\29\20const +11482:GrGLCaps::makeDesc\28GrRenderTarget*\2c\20GrProgramInfo\20const&\2c\20GrCaps::ProgramDescOverrideFlags\29\20const +11483:GrGLCaps::isFormatTexturable\28GrBackendFormat\20const&\2c\20GrTextureType\29\20const +11484:GrGLCaps::isFormatSRGB\28GrBackendFormat\20const&\29\20const +11485:GrGLCaps::isFormatRenderable\28GrBackendFormat\20const&\2c\20int\29\20const +11486:GrGLCaps::isFormatCopyable\28GrBackendFormat\20const&\29\20const +11487:GrGLCaps::isFormatAsColorTypeRenderable\28GrColorType\2c\20GrBackendFormat\20const&\2c\20int\29\20const +11488:GrGLCaps::getWriteSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11489:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrBackendFormat\20const&\29\20const +11490:GrGLCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11491:GrGLCaps::getBackendFormatFromCompressionType\28SkTextureCompressionType\29\20const +11492:GrGLCaps::computeFormatKey\28GrBackendFormat\20const&\29\20const +11493:GrGLBuffer::~GrGLBuffer\28\29.1 +11494:GrGLBuffer::~GrGLBuffer\28\29 +11495:GrGLBuffer::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11496:GrGLBuffer::onUpdateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +11497:GrGLBuffer::onUnmap\28GrGpuBuffer::MapType\29 +11498:GrGLBuffer::onSetLabel\28\29 +11499:GrGLBuffer::onRelease\28\29 +11500:GrGLBuffer::onMap\28GrGpuBuffer::MapType\29 +11501:GrGLBuffer::onClearToZero\28\29 +11502:GrGLBuffer::onAbandon\28\29 +11503:GrGLBackendTextureData::~GrGLBackendTextureData\28\29.1 +11504:GrGLBackendTextureData::~GrGLBackendTextureData\28\29 +11505:GrGLBackendTextureData::isSameTexture\28GrBackendTextureData\20const*\29\20const +11506:GrGLBackendTextureData::isProtected\28\29\20const +11507:GrGLBackendTextureData::getBackendFormat\28\29\20const +11508:GrGLBackendTextureData::equal\28GrBackendTextureData\20const*\29\20const +11509:GrGLBackendTextureData::copyTo\28SkAnySubclass&\29\20const +11510:GrGLBackendRenderTargetData::isProtected\28\29\20const +11511:GrGLBackendRenderTargetData::getBackendFormat\28\29\20const +11512:GrGLBackendRenderTargetData::equal\28GrBackendRenderTargetData\20const*\29\20const +11513:GrGLBackendRenderTargetData::copyTo\28SkAnySubclass&\29\20const +11514:GrGLBackendFormatData::toString\28\29\20const +11515:GrGLBackendFormatData::stencilBits\28\29\20const +11516:GrGLBackendFormatData::equal\28GrBackendFormatData\20const*\29\20const +11517:GrGLBackendFormatData::desc\28\29\20const +11518:GrGLBackendFormatData::copyTo\28SkAnySubclass&\29\20const +11519:GrGLBackendFormatData::compressionType\28\29\20const +11520:GrGLBackendFormatData::channelMask\28\29\20const +11521:GrGLBackendFormatData::bytesPerBlock\28\29\20const +11522:GrGLAttachment::~GrGLAttachment\28\29 +11523:GrGLAttachment::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11524:GrGLAttachment::onSetLabel\28\29 +11525:GrGLAttachment::onRelease\28\29 +11526:GrGLAttachment::onAbandon\28\29 +11527:GrGLAttachment::backendFormat\28\29\20const +11528:GrFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11529:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11530:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +11531:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11532:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11533:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::name\28\29\20const +11534:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11535:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::clone\28\29\20const +11536:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11537:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const +11538:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::name\28\29\20const +11539:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::clone\28\29\20const +11540:GrFragmentProcessor::ProgramImpl::~ProgramImpl\28\29 +11541:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11542:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const +11543:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::name\28\29\20const +11544:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::clone\28\29\20const +11545:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11546:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const +11547:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::name\28\29\20const +11548:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11549:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::clone\28\29\20const +11550:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11551:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const +11552:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::name\28\29\20const +11553:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11554:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +11555:GrFixedClip::~GrFixedClip\28\29.1 +11556:GrFixedClip::~GrFixedClip\28\29 +11557:GrExternalTextureGenerator::onGenerateTexture\28GrRecordingContext*\2c\20SkImageInfo\20const&\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +11558:GrEagerDynamicVertexAllocator::lock\28unsigned\20long\2c\20int\29 +11559:GrDynamicAtlas::~GrDynamicAtlas\28\29.1 +11560:GrDynamicAtlas::~GrDynamicAtlas\28\29 +11561:GrDrawOp::usesStencil\28\29\20const +11562:GrDrawOp::usesMSAA\28\29\20const +11563:GrDrawOp::fixedFunctionFlags\28\29\20const +11564:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29.1 +11565:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29 +11566:GrDistanceFieldPathGeoProc::onTextureSampler\28int\29\20const +11567:GrDistanceFieldPathGeoProc::name\28\29\20const +11568:GrDistanceFieldPathGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11569:GrDistanceFieldPathGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11570:GrDistanceFieldPathGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11571:GrDistanceFieldPathGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11572:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29.1 +11573:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29 +11574:GrDistanceFieldLCDTextGeoProc::name\28\29\20const +11575:GrDistanceFieldLCDTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11576:GrDistanceFieldLCDTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11577:GrDistanceFieldLCDTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11578:GrDistanceFieldLCDTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11579:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +11580:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +11581:GrDistanceFieldA8TextGeoProc::name\28\29\20const +11582:GrDistanceFieldA8TextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11583:GrDistanceFieldA8TextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11584:GrDistanceFieldA8TextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11585:GrDistanceFieldA8TextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11586:GrDisableColorXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11587:GrDisableColorXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11588:GrDirectContext::~GrDirectContext\28\29.1 +11589:GrDirectContext::releaseResourcesAndAbandonContext\28\29 +11590:GrDirectContext::init\28\29 +11591:GrDirectContext::abandoned\28\29 +11592:GrDirectContext::abandonContext\28\29 +11593:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29.1 +11594:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29 +11595:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29.1 +11596:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29 +11597:GrCpuVertexAllocator::unlock\28int\29 +11598:GrCpuVertexAllocator::lock\28unsigned\20long\2c\20int\29 +11599:GrCpuBuffer::unref\28\29\20const +11600:GrCoverageSetOpXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11601:GrCoverageSetOpXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11602:GrCopyRenderTask::~GrCopyRenderTask\28\29.1 +11603:GrCopyRenderTask::onMakeSkippable\28\29 +11604:GrCopyRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11605:GrCopyRenderTask::onExecute\28GrOpFlushState*\29 +11606:GrCopyRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11607:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11608:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11609:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const +11610:GrConvexPolyEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11611:GrConvexPolyEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11612:GrConvexPolyEffect::name\28\29\20const +11613:GrConvexPolyEffect::clone\28\29\20const +11614:GrContext_Base::~GrContext_Base\28\29.1 +11615:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29.1 +11616:GrContextThreadSafeProxy::isValidCharacterizationForVulkan\28sk_sp\2c\20bool\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20bool\2c\20bool\29 +11617:GrConicEffect::name\28\29\20const +11618:GrConicEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11619:GrConicEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11620:GrConicEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11621:GrConicEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11622:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +11623:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +11624:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11625:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11626:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const +11627:GrColorSpaceXformEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11628:GrColorSpaceXformEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11629:GrColorSpaceXformEffect::name\28\29\20const +11630:GrColorSpaceXformEffect::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11631:GrColorSpaceXformEffect::clone\28\29\20const +11632:GrCaps::~GrCaps\28\29 +11633:GrCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11634:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29.1 +11635:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29 +11636:GrBitmapTextGeoProc::onTextureSampler\28int\29\20const +11637:GrBitmapTextGeoProc::name\28\29\20const +11638:GrBitmapTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11639:GrBitmapTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11640:GrBitmapTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11641:GrBitmapTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11642:GrBicubicEffect::onMakeProgramImpl\28\29\20const +11643:GrBicubicEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11644:GrBicubicEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11645:GrBicubicEffect::name\28\29\20const +11646:GrBicubicEffect::clone\28\29\20const +11647:GrBicubicEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11648:GrBicubicEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11649:GrAttachment::onGpuMemorySize\28\29\20const +11650:GrAttachment::getResourceType\28\29\20const +11651:GrAttachment::computeScratchKey\28skgpu::ScratchKey*\29\20const +11652:GrAtlasManager::~GrAtlasManager\28\29.1 +11653:GrAtlasManager::preFlush\28GrOnFlushResourceProvider*\29 +11654:GrAtlasManager::postFlush\28skgpu::AtlasToken\29 +11655:GrAATriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +11656:GetRectsForRange\28skia::textlayout::Paragraph&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +11657:GetRectsForPlaceholders\28skia::textlayout::Paragraph&\29 +11658:GetLineMetrics\28skia::textlayout::Paragraph&\29 +11659:GetLineMetricsAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +11660:GetGlyphInfoAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +11661:GetCoeffsFast +11662:GetCoeffsAlt +11663:GetClosestGlyphInfoAtCoordinate\28skia::textlayout::Paragraph&\2c\20float\2c\20float\29 +11664:FontMgrRunIterator::~FontMgrRunIterator\28\29.1 +11665:FontMgrRunIterator::~FontMgrRunIterator\28\29 +11666:FontMgrRunIterator::currentFont\28\29\20const +11667:FontMgrRunIterator::consume\28\29 +11668:ExtractGreen_C +11669:ExtractAlpha_C +11670:ExtractAlphaRows +11671:ExternalWebGLTexture::~ExternalWebGLTexture\28\29.1 +11672:ExternalWebGLTexture::~ExternalWebGLTexture\28\29 +11673:ExternalWebGLTexture::getBackendTexture\28\29 +11674:ExternalWebGLTexture::dispose\28\29 +11675:ExportAlphaRGBA4444 +11676:ExportAlpha +11677:Equals\28SkPath\20const&\2c\20SkPath\20const&\29 +11678:EmitYUV +11679:EmitSampledRGB +11680:EmitRescaledYUV +11681:EmitRescaledRGB +11682:EmitRescaledAlphaYUV +11683:EmitRescaledAlphaRGB +11684:EmitFancyRGB +11685:EmitAlphaYUV +11686:EmitAlphaRGBA4444 +11687:EmitAlphaRGB +11688:EllipticalRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11689:EllipticalRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11690:EllipticalRRectOp::name\28\29\20const +11691:EllipticalRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11692:EllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11693:EllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11694:EllipseOp::name\28\29\20const +11695:EllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11696:EllipseGeometryProcessor::name\28\29\20const +11697:EllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11698:EllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11699:EllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11700:Dual_Project +11701:DitherCombine8x8_C +11702:DispatchAlpha_C +11703:DispatchAlphaToGreen_C +11704:DisableColorXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11705:DisableColorXP::name\28\29\20const +11706:DisableColorXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11707:DisableColorXP::makeProgramImpl\28\29\20const +11708:Direct_Move_Y +11709:Direct_Move_X +11710:Direct_Move_Orig_Y +11711:Direct_Move_Orig_X +11712:Direct_Move_Orig +11713:Direct_Move +11714:DefaultGeoProc::name\28\29\20const +11715:DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11716:DefaultGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11717:DefaultGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11718:DefaultGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11719:DataFontLoader::loadSystemFonts\28SkTypeface_FreeType::Scanner\20const&\2c\20skia_private::TArray\2c\20true>*\29\20const +11720:DataCacheElement_deleter\28void*\29 +11721:DIEllipseOp::~DIEllipseOp\28\29.1 +11722:DIEllipseOp::~DIEllipseOp\28\29 +11723:DIEllipseOp::visitProxies\28std::__2::function\20const&\29\20const +11724:DIEllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11725:DIEllipseOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11726:DIEllipseOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11727:DIEllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11728:DIEllipseOp::name\28\29\20const +11729:DIEllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11730:DIEllipseGeometryProcessor::name\28\29\20const +11731:DIEllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11732:DIEllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11733:DIEllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11734:DC8uv_C +11735:DC8uvNoTop_C +11736:DC8uvNoTopLeft_C +11737:DC8uvNoLeft_C +11738:DC4_C +11739:DC16_C +11740:DC16NoTop_C +11741:DC16NoTopLeft_C +11742:DC16NoLeft_C +11743:CustomXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11744:CustomXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11745:CustomXP::xferBarrierType\28GrCaps\20const&\29\20const +11746:CustomXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11747:CustomXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11748:CustomXP::name\28\29\20const +11749:CustomXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11750:CustomXP::makeProgramImpl\28\29\20const +11751:CustomTeardown +11752:CustomSetup +11753:CustomPut +11754:Current_Ppem_Stretched +11755:Current_Ppem +11756:Cr_z_zcfree +11757:Cr_z_zcalloc +11758:CoverageSetOpXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11759:CoverageSetOpXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11760:CoverageSetOpXP::name\28\29\20const +11761:CoverageSetOpXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11762:CoverageSetOpXP::makeProgramImpl\28\29\20const +11763:CopyPath\28SkPath\20const&\29 +11764:ConvertRGB24ToY_C +11765:ConvertBGR24ToY_C +11766:ConvertARGBToY_C +11767:ColorTableEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11768:ColorTableEffect::onMakeProgramImpl\28\29\20const +11769:ColorTableEffect::name\28\29\20const +11770:ColorTableEffect::clone\28\29\20const +11771:CircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +11772:CircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11773:CircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11774:CircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11775:CircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11776:CircularRRectOp::name\28\29\20const +11777:CircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11778:CircleOp::~CircleOp\28\29.1 +11779:CircleOp::~CircleOp\28\29 +11780:CircleOp::visitProxies\28std::__2::function\20const&\29\20const +11781:CircleOp::programInfo\28\29 +11782:CircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11783:CircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11784:CircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11785:CircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11786:CircleOp::name\28\29\20const +11787:CircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11788:CircleGeometryProcessor::name\28\29\20const +11789:CircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11790:CircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11791:CircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11792:CanInterpolate\28SkPath\20const&\2c\20SkPath\20const&\29 +11793:ButtCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +11794:ButtCapDashedCircleOp::visitProxies\28std::__2::function\20const&\29\20const +11795:ButtCapDashedCircleOp::programInfo\28\29 +11796:ButtCapDashedCircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11797:ButtCapDashedCircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11798:ButtCapDashedCircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11799:ButtCapDashedCircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11800:ButtCapDashedCircleOp::name\28\29\20const +11801:ButtCapDashedCircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11802:ButtCapDashedCircleGeometryProcessor::name\28\29\20const +11803:ButtCapDashedCircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11804:ButtCapDashedCircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11805:ButtCapDashedCircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11806:BluntJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11807:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11808:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11809:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +11810:BlendFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11811:BlendFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11812:BlendFragmentProcessor::name\28\29\20const +11813:BlendFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11814:BlendFragmentProcessor::clone\28\29\20const +11815:AutoCleanPng::infoCallback\28unsigned\20long\29 +11816:AutoCleanPng::decodeBounds\28\29 +11817:ApplyTrim\28SkPath&\2c\20float\2c\20float\2c\20bool\29 +11818:ApplyTransform\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11819:ApplyStroke\28SkPath&\2c\20StrokeOpts\29 +11820:ApplySimplify\28SkPath&\29 +11821:ApplyRewind\28SkPath&\29 +11822:ApplyReset\28SkPath&\29 +11823:ApplyRQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +11824:ApplyRMoveTo\28SkPath&\2c\20float\2c\20float\29 +11825:ApplyRLineTo\28SkPath&\2c\20float\2c\20float\29 +11826:ApplyRCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11827:ApplyRConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11828:ApplyRArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +11829:ApplyQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +11830:ApplyPathOp\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29 +11831:ApplyMoveTo\28SkPath&\2c\20float\2c\20float\29 +11832:ApplyLineTo\28SkPath&\2c\20float\2c\20float\29 +11833:ApplyDash\28SkPath&\2c\20float\2c\20float\2c\20float\29 +11834:ApplyCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11835:ApplyConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11836:ApplyClose\28SkPath&\29 +11837:ApplyArcToTangent\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11838:ApplyArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +11839:ApplyAlphaMultiply_C +11840:ApplyAlphaMultiply_16b_C +11841:ApplyAddPath\28SkPath&\2c\20SkPath\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +11842:AlphaReplace_C +11843:$_3::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +11844:$_2::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 +11845:$_1::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +11846:$_0::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 diff --git a/canvaskit/canvaskit.wasm b/canvaskit/canvaskit.wasm new file mode 100644 index 000000000..0774c17c0 Binary files /dev/null and b/canvaskit/canvaskit.wasm differ diff --git a/canvaskit/chromium/canvaskit.js b/canvaskit/chromium/canvaskit.js new file mode 100644 index 000000000..e82c5850d --- /dev/null +++ b/canvaskit/chromium/canvaskit.js @@ -0,0 +1,217 @@ + +var CanvasKitInit = (() => { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(moduleArg = {}) { + +var r=moduleArg,aa,ba;r.ready=new Promise((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.he=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.he=null,e.Pe=b,e.Me=c,e.Ne=f,e.se=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.he){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.se,this.Ne);c=new ImageData(c,this.Pe,this.Me);b?this.he.getContext("2d").putImageData(c, +0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.he.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.se&&a._free(this.se);this.delete()};a.Ed=a.Ed||function(){};a.ie=a.ie||function(){return null}})})(r); +(function(a){a.Hd=a.Hd||[];a.Hd.push(function(){function b(m,q,w){return m&&m.hasOwnProperty(q)?m[q]:w}function c(m){var q=da(ea);ea[q]=m;return q}function e(m){return m.naturalHeight||m.videoHeight||m.displayHeight||m.height}function f(m){return m.naturalWidth||m.videoWidth||m.displayWidth||m.width}function k(m,q,w,y){m.bindTexture(m.TEXTURE_2D,q);y||w.alphaType!==a.AlphaType.Premul||m.pixelStorei(m.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return q}function l(m,q,w){w||q.alphaType!==a.AlphaType.Premul|| +m.pixelStorei(m.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);m.bindTexture(m.TEXTURE_2D,null)}a.GetWebGLContext=function(m,q){if(!m)throw"null canvas passed into makeWebGLContext";var w={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)};w.majorVersion=q&&q.majorVersion?q.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(w.explicitSwapControl)throw"explicitSwapControl is not supported";m=fa(m,w);if(!m)return 0;ha(m);x.Pd.getExtension("WEBGL_debug_renderer_info");return m};a.deleteContext=function(m){x===ia[m]&&(x=null);"object"==typeof JSEvents&& +JSEvents.tf(ia[m].Pd.canvas);ia[m]&&ia[m].Pd.canvas&&(ia[m].Pd.canvas.Ke=void 0);ia[m]=null};a._setTextureCleanup({deleteTexture:function(m,q){var w=ea[q];w&&ia[m].Pd.deleteTexture(w);ea[q]=null}});a.MakeWebGLContext=function(m){if(!this.Ed(m))return null;var q=this._MakeGrContext();if(!q)return null;q.Dd=m;var w=q.delete.bind(q);q["delete"]=function(){a.Ed(this.Dd);w()}.bind(q);return x.ue=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(m){a.Ed(this.Dd);this._setResourceCacheLimitBytes(m)};a.MakeOnScreenGLSurface=function(m,q,w,y,B,D){if(!this.Ed(m.Dd))return null;q=void 0===B||void 0===D? +this._MakeOnScreenGLSurface(m,q,w,y):this._MakeOnScreenGLSurface(m,q,w,y,B,D);if(!q)return null;q.Dd=m.Dd;return q};a.MakeRenderTarget=function(){var m=arguments[0];if(!this.Ed(m.Dd))return null;if(3===arguments.length){var q=this._MakeRenderTargetWH(m,arguments[1],arguments[2]);if(!q)return null}else if(2===arguments.length){if(q=this._MakeRenderTargetII(m,arguments[1]),!q)return null}else return null;q.Dd=m.Dd;return q};a.MakeWebGLCanvasSurface=function(m,q,w){q=q||null;var y=m,B="undefined"!== +typeof OffscreenCanvas&&y instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&y instanceof HTMLCanvasElement||B||(y=document.getElementById(m),y)))throw"Canvas with id "+m+" was not found";m=this.GetWebGLContext(y,w);if(!m||0>m)throw"failed to create webgl context: err "+m;m=this.MakeWebGLContext(m);q=this.MakeOnScreenGLSurface(m,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(m,q){a.Ed(this.Dd);m=c(m);if(q=this._makeImageFromTexture(this.Dd,m,q))q.ce=m;return q};a.Surface.prototype.makeImageFromTextureSource=function(m,q,w){q||(q={height:e(m),width:f(m),colorType:a.ColorType.RGBA_8888,alphaType:w?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);a.Ed(this.Dd);var y=x.Pd;w=k(y,y.createTexture(),q,w);2===x.version?y.texImage2D(y.TEXTURE_2D,0,y.RGBA,q.width,q.height, +0,y.RGBA,y.UNSIGNED_BYTE,m):y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,m);l(y,q);this._resetContext();return this.makeImageFromTexture(w,q)};a.Surface.prototype.updateTextureFromSource=function(m,q,w){if(m.ce){a.Ed(this.Dd);var y=m.getImageInfo(),B=x.Pd,D=k(B,ea[m.ce],y,w);2===x.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);l(B,y,w);this._resetContext();ea[m.ce]=null;m.ce=c(D);y.colorSpace= +m.getColorSpace();q=this._makeImageFromTexture(this.Dd,m.ce,y);w=m.jd.Fd;B=m.jd.Kd;m.jd.Fd=q.jd.Fd;m.jd.Kd=q.jd.Kd;q.jd.Fd=w;q.jd.Kd=B;q.delete();y.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(m,q,w){q||(q={height:e(m),width:f(m),colorType:a.ColorType.RGBA_8888,alphaType:w?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);var y={makeTexture:function(){var B=x,D=B.Pd,u=k(D,D.createTexture(),q,w);2===B.version?D.texImage2D(D.TEXTURE_2D,0,D.RGBA, +q.width,q.height,0,D.RGBA,D.UNSIGNED_BYTE,m):D.texImage2D(D.TEXTURE_2D,0,D.RGBA,D.RGBA,D.UNSIGNED_BYTE,m);l(D,q,w);return c(u)},freeSrc:function(){}};"VideoFrame"===m.constructor.name&&(y.freeSrc=function(){m.close()});return a.Image._makeFromGenerator(q,y)};a.Ed=function(m){return m?ha(m):!1};a.ie=function(){return x&&x.ue&&!x.ue.isDeleted()?x.ue: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[v][z],n++;g=h}else g=M;d.Md=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function q(g){if(!g)return M;var d=T.toTypedArray();if(g.length){if(6===g.length||9===g.length)return l(g,"HEAPF32",H),6===g.length&&a.HEAPF32.set(fd,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 w(g){if(!g)return M;var d=Y.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return l(g,"HEAPF32",ca);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 ca}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 ca}function y(g,d){return l(g,"HEAPF32",d||va)}function B(g,d,h,n){var t=Ma.toTypedArray();t[0]=g;t[1]=d;t[2]=h;t[3]=n;return va}function D(g){for(var d=new Float32Array(4),h=0;4>h;h++)d[h]=a.HEAPF32[g/4+h];return d}function u(g,d){return l(g,"HEAPF32",d||X)}function F(g,d){return l(g, +"HEAPF32",d||Eb)}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,Xd:null,subarray:function(n,t){n=this.toTypedArray().subarray(n,t);n._ck=!0;return n},toTypedArray:function(){if(this.Xd&& +this.Xd.length)return this.Xd;this.Xd=new g(a.HEAPU8.buffer,h,d);this.Xd._ck=!0;return this.Xd}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=M;g.toTypedArray=null;g.Xd=null};var H=M,T,ca=M,Y,va=M,Ma,na,X=M,fc,Ba=M,gc,Fb=M,hc,Gb=M,hb,Sa=M,ic,Eb=M,jc,kc=M,fd=Float32Array.of(0,0,1),M=0;a.onRuntimeInitialized=function(){function g(d,h,n,t,v,z,E){z||(z=4*t.width,t.colorType===a.ColorType.RGBA_F16?z*=2:t.colorType===a.ColorType.RGBA_F32&&(z*=4));var J=z*t.height;var I=v?v.byteOffset:a._malloc(J); +if(E?!d._readPixels(t,I,z,h,n,E):!d._readPixels(t,I,z,h,n))return v||a._free(I),null;if(v)return v.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:d=(new Uint8Array(a.HEAPU8.buffer,I,J)).slice();break;case a.ColorType.RGBA_F32:d=(new Float32Array(a.HEAPU8.buffer,I,J)).slice();break;default:return null}a._free(I);return d}Ma=a.Malloc(Float32Array,4);va=Ma.byteOffset;Y=a.Malloc(Float32Array,16);ca=Y.byteOffset;T=a.Malloc(Float32Array,9);H=T.byteOffset;ic=a.Malloc(Float32Array, +12);Eb=ic.byteOffset;jc=a.Malloc(Float32Array,12);kc=jc.byteOffset;na=a.Malloc(Float32Array,4);X=na.byteOffset;fc=a.Malloc(Float32Array,4);Ba=fc.byteOffset;gc=a.Malloc(Float32Array,3);Fb=gc.byteOffset;hc=a.Malloc(Float32Array,3);Gb=hc.byteOffset;hb=a.Malloc(Int32Array,4);Sa=hb.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=l(d,"HEAPF32"),n=a.Path._MakeFromCmds(h,d.length);k(h,d);return n};a.Path.MakeFromVerbsPointsWeights=function(d,h,n){var t=l(d,"HEAPU8"),v=l(h,"HEAPF32"),z=l(n,"HEAPF32"),E=a.Path._MakeFromVerbsPointsWeights(t,d.length,v,h.length,z,n&&n.length||0);k(t,d);k(v,h);k(z,n);return E};a.Path.prototype.addArc=function(d,h,n){d=u(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=u(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=l(d,"HEAPF32");this._addPoly(n,d.length/2,h);k(n,d);return this};a.Path.prototype.addRect=function(d,h){d=u(d);this._addRect(d,!!h);return this};a.Path.prototype.addRRect=function(d,h){d=F(d);this._addRRect(d,!!h);return this};a.Path.prototype.addVerbsPointsWeights=function(d,h,n){var t=l(d,"HEAPU8"),v=l(h,"HEAPF32"),z=l(n,"HEAPF32");this._addVerbsPointsWeights(t,d.length,v,h.length,z,n&&n.length||0);k(t,d);k(v,h);k(z,n)};a.Path.prototype.arc=function(d,h,n,t,v,z){d=a.LTRBRect(d- +n,h-n,d+n,h+n);v=(v-t)/Math.PI*180-360*!!z;z=new a.Path;z.addArc(d,t/Math.PI*180,v);this.addPath(z,!0);z.delete();return this};a.Path.prototype.arcToOval=function(d,h,n,t){d=u(d);this._arcToOval(d,h,n,t);return this};a.Path.prototype.arcToRotated=function(d,h,n,t,v,z,E){this._arcToRotated(d,h,n,!!t,!!v,z,E);return this};a.Path.prototype.arcToTangent=function(d,h,n,t,v){this._arcToTangent(d,h,n,t,v);return this};a.Path.prototype.close=function(){this._close();return this};a.Path.prototype.conicTo= +function(d,h,n,t,v){this._conicTo(d,h,n,t,v);return this};a.Path.prototype.computeTightBounds=function(d){this._computeTightBounds(X);var h=na.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.cubicTo=function(d,h,n,t,v,z){this._cubicTo(d,h,n,t,v,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(X);var h=na.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,v,z,E){this._rArcTo(d,h,n,t,v,z,E);return this};a.Path.prototype.rConicTo=function(d,h,n,t,v){this._rConicTo(d,h,n,t,v);return this};a.Path.prototype.rCubicTo=function(d,h,n,t,v,z){this._rCubicTo(d, +h,n,t,v,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.ie();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,v){v=q(v);return this._makeShaderCubic(d,h,n,t,v)};a.Image.prototype.makeShaderOptions=function(d,h,n,t,v){v=q(v);return this._makeShaderOptions(d,h,n,t,v)};a.Image.prototype.readPixels=function(d,h,n,t,v){var z=a.ie();return g(this,d,h,n,t,v,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=F(d);this._clipRRect(d, +h,n)};a.Canvas.prototype.clipRect=function(d,h,n){a.Ed(this.Dd);d=u(d);this._clipRect(d,h,n)};a.Canvas.prototype.concat=function(d){a.Ed(this.Dd);d=w(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,n,t,v){a.Ed(this.Dd);d=u(d);this._drawArc(d,h,n,t,v)};a.Canvas.prototype.drawAtlas=function(d,h,n,t,v,z,E){if(d&&t&&h&&n&&h.length===n.length){a.Ed(this.Dd);v||(v=a.BlendMode.SrcOver);var J=l(h,"HEAPF32"),I=l(n,"HEAPF32"),U=n.length/4,V=l(c(z),"HEAPU32");if(E&&"B"in E&&"C"in E)this._drawAtlasCubic(d, +I,J,V,U,v,E.B,E.C,t);else{let p=a.FilterMode.Linear,A=a.MipmapMode.None;E&&(p=E.filter,"mipmap"in E&&(A=E.mipmap));this._drawAtlasOptions(d,I,J,V,U,v,p,A,t)}k(J,h);k(I,n);k(V,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,v){a.Ed(this.Dd);d=B(d,h,n,t);void 0!==v?this._drawColor(d,v):this._drawColor(d)};a.Canvas.prototype.drawDRRect=function(d,h,n){a.Ed(this.Dd);d=F(d,Eb);h=F(h,kc);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,v,z){a.Ed(this.Dd);this._drawImageCubic(d,h,n,t,v,z||null)};a.Canvas.prototype.drawImageOptions=function(d,h,n,t,v,z){a.Ed(this.Dd);this._drawImageOptions(d, +h,n,t,v,z||null)};a.Canvas.prototype.drawImageNine=function(d,h,n,t,v){a.Ed(this.Dd);h=l(h,"HEAP32",Sa);n=u(n);this._drawImageNine(d,h,n,t,v||null)};a.Canvas.prototype.drawImageRect=function(d,h,n,t,v){a.Ed(this.Dd);u(h,X);u(n,Ba);this._drawImageRect(d,X,Ba,t,!!v)};a.Canvas.prototype.drawImageRectCubic=function(d,h,n,t,v,z){a.Ed(this.Dd);u(h,X);u(n,Ba);this._drawImageRectCubic(d,X,Ba,t,v,z||null)};a.Canvas.prototype.drawImageRectOptions=function(d,h,n,t,v,z){a.Ed(this.Dd);u(h,X);u(n,Ba);this._drawImageRectOptions(d, +X,Ba,t,v,z||null)};a.Canvas.prototype.drawLine=function(d,h,n,t,v){a.Ed(this.Dd);this._drawLine(d,h,n,t,v)};a.Canvas.prototype.drawOval=function(d,h){a.Ed(this.Dd);d=u(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,v){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=l(d,"HEAPF32"),E=h?l(c(h),"HEAPU32"):M,J=n?l(n,"HEAPF32"):M;t||(t=a.BlendMode.Modulate);this._drawPatch(z,E,J,t,v);k(J,n);k(E,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=l(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=F(d); +this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.Ed(this.Dd);d=u(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=function(d,h,n,t,v){a.Ed(this.Dd);this._drawRect4f(d,h,n,t,v)};a.Canvas.prototype.drawShadow=function(d,h,n,t,v,z,E){a.Ed(this.Dd);var J=l(v,"HEAPF32"),I=l(z,"HEAPF32");h=l(h,"HEAPF32",Fb);n=l(n,"HEAPF32",Gb);this._drawShadow(d,h,n,t,J,I,E);k(J,v);k(I,z)};a.getShadowLocalBounds=function(d,h,n,t,v,z,E){d=q(d);n=l(n,"HEAPF32",Fb);t=l(t,"HEAPF32",Gb);if(!this._getShadowLocalBounds(d, +h,n,t,v,z,X))return null;h=na.toTypedArray();return E?(E.set(h),E):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(Sa);var h=hb.toTypedArray();d?d.set(h):d=h.slice();return d};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(ca);for(var d=ca,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,v){a.Ed(this.Dd);return g(this,d,h,n,t,v)};a.Canvas.prototype.saveLayer=function(d,h,n,t){h=u(h);return this._saveLayer(d||null,h,n||null,t||0)};a.Canvas.prototype.writePixels=function(d,h,n,t,v, +z,E,J){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;E=E||a.ColorType.RGBA_8888;J=J||a.ColorSpace.SRGB;var U=I*h;I=l(d,"HEAPU8");h=this._writePixels({width:h,height:n,colorType:E,alphaType:z,colorSpace:J},I,U,t,v);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=l(d,"HEAPF32"),n=a.ColorFilter._makeMatrix(h);k(h,d);return n};a.ContourMeasure.prototype.getPosTan=function(d,h){this._getPosTan(d,X);d=na.toTypedArray();return h?(h.set(d),h):d.slice()};a.ImageFilter.prototype.getOutputBounds=function(d,h,n){d=u(d,X);h=q(h);this._getOutputBounds(d,h,Sa);h=hb.toTypedArray();return n?(n.set(h),n):h.slice()};a.ImageFilter.MakeDropShadow=function(d,h,n,t,v,z){v=y(v,va);return a.ImageFilter._MakeDropShadow(d,h,n,t,v,z)};a.ImageFilter.MakeDropShadowOnly=function(d, +h,n,t,v,z){v=y(v,va);return a.ImageFilter._MakeDropShadowOnly(d,h,n,t,v,z)};a.ImageFilter.MakeImage=function(d,h,n,t){n=u(n,X);t=u(t,Ba);if("B"in h&&"C"in h)return a.ImageFilter._MakeImageCubic(d,h.B,h.C,n,t);const v=h.filter;let z=a.MipmapMode.None;"mipmap"in h&&(z=h.mipmap);return a.ImageFilter._MakeImageOptions(d,v,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 v=a.MipmapMode.None; +"mipmap"in h&&(v=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(d,t,v,n)};a.Paint.prototype.getColor=function(){this._getColor(va);return D(va)};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,v){v=v||null;d=B(d,h,n,t);this._setColor(d,v)};a.Path.prototype.getPoint=function(d,h){this._getPoint(d,X);d=na.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,v){t=q(t);v=u(v);return this._makeShader(d,h,n,t,v)};a.Picture.prototype.cullRect=function(d){this._cullRect(X);var h=na.toTypedArray();return d?(d.set(h),d):h.slice()};a.PictureRecorder.prototype.beginRecording=function(d,h){d=u(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=l(d,"HEAP32",Sa);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.be||(this.be=this.getCanvas());return requestAnimationFrame(function(){a.Ed(this.Dd);d(this.be);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.be||(this.be=this.getCanvas());requestAnimationFrame(function(){a.Ed(this.Dd);d(this.be);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=l(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,v,z,E,J){J=J||null;var I=m(n),U=l(t,"HEAPF32");E=E||0;z=q(z);var V=na.toTypedArray();V.set(d);V.set(h,2);d=a.Shader._MakeLinearGradient(X,I.Md,I.colorType,U,I.count,v,E,z,J);k(I.Md,n);t&&k(U,t);return d};a.Shader.MakeRadialGradient=function(d,h,n,t,v,z,E,J){J=J||null;var I=m(n),U=l(t,"HEAPF32");E=E||0;z=q(z);d=a.Shader._MakeRadialGradient(d[0],d[1],h,I.Md,I.colorType,U,I.count,v,E, +z,J);k(I.Md,n);t&&k(U,t);return d};a.Shader.MakeSweepGradient=function(d,h,n,t,v,z,E,J,I,U){U=U||null;var V=m(n),p=l(t,"HEAPF32");E=E||0;J=J||0;I=I||360;z=q(z);d=a.Shader._MakeSweepGradient(d,h,V.Md,V.colorType,p,V.count,v,J,I,E,z,U);k(V.Md,n);t&&k(p,t);return d};a.Shader.MakeTwoPointConicalGradient=function(d,h,n,t,v,z,E,J,I,U){U=U||null;var V=m(v),p=l(z,"HEAPF32");I=I||0;J=q(J);var A=na.toTypedArray();A.set(d);A.set(n,2);d=a.Shader._MakeTwoPointConicalGradient(X,h,t,V.Md,V.colorType,p,V.count,E, +I,J,U);k(V.Md,v);z&&k(p,z);return d};a.Vertices.prototype.bounds=function(d){this._bounds(X);var h=na.toTypedArray();return d?(d.set(h),d):h.slice()};a.Hd&&a.Hd.forEach(function(d){d()})};a.computeTonalColors=function(g){var d=l(g.ambient,"HEAPF32"),h=l(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 Ta=null;a.MakeImageFromCanvasImageSource=function(g){var d=g.width,h=g.height;Ta||(Ta=document.createElement("canvas"));Ta.width=d;Ta.height=h;var n=Ta.getContext("2d",{willReadFrequently:!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,v){var z=t&&t.length||0,E=0;h&&h.length&&(E|=1);n&&n.length&&(E|=2);void 0===v||v||(E|=4);g=new a._VerticesBuilder(g,d.length/2,z,E);l(d,"HEAPF32",g.positions());g.texCoords()&&l(h,"HEAPF32",g.texCoords());g.colors()&&l(c(n),"HEAPU32",g.colors());g.indices()&&l(t,"HEAPU16",g.indices());return g.detach()};(function(g){g.Hd=g.Hd||[];g.Hd.push(function(){function d(p){p&&(p.dir=0===p.dir?g.TextDirection.RTL:g.TextDirection.LTR);return p}function h(p){if(!p||!p.length)return[]; +for(var A=[],O=0;Od)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=l(g,"HEAPU16"),v=l(d,"HEAPF32");return this._getGlyphIntercepts(t, +g.length,!(g&&g._ck),v,d.length,!(d&&d._ck),h,n)};a.Font.prototype.getGlyphWidths=function(g,d,h){var n=l(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 v=[];d=new a.ContourMeasureIter(d,!1,1);for(var z=d.next(),E=new Float32Array(4),J=0;Jz.length()){z.delete();z=d.next();if(!z){g=g.substring(0,J);break}n=I/2}z.getPosTan(n,E);var U=E[2],V=E[3];v.push(U,V,E[0]-I/2*U,E[1]-I/2*V);n+=I/2}g=this.MakeFromRSXform(g,v,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=l(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=l(g,"HEAPU16");d=l(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=l(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.MakeForBlender=function(g,d){return a.RuntimeEffect._MakeForBlender(g,{onError:d||function(h){console.log("RuntimeEffect error",h)}})};a.RuntimeEffect.prototype.makeShader=function(g,d){var h=!g._ck,n=l(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=l(g,"HEAPF32");h=q(h);for(var v=[],z=0;z{throw b;},pa="object"==typeof window,ra="function"==typeof importScripts,sa="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,ta="",ua,wa,xa; +if(sa){var fs=require("fs"),ya=require("path");ta=ra?ya.dirname(ta)+"/":__dirname+"/";ua=(a,b)=>{a=a.startsWith("file://")?new URL(a):ya.normalize(a);return fs.readFileSync(a,b?void 0:"utf8")};xa=a=>{a=ua(a,!0);a.buffer||(a=new Uint8Array(a));return a};wa=(a,b,c,e=!0)=>{a=a.startsWith("file://")?new URL(a):ya.normalize(a);fs.readFile(a,e?void 0:"utf8",(f,k)=>{f?c(f):b(e?k.buffer:k)})};!r.thisProgram&&1{process.exitCode= +a;throw b;};r.inspect=()=>"[Emscripten Module object]"}else if(pa||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="",ua=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},ra&&(xa=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 Aa=r.print||console.log.bind(console),Ca=r.printErr||console.error.bind(console);Object.assign(r,la);la=null;r.thisProgram&&(ma=r.thisProgram);r.quit&&(oa=r.quit);var Da;r.wasmBinary&&(Da=r.wasmBinary);var noExitRuntime=r.noExitRuntime||!0;"object"!=typeof WebAssembly&&Ea("no native wasm support detected"); +var Fa,G,Ga=!1,Ha,C,Ia,Ja,K,L,N,Ka;function La(){var a=Fa.buffer;r.HEAP8=Ha=new Int8Array(a);r.HEAP16=Ia=new Int16Array(a);r.HEAP32=K=new Int32Array(a);r.HEAPU8=C=new Uint8Array(a);r.HEAPU16=Ja=new Uint16Array(a);r.HEAPU32=L=new Uint32Array(a);r.HEAPF32=N=new Float32Array(a);r.HEAPF64=Ka=new Float64Array(a)}var Na,Oa=[],Pa=[],Qa=[];function Ra(){var a=r.preRun.shift();Oa.unshift(a)}var Ua=0,Va=null,Wa=null; +function Ea(a){if(r.onAbort)r.onAbort(a);a="Aborted("+a+")";Ca(a);Ga=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ba(a);throw a;}function Xa(a){return a.startsWith("data:application/octet-stream;base64,")}var Ya;Ya="canvaskit.wasm";if(!Xa(Ya)){var Za=Ya;Ya=r.locateFile?r.locateFile(Za,ta):ta+Za}function $a(a){if(a==Ya&&Da)return new Uint8Array(Da);if(xa)return xa(a);throw"both async and sync fetching of the wasm failed";} +function ab(a){if(!Da&&(pa||ra)){if("function"==typeof fetch&&!a.startsWith("file://"))return fetch(a,{credentials:"same-origin"}).then(b=>{if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(()=>$a(a));if(wa)return new Promise((b,c)=>{wa(a,e=>b(new Uint8Array(e)),c)})}return Promise.resolve().then(()=>$a(a))}function bb(a,b,c){return ab(a).then(e=>WebAssembly.instantiate(e,b)).then(e=>e).then(c,e=>{Ca("failed to asynchronously prepare wasm: "+e);Ea(e)})} +function cb(a,b){var c=Ya;return Da||"function"!=typeof WebAssembly.instantiateStreaming||Xa(c)||c.startsWith("file://")||sa||"function"!=typeof fetch?bb(c,a,b):fetch(c,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){Ca("wasm streaming compile failed: "+f);Ca("falling back to ArrayBuffer instantiation");return bb(c,a,b)}))}function db(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var eb=a=>{for(;0>2]=b};this.re=function(b){L[this.Fd+8>>2]=b};this.Ud=function(b,c){this.qe();this.Je(b);this.re(c)};this.qe=function(){L[this.Fd+16>>2]=0}} +var gb=0,ib=0,jb="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,kb=(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}, +lb={};function mb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function nb(a){return this.fromWireType(K[a>>2])}var ob={},pb={},qb={},rb=void 0;function sb(a){throw new rb(a);} +function tb(a,b,c){function e(m){m=c(m);m.length!==a.length&&sb("Mismatched type converter count");for(var q=0;q{pb.hasOwnProperty(m)?f[q]=pb[m]:(k.push(m),ob.hasOwnProperty(m)||(ob[m]=[]),ob[m].push(()=>{f[q]=pb[m];++l;l===k.length&&e(f)}))});0===k.length&&e(f)} +function vb(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 wb=void 0;function P(a){for(var b="";C[a];)b+=wb[C[a++]];return b}var xb=void 0;function Q(a){throw new xb(a);} +function yb(a,b,c={}){var e=b.name;a||Q(`type "${e}" must have a positive integer typeid pointer`);if(pb.hasOwnProperty(a)){if(c.af)return;Q(`Cannot register type '${e}' twice`)}pb[a]=b;delete qb[a];ob.hasOwnProperty(a)&&(b=ob[a],delete ob[a],b.forEach(f=>f()))}function ub(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");yb(a,b,c)}function zb(a){Q(a.jd.Id.Gd.name+" instance already deleted")}var Ab=!1;function Bb(){} +function Cb(a){--a.count.value;0===a.count.value&&(a.Kd?a.Od.Sd(a.Kd):a.Id.Gd.Sd(a.Fd))}function Db(a,b,c){if(b===c)return a;if(void 0===c.Ld)return null;a=Db(a,b,c.Ld);return null===a?null:c.Te(a)}var Jb={},Kb=[];function Lb(){for(;Kb.length;){var a=Kb.pop();a.jd.$d=!1;a["delete"]()}}var Mb=void 0,Nb={};function Ob(a,b){for(void 0===b&&Q("ptr should not be undefined");a.Ld;)b=a.fe(b),a=a.Ld;return Nb[b]} +function Pb(a,b){b.Id&&b.Fd||sb("makeClassHandle requires ptr and ptrType");!!b.Od!==!!b.Kd&&sb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Qb(Object.create(a,{jd:{value:b}}))}function Qb(a){if("undefined"===typeof FinalizationRegistry)return Qb=b=>b,a;Ab=new FinalizationRegistry(b=>{Cb(b.jd)});Qb=b=>{var c=b.jd;c.Kd&&Ab.register(b,{jd:c},b);return b};Bb=b=>{Ab.unregister(b)};return Qb(a)}function Rb(){} +function Sb(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 Tb(a,b){a=Sb(a);return{[a]:function(){return b.apply(this,arguments)}}[a]} +function Ub(a,b,c){if(void 0===a[b].Jd){var e=a[b];a[b]=function(){a[b].Jd.hasOwnProperty(arguments.length)||Q(`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.Yd]=e}} +function Vb(a,b,c){r.hasOwnProperty(a)?((void 0===c||void 0!==r[a].Jd&&void 0!==r[a].Jd[c])&&Q(`Cannot register public name '${a}' twice`),Ub(r,a,a),r.hasOwnProperty(c)&&Q(`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].sf=c))}function Wb(a,b,c,e,f,k,l,m){this.name=a;this.constructor=b;this.ae=c;this.Sd=e;this.Ld=f;this.We=k;this.fe=l;this.Te=m;this.ef=[]} +function Xb(a,b,c){for(;b!==c;)b.fe||Q(`Expected null or instance of ${c.name}, got an instance of ${b.name}`),a=b.fe(a),b=b.Ld;return a}function Yb(a,b){if(null===b)return this.ve&&Q(`null is not a valid ${this.name}`),0;b.jd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.jd.Fd||Q(`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.ve&&Q(`null is not a valid ${this.name}`);if(this.ke){var c=this.we();null!==a&&a.push(this.Sd,c);return c}return 0}b.jd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.jd.Fd||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);!this.je&&b.jd.Id.je&&Q(`Cannot convert argument of type ${b.jd.Od?b.jd.Od.name:b.jd.Id.name} to parameter type ${this.name}`);c=Xb(b.jd.Fd,b.jd.Id.Gd,this.Gd);if(this.ke)switch(void 0===b.jd.Kd&&Q("Passing raw pointer to smart pointer is illegal"), +this.kf){case 0:b.jd.Od===this?c=b.jd.Kd:Q(`Cannot convert argument of type ${b.jd.Od?b.jd.Od.name:b.jd.Id.name} to parameter type ${this.name}`);break;case 1:c=b.jd.Kd;break;case 2:if(b.jd.Od===this)c=b.jd.Kd;else{var e=b.clone();c=this.ff(c,ac(function(){e["delete"]()}));null!==a&&a.push(this.Sd,c)}break;default:Q("Unsupporting sharing policy")}return c} +function bc(a,b){if(null===b)return this.ve&&Q(`null is not a valid ${this.name}`),0;b.jd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.jd.Fd||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);b.jd.Id.je&&Q(`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,l,m,q,w,y){this.name=a;this.Gd=b;this.ve=c;this.je=e;this.ke=f;this.df=k;this.kf=l;this.Fe=m;this.we=q;this.ff=w;this.Sd=y;f||void 0!==b.Ld?this.toWireType=$b:(this.toWireType=e?Yb:bc,this.Nd=null)}function dc(a,b,c){r.hasOwnProperty(a)||sb("Replacing nonexistant public symbol");void 0!==r[a].Jd&&void 0!==c?r[a].Jd[c]=b:(r[a]=b,r[a].Yd=c)} +var 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=Na.get(b).apply(null,c);return e}};function mc(a,b){a=P(a);var c=a.includes("j")?ec(a,b):Na.get(b);"function"!=typeof c&&Q(`unknown function pointer with signature ${a}: ${b}`);return c}var nc=void 0;function oc(a){a=pc(a);var b=P(a);qc(a);return b} +function rc(a,b){function c(k){f[k]||pb[k]||(qb[k]?qb[k].forEach(c):(e.push(k),f[k]=!0))}var e=[],f={};b.forEach(c);throw new nc(`${a}: `+e.map(oc).join([", "]));} +function sc(a,b,c,e,f){var k=b.length;2>k&&Q("argTypes array size mismatch! Must at least get return value and 'this' types!");var l=null!==b[1]&&null!==c,m=!1;for(c=1;c>2]);return c}function uc(){this.Rd=[void 0];this.De=[]}var vc=new uc;function wc(a){a>=vc.Ud&&0===--vc.get(a).Ge&&vc.re(a)} +var xc=a=>{a||Q("Cannot use deleted val. handle = "+a);return vc.get(a).value},ac=a=>{switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:return vc.qe({Ge:1,value:a})}};function yc(a,b,c){switch(b){case 0:return function(e){return this.fromWireType((c?Ha:C)[e])};case 1:return function(e){return this.fromWireType((c?Ia:Ja)[e>>1])};case 2:return function(e){return this.fromWireType((c?K:L)[e>>2])};default:throw new TypeError("Unknown integer type: "+a);}} +function zc(a,b){var c=pb[a];void 0===c&&Q(b+" has unknown type "+oc(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 Ac(a,b){switch(b){case 2:return function(c){return this.fromWireType(N[c>>2])};case 3:return function(c){return this.fromWireType(Ka[c>>3])};default:throw new TypeError("Unknown float type: "+a);}} +function Bc(a,b,c){switch(b){case 0:return c?function(e){return Ha[e]}:function(e){return C[e]};case 1:return c?function(e){return Ia[e>>1]}:function(e){return Ja[e>>1]};case 2:return c?function(e){return K[e>>2]}:function(e){return L[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}} +var ka=(a,b,c,e)=>{if(!(0=l){var m=a.charCodeAt(++k);l=65536+((l&1023)<<10)|m&1023}if(127>=l){if(c>=e)break;b[c++]=l}else{if(2047>=l){if(c+1>=e)break;b[c++]=192|l>>6}else{if(65535>=l){if(c+2>=e)break;b[c++]=224|l>>12}else{if(c+3>=e)break;b[c++]=240|l>>18;b[c++]=128|l>>12&63}b[c++]=128|l>>6&63}b[c++]=128|l&63}}b[c]=0;return c-f},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},Cc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,Dc=(a,b)=>{var c=a>>1;for(var e=c+b/2;!(c>=e)&&Ja[c];)++c;c<<=1;if(32=b/2);++e){var f=Ia[a+2*e>>1];if(0==f)break;c+=String.fromCharCode(f)}return c},Ec=(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;Ia[b>>1]=0;return b-e}, +Fc=a=>2*a.length,Gc=(a,b)=>{for(var c=0,e="";!(c>=b/4);){var f=K[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},Hc=(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 l=a.charCodeAt(++f);k=65536+((k&1023)<<10)|l&1023}K[b>>2]=k;b+=4;if(b+4>c)break}K[b>>2]=0;return b-e},Ic=a=>{for(var b=0,c=0;c=e&&++c;b+=4}return b},Jc={};function Kc(a){var b=Jc[a];return void 0===b?P(a):b}var Lc=[]; +function Mc(){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 Nc(a){var b=Lc.length;Lc.push(a);return b}function Oc(a,b){for(var c=Array(a),e=0;e>2],"parameter "+e);return c}var Pc=[];function Qc(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]=l.readValueFromPointer(f);f+=l.argPackAdvance}c=new (c.bind.apply(c,b));return ac(c)}}var Rc={}; +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,l){b.drawElementsInstancedANGLE(c,e,f,k,l)})} +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=[],dd={},ed={},gd=4;function R(a){hd||(hd=a)}function da(a){for(var b=Vc++,c=a.length;ca.version||!b.Be)b.Be=b.getExtension("EXT_disjoint_timer_query");b.rf=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}} +var x,hd,ld={},nd=()=>{if(!md){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:ma||"./this.program"},b;for(b in ld)void 0===ld[b]?delete a[b]:a[b]=ld[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);md=c}return md},md,od=[null,[],[]];function pd(a){S.bindVertexArray(ad[a])} +function qd(a,b){for(var c=0;c>2];S.deleteVertexArray(ad[e]);ad[e]=null}}var rd=[];function sd(a,b,c,e){S.drawElements(a,b,c,e)}function td(a,b,c,e){for(var f=0;f>2]=l}}function ud(a,b){td(a,b,"createVertexArray",ad)} +function vd(a,b,c){if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&R(1280);return;case 34814:case 36345:e=0;break;case 34466:var f=S.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>x.version){R(1282);return}e=2*(S.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>x.version){R(1280);return}e=33307==a?3:0}if(void 0===e)switch(f=S.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":R(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:R(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:Ha[b+a>>0]=f[a]?1:0}return}try{e=f.name|0}catch(k){R(1280); +Ca("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+k+")");return}}break;default:R(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;L[b>>2]=c;L[b+4>>2]=(c-L[b>>2])/4294967296;break;case 0:K[b>>2]=e;break;case 2:N[b>>2]=e;break;case 4:Ha[b>>0]=e?1:0}}else R(1281)}var xd=a=>{var b=ja(a)+1,c=wd(b);c&&ka(a,C,c,b);return c}; +function yd(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function zd(a){a-=5120;return 0==a?Ha:1==a?C:2==a?Ia:4==a?K:6==a?N:5==a||28922==a||28520==a||30779==a||30782==a?L:Ja}function Ad(a,b,c,e,f){a=zd(a);var k=31-Math.clz32(a.BYTES_PER_ELEMENT),l=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 W(a){var b=S.Re;if(b){var c=b.ee[a];"number"==typeof c&&(b.ee[a]=c=S.getUniformLocation(b,b.He[a]+(00===a%4&&(0!==a%100||0===a%400),Ed=[31,29,31,30,31,30,31,31,30,31,30,31],Fd=[31,28,31,30,31,30,31,31,30,31,30,31];function Gd(a){var b=Array(ja(a)+1);ka(a,b,0,b.length);return b} +var Hd=(a,b,c,e)=>{function f(u,F,H){for(u="number"==typeof u?u.toString():u||"";u.lengthca?-1:0T-u.getDate())F-=T-u.getDate()+1,u.setDate(1),11>H?u.setMonth(H+1):(u.setMonth(0),u.setFullYear(u.getFullYear()+1));else{u.setDate(u.getDate()+F);break}}H=new Date(u.getFullYear()+1,0,4);F=m(new Date(u.getFullYear(), +0,4));H=m(H);return 0>=l(F,u)?0>=l(H,u)?u.getFullYear()+1:u.getFullYear():u.getFullYear()-1}var w=K[e+40>>2];e={nf:K[e>>2],mf:K[e+4>>2],oe:K[e+8>>2],xe:K[e+12>>2],pe:K[e+16>>2],Wd:K[e+20>>2],Qd:K[e+24>>2],Vd:K[e+28>>2],uf:K[e+32>>2],lf:K[e+36>>2],pf:w?w?kb(C,w):"":""};c=c?kb(C,c):"";w={"%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 w)c=c.replace(new RegExp(y,"g"),w[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(" ");w={"%a":u=>B[u.Qd].substring(0,3),"%A":u=>B[u.Qd],"%b":u=>D[u.pe].substring(0,3),"%B":u=>D[u.pe],"%C":u=>k((u.Wd+1900)/ +100|0,2),"%d":u=>k(u.xe,2),"%e":u=>f(u.xe,2," "),"%g":u=>q(u).toString().substring(2),"%G":u=>q(u),"%H":u=>k(u.oe,2),"%I":u=>{u=u.oe;0==u?u=12:12{for(var F=0,H=0;H<=u.pe-1;F+=(Dd(u.Wd+1900)?Ed:Fd)[H++]);return k(u.xe+F,3)},"%m":u=>k(u.pe+1,2),"%M":u=>k(u.mf,2),"%n":()=>"\n","%p":u=>0<=u.oe&&12>u.oe?"AM":"PM","%S":u=>k(u.nf,2),"%t":()=>"\t","%u":u=>u.Qd||7,"%U":u=>k(Math.floor((u.Vd+7-u.Qd)/7),2),"%V":u=>{var F=Math.floor((u.Vd+7-(u.Qd+6)%7)/7);2>=(u.Qd+371-u.Vd- +2)%7&&F++;if(F)53==F&&(H=(u.Qd+371-u.Vd)%7,4==H||3==H&&Dd(u.Wd)||(F=1));else{F=52;var H=(u.Qd+7-u.Vd-1)%7;(4==H||5==H&&Dd(u.Wd%400-1))&&F++}return k(F,2)},"%w":u=>u.Qd,"%W":u=>k(Math.floor((u.Vd+7-(u.Qd+6)%7)/7),2),"%y":u=>(u.Wd+1900).toString().substring(2),"%Y":u=>u.Wd+1900,"%z":u=>{u=u.lf;var F=0<=u;u=Math.abs(u)/60;return(F?"+":"-")+String("0000"+(u/60*100+u%60)).slice(-4)},"%Z":u=>u.pf,"%%":()=>"%"};c=c.replace(/%%/g,"\x00\x00");for(y in w)c.includes(y)&&(c=c.replace(new RegExp(y,"g"),w[y](e))); +c=c.replace(/\0\0/g,"%");y=Gd(c);if(y.length>b)return 0;Ha.set(y,a);return y.length-1};rb=r.InternalError=class extends Error{constructor(a){super(a);this.name="InternalError"}};for(var Id=Array(256),Jd=0;256>Jd;++Jd)Id[Jd]=String.fromCharCode(Jd);wb=Id;xb=r.BindingError=class extends Error{constructor(a){super(a);this.name="BindingError"}}; +Rb.prototype.isAliasOf=function(a){if(!(this instanceof Rb&&a instanceof Rb))return!1;var b=this.jd.Id.Gd,c=this.jd.Fd,e=a.jd.Id.Gd;for(a=a.jd.Fd;b.Ld;)c=b.fe(c),b=b.Ld;for(;e.Ld;)a=e.fe(a),e=e.Ld;return b===e&&c===a}; +Rb.prototype.clone=function(){this.jd.Fd||zb(this);if(this.jd.de)return this.jd.count.value+=1,this;var a=Qb,b=Object,c=b.create,e=Object.getPrototypeOf(this),f=this.jd;a=a(c.call(b,e,{jd:{value:{count:f.count,$d:f.$d,de:f.de,Fd:f.Fd,Id:f.Id,Kd:f.Kd,Od:f.Od}}}));a.jd.count.value+=1;a.jd.$d=!1;return a};Rb.prototype["delete"]=function(){this.jd.Fd||zb(this);this.jd.$d&&!this.jd.de&&Q("Object already scheduled for deletion");Bb(this);Cb(this.jd);this.jd.de||(this.jd.Kd=void 0,this.jd.Fd=void 0)}; +Rb.prototype.isDeleted=function(){return!this.jd.Fd};Rb.prototype.deleteLater=function(){this.jd.Fd||zb(this);this.jd.$d&&!this.jd.de&&Q("Object already scheduled for deletion");Kb.push(this);1===Kb.length&&Mb&&Mb(Lb);this.jd.$d=!0;return this};r.getInheritedInstanceCount=function(){return Object.keys(Nb).length};r.getLiveInheritedInstances=function(){var a=[],b;for(b in Nb)Nb.hasOwnProperty(b)&&a.push(Nb[b]);return a};r.flushPendingDeletes=Lb;r.setDelayFunction=function(a){Mb=a;Kb.length&&Mb&&Mb(Lb)}; +cc.prototype.Xe=function(a){this.Fe&&(a=this.Fe(a));return a};cc.prototype.ze=function(a){this.Sd&&this.Sd(a)};cc.prototype.argPackAdvance=8;cc.prototype.readValueFromPointer=nb;cc.prototype.deleteObject=function(a){if(null!==a)a["delete"]()}; +cc.prototype.fromWireType=function(a){function b(){return this.ke?Pb(this.Gd.ae,{Id:this.df,Fd:c,Od:this,Kd:a}):Pb(this.Gd.ae,{Id:this,Fd:a})}var c=this.Xe(a);if(!c)return this.ze(a),null;var e=Ob(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.ze(a);return e}e=this.Gd.We(c);e=Jb[e];if(!e)return b.call(this);e=this.je?e.Qe:e.pointerType;var f=Db(c,this.Gd,e.Gd);return null===f?b.call(this):this.ke?Pb(e.Gd.ae,{Id:e,Fd:f,Od:this,Kd:a}):Pb(e.Gd.ae, +{Id:e,Fd:f})};nc=r.UnboundTypeError=function(a,b){var c=Tb(b,function(e){this.name=b;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c}(Error,"UnboundTypeError"); +Object.assign(uc.prototype,{get(a){return this.Rd[a]},has(a){return void 0!==this.Rd[a]},qe(a){var b=this.De.pop()||this.Rd.length;this.Rd[b]=a;return b},re(a){this.Rd[a]=void 0;this.De.push(a)}});vc.Rd.push({value:void 0},{value:null},{value:!0},{value:!1});vc.Ud=vc.Rd.length;r.count_emval_handles=function(){for(var a=0,b=vc.Ud;bKd;++Kd)rd.push(Array(Kd));var Ld=new Float32Array(288); +for(Kd=0;288>Kd;++Kd)Bd[Kd]=Ld.subarray(0,Kd+1);var Md=new Int32Array(288);for(Kd=0;288>Kd;++Kd)Cd[Kd]=Md.subarray(0,Kd+1); +var $d={H:function(a,b,c){(new fb(a)).Ud(b,c);gb=a;ib++;throw gb;},_:function(){return 0},_c:()=>{},Zc:function(){return 0},Yc:()=>{},Xc:function(){},Wc:()=>{},E:function(a){var b=lb[a];delete lb[a];var c=b.we,e=b.Sd,f=b.Ce,k=f.map(l=>l.$e).concat(f.map(l=>l.hf));tb([a],k,l=>{var m={};f.forEach((q,w)=>{var y=l[w],B=q.Ye,D=q.Ze,u=l[w+f.length],F=q.gf,H=q.jf;m[q.Ve]={read:T=>y.fromWireType(B(D,T)),write:(T,ca)=>{var Y=[];F(H,T,u.toWireType(Y,ca));mb(Y)}}});return[{name:b.name,fromWireType:function(q){var w= +{},y;for(y in m)w[y]=m[y].read(q);e(q);return w},toWireType:function(q,w){for(var y in m)if(!(y in w))throw new TypeError(`Missing field: "${y}"`);var B=c();for(y in m)m[y].write(B,w[y]);null!==q&&q.push(e,B);return B},argPackAdvance:8,readValueFromPointer:nb,Nd:e}]})},ea:function(){},Sc:function(a,b,c,e,f){var k=vb(c);b=P(b);ub(a,{name:b,fromWireType:function(l){return!!l},toWireType:function(l,m){return m?e:f},argPackAdvance:8,readValueFromPointer:function(l){if(1===c)var m=Ha;else if(2===c)m=Ia; +else if(4===c)m=K;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(m[l>>k])},Nd:null})},l:function(a,b,c,e,f,k,l,m,q,w,y,B,D){y=P(y);k=mc(f,k);m&&(m=mc(l,m));w&&(w=mc(q,w));D=mc(B,D);var u=Sb(y);Vb(u,function(){rc(`Cannot construct ${y} due to unbound types`,[e])});tb([a,b,c],e?[e]:[],function(F){F=F[0];if(e){var H=F.Gd;var T=H.ae}else T=Rb.prototype;F=Tb(u,function(){if(Object.getPrototypeOf(this)!==ca)throw new xb("Use 'new' to construct "+y);if(void 0===Y.Td)throw new xb(y+ +" has no accessible constructor");var Ma=Y.Td[arguments.length];if(void 0===Ma)throw new xb(`Tried to invoke ctor of ${y} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(Y.Td).toString()}) parameters instead!`);return Ma.apply(this,arguments)});var ca=Object.create(T,{constructor:{value:F}});F.prototype=ca;var Y=new Wb(y,F,ca,D,H,k,m,w);Y.Ld&&(void 0===Y.Ld.ge&&(Y.Ld.ge=[]),Y.Ld.ge.push(Y));H=new cc(y,Y,!0,!1,!1);T=new cc(y+"*",Y,!1,!1,!1);var va=new cc(y+" const*", +Y,!1,!0,!1);Jb[a]={pointerType:T,Qe:va};dc(u,F);return[H,T,va]})},e:function(a,b,c,e,f,k,l){var m=tc(c,e);b=P(b);k=mc(f,k);tb([],[a],function(q){function w(){rc(`Cannot call ${y} due to unbound types`,m)}q=q[0];var y=`${q.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var B=q.Gd.constructor;void 0===B[b]?(w.Yd=c-1,B[b]=w):(Ub(B,b,y),B[b].Jd[c-1]=w);tb([],m,function(D){D=[D[0],null].concat(D.slice(1));D=sc(y,D,null,k,l);void 0===B[b].Jd?(D.Yd=c-1,B[b]=D):B[b].Jd[c-1]=D;if(q.Gd.ge)for(const u of q.Gd.ge)u.constructor.hasOwnProperty(b)|| +(u.constructor[b]=D);return[]});return[]})},B:function(a,b,c,e,f,k){var l=tc(b,c);f=mc(e,f);tb([],[a],function(m){m=m[0];var q=`constructor ${m.name}`;void 0===m.Gd.Td&&(m.Gd.Td=[]);if(void 0!==m.Gd.Td[b-1])throw new xb(`Cannot register multiple constructors with identical number of parameters (${b-1}) for class '${m.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);m.Gd.Td[b-1]=()=>{rc(`Cannot construct ${m.name} due to unbound types`,l)}; +tb([],l,function(w){w.splice(1,0,null);m.Gd.Td[b-1]=sc(q,w,null,f,k);return[]});return[]})},a:function(a,b,c,e,f,k,l,m){var q=tc(c,e);b=P(b);k=mc(f,k);tb([],[a],function(w){function y(){rc(`Cannot call ${B} due to unbound types`,q)}w=w[0];var B=`${w.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);m&&w.Gd.ef.push(b);var D=w.Gd.ae,u=D[b];void 0===u||void 0===u.Jd&&u.className!==w.name&&u.Yd===c-2?(y.Yd=c-2,y.className=w.name,D[b]=y):(Ub(D,b,B),D[b].Jd[c-2]=y);tb([],q,function(F){F=sc(B,F, +w,k,l);void 0===D[b].Jd?(F.Yd=c-2,D[b]=F):D[b].Jd[c-2]=F;return[]});return[]})},s:function(a,b,c){a=P(a);tb([],[b],function(e){e=e[0];r[a]=e.fromWireType(c);return[]})},Rc:function(a,b){b=P(b);ub(a,{name:b,fromWireType:function(c){var e=xc(c);wc(c);return e},toWireType:function(c,e){return ac(e)},argPackAdvance:8,readValueFromPointer:nb,Nd:null})},i:function(a,b,c,e){function f(){}c=vb(c);b=P(b);f.values={};ub(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:function(k, +l){return l.value},argPackAdvance:8,readValueFromPointer:yc(b,c,e),Nd:null});Vb(b,f)},b:function(a,b,c){var e=zc(a,"enum");b=P(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:Tb(`${e.name}_${b}`,function(){})}});a.values[c]=e;a[b]=e},X:function(a,b,c){c=vb(c);b=P(b);ub(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){return f},argPackAdvance:8,readValueFromPointer:Ac(b,c),Nd:null})},v:function(a,b,c,e,f,k){var l=tc(b,c);a=P(a);f= +mc(e,f);Vb(a,function(){rc(`Cannot call ${a} due to unbound types`,l)},b-1);tb([],l,function(m){m=[m[0],null].concat(m.slice(1));dc(a,sc(a,m,null,f,k),b-1);return[]})},D:function(a,b,c,e,f){b=P(b);-1===f&&(f=4294967295);f=vb(c);var k=m=>m;if(0===e){var l=32-8*c;k=m=>m<>>l}c=b.includes("unsigned")?function(m,q){return q>>>0}:function(m,q){return q};ub(a,{name:b,fromWireType:k,toWireType:c,argPackAdvance:8,readValueFromPointer:Bc(b,f,0!==e),Nd:null})},r:function(a,b,c){function e(k){k>>=2;var l= +L;return new f(l.buffer,l[k+1],l[k])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=P(c);ub(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{af:!0})},q:function(a,b,c,e,f,k,l,m,q,w,y,B){c=P(c);k=mc(f,k);m=mc(l,m);w=mc(q,w);B=mc(y,B);tb([a],[b],function(D){D=D[0];return[new cc(c,D.Gd,!1,!1,!0,D,e,k,m,w,B)]})},W:function(a,b){b=P(b);var c="std::string"===b;ub(a,{name:b,fromWireType:function(e){var f=L[e>>2],k=e+4;if(c)for(var l= +k,m=0;m<=f;++m){var q=k+m;if(m==f||0==C[q]){l=l?kb(C,l,q-l):"";if(void 0===w)var w=l;else w+=String.fromCharCode(0),w+=l;l=q+1}}else{w=Array(f);for(m=0;m>2]= +l;if(c&&k)ka(f,C,q,l+1);else if(k)for(k=0;kJa;var m=1}else 4===b&&(e=Gc,f=Hc,k=Ic,l=()=>L,m=2);ub(a,{name:c,fromWireType:function(q){for(var w=L[q>>2],y=l(),B,D=q+4,u=0;u<=w;++u){var F= +q+4+u*b;if(u==w||0==y[F>>m])D=e(D,F-D),void 0===B?B=D:(B+=String.fromCharCode(0),B+=D),D=F+b}qc(q);return B},toWireType:function(q,w){"string"!=typeof w&&Q(`Cannot pass non-string to C++ string type ${c}`);var y=k(w),B=wd(4+y+b);L[B>>2]=y>>m;f(w,B+4,y+b);null!==q&&q.push(qc,B);return B},argPackAdvance:8,readValueFromPointer:nb,Nd:function(q){qc(q)}})},C:function(a,b,c,e,f,k){lb[a]={name:P(b),we:mc(c,e),Sd:mc(f,k),Ce:[]}},d:function(a,b,c,e,f,k,l,m,q,w){lb[a].Ce.push({Ve:P(b),$e:c,Ye:mc(e,f),Ze:k, +hf:l,gf:mc(m,q),jf:w})},Qc:function(a,b){b=P(b);ub(a,{cf:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},Pc:()=>!0,Oc:()=>{throw Infinity;},G:function(a,b,c){a=xc(a);b=zc(b,"emval::as");var e=[],f=ac(e);L[c>>2]=f;return b.toWireType(e,a)},N:function(a,b,c,e,f){a=Lc[a];b=xc(b);c=Kc(c);var k=[];L[e>>2]=ac(k);return a(b,c,k,f)},t:function(a,b,c,e){a=Lc[a];b=xc(b);c=Kc(c);a(b,c,null,e)},c:wc,M:function(a){if(0===a)return ac(Mc());a=Kc(a);return ac(Mc()[a])},p:function(a, +b){var c=Oc(a,b),e=c[0];b=e.name+"_$"+c.slice(1).map(function(l){return l.name}).join("_")+"$";var f=Pc[b];if(void 0!==f)return f;var k=Array(a-1);f=Nc((l,m,q,w)=>{for(var y=0,B=0;B{Ea("")},Mc:()=>performance.now(),Lc: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;e=Math.max(a,e);a:{f=f.min.call(f,2147483648,e+(65536-e%65536)%65536)-Fa.buffer.byteLength+65535>>>16;try{Fa.grow(f);La();var k=1;break a}catch(l){}k=void 0}if(k)return!0}return!1},Kc:function(){return x?x.handle:0},Vc:(a,b)=>{var c=0;nd().forEach(function(e,f){var k=b+c;f=L[a+4*f>>2]=k;for(k=0;k>0]=e.charCodeAt(k);Ha[f>>0]=0;c+=e.length+1});return 0},Uc:(a,b)=>{var c=nd();L[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});L[b>> +2]=e;return 0},Jc:a=>{if(!noExitRuntime){if(r.onExit)r.onExit(a);Ga=!0}oa(a,new db(a))},Z:()=>52,ga:function(){return 52},Tc:()=>52,fa:function(){return 70},Y:(a,b,c,e)=>{for(var f=0,k=0;k>2],m=L[b+4>>2];b+=8;for(var q=0;q>2]=f;return 0},Ic:function(a){S.activeTexture(a)},Hc:function(a,b){S.attachShader(Xc[a],$c[b])},Gc:function(a,b,c){S.bindAttribLocation(Xc[a],b,c?kb(C,c):"")},Fc:function(a, +b){35051==a?S.te=b:35052==a&&(S.Zd=b);S.bindBuffer(a,Wc[b])},V:function(a,b){S.bindFramebuffer(a,Yc[b])},Ec:function(a,b){S.bindRenderbuffer(a,Zc[b])},Dc:function(a,b){S.bindSampler(a,bd[b])},Cc:function(a,b){S.bindTexture(a,ea[b])},Bc:pd,Ac:pd,zc:function(a,b,c,e){S.blendColor(a,b,c,e)},yc:function(a){S.blendEquation(a)},xc:function(a,b){S.blendFunc(a,b)},wc:function(a,b,c,e,f,k,l,m,q,w){S.blitFramebuffer(a,b,c,e,f,k,l,m,q,w)},vc:function(a,b,c,e){2<=x.version?c&&b?S.bufferData(a,C,e,c,b):S.bufferData(a, +b,e):S.bufferData(a,c?C.subarray(c,c+b):b,e)},uc:function(a,b,c,e){2<=x.version?c&&S.bufferSubData(a,b,C,e,c):S.bufferSubData(a,b,C.subarray(e,e+c))},tc:function(a){return S.checkFramebufferStatus(a)},U:function(a){S.clear(a)},T:function(a,b,c,e){S.clearColor(a,b,c,e)},S:function(a){S.clearStencil(a)},ba:function(a,b,c,e){return S.clientWaitSync(cd[a],b,(c>>>0)+4294967296*e)},sc:function(a,b,c,e){S.colorMask(!!a,!!b,!!c,!!e)},rc:function(a){S.compileShader($c[a])},qc:function(a,b,c,e,f,k,l,m){2<= +x.version?S.Zd||!l?S.compressedTexImage2D(a,b,c,e,f,k,l,m):S.compressedTexImage2D(a,b,c,e,f,k,C,m,l):S.compressedTexImage2D(a,b,c,e,f,k,m?C.subarray(m,m+l):null)},pc:function(a,b,c,e,f,k,l,m,q){2<=x.version?S.Zd||!m?S.compressedTexSubImage2D(a,b,c,e,f,k,l,m,q):S.compressedTexSubImage2D(a,b,c,e,f,k,l,C,q,m):S.compressedTexSubImage2D(a,b,c,e,f,k,l,q?C.subarray(q,q+m):null)},oc:function(a,b,c,e,f){S.copyBufferSubData(a,b,c,e,f)},nc:function(a,b,c,e,f,k,l,m){S.copyTexSubImage2D(a,b,c,e,f,k,l,m)},mc:function(){var a= +da(Xc),b=S.createProgram();b.name=a;b.ne=b.le=b.me=0;b.ye=1;Xc[a]=b;return a},lc:function(a){var b=da($c);$c[b]=S.createShader(a);return b},kc:function(a){S.cullFace(a)},jc:function(a,b){for(var c=0;c>2],f=Wc[e];f&&(S.deleteBuffer(f),f.name=0,Wc[e]=null,e==S.te&&(S.te=0),e==S.Zd&&(S.Zd=0))}},ic:function(a,b){for(var c=0;c>2],f=Yc[e];f&&(S.deleteFramebuffer(f),f.name=0,Yc[e]=null)}},hc:function(a){if(a){var b=Xc[a];b?(S.deleteProgram(b),b.name=0,Xc[a]=null): +R(1281)}},gc:function(a,b){for(var c=0;c>2],f=Zc[e];f&&(S.deleteRenderbuffer(f),f.name=0,Zc[e]=null)}},fc:function(a,b){for(var c=0;c>2],f=bd[e];f&&(S.deleteSampler(f),f.name=0,bd[e]=null)}},ec:function(a){if(a){var b=$c[a];b?(S.deleteShader(b),$c[a]=null):R(1281)}},dc:function(a){if(a){var b=cd[a];b?(S.deleteSync(b),b.name=0,cd[a]=null):R(1281)}},cc:function(a,b){for(var c=0;c>2],f=ea[e];f&&(S.deleteTexture(f),f.name=0,ea[e]=null)}}, +bc:qd,ac:qd,$b:function(a){S.depthMask(!!a)},_b:function(a){S.disable(a)},Zb:function(a){S.disableVertexAttribArray(a)},Yb:function(a,b,c){S.drawArrays(a,b,c)},Xb:function(a,b,c,e){S.drawArraysInstanced(a,b,c,e)},Wb:function(a,b,c,e,f){S.Ae.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},Vb:function(a,b){for(var c=rd[a],e=0;e>2];S.drawBuffers(c)},Ub:sd,Tb:function(a,b,c,e,f){S.drawElementsInstanced(a,b,c,e,f)},Sb:function(a,b,c,e,f,k,l){S.Ae.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a, +b,c,e,f,k,l)},Rb:function(a,b,c,e,f,k){sd(a,e,f,k)},Qb:function(a){S.enable(a)},Pb:function(a){S.enableVertexAttribArray(a)},Ob:function(a,b){return(a=S.fenceSync(a,b))?(b=da(cd),a.name=b,cd[b]=a,b):0},Nb:function(){S.finish()},Mb:function(){S.flush()},Lb:function(a,b,c,e){S.framebufferRenderbuffer(a,b,c,Zc[e])},Kb:function(a,b,c,e,f){S.framebufferTexture2D(a,b,c,ea[e],f)},Jb:function(a){S.frontFace(a)},Ib:function(a,b){td(a,b,"createBuffer",Wc)},Hb:function(a,b){td(a,b,"createFramebuffer",Yc)},Gb:function(a, +b){td(a,b,"createRenderbuffer",Zc)},Fb:function(a,b){td(a,b,"createSampler",bd)},Eb:function(a,b){td(a,b,"createTexture",ea)},Db:ud,Cb:ud,Bb:function(a){S.generateMipmap(a)},Ab:function(a,b,c){c?K[c>>2]=S.getBufferParameter(a,b):R(1281)},zb:function(){var a=S.getError()||hd;hd=0;return a},yb:function(a,b){vd(a,b,2)},xb:function(a,b,c,e){a=S.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;K[e>>2]=a},K:function(a,b){vd(a,b,0)},wb:function(a, +b,c,e){a=S.getProgramInfoLog(Xc[a]);null===a&&(a="(unknown error)");b=0>2]=b)},vb:function(a,b,c){if(c)if(a>=Vc)R(1281);else if(a=Xc[a],35716==b)a=S.getProgramInfoLog(a),null===a&&(a="(unknown error)"),K[c>>2]=a.length+1;else if(35719==b){if(!a.ne)for(b=0;b>2]=a.ne}else if(35722==b){if(!a.le)for(b=0;b>2]=a.le}else if(35381==b){if(!a.me)for(b=0;b>2]=a.me}else K[c>>2]=S.getProgramParameter(a,b);else R(1281)},ub:function(a,b,c){c?K[c>>2]=S.getRenderbufferParameter(a,b):R(1281)},tb:function(a,b,c,e){a=S.getShaderInfoLog($c[a]);null===a&&(a="(unknown error)");b=0>2]=b)},sb:function(a,b,c,e){a=S.getShaderPrecisionFormat(a,b);K[c>>2]=a.rangeMin;K[c+4>> +2]=a.rangeMax;K[e>>2]=a.precision},rb:function(a,b,c){c?35716==b?(a=S.getShaderInfoLog($c[a]),null===a&&(a="(unknown error)"),K[c>>2]=a?a.length+1:0):35720==b?(a=S.getShaderSource($c[a]),K[c>>2]=a?a.length+1:0):K[c>>2]=S.getShaderParameter($c[a],b):R(1281)},R:function(a){var b=dd[a];if(!b){switch(a){case 7939:b=S.getSupportedExtensions()||[];b=b.concat(b.map(function(e){return"GL_"+e}));b=xd(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=S.getParameter(a))||R(1280);b=b&&xd(b);break; +case 7938:b=S.getParameter(7938);b=2<=x.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=xd(b);break;case 35724:b=S.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=xd(b);break;default:R(1280)}dd[a]=b}return b},qb:function(a,b){if(2>x.version)return R(1282),0;var c=ed[a];if(c)return 0>b||b>=c.length?(R(1281),0):c[b];switch(a){case 7939:return c=S.getSupportedExtensions()||[], +c=c.concat(c.map(function(e){return"GL_"+e})),c=c.map(function(e){return xd(e)}),c=ed[a]=c,0>b||b>=c.length?(R(1281),0):c[b];default:return R(1280),0}},pb:function(a,b){b=b?kb(C,b):"";if(a=Xc[a]){var c=a,e=c.ee,f=c.Ie,k;if(!e)for(c.ee=e={},c.He={},k=0;k>>0,f=b.slice(0, +k));if((f=a.Ie[f])&&e>2];S.invalidateFramebuffer(a,e)},nb:function(a,b,c,e,f,k,l){for(var m=rd[b],q=0;q>2];S.invalidateSubFramebuffer(a,m,e,f,k,l)},mb:function(a){return S.isSync(cd[a])},lb:function(a){return(a=ea[a])?S.isTexture(a):0},kb:function(a){S.lineWidth(a)},jb:function(a){a=Xc[a];S.linkProgram(a);a.ee=0;a.Ie={}},ib:function(a, +b,c,e,f,k){S.Ee.multiDrawArraysInstancedBaseInstanceWEBGL(a,K,b>>2,K,c>>2,K,e>>2,L,f>>2,k)},hb:function(a,b,c,e,f,k,l,m){S.Ee.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,K,b>>2,c,K,e>>2,K,f>>2,K,k>>2,L,l>>2,m)},gb:function(a,b){3317==a&&(gd=b);S.pixelStorei(a,b)},fb:function(a){S.readBuffer(a)},eb:function(a,b,c,e,f,k,l){if(2<=x.version)if(S.te)S.readPixels(a,b,c,e,f,k,l);else{var m=zd(k);S.readPixels(a,b,c,e,f,k,m,l>>31-Math.clz32(m.BYTES_PER_ELEMENT))}else(l=Ad(k,f,c,e,l))?S.readPixels(a, +b,c,e,f,k,l):R(1280)},db:function(a,b,c,e){S.renderbufferStorage(a,b,c,e)},cb:function(a,b,c,e,f){S.renderbufferStorageMultisample(a,b,c,e,f)},bb:function(a,b,c){S.samplerParameterf(bd[a],b,c)},ab:function(a,b,c){S.samplerParameteri(bd[a],b,c)},$a:function(a,b,c){S.samplerParameteri(bd[a],b,K[c>>2])},_a:function(a,b,c,e){S.scissor(a,b,c,e)},Za:function(a,b,c,e){for(var f="",k=0;k>2]:-1,m=K[c+4*k>>2];l=m?kb(C,m,0>l?void 0:l):"";f+=l}S.shaderSource($c[a],f)},Ya:function(a,b, +c){S.stencilFunc(a,b,c)},Xa:function(a,b,c,e){S.stencilFuncSeparate(a,b,c,e)},Wa:function(a){S.stencilMask(a)},Va:function(a,b){S.stencilMaskSeparate(a,b)},Ua:function(a,b,c){S.stencilOp(a,b,c)},Ta:function(a,b,c,e){S.stencilOpSeparate(a,b,c,e)},Sa:function(a,b,c,e,f,k,l,m,q){if(2<=x.version)if(S.Zd)S.texImage2D(a,b,c,e,f,k,l,m,q);else if(q){var w=zd(m);S.texImage2D(a,b,c,e,f,k,l,m,w,q>>31-Math.clz32(w.BYTES_PER_ELEMENT))}else S.texImage2D(a,b,c,e,f,k,l,m,null);else S.texImage2D(a,b,c,e,f,k,l,m,q? +Ad(m,l,e,f,q):null)},Ra:function(a,b,c){S.texParameterf(a,b,c)},Qa:function(a,b,c){S.texParameterf(a,b,N[c>>2])},Pa:function(a,b,c){S.texParameteri(a,b,c)},Oa:function(a,b,c){S.texParameteri(a,b,K[c>>2])},Na:function(a,b,c,e,f){S.texStorage2D(a,b,c,e,f)},Ma:function(a,b,c,e,f,k,l,m,q){if(2<=x.version)if(S.Zd)S.texSubImage2D(a,b,c,e,f,k,l,m,q);else if(q){var w=zd(m);S.texSubImage2D(a,b,c,e,f,k,l,m,w,q>>31-Math.clz32(w.BYTES_PER_ELEMENT))}else S.texSubImage2D(a,b,c,e,f,k,l,m,null);else w=null,q&&(w= +Ad(m,l,f,k,q)),S.texSubImage2D(a,b,c,e,f,k,l,m,w)},La:function(a,b){S.uniform1f(W(a),b)},Ka:function(a,b,c){if(2<=x.version)b&&S.uniform1fv(W(a),N,c>>2,b);else{if(288>=b)for(var e=Bd[b-1],f=0;f>2];else e=N.subarray(c>>2,c+4*b>>2);S.uniform1fv(W(a),e)}},Ja:function(a,b){S.uniform1i(W(a),b)},Ia:function(a,b,c){if(2<=x.version)b&&S.uniform1iv(W(a),K,c>>2,b);else{if(288>=b)for(var e=Cd[b-1],f=0;f>2];else e=K.subarray(c>>2,c+4*b>>2);S.uniform1iv(W(a),e)}},Ha:function(a, +b,c){S.uniform2f(W(a),b,c)},Ga:function(a,b,c){if(2<=x.version)b&&S.uniform2fv(W(a),N,c>>2,2*b);else{if(144>=b)for(var e=Bd[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);S.uniform2fv(W(a),e)}},Fa:function(a,b,c){S.uniform2i(W(a),b,c)},Ea:function(a,b,c){if(2<=x.version)b&&S.uniform2iv(W(a),K,c>>2,2*b);else{if(144>=b)for(var e=Cd[2*b-1],f=0;f<2*b;f+=2)e[f]=K[c+4*f>>2],e[f+1]=K[c+(4*f+4)>>2];else e=K.subarray(c>>2,c+8*b>>2);S.uniform2iv(W(a),e)}},Da:function(a, +b,c,e){S.uniform3f(W(a),b,c,e)},Ca:function(a,b,c){if(2<=x.version)b&&S.uniform3fv(W(a),N,c>>2,3*b);else{if(96>=b)for(var e=Bd[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);S.uniform3fv(W(a),e)}},Ba:function(a,b,c,e){S.uniform3i(W(a),b,c,e)},Aa:function(a,b,c){if(2<=x.version)b&&S.uniform3iv(W(a),K,c>>2,3*b);else{if(96>=b)for(var e=Cd[3*b-1],f=0;f<3*b;f+=3)e[f]=K[c+4*f>>2],e[f+1]=K[c+(4*f+4)>>2],e[f+2]=K[c+(4*f+8)>>2];else e= +K.subarray(c>>2,c+12*b>>2);S.uniform3iv(W(a),e)}},za:function(a,b,c,e,f){S.uniform4f(W(a),b,c,e,f)},ya:function(a,b,c){if(2<=x.version)b&&S.uniform4fv(W(a),N,c>>2,4*b);else{if(72>=b){var e=Bd[4*b-1],f=N;c>>=2;for(var k=0;k<4*b;k+=4){var l=c+k;e[k]=f[l];e[k+1]=f[l+1];e[k+2]=f[l+2];e[k+3]=f[l+3]}}else e=N.subarray(c>>2,c+16*b>>2);S.uniform4fv(W(a),e)}},xa:function(a,b,c,e,f){S.uniform4i(W(a),b,c,e,f)},wa:function(a,b,c){if(2<=x.version)b&&S.uniform4iv(W(a),K,c>>2,4*b);else{if(72>=b)for(var e=Cd[4*b- +1],f=0;f<4*b;f+=4)e[f]=K[c+4*f>>2],e[f+1]=K[c+(4*f+4)>>2],e[f+2]=K[c+(4*f+8)>>2],e[f+3]=K[c+(4*f+12)>>2];else e=K.subarray(c>>2,c+16*b>>2);S.uniform4iv(W(a),e)}},va:function(a,b,c,e){if(2<=x.version)b&&S.uniformMatrix2fv(W(a),!!c,N,e>>2,4*b);else{if(72>=b)for(var f=Bd[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);S.uniformMatrix2fv(W(a),!!c,f)}},ua:function(a,b,c,e){if(2<=x.version)b&&S.uniformMatrix3fv(W(a), +!!c,N,e>>2,9*b);else{if(32>=b)for(var f=Bd[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);S.uniformMatrix3fv(W(a),!!c,f)}},ta:function(a,b,c,e){if(2<=x.version)b&&S.uniformMatrix4fv(W(a),!!c,N,e>>2,16*b);else{if(18>=b){var f=Bd[16*b-1],k=N;e>>=2;for(var l=0;l<16*b;l+=16){var m=e+l;f[l]= +k[m];f[l+1]=k[m+1];f[l+2]=k[m+2];f[l+3]=k[m+3];f[l+4]=k[m+4];f[l+5]=k[m+5];f[l+6]=k[m+6];f[l+7]=k[m+7];f[l+8]=k[m+8];f[l+9]=k[m+9];f[l+10]=k[m+10];f[l+11]=k[m+11];f[l+12]=k[m+12];f[l+13]=k[m+13];f[l+14]=k[m+14];f[l+15]=k[m+15]}}else f=N.subarray(e>>2,e+64*b>>2);S.uniformMatrix4fv(W(a),!!c,f)}},sa:function(a){a=Xc[a];S.useProgram(a);S.Re=a},ra:function(a,b){S.vertexAttrib1f(a,b)},qa:function(a,b){S.vertexAttrib2f(a,N[b>>2],N[b+4>>2])},pa:function(a,b){S.vertexAttrib3f(a,N[b>>2],N[b+4>>2],N[b+8>>2])}, +oa:function(a,b){S.vertexAttrib4f(a,N[b>>2],N[b+4>>2],N[b+8>>2],N[b+12>>2])},na:function(a,b){S.vertexAttribDivisor(a,b)},ma:function(a,b,c,e,f){S.vertexAttribIPointer(a,b,c,e,f)},la:function(a,b,c,e,f,k){S.vertexAttribPointer(a,b,c,!!e,f,k)},ka:function(a,b,c,e){S.viewport(a,b,c,e)},aa:function(a,b,c,e){S.waitSync(cd[a],b,(c>>>0)+4294967296*e)},n:Nd,u:Od,j:Pd,J:Qd,Q:Rd,P:Sd,x:Td,y:Ud,o:Vd,w:Wd,ja:Xd,ia:Yd,ha:Zd,$:(a,b,c,e)=>Hd(a,b,c,e)}; +(function(){function a(c){G=c=c.exports;Fa=G.$c;La();Na=G.bd;Pa.unshift(G.ad);Ua--;r.monitorRunDependencies&&r.monitorRunDependencies(Ua);if(0==Ua&&(null!==Va&&(clearInterval(Va),Va=null),Wa)){var e=Wa;Wa=null;e()}return c}var b={a:$d};Ua++;r.monitorRunDependencies&&r.monitorRunDependencies(Ua);if(r.instantiateWasm)try{return r.instantiateWasm(b,a)}catch(c){Ca("Module.instantiateWasm callback failed with error: "+c),ba(c)}cb(b,function(c){a(c.instance)}).catch(ba);return{}})(); +var qc=r._free=a=>(qc=r._free=G.cd)(a),wd=r._malloc=a=>(wd=r._malloc=G.dd)(a),pc=a=>(pc=G.ed)(a);r.__embind_initialize_bindings=()=>(r.__embind_initialize_bindings=G.fd)();var ae=(a,b)=>(ae=G.gd)(a,b),be=()=>(be=G.hd)(),ce=a=>(ce=G.id)(a);r.dynCall_viji=(a,b,c,e,f)=>(r.dynCall_viji=G.kd)(a,b,c,e,f);r.dynCall_vijiii=(a,b,c,e,f,k,l)=>(r.dynCall_vijiii=G.ld)(a,b,c,e,f,k,l);r.dynCall_viiiiij=(a,b,c,e,f,k,l,m)=>(r.dynCall_viiiiij=G.md)(a,b,c,e,f,k,l,m);r.dynCall_jii=(a,b,c)=>(r.dynCall_jii=G.nd)(a,b,c); +r.dynCall_vij=(a,b,c,e)=>(r.dynCall_vij=G.od)(a,b,c,e);r.dynCall_iiij=(a,b,c,e,f)=>(r.dynCall_iiij=G.pd)(a,b,c,e,f);r.dynCall_iiiij=(a,b,c,e,f,k)=>(r.dynCall_iiiij=G.qd)(a,b,c,e,f,k);r.dynCall_viij=(a,b,c,e,f)=>(r.dynCall_viij=G.rd)(a,b,c,e,f);r.dynCall_viiij=(a,b,c,e,f,k)=>(r.dynCall_viiij=G.sd)(a,b,c,e,f,k);r.dynCall_ji=(a,b)=>(r.dynCall_ji=G.td)(a,b);r.dynCall_iij=(a,b,c,e)=>(r.dynCall_iij=G.ud)(a,b,c,e);r.dynCall_jiiiiii=(a,b,c,e,f,k,l)=>(r.dynCall_jiiiiii=G.vd)(a,b,c,e,f,k,l); +r.dynCall_jiiiiji=(a,b,c,e,f,k,l,m)=>(r.dynCall_jiiiiji=G.wd)(a,b,c,e,f,k,l,m);r.dynCall_iijj=(a,b,c,e,f,k)=>(r.dynCall_iijj=G.xd)(a,b,c,e,f,k);r.dynCall_jiji=(a,b,c,e,f)=>(r.dynCall_jiji=G.yd)(a,b,c,e,f);r.dynCall_viijii=(a,b,c,e,f,k,l)=>(r.dynCall_viijii=G.zd)(a,b,c,e,f,k,l);r.dynCall_iiiiij=(a,b,c,e,f,k,l)=>(r.dynCall_iiiiij=G.Ad)(a,b,c,e,f,k,l);r.dynCall_iiiiijj=(a,b,c,e,f,k,l,m,q)=>(r.dynCall_iiiiijj=G.Bd)(a,b,c,e,f,k,l,m,q); +r.dynCall_iiiiiijj=(a,b,c,e,f,k,l,m,q,w)=>(r.dynCall_iiiiiijj=G.Cd)(a,b,c,e,f,k,l,m,q,w);function Wd(a,b,c,e,f){var k=be();try{Na.get(a)(b,c,e,f)}catch(l){ce(k);if(l!==l+0)throw l;ae(1,0)}}function Od(a,b,c){var e=be();try{return Na.get(a)(b,c)}catch(f){ce(e);if(f!==f+0)throw f;ae(1,0)}}function Ud(a,b,c){var e=be();try{Na.get(a)(b,c)}catch(f){ce(e);if(f!==f+0)throw f;ae(1,0)}}function Nd(a,b){var c=be();try{return Na.get(a)(b)}catch(e){ce(c);if(e!==e+0)throw e;ae(1,0)}} +function Td(a,b){var c=be();try{Na.get(a)(b)}catch(e){ce(c);if(e!==e+0)throw e;ae(1,0)}}function Pd(a,b,c,e){var f=be();try{return Na.get(a)(b,c,e)}catch(k){ce(f);if(k!==k+0)throw k;ae(1,0)}}function Zd(a,b,c,e,f,k,l,m,q,w){var y=be();try{Na.get(a)(b,c,e,f,k,l,m,q,w)}catch(B){ce(y);if(B!==B+0)throw B;ae(1,0)}}function Vd(a,b,c,e){var f=be();try{Na.get(a)(b,c,e)}catch(k){ce(f);if(k!==k+0)throw k;ae(1,0)}} +function Yd(a,b,c,e,f,k,l){var m=be();try{Na.get(a)(b,c,e,f,k,l)}catch(q){ce(m);if(q!==q+0)throw q;ae(1,0)}}function Qd(a,b,c,e,f){var k=be();try{return Na.get(a)(b,c,e,f)}catch(l){ce(k);if(l!==l+0)throw l;ae(1,0)}}function Rd(a,b,c,e,f,k,l){var m=be();try{return Na.get(a)(b,c,e,f,k,l)}catch(q){ce(m);if(q!==q+0)throw q;ae(1,0)}}function Xd(a,b,c,e,f,k){var l=be();try{Na.get(a)(b,c,e,f,k)}catch(m){ce(l);if(m!==m+0)throw m;ae(1,0)}} +function Sd(a,b,c,e,f,k,l,m,q,w){var y=be();try{return Na.get(a)(b,c,e,f,k,l,m,q,w)}catch(B){ce(y);if(B!==B+0)throw B;ae(1,0)}}var de;Wa=function ee(){de||fe();de||(Wa=ee)}; +function fe(){function a(){if(!de&&(de=!0,r.calledRun=!0,!Ga)){eb(Pa);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();Qa.unshift(b)}eb(Qa)}}if(!(0 CanvasKitInit); diff --git a/canvaskit/chromium/canvaskit.js.symbols b/canvaskit/chromium/canvaskit.js.symbols new file mode 100644 index 000000000..165ce0ddf --- /dev/null +++ b/canvaskit/chromium/canvaskit.js.symbols @@ -0,0 +1,10827 @@ +0:_embind_register_class_function +1:_embind_register_enum_value +2:_emval_decref +3:_embind_register_value_object_field +4:_embind_register_class_class_function +5:_emval_new_cstring +6:_emval_take_value +7:_emval_set_property +8:_embind_register_enum +9:invoke_iiii +10:abort +11:_embind_register_class +12:_emval_incref +13:invoke_ii +14:invoke_viii +15:_emval_get_method_caller +16:_embind_register_smart_ptr +17:_embind_register_memory_view +18:_embind_register_constant +19:_emval_call_void_method +20:invoke_iii +21:_embind_register_function +22:invoke_viiii +23:invoke_vi +24:invoke_vii +25:_emval_run_destructors +26:_emval_get_property +27:_embind_register_class_constructor +28:_embind_register_value_object +29:_embind_register_integer +30:_embind_finalize_value_object +31:_emval_new_object +32:_emval_as +33:__cxa_throw +34:_emval_new_array +35:invoke_iiiii +36:glGetIntegerv +37:_emval_new +38:_emval_get_global +39:_emval_call_method +40:_embind_register_std_wstring +41:invoke_iiiiiiiiii +42:invoke_iiiiiii +43:glGetString +44:glClearStencil +45:glClearColor +46:glClear +47:glBindFramebuffer +48:_embind_register_std_string +49:_embind_register_float +50:__wasi_fd_write +51:__wasi_fd_close +52:__syscall_fcntl64 +53:strftime_l +54:legalimport$glWaitSync +55:legalimport$glClientWaitSync +56:legalimport$_munmap_js +57:legalimport$_mmap_js +58:legalimport$_embind_register_bigint +59:legalimport$__wasi_fd_seek +60:legalimport$__wasi_fd_pread +61:invoke_viiiiiiiii +62:invoke_viiiiii +63:invoke_viiiii +64:glViewport +65:glVertexAttribPointer +66:glVertexAttribIPointer +67:glVertexAttribDivisor +68:glVertexAttrib4fv +69:glVertexAttrib3fv +70:glVertexAttrib2fv +71:glVertexAttrib1f +72:glUseProgram +73:glUniformMatrix4fv +74:glUniformMatrix3fv +75:glUniformMatrix2fv +76:glUniform4iv +77:glUniform4i +78:glUniform4fv +79:glUniform4f +80:glUniform3iv +81:glUniform3i +82:glUniform3fv +83:glUniform3f +84:glUniform2iv +85:glUniform2i +86:glUniform2fv +87:glUniform2f +88:glUniform1iv +89:glUniform1i +90:glUniform1fv +91:glUniform1f +92:glTexSubImage2D +93:glTexStorage2D +94:glTexParameteriv +95:glTexParameteri +96:glTexParameterfv +97:glTexParameterf +98:glTexImage2D +99:glStencilOpSeparate +100:glStencilOp +101:glStencilMaskSeparate +102:glStencilMask +103:glStencilFuncSeparate +104:glStencilFunc +105:glShaderSource +106:glScissor +107:glSamplerParameteriv +108:glSamplerParameteri +109:glSamplerParameterf +110:glRenderbufferStorageMultisample +111:glRenderbufferStorage +112:glReadPixels +113:glReadBuffer +114:glPixelStorei +115:glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL +116:glMultiDrawArraysInstancedBaseInstanceWEBGL +117:glLinkProgram +118:glLineWidth +119:glIsTexture +120:glIsSync +121:glInvalidateSubFramebuffer +122:glInvalidateFramebuffer +123:glGetUniformLocation +124:glGetStringi +125:glGetShaderiv +126:glGetShaderPrecisionFormat +127:glGetShaderInfoLog +128:glGetRenderbufferParameteriv +129:glGetProgramiv +130:glGetProgramInfoLog +131:glGetFramebufferAttachmentParameteriv +132:glGetFloatv +133:glGetError +134:glGetBufferParameteriv +135:glGenerateMipmap +136:glGenVertexArraysOES +137:glGenVertexArrays +138:glGenTextures +139:glGenSamplers +140:glGenRenderbuffers +141:glGenFramebuffers +142:glGenBuffers +143:glFrontFace +144:glFramebufferTexture2D +145:glFramebufferRenderbuffer +146:glFlush +147:glFinish +148:glFenceSync +149:glEnableVertexAttribArray +150:glEnable +151:glDrawRangeElements +152:glDrawElementsInstancedBaseVertexBaseInstanceWEBGL +153:glDrawElementsInstanced +154:glDrawElements +155:glDrawBuffers +156:glDrawArraysInstancedBaseInstanceWEBGL +157:glDrawArraysInstanced +158:glDrawArrays +159:glDisableVertexAttribArray +160:glDisable +161:glDepthMask +162:glDeleteVertexArraysOES +163:glDeleteVertexArrays +164:glDeleteTextures +165:glDeleteSync +166:glDeleteShader +167:glDeleteSamplers +168:glDeleteRenderbuffers +169:glDeleteProgram +170:glDeleteFramebuffers +171:glDeleteBuffers +172:glCullFace +173:glCreateShader +174:glCreateProgram +175:glCopyTexSubImage2D +176:glCopyBufferSubData +177:glCompressedTexSubImage2D +178:glCompressedTexImage2D +179:glCompileShader +180:glColorMask +181:glCheckFramebufferStatus +182:glBufferSubData +183:glBufferData +184:glBlitFramebuffer +185:glBlendFunc +186:glBlendEquation +187:glBlendColor +188:glBindVertexArrayOES +189:glBindVertexArray +190:glBindTexture +191:glBindSampler +192:glBindRenderbuffer +193:glBindBuffer +194:glBindAttribLocation +195:glAttachShader +196:glActiveTexture +197:exit +198:emscripten_webgl_get_current_context +199:emscripten_resize_heap +200:emscripten_get_now +201:_emval_not +202:_emscripten_throw_longjmp +203:_emscripten_get_now_is_monotonic +204:_embind_register_void +205:_embind_register_emval +206:_embind_register_bool +207:__wasi_fd_read +208:__wasi_environ_sizes_get +209:__wasi_environ_get +210:__syscall_stat64 +211:__syscall_openat +212:__syscall_newfstatat +213:__syscall_ioctl +214:__syscall_fstat64 +215:dlfree +216:operator\20new\28unsigned\20long\29 +217:void\20emscripten::internal::raw_destructor\28SkColorSpace*\29 +218:__memcpy +219:SkString::~SkString\28\29 +220:__memset +221:GrGLSLShaderBuilder::codeAppendf\28char\20const*\2c\20...\29 +222:SkColorInfo::~SkColorInfo\28\29 +223:SkContainerAllocator::allocate\28int\2c\20double\29 +224:SkString::SkString\28\29 +225:SkDebugf\28char\20const*\2c\20...\29 +226:SkString::insert\28unsigned\20long\2c\20char\20const*\29 +227:SkData::~SkData\28\29 +228:memcmp +229:memmove +230:hb_blob_destroy +231:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\29 +232:sk_report_container_overflow_and_die\28\29 +233:SkPath::~SkPath\28\29 +234:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::~__func\28\29 +235:SkArenaAlloc::ensureSpace\28unsigned\20int\2c\20unsigned\20int\29 +236:SkRasterPipeline::append\28SkRasterPipelineOp\2c\20void*\29 +237:ft_mem_free +238:FT_MulFix +239:SkString::SkString\28char\20const*\29 +240:SkSL::ErrorReporter::error\28SkSL::Position\2c\20std::__2::basic_string_view>\29 +241:emscripten::default_smart_ptr_trait>::share\28void*\29 +242:SkTDStorage::append\28\29 +243:SkMatrix::computeTypeMask\28\29\20const +244:GrGpuResource::notifyARefCntIsZero\28GrIORef::LastRemovedRef\29\20const +245:SkWriter32::growToAtLeast\28unsigned\20long\29 +246:testSetjmp +247:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\2c\20unsigned\20long\29 +248:std::__2::basic_string\2c\20std::__2::allocator>::size\5babi:v160004\5d\28\29\20const +249:fmaxf +250:SkString::SkString\28SkString&&\29 +251:std::__2::__shared_weak_count::__release_weak\28\29 +252:std::__2::basic_string\2c\20std::__2::allocator>::__throw_length_error\5babi:v160004\5d\28\29\20const +253:SkSL::Pool::AllocMemory\28unsigned\20long\29 +254:GrColorInfo::~GrColorInfo\28\29 +255:SkIRect::intersect\28SkIRect\20const&\2c\20SkIRect\20const&\29 +256:GrBackendFormat::~GrBackendFormat\28\29 +257:strlen +258:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\29 +259:GrContext_Base::caps\28\29\20const +260:SkPaint::~SkPaint\28\29 +261:std::__2::vector>::__throw_length_error\5babi:v160004\5d\28\29\20const +262:SkTDStorage::~SkTDStorage\28\29 +263:sk_malloc_throw\28unsigned\20long\2c\20unsigned\20long\29 +264:SkTDStorage::SkTDStorage\28int\29 +265:SkSL::RP::Generator::pushExpression\28SkSL::Expression\20const&\2c\20bool\29 +266:SkStrokeRec::getStyle\28\29\20const +267:strncmp +268:SkString::SkString\28SkString\20const&\29 +269:hb_ot_map_builder_t::add_feature\28unsigned\20int\2c\20hb_ot_map_feature_flags_t\2c\20unsigned\20int\29 +270:void\20emscripten::internal::raw_destructor\28SkContourMeasure*\29 +271:SkMatrix::mapRect\28SkRect*\2c\20SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +272:SkArenaAlloc::installFooter\28char*\20\28*\29\28char*\29\2c\20unsigned\20int\29 +273:hb_buffer_t::make_room_for\28unsigned\20int\2c\20unsigned\20int\29 +274:SkArenaAlloc::allocObjectWithFooter\28unsigned\20int\2c\20unsigned\20int\29 +275:fminf +276:SkSemaphore::osSignal\28int\29 +277:strcmp +278:SkString::operator=\28SkString&&\29 +279:skia_private::TArray::push_back\28SkPoint\20const&\29 +280:SkBitmap::~SkBitmap\28\29 +281:SkSL::Parser::nextRawToken\28\29 +282:SkPath::SkPath\28\29 +283:skia_png_error +284:hb_buffer_t::message\28hb_font_t*\2c\20char\20const*\2c\20...\29 +285:SkArenaAlloc::~SkArenaAlloc\28\29 +286:SkMatrix::computePerspectiveTypeMask\28\29\20const +287:SkColorInfo::SkColorInfo\28SkColorInfo\20const&\29 +288:SkSemaphore::osWait\28\29 +289:SkFontMgr*\20emscripten::base::convertPointer\28skia::textlayout::TypefaceFontProvider*\29 +290:SkIntersections::insert\28double\2c\20double\2c\20SkDPoint\20const&\29 +291:dlmalloc +292:FT_DivFix +293:SkString::appendf\28char\20const*\2c\20...\29 +294:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +295:skia_png_free +296:SkPath::lineTo\28float\2c\20float\29 +297:std::__throw_bad_array_new_length\5babi:v160004\5d\28\29 +298:skia_png_crc_finish +299:SkChecksum::Hash32\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20int\29 +300:skia_png_chunk_benign_error +301:SkReadBuffer::readUInt\28\29 +302:SkReadBuffer::setInvalid\28\29 +303:SkMatrix::setTranslate\28float\2c\20float\29 +304:SkMatrix::mapPoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +305:dlrealloc +306:skia_png_warning +307:OT::VarData::get_delta\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20OT::VarRegionList\20const&\2c\20float*\29\20const +308:ft_mem_qrealloc +309:SkPaint::SkPaint\28SkPaint\20const&\29 +310:SkColorInfo::bytesPerPixel\28\29\20const +311:GrVertexChunkBuilder::allocChunk\28int\29 +312:skia_private::TArray::push_back\28unsigned\20long\20const&\29 +313:OT::DeltaSetIndexMap::map\28unsigned\20int\29\20const +314:ft_mem_realloc +315:SkMatrix::reset\28\29 +316:SkImageInfo::MakeUnknown\28int\2c\20int\29 +317:GrSurfaceProxyView::asRenderTargetProxy\28\29\20const +318:skia_private::TArray::push_back\28unsigned\20char&&\29 +319:SkSL::RP::Builder::appendInstruction\28SkSL::RP::BuilderOp\2c\20SkSL::RP::Builder::SlotList\2c\20int\2c\20int\2c\20int\2c\20int\29 +320:SkPath::SkPath\28SkPath\20const&\29 +321:ft_validator_error +322:SkPaint::SkPaint\28\29 +323:SkBlitter::~SkBlitter\28\29 +324:strstr +325:SkOpPtT::segment\28\29\20const +326:SkBitmap::SkBitmap\28\29 +327:skia_private::TArray\2c\20true>::push_back\28sk_sp&&\29 +328:sk_malloc_flags\28unsigned\20long\2c\20unsigned\20int\29 +329:SkSL::Parser::expect\28SkSL::Token::Kind\2c\20char\20const*\2c\20SkSL::Token*\29 +330:std::__2::basic_string\2c\20std::__2::allocator>::__get_pointer\5babi:v160004\5d\28\29 +331:SkMatrix::invertNonIdentity\28SkMatrix*\29\20const +332:SkImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +333:dlcalloc +334:GrTextureGenerator::isTextureGenerator\28\29\20const +335:skia_png_get_uint_32 +336:skia_png_calculate_crc +337:std::__2::basic_string\2c\20std::__2::allocator>::resize\5babi:v160004\5d\28unsigned\20long\29 +338:SkSL::GLSLCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +339:SkPoint::Length\28float\2c\20float\29 +340:GrImageInfo::GrImageInfo\28GrImageInfo\20const&\29 +341:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +342:std::__2::locale::~locale\28\29 +343:skgpu::Swizzle::Swizzle\28char\20const*\29 +344:SkPath::getBounds\28\29\20const +345:skia_private::TArray>\2c\20true>::operator=\28skia_private::TArray>\2c\20true>&&\29 +346:skia_private::TArray::push_back\28SkString&&\29 +347:FT_Stream_Seek +348:SkRect::join\28SkRect\20const&\29 +349:SkPathRef::Editor::Editor\28sk_sp*\2c\20int\2c\20int\29 +350:skia_private::TArray::push_back\28SkSL::RP::Instruction&&\29 +351:hb_blob_reference +352:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul>::__dispatch\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\29 +353:cf2_stack_popFixed +354:SkRect::setBoundsCheck\28SkPoint\20const*\2c\20int\29 +355:SkRect::intersect\28SkRect\20const&\29 +356:GrGLExtensions::has\28char\20const*\29\20const +357:SkCachedData::internalUnref\28bool\29\20const +358:GrProcessor::operator\20new\28unsigned\20long\29 +359:FT_MulDiv +360:SkJSONWriter::appendName\28char\20const*\29 +361:std::__2::__throw_bad_function_call\5babi:v160004\5d\28\29 +362:SkRasterPipeline::uncheckedAppend\28SkRasterPipelineOp\2c\20void*\29 +363:std::__2::to_string\28int\29 +364:std::__2::ios_base::getloc\28\29\20const +365:SkRegion::~SkRegion\28\29 +366:skia_png_read_push_finish_row +367:skia::textlayout::TextStyle::~TextStyle\28\29 +368:hb_blob_make_immutable +369:SkString::operator=\28char\20const*\29 +370:hb_ot_map_builder_t::add_pause\28unsigned\20int\2c\20bool\20\28*\29\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29\29 +371:cff1_path_procs_extents_t::curve\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +372:VP8GetValue +373:SkSL::ThreadContext::ReportError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +374:SkSL::String::printf\28char\20const*\2c\20...\29 +375:SkJSONWriter::beginValue\28bool\29 +376:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28\29 +377:skgpu::ganesh::SurfaceContext::caps\28\29\20const +378:SkSemaphore::~SkSemaphore\28\29 +379:SkSL::Type::matches\28SkSL::Type\20const&\29\20const +380:SkPoint::normalize\28\29 +381:SkColorInfo::operator=\28SkColorInfo\20const&\29 +382:SkArenaAlloc::SkArenaAlloc\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +383:FT_Stream_ReadUShort +384:jdiv_round_up +385:SkSL::RP::Builder::binary_op\28SkSL::RP::BuilderOp\2c\20int\29 +386:SkColorInfo::operator=\28SkColorInfo&&\29 +387:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +388:jzero_far +389:hb_blob_get_data_writable +390:SkColorInfo::SkColorInfo\28SkColorInfo&&\29 +391:skia_png_write_data +392:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +393:SkRuntimeEffect::uniformSize\28\29\20const +394:SkImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +395:FT_Stream_ExitFrame +396:subtag_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +397:skia_private::TArray::push_back_raw\28int\29 +398:__shgetc +399:SkBlitter::~SkBlitter\28\29.1 +400:FT_Stream_GetUShort +401:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28wchar_t\20const*\29 +402:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28char\20const*\29 +403:sktext::gpu::BagOfBytes::~BagOfBytes\28\29 +404:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +405:SkPoint::scale\28float\2c\20SkPoint*\29\20const +406:SkPathRef::growForVerb\28int\2c\20float\29 +407:SkNullBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +408:SkMatrix::setConcat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +409:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20char\20const*\2c\20char\20const*\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +410:skia_png_chunk_error +411:hb_face_reference_table +412:GrSurfaceProxyView::asTextureProxy\28\29\20const +413:sscanf +414:SkStringPrintf\28char\20const*\2c\20...\29 +415:SkSL::SymbolTable::addWithoutOwnershipOrDie\28SkSL::Symbol*\29 +416:RoughlyEqualUlps\28float\2c\20float\29 +417:GrGLSLVaryingHandler::addVarying\28char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVaryingHandler::Interpolation\29 +418:SkTDStorage::reserve\28int\29 +419:SkPath::Iter::next\28SkPoint*\29 +420:OT::Layout::Common::Coverage::get_coverage\28unsigned\20int\29\20const +421:round +422:SkRecord::grow\28\29 +423:SkRGBA4f<\28SkAlphaType\293>::toBytes_RGBA\28\29\20const +424:GrQuad::MakeFromRect\28SkRect\20const&\2c\20SkMatrix\20const&\29 +425:GrProcessor::operator\20new\28unsigned\20long\2c\20unsigned\20long\29 +426:skgpu::ganesh::SurfaceDrawContext::addDrawOp\28GrClip\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::function\20const&\29 +427:skgpu::ResourceKeyHash\28unsigned\20int\20const*\2c\20unsigned\20long\29 +428:VP8LoadFinalBytes +429:SkPath::moveTo\28float\2c\20float\29 +430:SkPath::conicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +431:SkCanvas::predrawNotify\28bool\29 +432:std::__2::__cloc\28\29 +433:SkSurfaceProps::SkSurfaceProps\28\29 +434:SkStrikeSpec::~SkStrikeSpec\28\29 +435:SkSL::RP::Builder::discard_stack\28int\2c\20int\29 +436:GrSkSLFP::GrSkSLFP\28sk_sp\2c\20char\20const*\2c\20GrSkSLFP::OptFlags\29 +437:GrBackendFormat::GrBackendFormat\28\29 +438:__multf3 +439:VP8LReadBits +440:SkTDStorage::append\28int\29 +441:SkPath::isFinite\28\29\20const +442:SkMatrix::setScale\28float\2c\20float\29 +443:GrOpsRenderPass::setScissorRect\28SkIRect\20const&\29 +444:GrOpsRenderPass::bindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +445:hb_draw_funcs_t::start_path\28void*\2c\20hb_draw_state_t&\29 +446:SkSL::TProgramVisitor::visitStatement\28SkSL::Statement\20const&\29 +447:SkPath::operator=\28SkPath\20const&\29 +448:SkIRect\20skif::Mapping::map\28SkIRect\20const&\2c\20SkMatrix\20const&\29 +449:SkColorSpaceXformSteps::SkColorSpaceXformSteps\28SkColorSpace\20const*\2c\20SkAlphaType\2c\20SkColorSpace\20const*\2c\20SkAlphaType\29 +450:GrSimpleMeshDrawOpHelper::~GrSimpleMeshDrawOpHelper\28\29 +451:GrProcessorSet::GrProcessorSet\28GrPaint&&\29 +452:GrCaps::getDefaultBackendFormat\28GrColorType\2c\20skgpu::Renderable\29\20const +453:GrBackendFormats::AsGLFormat\28GrBackendFormat\20const&\29 +454:std::__2::locale::id::__get\28\29 +455:std::__2::locale::facet::facet\5babi:v160004\5d\28unsigned\20long\29 +456:skia_private::TArray::push_back_raw\28int\29 +457:hb_buffer_t::_infos_set_glyph_flags\28hb_glyph_info_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +458:SkSL::PipelineStage::PipelineStageCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +459:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29 +460:SkSL::GLSLCodeGenerator::writeIdentifier\28std::__2::basic_string_view>\29 +461:SkPath::reset\28\29 +462:SkPath::isEmpty\28\29\20const +463:SkPaint::setStyle\28SkPaint::Style\29 +464:GrGeometryProcessor::AttributeSet::initImplicit\28GrGeometryProcessor::Attribute\20const*\2c\20int\29 +465:GrContext_Base::contextID\28\29\20const +466:FT_Stream_EnterFrame +467:AlmostEqualUlps\28float\2c\20float\29 +468:std::__2::locale::__imp::install\28std::__2::locale::facet*\2c\20long\29 +469:skia_png_read_data +470:SkSpinlock::contendedAcquire\28\29 +471:SkSL::evaluate_n_way_intrinsic\28SkSL::Context\20const&\2c\20SkSL::Expression\20const*\2c\20SkSL::Expression\20const*\2c\20SkSL::Expression\20const*\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29\20\28.18\29 +472:SkSL::FunctionDeclaration::description\28\29\20const +473:SkDPoint::approximatelyEqual\28SkDPoint\20const&\29\20const +474:GrOpsRenderPass::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +475:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +476:skgpu::ganesh::SurfaceContext::drawingManager\28\29 +477:skgpu::UniqueKey::GenerateDomain\28\29 +478:hb_buffer_t::_set_glyph_flags\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +479:emscripten_longjmp +480:SkReadBuffer::readScalar\28\29 +481:SkDynamicMemoryWStream::write\28void\20const*\2c\20unsigned\20long\29 +482:GrSurfaceProxy::backingStoreDimensions\28\29\20const +483:GrMeshDrawOp::GrMeshDrawOp\28unsigned\20int\29 +484:FT_RoundFix +485:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +486:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28unsigned\20char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +487:hb_face_get_glyph_count +488:cf2_stack_pushFixed +489:__multi3 +490:SkSL::RP::Builder::push_duplicates\28int\29 +491:SkSL::ConstructorCompound::MakeFromConstants\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20double\20const*\29 +492:SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +493:SkNullBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +494:SkMatrix::postTranslate\28float\2c\20float\29 +495:SkBlockAllocator::reset\28\29 +496:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20SkFilterMode\2c\20SkMipmapMode\29 +497:GrGLSLVaryingHandler::addPassThroughAttribute\28GrShaderVar\20const&\2c\20char\20const*\2c\20GrGLSLVaryingHandler::Interpolation\29 +498:GrFragmentProcessor::registerChild\28std::__2::unique_ptr>\2c\20SkSL::SampleUsage\29 +499:FT_Stream_ReleaseFrame +500:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +501:skia::textlayout::TextStyle::TextStyle\28skia::textlayout::TextStyle\20const&\29 +502:hb_buffer_t::merge_clusters_impl\28unsigned\20int\2c\20unsigned\20int\29 +503:decltype\28fp.sanitize\28this\29\29\20hb_sanitize_context_t::_dispatch\28OT::Layout::Common::Coverage\20const&\2c\20hb_priority<1u>\29 +504:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +505:SkWStream::writePackedUInt\28unsigned\20long\29 +506:SkSurface_Base::aboutToDraw\28SkSurface::ContentChangeMode\29 +507:SkSL::RP::Builder::push_constant_i\28int\2c\20int\29 +508:SkSL::Pool::FreeMemory\28void*\29 +509:SkSL::BreakStatement::~BreakStatement\28\29 +510:SkColorInfo::refColorSpace\28\29\20const +511:SkBitmapDevice::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +512:GrPipeline::visitProxies\28std::__2::function\20const&\29\20const +513:GrGeometryProcessor::GrGeometryProcessor\28GrProcessor::ClassID\29 +514:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +515:SkSL::fold_expression\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +516:SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0::operator\28\29\28SkSL::FunctionDefinition\20const*\2c\20SkSL::FunctionDefinition\20const*\29\20const +517:SkSL::RP::Generator::binaryOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +518:SkPaint::setShader\28sk_sp\29 +519:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b10\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +520:Cr_z_crc32 +521:skia_png_push_save_buffer +522:cosf +523:SkSL::RP::Builder::unary_op\28SkSL::RP::BuilderOp\2c\20int\29 +524:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29 +525:SkBitmap::setImmutable\28\29 +526:GrProcessorSet::visitProxies\28std::__2::function\20const&\29\20const +527:GrGLTexture::target\28\29\20const +528:sk_srgb_singleton\28\29 +529:fma +530:SkString::operator=\28SkString\20const&\29 +531:SkShaderBase::SkShaderBase\28\29 +532:SkSL::RP::SlotManager::getVariableSlots\28SkSL::Variable\20const&\29 +533:SkPaint::SkPaint\28SkPaint&&\29 +534:SkDPoint::ApproximatelyEqual\28SkPoint\20const&\2c\20SkPoint\20const&\29 +535:SkBitmap::SkBitmap\28SkBitmap\20const&\29 +536:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28char\29 +537:skip_spaces +538:sk_realloc_throw\28void*\2c\20unsigned\20long\29 +539:cff2_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +540:cff1_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +541:bool\20OT::Layout::Common::Coverage::collect_coverage\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>>\28hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>*\29\20const +542:SkSL::Type::toCompound\28SkSL::Context\20const&\2c\20int\2c\20int\29\20const +543:SkPath::transform\28SkMatrix\20const&\2c\20SkPath*\2c\20SkApplyPerspectiveClip\29\20const +544:SkPath::quadTo\28float\2c\20float\2c\20float\2c\20float\29 +545:SkMatrix::mapVectors\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +546:SkBlockAllocator::addBlock\28int\2c\20int\29 +547:SkAAClipBlitter::~SkAAClipBlitter\28\29 +548:OT::hb_ot_apply_context_t::match_properties_mark\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +549:GrThreadSafeCache::VertexData::~VertexData\28\29 +550:GrShape::asPath\28SkPath*\2c\20bool\29\20const +551:GrShaderVar::appendDecl\28GrShaderCaps\20const*\2c\20SkString*\29\20const +552:GrPixmapBase::~GrPixmapBase\28\29 +553:GrGLSLVaryingHandler::emitAttributes\28GrGeometryProcessor\20const&\29 +554:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__push_back_slow_path>>\28std::__2::unique_ptr>&&\29 +555:std::__2::unique_ptr::reset\5babi:v160004\5d\28unsigned\20char*\29 +556:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +557:std::__2::basic_string\2c\20std::__2::allocator>::__init_copy_ctor_external\28char\20const*\2c\20unsigned\20long\29 +558:sktext::gpu::BagOfBytes::needMoreBytes\28int\2c\20int\29 +559:skcms_Transform +560:png_icc_profile_error +561:emscripten::smart_ptr_trait>::get\28sk_sp\20const&\29 +562:SkString::equals\28SkString\20const&\29\20const +563:SkSL::evaluate_pairwise_intrinsic\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +564:SkSL::Type::MakeAliasType\28std::__2::basic_string_view>\2c\20SkSL::Type\20const&\29 +565:SkRasterClip::~SkRasterClip\28\29 +566:SkPixmap::reset\28SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +567:SkPath::countPoints\28\29\20const +568:SkPaint::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +569:SkPaint::canComputeFastBounds\28\29\20const +570:SkOpPtT::contains\28SkOpPtT\20const*\29\20const +571:SkOpAngle::segment\28\29\20const +572:SkMatrix::preConcat\28SkMatrix\20const&\29 +573:SkMasks::getRed\28unsigned\20int\29\20const +574:SkMasks::getGreen\28unsigned\20int\29\20const +575:SkMasks::getBlue\28unsigned\20int\29\20const +576:SkColorInfo::shiftPerPixel\28\29\20const +577:GrProcessorSet::~GrProcessorSet\28\29 +578:GrMeshDrawOp::createProgramInfo\28GrMeshDrawTarget*\29 +579:FT_Stream_ReadFields +580:AutoLayerForImageFilter::~AutoLayerForImageFilter\28\29 +581:void\20emscripten::internal::raw_destructor\28GrDirectContext*\29 +582:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +583:skia_private::TArray::push_back\28SkPaint\20const&\29 +584:saveSetjmp +585:operator==\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +586:hb_face_t::load_num_glyphs\28\29\20const +587:fmodf +588:emscripten::internal::MethodInvoker::invoke\28int\20\28SkAnimatedImage::*\20const&\29\28\29\2c\20SkAnimatedImage*\29 +589:VP8GetSignedValue +590:SkSafeMath::Mul\28unsigned\20long\2c\20unsigned\20long\29 +591:SkSL::Type::MakeVectorType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\29 +592:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression\20const&\29 +593:SkRasterPipeline::SkRasterPipeline\28SkArenaAlloc*\29 +594:SkPoint::setLength\28float\29 +595:SkMatrix::postConcat\28SkMatrix\20const&\29 +596:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +597:OT::GDEF::accelerator_t::mark_set_covers\28unsigned\20int\2c\20unsigned\20int\29\20const +598:GrTextureProxy::mipmapped\28\29\20const +599:GrGpuResource::~GrGpuResource\28\29 +600:FT_Stream_GetULong +601:FT_Get_Char_Index +602:Cr_z__tr_flush_bits +603:void\20emscripten::internal::MemberAccess::setWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20int\29 +604:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +605:std::__2::__throw_overflow_error\5babi:v160004\5d\28char\20const*\29 +606:std::__2::__throw_bad_optional_access\5babi:v160004\5d\28\29 +607:sktext::SkStrikePromise::SkStrikePromise\28sktext::SkStrikePromise&&\29 +608:skia_png_chunk_report +609:skgpu::UniqueKey::operator=\28skgpu::UniqueKey\20const&\29 +610:sk_double_nearly_zero\28double\29 +611:int\20emscripten::internal::MemberAccess::getWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +612:hb_font_get_glyph +613:ft_mem_qalloc +614:fit_linear\28skcms_Curve\20const*\2c\20int\2c\20float\2c\20float*\2c\20float*\2c\20float*\29 +615:emscripten::default_smart_ptr_trait>::construct_null\28\29 +616:_output_with_dotted_circle\28hb_buffer_t*\29 +617:WebPSafeMalloc +618:SkStream::readS32\28int*\29 +619:SkSL::GLSLCodeGenerator::getTypeName\28SkSL::Type\20const&\29 +620:SkRGBA4f<\28SkAlphaType\293>::FromColor\28unsigned\20int\29 +621:SkPath::Iter::Iter\28SkPath\20const&\2c\20bool\29 +622:SkPaint::setPathEffect\28sk_sp\29 +623:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_3::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +624:SkImageFilter::getInput\28int\29\20const +625:SkGlyph::rowBytes\28\29\20const +626:SkDrawable::getBounds\28\29 +627:SkDCubic::ptAtT\28double\29\20const +628:SkColorSpace::MakeSRGB\28\29 +629:SkColorInfo::SkColorInfo\28\29 +630:GrOpFlushState::drawMesh\28GrSimpleMesh\20const&\29 +631:GrImageInfo::GrImageInfo\28SkImageInfo\20const&\29 +632:DefaultGeoProc::Impl::~Impl\28\29 +633:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +634:skia_private::THashMap::set\28char\20const*\2c\20unsigned\20int\29 +635:out +636:jpeg_fill_bit_buffer +637:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +638:SkString::data\28\29 +639:SkSL::Type::coerceExpression\28std::__2::unique_ptr>\2c\20SkSL::Context\20const&\29\20const +640:SkSL::Type::MakeGenericType\28char\20const*\2c\20SkSpan\2c\20SkSL::Type\20const*\29 +641:SkSL::ConstantFolder::GetConstantValueForVariable\28SkSL::Expression\20const&\29 +642:SkRegion::setRect\28SkIRect\20const&\29 +643:SkRegion::SkRegion\28\29 +644:SkRecords::FillBounds::adjustForSaveLayerPaints\28SkRect*\2c\20int\29\20const +645:SkPathStroker::lineTo\28SkPoint\20const&\2c\20SkPath::Iter\20const*\29 +646:SkPathRef::~SkPathRef\28\29 +647:SkPaint::setMaskFilter\28sk_sp\29 +648:SkPaint::setColor\28unsigned\20int\29 +649:SkOpContourBuilder::flush\28\29 +650:SkMatrix::setRectToRect\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkMatrix::ScaleToFit\29 +651:SkDrawable::getFlattenableType\28\29\20const +652:SkCanvas::restoreToCount\28int\29 +653:SkCanvas::internalQuickReject\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\29 +654:GrMatrixEffect::Make\28SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +655:std::__2::char_traits::assign\28char&\2c\20char\20const&\29 +656:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +657:std::__2::__check_grouping\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int&\29 +658:skia_png_malloc +659:skgpu::ganesh::SurfaceDrawContext::drawFilledQuad\28GrClip\20const*\2c\20GrPaint&&\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\29 +660:png_write_complete_chunk +661:pad +662:hb_lockable_set_t::fini\28hb_mutex_t&\29 +663:ft_mem_alloc +664:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20SkBlendMode\29 +665:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +666:__ashlti3 +667:SkWBuffer::writeNoSizeCheck\28void\20const*\2c\20unsigned\20long\29 +668:SkTCoincident::setPerp\28SkTCurve\20const&\2c\20double\2c\20SkDPoint\20const&\2c\20SkTCurve\20const&\29 +669:SkStrokeRec::SkStrokeRec\28SkStrokeRec::InitStyle\29 +670:SkString::printf\28char\20const*\2c\20...\29 +671:SkSL::Type::MakeMatrixType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\2c\20signed\20char\29 +672:SkSL::Operator::tightOperatorName\28\29\20const +673:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29 +674:SkReadBuffer::readColor4f\28SkRGBA4f<\28SkAlphaType\293>*\29 +675:SkPixmap::reset\28\29 +676:SkPath::cubicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +677:SkPath::close\28\29 +678:SkPaintToGrPaint\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +679:SkPaint::setColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\29 +680:SkPaint::setBlendMode\28SkBlendMode\29 +681:SkMatrix::mapXY\28float\2c\20float\2c\20SkPoint*\29\20const +682:SkFindUnitQuadRoots\28float\2c\20float\2c\20float\2c\20float*\29 +683:SkDeque::push_back\28\29 +684:SkData::MakeWithCopy\28void\20const*\2c\20unsigned\20long\29 +685:SkCanvas::concat\28SkMatrix\20const&\29 +686:SkBinaryWriteBuffer::writeBool\28bool\29 +687:OT::hb_paint_context_t::return_t\20OT::Paint::dispatch\28OT::hb_paint_context_t*\29\20const +688:GrProgramInfo::GrProgramInfo\28GrCaps\20const&\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrGeometryProcessor\20const*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +689:GrPixmapBase::GrPixmapBase\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +690:GrColorInfo::GrColorInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\29 +691:FT_Outline_Translate +692:FT_Load_Glyph +693:FT_GlyphLoader_CheckPoints +694:DefaultGeoProc::~DefaultGeoProc\28\29 +695:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +696:std::__2::basic_string\2c\20std::__2::allocator>::__set_short_size\5babi:v160004\5d\28unsigned\20long\29 +697:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_size\5babi:v160004\5d\28unsigned\20long\29 +698:skcms_TransferFunction_eval +699:sinf +700:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28GrDirectContext&\2c\20unsigned\20long\29\2c\20GrDirectContext*\2c\20unsigned\20long\29 +701:cbrtf +702:byn$mgfn-shared$std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28\29\20const +703:SkTextBlob::~SkTextBlob\28\29 +704:SkSL::TProgramVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +705:SkRasterPipeline::extend\28SkRasterPipeline\20const&\29 +706:SkPictureData::requiredPaint\28SkReadBuffer*\29\20const +707:SkMatrix::mapRadius\28float\29\20const +708:SkJSONWriter::appendf\28char\20const*\2c\20...\29 +709:SkImageGenerator::onIsValid\28GrRecordingContext*\29\20const +710:SkData::MakeUninitialized\28unsigned\20long\29 +711:SkDQuad::RootsValidT\28double\2c\20double\2c\20double\2c\20double*\29 +712:SkDLine::nearPoint\28SkDPoint\20const&\2c\20bool*\29\20const +713:SkConic::chopIntoQuadsPOW2\28SkPoint*\2c\20int\29\20const +714:SkColorSpaceXformSteps::apply\28float*\29\20const +715:SkCodec::applyColorXform\28void*\2c\20void\20const*\2c\20int\29\20const +716:SkCanvas::~SkCanvas\28\29.1 +717:SkCachedData::internalRef\28bool\29\20const +718:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29 +719:GrSurface::RefCntedReleaseProc::~RefCntedReleaseProc\28\29 +720:GrStyle::initPathEffect\28sk_sp\29 +721:GrShape::bounds\28\29\20const +722:GrProcessor::operator\20delete\28void*\29 +723:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::~Impl\28\29 +724:GrBufferAllocPool::~GrBufferAllocPool\28\29.1 +725:AutoLayerForImageFilter::AutoLayerForImageFilter\28SkCanvas*\2c\20SkPaint\20const&\2c\20SkRect\20const*\2c\20bool\29 +726:uprv_malloc_skia +727:std::__2::numpunct::thousands_sep\5babi:v160004\5d\28\29\20const +728:std::__2::numpunct::grouping\5babi:v160004\5d\28\29\20const +729:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +730:skia_png_malloc_warn +731:skia::textlayout::Cluster::run\28\29\20const +732:rewind\28GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +733:cf2_stack_popInt +734:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29 +735:SkRGBA4f<\28SkAlphaType\293>::toSkColor\28\29\20const +736:SkPaint::setColorFilter\28sk_sp\29 +737:SkMatrixPriv::MapRect\28SkM44\20const&\2c\20SkRect\20const&\29 +738:SkMatrix::preTranslate\28float\2c\20float\29 +739:SkImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +740:SkData::MakeEmpty\28\29 +741:SkConic::computeQuadPOW2\28float\29\20const +742:SkColorInfo::makeColorType\28SkColorType\29\20const +743:SkCodec::~SkCodec\28\29 +744:SkAutoPixmapStorage::~SkAutoPixmapStorage\28\29 +745:SkAAClip::quickContains\28int\2c\20int\2c\20int\2c\20int\29\20const +746:SkAAClip::isRect\28\29\20const +747:GrSurface::ComputeSize\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20bool\29 +748:GrSimpleMeshDrawOpHelper::GrSimpleMeshDrawOpHelper\28GrProcessorSet*\2c\20GrAAType\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +749:GrGeometryProcessor::ProgramImpl::SetTransform\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrResourceHandle\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix*\29 +750:GrDrawingManager::flushIfNecessary\28\29 +751:GrBlendFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkBlendMode\2c\20bool\29 +752:FT_Stream_ExtractFrame +753:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +754:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +755:std::__2::basic_string\2c\20std::__2::allocator>::__is_long\5babi:v160004\5d\28\29\20const +756:skia_png_malloc_base +757:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29 +758:skgpu::ganesh::AsView\28GrRecordingContext*\2c\20SkImage\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +759:sk_sp::~sk_sp\28\29 +760:hb_ot_face_t::init0\28hb_face_t*\29 +761:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::get\28\29\20const +762:__addtf3 +763:SkUTF::NextUTF8\28char\20const**\2c\20char\20const*\29 +764:SkTDStorage::reset\28\29 +765:SkScan::AntiHairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +766:SkSL::RP::Builder::label\28int\29 +767:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +768:SkReadBuffer::skip\28unsigned\20long\2c\20unsigned\20long\29 +769:SkPath::countVerbs\28\29\20const +770:SkMatrix::set9\28float\20const*\29 +771:SkMatrix::getMaxScale\28\29\20const +772:SkImageInfo::computeByteSize\28unsigned\20long\29\20const +773:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +774:SkImageInfo::MakeA8\28int\2c\20int\29 +775:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\2c\20bool\2c\20SkBlitter*\29\20const +776:SkDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +777:SkData::MakeWithProc\28void\20const*\2c\20unsigned\20long\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +778:SkColorTypeIsAlwaysOpaque\28SkColorType\29 +779:SkBlockAllocator::SkBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\2c\20unsigned\20long\29 +780:SkBlender::Mode\28SkBlendMode\29 +781:ReadHuffmanCode +782:GrSurfaceProxy::~GrSurfaceProxy\28\29 +783:GrRenderTask::makeClosed\28GrRecordingContext*\29 +784:GrGpuBuffer::unmap\28\29 +785:GrContext_Base::options\28\29\20const +786:GrCaps::getReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +787:GrBufferAllocPool::reset\28\29 +788:FT_Stream_ReadByte +789:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__emplace_back_slow_path>\28unsigned\20int\20const&\2c\20sk_sp&&\29 +790:std::__2::char_traits::assign\28wchar_t&\2c\20wchar_t\20const&\29 +791:std::__2::char_traits::copy\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +792:std::__2::basic_string\2c\20std::__2::allocator>::begin\5babi:v160004\5d\28\29 +793:std::__2::__next_prime\28unsigned\20long\29 +794:std::__2::__libcpp_snprintf_l\28char*\2c\20unsigned\20long\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +795:snprintf +796:skif::LayerSpace::mapRect\28skif::LayerSpace\20const&\29\20const +797:is_equal\28std::type_info\20const*\2c\20std::type_info\20const*\2c\20bool\29 +798:hb_buffer_t::sync\28\29 +799:__floatsitf +800:WebPSafeCalloc +801:StreamRemainingLengthIsBelow\28SkStream*\2c\20unsigned\20long\29 +802:SkSL::RP::Builder::swizzle\28int\2c\20SkSpan\29 +803:SkSL::Parser::expression\28\29 +804:SkPath::isConvex\28\29\20const +805:SkPaint::asBlendMode\28\29\20const +806:SkImageFilter_Base::getFlattenableType\28\29\20const +807:SkImageFilter_Base::SkImageFilter_Base\28sk_sp\20const*\2c\20int\2c\20std::__2::optional\29 +808:SkIRect::join\28SkIRect\20const&\29 +809:SkIDChangeListener::List::~List\28\29 +810:SkFontMgr::countFamilies\28\29\20const +811:SkDQuad::ptAtT\28double\29\20const +812:SkDLine::exactPoint\28SkDPoint\20const&\29\20const +813:SkDConic::ptAtT\28double\29\20const +814:SkColorInfo::makeAlphaType\28SkAlphaType\29\20const +815:SkCanvas::save\28\29 +816:SkCanvas::drawImage\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +817:SkBitmap::setInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +818:SkAAClip::Builder::addRun\28int\2c\20int\2c\20unsigned\20int\2c\20int\29 +819:GrSkSLFP::addChild\28std::__2::unique_ptr>\2c\20bool\29 +820:GrGpuResource::hasRef\28\29\20const +821:GrGLSLShaderBuilder::appendTextureLookup\28SkString*\2c\20GrResourceHandle\2c\20char\20const*\29\20const +822:GrFragmentProcessor::cloneAndRegisterAllChildProcessors\28GrFragmentProcessor\20const&\29 +823:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::~SwizzleFragmentProcessor\28\29 +824:GrDrawOpAtlas::~GrDrawOpAtlas\28\29 +825:GrBackendFormat::GrBackendFormat\28GrBackendFormat\20const&\29 +826:AutoFTAccess::AutoFTAccess\28SkTypeface_FreeType\20const*\29 +827:AlmostPequalUlps\28float\2c\20float\29 +828:strchr +829:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20char\29\20const +830:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\29 +831:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_cap\5babi:v160004\5d\28unsigned\20long\29 +832:skia_private::TArray::operator=\28skia_private::TArray&&\29 +833:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +834:skia_png_reset_crc +835:memchr +836:hb_buffer_t::sync_so_far\28\29 +837:hb_buffer_t::move_to\28unsigned\20int\29 +838:VP8ExitCritical +839:SkTDStorage::resize\28int\29 +840:SkSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +841:SkStream::readPackedUInt\28unsigned\20long*\29 +842:SkSize\20skif::Mapping::map\28SkSize\20const&\2c\20SkMatrix\20const&\29 +843:SkSL::Type::coercionCost\28SkSL::Type\20const&\29\20const +844:SkSL::Type::clone\28SkSL::SymbolTable*\29\20const +845:SkSL::RP::Generator::writeStatement\28SkSL::Statement\20const&\29 +846:SkSL::Parser::operatorRight\28SkSL::Parser::AutoDepth&\2c\20SkSL::OperatorKind\2c\20std::__2::unique_ptr>\20\28SkSL::Parser::*\29\28\29\2c\20std::__2::unique_ptr>&\29 +847:SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +848:SkResourceCache::Key::init\28void*\2c\20unsigned\20long\20long\2c\20unsigned\20long\29 +849:SkReadBuffer::skip\28unsigned\20long\29 +850:SkReadBuffer::readFlattenable\28SkFlattenable::Type\29 +851:SkRBuffer::read\28void*\2c\20unsigned\20long\29 +852:SkIDChangeListener::List::List\28\29 +853:SkGlyph::path\28\29\20const +854:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\29 +855:GrRenderTargetProxy::arenas\28\29 +856:GrOpFlushState::caps\28\29\20const +857:GrGpuResource::hasNoCommandBufferUsages\28\29\20const +858:GrGeometryProcessor::ProgramImpl::WriteLocalCoord\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20GrShaderVar\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +859:GrGLTextureParameters::SamplerOverriddenState::SamplerOverriddenState\28\29 +860:GrGLGpu::deleteFramebuffer\28unsigned\20int\29 +861:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\29 +862:FT_Stream_ReadULong +863:FT_Get_Module +864:Cr_z__tr_flush_block +865:AlmostBequalUlps\28float\2c\20float\29 +866:uprv_realloc_skia +867:std::__2::numpunct::truename\5babi:v160004\5d\28\29\20const +868:std::__2::moneypunct::do_grouping\28\29\20const +869:std::__2::locale::use_facet\28std::__2::locale::id&\29\20const +870:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29\20const +871:std::__2::basic_string\2c\20std::__2::allocator>::empty\5babi:v160004\5d\28\29\20const +872:skia_private::THashTable\2c\20SkGoodHash>::Entry*\2c\20unsigned\20long\20long\2c\20SkLRUCache\2c\20SkGoodHash>::Traits>::removeSlot\28int\29 +873:skia_png_save_int_32 +874:skia_png_safecat +875:skia_png_gamma_significant +876:skgpu::ganesh::SurfaceContext::readPixels\28GrDirectContext*\2c\20GrPixmap\2c\20SkIPoint\29 +877:hb_lazy_loader_t\2c\20hb_face_t\2c\2026u\2c\20OT::GPOS_accelerator_t>::get\28\29\20const +878:hb_font_get_nominal_glyph +879:hb_buffer_t::clear_output\28\29 +880:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPaint*\29 +881:cff_parse_num +882:SkTSect::SkTSect\28SkTCurve\20const&\29 +883:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20float\29 +884:SkString::set\28char\20const*\2c\20unsigned\20long\29 +885:SkSL::Swizzle::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29 +886:SkSL::String::appendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20...\29 +887:SkSL::Parser::layoutInt\28\29 +888:SkSL::Parser::expectIdentifier\28SkSL::Token*\29 +889:SkRegion::Cliperator::next\28\29 +890:SkRegion::Cliperator::Cliperator\28SkRegion\20const&\2c\20SkIRect\20const&\29 +891:SkRRect::initializeRect\28SkRect\20const&\29 +892:SkPictureRecorder::~SkPictureRecorder\28\29 +893:SkPathRef::CreateEmpty\28\29 +894:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +895:SkPaint::setImageFilter\28sk_sp\29 +896:SkMasks::getAlpha\28unsigned\20int\29\20const +897:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29 +898:SkImageFilter_Base::getChildOutputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +899:SkImageFilter_Base::getChildInputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +900:SkData::MakeFromMalloc\28void\20const*\2c\20unsigned\20long\29 +901:SkDRect::setBounds\28SkTCurve\20const&\29 +902:SkColorFilter::isAlphaUnchanged\28\29\20const +903:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +904:SkCanvas::translate\28float\2c\20float\29 +905:SkBitmapCache::Rec::getKey\28\29\20const +906:PS_Conv_ToFixed +907:OT::hb_ot_apply_context_t::hb_ot_apply_context_t\28unsigned\20int\2c\20hb_font_t*\2c\20hb_buffer_t*\2c\20hb_blob_t*\29 +908:GrTriangulator::Line::intersect\28GrTriangulator::Line\20const&\2c\20SkPoint*\29\20const +909:GrSimpleMeshDrawOpHelper::isCompatible\28GrSimpleMeshDrawOpHelper\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +910:GrQuad::MakeFromSkQuad\28SkPoint\20const*\2c\20SkMatrix\20const&\29 +911:GrOpsRenderPass::bindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +912:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkISize\20const&\29 +913:GrColorInfo::GrColorInfo\28SkColorInfo\20const&\29 +914:AlmostDequalUlps\28double\2c\20double\29 +915:tt_face_get_name +916:std::__2::vector>::size\5babi:v160004\5d\28\29\20const +917:std::__2::to_string\28long\20long\29 +918:std::__2::__libcpp_locale_guard::~__libcpp_locale_guard\5babi:v160004\5d\28\29 +919:std::__2::__libcpp_locale_guard::__libcpp_locale_guard\5babi:v160004\5d\28__locale_struct*&\29 +920:sktext::gpu::GlyphVector::~GlyphVector\28\29 +921:sktext::gpu::GlyphVector::glyphs\28\29\20const +922:skia_png_benign_error +923:skia_png_app_error +924:skgpu::ganesh::SurfaceFillContext::getOpsTask\28\29 +925:isdigit +926:hb_sanitize_context_t::return_t\20OT::Paint::dispatch\28hb_sanitize_context_t*\29\20const +927:hb_ot_layout_lookup_would_substitute +928:hb_buffer_t::unsafe_to_break\28unsigned\20int\2c\20unsigned\20int\29 +929:ft_module_get_service +930:expf +931:emscripten::internal::FunctionInvoker::invoke\28unsigned\20long\20\28**\29\28GrDirectContext&\29\2c\20GrDirectContext*\29 +932:cf2_hintmap_map +933:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +934:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +935:blit_trapezoid_row\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +936:__sindf +937:__shlim +938:__cosdf +939:SkTiffImageFileDirectory::getEntryValuesGeneric\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20int\2c\20void*\29\20const +940:SkSurface::getCanvas\28\29 +941:SkSL::cast_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +942:SkSL::Variable::initialValue\28\29\20const +943:SkSL::SymbolTable::addArrayDimension\28SkSL::Type\20const*\2c\20int\29 +944:SkSL::StringStream::str\28\29\20const +945:SkSL::RP::Program::appendCopy\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20std::byte*\2c\20SkSL::RP::ProgramOp\2c\20unsigned\20int\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29\20const +946:SkSL::RP::Generator::makeLValue\28SkSL::Expression\20const&\2c\20bool\29 +947:SkSL::RP::DynamicIndexLValue::dynamicSlotRange\28\29 +948:SkSL::GLSLCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +949:SkSL::Expression::description\28\29\20const +950:SkSL::Analysis::UpdateVariableRefKind\28SkSL::Expression*\2c\20SkSL::VariableRefKind\2c\20SkSL::ErrorReporter*\29 +951:SkRegion::setEmpty\28\29 +952:SkRasterPipeline::appendLoadDst\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +953:SkRRect::setRectRadii\28SkRect\20const&\2c\20SkPoint\20const*\29 +954:SkRRect::setOval\28SkRect\20const&\29 +955:SkPointPriv::DistanceToLineSegmentBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +956:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +957:SkPath::addPath\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPath::AddPathMode\29 +958:SkPaint::operator=\28SkPaint&&\29 +959:SkOpSpanBase::contains\28SkOpSegment\20const*\29\20const +960:SkMipmap::ComputeLevelCount\28int\2c\20int\29 +961:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint\20const*\2c\20int\29\20const +962:SkImageFilters::Crop\28SkRect\20const&\2c\20SkTileMode\2c\20sk_sp\29 +963:SkImageFilter_Base::getChildOutput\28int\2c\20skif::Context\20const&\29\20const +964:SkIDChangeListener::List::changed\28\29 +965:SkDevice::makeSpecial\28SkBitmap\20const&\29 +966:SkCanvas::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +967:SkAAClipBlitterWrapper::init\28SkRasterClip\20const&\2c\20SkBlitter*\29 +968:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28\29 +969:RunBasedAdditiveBlitter::flush\28\29 +970:GrSurface::onRelease\28\29 +971:GrStyledShape::unstyledKeySize\28\29\20const +972:GrShape::convex\28bool\29\20const +973:GrRecordingContext::threadSafeCache\28\29 +974:GrProxyProvider::caps\28\29\20const +975:GrOp::GrOp\28unsigned\20int\29 +976:GrMakeUncachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +977:GrGLSLShaderBuilder::getMangledFunctionName\28char\20const*\29 +978:GrGLGpu::bindBuffer\28GrGpuBufferType\2c\20GrBuffer\20const*\29 +979:GrGLAttribArrayState::set\28GrGLGpu*\2c\20int\2c\20GrBuffer\20const*\2c\20GrVertexAttribType\2c\20SkSLType\2c\20int\2c\20unsigned\20long\2c\20int\29 +980:GrAAConvexTessellator::Ring::computeNormals\28GrAAConvexTessellator\20const&\29 +981:GrAAConvexTessellator::Ring::computeBisectors\28GrAAConvexTessellator\20const&\29 +982:FT_Activate_Size +983:Cr_z_adler32 +984:vsnprintf +985:void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +986:void\20extend_pts<\28SkPaint::Cap\291>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +987:top12 +988:toSkImageInfo\28SimpleImageInfo\20const&\29 +989:std::__2::pair::type\2c\20std::__2::__unwrap_ref_decay::type>\20std::__2::make_pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +990:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +991:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\2c\20std::__2::allocator>\28char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +992:std::__2::__tree\2c\20std::__2::__map_value_compare\2c\20std::__2::less\2c\20true>\2c\20std::__2::allocator>>::destroy\28std::__2::__tree_node\2c\20void*>*\29 +993:std::__2::__num_put_base::__identify_padding\28char*\2c\20char*\2c\20std::__2::ios_base\20const&\29 +994:std::__2::__num_get_base::__get_base\28std::__2::ios_base&\29 +995:std::__2::__libcpp_asprintf_l\28char**\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +996:skif::RoundOut\28SkRect\29 +997:skia_private::THashMap::operator\5b\5d\28SkSL::Variable\20const*\20const&\29 +998:skia_png_zstream_error +999:skia::textlayout::TextLine::iterateThroughVisualRuns\28bool\2c\20std::__2::function\2c\20float*\29>\20const&\29\20const +1000:skia::textlayout::ParagraphImpl::cluster\28unsigned\20long\29 +1001:skia::textlayout::Cluster::runOrNull\28\29\20const +1002:skgpu::ganesh::SurfaceFillContext::replaceOpsTask\28\29 +1003:skcms_TransferFunction_getType +1004:skcms_GetTagBySignature +1005:read_curve\28unsigned\20char\20const*\2c\20unsigned\20int\2c\20skcms_Curve*\2c\20unsigned\20int*\29 +1006:pow +1007:int\20std::__2::__get_up_to_n_digits\5babi:v160004\5d>>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\2c\20int\29 +1008:int\20std::__2::__get_up_to_n_digits\5babi:v160004\5d>>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\2c\20int\29 +1009:hb_serialize_context_t::pop_pack\28bool\29 +1010:hb_lazy_loader_t\2c\20hb_face_t\2c\206u\2c\20hb_blob_t>::get\28\29\20const +1011:hb_buffer_destroy +1012:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::__wrap_iter\20const&\2c\20std::__2::__wrap_iter\20const&\29 +1013:afm_parser_read_vals +1014:__extenddftf2 +1015:\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1016:\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1017:\28anonymous\20namespace\29::colrv1_transform\28FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\2c\20SkCanvas*\2c\20SkMatrix*\29 +1018:WebPRescalerImport +1019:SkTDStorage::removeShuffle\28int\29 +1020:SkString::SkString\28char\20const*\2c\20unsigned\20long\29 +1021:SkStrikeCache::GlobalStrikeCache\28\29 +1022:SkScan::HairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1023:SkSL::VariableReference::VariableReference\28SkSL::Position\2c\20SkSL::Variable\20const*\2c\20SkSL::VariableRefKind\29 +1024:SkSL::InlineCandidateAnalyzer::visitExpression\28std::__2::unique_ptr>*\29 +1025:SkSL::GLSLCodeGenerator::getTypePrecision\28SkSL::Type\20const&\29 +1026:SkRuntimeEffect::Uniform::sizeInBytes\28\29\20const +1027:SkReadBuffer::readMatrix\28SkMatrix*\29 +1028:SkReadBuffer::readByteArray\28void*\2c\20unsigned\20long\29 +1029:SkReadBuffer::readBool\28\29 +1030:SkRasterPipeline::run\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +1031:SkPictureData::optionalPaint\28SkReadBuffer*\29\20const +1032:SkPathWriter::isClosed\28\29\20const +1033:SkPath::isRect\28SkRect*\2c\20bool*\2c\20SkPathDirection*\29\20const +1034:SkPaint::setStrokeWidth\28float\29 +1035:SkOpSegment::nextChase\28SkOpSpanBase**\2c\20int*\2c\20SkOpSpan**\2c\20SkOpSpanBase**\29\20const +1036:SkOpSegment::addCurveTo\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkPathWriter*\29\20const +1037:SkMatrix::preScale\28float\2c\20float\29 +1038:SkMatrix::postScale\28float\2c\20float\29 +1039:SkMatrix::isSimilarity\28float\29\20const +1040:SkMask::computeImageSize\28\29\20const +1041:SkIntersections::removeOne\28int\29 +1042:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\29 +1043:SkDynamicMemoryWStream::detachAsData\28\29 +1044:SkDLine::ptAtT\28double\29\20const +1045:SkColorSpace::Equals\28SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +1046:SkColorFilter::makeComposed\28sk_sp\29\20const +1047:SkBulkGlyphMetrics::~SkBulkGlyphMetrics\28\29 +1048:SkBitmap::peekPixels\28SkPixmap*\29\20const +1049:SkAutoPixmapStorage::SkAutoPixmapStorage\28\29 +1050:SkAAClip::setEmpty\28\29 +1051:PS_Conv_Strtol +1052:OT::Layout::GSUB_impl::SubstLookup*\20hb_serialize_context_t::push\28\29 +1053:GrTriangulator::makeConnectingEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\2c\20int\29 +1054:GrTextureProxy::~GrTextureProxy\28\29 +1055:GrSimpleMeshDrawOpHelper::createProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +1056:GrResourceAllocator::addInterval\28GrSurfaceProxy*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20GrResourceAllocator::ActualUse\2c\20GrResourceAllocator::AllowRecycling\29 +1057:GrRecordingContextPriv::makeSFCWithFallback\28GrImageInfo\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1058:GrGpuBuffer::updateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +1059:GrGLTextureParameters::NonsamplerState::NonsamplerState\28\29 +1060:GrGLSLShaderBuilder::~GrGLSLShaderBuilder\28\29 +1061:GrGLSLProgramBuilder::nameVariable\28char\2c\20char\20const*\2c\20bool\29 +1062:GrGLGpu::prepareToDraw\28GrPrimitiveType\29 +1063:GrGLFormatFromGLEnum\28unsigned\20int\29 +1064:GrBackendTexture::getBackendFormat\28\29\20const +1065:GrBackendFormats::MakeGL\28unsigned\20int\2c\20unsigned\20int\29 +1066:GrBackendFormatToCompressionType\28GrBackendFormat\20const&\29 +1067:FilterLoop24_C +1068:FT_Stream_Skip +1069:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1070:AAT::Lookup::sanitize\28hb_sanitize_context_t*\29\20const +1071:write_trc_tag\28skcms_Curve\20const&\29 +1072:uprv_free_skia +1073:strcpy +1074:std::__2::time_get>>::get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +1075:std::__2::time_get>>::get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\20const*\2c\20char\20const*\29\20const +1076:std::__2::enable_if::type\20skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::AddTrianglesWhenChopping\2c\20skgpu::tess::DiscardFlatCurves>::writeTriangleStack\28skgpu::tess::MiddleOutPolygonTriangulator::PoppedTriangleStack&&\29 +1077:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +1078:std::__2::char_traits::eq_int_type\28int\2c\20int\29 +1079:std::__2::basic_string\2c\20std::__2::allocator>::__get_long_cap\5babi:v160004\5d\28\29\20const +1080:skif::LayerSpace::ceil\28\29\20const +1081:skia_private::TArray::push_back\28float\20const&\29 +1082:skia_png_write_finish_row +1083:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29 +1084:scalbn +1085:hb_lazy_loader_t\2c\20hb_face_t\2c\2022u\2c\20hb_blob_t>::get\28\29\20const +1086:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::get\28\29\20const +1087:hb_buffer_get_glyph_infos +1088:cff2_path_param_t::line_to\28CFF::point_t\20const&\29 +1089:cff1_path_param_t::line_to\28CFF::point_t\20const&\29 +1090:cf2_stack_getReal +1091:byn$mgfn-shared$GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +1092:antifilldot8\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\2c\20bool\29 +1093:afm_stream_skip_spaces +1094:WebPRescalerInit +1095:WebPRescalerExportRow +1096:SkTextBlobBuilder::allocInternal\28SkFont\20const&\2c\20SkTextBlob::GlyphPositioning\2c\20int\2c\20int\2c\20SkPoint\2c\20SkRect\20const*\29 +1097:SkTDStorage::append\28void\20const*\2c\20int\29 +1098:SkString::Rec::Make\28char\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +1099:SkStrike::digestFor\28skglyph::ActionType\2c\20SkPackedGlyphID\29 +1100:SkShaders::Color\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\29 +1101:SkSafeMath::Add\28unsigned\20long\2c\20unsigned\20long\29 +1102:SkSL::SymbolTable::lookup\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +1103:SkSL::ProgramUsage::get\28SkSL::Variable\20const&\29\20const +1104:SkSL::Parser::assignmentExpression\28\29 +1105:SkSL::Inliner::inlineStatement\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Analysis::ReturnComplexity\2c\20SkSL::Statement\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20bool\29 +1106:SkSL::GLSLCodeGenerator::write\28std::__2::basic_string_view>\29 +1107:SkSL::ConstructorSplat::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1108:SkSL::ConstructorScalarCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1109:SkRuntimeEffectBuilder::writableUniformData\28\29 +1110:SkRuntimeEffect::findUniform\28std::__2::basic_string_view>\29\20const +1111:SkResourceCache::Find\28SkResourceCache::Key\20const&\2c\20bool\20\28*\29\28SkResourceCache::Rec\20const&\2c\20void*\29\2c\20void*\29 +1112:SkRegion::SkRegion\28SkIRect\20const&\29 +1113:SkRect::toQuad\28SkPoint*\29\20const +1114:SkRasterPipeline::appendTransferFunction\28skcms_TransferFunction\20const&\29 +1115:SkRasterPipeline::appendStore\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +1116:SkRasterPipeline::appendConstantColor\28SkArenaAlloc*\2c\20float\20const*\29 +1117:SkRasterClip::SkRasterClip\28\29 +1118:SkRRect::checkCornerContainment\28float\2c\20float\29\20const +1119:SkPictureData::getImage\28SkReadBuffer*\29\20const +1120:SkPathMeasure::getLength\28\29 +1121:SkPathBuilder::~SkPathBuilder\28\29 +1122:SkPathBuilder::detach\28\29 +1123:SkPathBuilder::SkPathBuilder\28\29 +1124:SkPath::getGenerationID\28\29\20const +1125:SkPath::addPoly\28SkPoint\20const*\2c\20int\2c\20bool\29 +1126:SkParse::FindScalars\28char\20const*\2c\20float*\2c\20int\29 +1127:SkPaint::refPathEffect\28\29\20const +1128:SkPaint::operator=\28SkPaint\20const&\29 +1129:SkMipmap::getLevel\28int\2c\20SkMipmap::Level*\29\20const +1130:SkMD5::bytesWritten\28\29\20const +1131:SkJSONWriter::appendCString\28char\20const*\2c\20char\20const*\29 +1132:SkIntersections::setCoincident\28int\29 +1133:SkImageInfo::computeOffset\28int\2c\20int\2c\20unsigned\20long\29\20const +1134:SkImageFilter_Base::flatten\28SkWriteBuffer&\29\20const +1135:SkDrawBase::SkDrawBase\28\29 +1136:SkDLine::NearPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1137:SkDLine::NearPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1138:SkDLine::ExactPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1139:SkDLine::ExactPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1140:SkColorSpaceXformSteps::apply\28SkRasterPipeline*\29\20const +1141:SkColorFilter::filterColor\28unsigned\20int\29\20const +1142:SkColorFilter::asAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +1143:SkCodec::SkCodec\28SkEncodedInfo&&\2c\20skcms_PixelFormat\2c\20std::__2::unique_ptr>\2c\20SkEncodedOrigin\29 +1144:SkCanvas::drawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +1145:SkCanvas::drawColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +1146:SkBulkGlyphMetrics::SkBulkGlyphMetrics\28SkStrikeSpec\20const&\29 +1147:SkBlockMemoryStream::getLength\28\29\20const +1148:SkBlockAllocator::releaseBlock\28SkBlockAllocator::Block*\29 +1149:SkBitmap::asImage\28\29\20const +1150:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1151:OT::MVAR::get_var\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29\20const +1152:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\2c\20bool\2c\20GrProcessorAnalysisCoverage\29 +1153:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20GrCaps\20const&\2c\20float\20const*\29 +1154:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\29 +1155:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1156:GrResourceProvider::findResourceByUniqueKey\28skgpu::UniqueKey\20const&\29 +1157:GrRecordingContext::OwnedArenas::get\28\29 +1158:GrProxyProvider::createProxy\28GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\29 +1159:GrProxyProvider::assignUniqueKeyToProxy\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\29 +1160:GrProcessorSet::finalize\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkRGBA4f<\28SkAlphaType\292>*\29 +1161:GrOpFlushState::allocator\28\29 +1162:GrOp::cutChain\28\29 +1163:GrMeshDrawTarget::makeVertexWriter\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +1164:GrGpuResource::GrGpuResource\28GrGpu*\2c\20std::__2::basic_string_view>\29 +1165:GrGeometryProcessor::TextureSampler::reset\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +1166:GrGeometryProcessor::AttributeSet::end\28\29\20const +1167:GrGeometryProcessor::AttributeSet::Iter::operator++\28\29 +1168:GrGeometryProcessor::AttributeSet::Iter::operator*\28\29\20const +1169:GrGLTextureParameters::set\28GrGLTextureParameters::SamplerOverriddenState\20const*\2c\20GrGLTextureParameters::NonsamplerState\20const&\2c\20unsigned\20long\20long\29 +1170:GrGLSLShaderBuilder::appendTextureLookup\28GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +1171:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29 +1172:GrBackendTexture::~GrBackendTexture\28\29 +1173:FT_Outline_Get_CBox +1174:FT_Get_Sfnt_Table +1175:std::__2::vector>::__destroy_vector::__destroy_vector\28std::__2::vector>&\29 +1176:std::__2::moneypunct::negative_sign\5babi:v160004\5d\28\29\20const +1177:std::__2::moneypunct::neg_format\5babi:v160004\5d\28\29\20const +1178:std::__2::moneypunct::frac_digits\5babi:v160004\5d\28\29\20const +1179:std::__2::moneypunct::do_pos_format\28\29\20const +1180:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +1181:std::__2::char_traits::copy\28wchar_t*\2c\20wchar_t\20const*\2c\20unsigned\20long\29 +1182:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1183:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1184:std::__2::basic_string\2c\20std::__2::allocator>::__set_size\5babi:v160004\5d\28unsigned\20long\29 +1185:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\2c\20unsigned\20long\29 +1186:std::__2::__itoa::__append2\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1187:skif::FilterResult::resolve\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +1188:skia_png_read_finish_row +1189:skia_png_handle_unknown +1190:skia_png_gamma_correct +1191:skia_png_colorspace_sync +1192:skia_png_app_warning +1193:skia::textlayout::TextStyle::operator=\28skia::textlayout::TextStyle\20const&\29 +1194:skia::textlayout::TextLine::offset\28\29\20const +1195:skia::textlayout::Run::placeholderStyle\28\29\20const +1196:skia::textlayout::Cluster::Cluster\28skia::textlayout::ParagraphImpl*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkSpan\2c\20float\2c\20float\29 +1197:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1198:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20SkBackingFit\2c\20SkISize\2c\20SkSurfaceProps\20const&\2c\20std::__2::basic_string_view>\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1199:skgpu::ganesh::SurfaceContext::PixelTransferResult::~PixelTransferResult\28\29 +1200:skgpu::ganesh::ClipStack::SaveRecord::state\28\29\20const +1201:skcms_Matrix3x3_invert +1202:sk_doubles_nearly_equal_ulps\28double\2c\20double\2c\20unsigned\20char\29 +1203:ps_parser_to_token +1204:isspace +1205:hb_face_t::load_upem\28\29\20const +1206:hb_buffer_t::merge_out_clusters\28unsigned\20int\2c\20unsigned\20int\29 +1207:hb_buffer_t::enlarge\28unsigned\20int\29 +1208:hb_buffer_reverse +1209:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint&\29\2c\20SkCanvas*\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint*\29 +1210:cff_index_init +1211:cf2_glyphpath_curveTo +1212:atan2f +1213:WebPCopyPlane +1214:SkTMaskGamma_build_correcting_lut\28unsigned\20char*\2c\20unsigned\20int\2c\20float\2c\20SkColorSpaceLuminance\20const&\2c\20float\2c\20SkColorSpaceLuminance\20const&\2c\20float\29 +1215:SkSurface_Raster::type\28\29\20const +1216:SkString::swap\28SkString&\29 +1217:SkString::reset\28\29 +1218:SkSampler::Fill\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\29 +1219:SkSL::Type::MakeTextureType\28char\20const*\2c\20SpvDim_\2c\20bool\2c\20bool\2c\20bool\2c\20SkSL::Type::TextureAccess\29 +1220:SkSL::Type::MakeSpecialType\28char\20const*\2c\20char\20const*\2c\20SkSL::Type::TypeKind\29 +1221:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Context\20const&\2c\20SkSL::Symbol*\29 +1222:SkSL::RP::Builder::push_slots_or_immutable\28SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +1223:SkSL::RP::Builder::push_clone_from_stack\28SkSL::RP::SlotRange\2c\20int\2c\20int\29 +1224:SkSL::Program::~Program\28\29 +1225:SkSL::PipelineStage::PipelineStageCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1226:SkSL::Operator::isAssignment\28\29\20const +1227:SkSL::InlineCandidateAnalyzer::visitStatement\28std::__2::unique_ptr>*\2c\20bool\29 +1228:SkSL::GLSLCodeGenerator::writeModifiers\28SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20bool\29 +1229:SkSL::ExpressionStatement::Make\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +1230:SkSL::ConstructorCompound::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +1231:SkSL::Analysis::GetReturnComplexity\28SkSL::FunctionDefinition\20const&\29 +1232:SkSL::AliasType::resolve\28\29\20const +1233:SkResourceCache::Add\28SkResourceCache::Rec*\2c\20void*\29 +1234:SkRegion::writeToMemory\28void*\29\20const +1235:SkRect\20skif::Mapping::map\28SkRect\20const&\2c\20SkMatrix\20const&\29 +1236:SkRasterClip::setRect\28SkIRect\20const&\29 +1237:SkRasterClip::SkRasterClip\28SkRasterClip\20const&\29 +1238:SkPathMeasure::~SkPathMeasure\28\29 +1239:SkPathMeasure::SkPathMeasure\28SkPath\20const&\2c\20bool\2c\20float\29 +1240:SkPath::swap\28SkPath&\29 +1241:SkPaint::setAlphaf\28float\29 +1242:SkOpSpan::computeWindSum\28\29 +1243:SkOpSegment::existing\28double\2c\20SkOpSegment\20const*\29\20const +1244:SkOpPtT::find\28SkOpSegment\20const*\29\20const +1245:SkOpCoincidence::addEndMovedSpans\28SkOpSpan\20const*\2c\20SkOpSpanBase\20const*\29 +1246:SkNoDrawCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1247:SkMakeImageFromRasterBitmap\28SkBitmap\20const&\2c\20SkCopyPixelsMode\29 +1248:SkImage_Ganesh::SkImage_Ganesh\28sk_sp\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20SkColorInfo\29 +1249:SkImageInfo::makeColorSpace\28sk_sp\29\20const +1250:SkImage::refColorSpace\28\29\20const +1251:SkGlyph::imageSize\28\29\20const +1252:SkFont::textToGlyphs\28void\20const*\2c\20unsigned\20long\2c\20SkTextEncoding\2c\20unsigned\20short*\2c\20int\29\20const +1253:SkFont::setSubpixel\28bool\29 +1254:SkDraw::SkDraw\28\29 +1255:SkColorTypeBytesPerPixel\28SkColorType\29 +1256:SkChopQuadAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +1257:SkCanvas::drawImageRect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1258:SkBmpCodec::getDstRow\28int\2c\20int\29\20const +1259:SkAutoDescriptor::SkAutoDescriptor\28\29 +1260:OT::DeltaSetIndexMap::sanitize\28hb_sanitize_context_t*\29\20const +1261:OT::ClassDef::sanitize\28hb_sanitize_context_t*\29\20const +1262:GrTriangulator::Comparator::sweep_lt\28SkPoint\20const&\2c\20SkPoint\20const&\29\20const +1263:GrTextureProxy::textureType\28\29\20const +1264:GrSurfaceProxy::createSurfaceImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\29\20const +1265:GrStyledShape::writeUnstyledKey\28unsigned\20int*\29\20const +1266:GrStyledShape::simplify\28\29 +1267:GrSkSLFP::setInput\28std::__2::unique_ptr>\29 +1268:GrSimpleMeshDrawOpHelperWithStencil::GrSimpleMeshDrawOpHelperWithStencil\28GrProcessorSet*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +1269:GrShape::operator=\28GrShape\20const&\29 +1270:GrResourceProvider::createPatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const*\29 +1271:GrRenderTarget::~GrRenderTarget\28\29 +1272:GrRecordingContextPriv::makeSC\28GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1273:GrOpFlushState::detachAppliedClip\28\29 +1274:GrGpuBuffer::map\28\29 +1275:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\29 +1276:GrGLSLShaderBuilder::declAppend\28GrShaderVar\20const&\29 +1277:GrGLGpu::didDrawTo\28GrRenderTarget*\29 +1278:GrFragmentProcessors::Make\28GrRecordingContext*\2c\20SkColorFilter\20const*\2c\20std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1279:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +1280:GrCaps::validateSurfaceParams\28SkISize\20const&\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20GrTextureType\29\20const +1281:GrBufferAllocPool::putBack\28unsigned\20long\29 +1282:GrBlurUtils::GaussianBlur\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20float\2c\20float\2c\20SkTileMode\2c\20SkBackingFit\29::$_0::operator\28\29\28SkIRect\2c\20SkIRect\29\20const +1283:GrAAConvexTessellator::createInsetRing\28GrAAConvexTessellator::Ring\20const&\2c\20GrAAConvexTessellator::Ring*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +1284:FT_Stream_GetByte +1285:FT_Set_Transform +1286:FT_Add_Module +1287:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +1288:AlmostLessOrEqualUlps\28float\2c\20float\29 +1289:ActiveEdge::intersect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29\20const +1290:wrapper_cmp +1291:void\20std::__2::reverse\5babi:v160004\5d\28char*\2c\20char*\29 +1292:void\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__do_rehash\28unsigned\20long\29 +1293:ubidi_getParaLevelAtIndex_skia +1294:tanf +1295:std::__2::vector>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29 +1296:std::__2::vector>::capacity\5babi:v160004\5d\28\29\20const +1297:std::__2::ostreambuf_iterator>\20std::__2::__pad_and_output\5babi:v160004\5d>\28std::__2::ostreambuf_iterator>\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20std::__2::ios_base&\2c\20wchar_t\29 +1298:std::__2::ostreambuf_iterator>\20std::__2::__pad_and_output\5babi:v160004\5d>\28std::__2::ostreambuf_iterator>\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20std::__2::ios_base&\2c\20char\29 +1299:std::__2::char_traits::to_int_type\28char\29 +1300:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1301:std::__2::basic_ios>::setstate\5babi:v160004\5d\28unsigned\20int\29 +1302:std::__2::__compressed_pair_elem::__compressed_pair_elem\5babi:v160004\5d\28void\20\28*&&\29\28void*\29\29 +1303:sktext::StrikeMutationMonitor::~StrikeMutationMonitor\28\29 +1304:sktext::StrikeMutationMonitor::StrikeMutationMonitor\28sktext::StrikeForGPU*\29 +1305:skif::LayerSpace::contains\28skif::LayerSpace\20const&\29\20const +1306:skif::Backend::~Backend\28\29.1 +1307:skia_private::TArray::operator=\28skia_private::TArray&&\29 +1308:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::~STArray\28\29 +1309:skia_png_chunk_unknown_handling +1310:skia::textlayout::TextStyle::TextStyle\28\29 +1311:skia::textlayout::TextLine::iterateThroughSingleRunByStyles\28skia::textlayout::TextLine::TextAdjustment\2c\20skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::StyleType\2c\20std::__2::function\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\20const&\29\20const +1312:skgpu::ganesh::SurfaceFillContext::internalClear\28SkIRect\20const*\2c\20std::__2::array\2c\20bool\29 +1313:skgpu::ganesh::SurfaceDrawContext::fillRectToRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +1314:skgpu::SkSLToBackend\28SkSL::ShaderCaps\20const*\2c\20bool\20\28*\29\28SkSL::Program&\2c\20SkSL::ShaderCaps\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\29\2c\20char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20skgpu::ShaderErrorHandler*\29 +1315:powf +1316:non-virtual\20thunk\20to\20GrOpFlushState::allocator\28\29 +1317:hb_lazy_loader_t\2c\20hb_face_t\2c\2011u\2c\20hb_blob_t>::get\28\29\20const +1318:hb_lazy_loader_t\2c\20hb_face_t\2c\202u\2c\20hb_blob_t>::get\28\29\20const +1319:hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +1320:hb_font_t::scale_glyph_extents\28hb_glyph_extents_t*\29 +1321:hb_font_t::get_glyph_h_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +1322:hb_buffer_append +1323:emscripten::internal::MethodInvoker\29\2c\20void\2c\20SkFont*\2c\20sk_sp>::invoke\28void\20\28SkFont::*\20const&\29\28sk_sp\29\2c\20SkFont*\2c\20sk_sp*\29 +1324:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28\29\29 +1325:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +1326:cos +1327:cf2_glyphpath_lineTo +1328:byn$mgfn-shared$SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +1329:alloc_small +1330:af_latin_hints_compute_segments +1331:_hb_glyph_info_set_unicode_props\28hb_glyph_info_t*\2c\20hb_buffer_t*\29 +1332:__lshrti3 +1333:__letf2 +1334:__cxx_global_array_dtor.3 +1335:SkUTF::ToUTF16\28int\2c\20unsigned\20short*\29 +1336:SkTextBlobBuilder::~SkTextBlobBuilder\28\29 +1337:SkTextBlobBuilder::make\28\29 +1338:SkSurface::makeImageSnapshot\28\29 +1339:SkString::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +1340:SkString::insertUnichar\28unsigned\20long\2c\20int\29 +1341:SkStrikeSpec::findOrCreateScopedStrike\28sktext::StrikeForGPUCacheInterface*\29\20const +1342:SkSpecialImages::MakeDeferredFromGpu\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1343:SkShader::isAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +1344:SkSL::is_constant_value\28SkSL::Expression\20const&\2c\20double\29 +1345:SkSL::compile_and_shrink\28SkSL::Compiler*\2c\20SkSL::ProgramKind\2c\20char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::Module\20const*\29 +1346:SkSL::\28anonymous\20namespace\29::ReturnsOnAllPathsVisitor::visitStatement\28SkSL::Statement\20const&\29 +1347:SkSL::Type::MakeScalarType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type::NumberKind\2c\20signed\20char\2c\20signed\20char\29 +1348:SkSL::RP::Generator::pushBinaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +1349:SkSL::RP::Builder::push_clone\28int\2c\20int\29 +1350:SkSL::ProgramUsage::remove\28SkSL::Statement\20const*\29 +1351:SkSL::Parser::statement\28\29 +1352:SkSL::Operator::determineBinaryType\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Type\20const**\2c\20SkSL::Type\20const**\2c\20SkSL::Type\20const**\29\20const +1353:SkSL::ModifierFlags::description\28\29\20const +1354:SkSL::Layout::paddedDescription\28\29\20const +1355:SkSL::FieldAccess::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +1356:SkSL::ConstructorCompoundCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1357:SkSL::Analysis::IsSameExpressionTree\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1358:SkRectPriv::Subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkIRect*\29 +1359:SkPictureRecorder::SkPictureRecorder\28\29 +1360:SkPictureData::~SkPictureData\28\29 +1361:SkPathMeasure::nextContour\28\29 +1362:SkPathMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29 +1363:SkPathMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29 +1364:SkPathBuilder::lineTo\28SkPoint\29 +1365:SkPath::getPoint\28int\29\20const +1366:SkPath::getLastPt\28SkPoint*\29\20const +1367:SkOpSegment::addT\28double\29 +1368:SkNoPixelsDevice::ClipState&\20skia_private::TArray::emplace_back\28SkIRect&&\2c\20bool&&\2c\20bool&&\29 +1369:SkNextID::ImageID\28\29 +1370:SkMessageBus::Inbox::Inbox\28unsigned\20int\29 +1371:SkImage_Lazy::generator\28\29\20const +1372:SkImage_Base::~SkImage_Base\28\29 +1373:SkImage_Base::SkImage_Base\28SkImageInfo\20const&\2c\20unsigned\20int\29 +1374:SkFont::getWidthsBounds\28unsigned\20short\20const*\2c\20int\2c\20float*\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +1375:SkFont::getMetrics\28SkFontMetrics*\29\20const +1376:SkFont::SkFont\28sk_sp\2c\20float\29 +1377:SkFont::SkFont\28\29 +1378:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20SkRect\20const*\29\20const +1379:SkDevice::setGlobalCTM\28SkM44\20const&\29 +1380:SkDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +1381:SkDescriptor::operator==\28SkDescriptor\20const&\29\20const +1382:SkConvertPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +1383:SkConic::chopAt\28float\2c\20SkConic*\29\20const +1384:SkColorSpace::gammaIsLinear\28\29\20const +1385:SkColorSpace::MakeRGB\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +1386:SkCodec::fillIncompleteImage\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\2c\20int\2c\20int\29 +1387:SkCanvas::saveLayer\28SkRect\20const*\2c\20SkPaint\20const*\29 +1388:SkCanvas::drawPaint\28SkPaint\20const&\29 +1389:SkCanvas::ImageSetEntry::~ImageSetEntry\28\29 +1390:SkBulkGlyphMetrics::glyphs\28SkSpan\29 +1391:SkBlendMode_AsCoeff\28SkBlendMode\2c\20SkBlendModeCoeff*\2c\20SkBlendModeCoeff*\29 +1392:SkBitmap::getGenerationID\28\29\20const +1393:SkArenaAllocWithReset::reset\28\29 +1394:OT::Layout::GPOS_impl::AnchorFormat3::sanitize\28hb_sanitize_context_t*\29\20const +1395:OT::GDEF::get_glyph_props\28unsigned\20int\29\20const +1396:OT::CmapSubtable::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +1397:Ins_UNKNOWN +1398:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\2c\20bool\29 +1399:GrSurfaceProxyView::mipmapped\28\29\20const +1400:GrSurfaceProxy::instantiateImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::UniqueKey\20const*\29 +1401:GrSimpleMeshDrawOpHelperWithStencil::isCompatible\28GrSimpleMeshDrawOpHelperWithStencil\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +1402:GrSimpleMeshDrawOpHelperWithStencil::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1403:GrShape::simplifyRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +1404:GrQuad::projectedBounds\28\29\20const +1405:GrProcessorSet::MakeEmptySet\28\29 +1406:GrPorterDuffXPFactory::SimpleSrcOverXP\28\29 +1407:GrPixmap::Allocate\28GrImageInfo\20const&\29 +1408:GrPathTessellationShader::MakeSimpleTriangleShader\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +1409:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29 +1410:GrImageInfo::operator=\28GrImageInfo&&\29 +1411:GrImageInfo::makeColorType\28GrColorType\29\20const +1412:GrGpuResource::setUniqueKey\28skgpu::UniqueKey\20const&\29 +1413:GrGpuResource::release\28\29 +1414:GrGpuResource::isPurgeable\28\29\20const +1415:GrGeometryProcessor::textureSampler\28int\29\20const +1416:GrGeometryProcessor::AttributeSet::begin\28\29\20const +1417:GrGLSLShaderBuilder::addFeature\28unsigned\20int\2c\20char\20const*\29 +1418:GrGLGpu::clearErrorsAndCheckForOOM\28\29 +1419:GrGLGpu::bindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\2c\20GrGLGpu::TempFBOTarget\29 +1420:GrGLCompileAndAttachShader\28GrGLContext\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20bool\2c\20GrThreadSafePipelineBuilder::Stats*\2c\20skgpu::ShaderErrorHandler*\29 +1421:GrFragmentProcessor::MakeColor\28SkRGBA4f<\28SkAlphaType\292>\29 +1422:GrDirectContextPriv::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +1423:GrDefaultGeoProcFactory::Make\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +1424:GrConvertPixels\28GrPixmap\20const&\2c\20GrCPixmap\20const&\2c\20bool\29 +1425:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +1426:GrColorInfo::GrColorInfo\28\29 +1427:GrBlurUtils::convolve_gaussian_1d\28skgpu::ganesh::SurfaceFillContext*\2c\20GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\2c\20SkIRect\20const&\2c\20SkAlphaType\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\29 +1428:GrBackendTexture::GrBackendTexture\28\29 +1429:GrBackendFormat::operator=\28GrBackendFormat\20const&\29 +1430:FT_Stream_Read +1431:FT_GlyphLoader_Rewind +1432:Cr_z_inflate +1433:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1434:void\20std::__2::__stable_sort\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\2c\20long\29 +1435:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20unsigned\20int*&\2c\20unsigned\20int*&\29 +1436:void\20hb_serialize_context_t::add_link\2c\20true>>\28OT::OffsetTo\2c\20true>&\2c\20unsigned\20int\2c\20hb_serialize_context_t::whence_t\2c\20unsigned\20int\29 +1437:void\20emscripten::internal::MemberAccess::setWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20bool\29 +1438:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +1439:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +1440:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +1441:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +1442:ubidi_setPara_skia +1443:ubidi_close_skia +1444:toupper +1445:top12.2 +1446:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1447:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1448:std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>::_EnableIfConvertible\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot>::type\20std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot>\28skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot*\29\20const +1449:std::__2::ctype::narrow\5babi:v160004\5d\28char\2c\20char\29\20const +1450:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\29 +1451:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1452:std::__2::basic_streambuf>::setg\5babi:v160004\5d\28char*\2c\20char*\2c\20char*\29 +1453:std::__2::basic_ios>::~basic_ios\28\29 +1454:std::__2::__num_get::__stage2_int_loop\28wchar_t\2c\20int\2c\20char*\2c\20char*&\2c\20unsigned\20int&\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20wchar_t\20const*\29 +1455:std::__2::__num_get::__stage2_int_loop\28char\2c\20int\2c\20char*\2c\20char*&\2c\20unsigned\20int&\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20char\20const*\29 +1456:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1457:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1458:src_p\28unsigned\20char\2c\20unsigned\20char\29 +1459:skia_private::TArray::push_back\28skif::FilterResult::Builder::SampledFilterResult&&\29 +1460:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +1461:skia_private::TArray::resize_back\28int\29 +1462:skia_private::TArray::operator=\28skia_private::TArray&&\29 +1463:skia_png_get_valid +1464:skia_png_gamma_8bit_correct +1465:skia_png_free_data +1466:skia_png_chunk_warning +1467:skia::textlayout::TextLine::measureTextInsideOneRun\28skia::textlayout::SkRange\2c\20skia::textlayout::Run\20const*\2c\20float\2c\20float\2c\20bool\2c\20skia::textlayout::TextLine::TextAdjustment\29\20const +1468:skia::textlayout::Run::positionX\28unsigned\20long\29\20const +1469:skia::textlayout::Run::Run\28skia::textlayout::ParagraphImpl*\2c\20SkShaper::RunHandler::RunInfo\20const&\2c\20unsigned\20long\2c\20float\2c\20bool\2c\20float\2c\20unsigned\20long\2c\20float\29 +1470:skia::textlayout::ParagraphCacheKey::operator==\28skia::textlayout::ParagraphCacheKey\20const&\29\20const +1471:skia::textlayout::FontCollection::enableFontFallback\28\29 +1472:skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\294>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\298>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::ReplicateLineEndPoints\2c\20skgpu::tess::TrackJoinControlPoints>::chopAndWriteCubics\28skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20int\29 +1473:skgpu::ganesh::SmallPathAtlasMgr::reset\28\29 +1474:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::vertexSize\28\29\20const +1475:skgpu::ganesh::Device::readSurfaceView\28\29 +1476:skgpu::ganesh::ClipStack::clip\28skgpu::ganesh::ClipStack::RawElement&&\29 +1477:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::RawElement\20const&\29\20const +1478:skgpu::ganesh::ClipStack::RawElement::RawElement\28SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\2c\20SkClipOp\29 +1479:skgpu::TAsyncReadResult::Plane&\20skia_private::TArray::Plane\2c\20false>::emplace_back\2c\20unsigned\20long&>\28sk_sp&&\2c\20unsigned\20long&\29 +1480:skgpu::Swizzle::asString\28\29\20const +1481:skgpu::ScratchKey::GenerateResourceType\28\29 +1482:skgpu::GetBlendFormula\28bool\2c\20bool\2c\20SkBlendMode\29 +1483:skgpu::GetApproxSize\28SkISize\29 +1484:select_curve_ops\28skcms_Curve\20const*\2c\20int\2c\20OpAndArg*\29 +1485:sbrk +1486:ps_tofixedarray +1487:processPropertySeq\28UBiDi*\2c\20LevState*\2c\20unsigned\20char\2c\20int\2c\20int\29 +1488:png_format_buffer +1489:png_check_keyword +1490:nextafterf +1491:jpeg_huff_decode +1492:hb_unicode_funcs_destroy +1493:hb_serialize_context_t::pop_discard\28\29 +1494:hb_buffer_set_flags +1495:hb_blob_create_sub_blob +1496:hb_array_t::hash\28\29\20const +1497:hairquad\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkRect\20const*\2c\20SkRect\20const*\2c\20SkBlitter*\2c\20int\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +1498:haircubic\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkRect\20const*\2c\20SkRect\20const*\2c\20SkBlitter*\2c\20int\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +1499:fmt_u +1500:flush_pending +1501:emscripten::internal::Invoker>::invoke\28sk_sp\20\28*\29\28\29\29 +1502:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\29\2c\20SkPath*\29 +1503:do_fixed +1504:destroy_face +1505:decltype\28fp\28\28SkRecords::NoOp*\29\28nullptr\29\29\29\20SkRecord::Record::mutate\28SkRecord::Destroyer&\29 +1506:char*\20const&\20std::__2::max\5babi:v160004\5d\28char*\20const&\2c\20char*\20const&\29 +1507:cf2_stack_pushInt +1508:cf2_interpT2CharString +1509:cf2_glyphpath_moveTo +1510:byn$mgfn-shared$SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +1511:byn$mgfn-shared$GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +1512:bool\20hb_hashmap_t::set_with_hash\28unsigned\20int\20const&\2c\20unsigned\20int\2c\20unsigned\20int\20const&\2c\20bool\29 +1513:bool\20emscripten::internal::MemberAccess::getWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +1514:_hb_ot_metrics_get_position_common\28hb_font_t*\2c\20hb_ot_metrics_tag_t\2c\20int*\29 +1515:__tandf +1516:__floatunsitf +1517:__cxa_allocate_exception +1518:\28anonymous\20namespace\29::SkBlurImageFilter::~SkBlurImageFilter\28\29 +1519:\28anonymous\20namespace\29::PathGeoBuilder::createMeshAndPutBackReserve\28\29 +1520:\28anonymous\20namespace\29::MeshOp::fixedFunctionFlags\28\29\20const +1521:\28anonymous\20namespace\29::DrawAtlasOpImpl::fixedFunctionFlags\28\29\20const +1522:WebPDemuxGetI +1523:VP8LDoFillBitWindow +1524:VP8LClear +1525:TT_Get_MM_Var +1526:SkWStream::writeScalar\28float\29 +1527:SkUTF::UTF8ToUTF16\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20unsigned\20long\29 +1528:SkTypeface::MakeEmpty\28\29 +1529:SkTSect::BinarySearch\28SkTSect*\2c\20SkTSect*\2c\20SkIntersections*\29 +1530:SkTConic::operator\5b\5d\28int\29\20const +1531:SkTBlockList::reset\28\29 +1532:SkTBlockList::reset\28\29 +1533:SkSurfaces::RenderTarget\28GrRecordingContext*\2c\20skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20int\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const*\2c\20bool\2c\20bool\29 +1534:SkString::insertU32\28unsigned\20long\2c\20unsigned\20int\29 +1535:SkScan::FillRect\28SkRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +1536:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1537:SkSL::optimize_comparison\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20bool\20\28*\29\28double\2c\20double\29\29 +1538:SkSL::Type::convertArraySize\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20long\20long\29\20const +1539:SkSL::RP::Builder::dot_floats\28int\29 +1540:SkSL::ProgramUsage::get\28SkSL::FunctionDeclaration\20const&\29\20const +1541:SkSL::Parser::type\28SkSL::Modifiers*\29 +1542:SkSL::Parser::modifiers\28\29 +1543:SkSL::ConstructorDiagonalMatrix::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1544:SkSL::ConstructorArrayCast::~ConstructorArrayCast\28\29 +1545:SkSL::ConstantFolder::MakeConstantValueForVariable\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1546:SkSL::Compiler::~Compiler\28\29 +1547:SkSL::Block::Make\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::shared_ptr\29 +1548:SkSL::Analysis::IsTrivialExpression\28SkSL::Expression\20const&\29 +1549:SkRuntimeEffectPriv::CanDraw\28SkCapabilities\20const*\2c\20SkRuntimeEffect\20const*\29 +1550:SkRegion::setPath\28SkPath\20const&\2c\20SkRegion\20const&\29 +1551:SkRegion::operator=\28SkRegion\20const&\29 +1552:SkRegion::op\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\29 +1553:SkRegion::Iterator::next\28\29 +1554:SkRasterPipeline::compile\28\29\20const +1555:SkRasterPipeline::appendClampIfNormalized\28SkImageInfo\20const&\29 +1556:SkRRect::transform\28SkMatrix\20const&\2c\20SkRRect*\29\20const +1557:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20SkBBHFactory*\29 +1558:SkPathWriter::finishContour\28\29 +1559:SkPathStroker::cubicPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +1560:SkPath::getSegmentMasks\28\29\20const +1561:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\29 +1562:SkPaintPriv::ComputeLuminanceColor\28SkPaint\20const&\29 +1563:SkPaint::setBlender\28sk_sp\29 +1564:SkPaint::nothingToDraw\28\29\20const +1565:SkPaint::isSrcOver\28\29\20const +1566:SkOpAngle::linesOnOriginalSide\28SkOpAngle\20const*\29 +1567:SkNotifyBitmapGenIDIsStale\28unsigned\20int\29 +1568:SkNoDrawCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +1569:SkMipmap::Build\28SkPixmap\20const&\2c\20SkDiscardableMemory*\20\28*\29\28unsigned\20long\29\2c\20bool\29 +1570:SkMeshSpecification::~SkMeshSpecification\28\29 +1571:SkMatrix::setSinCos\28float\2c\20float\2c\20float\2c\20float\29 +1572:SkMatrix::setRSXform\28SkRSXform\20const&\29 +1573:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint3\20const*\2c\20int\29\20const +1574:SkMatrix::decomposeScale\28SkSize*\2c\20SkMatrix*\29\20const +1575:SkMaskBuilder::AllocImage\28unsigned\20long\2c\20SkMaskBuilder::AllocType\29 +1576:SkIntersections::insertNear\28double\2c\20double\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29 +1577:SkIntersections::flip\28\29 +1578:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +1579:SkImageFilter_Base::~SkImageFilter_Base\28\29 +1580:SkImage::isAlphaOnly\28\29\20const +1581:SkGlyph::drawable\28\29\20const +1582:SkFont::unicharToGlyph\28int\29\20const +1583:SkFont::setTypeface\28sk_sp\29 +1584:SkFont::setHinting\28SkFontHinting\29 +1585:SkFindQuadMaxCurvature\28SkPoint\20const*\29 +1586:SkEvalCubicAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29 +1587:SkDrawTiler::stepAndSetupTileDraw\28\29 +1588:SkDrawTiler::SkDrawTiler\28SkBitmapDevice*\2c\20SkRect\20const*\29 +1589:SkDevice::accessPixels\28SkPixmap*\29 +1590:SkDeque::SkDeque\28unsigned\20long\2c\20void*\2c\20unsigned\20long\2c\20int\29 +1591:SkDCubic::FindExtrema\28double\20const*\2c\20double*\29 +1592:SkColorFilters::Blend\28unsigned\20int\2c\20SkBlendMode\29 +1593:SkCanvas::internalRestore\28\29 +1594:SkCanvas::init\28sk_sp\29 +1595:SkCanvas::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +1596:SkCanvas::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +1597:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\2c\20SkEnumBitMask\29 +1598:SkBitmap::operator=\28SkBitmap&&\29 +1599:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29 +1600:SkAAClip::SkAAClip\28\29 +1601:OT::glyf_accelerator_t::glyf_accelerator_t\28hb_face_t*\29 +1602:OT::VariationStore::sanitize\28hb_sanitize_context_t*\29\20const +1603:OT::Layout::GPOS_impl::ValueFormat::sanitize_value_devices\28hb_sanitize_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\29\20const +1604:OT::Layout::GPOS_impl::ValueFormat::apply_value\28OT::hb_ot_apply_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\2c\20hb_glyph_position_t&\29\20const +1605:OT::HVARVVAR::sanitize\28hb_sanitize_context_t*\29\20const +1606:GrTriangulator::VertexList::insert\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\29 +1607:GrTriangulator::Poly::addEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20GrTriangulator*\29 +1608:GrTriangulator::EdgeList::remove\28GrTriangulator::Edge*\29 +1609:GrStyledShape::operator=\28GrStyledShape\20const&\29 +1610:GrSimpleMeshDrawOpHelperWithStencil::createProgramInfoWithStencil\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +1611:GrResourceCache::purgeAsNeeded\28\29 +1612:GrRenderTask::addDependency\28GrDrawingManager*\2c\20GrSurfaceProxy*\2c\20skgpu::Mipmapped\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +1613:GrRenderTask::GrRenderTask\28\29 +1614:GrRenderTarget::onRelease\28\29 +1615:GrProxyProvider::findOrCreateProxyByUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxy::UseAllocator\29 +1616:GrProcessorSet::operator==\28GrProcessorSet\20const&\29\20const +1617:GrPathUtils::generateQuadraticPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +1618:GrMeshDrawOp::QuadHelper::QuadHelper\28GrMeshDrawTarget*\2c\20unsigned\20long\2c\20int\29 +1619:GrIsStrokeHairlineOrEquivalent\28GrStyle\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +1620:GrImageContext::abandoned\28\29 +1621:GrGpuResource::registerWithCache\28skgpu::Budgeted\29 +1622:GrGpuBuffer::isMapped\28\29\20const +1623:GrGpu::submitToGpu\28GrSyncCpu\29 +1624:GrGpu::didWriteToSurface\28GrSurface*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const*\2c\20unsigned\20int\29\20const +1625:GrGeometryProcessor::ProgramImpl::setupUniformColor\28GrGLSLFPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20GrResourceHandle*\29 +1626:GrGLGpu::flushRenderTarget\28GrGLRenderTarget*\2c\20bool\29 +1627:GrFragmentProcessor::visitTextureEffects\28std::__2::function\20const&\29\20const +1628:GrFragmentProcessor::visitProxies\28std::__2::function\20const&\29\20const +1629:GrCpuBuffer::ref\28\29\20const +1630:GrBufferAllocPool::makeSpace\28unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\29 +1631:GrBackendTextures::GetGLTextureInfo\28GrBackendTexture\20const&\2c\20GrGLTextureInfo*\29 +1632:FilterLoop26_C +1633:FT_Vector_Transform +1634:FT_Vector_NormLen +1635:FT_Outline_Transform +1636:FT_Done_Face +1637:CFF::dict_opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1638:AlmostBetweenUlps\28float\2c\20float\2c\20float\29 +1639:void\20std::__2::vector>::__emplace_back_slow_path\28skia::textlayout::OneLineShaper::RunBlock&\29 +1640:ubidi_getMemory_skia +1641:transform\28unsigned\20int*\2c\20unsigned\20char\20const*\29 +1642:strcspn +1643:std::__2::vector>::__append\28unsigned\20long\29 +1644:std::__2::unique_ptr>\20SkSL::coalesce_pairwise_vectors\28std::__2::array\20const&\2c\20double\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\2c\20double\20\28*\29\28double\29\29 +1645:std::__2::locale::locale\28std::__2::locale\20const&\29 +1646:std::__2::locale::classic\28\29 +1647:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +1648:std::__2::chrono::__libcpp_steady_clock_now\28\29 +1649:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by_and_replace\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20char\20const*\29 +1650:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +1651:std::__2::basic_streambuf>::~basic_streambuf\28\29 +1652:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1653:std::__2::__wrap_iter\20std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float\20const*\2c\20float\20const*\29 +1654:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1655:std::__2::__throw_bad_variant_access\5babi:v160004\5d\28\29 +1656:std::__2::__split_buffer>::push_front\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +1657:std::__2::__shared_count::__release_shared\5babi:v160004\5d\28\29 +1658:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20wchar_t&\29 +1659:std::__2::__num_get::__do_widen\28std::__2::ios_base&\2c\20wchar_t*\29\20const +1660:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20char&\29 +1661:std::__2::__itoa::__append1\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1662:sktext::gpu::VertexFiller::vertexStride\28SkMatrix\20const&\29\20const +1663:skif::\28anonymous\20namespace\29::AutoSurface::snap\28\29 +1664:skif::\28anonymous\20namespace\29::AutoSurface::AutoSurface\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20bool\2c\20SkSurfaceProps\20const*\29 +1665:skif::Mapping::adjustLayerSpace\28SkMatrix\20const&\29 +1666:skif::LayerSpace::round\28\29\20const +1667:skif::FilterResult::analyzeBounds\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20bool\29\20const +1668:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair&&\29 +1669:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::UniqueKey\20const&\29 +1670:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +1671:skia_private::TArray::resize_back\28int\29 +1672:skia_private::TArray::push_back_raw\28int\29 +1673:skia_png_sig_cmp +1674:skia_png_set_progressive_read_fn +1675:skia_png_set_longjmp_fn +1676:skia_png_set_interlace_handling +1677:skia_png_reciprocal +1678:skia_png_read_chunk_header +1679:skia_png_get_io_ptr +1680:skia_png_calloc +1681:skia::textlayout::TextLine::~TextLine\28\29 +1682:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle\20const&\29 +1683:skia::textlayout::ParagraphCacheKey::~ParagraphCacheKey\28\29 +1684:skia::textlayout::FontCollection::findTypefaces\28std::__2::vector>\20const&\2c\20SkFontStyle\2c\20std::__2::optional\20const&\29 +1685:skia::textlayout::Cluster::trimmedWidth\28unsigned\20long\29\20const +1686:skgpu::ganesh::TextureOp::BatchSizeLimiter::createOp\28GrTextureSetEntry*\2c\20int\2c\20GrAAType\29 +1687:skgpu::ganesh::SurfaceFillContext::fillWithFP\28std::__2::unique_ptr>\29 +1688:skgpu::ganesh::SurfaceDrawContext::drawShapeUsingPathRenderer\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\2c\20bool\29 +1689:skgpu::ganesh::SurfaceDrawContext::drawRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const*\29 +1690:skgpu::ganesh::SurfaceDrawContext::drawRRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20GrStyle\20const&\29 +1691:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29 +1692:skgpu::ganesh::QuadPerEdgeAA::CalcIndexBufferOption\28GrAAType\2c\20int\29 +1693:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrSurfaceProxyView\20const&\29\20const +1694:skgpu::ganesh::Device::targetProxy\28\29 +1695:skgpu::ganesh::ClipStack::getConservativeBounds\28\29\20const +1696:skgpu::TAsyncReadResult::addTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult\20const&\2c\20SkISize\2c\20unsigned\20long\2c\20skgpu::TClientMappedBufferManager*\29 +1697:skgpu::Plot::resetRects\28\29 +1698:skcms_TransferFunction_isPQish +1699:skcms_TransferFunction_invert +1700:skcms_Matrix3x3_concat +1701:ps_dimension_add_t1stem +1702:log2f +1703:log +1704:jcopy_sample_rows +1705:hb_font_t::has_func\28unsigned\20int\29 +1706:hb_buffer_create_similar +1707:getenv +1708:ft_service_list_lookup +1709:fseek +1710:fiprintf +1711:fflush +1712:expm1 +1713:emscripten::internal::MethodInvoker::invoke\28void\20\28GrDirectContext::*\20const&\29\28\29\2c\20GrDirectContext*\29 +1714:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +1715:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFont&\29\2c\20SkFont*\29 +1716:do_putc +1717:crc32_z +1718:cf2_hintmap_insertHint +1719:cf2_hintmap_build +1720:cf2_glyphpath_pushPrevElem +1721:byn$mgfn-shared$std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +1722:byn$mgfn-shared$std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +1723:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +1724:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +1725:byn$mgfn-shared$skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +1726:byn$mgfn-shared$skif::Backend::~Backend\28\29.1 +1727:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +1728:append_multitexture_lookup\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20GrGLSLVarying\20const&\2c\20char\20const*\2c\20char\20const*\29 +1729:afm_stream_read_one +1730:af_latin_hints_link_segments +1731:af_latin_compute_stem_width +1732:af_glyph_hints_reload +1733:acosf +1734:__wasi_syscall_ret +1735:__syscall_ret +1736:__sin +1737:__cos +1738:VP8LHuffmanTablesDeallocate +1739:SkWriter32::writeSampling\28SkSamplingOptions\20const&\29 +1740:SkVertices::Builder::detach\28\29 +1741:SkUTF::NextUTF8WithReplacement\28char\20const**\2c\20char\20const*\29 +1742:SkTypeface_FreeType::~SkTypeface_FreeType\28\29 +1743:SkTypeface_FreeType::FaceRec::~FaceRec\28\29 +1744:SkTypeface::SkTypeface\28SkFontStyle\20const&\2c\20bool\29 +1745:SkTreatAsSprite\28SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkSamplingOptions\20const&\2c\20bool\29 +1746:SkTextBlobBuilder::TightRunBounds\28SkTextBlob::RunRecord\20const&\29 +1747:SkTextBlob::RunRecord::textSizePtr\28\29\20const +1748:SkTMultiMap::remove\28skgpu::ScratchKey\20const&\2c\20GrGpuResource\20const*\29 +1749:SkTMultiMap::insert\28skgpu::ScratchKey\20const&\2c\20GrGpuResource*\29 +1750:SkTDStorage::insert\28int\2c\20int\2c\20void\20const*\29 +1751:SkTDPQueue<\28anonymous\20namespace\29::RunIteratorQueue::Entry\2c\20&\28anonymous\20namespace\29::RunIteratorQueue::CompareEntry\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29\2c\20\28int*\20\28*\29\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29\290>::insert\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\29 +1752:SkSwizzler::Make\28SkEncodedInfo\20const&\2c\20unsigned\20int\20const*\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20SkIRect\20const*\29 +1753:SkSurface_Base::~SkSurface_Base\28\29 +1754:SkSurfaceProps::SkSurfaceProps\28unsigned\20int\2c\20SkPixelGeometry\29 +1755:SkSurface::recordingContext\28\29\20const +1756:SkString::resize\28unsigned\20long\29 +1757:SkStrikeSpec::SkStrikeSpec\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1758:SkStrikeSpec::MakeMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1759:SkStrikeSpec::MakeCanonicalized\28SkFont\20const&\2c\20SkPaint\20const*\29 +1760:SkStrikeCache::findOrCreateStrike\28SkStrikeSpec\20const&\29 +1761:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +1762:SkShaders::MatrixRec::applyForFragmentProcessor\28SkMatrix\20const&\29\20const +1763:SkShaders::MatrixRec::MatrixRec\28SkMatrix\20const&\29 +1764:SkShaders::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +1765:SkScan::FillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\29 +1766:SkScalerContext_FreeType::emboldenIfNeeded\28FT_FaceRec_*\2c\20FT_GlyphSlotRec_*\2c\20unsigned\20short\29 +1767:SkSL::Type::displayName\28\29\20const +1768:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20double\2c\20SkSL::Position\29\20const +1769:SkSL::ThreadContext::SetErrorReporter\28SkSL::ErrorReporter*\29 +1770:SkSL::SymbolTable::find\28std::__2::basic_string_view>\29\20const +1771:SkSL::String::Separator\28\29::Output::~Output\28\29 +1772:SkSL::RP::SlotManager::addSlotDebugInfoForGroup\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20int*\2c\20bool\29 +1773:SkSL::RP::Generator::foldComparisonOp\28SkSL::Operator\2c\20int\29 +1774:SkSL::RP::Builder::branch_if_no_lanes_active\28int\29 +1775:SkSL::PrefixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +1776:SkSL::PipelineStage::PipelineStageCodeGenerator::typedVariable\28SkSL::Type\20const&\2c\20std::__2::basic_string_view>\29 +1777:SkSL::Parser::parseArrayDimensions\28SkSL::Position\2c\20SkSL::Type\20const**\29 +1778:SkSL::Parser::arraySize\28long\20long*\29 +1779:SkSL::Operator::operatorName\28\29\20const +1780:SkSL::ModifierFlags::paddedDescription\28\29\20const +1781:SkSL::ConstantFolder::GetConstantValue\28SkSL::Expression\20const&\2c\20double*\29 +1782:SkSL::ConstantFolder::GetConstantInt\28SkSL::Expression\20const&\2c\20long\20long*\29 +1783:SkSL::Compiler::Compiler\28\29 +1784:SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +1785:SkResourceCache::remove\28SkResourceCache::Rec*\29 +1786:SkRegion::op\28SkRegion\20const&\2c\20SkIRect\20const&\2c\20SkRegion::Op\29 +1787:SkRegion::Iterator::Iterator\28SkRegion\20const&\29 +1788:SkRecords::FillBounds::bounds\28SkRecords::DrawArc\20const&\29\20const +1789:SkReadBuffer::setMemory\28void\20const*\2c\20unsigned\20long\29 +1790:SkRasterClip::SkRasterClip\28SkIRect\20const&\29 +1791:SkRRect::writeToMemory\28void*\29\20const +1792:SkRRect::setRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +1793:SkPointPriv::DistanceToLineBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPointPriv::Side*\29 +1794:SkPoint::setNormalize\28float\2c\20float\29 +1795:SkPictureRecorder::finishRecordingAsPicture\28\29 +1796:SkPathPriv::ComputeFirstDirection\28SkPath\20const&\29 +1797:SkPathEffect::asADash\28SkPathEffect::DashInfo*\29\20const +1798:SkPathEdgeIter::SkPathEdgeIter\28SkPath\20const&\29 +1799:SkPath::rewind\28\29 +1800:SkPath::isLine\28SkPoint*\29\20const +1801:SkPath::incReserve\28int\29 +1802:SkPath::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +1803:SkPaint::setStrokeCap\28SkPaint::Cap\29 +1804:SkPaint::refShader\28\29\20const +1805:SkOpSpan::setWindSum\28int\29 +1806:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20int\2c\20SkOpSpanBase**\29 +1807:SkOpContourBuilder::addCurve\28SkPath::Verb\2c\20SkPoint\20const*\2c\20float\29 +1808:SkOpAngle::starter\28\29 +1809:SkOpAngle::insert\28SkOpAngle*\29 +1810:SkNoDestructor::SkNoDestructor\28SkSL::String::Separator\28\29::Output&&\29 +1811:SkMatrix::setSinCos\28float\2c\20float\29 +1812:SkMaskFilterBase::getFlattenableType\28\29\20const +1813:SkMaskFilter::MakeBlur\28SkBlurStyle\2c\20float\2c\20bool\29 +1814:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29 +1815:SkLineClipper::IntersectLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\29 +1816:SkImage_GaneshBase::SkImage_GaneshBase\28sk_sp\2c\20SkImageInfo\2c\20unsigned\20int\29 +1817:SkImageFilters::Empty\28\29 +1818:SkImageFilters::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +1819:SkImage::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +1820:SkImage::makeRasterImage\28GrDirectContext*\2c\20SkImage::CachingHint\29\20const +1821:SkIDChangeListener::SkIDChangeListener\28\29 +1822:SkIDChangeListener::List::reset\28\29 +1823:SkGradientBaseShader::flatten\28SkWriteBuffer&\29\20const +1824:SkFont::setEdging\28SkFont::Edging\29 +1825:SkEvalQuadAt\28SkPoint\20const*\2c\20float\29 +1826:SkEdgeClipper::next\28SkPoint*\29 +1827:SkDevice::scalerContextFlags\28\29\20const +1828:SkConic::evalAt\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +1829:SkColorInfo::SkColorInfo\28SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +1830:SkCodec::skipScanlines\28int\29 +1831:SkCodec::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +1832:SkChopCubicAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +1833:SkCapabilities::RasterBackend\28\29 +1834:SkCanvas::saveLayer\28SkCanvas::SaveLayerRec\20const&\29 +1835:SkCanvas::restore\28\29 +1836:SkCanvas::imageInfo\28\29\20const +1837:SkCanvas::drawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +1838:SkCanvas::drawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +1839:SkCanvas::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +1840:SkBmpBaseCodec::~SkBmpBaseCodec\28\29 +1841:SkBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +1842:SkBlendMode\20SkReadBuffer::read32LE\28SkBlendMode\29 +1843:SkBitmap::operator=\28SkBitmap\20const&\29 +1844:SkBitmap::extractSubset\28SkBitmap*\2c\20SkIRect\20const&\29\20const +1845:SkBinaryWriteBuffer::writeByteArray\28void\20const*\2c\20unsigned\20long\29 +1846:SkBinaryWriteBuffer::SkBinaryWriteBuffer\28SkSerialProcs\20const&\29 +1847:SkBaseShadowTessellator::handleLine\28SkPoint\20const&\29 +1848:SkAutoPixmapStorage::tryAlloc\28SkImageInfo\20const&\29 +1849:SkAutoDescriptor::~SkAutoDescriptor\28\29 +1850:SkAAClip::setRegion\28SkRegion\20const&\29 +1851:R +1852:OT::hb_ot_apply_context_t::_set_glyph_class\28unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +1853:OT::cmap::find_subtable\28unsigned\20int\2c\20unsigned\20int\29\20const +1854:GrXPFactory::FromBlendMode\28SkBlendMode\29 +1855:GrTriangulator::setBottom\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +1856:GrTriangulator::mergeCollinearEdges\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +1857:GrTriangulator::Edge::disconnect\28\29 +1858:GrThreadSafeCache::find\28skgpu::UniqueKey\20const&\29 +1859:GrThreadSafeCache::add\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +1860:GrThreadSafeCache::Entry::makeEmpty\28\29 +1861:GrSurfaceProxyView::operator==\28GrSurfaceProxyView\20const&\29\20const +1862:GrSurfaceProxyView::Copy\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\29 +1863:GrSurfaceProxyPriv::doLazyInstantiation\28GrResourceProvider*\29 +1864:GrSurfaceProxy::isFunctionallyExact\28\29\20const +1865:GrSurfaceProxy::Copy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\2c\20sk_sp*\29 +1866:GrSimpleMeshDrawOpHelperWithStencil::fixedFunctionFlags\28\29\20const +1867:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20GrProcessorAnalysisColor*\29 +1868:GrSimpleMeshDrawOpHelper::CreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrProcessorSet&&\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\2c\20GrPipeline::InputFlags\2c\20GrUserStencilSettings\20const*\29 +1869:GrSimpleMeshDrawOpHelper::CreatePipeline\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20skgpu::Swizzle\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrProcessorSet&&\2c\20GrPipeline::InputFlags\29 +1870:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20void\20const*\2c\20skgpu::UniqueKey\20const&\29 +1871:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20skgpu::UniqueKey\20const&\2c\20void\20\28*\29\28skgpu::VertexWriter\2c\20unsigned\20long\29\29 +1872:GrResourceCache::findAndRefScratchResource\28skgpu::ScratchKey\20const&\29 +1873:GrRecordingContextPriv::makeSFC\28GrImageInfo\2c\20std::__2::basic_string_view>\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1874:GrQuadUtils::TessellationHelper::Vertices::moveAlong\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1875:GrQuad::asRect\28SkRect*\29\20const +1876:GrProcessorSet::GrProcessorSet\28GrProcessorSet&&\29 +1877:GrPathUtils::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +1878:GrGpu::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +1879:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +1880:GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +1881:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +1882:GrGLSLColorSpaceXformHelper::emitCode\28GrGLSLUniformHandler*\2c\20GrColorSpaceXform\20const*\2c\20unsigned\20int\29 +1883:GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +1884:GrGLRenderTarget::bindInternal\28unsigned\20int\2c\20bool\29 +1885:GrGLGpu::getErrorAndCheckForOOM\28\29 +1886:GrGLGpu::bindTexture\28int\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20GrGLTexture*\29 +1887:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkMatrix\20const&\29 +1888:GrFragmentProcessor::visitWithImpls\28std::__2::function\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\20const +1889:GrFragmentProcessor::ColorMatrix\28std::__2::unique_ptr>\2c\20float\20const*\2c\20bool\2c\20bool\2c\20bool\29 +1890:GrDrawingManager::appendTask\28sk_sp\29 +1891:GrColorInfo::GrColorInfo\28GrColorInfo\20const&\29 +1892:GrCaps::isFormatCompressed\28GrBackendFormat\20const&\29\20const +1893:GrAAConvexTessellator::lineTo\28SkPoint\20const&\2c\20GrAAConvexTessellator::CurveState\29 +1894:FT_Select_Metrics +1895:FT_Select_Charmap +1896:FT_Get_Next_Char +1897:FT_Get_Module_Interface +1898:FT_Done_Size +1899:DecodeImageStream +1900:CFF::opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1901:CFF::Charset::get_glyph\28unsigned\20int\2c\20unsigned\20int\29\20const +1902:wuffs_gif__decoder__num_decoded_frames +1903:void\20std::__2::vector\2c\20std::__2::allocator>>::__push_back_slow_path\20const&>\28sk_sp\20const&\29 +1904:void\20std::__2::reverse\5babi:v160004\5d\28wchar_t*\2c\20wchar_t*\29 +1905:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.2 +1906:void\20merge_sort<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +1907:void\20merge_sort<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +1908:void\20emscripten::internal::MemberAccess::setWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts&\2c\20float\29 +1909:validate_offsetToRestore\28SkReadBuffer*\2c\20unsigned\20long\29 +1910:ubidi_getVisualRun_skia +1911:ubidi_getRuns_skia +1912:ubidi_getClass_skia +1913:tt_set_mm_blend +1914:tt_face_get_ps_name +1915:trinkle +1916:std::__2::unique_ptr::release\5babi:v160004\5d\28\29 +1917:std::__2::pair\2c\20void*>*>\2c\20bool>\20std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::__emplace_unique_key_args\2c\20std::__2::tuple<>>\28GrTriangulator::Vertex*\20const&\2c\20std::__2::piecewise_construct_t\20const&\2c\20std::__2::tuple&&\2c\20std::__2::tuple<>&&\29 +1918:std::__2::pair::pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +1919:std::__2::moneypunct::do_decimal_point\28\29\20const +1920:std::__2::moneypunct::do_decimal_point\28\29\20const +1921:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28std::__2::basic_istream>&\29 +1922:std::__2::ios_base::good\5babi:v160004\5d\28\29\20const +1923:std::__2::ctype::toupper\5babi:v160004\5d\28char\29\20const +1924:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +1925:std::__2::basic_string\2c\20std::__2::allocator>\20const*\20std::__2::__scan_keyword\5babi:v160004\5d>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype\20const&\2c\20unsigned\20int&\2c\20bool\29 +1926:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +1927:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +1928:std::__2::basic_string\2c\20std::__2::allocator>\20const*\20std::__2::__scan_keyword\5babi:v160004\5d>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype\20const&\2c\20unsigned\20int&\2c\20bool\29 +1929:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +1930:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +1931:std::__2::basic_string\2c\20std::__2::allocator>::__get_short_size\5babi:v160004\5d\28\29\20const +1932:std::__2::basic_string\2c\20std::__2::allocator>&\20std::__2::basic_string\2c\20std::__2::allocator>::__assign_no_alias\28char\20const*\2c\20unsigned\20long\29 +1933:std::__2::basic_streambuf>::__pbump\5babi:v160004\5d\28long\29 +1934:std::__2::basic_iostream>::~basic_iostream\28\29.1 +1935:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20wchar_t*\2c\20unsigned\20long\29 +1936:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20char*\2c\20unsigned\20long\29 +1937:std::__2::__num_put_base::__format_int\28char*\2c\20char\20const*\2c\20bool\2c\20unsigned\20int\29 +1938:std::__2::__num_put_base::__format_float\28char*\2c\20char\20const*\2c\20unsigned\20int\29 +1939:std::__2::__itoa::__append8\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1940:sktext::gpu::VertexFiller::deviceRectAndCheckTransform\28SkMatrix\20const&\29\20const +1941:sktext::gpu::TextBlob::Key::operator==\28sktext::gpu::TextBlob::Key\20const&\29\20const +1942:sktext::gpu::GlyphVector::packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29 +1943:sktext::SkStrikePromise::strike\28\29 +1944:skif::RoundIn\28SkRect\29 +1945:skif::LayerSpace::inverseMapRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29\20const +1946:skif::FilterResult::applyTransform\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29\20const +1947:skif::FilterResult::Builder::~Builder\28\29 +1948:skif::FilterResult::Builder::Builder\28skif::Context\20const&\29 +1949:skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::resize\28int\29 +1950:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +1951:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::resize\28int\29 +1952:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +1953:skia_private::THashTable::Traits>::resize\28int\29 +1954:skia_private::TArray::move\28void*\29 +1955:skia_private::TArray::push_back\28SkRasterPipeline_MemoryCtxInfo&&\29 +1956:skia_private::TArray\2c\20true>::push_back\28SkRGBA4f<\28SkAlphaType\293>&&\29 +1957:skia_png_set_text_2 +1958:skia_png_set_palette_to_rgb +1959:skia_png_handle_IHDR +1960:skia_png_handle_IEND +1961:skia_png_destroy_write_struct +1962:skia::textlayout::operator==\28skia::textlayout::FontArguments\20const&\2c\20skia::textlayout::FontArguments\20const&\29 +1963:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::Cluster*\29 +1964:skia::textlayout::FontCollection::getFontManagerOrder\28\29\20const +1965:skia::textlayout::FontArguments::FontArguments\28skia::textlayout::FontArguments\20const&\29 +1966:skia::textlayout::Decorations::calculateGaps\28skia::textlayout::TextLine::ClipContext\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\29 +1967:skia::textlayout::Block&\20skia_private::TArray::emplace_back\28unsigned\20long&&\2c\20unsigned\20long&&\2c\20skia::textlayout::TextStyle\20const&\29 +1968:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::fixedFunctionFlags\28\29\20const +1969:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +1970:skgpu::ganesh::SurfaceFillContext::SurfaceFillContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1971:skgpu::ganesh::SurfaceDrawContext::drawShape\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\29 +1972:skgpu::ganesh::SurfaceDrawContext::drawPaint\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\29 +1973:skgpu::ganesh::SurfaceDrawContext::MakeWithFallback\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20SkBackingFit\2c\20SkISize\2c\20SkSurfaceProps\20const&\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1974:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +1975:skgpu::ganesh::SurfaceContext::PixelTransferResult::operator=\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +1976:skgpu::ganesh::SmallPathAtlasMgr::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +1977:skgpu::ganesh::OpsTask::~OpsTask\28\29 +1978:skgpu::ganesh::OpsTask::setColorLoadOp\28GrLoadOp\2c\20std::__2::array\29 +1979:skgpu::ganesh::OpsTask::deleteOps\28\29 +1980:skgpu::ganesh::FillRectOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +1981:skgpu::ganesh::Device::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29::$_0::operator\28\29\28int\29\20const +1982:skgpu::ganesh::ClipStack::~ClipStack\28\29 +1983:skgpu::TClientMappedBufferManager::~TClientMappedBufferManager\28\29 +1984:skgpu::Swizzle::apply\28SkRasterPipeline*\29\20const +1985:skgpu::Plot::addSubImage\28int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +1986:skgpu::GetLCDBlendFormula\28SkBlendMode\29 +1987:skcms_TransferFunction_isHLGish +1988:sk_srgb_linear_singleton\28\29 +1989:shr +1990:shl +1991:setRegionCheck\28SkRegion*\2c\20SkRegion\20const&\29 +1992:ps_dimension_set_mask_bits +1993:operator==\28SkPath\20const&\2c\20SkPath\20const&\29 +1994:mbrtowc +1995:jround_up +1996:jpeg_make_d_derived_tbl +1997:ilogbf +1998:hb_ucd_get_unicode_funcs +1999:hb_syllabic_insert_dotted_circles\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +2000:hb_shape_full +2001:hb_serialize_context_t::~hb_serialize_context_t\28\29 +2002:hb_serialize_context_t::resolve_links\28\29 +2003:hb_serialize_context_t::reset\28\29 +2004:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::get\28\29\20const +2005:hb_lazy_loader_t\2c\20hb_face_t\2c\2034u\2c\20hb_blob_t>::get\28\29\20const +2006:hb_language_from_string +2007:hb_font_t::mults_changed\28\29 +2008:hb_font_destroy +2009:hb_buffer_t::next_glyph\28\29 +2010:get_sof +2011:ftell +2012:ft_var_readpackedpoints +2013:ft_mem_strdup +2014:float\20emscripten::internal::MemberAccess::getWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts\20const&\29 +2015:fill_window +2016:exp +2017:encodeImage\28GrDirectContext*\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +2018:emscripten::val\20MakeTypedArray\28int\2c\20float\20const*\29 +2019:emscripten::internal::MethodInvoker::invoke\28float\20\28SkContourMeasure::*\20const&\29\28\29\20const\2c\20SkContourMeasure\20const*\29 +2020:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20unsigned\20long\29 +2021:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +2022:dquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2023:do_clip_op\28SkReadBuffer*\2c\20SkCanvas*\2c\20SkRegion::Op\2c\20SkClipOp*\29 +2024:do_anti_hairline\28int\2c\20int\2c\20int\2c\20int\2c\20SkIRect\20const*\2c\20SkBlitter*\29 +2025:doWriteReverse\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2026:doWriteForward\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2027:dline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2028:dispose_chunk +2029:direct_blur_y\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20int\2c\20int\2c\20unsigned\20short*\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +2030:decltype\28fp\28\28SkRecords::NoOp\29\28\29\29\29\20SkRecord::Record::visit\28SkRecords::Draw&\29\20const +2031:dcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2032:dconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2033:crop_rect_edge\28SkRect\20const&\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +2034:char*\20std::__2::__rewrap_iter\5babi:v160004\5d>\28char*\2c\20char*\29 +2035:cff_slot_load +2036:cff_parse_real +2037:cff_index_get_sid_string +2038:cff_index_access_element +2039:cf2_doStems +2040:cf2_doFlex +2041:byn$mgfn-shared$tt_cmap8_get_info +2042:byn$mgfn-shared$tt_cmap0_get_info +2043:byn$mgfn-shared$skia_png_set_strip_16 +2044:byn$mgfn-shared$SkSL::Tracer::line\28int\29 +2045:byn$mgfn-shared$AlmostBequalUlps\28float\2c\20float\29 +2046:buffer_verify_error\28hb_buffer_t*\2c\20hb_font_t*\2c\20char\20const*\2c\20...\29 +2047:blur_y_rect\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20unsigned\20short*\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +2048:blur_column\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29::$_0::operator\28\29\28unsigned\20char*\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\29\20const +2049:af_sort_and_quantize_widths +2050:af_glyph_hints_align_weak_points +2051:af_glyph_hints_align_strong_points +2052:af_face_globals_new +2053:af_cjk_compute_stem_width +2054:add_huff_table +2055:addPoint\28UBiDi*\2c\20int\2c\20int\29 +2056:__uselocale +2057:__math_xflow +2058:__cxxabiv1::__base_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +2059:\28anonymous\20namespace\29::make_vertices_spec\28bool\2c\20bool\29 +2060:\28anonymous\20namespace\29::gather_lines_and_quads\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\29::$_1::operator\28\29\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20bool\29\20const +2061:\28anonymous\20namespace\29::draw_stencil_rect\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrHardClip\20const&\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2062:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29::'lambda'\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29::operator\28\29\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +2063:\28anonymous\20namespace\29::PathSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +2064:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29::'lambda'\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29::operator\28\29\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +2065:\28anonymous\20namespace\29::CacheImpl::removeInternal\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +2066:WebPRescalerExport +2067:WebPInitAlphaProcessing +2068:WebPFreeDecBuffer +2069:WebPDemuxDelete +2070:VP8SetError +2071:VP8LInverseTransform +2072:VP8LDelete +2073:VP8LColorCacheClear +2074:TT_Load_Context +2075:StringBuffer\20apply_format_string<1024>\28char\20const*\2c\20void*\2c\20char\20\28&\29\20\5b1024\5d\2c\20SkString*\29 +2076:SkYUVAPixmaps::operator=\28SkYUVAPixmaps\20const&\29 +2077:SkYUVAPixmapInfo::SupportedDataTypes::enableDataType\28SkYUVAPixmapInfo::DataType\2c\20int\29 +2078:SkWriter32::writeMatrix\28SkMatrix\20const&\29 +2079:SkWriter32::snapshotAsData\28\29\20const +2080:SkVertices::uniqueID\28\29\20const +2081:SkVertices::approximateSize\28\29\20const +2082:SkTypefaceCache::NewTypefaceID\28\29 +2083:SkTextBlobRunIterator::next\28\29 +2084:SkTextBlobRunIterator::SkTextBlobRunIterator\28SkTextBlob\20const*\29 +2085:SkTextBlobBuilder::SkTextBlobBuilder\28\29 +2086:SkTextBlobBuilder::ConservativeRunBounds\28SkTextBlob::RunRecord\20const&\29 +2087:SkTSpan::closestBoundedT\28SkDPoint\20const&\29\20const +2088:SkTSect::updateBounded\28SkTSpan*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2089:SkTSect::trim\28SkTSpan*\2c\20SkTSect*\29 +2090:SkTDStorage::erase\28int\2c\20int\29 +2091:SkTDPQueue::percolateUpIfNecessary\28int\29 +2092:SkSurfaces::Raster\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +2093:SkStrokerPriv::JoinFactory\28SkPaint::Join\29 +2094:SkStrokeRec::setStrokeStyle\28float\2c\20bool\29 +2095:SkStrokeRec::setFillStyle\28\29 +2096:SkStrokeRec::applyToPath\28SkPath*\2c\20SkPath\20const&\29\20const +2097:SkString::set\28char\20const*\29 +2098:SkStrikeSpec::findOrCreateStrike\28\29\20const +2099:SkStrikeSpec::MakeWithNoDevice\28SkFont\20const&\2c\20SkPaint\20const*\29 +2100:SkStrike::unlock\28\29 +2101:SkStrike::lock\28\29 +2102:SkSharedMutex::SkSharedMutex\28\29 +2103:SkShadowTessellator::MakeSpot\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20bool\2c\20bool\29 +2104:SkShaders::MatrixRec::apply\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2105:SkShaders::Empty\28\29 +2106:SkShaders::Color\28unsigned\20int\29 +2107:SkShaderBase::appendRootStages\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2108:SkScalerContext::~SkScalerContext\28\29.1 +2109:SkSL::write_stringstream\28SkSL::StringStream\20const&\2c\20SkSL::OutputStream&\29 +2110:SkSL::evaluate_3_way_intrinsic\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +2111:SkSL::VarDeclaration::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20SkSL::VariableStorage\2c\20std::__2::unique_ptr>\29 +2112:SkSL::Type::priority\28\29\20const +2113:SkSL::Type::checkIfUsableInArray\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +2114:SkSL::SymbolTable::takeOwnershipOfString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +2115:SkSL::SymbolTable::isBuiltinType\28std::__2::basic_string_view>\29\20const +2116:SkSL::StructType::slotCount\28\29\20const +2117:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const +2118:SkSL::RP::Generator::pushVectorizedExpression\28SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +2119:SkSL::RP::Builder::ternary_op\28SkSL::RP::BuilderOp\2c\20int\29 +2120:SkSL::RP::Builder::simplifyPopSlotsUnmasked\28SkSL::RP::SlotRange*\29 +2121:SkSL::RP::Builder::pop_slots_unmasked\28SkSL::RP::SlotRange\29 +2122:SkSL::RP::Builder::pad_stack\28int\29 +2123:SkSL::RP::Builder::exchange_src\28\29 +2124:SkSL::ProgramUsage::remove\28SkSL::ProgramElement\20const&\29 +2125:SkSL::ProgramUsage::isDead\28SkSL::Variable\20const&\29\20const +2126:SkSL::PipelineStage::PipelineStageCodeGenerator::typeName\28SkSL::Type\20const&\29 +2127:SkSL::LiteralType::priority\28\29\20const +2128:SkSL::IndexExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +2129:SkSL::GLSLCodeGenerator::writeAnyConstructor\28SkSL::AnyConstructor\20const&\2c\20SkSL::OperatorPrecedence\29 +2130:SkSL::ExpressionArray::clone\28\29\20const +2131:SkSL::Context::~Context\28\29 +2132:SkSL::Compiler::errorText\28bool\29 +2133:SkSL::Compiler::convertProgram\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::ProgramSettings\29 +2134:SkSL::Analysis::DetectVarDeclarationWithoutScope\28SkSL::Statement\20const&\2c\20SkSL::ErrorReporter*\29 +2135:SkRuntimeShaderBuilder::SkRuntimeShaderBuilder\28sk_sp\29 +2136:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpace\20const*\29 +2137:SkRuntimeEffect::getRPProgram\28SkSL::DebugTracePriv*\29\20const +2138:SkRegion::getBoundaryPath\28SkPath*\29\20const +2139:SkRegion::Spanerator::next\28int*\2c\20int*\29 +2140:SkRegion::SkRegion\28SkRegion\20const&\29 +2141:SkReduceOrder::Quad\28SkPoint\20const*\2c\20SkPoint*\29 +2142:SkReadBuffer::skipByteArray\28unsigned\20long*\29 +2143:SkReadBuffer::readSampling\28\29 +2144:SkReadBuffer::readRect\28\29 +2145:SkReadBuffer::readRRect\28SkRRect*\29 +2146:SkReadBuffer::readPoint\28SkPoint*\29 +2147:SkReadBuffer::readPad32\28void*\2c\20unsigned\20long\29 +2148:SkReadBuffer::readArray\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +2149:SkReadBuffer::checkInt\28int\2c\20int\29 +2150:SkRasterPipeline::appendMatrix\28SkArenaAlloc*\2c\20SkMatrix\20const&\29 +2151:SkQuads::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2152:SkQuadraticEdge::updateQuadratic\28\29 +2153:SkPngCodec::~SkPngCodec\28\29.1 +2154:SkPngCodec::processData\28\29 +2155:SkPixmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2156:SkPictureRecord::~SkPictureRecord\28\29 +2157:SkPicture::~SkPicture\28\29.1 +2158:SkPathStroker::quadStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2159:SkPathStroker::preJoinTo\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20bool\29 +2160:SkPathStroker::intersectRay\28SkQuadConstruct*\2c\20SkPathStroker::IntersectRayType\29\20const +2161:SkPathStroker::cubicStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2162:SkPathStroker::conicStroke\28SkConic\20const&\2c\20SkQuadConstruct*\29 +2163:SkPathMeasure::isClosed\28\29 +2164:SkPathEffectBase::getFlattenableType\28\29\20const +2165:SkPathBuilder::moveTo\28SkPoint\29 +2166:SkPathBuilder::incReserve\28int\2c\20int\29 +2167:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2168:SkPath::isLastContourClosed\28\29\20const +2169:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2170:SkPaintToGrPaintReplaceShader\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2171:SkPaint::setStrokeMiter\28float\29 +2172:SkPaint::setStrokeJoin\28SkPaint::Join\29 +2173:SkOpSpanBase::mergeMatches\28SkOpSpanBase*\29 +2174:SkOpSpanBase::addOpp\28SkOpSpanBase*\29 +2175:SkOpSegment::subDivide\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkDCurve*\29\20const +2176:SkOpSegment::release\28SkOpSpan\20const*\29 +2177:SkOpSegment::operand\28\29\20const +2178:SkOpSegment::moveNearby\28\29 +2179:SkOpSegment::markDone\28SkOpSpan*\29 +2180:SkOpSegment::markAndChaseDone\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpSpanBase**\29 +2181:SkOpSegment::isClose\28double\2c\20SkOpSegment\20const*\29\20const +2182:SkOpSegment::init\28SkPoint*\2c\20float\2c\20SkOpContour*\2c\20SkPath::Verb\29 +2183:SkOpSegment::addT\28double\2c\20SkPoint\20const&\29 +2184:SkOpCoincidence::fixUp\28SkOpPtT*\2c\20SkOpPtT\20const*\29 +2185:SkOpCoincidence::add\28SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\29 +2186:SkOpCoincidence::addMissing\28bool*\29 +2187:SkOpCoincidence::addIfMissing\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double\2c\20double\2c\20SkOpSegment*\2c\20SkOpSegment*\2c\20bool*\29 +2188:SkOpCoincidence::addExpanded\28\29 +2189:SkOpAngle::set\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2190:SkOpAngle::lineOnOneSide\28SkDPoint\20const&\2c\20SkDVector\20const&\2c\20SkOpAngle\20const*\2c\20bool\29\20const +2191:SkNoPixelsDevice::ClipState::op\28SkClipOp\2c\20SkM44\20const&\2c\20SkRect\20const&\2c\20bool\2c\20bool\29 +2192:SkMemoryStream::Make\28sk_sp\29 +2193:SkMatrix\20skif::Mapping::map\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +2194:SkMatrixPriv::DifferentialAreaScale\28SkMatrix\20const&\2c\20SkPoint\20const&\29 +2195:SkMatrix::writeToMemory\28void*\29\20const +2196:SkMatrix::preservesRightAngles\28float\29\20const +2197:SkM44::normalizePerspective\28\29 +2198:SkLatticeIter::~SkLatticeIter\28\29 +2199:SkLatticeIter::next\28SkIRect*\2c\20SkRect*\2c\20bool*\2c\20unsigned\20int*\29 +2200:SkJSONWriter::endObject\28\29 +2201:SkJSONWriter::endArray\28\29 +2202:SkImage_Lazy::Validator::Validator\28sk_sp\2c\20SkColorType\20const*\2c\20sk_sp\29 +2203:SkImageShader::MakeSubset\28sk_sp\2c\20SkRect\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2204:SkImageGenerator::onRefEncodedData\28\29 +2205:SkImageFilters::Image\28sk_sp\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\29 +2206:SkImage::width\28\29\20const +2207:SkImage::readPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +2208:SkHalfToFloat\28unsigned\20short\29 +2209:SkGradientShader::MakeSweep\28float\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +2210:SkGradientShader::MakeRadial\28SkPoint\20const&\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +2211:SkGradientBaseShader::commonAsAGradient\28SkShaderBase::GradientInfo*\29\20const +2212:SkGradientBaseShader::ValidGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2213:SkGradientBaseShader::SkGradientBaseShader\28SkGradientBaseShader::Descriptor\20const&\2c\20SkMatrix\20const&\29 +2214:SkGradientBaseShader::MakeDegenerateGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20float\20const*\2c\20int\2c\20sk_sp\2c\20SkTileMode\29 +2215:SkGradientBaseShader::Descriptor::~Descriptor\28\29 +2216:SkGradientBaseShader::Descriptor::Descriptor\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2217:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkPath\20const*\2c\20bool\29 +2218:SkFontMgr::matchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +2219:SkFontMgr::RefEmpty\28\29 +2220:SkFont::setSize\28float\29 +2221:SkEvalQuadAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +2222:SkEncodedInfo::~SkEncodedInfo\28\29 +2223:SkEncodedInfo::makeImageInfo\28\29\20const +2224:SkEmptyFontMgr::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +2225:SkDrawableList::~SkDrawableList\28\29 +2226:SkDrawable::draw\28SkCanvas*\2c\20SkMatrix\20const*\29 +2227:SkDevice::setDeviceCoordinateSystem\28SkM44\20const&\2c\20SkM44\20const&\2c\20SkM44\20const&\2c\20int\2c\20int\29 +2228:SkData::PrivateNewWithCopy\28void\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +2229:SkDashPathEffect::Make\28float\20const*\2c\20int\2c\20float\29 +2230:SkDQuad::monotonicInX\28\29\20const +2231:SkDCubic::dxdyAtT\28double\29\20const +2232:SkDCubic::RootsValidT\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +2233:SkCubicEdge::updateCubic\28\29 +2234:SkConicalGradient::~SkConicalGradient\28\29 +2235:SkColorSpace::serialize\28\29\20const +2236:SkColorSpace::MakeSRGBLinear\28\29 +2237:SkColorFilterPriv::MakeGaussian\28\29 +2238:SkColorConverter::SkColorConverter\28unsigned\20int\20const*\2c\20int\29 +2239:SkCodec::startScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const*\29 +2240:SkCodec::handleFrameIndex\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20std::__2::function\29 +2241:SkCodec::getScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +2242:SkChopQuadAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2243:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\20const*\2c\20int\29 +2244:SkChopCubicAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2245:SkCharToGlyphCache::SkCharToGlyphCache\28\29 +2246:SkCanvas::topDevice\28\29\20const +2247:SkCanvas::peekPixels\28SkPixmap*\29 +2248:SkCanvas::getTotalMatrix\28\29\20const +2249:SkCanvas::getLocalToDevice\28\29\20const +2250:SkCanvas::getLocalClipBounds\28\29\20const +2251:SkCanvas::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +2252:SkCanvas::drawAtlas\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +2253:SkCanvas::concat\28SkM44\20const&\29 +2254:SkCanvas::SkCanvas\28SkBitmap\20const&\29 +2255:SkCanvas::ImageSetEntry::ImageSetEntry\28SkCanvas::ImageSetEntry\20const&\29 +2256:SkBlitter::blitRectRegion\28SkIRect\20const&\2c\20SkRegion\20const&\29 +2257:SkBlendMode_ShouldPreScaleCoverage\28SkBlendMode\2c\20bool\29 +2258:SkBlendMode_AppendStages\28SkBlendMode\2c\20SkRasterPipeline*\29 +2259:SkBitmap::tryAllocPixels\28SkBitmap::Allocator*\29 +2260:SkBitmap::readPixels\28SkPixmap\20const&\2c\20int\2c\20int\29\20const +2261:SkBitmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2262:SkBitmap::installPixels\28SkPixmap\20const&\29 +2263:SkBitmap::allocPixels\28SkImageInfo\20const&\29 +2264:SkBitmap::SkBitmap\28SkBitmap&&\29 +2265:SkBaseShadowTessellator::handleQuad\28SkPoint\20const*\29 +2266:SkAAClip::~SkAAClip\28\29 +2267:SkAAClip::setPath\28SkPath\20const&\2c\20SkIRect\20const&\2c\20bool\29 +2268:SkAAClip::op\28SkAAClip\20const&\2c\20SkClipOp\29 +2269:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GSUB_impl::SubstLookup\20const&\29 +2270:OT::hb_ot_apply_context_t::replace_glyph\28unsigned\20int\29 +2271:OT::apply_lookup\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20OT::LookupRecord\20const*\2c\20unsigned\20int\29 +2272:OT::Layout::GPOS_impl::ValueFormat::get_device\28OT::IntType\20const*\2c\20bool*\2c\20void\20const*\2c\20hb_sanitize_context_t&\29 +2273:OT::Layout::GPOS_impl::AnchorFormat3::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2274:OT::Layout::GPOS_impl::AnchorFormat2::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2275:OT::ClassDef::get_class\28unsigned\20int\29\20const +2276:JpegDecoderMgr::~JpegDecoderMgr\28\29 +2277:GrTriangulator::simplify\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +2278:GrTriangulator::setTop\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2279:GrTriangulator::mergeCoincidentVertices\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29\20const +2280:GrTriangulator::Vertex*\20SkArenaAlloc::make\28SkPoint&\2c\20int&&\29 +2281:GrThreadSafeCache::remove\28skgpu::UniqueKey\20const&\29 +2282:GrThreadSafeCache::internalFind\28skgpu::UniqueKey\20const&\29 +2283:GrThreadSafeCache::internalAdd\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2284:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29 +2285:GrTexture::markMipmapsClean\28\29 +2286:GrTessellationShader::MakePipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedClip&&\2c\20GrProcessorSet&&\29 +2287:GrSurfaceProxyView::concatSwizzle\28skgpu::Swizzle\29 +2288:GrSurfaceProxy::LazyCallbackResult::LazyCallbackResult\28sk_sp\29 +2289:GrSurfaceProxy::Copy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\2c\20GrSurfaceProxy::RectsMustMatch\2c\20sk_sp*\29 +2290:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +2291:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +2292:GrSimpleMeshDrawOpHelper::CreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrPipeline\20const*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\2c\20GrUserStencilSettings\20const*\29 +2293:GrShape::simplifyLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\29 +2294:GrShape::reset\28\29 +2295:GrShape::conservativeContains\28SkPoint\20const&\29\20const +2296:GrSWMaskHelper::init\28SkIRect\20const&\29 +2297:GrResourceProvider::createNonAAQuadIndexBuffer\28\29 +2298:GrResourceProvider::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\2c\20GrResourceProvider::ZeroInit\29 +2299:GrResourceCache::refAndMakeResourceMRU\28GrGpuResource*\29 +2300:GrResourceCache::findAndRefUniqueResource\28skgpu::UniqueKey\20const&\29 +2301:GrRenderTask::addTarget\28GrDrawingManager*\2c\20sk_sp\29 +2302:GrRenderTarget::~GrRenderTarget\28\29.1 +2303:GrQuadUtils::WillUseHairline\28GrQuad\20const&\2c\20GrAAType\2c\20GrQuadAAFlags\29 +2304:GrQuadUtils::CropToRect\28SkRect\20const&\2c\20GrAA\2c\20DrawQuad*\2c\20bool\29 +2305:GrProxyProvider::processInvalidUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\29 +2306:GrPorterDuffXPFactory::Get\28SkBlendMode\29 +2307:GrPixmap::operator=\28GrPixmap&&\29 +2308:GrPathUtils::scaleToleranceToSrc\28float\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +2309:GrPathUtils::quadraticPointCount\28SkPoint\20const*\2c\20float\29 +2310:GrPathUtils::cubicPointCount\28SkPoint\20const*\2c\20float\29 +2311:GrPaint::setPorterDuffXPFactory\28SkBlendMode\29 +2312:GrPaint::GrPaint\28GrPaint\20const&\29 +2313:GrOpsRenderPass::draw\28int\2c\20int\29 +2314:GrOpsRenderPass::drawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +2315:GrMeshDrawOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +2316:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29 +2317:GrGradientShader::MakeGradientFP\28SkGradientBaseShader\20const&\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\2c\20std::__2::unique_ptr>\2c\20SkMatrix\20const*\29 +2318:GrGpuResource::getContext\28\29 +2319:GrGpu::writePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +2320:GrGLTexture::onSetLabel\28\29 +2321:GrGLTexture::onRelease\28\29 +2322:GrGLTexture::onAbandon\28\29 +2323:GrGLTexture::backendFormat\28\29\20const +2324:GrGLSLShaderBuilder::appendFunctionDecl\28SkSLType\2c\20char\20const*\2c\20SkSpan\29 +2325:GrGLSLProgramBuilder::fragmentProcessorHasCoordsParam\28GrFragmentProcessor\20const*\29\20const +2326:GrGLRenderTarget::onRelease\28\29 +2327:GrGLRenderTarget::onAbandon\28\29 +2328:GrGLGpu::resolveRenderFBOs\28GrGLRenderTarget*\2c\20SkIRect\20const&\2c\20GrGLRenderTarget::ResolveDirection\2c\20bool\29 +2329:GrGLGpu::flushBlendAndColorWrite\28skgpu::BlendInfo\20const&\2c\20skgpu::Swizzle\20const&\29 +2330:GrGLGetVersionFromString\28char\20const*\29 +2331:GrGLCheckLinkStatus\28GrGLGpu\20const*\2c\20unsigned\20int\2c\20bool\2c\20skgpu::ShaderErrorHandler*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const**\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\29 +2332:GrGLCaps::maxRenderTargetSampleCount\28GrGLFormat\29\20const +2333:GrFragmentProcessors::Make\28SkBlenderBase\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20GrFPArgs\20const&\29 +2334:GrFragmentProcessor::isEqual\28GrFragmentProcessor\20const&\29\20const +2335:GrFragmentProcessor::asTextureEffect\28\29\20const +2336:GrFragmentProcessor::Rect\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRect\29 +2337:GrFragmentProcessor::ModulateRGBA\28std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2338:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29 +2339:GrDrawingManager::~GrDrawingManager\28\29 +2340:GrDrawingManager::removeRenderTasks\28\29 +2341:GrDrawingManager::getPathRenderer\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\2c\20bool\2c\20skgpu::ganesh::PathRendererChain::DrawType\2c\20skgpu::ganesh::PathRenderer::StencilSupport*\29 +2342:GrDrawOpAtlas::compact\28skgpu::AtlasToken\29 +2343:GrContext_Base::~GrContext_Base\28\29 +2344:GrContext_Base::defaultBackendFormat\28SkColorType\2c\20skgpu::Renderable\29\20const +2345:GrColorSpaceXform::XformKey\28GrColorSpaceXform\20const*\29 +2346:GrColorSpaceXform::Make\28SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +2347:GrColorSpaceXform::Make\28GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +2348:GrColorInfo::operator=\28GrColorInfo\20const&\29 +2349:GrCaps::supportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +2350:GrCaps::getFallbackColorTypeAndFormat\28GrColorType\2c\20int\29\20const +2351:GrCaps::areColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +2352:GrBufferAllocPool::~GrBufferAllocPool\28\29 +2353:GrBlurUtils::GaussianBlur\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20float\2c\20float\2c\20SkTileMode\2c\20SkBackingFit\29 +2354:GrBlurUtils::DrawShapeWithMaskFilter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\29 +2355:GrBaseContextPriv::getShaderErrorHandler\28\29\20const +2356:GrBackendTexture::GrBackendTexture\28GrBackendTexture\20const&\29 +2357:GrBackendRenderTarget::getBackendFormat\28\29\20const +2358:GrBackendFormat::operator==\28GrBackendFormat\20const&\29\20const +2359:GrAAConvexTessellator::createOuterRing\28GrAAConvexTessellator::Ring\20const&\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring*\29 +2360:GrAAConvexTessellator::createInsetRings\28GrAAConvexTessellator::Ring&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring**\29 +2361:FindSortableTop\28SkOpContourHead*\29 +2362:FT_Set_Charmap +2363:FT_Outline_Decompose +2364:FT_New_Size +2365:FT_Load_Sfnt_Table +2366:FT_GlyphLoader_Add +2367:FT_Get_Color_Glyph_Paint +2368:FT_Get_Color_Glyph_Layer +2369:FT_Get_Advance +2370:FT_CMap_New +2371:Current_Ratio +2372:Cr_z__tr_stored_block +2373:ClipParams_unpackRegionOp\28SkReadBuffer*\2c\20unsigned\20int\29 +2374:CircleOp::Circle&\20skia_private::TArray::emplace_back\28CircleOp::Circle&&\29 +2375:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +2376:AlmostEqualUlps_Pin\28float\2c\20float\29 +2377:wuffs_lzw__decoder__workbuf_len +2378:wuffs_gif__decoder__decode_image_config +2379:wuffs_gif__decoder__decode_frame_config +2380:winding_mono_quad\28SkPoint\20const*\2c\20float\2c\20float\2c\20int*\29 +2381:winding_mono_conic\28SkConic\20const&\2c\20float\2c\20float\2c\20int*\29 +2382:wcrtomb +2383:wchar_t\20const*\20std::__2::find\5babi:v160004\5d\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const&\29 +2384:void\20std::__2::vector\2c\20std::__2::allocator>>::__push_back_slow_path>\28std::__2::shared_ptr&&\29 +2385:void\20std::__2::__introsort\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\2c\20std::__2::iterator_traits::difference_type\29 +2386:void\20std::__2::__introsort\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\2c\20std::__2::iterator_traits<\28anonymous\20namespace\29::Entry*>::difference_type\29 +2387:void\20std::__2::__introsort\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\2c\20std::__2::iterator_traits::difference_type\29 +2388:void\20std::__2::__introsort\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\2c\20std::__2::iterator_traits::difference_type\29 +2389:void\20std::__2::__inplace_merge\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\2c\20long\29 +2390:void\20sort_r_simple\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\2c\20void*\29\2c\20void*\29 +2391:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.3 +2392:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29 +2393:void\20SkTIntroSort\28double*\2c\20double*\29::'lambda'\28double\20const&\2c\20double\20const&\29>\28int\2c\20double*\2c\20int\2c\20void\20SkTQSort\28double*\2c\20double*\29::'lambda'\28double\20const&\2c\20double\20const&\29\20const&\29 +2394:void\20SkTIntroSort\28SkEdge**\2c\20SkEdge**\29::'lambda'\28SkEdge\20const*\2c\20SkEdge\20const*\29>\28int\2c\20SkEdge*\2c\20int\2c\20void\20SkTQSort\28SkEdge**\2c\20SkEdge**\29::'lambda'\28SkEdge\20const*\2c\20SkEdge\20const*\29\20const&\29 +2395:vfprintf +2396:valid_args\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20unsigned\20long*\29 +2397:update_offset_to_base\28char\20const*\2c\20long\29 +2398:update_box +2399:unsigned\20long\20const&\20std::__2::min\5babi:v160004\5d\28unsigned\20long\20const&\2c\20unsigned\20long\20const&\29 +2400:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +2401:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +2402:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +2403:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +2404:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +2405:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +2406:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +2407:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +2408:ubidi_openSized_skia +2409:ubidi_getLevelAt_skia +2410:u_charMirror_skia +2411:tt_size_reset +2412:tt_sbit_decoder_load_metrics +2413:tt_face_get_location +2414:tt_face_find_bdf_prop +2415:tolower +2416:toTextStyle\28SimpleTextStyle\20const&\29 +2417:t1_cmap_unicode_done +2418:subdivide_cubic_to\28SkPath*\2c\20SkPoint\20const*\2c\20int\29 +2419:subdivide\28SkConic\20const&\2c\20SkPoint*\2c\20int\29 +2420:strtox +2421:strtoull_l +2422:strtod +2423:std::logic_error::~logic_error\28\29.1 +2424:std::__2::vector>::push_back\5babi:v160004\5d\28float&&\29 +2425:std::__2::vector>::__append\28unsigned\20long\29 +2426:std::__2::vector>::reserve\28unsigned\20long\29 +2427:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +2428:std::__2::unique_ptr<\28anonymous\20namespace\29::SoftwarePathData\2c\20std::__2::default_delete<\28anonymous\20namespace\29::SoftwarePathData>>::reset\5babi:v160004\5d\28\28anonymous\20namespace\29::SoftwarePathData*\29 +2429:std::__2::time_put>>::~time_put\28\29.1 +2430:std::__2::pair\2c\20std::__2::allocator>>>::~pair\28\29 +2431:std::__2::pair\20std::__2::__copy_trivial::operator\28\29\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +2432:std::__2::locale::operator=\28std::__2::locale\20const&\29 +2433:std::__2::locale::locale\28\29 +2434:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\29 +2435:std::__2::ios_base::~ios_base\28\29 +2436:std::__2::fpos<__mbstate_t>::fpos\5babi:v160004\5d\28long\20long\29 +2437:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28SkAnimatedImage::Frame&\2c\20SkAnimatedImage::Frame&\29 +2438:std::__2::decay>::__call\28std::declval\20const&>\28\29\29\29>::type\20std::__2::__to_address\5babi:v160004\5d\2c\20void>\28std::__2::__wrap_iter\20const&\29 +2439:std::__2::chrono::duration>::duration\5babi:v160004\5d\28long\20long\20const&\2c\20std::__2::enable_if::value\20&&\20\28std::__2::integral_constant::value\20||\20!treat_as_floating_point::value\29\2c\20void>::type*\29 +2440:std::__2::char_traits::move\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +2441:std::__2::char_traits::assign\28char*\2c\20unsigned\20long\2c\20char\29 +2442:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.2 +2443:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29 +2444:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28wchar_t\29 +2445:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +2446:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::allocator\20const&\29 +2447:std::__2::basic_string\2c\20std::__2::allocator>::__make_iterator\5babi:v160004\5d\28char*\29 +2448:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +2449:std::__2::basic_streambuf>::setp\5babi:v160004\5d\28char*\2c\20char*\29 +2450:std::__2::basic_ostream>::~basic_ostream\28\29.1 +2451:std::__2::basic_istream>::~basic_istream\28\29.1 +2452:std::__2::basic_iostream>::~basic_iostream\28\29.2 +2453:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2454:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2455:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2456:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2457:std::__2::__throw_out_of_range\5babi:v160004\5d\28char\20const*\29 +2458:std::__2::__throw_length_error\5babi:v160004\5d\28char\20const*\29 +2459:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +2460:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20wchar_t*\2c\20wchar_t&\2c\20wchar_t&\29 +2461:std::__2::__num_get::__stage2_float_loop\28wchar_t\2c\20bool&\2c\20char&\2c\20char*\2c\20char*&\2c\20wchar_t\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20unsigned\20int&\2c\20wchar_t*\29 +2462:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20char*\2c\20char&\2c\20char&\29 +2463:std::__2::__num_get::__stage2_float_loop\28char\2c\20bool&\2c\20char&\2c\20char*\2c\20char*&\2c\20char\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20unsigned\20int&\2c\20char*\29 +2464:std::__2::__libcpp_wcrtomb_l\5babi:v160004\5d\28char*\2c\20wchar_t\2c\20__mbstate_t*\2c\20__locale_struct*\29 +2465:std::__2::__less::operator\28\29\5babi:v160004\5d\28unsigned\20int\20const&\2c\20unsigned\20long\20const&\29\20const +2466:std::__2::__itoa::__base_10_u32\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2467:std::__2::__itoa::__append6\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2468:std::__2::__itoa::__append4\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2469:sktext::gpu::VertexFiller::flatten\28SkWriteBuffer&\29\20const +2470:sktext::gpu::VertexFiller::Make\28skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20SkRect\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::FillerType\29 +2471:sktext::gpu::VertexFiller::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\29 +2472:sktext::gpu::SubRunContainer::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20SkRefCnt\20const*\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +2473:sktext::gpu::SubRunAllocator::SubRunAllocator\28int\29 +2474:sktext::gpu::MakePointsFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\29 +2475:sktext::gpu::GlyphVector::flatten\28SkWriteBuffer&\29\20const +2476:sktext::gpu::GlyphVector::Make\28sktext::SkStrikePromise&&\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\29 +2477:sktext::gpu::GlyphVector::MakeFromBuffer\28SkReadBuffer&\2c\20SkStrikeClient\20const*\2c\20sktext::gpu::SubRunAllocator*\29 +2478:sktext::SkStrikePromise::flatten\28SkWriteBuffer&\29\20const +2479:sktext::SkStrikePromise::MakeFromBuffer\28SkReadBuffer&\2c\20SkStrikeClient\20const*\2c\20SkStrikeCache*\29 +2480:sktext::GlyphRunBuilder::makeGlyphRunList\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20SkPoint\29 +2481:sktext::GlyphRun::GlyphRun\28SkFont\20const&\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\29 +2482:skpaint_to_grpaint_impl\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::optional>>\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2483:skip_literal_string +2484:skif::\28anonymous\20namespace\29::apply_decal\28skif::LayerSpace\20const&\2c\20sk_sp\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29 +2485:skif::FilterResult::Builder::outputBounds\28std::__2::optional>\29\20const +2486:skif::FilterResult::Builder::drawShader\28sk_sp\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +2487:skif::FilterResult::Builder::createInputShaders\28skif::LayerSpace\20const&\2c\20bool\29 +2488:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2489:skia_private::THashTable\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair>::resize\28int\29 +2490:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeSlot\28int\29 +2491:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2492:skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2493:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2494:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2495:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +2496:skia_private::THashTable::Traits>::resize\28int\29 +2497:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::resize\28int\29 +2498:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::find\28GrProgramDesc\20const&\29\20const +2499:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrThreadSafeCache::Entry*&&\29 +2500:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2501:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::UniqueKey\20const&\29 +2502:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrTextureProxy*&&\29 +2503:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2504:skia_private::THashTable::Traits>::uncheckedSet\28FT_Opaque_Paint_&&\29 +2505:skia_private::THashTable::Traits>::resize\28int\29 +2506:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::~THashMap\28\29 +2507:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::find\28std::__2::basic_string_view>\20const&\29\20const +2508:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::THashMap\28std::initializer_list>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>\29 +2509:skia_private::THashMap>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::unique_ptr>\29 +2510:skia_private::TArray::resize_back\28int\29 +2511:skia_private::TArray::push_back_raw\28int\29 +2512:skia_private::TArray::resize_back\28int\29 +2513:skia_png_write_chunk +2514:skia_png_set_sBIT +2515:skia_png_set_read_fn +2516:skia_png_set_packing +2517:skia_png_set_bKGD +2518:skia_png_save_uint_32 +2519:skia_png_reciprocal2 +2520:skia_png_realloc_array +2521:skia_png_read_start_row +2522:skia_png_read_IDAT_data +2523:skia_png_handle_zTXt +2524:skia_png_handle_tRNS +2525:skia_png_handle_tIME +2526:skia_png_handle_tEXt +2527:skia_png_handle_sRGB +2528:skia_png_handle_sPLT +2529:skia_png_handle_sCAL +2530:skia_png_handle_sBIT +2531:skia_png_handle_pHYs +2532:skia_png_handle_pCAL +2533:skia_png_handle_oFFs +2534:skia_png_handle_iTXt +2535:skia_png_handle_iCCP +2536:skia_png_handle_hIST +2537:skia_png_handle_gAMA +2538:skia_png_handle_cHRM +2539:skia_png_handle_bKGD +2540:skia_png_handle_as_unknown +2541:skia_png_handle_PLTE +2542:skia_png_do_strip_channel +2543:skia_png_destroy_read_struct +2544:skia_png_destroy_info_struct +2545:skia_png_compress_IDAT +2546:skia_png_combine_row +2547:skia_png_colorspace_set_sRGB +2548:skia_png_check_fp_string +2549:skia_png_check_fp_number +2550:skia::textlayout::TypefaceFontStyleSet::createTypeface\28int\29 +2551:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::$_0::operator\28\29\28sk_sp\2c\20sk_sp\29\20const +2552:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const +2553:skia::textlayout::TextLine::getGlyphPositionAtCoordinate\28float\29 +2554:skia::textlayout::Run::isResolved\28\29\20const +2555:skia::textlayout::Run::copyTo\28SkTextBlobBuilder&\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +2556:skia::textlayout::ParagraphImpl::buildClusterTable\28\29 +2557:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29 +2558:skia::textlayout::OneLineShaper::~OneLineShaper\28\29 +2559:skia::textlayout::FontCollection::setDefaultFontManager\28sk_sp\29 +2560:skia::textlayout::FontCollection::FontCollection\28\29 +2561:skia::textlayout::Cluster::isSoftBreak\28\29\20const +2562:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::flush\28GrMeshDrawTarget*\2c\20skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::FlushInfo*\29\20const +2563:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +2564:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::programInfo\28\29 +2565:skgpu::ganesh::SurfaceFillContext::discard\28\29 +2566:skgpu::ganesh::SurfaceDrawContext::internalStencilClear\28SkIRect\20const*\2c\20bool\29 +2567:skgpu::ganesh::SurfaceDrawContext::drawPath\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrStyle\20const&\29 +2568:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29 +2569:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +2570:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29::$_0::operator\28\29\28GrSurfaceProxyView\2c\20SkIRect\29\20const +2571:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +2572:skgpu::ganesh::QuadPerEdgeAA::MinColorType\28SkRGBA4f<\28SkAlphaType\292>\29 +2573:skgpu::ganesh::PathRendererChain::PathRendererChain\28GrRecordingContext*\2c\20skgpu::ganesh::PathRendererChain::Options\20const&\29 +2574:skgpu::ganesh::PathCurveTessellator::draw\28GrOpFlushState*\29\20const +2575:skgpu::ganesh::OpsTask::recordOp\28std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\2c\20GrCaps\20const&\29 +2576:skgpu::ganesh::FillRectOp::MakeNonAARect\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +2577:skgpu::ganesh::FillRRectOp::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2578:skgpu::ganesh::Device::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +2579:skgpu::ganesh::Device::drawImageQuadDirect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +2580:skgpu::ganesh::Device::Make\28std::__2::unique_ptr>\2c\20SkAlphaType\2c\20skgpu::ganesh::Device::InitContents\29 +2581:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::setup_dashed_rect\28SkRect\20const&\2c\20skgpu::VertexWriter&\2c\20SkMatrix\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashCap\29 +2582:skgpu::ganesh::ClipStack::SaveRecord::invalidateMasks\28GrProxyProvider*\2c\20SkTBlockList*\29 +2583:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::SaveRecord\20const&\29\20const +2584:skgpu::ganesh::AtlasTextOp::operator\20new\28unsigned\20long\29 +2585:skgpu::ganesh::AtlasTextOp::Geometry::Make\28sktext::gpu::AtlasSubRun\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\2c\20sk_sp&&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkArenaAlloc*\29 +2586:skgpu::ganesh::AtlasRenderTask::addAtlasDrawOp\28std::__2::unique_ptr>\2c\20GrCaps\20const&\29 +2587:skcms_Transform::$_2::operator\28\29\28skcms_Curve\20const*\2c\20int\29\20const +2588:skcms_MaxRoundtripError +2589:sk_free_releaseproc\28void\20const*\2c\20void*\29 +2590:siprintf +2591:sift +2592:rotate\28SkDCubic\20const&\2c\20int\2c\20int\2c\20SkDCubic&\29 +2593:read_header\28SkStream*\2c\20SkPngChunkReader*\2c\20SkCodec**\2c\20png_struct_def**\2c\20png_info_def**\29 +2594:read_header\28SkStream*\2c\20SkISize*\29 +2595:quad_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2596:qsort +2597:psh_globals_set_scale +2598:ps_parser_skip_PS_token +2599:ps_builder_done +2600:portable::uniform_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +2601:png_text_compress +2602:png_inflate_read +2603:png_inflate_claim +2604:png_image_size +2605:png_colorspace_endpoints_match +2606:png_build_16bit_table +2607:normalize +2608:next_marker +2609:morphpoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\2c\20SkPathMeasure&\2c\20float\29 +2610:make_unpremul_effect\28std::__2::unique_ptr>\29 +2611:long\20std::__2::__libcpp_atomic_refcount_decrement\5babi:v160004\5d\28long&\29 +2612:long\20const&\20std::__2::min\5babi:v160004\5d\28long\20const&\2c\20long\20const&\29 +2613:log1p +2614:load_truetype_glyph +2615:line_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2616:lang_find_or_insert\28char\20const*\29 +2617:jpeg_calc_output_dimensions +2618:inner_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +2619:inflate_table +2620:increment_simple_rowgroup_ctr +2621:hb_tag_from_string +2622:hb_shape_plan_destroy +2623:hb_script_get_horizontal_direction +2624:hb_paint_extents_context_t::push_clip\28hb_extents_t\29 +2625:hb_ot_color_palette_get_colors +2626:hb_lazy_loader_t\2c\20hb_face_t\2c\2012u\2c\20OT::vmtx_accelerator_t>::get\28\29\20const +2627:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get\28\29\20const +2628:hb_lazy_loader_t\2c\20hb_face_t\2c\201u\2c\20hb_blob_t>::get\28\29\20const +2629:hb_lazy_loader_t\2c\20hb_face_t\2c\2018u\2c\20hb_blob_t>::get\28\29\20const +2630:hb_hashmap_t::alloc\28unsigned\20int\29 +2631:hb_font_funcs_destroy +2632:hb_face_get_upem +2633:hb_face_destroy +2634:hb_draw_cubic_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +2635:hb_buffer_set_segment_properties +2636:hb_blob_create +2637:gray_render_line +2638:get_vendor\28char\20const*\29 +2639:get_renderer\28char\20const*\2c\20GrGLExtensions\20const&\29 +2640:get_joining_type\28unsigned\20int\2c\20hb_unicode_general_category_t\29 +2641:generate_distance_field_from_image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\29 +2642:ft_var_readpackeddeltas +2643:ft_var_get_item_delta +2644:ft_var_done_item_variation_store +2645:ft_glyphslot_done +2646:ft_glyphslot_alloc_bitmap +2647:freelocale +2648:free_pool +2649:fquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2650:fp_barrierf +2651:fline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2652:fixN0c\28BracketData*\2c\20int\2c\20int\2c\20unsigned\20char\29 +2653:fcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2654:fconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2655:fclose +2656:exp2f +2657:emscripten::internal::MethodInvoker::invoke\28void\20\28SkFont::*\20const&\29\28float\29\2c\20SkFont*\2c\20float\29 +2658:emscripten::internal::MethodInvoker\20\28SkAnimatedImage::*\29\28\29\2c\20sk_sp\2c\20SkAnimatedImage*>::invoke\28sk_sp\20\28SkAnimatedImage::*\20const&\29\28\29\2c\20SkAnimatedImage*\29 +2659:emscripten::internal::Invoker>\2c\20SimpleParagraphStyle\2c\20sk_sp>::invoke\28std::__2::unique_ptr>\20\28*\29\28SimpleParagraphStyle\2c\20sk_sp\29\2c\20SimpleParagraphStyle*\2c\20sk_sp*\29 +2660:emscripten::internal::FunctionInvoker::invoke\28int\20\28**\29\28SkCanvas&\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29\2c\20SkCanvas*\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29 +2661:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFontMgr&\2c\20int\29\2c\20SkFontMgr*\2c\20int\29 +2662:do_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +2663:decompose\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\2c\20unsigned\20int\29 +2664:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20skgpu::ganesh::DashOp::AAMode\2c\20SkMatrix\20const&\2c\20bool\29::$_0>\28skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Make\28SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::ganesh::DashOp::AAMode\2c\20SkMatrix\20const&\2c\20bool\29::$_0&&\29::'lambda'\28char*\29::__invoke\28char*\29 +2665:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrCaps\20const&\2c\20GrSurfaceProxyView\20const&\2c\20bool&\2c\20GrPipeline*&\2c\20GrUserStencilSettings\20const*&&\2c\20\28anonymous\20namespace\29::DrawAtlasPathShader*&\2c\20GrPrimitiveType&&\2c\20GrXferBarrierFlags&\2c\20GrLoadOp&\29::'lambda'\28void*\29>\28GrProgramInfo&&\29::'lambda'\28char*\29::__invoke\28char*\29 +2666:cubic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2667:conic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2668:char\20const*\20std::__2::find\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char\20const&\29 +2669:char\20const*\20std::__2::__rewrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +2670:cff_index_get_pointers +2671:cff2_path_param_t::move_to\28CFF::point_t\20const&\29 +2672:cff1_path_param_t::move_to\28CFF::point_t\20const&\29 +2673:cf2_glyphpath_computeOffset +2674:cached_mask_gamma\28float\2c\20float\2c\20float\29 +2675:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2676:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2677:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2678:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2679:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2680:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2681:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2682:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +2683:byn$mgfn-shared$void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +2684:byn$mgfn-shared$std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2685:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +2686:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +2687:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray&&\29 +2688:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +2689:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +2690:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +2691:byn$mgfn-shared$SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +2692:byn$mgfn-shared$SkImageInfo::MakeN32Premul\28int\2c\20int\29 +2693:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +2694:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +2695:byn$mgfn-shared$SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +2696:byn$mgfn-shared$Round_To_Grid +2697:byn$mgfn-shared$LineConicIntersections::addLineNearEndPoints\28\29 +2698:byn$mgfn-shared$GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +2699:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +2700:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +2701:byn$mgfn-shared$DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +2702:build_tree +2703:bracketAddOpening\28BracketData*\2c\20char16_t\2c\20int\29 +2704:bool\20OT::glyf_impl::Glyph::get_points\28hb_font_t*\2c\20OT::glyf_accelerator_t\20const&\2c\20contour_point_vector_t&\2c\20contour_point_vector_t*\2c\20head_maxp_info_t*\2c\20unsigned\20int*\2c\20bool\2c\20bool\2c\20bool\2c\20hb_array_t\2c\20hb_map_t*\2c\20unsigned\20int\2c\20unsigned\20int*\29\20const +2705:bool\20OT::glyf_accelerator_t::get_points\28hb_font_t*\2c\20unsigned\20int\2c\20OT::glyf_accelerator_t::points_aggregator_t\29\20const +2706:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +2707:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +2708:blit_aaa_trapezoid_row\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +2709:auto\20std::__2::__unwrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +2710:atan +2711:alloc_large +2712:af_glyph_hints_done +2713:add_quad\28SkPoint\20const*\2c\20skia_private::TArray*\29 +2714:acos +2715:aaa_fill_path\28SkPath\20const&\2c\20SkIRect\20const&\2c\20AdditiveBlitter*\2c\20int\2c\20int\2c\20bool\2c\20bool\2c\20bool\29 +2716:_get_path\28OT::cff1::accelerator_t\20const*\2c\20hb_font_t*\2c\20unsigned\20int\2c\20hb_draw_session_t&\2c\20bool\2c\20CFF::point_t*\29 +2717:_get_bounds\28OT::cff1::accelerator_t\20const*\2c\20unsigned\20int\2c\20bounds_t&\2c\20bool\29 +2718:_embind_register_bindings +2719:__trunctfdf2 +2720:__towrite +2721:__toread +2722:__subtf3 +2723:__strchrnul +2724:__rem_pio2f +2725:__rem_pio2 +2726:__math_uflowf +2727:__math_oflowf +2728:__fwritex +2729:__cxxabiv1::__class_type_info::process_static_type_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\29\20const +2730:__cxxabiv1::__class_type_info::process_static_type_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\29\20const +2731:__cxxabiv1::__class_type_info::process_found_base_class\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +2732:__cxxabiv1::__base_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +2733:\28anonymous\20namespace\29::shape_contains_rect\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20bool\29 +2734:\28anonymous\20namespace\29::generateFacePathCOLRv1\28FT_FaceRec_*\2c\20unsigned\20short\2c\20SkPath*\29 +2735:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads_with_constraint\28SkPoint\20const*\2c\20float\2c\20SkPathFirstDirection\2c\20skia_private::TArray*\2c\20int\29 +2736:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\2c\20int\2c\20bool\2c\20bool\29 +2737:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const +2738:\28anonymous\20namespace\29::bloat_quad\28SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkMatrix\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +2739:\28anonymous\20namespace\29::SkEmptyTypeface::onMakeClone\28SkFontArguments\20const&\29\20const +2740:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29.1 +2741:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29 +2742:\28anonymous\20namespace\29::SkBlurImageFilter::mapSigma\28skif::Mapping\20const&\2c\20bool\29\20const +2743:\28anonymous\20namespace\29::DrawAtlasOpImpl::visitProxies\28std::__2::function\20const&\29\20const +2744:\28anonymous\20namespace\29::DrawAtlasOpImpl::programInfo\28\29 +2745:\28anonymous\20namespace\29::DrawAtlasOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +2746:\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +2747:\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +2748:WebPRescaleNeededLines +2749:WebPInitDecBufferInternal +2750:WebPInitCustomIo +2751:WebPGetFeaturesInternal +2752:WebPDemuxGetFrame +2753:VP8LInitBitReader +2754:VP8LColorIndexInverseTransformAlpha +2755:VP8InitIoInternal +2756:VP8InitBitReader +2757:TT_Vary_Apply_Glyph_Deltas +2758:TT_Set_Var_Design +2759:SkWuffsCodec::decodeFrame\28\29 +2760:SkVertices::MakeCopy\28SkVertices::VertexMode\2c\20int\2c\20SkPoint\20const*\2c\20SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20short\20const*\29 +2761:SkVertices::Builder::texCoords\28\29 +2762:SkVertices::Builder::positions\28\29 +2763:SkVertices::Builder::init\28SkVertices::Desc\20const&\29 +2764:SkVertices::Builder::colors\28\29 +2765:SkVertices::Builder::Builder\28SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +2766:SkTypeface_FreeType::Scanner::GetAxes\28FT_FaceRec_*\2c\20skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>*\29 +2767:SkTypeface_FreeType::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +2768:SkTypeface::getTableSize\28unsigned\20int\29\20const +2769:SkTextBlobRunIterator::positioning\28\29\20const +2770:SkTSpan::splitAt\28SkTSpan*\2c\20double\2c\20SkArenaAlloc*\29 +2771:SkTSect::computePerpendiculars\28SkTSect*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2772:SkTDStorage::insert\28int\29 +2773:SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +2774:SkTDPQueue::percolateDownIfNecessary\28int\29 +2775:SkTConic::hullIntersects\28SkDConic\20const&\2c\20bool*\29\20const +2776:SkSurface_Base::SkSurface_Base\28int\2c\20int\2c\20SkSurfaceProps\20const*\29 +2777:SkSurface::width\28\29\20const +2778:SkStrokerPriv::CapFactory\28SkPaint::Cap\29 +2779:SkStrokeRec::getInflationRadius\28\29\20const +2780:SkString::equals\28char\20const*\29\20const +2781:SkStrikeSpec::MakeTransformMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +2782:SkStrikeSpec::MakePath\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\29 +2783:SkStrike::glyph\28SkGlyphDigest\29 +2784:SkSpecialImages::AsView\28GrRecordingContext*\2c\20SkSpecialImage\20const*\29 +2785:SkShaper::TrivialRunIterator::endOfCurrentRun\28\29\20const +2786:SkShaper::TrivialRunIterator::atEnd\28\29\20const +2787:SkShaper::MakeShapeDontWrapOrReorder\28std::__2::unique_ptr>\2c\20sk_sp\29 +2788:SkShadowTessellator::MakeAmbient\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20bool\29 +2789:SkScan::FillTriangle\28SkPoint\20const*\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2790:SkScan::FillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2791:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2792:SkScan::AntiHairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2793:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\2c\20bool\29 +2794:SkScalerContext_FreeType_Base::drawSVGGlyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +2795:SkScalarInterpFunc\28float\2c\20float\20const*\2c\20float\20const*\2c\20int\29 +2796:SkSLTypeString\28SkSLType\29 +2797:SkSL::simplify_negation\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\29 +2798:SkSL::simplify_matrix_multiplication\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +2799:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +2800:SkSL::build_argument_type_list\28SkSpan>\20const>\29 +2801:SkSL::\28anonymous\20namespace\29::SwitchCaseContainsExit::visitStatement\28SkSL::Statement\20const&\29 +2802:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::returnsInputAlpha\28SkSL::Expression\20const&\29 +2803:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +2804:SkSL::\28anonymous\20namespace\29::ConstantExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +2805:SkSL::Variable::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20SkSL::VariableStorage\29 +2806:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29\20const +2807:SkSL::Type::MakeSamplerType\28char\20const*\2c\20SkSL::Type\20const&\29 +2808:SkSL::ThreadContext::~ThreadContext\28\29 +2809:SkSL::SymbolTable::isType\28std::__2::basic_string_view>\29\20const +2810:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Symbol*\29 +2811:SkSL::Symbol::instantiate\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +2812:SkSL::SampleUsage::merge\28SkSL::SampleUsage\20const&\29 +2813:SkSL::ReturnStatement::~ReturnStatement\28\29.1 +2814:SkSL::ReturnStatement::~ReturnStatement\28\29 +2815:SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +2816:SkSL::RP::Generator::pushTernaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +2817:SkSL::RP::Generator::pushStructuredComparison\28SkSL::RP::LValue*\2c\20SkSL::Operator\2c\20SkSL::RP::LValue*\2c\20SkSL::Type\20const&\29 +2818:SkSL::RP::Generator::pushMatrixMultiply\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +2819:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29 +2820:SkSL::RP::Builder::push_uniform\28SkSL::RP::SlotRange\29 +2821:SkSL::RP::Builder::merge_condition_mask\28\29 +2822:SkSL::RP::Builder::jump\28int\29 +2823:SkSL::RP::Builder::branch_if_no_active_lanes_on_stack_top_equal\28int\2c\20int\29 +2824:SkSL::Pool::~Pool\28\29 +2825:SkSL::Pool::detachFromThread\28\29 +2826:SkSL::PipelineStage::ConvertProgram\28SkSL::Program\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20SkSL::PipelineStage::Callbacks*\29 +2827:SkSL::Parser::unaryExpression\28\29 +2828:SkSL::Parser::swizzle\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::basic_string_view>\2c\20SkSL::Position\29 +2829:SkSL::Parser::statementOrNop\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +2830:SkSL::Parser::block\28\29 +2831:SkSL::Operator::getBinaryPrecedence\28\29\20const +2832:SkSL::ModuleLoader::loadGPUModule\28SkSL::Compiler*\29 +2833:SkSL::ModifierFlags::checkPermittedFlags\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\29\20const +2834:SkSL::Mangler::uniqueName\28std::__2::basic_string_view>\2c\20SkSL::SymbolTable*\29 +2835:SkSL::LiteralType::slotType\28unsigned\20long\29\20const +2836:SkSL::Layout::operator==\28SkSL::Layout\20const&\29\20const +2837:SkSL::Layout::checkPermittedLayout\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkEnumBitMask\29\20const +2838:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29 +2839:SkSL::GLSLCodeGenerator::writeLiteral\28SkSL::Literal\20const&\29 +2840:SkSL::GLSLCodeGenerator::writeFunctionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +2841:SkSL::ForStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::shared_ptr\29 +2842:SkSL::FieldAccess::description\28SkSL::OperatorPrecedence\29\20const +2843:SkSL::Expression::isIncomplete\28SkSL::Context\20const&\29\20const +2844:SkSL::Expression::compareConstant\28SkSL::Expression\20const&\29\20const +2845:SkSL::DebugTracePriv::~DebugTracePriv\28\29 +2846:SkSL::Context::Context\28SkSL::BuiltinTypes\20const&\2c\20SkSL::ErrorReporter&\29 +2847:SkSL::ConstructorArrayCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +2848:SkSL::ConstructorArray::~ConstructorArray\28\29 +2849:SkSL::ConstructorArray::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +2850:SkSL::Compiler::runInliner\28SkSL::Inliner*\2c\20std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20std::__2::shared_ptr\2c\20SkSL::ProgramUsage*\29 +2851:SkSL::Block::MakeBlock\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::shared_ptr\29 +2852:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +2853:SkSL::Analysis::CallsColorTransformIntrinsics\28SkSL::Program\20const&\29 +2854:SkSL::AliasType::bitWidth\28\29\20const +2855:SkRuntimeShaderBuilder::~SkRuntimeShaderBuilder\28\29 +2856:SkRuntimeShaderBuilder::makeShader\28SkMatrix\20const*\29\20const +2857:SkRuntimeEffectPriv::VarAsUniform\28SkSL::Variable\20const&\2c\20SkSL::Context\20const&\2c\20unsigned\20long*\29 +2858:SkRuntimeEffectPriv::UniformsAsSpan\28SkSpan\2c\20sk_sp\2c\20bool\2c\20SkColorSpace\20const*\2c\20SkArenaAlloc*\29 +2859:SkRuntimeEffect::makeShader\28sk_sp\2c\20SkSpan\2c\20SkMatrix\20const*\29\20const +2860:SkResourceCache::checkMessages\28\29 +2861:SkResourceCache::NewCachedData\28unsigned\20long\29 +2862:SkRegion::translate\28int\2c\20int\2c\20SkRegion*\29\20const +2863:SkReduceOrder::Cubic\28SkPoint\20const*\2c\20SkPoint*\29 +2864:SkRectPriv::QuadContainsRect\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20float\29 +2865:SkRectPriv::ClosestDisjointEdge\28SkIRect\20const&\2c\20SkIRect\20const&\29 +2866:SkRecords::PreCachedPath::PreCachedPath\28SkPath\20const&\29 +2867:SkRecords::FillBounds::pushSaveBlock\28SkPaint\20const*\29 +2868:SkRecordDraw\28SkRecord\20const&\2c\20SkCanvas*\2c\20SkPicture\20const*\20const*\2c\20SkDrawable*\20const*\2c\20int\2c\20SkBBoxHierarchy\20const*\2c\20SkPicture::AbortCallback*\29 +2869:SkReadBuffer::readPath\28SkPath*\29 +2870:SkReadBuffer::readByteArrayAsData\28\29 +2871:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29 +2872:SkRasterPipelineBlitter::blitRectWithTrace\28int\2c\20int\2c\20int\2c\20int\2c\20bool\29 +2873:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +2874:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29 +2875:SkRasterPipeline::appendLoad\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +2876:SkRasterClip::op\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkClipOp\2c\20bool\29 +2877:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29 +2878:SkRRect::scaleRadii\28\29 +2879:SkRRect::AreRectAndRadiiValid\28SkRect\20const&\2c\20SkPoint\20const*\29 +2880:SkRBuffer::skip\28unsigned\20long\29 +2881:SkPixmapUtils::SwapWidthHeight\28SkImageInfo\20const&\29 +2882:SkPixmap::setColorSpace\28sk_sp\29 +2883:SkPixelRef::~SkPixelRef\28\29 +2884:SkPixelRef::notifyPixelsChanged\28\29 +2885:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20sk_sp\29 +2886:SkPictureRecord::addPathToHeap\28SkPath\20const&\29 +2887:SkPictureData::getPath\28SkReadBuffer*\29\20const +2888:SkPicture::serialize\28SkWStream*\2c\20SkSerialProcs\20const*\2c\20SkRefCntSet*\2c\20bool\29\20const +2889:SkPathWriter::update\28SkOpPtT\20const*\29 +2890:SkPathStroker::strokeCloseEnough\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20SkQuadConstruct*\29\20const +2891:SkPathStroker::finishContour\28bool\2c\20bool\29 +2892:SkPathRef::reset\28\29 +2893:SkPathRef::isRRect\28SkRRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +2894:SkPathRef::addGenIDChangeListener\28sk_sp\29 +2895:SkPathPriv::IsRectContour\28SkPath\20const&\2c\20bool\2c\20int*\2c\20SkPoint\20const**\2c\20bool*\2c\20SkPathDirection*\2c\20SkRect*\29 +2896:SkPathEffectBase::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +2897:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\29\20const +2898:SkPathBuilder::quadTo\28SkPoint\2c\20SkPoint\29 +2899:SkPathBuilder::cubicTo\28SkPoint\2c\20SkPoint\2c\20SkPoint\29 +2900:SkPath::writeToMemory\28void*\29\20const +2901:SkPath::reversePathTo\28SkPath\20const&\29 +2902:SkPath::rQuadTo\28float\2c\20float\2c\20float\2c\20float\29 +2903:SkPath::contains\28float\2c\20float\29\20const +2904:SkPath::arcTo\28float\2c\20float\2c\20float\2c\20SkPath::ArcSize\2c\20SkPathDirection\2c\20float\2c\20float\29 +2905:SkPath::approximateBytesUsed\28\29\20const +2906:SkPath::addCircle\28float\2c\20float\2c\20float\2c\20SkPathDirection\29 +2907:SkPath::Rect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2908:SkParsePath::ToSVGString\28SkPath\20const&\2c\20SkParsePath::PathEncoding\29::$_0::operator\28\29\28char\2c\20SkPoint\20const*\2c\20unsigned\20long\29\20const +2909:SkParse::FindScalar\28char\20const*\2c\20float*\29 +2910:SkPairPathEffect::flatten\28SkWriteBuffer&\29\20const +2911:SkPaintToGrPaintWithBlend\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2912:SkPaint::refImageFilter\28\29\20const +2913:SkPaint::refBlender\28\29\20const +2914:SkPaint::getBlendMode_or\28SkBlendMode\29\20const +2915:SkPackARGB_as_RGBA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +2916:SkPackARGB_as_BGRA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +2917:SkOpSpan::setOppSum\28int\29 +2918:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20SkOpSpanBase**\29 +2919:SkOpSegment::markAllDone\28\29 +2920:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2921:SkOpPtT::contains\28SkOpSegment\20const*\29\20const +2922:SkOpEdgeBuilder::closeContour\28SkPoint\20const&\2c\20SkPoint\20const&\29 +2923:SkOpCoincidence::releaseDeleted\28\29 +2924:SkOpCoincidence::markCollapsed\28SkOpPtT*\29 +2925:SkOpCoincidence::findOverlaps\28SkOpCoincidence*\29\20const +2926:SkOpCoincidence::expand\28\29 +2927:SkOpCoincidence::apply\28\29 +2928:SkOpAngle::orderable\28SkOpAngle*\29 +2929:SkOpAngle::computeSector\28\29 +2930:SkNullBlitter::~SkNullBlitter\28\29 +2931:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\2c\20sk_sp\29 +2932:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\29 +2933:SkNoDestructor>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>>::SkNoDestructor\28skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>&&\29 +2934:SkMessageBus::BufferFinishedMessage\2c\20GrDirectContext::DirectContextID\2c\20false>::Get\28\29 +2935:SkMemoryStream::SkMemoryStream\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +2936:SkMemoryStream::SkMemoryStream\28sk_sp\29 +2937:SkMatrixPriv::InverseMapRect\28SkMatrix\20const&\2c\20SkRect*\2c\20SkRect\20const&\29 +2938:SkMatrix::setRotate\28float\29 +2939:SkMatrix::setPolyToPoly\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20int\29 +2940:SkMatrix::postSkew\28float\2c\20float\29 +2941:SkMatrix::invert\28SkMatrix*\29\20const +2942:SkMatrix::getMinScale\28\29\20const +2943:SkMaskBuilder::PrepareDestination\28int\2c\20int\2c\20SkMask\20const&\29 +2944:SkMakeBitmapShaderForPaint\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20SkCopyPixelsMode\29 +2945:SkMD5::write\28void\20const*\2c\20unsigned\20long\29 +2946:SkLineClipper::ClipLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\2c\20bool\29 +2947:SkJSONWriter::separator\28bool\29 +2948:SkIntersections::intersectRay\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +2949:SkIntersections::intersectRay\28SkDLine\20const&\2c\20SkDLine\20const&\29 +2950:SkIntersections::intersectRay\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +2951:SkIntersections::intersectRay\28SkDConic\20const&\2c\20SkDLine\20const&\29 +2952:SkIntersections::cleanUpParallelLines\28bool\29 +2953:SkImages::RasterFromBitmap\28SkBitmap\20const&\29 +2954:SkImage_Raster::SkImage_Raster\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20int\29 +2955:SkImage_Ganesh::~SkImage_Ganesh\28\29 +2956:SkImageShader::Make\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2957:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\29 +2958:SkImageInfo::MakeN32Premul\28SkISize\29 +2959:SkImageGenerator::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +2960:SkImageGenerator::SkImageGenerator\28SkImageInfo\20const&\2c\20unsigned\20int\29 +2961:SkImageFilters::MatrixTransform\28SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20sk_sp\29 +2962:SkImageFilters::Blur\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +2963:SkImageFilter_Base::getInputBounds\28skif::Mapping\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\29\20const +2964:SkImageFilter_Base::affectsTransparentBlack\28\29\20const +2965:SkImage::readPixels\28GrDirectContext*\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +2966:SkImage::hasMipmaps\28\29\20const +2967:SkIDChangeListener::List::add\28sk_sp\29 +2968:SkGradientShader::MakeTwoPointConical\28SkPoint\20const&\2c\20float\2c\20SkPoint\20const&\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +2969:SkGradientShader::MakeLinear\28SkPoint\20const*\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +2970:SkGradientBaseShader::AppendInterpolatedToDstStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20bool\2c\20SkGradientShader::Interpolation\20const&\2c\20SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +2971:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkScalerContext*\29 +2972:SkGlyph::mask\28\29\20const +2973:SkFontPriv::ApproximateTransformedTextSize\28SkFont\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\20const&\29 +2974:SkFontMgr::matchFamily\28char\20const*\29\20const +2975:SkFindCubicMaxCurvature\28SkPoint\20const*\2c\20float*\29 +2976:SkEncodedInfo::ICCProfile::Make\28sk_sp\29 +2977:SkEmptyFontMgr::onMatchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +2978:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkIRect\20const*\2c\20int\29 +2979:SkDynamicMemoryWStream::padToAlign4\28\29 +2980:SkDrawable::SkDrawable\28\29 +2981:SkDrawBase::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29\20const +2982:SkDrawBase::drawDevicePoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\2c\20SkDevice*\29\20const +2983:SkDraw::drawBitmap\28SkBitmap\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29\20const +2984:SkDevice::simplifyGlyphRunRSXFormAndRedraw\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +2985:SkDevice::drawFilteredImage\28skif::Mapping\20const&\2c\20SkSpecialImage*\2c\20SkColorType\2c\20SkImageFilter\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +2986:SkDevice::SkDevice\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +2987:SkDataTable::at\28int\2c\20unsigned\20long*\29\20const +2988:SkData::MakeZeroInitialized\28unsigned\20long\29 +2989:SkDQuad::dxdyAtT\28double\29\20const +2990:SkDQuad::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2991:SkDQuad::FindExtrema\28double\20const*\2c\20double*\29 +2992:SkDCubic::subDivide\28double\2c\20double\29\20const +2993:SkDCubic::searchRoots\28double*\2c\20int\2c\20double\2c\20SkDCubic::SearchAxis\2c\20double*\29\20const +2994:SkDCubic::Coefficients\28double\20const*\2c\20double*\2c\20double*\2c\20double*\2c\20double*\29 +2995:SkDConic::dxdyAtT\28double\29\20const +2996:SkDConic::FindExtrema\28double\20const*\2c\20float\2c\20double*\29 +2997:SkCopyStreamToData\28SkStream*\29 +2998:SkContourMeasure_segTo\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20float\2c\20SkPath*\29 +2999:SkContourMeasureIter::next\28\29 +3000:SkContourMeasureIter::Impl::compute_quad_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3001:SkContourMeasureIter::Impl::compute_cubic_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3002:SkContourMeasureIter::Impl::compute_conic_segs\28SkConic\20const&\2c\20float\2c\20int\2c\20SkPoint\20const&\2c\20int\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20int\29 +3003:SkContourMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +3004:SkConic::evalAt\28float\29\20const +3005:SkConic::TransformW\28SkPoint\20const*\2c\20float\2c\20SkMatrix\20const&\29 +3006:SkColorToPMColor4f\28unsigned\20int\2c\20GrColorInfo\20const&\29 +3007:SkColorSpaceLuminance::Fetch\28float\29 +3008:SkColorSpace::transferFn\28skcms_TransferFunction*\29\20const +3009:SkColorSpace::toXYZD50\28skcms_Matrix3x3*\29\20const +3010:SkColorPalette::SkColorPalette\28unsigned\20int\20const*\2c\20int\29 +3011:SkColorFilters::Blend\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\2c\20SkBlendMode\29 +3012:SkColor4fPrepForDst\28SkRGBA4f<\28SkAlphaType\293>\2c\20GrColorInfo\20const&\29 +3013:SkCodecs::get_decoders_for_editing\28\29 +3014:SkCodec::startIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +3015:SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +3016:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\2c\20float\29 +3017:SkCanvas::setMatrix\28SkM44\20const&\29 +3018:SkCanvas::scale\28float\2c\20float\29 +3019:SkCanvas::private_draw_shadow_rec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +3020:SkCanvas::onResetClip\28\29 +3021:SkCanvas::onClipShader\28sk_sp\2c\20SkClipOp\29 +3022:SkCanvas::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +3023:SkCanvas::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3024:SkCanvas::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3025:SkCanvas::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3026:SkCanvas::internal_private_resetClip\28\29 +3027:SkCanvas::internalSaveLayer\28SkCanvas::SaveLayerRec\20const&\2c\20SkCanvas::SaveLayerStrategy\2c\20bool\29 +3028:SkCanvas::experimental_DrawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +3029:SkCanvas::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +3030:SkCanvas::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +3031:SkCanvas::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +3032:SkCanvas::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +3033:SkCanvas::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +3034:SkCanvas::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +3035:SkCanvas::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +3036:SkCanvas::SkCanvas\28SkIRect\20const&\29 +3037:SkCachedData::~SkCachedData\28\29 +3038:SkCTMShader::~SkCTMShader\28\29.1 +3039:SkBmpRLECodec::setPixel\28void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20char\29 +3040:SkBmpCodec::prepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +3041:SkBmpCodec::ReadHeader\28SkStream*\2c\20bool\2c\20std::__2::unique_ptr>*\29 +3042:SkBlurMaskFilterImpl::computeXformedSigma\28SkMatrix\20const&\29\20const +3043:SkBlitterClipper::apply\28SkBlitter*\2c\20SkRegion\20const*\2c\20SkIRect\20const*\29 +3044:SkBlitter::blitRegion\28SkRegion\20const&\29 +3045:SkBitmapDevice::BDDraw::~BDDraw\28\29 +3046:SkBitmapCacheDesc::Make\28SkImage\20const*\29 +3047:SkBitmap::writePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +3048:SkBitmap::setPixels\28void*\29 +3049:SkBitmap::pixelRefOrigin\28\29\20const +3050:SkBitmap::notifyPixelsChanged\28\29\20const +3051:SkBitmap::isImmutable\28\29\20const +3052:SkBitmap::allocPixels\28\29 +3053:SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3054:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29.1 +3055:SkBaseShadowTessellator::handleCubic\28SkMatrix\20const&\2c\20SkPoint*\29 +3056:SkBaseShadowTessellator::handleConic\28SkMatrix\20const&\2c\20SkPoint*\2c\20float\29 +3057:SkAutoPathBoundsUpdate::SkAutoPathBoundsUpdate\28SkPath*\2c\20SkRect\20const&\29 +3058:SkAutoDescriptor::SkAutoDescriptor\28SkAutoDescriptor&&\29 +3059:SkArenaAllocWithReset::SkArenaAllocWithReset\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3060:SkAnimatedImage::getFrameCount\28\29\20const +3061:SkAnimatedImage::decodeNextFrame\28\29 +3062:SkAnimatedImage::Frame::copyTo\28SkAnimatedImage::Frame*\29\20const +3063:SkAnalyticQuadraticEdge::updateQuadratic\28\29 +3064:SkAnalyticCubicEdge::updateCubic\28bool\29 +3065:SkAlphaRuns::reset\28int\29 +3066:SkAAClip::setRect\28SkIRect\20const&\29 +3067:Simplify\28SkPath\20const&\2c\20SkPath*\29 +3068:ReconstructRow +3069:R.1 +3070:OpAsWinding::nextEdge\28Contour&\2c\20OpAsWinding::Edge\29 +3071:OT::sbix::sanitize\28hb_sanitize_context_t*\29\20const +3072:OT::post::accelerator_t::cmp_gids\28void\20const*\2c\20void\20const*\2c\20void*\29 +3073:OT::gvar::sanitize_shallow\28hb_sanitize_context_t*\29\20const +3074:OT::fvar::sanitize\28hb_sanitize_context_t*\29\20const +3075:OT::cmap::sanitize\28hb_sanitize_context_t*\29\20const +3076:OT::cmap::accelerator_t::accelerator_t\28hb_face_t*\29 +3077:OT::cff2::accelerator_templ_t>::~accelerator_templ_t\28\29 +3078:OT::avar::sanitize\28hb_sanitize_context_t*\29\20const +3079:OT::VarRegionList::evaluate\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +3080:OT::Rule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +3081:OT::OpenTypeFontFile::sanitize\28hb_sanitize_context_t*\29\20const +3082:OT::MVAR::sanitize\28hb_sanitize_context_t*\29\20const +3083:OT::Layout::GSUB_impl::SubstLookup::serialize_ligature\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20hb_sorted_array_t\2c\20hb_array_t\2c\20hb_array_t\2c\20hb_array_t\2c\20hb_array_t\29 +3084:OT::Layout::GPOS_impl::MarkArray::apply\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20OT::Layout::GPOS_impl::AnchorMatrix\20const&\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +3085:OT::GDEFVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3086:OT::Device::get_y_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3087:OT::Device::get_x_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3088:OT::ClipList::get_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\2c\20OT::VarStoreInstancer\20const&\29\20const +3089:OT::ChainRule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +3090:OT::CPAL::sanitize\28hb_sanitize_context_t*\29\20const +3091:OT::COLR::sanitize\28hb_sanitize_context_t*\29\20const +3092:OT::COLR::paint_glyph\28hb_font_t*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\29\20const +3093:MakeRasterCopyPriv\28SkPixmap\20const&\2c\20unsigned\20int\29 +3094:LineQuadraticIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineQuadraticIntersections::PinTPoint\29 +3095:LineQuadraticIntersections::checkCoincident\28\29 +3096:LineQuadraticIntersections::addLineNearEndPoints\28\29 +3097:LineCubicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineCubicIntersections::PinTPoint\29 +3098:LineCubicIntersections::checkCoincident\28\29 +3099:LineCubicIntersections::addLineNearEndPoints\28\29 +3100:LineConicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineConicIntersections::PinTPoint\29 +3101:LineConicIntersections::checkCoincident\28\29 +3102:LineConicIntersections::addLineNearEndPoints\28\29 +3103:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\29 +3104:GrVertexChunkBuilder::~GrVertexChunkBuilder\28\29 +3105:GrTriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +3106:GrTriangulator::splitEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +3107:GrTriangulator::pathToPolys\28float\2c\20SkRect\20const&\2c\20bool*\29 +3108:GrTriangulator::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20GrTriangulator::VertexList*\2c\20int\29\20const +3109:GrTriangulator::emitTriangle\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20skgpu::VertexWriter\29\20const +3110:GrTriangulator::checkForIntersection\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +3111:GrTriangulator::applyFillType\28int\29\20const +3112:GrTriangulator::EdgeList::insert\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +3113:GrTriangulator::Edge::insertBelow\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3114:GrTriangulator::Edge::insertAbove\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3115:GrToGLStencilFunc\28GrStencilTest\29 +3116:GrThreadSafeCache::dropAllRefs\28\29 +3117:GrTextureRenderTargetProxy::callbackDesc\28\29\20const +3118:GrTexture::GrTexture\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20GrTextureType\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +3119:GrTexture::ComputeScratchKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20skgpu::ScratchKey*\29 +3120:GrSurfaceProxyView::asTextureProxyRef\28\29\20const +3121:GrSurfaceProxy::GrSurfaceProxy\28std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +3122:GrSurfaceProxy::GrSurfaceProxy\28sk_sp\2c\20SkBackingFit\2c\20GrSurfaceProxy::UseAllocator\29 +3123:GrSurface::setRelease\28sk_sp\29 +3124:GrStyledShape::styledBounds\28\29\20const +3125:GrStyledShape::asLine\28SkPoint*\2c\20bool*\29\20const +3126:GrStyledShape::addGenIDChangeListener\28sk_sp\29\20const +3127:GrSimpleMeshDrawOpHelper::fixedFunctionFlags\28\29\20const +3128:GrShape::setRect\28SkRect\20const&\29 +3129:GrShape::setRRect\28SkRRect\20const&\29 +3130:GrResourceProvider::assignUniqueKeyToResource\28skgpu::UniqueKey\20const&\2c\20GrGpuResource*\29 +3131:GrResourceCache::releaseAll\28\29 +3132:GrResourceCache::getNextTimestamp\28\29 +3133:GrRenderTask::addDependency\28GrRenderTask*\29 +3134:GrRenderTargetProxy::canUseStencil\28GrCaps\20const&\29\20const +3135:GrRecordingContextPriv::addOnFlushCallbackObject\28GrOnFlushCallbackObject*\29 +3136:GrRecordingContext::~GrRecordingContext\28\29 +3137:GrRecordingContext::abandonContext\28\29 +3138:GrQuadUtils::TessellationHelper::Vertices::moveTo\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20int>\20const&\29 +3139:GrQuadUtils::TessellationHelper::EdgeEquations::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\29 +3140:GrQuadUtils::ResolveAAType\28GrAAType\2c\20GrQuadAAFlags\2c\20GrQuad\20const&\2c\20GrAAType*\2c\20GrQuadAAFlags*\29 +3141:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA&&\2c\20GrQuad\20const*\29 +3142:GrPixmap::GrPixmap\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +3143:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29 +3144:GrPersistentCacheUtils::UnpackCachedShaders\28SkReadBuffer*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20int\2c\20GrPersistentCacheUtils::ShaderMetadata*\29 +3145:GrPathUtils::convertCubicToQuads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\29 +3146:GrPathTessellationShader::Make\28GrShaderCaps\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::tess::PatchAttribs\29 +3147:GrOp::chainConcat\28std::__2::unique_ptr>\29 +3148:GrOp::GenOpClassID\28\29 +3149:GrMeshDrawOp::PatternHelper::PatternHelper\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +3150:GrMemoryPool::Make\28unsigned\20long\2c\20unsigned\20long\29 +3151:GrMakeKeyFromImageID\28skgpu::UniqueKey*\2c\20unsigned\20int\2c\20SkIRect\20const&\29 +3152:GrImageInfo::GrImageInfo\28GrColorInfo\20const&\2c\20SkISize\20const&\29 +3153:GrGpuResource::removeScratchKey\28\29 +3154:GrGpuResource::registerWithCacheWrapped\28GrWrapCacheable\29 +3155:GrGpuResource::dumpMemoryStatisticsPriv\28SkTraceMemoryDump*\2c\20SkString\20const&\2c\20char\20const*\2c\20unsigned\20long\29\20const +3156:GrGpuBuffer::onGpuMemorySize\28\29\20const +3157:GrGpu::resolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +3158:GrGpu::executeFlushInfo\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3159:GrGeometryProcessor::TextureSampler::TextureSampler\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +3160:GrGeometryProcessor::ProgramImpl::ComputeMatrixKeys\28GrShaderCaps\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3161:GrGLUniformHandler::getUniformVariable\28GrResourceHandle\29\20const +3162:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +3163:GrGLSemaphore::GrGLSemaphore\28GrGLGpu*\2c\20bool\29 +3164:GrGLSLVaryingHandler::~GrGLSLVaryingHandler\28\29 +3165:GrGLSLUniformHandler::addInputSampler\28skgpu::Swizzle\20const&\2c\20char\20const*\29 +3166:GrGLSLShaderBuilder::emitFunction\28SkSLType\2c\20char\20const*\2c\20SkSpan\2c\20char\20const*\29 +3167:GrGLSLProgramDataManager::setSkMatrix\28GrResourceHandle\2c\20SkMatrix\20const&\29\20const +3168:GrGLSLProgramBuilder::writeFPFunction\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +3169:GrGLSLProgramBuilder::invokeFP\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +3170:GrGLSLProgramBuilder::addRTFlipUniform\28char\20const*\29 +3171:GrGLSLFragmentShaderBuilder::dstColor\28\29 +3172:GrGLSLBlend::BlendKey\28SkBlendMode\29 +3173:GrGLProgramBuilder::~GrGLProgramBuilder\28\29 +3174:GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29 +3175:GrGLGpu::flushScissor\28GrScissorState\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +3176:GrGLGpu::flushClearColor\28std::__2::array\29 +3177:GrGLGpu::createTexture\28SkISize\2c\20GrGLFormat\2c\20unsigned\20int\2c\20skgpu::Renderable\2c\20GrGLTextureParameters::SamplerOverriddenState*\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +3178:GrGLGpu::copySurfaceAsDraw\28GrSurface*\2c\20bool\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +3179:GrGLGpu::SamplerObjectCache::~SamplerObjectCache\28\29 +3180:GrGLGpu::HWVertexArrayState::bindInternalVertexArray\28GrGLGpu*\2c\20GrBuffer\20const*\29 +3181:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29 +3182:GrGLBuffer::Make\28GrGLGpu*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +3183:GrGLAttribArrayState::enableVertexArrays\28GrGLGpu\20const*\2c\20int\2c\20GrPrimitiveRestart\29 +3184:GrFragmentProcessors::make_effect_fp\28sk_sp\2c\20char\20const*\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkSpan\2c\20GrFPArgs\20const&\29 +3185:GrFragmentProcessors::MakeChildFP\28SkRuntimeEffect::ChildPtr\20const&\2c\20GrFPArgs\20const&\29 +3186:GrFragmentProcessors::IsSupported\28SkMaskFilter\20const*\29 +3187:GrFragmentProcessor::makeProgramImpl\28\29\20const +3188:GrFragmentProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +3189:GrFragmentProcessor::MulInputByChildAlpha\28std::__2::unique_ptr>\29 +3190:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +3191:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +3192:GrFinishCallbacks::callAll\28bool\29 +3193:GrDynamicAtlas::makeNode\28GrDynamicAtlas::Node*\2c\20int\2c\20int\2c\20int\2c\20int\29 +3194:GrDrawingManager::setLastRenderTask\28GrSurfaceProxy\20const*\2c\20GrRenderTask*\29 +3195:GrDrawingManager::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3196:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29 +3197:GrDirectContext::resetContext\28unsigned\20int\29 +3198:GrDirectContext::getResourceCacheLimit\28\29\20const +3199:GrDefaultGeoProcFactory::MakeForDeviceSpace\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +3200:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20sk_sp\29 +3201:GrColorSpaceXform::apply\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +3202:GrColorSpaceXform::Equals\28GrColorSpaceXform\20const*\2c\20GrColorSpaceXform\20const*\29 +3203:GrBufferAllocPool::unmap\28\29 +3204:GrBlurUtils::can_filter_mask\28SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect*\29 +3205:GrBicubicEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkRect\20const&\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +3206:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20sk_sp\2c\20std::__2::basic_string_view>\29 +3207:GrBackendFormatStencilBits\28GrBackendFormat\20const&\29 +3208:GrBackendFormat::asMockCompressionType\28\29\20const +3209:GrAATriangulator::~GrAATriangulator\28\29 +3210:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrAATriangulator::EventList*\29\20const +3211:GrAAConvexTessellator::fanRing\28GrAAConvexTessellator::Ring\20const&\29 +3212:GrAAConvexTessellator::computePtAlongBisector\28int\2c\20SkPoint\20const&\2c\20int\2c\20float\2c\20SkPoint*\29\20const +3213:FT_Stream_ReadAt +3214:FT_Stream_OpenMemory +3215:FT_Set_Char_Size +3216:FT_Request_Metrics +3217:FT_Open_Face +3218:FT_Hypot +3219:FT_Get_Var_Design_Coordinates +3220:FT_Get_Paint +3221:FT_Get_MM_Var +3222:FT_Done_Library +3223:DecodeImageData +3224:Cr_z_inflate_table +3225:Cr_z_inflateReset +3226:Cr_z_deflateEnd +3227:Cr_z_copy_with_crc +3228:Compute_Point_Displacement +3229:AAT::trak::sanitize\28hb_sanitize_context_t*\29\20const +3230:AAT::ltag::sanitize\28hb_sanitize_context_t*\29\20const +3231:AAT::feat::sanitize\28hb_sanitize_context_t*\29\20const +3232:AAT::StateTable::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +3233:AAT::Lookup>\2c\20OT::IntType\2c\20false>>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3234:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3235:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3236:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3237:zeroinfnan +3238:xyz_almost_equal\28skcms_Matrix3x3\20const&\2c\20skcms_Matrix3x3\20const&\29 +3239:wyhash\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\20long\2c\20unsigned\20long\20long\20const*\29 +3240:wuffs_lzw__decoder__transform_io +3241:wuffs_gif__decoder__set_quirk_enabled +3242:wuffs_gif__decoder__restart_frame +3243:wuffs_gif__decoder__num_animation_loops +3244:wuffs_gif__decoder__frame_dirty_rect +3245:wuffs_gif__decoder__decode_up_to_id_part1 +3246:wuffs_gif__decoder__decode_frame +3247:write_vertex_position\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrShaderVar\20const&\2c\20SkMatrix\20const&\2c\20char\20const*\2c\20GrShaderVar*\2c\20GrResourceHandle*\29 +3248:write_text_tag\28char\20const*\29 +3249:write_passthrough_vertex_position\28GrGLSLVertexBuilder*\2c\20GrShaderVar\20const&\2c\20GrShaderVar*\29 +3250:write_mAB_or_mBA_tag\28unsigned\20int\2c\20skcms_Curve\20const*\2c\20skcms_Curve\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20skcms_Curve\20const*\2c\20skcms_Matrix3x4\20const*\29 +3251:webgl_get_gl_proc\28void*\2c\20char\20const*\29 +3252:wctomb +3253:wchar_t*\20std::__2::copy\5babi:v160004\5d\2c\20wchar_t*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20wchar_t*\29 +3254:walk_simple_edges\28SkEdge*\2c\20SkBlitter*\2c\20int\2c\20int\29 +3255:vsscanf +3256:void\20std::__2::vector>::assign\28unsigned\20long*\2c\20unsigned\20long*\29 +3257:void\20std::__2::vector>::__emplace_back_slow_path&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&>\28SkFont\20const&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\29 +3258:void\20std::__2::vector>::assign\28skia::textlayout::FontFeature*\2c\20skia::textlayout::FontFeature*\29 +3259:void\20std::__2::vector\2c\20std::__2::allocator>>::__emplace_back_slow_path>\28sk_sp&&\29 +3260:void\20std::__2::vector>::assign\28SkString*\2c\20SkString*\29 +3261:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\29 +3262:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Varying&&\29 +3263:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Attribute&&\29 +3264:void\20std::__2::vector>::assign\28SkFontArguments::VariationPosition::Coordinate*\2c\20SkFontArguments::VariationPosition::Coordinate*\29 +3265:void\20std::__2::vector>::__emplace_back_slow_path\28SkRect&\2c\20int&\2c\20int&\29 +3266:void\20std::__2::allocator_traits>::construct\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\29 +3267:void\20std::__2::__tree_balance_after_insert\5babi:v160004\5d*>\28std::__2::__tree_node_base*\2c\20std::__2::__tree_node_base*\29 +3268:void\20std::__2::__stable_sort_move\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\29 +3269:void\20std::__2::__sift_up\5babi:v160004\5d*>>\28std::__2::__wrap_iter*>\2c\20std::__2::__wrap_iter*>\2c\20GrGeometryProcessor::ProgramImpl::emitTransformCode\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\29::$_0&\2c\20std::__2::iterator_traits*>>::difference_type\29 +3270:void\20std::__2::__optional_storage_base::__assign_from\5babi:v160004\5d\20const&>\28std::__2::__optional_copy_assign_base\20const&\29 +3271:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20char*&\2c\20char*&\29 +3272:void\20std::__2::__call_once_proxy\5babi:v160004\5d>\28void*\29 +3273:void\20sorted_merge<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3274:void\20sorted_merge<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3275:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.1 +3276:void\20skgpu::ganesh::SurfaceFillContext::clear<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\20const&\29 +3277:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +3278:void\20emscripten::internal::MemberAccess::setWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle&\2c\20SimpleFontStyle*\29 +3279:void\20\28anonymous\20namespace\29::copyFT2LCD16\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\29 +3280:void\20SkTIntroSort\28int\2c\20int*\2c\20int\2c\20DistanceLessThan\20const&\29 +3281:void\20SkTIntroSort\28float*\2c\20float*\29::'lambda'\28float\20const&\2c\20float\20const&\29>\28int\2c\20float*\2c\20int\2c\20void\20SkTQSort\28float*\2c\20float*\29::'lambda'\28float\20const&\2c\20float\20const&\29\20const&\29 +3282:void\20SkTIntroSort\28int\2c\20SkString*\2c\20int\2c\20bool\20\20const\28&\29\28SkString\20const&\2c\20SkString\20const&\29\29 +3283:void\20SkTIntroSort\28int\2c\20SkOpRayHit**\2c\20int\2c\20bool\20\20const\28&\29\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29\29 +3284:void\20SkTIntroSort\28SkOpContour**\2c\20SkOpContour**\29::'lambda'\28SkOpContour\20const*\2c\20SkOpContour\20const*\29>\28int\2c\20SkOpContour*\2c\20int\2c\20void\20SkTQSort\28SkOpContour**\2c\20SkOpContour**\29::'lambda'\28SkOpContour\20const*\2c\20SkOpContour\20const*\29\20const&\29 +3285:void\20SkTIntroSort>\2c\20SkCodec::Result*\29::Entry\2c\20SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29::EntryLessThan>\28int\2c\20SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29::Entry*\2c\20int\2c\20SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29::EntryLessThan\20const&\29 +3286:void\20SkTIntroSort\28SkClosestRecord\20const**\2c\20SkClosestRecord\20const**\29::'lambda'\28SkClosestRecord\20const*\2c\20SkClosestRecord\20const*\29>\28int\2c\20SkClosestRecord\20const*\2c\20int\2c\20void\20SkTQSort\28SkClosestRecord\20const**\2c\20SkClosestRecord\20const**\29::'lambda'\28SkClosestRecord\20const*\2c\20SkClosestRecord\20const*\29\20const&\29 +3287:void\20SkTIntroSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29>\28int\2c\20SkAnalyticEdge*\2c\20int\2c\20void\20SkTQSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29\20const&\29 +3288:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\20const\28&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3289:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\28*\20const&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3290:void\20SkTIntroSort\28int\2c\20Edge*\2c\20int\2c\20EdgeLT\20const&\29 +3291:void\20GrGeometryProcessor::ProgramImpl::collectTransforms\28GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGLSLUniformHandler*\2c\20GrShaderType\2c\20GrShaderVar\20const&\2c\20GrShaderVar\20const&\2c\20GrPipeline\20const&\29::$_0::operator\28\29<$_0>\28$_0&\2c\20GrFragmentProcessor\20const&\2c\20bool\2c\20GrFragmentProcessor\20const*\2c\20int\2c\20GrGeometryProcessor::ProgramImpl::collectTransforms\28GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGLSLUniformHandler*\2c\20GrShaderType\2c\20GrShaderVar\20const&\2c\20GrShaderVar\20const&\2c\20GrPipeline\20const&\29::BaseCoord\29 +3292:void\20AAT::StateTableDriver::drive::driver_context_t>\28AAT::LigatureSubtable::driver_context_t*\2c\20AAT::hb_aat_apply_context_t*\29::'lambda0'\28\29::operator\28\29\28\29\20const +3293:virtual\20thunk\20to\20GrGLTexture::onSetLabel\28\29 +3294:virtual\20thunk\20to\20GrGLTexture::backendFormat\28\29\20const +3295:vfiprintf +3296:validate_texel_levels\28SkISize\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20GrCaps\20const*\29 +3297:unsigned\20short\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3298:unsigned\20long\20long\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3299:unsigned\20int\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3300:unsigned\20int\20const*\20std::__2::lower_bound\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20unsigned\20long\20const&\29 +3301:unsigned\20int\20const&\20std::__2::__identity::operator\28\29\28unsigned\20int\20const&\29\20const +3302:ubidi_getLength_skia +3303:u_terminateUChars_skia +3304:u_charType_skia +3305:tt_size_run_prep +3306:tt_size_done_bytecode +3307:tt_sbit_decoder_load_image +3308:tt_face_vary_cvt +3309:tt_face_palette_set +3310:tt_face_load_cvt +3311:tt_face_get_metrics +3312:tt_done_blend +3313:tt_delta_interpolate +3314:tt_cmap4_set_range +3315:tt_cmap4_next +3316:tt_cmap4_char_map_linear +3317:tt_cmap4_char_map_binary +3318:tt_cmap14_get_def_chars +3319:tt_cmap13_next +3320:tt_cmap12_next +3321:tt_cmap12_init +3322:tt_cmap12_char_map_binary +3323:tt_apply_mvar +3324:toParagraphStyle\28SimpleParagraphStyle\20const&\29 +3325:t1_lookup_glyph_by_stdcharcode_ps +3326:t1_builder_close_contour +3327:t1_builder_check_points +3328:strtox.1 +3329:strtoull +3330:strtoll_l +3331:strspn +3332:strncpy +3333:store_int +3334:std::logic_error::~logic_error\28\29 +3335:std::logic_error::logic_error\28char\20const*\29 +3336:std::exception::exception\5babi:v160004\5d\28\29 +3337:std::__2::vector>::__append\28unsigned\20long\29 +3338:std::__2::vector>::max_size\28\29\20const +3339:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +3340:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +3341:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::locale::facet**\29 +3342:std::__2::vector>::__annotate_shrink\5babi:v160004\5d\28unsigned\20long\29\20const +3343:std::__2::vector>::__annotate_new\5babi:v160004\5d\28unsigned\20long\29\20const +3344:std::__2::vector>::__annotate_delete\5babi:v160004\5d\28\29\20const +3345:std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float&&\29 +3346:std::__2::vector<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20std::__2::allocator<\28anonymous\20namespace\29::CacheImpl::Value*>>::__throw_length_error\5babi:v160004\5d\28\29\20const +3347:std::__2::vector>::erase\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +3348:std::__2::vector>::__append\28unsigned\20long\29 +3349:std::__2::unique_ptr::operator=\5babi:v160004\5d\28std::__2::unique_ptr&&\29 +3350:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3351:std::__2::unique_ptr>\20SkSL::coalesce_vector\28std::__2::array\20const&\2c\20double\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\2c\20double\20\28*\29\28double\29\29 +3352:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::nullptr_t\29 +3353:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda0'\28\29::operator\28\29\28\29\20const +3354:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +3355:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29 +3356:std::__2::to_string\28unsigned\20long\29 +3357:std::__2::to_chars_result\20std::__2::__to_chars_itoa\5babi:v160004\5d\28char*\2c\20char*\2c\20unsigned\20int\2c\20std::__2::integral_constant\29 +3358:std::__2::time_put>>::~time_put\28\29 +3359:std::__2::time_get>>::__get_year\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3360:std::__2::time_get>>::__get_weekdayname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3361:std::__2::time_get>>::__get_monthname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3362:std::__2::time_get>>::__get_year\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3363:std::__2::time_get>>::__get_weekdayname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3364:std::__2::time_get>>::__get_monthname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +3365:std::__2::reverse_iterator::operator++\5babi:v160004\5d\28\29 +3366:std::__2::reverse_iterator::operator*\5babi:v160004\5d\28\29\20const +3367:std::__2::priority_queue>\2c\20GrAATriangulator::EventComparator>::push\28GrAATriangulator::Event*\20const&\29 +3368:std::__2::pair\2c\20void*>*>\2c\20bool>\20std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::__emplace_unique_key_args\2c\20std::__2::tuple<>>\28GrFragmentProcessor\20const*\20const&\2c\20std::__2::piecewise_construct_t\20const&\2c\20std::__2::tuple&&\2c\20std::__2::tuple<>&&\29 +3369:std::__2::pair*>\2c\20bool>\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__emplace_unique_key_args\28int\20const&\2c\20int\20const&\29 +3370:std::__2::pair\2c\20std::__2::allocator>>>::pair\28std::__2::pair\2c\20std::__2::allocator>>>&&\29 +3371:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28wchar_t\29 +3372:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28char\29 +3373:std::__2::optional&\20std::__2::optional::operator=\5babi:v160004\5d\28SkPath\20const&\29 +3374:std::__2::numpunct::~numpunct\28\29 +3375:std::__2::numpunct::~numpunct\28\29 +3376:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20int&\29\20const +3377:std::__2::num_get>>\20const&\20std::__2::use_facet\5babi:v160004\5d>>>\28std::__2::locale\20const&\29 +3378:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20int&\29\20const +3379:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3380:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3381:std::__2::moneypunct::do_negative_sign\28\29\20const +3382:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3383:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3384:std::__2::moneypunct::do_negative_sign\28\29\20const +3385:std::__2::money_get>>::__do_get\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::locale\20const&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool&\2c\20std::__2::ctype\20const&\2c\20std::__2::unique_ptr&\2c\20wchar_t*&\2c\20wchar_t*\29 +3386:std::__2::money_get>>::__do_get\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::locale\20const&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool&\2c\20std::__2::ctype\20const&\2c\20std::__2::unique_ptr&\2c\20char*&\2c\20char*\29 +3387:std::__2::locale::__imp::~__imp\28\29 +3388:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20std::__2::random_access_iterator_tag\29 +3389:std::__2::iterator_traits\2c\20std::__2::allocator>\20const*>::difference_type\20std::__2::distance\5babi:v160004\5d\2c\20std::__2::allocator>\20const*>\28std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\29 +3390:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28char*\2c\20char*\29 +3391:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::random_access_iterator_tag\29 +3392:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3393:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3394:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3395:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3396:std::__2::ios_base::width\5babi:v160004\5d\28long\29 +3397:std::__2::ios_base::init\28void*\29 +3398:std::__2::ios_base::imbue\28std::__2::locale\20const&\29 +3399:std::__2::ios_base::clear\28unsigned\20int\29 +3400:std::__2::ios_base::__call_callbacks\28std::__2::ios_base::event\29 +3401:std::__2::hash::operator\28\29\28skia::textlayout::FontArguments\20const&\29\20const +3402:std::__2::enable_if\2c\20sk_sp>::type\20SkLocalMatrixShader::MakeWrapped\2c\20SkTileMode&\2c\20SkTileMode&\2c\20SkFilterMode&\2c\20SkRect\20const*&>\28SkMatrix\20const*\2c\20sk_sp&&\2c\20SkTileMode&\2c\20SkTileMode&\2c\20SkFilterMode&\2c\20SkRect\20const*&\29 +3403:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28char&\2c\20char&\29 +3404:std::__2::enable_if<__is_cpp17_random_access_iterator::value\2c\20char*>::type\20std::__2::copy_n\5babi:v160004\5d\28char\20const*\2c\20unsigned\20long\2c\20char*\29 +3405:std::__2::enable_if<__is_cpp17_forward_iterator::value\2c\20void>::type\20std::__2::basic_string\2c\20std::__2::allocator>::__init\28wchar_t\20const*\2c\20wchar_t\20const*\29 +3406:std::__2::enable_if<__is_cpp17_forward_iterator::value\2c\20void>::type\20std::__2::basic_string\2c\20std::__2::allocator>::__init\28char*\2c\20char*\29 +3407:std::__2::deque>::__add_back_capacity\28\29 +3408:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::gpu::TextBlobRedrawCoordinator*\29\20const +3409:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::GlyphRunBuilder*\29\20const +3410:std::__2::ctype::~ctype\28\29 +3411:std::__2::codecvt::~codecvt\28\29 +3412:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +3413:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char32_t\20const*\2c\20char32_t\20const*\2c\20char32_t\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +3414:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3415:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20char32_t*\2c\20char32_t*\2c\20char32_t*&\29\20const +3416:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char16_t\20const*\2c\20char16_t\20const*\2c\20char16_t\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +3417:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3418:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20char16_t*\2c\20char16_t*\2c\20char16_t*&\29\20const +3419:std::__2::char_traits::not_eof\28int\29 +3420:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +3421:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28\29\20const +3422:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29 +3423:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by_and_replace\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20wchar_t\20const*\29 +3424:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +3425:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +3426:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20char\29 +3427:std::__2::basic_string\2c\20std::__2::allocator>::basic_string>\2c\20void>\28std::__2::basic_string_view>\20const&\29 +3428:std::__2::basic_string\2c\20std::__2::allocator>::__throw_out_of_range\5babi:v160004\5d\28\29\20const +3429:std::__2::basic_string\2c\20std::__2::allocator>::__null_terminate_at\5babi:v160004\5d\28char*\2c\20unsigned\20long\29 +3430:std::__2::basic_string\2c\20std::__2::allocator>&\20std::__2::basic_string\2c\20std::__2::allocator>::__assign_no_alias\28char\20const*\2c\20unsigned\20long\29 +3431:std::__2::basic_string\2c\20std::__2::allocator>&\20skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::emplace_back\28char\20const*&&\29 +3432:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3433:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3434:std::__2::basic_streambuf>::sputc\5babi:v160004\5d\28char\29 +3435:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3436:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3437:std::__2::basic_streambuf>::basic_streambuf\28\29 +3438:std::__2::basic_ostream>::~basic_ostream\28\29.2 +3439:std::__2::basic_ostream>::sentry::~sentry\28\29 +3440:std::__2::basic_ostream>::sentry::sentry\28std::__2::basic_ostream>&\29 +3441:std::__2::basic_ostream>::operator<<\28float\29 +3442:std::__2::basic_ostream>::flush\28\29 +3443:std::__2::basic_istream>::~basic_istream\28\29.2 +3444:std::__2::basic_istream>::sentry::sentry\28std::__2::basic_istream>&\2c\20bool\29 +3445:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\2c\20unsigned\20long\29 +3446:std::__2::allocator::deallocate\5babi:v160004\5d\28wchar_t*\2c\20unsigned\20long\29 +3447:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3448:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3449:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +3450:std::__2::__time_put::__time_put\5babi:v160004\5d\28\29 +3451:std::__2::__time_put::__do_put\28char*\2c\20char*&\2c\20tm\20const*\2c\20char\2c\20char\29\20const +3452:std::__2::__throw_system_error\28int\2c\20char\20const*\29 +3453:std::__2::__split_buffer>::push_back\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +3454:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3455:std::__2::__num_put::__widen_and_group_int\28char*\2c\20char*\2c\20char*\2c\20wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20std::__2::locale\20const&\29 +3456:std::__2::__num_put::__widen_and_group_float\28char*\2c\20char*\2c\20char*\2c\20wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20std::__2::locale\20const&\29 +3457:std::__2::__num_put::__widen_and_group_int\28char*\2c\20char*\2c\20char*\2c\20char*\2c\20char*&\2c\20char*&\2c\20std::__2::locale\20const&\29 +3458:std::__2::__num_put::__widen_and_group_float\28char*\2c\20char*\2c\20char*\2c\20char*\2c\20char*&\2c\20char*&\2c\20std::__2::locale\20const&\29 +3459:std::__2::__money_put::__gather_info\28bool\2c\20bool\2c\20std::__2::locale\20const&\2c\20std::__2::money_base::pattern&\2c\20wchar_t&\2c\20wchar_t&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20int&\29 +3460:std::__2::__money_put::__format\28wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20unsigned\20int\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20std::__2::ctype\20const&\2c\20bool\2c\20std::__2::money_base::pattern\20const&\2c\20wchar_t\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20int\29 +3461:std::__2::__money_put::__gather_info\28bool\2c\20bool\2c\20std::__2::locale\20const&\2c\20std::__2::money_base::pattern&\2c\20char&\2c\20char&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20int&\29 +3462:std::__2::__money_put::__format\28char*\2c\20char*&\2c\20char*&\2c\20unsigned\20int\2c\20char\20const*\2c\20char\20const*\2c\20std::__2::ctype\20const&\2c\20bool\2c\20std::__2::money_base::pattern\20const&\2c\20char\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20int\29 +3463:std::__2::__libcpp_sscanf_l\28char\20const*\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +3464:std::__2::__libcpp_mbrtowc_l\5babi:v160004\5d\28wchar_t*\2c\20char\20const*\2c\20unsigned\20long\2c\20__mbstate_t*\2c\20__locale_struct*\29 +3465:std::__2::__libcpp_mb_cur_max_l\5babi:v160004\5d\28__locale_struct*\29 +3466:std::__2::__libcpp_deallocate\5babi:v160004\5d\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3467:std::__2::__libcpp_allocate\5babi:v160004\5d\28unsigned\20long\2c\20unsigned\20long\29 +3468:std::__2::__is_overaligned_for_new\5babi:v160004\5d\28unsigned\20long\29 +3469:std::__2::__function::__value_func::swap\5babi:v160004\5d\28std::__2::__function::__value_func&\29 +3470:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +3471:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +3472:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +3473:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy\28\29 +3474:std::__2::__constexpr_wcslen\5babi:v160004\5d\28wchar_t\20const*\29 +3475:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::__sso_allocator&\2c\20unsigned\20long\29 +3476:start_input_pass +3477:sktext::gpu::can_use_direct\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3478:sktext::gpu::build_distance_adjust_table\28float\2c\20float\29 +3479:sktext::gpu::VertexFiller::opMaskType\28\29\20const +3480:sktext::gpu::VertexFiller::fillVertexData\28int\2c\20int\2c\20SkSpan\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkIRect\2c\20void*\29\20const +3481:sktext::gpu::TextBlobRedrawCoordinator::internalRemove\28sktext::gpu::TextBlob*\29 +3482:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29::$_2::operator\28\29\28SkZip\2c\20skgpu::MaskFormat\29\20const +3483:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29::$_0::operator\28\29\28SkZip\2c\20skgpu::MaskFormat\29\20const +3484:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29 +3485:sktext::gpu::SubRunContainer::EstimateAllocSize\28sktext::GlyphRunList\20const&\29 +3486:sktext::gpu::SubRunAllocator::SubRunAllocator\28char*\2c\20int\2c\20int\29 +3487:sktext::gpu::StrikeCache::~StrikeCache\28\29 +3488:sktext::gpu::SlugImpl::Make\28SkMatrix\20const&\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\29 +3489:sktext::gpu::Slug::NextUniqueID\28\29 +3490:sktext::gpu::BagOfBytes::BagOfBytes\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29::$_1::operator\28\29\28\29\20const +3491:sktext::glyphrun_source_bounds\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkZip\2c\20SkSpan\29 +3492:sktext::SkStrikePromise::resetStrike\28\29 +3493:sktext::SkStrikePromise::SkStrikePromise\28sk_sp&&\29 +3494:sktext::GlyphRunList::makeBlob\28\29\20const +3495:sktext::GlyphRunBuilder::blobToGlyphRunList\28SkTextBlob\20const&\2c\20SkPoint\29 +3496:skstd::to_string\28float\29 +3497:skpathutils::FillPathWithPaint\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkPath*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29 +3498:skjpeg_err_exit\28jpeg_common_struct*\29 +3499:skip_string +3500:skip_procedure +3501:skif::\28anonymous\20namespace\29::is_nearly_integer_translation\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29 +3502:skif::\28anonymous\20namespace\29::extract_subset\28SkSpecialImage\20const*\2c\20skif::LayerSpace\2c\20skif::LayerSpace\20const&\2c\20bool\29 +3503:skif::\28anonymous\20namespace\29::decompose_transform\28SkMatrix\20const&\2c\20SkPoint\2c\20SkMatrix*\2c\20SkMatrix*\29 +3504:skif::\28anonymous\20namespace\29::GaneshBackend::maxSigma\28\29\20const +3505:skif::\28anonymous\20namespace\29::GaneshBackend::getBlurEngine\28\29\20const +3506:skif::\28anonymous\20namespace\29::GaneshBackend::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +3507:skif::Mapping::applyOrigin\28skif::LayerSpace\20const&\29 +3508:skif::LayerSpace::relevantSubset\28skif::LayerSpace\2c\20SkTileMode\29\20const +3509:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20bool\2c\20SkBlender\20const*\29\20const +3510:skif::FilterResult::applyCrop\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkTileMode\29\20const +3511:skif::FilterResult::FilterResult\28std::__2::pair\2c\20skif::LayerSpace>\29 +3512:skia_private::THashTable::Traits>::set\28unsigned\20long\20long\29 +3513:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3514:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeSlot\28int\29 +3515:skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair&&\29 +3516:skia_private::THashTable\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair&&\29 +3517:skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair&&\29 +3518:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3519:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +3520:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::find\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +3521:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3522:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +3523:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::resize\28int\29 +3524:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28skgpu::ganesh::SmallPathShapeData*&&\29 +3525:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3526:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::uncheckedSet\28sk_sp&&\29 +3527:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::resize\28int\29 +3528:skia_private::THashTable<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20SkImageFilterCacheKey\2c\20SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::AdaptedTraits>::uncheckedSet\28\28anonymous\20namespace\29::CacheImpl::Value*&&\29 +3529:skia_private::THashTable<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20SkImageFilterCacheKey\2c\20SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::AdaptedTraits>::resize\28int\29 +3530:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3531:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3532:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3533:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3534:skia_private::THashTable::uncheckedSet\28SkResourceCache::Rec*&&\29 +3535:skia_private::THashTable::resize\28int\29 +3536:skia_private::THashTable\2c\20SkGoodHash>::Entry*\2c\20unsigned\20long\20long\2c\20SkLRUCache\2c\20SkGoodHash>::Traits>::resize\28int\29 +3537:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::set\28SkLRUCache::Entry*\29 +3538:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::resize\28int\29 +3539:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::uncheckedSet\28SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*&&\29 +3540:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::resize\28int\29 +3541:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrGpuResource*&&\29 +3542:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3543:skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::set\28unsigned\20int\2c\20sk_sp\20\28*\29\28SkReadBuffer&\29\29 +3544:skia_private::THashMap>\2c\20SkGoodHash>::remove\28SkImageFilter\20const*\20const&\29 +3545:skia_private::TArray::push_back_raw\28int\29 +3546:skia_private::TArray::resize_back\28int\29 +3547:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::checkRealloc\28int\2c\20double\29 +3548:skia_private::TArray::~TArray\28\29 +3549:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3550:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3551:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3552:skia_private::TArray::BufferFinishedMessage\2c\20false>::operator=\28skia_private::TArray::BufferFinishedMessage\2c\20false>&&\29 +3553:skia_private::TArray::BufferFinishedMessage\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +3554:skia_private::TArray::Plane\2c\20false>::move\28void*\29 +3555:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +3556:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3557:skia_private::TArray\29::ReorderedArgument\2c\20false>::push_back\28SkSL::optimize_constructor_swizzle\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ConstructorCompound\20const&\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29::ReorderedArgument&&\29 +3558:skia_private::TArray::TArray\28skia_private::TArray&&\29 +3559:skia_private::TArray::swap\28skia_private::TArray&\29 +3560:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +3561:skia_private::TArray::push_back_raw\28int\29 +3562:skia_private::TArray::push_back_raw\28int\29 +3563:skia_private::TArray::push_back_raw\28int\29 +3564:skia_private::TArray::move_back_n\28int\2c\20GrTextureProxy**\29 +3565:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3566:skia_private::TArray::push_back_n\28int\2c\20EllipticalRRectOp::RRect\20const*\29 +3567:skia_private::STArray<4\2c\20signed\20char\2c\20true>::STArray\28skia_private::STArray<4\2c\20signed\20char\2c\20true>\20const&\29 +3568:skia_png_zfree +3569:skia_png_write_zTXt +3570:skia_png_write_tIME +3571:skia_png_write_tEXt +3572:skia_png_write_iTXt +3573:skia_png_set_write_fn +3574:skia_png_set_strip_16 +3575:skia_png_set_read_user_transform_fn +3576:skia_png_set_read_user_chunk_fn +3577:skia_png_set_option +3578:skia_png_set_mem_fn +3579:skia_png_set_expand_gray_1_2_4_to_8 +3580:skia_png_set_error_fn +3581:skia_png_set_compression_level +3582:skia_png_set_IHDR +3583:skia_png_read_filter_row +3584:skia_png_process_IDAT_data +3585:skia_png_icc_set_sRGB +3586:skia_png_icc_check_tag_table +3587:skia_png_icc_check_header +3588:skia_png_get_uint_31 +3589:skia_png_get_sBIT +3590:skia_png_get_rowbytes +3591:skia_png_get_error_ptr +3592:skia_png_get_IHDR +3593:skia_png_do_swap +3594:skia_png_do_read_transformations +3595:skia_png_do_read_interlace +3596:skia_png_do_packswap +3597:skia_png_do_invert +3598:skia_png_do_gray_to_rgb +3599:skia_png_do_expand +3600:skia_png_do_check_palette_indexes +3601:skia_png_do_bgr +3602:skia_png_destroy_png_struct +3603:skia_png_destroy_gamma_table +3604:skia_png_create_png_struct +3605:skia_png_create_info_struct +3606:skia_png_crc_read +3607:skia_png_colorspace_sync_info +3608:skia_png_check_IHDR +3609:skia::textlayout::TypefaceFontStyleSet::matchStyle\28SkFontStyle\20const&\29 +3610:skia::textlayout::TextStyle::matchOneAttribute\28skia::textlayout::StyleType\2c\20skia::textlayout::TextStyle\20const&\29\20const +3611:skia::textlayout::TextStyle::equals\28skia::textlayout::TextStyle\20const&\29\20const +3612:skia::textlayout::TextShadow::operator!=\28skia::textlayout::TextShadow\20const&\29\20const +3613:skia::textlayout::TextLine::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +3614:skia::textlayout::TextLine::iterateThroughClustersInGlyphsOrder\28bool\2c\20bool\2c\20std::__2::function\20const&\29\20const::$_0::operator\28\29\28unsigned\20long\20const&\29\20const +3615:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29::operator\28\29\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\20const::'lambda'\28SkRect\29::operator\28\29\28SkRect\29\20const +3616:skia::textlayout::TextLine::getMetrics\28\29\20const +3617:skia::textlayout::TextLine::ensureTextBlobCachePopulated\28\29 +3618:skia::textlayout::TextLine::buildTextBlob\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +3619:skia::textlayout::TextLine::TextLine\28skia::textlayout::ParagraphImpl*\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20skia::textlayout::InternalLineMetrics\29 +3620:skia::textlayout::TextLine&\20skia_private::TArray::emplace_back&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20float&\2c\20skia::textlayout::InternalLineMetrics&>\28skia::textlayout::ParagraphImpl*&&\2c\20SkPoint&\2c\20SkPoint&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20float&\2c\20skia::textlayout::InternalLineMetrics&\29 +3621:skia::textlayout::Run::shift\28skia::textlayout::Cluster\20const*\2c\20float\29 +3622:skia::textlayout::Run::newRunBuffer\28\29 +3623:skia::textlayout::Run::findLimitingGlyphClusters\28skia::textlayout::SkRange\29\20const +3624:skia::textlayout::ParagraphStyle::effective_align\28\29\20const +3625:skia::textlayout::ParagraphStyle::ParagraphStyle\28\29 +3626:skia::textlayout::ParagraphPainter::DecorationStyle::DecorationStyle\28unsigned\20int\2c\20float\2c\20std::__2::optional\29 +3627:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29 +3628:skia::textlayout::ParagraphImpl::text\28skia::textlayout::SkRange\29 +3629:skia::textlayout::ParagraphImpl::resolveStrut\28\29 +3630:skia::textlayout::ParagraphImpl::getGlyphInfoAtUTF16Offset\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +3631:skia::textlayout::ParagraphImpl::getGlyphClusterAt\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +3632:skia::textlayout::ParagraphImpl::findPreviousGraphemeBoundary\28unsigned\20long\29\20const +3633:skia::textlayout::ParagraphImpl::computeEmptyMetrics\28\29 +3634:skia::textlayout::ParagraphImpl::clusters\28skia::textlayout::SkRange\29 +3635:skia::textlayout::ParagraphImpl::block\28unsigned\20long\29 +3636:skia::textlayout::ParagraphCacheValue::~ParagraphCacheValue\28\29 +3637:skia::textlayout::ParagraphCacheKey::ParagraphCacheKey\28skia::textlayout::ParagraphImpl\20const*\29 +3638:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29 +3639:skia::textlayout::ParagraphBuilderImpl::make\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\29 +3640:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\2c\20bool\29 +3641:skia::textlayout::ParagraphBuilderImpl::ParagraphBuilderImpl\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\29 +3642:skia::textlayout::Paragraph::~Paragraph\28\29 +3643:skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29 +3644:skia::textlayout::FontCollection::~FontCollection\28\29 +3645:skia::textlayout::FontCollection::matchTypeface\28SkString\20const&\2c\20SkFontStyle\29 +3646:skia::textlayout::FontCollection::defaultFallback\28int\2c\20SkFontStyle\2c\20SkString\20const&\29 +3647:skia::textlayout::FontCollection::FamilyKey::Hasher::operator\28\29\28skia::textlayout::FontCollection::FamilyKey\20const&\29\20const +3648:skgpu::tess::\28anonymous\20namespace\29::write_curve_index_buffer_base_index\28skgpu::VertexWriter\2c\20unsigned\20long\2c\20unsigned\20short\29 +3649:skgpu::tess::StrokeIterator::next\28\29 +3650:skgpu::tess::StrokeIterator::finishOpenContour\28\29 +3651:skgpu::tess::PreChopPathCurves\28float\2c\20SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +3652:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29 +3653:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::SmallPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20GrUserStencilSettings\20const*\29 +3654:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::recordDraw\28GrMeshDrawTarget*\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20int\2c\20unsigned\20short*\29 +3655:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::AAFlatteningConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20float\2c\20SkStrokeRec::Style\2c\20SkPaint::Join\2c\20float\2c\20GrUserStencilSettings\20const*\29 +3656:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::AAConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrUserStencilSettings\20const*\29 +3657:skgpu::ganesh::TextureOp::Make\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::ganesh::TextureOp::Saturate\2c\20SkBlendMode\2c\20GrAAType\2c\20DrawQuad*\2c\20SkRect\20const*\29 +3658:skgpu::ganesh::TessellationPathRenderer::IsSupported\28GrCaps\20const&\29 +3659:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +3660:skgpu::ganesh::SurfaceFillContext::blitTexture\28GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\29 +3661:skgpu::ganesh::SurfaceFillContext::addOp\28std::__2::unique_ptr>\29 +3662:skgpu::ganesh::SurfaceFillContext::addDrawOp\28std::__2::unique_ptr>\29 +3663:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29.1 +3664:skgpu::ganesh::SurfaceDrawContext::drawVertices\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20sk_sp\2c\20GrPrimitiveType*\2c\20bool\29 +3665:skgpu::ganesh::SurfaceDrawContext::drawTexturedQuad\28GrClip\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkBlendMode\2c\20DrawQuad*\2c\20SkRect\20const*\29 +3666:skgpu::ganesh::SurfaceDrawContext::drawTexture\28GrClip\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkBlendMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20sk_sp\29 +3667:skgpu::ganesh::SurfaceDrawContext::drawStrokedLine\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkStrokeRec\20const&\29 +3668:skgpu::ganesh::SurfaceDrawContext::drawRegion\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrStyle\20const&\2c\20GrUserStencilSettings\20const*\29 +3669:skgpu::ganesh::SurfaceDrawContext::drawOval\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\29 +3670:skgpu::ganesh::SurfaceDrawContext::SurfaceDrawContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +3671:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29 +3672:skgpu::ganesh::SurfaceContext::writePixels\28GrDirectContext*\2c\20GrCPixmap\2c\20SkIPoint\29 +3673:skgpu::ganesh::SurfaceContext::copy\28sk_sp\2c\20SkIRect\2c\20SkIPoint\29 +3674:skgpu::ganesh::SurfaceContext::copyScaled\28sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20SkFilterMode\29 +3675:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +3676:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::FinishContext::~FinishContext\28\29 +3677:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +3678:skgpu::ganesh::SurfaceContext::SurfaceContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +3679:skgpu::ganesh::StrokeTessellator::draw\28GrOpFlushState*\29\20const +3680:skgpu::ganesh::StrokeTessellateOp::prePrepareTessellator\28GrTessellationShader::ProgramArgs&&\2c\20GrAppliedClip&&\29 +3681:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::NonAAStrokeRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrSimpleMeshDrawOpHelper::InputFlags\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\2c\20GrAAType\29 +3682:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::AAStrokeRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::RectInfo\20const&\2c\20bool\29 +3683:skgpu::ganesh::StencilMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkRegion::Op\2c\20GrAA\29 +3684:skgpu::ganesh::SoftwarePathRenderer::DrawAroundInvPath\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrPaint&&\2c\20GrUserStencilSettings\20const&\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29 +3685:skgpu::ganesh::SmallPathAtlasMgr::findOrCreate\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +3686:skgpu::ganesh::SmallPathAtlasMgr::deleteCacheEntry\28skgpu::ganesh::SmallPathShapeData*\29 +3687:skgpu::ganesh::ShadowRRectOp::Make\28GrRecordingContext*\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20float\2c\20float\29 +3688:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::RegionOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\29 +3689:skgpu::ganesh::RasterAsView\28GrRecordingContext*\2c\20SkImage_Raster\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +3690:skgpu::ganesh::QuadPerEdgeAA::Tessellator::append\28GrQuad*\2c\20GrQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\29 +3691:skgpu::ganesh::QuadPerEdgeAA::Tessellator::Tessellator\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29 +3692:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::initializeAttrs\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29 +3693:skgpu::ganesh::QuadPerEdgeAA::IssueDraw\28GrCaps\20const&\2c\20GrOpsRenderPass*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3694:skgpu::ganesh::QuadPerEdgeAA::GetIndexBuffer\28GrMeshDrawTarget*\2c\20skgpu::ganesh::QuadPerEdgeAA::IndexBufferOption\29 +3695:skgpu::ganesh::PathTessellateOp::usesMSAA\28\29\20const +3696:skgpu::ganesh::PathTessellateOp::prepareTessellator\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +3697:skgpu::ganesh::PathTessellateOp::PathTessellateOp\28SkArenaAlloc*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\2c\20SkRect\20const&\29 +3698:skgpu::ganesh::PathStencilCoverOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +3699:skgpu::ganesh::PathRenderer::getStencilSupport\28GrStyledShape\20const&\29\20const +3700:skgpu::ganesh::PathInnerTriangulateOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +3701:skgpu::ganesh::PathCurveTessellator::~PathCurveTessellator\28\29 +3702:skgpu::ganesh::PathCurveTessellator::prepareWithTriangles\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20GrTriangulator::BreadcrumbTriangleList*\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +3703:skgpu::ganesh::OpsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +3704:skgpu::ganesh::OpsTask::onExecute\28GrOpFlushState*\29 +3705:skgpu::ganesh::OpsTask::addOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +3706:skgpu::ganesh::OpsTask::addDrawOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +3707:skgpu::ganesh::OpsTask::OpsTask\28GrDrawingManager*\2c\20GrSurfaceProxyView\2c\20GrAuditTrail*\2c\20sk_sp\29 +3708:skgpu::ganesh::OpsTask::OpChain::tryConcat\28skgpu::ganesh::OpsTask::OpChain::List*\2c\20GrProcessorSet::Analysis\2c\20GrDstProxyView\20const&\2c\20GrAppliedClip\20const*\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrAuditTrail*\29 +3709:skgpu::ganesh::MakeFragmentProcessorFromView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +3710:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29 +3711:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29 +3712:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::NonAALatticeOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20std::__2::unique_ptr>\2c\20SkRect\20const&\29 +3713:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::LocalCoords\20const&\2c\20GrAA\29 +3714:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::FillRRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::LocalCoords\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::ProcessorFlags\29 +3715:skgpu::ganesh::DrawAtlasPathOp::prepareProgram\28GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +3716:skgpu::ganesh::Device::replaceBackingProxy\28SkSurface::ContentChangeMode\2c\20sk_sp\2c\20GrColorType\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +3717:skgpu::ganesh::Device::makeSpecial\28SkBitmap\20const&\29 +3718:skgpu::ganesh::Device::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +3719:skgpu::ganesh::Device::drawEdgeAAImage\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20SkTileMode\29 +3720:skgpu::ganesh::Device::discard\28\29 +3721:skgpu::ganesh::Device::android_utils_clipAsRgn\28SkRegion*\29\20const +3722:skgpu::ganesh::DefaultPathRenderer::internalDrawPath\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20GrUserStencilSettings\20const&\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20bool\29 +3723:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +3724:skgpu::ganesh::CopyView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\2c\20std::__2::basic_string_view>\29 +3725:skgpu::ganesh::ClipStack::clipPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrAA\2c\20SkClipOp\29 +3726:skgpu::ganesh::ClipStack::SaveRecord::replaceWithElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +3727:skgpu::ganesh::ClipStack::SaveRecord::addElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +3728:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::Draw\20const&\29\20const +3729:skgpu::ganesh::AtlasTextOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +3730:skgpu::ganesh::AtlasTextOp::AtlasTextOp\28skgpu::ganesh::AtlasTextOp::MaskType\2c\20bool\2c\20int\2c\20SkRect\2c\20skgpu::ganesh::AtlasTextOp::Geometry*\2c\20GrColorInfo\20const&\2c\20GrPaint&&\29 +3731:skgpu::ganesh::AtlasRenderTask::stencilAtlasRect\28GrRecordingContext*\2c\20SkRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrUserStencilSettings\20const*\29 +3732:skgpu::ganesh::AtlasRenderTask::addPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIPoint\2c\20int\2c\20int\2c\20bool\2c\20SkIPoint16*\29 +3733:skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +3734:skgpu::ganesh::AtlasPathRenderer::addPathToAtlas\28GrRecordingContext*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRect\20const&\2c\20SkIRect*\2c\20SkIPoint16*\2c\20bool*\2c\20std::__2::function\20const&\29 +3735:skgpu::ganesh::AsFragmentProcessor\28GrRecordingContext*\2c\20SkImage\20const*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +3736:skgpu::TiledTextureUtils::OptimizeSampleArea\28SkISize\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkRect*\2c\20SkRect*\2c\20SkMatrix*\29 +3737:skgpu::TClientMappedBufferManager::process\28\29 +3738:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29 +3739:skgpu::RectanizerSkyline::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +3740:skgpu::Plot::Plot\28int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20SkColorType\2c\20unsigned\20long\29 +3741:skgpu::GetReducedBlendModeInfo\28SkBlendMode\29 +3742:skgpu::BlendFuncName\28SkBlendMode\29 +3743:skcms_private::baseline::exec_stages\28skcms_private::Op\20const*\2c\20void\20const**\2c\20char\20const*\2c\20char*\2c\20int\29 +3744:skcms_private::baseline::clut\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20float\20vector\5b4\5d*\2c\20float\20vector\5b4\5d*\2c\20float\20vector\5b4\5d*\2c\20float\20vector\5b4\5d*\29 +3745:skcms_ApproximatelyEqualProfiles +3746:sk_sp\20sk_make_sp\2c\20SkSurfaceProps\20const*&>\28SkImageInfo\20const&\2c\20sk_sp&&\2c\20SkSurfaceProps\20const*&\29 +3747:sk_fopen\28char\20const*\2c\20SkFILE_Flags\29 +3748:sk_fgetsize\28_IO_FILE*\29 +3749:sk_fclose\28_IO_FILE*\29 +3750:sk_error_fn\28png_struct_def*\2c\20char\20const*\29 +3751:setup_masks_arabic_plan\28arabic_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_script_t\29 +3752:set_khr_debug_label\28GrGLGpu*\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +3753:setThrew +3754:serialize_image\28SkImage\20const*\2c\20SkSerialProcs\29 +3755:send_tree +3756:sect_with_vertical\28SkPoint\20const*\2c\20float\29 +3757:sect_with_horizontal\28SkPoint\20const*\2c\20float\29 +3758:scanexp +3759:scalbnl +3760:rewind_if_necessary\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +3761:resolveImplicitLevels\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +3762:reset_and_decode_image_config\28wuffs_gif__decoder__struct*\2c\20wuffs_base__image_config__struct*\2c\20wuffs_base__io_buffer__struct*\2c\20SkStream*\29 +3763:renderbuffer_storage_msaa\28GrGLGpu*\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +3764:recursive_edge_intersect\28GrTriangulator::Line\20const&\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Line\20const&\2c\20SkPoint\2c\20SkPoint\2c\20SkPoint*\2c\20double*\2c\20double*\29 +3765:reclassify_vertex\28TriangulationVertex*\2c\20SkPoint\20const*\2c\20int\2c\20ReflexHash*\2c\20SkTInternalLList*\29 +3766:read_metadata\28std::__2::vector>\20const&\2c\20unsigned\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +3767:quad_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3768:quad_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3769:quad_in_line\28SkPoint\20const*\29 +3770:psh_hint_table_init +3771:psh_hint_table_find_strong_points +3772:psh_hint_table_activate_mask +3773:psh_hint_align +3774:psh_glyph_interpolate_strong_points +3775:psh_glyph_interpolate_other_points +3776:psh_glyph_interpolate_normal_points +3777:psh_blues_set_zones +3778:ps_parser_load_field +3779:ps_dimension_end +3780:ps_dimension_done +3781:ps_builder_start_point +3782:printf_core +3783:premultiply_argb_as_rgba\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3784:premultiply_argb_as_bgra\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3785:position_cluster\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\29 +3786:portable::uniform_color_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3787:portable::set_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3788:portable::scale_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3789:portable::memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\29 +3790:portable::lerp_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3791:portable::copy_from_indirect_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3792:portable::copy_2_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3793:portable::check_decal_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3794:pop_arg +3795:pntz +3796:png_inflate +3797:png_deflate_claim +3798:png_decompress_chunk +3799:png_cache_unknown_chunk +3800:optimize_layer_filter\28SkImageFilter\20const*\2c\20SkPaint*\29 +3801:operator==\28SkPaint\20const&\2c\20SkPaint\20const&\29 +3802:open_face +3803:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +3804:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +3805:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +3806:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +3807:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +3808:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +3809:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +3810:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +3811:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::size\28\29\20const +3812:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3813:nearly_equal\28double\2c\20double\29 +3814:mbsrtowcs +3815:map_quad_general\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20SkMatrix\20const&\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\29 +3816:make_tiled_gradient\28GrFPArgs\20const&\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +3817:make_premul_effect\28std::__2::unique_ptr>\29 +3818:make_dual_interval_colorizer\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20float\29 +3819:make_clamped_gradient\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20bool\29 +3820:make_bmp_proxy\28GrProxyProvider*\2c\20SkBitmap\20const&\2c\20GrColorType\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +3821:longest_match +3822:long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3823:long\20long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3824:long\20double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +3825:load_post_names +3826:line_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3827:line_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3828:legalfunc$_embind_register_bigint +3829:jpeg_open_backing_store +3830:jpeg_destroy +3831:jpeg_alloc_huff_table +3832:jinit_upsampler +3833:initial_reordering_consonant_syllable\28hb_ot_shape_plan_t\20const*\2c\20hb_face_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +3834:init_error_limit +3835:init_block +3836:image_filter_color_type\28SkImageInfo\29 +3837:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +3838:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +3839:hb_utf8_t::next\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20int*\2c\20unsigned\20int\29 +3840:hb_unicode_script +3841:hb_unicode_mirroring_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +3842:hb_unicode_funcs_t::is_default_ignorable\28unsigned\20int\29 +3843:hb_shape_plan_key_t::init\28bool\2c\20hb_face_t*\2c\20hb_segment_properties_t\20const*\2c\20hb_feature_t\20const*\2c\20unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20char\20const*\20const*\29 +3844:hb_shape_plan_create2 +3845:hb_serialize_context_t::fini\28\29 +3846:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +3847:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +3848:hb_paint_extents_paint_linear_gradient\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +3849:hb_paint_extents_get_funcs\28\29 +3850:hb_paint_extents_context_t::hb_paint_extents_context_t\28\29 +3851:hb_ot_map_t::fini\28\29 +3852:hb_ot_layout_table_select_script +3853:hb_ot_layout_table_get_lookup_count +3854:hb_ot_layout_table_find_feature_variations +3855:hb_ot_layout_table_find_feature\28hb_face_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +3856:hb_ot_layout_script_select_language +3857:hb_ot_layout_language_get_required_feature +3858:hb_ot_layout_language_find_feature +3859:hb_ot_layout_has_substitution +3860:hb_ot_layout_feature_with_variations_get_lookups +3861:hb_ot_layout_collect_features_map +3862:hb_ot_font_set_funcs +3863:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::create\28hb_face_t*\29 +3864:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::get\28\29\20const +3865:hb_lazy_loader_t\2c\20hb_face_t\2c\2019u\2c\20hb_blob_t>::get\28\29\20const +3866:hb_lazy_loader_t\2c\20hb_face_t\2c\2035u\2c\20hb_blob_t>::get\28\29\20const +3867:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::get\28\29\20const +3868:hb_lazy_loader_t\2c\20hb_face_t\2c\2032u\2c\20hb_blob_t>::get\28\29\20const +3869:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get\28\29\20const +3870:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get\28\29\20const +3871:hb_language_matches +3872:hb_indic_get_categories\28unsigned\20int\29 +3873:hb_hashmap_t::fetch_item\28hb_serialize_context_t::object_t\20const*\20const&\2c\20unsigned\20int\29\20const +3874:hb_hashmap_t::alloc\28unsigned\20int\29 +3875:hb_font_t::get_glyph_v_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +3876:hb_font_set_variations +3877:hb_font_set_funcs +3878:hb_font_get_variation_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +3879:hb_font_get_glyph_h_advance +3880:hb_font_get_glyph_extents +3881:hb_font_get_font_h_extents_nil\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +3882:hb_font_funcs_set_variation_glyph_func +3883:hb_font_funcs_set_nominal_glyphs_func +3884:hb_font_funcs_set_nominal_glyph_func +3885:hb_font_funcs_set_glyph_h_advances_func +3886:hb_font_funcs_set_glyph_extents_func +3887:hb_font_funcs_create +3888:hb_draw_move_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +3889:hb_draw_funcs_set_quadratic_to_func +3890:hb_draw_funcs_set_move_to_func +3891:hb_draw_funcs_set_line_to_func +3892:hb_draw_funcs_set_cubic_to_func +3893:hb_draw_funcs_destroy +3894:hb_draw_funcs_create +3895:hb_draw_extents_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +3896:hb_buffer_t::sort\28unsigned\20int\2c\20unsigned\20int\2c\20int\20\28*\29\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29\29 +3897:hb_buffer_t::safe_to_insert_tatweel\28unsigned\20int\2c\20unsigned\20int\29 +3898:hb_buffer_t::output_info\28hb_glyph_info_t\20const&\29 +3899:hb_buffer_t::message_impl\28hb_font_t*\2c\20char\20const*\2c\20void*\29 +3900:hb_buffer_t::leave\28\29 +3901:hb_buffer_t::delete_glyphs_inplace\28bool\20\28*\29\28hb_glyph_info_t\20const*\29\29 +3902:hb_buffer_t::clear_positions\28\29 +3903:hb_buffer_set_length +3904:hb_buffer_get_glyph_positions +3905:hb_buffer_diff +3906:hb_buffer_create +3907:hb_buffer_clear_contents +3908:hb_buffer_add_utf8 +3909:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3910:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3911:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3912:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3913:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3914:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3915:hb_aat_layout_remove_deleted_glyphs\28hb_buffer_t*\29 +3916:hair_cubic\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkBlitter*\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +3917:getint +3918:get_win_string +3919:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20bool\2c\20float\29 +3920:get_dst_swizzle_and_store\28GrColorType\2c\20SkRasterPipelineOp*\2c\20LumMode*\2c\20bool*\2c\20bool*\29 +3921:get_driver_and_version\28GrGLStandard\2c\20GrGLVendor\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +3922:get_cicp_trfn\28skcms_TransferFunction\20const&\29 +3923:get_cicp_primaries\28skcms_Matrix3x3\20const&\29 +3924:gen_key\28skgpu::KeyBuilder*\2c\20GrProgramInfo\20const&\2c\20GrCaps\20const&\29 +3925:gen_fp_key\28GrFragmentProcessor\20const&\2c\20GrCaps\20const&\2c\20skgpu::KeyBuilder*\29 +3926:gather_uniforms_and_check_for_main\28SkSL::Program\20const&\2c\20std::__2::vector>*\2c\20std::__2::vector>*\2c\20SkRuntimeEffect::Uniform::Flags\2c\20unsigned\20long*\29 +3927:fwrite +3928:ft_var_to_normalized +3929:ft_var_load_item_variation_store +3930:ft_var_load_hvvar +3931:ft_var_load_avar +3932:ft_var_get_value_pointer +3933:ft_var_apply_tuple +3934:ft_validator_init +3935:ft_mem_strcpyn +3936:ft_hash_num_lookup +3937:ft_glyphslot_set_bitmap +3938:ft_glyphslot_preset_bitmap +3939:ft_corner_orientation +3940:ft_corner_is_flat +3941:frexp +3942:fread +3943:fp_force_eval +3944:fp_barrier.1 +3945:fopen +3946:fold_opacity_layer_color_to_paint\28SkPaint\20const*\2c\20bool\2c\20SkPaint*\29 +3947:fmodl +3948:float\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +3949:fill_shadow_rec\28SkPath\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkDrawShadowRec*\29 +3950:fill_inverse_cmap +3951:fileno +3952:examine_app0 +3953:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29\2c\20SkCanvas*\2c\20SkPath*\2c\20SkClipOp\2c\20bool\29 +3954:emscripten::internal::Invoker\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +3955:emscripten::internal::Invoker\2c\20SkBlendMode\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29\2c\20SkBlendMode\2c\20sk_sp*\2c\20sk_sp*\29 +3956:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\29 +3957:emscripten::internal::Invoker\2c\20SkBlendMode>::invoke\28sk_sp\20\28*\29\28SkBlendMode\29\2c\20SkBlendMode\29 +3958:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3959:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\29 +3960:emscripten::internal::FunctionInvoker\29\2c\20void\2c\20SkPaint&\2c\20unsigned\20long\2c\20sk_sp>::invoke\28void\20\28**\29\28SkPaint&\2c\20unsigned\20long\2c\20sk_sp\29\2c\20SkPaint*\2c\20unsigned\20long\2c\20sk_sp*\29 +3961:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29\2c\20SkCanvas*\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +3962:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +3963:emscripten::internal::FunctionInvoker\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +3964:emscripten::internal::FunctionInvoker\20\28*\29\28SkCanvas&\2c\20SimpleImageInfo\29\2c\20sk_sp\2c\20SkCanvas&\2c\20SimpleImageInfo>::invoke\28sk_sp\20\28**\29\28SkCanvas&\2c\20SimpleImageInfo\29\2c\20SkCanvas*\2c\20SimpleImageInfo*\29 +3965:emscripten::internal::FunctionInvoker\20\28*\29\28sk_sp\29\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28**\29\28sk_sp\29\2c\20sk_sp*\29 +3966:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +3967:embind_init_builtin\28\29 +3968:embind_init_Skia\28\29 +3969:embind_init_Paragraph\28\29::$_0::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +3970:embind_init_Paragraph\28\29 +3971:embind_init_ParagraphGen\28\29 +3972:edge_line_needs_recursion\28SkPoint\20const&\2c\20SkPoint\20const&\29 +3973:draw_nine\28SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\2c\20bool\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3974:dquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3975:dquad_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3976:double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +3977:dline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3978:dline_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3979:deserialize_image\28sk_sp\2c\20SkDeserialProcs\2c\20std::__2::optional\29 +3980:deflate_stored +3981:decompose_current_character\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\29 +3982:decltype\28std::__2::__unwrap_iter_impl\2c\20true>::__unwrap\28std::declval>\28\29\29\29\20std::__2::__unwrap_iter\5babi:v160004\5d\2c\20std::__2::__unwrap_iter_impl\2c\20true>\2c\200>\28std::__2::__wrap_iter\29 +3983:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::Make\28SkArenaAlloc*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3984:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&\2c\20skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::PathCurveTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3985:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\2c\20SkFilterMode\2c\20bool\29::'lambda'\28void*\29>\28skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::Make\28SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20sk_sp\2c\20SkFilterMode\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3986:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::MeshGP::Make\28SkArenaAlloc*\2c\20sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::MeshGP::Make\28SkArenaAlloc*\2c\20sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3987:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker*\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker\2c\20int&>\28int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3988:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkShaderBase\20const&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTransformShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3989:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29::'lambda'\28void*\29>\28SkA8_Blitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3990:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29::'lambda'\28void*\29>\28GrThreadSafeCache::Entry&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3991:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29::'lambda'\28void*\29>\28GrResourceAllocator::Register&&\29 +3992:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20GrCaps\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28GrQuadEffect::Make\28SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrCaps\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3993:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrPipeline::InitArgs&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29::'lambda'\28void*\29>\28GrPipeline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3994:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrDistanceFieldA8TextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20float\2c\20unsigned\20int\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3995:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29>\28GrBitmapTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29&&\29 +3996:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28DefaultGeoProc::Make\28SkArenaAlloc*\2c\20unsigned\20int\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3997:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28DefaultGeoProc::Make\28SkArenaAlloc*\2c\20unsigned\20int\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29 +3998:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28CircleGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3999:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +4000:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>>::__generic_construct\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__ctor\2c\20std::__2::unique_ptr>>>&\2c\20std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&&>\28std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&&\29 +4001:dcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4002:dcubic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4003:dconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4004:dconic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4005:data_destroy_arabic\28void*\29 +4006:data_create_arabic\28hb_ot_shape_plan_t\20const*\29 +4007:cycle +4008:cubic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4009:cubic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4010:create_colorindex +4011:copysignl +4012:copy_bitmap_subset\28SkBitmap\20const&\2c\20SkIRect\20const&\29 +4013:conic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4014:conic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4015:compute_pos_tan\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +4016:compute_intersection\28OffsetSegment\20const&\2c\20OffsetSegment\20const&\2c\20SkPoint*\2c\20float*\2c\20float*\29 +4017:compress_block +4018:compose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +4019:clipHandlesSprite\28SkRasterClip\20const&\2c\20int\2c\20int\2c\20SkPixmap\20const&\29 +4020:clamp\28SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Comparator\20const&\29 +4021:checkint +4022:check_inverse_on_empty_return\28SkRegion*\2c\20SkPath\20const&\2c\20SkRegion\20const&\29 +4023:char*\20std::__2::copy\5babi:v160004\5d\2c\20char*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20char*\29 +4024:char*\20std::__2::copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +4025:cff_vstore_done +4026:cff_subfont_load +4027:cff_subfont_done +4028:cff_size_select +4029:cff_parser_run +4030:cff_make_private_dict +4031:cff_load_private_dict +4032:cff_index_get_name +4033:cff_get_kerning +4034:cff_blend_build_vector +4035:cf2_getSeacComponent +4036:cf2_computeDarkening +4037:cf2_arrstack_push +4038:cbrt +4039:byn$mgfn-shared$void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +4040:byn$mgfn-shared$void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +4041:byn$mgfn-shared$virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +4042:byn$mgfn-shared$ubidi_getClass_skia +4043:byn$mgfn-shared$t1_hints_open +4044:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +4045:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +4046:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +4047:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +4048:byn$mgfn-shared$std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +4049:byn$mgfn-shared$std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +4050:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +4051:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +4052:byn$mgfn-shared$std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +4053:byn$mgfn-shared$std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +4054:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4055:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4056:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4057:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +4058:byn$mgfn-shared$skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4059:byn$mgfn-shared$skgpu::ScratchKey::GenerateResourceType\28\29 +4060:byn$mgfn-shared$skcms_TransferFunction_isPQish +4061:byn$mgfn-shared$setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4062:byn$mgfn-shared$portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4063:byn$mgfn-shared$portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4064:byn$mgfn-shared$portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4065:byn$mgfn-shared$portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4066:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4067:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4068:byn$mgfn-shared$make_unpremul_effect\28std::__2::unique_ptr>\29 +4069:byn$mgfn-shared$hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +4070:byn$mgfn-shared$hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +4071:byn$mgfn-shared$embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +4072:byn$mgfn-shared$embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +4073:byn$mgfn-shared$embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +4074:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4075:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node\2c\20std::__2::function&\29>\2c\20skgpu::AtlasToken>\28std::__2::function&\29>&&\2c\20skgpu::AtlasToken&&\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4076:byn$mgfn-shared$decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +4077:byn$mgfn-shared$cf2_stack_pushInt +4078:byn$mgfn-shared$__cxx_global_array_dtor.1 +4079:byn$mgfn-shared$\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +4080:byn$mgfn-shared$\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4081:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4082:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4083:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4084:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +4085:byn$mgfn-shared$SkUnicode_client::~SkUnicode_client\28\29.1 +4086:byn$mgfn-shared$SkUnicode_client::~SkUnicode_client\28\29 +4087:byn$mgfn-shared$SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_0::operator\28\29\28int\29\20const +4088:byn$mgfn-shared$SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +4089:byn$mgfn-shared$SkSL::RP::LValue::~LValue\28\29.1 +4090:byn$mgfn-shared$SkSL::FunctionReference::clone\28SkSL::Position\29\20const +4091:byn$mgfn-shared$SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +4092:byn$mgfn-shared$SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +4093:byn$mgfn-shared$SkSL::ChildCall::clone\28SkSL::Position\29\20const +4094:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +4095:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29 +4096:byn$mgfn-shared$SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +4097:byn$mgfn-shared$SkRecorder::onDrawPaint\28SkPaint\20const&\29 +4098:byn$mgfn-shared$SkRecorder::didScale\28float\2c\20float\29 +4099:byn$mgfn-shared$SkRecorder::didConcat44\28SkM44\20const&\29 +4100:byn$mgfn-shared$SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4101:byn$mgfn-shared$SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +4102:byn$mgfn-shared$SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +4103:byn$mgfn-shared$SkPictureRecord::didConcat44\28SkM44\20const&\29 +4104:byn$mgfn-shared$SkPairPathEffect::~SkPairPathEffect\28\29.1 +4105:byn$mgfn-shared$SkJSONWriter::endObject\28\29 +4106:byn$mgfn-shared$SkComposePathEffect::~SkComposePathEffect\28\29 +4107:byn$mgfn-shared$SkColorSpace::MakeSRGB\28\29 +4108:byn$mgfn-shared$SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +4109:byn$mgfn-shared$OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +4110:byn$mgfn-shared$GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4111:byn$mgfn-shared$GrPathTessellationShader::Impl::~Impl\28\29 +4112:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +4113:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +4114:byn$mgfn-shared$GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +4115:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +4116:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +4117:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +4118:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +4119:byn$mgfn-shared$GrBicubicEffect::onMakeProgramImpl\28\29\20const +4120:byn$mgfn-shared$Cr_z_inflate_table +4121:byn$mgfn-shared$BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +4122:byn$mgfn-shared$AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +4123:build_ycc_rgb_table +4124:bracketProcessChar\28BracketData*\2c\20int\29 +4125:bracketInit\28UBiDi*\2c\20BracketData*\29 +4126:bool\20std::__2::operator==\5babi:v160004\5d\28std::__2::unique_ptr\20const&\2c\20std::nullptr_t\29 +4127:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +4128:bool\20std::__2::__insertion_sort_incomplete\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +4129:bool\20std::__2::__insertion_sort_incomplete<\28anonymous\20namespace\29::EntryComparator&\2c\20\28anonymous\20namespace\29::Entry*>\28\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::Entry*\2c\20\28anonymous\20namespace\29::EntryComparator&\29 +4130:bool\20std::__2::__insertion_sort_incomplete\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +4131:bool\20std::__2::__insertion_sort_incomplete\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +4132:bool\20is_parallel\28SkDLine\20const&\2c\20SkTCurve\20const&\29 +4133:bool\20hb_hashmap_t::set_with_hash\28hb_serialize_context_t::object_t*&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool\29 +4134:bool\20apply_string\28OT::hb_ot_apply_context_t*\2c\20GSUBProxy::Lookup\20const&\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\29 +4135:bool\20OT::hb_accelerate_subtables_context_t::cache_func_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\2c\20bool\29 +4136:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4137:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4138:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4139:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4140:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4141:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4142:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4143:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4144:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4145:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4146:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4147:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4148:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4149:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4150:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4151:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4152:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4153:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4154:bool\20OT::OffsetTo\2c\20true>::serialize_serialize\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>&>\28hb_serialize_context_t*\2c\20hb_map_iter_t\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>&\29 +4155:bool\20GrTTopoSort_Visit\28GrRenderTask*\2c\20unsigned\20int*\29 +4156:blur_column\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +4157:blit_saved_trapezoid\28SkAnalyticEdge*\2c\20int\2c\20int\2c\20int\2c\20AdditiveBlitter*\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20int\2c\20int\29 +4158:blend_line\28SkColorType\2c\20void*\2c\20SkColorType\2c\20void\20const*\2c\20SkAlphaType\2c\20bool\2c\20int\29 +4159:bits_to_runs\28SkBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\2c\20long\2c\20unsigned\20char\29 +4160:barycentric_coords\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\29 +4161:auto\20std::__2::__unwrap_range\5babi:v160004\5d\2c\20std::__2::__wrap_iter>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +4162:atanf +4163:apply_forward\28OT::hb_ot_apply_context_t*\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\2c\20unsigned\20int\29 +4164:append_color_output\28PorterDuffXferProcessor\20const&\2c\20GrGLSLXPFragmentBuilder*\2c\20skgpu::BlendFormula::OutputType\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +4165:af_loader_compute_darkening +4166:af_latin_metrics_scale_dim +4167:af_latin_hints_detect_features +4168:af_latin_hint_edges +4169:af_hint_normal_stem +4170:af_cjk_metrics_scale_dim +4171:af_cjk_metrics_scale +4172:af_cjk_metrics_init_widths +4173:af_cjk_metrics_check_digits +4174:af_cjk_hints_init +4175:af_cjk_hints_detect_features +4176:af_cjk_hints_compute_blue_edges +4177:af_cjk_hints_apply +4178:af_cjk_hint_edges +4179:af_cjk_get_standard_widths +4180:af_axis_hints_new_edge +4181:adler32 +4182:a_ctz_32 +4183:_iup_worker_interpolate +4184:_hb_preprocess_text_vowel_constraints\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4185:_hb_ot_shape +4186:_hb_options_init\28\29 +4187:_hb_grapheme_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +4188:_hb_font_create\28hb_face_t*\29 +4189:_hb_fallback_shape +4190:_glyf_get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29 +4191:__vfprintf_internal +4192:__trunctfsf2 +4193:__tan +4194:__rem_pio2_large +4195:__overflow +4196:__newlocale +4197:__math_xflowf +4198:__math_invalidf +4199:__loc_is_allocated +4200:__isxdigit_l +4201:__getf2 +4202:__get_locale +4203:__ftello_unlocked +4204:__fseeko_unlocked +4205:__floatscan +4206:__expo2 +4207:__dynamic_cast +4208:__divtf3 +4209:__cxxabiv1::__base_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +4210:\28anonymous\20namespace\29::set_uv_quad\28SkPoint\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +4211:\28anonymous\20namespace\29::safe_to_ignore_subset_rect\28GrAAType\2c\20SkFilterMode\2c\20DrawQuad\20const&\2c\20SkRect\20const&\29 +4212:\28anonymous\20namespace\29::prepare_for_direct_mask_drawing\28SkStrike*\2c\20SkMatrix\20const&\2c\20SkZip\2c\20SkZip\2c\20SkZip\29 +4213:\28anonymous\20namespace\29::morphology_pass\28skif::Context\20const&\2c\20skif::FilterResult\20const&\2c\20\28anonymous\20namespace\29::MorphType\2c\20\28anonymous\20namespace\29::MorphDirection\2c\20int\29 +4214:\28anonymous\20namespace\29::make_non_convex_fill_op\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20skgpu::ganesh::FillPathFlags\2c\20GrAAType\2c\20SkRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\29 +4215:\28anonymous\20namespace\29::is_newer_better\28SkData*\2c\20SkData*\29 +4216:\28anonymous\20namespace\29::get_glyph_run_intercepts\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20float\20const*\2c\20float*\2c\20int*\29 +4217:\28anonymous\20namespace\29::filter_and_mm_have_effect\28GrQuad\20const&\2c\20GrQuad\20const&\29 +4218:\28anonymous\20namespace\29::draw_to_sw_mask\28GrSWMaskHelper*\2c\20skgpu::ganesh::ClipStack::Element\20const&\2c\20bool\29 +4219:\28anonymous\20namespace\29::determine_clipped_src_rect\28SkIRect\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkRect\20const*\29 +4220:\28anonymous\20namespace\29::create_hb_face\28SkTypeface\20const&\29::$_0::__invoke\28void*\29 +4221:\28anonymous\20namespace\29::cpu_blur\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20sk_sp\20const&\2c\20skif::LayerSpace\2c\20skif::LayerSpace\29::$_0::operator\28\29\28double\29\20const +4222:\28anonymous\20namespace\29::copyFTBitmap\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\29 +4223:\28anonymous\20namespace\29::colrv1_start_glyph\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20unsigned\20short\2c\20FT_Color_Root_Transform_\2c\20skia_private::THashSet*\29 +4224:\28anonymous\20namespace\29::colrv1_draw_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\29 +4225:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29 +4226:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29 +4227:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29 +4228:\28anonymous\20namespace\29::TriangulatingPathOp::TriangulatingPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\29 +4229:\28anonymous\20namespace\29::TriangulatingPathOp::Triangulate\28GrEagerVertexAllocator*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool*\29 +4230:\28anonymous\20namespace\29::TriangulatingPathOp::CreateKey\28skgpu::UniqueKey*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\29 +4231:\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4232:\28anonymous\20namespace\29::TextureOpImpl::propagateCoverageAAThroughoutChain\28\29 +4233:\28anonymous\20namespace\29::TextureOpImpl::characterize\28\28anonymous\20namespace\29::TextureOpImpl::Desc*\29\20const +4234:\28anonymous\20namespace\29::TextureOpImpl::appendQuad\28DrawQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\29 +4235:\28anonymous\20namespace\29::TextureOpImpl::Make\28GrRecordingContext*\2c\20GrTextureSetEntry*\2c\20int\2c\20int\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20skgpu::ganesh::TextureOp::Saturate\2c\20GrAAType\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20sk_sp\29 +4236:\28anonymous\20namespace\29::TextureOpImpl::FillInVertices\28GrCaps\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl*\2c\20\28anonymous\20namespace\29::TextureOpImpl::Desc*\2c\20char*\29 +4237:\28anonymous\20namespace\29::SpotVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +4238:\28anonymous\20namespace\29::SkImageImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +4239:\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4240:\28anonymous\20namespace\29::RunIteratorQueue::advanceRuns\28\29 +4241:\28anonymous\20namespace\29::Pass::blur\28int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +4242:\28anonymous\20namespace\29::MipLevelHelper::allocAndInit\28SkArenaAlloc*\2c\20SkSamplingOptions\20const&\2c\20SkTileMode\2c\20SkTileMode\29 +4243:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29 +4244:\28anonymous\20namespace\29::MeshOp::MeshOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20sk_sp\2c\20GrPrimitiveType\20const*\2c\20GrAAType\2c\20sk_sp\2c\20SkMatrix\20const&\29 +4245:\28anonymous\20namespace\29::MeshOp::MeshOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMesh\20const&\2c\20skia_private::TArray>\2c\20true>\2c\20GrAAType\2c\20sk_sp\2c\20SkMatrix\20const&\29 +4246:\28anonymous\20namespace\29::MeshOp::Mesh::Mesh\28SkMesh\20const&\29 +4247:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29 +4248:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29 +4249:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineStruct\28char\20const*\29 +4250:\28anonymous\20namespace\29::FillRectOpImpl::tessellate\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29\20const +4251:\28anonymous\20namespace\29::FillRectOpImpl::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4252:\28anonymous\20namespace\29::FillRectOpImpl::FillRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4253:\28anonymous\20namespace\29::EllipticalRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\29 +4254:\28anonymous\20namespace\29::DrawAtlasOpImpl::DrawAtlasOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrAAType\2c\20int\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\29 +4255:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4256:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4257:\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4258:\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4259:\28anonymous\20namespace\29::DefaultPathOp::programInfo\28\29 +4260:\28anonymous\20namespace\29::DefaultPathOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkPath\20const&\2c\20float\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20bool\2c\20GrAAType\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +4261:\28anonymous\20namespace\29::DefaultPathOp::DefaultPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkPath\20const&\2c\20float\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20bool\2c\20GrAAType\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +4262:\28anonymous\20namespace\29::ClipGeometry\20\28anonymous\20namespace\29::get_clip_geometry\28skgpu::ganesh::ClipStack::SaveRecord\20const&\2c\20skgpu::ganesh::ClipStack::Draw\20const&\29 +4263:\28anonymous\20namespace\29::CircularRRectEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +4264:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29 +4265:\28anonymous\20namespace\29::CachedTessellations::CachedTessellations\28\29 +4266:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29 +4267:\28anonymous\20namespace\29::AAHairlineOp::AAHairlineOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIRect\2c\20float\2c\20GrUserStencilSettings\20const*\29 +4268:WebPResetDecParams +4269:WebPRescalerGetScaledDimensions +4270:WebPMultRows +4271:WebPMultARGBRows +4272:WebPIoInitFromOptions +4273:WebPInitUpsamplers +4274:WebPFlipBuffer +4275:WebPDemuxGetChunk +4276:WebPCopyDecBufferPixels +4277:WebPAllocateDecBuffer +4278:VP8RemapBitReader +4279:VP8LHuffmanTablesAllocate +4280:VP8LDspInit +4281:VP8LConvertFromBGRA +4282:VP8LColorCacheInit +4283:VP8LColorCacheCopy +4284:VP8LBuildHuffmanTable +4285:VP8LBitReaderSetBuffer +4286:VP8InitScanline +4287:VP8GetInfo +4288:VP8BitReaderSetBuffer +4289:Update_Max +4290:TransformOne_C +4291:TT_Set_Named_Instance +4292:TT_Hint_Glyph +4293:StoreFrame +4294:SortContourList\28SkOpContourHead**\2c\20bool\2c\20bool\29 +4295:SkYUVAPixmapInfo::isSupported\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\29\20const +4296:SkWuffsCodec::seekFrame\28int\29 +4297:SkWuffsCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +4298:SkWuffsCodec::onIncrementalDecodeTwoPass\28\29 +4299:SkWuffsCodec::decodeFrameConfig\28\29 +4300:SkWriter32::writeString\28char\20const*\2c\20unsigned\20long\29 +4301:SkWriteICCProfile\28skcms_ICCProfile\20const*\2c\20char\20const*\29 +4302:SkWStream::SizeOfPackedUInt\28unsigned\20long\29 +4303:SkWBuffer::padToAlign4\28\29 +4304:SkVertices::Builder::indices\28\29 +4305:SkUnicode::convertUtf16ToUtf8\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4306:SkUTF::UTF16ToUTF8\28char*\2c\20int\2c\20unsigned\20short\20const*\2c\20unsigned\20long\29 +4307:SkTypeface_FreeType::Scanner::~Scanner\28\29 +4308:SkTypeface_FreeType::Scanner::scanFont\28SkStreamAsset*\2c\20int\2c\20SkString*\2c\20SkFontStyle*\2c\20bool*\2c\20skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>*\29\20const +4309:SkTypeface_FreeType::Scanner::Scanner\28\29 +4310:SkTypeface_FreeType::FaceRec::Make\28SkTypeface_FreeType\20const*\29 +4311:SkTypeface_Custom::onGetFamilyName\28SkString*\29\20const +4312:SkTypeface::textToGlyphs\28void\20const*\2c\20unsigned\20long\2c\20SkTextEncoding\2c\20unsigned\20short*\2c\20int\29\20const +4313:SkTypeface::serialize\28SkWStream*\2c\20SkTypeface::SerializeBehavior\29\20const +4314:SkTypeface::openStream\28int*\29\20const +4315:SkTypeface::getFamilyName\28SkString*\29\20const +4316:SkTransformShader::update\28SkMatrix\20const&\29 +4317:SkTransformShader::SkTransformShader\28SkShaderBase\20const&\2c\20bool\29 +4318:SkTiffImageFileDirectory::getEntryTag\28unsigned\20short\29\20const +4319:SkTiffImageFileDirectory::getEntryRawData\28unsigned\20short\2c\20unsigned\20short*\2c\20unsigned\20short*\2c\20unsigned\20int*\2c\20unsigned\20char\20const**\2c\20unsigned\20long*\29\20const +4320:SkTiffImageFileDirectory::MakeFromOffset\28sk_sp\2c\20bool\2c\20unsigned\20int\29 +4321:SkTextBlobBuilder::allocRunPos\28SkFont\20const&\2c\20int\2c\20SkRect\20const*\29 +4322:SkTextBlob::getIntercepts\28float\20const*\2c\20float*\2c\20SkPaint\20const*\29\20const +4323:SkTextBlob::RunRecord::StorageSize\28unsigned\20int\2c\20unsigned\20int\2c\20SkTextBlob::GlyphPositioning\2c\20SkSafeMath*\29 +4324:SkTextBlob::MakeFromText\28void\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4325:SkTextBlob::MakeFromRSXform\28void\20const*\2c\20unsigned\20long\2c\20SkRSXform\20const*\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4326:SkTextBlob::Iter::experimentalNext\28SkTextBlob::Iter::ExperimentalRun*\29 +4327:SkTextBlob::Iter::Iter\28SkTextBlob\20const&\29 +4328:SkTaskGroup::wait\28\29 +4329:SkTaskGroup::add\28std::__2::function\29 +4330:SkTSpan::onlyEndPointsInCommon\28SkTSpan\20const*\2c\20bool*\2c\20bool*\2c\20bool*\29 +4331:SkTSpan::linearIntersects\28SkTCurve\20const&\29\20const +4332:SkTSect::removeAllBut\28SkTSpan\20const*\2c\20SkTSpan*\2c\20SkTSect*\29 +4333:SkTSect::intersects\28SkTSpan*\2c\20SkTSect*\2c\20SkTSpan*\2c\20int*\29 +4334:SkTSect::deleteEmptySpans\28\29 +4335:SkTSect::addSplitAt\28SkTSpan*\2c\20double\29 +4336:SkTSect::addForPerp\28SkTSpan*\2c\20double\29 +4337:SkTSect::EndsEqual\28SkTSect\20const*\2c\20SkTSect\20const*\2c\20SkIntersections*\29 +4338:SkTMultiMap::~SkTMultiMap\28\29 +4339:SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::find\28SkImageFilterCacheKey\20const&\29\20const +4340:SkTDStorage::calculateSizeOrDie\28int\29::$_1::operator\28\29\28\29\20const +4341:SkTDStorage::SkTDStorage\28SkTDStorage&&\29 +4342:SkTCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4343:SkTConic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +4344:SkTConic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +4345:SkTConic::controlsInside\28\29\20const +4346:SkTConic::collapsed\28\29\20const +4347:SkTBlockList::reset\28\29 +4348:SkTBlockList::reset\28\29 +4349:SkTBlockList::push_back\28GrGLProgramDataManager::GLUniformInfo\20const&\29 +4350:SkSwizzler::MakeSimple\28int\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +4351:SkSurfaces::WrapPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +4352:SkSurface_Base::outstandingImageSnapshot\28\29\20const +4353:SkSurface_Base::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +4354:SkSurface_Base::onCapabilities\28\29 +4355:SkStrokeRec::setHairlineStyle\28\29 +4356:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20SkPaint::Style\2c\20float\29 +4357:SkStrokeRec::GetInflationRadius\28SkPaint::Join\2c\20float\2c\20SkPaint::Cap\2c\20float\29 +4358:SkString::insertHex\28unsigned\20long\2c\20unsigned\20int\2c\20int\29 +4359:SkString::appendVAList\28char\20const*\2c\20void*\29 +4360:SkString::SkString\28std::__2::basic_string_view>\29 +4361:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec\20const&\29 +4362:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29 +4363:SkStrikeCache::internalRemoveStrike\28SkStrike*\29 +4364:SkStrikeCache::internalFindStrikeOrNull\28SkDescriptor\20const&\29 +4365:SkStrSplit\28char\20const*\2c\20char\20const*\2c\20SkStrSplitMode\2c\20skia_private::TArray*\29 +4366:SkSpriteBlitter_Memcpy::~SkSpriteBlitter_Memcpy\28\29 +4367:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4368:SkSpecialImages::AsBitmap\28SkSpecialImage\20const*\2c\20SkBitmap*\29 +4369:SkSharedMutex::releaseShared\28\29 +4370:SkShaders::MatrixRec::concat\28SkMatrix\20const&\29\20const +4371:SkShaders::Blend\28sk_sp\2c\20sk_sp\2c\20sk_sp\29 +4372:SkShaderUtils::VisitLineByLine\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::function\20const&\29 +4373:SkShaderUtils::PrettyPrint\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4374:SkShaderUtils::GLSLPrettyPrint::parseUntil\28char\20const*\29 +4375:SkShaderBase::getFlattenableType\28\29\20const +4376:SkShader::makeWithLocalMatrix\28SkMatrix\20const&\29\20const +4377:SkShader::makeWithColorFilter\28sk_sp\29\20const +4378:SkScan::PathRequiresTiling\28SkIRect\20const&\29 +4379:SkScan::HairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +4380:SkScan::AntiFrameRect\28SkRect\20const&\2c\20SkPoint\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4381:SkScan::AntiFillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4382:SkScan::AntiFillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4383:SkScan::AAAFillPath\28SkPath\20const&\2c\20SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +4384:SkScalerContext_FreeType_Base::drawCOLRv1Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +4385:SkScalerContext_FreeType_Base::drawCOLRv0Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +4386:SkScalerContext_FreeType::updateGlyphBoundsIfSubpixel\28SkGlyph\20const&\2c\20SkRect*\2c\20bool\29 +4387:SkScalerContext_FreeType::shouldSubpixelBitmap\28SkGlyph\20const&\2c\20SkMatrix\20const&\29 +4388:SkScalerContextRec::getSingleMatrix\28SkMatrix*\29\20const +4389:SkScalerContext::internalMakeGlyph\28SkPackedGlyphID\2c\20SkMask::Format\2c\20SkArenaAlloc*\29 +4390:SkScalerContext::internalGetPath\28SkGlyph&\2c\20SkArenaAlloc*\29 +4391:SkScalerContext::getFontMetrics\28SkFontMetrics*\29 +4392:SkScalerContext::SkScalerContext\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4393:SkScalerContext::PreprocessRec\28SkTypeface\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const&\29 +4394:SkScalerContext::MakeRecAndEffects\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\2c\20SkScalerContextRec*\2c\20SkScalerContextEffects*\29 +4395:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4396:SkScalerContext::GetMaskPreBlend\28SkScalerContextRec\20const&\29 +4397:SkScalerContext::AutoDescriptorGivenRecAndEffects\28SkScalerContextRec\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkAutoDescriptor*\29 +4398:SkSampledCodec::sampledDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +4399:SkSampledCodec::accountForNativeScaling\28int*\2c\20int*\29\20const +4400:SkSampledCodec::SkSampledCodec\28SkCodec*\29 +4401:SkSL::zero_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\29 +4402:SkSL::type_to_sksltype\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSLType*\29 +4403:SkSL::stoi\28std::__2::basic_string_view>\2c\20long\20long*\29 +4404:SkSL::splat_scalar\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4405:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_2::operator\28\29\28int\29\20const +4406:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_1::operator\28\29\28int\29\20const +4407:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_0::operator\28\29\28int\29\20const +4408:SkSL::negate_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4409:SkSL::move_all_but_break\28std::__2::unique_ptr>&\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\29 +4410:SkSL::make_reciprocal_expression\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29 +4411:SkSL::index_out_of_range\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20long\20long\2c\20SkSL::Expression\20const&\29 +4412:SkSL::find_existing_declaration\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\2c\20SkSL::IntrinsicKind\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray>\2c\20true>&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration**\29::$_0::operator\28\29\28\29\20const +4413:SkSL::extract_matrix\28SkSL::Expression\20const*\2c\20float*\29 +4414:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +4415:SkSL::check_main_signature\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20skia_private::TArray>\2c\20true>&\29::$_4::operator\28\29\28int\29\20const +4416:SkSL::\28anonymous\20namespace\29::check_valid_uniform_type\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Context\20const&\2c\20bool\29 +4417:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +4418:SkSL::VariableReference::setRefKind\28SkSL::VariableRefKind\29 +4419:SkSL::Variable::setVarDeclaration\28SkSL::VarDeclaration*\29 +4420:SkSL::Variable::setGlobalVarDeclaration\28SkSL::GlobalVarDeclaration*\29 +4421:SkSL::Variable::globalVarDeclaration\28\29\20const +4422:SkSL::Variable::Make\28SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20std::__2::basic_string_view>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20bool\2c\20SkSL::VariableStorage\29 +4423:SkSL::Variable::MakeScratchVariable\28SkSL::Context\20const&\2c\20SkSL::Mangler&\2c\20std::__2::basic_string_view>\2c\20SkSL::Type\20const*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>\29 +4424:SkSL::VarDeclaration::Make\28SkSL::Context\20const&\2c\20SkSL::Variable*\2c\20SkSL::Type\20const*\2c\20int\2c\20std::__2::unique_ptr>\29 +4425:SkSL::VarDeclaration::ErrorCheck\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20SkSL::Type\20const*\2c\20SkSL::VariableStorage\29 +4426:SkSL::TypeReference::description\28SkSL::OperatorPrecedence\29\20const +4427:SkSL::TypeReference::VerifyType\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Position\29 +4428:SkSL::TypeReference::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\29 +4429:SkSL::Type::MakeStructType\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20bool\29 +4430:SkSL::Type::MakeLiteralType\28char\20const*\2c\20SkSL::Type\20const&\2c\20signed\20char\29 +4431:SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::addDeclaringElement\28SkSL::ProgramElement\20const*\29 +4432:SkSL::ToGLSL\28SkSL::Program&\2c\20SkSL::ShaderCaps\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\29 +4433:SkSL::ThreadContext::ThreadContext\28SkSL::Context&\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::Module\20const*\2c\20bool\29 +4434:SkSL::ThreadContext::End\28\29 +4435:SkSL::TernaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +4436:SkSL::SymbolTable::wouldShadowSymbolsFrom\28SkSL::SymbolTable\20const*\29\20const +4437:SkSL::Swizzle::MaskString\28skia_private::STArray<4\2c\20signed\20char\2c\20true>\20const&\29 +4438:SkSL::SwitchStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20std::__2::shared_ptr\29 +4439:SkSL::SwitchCase::Make\28SkSL::Position\2c\20long\20long\2c\20std::__2::unique_ptr>\29 +4440:SkSL::SwitchCase::MakeDefault\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +4441:SkSL::StructType::StructType\28SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20int\2c\20bool\29 +4442:SkSL::String::vappendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20void*\29 +4443:SkSL::SingleArgumentConstructor::argumentSpan\28\29 +4444:SkSL::RP::stack_usage\28SkSL::RP::Instruction\20const&\29 +4445:SkSL::RP::UnownedLValueSlice::isWritable\28\29\20const +4446:SkSL::RP::UnownedLValueSlice::dynamicSlotRange\28\29 +4447:SkSL::RP::ScratchLValue::~ScratchLValue\28\29 +4448:SkSL::RP::Program::~Program\28\29 +4449:SkSL::RP::LValue::swizzle\28\29 +4450:SkSL::RP::Generator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\29 +4451:SkSL::RP::Generator::writeFunction\28SkSL::IRNode\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSpan>\20const>\29 +4452:SkSL::RP::Generator::storeImmutableValueToSlots\28skia_private::TArray\20const&\2c\20SkSL::RP::SlotRange\29 +4453:SkSL::RP::Generator::pushVariableReferencePartial\28SkSL::VariableReference\20const&\2c\20SkSL::RP::SlotRange\29 +4454:SkSL::RP::Generator::pushPrefixExpression\28SkSL::Operator\2c\20SkSL::Expression\20const&\29 +4455:SkSL::RP::Generator::pushIntrinsic\28SkSL::IntrinsicKind\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +4456:SkSL::RP::Generator::pushImmutableData\28SkSL::Expression\20const&\29 +4457:SkSL::RP::Generator::pushAbsFloatIntrinsic\28int\29 +4458:SkSL::RP::Generator::getImmutableValueForExpression\28SkSL::Expression\20const&\2c\20skia_private::TArray*\29 +4459:SkSL::RP::Generator::foldWithMultiOp\28SkSL::RP::BuilderOp\2c\20int\29 +4460:SkSL::RP::Generator::findPreexistingImmutableData\28skia_private::TArray\20const&\29 +4461:SkSL::RP::Builder::push_slots_or_immutable_indirect\28SkSL::RP::SlotRange\2c\20int\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +4462:SkSL::RP::Builder::copy_stack_to_slots\28SkSL::RP::SlotRange\2c\20int\29 +4463:SkSL::RP::Builder::branch_if_any_lanes_active\28int\29 +4464:SkSL::ProgramVisitor::visit\28SkSL::Program\20const&\29 +4465:SkSL::ProgramUsage::remove\28SkSL::Expression\20const*\29 +4466:SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +4467:SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +4468:SkSL::Pool::attachToThread\28\29 +4469:SkSL::PipelineStage::PipelineStageCodeGenerator::functionName\28SkSL::FunctionDeclaration\20const&\29 +4470:SkSL::PipelineStage::PipelineStageCodeGenerator::functionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +4471:SkSL::Parser::~Parser\28\29 +4472:SkSL::Parser::varDeclarationsOrExpressionStatement\28\29 +4473:SkSL::Parser::switchCaseBody\28SkSL::ExpressionArray*\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\2c\20std::__2::unique_ptr>\29 +4474:SkSL::Parser::shiftExpression\28\29 +4475:SkSL::Parser::relationalExpression\28\29 +4476:SkSL::Parser::parameter\28std::__2::unique_ptr>*\29 +4477:SkSL::Parser::multiplicativeExpression\28\29 +4478:SkSL::Parser::logicalXorExpression\28\29 +4479:SkSL::Parser::logicalAndExpression\28\29 +4480:SkSL::Parser::localVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +4481:SkSL::Parser::intLiteral\28long\20long*\29 +4482:SkSL::Parser::globalVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +4483:SkSL::Parser::equalityExpression\28\29 +4484:SkSL::Parser::directive\28bool\29 +4485:SkSL::Parser::declarations\28\29 +4486:SkSL::Parser::checkNext\28SkSL::Token::Kind\2c\20SkSL::Token*\29 +4487:SkSL::Parser::bitwiseXorExpression\28\29 +4488:SkSL::Parser::bitwiseOrExpression\28\29 +4489:SkSL::Parser::bitwiseAndExpression\28\29 +4490:SkSL::Parser::additiveExpression\28\29 +4491:SkSL::Parser::Parser\28SkSL::Compiler*\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +4492:SkSL::MultiArgumentConstructor::argumentSpan\28\29 +4493:SkSL::ModuleLoader::~ModuleLoader\28\29 +4494:SkSL::ModuleLoader::loadVertexModule\28SkSL::Compiler*\29 +4495:SkSL::ModuleLoader::loadSharedModule\28SkSL::Compiler*\29 +4496:SkSL::ModuleLoader::loadPublicModule\28SkSL::Compiler*\29 +4497:SkSL::ModuleLoader::loadFragmentModule\28SkSL::Compiler*\29 +4498:SkSL::ModuleLoader::Get\28\29 +4499:SkSL::MethodReference::~MethodReference\28\29.1 +4500:SkSL::MethodReference::~MethodReference\28\29 +4501:SkSL::MatrixType::bitWidth\28\29\20const +4502:SkSL::MakeRasterPipelineProgram\28SkSL::Program\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSL::DebugTracePriv*\2c\20bool\29 +4503:SkSL::Layout::description\28\29\20const +4504:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_matrixCompMult\28double\2c\20double\2c\20double\29 +4505:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_length\28std::__2::array\20const&\29 +4506:SkSL::InterfaceBlock::~InterfaceBlock\28\29 +4507:SkSL::Inliner::candidateCanBeInlined\28SkSL::InlineCandidate\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20skia_private::THashMap*\29 +4508:SkSL::IfStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +4509:SkSL::GLSLCodeGenerator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\2c\20bool\29 +4510:SkSL::GLSLCodeGenerator::writeProgramElement\28SkSL::ProgramElement\20const&\29 +4511:SkSL::GLSLCodeGenerator::writeMinAbsHack\28SkSL::Expression&\2c\20SkSL::Expression&\29 +4512:SkSL::GLSLCodeGenerator::generateCode\28\29 +4513:SkSL::FunctionDefinition::~FunctionDefinition\28\29.1 +4514:SkSL::FunctionDefinition::~FunctionDefinition\28\29 +4515:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::visitStatementPtr\28std::__2::unique_ptr>&\29 +4516:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::addLocalVariable\28SkSL::Variable\20const*\2c\20SkSL::Position\29 +4517:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29.1 +4518:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29 +4519:SkSL::FunctionDeclaration::mangledName\28\29\20const +4520:SkSL::FunctionDeclaration::determineFinalTypes\28SkSL::ExpressionArray\20const&\2c\20skia_private::STArray<8\2c\20SkSL::Type\20const*\2c\20true>*\2c\20SkSL::Type\20const**\29\20const +4521:SkSL::FunctionDeclaration::FunctionDeclaration\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20SkSL::Type\20const*\2c\20SkSL::IntrinsicKind\29 +4522:SkSL::FunctionCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +4523:SkSL::FunctionCall::FindBestFunctionForCall\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\20const&\29 +4524:SkSL::FunctionCall::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +4525:SkSL::ForStatement::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +4526:SkSL::FindIntrinsicKind\28std::__2::basic_string_view>\29 +4527:SkSL::FieldAccess::~FieldAccess\28\29.1 +4528:SkSL::FieldAccess::~FieldAccess\28\29 +4529:SkSL::ExtendedVariable::layout\28\29\20const +4530:SkSL::ExpressionStatement::Convert\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +4531:SkSL::ConstructorScalarCast::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +4532:SkSL::ConstructorMatrixResize::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +4533:SkSL::Constructor::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +4534:SkSL::ConstantFolder::Simplify\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4535:SkSL::Compiler::writeErrorCount\28\29 +4536:SkSL::ChildCall::~ChildCall\28\29.1 +4537:SkSL::ChildCall::~ChildCall\28\29 +4538:SkSL::ChildCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const&\2c\20SkSL::ExpressionArray\29 +4539:SkSL::BinaryExpression::isAssignmentIntoVariable\28\29 +4540:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\2c\20SkSL::Type\20const*\29 +4541:SkSL::Analysis::\28anonymous\20namespace\29::LoopControlFlowVisitor::visitStatement\28SkSL::Statement\20const&\29 +4542:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29 +4543:SkSL::Analysis::IsConstantExpression\28SkSL::Expression\20const&\29 +4544:SkSL::Analysis::IsAssignable\28SkSL::Expression&\2c\20SkSL::Analysis::AssignmentInfo*\2c\20SkSL::ErrorReporter*\29 +4545:SkSL::Analysis::GetLoopUnrollInfo\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\20const&\2c\20SkSL::Statement\20const*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Expression\20const*\2c\20SkSL::Statement\20const*\2c\20SkSL::ErrorReporter*\29 +4546:SkSL::Analysis::GetLoopControlFlowInfo\28SkSL::Statement\20const&\29 +4547:SkSL::AliasType::numberKind\28\29\20const +4548:SkSL::AliasType::isAllowedInES2\28\29\20const +4549:SkRuntimeShader::~SkRuntimeShader\28\29 +4550:SkRuntimeEffectPriv::WriteChildEffects\28SkWriteBuffer&\2c\20SkSpan\29 +4551:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpaceXformSteps\20const&\29 +4552:SkRuntimeEffect::~SkRuntimeEffect\28\29 +4553:SkRuntimeEffect::source\28\29\20const +4554:SkRuntimeEffect::makeShader\28sk_sp\2c\20sk_sp*\2c\20unsigned\20long\2c\20SkMatrix\20const*\29\20const +4555:SkRuntimeEffect::makeColorFilter\28sk_sp\2c\20SkSpan\29\20const +4556:SkRuntimeEffect::MakeForBlender\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +4557:SkRuntimeEffect::ChildPtr&\20skia_private::TArray::emplace_back&>\28sk_sp&\29 +4558:SkRuntimeBlender::flatten\28SkWriteBuffer&\29\20const +4559:SkRgnBuilder::~SkRgnBuilder\28\29 +4560:SkResourceCache::PostPurgeSharedID\28unsigned\20long\20long\29 +4561:SkResourceCache::GetDiscardableFactory\28\29 +4562:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +4563:SkRegion::Spanerator::Spanerator\28SkRegion\20const&\2c\20int\2c\20int\2c\20int\29 +4564:SkRegion::Oper\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\2c\20SkRegion*\29 +4565:SkRefCntSet::~SkRefCntSet\28\29 +4566:SkRefCntBase::internal_dispose\28\29\20const +4567:SkReduceOrder::reduce\28SkDQuad\20const&\29 +4568:SkReduceOrder::Conic\28SkConic\20const&\2c\20SkPoint*\29 +4569:SkRectClipBlitter::requestRowsPreserved\28\29\20const +4570:SkRectClipBlitter::allocBlitMemory\28unsigned\20long\29 +4571:SkRect::intersect\28SkRect\20const&\2c\20SkRect\20const&\29 +4572:SkRecords::TypedMatrix::TypedMatrix\28SkMatrix\20const&\29 +4573:SkRecords::FillBounds::popSaveBlock\28\29 +4574:SkRecordOptimize\28SkRecord*\29 +4575:SkRecordFillBounds\28SkRect\20const&\2c\20SkRecord\20const&\2c\20SkRect*\2c\20SkBBoxHierarchy::Metadata*\29 +4576:SkRecord::bytesUsed\28\29\20const +4577:SkReadPixelsRec::trim\28int\2c\20int\29 +4578:SkReadBuffer::readString\28unsigned\20long*\29 +4579:SkReadBuffer::readRegion\28SkRegion*\29 +4580:SkReadBuffer::readPoint3\28SkPoint3*\29 +4581:SkRasterPipeline_<256ul>::SkRasterPipeline_\28\29 +4582:SkRasterPipeline::appendSetRGB\28SkArenaAlloc*\2c\20float\20const*\29 +4583:SkRasterClipStack::SkRasterClipStack\28int\2c\20int\29 +4584:SkRTreeFactory::operator\28\29\28\29\20const +4585:SkRTree::search\28SkRTree::Node*\2c\20SkRect\20const&\2c\20std::__2::vector>*\29\20const +4586:SkRTree::bulkLoad\28std::__2::vector>*\2c\20int\29 +4587:SkRTree::allocateNodeAtLevel\28unsigned\20short\29 +4588:SkRSXform::toQuad\28float\2c\20float\2c\20SkPoint*\29\20const +4589:SkRRect::isValid\28\29\20const +4590:SkRRect::computeType\28\29 +4591:SkRGBA4f<\28SkAlphaType\292>\20skgpu::Swizzle::applyTo<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +4592:SkRBuffer::skipToAlign4\28\29 +4593:SkQuads::EvalAt\28double\2c\20double\2c\20double\2c\20double\29 +4594:SkQuadraticEdge::setQuadraticWithoutUpdate\28SkPoint\20const*\2c\20int\29 +4595:SkPtrSet::reset\28\29 +4596:SkPtrSet::copyToArray\28void**\29\20const +4597:SkPtrSet::add\28void*\29 +4598:SkPoint::Normalize\28SkPoint*\29 +4599:SkPngEncoder::Make\28SkWStream*\2c\20SkPixmap\20const&\2c\20SkPngEncoder::Options\20const&\29 +4600:SkPngCodec::initializeXforms\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +4601:SkPngCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +4602:SkPngCodec::allocateStorage\28SkImageInfo\20const&\29 +4603:SkPngCodec::IsPng\28void\20const*\2c\20unsigned\20long\29 +4604:SkPixmap::erase\28unsigned\20int\2c\20SkIRect\20const&\29\20const +4605:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const +4606:SkPixelRef::getGenerationID\28\29\20const +4607:SkPixelRef::addGenIDChangeListener\28sk_sp\29 +4608:SkPixelRef::SkPixelRef\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +4609:SkPictureShader::CachedImageInfo::makeImage\28sk_sp\2c\20SkPicture\20const*\29\20const +4610:SkPictureShader::CachedImageInfo::Make\28SkRect\20const&\2c\20SkMatrix\20const&\2c\20SkColorType\2c\20SkColorSpace*\2c\20int\2c\20SkSurfaceProps\20const&\29 +4611:SkPictureRecord::endRecording\28\29 +4612:SkPictureRecord::beginRecording\28\29 +4613:SkPicturePriv::Flatten\28sk_sp\2c\20SkWriteBuffer&\29 +4614:SkPicturePlayback::draw\28SkCanvas*\2c\20SkPicture::AbortCallback*\2c\20SkReadBuffer*\29 +4615:SkPictureData::parseBufferTag\28SkReadBuffer&\2c\20unsigned\20int\2c\20unsigned\20int\29 +4616:SkPictureData::getPicture\28SkReadBuffer*\29\20const +4617:SkPictureData::getDrawable\28SkReadBuffer*\29\20const +4618:SkPictureData::flatten\28SkWriteBuffer&\29\20const +4619:SkPictureData::flattenToBuffer\28SkWriteBuffer&\2c\20bool\29\20const +4620:SkPictureData::SkPictureData\28SkPictureRecord\20const&\2c\20SkPictInfo\20const&\29 +4621:SkPicture::backport\28\29\20const +4622:SkPicture::SkPicture\28\29 +4623:SkPicture::MakeFromStreamPriv\28SkStream*\2c\20SkDeserialProcs\20const*\2c\20SkTypefacePlayback*\2c\20int\29 +4624:SkPathWriter::assemble\28\29 +4625:SkPathWriter::SkPathWriter\28SkPath&\29 +4626:SkPathRef::resetToSize\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +4627:SkPathPriv::IsNestedFillRects\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\29 +4628:SkPathPriv::CreateDrawArcPath\28SkPath*\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +4629:SkPathEffectBase::PointData::~PointData\28\29 +4630:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +4631:SkPathBuilder::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +4632:SkPath::writeToMemoryAsRRect\28void*\29\20const +4633:SkPath::setLastPt\28float\2c\20float\29 +4634:SkPath::reverseAddPath\28SkPath\20const&\29 +4635:SkPath::readFromMemory\28void\20const*\2c\20unsigned\20long\29 +4636:SkPath::offset\28float\2c\20float\2c\20SkPath*\29\20const +4637:SkPath::isZeroLengthSincePoint\28int\29\20const +4638:SkPath::isRRect\28SkRRect*\29\20const +4639:SkPath::isOval\28SkRect*\29\20const +4640:SkPath::conservativelyContainsRect\28SkRect\20const&\29\20const +4641:SkPath::computeConvexity\28\29\20const +4642:SkPath::addPath\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath::AddPathMode\29 +4643:SkPath::Polygon\28SkPoint\20const*\2c\20int\2c\20bool\2c\20SkPathFillType\2c\20bool\29 +4644:SkPath2DPathEffect::Make\28SkMatrix\20const&\2c\20SkPath\20const&\29 +4645:SkPath1DPathEffect::Make\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29 +4646:SkParseEncodedOrigin\28void\20const*\2c\20unsigned\20long\2c\20SkEncodedOrigin*\29 +4647:SkPaintPriv::Unflatten\28SkReadBuffer&\29 +4648:SkPaintPriv::ShouldDither\28SkPaint\20const&\2c\20SkColorType\29 +4649:SkPaintPriv::Overwrites\28SkPaint\20const*\2c\20SkPaintPriv::ShaderOverrideOpacity\29 +4650:SkPaintPriv::Flatten\28SkPaint\20const&\2c\20SkWriteBuffer&\29 +4651:SkPaint::setStroke\28bool\29 +4652:SkPaint::reset\28\29 +4653:SkPaint::refColorFilter\28\29\20const +4654:SkOpSpanBase::merge\28SkOpSpan*\29 +4655:SkOpSpanBase::globalState\28\29\20const +4656:SkOpSpan::sortableTop\28SkOpContour*\29 +4657:SkOpSpan::release\28SkOpPtT\20const*\29 +4658:SkOpSpan::insertCoincidence\28SkOpSegment\20const*\2c\20bool\2c\20bool\29 +4659:SkOpSpan::init\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +4660:SkOpSegment::updateWindingReverse\28SkOpAngle\20const*\29 +4661:SkOpSegment::oppXor\28\29\20const +4662:SkOpSegment::moveMultiples\28\29 +4663:SkOpSegment::isXor\28\29\20const +4664:SkOpSegment::findNextWinding\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +4665:SkOpSegment::findNextOp\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\2c\20bool*\2c\20SkPathOp\2c\20int\2c\20int\29 +4666:SkOpSegment::computeSum\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpAngle::IncludeType\29 +4667:SkOpSegment::collapsed\28double\2c\20double\29\20const +4668:SkOpSegment::addExpanded\28double\2c\20SkOpSpanBase\20const*\2c\20bool*\29 +4669:SkOpSegment::activeAngle\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +4670:SkOpSegment::UseInnerWinding\28int\2c\20int\29 +4671:SkOpPtT::ptAlreadySeen\28SkOpPtT\20const*\29\20const +4672:SkOpPtT::contains\28SkOpSegment\20const*\2c\20double\29\20const +4673:SkOpGlobalState::SkOpGlobalState\28SkOpContourHead*\2c\20SkArenaAlloc*\29 +4674:SkOpEdgeBuilder::preFetch\28\29 +4675:SkOpEdgeBuilder::init\28\29 +4676:SkOpEdgeBuilder::finish\28\29 +4677:SkOpContourBuilder::addConic\28SkPoint*\2c\20float\29 +4678:SkOpContour::addQuad\28SkPoint*\29 +4679:SkOpContour::addCubic\28SkPoint*\29 +4680:SkOpContour::addConic\28SkPoint*\2c\20float\29 +4681:SkOpCoincidence::release\28SkOpSegment\20const*\29 +4682:SkOpCoincidence::mark\28\29 +4683:SkOpCoincidence::markCollapsed\28SkCoincidentSpans*\2c\20SkOpPtT*\29 +4684:SkOpCoincidence::fixUp\28SkCoincidentSpans*\2c\20SkOpPtT*\2c\20SkOpPtT\20const*\29 +4685:SkOpCoincidence::contains\28SkCoincidentSpans\20const*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\29\20const +4686:SkOpCoincidence::checkOverlap\28SkCoincidentSpans*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20SkTDArray*\29\20const +4687:SkOpCoincidence::addOrOverlap\28SkOpSegment*\2c\20SkOpSegment*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20bool*\29 +4688:SkOpAngle::tangentsDiverge\28SkOpAngle\20const*\2c\20double\29 +4689:SkOpAngle::setSpans\28\29 +4690:SkOpAngle::setSector\28\29 +4691:SkOpAngle::previous\28\29\20const +4692:SkOpAngle::midToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +4693:SkOpAngle::loopCount\28\29\20const +4694:SkOpAngle::loopContains\28SkOpAngle\20const*\29\20const +4695:SkOpAngle::lastMarked\28\29\20const +4696:SkOpAngle::endToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +4697:SkOpAngle::alignmentSameSide\28SkOpAngle\20const*\2c\20int*\29\20const +4698:SkOpAngle::after\28SkOpAngle*\29 +4699:SkOffsetSimplePolygon\28SkPoint\20const*\2c\20int\2c\20SkRect\20const&\2c\20float\2c\20SkTDArray*\2c\20SkTDArray*\29 +4700:SkNoDrawCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +4701:SkNoDrawCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +4702:SkMipmapBuilder::countLevels\28\29\20const +4703:SkMipmap::countLevels\28\29\20const +4704:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +4705:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +4706:SkMeshPriv::CpuBuffer::size\28\29\20const +4707:SkMeshPriv::CpuBuffer::peek\28\29\20const +4708:SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4709:SkMatrix::setRotate\28float\2c\20float\2c\20float\29 +4710:SkMatrix::mapRectScaleTranslate\28SkRect*\2c\20SkRect\20const&\29\20const +4711:SkMatrix::isFinite\28\29\20const +4712:SkMatrix::getMinMaxScales\28float*\29\20const +4713:SkMatrix::Translate\28float\2c\20float\29 +4714:SkMatrix::Translate\28SkIPoint\29 +4715:SkMatrix::RotTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +4716:SkMaskSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +4717:SkMaskFilterBase::NinePatch::~NinePatch\28\29 +4718:SkMask::computeTotalImageSize\28\29\20const +4719:SkMakeResourceCacheSharedIDForBitmap\28unsigned\20int\29 +4720:SkMakeCachedRuntimeEffect\28SkRuntimeEffect::Result\20\28*\29\28SkString\2c\20SkRuntimeEffect::Options\20const&\29\2c\20char\20const*\29 +4721:SkM44::preTranslate\28float\2c\20float\2c\20float\29 +4722:SkM44::postTranslate\28float\2c\20float\2c\20float\29 +4723:SkLocalMatrixShader::type\28\29\20const +4724:SkLinearColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +4725:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\29 +4726:SkLatticeIter::SkLatticeIter\28SkCanvas::Lattice\20const&\2c\20SkRect\20const&\29 +4727:SkLRUCache\2c\20SkGoodHash>::find\28unsigned\20long\20long\20const&\29 +4728:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::~SkLRUCache\28\29 +4729:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::reset\28\29 +4730:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::insert\28GrProgramDesc\20const&\2c\20std::__2::unique_ptr>\29 +4731:SkJpegCodec::readRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20SkCodec::Options\20const&\29 +4732:SkJpegCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +4733:SkJpegCodec::ReadHeader\28SkStream*\2c\20SkCodec**\2c\20JpegDecoderMgr**\2c\20std::__2::unique_ptr>\29 +4734:SkJSONWriter::appendString\28char\20const*\2c\20unsigned\20long\29 +4735:SkIsSimplePolygon\28SkPoint\20const*\2c\20int\29 +4736:SkIsConvexPolygon\28SkPoint\20const*\2c\20int\29 +4737:SkInvert4x4Matrix\28float\20const*\2c\20float*\29 +4738:SkInvert3x3Matrix\28float\20const*\2c\20float*\29 +4739:SkInvert2x2Matrix\28float\20const*\2c\20float*\29 +4740:SkIntersections::vertical\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4741:SkIntersections::vertical\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4742:SkIntersections::vertical\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4743:SkIntersections::vertical\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4744:SkIntersections::mostOutside\28double\2c\20double\2c\20SkDPoint\20const&\29\20const +4745:SkIntersections::intersect\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +4746:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDQuad\20const&\29 +4747:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +4748:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDConic\20const&\29 +4749:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDQuad\20const&\29 +4750:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDLine\20const&\29 +4751:SkIntersections::insertCoincident\28double\2c\20double\2c\20SkDPoint\20const&\29 +4752:SkIntersections::horizontal\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4753:SkIntersections::horizontal\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4754:SkIntersections::horizontal\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4755:SkIntersections::horizontal\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4756:SkImages::RasterFromPixmap\28SkPixmap\20const&\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +4757:SkImages::RasterFromData\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\29 +4758:SkImages::DeferredFromGenerator\28std::__2::unique_ptr>\29 +4759:SkImages::DeferredFromEncodedData\28sk_sp\2c\20std::__2::optional\29 +4760:SkImage_Lazy::~SkImage_Lazy\28\29.1 +4761:SkImage_GaneshBase::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +4762:SkImage_Base::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +4763:SkImage_Base::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +4764:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_1::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +4765:SkImageInfo::validRowBytes\28unsigned\20long\29\20const +4766:SkImageInfo::MakeN32Premul\28int\2c\20int\29 +4767:SkImageGenerator::~SkImageGenerator\28\29.1 +4768:SkImageFilters::ColorFilter\28sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +4769:SkImageFilter_Base::getCTMCapability\28\29\20const +4770:SkImageFilter_Base::filterImage\28skif::Context\20const&\29\20const +4771:SkImageFilterCache::Get\28\29 +4772:SkImage::withMipmaps\28sk_sp\29\20const +4773:SkImage::peekPixels\28SkPixmap*\29\20const +4774:SkGradientBaseShader::~SkGradientBaseShader\28\29 +4775:SkGradientBaseShader::AppendGradientFillStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\29 +4776:SkGlyphRunListPainterCPU::SkGlyphRunListPainterCPU\28SkSurfaceProps\20const&\2c\20SkColorType\2c\20SkColorSpace*\29 +4777:SkGlyph::setImage\28SkArenaAlloc*\2c\20SkScalerContext*\29 +4778:SkGlyph::setDrawable\28SkArenaAlloc*\2c\20SkScalerContext*\29 +4779:SkGlyph::pathIsHairline\28\29\20const +4780:SkGlyph::mask\28SkPoint\29\20const +4781:SkGlyph::SkGlyph\28SkGlyph&&\29 +4782:SkGenerateDistanceFieldFromA8Image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20unsigned\20long\29 +4783:SkGaussFilter::SkGaussFilter\28double\29 +4784:SkFrameHolder::setAlphaAndRequiredFrame\28SkFrame*\29 +4785:SkFrame::fillIn\28SkCodec::FrameInfo*\2c\20bool\29\20const +4786:SkFontStyleSet_Custom::appendTypeface\28sk_sp\29 +4787:SkFontStyleSet_Custom::SkFontStyleSet_Custom\28SkString\29 +4788:SkFontPriv::GetFontBounds\28SkFont\20const&\29 +4789:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20int\29\20const +4790:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +4791:SkFontMgr::legacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +4792:SkFontDescriptor::SkFontDescriptor\28\29 +4793:SkFont::setupForAsPaths\28SkPaint*\29 +4794:SkFont::setSkewX\28float\29 +4795:SkFont::setLinearMetrics\28bool\29 +4796:SkFont::setEmbolden\28bool\29 +4797:SkFont::operator==\28SkFont\20const&\29\20const +4798:SkFont::getPaths\28unsigned\20short\20const*\2c\20int\2c\20void\20\28*\29\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29\2c\20void*\29\20const +4799:SkFlattenable::RegisterFlattenablesIfNeeded\28\29 +4800:SkFlattenable::PrivateInitializer::InitEffects\28\29 +4801:SkFlattenable::NameToFactory\28char\20const*\29 +4802:SkFlattenable::FactoryToName\28sk_sp\20\28*\29\28SkReadBuffer&\29\29 +4803:SkFindQuadExtrema\28float\2c\20float\2c\20float\2c\20float*\29 +4804:SkFindCubicExtrema\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +4805:SkFactorySet::~SkFactorySet\28\29 +4806:SkExifMetadata::parseIfd\28unsigned\20int\2c\20bool\2c\20bool\29 +4807:SkEncoder::encodeRows\28int\29 +4808:SkEdgeClipper::clipQuad\28SkPoint\20const*\2c\20SkRect\20const&\29 +4809:SkEdgeClipper::ClipPath\28SkPath\20const&\2c\20SkRect\20const&\2c\20bool\2c\20void\20\28*\29\28SkEdgeClipper*\2c\20bool\2c\20void*\29\2c\20void*\29 +4810:SkEdgeBuilder::buildEdges\28SkPath\20const&\2c\20SkIRect\20const*\29 +4811:SkDynamicMemoryWStream::bytesWritten\28\29\20const +4812:SkDrawableList::newDrawableSnapshot\28\29 +4813:SkDrawTreatAAStrokeAsHairline\28float\2c\20SkMatrix\20const&\2c\20float*\29 +4814:SkDrawShadowMetrics::GetSpotShadowTransform\28SkPoint3\20const&\2c\20float\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkRect\20const&\2c\20bool\2c\20SkMatrix*\2c\20float*\29 +4815:SkDrawShadowMetrics::GetLocalBounds\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect*\29 +4816:SkDrawBase::drawPaint\28SkPaint\20const&\29\20const +4817:SkDrawBase::DrawToMask\28SkPath\20const&\2c\20SkIRect\20const&\2c\20SkMaskFilter\20const*\2c\20SkMatrix\20const*\2c\20SkMaskBuilder*\2c\20SkMaskBuilder::CreateMode\2c\20SkStrokeRec::InitStyle\29 +4818:SkDraw::drawSprite\28SkBitmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29\20const +4819:SkDiscretePathEffectImpl::flatten\28SkWriteBuffer&\29\20const +4820:SkDiscretePathEffect::Make\28float\2c\20float\2c\20unsigned\20int\29 +4821:SkDevice::getRelativeTransform\28SkDevice\20const&\29\20const +4822:SkDevice::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +4823:SkDevice::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +4824:SkDevice::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +4825:SkDevice::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +4826:SkDevice::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +4827:SkDescriptor::findEntry\28unsigned\20int\2c\20unsigned\20int*\29\20const +4828:SkDescriptor::computeChecksum\28\29 +4829:SkDescriptor::addEntry\28unsigned\20int\2c\20unsigned\20long\2c\20void\20const*\29 +4830:SkDeque::Iter::next\28\29 +4831:SkDeque::Iter::Iter\28SkDeque\20const&\2c\20SkDeque::Iter::IterStart\29 +4832:SkData::MakeSubset\28SkData\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4833:SkData::MakeFromStream\28SkStream*\2c\20unsigned\20long\29 +4834:SkDashPath::InternalFilter\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20float\20const*\2c\20int\2c\20float\2c\20int\2c\20float\2c\20float\2c\20SkDashPath::StrokeRecApplication\29 +4835:SkDashPath::CalcDashParameters\28float\2c\20float\20const*\2c\20int\2c\20float*\2c\20int*\2c\20float*\2c\20float*\29 +4836:SkDRect::setBounds\28SkDQuad\20const&\2c\20SkDQuad\20const&\2c\20double\2c\20double\29 +4837:SkDRect::setBounds\28SkDCubic\20const&\2c\20SkDCubic\20const&\2c\20double\2c\20double\29 +4838:SkDRect::setBounds\28SkDConic\20const&\2c\20SkDConic\20const&\2c\20double\2c\20double\29 +4839:SkDQuad::subDivide\28double\2c\20double\29\20const +4840:SkDQuad::monotonicInY\28\29\20const +4841:SkDQuad::isLinear\28int\2c\20int\29\20const +4842:SkDQuad::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4843:SkDPoint::approximatelyDEqual\28SkDPoint\20const&\29\20const +4844:SkDCurveSweep::setCurveHullSweep\28SkPath::Verb\29 +4845:SkDCurve::nearPoint\28SkPath::Verb\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29\20const +4846:SkDCubic::monotonicInX\28\29\20const +4847:SkDCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4848:SkDCubic::hullIntersects\28SkDPoint\20const*\2c\20int\2c\20bool*\29\20const +4849:SkDConic::subDivide\28double\2c\20double\29\20const +4850:SkCubics::RootsReal\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +4851:SkCubicEdge::setCubicWithoutUpdate\28SkPoint\20const*\2c\20int\2c\20bool\29 +4852:SkCubicClipper::ChopMonoAtY\28SkPoint\20const*\2c\20float\2c\20float*\29 +4853:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20SkArenaAlloc*\2c\20sk_sp\29 +4854:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkArenaAlloc*\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4855:SkContourMeasureIter::~SkContourMeasureIter\28\29 +4856:SkContourMeasureIter::SkContourMeasureIter\28SkPath\20const&\2c\20bool\2c\20float\29 +4857:SkContourMeasure::length\28\29\20const +4858:SkContourMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29\20const +4859:SkConic::BuildUnitArc\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRotationDirection\2c\20SkMatrix\20const*\2c\20SkConic*\29 +4860:SkComputeRadialSteps\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float*\2c\20float*\2c\20int*\29 +4861:SkCompressedDataSize\28SkTextureCompressionType\2c\20SkISize\2c\20skia_private::TArray*\2c\20bool\29 +4862:SkColorTypeValidateAlphaType\28SkColorType\2c\20SkAlphaType\2c\20SkAlphaType*\29 +4863:SkColorSpaceSingletonFactory::Make\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +4864:SkColorSpace::toProfile\28skcms_ICCProfile*\29\20const +4865:SkColorSpace::makeLinearGamma\28\29\20const +4866:SkColorSpace::isSRGB\28\29\20const +4867:SkColorMatrix_RGB2YUV\28SkYUVColorSpace\2c\20float*\29 +4868:SkColorFilterShader::SkColorFilterShader\28sk_sp\2c\20float\2c\20sk_sp\29 +4869:SkColorFilter::filterColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\2c\20SkColorSpace*\29\20const +4870:SkColor4fXformer::SkColor4fXformer\28SkGradientBaseShader\20const*\2c\20SkColorSpace*\2c\20bool\29 +4871:SkCoincidentSpans::extend\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +4872:SkCodec::outputScanline\28int\29\20const +4873:SkCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +4874:SkCodec::initializeColorXform\28SkImageInfo\20const&\2c\20SkEncodedInfo::Alpha\2c\20bool\29 +4875:SkCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkSpan\2c\20SkCodec::Result*\2c\20SkPngChunkReader*\2c\20SkCodec::SelectionPolicy\29 +4876:SkChopQuadAtMaxCurvature\28SkPoint\20const*\2c\20SkPoint*\29 +4877:SkChopQuadAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +4878:SkChopMonoCubicAtX\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +4879:SkChopCubicAtInflections\28SkPoint\20const*\2c\20SkPoint*\29 +4880:SkCharToGlyphCache::findGlyphIndex\28int\29\20const +4881:SkCanvasPriv::WriteLattice\28void*\2c\20SkCanvas::Lattice\20const&\29 +4882:SkCanvasPriv::ReadLattice\28SkReadBuffer&\2c\20SkCanvas::Lattice*\29 +4883:SkCanvasPriv::ImageToColorFilter\28SkPaint*\29 +4884:SkCanvasPriv::GetDstClipAndMatrixCounts\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20int*\2c\20int*\29 +4885:SkCanvas::~SkCanvas\28\29 +4886:SkCanvas::skew\28float\2c\20float\29 +4887:SkCanvas::only_axis_aligned_saveBehind\28SkRect\20const*\29 +4888:SkCanvas::internalDrawDeviceWithFilter\28SkDevice*\2c\20SkDevice*\2c\20SkSpan>\2c\20SkPaint\20const&\2c\20SkCanvas::DeviceCompatibleWithFilter\2c\20float\2c\20bool\29 +4889:SkCanvas::getDeviceClipBounds\28\29\20const +4890:SkCanvas::experimental_DrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +4891:SkCanvas::drawVertices\28sk_sp\20const&\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +4892:SkCanvas::drawSlug\28sktext::gpu::Slug\20const*\29 +4893:SkCanvas::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +4894:SkCanvas::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +4895:SkCanvas::drawImageNine\28SkImage\20const*\2c\20SkIRect\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +4896:SkCanvas::drawClippedToSaveBehind\28SkPaint\20const&\29 +4897:SkCanvas::drawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +4898:SkCanvas::didTranslate\28float\2c\20float\29 +4899:SkCanvas::clipShader\28sk_sp\2c\20SkClipOp\29 +4900:SkCanvas::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +4901:SkCanvas::SkCanvas\28sk_sp\29 +4902:SkCanvas::ImageSetEntry::ImageSetEntry\28\29 +4903:SkCachedData::SkCachedData\28void*\2c\20unsigned\20long\29 +4904:SkCachedData::SkCachedData\28unsigned\20long\2c\20SkDiscardableMemory*\29 +4905:SkBulkGlyphMetricsAndPaths::glyphs\28SkSpan\29 +4906:SkBmpStandardCodec::decodeIcoMask\28SkStream*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +4907:SkBmpMaskCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +4908:SkBmpCodec::SkBmpCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +4909:SkBmpBaseCodec::SkBmpBaseCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +4910:SkBlurMask::ConvertRadiusToSigma\28float\29 +4911:SkBlurMask::ComputeBlurredScanline\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20unsigned\20int\2c\20float\29 +4912:SkBlurMask::BlurRect\28float\2c\20SkMaskBuilder*\2c\20SkRect\20const&\2c\20SkBlurStyle\2c\20SkIPoint*\2c\20SkMaskBuilder::CreateMode\29 +4913:SkBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +4914:SkBlitter::Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4915:SkBlitter::ChooseSprite\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkArenaAlloc*\2c\20sk_sp\29 +4916:SkBlendShader::~SkBlendShader\28\29.1 +4917:SkBlendShader::~SkBlendShader\28\29 +4918:SkBitmapImageGetPixelRef\28SkImage\20const*\29 +4919:SkBitmapDevice::SkBitmapDevice\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\2c\20void*\29 +4920:SkBitmapDevice::Create\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\2c\20SkRasterHandleAllocator*\29 +4921:SkBitmapCache::Rec::install\28SkBitmap*\29 +4922:SkBitmapCache::Rec::diagnostic_only_getDiscardable\28\29\20const +4923:SkBitmapCache::Find\28SkBitmapCacheDesc\20const&\2c\20SkBitmap*\29 +4924:SkBitmapCache::Alloc\28SkBitmapCacheDesc\20const&\2c\20SkImageInfo\20const&\2c\20SkPixmap*\29 +4925:SkBitmapCache::Add\28std::__2::unique_ptr\2c\20SkBitmap*\29 +4926:SkBitmap::setPixelRef\28sk_sp\2c\20int\2c\20int\29 +4927:SkBitmap::setAlphaType\28SkAlphaType\29 +4928:SkBitmap::reset\28\29 +4929:SkBitmap::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +4930:SkBitmap::getAddr\28int\2c\20int\29\20const +4931:SkBitmap::allocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +4932:SkBitmap::HeapAllocator::allocPixelRef\28SkBitmap*\29 +4933:SkBinaryWriteBuffer::writeFlattenable\28SkFlattenable\20const*\29 +4934:SkBinaryWriteBuffer::writeColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +4935:SkBigPicture::SkBigPicture\28SkRect\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20sk_sp\2c\20unsigned\20long\29 +4936:SkBezierQuad::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +4937:SkBezierCubic::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +4938:SkBasicEdgeBuilder::~SkBasicEdgeBuilder\28\29 +4939:SkBaseShadowTessellator::finishPathPolygon\28\29 +4940:SkBaseShadowTessellator::computeConvexShadow\28float\2c\20float\2c\20bool\29 +4941:SkBaseShadowTessellator::computeConcaveShadow\28float\2c\20float\29 +4942:SkBaseShadowTessellator::clipUmbraPoint\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\29 +4943:SkBaseShadowTessellator::addInnerPoint\28SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20int*\29 +4944:SkBaseShadowTessellator::addEdge\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20bool\2c\20bool\29 +4945:SkBaseShadowTessellator::addArc\28SkPoint\20const&\2c\20float\2c\20bool\29 +4946:SkAutoCanvasMatrixPaint::~SkAutoCanvasMatrixPaint\28\29 +4947:SkAutoCanvasMatrixPaint::SkAutoCanvasMatrixPaint\28SkCanvas*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\2c\20SkRect\20const&\29 +4948:SkAndroidCodecAdapter::~SkAndroidCodecAdapter\28\29 +4949:SkAndroidCodecAdapter::SkAndroidCodecAdapter\28SkCodec*\29 +4950:SkAndroidCodec::~SkAndroidCodec\28\29 +4951:SkAndroidCodec::getAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const*\29 +4952:SkAndroidCodec::SkAndroidCodec\28SkCodec*\29 +4953:SkAnalyticEdge::update\28int\2c\20bool\29 +4954:SkAnalyticEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +4955:SkAnalyticEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4956:SkAAClip::operator=\28SkAAClip\20const&\29 +4957:SkAAClip::op\28SkIRect\20const&\2c\20SkClipOp\29 +4958:SkAAClip::Builder::flushRow\28bool\29 +4959:SkAAClip::Builder::finish\28SkAAClip*\29 +4960:SkAAClip::Builder::Blitter::~Blitter\28\29 +4961:SkAAClip::Builder::Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +4962:Sk2DPathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +4963:SimpleImageInfo*\20emscripten::internal::raw_constructor\28\29 +4964:SimpleFontStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle\20const&\29 +4965:SharedGenerator::isTextureGenerator\28\29 +4966:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29.1 +4967:RgnOper::addSpan\28int\2c\20int\20const*\2c\20int\20const*\29 +4968:PorterDuffXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +4969:PathSegment::init\28\29 +4970:PathAddVerbsPointsWeights\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +4971:ParseSingleImage +4972:ParseHeadersInternal +4973:PS_Conv_ASCIIHexDecode +4974:Op\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\2c\20SkPath*\29 +4975:OpAsWinding::markReverse\28Contour*\2c\20Contour*\29 +4976:OpAsWinding::getDirection\28Contour&\29 +4977:OpAsWinding::checkContainerChildren\28Contour*\2c\20Contour*\29 +4978:OffsetEdge::computeCrossingDistance\28OffsetEdge\20const*\29 +4979:OT::sbix::accelerator_t::get_png_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +4980:OT::sbix::accelerator_t::choose_strike\28hb_font_t*\29\20const +4981:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +4982:OT::hmtxvmtx::accelerator_t::get_advance_with_var_unscaled\28unsigned\20int\2c\20hb_font_t*\2c\20float*\29\20const +4983:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +4984:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GPOS_impl::PosLookup\20const&\29 +4985:OT::hb_kern_machine_t::kern\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20bool\29\20const +4986:OT::hb_accelerate_subtables_context_t::return_t\20OT::Context::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +4987:OT::hb_accelerate_subtables_context_t::return_t\20OT::ChainContext::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +4988:OT::glyf_accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\29\20const +4989:OT::glyf_accelerator_t::get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29\20const +4990:OT::cmap::accelerator_t::get_variation_glyph\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_cache_t<21u\2c\2016u\2c\208u\2c\20true>*\29\20const +4991:OT::cff2::accelerator_templ_t>::accelerator_templ_t\28hb_face_t*\29 +4992:OT::cff2::accelerator_templ_t>::_fini\28\29 +4993:OT::cff1::lookup_expert_subset_charset_for_sid\28unsigned\20int\29 +4994:OT::cff1::lookup_expert_charset_for_sid\28unsigned\20int\29 +4995:OT::cff1::accelerator_templ_t>::~accelerator_templ_t\28\29 +4996:OT::cff1::accelerator_templ_t>::_fini\28\29 +4997:OT::TupleVariationData::unpack_points\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +4998:OT::SBIXStrike::get_glyph_blob\28unsigned\20int\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20unsigned\20int\2c\20unsigned\20int*\29\20const +4999:OT::RuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5000:OT::RuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +5001:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5002:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5003:OT::PaintTranslate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5004:OT::PaintSolid::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5005:OT::PaintSkewAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5006:OT::PaintSkew::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5007:OT::PaintScaleUniformAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5008:OT::PaintScaleUniform::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5009:OT::PaintScaleAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5010:OT::PaintScale::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5011:OT::PaintRotateAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5012:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5013:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5014:OT::Lookup::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +5015:OT::Layout::propagate_attachment_offsets\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5016:OT::Layout::GSUB_impl::MultipleSubstFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5017:OT::Layout::GSUB_impl::Ligature::apply\28OT::hb_ot_apply_context_t*\29\20const +5018:OT::Layout::GPOS_impl::reverse_cursive_minor_offset\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5019:OT::Layout::GPOS_impl::MarkRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5020:OT::Layout::GPOS_impl::MarkBasePosFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5021:OT::Layout::GPOS_impl::AnchorMatrix::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5022:OT::IndexSubtableRecord::get_image_data\28unsigned\20int\2c\20void\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5023:OT::FeatureVariationRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5024:OT::FeatureParams::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5025:OT::ContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5026:OT::ContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5027:OT::ContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5028:OT::ContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5029:OT::ColorStop::get_color_stop\28OT::hb_paint_context_t*\2c\20hb_color_stop_t*\2c\20unsigned\20int\2c\20OT::VarStoreInstancer\20const&\29\20const +5030:OT::ColorLine::static_get_extend\28hb_color_line_t*\2c\20void*\2c\20void*\29 +5031:OT::ChainRuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5032:OT::ChainRuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5033:OT::ChainRuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5034:OT::ChainContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5035:OT::ChainContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5036:OT::ChainContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5037:OT::ChainContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5038:OT::CBDT::accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +5039:OT::Affine2x3::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5040:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29 +5041:Load_SBit_Png +5042:LineCubicIntersections::intersectRay\28double*\29 +5043:LineCubicIntersections::VerticalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5044:LineCubicIntersections::HorizontalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5045:Launch +5046:JpegDecoderMgr::returnFalse\28char\20const*\29 +5047:JpegDecoderMgr::getEncodedColor\28SkEncodedInfo::Color*\29 +5048:JSObjectFromLineMetrics\28skia::textlayout::LineMetrics&\29 +5049:JSObjectFromGlyphInfo\28skia::textlayout::Paragraph::GlyphInfo&\29 +5050:Ins_DELTAP +5051:HandleCoincidence\28SkOpContourHead*\2c\20SkOpCoincidence*\29 +5052:GrWritePixelsTask::~GrWritePixelsTask\28\29 +5053:GrWaitRenderTask::~GrWaitRenderTask\28\29 +5054:GrVertexBufferAllocPool::makeSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +5055:GrVertexBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5056:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20SkPathFillType\2c\20skgpu::VertexWriter\29\20const +5057:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20GrEagerVertexAllocator*\29\20const +5058:GrTriangulator::mergeEdgesBelow\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5059:GrTriangulator::mergeEdgesAbove\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5060:GrTriangulator::makeSortedVertex\28SkPoint\20const&\2c\20unsigned\20char\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29\20const +5061:GrTriangulator::makeEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\29 +5062:GrTriangulator::computeBisector\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\29\20const +5063:GrTriangulator::appendQuadraticToContour\28SkPoint\20const*\2c\20float\2c\20GrTriangulator::VertexList*\29\20const +5064:GrTriangulator::SortMesh\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +5065:GrTriangulator::FindEnclosingEdges\28GrTriangulator::Vertex\20const&\2c\20GrTriangulator::EdgeList\20const&\2c\20GrTriangulator::Edge**\2c\20GrTriangulator::Edge**\29 +5066:GrTriangulator::Edge::intersect\28GrTriangulator::Edge\20const&\2c\20SkPoint*\2c\20unsigned\20char*\29\20const +5067:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29 +5068:GrThreadSafeCache::~GrThreadSafeCache\28\29 +5069:GrThreadSafeCache::findVertsWithData\28skgpu::UniqueKey\20const&\29 +5070:GrThreadSafeCache::addVertsWithData\28skgpu::UniqueKey\20const&\2c\20sk_sp\2c\20bool\20\28*\29\28SkData*\2c\20SkData*\29\29 +5071:GrThreadSafeCache::Entry::set\28skgpu::UniqueKey\20const&\2c\20sk_sp\29 +5072:GrThreadSafeCache::CreateLazyView\28GrDirectContext*\2c\20GrColorType\2c\20SkISize\2c\20GrSurfaceOrigin\2c\20SkBackingFit\29 +5073:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29 +5074:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +5075:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28GrCaps\20const&\2c\20std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20GrMipmapStatus\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\2c\20std::__2::basic_string_view>\29 +5076:GrTextureProxyPriv::setDeferredUploader\28std::__2::unique_ptr>\29 +5077:GrTextureProxy::setUniqueKey\28GrProxyProvider*\2c\20skgpu::UniqueKey\20const&\29 +5078:GrTextureProxy::clearUniqueKey\28\29 +5079:GrTextureProxy::ProxiesAreCompatibleAsDynamicState\28GrSurfaceProxy\20const*\2c\20GrSurfaceProxy\20const*\29 +5080:GrTextureProxy::GrTextureProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29.1 +5081:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::$_1::operator\28\29\28int\2c\20GrSamplerState::WrapMode\2c\20GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::Span\2c\20GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::Span\2c\20float\29\20const +5082:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::$_2::operator\28\29\28GrTextureEffect::ShaderMode\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +5083:GrTexture::markMipmapsDirty\28\29 +5084:GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +5085:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29 +5086:GrSurfaceProxy::GrSurfaceProxy\28GrBackendFormat\20const&\2c\20SkISize\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +5087:GrStyledShape::~GrStyledShape\28\29 +5088:GrStyledShape::setInheritedKey\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +5089:GrStyledShape::asRRect\28SkRRect*\2c\20SkPathDirection*\2c\20unsigned\20int*\2c\20bool*\29\20const +5090:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20SkPaint\20const&\2c\20GrStyledShape::DoSimplify\29 +5091:GrStyle::~GrStyle\28\29 +5092:GrStyle::applyToPath\28SkPath*\2c\20SkStrokeRec::InitStyle*\2c\20SkPath\20const&\2c\20float\29\20const +5093:GrStyle::applyPathEffect\28SkPath*\2c\20SkStrokeRec*\2c\20SkPath\20const&\29\20const +5094:GrStencilSettings::SetClipBitSettings\28bool\29 +5095:GrStagingBufferManager::detachBuffers\28\29 +5096:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineStruct\28char\20const*\29 +5097:GrShape::simplify\28unsigned\20int\29 +5098:GrShape::segmentMask\28\29\20const +5099:GrShape::conservativeContains\28SkRect\20const&\29\20const +5100:GrShape::closed\28\29\20const +5101:GrSWMaskHelper::toTextureView\28GrRecordingContext*\2c\20SkBackingFit\29 +5102:GrSWMaskHelper::drawShape\28GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5103:GrSWMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5104:GrResourceProvider::writePixels\28sk_sp\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\29\20const +5105:GrResourceProvider::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +5106:GrResourceProvider::prepareLevels\28GrBackendFormat\20const&\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\2c\20skia_private::AutoSTArray<14\2c\20GrMipLevel>*\2c\20skia_private::AutoSTArray<14\2c\20std::__2::unique_ptr>>*\29\20const +5107:GrResourceProvider::getExactScratch\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5108:GrResourceProvider::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5109:GrResourceProvider::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20GrColorType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMipLevel\20const*\2c\20std::__2::basic_string_view>\29 +5110:GrResourceProvider::createApproxTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5111:GrResourceCache::~GrResourceCache\28\29 +5112:GrResourceCache::removeResource\28GrGpuResource*\29 +5113:GrResourceCache::processFreedGpuResources\28\29 +5114:GrResourceCache::insertResource\28GrGpuResource*\29 +5115:GrResourceCache::didChangeBudgetStatus\28GrGpuResource*\29 +5116:GrResourceAllocator::~GrResourceAllocator\28\29 +5117:GrResourceAllocator::planAssignment\28\29 +5118:GrResourceAllocator::expire\28unsigned\20int\29 +5119:GrRenderTask::makeSkippable\28\29 +5120:GrRenderTask::isInstantiated\28\29\20const +5121:GrRenderTarget::GrRenderTarget\28GrGpu*\2c\20SkISize\20const&\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20sk_sp\29 +5122:GrRecordingContextPriv::createDevice\28skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\2c\20skgpu::ganesh::Device::InitContents\29 +5123:GrRecordingContext::init\28\29 +5124:GrRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\2c\20GrShaderCaps\20const&\29 +5125:GrQuadUtils::TessellationHelper::reset\28GrQuad\20const&\2c\20GrQuad\20const*\29 +5126:GrQuadUtils::TessellationHelper::outset\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad*\2c\20GrQuad*\29 +5127:GrQuadUtils::TessellationHelper::adjustDegenerateVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +5128:GrQuadUtils::TessellationHelper::OutsetRequest::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20GrQuad::Type\2c\20skvx::Vec<4\2c\20float>\20const&\29 +5129:GrQuadUtils::TessellationHelper::EdgeVectors::reset\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad::Type\29 +5130:GrQuadUtils::ClipToW0\28DrawQuad*\2c\20DrawQuad*\29 +5131:GrQuad::bounds\28\29\20const +5132:GrProxyProvider::~GrProxyProvider\28\29 +5133:GrProxyProvider::wrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\2c\20sk_sp\29 +5134:GrProxyProvider::removeUniqueKeyFromProxy\28GrTextureProxy*\29 +5135:GrProxyProvider::processInvalidUniqueKeyImpl\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\2c\20GrProxyProvider::RemoveTableEntry\29 +5136:GrProxyProvider::createLazyProxy\28std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20GrMipmapStatus\2c\20GrInternalSurfaceFlags\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +5137:GrProxyProvider::contextID\28\29\20const +5138:GrProxyProvider::adoptUniqueKeyFromSurface\28GrTextureProxy*\2c\20GrSurface\20const*\29 +5139:GrPixmapBase::clip\28SkISize\2c\20SkIPoint*\29 +5140:GrPixmap::GrPixmap\28GrImageInfo\2c\20sk_sp\2c\20unsigned\20long\29 +5141:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20sk_sp\2c\20GrAppliedHardClip\20const&\29 +5142:GrPersistentCacheUtils::GetType\28SkReadBuffer*\29 +5143:GrPathUtils::QuadUVMatrix::set\28SkPoint\20const*\29 +5144:GrPathTessellationShader::MakeStencilOnlyPipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedHardClip\20const&\2c\20GrPipeline::InputFlags\29 +5145:GrPaint::setCoverageSetOpXPFactory\28SkRegion::Op\2c\20bool\29 +5146:GrOvalOpFactory::MakeOvalOp\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\2c\20GrShaderCaps\20const*\29 +5147:GrOpsRenderPass::drawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +5148:GrOpsRenderPass::drawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5149:GrOpsRenderPass::drawIndexPattern\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5150:GrOpFlushState::reset\28\29 +5151:GrOpFlushState::executeDrawsAndUploadsForMeshDrawOp\28GrOp\20const*\2c\20SkRect\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +5152:GrOpFlushState::addASAPUpload\28std::__2::function&\29>&&\29 +5153:GrOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5154:GrOp::combineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5155:GrOnFlushResourceProvider::instantiateProxy\28GrSurfaceProxy*\29 +5156:GrMeshDrawTarget::allocMesh\28\29 +5157:GrMeshDrawOp::PatternHelper::init\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +5158:GrMeshDrawOp::CombinedQuadCountWillOverflow\28GrAAType\2c\20bool\2c\20int\29 +5159:GrMemoryPool::allocate\28unsigned\20long\29 +5160:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::changed\28\29 +5161:GrIndexBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20int*\29 +5162:GrIndexBufferAllocPool::makeSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5163:GrImageInfo::refColorSpace\28\29\20const +5164:GrImageInfo::minRowBytes\28\29\20const +5165:GrImageInfo::makeDimensions\28SkISize\29\20const +5166:GrImageInfo::bpp\28\29\20const +5167:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20int\2c\20int\29 +5168:GrImageContext::abandonContext\28\29 +5169:GrGpuResource::makeBudgeted\28\29 +5170:GrGpuResource::getResourceName\28\29\20const +5171:GrGpuResource::abandon\28\29 +5172:GrGpuResource::CreateUniqueID\28\29 +5173:GrGpu::~GrGpu\28\29 +5174:GrGpu::regenerateMipMapLevels\28GrTexture*\29 +5175:GrGpu::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5176:GrGpu::createTextureCommon\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +5177:GrGeometryProcessor::AttributeSet::addToKey\28skgpu::KeyBuilder*\29\20const +5178:GrGLVertexArray::invalidateCachedState\28\29 +5179:GrGLTextureParameters::invalidate\28\29 +5180:GrGLTexture::MakeWrapped\28GrGLGpu*\2c\20GrMipmapStatus\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrWrapCacheable\2c\20GrIOType\2c\20std::__2::basic_string_view>\29 +5181:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20skgpu::Budgeted\2c\20GrGLTexture::Desc\20const&\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5182:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5183:GrGLSLVaryingHandler::getFragDecls\28SkString*\2c\20SkString*\29\20const +5184:GrGLSLVaryingHandler::addAttribute\28GrShaderVar\20const&\29 +5185:GrGLSLUniformHandler::liftUniformToVertexShader\28GrProcessor\20const&\2c\20SkString\29 +5186:GrGLSLShaderBuilder::finalize\28unsigned\20int\29 +5187:GrGLSLShaderBuilder::emitFunction\28char\20const*\2c\20char\20const*\29 +5188:GrGLSLShaderBuilder::emitFunctionPrototype\28char\20const*\29 +5189:GrGLSLShaderBuilder::appendTextureLookupAndBlend\28char\20const*\2c\20SkBlendMode\2c\20GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +5190:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29::$_0::operator\28\29\28char\20const*\2c\20GrResourceHandle\2c\20skcms_TFType\29\20const +5191:GrGLSLShaderBuilder::addLayoutQualifier\28char\20const*\2c\20GrGLSLShaderBuilder::InterfaceQualifier\29 +5192:GrGLSLShaderBuilder::GrGLSLShaderBuilder\28GrGLSLProgramBuilder*\29 +5193:GrGLSLProgramDataManager::setRuntimeEffectUniforms\28SkSpan\2c\20SkSpan\20const>\2c\20SkSpan\2c\20void\20const*\29\20const +5194:GrGLSLProgramBuilder::~GrGLSLProgramBuilder\28\29 +5195:GrGLSLBlend::SetBlendModeUniformData\28GrGLSLProgramDataManager\20const&\2c\20GrResourceHandle\2c\20SkBlendMode\29 +5196:GrGLSLBlend::BlendExpression\28GrProcessor\20const*\2c\20GrGLSLUniformHandler*\2c\20GrResourceHandle*\2c\20char\20const*\2c\20char\20const*\2c\20SkBlendMode\29 +5197:GrGLRenderTarget::GrGLRenderTarget\28GrGLGpu*\2c\20SkISize\20const&\2c\20GrGLFormat\2c\20int\2c\20GrGLRenderTarget::IDs\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5198:GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5199:GrGLProgramDataManager::set2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5200:GrGLProgramBuilder::uniformHandler\28\29 +5201:GrGLProgramBuilder::PrecompileProgram\28GrDirectContext*\2c\20GrGLPrecompiledProgram*\2c\20SkData\20const&\29::$_0::operator\28\29\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int\29\20const +5202:GrGLProgramBuilder::CreateProgram\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrGLPrecompiledProgram\20const*\29 +5203:GrGLProgram::~GrGLProgram\28\29 +5204:GrGLMakeAssembledInterface\28void*\2c\20void\20\28*\20\28*\29\28void*\2c\20char\20const*\29\29\28\29\29 +5205:GrGLGpu::~GrGLGpu\28\29 +5206:GrGLGpu::uploadTexData\28SkISize\2c\20unsigned\20int\2c\20SkIRect\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\2c\20GrMipLevel\20const*\2c\20int\29 +5207:GrGLGpu::uploadCompressedTexData\28SkTextureCompressionType\2c\20GrGLFormat\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20unsigned\20int\2c\20void\20const*\2c\20unsigned\20long\29 +5208:GrGLGpu::uploadColorToTex\28GrGLFormat\2c\20SkISize\2c\20unsigned\20int\2c\20std::__2::array\2c\20unsigned\20int\29 +5209:GrGLGpu::readOrTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20int\29 +5210:GrGLGpu::getCompatibleStencilIndex\28GrGLFormat\29 +5211:GrGLGpu::deleteSync\28__GLsync*\29 +5212:GrGLGpu::createRenderTargetObjects\28GrGLTexture::Desc\20const&\2c\20int\2c\20GrGLRenderTarget::IDs*\29 +5213:GrGLGpu::createCompressedTexture2D\28SkISize\2c\20SkTextureCompressionType\2c\20GrGLFormat\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrGLTextureParameters::SamplerOverriddenState*\29 +5214:GrGLGpu::bindFramebuffer\28unsigned\20int\2c\20unsigned\20int\29 +5215:GrGLGpu::ProgramCache::reset\28\29 +5216:GrGLGpu::ProgramCache::findOrCreateProgramImpl\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrThreadSafePipelineBuilder::Stats::ProgramCacheResult*\29 +5217:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29 +5218:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\29 +5219:GrGLFormatIsCompressed\28GrGLFormat\29 +5220:GrGLContext::~GrGLContext\28\29.1 +5221:GrGLContext::~GrGLContext\28\29 +5222:GrGLCaps::~GrGLCaps\28\29 +5223:GrGLCaps::getTexSubImageExternalFormatAndType\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5224:GrGLCaps::getTexSubImageDefaultFormatTypeAndColorType\28GrGLFormat\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20GrColorType*\29\20const +5225:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrGLFormat\29\20const +5226:GrGLCaps::formatSupportsTexStorage\28GrGLFormat\29\20const +5227:GrGLCaps::canCopyAsDraw\28GrGLFormat\2c\20bool\2c\20bool\29\20const +5228:GrGLCaps::canCopyAsBlit\28GrGLFormat\2c\20int\2c\20GrTextureType\20const*\2c\20GrGLFormat\2c\20int\2c\20GrTextureType\20const*\2c\20SkRect\20const&\2c\20bool\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29\20const +5229:GrFragmentProcessor::~GrFragmentProcessor\28\29 +5230:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5231:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5232:GrFragmentProcessor::ProgramImpl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +5233:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::Make\28std::__2::unique_ptr>\29 +5234:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +5235:GrFragmentProcessor::ClampOutput\28std::__2::unique_ptr>\29 +5236:GrFixedClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +5237:GrFixedClip::getConservativeBounds\28\29\20const +5238:GrFixedClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +5239:GrFinishCallbacks::check\28\29 +5240:GrEagerDynamicVertexAllocator::unlock\28int\29 +5241:GrDynamicAtlas::readView\28GrCaps\20const&\29\20const +5242:GrDynamicAtlas::instantiate\28GrOnFlushResourceProvider*\2c\20sk_sp\29 +5243:GrDriverBugWorkarounds::GrDriverBugWorkarounds\28\29 +5244:GrDrawingManager::getLastRenderTask\28GrSurfaceProxy\20const*\29\20const +5245:GrDrawingManager::flush\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +5246:GrDrawOpAtlasConfig::atlasDimensions\28skgpu::MaskFormat\29\20const +5247:GrDrawOpAtlasConfig::GrDrawOpAtlasConfig\28int\2c\20unsigned\20long\29 +5248:GrDrawOpAtlas::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +5249:GrDrawOpAtlas::Make\28GrProxyProvider*\2c\20GrBackendFormat\20const&\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20int\2c\20int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20GrDrawOpAtlas::AllowMultitexturing\2c\20skgpu::PlotEvictionCallback*\2c\20std::__2::basic_string_view>\29 +5250:GrDistanceFieldA8TextGeoProc::onTextureSampler\28int\29\20const +5251:GrDistanceFieldA8TextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5252:GrDisableColorXPFactory::MakeXferProcessor\28\29 +5253:GrDirectContextPriv::validPMUPMConversionExists\28\29 +5254:GrDirectContext::~GrDirectContext\28\29 +5255:GrDirectContext::onGetSmallPathAtlasMgr\28\29 +5256:GrDirectContext::getResourceCacheLimits\28int*\2c\20unsigned\20long*\29\20const +5257:GrCopyRenderTask::~GrCopyRenderTask\28\29 +5258:GrCopyRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +5259:GrCopyBaseMipMapToView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Budgeted\29 +5260:GrContext_Base::threadSafeProxy\28\29 +5261:GrContext_Base::maxSurfaceSampleCountForColorType\28SkColorType\29\20const +5262:GrContext_Base::backend\28\29\20const +5263:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29 +5264:GrColorInfo::makeColorType\28GrColorType\29\20const +5265:GrColorInfo::isLinearlyBlended\28\29\20const +5266:GrColorFragmentProcessorAnalysis::GrColorFragmentProcessorAnalysis\28GrProcessorAnalysisColor\20const&\2c\20std::__2::unique_ptr>\20const*\2c\20int\29 +5267:GrClip::IsPixelAligned\28SkRect\20const&\29 +5268:GrCaps::surfaceSupportsWritePixels\28GrSurface\20const*\29\20const +5269:GrCaps::getDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\2c\20bool\29\20const +5270:GrCPixmap::GrCPixmap\28GrPixmap\20const&\29 +5271:GrBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\2c\20unsigned\20long*\29 +5272:GrBufferAllocPool::createBlock\28unsigned\20long\29 +5273:GrBufferAllocPool::CpuBufferCache::makeBuffer\28unsigned\20long\2c\20bool\29 +5274:GrBlurUtils::draw_shape_with_mask_filter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\29 +5275:GrBlurUtils::draw_mask\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrPaint&&\2c\20GrSurfaceProxyView\29 +5276:GrBlurUtils::create_integral_table\28float\2c\20SkBitmap*\29 +5277:GrBlurUtils::convolve_gaussian\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20SkIRect\2c\20SkIRect\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkBackingFit\29 +5278:GrBlurUtils::\28anonymous\20namespace\29::make_texture_effect\28GrCaps\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20GrSamplerState\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkISize\20const&\29 +5279:GrBitmapTextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5280:GrBicubicEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +5281:GrBicubicEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +5282:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20std::__2::basic_string_view>\29 +5283:GrBackendTexture::operator=\28GrBackendTexture\20const&\29 +5284:GrBackendRenderTargets::MakeGL\28int\2c\20int\2c\20int\2c\20int\2c\20GrGLFramebufferInfo\20const&\29 +5285:GrBackendRenderTargets::GetGLFramebufferInfo\28GrBackendRenderTarget\20const&\2c\20GrGLFramebufferInfo*\29 +5286:GrBackendRenderTarget::~GrBackendRenderTarget\28\29 +5287:GrBackendRenderTarget::isProtected\28\29\20const +5288:GrBackendFormatBytesPerBlock\28GrBackendFormat\20const&\29 +5289:GrBackendFormat::makeTexture2D\28\29\20const +5290:GrBackendFormat::isMockStencilFormat\28\29\20const +5291:GrBackendFormat::MakeMock\28GrColorType\2c\20SkTextureCompressionType\2c\20bool\29 +5292:GrAuditTrail::opsCombined\28GrOp\20const*\2c\20GrOp\20const*\29 +5293:GrAttachment::ComputeSharedAttachmentUniqueKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20GrAttachment::UsageFlags\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMemoryless\2c\20skgpu::UniqueKey*\29 +5294:GrAtlasManager::~GrAtlasManager\28\29 +5295:GrAtlasManager::getViews\28skgpu::MaskFormat\2c\20unsigned\20int*\29 +5296:GrAtlasManager::freeAll\28\29 +5297:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::EventList*\2c\20GrTriangulator::Comparator\20const&\29\20const +5298:GrAATriangulator::collapseOverlapRegions\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\2c\20GrAATriangulator::EventComparator\29 +5299:GrAAConvexTessellator::quadTo\28SkPoint\20const*\29 +5300:GetVariationDesignPosition\28AutoFTAccess&\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20int\29 +5301:GetShapedLines\28skia::textlayout::Paragraph&\29 +5302:GetLargeValue +5303:FontMgrRunIterator::endOfCurrentRun\28\29\20const +5304:FontMgrRunIterator::atEnd\28\29\20const +5305:FinishRow +5306:FindUndone\28SkOpContourHead*\29 +5307:FT_Stream_Close +5308:FT_Sfnt_Table_Info +5309:FT_Render_Glyph_Internal +5310:FT_Remove_Module +5311:FT_Outline_Get_Orientation +5312:FT_Outline_EmboldenXY +5313:FT_New_Library +5314:FT_New_GlyphSlot +5315:FT_List_Iterate +5316:FT_List_Find +5317:FT_List_Finalize +5318:FT_GlyphLoader_CheckSubGlyphs +5319:FT_Get_Postscript_Name +5320:FT_Get_Paint_Layers +5321:FT_Get_PS_Font_Info +5322:FT_Get_Kerning +5323:FT_Get_Glyph_Name +5324:FT_Get_FSType_Flags +5325:FT_Get_Colorline_Stops +5326:FT_Get_Color_Glyph_ClipBox +5327:FT_Bitmap_Convert +5328:FT_Add_Default_Modules +5329:EllipticalRRectOp::~EllipticalRRectOp\28\29.1 +5330:EllipticalRRectOp::~EllipticalRRectOp\28\29 +5331:EllipticalRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5332:EllipticalRRectOp::RRect&\20skia_private::TArray::emplace_back\28EllipticalRRectOp::RRect&&\29 +5333:EllipticalRRectOp::EllipticalRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20SkPoint\2c\20bool\29 +5334:EllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5335:EllipseOp::EllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20EllipseOp::DeviceSpaceParams\20const&\2c\20SkStrokeRec\20const&\29 +5336:EllipseGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5337:DIEllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5338:DIEllipseOp::DIEllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20DIEllipseOp::DeviceSpaceParams\20const&\2c\20SkMatrix\20const&\29 +5339:CustomXP::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +5340:CustomXP::makeProgramImpl\28\29\20const::Impl::emitBlendCodeForDstRead\28GrGLSLXPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20GrXferProcessor\20const&\29 +5341:Cr_z_deflateReset +5342:Cr_z_deflate +5343:Cr_z_crc32_z +5344:CoverageSetOpXP::onIsEqual\28GrXferProcessor\20const&\29\20const +5345:CircularRRectOp::~CircularRRectOp\28\29.1 +5346:CircularRRectOp::~CircularRRectOp\28\29 +5347:CircularRRectOp::CircularRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +5348:CircleOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5349:CircleOp::CircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5350:CircleGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5351:CheckDecBuffer +5352:CFF::path_procs_t::rlineto\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +5353:CFF::dict_interpreter_t\2c\20CFF::interp_env_t>::interpret\28CFF::cff1_private_dict_values_base_t&\29 +5354:CFF::cff2_cs_opset_t::process_blend\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\29 +5355:CFF::FDSelect3_4\2c\20OT::IntType>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5356:CFF::Charset::get_sid\28unsigned\20int\2c\20unsigned\20int\2c\20CFF::code_pair_t*\29\20const +5357:CFF::CFFIndex>::get_size\28\29\20const +5358:CFF::CFF2FDSelect::get_fd\28unsigned\20int\29\20const +5359:ButtCapDashedCircleOp::ButtCapDashedCircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +5360:BuildHuffmanTable +5361:AsWinding\28SkPath\20const&\2c\20SkPath*\29 +5362:AngleWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20bool*\29 +5363:AddIntersectTs\28SkOpContour*\2c\20SkOpContour*\2c\20SkOpCoincidence*\29 +5364:ActiveEdgeList::replace\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +5365:ActiveEdgeList::remove\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5366:ActiveEdgeList::insert\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5367:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5368:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5369:AAT::TrackData::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5370:AAT::TrackData::get_tracking\28void\20const*\2c\20float\29\20const +5371:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5372:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5373:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5374:AAT::RearrangementSubtable::driver_context_t::transition\28AAT::StateTableDriver*\2c\20AAT::Entry\20const&\29 +5375:AAT::NoncontextualSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +5376:AAT::Lookup>::sanitize\28hb_sanitize_context_t*\29\20const +5377:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +5378:AAT::InsertionSubtable::driver_context_t::transition\28AAT::StateTableDriver::EntryData>*\2c\20AAT::Entry::EntryData>\20const&\29 +5379:ycck_cmyk_convert +5380:ycc_rgb_convert +5381:ycc_rgb565_convert +5382:ycc_rgb565D_convert +5383:xyzd50_to_lab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5384:xyzd50_to_hcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5385:wuffs_gif__decoder__tell_me_more +5386:wuffs_gif__decoder__set_report_metadata +5387:wuffs_gif__decoder__num_decoded_frame_configs +5388:wuffs_base__pixel_swizzler__xxxxxxxx__index_binary_alpha__src_over +5389:wuffs_base__pixel_swizzler__xxxxxxxx__index__src +5390:wuffs_base__pixel_swizzler__xxxx__index_binary_alpha__src_over +5391:wuffs_base__pixel_swizzler__xxxx__index__src +5392:wuffs_base__pixel_swizzler__xxx__index_binary_alpha__src_over +5393:wuffs_base__pixel_swizzler__xxx__index__src +5394:wuffs_base__pixel_swizzler__transparent_black_src_over +5395:wuffs_base__pixel_swizzler__transparent_black_src +5396:wuffs_base__pixel_swizzler__copy_1_1 +5397:wuffs_base__pixel_swizzler__bgr_565__index_binary_alpha__src_over +5398:wuffs_base__pixel_swizzler__bgr_565__index__src +5399:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\2c\20int&&\29 +5400:void\20std::__2::vector>::__emplace_back_slow_path\20const&>\28unsigned\20char\20const&\2c\20sk_sp\20const&\29 +5401:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +5402:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +5403:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +5404:void\20emscripten::internal::raw_destructor\28SkVertices::Builder*\29 +5405:void\20emscripten::internal::raw_destructor\28SkPictureRecorder*\29 +5406:void\20emscripten::internal::raw_destructor\28SkPath*\29 +5407:void\20emscripten::internal::raw_destructor\28SkPaint*\29 +5408:void\20emscripten::internal::raw_destructor\28SkContourMeasureIter*\29 +5409:void\20emscripten::internal::raw_destructor\28SimpleImageInfo*\29 +5410:void\20emscripten::internal::MemberAccess::setWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleTextStyle*\29 +5411:void\20emscripten::internal::MemberAccess::setWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleStrutStyle*\29 +5412:void\20emscripten::internal::MemberAccess>::setWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo&\2c\20sk_sp*\29 +5413:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::TypefaceFontProvider*\29 +5414:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::ParagraphBuilderImpl*\29 +5415:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::Paragraph*\29 +5416:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::FontCollection*\29 +5417:void\20const*\20emscripten::internal::getActualType\28SkVertices*\29 +5418:void\20const*\20emscripten::internal::getActualType\28SkVertices::Builder*\29 +5419:void\20const*\20emscripten::internal::getActualType\28SkTypeface*\29 +5420:void\20const*\20emscripten::internal::getActualType\28SkTextBlob*\29 +5421:void\20const*\20emscripten::internal::getActualType\28SkSurface*\29 +5422:void\20const*\20emscripten::internal::getActualType\28SkShader*\29 +5423:void\20const*\20emscripten::internal::getActualType\28SkRuntimeEffect*\29 +5424:void\20const*\20emscripten::internal::getActualType\28SkPictureRecorder*\29 +5425:void\20const*\20emscripten::internal::getActualType\28SkPicture*\29 +5426:void\20const*\20emscripten::internal::getActualType\28SkPathEffect*\29 +5427:void\20const*\20emscripten::internal::getActualType\28SkPath*\29 +5428:void\20const*\20emscripten::internal::getActualType\28SkPaint*\29 +5429:void\20const*\20emscripten::internal::getActualType\28SkMaskFilter*\29 +5430:void\20const*\20emscripten::internal::getActualType\28SkImageFilter*\29 +5431:void\20const*\20emscripten::internal::getActualType\28SkImage*\29 +5432:void\20const*\20emscripten::internal::getActualType\28SkFontMgr*\29 +5433:void\20const*\20emscripten::internal::getActualType\28SkFont*\29 +5434:void\20const*\20emscripten::internal::getActualType\28SkContourMeasureIter*\29 +5435:void\20const*\20emscripten::internal::getActualType\28SkContourMeasure*\29 +5436:void\20const*\20emscripten::internal::getActualType\28SkColorSpace*\29 +5437:void\20const*\20emscripten::internal::getActualType\28SkColorFilter*\29 +5438:void\20const*\20emscripten::internal::getActualType\28SkCanvas*\29 +5439:void\20const*\20emscripten::internal::getActualType\28SkBlender*\29 +5440:void\20const*\20emscripten::internal::getActualType\28SkAnimatedImage*\29 +5441:void\20const*\20emscripten::internal::getActualType\28GrDirectContext*\29 +5442:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5443:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5444:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5445:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5446:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5447:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5448:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5449:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5450:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5451:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5452:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5453:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5454:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5455:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5456:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5457:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5458:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5459:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5460:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5461:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5462:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5463:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5464:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5465:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5466:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5467:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5468:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5469:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5470:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5471:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5472:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5473:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5474:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5475:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5476:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5477:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5478:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5479:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5480:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5481:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5482:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5483:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5484:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5485:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5486:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5487:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5488:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5489:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5490:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5491:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5492:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5493:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5494:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5495:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5496:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5497:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5498:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5499:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5500:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5501:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5502:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5503:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5504:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5505:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5506:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5507:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5508:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5509:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5510:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5511:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5512:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5513:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5514:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5515:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5516:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5517:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5518:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5519:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5520:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5521:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5522:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5523:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5524:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5525:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5526:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5527:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5528:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5529:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5530:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5531:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5532:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5533:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5534:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5535:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5536:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5537:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5538:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5539:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5540:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&fast_swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5541:void\20SkSwizzler::SkipLeadingGrayAlphaZerosThen<&fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5542:void\20SkSwizzler::SkipLeading8888ZerosThen<&swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5543:void\20SkSwizzler::SkipLeading8888ZerosThen<&swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5544:void\20SkSwizzler::SkipLeading8888ZerosThen<&swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5545:void\20SkSwizzler::SkipLeading8888ZerosThen<&sample4\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5546:void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5547:void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5548:void\20SkSwizzler::SkipLeading8888ZerosThen<&fast_swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5549:void\20SkSwizzler::SkipLeading8888ZerosThen<©\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29>\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5550:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +5551:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +5552:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29.1 +5553:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29 +5554:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29.1 +5555:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29 +5556:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +5557:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +5558:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +5559:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +5560:virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +5561:virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +5562:virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +5563:virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +5564:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29.1 +5565:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29 +5566:virtual\20thunk\20to\20GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +5567:virtual\20thunk\20to\20GrTextureProxy::instantiate\28GrResourceProvider*\29 +5568:virtual\20thunk\20to\20GrTextureProxy::getUniqueKey\28\29\20const +5569:virtual\20thunk\20to\20GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +5570:virtual\20thunk\20to\20GrTextureProxy::callbackDesc\28\29\20const +5571:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29\20const +5572:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29 +5573:virtual\20thunk\20to\20GrTexture::onGpuMemorySize\28\29\20const +5574:virtual\20thunk\20to\20GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +5575:virtual\20thunk\20to\20GrTexture::asTexture\28\29\20const +5576:virtual\20thunk\20to\20GrTexture::asTexture\28\29 +5577:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +5578:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +5579:virtual\20thunk\20to\20GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +5580:virtual\20thunk\20to\20GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +5581:virtual\20thunk\20to\20GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +5582:virtual\20thunk\20to\20GrRenderTargetProxy::callbackDesc\28\29\20const +5583:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29\20const +5584:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29 +5585:virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +5586:virtual\20thunk\20to\20GrRenderTarget::onAbandon\28\29 +5587:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29\20const +5588:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29 +5589:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +5590:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +5591:virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +5592:virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +5593:virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +5594:virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +5595:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29.1 +5596:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29 +5597:virtual\20thunk\20to\20GrGLTexture::onRelease\28\29 +5598:virtual\20thunk\20to\20GrGLTexture::onAbandon\28\29 +5599:virtual\20thunk\20to\20GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +5600:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +5601:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +5602:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::onFinalize\28\29 +5603:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +5604:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29 +5605:virtual\20thunk\20to\20GrGLRenderTarget::onRelease\28\29 +5606:virtual\20thunk\20to\20GrGLRenderTarget::onGpuMemorySize\28\29\20const +5607:virtual\20thunk\20to\20GrGLRenderTarget::onAbandon\28\29 +5608:virtual\20thunk\20to\20GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +5609:virtual\20thunk\20to\20GrGLRenderTarget::backendFormat\28\29\20const +5610:tt_vadvance_adjust +5611:tt_slot_init +5612:tt_size_select +5613:tt_size_reset_iterator +5614:tt_size_request +5615:tt_size_init +5616:tt_size_done +5617:tt_sbit_decoder_load_png +5618:tt_sbit_decoder_load_compound +5619:tt_sbit_decoder_load_byte_aligned +5620:tt_sbit_decoder_load_bit_aligned +5621:tt_property_set +5622:tt_property_get +5623:tt_name_ascii_from_utf16 +5624:tt_name_ascii_from_other +5625:tt_hadvance_adjust +5626:tt_glyph_load +5627:tt_get_var_blend +5628:tt_get_interface +5629:tt_get_glyph_name +5630:tt_get_cmap_info +5631:tt_get_advances +5632:tt_face_set_sbit_strike +5633:tt_face_load_strike_metrics +5634:tt_face_load_sbit_image +5635:tt_face_load_sbit +5636:tt_face_load_post +5637:tt_face_load_pclt +5638:tt_face_load_os2 +5639:tt_face_load_name +5640:tt_face_load_maxp +5641:tt_face_load_kern +5642:tt_face_load_hmtx +5643:tt_face_load_hhea +5644:tt_face_load_head +5645:tt_face_load_gasp +5646:tt_face_load_font_dir +5647:tt_face_load_cpal +5648:tt_face_load_colr +5649:tt_face_load_cmap +5650:tt_face_load_bhed +5651:tt_face_load_any +5652:tt_face_init +5653:tt_face_goto_table +5654:tt_face_get_paint_layers +5655:tt_face_get_paint +5656:tt_face_get_kerning +5657:tt_face_get_colr_layer +5658:tt_face_get_colr_glyph_paint +5659:tt_face_get_colorline_stops +5660:tt_face_get_color_glyph_clipbox +5661:tt_face_free_sbit +5662:tt_face_free_ps_names +5663:tt_face_free_name +5664:tt_face_free_cpal +5665:tt_face_free_colr +5666:tt_face_done +5667:tt_face_colr_blend_layer +5668:tt_driver_init +5669:tt_cvt_ready_iterator +5670:tt_cmap_unicode_init +5671:tt_cmap_unicode_char_next +5672:tt_cmap_unicode_char_index +5673:tt_cmap_init +5674:tt_cmap8_validate +5675:tt_cmap8_get_info +5676:tt_cmap8_char_next +5677:tt_cmap8_char_index +5678:tt_cmap6_validate +5679:tt_cmap6_get_info +5680:tt_cmap6_char_next +5681:tt_cmap6_char_index +5682:tt_cmap4_validate +5683:tt_cmap4_init +5684:tt_cmap4_get_info +5685:tt_cmap4_char_next +5686:tt_cmap4_char_index +5687:tt_cmap2_validate +5688:tt_cmap2_get_info +5689:tt_cmap2_char_next +5690:tt_cmap2_char_index +5691:tt_cmap14_variants +5692:tt_cmap14_variant_chars +5693:tt_cmap14_validate +5694:tt_cmap14_init +5695:tt_cmap14_get_info +5696:tt_cmap14_done +5697:tt_cmap14_char_variants +5698:tt_cmap14_char_var_isdefault +5699:tt_cmap14_char_var_index +5700:tt_cmap14_char_next +5701:tt_cmap13_validate +5702:tt_cmap13_get_info +5703:tt_cmap13_char_next +5704:tt_cmap13_char_index +5705:tt_cmap12_validate +5706:tt_cmap12_get_info +5707:tt_cmap12_char_next +5708:tt_cmap12_char_index +5709:tt_cmap10_validate +5710:tt_cmap10_get_info +5711:tt_cmap10_char_next +5712:tt_cmap10_char_index +5713:tt_cmap0_validate +5714:tt_cmap0_get_info +5715:tt_cmap0_char_next +5716:tt_cmap0_char_index +5717:transform_scanline_rgbA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5718:transform_scanline_memcpy\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5719:transform_scanline_bgra_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5720:transform_scanline_bgra_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5721:transform_scanline_bgr_101010x_xr\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5722:transform_scanline_bgr_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5723:transform_scanline_bgrA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5724:transform_scanline_RGBX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5725:transform_scanline_F32_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5726:transform_scanline_F32\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5727:transform_scanline_F16_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5728:transform_scanline_F16\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5729:transform_scanline_BGRX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5730:transform_scanline_BGRA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5731:transform_scanline_A8_to_GrayAlpha\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5732:transform_scanline_565\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5733:transform_scanline_444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5734:transform_scanline_4444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5735:transform_scanline_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5736:transform_scanline_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5737:transform_scanline_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5738:t2_hints_stems +5739:t2_hints_open +5740:t1_make_subfont +5741:t1_hints_stem +5742:t1_hints_open +5743:t1_decrypt +5744:t1_decoder_parse_metrics +5745:t1_decoder_init +5746:t1_decoder_done +5747:t1_cmap_unicode_init +5748:t1_cmap_unicode_char_next +5749:t1_cmap_unicode_char_index +5750:t1_cmap_std_done +5751:t1_cmap_std_char_next +5752:t1_cmap_std_char_index +5753:t1_cmap_standard_init +5754:t1_cmap_expert_init +5755:t1_cmap_custom_init +5756:t1_cmap_custom_done +5757:t1_cmap_custom_char_next +5758:t1_cmap_custom_char_index +5759:t1_builder_start_point +5760:t1_builder_init +5761:t1_builder_add_point1 +5762:t1_builder_add_point +5763:t1_builder_add_contour +5764:swizzle_small_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5765:swizzle_small_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5766:swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5767:swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5768:swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5769:swizzle_rgba16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5770:swizzle_rgba16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5771:swizzle_rgba16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5772:swizzle_rgba16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5773:swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5774:swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5775:swizzle_rgb_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5776:swizzle_rgb16_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5777:swizzle_rgb16_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5778:swizzle_rgb16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5779:swizzle_mask32_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5780:swizzle_mask32_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5781:swizzle_mask32_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5782:swizzle_mask32_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5783:swizzle_mask32_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5784:swizzle_mask32_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5785:swizzle_mask32_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5786:swizzle_mask24_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5787:swizzle_mask24_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5788:swizzle_mask24_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5789:swizzle_mask24_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5790:swizzle_mask24_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5791:swizzle_mask24_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5792:swizzle_mask24_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5793:swizzle_mask16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5794:swizzle_mask16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5795:swizzle_mask16_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5796:swizzle_mask16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5797:swizzle_mask16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5798:swizzle_mask16_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5799:swizzle_mask16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5800:swizzle_index_to_n32_skipZ\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5801:swizzle_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5802:swizzle_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5803:swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5804:swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5805:swizzle_grayalpha_to_a8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5806:swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5807:swizzle_gray_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5808:swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5809:swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5810:swizzle_cmyk_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5811:swizzle_bit_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5812:swizzle_bit_to_grayscale\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5813:swizzle_bit_to_f16\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5814:swizzle_bit_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5815:swizzle_bgr_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5816:string_read +5817:std::exception::what\28\29\20const +5818:std::bad_variant_access::what\28\29\20const +5819:std::bad_optional_access::what\28\29\20const +5820:std::bad_array_new_length::what\28\29\20const +5821:std::bad_alloc::what\28\29\20const +5822:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +5823:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +5824:std::__2::time_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20tm\20const*\2c\20char\2c\20char\29\20const +5825:std::__2::time_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20tm\20const*\2c\20char\2c\20char\29\20const +5826:std::__2::time_get>>::do_get_year\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5827:std::__2::time_get>>::do_get_weekday\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5828:std::__2::time_get>>::do_get_time\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5829:std::__2::time_get>>::do_get_monthname\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5830:std::__2::time_get>>::do_get_date\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5831:std::__2::time_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\2c\20char\29\20const +5832:std::__2::time_get>>::do_get_year\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5833:std::__2::time_get>>::do_get_weekday\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5834:std::__2::time_get>>::do_get_time\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5835:std::__2::time_get>>::do_get_monthname\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5836:std::__2::time_get>>::do_get_date\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +5837:std::__2::time_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\2c\20char\29\20const +5838:std::__2::numpunct::~numpunct\28\29.1 +5839:std::__2::numpunct::do_truename\28\29\20const +5840:std::__2::numpunct::do_grouping\28\29\20const +5841:std::__2::numpunct::do_falsename\28\29\20const +5842:std::__2::numpunct::~numpunct\28\29.1 +5843:std::__2::numpunct::do_truename\28\29\20const +5844:std::__2::numpunct::do_thousands_sep\28\29\20const +5845:std::__2::numpunct::do_grouping\28\29\20const +5846:std::__2::numpunct::do_falsename\28\29\20const +5847:std::__2::numpunct::do_decimal_point\28\29\20const +5848:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20void\20const*\29\20const +5849:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\29\20const +5850:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\20long\29\20const +5851:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +5852:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +5853:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +5854:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20double\29\20const +5855:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20bool\29\20const +5856:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20void\20const*\29\20const +5857:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\29\20const +5858:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\20long\29\20const +5859:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +5860:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +5861:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +5862:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20double\29\20const +5863:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20bool\29\20const +5864:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20void*&\29\20const +5865:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20short&\29\20const +5866:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20long\20long&\29\20const +5867:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20long&\29\20const +5868:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +5869:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long&\29\20const +5870:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20float&\29\20const +5871:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20double&\29\20const +5872:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20bool&\29\20const +5873:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20void*&\29\20const +5874:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20short&\29\20const +5875:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20long\20long&\29\20const +5876:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20long&\29\20const +5877:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +5878:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long&\29\20const +5879:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20float&\29\20const +5880:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20double&\29\20const +5881:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20bool&\29\20const +5882:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +5883:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +5884:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +5885:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +5886:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\29\20const +5887:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +5888:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\29\20const +5889:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +5890:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +5891:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +5892:std::__2::locale::id::__init\28\29 +5893:std::__2::locale::__imp::~__imp\28\29.1 +5894:std::__2::ios_base::~ios_base\28\29.1 +5895:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +5896:std::__2::ctype::do_toupper\28wchar_t\29\20const +5897:std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +5898:std::__2::ctype::do_tolower\28wchar_t\29\20const +5899:std::__2::ctype::do_tolower\28wchar_t*\2c\20wchar_t\20const*\29\20const +5900:std::__2::ctype::do_scan_not\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5901:std::__2::ctype::do_scan_is\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5902:std::__2::ctype::do_narrow\28wchar_t\2c\20char\29\20const +5903:std::__2::ctype::do_narrow\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20char\2c\20char*\29\20const +5904:std::__2::ctype::do_is\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20unsigned\20long*\29\20const +5905:std::__2::ctype::do_is\28unsigned\20long\2c\20wchar_t\29\20const +5906:std::__2::ctype::~ctype\28\29.1 +5907:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +5908:std::__2::ctype::do_toupper\28char\29\20const +5909:std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +5910:std::__2::ctype::do_tolower\28char\29\20const +5911:std::__2::ctype::do_tolower\28char*\2c\20char\20const*\29\20const +5912:std::__2::ctype::do_narrow\28char\2c\20char\29\20const +5913:std::__2::ctype::do_narrow\28char\20const*\2c\20char\20const*\2c\20char\2c\20char*\29\20const +5914:std::__2::collate::do_transform\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5915:std::__2::collate::do_hash\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5916:std::__2::collate::do_compare\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5917:std::__2::collate::do_transform\28char\20const*\2c\20char\20const*\29\20const +5918:std::__2::collate::do_hash\28char\20const*\2c\20char\20const*\29\20const +5919:std::__2::collate::do_compare\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +5920:std::__2::codecvt::~codecvt\28\29.1 +5921:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +5922:std::__2::codecvt::do_out\28__mbstate_t&\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +5923:std::__2::codecvt::do_max_length\28\29\20const +5924:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +5925:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20wchar_t*\2c\20wchar_t*\2c\20wchar_t*&\29\20const +5926:std::__2::codecvt::do_encoding\28\29\20const +5927:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +5928:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29.1 +5929:std::__2::basic_stringbuf\2c\20std::__2::allocator>::underflow\28\29 +5930:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +5931:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +5932:std::__2::basic_stringbuf\2c\20std::__2::allocator>::pbackfail\28int\29 +5933:std::__2::basic_stringbuf\2c\20std::__2::allocator>::overflow\28int\29 +5934:std::__2::basic_streambuf>::~basic_streambuf\28\29.1 +5935:std::__2::basic_streambuf>::xsputn\28char\20const*\2c\20long\29 +5936:std::__2::basic_streambuf>::xsgetn\28char*\2c\20long\29 +5937:std::__2::basic_streambuf>::uflow\28\29 +5938:std::__2::basic_streambuf>::setbuf\28char*\2c\20long\29 +5939:std::__2::basic_streambuf>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +5940:std::__2::basic_streambuf>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +5941:std::__2::bad_function_call::what\28\29\20const +5942:std::__2::__time_get_c_storage::__x\28\29\20const +5943:std::__2::__time_get_c_storage::__weeks\28\29\20const +5944:std::__2::__time_get_c_storage::__r\28\29\20const +5945:std::__2::__time_get_c_storage::__months\28\29\20const +5946:std::__2::__time_get_c_storage::__c\28\29\20const +5947:std::__2::__time_get_c_storage::__am_pm\28\29\20const +5948:std::__2::__time_get_c_storage::__X\28\29\20const +5949:std::__2::__time_get_c_storage::__x\28\29\20const +5950:std::__2::__time_get_c_storage::__weeks\28\29\20const +5951:std::__2::__time_get_c_storage::__r\28\29\20const +5952:std::__2::__time_get_c_storage::__months\28\29\20const +5953:std::__2::__time_get_c_storage::__c\28\29\20const +5954:std::__2::__time_get_c_storage::__am_pm\28\29\20const +5955:std::__2::__time_get_c_storage::__X\28\29\20const +5956:std::__2::__shared_ptr_pointer<_IO_FILE*\2c\20void\20\28*\29\28_IO_FILE*\29\2c\20std::__2::allocator<_IO_FILE>>::__on_zero_shared\28\29 +5957:std::__2::__shared_ptr_pointer\2c\20std::__2::allocator>::__on_zero_shared\28\29 +5958:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +5959:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +5960:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +5961:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +5962:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +5963:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +5964:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +5965:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +5966:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +5967:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +5968:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +5969:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +5970:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +5971:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +5972:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +5973:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +5974:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +5975:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +5976:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +5977:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +5978:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +5979:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +5980:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +5981:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +5982:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +5983:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +5984:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +5985:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +5986:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +5987:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +5988:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +5989:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +5990:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +5991:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::operator\28\29\28skia::textlayout::Cluster\20const*&&\2c\20unsigned\20long&&\2c\20bool&&\29 +5992:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +5993:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +5994:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::operator\28\29\28skia::textlayout::Cluster\20const*&&\2c\20unsigned\20long&&\2c\20bool&&\29 +5995:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +5996:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +5997:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +5998:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +5999:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6000:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6001:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6002:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6003:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6004:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6005:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6006:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6007:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6008:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6009:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6010:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6011:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6012:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6013:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6014:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6015:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6016:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6017:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6018:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6019:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6020:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6021:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6022:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6023:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6024:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6025:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6026:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6027:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6028:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6029:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6030:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +6031:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +6032:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6033:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +6034:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +6035:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +6036:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20float&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\2c\20SkPoint&&\2c\20SkPoint&&\2c\20skia::textlayout::InternalLineMetrics&&\2c\20bool&&\29 +6037:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>*\29\20const +6038:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::__clone\28\29\20const +6039:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::operator\28\29\28skia::textlayout::Cluster*&&\29 +6040:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28std::__2::__function::__base*\29\20const +6041:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28\29\20const +6042:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6043:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28\29\20const +6044:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20SkSpan&&\2c\20float&\2c\20unsigned\20long&&\2c\20unsigned\20char&&\29 +6045:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28std::__2::__function::__base\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>*\29\20const +6046:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28\29\20const +6047:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::operator\28\29\28skia::textlayout::Block&&\2c\20skia_private::TArray&&\29 +6048:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6049:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::__clone\28\29\20const +6050:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::operator\28\29\28sk_sp&&\29 +6051:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6052:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::__clone\28\29\20const +6053:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::operator\28\29\28skia::textlayout::SkRange&&\29 +6054:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6055:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28\29\20const +6056:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::operator\28\29\28sktext::gpu::AtlasSubRun\20const*&&\2c\20SkPoint&&\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20sktext::gpu::RendererData&&\29 +6057:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28std::__2::__function::__base\2c\20sktext::gpu::RendererData\29>*\29\20const +6058:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28\29\20const +6059:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29.1 +6060:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29 +6061:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::operator\28\29\28void*&&\2c\20void\20const*&&\29 +6062:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy_deallocate\28\29 +6063:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy\28\29 +6064:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6065:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28\29\20const +6066:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6067:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6068:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6069:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6070:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6071:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6072:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6073:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6074:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6075:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6076:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6077:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6078:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6079:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6080:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6081:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::operator\28\29\28sktext::gpu::AtlasSubRun\20const*&&\2c\20SkPoint&&\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20sktext::gpu::RendererData&&\29 +6082:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28std::__2::__function::__base\2c\20sktext::gpu::RendererData\29>*\29\20const +6083:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28\29\20const +6084:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::operator\28\29\28sktext::gpu::GlyphVector*&&\2c\20int&&\2c\20int&&\2c\20skgpu::MaskFormat&&\2c\20int&&\29 +6085:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::__clone\28std::__2::__function::__base\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>*\29\20const +6086:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::__clone\28\29\20const +6087:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::operator\28\29\28GrSurfaceProxy\20const*&&\29 +6088:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6089:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::__clone\28\29\20const +6090:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6091:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6092:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6093:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6094:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6095:std::__2::__function::__func\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6096:std::__2::__function::__func\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6097:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +6098:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6099:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6100:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::operator\28\29\28\29 +6101:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6102:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::__clone\28\29\20const +6103:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6104:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6105:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6106:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6107:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6108:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6109:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6110:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6111:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6112:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6113:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6114:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6115:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6116:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6117:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6118:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6119:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6120:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6121:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6122:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29.1 +6123:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29 +6124:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +6125:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy_deallocate\28\29 +6126:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy\28\29 +6127:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6128:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6129:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6130:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6131:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6132:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::operator\28\29\28unsigned\20long&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\29 +6133:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +6134:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6135:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +6136:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6137:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::operator\28\29\28SkVertices\20const*&&\2c\20SkBlendMode&&\2c\20SkPaint\20const&\2c\20float&&\2c\20float&&\2c\20bool&&\29 +6138:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6139:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::__clone\28\29\20const +6140:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::operator\28\29\28SkIRect\20const&\29 +6141:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6142:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +6143:std::__2::__function::__func\2c\20SkCodec::Result\20\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int\29>::operator\28\29\28SkImageInfo\20const&\2c\20void*&&\2c\20unsigned\20long&&\2c\20SkCodec::Options\20const&\2c\20int&&\29 +6144:std::__2::__function::__func\2c\20SkCodec::Result\20\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int\29>::__clone\28std::__2::__function::__base*\29\20const +6145:std::__2::__function::__func\2c\20SkCodec::Result\20\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int\29>::__clone\28\29\20const +6146:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6147:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6148:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6149:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6150:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6151:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6152:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6153:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6154:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6155:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6156:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6157:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6158:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6159:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6160:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6161:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6162:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6163:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6164:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6165:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6166:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6167:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::operator\28\29\28GrTextureProxy*&&\2c\20SkIRect&&\2c\20GrColorType&&\2c\20void\20const*&&\2c\20unsigned\20long&&\29 +6168:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +6169:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::__clone\28\29\20const +6170:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::operator\28\29\28GrBackendTexture&&\29 +6171:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28std::__2::__function::__base*\29\20const +6172:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28\29\20const +6173:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6174:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6175:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6176:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6177:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6178:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6179:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6180:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6181:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6182:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6183:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6184:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6185:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6186:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6187:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6188:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6189:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6190:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6191:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6192:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6193:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6194:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6195:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6196:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6197:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6198:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6199:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +6200:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6201:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6202:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::operator\28\29\28int&&\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*&&\29 +6203:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6204:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +6205:start_pass_upsample +6206:start_pass_phuff_decoder +6207:start_pass_merged_upsample +6208:start_pass_main +6209:start_pass_huff_decoder +6210:start_pass_dpost +6211:start_pass_2_quant +6212:start_pass_1_quant +6213:start_pass +6214:start_output_pass +6215:start_input_pass.1 +6216:stackSave +6217:stackRestore +6218:srgb_to_hwb\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6219:srgb_to_hsl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6220:srcover_p\28unsigned\20char\2c\20unsigned\20char\29 +6221:sn_write +6222:sktext::gpu::post_purge_blob_message\28unsigned\20int\2c\20unsigned\20int\29 +6223:sktext::gpu::VertexFiller::isLCD\28\29\20const +6224:sktext::gpu::TextBlob::~TextBlob\28\29.1 +6225:sktext::gpu::TextBlob::~TextBlob\28\29 +6226:sktext::gpu::SubRun::~SubRun\28\29 +6227:sktext::gpu::SlugImpl::~SlugImpl\28\29.1 +6228:sktext::gpu::SlugImpl::~SlugImpl\28\29 +6229:sktext::gpu::SlugImpl::sourceBounds\28\29\20const +6230:sktext::gpu::SlugImpl::sourceBoundsWithOrigin\28\29\20const +6231:sktext::gpu::SlugImpl::doFlatten\28SkWriteBuffer&\29\20const +6232:sktext::gpu::SDFMaskFilterImpl::getTypeName\28\29\20const +6233:sktext::gpu::SDFMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +6234:sktext::gpu::SDFMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +6235:skip_variable +6236:skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +6237:skif::\28anonymous\20namespace\29::RasterBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6238:skif::\28anonymous\20namespace\29::RasterBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6239:skif::\28anonymous\20namespace\29::RasterBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6240:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +6241:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +6242:skif::\28anonymous\20namespace\29::GaneshBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6243:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6244:skif::\28anonymous\20namespace\29::GaneshBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6245:skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +6246:skia_png_zalloc +6247:skia_png_write_rows +6248:skia_png_write_info +6249:skia_png_write_end +6250:skia_png_user_version_check +6251:skia_png_set_text +6252:skia_png_set_sRGB +6253:skia_png_set_keep_unknown_chunks +6254:skia_png_set_iCCP +6255:skia_png_set_gray_to_rgb +6256:skia_png_set_filter +6257:skia_png_set_filler +6258:skia_png_read_update_info +6259:skia_png_read_info +6260:skia_png_read_image +6261:skia_png_read_end +6262:skia_png_push_fill_buffer +6263:skia_png_process_data +6264:skia_png_default_write_data +6265:skia_png_default_read_data +6266:skia_png_default_flush +6267:skia_png_create_read_struct +6268:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29.1 +6269:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29 +6270:skia::textlayout::TypefaceFontStyleSet::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +6271:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29.1 +6272:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29 +6273:skia::textlayout::TypefaceFontProvider::onMatchFamily\28char\20const*\29\20const +6274:skia::textlayout::TypefaceFontProvider::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +6275:skia::textlayout::TypefaceFontProvider::onGetFamilyName\28int\2c\20SkString*\29\20const +6276:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29.1 +6277:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29 +6278:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6279:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6280:skia::textlayout::SkRange*\20emscripten::internal::raw_constructor>\28\29 +6281:skia::textlayout::PositionWithAffinity*\20emscripten::internal::raw_constructor\28\29 +6282:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29.1 +6283:skia::textlayout::ParagraphImpl::visit\28std::__2::function\20const&\29 +6284:skia::textlayout::ParagraphImpl::updateTextAlign\28skia::textlayout::TextAlign\29 +6285:skia::textlayout::ParagraphImpl::updateForegroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6286:skia::textlayout::ParagraphImpl::updateFontSize\28unsigned\20long\2c\20unsigned\20long\2c\20float\29 +6287:skia::textlayout::ParagraphImpl::updateBackgroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6288:skia::textlayout::ParagraphImpl::unresolvedGlyphs\28\29 +6289:skia::textlayout::ParagraphImpl::unresolvedCodepoints\28\29 +6290:skia::textlayout::ParagraphImpl::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +6291:skia::textlayout::ParagraphImpl::paint\28SkCanvas*\2c\20float\2c\20float\29 +6292:skia::textlayout::ParagraphImpl::markDirty\28\29 +6293:skia::textlayout::ParagraphImpl::lineNumber\28\29 +6294:skia::textlayout::ParagraphImpl::layout\28float\29 +6295:skia::textlayout::ParagraphImpl::getWordBoundary\28unsigned\20int\29 +6296:skia::textlayout::ParagraphImpl::getRectsForRange\28unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +6297:skia::textlayout::ParagraphImpl::getRectsForPlaceholders\28\29 +6298:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29::operator\28\29\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\20const::'lambda'\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +6299:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29 +6300:skia::textlayout::ParagraphImpl::getLineNumberAt\28unsigned\20long\29\20const +6301:skia::textlayout::ParagraphImpl::getLineNumberAtUTF16Offset\28unsigned\20long\29 +6302:skia::textlayout::ParagraphImpl::getLineMetrics\28std::__2::vector>&\29 +6303:skia::textlayout::ParagraphImpl::getLineMetricsAt\28int\2c\20skia::textlayout::LineMetrics*\29\20const +6304:skia::textlayout::ParagraphImpl::getGlyphPositionAtCoordinate\28float\2c\20float\29 +6305:skia::textlayout::ParagraphImpl::getFonts\28\29\20const +6306:skia::textlayout::ParagraphImpl::getFontAt\28unsigned\20long\29\20const +6307:skia::textlayout::ParagraphImpl::getFontAtUTF16Offset\28unsigned\20long\29 +6308:skia::textlayout::ParagraphImpl::getClosestUTF16GlyphInfoAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +6309:skia::textlayout::ParagraphImpl::getClosestGlyphClusterAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +6310:skia::textlayout::ParagraphImpl::getActualTextRange\28int\2c\20bool\29\20const +6311:skia::textlayout::ParagraphImpl::extendedVisit\28std::__2::function\20const&\29 +6312:skia::textlayout::ParagraphImpl::containsEmoji\28SkTextBlob*\29 +6313:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29::$_0::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +6314:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29 +6315:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29.1 +6316:skia::textlayout::ParagraphBuilderImpl::setWordsUtf8\28std::__2::vector>\29 +6317:skia::textlayout::ParagraphBuilderImpl::setWordsUtf16\28std::__2::vector>\29 +6318:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf8\28std::__2::vector>\29 +6319:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf16\28std::__2::vector>\29 +6320:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf8\28std::__2::vector>\29 +6321:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf16\28std::__2::vector>\29 +6322:skia::textlayout::ParagraphBuilderImpl::pushStyle\28skia::textlayout::TextStyle\20const&\29 +6323:skia::textlayout::ParagraphBuilderImpl::pop\28\29 +6324:skia::textlayout::ParagraphBuilderImpl::peekStyle\28\29 +6325:skia::textlayout::ParagraphBuilderImpl::getText\28\29 +6326:skia::textlayout::ParagraphBuilderImpl::getParagraphStyle\28\29\20const +6327:skia::textlayout::ParagraphBuilderImpl::addText\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +6328:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\2c\20unsigned\20long\29 +6329:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\29 +6330:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\29 +6331:skia::textlayout::ParagraphBuilderImpl::SetUnicode\28std::__2::unique_ptr>\29 +6332:skia::textlayout::ParagraphBuilderImpl::Reset\28\29 +6333:skia::textlayout::ParagraphBuilderImpl::RequiresClientICU\28\29 +6334:skia::textlayout::ParagraphBuilderImpl::Build\28\29 +6335:skia::textlayout::Paragraph::getMinIntrinsicWidth\28\29 +6336:skia::textlayout::Paragraph::getMaxWidth\28\29 +6337:skia::textlayout::Paragraph::getMaxIntrinsicWidth\28\29 +6338:skia::textlayout::Paragraph::getLongestLine\28\29 +6339:skia::textlayout::Paragraph::getIdeographicBaseline\28\29 +6340:skia::textlayout::Paragraph::getHeight\28\29 +6341:skia::textlayout::Paragraph::getAlphabeticBaseline\28\29 +6342:skia::textlayout::Paragraph::didExceedMaxLines\28\29 +6343:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29.1 +6344:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29 +6345:skia::textlayout::OneLineShaper::~OneLineShaper\28\29.1 +6346:skia::textlayout::OneLineShaper::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6347:skia::textlayout::OneLineShaper::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6348:skia::textlayout::LangIterator::~LangIterator\28\29.1 +6349:skia::textlayout::LangIterator::~LangIterator\28\29 +6350:skia::textlayout::LangIterator::endOfCurrentRun\28\29\20const +6351:skia::textlayout::LangIterator::currentLanguage\28\29\20const +6352:skia::textlayout::LangIterator::consume\28\29 +6353:skia::textlayout::LangIterator::atEnd\28\29\20const +6354:skia::textlayout::FontCollection::~FontCollection\28\29.1 +6355:skia::textlayout::CanvasParagraphPainter::translate\28float\2c\20float\29 +6356:skia::textlayout::CanvasParagraphPainter::save\28\29 +6357:skia::textlayout::CanvasParagraphPainter::restore\28\29 +6358:skia::textlayout::CanvasParagraphPainter::drawTextShadow\28sk_sp\20const&\2c\20float\2c\20float\2c\20unsigned\20int\2c\20float\29 +6359:skia::textlayout::CanvasParagraphPainter::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20std::__2::variant\20const&\29 +6360:skia::textlayout::CanvasParagraphPainter::drawRect\28SkRect\20const&\2c\20std::__2::variant\20const&\29 +6361:skia::textlayout::CanvasParagraphPainter::drawPath\28SkPath\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6362:skia::textlayout::CanvasParagraphPainter::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6363:skia::textlayout::CanvasParagraphPainter::drawFilledRect\28SkRect\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6364:skia::textlayout::CanvasParagraphPainter::clipRect\28SkRect\20const&\29 +6365:skgpu::tess::FixedCountWedges::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6366:skgpu::tess::FixedCountWedges::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6367:skgpu::tess::FixedCountStrokes::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6368:skgpu::tess::FixedCountCurves::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6369:skgpu::tess::FixedCountCurves::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6370:skgpu::ganesh::texture_proxy_view_from_planes\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20skgpu::Budgeted\29::$_0::__invoke\28void*\2c\20void*\29 +6371:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29.1 +6372:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::visitProxies\28std::__2::function\20const&\29\20const +6373:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6374:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6375:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6376:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::name\28\29\20const +6377:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::fixedFunctionFlags\28\29\20const +6378:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6379:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::name\28\29\20const +6380:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6381:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6382:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6383:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6384:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29.1 +6385:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29 +6386:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::name\28\29\20const +6387:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6388:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6389:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29.1 +6390:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29 +6391:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +6392:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6393:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6394:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6395:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6396:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::name\28\29\20const +6397:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::fixedFunctionFlags\28\29\20const +6398:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6399:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29.1 +6400:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29 +6401:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +6402:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6403:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6404:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6405:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6406:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::name\28\29\20const +6407:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6408:skgpu::ganesh::TriangulatingPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6409:skgpu::ganesh::TriangulatingPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6410:skgpu::ganesh::TriangulatingPathRenderer::name\28\29\20const +6411:skgpu::ganesh::TessellationPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +6412:skgpu::ganesh::TessellationPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +6413:skgpu::ganesh::TessellationPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6414:skgpu::ganesh::TessellationPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6415:skgpu::ganesh::TessellationPathRenderer::name\28\29\20const +6416:skgpu::ganesh::SurfaceDrawContext::willReplaceOpsTask\28skgpu::ganesh::OpsTask*\2c\20skgpu::ganesh::OpsTask*\29 +6417:skgpu::ganesh::SurfaceDrawContext::canDiscardPreviousOpsOnFullClear\28\29\20const +6418:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29.1 +6419:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::$_0::__invoke\28void*\29 +6420:skgpu::ganesh::SurfaceContext::asyncReadPixels\28GrDirectContext*\2c\20SkIRect\20const&\2c\20SkColorType\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::$_0::__invoke\28void*\29 +6421:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29.1 +6422:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29 +6423:skgpu::ganesh::StrokeTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +6424:skgpu::ganesh::StrokeTessellateOp::usesStencil\28\29\20const +6425:skgpu::ganesh::StrokeTessellateOp::onPrepare\28GrOpFlushState*\29 +6426:skgpu::ganesh::StrokeTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6427:skgpu::ganesh::StrokeTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6428:skgpu::ganesh::StrokeTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6429:skgpu::ganesh::StrokeTessellateOp::name\28\29\20const +6430:skgpu::ganesh::StrokeTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6431:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29.1 +6432:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29 +6433:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +6434:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::programInfo\28\29 +6435:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6436:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6437:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6438:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::name\28\29\20const +6439:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6440:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29.1 +6441:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29 +6442:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +6443:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::programInfo\28\29 +6444:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6445:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6446:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6447:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6448:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::name\28\29\20const +6449:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6450:skgpu::ganesh::StencilClip::~StencilClip\28\29.1 +6451:skgpu::ganesh::StencilClip::~StencilClip\28\29 +6452:skgpu::ganesh::StencilClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +6453:skgpu::ganesh::StencilClip::getConservativeBounds\28\29\20const +6454:skgpu::ganesh::StencilClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +6455:skgpu::ganesh::SoftwarePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6456:skgpu::ganesh::SoftwarePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6457:skgpu::ganesh::SoftwarePathRenderer::name\28\29\20const +6458:skgpu::ganesh::SmallPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6459:skgpu::ganesh::SmallPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6460:skgpu::ganesh::SmallPathRenderer::name\28\29\20const +6461:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +6462:skgpu::ganesh::SmallPathAtlasMgr::preFlush\28GrOnFlushResourceProvider*\29 +6463:skgpu::ganesh::SmallPathAtlasMgr::postFlush\28skgpu::AtlasToken\29 +6464:skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +6465:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29.1 +6466:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29 +6467:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::visitProxies\28std::__2::function\20const&\29\20const +6468:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::programInfo\28\29 +6469:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +6470:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6471:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6472:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6473:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::name\28\29\20const +6474:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6475:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_quad_generic\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6476:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6477:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6478:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_cov_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6479:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_cov_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6480:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6481:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6482:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +6483:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29.1 +6484:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29 +6485:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::onTextureSampler\28int\29\20const +6486:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::name\28\29\20const +6487:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6488:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6489:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6490:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6491:skgpu::ganesh::PathWedgeTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +6492:skgpu::ganesh::PathTessellator::~PathTessellator\28\29 +6493:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29.1 +6494:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29 +6495:skgpu::ganesh::PathTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +6496:skgpu::ganesh::PathTessellateOp::usesStencil\28\29\20const +6497:skgpu::ganesh::PathTessellateOp::onPrepare\28GrOpFlushState*\29 +6498:skgpu::ganesh::PathTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6499:skgpu::ganesh::PathTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6500:skgpu::ganesh::PathTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6501:skgpu::ganesh::PathTessellateOp::name\28\29\20const +6502:skgpu::ganesh::PathTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6503:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29.1 +6504:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29 +6505:skgpu::ganesh::PathStencilCoverOp::visitProxies\28std::__2::function\20const&\29\20const +6506:skgpu::ganesh::PathStencilCoverOp::onPrepare\28GrOpFlushState*\29 +6507:skgpu::ganesh::PathStencilCoverOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6508:skgpu::ganesh::PathStencilCoverOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6509:skgpu::ganesh::PathStencilCoverOp::name\28\29\20const +6510:skgpu::ganesh::PathStencilCoverOp::fixedFunctionFlags\28\29\20const +6511:skgpu::ganesh::PathStencilCoverOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6512:skgpu::ganesh::PathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +6513:skgpu::ganesh::PathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +6514:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29.1 +6515:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29 +6516:skgpu::ganesh::PathInnerTriangulateOp::visitProxies\28std::__2::function\20const&\29\20const +6517:skgpu::ganesh::PathInnerTriangulateOp::onPrepare\28GrOpFlushState*\29 +6518:skgpu::ganesh::PathInnerTriangulateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6519:skgpu::ganesh::PathInnerTriangulateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6520:skgpu::ganesh::PathInnerTriangulateOp::name\28\29\20const +6521:skgpu::ganesh::PathInnerTriangulateOp::fixedFunctionFlags\28\29\20const +6522:skgpu::ganesh::PathInnerTriangulateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6523:skgpu::ganesh::PathCurveTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +6524:skgpu::ganesh::OpsTask::~OpsTask\28\29.1 +6525:skgpu::ganesh::OpsTask::onPrepare\28GrOpFlushState*\29 +6526:skgpu::ganesh::OpsTask::onPrePrepare\28GrRecordingContext*\29 +6527:skgpu::ganesh::OpsTask::onMakeSkippable\28\29 +6528:skgpu::ganesh::OpsTask::onIsUsed\28GrSurfaceProxy*\29\20const +6529:skgpu::ganesh::OpsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +6530:skgpu::ganesh::OpsTask::endFlush\28GrDrawingManager*\29 +6531:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29.1 +6532:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::visitProxies\28std::__2::function\20const&\29\20const +6533:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6534:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6535:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6536:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6537:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::name\28\29\20const +6538:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6539:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29.1 +6540:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29 +6541:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::onTextureSampler\28int\29\20const +6542:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::name\28\29\20const +6543:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6544:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6545:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6546:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6547:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29.1 +6548:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29 +6549:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +6550:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::programInfo\28\29 +6551:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +6552:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6553:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6554:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6555:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::name\28\29\20const +6556:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6557:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::clipToShape\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkClipOp\2c\20SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\29 +6558:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29.1 +6559:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29 +6560:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::name\28\29\20const +6561:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6562:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6563:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6564:skgpu::ganesh::DrawableOp::~DrawableOp\28\29.1 +6565:skgpu::ganesh::DrawableOp::~DrawableOp\28\29 +6566:skgpu::ganesh::DrawableOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6567:skgpu::ganesh::DrawableOp::name\28\29\20const +6568:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29.1 +6569:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29 +6570:skgpu::ganesh::DrawAtlasPathOp::visitProxies\28std::__2::function\20const&\29\20const +6571:skgpu::ganesh::DrawAtlasPathOp::onPrepare\28GrOpFlushState*\29 +6572:skgpu::ganesh::DrawAtlasPathOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6573:skgpu::ganesh::DrawAtlasPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6574:skgpu::ganesh::DrawAtlasPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6575:skgpu::ganesh::DrawAtlasPathOp::name\28\29\20const +6576:skgpu::ganesh::DrawAtlasPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6577:skgpu::ganesh::Device::~Device\28\29.1 +6578:skgpu::ganesh::Device::~Device\28\29 +6579:skgpu::ganesh::Device::strikeDeviceInfo\28\29\20const +6580:skgpu::ganesh::Device::snapSpecial\28SkIRect\20const&\2c\20bool\29 +6581:skgpu::ganesh::Device::snapSpecialScaled\28SkIRect\20const&\2c\20SkISize\20const&\29 +6582:skgpu::ganesh::Device::replaceClip\28SkIRect\20const&\29 +6583:skgpu::ganesh::Device::recordingContext\28\29\20const +6584:skgpu::ganesh::Device::pushClipStack\28\29 +6585:skgpu::ganesh::Device::popClipStack\28\29 +6586:skgpu::ganesh::Device::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +6587:skgpu::ganesh::Device::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +6588:skgpu::ganesh::Device::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +6589:skgpu::ganesh::Device::onClipShader\28sk_sp\29 +6590:skgpu::ganesh::Device::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +6591:skgpu::ganesh::Device::makeSpecial\28SkImage\20const*\29 +6592:skgpu::ganesh::Device::isClipWideOpen\28\29\20const +6593:skgpu::ganesh::Device::isClipRect\28\29\20const +6594:skgpu::ganesh::Device::isClipEmpty\28\29\20const +6595:skgpu::ganesh::Device::isClipAntiAliased\28\29\20const +6596:skgpu::ganesh::Device::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +6597:skgpu::ganesh::Device::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +6598:skgpu::ganesh::Device::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +6599:skgpu::ganesh::Device::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +6600:skgpu::ganesh::Device::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +6601:skgpu::ganesh::Device::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +6602:skgpu::ganesh::Device::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +6603:skgpu::ganesh::Device::drawPaint\28SkPaint\20const&\29 +6604:skgpu::ganesh::Device::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +6605:skgpu::ganesh::Device::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +6606:skgpu::ganesh::Device::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +6607:skgpu::ganesh::Device::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +6608:skgpu::ganesh::Device::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +6609:skgpu::ganesh::Device::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +6610:skgpu::ganesh::Device::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +6611:skgpu::ganesh::Device::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +6612:skgpu::ganesh::Device::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +6613:skgpu::ganesh::Device::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +6614:skgpu::ganesh::Device::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +6615:skgpu::ganesh::Device::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +6616:skgpu::ganesh::Device::devClipBounds\28\29\20const +6617:skgpu::ganesh::Device::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +6618:skgpu::ganesh::Device::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +6619:skgpu::ganesh::Device::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +6620:skgpu::ganesh::Device::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +6621:skgpu::ganesh::Device::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +6622:skgpu::ganesh::Device::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +6623:skgpu::ganesh::Device::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +6624:skgpu::ganesh::Device::android_utils_clipWithStencil\28\29 +6625:skgpu::ganesh::DefaultPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +6626:skgpu::ganesh::DefaultPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +6627:skgpu::ganesh::DefaultPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6628:skgpu::ganesh::DefaultPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6629:skgpu::ganesh::DefaultPathRenderer::name\28\29\20const +6630:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::name\28\29\20const +6631:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6632:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6633:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6634:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::name\28\29\20const +6635:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6636:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6637:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6638:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29.1 +6639:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29 +6640:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::visitProxies\28std::__2::function\20const&\29\20const +6641:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::programInfo\28\29 +6642:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +6643:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6644:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6645:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6646:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::name\28\29\20const +6647:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::fixedFunctionFlags\28\29\20const +6648:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6649:skgpu::ganesh::DashLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6650:skgpu::ganesh::DashLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6651:skgpu::ganesh::DashLinePathRenderer::name\28\29\20const +6652:skgpu::ganesh::ClipStack::~ClipStack\28\29.1 +6653:skgpu::ganesh::ClipStack::preApply\28SkRect\20const&\2c\20GrAA\29\20const +6654:skgpu::ganesh::ClipStack::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +6655:skgpu::ganesh::ClearOp::~ClearOp\28\29 +6656:skgpu::ganesh::ClearOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6657:skgpu::ganesh::ClearOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6658:skgpu::ganesh::ClearOp::name\28\29\20const +6659:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29.1 +6660:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29 +6661:skgpu::ganesh::AtlasTextOp::visitProxies\28std::__2::function\20const&\29\20const +6662:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6663:skgpu::ganesh::AtlasTextOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6664:skgpu::ganesh::AtlasTextOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6665:skgpu::ganesh::AtlasTextOp::name\28\29\20const +6666:skgpu::ganesh::AtlasTextOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6667:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29.1 +6668:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29 +6669:skgpu::ganesh::AtlasRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +6670:skgpu::ganesh::AtlasRenderTask::onExecute\28GrOpFlushState*\29 +6671:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +6672:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +6673:skgpu::ganesh::AtlasPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6674:skgpu::ganesh::AtlasPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6675:skgpu::ganesh::AtlasPathRenderer::name\28\29\20const +6676:skgpu::ganesh::AALinearizingConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6677:skgpu::ganesh::AALinearizingConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6678:skgpu::ganesh::AALinearizingConvexPathRenderer::name\28\29\20const +6679:skgpu::ganesh::AAHairLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6680:skgpu::ganesh::AAHairLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6681:skgpu::ganesh::AAHairLinePathRenderer::name\28\29\20const +6682:skgpu::ganesh::AAConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6683:skgpu::ganesh::AAConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6684:skgpu::ganesh::AAConvexPathRenderer::name\28\29\20const +6685:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29.1 +6686:skgpu::TAsyncReadResult::rowBytes\28int\29\20const +6687:skgpu::TAsyncReadResult::data\28int\29\20const +6688:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29.1 +6689:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29 +6690:skgpu::StringKeyBuilder::appendComment\28char\20const*\29 +6691:skgpu::StringKeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +6692:skgpu::ShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\2c\20bool\29 +6693:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29.1 +6694:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29 +6695:skgpu::RectanizerSkyline::reset\28\29 +6696:skgpu::RectanizerSkyline::percentFull\28\29\20const +6697:skgpu::RectanizerPow2::reset\28\29 +6698:skgpu::RectanizerPow2::percentFull\28\29\20const +6699:skgpu::RectanizerPow2::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +6700:skgpu::Plot::~Plot\28\29.1 +6701:skgpu::Plot::~Plot\28\29 +6702:skgpu::KeyBuilder::~KeyBuilder\28\29 +6703:skgpu::KeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +6704:skgpu::DefaultShaderErrorHandler\28\29::DefaultShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\29 +6705:sk_write_fn\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20long\29 +6706:sk_sp*\20emscripten::internal::MemberAccess>::getWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo\20const&\29 +6707:sk_read_user_chunk\28png_struct_def*\2c\20png_unknown_chunk_t*\29 +6708:sk_mmap_releaseproc\28void\20const*\2c\20void*\29 +6709:sk_ft_stream_io\28FT_StreamRec_*\2c\20unsigned\20long\2c\20unsigned\20char*\2c\20unsigned\20long\29 +6710:sk_ft_realloc\28FT_MemoryRec_*\2c\20long\2c\20long\2c\20void*\29 +6711:sk_ft_free\28FT_MemoryRec_*\2c\20void*\29 +6712:sk_ft_alloc\28FT_MemoryRec_*\2c\20long\29 +6713:sk_dataref_releaseproc\28void\20const*\2c\20void*\29 +6714:sfnt_table_info +6715:sfnt_stream_close +6716:sfnt_load_face +6717:sfnt_is_postscript +6718:sfnt_is_alphanumeric +6719:sfnt_init_face +6720:sfnt_get_ps_name +6721:sfnt_get_name_index +6722:sfnt_get_name_id +6723:sfnt_get_interface +6724:sfnt_get_glyph_name +6725:sfnt_get_charset_id +6726:sfnt_done_face +6727:setup_syllables_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6728:setup_syllables_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6729:setup_syllables_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6730:setup_syllables_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6731:setup_masks_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6732:setup_masks_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6733:setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6734:setup_masks_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6735:setup_masks_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6736:setup_masks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6737:sep_upsample +6738:self_destruct +6739:save_marker +6740:sample8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6741:sample6\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6742:sample4\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6743:sample2\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6744:sample1\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6745:rgb_rgb_convert +6746:rgb_rgb565_convert +6747:rgb_rgb565D_convert +6748:rgb_gray_convert +6749:reverse_hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +6750:reverse_hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +6751:reset_marker_reader +6752:reset_input_controller +6753:reset_error_mgr +6754:request_virt_sarray +6755:request_virt_barray +6756:reorder_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6757:reorder_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6758:reorder_marks_hebrew\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6759:reorder_marks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6760:reorder_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6761:release_data\28void*\2c\20void*\29 +6762:record_stch\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6763:record_rphf_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6764:record_pref_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6765:realize_virt_arrays +6766:read_restart_marker +6767:read_markers +6768:read_data_from_FT_Stream +6769:quantize_ord_dither +6770:quantize_fs_dither +6771:quantize3_ord_dither +6772:psnames_get_service +6773:pshinter_get_t2_funcs +6774:pshinter_get_t1_funcs +6775:pshinter_get_globals_funcs +6776:psh_globals_new +6777:psh_globals_destroy +6778:psaux_get_glyph_name +6779:ps_table_release +6780:ps_table_new +6781:ps_table_done +6782:ps_table_add +6783:ps_property_set +6784:ps_property_get +6785:ps_parser_to_token_array +6786:ps_parser_to_int +6787:ps_parser_to_fixed_array +6788:ps_parser_to_fixed +6789:ps_parser_to_coord_array +6790:ps_parser_to_bytes +6791:ps_parser_skip_spaces +6792:ps_parser_load_field_table +6793:ps_parser_init +6794:ps_hints_t2mask +6795:ps_hints_t2counter +6796:ps_hints_t1stem3 +6797:ps_hints_t1reset +6798:ps_hints_close +6799:ps_hints_apply +6800:ps_hinter_init +6801:ps_hinter_done +6802:ps_get_standard_strings +6803:ps_get_macintosh_name +6804:ps_decoder_init +6805:ps_builder_init +6806:progress_monitor\28jpeg_common_struct*\29 +6807:process_data_simple_main +6808:process_data_crank_post +6809:process_data_context_main +6810:prescan_quantize +6811:preprocess_text_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6812:preprocess_text_thai\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6813:preprocess_text_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6814:preprocess_text_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6815:prepare_for_output_pass +6816:premultiply_data +6817:premul_rgb\28SkRGBA4f<\28SkAlphaType\292>\29 +6818:premul_polar\28SkRGBA4f<\28SkAlphaType\292>\29 +6819:postprocess_glyphs_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6820:post_process_prepass +6821:post_process_2pass +6822:post_process_1pass +6823:portable::xy_to_unit_angle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6824:portable::xy_to_radius\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6825:portable::xy_to_2pt_conical_well_behaved\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6826:portable::xy_to_2pt_conical_strip\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6827:portable::xy_to_2pt_conical_smaller\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6828:portable::xy_to_2pt_conical_greater\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6829:portable::xy_to_2pt_conical_focal_on_circle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6830:portable::xor_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6831:portable::white_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6832:portable::unpremul_polar\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6833:portable::unpremul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6834:portable::trace_var\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6835:portable::trace_scope\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6836:portable::trace_line\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6837:portable::trace_exit\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6838:portable::trace_enter\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6839:portable::tan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6840:portable::swizzle_copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6841:portable::swizzle_copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6842:portable::swizzle_copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6843:portable::swizzle_copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6844:portable::swizzle_copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6845:portable::swizzle_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6846:portable::swizzle_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6847:portable::swizzle_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6848:portable::swizzle_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6849:portable::swizzle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6850:portable::swap_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6851:portable::swap_rb_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6852:portable::swap_rb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6853:portable::sub_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6854:portable::sub_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6855:portable::sub_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6856:portable::sub_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6857:portable::sub_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6858:portable::sub_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6859:portable::sub_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6860:portable::sub_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6861:portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6862:portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6863:portable::store_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6864:portable::store_src_a\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6865:portable::store_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6866:portable::store_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6867:portable::store_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6868:portable::store_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6869:portable::store_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6870:portable::store_r8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6871:portable::store_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6872:portable::store_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6873:portable::store_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6874:portable::store_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6875:portable::store_device_xy01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6876:portable::store_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6877:portable::store_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6878:portable::store_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6879:portable::store_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6880:portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6881:portable::store_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6882:portable::store_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6883:portable::store_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6884:portable::store_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6885:portable::store_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6886:portable::store_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6887:portable::start_pipeline\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkRasterPipelineStage*\2c\20SkSpan\2c\20unsigned\20char*\29 +6888:portable::stack_rewind\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6889:portable::stack_checkpoint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6890:portable::srcover_rgba_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6891:portable::srcover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6892:portable::srcout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6893:portable::srcin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6894:portable::srcatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6895:portable::sqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6896:portable::splat_4_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6897:portable::splat_3_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6898:portable::splat_2_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6899:portable::softlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6900:portable::smoothstep_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6901:portable::sin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6902:portable::shuffle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6903:portable::set_base_pointer\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6904:portable::seed_shader\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6905:portable::screen\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6906:portable::scale_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6907:portable::scale_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6908:portable::saturation\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6909:portable::rgb_to_hsl\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6910:portable::repeat_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6911:portable::repeat_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6912:portable::repeat_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6913:portable::refract_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6914:portable::reenable_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6915:portable::rect_memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +6916:portable::rect_memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\2c\20unsigned\20long\2c\20int\29 +6917:portable::rect_memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\2c\20unsigned\20long\2c\20int\29 +6918:portable::premul_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6919:portable::premul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6920:portable::pow_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6921:portable::plus_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6922:portable::parametric\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6923:portable::overlay\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6924:portable::negate_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6925:portable::multiply\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6926:portable::mul_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6927:portable::mul_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6928:portable::mul_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6929:portable::mul_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6930:portable::mul_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6931:portable::mul_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6932:portable::mul_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6933:portable::mul_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6934:portable::mul_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6935:portable::mul_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6936:portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6937:portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6938:portable::move_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6939:portable::move_dst_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6940:portable::modulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6941:portable::mod_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6942:portable::mod_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6943:portable::mod_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6944:portable::mod_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6945:portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6946:portable::mix_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6947:portable::mix_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6948:portable::mix_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6949:portable::mix_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6950:portable::mix_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6951:portable::mix_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6952:portable::mix_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6953:portable::mix_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6954:portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6955:portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6956:portable::mirror_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6957:portable::mirror_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6958:portable::mirror_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6959:portable::mipmap_linear_update\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6960:portable::mipmap_linear_init\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6961:portable::mipmap_linear_finish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6962:portable::min_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6963:portable::min_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6964:portable::min_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6965:portable::min_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6966:portable::min_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6967:portable::min_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6968:portable::min_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6969:portable::min_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6970:portable::min_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6971:portable::min_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6972:portable::min_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6973:portable::min_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6974:portable::min_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6975:portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6976:portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6977:portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6978:portable::merge_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6979:portable::merge_inv_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6980:portable::merge_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6981:portable::memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\29 +6982:portable::memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\29 +6983:portable::max_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6984:portable::max_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6985:portable::max_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6986:portable::max_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6987:portable::max_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6988:portable::max_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6989:portable::max_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6990:portable::max_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6991:portable::max_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6992:portable::max_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6993:portable::max_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6994:portable::max_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6995:portable::max_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6996:portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6997:portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6998:portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6999:portable::matrix_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7000:portable::matrix_scale_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7001:portable::matrix_perspective\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7002:portable::matrix_multiply_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7003:portable::matrix_multiply_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7004:portable::matrix_multiply_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7005:portable::matrix_4x5\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7006:portable::matrix_4x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7007:portable::matrix_3x4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7008:portable::matrix_3x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7009:portable::matrix_2x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7010:portable::mask_off_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7011:portable::mask_off_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7012:portable::mask_2pt_conical_nan\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7013:portable::mask_2pt_conical_degenerates\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7014:portable::luminosity\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7015:portable::log_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7016:portable::log2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7017:portable::load_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7018:portable::load_rgf16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7019:portable::load_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7020:portable::load_rg88_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7021:portable::load_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7022:portable::load_rg1616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7023:portable::load_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7024:portable::load_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7025:portable::load_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7026:portable::load_f32_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7027:portable::load_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7028:portable::load_f16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7029:portable::load_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7030:portable::load_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7031:portable::load_af16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7032:portable::load_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7033:portable::load_a8_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7034:portable::load_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7035:portable::load_a16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7036:portable::load_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7037:portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7038:portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7039:portable::load_565_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7040:portable::load_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7041:portable::load_4444_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7042:portable::load_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7043:portable::load_16161616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7044:portable::load_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7045:portable::load_10x6_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7046:portable::load_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7047:portable::load_1010102_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7048:portable::load_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7049:portable::load_1010102_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7050:portable::load_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7051:portable::lighten\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7052:portable::lerp_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7053:portable::lerp_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7054:portable::just_return\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7055:portable::jump\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7056:portable::invsqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7057:portable::invsqrt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7058:portable::invsqrt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7059:portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7060:portable::inverted_CMYK_to_RGB1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7061:portable::inverted_CMYK_to_BGR1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7062:portable::inverse_mat4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7063:portable::inverse_mat3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7064:portable::inverse_mat2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7065:portable::init_lane_masks\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7066:portable::hue\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7067:portable::hsl_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7068:portable::hardlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7069:portable::gray_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7070:portable::grayA_to_rgbA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7071:portable::grayA_to_RGBA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7072:portable::gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7073:portable::gauss_a_to_rgba\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7074:portable::gather_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7075:portable::gather_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7076:portable::gather_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7077:portable::gather_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7078:portable::gather_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7079:portable::gather_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7080:portable::gather_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7081:portable::gather_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7082:portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7083:portable::gather_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7084:portable::gather_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7085:portable::gather_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7086:portable::gather_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7087:portable::gather_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7088:portable::gather_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7089:portable::gamma_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7090:portable::force_opaque_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7091:portable::force_opaque\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7092:portable::floor_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7093:portable::floor_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7094:portable::floor_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7095:portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7096:portable::exp_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7097:portable::exp2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7098:portable::exclusion\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7099:portable::exchange_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7100:portable::evenly_spaced_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7101:portable::evenly_spaced_2_stop_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7102:portable::emboss\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7103:portable::dstover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7104:portable::dstout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7105:portable::dstin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7106:portable::dstatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7107:portable::dot_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7108:portable::dot_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7109:portable::dot_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7110:portable::div_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7111:portable::div_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7112:portable::div_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7113:portable::div_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7114:portable::div_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7115:portable::div_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7116:portable::div_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7117:portable::div_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7118:portable::div_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7119:portable::div_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7120:portable::div_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7121:portable::div_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7122:portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7123:portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7124:portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7125:portable::dither\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7126:portable::difference\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7127:portable::decal_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7128:portable::decal_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7129:portable::decal_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7130:portable::darken\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7131:portable::css_oklab_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7132:portable::css_oklab_gamut_map_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7133:portable::css_lab_to_xyz\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7134:portable::css_hwb_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7135:portable::css_hsl_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7136:portable::css_hcl_to_lab\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7137:portable::cos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7138:portable::copy_uniform\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7139:portable::copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7140:portable::copy_slot_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7141:portable::copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7142:portable::copy_immutable_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7143:portable::copy_constant\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7144:portable::copy_4_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7145:portable::copy_4_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7146:portable::copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7147:portable::copy_4_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7148:portable::copy_3_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7149:portable::copy_3_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7150:portable::copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7151:portable::copy_3_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7152:portable::copy_2_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7153:portable::copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7154:portable::continue_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7155:portable::colordodge\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7156:portable::colorburn\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7157:portable::color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7158:portable::cmpne_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7159:portable::cmpne_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7160:portable::cmpne_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7161:portable::cmpne_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7162:portable::cmpne_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7163:portable::cmpne_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7164:portable::cmpne_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7165:portable::cmpne_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7166:portable::cmpne_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7167:portable::cmpne_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7168:portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7169:portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7170:portable::cmplt_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7171:portable::cmplt_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7172:portable::cmplt_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7173:portable::cmplt_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7174:portable::cmplt_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7175:portable::cmplt_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7176:portable::cmplt_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7177:portable::cmplt_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7178:portable::cmplt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7179:portable::cmplt_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7180:portable::cmplt_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7181:portable::cmplt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7182:portable::cmplt_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7183:portable::cmplt_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7184:portable::cmplt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7185:portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7186:portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7187:portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7188:portable::cmple_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7189:portable::cmple_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7190:portable::cmple_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7191:portable::cmple_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7192:portable::cmple_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7193:portable::cmple_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7194:portable::cmple_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7195:portable::cmple_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7196:portable::cmple_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7197:portable::cmple_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7198:portable::cmple_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7199:portable::cmple_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7200:portable::cmple_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7201:portable::cmple_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7202:portable::cmple_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7203:portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7204:portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7205:portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7206:portable::cmpeq_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7207:portable::cmpeq_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7208:portable::cmpeq_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7209:portable::cmpeq_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7210:portable::cmpeq_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7211:portable::cmpeq_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7212:portable::cmpeq_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7213:portable::cmpeq_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7214:portable::cmpeq_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7215:portable::cmpeq_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7216:portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7217:portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7218:portable::clear\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7219:portable::clamp_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7220:portable::clamp_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7221:portable::clamp_gamut\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7222:portable::clamp_01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7223:portable::ceil_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7224:portable::ceil_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7225:portable::ceil_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7226:portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7227:portable::cast_to_uint_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7228:portable::cast_to_uint_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7229:portable::cast_to_uint_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7230:portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7231:portable::cast_to_int_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7232:portable::cast_to_int_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7233:portable::cast_to_int_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7234:portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7235:portable::cast_to_float_from_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7236:portable::cast_to_float_from_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7237:portable::cast_to_float_from_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7238:portable::cast_to_float_from_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7239:portable::cast_to_float_from_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7240:portable::cast_to_float_from_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7241:portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7242:portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7243:portable::case_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7244:portable::callback\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7245:portable::byte_tables\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7246:portable::bt709_luminance_or_luma_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7247:portable::bt709_luminance_or_luma_to_alpha\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7248:portable::branch_if_no_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7249:portable::branch_if_no_active_lanes_eq\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7250:portable::branch_if_any_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7251:portable::branch_if_all_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7252:portable::blit_row_s32a_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +7253:portable::black_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7254:portable::bitwise_xor_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7255:portable::bitwise_xor_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7256:portable::bitwise_xor_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7257:portable::bitwise_xor_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7258:portable::bitwise_xor_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7259:portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7260:portable::bitwise_or_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7261:portable::bitwise_or_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7262:portable::bitwise_or_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7263:portable::bitwise_or_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7264:portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7265:portable::bitwise_and_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7266:portable::bitwise_and_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7267:portable::bitwise_and_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7268:portable::bitwise_and_imm_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7269:portable::bitwise_and_imm_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7270:portable::bitwise_and_imm_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7271:portable::bitwise_and_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7272:portable::bitwise_and_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7273:portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7274:portable::bilinear_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7275:portable::bilinear_py\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7276:portable::bilinear_px\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7277:portable::bilinear_ny\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7278:portable::bilinear_nx\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7279:portable::bilerp_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7280:portable::bicubic_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7281:portable::bicubic_p3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7282:portable::bicubic_p3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7283:portable::bicubic_p1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7284:portable::bicubic_p1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7285:portable::bicubic_n3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7286:portable::bicubic_n3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7287:portable::bicubic_n1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7288:portable::bicubic_n1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7289:portable::bicubic_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7290:portable::atan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7291:portable::atan2_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7292:portable::asin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7293:portable::alter_2pt_conical_unswap\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7294:portable::alter_2pt_conical_compensate_focal\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7295:portable::alpha_to_red_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7296:portable::alpha_to_red\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7297:portable::alpha_to_gray_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7298:portable::alpha_to_gray\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7299:portable::add_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7300:portable::add_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7301:portable::add_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7302:portable::add_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7303:portable::add_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7304:portable::add_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7305:portable::add_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7306:portable::add_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7307:portable::add_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7308:portable::add_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7309:portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7310:portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7311:portable::acos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7312:portable::accumulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7313:portable::abs_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7314:portable::abs_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7315:portable::abs_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7316:portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7317:portable::RGB_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7318:portable::RGB_to_BGR1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7319:portable::RGBA_to_rgbA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7320:portable::RGBA_to_bgrA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7321:portable::RGBA_to_BGRA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7322:portable::PQish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7323:portable::HLGish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7324:portable::HLGinvish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7325:pop_arg_long_double +7326:png_read_filter_row_up +7327:png_read_filter_row_sub +7328:png_read_filter_row_paeth_multibyte_pixel +7329:png_read_filter_row_paeth_1byte_pixel +7330:png_read_filter_row_avg +7331:pass2_no_dither +7332:pass2_fs_dither +7333:override_features_khmer\28hb_ot_shape_planner_t*\29 +7334:override_features_indic\28hb_ot_shape_planner_t*\29 +7335:override_features_hangul\28hb_ot_shape_planner_t*\29 +7336:output_message\28jpeg_common_struct*\29 +7337:output_message +7338:null_convert +7339:noop_upsample +7340:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +7341:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +7342:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +7343:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +7344:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.3 +7345:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.2 +7346:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +7347:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +7348:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +7349:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +7350:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +7351:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +7352:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +7353:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +7354:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +7355:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +7356:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +7357:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +7358:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +7359:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +7360:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +7361:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +7362:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +7363:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +7364:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +7365:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +7366:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +7367:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +7368:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +7369:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +7370:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +7371:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +7372:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +7373:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +7374:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7375:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7376:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7377:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +7378:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29.1 +7379:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29 +7380:non-virtual\20thunk\20to\20GrOpFlushState::writeView\28\29\20const +7381:non-virtual\20thunk\20to\20GrOpFlushState::usesMSAASurface\28\29\20const +7382:non-virtual\20thunk\20to\20GrOpFlushState::threadSafeCache\28\29\20const +7383:non-virtual\20thunk\20to\20GrOpFlushState::strikeCache\28\29\20const +7384:non-virtual\20thunk\20to\20GrOpFlushState::smallPathAtlasManager\28\29\20const +7385:non-virtual\20thunk\20to\20GrOpFlushState::sampledProxyArray\28\29 +7386:non-virtual\20thunk\20to\20GrOpFlushState::rtProxy\28\29\20const +7387:non-virtual\20thunk\20to\20GrOpFlushState::resourceProvider\28\29\20const +7388:non-virtual\20thunk\20to\20GrOpFlushState::renderPassBarriers\28\29\20const +7389:non-virtual\20thunk\20to\20GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +7390:non-virtual\20thunk\20to\20GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +7391:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndirectDraws\28int\29 +7392:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndices\28int\29 +7393:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +7394:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +7395:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7396:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +7397:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7398:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7399:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7400:non-virtual\20thunk\20to\20GrOpFlushState::dstProxyView\28\29\20const +7401:non-virtual\20thunk\20to\20GrOpFlushState::detachAppliedClip\28\29 +7402:non-virtual\20thunk\20to\20GrOpFlushState::deferredUploadTarget\28\29 +7403:non-virtual\20thunk\20to\20GrOpFlushState::colorLoadOp\28\29\20const +7404:non-virtual\20thunk\20to\20GrOpFlushState::caps\28\29\20const +7405:non-virtual\20thunk\20to\20GrOpFlushState::atlasManager\28\29\20const +7406:non-virtual\20thunk\20to\20GrOpFlushState::appliedClip\28\29\20const +7407:non-virtual\20thunk\20to\20GrGpuBuffer::~GrGpuBuffer\28\29 +7408:non-virtual\20thunk\20to\20GrGpuBuffer::unref\28\29\20const +7409:non-virtual\20thunk\20to\20GrGpuBuffer::ref\28\29\20const +7410:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +7411:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +7412:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onSetLabel\28\29 +7413:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +7414:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +7415:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +7416:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7417:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::backendFormat\28\29\20const +7418:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +7419:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +7420:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +7421:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +7422:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::dstColor\28\29 +7423:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29.1 +7424:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29 +7425:new_color_map_2_quant +7426:new_color_map_1_quant +7427:merged_2v_upsample +7428:merged_1v_upsample +7429:lin_srgb_to_oklab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +7430:lin_srgb_to_okhcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +7431:legalstub$dynCall_vijiii +7432:legalstub$dynCall_viji +7433:legalstub$dynCall_vij +7434:legalstub$dynCall_viijii +7435:legalstub$dynCall_viij +7436:legalstub$dynCall_viiij +7437:legalstub$dynCall_viiiiij +7438:legalstub$dynCall_jiji +7439:legalstub$dynCall_jiiiiji +7440:legalstub$dynCall_jiiiiii +7441:legalstub$dynCall_jii +7442:legalstub$dynCall_ji +7443:legalstub$dynCall_iijj +7444:legalstub$dynCall_iij +7445:legalstub$dynCall_iiij +7446:legalstub$dynCall_iiiij +7447:legalstub$dynCall_iiiiijj +7448:legalstub$dynCall_iiiiij +7449:legalstub$dynCall_iiiiiijj +7450:legalfunc$glWaitSync +7451:legalfunc$glClientWaitSync +7452:lcd_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +7453:jpeg_start_decompress +7454:jpeg_skip_scanlines +7455:jpeg_save_markers +7456:jpeg_resync_to_restart +7457:jpeg_read_scanlines +7458:jpeg_read_raw_data +7459:jpeg_read_header +7460:jpeg_idct_islow +7461:jpeg_idct_ifast +7462:jpeg_idct_float +7463:jpeg_idct_9x9 +7464:jpeg_idct_7x7 +7465:jpeg_idct_6x6 +7466:jpeg_idct_5x5 +7467:jpeg_idct_4x4 +7468:jpeg_idct_3x3 +7469:jpeg_idct_2x2 +7470:jpeg_idct_1x1 +7471:jpeg_idct_16x16 +7472:jpeg_idct_15x15 +7473:jpeg_idct_14x14 +7474:jpeg_idct_13x13 +7475:jpeg_idct_12x12 +7476:jpeg_idct_11x11 +7477:jpeg_idct_10x10 +7478:jpeg_crop_scanline +7479:is_deleted_glyph\28hb_glyph_info_t\20const*\29 +7480:internal_memalign +7481:int_upsample +7482:initial_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7483:hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7484:hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7485:hb_unicode_script_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7486:hb_unicode_general_category_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7487:hb_ucd_script\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7488:hb_ucd_mirroring\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7489:hb_ucd_general_category\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7490:hb_ucd_decompose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20void*\29 +7491:hb_ucd_compose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7492:hb_ucd_combining_class\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7493:hb_syllabic_clear_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7494:hb_paint_sweep_gradient_nil\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7495:hb_paint_push_transform_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7496:hb_paint_push_clip_rectangle_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7497:hb_paint_image_nil\28hb_paint_funcs_t*\2c\20void*\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\2c\20hb_glyph_extents_t*\2c\20void*\29 +7498:hb_paint_extents_push_transform\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7499:hb_paint_extents_push_group\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +7500:hb_paint_extents_push_clip_rectangle\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7501:hb_paint_extents_push_clip_glyph\28hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_font_t*\2c\20void*\29 +7502:hb_paint_extents_pop_transform\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +7503:hb_paint_extents_pop_group\28hb_paint_funcs_t*\2c\20void*\2c\20hb_paint_composite_mode_t\2c\20void*\29 +7504:hb_paint_extents_pop_clip\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +7505:hb_paint_extents_paint_sweep_gradient\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7506:hb_paint_extents_paint_image\28hb_paint_funcs_t*\2c\20void*\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\2c\20hb_glyph_extents_t*\2c\20void*\29 +7507:hb_paint_extents_paint_color\28hb_paint_funcs_t*\2c\20void*\2c\20int\2c\20unsigned\20int\2c\20void*\29 +7508:hb_outline_recording_pen_quadratic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7509:hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7510:hb_outline_recording_pen_line_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7511:hb_outline_recording_pen_cubic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7512:hb_outline_recording_pen_close_path\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +7513:hb_ot_paint_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +7514:hb_ot_map_t::lookup_map_t::cmp\28void\20const*\2c\20void\20const*\29 +7515:hb_ot_map_t::feature_map_t::cmp\28void\20const*\2c\20void\20const*\29 +7516:hb_ot_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +7517:hb_ot_get_variation_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7518:hb_ot_get_nominal_glyphs\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +7519:hb_ot_get_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7520:hb_ot_get_glyph_v_origin\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7521:hb_ot_get_glyph_v_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +7522:hb_ot_get_glyph_name\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +7523:hb_ot_get_glyph_h_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +7524:hb_ot_get_glyph_from_name\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +7525:hb_ot_get_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +7526:hb_ot_get_font_v_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7527:hb_ot_get_font_h_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7528:hb_ot_draw_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +7529:hb_font_paint_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +7530:hb_font_get_variation_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7531:hb_font_get_nominal_glyphs_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +7532:hb_font_get_nominal_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7533:hb_font_get_nominal_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7534:hb_font_get_glyph_v_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7535:hb_font_get_glyph_v_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7536:hb_font_get_glyph_v_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +7537:hb_font_get_glyph_v_advances_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +7538:hb_font_get_glyph_v_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7539:hb_font_get_glyph_v_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7540:hb_font_get_glyph_name_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +7541:hb_font_get_glyph_name_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +7542:hb_font_get_glyph_h_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7543:hb_font_get_glyph_h_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7544:hb_font_get_glyph_h_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +7545:hb_font_get_glyph_h_advances_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +7546:hb_font_get_glyph_h_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7547:hb_font_get_glyph_h_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7548:hb_font_get_glyph_from_name_default\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +7549:hb_font_get_glyph_extents_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +7550:hb_font_get_glyph_extents_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +7551:hb_font_get_glyph_contour_point_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7552:hb_font_get_glyph_contour_point_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7553:hb_font_get_font_v_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7554:hb_font_get_font_h_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7555:hb_font_draw_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +7556:hb_draw_quadratic_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7557:hb_draw_quadratic_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7558:hb_draw_move_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7559:hb_draw_line_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7560:hb_draw_extents_quadratic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7561:hb_draw_extents_cubic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7562:hb_draw_cubic_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7563:hb_draw_close_path_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +7564:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +7565:hb_aat_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +7566:hb_aat_map_builder_t::feature_event_t::cmp\28void\20const*\2c\20void\20const*\29 +7567:h2v2_upsample +7568:h2v2_merged_upsample_565D +7569:h2v2_merged_upsample_565 +7570:h2v2_merged_upsample +7571:h2v2_fancy_upsample +7572:h2v1_upsample +7573:h2v1_merged_upsample_565D +7574:h2v1_merged_upsample_565 +7575:h2v1_merged_upsample +7576:h2v1_fancy_upsample +7577:grayscale_convert +7578:gray_rgb_convert +7579:gray_rgb565_convert +7580:gray_rgb565D_convert +7581:gray_raster_render +7582:gray_raster_new +7583:gray_raster_done +7584:gray_move_to +7585:gray_line_to +7586:gray_cubic_to +7587:gray_conic_to +7588:get_sk_marker_list\28jpeg_decompress_struct*\29 +7589:get_sfnt_table +7590:get_interesting_appn +7591:fullsize_upsample +7592:ft_smooth_transform +7593:ft_smooth_set_mode +7594:ft_smooth_render +7595:ft_smooth_overlap_spans +7596:ft_smooth_lcd_spans +7597:ft_smooth_init +7598:ft_smooth_get_cbox +7599:ft_gzip_free +7600:ft_gzip_alloc +7601:ft_ansi_stream_io +7602:ft_ansi_stream_close +7603:fquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7604:format_message +7605:fmt_fp +7606:fline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7607:first_axis_intersection\28double\20const*\2c\20bool\2c\20double\2c\20double*\29 +7608:finish_pass1 +7609:finish_output_pass +7610:finish_input_pass +7611:final_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7612:fcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7613:fconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7614:fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7615:fast_swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7616:fast_swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7617:fast_swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7618:fast_swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7619:fast_swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7620:fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7621:fast_swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7622:fast_swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7623:fast_swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7624:error_exit +7625:error_callback +7626:emscripten::internal::MethodInvoker\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20void\2c\20SkCanvas*\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&>::invoke\28void\20\28SkCanvas::*\20const&\29\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20SkPaint*\29 +7627:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint*\29 +7628:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\2c\20SkPaint*\29 +7629:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\29 +7630:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\29 +7631:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPath\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPath*\2c\20SkPaint*\29 +7632:emscripten::internal::MethodInvoker\20\28skia::textlayout::Paragraph::*\29\28unsigned\20int\29\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::Paragraph*\2c\20unsigned\20int>::invoke\28skia::textlayout::SkRange\20\28skia::textlayout::Paragraph::*\20const&\29\28unsigned\20int\29\2c\20skia::textlayout::Paragraph*\2c\20unsigned\20int\29 +7633:emscripten::internal::MethodInvoker::invoke\28skia::textlayout::PositionWithAffinity\20\28skia::textlayout::Paragraph::*\20const&\29\28float\2c\20float\29\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +7634:emscripten::internal::MethodInvoker::invoke\28int\20\28skia::textlayout::Paragraph::*\20const&\29\28unsigned\20long\29\20const\2c\20skia::textlayout::Paragraph\20const*\2c\20unsigned\20long\29 +7635:emscripten::internal::MethodInvoker::invoke\28bool\20\28SkPath::*\20const&\29\28float\2c\20float\29\20const\2c\20SkPath\20const*\2c\20float\2c\20float\29 +7636:emscripten::internal::MethodInvoker::invoke\28SkPath&\20\28SkPath::*\20const&\29\28bool\29\2c\20SkPath*\2c\20bool\29 +7637:emscripten::internal::Invoker::invoke\28void\20\28*\29\28unsigned\20long\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20unsigned\20long\29 +7638:emscripten::internal::Invoker::invoke\28void\20\28*\29\28emscripten::val\29\2c\20emscripten::_EM_VAL*\29 +7639:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28unsigned\20long\29\2c\20unsigned\20long\29 +7640:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont*\29 +7641:emscripten::internal::Invoker\2c\20sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20int\2c\20int\2c\20sk_sp*\2c\20int\2c\20int\29 +7642:emscripten::internal::Invoker\2c\20sk_sp\2c\20int\2c\20int\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\29\2c\20sk_sp*\2c\20int\2c\20int\2c\20sk_sp*\29 +7643:emscripten::internal::Invoker\2c\20sk_sp\2c\20int\2c\20int>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20int\2c\20int\29 +7644:emscripten::internal::Invoker\2c\20sk_sp\2c\20SimpleImageInfo>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20SimpleImageInfo\29\2c\20sk_sp*\2c\20SimpleImageInfo*\29 +7645:emscripten::internal::Invoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\29 +7646:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +7647:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20sk_sp\29\2c\20unsigned\20long\2c\20sk_sp*\29 +7648:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +7649:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +7650:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29\2c\20float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +7651:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp*\29 +7652:emscripten::internal::Invoker\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val>::invoke\28sk_sp\20\28*\29\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\2c\20emscripten::_EM_VAL*\29 +7653:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20int\2c\20float>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20int\2c\20float\29\2c\20unsigned\20long\2c\20int\2c\20float\29 +7654:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20SkPath>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20SkPath\29\2c\20unsigned\20long\2c\20SkPath*\29 +7655:emscripten::internal::Invoker\2c\20float\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28float\2c\20unsigned\20long\29\2c\20float\2c\20unsigned\20long\29 +7656:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20unsigned\20int>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20unsigned\20int\29\2c\20float\2c\20float\2c\20unsigned\20int\29 +7657:emscripten::internal::Invoker\2c\20float>::invoke\28sk_sp\20\28*\29\28float\29\2c\20float\29 +7658:emscripten::internal::Invoker\2c\20SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style>::invoke\28sk_sp\20\28*\29\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29\2c\20SkPath*\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29 +7659:emscripten::internal::Invoker\2c\20SkBlurStyle\2c\20float\2c\20bool>::invoke\28sk_sp\20\28*\29\28SkBlurStyle\2c\20float\2c\20bool\29\2c\20SkBlurStyle\2c\20float\2c\20bool\29 +7660:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20float\2c\20float\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20float\2c\20float\2c\20sk_sp\29\2c\20unsigned\20long\2c\20float\2c\20float\2c\20sk_sp*\29 +7661:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp\29\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp*\29 +7662:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\29\2c\20sk_sp*\29 +7663:emscripten::internal::Invoker\2c\20sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29 +7664:emscripten::internal::Invoker\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +7665:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20sk_sp\29\2c\20float\2c\20float\2c\20sk_sp*\29 +7666:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29\2c\20float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp*\29 +7667:emscripten::internal::Invoker\2c\20float\2c\20float\2c\20SkTileMode\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\29\2c\20float\2c\20float\2c\20SkTileMode\2c\20sk_sp*\29 +7668:emscripten::internal::Invoker\2c\20SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp\29\2c\20SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp*\2c\20sk_sp*\29 +7669:emscripten::internal::Invoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long>::invoke\28sk_sp\20\28*\29\28SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29 +7670:emscripten::internal::Invoker\2c\20SimpleImageInfo\2c\20emscripten::val>::invoke\28sk_sp\20\28*\29\28SimpleImageInfo\2c\20emscripten::val\29\2c\20SimpleImageInfo*\2c\20emscripten::_EM_VAL*\29 +7671:emscripten::internal::Invoker\2c\20unsigned\20long\2c\20SkBlendMode\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28unsigned\20long\2c\20SkBlendMode\2c\20sk_sp\29\2c\20unsigned\20long\2c\20SkBlendMode\2c\20sk_sp*\29 +7672:emscripten::internal::Invoker\2c\20sk_sp\20const&\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\20const&\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +7673:emscripten::internal::Invoker\2c\20float\2c\20sk_sp\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28float\2c\20sk_sp\2c\20sk_sp\29\2c\20float\2c\20sk_sp*\2c\20sk_sp*\29 +7674:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20int\29 +7675:emscripten::internal::Invoker\2c\20std::__2::allocator>>::invoke\28emscripten::val\20\28*\29\28std::__2::basic_string\2c\20std::__2::allocator>\29\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\29 +7676:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28emscripten::val\2c\20emscripten::val\2c\20float\29\2c\20emscripten::_EM_VAL*\2c\20emscripten::_EM_VAL*\2c\20float\29 +7677:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29\2c\20SkPath*\2c\20SkPath*\2c\20float\29 +7678:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +7679:emscripten::internal::Invoker::invoke\28bool\20\28*\29\28unsigned\20long\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20SkPath*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\29 +7680:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28bool\20\28*\29\28sk_sp\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +7681:emscripten::internal::Invoker::invoke\28bool\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +7682:emscripten::internal::Invoker::invoke\28SkVertices::Builder*\20\28*\29\28SkVertices::VertexMode&&\2c\20int&&\2c\20int&&\2c\20unsigned\20int&&\29\2c\20SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +7683:emscripten::internal::Invoker::invoke\28SkPath\20\28*\29\28unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +7684:emscripten::internal::Invoker&&\2c\20float&&\2c\20float&&\2c\20float&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\2c\20float&&\2c\20float&&\2c\20float&&\29\2c\20sk_sp*\2c\20float\2c\20float\2c\20float\29 +7685:emscripten::internal::Invoker&&\2c\20float&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\2c\20float&&\29\2c\20sk_sp*\2c\20float\29 +7686:emscripten::internal::Invoker&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\29\2c\20sk_sp*\29 +7687:emscripten::internal::Invoker::invoke\28SkContourMeasureIter*\20\28*\29\28SkPath\20const&\2c\20bool&&\2c\20float&&\29\2c\20SkPath*\2c\20bool\2c\20float\29 +7688:emscripten::internal::Invoker::invoke\28SkCanvas*\20\28*\29\28float&&\2c\20float&&\29\2c\20float\2c\20float\29 +7689:emscripten::internal::FunctionInvoker\2c\20unsigned\20long\29\2c\20void\2c\20skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long>::invoke\28void\20\28**\29\28skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long\29\2c\20skia::textlayout::TypefaceFontProvider*\2c\20sk_sp*\2c\20unsigned\20long\29 +7690:emscripten::internal::FunctionInvoker\2c\20std::__2::allocator>\29\2c\20void\2c\20skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>>::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\29 +7691:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29 +7692:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\2c\20SkPaint\2c\20SkPaint\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20SimpleTextStyle*\2c\20SkPaint*\2c\20SkPaint*\29 +7693:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20SimpleTextStyle*\29 +7694:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +7695:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +7696:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +7697:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +7698:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +7699:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20SkPath\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29\2c\20SkPath*\2c\20SkPath*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +7700:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29\2c\20SkContourMeasure*\2c\20float\2c\20unsigned\20long\29 +7701:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont*\2c\20SkPaint*\29 +7702:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint*\29 +7703:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7704:emscripten::internal::FunctionInvoker\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7705:emscripten::internal::FunctionInvoker\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7706:emscripten::internal::FunctionInvoker\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20void\2c\20SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*>::invoke\28void\20\28**\29\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29\2c\20SkCanvas*\2c\20sk_sp*\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +7707:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont*\2c\20SkPaint*\29 +7708:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint*\29 +7709:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20int\29\2c\20SkCanvas*\2c\20SkPath*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20int\29 +7710:emscripten::internal::FunctionInvoker\20\28*\29\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29\2c\20sk_sp\2c\20SkFontMgr&\2c\20unsigned\20long\2c\20int>::invoke\28sk_sp\20\28**\29\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29\2c\20SkFontMgr*\2c\20unsigned\20long\2c\20int\29 +7711:emscripten::internal::FunctionInvoker\20\28*\29\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29\2c\20sk_sp\2c\20SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val>::invoke\28sk_sp\20\28**\29\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29\2c\20SkFontMgr*\2c\20emscripten::internal::BindingType\2c\20std::__2::allocator>\2c\20void>::'unnamed'*\2c\20emscripten::_EM_VAL*\29 +7712:emscripten::internal::FunctionInvoker\20\28*\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29\2c\20sk_sp\2c\20sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29 +7713:emscripten::internal::FunctionInvoker\20\28*\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29\2c\20sk_sp\2c\20sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29\2c\20sk_sp*\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29 +7714:emscripten::internal::FunctionInvoker\20\28*\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20SkRuntimeEffect*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7715:emscripten::internal::FunctionInvoker\20\28*\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29\2c\20SkRuntimeEffect*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29 +7716:emscripten::internal::FunctionInvoker\20\28*\29\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29\2c\20SkPicture*\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +7717:emscripten::internal::FunctionInvoker\20\28*\29\28SkPictureRecorder&\29\2c\20sk_sp\2c\20SkPictureRecorder&>::invoke\28sk_sp\20\28**\29\28SkPictureRecorder&\29\2c\20SkPictureRecorder*\29 +7718:emscripten::internal::FunctionInvoker\20\28*\29\28SkSurface&\2c\20unsigned\20long\29\2c\20sk_sp\2c\20SkSurface&\2c\20unsigned\20long>::invoke\28sk_sp\20\28**\29\28SkSurface&\2c\20unsigned\20long\29\2c\20SkSurface*\2c\20unsigned\20long\29 +7719:emscripten::internal::FunctionInvoker\20\28*\29\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29\2c\20sk_sp\2c\20SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo>::invoke\28sk_sp\20\28**\29\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29\2c\20SkSurface*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo*\29 +7720:emscripten::internal::FunctionInvoker\20\28*\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29\2c\20sk_sp\2c\20SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool>::invoke\28sk_sp\20\28**\29\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29\2c\20SkRuntimeEffect*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +7721:emscripten::internal::FunctionInvoker::invoke\28int\20\28**\29\28SkCanvas&\2c\20SkPaint\29\2c\20SkCanvas*\2c\20SkPaint*\29 +7722:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28skia::textlayout::Paragraph&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29\2c\20skia::textlayout::Paragraph*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +7723:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28skia::textlayout::Paragraph&\2c\20float\2c\20float\29\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +7724:emscripten::internal::FunctionInvoker\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29\2c\20emscripten::val\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*>::invoke\28emscripten::val\20\28**\29\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29\2c\20sk_sp*\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29 +7725:emscripten::internal::FunctionInvoker\2c\20SkEncodedImageFormat\2c\20int\29\2c\20emscripten::val\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int>::invoke\28emscripten::val\20\28**\29\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\29\2c\20sk_sp*\2c\20SkEncodedImageFormat\2c\20int\29 +7726:emscripten::internal::FunctionInvoker\29\2c\20emscripten::val\2c\20sk_sp>::invoke\28emscripten::val\20\28**\29\28sk_sp\29\2c\20sk_sp*\29 +7727:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20float\2c\20float\29\2c\20SkFont*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20float\2c\20float\29 +7728:emscripten::internal::FunctionInvoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29\2c\20bool\2c\20sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*>::invoke\28bool\20\28**\29\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29\2c\20sk_sp*\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29 +7729:emscripten::internal::FunctionInvoker\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29\2c\20bool\2c\20sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int>::invoke\28bool\20\28**\29\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7730:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\2c\20float\29 +7731:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20float\2c\20float\2c\20bool\29\2c\20SkPath*\2c\20float\2c\20float\2c\20bool\29 +7732:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20StrokeOpts\29\2c\20SkPath*\2c\20StrokeOpts*\29 +7733:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29\2c\20SkCanvas*\2c\20SimpleImageInfo*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7734:emscripten::internal::FunctionInvoker::invoke\28SkPath\20\28**\29\28SkPath\20const&\29\2c\20SkPath*\29 +7735:emscripten::internal::FunctionInvoker::invoke\28SkPath\20\28**\29\28SkContourMeasure&\2c\20float\2c\20float\2c\20bool\29\2c\20SkContourMeasure*\2c\20float\2c\20float\2c\20bool\29 +7736:emscripten::internal::FunctionInvoker::invoke\28SkPaint\20\28**\29\28SkPaint\20const&\29\2c\20SkPaint*\29 +7737:emscripten::internal::FunctionInvoker::invoke\28SimpleImageInfo\20\28**\29\28SkSurface&\29\2c\20SkSurface*\29 +7738:emscripten::internal::FunctionInvoker::invoke\28RuntimeEffectUniform\20\28**\29\28SkRuntimeEffect&\2c\20int\29\2c\20SkRuntimeEffect*\2c\20int\29 +7739:emit_message +7740:embind_init_Skia\28\29::$_9::__invoke\28SkAnimatedImage&\29 +7741:embind_init_Skia\28\29::$_99::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +7742:embind_init_Skia\28\29::$_98::__invoke\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20bool\29 +7743:embind_init_Skia\28\29::$_97::__invoke\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\29 +7744:embind_init_Skia\28\29::$_96::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20int\29 +7745:embind_init_Skia\28\29::$_95::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\29 +7746:embind_init_Skia\28\29::$_94::__invoke\28unsigned\20long\2c\20SkPath\29 +7747:embind_init_Skia\28\29::$_93::__invoke\28float\2c\20unsigned\20long\29 +7748:embind_init_Skia\28\29::$_92::__invoke\28unsigned\20long\2c\20int\2c\20float\29 +7749:embind_init_Skia\28\29::$_91::__invoke\28\29 +7750:embind_init_Skia\28\29::$_90::__invoke\28\29 +7751:embind_init_Skia\28\29::$_8::__invoke\28emscripten::val\29 +7752:embind_init_Skia\28\29::$_89::__invoke\28sk_sp\2c\20sk_sp\29 +7753:embind_init_Skia\28\29::$_88::__invoke\28SkPaint&\2c\20unsigned\20int\2c\20sk_sp\29 +7754:embind_init_Skia\28\29::$_87::__invoke\28SkPaint&\2c\20unsigned\20int\29 +7755:embind_init_Skia\28\29::$_86::__invoke\28SkPaint&\2c\20unsigned\20long\2c\20sk_sp\29 +7756:embind_init_Skia\28\29::$_85::__invoke\28SkPaint&\2c\20unsigned\20long\29 +7757:embind_init_Skia\28\29::$_84::__invoke\28SkPaint\20const&\29 +7758:embind_init_Skia\28\29::$_83::__invoke\28SkBlurStyle\2c\20float\2c\20bool\29 +7759:embind_init_Skia\28\29::$_82::__invoke\28float\2c\20float\2c\20sk_sp\29 +7760:embind_init_Skia\28\29::$_81::__invoke\28unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp\29 +7761:embind_init_Skia\28\29::$_80::__invoke\28unsigned\20long\2c\20float\2c\20float\2c\20sk_sp\29 +7762:embind_init_Skia\28\29::$_7::__invoke\28GrDirectContext&\2c\20unsigned\20long\29 +7763:embind_init_Skia\28\29::$_79::__invoke\28sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +7764:embind_init_Skia\28\29::$_78::__invoke\28sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29 +7765:embind_init_Skia\28\29::$_77::__invoke\28float\2c\20float\2c\20sk_sp\29 +7766:embind_init_Skia\28\29::$_76::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +7767:embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +7768:embind_init_Skia\28\29::$_74::__invoke\28sk_sp\29 +7769:embind_init_Skia\28\29::$_73::__invoke\28SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp\29 +7770:embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +7771:embind_init_Skia\28\29::$_71::__invoke\28sk_sp\2c\20sk_sp\29 +7772:embind_init_Skia\28\29::$_70::__invoke\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\29 +7773:embind_init_Skia\28\29::$_6::__invoke\28GrDirectContext&\29 +7774:embind_init_Skia\28\29::$_69::__invoke\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +7775:embind_init_Skia\28\29::$_68::__invoke\28SkImageFilter\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7776:embind_init_Skia\28\29::$_67::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7777:embind_init_Skia\28\29::$_66::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29 +7778:embind_init_Skia\28\29::$_65::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29 +7779:embind_init_Skia\28\29::$_64::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29 +7780:embind_init_Skia\28\29::$_63::__invoke\28sk_sp\29 +7781:embind_init_Skia\28\29::$_62::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29 +7782:embind_init_Skia\28\29::$_61::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +7783:embind_init_Skia\28\29::$_60::__invoke\28sk_sp\29 +7784:embind_init_Skia\28\29::$_5::__invoke\28GrDirectContext&\29 +7785:embind_init_Skia\28\29::$_59::__invoke\28sk_sp\29 +7786:embind_init_Skia\28\29::$_58::__invoke\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29 +7787:embind_init_Skia\28\29::$_57::__invoke\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +7788:embind_init_Skia\28\29::$_56::__invoke\28SkFontMgr&\2c\20int\29 +7789:embind_init_Skia\28\29::$_55::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20int\29 +7790:embind_init_Skia\28\29::$_54::__invoke\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20float\2c\20float\29 +7791:embind_init_Skia\28\29::$_53::__invoke\28SkFont&\29 +7792:embind_init_Skia\28\29::$_52::__invoke\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7793:embind_init_Skia\28\29::$_51::__invoke\28SkFont&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint*\29 +7794:embind_init_Skia\28\29::$_50::__invoke\28SkContourMeasure&\2c\20float\2c\20float\2c\20bool\29 +7795:embind_init_Skia\28\29::$_4::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +7796:embind_init_Skia\28\29::$_49::__invoke\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29 +7797:embind_init_Skia\28\29::$_48::__invoke\28unsigned\20long\29 +7798:embind_init_Skia\28\29::$_47::__invoke\28unsigned\20long\2c\20SkBlendMode\2c\20sk_sp\29 +7799:embind_init_Skia\28\29::$_46::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7800:embind_init_Skia\28\29::$_45::__invoke\28SkCanvas&\2c\20SkPaint\29 +7801:embind_init_Skia\28\29::$_44::__invoke\28SkCanvas&\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29 +7802:embind_init_Skia\28\29::$_43::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7803:embind_init_Skia\28\29::$_42::__invoke\28SkCanvas&\2c\20SimpleImageInfo\29 +7804:embind_init_Skia\28\29::$_41::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +7805:embind_init_Skia\28\29::$_40::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +7806:embind_init_Skia\28\29::$_3::__invoke\28unsigned\20long\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\29 +7807:embind_init_Skia\28\29::$_39::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +7808:embind_init_Skia\28\29::$_38::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29 +7809:embind_init_Skia\28\29::$_37::__invoke\28SkCanvas&\2c\20SkPath\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20int\29 +7810:embind_init_Skia\28\29::$_36::__invoke\28SkCanvas&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +7811:embind_init_Skia\28\29::$_35::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7812:embind_init_Skia\28\29::$_34::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7813:embind_init_Skia\28\29::$_33::__invoke\28SkCanvas&\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint&\29 +7814:embind_init_Skia\28\29::$_32::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +7815:embind_init_Skia\28\29::$_31::__invoke\28SkCanvas&\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +7816:embind_init_Skia\28\29::$_30::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7817:embind_init_Skia\28\29::$_2::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29 +7818:embind_init_Skia\28\29::$_29::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +7819:embind_init_Skia\28\29::$_28::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7820:embind_init_Skia\28\29::$_27::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const*\2c\20bool\29 +7821:embind_init_Skia\28\29::$_26::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +7822:embind_init_Skia\28\29::$_25::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +7823:embind_init_Skia\28\29::$_24::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7824:embind_init_Skia\28\29::$_23::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7825:embind_init_Skia\28\29::$_22::__invoke\28SkCanvas&\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\2c\20SkFont\20const&\2c\20SkPaint\20const&\29 +7826:embind_init_Skia\28\29::$_21::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7827:embind_init_Skia\28\29::$_20::__invoke\28SkCanvas&\2c\20unsigned\20int\2c\20SkBlendMode\29 +7828:embind_init_Skia\28\29::$_1::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +7829:embind_init_Skia\28\29::$_19::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29 +7830:embind_init_Skia\28\29::$_18::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +7831:embind_init_Skia\28\29::$_17::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7832:embind_init_Skia\28\29::$_16::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20SkBlendMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +7833:embind_init_Skia\28\29::$_15::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +7834:embind_init_Skia\28\29::$_14::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +7835:embind_init_Skia\28\29::$_146::__invoke\28SkVertices::Builder&\29 +7836:embind_init_Skia\28\29::$_145::__invoke\28SkVertices::Builder&\29 +7837:embind_init_Skia\28\29::$_144::__invoke\28SkVertices::Builder&\29 +7838:embind_init_Skia\28\29::$_143::__invoke\28SkVertices::Builder&\29 +7839:embind_init_Skia\28\29::$_142::__invoke\28SkVertices&\2c\20unsigned\20long\29 +7840:embind_init_Skia\28\29::$_141::__invoke\28SkTypeface&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7841:embind_init_Skia\28\29::$_140::__invoke\28unsigned\20long\2c\20int\29 +7842:embind_init_Skia\28\29::$_13::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +7843:embind_init_Skia\28\29::$_139::__invoke\28\29 +7844:embind_init_Skia\28\29::$_138::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7845:embind_init_Skia\28\29::$_137::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7846:embind_init_Skia\28\29::$_136::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7847:embind_init_Skia\28\29::$_135::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7848:embind_init_Skia\28\29::$_134::__invoke\28SkSurface&\29 +7849:embind_init_Skia\28\29::$_133::__invoke\28SkSurface&\29 +7850:embind_init_Skia\28\29::$_132::__invoke\28SkSurface&\29 +7851:embind_init_Skia\28\29::$_131::__invoke\28SkSurface&\2c\20SimpleImageInfo\29 +7852:embind_init_Skia\28\29::$_130::__invoke\28SkSurface&\2c\20unsigned\20long\29 +7853:embind_init_Skia\28\29::$_12::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +7854:embind_init_Skia\28\29::$_129::__invoke\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29 +7855:embind_init_Skia\28\29::$_128::__invoke\28SkSurface&\29 +7856:embind_init_Skia\28\29::$_127::__invoke\28SkSurface&\29 +7857:embind_init_Skia\28\29::$_126::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\29 +7858:embind_init_Skia\28\29::$_125::__invoke\28SkRuntimeEffect&\2c\20int\29 +7859:embind_init_Skia\28\29::$_124::__invoke\28SkRuntimeEffect&\2c\20int\29 +7860:embind_init_Skia\28\29::$_123::__invoke\28SkRuntimeEffect&\29 +7861:embind_init_Skia\28\29::$_122::__invoke\28SkRuntimeEffect&\29 +7862:embind_init_Skia\28\29::$_121::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +7863:embind_init_Skia\28\29::$_120::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7864:embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +7865:embind_init_Skia\28\29::$_119::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29 +7866:embind_init_Skia\28\29::$_118::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +7867:embind_init_Skia\28\29::$_117::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +7868:embind_init_Skia\28\29::$_116::__invoke\28unsigned\20long\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +7869:embind_init_Skia\28\29::$_115::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +7870:embind_init_Skia\28\29::$_114::__invoke\28float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +7871:embind_init_Skia\28\29::$_113::__invoke\28float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +7872:embind_init_Skia\28\29::$_112::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20unsigned\20long\2c\20sk_sp\29 +7873:embind_init_Skia\28\29::$_111::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +7874:embind_init_Skia\28\29::$_110::__invoke\28unsigned\20long\2c\20sk_sp\29 +7875:embind_init_Skia\28\29::$_10::__invoke\28SkAnimatedImage&\29 +7876:embind_init_Skia\28\29::$_109::__invoke\28SkPicture&\29 +7877:embind_init_Skia\28\29::$_108::__invoke\28SkPicture&\2c\20unsigned\20long\29 +7878:embind_init_Skia\28\29::$_107::__invoke\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +7879:embind_init_Skia\28\29::$_106::__invoke\28SkPictureRecorder&\29 +7880:embind_init_Skia\28\29::$_105::__invoke\28SkPictureRecorder&\2c\20unsigned\20long\2c\20bool\29 +7881:embind_init_Skia\28\29::$_104::__invoke\28SkPath&\2c\20unsigned\20long\29 +7882:embind_init_Skia\28\29::$_103::__invoke\28SkPath&\2c\20unsigned\20long\29 +7883:embind_init_Skia\28\29::$_102::__invoke\28SkPath&\2c\20int\2c\20unsigned\20long\29 +7884:embind_init_Skia\28\29::$_101::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\29 +7885:embind_init_Skia\28\29::$_100::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +7886:embind_init_Skia\28\29::$_0::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +7887:embind_init_Paragraph\28\29::$_9::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7888:embind_init_Paragraph\28\29::$_8::__invoke\28skia::textlayout::ParagraphBuilderImpl&\29 +7889:embind_init_Paragraph\28\29::$_7::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29 +7890:embind_init_Paragraph\28\29::$_6::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\2c\20SkPaint\2c\20SkPaint\29 +7891:embind_init_Paragraph\28\29::$_5::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29 +7892:embind_init_Paragraph\28\29::$_4::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +7893:embind_init_Paragraph\28\29::$_3::__invoke\28emscripten::val\2c\20emscripten::val\2c\20float\29 +7894:embind_init_Paragraph\28\29::$_2::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +7895:embind_init_Paragraph\28\29::$_18::__invoke\28skia::textlayout::FontCollection&\2c\20sk_sp\20const&\29 +7896:embind_init_Paragraph\28\29::$_17::__invoke\28\29 +7897:embind_init_Paragraph\28\29::$_16::__invoke\28skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long\29 +7898:embind_init_Paragraph\28\29::$_15::__invoke\28\29 +7899:embind_init_Paragraph\28\29::$_14::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7900:embind_init_Paragraph\28\29::$_13::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7901:embind_init_Paragraph\28\29::$_12::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7902:embind_init_Paragraph\28\29::$_11::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7903:embind_init_Paragraph\28\29::$_10::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7904:dispose_external_texture\28void*\29 +7905:deleteJSTexture\28void*\29 +7906:deflate_slow +7907:deflate_fast +7908:decompress_smooth_data +7909:decompress_onepass +7910:decompress_data +7911:decompose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +7912:decompose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +7913:decompose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +7914:decode_mcu_DC_refine +7915:decode_mcu_DC_first +7916:decode_mcu_AC_refine +7917:decode_mcu_AC_first +7918:decode_mcu +7919:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::Make\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20bool\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7920:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&\2c\20GrShaderCaps\20const&>\28SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28skgpu::ganesh::\28anonymous\20namespace\29::HullShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7921:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::StrokeTessellator::PathStrokeList&&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator::PathStrokeList&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7922:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7923:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&>\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29::'lambda'\28void*\29>\28skgpu::ganesh::PathTessellator::PathDrawList&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7924:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Make\28SkArenaAlloc*\2c\20GrAAType\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::ProcessorFlags\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7925:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerSkyline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7926:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerPow2&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7927:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make*\20SkArenaAlloc::make>\28\29::'lambda'\28void*\29>\28sk_sp&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7928:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc>\28\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::TextureOpImpl::Desc&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7929:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::TentPass*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TentPass\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&>\28skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::TentPass&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7930:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::SimpleTriangleShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::SimpleTriangleShader\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&>\28SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::SimpleTriangleShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7931:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass*\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&>\28skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::GaussPass&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7932:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::DrawAtlasPathShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::DrawAtlasPathShader\2c\20bool&\2c\20skgpu::ganesh::AtlasInstancedHelper*\2c\20GrShaderCaps\20const&>\28bool&\2c\20skgpu::ganesh::AtlasInstancedHelper*&&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::DrawAtlasPathShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7933:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::BoundingBoxShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::BoundingBoxShader\2c\20SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&>\28SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::BoundingBoxShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7934:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20unsigned\20char&&\29::'lambda'\28void*\29>\28Sprite_D32_S32&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7935:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTriColorShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7936:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTCubic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7937:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTConic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7938:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\29::'lambda'\28void*\29>\28SkSpriteBlitter_Memcpy&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7939:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkShaderBase::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::CallbackCtx&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7940:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&>\28SkPixmap\20const&\2c\20SkArenaAlloc*&\2c\20sk_sp&\29::'lambda'\28void*\29>\28SkRasterPipelineSpriteBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7941:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkArenaAlloc*&\29::'lambda'\28void*\29>\28SkRasterPipelineBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7942:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7943:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkImage_Base\20const*&&\2c\20SkMatrix\20const&\2c\20SkMipmapMode&\29::'lambda'\28void*\29>\28SkMipmapAccessor&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7944:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::PathData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7945:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7946:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkGlyph&&\29::'lambda'\28void*\29>\28SkGlyph&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7947:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&\29>>::Node*\20SkArenaAlloc::make&\29>>::Node\2c\20std::__2::function&\29>>\28std::__2::function&\29>&&\29::'lambda'\28void*\29>\28SkArenaAllocList&\29>>::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7948:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node\2c\20std::__2::function&\29>\2c\20skgpu::AtlasToken>\28std::__2::function&\29>&&\2c\20skgpu::AtlasToken&&\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7949:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node>\28\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7950:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29::'lambda'\28void*\29>\28SkA8_Coverage_Blitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7951:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28GrSimpleMesh&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7952:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29::'lambda'\28void*\29>\28GrResourceAllocator::Register&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7953:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPath\20const&\2c\20SkArenaAlloc*\20const&\29::'lambda'\28void*\29>\28GrInnerFanTriangulator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7954:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrDistanceFieldLCDTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20GrDistanceFieldLCDTextGeoProc::DistanceAdjust\2c\20unsigned\20int\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7955:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29>\28GrBitmapTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7956:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrAppliedClip&&\29::'lambda'\28void*\29>\28GrAppliedClip&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7957:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28EllipseGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7958:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_construct\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__ctor>&\2c\20std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +7959:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&\29 +7960:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +7961:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +7962:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\29 +7963:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_construct\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__ctor>&\2c\20std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +7964:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&\29 +7965:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +7966:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +7967:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +7968:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\29 +7969:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul>::__dispatch\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\29 +7970:deallocate_buffer_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7971:ddquad_xy_at_t\28SkDCurve\20const&\2c\20double\29 +7972:ddquad_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +7973:ddline_xy_at_t\28SkDCurve\20const&\2c\20double\29 +7974:ddline_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +7975:ddcubic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +7976:ddcubic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +7977:ddconic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +7978:ddconic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +7979:data_destroy_use\28void*\29 +7980:data_create_use\28hb_ot_shape_plan_t\20const*\29 +7981:data_create_khmer\28hb_ot_shape_plan_t\20const*\29 +7982:data_create_indic\28hb_ot_shape_plan_t\20const*\29 +7983:data_create_hangul\28hb_ot_shape_plan_t\20const*\29 +7984:copy\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7985:convert_bytes_to_data +7986:consume_markers +7987:consume_data +7988:computeTonalColors\28unsigned\20long\2c\20unsigned\20long\29 +7989:compose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +7990:compose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +7991:compose_hebrew\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +7992:compare_ppem +7993:compare_offsets +7994:compare_myanmar_order\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +7995:compare_combining_class\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +7996:color_quantize3 +7997:color_quantize +7998:collect_features_use\28hb_ot_shape_planner_t*\29 +7999:collect_features_myanmar\28hb_ot_shape_planner_t*\29 +8000:collect_features_khmer\28hb_ot_shape_planner_t*\29 +8001:collect_features_indic\28hb_ot_shape_planner_t*\29 +8002:collect_features_hangul\28hb_ot_shape_planner_t*\29 +8003:collect_features_arabic\28hb_ot_shape_planner_t*\29 +8004:clip\28SkPath\20const&\2c\20SkHalfPlane\20const&\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +8005:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitStatement\28SkSL::Statement\20const&\29 +8006:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8007:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitExpression\28SkSL::Expression\20const&\29 +8008:cff_slot_init +8009:cff_slot_done +8010:cff_size_request +8011:cff_size_init +8012:cff_size_done +8013:cff_sid_to_glyph_name +8014:cff_set_var_design +8015:cff_set_mm_weightvector +8016:cff_set_mm_blend +8017:cff_set_instance +8018:cff_random +8019:cff_ps_has_glyph_names +8020:cff_ps_get_font_info +8021:cff_ps_get_font_extra +8022:cff_parse_vsindex +8023:cff_parse_private_dict +8024:cff_parse_multiple_master +8025:cff_parse_maxstack +8026:cff_parse_font_matrix +8027:cff_parse_font_bbox +8028:cff_parse_cid_ros +8029:cff_parse_blend +8030:cff_metrics_adjust +8031:cff_hadvance_adjust +8032:cff_glyph_load +8033:cff_get_var_design +8034:cff_get_var_blend +8035:cff_get_standard_encoding +8036:cff_get_ros +8037:cff_get_ps_name +8038:cff_get_name_index +8039:cff_get_mm_weightvector +8040:cff_get_mm_var +8041:cff_get_mm_blend +8042:cff_get_is_cid +8043:cff_get_interface +8044:cff_get_glyph_name +8045:cff_get_glyph_data +8046:cff_get_cmap_info +8047:cff_get_cid_from_glyph_index +8048:cff_get_advances +8049:cff_free_glyph_data +8050:cff_fd_select_get +8051:cff_face_init +8052:cff_face_done +8053:cff_driver_init +8054:cff_done_blend +8055:cff_decoder_prepare +8056:cff_decoder_init +8057:cff_cmap_unicode_init +8058:cff_cmap_unicode_char_next +8059:cff_cmap_unicode_char_index +8060:cff_cmap_encoding_init +8061:cff_cmap_encoding_done +8062:cff_cmap_encoding_char_next +8063:cff_cmap_encoding_char_index +8064:cff_builder_start_point +8065:cff_builder_init +8066:cff_builder_add_point1 +8067:cff_builder_add_point +8068:cff_builder_add_contour +8069:cff_blend_check_vector +8070:cf2_free_instance +8071:cf2_decoder_parse_charstrings +8072:cf2_builder_moveTo +8073:cf2_builder_lineTo +8074:cf2_builder_cubeTo +8075:bw_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +8076:bw_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8077:bw_pt_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8078:bw_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8079:bw_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8080:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::SpotVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +8081:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::AmbientVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +8082:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8083:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8084:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8085:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8086:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8087:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8088:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8089:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8090:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8091:blur_y_radius_4\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8092:blur_y_radius_3\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8093:blur_y_radius_2\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8094:blur_y_radius_1\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8095:blur_x_radius_4\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8096:blur_x_radius_3\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8097:blur_x_radius_2\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8098:blur_x_radius_1\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +8099:blit_row_s32a_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +8100:blit_row_s32_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +8101:blit_row_s32_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +8102:argb32_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +8103:arabic_fallback_shape\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8104:alwaysSaveTypefaceBytes\28SkTypeface*\2c\20void*\29 +8105:alloc_sarray +8106:alloc_barray +8107:afm_parser_parse +8108:afm_parser_init +8109:afm_parser_done +8110:afm_compare_kern_pairs +8111:af_property_set +8112:af_property_get +8113:af_latin_metrics_scale +8114:af_latin_metrics_init +8115:af_latin_hints_init +8116:af_latin_hints_apply +8117:af_latin_get_standard_widths +8118:af_indic_metrics_init +8119:af_indic_hints_apply +8120:af_get_interface +8121:af_face_globals_free +8122:af_dummy_hints_init +8123:af_dummy_hints_apply +8124:af_cjk_metrics_init +8125:af_autofitter_load_glyph +8126:af_autofitter_init +8127:access_virt_sarray +8128:access_virt_barray +8129:aa_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8130:aa_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8131:aa_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8132:_hb_ot_font_destroy\28void*\29 +8133:_hb_glyph_info_is_default_ignorable\28hb_glyph_info_t\20const*\29 +8134:_hb_face_for_data_reference_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +8135:_hb_face_for_data_closure_destroy\28void*\29 +8136:_hb_clear_substitution_flags\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8137:_embind_initialize_bindings +8138:__wasm_call_ctors +8139:__stdio_write +8140:__stdio_seek +8141:__stdio_read +8142:__stdio_close +8143:__getTypeName +8144:__cxxabiv1::__vmi_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8145:__cxxabiv1::__vmi_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8146:__cxxabiv1::__vmi_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +8147:__cxxabiv1::__si_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8148:__cxxabiv1::__si_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8149:__cxxabiv1::__si_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +8150:__cxxabiv1::__class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8151:__cxxabiv1::__class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8152:__cxxabiv1::__class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +8153:__cxxabiv1::__class_type_info::can_catch\28__cxxabiv1::__shim_type_info\20const*\2c\20void*&\29\20const +8154:__cxx_global_array_dtor.9 +8155:__cxx_global_array_dtor.87 +8156:__cxx_global_array_dtor.72 +8157:__cxx_global_array_dtor.57 +8158:__cxx_global_array_dtor.5 +8159:__cxx_global_array_dtor.44 +8160:__cxx_global_array_dtor.42 +8161:__cxx_global_array_dtor.40 +8162:__cxx_global_array_dtor.4 +8163:__cxx_global_array_dtor.38 +8164:__cxx_global_array_dtor.36 +8165:__cxx_global_array_dtor.34 +8166:__cxx_global_array_dtor.32 +8167:__cxx_global_array_dtor.3.1 +8168:__cxx_global_array_dtor.2 +8169:__cxx_global_array_dtor.16 +8170:__cxx_global_array_dtor.15 +8171:__cxx_global_array_dtor.14 +8172:__cxx_global_array_dtor.138 +8173:__cxx_global_array_dtor.135 +8174:__cxx_global_array_dtor.111 +8175:__cxx_global_array_dtor.10 +8176:__cxx_global_array_dtor.1 +8177:__cxx_global_array_dtor +8178:__cxa_pure_virtual +8179:__cxa_is_pointer_type +8180:\28anonymous\20namespace\29::skhb_nominal_glyphs\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +8181:\28anonymous\20namespace\29::skhb_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8182:\28anonymous\20namespace\29::skhb_glyph_h_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +8183:\28anonymous\20namespace\29::skhb_glyph_h_advance\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8184:\28anonymous\20namespace\29::skhb_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8185:\28anonymous\20namespace\29::skhb_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8186:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29::$_0::__invoke\28void*\29 +8187:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +8188:\28anonymous\20namespace\29::make_morphology\28\28anonymous\20namespace\29::MorphType\2c\20SkSize\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +8189:\28anonymous\20namespace\29::make_drop_shadow_graph\28SkPoint\2c\20SkSize\2c\20unsigned\20int\2c\20bool\2c\20sk_sp\2c\20std::__2::optional\20const&\29 +8190:\28anonymous\20namespace\29::extension_compare\28SkString\20const&\2c\20SkString\20const&\29 +8191:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29.1 +8192:\28anonymous\20namespace\29::YUVPlanesRec::getCategory\28\29\20const +8193:\28anonymous\20namespace\29::YUVPlanesRec::diagnostic_only_getDiscardable\28\29\20const +8194:\28anonymous\20namespace\29::YUVPlanesRec::bytesUsed\28\29\20const +8195:\28anonymous\20namespace\29::YUVPlanesRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8196:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29.1 +8197:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29 +8198:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29.1 +8199:\28anonymous\20namespace\29::TriangulatingPathOp::visitProxies\28std::__2::function\20const&\29\20const +8200:\28anonymous\20namespace\29::TriangulatingPathOp::programInfo\28\29 +8201:\28anonymous\20namespace\29::TriangulatingPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8202:\28anonymous\20namespace\29::TriangulatingPathOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8203:\28anonymous\20namespace\29::TriangulatingPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8204:\28anonymous\20namespace\29::TriangulatingPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8205:\28anonymous\20namespace\29::TriangulatingPathOp::name\28\29\20const +8206:\28anonymous\20namespace\29::TriangulatingPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8207:\28anonymous\20namespace\29::TransformedMaskSubRun::unflattenSize\28\29\20const +8208:\28anonymous\20namespace\29::TransformedMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +8209:\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +8210:\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +8211:\28anonymous\20namespace\29::TransformedMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +8212:\28anonymous\20namespace\29::TransformedMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +8213:\28anonymous\20namespace\29::TransformedMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +8214:\28anonymous\20namespace\29::TransformedMaskSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +8215:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29.1 +8216:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29 +8217:\28anonymous\20namespace\29::TextureOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8218:\28anonymous\20namespace\29::TextureOpImpl::programInfo\28\29 +8219:\28anonymous\20namespace\29::TextureOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8220:\28anonymous\20namespace\29::TextureOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8221:\28anonymous\20namespace\29::TextureOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8222:\28anonymous\20namespace\29::TextureOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8223:\28anonymous\20namespace\29::TextureOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8224:\28anonymous\20namespace\29::TextureOpImpl::name\28\29\20const +8225:\28anonymous\20namespace\29::TextureOpImpl::fixedFunctionFlags\28\29\20const +8226:\28anonymous\20namespace\29::TextureOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8227:\28anonymous\20namespace\29::TentPass::startBlur\28\29 +8228:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +8229:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +8230:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +8231:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29.1 +8232:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29 +8233:\28anonymous\20namespace\29::StaticVertexAllocator::unlock\28int\29 +8234:\28anonymous\20namespace\29::StaticVertexAllocator::lock\28unsigned\20long\2c\20int\29 +8235:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::currentScript\28\29\20const +8236:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::consume\28\29 +8237:\28anonymous\20namespace\29::SkShaderImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8238:\28anonymous\20namespace\29::SkShaderImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8239:\28anonymous\20namespace\29::SkShaderImageFilter::getTypeName\28\29\20const +8240:\28anonymous\20namespace\29::SkShaderImageFilter::flatten\28SkWriteBuffer&\29\20const +8241:\28anonymous\20namespace\29::SkShaderImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8242:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8243:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8244:\28anonymous\20namespace\29::SkMorphologyImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8245:\28anonymous\20namespace\29::SkMorphologyImageFilter::getTypeName\28\29\20const +8246:\28anonymous\20namespace\29::SkMorphologyImageFilter::flatten\28SkWriteBuffer&\29\20const +8247:\28anonymous\20namespace\29::SkMorphologyImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8248:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8249:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8250:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8251:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::getTypeName\28\29\20const +8252:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::flatten\28SkWriteBuffer&\29\20const +8253:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8254:\28anonymous\20namespace\29::SkImageImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8255:\28anonymous\20namespace\29::SkImageImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8256:\28anonymous\20namespace\29::SkImageImageFilter::getTypeName\28\29\20const +8257:\28anonymous\20namespace\29::SkImageImageFilter::flatten\28SkWriteBuffer&\29\20const +8258:\28anonymous\20namespace\29::SkImageImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8259:\28anonymous\20namespace\29::SkFTGeometrySink::Quad\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +8260:\28anonymous\20namespace\29::SkFTGeometrySink::Move\28FT_Vector_\20const*\2c\20void*\29 +8261:\28anonymous\20namespace\29::SkFTGeometrySink::Line\28FT_Vector_\20const*\2c\20void*\29 +8262:\28anonymous\20namespace\29::SkFTGeometrySink::Cubic\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +8263:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8264:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFamilyName\28SkString*\29\20const +8265:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +8266:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateFamilyNameIterator\28\29\20const +8267:\28anonymous\20namespace\29::SkEmptyTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +8268:\28anonymous\20namespace\29::SkEmptyTypeface::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +8269:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8270:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8271:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8272:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::getTypeName\28\29\20const +8273:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::flatten\28SkWriteBuffer&\29\20const +8274:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8275:\28anonymous\20namespace\29::SkCropImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8276:\28anonymous\20namespace\29::SkCropImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8277:\28anonymous\20namespace\29::SkCropImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8278:\28anonymous\20namespace\29::SkCropImageFilter::onAffectsTransparentBlack\28\29\20const +8279:\28anonymous\20namespace\29::SkCropImageFilter::getTypeName\28\29\20const +8280:\28anonymous\20namespace\29::SkCropImageFilter::flatten\28SkWriteBuffer&\29\20const +8281:\28anonymous\20namespace\29::SkCropImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8282:\28anonymous\20namespace\29::SkComposeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8283:\28anonymous\20namespace\29::SkComposeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8284:\28anonymous\20namespace\29::SkComposeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8285:\28anonymous\20namespace\29::SkComposeImageFilter::getTypeName\28\29\20const +8286:\28anonymous\20namespace\29::SkComposeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8287:\28anonymous\20namespace\29::SkColorFilterImageFilter::onIsColorFilterNode\28SkColorFilter**\29\20const +8288:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8289:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8290:\28anonymous\20namespace\29::SkColorFilterImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8291:\28anonymous\20namespace\29::SkColorFilterImageFilter::onAffectsTransparentBlack\28\29\20const +8292:\28anonymous\20namespace\29::SkColorFilterImageFilter::getTypeName\28\29\20const +8293:\28anonymous\20namespace\29::SkColorFilterImageFilter::flatten\28SkWriteBuffer&\29\20const +8294:\28anonymous\20namespace\29::SkColorFilterImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8295:\28anonymous\20namespace\29::SkBlurImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8296:\28anonymous\20namespace\29::SkBlurImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8297:\28anonymous\20namespace\29::SkBlurImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8298:\28anonymous\20namespace\29::SkBlurImageFilter::getTypeName\28\29\20const +8299:\28anonymous\20namespace\29::SkBlurImageFilter::flatten\28SkWriteBuffer&\29\20const +8300:\28anonymous\20namespace\29::SkBlurImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8301:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29.1 +8302:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29 +8303:\28anonymous\20namespace\29::SkBlendImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8304:\28anonymous\20namespace\29::SkBlendImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8305:\28anonymous\20namespace\29::SkBlendImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8306:\28anonymous\20namespace\29::SkBlendImageFilter::onAffectsTransparentBlack\28\29\20const +8307:\28anonymous\20namespace\29::SkBlendImageFilter::getTypeName\28\29\20const +8308:\28anonymous\20namespace\29::SkBlendImageFilter::flatten\28SkWriteBuffer&\29\20const +8309:\28anonymous\20namespace\29::SkBlendImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8310:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29.1 +8311:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29 +8312:\28anonymous\20namespace\29::SkBidiIterator_icu::getLevelAt\28int\29 +8313:\28anonymous\20namespace\29::SkBidiIterator_icu::getLength\28\29 +8314:\28anonymous\20namespace\29::SimpleTriangleShader::name\28\29\20const +8315:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8316:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8317:\28anonymous\20namespace\29::ShaperHarfBuzz::~ShaperHarfBuzz\28\29.1 +8318:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::FontRunIterator&\2c\20SkShaper::BiDiRunIterator&\2c\20SkShaper::ScriptRunIterator&\2c\20SkShaper::LanguageRunIterator&\2c\20float\2c\20SkShaper::RunHandler*\29\20const +8319:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::FontRunIterator&\2c\20SkShaper::BiDiRunIterator&\2c\20SkShaper::ScriptRunIterator&\2c\20SkShaper::LanguageRunIterator&\2c\20SkShaper::Feature\20const*\2c\20unsigned\20long\2c\20float\2c\20SkShaper::RunHandler*\29\20const +8320:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20bool\2c\20float\2c\20SkShaper::RunHandler*\29\20const +8321:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::~ShapeDontWrapOrReorder\28\29 +8322:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::wrap\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::BiDiRunIterator\20const&\2c\20SkShaper::LanguageRunIterator\20const&\2c\20SkShaper::ScriptRunIterator\20const&\2c\20SkShaper::FontRunIterator\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue&\2c\20SkShaper::Feature\20const*\2c\20unsigned\20long\2c\20float\2c\20SkShaper::RunHandler*\29\20const +8323:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29.1 +8324:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29 +8325:\28anonymous\20namespace\29::ShadowInvalidator::changed\28\29 +8326:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29.1 +8327:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29 +8328:\28anonymous\20namespace\29::ShadowCircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +8329:\28anonymous\20namespace\29::ShadowCircularRRectOp::programInfo\28\29 +8330:\28anonymous\20namespace\29::ShadowCircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8331:\28anonymous\20namespace\29::ShadowCircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8332:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8333:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8334:\28anonymous\20namespace\29::ShadowCircularRRectOp::name\28\29\20const +8335:\28anonymous\20namespace\29::ShadowCircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8336:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +8337:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +8338:\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +8339:\28anonymous\20namespace\29::SDFTSubRun::unflattenSize\28\29\20const +8340:\28anonymous\20namespace\29::SDFTSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +8341:\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +8342:\28anonymous\20namespace\29::SDFTSubRun::glyphs\28\29\20const +8343:\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +8344:\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +8345:\28anonymous\20namespace\29::SDFTSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +8346:\28anonymous\20namespace\29::SDFTSubRun::doFlatten\28SkWriteBuffer&\29\20const +8347:\28anonymous\20namespace\29::SDFTSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +8348:\28anonymous\20namespace\29::SDFTSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +8349:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29.1 +8350:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29 +8351:\28anonymous\20namespace\29::RectsBlurRec::getCategory\28\29\20const +8352:\28anonymous\20namespace\29::RectsBlurRec::diagnostic_only_getDiscardable\28\29\20const +8353:\28anonymous\20namespace\29::RectsBlurRec::bytesUsed\28\29\20const +8354:\28anonymous\20namespace\29::RectsBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8355:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29.1 +8356:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29 +8357:\28anonymous\20namespace\29::RRectBlurRec::getCategory\28\29\20const +8358:\28anonymous\20namespace\29::RRectBlurRec::diagnostic_only_getDiscardable\28\29\20const +8359:\28anonymous\20namespace\29::RRectBlurRec::bytesUsed\28\29\20const +8360:\28anonymous\20namespace\29::RRectBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8361:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29.1 +8362:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29 +8363:\28anonymous\20namespace\29::PathSubRun::unflattenSize\28\29\20const +8364:\28anonymous\20namespace\29::PathSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +8365:\28anonymous\20namespace\29::PathSubRun::doFlatten\28SkWriteBuffer&\29\20const +8366:\28anonymous\20namespace\29::PathSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +8367:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29.1 +8368:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29 +8369:\28anonymous\20namespace\29::MipMapRec::getCategory\28\29\20const +8370:\28anonymous\20namespace\29::MipMapRec::diagnostic_only_getDiscardable\28\29\20const +8371:\28anonymous\20namespace\29::MipMapRec::bytesUsed\28\29\20const +8372:\28anonymous\20namespace\29::MipMapRec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +8373:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29.1 +8374:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29 +8375:\28anonymous\20namespace\29::MiddleOutShader::name\28\29\20const +8376:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8377:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8378:\28anonymous\20namespace\29::MiddleOutShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8379:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29.1 +8380:\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const +8381:\28anonymous\20namespace\29::MeshOp::programInfo\28\29 +8382:\28anonymous\20namespace\29::MeshOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8383:\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8384:\28anonymous\20namespace\29::MeshOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8385:\28anonymous\20namespace\29::MeshOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8386:\28anonymous\20namespace\29::MeshOp::name\28\29\20const +8387:\28anonymous\20namespace\29::MeshOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8388:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29.1 +8389:\28anonymous\20namespace\29::MeshGP::onTextureSampler\28int\29\20const +8390:\28anonymous\20namespace\29::MeshGP::name\28\29\20const +8391:\28anonymous\20namespace\29::MeshGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8392:\28anonymous\20namespace\29::MeshGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8393:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29.1 +8394:\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8395:\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8396:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +8397:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +8398:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +8399:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleBlender\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +8400:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMangledName\28char\20const*\29 +8401:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMainName\28\29 +8402:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +8403:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +8404:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +8405:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareFunction\28char\20const*\29 +8406:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29.1 +8407:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29 +8408:\28anonymous\20namespace\29::ImageFromPictureRec::getCategory\28\29\20const +8409:\28anonymous\20namespace\29::ImageFromPictureRec::bytesUsed\28\29\20const +8410:\28anonymous\20namespace\29::ImageFromPictureRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8411:\28anonymous\20namespace\29::HQDownSampler::buildLevel\28SkPixmap\20const&\2c\20SkPixmap\20const&\29 +8412:\28anonymous\20namespace\29::GaussPass::startBlur\28\29 +8413:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +8414:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +8415:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +8416:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29.1 +8417:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29 +8418:\28anonymous\20namespace\29::FillRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8419:\28anonymous\20namespace\29::FillRectOpImpl::programInfo\28\29 +8420:\28anonymous\20namespace\29::FillRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8421:\28anonymous\20namespace\29::FillRectOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8422:\28anonymous\20namespace\29::FillRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8423:\28anonymous\20namespace\29::FillRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8424:\28anonymous\20namespace\29::FillRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8425:\28anonymous\20namespace\29::FillRectOpImpl::name\28\29\20const +8426:\28anonymous\20namespace\29::FillRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8427:\28anonymous\20namespace\29::EllipticalRRectEffect::onMakeProgramImpl\28\29\20const +8428:\28anonymous\20namespace\29::EllipticalRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8429:\28anonymous\20namespace\29::EllipticalRRectEffect::name\28\29\20const +8430:\28anonymous\20namespace\29::EllipticalRRectEffect::clone\28\29\20const +8431:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +8432:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +8433:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29.1 +8434:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29 +8435:\28anonymous\20namespace\29::DrawableSubRun::unflattenSize\28\29\20const +8436:\28anonymous\20namespace\29::DrawableSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +8437:\28anonymous\20namespace\29::DrawableSubRun::doFlatten\28SkWriteBuffer&\29\20const +8438:\28anonymous\20namespace\29::DrawableSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +8439:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29.1 +8440:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29 +8441:\28anonymous\20namespace\29::DrawAtlasPathShader::onTextureSampler\28int\29\20const +8442:\28anonymous\20namespace\29::DrawAtlasPathShader::name\28\29\20const +8443:\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8444:\28anonymous\20namespace\29::DrawAtlasPathShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8445:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8446:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8447:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29.1 +8448:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29 +8449:\28anonymous\20namespace\29::DrawAtlasOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8450:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8451:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8452:\28anonymous\20namespace\29::DrawAtlasOpImpl::name\28\29\20const +8453:\28anonymous\20namespace\29::DrawAtlasOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8454:\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +8455:\28anonymous\20namespace\29::DirectMaskSubRun::unflattenSize\28\29\20const +8456:\28anonymous\20namespace\29::DirectMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +8457:\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +8458:\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +8459:\28anonymous\20namespace\29::DirectMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +8460:\28anonymous\20namespace\29::DirectMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +8461:\28anonymous\20namespace\29::DirectMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +8462:\28anonymous\20namespace\29::DirectMaskSubRun::MakeFromBuffer\28SkReadBuffer&\2c\20sktext::gpu::SubRunAllocator*\2c\20SkStrikeClient\20const*\29 +8463:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29.1 +8464:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29 +8465:\28anonymous\20namespace\29::DefaultPathOp::visitProxies\28std::__2::function\20const&\29\20const +8466:\28anonymous\20namespace\29::DefaultPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8467:\28anonymous\20namespace\29::DefaultPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8468:\28anonymous\20namespace\29::DefaultPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8469:\28anonymous\20namespace\29::DefaultPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8470:\28anonymous\20namespace\29::DefaultPathOp::name\28\29\20const +8471:\28anonymous\20namespace\29::DefaultPathOp::fixedFunctionFlags\28\29\20const +8472:\28anonymous\20namespace\29::DefaultPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8473:\28anonymous\20namespace\29::CircularRRectEffect::onMakeProgramImpl\28\29\20const +8474:\28anonymous\20namespace\29::CircularRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8475:\28anonymous\20namespace\29::CircularRRectEffect::name\28\29\20const +8476:\28anonymous\20namespace\29::CircularRRectEffect::clone\28\29\20const +8477:\28anonymous\20namespace\29::CircularRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +8478:\28anonymous\20namespace\29::CircularRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +8479:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29.1 +8480:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29 +8481:\28anonymous\20namespace\29::CachedTessellationsRec::getCategory\28\29\20const +8482:\28anonymous\20namespace\29::CachedTessellationsRec::bytesUsed\28\29\20const +8483:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29.1 +8484:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29.1 +8485:\28anonymous\20namespace\29::CacheImpl::set\28SkImageFilterCacheKey\20const&\2c\20SkImageFilter\20const*\2c\20skif::FilterResult\20const&\29 +8486:\28anonymous\20namespace\29::CacheImpl::purge\28\29 +8487:\28anonymous\20namespace\29::CacheImpl::purgeByImageFilter\28SkImageFilter\20const*\29 +8488:\28anonymous\20namespace\29::CacheImpl::get\28SkImageFilterCacheKey\20const&\2c\20skif::FilterResult*\29\20const +8489:\28anonymous\20namespace\29::BoundingBoxShader::name\28\29\20const +8490:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8491:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8492:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8493:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29.1 +8494:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29 +8495:\28anonymous\20namespace\29::AAHairlineOp::visitProxies\28std::__2::function\20const&\29\20const +8496:\28anonymous\20namespace\29::AAHairlineOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8497:\28anonymous\20namespace\29::AAHairlineOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8498:\28anonymous\20namespace\29::AAHairlineOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8499:\28anonymous\20namespace\29::AAHairlineOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8500:\28anonymous\20namespace\29::AAHairlineOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8501:\28anonymous\20namespace\29::AAHairlineOp::name\28\29\20const +8502:\28anonymous\20namespace\29::AAHairlineOp::fixedFunctionFlags\28\29\20const +8503:\28anonymous\20namespace\29::AAHairlineOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8504:YuvToRgbaRow +8505:YuvToRgba4444Row +8506:YuvToRgbRow +8507:YuvToRgb565Row +8508:YuvToBgraRow +8509:YuvToBgrRow +8510:YuvToArgbRow +8511:Write_CVT_Stretched +8512:Write_CVT +8513:WebPYuv444ToRgba_C +8514:WebPYuv444ToRgba4444_C +8515:WebPYuv444ToRgb_C +8516:WebPYuv444ToRgb565_C +8517:WebPYuv444ToBgra_C +8518:WebPYuv444ToBgr_C +8519:WebPYuv444ToArgb_C +8520:WebPRescalerImportRowShrink_C +8521:WebPRescalerImportRowExpand_C +8522:WebPRescalerExportRowShrink_C +8523:WebPRescalerExportRowExpand_C +8524:WebPMultRow_C +8525:WebPMultARGBRow_C +8526:WebPConvertRGBA32ToUV_C +8527:WebPConvertARGBToUV_C +8528:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29.1 +8529:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29 +8530:WebGLTextureImageGenerator::generateExternalTexture\28GrRecordingContext*\2c\20skgpu::Mipmapped\29 +8531:Vertish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +8532:Vertish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +8533:VerticalUnfilter_C +8534:VerticalFilter_C +8535:VertState::Triangles\28VertState*\29 +8536:VertState::TrianglesX\28VertState*\29 +8537:VertState::TriangleStrip\28VertState*\29 +8538:VertState::TriangleStripX\28VertState*\29 +8539:VertState::TriangleFan\28VertState*\29 +8540:VertState::TriangleFanX\28VertState*\29 +8541:VR4_C +8542:VP8LTransformColorInverse_C +8543:VP8LPredictor9_C +8544:VP8LPredictor8_C +8545:VP8LPredictor7_C +8546:VP8LPredictor6_C +8547:VP8LPredictor5_C +8548:VP8LPredictor4_C +8549:VP8LPredictor3_C +8550:VP8LPredictor2_C +8551:VP8LPredictor1_C +8552:VP8LPredictor13_C +8553:VP8LPredictor12_C +8554:VP8LPredictor11_C +8555:VP8LPredictor10_C +8556:VP8LPredictor0_C +8557:VP8LConvertBGRAToRGB_C +8558:VP8LConvertBGRAToRGBA_C +8559:VP8LConvertBGRAToRGBA4444_C +8560:VP8LConvertBGRAToRGB565_C +8561:VP8LConvertBGRAToBGR_C +8562:VP8LAddGreenToBlueAndRed_C +8563:VLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +8564:VLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +8565:VL4_C +8566:VFilter8i_C +8567:VFilter8_C +8568:VFilter16i_C +8569:VFilter16_C +8570:VE8uv_C +8571:VE4_C +8572:VE16_C +8573:UpsampleRgbaLinePair_C +8574:UpsampleRgba4444LinePair_C +8575:UpsampleRgbLinePair_C +8576:UpsampleRgb565LinePair_C +8577:UpsampleBgraLinePair_C +8578:UpsampleBgrLinePair_C +8579:UpsampleArgbLinePair_C +8580:UnresolvedCodepoints\28skia::textlayout::Paragraph&\29 +8581:TransformWHT_C +8582:TransformUV_C +8583:TransformTwo_C +8584:TransformDC_C +8585:TransformDCUV_C +8586:TransformAC3_C +8587:ToSVGString\28SkPath\20const&\29 +8588:ToCmds\28SkPath\20const&\29 +8589:TT_Set_MM_Blend +8590:TT_RunIns +8591:TT_Load_Simple_Glyph +8592:TT_Load_Glyph_Header +8593:TT_Load_Composite_Glyph +8594:TT_Get_Var_Design +8595:TT_Get_MM_Blend +8596:TT_Forget_Glyph_Frame +8597:TT_Access_Glyph_Frame +8598:TM8uv_C +8599:TM4_C +8600:TM16_C +8601:Sync +8602:SquareCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +8603:Sprite_D32_S32::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +8604:SkWuffsFrameHolder::onGetFrame\28int\29\20const +8605:SkWuffsCodec::~SkWuffsCodec\28\29.1 +8606:SkWuffsCodec::~SkWuffsCodec\28\29 +8607:SkWuffsCodec::onIncrementalDecode\28int*\29 +8608:SkWuffsCodec::onGetRepetitionCount\28\29 +8609:SkWuffsCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +8610:SkWuffsCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +8611:SkWuffsCodec::onGetFrameCount\28\29 +8612:SkWuffsCodec::getFrameHolder\28\29\20const +8613:SkWriteICCProfile\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +8614:SkWebpDecoder::IsWebp\28void\20const*\2c\20unsigned\20long\29 +8615:SkWebpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +8616:SkWebpCodec::~SkWebpCodec\28\29.1 +8617:SkWebpCodec::~SkWebpCodec\28\29 +8618:SkWebpCodec::onGetValidSubset\28SkIRect*\29\20const +8619:SkWebpCodec::onGetRepetitionCount\28\29 +8620:SkWebpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +8621:SkWebpCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +8622:SkWebpCodec::onGetFrameCount\28\29 +8623:SkWebpCodec::getFrameHolder\28\29\20const +8624:SkWebpCodec::FrameHolder::~FrameHolder\28\29.1 +8625:SkWebpCodec::FrameHolder::~FrameHolder\28\29 +8626:SkWebpCodec::FrameHolder::onGetFrame\28int\29\20const +8627:SkWeakRefCnt::internal_dispose\28\29\20const +8628:SkWbmpDecoder::IsWbmp\28void\20const*\2c\20unsigned\20long\29 +8629:SkWbmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +8630:SkWbmpCodec::~SkWbmpCodec\28\29.1 +8631:SkWbmpCodec::~SkWbmpCodec\28\29 +8632:SkWbmpCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +8633:SkWbmpCodec::onSkipScanlines\28int\29 +8634:SkWbmpCodec::onRewind\28\29 +8635:SkWbmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +8636:SkWbmpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +8637:SkWbmpCodec::getSampler\28bool\29 +8638:SkWbmpCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +8639:SkVertices::Builder*\20emscripten::internal::operator_new\28SkVertices::VertexMode&&\2c\20int&&\2c\20int&&\2c\20unsigned\20int&&\29 +8640:SkUserTypeface::~SkUserTypeface\28\29.1 +8641:SkUserTypeface::~SkUserTypeface\28\29 +8642:SkUserTypeface::onOpenStream\28int*\29\20const +8643:SkUserTypeface::onGetUPEM\28\29\20const +8644:SkUserTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8645:SkUserTypeface::onGetFamilyName\28SkString*\29\20const +8646:SkUserTypeface::onFilterRec\28SkScalerContextRec*\29\20const +8647:SkUserTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +8648:SkUserTypeface::onCountGlyphs\28\29\20const +8649:SkUserTypeface::onComputeBounds\28SkRect*\29\20const +8650:SkUserTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +8651:SkUserTypeface::getGlyphToUnicodeMap\28int*\29\20const +8652:SkUserScalerContext::~SkUserScalerContext\28\29 +8653:SkUserScalerContext::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +8654:SkUserScalerContext::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +8655:SkUserScalerContext::generateImage\28SkGlyph\20const&\2c\20void*\29 +8656:SkUserScalerContext::generateFontMetrics\28SkFontMetrics*\29 +8657:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29.1 +8658:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29 +8659:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onGetBounds\28\29 +8660:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onDraw\28SkCanvas*\29 +8661:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onApproximateBytesUsed\28\29 +8662:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29 +8663:SkUnicode_client::~SkUnicode_client\28\29.1 +8664:SkUnicode_client::~SkUnicode_client\28\29 +8665:SkUnicode_client::toUpper\28SkString\20const&\29 +8666:SkUnicode_client::reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29 +8667:SkUnicode_client::makeBreakIterator\28char\20const*\2c\20SkUnicode::BreakType\29 +8668:SkUnicode_client::makeBreakIterator\28SkUnicode::BreakType\29 +8669:SkUnicode_client::makeBidiIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +8670:SkUnicode_client::makeBidiIterator\28char\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +8671:SkUnicode_client::getWords\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +8672:SkUnicode_client::getBidiRegions\28char\20const*\2c\20int\2c\20SkUnicode::TextDirection\2c\20std::__2::vector>*\29 +8673:SkUnicode_client::copy\28\29 +8674:SkUnicode_client::computeCodeUnitFlags\28char16_t*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +8675:SkUnicode_client::computeCodeUnitFlags\28char*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +8676:SkUnicodeHardCodedCharProperties::isWhitespace\28int\29 +8677:SkUnicodeHardCodedCharProperties::isTabulation\28int\29 +8678:SkUnicodeHardCodedCharProperties::isSpace\28int\29 +8679:SkUnicodeHardCodedCharProperties::isIdeographic\28int\29 +8680:SkUnicodeHardCodedCharProperties::isHardBreak\28int\29 +8681:SkUnicodeHardCodedCharProperties::isControl\28int\29 +8682:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29.1 +8683:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29 +8684:SkUnicodeBidiRunIterator::endOfCurrentRun\28\29\20const +8685:SkUnicodeBidiRunIterator::currentLevel\28\29\20const +8686:SkUnicodeBidiRunIterator::consume\28\29 +8687:SkUnicodeBidiRunIterator::atEnd\28\29\20const +8688:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29.1 +8689:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29 +8690:SkTypeface_FreeTypeStream::onOpenStream\28int*\29\20const +8691:SkTypeface_FreeTypeStream::onMakeFontData\28\29\20const +8692:SkTypeface_FreeTypeStream::onMakeClone\28SkFontArguments\20const&\29\20const +8693:SkTypeface_FreeTypeStream::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8694:SkTypeface_FreeType::onGlyphMaskNeedsCurrentColor\28\29\20const +8695:SkTypeface_FreeType::onGetVariationDesignPosition\28SkFontArguments::VariationPosition::Coordinate*\2c\20int\29\20const +8696:SkTypeface_FreeType::onGetVariationDesignParameters\28SkFontParameters::Variation::Axis*\2c\20int\29\20const +8697:SkTypeface_FreeType::onGetUPEM\28\29\20const +8698:SkTypeface_FreeType::onGetTableTags\28unsigned\20int*\29\20const +8699:SkTypeface_FreeType::onGetTableData\28unsigned\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20void*\29\20const +8700:SkTypeface_FreeType::onGetPostScriptName\28SkString*\29\20const +8701:SkTypeface_FreeType::onGetKerningPairAdjustments\28unsigned\20short\20const*\2c\20int\2c\20int*\29\20const +8702:SkTypeface_FreeType::onGetAdvancedMetrics\28\29\20const +8703:SkTypeface_FreeType::onFilterRec\28SkScalerContextRec*\29\20const +8704:SkTypeface_FreeType::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +8705:SkTypeface_FreeType::onCreateFamilyNameIterator\28\29\20const +8706:SkTypeface_FreeType::onCountGlyphs\28\29\20const +8707:SkTypeface_FreeType::onCopyTableData\28unsigned\20int\29\20const +8708:SkTypeface_FreeType::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +8709:SkTypeface_FreeType::getPostScriptGlyphNames\28SkString*\29\20const +8710:SkTypeface_FreeType::getGlyphToUnicodeMap\28int*\29\20const +8711:SkTypeface_Empty::~SkTypeface_Empty\28\29 +8712:SkTypeface_Custom::~SkTypeface_Custom\28\29.1 +8713:SkTypeface_Custom::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8714:SkTypeface::onCopyTableData\28unsigned\20int\29\20const +8715:SkTypeface::onComputeBounds\28SkRect*\29\20const +8716:SkTrimPE::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +8717:SkTrimPE::getTypeName\28\29\20const +8718:SkTriColorShader::type\28\29\20const +8719:SkTriColorShader::isOpaque\28\29\20const +8720:SkTriColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +8721:SkTransformShader::type\28\29\20const +8722:SkTransformShader::isOpaque\28\29\20const +8723:SkTransformShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +8724:SkTQuad::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +8725:SkTQuad::setBounds\28SkDRect*\29\20const +8726:SkTQuad::ptAtT\28double\29\20const +8727:SkTQuad::make\28SkArenaAlloc&\29\20const +8728:SkTQuad::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +8729:SkTQuad::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +8730:SkTQuad::dxdyAtT\28double\29\20const +8731:SkTQuad::debugInit\28\29 +8732:SkTCubic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +8733:SkTCubic::setBounds\28SkDRect*\29\20const +8734:SkTCubic::ptAtT\28double\29\20const +8735:SkTCubic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +8736:SkTCubic::make\28SkArenaAlloc&\29\20const +8737:SkTCubic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +8738:SkTCubic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +8739:SkTCubic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +8740:SkTCubic::dxdyAtT\28double\29\20const +8741:SkTCubic::debugInit\28\29 +8742:SkTCubic::controlsInside\28\29\20const +8743:SkTCubic::collapsed\28\29\20const +8744:SkTConic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +8745:SkTConic::setBounds\28SkDRect*\29\20const +8746:SkTConic::ptAtT\28double\29\20const +8747:SkTConic::make\28SkArenaAlloc&\29\20const +8748:SkTConic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +8749:SkTConic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +8750:SkTConic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +8751:SkTConic::dxdyAtT\28double\29\20const +8752:SkTConic::debugInit\28\29 +8753:SkSwizzler::onSetSampleX\28int\29 +8754:SkSwizzler::fillWidth\28\29\20const +8755:SkSweepGradient::getTypeName\28\29\20const +8756:SkSweepGradient::flatten\28SkWriteBuffer&\29\20const +8757:SkSweepGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +8758:SkSweepGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +8759:SkSurface_Raster::~SkSurface_Raster\28\29.1 +8760:SkSurface_Raster::~SkSurface_Raster\28\29 +8761:SkSurface_Raster::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8762:SkSurface_Raster::onRestoreBackingMutability\28\29 +8763:SkSurface_Raster::onNewSurface\28SkImageInfo\20const&\29 +8764:SkSurface_Raster::onNewImageSnapshot\28SkIRect\20const*\29 +8765:SkSurface_Raster::onNewCanvas\28\29 +8766:SkSurface_Raster::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +8767:SkSurface_Raster::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +8768:SkSurface_Raster::imageInfo\28\29\20const +8769:SkSurface_Ganesh::~SkSurface_Ganesh\28\29.1 +8770:SkSurface_Ganesh::~SkSurface_Ganesh\28\29 +8771:SkSurface_Ganesh::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +8772:SkSurface_Ganesh::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8773:SkSurface_Ganesh::onWait\28int\2c\20GrBackendSemaphore\20const*\2c\20bool\29 +8774:SkSurface_Ganesh::onNewSurface\28SkImageInfo\20const&\29 +8775:SkSurface_Ganesh::onNewImageSnapshot\28SkIRect\20const*\29 +8776:SkSurface_Ganesh::onNewCanvas\28\29 +8777:SkSurface_Ganesh::onIsCompatible\28GrSurfaceCharacterization\20const&\29\20const +8778:SkSurface_Ganesh::onGetRecordingContext\28\29\20const +8779:SkSurface_Ganesh::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +8780:SkSurface_Ganesh::onDiscard\28\29 +8781:SkSurface_Ganesh::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +8782:SkSurface_Ganesh::onCharacterize\28GrSurfaceCharacterization*\29\20const +8783:SkSurface_Ganesh::onCapabilities\28\29 +8784:SkSurface_Ganesh::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +8785:SkSurface_Ganesh::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +8786:SkSurface_Ganesh::imageInfo\28\29\20const +8787:SkSurface_Base::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +8788:SkSurface::imageInfo\28\29\20const +8789:SkStrikeCache::~SkStrikeCache\28\29.1 +8790:SkStrikeCache::~SkStrikeCache\28\29 +8791:SkStrikeCache::findOrCreateScopedStrike\28SkStrikeSpec\20const&\29 +8792:SkStrike::~SkStrike\28\29.1 +8793:SkStrike::~SkStrike\28\29 +8794:SkStrike::strikePromise\28\29 +8795:SkStrike::roundingSpec\28\29\20const +8796:SkStrike::prepareForPath\28SkGlyph*\29 +8797:SkStrike::prepareForImage\28SkGlyph*\29 +8798:SkStrike::prepareForDrawable\28SkGlyph*\29 +8799:SkStrike::getDescriptor\28\29\20const +8800:SkSpriteBlitter_Memcpy::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +8801:SkSpriteBlitter::~SkSpriteBlitter\28\29.1 +8802:SkSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +8803:SkSpriteBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +8804:SkSpriteBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +8805:SkSpriteBlitter::blitH\28int\2c\20int\2c\20int\29 +8806:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29.1 +8807:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29 +8808:SkSpecialImage_Raster::onMakeSubset\28SkIRect\20const&\29\20const +8809:SkSpecialImage_Raster::getSize\28\29\20const +8810:SkSpecialImage_Raster::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +8811:SkSpecialImage_Raster::asImage\28\29\20const +8812:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29.1 +8813:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29 +8814:SkSpecialImage_Gpu::onMakeSubset\28SkIRect\20const&\29\20const +8815:SkSpecialImage_Gpu::getSize\28\29\20const +8816:SkSpecialImage_Gpu::asImage\28\29\20const +8817:SkSpecialImage::~SkSpecialImage\28\29 +8818:SkSpecialImage::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +8819:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29.1 +8820:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29 +8821:SkShaper::TrivialLanguageRunIterator::currentLanguage\28\29\20const +8822:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29.1 +8823:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29 +8824:SkShaper::TrivialBiDiRunIterator::currentLevel\28\29\20const +8825:SkShaderBase::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_0::__invoke\28SkRasterPipeline_CallbackCtx*\2c\20int\29 +8826:SkShaderBase::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +8827:SkScan::HairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8828:SkScan::HairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8829:SkScan::HairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8830:SkScan::AntiHairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8831:SkScan::AntiHairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8832:SkScan::AntiHairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8833:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8834:SkScalingCodec::onGetScaledDimensions\28float\29\20const +8835:SkScalingCodec::onDimensionsSupported\28SkISize\20const&\29 +8836:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29.1 +8837:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29 +8838:SkScalerContext_FreeType::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +8839:SkScalerContext_FreeType::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +8840:SkScalerContext_FreeType::generateImage\28SkGlyph\20const&\2c\20void*\29 +8841:SkScalerContext_FreeType::generateFontMetrics\28SkFontMetrics*\29 +8842:SkScalerContext_FreeType::generateDrawable\28SkGlyph\20const&\29 +8843:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::~SkScalerContext_Empty\28\29 +8844:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +8845:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +8846:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateFontMetrics\28SkFontMetrics*\29 +8847:SkSampledCodec::onGetSampledDimensions\28int\29\20const +8848:SkSampledCodec::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +8849:SkSRGBColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +8850:SkSRGBColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +8851:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_3::__invoke\28double\2c\20double\29 +8852:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_2::__invoke\28double\2c\20double\29 +8853:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_1::__invoke\28double\2c\20double\29 +8854:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_0::__invoke\28double\2c\20double\29 +8855:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29.1 +8856:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29 +8857:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29.1 +8858:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29 +8859:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +8860:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitExpressionPtr\28std::__2::unique_ptr>&\29 +8861:SkSL::count_returns_at_end_of_control_flow\28SkSL::FunctionDefinition\20const&\29::CountReturnsAtEndOfControlFlow::visitStatement\28SkSL::Statement\20const&\29 +8862:SkSL::\28anonymous\20namespace\29::VariableWriteVisitor::visitExpression\28SkSL::Expression\20const&\29 +8863:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8864:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitExpression\28SkSL::Expression\20const&\29 +8865:SkSL::\28anonymous\20namespace\29::ReturnsNonOpaqueColorVisitor::visitStatement\28SkSL::Statement\20const&\29 +8866:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitStatement\28SkSL::Statement\20const&\29 +8867:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8868:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitStatement\28SkSL::Statement\20const&\29 +8869:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8870:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitStatement\28SkSL::Statement\20const&\29 +8871:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8872:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitExpression\28SkSL::Expression\20const&\29 +8873:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8874:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +8875:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29.1 +8876:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29 +8877:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitExpression\28SkSL::Expression\20const&\29 +8878:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29.1 +8879:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29 +8880:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitStatement\28SkSL::Statement\20const&\29 +8881:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitExpression\28SkSL::Expression\20const&\29 +8882:SkSL::VectorType::isAllowedInES2\28\29\20const +8883:SkSL::VariableReference::clone\28SkSL::Position\29\20const +8884:SkSL::Variable::~Variable\28\29.1 +8885:SkSL::Variable::~Variable\28\29 +8886:SkSL::Variable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +8887:SkSL::Variable::mangledName\28\29\20const +8888:SkSL::Variable::layout\28\29\20const +8889:SkSL::Variable::description\28\29\20const +8890:SkSL::VarDeclaration::~VarDeclaration\28\29.1 +8891:SkSL::VarDeclaration::~VarDeclaration\28\29 +8892:SkSL::VarDeclaration::description\28\29\20const +8893:SkSL::TypeReference::clone\28SkSL::Position\29\20const +8894:SkSL::Type::minimumValue\28\29\20const +8895:SkSL::Type::maximumValue\28\29\20const +8896:SkSL::Type::fields\28\29\20const +8897:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29.1 +8898:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29 +8899:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::visitStatementPtr\28std::__2::unique_ptr>&\29 +8900:SkSL::Tracer::var\28int\2c\20int\29 +8901:SkSL::Tracer::scope\28int\29 +8902:SkSL::Tracer::line\28int\29 +8903:SkSL::Tracer::exit\28int\29 +8904:SkSL::Tracer::enter\28int\29 +8905:SkSL::ThreadContext::DefaultErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +8906:SkSL::TextureType::textureAccess\28\29\20const +8907:SkSL::TextureType::isMultisampled\28\29\20const +8908:SkSL::TextureType::isDepth\28\29\20const +8909:SkSL::TextureType::isArrayedTexture\28\29\20const +8910:SkSL::TernaryExpression::~TernaryExpression\28\29.1 +8911:SkSL::TernaryExpression::~TernaryExpression\28\29 +8912:SkSL::TernaryExpression::description\28SkSL::OperatorPrecedence\29\20const +8913:SkSL::TernaryExpression::clone\28SkSL::Position\29\20const +8914:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression&\29 +8915:SkSL::Swizzle::~Swizzle\28\29.1 +8916:SkSL::Swizzle::~Swizzle\28\29 +8917:SkSL::Swizzle::description\28SkSL::OperatorPrecedence\29\20const +8918:SkSL::Swizzle::clone\28SkSL::Position\29\20const +8919:SkSL::SwitchStatement::~SwitchStatement\28\29.1 +8920:SkSL::SwitchStatement::~SwitchStatement\28\29 +8921:SkSL::SwitchStatement::description\28\29\20const +8922:SkSL::SwitchCase::description\28\29\20const +8923:SkSL::StructType::slotType\28unsigned\20long\29\20const +8924:SkSL::StructType::isOrContainsUnsizedArray\28\29\20const +8925:SkSL::StructType::isOrContainsAtomic\28\29\20const +8926:SkSL::StructType::isOrContainsArray\28\29\20const +8927:SkSL::StructType::isInterfaceBlock\28\29\20const +8928:SkSL::StructType::isAllowedInES2\28\29\20const +8929:SkSL::StructType::fields\28\29\20const +8930:SkSL::StructDefinition::description\28\29\20const +8931:SkSL::StringStream::~StringStream\28\29.1 +8932:SkSL::StringStream::~StringStream\28\29 +8933:SkSL::StringStream::write\28void\20const*\2c\20unsigned\20long\29 +8934:SkSL::StringStream::writeText\28char\20const*\29 +8935:SkSL::StringStream::write8\28unsigned\20char\29 +8936:SkSL::SingleArgumentConstructor::~SingleArgumentConstructor\28\29 +8937:SkSL::Setting::description\28SkSL::OperatorPrecedence\29\20const +8938:SkSL::Setting::clone\28SkSL::Position\29\20const +8939:SkSL::ScalarType::priority\28\29\20const +8940:SkSL::ScalarType::numberKind\28\29\20const +8941:SkSL::ScalarType::minimumValue\28\29\20const +8942:SkSL::ScalarType::maximumValue\28\29\20const +8943:SkSL::ScalarType::isAllowedInES2\28\29\20const +8944:SkSL::ScalarType::bitWidth\28\29\20const +8945:SkSL::SamplerType::textureAccess\28\29\20const +8946:SkSL::SamplerType::isMultisampled\28\29\20const +8947:SkSL::SamplerType::isDepth\28\29\20const +8948:SkSL::SamplerType::isArrayedTexture\28\29\20const +8949:SkSL::SamplerType::dimensions\28\29\20const +8950:SkSL::ReturnStatement::description\28\29\20const +8951:SkSL::RP::VariableLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8952:SkSL::RP::VariableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8953:SkSL::RP::VariableLValue::isWritable\28\29\20const +8954:SkSL::RP::VariableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +8955:SkSL::RP::UnownedLValueSlice::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8956:SkSL::RP::UnownedLValueSlice::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8957:SkSL::RP::UnownedLValueSlice::fixedSlotRange\28SkSL::RP::Generator*\29 +8958:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29.1 +8959:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29 +8960:SkSL::RP::SwizzleLValue::swizzle\28\29 +8961:SkSL::RP::SwizzleLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8962:SkSL::RP::SwizzleLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8963:SkSL::RP::SwizzleLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +8964:SkSL::RP::ScratchLValue::~ScratchLValue\28\29.1 +8965:SkSL::RP::ScratchLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8966:SkSL::RP::ScratchLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +8967:SkSL::RP::LValueSlice::~LValueSlice\28\29.1 +8968:SkSL::RP::LValueSlice::~LValueSlice\28\29 +8969:SkSL::RP::LValue::~LValue\28\29.1 +8970:SkSL::RP::ImmutableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8971:SkSL::RP::ImmutableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +8972:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29.1 +8973:SkSL::RP::DynamicIndexLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8974:SkSL::RP::DynamicIndexLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +8975:SkSL::RP::DynamicIndexLValue::isWritable\28\29\20const +8976:SkSL::RP::DynamicIndexLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +8977:SkSL::ProgramVisitor::visitStatementPtr\28std::__2::unique_ptr>\20const&\29 +8978:SkSL::ProgramVisitor::visitExpressionPtr\28std::__2::unique_ptr>\20const&\29 +8979:SkSL::PrefixExpression::description\28SkSL::OperatorPrecedence\29\20const +8980:SkSL::PrefixExpression::clone\28SkSL::Position\29\20const +8981:SkSL::PostfixExpression::description\28SkSL::OperatorPrecedence\29\20const +8982:SkSL::PostfixExpression::clone\28SkSL::Position\29\20const +8983:SkSL::Poison::description\28SkSL::OperatorPrecedence\29\20const +8984:SkSL::Poison::clone\28SkSL::Position\29\20const +8985:SkSL::PipelineStage::Callbacks::getMainName\28\29 +8986:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29.1 +8987:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29 +8988:SkSL::Parser::Checkpoint::ForwardingErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +8989:SkSL::Nop::description\28\29\20const +8990:SkSL::MultiArgumentConstructor::~MultiArgumentConstructor\28\29 +8991:SkSL::ModifiersDeclaration::description\28\29\20const +8992:SkSL::MethodReference::description\28SkSL::OperatorPrecedence\29\20const +8993:SkSL::MethodReference::clone\28SkSL::Position\29\20const +8994:SkSL::MatrixType::slotCount\28\29\20const +8995:SkSL::MatrixType::rows\28\29\20const +8996:SkSL::MatrixType::isAllowedInES2\28\29\20const +8997:SkSL::LiteralType::minimumValue\28\29\20const +8998:SkSL::LiteralType::maximumValue\28\29\20const +8999:SkSL::Literal::getConstantValue\28int\29\20const +9000:SkSL::Literal::description\28SkSL::OperatorPrecedence\29\20const +9001:SkSL::Literal::compareConstant\28SkSL::Expression\20const&\29\20const +9002:SkSL::Literal::clone\28SkSL::Position\29\20const +9003:SkSL::Intrinsics::\28anonymous\20namespace\29::finalize_distance\28double\29 +9004:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_uintBitsToFloat\28double\2c\20double\2c\20double\29 +9005:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_trunc\28double\2c\20double\2c\20double\29 +9006:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tanh\28double\2c\20double\2c\20double\29 +9007:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tan\28double\2c\20double\2c\20double\29 +9008:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28double\2c\20double\2c\20double\29 +9009:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_step\28double\2c\20double\2c\20double\29 +9010:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sqrt\28double\2c\20double\2c\20double\29 +9011:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_smoothstep\28double\2c\20double\2c\20double\29 +9012:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sinh\28double\2c\20double\2c\20double\29 +9013:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sin\28double\2c\20double\2c\20double\29 +9014:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_saturate\28double\2c\20double\2c\20double\29 +9015:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_radians\28double\2c\20double\2c\20double\29 +9016:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_pow\28double\2c\20double\2c\20double\29 +9017:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mod\28double\2c\20double\2c\20double\29 +9018:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mix\28double\2c\20double\2c\20double\29 +9019:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_min\28double\2c\20double\2c\20double\29 +9020:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_max\28double\2c\20double\2c\20double\29 +9021:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log\28double\2c\20double\2c\20double\29 +9022:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log2\28double\2c\20double\2c\20double\29 +9023:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_inversesqrt\28double\2c\20double\2c\20double\29 +9024:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_intBitsToFloat\28double\2c\20double\2c\20double\29 +9025:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fract\28double\2c\20double\2c\20double\29 +9026:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fma\28double\2c\20double\2c\20double\29 +9027:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floor\28double\2c\20double\2c\20double\29 +9028:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToUint\28double\2c\20double\2c\20double\29 +9029:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToInt\28double\2c\20double\2c\20double\29 +9030:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp\28double\2c\20double\2c\20double\29 +9031:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp2\28double\2c\20double\2c\20double\29 +9032:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_div\28double\2c\20double\2c\20double\29 +9033:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_degrees\28double\2c\20double\2c\20double\29 +9034:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cosh\28double\2c\20double\2c\20double\29 +9035:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cos\28double\2c\20double\2c\20double\29 +9036:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_clamp\28double\2c\20double\2c\20double\29 +9037:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_ceil\28double\2c\20double\2c\20double\29 +9038:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atanh\28double\2c\20double\2c\20double\29 +9039:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan\28double\2c\20double\2c\20double\29 +9040:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan2\28double\2c\20double\2c\20double\29 +9041:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asinh\28double\2c\20double\2c\20double\29 +9042:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asin\28double\2c\20double\2c\20double\29 +9043:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28double\2c\20double\2c\20double\29 +9044:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acosh\28double\2c\20double\2c\20double\29 +9045:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acos\28double\2c\20double\2c\20double\29 +9046:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_abs\28double\2c\20double\2c\20double\29 +9047:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_notEqual\28double\2c\20double\29 +9048:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThan\28double\2c\20double\29 +9049:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThanEqual\28double\2c\20double\29 +9050:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThan\28double\2c\20double\29 +9051:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThanEqual\28double\2c\20double\29 +9052:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_equal\28double\2c\20double\29 +9053:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_dot\28double\2c\20double\2c\20double\29 +9054:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_distance\28double\2c\20double\2c\20double\29 +9055:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_any\28double\2c\20double\2c\20double\29 +9056:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_all\28double\2c\20double\2c\20double\29 +9057:SkSL::InterfaceBlock::~InterfaceBlock\28\29.1 +9058:SkSL::InterfaceBlock::description\28\29\20const +9059:SkSL::IndexExpression::~IndexExpression\28\29.1 +9060:SkSL::IndexExpression::~IndexExpression\28\29 +9061:SkSL::IndexExpression::description\28SkSL::OperatorPrecedence\29\20const +9062:SkSL::IndexExpression::clone\28SkSL::Position\29\20const +9063:SkSL::IfStatement::~IfStatement\28\29.1 +9064:SkSL::IfStatement::~IfStatement\28\29 +9065:SkSL::IfStatement::description\28\29\20const +9066:SkSL::GlobalVarDeclaration::description\28\29\20const +9067:SkSL::GenericType::slotType\28unsigned\20long\29\20const +9068:SkSL::GenericType::coercibleTypes\28\29\20const +9069:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29.1 +9070:SkSL::FunctionReference::description\28SkSL::OperatorPrecedence\29\20const +9071:SkSL::FunctionReference::clone\28SkSL::Position\29\20const +9072:SkSL::FunctionPrototype::description\28\29\20const +9073:SkSL::FunctionDefinition::description\28\29\20const +9074:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::~Finalizer\28\29.1 +9075:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::~Finalizer\28\29 +9076:SkSL::FunctionCall::description\28SkSL::OperatorPrecedence\29\20const +9077:SkSL::FunctionCall::clone\28SkSL::Position\29\20const +9078:SkSL::ForStatement::~ForStatement\28\29.1 +9079:SkSL::ForStatement::~ForStatement\28\29 +9080:SkSL::ForStatement::description\28\29\20const +9081:SkSL::FieldSymbol::description\28\29\20const +9082:SkSL::FieldAccess::clone\28SkSL::Position\29\20const +9083:SkSL::Extension::description\28\29\20const +9084:SkSL::ExtendedVariable::~ExtendedVariable\28\29.1 +9085:SkSL::ExtendedVariable::~ExtendedVariable\28\29 +9086:SkSL::ExtendedVariable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +9087:SkSL::ExtendedVariable::mangledName\28\29\20const +9088:SkSL::ExtendedVariable::interfaceBlock\28\29\20const +9089:SkSL::ExtendedVariable::detachDeadInterfaceBlock\28\29 +9090:SkSL::ExpressionStatement::description\28\29\20const +9091:SkSL::Expression::getConstantValue\28int\29\20const +9092:SkSL::EmptyExpression::description\28SkSL::OperatorPrecedence\29\20const +9093:SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +9094:SkSL::DoStatement::~DoStatement\28\29.1 +9095:SkSL::DoStatement::~DoStatement\28\29 +9096:SkSL::DoStatement::description\28\29\20const +9097:SkSL::DiscardStatement::description\28\29\20const +9098:SkSL::DebugTracePriv::~DebugTracePriv\28\29.1 +9099:SkSL::CountReturnsWithLimit::visitStatement\28SkSL::Statement\20const&\29 +9100:SkSL::ContinueStatement::description\28\29\20const +9101:SkSL::ConstructorStruct::clone\28SkSL::Position\29\20const +9102:SkSL::ConstructorSplat::getConstantValue\28int\29\20const +9103:SkSL::ConstructorSplat::clone\28SkSL::Position\29\20const +9104:SkSL::ConstructorScalarCast::clone\28SkSL::Position\29\20const +9105:SkSL::ConstructorMatrixResize::getConstantValue\28int\29\20const +9106:SkSL::ConstructorMatrixResize::clone\28SkSL::Position\29\20const +9107:SkSL::ConstructorDiagonalMatrix::getConstantValue\28int\29\20const +9108:SkSL::ConstructorDiagonalMatrix::clone\28SkSL::Position\29\20const +9109:SkSL::ConstructorCompoundCast::clone\28SkSL::Position\29\20const +9110:SkSL::ConstructorCompound::clone\28SkSL::Position\29\20const +9111:SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +9112:SkSL::ConstructorArray::clone\28SkSL::Position\29\20const +9113:SkSL::Compiler::CompilerErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +9114:SkSL::CodeGenerator::~CodeGenerator\28\29 +9115:SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +9116:SkSL::ChildCall::clone\28SkSL::Position\29\20const +9117:SkSL::BreakStatement::description\28\29\20const +9118:SkSL::Block::~Block\28\29.1 +9119:SkSL::Block::~Block\28\29 +9120:SkSL::Block::isEmpty\28\29\20const +9121:SkSL::Block::description\28\29\20const +9122:SkSL::BinaryExpression::~BinaryExpression\28\29.1 +9123:SkSL::BinaryExpression::~BinaryExpression\28\29 +9124:SkSL::BinaryExpression::description\28SkSL::OperatorPrecedence\29\20const +9125:SkSL::BinaryExpression::clone\28SkSL::Position\29\20const +9126:SkSL::ArrayType::slotType\28unsigned\20long\29\20const +9127:SkSL::ArrayType::slotCount\28\29\20const +9128:SkSL::ArrayType::isUnsizedArray\28\29\20const +9129:SkSL::ArrayType::isOrContainsUnsizedArray\28\29\20const +9130:SkSL::ArrayType::isOrContainsAtomic\28\29\20const +9131:SkSL::AnyConstructor::getConstantValue\28int\29\20const +9132:SkSL::AnyConstructor::description\28SkSL::OperatorPrecedence\29\20const +9133:SkSL::AnyConstructor::compareConstant\28SkSL::Expression\20const&\29\20const +9134:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29::IsDynamicallyUniformExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +9135:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29::IsCompileTimeConstantVisitor::visitExpression\28SkSL::Expression\20const&\29 +9136:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29::HasSideEffectsVisitor::visitExpression\28SkSL::Expression\20const&\29 +9137:SkSL::Analysis::ContainsVariable\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29::ContainsVariableVisitor::visitExpression\28SkSL::Expression\20const&\29 +9138:SkSL::Analysis::ContainsRTAdjust\28SkSL::Expression\20const&\29::ContainsRTAdjustVisitor::visitExpression\28SkSL::Expression\20const&\29 +9139:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29.1 +9140:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29 +9141:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitStatement\28SkSL::Statement\20const&\29 +9142:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitExpression\28SkSL::Expression\20const&\29 +9143:SkSL::AliasType::textureAccess\28\29\20const +9144:SkSL::AliasType::slotType\28unsigned\20long\29\20const +9145:SkSL::AliasType::slotCount\28\29\20const +9146:SkSL::AliasType::rows\28\29\20const +9147:SkSL::AliasType::priority\28\29\20const +9148:SkSL::AliasType::isVector\28\29\20const +9149:SkSL::AliasType::isUnsizedArray\28\29\20const +9150:SkSL::AliasType::isStruct\28\29\20const +9151:SkSL::AliasType::isScalar\28\29\20const +9152:SkSL::AliasType::isMultisampled\28\29\20const +9153:SkSL::AliasType::isMatrix\28\29\20const +9154:SkSL::AliasType::isLiteral\28\29\20const +9155:SkSL::AliasType::isInterfaceBlock\28\29\20const +9156:SkSL::AliasType::isDepth\28\29\20const +9157:SkSL::AliasType::isArrayedTexture\28\29\20const +9158:SkSL::AliasType::isArray\28\29\20const +9159:SkSL::AliasType::dimensions\28\29\20const +9160:SkSL::AliasType::componentType\28\29\20const +9161:SkSL::AliasType::columns\28\29\20const +9162:SkSL::AliasType::coercibleTypes\28\29\20const +9163:SkRuntimeShader::~SkRuntimeShader\28\29.1 +9164:SkRuntimeShader::type\28\29\20const +9165:SkRuntimeShader::isOpaque\28\29\20const +9166:SkRuntimeShader::getTypeName\28\29\20const +9167:SkRuntimeShader::flatten\28SkWriteBuffer&\29\20const +9168:SkRuntimeShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9169:SkRuntimeEffect::~SkRuntimeEffect\28\29.1 +9170:SkRuntimeEffect::MakeFromSource\28SkString\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +9171:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29.1 +9172:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29 +9173:SkRuntimeColorFilter::onIsAlphaUnchanged\28\29\20const +9174:SkRuntimeColorFilter::getTypeName\28\29\20const +9175:SkRuntimeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9176:SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +9177:SkRuntimeBlender::~SkRuntimeBlender\28\29 +9178:SkRuntimeBlender::onAppendStages\28SkStageRec\20const&\29\20const +9179:SkRuntimeBlender::getTypeName\28\29\20const +9180:SkRgnClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9181:SkRgnClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9182:SkRgnClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9183:SkRgnClipBlitter::blitH\28int\2c\20int\2c\20int\29 +9184:SkRgnClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +9185:SkRgnClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9186:SkRgnBuilder::~SkRgnBuilder\28\29.1 +9187:SkRgnBuilder::blitH\28int\2c\20int\2c\20int\29 +9188:SkResourceCache::SetTotalByteLimit\28unsigned\20long\29 +9189:SkResourceCache::GetTotalBytesUsed\28\29 +9190:SkResourceCache::GetTotalByteLimit\28\29 +9191:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::~Result\28\29.1 +9192:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::~Result\28\29 +9193:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::rowBytes\28int\29\20const +9194:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::data\28int\29\20const +9195:SkRefCntSet::~SkRefCntSet\28\29.1 +9196:SkRefCntSet::incPtr\28void*\29 +9197:SkRefCntSet::decPtr\28void*\29 +9198:SkRectClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9199:SkRectClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9200:SkRectClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9201:SkRectClipBlitter::blitH\28int\2c\20int\2c\20int\29 +9202:SkRectClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +9203:SkRectClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9204:SkRecorder::~SkRecorder\28\29.1 +9205:SkRecorder::~SkRecorder\28\29 +9206:SkRecorder::willSave\28\29 +9207:SkRecorder::onResetClip\28\29 +9208:SkRecorder::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9209:SkRecorder::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9210:SkRecorder::onDrawSlug\28sktext::gpu::Slug\20const*\29 +9211:SkRecorder::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +9212:SkRecorder::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9213:SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9214:SkRecorder::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9215:SkRecorder::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9216:SkRecorder::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +9217:SkRecorder::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +9218:SkRecorder::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9219:SkRecorder::onDrawPaint\28SkPaint\20const&\29 +9220:SkRecorder::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9221:SkRecorder::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +9222:SkRecorder::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9223:SkRecorder::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +9224:SkRecorder::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9225:SkRecorder::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +9226:SkRecorder::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9227:SkRecorder::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9228:SkRecorder::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +9229:SkRecorder::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9230:SkRecorder::onDrawBehind\28SkPaint\20const&\29 +9231:SkRecorder::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +9232:SkRecorder::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +9233:SkRecorder::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +9234:SkRecorder::onDoSaveBehind\28SkRect\20const*\29 +9235:SkRecorder::onClipShader\28sk_sp\2c\20SkClipOp\29 +9236:SkRecorder::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9237:SkRecorder::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9238:SkRecorder::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9239:SkRecorder::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9240:SkRecorder::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +9241:SkRecorder::didTranslate\28float\2c\20float\29 +9242:SkRecorder::didSetM44\28SkM44\20const&\29 +9243:SkRecorder::didScale\28float\2c\20float\29 +9244:SkRecorder::didRestore\28\29 +9245:SkRecorder::didConcat44\28SkM44\20const&\29 +9246:SkRecordedDrawable::~SkRecordedDrawable\28\29.1 +9247:SkRecordedDrawable::~SkRecordedDrawable\28\29 +9248:SkRecordedDrawable::onMakePictureSnapshot\28\29 +9249:SkRecordedDrawable::onGetBounds\28\29 +9250:SkRecordedDrawable::onDraw\28SkCanvas*\29 +9251:SkRecordedDrawable::onApproximateBytesUsed\28\29 +9252:SkRecordedDrawable::getTypeName\28\29\20const +9253:SkRecordedDrawable::flatten\28SkWriteBuffer&\29\20const +9254:SkRecord::~SkRecord\28\29.1 +9255:SkRecord::~SkRecord\28\29 +9256:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29.1 +9257:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29 +9258:SkRasterPipelineSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +9259:SkRasterPipelineSpriteBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9260:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29.1 +9261:SkRasterPipelineBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9262:SkRasterPipelineBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9263:SkRasterPipelineBlitter::blitH\28int\2c\20int\2c\20int\29 +9264:SkRasterPipelineBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9265:SkRasterPipelineBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9266:SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9267:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_3::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +9268:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_2::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +9269:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_1::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +9270:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_0::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +9271:SkRadialGradient::getTypeName\28\29\20const +9272:SkRadialGradient::flatten\28SkWriteBuffer&\29\20const +9273:SkRadialGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9274:SkRadialGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +9275:SkRTree::~SkRTree\28\29.1 +9276:SkRTree::~SkRTree\28\29 +9277:SkRTree::search\28SkRect\20const&\2c\20std::__2::vector>*\29\20const +9278:SkRTree::insert\28SkRect\20const*\2c\20int\29 +9279:SkRTree::bytesUsed\28\29\20const +9280:SkPtrSet::~SkPtrSet\28\29 +9281:SkPngNormalDecoder::~SkPngNormalDecoder\28\29 +9282:SkPngNormalDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +9283:SkPngNormalDecoder::decode\28int*\29 +9284:SkPngNormalDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +9285:SkPngNormalDecoder::RowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +9286:SkPngNormalDecoder::AllRowsCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +9287:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29.1 +9288:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29 +9289:SkPngInterlacedDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +9290:SkPngInterlacedDecoder::decode\28int*\29 +9291:SkPngInterlacedDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +9292:SkPngInterlacedDecoder::InterlacedRowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +9293:SkPngEncoderImpl::~SkPngEncoderImpl\28\29.1 +9294:SkPngEncoderImpl::~SkPngEncoderImpl\28\29 +9295:SkPngEncoderImpl::onEncodeRows\28int\29 +9296:SkPngDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9297:SkPngCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9298:SkPngCodec::onRewind\28\29 +9299:SkPngCodec::onIncrementalDecode\28int*\29 +9300:SkPngCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9301:SkPngCodec::getSampler\28bool\29 +9302:SkPngCodec::createColorTable\28SkImageInfo\20const&\29 +9303:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_2::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +9304:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_1::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +9305:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_0::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +9306:SkPixelRef::~SkPixelRef\28\29.1 +9307:SkPictureShader::~SkPictureShader\28\29.1 +9308:SkPictureShader::~SkPictureShader\28\29 +9309:SkPictureShader::type\28\29\20const +9310:SkPictureShader::getTypeName\28\29\20const +9311:SkPictureShader::flatten\28SkWriteBuffer&\29\20const +9312:SkPictureShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9313:SkPictureRecorder*\20emscripten::internal::operator_new\28\29 +9314:SkPictureRecord::~SkPictureRecord\28\29.1 +9315:SkPictureRecord::willSave\28\29 +9316:SkPictureRecord::willRestore\28\29 +9317:SkPictureRecord::onResetClip\28\29 +9318:SkPictureRecord::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9319:SkPictureRecord::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9320:SkPictureRecord::onDrawSlug\28sktext::gpu::Slug\20const*\29 +9321:SkPictureRecord::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +9322:SkPictureRecord::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9323:SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9324:SkPictureRecord::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9325:SkPictureRecord::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9326:SkPictureRecord::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +9327:SkPictureRecord::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +9328:SkPictureRecord::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9329:SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +9330:SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9331:SkPictureRecord::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9332:SkPictureRecord::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +9333:SkPictureRecord::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9334:SkPictureRecord::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9335:SkPictureRecord::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9336:SkPictureRecord::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +9337:SkPictureRecord::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9338:SkPictureRecord::onDrawBehind\28SkPaint\20const&\29 +9339:SkPictureRecord::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +9340:SkPictureRecord::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +9341:SkPictureRecord::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +9342:SkPictureRecord::onDoSaveBehind\28SkRect\20const*\29 +9343:SkPictureRecord::onClipShader\28sk_sp\2c\20SkClipOp\29 +9344:SkPictureRecord::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9345:SkPictureRecord::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9346:SkPictureRecord::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9347:SkPictureRecord::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9348:SkPictureRecord::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +9349:SkPictureRecord::didTranslate\28float\2c\20float\29 +9350:SkPictureRecord::didSetM44\28SkM44\20const&\29 +9351:SkPictureRecord::didScale\28float\2c\20float\29 +9352:SkPictureRecord::didConcat44\28SkM44\20const&\29 +9353:SkPictureData::serialize\28SkWStream*\2c\20SkSerialProcs\20const&\2c\20SkRefCntSet*\2c\20bool\29\20const::DevNull::write\28void\20const*\2c\20unsigned\20long\29 +9354:SkPerlinNoiseShader::type\28\29\20const +9355:SkPerlinNoiseShader::getTypeName\28\29\20const +9356:SkPerlinNoiseShader::flatten\28SkWriteBuffer&\29\20const +9357:SkPath::setIsVolatile\28bool\29 +9358:SkPath::setFillType\28SkPathFillType\29 +9359:SkPath::isVolatile\28\29\20const +9360:SkPath::getFillType\28\29\20const +9361:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29.1 +9362:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29 +9363:SkPath2DPathEffectImpl::next\28SkPoint\20const&\2c\20int\2c\20int\2c\20SkPath*\29\20const +9364:SkPath2DPathEffectImpl::getTypeName\28\29\20const +9365:SkPath2DPathEffectImpl::getFactory\28\29\20const +9366:SkPath2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9367:SkPath2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9368:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29.1 +9369:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29 +9370:SkPath1DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9371:SkPath1DPathEffectImpl::next\28SkPath*\2c\20float\2c\20SkPathMeasure&\29\20const +9372:SkPath1DPathEffectImpl::getTypeName\28\29\20const +9373:SkPath1DPathEffectImpl::getFactory\28\29\20const +9374:SkPath1DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9375:SkPath1DPathEffectImpl::begin\28float\29\20const +9376:SkPath1DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9377:SkPath*\20emscripten::internal::operator_new\28\29 +9378:SkPairPathEffect::~SkPairPathEffect\28\29.1 +9379:SkPaint::setDither\28bool\29 +9380:SkPaint::setAntiAlias\28bool\29 +9381:SkPaint::getStrokeMiter\28\29\20const +9382:SkPaint::getStrokeJoin\28\29\20const +9383:SkPaint::getStrokeCap\28\29\20const +9384:SkPaint*\20emscripten::internal::operator_new\28\29 +9385:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29.1 +9386:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29 +9387:SkOTUtils::LocalizedStrings_SingleName::next\28SkTypeface::LocalizedString*\29 +9388:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29.1 +9389:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29 +9390:SkOTUtils::LocalizedStrings_NameTable::next\28SkTypeface::LocalizedString*\29 +9391:SkNoPixelsDevice::~SkNoPixelsDevice\28\29.1 +9392:SkNoPixelsDevice::~SkNoPixelsDevice\28\29 +9393:SkNoPixelsDevice::replaceClip\28SkIRect\20const&\29 +9394:SkNoPixelsDevice::pushClipStack\28\29 +9395:SkNoPixelsDevice::popClipStack\28\29 +9396:SkNoPixelsDevice::onClipShader\28sk_sp\29 +9397:SkNoPixelsDevice::isClipWideOpen\28\29\20const +9398:SkNoPixelsDevice::isClipRect\28\29\20const +9399:SkNoPixelsDevice::isClipEmpty\28\29\20const +9400:SkNoPixelsDevice::isClipAntiAliased\28\29\20const +9401:SkNoPixelsDevice::devClipBounds\28\29\20const +9402:SkNoPixelsDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9403:SkNoPixelsDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +9404:SkNoPixelsDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +9405:SkNoPixelsDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +9406:SkNoPixelsDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +9407:SkNoDrawCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9408:SkNoDrawCanvas::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +9409:SkMipmap::~SkMipmap\28\29.1 +9410:SkMipmap::~SkMipmap\28\29 +9411:SkMipmap::onDataChange\28void*\2c\20void*\29 +9412:SkMemoryStream::~SkMemoryStream\28\29.1 +9413:SkMemoryStream::~SkMemoryStream\28\29 +9414:SkMemoryStream::setMemory\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +9415:SkMemoryStream::seek\28unsigned\20long\29 +9416:SkMemoryStream::rewind\28\29 +9417:SkMemoryStream::read\28void*\2c\20unsigned\20long\29 +9418:SkMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +9419:SkMemoryStream::onFork\28\29\20const +9420:SkMemoryStream::onDuplicate\28\29\20const +9421:SkMemoryStream::move\28long\29 +9422:SkMemoryStream::isAtEnd\28\29\20const +9423:SkMemoryStream::getMemoryBase\28\29 +9424:SkMemoryStream::getLength\28\29\20const +9425:SkMatrixColorFilter::onIsAlphaUnchanged\28\29\20const +9426:SkMatrixColorFilter::onAsAColorMatrix\28float*\29\20const +9427:SkMatrixColorFilter::getTypeName\28\29\20const +9428:SkMatrixColorFilter::flatten\28SkWriteBuffer&\29\20const +9429:SkMatrixColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9430:SkMatrix::Trans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9431:SkMatrix::Trans_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9432:SkMatrix::Scale_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9433:SkMatrix::Scale_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9434:SkMatrix::ScaleTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9435:SkMatrix::Poly4Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +9436:SkMatrix::Poly3Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +9437:SkMatrix::Poly2Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +9438:SkMatrix::Persp_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9439:SkMatrix::Persp_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9440:SkMatrix::Identity_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9441:SkMatrix::Identity_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9442:SkMatrix::Affine_vpts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9443:SkMaskSwizzler::onSetSampleX\28int\29 +9444:SkMaskFilterBase::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9445:SkMaskFilterBase::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9446:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29.1 +9447:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29 +9448:SkMakePixelRefWithProc\28int\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29::PixelRef::~PixelRef\28\29.1 +9449:SkMakePixelRefWithProc\28int\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29::PixelRef::~PixelRef\28\29 +9450:SkLumaColorFilter::Make\28\29 +9451:SkLocalMatrixShader::~SkLocalMatrixShader\28\29.1 +9452:SkLocalMatrixShader::~SkLocalMatrixShader\28\29 +9453:SkLocalMatrixShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +9454:SkLocalMatrixShader::makeAsALocalMatrixShader\28SkMatrix*\29\20const +9455:SkLocalMatrixShader::getTypeName\28\29\20const +9456:SkLocalMatrixShader::flatten\28SkWriteBuffer&\29\20const +9457:SkLocalMatrixShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9458:SkLocalMatrixShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9459:SkLinearGradient::getTypeName\28\29\20const +9460:SkLinearGradient::flatten\28SkWriteBuffer&\29\20const +9461:SkLinearGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9462:SkLine2DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9463:SkLine2DPathEffectImpl::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +9464:SkLine2DPathEffectImpl::getTypeName\28\29\20const +9465:SkLine2DPathEffectImpl::getFactory\28\29\20const +9466:SkLine2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9467:SkLine2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9468:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29.1 +9469:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29 +9470:SkJpegMetadataDecoderImpl::getICCProfileData\28bool\29\20const +9471:SkJpegMetadataDecoderImpl::getExifMetadata\28bool\29\20const +9472:SkJpegMemorySourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9473:SkJpegMemorySourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9474:SkJpegDecoder::IsJpeg\28void\20const*\2c\20unsigned\20long\29 +9475:SkJpegDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9476:SkJpegCodec::~SkJpegCodec\28\29.1 +9477:SkJpegCodec::~SkJpegCodec\28\29 +9478:SkJpegCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9479:SkJpegCodec::onSkipScanlines\28int\29 +9480:SkJpegCodec::onRewind\28\29 +9481:SkJpegCodec::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +9482:SkJpegCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +9483:SkJpegCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9484:SkJpegCodec::onGetScaledDimensions\28float\29\20const +9485:SkJpegCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9486:SkJpegCodec::onDimensionsSupported\28SkISize\20const&\29 +9487:SkJpegCodec::getSampler\28bool\29 +9488:SkJpegCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9489:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29.1 +9490:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29 +9491:SkJpegBufferedSourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9492:SkJpegBufferedSourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9493:SkJpegBufferedSourceMgr::fillInputBuffer\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9494:SkImage_Raster::~SkImage_Raster\28\29.1 +9495:SkImage_Raster::~SkImage_Raster\28\29 +9496:SkImage_Raster::onReinterpretColorSpace\28sk_sp\29\20const +9497:SkImage_Raster::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +9498:SkImage_Raster::onPeekPixels\28SkPixmap*\29\20const +9499:SkImage_Raster::onPeekMips\28\29\20const +9500:SkImage_Raster::onPeekBitmap\28\29\20const +9501:SkImage_Raster::onMakeWithMipmaps\28sk_sp\29\20const +9502:SkImage_Raster::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +9503:SkImage_Raster::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9504:SkImage_Raster::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +9505:SkImage_Raster::onHasMipmaps\28\29\20const +9506:SkImage_Raster::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +9507:SkImage_Raster::notifyAddedToRasterCache\28\29\20const +9508:SkImage_Raster::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +9509:SkImage_LazyTexture::readPixelsProxy\28GrDirectContext*\2c\20SkPixmap\20const&\29\20const +9510:SkImage_LazyTexture::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9511:SkImage_Lazy::~SkImage_Lazy\28\29 +9512:SkImage_Lazy::onReinterpretColorSpace\28sk_sp\29\20const +9513:SkImage_Lazy::onRefEncoded\28\29\20const +9514:SkImage_Lazy::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +9515:SkImage_Lazy::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +9516:SkImage_Lazy::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9517:SkImage_Lazy::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +9518:SkImage_Lazy::onIsProtected\28\29\20const +9519:SkImage_Lazy::isValid\28GrRecordingContext*\29\20const +9520:SkImage_Lazy::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +9521:SkImage_GaneshBase::~SkImage_GaneshBase\28\29 +9522:SkImage_GaneshBase::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +9523:SkImage_GaneshBase::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9524:SkImage_GaneshBase::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +9525:SkImage_GaneshBase::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +9526:SkImage_GaneshBase::isValid\28GrRecordingContext*\29\20const +9527:SkImage_GaneshBase::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +9528:SkImage_GaneshBase::directContext\28\29\20const +9529:SkImage_Ganesh::~SkImage_Ganesh\28\29.1 +9530:SkImage_Ganesh::textureSize\28\29\20const +9531:SkImage_Ganesh::onReinterpretColorSpace\28sk_sp\29\20const +9532:SkImage_Ganesh::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +9533:SkImage_Ganesh::onIsProtected\28\29\20const +9534:SkImage_Ganesh::onHasMipmaps\28\29\20const +9535:SkImage_Ganesh::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +9536:SkImage_Ganesh::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +9537:SkImage_Ganesh::generatingSurfaceIsDeleted\28\29 +9538:SkImage_Ganesh::flush\28GrDirectContext*\2c\20GrFlushInfo\20const&\29\20const +9539:SkImage_Ganesh::asView\28GrRecordingContext*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29\20const +9540:SkImage_Ganesh::asFragmentProcessor\28GrRecordingContext*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29\20const +9541:SkImage_Base::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +9542:SkImage_Base::notifyAddedToRasterCache\28\29\20const +9543:SkImage_Base::makeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +9544:SkImage_Base::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9545:SkImage_Base::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +9546:SkImage_Base::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +9547:SkImage_Base::makeColorSpace\28skgpu::graphite::Recorder*\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +9548:SkImage_Base::makeColorSpace\28GrDirectContext*\2c\20sk_sp\29\20const +9549:SkImage_Base::isTextureBacked\28\29\20const +9550:SkImage_Base::isLazyGenerated\28\29\20const +9551:SkImageShader::~SkImageShader\28\29.1 +9552:SkImageShader::~SkImageShader\28\29 +9553:SkImageShader::type\28\29\20const +9554:SkImageShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +9555:SkImageShader::isOpaque\28\29\20const +9556:SkImageShader::getTypeName\28\29\20const +9557:SkImageShader::flatten\28SkWriteBuffer&\29\20const +9558:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9559:SkImageGenerator::~SkImageGenerator\28\29 +9560:SkImageFilters::Compose\28sk_sp\2c\20sk_sp\29 +9561:SkImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9562:SkImage::~SkImage\28\29 +9563:SkImage::height\28\29\20const +9564:SkIcoDecoder::IsIco\28void\20const*\2c\20unsigned\20long\29 +9565:SkIcoDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9566:SkIcoCodec::~SkIcoCodec\28\29.1 +9567:SkIcoCodec::~SkIcoCodec\28\29 +9568:SkIcoCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9569:SkIcoCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9570:SkIcoCodec::onSkipScanlines\28int\29 +9571:SkIcoCodec::onIncrementalDecode\28int*\29 +9572:SkIcoCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9573:SkIcoCodec::onGetScanlineOrder\28\29\20const +9574:SkIcoCodec::onGetScaledDimensions\28float\29\20const +9575:SkIcoCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9576:SkIcoCodec::onDimensionsSupported\28SkISize\20const&\29 +9577:SkIcoCodec::getSampler\28bool\29 +9578:SkIcoCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9579:SkGradientBaseShader::onAsLuminanceColor\28unsigned\20int*\29\20const +9580:SkGradientBaseShader::isOpaque\28\29\20const +9581:SkGradientBaseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9582:SkGifDecoder::IsGif\28void\20const*\2c\20unsigned\20long\29 +9583:SkGifDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9584:SkGaussianColorFilter::getTypeName\28\29\20const +9585:SkGaussianColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9586:SkGammaColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +9587:SkGammaColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +9588:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29.1 +9589:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29 +9590:SkFontStyleSet_Custom::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +9591:SkFontMgr_Custom::~SkFontMgr_Custom\28\29.1 +9592:SkFontMgr_Custom::~SkFontMgr_Custom\28\29 +9593:SkFontMgr_Custom::onMatchFamily\28char\20const*\29\20const +9594:SkFontMgr_Custom::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +9595:SkFontMgr_Custom::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +9596:SkFontMgr_Custom::onMakeFromStreamArgs\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +9597:SkFontMgr_Custom::onMakeFromFile\28char\20const*\2c\20int\29\20const +9598:SkFontMgr_Custom::onMakeFromData\28sk_sp\2c\20int\29\20const +9599:SkFontMgr_Custom::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +9600:SkFontMgr_Custom::onGetFamilyName\28int\2c\20SkString*\29\20const +9601:SkFont::setScaleX\28float\29 +9602:SkFont::setEmbeddedBitmaps\28bool\29 +9603:SkFont::isEmbolden\28\29\20const +9604:SkFont::getSkewX\28\29\20const +9605:SkFont::getSize\28\29\20const +9606:SkFont::getScaleX\28\29\20const +9607:SkFont*\20emscripten::internal::operator_new\2c\20float\2c\20float\2c\20float>\28sk_sp&&\2c\20float&&\2c\20float&&\2c\20float&&\29 +9608:SkFont*\20emscripten::internal::operator_new\2c\20float>\28sk_sp&&\2c\20float&&\29 +9609:SkFont*\20emscripten::internal::operator_new>\28sk_sp&&\29 +9610:SkFont*\20emscripten::internal::operator_new\28\29 +9611:SkFILEStream::~SkFILEStream\28\29.1 +9612:SkFILEStream::~SkFILEStream\28\29 +9613:SkFILEStream::seek\28unsigned\20long\29 +9614:SkFILEStream::rewind\28\29 +9615:SkFILEStream::read\28void*\2c\20unsigned\20long\29 +9616:SkFILEStream::onFork\28\29\20const +9617:SkFILEStream::onDuplicate\28\29\20const +9618:SkFILEStream::move\28long\29 +9619:SkFILEStream::isAtEnd\28\29\20const +9620:SkFILEStream::getPosition\28\29\20const +9621:SkFILEStream::getLength\28\29\20const +9622:SkEncoder::~SkEncoder\28\29 +9623:SkEmptyShader::getTypeName\28\29\20const +9624:SkEmptyPicture::~SkEmptyPicture\28\29 +9625:SkEmptyPicture::cullRect\28\29\20const +9626:SkEmptyPicture::approximateBytesUsed\28\29\20const +9627:SkEmptyFontMgr::onMatchFamily\28char\20const*\29\20const +9628:SkEdgeBuilder::~SkEdgeBuilder\28\29 +9629:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +9630:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29.1 +9631:SkDrawable::onMakePictureSnapshot\28\29 +9632:SkDrawBase::~SkDrawBase\28\29 +9633:SkDraw::paintMasks\28SkZip\2c\20SkPaint\20const&\29\20const +9634:SkDiscretePathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9635:SkDiscretePathEffectImpl::getTypeName\28\29\20const +9636:SkDiscretePathEffectImpl::getFactory\28\29\20const +9637:SkDiscretePathEffectImpl::computeFastBounds\28SkRect*\29\20const +9638:SkDiscretePathEffectImpl::CreateProc\28SkReadBuffer&\29 +9639:SkDevice::~SkDevice\28\29 +9640:SkDevice::strikeDeviceInfo\28\29\20const +9641:SkDevice::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +9642:SkDevice::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9643:SkDevice::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20sk_sp\2c\20SkPaint\20const&\29 +9644:SkDevice::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +9645:SkDevice::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9646:SkDevice::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9647:SkDevice::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9648:SkDevice::drawCoverageMask\28SkSpecialImage\20const*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +9649:SkDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +9650:SkDevice::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9651:SkDevice::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +9652:SkDashImpl::~SkDashImpl\28\29.1 +9653:SkDashImpl::~SkDashImpl\28\29 +9654:SkDashImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9655:SkDashImpl::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +9656:SkDashImpl::onAsADash\28SkPathEffect::DashInfo*\29\20const +9657:SkDashImpl::getTypeName\28\29\20const +9658:SkDashImpl::flatten\28SkWriteBuffer&\29\20const +9659:SkCustomTypefaceBuilder::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +9660:SkCornerPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9661:SkCornerPathEffectImpl::getTypeName\28\29\20const +9662:SkCornerPathEffectImpl::getFactory\28\29\20const +9663:SkCornerPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9664:SkCornerPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9665:SkCornerPathEffect::Make\28float\29 +9666:SkContourMeasureIter*\20emscripten::internal::operator_new\28SkPath\20const&\2c\20bool&&\2c\20float&&\29 +9667:SkContourMeasure::~SkContourMeasure\28\29.1 +9668:SkContourMeasure::~SkContourMeasure\28\29 +9669:SkContourMeasure::isClosed\28\29\20const +9670:SkConicalGradient::getTypeName\28\29\20const +9671:SkConicalGradient::flatten\28SkWriteBuffer&\29\20const +9672:SkConicalGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9673:SkConicalGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +9674:SkComposePathEffect::~SkComposePathEffect\28\29 +9675:SkComposePathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9676:SkComposePathEffect::getTypeName\28\29\20const +9677:SkComposePathEffect::computeFastBounds\28SkRect*\29\20const +9678:SkComposeColorFilter::onIsAlphaUnchanged\28\29\20const +9679:SkComposeColorFilter::getTypeName\28\29\20const +9680:SkComposeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9681:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29.1 +9682:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29 +9683:SkColorSpaceXformColorFilter::getTypeName\28\29\20const +9684:SkColorSpaceXformColorFilter::flatten\28SkWriteBuffer&\29\20const +9685:SkColorSpaceXformColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9686:SkColorShader::onAsLuminanceColor\28unsigned\20int*\29\20const +9687:SkColorShader::isOpaque\28\29\20const +9688:SkColorShader::getTypeName\28\29\20const +9689:SkColorShader::flatten\28SkWriteBuffer&\29\20const +9690:SkColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9691:SkColorPalette::~SkColorPalette\28\29.1 +9692:SkColorPalette::~SkColorPalette\28\29 +9693:SkColorFilters::SRGBToLinearGamma\28\29 +9694:SkColorFilters::LinearToSRGBGamma\28\29 +9695:SkColorFilters::Lerp\28float\2c\20sk_sp\2c\20sk_sp\29 +9696:SkColorFilters::Compose\28sk_sp\20const&\2c\20sk_sp\29 +9697:SkColorFilterShader::~SkColorFilterShader\28\29.1 +9698:SkColorFilterShader::~SkColorFilterShader\28\29 +9699:SkColorFilterShader::isOpaque\28\29\20const +9700:SkColorFilterShader::getTypeName\28\29\20const +9701:SkColorFilterShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9702:SkColorFilterBase::onFilterColor4f\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkColorSpace*\29\20const +9703:SkColor4Shader::~SkColor4Shader\28\29.1 +9704:SkColor4Shader::~SkColor4Shader\28\29 +9705:SkColor4Shader::isOpaque\28\29\20const +9706:SkColor4Shader::getTypeName\28\29\20const +9707:SkColor4Shader::flatten\28SkWriteBuffer&\29\20const +9708:SkColor4Shader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9709:SkCodecImageGenerator::~SkCodecImageGenerator\28\29.1 +9710:SkCodecImageGenerator::~SkCodecImageGenerator\28\29 +9711:SkCodecImageGenerator::onRefEncodedData\28\29 +9712:SkCodecImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +9713:SkCodecImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +9714:SkCodecImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +9715:SkCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9716:SkCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9717:SkCodec::onOutputScanline\28int\29\20const +9718:SkCodec::onGetScaledDimensions\28float\29\20const +9719:SkCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9720:SkCanvas::rotate\28float\2c\20float\2c\20float\29 +9721:SkCanvas::recordingContext\28\29\20const +9722:SkCanvas::recorder\28\29\20const +9723:SkCanvas::onPeekPixels\28SkPixmap*\29 +9724:SkCanvas::onNewSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +9725:SkCanvas::onImageInfo\28\29\20const +9726:SkCanvas::onGetProps\28SkSurfaceProps*\2c\20bool\29\20const +9727:SkCanvas::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9728:SkCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9729:SkCanvas::onDrawSlug\28sktext::gpu::Slug\20const*\29 +9730:SkCanvas::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +9731:SkCanvas::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9732:SkCanvas::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9733:SkCanvas::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9734:SkCanvas::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9735:SkCanvas::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +9736:SkCanvas::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +9737:SkCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9738:SkCanvas::onDrawPaint\28SkPaint\20const&\29 +9739:SkCanvas::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9740:SkCanvas::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +9741:SkCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9742:SkCanvas::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +9743:SkCanvas::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9744:SkCanvas::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +9745:SkCanvas::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9746:SkCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9747:SkCanvas::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +9748:SkCanvas::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9749:SkCanvas::onDrawBehind\28SkPaint\20const&\29 +9750:SkCanvas::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +9751:SkCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +9752:SkCanvas::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +9753:SkCanvas::onDiscard\28\29 +9754:SkCanvas::onConvertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +9755:SkCanvas::onAccessTopLayerPixels\28SkPixmap*\29 +9756:SkCanvas::isClipRect\28\29\20const +9757:SkCanvas::isClipEmpty\28\29\20const +9758:SkCanvas::getSaveCount\28\29\20const +9759:SkCanvas::getBaseLayerSize\28\29\20const +9760:SkCanvas::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9761:SkCanvas::drawPicture\28sk_sp\20const&\29 +9762:SkCanvas::drawCircle\28float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9763:SkCanvas*\20emscripten::internal::operator_new\28float&&\2c\20float&&\29 +9764:SkCanvas*\20emscripten::internal::operator_new\28\29 +9765:SkCachedData::~SkCachedData\28\29.1 +9766:SkCTMShader::~SkCTMShader\28\29 +9767:SkCTMShader::getTypeName\28\29\20const +9768:SkCTMShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9769:SkCTMShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9770:SkBreakIterator_client::~SkBreakIterator_client\28\29.1 +9771:SkBreakIterator_client::~SkBreakIterator_client\28\29 +9772:SkBreakIterator_client::status\28\29 +9773:SkBreakIterator_client::setText\28char\20const*\2c\20int\29 +9774:SkBreakIterator_client::setText\28char16_t\20const*\2c\20int\29 +9775:SkBreakIterator_client::next\28\29 +9776:SkBreakIterator_client::isDone\28\29 +9777:SkBreakIterator_client::first\28\29 +9778:SkBreakIterator_client::current\28\29 +9779:SkBmpStandardCodec::~SkBmpStandardCodec\28\29.1 +9780:SkBmpStandardCodec::~SkBmpStandardCodec\28\29 +9781:SkBmpStandardCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9782:SkBmpStandardCodec::onInIco\28\29\20const +9783:SkBmpStandardCodec::getSampler\28bool\29 +9784:SkBmpStandardCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9785:SkBmpRLESampler::onSetSampleX\28int\29 +9786:SkBmpRLESampler::fillWidth\28\29\20const +9787:SkBmpRLECodec::~SkBmpRLECodec\28\29.1 +9788:SkBmpRLECodec::~SkBmpRLECodec\28\29 +9789:SkBmpRLECodec::skipRows\28int\29 +9790:SkBmpRLECodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9791:SkBmpRLECodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9792:SkBmpRLECodec::getSampler\28bool\29 +9793:SkBmpRLECodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9794:SkBmpMaskCodec::~SkBmpMaskCodec\28\29.1 +9795:SkBmpMaskCodec::~SkBmpMaskCodec\28\29 +9796:SkBmpMaskCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9797:SkBmpMaskCodec::getSampler\28bool\29 +9798:SkBmpMaskCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9799:SkBmpDecoder::IsBmp\28void\20const*\2c\20unsigned\20long\29 +9800:SkBmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9801:SkBmpCodec::~SkBmpCodec\28\29 +9802:SkBmpCodec::skipRows\28int\29 +9803:SkBmpCodec::onSkipScanlines\28int\29 +9804:SkBmpCodec::onRewind\28\29 +9805:SkBmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9806:SkBmpCodec::onGetScanlineOrder\28\29\20const +9807:SkBlurMaskFilterImpl::getTypeName\28\29\20const +9808:SkBlurMaskFilterImpl::flatten\28SkWriteBuffer&\29\20const +9809:SkBlurMaskFilterImpl::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9810:SkBlurMaskFilterImpl::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9811:SkBlurMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +9812:SkBlurMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +9813:SkBlurMaskFilterImpl::asImageFilter\28SkMatrix\20const&\29\20const +9814:SkBlurMaskFilterImpl::asABlur\28SkMaskFilterBase::BlurRec*\29\20const +9815:SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +9816:SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +9817:SkBlockMemoryStream::seek\28unsigned\20long\29 +9818:SkBlockMemoryStream::rewind\28\29 +9819:SkBlockMemoryStream::read\28void*\2c\20unsigned\20long\29 +9820:SkBlockMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +9821:SkBlockMemoryStream::onFork\28\29\20const +9822:SkBlockMemoryStream::onDuplicate\28\29\20const +9823:SkBlockMemoryStream::move\28long\29 +9824:SkBlockMemoryStream::isAtEnd\28\29\20const +9825:SkBlockMemoryStream::getMemoryBase\28\29 +9826:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29.1 +9827:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29 +9828:SkBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9829:SkBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9830:SkBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +9831:SkBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9832:SkBlitter::allocBlitMemory\28unsigned\20long\29 +9833:SkBlenderBase::asBlendMode\28\29\20const +9834:SkBlendShader::getTypeName\28\29\20const +9835:SkBlendShader::flatten\28SkWriteBuffer&\29\20const +9836:SkBlendShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9837:SkBlendModeColorFilter::onIsAlphaUnchanged\28\29\20const +9838:SkBlendModeColorFilter::onAsAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +9839:SkBlendModeColorFilter::getTypeName\28\29\20const +9840:SkBlendModeColorFilter::flatten\28SkWriteBuffer&\29\20const +9841:SkBlendModeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9842:SkBlendModeBlender::onAppendStages\28SkStageRec\20const&\29\20const +9843:SkBlendModeBlender::getTypeName\28\29\20const +9844:SkBlendModeBlender::flatten\28SkWriteBuffer&\29\20const +9845:SkBlendModeBlender::asBlendMode\28\29\20const +9846:SkBitmapDevice::~SkBitmapDevice\28\29.1 +9847:SkBitmapDevice::~SkBitmapDevice\28\29 +9848:SkBitmapDevice::snapSpecial\28SkIRect\20const&\2c\20bool\29 +9849:SkBitmapDevice::setImmutable\28\29 +9850:SkBitmapDevice::replaceClip\28SkIRect\20const&\29 +9851:SkBitmapDevice::pushClipStack\28\29 +9852:SkBitmapDevice::popClipStack\28\29 +9853:SkBitmapDevice::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9854:SkBitmapDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9855:SkBitmapDevice::onPeekPixels\28SkPixmap*\29 +9856:SkBitmapDevice::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +9857:SkBitmapDevice::onClipShader\28sk_sp\29 +9858:SkBitmapDevice::onAccessPixels\28SkPixmap*\29 +9859:SkBitmapDevice::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +9860:SkBitmapDevice::makeSpecial\28SkImage\20const*\29 +9861:SkBitmapDevice::makeSpecial\28SkBitmap\20const&\29 +9862:SkBitmapDevice::isClipWideOpen\28\29\20const +9863:SkBitmapDevice::isClipRect\28\29\20const +9864:SkBitmapDevice::isClipEmpty\28\29\20const +9865:SkBitmapDevice::isClipAntiAliased\28\29\20const +9866:SkBitmapDevice::getRasterHandle\28\29\20const +9867:SkBitmapDevice::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +9868:SkBitmapDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9869:SkBitmapDevice::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9870:SkBitmapDevice::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9871:SkBitmapDevice::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9872:SkBitmapDevice::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +9873:SkBitmapDevice::drawPaint\28SkPaint\20const&\29 +9874:SkBitmapDevice::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9875:SkBitmapDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9876:SkBitmapDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +9877:SkBitmapDevice::devClipBounds\28\29\20const +9878:SkBitmapDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +9879:SkBitmapDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9880:SkBitmapDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +9881:SkBitmapDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +9882:SkBitmapDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +9883:SkBitmapDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +9884:SkBitmapCache::Rec::~Rec\28\29.1 +9885:SkBitmapCache::Rec::~Rec\28\29 +9886:SkBitmapCache::Rec::postAddInstall\28void*\29 +9887:SkBitmapCache::Rec::getCategory\28\29\20const +9888:SkBitmapCache::Rec::canBePurged\28\29 +9889:SkBitmapCache::Rec::bytesUsed\28\29\20const +9890:SkBitmapCache::Rec::ReleaseProc\28void*\2c\20void*\29 +9891:SkBitmapCache::Rec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +9892:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29.1 +9893:SkBinaryWriteBuffer::write\28SkM44\20const&\29 +9894:SkBinaryWriteBuffer::writeTypeface\28SkTypeface*\29 +9895:SkBinaryWriteBuffer::writeString\28std::__2::basic_string_view>\29 +9896:SkBinaryWriteBuffer::writeStream\28SkStream*\2c\20unsigned\20long\29 +9897:SkBinaryWriteBuffer::writeScalar\28float\29 +9898:SkBinaryWriteBuffer::writeSampling\28SkSamplingOptions\20const&\29 +9899:SkBinaryWriteBuffer::writeRegion\28SkRegion\20const&\29 +9900:SkBinaryWriteBuffer::writeRect\28SkRect\20const&\29 +9901:SkBinaryWriteBuffer::writePoint\28SkPoint\20const&\29 +9902:SkBinaryWriteBuffer::writePointArray\28SkPoint\20const*\2c\20unsigned\20int\29 +9903:SkBinaryWriteBuffer::writePoint3\28SkPoint3\20const&\29 +9904:SkBinaryWriteBuffer::writePath\28SkPath\20const&\29 +9905:SkBinaryWriteBuffer::writePaint\28SkPaint\20const&\29 +9906:SkBinaryWriteBuffer::writePad32\28void\20const*\2c\20unsigned\20long\29 +9907:SkBinaryWriteBuffer::writeMatrix\28SkMatrix\20const&\29 +9908:SkBinaryWriteBuffer::writeImage\28SkImage\20const*\29 +9909:SkBinaryWriteBuffer::writeColor4fArray\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20unsigned\20int\29 +9910:SkBigPicture::~SkBigPicture\28\29.1 +9911:SkBigPicture::~SkBigPicture\28\29 +9912:SkBigPicture::playback\28SkCanvas*\2c\20SkPicture::AbortCallback*\29\20const +9913:SkBigPicture::cullRect\28\29\20const +9914:SkBigPicture::approximateOpCount\28bool\29\20const +9915:SkBigPicture::approximateBytesUsed\28\29\20const +9916:SkBezierCubic::Subdivide\28double\20const*\2c\20double\2c\20double*\29 +9917:SkBasicEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +9918:SkBasicEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +9919:SkBasicEdgeBuilder::addQuad\28SkPoint\20const*\29 +9920:SkBasicEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +9921:SkBasicEdgeBuilder::addLine\28SkPoint\20const*\29 +9922:SkBasicEdgeBuilder::addCubic\28SkPoint\20const*\29 +9923:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29 +9924:SkBBoxHierarchy::insert\28SkRect\20const*\2c\20SkBBoxHierarchy::Metadata\20const*\2c\20int\29 +9925:SkArenaAlloc::SkipPod\28char*\29 +9926:SkArenaAlloc::NextBlock\28char*\29 +9927:SkAnimatedImage::~SkAnimatedImage\28\29.1 +9928:SkAnimatedImage::~SkAnimatedImage\28\29 +9929:SkAnimatedImage::reset\28\29 +9930:SkAnimatedImage::onGetBounds\28\29 +9931:SkAnimatedImage::onDraw\28SkCanvas*\29 +9932:SkAnimatedImage::getRepetitionCount\28\29\20const +9933:SkAnimatedImage::getCurrentFrame\28\29 +9934:SkAnimatedImage::currentFrameDuration\28\29 +9935:SkAndroidCodecAdapter::onGetSupportedSubset\28SkIRect*\29\20const +9936:SkAndroidCodecAdapter::onGetSampledDimensions\28int\29\20const +9937:SkAndroidCodecAdapter::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +9938:SkAnalyticEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +9939:SkAnalyticEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +9940:SkAnalyticEdgeBuilder::addQuad\28SkPoint\20const*\29 +9941:SkAnalyticEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +9942:SkAnalyticEdgeBuilder::addLine\28SkPoint\20const*\29 +9943:SkAnalyticEdgeBuilder::addCubic\28SkPoint\20const*\29 +9944:SkAAClipBlitter::~SkAAClipBlitter\28\29.1 +9945:SkAAClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9946:SkAAClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9947:SkAAClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9948:SkAAClipBlitter::blitH\28int\2c\20int\2c\20int\29 +9949:SkAAClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9950:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_1::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +9951:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_0::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +9952:SkAAClip::Builder::Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9953:SkAAClip::Builder::Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9954:SkAAClip::Builder::Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9955:SkAAClip::Builder::Blitter::blitH\28int\2c\20int\2c\20int\29 +9956:SkAAClip::Builder::Blitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +9957:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29.1 +9958:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29 +9959:SkA8_Coverage_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9960:SkA8_Coverage_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9961:SkA8_Coverage_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9962:SkA8_Coverage_Blitter::blitH\28int\2c\20int\2c\20int\29 +9963:SkA8_Coverage_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9964:SkA8_Blitter::~SkA8_Blitter\28\29.1 +9965:SkA8_Blitter::~SkA8_Blitter\28\29 +9966:SkA8_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9967:SkA8_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9968:SkA8_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9969:SkA8_Blitter::blitH\28int\2c\20int\2c\20int\29 +9970:SkA8_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9971:SkA8Blitter_Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +9972:Sk2DPathEffect::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +9973:Sk2DPathEffect::flatten\28SkWriteBuffer&\29\20const +9974:SimpleVFilter16i_C +9975:SimpleVFilter16_C +9976:SimpleTextStyle*\20emscripten::internal::raw_constructor\28\29 +9977:SimpleTextStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +9978:SimpleStrutStyle*\20emscripten::internal::raw_constructor\28\29 +9979:SimpleStrutStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +9980:SimpleParagraphStyle*\20emscripten::internal::raw_constructor\28\29 +9981:SimpleHFilter16i_C +9982:SimpleHFilter16_C +9983:SimpleFontStyle*\20emscripten::internal::raw_constructor\28\29 +9984:ShaderPDXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9985:ShaderPDXferProcessor::name\28\29\20const +9986:ShaderPDXferProcessor::makeProgramImpl\28\29\20const +9987:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +9988:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +9989:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9990:RuntimeEffectUniform*\20emscripten::internal::raw_constructor\28\29 +9991:RuntimeEffectRPCallbacks::toLinearSrgb\28void\20const*\29 +9992:RuntimeEffectRPCallbacks::fromLinearSrgb\28void\20const*\29 +9993:RuntimeEffectRPCallbacks::appendShader\28int\29 +9994:RuntimeEffectRPCallbacks::appendColorFilter\28int\29 +9995:RuntimeEffectRPCallbacks::appendBlender\28int\29 +9996:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29 +9997:RunBasedAdditiveBlitter::getRealBlitter\28bool\29 +9998:RunBasedAdditiveBlitter::flush_if_y_changed\28int\2c\20int\29 +9999:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +10000:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +10001:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10002:Round_Up_To_Grid +10003:Round_To_Half_Grid +10004:Round_To_Grid +10005:Round_To_Double_Grid +10006:Round_Super_45 +10007:Round_Super +10008:Round_None +10009:Round_Down_To_Grid +10010:RoundJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +10011:RoundCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +10012:Reset +10013:Read_CVT_Stretched +10014:Read_CVT +10015:RD4_C +10016:Project_y +10017:Project +10018:ProcessRows +10019:PredictorAdd9_C +10020:PredictorAdd8_C +10021:PredictorAdd7_C +10022:PredictorAdd6_C +10023:PredictorAdd5_C +10024:PredictorAdd4_C +10025:PredictorAdd3_C +10026:PredictorAdd2_C +10027:PredictorAdd1_C +10028:PredictorAdd13_C +10029:PredictorAdd12_C +10030:PredictorAdd11_C +10031:PredictorAdd10_C +10032:PredictorAdd0_C +10033:PrePostInverseBlitterProc\28SkBlitter*\2c\20int\2c\20bool\29 +10034:PorterDuffXferProcessor::onHasSecondaryOutput\28\29\20const +10035:PorterDuffXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10036:PorterDuffXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10037:PorterDuffXferProcessor::name\28\29\20const +10038:PorterDuffXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10039:PorterDuffXferProcessor::makeProgramImpl\28\29\20const +10040:ParseVP8X +10041:PackRGB_C +10042:PDLCDXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +10043:PDLCDXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10044:PDLCDXferProcessor::name\28\29\20const +10045:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +10046:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10047:PDLCDXferProcessor::makeProgramImpl\28\29\20const +10048:OT::match_glyph\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10049:OT::match_coverage\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10050:OT::match_class_cached\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10051:OT::match_class_cached2\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10052:OT::match_class_cached1\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10053:OT::match_class\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10054:OT::hb_ot_apply_context_t::return_t\20OT::Layout::GSUB_impl::SubstLookup::dispatch_recurse_func\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\29 +10055:OT::hb_ot_apply_context_t::return_t\20OT::Layout::GPOS_impl::PosLookup::dispatch_recurse_func\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\29 +10056:OT::cff1::accelerator_t::gname_t::cmp\28void\20const*\2c\20void\20const*\29 +10057:OT::Layout::Common::RangeRecord::cmp_range\28void\20const*\2c\20void\20const*\29 +10058:OT::ColorLine::static_get_color_stops\28hb_color_line_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_color_stop_t*\2c\20void*\29 +10059:OT::ColorLine::static_get_color_stops\28hb_color_line_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_color_stop_t*\2c\20void*\29 +10060:OT::CmapSubtableFormat4::accelerator_t::get_glyph_func\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +10061:Move_CVT_Stretched +10062:Move_CVT +10063:MiterJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +10064:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29.1 +10065:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29 +10066:MaskAdditiveBlitter::getWidth\28\29 +10067:MaskAdditiveBlitter::getRealBlitter\28bool\29 +10068:MaskAdditiveBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10069:MaskAdditiveBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10070:MaskAdditiveBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10071:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +10072:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +10073:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10074:MapAlpha_C +10075:MapARGB_C +10076:MakeRenderTarget\28sk_sp\2c\20int\2c\20int\29 +10077:MakeRenderTarget\28sk_sp\2c\20SimpleImageInfo\29 +10078:MakePathFromVerbsPointsWeights\28unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +10079:MakePathFromSVGString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10080:MakePathFromOp\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29 +10081:MakePathFromInterpolation\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29 +10082:MakePathFromCmds\28unsigned\20long\2c\20int\29 +10083:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\29 +10084:MakeImageFromGenerator\28SimpleImageInfo\2c\20emscripten::val\29 +10085:MakeGrContext\28\29 +10086:MakeAsWinding\28SkPath\20const&\29 +10087:LD4_C +10088:JpegDecoderMgr::returnFailure\28char\20const*\2c\20SkCodec::Result\29 +10089:JpegDecoderMgr::init\28\29 +10090:JpegDecoderMgr::SourceMgr::SkipInputData\28jpeg_decompress_struct*\2c\20long\29 +10091:JpegDecoderMgr::SourceMgr::InitSource\28jpeg_decompress_struct*\29 +10092:JpegDecoderMgr::SourceMgr::FillInputBuffer\28jpeg_decompress_struct*\29 +10093:JpegDecoderMgr::JpegDecoderMgr\28SkStream*\29 +10094:IsValidSimpleFormat +10095:IsValidExtendedFormat +10096:InverseBlitter::blitH\28int\2c\20int\2c\20int\29 +10097:Init +10098:HorizontalUnfilter_C +10099:HorizontalFilter_C +10100:Horish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10101:Horish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10102:HasAlpha8b_C +10103:HasAlpha32b_C +10104:HU4_C +10105:HLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10106:HLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10107:HFilter8i_C +10108:HFilter8_C +10109:HFilter16i_C +10110:HFilter16_C +10111:HE8uv_C +10112:HE4_C +10113:HE16_C +10114:HD4_C +10115:GradientUnfilter_C +10116:GradientFilter_C +10117:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10118:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10119:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const +10120:GrYUVtoRGBEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10121:GrYUVtoRGBEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10122:GrYUVtoRGBEffect::name\28\29\20const +10123:GrYUVtoRGBEffect::clone\28\29\20const +10124:GrXferProcessor::ProgramImpl::emitWriteSwizzle\28GrGLSLXPFragmentBuilder*\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20char\20const*\29\20const +10125:GrXferProcessor::ProgramImpl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10126:GrXferProcessor::ProgramImpl::emitBlendCodeForDstRead\28GrGLSLXPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20GrXferProcessor\20const&\29 +10127:GrWritePixelsTask::~GrWritePixelsTask\28\29.1 +10128:GrWritePixelsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +10129:GrWritePixelsTask::onExecute\28GrOpFlushState*\29 +10130:GrWritePixelsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10131:GrWaitRenderTask::~GrWaitRenderTask\28\29.1 +10132:GrWaitRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +10133:GrWaitRenderTask::onExecute\28GrOpFlushState*\29 +10134:GrWaitRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10135:GrTriangulator::~GrTriangulator\28\29 +10136:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29.1 +10137:GrTransferFromRenderTask::onExecute\28GrOpFlushState*\29 +10138:GrTransferFromRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10139:GrThreadSafeCache::Trampoline::~Trampoline\28\29.1 +10140:GrThreadSafeCache::Trampoline::~Trampoline\28\29 +10141:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29.1 +10142:GrTextureResolveRenderTask::onExecute\28GrOpFlushState*\29 +10143:GrTextureResolveRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10144:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +10145:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +10146:GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +10147:GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +10148:GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +10149:GrTextureProxy::~GrTextureProxy\28\29.2 +10150:GrTextureProxy::~GrTextureProxy\28\29.1 +10151:GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +10152:GrTextureProxy::instantiate\28GrResourceProvider*\29 +10153:GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +10154:GrTextureProxy::callbackDesc\28\29\20const +10155:GrTextureEffect::~GrTextureEffect\28\29.1 +10156:GrTextureEffect::~GrTextureEffect\28\29 +10157:GrTextureEffect::onMakeProgramImpl\28\29\20const +10158:GrTextureEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10159:GrTextureEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10160:GrTextureEffect::name\28\29\20const +10161:GrTextureEffect::clone\28\29\20const +10162:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10163:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10164:GrTexture::onGpuMemorySize\28\29\20const +10165:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29.1 +10166:GrTDeferredProxyUploader>::freeData\28\29 +10167:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29.1 +10168:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29 +10169:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::freeData\28\29 +10170:GrSurfaceProxy::getUniqueKey\28\29\20const +10171:GrSurface::~GrSurface\28\29 +10172:GrSurface::getResourceType\28\29\20const +10173:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29.1 +10174:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29 +10175:GrStrokeTessellationShader::name\28\29\20const +10176:GrStrokeTessellationShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10177:GrStrokeTessellationShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10178:GrStrokeTessellationShader::Impl::~Impl\28\29.1 +10179:GrStrokeTessellationShader::Impl::~Impl\28\29 +10180:GrStrokeTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10181:GrStrokeTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10182:GrSkSLFP::~GrSkSLFP\28\29.1 +10183:GrSkSLFP::~GrSkSLFP\28\29 +10184:GrSkSLFP::onMakeProgramImpl\28\29\20const +10185:GrSkSLFP::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10186:GrSkSLFP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10187:GrSkSLFP::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10188:GrSkSLFP::clone\28\29\20const +10189:GrSkSLFP::Impl::~Impl\28\29.1 +10190:GrSkSLFP::Impl::~Impl\28\29 +10191:GrSkSLFP::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10192:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10193:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10194:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10195:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleBlender\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10196:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::getMangledName\28char\20const*\29 +10197:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10198:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +10199:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +10200:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareFunction\28char\20const*\29 +10201:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10202:GrSimpleMesh*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29::'lambda'\28char*\29::__invoke\28char*\29 +10203:GrRingBuffer::FinishSubmit\28void*\29 +10204:GrResourceCache::CompareTimestamp\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29 +10205:GrRenderTask::~GrRenderTask\28\29 +10206:GrRenderTask::disown\28GrDrawingManager*\29 +10207:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +10208:GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +10209:GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +10210:GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +10211:GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +10212:GrRenderTargetProxy::callbackDesc\28\29\20const +10213:GrRecordingContext::~GrRecordingContext\28\29.1 +10214:GrRecordingContext::abandoned\28\29 +10215:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29.1 +10216:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29 +10217:GrRRectShadowGeoProc::onTextureSampler\28int\29\20const +10218:GrRRectShadowGeoProc::name\28\29\20const +10219:GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10220:GrRRectShadowGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10221:GrQuadEffect::name\28\29\20const +10222:GrQuadEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10223:GrQuadEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10224:GrQuadEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10225:GrQuadEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10226:GrPorterDuffXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10227:GrPorterDuffXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10228:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29.1 +10229:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29 +10230:GrPerlinNoise2Effect::onMakeProgramImpl\28\29\20const +10231:GrPerlinNoise2Effect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10232:GrPerlinNoise2Effect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10233:GrPerlinNoise2Effect::name\28\29\20const +10234:GrPerlinNoise2Effect::clone\28\29\20const +10235:GrPerlinNoise2Effect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10236:GrPerlinNoise2Effect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10237:GrPathTessellationShader::Impl::~Impl\28\29 +10238:GrPathTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10239:GrPathTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10240:GrOpsRenderPass::~GrOpsRenderPass\28\29 +10241:GrOpsRenderPass::onExecuteDrawable\28std::__2::unique_ptr>\29 +10242:GrOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10243:GrOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10244:GrOpFlushState::~GrOpFlushState\28\29.1 +10245:GrOpFlushState::~GrOpFlushState\28\29 +10246:GrOpFlushState::writeView\28\29\20const +10247:GrOpFlushState::usesMSAASurface\28\29\20const +10248:GrOpFlushState::tokenTracker\28\29 +10249:GrOpFlushState::threadSafeCache\28\29\20const +10250:GrOpFlushState::strikeCache\28\29\20const +10251:GrOpFlushState::smallPathAtlasManager\28\29\20const +10252:GrOpFlushState::sampledProxyArray\28\29 +10253:GrOpFlushState::rtProxy\28\29\20const +10254:GrOpFlushState::resourceProvider\28\29\20const +10255:GrOpFlushState::renderPassBarriers\28\29\20const +10256:GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +10257:GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +10258:GrOpFlushState::putBackIndirectDraws\28int\29 +10259:GrOpFlushState::putBackIndices\28int\29 +10260:GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +10261:GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +10262:GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +10263:GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +10264:GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +10265:GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +10266:GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +10267:GrOpFlushState::dstProxyView\28\29\20const +10268:GrOpFlushState::colorLoadOp\28\29\20const +10269:GrOpFlushState::atlasManager\28\29\20const +10270:GrOpFlushState::appliedClip\28\29\20const +10271:GrOpFlushState::addInlineUpload\28std::__2::function&\29>&&\29 +10272:GrOp::~GrOp\28\29 +10273:GrOnFlushCallbackObject::postFlush\28skgpu::AtlasToken\29 +10274:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10275:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10276:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +10277:GrModulateAtlasCoverageEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10278:GrModulateAtlasCoverageEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10279:GrModulateAtlasCoverageEffect::name\28\29\20const +10280:GrModulateAtlasCoverageEffect::clone\28\29\20const +10281:GrMeshDrawOp::onPrepare\28GrOpFlushState*\29 +10282:GrMeshDrawOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10283:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10284:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10285:GrMatrixEffect::onMakeProgramImpl\28\29\20const +10286:GrMatrixEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10287:GrMatrixEffect::name\28\29\20const +10288:GrMatrixEffect::clone\28\29\20const +10289:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +10290:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +10291:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::$_0::__invoke\28void\20const*\2c\20void*\29 +10292:GrImageContext::~GrImageContext\28\29.1 +10293:GrImageContext::~GrImageContext\28\29 +10294:GrHardClip::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +10295:GrGpuResource::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +10296:GrGpuBuffer::~GrGpuBuffer\28\29 +10297:GrGpuBuffer::unref\28\29\20const +10298:GrGpuBuffer::getResourceType\28\29\20const +10299:GrGpuBuffer::computeScratchKey\28skgpu::ScratchKey*\29\20const +10300:GrGeometryProcessor::onTextureSampler\28int\29\20const +10301:GrGeometryProcessor::ProgramImpl::~ProgramImpl\28\29 +10302:GrGLVaryingHandler::~GrGLVaryingHandler\28\29 +10303:GrGLUniformHandler::~GrGLUniformHandler\28\29.1 +10304:GrGLUniformHandler::~GrGLUniformHandler\28\29 +10305:GrGLUniformHandler::samplerVariable\28GrResourceHandle\29\20const +10306:GrGLUniformHandler::samplerSwizzle\28GrResourceHandle\29\20const +10307:GrGLUniformHandler::internalAddUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20bool\2c\20int\2c\20char\20const**\29 +10308:GrGLUniformHandler::getUniformCStr\28GrResourceHandle\29\20const +10309:GrGLUniformHandler::appendUniformDecls\28GrShaderFlags\2c\20SkString*\29\20const +10310:GrGLUniformHandler::addSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20GrShaderCaps\20const*\29 +10311:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +10312:GrGLTextureRenderTarget::onSetLabel\28\29 +10313:GrGLTextureRenderTarget::onRelease\28\29 +10314:GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +10315:GrGLTextureRenderTarget::onAbandon\28\29 +10316:GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +10317:GrGLTextureRenderTarget::backendFormat\28\29\20const +10318:GrGLTexture::~GrGLTexture\28\29.1 +10319:GrGLTexture::~GrGLTexture\28\29 +10320:GrGLTexture::textureParamsModified\28\29 +10321:GrGLTexture::onStealBackendTexture\28GrBackendTexture*\2c\20std::__2::function*\29 +10322:GrGLTexture::getBackendTexture\28\29\20const +10323:GrGLSemaphore::~GrGLSemaphore\28\29.1 +10324:GrGLSemaphore::~GrGLSemaphore\28\29 +10325:GrGLSemaphore::setIsOwned\28\29 +10326:GrGLSemaphore::backendSemaphore\28\29\20const +10327:GrGLSLVertexBuilder::~GrGLSLVertexBuilder\28\29 +10328:GrGLSLVertexBuilder::onFinalize\28\29 +10329:GrGLSLUniformHandler::inputSamplerSwizzle\28GrResourceHandle\29\20const +10330:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +10331:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +10332:GrGLSLFragmentShaderBuilder::onFinalize\28\29 +10333:GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +10334:GrGLSLFragmentShaderBuilder::forceHighPrecision\28\29 +10335:GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +10336:GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +10337:GrGLRenderTarget::~GrGLRenderTarget\28\29 +10338:GrGLRenderTarget::onGpuMemorySize\28\29\20const +10339:GrGLRenderTarget::getBackendRenderTarget\28\29\20const +10340:GrGLRenderTarget::completeStencilAttachment\28GrAttachment*\2c\20bool\29 +10341:GrGLRenderTarget::canAttemptStencilAttachment\28bool\29\20const +10342:GrGLRenderTarget::backendFormat\28\29\20const +10343:GrGLRenderTarget::alwaysClearStencil\28\29\20const +10344:GrGLProgramDataManager::~GrGLProgramDataManager\28\29.1 +10345:GrGLProgramDataManager::~GrGLProgramDataManager\28\29 +10346:GrGLProgramDataManager::setMatrix4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10347:GrGLProgramDataManager::setMatrix4f\28GrResourceHandle\2c\20float\20const*\29\20const +10348:GrGLProgramDataManager::setMatrix3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10349:GrGLProgramDataManager::setMatrix3f\28GrResourceHandle\2c\20float\20const*\29\20const +10350:GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10351:GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +10352:GrGLProgramDataManager::set4iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10353:GrGLProgramDataManager::set4i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +10354:GrGLProgramDataManager::set4f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\2c\20float\29\20const +10355:GrGLProgramDataManager::set3iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10356:GrGLProgramDataManager::set3i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\29\20const +10357:GrGLProgramDataManager::set3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10358:GrGLProgramDataManager::set3f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\29\20const +10359:GrGLProgramDataManager::set2iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10360:GrGLProgramDataManager::set2i\28GrResourceHandle\2c\20int\2c\20int\29\20const +10361:GrGLProgramDataManager::set2f\28GrResourceHandle\2c\20float\2c\20float\29\20const +10362:GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10363:GrGLProgramDataManager::set1i\28GrResourceHandle\2c\20int\29\20const +10364:GrGLProgramDataManager::set1fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10365:GrGLProgramDataManager::set1f\28GrResourceHandle\2c\20float\29\20const +10366:GrGLProgramBuilder::~GrGLProgramBuilder\28\29.1 +10367:GrGLProgramBuilder::varyingHandler\28\29 +10368:GrGLProgramBuilder::caps\28\29\20const +10369:GrGLProgram::~GrGLProgram\28\29.1 +10370:GrGLOpsRenderPass::~GrGLOpsRenderPass\28\29 +10371:GrGLOpsRenderPass::onSetScissorRect\28SkIRect\20const&\29 +10372:GrGLOpsRenderPass::onEnd\28\29 +10373:GrGLOpsRenderPass::onDraw\28int\2c\20int\29 +10374:GrGLOpsRenderPass::onDrawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +10375:GrGLOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10376:GrGLOpsRenderPass::onDrawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +10377:GrGLOpsRenderPass::onDrawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +10378:GrGLOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10379:GrGLOpsRenderPass::onClear\28GrScissorState\20const&\2c\20std::__2::array\29 +10380:GrGLOpsRenderPass::onClearStencilClip\28GrScissorState\20const&\2c\20bool\29 +10381:GrGLOpsRenderPass::onBindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +10382:GrGLOpsRenderPass::onBindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +10383:GrGLOpsRenderPass::onBindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +10384:GrGLOpsRenderPass::onBegin\28\29 +10385:GrGLOpsRenderPass::inlineUpload\28GrOpFlushState*\2c\20std::__2::function&\29>&\29 +10386:GrGLInterface::~GrGLInterface\28\29.1 +10387:GrGLInterface::~GrGLInterface\28\29 +10388:GrGLGpu::~GrGLGpu\28\29.1 +10389:GrGLGpu::xferBarrier\28GrRenderTarget*\2c\20GrXferBarrierType\29 +10390:GrGLGpu::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +10391:GrGLGpu::willExecute\28\29 +10392:GrGLGpu::waitSemaphore\28GrSemaphore*\29 +10393:GrGLGpu::waitFence\28unsigned\20long\20long\29 +10394:GrGLGpu::submit\28GrOpsRenderPass*\29 +10395:GrGLGpu::stagingBufferManager\28\29 +10396:GrGLGpu::refPipelineBuilder\28\29 +10397:GrGLGpu::prepareTextureForCrossContextUsage\28GrTexture*\29 +10398:GrGLGpu::precompileShader\28SkData\20const&\2c\20SkData\20const&\29 +10399:GrGLGpu::pipelineBuilder\28\29 +10400:GrGLGpu::onWritePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +10401:GrGLGpu::onWrapRenderableBackendTexture\28GrBackendTexture\20const&\2c\20int\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +10402:GrGLGpu::onWrapCompressedBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +10403:GrGLGpu::onWrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\29 +10404:GrGLGpu::onWrapBackendRenderTarget\28GrBackendRenderTarget\20const&\29 +10405:GrGLGpu::onUpdateCompressedBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20void\20const*\2c\20unsigned\20long\29 +10406:GrGLGpu::onTransferPixelsTo\28GrTexture*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +10407:GrGLGpu::onTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\29 +10408:GrGLGpu::onTransferFromBufferToBuffer\28sk_sp\2c\20unsigned\20long\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +10409:GrGLGpu::onSubmitToGpu\28GrSyncCpu\29 +10410:GrGLGpu::onResolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +10411:GrGLGpu::onResetTextureBindings\28\29 +10412:GrGLGpu::onResetContext\28unsigned\20int\29 +10413:GrGLGpu::onRegenerateMipMapLevels\28GrTexture*\29 +10414:GrGLGpu::onReadPixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20unsigned\20long\29 +10415:GrGLGpu::onGetOpsRenderPass\28GrRenderTarget*\2c\20bool\2c\20GrAttachment*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const&\2c\20GrOpsRenderPass::LoadAndStoreInfo\20const&\2c\20GrOpsRenderPass::StencilLoadAndStoreInfo\20const&\2c\20skia_private::TArray\20const&\2c\20GrXferBarrierFlags\29 +10416:GrGLGpu::onDumpJSON\28SkJSONWriter*\29\20const +10417:GrGLGpu::onCreateTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +10418:GrGLGpu::onCreateCompressedTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20void\20const*\2c\20unsigned\20long\29 +10419:GrGLGpu::onCreateCompressedBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\29 +10420:GrGLGpu::onCreateBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +10421:GrGLGpu::onCreateBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +10422:GrGLGpu::onCopySurface\28GrSurface*\2c\20SkIRect\20const&\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +10423:GrGLGpu::onClearBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20std::__2::array\29 +10424:GrGLGpu::makeStencilAttachment\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\29 +10425:GrGLGpu::makeSemaphore\28bool\29 +10426:GrGLGpu::makeMSAAAttachment\28SkISize\2c\20GrBackendFormat\20const&\2c\20int\2c\20skgpu::Protected\2c\20GrMemoryless\29 +10427:GrGLGpu::insertSemaphore\28GrSemaphore*\29 +10428:GrGLGpu::insertFence\28\29 +10429:GrGLGpu::getPreferredStencilFormat\28GrBackendFormat\20const&\29 +10430:GrGLGpu::finishOutstandingGpuWork\28\29 +10431:GrGLGpu::disconnect\28GrGpu::DisconnectType\29 +10432:GrGLGpu::deleteFence\28unsigned\20long\20long\29 +10433:GrGLGpu::deleteBackendTexture\28GrBackendTexture\20const&\29 +10434:GrGLGpu::compile\28GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\29 +10435:GrGLGpu::checkFinishProcs\28\29 +10436:GrGLGpu::addFinishedProc\28void\20\28*\29\28void*\29\2c\20void*\29 +10437:GrGLGpu::ProgramCache::~ProgramCache\28\29.1 +10438:GrGLGpu::ProgramCache::~ProgramCache\28\29 +10439:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20unsigned\20int\2c\20float\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\29 +10440:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\29 +10441:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\2c\20float\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20float\2c\20float\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20float\2c\20float\2c\20float\2c\20float\29 +10442:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\29\29::'lambda'\28void\20const*\2c\20float\29::__invoke\28void\20const*\2c\20float\29 +10443:GrGLFunction::GrGLFunction\28void\20\28*\29\28__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29\29::'lambda'\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29::__invoke\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29 +10444:GrGLFunction::GrGLFunction\28void\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +10445:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29\29::'lambda'\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29::__invoke\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29 +10446:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +10447:GrGLCaps::~GrGLCaps\28\29.1 +10448:GrGLCaps::surfaceSupportsReadPixels\28GrSurface\20const*\29\20const +10449:GrGLCaps::supportedWritePixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +10450:GrGLCaps::onSurfaceSupportsWritePixels\28GrSurface\20const*\29\20const +10451:GrGLCaps::onSupportsDynamicMSAA\28GrRenderTargetProxy\20const*\29\20const +10452:GrGLCaps::onSupportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +10453:GrGLCaps::onIsWindowRectanglesSupportedForRT\28GrBackendRenderTarget\20const&\29\20const +10454:GrGLCaps::onGetReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +10455:GrGLCaps::onGetDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\29\20const +10456:GrGLCaps::onGetDefaultBackendFormat\28GrColorType\29\20const +10457:GrGLCaps::onDumpJSON\28SkJSONWriter*\29\20const +10458:GrGLCaps::onCanCopySurface\28GrSurfaceProxy\20const*\2c\20SkIRect\20const&\2c\20GrSurfaceProxy\20const*\2c\20SkIRect\20const&\29\20const +10459:GrGLCaps::onAreColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +10460:GrGLCaps::onApplyOptionsOverrides\28GrContextOptions\20const&\29 +10461:GrGLCaps::maxRenderTargetSampleCount\28GrBackendFormat\20const&\29\20const +10462:GrGLCaps::makeDesc\28GrRenderTarget*\2c\20GrProgramInfo\20const&\2c\20GrCaps::ProgramDescOverrideFlags\29\20const +10463:GrGLCaps::isFormatTexturable\28GrBackendFormat\20const&\2c\20GrTextureType\29\20const +10464:GrGLCaps::isFormatSRGB\28GrBackendFormat\20const&\29\20const +10465:GrGLCaps::isFormatRenderable\28GrBackendFormat\20const&\2c\20int\29\20const +10466:GrGLCaps::isFormatCopyable\28GrBackendFormat\20const&\29\20const +10467:GrGLCaps::isFormatAsColorTypeRenderable\28GrColorType\2c\20GrBackendFormat\20const&\2c\20int\29\20const +10468:GrGLCaps::getWriteSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +10469:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrBackendFormat\20const&\29\20const +10470:GrGLCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +10471:GrGLCaps::getBackendFormatFromCompressionType\28SkTextureCompressionType\29\20const +10472:GrGLCaps::computeFormatKey\28GrBackendFormat\20const&\29\20const +10473:GrGLBuffer::~GrGLBuffer\28\29.1 +10474:GrGLBuffer::~GrGLBuffer\28\29 +10475:GrGLBuffer::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +10476:GrGLBuffer::onUpdateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +10477:GrGLBuffer::onUnmap\28GrGpuBuffer::MapType\29 +10478:GrGLBuffer::onSetLabel\28\29 +10479:GrGLBuffer::onRelease\28\29 +10480:GrGLBuffer::onMap\28GrGpuBuffer::MapType\29 +10481:GrGLBuffer::onClearToZero\28\29 +10482:GrGLBuffer::onAbandon\28\29 +10483:GrGLBackendTextureData::~GrGLBackendTextureData\28\29.1 +10484:GrGLBackendTextureData::~GrGLBackendTextureData\28\29 +10485:GrGLBackendTextureData::isSameTexture\28GrBackendTextureData\20const*\29\20const +10486:GrGLBackendTextureData::isProtected\28\29\20const +10487:GrGLBackendTextureData::getBackendFormat\28\29\20const +10488:GrGLBackendTextureData::equal\28GrBackendTextureData\20const*\29\20const +10489:GrGLBackendTextureData::copyTo\28SkAnySubclass&\29\20const +10490:GrGLBackendRenderTargetData::isProtected\28\29\20const +10491:GrGLBackendRenderTargetData::getBackendFormat\28\29\20const +10492:GrGLBackendRenderTargetData::equal\28GrBackendRenderTargetData\20const*\29\20const +10493:GrGLBackendRenderTargetData::copyTo\28SkAnySubclass&\29\20const +10494:GrGLBackendFormatData::toString\28\29\20const +10495:GrGLBackendFormatData::stencilBits\28\29\20const +10496:GrGLBackendFormatData::equal\28GrBackendFormatData\20const*\29\20const +10497:GrGLBackendFormatData::desc\28\29\20const +10498:GrGLBackendFormatData::copyTo\28SkAnySubclass&\29\20const +10499:GrGLBackendFormatData::compressionType\28\29\20const +10500:GrGLBackendFormatData::channelMask\28\29\20const +10501:GrGLBackendFormatData::bytesPerBlock\28\29\20const +10502:GrGLAttachment::~GrGLAttachment\28\29 +10503:GrGLAttachment::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +10504:GrGLAttachment::onSetLabel\28\29 +10505:GrGLAttachment::onRelease\28\29 +10506:GrGLAttachment::onAbandon\28\29 +10507:GrGLAttachment::backendFormat\28\29\20const +10508:GrFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10509:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10510:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +10511:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10512:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10513:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::name\28\29\20const +10514:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10515:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::clone\28\29\20const +10516:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10517:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const +10518:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::name\28\29\20const +10519:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::clone\28\29\20const +10520:GrFragmentProcessor::ProgramImpl::~ProgramImpl\28\29 +10521:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10522:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const +10523:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::name\28\29\20const +10524:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::clone\28\29\20const +10525:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10526:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const +10527:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::name\28\29\20const +10528:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10529:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::clone\28\29\20const +10530:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10531:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const +10532:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::name\28\29\20const +10533:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10534:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +10535:GrFixedClip::~GrFixedClip\28\29.1 +10536:GrFixedClip::~GrFixedClip\28\29 +10537:GrExternalTextureGenerator::onGenerateTexture\28GrRecordingContext*\2c\20SkImageInfo\20const&\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +10538:GrEagerDynamicVertexAllocator::lock\28unsigned\20long\2c\20int\29 +10539:GrDynamicAtlas::~GrDynamicAtlas\28\29.1 +10540:GrDynamicAtlas::~GrDynamicAtlas\28\29 +10541:GrDrawOp::usesStencil\28\29\20const +10542:GrDrawOp::usesMSAA\28\29\20const +10543:GrDrawOp::fixedFunctionFlags\28\29\20const +10544:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29.1 +10545:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29 +10546:GrDistanceFieldPathGeoProc::onTextureSampler\28int\29\20const +10547:GrDistanceFieldPathGeoProc::name\28\29\20const +10548:GrDistanceFieldPathGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10549:GrDistanceFieldPathGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10550:GrDistanceFieldPathGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10551:GrDistanceFieldPathGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10552:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29.1 +10553:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29 +10554:GrDistanceFieldLCDTextGeoProc::name\28\29\20const +10555:GrDistanceFieldLCDTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10556:GrDistanceFieldLCDTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10557:GrDistanceFieldLCDTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10558:GrDistanceFieldLCDTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10559:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +10560:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +10561:GrDistanceFieldA8TextGeoProc::name\28\29\20const +10562:GrDistanceFieldA8TextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10563:GrDistanceFieldA8TextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10564:GrDistanceFieldA8TextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10565:GrDistanceFieldA8TextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10566:GrDisableColorXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10567:GrDisableColorXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10568:GrDirectContext::~GrDirectContext\28\29.1 +10569:GrDirectContext::releaseResourcesAndAbandonContext\28\29 +10570:GrDirectContext::init\28\29 +10571:GrDirectContext::abandoned\28\29 +10572:GrDirectContext::abandonContext\28\29 +10573:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29.1 +10574:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29 +10575:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29.1 +10576:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29 +10577:GrCpuVertexAllocator::unlock\28int\29 +10578:GrCpuVertexAllocator::lock\28unsigned\20long\2c\20int\29 +10579:GrCpuBuffer::unref\28\29\20const +10580:GrCoverageSetOpXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10581:GrCoverageSetOpXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10582:GrCopyRenderTask::~GrCopyRenderTask\28\29.1 +10583:GrCopyRenderTask::onMakeSkippable\28\29 +10584:GrCopyRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +10585:GrCopyRenderTask::onExecute\28GrOpFlushState*\29 +10586:GrCopyRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10587:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10588:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10589:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const +10590:GrConvexPolyEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10591:GrConvexPolyEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10592:GrConvexPolyEffect::name\28\29\20const +10593:GrConvexPolyEffect::clone\28\29\20const +10594:GrContext_Base::~GrContext_Base\28\29.1 +10595:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29.1 +10596:GrContextThreadSafeProxy::isValidCharacterizationForVulkan\28sk_sp\2c\20bool\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20bool\2c\20bool\29 +10597:GrConicEffect::name\28\29\20const +10598:GrConicEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10599:GrConicEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10600:GrConicEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10601:GrConicEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10602:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +10603:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +10604:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10605:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10606:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const +10607:GrColorSpaceXformEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10608:GrColorSpaceXformEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10609:GrColorSpaceXformEffect::name\28\29\20const +10610:GrColorSpaceXformEffect::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10611:GrColorSpaceXformEffect::clone\28\29\20const +10612:GrCaps::~GrCaps\28\29 +10613:GrCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +10614:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29.1 +10615:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29 +10616:GrBitmapTextGeoProc::onTextureSampler\28int\29\20const +10617:GrBitmapTextGeoProc::name\28\29\20const +10618:GrBitmapTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10619:GrBitmapTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10620:GrBitmapTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10621:GrBitmapTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10622:GrBicubicEffect::onMakeProgramImpl\28\29\20const +10623:GrBicubicEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10624:GrBicubicEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10625:GrBicubicEffect::name\28\29\20const +10626:GrBicubicEffect::clone\28\29\20const +10627:GrBicubicEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10628:GrBicubicEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10629:GrAttachment::onGpuMemorySize\28\29\20const +10630:GrAttachment::getResourceType\28\29\20const +10631:GrAttachment::computeScratchKey\28skgpu::ScratchKey*\29\20const +10632:GrAtlasManager::~GrAtlasManager\28\29.1 +10633:GrAtlasManager::preFlush\28GrOnFlushResourceProvider*\29 +10634:GrAtlasManager::postFlush\28skgpu::AtlasToken\29 +10635:GrAATriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +10636:GetRectsForRange\28skia::textlayout::Paragraph&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +10637:GetRectsForPlaceholders\28skia::textlayout::Paragraph&\29 +10638:GetLineMetrics\28skia::textlayout::Paragraph&\29 +10639:GetLineMetricsAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +10640:GetGlyphInfoAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +10641:GetCoeffsFast +10642:GetCoeffsAlt +10643:GetClosestGlyphInfoAtCoordinate\28skia::textlayout::Paragraph&\2c\20float\2c\20float\29 +10644:FontMgrRunIterator::~FontMgrRunIterator\28\29.1 +10645:FontMgrRunIterator::~FontMgrRunIterator\28\29 +10646:FontMgrRunIterator::currentFont\28\29\20const +10647:FontMgrRunIterator::consume\28\29 +10648:ExtractGreen_C +10649:ExtractAlpha_C +10650:ExtractAlphaRows +10651:ExternalWebGLTexture::~ExternalWebGLTexture\28\29.1 +10652:ExternalWebGLTexture::~ExternalWebGLTexture\28\29 +10653:ExternalWebGLTexture::getBackendTexture\28\29 +10654:ExternalWebGLTexture::dispose\28\29 +10655:ExportAlphaRGBA4444 +10656:ExportAlpha +10657:Equals\28SkPath\20const&\2c\20SkPath\20const&\29 +10658:End +10659:EmitYUV +10660:EmitSampledRGB +10661:EmitRescaledYUV +10662:EmitRescaledRGB +10663:EmitRescaledAlphaYUV +10664:EmitRescaledAlphaRGB +10665:EmitFancyRGB +10666:EmitAlphaYUV +10667:EmitAlphaRGBA4444 +10668:EmitAlphaRGB +10669:EllipticalRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10670:EllipticalRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10671:EllipticalRRectOp::name\28\29\20const +10672:EllipticalRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10673:EllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10674:EllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10675:EllipseOp::name\28\29\20const +10676:EllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10677:EllipseGeometryProcessor::name\28\29\20const +10678:EllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10679:EllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10680:EllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10681:Dual_Project +10682:DitherCombine8x8_C +10683:DispatchAlpha_C +10684:DispatchAlphaToGreen_C +10685:DisableColorXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10686:DisableColorXP::name\28\29\20const +10687:DisableColorXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10688:DisableColorXP::makeProgramImpl\28\29\20const +10689:Direct_Move_Y +10690:Direct_Move_X +10691:Direct_Move_Orig_Y +10692:Direct_Move_Orig_X +10693:Direct_Move_Orig +10694:Direct_Move +10695:DefaultGeoProc::name\28\29\20const +10696:DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10697:DefaultGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10698:DefaultGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10699:DefaultGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10700:DataFontLoader::loadSystemFonts\28SkTypeface_FreeType::Scanner\20const&\2c\20skia_private::TArray\2c\20true>*\29\20const +10701:DIEllipseOp::~DIEllipseOp\28\29.1 +10702:DIEllipseOp::~DIEllipseOp\28\29 +10703:DIEllipseOp::visitProxies\28std::__2::function\20const&\29\20const +10704:DIEllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10705:DIEllipseOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10706:DIEllipseOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10707:DIEllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10708:DIEllipseOp::name\28\29\20const +10709:DIEllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10710:DIEllipseGeometryProcessor::name\28\29\20const +10711:DIEllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10712:DIEllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10713:DIEllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10714:DC8uv_C +10715:DC8uvNoTop_C +10716:DC8uvNoTopLeft_C +10717:DC8uvNoLeft_C +10718:DC4_C +10719:DC16_C +10720:DC16NoTop_C +10721:DC16NoTopLeft_C +10722:DC16NoLeft_C +10723:CustomXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10724:CustomXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10725:CustomXP::xferBarrierType\28GrCaps\20const&\29\20const +10726:CustomXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10727:CustomXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10728:CustomXP::name\28\29\20const +10729:CustomXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10730:CustomXP::makeProgramImpl\28\29\20const +10731:CustomTeardown +10732:CustomSetup +10733:CustomPut +10734:Current_Ppem_Stretched +10735:Current_Ppem +10736:Cr_z_zcfree +10737:Cr_z_zcalloc +10738:CoverageSetOpXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10739:CoverageSetOpXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10740:CoverageSetOpXP::name\28\29\20const +10741:CoverageSetOpXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10742:CoverageSetOpXP::makeProgramImpl\28\29\20const +10743:CopyPath\28SkPath\20const&\29 +10744:ConvertRGB24ToY_C +10745:ConvertBGR24ToY_C +10746:ConvertARGBToY_C +10747:ColorTableEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10748:ColorTableEffect::onMakeProgramImpl\28\29\20const +10749:ColorTableEffect::name\28\29\20const +10750:ColorTableEffect::clone\28\29\20const +10751:CircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +10752:CircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10753:CircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10754:CircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10755:CircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10756:CircularRRectOp::name\28\29\20const +10757:CircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10758:CircleOp::~CircleOp\28\29.1 +10759:CircleOp::~CircleOp\28\29 +10760:CircleOp::visitProxies\28std::__2::function\20const&\29\20const +10761:CircleOp::programInfo\28\29 +10762:CircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10763:CircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10764:CircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10765:CircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10766:CircleOp::name\28\29\20const +10767:CircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10768:CircleGeometryProcessor::name\28\29\20const +10769:CircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10770:CircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10771:CircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10772:CanInterpolate\28SkPath\20const&\2c\20SkPath\20const&\29 +10773:ButtCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +10774:ButtCapDashedCircleOp::visitProxies\28std::__2::function\20const&\29\20const +10775:ButtCapDashedCircleOp::programInfo\28\29 +10776:ButtCapDashedCircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10777:ButtCapDashedCircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10778:ButtCapDashedCircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10779:ButtCapDashedCircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10780:ButtCapDashedCircleOp::name\28\29\20const +10781:ButtCapDashedCircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10782:ButtCapDashedCircleGeometryProcessor::name\28\29\20const +10783:ButtCapDashedCircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10784:ButtCapDashedCircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10785:ButtCapDashedCircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10786:BluntJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +10787:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10788:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10789:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +10790:BlendFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10791:BlendFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10792:BlendFragmentProcessor::name\28\29\20const +10793:BlendFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10794:BlendFragmentProcessor::clone\28\29\20const +10795:AutoCleanPng::infoCallback\28unsigned\20long\29 +10796:AutoCleanPng::decodeBounds\28\29 +10797:ApplyTrim\28SkPath&\2c\20float\2c\20float\2c\20bool\29 +10798:ApplyTransform\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10799:ApplyStroke\28SkPath&\2c\20StrokeOpts\29 +10800:ApplySimplify\28SkPath&\29 +10801:ApplyRewind\28SkPath&\29 +10802:ApplyReset\28SkPath&\29 +10803:ApplyRQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +10804:ApplyRMoveTo\28SkPath&\2c\20float\2c\20float\29 +10805:ApplyRLineTo\28SkPath&\2c\20float\2c\20float\29 +10806:ApplyRCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10807:ApplyRConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10808:ApplyRArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +10809:ApplyQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +10810:ApplyPathOp\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29 +10811:ApplyMoveTo\28SkPath&\2c\20float\2c\20float\29 +10812:ApplyLineTo\28SkPath&\2c\20float\2c\20float\29 +10813:ApplyDash\28SkPath&\2c\20float\2c\20float\2c\20float\29 +10814:ApplyCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10815:ApplyConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10816:ApplyClose\28SkPath&\29 +10817:ApplyArcToTangent\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10818:ApplyArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +10819:ApplyAlphaMultiply_C +10820:ApplyAlphaMultiply_16b_C +10821:ApplyAddPath\28SkPath&\2c\20SkPath\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +10822:AlphaReplace_C +10823:$_3::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +10824:$_2::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 +10825:$_1::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +10826:$_0::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 diff --git a/canvaskit/chromium/canvaskit.wasm b/canvaskit/chromium/canvaskit.wasm new file mode 100644 index 000000000..b50254288 Binary files /dev/null and b/canvaskit/chromium/canvaskit.wasm differ diff --git a/canvaskit/skwasm.js b/canvaskit/skwasm.js new file mode 100644 index 000000000..717117947 --- /dev/null +++ b/canvaskit/skwasm.js @@ -0,0 +1,170 @@ + +var skwasm = (() => { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(moduleArg = {}) { + +function aa(){d.buffer!=h.buffer&&k();return h}function p(){d.buffer!=h.buffer&&k();return ca}function q(){d.buffer!=h.buffer&&k();return da}function t(){d.buffer!=h.buffer&&k();return ea}function v(){d.buffer!=h.buffer&&k();return fa}function ha(){d.buffer!=h.buffer&&k();return ia}var w=moduleArg,ja,ka;w.ready=new Promise((a,b)=>{ja=a;ka=b}); +var la=Object.assign({},w),ma="./this.program",na=(a,b)=>{throw b;},oa="object"==typeof window,pa="function"==typeof importScripts,x="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,A=w.ENVIRONMENT_IS_PTHREAD||!1,C="";function qa(a){return w.locateFile?w.locateFile(a,C):C+a}var ra,sa,ta; +if(x){var fs=require("fs"),ua=require("path");C=pa?ua.dirname(C)+"/":__dirname+"/";ra=(b,c)=>{b=b.startsWith("file://")?new URL(b):ua.normalize(b);return fs.readFileSync(b,c?void 0:"utf8")};ta=b=>{b=ra(b,!0);b.buffer||(b=new Uint8Array(b));return b};sa=(b,c,e,f=!0)=>{b=b.startsWith("file://")?new URL(b):ua.normalize(b);fs.readFile(b,f?void 0:"utf8",(g,l)=>{g?e(g):c(f?l.buffer:l)})};!w.thisProgram&&1{process.exitCode= +b;throw c;};w.inspect=()=>"[Emscripten Module object]";let a;try{a=require("worker_threads")}catch(b){throw console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?'),b;}global.Worker=a.Worker}else if(oa||pa)pa?C=self.location.href:"undefined"!=typeof document&&document.currentScript&&(C=document.currentScript.src),_scriptDir&&(C=_scriptDir),0!==C.indexOf("blob:")?C=C.substr(0,C.replace(/[?#].*/,"").lastIndexOf("/")+1):C="",x||(ra=a=>{var b= +new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},pa&&(ta=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),sa=(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)});x&&"undefined"==typeof performance&&(global.performance=require("perf_hooks").performance); +var va=console.log.bind(console),wa=console.error.bind(console);x&&(va=(...a)=>fs.writeSync(1,a.join(" ")+"\n"),wa=(...a)=>fs.writeSync(2,a.join(" ")+"\n"));var xa=w.print||va,D=w.printErr||wa;Object.assign(w,la);la=null;w.thisProgram&&(ma=w.thisProgram);w.quit&&(na=w.quit);var ya;w.wasmBinary&&(ya=w.wasmBinary);var noExitRuntime=w.noExitRuntime||!0;"object"!=typeof WebAssembly&&za("no native wasm support detected");var d,F,Aa,Ba=!1,Ca,h,ca,Da,Ea,da,ea,fa,ia; +function k(){var a=d.buffer;w.HEAP8=h=new Int8Array(a);w.HEAP16=Da=new Int16Array(a);w.HEAP32=da=new Int32Array(a);w.HEAPU8=ca=new Uint8Array(a);w.HEAPU16=Ea=new Uint16Array(a);w.HEAPU32=ea=new Uint32Array(a);w.HEAPF32=fa=new Float32Array(a);w.HEAPF64=ia=new Float64Array(a)}var Fa=w.INITIAL_MEMORY||16777216;65536<=Fa||za("INITIAL_MEMORY should be larger than STACK_SIZE, was "+Fa+"! (STACK_SIZE=65536)"); +if(A)d=w.wasmMemory;else if(w.wasmMemory)d=w.wasmMemory;else if(d=new WebAssembly.Memory({initial:Fa/65536,maximum:32768,shared:!0}),!(d.buffer instanceof SharedArrayBuffer))throw D("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"),x&&D("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)"), +Error("bad memory");k();Fa=d.buffer.byteLength;var G,Ga=[],Ha=[],Ia=[],Ja=0;function Ka(){return noExitRuntime||0{if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(()=>Ra(a));if(sa)return new Promise((b,c)=>{sa(a,e=>b(new Uint8Array(e)),c)})}return Promise.resolve().then(()=>Ra(a))}function Ta(a,b,c){return Sa(a).then(e=>WebAssembly.instantiate(e,b)).then(e=>e).then(c,e=>{D("failed to asynchronously prepare wasm: "+e);za(e)})} +function Ua(a,b){var c=Qa;return ya||"function"!=typeof WebAssembly.instantiateStreaming||Pa(c)||c.startsWith("file://")||x||"function"!=typeof fetch?Ta(c,a,b):fetch(c,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){D("wasm streaming compile failed: "+f);D("falling back to ArrayBuffer instantiation");return Ta(c,a,b)}))}function Va(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a} +function Wa(a){a.terminate();a.onmessage=()=>{}}function Xa(a){(a=I.g[a])||za();I.xa(a)}function Ya(a){var b=I.ma();if(!b)return 6;I.u.push(b);I.g[a.m]=b;b.m=a.m;var c={cmd:"run",start_routine:a.ya,arg:a.ka,pthread_ptr:a.m};c.D=a.D;c.S=a.S;x&&b.unref();b.postMessage(c,a.Ea);return 0} +var Za="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,$a=(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}, +J=(a,b)=>a?$a(p(),a,b):"";function ab(a){if(A)return K(1,1,a);Ca=a;if(!Ka()){I.za();if(w.onExit)w.onExit(a);Ba=!0}na(a,new Va(a))} +var cb=a=>{Ca=a;if(A)throw bb(a),"unwind";ab(a)},I={o:[],u:[],ha:[],g:{},R:function(){A?I.ra():I.qa()},qa:function(){for(var a=1;a--;)I.X();Ga.unshift(()=>{Na();I.ta(()=>Oa())})},ra:function(){I.receiveObjectTransfer=I.wa;I.threadInitTLS=I.ga;I.setExitStatus=I.fa;noExitRuntime=!1},fa:function(a){Ca=a},La:["$terminateWorker"],za:function(){for(var a of I.u)Wa(a);for(a of I.o)Wa(a);I.o=[];I.u=[];I.g=[]},xa:function(a){var b=a.m;delete I.g[b];I.o.push(a);I.u.splice(I.u.indexOf(a),1);a.m=0;db(b)},wa:function(a){"undefined"!= +typeof eb&&(Object.assign(L,a.S),!w.canvas&&a.D&&L[a.D]&&(w.canvas=L[a.D].F,w.canvas.id=a.D))},ga:function(){I.ha.forEach(a=>a())},ba:a=>new Promise(b=>{a.onmessage=g=>{g=g.data;var l=g.cmd;if(g.targetThread&&g.targetThread!=fb()){var n=I.g[g.Ka];n?n.postMessage(g,g.transferList):D('Internal error! Worker sent a message "'+l+'" to target pthread '+g.targetThread+", but that thread no longer exists!")}else if("checkMailbox"===l)gb();else if("spawnThread"===l)Ya(g);else if("cleanupThread"===l)Xa(g.thread); +else if("killThread"===l)g=g.thread,l=I.g[g],delete I.g[g],Wa(l),db(g),I.u.splice(I.u.indexOf(l),1),l.m=0;else if("cancelThread"===l)I.g[g.thread].postMessage({cmd:"cancel"});else if("loaded"===l)a.loaded=!0,x&&!a.m&&a.unref(),b(a);else if("alert"===l)alert("Thread "+g.threadId+": "+g.text);else if("setimmediate"===g.target)a.postMessage(g);else if("callHandler"===l)w[g.handler](...g.args);else l&&D("worker sent an unknown command "+l)};a.onerror=g=>{D("worker sent an error! "+g.filename+":"+g.lineno+ +": "+g.message);throw g;};x&&(a.on("message",function(g){a.onmessage({data:g})}),a.on("error",function(g){a.onerror(g)}));var c=[],e=["onExit","onAbort","print","printErr"],f;for(f of e)w.hasOwnProperty(f)&&c.push(f);a.postMessage({cmd:"load",handlers:c,urlOrBlob:w.mainScriptUrlOrBlob||_scriptDir,wasmMemory:d,wasmModule:Aa})}),ta:function(a){if(A)return a();Promise.all(I.o.map(I.ba)).then(a)},X:function(){var a=qa("skwasm.worker.js");a=new Worker(a);I.o.push(a)},ma:function(){0==I.o.length&&(I.X(), +I.ba(I.o[0]));return I.o.pop()}};w.PThread=I;var hb=a=>{for(;0>2];a=q()[a+56>>2];ib(b,b-a);M(b)};function bb(a){if(A)return K(2,0,a);cb(a)}w.invokeEntryPoint=function(a,b){a=G.get(a)(b);Ka()?I.fa(a):jb(a)};function kb(a){this.C=a-24;this.ua=function(b){t()[this.C+4>>2]=b};this.sa=function(b){t()[this.C+8>>2]=b};this.R=function(b,c){this.na();this.ua(b);this.sa(c)};this.na=function(){t()[this.C+16>>2]=0}}var lb=0,mb=0; +function nb(a,b,c,e){return A?K(3,1,a,b,c,e):ob(a,b,c,e)} +function ob(a,b,c,e){if("undefined"==typeof SharedArrayBuffer)return D("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var f=[],g=0,l=b?t()[b+40>>2]:0;4294967295==l?l="#canvas":l&&(l=J(l).trim());l&&(l=l.split(","));var n={},r=w.canvas?w.canvas.id:"",u;for(u in l){var y=l[u].trim();try{if("#canvas"==y){if(!w.canvas){D('pthread_create: could not find canvas with ID "'+y+'" to transfer to thread!');g=28;break}y=w.canvas.id}if(L[y]){var V=L[y];L[y]=null;w.canvas instanceof +OffscreenCanvas&&y===w.canvas.id&&(w.canvas=null)}else if(!A){var E=w.canvas&&w.canvas.id===y?w.canvas:document.querySelector(y);if(!E){D('pthread_create: could not find canvas with ID "'+y+'" to transfer to thread!');g=28;break}if(E.Y){D('pthread_create: cannot transfer canvas with ID "'+y+'" to thread, since the current thread does not have control over it!');g=63;break}if(E.transferControlToOffscreen)E.h||(E.h=pb(12),q()[E.h>>2]=E.width,q()[E.h+4>>2]=E.height,q()[E.h+8>>2]=0),V={F:E.transferControlToOffscreen(), +h:E.h,id:E.id},E.Y=!0;else return D('pthread_create: cannot transfer control of canvas "'+y+'" to pthread, because current browser does not support OffscreenCanvas!'),D("pthread_create: Build with -sOFFSCREEN_FRAMEBUFFER to enable fallback proxying of GL commands from pthread to main thread."),52}V&&(f.push(V.F),n[V.id]=V)}catch(m){return D('pthread_create: failed to transfer control of canvas "'+y+'" to OffscreenCanvas! Error: '+m),28}}if(A&&(0===f.length||g))return nb(a,b,c,e);if(g)return g;for(E of Object.values(n))q()[E.h+ +8>>2]=a;a={ya:c,m:a,ka:e,D:r,S:n,Ea:f};return A?(a.Ga="spawnThread",postMessage(a,f),0):Ya(a)}function qb(a,b,c){return A?K(4,1,a,b,c):0}function rb(a,b){if(A)return K(5,1,a,b)}function sb(a,b,c){return A?K(6,1,a,b,c):0}function tb(a,b,c,e){if(A)return K(7,1,a,b,c,e)}var ub=a=>{if(!Ba)try{if(a(),!Ka())try{A?jb(Ca):cb(Ca)}catch(b){b instanceof Va||"unwind"==b||na(1,b)}}catch(b){b instanceof Va||"unwind"==b||na(1,b)}}; +function vb(a){"function"===typeof Atomics.Fa&&(Atomics.Fa(q(),a>>2,a).value.then(gb),a+=128,Atomics.store(q(),a>>2,1))}w.__emscripten_thread_mailbox_await=vb;function gb(){var a=fb();a&&(vb(a),ub(()=>wb()))}w.checkMailbox=gb; +var xb=a=>{var b=N();a=a();M(b);return a},yb=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},zb=(a,b,c,e)=>{if(!(0=l){var n=a.charCodeAt(++g);l=65536+((l&1023)<<10)|n&1023}if(127>=l){if(c>=e)break;b[c++]=l}else{if(2047>=l){if(c+1>=e)break;b[c++]=192|l>>6}else{if(65535>=l){if(c+2>=e)break;b[c++]=224|l>>12}else{if(c+3>=e)break; +b[c++]=240|l>>18;b[c++]=128|l>>12&63}b[c++]=128|l>>6&63}b[c++]=128|l&63}}b[c]=0;return c-f},Ab=a=>{var b=yb(a)+1,c=pb(b);c&&zb(a,p(),c,b);return c};function Bb(a,b,c,e){b=b?J(b):"";xb(function(){var f=Cb(12),g=0;b&&(g=Ab(b));q()[f>>2]=g;q()[f+4>>2]=c;q()[f+8>>2]=e;Db(a,654311424,0,g,f)})} +function Eb(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,e){b.vertexAttribDivisorANGLE(c,e)},a.drawArraysInstanced=function(c,e,f,g){b.drawArraysInstancedANGLE(c,e,f,g)},a.drawElementsInstanced=function(c,e,f,g,l){b.drawElementsInstancedANGLE(c,e,f,g,l)})} +function Fb(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 Gb(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,e){b.drawBuffersWEBGL(c,e)})} +function Hb(a){a.Z=a.getExtension("WEBGL_draw_instanced_base_vertex_base_instance")}function Ib(a){a.ea=a.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance")}function Jb(a){a.Ja=a.getExtension("WEBGL_multi_draw")}var Kb=1,Lb=[],O=[],Mb=[],Nb=[],P=[],Q=[],Ob=[],Pb={},L={},R=[],Qb=[],Rb={},Sb={},Tb=4;function S(a){Ub||(Ub=a)}function Vb(a){for(var b=Kb++,c=a.length;c>2]=fb();var e={handle:c,attributes:b,version:b.da,s:a};a.canvas&&(a.canvas.H=e);Pb[c]=e;("undefined"==typeof b.aa||b.aa)&&Yb(e);return c} +function Yb(a){a||(a=T);if(!a.pa){a.pa=!0;var b=a.s;Eb(b);Fb(b);Gb(b);Hb(b);Ib(b);2<=a.version&&(b.$=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.$)b.$=b.getExtension("EXT_disjoint_timer_query");Jb(b);(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}}var eb={},Ub,T; +function Zb(a){a=2>2]=b,q()[e.h+4>>2]=c);if(e.F||!e.Y)e.F&&(e=e.F),a=!1,e.H&&e.H.s&&(a=e.H.s.getParameter(2978),a=0===a[0]&&0===a[1]&&a[2]===e.width&&a[3]===e.height),e.width=b,e.height=c,a&&e.H.s.viewport(0,0,b,c);else return e.h?(e=q()[e.h+8>>2],Bb(e,a,b,c),1):-4;return 0} +function ac(a,b,c){return A?K(8,1,a,b,c):$b(a,b,c)}function bc(a,b,c,e,f,g,l,n){return A?K(9,1,a,b,c,e,f,g,l,n):-52}function cc(a,b,c,e,f,g,l){if(A)return K(10,1,a,b,c,e,f,g,l)}function dc(a,b){U.bindFramebuffer(a,Mb[b])}function ec(a){U.clear(a)}function fc(a,b,c,e){U.clearColor(a,b,c,e)}function gc(a){U.clearStencil(a)} +function hc(a,b,c){if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&S(1280);return;case 34814:case 36345:e=0;break;case 34466:var f=U.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>T.version){S(1282);return}e=2*(U.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>T.version){S(1280);return}e=33307==a?3:0}if(void 0===e)switch(f=U.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":S(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:S(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:v()[b+4*a>>2]=f[a];break;case 4:aa()[b+a>>0]=f[a]?1:0}return}try{e=f.name| +0}catch(g){S(1280);D("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+g+")");return}}break;default:S(1280);D("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;t()[b>>2]=c;t()[b+4>>2]=(c-t()[b>>2])/4294967296;break;case 0:q()[b>>2]=e;break;case 2:v()[b>>2]=e;break;case 4:aa()[b>>0]=e?1:0}}else S(1281)}function ic(a,b){hc(a,b,0)} +function K(a,b){var c=arguments.length-2,e=arguments;return xb(()=>{for(var f=Cb(8*c),g=f>>3,l=0;l{if(!mc){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:ma||"./this.program"},b;for(b in lc)void 0===lc[b]?delete a[b]:a[b]=lc[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);mc=c}return mc},mc; +function oc(a,b){if(A)return K(11,1,a,b);var c=0;nc().forEach(function(e,f){var g=b+c;f=t()[a+4*f>>2]=g;for(g=0;g>0]=e.charCodeAt(g);aa()[f>>0]=0;c+=e.length+1});return 0}function pc(a,b){if(A)return K(12,1,a,b);var c=nc();t()[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});t()[b>>2]=e;return 0}function qc(a){return A?K(13,1,a):52}function rc(a,b,c,e,f,g){return A?K(14,1,a,b,c,e,f,g):52}function sc(a,b,c,e){return A?K(15,1,a,b,c,e):52} +function tc(a,b,c,e,f){return A?K(16,1,a,b,c,e,f):70}var uc=[null,[],[]];function vc(a,b,c,e){if(A)return K(17,1,a,b,c,e);for(var f=0,g=0;g>2],n=t()[b+4>>2];b+=8;for(var r=0;r>2]=f;return 0}function wc(a){U.bindVertexArray(Ob[a])}function xc(a,b){for(var c=0;c>2];U.deleteVertexArray(Ob[e]);Ob[e]=null}}var yc=[]; +function zc(a,b,c,e){U.drawElements(a,b,c,e)}function Ac(a,b,c,e){for(var f=0;f>2]=l}}function Bc(a,b){Ac(a,b,"createVertexArray",Ob)}function Cc(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function Dc(a){a-=5120;0==a?a=aa():1==a?a=p():2==a?(d.buffer!=h.buffer&&k(),a=Da):4==a?a=q():6==a?a=v():5==a||28922==a||28520==a||30779==a||30782==a?a=t():(d.buffer!=h.buffer&&k(),a=Ea);return a} +function Ec(a,b,c,e,f){a=Dc(a);var g=31-Math.clz32(a.BYTES_PER_ELEMENT),l=Tb;return a.subarray(f>>g,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<>g)}function W(a){var b=U.la;if(b){var c=b.G[a];"number"==typeof c&&(b.G[a]=c=U.getUniformLocation(b,b.ia[a]+(00===a%4&&(0!==a%100||0===a%400),Rc=[31,29,31,30,31,30,31,31,30,31,30,31],Sc=[31,28,31,30,31,30,31,31,30,31,30,31];function Tc(a){var b=Array(yb(a)+1);zb(a,b,0,b.length);return b} +var Uc=(a,b)=>{aa().set(a,b)},Vc=(a,b,c,e)=>{function f(m,z,B){for(m="number"==typeof m?m.toString():m||"";m.lengthIc?-1:0ba-m.getDate())z-=ba-m.getDate()+1,m.setDate(1),11>B?m.setMonth(B+1):(m.setMonth(0),m.setFullYear(m.getFullYear()+1));else{m.setDate(m.getDate()+z);break}}B=new Date(m.getFullYear()+1,0,4);z=n(new Date(m.getFullYear(), +0,4));B=n(B);return 0>=l(z,m)?0>=l(B,m)?m.getFullYear()+1:m.getFullYear():m.getFullYear()-1}var u=q()[e+40>>2];e={Ca:q()[e>>2],Ba:q()[e+4>>2],M:q()[e+8>>2],V:q()[e+12>>2],N:q()[e+16>>2],A:q()[e+20>>2],l:q()[e+24>>2],v:q()[e+28>>2],Ma:q()[e+32>>2],Aa:q()[e+36>>2],Da:u?J(u):""};c=J(c);u={"%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 u)c=c.replace(new RegExp(y,"g"),u[y]);var V="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),E="January February March April May June July August September October November December".split(" ");u={"%a":m=>V[m.l].substring(0,3),"%A":m=>V[m.l],"%b":m=>E[m.N].substring(0,3),"%B":m=>E[m.N],"%C":m=>g((m.A+1900)/100| +0,2),"%d":m=>g(m.V,2),"%e":m=>f(m.V,2," "),"%g":m=>r(m).toString().substring(2),"%G":m=>r(m),"%H":m=>g(m.M,2),"%I":m=>{m=m.M;0==m?m=12:12{for(var z=0,B=0;B<=m.N-1;z+=(Qc(m.A+1900)?Rc:Sc)[B++]);return g(m.V+z,3)},"%m":m=>g(m.N+1,2),"%M":m=>g(m.Ba,2),"%n":()=>"\n","%p":m=>0<=m.M&&12>m.M?"AM":"PM","%S":m=>g(m.Ca,2),"%t":()=>"\t","%u":m=>m.l||7,"%U":m=>g(Math.floor((m.v+7-m.l)/7),2),"%V":m=>{var z=Math.floor((m.v+7-(m.l+6)%7)/7);2>=(m.l+371-m.v-2)%7&&z++;if(z)53==z&& +(B=(m.l+371-m.v)%7,4==B||3==B&&Qc(m.A)||(z=1));else{z=52;var B=(m.l+7-m.v-1)%7;(4==B||5==B&&Qc(m.A%400-1))&&z++}return g(z,2)},"%w":m=>m.l,"%W":m=>g(Math.floor((m.v+7-(m.l+6)%7)/7),2),"%y":m=>(m.A+1900).toString().substring(2),"%Y":m=>m.A+1900,"%z":m=>{m=m.Aa;var z=0<=m;m=Math.abs(m)/60;return(z?"+":"-")+String("0000"+(m/60*100+m%60)).slice(-4)},"%Z":m=>m.Da,"%%":()=>"%"};c=c.replace(/%%/g,"\x00\x00");for(y in u)c.includes(y)&&(c=c.replace(new RegExp(y,"g"),u[y](e)));c=c.replace(/\0\0/g,"%");y=Tc(c); +if(y.length>b)return 0;Uc(y,a);return y.length-1},Wc=void 0,Xc=[];I.R();for(var U,Y=0;32>Y;++Y)yc.push(Array(Y));var Yc=new Float32Array(288);for(Y=0;288>Y;++Y)X[Y]=Yc.subarray(0,Y+1);var Zc=new Int32Array(288);for(Y=0;288>Y;++Y)Fc[Y]=Zc.subarray(0,Y+1); +(function(){const a=new Map,b=new Map;Pc=function(c,e,f){I.g[c].postMessage({L:"setAssociatedObject",T:e,object:f},[f])};Mc=function(c){return b.get(c)};Nc=function(c){function e({data:f}){var g=f.L;if(g)switch(g){case "renderPicture":$c(f.U,f.va,f.O);break;case "onRenderComplete":ad(f.U,f.O,f.oa);break;case "setAssociatedObject":b.set(f.T,f.object);break;case "disposeAssociatedObject":f=f.T;g=b.get(f);g.close&&g.close();b.delete(f);break;default:console.warn(`unrecognized skwasm message: ${g}`)}} +c?I.g[c].addEventListener("message",e):addEventListener("message",e)};Kc=function(c,e,f,g){I.g[c].postMessage({L:"renderPicture",U:e,va:f,O:g})};Jc=function(c,e){c=new OffscreenCanvas(c,e);e=Wb(c);a.set(e,c);return e};Oc=function(c,e,f){c=a.get(c);c.width=e;c.height=f};Gc=async function(c,e,f,g,l){e=a.get(e);g=await createImageBitmap(e,0,0,g,l);postMessage({L:"onRenderComplete",U:c,O:f,oa:g},[g])};Hc=function(c,e,f){const g=T.s,l=g.createTexture();g.bindTexture(g.TEXTURE_2D,l);g.pixelStorei(g.UNPACK_PREMULTIPLY_ALPHA_WEBGL, +!0);g.texImage2D(g.TEXTURE_2D,0,g.RGBA,e,f,0,g.RGBA,g.UNSIGNED_BYTE,c);g.pixelStorei(g.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);g.bindTexture(g.TEXTURE_2D,null);c=Vb(P);P[c]=l;return c};Lc=function(c,e){I.g[c].postMessage({L:"disposeAssociatedObject",T:e})}})(); +var bd=[null,ab,bb,nb,qb,rb,sb,tb,ac,bc,cc,oc,pc,qc,rc,sc,tc,vc],od={__cxa_throw:function(a,b,c){(new kb(a)).R(b,c);lb=a;mb++;throw lb;},__emscripten_init_main_thread_js:function(a){cd(a,!pa,1,!oa,65536,!1);I.ga()},__emscripten_thread_cleanup:function(a){A?postMessage({cmd:"cleanupThread",thread:a}):Xa(a)},__pthread_create_js:ob,__syscall_fcntl64:qb,__syscall_fstat64:rb,__syscall_ioctl:sb,__syscall_openat:tb,_emscripten_get_now_is_monotonic:()=>!0,_emscripten_notify_mailbox_postmessage:function(a, +b){a==b?setTimeout(()=>gb()):A?postMessage({targetThread:a,cmd:"checkMailbox"}):(a=I.g[a])&&a.postMessage({cmd:"checkMailbox"})},_emscripten_set_offscreencanvas_size:function(a,b,c){return Zb(a)?$b(a,b,c):ac(a,b,c)},_emscripten_thread_mailbox_await:vb,_emscripten_thread_set_strongref:function(a){x&&I.g[a].ref()},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:bc,_munmap_js:cc,abort:()=>{za("")},emscripten_check_blocking_allowed:function(){},emscripten_exit_with_live_runtime:()=>{Ja+=1;throw"unwind"; +},emscripten_get_now:()=>performance.timeOrigin+performance.now(),emscripten_glBindFramebuffer:dc,emscripten_glClear:ec,emscripten_glClearColor:fc,emscripten_glClearStencil:gc,emscripten_glGetIntegerv:ic,emscripten_receive_on_main_thread_js:function(a,b,c,e){I.Ia=b;kc.length=c;b=e>>3;for(e=0;e{var b=p().length;a>>>=0;if(a<=b||2147483648=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);var f=Math; +e=Math.max(a,e);a:{f=f.min.call(f,2147483648,e+(65536-e%65536)%65536)-d.buffer.byteLength+65535>>>16;try{d.grow(f);k();var g=1;break a}catch(l){}g=void 0}if(g)return!0}return!1},emscripten_webgl_enable_extension:function(a,b){a=Pb[a];b=J(b);b.startsWith("GL_")&&(b=b.substr(3));"ANGLE_instanced_arrays"==b&&Eb(U);"OES_vertex_array_object"==b&&Fb(U);"WEBGL_draw_buffers"==b&&Gb(U);"WEBGL_draw_instanced_base_vertex_base_instance"==b&&Hb(U);"WEBGL_multi_draw_instanced_base_vertex_base_instance"==b&&Ib(U); +"WEBGL_multi_draw"==b&&Jb(U);return!!a.s.getExtension(b)},emscripten_webgl_get_current_context:function(){return T?T.handle:0},emscripten_webgl_make_context_current:function(a){T=Pb[a];w.Ha=U=T&&T.s;return!a||U?0:-5},environ_get:oc,environ_sizes_get:pc,exit:cb,fd_close:qc,fd_pread:rc,fd_read:sc,fd_seek:tc,fd_write:vc,glActiveTexture:function(a){U.activeTexture(a)},glAttachShader:function(a,b){U.attachShader(O[a],Q[b])},glBindAttribLocation:function(a,b,c){U.bindAttribLocation(O[a],b,J(c))},glBindBuffer:function(a, +b){35051==a?U.P=b:35052==a&&(U.B=b);U.bindBuffer(a,Lb[b])},glBindFramebuffer:dc,glBindRenderbuffer:function(a,b){U.bindRenderbuffer(a,Nb[b])},glBindSampler:function(a,b){U.bindSampler(a,R[b])},glBindTexture:function(a,b){U.bindTexture(a,P[b])},glBindVertexArray:wc,glBindVertexArrayOES:wc,glBlendColor:function(a,b,c,e){U.blendColor(a,b,c,e)},glBlendEquation:function(a){U.blendEquation(a)},glBlendFunc:function(a,b){U.blendFunc(a,b)},glBlitFramebuffer:function(a,b,c,e,f,g,l,n,r,u){U.blitFramebuffer(a, +b,c,e,f,g,l,n,r,u)},glBufferData:function(a,b,c,e){2<=T.version?c&&b?U.bufferData(a,p(),e,c,b):U.bufferData(a,b,e):U.bufferData(a,c?p().subarray(c,c+b):b,e)},glBufferSubData:function(a,b,c,e){2<=T.version?c&&U.bufferSubData(a,b,p(),e,c):U.bufferSubData(a,b,p().subarray(e,e+c))},glCheckFramebufferStatus:function(a){return U.checkFramebufferStatus(a)},glClear:ec,glClearColor:fc,glClearStencil:gc,glClientWaitSync:function(a,b,c,e){return U.clientWaitSync(Qb[a],b,(c>>>0)+4294967296*e)},glColorMask:function(a, +b,c,e){U.colorMask(!!a,!!b,!!c,!!e)},glCompileShader:function(a){U.compileShader(Q[a])},glCompressedTexImage2D:function(a,b,c,e,f,g,l,n){2<=T.version?U.B||!l?U.compressedTexImage2D(a,b,c,e,f,g,l,n):U.compressedTexImage2D(a,b,c,e,f,g,p(),n,l):U.compressedTexImage2D(a,b,c,e,f,g,n?p().subarray(n,n+l):null)},glCompressedTexSubImage2D:function(a,b,c,e,f,g,l,n,r){2<=T.version?U.B||!n?U.compressedTexSubImage2D(a,b,c,e,f,g,l,n,r):U.compressedTexSubImage2D(a,b,c,e,f,g,l,p(),r,n):U.compressedTexSubImage2D(a, +b,c,e,f,g,l,r?p().subarray(r,r+n):null)},glCopyBufferSubData:function(a,b,c,e,f){U.copyBufferSubData(a,b,c,e,f)},glCopyTexSubImage2D:function(a,b,c,e,f,g,l,n){U.copyTexSubImage2D(a,b,c,e,f,g,l,n)},glCreateProgram:function(){var a=Vb(O),b=U.createProgram();b.name=a;b.K=b.I=b.J=0;b.W=1;O[a]=b;return a},glCreateShader:function(a){var b=Vb(Q);Q[b]=U.createShader(a);return b},glCullFace:function(a){U.cullFace(a)},glDeleteBuffers:function(a,b){for(var c=0;c>2],f=Lb[e];f&&(U.deleteBuffer(f), +f.name=0,Lb[e]=null,e==U.P&&(U.P=0),e==U.B&&(U.B=0))}},glDeleteFramebuffers:function(a,b){for(var c=0;c>2],f=Mb[e];f&&(U.deleteFramebuffer(f),f.name=0,Mb[e]=null)}},glDeleteProgram:function(a){if(a){var b=O[a];b?(U.deleteProgram(b),b.name=0,O[a]=null):S(1281)}},glDeleteRenderbuffers:function(a,b){for(var c=0;c>2],f=Nb[e];f&&(U.deleteRenderbuffer(f),f.name=0,Nb[e]=null)}},glDeleteSamplers:function(a,b){for(var c=0;c>2],f=R[e]; +f&&(U.deleteSampler(f),f.name=0,R[e]=null)}},glDeleteShader:function(a){if(a){var b=Q[a];b?(U.deleteShader(b),Q[a]=null):S(1281)}},glDeleteSync:function(a){if(a){var b=Qb[a];b?(U.deleteSync(b),b.name=0,Qb[a]=null):S(1281)}},glDeleteTextures:function(a,b){for(var c=0;c>2],f=P[e];f&&(U.deleteTexture(f),f.name=0,P[e]=null)}},glDeleteVertexArrays:xc,glDeleteVertexArraysOES:xc,glDepthMask:function(a){U.depthMask(!!a)},glDisable:function(a){U.disable(a)},glDisableVertexAttribArray:function(a){U.disableVertexAttribArray(a)}, +glDrawArrays:function(a,b,c){U.drawArrays(a,b,c)},glDrawArraysInstanced:function(a,b,c,e){U.drawArraysInstanced(a,b,c,e)},glDrawArraysInstancedBaseInstanceWEBGL:function(a,b,c,e,f){U.Z.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},glDrawBuffers:function(a,b){for(var c=yc[a],e=0;e>2];U.drawBuffers(c)},glDrawElements:zc,glDrawElementsInstanced:function(a,b,c,e,f){U.drawElementsInstanced(a,b,c,e,f)},glDrawElementsInstancedBaseVertexBaseInstanceWEBGL:function(a,b,c,e,f,g,l){U.Z.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a, +b,c,e,f,g,l)},glDrawRangeElements:function(a,b,c,e,f,g){zc(a,e,f,g)},glEnable:function(a){U.enable(a)},glEnableVertexAttribArray:function(a){U.enableVertexAttribArray(a)},glFenceSync:function(a,b){return(a=U.fenceSync(a,b))?(b=Vb(Qb),a.name=b,Qb[b]=a,b):0},glFinish:function(){U.finish()},glFlush:function(){U.flush()},glFramebufferRenderbuffer:function(a,b,c,e){U.framebufferRenderbuffer(a,b,c,Nb[e])},glFramebufferTexture2D:function(a,b,c,e,f){U.framebufferTexture2D(a,b,c,P[e],f)},glFrontFace:function(a){U.frontFace(a)}, +glGenBuffers:function(a,b){Ac(a,b,"createBuffer",Lb)},glGenFramebuffers:function(a,b){Ac(a,b,"createFramebuffer",Mb)},glGenRenderbuffers:function(a,b){Ac(a,b,"createRenderbuffer",Nb)},glGenSamplers:function(a,b){Ac(a,b,"createSampler",R)},glGenTextures:function(a,b){Ac(a,b,"createTexture",P)},glGenVertexArrays:Bc,glGenVertexArraysOES:Bc,glGenerateMipmap:function(a){U.generateMipmap(a)},glGetBufferParameteriv:function(a,b,c){c?q()[c>>2]=U.getBufferParameter(a,b):S(1281)},glGetError:function(){var a= +U.getError()||Ub;Ub=0;return a},glGetFloatv:function(a,b){hc(a,b,2)},glGetFramebufferAttachmentParameteriv:function(a,b,c,e){a=U.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;q()[e>>2]=a},glGetIntegerv:ic,glGetProgramInfoLog:function(a,b,c,e){a=U.getProgramInfoLog(O[a]);null===a&&(a="(unknown error)");var f;0>2]=b)},glGetProgramiv:function(a,b,c){if(c)if(a>=Kb)S(1281);else if(a=O[a],35716==b)a= +U.getProgramInfoLog(a),null===a&&(a="(unknown error)"),q()[c>>2]=a.length+1;else if(35719==b){if(!a.K)for(b=0;b>2]=a.K}else if(35722==b){if(!a.I)for(b=0;b>2]=a.I}else if(35381==b){if(!a.J)for(b=0;b>2]=a.J}else q()[c>> +2]=U.getProgramParameter(a,b);else S(1281)},glGetRenderbufferParameteriv:function(a,b,c){c?q()[c>>2]=U.getRenderbufferParameter(a,b):S(1281)},glGetShaderInfoLog:function(a,b,c,e){a=U.getShaderInfoLog(Q[a]);null===a&&(a="(unknown error)");var f;0>2]=b)},glGetShaderPrecisionFormat:function(a,b,c,e){a=U.getShaderPrecisionFormat(a,b);q()[c>>2]=a.rangeMin;q()[c+4>>2]=a.rangeMax;q()[e>>2]=a.precision},glGetShaderiv:function(a,b,c){c?35716==b?(a=U.getShaderInfoLog(Q[a]), +null===a&&(a="(unknown error)"),a=a?a.length+1:0,q()[c>>2]=a):35720==b?(a=(a=U.getShaderSource(Q[a]))?a.length+1:0,q()[c>>2]=a):q()[c>>2]=U.getShaderParameter(Q[a],b):S(1281)},glGetString:function(a){var b=Rb[a];if(!b){switch(a){case 7939:b=U.getSupportedExtensions()||[];b=b.concat(b.map(function(e){return"GL_"+e}));b=Ab(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=U.getParameter(a))||S(1280);b=b&&Ab(b);break;case 7938:b=U.getParameter(7938);b=2<=T.version?"OpenGL ES 3.0 ("+b+")": +"OpenGL ES 2.0 ("+b+")";b=Ab(b);break;case 35724:b=U.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=Ab(b);break;default:S(1280)}Rb[a]=b}return b},glGetStringi:function(a,b){if(2>T.version)return S(1282),0;var c=Sb[a];if(c)return 0>b||b>=c.length?(S(1281),0):c[b];switch(a){case 7939:return c=U.getSupportedExtensions()||[],c=c.concat(c.map(function(e){return"GL_"+e})),c=c.map(function(e){return Ab(e)}), +c=Sb[a]=c,0>b||b>=c.length?(S(1281),0):c[b];default:return S(1280),0}},glGetUniformLocation:function(a,b){b=J(b);if(a=O[a]){var c=a,e=c.G,f=c.ja,g;if(!e)for(c.G=e={},c.ia={},g=0;g>>0,f=b.slice(0,g));if((f=a.ja[f])&&e>2];U.invalidateFramebuffer(a,e)},glInvalidateSubFramebuffer:function(a,b,c,e,f,g,l){for(var n=yc[b],r=0;r>2];U.invalidateSubFramebuffer(a,n,e,f,g,l)},glIsSync:function(a){return U.isSync(Qb[a])},glIsTexture:function(a){return(a=P[a])?U.isTexture(a):0},glLineWidth:function(a){U.lineWidth(a)},glLinkProgram:function(a){a=O[a];U.linkProgram(a);a.G=0;a.ja={}},glMultiDrawArraysInstancedBaseInstanceWEBGL:function(a, +b,c,e,f,g){U.ea.multiDrawArraysInstancedBaseInstanceWEBGL(a,q(),b>>2,q(),c>>2,q(),e>>2,t(),f>>2,g)},glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL:function(a,b,c,e,f,g,l,n){U.ea.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,q(),b>>2,c,q(),e>>2,q(),f>>2,q(),g>>2,t(),l>>2,n)},glPixelStorei:function(a,b){3317==a&&(Tb=b);U.pixelStorei(a,b)},glReadBuffer:function(a){U.readBuffer(a)},glReadPixels:function(a,b,c,e,f,g,l){if(2<=T.version)if(U.P)U.readPixels(a,b,c,e,f,g,l);else{var n=Dc(g); +U.readPixels(a,b,c,e,f,g,n,l>>31-Math.clz32(n.BYTES_PER_ELEMENT))}else(l=Ec(g,f,c,e,l))?U.readPixels(a,b,c,e,f,g,l):S(1280)},glRenderbufferStorage:function(a,b,c,e){U.renderbufferStorage(a,b,c,e)},glRenderbufferStorageMultisample:function(a,b,c,e,f){U.renderbufferStorageMultisample(a,b,c,e,f)},glSamplerParameterf:function(a,b,c){U.samplerParameterf(R[a],b,c)},glSamplerParameteri:function(a,b,c){U.samplerParameteri(R[a],b,c)},glSamplerParameteriv:function(a,b,c){c=q()[c>>2];U.samplerParameteri(R[a], +b,c)},glScissor:function(a,b,c,e){U.scissor(a,b,c,e)},glShaderSource:function(a,b,c,e){for(var f="",g=0;g>2]:-1;f+=J(q()[c+4*g>>2],0>l?void 0:l)}U.shaderSource(Q[a],f)},glStencilFunc:function(a,b,c){U.stencilFunc(a,b,c)},glStencilFuncSeparate:function(a,b,c,e){U.stencilFuncSeparate(a,b,c,e)},glStencilMask:function(a){U.stencilMask(a)},glStencilMaskSeparate:function(a,b){U.stencilMaskSeparate(a,b)},glStencilOp:function(a,b,c){U.stencilOp(a,b,c)},glStencilOpSeparate:function(a, +b,c,e){U.stencilOpSeparate(a,b,c,e)},glTexImage2D:function(a,b,c,e,f,g,l,n,r){if(2<=T.version)if(U.B)U.texImage2D(a,b,c,e,f,g,l,n,r);else if(r){var u=Dc(n);U.texImage2D(a,b,c,e,f,g,l,n,u,r>>31-Math.clz32(u.BYTES_PER_ELEMENT))}else U.texImage2D(a,b,c,e,f,g,l,n,null);else U.texImage2D(a,b,c,e,f,g,l,n,r?Ec(n,l,e,f,r):null)},glTexParameterf:function(a,b,c){U.texParameterf(a,b,c)},glTexParameterfv:function(a,b,c){c=v()[c>>2];U.texParameterf(a,b,c)},glTexParameteri:function(a,b,c){U.texParameteri(a,b,c)}, +glTexParameteriv:function(a,b,c){c=q()[c>>2];U.texParameteri(a,b,c)},glTexStorage2D:function(a,b,c,e,f){U.texStorage2D(a,b,c,e,f)},glTexSubImage2D:function(a,b,c,e,f,g,l,n,r){if(2<=T.version)if(U.B)U.texSubImage2D(a,b,c,e,f,g,l,n,r);else if(r){var u=Dc(n);U.texSubImage2D(a,b,c,e,f,g,l,n,u,r>>31-Math.clz32(u.BYTES_PER_ELEMENT))}else U.texSubImage2D(a,b,c,e,f,g,l,n,null);else u=null,r&&(u=Ec(n,l,f,g,r)),U.texSubImage2D(a,b,c,e,f,g,l,n,u)},glUniform1f:function(a,b){U.uniform1f(W(a),b)},glUniform1fv:function(a, +b,c){if(2<=T.version)b&&U.uniform1fv(W(a),v(),c>>2,b);else{if(288>=b)for(var e=X[b-1],f=0;f>2];else e=v().subarray(c>>2,c+4*b>>2);U.uniform1fv(W(a),e)}},glUniform1i:function(a,b){U.uniform1i(W(a),b)},glUniform1iv:function(a,b,c){if(2<=T.version)b&&U.uniform1iv(W(a),q(),c>>2,b);else{if(288>=b)for(var e=Fc[b-1],f=0;f>2];else e=q().subarray(c>>2,c+4*b>>2);U.uniform1iv(W(a),e)}},glUniform2f:function(a,b,c){U.uniform2f(W(a),b,c)},glUniform2fv:function(a,b,c){if(2<= +T.version)b&&U.uniform2fv(W(a),v(),c>>2,2*b);else{if(144>=b)for(var e=X[2*b-1],f=0;f<2*b;f+=2)e[f]=v()[c+4*f>>2],e[f+1]=v()[c+(4*f+4)>>2];else e=v().subarray(c>>2,c+8*b>>2);U.uniform2fv(W(a),e)}},glUniform2i:function(a,b,c){U.uniform2i(W(a),b,c)},glUniform2iv:function(a,b,c){if(2<=T.version)b&&U.uniform2iv(W(a),q(),c>>2,2*b);else{if(144>=b)for(var e=Fc[2*b-1],f=0;f<2*b;f+=2)e[f]=q()[c+4*f>>2],e[f+1]=q()[c+(4*f+4)>>2];else e=q().subarray(c>>2,c+8*b>>2);U.uniform2iv(W(a),e)}},glUniform3f:function(a, +b,c,e){U.uniform3f(W(a),b,c,e)},glUniform3fv:function(a,b,c){if(2<=T.version)b&&U.uniform3fv(W(a),v(),c>>2,3*b);else{if(96>=b)for(var e=X[3*b-1],f=0;f<3*b;f+=3)e[f]=v()[c+4*f>>2],e[f+1]=v()[c+(4*f+4)>>2],e[f+2]=v()[c+(4*f+8)>>2];else e=v().subarray(c>>2,c+12*b>>2);U.uniform3fv(W(a),e)}},glUniform3i:function(a,b,c,e){U.uniform3i(W(a),b,c,e)},glUniform3iv:function(a,b,c){if(2<=T.version)b&&U.uniform3iv(W(a),q(),c>>2,3*b);else{if(96>=b)for(var e=Fc[3*b-1],f=0;f<3*b;f+=3)e[f]=q()[c+4*f>>2],e[f+1]=q()[c+ +(4*f+4)>>2],e[f+2]=q()[c+(4*f+8)>>2];else e=q().subarray(c>>2,c+12*b>>2);U.uniform3iv(W(a),e)}},glUniform4f:function(a,b,c,e,f){U.uniform4f(W(a),b,c,e,f)},glUniform4fv:function(a,b,c){if(2<=T.version)b&&U.uniform4fv(W(a),v(),c>>2,4*b);else{if(72>=b){var e=X[4*b-1],f=v();c>>=2;for(var g=0;g<4*b;g+=4){var l=c+g;e[g]=f[l];e[g+1]=f[l+1];e[g+2]=f[l+2];e[g+3]=f[l+3]}}else e=v().subarray(c>>2,c+16*b>>2);U.uniform4fv(W(a),e)}},glUniform4i:function(a,b,c,e,f){U.uniform4i(W(a),b,c,e,f)},glUniform4iv:function(a, +b,c){if(2<=T.version)b&&U.uniform4iv(W(a),q(),c>>2,4*b);else{if(72>=b)for(var e=Fc[4*b-1],f=0;f<4*b;f+=4)e[f]=q()[c+4*f>>2],e[f+1]=q()[c+(4*f+4)>>2],e[f+2]=q()[c+(4*f+8)>>2],e[f+3]=q()[c+(4*f+12)>>2];else e=q().subarray(c>>2,c+16*b>>2);U.uniform4iv(W(a),e)}},glUniformMatrix2fv:function(a,b,c,e){if(2<=T.version)b&&U.uniformMatrix2fv(W(a),!!c,v(),e>>2,4*b);else{if(72>=b)for(var f=X[4*b-1],g=0;g<4*b;g+=4)f[g]=v()[e+4*g>>2],f[g+1]=v()[e+(4*g+4)>>2],f[g+2]=v()[e+(4*g+8)>>2],f[g+3]=v()[e+(4*g+12)>>2];else f= +v().subarray(e>>2,e+16*b>>2);U.uniformMatrix2fv(W(a),!!c,f)}},glUniformMatrix3fv:function(a,b,c,e){if(2<=T.version)b&&U.uniformMatrix3fv(W(a),!!c,v(),e>>2,9*b);else{if(32>=b)for(var f=X[9*b-1],g=0;g<9*b;g+=9)f[g]=v()[e+4*g>>2],f[g+1]=v()[e+(4*g+4)>>2],f[g+2]=v()[e+(4*g+8)>>2],f[g+3]=v()[e+(4*g+12)>>2],f[g+4]=v()[e+(4*g+16)>>2],f[g+5]=v()[e+(4*g+20)>>2],f[g+6]=v()[e+(4*g+24)>>2],f[g+7]=v()[e+(4*g+28)>>2],f[g+8]=v()[e+(4*g+32)>>2];else f=v().subarray(e>>2,e+36*b>>2);U.uniformMatrix3fv(W(a),!!c,f)}}, +glUniformMatrix4fv:function(a,b,c,e){if(2<=T.version)b&&U.uniformMatrix4fv(W(a),!!c,v(),e>>2,16*b);else{if(18>=b){var f=X[16*b-1],g=v();e>>=2;for(var l=0;l<16*b;l+=16){var n=e+l;f[l]=g[n];f[l+1]=g[n+1];f[l+2]=g[n+2];f[l+3]=g[n+3];f[l+4]=g[n+4];f[l+5]=g[n+5];f[l+6]=g[n+6];f[l+7]=g[n+7];f[l+8]=g[n+8];f[l+9]=g[n+9];f[l+10]=g[n+10];f[l+11]=g[n+11];f[l+12]=g[n+12];f[l+13]=g[n+13];f[l+14]=g[n+14];f[l+15]=g[n+15]}}else f=v().subarray(e>>2,e+64*b>>2);U.uniformMatrix4fv(W(a),!!c,f)}},glUseProgram:function(a){a= +O[a];U.useProgram(a);U.la=a},glVertexAttrib1f:function(a,b){U.vertexAttrib1f(a,b)},glVertexAttrib2fv:function(a,b){U.vertexAttrib2f(a,v()[b>>2],v()[b+4>>2])},glVertexAttrib3fv:function(a,b){U.vertexAttrib3f(a,v()[b>>2],v()[b+4>>2],v()[b+8>>2])},glVertexAttrib4fv:function(a,b){U.vertexAttrib4f(a,v()[b>>2],v()[b+4>>2],v()[b+8>>2],v()[b+12>>2])},glVertexAttribDivisor:function(a,b){U.vertexAttribDivisor(a,b)},glVertexAttribIPointer:function(a,b,c,e,f){U.vertexAttribIPointer(a,b,c,e,f)},glVertexAttribPointer:function(a, +b,c,e,f,g){U.vertexAttribPointer(a,b,c,!!e,f,g)},glViewport:function(a,b,c,e){U.viewport(a,b,c,e)},glWaitSync:function(a,b,c,e){U.waitSync(Qb[a],b,(c>>>0)+4294967296*e)},invoke_ii:dd,invoke_iii:ed,invoke_iiii:fd,invoke_iiiii:gd,invoke_iiiiiii:hd,invoke_vi:jd,invoke_vii:kd,invoke_viii:ld,invoke_viiii:md,invoke_viiiiiii:nd,memory:d||w.wasmMemory,skwasm_captureImageBitmap:Gc,skwasm_createGlTextureFromTextureSource:Hc,skwasm_createOffscreenCanvas:Jc,skwasm_dispatchRenderPicture:Kc,skwasm_disposeAssociatedObjectOnThread:Lc, +skwasm_getAssociatedObject:Mc,skwasm_registerMessageListener:Nc,skwasm_resizeCanvas:Oc,skwasm_setAssociatedObjectOnThread:Pc,strftime_l:(a,b,c,e)=>Vc(a,b,c,e)}; +(function(){function a(c,e){F=c=c.exports;w.wasmExports=F;I.ha.push(F._emscripten_tls_init);G=F.__indirect_function_table;Ha.unshift(F.__wasm_call_ctors);Aa=e;Oa();return c}var b={env:od,wasi_snapshot_preview1:od};Na();if(w.instantiateWasm)try{return w.instantiateWasm(b,a)}catch(c){D("Module.instantiateWasm callback failed with error: "+c),ka(c)}Ua(b,function(c){a(c.instance,c.module)}).catch(ka);return{}})();w._canvas_saveLayer=(a,b,c,e)=>(w._canvas_saveLayer=F.canvas_saveLayer)(a,b,c,e); +w._canvas_save=a=>(w._canvas_save=F.canvas_save)(a);w._canvas_restore=a=>(w._canvas_restore=F.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=F.canvas_restoreToCount)(a,b);w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=F.canvas_getSaveCount)(a);w._canvas_translate=(a,b,c)=>(w._canvas_translate=F.canvas_translate)(a,b,c);w._canvas_scale=(a,b,c)=>(w._canvas_scale=F.canvas_scale)(a,b,c);w._canvas_rotate=(a,b)=>(w._canvas_rotate=F.canvas_rotate)(a,b); +w._canvas_skew=(a,b,c)=>(w._canvas_skew=F.canvas_skew)(a,b,c);w._canvas_transform=(a,b)=>(w._canvas_transform=F.canvas_transform)(a,b);w._canvas_clipRect=(a,b,c,e)=>(w._canvas_clipRect=F.canvas_clipRect)(a,b,c,e);w._canvas_clipRRect=(a,b,c)=>(w._canvas_clipRRect=F.canvas_clipRRect)(a,b,c);w._canvas_clipPath=(a,b,c)=>(w._canvas_clipPath=F.canvas_clipPath)(a,b,c);w._canvas_drawColor=(a,b,c)=>(w._canvas_drawColor=F.canvas_drawColor)(a,b,c); +w._canvas_drawLine=(a,b,c,e,f,g)=>(w._canvas_drawLine=F.canvas_drawLine)(a,b,c,e,f,g);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=F.canvas_drawPaint)(a,b);w._canvas_drawRect=(a,b,c)=>(w._canvas_drawRect=F.canvas_drawRect)(a,b,c);w._canvas_drawRRect=(a,b,c)=>(w._canvas_drawRRect=F.canvas_drawRRect)(a,b,c);w._canvas_drawDRRect=(a,b,c,e)=>(w._canvas_drawDRRect=F.canvas_drawDRRect)(a,b,c,e);w._canvas_drawOval=(a,b,c)=>(w._canvas_drawOval=F.canvas_drawOval)(a,b,c); +w._canvas_drawCircle=(a,b,c,e,f)=>(w._canvas_drawCircle=F.canvas_drawCircle)(a,b,c,e,f);w._canvas_drawArc=(a,b,c,e,f,g)=>(w._canvas_drawArc=F.canvas_drawArc)(a,b,c,e,f,g);w._canvas_drawPath=(a,b,c)=>(w._canvas_drawPath=F.canvas_drawPath)(a,b,c);w._canvas_drawShadow=(a,b,c,e,f,g)=>(w._canvas_drawShadow=F.canvas_drawShadow)(a,b,c,e,f,g);w._canvas_drawParagraph=(a,b,c,e)=>(w._canvas_drawParagraph=F.canvas_drawParagraph)(a,b,c,e); +w._canvas_drawPicture=(a,b)=>(w._canvas_drawPicture=F.canvas_drawPicture)(a,b);w._canvas_drawImage=(a,b,c,e,f,g)=>(w._canvas_drawImage=F.canvas_drawImage)(a,b,c,e,f,g);w._canvas_drawImageRect=(a,b,c,e,f,g)=>(w._canvas_drawImageRect=F.canvas_drawImageRect)(a,b,c,e,f,g);w._canvas_drawImageNine=(a,b,c,e,f,g)=>(w._canvas_drawImageNine=F.canvas_drawImageNine)(a,b,c,e,f,g);w._canvas_drawVertices=(a,b,c,e)=>(w._canvas_drawVertices=F.canvas_drawVertices)(a,b,c,e); +w._canvas_drawPoints=(a,b,c,e,f)=>(w._canvas_drawPoints=F.canvas_drawPoints)(a,b,c,e,f);w._canvas_drawAtlas=(a,b,c,e,f,g,l,n,r)=>(w._canvas_drawAtlas=F.canvas_drawAtlas)(a,b,c,e,f,g,l,n,r);w._canvas_getTransform=(a,b)=>(w._canvas_getTransform=F.canvas_getTransform)(a,b);w._canvas_getLocalClipBounds=(a,b)=>(w._canvas_getLocalClipBounds=F.canvas_getLocalClipBounds)(a,b);w._canvas_getDeviceClipBounds=(a,b)=>(w._canvas_getDeviceClipBounds=F.canvas_getDeviceClipBounds)(a,b); +w._contourMeasureIter_create=(a,b,c)=>(w._contourMeasureIter_create=F.contourMeasureIter_create)(a,b,c);w._contourMeasureIter_next=a=>(w._contourMeasureIter_next=F.contourMeasureIter_next)(a);w._contourMeasureIter_dispose=a=>(w._contourMeasureIter_dispose=F.contourMeasureIter_dispose)(a);w._contourMeasure_dispose=a=>(w._contourMeasure_dispose=F.contourMeasure_dispose)(a);w._contourMeasure_length=a=>(w._contourMeasure_length=F.contourMeasure_length)(a); +w._contourMeasure_isClosed=a=>(w._contourMeasure_isClosed=F.contourMeasure_isClosed)(a);w._contourMeasure_getPosTan=(a,b,c,e)=>(w._contourMeasure_getPosTan=F.contourMeasure_getPosTan)(a,b,c,e);w._contourMeasure_getSegment=(a,b,c,e)=>(w._contourMeasure_getSegment=F.contourMeasure_getSegment)(a,b,c,e);w._skData_create=a=>(w._skData_create=F.skData_create)(a);w._skData_getPointer=a=>(w._skData_getPointer=F.skData_getPointer)(a);w._skData_getConstPointer=a=>(w._skData_getConstPointer=F.skData_getConstPointer)(a); +w._skData_getSize=a=>(w._skData_getSize=F.skData_getSize)(a);w._skData_dispose=a=>(w._skData_dispose=F.skData_dispose)(a);w._imageFilter_createBlur=(a,b,c)=>(w._imageFilter_createBlur=F.imageFilter_createBlur)(a,b,c);w._imageFilter_createDilate=(a,b)=>(w._imageFilter_createDilate=F.imageFilter_createDilate)(a,b);w._imageFilter_createErode=(a,b)=>(w._imageFilter_createErode=F.imageFilter_createErode)(a,b); +w._imageFilter_createMatrix=(a,b)=>(w._imageFilter_createMatrix=F.imageFilter_createMatrix)(a,b);w._imageFilter_createFromColorFilter=a=>(w._imageFilter_createFromColorFilter=F.imageFilter_createFromColorFilter)(a);w._imageFilter_compose=(a,b)=>(w._imageFilter_compose=F.imageFilter_compose)(a,b);w._imageFilter_dispose=a=>(w._imageFilter_dispose=F.imageFilter_dispose)(a);w._imageFilter_getFilterBounds=(a,b)=>(w._imageFilter_getFilterBounds=F.imageFilter_getFilterBounds)(a,b); +w._colorFilter_createMode=(a,b)=>(w._colorFilter_createMode=F.colorFilter_createMode)(a,b);w._colorFilter_createMatrix=a=>(w._colorFilter_createMatrix=F.colorFilter_createMatrix)(a);w._colorFilter_createSRGBToLinearGamma=()=>(w._colorFilter_createSRGBToLinearGamma=F.colorFilter_createSRGBToLinearGamma)();w._colorFilter_createLinearToSRGBGamma=()=>(w._colorFilter_createLinearToSRGBGamma=F.colorFilter_createLinearToSRGBGamma)(); +w._colorFilter_compose=(a,b)=>(w._colorFilter_compose=F.colorFilter_compose)(a,b);w._colorFilter_dispose=a=>(w._colorFilter_dispose=F.colorFilter_dispose)(a);w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=F.maskFilter_createBlur)(a,b);w._maskFilter_dispose=a=>(w._maskFilter_dispose=F.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=F.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=F.fontCollection_dispose)(a); +w._typeface_create=a=>(w._typeface_create=F.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=F.typeface_dispose)(a);w._typefaces_filterCoveredCodePoints=(a,b,c,e)=>(w._typefaces_filterCoveredCodePoints=F.typefaces_filterCoveredCodePoints)(a,b,c,e);w._fontCollection_registerTypeface=(a,b,c)=>(w._fontCollection_registerTypeface=F.fontCollection_registerTypeface)(a,b,c);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=F.fontCollection_clearCaches)(a); +w._image_createFromPicture=(a,b,c)=>(w._image_createFromPicture=F.image_createFromPicture)(a,b,c);w._image_createFromPixels=(a,b,c,e,f)=>(w._image_createFromPixels=F.image_createFromPixels)(a,b,c,e,f);w._image_createFromTextureSource=(a,b,c,e)=>(w._image_createFromTextureSource=F.image_createFromTextureSource)(a,b,c,e);w._image_ref=a=>(w._image_ref=F.image_ref)(a);w._image_dispose=a=>(w._image_dispose=F.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=F.image_getWidth)(a); +w._image_getHeight=a=>(w._image_getHeight=F.image_getHeight)(a);w._paint_create=()=>(w._paint_create=F.paint_create)();w._paint_dispose=a=>(w._paint_dispose=F.paint_dispose)(a);w._paint_setBlendMode=(a,b)=>(w._paint_setBlendMode=F.paint_setBlendMode)(a,b);w._paint_setStyle=(a,b)=>(w._paint_setStyle=F.paint_setStyle)(a,b);w._paint_getStyle=a=>(w._paint_getStyle=F.paint_getStyle)(a);w._paint_setStrokeWidth=(a,b)=>(w._paint_setStrokeWidth=F.paint_setStrokeWidth)(a,b); +w._paint_getStrokeWidth=a=>(w._paint_getStrokeWidth=F.paint_getStrokeWidth)(a);w._paint_setStrokeCap=(a,b)=>(w._paint_setStrokeCap=F.paint_setStrokeCap)(a,b);w._paint_getStrokeCap=a=>(w._paint_getStrokeCap=F.paint_getStrokeCap)(a);w._paint_setStrokeJoin=(a,b)=>(w._paint_setStrokeJoin=F.paint_setStrokeJoin)(a,b);w._paint_getStrokeJoin=a=>(w._paint_getStrokeJoin=F.paint_getStrokeJoin)(a);w._paint_setAntiAlias=(a,b)=>(w._paint_setAntiAlias=F.paint_setAntiAlias)(a,b); +w._paint_getAntiAlias=a=>(w._paint_getAntiAlias=F.paint_getAntiAlias)(a);w._paint_setColorInt=(a,b)=>(w._paint_setColorInt=F.paint_setColorInt)(a,b);w._paint_getColorInt=a=>(w._paint_getColorInt=F.paint_getColorInt)(a);w._paint_setMiterLimit=(a,b)=>(w._paint_setMiterLimit=F.paint_setMiterLimit)(a,b);w._paint_getMiterLImit=a=>(w._paint_getMiterLImit=F.paint_getMiterLImit)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=F.paint_setShader)(a,b); +w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=F.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=F.paint_setColorFilter)(a,b);w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=F.paint_setMaskFilter)(a,b);w._path_create=()=>(w._path_create=F.path_create)();w._path_dispose=a=>(w._path_dispose=F.path_dispose)(a);w._path_copy=a=>(w._path_copy=F.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=F.path_setFillType)(a,b); +w._path_getFillType=a=>(w._path_getFillType=F.path_getFillType)(a);w._path_moveTo=(a,b,c)=>(w._path_moveTo=F.path_moveTo)(a,b,c);w._path_relativeMoveTo=(a,b,c)=>(w._path_relativeMoveTo=F.path_relativeMoveTo)(a,b,c);w._path_lineTo=(a,b,c)=>(w._path_lineTo=F.path_lineTo)(a,b,c);w._path_relativeLineTo=(a,b,c)=>(w._path_relativeLineTo=F.path_relativeLineTo)(a,b,c);w._path_quadraticBezierTo=(a,b,c,e,f)=>(w._path_quadraticBezierTo=F.path_quadraticBezierTo)(a,b,c,e,f); +w._path_relativeQuadraticBezierTo=(a,b,c,e,f)=>(w._path_relativeQuadraticBezierTo=F.path_relativeQuadraticBezierTo)(a,b,c,e,f);w._path_cubicTo=(a,b,c,e,f,g,l)=>(w._path_cubicTo=F.path_cubicTo)(a,b,c,e,f,g,l);w._path_relativeCubicTo=(a,b,c,e,f,g,l)=>(w._path_relativeCubicTo=F.path_relativeCubicTo)(a,b,c,e,f,g,l);w._path_conicTo=(a,b,c,e,f,g)=>(w._path_conicTo=F.path_conicTo)(a,b,c,e,f,g);w._path_relativeConicTo=(a,b,c,e,f,g)=>(w._path_relativeConicTo=F.path_relativeConicTo)(a,b,c,e,f,g); +w._path_arcToOval=(a,b,c,e,f)=>(w._path_arcToOval=F.path_arcToOval)(a,b,c,e,f);w._path_arcToRotated=(a,b,c,e,f,g,l,n)=>(w._path_arcToRotated=F.path_arcToRotated)(a,b,c,e,f,g,l,n);w._path_relativeArcToRotated=(a,b,c,e,f,g,l,n)=>(w._path_relativeArcToRotated=F.path_relativeArcToRotated)(a,b,c,e,f,g,l,n);w._path_addRect=(a,b)=>(w._path_addRect=F.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=F.path_addOval)(a,b);w._path_addArc=(a,b,c,e)=>(w._path_addArc=F.path_addArc)(a,b,c,e); +w._path_addPolygon=(a,b,c,e)=>(w._path_addPolygon=F.path_addPolygon)(a,b,c,e);w._path_addRRect=(a,b)=>(w._path_addRRect=F.path_addRRect)(a,b);w._path_addPath=(a,b,c,e)=>(w._path_addPath=F.path_addPath)(a,b,c,e);w._path_close=a=>(w._path_close=F.path_close)(a);w._path_reset=a=>(w._path_reset=F.path_reset)(a);w._path_contains=(a,b,c)=>(w._path_contains=F.path_contains)(a,b,c);w._path_transform=(a,b)=>(w._path_transform=F.path_transform)(a,b); +w._path_getBounds=(a,b)=>(w._path_getBounds=F.path_getBounds)(a,b);w._path_combine=(a,b,c)=>(w._path_combine=F.path_combine)(a,b,c);w._pictureRecorder_create=()=>(w._pictureRecorder_create=F.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=F.pictureRecorder_dispose)(a);w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=F.pictureRecorder_beginRecording)(a,b);w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=F.pictureRecorder_endRecording)(a); +w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=F.picture_getCullRect)(a,b);w._picture_dispose=a=>(w._picture_dispose=F.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=F.picture_approximateBytesUsed)(a);w._shader_createLinearGradient=(a,b,c,e,f,g)=>(w._shader_createLinearGradient=F.shader_createLinearGradient)(a,b,c,e,f,g);w._shader_createRadialGradient=(a,b,c,e,f,g,l,n)=>(w._shader_createRadialGradient=F.shader_createRadialGradient)(a,b,c,e,f,g,l,n); +w._shader_createConicalGradient=(a,b,c,e,f,g,l,n)=>(w._shader_createConicalGradient=F.shader_createConicalGradient)(a,b,c,e,f,g,l,n);w._shader_createSweepGradient=(a,b,c,e,f,g,l,n,r)=>(w._shader_createSweepGradient=F.shader_createSweepGradient)(a,b,c,e,f,g,l,n,r);w._shader_dispose=a=>(w._shader_dispose=F.shader_dispose)(a);w._runtimeEffect_create=a=>(w._runtimeEffect_create=F.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=F.runtimeEffect_dispose)(a); +w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=F.runtimeEffect_getUniformSize)(a);w._shader_createRuntimeEffectShader=(a,b,c,e)=>(w._shader_createRuntimeEffectShader=F.shader_createRuntimeEffectShader)(a,b,c,e);w._shader_createFromImage=(a,b,c,e,f)=>(w._shader_createFromImage=F.shader_createFromImage)(a,b,c,e,f);w._skString_allocate=a=>(w._skString_allocate=F.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=F.skString_getData)(a); +w._skString_free=a=>(w._skString_free=F.skString_free)(a);w._skString16_allocate=a=>(w._skString16_allocate=F.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=F.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=F.skString16_free)(a);var Db=(a,b,c,e,f)=>(Db=F.emscripten_dispatch_to_thread_)(a,b,c,e,f);w._surface_create=()=>(w._surface_create=F.surface_create)();w._surface_getThreadId=a=>(w._surface_getThreadId=F.surface_getThreadId)(a); +w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=F.surface_setCallbackHandler)(a,b);w._surface_destroy=a=>(w._surface_destroy=F.surface_destroy)(a);w._surface_renderPicture=(a,b)=>(w._surface_renderPicture=F.surface_renderPicture)(a,b);var $c=w._surface_renderPictureOnWorker=(a,b,c)=>($c=w._surface_renderPictureOnWorker=F.surface_renderPictureOnWorker)(a,b,c);w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=F.surface_rasterizeImage)(a,b,c); +var ad=w._surface_onRenderComplete=(a,b,c)=>(ad=w._surface_onRenderComplete=F.surface_onRenderComplete)(a,b,c);w._lineMetrics_create=(a,b,c,e,f,g,l,n,r)=>(w._lineMetrics_create=F.lineMetrics_create)(a,b,c,e,f,g,l,n,r);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=F.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=F.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=F.lineMetrics_getAscent)(a); +w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=F.lineMetrics_getDescent)(a);w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=F.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=F.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=F.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=F.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=F.lineMetrics_getBaseline)(a); +w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=F.lineMetrics_getLineNumber)(a);w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=F.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=F.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=F.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=F.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=F.paragraph_getHeight)(a); +w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=F.paragraph_getLongestLine)(a);w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=F.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=F.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=F.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=F.paragraph_getIdeographicBaseline)(a); +w._paragraph_getDidExceedMaxLines=a=>(w._paragraph_getDidExceedMaxLines=F.paragraph_getDidExceedMaxLines)(a);w._paragraph_layout=(a,b)=>(w._paragraph_layout=F.paragraph_layout)(a,b);w._paragraph_getPositionForOffset=(a,b,c,e)=>(w._paragraph_getPositionForOffset=F.paragraph_getPositionForOffset)(a,b,c,e);w._paragraph_getClosestGlyphInfoAtCoordinate=(a,b,c,e,f,g)=>(w._paragraph_getClosestGlyphInfoAtCoordinate=F.paragraph_getClosestGlyphInfoAtCoordinate)(a,b,c,e,f,g); +w._paragraph_getGlyphInfoAt=(a,b,c,e,f)=>(w._paragraph_getGlyphInfoAt=F.paragraph_getGlyphInfoAt)(a,b,c,e,f);w._paragraph_getWordBoundary=(a,b,c)=>(w._paragraph_getWordBoundary=F.paragraph_getWordBoundary)(a,b,c);w._paragraph_getLineCount=a=>(w._paragraph_getLineCount=F.paragraph_getLineCount)(a);w._paragraph_getLineNumberAt=(a,b)=>(w._paragraph_getLineNumberAt=F.paragraph_getLineNumberAt)(a,b); +w._paragraph_getLineMetricsAtIndex=(a,b)=>(w._paragraph_getLineMetricsAtIndex=F.paragraph_getLineMetricsAtIndex)(a,b);w._textBoxList_dispose=a=>(w._textBoxList_dispose=F.textBoxList_dispose)(a);w._textBoxList_getLength=a=>(w._textBoxList_getLength=F.textBoxList_getLength)(a);w._textBoxList_getBoxAtIndex=(a,b,c)=>(w._textBoxList_getBoxAtIndex=F.textBoxList_getBoxAtIndex)(a,b,c);w._paragraph_getBoxesForRange=(a,b,c,e,f)=>(w._paragraph_getBoxesForRange=F.paragraph_getBoxesForRange)(a,b,c,e,f); +w._paragraph_getBoxesForPlaceholders=a=>(w._paragraph_getBoxesForPlaceholders=F.paragraph_getBoxesForPlaceholders)(a);w._paragraph_getUnresolvedCodePoints=(a,b,c)=>(w._paragraph_getUnresolvedCodePoints=F.paragraph_getUnresolvedCodePoints)(a,b,c);w._paragraphBuilder_create=(a,b)=>(w._paragraphBuilder_create=F.paragraphBuilder_create)(a,b);w._paragraphBuilder_dispose=a=>(w._paragraphBuilder_dispose=F.paragraphBuilder_dispose)(a); +w._paragraphBuilder_addPlaceholder=(a,b,c,e,f,g)=>(w._paragraphBuilder_addPlaceholder=F.paragraphBuilder_addPlaceholder)(a,b,c,e,f,g);w._paragraphBuilder_addText=(a,b)=>(w._paragraphBuilder_addText=F.paragraphBuilder_addText)(a,b);w._paragraphBuilder_getUtf8Text=(a,b)=>(w._paragraphBuilder_getUtf8Text=F.paragraphBuilder_getUtf8Text)(a,b);w._paragraphBuilder_pushStyle=(a,b)=>(w._paragraphBuilder_pushStyle=F.paragraphBuilder_pushStyle)(a,b);w._paragraphBuilder_pop=a=>(w._paragraphBuilder_pop=F.paragraphBuilder_pop)(a); +w._paragraphBuilder_build=a=>(w._paragraphBuilder_build=F.paragraphBuilder_build)(a);w._unicodePositionBuffer_create=a=>(w._unicodePositionBuffer_create=F.unicodePositionBuffer_create)(a);w._unicodePositionBuffer_getDataPointer=a=>(w._unicodePositionBuffer_getDataPointer=F.unicodePositionBuffer_getDataPointer)(a);w._unicodePositionBuffer_free=a=>(w._unicodePositionBuffer_free=F.unicodePositionBuffer_free)(a);w._lineBreakBuffer_create=a=>(w._lineBreakBuffer_create=F.lineBreakBuffer_create)(a); +w._lineBreakBuffer_getDataPointer=a=>(w._lineBreakBuffer_getDataPointer=F.lineBreakBuffer_getDataPointer)(a);w._lineBreakBuffer_free=a=>(w._lineBreakBuffer_free=F.lineBreakBuffer_free)(a);w._paragraphBuilder_setGraphemeBreaksUtf16=(a,b)=>(w._paragraphBuilder_setGraphemeBreaksUtf16=F.paragraphBuilder_setGraphemeBreaksUtf16)(a,b);w._paragraphBuilder_setWordBreaksUtf16=(a,b)=>(w._paragraphBuilder_setWordBreaksUtf16=F.paragraphBuilder_setWordBreaksUtf16)(a,b); +w._paragraphBuilder_setLineBreaksUtf16=(a,b)=>(w._paragraphBuilder_setLineBreaksUtf16=F.paragraphBuilder_setLineBreaksUtf16)(a,b);w._paragraphStyle_create=()=>(w._paragraphStyle_create=F.paragraphStyle_create)();w._paragraphStyle_dispose=a=>(w._paragraphStyle_dispose=F.paragraphStyle_dispose)(a);w._paragraphStyle_setTextAlign=(a,b)=>(w._paragraphStyle_setTextAlign=F.paragraphStyle_setTextAlign)(a,b); +w._paragraphStyle_setTextDirection=(a,b)=>(w._paragraphStyle_setTextDirection=F.paragraphStyle_setTextDirection)(a,b);w._paragraphStyle_setMaxLines=(a,b)=>(w._paragraphStyle_setMaxLines=F.paragraphStyle_setMaxLines)(a,b);w._paragraphStyle_setHeight=(a,b)=>(w._paragraphStyle_setHeight=F.paragraphStyle_setHeight)(a,b);w._paragraphStyle_setTextHeightBehavior=(a,b,c)=>(w._paragraphStyle_setTextHeightBehavior=F.paragraphStyle_setTextHeightBehavior)(a,b,c); +w._paragraphStyle_setEllipsis=(a,b)=>(w._paragraphStyle_setEllipsis=F.paragraphStyle_setEllipsis)(a,b);w._paragraphStyle_setStrutStyle=(a,b)=>(w._paragraphStyle_setStrutStyle=F.paragraphStyle_setStrutStyle)(a,b);w._paragraphStyle_setTextStyle=(a,b)=>(w._paragraphStyle_setTextStyle=F.paragraphStyle_setTextStyle)(a,b);w._strutStyle_create=()=>(w._strutStyle_create=F.strutStyle_create)();w._strutStyle_dispose=a=>(w._strutStyle_dispose=F.strutStyle_dispose)(a); +w._strutStyle_setFontFamilies=(a,b,c)=>(w._strutStyle_setFontFamilies=F.strutStyle_setFontFamilies)(a,b,c);w._strutStyle_setFontSize=(a,b)=>(w._strutStyle_setFontSize=F.strutStyle_setFontSize)(a,b);w._strutStyle_setHeight=(a,b)=>(w._strutStyle_setHeight=F.strutStyle_setHeight)(a,b);w._strutStyle_setHalfLeading=(a,b)=>(w._strutStyle_setHalfLeading=F.strutStyle_setHalfLeading)(a,b);w._strutStyle_setLeading=(a,b)=>(w._strutStyle_setLeading=F.strutStyle_setLeading)(a,b); +w._strutStyle_setFontStyle=(a,b,c)=>(w._strutStyle_setFontStyle=F.strutStyle_setFontStyle)(a,b,c);w._strutStyle_setForceStrutHeight=(a,b)=>(w._strutStyle_setForceStrutHeight=F.strutStyle_setForceStrutHeight)(a,b);w._textStyle_create=()=>(w._textStyle_create=F.textStyle_create)();w._textStyle_copy=a=>(w._textStyle_copy=F.textStyle_copy)(a);w._textStyle_dispose=a=>(w._textStyle_dispose=F.textStyle_dispose)(a);w._textStyle_setColor=(a,b)=>(w._textStyle_setColor=F.textStyle_setColor)(a,b); +w._textStyle_setDecoration=(a,b)=>(w._textStyle_setDecoration=F.textStyle_setDecoration)(a,b);w._textStyle_setDecorationColor=(a,b)=>(w._textStyle_setDecorationColor=F.textStyle_setDecorationColor)(a,b);w._textStyle_setDecorationStyle=(a,b)=>(w._textStyle_setDecorationStyle=F.textStyle_setDecorationStyle)(a,b);w._textStyle_setDecorationThickness=(a,b)=>(w._textStyle_setDecorationThickness=F.textStyle_setDecorationThickness)(a,b); +w._textStyle_setFontStyle=(a,b,c)=>(w._textStyle_setFontStyle=F.textStyle_setFontStyle)(a,b,c);w._textStyle_setTextBaseline=(a,b)=>(w._textStyle_setTextBaseline=F.textStyle_setTextBaseline)(a,b);w._textStyle_clearFontFamilies=a=>(w._textStyle_clearFontFamilies=F.textStyle_clearFontFamilies)(a);w._textStyle_addFontFamilies=(a,b,c)=>(w._textStyle_addFontFamilies=F.textStyle_addFontFamilies)(a,b,c);w._textStyle_setFontSize=(a,b)=>(w._textStyle_setFontSize=F.textStyle_setFontSize)(a,b); +w._textStyle_setLetterSpacing=(a,b)=>(w._textStyle_setLetterSpacing=F.textStyle_setLetterSpacing)(a,b);w._textStyle_setWordSpacing=(a,b)=>(w._textStyle_setWordSpacing=F.textStyle_setWordSpacing)(a,b);w._textStyle_setHeight=(a,b)=>(w._textStyle_setHeight=F.textStyle_setHeight)(a,b);w._textStyle_setHalfLeading=(a,b)=>(w._textStyle_setHalfLeading=F.textStyle_setHalfLeading)(a,b);w._textStyle_setLocale=(a,b)=>(w._textStyle_setLocale=F.textStyle_setLocale)(a,b); +w._textStyle_setBackground=(a,b)=>(w._textStyle_setBackground=F.textStyle_setBackground)(a,b);w._textStyle_setForeground=(a,b)=>(w._textStyle_setForeground=F.textStyle_setForeground)(a,b);w._textStyle_addShadow=(a,b,c,e,f)=>(w._textStyle_addShadow=F.textStyle_addShadow)(a,b,c,e,f);w._textStyle_addFontFeature=(a,b,c)=>(w._textStyle_addFontFeature=F.textStyle_addFontFeature)(a,b,c);w._textStyle_setFontVariations=(a,b,c,e)=>(w._textStyle_setFontVariations=F.textStyle_setFontVariations)(a,b,c,e); +w._vertices_create=(a,b,c,e,f,g,l)=>(w._vertices_create=F.vertices_create)(a,b,c,e,f,g,l);w._vertices_dispose=a=>(w._vertices_dispose=F.vertices_dispose)(a);var fb=w._pthread_self=()=>(fb=w._pthread_self=F.pthread_self)(),pb=a=>(pb=F.malloc)(a);w.__emscripten_tls_init=()=>(w.__emscripten_tls_init=F._emscripten_tls_init)();var cd=w.__emscripten_thread_init=(a,b,c,e,f,g)=>(cd=w.__emscripten_thread_init=F._emscripten_thread_init)(a,b,c,e,f,g); +w.__emscripten_thread_crashed=()=>(w.__emscripten_thread_crashed=F._emscripten_thread_crashed)(); +var jc=(a,b,c,e)=>(jc=F._emscripten_run_in_main_runtime_thread_js)(a,b,c,e),db=a=>(db=F._emscripten_thread_free_data)(a),jb=w.__emscripten_thread_exit=a=>(jb=w.__emscripten_thread_exit=F._emscripten_thread_exit)(a),wb=w.__emscripten_check_mailbox=()=>(wb=w.__emscripten_check_mailbox=F._emscripten_check_mailbox)(),Z=(a,b)=>(Z=F.setThrew)(a,b),ib=(a,b)=>(ib=F.emscripten_stack_set_limits)(a,b),N=()=>(N=F.stackSave)(),M=a=>(M=F.stackRestore)(a),Cb=w.stackAlloc=a=>(Cb=w.stackAlloc=F.stackAlloc)(a); +function ed(a,b,c){var e=N();try{return G.get(a)(b,c)}catch(f){M(e);if(f!==f+0)throw f;Z(1,0)}}function kd(a,b,c){var e=N();try{G.get(a)(b,c)}catch(f){M(e);if(f!==f+0)throw f;Z(1,0)}}function dd(a,b){var c=N();try{return G.get(a)(b)}catch(e){M(c);if(e!==e+0)throw e;Z(1,0)}}function ld(a,b,c,e){var f=N();try{G.get(a)(b,c,e)}catch(g){M(f);if(g!==g+0)throw g;Z(1,0)}}function fd(a,b,c,e){var f=N();try{return G.get(a)(b,c,e)}catch(g){M(f);if(g!==g+0)throw g;Z(1,0)}} +function md(a,b,c,e,f){var g=N();try{G.get(a)(b,c,e,f)}catch(l){M(g);if(l!==l+0)throw l;Z(1,0)}}function nd(a,b,c,e,f,g,l,n){var r=N();try{G.get(a)(b,c,e,f,g,l,n)}catch(u){M(r);if(u!==u+0)throw u;Z(1,0)}}function jd(a,b){var c=N();try{G.get(a)(b)}catch(e){M(c);if(e!==e+0)throw e;Z(1,0)}}function hd(a,b,c,e,f,g,l){var n=N();try{return G.get(a)(b,c,e,f,g,l)}catch(r){M(n);if(r!==r+0)throw r;Z(1,0)}} +function gd(a,b,c,e,f){var g=N();try{return G.get(a)(b,c,e,f)}catch(l){M(g);if(l!==l+0)throw l;Z(1,0)}}w.keepRuntimeAlive=Ka;w.wasmMemory=d;w.wasmExports=F; +w.addFunction=function(a,b){if(!Wc){Wc=new WeakMap;var c=G.length;if(Wc)for(var e=0;e<0+c;e++){var f=G.get(e);f&&Wc.set(f,e)}}if(c=Wc.get(a)||0)return c;if(Xc.length)c=Xc.pop();else{try{G.grow(1)}catch(n){if(!(n instanceof RangeError))throw n;throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.";}c=G.length-1}try{G.set(c,a)}catch(n){if(!(n instanceof TypeError))throw n;if("function"==typeof WebAssembly.Function){e=WebAssembly.Function;f={i:"i32",j:"i64",f:"f32",d:"f64",p:"i32"};for(var g={parameters:[], +results:"v"==b[0]?[]:[f[b[0]]]},l=1;ll?e.push(l):e.push(l%128|128,l>>7);for(l=0;lf?b.push(f):b.push(f%128|128,f>>7);b.push.apply(b,e);b.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);b=new WebAssembly.Module(new Uint8Array(b));b=(new WebAssembly.Instance(b, +{e:{f:a}})).exports.f}G.set(c,b)}Wc.set(a,c);return c};w.ExitStatus=Va;w.PThread=I;var pd;Ma=function qd(){pd||rd();pd||(Ma=qd)}; +function rd(){function a(){if(!pd&&(pd=!0,w.calledRun=!0,!Ba)){A||hb(Ha);ja(w);if(w.onRuntimeInitialized)w.onRuntimeInitialized();if(!A){if(w.postRun)for("function"==typeof w.postRun&&(w.postRun=[w.postRun]);w.postRun.length;){var b=w.postRun.shift();Ia.unshift(b)}hb(Ia)}}}if(!(0 skwasm); diff --git a/canvaskit/skwasm.js.symbols b/canvaskit/skwasm.js.symbols new file mode 100644 index 000000000..6f9cad4c1 --- /dev/null +++ b/canvaskit/skwasm.js.symbols @@ -0,0 +1,11947 @@ +0:invoke_viii +1:abort +2:invoke_vii +3:invoke_vi +4:invoke_ii +5:emscripten_get_now +6:invoke_iii +7:__cxa_throw +8:invoke_viiii +9:glGetString +10:skwasm_registerMessageListener +11:invoke_viiiiiii +12:glDeleteTextures +13:emscripten_glGetIntegerv +14:emscripten_exit_with_live_runtime +15:__wasi_fd_close +16:__syscall_fcntl64 +17:strftime_l +18:skwasm_setAssociatedObjectOnThread +19:skwasm_resizeCanvas +20:skwasm_getAssociatedObject +21:skwasm_disposeAssociatedObjectOnThread +22:skwasm_dispatchRenderPicture +23:skwasm_createOffscreenCanvas +24:skwasm_createGlTextureFromTextureSource +25:skwasm_captureImageBitmap +26:legalimport$glWaitSync +27:legalimport$glClientWaitSync +28:legalimport$_munmap_js +29:legalimport$_mmap_js +30:legalimport$__wasi_fd_seek +31:legalimport$__wasi_fd_pread +32:invoke_iiiiiii +33:invoke_iiiii +34:invoke_iiii +35:glViewport +36:glVertexAttribPointer +37:glVertexAttribIPointer +38:glVertexAttribDivisor +39:glVertexAttrib4fv +40:glVertexAttrib3fv +41:glVertexAttrib2fv +42:glVertexAttrib1f +43:glUseProgram +44:glUniformMatrix4fv +45:glUniformMatrix3fv +46:glUniformMatrix2fv +47:glUniform4iv +48:glUniform4i +49:glUniform4fv +50:glUniform4f +51:glUniform3iv +52:glUniform3i +53:glUniform3fv +54:glUniform3f +55:glUniform2iv +56:glUniform2i +57:glUniform2fv +58:glUniform2f +59:glUniform1iv +60:glUniform1i +61:glUniform1fv +62:glUniform1f +63:glTexSubImage2D +64:glTexStorage2D +65:glTexParameteriv +66:glTexParameteri +67:glTexParameterfv +68:glTexParameterf +69:glTexImage2D +70:glStencilOpSeparate +71:glStencilOp +72:glStencilMaskSeparate +73:glStencilMask +74:glStencilFuncSeparate +75:glStencilFunc +76:glShaderSource +77:glScissor +78:glSamplerParameteriv +79:glSamplerParameteri +80:glSamplerParameterf +81:glRenderbufferStorageMultisample +82:glRenderbufferStorage +83:glReadPixels +84:glReadBuffer +85:glPixelStorei +86:glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL +87:glMultiDrawArraysInstancedBaseInstanceWEBGL +88:glLinkProgram +89:glLineWidth +90:glIsTexture +91:glIsSync +92:glInvalidateSubFramebuffer +93:glInvalidateFramebuffer +94:glGetUniformLocation +95:glGetStringi +96:glGetShaderiv +97:glGetShaderPrecisionFormat +98:glGetShaderInfoLog +99:glGetRenderbufferParameteriv +100:glGetProgramiv +101:glGetProgramInfoLog +102:glGetIntegerv +103:glGetFramebufferAttachmentParameteriv +104:glGetFloatv +105:glGetError +106:glGetBufferParameteriv +107:glGenerateMipmap +108:glGenVertexArraysOES +109:glGenVertexArrays +110:glGenTextures +111:glGenSamplers +112:glGenRenderbuffers +113:glGenFramebuffers +114:glGenBuffers +115:glFrontFace +116:glFramebufferTexture2D +117:glFramebufferRenderbuffer +118:glFlush +119:glFinish +120:glFenceSync +121:glEnableVertexAttribArray +122:glEnable +123:glDrawRangeElements +124:glDrawElementsInstancedBaseVertexBaseInstanceWEBGL +125:glDrawElementsInstanced +126:glDrawElements +127:glDrawBuffers +128:glDrawArraysInstancedBaseInstanceWEBGL +129:glDrawArraysInstanced +130:glDrawArrays +131:glDisableVertexAttribArray +132:glDisable +133:glDepthMask +134:glDeleteVertexArraysOES +135:glDeleteVertexArrays +136:glDeleteSync +137:glDeleteShader +138:glDeleteSamplers +139:glDeleteRenderbuffers +140:glDeleteProgram +141:glDeleteFramebuffers +142:glDeleteBuffers +143:glCullFace +144:glCreateShader +145:glCreateProgram +146:glCopyTexSubImage2D +147:glCopyBufferSubData +148:glCompressedTexSubImage2D +149:glCompressedTexImage2D +150:glCompileShader +151:glColorMask +152:glClearStencil +153:glClearColor +154:glClear +155:glCheckFramebufferStatus +156:glBufferSubData +157:glBufferData +158:glBlitFramebuffer +159:glBlendFunc +160:glBlendEquation +161:glBlendColor +162:glBindVertexArrayOES +163:glBindVertexArray +164:glBindTexture +165:glBindSampler +166:glBindRenderbuffer +167:glBindFramebuffer +168:glBindBuffer +169:glBindAttribLocation +170:glAttachShader +171:glActiveTexture +172:exit +173:emscripten_webgl_make_context_current +174:emscripten_webgl_get_current_context +175:emscripten_webgl_enable_extension +176:emscripten_resize_heap +177:emscripten_receive_on_main_thread_js +178:emscripten_glClearStencil +179:emscripten_glClearColor +180:emscripten_glClear +181:emscripten_glBindFramebuffer +182:emscripten_check_blocking_allowed +183:_emscripten_throw_longjmp +184:_emscripten_thread_set_strongref +185:_emscripten_thread_mailbox_await +186:_emscripten_set_offscreencanvas_size +187:_emscripten_notify_mailbox_postmessage +188:_emscripten_get_now_is_monotonic +189:__wasi_fd_write +190:__wasi_fd_read +191:__wasi_environ_sizes_get +192:__wasi_environ_get +193:__syscall_openat +194:__syscall_ioctl +195:__syscall_fstat64 +196:__pthread_create_js +197:__emscripten_thread_cleanup +198:__emscripten_init_main_thread_js +199:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +200:dlfree +201:sk_sp::~sk_sp\28\29 +202:operator\20new\28unsigned\20long\29 +203:GrGLSLShaderBuilder::codeAppendf\28char\20const*\2c\20...\29 +204:sk_sp::~sk_sp\28\29 +205:void\20SkSafeUnref\28GrSurfaceProxy*\29\20\28.4081\29 +206:void\20SkSafeUnref\28SkImageFilter*\29\20\28.2045\29 +207:operator\20delete\28void*\29 +208:GrGLSLShaderBuilder::codeAppend\28char\20const*\29 +209:SkRasterPipeline::uncheckedAppend\28SkRasterPipelineOp\2c\20void*\29 +210:void\20SkSafeUnref\28SkString::Rec*\29 +211:__cxa_guard_acquire +212:SkSL::GLSLCodeGenerator::write\28std::__2::basic_string_view>\29 +213:SkSL::ErrorReporter::error\28SkSL::Position\2c\20std::__2::basic_string_view>\29 +214:__cxa_guard_release +215:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\5babi:v160004\5d\2c\20std::__2::allocator>\28std::__2::basic_string\2c\20std::__2::allocator>&&\2c\20char\20const*\29 +216:hb_blob_destroy +217:skia_private::TArray::~TArray\28\29 +218:SkImageGenerator::onIsProtected\28\29\20const +219:SkDebugf\28char\20const*\2c\20...\29 +220:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\5babi:v160004\5d\2c\20std::__2::allocator>\28char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>&&\29 +221:SkSL::Type::matches\28SkSL::Type\20const&\29\20const +222:std::__2::basic_string\2c\20std::__2::allocator>::size\5babi:v160004\5d\28\29\20const +223:fmaxf +224:std::__2::__function::__value_func::~__value_func\5babi:v160004\5d\28\29 +225:hb_sanitize_context_t::check_range\28void\20const*\2c\20unsigned\20int\29\20const +226:GrShaderVar::~GrShaderVar\28\29 +227:void\20SkSafeUnref\28SkPathRef*\29 +228:testSetjmp +229:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\5babi:v160004\5d\2c\20std::__2::allocator>\28std::__2::basic_string\2c\20std::__2::allocator>&&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&&\29 +230:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::destroy\28\29 +231:hb_buffer_t::message\28hb_font_t*\2c\20char\20const*\2c\20...\29 +232:GrColorInfo::~GrColorInfo\28\29 +233:SkArenaAlloc::allocObject\28unsigned\20int\2c\20unsigned\20int\29 +234:std::__2::basic_string\2c\20std::__2::allocator>::basic_string>\2c\20void>\28std::__2::basic_string_view>\20const&\29 +235:SkAnySubclass::reset\28\29 +236:fminf +237:SkPaint::~SkPaint\28\29 +238:FT_DivFix +239:skia_private::TArray>\2c\20true>::~TArray\28\29 +240:SkMutex::release\28\29 +241:strlen +242:skvx::Vec<4\2c\20float>\20skvx::naive_if_then_else<4\2c\20float>\28skvx::Vec<4\2c\20skvx::Mask::type>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20\28.5701\29 +243:SkPath::SkPath\28\29 +244:std::exception::~exception\28\29 +245:skia_png_crc_finish +246:skia_png_chunk_benign_error +247:hb_buffer_t::next_glyph\28\29 +248:std::__2::shared_ptr<_IO_FILE>::~shared_ptr\5babi:v160004\5d\28\29 +249:SkSL::RP::Generator::pushExpression\28SkSL::Expression\20const&\2c\20bool\29 +250:SkSL::RP::Builder::appendInstruction\28SkSL::RP::BuilderOp\2c\20SkSL::RP::Builder::SlotList\2c\20int\2c\20int\2c\20int\2c\20int\29 +251:SkSL::Pool::AllocMemory\28unsigned\20long\29 +252:sk_sp::reset\28SkFontStyleSet*\29 +253:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\29 +254:SkMatrix::hasPerspective\28\29\20const +255:sk_report_container_overflow_and_die\28\29 +256:SkSemaphore::wait\28\29 +257:skgpu::ganesh::VertexChunkPatchAllocator::append\28skgpu::tess::LinearTolerances\20const&\29 +258:SkString::appendf\28char\20const*\2c\20...\29 +259:SkBitmap::~SkBitmap\28\29 +260:skgpu::VertexWriter&\20skgpu::tess::operator<<<\28skgpu::tess::PatchAttribs\298\2c\20skgpu::VertexColor\2c\20false\2c\20true>\28skgpu::VertexWriter&\2c\20skgpu::tess::AttribValue<\28skgpu::tess::PatchAttribs\298\2c\20skgpu::VertexColor\2c\20false\2c\20true>\20const&\29 +261:SkWriter32::write32\28int\29 +262:SkString::append\28char\20const*\29 +263:std::__2::basic_string\2c\20std::__2::allocator>::append\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +264:\28anonymous\20namespace\29::ColorTypeFilter_F16F16::Expand\28unsigned\20int\29 +265:SkContainerAllocator::allocate\28int\2c\20double\29 +266:FT_MulDiv +267:sk_sp::reset\28SkImageFilter*\29 +268:SkArenaAlloc::allocObjectWithFooter\28unsigned\20int\2c\20unsigned\20int\29 +269:OT::VarStoreInstancer::operator\28\29\28unsigned\20int\2c\20unsigned\20short\29\20const +270:SkIRect::intersect\28SkIRect\20const&\29 +271:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\29 +272:ft_mem_realloc +273:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +274:lang_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +275:dlmalloc +276:skia_png_free +277:SkSL::Parser::expect\28SkSL::Token::Kind\2c\20char\20const*\2c\20SkSL::Token*\29 +278:SkIntersections::insert\28double\2c\20double\2c\20SkDPoint\20const&\29 +279:skia_private::TArray::push_back\28SkPoint\20const&\29 +280:ft_mem_qrealloc +281:SkMatrix::invert\28SkMatrix*\29\20const +282:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +283:sk_sp::~sk_sp\28\29 +284:sk_sp::~sk_sp\28\29 +285:strcmp +286:std::__2::basic_string\2c\20std::__2::allocator>::resize\5babi:v160004\5d\28unsigned\20long\29 +287:cf2_stack_popFixed +288:subtag_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +289:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +290:cf2_stack_getReal +291:SkSL::GLSLCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +292:SkIRect::isEmpty\28\29\20const +293:SkSL::Type::displayName\28\29\20const +294:GrTextureGenerator::isTextureGenerator\28\29\20const +295:std::__2::vector\2c\20std::__2::allocator>>::__throw_length_error\5babi:v160004\5d\28\29\20const +296:dlcalloc +297:SkBitmap::SkBitmap\28\29 +298:GrAuditTrail::pushFrame\28char\20const*\29 +299:std::__2::locale::~locale\28\29 +300:FT_Stream_Seek +301:SkImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +302:SkPaint::SkPaint\28SkPaint\20const&\29 +303:void\20SkSafeUnref\28SkColorSpace*\29\20\28.2000\29 +304:hb_vector_t::fini\28\29 +305:SkString::SkString\28SkString&&\29 +306:SkBlitter::~SkBlitter\28\29.1 +307:GrGeometryProcessor::Attribute::asShaderVar\28\29\20const +308:strncmp +309:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrShaderCaps*\29 +310:SkTDStorage::~SkTDStorage\28\29 +311:SkSL::Parser::peek\28\29 +312:std::__2::ios_base::getloc\28\29\20const +313:std::__2::basic_string\2c\20std::__2::allocator>::__get_pointer\5babi:v160004\5d\28\29 +314:hb_ot_map_builder_t::add_feature\28unsigned\20int\2c\20hb_ot_map_feature_flags_t\2c\20unsigned\20int\29 +315:GrProcessor::operator\20new\28unsigned\20long\29 +316:std::__2::to_string\28int\29 +317:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28\29 +318:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +319:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul>::__dispatch\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\29 +320:SkPath::getBounds\28\29\20const +321:GrPixmapBase::~GrPixmapBase\28\29 +322:GrGLSLUniformHandler::addUniform\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20char\20const**\29 +323:void\20SkSafeUnref\28SkData\20const*\29\20\28.1130\29 +324:sk_sp::~sk_sp\28\29 +325:hb_face_t::get_num_glyphs\28\29\20const +326:SkString::~SkString\28\29 +327:GrSurfaceProxyView::operator=\28GrSurfaceProxyView&&\29 +328:GrPaint::~GrPaint\28\29 +329:FT_Stream_ReadUShort +330:skia_private::TArray>\2c\20true>::push_back\28std::__2::unique_ptr>&&\29 +331:__errno_location +332:std::__2::unique_ptr>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::Slot\20\5b\5d\2c\20std::__2::default_delete>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +333:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +334:skvx::Vec<8\2c\20unsigned\20short>&\20skvx::operator+=<8\2c\20unsigned\20short>\28skvx::Vec<8\2c\20unsigned\20short>&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\29 +335:SkMatrix::SkMatrix\28\29 +336:SkArenaAlloc::RunDtorsOnBlock\28char*\29 +337:skia_png_warning +338:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +339:SkString::SkString\28char\20const*\29 +340:SkIRect::contains\28SkIRect\20const&\29\20const +341:GrGLContextInfo::hasExtension\28char\20const*\29\20const +342:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +343:hb_sanitize_context_t::start_processing\28\29 +344:__shgetc +345:FT_Stream_GetUShort +346:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +347:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28wchar_t\20const*\29 +348:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28char\20const*\29 +349:hb_sanitize_context_t::~hb_sanitize_context_t\28\29 +350:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +351:SkMatrix::mapRect\28SkRect*\2c\20SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +352:skgpu::Swizzle::Swizzle\28char\20const*\29 +353:hb_lazy_loader_t\2c\20hb_face_t\2c\2033u\2c\20hb_blob_t>::do_destroy\28hb_blob_t*\29 +354:SkSL::Expression::clone\28\29\20const +355:SkDQuad::set\28SkPoint\20const*\29 +356:sscanf +357:skia_private::AutoSTMalloc<17ul\2c\20SkPoint\2c\20void>::~AutoSTMalloc\28\29 +358:FT_Stream_ExitFrame +359:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +360:skia_png_error +361:hb_face_reference_table +362:SkPixmap::SkPixmap\28\29 +363:SkPath::SkPath\28SkPath\20const&\29 +364:SkMakeRuntimeEffect\28SkRuntimeEffect::Result\20\28*\29\28SkString\2c\20SkRuntimeEffect::Options\20const&\29\2c\20char\20const*\2c\20SkRuntimeEffect::Options\29 +365:SkHalfToFloat_finite_ftz\28unsigned\20long\20long\29 +366:std::__throw_bad_array_new_length\5babi:v160004\5d\28\29 +367:skgpu::ganesh::SurfaceDrawContext::addDrawOp\28GrClip\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::function\20const&\29 +368:memcmp +369:hb_buffer_t::unsafe_to_break\28unsigned\20int\2c\20unsigned\20int\29 +370:\28anonymous\20namespace\29::ColorTypeFilter_8888::Expand\28unsigned\20int\29 +371:\28anonymous\20namespace\29::ColorTypeFilter_16161616::Expand\28unsigned\20long\20long\29 +372:\28anonymous\20namespace\29::ColorTypeFilter_1010102::Expand\28unsigned\20long\20long\29 +373:SkRecord::grow\28\29 +374:SkPictureRecord::addDraw\28DrawType\2c\20unsigned\20long*\29 +375:OT::Layout::Common::Coverage::get_coverage\28unsigned\20int\29\20const +376:std::__2::__cloc\28\29 +377:skvx::Vec<4\2c\20int>\20skvx::operator!<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\29 +378:skia_png_chunk_error +379:skia::textlayout::ParagraphImpl::getUTF16Index\28unsigned\20long\29\20const +380:__cxa_atexit +381:SkStringPrintf\28char\20const*\2c\20...\29 +382:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::STArray\28skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>&&\29 +383:hb_blob_get_data_writable +384:bool\20hb_sanitize_context_t::check_range>\28OT::IntType\20const*\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +385:__multf3 +386:SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29::operator\28\29\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29\20const +387:SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0::operator\28\29\28SkSL::FunctionDefinition\20const*\2c\20SkSL::FunctionDefinition\20const*\29\20const +388:SkSL::String::printf\28char\20const*\2c\20...\29 +389:SkSL::Pool::FreeMemory\28void*\29 +390:SkSL::GLSLCodeGenerator::writeLine\28std::__2::basic_string_view>\29 +391:SkRect::outset\28float\2c\20float\29 +392:SkRect::intersect\28SkRect\20const&\29 +393:SkMatrix::mapPoints\28SkPoint*\2c\20int\29\20const +394:SkMatrix::isIdentity\28\29\20const +395:std::__2::unique_ptr>\20SkSL::evaluate_intrinsic\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +396:std::__2::basic_string_view>::compare\28std::__2::basic_string_view>\29\20const +397:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\5babi:v160004\5d\2c\20std::__2::allocator>\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20char\20const*\29 +398:skvx::Vec<4\2c\20int>\20skvx::operator&<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\2c\20skvx::Vec<4\2c\20int>\20const&\29 +399:SkNullBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +400:SkMatrix::getType\28\29\20const +401:SkArenaAlloc::makeBytesAlignedTo\28unsigned\20long\2c\20unsigned\20long\29 +402:GrGLSLVaryingHandler::addVarying\28char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVaryingHandler::Interpolation\29 +403:GrBackendFormats::AsGLFormat\28GrBackendFormat\20const&\29 +404:FT_Stream_EnterFrame +405:strstr +406:std::__2::locale::id::__get\28\29 +407:std::__2::locale::facet::facet\5babi:v160004\5d\28unsigned\20long\29 +408:skgpu::UniqueKey::~UniqueKey\28\29 +409:ft_mem_alloc +410:SkString::operator=\28char\20const*\29 +411:SkRect::setBoundsCheck\28SkPoint\20const*\2c\20int\29 +412:SkIRect::Intersects\28SkIRect\20const&\2c\20SkIRect\20const&\29 +413:SkDPoint::approximatelyEqual\28SkDPoint\20const&\29\20const +414:SkChecksum::Hash32\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20int\29 +415:GrProcessorSet::GrProcessorSet\28GrPaint&&\29 +416:GrOpFlushState::bindPipelineAndScissorClip\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +417:std::__2::unique_ptr::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +418:std::__2::locale::__imp::install\28std::__2::locale::facet*\2c\20long\29 +419:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +420:skia_png_muldiv +421:f_t_mutex\28\29 +422:SkTDStorage::reserve\28int\29 +423:SkSL::RP::Builder::discard_stack\28int\29 +424:GrStyledShape::~GrStyledShape\28\29 +425:GrOp::~GrOp\28\29 +426:GrGeometryProcessor::AttributeSet::initImplicit\28GrGeometryProcessor::Attribute\20const*\2c\20int\29 +427:void\20SkSafeUnref\28GrSurface*\29 +428:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +429:sk_sp::~sk_sp\28\29 +430:hb_buffer_t::unsafe_to_concat\28unsigned\20int\2c\20unsigned\20int\29 +431:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +432:SkSL::PipelineStage::PipelineStageCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +433:SkRegion::freeRuns\28\29 +434:SkRect::roundOut\28\29\20const +435:SkPoint::length\28\29\20const +436:SkPath::~SkPath\28\29 +437:SkPath::lineTo\28SkPoint\20const&\29 +438:SkMatrix::mapPoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +439:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +440:skvx::Vec<8\2c\20unsigned\20short>\20skvx::mulhi<8>\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\29 +441:hb_ot_map_builder_t::add_gsub_pause\28bool\20\28*\29\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29\29 +442:cf2_stack_pushFixed +443:SkSL::RP::Builder::binary_op\28SkSL::RP::BuilderOp\2c\20int\29 +444:SkRect::contains\28SkRect\20const&\29\20const +445:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20SkFilterMode\2c\20SkMipmapMode\29 +446:GrShaderVar::GrShaderVar\28char\20const*\2c\20SkSLType\2c\20int\29 +447:GrProcessor::operator\20new\28unsigned\20long\2c\20unsigned\20long\29 +448:GrOp::GenID\28std::__2::atomic*\29 +449:GrImageInfo::GrImageInfo\28GrImageInfo&&\29 +450:GrGLSLVaryingHandler::addPassThroughAttribute\28GrShaderVar\20const&\2c\20char\20const*\2c\20GrGLSLVaryingHandler::Interpolation\29 +451:GrFragmentProcessor::registerChild\28std::__2::unique_ptr>\2c\20SkSL::SampleUsage\29 +452:textStyle_setDecoration +453:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +454:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +455:sk_sp::~sk_sp\28\29 +456:hb_buffer_t::merge_clusters\28unsigned\20int\2c\20unsigned\20int\29 +457:dlrealloc +458:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTriColorShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +459:SkSL::Nop::~Nop\28\29 +460:SkRecords::FillBounds::updateSaveBounds\28SkRect\20const&\29 +461:SkPoint::normalize\28\29 +462:SkPath::lineTo\28float\2c\20float\29 +463:SkMatrix::Translate\28float\2c\20float\29 +464:SkJSONWriter::write\28char\20const*\2c\20unsigned\20long\29 +465:GrSkSLFP::UniformPayloadSize\28SkRuntimeEffect\20const*\29 +466:GrSkSLFP::GrSkSLFP\28sk_sp\2c\20char\20const*\2c\20GrSkSLFP::OptFlags\29 +467:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +468:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +469:std::__2::enable_if::value\20&&\20sizeof\20\28unsigned\20int\29\20==\204\2c\20unsigned\20int>::type\20SkGoodHash::operator\28\29\28unsigned\20int\20const&\29\20const +470:std::__2::__throw_system_error\28int\2c\20char\20const*\29 +471:std::__2::__split_buffer&>::~__split_buffer\28\29 +472:skia_private::TArray::push_back_raw\28int\29 +473:skgpu::UniqueKey::UniqueKey\28\29 +474:sk_sp::reset\28GrSurface*\29 +475:sk_malloc_flags\28unsigned\20long\2c\20unsigned\20int\29 +476:__multi3 +477:SkTDArray::push_back\28SkPoint\20const&\29 +478:SkStrokeRec::getStyle\28\29\20const +479:SkSL::fold_expression\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +480:SkSL::SymbolTable::addWithoutOwnershipOrDie\28SkSL::Symbol*\29 +481:SkMatrix::mapRect\28SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +482:GrTriangulator::Comparator::sweep_lt\28SkPoint\20const&\2c\20SkPoint\20const&\29\20const +483:CFF::arg_stack_t::pop_uint\28\29 +484:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +485:skia_private::THashTable>*\2c\20std::__2::unique_ptr>*\2c\20SkGoodHash>::Pair\2c\20std::__2::unique_ptr>*\2c\20skia_private::THashMap>*\2c\20std::__2::unique_ptr>*\2c\20SkGoodHash>::Pair>::Hash\28std::__2::unique_ptr>*\20const&\29 +486:skia_png_crc_read +487:SkSpinlock::acquire\28\29 +488:SkSL::Parser::rangeFrom\28SkSL::Position\29 +489:SkSL::Parser::checkNext\28SkSL::Token::Kind\2c\20SkSL::Token*\29 +490:SkJSONWriter::appendBool\28char\20const*\2c\20bool\29 +491:GrOpFlushState::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +492:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +493:std::__2::__throw_bad_function_call\5babi:v160004\5d\28\29 +494:skif::FilterResult::~FilterResult\28\29 +495:sk_malloc_throw\28unsigned\20long\2c\20unsigned\20long\29 +496:hb_paint_funcs_t::pop_transform\28void*\29 +497:fma +498:a_cas +499:\28anonymous\20namespace\29::shift_right\28skvx::Vec<4\2c\20float>\20const&\2c\20int\29 +500:SkString::operator=\28SkString\20const&\29 +501:SkStrikeSpec::~SkStrikeSpec\28\29 +502:SkMatrix::rectStaysRect\28\29\20const +503:SkMatrix::isScaleTranslate\28\29\20const +504:SkMatrix::Concat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +505:OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +506:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +507:hb_draw_funcs_t::start_path\28void*\2c\20hb_draw_state_t&\29 +508:hb_buffer_t::reverse\28\29 +509:SkTDStorage::append\28\29 +510:SkTDArray::append\28\29 +511:SkSL::Type::toCompound\28SkSL::Context\20const&\2c\20int\2c\20int\29\20const +512:SkSL::RP::Generator::binaryOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +513:SkSL::RP::Builder::lastInstruction\28int\29 +514:SkRecords::FillBounds::adjustAndMap\28SkRect\2c\20SkPaint\20const*\29\20const +515:SkMatrix::preConcat\28SkMatrix\20const&\29 +516:SkMatrix::postTranslate\28float\2c\20float\29 +517:SkMatrix::mapRect\28SkRect*\2c\20SkApplyPerspectiveClip\29\20const +518:SkDCubic::set\28SkPoint\20const*\29 +519:SkColorSpaceXformSteps::SkColorSpaceXformSteps\28SkColorSpace\20const*\2c\20SkAlphaType\2c\20SkColorSpace\20const*\2c\20SkAlphaType\29 +520:GrStyle::isSimpleFill\28\29\20const +521:GrGLSLVaryingHandler::emitAttributes\28GrGeometryProcessor\20const&\29 +522:BlockIndexIterator::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Decrement\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block*\2c\20int\29>::Item::setIndices\28\29 +523:std::__2::unique_ptr::reset\5babi:v160004\5d\28unsigned\20char*\29 +524:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +525:skvx::Vec<8\2c\20unsigned\20short>\20skvx::operator+<8\2c\20unsigned\20short>\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\29 +526:skif::FilterResult::FilterResult\28\29 +527:skgpu::VertexColor::set\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\29 +528:skgpu::ResourceKey::Builder::finish\28\29 +529:sk_sp::~sk_sp\28\29 +530:pthread_mutex_unlock +531:ft_validator_error +532:_hb_next_syllable\28hb_buffer_t*\2c\20unsigned\20int\29 +533:SkSemaphore::~SkSemaphore\28\29 +534:SkSL::Type::MakeAliasType\28std::__2::basic_string_view>\2c\20SkSL::Type\20const&\29 +535:SkSL::Parser::error\28SkSL::Token\2c\20std::__2::basic_string_view>\29 +536:SkSL::GLSLCodeGenerator::writeIdentifier\28std::__2::basic_string_view>\29 +537:SkSL::ConstantFolder::GetConstantValueForVariable\28SkSL::Expression\20const&\29 +538:SkPath::reset\28\29 +539:SkPath::operator=\28SkPath\20const&\29 +540:SkGlyph::rowBytes\28\29\20const +541:GrProgramInfo::visitFPProxies\28std::__2::function\20const&\29\20const +542:GrMeshDrawOp::createProgramInfo\28GrMeshDrawTarget*\29 +543:GrGpu::handleDirtyContext\28\29 +544:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +545:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +546:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29\20\28.6837\29 +547:skvx::Vec<4\2c\20float>\20\28anonymous\20namespace\29::add_121>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +548:skia_private::TArray::Allocate\28int\2c\20double\29 +549:skia_private::TArray\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +550:pthread_mutex_lock +551:machine_index_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>>::operator=\28machine_index_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>>\20const&\29 +552:hb_draw_funcs_t::emit_line_to\28void*\2c\20hb_draw_state_t&\2c\20float\2c\20float\29 +553:SkWriter32::reserve\28unsigned\20long\29 +554:SkTSect::pointLast\28\29\20const +555:SkTDArray::push_back\28int\20const&\29 +556:SkStrokeRec::isHairlineStyle\28\29\20const +557:SkSL::Type::MakeVectorType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\29 +558:SkRect::join\28SkRect\20const&\29 +559:SkPictureRecord::addPaintPtr\28SkPaint\20const*\29 +560:SkPath::Iter::next\28SkPoint*\29 +561:SkMatrix::Scale\28float\2c\20float\29 +562:FT_Stream_ReadFields +563:FT_Stream_GetULong +564:target_from_texture_type\28GrTextureType\29 +565:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +566:std::__2::__unique_if::__unique_array_unknown_bound\20std::__2::make_unique\5babi:v160004\5d\28unsigned\20long\29 +567:skvx::Vec<4\2c\20unsigned\20short>\20skvx::operator+<4\2c\20unsigned\20short>\28skvx::Vec<4\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20short>\20const&\29 +568:skia::textlayout::TextStyle::~TextStyle\28\29 +569:skia::textlayout::TextStyle::TextStyle\28skia::textlayout::TextStyle\20const&\29 +570:png_icc_profile_error +571:hb_font_t::get_nominal_glyph\28unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\29 +572:SkSL::TProgramVisitor::visitStatement\28SkSL::Statement\20const&\29 +573:SkSL::RP::Program::makeStages\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20SkSpan\2c\20SkSL::RP::Program::SlotData\20const&\29\20const::$_2::operator\28\29\28\29\20const +574:SkSL::ConstructorCompound::MakeFromConstants\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20double\20const*\29 +575:SkRect::roundOut\28SkIRect*\29\20const +576:SkPathPriv::Iterate::Iterate\28SkPath\20const&\29 +577:SkMatrix::postConcat\28SkMatrix\20const&\29 +578:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_2::operator\28\29\28SkRasterPipelineOp\2c\20SkRasterPipelineOp\2c\20\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +579:SkColorSpace::MakeSRGB\28\29 +580:SkBitmap::SkBitmap\28SkBitmap\20const&\29 +581:OT::OffsetTo\2c\20OT::IntType\2c\20true>::operator\28\29\28void\20const*\29\20const +582:GrSurfaceProxy::backingStoreDimensions\28\29\20const +583:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +584:FT_Stream_ReleaseFrame +585:DefaultGeoProc::Impl::~Impl\28\29 +586:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +587:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock&\2c\20skia::textlayout::OneLineShaper::RunBlock&\29 +588:std::__2::enable_if<_CheckArrayPointerConversion>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::Slot\20\5b\5d\2c\20std::__2::default_delete>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::Slot\20\5b\5d>>::reset\5babi:v160004\5d>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::Slot*>\28skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::Slot*\29 +589:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator+<4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +590:out +591:cosf +592:cf2_stack_popInt +593:SkSL::Type::coerceExpression\28std::__2::unique_ptr>\2c\20SkSL::Context\20const&\29\20const +594:SkSL::Type::MakeGenericType\28char\20const*\2c\20SkSpan\2c\20SkSL::Type\20const*\29 +595:SkSL::Parser::nextToken\28\29 +596:SkRGBA4f<\28SkAlphaType\292>::operator!=\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +597:SkPathStroker::lineTo\28SkPoint\20const&\2c\20SkPath::Iter\20const*\29 +598:SkPath::conicTo\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\29 +599:SkPaint::setColor\28unsigned\20int\29 +600:SkImageInfo::minRowBytes\28\29\20const +601:SkDrawBase::~SkDrawBase\28\29 +602:SkDCubic::ptAtT\28double\29\20const +603:SkCanvas::internalQuickReject\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\29 +604:GrStyle::~GrStyle\28\29 +605:GrShaderVar::operator=\28GrShaderVar&&\29 +606:GrProcessor::operator\20delete\28void*\29 +607:GrImageInfo::GrImageInfo\28SkImageInfo\20const&\29 +608:GrColorInfo::GrColorInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\29 +609:GrCaps::getDefaultBackendFormat\28GrColorType\2c\20skgpu::Renderable\29\20const +610:FT_Outline_Translate +611:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +612:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +613:std::__2::__check_grouping\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int&\29 +614:skia_private::TArray::push_back\28int&&\29 +615:skia_png_chunk_report +616:sk_srgb_singleton\28\29 +617:pad +618:__memcpy +619:__ashlti3 +620:SkTCoincident::setPerp\28SkTCurve\20const&\2c\20double\2c\20SkDPoint\20const&\2c\20SkTCurve\20const&\29 +621:SkSL::Type::MakeMatrixType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\2c\20signed\20char\29 +622:SkSL::Operator::tightOperatorName\28\29\20const +623:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29::$_0::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +624:SkPath::moveTo\28SkPoint\20const&\29 +625:SkPath::Iter::setPath\28SkPath\20const&\2c\20bool\29 +626:SkNullBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +627:SkDVector::crossCheck\28SkDVector\20const&\29\20const +628:SkBlitter::~SkBlitter\28\29 +629:GrSimpleMeshDrawOpHelper::~GrSimpleMeshDrawOpHelper\28\29 +630:GrSimpleMeshDrawOpHelper::visitProxies\28std::__2::function\20const&\29\20const +631:GrShape::reset\28\29 +632:GrShaderVar::appendDecl\28GrShaderCaps\20const*\2c\20SkString*\29\20const +633:GrOpFlushState::drawMesh\28GrSimpleMesh\20const&\29 +634:GrMatrixEffect::Make\28SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +635:GrAAConvexTessellator::Ring::index\28int\29\20const +636:DefaultGeoProc::~DefaultGeoProc\28\29 +637:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +638:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +639:skgpu::ResourceKey::operator==\28skgpu::ResourceKey\20const&\29\20const +640:hb_buffer_t::unsafe_to_break_from_outbuffer\28unsigned\20int\2c\20unsigned\20int\29 +641:cff2_path_procs_extents_t::curve\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +642:cff2_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +643:cff1_path_procs_extents_t::curve\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +644:cff1_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +645:byn$mgfn-shared$std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28\29\20const +646:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +647:_hb_glyph_info_get_modified_combining_class\28hb_glyph_info_t\20const*\29 +648:SkWStream::writeText\28char\20const*\29 +649:SkSL::TProgramVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +650:SkSL::RP::SlotManager::getVariableSlots\28SkSL::Variable\20const&\29 +651:SkSL::InlineCandidate::operator=\28SkSL::InlineCandidate&&\29 +652:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29 +653:SkRasterPipeline::extend\28SkRasterPipeline\20const&\29 +654:SkPixmap::operator=\28SkPixmap\20const&\29 +655:SkPath::close\28\29 +656:SkPath::RangeIter::operator++\28\29 +657:SkOpPtT::contains\28SkOpPtT\20const*\29\20const +658:SkMatrixPriv::CheapEqual\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +659:SkIRect::intersect\28SkIRect\20const&\2c\20SkIRect\20const&\29 +660:SkColorSpaceXformSteps::apply\28float*\29\20const +661:SkBitmapDevice::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +662:SkAAClipBlitterWrapper::~SkAAClipBlitterWrapper\28\29 +663:OT::hb_paint_context_t::recurse\28OT::Paint\20const&\29 +664:OT::hb_ot_apply_context_t::init_iters\28\29 +665:GrTextureProxy::mipmapped\28\29\20const +666:GrStyledShape::asPath\28SkPath*\29\20const +667:GrShape::bounds\28\29\20const +668:GrShaderVar::GrShaderVar\28char\20const*\2c\20SkSLType\2c\20GrShaderVar::TypeModifier\29 +669:GrQuad::MakeFromRect\28SkRect\20const&\2c\20SkMatrix\20const&\29 +670:GrGLGpu::setTextureUnit\28int\29 +671:GrGLGpu::clearErrorsAndCheckForOOM\28\29 +672:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::~Impl\28\29 +673:GrCPixmap::GrCPixmap\28GrImageInfo\2c\20void\20const*\2c\20unsigned\20long\29 +674:GrAppliedClip::~GrAppliedClip\28\29 +675:FT_Load_Glyph +676:CFF::cff_stack_t::pop\28\29 +677:void\20SkOnce::operator\28\29*\29\2c\20SkAlignedSTStorage<1\2c\20skgpu::UniqueKey>*>\28void\20\28&\29\28SkAlignedSTStorage<1\2c\20skgpu::UniqueKey>*\29\2c\20SkAlignedSTStorage<1\2c\20skgpu::UniqueKey>*&&\29 +678:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +679:std::__2::numpunct::thousands_sep\5babi:v160004\5d\28\29\20const +680:std::__2::numpunct::grouping\5babi:v160004\5d\28\29\20const +681:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +682:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28char\29 +683:std::__2::basic_string\2c\20std::__2::allocator>::__move_assign\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::integral_constant\29 +684:std::__2::basic_string\2c\20std::__2::allocator>::__throw_length_error\5babi:v160004\5d\28\29\20const +685:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator<<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +686:skia_private::TArray>\2c\20true>::reserve_exact\28int\29 +687:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::STArray\28skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>&&\29 +688:skgpu::ResourceKey::Builder::Builder\28skgpu::ResourceKey*\2c\20unsigned\20int\2c\20int\29 +689:rewind\28GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +690:hb_sanitize_context_t::end_processing\28\29 +691:hb_buffer_t::move_to\28unsigned\20int\29 +692:ft_mem_qalloc +693:_output_with_dotted_circle\28hb_buffer_t*\29 +694:SkTSpan::pointLast\28\29\20const +695:SkTDStorage::resize\28int\29 +696:SkSL::Parser::rangeFrom\28SkSL::Token\29 +697:SkSL::FunctionDeclaration::description\28\29\20const +698:SkPathRef::isFinite\28\29\20const +699:SkMatrix::mapXY\28float\2c\20float\2c\20SkPoint*\29\20const +700:SkDrawable::getFlattenableType\28\29\20const +701:SkDPoint::ApproximatelyEqual\28SkPoint\20const&\2c\20SkPoint\20const&\29 +702:SkBlockAllocator::reset\28\29 +703:GrSimpleMeshDrawOpHelperWithStencil::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +704:GrGeometryProcessor::ProgramImpl::SetTransform\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrResourceHandle\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix*\29 +705:GrGLSLVertexGeoBuilder::insertFunction\28char\20const*\29 +706:GrDrawingManager::flushIfNecessary\28\29 +707:FT_Stream_ExtractFrame +708:Cr_z_crc32 +709:std::__2::enable_if<_CheckArrayPointerConversion::value\2c\20void>::type\20std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrGLCaps::ColorTypeInfo*\29 +710:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +711:std::__2::char_traits::assign\28char&\2c\20char\20const&\29 +712:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_size\5babi:v160004\5d\28unsigned\20long\29 +713:std::__2::__unique_if::__unique_array_unknown_bound\20std::__2::make_unique\5babi:v160004\5d\28unsigned\20long\29 +714:std::__2::__compressed_pair_elem::__compressed_pair_elem\5babi:v160004\5d\28void\20\28*&&\29\28void*\29\29 +715:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator<<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +716:skia_private::TArray::checkRealloc\28int\2c\20double\29 +717:skgpu::tess::StrokeIterator::enqueue\28skgpu::tess::StrokeIterator::Verb\2c\20SkPoint\20const*\2c\20float\20const*\29 +718:skgpu::ganesh::SurfaceFillContext::getOpsTask\28\29 +719:skgpu::ganesh::AsView\28GrRecordingContext*\2c\20SkImage\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +720:fmodf +721:__addtf3 +722:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression\20const&\29 +723:SkSL::RP::Builder::push_constant_i\28int\2c\20int\29 +724:SkSL::RP::Builder::label\28int\29 +725:SkPath::isConvex\28\29\20const +726:SkPaintToGrPaint\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +727:SkPaint::asBlendMode\28\29\20const +728:SkImageInfo::operator=\28SkImageInfo\20const&\29 +729:SkImageInfo::MakeA8\28int\2c\20int\29 +730:SkImageGenerator::onIsValid\28GrRecordingContext*\29\20const +731:SkImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +732:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\29 +733:GrSkSLFP::addChild\28std::__2::unique_ptr>\2c\20bool\29 +734:GrProcessorSet::~GrProcessorSet\28\29 +735:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b10\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +736:GrGLGpu::bindBuffer\28GrGpuBufferType\2c\20GrBuffer\20const*\29 +737:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20char\20const*\2c\20char\20const*\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +738:FT_Stream_ReadByte +739:ubidi_getParaLevelAtIndex_skia +740:std::__2::char_traits::copy\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +741:std::__2::basic_string\2c\20std::__2::allocator>::begin\5babi:v160004\5d\28\29 +742:std::__2::basic_string\2c\20std::__2::allocator>::__set_short_size\5babi:v160004\5d\28unsigned\20long\29 +743:std::__2::__libcpp_snprintf_l\28char*\2c\20unsigned\20long\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +744:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator|<4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +745:skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::AddTrianglesWhenChopping\2c\20skgpu::tess::DiscardFlatCurves>::accountForCurve\28float\29 +746:skgpu::ganesh::SurfaceContext::PixelTransferResult::~PixelTransferResult\28\29 +747:is_equal\28std::type_info\20const*\2c\20std::type_info\20const*\2c\20bool\29 +748:hb_ot_map_t::get_1_mask\28unsigned\20int\29\20const +749:hb_font_get_glyph +750:hb_draw_funcs_t::emit_quadratic_to\28void*\2c\20hb_draw_state_t&\2c\20float\2c\20float\2c\20float\2c\20float\29 +751:hb_buffer_t::unsafe_to_concat_from_outbuffer\28unsigned\20int\2c\20unsigned\20int\29 +752:cff_index_get_sid_string +753:_hb_font_funcs_set_middle\28hb_font_funcs_t*\2c\20void*\2c\20void\20\28*\29\28void*\29\29 +754:__floatsitf +755:SkWriter32::writeScalar\28float\29 +756:SkTDArray<\28anonymous\20namespace\29::YOffset>::append\28\29 +757:SkString::data\28\29 +758:SkSL::ThreadContext::ReportError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +759:SkSL::RP::Generator::pushVectorizedExpression\28SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +760:SkSL::RP::Builder::swizzle\28int\2c\20SkSpan\29 +761:SkRegion::setRect\28SkIRect\20const&\29 +762:SkPathRef::Editor::Editor\28sk_sp*\2c\20int\2c\20int\29 +763:SkPaint::setBlendMode\28SkBlendMode\29 +764:SkMatrix::getMaxScale\28\29\20const +765:SkJSONWriter::appendHexU32\28char\20const*\2c\20unsigned\20int\29 +766:SkDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +767:SkBlender::Mode\28SkBlendMode\29 +768:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\29 +769:SkBitmap::setInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +770:SkArenaAlloc::SkArenaAlloc\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +771:OT::hb_ot_apply_context_t::skipping_iterator_t::next\28unsigned\20int*\29 +772:OT::VarSizedBinSearchArrayOf>::get_length\28\29\20const +773:GrMeshDrawTarget::allocMesh\28\29 +774:GrGLGpu::bindTextureToScratchUnit\28unsigned\20int\2c\20int\29 +775:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +776:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::~SwizzleFragmentProcessor\28\29 +777:GrCaps::getReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +778:GrBackendFormat::GrBackendFormat\28GrBackendFormat\20const&\29 +779:CFF::cff1_cs_opset_t::check_width\28unsigned\20int\2c\20CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +780:AutoFTAccess::AutoFTAccess\28SkTypeface_FreeType\20const*\29 +781:void\20SkSafeUnref\28SharedGenerator*\29 +782:strchr +783:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20char\29\20const +784:std::__2::__function::__value_func::__value_func\5babi:v160004\5d\28std::__2::__function::__value_func&&\29 +785:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +786:skif::Context::~Context\28\29 +787:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Hash\28SkImageFilter\20const*\20const&\29 +788:skia_private::TArray::push_back\28bool&&\29 +789:skia_png_get_uint_32 +790:skia::textlayout::OneLineShaper::clusterIndex\28unsigned\20long\29 +791:skgpu::ganesh::SurfaceDrawContext::chooseAAType\28GrAA\29 +792:skgpu::UniqueKey::GenerateDomain\28\29 +793:hb_buffer_t::sync_so_far\28\29 +794:hb_buffer_t::sync\28\29 +795:em_task_queue_is_empty +796:compute_side\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +797:cff_parse_num +798:byn$mgfn-shared$skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +799:SkWriter32::writeRect\28SkRect\20const&\29 +800:SkSL::Type::clone\28SkSL::SymbolTable*\29\20const +801:SkSL::RP::Generator::writeStatement\28SkSL::Statement\20const&\29 +802:SkSL::RP::Builder::unary_op\28SkSL::RP::BuilderOp\2c\20int\29 +803:SkSL::Parser::operatorRight\28SkSL::Parser::AutoDepth&\2c\20SkSL::OperatorKind\2c\20std::__2::unique_ptr>\20\28SkSL::Parser::*\29\28\29\2c\20std::__2::unique_ptr>&\29 +804:SkSL::Parser::expression\28\29 +805:SkSL::Nop::Make\28\29 +806:SkRecords::FillBounds::pushControl\28\29 +807:SkRasterClip::~SkRasterClip\28\29 +808:SkRGBA4f<\28SkAlphaType\293>::FromColor\28unsigned\20int\29 +809:SkPath::moveTo\28float\2c\20float\29 +810:SkMatrix::preTranslate\28float\2c\20float\29 +811:SkMatrix::MakeAll\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +812:SkM44::asM33\28\29\20const +813:SkImageFilter_Base::getFlattenableType\28\29\20const +814:SkDQuad::ptAtT\28double\29\20const +815:SkDConic::ptAtT\28double\29\20const +816:SkArenaAlloc::~SkArenaAlloc\28\29 +817:SkAAClip::setEmpty\28\29 +818:OT::hb_ot_apply_context_t::skipping_iterator_t::reset\28unsigned\20int\29 +819:GrTriangulator::Line::intersect\28GrTriangulator::Line\20const&\2c\20SkPoint*\29\20const +820:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkISize\20const&\29 +821:GrGpuBuffer::unmap\28\29 +822:GrGeometryProcessor::ProgramImpl::WriteLocalCoord\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20GrShaderVar\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +823:GrGeometryProcessor::ProgramImpl::ComputeMatrixKey\28GrShaderCaps\20const&\2c\20SkMatrix\20const&\29 +824:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\29 +825:GrFragmentProcessor::GrFragmentProcessor\28GrFragmentProcessor\20const&\29 +826:void\20SkSafeUnref\28SkMipmap*\29 +827:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +828:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +829:std::__2::optional::value\5babi:v160004\5d\28\29\20const\20& +830:std::__2::numpunct::truename\5babi:v160004\5d\28\29\20const +831:std::__2::numpunct::falsename\5babi:v160004\5d\28\29\20const +832:std::__2::numpunct::decimal_point\5babi:v160004\5d\28\29\20const +833:std::__2::moneypunct::do_grouping\28\29\20const +834:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29\20const +835:std::__2::basic_string\2c\20std::__2::allocator>::empty\5babi:v160004\5d\28\29\20const +836:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_cap\5babi:v160004\5d\28unsigned\20long\29 +837:std::__2::basic_string\2c\20std::__2::allocator>::__is_long\5babi:v160004\5d\28\29\20const +838:skvx::Vec<4\2c\20float>\20skvx::operator-<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +839:skif::Context::Context\28skif::Context\20const&\29 +840:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +841:skia_png_reciprocal +842:skia_png_malloc_warn +843:skia::textlayout::\28anonymous\20namespace\29::relax\28float\29 +844:skia::textlayout::Cluster::run\28\29\20const +845:skgpu::ganesh::SurfaceFillContext::arenaAlloc\28\29 +846:skgpu::ganesh::SurfaceContext::readPixels\28GrDirectContext*\2c\20GrPixmap\2c\20SkIPoint\29 +847:skgpu::Swizzle::RGBA\28\29 +848:sk_sp::reset\28SkData*\29 +849:sk_sp::~sk_sp\28\29 +850:portable::clip_color\28float*\2c\20float*\2c\20float*\2c\20float\29::'lambda'\28float\29::operator\28\29\28float\29\20const +851:crc32_z +852:__unlockfile +853:__lockfile +854:SkTSect::SkTSect\28SkTCurve\20const&\29 +855:SkSL::SymbolTable::find\28std::__2::basic_string_view>\29\20const +856:SkSL::String::Separator\28\29 +857:SkSL::RP::Generator::pushIntrinsic\28SkSL::RP::BuilderOp\2c\20SkSL::Expression\20const&\29 +858:SkSL::ProgramConfig::strictES2Mode\28\29\20const +859:SkSL::Parser::layoutInt\28\29 +860:SkRegion::Cliperator::next\28\29 +861:SkRegion::Cliperator::Cliperator\28SkRegion\20const&\2c\20SkIRect\20const&\29 +862:SkPath::transform\28SkMatrix\20const&\2c\20SkPath*\2c\20SkApplyPerspectiveClip\29\20const +863:SkPaint::setColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\29 +864:SkMipmap::ComputeLevelCount\28int\2c\20int\29 +865:SkImageInfo::operator=\28SkImageInfo&&\29 +866:SkIRect::makeOutset\28int\2c\20int\29\20const +867:SkDLine::nearPoint\28SkDPoint\20const&\2c\20bool*\29\20const +868:SkChopQuadAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +869:SkBaseShadowTessellator::appendTriangle\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +870:SkAutoConicToQuads::computeQuads\28SkPoint\20const*\2c\20float\2c\20float\29 +871:OT::hb_ot_apply_context_t::~hb_ot_apply_context_t\28\29 +872:OT::hb_ot_apply_context_t::hb_ot_apply_context_t\28unsigned\20int\2c\20hb_font_t*\2c\20hb_buffer_t*\2c\20hb_blob_t*\29 +873:OT::ClassDef::get_class\28unsigned\20int\29\20const +874:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::$_4::operator\28\29\28char\20const*\29\20const +875:GrSimpleMeshDrawOpHelper::isCompatible\28GrSimpleMeshDrawOpHelper\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +876:GrShaderVar::GrShaderVar\28GrShaderVar\20const&\29 +877:GrQuad::writeVertex\28int\2c\20skgpu::VertexWriter&\29\20const +878:GrOpFlushState::bindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +879:GrGLGpu::getErrorAndCheckForOOM\28\29 +880:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20int\2c\20float\20const*\29\29::'lambda'\28void\20const*\2c\20int\2c\20int\2c\20float\20const*\29::__invoke\28void\20const*\2c\20int\2c\20int\2c\20float\20const*\29 +881:GrColorInfo::GrColorInfo\28SkColorInfo\20const&\29 +882:GrAAConvexTessellator::addTri\28int\2c\20int\2c\20int\29 +883:FT_Stream_ReadULong +884:FT_Get_Module +885:AlmostBequalUlps\28double\2c\20double\29 +886:ubidi_getMemory_skia +887:tt_face_get_name +888:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +889:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +890:std::__2::unique_ptr::reset\5babi:v160004\5d\28void*\29 +891:std::__2::optional::value\5babi:v160004\5d\28\29\20& +892:std::__2::optional::value\5babi:v160004\5d\28\29\20& +893:std::__2::__variant_detail::__dtor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29 +894:std::__2::__variant_detail::__dtor\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29 +895:std::__2::__libcpp_locale_guard::~__libcpp_locale_guard\5babi:v160004\5d\28\29 +896:std::__2::__libcpp_locale_guard::__libcpp_locale_guard\5babi:v160004\5d\28__locale_struct*&\29 +897:skvx::Vec<4\2c\20float>&\20skvx::operator+=<4\2c\20float>\28skvx::Vec<4\2c\20float>&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20\28.5718\29 +898:skvx::Vec<2\2c\20float>\20skvx::max<2\2c\20float>\28skvx::Vec<2\2c\20float>\20const&\2c\20skvx::Vec<2\2c\20float>\20const&\29 +899:skif::LayerSpace::outset\28skif::LayerSpace\20const&\29 +900:skia_private::TArray::checkRealloc\28int\2c\20double\29 +901:sk_sp::operator=\28sk_sp\20const&\29 +902:sk_sp&\20skia_private::TArray\2c\20true>::emplace_back>\28sk_sp&&\29 +903:skData_getConstPointer +904:sinf +905:path_cubicTo +906:operator==\28SkIRect\20const&\2c\20SkIRect\20const&\29 +907:inflateStateCheck +908:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +909:hb_user_data_array_t::fini\28\29 +910:hb_iter_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>>\2c\20hb_pair_t>>::operator+\28unsigned\20int\29\20const +911:hb_indic_would_substitute_feature_t::would_substitute\28unsigned\20int\20const*\2c\20unsigned\20int\2c\20hb_face_t*\29\20const +912:hb_font_t::get_glyph_h_advance\28unsigned\20int\29 +913:hb_draw_funcs_t::emit_close_path\28void*\2c\20hb_draw_state_t&\29 +914:ft_module_get_service +915:degenerate_vector\28SkPoint\20const&\29 +916:byn$mgfn-shared$skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +917:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\29\20const +918:__sindf +919:__shlim +920:__cosdf +921:SkWriter32::write\28void\20const*\2c\20unsigned\20long\29 +922:SkString::equals\28SkString\20const&\29\20const +923:SkSL::evaluate_pairwise_intrinsic\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +924:SkSL::StringStream::str\28\29\20const +925:SkSL::RP::Generator::makeLValue\28SkSL::Expression\20const&\2c\20bool\29 +926:SkSL::Parser::expressionOrPoison\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +927:SkSL::GLSLCodeGenerator::getTypeName\28SkSL::Type\20const&\29 +928:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +929:SkRegion::setEmpty\28\29 +930:SkRect::round\28\29\20const +931:SkPixmap::SkPixmap\28SkPixmap\20const&\29 +932:SkPaint::getAlpha\28\29\20const +933:SkMatrix::preScale\28float\2c\20float\29 +934:SkIRect::makeOffset\28int\2c\20int\29\20const +935:SkIRect::join\28SkIRect\20const&\29 +936:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\29\20const +937:SkDevice::makeSpecial\28SkBitmap\20const&\29 +938:SkData::PrivateNewWithCopy\28void\20const*\2c\20unsigned\20long\29 +939:SkData::MakeUninitialized\28unsigned\20long\29 +940:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +941:SkCanvas::concat\28SkMatrix\20const&\29 +942:SkCanvas::checkForDeferredSave\28\29 +943:SkBitmapCache::Rec::getKey\28\29\20const +944:SkAAClip::Builder::addRun\28int\2c\20int\2c\20unsigned\20int\2c\20int\29 +945:GrTriangulator::Line::Line\28SkPoint\20const&\2c\20SkPoint\20const&\29 +946:GrTriangulator::Edge::isRightOf\28GrTriangulator::Vertex\20const&\29\20const +947:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\29 +948:GrShape::setType\28GrShape::Type\29 +949:GrPixmapBase::GrPixmapBase\28GrPixmapBase\20const&\29 +950:GrMakeUncachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +951:GrIORef::unref\28\29\20const +952:GrGeometryProcessor::TextureSampler::reset\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +953:GrGLSLShaderBuilder::getMangledFunctionName\28char\20const*\29 +954:GrGLGpu::deleteFramebuffer\28unsigned\20int\29 +955:GrGLExtensions::has\28char\20const*\29\20const +956:GrBackendFormats::MakeGL\28unsigned\20int\2c\20unsigned\20int\29 +957:vsnprintf +958:top12 +959:std::__2::vector>::erase\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +960:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +961:std::__2::to_string\28long\20long\29 +962:std::__2::pair::type\2c\20std::__2::__unwrap_ref_decay::type>\20std::__2::make_pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +963:std::__2::optional::value\5babi:v160004\5d\28\29\20& +964:std::__2::locale::use_facet\28std::__2::locale::id&\29\20const +965:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +966:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\2c\20std::__2::allocator>\28char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +967:std::__2::basic_string\2c\20std::__2::allocator>::__init\28char\20const*\2c\20unsigned\20long\29 +968:std::__2::__throw_bad_optional_access\5babi:v160004\5d\28\29 +969:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +970:std::__2::__num_put_base::__identify_padding\28char*\2c\20char*\2c\20std::__2::ios_base\20const&\29 +971:std::__2::__num_get_base::__get_base\28std::__2::ios_base&\29 +972:std::__2::__libcpp_asprintf_l\28char**\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +973:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator>><4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20int\29\20\28.628\29 +974:skvx::Vec<4\2c\20float>\20skvx::abs<4>\28skvx::Vec<4\2c\20float>\20const&\29 +975:skvx::Vec<2\2c\20float>\20skvx::min<2\2c\20float>\28skvx::Vec<2\2c\20float>\20const&\2c\20skvx::Vec<2\2c\20float>\20const&\29 +976:sktext::gpu::BagOfBytes::allocateBytes\28int\2c\20int\29 +977:skia_private::THashTable>*\2c\20std::__2::unique_ptr>*\2c\20SkGoodHash>::Pair\2c\20std::__2::unique_ptr>*\2c\20skia_private::THashMap>*\2c\20std::__2::unique_ptr>*\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>*\2c\20std::__2::unique_ptr>*\2c\20SkGoodHash>::Pair&&\29 +978:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +979:skia_private::TArray::~TArray\28\29 +980:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +981:skia_private::TArray::checkRealloc\28int\2c\20double\29 +982:skia_png_malloc_base +983:skia::textlayout::TextLine::iterateThroughVisualRuns\28bool\2c\20std::__2::function\2c\20float*\29>\20const&\29\20const +984:skgpu::ganesh::SurfaceDrawContext::numSamples\28\29\20const +985:sk_sp::~sk_sp\28\29 +986:sk_sp::~sk_sp\28\29 +987:round +988:qsort +989:path_quadraticBezierTo +990:operator==\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +991:is_one_of\28hb_glyph_info_t\20const&\2c\20unsigned\20int\29 +992:int\20std::__2::__get_up_to_n_digits\5babi:v160004\5d>>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\2c\20int\29 +993:int\20std::__2::__get_up_to_n_digits\5babi:v160004\5d>>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\2c\20int\29 +994:hb_lazy_loader_t\2c\20hb_face_t\2c\206u\2c\20hb_blob_t>::get\28\29\20const +995:hb_font_t::has_glyph\28unsigned\20int\29 +996:byn$mgfn-shared$std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +997:byn$mgfn-shared$std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +998:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::__wrap_iter\20const&\2c\20std::__2::__wrap_iter\20const&\29 +999:bool\20hb_sanitize_context_t::check_array\28OT::HBGlyphID16\20const*\2c\20unsigned\20int\29\20const +1000:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1001:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1002:bool\20OT::Layout::Common::Coverage::collect_coverage\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>>\28hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>*\29\20const +1003:addPoint\28UBiDi*\2c\20int\2c\20int\29 +1004:__extenddftf2 +1005:\28anonymous\20namespace\29::extension_compare\28SkString\20const&\2c\20SkString\20const&\29 +1006:\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1007:\28anonymous\20namespace\29::colrv1_transform\28FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\2c\20SkCanvas*\2c\20SkMatrix*\29 +1008:SkUTF::NextUTF8\28char\20const**\2c\20char\20const*\29 +1009:SkUTF::NextUTF8WithReplacement\28char\20const**\2c\20char\20const*\29 +1010:SkTInternalLList::addToHead\28sktext::gpu::TextBlob*\29 +1011:SkTDStorage::removeShuffle\28int\29 +1012:SkTDArray::push_back\28void*\20const&\29 +1013:SkTCopyOnFirstWrite::writable\28\29 +1014:SkSL::cast_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +1015:SkSL::StringStream::~StringStream\28\29 +1016:SkSL::RP::LValue::~LValue\28\29 +1017:SkSL::RP::Generator::pushIntrinsic\28SkSL::RP::Generator::TypedOps\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1018:SkSL::InlineCandidateAnalyzer::visitExpression\28std::__2::unique_ptr>*\29 +1019:SkSL::GLSLCodeGenerator::writeType\28SkSL::Type\20const&\29 +1020:SkSL::GLSLCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1021:SkSL::Expression::isBoolLiteral\28\29\20const +1022:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29 +1023:SkRasterPipelineBlitter::appendLoadDst\28SkRasterPipeline*\29\20const +1024:SkPoint::Distance\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1025:SkPathRef::getBounds\28\29\20const +1026:SkPath::isRect\28SkRect*\2c\20bool*\2c\20SkPathDirection*\29\20const +1027:SkPath::injectMoveToIfNeeded\28\29 +1028:SkNVRefCnt::unref\28\29\20const +1029:SkMatrix::setScaleTranslate\28float\2c\20float\2c\20float\2c\20float\29 +1030:SkMatrix::postScale\28float\2c\20float\29 +1031:SkMatrix::mapVector\28float\2c\20float\29\20const +1032:SkMatrix::isSimilarity\28float\29\20const +1033:SkIntersections::removeOne\28int\29 +1034:SkImages::RasterFromBitmap\28SkBitmap\20const&\29 +1035:SkImage_Ganesh::SkImage_Ganesh\28sk_sp\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20SkColorInfo\29 +1036:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\29 +1037:SkImageFilter_Base::getChildInputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +1038:SkGlyph::iRect\28\29\20const +1039:SkFindUnitQuadRoots\28float\2c\20float\2c\20float\2c\20float*\29 +1040:SkColorSpaceXformSteps::Flags::mask\28\29\20const +1041:SkBlockAllocator::BlockIter::Item::operator++\28\29 +1042:SkBitmap::peekPixels\28SkPixmap*\29\20const +1043:SkAAClip::freeRuns\28\29 +1044:OT::hb_ot_apply_context_t::set_lookup_mask\28unsigned\20int\2c\20bool\29 +1045:OT::cmap::find_subtable\28unsigned\20int\2c\20unsigned\20int\29\20const +1046:GrWindowRectangles::~GrWindowRectangles\28\29 +1047:GrTriangulator::EdgeList::remove\28GrTriangulator::Edge*\29 +1048:GrTriangulator::Edge::isLeftOf\28GrTriangulator::Vertex\20const&\29\20const +1049:GrStyle::SimpleFill\28\29 +1050:GrSimpleMeshDrawOpHelper::createProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +1051:GrResourceAllocator::addInterval\28GrSurfaceProxy*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20GrResourceAllocator::ActualUse\2c\20GrResourceAllocator::AllowRecycling\29 +1052:GrRenderTask::makeClosed\28GrRecordingContext*\29 +1053:GrOpFlushState::allocator\28\29 +1054:GrGLGpu::prepareToDraw\28GrPrimitiveType\29 +1055:GrBackendFormatToCompressionType\28GrBackendFormat\20const&\29 +1056:FT_Stream_Skip +1057:FT_Outline_Get_CBox +1058:Cr_z_adler32 +1059:BlockIndexIterator::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Increment\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block\20const*\2c\20int\29>::end\28\29\20const +1060:BlockIndexIterator::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Increment\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block\20const*\2c\20int\29>::begin\28\29\20const +1061:AlmostDequalUlps\28double\2c\20double\29 +1062:write_tag_size\28SkWriteBuffer&\2c\20unsigned\20int\2c\20unsigned\20long\29 +1063:void\20skgpu::VertexWriter::writeQuad\2c\20skgpu::VertexColor\2c\20skgpu::VertexWriter::Conditional>\28skgpu::VertexWriter::TriFan\20const&\2c\20skgpu::VertexColor\20const&\2c\20skgpu::VertexWriter::Conditional\20const&\29 +1064:uprv_free_skia +1065:strcpy +1066:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1067:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1068:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +1069:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1070:std::__2::unique_ptr>\20GrSkSLFP::Make<>\28SkRuntimeEffect\20const*\2c\20char\20const*\2c\20std::__2::unique_ptr>\2c\20GrSkSLFP::OptFlags\29 +1071:std::__2::unique_ptr>\20GrBlendFragmentProcessor::Make<\28SkBlendMode\2913>\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +1072:std::__2::time_get>>::get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +1073:std::__2::time_get>>::get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\20const*\2c\20char\20const*\29\20const +1074:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1075:std::__2::enable_if::type\20skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::AddTrianglesWhenChopping\2c\20skgpu::tess::DiscardFlatCurves>::writeTriangleStack\28skgpu::tess::MiddleOutPolygonTriangulator::PoppedTriangleStack&&\29 +1076:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +1077:std::__2::__tuple_impl\2c\20GrSurfaceProxyView\2c\20sk_sp>::~__tuple_impl\28\29 +1078:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator>=<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29\20\28.5704\29 +1079:skvx::Vec<4\2c\20float>&\20skvx::operator*=<4\2c\20float>\28skvx::Vec<4\2c\20float>&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1080:skia_private::TArray\2c\20true>::destroyAll\28\29 +1081:skia_private::TArray::push_back_n\28int\2c\20SkPoint\20const*\29 +1082:skia::textlayout::Run::placeholderStyle\28\29\20const +1083:skgpu::skgpu_init_static_unique_key_once\28SkAlignedSTStorage<1\2c\20skgpu::UniqueKey>*\29 +1084:skgpu::ganesh::\28anonymous\20namespace\29::update_degenerate_test\28skgpu::ganesh::\28anonymous\20namespace\29::DegenerateTestData*\2c\20SkPoint\20const&\29 +1085:skgpu::VertexWriter&\20skgpu::operator<<\28skgpu::VertexWriter&\2c\20skgpu::VertexColor\20const&\29 +1086:skgpu::ResourceKey::ResourceKey\28\29 +1087:sk_sp::reset\28GrThreadSafeCache::VertexData*\29 +1088:sk_sp::reset\28GrSurfaceProxy*\29 +1089:scalbn +1090:rowcol3\28float\20const*\2c\20float\20const*\29 +1091:ps_parser_skip_spaces +1092:paragraphBuilder_build +1093:isdigit +1094:is_joiner\28hb_glyph_info_t\20const&\29 +1095:hb_paint_funcs_t::push_translate\28void*\2c\20float\2c\20float\29 +1096:hb_lazy_loader_t\2c\20hb_face_t\2c\2022u\2c\20hb_blob_t>::get\28\29\20const +1097:hb_iter_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>>\2c\20hb_pair_t>>::operator--\28int\29 +1098:hb_aat_map_t::range_flags_t*\20hb_vector_t::push\28hb_aat_map_t::range_flags_t&&\29 +1099:get_gsubgpos_table\28hb_face_t*\2c\20unsigned\20int\29 +1100:emscripten_longjmp +1101:contourMeasure_dispose +1102:cff2_path_procs_extents_t::line\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\2c\20CFF::point_t\20const&\29 +1103:cff2_path_param_t::line_to\28CFF::point_t\20const&\29 +1104:cff1_path_procs_extents_t::line\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\2c\20CFF::point_t\20const&\29 +1105:cff1_path_param_t::line_to\28CFF::point_t\20const&\29 +1106:cf2_stack_pushInt +1107:cf2_buf_readByte +1108:byn$mgfn-shared$GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +1109:bool\20hb_bsearch_impl\28unsigned\20int*\2c\20unsigned\20int\20const&\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29 +1110:_hb_draw_funcs_set_preamble\28hb_draw_funcs_t*\2c\20bool\2c\20void**\2c\20void\20\28**\29\28void*\29\29 +1111:__wake +1112:__unlock +1113:__memset +1114:\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1115:SkTDStorage::append\28void\20const*\2c\20int\29 +1116:SkSurface_Base::getCachedCanvas\28\29 +1117:SkString::reset\28\29 +1118:SkStrikeSpec::SkStrikeSpec\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1119:SkStrike::unlock\28\29 +1120:SkStrike::lock\28\29 +1121:SkSL::String::appendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20...\29 +1122:SkSL::RP::Builder::lastInstructionOnAnyStack\28int\29 +1123:SkSL::Parser::expectIdentifier\28SkSL::Token*\29 +1124:SkSL::Parser::AutoDepth::increase\28\29 +1125:SkSL::Inliner::inlineStatement\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Analysis::ReturnComplexity\2c\20SkSL::Statement\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20bool\29::$_2::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +1126:SkSL::GLSLCodeGenerator::finishLine\28\29 +1127:SkSL::ConstructorSplat::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1128:SkSL::ConstructorScalarCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1129:SkRegion::SkRegion\28SkIRect\20const&\29 +1130:SkRasterPipeline::run\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +1131:SkRasterPipeline::appendTransferFunction\28skcms_TransferFunction\20const&\29 +1132:SkRasterPipeline::appendConstantColor\28SkArenaAlloc*\2c\20float\20const*\29 +1133:SkRRect::checkCornerContainment\28float\2c\20float\29\20const +1134:SkPointPriv::DistanceToLineSegmentBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +1135:SkPoint::setLength\28float\29 +1136:SkPathPriv::AllPointsEq\28SkPoint\20const*\2c\20int\29 +1137:SkPathBuilder::~SkPathBuilder\28\29 +1138:SkPathBuilder::lineTo\28SkPoint\29 +1139:SkPathBuilder::detach\28\29 +1140:SkPathBuilder::SkPathBuilder\28\29 +1141:SkPath::transform\28SkMatrix\20const&\2c\20SkApplyPerspectiveClip\29 +1142:SkOpCoincidence::release\28SkCoincidentSpans*\2c\20SkCoincidentSpans*\29 +1143:SkJSONWriter::appendCString\28char\20const*\2c\20char\20const*\29 +1144:SkIntersections::hasT\28double\29\20const +1145:SkImageFilter_Base::getChildOutput\28int\2c\20skif::Context\20const&\29\20const +1146:SkDLine::ptAtT\28double\29\20const +1147:SkColorSpace::Equals\28SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +1148:SkCanvas::translate\28float\2c\20float\29 +1149:SkCanvas::restoreToCount\28int\29 +1150:SkCachedData::unref\28\29\20const +1151:SkBlurMaskFilterImpl::computeXformedSigma\28SkMatrix\20const&\29\20const +1152:SkAutoSMalloc<1024ul>::~SkAutoSMalloc\28\29 +1153:SkAutoCanvasRestore::~SkAutoCanvasRestore\28\29 +1154:SkArenaAlloc::SkArenaAlloc\28unsigned\20long\29 +1155:SkAAClipBlitterWrapper::init\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1156:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1157:OT::Offset\2c\20true>::is_null\28\29\20const +1158:OT::MVAR::get_var\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29\20const +1159:MaskAdditiveBlitter::getRow\28int\29 +1160:GrTriangulator::EdgeList::insert\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +1161:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20GrCaps\20const&\2c\20float\20const*\29 +1162:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\29 +1163:GrTessellationShader::MakeProgram\28GrTessellationShader::ProgramArgs\20const&\2c\20GrTessellationShader\20const*\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +1164:GrScissorState::enabled\28\29\20const +1165:GrRecordingContextPriv::recordTimeAllocator\28\29 +1166:GrQuad::bounds\28\29\20const +1167:GrProxyProvider::createProxy\28GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\29 +1168:GrPixmapBase::operator=\28GrPixmapBase&&\29 +1169:GrOpFlushState::detachAppliedClip\28\29 +1170:GrGLSLShaderBuilder::appendTextureLookup\28GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +1171:GrGLGpu::disableWindowRectangles\28\29 +1172:GrGLFormatFromGLEnum\28unsigned\20int\29 +1173:GrFragmentProcessors::Make\28GrRecordingContext*\2c\20SkColorFilter\20const*\2c\20std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1174:GrFragmentProcessor::~GrFragmentProcessor\28\29 +1175:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29 +1176:GrBackendTexture::getBackendFormat\28\29\20const +1177:CFF::interp_env_t::fetch_op\28\29 +1178:BlockIndexIterator::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Increment\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block*\2c\20int\29>::Item::setIndices\28\29 +1179:AlmostEqualUlps\28double\2c\20double\29 +1180:AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +1181:AAT::StateTable::EntryData>::get_entry\28int\2c\20unsigned\20int\29\20const +1182:void\20sktext::gpu::fill3D\28SkZip\2c\20unsigned\20int\2c\20SkMatrix\20const&\29::'lambda'\28float\2c\20float\29::operator\28\29\28float\2c\20float\29\20const +1183:tt_face_lookup_table +1184:std::__2::unique_ptr>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +1185:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1186:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1187:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Module\20const*\29 +1188:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1189:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1190:std::__2::moneypunct::negative_sign\5babi:v160004\5d\28\29\20const +1191:std::__2::moneypunct::neg_format\5babi:v160004\5d\28\29\20const +1192:std::__2::moneypunct::do_pos_format\28\29\20const +1193:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20std::__2::random_access_iterator_tag\29 +1194:std::__2::function::operator\28\29\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\20const +1195:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +1196:std::__2::char_traits::copy\28wchar_t*\2c\20wchar_t\20const*\2c\20unsigned\20long\29 +1197:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1198:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1199:std::__2::basic_string\2c\20std::__2::allocator>::__set_size\5babi:v160004\5d\28unsigned\20long\29 +1200:std::__2::__split_buffer&>::~__split_buffer\28\29 +1201:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +1202:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +1203:std::__2::__itoa::__append2\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1204:std::__2::__exception_guard_exceptions>::__destroy_vector>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +1205:skvx::Vec<4\2c\20float>\20skvx::naive_if_then_else<4\2c\20float>\28skvx::Vec<4\2c\20skvx::Mask::type>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1206:sktext::gpu::BagOfBytes::~BagOfBytes\28\29 +1207:skia_private::TArray::push_back\28signed\20char&&\29 +1208:skia_private::TArray::push_back\28float\20const&\29 +1209:skia_private::STArray<4\2c\20signed\20char\2c\20true>::STArray\28skia_private::STArray<4\2c\20signed\20char\2c\20true>\20const&\29 +1210:skia_png_gamma_correct +1211:skia_png_gamma_8bit_correct +1212:skia::textlayout::TextStyle::operator=\28skia::textlayout::TextStyle\20const&\29 +1213:skia::textlayout::Run::positionX\28unsigned\20long\29\20const +1214:skia::textlayout::ParagraphImpl::codeUnitHasProperty\28unsigned\20long\2c\20SkUnicode::CodeUnitFlags\29\20const +1215:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20SkBackingFit\2c\20SkISize\2c\20SkSurfaceProps\20const&\2c\20std::__2::basic_string_view>\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1216:skgpu::UniqueKey::UniqueKey\28skgpu::UniqueKey\20const&\29 +1217:sk_sp::operator=\28sk_sp&&\29 +1218:sk_realloc_throw\28void*\2c\20unsigned\20long\29 +1219:powf_ +1220:png_read_buffer +1221:isspace +1222:interp_cubic_coords\28double\20const*\2c\20double\29 +1223:int\20_hb_cmp_method>\28void\20const*\2c\20void\20const*\29 +1224:hb_paint_funcs_t::push_transform\28void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +1225:hb_font_t::parent_scale_y_distance\28int\29 +1226:hb_font_t::parent_scale_x_distance\28int\29 +1227:hb_face_t::get_upem\28\29\20const +1228:hb_buffer_destroy +1229:emscripten_futex_wake +1230:double_to_clamped_scalar\28double\29 +1231:conic_eval_numerator\28double\20const*\2c\20float\2c\20double\29 +1232:cff_index_init +1233:cf2_glyphpath_hintPoint +1234:byn$mgfn-shared$skia_private::AutoSTArray<32\2c\20unsigned\20short>::reset\28int\29 +1235:bool\20hb_buffer_t::replace_glyphs\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\20const*\29 +1236:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1237:a_inc +1238:\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16::Compact\28skvx::Vec<4\2c\20float>\20const&\29 +1239:\28anonymous\20namespace\29::ColorTypeFilter_F16F16::Compact\28skvx::Vec<4\2c\20float>\20const&\29 +1240:\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16::Compact\28skvx::Vec<4\2c\20float>\20const&\29 +1241:\28anonymous\20namespace\29::ColorTypeFilter_8888::Compact\28skvx::Vec<4\2c\20unsigned\20short>\20const&\29 +1242:\28anonymous\20namespace\29::ColorTypeFilter_16161616::Compact\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +1243:\28anonymous\20namespace\29::ColorTypeFilter_1010102::Compact\28unsigned\20long\20long\29 +1244:TT_MulFix14 +1245:Skwasm::createMatrix\28float\20const*\29 +1246:SkWriter32::writeBool\28bool\29 +1247:SkTDStorage::append\28int\29 +1248:SkTDPQueue::setIndex\28int\29 +1249:SkSurface_Base::refCachedImage\28\29 +1250:SkSpotShadowTessellator::addToClip\28SkPoint\20const&\29 +1251:SkSL::Type::MakeTextureType\28char\20const*\2c\20SpvDim_\2c\20bool\2c\20bool\2c\20bool\2c\20SkSL::Type::TextureAccess\29 +1252:SkSL::Type::MakeSpecialType\28char\20const*\2c\20char\20const*\2c\20SkSL::Type::TypeKind\29 +1253:SkSL::Swizzle::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29 +1254:SkSL::RP::Builder::push_slots_or_immutable\28SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +1255:SkSL::RP::Builder::push_duplicates\28int\29 +1256:SkSL::RP::Builder::push_constant_f\28float\29 +1257:SkSL::RP::Builder::push_clone\28int\2c\20int\29 +1258:SkSL::ProgramUsage::get\28SkSL::Variable\20const&\29\20const +1259:SkSL::Parser::statementOrNop\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1260:SkSL::Literal::Make\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +1261:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mul\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +1262:SkSL::Inliner::inlineStatement\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Analysis::ReturnComplexity\2c\20SkSL::Statement\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20bool\29::$_1::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +1263:SkSL::InlineCandidateAnalyzer::visitStatement\28std::__2::unique_ptr>*\2c\20bool\29 +1264:SkSL::GLSLCodeGenerator::writeModifiers\28SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20bool\29 +1265:SkSL::Expression::isIntLiteral\28\29\20const +1266:SkSL::ConstructorCompound::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +1267:SkSL::ConstantFolder::IsConstantSplat\28SkSL::Expression\20const&\2c\20double\29 +1268:SkSL::AliasType::resolve\28\29\20const +1269:SkResourceCache::Find\28SkResourceCache::Key\20const&\2c\20bool\20\28*\29\28SkResourceCache::Rec\20const&\2c\20void*\29\2c\20void*\29 +1270:SkResourceCache::Add\28SkResourceCache::Rec*\2c\20void*\29 +1271:SkRectPriv::HalfWidth\28SkRect\20const&\29 +1272:SkRect::isFinite\28\29\20const +1273:SkRasterPipeline_<256ul>::SkRasterPipeline_\28\29 +1274:SkRasterClip::setRect\28SkIRect\20const&\29 +1275:SkRasterClip::quickContains\28SkIRect\20const&\29\20const +1276:SkRRect::setRect\28SkRect\20const&\29 +1277:SkRRect::MakeRect\28SkRect\20const&\29 +1278:SkRRect::MakeOval\28SkRect\20const&\29 +1279:SkRGBA4f<\28SkAlphaType\293>::toSkColor\28\29\20const +1280:SkPathWriter::isClosed\28\29\20const +1281:SkPathRef::growForVerb\28int\2c\20float\29 +1282:SkPathBuilder::moveTo\28SkPoint\29 +1283:SkPath::swap\28SkPath&\29 +1284:SkPath::incReserve\28int\29 +1285:SkPath::getGenerationID\28\29\20const +1286:SkPath::addPoly\28SkPoint\20const*\2c\20int\2c\20bool\29 +1287:SkOpSegment::existing\28double\2c\20SkOpSegment\20const*\29\20const +1288:SkOpSegment::addT\28double\29 +1289:SkOpSegment::addCurveTo\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkPathWriter*\29\20const +1290:SkOpPtT::find\28SkOpSegment\20const*\29\20const +1291:SkOpContourBuilder::flush\28\29 +1292:SkMipmap::getLevel\28int\2c\20SkMipmap::Level*\29\20const +1293:SkMatrix::isFinite\28\29\20const +1294:SkMatrix::MakeRectToRect\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkMatrix::ScaleToFit\29 +1295:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29 +1296:SkImage_Picture::type\28\29\20const +1297:SkImageInfoIsValid\28SkImageInfo\20const&\29 +1298:SkImageInfo::makeColorType\28SkColorType\29\20const +1299:SkImageInfo::computeByteSize\28unsigned\20long\29\20const +1300:SkImageInfo::SkImageInfo\28SkImageInfo\20const&\29 +1301:SkImageFilter_Base::SkImageFilter_Base\28sk_sp\20const*\2c\20int\2c\20std::__2::optional\29 +1302:SkIRect::offset\28int\2c\20int\29 +1303:SkGlyph::imageSize\28\29\20const +1304:SkColorSpaceXformSteps::apply\28SkRasterPipeline*\29\20const +1305:SkColorSpace::gammaIsLinear\28\29\20const +1306:SkColorFilterBase::affectsTransparentBlack\28\29\20const +1307:SkCanvas::~SkCanvas\28\29 +1308:SkCanvas::save\28\29 +1309:SkCanvas::predrawNotify\28bool\29 +1310:SkBulkGlyphMetrics::~SkBulkGlyphMetrics\28\29 +1311:SkBlockAllocator::SkBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\2c\20unsigned\20long\29 +1312:SkBlockAllocator::BlockIter::begin\28\29\20const +1313:SkBitmap::reset\28\29 +1314:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29 +1315:ScalarToAlpha\28float\29 +1316:OT::Layout::GSUB_impl::SubstLookupSubTable*\20hb_serialize_context_t::push\28\29 +1317:OT::Layout::GPOS_impl::PosLookupSubTable\20const&\20OT::Lookup::get_subtable\28unsigned\20int\29\20const +1318:OT::ArrayOf\2c\20true>\2c\20OT::IntType>*\20hb_serialize_context_t::extend_size\2c\20true>\2c\20OT::IntType>>\28OT::ArrayOf\2c\20true>\2c\20OT::IntType>*\2c\20unsigned\20long\2c\20bool\29 +1319:GrTriangulator::makeConnectingEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\2c\20int\29 +1320:GrTriangulator::appendPointToContour\28SkPoint\20const&\2c\20GrTriangulator::VertexList*\29\20const +1321:GrSurface::ComputeSize\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20bool\29 +1322:GrStyledShape::writeUnstyledKey\28unsigned\20int*\29\20const +1323:GrStyledShape::unstyledKeySize\28\29\20const +1324:GrStyle::operator=\28GrStyle\20const&\29 +1325:GrStyle::GrStyle\28SkStrokeRec\20const&\2c\20sk_sp\29 +1326:GrStyle::GrStyle\28SkPaint\20const&\29 +1327:GrSimpleMesh::setIndexed\28sk_sp\2c\20int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20GrPrimitiveRestart\2c\20sk_sp\2c\20int\29 +1328:GrRecordingContextPriv::makeSFCWithFallback\28GrImageInfo\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1329:GrRecordingContextPriv::makeSC\28GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1330:GrQuad::MakeFromSkQuad\28SkPoint\20const*\2c\20SkMatrix\20const&\29 +1331:GrProcessorSet::visitProxies\28std::__2::function\20const&\29\20const +1332:GrProcessorSet::finalize\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkRGBA4f<\28SkAlphaType\292>*\29 +1333:GrGpuResource::isPurgeable\28\29\20const +1334:GrGpuResource::gpuMemorySize\28\29\20const +1335:GrGpuBuffer::updateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +1336:GrGetColorTypeDesc\28GrColorType\29 +1337:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\29 +1338:GrGLSLShaderBuilder::~GrGLSLShaderBuilder\28\29 +1339:GrGLSLShaderBuilder::declAppend\28GrShaderVar\20const&\29 +1340:GrGLGpu::flushScissorTest\28GrScissorTest\29 +1341:GrGLGpu::didDrawTo\28GrRenderTarget*\29 +1342:GrGLGpu::bindFramebuffer\28unsigned\20int\2c\20unsigned\20int\29 +1343:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int*\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int*\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int*\29 +1344:GrGLCaps::maxRenderTargetSampleCount\28GrGLFormat\29\20const +1345:GrDefaultGeoProcFactory::Make\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +1346:GrCaps::validateSurfaceParams\28SkISize\20const&\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20GrTextureType\29\20const +1347:GrBlurUtils::GaussianBlur\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20float\2c\20float\2c\20SkTileMode\2c\20SkBackingFit\29::$_0::operator\28\29\28SkIRect\2c\20SkIRect\29\20const +1348:GrBackendTexture::~GrBackendTexture\28\29 +1349:GrAppliedClip::GrAppliedClip\28GrAppliedClip&&\29 +1350:GrAAConvexTessellator::Ring::origEdgeID\28int\29\20const +1351:FT_GlyphLoader_CheckPoints +1352:FT_Get_Sfnt_Table +1353:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +1354:BlockIndexIterator::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Decrement\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block*\2c\20int\29>::end\28\29\20const +1355:BlockIndexIterator::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Increment\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block\20const*\2c\20int\29>::Item::operator++\28\29 +1356:AAT::Lookup>::get_class\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +1357:void\20std::__2::reverse\5babi:v160004\5d\28char*\2c\20char*\29 +1358:void\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__rehash\28unsigned\20long\29 +1359:void\20SkTQSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29::operator\28\29\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29\20const +1360:void\20SkSafeUnref\28GrThreadSafeCache::VertexData*\29 +1361:unsigned\20int\20hb_buffer_t::group_end\28unsigned\20int\2c\20bool\20\20const\28&\29\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29\29\20const +1362:std::__2::vector>\2c\20std::__2::allocator>>>::push_back\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +1363:std::__2::vector\2c\20std::__2::allocator>>::~vector\5babi:v160004\5d\28\29 +1364:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +1365:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1366:std::__2::unique_ptr>::reset\5babi:v160004\5d\28std::nullptr_t\29 +1367:std::__2::ostreambuf_iterator>\20std::__2::__pad_and_output\5babi:v160004\5d>\28std::__2::ostreambuf_iterator>\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20std::__2::ios_base&\2c\20wchar_t\29 +1368:std::__2::ostreambuf_iterator>\20std::__2::__pad_and_output\5babi:v160004\5d>\28std::__2::ostreambuf_iterator>\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20std::__2::ios_base&\2c\20char\29 +1369:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1370:std::__2::hash::operator\28\29\5babi:v160004\5d\28GrFragmentProcessor\20const*\29\20const +1371:std::__2::char_traits::to_int_type\28char\29 +1372:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::allocator\20const&\29 +1373:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\2c\20unsigned\20long\29 +1374:std::__2::basic_string\2c\20std::__2::allocator>::__get_long_cap\5babi:v160004\5d\28\29\20const +1375:std::__2::basic_ios>::setstate\5babi:v160004\5d\28unsigned\20int\29 +1376:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +1377:skvx::Vec<4\2c\20unsigned\20short>\20\28anonymous\20namespace\29::add_121>\28skvx::Vec<4\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20short>\20const&\29 +1378:skvx::Vec<4\2c\20unsigned\20int>\20\28anonymous\20namespace\29::add_121>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +1379:skvx::Vec<4\2c\20float>\20unchecked_mix<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1380:skvx::Vec<4\2c\20float>\20skvx::operator/<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1381:skvx::Vec<4\2c\20float>\20skvx::min<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1382:skvx::Vec<2\2c\20float>\20skvx::naive_if_then_else<2\2c\20float>\28skvx::Vec<2\2c\20skvx::Mask::type>\20const&\2c\20skvx::Vec<2\2c\20float>\20const&\2c\20skvx::Vec<2\2c\20float>\20const&\29 +1383:skip_spaces +1384:skif::\28anonymous\20namespace\29::is_nearly_integer_translation\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29 +1385:skif::FilterResult::resolve\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +1386:skif::FilterResult::operator=\28skif::FilterResult&&\29 +1387:skif::FilterResult::FilterResult\28skif::FilterResult\20const&\29 +1388:skia_private::THashMap::find\28SkSL::FunctionDeclaration\20const*\20const&\29\20const +1389:skia_private::TArray::push_back\28unsigned\20char&&\29 +1390:skia_private::TArray::checkRealloc\28int\2c\20double\29 +1391:skia_private::TArray::TArray\28skia_private::TArray&&\29 +1392:skia_private::TArray::TArray\28skia_private::TArray&&\29 +1393:skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +1394:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +1395:skia_private::TArray::checkRealloc\28int\2c\20double\29 +1396:skia_private::TArray::push_back\28GrAuditTrail::Op*\20const&\29 +1397:skia_private::AutoSTMalloc<4ul\2c\20int\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +1398:skia_png_safecat +1399:skia_png_malloc +1400:skia_png_colorspace_sync +1401:skia_png_chunk_warning +1402:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::TextWrapper::TextStretch&\29 +1403:skia::textlayout::TextLine::iterateThroughSingleRunByStyles\28skia::textlayout::TextLine::TextAdjustment\2c\20skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::StyleType\2c\20std::__2::function\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\20const&\29\20const +1404:skia::textlayout::ParagraphStyle::~ParagraphStyle\28\29 +1405:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29 +1406:skgpu::ganesh::SurfaceFillContext::fillWithFP\28std::__2::unique_ptr>\29 +1407:skgpu::ganesh::OpsTask::OpChain::List::popHead\28\29 +1408:skgpu::SkSLToGLSL\28SkSL::ShaderCaps\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20skgpu::ShaderErrorHandler*\29 +1409:skgpu::ResourceKey::reset\28\29 +1410:skcms_TransferFunction_getType +1411:skcms_TransferFunction_eval +1412:sk_sp::operator=\28sk_sp&&\29 +1413:sk_sp::~sk_sp\28\29 +1414:sk_sp::reset\28SkString::Rec*\29 +1415:sk_sp\20sk_make_sp\2c\20SkMatrix\20const&>\28sk_sp&&\2c\20SkMatrix\20const&\29 +1416:sk_sp::sk_sp\28sk_sp\20const&\29 +1417:operator!=\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +1418:non-virtual\20thunk\20to\20GrOpFlushState::allocator\28\29 +1419:is_halant\28hb_glyph_info_t\20const&\29 +1420:hb_zip_iter_t\2c\20hb_array_t>::__next__\28\29 +1421:hb_serialize_context_t::pop_pack\28bool\29 +1422:hb_sanitize_context_t::init\28hb_blob_t*\29 +1423:hb_lazy_loader_t\2c\20hb_face_t\2c\2011u\2c\20hb_blob_t>::get\28\29\20const +1424:hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +1425:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::get_stored\28\29\20const +1426:hb_hashmap_t::alloc\28unsigned\20int\29 +1427:hb_font_t::scale_glyph_extents\28hb_glyph_extents_t*\29 +1428:hb_extents_t::add_point\28float\2c\20float\29 +1429:hb_draw_funcs_t::emit_cubic_to\28void*\2c\20hb_draw_state_t&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +1430:hb_buffer_t::reverse_range\28unsigned\20int\2c\20unsigned\20int\29 +1431:hb_buffer_t::replace_glyph\28unsigned\20int\29 +1432:hb_buffer_t::merge_out_clusters\28unsigned\20int\2c\20unsigned\20int\29 +1433:hb_buffer_append +1434:cos +1435:cleanup_program\28GrGLGpu*\2c\20unsigned\20int\2c\20SkTDArray\20const&\29 +1436:cff_index_done +1437:cf2_glyphpath_curveTo +1438:byn$mgfn-shared$skia_private::TArray::preallocateNewData\28int\2c\20double\29 +1439:bool\20hb_array_t::sanitize\28hb_sanitize_context_t*\29\20const +1440:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1441:afm_parser_read_vals +1442:afm_parser_next_key +1443:__lshrti3 +1444:__lock +1445:__letf2 +1446:\28anonymous\20namespace\29::skhb_position\28float\29 +1447:SkWriter32::reservePad\28unsigned\20long\29 +1448:SkWriteBuffer::writeDataAsByteArray\28SkData\20const*\29 +1449:SkTSpan::removeBounded\28SkTSpan\20const*\29 +1450:SkTSpan::initBounds\28SkTCurve\20const&\29 +1451:SkTSpan::addBounded\28SkTSpan*\2c\20SkArenaAlloc*\29 +1452:SkTSect::tail\28\29 +1453:SkTInternalLList>\2c\20SkGoodHash>::Entry>::remove\28SkLRUCache>\2c\20SkGoodHash>::Entry*\29 +1454:SkTDStorage::reset\28\29 +1455:SkString::printf\28char\20const*\2c\20...\29 +1456:SkString::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +1457:SkSpecialImages::MakeDeferredFromGpu\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1458:SkShaderUtils::GLSLPrettyPrint::newline\28\29 +1459:SkShaderUtils::GLSLPrettyPrint::hasToken\28char\20const*\29 +1460:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_5::operator\28\29\28int\2c\20int\29\20const +1461:SkSL::is_constant_value\28SkSL::Expression\20const&\2c\20double\29 +1462:SkSL::compile_and_shrink\28SkSL::Compiler*\2c\20SkSL::ProgramKind\2c\20char\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::Module\20const*\29 +1463:SkSL::\28anonymous\20namespace\29::ReturnsOnAllPathsVisitor::visitStatement\28SkSL::Statement\20const&\29 +1464:SkSL::Variable*\20SkSL::SymbolTable::takeOwnershipOfSymbol\28std::__2::unique_ptr>\29 +1465:SkSL::Type::MakeScalarType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type::NumberKind\2c\20signed\20char\2c\20signed\20char\29 +1466:SkSL::RP::Generator::push\28SkSL::RP::LValue&\29 +1467:SkSL::Parser::statement\28\29 +1468:SkSL::ModifierFlags::description\28\29\20const +1469:SkSL::Layout::paddedDescription\28\29\20const +1470:SkSL::ConstructorCompoundCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1471:SkSL::Analysis::UpdateVariableRefKind\28SkSL::Expression*\2c\20SkSL::VariableRefKind\2c\20SkSL::ErrorReporter*\29 +1472:SkSL::Analysis::IsSameExpressionTree\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1473:SkRuntimeEffect::Uniform::sizeInBytes\28\29\20const +1474:SkRegion::setRegion\28SkRegion\20const&\29 +1475:SkRegion::Iterator::next\28\29 +1476:SkRect::round\28SkIRect*\29\20const +1477:SkRect::makeSorted\28\29\20const +1478:SkRect::intersects\28SkRect\20const&\29\20const +1479:SkReadBuffer::readInt\28\29 +1480:SkReadBuffer::readBool\28\29 +1481:SkRasterPipeline_<256ul>::~SkRasterPipeline_\28\29 +1482:SkRasterClip::updateCacheAndReturnNonEmpty\28bool\29 +1483:SkRasterClip::quickReject\28SkIRect\20const&\29\20const +1484:SkPixmap::addr\28int\2c\20int\29\20const +1485:SkPath::quadTo\28float\2c\20float\2c\20float\2c\20float\29 +1486:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +1487:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\29 +1488:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\29 +1489:SkPaint*\20SkRecorder::copy\28SkPaint\20const*\29 +1490:SkOpSegment::ptAtT\28double\29\20const +1491:SkOpSegment::dPtAtT\28double\29\20const +1492:SkNoPixelsDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +1493:SkMemoryStream::getPosition\28\29\20const +1494:SkMatrix::setConcat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +1495:SkMatrix::mapRadius\28float\29\20const +1496:SkMask::getAddr8\28int\2c\20int\29\20const +1497:SkIntersectionHelper::segmentType\28\29\20const +1498:SkImageFilter_Base::flatten\28SkWriteBuffer&\29\20const +1499:SkGoodHash::operator\28\29\28SkString\20const&\29\20const +1500:SkGlyph::rect\28\29\20const +1501:SkFont::SkFont\28sk_sp\2c\20float\29 +1502:SkDrawBase::SkDrawBase\28\29 +1503:SkDQuad::RootsValidT\28double\2c\20double\2c\20double\2c\20double*\29 +1504:SkConvertPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +1505:SkCanvas::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +1506:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\2c\20SkEnumBitMask\29 +1507:SkCanvas::AutoUpdateQRBounds::~AutoUpdateQRBounds\28\29 +1508:SkCachedData::ref\28\29\20const +1509:SkBulkGlyphMetrics::SkBulkGlyphMetrics\28SkStrikeSpec\20const&\29 +1510:SkBitmap::setPixelRef\28sk_sp\2c\20int\2c\20int\29 +1511:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +1512:SkAutoPixmapStorage::~SkAutoPixmapStorage\28\29 +1513:SkAnySubclass::reset\28\29 +1514:SkAlphaRuns::Break\28short*\2c\20unsigned\20char*\2c\20int\2c\20int\29 +1515:OT::VariationStore::get_delta\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +1516:OT::GSUBGPOS::get_lookup\28unsigned\20int\29\20const +1517:OT::GDEF::get_glyph_props\28unsigned\20int\29\20const +1518:OT::CmapSubtable::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +1519:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\2c\20bool\29 +1520:GrSurfaceProxyView::mipmapped\28\29\20const +1521:GrSurfaceProxy::backingStoreBoundsRect\28\29\20const +1522:GrStyledShape::knownToBeConvex\28\29\20const +1523:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +1524:GrSimpleMeshDrawOpHelperWithStencil::isCompatible\28GrSimpleMeshDrawOpHelperWithStencil\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +1525:GrShape::asPath\28SkPath*\2c\20bool\29\20const +1526:GrScissorState::set\28SkIRect\20const&\29 +1527:GrRenderTask::~GrRenderTask\28\29 +1528:GrPixmap::Allocate\28GrImageInfo\20const&\29 +1529:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29 +1530:GrImageInfo::makeColorType\28GrColorType\29\20const +1531:GrGpuResource::CacheAccess::release\28\29 +1532:GrGpuBuffer::map\28\29 +1533:GrGpu::didWriteToSurface\28GrSurface*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const*\2c\20unsigned\20int\29\20const +1534:GrGeometryProcessor::TextureSampler::TextureSampler\28\29 +1535:GrGeometryProcessor::AttributeSet::begin\28\29\20const +1536:GrGeometryProcessor::AttributeSet::Iter::operator++\28\29 +1537:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20int\2c\20int\2c\20int\2c\20int\29\29::'lambda'\28void\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29::__invoke\28void\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29 +1538:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkMatrix\20const&\29 +1539:GrFragmentProcessor::MakeColor\28SkRGBA4f<\28SkAlphaType\292>\29 +1540:GrConvertPixels\28GrPixmap\20const&\2c\20GrCPixmap\20const&\2c\20bool\29 +1541:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +1542:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +1543:GrAtlasManager::getAtlas\28skgpu::MaskFormat\29\20const +1544:FT_Get_Char_Index +1545:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1546:wrapper_cmp +1547:void\20std::__2::vector>::__construct_at_end\28SkFontArguments::VariationPosition::Coordinate*\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20unsigned\20long\29 +1548:void\20std::__2::__memberwise_forward_assign\5babi:v160004\5d\2c\20std::__2::tuple\2c\20GrFragmentProcessor\20const*\2c\20GrGeometryProcessor::ProgramImpl::TransformInfo\2c\200ul\2c\201ul>\28std::__2::tuple&\2c\20std::__2::tuple&&\2c\20std::__2::__tuple_types\2c\20std::__2::__tuple_indices<0ul\2c\201ul>\29 +1549:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20unsigned\20int*&\2c\20unsigned\20int*&\29 +1550:void\20hb_sanitize_context_t::set_object>\28AAT::ChainSubtable\20const*\29 +1551:unsigned\20long\20const&\20std::__2::max\5babi:v160004\5d\28unsigned\20long\20const&\2c\20unsigned\20long\20const&\29 +1552:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +1553:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +1554:unsigned\20int\20std::__2::__sort3\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +1555:toupper +1556:top12.2 +1557:store\28unsigned\20char*\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20int\29 +1558:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +1559:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +1560:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +1561:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +1562:std::__2::unique_ptr\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +1563:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skia::textlayout::Run*\29 +1564:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1565:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1566:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1567:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1568:std::__2::shared_ptr::operator=\5babi:v160004\5d\28std::__2::shared_ptr&&\29 +1569:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1570:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1571:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28\29 +1572:std::__2::enable_if::value\2c\20sk_sp>::type\20GrResourceProvider::findByUniqueKey\28skgpu::UniqueKey\20const&\29 +1573:std::__2::deque>::end\5babi:v160004\5d\28\29 +1574:std::__2::ctype::narrow\5babi:v160004\5d\28wchar_t\2c\20char\29\20const +1575:std::__2::ctype::narrow\5babi:v160004\5d\28char\2c\20char\29\20const +1576:std::__2::char_traits::compare\28char\20const*\2c\20char\20const*\2c\20unsigned\20long\29 +1577:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +1578:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1579:std::__2::basic_string\2c\20std::__2::allocator>\20std::__2::operator+\5babi:v160004\5d\2c\20std::__2::allocator>\28std::__2::basic_string\2c\20std::__2::allocator>&&\2c\20char\29 +1580:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1581:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +1582:std::__2::basic_streambuf>::sputn\5babi:v160004\5d\28char\20const*\2c\20long\29 +1583:std::__2::basic_streambuf>::setg\5babi:v160004\5d\28char*\2c\20char*\2c\20char*\29 +1584:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +1585:std::__2::__tree\2c\20std::__2::__map_value_compare\2c\20std::__2::less\2c\20true>\2c\20std::__2::allocator>>::~__tree\28\29 +1586:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +1587:std::__2::__num_get::__stage2_int_loop\28wchar_t\2c\20int\2c\20char*\2c\20char*&\2c\20unsigned\20int&\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20wchar_t\20const*\29 +1588:std::__2::__num_get::__stage2_int_loop\28char\2c\20int\2c\20char*\2c\20char*&\2c\20unsigned\20int&\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20char\20const*\29 +1589:std::__2::__next_prime\28unsigned\20long\29 +1590:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1591:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1592:src_p\28unsigned\20char\2c\20unsigned\20char\29 +1593:sort_r_swap\28char*\2c\20char*\2c\20unsigned\20long\29 +1594:skvx::Vec<4\2c\20float>\20skvx::operator+<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +1595:sktext::SkStrikePromise::SkStrikePromise\28sktext::SkStrikePromise&&\29 +1596:skif::LayerSpace::roundOut\28\29\20const +1597:skif::FilterResult::FilterResult\28std::__2::pair\2c\20skif::LayerSpace>\29 +1598:skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::resize\28int\29 +1599:skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +1600:skia_private::THashMap>\2c\20SkGoodHash>::find\28SkImageFilter\20const*\20const&\29\20const +1601:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +1602:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +1603:skia_private::TArray\2c\20true>::~TArray\28\29 +1604:skia_private::TArray::resize_back\28int\29 +1605:skia_private::AutoTMalloc::AutoTMalloc\28unsigned\20long\29 +1606:skia_private::AutoSTArray<4\2c\20float>::reset\28int\29 +1607:skia_png_free_data +1608:skia::textlayout::TextStyle::TextStyle\28\29 +1609:skia::textlayout::Run::Run\28skia::textlayout::ParagraphImpl*\2c\20SkShaper::RunHandler::RunInfo\20const&\2c\20unsigned\20long\2c\20float\2c\20bool\2c\20float\2c\20unsigned\20long\2c\20float\29 +1610:skia::textlayout::InternalLineMetrics::delta\28\29\20const +1611:skia::textlayout::Cluster::Cluster\28skia::textlayout::ParagraphImpl*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkSpan\2c\20float\2c\20float\29 +1612:skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\294>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\298>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::ReplicateLineEndPoints\2c\20skgpu::tess::TrackJoinControlPoints>::chopAndWriteCubics\28skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20skvx::Vec<2\2c\20float>\2c\20int\29 +1613:skgpu::ganesh::SurfaceDrawContext::fillRectToRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +1614:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::RawElement\20const&\29\20const +1615:skgpu::VertexWriter&\20skgpu::operator<<<4\2c\20SkPoint>\28skgpu::VertexWriter&\2c\20skgpu::VertexWriter::RepeatDesc<4\2c\20SkPoint>\20const&\29 +1616:skgpu::TAsyncReadResult::addCpuPlane\28sk_sp\2c\20unsigned\20long\29 +1617:sk_sp::reset\28SkVertices*\29 +1618:sk_sp::reset\28SkPathRef*\29 +1619:sk_sp::reset\28SkMeshPriv::VB\20const*\29 +1620:sk_sp::reset\28SkColorSpace*\29 +1621:sk_malloc_throw\28unsigned\20long\29 +1622:sk_doubles_nearly_equal_ulps\28double\2c\20double\2c\20unsigned\20char\29 +1623:sbrk +1624:saveSetjmp +1625:remove_node\28OffsetEdge\20const*\2c\20OffsetEdge**\29 +1626:quick_div\28int\2c\20int\29 +1627:pt_to_line\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +1628:processPropertySeq\28UBiDi*\2c\20LevState*\2c\20unsigned\20char\2c\20int\2c\20int\29 +1629:left\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1630:inversion\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Comparator\20const&\29 +1631:interp_quad_coords\28double\20const*\2c\20double\29 +1632:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +1633:hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>::may_have\28unsigned\20int\29\20const +1634:hb_serialize_context_t::object_t::fini\28\29 +1635:hb_ot_map_builder_t::add_feature\28hb_ot_map_feature_t\20const&\29 +1636:hb_lazy_loader_t\2c\20hb_face_t\2c\2015u\2c\20OT::glyf_accelerator_t>::get_stored\28\29\20const +1637:hb_hashmap_t::fini\28\29 +1638:hb_buffer_t::make_room_for\28unsigned\20int\2c\20unsigned\20int\29 +1639:hb_buffer_t::ensure\28unsigned\20int\29 +1640:hairquad\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkRect\20const*\2c\20SkRect\20const*\2c\20SkBlitter*\2c\20int\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +1641:fmt_u +1642:float*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29 +1643:emscripten_futex_wait +1644:duplicate_pt\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1645:compute_quad_level\28SkPoint\20const*\29 +1646:cff2_extents_param_t::update_bounds\28CFF::point_t\20const&\29 +1647:cf2_arrstack_getPointer +1648:cbrtf +1649:can_add_curve\28SkPath::Verb\2c\20SkPoint*\29 +1650:call_hline_blitter\28SkBlitter*\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\29 +1651:byn$mgfn-shared$std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>&&\29 +1652:byn$mgfn-shared$GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +1653:bounds_t::update\28CFF::point_t\20const&\29 +1654:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\29\20const +1655:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\29\20const +1656:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1657:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1658:blit_trapezoid_row\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +1659:auto\20std::__2::__unwrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +1660:auto\20sktext::gpu::VertexFiller::fillVertexData\28int\2c\20int\2c\20SkSpan\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkIRect\2c\20void*\29\20const::$_0::operator\28\29\28sktext::gpu::Mask2DVertex\20\28*\29\20\5b4\5d\29\20const +1661:atan2f +1662:af_shaper_get_cluster +1663:_hb_ot_metrics_get_position_common\28hb_font_t*\2c\20hb_ot_metrics_tag_t\2c\20int*\29 +1664:__wait +1665:__tandf +1666:__pthread_setcancelstate +1667:__floatunsitf +1668:__cxa_allocate_exception +1669:\28anonymous\20namespace\29::subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +1670:\28anonymous\20namespace\29::MeshOp::fixedFunctionFlags\28\29\20const +1671:\28anonymous\20namespace\29::DrawAtlasOpImpl::fixedFunctionFlags\28\29\20const +1672:Update_Max +1673:TT_Get_MM_Var +1674:SkUTF::UTF8ToUTF16\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20unsigned\20long\29 +1675:SkTextBlob::RunRecord::textSize\28\29\20const +1676:SkTSpan::resetBounds\28SkTCurve\20const&\29 +1677:SkTSect::removeSpan\28SkTSpan*\29 +1678:SkTSect::BinarySearch\28SkTSect*\2c\20SkTSect*\2c\20SkIntersections*\29 +1679:SkTInternalLList::remove\28skgpu::Plot*\29 +1680:SkTDArray::append\28\29 +1681:SkTDArray::append\28\29 +1682:SkTConic::operator\5b\5d\28int\29\20const +1683:SkTBlockList::~SkTBlockList\28\29 +1684:SkStrokeRec::needToApply\28\29\20const +1685:SkString::set\28char\20const*\2c\20unsigned\20long\29 +1686:SkString::SkString\28char\20const*\2c\20unsigned\20long\29 +1687:SkStrikeSpec::findOrCreateStrike\28\29\20const +1688:SkShaders::Color\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\29 +1689:SkScan::FillRect\28SkRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +1690:SkScalerContext_FreeType::setupSize\28\29 +1691:SkScalarsAreFinite\28float\20const*\2c\20int\29 +1692:SkSL::type_is_valid_for_color\28SkSL::Type\20const&\29 +1693:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_4::operator\28\29\28int\29\20const +1694:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_3::operator\28\29\28int\29\20const +1695:SkSL::optimize_comparison\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20bool\20\28*\29\28double\2c\20double\29\29 +1696:SkSL::VariableReference::Make\28SkSL::Position\2c\20SkSL::Variable\20const*\2c\20SkSL::VariableRefKind\29 +1697:SkSL::Type::coercionCost\28SkSL::Type\20const&\29\20const +1698:SkSL::SymbolTable::addArrayDimension\28SkSL::Type\20const*\2c\20int\29 +1699:SkSL::RP::VariableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +1700:SkSL::RP::Generator::pushBinaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +1701:SkSL::RP::Generator::emitTraceLine\28SkSL::Position\29 +1702:SkSL::RP::AutoStack::enter\28\29 +1703:SkSL::PipelineStage::PipelineStageCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1704:SkSL::PipelineStage::PipelineStageCodeGenerator::writeLine\28std::__2::basic_string_view>\29 +1705:SkSL::Operator::determineBinaryType\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Type\20const**\2c\20SkSL::Type\20const**\2c\20SkSL::Type\20const**\29\20const +1706:SkSL::Literal::MakeBool\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20bool\29 +1707:SkSL::GLSLCodeGenerator::getTypePrecision\28SkSL::Type\20const&\29 +1708:SkSL::ExpressionStatement::Make\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +1709:SkSL::ConstructorDiagonalMatrix::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1710:SkSL::ConstructorArrayCast::~ConstructorArrayCast\28\29 +1711:SkSL::ConstantFolder::MakeConstantValueForVariable\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1712:SkSL::Block::Make\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::shared_ptr\29 +1713:SkSBlockAllocator<64ul>::SkSBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\29 +1714:SkRuntimeEffect::uniformSize\28\29\20const +1715:SkRuntimeEffect::findUniform\28std::__2::basic_string_view>\29\20const +1716:SkResourceCache::Key::init\28void*\2c\20unsigned\20long\20long\2c\20unsigned\20long\29 +1717:SkRegion::op\28SkRegion\20const&\2c\20SkRegion::Op\29 +1718:SkRasterPipelineBlitter::appendStore\28SkRasterPipeline*\29\20const +1719:SkRasterPipeline::compile\28\29\20const +1720:SkRasterPipeline::appendClampIfNormalized\28SkImageInfo\20const&\29 +1721:SkRasterClipStack::writable_rc\28\29 +1722:SkRRect::transform\28SkMatrix\20const&\2c\20SkRRect*\29\20const +1723:SkPointPriv::EqualsWithinTolerance\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1724:SkPoint::Length\28float\2c\20float\29 +1725:SkPixmap::operator=\28SkPixmap&&\29 +1726:SkPathWriter::matchedLast\28SkOpPtT\20const*\29\20const +1727:SkPathWriter::finishContour\28\29 +1728:SkPathRef::atVerb\28int\29\20const +1729:SkPathEdgeIter::next\28\29 +1730:SkPathBuilder::ensureMove\28\29 +1731:SkPathBuilder::close\28\29 +1732:SkPath::addPath\28SkPath\20const&\2c\20SkPath::AddPathMode\29 +1733:SkPaint::isSrcOver\28\29\20const +1734:SkOpSpanBase::contains\28SkOpSegment\20const*\29\20const +1735:SkOpSegment::updateWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +1736:SkOpAngle::linesOnOriginalSide\28SkOpAngle\20const*\29 +1737:SkNoPixelsDevice::writableClip\28\29 +1738:SkNextID::ImageID\28\29 +1739:SkNVRefCnt::unref\28\29\20const +1740:SkMatrixPriv::MapRect\28SkM44\20const&\2c\20SkRect\20const&\29 +1741:SkMatrix::mapVectors\28SkPoint*\2c\20int\29\20const +1742:SkMatrix::decomposeScale\28SkSize*\2c\20SkMatrix*\29\20const +1743:SkMaskBuilder::AllocImage\28unsigned\20long\2c\20SkMaskBuilder::AllocType\29 +1744:SkMask::computeImageSize\28\29\20const +1745:SkMask::AlphaIter<\28SkMask::Format\294>::operator*\28\29\20const +1746:SkMakeImageFromRasterBitmap\28SkBitmap\20const&\2c\20SkCopyPixelsMode\29 +1747:SkJSONWriter::endObject\28\29 +1748:SkJSONWriter::beginObject\28char\20const*\2c\20bool\29 +1749:SkJSONWriter::appendName\28char\20const*\29 +1750:SkIntersections::flip\28\29 +1751:SkImageFilter::getInput\28int\29\20const +1752:SkIDChangeListener::List::changed\28\29 +1753:SkFont::unicharToGlyph\28int\29\20const +1754:SkDrawTiler::~SkDrawTiler\28\29 +1755:SkDrawTiler::next\28\29 +1756:SkDrawTiler::SkDrawTiler\28SkBitmapDevice*\2c\20SkRect\20const*\29 +1757:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29\20const +1758:SkDescriptor::operator==\28SkDescriptor\20const&\29\20const +1759:SkData::MakeEmpty\28\29 +1760:SkDRect::add\28SkDPoint\20const&\29 +1761:SkDCubic::FindExtrema\28double\20const*\2c\20double*\29 +1762:SkConic::chopAt\28float\2c\20SkConic*\29\20const +1763:SkColorInfo::isOpaque\28\29\20const +1764:SkColorFilters::Blend\28unsigned\20int\2c\20SkBlendMode\29 +1765:SkColorFilter::makeComposed\28sk_sp\29\20const +1766:SkCanvas::saveLayer\28SkRect\20const*\2c\20SkPaint\20const*\29 +1767:SkCanvas::getTotalMatrix\28\29\20const +1768:SkCanvas::computeDeviceClipBounds\28bool\29\20const +1769:SkBlockAllocator::ByteRange\20SkBlockAllocator::allocate<4ul\2c\200ul>\28unsigned\20long\29 +1770:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29 +1771:SkAutoSMalloc<1024ul>::SkAutoSMalloc\28unsigned\20long\29 +1772:SkAutoCanvasRestore::SkAutoCanvasRestore\28SkCanvas*\2c\20bool\29 +1773:RunBasedAdditiveBlitter::checkY\28int\29 +1774:RoughlyEqualUlps\28double\2c\20double\29 +1775:PS_Conv_ToFixed +1776:OT::post::accelerator_t::cmp_gids\28void\20const*\2c\20void\20const*\2c\20void*\29 +1777:OT::hmtxvmtx::accelerator_t::get_advance_without_var_unscaled\28unsigned\20int\29\20const +1778:OT::Layout::GPOS_impl::ValueFormat::apply_value\28OT::hb_ot_apply_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\2c\20hb_glyph_position_t&\29\20const +1779:GrTriangulator::VertexList::remove\28GrTriangulator::Vertex*\29 +1780:GrTriangulator::Vertex*\20SkArenaAlloc::make\28SkPoint&\2c\20int&&\29 +1781:GrTriangulator::Poly::addEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20GrTriangulator*\29 +1782:GrSurface::invokeReleaseProc\28\29 +1783:GrSurface::GrSurface\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +1784:GrStyledShape::operator=\28GrStyledShape\20const&\29 +1785:GrSimpleMeshDrawOpHelperWithStencil::createProgramInfoWithStencil\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +1786:GrSimpleMeshDrawOpHelper::CreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrGeometryProcessor*\2c\20GrProcessorSet&&\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\2c\20GrPipeline::InputFlags\2c\20GrUserStencilSettings\20const*\29 +1787:GrShape::setRRect\28SkRRect\20const&\29 +1788:GrShape::reset\28GrShape::Type\29 +1789:GrResourceProvider::findOrCreatePatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const&\29 +1790:GrResourceProvider::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\2c\20GrResourceProvider::ZeroInit\29 +1791:GrResourceProvider::assignUniqueKeyToResource\28skgpu::UniqueKey\20const&\2c\20GrGpuResource*\29 +1792:GrRenderTask::addDependency\28GrRenderTask*\29 +1793:GrRenderTask::GrRenderTask\28\29 +1794:GrRenderTarget::onRelease\28\29 +1795:GrQuadUtils::TessellationHelper::Vertices::asGrQuads\28GrQuad*\2c\20GrQuad::Type\2c\20GrQuad*\2c\20GrQuad::Type\29\20const +1796:GrProxyProvider::findOrCreateProxyByUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxy::UseAllocator\29 +1797:GrProxyProvider::assignUniqueKeyToProxy\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\29 +1798:GrPaint::setCoverageFragmentProcessor\28std::__2::unique_ptr>\29 +1799:GrMeshDrawOp::QuadHelper::QuadHelper\28GrMeshDrawTarget*\2c\20unsigned\20long\2c\20int\29 +1800:GrIsStrokeHairlineOrEquivalent\28GrStyle\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +1801:GrImageInfo::minRowBytes\28\29\20const +1802:GrGpuResource::CacheAccess::isUsableAsScratch\28\29\20const +1803:GrGeometryProcessor::ProgramImpl::setupUniformColor\28GrGLSLFPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20GrResourceHandle*\29 +1804:GrGLSLUniformHandler::addUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20int\2c\20char\20const**\29 +1805:GrGLSLShaderBuilder::emitFunction\28SkSLType\2c\20char\20const*\2c\20SkSpan\2c\20char\20const*\29 +1806:GrGLSLShaderBuilder::code\28\29 +1807:GrGLOpsRenderPass::bindVertexBuffer\28GrBuffer\20const*\2c\20int\29 +1808:GrGLGpu::unbindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\29 +1809:GrGLGpu::flushRenderTarget\28GrGLRenderTarget*\2c\20bool\29 +1810:GrGLGpu::bindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\2c\20GrGLGpu::TempFBOTarget\29 +1811:GrGLCompileAndAttachShader\28GrGLContext\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20bool\2c\20GrThreadSafePipelineBuilder::Stats*\2c\20skgpu::ShaderErrorHandler*\29 +1812:GrFragmentProcessor::visitTextureEffects\28std::__2::function\20const&\29\20const +1813:GrDirectContextPriv::flushSurface\28GrSurfaceProxy*\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +1814:GrBlendFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkBlendMode\2c\20bool\29 +1815:GrBackendFormat::operator=\28GrBackendFormat\20const&\29 +1816:GrAAConvexTessellator::addPt\28SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20GrAAConvexTessellator::CurveState\29 +1817:FT_Outline_Transform +1818:CFF::parsed_values_t::add_op\28unsigned\20int\2c\20CFF::byte_str_ref_t\20const&\2c\20CFF::op_str_t\20const&\29 +1819:CFF::dict_opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1820:CFF::cs_opset_t\2c\20cff2_extents_param_t\2c\20cff2_path_procs_extents_t>::process_post_move\28unsigned\20int\2c\20CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\29 +1821:CFF::cs_opset_t::process_post_move\28unsigned\20int\2c\20CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +1822:CFF::cs_interp_env_t>>::determine_hintmask_size\28\29 +1823:BlockIndexIterator::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Decrement\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block*\2c\20int\29>::begin\28\29\20const +1824:AlmostBetweenUlps\28double\2c\20double\2c\20double\29 +1825:ActiveEdgeList::SingleRotation\28ActiveEdge*\2c\20int\29 +1826:AAT::StateTable::EntryData>::get_entry\28int\2c\20unsigned\20int\29\20const +1827:AAT::StateTable::EntryData>::get_entry\28int\2c\20unsigned\20int\29\20const +1828:AAT::ContextualSubtable::driver_context_t::is_actionable\28AAT::StateTableDriver::EntryData>*\2c\20AAT::Entry::EntryData>\20const&\29 +1829:void\20std::__2::__stable_sort\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\2c\20long\29 +1830:void\20std::__2::__memberwise_forward_assign\5babi:v160004\5d>&>\2c\20std::__2::tuple>>\2c\20bool\2c\20std::__2::unique_ptr>\2c\200ul\2c\201ul>\28std::__2::tuple>&>&\2c\20std::__2::tuple>>&&\2c\20std::__2::__tuple_types>>\2c\20std::__2::__tuple_indices<0ul\2c\201ul>\29 +1831:void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1832:void\20extend_pts<\28SkPaint::Cap\291>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1833:void\20SkSafeUnref\28SkTextBlob*\29 +1834:void\20SkSafeUnref\28GrTextureProxy*\29 +1835:unsigned\20int*\20SkRecorder::copy\28unsigned\20int\20const*\2c\20unsigned\20long\29 +1836:ubidi_setPara_skia +1837:tt_cmap14_ensure +1838:tanf +1839:std::__2::vector>\2c\20std::__2::allocator>>>::~vector\5babi:v160004\5d\28\29 +1840:std::__2::vector>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +1841:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +1842:std::__2::unique_ptr>\20\5b\5d\2c\20std::__2::default_delete>\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +1843:std::__2::unique_ptr\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +1844:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1845:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1846:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1847:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1848:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrDrawOpAtlas*\29 +1849:std::__2::shared_ptr::operator=\5babi:v160004\5d\28std::__2::shared_ptr\20const&\29 +1850:std::__2::enable_if<__is_cpp17_forward_iterator>::value\2c\20void>::type\20std::__2::__split_buffer&>::__construct_at_end>\28std::__2::move_iterator\2c\20std::__2::move_iterator\29 +1851:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char8_t*\2c\20char8_t*\2c\20char8_t*&\29\20const +1852:std::__2::basic_string\2c\20std::__2::allocator>::clear\5babi:v160004\5d\28\29 +1853:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by_and_replace\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20char\20const*\29 +1854:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\29 +1855:std::__2::array\2c\204ul>::~array\28\29 +1856:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1857:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1858:std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>::__copy_constructor\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29 +1859:std::__2::__shared_count::__release_shared\5babi:v160004\5d\28\29 +1860:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20wchar_t&\29 +1861:std::__2::__num_get::__do_widen\28std::__2::ios_base&\2c\20wchar_t*\29\20const +1862:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20char&\29 +1863:std::__2::__itoa::__append1\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1864:std::__2::__function::__value_func::operator=\5babi:v160004\5d\28std::__2::__function::__value_func&&\29 +1865:std::__2::__function::__value_func::operator\28\29\5babi:v160004\5d\28SkIRect\20const&\29\20const +1866:sqrtf +1867:snprintf +1868:skvx::Vec<4\2c\20unsigned\20int>&\20skvx::operator-=<4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +1869:skvx::Vec<4\2c\20unsigned\20int>&\20skvx::operator+=<4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +1870:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator><4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1871:skvx::Vec<4\2c\20float>\20skvx::operator+<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29\20\28.5716\29 +1872:skvx::Vec<4\2c\20float>\20skvx::operator+<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20\28.630\29 +1873:skvx::Vec<4\2c\20float>\20skvx::max<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20\28.7527\29 +1874:skvx::Vec<4\2c\20float>\20skvx::max<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1875:sktext::gpu::VertexFiller::vertexStride\28SkMatrix\20const&\29\20const +1876:sktext::gpu::SubRunList::append\28std::__2::unique_ptr\29 +1877:sktext::gpu::SubRun::~SubRun\28\29 +1878:sktext::gpu::GlyphVector::~GlyphVector\28\29 +1879:skia_private::THashTable::AdaptedTraits>::findOrNull\28skgpu::UniqueKey\20const&\29\20const +1880:skia_private::THashSet::contains\28SkSL::Variable\20const*\20const&\29\20const +1881:skia_private::TArray::reset\28int\29 +1882:skia_private::TArray::push_back_raw\28int\29 +1883:skia_private::TArray::push_back\28\29 +1884:skia_private::TArray::push_back\28SkSL::Variable*&&\29 +1885:skia_private::TArray::~TArray\28\29 +1886:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +1887:skia_private::AutoSTArray<8\2c\20unsigned\20int>::reset\28int\29 +1888:skia_private::AutoSTArray<24\2c\20unsigned\20int>::~AutoSTArray\28\29 +1889:skia_png_reciprocal2 +1890:skia::textlayout::Run::~Run\28\29 +1891:skia::textlayout::Run::posX\28unsigned\20long\29\20const +1892:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle\20const&\29 +1893:skia::textlayout::InternalLineMetrics::runTop\28skia::textlayout::Run\20const*\2c\20skia::textlayout::LineMetricStyle\29\20const +1894:skia::textlayout::InternalLineMetrics::height\28\29\20const +1895:skia::textlayout::InternalLineMetrics::add\28skia::textlayout::Run*\29 +1896:skia::textlayout::FontCollection::findTypefaces\28std::__2::vector>\20const&\2c\20SkFontStyle\2c\20std::__2::optional\20const&\29 +1897:skgpu::ganesh::TextureOp::BatchSizeLimiter::createOp\28GrTextureSetEntry*\2c\20int\2c\20GrAAType\29 +1898:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1899:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1900:skgpu::ganesh::SurfaceDrawContext::drawShapeUsingPathRenderer\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\2c\20bool\29 +1901:skgpu::ganesh::SurfaceDrawContext::drawRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const*\29 +1902:skgpu::ganesh::SurfaceDrawContext::drawRRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20GrStyle\20const&\29 +1903:skgpu::ganesh::SurfaceDrawContext::drawFilledQuad\28GrClip\20const*\2c\20GrPaint&&\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\29 +1904:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29::$_0::~$_0\28\29 +1905:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29 +1906:skgpu::ganesh::SurfaceContext::PixelTransferResult::PixelTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +1907:skgpu::ganesh::SoftwarePathRenderer::DrawNonAARect\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrPaint&&\2c\20GrUserStencilSettings\20const&\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const&\29 +1908:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::vertexSize\28\29\20const +1909:skgpu::ganesh::OpsTask::OpChain::List::List\28skgpu::ganesh::OpsTask::OpChain::List&&\29 +1910:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrSurfaceProxyView\20const&\29\20const +1911:skgpu::ganesh::Device::targetProxy\28\29 +1912:skgpu::ganesh::ClipStack::getConservativeBounds\28\29\20const +1913:skgpu::UniqueKeyInvalidatedMessage::UniqueKeyInvalidatedMessage\28skgpu::UniqueKeyInvalidatedMessage\20const&\29 +1914:skgpu::UniqueKey::operator=\28skgpu::UniqueKey\20const&\29 +1915:skgpu::TAsyncReadResult::addTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult\20const&\2c\20SkISize\2c\20unsigned\20long\2c\20skgpu::TClientMappedBufferManager*\29 +1916:skgpu::Swizzle::asString\28\29\20const +1917:skgpu::GetApproxSize\28SkISize\29 +1918:sk_srgb_linear_singleton\28\29 +1919:sk_sp::reset\28GrGpuBuffer*\29 +1920:sk_sp\20sk_make_sp\28\29 +1921:sfnt_get_name_id +1922:set_glyph\28hb_glyph_info_t&\2c\20hb_font_t*\29 +1923:resource_cache_mutex\28\29 +1924:ps_parser_to_token +1925:precisely_between\28double\2c\20double\2c\20double\29 +1926:powf +1927:next_char\28hb_buffer_t*\2c\20unsigned\20int\29 +1928:memchr +1929:log2f +1930:log +1931:less_or_equal_ulps\28float\2c\20float\2c\20int\29 +1932:is_consonant\28hb_glyph_info_t\20const&\29 +1933:int\20const*\20std::__2::find\5babi:v160004\5d\28int\20const*\2c\20int\20const*\2c\20int\20const&\29 +1934:hb_vector_t::push\28\29 +1935:hb_vector_t::resize\28int\2c\20bool\2c\20bool\29 +1936:hb_unicode_funcs_destroy +1937:hb_serialize_context_t::pop_discard\28\29 +1938:hb_paint_funcs_t::pop_clip\28void*\29 +1939:hb_ot_map_t::feature_map_t\20const*\20hb_vector_t::bsearch\28unsigned\20int\20const&\2c\20hb_ot_map_t::feature_map_t\20const*\29\20const +1940:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::get_stored\28\29\20const +1941:hb_indic_would_substitute_feature_t::init\28hb_ot_map_t\20const*\2c\20unsigned\20int\2c\20bool\29 +1942:hb_hashmap_t::del\28unsigned\20int\20const&\29 +1943:hb_font_t::get_glyph_v_advance\28unsigned\20int\29 +1944:hb_font_t::get_glyph_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\29 +1945:hb_buffer_t::_set_glyph_flags\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +1946:hb_buffer_create_similar +1947:gray_set_cell +1948:getenv +1949:ft_service_list_lookup +1950:fseek +1951:fillcheckrect\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\29 +1952:fflush +1953:fclose +1954:expm1 +1955:expf +1956:crc_word +1957:clean_paint_for_drawImage\28SkPaint\20const*\29 +1958:classify\28skcms_TransferFunction\20const&\2c\20TF_PQish*\2c\20TF_HLGish*\29 +1959:choose_bmp_texture_colortype\28GrCaps\20const*\2c\20SkBitmap\20const&\29 +1960:char*\20sktext::gpu::BagOfBytes::allocateBytesFor\28int\29 +1961:cff_parse_fixed +1962:cf2_interpT2CharString +1963:cf2_hintmap_insertHint +1964:cf2_hintmap_build +1965:cf2_glyphpath_moveTo +1966:cf2_glyphpath_lineTo +1967:byn$mgfn-shared$std::__2::__split_buffer&>::~__split_buffer\28\29 +1968:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +1969:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +1970:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +1971:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +1972:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +1973:byn$mgfn-shared$skgpu::ganesh::PathStencilCoverOp::ClassID\28\29 +1974:byn$mgfn-shared$format_alignment\28SkMask::Format\29 +1975:byn$mgfn-shared$SkFibBlockSizes<4294967295u>::SkFibBlockSizes\28unsigned\20int\2c\20unsigned\20int\29::'lambda'\28\29::operator\28\29\28\29\20const +1976:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::vector>\20const&\2c\20std::__2::vector>\20const&\29 +1977:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1978:blit_saved_trapezoid\28SkAnalyticEdge*\2c\20int\2c\20int\2c\20int\2c\20AdditiveBlitter*\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20int\2c\20int\29 +1979:append_multitexture_lookup\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20GrGLSLVarying\20const&\2c\20char\20const*\2c\20char\20const*\29 +1980:afm_tokenize +1981:af_glyph_hints_reload +1982:a_dec +1983:_hb_glyph_info_set_unicode_props\28hb_glyph_info_t*\2c\20hb_buffer_t*\29 +1984:_hb_draw_funcs_set_middle\28hb_draw_funcs_t*\2c\20void*\2c\20void\20\28*\29\28void*\29\29 +1985:__syscall_ret +1986:__sin +1987:__cos +1988:\28anonymous\20namespace\29::valid_unit_divide\28float\2c\20float\2c\20float*\29 +1989:\28anonymous\20namespace\29::draw_stencil_rect\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrHardClip\20const&\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +1990:\28anonymous\20namespace\29::can_reorder\28SkRect\20const&\2c\20SkRect\20const&\29 +1991:\28anonymous\20namespace\29::SkBlurImageFilter::~SkBlurImageFilter\28\29 +1992:\28anonymous\20namespace\29::FillRectOpImpl::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +1993:Skwasm::samplingOptionsForQuality\28Skwasm::FilterQuality\29 +1994:Skwasm::createRRect\28float\20const*\29 +1995:SkWriter32::writeSampling\28SkSamplingOptions\20const&\29 +1996:SkWriter32::writePad\28void\20const*\2c\20unsigned\20long\29 +1997:SkTextBlobRunIterator::next\28\29 +1998:SkTextBlobBuilder::make\28\29 +1999:SkTSect::addOne\28\29 +2000:SkTMultiMap::remove\28skgpu::ScratchKey\20const&\2c\20GrGpuResource\20const*\29 +2001:SkTLazy::set\28SkPath\20const&\29 +2002:SkTDArray::append\28\29 +2003:SkStrokeRec::isFillStyle\28\29\20const +2004:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20float\29 +2005:SkString::appendU32\28unsigned\20int\29 +2006:SkStrike::digestFor\28skglyph::ActionType\2c\20SkPackedGlyphID\29 +2007:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +2008:SkShaders::MatrixRec::applyForFragmentProcessor\28SkMatrix\20const&\29\20const +2009:SkShaders::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +2010:SkSemaphore::signal\28int\29 +2011:SkScopeExit::~SkScopeExit\28\29 +2012:SkScan::FillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\29 +2013:SkSL::is_scalar_op_matrix\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +2014:SkSL::evaluate_n_way_intrinsic\28SkSL::Context\20const&\2c\20SkSL::Expression\20const*\2c\20SkSL::Expression\20const*\2c\20SkSL::Expression\20const*\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +2015:SkSL::Variable::initialValue\28\29\20const +2016:SkSL::Type::canCoerceTo\28SkSL::Type\20const&\2c\20bool\29\20const +2017:SkSL::SymbolTable::takeOwnershipOfString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +2018:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Context\20const&\2c\20SkSL::Symbol*\29 +2019:SkSL::RP::pack_nybbles\28SkSpan\29 +2020:SkSL::RP::Program::appendCopySlotsUnmasked\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +2021:SkSL::RP::Generator::foldComparisonOp\28SkSL::Operator\2c\20int\29 +2022:SkSL::RP::Generator::createStack\28\29 +2023:SkSL::RP::Builder::trace_var\28int\2c\20SkSL::RP::SlotRange\29 +2024:SkSL::RP::Builder::jump\28int\29 +2025:SkSL::RP::Builder::dot_floats\28int\29 +2026:SkSL::RP::Builder::branch_if_no_lanes_active\28int\29 +2027:SkSL::RP::AutoStack::~AutoStack\28\29 +2028:SkSL::RP::AutoStack::pushClone\28int\29 +2029:SkSL::Position::rangeThrough\28SkSL::Position\29\20const +2030:SkSL::PipelineStage::PipelineStageCodeGenerator::AutoOutputBuffer::~AutoOutputBuffer\28\29 +2031:SkSL::Parser::type\28SkSL::Modifiers*\29 +2032:SkSL::Parser::parseArrayDimensions\28SkSL::Position\2c\20SkSL::Type\20const**\29 +2033:SkSL::Parser::modifiers\28\29 +2034:SkSL::Parser::assignmentExpression\28\29 +2035:SkSL::Parser::arraySize\28long\20long*\29 +2036:SkSL::ModifierFlags::paddedDescription\28\29\20const +2037:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29::$_1::operator\28\29\28SkSL::ExpressionArray\20const&\29\20const +2038:SkSL::IRHelpers::Swizzle\28std::__2::unique_ptr>\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29\20const +2039:SkSL::GLSLCodeGenerator::writeTypePrecision\28SkSL::Type\20const&\29 +2040:SkSL::FunctionDeclaration::getMainCoordsParameter\28\29\20const +2041:SkSL::ExpressionArray::clone\28\29\20const +2042:SkSL::ConstantFolder::GetConstantValue\28SkSL::Expression\20const&\2c\20double*\29 +2043:SkSL::ConstantFolder::GetConstantInt\28SkSL::Expression\20const&\2c\20long\20long*\29 +2044:SkSL::Compiler::~Compiler\28\29 +2045:SkSL::Compiler::errorText\28bool\29 +2046:SkSL::Compiler::Compiler\28\29 +2047:SkSL::Analysis::IsTrivialExpression\28SkSL::Expression\20const&\29 +2048:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpace\20const*\29 +2049:SkRegion::setPath\28SkPath\20const&\2c\20SkRegion\20const&\29 +2050:SkRegion::Iterator::Iterator\28SkRegion\20const&\29 +2051:SkReduceOrder::Quad\28SkPoint\20const*\2c\20SkPoint*\29 +2052:SkRect::sort\28\29 +2053:SkRect::joinPossiblyEmptyRect\28SkRect\20const&\29 +2054:SkRasterPipelineBlitter::appendClipScale\28SkRasterPipeline*\29\20const +2055:SkRasterPipelineBlitter::appendClipLerp\28SkRasterPipeline*\29\20const +2056:SkRRect::setRectRadii\28SkRect\20const&\2c\20SkPoint\20const*\29 +2057:SkRGBA4f<\28SkAlphaType\292>::toBytes_RGBA\28\29\20const +2058:SkRGBA4f<\28SkAlphaType\292>::fitsInBytes\28\29\20const +2059:SkPointPriv::EqualsWithinTolerance\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\29 +2060:SkPoint*\20SkRecorder::copy\28SkPoint\20const*\2c\20unsigned\20long\29 +2061:SkPoint*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29 +2062:SkPixmap::reset\28\29 +2063:SkPixmap::computeByteSize\28\29\20const +2064:SkPictureRecord::addImage\28SkImage\20const*\29 +2065:SkPathStroker::addDegenerateLine\28SkQuadConstruct\20const*\29 +2066:SkPathRef::SkPathRef\28int\2c\20int\29 +2067:SkPathPriv::ComputeFirstDirection\28SkPath\20const&\29 +2068:SkPath::isLine\28SkPoint*\29\20const +2069:SkPaintPriv::ComputeLuminanceColor\28SkPaint\20const&\29 +2070:SkPaint::operator=\28SkPaint\20const&\29 +2071:SkPaint::nothingToDraw\28\29\20const +2072:SkOpSpan::release\28SkOpPtT\20const*\29 +2073:SkOpContourBuilder::addCurve\28SkPath::Verb\2c\20SkPoint\20const*\2c\20float\29 +2074:SkMipmap::Build\28SkPixmap\20const&\2c\20SkDiscardableMemory*\20\28*\29\28unsigned\20long\29\2c\20bool\29 +2075:SkMeshSpecification::Varying::Varying\28SkMeshSpecification::Varying&&\29 +2076:SkMatrix::mapVectors\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +2077:SkMatrix::mapOrigin\28\29\20const +2078:SkMaskFilter::MakeBlur\28SkBlurStyle\2c\20float\2c\20bool\29 +2079:SkM44::SkM44\28SkMatrix\20const&\29 +2080:SkJSONWriter::endArray\28\29 +2081:SkJSONWriter::beginValue\28bool\29 +2082:SkJSONWriter::beginArray\28char\20const*\2c\20bool\29 +2083:SkIntersections::insertNear\28double\2c\20double\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29 +2084:SkImageShader::Make\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2085:SkIRect::inset\28int\2c\20int\29 +2086:SkGradientBaseShader::flatten\28SkWriteBuffer&\29\20const +2087:SkFont::getMetrics\28SkFontMetrics*\29\20const +2088:SkFont::SkFont\28\29 +2089:SkFindQuadMaxCurvature\28SkPoint\20const*\29 +2090:SkFDot6Div\28int\2c\20int\29 +2091:SkEvalQuadAt\28SkPoint\20const*\2c\20float\29 +2092:SkEvalCubicAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29 +2093:SkEdgeClipper::appendVLine\28float\2c\20float\2c\20float\2c\20bool\29 +2094:SkDrawShadowMetrics::GetSpotParams\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float*\2c\20float*\2c\20SkPoint*\29 +2095:SkDraw::SkDraw\28\29 +2096:SkDevice::setGlobalCTM\28SkM44\20const&\29 +2097:SkDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +2098:SkDLine::exactPoint\28SkDPoint\20const&\29\20const +2099:SkColorSpace::MakeSRGBLinear\28\29 +2100:SkChopCubicAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +2101:SkCanvas::getLocalClipBounds\28\29\20const +2102:SkCanvas::drawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +2103:SkBulkGlyphMetrics::glyphs\28SkSpan\29 +2104:SkBlockAllocator::releaseBlock\28SkBlockAllocator::Block*\29 +2105:SkBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +2106:SkBlendMode_AppendStages\28SkBlendMode\2c\20SkRasterPipeline*\29 +2107:SkBitmap::tryAllocPixels\28SkBitmap::Allocator*\29 +2108:SkBitmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2109:SkBitmap::operator=\28SkBitmap\20const&\29 +2110:SkBitmap::getGenerationID\28\29\20const +2111:SkAutoPixmapStorage::SkAutoPixmapStorage\28\29 +2112:SkAAClipBlitter::~SkAAClipBlitter\28\29 +2113:SkAAClip::setRegion\28SkRegion\20const&\29::$_0::operator\28\29\28unsigned\20char\2c\20int\29\20const +2114:SkAAClip::findX\28unsigned\20char\20const*\2c\20int\2c\20int*\29\20const +2115:SkAAClip::findRow\28int\2c\20int*\29\20const +2116:SkAAClip::Builder::Blitter::~Blitter\28\29 +2117:RoughlyEqualUlps\28float\2c\20float\29 +2118:R +2119:PS_Conv_ToInt +2120:OT::hmtxvmtx::accelerator_t::get_leading_bearing_without_var_unscaled\28unsigned\20int\2c\20int*\29\20const +2121:OT::hb_ot_apply_context_t::replace_glyph\28unsigned\20int\29 +2122:OT::fvar::get_axes\28\29\20const +2123:OT::Layout::GPOS_impl::ValueFormat::sanitize_values_stride_unsafe\28hb_sanitize_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +2124:OT::DeltaSetIndexMap::map\28unsigned\20int\29\20const +2125:Normalize +2126:Ins_Goto_CodeRange +2127:GrTriangulator::setBottom\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2128:GrTriangulator::VertexList::append\28GrTriangulator::VertexList\20const&\29 +2129:GrTriangulator::Line::normalize\28\29 +2130:GrTriangulator::Edge::disconnect\28\29 +2131:GrThreadSafeCache::find\28skgpu::UniqueKey\20const&\29 +2132:GrThreadSafeCache::add\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2133:GrTextureEffect::texture\28\29\20const +2134:GrTextureEffect::GrTextureEffect\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20GrTextureEffect::Sampling\20const&\29 +2135:GrSurfaceProxyView::Copy\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\29 +2136:GrSurfaceProxyPriv::doLazyInstantiation\28GrResourceProvider*\29 +2137:GrSurface::~GrSurface\28\29 +2138:GrStyledShape::simplify\28\29 +2139:GrStyle::applies\28\29\20const +2140:GrSimpleMeshDrawOpHelperWithStencil::fixedFunctionFlags\28\29\20const +2141:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20GrProcessorAnalysisColor*\29 +2142:GrSimpleMeshDrawOpHelper::detachProcessorSet\28\29 +2143:GrSimpleMeshDrawOpHelper::CreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrPipeline\20const*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrGeometryProcessor*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\2c\20GrUserStencilSettings\20const*\29 +2144:GrSimpleMesh::setIndexedPatterned\28sk_sp\2c\20int\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29 +2145:GrShape::setRect\28SkRect\20const&\29 +2146:GrShape::GrShape\28GrShape\20const&\29 +2147:GrShaderVar::addModifier\28char\20const*\29 +2148:GrSWMaskHelper::~GrSWMaskHelper\28\29 +2149:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20void\20const*\2c\20skgpu::UniqueKey\20const&\29 +2150:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20skgpu::UniqueKey\20const&\2c\20void\20\28*\29\28skgpu::VertexWriter\2c\20unsigned\20long\29\29 +2151:GrResourceCache::purgeAsNeeded\28\29 +2152:GrRenderTask::addDependency\28GrDrawingManager*\2c\20GrSurfaceProxy*\2c\20skgpu::Mipmapped\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +2153:GrRecordingContextPriv::makeSFC\28GrImageInfo\2c\20std::__2::basic_string_view>\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +2154:GrQuad::asRect\28SkRect*\29\20const +2155:GrProcessorSet::operator!=\28GrProcessorSet\20const&\29\20const +2156:GrPixmapBase::GrPixmapBase\28GrImageInfo\2c\20void\20const*\2c\20unsigned\20long\29 +2157:GrPipeline::getXferProcessor\28\29\20const +2158:GrPathUtils::generateQuadraticPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +2159:GrPathUtils::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +2160:GrNativeRect::asSkIRect\28\29\20const +2161:GrGeometryProcessor::ProgramImpl::~ProgramImpl\28\29 +2162:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +2163:GrGLSLShaderBuilder::defineConstant\28char\20const*\2c\20float\29 +2164:GrGLSLShaderBuilder::addFeature\28unsigned\20int\2c\20char\20const*\29 +2165:GrGLSLProgramBuilder::nameVariable\28char\2c\20char\20const*\2c\20bool\29 +2166:GrGLSLColorSpaceXformHelper::setData\28GrGLSLProgramDataManager\20const&\2c\20GrColorSpaceXform\20const*\29 +2167:GrGLSLColorSpaceXformHelper::emitCode\28GrGLSLUniformHandler*\2c\20GrColorSpaceXform\20const*\2c\20unsigned\20int\29 +2168:GrGLGpu::flushColorWrite\28bool\29 +2169:GrGLGpu::bindTexture\28int\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20GrGLTexture*\29 +2170:GrFragmentProcessor::visitWithImpls\28std::__2::function\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\20const +2171:GrFragmentProcessor::visitProxies\28std::__2::function\20const&\29\20const +2172:GrFragmentProcessor::ColorMatrix\28std::__2::unique_ptr>\2c\20float\20const*\2c\20bool\2c\20bool\2c\20bool\29 +2173:GrDstProxyView::operator=\28GrDstProxyView\20const&\29 +2174:GrDrawingManager::closeActiveOpsTask\28\29 +2175:GrDrawingManager::appendTask\28sk_sp\29 +2176:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20sk_sp\29 +2177:GrColorSpaceXform::XformKey\28GrColorSpaceXform\20const*\29 +2178:GrColorSpaceXform::Make\28GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +2179:GrColorInfo::GrColorInfo\28GrColorInfo\20const&\29 +2180:GrCaps::isFormatCompressed\28GrBackendFormat\20const&\29\20const +2181:GrBufferAllocPool::~GrBufferAllocPool\28\29 +2182:GrBufferAllocPool::putBack\28unsigned\20long\29 +2183:GrBlurUtils::convolve_gaussian\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20SkIRect\2c\20SkIRect\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkBackingFit\29::$_1::operator\28\29\28SkIRect\29\20const +2184:GrAAConvexTessellator::lineTo\28SkPoint\20const&\2c\20GrAAConvexTessellator::CurveState\29 +2185:FwDCubicEvaluator::restart\28int\29 +2186:FT_Vector_Transform +2187:FT_Stream_Read +2188:FT_Select_Charmap +2189:FT_Lookup_Renderer +2190:FT_Get_Module_Interface +2191:CFF::opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +2192:CFF::arg_stack_t::push_int\28int\29 +2193:CFF::CFFIndex>::offset_at\28unsigned\20int\29\20const +2194:BlockIndexIterator::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Decrement\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block*\2c\20int\29>::Item::operator++\28\29 +2195:ActiveEdge::intersect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29\20const +2196:AAT::hb_aat_apply_context_t::~hb_aat_apply_context_t\28\29 +2197:AAT::hb_aat_apply_context_t::hb_aat_apply_context_t\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\2c\20hb_blob_t*\29 +2198:void\20std::__2::reverse\5babi:v160004\5d\28unsigned\20int*\2c\20unsigned\20int*\29 +2199:void\20std::__2::__variant_detail::__assignment>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29 +2200:void\20skgpu::ganesh::SurfaceFillContext::clear<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2201:void\20hb_serialize_context_t::add_link\2c\20true>>\28OT::OffsetTo\2c\20true>&\2c\20unsigned\20int\2c\20hb_serialize_context_t::whence_t\2c\20unsigned\20int\29 +2202:void\20SkSafeUnref\28GrArenas*\29 +2203:void\20SkSL::RP::unpack_nybbles_to_offsets\28unsigned\20int\2c\20SkSpan\29 +2204:unlock +2205:ubidi_getCustomizedClass_skia +2206:tt_set_mm_blend +2207:tt_face_get_ps_name +2208:trinkle +2209:t1_builder_check_points +2210:subdivide\28SkConic\20const&\2c\20SkPoint*\2c\20int\29 +2211:std::__2::vector>\2c\20std::__2::allocator>>>::push_back\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +2212:std::__2::vector>\2c\20std::__2::allocator>>>::__swap_out_circular_buffer\28std::__2::__split_buffer>\2c\20std::__2::allocator>>&>&\29 +2213:std::__2::vector>\2c\20std::__2::allocator>>>::__clear\5babi:v160004\5d\28\29 +2214:std::__2::vector>\2c\20std::__2::allocator>>>::~vector\5babi:v160004\5d\28\29 +2215:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +2216:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28sk_sp\20const&\29 +2217:std::__2::vector>::push_back\5babi:v160004\5d\28float&&\29 +2218:std::__2::vector>::push_back\5babi:v160004\5d\28char\20const*&&\29 +2219:std::__2::vector>::__move_assign\28std::__2::vector>&\2c\20std::__2::integral_constant\29 +2220:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +2221:std::__2::unordered_map\2c\20std::__2::equal_to\2c\20std::__2::allocator>>::operator\5b\5d\28GrTriangulator::Vertex*\20const&\29 +2222:std::__2::unique_ptr\2c\20std::__2::allocator>\2c\20std::__2::default_delete\2c\20std::__2::allocator>>>::~unique_ptr\5babi:v160004\5d\28\29 +2223:std::__2::unique_ptr::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2224:std::__2::unique_ptr::Traits>::Slot\20\5b\5d\2c\20std::__2::default_delete::Traits>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2225:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skgpu::ganesh::SurfaceDrawContext*\29 +2226:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2227:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skgpu::ganesh::PathRendererChain*\29 +2228:std::__2::unique_ptr>::reset\5babi:v160004\5d\28hb_face_t*\29 +2229:std::__2::unique_ptr::release\5babi:v160004\5d\28\29 +2230:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2231:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2232:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2233:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2234:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2235:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2236:std::__2::mutex::unlock\28\29 +2237:std::__2::mutex::lock\28\29 +2238:std::__2::moneypunct::do_decimal_point\28\29\20const +2239:std::__2::moneypunct::pos_format\5babi:v160004\5d\28\29\20const +2240:std::__2::moneypunct::do_decimal_point\28\29\20const +2241:std::__2::locale::locale\28std::__2::locale\20const&\29 +2242:std::__2::locale::classic\28\29 +2243:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28std::__2::basic_istream>&\29 +2244:std::__2::function::operator\28\29\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +2245:std::__2::function::operator\28\29\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29\20const +2246:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28unsigned\20int&\2c\20unsigned\20int&\29 +2247:std::__2::enable_if<_CheckArrayPointerConversion::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::reset\5babi:v160004\5d::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot*>\28skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot*\29 +2248:std::__2::enable_if<_CheckArrayPointerConversion>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::reset\5babi:v160004\5d>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot*>\28skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot*\29 +2249:std::__2::deque>::pop_front\28\29 +2250:std::__2::deque>::begin\5babi:v160004\5d\28\29 +2251:std::__2::default_delete::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::_EnableIfConvertible::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot>::type\20std::__2::default_delete::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot>\28skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot*\29\20const +2252:std::__2::ctype::toupper\5babi:v160004\5d\28char\29\20const +2253:std::__2::chrono::duration>::duration\5babi:v160004\5d\28long\20long\20const&\2c\20std::__2::enable_if::value\20&&\20\28std::__2::integral_constant::value\20||\20!treat_as_floating_point::value\29\2c\20void>::type*\29 +2254:std::__2::basic_string_view>::find\5babi:v160004\5d\28char\2c\20unsigned\20long\29\20const +2255:std::__2::basic_string\2c\20std::__2::allocator>\20const*\20std::__2::__scan_keyword\5babi:v160004\5d>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype\20const&\2c\20unsigned\20int&\2c\20bool\29 +2256:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +2257:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +2258:std::__2::basic_string\2c\20std::__2::allocator>\20const*\20std::__2::__scan_keyword\5babi:v160004\5d>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype>\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::ctype\20const&\2c\20unsigned\20int&\2c\20bool\29 +2259:std::__2::basic_string\2c\20std::__2::allocator>::operator=\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +2260:std::__2::basic_string\2c\20std::__2::allocator>::__get_short_size\5babi:v160004\5d\28\29\20const +2261:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +2262:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\2c\20unsigned\20long\29 +2263:std::__2::basic_streambuf>::__pbump\5babi:v160004\5d\28long\29 +2264:std::__2::basic_ostream>::sentry::operator\20bool\5babi:v160004\5d\28\29\20const +2265:std::__2::basic_iostream>::~basic_iostream\28\29 +2266:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28\29 +2267:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::OperatorKind&&\2c\20std::__2::unique_ptr>&&\29 +2268:std::__2::__tuple_impl\2c\20sk_sp\2c\20sk_sp>::~__tuple_impl\28\29 +2269:std::__2::__tuple_impl\2c\20GrFragmentProcessor\20const*\2c\20GrGeometryProcessor::ProgramImpl::TransformInfo>::__tuple_impl\28std::__2::__tuple_impl\2c\20GrFragmentProcessor\20const*\2c\20GrGeometryProcessor::ProgramImpl::TransformInfo>&&\29 +2270:std::__2::__tree\2c\20std::__2::__map_value_compare\2c\20std::__2::less\2c\20true>\2c\20std::__2::allocator>>::destroy\28std::__2::__tree_node\2c\20void*>*\29 +2271:std::__2::__throw_bad_variant_access\5babi:v160004\5d\28\29 +2272:std::__2::__split_buffer>\2c\20std::__2::allocator>>&>::~__split_buffer\28\29 +2273:std::__2::__split_buffer>::push_front\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +2274:std::__2::__split_buffer>::push_back\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\20const&\29 +2275:std::__2::__split_buffer\2c\20std::__2::allocator>&>::~__split_buffer\28\29 +2276:std::__2::__split_buffer\2c\20std::__2::allocator>&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator>&\29 +2277:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +2278:std::__2::__shared_count::__add_shared\5babi:v160004\5d\28\29 +2279:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +2280:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +2281:std::__2::__num_put_base::__format_int\28char*\2c\20char\20const*\2c\20bool\2c\20unsigned\20int\29 +2282:std::__2::__num_put_base::__format_float\28char*\2c\20char\20const*\2c\20unsigned\20int\29 +2283:std::__2::__itoa::__append8\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2284:skvx::Vec<8\2c\20unsigned\20short>\20skvx::operator+<8\2c\20unsigned\20short\2c\20unsigned\20short\2c\20void>\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20unsigned\20short\29 +2285:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator>=<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +2286:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20double\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20double\29 +2287:sktext::gpu::VertexFiller::deviceRectAndCheckTransform\28SkMatrix\20const&\29\20const +2288:sktext::gpu::GlyphVector::packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29 +2289:sktext::SkStrikePromise::strike\28\29 +2290:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +2291:skif::RoundOut\28SkRect\29 +2292:skif::Mapping::applyOrigin\28skif::LayerSpace\20const&\29 +2293:skif::LayerSpace\20skif::Mapping::paramToLayer\28skif::ParameterSpace\20const&\29\20const +2294:skif::LayerSpace::mapRect\28skif::LayerSpace\20const&\29\20const +2295:skif::FilterResult::FilterResult\28sk_sp\2c\20skif::LayerSpace\20const&\29 +2296:skif::FilterResult::Builder::add\28skif::FilterResult\20const&\2c\20std::__2::optional>\2c\20SkEnumBitMask\2c\20SkSamplingOptions\20const&\29 +2297:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +2298:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +2299:skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair&&\29 +2300:skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Hash\28std::__2::basic_string_view>\20const&\29 +2301:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +2302:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::FunctionDeclaration\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair&&\29 +2303:skia_private::THashTable::Traits>::uncheckedSet\28long\20long&&\29 +2304:skia_private::THashTable::Traits>::uncheckedSet\28int&&\29 +2305:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::resize\28int\29 +2306:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::find\28unsigned\20int\20const&\29\20const +2307:skia_private::THashMap::find\28unsigned\20int\20const&\29\20const +2308:skia_private::THashMap::operator\5b\5d\28SkSL::Variable\20const*\20const&\29 +2309:skia_private::TArray::push_back_raw\28int\29 +2310:skia_private::TArray>\2c\20true>::destroyAll\28\29 +2311:skia_private::TArray>\2c\20true>::push_back\28std::__2::unique_ptr>&&\29 +2312:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2313:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +2314:skia_private::TArray::~TArray\28\29 +2315:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2316:skia_private::TArray::~TArray\28\29 +2317:skia_private::TArray\2c\20true>::~TArray\28\29 +2318:skia_private::TArray<\28anonymous\20namespace\29::MeshOp::Mesh\2c\20true>::preallocateNewData\28int\2c\20double\29 +2319:skia_private::TArray<\28anonymous\20namespace\29::MeshOp::Mesh\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +2320:skia_private::TArray::copy\28SkUnicode::CodeUnitFlags\20const*\29 +2321:skia_private::TArray::clear\28\29 +2322:skia_private::TArray::operator=\28skia_private::TArray&&\29 +2323:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2324:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2325:skia_private::TArray::push_back\28GrRenderTask*&&\29 +2326:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +2327:skia_private::STArray<4\2c\20signed\20char\2c\20true>::STArray\28skia_private::STArray<4\2c\20signed\20char\2c\20true>&&\29 +2328:skia_private::AutoSTMalloc<4ul\2c\20SkFontArguments::Palette::Override\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +2329:skia_private::AutoSTArray<24\2c\20unsigned\20int>::reset\28int\29 +2330:skia_png_zstream_error +2331:skia_png_read_data +2332:skia_png_get_int_32 +2333:skia_png_chunk_unknown_handling +2334:skia_png_calloc +2335:skia_png_benign_error +2336:skia::textlayout::TextWrapper::getClustersTrimmedWidth\28\29 +2337:skia::textlayout::TextWrapper::TextStretch::startFrom\28skia::textlayout::Cluster*\2c\20unsigned\20long\29 +2338:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::Cluster*\29 +2339:skia::textlayout::TextLine::measureTextInsideOneRun\28skia::textlayout::SkRange\2c\20skia::textlayout::Run\20const*\2c\20float\2c\20float\2c\20bool\2c\20skia::textlayout::TextLine::TextAdjustment\29\20const +2340:skia::textlayout::TextLine::isLastLine\28\29\20const +2341:skia::textlayout::Run::calculateHeight\28skia::textlayout::LineMetricStyle\2c\20skia::textlayout::LineMetricStyle\29\20const +2342:skia::textlayout::Run::Run\28skia::textlayout::Run\20const&\29 +2343:skia::textlayout::ParagraphImpl::getLineNumberAt\28unsigned\20long\29\20const +2344:skia::textlayout::ParagraphImpl::findPreviousGraphemeBoundary\28unsigned\20long\29\20const +2345:skia::textlayout::ParagraphCacheKey::~ParagraphCacheKey\28\29 +2346:skia::textlayout::ParagraphBuilderImpl::startStyledBlock\28\29 +2347:skia::textlayout::OneLineShaper::RunBlock&\20std::__2::vector>::emplace_back\28skia::textlayout::OneLineShaper::RunBlock&\29 +2348:skia::textlayout::OneLineShaper::FontKey::FontKey\28skia::textlayout::OneLineShaper::FontKey&&\29 +2349:skia::textlayout::InternalLineMetrics::updateLineMetrics\28skia::textlayout::InternalLineMetrics&\29 +2350:skia::textlayout::FontCollection::getFontManagerOrder\28\29\20const +2351:skia::textlayout::Decorations::calculateGaps\28skia::textlayout::TextLine::ClipContext\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\29 +2352:skia::textlayout::Cluster::runOrNull\28\29\20const +2353:skgpu::tess::PatchStride\28skgpu::tess::PatchAttribs\29 +2354:skgpu::tess::MiddleOutPolygonTriangulator::MiddleOutPolygonTriangulator\28int\2c\20SkPoint\29 +2355:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::fixedFunctionFlags\28\29\20const +2356:skgpu::ganesh::SurfaceFillContext::~SurfaceFillContext\28\29 +2357:skgpu::ganesh::SurfaceFillContext::replaceOpsTask\28\29 +2358:skgpu::ganesh::SurfaceDrawContext::fillPixelsWithLocalMatrix\28GrClip\20const*\2c\20GrPaint&&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\29 +2359:skgpu::ganesh::SurfaceDrawContext::drawShape\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\29 +2360:skgpu::ganesh::SurfaceDrawContext::drawPaint\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\29 +2361:skgpu::ganesh::SurfaceDrawContext::MakeWithFallback\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20SkBackingFit\2c\20SkISize\2c\20SkSurfaceProps\20const&\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +2362:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29 +2363:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29::$_0::$_0\28$_0&&\29 +2364:skgpu::ganesh::SurfaceContext::PixelTransferResult::operator=\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +2365:skgpu::ganesh::SupportedTextureFormats\28GrImageContext\20const&\29::$_0::operator\28\29\28SkYUVAPixmapInfo::DataType\2c\20int\29\20const +2366:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +2367:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::coverageMode\28\29\20const +2368:skgpu::ganesh::PathInnerTriangulateOp::pushFanFillProgram\28GrTessellationShader::ProgramArgs\20const&\2c\20GrUserStencilSettings\20const*\29 +2369:skgpu::ganesh::OpsTask::deleteOps\28\29 +2370:skgpu::ganesh::OpsTask::OpChain::List::operator=\28skgpu::ganesh::OpsTask::OpChain::List&&\29 +2371:skgpu::ganesh::Device::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29::$_0::operator\28\29\28int\29\20const +2372:skgpu::ganesh::ClipStack::clipRect\28SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\2c\20SkClipOp\29 +2373:skgpu::TClientMappedBufferManager::BufferFinishedMessage::BufferFinishedMessage\28skgpu::TClientMappedBufferManager::BufferFinishedMessage&&\29 +2374:skgpu::Swizzle::Concat\28skgpu::Swizzle\20const&\2c\20skgpu::Swizzle\20const&\29 +2375:skgpu::Swizzle::CToI\28char\29 +2376:sk_sp::operator=\28sk_sp\20const&\29 +2377:sk_sp::operator=\28sk_sp&&\29 +2378:sk_sp::reset\28SkMipmap*\29 +2379:sk_sp::~sk_sp\28\29 +2380:sk_sp::~sk_sp\28\29 +2381:sk_sp::~sk_sp\28\29 +2382:shr +2383:shl +2384:set_result_path\28SkPath*\2c\20SkPath\20const&\2c\20SkPathFillType\29 +2385:sect_with_horizontal\28SkPoint\20const*\2c\20float\29 +2386:roughly_between\28double\2c\20double\2c\20double\29 +2387:psh_calc_max_height +2388:ps_mask_set_bit +2389:ps_dimension_set_mask_bits +2390:ps_builder_check_points +2391:ps_builder_add_point +2392:png_colorspace_endpoints_match +2393:path_is_trivial\28SkPath\20const&\29::Trivializer::addTrivialContourPoint\28SkPoint\20const&\29 +2394:output_char\28hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +2395:operator!=\28SkRect\20const&\2c\20SkRect\20const&\29 +2396:nearly_equal\28double\2c\20double\29 +2397:mbrtowc +2398:mask_gamma_cache_mutex\28\29 +2399:map_rect_perspective\28SkRect\20const&\2c\20float\20const*\29::$_0::operator\28\29\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20const +2400:lock.8908 +2401:lineMetrics_getEndIndex +2402:is_smooth_enough\28SkAnalyticEdge*\2c\20SkAnalyticEdge*\2c\20int\29 +2403:is_ICC_signature_char +2404:interpolate_local\28float\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\29 +2405:int\20_hb_cmp_method>\28void\20const*\2c\20void\20const*\29 +2406:init_file_lock +2407:image_filter_color_type\28SkImageInfo\29 +2408:ilogbf +2409:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +2410:hb_vector_t\2c\20false>::fini\28\29 +2411:hb_unicode_funcs_t::compose\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +2412:hb_syllabic_insert_dotted_circles\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +2413:hb_shape_full +2414:hb_serialize_context_t::~hb_serialize_context_t\28\29 +2415:hb_serialize_context_t::hb_serialize_context_t\28void*\2c\20unsigned\20int\29 +2416:hb_serialize_context_t::end_serialize\28\29 +2417:hb_paint_funcs_t::push_scale\28void*\2c\20float\2c\20float\29 +2418:hb_paint_extents_context_t::paint\28\29 +2419:hb_ot_map_builder_t::disable_feature\28unsigned\20int\29 +2420:hb_map_iter_t\2c\20OT::IntType\2c\20true>\20const>\2c\20hb_partial_t<2u\2c\20$_9\20const*\2c\20OT::ChainRuleSet\20const*>\2c\20\28hb_function_sortedness_t\290\2c\20\28void*\290>::__item__\28\29\20const +2421:hb_lazy_loader_t\2c\20hb_face_t\2c\2012u\2c\20OT::vmtx_accelerator_t>::get_stored\28\29\20const +2422:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::do_destroy\28OT::sbix_accelerator_t*\29 +2423:hb_lazy_loader_t\2c\20hb_face_t\2c\205u\2c\20OT::hmtx_accelerator_t>::do_destroy\28OT::hmtx_accelerator_t*\29 +2424:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::get_stored\28\29\20const +2425:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::do_destroy\28OT::GSUB_accelerator_t*\29 +2426:hb_lazy_loader_t\2c\20hb_face_t\2c\2026u\2c\20OT::GPOS_accelerator_t>::get_stored\28\29\20const +2427:hb_lazy_loader_t\2c\20hb_face_t\2c\2034u\2c\20hb_blob_t>::get\28\29\20const +2428:hb_language_from_string +2429:hb_iter_t\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>\2c\20OT::HBGlyphID16&>::operator*\28\29 +2430:hb_hashmap_t::add\28unsigned\20int\20const&\29 +2431:hb_hashmap_t::alloc\28unsigned\20int\29 +2432:hb_font_t::parent_scale_position\28int*\2c\20int*\29 +2433:hb_font_t::get_h_extents_with_fallback\28hb_font_extents_t*\29 +2434:hb_buffer_t::output_glyph\28unsigned\20int\29 +2435:hb_buffer_t::copy_glyph\28\29 +2436:hb_buffer_t::clear_positions\28\29 +2437:hb_bounds_t*\20hb_vector_t::push\28hb_bounds_t&&\29 +2438:hb_blob_create_sub_blob +2439:hb_blob_create +2440:get_cache\28\29 +2441:ftell +2442:ft_var_readpackedpoints +2443:ft_glyphslot_free_bitmap +2444:filter_to_gl_mag_filter\28SkFilterMode\29 +2445:extractMaskSubset\28SkMask\20const&\2c\20SkIRect\2c\20int\2c\20int\29 +2446:exp +2447:equal_ulps\28float\2c\20float\2c\20int\2c\20int\29 +2448:edges_too_close\28SkAnalyticEdge*\2c\20SkAnalyticEdge*\2c\20int\29 +2449:direct_blur_y\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20int\2c\20int\2c\20unsigned\20short*\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +2450:derivative_at_t\28double\20const*\2c\20double\29 +2451:crop_rect_edge\28SkRect\20const&\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +2452:cleanup_program\28GrGLGpu*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +2453:clean_paint_for_drawVertices\28SkPaint\29 +2454:check_edge_against_rect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRect\20const&\2c\20SkPathFirstDirection\29 +2455:checkOnCurve\28float\2c\20float\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +2456:char*\20sktext::gpu::BagOfBytes::allocateBytesFor\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +2457:cff_strcpy +2458:cff_size_get_globals_funcs +2459:cff_index_forget_element +2460:cf2_stack_setReal +2461:cf2_hint_init +2462:cf2_doStems +2463:cf2_doFlex +2464:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_4::operator\28\29\28float\29\20const +2465:byn$mgfn-shared$tt_cmap6_get_info +2466:byn$mgfn-shared$tt_cmap13_get_info +2467:byn$mgfn-shared$std::__2::__time_get_c_storage::__c\28\29\20const +2468:byn$mgfn-shared$std::__2::__time_get_c_storage::__c\28\29\20const +2469:byn$mgfn-shared$std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +2470:byn$mgfn-shared$skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +2471:byn$mgfn-shared$SkSL::Tracer::line\28int\29 +2472:byn$mgfn-shared$SkImage_Base::isGraphiteBacked\28\29\20const +2473:byn$mgfn-shared$OT::PaintSkewAroundCenter::sanitize\28hb_sanitize_context_t*\29\20const +2474:buffer_verify_error\28hb_buffer_t*\2c\20hb_font_t*\2c\20char\20const*\2c\20...\29 +2475:bool\20hb_hashmap_t::has\28unsigned\20int\20const&\2c\20unsigned\20int**\29\20const +2476:bool\20hb_buffer_t::replace_glyphs\28unsigned\20int\2c\20unsigned\20int\2c\20OT::HBGlyphID16\20const*\29 +2477:bool\20OT::match_input>\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20OT::IntType\20const*\2c\20bool\20\28*\29\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29\2c\20void\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +2478:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +2479:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +2480:blur_y_rect\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20unsigned\20short*\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +2481:blur_column\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29::$_0::operator\28\29\28unsigned\20char*\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\29\20const +2482:blitClippedMask\28SkBlitter*\2c\20SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29 +2483:approx_arc_length\28SkPoint\20const*\2c\20int\29 +2484:antifillrect\28SkIRect\20const&\2c\20SkBlitter*\29 +2485:afm_parser_read_int +2486:af_sort_pos +2487:af_latin_hints_compute_segments +2488:_hb_glyph_info_get_lig_num_comps\28hb_glyph_info_t\20const*\29 +2489:__wasi_syscall_ret +2490:__uselocale +2491:__math_xflow +2492:__cxxabiv1::__base_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +2493:\28anonymous\20namespace\29::make_vertices_spec\28bool\2c\20bool\29 +2494:\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29 +2495:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29::'lambda'\28unsigned\20int\20const*\29::operator\28\29\28unsigned\20int\20const*\29\20const +2496:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29::'lambda'\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29::operator\28\29\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +2497:\28anonymous\20namespace\29::SkBlurImageFilter::kernelBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +2498:\28anonymous\20namespace\29::RunIteratorQueue::insert\28SkShaper::RunIterator*\2c\20int\29 +2499:\28anonymous\20namespace\29::RunIteratorQueue::CompareEntry\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29 +2500:\28anonymous\20namespace\29::PathGeoBuilder::ensureSpace\28int\2c\20int\2c\20SkPoint\20const*\29 +2501:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMangledName\28char\20const*\29 +2502:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29::'lambda'\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29::operator\28\29\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +2503:\28anonymous\20namespace\29::FillRectOpImpl::vertexSpec\28\29\20const +2504:\28anonymous\20namespace\29::CacheImpl::removeInternal\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +2505:TT_Load_Context +2506:Skwasm::makeCurrent\28int\29 +2507:SkipCode +2508:SkYUVAPixmaps::~SkYUVAPixmaps\28\29 +2509:SkYUVAPixmaps::operator=\28SkYUVAPixmaps\20const&\29 +2510:SkYUVAPixmaps::SkYUVAPixmaps\28\29 +2511:SkWriter32::writeRRect\28SkRRect\20const&\29 +2512:SkWriter32::writeMatrix\28SkMatrix\20const&\29 +2513:SkWriter32::snapshotAsData\28\29\20const +2514:SkWBuffer::write\28void\20const*\2c\20unsigned\20long\29 +2515:SkVertices::approximateSize\28\29\20const +2516:SkTextBlobBuilder::~SkTextBlobBuilder\28\29 +2517:SkTextBlob::RunRecord::textBuffer\28\29\20const +2518:SkTextBlob::RunRecord::clusterBuffer\28\29\20const +2519:SkTextBlob::RunRecord::StorageSize\28unsigned\20int\2c\20unsigned\20int\2c\20SkTextBlob::GlyphPositioning\2c\20SkSafeMath*\29 +2520:SkTextBlob::RunRecord::Next\28SkTextBlob::RunRecord\20const*\29 +2521:SkTSpan::oppT\28double\29\20const +2522:SkTSpan::closestBoundedT\28SkDPoint\20const&\29\20const +2523:SkTSect::updateBounded\28SkTSpan*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2524:SkTSect::trim\28SkTSpan*\2c\20SkTSect*\29 +2525:SkTSect::removeSpanRange\28SkTSpan*\2c\20SkTSpan*\29 +2526:SkTSect::removeCoincident\28SkTSpan*\2c\20bool\29 +2527:SkTSect::deleteEmptySpans\28\29 +2528:SkTInternalLList::Entry>::remove\28SkLRUCache::Entry*\29 +2529:SkTInternalLList>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry>::remove\28SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\29 +2530:SkTInternalLList>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry>::remove\28SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\29 +2531:SkTDStorage::insert\28int\2c\20int\2c\20void\20const*\29 +2532:SkTDStorage::insert\28int\29 +2533:SkTDStorage::erase\28int\2c\20int\29 +2534:SkTBlockList::pushItem\28\29 +2535:SkSurfaces::RenderTarget\28GrRecordingContext*\2c\20skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20int\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const*\2c\20bool\2c\20bool\29 +2536:SkSurfaces::Raster\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const*\29 +2537:SkStrokeRec::applyToPath\28SkPath*\2c\20SkPath\20const&\29\20const +2538:SkString::set\28char\20const*\29 +2539:SkString::Rec::Make\28char\20const*\2c\20unsigned\20long\29 +2540:SkStrikeSpec::MakeCanonicalized\28SkFont\20const&\2c\20SkPaint\20const*\29 +2541:SkStrikeCache::GlobalStrikeCache\28\29 +2542:SkStrike::glyph\28SkPackedGlyphID\29 +2543:SkSpriteBlitter::~SkSpriteBlitter\28\29 +2544:SkShadowTessellator::MakeSpot\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20bool\2c\20bool\29 +2545:SkShaders::MatrixRec::apply\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2546:SkShaderBase::appendRootStages\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2547:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +2548:SkScalerContext_FreeType::emboldenIfNeeded\28FT_FaceRec_*\2c\20FT_GlyphSlotRec_*\2c\20unsigned\20short\29 +2549:SkScaleToSides::AdjustRadii\28double\2c\20double\2c\20float*\2c\20float*\29 +2550:SkSamplingOptions::operator==\28SkSamplingOptions\20const&\29\20const +2551:SkSTArenaAlloc<3332ul>::SkSTArenaAlloc\28unsigned\20long\29 +2552:SkSTArenaAlloc<1024ul>::SkSTArenaAlloc\28unsigned\20long\29 +2553:SkSL::write_stringstream\28SkSL::StringStream\20const&\2c\20SkSL::OutputStream&\29 +2554:SkSL::evaluate_3_way_intrinsic\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +2555:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29 +2556:SkSL::calculate_count\28double\2c\20double\2c\20double\2c\20bool\2c\20bool\29 +2557:SkSL::append_rtadjust_fixup_to_vertex_main\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::Block&\29::AppendRTAdjustFixupHelper::Pos\28\29\20const +2558:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +2559:SkSL::VarDeclaration::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20SkSL::VariableStorage\2c\20std::__2::unique_ptr>\29 +2560:SkSL::Type::priority\28\29\20const +2561:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20double\2c\20SkSL::Position\29\20const +2562:SkSL::Type*\20SkSL::SymbolTable::add\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +2563:SkSL::Transform::EliminateDeadFunctions\28SkSL::Program&\29::$_0::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +2564:SkSL::ThreadContext::SetInstance\28std::__2::unique_ptr>\29 +2565:SkSL::SymbolTable::lookup\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +2566:SkSL::SymbolTable::isType\28std::__2::basic_string_view>\29\20const +2567:SkSL::Swizzle::MaskString\28skia_private::STArray<4\2c\20signed\20char\2c\20true>\20const&\29 +2568:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const::$_0::operator\28\29\28\29\20const +2569:SkSL::RP::Program::appendCopy\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20std::byte*\2c\20SkSL::RP::ProgramOp\2c\20unsigned\20int\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29\20const +2570:SkSL::RP::Generator::store\28SkSL::RP::LValue&\29 +2571:SkSL::RP::Generator::emitTraceScope\28int\29 +2572:SkSL::RP::DynamicIndexLValue::dynamicSlotRange\28\29 +2573:SkSL::RP::Builder::ternary_op\28SkSL::RP::BuilderOp\2c\20int\29 +2574:SkSL::RP::Builder::simplifyPopSlotsUnmasked\28SkSL::RP::SlotRange*\29 +2575:SkSL::RP::Builder::push_zeros\28int\29 +2576:SkSL::RP::Builder::push_loop_mask\28\29 +2577:SkSL::RP::Builder::exchange_src\28\29 +2578:SkSL::ProgramVisitor::visit\28SkSL::Program\20const&\29 +2579:SkSL::ProgramUsage::remove\28SkSL::Statement\20const*\29 +2580:SkSL::PrefixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +2581:SkSL::PipelineStage::PipelineStageCodeGenerator::typedVariable\28SkSL::Type\20const&\2c\20std::__2::basic_string_view>\29 +2582:SkSL::PipelineStage::PipelineStageCodeGenerator::typeName\28SkSL::Type\20const&\29 +2583:SkSL::Parser::parseInitializer\28SkSL::Position\2c\20std::__2::unique_ptr>*\29 +2584:SkSL::Parser::nextRawToken\28\29 +2585:SkSL::Parser::arrayType\28SkSL::Type\20const*\2c\20int\2c\20SkSL::Position\29 +2586:SkSL::LiteralType::priority\28\29\20const +2587:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +2588:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_dot\28std::__2::array\20const&\29 +2589:SkSL::InterfaceBlock::arraySize\28\29\20const +2590:SkSL::IndexExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +2591:SkSL::GLSLCodeGenerator::writeExtension\28std::__2::basic_string_view>\2c\20bool\29 +2592:SkSL::FieldAccess::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +2593:SkSL::ConstructorArray::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +2594:SkSL::Compiler::convertProgram\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::ProgramSettings\29 +2595:SkSL::Block::isEmpty\28\29\20const +2596:SkSL::Analysis::DetectVarDeclarationWithoutScope\28SkSL::Statement\20const&\2c\20SkSL::ErrorReporter*\29 +2597:SkRuntimeEffectBuilder::writableUniformData\28\29 +2598:SkRuntimeEffect::Result::~Result\28\29 +2599:SkResourceCache::remove\28SkResourceCache::Rec*\29 +2600:SkRegion::writeToMemory\28void*\29\20const +2601:SkRegion::getBoundaryPath\28SkPath*\29\20const +2602:SkRegion::SkRegion\28SkRegion\20const&\29 +2603:SkRect::set\28SkPoint\20const&\2c\20SkPoint\20const&\29 +2604:SkRect::offset\28SkPoint\20const&\29 +2605:SkRect::center\28\29\20const +2606:SkRecords::Optional::~Optional\28\29 +2607:SkRecords::NoOp*\20SkRecord::replace\28int\29 +2608:SkReadBuffer::skip\28unsigned\20long\29 +2609:SkRasterPipeline_ConstantCtx*\20SkArenaAlloc::make\28SkRasterPipeline_ConstantCtx\20const&\29 +2610:SkRasterPipeline::tailPointer\28\29 +2611:SkRasterPipeline::appendMatrix\28SkArenaAlloc*\2c\20SkMatrix\20const&\29 +2612:SkRasterPipeline::addMemoryContext\28SkRasterPipeline_MemoryCtx*\2c\20int\2c\20bool\2c\20bool\29 +2613:SkRasterClip::SkRasterClip\28SkIRect\20const&\29 +2614:SkRRect::setOval\28SkRect\20const&\29 +2615:SkRRect::initializeRect\28SkRect\20const&\29 +2616:SkRRect::MakeRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +2617:SkQuads::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2618:SkPixelRef::~SkPixelRef\28\29 +2619:SkPixelRef::SkPixelRef\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +2620:SkPictureRecord::~SkPictureRecord\28\29 +2621:SkPictureRecord::recordRestoreOffsetPlaceholder\28\29 +2622:SkPathStroker::quadStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2623:SkPathStroker::preJoinTo\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20bool\29 +2624:SkPathStroker::intersectRay\28SkQuadConstruct*\2c\20SkPathStroker::IntersectRayType\29\20const +2625:SkPathStroker::cubicStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2626:SkPathStroker::cubicPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +2627:SkPathStroker::conicStroke\28SkConic\20const&\2c\20SkQuadConstruct*\29 +2628:SkPathRef::computeBounds\28\29\20const +2629:SkPathEdgeIter::SkPathEdgeIter\28SkPath\20const&\29 +2630:SkPathBuilder::incReserve\28int\2c\20int\29 +2631:SkPathBuilder::conicTo\28SkPoint\2c\20SkPoint\2c\20float\29 +2632:SkPath::rewind\28\29 +2633:SkPath::hasOnlyMoveTos\28\29\20const +2634:SkPath::getPoint\28int\29\20const +2635:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2636:SkPaint::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +2637:SkPaint::canComputeFastBounds\28\29\20const +2638:SkPaint::SkPaint\28SkPaint&&\29 +2639:SkOpSpanBase::mergeMatches\28SkOpSpanBase*\29 +2640:SkOpSpanBase::addOpp\28SkOpSpanBase*\29 +2641:SkOpSegment::updateOppWinding\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\29\20const +2642:SkOpSegment::subDivide\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkDCurve*\29\20const +2643:SkOpSegment::setUpWindings\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20int*\2c\20int*\2c\20int*\2c\20int*\2c\20int*\29 +2644:SkOpSegment::nextChase\28SkOpSpanBase**\2c\20int*\2c\20SkOpSpan**\2c\20SkOpSpanBase**\29\20const +2645:SkOpSegment::markAndChaseDone\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpSpanBase**\29 +2646:SkOpSegment::isSimple\28SkOpSpanBase**\2c\20int*\29\20const +2647:SkOpSegment::init\28SkPoint*\2c\20float\2c\20SkOpContour*\2c\20SkPath::Verb\29 +2648:SkOpEdgeBuilder::complete\28\29 +2649:SkOpContour::appendSegment\28\29 +2650:SkOpCoincidence::overlap\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double*\2c\20double*\29\20const +2651:SkOpCoincidence::add\28SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\29 +2652:SkOpCoincidence::addIfMissing\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double\2c\20double\2c\20SkOpSegment*\2c\20SkOpSegment*\2c\20bool*\29 +2653:SkOpCoincidence::addExpanded\28\29 +2654:SkOpCoincidence::addEndMovedSpans\28SkOpPtT\20const*\29 +2655:SkOpCoincidence::TRange\28SkOpPtT\20const*\2c\20double\2c\20SkOpSegment\20const*\29 +2656:SkOpAngle::set\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2657:SkOpAngle::loopCount\28\29\20const +2658:SkOpAngle::insert\28SkOpAngle*\29 +2659:SkOpAngle*\20SkArenaAlloc::make\28\29 +2660:SkNoPixelsDevice::ClipState::op\28SkClipOp\2c\20SkM44\20const&\2c\20SkRect\20const&\2c\20bool\2c\20bool\29 +2661:SkMipmap*\20SkSafeRef\28SkMipmap*\29 +2662:SkMeshSpecification::Varying::Varying\28SkMeshSpecification::Varying\20const&\29 +2663:SkMatrixPriv::DifferentialAreaScale\28SkMatrix\20const&\2c\20SkPoint\20const&\29 +2664:SkMatrix::setRotate\28float\29 +2665:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint\20const*\2c\20int\29\20const +2666:SkMaskFilterBase::getFlattenableType\28\29\20const +2667:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29 +2668:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29::$_0::operator\28\29\28skvx::Vec<4\2c\20float>\29\20const +2669:SkM44::normalizePerspective\28\29 +2670:SkLineClipper::IntersectLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\29 +2671:SkJSONWriter::scope\28\29\20const +2672:SkImage_Ganesh::makeView\28GrRecordingContext*\29\20const +2673:SkImage_Base::~SkImage_Base\28\29 +2674:SkImage_Base::isGaneshBacked\28\29\20const +2675:SkImage_Base::SkImage_Base\28SkImageInfo\20const&\2c\20unsigned\20int\29 +2676:SkImageInfo::validRowBytes\28unsigned\20long\29\20const +2677:SkImageInfo::MakeUnknown\28int\2c\20int\29 +2678:SkImageGenerator::~SkImageGenerator\28\29 +2679:SkImageGenerator::onRefEncodedData\28\29 +2680:SkImageFilters::Crop\28SkRect\20const&\2c\20SkTileMode\2c\20sk_sp\29 +2681:SkImageFilter_Base::~SkImageFilter_Base\28\29 +2682:SkImage::makeRasterImage\28GrDirectContext*\2c\20SkImage::CachingHint\29\20const +2683:SkHalfToFloat\28unsigned\20short\29 +2684:SkGradientBaseShader::commonAsAGradient\28SkShaderBase::GradientInfo*\29\20const +2685:SkGradientBaseShader::ValidGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2686:SkGradientBaseShader::SkGradientBaseShader\28SkGradientBaseShader::Descriptor\20const&\2c\20SkMatrix\20const&\29 +2687:SkGradientBaseShader::MakeDegenerateGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20float\20const*\2c\20int\2c\20sk_sp\2c\20SkTileMode\29 +2688:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkPath\20const*\2c\20bool\29 +2689:SkGetPolygonWinding\28SkPoint\20const*\2c\20int\29 +2690:SkFont::setTypeface\28sk_sp\29 +2691:SkEmptyFontMgr::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +2692:SkEdgeBuilder::~SkEdgeBuilder\28\29 +2693:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29 +2694:SkDrawable::draw\28SkCanvas*\2c\20SkMatrix\20const*\29 +2695:SkDrawBase::drawPathCoverage\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkBlitter*\29\20const +2696:SkDevice::~SkDevice\28\29 +2697:SkDevice::setLocalToDevice\28SkM44\20const&\29 +2698:SkDevice::scalerContextFlags\28\29\20const +2699:SkDevice::accessPixels\28SkPixmap*\29 +2700:SkData::MakeWithProc\28void\20const*\2c\20unsigned\20long\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +2701:SkDQuad::dxdyAtT\28double\29\20const +2702:SkDQuad::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2703:SkDPoint::distance\28SkDPoint\20const&\29\20const +2704:SkDLine::NearPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +2705:SkDLine::NearPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +2706:SkDCubic::dxdyAtT\28double\29\20const +2707:SkDCubic::RootsValidT\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +2708:SkDConic::dxdyAtT\28double\29\20const +2709:SkConicalGradient::~SkConicalGradient\28\29 +2710:SkComputeRadialSteps\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float*\2c\20float*\2c\20int*\29 +2711:SkColorSpace::serialize\28\29\20const +2712:SkColorFilters::Compose\28sk_sp\20const&\2c\20sk_sp\29 +2713:SkColorFilterPriv::MakeGaussian\28\29 +2714:SkColorConverter::SkColorConverter\28unsigned\20int\20const*\2c\20int\29 +2715:SkCoincidentSpans::correctOneEnd\28SkOpPtT\20const*\20\28SkCoincidentSpans::*\29\28\29\20const\2c\20void\20\28SkCoincidentSpans::*\29\28SkOpPtT\20const*\29\29 +2716:SkClosestRecord::findEnd\28SkTSpan\20const*\2c\20SkTSpan\20const*\2c\20int\2c\20int\29 +2717:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\20const*\2c\20int\29 +2718:SkChopCubicAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2719:SkCanvas::restore\28\29 +2720:SkCanvas::init\28sk_sp\29 +2721:SkCanvas::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +2722:SkCanvas::drawImageRect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +2723:SkCanvas::concat\28SkM44\20const&\29 +2724:SkCanvas::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +2725:SkCachedData::detachFromCacheAndUnref\28\29\20const +2726:SkCachedData::attachToCacheAndRef\28\29\20const +2727:SkBitmap::pixelRefOrigin\28\29\20const +2728:SkBitmap::notifyPixelsChanged\28\29\20const +2729:SkBitmap::extractSubset\28SkBitmap*\2c\20SkIRect\20const&\29\20const +2730:SkBinaryWriteBuffer::writeByteArray\28void\20const*\2c\20unsigned\20long\29 +2731:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29 +2732:SkAutoPixmapStorage::tryAlloc\28SkImageInfo\20const&\29 +2733:SkAutoDeviceTransformRestore::~SkAutoDeviceTransformRestore\28\29 +2734:SkAutoDeviceTransformRestore::SkAutoDeviceTransformRestore\28SkDevice*\2c\20SkMatrix\20const&\29 +2735:SkAutoBlitterChoose::SkAutoBlitterChoose\28SkDrawBase\20const&\2c\20SkMatrix\20const*\2c\20SkPaint\20const&\2c\20bool\29 +2736:SkArenaAllocWithReset::SkArenaAllocWithReset\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +2737:SkAAClip::setPath\28SkPath\20const&\2c\20SkIRect\20const&\2c\20bool\29 +2738:SkAAClip::quickContains\28SkIRect\20const&\29\20const +2739:SkAAClip::op\28SkAAClip\20const&\2c\20SkClipOp\29 +2740:SkAAClip::Builder::flushRowH\28SkAAClip::Builder::Row*\29 +2741:SkAAClip::Builder::Blitter::checkForYGap\28int\29 +2742:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29 +2743:OT::post::accelerator_t::find_glyph_name\28unsigned\20int\29\20const +2744:OT::hb_ot_layout_lookup_accelerator_t::apply\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20bool\29\20const +2745:OT::hb_ot_apply_context_t::skipping_iterator_t::match\28hb_glyph_info_t&\29 +2746:OT::hb_ot_apply_context_t::_set_glyph_class\28unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +2747:OT::glyf_accelerator_t::glyph_for_gid\28unsigned\20int\2c\20bool\29\20const +2748:OT::cff1::accelerator_templ_t>::std_code_to_glyph\28unsigned\20int\29\20const +2749:OT::apply_lookup\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20OT::LookupRecord\20const*\2c\20unsigned\20int\29 +2750:OT::VariationStore::create_cache\28\29\20const +2751:OT::VarRegionList::evaluate\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +2752:OT::Lookup::get_props\28\29\20const +2753:OT::Layout::GSUB_impl::SubstLookup*\20hb_serialize_context_t::copy\28\29\20const +2754:OT::Layout::GPOS_impl::ValueFormat::get_device\28OT::IntType\20const*\2c\20bool*\2c\20void\20const*\2c\20hb_sanitize_context_t&\29 +2755:OT::Layout::GPOS_impl::Anchor::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2756:OT::IntType*\20hb_serialize_context_t::extend_min>\28OT::IntType*\29 +2757:OT::GSUBGPOS::get_script\28unsigned\20int\29\20const +2758:OT::GSUBGPOS::get_feature_tag\28unsigned\20int\29\20const +2759:OT::GSUBGPOS::find_script_index\28unsigned\20int\2c\20unsigned\20int*\29\20const +2760:OT::ArrayOf>*\20hb_serialize_context_t::extend_size>>\28OT::ArrayOf>*\2c\20unsigned\20long\2c\20bool\29 +2761:Move_Zp2_Point +2762:Modify_CVT_Check +2763:GrYUVATextureProxies::operator=\28GrYUVATextureProxies&&\29 +2764:GrYUVATextureProxies::GrYUVATextureProxies\28\29 +2765:GrXPFactory::FromBlendMode\28SkBlendMode\29 +2766:GrWindowRectangles::operator=\28GrWindowRectangles\20const&\29 +2767:GrTriangulator::~GrTriangulator\28\29 +2768:GrTriangulator::simplify\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +2769:GrTriangulator::setTop\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2770:GrTriangulator::mergeCollinearEdges\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2771:GrTriangulator::mergeCoincidentVertices\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29\20const +2772:GrTriangulator::emitTriangle\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20skgpu::VertexWriter\29\20const +2773:GrTriangulator::allocateEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20GrTriangulator::EdgeType\29 +2774:GrTriangulator::FindEnclosingEdges\28GrTriangulator::Vertex\20const&\2c\20GrTriangulator::EdgeList\20const&\2c\20GrTriangulator::Edge**\2c\20GrTriangulator::Edge**\29 +2775:GrTriangulator::Edge::dist\28SkPoint\20const&\29\20const +2776:GrTriangulator::Edge::Edge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20GrTriangulator::EdgeType\29 +2777:GrThreadSafeCache::remove\28skgpu::UniqueKey\20const&\29 +2778:GrThreadSafeCache::internalFind\28skgpu::UniqueKey\20const&\29 +2779:GrThreadSafeCache::internalAdd\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2780:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +2781:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29 +2782:GrTessellationShader::MakePipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedClip&&\2c\20GrProcessorSet&&\29 +2783:GrSurfaceProxyView::operator!=\28GrSurfaceProxyView\20const&\29\20const +2784:GrSurfaceProxyView::concatSwizzle\28skgpu::Swizzle\29 +2785:GrSurfaceProxy::~GrSurfaceProxy\28\29 +2786:GrSurfaceProxy::isFunctionallyExact\28\29\20const +2787:GrSurfaceProxy::gpuMemorySize\28\29\20const +2788:GrSurfaceProxy::createSurfaceImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\29\20const +2789:GrSurfaceProxy::Copy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\2c\20GrSurfaceProxy::RectsMustMatch\2c\20sk_sp*\29 +2790:GrSurfaceProxy::Copy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\2c\20sk_sp*\29 +2791:GrStyledShape::hasUnstyledKey\28\29\20const +2792:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +2793:GrStyle::GrStyle\28GrStyle\20const&\29 +2794:GrSkSLFP::setInput\28std::__2::unique_ptr>\29 +2795:GrSimpleMeshDrawOpHelper::CreatePipeline\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20skgpu::Swizzle\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrProcessorSet&&\2c\20GrPipeline::InputFlags\29 +2796:GrSimpleMesh::set\28sk_sp\2c\20int\2c\20int\29 +2797:GrShape::simplifyRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +2798:GrShape::simplifyRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +2799:GrShape::simplifyPoint\28SkPoint\20const&\2c\20unsigned\20int\29 +2800:GrShape::simplifyLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\29 +2801:GrShape::setInverted\28bool\29 +2802:GrSWMaskHelper::init\28SkIRect\20const&\29 +2803:GrSWMaskHelper::GrSWMaskHelper\28SkAutoPixmapStorage*\29 +2804:GrResourceProvider::refNonAAQuadIndexBuffer\28\29 +2805:GrRenderTask::addTarget\28GrDrawingManager*\2c\20sk_sp\29 +2806:GrRenderTarget::~GrRenderTarget\28\29 +2807:GrQuadUtils::WillUseHairline\28GrQuad\20const&\2c\20GrAAType\2c\20GrQuadAAFlags\29 +2808:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::unpackQuad\28GrQuad::Type\2c\20float\20const*\2c\20GrQuad*\29\20const +2809:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::MetadataIter::next\28\29 +2810:GrProxyProvider::processInvalidUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\29 +2811:GrProxyProvider::createMippedProxyFromBitmap\28SkBitmap\20const&\2c\20skgpu::Budgeted\29::$_0::~$_0\28\29 +2812:GrProgramInfo::GrProgramInfo\28GrCaps\20const&\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrGeometryProcessor\20const*\2c\20GrPrimitiveType\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +2813:GrPipeline::visitProxies\28std::__2::function\20const&\29\20const +2814:GrPipeline::getFragmentProcessor\28int\29\20const +2815:GrPathUtils::scaleToleranceToSrc\28float\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +2816:GrPathUtils::cubicPointCount\28SkPoint\20const*\2c\20float\29 +2817:GrPaint::GrPaint\28GrPaint\20const&\29 +2818:GrOpsRenderPass::prepareToDraw\28\29 +2819:GrOpFlushState::~GrOpFlushState\28\29 +2820:GrOpFlushState::drawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +2821:GrOpFlushState::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const&\2c\20GrPipeline\20const&\29 +2822:GrOp::uniqueID\28\29\20const +2823:GrNativeRect::MakeIRectRelativeTo\28GrSurfaceOrigin\2c\20int\2c\20SkIRect\29 +2824:GrMeshDrawOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +2825:GrMapRectPoints\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkPoint*\2c\20int\29 +2826:GrMakeKeyFromImageID\28skgpu::UniqueKey*\2c\20unsigned\20int\2c\20SkIRect\20const&\29 +2827:GrGradientShader::MakeGradientFP\28SkGradientBaseShader\20const&\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\2c\20std::__2::unique_ptr>\2c\20SkMatrix\20const*\29 +2828:GrGpuResource::setUniqueKey\28skgpu::UniqueKey\20const&\29 +2829:GrGpuResource::registerWithCache\28skgpu::Budgeted\29 +2830:GrGpu::writePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +2831:GrGpu::submitToGpu\28GrSyncCpu\29 +2832:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +2833:GrGLTexture::onSetLabel\28\29 +2834:GrGLTexture::onAbandon\28\29 +2835:GrGLTexture::backendFormat\28\29\20const +2836:GrGLSLVaryingHandler::appendDecls\28SkTBlockList\20const&\2c\20SkString*\29\20const +2837:GrGLSLShaderBuilder::newTmpVarName\28char\20const*\29 +2838:GrGLSLShaderBuilder::definitionAppend\28char\20const*\29 +2839:GrGLSLProgramBuilder::invokeFP\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +2840:GrGLSLProgramBuilder::advanceStage\28\29 +2841:GrGLSLFragmentShaderBuilder::dstColor\28\29 +2842:GrGLRenderTarget::bindInternal\28unsigned\20int\2c\20bool\29 +2843:GrGLGpu::unbindXferBuffer\28GrGpuBufferType\29 +2844:GrGLGpu::resolveRenderFBOs\28GrGLRenderTarget*\2c\20SkIRect\20const&\2c\20GrGLRenderTarget::ResolveDirection\2c\20bool\29 +2845:GrGLGpu::flushBlendAndColorWrite\28skgpu::BlendInfo\20const&\2c\20skgpu::Swizzle\20const&\29 +2846:GrGLGpu::currentProgram\28\29 +2847:GrGLGpu::SamplerObjectCache::Sampler::~Sampler\28\29 +2848:GrGLGpu::HWVertexArrayState::setVertexArrayID\28GrGLGpu*\2c\20unsigned\20int\29 +2849:GrGLGetVersionFromString\28char\20const*\29 +2850:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\29 +2851:GrGLFunction::GrGLFunction\28unsigned\20char\20const*\20\28*\29\28unsigned\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\29 +2852:GrGLCheckLinkStatus\28GrGLGpu\20const*\2c\20unsigned\20int\2c\20bool\2c\20skgpu::ShaderErrorHandler*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const**\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\29 +2853:GrGLAttribArrayState::set\28GrGLGpu*\2c\20int\2c\20GrBuffer\20const*\2c\20GrVertexAttribType\2c\20SkSLType\2c\20int\2c\20unsigned\20long\2c\20int\29 +2854:GrFragmentProcessors::Make\28SkBlenderBase\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20GrFPArgs\20const&\29 +2855:GrFragmentProcessor::isEqual\28GrFragmentProcessor\20const&\29\20const +2856:GrFragmentProcessor::Rect\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRect\29 +2857:GrFragmentProcessor::ModulateRGBA\28std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2858:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29 +2859:GrFinishCallbacks::callAll\28bool\29 +2860:GrDstProxyView::setProxyView\28GrSurfaceProxyView\29 +2861:GrDrawingManager::getPathRenderer\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\2c\20bool\2c\20skgpu::ganesh::PathRendererChain::DrawType\2c\20skgpu::ganesh::PathRenderer::StencilSupport*\29 +2862:GrDrawingManager::getLastRenderTask\28GrSurfaceProxy\20const*\29\20const +2863:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29::'lambda'\28std::__2::function&\29::\28'lambda'\28std::__2::function&\29\20const&\29 +2864:GrDrawOpAtlas::processEvictionAndResetRects\28skgpu::Plot*\29 +2865:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29 +2866:GrDeferredProxyUploader::wait\28\29 +2867:GrCpuBuffer::Make\28unsigned\20long\29 +2868:GrContext_Base::~GrContext_Base\28\29 +2869:GrColorSpaceXform::Make\28SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +2870:GrColorInfo::operator=\28GrColorInfo\20const&\29 +2871:GrClip::IsPixelAligned\28SkRect\20const&\29 +2872:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29::'lambda0'\28float\29::operator\28\29\28float\29\20const +2873:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29::'lambda'\28float\29::operator\28\29\28float\29\20const +2874:GrCaps::supportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +2875:GrCaps::getFallbackColorTypeAndFormat\28GrColorType\2c\20int\29\20const +2876:GrCaps::areColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +2877:GrBufferAllocPool::~GrBufferAllocPool\28\29.1 +2878:GrBufferAllocPool::makeSpace\28unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\29 +2879:GrBufferAllocPool::GrBufferAllocPool\28GrGpu*\2c\20GrGpuBufferType\2c\20sk_sp\29 +2880:GrBlurUtils::GaussianBlur\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20float\2c\20float\2c\20SkTileMode\2c\20SkBackingFit\29 +2881:GrBlurUtils::DrawShapeWithMaskFilter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\29 +2882:GrBaseContextPriv::getShaderErrorHandler\28\29\20const +2883:GrBackendTexture::GrBackendTexture\28GrBackendTexture\20const&\29 +2884:GrBackendRenderTarget::getBackendFormat\28\29\20const +2885:GrAAConvexTessellator::createOuterRing\28GrAAConvexTessellator::Ring\20const&\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring*\29 +2886:GrAAConvexTessellator::createInsetRings\28GrAAConvexTessellator::Ring&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring**\29 +2887:GrAAConvexTessellator::Ring::init\28GrAAConvexTessellator\20const&\29 +2888:FwDCubicEvaluator::FwDCubicEvaluator\28SkPoint\20const*\29 +2889:FT_Stream_ReadAt +2890:FT_Set_Charmap +2891:FT_New_Size +2892:FT_Load_Sfnt_Table +2893:FT_List_Find +2894:FT_GlyphLoader_Add +2895:FT_Get_Next_Char +2896:FT_Get_Color_Glyph_Layer +2897:FT_Done_Face +2898:FT_CMap_New +2899:Current_Ratio +2900:Compute_Funcs +2901:CircleOp::Circle&\20skia_private::TArray::emplace_back\28CircleOp::Circle&&\29 +2902:CFF::path_procs_t\2c\20cff2_path_param_t>::curve2\28CFF::cff2_cs_interp_env_t&\2c\20cff2_path_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +2903:CFF::path_procs_t\2c\20cff2_extents_param_t>::curve2\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +2904:CFF::path_procs_t::curve2\28CFF::cff1_cs_interp_env_t&\2c\20cff1_path_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +2905:CFF::path_procs_t::curve2\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +2906:CFF::parsed_values_t::operator=\28CFF::parsed_values_t&&\29 +2907:CFF::cs_interp_env_t>>::return_from_subr\28\29 +2908:CFF::cs_interp_env_t>>::in_error\28\29\20const +2909:CFF::cs_interp_env_t>>::call_subr\28CFF::biased_subrs_t>>\20const&\2c\20CFF::cs_type_t\29 +2910:CFF::cs_interp_env_t>>::call_subr\28CFF::biased_subrs_t>>\20const&\2c\20CFF::cs_type_t\29 +2911:CFF::byte_str_ref_t::operator\5b\5d\28int\29 +2912:CFF::arg_stack_t::push_fixed_from_substr\28CFF::byte_str_ref_t&\29 +2913:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +2914:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +2915:CFF::CFFIndex>::offset_at\28unsigned\20int\29\20const +2916:AlmostLessOrEqualUlps\28float\2c\20float\29 +2917:AlmostEqualUlps_Pin\28double\2c\20double\29 +2918:ActiveEdge::intersect\28ActiveEdge\20const*\29 +2919:AAT::Lookup::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +2920:AAT::ClassTable>::get_class\28unsigned\20int\2c\20unsigned\20int\29\20const +2921:zero_length\28SkPoint\20const&\2c\20float\29 +2922:wcrtomb +2923:void\20std::__2::vector>::__construct_at_end\28unsigned\20long*\2c\20unsigned\20long*\2c\20unsigned\20long\29 +2924:void\20std::__2::vector>::__construct_at_end\28skia::textlayout::FontFeature*\2c\20skia::textlayout::FontFeature*\2c\20unsigned\20long\29 +2925:void\20std::__2::vector>::__construct_at_end\28SkString*\2c\20SkString*\2c\20unsigned\20long\29 +2926:void\20std::__2::__introsort\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\2c\20std::__2::iterator_traits::difference_type\29 +2927:void\20std::__2::__introsort\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\2c\20std::__2::iterator_traits::difference_type\29 +2928:void\20std::__2::__introsort\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\2c\20std::__2::iterator_traits::difference_type\29 +2929:void\20std::__2::__inplace_merge\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\2c\20long\29 +2930:void\20skgpu::VertexWriter::writeQuad\28GrQuad\20const&\29 +2931:void\20merge_sort<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2932:void\20merge_sort<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2933:void\20hb_stable_sort\2c\20unsigned\20int>\28OT::HBGlyphID16*\2c\20unsigned\20int\2c\20int\20\28*\29\28OT::IntType\20const*\2c\20OT::IntType\20const*\29\2c\20unsigned\20int*\29 +2934:void\20SkSafeUnref\28sktext::gpu::TextStrike*\29 +2935:void\20SkSafeUnref\28SkMeshSpecification*\29 +2936:void\20SkSafeUnref\28SkMeshPriv::VB\20const*\29 +2937:void\20SkSafeUnref\28GrTexture*\29\20\28.4319\29 +2938:void\20SkSafeUnref\28GrCpuBuffer*\29 +2939:vfprintf +2940:valid_args\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20unsigned\20long*\29 +2941:uprv_malloc_skia +2942:update_offset_to_base\28char\20const*\2c\20long\29 +2943:unsigned\20long\20std::__2::__str_find\5babi:v160004\5d\2c\204294967295ul>\28char\20const*\2c\20unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +2944:unsigned\20long\20const&\20std::__2::min\5babi:v160004\5d\28unsigned\20long\20const&\2c\20unsigned\20long\20const&\29 +2945:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +2946:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +2947:unsigned\20int\20std::__2::__sort5_wrap_policy\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +2948:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +2949:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +2950:unsigned\20int\20std::__2::__sort4\5babi:v160004\5d\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +2951:ubidi_getRuns_skia +2952:ubidi_getLevelAt_skia +2953:u_charMirror_skia +2954:tt_size_reset +2955:tt_sbit_decoder_load_metrics +2956:tt_glyphzone_done +2957:tt_face_get_location +2958:tt_face_find_bdf_prop +2959:tt_delta_interpolate +2960:tt_cmap14_find_variant +2961:tt_cmap14_char_map_nondef_binary +2962:tt_cmap14_char_map_def_binary +2963:tolower +2964:t1_cmap_unicode_done +2965:subdivide_cubic_to\28SkPath*\2c\20SkPoint\20const*\2c\20int\29 +2966:strtox +2967:strtoull_l +2968:std::logic_error::~logic_error\28\29.1 +2969:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +2970:std::__2::vector>::__destroy_vector::operator\28\29\5babi:v160004\5d\28\29 +2971:std::__2::vector>\2c\20std::__2::allocator>>>::erase\28std::__2::__wrap_iter>\20const*>\2c\20std::__2::__wrap_iter>\20const*>\29 +2972:std::__2::vector>::__alloc\5babi:v160004\5d\28\29 +2973:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +2974:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +2975:std::__2::vector\2c\20std::__2::allocator>>::vector\5babi:v160004\5d\28std::__2::vector\2c\20std::__2::allocator>>&&\29 +2976:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +2977:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +2978:std::__2::vector>::push_back\5babi:v160004\5d\28SkString\20const&\29 +2979:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +2980:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +2981:std::__2::vector\2c\20std::__2::allocator>>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +2982:std::__2::vector>::push_back\5babi:v160004\5d\28SkMeshSpecification::Attribute&&\29 +2983:std::__2::unique_ptr\2c\20void*>\2c\20std::__2::__hash_node_destructor\2c\20void*>>>>::~unique_ptr\5babi:v160004\5d\28\29 +2984:std::__2::unique_ptr::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2985:std::__2::unique_ptr\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2986:std::__2::unique_ptr>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2987:std::__2::unique_ptr::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2988:std::__2::unique_ptr\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2989:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2990:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2991:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkTypeface_FreeType::FaceRec*\29 +2992:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkStrikeSpec*\29 +2993:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2994:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2995:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Block*\29 +2996:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkDrawableList*\29 +2997:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2998:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkContourMeasureIter::Impl*\29 +2999:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3000:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3001:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3002:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrGLGpu::SamplerObjectCache*\29 +3003:std::__2::unique_ptr>\20GrBlendFragmentProcessor::Make<\28SkBlendMode\296>\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +3004:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrDrawingManager*\29 +3005:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrClientMappedBufferManager*\29 +3006:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3007:std::__2::unique_ptr>::reset\5babi:v160004\5d\28FT_FaceRec_*\29 +3008:std::__2::tuple&\20std::__2::tuple::operator=\5babi:v160004\5d\28std::__2::pair&&\29 +3009:std::__2::time_put>>::~time_put\28\29 +3010:std::__2::pair\20std::__2::minmax\5babi:v160004\5d>\28std::initializer_list\2c\20std::__2::__less\29 +3011:std::__2::pair\20std::__2::__copy_trivial::operator\28\29\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +3012:std::__2::locale::locale\28\29 +3013:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\29 +3014:std::__2::ios_base::~ios_base\28\29 +3015:std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::operator\28\29\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29\20const +3016:std::__2::function\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const +3017:std::__2::fpos<__mbstate_t>::fpos\5babi:v160004\5d\28long\20long\29 +3018:std::__2::enable_if\28\29\20==\20std::declval\28\29\29\2c\20bool>\2c\20bool>::type\20std::__2::operator==\5babi:v160004\5d\28std::__2::optional\20const&\2c\20std::__2::optional\20const&\29 +3019:std::__2::deque>::__back_spare\5babi:v160004\5d\28\29\20const +3020:std::__2::default_delete::Traits>::Slot\20\5b\5d>::_EnableIfConvertible::Traits>::Slot>::type\20std::__2::default_delete::Traits>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d::Traits>::Slot>\28skia_private::THashTable::Traits>::Slot*\29\20const +3021:std::__2::chrono::__libcpp_steady_clock_now\28\29 +3022:std::__2::char_traits::move\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +3023:std::__2::char_traits::assign\28char*\2c\20unsigned\20long\2c\20char\29 +3024:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +3025:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29 +3026:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28wchar_t\29 +3027:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +3028:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\29 +3029:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28std::__2::__uninitialized_size_tag\2c\20unsigned\20long\2c\20std::__2::allocator\20const&\29 +3030:std::__2::basic_string\2c\20std::__2::allocator>::__make_iterator\5babi:v160004\5d\28char*\29 +3031:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +3032:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +3033:std::__2::basic_streambuf>::~basic_streambuf\28\29 +3034:std::__2::basic_streambuf>::setp\5babi:v160004\5d\28char*\2c\20char*\29 +3035:std::__2::basic_istream>::~basic_istream\28\29 +3036:std::__2::basic_iostream>::~basic_iostream\28\29.1 +3037:std::__2::basic_ios>::~basic_ios\28\29 +3038:std::__2::array\20skgpu::ganesh::SurfaceFillContext::adjustColorAlphaType<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +3039:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3040:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3041:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +3042:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +3043:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28GrRecordingContext*&&\2c\20GrSurfaceProxyView&&\2c\20GrSurfaceProxyView&&\2c\20GrColorInfo\20const&\29 +3044:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28GrRecordingContext*&\2c\20skgpu::ganesh::PathRendererChain::Options&\29 +3045:std::__2::__unique_if>::__unique_single\20std::__2::make_unique\5babi:v160004\5d\2c\20GrDirectContext::DirectContextID>\28GrDirectContext::DirectContextID&&\29 +3046:std::__2::__tuple_impl\2c\20GrSurfaceProxyView\2c\20sk_sp>::~__tuple_impl\28\29 +3047:std::__2::__split_buffer&>::~__split_buffer\28\29 +3048:std::__2::__optional_destruct_base>\2c\20false>::~__optional_destruct_base\5babi:v160004\5d\28\29 +3049:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3050:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +3051:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3052:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3053:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +3054:std::__2::__optional_copy_base::__optional_copy_base\5babi:v160004\5d\28std::__2::__optional_copy_base\20const&\29 +3055:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20wchar_t*\2c\20wchar_t&\2c\20wchar_t&\29 +3056:std::__2::__num_get::__stage2_float_loop\28wchar_t\2c\20bool&\2c\20char&\2c\20char*\2c\20char*&\2c\20wchar_t\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20unsigned\20int&\2c\20wchar_t*\29 +3057:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20char*\2c\20char&\2c\20char&\29 +3058:std::__2::__num_get::__stage2_float_loop\28char\2c\20bool&\2c\20char&\2c\20char*\2c\20char*&\2c\20char\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*&\2c\20unsigned\20int&\2c\20char*\29 +3059:std::__2::__murmur2_or_cityhash::operator\28\29\28void\20const*\2c\20unsigned\20long\29 +3060:std::__2::__libcpp_wcrtomb_l\5babi:v160004\5d\28char*\2c\20wchar_t\2c\20__mbstate_t*\2c\20__locale_struct*\29 +3061:std::__2::__less::operator\28\29\5babi:v160004\5d\28unsigned\20int\20const&\2c\20unsigned\20long\20const&\29\20const +3062:std::__2::__itoa::__base_10_u32\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +3063:std::__2::__itoa::__append6\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +3064:std::__2::__itoa::__append4\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +3065:std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::~__hash_table\28\29 +3066:std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::~__hash_table\28\29 +3067:std::__2::__function::__value_func\2c\20sktext::gpu::RendererData\29>::operator\28\29\5babi:v160004\5d\28sktext::gpu::AtlasSubRun\20const*&&\2c\20SkPoint&&\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20sktext::gpu::RendererData&&\29\20const +3068:std::__2::__function::__value_func\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\5babi:v160004\5d\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\20const +3069:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28std::__2::__function::__base*\29\20const +3070:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator<<<4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20int\29 +3071:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator<=<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +3072:skvx::Vec<4\2c\20float>&\20skvx::operator+=<4\2c\20float>\28skvx::Vec<4\2c\20float>&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +3073:sktext::gpu::VertexFiller::flatten\28SkWriteBuffer&\29\20const +3074:sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry::find\28sktext::gpu::TextBlob::Key\20const&\29\20const +3075:sktext::gpu::SubRunAllocator::SubRunAllocator\28char*\2c\20int\2c\20int\29 +3076:sktext::gpu::GlyphVector::flatten\28SkWriteBuffer&\29\20const +3077:sktext::gpu::GlyphVector::Make\28sktext::SkStrikePromise&&\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\29 +3078:sktext::gpu::GlyphVector::GlyphVector\28sktext::gpu::GlyphVector&&\29 +3079:sktext::gpu::BagOfBytes::PlatformMinimumSizeWithOverhead\28int\2c\20int\29 +3080:sktext::SkStrikePromise::flatten\28SkWriteBuffer&\29\20const +3081:sktext::GlyphRunList::sourceBoundsWithOrigin\28\29\20const +3082:skpaint_to_grpaint_impl\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::optional>>\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +3083:skip_literal_string +3084:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +3085:skif::\28anonymous\20namespace\29::AutoSurface::snap\28\29 +3086:skif::\28anonymous\20namespace\29::AutoSurface::AutoSurface\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20bool\2c\20SkSurfaceProps\20const*\29 +3087:skif::Mapping::adjustLayerSpace\28SkMatrix\20const&\29 +3088:skif::Mapping::Mapping\28\29 +3089:skif::LayerSpace::ceil\28\29\20const +3090:skif::LayerSpace\20skif::Mapping::paramToLayer\28skif::ParameterSpace\20const&\29\20const +3091:skif::LayerSpace\20skif::Mapping::deviceToLayer\28skif::DeviceSpace\20const&\29\20const +3092:skif::LayerSpace::relevantSubset\28skif::LayerSpace\2c\20SkTileMode\29\20const +3093:skif::LayerSpace::offset\28skif::LayerSpace\20const&\29 +3094:skif::FilterResult::operator=\28skif::FilterResult\20const&\29 +3095:skif::FilterResult::analyzeBounds\28skif::LayerSpace\20const&\29\20const +3096:skif::FilterResult::analyzeBounds\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20bool\29\20const +3097:skif::FilterResult::Builder::~Builder\28\29 +3098:skif::Backend::~Backend\28\29 +3099:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot::reset\28\29 +3100:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::set\28skia_private::THashMap::Pair\29 +3101:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +3102:skia_private::THashTable::AdaptedTraits>::Hash\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +3103:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::Slot::reset\28\29 +3104:skia_private::THashTable::Traits>::Hash\28long\20long\20const&\29 +3105:skia_private::THashTable<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20SkImageFilterCacheKey\2c\20SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::AdaptedTraits>::Hash\28SkImageFilterCacheKey\20const&\29 +3106:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::findOrNull\28skgpu::ScratchKey\20const&\29\20const +3107:skia_private::THashTable::Traits>::set\28SkSL::Variable\20const*\29 +3108:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::uncheckedSet\28SkLRUCache::Entry*&&\29 +3109:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::Hash\28GrProgramDesc\20const&\29 +3110:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::UniqueKey\20const&\29 +3111:skia_private::THashTable::Traits>::Hash\28FT_Opaque_Paint_\20const&\29 +3112:skia_private::THashMap>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::unique_ptr>\29 +3113:skia_private::THashMap::operator\5b\5d\28SkSL::SymbolTable::SymbolKey\20const&\29 +3114:skia_private::THashMap::find\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +3115:skia_private::THashMap::set\28SkSL::FunctionDeclaration\20const*\2c\20unsigned\20long\29 +3116:skia_private::THashMap::operator\5b\5d\28SkSL::FunctionDeclaration\20const*\20const&\29 +3117:skia_private::TArray::resize_back\28int\29 +3118:skia_private::TArray::push_back_raw\28int\29 +3119:skia_private::TArray::operator==\28skia_private::TArray\20const&\29\20const +3120:skia_private::TArray::reserve_exact\28int\29 +3121:skia_private::TArray>\2c\20true>::checkRealloc\28int\2c\20double\29 +3122:skia_private::TArray\2c\20true>::push_back\28std::__2::array&&\29 +3123:skia_private::TArray::clear\28\29 +3124:skia_private::TArray::clear\28\29 +3125:skia_private::TArray::TArray\28skia_private::TArray\20const&\29 +3126:skia_private::TArray::TArray\28skia_private::TArray\20const&\29 +3127:skia_private::TArray::~TArray\28\29 +3128:skia_private::TArray::move\28void*\29 +3129:skia_private::TArray::BufferFinishedMessage\2c\20false>::~TArray\28\29 +3130:skia_private::TArray::BufferFinishedMessage\2c\20false>::move\28void*\29 +3131:skia_private::TArray\2c\20true>::push_back\28sk_sp&&\29 +3132:skia_private::TArray::reserve_exact\28int\29 +3133:skia_private::TArray::push_back_n\28int\2c\20int\20const&\29 +3134:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3135:skia_private::TArray::Allocate\28int\2c\20double\29 +3136:skia_private::TArray\2c\20true>::Allocate\28int\2c\20double\29 +3137:skia_private::TArray::reserve_exact\28int\29 +3138:skia_private::TArray::~TArray\28\29 +3139:skia_private::TArray::move\28void*\29 +3140:skia_private::AutoSTMalloc<8ul\2c\20unsigned\20int\2c\20void>::reset\28unsigned\20long\29 +3141:skia_private::AutoSTArray<20\2c\20SkGlyph\20const*>::reset\28int\29 +3142:skia_private::AutoSTArray<16\2c\20SkRect>::reset\28int\29 +3143:skia_private::AutoSTArray<128\2c\20unsigned\20char>::reset\28int\29 +3144:skia_png_sig_cmp +3145:skia_png_set_text_2 +3146:skia_png_realloc_array +3147:skia_png_get_uint_31 +3148:skia_png_check_fp_string +3149:skia_png_check_fp_number +3150:skia_png_app_warning +3151:skia_png_app_error +3152:skia::textlayout::\28anonymous\20namespace\29::intersected\28skia::textlayout::SkRange\20const&\2c\20skia::textlayout::SkRange\20const&\29 +3153:skia::textlayout::\28anonymous\20namespace\29::draw_line_as_rect\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\2c\20float\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +3154:skia::textlayout::TypefaceFontStyleSet::createTypeface\28int\29 +3155:skia::textlayout::TextStyle::setForegroundColor\28SkPaint\29 +3156:skia::textlayout::TextStyle::setBackgroundColor\28SkPaint\29 +3157:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29 +3158:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::$_0::operator\28\29\28sk_sp\2c\20sk_sp\29\20const +3159:skia::textlayout::TextLine::iterateThroughSingleRunByStyles\28skia::textlayout::TextLine::TextAdjustment\2c\20skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::StyleType\2c\20std::__2::function\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\20const&\29\20const::$_0::operator\28\29\28skia::textlayout::SkRange\2c\20float\29\20const +3160:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const +3161:skia::textlayout::TextBox&\20std::__2::vector>::emplace_back\28SkRect&\2c\20skia::textlayout::TextDirection&&\29 +3162:skia::textlayout::StrutStyle::StrutStyle\28skia::textlayout::StrutStyle\20const&\29 +3163:skia::textlayout::Run::isResolved\28\29\20const +3164:skia::textlayout::Run::copyTo\28SkTextBlobBuilder&\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +3165:skia::textlayout::Run::calculateWidth\28unsigned\20long\2c\20unsigned\20long\2c\20bool\29\20const +3166:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle&&\29 +3167:skia::textlayout::ParagraphImpl::getGlyphPositionAtCoordinate\28float\2c\20float\29 +3168:skia::textlayout::ParagraphImpl::findNextGraphemeBoundary\28unsigned\20long\29\20const +3169:skia::textlayout::ParagraphImpl::findAllBlocks\28skia::textlayout::SkRange\29 +3170:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +3171:skia::textlayout::ParagraphImpl::buildClusterTable\28\29 +3172:skia::textlayout::ParagraphCacheKey::operator==\28skia::textlayout::ParagraphCacheKey\20const&\29\20const +3173:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +3174:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29 +3175:skia::textlayout::ParagraphBuilderImpl::endRunIfNeeded\28\29 +3176:skia::textlayout::OneLineShaper::~OneLineShaper\28\29 +3177:skia::textlayout::LineMetrics::LineMetrics\28\29 +3178:skia::textlayout::FontCollection::FamilyKey::~FamilyKey\28\29 +3179:skia::textlayout::Cluster::isSoftBreak\28\29\20const +3180:skia::textlayout::Block::Block\28skia::textlayout::Block\20const&\29 +3181:skgpu::ganesh::\28anonymous\20namespace\29::add_quad_segment\28SkPoint\20const*\2c\20skia_private::TArray*\29 +3182:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::Entry::Entry\28skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::Entry&&\29 +3183:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +3184:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::programInfo\28\29 +3185:skgpu::ganesh::SurfaceFillContext::internalClear\28SkIRect\20const*\2c\20std::__2::array\2c\20bool\29 +3186:skgpu::ganesh::SurfaceFillContext::discard\28\29 +3187:skgpu::ganesh::SurfaceFillContext::addOp\28std::__2::unique_ptr>\29 +3188:skgpu::ganesh::SurfaceDrawContext::wrapsVkSecondaryCB\28\29\20const +3189:skgpu::ganesh::SurfaceDrawContext::stencilRect\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const*\29 +3190:skgpu::ganesh::SurfaceDrawContext::fillQuadWithEdgeAA\28GrClip\20const*\2c\20GrPaint&&\2c\20GrQuadAAFlags\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkPoint\20const*\29 +3191:skgpu::ganesh::SurfaceDrawContext::drawPath\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrStyle\20const&\29 +3192:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29 +3193:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +3194:skgpu::ganesh::SurfaceContext::rescale\28GrImageInfo\20const&\2c\20GrSurfaceOrigin\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +3195:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29::$_0::operator\28\29\28GrSurfaceProxyView\2c\20SkIRect\29\20const +3196:skgpu::ganesh::SurfaceContext::SurfaceContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +3197:skgpu::ganesh::SmallPathShapeDataKey::operator==\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29\20const +3198:skgpu::ganesh::QuadPerEdgeAA::MinColorType\28SkRGBA4f<\28SkAlphaType\292>\29 +3199:skgpu::ganesh::PathTessellator::~PathTessellator\28\29 +3200:skgpu::ganesh::PathCurveTessellator::draw\28GrOpFlushState*\29\20const +3201:skgpu::ganesh::OpsTask::~OpsTask\28\29 +3202:skgpu::ganesh::OpsTask::recordOp\28std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\2c\20GrCaps\20const&\29 +3203:skgpu::ganesh::FillRectOp::MakeNonAARect\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +3204:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::can_use_hw_derivatives_with_coverage\28skvx::Vec<2\2c\20float>\20const&\2c\20skvx::Vec<2\2c\20float>\20const&\29 +3205:skgpu::ganesh::FillRRectOp::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +3206:skgpu::ganesh::Device::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +3207:skgpu::ganesh::Device::drawImageQuadDirect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +3208:skgpu::ganesh::Device::Make\28std::__2::unique_ptr>\2c\20SkAlphaType\2c\20skgpu::ganesh::Device::InitContents\29 +3209:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::setup_dashed_rect\28SkRect\20const&\2c\20skgpu::VertexWriter&\2c\20SkMatrix\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashCap\29 +3210:skgpu::ganesh::ClipStack::~ClipStack\28\29 +3211:skgpu::ganesh::ClipStack::writableSaveRecord\28bool*\29 +3212:skgpu::ganesh::ClipStack::end\28\29\20const +3213:skgpu::ganesh::ClipStack::clip\28skgpu::ganesh::ClipStack::RawElement&&\29 +3214:skgpu::ganesh::ClipStack::clipState\28\29\20const +3215:skgpu::ganesh::ClipStack::SaveRecord::invalidateMasks\28GrProxyProvider*\2c\20SkTBlockList*\29 +3216:skgpu::ganesh::ClipStack::SaveRecord::genID\28\29\20const +3217:skgpu::ganesh::ClipStack::RawElement::operator=\28skgpu::ganesh::ClipStack::RawElement&&\29 +3218:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::SaveRecord\20const&\29\20const +3219:skgpu::ganesh::ClipStack::RawElement::RawElement\28SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\2c\20SkClipOp\29 +3220:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +3221:skgpu::Swizzle::apply\28SkRasterPipeline*\29\20const +3222:skgpu::Swizzle::applyTo\28std::__2::array\29\20const +3223:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29 +3224:skgpu::ScratchKey::GenerateResourceType\28\29 +3225:skgpu::RectanizerSkyline::reset\28\29 +3226:skgpu::Plot::addSubImage\28int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +3227:skgpu::BlurSigmaRadius\28float\29 +3228:sk_sp::~sk_sp\28\29 +3229:sk_sp::reset\28SkMeshSpecification*\29 +3230:sk_sp::operator=\28sk_sp&&\29 +3231:sk_sp::reset\28GrTextureProxy*\29 +3232:sk_sp::reset\28GrTexture*\29 +3233:sk_sp::operator=\28sk_sp&&\29 +3234:sk_sp::reset\28GrCpuBuffer*\29 +3235:sk_sp&\20sk_sp::operator=\28sk_sp&&\29 +3236:sk_sp&\20sk_sp::operator=\28sk_sp\20const&\29 +3237:skData_getSize +3238:sift +3239:set_initial_texture_params\28GrGLInterface\20const*\2c\20GrGLCaps\20const&\2c\20unsigned\20int\29 +3240:setRegionCheck\28SkRegion*\2c\20SkRegion\20const&\29 +3241:setLevelsOutsideIsolates\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\29 +3242:sect_with_vertical\28SkPoint\20const*\2c\20float\29 +3243:sampler_key\28GrTextureType\2c\20skgpu::Swizzle\20const&\2c\20GrCaps\20const&\29 +3244:round\28SkPoint*\29 +3245:read_color_line +3246:quick_inverse\28int\29 +3247:quad_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3248:psh_globals_set_scale +3249:ps_tofixedarray +3250:ps_parser_skip_PS_token +3251:ps_mask_test_bit +3252:ps_mask_table_alloc +3253:ps_mask_ensure +3254:ps_dimension_reset_mask +3255:ps_builder_init +3256:ps_builder_done +3257:pow +3258:portable::uniform_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3259:portable::parametric_k\28skcms_TransferFunction\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20std::byte*&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\29::'lambda'\28float\29::operator\28\29\28float\29\20const +3260:portable::hsl_to_rgb_k\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20std::byte*&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\29::'lambda'\28float\29::operator\28\29\28float\29\20const +3261:portable::gamma__k\28float\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20std::byte*&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\29::'lambda'\28float\29::operator\28\29\28float\29\20const +3262:portable::PQish_k\28skcms_TransferFunction\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20std::byte*&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\29::'lambda'\28float\29::operator\28\29\28float\29\20const +3263:portable::HLGish_k\28skcms_TransferFunction\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20std::byte*&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\29::'lambda'\28float\29::operator\28\29\28float\29\20const +3264:portable::HLGinvish_k\28skcms_TransferFunction\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20std::byte*&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\2c\20float&\29::'lambda'\28float\29::operator\28\29\28float\29\20const +3265:points_are_colinear_and_b_is_middle\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float*\29 +3266:png_zlib_inflate +3267:png_inflate_read +3268:png_inflate_claim +3269:png_build_8bit_table +3270:png_build_16bit_table +3271:picture_approximateBytesUsed +3272:path_addOval +3273:paragraph_dispose +3274:operator==\28SkPath\20const&\2c\20SkPath\20const&\29 +3275:operator!=\28SkString\20const&\2c\20SkString\20const&\29 +3276:operator!=\28SkIRect\20const&\2c\20SkIRect\20const&\29 +3277:normalize +3278:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::glyphCount\28\29\20const +3279:non-virtual\20thunk\20to\20GrOpFlushState::deferredUploadTarget\28\29 +3280:nextafterf +3281:move_nearby\28SkOpContourHead*\29 +3282:make_unpremul_effect\28std::__2::unique_ptr>\29 +3283:machine_index_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>>::operator==\28machine_index_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>>\20const&\29\20const +3284:long\20std::__2::__libcpp_atomic_refcount_decrement\5babi:v160004\5d\28long&\29 +3285:long\20const&\20std::__2::min\5babi:v160004\5d\28long\20const&\2c\20long\20const&\29 +3286:log1p +3287:load_truetype_glyph +3288:load\28unsigned\20char\20const*\2c\20int\2c\20void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\29 +3289:line_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3290:lineMetrics_getStartIndex +3291:just_solid_color\28SkPaint\20const&\29 +3292:is_reflex_vertex\28SkPoint\20const*\2c\20int\2c\20float\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +3293:inner_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +3294:inflate_table +3295:hb_vector_t::push\28\29 +3296:hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +3297:hb_utf8_t::next\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20int*\2c\20unsigned\20int\29 +3298:hb_shape_plan_destroy +3299:hb_serialize_context_t::object_t::hash\28\29\20const +3300:hb_script_get_horizontal_direction +3301:hb_pool_t::alloc\28\29 +3302:hb_paint_funcs_t::push_clip_rectangle\28void*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3303:hb_paint_funcs_t::push_clip_glyph\28void*\2c\20unsigned\20int\2c\20hb_font_t*\29 +3304:hb_paint_funcs_t::image\28void*\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\2c\20hb_glyph_extents_t*\29 +3305:hb_paint_funcs_t::color\28void*\2c\20int\2c\20unsigned\20int\29 +3306:hb_paint_extents_context_t::push_clip\28hb_extents_t\29 +3307:hb_ot_map_t::get_mask\28unsigned\20int\2c\20unsigned\20int*\29\20const +3308:hb_lazy_loader_t\2c\20hb_face_t\2c\202u\2c\20hb_blob_t>::get\28\29\20const +3309:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get\28\29\20const +3310:hb_lazy_loader_t\2c\20hb_face_t\2c\201u\2c\20hb_blob_t>::get\28\29\20const +3311:hb_lazy_loader_t\2c\20hb_face_t\2c\2018u\2c\20hb_blob_t>::get\28\29\20const +3312:hb_lazy_loader_t\2c\20hb_face_t\2c\203u\2c\20OT::cmap_accelerator_t>::get_stored\28\29\20const +3313:hb_iter_t\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>\2c\20OT::HBGlyphID16&>::end\28\29\20const +3314:hb_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>\2c\20hb_pair_t>::operator++\28\29\20& +3315:hb_hashmap_t::item_t::operator==\28hb_serialize_context_t::object_t\20const*\20const&\29\20const +3316:hb_font_t::mults_changed\28\29 +3317:hb_font_t::has_glyph_h_origin_func\28\29 +3318:hb_font_t::has_func\28unsigned\20int\29 +3319:hb_font_t::get_nominal_glyphs\28unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\29 +3320:hb_font_t::get_glyph_v_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +3321:hb_font_t::get_glyph_v_advances\28unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\29 +3322:hb_font_t::get_glyph_h_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +3323:hb_font_t::get_glyph_h_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +3324:hb_font_t::get_glyph_h_advances\28unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\29 +3325:hb_font_t::get_glyph_contour_point_for_origin\28unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20int*\2c\20int*\29 +3326:hb_font_funcs_destroy +3327:hb_draw_cubic_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +3328:hb_buffer_t::output_info\28hb_glyph_info_t\20const&\29 +3329:hb_buffer_t::digest\28\29\20const +3330:hb_buffer_t::_infos_set_glyph_flags\28hb_glyph_info_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3331:hb_buffer_t::_infos_find_min_cluster\28hb_glyph_info_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3332:hb_buffer_set_length +3333:hb_buffer_create +3334:hb_blob_ptr_t::destroy\28\29 +3335:haircubic\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkRect\20const*\2c\20SkRect\20const*\2c\20SkBlitter*\2c\20int\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +3336:gray_render_line +3337:gl_target_to_gr_target\28unsigned\20int\29 +3338:gl_target_to_binding_index\28unsigned\20int\29 +3339:get_vendor\28char\20const*\29 +3340:get_renderer\28char\20const*\2c\20GrGLExtensions\20const&\29 +3341:get_joining_type\28unsigned\20int\2c\20hb_unicode_general_category_t\29 +3342:get_child_table_pointer +3343:generate_distance_field_from_image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\29 +3344:gaussianIntegral\28float\29 +3345:ft_var_readpackeddeltas +3346:ft_var_done_item_variation_store +3347:ft_glyphslot_alloc_bitmap +3348:ft_face_get_mm_service +3349:freelocale +3350:fputc +3351:fp_barrierf +3352:float*\20SkArenaAlloc::makeArray\28unsigned\20long\29 +3353:fixN0c\28BracketData*\2c\20int\2c\20int\2c\20unsigned\20char\29 +3354:filter_to_gl_min_filter\28SkFilterMode\2c\20SkMipmapMode\29 +3355:emscripten_dispatch_to_thread_ +3356:emscripten_async_run_in_main_thread +3357:em_task_queue_execute +3358:em_queued_call_malloc +3359:dquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3360:do_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +3361:do_anti_hairline\28int\2c\20int\2c\20int\2c\20int\2c\20SkIRect\20const*\2c\20SkBlitter*\29 +3362:dline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3363:destroy_face +3364:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20skgpu::ganesh::DashOp::AAMode\2c\20SkMatrix\20const&\2c\20bool\29::$_0>\28skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Make\28SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::ganesh::DashOp::AAMode\2c\20SkMatrix\20const&\2c\20bool\29::$_0&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3365:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrCaps\20const&\2c\20GrSurfaceProxyView\20const&\2c\20bool&\2c\20GrPipeline*&\2c\20GrUserStencilSettings\20const*&&\2c\20\28anonymous\20namespace\29::DrawAtlasPathShader*&\2c\20GrPrimitiveType&&\2c\20GrXferBarrierFlags&\2c\20GrLoadOp&\29::'lambda'\28void*\29>\28GrProgramInfo&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3366:dcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3367:dconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3368:cubic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3369:conic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3370:cleanup_shaders\28GrGLGpu*\2c\20SkTDArray\20const&\29 +3371:chop_mono_cubic_at_y\28SkPoint*\2c\20float\2c\20SkPoint*\29 +3372:check_inverse_on_empty_return\28SkRegion*\2c\20SkPath\20const&\2c\20SkRegion\20const&\29 +3373:check_intersection\28SkAnalyticEdge\20const*\2c\20int\2c\20int*\29 +3374:char\20const*\20std::__2::find\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char\20const&\29 +3375:cff_parse_real +3376:cff_parse_integer +3377:cff_index_read_offset +3378:cff_index_get_pointers +3379:cff_index_access_element +3380:cff2_path_param_t::move_to\28CFF::point_t\20const&\29 +3381:cff1_path_param_t::move_to\28CFF::point_t\20const&\29 +3382:cf2_hintmap_map +3383:cf2_glyphpath_pushPrevElem +3384:cf2_glyphpath_computeOffset +3385:cf2_glyphpath_closeOpenPath +3386:can_layer_be_drawn_as_sprite\28SkMatrix\20const&\2c\20SkISize\20const&\29 +3387:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_1::operator\28\29\28int\29\20const +3388:calc_dot_cross_cubic\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +3389:cached_mask_gamma\28float\2c\20float\2c\20float\29 +3390:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3391:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3392:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3393:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3394:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3395:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3396:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3397:byn$mgfn-shared$void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +3398:byn$mgfn-shared$void\20GrGLProgramDataManager::setMatrices<2>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +3399:byn$mgfn-shared$std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +3400:byn$mgfn-shared$std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +3401:byn$mgfn-shared$std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3402:byn$mgfn-shared$std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +3403:byn$mgfn-shared$std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +3404:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +3405:byn$mgfn-shared$skia_private::THashMap\2c\20SkGoodHash>::find\28int\20const&\29\20const +3406:byn$mgfn-shared$skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3407:byn$mgfn-shared$skia_private::TArray<\28anonymous\20namespace\29::DrawAtlasOpImpl::Geometry\2c\20true>::checkRealloc\28int\2c\20double\29 +3408:byn$mgfn-shared$skia_private::TArray::checkRealloc\28int\2c\20double\29 +3409:byn$mgfn-shared$skia_private::AutoSTMalloc<4ul\2c\20int\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +3410:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3411:byn$mgfn-shared$skgpu::Swizzle::RGBA\28\29 +3412:byn$mgfn-shared$resource_cache_mutex\28\29 +3413:byn$mgfn-shared$portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3414:byn$mgfn-shared$portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3415:byn$mgfn-shared$portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3416:byn$mgfn-shared$portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3417:byn$mgfn-shared$portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3418:byn$mgfn-shared$portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3419:byn$mgfn-shared$portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3420:byn$mgfn-shared$portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3421:byn$mgfn-shared$portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3422:byn$mgfn-shared$portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3423:byn$mgfn-shared$portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3424:byn$mgfn-shared$portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3425:byn$mgfn-shared$portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3426:byn$mgfn-shared$portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3427:byn$mgfn-shared$portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3428:byn$mgfn-shared$portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3429:byn$mgfn-shared$portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3430:byn$mgfn-shared$portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3431:byn$mgfn-shared$portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3432:byn$mgfn-shared$portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3433:byn$mgfn-shared$portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3434:byn$mgfn-shared$portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3435:byn$mgfn-shared$portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3436:byn$mgfn-shared$portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3437:byn$mgfn-shared$portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3438:byn$mgfn-shared$portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3439:byn$mgfn-shared$portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3440:byn$mgfn-shared$portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3441:byn$mgfn-shared$portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3442:byn$mgfn-shared$portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3443:byn$mgfn-shared$portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3444:byn$mgfn-shared$portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3445:byn$mgfn-shared$portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3446:byn$mgfn-shared$portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3447:byn$mgfn-shared$portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3448:byn$mgfn-shared$portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3449:byn$mgfn-shared$portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3450:byn$mgfn-shared$portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3451:byn$mgfn-shared$portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3452:byn$mgfn-shared$paint_setColorFilter +3453:byn$mgfn-shared$SkTBlockList::pushItem\28\29 +3454:byn$mgfn-shared$SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +3455:byn$mgfn-shared$Round_To_Grid +3456:byn$mgfn-shared$LineQuadraticIntersections::addLineNearEndPoints\28\29 +3457:byn$mgfn-shared$GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +3458:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +3459:byn$mgfn-shared$DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3460:bracketProcessBoundary\28BracketData*\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +3461:bracketAddOpening\28BracketData*\2c\20char16_t\2c\20int\29 +3462:bool\20std::__2::equal\5babi:v160004\5d\28float\20const*\2c\20float\20const*\2c\20float\20const*\2c\20std::__2::__equal_to\29 +3463:bool\20OT::would_match_input>\28OT::hb_would_apply_context_t*\2c\20unsigned\20int\2c\20OT::IntType\20const*\2c\20bool\20\28*\29\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29\2c\20void\20const*\29 +3464:bool\20OT::match_lookahead>\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20OT::IntType\20const*\2c\20bool\20\28*\29\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29\2c\20void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +3465:bool\20OT::match_backtrack>\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20OT::IntType\20const*\2c\20bool\20\28*\29\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29\2c\20void\20const*\2c\20unsigned\20int*\29 +3466:bool\20OT::glyf_impl::Glyph::get_points\28hb_font_t*\2c\20OT::glyf_accelerator_t\20const&\2c\20contour_point_vector_t&\2c\20contour_point_vector_t*\2c\20head_maxp_info_t*\2c\20unsigned\20int*\2c\20bool\2c\20bool\2c\20bool\2c\20hb_array_t\2c\20hb_map_t*\2c\20unsigned\20int\2c\20unsigned\20int*\29\20const +3467:bool\20OT::glyf_accelerator_t::get_points\28hb_font_t*\2c\20unsigned\20int\2c\20OT::glyf_accelerator_t::points_aggregator_t\29\20const +3468:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3469:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3470:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3471:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3472:blitrect\28SkBlitter*\2c\20SkIRect\20const&\29 +3473:blit_single_alpha\28AdditiveBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +3474:blit_aaa_trapezoid_row\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +3475:atan +3476:append_index_uv_varyings\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20char\20const*\2c\20char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVarying*\2c\20GrGLSLVarying*\29 +3477:antifillrect\28SkRect\20const&\2c\20SkBlitter*\29 +3478:af_property_get_face_globals +3479:af_latin_hints_link_segments +3480:af_latin_compute_stem_width +3481:af_latin_align_linked_edge +3482:af_iup_interp +3483:af_glyph_hints_save +3484:af_glyph_hints_done +3485:af_cjk_align_linked_edge +3486:add_quad\28SkPoint\20const*\2c\20skia_private::TArray*\29 +3487:acosf +3488:acos +3489:aaa_fill_path\28SkPath\20const&\2c\20SkIRect\20const&\2c\20AdditiveBlitter*\2c\20int\2c\20int\2c\20bool\2c\20bool\2c\20bool\29 +3490:a_swap +3491:a_store +3492:a_cas_p.8820 +3493:_iup_worker_interpolate +3494:_hb_head_t\29&>\28fp\29\2c\20std::forward>\28fp0\29\2c\20\28hb_priority<16u>\29\28\29\29\29>::type\20$_14::operator\28\29\29&\2c\20hb_pair_t>\28find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29&\2c\20hb_pair_t&&\29\20const +3495:_hb_font_adopt_var_coords\28hb_font_t*\2c\20int*\2c\20float*\2c\20unsigned\20int\29 +3496:_get_path\28OT::cff1::accelerator_t\20const*\2c\20hb_font_t*\2c\20unsigned\20int\2c\20hb_draw_session_t&\2c\20bool\2c\20CFF::point_t*\29 +3497:_get_bounds\28OT::cff1::accelerator_t\20const*\2c\20unsigned\20int\2c\20bounds_t&\2c\20bool\29 +3498:__trunctfdf2 +3499:__towrite +3500:__toread +3501:__tl_unlock +3502:__tl_lock +3503:__timedwait_cp +3504:__subtf3 +3505:__strchrnul +3506:__rem_pio2f +3507:__rem_pio2 +3508:__pthread_mutex_trylock +3509:__overflow +3510:__math_uflowf +3511:__math_oflowf +3512:__fwritex +3513:__cxxabiv1::__class_type_info::process_static_type_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\29\20const +3514:__cxxabiv1::__class_type_info::process_static_type_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\29\20const +3515:__cxxabiv1::__class_type_info::process_found_base_class\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +3516:__cxxabiv1::__base_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +3517:\28anonymous\20namespace\29::split_conic\28SkPoint\20const*\2c\20SkConic*\2c\20float\29 +3518:\28anonymous\20namespace\29::single_pass_shape\28GrStyledShape\20const&\29 +3519:\28anonymous\20namespace\29::shift_left\28skvx::Vec<4\2c\20float>\20const&\2c\20int\29 +3520:\28anonymous\20namespace\29::shape_contains_rect\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20bool\29 +3521:\28anonymous\20namespace\29::set_gl_stencil\28GrGLInterface\20const*\2c\20GrStencilSettings::Face\20const&\2c\20unsigned\20int\29 +3522:\28anonymous\20namespace\29::make_blend\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\2c\20std::__2::optional\2c\20bool\29::$_0::operator\28\29\28sk_sp\29\20const +3523:\28anonymous\20namespace\29::get_tile_count\28SkIRect\20const&\2c\20int\29 +3524:\28anonymous\20namespace\29::generateGlyphPathStatic\28FT_FaceRec_*\2c\20SkPath*\29 +3525:\28anonymous\20namespace\29::generateFacePathCOLRv1\28FT_FaceRec_*\2c\20unsigned\20short\2c\20SkPath*\29 +3526:\28anonymous\20namespace\29::gather_lines_and_quads\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\29::$_0::operator\28\29\28SkPoint\20const*\2c\20bool\29\20const +3527:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads_with_constraint\28SkPoint\20const*\2c\20float\2c\20SkPathFirstDirection\2c\20skia_private::TArray*\2c\20int\29 +3528:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\2c\20int\2c\20bool\2c\20bool\29 +3529:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const +3530:\28anonymous\20namespace\29::calculate_colors\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20skgpu::MaskFormat\2c\20GrPaint*\29 +3531:\28anonymous\20namespace\29::bloat_quad\28SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkMatrix\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +3532:\28anonymous\20namespace\29::TriangulatingPathOp::CreateMesh\28GrMeshDrawTarget*\2c\20sk_sp\2c\20int\2c\20int\29 +3533:\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29.1 +3534:\28anonymous\20namespace\29::TransformedMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +3535:\28anonymous\20namespace\29::TransformedMaskSubRun::glyphs\28\29\20const +3536:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29 +3537:\28anonymous\20namespace\29::SkMorphologyImageFilter::radii\28skif::Mapping\20const&\29\20const +3538:\28anonymous\20namespace\29::SkFTGeometrySink::goingTo\28FT_Vector_\20const*\29 +3539:\28anonymous\20namespace\29::SkCropImageFilter::cropRect\28skif::Mapping\20const&\29\20const +3540:\28anonymous\20namespace\29::ShapedRun::~ShapedRun\28\29 +3541:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +3542:\28anonymous\20namespace\29::PathSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +3543:\28anonymous\20namespace\29::MemoryPoolAccessor::pool\28\29\20const +3544:\28anonymous\20namespace\29::DrawAtlasOpImpl::visitProxies\28std::__2::function\20const&\29\20const +3545:\28anonymous\20namespace\29::DrawAtlasOpImpl::programInfo\28\29 +3546:\28anonymous\20namespace\29::DrawAtlasOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +3547:TT_Vary_Apply_Glyph_Deltas +3548:TT_Set_Var_Design +3549:TT_Get_VMetrics +3550:SkWriter32::writeRegion\28SkRegion\20const&\29 +3551:SkVertices::Sizes::Sizes\28SkVertices::Desc\20const&\29 +3552:SkVertices::MakeCopy\28SkVertices::VertexMode\2c\20int\2c\20SkPoint\20const*\2c\20SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20short\20const*\29 +3553:SkVertices::Builder::~Builder\28\29 +3554:SkVertices::Builder::detach\28\29 +3555:SkUnitScalarClampToByte\28float\29 +3556:SkUTF::ToUTF16\28int\2c\20unsigned\20short*\29 +3557:SkTypeface_FreeType::~SkTypeface_FreeType\28\29 +3558:SkTypeface_FreeType::Scanner::GetAxes\28FT_FaceRec_*\2c\20skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>*\29 +3559:SkTreatAsSprite\28SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkSamplingOptions\20const&\2c\20bool\29 +3560:SkTextBlobBuilder::updateDeferredBounds\28\29 +3561:SkTextBlobBuilder::allocInternal\28SkFont\20const&\2c\20SkTextBlob::GlyphPositioning\2c\20int\2c\20int\2c\20SkPoint\2c\20SkRect\20const*\29 +3562:SkTextBlob::RunRecord::textSizePtr\28\29\20const +3563:SkTSpan::markCoincident\28\29 +3564:SkTSect::markSpanGone\28SkTSpan*\29 +3565:SkTSect::computePerpendiculars\28SkTSect*\2c\20SkTSpan*\2c\20SkTSpan*\29 +3566:SkTMultiMap::insert\28skgpu::ScratchKey\20const&\2c\20GrGpuResource*\29 +3567:SkTDStorage::moveTail\28int\2c\20int\2c\20int\29 +3568:SkTDStorage::calculateSizeOrDie\28int\29 +3569:SkTDArray::append\28int\29 +3570:SkTDArray::append\28\29 +3571:SkTConic::hullIntersects\28SkDConic\20const&\2c\20bool*\29\20const +3572:SkTBlockList::pop_back\28\29 +3573:SkSurface_Base::~SkSurface_Base\28\29 +3574:SkSurface_Base::aboutToDraw\28SkSurface::ContentChangeMode\29 +3575:SkStrokeRec::init\28SkPaint\20const&\2c\20SkPaint::Style\2c\20float\29 +3576:SkStrokeRec::getInflationRadius\28\29\20const +3577:SkString::printVAList\28char\20const*\2c\20void*\29 +3578:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec&&\29 +3579:SkStrikeSpec::MakeWithNoDevice\28SkFont\20const&\2c\20SkPaint\20const*\29 +3580:SkStrikeSpec::MakePath\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\29 +3581:SkStrikeCache::findOrCreateStrike\28SkStrikeSpec\20const&\29 +3582:SkStrike::prepareForPath\28SkGlyph*\29 +3583:SkSpriteBlitter::SkSpriteBlitter\28SkPixmap\20const&\29 +3584:SkSpecialImage::~SkSpecialImage\28\29 +3585:SkShaper::TrivialRunIterator::endOfCurrentRun\28\29\20const +3586:SkShaper::TrivialRunIterator::consume\28\29 +3587:SkShaper::TrivialRunIterator::atEnd\28\29\20const +3588:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29 +3589:SkShaders::MatrixRec::totalMatrix\28\29\20const +3590:SkShaders::MatrixRec::MatrixRec\28SkMatrix\20const&\29 +3591:SkShaderUtils::GLSLPrettyPrint::tabString\28\29 +3592:SkShaderUtils::GLSLPrettyPrint::appendChar\28char\29 +3593:SkScanClipper::~SkScanClipper\28\29 +3594:SkScanClipper::SkScanClipper\28SkBlitter*\2c\20SkRegion\20const*\2c\20SkIRect\20const&\2c\20bool\2c\20bool\29 +3595:SkScan::HairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +3596:SkScan::FillTriangle\28SkPoint\20const*\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3597:SkScan::FillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3598:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3599:SkScan::AntiHairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3600:SkScan::AntiHairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +3601:SkScan::AntiFillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +3602:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\2c\20bool\29 +3603:SkScalerContext_FreeType_Base::drawSVGGlyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +3604:SkScalerContext_FreeType::updateGlyphBoundsIfSubpixel\28SkGlyph\20const&\2c\20SkRect*\2c\20bool\29 +3605:SkScalerContext::~SkScalerContext\28\29 +3606:SkSTArenaAlloc<2048ul>::SkSTArenaAlloc\28unsigned\20long\29 +3607:SkSL::type_is_valid_for_coords\28SkSL::Type\20const&\29 +3608:SkSL::simplify_negation\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\29 +3609:SkSL::simplify_matrix_multiplication\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3610:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +3611:SkSL::replace_empty_with_nop\28std::__2::unique_ptr>\2c\20bool\29 +3612:SkSL::optimize_constructor_swizzle\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ConstructorCompound\20const&\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29::ReorderedArgument::ReorderedArgument\28ReorderedArgument&&\29 +3613:SkSL::find_generic_index\28SkSL::Type\20const&\2c\20SkSL::Type\20const&\2c\20bool\29 +3614:SkSL::evaluate_intrinsic_numeric\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\29 +3615:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29 +3616:SkSL::coalesce_n_way_vector\28SkSL::Expression\20const*\2c\20SkSL::Expression\20const*\2c\20double\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\2c\20double\20\28*\29\28double\29\29 +3617:SkSL::check_main_signature\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20skia_private::TArray>\2c\20true>&\29::$_0::operator\28\29\28int\29\20const +3618:SkSL::build_argument_type_list\28SkSpan>\20const>\29 +3619:SkSL::\28anonymous\20namespace\29::SwitchCaseContainsExit::visitStatement\28SkSL::Statement\20const&\29 +3620:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::returnsInputAlpha\28SkSL::Expression\20const&\29 +3621:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +3622:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29 +3623:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29 +3624:SkSL::\28anonymous\20namespace\29::ConstantExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +3625:SkSL::Variable::~Variable\28\29 +3626:SkSL::Variable::Make\28SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20std::__2::basic_string_view>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20bool\2c\20SkSL::VariableStorage\29 +3627:SkSL::Variable::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20SkSL::VariableStorage\29 +3628:SkSL::VarDeclaration::~VarDeclaration\28\29 +3629:SkSL::VarDeclaration::Make\28SkSL::Context\20const&\2c\20SkSL::Variable*\2c\20SkSL::Type\20const*\2c\20int\2c\20std::__2::unique_ptr>\29 +3630:SkSL::Type::isStorageTexture\28\29\20const +3631:SkSL::Type::convertArraySize\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20long\20long\29\20const +3632:SkSL::Type::MakeSamplerType\28char\20const*\2c\20SkSL::Type\20const&\29 +3633:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29 +3634:SkSL::Transform::EliminateDeadGlobalVariables\28SkSL::Program&\29::$_2::operator\28\29\28SkSL::ProgramElement\20const&\29\20const +3635:SkSL::TernaryExpression::~TernaryExpression\28\29 +3636:SkSL::SymbolTable::WrapIfBuiltin\28std::__2::shared_ptr\29 +3637:SkSL::SwitchStatement::~SwitchStatement\28\29 +3638:SkSL::StructType::slotCount\28\29\20const +3639:SkSL::SingleArgumentConstructor::~SingleArgumentConstructor\28\29 +3640:SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +3641:SkSL::RP::SlotManager::createSlots\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20bool\29 +3642:SkSL::RP::SlotManager::addSlotDebugInfoForGroup\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20int*\2c\20bool\29 +3643:SkSL::RP::Program::makeStages\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20SkSpan\2c\20SkSL::RP::Program::SlotData\20const&\29\20const::$_4::operator\28\29\28\29\20const +3644:SkSL::RP::Program::makeStages\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20SkSpan\2c\20SkSL::RP::Program::SlotData\20const&\29\20const::$_1::operator\28\29\28int\29\20const +3645:SkSL::RP::Program::appendCopySlotsMasked\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +3646:SkSL::RP::LValueSlice::~LValueSlice\28\29 +3647:SkSL::RP::Generator::pushTernaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +3648:SkSL::RP::Generator::pushStructuredComparison\28SkSL::RP::LValue*\2c\20SkSL::Operator\2c\20SkSL::RP::LValue*\2c\20SkSL::Type\20const&\29 +3649:SkSL::RP::Generator::pushPrefixExpression\28SkSL::Operator\2c\20SkSL::Expression\20const&\29 +3650:SkSL::RP::Generator::pushMatrixMultiply\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3651:SkSL::RP::Generator::pushAbsFloatIntrinsic\28int\29 +3652:SkSL::RP::Generator::popToSlotRangeUnmasked\28SkSL::RP::SlotRange\29 +3653:SkSL::RP::Generator::needsReturnMask\28SkSL::FunctionDefinition\20const*\29 +3654:SkSL::RP::Generator::needsFunctionResultSlots\28SkSL::FunctionDefinition\20const*\29 +3655:SkSL::RP::Generator::foldWithMultiOp\28SkSL::RP::BuilderOp\2c\20int\29 +3656:SkSL::RP::Generator::GetTypedOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +3657:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29 +3658:SkSL::RP::Builder::select\28int\29 +3659:SkSL::RP::Builder::push_uniform\28SkSL::RP::SlotRange\29 +3660:SkSL::RP::Builder::pop_loop_mask\28\29 +3661:SkSL::RP::Builder::pad_stack\28int\29 +3662:SkSL::RP::Builder::merge_condition_mask\28\29 +3663:SkSL::RP::Builder::branch_if_no_active_lanes_on_stack_top_equal\28int\2c\20int\29 +3664:SkSL::RP::AutoStack&\20std::__2::optional::emplace\5babi:v160004\5d\28SkSL::RP::Generator*&\29 +3665:SkSL::PipelineStage::PipelineStageCodeGenerator::modifierString\28SkSL::ModifierFlags\29 +3666:SkSL::PipelineStage::ConvertProgram\28SkSL::Program\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20SkSL::PipelineStage::Callbacks*\29 +3667:SkSL::Parser::unsizedArrayType\28SkSL::Type\20const*\2c\20SkSL::Position\29 +3668:SkSL::Parser::unaryExpression\28\29 +3669:SkSL::Parser::swizzle\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::basic_string_view>\2c\20SkSL::Position\29 +3670:SkSL::Parser::poison\28SkSL::Position\29 +3671:SkSL::Parser::checkIdentifier\28SkSL::Token*\29 +3672:SkSL::Parser::block\28\29 +3673:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29 +3674:SkSL::Parser::AutoSymbolTable::~AutoSymbolTable\28\29 +3675:SkSL::Parser::AutoSymbolTable::AutoSymbolTable\28SkSL::Parser*\29 +3676:SkSL::Operator::getBinaryPrecedence\28\29\20const +3677:SkSL::MultiArgumentConstructor::~MultiArgumentConstructor\28\29 +3678:SkSL::ModuleLoader::loadGPUModule\28SkSL::Compiler*\29 +3679:SkSL::ModifierFlags::checkPermittedFlags\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\29\20const +3680:SkSL::Mangler::uniqueName\28std::__2::basic_string_view>\2c\20SkSL::SymbolTable*\29 +3681:SkSL::LiteralType::slotType\28unsigned\20long\29\20const +3682:SkSL::Literal::MakeFloat\28SkSL::Position\2c\20float\2c\20SkSL::Type\20const*\29 +3683:SkSL::Literal::MakeBool\28SkSL::Position\2c\20bool\2c\20SkSL::Type\20const*\29 +3684:SkSL::Layout::checkPermittedLayout\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkEnumBitMask\29\20const +3685:SkSL::IfStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +3686:SkSL::IRHelpers::Binary\28std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29\20const +3687:SkSL::GlobalVarDeclaration::~GlobalVarDeclaration\28\29.1 +3688:SkSL::GlobalVarDeclaration::~GlobalVarDeclaration\28\29 +3689:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29 +3690:SkSL::GLSLCodeGenerator::writeLiteral\28SkSL::Literal\20const&\29 +3691:SkSL::GLSLCodeGenerator::writeFunctionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +3692:SkSL::GLSLCodeGenerator::shouldRewriteVoidTypedFunctions\28SkSL::FunctionDeclaration\20const*\29\20const +3693:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::~Finalizer\28\29 +3694:SkSL::ForStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::shared_ptr\29 +3695:SkSL::Expression::isIncomplete\28SkSL::Context\20const&\29\20const +3696:SkSL::Expression::compareConstant\28SkSL::Expression\20const&\29\20const +3697:SkSL::DebugTracePriv::~DebugTracePriv\28\29 +3698:SkSL::ConstructorArrayCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +3699:SkSL::ConstructorArray::~ConstructorArray\28\29 +3700:SkSL::ConstantFolder::GetConstantValueOrNull\28SkSL::Expression\20const&\29 +3701:SkSL::Compiler::runInliner\28SkSL::Inliner*\2c\20std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20std::__2::shared_ptr\2c\20SkSL::ProgramUsage*\29 +3702:SkSL::Block::~Block\28\29 +3703:SkSL::Block::MakeBlock\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::shared_ptr\29 +3704:SkSL::BinaryExpression::~BinaryExpression\28\29 +3705:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\2c\20SkSL::Type\20const*\29 +3706:SkSL::Analysis::GetReturnComplexity\28SkSL::FunctionDefinition\20const&\29 +3707:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29 +3708:SkSL::Analysis::CallsColorTransformIntrinsics\28SkSL::Program\20const&\29 +3709:SkSL::AliasType::bitWidth\28\29\20const +3710:SkRuntimeShaderBuilder::~SkRuntimeShaderBuilder\28\29 +3711:SkRuntimeShaderBuilder::makeShader\28SkMatrix\20const*\29\20const +3712:SkRuntimeShaderBuilder::SkRuntimeShaderBuilder\28sk_sp\29 +3713:SkRuntimeShader::uniformData\28SkColorSpace\20const*\29\20const +3714:SkRuntimeEffectPriv::VarAsUniform\28SkSL::Variable\20const&\2c\20SkSL::Context\20const&\2c\20unsigned\20long*\29 +3715:SkRuntimeEffectBuilder::BuilderChild&\20SkRuntimeEffectBuilder::BuilderChild::operator=\28sk_sp\29 +3716:SkRuntimeEffect::makeShader\28sk_sp\2c\20SkSpan\2c\20SkMatrix\20const*\29\20const +3717:SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +3718:SkRuntimeEffect::MakeForShader\28SkString\29 +3719:SkRgnBuilder::~SkRgnBuilder\28\29 +3720:SkResourceCache::checkMessages\28\29 +3721:SkResourceCache::Key::operator==\28SkResourceCache::Key\20const&\29\20const +3722:SkRegion::translate\28int\2c\20int\2c\20SkRegion*\29\20const +3723:SkRegion::op\28SkRegion\20const&\2c\20SkIRect\20const&\2c\20SkRegion::Op\29 +3724:SkRegion::RunHead::findScanline\28int\29\20const +3725:SkRegion::RunHead::Alloc\28int\29 +3726:SkReduceOrder::Cubic\28SkPoint\20const*\2c\20SkPoint*\29 +3727:SkRectPriv::QuadContainsRect\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20float\29 +3728:SkRect::offset\28float\2c\20float\29 +3729:SkRect::inset\28float\2c\20float\29 +3730:SkRect*\20SkRecorder::copy\28SkRect\20const*\29 +3731:SkRecords::PreCachedPath::PreCachedPath\28SkPath\20const&\29 +3732:SkRecords::FillBounds::pushSaveBlock\28SkPaint\20const*\29 +3733:SkRecorder::~SkRecorder\28\29 +3734:SkRecordDraw\28SkRecord\20const&\2c\20SkCanvas*\2c\20SkPicture\20const*\20const*\2c\20SkDrawable*\20const*\2c\20int\2c\20SkBBoxHierarchy\20const*\2c\20SkPicture::AbortCallback*\29 +3735:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29 +3736:SkRasterPipelineBlitter::blitRectWithTrace\28int\2c\20int\2c\20int\2c\20int\2c\20bool\29 +3737:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29::$_0::operator\28\29\28int\2c\20SkRasterPipeline_MemoryCtx*\29\20const +3738:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +3739:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29 +3740:SkRasterPipeline::appendStore\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +3741:SkRasterClip::op\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkClipOp\2c\20bool\29 +3742:SkRasterClip::convertToAA\28\29 +3743:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29::$_1::operator\28\29\28SkRect\20const&\2c\20SkRRect::Corner\29\20const +3744:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29 +3745:SkRRect::scaleRadii\28\29 +3746:SkRRect::AreRectAndRadiiValid\28SkRect\20const&\2c\20SkPoint\20const*\29 +3747:SkRGBA4f<\28SkAlphaType\292>*\20SkArenaAlloc::makeArray>\28unsigned\20long\29 +3748:SkQuadraticEdge::updateQuadratic\28\29 +3749:SkQuadConstruct::initWithStart\28SkQuadConstruct*\29 +3750:SkQuadConstruct::initWithEnd\28SkQuadConstruct*\29 +3751:SkPointPriv::DistanceToLineBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPointPriv::Side*\29 +3752:SkPointPriv::CanNormalize\28float\2c\20float\29 +3753:SkPoint::setNormalize\28float\2c\20float\29 +3754:SkPoint::setLength\28float\2c\20float\2c\20float\29 +3755:SkPixmap::setColorSpace\28sk_sp\29 +3756:SkPixmap::rowBytesAsPixels\28\29\20const +3757:SkPixelRef::getGenerationID\28\29\20const +3758:SkPictureRecorder::~SkPictureRecorder\28\29 +3759:SkPictureRecorder::SkPictureRecorder\28\29 +3760:SkPicture::~SkPicture\28\29 +3761:SkPerlinNoiseShader::PaintingData::random\28\29 +3762:SkPathWriter::~SkPathWriter\28\29 +3763:SkPathWriter::update\28SkOpPtT\20const*\29 +3764:SkPathWriter::lineTo\28\29 +3765:SkPathWriter::SkPathWriter\28SkPath&\29 +3766:SkPathStroker::strokeCloseEnough\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20SkQuadConstruct*\29\20const +3767:SkPathStroker::setRayPts\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +3768:SkPathStroker::quadPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +3769:SkPathStroker::finishContour\28bool\2c\20bool\29 +3770:SkPathStroker::conicPerpRay\28SkConic\20const&\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +3771:SkPathPriv::IsRectContour\28SkPath\20const&\2c\20bool\2c\20int*\2c\20SkPoint\20const**\2c\20bool*\2c\20SkPathDirection*\2c\20SkRect*\29 +3772:SkPathPriv::AddGenIDChangeListener\28SkPath\20const&\2c\20sk_sp\29 +3773:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +3774:SkPathBuilder::quadTo\28SkPoint\2c\20SkPoint\29 +3775:SkPathBuilder::moveTo\28float\2c\20float\29 +3776:SkPathBuilder::cubicTo\28SkPoint\2c\20SkPoint\2c\20SkPoint\29 +3777:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3778:SkPath::setLastPt\28float\2c\20float\29 +3779:SkPath::reversePathTo\28SkPath\20const&\29 +3780:SkPath::rQuadTo\28float\2c\20float\2c\20float\2c\20float\29 +3781:SkPath::isLastContourClosed\28\29\20const +3782:SkPath::cubicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +3783:SkPath::contains\28float\2c\20float\29\20const +3784:SkPath::conicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +3785:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29::$_0::operator\28\29\28SkPoint\20const&\29\20const +3786:SkPath::addPath\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPath::AddPathMode\29 +3787:SkPath::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3788:SkPath::Rect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3789:SkPath::Iter::autoClose\28SkPoint*\29 +3790:SkPath*\20SkTLazy::init<>\28\29 +3791:SkPaintToGrPaintReplaceShader\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +3792:SkPaint::operator=\28SkPaint&&\29 +3793:SkPaint::getBlendMode_or\28SkBlendMode\29\20const +3794:SkOpSpanBase::checkForCollapsedCoincidence\28\29 +3795:SkOpSpan::setWindSum\28int\29 +3796:SkOpSegment::updateWindingReverse\28SkOpAngle\20const*\29 +3797:SkOpSegment::match\28SkOpPtT\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20SkPoint\20const&\29\20const +3798:SkOpSegment::markWinding\28SkOpSpan*\2c\20int\2c\20int\29 +3799:SkOpSegment::markAngle\28int\2c\20int\2c\20int\2c\20int\2c\20SkOpAngle\20const*\2c\20SkOpSpanBase**\29 +3800:SkOpSegment::markAngle\28int\2c\20int\2c\20SkOpAngle\20const*\2c\20SkOpSpanBase**\29 +3801:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20int\2c\20SkOpSpanBase**\29 +3802:SkOpSegment::markAllDone\28\29 +3803:SkOpSegment::dSlopeAtT\28double\29\20const +3804:SkOpSegment::addT\28double\2c\20SkPoint\20const&\29 +3805:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +3806:SkOpPtT::oppPrev\28SkOpPtT\20const*\29\20const +3807:SkOpPtT::contains\28SkOpSegment\20const*\29\20const +3808:SkOpPtT::Overlaps\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const**\2c\20SkOpPtT\20const**\29 +3809:SkOpEdgeBuilder::closeContour\28SkPoint\20const&\2c\20SkPoint\20const&\29 +3810:SkOpCoincidence::expand\28\29 +3811:SkOpCoincidence::Ordered\28SkOpSegment\20const*\2c\20SkOpSegment\20const*\29 +3812:SkOpCoincidence::Ordered\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +3813:SkOpAngle::orderable\28SkOpAngle*\29 +3814:SkOpAngle::lineOnOneSide\28SkDPoint\20const&\2c\20SkDVector\20const&\2c\20SkOpAngle\20const*\2c\20bool\29\20const +3815:SkOpAngle::computeSector\28\29 +3816:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\2c\20sk_sp\29 +3817:SkMipmapAccessor::SkMipmapAccessor\28SkImage_Base\20const*\2c\20SkMatrix\20const&\2c\20SkMipmapMode\29::$_0::operator\28\29\28\29\20const +3818:SkMessageBus::Get\28\29 +3819:SkMessageBus::Get\28\29 +3820:SkMessageBus::BufferFinishedMessage\2c\20GrDirectContext::DirectContextID\2c\20false>::Get\28\29 +3821:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +3822:SkMatrixPriv::InverseMapRect\28SkMatrix\20const&\2c\20SkRect*\2c\20SkRect\20const&\29 +3823:SkMatrix::setPolyToPoly\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20int\29 +3824:SkMatrix::preservesRightAngles\28float\29\20const +3825:SkMatrix::mapRectToQuad\28SkPoint*\2c\20SkRect\20const&\29\20const +3826:SkMatrix::mapRectScaleTranslate\28SkRect*\2c\20SkRect\20const&\29\20const +3827:SkMatrix::getMapXYProc\28\29\20const +3828:SkMaskBuilder::PrepareDestination\28int\2c\20int\2c\20SkMask\20const&\29 +3829:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\2c\20int\2c\20int\29 +3830:SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry::~Entry\28\29 +3831:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::reset\28\29 +3832:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry::~Entry\28\29 +3833:SkJSONWriter::separator\28bool\29 +3834:SkJSONWriter::multiline\28\29\20const +3835:SkJSONWriter::appendString\28char\20const*\2c\20unsigned\20long\29 +3836:SkJSONWriter::appendS32\28char\20const*\2c\20int\29 +3837:SkIntersections::intersectRay\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +3838:SkIntersections::intersectRay\28SkDLine\20const&\2c\20SkDLine\20const&\29 +3839:SkIntersections::intersectRay\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +3840:SkIntersections::intersectRay\28SkDConic\20const&\2c\20SkDLine\20const&\29 +3841:SkIntersections::computePoints\28SkDLine\20const&\2c\20int\29 +3842:SkIntersections::cleanUpParallelLines\28bool\29 +3843:SkImage_Raster::SkImage_Raster\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20int\29 +3844:SkImage_Lazy::~SkImage_Lazy\28\29.1 +3845:SkImage_Lazy::Validator::~Validator\28\29 +3846:SkImage_Lazy::Validator::Validator\28sk_sp\2c\20SkColorType\20const*\2c\20sk_sp\29 +3847:SkImage_Lazy::SkImage_Lazy\28SkImage_Lazy::Validator*\29 +3848:SkImage_Ganesh::~SkImage_Ganesh\28\29 +3849:SkImage_Ganesh::ProxyChooser::chooseProxy\28GrRecordingContext*\29 +3850:SkImage_Base::isYUVA\28\29\20const +3851:SkImage_Base::isGraphiteBacked\28\29\20const +3852:SkImageShader::MakeSubset\28sk_sp\2c\20SkRect\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +3853:SkImageShader::CubicResamplerMatrix\28float\2c\20float\29 +3854:SkImageInfo::minRowBytes64\28\29\20const +3855:SkImageInfo::makeAlphaType\28SkAlphaType\29\20const +3856:SkImageInfo::MakeN32Premul\28SkISize\29 +3857:SkImageGenerator::getPixels\28SkPixmap\20const&\29 +3858:SkImageFilters::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +3859:SkImageFilter_Base::affectsTransparentBlack\28\29\20const +3860:SkImageFilterCacheKey::operator==\28SkImageFilterCacheKey\20const&\29\20const +3861:SkImage::readPixels\28GrDirectContext*\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +3862:SkImage::peekPixels\28SkPixmap*\29\20const +3863:SkImage::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\29\20const +3864:SkIRect\20skif::Mapping::map\28SkIRect\20const&\2c\20SkMatrix\20const&\29 +3865:SkIRect::outset\28int\2c\20int\29 +3866:SkIRect::offset\28SkIPoint\20const&\29 +3867:SkIRect::containsNoEmptyCheck\28SkIRect\20const&\29\20const +3868:SkIRect::MakeXYWH\28int\2c\20int\2c\20int\2c\20int\29 +3869:SkIDChangeListener::List::~List\28\29 +3870:SkIDChangeListener::List::add\28sk_sp\29 +3871:SkGradientShader::MakeSweep\28float\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +3872:SkGradientShader::MakeRadial\28SkPoint\20const&\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +3873:SkGradientBaseShader::AppendInterpolatedToDstStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20bool\2c\20SkGradientShader::Interpolation\20const&\2c\20SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +3874:SkGlyph::mask\28\29\20const +3875:SkFontPriv::ApproximateTransformedTextSize\28SkFont\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\20const&\29 +3876:SkFontMgr::matchFamily\28char\20const*\29\20const +3877:SkFontMgr::RefEmpty\28\29 +3878:SkFont::getWidthsBounds\28unsigned\20short\20const*\2c\20int\2c\20float*\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +3879:SkFont::getBounds\28unsigned\20short\20const*\2c\20int\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +3880:SkFloatToHalf_finite_ftz\28skvx::Vec<4\2c\20float>\20const&\29 +3881:SkFindCubicMaxCurvature\28SkPoint\20const*\2c\20float*\29 +3882:SkFILEStream::SkFILEStream\28std::__2::shared_ptr<_IO_FILE>\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +3883:SkEmptyFontMgr::onMatchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +3884:SkEdgeClipper::appendQuad\28SkPoint\20const*\2c\20bool\29 +3885:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkIRect\20const*\2c\20int\29 +3886:SkDynamicMemoryWStream::write\28void\20const*\2c\20unsigned\20long\29 +3887:SkDrawTreatAAStrokeAsHairline\28float\2c\20SkMatrix\20const&\2c\20float*\29 +3888:SkDrawBase::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29\20const +3889:SkDrawBase::drawDevicePoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\2c\20SkDevice*\29\20const +3890:SkDevice::setOrigin\28SkM44\20const&\2c\20int\2c\20int\29 +3891:SkDevice::getRelativeTransform\28SkDevice\20const&\29\20const +3892:SkDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +3893:SkDevice::drawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +3894:SkDevice::drawFilteredImage\28skif::Mapping\20const&\2c\20SkSpecialImage*\2c\20SkColorType\2c\20SkImageFilter\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +3895:SkDevice::SkDevice\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +3896:SkData::MakeZeroInitialized\28unsigned\20long\29 +3897:SkData::MakeWithoutCopy\28void\20const*\2c\20unsigned\20long\29 +3898:SkDQuad::FindExtrema\28double\20const*\2c\20double*\29 +3899:SkDCubic::subDivide\28double\2c\20double\29\20const +3900:SkDCubic::searchRoots\28double*\2c\20int\2c\20double\2c\20SkDCubic::SearchAxis\2c\20double*\29\20const +3901:SkDCubic::monotonicInX\28\29\20const +3902:SkDCubic::findInflections\28double*\29\20const +3903:SkDConic::FindExtrema\28double\20const*\2c\20float\2c\20double*\29 +3904:SkCubicEdge::updateCubic\28\29 +3905:SkContourMeasureIter::next\28\29 +3906:SkContourMeasureIter::Impl::compute_quad_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3907:SkContourMeasureIter::Impl::compute_cubic_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3908:SkContourMeasureIter::Impl::compute_conic_segs\28SkConic\20const&\2c\20float\2c\20int\2c\20SkPoint\20const&\2c\20int\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20int\29 +3909:SkContourMeasure::distanceToSegment\28float\2c\20float*\29\20const +3910:SkConic::evalAt\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +3911:SkConic::evalAt\28float\29\20const +3912:SkConic::TransformW\28SkPoint\20const*\2c\20float\2c\20SkMatrix\20const&\29 +3913:SkCompressedDataSize\28SkTextureCompressionType\2c\20SkISize\2c\20skia_private::TArray*\2c\20bool\29 +3914:SkColorToPMColor4f\28unsigned\20int\2c\20GrColorInfo\20const&\29 +3915:SkColorSpaceLuminance::Fetch\28float\29 +3916:SkColorSpace::MakeRGB\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +3917:SkColorFilter::filterColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\2c\20SkColorSpace*\29\20const +3918:SkCoincidentSpans::extend\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +3919:SkChopQuadAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +3920:SkCapabilities::RasterBackend\28\29 +3921:SkCanvas::saveLayer\28SkCanvas::SaveLayerRec\20const&\29 +3922:SkCanvas::onResetClip\28\29 +3923:SkCanvas::onClipShader\28sk_sp\2c\20SkClipOp\29 +3924:SkCanvas::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +3925:SkCanvas::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3926:SkCanvas::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3927:SkCanvas::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3928:SkCanvas::internalSave\28\29 +3929:SkCanvas::internalRestore\28\29 +3930:SkCanvas::clipRect\28SkRect\20const&\2c\20bool\29 +3931:SkCanvas::clipPath\28SkPath\20const&\2c\20bool\29 +3932:SkCanvas::clear\28unsigned\20int\29 +3933:SkCanvas::clear\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +3934:SkCachedData::~SkCachedData\28\29 +3935:SkBlitterClipper::~SkBlitterClipper\28\29 +3936:SkBlitter::blitRegion\28SkRegion\20const&\29 +3937:SkBlendShader::~SkBlendShader\28\29 +3938:SkBitmapDevice::SkBitmapDevice\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\2c\20void*\29 +3939:SkBitmapDevice::BDDraw::~BDDraw\28\29 +3940:SkBitmapDevice::BDDraw::BDDraw\28SkBitmapDevice*\29 +3941:SkBitmap::writePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +3942:SkBitmap::setPixels\28void*\29 +3943:SkBitmap::readPixels\28SkPixmap\20const&\2c\20int\2c\20int\29\20const +3944:SkBitmap::installPixels\28SkPixmap\20const&\29 +3945:SkBitmap::allocPixels\28\29 +3946:SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3947:SkBinaryWriteBuffer::writeInt\28int\29 +3948:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29.1 +3949:SkBaseShadowTessellator::handleLine\28SkPoint\20const&\29 +3950:SkAutoPixmapStorage::freeStorage\28\29 +3951:SkAutoPathBoundsUpdate::~SkAutoPathBoundsUpdate\28\29 +3952:SkAutoPathBoundsUpdate::SkAutoPathBoundsUpdate\28SkPath*\2c\20SkRect\20const&\29 +3953:SkAutoMalloc::reset\28unsigned\20long\2c\20SkAutoMalloc::OnShrink\29 +3954:SkAutoDescriptor::free\28\29 +3955:SkArenaAllocWithReset::reset\28\29 +3956:SkAnalyticQuadraticEdge::updateQuadratic\28\29 +3957:SkAnalyticEdge::goY\28int\29 +3958:SkAnalyticCubicEdge::updateCubic\28bool\29 +3959:SkAAClipBlitter::ensureRunsAndAA\28\29 +3960:SkAAClip::setRegion\28SkRegion\20const&\29 +3961:SkAAClip::setRect\28SkIRect\20const&\29 +3962:SkAAClip::quickContains\28int\2c\20int\2c\20int\2c\20int\29\20const +3963:SkAAClip::RunHead::Alloc\28int\2c\20unsigned\20long\29 +3964:SkAAClip::Builder::AppendRun\28SkTDArray&\2c\20unsigned\20int\2c\20int\29 +3965:Sk4f_toL32\28skvx::Vec<4\2c\20float>\20const&\29 +3966:SSVertex*\20SkArenaAlloc::make\28GrTriangulator::Vertex*&\29 +3967:RunBasedAdditiveBlitter::flush\28\29 +3968:R.8778 +3969:OpAsWinding::nextEdge\28Contour&\2c\20OpAsWinding::Edge\29 +3970:OT::sbix::get_strike\28unsigned\20int\29\20const +3971:OT::hb_paint_context_t::get_color\28unsigned\20int\2c\20float\2c\20int*\29 +3972:OT::hb_ot_apply_context_t::skipping_iterator_t::prev\28unsigned\20int*\29 +3973:OT::hb_ot_apply_context_t::check_glyph_property\28hb_glyph_info_t\20const*\2c\20unsigned\20int\29\20const +3974:OT::glyf_impl::CompositeGlyphRecord::translate\28contour_point_t\20const&\2c\20hb_array_t\29 +3975:OT::VariationStore::sanitize\28hb_sanitize_context_t*\29\20const +3976:OT::VarSizedBinSearchArrayOf>\2c\20OT::IntType\2c\20false>>>::get_length\28\29\20const +3977:OT::Script::get_lang_sys\28unsigned\20int\29\20const +3978:OT::PaintSkew::sanitize\28hb_sanitize_context_t*\29\20const +3979:OT::OpenTypeOffsetTable::sanitize\28hb_sanitize_context_t*\29\20const +3980:OT::OS2::has_data\28\29\20const +3981:OT::Layout::GSUB_impl::SubstLookup::serialize_ligature\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20hb_sorted_array_t\2c\20hb_array_t\2c\20hb_array_t\2c\20hb_array_t\2c\20hb_array_t\29 +3982:OT::Layout::GPOS_impl::MarkArray::apply\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20OT::Layout::GPOS_impl::AnchorMatrix\20const&\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +3983:OT::HVARVVAR::sanitize\28hb_sanitize_context_t*\29\20const +3984:OT::GSUBGPOS::get_lookup_count\28\29\20const +3985:OT::GSUBGPOS::get_feature_list\28\29\20const +3986:OT::GSUBGPOS::accelerator_t::get_accel\28unsigned\20int\29\20const +3987:OT::Device::get_y_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3988:OT::Device::get_x_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3989:OT::ClipList::get_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\2c\20OT::VarStoreInstancer\20const&\29\20const +3990:OT::COLR::paint_glyph\28hb_font_t*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\29\20const +3991:OT::ArrayOf>::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20bool\29 +3992:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29 +3993:LineQuadraticIntersections::uniqueAnswer\28double\2c\20SkDPoint\20const&\29 +3994:LineQuadraticIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineQuadraticIntersections::PinTPoint\29 +3995:LineQuadraticIntersections::checkCoincident\28\29 +3996:LineQuadraticIntersections::addLineNearEndPoints\28\29 +3997:LineCubicIntersections::uniqueAnswer\28double\2c\20SkDPoint\20const&\29 +3998:LineCubicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineCubicIntersections::PinTPoint\29 +3999:LineCubicIntersections::checkCoincident\28\29 +4000:LineCubicIntersections::addLineNearEndPoints\28\29 +4001:LineConicIntersections::validT\28double*\2c\20double\2c\20double*\29 +4002:LineConicIntersections::uniqueAnswer\28double\2c\20SkDPoint\20const&\29 +4003:LineConicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineConicIntersections::PinTPoint\29 +4004:LineConicIntersections::checkCoincident\28\29 +4005:LineConicIntersections::addLineNearEndPoints\28\29 +4006:HandleInnerJoin\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +4007:GrVertexChunkBuilder::~GrVertexChunkBuilder\28\29 +4008:GrTriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +4009:GrTriangulator::splitEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +4010:GrTriangulator::pathToPolys\28float\2c\20SkRect\20const&\2c\20bool*\29 +4011:GrTriangulator::makePoly\28GrTriangulator::Poly**\2c\20GrTriangulator::Vertex*\2c\20int\29\20const +4012:GrTriangulator::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20GrTriangulator::VertexList*\2c\20int\29\20const +4013:GrTriangulator::checkForIntersection\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +4014:GrTriangulator::applyFillType\28int\29\20const +4015:GrTriangulator::SortMesh\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +4016:GrTriangulator::MonotonePoly::addEdge\28GrTriangulator::Edge*\29 +4017:GrTriangulator::GrTriangulator\28SkPath\20const&\2c\20SkArenaAlloc*\29 +4018:GrTriangulator::Edge::insertBelow\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +4019:GrTriangulator::Edge::insertAbove\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +4020:GrTriangulator::BreadcrumbTriangleList::append\28SkArenaAlloc*\2c\20SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20int\29 +4021:GrThreadSafeCache::recycleEntry\28GrThreadSafeCache::Entry*\29 +4022:GrThreadSafeCache::dropAllRefs\28\29 +4023:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +4024:GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +4025:GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +4026:GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +4027:GrTextureRenderTargetProxy::callbackDesc\28\29\20const +4028:GrTextureProxy::~GrTextureProxy\28\29 +4029:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::$_0::operator\28\29\28int\2c\20GrSamplerState::WrapMode\29\20const +4030:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::$_3::operator\28\29\28bool\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +4031:GrTexture::GrTexture\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20GrTextureType\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +4032:GrTexture::ComputeScratchKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20skgpu::ScratchKey*\29 +4033:GrSurfaceProxyView::asTextureProxyRef\28\29\20const +4034:GrSurfaceProxy::instantiateImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::UniqueKey\20const*\29 +4035:GrSurfaceProxy::GrSurfaceProxy\28sk_sp\2c\20SkBackingFit\2c\20GrSurfaceProxy::UseAllocator\29 +4036:GrSurface::setRelease\28sk_sp\29 +4037:GrStyledShape::styledBounds\28\29\20const +4038:GrStyledShape::addGenIDChangeListener\28sk_sp\29\20const +4039:GrStyledShape::GrStyledShape\28SkRect\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +4040:GrStyle::isSimpleHairline\28\29\20const +4041:GrStyle::initPathEffect\28sk_sp\29 +4042:GrStencilSettings::Face::reset\28GrTStencilFaceSettings\20const&\2c\20bool\2c\20int\29 +4043:GrSimpleMeshDrawOpHelper::fixedFunctionFlags\28\29\20const +4044:GrShape::setPath\28SkPath\20const&\29 +4045:GrShape::operator=\28GrShape\20const&\29 +4046:GrShape::convex\28bool\29\20const +4047:GrShaderVar::GrShaderVar\28SkString\2c\20SkSLType\2c\20int\29 +4048:GrResourceProvider::findResourceByUniqueKey\28skgpu::UniqueKey\20const&\29 +4049:GrResourceProvider::createPatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const*\29 +4050:GrResourceCache::removeUniqueKey\28GrGpuResource*\29 +4051:GrResourceCache::getNextTimestamp\28\29 +4052:GrResourceCache::findAndRefScratchResource\28skgpu::ScratchKey\20const&\29 +4053:GrRenderTask::dependsOn\28GrRenderTask\20const*\29\20const +4054:GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +4055:GrRenderTargetProxy::canUseStencil\28GrCaps\20const&\29\20const +4056:GrRecordingContextPriv::addOnFlushCallbackObject\28GrOnFlushCallbackObject*\29 +4057:GrRecordingContext::~GrRecordingContext\28\29 +4058:GrQuadUtils::TessellationHelper::reset\28GrQuad\20const&\2c\20GrQuad\20const*\29 +4059:GrQuadUtils::TessellationHelper::getEdgeEquations\28\29 +4060:GrQuadUtils::TessellationHelper::Vertices::moveAlong\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4061:GrQuadUtils::ResolveAAType\28GrAAType\2c\20GrQuadAAFlags\2c\20GrQuad\20const&\2c\20GrAAType*\2c\20GrQuadAAFlags*\29 +4062:GrQuadUtils::CropToRect\28SkRect\20const&\2c\20GrAA\2c\20DrawQuad*\2c\20bool\29 +4063:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA&&\2c\20GrQuad\20const*\29 +4064:GrQuad::setQuadType\28GrQuad::Type\29 +4065:GrPorterDuffXPFactory::SimpleSrcOverXP\28\29 +4066:GrPipeline*\20SkArenaAlloc::make\28GrPipeline::InitArgs&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29 +4067:GrPersistentCacheUtils::UnpackCachedShaders\28SkReadBuffer*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20int\2c\20GrPersistentCacheUtils::ShaderMetadata*\29 +4068:GrPathUtils::quadraticPointCount\28SkPoint\20const*\2c\20float\29 +4069:GrPathUtils::convertCubicToQuads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\29 +4070:GrPathTessellationShader::Make\28GrShaderCaps\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::tess::PatchAttribs\29 +4071:GrPathTessellationShader::MakeSimpleTriangleShader\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +4072:GrOvalOpFactory::MakeOvalOp\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\2c\20GrShaderCaps\20const*\29 +4073:GrOpsRenderPass::drawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +4074:GrOpFlushState::draw\28int\2c\20int\29 +4075:GrOp::chainConcat\28std::__2::unique_ptr>\29 +4076:GrNonAtomicRef::unref\28\29\20const +4077:GrModulateAtlasCoverageEffect::GrModulateAtlasCoverageEffect\28GrModulateAtlasCoverageEffect\20const&\29 +4078:GrMipLevel::operator=\28GrMipLevel&&\29 +4079:GrMeshDrawOp::PatternHelper::PatternHelper\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +4080:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29 +4081:GrImageInfo::makeDimensions\28SkISize\29\20const +4082:GrGpuResource::~GrGpuResource\28\29 +4083:GrGpuResource::removeScratchKey\28\29 +4084:GrGpuResource::registerWithCacheWrapped\28GrWrapCacheable\29 +4085:GrGpuResource::getResourceName\28\29\20const +4086:GrGpuResource::dumpMemoryStatisticsPriv\28SkTraceMemoryDump*\2c\20SkString\20const&\2c\20char\20const*\2c\20unsigned\20long\29\20const +4087:GrGpuResource::CreateUniqueID\28\29 +4088:GrGpuBuffer::onGpuMemorySize\28\29\20const +4089:GrGpu::resolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +4090:GrGeometryProcessor::TextureSampler::TextureSampler\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +4091:GrGeometryProcessor::TextureSampler::TextureSampler\28GrGeometryProcessor::TextureSampler&&\29 +4092:GrGeometryProcessor::ProgramImpl::TransformInfo::TransformInfo\28GrGeometryProcessor::ProgramImpl::TransformInfo\20const&\29 +4093:GrGeometryProcessor::ProgramImpl::AddMatrixKeys\28GrShaderCaps\20const&\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\29 +4094:GrGeometryProcessor::Attribute::size\28\29\20const +4095:GrGLUniformHandler::~GrGLUniformHandler\28\29 +4096:GrGLUniformHandler::getUniformVariable\28GrResourceHandle\29\20const +4097:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +4098:GrGLTextureRenderTarget::onRelease\28\29 +4099:GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +4100:GrGLTextureRenderTarget::onAbandon\28\29 +4101:GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +4102:GrGLTexture::~GrGLTexture\28\29 +4103:GrGLTexture::onRelease\28\29 +4104:GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +4105:GrGLTexture::TextureTypeFromTarget\28unsigned\20int\29 +4106:GrGLSemaphore::Make\28GrGLGpu*\2c\20bool\29 +4107:GrGLSLVaryingHandler::~GrGLSLVaryingHandler\28\29 +4108:GrGLSLUniformHandler::addInputSampler\28skgpu::Swizzle\20const&\2c\20char\20const*\29 +4109:GrGLSLUniformHandler::UniformInfo::~UniformInfo\28\29 +4110:GrGLSLShaderBuilder::appendTextureLookup\28SkString*\2c\20GrResourceHandle\2c\20char\20const*\29\20const +4111:GrGLSLShaderBuilder::appendColorGamutXform\28char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +4112:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +4113:GrGLSLProgramDataManager::setSkMatrix\28GrResourceHandle\2c\20SkMatrix\20const&\29\20const +4114:GrGLSLProgramBuilder::writeFPFunction\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +4115:GrGLSLProgramBuilder::nameExpression\28SkString*\2c\20char\20const*\29 +4116:GrGLSLProgramBuilder::fragmentProcessorHasCoordsParam\28GrFragmentProcessor\20const*\29\20const +4117:GrGLSLProgramBuilder::emitSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\29 +4118:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +4119:GrGLSLBlend::BlendKey\28SkBlendMode\29 +4120:GrGLRenderTarget::~GrGLRenderTarget\28\29 +4121:GrGLRenderTarget::onRelease\28\29 +4122:GrGLRenderTarget::onAbandon\28\29 +4123:GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +4124:GrGLProgramDataManager::~GrGLProgramDataManager\28\29 +4125:GrGLProgramBuilder::~GrGLProgramBuilder\28\29 +4126:GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29 +4127:GrGLProgramBuilder::addInputVars\28SkSL::ProgramInterface\20const&\29 +4128:GrGLOpsRenderPass::dmsaaLoadStoreBounds\28\29\20const +4129:GrGLOpsRenderPass::bindInstanceBuffer\28GrBuffer\20const*\2c\20int\29 +4130:GrGLGpu::insertSemaphore\28GrSemaphore*\29 +4131:GrGLGpu::flushViewport\28SkIRect\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +4132:GrGLGpu::flushScissor\28GrScissorState\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +4133:GrGLGpu::flushClearColor\28std::__2::array\29 +4134:GrGLGpu::disableStencil\28\29 +4135:GrGLGpu::createTexture\28SkISize\2c\20GrGLFormat\2c\20unsigned\20int\2c\20skgpu::Renderable\2c\20GrGLTextureParameters::SamplerOverriddenState*\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +4136:GrGLGpu::copySurfaceAsDraw\28GrSurface*\2c\20bool\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +4137:GrGLGpu::HWVertexArrayState::bindInternalVertexArray\28GrGLGpu*\2c\20GrBuffer\20const*\29 +4138:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20char\2c\20int\2c\20void\20const*\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20char\2c\20int\2c\20void\20const*\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20char\2c\20int\2c\20void\20const*\29 +4139:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29 +4140:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29\29::'lambda'\28void\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29::__invoke\28void\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +4141:GrGLFunction::GrGLFunction\28unsigned\20char\20const*\20\28*\29\28unsigned\20int\2c\20unsigned\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\29 +4142:GrGLContextInfo::~GrGLContextInfo\28\29 +4143:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrGLFormat\29\20const +4144:GrGLCaps::canCopyAsDraw\28GrGLFormat\2c\20bool\2c\20bool\29\20const +4145:GrGLBuffer::~GrGLBuffer\28\29 +4146:GrGLBuffer::Make\28GrGLGpu*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +4147:GrGLBackendTextureData::GrGLBackendTextureData\28GrGLTextureInfo\20const&\2c\20sk_sp\29 +4148:GrGLAttribArrayState::invalidate\28\29 +4149:GrGLAttribArrayState::enableVertexArrays\28GrGLGpu\20const*\2c\20int\2c\20GrPrimitiveRestart\29 +4150:GrGLAttachment::GrGLAttachment\28GrGpu*\2c\20unsigned\20int\2c\20SkISize\2c\20GrAttachment::UsageFlags\2c\20int\2c\20GrGLFormat\2c\20std::__2::basic_string_view>\29 +4151:GrFragmentProcessors::make_effect_fp\28sk_sp\2c\20char\20const*\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkSpan\2c\20GrFPArgs\20const&\29 +4152:GrFragmentProcessors::IsSupported\28SkMaskFilter\20const*\29 +4153:GrFragmentProcessor::makeProgramImpl\28\29\20const +4154:GrFragmentProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +4155:GrFragmentProcessor::ProgramImpl::~ProgramImpl\28\29 +4156:GrFragmentProcessor::MulInputByChildAlpha\28std::__2::unique_ptr>\29 +4157:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +4158:GrEagerDynamicVertexAllocator::lock\28unsigned\20long\2c\20int\29 +4159:GrDynamicAtlas::makeNode\28GrDynamicAtlas::Node*\2c\20int\2c\20int\2c\20int\2c\20int\29 +4160:GrDstProxyView::GrDstProxyView\28GrDstProxyView\20const&\29 +4161:GrDrawingManager::setLastRenderTask\28GrSurfaceProxy\20const*\2c\20GrRenderTask*\29 +4162:GrDrawingManager::removeRenderTasks\28\29 +4163:GrDrawingManager::insertTaskBeforeLast\28sk_sp\29 +4164:GrDrawingManager::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +4165:GrDrawOpAtlas::makeMRU\28skgpu::Plot*\2c\20unsigned\20int\29 +4166:GrDefaultGeoProcFactory::MakeForDeviceSpace\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +4167:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29 +4168:GrColorTypeClampType\28GrColorType\29 +4169:GrColorSpaceXform::Equals\28GrColorSpaceXform\20const*\2c\20GrColorSpaceXform\20const*\29 +4170:GrBufferAllocPool::unmap\28\29 +4171:GrBufferAllocPool::reset\28\29 +4172:GrBlurUtils::extract_draw_rect_from_data\28SkData*\2c\20SkIRect\20const&\29 +4173:GrBlurUtils::create_integral_table\28float\2c\20SkBitmap*\29 +4174:GrBlurUtils::can_filter_mask\28SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect*\29 +4175:GrBicubicEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkRect\20const&\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +4176:GrBicubicEffect::GrBicubicEffect\28std::__2::unique_ptr>\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrBicubicEffect::Clamp\29 +4177:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20sk_sp\2c\20std::__2::basic_string_view>\29 +4178:GrBackendFormatStencilBits\28GrBackendFormat\20const&\29 +4179:GrBackendFormat::operator==\28GrBackendFormat\20const&\29\20const +4180:GrAtlasManager::resolveMaskFormat\28skgpu::MaskFormat\29\20const +4181:GrAATriangulator::~GrAATriangulator\28\29 +4182:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrAATriangulator::EventList*\29\20const +4183:GrAATriangulator::connectSSEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +4184:GrAAConvexTessellator::terminate\28GrAAConvexTessellator::Ring\20const&\29 +4185:GrAAConvexTessellator::computePtAlongBisector\28int\2c\20SkPoint\20const&\2c\20int\2c\20float\2c\20SkPoint*\29\20const +4186:GrAAConvexTessellator::computeNormals\28\29::$_0::operator\28\29\28SkPoint\29\20const +4187:GrAAConvexTessellator::CandidateVerts::originatingIdx\28int\29\20const +4188:GrAAConvexTessellator::CandidateVerts::fuseWithPrior\28int\29 +4189:GrAAConvexTessellator::CandidateVerts::addNewPt\28SkPoint\20const&\2c\20int\2c\20int\2c\20bool\29 +4190:FT_Stream_Free +4191:FT_Set_Transform +4192:FT_Set_Char_Size +4193:FT_Select_Metrics +4194:FT_Request_Metrics +4195:FT_List_Finalize +4196:FT_Hypot +4197:FT_GlyphLoader_CreateExtra +4198:FT_GlyphLoader_Adjust_Points +4199:FT_Get_Paint +4200:FT_Get_MM_Var +4201:FT_Get_Color_Glyph_Paint +4202:FT_Activate_Size +4203:EllipticalRRectOp::~EllipticalRRectOp\28\29 +4204:EdgeLT::operator\28\29\28Edge\20const&\2c\20Edge\20const&\29\20const +4205:DAffineMatrix::mapPoint\28\28anonymous\20namespace\29::DPoint\20const&\29\20const +4206:DAffineMatrix::mapPoint\28SkPoint\20const&\29\20const +4207:Cr_z_inflate_table +4208:Compute_Point_Displacement +4209:CircularRRectOp::~CircularRRectOp\28\29 +4210:CFF::cff_stack_t::push\28\29 +4211:CFF::arg_stack_t::pop_int\28\29 +4212:CFF::CFFIndex>::get_size\28\29\20const +4213:Bounder::Bounder\28SkRect\20const&\2c\20SkPaint\20const&\29 +4214:BlockIndexIterator::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Decrement\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block*\2c\20int\29>::Item::operator++\28\29 +4215:ActiveEdgeList::DoubleRotation\28ActiveEdge*\2c\20int\29 +4216:AAT::kerxTupleKern\28int\2c\20unsigned\20int\2c\20void\20const*\2c\20AAT::hb_aat_apply_context_t*\29 +4217:AAT::feat::get_feature\28hb_aat_layout_feature_type_t\29\20const +4218:AAT::StateTable::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +4219:AAT::StateTable::get_class\28unsigned\20int\2c\20unsigned\20int\29\20const +4220:AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +4221:AAT::Lookup::sanitize\28hb_sanitize_context_t*\29\20const +4222:AAT::ClassTable>::get_class\28unsigned\20int\2c\20unsigned\20int\29\20const +4223:zeroinfnan +4224:zero_mark_widths_by_gdef\28hb_buffer_t*\2c\20bool\29 +4225:xyzd50_to_lab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +4226:xyz_almost_equal\28skcms_Matrix3x3\20const&\2c\20skcms_Matrix3x3\20const&\29 +4227:write_vertex_position\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrShaderVar\20const&\2c\20SkMatrix\20const&\2c\20char\20const*\2c\20GrShaderVar*\2c\20GrResourceHandle*\29 +4228:write_passthrough_vertex_position\28GrGLSLVertexBuilder*\2c\20GrShaderVar\20const&\2c\20GrShaderVar*\29 +4229:winding_mono_quad\28SkPoint\20const*\2c\20float\2c\20float\2c\20int*\29 +4230:winding_mono_conic\28SkConic\20const&\2c\20float\2c\20float\2c\20int*\29 +4231:wctomb +4232:wchar_t*\20std::__2::copy\5babi:v160004\5d\2c\20wchar_t*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20wchar_t*\29 +4233:walk_simple_edges\28SkEdge*\2c\20SkBlitter*\2c\20int\2c\20int\29 +4234:vsscanf +4235:void\20std::__2::allocator_traits>::construct\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\29 +4236:void\20std::__2::allocator::construct\5babi:v160004\5d&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&>\28sktext::GlyphRun*\2c\20SkFont\20const&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\2c\20SkSpan&\29 +4237:void\20std::__2::allocator::construct\5babi:v160004\5d\28skia::textlayout::FontFeature*\2c\20SkString\20const&\2c\20int&\29 +4238:void\20std::__2::allocator::construct\5babi:v160004\5d\28Contour*\2c\20SkRect&\2c\20int&\2c\20int&\29 +4239:void\20std::__2::__variant_detail::__impl\2c\20std::__2::unique_ptr>>::__assign\5babi:v160004\5d<0ul\2c\20sk_sp>\28sk_sp&&\29 +4240:void\20std::__2::__variant_detail::__impl::__assign\5babi:v160004\5d<0ul\2c\20SkPaint>\28SkPaint&&\29 +4241:void\20std::__2::__variant_detail::__assignment>::__assign_alt\5babi:v160004\5d<0ul\2c\20SkPaint\2c\20SkPaint>\28std::__2::__variant_detail::__alt<0ul\2c\20SkPaint>&\2c\20SkPaint&&\29 +4242:void\20std::__2::__tree_right_rotate\5babi:v160004\5d*>\28std::__2::__tree_node_base*\29 +4243:void\20std::__2::__tree_left_rotate\5babi:v160004\5d*>\28std::__2::__tree_node_base*\29 +4244:void\20std::__2::__stable_sort_move\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>\28std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20std::__2::__wrap_iter<\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::'lambda'\28\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\2c\20\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop\20const&\29&\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::difference_type\2c\20std::__2::iterator_traits\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29::$_0::operator\28\29\28FT_ColorStopIterator_\20const&\2c\20std::__2::vector>&\2c\20std::__2::vector\2c\20std::__2::allocator>>&\29\20const::ColorStop*>>::value_type*\29 +4245:void\20std::__2::__sift_up\5babi:v160004\5d*>>\28std::__2::__wrap_iter*>\2c\20std::__2::__wrap_iter*>\2c\20GrGeometryProcessor::ProgramImpl::emitTransformCode\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\29::$_0&\2c\20std::__2::iterator_traits*>>::difference_type\29 +4246:void\20std::__2::__sift_up\5babi:v160004\5d>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20GrAATriangulator::EventComparator&\2c\20std::__2::iterator_traits>::difference_type\29 +4247:void\20std::__2::__optional_storage_base::__construct\5babi:v160004\5d\28skia::textlayout::FontArguments\20const&\29 +4248:void\20std::__2::__optional_storage_base::__assign_from\5babi:v160004\5d\20const&>\28std::__2::__optional_copy_assign_base\20const&\29 +4249:void\20std::__2::__optional_storage_base::__construct\5babi:v160004\5d\28SkPath\20const&\29 +4250:void\20std::__2::__memberwise_forward_assign\5babi:v160004\5d&\2c\20int&>\2c\20std::__2::tuple\2c\20unsigned\20long>\2c\20sk_sp\2c\20unsigned\20long\2c\200ul\2c\201ul>\28std::__2::tuple&\2c\20int&>&\2c\20std::__2::tuple\2c\20unsigned\20long>&&\2c\20std::__2::__tuple_types\2c\20unsigned\20long>\2c\20std::__2::__tuple_indices<0ul\2c\201ul>\29 +4251:void\20std::__2::__memberwise_forward_assign\5babi:v160004\5d&>\2c\20std::__2::tuple>\2c\20GrSurfaceProxyView\2c\20sk_sp\2c\200ul\2c\201ul>\28std::__2::tuple&>&\2c\20std::__2::tuple>&&\2c\20std::__2::__tuple_types>\2c\20std::__2::__tuple_indices<0ul\2c\201ul>\29 +4252:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20char*&\2c\20char*&\29 +4253:void\20sorted_merge<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +4254:void\20sorted_merge<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +4255:void\20sort_r_simple\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\2c\20void*\29\2c\20void*\29 +4256:void\20sktext::gpu::fillDirectClipped\28SkZip\2c\20unsigned\20int\2c\20SkPoint\2c\20SkIRect*\29 +4257:void\20skgpu::ganesh::SurfaceFillContext::clearAtLeast<\28SkAlphaType\292>\28SkIRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +4258:void\20portable::memsetT\28unsigned\20short*\2c\20unsigned\20short\2c\20int\29 +4259:void\20portable::memsetT\28unsigned\20int*\2c\20unsigned\20int\2c\20int\29 +4260:void\20hb_sanitize_context_t::set_object>\28OT::KernSubTable\20const*\29 +4261:void\20hb_sanitize_context_t::set_object>\28AAT::ChainSubtable\20const*\29 +4262:void\20hair_path<\28SkPaint::Cap\292>\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +4263:void\20hair_path<\28SkPaint::Cap\291>\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +4264:void\20hair_path<\28SkPaint::Cap\290>\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +4265:void\20\28anonymous\20namespace\29::copyFT2LCD16\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\29 +4266:void\20SkTQSort\28double*\2c\20double*\29 +4267:void\20SkTIntroSort\28int\2c\20int*\2c\20int\2c\20DistanceLessThan\20const&\29 +4268:void\20SkTIntroSort\28float*\2c\20float*\29::'lambda'\28float\20const&\2c\20float\20const&\29>\28int\2c\20float*\2c\20int\2c\20void\20SkTQSort\28float*\2c\20float*\29::'lambda'\28float\20const&\2c\20float\20const&\29\20const&\29 +4269:void\20SkTIntroSort\28double*\2c\20double*\29::'lambda'\28double\20const&\2c\20double\20const&\29>\28int\2c\20double*\2c\20int\2c\20void\20SkTQSort\28double*\2c\20double*\29::'lambda'\28double\20const&\2c\20double\20const&\29\20const&\29 +4270:void\20SkTIntroSort\28int\2c\20SkString*\2c\20int\2c\20bool\20\20const\28&\29\28SkString\20const&\2c\20SkString\20const&\29\29 +4271:void\20SkTIntroSort\28int\2c\20SkOpRayHit**\2c\20int\2c\20bool\20\20const\28&\29\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29\29 +4272:void\20SkTIntroSort\28SkOpContour**\2c\20SkOpContour**\29::'lambda'\28SkOpContour\20const*\2c\20SkOpContour\20const*\29>\28int\2c\20SkOpContour*\2c\20int\2c\20void\20SkTQSort\28SkOpContour**\2c\20SkOpContour**\29::'lambda'\28SkOpContour\20const*\2c\20SkOpContour\20const*\29\20const&\29 +4273:void\20SkTIntroSort\28SkEdge**\2c\20SkEdge**\29::'lambda'\28SkEdge\20const*\2c\20SkEdge\20const*\29>\28int\2c\20SkEdge*\2c\20int\2c\20void\20SkTQSort\28SkEdge**\2c\20SkEdge**\29::'lambda'\28SkEdge\20const*\2c\20SkEdge\20const*\29\20const&\29 +4274:void\20SkTIntroSort\28SkClosestRecord\20const**\2c\20SkClosestRecord\20const**\29::'lambda'\28SkClosestRecord\20const*\2c\20SkClosestRecord\20const*\29>\28int\2c\20SkClosestRecord\20const*\2c\20int\2c\20void\20SkTQSort\28SkClosestRecord\20const**\2c\20SkClosestRecord\20const**\29::'lambda'\28SkClosestRecord\20const*\2c\20SkClosestRecord\20const*\29\20const&\29 +4275:void\20SkTIntroSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29>\28int\2c\20SkAnalyticEdge*\2c\20int\2c\20void\20SkTQSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29\20const&\29 +4276:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\20const\28&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +4277:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\28*\20const&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +4278:void\20SkTIntroSort\28int\2c\20Edge*\2c\20int\2c\20EdgeLT\20const&\29 +4279:void\20SkSafeUnref\28GrWindowRectangles::Rec\20const*\29 +4280:void\20SkSafeUnref\28GrSurface::RefCntedReleaseProc*\29 +4281:void\20SkSafeUnref\28GrBufferAllocPool::CpuBufferCache*\29 +4282:void\20SkRecords::FillBounds::trackBounds\28SkRecords::NoOp\20const&\29 +4283:void\20GrGeometryProcessor::ProgramImpl::collectTransforms\28GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGLSLUniformHandler*\2c\20GrShaderType\2c\20GrShaderVar\20const&\2c\20GrShaderVar\20const&\2c\20GrPipeline\20const&\29::$_0::operator\28\29<$_0>\28$_0&\2c\20GrFragmentProcessor\20const&\2c\20bool\2c\20GrFragmentProcessor\20const*\2c\20int\2c\20GrGeometryProcessor::ProgramImpl::collectTransforms\28GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGLSLUniformHandler*\2c\20GrShaderType\2c\20GrShaderVar\20const&\2c\20GrShaderVar\20const&\2c\20GrPipeline\20const&\29::BaseCoord\29 +4284:void\20GrGLProgramDataManager::setMatrices<4>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +4285:void\20GrGLProgramDataManager::setMatrices<3>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +4286:void\20GrGLProgramDataManager::setMatrices<2>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +4287:void\20A8_row_aa\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\20\28*\29\28unsigned\20char\2c\20unsigned\20char\29\2c\20bool\29 +4288:virtual\20thunk\20to\20GrGLTexture::onSetLabel\28\29 +4289:virtual\20thunk\20to\20GrGLTexture::backendFormat\28\29\20const +4290:vfiprintf +4291:validate_texel_levels\28SkISize\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20GrCaps\20const*\29 +4292:valid_divs\28int\20const*\2c\20int\2c\20int\2c\20int\29 +4293:utf8_byte_type\28unsigned\20char\29 +4294:use_tiled_rendering\28GrGLCaps\20const&\2c\20GrOpsRenderPass::StencilLoadAndStoreInfo\20const&\29 +4295:uprv_realloc_skia +4296:update_edge\28SkEdge*\2c\20int\29 +4297:unsigned\20short\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4298:unsigned\20short\20sk_saturate_cast\28float\29 +4299:unsigned\20long\20long\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4300:unsigned\20long&\20std::__2::vector>::emplace_back\28unsigned\20long&\29 +4301:unsigned\20int\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4302:unsigned\20int\20const*\20std::__2::lower_bound\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20unsigned\20long\20const&\29 +4303:unsigned\20int*\20hb_vector_t::push\28unsigned\20int&\29 +4304:unsigned\20char\20pack_distance_field_val<4>\28float\29 +4305:ubidi_openSized_skia +4306:ubidi_getVisualRun_skia +4307:ubidi_getLength_skia +4308:ubidi_countRuns_skia +4309:ubidi_close_skia +4310:u_terminateUChars_skia +4311:u_charType_skia +4312:u8_lerp\28unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char\29 +4313:tt_size_select +4314:tt_size_run_prep +4315:tt_size_done_bytecode +4316:tt_sbit_decoder_load_image +4317:tt_prepare_zone +4318:tt_loader_set_pp +4319:tt_loader_init +4320:tt_loader_done +4321:tt_hvadvance_adjust +4322:tt_face_vary_cvt +4323:tt_face_palette_set +4324:tt_face_load_generic_header +4325:tt_face_load_cvt +4326:tt_face_goto_table +4327:tt_face_get_metrics +4328:tt_done_blend +4329:tt_cmap4_set_range +4330:tt_cmap4_next +4331:tt_cmap4_char_map_linear +4332:tt_cmap4_char_map_binary +4333:tt_cmap2_get_subheader +4334:tt_cmap14_get_nondef_chars +4335:tt_cmap14_get_def_chars +4336:tt_cmap14_def_char_count +4337:tt_cmap13_next +4338:tt_cmap13_init +4339:tt_cmap13_char_map_binary +4340:tt_cmap12_next +4341:tt_cmap12_char_map_binary +4342:tt_apply_mvar +4343:top_collinear\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +4344:throw_on_failure\28unsigned\20long\2c\20void*\29 +4345:thai_pua_shape\28unsigned\20int\2c\20thai_action_t\2c\20hb_font_t*\29 +4346:t1_lookup_glyph_by_stdcharcode_ps +4347:t1_cmap_std_init +4348:t1_cmap_std_char_index +4349:t1_builder_init +4350:t1_builder_close_contour +4351:t1_builder_add_point1 +4352:t1_builder_add_point +4353:t1_builder_add_contour +4354:sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4355:sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4356:surface_setCallbackHandler +4357:surface_getThreadId +4358:strutStyle_setFontSize +4359:strtox.9039 +4360:strtoull +4361:strtoll_l +4362:strspn +4363:strncpy +4364:strcspn +4365:store_int +4366:std::logic_error::~logic_error\28\29 +4367:std::logic_error::logic_error\28char\20const*\29 +4368:std::exception::exception\5babi:v160004\5d\28\29 +4369:std::__2::vector>::operator=\5babi:v160004\5d\28std::__2::vector>\20const&\29 +4370:std::__2::vector>::__vdeallocate\28\29 +4371:std::__2::vector>::__move_assign\28std::__2::vector>&\2c\20std::__2::integral_constant\29 +4372:std::__2::vector>\2c\20std::__2::allocator>>>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::unique_ptr>*\29 +4373:std::__2::vector\2c\20std::__2::allocator>>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::tuple*\29 +4374:std::__2::vector\2c\20std::__2::allocator>>::pop_back\28\29 +4375:std::__2::vector\2c\20std::__2::allocator>>::__swap_out_circular_buffer\28std::__2::__split_buffer\2c\20std::__2::allocator>&>&\29 +4376:std::__2::vector\2c\20std::__2::allocator>>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::shared_ptr*\29 +4377:std::__2::vector>::max_size\28\29\20const +4378:std::__2::vector>::capacity\5babi:v160004\5d\28\29\20const +4379:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +4380:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4381:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::locale::facet**\29 +4382:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4383:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +4384:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4385:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4386:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4387:std::__2::vector>::operator=\5babi:v160004\5d\28std::__2::vector>\20const&\29 +4388:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4389:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28skia::textlayout::FontFeature*\29 +4390:std::__2::vector\2c\20std::__2::allocator>>::vector\28std::__2::vector\2c\20std::__2::allocator>>\20const&\29 +4391:std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float&&\29 +4392:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +4393:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4394:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4395:std::__2::vector>::vector\5babi:v160004\5d\28std::initializer_list\29 +4396:std::__2::vector>::reserve\28unsigned\20long\29 +4397:std::__2::vector>::operator=\5babi:v160004\5d\28std::__2::vector>\20const&\29 +4398:std::__2::vector>::__vdeallocate\28\29 +4399:std::__2::vector>::__destroy_vector::operator\28\29\5babi:v160004\5d\28\29 +4400:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4401:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28SkString*\29 +4402:std::__2::vector>::push_back\5babi:v160004\5d\28SkSL::TraceInfo&&\29 +4403:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4404:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4405:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\2c\20SkSL::ProgramElement\20const**\29 +4406:std::__2::vector>::__move_range\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\29 +4407:std::__2::vector>::erase\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +4408:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28SkSL::InlineCandidate*\29 +4409:std::__2::vector>::push_back\5babi:v160004\5d\28SkRuntimeEffect::Uniform&&\29 +4410:std::__2::vector>::push_back\5babi:v160004\5d\28SkRuntimeEffect::Child&&\29 +4411:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4412:std::__2::vector>::__destroy_vector::operator\28\29\5babi:v160004\5d\28\29 +4413:std::__2::vector>::reserve\28unsigned\20long\29 +4414:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4415:std::__2::vector\2c\20std::__2::allocator>>::__swap_out_circular_buffer\28std::__2::__split_buffer\2c\20std::__2::allocator>&>&\29 +4416:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4417:std::__2::vector>::push_back\5babi:v160004\5d\28SkMeshSpecification::Varying&&\29 +4418:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4419:std::__2::vector>::reserve\28unsigned\20long\29 +4420:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4421:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4422:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4423:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28unsigned\20char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +4424:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4425:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::gpu::TextBlobRedrawCoordinator*\29 +4426:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +4427:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4428:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::gpu::SubRunAllocator*\29 +4429:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4430:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::gpu::StrikeCache*\29 +4431:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4432:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::GlyphRunBuilder*\29 +4433:std::__2::unique_ptr\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4434:std::__2::unique_ptr\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4435:std::__2::unique_ptr\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4436:std::__2::unique_ptr>\2c\20SkGoodHash>::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete>\2c\20SkGoodHash>::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4437:std::__2::unique_ptr::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4438:std::__2::unique_ptr>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4439:std::__2::unique_ptr\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4440:std::__2::unique_ptr::AdaptedTraits>::Slot\20\5b\5d\2c\20std::__2::default_delete::AdaptedTraits>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4441:std::__2::unique_ptr::Slot\20\5b\5d\2c\20std::__2::default_delete::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4442:std::__2::unique_ptr\2c\20std::__2::default_delete>>::reset\5babi:v160004\5d\28skia_private::TArray*\29 +4443:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4444:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4445:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skgpu::ganesh::SmallPathAtlasMgr*\29 +4446:std::__2::unique_ptr\20\5b\5d\2c\20std::__2::default_delete\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4447:std::__2::unique_ptr\20\5b\5d\2c\20std::__2::default_delete\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4448:std::__2::unique_ptr>::reset\5babi:v160004\5d\28hb_font_t*\29 +4449:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4450:std::__2::unique_ptr>::reset\5babi:v160004\5d\28hb_blob_t*\29 +4451:std::__2::unique_ptr::operator=\5babi:v160004\5d\28std::__2::unique_ptr&&\29 +4452:std::__2::unique_ptr<\28anonymous\20namespace\29::SoftwarePathData\2c\20std::__2::default_delete<\28anonymous\20namespace\29::SoftwarePathData>>::reset\5babi:v160004\5d\28\28anonymous\20namespace\29::SoftwarePathData*\29 +4453:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4454:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkTaskGroup*\29 +4455:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4456:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4457:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4458:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::RP::Program*\29 +4459:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4460:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Program*\29 +4461:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::ProgramUsage*\29 +4462:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4463:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Pool*\29 +4464:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4465:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::MemoryPool*\29 +4466:std::__2::unique_ptr>\20SkSL::coalesce_vector\28std::__2::array\20const&\2c\20double\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\2c\20double\20\28*\29\28double\29\29 +4467:std::__2::unique_ptr>\20SkSL::coalesce_pairwise_vectors\28std::__2::array\20const&\2c\20double\2c\20SkSL::Type\20const&\2c\20double\20\28*\29\28double\2c\20double\2c\20double\29\2c\20double\20\28*\29\28double\29\29 +4468:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4469:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4470:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkRecorder*\29 +4471:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkLatticeIter*\29 +4472:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkCanvas::Layer*\29 +4473:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4474:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkCanvas::BackImage*\29 +4475:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4476:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkArenaAlloc*\29 +4477:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4478:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrThreadSafeCache*\29 +4479:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4480:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrResourceProvider*\29 +4481:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4482:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrResourceCache*\29 +4483:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4484:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrProxyProvider*\29 +4485:std::__2::unique_ptr>\20GrOp::Make\28GrRecordingContext*\2c\20skgpu::ganesh::AtlasTextOp::MaskType&&\2c\20bool&&\2c\20int&&\2c\20SkRect&\2c\20skgpu::ganesh::AtlasTextOp::Geometry*&\2c\20GrColorInfo\20const&\2c\20GrPaint&&\29 +4486:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4487:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4488:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4489:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4490:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrAuditTrail::OpNode*\29 +4491:std::__2::unique_ptr>::reset\5babi:v160004\5d\28FT_SizeRec_*\29 +4492:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4493:std::__2::tuple::tuple\5babi:v160004\5d\28std::__2::\28anonymous\20namespace\29::__fake_bind&&\29 +4494:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda0'\28\29::operator\28\29\28\29\20const +4495:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +4496:std::__2::tuple&\20std::__2::tuple::operator=\5babi:v160004\5d\28std::__2::pair&&\29 +4497:std::__2::to_string\28unsigned\20long\29 +4498:std::__2::to_chars_result\20std::__2::__to_chars_itoa\5babi:v160004\5d\28char*\2c\20char*\2c\20unsigned\20int\2c\20std::__2::integral_constant\29 +4499:std::__2::time_put>>::~time_put\28\29.1 +4500:std::__2::time_get>>::__get_year\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +4501:std::__2::time_get>>::__get_weekdayname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +4502:std::__2::time_get>>::__get_monthname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +4503:std::__2::time_get>>::__get_year\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +4504:std::__2::time_get>>::__get_weekdayname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +4505:std::__2::time_get>>::__get_monthname\28int&\2c\20std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20unsigned\20int&\2c\20std::__2::ctype\20const&\29\20const +4506:std::__2::shared_ptr::shared_ptr\5babi:v160004\5d\2c\20void>\28std::__2::unique_ptr>&&\29 +4507:std::__2::shared_ptr&\20std::__2::shared_ptr::operator=\5babi:v160004\5d\2c\20void>\28std::__2::unique_ptr>&&\29 +4508:std::__2::reverse_iterator::operator++\5babi:v160004\5d\28\29 +4509:std::__2::priority_queue>\2c\20GrAATriangulator::EventComparator>::push\28GrAATriangulator::Event*\20const&\29 +4510:std::__2::pair::pair\28std::__2::pair&&\29 +4511:std::__2::pair>::~pair\28\29 +4512:std::__2::pair\2c\20std::__2::allocator>>>::~pair\28\29 +4513:std::__2::pair\20std::__2::__copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +4514:std::__2::pair::pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +4515:std::__2::pair>::~pair\28\29 +4516:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28wchar_t\29 +4517:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28char\29 +4518:std::__2::optional&\20std::__2::optional::operator=\5babi:v160004\5d\28SkPath\20const&\29 +4519:std::__2::optional::value\5babi:v160004\5d\28\29\20& +4520:std::__2::optional::value\5babi:v160004\5d\28\29\20& +4521:std::__2::numpunct::~numpunct\28\29.1 +4522:std::__2::numpunct::~numpunct\28\29.1 +4523:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20int&\29\20const +4524:std::__2::num_get>>\20const&\20std::__2::use_facet\5babi:v160004\5d>>>\28std::__2::locale\20const&\29 +4525:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20int&\29\20const +4526:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4527:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4528:std::__2::moneypunct::do_negative_sign\28\29\20const +4529:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4530:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4531:std::__2::moneypunct::do_negative_sign\28\29\20const +4532:std::__2::money_get>>::__do_get\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::locale\20const&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool&\2c\20std::__2::ctype\20const&\2c\20std::__2::unique_ptr&\2c\20wchar_t*&\2c\20wchar_t*\29 +4533:std::__2::money_get>>::__do_get\28std::__2::istreambuf_iterator>&\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::locale\20const&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool&\2c\20std::__2::ctype\20const&\2c\20std::__2::unique_ptr&\2c\20char*&\2c\20char*\29 +4534:std::__2::locale::operator=\28std::__2::locale\20const&\29 +4535:std::__2::locale::__imp::~__imp\28\29.1 +4536:std::__2::list>::pop_front\28\29 +4537:std::__2::iterator_traits\2c\20std::__2::allocator>\20const*>::difference_type\20std::__2::distance\5babi:v160004\5d\2c\20std::__2::allocator>\20const*>\28std::__2::basic_string\2c\20std::__2::allocator>\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const*\29 +4538:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28char*\2c\20char*\29 +4539:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::random_access_iterator_tag\29 +4540:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +4541:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +4542:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +4543:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +4544:std::__2::ios_base::width\5babi:v160004\5d\28long\29 +4545:std::__2::ios_base::clear\28unsigned\20int\29 +4546:std::__2::ios_base::__call_callbacks\28std::__2::ios_base::event\29 +4547:std::__2::hash>::operator\28\29\5babi:v160004\5d\28std::__2::optional\20const&\29\20const +4548:std::__2::function::operator\28\29\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29\20const +4549:std::__2::function::operator\28\29\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29\20const +4550:std::__2::function::operator\28\29\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29\20const +4551:std::__2::forward_list>::push_front\28SkSL::SwitchCase\20const*\20const&\29 +4552:std::__2::enable_if::type\20skgpu::tess::PatchWriter\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\294>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\298>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2964>\2c\20skgpu::tess::Optional<\28skgpu::tess::PatchAttribs\2932>\2c\20skgpu::tess::ReplicateLineEndPoints\2c\20skgpu::tess::TrackJoinControlPoints>::writeDeferredStrokePatch\28\29 +4553:std::__2::enable_if::value\2c\20SkRuntimeEffectBuilder::BuilderUniform&>::type\20SkRuntimeEffectBuilder::BuilderUniform::operator=\28float\20const&\29 +4554:std::__2::enable_if::value\2c\20SkRuntimeEffectBuilder::BuilderUniform&>::type\20SkRuntimeEffectBuilder::BuilderUniform::operator=\28SkV2\20const&\29 +4555:std::__2::enable_if>::value\20&&\20sizeof\20\28skia::textlayout::SkRange\29\20!=\204\2c\20unsigned\20int>::type\20SkGoodHash::operator\28\29>\28skia::textlayout::SkRange\20const&\29\20const +4556:std::__2::enable_if::value\20&&\20sizeof\20\28bool\29\20!=\204\2c\20unsigned\20int>::type\20SkGoodHash::operator\28\29\28bool\20const&\29\20const +4557:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28char&\2c\20char&\29 +4558:std::__2::enable_if<__can_be_converted_to_string_view\2c\20std::__2::basic_string_view>>::value\20&&\20!__is_same_uncvref>\2c\20std::__2::basic_string\2c\20std::__2::allocator>>::value\2c\20std::__2::basic_string\2c\20std::__2::allocator>&>::type\20std::__2::basic_string\2c\20std::__2::allocator>::operator+=>>\28std::__2::basic_string_view>\20const&\29 +4559:std::__2::enable_if<_CheckArrayPointerConversion::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::reset\5babi:v160004\5d::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot*>\28skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot*\29 +4560:std::__2::enable_if<_CheckArrayPointerConversion\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot\20\5b\5d>>::reset\5babi:v160004\5d\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot*>\28skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot*\29 +4561:std::__2::enable_if<_CheckArrayPointerConversion>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot\20\5b\5d>>::reset\5babi:v160004\5d>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot*>\28skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot*\29 +4562:std::__2::enable_if<_CheckArrayPointerConversion::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::reset\5babi:v160004\5d::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot*>\28skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot*\29 +4563:std::__2::enable_if<_CheckArrayPointerConversion\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot*>::value\2c\20void>::type\20std::__2::unique_ptr\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d\2c\20std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>>::reset\5babi:v160004\5d\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot*>\28skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot*\29 +4564:std::__2::deque>::back\28\29 +4565:std::__2::deque>::__add_back_capacity\28\29 +4566:std::__2::default_delete::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::_EnableIfConvertible::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot>::type\20std::__2::default_delete::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot>\28skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot*\29\20const +4567:std::__2::default_delete>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>::_EnableIfConvertible>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot>::type\20std::__2::default_delete>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot>\28skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot*\29\20const +4568:std::__2::default_delete\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot\20\5b\5d>::_EnableIfConvertible\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot>::type\20std::__2::default_delete\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot>\28skia_private::THashTable\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot*\29\20const +4569:std::__2::default_delete\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot\20\5b\5d>::_EnableIfConvertible\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot>::type\20std::__2::default_delete\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot>\28skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot*\29\20const +4570:std::__2::default_delete>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot\20\5b\5d>::_EnableIfConvertible>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot>::type\20std::__2::default_delete>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot>\28skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Slot*\29\20const +4571:std::__2::default_delete::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::_EnableIfConvertible::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot>::type\20std::__2::default_delete::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot>\28skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot*\29\20const +4572:std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>::_EnableIfConvertible\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot>::type\20std::__2::default_delete\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot>\28skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot*\29\20const +4573:std::__2::default_delete\20\5b\5d>::_EnableIfConvertible>::type\20std::__2::default_delete\20\5b\5d>::operator\28\29\5babi:v160004\5d>\28sk_sp*\29\20const +4574:std::__2::default_delete::_EnableIfConvertible::type\20std::__2::default_delete::operator\28\29\5babi:v160004\5d\28GrGLCaps::ColorTypeInfo*\29\20const +4575:std::__2::ctype::~ctype\28\29.1 +4576:std::__2::codecvt::~codecvt\28\29.1 +4577:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +4578:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char32_t\20const*\2c\20char32_t\20const*\2c\20char32_t\20const*&\2c\20char8_t*\2c\20char8_t*\2c\20char8_t*&\29\20const +4579:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char8_t\20const*\2c\20char8_t\20const*\2c\20unsigned\20long\29\20const +4580:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char8_t\20const*\2c\20char8_t\20const*\2c\20char8_t\20const*&\2c\20char32_t*\2c\20char32_t*\2c\20char32_t*&\29\20const +4581:std::__2::codecvt::do_out\28__mbstate_t&\2c\20char16_t\20const*\2c\20char16_t\20const*\2c\20char16_t\20const*&\2c\20char8_t*\2c\20char8_t*\2c\20char8_t*&\29\20const +4582:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char8_t\20const*\2c\20char8_t\20const*\2c\20unsigned\20long\29\20const +4583:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char8_t\20const*\2c\20char8_t\20const*\2c\20char8_t\20const*&\2c\20char16_t*\2c\20char16_t*\2c\20char16_t*&\29\20const +4584:std::__2::char_traits::eq_int_type\28int\2c\20int\29 +4585:std::__2::char_traits::not_eof\28int\29 +4586:std::__2::char_traits::find\28char\20const*\2c\20unsigned\20long\2c\20char\20const&\29 +4587:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4588:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28\29\20const +4589:std::__2::basic_string_view>::substr\5babi:v160004\5d\28unsigned\20long\2c\20unsigned\20long\29\20const +4590:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29 +4591:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\2c\20wchar_t\20const*\29 +4592:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by_and_replace\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20wchar_t\20const*\29 +4593:std::__2::basic_string\2c\20std::__2::allocator>::__grow_by\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +4594:std::__2::basic_string\2c\20std::__2::allocator>::pop_back\5babi:v160004\5d\28\29 +4595:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +4596:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20char\29 +4597:std::__2::basic_string\2c\20std::__2::allocator>::__null_terminate_at\5babi:v160004\5d\28char*\2c\20unsigned\20long\29 +4598:std::__2::basic_string\2c\20std::__2::allocator>&\20skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::emplace_back\28char\20const*&&\29 +4599:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +4600:std::__2::basic_streambuf>::sputc\5babi:v160004\5d\28char\29 +4601:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +4602:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +4603:std::__2::basic_streambuf>::basic_streambuf\28\29 +4604:std::__2::basic_ostream>::sentry::~sentry\28\29 +4605:std::__2::basic_ostream>::sentry::sentry\28std::__2::basic_ostream>&\29 +4606:std::__2::basic_ostream>::operator<<\28float\29 +4607:std::__2::basic_ostream>::flush\28\29 +4608:std::__2::basic_istream>::~basic_istream\28\29.1 +4609:std::__2::basic_istream>::sentry::sentry\28std::__2::basic_istream>&\2c\20bool\29 +4610:std::__2::basic_iostream>::basic_iostream\5babi:v160004\5d\28std::__2::basic_streambuf>*\29 +4611:std::__2::basic_ios>::imbue\5babi:v160004\5d\28std::__2::locale\20const&\29 +4612:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\2c\20unsigned\20long\29 +4613:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +4614:std::__2::__unwrap_iter_impl::__rewrap\5babi:v160004\5d\28char*\2c\20char*\29 +4615:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>>\28SkSL::Position&\2c\20std::__2::unique_ptr>&&\2c\20std::__2::unique_ptr>&&\2c\20std::__2::unique_ptr>&&\29 +4616:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +4617:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>&&\29 +4618:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>&&\29 +4619:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>&&\29 +4620:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>&&\29 +4621:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>&&\29 +4622:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +4623:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>&&\29 +4624:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +4625:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>\2c\20true>\2c\20SkSL::Block::Kind&\2c\20std::__2::shared_ptr>\28SkSL::Position&\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>&&\2c\20SkSL::Block::Kind&\2c\20std::__2::shared_ptr&&\29 +4626:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>\28sk_sp&&\29 +4627:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d&>\28std::__2::shared_ptr&\29 +4628:std::__2::__tuple_impl\2c\20std::__2::\28anonymous\20namespace\29::__fake_bind&&>::__tuple_impl\5babi:v160004\5d<0ul\2c\20std::__2::\28anonymous\20namespace\29::__fake_bind&&\2c\20std::__2::\28anonymous\20namespace\29::__fake_bind>\28std::__2::__tuple_indices<0ul>\2c\20std::__2::__tuple_types\2c\20std::__2::__tuple_indices<>\2c\20std::__2::__tuple_types<>\2c\20std::__2::\28anonymous\20namespace\29::__fake_bind&&\29 +4629:std::__2::__time_put::__time_put\5babi:v160004\5d\28\29 +4630:std::__2::__time_put::__do_put\28char*\2c\20char*&\2c\20tm\20const*\2c\20char\2c\20char\29\20const +4631:std::__2::__throw_out_of_range\5babi:v160004\5d\28char\20const*\29 +4632:std::__2::__throw_length_error\5babi:v160004\5d\28char\20const*\29 +4633:std::__2::__split_buffer\2c\20std::__2::allocator>&>::~__split_buffer\28\29 +4634:std::__2::__split_buffer\2c\20std::__2::allocator>&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator>&\29 +4635:std::__2::__split_buffer&>::~__split_buffer\28\29 +4636:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +4637:std::__2::__split_buffer>::pop_back\5babi:v160004\5d\28\29 +4638:std::__2::__split_buffer>::__destruct_at_end\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock**\2c\20std::__2::integral_constant\29 +4639:std::__2::__split_buffer&>::push_back\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +4640:std::__2::__split_buffer&>::~__split_buffer\28\29 +4641:std::__2::__split_buffer&>::~__split_buffer\28\29 +4642:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +4643:std::__2::__split_buffer&>::~__split_buffer\28\29 +4644:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +4645:std::__2::__split_buffer&>::~__split_buffer\28\29 +4646:std::__2::__shared_weak_count::__release_shared\5babi:v160004\5d\28\29 +4647:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +4648:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +4649:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +4650:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +4651:std::__2::__num_put::__widen_and_group_int\28char*\2c\20char*\2c\20char*\2c\20wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20std::__2::locale\20const&\29 +4652:std::__2::__num_put::__widen_and_group_float\28char*\2c\20char*\2c\20char*\2c\20wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20std::__2::locale\20const&\29 +4653:std::__2::__num_put::__widen_and_group_int\28char*\2c\20char*\2c\20char*\2c\20char*\2c\20char*&\2c\20char*&\2c\20std::__2::locale\20const&\29 +4654:std::__2::__num_put::__widen_and_group_float\28char*\2c\20char*\2c\20char*\2c\20char*\2c\20char*&\2c\20char*&\2c\20std::__2::locale\20const&\29 +4655:std::__2::__money_put::__gather_info\28bool\2c\20bool\2c\20std::__2::locale\20const&\2c\20std::__2::money_base::pattern&\2c\20wchar_t&\2c\20wchar_t&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20int&\29 +4656:std::__2::__money_put::__format\28wchar_t*\2c\20wchar_t*&\2c\20wchar_t*&\2c\20unsigned\20int\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20std::__2::ctype\20const&\2c\20bool\2c\20std::__2::money_base::pattern\20const&\2c\20wchar_t\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20int\29 +4657:std::__2::__money_put::__gather_info\28bool\2c\20bool\2c\20std::__2::locale\20const&\2c\20std::__2::money_base::pattern&\2c\20char&\2c\20char&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\2c\20int&\29 +4658:std::__2::__money_put::__format\28char*\2c\20char*&\2c\20char*&\2c\20unsigned\20int\2c\20char\20const*\2c\20char\20const*\2c\20std::__2::ctype\20const&\2c\20bool\2c\20std::__2::money_base::pattern\20const&\2c\20char\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20int\29 +4659:std::__2::__libcpp_sscanf_l\28char\20const*\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +4660:std::__2::__libcpp_mbrtowc_l\5babi:v160004\5d\28wchar_t*\2c\20char\20const*\2c\20unsigned\20long\2c\20__mbstate_t*\2c\20__locale_struct*\29 +4661:std::__2::__libcpp_mb_cur_max_l\5babi:v160004\5d\28__locale_struct*\29 +4662:std::__2::__libcpp_condvar_wait\5babi:v160004\5d\28pthread_cond_t*\2c\20pthread_mutex_t*\29 +4663:std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::__deallocate_node\28std::__2::__hash_node_base\2c\20void*>*>*\29 +4664:std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::__deallocate_node\28std::__2::__hash_node_base\2c\20void*>*>*\29 +4665:std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__deallocate_node\28std::__2::__hash_node_base*>*\29 +4666:std::__2::__function::__value_func\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::operator\28\29\5babi:v160004\5d\28skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20float&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\2c\20SkPoint&&\2c\20SkPoint&&\2c\20skia::textlayout::InternalLineMetrics&&\2c\20bool&&\29\20const +4667:std::__2::__function::__value_func\29>::operator\28\29\5babi:v160004\5d\28skia::textlayout::Block&&\2c\20skia_private::TArray&&\29\20const +4668:std::__2::__function::__value_func::operator\28\29\5babi:v160004\5d\28\29\20const +4669:std::__2::__function::__value_func\29>::operator\28\29\5babi:v160004\5d\28sk_sp&&\29\20const +4670:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29 +4671:std::__2::__function::__func\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +4672:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +4673:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29 +4674:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +4675:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +4676:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +4677:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +4678:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +4679:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy_deallocate\28\29 +4680:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy\28\29 +4681:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +4682:std::__2::__forward_list_base\2c\20std::__2::allocator>>::clear\28\29 +4683:std::__2::__exception_guard_exceptions>::__destroy_vector>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +4684:std::__2::__exception_guard_exceptions>::__destroy_vector>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +4685:std::__2::__exception_guard_exceptions\2c\20SkString*>>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +4686:std::__2::__constexpr_wcslen\5babi:v160004\5d\28wchar_t\20const*\29 +4687:std::__2::__compressed_pair_elem\29::$_0\2c\200\2c\20false>::__compressed_pair_elem\5babi:v160004\5d\29::$_0\20const&\2c\200ul>\28std::__2::piecewise_construct_t\2c\20std::__2::tuple\29::$_0\20const&>\2c\20std::__2::__tuple_indices<0ul>\29 +4688:std::__2::__compressed_pair_elem::__compressed_pair_elem\5babi:v160004\5d\28std::__2::piecewise_construct_t\2c\20std::__2::tuple\2c\20std::__2::__tuple_indices<0ul>\29 +4689:std::__2::__compressed_pair::__compressed_pair\5babi:v160004\5d\28unsigned\20char*&\2c\20void\20\28*&&\29\28void*\29\29 +4690:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::__sso_allocator&\2c\20unsigned\20long\29 +4691:srgb_to_hsl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +4692:sort_r_swap_blocks\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4693:sort_increasing_Y\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +4694:sort_edges\28SkEdge**\2c\20int\2c\20SkEdge**\29 +4695:sort_as_rect\28skvx::Vec<4\2c\20float>\20const&\29 +4696:small_blur\28double\2c\20double\2c\20SkMask\20const&\2c\20SkMaskBuilder*\29::$_0::operator\28\29\28SkGaussFilter\20const&\2c\20unsigned\20short*\29\20const +4697:skvx::Vec<8\2c\20unsigned\20int>\20skvx::cast\28skvx::Vec<8\2c\20unsigned\20short>\20const&\29 +4698:skvx::Vec<4\2c\20unsigned\20short>\20skvx::operator>><4\2c\20unsigned\20short>\28skvx::Vec<4\2c\20unsigned\20short>\20const&\2c\20int\29 +4699:skvx::Vec<4\2c\20unsigned\20short>\20skvx::operator<<<4\2c\20unsigned\20short>\28skvx::Vec<4\2c\20unsigned\20short>\20const&\2c\20int\29 +4700:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator^<4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +4701:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator>><4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20int\29 +4702:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator*<4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +4703:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator><4\2c\20unsigned\20int\2c\20int\2c\20void>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20int\29 +4704:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator!=<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +4705:skvx::Vec<4\2c\20skvx::Mask::type>\20skvx::operator!=<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4706:skvx::Vec<4\2c\20float>\20skvx::sqrt<4>\28skvx::Vec<4\2c\20float>\20const&\29 +4707:skvx::Vec<4\2c\20float>\20skvx::operator/<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +4708:skvx::Vec<4\2c\20float>\20skvx::operator/<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4709:skvx::Vec<4\2c\20float>\20skvx::operator-<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +4710:skvx::Vec<4\2c\20float>\20skvx::operator-<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4711:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20int\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20int\29 +4712:skvx::Vec<4\2c\20float>\20skvx::min<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4713:skvx::Vec<4\2c\20float>\20skvx::min<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20\28.5714\29 +4714:skvx::Vec<4\2c\20float>\20skvx::max<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4715:skvx::Vec<4\2c\20float>&\20skvx::operator*=<4\2c\20float>\28skvx::Vec<4\2c\20float>&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20\28.6618\29 +4716:skvx::Vec<2\2c\20unsigned\20char>\20skvx::cast\28skvx::Vec<2\2c\20float>\20const&\29 +4717:skvx::ScaledDividerU32::divide\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +4718:skvx::ScaledDividerU32::ScaledDividerU32\28unsigned\20int\29 +4719:sktext::gpu::can_use_direct\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +4720:sktext::gpu::build_distance_adjust_table\28float\2c\20float\29 +4721:sktext::gpu::VertexFiller::fillVertexData\28int\2c\20int\2c\20SkSpan\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkIRect\2c\20void*\29\20const +4722:sktext::gpu::TextBlobRedrawCoordinator::internalRemove\28sktext::gpu::TextBlob*\29 +4723:sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry::findBlobIndex\28sktext::gpu::TextBlob::Key\20const&\29\20const +4724:sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry::BlobIDCacheEntry\28sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry&&\29 +4725:sktext::gpu::TextBlob::~TextBlob\28\29 +4726:sktext::gpu::SubRunContainer::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20SkRefCnt\20const*\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +4727:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29::$_2::operator\28\29\28SkZip\2c\20skgpu::MaskFormat\29\20const +4728:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29::$_0::operator\28\29\28SkZip\2c\20skgpu::MaskFormat\29\20const +4729:sktext::gpu::SubRunContainer::MakeInAlloc\28sktext::GlyphRunList\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::SubRunContainer::SubRunCreationBehavior\2c\20char\20const*\29 +4730:sktext::gpu::SubRunContainer::EstimateAllocSize\28sktext::GlyphRunList\20const&\29 +4731:sktext::gpu::SubRunAllocator::SubRunAllocator\28int\29 +4732:sktext::gpu::SlugImpl::~SlugImpl\28\29 +4733:sktext::gpu::SDFTControl::isSDFT\28float\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +4734:sktext::SkStrikePromise::resetStrike\28\29 +4735:sktext::GlyphRunList::maxGlyphRunSize\28\29\20const +4736:sktext::GlyphRunBuilder::~GlyphRunBuilder\28\29 +4737:sktext::GlyphRunBuilder::makeGlyphRunList\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20SkPoint\29 +4738:sktext::GlyphRunBuilder::blobToGlyphRunList\28SkTextBlob\20const&\2c\20SkPoint\29 +4739:skstd::to_string\28float\29 +4740:skip_string +4741:skip_procedure +4742:skip_comment +4743:skif::compatible_sampling\28SkSamplingOptions\20const&\2c\20bool\2c\20SkSamplingOptions*\2c\20bool\29 +4744:skif::\28anonymous\20namespace\29::extract_subset\28SkSpecialImage\20const*\2c\20skif::LayerSpace\2c\20skif::LayerSpace\20const&\2c\20bool\29 +4745:skif::\28anonymous\20namespace\29::decompose_transform\28SkMatrix\20const&\2c\20SkPoint\2c\20SkMatrix*\2c\20SkMatrix*\29 +4746:skif::\28anonymous\20namespace\29::apply_decal\28skif::LayerSpace\20const&\2c\20sk_sp\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29 +4747:skif::\28anonymous\20namespace\29::GaneshBackend::maxSigma\28\29\20const +4748:skif::\28anonymous\20namespace\29::GaneshBackend::getBlurEngine\28\29\20const +4749:skif::\28anonymous\20namespace\29::GaneshBackend::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +4750:skif::LayerSpace\20skif::Mapping::paramToLayer\28skif::ParameterSpace\20const&\29\20const +4751:skif::LayerSpace::inverseMapRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29\20const +4752:skif::LayerSpace::inset\28skif::LayerSpace\20const&\29 +4753:skif::FilterResult::applyTransform\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29\20const +4754:skif::FilterResult::applyCrop\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkTileMode\29\20const +4755:skif::FilterResult::FilterResult\28sk_sp\29 +4756:skif::FilterResult::Builder::drawShader\28sk_sp\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +4757:skif::FilterResult::Builder::createInputShaders\28skif::LayerSpace\20const&\2c\20bool\29 +4758:skia_private::THashTable>\2c\20std::__2::basic_string_view>\2c\20skia_private::THashSet>\2c\20SkGoodHash>::Traits>::uncheckedSet\28std::__2::basic_string_view>&&\29 +4759:skia_private::THashTable::uncheckedSet\28sktext::gpu::Glyph*&&\29 +4760:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4761:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4762:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::remove\28unsigned\20int\20const&\29 +4763:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot::emplace\28skia_private::THashMap::Pair&&\2c\20unsigned\20int\29 +4764:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4765:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::reset\28\29 +4766:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4767:skia_private::THashTable\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair&&\29 +4768:skia_private::THashTable\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot::reset\28\29 +4769:skia_private::THashTable\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair&&\2c\20unsigned\20int\29 +4770:skia_private::THashTable\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair\2c\20skia::textlayout::OneLineShaper::FontKey\2c\20skia_private::THashMap\2c\20skia::textlayout::OneLineShaper::FontKey::Hasher>::Pair>::Hash\28skia::textlayout::OneLineShaper::FontKey\20const&\29 +4771:skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair&&\29 +4772:skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot::reset\28\29 +4773:skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair&&\2c\20unsigned\20int\29 +4774:skia_private::THashTable\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair\2c\20skia::textlayout::FontCollection::FamilyKey\2c\20skia_private::THashMap\2c\20std::__2::allocator>>\2c\20skia::textlayout::FontCollection::FamilyKey::Hasher>::Pair>::Hash\28skia::textlayout::FontCollection::FamilyKey\20const&\29 +4775:skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::uncheckedSet\28skia_private::THashMap>::Pair&&\29 +4776:skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::reset\28\29 +4777:skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Hash\28skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\20const&\29 +4778:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4779:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot::reset\28\29 +4780:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot::emplace\28skia_private::THashMap::Pair&&\2c\20unsigned\20int\29 +4781:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +4782:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +4783:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +4784:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +4785:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +4786:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::emplace\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +4787:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Hash\28SkString\20const&\29 +4788:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +4789:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +4790:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot::emplace\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +4791:skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4792:skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::firstPopulatedSlot\28\29\20const +4793:skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::Iter>::operator++\28\29 +4794:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair&&\29 +4795:skia_private::THashTable\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::Type\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +4796:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4797:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4798:skia_private::THashTable::Pair\2c\20SkSL::FunctionDeclaration\20const*\2c\20skia_private::THashMap::Pair>::firstPopulatedSlot\28\29\20const +4799:skia_private::THashTable::Pair\2c\20SkSL::FunctionDeclaration\20const*\2c\20skia_private::THashMap::Pair>::Iter>::operator++\28\29 +4800:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4801:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::Slot::reset\28\29 +4802:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::Slot::emplace\28skia_private::THashMap::Pair&&\2c\20unsigned\20int\29 +4803:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +4804:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::resize\28int\29 +4805:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot::emplace\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +4806:skia_private::THashTable::Pair\2c\20GrSurfaceProxy*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4807:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28skgpu::ganesh::SmallPathShapeData*&&\29 +4808:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4809:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +4810:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::uncheckedSet\28sk_sp&&\29 +4811:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::reset\28\29 +4812:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot::reset\28\29 +4813:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot::emplace\28sk_sp&&\2c\20unsigned\20int\29 +4814:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::uncheckedSet\28sk_sp&&\29 +4815:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::resize\28int\29 +4816:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::Slot::emplace\28sk_sp&&\2c\20unsigned\20int\29 +4817:skia_private::THashTable::Traits>::set\28int\29 +4818:skia_private::THashTable::Traits>::THashTable\28skia_private::THashTable::Traits>&&\29 +4819:skia_private::THashTable<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20SkImageFilterCacheKey\2c\20SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::AdaptedTraits>::uncheckedSet\28\28anonymous\20namespace\29::CacheImpl::Value*&&\29 +4820:skia_private::THashTable<\28anonymous\20namespace\29::CacheImpl::Value*\2c\20SkImageFilterCacheKey\2c\20SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::AdaptedTraits>::resize\28int\29 +4821:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +4822:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +4823:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::findOrNull\28skgpu::ScratchKey\20const&\29\20const +4824:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +4825:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +4826:skia_private::THashTable::Traits>::uncheckedSet\28SkSL::Variable\20const*&&\29 +4827:skia_private::THashTable::Traits>::resize\28int\29 +4828:skia_private::THashTable::uncheckedSet\28SkResourceCache::Rec*&&\29 +4829:skia_private::THashTable::resize\28int\29 +4830:skia_private::THashTable::find\28SkResourceCache::Key\20const&\29\20const +4831:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::uncheckedSet\28SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*&&\29 +4832:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::resize\28int\29 +4833:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::find\28skia::textlayout::ParagraphCacheKey\20const&\29\20const +4834:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::uncheckedSet\28SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*&&\29 +4835:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::resize\28int\29 +4836:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::find\28GrProgramDesc\20const&\29\20const +4837:skia_private::THashTable::uncheckedSet\28SkGlyphDigest&&\29 +4838:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrThreadSafeCache::Entry*&&\29 +4839:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4840:skia_private::THashTable::AdaptedTraits>::remove\28skgpu::UniqueKey\20const&\29 +4841:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrTextureProxy*&&\29 +4842:skia_private::THashTable::AdaptedTraits>::set\28GrTextureProxy*\29 +4843:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4844:skia_private::THashTable::AdaptedTraits>::findOrNull\28skgpu::UniqueKey\20const&\29\20const +4845:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrGpuResource*&&\29 +4846:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4847:skia_private::THashTable::AdaptedTraits>::findOrNull\28skgpu::UniqueKey\20const&\29\20const +4848:skia_private::THashTable::Traits>::uncheckedSet\28FT_Opaque_Paint_&&\29 +4849:skia_private::THashTable::Traits>::resize\28int\29 +4850:skia_private::THashSet::contains\28int\20const&\29\20const +4851:skia_private::THashSet::contains\28FT_Opaque_Paint_\20const&\29\20const +4852:skia_private::THashSet::add\28FT_Opaque_Paint_\29 +4853:skia_private::THashMap::find\28unsigned\20int\20const&\29\20const +4854:skia_private::THashMap\2c\20SkGoodHash>::find\28int\20const&\29\20const +4855:skia_private::THashMap\2c\20SkGoodHash>::find\28SkString\20const&\29\20const +4856:skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +4857:skia_private::THashMap::find\28SkSL::IRNode\20const*\20const&\29\20const +4858:skia_private::THashMap::set\28SkSL::FunctionDeclaration\20const*\2c\20int\29 +4859:skia_private::THashMap>\2c\20SkGoodHash>::remove\28SkImageFilter\20const*\20const&\29 +4860:skia_private::THashMap>\2c\20SkGoodHash>::Pair::Pair\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +4861:skia_private::THashMap::find\28GrSurfaceProxy*\20const&\29\20const +4862:skia_private::TArray::push_back_raw\28int\29 +4863:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4864:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +4865:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4866:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +4867:skia_private::TArray::Allocate\28int\2c\20double\29 +4868:skia_private::TArray>\2c\20true>::~TArray\28\29 +4869:skia_private::TArray>\2c\20true>::operator=\28skia_private::TArray>\2c\20true>&&\29 +4870:skia_private::TArray>\2c\20true>::~TArray\28\29 +4871:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +4872:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::checkRealloc\28int\2c\20double\29 +4873:skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +4874:skia_private::TArray\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +4875:skia_private::TArray::destroyAll\28\29 +4876:skia_private::TArray::destroyAll\28\29 +4877:skia_private::TArray\2c\20false>::~TArray\28\29 +4878:skia_private::TArray::~TArray\28\29 +4879:skia_private::TArray::destroyAll\28\29 +4880:skia_private::TArray::copy\28skia::textlayout::Run\20const*\29 +4881:skia_private::TArray::Allocate\28int\2c\20double\29 +4882:skia_private::TArray::destroyAll\28\29 +4883:skia_private::TArray::initData\28int\29 +4884:skia_private::TArray::destroyAll\28\29 +4885:skia_private::TArray::TArray\28skia_private::TArray&&\29 +4886:skia_private::TArray::Allocate\28int\2c\20double\29 +4887:skia_private::TArray::copy\28skia::textlayout::Cluster\20const*\29 +4888:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4889:skia_private::TArray::Allocate\28int\2c\20double\29 +4890:skia_private::TArray::initData\28int\29 +4891:skia_private::TArray::destroyAll\28\29 +4892:skia_private::TArray::TArray\28skia_private::TArray&&\29 +4893:skia_private::TArray::Allocate\28int\2c\20double\29 +4894:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4895:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4896:skia_private::TArray::push_back\28\29 +4897:skia_private::TArray::push_back\28\29 +4898:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4899:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4900:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4901:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4902:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4903:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4904:skia_private::TArray::destroyAll\28\29 +4905:skia_private::TArray::clear\28\29 +4906:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4907:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4908:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4909:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4910:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4911:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4912:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4913:skia_private::TArray::operator=\28skia_private::TArray&&\29 +4914:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4915:skia_private::TArray::destroyAll\28\29 +4916:skia_private::TArray::clear\28\29 +4917:skia_private::TArray::Allocate\28int\2c\20double\29 +4918:skia_private::TArray::BufferFinishedMessage\2c\20false>::operator=\28skia_private::TArray::BufferFinishedMessage\2c\20false>&&\29 +4919:skia_private::TArray::BufferFinishedMessage\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +4920:skia_private::TArray::BufferFinishedMessage\2c\20false>::destroyAll\28\29 +4921:skia_private::TArray::BufferFinishedMessage\2c\20false>::clear\28\29 +4922:skia_private::TArray::Plane\2c\20false>::preallocateNewData\28int\2c\20double\29 +4923:skia_private::TArray::Plane\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +4924:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +4925:skia_private::TArray\2c\20true>::~TArray\28\29 +4926:skia_private::TArray\2c\20true>::~TArray\28\29 +4927:skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +4928:skia_private::TArray\2c\20true>::clear\28\29 +4929:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4930:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4931:skia_private::TArray::push_back_raw\28int\29 +4932:skia_private::TArray::push_back\28hb_feature_t&&\29 +4933:skia_private::TArray::resize_back\28int\29 +4934:skia_private::TArray::reset\28int\29 +4935:skia_private::TArray::reserve_exact\28int\29 +4936:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +4937:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4938:skia_private::TArray<\28anonymous\20namespace\29::DrawAtlasOpImpl::Geometry\2c\20true>::checkRealloc\28int\2c\20double\29 +4939:skia_private::TArray<\28anonymous\20namespace\29::DefaultPathOp::PathData\2c\20true>::preallocateNewData\28int\2c\20double\29 +4940:skia_private::TArray<\28anonymous\20namespace\29::AAHairlineOp::PathData\2c\20true>::preallocateNewData\28int\2c\20double\29 +4941:skia_private::TArray<\28anonymous\20namespace\29::AAHairlineOp::PathData\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +4942:skia_private::TArray::push_back_n\28int\2c\20SkUnicode::CodeUnitFlags\20const&\29 +4943:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4944:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4945:skia_private::TArray::operator=\28skia_private::TArray&&\29 +4946:skia_private::TArray::destroyAll\28\29 +4947:skia_private::TArray::initData\28int\29 +4948:skia_private::TArray::TArray\28skia_private::TArray\20const&\29 +4949:skia_private::TArray\29::ReorderedArgument\2c\20false>::push_back\28SkSL::optimize_constructor_swizzle\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ConstructorCompound\20const&\2c\20skia_private::STArray<4\2c\20signed\20char\2c\20true>\29::ReorderedArgument&&\29 +4950:skia_private::TArray::reserve_exact\28int\29 +4951:skia_private::TArray::fromBack\28int\29 +4952:skia_private::TArray::TArray\28skia_private::TArray&&\29 +4953:skia_private::TArray::Allocate\28int\2c\20double\29 +4954:skia_private::TArray::push_back\28SkSL::Field&&\29 +4955:skia_private::TArray::initData\28int\29 +4956:skia_private::TArray::Allocate\28int\2c\20double\29 +4957:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4958:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4959:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4960:skia_private::TArray\2c\20true>::push_back\28SkRGBA4f<\28SkAlphaType\292>&&\29 +4961:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +4962:skia_private::TArray\2c\20true>::checkRealloc\28int\2c\20double\29 +4963:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +4964:skia_private::TArray::operator=\28skia_private::TArray&&\29 +4965:skia_private::TArray::~TArray\28\29 +4966:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4967:skia_private::TArray::destroyAll\28\29 +4968:skia_private::TArray::~TArray\28\29 +4969:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4970:skia_private::TArray::destroyAll\28\29 +4971:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4972:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4973:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4974:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4975:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4976:skia_private::TArray::push_back\28\29 +4977:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4978:skia_private::TArray::push_back\28\29 +4979:skia_private::TArray::push_back_raw\28int\29 +4980:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4981:skia_private::TArray::~TArray\28\29 +4982:skia_private::TArray::operator=\28skia_private::TArray&&\29 +4983:skia_private::TArray::destroyAll\28\29 +4984:skia_private::TArray::clear\28\29 +4985:skia_private::TArray::Allocate\28int\2c\20double\29 +4986:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4987:skia_private::TArray::push_back\28\29 +4988:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4989:skia_private::TArray::pop_back\28\29 +4990:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4991:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4992:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4993:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4994:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4995:skia_private::STArray<8\2c\20int\2c\20true>::STArray\28int\29 +4996:skia_private::STArray<4\2c\20unsigned\20char\2c\20true>::STArray\28skia_private::STArray<4\2c\20unsigned\20char\2c\20true>&&\29 +4997:skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>::STArray\28skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>\20const&\29 +4998:skia_private::STArray<4\2c\20SkPoint\2c\20true>::STArray\28skia_private::STArray<4\2c\20SkPoint\2c\20true>&&\29 +4999:skia_private::STArray<2\2c\20float\2c\20true>::STArray\28skia_private::STArray<2\2c\20float\2c\20true>&&\29 +5000:skia_private::AutoTMalloc::realloc\28unsigned\20long\29 +5001:skia_private::AutoTMalloc::reset\28unsigned\20long\29 +5002:skia_private::AutoTArray::AutoTArray\28unsigned\20long\29 +5003:skia_private::AutoTArray::AutoTArray\28unsigned\20long\29 +5004:skia_private::AutoTArray::AutoTArray\28unsigned\20long\29 +5005:skia_private::AutoSTMalloc<256ul\2c\20unsigned\20short\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +5006:skia_private::AutoSTArray<64\2c\20TriangulationVertex>::reset\28int\29 +5007:skia_private::AutoSTArray<64\2c\20SkGlyph\20const*>::reset\28int\29 +5008:skia_private::AutoSTArray<4\2c\20unsigned\20char>::reset\28int\29 +5009:skia_private::AutoSTArray<4\2c\20GrResourceHandle>::reset\28int\29 +5010:skia_private::AutoSTArray<3\2c\20std::__2::unique_ptr>>::reset\28int\29 +5011:skia_private::AutoSTArray<32\2c\20unsigned\20short>::~AutoSTArray\28\29 +5012:skia_private::AutoSTArray<32\2c\20unsigned\20short>::reset\28int\29 +5013:skia_private::AutoSTArray<32\2c\20SkRect>::reset\28int\29 +5014:skia_private::AutoSTArray<2\2c\20sk_sp>::reset\28int\29 +5015:skia_private::AutoSTArray<16\2c\20SkRect>::~AutoSTArray\28\29 +5016:skia_private::AutoSTArray<16\2c\20GrMipLevel>::reset\28int\29 +5017:skia_private::AutoSTArray<15\2c\20GrMipLevel>::reset\28int\29 +5018:skia_private::AutoSTArray<14\2c\20std::__2::unique_ptr>>::~AutoSTArray\28\29 +5019:skia_private::AutoSTArray<14\2c\20std::__2::unique_ptr>>::reset\28int\29 +5020:skia_private::AutoSTArray<14\2c\20GrMipLevel>::~AutoSTArray\28\29 +5021:skia_private::AutoSTArray<14\2c\20GrMipLevel>::reset\28int\29 +5022:skia_private::AutoSTArray<128\2c\20unsigned\20char>::~AutoSTArray\28\29 +5023:skia_png_set_longjmp_fn +5024:skia_png_read_finish_IDAT +5025:skia_png_read_chunk_header +5026:skia_png_read_IDAT_data +5027:skia_png_gamma_16bit_correct +5028:skia_png_do_strip_channel +5029:skia_png_do_gray_to_rgb +5030:skia_png_do_expand +5031:skia_png_destroy_gamma_table +5032:skia_png_colorspace_set_sRGB +5033:skia_png_check_IHDR +5034:skia_png_calculate_crc +5035:skia::textlayout::operator==\28skia::textlayout::FontArguments\20const&\2c\20skia::textlayout::FontArguments\20const&\29 +5036:skia::textlayout::\28anonymous\20namespace\29::littleRound\28float\29 +5037:skia::textlayout::\28anonymous\20namespace\29::LineBreakerWithLittleRounding::breakLine\28float\29\20const +5038:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29 +5039:skia::textlayout::TypefaceFontStyleSet::matchStyle\28SkFontStyle\20const&\29 +5040:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29 +5041:skia::textlayout::TypefaceFontProvider::registerTypeface\28sk_sp\2c\20SkString\20const&\29 +5042:skia::textlayout::TextWrapper::TextStretch::TextStretch\28skia::textlayout::Cluster*\2c\20skia::textlayout::Cluster*\2c\20bool\29 +5043:skia::textlayout::TextStyle::matchOneAttribute\28skia::textlayout::StyleType\2c\20skia::textlayout::TextStyle\20const&\29\20const +5044:skia::textlayout::TextStyle::equals\28skia::textlayout::TextStyle\20const&\29\20const +5045:skia::textlayout::TextShadow::operator!=\28skia::textlayout::TextShadow\20const&\29\20const +5046:skia::textlayout::TextLine::~TextLine\28\29 +5047:skia::textlayout::TextLine::spacesWidth\28\29\20const +5048:skia::textlayout::TextLine::shiftCluster\28skia::textlayout::Cluster\20const*\2c\20float\2c\20float\29 +5049:skia::textlayout::TextLine::iterateThroughClustersInGlyphsOrder\28bool\2c\20bool\2c\20std::__2::function\20const&\29\20const::$_0::operator\28\29\28unsigned\20long\20const&\29\20const::'lambda'\28skia::textlayout::Cluster&\29::operator\28\29\28skia::textlayout::Cluster&\29\20const +5050:skia::textlayout::TextLine::iterateThroughClustersInGlyphsOrder\28bool\2c\20bool\2c\20std::__2::function\20const&\29\20const +5051:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29::operator\28\29\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\20const::'lambda'\28SkRect\29::operator\28\29\28SkRect\29\20const +5052:skia::textlayout::TextLine::getMetrics\28\29\20const +5053:skia::textlayout::TextLine::extendHeight\28skia::textlayout::TextLine::ClipContext\20const&\29\20const +5054:skia::textlayout::TextLine::ensureTextBlobCachePopulated\28\29 +5055:skia::textlayout::TextLine::endsWithHardLineBreak\28\29\20const +5056:skia::textlayout::TextLine::buildTextBlob\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +5057:skia::textlayout::TextLine::TextLine\28skia::textlayout::ParagraphImpl*\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20skia::textlayout::InternalLineMetrics\29 +5058:skia::textlayout::TextLine::TextBlobRecord::~TextBlobRecord\28\29 +5059:skia::textlayout::TextLine::TextBlobRecord::TextBlobRecord\28\29 +5060:skia::textlayout::TextLine&\20skia_private::TArray::emplace_back&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20float&\2c\20skia::textlayout::InternalLineMetrics&>\28skia::textlayout::ParagraphImpl*&&\2c\20SkPoint&\2c\20SkPoint&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20skia::textlayout::SkRange&\2c\20float&\2c\20skia::textlayout::InternalLineMetrics&\29 +5061:skia::textlayout::StrutStyle::StrutStyle\28\29 +5062:skia::textlayout::Run::shift\28skia::textlayout::Cluster\20const*\2c\20float\29 +5063:skia::textlayout::Run::newRunBuffer\28\29 +5064:skia::textlayout::Run::clusterIndex\28unsigned\20long\29\20const +5065:skia::textlayout::Run::calculateMetrics\28\29 +5066:skia::textlayout::ParagraphStyle::ellipsized\28\29\20const +5067:skia::textlayout::ParagraphPainter::DecorationStyle::DecorationStyle\28unsigned\20int\2c\20float\2c\20std::__2::optional\29 +5068:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29 +5069:skia::textlayout::ParagraphImpl::resolveStrut\28\29 +5070:skia::textlayout::ParagraphImpl::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +5071:skia::textlayout::ParagraphImpl::getGlyphInfoAtUTF16Offset\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +5072:skia::textlayout::ParagraphImpl::getGlyphClusterAt\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +5073:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda0'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +5074:skia::textlayout::ParagraphImpl::computeEmptyMetrics\28\29 +5075:skia::textlayout::ParagraphImpl::buildClusterTable\28\29::$_0::operator\28\29\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20float\2c\20float\29\20const +5076:skia::textlayout::ParagraphCacheKey::ParagraphCacheKey\28skia::textlayout::ParagraphImpl\20const*\29 +5077:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29 +5078:skia::textlayout::ParagraphBuilderImpl::finalize\28\29 +5079:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda0'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +5080:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\2c\20bool\29 +5081:skia::textlayout::Paragraph::~Paragraph\28\29 +5082:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29 +5083:skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29::$_0::operator\28\29\28unsigned\20long\2c\20skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29::Dir\29\20const +5084:skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29 +5085:skia::textlayout::OneLineShaper::FontKey::operator==\28skia::textlayout::OneLineShaper::FontKey\20const&\29\20const +5086:skia::textlayout::InternalLineMetrics::add\28skia::textlayout::InternalLineMetrics\29 +5087:skia::textlayout::FontFeature::operator==\28skia::textlayout::FontFeature\20const&\29\20const +5088:skia::textlayout::FontFeature::FontFeature\28skia::textlayout::FontFeature\20const&\29 +5089:skia::textlayout::FontCollection::~FontCollection\28\29 +5090:skia::textlayout::FontCollection::matchTypeface\28SkString\20const&\2c\20SkFontStyle\29 +5091:skia::textlayout::FontCollection::defaultFallback\28int\2c\20SkFontStyle\2c\20SkString\20const&\29 +5092:skia::textlayout::FontCollection::FamilyKey::operator==\28skia::textlayout::FontCollection::FamilyKey\20const&\29\20const +5093:skia::textlayout::FontCollection::FamilyKey::FamilyKey\28skia::textlayout::FontCollection::FamilyKey&&\29 +5094:skia::textlayout::FontArguments::~FontArguments\28\29 +5095:skia::textlayout::Decoration::operator==\28skia::textlayout::Decoration\20const&\29\20const +5096:skia::textlayout::Cluster::trimmedWidth\28unsigned\20long\29\20const +5097:skgpu::tess::\28anonymous\20namespace\29::write_curve_index_buffer_base_index\28skgpu::VertexWriter\2c\20unsigned\20long\2c\20unsigned\20short\29 +5098:skgpu::tess::StrokeParams::set\28SkStrokeRec\20const&\29 +5099:skgpu::tess::StrokeIterator::finishOpenContour\28\29 +5100:skgpu::tess::PreChopPathCurves\28float\2c\20SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +5101:skgpu::tess::LinearTolerances::setStroke\28skgpu::tess::StrokeParams\20const&\2c\20float\29 +5102:skgpu::tess::LinearTolerances::requiredResolveLevel\28\29\20const +5103:skgpu::tess::GetJoinType\28SkStrokeRec\20const&\29 +5104:skgpu::tess::FixedCountCurves::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +5105:skgpu::tess::CullTest::areVisible3\28SkPoint\20const*\29\20const +5106:skgpu::tess::ConicHasCusp\28SkPoint\20const*\29 +5107:skgpu::tess::CalcNumRadialSegmentsPerRadian\28float\29 +5108:skgpu::ganesh::\28anonymous\20namespace\29::add_line_to_segment\28SkPoint\20const&\2c\20skia_private::TArray*\29 +5109:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29 +5110:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::flush\28GrMeshDrawTarget*\2c\20skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::FlushInfo*\29\20const +5111:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::addToAtlasWithRetry\28GrMeshDrawTarget*\2c\20skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::FlushInfo*\2c\20skgpu::ganesh::SmallPathAtlasMgr*\2c\20int\2c\20int\2c\20void\20const*\2c\20SkRect\20const&\2c\20int\2c\20skgpu::ganesh::SmallPathShapeData*\29\20const +5112:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::SmallPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20GrUserStencilSettings\20const*\29 +5113:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29 +5114:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29 +5115:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::recordDraw\28GrMeshDrawTarget*\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20int\2c\20unsigned\20short*\29 +5116:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::PathData::PathData\28skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::PathData&&\29 +5117:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::AAFlatteningConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20float\2c\20SkStrokeRec::Style\2c\20SkPaint::Join\2c\20float\2c\20GrUserStencilSettings\20const*\29 +5118:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29 +5119:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::PathData::PathData\28skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::PathData&&\29 +5120:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::AAConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrUserStencilSettings\20const*\29 +5121:skgpu::ganesh::TextureOp::Make\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::ganesh::TextureOp::Saturate\2c\20SkBlendMode\2c\20GrAAType\2c\20DrawQuad*\2c\20SkRect\20const*\29 +5122:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +5123:skgpu::ganesh::SurfaceFillContext::blitTexture\28GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\29 +5124:skgpu::ganesh::SurfaceFillContext::arenas\28\29 +5125:skgpu::ganesh::SurfaceFillContext::addDrawOp\28std::__2::unique_ptr>\29 +5126:skgpu::ganesh::SurfaceFillContext::SurfaceFillContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +5127:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29.1 +5128:skgpu::ganesh::SurfaceDrawContext::setNeedsStencil\28\29 +5129:skgpu::ganesh::SurfaceDrawContext::internalStencilClear\28SkIRect\20const*\2c\20bool\29 +5130:skgpu::ganesh::SurfaceDrawContext::fillRectWithEdgeAA\28GrClip\20const*\2c\20GrPaint&&\2c\20GrQuadAAFlags\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const*\29 +5131:skgpu::ganesh::SurfaceDrawContext::drawVertices\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20sk_sp\2c\20GrPrimitiveType*\2c\20bool\29 +5132:skgpu::ganesh::SurfaceDrawContext::drawTexturedQuad\28GrClip\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkBlendMode\2c\20DrawQuad*\2c\20SkRect\20const*\29 +5133:skgpu::ganesh::SurfaceDrawContext::drawTexture\28GrClip\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkBlendMode\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20sk_sp\29 +5134:skgpu::ganesh::SurfaceDrawContext::drawStrokedLine\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkStrokeRec\20const&\29 +5135:skgpu::ganesh::SurfaceDrawContext::drawRegion\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrStyle\20const&\2c\20GrUserStencilSettings\20const*\29 +5136:skgpu::ganesh::SurfaceDrawContext::drawOval\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\29 +5137:skgpu::ganesh::SurfaceDrawContext::drawAtlas\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20int\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\29 +5138:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29::$_0::operator\28\29\28\29\20const +5139:skgpu::ganesh::SurfaceDrawContext::SurfaceDrawContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +5140:skgpu::ganesh::SurfaceContext::writePixels\28GrDirectContext*\2c\20GrCPixmap\2c\20SkIPoint\29 +5141:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +5142:skgpu::ganesh::SurfaceContext::copy\28sk_sp\2c\20SkIRect\2c\20SkIPoint\29 +5143:skgpu::ganesh::SurfaceContext::copyScaled\28sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20SkFilterMode\29 +5144:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +5145:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::FinishContext::~FinishContext\28\29 +5146:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +5147:skgpu::ganesh::StrokeTessellator::draw\28GrOpFlushState*\29\20const +5148:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29 +5149:skgpu::ganesh::StrokeTessellateOp::prePrepareTessellator\28GrTessellationShader::ProgramArgs&&\2c\20GrAppliedClip&&\29 +5150:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::allowed_stroke\28GrCaps\20const*\2c\20SkStrokeRec\20const&\2c\20GrAA\2c\20bool*\29 +5151:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29 +5152:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::NonAAStrokeRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrSimpleMeshDrawOpHelper::InputFlags\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\2c\20GrAAType\29 +5153:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29 +5154:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::ClassID\28\29 +5155:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::AAStrokeRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::RectInfo\20const&\2c\20bool\29 +5156:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::AAStrokeRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const&\29 +5157:skgpu::ganesh::SoftwarePathRenderer::DrawAroundInvPath\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrPaint&&\2c\20GrUserStencilSettings\20const&\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29 +5158:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +5159:skgpu::ganesh::SmallPathAtlasMgr::reset\28\29 +5160:skgpu::ganesh::SmallPathAtlasMgr::findOrCreate\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +5161:skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +5162:skgpu::ganesh::SmallPathAtlasMgr::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +5163:skgpu::ganesh::ShadowRRectOp::Make\28GrRecordingContext*\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20float\2c\20float\29 +5164:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29 +5165:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::RegionOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\29 +5166:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::primitiveType\28\29\20const +5167:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::VertexSpec\28GrQuad::Type\2c\20skgpu::ganesh::QuadPerEdgeAA::ColorType\2c\20GrQuad::Type\2c\20bool\2c\20skgpu::ganesh::QuadPerEdgeAA::Subset\2c\20GrAAType\2c\20bool\2c\20skgpu::ganesh::QuadPerEdgeAA::IndexBufferOption\29 +5168:skgpu::ganesh::QuadPerEdgeAA::Tessellator::append\28GrQuad*\2c\20GrQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\29 +5169:skgpu::ganesh::QuadPerEdgeAA::Tessellator::Tessellator\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29 +5170:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29 +5171:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::initializeAttrs\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29 +5172:skgpu::ganesh::QuadPerEdgeAA::IssueDraw\28GrCaps\20const&\2c\20GrOpsRenderPass*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +5173:skgpu::ganesh::QuadPerEdgeAA::GetIndexBuffer\28GrMeshDrawTarget*\2c\20skgpu::ganesh::QuadPerEdgeAA::IndexBufferOption\29 +5174:skgpu::ganesh::PathWedgeTessellator::Make\28SkArenaAlloc*\2c\20bool\2c\20skgpu::tess::PatchAttribs\29 +5175:skgpu::ganesh::PathTessellator::PathTessellator\28bool\2c\20skgpu::tess::PatchAttribs\29 +5176:skgpu::ganesh::PathTessellator::PathDrawList*\20SkArenaAlloc::make\20const&>\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +5177:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29 +5178:skgpu::ganesh::PathTessellateOp::usesMSAA\28\29\20const +5179:skgpu::ganesh::PathTessellateOp::prepareTessellator\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +5180:skgpu::ganesh::PathTessellateOp::PathTessellateOp\28SkArenaAlloc*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\2c\20SkRect\20const&\29 +5181:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29 +5182:skgpu::ganesh::PathStencilCoverOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +5183:skgpu::ganesh::PathStencilCoverOp::ClassID\28\29 +5184:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29 +5185:skgpu::ganesh::PathInnerTriangulateOp::pushFanStencilProgram\28GrTessellationShader::ProgramArgs\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +5186:skgpu::ganesh::PathInnerTriangulateOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +5187:skgpu::ganesh::PathCurveTessellator::~PathCurveTessellator\28\29 +5188:skgpu::ganesh::PathCurveTessellator::prepareWithTriangles\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20GrTriangulator::BreadcrumbTriangleList*\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +5189:skgpu::ganesh::PathCurveTessellator::Make\28SkArenaAlloc*\2c\20bool\2c\20skgpu::tess::PatchAttribs\29 +5190:skgpu::ganesh::OpsTask::setColorLoadOp\28GrLoadOp\2c\20std::__2::array\29 +5191:skgpu::ganesh::OpsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +5192:skgpu::ganesh::OpsTask::onExecute\28GrOpFlushState*\29 +5193:skgpu::ganesh::OpsTask::addSampledTexture\28GrSurfaceProxy*\29 +5194:skgpu::ganesh::OpsTask::addDrawOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0::operator\28\29\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\20const +5195:skgpu::ganesh::OpsTask::addDrawOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +5196:skgpu::ganesh::OpsTask::OpsTask\28GrDrawingManager*\2c\20GrSurfaceProxyView\2c\20GrAuditTrail*\2c\20sk_sp\29 +5197:skgpu::ganesh::OpsTask::OpChain::tryConcat\28skgpu::ganesh::OpsTask::OpChain::List*\2c\20GrProcessorSet::Analysis\2c\20GrDstProxyView\20const&\2c\20GrAppliedClip\20const*\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrAuditTrail*\29 +5198:skgpu::ganesh::OpsTask::OpChain::OpChain\28std::__2::unique_ptr>\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\29 +5199:skgpu::ganesh::MakeFragmentProcessorFromView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +5200:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29 +5201:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29 +5202:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::NonAALatticeOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20sk_sp\2c\20SkFilterMode\2c\20std::__2::unique_ptr>\2c\20SkRect\20const&\29 +5203:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29 +5204:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::can_use_hw_derivatives_with_coverage\28skvx::Vec<2\2c\20float>\20const&\2c\20SkPoint\20const&\29 +5205:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29 +5206:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::LocalCoords\20const&\2c\20GrAA\29 +5207:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::FillRRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::LocalCoords\20const&\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::ProcessorFlags\29 +5208:skgpu::ganesh::DrawableOp::~DrawableOp\28\29 +5209:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29 +5210:skgpu::ganesh::DrawAtlasPathOp::prepareProgram\28GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5211:skgpu::ganesh::Device::~Device\28\29 +5212:skgpu::ganesh::Device::replaceBackingProxy\28SkSurface::ContentChangeMode\2c\20sk_sp\2c\20GrColorType\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +5213:skgpu::ganesh::Device::makeSpecial\28SkBitmap\20const&\29 +5214:skgpu::ganesh::Device::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +5215:skgpu::ganesh::Device::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +5216:skgpu::ganesh::Device::drawEdgeAAImage\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20SkTileMode\29 +5217:skgpu::ganesh::Device::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +5218:skgpu::ganesh::Device::android_utils_clipAsRgn\28SkRegion*\29\20const +5219:skgpu::ganesh::DefaultPathRenderer::internalDrawPath\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20GrUserStencilSettings\20const&\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20bool\29 +5220:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +5221:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29 +5222:skgpu::ganesh::CopyView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\2c\20std::__2::basic_string_view>\29 +5223:skgpu::ganesh::ClipStack::clipPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrAA\2c\20SkClipOp\29 +5224:skgpu::ganesh::ClipStack::begin\28\29\20const +5225:skgpu::ganesh::ClipStack::SaveRecord::removeElements\28SkTBlockList*\29 +5226:skgpu::ganesh::ClipStack::RawElement::clipType\28\29\20const +5227:skgpu::ganesh::ClipStack::Mask::invalidate\28GrProxyProvider*\29 +5228:skgpu::ganesh::ClipStack::ElementIter::operator++\28\29 +5229:skgpu::ganesh::ClipStack::Element::Element\28skgpu::ganesh::ClipStack::Element\20const&\29 +5230:skgpu::ganesh::ClipStack::Draw::Draw\28SkRect\20const&\2c\20GrAA\29 +5231:skgpu::ganesh::ClearOp::ClearOp\28skgpu::ganesh::ClearOp::Buffer\2c\20GrScissorState\20const&\2c\20std::__2::array\2c\20bool\29 +5232:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29 +5233:skgpu::ganesh::AtlasTextOp::operator\20new\28unsigned\20long\29 +5234:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29::$_0::operator\28\29\28\29\20const +5235:skgpu::ganesh::AtlasTextOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5236:skgpu::ganesh::AtlasTextOp::ClassID\28\29 +5237:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29 +5238:skgpu::ganesh::AtlasRenderTask::stencilAtlasRect\28GrRecordingContext*\2c\20SkRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrUserStencilSettings\20const*\29 +5239:skgpu::ganesh::AtlasRenderTask::readView\28GrCaps\20const&\29\20const +5240:skgpu::ganesh::AtlasRenderTask::instantiate\28GrOnFlushResourceProvider*\2c\20sk_sp\29 +5241:skgpu::ganesh::AtlasRenderTask::addPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIPoint\2c\20int\2c\20int\2c\20bool\2c\20SkIPoint16*\29 +5242:skgpu::ganesh::AtlasRenderTask::addAtlasDrawOp\28std::__2::unique_ptr>\2c\20GrCaps\20const&\29 +5243:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +5244:skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +5245:skgpu::ganesh::AtlasPathRenderer::pathFitsInAtlas\28SkRect\20const&\2c\20GrAAType\29\20const +5246:skgpu::ganesh::AtlasPathRenderer::addPathToAtlas\28GrRecordingContext*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRect\20const&\2c\20SkIRect*\2c\20SkIPoint16*\2c\20bool*\2c\20std::__2::function\20const&\29 +5247:skgpu::ganesh::AtlasPathRenderer::AtlasPathKey::operator==\28skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\20const&\29\20const +5248:skgpu::ganesh::AsFragmentProcessor\28GrRecordingContext*\2c\20SkImage\20const*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +5249:skgpu::TiledTextureUtils::OptimizeSampleArea\28SkISize\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkRect*\2c\20SkRect*\2c\20SkMatrix*\29 +5250:skgpu::TiledTextureUtils::CanDisableMipmap\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +5251:skgpu::TClientMappedBufferManager::process\28\29 +5252:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29 +5253:skgpu::TAsyncReadResult::Plane::~Plane\28\29 +5254:skgpu::Swizzle::RGB1\28\29 +5255:skgpu::Swizzle::BGRA\28\29 +5256:skgpu::ScratchKey::ScratchKey\28skgpu::ScratchKey\20const&\29 +5257:skgpu::ResourceKey::operator=\28skgpu::ResourceKey\20const&\29 +5258:skgpu::RefCntedCallback::Make\28void\20\28*\29\28void*\29\2c\20void*\29 +5259:skgpu::RectanizerSkyline::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +5260:skgpu::RectanizerSkyline::RectanizerSkyline\28int\2c\20int\29 +5261:skgpu::Plot::~Plot\28\29 +5262:skgpu::Plot::resetRects\28\29 +5263:skgpu::Plot::Plot\28int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20SkColorType\2c\20unsigned\20long\29 +5264:skgpu::KeyBuilder::flush\28\29 +5265:skgpu::KeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +5266:skgpu::GetReducedBlendModeInfo\28SkBlendMode\29 +5267:skgpu::GetApproxSize\28SkISize\29::$_0::operator\28\29\28int\29\20const +5268:skgpu::Compute2DBlurKernel\28SkSize\2c\20SkISize\2c\20SkSpan\29 +5269:skgpu::Compute1DBlurKernel\28float\2c\20int\2c\20SkSpan\29 +5270:skgpu::AtlasLocator::updatePlotLocator\28skgpu::PlotLocator\29 +5271:skgpu::AtlasLocator::insetSrc\28int\29 +5272:skcms_Matrix3x3_invert +5273:sk_sp::~sk_sp\28\29 +5274:sk_sp<\28anonymous\20namespace\29::UniqueKeyInvalidator>\20sk_make_sp<\28anonymous\20namespace\29::UniqueKeyInvalidator\2c\20skgpu::UniqueKey&\2c\20unsigned\20int>\28skgpu::UniqueKey&\2c\20unsigned\20int&&\29 +5275:sk_sp<\28anonymous\20namespace\29::ShadowInvalidator>\20sk_make_sp<\28anonymous\20namespace\29::ShadowInvalidator\2c\20SkResourceCache::Key&>\28SkResourceCache::Key&\29 +5276:sk_sp::operator=\28sk_sp\20const&\29 +5277:sk_sp&\20std::__2::vector\2c\20std::__2::allocator>>::emplace_back>\28sk_sp&&\29 +5278:sk_sp\20sk_make_sp>\28sk_sp&&\29 +5279:sk_sp::~sk_sp\28\29 +5280:sk_sp::sk_sp\28sk_sp\20const&\29 +5281:sk_sp::operator=\28sk_sp&&\29 +5282:sk_sp::reset\28SkData\20const*\29 +5283:sk_sp::operator=\28sk_sp\20const&\29 +5284:sk_sp::operator=\28sk_sp\20const&\29 +5285:sk_sp\20sk_make_sp\2c\20float\2c\20sk_sp>\28sk_sp&&\2c\20float&&\2c\20sk_sp&&\29 +5286:sk_sp::~sk_sp\28\29 +5287:sk_sp&\20sk_sp::operator=\28sk_sp&&\29 +5288:sk_sp::reset\28GrSurface::RefCntedReleaseProc*\29 +5289:sk_sp::operator=\28sk_sp&&\29 +5290:sk_sp::~sk_sp\28\29 +5291:sk_sp::operator=\28sk_sp&&\29 +5292:sk_sp::~sk_sp\28\29 +5293:sk_sp\20sk_make_sp\28\29 +5294:sk_sp::reset\28GrArenas*\29 +5295:sk_ft_free\28FT_MemoryRec_*\2c\20void*\29 +5296:sk_fopen\28char\20const*\2c\20SkFILE_Flags\29 +5297:sk_fgetsize\28_IO_FILE*\29 +5298:sk_determinant\28float\20const*\2c\20int\29 +5299:sk_blit_below\28SkBlitter*\2c\20SkIRect\20const&\2c\20SkRegion\20const&\29 +5300:sk_blit_above\28SkBlitter*\2c\20SkIRect\20const&\2c\20SkRegion\20const&\29 +5301:sid_to_gid_t\20const*\20hb_sorted_array_t::bsearch\28unsigned\20int\20const&\2c\20sid_to_gid_t\20const*\29 +5302:short\20sk_saturate_cast\28float\29 +5303:sharp_angle\28SkPoint\20const*\29 +5304:setup_masks_arabic_plan\28arabic_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_script_t\29 +5305:set_points\28float*\2c\20int*\2c\20int\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float\2c\20float\2c\20bool\29 +5306:set_normal_unitnormal\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +5307:set_khr_debug_label\28GrGLGpu*\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +5308:setThrew +5309:setEmptyCheck\28SkRegion*\29 +5310:serialize_image\28SkImage\20const*\2c\20SkSerialProcs\29 +5311:sem_trywait +5312:sem_init +5313:sect_clamp_with_vertical\28SkPoint\20const*\2c\20float\29 +5314:scanexp +5315:scalbnl +5316:safe_picture_bounds\28SkRect\20const&\29 +5317:rt_has_msaa_render_buffer\28GrGLRenderTarget\20const*\2c\20GrGLCaps\20const&\29 +5318:rrect_type_to_vert_count\28RRectType\29 +5319:row_is_all_zeros\28unsigned\20char\20const*\2c\20int\29 +5320:round_up_to_int\28float\29 +5321:round_down_to_int\28float\29 +5322:rotate\28SkDCubic\20const&\2c\20int\2c\20int\2c\20SkDCubic&\29 +5323:rewind_if_necessary\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +5324:resolveImplicitLevels\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +5325:renderbuffer_storage_msaa\28GrGLGpu*\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +5326:remove_edge_below\28GrTriangulator::Edge*\29 +5327:remove_edge_above\28GrTriangulator::Edge*\29 +5328:reductionLineCount\28SkDQuad\20const&\29 +5329:recursive_edge_intersect\28GrTriangulator::Line\20const&\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Line\20const&\2c\20SkPoint\2c\20SkPoint\2c\20SkPoint*\2c\20double*\2c\20double*\29 +5330:rect_exceeds\28SkRect\20const&\2c\20float\29 +5331:reclassify_vertex\28TriangulationVertex*\2c\20SkPoint\20const*\2c\20int\2c\20ReflexHash*\2c\20SkTInternalLList*\29 +5332:radii_are_nine_patch\28SkPoint\20const*\29 +5333:quad_type_for_transformed_rect\28SkMatrix\20const&\29 +5334:quad_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5335:quad_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5336:quad_in_line\28SkPoint\20const*\29 +5337:puts +5338:pthread_mutex_destroy +5339:pthread_cond_broadcast +5340:psh_hint_table_record +5341:psh_hint_table_init +5342:psh_hint_table_find_strong_points +5343:psh_hint_table_done +5344:psh_hint_table_activate_mask +5345:psh_hint_align +5346:psh_glyph_load_points +5347:psh_globals_scale_widths +5348:psh_compute_dir +5349:psh_blues_set_zones_0 +5350:psh_blues_set_zones +5351:ps_table_realloc +5352:ps_parser_to_token_array +5353:ps_parser_load_field +5354:ps_mask_table_last +5355:ps_mask_table_done +5356:ps_hints_stem +5357:ps_dimension_end +5358:ps_dimension_done +5359:ps_dimension_add_t1stem +5360:ps_builder_start_point +5361:ps_builder_close_contour +5362:ps_builder_add_point1 +5363:printf_core +5364:prepare_to_draw_into_mask\28SkRect\20const&\2c\20SkMaskBuilder*\29 +5365:position_cluster\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\29 +5366:portable::uniform_color_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5367:portable::set_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5368:portable::scale_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5369:portable::lerp_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5370:portable::copy_from_indirect_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5371:portable::copy_2_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5372:portable::check_decal_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5373:pop_arg +5374:pointInTriangle\28SkDPoint\20const*\2c\20SkDPoint\20const&\29 +5375:pntz +5376:png_rtran_ok +5377:png_malloc_array_checked +5378:png_inflate +5379:png_format_buffer +5380:png_decompress_chunk +5381:png_colorspace_check_gamma +5382:png_cache_unknown_chunk +5383:pin_offset_s32\28int\2c\20int\2c\20int\29 +5384:path_key_from_data_size\28SkPath\20const&\29 +5385:parse_private_use_subtag\28char\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20char\20const*\2c\20unsigned\20char\20\28*\29\28unsigned\20char\29\29 +5386:paint_color_to_dst\28SkPaint\20const&\2c\20SkPixmap\20const&\29 +5387:optimize_layer_filter\28SkImageFilter\20const*\2c\20SkPaint*\29 +5388:operator==\28SkRect\20const&\2c\20SkRect\20const&\29 +5389:operator==\28SkRRect\20const&\2c\20SkRRect\20const&\29 +5390:operator==\28SkPaint\20const&\2c\20SkPaint\20const&\29 +5391:operator!=\28SkRRect\20const&\2c\20SkRRect\20const&\29 +5392:open_face +5393:on_same_side\28SkPoint\20const*\2c\20int\2c\20int\29 +5394:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29.1 +5395:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29 +5396:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +5397:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::glyphs\28\29\20const +5398:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +5399:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +5400:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::size\28\29\20const +5401:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +5402:move_multiples\28SkOpContourHead*\29 +5403:mono_cubic_closestT\28float\20const*\2c\20float\29 +5404:mbsrtowcs +5405:matchesEnd\28SkDPoint\20const*\2c\20SkDPoint\20const&\29 +5406:map_rect_perspective\28SkRect\20const&\2c\20float\20const*\29::$_0::operator\28\29\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29\20const::'lambda'\28skvx::Vec<4\2c\20float>\20const&\29::operator\28\29\28skvx::Vec<4\2c\20float>\20const&\29\20const +5407:map_quad_to_rect\28SkRSXform\20const&\2c\20SkRect\20const&\29 +5408:map_quad_general\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20SkMatrix\20const&\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\29 +5409:make_xrect\28SkRect\20const&\29 +5410:make_tiled_gradient\28GrFPArgs\20const&\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +5411:make_premul_effect\28std::__2::unique_ptr>\29 +5412:make_paint_with_image\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkSamplingOptions\20const&\2c\20SkMatrix*\29 +5413:make_dual_interval_colorizer\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20float\29 +5414:make_clamped_gradient\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20bool\29 +5415:make_bmp_proxy\28GrProxyProvider*\2c\20SkBitmap\20const&\2c\20GrColorType\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +5416:long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +5417:long\20long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +5418:long\20double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +5419:log2f_\28float\29 +5420:load_post_names +5421:line_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5422:line_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5423:lineMetrics_getLineNumber +5424:lineMetrics_getHardBreak +5425:lineBreakBuffer_free +5426:lin_srgb_to_oklab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5427:lang_find_or_insert\28char\20const*\29 +5428:is_zero_width_char\28hb_font_t*\2c\20unsigned\20int\29 +5429:is_simple_rect\28GrQuad\20const&\29 +5430:is_plane_config_compatible_with_subsampling\28SkYUVAInfo::PlaneConfig\2c\20SkYUVAInfo::Subsampling\29 +5431:is_overlap_edge\28GrTriangulator::Edge*\29 +5432:is_int\28float\29 +5433:is_halant_use\28hb_glyph_info_t\20const&\29 +5434:is_float_fp32\28GrGLContextInfo\20const&\2c\20GrGLInterface\20const*\2c\20unsigned\20int\29 +5435:iprintf +5436:invalidate_buffer\28GrGLGpu*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\29 +5437:interp_cubic_coords\28double\20const*\2c\20double*\2c\20double\29 +5438:int\20SkRecords::Pattern>::matchFirst>\28SkRecords::Is*\2c\20SkRecord*\2c\20int\29 +5439:int\20OT::IntType::cmp\28unsigned\20int\29\20const +5440:inside_triangle\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +5441:init_mparams +5442:init_em_queued_call_args +5443:inflateEnd +5444:image_ref +5445:image_getWidth +5446:hb_vector_t::resize\28int\2c\20bool\2c\20bool\29 +5447:hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +5448:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +5449:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5450:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5451:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5452:hb_vector_t::pop\28\29 +5453:hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +5454:hb_vector_t\2c\20false>::fini\28\29 +5455:hb_vector_t::shrink_vector\28unsigned\20int\29 +5456:hb_vector_t::fini\28\29 +5457:hb_unicode_mirroring_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +5458:hb_unicode_funcs_t::is_default_ignorable\28unsigned\20int\29 +5459:hb_unicode_funcs_get_default +5460:hb_tag_from_string +5461:hb_shape_plan_key_t::init\28bool\2c\20hb_face_t*\2c\20hb_segment_properties_t\20const*\2c\20hb_feature_t\20const*\2c\20unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20char\20const*\20const*\29 +5462:hb_shape_plan_key_t::fini\28\29 +5463:hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>::may_have\28hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>\20const&\29\20const +5464:hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>::add\28hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>\20const&\29 +5465:hb_serialize_context_t::fini\28\29 +5466:hb_sanitize_context_t::return_t\20OT::Context::dispatch\28hb_sanitize_context_t*\29\20const +5467:hb_sanitize_context_t::return_t\20OT::ChainContext::dispatch\28hb_sanitize_context_t*\29\20const +5468:hb_paint_funcs_t::sweep_gradient\28void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5469:hb_paint_funcs_t::radial_gradient\28void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +5470:hb_paint_funcs_t::push_skew\28void*\2c\20float\2c\20float\29 +5471:hb_paint_funcs_t::push_rotate\28void*\2c\20float\29 +5472:hb_paint_funcs_t::push_root_transform\28void*\2c\20hb_font_t\20const*\29 +5473:hb_paint_funcs_t::push_inverse_root_transform\28void*\2c\20hb_font_t*\29 +5474:hb_paint_funcs_t::push_group\28void*\29 +5475:hb_paint_funcs_t::pop_group\28void*\2c\20hb_paint_composite_mode_t\29 +5476:hb_paint_funcs_t::linear_gradient\28void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +5477:hb_paint_extents_paint_linear_gradient\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +5478:hb_paint_extents_get_funcs\28\29 +5479:hb_paint_extents_context_t::~hb_paint_extents_context_t\28\29 +5480:hb_paint_extents_context_t::pop_clip\28\29 +5481:hb_paint_extents_context_t::hb_paint_extents_context_t\28\29 +5482:hb_ot_map_t::fini\28\29 +5483:hb_ot_map_builder_t::add_pause\28unsigned\20int\2c\20bool\20\28*\29\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29\29 +5484:hb_ot_map_builder_t::add_lookups\28hb_ot_map_t&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20unsigned\20int\29 +5485:hb_ot_layout_has_substitution +5486:hb_ot_font_set_funcs +5487:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::get_stored\28\29\20const +5488:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::get_stored\28\29\20const +5489:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::do_destroy\28OT::post_accelerator_t*\29 +5490:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get_stored\28\29\20const +5491:hb_lazy_loader_t\2c\20hb_face_t\2c\205u\2c\20OT::hmtx_accelerator_t>::get_stored\28\29\20const +5492:hb_lazy_loader_t\2c\20hb_face_t\2c\2021u\2c\20OT::gvar_accelerator_t>::do_destroy\28OT::gvar_accelerator_t*\29 +5493:hb_lazy_loader_t\2c\20hb_face_t\2c\2015u\2c\20OT::glyf_accelerator_t>::do_destroy\28OT::glyf_accelerator_t*\29 +5494:hb_lazy_loader_t\2c\20hb_face_t\2c\203u\2c\20OT::cmap_accelerator_t>::do_destroy\28OT::cmap_accelerator_t*\29 +5495:hb_lazy_loader_t\2c\20hb_face_t\2c\2017u\2c\20OT::cff2_accelerator_t>::get_stored\28\29\20const +5496:hb_lazy_loader_t\2c\20hb_face_t\2c\2017u\2c\20OT::cff2_accelerator_t>::do_destroy\28OT::cff2_accelerator_t*\29 +5497:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::do_destroy\28OT::cff1_accelerator_t*\29 +5498:hb_lazy_loader_t\2c\20hb_face_t\2c\2019u\2c\20hb_blob_t>::get\28\29\20const +5499:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::do_destroy\28OT::GDEF_accelerator_t*\29 +5500:hb_lazy_loader_t\2c\20hb_face_t\2c\2035u\2c\20hb_blob_t>::get\28\29\20const +5501:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::get_stored\28\29\20const +5502:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::do_destroy\28OT::CBDT_accelerator_t*\29 +5503:hb_lazy_loader_t\2c\20hb_face_t\2c\2032u\2c\20hb_blob_t>::get\28\29\20const +5504:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get_stored\28\29\20const +5505:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get\28\29\20const +5506:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get_stored\28\29\20const +5507:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get\28\29\20const +5508:hb_lazy_loader_t\2c\20hb_face_t\2c\2033u\2c\20hb_blob_t>::get\28\29\20const +5509:hb_lazy_loader_t\2c\20hb_face_t\2c\2030u\2c\20hb_blob_t>::get_stored\28\29\20const +5510:hb_language_matches +5511:hb_iter_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>\2c\20hb_pair_t>>::operator-=\28unsigned\20int\29\20& +5512:hb_iter_t\2c\20hb_filter_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>>\2c\20hb_pair_t>>::operator+=\28unsigned\20int\29\20& +5513:hb_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20hb_pair_t>::operator++\28\29\20& +5514:hb_iter_t\2c\20hb_array_t>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_glyph_info_t\20const&\29\2c\20$_6\20const&\2c\20\28void*\290>\2c\20find_syllables_use\28hb_buffer_t*\29::'lambda'\28hb_pair_t\29\2c\20$_5\20const&\2c\20\28void*\290>\2c\20hb_pair_t>::operator--\28\29\20& +5515:hb_indic_get_categories\28unsigned\20int\29 +5516:hb_hashmap_t::fetch_item\28unsigned\20int\20const&\2c\20unsigned\20int\29\20const +5517:hb_hashmap_t::fetch_item\28hb_serialize_context_t::object_t\20const*\20const&\2c\20unsigned\20int\29\20const +5518:hb_font_t::subtract_glyph_origin_for_direction\28unsigned\20int\2c\20hb_direction_t\2c\20int*\2c\20int*\29 +5519:hb_font_t::subtract_glyph_h_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +5520:hb_font_t::guess_v_origin_minus_h_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +5521:hb_font_t::get_variation_glyph\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\29 +5522:hb_font_t::get_glyph_v_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +5523:hb_font_t::get_glyph_v_kerning\28unsigned\20int\2c\20unsigned\20int\29 +5524:hb_font_t::get_glyph_h_kerning\28unsigned\20int\2c\20unsigned\20int\29 +5525:hb_font_t::get_glyph_contour_point\28unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\29 +5526:hb_font_t::get_font_h_extents\28hb_font_extents_t*\29 +5527:hb_font_t::draw_glyph\28unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\29 +5528:hb_font_set_variations +5529:hb_font_set_funcs +5530:hb_font_get_variation_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +5531:hb_font_get_font_h_extents_nil\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +5532:hb_font_funcs_set_variation_glyph_func +5533:hb_font_funcs_set_nominal_glyphs_func +5534:hb_font_funcs_set_nominal_glyph_func +5535:hb_font_funcs_set_glyph_h_advances_func +5536:hb_font_funcs_set_glyph_extents_func +5537:hb_font_funcs_create +5538:hb_font_destroy +5539:hb_face_destroy +5540:hb_face_create_for_tables +5541:hb_draw_move_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +5542:hb_draw_funcs_t::emit_move_to\28void*\2c\20hb_draw_state_t&\2c\20float\2c\20float\29 +5543:hb_draw_funcs_set_quadratic_to_func +5544:hb_draw_funcs_set_move_to_func +5545:hb_draw_funcs_set_line_to_func +5546:hb_draw_funcs_set_cubic_to_func +5547:hb_draw_funcs_destroy +5548:hb_draw_funcs_create +5549:hb_draw_extents_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +5550:hb_cache_t<24u\2c\2016u\2c\208u\2c\20true>::clear\28\29 +5551:hb_buffer_t::sort\28unsigned\20int\2c\20unsigned\20int\2c\20int\20\28*\29\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29\29 +5552:hb_buffer_t::safe_to_insert_tatweel\28unsigned\20int\2c\20unsigned\20int\29 +5553:hb_buffer_t::next_glyphs\28unsigned\20int\29 +5554:hb_buffer_t::message_impl\28hb_font_t*\2c\20char\20const*\2c\20void*\29 +5555:hb_buffer_t::delete_glyphs_inplace\28bool\20\28*\29\28hb_glyph_info_t\20const*\29\29 +5556:hb_buffer_t::clear\28\29 +5557:hb_buffer_t::add\28unsigned\20int\2c\20unsigned\20int\29 +5558:hb_buffer_get_glyph_positions +5559:hb_buffer_diff +5560:hb_buffer_clear_contents +5561:hb_buffer_add_utf8 +5562:hb_bounds_t::union_\28hb_bounds_t\20const&\29 +5563:hb_blob_t::destroy_user_data\28\29 +5564:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +5565:hb_array_t::hash\28\29\20const +5566:hb_array_t::cmp\28hb_array_t\20const&\29\20const +5567:hb_array_t>::qsort\28int\20\28*\29\28void\20const*\2c\20void\20const*\29\29 +5568:hb_array_t::__next__\28\29 +5569:hb_aat_map_builder_t::feature_info_t\20const*\20hb_vector_t::bsearch\28hb_aat_map_builder_t::feature_info_t\20const&\2c\20hb_aat_map_builder_t::feature_info_t\20const*\29\20const +5570:hb_aat_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +5571:hb_aat_map_builder_t::feature_info_t::cmp\28hb_aat_map_builder_t::feature_info_t\20const&\29\20const +5572:hb_aat_layout_remove_deleted_glyphs\28hb_buffer_t*\29 +5573:has_msaa_render_buffer\28GrSurfaceProxy\20const*\2c\20GrGLCaps\20const&\29 +5574:hair_cubic\28SkPoint\20const*\2c\20SkRegion\20const*\2c\20SkBlitter*\2c\20void\20\28*\29\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29\29 +5575:getint +5576:get_win_string +5577:get_tasks_for_thread +5578:get_paint\28GrAA\2c\20unsigned\20char\29 +5579:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20bool\2c\20float\29::$_0::operator\28\29\28int\29\20const +5580:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20bool\2c\20float\29 +5581:get_dst_swizzle_and_store\28GrColorType\2c\20SkRasterPipelineOp*\2c\20LumMode*\2c\20bool*\2c\20bool*\29 +5582:get_driver_and_version\28GrGLStandard\2c\20GrGLVendor\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +5583:get_apple_string +5584:getSingleRun\28UBiDi*\2c\20unsigned\20char\29 +5585:getRunFromLogicalIndex\28UBiDi*\2c\20int\29 +5586:getMirror\28int\2c\20unsigned\20short\29\20\28.8747\29 +5587:geometric_overlap\28SkRect\20const&\2c\20SkRect\20const&\29 +5588:geometric_contains\28SkRect\20const&\2c\20SkRect\20const&\29 +5589:gen_key\28skgpu::KeyBuilder*\2c\20GrProgramInfo\20const&\2c\20GrCaps\20const&\29 +5590:gen_fp_key\28GrFragmentProcessor\20const&\2c\20GrCaps\20const&\2c\20skgpu::KeyBuilder*\29 +5591:gather_uniforms_and_check_for_main\28SkSL::Program\20const&\2c\20std::__2::vector>*\2c\20std::__2::vector>*\2c\20SkRuntimeEffect::Uniform::Flags\2c\20unsigned\20long*\29 +5592:fwrite +5593:ft_var_to_normalized +5594:ft_var_load_item_variation_store +5595:ft_var_load_hvvar +5596:ft_var_load_avar +5597:ft_var_get_value_pointer +5598:ft_var_get_item_delta +5599:ft_var_apply_tuple +5600:ft_set_current_renderer +5601:ft_recompute_scaled_metrics +5602:ft_mem_strcpyn +5603:ft_mem_dup +5604:ft_hash_num_lookup +5605:ft_gzip_alloc +5606:ft_glyphslot_preset_bitmap +5607:ft_glyphslot_done +5608:ft_corner_orientation +5609:ft_corner_is_flat +5610:ft_cmap_done_internal +5611:frexp +5612:fread +5613:fquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5614:fp_force_eval +5615:fp_barrier +5616:formulate_F1DotF2\28float\20const*\2c\20float*\29 +5617:formulate_F1DotF2\28double\20const*\2c\20double*\29 +5618:format_alignment\28SkMask::Format\29 +5619:format1_names\28unsigned\20int\29 +5620:fopen +5621:fold_opacity_layer_color_to_paint\28SkPaint\20const*\2c\20bool\2c\20SkPaint*\29 +5622:fmodl +5623:float\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +5624:float\20const*\20std::__2::min_element\5babi:v160004\5d>\28float\20const*\2c\20float\20const*\2c\20std::__2::__less\29 +5625:float\20const*\20std::__2::max_element\5babi:v160004\5d>\28float\20const*\2c\20float\20const*\2c\20std::__2::__less\29 +5626:fline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5627:first_axis_intersection\28double\20const*\2c\20bool\2c\20double\2c\20double*\29 +5628:fiprintf +5629:find_unicode_charmap +5630:find_diff_pt\28SkPoint\20const*\2c\20int\2c\20int\2c\20int\29 +5631:find_a8_rowproc_pair\28SkBlendMode\29 +5632:fillable\28SkRect\20const&\29 +5633:fileno +5634:fcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5635:fconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5636:exp2f_\28float\29 +5637:exp2f +5638:eval_cubic_pts\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +5639:eval_cubic_derivative\28SkPoint\20const*\2c\20float\29 +5640:em_task_queue_free +5641:em_task_queue_enqueue +5642:em_task_queue_dequeue +5643:em_task_queue_create +5644:em_task_queue_cancel +5645:elliptical_effect_uses_scale\28GrShaderCaps\20const&\2c\20SkRRect\20const&\29 +5646:edge_line_needs_recursion\28SkPoint\20const&\2c\20SkPoint\20const&\29 +5647:eat_space_sep_strings\28skia_private::TArray*\2c\20char\20const*\29 +5648:draw_rect_as_path\28SkDrawBase\20const&\2c\20SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\29 +5649:draw_nine\28SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\2c\20bool\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +5650:dquad_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5651:double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +5652:do_fixed +5653:do_dispatch_to_thread +5654:doWriteReverse\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +5655:doWriteForward\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +5656:dline_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5657:distance_to_sentinel\28int\20const*\29 +5658:dispose_chunk +5659:directionFromFlags\28UBiDi*\29 +5660:diff_to_shift\28int\2c\20int\2c\20int\29 +5661:destroy_size +5662:destroy_charmaps +5663:demangling_terminate_handler\28\29 +5664:deferred_blit\28SkAnalyticEdge*\2c\20SkAnalyticEdge*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20bool\2c\20bool\2c\20bool\2c\20AdditiveBlitter*\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20int\2c\20int\2c\20int\29 +5665:decompose_current_character\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\29 +5666:decompose\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\2c\20unsigned\20int\29 +5667:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::Make\28SkArenaAlloc*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5668:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&\2c\20skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::PathCurveTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5669:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\2c\20SkFilterMode\2c\20bool\29::'lambda'\28void*\29>\28skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::Make\28SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20sk_sp\2c\20SkFilterMode\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5670:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::MeshGP::Make\28SkArenaAlloc*\2c\20sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::MeshGP::Make\28SkArenaAlloc*\2c\20sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5671:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker*\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker\2c\20int&>\28int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5672:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkShaderBase&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTransformShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5673:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29::'lambda'\28void*\29>\28SkA8_Blitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5674:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29::'lambda'\28void*\29>\28GrThreadSafeCache::Entry&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5675:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20GrCaps\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28GrQuadEffect::Make\28SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrCaps\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5676:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrPipeline::InitArgs&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29::'lambda'\28void*\29>\28GrPipeline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5677:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrDistanceFieldA8TextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20float\2c\20unsigned\20int\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5678:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29>\28DefaultGeoProc::Make\28SkArenaAlloc*\2c\20unsigned\20int\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20bool\2c\20unsigned\20char\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5679:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28CircleGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5680:decltype\28fp0\28\28SkRecords::NoOp\29\28\29\29\29\20SkRecord::visit\28int\2c\20SkRecords::Draw&\29\20const +5681:decltype\28fp0\28\28SkRecords::NoOp*\29\28nullptr\29\29\29\20SkRecord::mutate\28int\2c\20SkRecord::Destroyer&\29 +5682:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +5683:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>>::__generic_construct\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__ctor\2c\20std::__2::unique_ptr>>>&\2c\20std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&&>\28std::__2::__variant_detail::__move_constructor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&&\29 +5684:dcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5685:dcubic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5686:dconic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5687:data_destroy_arabic\28void*\29 +5688:data_create_arabic\28hb_ot_shape_plan_t\20const*\29 +5689:cycle +5690:cubic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5691:cubic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5692:cubic_delta_from_line\28int\2c\20int\2c\20int\2c\20int\29 +5693:crop_simple_rect\28SkRect\20const&\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +5694:crop_rect\28SkRect\20const&\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +5695:count_scalable_pixels\28int\20const*\2c\20int\2c\20bool\2c\20int\2c\20int\29 +5696:copysignl +5697:copy_mask_to_cacheddata\28SkMaskBuilder*\29 +5698:copy_bitmap_subset\28SkBitmap\20const&\2c\20SkIRect\20const&\29 +5699:contour_point_vector_t::extend\28hb_array_t\20const&\29 +5700:contourMeasure_length +5701:conservative_round_to_int\28SkRect\20const&\29 +5702:conic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5703:conic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5704:conic_eval_tan\28double\20const*\2c\20float\2c\20double\29 +5705:conic_deriv_coeff\28double\20const*\2c\20float\2c\20double*\29 +5706:compute_stroke_size\28SkPaint\20const&\2c\20SkMatrix\20const&\29 +5707:compute_pos_tan\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +5708:compute_normal\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint*\29 +5709:compute_intersection\28OffsetSegment\20const&\2c\20OffsetSegment\20const&\2c\20SkPoint*\2c\20float*\2c\20float*\29 +5710:compute_anti_width\28short\20const*\29 +5711:compose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +5712:clip_to_limit\28SkRegion\20const&\2c\20SkRegion*\29 +5713:clip_line\28SkPoint*\2c\20SkRect\20const&\2c\20float\2c\20float\29 +5714:clipHandlesSprite\28SkRasterClip\20const&\2c\20int\2c\20int\2c\20SkPixmap\20const&\29 +5715:clean_sampling_for_constraint\28SkSamplingOptions\20const&\2c\20SkCanvas::SrcRectConstraint\29 +5716:clamp_to_zero\28SkPoint*\29 +5717:clamp\28SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Comparator\20const&\29 +5718:chop_mono_cubic_at_x\28SkPoint*\2c\20float\2c\20SkPoint*\29 +5719:chopMonoQuadAt\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +5720:chopMonoQuadAtY\28SkPoint*\2c\20float\2c\20float*\29 +5721:chopMonoQuadAtX\28SkPoint*\2c\20float\2c\20float*\29 +5722:checkint +5723:check_write_and_transfer_input\28GrGLTexture*\29 +5724:check_name\28SkString\20const&\29 +5725:check_backend_texture\28GrBackendTexture\20const&\2c\20GrGLCaps\20const&\2c\20GrGLTexture::Desc*\2c\20bool\29 +5726:char*\20std::__2::copy\5babi:v160004\5d\2c\20char*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20char*\29 +5727:char*\20std::__2::copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +5728:char*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29 +5729:cff_vstore_done +5730:cff_subfont_load +5731:cff_subfont_done +5732:cff_size_select +5733:cff_parser_run +5734:cff_parser_init +5735:cff_make_private_dict +5736:cff_load_private_dict +5737:cff_index_get_name +5738:cff_glyph_load +5739:cff_get_kerning +5740:cff_get_glyph_data +5741:cff_fd_select_get +5742:cff_charset_compute_cids +5743:cff_builder_init +5744:cff_builder_add_point1 +5745:cff_builder_add_point +5746:cff_builder_add_contour +5747:cff_blend_check_vector +5748:cff_blend_build_vector +5749:cff1_path_param_t::end_path\28\29 +5750:cf2_stack_pop +5751:cf2_hintmask_setCounts +5752:cf2_hintmask_read +5753:cf2_glyphpath_pushMove +5754:cf2_getSeacComponent +5755:cf2_freeSeacComponent +5756:cf2_computeDarkening +5757:cf2_arrstack_setNumElements +5758:cf2_arrstack_push +5759:cbrt +5760:can_use_hw_blend_equation\28skgpu::BlendEquation\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\29 +5761:can_proxy_use_scratch\28GrCaps\20const&\2c\20GrSurfaceProxy*\29 +5762:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_3::operator\28\29\28float\29\20const +5763:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_2::operator\28\29\28float\29\20const +5764:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_0::operator\28\29\28float\29\20const +5765:byn$mgfn-shared$void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +5766:byn$mgfn-shared$t1_hints_open +5767:byn$mgfn-shared$std::__2::vector\2c\20std::__2::allocator>>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::shared_ptr*\29 +5768:byn$mgfn-shared$std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28SkString*\29 +5769:byn$mgfn-shared$std::__2::vector>::~vector\5babi:v160004\5d\28\29 +5770:byn$mgfn-shared$std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +5771:byn$mgfn-shared$std::__2::unique_ptr\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +5772:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +5773:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +5774:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +5775:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +5776:byn$mgfn-shared$std::__2::default_delete>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>::_EnableIfConvertible>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot>::type\20std::__2::default_delete>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot>\28skia_private::THashTable>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair\2c\20std::__2::basic_string_view>\2c\20skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>::Slot*\29\20const +5777:byn$mgfn-shared$std::__2::default_delete::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::_EnableIfConvertible::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot>::type\20std::__2::default_delete::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>::operator\28\29\5babi:v160004\5d::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot>\28skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::Slot*\29\20const +5778:byn$mgfn-shared$std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +5779:byn$mgfn-shared$std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +5780:byn$mgfn-shared$std::__2::__split_buffer\2c\20std::__2::allocator>&>::~__split_buffer\28\29 +5781:byn$mgfn-shared$std::__2::__hash_table\2c\20std::__2::__unordered_map_hasher\2c\20std::__2::hash\2c\20std::__2::equal_to\2c\20true>\2c\20std::__2::__unordered_map_equal\2c\20std::__2::equal_to\2c\20std::__2::hash\2c\20true>\2c\20std::__2::allocator>>::__deallocate_node\28std::__2::__hash_node_base\2c\20void*>*>*\29 +5782:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +5783:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +5784:byn$mgfn-shared$skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::Iter>::operator++\28\29 +5785:byn$mgfn-shared$skia_private::THashTable::Pair\2c\20SkSL::FunctionDeclaration\20const*\2c\20skia_private::THashMap::Pair>::firstPopulatedSlot\28\29\20const +5786:byn$mgfn-shared$skia_private::THashMap>\2c\20SkGoodHash>::find\28SkImageFilter\20const*\20const&\29\20const +5787:byn$mgfn-shared$skia_private::TArray::destroyAll\28\29 +5788:byn$mgfn-shared$skia_private::TArray::checkRealloc\28int\2c\20double\29 +5789:byn$mgfn-shared$skia_private::AutoSTArray<16\2c\20SkRect>::reset\28int\29 +5790:byn$mgfn-shared$skia_private::AutoSTArray<16\2c\20GrMipLevel>::reset\28int\29 +5791:byn$mgfn-shared$skia_png_gamma_8bit_correct +5792:byn$mgfn-shared$skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +5793:byn$mgfn-shared$setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +5794:byn$mgfn-shared$precisely_between\28double\2c\20double\2c\20double\29 +5795:byn$mgfn-shared$portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5796:byn$mgfn-shared$portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5797:byn$mgfn-shared$portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5798:byn$mgfn-shared$portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5799:byn$mgfn-shared$make_unpremul_effect\28std::__2::unique_ptr>\29 +5800:byn$mgfn-shared$imageFilter_createDilate +5801:byn$mgfn-shared$hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5802:byn$mgfn-shared$hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5803:byn$mgfn-shared$hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +5804:byn$mgfn-shared$hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +5805:byn$mgfn-shared$gl_target_to_binding_index\28unsigned\20int\29 +5806:byn$mgfn-shared$cf2_stack_pushInt +5807:byn$mgfn-shared$bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5808:byn$mgfn-shared$\28anonymous\20namespace\29::shift_left\28skvx::Vec<4\2c\20float>\20const&\2c\20int\29 +5809:byn$mgfn-shared$\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +5810:byn$mgfn-shared$\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +5811:byn$mgfn-shared$\28anonymous\20namespace\29::BitmapKey::BitmapKey\28SkBitmapCacheDesc\20const&\29 +5812:byn$mgfn-shared$SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_0::operator\28\29\28int\29\20const +5813:byn$mgfn-shared$SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +5814:byn$mgfn-shared$SkSL::FunctionReference::clone\28SkSL::Position\29\20const +5815:byn$mgfn-shared$SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +5816:byn$mgfn-shared$SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +5817:byn$mgfn-shared$SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +5818:byn$mgfn-shared$SkRuntimeEffect::ChildPtr::shader\28\29\20const +5819:byn$mgfn-shared$SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +5820:byn$mgfn-shared$SkRecorder::onDrawPaint\28SkPaint\20const&\29 +5821:byn$mgfn-shared$SkRecorder::didTranslate\28float\2c\20float\29 +5822:byn$mgfn-shared$SkRecorder::didConcat44\28SkM44\20const&\29 +5823:byn$mgfn-shared$SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +5824:byn$mgfn-shared$SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +5825:byn$mgfn-shared$SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +5826:byn$mgfn-shared$SkPictureRecord::didConcat44\28SkM44\20const&\29 +5827:byn$mgfn-shared$SkJSONWriter::endObject\28\29 +5828:byn$mgfn-shared$SkJSONWriter::appendS32\28char\20const*\2c\20int\29 +5829:byn$mgfn-shared$OT::cff1::sanitize\28hb_sanitize_context_t*\29\20const +5830:byn$mgfn-shared$OT::IntType*\20hb_serialize_context_t::extend_min>\28OT::IntType*\29 +5831:byn$mgfn-shared$OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +5832:byn$mgfn-shared$OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +5833:byn$mgfn-shared$GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +5834:byn$mgfn-shared$BlockIndexIterator::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Increment\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block\20const*\2c\20int\29>::Item::operator++\28\29 +5835:byn$mgfn-shared$AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +5836:byn$mgfn-shared$AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +5837:byn$mgfn-shared$AAT::Lookup::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +5838:build_key\28skgpu::ResourceKey::Builder*\2c\20GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20GrAttachment::UsageFlags\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMemoryless\29 +5839:build_intervals\28int\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20float*\29 +5840:bracketProcessChar\28BracketData*\2c\20int\29 +5841:bracketInit\28UBiDi*\2c\20BracketData*\29 +5842:bounds_t::merge\28bounds_t\20const&\29 +5843:bottom_collinear\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +5844:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +5845:bool\20std::__2::operator==\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +5846:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +5847:bool\20std::__2::__insertion_sort_incomplete\28skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::RunBlock*\2c\20skia::textlayout::OneLineShaper::finish\28skia::textlayout::Block\20const&\2c\20float\2c\20float&\29::$_0&\29 +5848:bool\20std::__2::__insertion_sort_incomplete\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::sortNewElements\28\29::'lambda'\28SkSL::ProgramElement\20const*\2c\20SkSL::ProgramElement\20const*\29&\29 +5849:bool\20std::__2::__insertion_sort_incomplete\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +5850:bool\20set_point_length\28SkPoint*\2c\20float\2c\20float\2c\20float\2c\20float*\29 +5851:bool\20is_parallel\28SkDLine\20const&\2c\20SkTCurve\20const&\29 +5852:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +5853:bool\20hb_sanitize_context_t::check_array\28OT::Index\20const*\2c\20unsigned\20int\29\20const +5854:bool\20hb_sanitize_context_t::check_array\28AAT::Feature\20const*\2c\20unsigned\20int\29\20const +5855:bool\20hb_sanitize_context_t::check_array>\28AAT::Entry\20const*\2c\20unsigned\20int\29\20const +5856:bool\20apply_string\28OT::hb_ot_apply_context_t*\2c\20GSUBProxy::Lookup\20const&\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\29 +5857:bool\20OT::hb_accelerate_subtables_context_t::cache_func_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\2c\20bool\29 +5858:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5859:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5860:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5861:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5862:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5863:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5864:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5865:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5866:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5867:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5868:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5869:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5870:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5871:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5872:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5873:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5874:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5875:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5876:bool\20OT::chain_context_would_apply_lookup>\28OT::hb_would_apply_context_t*\2c\20unsigned\20int\2c\20OT::IntType\20const*\2c\20unsigned\20int\2c\20OT::IntType\20const*\2c\20unsigned\20int\2c\20OT::IntType\20const*\2c\20unsigned\20int\2c\20OT::LookupRecord\20const*\2c\20OT::ChainContextApplyLookupContext\20const&\29 +5877:bool\20OT::Paint::sanitize<>\28hb_sanitize_context_t*\29\20const +5878:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5879:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5880:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5881:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5882:bool\20OT::OffsetTo\2c\20true>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\2c\20unsigned\20int&&\29\20const +5883:bool\20OT::OffsetTo\2c\20true>::serialize_serialize\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>&>\28hb_serialize_context_t*\2c\20hb_map_iter_t\2c\20hb_array_t>\2c\20$_7\20const&\2c\20\28hb_function_sortedness_t\291\2c\20\28void*\290>&\29 +5884:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5885:bool\20OT::OffsetTo\2c\20true>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\2c\20unsigned\20int&&\29\20const +5886:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5887:bool\20OT::OffsetTo\2c\20true>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\2c\20AAT::trak\20const*&&\29\20const +5888:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5889:bool\20OT::GSUBGPOS::sanitize\28hb_sanitize_context_t*\29\20const +5890:bool\20OT::GSUBGPOS::sanitize\28hb_sanitize_context_t*\29\20const +5891:bool\20GrTTopoSort_Visit\28GrRenderTask*\2c\20unsigned\20int*\29 +5892:blur_column\28void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\2c\20skvx::Vec<8\2c\20unsigned\20short>\20\28*\29\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29\2c\20int\2c\20int\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20unsigned\20char\20const*\2c\20unsigned\20long\2c\20int\2c\20unsigned\20char*\2c\20unsigned\20long\29 +5893:blit_two_alphas\28AdditiveBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +5894:blit_full_alpha\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\2c\20bool\2c\20bool\29 +5895:blender_requires_shader\28SkBlender\20const*\29 +5896:bits_to_runs\28SkBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\2c\20long\2c\20unsigned\20char\29 +5897:between_closed\28double\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5898:barycentric_coords\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\2c\20skvx::Vec<4\2c\20float>*\29 +5899:auto\20GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29::$_0::operator\28\29\28int\2c\20GrGeometryProcessor::Attribute\20const&\29\20const +5900:auto&&\20std::__2::__generic_get\5babi:v160004\5d<0ul\2c\20std::__2::variant\20const&>\28std::__2::variant\20const&\29 +5901:atanf +5902:are_radius_check_predicates_valid\28float\2c\20float\2c\20float\29 +5903:arabic_fallback_plan_destroy\28arabic_fallback_plan_t*\29 +5904:apply_forward\28OT::hb_ot_apply_context_t*\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\2c\20unsigned\20int\29 +5905:apply_fill_type\28SkPathFillType\2c\20int\29 +5906:apply_fill_type\28SkPathFillType\2c\20GrTriangulator::Poly*\29 +5907:append_texture_swizzle\28SkString*\2c\20skgpu::Swizzle\29 +5908:append_color_output\28PorterDuffXferProcessor\20const&\2c\20GrGLSLXPFragmentBuilder*\2c\20skgpu::BlendFormula::OutputType\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +5909:antifilldot8\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\2c\20bool\29 +5910:analysis_properties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkBlendMode\29 +5911:afm_stream_skip_spaces +5912:afm_stream_read_string +5913:afm_stream_read_one +5914:af_sort_and_quantize_widths +5915:af_shaper_get_elem +5916:af_loader_compute_darkening +5917:af_latin_metrics_scale_dim +5918:af_latin_hints_detect_features +5919:af_hint_normal_stem +5920:af_glyph_hints_align_weak_points +5921:af_glyph_hints_align_strong_points +5922:af_face_globals_new +5923:af_cjk_metrics_scale_dim +5924:af_cjk_metrics_scale +5925:af_cjk_metrics_init_widths +5926:af_cjk_metrics_check_digits +5927:af_cjk_hints_init +5928:af_cjk_hints_detect_features +5929:af_cjk_hints_compute_blue_edges +5930:af_cjk_hints_apply +5931:af_cjk_get_standard_widths +5932:af_cjk_compute_stem_width +5933:af_axis_hints_new_edge +5934:add_line\28SkPoint\20const*\2c\20skia_private::TArray*\29 +5935:add_const_color\28SkRasterPipeline_GradientCtx*\2c\20unsigned\20long\2c\20SkRGBA4f<\28SkAlphaType\292>\29 +5936:a_swap.8948 +5937:a_fetch_add.8909 +5938:a_fetch_add +5939:a_ctz_32 +5940:_pow10\28unsigned\20int\29 +5941:_hb_preprocess_text_vowel_constraints\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +5942:_hb_ot_shape +5943:_hb_options_init\28\29 +5944:_hb_grapheme_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +5945:_hb_font_create\28hb_face_t*\29 +5946:_hb_fallback_shape +5947:_glyf_get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29 +5948:_emscripten_yield +5949:_emscripten_thread_mailbox_init +5950:_do_call +5951:__wasm_init_tls +5952:__vm_wait +5953:__vfprintf_internal +5954:__trunctfsf2 +5955:__timedwait +5956:__tan +5957:__set_thread_state +5958:__rem_pio2_large +5959:__pthread_rwlock_unlock +5960:__pthread_rwlock_tryrdlock +5961:__pthread_rwlock_timedrdlock +5962:__newlocale +5963:__math_xflowf +5964:__math_invalidf +5965:__loc_is_allocated +5966:__isxdigit_l +5967:__getf2 +5968:__get_locale +5969:__ftello_unlocked +5970:__fseeko_unlocked +5971:__floatscan +5972:__expo2 +5973:__dynamic_cast +5974:__divtf3 +5975:__cxxabiv1::__base_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +5976:__cxxabiv1::\28anonymous\20namespace\29::InitByteGlobalMutex<__cxxabiv1::\28anonymous\20namespace\29::LibcppMutex\2c\20__cxxabiv1::\28anonymous\20namespace\29::LibcppCondVar\2c\20__cxxabiv1::\28anonymous\20namespace\29::GlobalStatic<__cxxabiv1::\28anonymous\20namespace\29::LibcppMutex>::instance\2c\20__cxxabiv1::\28anonymous\20namespace\29::GlobalStatic<__cxxabiv1::\28anonymous\20namespace\29::LibcppCondVar>::instance\2c\20\28unsigned\20int\20\28*\29\28\29\290>::LockGuard::~LockGuard\28\29 +5977:__cxxabiv1::\28anonymous\20namespace\29::InitByteGlobalMutex<__cxxabiv1::\28anonymous\20namespace\29::LibcppMutex\2c\20__cxxabiv1::\28anonymous\20namespace\29::LibcppCondVar\2c\20__cxxabiv1::\28anonymous\20namespace\29::GlobalStatic<__cxxabiv1::\28anonymous\20namespace\29::LibcppMutex>::instance\2c\20__cxxabiv1::\28anonymous\20namespace\29::GlobalStatic<__cxxabiv1::\28anonymous\20namespace\29::LibcppCondVar>::instance\2c\20\28unsigned\20int\20\28*\29\28\29\290>::LockGuard::LockGuard\28char\20const*\29 +5978:__cxxabiv1::\28anonymous\20namespace\29::GuardObject<__cxxabiv1::\28anonymous\20namespace\29::InitByteGlobalMutex<__cxxabiv1::\28anonymous\20namespace\29::LibcppMutex\2c\20__cxxabiv1::\28anonymous\20namespace\29::LibcppCondVar\2c\20__cxxabiv1::\28anonymous\20namespace\29::GlobalStatic<__cxxabiv1::\28anonymous\20namespace\29::LibcppMutex>::instance\2c\20__cxxabiv1::\28anonymous\20namespace\29::GlobalStatic<__cxxabiv1::\28anonymous\20namespace\29::LibcppCondVar>::instance\2c\20\28unsigned\20int\20\28*\29\28\29\290>>::GuardObject\28unsigned\20int*\29 +5979:\28anonymous\20namespace\29::texture_color\28SkRGBA4f<\28SkAlphaType\293>\2c\20float\2c\20GrColorType\2c\20GrColorInfo\20const&\29 +5980:\28anonymous\20namespace\29::supported_aa\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrAA\29 +5981:\28anonymous\20namespace\29::set_uv_quad\28SkPoint\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +5982:\28anonymous\20namespace\29::safe_to_ignore_subset_rect\28GrAAType\2c\20SkFilterMode\2c\20DrawQuad\20const&\2c\20SkRect\20const&\29 +5983:\28anonymous\20namespace\29::rrect_type_to_vert_count\28\28anonymous\20namespace\29::RRectType\29 +5984:\28anonymous\20namespace\29::proxy_normalization_params\28GrSurfaceProxy\20const*\2c\20GrSurfaceOrigin\29 +5985:\28anonymous\20namespace\29::prepare_for_direct_mask_drawing\28SkStrike*\2c\20SkMatrix\20const&\2c\20SkZip\2c\20SkZip\2c\20SkZip\29 +5986:\28anonymous\20namespace\29::normalize_src_quad\28\28anonymous\20namespace\29::NormalizationParams\20const&\2c\20GrQuad*\29 +5987:\28anonymous\20namespace\29::normalize_and_inset_subset\28SkFilterMode\2c\20\28anonymous\20namespace\29::NormalizationParams\20const&\2c\20SkRect\20const*\29 +5988:\28anonymous\20namespace\29::next_gen_id\28\29 +5989:\28anonymous\20namespace\29::morphology_pass\28skif::Context\20const&\2c\20skif::FilterResult\20const&\2c\20\28anonymous\20namespace\29::MorphType\2c\20\28anonymous\20namespace\29::MorphDirection\2c\20int\29 +5990:\28anonymous\20namespace\29::make_non_convex_fill_op\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20skgpu::ganesh::FillPathFlags\2c\20GrAAType\2c\20SkRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\29 +5991:\28anonymous\20namespace\29::is_visible\28SkRect\20const&\2c\20SkIRect\20const&\29 +5992:\28anonymous\20namespace\29::is_degen_quad_or_conic\28SkPoint\20const*\2c\20float*\29 +5993:\28anonymous\20namespace\29::init_vertices_paint\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkBlender*\2c\20bool\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +5994:\28anonymous\20namespace\29::get_hbFace_cache\28\29 +5995:\28anonymous\20namespace\29::gather_lines_and_quads\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\2c\20skia_private::TArray*\29::$_1::operator\28\29\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20bool\29\20const +5996:\28anonymous\20namespace\29::filter_and_mm_have_effect\28GrQuad\20const&\2c\20GrQuad\20const&\29 +5997:\28anonymous\20namespace\29::draw_to_sw_mask\28GrSWMaskHelper*\2c\20skgpu::ganesh::ClipStack::Element\20const&\2c\20bool\29 +5998:\28anonymous\20namespace\29::draw_path\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20skgpu::ganesh::PathRenderer*\2c\20GrHardClip\20const&\2c\20SkIRect\20const&\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20GrAA\29 +5999:\28anonymous\20namespace\29::determine_clipped_src_rect\28SkIRect\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkRect\20const*\29 +6000:\28anonymous\20namespace\29::create_data\28int\2c\20bool\2c\20float\29 +6001:\28anonymous\20namespace\29::cpu_blur\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20sk_sp\20const&\2c\20skif::LayerSpace\2c\20skif::LayerSpace\29::$_0::operator\28\29\28double\29\20const +6002:\28anonymous\20namespace\29::copyFTBitmap\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\29 +6003:\28anonymous\20namespace\29::contains_scissor\28GrScissorState\20const&\2c\20GrScissorState\20const&\29 +6004:\28anonymous\20namespace\29::colrv1_start_glyph_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20unsigned\20short\2c\20FT_Color_Root_Transform_\2c\20skia_private::THashSet*\29 +6005:\28anonymous\20namespace\29::colrv1_start_glyph\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20unsigned\20short\2c\20FT_Color_Root_Transform_\2c\20skia_private::THashSet*\29 +6006:\28anonymous\20namespace\29::colrv1_draw_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\29 +6007:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29 +6008:\28anonymous\20namespace\29::can_use_draw_texture\28SkPaint\20const&\2c\20SkSamplingOptions\20const&\29 +6009:\28anonymous\20namespace\29::axis_aligned_quad_size\28GrQuad\20const&\29 +6010:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29 +6011:\28anonymous\20namespace\29::YUVPlanesKey::YUVPlanesKey\28unsigned\20int\29 +6012:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29 +6013:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29 +6014:\28anonymous\20namespace\29::TriangulatingPathOp::TriangulatingPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\29 +6015:\28anonymous\20namespace\29::TriangulatingPathOp::Triangulate\28GrEagerVertexAllocator*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool*\29 +6016:\28anonymous\20namespace\29::TriangulatingPathOp::CreateKey\28skgpu::UniqueKey*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\29 +6017:\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +6018:\28anonymous\20namespace\29::TransformedMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +6019:\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +6020:\28anonymous\20namespace\29::TransformedMaskSubRun::glyphCount\28\29\20const +6021:\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +6022:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29 +6023:\28anonymous\20namespace\29::TextureOpImpl::propagateCoverageAAThroughoutChain\28\29 +6024:\28anonymous\20namespace\29::TextureOpImpl::numChainedQuads\28\29\20const +6025:\28anonymous\20namespace\29::TextureOpImpl::characterize\28\28anonymous\20namespace\29::TextureOpImpl::Desc*\29\20const +6026:\28anonymous\20namespace\29::TextureOpImpl::appendQuad\28DrawQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\29 +6027:\28anonymous\20namespace\29::TextureOpImpl::Make\28GrRecordingContext*\2c\20GrTextureSetEntry*\2c\20int\2c\20int\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20skgpu::ganesh::TextureOp::Saturate\2c\20GrAAType\2c\20SkCanvas::SrcRectConstraint\2c\20SkMatrix\20const&\2c\20sk_sp\29 +6028:\28anonymous\20namespace\29::TextureOpImpl::FillInVertices\28GrCaps\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl*\2c\20\28anonymous\20namespace\29::TextureOpImpl::Desc*\2c\20char*\29 +6029:\28anonymous\20namespace\29::TextureOpImpl::Desc::totalSizeInBytes\28\29\20const +6030:\28anonymous\20namespace\29::TextureOpImpl::Desc*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc>\28\29 +6031:\28anonymous\20namespace\29::TextureOpImpl::ClassID\28\29 +6032:\28anonymous\20namespace\29::SpotVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +6033:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::hb_script_for_unichar\28int\29 +6034:\28anonymous\20namespace\29::SkQuadCoeff::SkQuadCoeff\28SkPoint\20const*\29 +6035:\28anonymous\20namespace\29::SkMorphologyImageFilter::requiredInput\28skif::Mapping\20const&\2c\20skif::LayerSpace\29\20const +6036:\28anonymous\20namespace\29::SkMorphologyImageFilter::kernelOutputBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\29\20const +6037:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::requiredInput\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\29\20const +6038:\28anonymous\20namespace\29::SkEmptyTypeface::onMakeClone\28SkFontArguments\20const&\29\20const +6039:\28anonymous\20namespace\29::SkCropImageFilter::requiredInput\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\29\20const +6040:\28anonymous\20namespace\29::SkConicCoeff::SkConicCoeff\28SkConic\20const&\29 +6041:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29 +6042:\28anonymous\20namespace\29::SkBlurImageFilter::mapSigma\28skif::Mapping\20const&\2c\20bool\29\20const +6043:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29 +6044:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29 +6045:\28anonymous\20namespace\29::ShaperHarfBuzz::~ShaperHarfBuzz\28\29 +6046:\28anonymous\20namespace\29::ShadowedPath::keyBytes\28\29\20const +6047:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29 +6048:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29 +6049:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +6050:\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +6051:\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +6052:\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +6053:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29 +6054:\28anonymous\20namespace\29::RectsBlurKey::RectsBlurKey\28float\2c\20SkBlurStyle\2c\20SkRect\20const*\2c\20int\29 +6055:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29 +6056:\28anonymous\20namespace\29::RRectBlurKey::RRectBlurKey\28float\2c\20SkRRect\20const&\2c\20SkBlurStyle\29 +6057:\28anonymous\20namespace\29::PlanGauss::PlanGauss\28double\29 +6058:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29 +6059:\28anonymous\20namespace\29::PathOpSubmitter::~PathOpSubmitter\28\29 +6060:\28anonymous\20namespace\29::PathGeoBuilder::createMeshAndPutBackReserve\28\29 +6061:\28anonymous\20namespace\29::PathGeoBuilder::allocNewBuffers\28\29 +6062:\28anonymous\20namespace\29::PathGeoBuilder::addQuad\28SkPoint\20const*\2c\20float\2c\20float\29 +6063:\28anonymous\20namespace\29::Pass::blur\28int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +6064:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29 +6065:\28anonymous\20namespace\29::MipMapKey::MipMapKey\28SkBitmapCacheDesc\20const&\29 +6066:\28anonymous\20namespace\29::MipLevelHelper::allocAndInit\28SkArenaAlloc*\2c\20SkSamplingOptions\20const&\2c\20SkTileMode\2c\20SkTileMode\29 +6067:\28anonymous\20namespace\29::MipLevelHelper::MipLevelHelper\28\29 +6068:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29 +6069:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29 +6070:\28anonymous\20namespace\29::MeshOp::MeshOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20sk_sp\2c\20GrPrimitiveType\20const*\2c\20GrAAType\2c\20sk_sp\2c\20SkMatrix\20const&\29 +6071:\28anonymous\20namespace\29::MeshOp::MeshOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMesh\20const&\2c\20skia_private::TArray>\2c\20true>\2c\20GrAAType\2c\20sk_sp\2c\20SkMatrix\20const&\29 +6072:\28anonymous\20namespace\29::MeshOp::Mesh::indices\28\29\20const +6073:\28anonymous\20namespace\29::MeshOp::Mesh::Mesh\28SkMesh\20const&\29 +6074:\28anonymous\20namespace\29::MeshOp::ClassID\28\29 +6075:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29 +6076:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29 +6077:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineStruct\28char\20const*\29 +6078:\28anonymous\20namespace\29::Iter::next\28\29 +6079:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29 +6080:\28anonymous\20namespace\29::FillRectOpImpl::tessellate\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29\20const +6081:\28anonymous\20namespace\29::FillRectOpImpl::FillRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +6082:\28anonymous\20namespace\29::ExternalWebGLTexture::~ExternalWebGLTexture\28\29 +6083:\28anonymous\20namespace\29::EllipticalRRectEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +6084:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29 +6085:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29 +6086:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29 +6087:\28anonymous\20namespace\29::DrawAtlasOpImpl::DrawAtlasOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20GrAAType\2c\20int\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\29 +6088:\28anonymous\20namespace\29::DirectMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +6089:\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +6090:\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +6091:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29 +6092:\28anonymous\20namespace\29::DefaultPathOp::programInfo\28\29 +6093:\28anonymous\20namespace\29::DefaultPathOp::primType\28\29\20const +6094:\28anonymous\20namespace\29::DefaultPathOp::PathData::PathData\28\28anonymous\20namespace\29::DefaultPathOp::PathData&&\29 +6095:\28anonymous\20namespace\29::DefaultPathOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkPath\20const&\2c\20float\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20bool\2c\20GrAAType\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +6096:\28anonymous\20namespace\29::DefaultPathOp::DefaultPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkPath\20const&\2c\20float\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20bool\2c\20GrAAType\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +6097:\28anonymous\20namespace\29::ClipGeometry\20\28anonymous\20namespace\29::get_clip_geometry\28skgpu::ganesh::ClipStack::SaveRecord\20const&\2c\20skgpu::ganesh::ClipStack::Draw\20const&\29 +6098:\28anonymous\20namespace\29::CircularRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20unsigned\20int\2c\20SkRRect\20const&\29 +6099:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29 +6100:\28anonymous\20namespace\29::CachedTessellationsRec::CachedTessellationsRec\28SkResourceCache::Key\20const&\2c\20sk_sp<\28anonymous\20namespace\29::CachedTessellations>\29 +6101:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29 +6102:\28anonymous\20namespace\29::CachedTessellations::CachedTessellations\28\29 +6103:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29 +6104:\28anonymous\20namespace\29::BitmapKey::BitmapKey\28SkBitmapCacheDesc\20const&\29 +6105:\28anonymous\20namespace\29::AmbientVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +6106:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29 +6107:\28anonymous\20namespace\29::AAHairlineOp::PathData::PathData\28\28anonymous\20namespace\29::AAHairlineOp::PathData&&\29 +6108:\28anonymous\20namespace\29::AAHairlineOp::AAHairlineOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20unsigned\20char\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIRect\2c\20float\2c\20GrUserStencilSettings\20const*\29 +6109:TextureSourceImageGenerator::~TextureSourceImageGenerator\28\29 +6110:TT_Set_Named_Instance +6111:TT_Save_Context +6112:TT_Hint_Glyph +6113:TT_DotFix14 +6114:TT_Done_Context +6115:StringBuffer\20apply_format_string<1024>\28char\20const*\2c\20void*\2c\20char\20\28&\29\20\5b1024\5d\2c\20SkString*\29 +6116:SortContourList\28SkOpContourHead**\2c\20bool\2c\20bool\29 +6117:SkWriter32::writeString\28char\20const*\2c\20unsigned\20long\29 +6118:SkWriter32::writePoint3\28SkPoint3\20const&\29 +6119:SkWBuffer::padToAlign4\28\29 +6120:SkVertices::getSizes\28\29\20const +6121:SkVertices::Builder::init\28SkVertices::Desc\20const&\29 +6122:SkVertices::Builder::Builder\28SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +6123:SkUnicode_client::~SkUnicode_client\28\29 +6124:SkUnicode_IcuBidi::MakeIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +6125:SkUnicode::convertUtf16ToUtf8\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +6126:SkUnicode::BidiRegion&\20std::__2::vector>::emplace_back\28unsigned\20long&\2c\20unsigned\20long&\2c\20unsigned\20char&\29 +6127:SkUTF::UTF16ToUTF8\28char*\2c\20int\2c\20unsigned\20short\20const*\2c\20unsigned\20long\29 +6128:SkUTF::ToUTF8\28int\2c\20char*\29 +6129:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29 +6130:SkTypeface_FreeTypeStream::SkTypeface_FreeTypeStream\28std::__2::unique_ptr>\2c\20SkString\2c\20SkFontStyle\20const&\2c\20bool\29 +6131:SkTypeface_FreeType::getFaceRec\28\29\20const +6132:SkTypeface_FreeType::SkTypeface_FreeType\28SkFontStyle\20const&\2c\20bool\29 +6133:SkTypeface_FreeType::Scanner::~Scanner\28\29 +6134:SkTypeface_FreeType::Scanner::computeAxisValues\28skia_private::STArray<4\2c\20SkTypeface_FreeType::Scanner::AxisDefinition\2c\20true>\2c\20SkFontArguments::VariationPosition\2c\20int*\2c\20SkString\20const&\2c\20SkFontArguments::VariationPosition::Coordinate\20const*\29 +6135:SkTypeface_FreeType::Scanner::Scanner\28\29 +6136:SkTypeface_FreeType::GetUnitsPerEm\28FT_FaceRec_*\29 +6137:SkTypeface_Custom::~SkTypeface_Custom\28\29 +6138:SkTypeface_Custom::onGetFamilyName\28SkString*\29\20const +6139:SkTypeface::unicharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +6140:SkTypeface::MakeEmpty\28\29 +6141:SkTransformShader::update\28SkMatrix\20const&\29 +6142:SkTextBlobBuilder::reserve\28unsigned\20long\29 +6143:SkTextBlobBuilder::allocRunPos\28SkFont\20const&\2c\20int\2c\20SkRect\20const*\29 +6144:SkTextBlobBuilder::TightRunBounds\28SkTextBlob::RunRecord\20const&\29 +6145:SkTextBlob::getIntercepts\28float\20const*\2c\20float*\2c\20SkPaint\20const*\29\20const +6146:SkTaskGroup::add\28std::__2::function\29 +6147:SkTSpan::split\28SkTSpan*\2c\20SkArenaAlloc*\29 +6148:SkTSpan::splitAt\28SkTSpan*\2c\20double\2c\20SkArenaAlloc*\29 +6149:SkTSpan::linearIntersects\28SkTCurve\20const&\29\20const +6150:SkTSpan::hullCheck\28SkTSpan\20const*\2c\20bool*\2c\20bool*\29 +6151:SkTSpan::contains\28double\29\20const +6152:SkTSect::unlinkSpan\28SkTSpan*\29 +6153:SkTSect::removeAllBut\28SkTSpan\20const*\2c\20SkTSpan*\2c\20SkTSect*\29 +6154:SkTSect::recoverCollapsed\28\29 +6155:SkTSect::intersects\28SkTSpan*\2c\20SkTSect*\2c\20SkTSpan*\2c\20int*\29 +6156:SkTSect::coincidentHasT\28double\29 +6157:SkTSect::boundsMax\28\29 +6158:SkTSect::addSplitAt\28SkTSpan*\2c\20double\29 +6159:SkTSect::addForPerp\28SkTSpan*\2c\20double\29 +6160:SkTSect::EndsEqual\28SkTSect\20const*\2c\20SkTSect\20const*\2c\20SkIntersections*\29 +6161:SkTMultiMap::reset\28\29 +6162:SkTMaskGamma<3\2c\203\2c\203>::CanonicalColor\28unsigned\20int\29 +6163:SkTLazy::getMaybeNull\28\29 +6164:SkTInternalLList::remove\28skgpu::ganesh::SmallPathShapeData*\29 +6165:SkTInternalLList<\28anonymous\20namespace\29::CacheImpl::Value>::remove\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +6166:SkTInternalLList<\28anonymous\20namespace\29::CacheImpl::Value>::addToHead\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +6167:SkTInternalLList::remove\28TriangulationVertex*\29 +6168:SkTInternalLList::addToTail\28TriangulationVertex*\29 +6169:SkTInternalLList::Entry>::addToHead\28SkLRUCache::Entry*\29 +6170:SkTInternalLList>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry>::addToHead\28SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\29 +6171:SkTInternalLList>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry>::addToHead\28SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\29 +6172:SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::find\28SkImageFilterCacheKey\20const&\29\20const +6173:SkTDStorage::SkTDStorage\28SkTDStorage&&\29 +6174:SkTDPQueue<\28anonymous\20namespace\29::RunIteratorQueue::Entry\2c\20&\28anonymous\20namespace\29::RunIteratorQueue::CompareEntry\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29\2c\20\28int*\20\28*\29\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29\290>::insert\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\29 +6175:SkTDPQueue::remove\28GrGpuResource*\29 +6176:SkTDPQueue::percolateUpIfNecessary\28int\29 +6177:SkTDPQueue::percolateDownIfNecessary\28int\29 +6178:SkTDPQueue::insert\28GrGpuResource*\29 +6179:SkTDArray::append\28int\29 +6180:SkTDArray::append\28int\29 +6181:SkTDArray::push_back\28SkRecords::FillBounds::SaveBounds\20const&\29 +6182:SkTCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +6183:SkTCopyOnFirstWrite::writable\28\29 +6184:SkTCopyOnFirstWrite::writable\28\29 +6185:SkTConic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +6186:SkTConic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +6187:SkTConic::controlsInside\28\29\20const +6188:SkTConic::collapsed\28\29\20const +6189:SkTBlockList::pushItem\28\29 +6190:SkTBlockList::pop_back\28\29 +6191:SkTBlockList::push_back\28skgpu::ganesh::ClipStack::RawElement&&\29 +6192:SkTBlockList::pushItem\28\29 +6193:SkTBlockList::~SkTBlockList\28\29 +6194:SkTBlockList::push_back\28GrGLProgramDataManager::GLUniformInfo\20const&\29 +6195:SkTBlockList::item\28int\29 +6196:SkSurface_Raster::~SkSurface_Raster\28\29 +6197:SkSurface_Ganesh::~SkSurface_Ganesh\28\29 +6198:SkSurface_Ganesh::onDiscard\28\29 +6199:SkSurface_Base::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +6200:SkSurface_Base::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +6201:SkSurface_Base::onCapabilities\28\29 +6202:SkSurfaceValidateRasterInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +6203:SkStrokeRec::GetInflationRadius\28SkPaint::Join\2c\20float\2c\20SkPaint::Cap\2c\20float\29 +6204:SkString_from_UTF16BE\28unsigned\20char\20const*\2c\20unsigned\20long\2c\20SkString&\29 +6205:SkString::equals\28char\20const*\2c\20unsigned\20long\29\20const +6206:SkString::equals\28char\20const*\29\20const +6207:SkString::appendVAList\28char\20const*\2c\20void*\29 +6208:SkString::appendUnichar\28int\29 +6209:SkString::appendHex\28unsigned\20int\2c\20int\29 +6210:SkString::SkString\28unsigned\20long\29 +6211:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec\20const&\29 +6212:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29::$_0::operator\28\29\28int\2c\20int\29\20const +6213:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29 +6214:SkStrikeSpec::MakeTransformMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +6215:SkStrikeCache::~SkStrikeCache\28\29 +6216:SkStrike::~SkStrike\28\29 +6217:SkStrike::prepareForImage\28SkGlyph*\29 +6218:SkStrike::prepareForDrawable\28SkGlyph*\29 +6219:SkStrike::internalPrepare\28SkSpan\2c\20SkStrike::PathDetail\2c\20SkGlyph\20const**\29 +6220:SkStrSplit\28char\20const*\2c\20char\20const*\2c\20SkStrSplitMode\2c\20skia_private::TArray*\29 +6221:SkStrAppendU32\28char*\2c\20unsigned\20int\29 +6222:SkSpriteBlitter_Memcpy::~SkSpriteBlitter_Memcpy\28\29 +6223:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +6224:SkSpecialImages::AsView\28GrRecordingContext*\2c\20SkSpecialImage\20const*\29 +6225:SkSpecialImages::AsBitmap\28SkSpecialImage\20const*\2c\20SkBitmap*\29 +6226:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29 +6227:SkSpecialImage_Raster::getROPixels\28SkBitmap*\29\20const +6228:SkSpecialImage_Raster::SkSpecialImage_Raster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +6229:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29 +6230:SkSpecialImage::SkSpecialImage\28SkIRect\20const&\2c\20unsigned\20int\2c\20SkColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +6231:SkSize\20skif::Mapping::map\28SkSize\20const&\2c\20SkMatrix\20const&\29 +6232:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29 +6233:SkShaper::MakeSkUnicodeHbScriptRunIterator\28char\20const*\2c\20unsigned\20long\29 +6234:SkShaper::MakeShapeDontWrapOrReorder\28std::__2::unique_ptr>\2c\20sk_sp\29 +6235:SkShadowTessellator::MakeAmbient\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20bool\29 +6236:SkShaders::MatrixRec::concat\28SkMatrix\20const&\29\20const +6237:SkShaders::Empty\28\29 +6238:SkShaders::Color\28unsigned\20int\29 +6239:SkShaders::Blend\28sk_sp\2c\20sk_sp\2c\20sk_sp\29 +6240:SkShaderUtils::VisitLineByLine\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::function\20const&\29 +6241:SkShaderUtils::GLSLPrettyPrint::parseUntil\28char\20const*\29 +6242:SkShaderUtils::GLSLPrettyPrint::parseUntilNewline\28\29 +6243:SkShaderBase::getFlattenableType\28\29\20const +6244:SkShader::makeWithLocalMatrix\28SkMatrix\20const&\29\20const +6245:SkShader::makeWithColorFilter\28sk_sp\29\20const +6246:SkScan::PathRequiresTiling\28SkIRect\20const&\29 +6247:SkScan::HairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +6248:SkScan::FillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6249:SkScan::FillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6250:SkScan::AntiFrameRect\28SkRect\20const&\2c\20SkPoint\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6251:SkScan::AntiFillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6252:SkScan::AAAFillPath\28SkPath\20const&\2c\20SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +6253:SkScalerContext_FreeType_Base::drawCOLRv1Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +6254:SkScalerContext_FreeType_Base::drawCOLRv0Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29 +6255:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29 +6256:SkScalerContext_FreeType::shouldSubpixelBitmap\28SkGlyph\20const&\2c\20SkMatrix\20const&\29 +6257:SkScalerContext_FreeType::getCBoxForLetter\28char\2c\20FT_BBox_*\29 +6258:SkScalerContext_FreeType::getBoundsOfCurrentOutlineGlyph\28FT_GlyphSlotRec_*\2c\20SkRect*\29 +6259:SkScalerContextRec::setLuminanceColor\28unsigned\20int\29 +6260:SkScalerContext::makeGlyph\28SkPackedGlyphID\2c\20SkArenaAlloc*\29 +6261:SkScalerContext::internalGetPath\28SkGlyph&\2c\20SkArenaAlloc*\29 +6262:SkScalerContext::SkScalerContext\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +6263:SkScalerContext::SaturateGlyphBounds\28SkGlyph*\2c\20SkRect&&\29 +6264:SkScalerContext::MakeRecAndEffects\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\2c\20SkScalerContextRec*\2c\20SkScalerContextEffects*\29 +6265:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +6266:SkScalerContext::AutoDescriptorGivenRecAndEffects\28SkScalerContextRec\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkAutoDescriptor*\29 +6267:SkScalarInterpFunc\28float\2c\20float\20const*\2c\20float\20const*\2c\20int\29 +6268:SkSamplingOptions::operator!=\28SkSamplingOptions\20const&\29\20const +6269:SkSTArenaAlloc<4096ul>::SkSTArenaAlloc\28unsigned\20long\29 +6270:SkSTArenaAlloc<256ul>::SkSTArenaAlloc\28unsigned\20long\29 +6271:SkSLCombinedSamplerTypeForTextureType\28GrTextureType\29 +6272:SkSL::type_to_sksltype\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSLType*\29 +6273:SkSL::stoi\28std::__2::basic_string_view>\2c\20long\20long*\29 +6274:SkSL::splat_scalar\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +6275:SkSL::simplify_constant_equality\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +6276:SkSL::short_circuit_boolean\28SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +6277:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_2::operator\28\29\28int\29\20const +6278:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_1::operator\28\29\28int\29\20const +6279:SkSL::optimize_intrinsic_call\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::IntrinsicKind\2c\20SkSL::ExpressionArray\20const&\2c\20SkSL::Type\20const&\29::$_0::operator\28\29\28int\29\20const +6280:SkSL::negate_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +6281:SkSL::move_all_but_break\28std::__2::unique_ptr>&\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\29 +6282:SkSL::make_reciprocal_expression\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29 +6283:SkSL::index_out_of_range\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20long\20long\2c\20SkSL::Expression\20const&\29 +6284:SkSL::find_existing_declaration\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\2c\20SkSL::IntrinsicKind\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray>\2c\20true>&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration**\29::$_0::operator\28\29\28\29\20const +6285:SkSL::extract_matrix\28SkSL::Expression\20const*\2c\20float*\29 +6286:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +6287:SkSL::eliminate_no_op_boolean\28SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +6288:SkSL::check_main_signature\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20skia_private::TArray>\2c\20true>&\29::$_4::operator\28\29\28int\29\20const +6289:SkSL::check_main_signature\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20skia_private::TArray>\2c\20true>&\29::$_2::operator\28\29\28SkSL::Type\20const&\29\20const +6290:SkSL::check_main_signature\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20skia_private::TArray>\2c\20true>&\29::$_1::operator\28\29\28int\29\20const +6291:SkSL::argument_needs_scratch_variable\28SkSL::Expression\20const*\2c\20SkSL::Variable\20const*\2c\20SkSL::ProgramUsage\20const&\29 +6292:SkSL::argument_and_parameter_flags_match\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29 +6293:SkSL::apply_to_elements\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20double\20\28*\29\28double\29\29 +6294:SkSL::append_rtadjust_fixup_to_vertex_main\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::Block&\29::AppendRTAdjustFixupHelper::Adjust\28\29\20const +6295:SkSL::\28anonymous\20namespace\29::clone_with_ref_kind\28SkSL::Expression\20const&\2c\20SkSL::VariableRefKind\2c\20SkSL::Position\29 +6296:SkSL::\28anonymous\20namespace\29::check_valid_uniform_type\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Context\20const&\2c\20bool\29 +6297:SkSL::\28anonymous\20namespace\29::caps_lookup_table\28\29 +6298:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +6299:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitStatement\28SkSL::Statement\20const&\29 +6300:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitStatement\28SkSL::Statement\20const&\29 +6301:SkSL::\28anonymous\20namespace\29::IsAssignableVisitor::visitExpression\28SkSL::Expression&\2c\20SkSL::FieldAccess\20const*\29::'lambda'\28\29::operator\28\29\28\29\20const +6302:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +6303:SkSL::Variable::MakeScratchVariable\28SkSL::Context\20const&\2c\20SkSL::Mangler&\2c\20std::__2::basic_string_view>\2c\20SkSL::Type\20const*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>\29 +6304:SkSL::VarDeclaration::ErrorCheck\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20SkSL::Type\20const*\2c\20SkSL::Type\20const*\2c\20SkSL::VariableStorage\29 +6305:SkSL::TypeReference::description\28SkSL::OperatorPrecedence\29\20const +6306:SkSL::TypeReference::VerifyType\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Position\29 +6307:SkSL::TypeReference::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\29 +6308:SkSL::Type::isInBuiltinTypes\28\29\20const +6309:SkSL::Type::checkIfUsableInArray\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +6310:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29\20const +6311:SkSL::Type::MakeStructType\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20bool\29 +6312:SkSL::Type::MakeLiteralType\28char\20const*\2c\20SkSL::Type\20const&\2c\20signed\20char\29 +6313:SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::addDeclaringElement\28SkSL::Symbol\20const*\29 +6314:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::visitStatementPtr\28std::__2::unique_ptr>&\29 +6315:SkSL::Transform::EliminateDeadGlobalVariables\28SkSL::Program&\29::$_0::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +6316:SkSL::ThreadContext::ThreadContext\28SkSL::Context&\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::Module\20const*\2c\20bool\29 +6317:SkSL::TernaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +6318:SkSL::SymbolTable::wouldShadowSymbolsFrom\28SkSL::SymbolTable\20const*\29\20const +6319:SkSL::SymbolTable::isBuiltinType\28std::__2::basic_string_view>\29\20const +6320:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Symbol*\29 +6321:SkSL::SymbolTable::SymbolTable\28std::__2::shared_ptr\2c\20bool\29 +6322:SkSL::SymbolTable::SymbolKey::operator==\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +6323:SkSL::SymbolTable::Push\28std::__2::shared_ptr*\2c\20bool\29 +6324:SkSL::Symbol::instantiate\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +6325:SkSL::Swizzle::~Swizzle\28\29 +6326:SkSL::SwitchStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20std::__2::shared_ptr\29 +6327:SkSL::SwitchCase::Make\28SkSL::Position\2c\20long\20long\2c\20std::__2::unique_ptr>\29 +6328:SkSL::SwitchCase::MakeDefault\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +6329:SkSL::StructType::structNestingDepth\28\29\20const +6330:SkSL::StructType::StructType\28SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20int\2c\20bool\29 +6331:SkSL::String::vappendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20void*\29 +6332:SkSL::SingleArgumentConstructor::argumentSpan\28\29 +6333:SkSL::Setting::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20bool\20const\20SkSL::ShaderCaps::*\29 +6334:SkSL::RP::stack_usage\28SkSL::RP::Instruction\20const&\29 +6335:SkSL::RP::is_sliceable_swizzle\28SkSpan\29 +6336:SkSL::RP::is_immediate_op\28SkSL::RP::BuilderOp\29 +6337:SkSL::RP::UnownedLValueSlice::isWritable\28\29\20const +6338:SkSL::RP::UnownedLValueSlice::dynamicSlotRange\28\29 +6339:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29 +6340:SkSL::RP::ScratchLValue::~ScratchLValue\28\29 +6341:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const +6342:SkSL::RP::Program::appendStackRewind\28skia_private::TArray*\29\20const +6343:SkSL::RP::Program::appendCopyImmutableUnmasked\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20std::byte*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +6344:SkSL::RP::Program::appendAdjacentNWayTernaryOp\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20SkSL::RP::ProgramOp\2c\20std::byte*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +6345:SkSL::RP::Program::appendAdjacentNWayBinaryOp\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20SkSL::RP::ProgramOp\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +6346:SkSL::RP::LValue::swizzle\28\29 +6347:SkSL::RP::ImmutableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +6348:SkSL::RP::Generator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\29 +6349:SkSL::RP::Generator::writeFunction\28SkSL::IRNode\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSpan>\20const>\29 +6350:SkSL::RP::Generator::storeImmutableValueToSlots\28skia_private::TArray\20const&\2c\20SkSL::RP::SlotRange\29 +6351:SkSL::RP::Generator::returnComplexity\28SkSL::FunctionDefinition\20const*\29 +6352:SkSL::RP::Generator::pushVariableReferencePartial\28SkSL::VariableReference\20const&\2c\20SkSL::RP::SlotRange\29 +6353:SkSL::RP::Generator::pushTraceScopeMask\28\29 +6354:SkSL::RP::Generator::pushLengthIntrinsic\28int\29 +6355:SkSL::RP::Generator::pushLValueOrExpression\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\29 +6356:SkSL::RP::Generator::pushIntrinsic\28SkSL::RP::BuilderOp\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +6357:SkSL::RP::Generator::pushIntrinsic\28SkSL::IntrinsicKind\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +6358:SkSL::RP::Generator::pushImmutableData\28SkSL::Expression\20const&\29 +6359:SkSL::RP::Generator::getImmutableValueForExpression\28SkSL::Expression\20const&\2c\20skia_private::TArray*\29 +6360:SkSL::RP::Generator::getImmutableBitsForSlot\28SkSL::Expression\20const&\2c\20unsigned\20long\29 +6361:SkSL::RP::Generator::findPreexistingImmutableData\28skia_private::TArray\20const&\29 +6362:SkSL::RP::Generator::discardTraceScopeMask\28\29 +6363:SkSL::RP::Builder::push_condition_mask\28\29 +6364:SkSL::RP::Builder::pop_slots_unmasked\28SkSL::RP::SlotRange\29 +6365:SkSL::RP::Builder::pop_condition_mask\28\29 +6366:SkSL::RP::Builder::pop_and_reenable_loop_mask\28\29 +6367:SkSL::RP::Builder::merge_loop_mask\28\29 +6368:SkSL::RP::Builder::merge_inv_condition_mask\28\29 +6369:SkSL::RP::Builder::mask_off_loop_mask\28\29 +6370:SkSL::RP::Builder::discard_stack\28int\2c\20int\29 +6371:SkSL::RP::Builder::copy_stack_to_slots_unmasked\28SkSL::RP::SlotRange\2c\20int\29 +6372:SkSL::RP::Builder::copy_stack_to_slots_unmasked\28SkSL::RP::SlotRange\29 +6373:SkSL::RP::Builder::copy_stack_to_slots\28SkSL::RP::SlotRange\29 +6374:SkSL::RP::Builder::branch_if_any_lanes_active\28int\29 +6375:SkSL::RP::AutoStack::pushClone\28SkSL::RP::SlotRange\2c\20int\29 +6376:SkSL::RP::AutoContinueMask::~AutoContinueMask\28\29 +6377:SkSL::RP::AutoContinueMask::exitLoopBody\28\29 +6378:SkSL::RP::AutoContinueMask::enterLoopBody\28\29 +6379:SkSL::RP::AutoContinueMask::enable\28\29 +6380:SkSL::ProgramUsage::remove\28SkSL::Expression\20const*\29 +6381:SkSL::ProgramUsage::get\28SkSL::FunctionDeclaration\20const&\29\20const +6382:SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +6383:SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +6384:SkSL::ProgramConfig::ProgramConfig\28\29 +6385:SkSL::Program::~Program\28\29 +6386:SkSL::PostfixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\29 +6387:SkSL::PipelineStage::PipelineStageCodeGenerator::functionName\28SkSL::FunctionDeclaration\20const&\29 +6388:SkSL::PipelineStage::PipelineStageCodeGenerator::functionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +6389:SkSL::Parser::~Parser\28\29 +6390:SkSL::Parser::varDeclarationsPrefix\28SkSL::Parser::VarDeclarationsPrefix*\29 +6391:SkSL::Parser::varDeclarationsOrExpressionStatement\28\29 +6392:SkSL::Parser::switchCaseBody\28SkSL::ExpressionArray*\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\2c\20std::__2::unique_ptr>\29 +6393:SkSL::Parser::shiftExpression\28\29 +6394:SkSL::Parser::relationalExpression\28\29 +6395:SkSL::Parser::multiplicativeExpression\28\29 +6396:SkSL::Parser::logicalXorExpression\28\29 +6397:SkSL::Parser::logicalAndExpression\28\29 +6398:SkSL::Parser::localVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +6399:SkSL::Parser::intLiteral\28long\20long*\29 +6400:SkSL::Parser::identifier\28std::__2::basic_string_view>*\29 +6401:SkSL::Parser::globalVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +6402:SkSL::Parser::expressionStatement\28\29 +6403:SkSL::Parser::expectNewline\28\29 +6404:SkSL::Parser::equalityExpression\28\29 +6405:SkSL::Parser::directive\28bool\29 +6406:SkSL::Parser::declarations\28\29 +6407:SkSL::Parser::bitwiseXorExpression\28\29 +6408:SkSL::Parser::bitwiseOrExpression\28\29 +6409:SkSL::Parser::bitwiseAndExpression\28\29 +6410:SkSL::Parser::additiveExpression\28\29 +6411:SkSL::Parser::addGlobalVarDeclaration\28std::__2::unique_ptr>\29 +6412:SkSL::Parser::Parser\28SkSL::Compiler*\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +6413:SkSL::MultiArgumentConstructor::argumentSpan\28\29 +6414:SkSL::ModuleLoader::loadVertexModule\28SkSL::Compiler*\29 +6415:SkSL::ModuleLoader::loadSharedModule\28SkSL::Compiler*\29 +6416:SkSL::ModuleLoader::loadPublicModule\28SkSL::Compiler*\29 +6417:SkSL::ModuleLoader::loadFragmentModule\28SkSL::Compiler*\29 +6418:SkSL::ModuleLoader::Get\28\29 +6419:SkSL::Module::~Module\28\29 +6420:SkSL::MethodReference::~MethodReference\28\29.1 +6421:SkSL::MethodReference::~MethodReference\28\29 +6422:SkSL::MatrixType::bitWidth\28\29\20const +6423:SkSL::MakeRasterPipelineProgram\28SkSL::Program\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSL::DebugTracePriv*\2c\20bool\29 +6424:SkSL::Layout::operator!=\28SkSL::Layout\20const&\29\20const +6425:SkSL::Layout::description\28\29\20const +6426:SkSL::Intrinsics::\28anonymous\20namespace\29::finalize_distance\28double\29 +6427:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_matrixCompMult\28double\2c\20double\2c\20double\29 +6428:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_length\28std::__2::array\20const&\29 +6429:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +6430:SkSL::InterfaceBlock::~InterfaceBlock\28\29 +6431:SkSL::Inliner::inlineStatement\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Analysis::ReturnComplexity\2c\20SkSL::Statement\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20bool\29 +6432:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29 +6433:SkSL::Inliner::buildCandidateList\28std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20std::__2::shared_ptr\2c\20SkSL::ProgramUsage*\2c\20SkSL::InlineCandidateList*\29::$_1::operator\28\29\28SkSL::InlineCandidate\20const&\29\20const +6434:SkSL::Inliner::buildCandidateList\28std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20std::__2::shared_ptr\2c\20SkSL::ProgramUsage*\2c\20SkSL::InlineCandidateList*\29::$_0::operator\28\29\28SkSL::InlineCandidate\20const&\29\20const +6435:SkSL::Inliner::InlinedCall::~InlinedCall\28\29 +6436:SkSL::IndexExpression::~IndexExpression\28\29 +6437:SkSL::IfStatement::~IfStatement\28\29 +6438:SkSL::IRHelpers::Ref\28SkSL::Variable\20const*\29\20const +6439:SkSL::IRHelpers::Mul\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29\20const +6440:SkSL::IRHelpers::Assign\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29\20const +6441:SkSL::GLSLCodeGenerator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\2c\20bool\29 +6442:SkSL::GLSLCodeGenerator::writeProgramElement\28SkSL::ProgramElement\20const&\29 +6443:SkSL::GLSLCodeGenerator::writeMinAbsHack\28SkSL::Expression&\2c\20SkSL::Expression&\29 +6444:SkSL::GLSLCodeGenerator::generateCode\28\29 +6445:SkSL::FunctionDefinition::~FunctionDefinition\28\29.1 +6446:SkSL::FunctionDefinition::~FunctionDefinition\28\29 +6447:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::visitStatementPtr\28std::__2::unique_ptr>&\29 +6448:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::addLocalVariable\28SkSL::Variable\20const*\2c\20SkSL::Position\29 +6449:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29.1 +6450:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29 +6451:SkSL::FunctionDeclaration::mangledName\28\29\20const +6452:SkSL::FunctionDeclaration::getMainInputColorParameter\28\29\20const +6453:SkSL::FunctionDeclaration::getMainDestColorParameter\28\29\20const +6454:SkSL::FunctionDeclaration::determineFinalTypes\28SkSL::ExpressionArray\20const&\2c\20skia_private::STArray<8\2c\20SkSL::Type\20const*\2c\20true>*\2c\20SkSL::Type\20const**\29\20const +6455:SkSL::FunctionDeclaration::FunctionDeclaration\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20SkSL::Type\20const*\2c\20SkSL::IntrinsicKind\29 +6456:SkSL::FunctionCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +6457:SkSL::FunctionCall::FunctionCall\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\29 +6458:SkSL::FunctionCall::FindBestFunctionForCall\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\20const&\29 +6459:SkSL::FunctionCall::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +6460:SkSL::ForStatement::~ForStatement\28\29 +6461:SkSL::ForStatement::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +6462:SkSL::FindIntrinsicKind\28std::__2::basic_string_view>\29 +6463:SkSL::FieldAccess::~FieldAccess\28\29.1 +6464:SkSL::FieldAccess::~FieldAccess\28\29 +6465:SkSL::FieldAccess::description\28SkSL::OperatorPrecedence\29\20const +6466:SkSL::FieldAccess::FieldAccess\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +6467:SkSL::ExtendedVariable::~ExtendedVariable\28\29 +6468:SkSL::ExtendedVariable::layout\28\29\20const +6469:SkSL::Expression::isFloatLiteral\28\29\20const +6470:SkSL::Expression::coercionCost\28SkSL::Type\20const&\29\20const +6471:SkSL::DoStatement::~DoStatement\28\29 +6472:SkSL::DoStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +6473:SkSL::DiscardStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\29 +6474:SkSL::ContinueStatement::Make\28SkSL::Position\29 +6475:SkSL::ConstructorStruct::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +6476:SkSL::ConstructorScalarCast::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +6477:SkSL::ConstructorMatrixResize::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +6478:SkSL::Constructor::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +6479:SkSL::Compiler::resetErrors\28\29 +6480:SkSL::CoercionCost::operator<\28SkSL::CoercionCost\29\20const +6481:SkSL::CodeGenerator::~CodeGenerator\28\29 +6482:SkSL::ChildCall::~ChildCall\28\29.1 +6483:SkSL::ChildCall::~ChildCall\28\29 +6484:SkSL::ChildCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const&\2c\20SkSL::ExpressionArray\29 +6485:SkSL::ChildCall::ChildCall\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const*\2c\20SkSL::ExpressionArray\29 +6486:SkSL::BreakStatement::Make\28SkSL::Position\29 +6487:SkSL::Block::Block\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::shared_ptr\29 +6488:SkSL::BinaryExpression::isAssignmentIntoVariable\28\29 +6489:SkSL::ArrayType::columns\28\29\20const +6490:SkSL::Analysis::\28anonymous\20namespace\29::LoopControlFlowVisitor::visitStatement\28SkSL::Statement\20const&\29 +6491:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29::IsDynamicallyUniformExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +6492:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29 +6493:SkSL::Analysis::IsConstantExpression\28SkSL::Expression\20const&\29 +6494:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29::IsCompileTimeConstantVisitor::visitExpression\28SkSL::Expression\20const&\29 +6495:SkSL::Analysis::IsAssignable\28SkSL::Expression&\2c\20SkSL::Analysis::AssignmentInfo*\2c\20SkSL::ErrorReporter*\29 +6496:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29::HasSideEffectsVisitor::visitExpression\28SkSL::Expression\20const&\29 +6497:SkSL::Analysis::GetLoopUnrollInfo\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ForLoopPositions\20const&\2c\20SkSL::Statement\20const*\2c\20std::__2::unique_ptr>*\2c\20SkSL::Expression\20const*\2c\20SkSL::Statement\20const*\2c\20SkSL::ErrorReporter*\29 +6498:SkSL::Analysis::GetLoopControlFlowInfo\28SkSL::Statement\20const&\29 +6499:SkSL::Analysis::ContainsVariable\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29::ContainsVariableVisitor::visitExpression\28SkSL::Expression\20const&\29 +6500:SkSL::Analysis::ContainsRTAdjust\28SkSL::Expression\20const&\29::ContainsRTAdjustVisitor::visitExpression\28SkSL::Expression\20const&\29 +6501:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +6502:SkSL::AliasType::numberKind\28\29\20const +6503:SkSL::AliasType::isAllowedInES2\28\29\20const +6504:SkSBlockAllocator<80ul>::SkSBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\29 +6505:SkRuntimeShader::~SkRuntimeShader\28\29 +6506:SkRuntimeEffectPriv::VarAsChild\28SkSL::Variable\20const&\2c\20int\29 +6507:SkRuntimeEffect::~SkRuntimeEffect\28\29 +6508:SkRuntimeEffect::getRPProgram\28SkSL::DebugTracePriv*\29\20const +6509:SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +6510:SkRuntimeEffect::ChildPtr::type\28\29\20const +6511:SkRuntimeEffect::ChildPtr::shader\28\29\20const +6512:SkRuntimeEffect::ChildPtr::colorFilter\28\29\20const +6513:SkRuntimeEffect::ChildPtr::blender\28\29\20const +6514:SkRgnBuilder::collapsWithPrev\28\29 +6515:SkResourceCache::release\28SkResourceCache::Rec*\29 +6516:SkResourceCache::PostPurgeSharedID\28unsigned\20long\20long\29 +6517:SkResourceCache::NewCachedData\28unsigned\20long\29 +6518:SkResourceCache::GetDiscardableFactory\28\29 +6519:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::~Result\28\29 +6520:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +6521:SkRegion::quickReject\28SkIRect\20const&\29\20const +6522:SkRegion::quickContains\28SkIRect\20const&\29\20const +6523:SkRegion::op\28SkIRect\20const&\2c\20SkRegion::Op\29 +6524:SkRegion::getRuns\28int*\2c\20int*\29\20const +6525:SkRegion::Spanerator::next\28int*\2c\20int*\29 +6526:SkRegion::Spanerator::Spanerator\28SkRegion\20const&\2c\20int\2c\20int\2c\20int\29 +6527:SkRegion::RunHead::ensureWritable\28\29 +6528:SkRegion::RunHead::computeRunBounds\28SkIRect*\29 +6529:SkRegion::RunHead::Alloc\28int\2c\20int\2c\20int\29 +6530:SkRegion::Oper\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\2c\20SkRegion*\29 +6531:SkRefCntBase::internal_dispose\28\29\20const +6532:SkReduceOrder::Conic\28SkConic\20const&\2c\20SkPoint*\29 +6533:SkRectPriv::Subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkIRect*\29 +6534:SkRectPriv::FitsInFixed\28SkRect\20const&\29 +6535:SkRectClipBlitter::requestRowsPreserved\28\29\20const +6536:SkRectClipBlitter::allocBlitMemory\28unsigned\20long\29 +6537:SkRect::roundOut\28SkRect*\29\20const +6538:SkRect::roundIn\28\29\20const +6539:SkRect::roundIn\28SkIRect*\29\20const +6540:SkRect::makeOffset\28float\2c\20float\29\20const +6541:SkRect::joinNonEmptyArg\28SkRect\20const&\29 +6542:SkRect::intersect\28SkRect\20const&\2c\20SkRect\20const&\29 +6543:SkRect::contains\28float\2c\20float\29\20const +6544:SkRect::contains\28SkIRect\20const&\29\20const +6545:SkRect*\20SkRecord::alloc\28unsigned\20long\29 +6546:SkRecords::FillBounds::popSaveBlock\28\29 +6547:SkRecords::FillBounds::popControl\28SkRect\20const&\29 +6548:SkRecords::FillBounds::AdjustForPaint\28SkPaint\20const*\2c\20SkRect*\29 +6549:SkRecorder::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6550:SkRecordedDrawable::~SkRecordedDrawable\28\29 +6551:SkRecordOptimize\28SkRecord*\29 +6552:SkRecordFillBounds\28SkRect\20const&\2c\20SkRecord\20const&\2c\20SkRect*\2c\20SkBBoxHierarchy::Metadata*\29 +6553:SkRecord::~SkRecord\28\29 +6554:SkReadBuffer::skipByteArray\28unsigned\20long*\29 +6555:SkReadBuffer::readPad32\28void*\2c\20unsigned\20long\29 +6556:SkReadBuffer::SkReadBuffer\28void\20const*\2c\20unsigned\20long\29 +6557:SkRasterPipeline_UniformColorCtx*\20SkArenaAlloc::make\28\29 +6558:SkRasterPipeline_TileCtx*\20SkArenaAlloc::make\28\29 +6559:SkRasterPipeline_RewindCtx*\20SkArenaAlloc::make\28\29 +6560:SkRasterPipeline_DecalTileCtx*\20SkArenaAlloc::make\28\29 +6561:SkRasterPipeline_CopyIndirectCtx*\20SkArenaAlloc::make\28\29 +6562:SkRasterPipeline_2PtConicalCtx*\20SkArenaAlloc::make\28\29 +6563:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29 +6564:SkRasterPipeline::buildPipeline\28SkRasterPipelineStage*\29\20const +6565:SkRasterPipeline::appendSetRGB\28SkArenaAlloc*\2c\20float\20const*\29 +6566:SkRasterPipeline::appendLoad\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +6567:SkRasterClipStack::Rec::Rec\28SkRasterClip\20const&\29 +6568:SkRasterClip::setEmpty\28\29 +6569:SkRasterClip::computeIsRect\28\29\20const +6570:SkRandom::nextULessThan\28unsigned\20int\29 +6571:SkRTreeFactory::operator\28\29\28\29\20const +6572:SkRTree::~SkRTree\28\29 +6573:SkRTree::search\28SkRTree::Node*\2c\20SkRect\20const&\2c\20std::__2::vector>*\29\20const +6574:SkRTree::bulkLoad\28std::__2::vector>*\2c\20int\29 +6575:SkRTree::allocateNodeAtLevel\28unsigned\20short\29 +6576:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29::$_2::operator\28\29\28SkRRect::Corner\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29\20const +6577:SkRRect::setRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +6578:SkRRect::isValid\28\29\20const +6579:SkRRect::computeType\28\29 +6580:SkRGBA4f<\28SkAlphaType\292>\20skgpu::Swizzle::applyTo<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +6581:SkRGBA4f<\28SkAlphaType\292>::unpremul\28\29\20const +6582:SkRGBA4f<\28SkAlphaType\292>::operator==\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +6583:SkQuads::Roots\28double\2c\20double\2c\20double\29 +6584:SkQuadraticEdge::setQuadraticWithoutUpdate\28SkPoint\20const*\2c\20int\29 +6585:SkQuadConstruct::init\28float\2c\20float\29 +6586:SkPtrSet::add\28void*\29 +6587:SkPoint::Normalize\28SkPoint*\29 +6588:SkPixmap::readPixels\28SkPixmap\20const&\29\20const +6589:SkPixmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +6590:SkPixmap::erase\28unsigned\20int\29\20const +6591:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const +6592:SkPixelRef::callGenIDChangeListeners\28\29 +6593:SkPictureShader::CachedImageInfo::makeImage\28sk_sp\2c\20SkPicture\20const*\29\20const +6594:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20sk_sp\29 +6595:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20SkBBHFactory*\29 +6596:SkPictureRecord::fillRestoreOffsetPlaceholdersForCurrentStackLevel\28unsigned\20int\29 +6597:SkPictureRecord::endRecording\28\29 +6598:SkPictureRecord::beginRecording\28\29 +6599:SkPictureRecord::addPath\28SkPath\20const&\29 +6600:SkPictureRecord::addPathToHeap\28SkPath\20const&\29 +6601:SkPictureRecord::SkPictureRecord\28SkIRect\20const&\2c\20unsigned\20int\29 +6602:SkPictureImageGenerator::~SkPictureImageGenerator\28\29 +6603:SkPictureData::~SkPictureData\28\29 +6604:SkPictureData::flatten\28SkWriteBuffer&\29\20const +6605:SkPictureData::SkPictureData\28SkPictureRecord\20const&\2c\20SkPictInfo\20const&\29 +6606:SkPicture::SkPicture\28\29 +6607:SkPathWriter::moveTo\28\29 +6608:SkPathWriter::init\28\29 +6609:SkPathWriter::assemble\28\29 +6610:SkPathStroker::setQuadEndNormal\28SkPoint\20const*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\29 +6611:SkPathStroker::cubicQuadEnds\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +6612:SkPathRef::resetToSize\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +6613:SkPathRef::isRRect\28SkRRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +6614:SkPathRef::isOval\28SkRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +6615:SkPathRef::commonReset\28\29 +6616:SkPathRef::Iter::next\28SkPoint*\29 +6617:SkPathRef::CreateEmpty\28\29 +6618:SkPathPriv::LeadingMoveToCount\28SkPath\20const&\29 +6619:SkPathPriv::IsRRect\28SkPath\20const&\2c\20SkRRect*\2c\20SkPathDirection*\2c\20unsigned\20int*\29 +6620:SkPathPriv::IsOval\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\2c\20unsigned\20int*\29 +6621:SkPathPriv::IsNestedFillRects\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\29 +6622:SkPathPriv::CreateDrawArcPath\28SkPath*\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +6623:SkPathOpsBounds::Intersects\28SkPathOpsBounds\20const&\2c\20SkPathOpsBounds\20const&\29 +6624:SkPathMeasure::~SkPathMeasure\28\29 +6625:SkPathMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29 +6626:SkPathMeasure::SkPathMeasure\28SkPath\20const&\2c\20bool\2c\20float\29 +6627:SkPathEffectBase::getFlattenableType\28\29\20const +6628:SkPathEffectBase::PointData::~PointData\28\29 +6629:SkPathEdgeIter::next\28\29::'lambda'\28\29::operator\28\29\28\29\20const +6630:SkPathBuilder::reset\28\29 +6631:SkPathBuilder::lineTo\28float\2c\20float\29 +6632:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\29 +6633:SkPathBuilder::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +6634:SkPath::writeToMemory\28void*\29\20const +6635:SkPath::reverseAddPath\28SkPath\20const&\29 +6636:SkPath::offset\28float\2c\20float\29 +6637:SkPath::makeTransform\28SkMatrix\20const&\2c\20SkApplyPerspectiveClip\29\20const +6638:SkPath::isZeroLengthSincePoint\28int\29\20const +6639:SkPath::isRRect\28SkRRect*\29\20const +6640:SkPath::isOval\28SkRect*\29\20const +6641:SkPath::copyFields\28SkPath\20const&\29 +6642:SkPath::conservativelyContainsRect\28SkRect\20const&\29\20const +6643:SkPath::arcTo\28float\2c\20float\2c\20float\2c\20SkPath::ArcSize\2c\20SkPathDirection\2c\20float\2c\20float\29 +6644:SkPath::addRect\28float\2c\20float\2c\20float\2c\20float\2c\20SkPathDirection\29 +6645:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +6646:SkPath::addCircle\28float\2c\20float\2c\20float\2c\20SkPathDirection\29 +6647:SkPath::Polygon\28std::initializer_list\20const&\2c\20bool\2c\20SkPathFillType\2c\20bool\29 +6648:SkPaintToGrPaintWithBlend\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +6649:SkPaintPriv::ShouldDither\28SkPaint\20const&\2c\20SkColorType\29 +6650:SkPaintPriv::Flatten\28SkPaint\20const&\2c\20SkWriteBuffer&\29 +6651:SkPackedGlyphID::PackIDSkPoint\28unsigned\20short\2c\20SkPoint\2c\20SkIPoint\29 +6652:SkOpSpanBase::merge\28SkOpSpan*\29 +6653:SkOpSpanBase::initBase\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +6654:SkOpSpan::sortableTop\28SkOpContour*\29 +6655:SkOpSpan::setOppSum\28int\29 +6656:SkOpSpan::insertCoincidence\28SkOpSpan*\29 +6657:SkOpSpan::insertCoincidence\28SkOpSegment\20const*\2c\20bool\2c\20bool\29 +6658:SkOpSpan::init\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +6659:SkOpSpan::containsCoincidence\28SkOpSegment\20const*\29\20const +6660:SkOpSpan::computeWindSum\28\29 +6661:SkOpSegment::updateOppWindingReverse\28SkOpAngle\20const*\29\20const +6662:SkOpSegment::ptsDisjoint\28double\2c\20SkPoint\20const&\2c\20double\2c\20SkPoint\20const&\29\20const +6663:SkOpSegment::markWinding\28SkOpSpan*\2c\20int\29 +6664:SkOpSegment::isClose\28double\2c\20SkOpSegment\20const*\29\20const +6665:SkOpSegment::computeSum\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpAngle::IncludeType\29 +6666:SkOpSegment::collapsed\28double\2c\20double\29\20const +6667:SkOpSegment::addExpanded\28double\2c\20SkOpSpanBase\20const*\2c\20bool*\29 +6668:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\29 +6669:SkOpSegment::activeOp\28int\2c\20int\2c\20SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkPathOp\2c\20int*\2c\20int*\29 +6670:SkOpSegment::activeAngle\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +6671:SkOpSegment::activeAngleInner\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +6672:SkOpPtT::ptAlreadySeen\28SkOpPtT\20const*\29\20const +6673:SkOpEdgeBuilder::~SkOpEdgeBuilder\28\29 +6674:SkOpEdgeBuilder::preFetch\28\29 +6675:SkOpEdgeBuilder::finish\28\29 +6676:SkOpEdgeBuilder::SkOpEdgeBuilder\28SkPath\20const&\2c\20SkOpContourHead*\2c\20SkOpGlobalState*\29 +6677:SkOpContourBuilder::addQuad\28SkPoint*\29 +6678:SkOpContourBuilder::addLine\28SkPoint\20const*\29 +6679:SkOpContourBuilder::addCubic\28SkPoint*\29 +6680:SkOpContourBuilder::addConic\28SkPoint*\2c\20float\29 +6681:SkOpCoincidence::restoreHead\28\29 +6682:SkOpCoincidence::releaseDeleted\28SkCoincidentSpans*\29 +6683:SkOpCoincidence::mark\28\29 +6684:SkOpCoincidence::markCollapsed\28SkCoincidentSpans*\2c\20SkOpPtT*\29 +6685:SkOpCoincidence::fixUp\28SkCoincidentSpans*\2c\20SkOpPtT*\2c\20SkOpPtT\20const*\29 +6686:SkOpCoincidence::contains\28SkCoincidentSpans\20const*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\29\20const +6687:SkOpCoincidence::checkOverlap\28SkCoincidentSpans*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20SkTDArray*\29\20const +6688:SkOpCoincidence::addOrOverlap\28SkOpSegment*\2c\20SkOpSegment*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20bool*\29 +6689:SkOpCoincidence::addMissing\28bool*\29 +6690:SkOpCoincidence::addEndMovedSpans\28SkOpSpan\20const*\2c\20SkOpSpanBase\20const*\29 +6691:SkOpAngle::tangentsDiverge\28SkOpAngle\20const*\2c\20double\29 +6692:SkOpAngle::setSpans\28\29 +6693:SkOpAngle::setSector\28\29 +6694:SkOpAngle::previous\28\29\20const +6695:SkOpAngle::midToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +6696:SkOpAngle::merge\28SkOpAngle*\29 +6697:SkOpAngle::loopContains\28SkOpAngle\20const*\29\20const +6698:SkOpAngle::lineOnOneSide\28SkOpAngle\20const*\2c\20bool\29 +6699:SkOpAngle::lastMarked\28\29\20const +6700:SkOpAngle::findSector\28SkPath::Verb\2c\20double\2c\20double\29\20const +6701:SkOpAngle::endToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +6702:SkOpAngle::checkCrossesZero\28\29\20const +6703:SkOpAngle::alignmentSameSide\28SkOpAngle\20const*\2c\20int*\29\20const +6704:SkOpAngle::after\28SkOpAngle*\29 +6705:SkOffsetSimplePolygon\28SkPoint\20const*\2c\20int\2c\20SkRect\20const&\2c\20float\2c\20SkTDArray*\2c\20SkTDArray*\29 +6706:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29 +6707:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29 +6708:SkNullBlitter*\20SkArenaAlloc::make\28\29 +6709:SkNotifyBitmapGenIDIsStale\28unsigned\20int\29 +6710:SkNoPixelsDevice::~SkNoPixelsDevice\28\29 +6711:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\29 +6712:SkNoDestructor::SkNoDestructor\2c\20sk_sp>\28sk_sp&&\2c\20sk_sp&&\29 +6713:SkNVRefCnt::unref\28\29\20const +6714:SkNVRefCnt::unref\28\29\20const +6715:SkNVRefCnt::unref\28\29\20const +6716:SkNVRefCnt::unref\28\29\20const +6717:SkNVRefCnt::unref\28\29\20const +6718:SkMipmapAccessor::SkMipmapAccessor\28SkImage_Base\20const*\2c\20SkMatrix\20const&\2c\20SkMipmapMode\29::$_1::operator\28\29\28SkPixmap\20const&\29\20const +6719:SkMipmap::~SkMipmap\28\29 +6720:SkMessageBus::Get\28\29 +6721:SkMessageBus::Get\28\29 +6722:SkMeshSpecification::Attribute::Attribute\28SkMeshSpecification::Attribute\20const&\29 +6723:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +6724:SkMeshPriv::CpuBuffer::size\28\29\20const +6725:SkMeshPriv::CpuBuffer::peek\28\29\20const +6726:SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +6727:SkMemoryStream::~SkMemoryStream\28\29 +6728:SkMemoryStream::SkMemoryStream\28sk_sp\29 +6729:SkMatrixPriv::MapPointsWithStride\28SkMatrix\20const&\2c\20SkPoint*\2c\20unsigned\20long\2c\20int\29 +6730:SkMatrix::updateTranslateMask\28\29 +6731:SkMatrix::setTranslate\28float\2c\20float\29 +6732:SkMatrix::setScale\28float\2c\20float\29 +6733:SkMatrix::postSkew\28float\2c\20float\29 +6734:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint3\20const*\2c\20int\29\20const +6735:SkMatrix::getMinScale\28\29\20const +6736:SkMatrix::getMinMaxScales\28float*\29\20const +6737:SkMatrix::computeTypeMask\28\29\20const +6738:SkMatrix::Rot_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +6739:SkMatrix*\20SkRecord::alloc\28unsigned\20long\29 +6740:SkMaskFilterBase::NinePatch::~NinePatch\28\29 +6741:SkMask*\20SkTLazy::init\28unsigned\20char\20const*&&\2c\20SkIRect\20const&\2c\20unsigned\20int\20const&\2c\20SkMask::Format\20const&\29 +6742:SkMask*\20SkTLazy::init\28SkMaskBuilder&\29 +6743:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29 +6744:SkMakePixelRefWithProc\28int\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29::PixelRef::~PixelRef\28\29 +6745:SkMakeBitmapShaderForPaint\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20SkCopyPixelsMode\29 +6746:SkM44::preTranslate\28float\2c\20float\2c\20float\29 +6747:SkM44::postTranslate\28float\2c\20float\2c\20float\29 +6748:SkLocalMatrixShader::type\28\29\20const +6749:SkLinearColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +6750:SkLineParameters::normalize\28\29 +6751:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\29 +6752:SkLineClipper::ClipLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\2c\20bool\29 +6753:SkLatticeIter::~SkLatticeIter\28\29 +6754:SkLatticeIter::next\28SkIRect*\2c\20SkRect*\2c\20bool*\2c\20unsigned\20int*\29 +6755:SkLatticeIter::SkLatticeIter\28SkCanvas::Lattice\20const&\2c\20SkRect\20const&\29 +6756:SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::find\28skia::textlayout::ParagraphCacheKey\20const&\29 +6757:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::insert\28GrProgramDesc\20const&\2c\20std::__2::unique_ptr>\29 +6758:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::find\28GrProgramDesc\20const&\29 +6759:SkIsSimplePolygon\28SkPoint\20const*\2c\20int\29 +6760:SkIsConvexPolygon\28SkPoint\20const*\2c\20int\29 +6761:SkInvert4x4Matrix\28float\20const*\2c\20float*\29 +6762:SkInvert3x3Matrix\28float\20const*\2c\20float*\29 +6763:SkIntersections::quadVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6764:SkIntersections::quadLine\28SkPoint\20const*\2c\20SkPoint\20const*\29 +6765:SkIntersections::quadHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6766:SkIntersections::mostOutside\28double\2c\20double\2c\20SkDPoint\20const&\29\20const +6767:SkIntersections::lineVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6768:SkIntersections::lineHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6769:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDQuad\20const&\29 +6770:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDConic\20const&\29 +6771:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDQuad\20const&\29 +6772:SkIntersections::insertCoincident\28double\2c\20double\2c\20SkDPoint\20const&\29 +6773:SkIntersections::cubicVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6774:SkIntersections::cubicLine\28SkPoint\20const*\2c\20SkPoint\20const*\29 +6775:SkIntersections::cubicHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6776:SkIntersections::conicVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6777:SkIntersections::conicLine\28SkPoint\20const*\2c\20float\2c\20SkPoint\20const*\29 +6778:SkIntersections::conicHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6779:SkImages::RasterFromPixmap\28SkPixmap\20const&\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +6780:SkImages::RasterFromData\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\29 +6781:SkImage_Raster::~SkImage_Raster\28\29 +6782:SkImage_Raster::SkImage_Raster\28SkBitmap\20const&\2c\20bool\29 +6783:SkImage_Lazy::~SkImage_Lazy\28\29 +6784:SkImage_GaneshBase::~SkImage_GaneshBase\28\29 +6785:SkImage_GaneshBase::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +6786:SkImage_GaneshBase::SkImage_GaneshBase\28sk_sp\2c\20SkImageInfo\2c\20unsigned\20int\29 +6787:SkImage_Base::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +6788:SkImage_Base::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +6789:SkImageShader::~SkImageShader\28\29 +6790:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_3::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +6791:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_1::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +6792:SkImageInfoValidConversion\28SkImageInfo\20const&\2c\20SkImageInfo\20const&\29 +6793:SkImageGenerator::SkImageGenerator\28SkImageInfo\20const&\2c\20unsigned\20int\29 +6794:SkImageFilters::Crop\28SkRect\20const&\2c\20sk_sp\29 +6795:SkImageFilters::Blur\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +6796:SkImageFilter_Base::getInputBounds\28skif::Mapping\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\29\20const +6797:SkImageFilter_Base::getCTMCapability\28\29\20const +6798:SkImageFilter_Base::filterImage\28skif::Context\20const&\29\20const +6799:SkImageFilterCache::Get\28\29 +6800:SkImageFilterCache::Create\28unsigned\20long\29 +6801:SkImage::~SkImage\28\29 +6802:SkIRect::contains\28SkRect\20const&\29\20const +6803:SkGradientShader::MakeTwoPointConical\28SkPoint\20const&\2c\20float\2c\20SkPoint\20const&\2c\20float\2c\20unsigned\20int\20const*\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20SkMatrix\20const*\29 +6804:SkGradientShader::MakeTwoPointConical\28SkPoint\20const&\2c\20float\2c\20SkPoint\20const&\2c\20float\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +6805:SkGradientShader::MakeSweep\28float\2c\20float\2c\20unsigned\20int\20const*\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20int\2c\20SkMatrix\20const*\29 +6806:SkGradientShader::MakeRadial\28SkPoint\20const&\2c\20float\2c\20unsigned\20int\20const*\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20SkMatrix\20const*\29 +6807:SkGradientShader::MakeLinear\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20SkMatrix\20const*\29 +6808:SkGradientShader::MakeLinear\28SkPoint\20const*\2c\20SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\2c\20SkMatrix\20const*\29 +6809:SkGradientBaseShader::~SkGradientBaseShader\28\29 +6810:SkGradientBaseShader::getPos\28int\29\20const +6811:SkGradientBaseShader::getLegacyColor\28int\29\20const +6812:SkGradientBaseShader::AppendGradientFillStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\29 +6813:SkGlyph::mask\28SkPoint\29\20const +6814:SkGlyph::ensureIntercepts\28float\20const*\2c\20float\2c\20float\2c\20float*\2c\20int*\2c\20SkArenaAlloc*\29::$_1::operator\28\29\28SkGlyph::Intercept\20const*\2c\20float*\2c\20int*\29\20const +6815:SkGenerateDistanceFieldFromA8Image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20unsigned\20long\29 +6816:SkGaussFilter::SkGaussFilter\28double\29 +6817:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29 +6818:SkFontStyleSet::CreateEmpty\28\29 +6819:SkFontPriv::MakeTextMatrix\28float\2c\20float\2c\20float\29 +6820:SkFontPriv::GetFontBounds\28SkFont\20const&\29 +6821:SkFontMgr_Custom::~SkFontMgr_Custom\28\29 +6822:SkFontData::~SkFontData\28\29 +6823:SkFontData::SkFontData\28std::__2::unique_ptr>\2c\20int\2c\20int\2c\20int\20const*\2c\20int\2c\20SkFontArguments::Palette::Override\20const*\2c\20int\29 +6824:SkFont::operator==\28SkFont\20const&\29\20const +6825:SkFont::getWidths\28unsigned\20short\20const*\2c\20int\2c\20float*\29\20const +6826:SkFont::getPaths\28unsigned\20short\20const*\2c\20int\2c\20void\20\28*\29\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29\2c\20void*\29\20const +6827:SkFindCubicInflections\28SkPoint\20const*\2c\20float*\29 +6828:SkFindCubicExtrema\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +6829:SkFindBisector\28SkPoint\2c\20SkPoint\29 +6830:SkFibBlockSizes<4294967295u>::SkFibBlockSizes\28unsigned\20int\2c\20unsigned\20int\29::'lambda0'\28\29::operator\28\29\28\29\20const +6831:SkFibBlockSizes<4294967295u>::SkFibBlockSizes\28unsigned\20int\2c\20unsigned\20int\29::'lambda'\28\29::operator\28\29\28\29\20const +6832:SkFILEStream::~SkFILEStream\28\29 +6833:SkEvalQuadTangentAt\28SkPoint\20const*\2c\20float\29 +6834:SkEvalQuadAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +6835:SkEdgeClipper::next\28SkPoint*\29 +6836:SkEdgeClipper::clipQuad\28SkPoint\20const*\2c\20SkRect\20const&\29 +6837:SkEdgeClipper::clipLine\28SkPoint\2c\20SkPoint\2c\20SkRect\20const&\29 +6838:SkEdgeClipper::appendCubic\28SkPoint\20const*\2c\20bool\29 +6839:SkEdgeClipper::ClipPath\28SkPath\20const&\2c\20SkRect\20const&\2c\20bool\2c\20void\20\28*\29\28SkEdgeClipper*\2c\20bool\2c\20void*\29\2c\20void*\29 +6840:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_1::operator\28\29\28SkPoint\20const*\29\20const +6841:SkEdgeBuilder::buildEdges\28SkPath\20const&\2c\20SkIRect\20const*\29 +6842:SkEdgeBuilder::SkEdgeBuilder\28\29 +6843:SkEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\29 +6844:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20int\29 +6845:SkDynamicMemoryWStream::reset\28\29 +6846:SkDynamicMemoryWStream::Block::append\28void\20const*\2c\20unsigned\20long\29 +6847:SkDrawableList::newDrawableSnapshot\28\29 +6848:SkDrawTreatAsHairline\28SkPaint\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +6849:SkDrawShadowMetrics::GetSpotShadowTransform\28SkPoint3\20const&\2c\20float\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkRect\20const&\2c\20bool\2c\20SkMatrix*\2c\20float*\29 +6850:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20SkRect\20const*\29\20const +6851:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\2c\20bool\2c\20SkBlitter*\29\20const +6852:SkDrawBase::drawPaint\28SkPaint\20const&\29\20const +6853:SkDrawBase::SkDrawBase\28SkDrawBase\20const&\29 +6854:SkDrawBase::DrawToMask\28SkPath\20const&\2c\20SkIRect\20const&\2c\20SkMaskFilter\20const*\2c\20SkMatrix\20const*\2c\20SkMaskBuilder*\2c\20SkMaskBuilder::CreateMode\2c\20SkStrokeRec::InitStyle\29 +6855:SkDraw::drawSprite\28SkBitmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29\20const +6856:SkDraw::drawBitmap\28SkBitmap\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29\20const +6857:SkDraw::SkDraw\28SkDraw\20const&\29 +6858:SkDevice::snapSpecial\28\29 +6859:SkDevice::setDeviceCoordinateSystem\28SkM44\20const&\2c\20SkM44\20const&\2c\20SkM44\20const&\2c\20int\2c\20int\29 +6860:SkDevice::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +6861:SkDevice::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +6862:SkDevice::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +6863:SkDevice::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +6864:SkDescriptor::addEntry\28unsigned\20int\2c\20unsigned\20long\2c\20void\20const*\29 +6865:SkDeque::push_back\28\29 +6866:SkDeque::allocateBlock\28int\29 +6867:SkDeque::Iter::Iter\28SkDeque\20const&\2c\20SkDeque::Iter::IterStart\29 +6868:SkDashPathEffect::Make\28float\20const*\2c\20int\2c\20float\29 +6869:SkDashPath::InternalFilter\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20float\20const*\2c\20int\2c\20float\2c\20int\2c\20float\2c\20float\2c\20SkDashPath::StrokeRecApplication\29 +6870:SkDashPath::CalcDashParameters\28float\2c\20float\20const*\2c\20int\2c\20float*\2c\20int*\2c\20float*\2c\20float*\29 +6871:SkDashImpl::~SkDashImpl\28\29 +6872:SkDRect::setBounds\28SkDQuad\20const&\2c\20SkDQuad\20const&\2c\20double\2c\20double\29 +6873:SkDRect::setBounds\28SkDCubic\20const&\2c\20SkDCubic\20const&\2c\20double\2c\20double\29 +6874:SkDRect::setBounds\28SkDConic\20const&\2c\20SkDConic\20const&\2c\20double\2c\20double\29 +6875:SkDQuad::subDivide\28double\2c\20double\29\20const +6876:SkDQuad::otherPts\28int\2c\20SkDPoint\20const**\29\20const +6877:SkDQuad::isLinear\28int\2c\20int\29\20const +6878:SkDQuad::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +6879:SkDQuad::AddValidTs\28double*\2c\20int\2c\20double*\29 +6880:SkDPoint::roughlyEqual\28SkDPoint\20const&\29\20const +6881:SkDPoint::approximatelyDEqual\28SkDPoint\20const&\29\20const +6882:SkDCurveSweep::setCurveHullSweep\28SkPath::Verb\29 +6883:SkDCubic::monotonicInY\28\29\20const +6884:SkDCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +6885:SkDCubic::hullIntersects\28SkDPoint\20const*\2c\20int\2c\20bool*\29\20const +6886:SkDCubic::Coefficients\28double\20const*\2c\20double*\2c\20double*\2c\20double*\2c\20double*\29 +6887:SkDConic::subDivide\28double\2c\20double\29\20const +6888:SkCubics::RootsReal\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +6889:SkCubicEdge::setCubicWithoutUpdate\28SkPoint\20const*\2c\20int\2c\20bool\29 +6890:SkCubicClipper::ChopMonoAtY\28SkPoint\20const*\2c\20float\2c\20float*\29 +6891:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20SkArenaAlloc*\2c\20sk_sp\29 +6892:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkArenaAlloc*\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +6893:SkContourMeasure_segTo\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20float\2c\20SkPath*\29 +6894:SkContourMeasureIter::SkContourMeasureIter\28SkPath\20const&\2c\20bool\2c\20float\29 +6895:SkContourMeasureIter::Impl::compute_line_seg\28SkPoint\2c\20SkPoint\2c\20float\2c\20unsigned\20int\29 +6896:SkContourMeasure::~SkContourMeasure\28\29 +6897:SkContourMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29\20const +6898:SkConicalGradient::getCenterX1\28\29\20const +6899:SkConic::evalTangentAt\28float\29\20const +6900:SkConic::chop\28SkConic*\29\20const +6901:SkConic::chopIntoQuadsPOW2\28SkPoint*\2c\20int\29\20const +6902:SkConic::BuildUnitArc\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRotationDirection\2c\20SkMatrix\20const*\2c\20SkConic*\29 +6903:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29 +6904:SkColorSpaceSingletonFactory::Make\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +6905:SkColorSpace::makeLinearGamma\28\29\20const +6906:SkColorSpace::computeLazyDstFields\28\29\20const +6907:SkColorSpace::SkColorSpace\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +6908:SkColorInfo::operator=\28SkColorInfo&&\29 +6909:SkColorFilters::Blend\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\2c\20SkBlendMode\29 +6910:SkColorFilterShader::~SkColorFilterShader\28\29 +6911:SkColorFilterShader::flatten\28SkWriteBuffer&\29\20const +6912:SkColorFilter::filterColor\28unsigned\20int\29\20const +6913:SkColor4fXformer::~SkColor4fXformer\28\29 +6914:SkColor4fXformer::SkColor4fXformer\28SkGradientBaseShader\20const*\2c\20SkColorSpace*\2c\20bool\29 +6915:SkColor4Shader::~SkColor4Shader\28\29 +6916:SkCoincidentSpans::contains\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\29\20const +6917:SkChopQuadAtMaxCurvature\28SkPoint\20const*\2c\20SkPoint*\29 +6918:SkChopQuadAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +6919:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\2c\20float\29 +6920:SkChopCubicAtInflections\28SkPoint\20const*\2c\20SkPoint*\29 +6921:SkCharToGlyphCache::reset\28\29 +6922:SkCharToGlyphCache::findGlyphIndex\28int\29\20const +6923:SkCanvasVirtualEnforcer::SkCanvasVirtualEnforcer\28SkIRect\20const&\29 +6924:SkCanvasPriv::WriteLattice\28void*\2c\20SkCanvas::Lattice\20const&\29 +6925:SkCanvasPriv::ImageToColorFilter\28SkPaint*\29 +6926:SkCanvasPriv::GetDstClipAndMatrixCounts\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20int*\2c\20int*\29 +6927:SkCanvas::setMatrix\28SkM44\20const&\29 +6928:SkCanvas::scale\28float\2c\20float\29 +6929:SkCanvas::internalSaveLayer\28SkCanvas::SaveLayerRec\20const&\2c\20SkCanvas::SaveLayerStrategy\2c\20bool\29 +6930:SkCanvas::internalDrawPaint\28SkPaint\20const&\29 +6931:SkCanvas::internalDrawDeviceWithFilter\28SkDevice*\2c\20SkDevice*\2c\20SkSpan>\2c\20SkPaint\20const&\2c\20SkCanvas::DeviceCompatibleWithFilter\2c\20float\2c\20bool\29 +6932:SkCanvas::getDeviceClipBounds\28\29\20const +6933:SkCanvas::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6934:SkCanvas::drawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6935:SkCanvas::drawPicture\28sk_sp\20const&\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +6936:SkCanvas::drawPicture\28SkPicture\20const*\29 +6937:SkCanvas::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6938:SkCanvas::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +6939:SkCanvas::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +6940:SkCanvas::drawColor\28unsigned\20int\2c\20SkBlendMode\29 +6941:SkCanvas::drawColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +6942:SkCanvas::drawAtlas\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +6943:SkCanvas::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +6944:SkCanvas::didTranslate\28float\2c\20float\29 +6945:SkCanvas::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +6946:SkCanvas::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +6947:SkCanvas::SkCanvas\28sk_sp\29 +6948:SkCanvas::SkCanvas\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +6949:SkCanvas::SkCanvas\28SkBitmap\20const&\29 +6950:SkCachedData::setData\28void*\29 +6951:SkCachedData::internalUnref\28bool\29\20const +6952:SkCachedData::internalRef\28bool\29\20const +6953:SkCachedData::SkCachedData\28void*\2c\20unsigned\20long\29 +6954:SkCachedData::SkCachedData\28unsigned\20long\2c\20SkDiscardableMemory*\29 +6955:SkBulkGlyphMetricsAndPaths::glyphs\28SkSpan\29 +6956:SkBreakIterator_client::~SkBreakIterator_client\28\29 +6957:SkBlurMaskFilterImpl::filterRectMask\28SkMaskBuilder*\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\2c\20SkMaskBuilder::CreateMode\29\20const +6958:SkBlurMask::ComputeBlurredScanline\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20unsigned\20int\2c\20float\29 +6959:SkBlockAllocator::addBlock\28int\2c\20int\29 +6960:SkBlockAllocator::BlockIter::Item::advance\28SkBlockAllocator::Block*\29 +6961:SkBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +6962:SkBlitter::blitRectRegion\28SkIRect\20const&\2c\20SkRegion\20const&\29 +6963:SkBlitter::Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +6964:SkBlitter::ChooseSprite\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkArenaAlloc*\2c\20sk_sp\29 +6965:SkBlendShader::~SkBlendShader\28\29.1 +6966:SkBitmapDevice::~SkBitmapDevice\28\29 +6967:SkBitmapDevice::Create\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\2c\20SkRasterHandleAllocator*\29 +6968:SkBitmapCache::Rec::~Rec\28\29 +6969:SkBitmapCache::Rec::install\28SkBitmap*\29 +6970:SkBitmapCache::Rec::diagnostic_only_getDiscardable\28\29\20const +6971:SkBitmapCache::Find\28SkBitmapCacheDesc\20const&\2c\20SkBitmap*\29 +6972:SkBitmapCache::Alloc\28SkBitmapCacheDesc\20const&\2c\20SkImageInfo\20const&\2c\20SkPixmap*\29 +6973:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +6974:SkBitmap::readPixels\28SkPixmap\20const&\29\20const +6975:SkBitmap::operator=\28SkBitmap&&\29 +6976:SkBitmap::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +6977:SkBitmap::getAddr\28int\2c\20int\29\20const +6978:SkBitmap::allocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +6979:SkBitmap::allocPixels\28SkImageInfo\20const&\29 +6980:SkBitmap::SkBitmap\28SkBitmap&&\29 +6981:SkBinaryWriteBuffer::writeFlattenable\28SkFlattenable\20const*\29 +6982:SkBinaryWriteBuffer::writeColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +6983:SkBigPicture::~SkBigPicture\28\29 +6984:SkBigPicture::SnapshotArray::~SnapshotArray\28\29 +6985:SkBigPicture::SkBigPicture\28SkRect\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20sk_sp\2c\20unsigned\20long\29 +6986:SkBezierCubic::Subdivide\28double\20const*\2c\20double\2c\20double*\29 +6987:SkBasicEdgeBuilder::~SkBasicEdgeBuilder\28\29 +6988:SkBasicEdgeBuilder::combineVertical\28SkEdge\20const*\2c\20SkEdge*\29 +6989:SkBaseShadowTessellator::releaseVertices\28\29 +6990:SkBaseShadowTessellator::handleQuad\28SkPoint\20const*\29 +6991:SkBaseShadowTessellator::handleQuad\28SkMatrix\20const&\2c\20SkPoint*\29 +6992:SkBaseShadowTessellator::handleLine\28SkMatrix\20const&\2c\20SkPoint*\29 +6993:SkBaseShadowTessellator::handleCubic\28SkMatrix\20const&\2c\20SkPoint*\29 +6994:SkBaseShadowTessellator::handleConic\28SkMatrix\20const&\2c\20SkPoint*\2c\20float\29 +6995:SkBaseShadowTessellator::finishPathPolygon\28\29 +6996:SkBaseShadowTessellator::computeConvexShadow\28float\2c\20float\2c\20bool\29 +6997:SkBaseShadowTessellator::computeConcaveShadow\28float\2c\20float\29 +6998:SkBaseShadowTessellator::clipUmbraPoint\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\29 +6999:SkBaseShadowTessellator::checkConvexity\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +7000:SkBaseShadowTessellator::appendQuad\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +7001:SkBaseShadowTessellator::addInnerPoint\28SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20int*\29 +7002:SkBaseShadowTessellator::addEdge\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20bool\2c\20bool\29 +7003:SkBaseShadowTessellator::addArc\28SkPoint\20const&\2c\20float\2c\20bool\29 +7004:SkBaseShadowTessellator::accumulateCentroid\28SkPoint\20const&\2c\20SkPoint\20const&\29 +7005:SkAutoSMalloc<1024ul>::reset\28unsigned\20long\2c\20SkAutoMalloc::OnShrink\2c\20bool*\29 +7006:SkAutoPixmapStorage::reset\28SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +7007:SkAutoMalloc::SkAutoMalloc\28unsigned\20long\29 +7008:SkAutoDescriptor::reset\28unsigned\20long\29 +7009:SkAutoDescriptor::reset\28SkDescriptor\20const&\29 +7010:SkAutoCanvasMatrixPaint::~SkAutoCanvasMatrixPaint\28\29 +7011:SkAutoCanvasMatrixPaint::SkAutoCanvasMatrixPaint\28SkCanvas*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\2c\20SkRect\20const&\29 +7012:SkAutoBlitterChoose::choose\28SkDrawBase\20const&\2c\20SkMatrix\20const*\2c\20SkPaint\20const&\2c\20bool\29 +7013:SkArenaAlloc::ensureSpace\28unsigned\20int\2c\20unsigned\20int\29 +7014:SkAnySubclass::reset\28\29 +7015:SkAnalyticEdgeBuilder::combineVertical\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge*\29 +7016:SkAnalyticEdge::update\28int\2c\20bool\29 +7017:SkAnalyticEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +7018:SkAnalyticEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\29 +7019:SkAlphaRuns::BreakAt\28short*\2c\20unsigned\20char*\2c\20int\29 +7020:SkAAClip::operator=\28SkAAClip\20const&\29 +7021:SkAAClip::op\28SkIRect\20const&\2c\20SkClipOp\29 +7022:SkAAClip::isRect\28\29\20const +7023:SkAAClip::RunHead::Iterate\28SkAAClip\20const&\29 +7024:SkAAClip::Builder::~Builder\28\29 +7025:SkAAClip::Builder::flushRow\28bool\29 +7026:SkAAClip::Builder::finish\28SkAAClip*\29 +7027:SkAAClip::Builder::Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +7028:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29 +7029:SkA8_Coverage_Blitter*\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29 +7030:SkA8_Blitter::~SkA8_Blitter\28\29 +7031:Simplify\28SkPath\20const&\2c\20SkPath*\29 +7032:SharedGenerator::Make\28std::__2::unique_ptr>\29 +7033:SetSuperRound +7034:RuntimeEffectRPCallbacks::applyColorSpaceXform\28SkColorSpaceXformSteps\20const&\2c\20void\20const*\29 +7035:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29.1 +7036:RunBasedAdditiveBlitter::advanceRuns\28\29 +7037:RunBasedAdditiveBlitter::RunBasedAdditiveBlitter\28SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +7038:RgnOper::addSpan\28int\2c\20int\20const*\2c\20int\20const*\29 +7039:ReflexHash::hash\28TriangulationVertex*\29\20const +7040:PorterDuffXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +7041:PathSegment::init\28\29 +7042:PS_Conv_Strtol +7043:PS_Conv_ASCIIHexDecode +7044:PDLCDXferProcessor::Make\28SkBlendMode\2c\20GrProcessorAnalysisColor\20const&\29 +7045:OpAsWinding::markReverse\28Contour*\2c\20Contour*\29 +7046:OpAsWinding::getDirection\28Contour&\29 +7047:OpAsWinding::checkContainerChildren\28Contour*\2c\20Contour*\29 +7048:OffsetEdge::computeCrossingDistance\28OffsetEdge\20const*\29 +7049:OT::sbix::sanitize\28hb_sanitize_context_t*\29\20const +7050:OT::sbix::accelerator_t::reference_png\28hb_font_t*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20unsigned\20int*\29\20const +7051:OT::sbix::accelerator_t::has_data\28\29\20const +7052:OT::sbix::accelerator_t::get_png_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +7053:OT::post::sanitize\28hb_sanitize_context_t*\29\20const +7054:OT::maxp::sanitize\28hb_sanitize_context_t*\29\20const +7055:OT::kern::sanitize\28hb_sanitize_context_t*\29\20const +7056:OT::hmtxvmtx::accelerator_t::get_advance_with_var_unscaled\28unsigned\20int\2c\20hb_font_t*\2c\20float*\29\20const +7057:OT::head::sanitize\28hb_sanitize_context_t*\29\20const +7058:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GSUB_impl::SubstLookup\20const&\29 +7059:OT::hb_ot_apply_context_t::skipping_iterator_t::may_skip\28hb_glyph_info_t\20const&\29\20const +7060:OT::hb_ot_apply_context_t::skipping_iterator_t::init\28OT::hb_ot_apply_context_t*\2c\20bool\29 +7061:OT::hb_ot_apply_context_t::matcher_t::may_skip\28OT::hb_ot_apply_context_t\20const*\2c\20hb_glyph_info_t\20const&\29\20const +7062:OT::hb_kern_machine_t::kern\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20bool\29\20const +7063:OT::hb_accelerate_subtables_context_t::return_t\20OT::Context::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +7064:OT::hb_accelerate_subtables_context_t::return_t\20OT::ChainContext::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +7065:OT::gvar::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7066:OT::gvar::get_offset\28unsigned\20int\2c\20unsigned\20int\29\20const +7067:OT::gvar::accelerator_t::infer_delta\28hb_array_t\2c\20hb_array_t\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\20contour_point_t::*\29 +7068:OT::glyf_impl::composite_iter_tmpl::set_current\28OT::glyf_impl::CompositeGlyphRecord\20const*\29 +7069:OT::glyf_impl::composite_iter_tmpl::__next__\28\29 +7070:OT::glyf_impl::SimpleGlyph::read_points\28OT::IntType\20const*&\2c\20hb_array_t\2c\20OT::IntType\20const*\2c\20float\20contour_point_t::*\2c\20OT::glyf_impl::SimpleGlyph::simple_glyph_flag_t\2c\20OT::glyf_impl::SimpleGlyph::simple_glyph_flag_t\29 +7071:OT::glyf_impl::Glyph::get_composite_iterator\28\29\20const +7072:OT::glyf_impl::CompositeGlyphRecord::transform\28float\20const\20\28&\29\20\5b4\5d\2c\20hb_array_t\29 +7073:OT::glyf_impl::CompositeGlyphRecord::get_transformation\28float\20\28&\29\20\5b4\5d\2c\20contour_point_t&\29\20const +7074:OT::glyf_accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\29\20const +7075:OT::fvar::sanitize\28hb_sanitize_context_t*\29\20const +7076:OT::cmap::sanitize\28hb_sanitize_context_t*\29\20const +7077:OT::cmap::accelerator_t::get_nominal_glyph\28unsigned\20int\2c\20unsigned\20int*\2c\20hb_cache_t<21u\2c\2016u\2c\208u\2c\20true>*\29\20const +7078:OT::cmap::accelerator_t::_cached_get\28unsigned\20int\2c\20unsigned\20int*\2c\20hb_cache_t<21u\2c\2016u\2c\208u\2c\20true>*\29\20const +7079:OT::cff2::sanitize\28hb_sanitize_context_t*\29\20const +7080:OT::cff2::accelerator_templ_t>::_fini\28\29 +7081:OT::cff1::sanitize\28hb_sanitize_context_t*\29\20const +7082:OT::cff1::accelerator_templ_t>::glyph_to_sid\28unsigned\20int\2c\20CFF::code_pair_t*\29\20const +7083:OT::cff1::accelerator_templ_t>::_fini\28\29 +7084:OT::cff1::accelerator_t::gname_t::cmp\28void\20const*\2c\20void\20const*\29 +7085:OT::avar::sanitize\28hb_sanitize_context_t*\29\20const +7086:OT::VariationDevice::get_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +7087:OT::VarData::get_row_size\28\29\20const +7088:OT::VVAR::sanitize\28hb_sanitize_context_t*\29\20const +7089:OT::VORG::sanitize\28hb_sanitize_context_t*\29\20const +7090:OT::UnsizedArrayOf\2c\2014u>>\20const&\20OT::operator+\2c\20\28void*\290>\28hb_blob_ptr_t\20const&\2c\20OT::OffsetTo\2c\2014u>>\2c\20OT::IntType\2c\20false>\20const&\29 +7091:OT::TupleVariationHeader::get_size\28unsigned\20int\29\20const +7092:OT::TupleVariationData::unpack_points\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +7093:OT::TupleVariationData::unpack_deltas\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +7094:OT::TupleVariationData::tuple_iterator_t::is_valid\28\29\20const +7095:OT::SortedArrayOf\2c\20OT::IntType>::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\29 +7096:OT::SVG::sanitize\28hb_sanitize_context_t*\29\20const +7097:OT::RuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +7098:OT::RuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +7099:OT::ResourceMap::get_type_record\28unsigned\20int\29\20const +7100:OT::ResourceMap::get_type_count\28\29\20const +7101:OT::RecordArrayOf::find_index\28unsigned\20int\2c\20unsigned\20int*\29\20const +7102:OT::PaintTranslate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7103:OT::PaintSolid::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7104:OT::PaintSkewAroundCenter::sanitize\28hb_sanitize_context_t*\29\20const +7105:OT::PaintSkewAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7106:OT::PaintSkew::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7107:OT::PaintScaleUniformAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7108:OT::PaintScaleUniform::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7109:OT::PaintScaleAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7110:OT::PaintScale::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7111:OT::PaintRotateAroundCenter::sanitize\28hb_sanitize_context_t*\29\20const +7112:OT::PaintRotateAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7113:OT::PaintRotate::sanitize\28hb_sanitize_context_t*\29\20const +7114:OT::PaintRotate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7115:OT::OpenTypeFontFile::sanitize\28hb_sanitize_context_t*\29\20const +7116:OT::OffsetTo\2c\20true>::neuter\28hb_sanitize_context_t*\29\20const +7117:OT::OS2::sanitize\28hb_sanitize_context_t*\29\20const +7118:OT::MVAR::sanitize\28hb_sanitize_context_t*\29\20const +7119:OT::Lookup::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +7120:OT::Lookup*\20hb_serialize_context_t::extend_size\28OT::Lookup*\2c\20unsigned\20long\2c\20bool\29 +7121:OT::Layout::propagate_attachment_offsets\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +7122:OT::Layout::GPOS_impl::reverse_cursive_minor_offset\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +7123:OT::Layout::GPOS_impl::ValueFormat::sanitize_value_devices\28hb_sanitize_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\29\20const +7124:OT::Layout::Common::RangeRecord\20const&\20OT::SortedArrayOf\2c\20OT::IntType>::bsearch\28unsigned\20int\20const&\2c\20OT::Layout::Common::RangeRecord\20const&\29\20const +7125:OT::Layout::Common::CoverageFormat2_4*\20hb_serialize_context_t::extend_min>\28OT::Layout::Common::CoverageFormat2_4*\29 +7126:OT::Layout::Common::Coverage::sanitize\28hb_sanitize_context_t*\29\20const +7127:OT::Layout::Common::Coverage::get_population\28\29\20const +7128:OT::LangSys::sanitize\28hb_sanitize_context_t*\2c\20OT::Record_sanitize_closure_t\20const*\29\20const +7129:OT::IndexSubtableRecord::get_image_data\28unsigned\20int\2c\20void\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7130:OT::IndexArray::get_indexes\28unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7131:OT::HintingDevice::get_delta\28unsigned\20int\2c\20int\29\20const +7132:OT::HVARVVAR::get_advance_delta_unscaled\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +7133:OT::GSUBGPOS::get_script_list\28\29\20const +7134:OT::GSUBGPOS::get_feature_variations\28\29\20const +7135:OT::GSUBGPOS::accelerator_t::get_accel\28unsigned\20int\29\20const +7136:OT::GDEF::sanitize\28hb_sanitize_context_t*\29\20const +7137:OT::GDEF::get_mark_glyph_sets\28\29\20const +7138:OT::GDEF::accelerator_t::get_glyph_props\28unsigned\20int\29\20const +7139:OT::Feature::sanitize\28hb_sanitize_context_t*\2c\20OT::Record_sanitize_closure_t\20const*\29\20const +7140:OT::ContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +7141:OT::ColorStop::get_color_stop\28OT::hb_paint_context_t*\2c\20hb_color_stop_t*\2c\20unsigned\20int\2c\20OT::VarStoreInstancer\20const&\29\20const +7142:OT::ColorLine::static_get_extend\28hb_color_line_t*\2c\20void*\2c\20void*\29 +7143:OT::CmapSubtableLongSegmented::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +7144:OT::CmapSubtableLongGroup\20const&\20OT::SortedArrayOf>::bsearch\28unsigned\20int\20const&\2c\20OT::CmapSubtableLongGroup\20const&\29\20const +7145:OT::CmapSubtableFormat4::accelerator_t::init\28OT::CmapSubtableFormat4\20const*\29 +7146:OT::CmapSubtableFormat4::accelerator_t::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +7147:OT::ClipBoxFormat1::get_clip_box\28OT::ClipBoxData&\2c\20OT::VarStoreInstancer\20const&\29\20const +7148:OT::ClassDef::cost\28\29\20const +7149:OT::ChainRuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +7150:OT::ChainRuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +7151:OT::ChainContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +7152:OT::CPAL::sanitize\28hb_sanitize_context_t*\29\20const +7153:OT::COLR::sanitize\28hb_sanitize_context_t*\29\20const +7154:OT::COLR::get_base_glyph_paint\28unsigned\20int\29\20const +7155:OT::CBLC::sanitize\28hb_sanitize_context_t*\29\20const +7156:OT::CBLC::choose_strike\28hb_font_t*\29\20const +7157:OT::CBDT::sanitize\28hb_sanitize_context_t*\29\20const +7158:OT::CBDT::accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +7159:OT::BitmapSizeTable::find_table\28unsigned\20int\2c\20void\20const*\2c\20void\20const**\29\20const +7160:OT::ArrayOf>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7161:OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7162:OT::ArrayOf>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7163:OT::ArrayOf>>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7164:OT::Affine2x3::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7165:MaskValue*\20SkTLazy::init\28MaskValue\20const&\29 +7166:MakeRasterCopyPriv\28SkPixmap\20const&\2c\20unsigned\20int\29 +7167:Load_SBit_Png +7168:LineQuadraticIntersections::verticalIntersect\28double\2c\20double*\29 +7169:LineQuadraticIntersections::intersectRay\28double*\29 +7170:LineQuadraticIntersections::horizontalIntersect\28double\2c\20double*\29 +7171:LineCubicIntersections::intersectRay\28double*\29 +7172:LineCubicIntersections::VerticalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +7173:LineCubicIntersections::HorizontalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +7174:LineConicIntersections::verticalIntersect\28double\2c\20double*\29 +7175:LineConicIntersections::intersectRay\28double*\29 +7176:LineConicIntersections::horizontalIntersect\28double\2c\20double*\29 +7177:Ins_UNKNOWN +7178:Ins_SxVTL +7179:HandleCoincidence\28SkOpContourHead*\2c\20SkOpCoincidence*\29 +7180:GrWritePixelsTask::~GrWritePixelsTask\28\29 +7181:GrWindowRectsState::operator=\28GrWindowRectsState\20const&\29 +7182:GrWindowRectsState::operator==\28GrWindowRectsState\20const&\29\20const +7183:GrWindowRectangles::GrWindowRectangles\28GrWindowRectangles\20const&\29 +7184:GrWaitRenderTask::~GrWaitRenderTask\28\29 +7185:GrVertexBufferAllocPool::makeSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +7186:GrVertexBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7187:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20SkPathFillType\2c\20skgpu::VertexWriter\29\20const +7188:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20GrEagerVertexAllocator*\29\20const +7189:GrTriangulator::mergeEdgesBelow\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +7190:GrTriangulator::mergeEdgesAbove\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +7191:GrTriangulator::makeSortedVertex\28SkPoint\20const&\2c\20unsigned\20char\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29\20const +7192:GrTriangulator::makeEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\29 +7193:GrTriangulator::computeBisector\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\29\20const +7194:GrTriangulator::appendQuadraticToContour\28SkPoint\20const*\2c\20float\2c\20GrTriangulator::VertexList*\29\20const +7195:GrTriangulator::allocateMonotonePoly\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20int\29 +7196:GrTriangulator::Edge::recompute\28\29 +7197:GrTriangulator::Edge::intersect\28GrTriangulator::Edge\20const&\2c\20SkPoint*\2c\20unsigned\20char*\29\20const +7198:GrTriangulator::CountPoints\28GrTriangulator::Poly*\2c\20SkPathFillType\29 +7199:GrTriangulator::BreadcrumbTriangleList::concat\28GrTriangulator::BreadcrumbTriangleList&&\29 +7200:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29 +7201:GrThreadSafeCache::makeNewEntryMRU\28GrThreadSafeCache::Entry*\29 +7202:GrThreadSafeCache::makeExistingEntryMRU\28GrThreadSafeCache::Entry*\29 +7203:GrThreadSafeCache::findVertsWithData\28skgpu::UniqueKey\20const&\29 +7204:GrThreadSafeCache::addVertsWithData\28skgpu::UniqueKey\20const&\2c\20sk_sp\2c\20bool\20\28*\29\28SkData*\2c\20SkData*\29\29 +7205:GrThreadSafeCache::Trampoline::~Trampoline\28\29 +7206:GrThreadSafeCache::Entry::set\28skgpu::UniqueKey\20const&\2c\20sk_sp\29 +7207:GrThreadSafeCache::Entry::makeEmpty\28\29 +7208:GrThreadSafeCache::CreateLazyView\28GrDirectContext*\2c\20GrColorType\2c\20SkISize\2c\20GrSurfaceOrigin\2c\20SkBackingFit\29 +7209:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29 +7210:GrTextureRenderTargetProxy::initSurfaceFlags\28GrCaps\20const&\29 +7211:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +7212:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28GrCaps\20const&\2c\20std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20GrMipmapStatus\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\2c\20std::__2::basic_string_view>\29 +7213:GrTextureProxy::~GrTextureProxy\28\29.2 +7214:GrTextureProxy::~GrTextureProxy\28\29.1 +7215:GrTextureProxy::setUniqueKey\28GrProxyProvider*\2c\20skgpu::UniqueKey\20const&\29 +7216:GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +7217:GrTextureProxy::instantiate\28GrResourceProvider*\29 +7218:GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +7219:GrTextureProxy::callbackDesc\28\29\20const +7220:GrTextureProxy::ProxiesAreCompatibleAsDynamicState\28GrSurfaceProxy\20const*\2c\20GrSurfaceProxy\20const*\29 +7221:GrTextureProxy::GrTextureProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +7222:GrTextureEffect::~GrTextureEffect\28\29 +7223:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::$_1::operator\28\29\28int\2c\20GrSamplerState::WrapMode\2c\20GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::Span\2c\20GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29::Span\2c\20float\29\20const +7224:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29::$_0::operator\28\29\28float*\2c\20GrResourceHandle\29\20const +7225:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::$_2::operator\28\29\28GrTextureEffect::ShaderMode\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +7226:GrTexture::onGpuMemorySize\28\29\20const +7227:GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +7228:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29 +7229:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29 +7230:GrSurfaceProxyView::operator=\28GrSurfaceProxyView\20const&\29 +7231:GrSurfaceProxyView::operator==\28GrSurfaceProxyView\20const&\29\20const +7232:GrSurfaceProxyPriv::assign\28sk_sp\29 +7233:GrSurfaceProxy::GrSurfaceProxy\28std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +7234:GrSurfaceProxy::GrSurfaceProxy\28GrBackendFormat\20const&\2c\20SkISize\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrInternalSurfaceFlags\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +7235:GrSurface::onRelease\28\29 +7236:GrStyledShape::setInheritedKey\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +7237:GrStyledShape::asRRect\28SkRRect*\2c\20SkPathDirection*\2c\20unsigned\20int*\2c\20bool*\29\20const +7238:GrStyledShape::asLine\28SkPoint*\2c\20bool*\29\20const +7239:GrStyledShape::GrStyledShape\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20bool\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +7240:GrStyledShape::GrStyledShape\28SkRRect\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +7241:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20SkPaint\20const&\2c\20GrStyledShape::DoSimplify\29 +7242:GrStyle::resetToInitStyle\28SkStrokeRec::InitStyle\29 +7243:GrStyle::applyToPath\28SkPath*\2c\20SkStrokeRec::InitStyle*\2c\20SkPath\20const&\2c\20float\29\20const +7244:GrStyle::applyPathEffect\28SkPath*\2c\20SkStrokeRec*\2c\20SkPath\20const&\29\20const +7245:GrStyle::MatrixToScaleFactor\28SkMatrix\20const&\29 +7246:GrStyle::DashInfo::operator=\28GrStyle::DashInfo\20const&\29 +7247:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29 +7248:GrStrokeTessellationShader::Impl::~Impl\28\29 +7249:GrStagingBufferManager::detachBuffers\28\29 +7250:GrSkSLFP::~GrSkSLFP\28\29 +7251:GrSkSLFP::Impl::~Impl\28\29 +7252:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineStruct\28char\20const*\29 +7253:GrSimpleMesh::~GrSimpleMesh\28\29 +7254:GrShape::simplify\28unsigned\20int\29 +7255:GrShape::setArc\28GrArc\20const&\29 +7256:GrShape::segmentMask\28\29\20const +7257:GrShape::conservativeContains\28SkRect\20const&\29\20const +7258:GrShape::closed\28\29\20const +7259:GrShape::GrShape\28SkRect\20const&\29 +7260:GrShape::GrShape\28SkRRect\20const&\29 +7261:GrShape::GrShape\28SkPath\20const&\29 +7262:GrShaderVar::GrShaderVar\28SkString\2c\20SkSLType\2c\20GrShaderVar::TypeModifier\2c\20int\2c\20SkString\2c\20SkString\29 +7263:GrScissorState::operator==\28GrScissorState\20const&\29\20const +7264:GrScissorState::intersect\28SkIRect\20const&\29 +7265:GrSWMaskHelper::toTextureView\28GrRecordingContext*\2c\20SkBackingFit\29 +7266:GrSWMaskHelper::drawShape\28GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +7267:GrSWMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +7268:GrResourceProvider::writePixels\28sk_sp\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\29\20const +7269:GrResourceProvider::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +7270:GrResourceProvider::prepareLevels\28GrBackendFormat\20const&\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\2c\20skia_private::AutoSTArray<14\2c\20GrMipLevel>*\2c\20skia_private::AutoSTArray<14\2c\20std::__2::unique_ptr>>*\29\20const +7271:GrResourceProvider::getExactScratch\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7272:GrResourceProvider::findAndRefScratchTexture\28skgpu::ScratchKey\20const&\2c\20std::__2::basic_string_view>\29 +7273:GrResourceProvider::findAndRefScratchTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7274:GrResourceProvider::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7275:GrResourceProvider::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20GrColorType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMipLevel\20const*\2c\20std::__2::basic_string_view>\29 +7276:GrResourceProvider::createBuffer\28void\20const*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +7277:GrResourceProvider::createApproxTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7278:GrResourceCache::removeResource\28GrGpuResource*\29 +7279:GrResourceCache::removeFromNonpurgeableArray\28GrGpuResource*\29 +7280:GrResourceCache::releaseAll\28\29 +7281:GrResourceCache::refAndMakeResourceMRU\28GrGpuResource*\29 +7282:GrResourceCache::processFreedGpuResources\28\29 +7283:GrResourceCache::insertResource\28GrGpuResource*\29 +7284:GrResourceCache::findAndRefUniqueResource\28skgpu::UniqueKey\20const&\29 +7285:GrResourceCache::didChangeBudgetStatus\28GrGpuResource*\29 +7286:GrResourceCache::addToNonpurgeableArray\28GrGpuResource*\29 +7287:GrResourceAllocator::~GrResourceAllocator\28\29 +7288:GrResourceAllocator::planAssignment\28\29 +7289:GrResourceAllocator::expire\28unsigned\20int\29 +7290:GrResourceAllocator::Register*\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29 +7291:GrResourceAllocator::IntervalList::popHead\28\29 +7292:GrResourceAllocator::IntervalList::insertByIncreasingStart\28GrResourceAllocator::Interval*\29 +7293:GrRenderTask::makeSkippable\28\29 +7294:GrRenderTask::isUsed\28GrSurfaceProxy*\29\20const +7295:GrRenderTask::isInstantiated\28\29\20const +7296:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.2 +7297:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +7298:GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7299:GrRenderTargetProxy::isMSAADirty\28\29\20const +7300:GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7301:GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7302:GrRenderTargetProxy::callbackDesc\28\29\20const +7303:GrRenderTarget::GrRenderTarget\28GrGpu*\2c\20SkISize\20const&\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20sk_sp\29 +7304:GrRecordingContextPriv::createDevice\28skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\2c\20skgpu::ganesh::Device::InitContents\29 +7305:GrRecordingContext::init\28\29 +7306:GrRecordingContext::destroyDrawingManager\28\29 +7307:GrRecordingContext::colorTypeSupportedAsSurface\28SkColorType\29\20const +7308:GrRecordingContext::abandoned\28\29 +7309:GrRecordingContext::abandonContext\28\29 +7310:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29 +7311:GrRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\2c\20GrShaderCaps\20const&\29 +7312:GrQuadUtils::TessellationHelper::outset\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad*\2c\20GrQuad*\29 +7313:GrQuadUtils::TessellationHelper::getOutsetRequest\28skvx::Vec<4\2c\20float>\20const&\29 +7314:GrQuadUtils::TessellationHelper::adjustVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +7315:GrQuadUtils::TessellationHelper::adjustDegenerateVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +7316:GrQuadUtils::TessellationHelper::Vertices::moveTo\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20int>\20const&\29 +7317:GrQuadUtils::ClipToW0\28DrawQuad*\2c\20DrawQuad*\29 +7318:GrQuadBuffer<\28anonymous\20namespace\29::TextureOpImpl::ColorSubsetAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl::ColorSubsetAndAA&&\2c\20GrQuad\20const*\29 +7319:GrQuadBuffer<\28anonymous\20namespace\29::TextureOpImpl::ColorSubsetAndAA>::GrQuadBuffer\28int\2c\20bool\29 +7320:GrQuad::point\28int\29\20const +7321:GrQuad::bounds\28\29\20const::'lambda0'\28float\20const*\29::operator\28\29\28float\20const*\29\20const +7322:GrQuad::bounds\28\29\20const::'lambda'\28float\20const*\29::operator\28\29\28float\20const*\29\20const +7323:GrProxyProvider::removeUniqueKeyFromProxy\28GrTextureProxy*\29 +7324:GrProxyProvider::processInvalidUniqueKeyImpl\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\2c\20GrProxyProvider::RemoveTableEntry\29 +7325:GrProxyProvider::createLazyProxy\28std::__2::function&&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20GrMipmapStatus\2c\20GrInternalSurfaceFlags\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20GrSurfaceProxy::UseAllocator\2c\20std::__2::basic_string_view>\29 +7326:GrProxyProvider::adoptUniqueKeyFromSurface\28GrTextureProxy*\2c\20GrSurface\20const*\29 +7327:GrProcessorSet::operator==\28GrProcessorSet\20const&\29\20const +7328:GrPorterDuffXPFactory::Get\28SkBlendMode\29 +7329:GrPixmap::GrPixmap\28SkPixmap\20const&\29 +7330:GrPipeline::peekDstTexture\28\29\20const +7331:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20sk_sp\2c\20GrAppliedHardClip\20const&\29 +7332:GrPersistentCacheUtils::ShaderMetadata::~ShaderMetadata\28\29 +7333:GrPersistentCacheUtils::GetType\28SkReadBuffer*\29 +7334:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29 +7335:GrPathUtils::QuadUVMatrix::set\28SkPoint\20const*\29 +7336:GrPathUtils::QuadUVMatrix::apply\28void*\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +7337:GrPathTessellationShader::MakeStencilOnlyPipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedHardClip\20const&\2c\20GrPipeline::InputFlags\29 +7338:GrPathTessellationShader::Impl::~Impl\28\29 +7339:GrOpsRenderPass::~GrOpsRenderPass\28\29 +7340:GrOpsRenderPass::resetActiveBuffers\28\29 +7341:GrOpsRenderPass::draw\28int\2c\20int\29 +7342:GrOpsRenderPass::drawIndexPattern\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +7343:GrOpFlushState::~GrOpFlushState\28\29.1 +7344:GrOpFlushState::smallPathAtlasManager\28\29\20const +7345:GrOpFlushState::reset\28\29 +7346:GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +7347:GrOpFlushState::putBackIndices\28int\29 +7348:GrOpFlushState::executeDrawsAndUploadsForMeshDrawOp\28GrOp\20const*\2c\20SkRect\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +7349:GrOpFlushState::drawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +7350:GrOpFlushState::doUpload\28std::__2::function&\29>&\2c\20bool\29 +7351:GrOpFlushState::addASAPUpload\28std::__2::function&\29>&&\29 +7352:GrOpFlushState::OpArgs::OpArgs\28GrOp*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7353:GrOp::setTransformedBounds\28SkRect\20const&\2c\20SkMatrix\20const&\2c\20GrOp::HasAABloat\2c\20GrOp::IsHairline\29 +7354:GrOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7355:GrOp::combineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7356:GrNonAtomicRef::unref\28\29\20const +7357:GrNonAtomicRef::unref\28\29\20const +7358:GrNonAtomicRef::unref\28\29\20const +7359:GrNativeRect::operator!=\28GrNativeRect\20const&\29\20const +7360:GrMeshDrawTarget::allocPrimProcProxyPtrs\28int\29 +7361:GrMeshDrawOp::PatternHelper::init\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +7362:GrMemoryPool::allocate\28unsigned\20long\29 +7363:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +7364:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::changed\28\29 +7365:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrTextureProxy*\29\20const +7366:GrIndexBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20int*\29 +7367:GrIndexBufferAllocPool::makeSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7368:GrImageInfo::operator=\28GrImageInfo&&\29 +7369:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20int\2c\20int\29 +7370:GrImageContext::abandonContext\28\29 +7371:GrHashMapWithCache::find\28unsigned\20int\20const&\29\20const +7372:GrGradientBitmapCache::release\28GrGradientBitmapCache::Entry*\29\20const +7373:GrGradientBitmapCache::Entry::~Entry\28\29 +7374:GrGpuResource::setLabel\28std::__2::basic_string_view>\29 +7375:GrGpuResource::makeBudgeted\28\29 +7376:GrGpuResource::GrGpuResource\28GrGpu*\2c\20std::__2::basic_string_view>\29 +7377:GrGpuResource::CacheAccess::abandon\28\29 +7378:GrGpuBuffer::ComputeScratchKeyForDynamicBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20skgpu::ScratchKey*\29 +7379:GrGpu::~GrGpu\28\29 +7380:GrGpu::regenerateMipMapLevels\28GrTexture*\29 +7381:GrGpu::executeFlushInfo\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +7382:GrGpu::createTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7383:GrGpu::createTextureCommon\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +7384:GrGpu::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +7385:GrGpu::callSubmittedProcs\28bool\29 +7386:GrGeometryProcessor::AttributeSet::addToKey\28skgpu::KeyBuilder*\29\20const +7387:GrGeometryProcessor::AttributeSet::Iter::skipUninitialized\28\29 +7388:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b26\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +7389:GrGLVertexArray::bind\28GrGLGpu*\29 +7390:GrGLTextureParameters::invalidate\28\29 +7391:GrGLTextureParameters::SamplerOverriddenState::SamplerOverriddenState\28\29 +7392:GrGLTexture::~GrGLTexture\28\29.2 +7393:GrGLTexture::~GrGLTexture\28\29.1 +7394:GrGLTexture::MakeWrapped\28GrGLGpu*\2c\20GrMipmapStatus\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrWrapCacheable\2c\20GrIOType\2c\20std::__2::basic_string_view>\29 +7395:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20skgpu::Budgeted\2c\20GrGLTexture::Desc\20const&\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +7396:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +7397:GrGLSemaphore::~GrGLSemaphore\28\29 +7398:GrGLSLVaryingHandler::addAttribute\28GrShaderVar\20const&\29 +7399:GrGLSLVarying::vsOutVar\28\29\20const +7400:GrGLSLVarying::fsInVar\28\29\20const +7401:GrGLSLUniformHandler::liftUniformToVertexShader\28GrProcessor\20const&\2c\20SkString\29 +7402:GrGLSLShaderBuilder::nextStage\28\29 +7403:GrGLSLShaderBuilder::finalize\28unsigned\20int\29 +7404:GrGLSLShaderBuilder::emitFunction\28char\20const*\2c\20char\20const*\29 +7405:GrGLSLShaderBuilder::emitFunctionPrototype\28char\20const*\29 +7406:GrGLSLShaderBuilder::appendTextureLookupAndBlend\28char\20const*\2c\20SkBlendMode\2c\20GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +7407:GrGLSLShaderBuilder::appendDecls\28SkTBlockList\20const&\2c\20SkString*\29\20const +7408:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29::$_0::operator\28\29\28char\20const*\2c\20GrResourceHandle\2c\20skcms_TFType\29\20const +7409:GrGLSLShaderBuilder::GrGLSLShaderBuilder\28GrGLSLProgramBuilder*\29 +7410:GrGLSLProgramDataManager::setRuntimeEffectUniforms\28SkSpan\2c\20SkSpan\20const>\2c\20SkSpan\2c\20void\20const*\29\20const +7411:GrGLSLProgramBuilder::~GrGLSLProgramBuilder\28\29 +7412:GrGLSLFragmentShaderBuilder::onFinalize\28\29 +7413:GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +7414:GrGLSLColorSpaceXformHelper::isNoop\28\29\20const +7415:GrGLSLBlend::SetBlendModeUniformData\28GrGLSLProgramDataManager\20const&\2c\20GrResourceHandle\2c\20SkBlendMode\29 +7416:GrGLSLBlend::BlendExpression\28GrProcessor\20const*\2c\20GrGLSLUniformHandler*\2c\20GrResourceHandle*\2c\20char\20const*\2c\20char\20const*\2c\20SkBlendMode\29 +7417:GrGLRenderTarget::~GrGLRenderTarget\28\29.2 +7418:GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +7419:GrGLRenderTarget::setFlags\28GrGLCaps\20const&\2c\20GrGLRenderTarget::IDs\20const&\29 +7420:GrGLRenderTarget::onGpuMemorySize\28\29\20const +7421:GrGLRenderTarget::bind\28bool\29 +7422:GrGLRenderTarget::backendFormat\28\29\20const +7423:GrGLRenderTarget::GrGLRenderTarget\28GrGLGpu*\2c\20SkISize\20const&\2c\20GrGLFormat\2c\20int\2c\20GrGLRenderTarget::IDs\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7424:GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +7425:GrGLProgramDataManager::set2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +7426:GrGLProgramBuilder::uniformHandler\28\29 +7427:GrGLProgramBuilder::compileAndAttachShaders\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SkTDArray*\2c\20bool\2c\20skgpu::ShaderErrorHandler*\29 +7428:GrGLProgramBuilder::PrecompileProgram\28GrDirectContext*\2c\20GrGLPrecompiledProgram*\2c\20SkData\20const&\29::$_0::operator\28\29\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int\29\20const +7429:GrGLProgramBuilder::CreateProgram\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrGLPrecompiledProgram\20const*\29 +7430:GrGLProgram::~GrGLProgram\28\29 +7431:GrGLMakeNativeInterface\28\29 +7432:GrGLInterface::~GrGLInterface\28\29 +7433:GrGLGpu::~GrGLGpu\28\29 +7434:GrGLGpu::waitSemaphore\28GrSemaphore*\29 +7435:GrGLGpu::uploadTexData\28SkISize\2c\20unsigned\20int\2c\20SkIRect\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\2c\20GrMipLevel\20const*\2c\20int\29 +7436:GrGLGpu::uploadCompressedTexData\28SkTextureCompressionType\2c\20GrGLFormat\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20unsigned\20int\2c\20void\20const*\2c\20unsigned\20long\29 +7437:GrGLGpu::uploadColorToTex\28GrGLFormat\2c\20SkISize\2c\20unsigned\20int\2c\20std::__2::array\2c\20unsigned\20int\29 +7438:GrGLGpu::readOrTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20int\29 +7439:GrGLGpu::onFBOChanged\28\29 +7440:GrGLGpu::getCompatibleStencilIndex\28GrGLFormat\29 +7441:GrGLGpu::flushWireframeState\28bool\29 +7442:GrGLGpu::flushScissorRect\28SkIRect\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +7443:GrGLGpu::flushProgram\28unsigned\20int\29 +7444:GrGLGpu::flushProgram\28sk_sp\29 +7445:GrGLGpu::flushFramebufferSRGB\28bool\29 +7446:GrGLGpu::flushConservativeRasterState\28bool\29 +7447:GrGLGpu::deleteSync\28__GLsync*\29 +7448:GrGLGpu::createRenderTargetObjects\28GrGLTexture::Desc\20const&\2c\20int\2c\20GrGLRenderTarget::IDs*\29 +7449:GrGLGpu::createCompressedTexture2D\28SkISize\2c\20SkTextureCompressionType\2c\20GrGLFormat\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrGLTextureParameters::SamplerOverriddenState*\29 +7450:GrGLGpu::bindVertexArray\28unsigned\20int\29 +7451:GrGLGpu::TextureUnitBindings::setBoundID\28unsigned\20int\2c\20GrGpuResource::UniqueID\29 +7452:GrGLGpu::TextureUnitBindings::invalidateAllTargets\28bool\29 +7453:GrGLGpu::TextureToCopyProgramIdx\28GrTexture*\29 +7454:GrGLGpu::ProgramCache::~ProgramCache\28\29 +7455:GrGLGpu::ProgramCache::findOrCreateProgramImpl\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrThreadSafePipelineBuilder::Stats::ProgramCacheResult*\29 +7456:GrGLGpu::HWVertexArrayState::invalidate\28\29 +7457:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void\20const*\29 +7458:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\29 +7459:GrGLContext::~GrGLContext\28\29.1 +7460:GrGLCaps::~GrGLCaps\28\29 +7461:GrGLCaps::getTexSubImageExternalFormatAndType\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7462:GrGLCaps::getExternalFormat\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20GrGLCaps::ExternalFormatUsage\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7463:GrGLCaps::canCopyTexSubImage\28GrGLFormat\2c\20bool\2c\20GrTextureType\20const*\2c\20GrGLFormat\2c\20bool\2c\20GrTextureType\20const*\29\20const +7464:GrGLCaps::canCopyAsBlit\28GrGLFormat\2c\20int\2c\20GrTextureType\20const*\2c\20GrGLFormat\2c\20int\2c\20GrTextureType\20const*\2c\20SkRect\20const&\2c\20bool\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29\20const +7465:GrGLBuffer::~GrGLBuffer\28\29.1 +7466:GrGLAttribArrayState::resize\28int\29 +7467:GrGLAttribArrayState::GrGLAttribArrayState\28int\29 +7468:GrFragmentProcessors::MakeChildFP\28SkRuntimeEffect::ChildPtr\20const&\2c\20GrFPArgs\20const&\29 +7469:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +7470:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +7471:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::Make\28\29 +7472:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::Make\28std::__2::unique_ptr>\29 +7473:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::DeviceSpace\28std::__2::unique_ptr>\29 +7474:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +7475:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +7476:GrFragmentProcessor::ClampOutput\28std::__2::unique_ptr>\29 +7477:GrFixedClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +7478:GrFixedClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +7479:GrFinishCallbacks::check\28\29 +7480:GrEagerDynamicVertexAllocator::unlock\28int\29 +7481:GrDynamicAtlas::~GrDynamicAtlas\28\29 +7482:GrDynamicAtlas::Node::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +7483:GrDrawingManager::flush\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +7484:GrDrawingManager::closeAllTasks\28\29 +7485:GrDrawOpAtlas::uploadToPage\28unsigned\20int\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +7486:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29 +7487:GrDrawOpAtlas::setLastUseToken\28skgpu::AtlasLocator\20const&\2c\20skgpu::AtlasToken\29 +7488:GrDrawOpAtlas::processEviction\28skgpu::PlotLocator\29 +7489:GrDrawOpAtlas::hasID\28skgpu::PlotLocator\20const&\29 +7490:GrDrawOpAtlas::compact\28skgpu::AtlasToken\29 +7491:GrDrawOpAtlas::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +7492:GrDrawOpAtlas::Make\28GrProxyProvider*\2c\20GrBackendFormat\20const&\2c\20SkColorType\2c\20unsigned\20long\2c\20int\2c\20int\2c\20int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20GrDrawOpAtlas::AllowMultitexturing\2c\20skgpu::PlotEvictionCallback*\2c\20std::__2::basic_string_view>\29 +7493:GrDrawIndirectBufferAllocPool::putBack\28int\29 +7494:GrDrawIndirectBufferAllocPool::putBackIndexed\28int\29 +7495:GrDrawIndirectBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7496:GrDrawIndirectBufferAllocPool::makeIndexedSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7497:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29 +7498:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29 +7499:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +7500:GrDistanceFieldA8TextGeoProc::onTextureSampler\28int\29\20const +7501:GrDisableColorXPFactory::MakeXferProcessor\28\29 +7502:GrDirectContextPriv::validPMUPMConversionExists\28\29 +7503:GrDirectContext::~GrDirectContext\28\29 +7504:GrDirectContext::syncAllOutstandingGpuWork\28bool\29 +7505:GrDirectContext::submit\28GrSyncCpu\29 +7506:GrDirectContext::abandoned\28\29 +7507:GrDeferredProxyUploader::signalAndFreeData\28\29 +7508:GrDeferredProxyUploader::GrDeferredProxyUploader\28\29 +7509:GrCopyRenderTask::~GrCopyRenderTask\28\29 +7510:GrCopyRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +7511:GrCopyBaseMipMapToView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Budgeted\29 +7512:GrCopyBaseMipMapToTextureProxy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20std::__2::basic_string_view>\2c\20skgpu::Budgeted\29 +7513:GrContext_Base::~GrContext_Base\28\29.1 +7514:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29 +7515:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +7516:GrColorInfo::makeColorType\28GrColorType\29\20const +7517:GrColorInfo::isLinearlyBlended\28\29\20const +7518:GrColorFragmentProcessorAnalysis::GrColorFragmentProcessorAnalysis\28GrProcessorAnalysisColor\20const&\2c\20std::__2::unique_ptr>\20const*\2c\20int\29 +7519:GrCaps::~GrCaps\28\29 +7520:GrCaps::surfaceSupportsWritePixels\28GrSurface\20const*\29\20const +7521:GrCaps::getDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\2c\20bool\29\20const +7522:GrCPixmap::GrCPixmap\28GrPixmap\20const&\29 +7523:GrBufferAllocPool::resetCpuData\28unsigned\20long\29 +7524:GrBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\2c\20unsigned\20long*\29 +7525:GrBufferAllocPool::flushCpuData\28GrBufferAllocPool::BufferBlock\20const&\2c\20unsigned\20long\29 +7526:GrBufferAllocPool::destroyBlock\28\29 +7527:GrBufferAllocPool::deleteBlocks\28\29 +7528:GrBufferAllocPool::createBlock\28unsigned\20long\29 +7529:GrBufferAllocPool::CpuBufferCache::makeBuffer\28unsigned\20long\2c\20bool\29 +7530:GrBlurUtils::mask_release_proc\28void*\2c\20void*\29 +7531:GrBlurUtils::make_unnormalized_half_kernel\28float*\2c\20int\2c\20float\29 +7532:GrBlurUtils::draw_shape_with_mask_filter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\29 +7533:GrBlurUtils::draw_mask\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrPaint&&\2c\20GrSurfaceProxyView\29 +7534:GrBlurUtils::create_data\28SkIRect\20const&\2c\20SkIRect\20const&\29 +7535:GrBlurUtils::convolve_gaussian_1d\28skgpu::ganesh::SurfaceFillContext*\2c\20GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\2c\20SkIRect\20const&\2c\20SkAlphaType\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\29 +7536:GrBlurUtils::convolve_gaussian\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20SkIRect\2c\20SkIRect\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkBackingFit\29::$_0::operator\28\29\28SkIRect\29\20const +7537:GrBlurUtils::convolve_gaussian\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20SkAlphaType\2c\20SkIRect\2c\20SkIRect\2c\20GrBlurUtils::\28anonymous\20namespace\29::Direction\2c\20int\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkBackingFit\29 +7538:GrBlurUtils::clip_bounds_quick_reject\28SkIRect\20const&\2c\20SkIRect\20const&\29 +7539:GrBlurUtils::\28anonymous\20namespace\29::make_texture_effect\28GrCaps\20const*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20GrSamplerState\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkISize\20const&\29 +7540:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29 +7541:GrBitmapTextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +7542:GrBitmapTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29 +7543:GrBicubicEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +7544:GrBicubicEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +7545:GrBackendTexture::operator=\28GrBackendTexture\20const&\29 +7546:GrBackendTexture::GrBackendTexture\28int\2c\20int\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\2c\20GrBackendApi\2c\20GrTextureType\2c\20GrGLBackendTextureData\20const&\29 +7547:GrBackendRenderTarget::isProtected\28\29\20const +7548:GrBackendFormatBytesPerBlock\28GrBackendFormat\20const&\29 +7549:GrBackendFormat::operator!=\28GrBackendFormat\20const&\29\20const +7550:GrBackendFormat::makeTexture2D\28\29\20const +7551:GrBackendFormat::isMockStencilFormat\28\29\20const +7552:GrAuditTrail::opsCombined\28GrOp\20const*\2c\20GrOp\20const*\29 +7553:GrAttachment::ComputeSharedAttachmentUniqueKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20GrAttachment::UsageFlags\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMemoryless\2c\20skgpu::UniqueKey*\29 +7554:GrAttachment::ComputeScratchKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20GrAttachment::UsageFlags\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrMemoryless\2c\20skgpu::ScratchKey*\29 +7555:GrAtlasManager::~GrAtlasManager\28\29 +7556:GrAtlasManager::getViews\28skgpu::MaskFormat\2c\20unsigned\20int*\29 +7557:GrAtlasManager::atlasGeneration\28skgpu::MaskFormat\29\20const +7558:GrAppliedClip::visitProxies\28std::__2::function\20const&\29\20const +7559:GrAppliedClip::addCoverageFP\28std::__2::unique_ptr>\29 +7560:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::EventList*\2c\20GrTriangulator::Comparator\20const&\29\20const +7561:GrAATriangulator::connectPartners\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +7562:GrAATriangulator::collapseOverlapRegions\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\2c\20GrAATriangulator::EventComparator\29 +7563:GrAATriangulator::Event*\20SkArenaAlloc::make\28GrAATriangulator::SSEdge*&\2c\20SkPoint&\2c\20unsigned\20char&\29 +7564:GrAAConvexTessellator::~GrAAConvexTessellator\28\29 +7565:GrAAConvexTessellator::quadTo\28SkPoint\20const*\29 +7566:GrAAConvexTessellator::fanRing\28GrAAConvexTessellator::Ring\20const&\29 +7567:GetVariationDesignPosition\28AutoFTAccess&\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20int\29 +7568:GetShortIns +7569:FontMgrRunIterator::~FontMgrRunIterator\28\29 +7570:FontMgrRunIterator::endOfCurrentRun\28\29\20const +7571:FontMgrRunIterator::atEnd\28\29\20const +7572:FindSortableTop\28SkOpContourHead*\29 +7573:FT_Vector_NormLen +7574:FT_Sfnt_Table_Info +7575:FT_Select_Size +7576:FT_Render_Glyph +7577:FT_Remove_Module +7578:FT_Outline_Get_Orientation +7579:FT_Outline_EmboldenXY +7580:FT_Outline_Decompose +7581:FT_Open_Face +7582:FT_New_Library +7583:FT_New_GlyphSlot +7584:FT_Match_Size +7585:FT_GlyphLoader_Reset +7586:FT_GlyphLoader_Prepare +7587:FT_GlyphLoader_CheckSubGlyphs +7588:FT_Get_Var_Design_Coordinates +7589:FT_Get_Postscript_Name +7590:FT_Get_Paint_Layers +7591:FT_Get_PS_Font_Info +7592:FT_Get_Glyph_Name +7593:FT_Get_FSType_Flags +7594:FT_Get_Color_Glyph_ClipBox +7595:FT_Done_Size +7596:FT_Done_Library +7597:FT_Done_GlyphSlot +7598:FT_Bitmap_Done +7599:FT_Bitmap_Convert +7600:FT_Add_Default_Modules +7601:EmptyFontLoader::loadSystemFonts\28SkTypeface_FreeType::Scanner\20const&\2c\20skia_private::TArray\2c\20true>*\29\20const +7602:EllipticalRRectOp::~EllipticalRRectOp\28\29.1 +7603:EllipticalRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7604:EllipticalRRectOp::EllipticalRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20SkPoint\2c\20bool\29 +7605:EllipseOp::EllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20EllipseOp::DeviceSpaceParams\20const&\2c\20SkStrokeRec\20const&\29 +7606:EllipseGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7607:Dot2AngleType\28float\29 +7608:DIEllipseOp::~DIEllipseOp\28\29 +7609:DIEllipseOp::DIEllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20DIEllipseOp::DeviceSpaceParams\20const&\2c\20SkMatrix\20const&\29 +7610:CustomXP::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +7611:CustomXP::makeProgramImpl\28\29\20const::Impl::emitBlendCodeForDstRead\28GrGLSLXPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20GrXferProcessor\20const&\29 +7612:Cr_z_inflateReset2 +7613:Cr_z_inflateReset +7614:CoverageSetOpXP::onIsEqual\28GrXferProcessor\20const&\29\20const +7615:Convexicator::close\28\29 +7616:Convexicator::addVec\28SkPoint\20const&\29 +7617:Convexicator::addPt\28SkPoint\20const&\29 +7618:ContourIter::next\28\29 +7619:Contour&\20std::__2::vector>::emplace_back\28SkRect&\2c\20int&\2c\20int&\29 +7620:CircularRRectOp::~CircularRRectOp\28\29.1 +7621:CircularRRectOp::CircularRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +7622:CircleOp::~CircleOp\28\29 +7623:CircleOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +7624:CircleOp::CircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +7625:CircleGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29 +7626:CircleGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7627:CFF::dict_interpreter_t\2c\20CFF::interp_env_t>::interpret\28CFF::cff1_private_dict_values_base_t&\29 +7628:CFF::cs_opset_t\2c\20cff2_path_param_t\2c\20cff2_path_procs_path_t>::process_op\28unsigned\20int\2c\20CFF::cff2_cs_interp_env_t&\2c\20cff2_path_param_t&\29 +7629:CFF::cs_opset_t\2c\20cff2_extents_param_t\2c\20cff2_path_procs_extents_t>::process_op\28unsigned\20int\2c\20CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\29 +7630:CFF::cff_stack_t::cff_stack_t\28\29 +7631:CFF::cff2_cs_interp_env_t::process_vsindex\28\29 +7632:CFF::cff2_cs_interp_env_t::process_blend\28\29 +7633:CFF::cff2_cs_interp_env_t::fetch_op\28\29 +7634:CFF::cff2_cs_interp_env_t::cff2_cs_interp_env_t\28hb_array_t\20const&\2c\20OT::cff2::accelerator_t\20const&\2c\20unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29 +7635:CFF::cff2_cs_interp_env_t::blend_deltas\28hb_array_t\29\20const +7636:CFF::cff1_top_dict_values_t::init\28\29 +7637:CFF::cff1_cs_interp_env_t::cff1_cs_interp_env_t\28hb_array_t\20const&\2c\20OT::cff1::accelerator_t\20const&\2c\20unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29 +7638:CFF::biased_subrs_t>>::init\28CFF::Subrs>\20const*\29 +7639:CFF::biased_subrs_t>>::init\28CFF::Subrs>\20const*\29 +7640:CFF::FDSelect::get_fd\28unsigned\20int\29\20const +7641:CFF::FDSelect3_4\2c\20OT::IntType>::sentinel\28\29\20const +7642:CFF::FDSelect3_4\2c\20OT::IntType>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +7643:CFF::FDSelect3_4\2c\20OT::IntType>::get_fd\28unsigned\20int\29\20const +7644:CFF::FDSelect0::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +7645:CFF::Charset::get_glyph\28unsigned\20int\2c\20unsigned\20int\29\20const +7646:CFF::CFF2FDSelect::get_fd\28unsigned\20int\29\20const +7647:ButtCapDashedCircleOp::ButtCapDashedCircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +7648:BlockIndexIterator::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Decrement\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block\20const*\2c\20int\29>::begin\28\29\20const +7649:BlockIndexIterator::First\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Last\28SkBlockAllocator::Block\20const*\29\2c\20&SkTBlockList::Increment\28SkBlockAllocator::Block\20const*\2c\20int\29\2c\20&SkTBlockList::GetItem\28SkBlockAllocator::Block\20const*\2c\20int\29>::Item::operator++\28\29 +7650:AutoRestoreInverseness::~AutoRestoreInverseness\28\29 +7651:AutoRestoreInverseness::AutoRestoreInverseness\28GrShape*\2c\20GrStyle\20const&\29 +7652:AutoLayerForImageFilter::addLayer\28SkPaint\20const&\2c\20SkRect\20const*\2c\20bool\29 +7653:AngleWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20bool*\29 +7654:AddIntersectTs\28SkOpContour*\2c\20SkOpContour*\2c\20SkOpCoincidence*\29 +7655:ActiveEdgeList::replace\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +7656:ActiveEdgeList::remove\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +7657:ActiveEdgeList::insert\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +7658:ActiveEdgeList::allocate\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +7659:AAT::trak::sanitize\28hb_sanitize_context_t*\29\20const +7660:AAT::mortmorx::sanitize\28hb_sanitize_context_t*\29\20const +7661:AAT::mortmorx::sanitize\28hb_sanitize_context_t*\29\20const +7662:AAT::ltag::sanitize\28hb_sanitize_context_t*\29\20const +7663:AAT::ltag::get_language\28unsigned\20int\29\20const +7664:AAT::feat::sanitize\28hb_sanitize_context_t*\29\20const +7665:AAT::ankr::sanitize\28hb_sanitize_context_t*\29\20const +7666:AAT::ankr::get_anchor\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +7667:AAT::TrackData::get_tracking\28void\20const*\2c\20float\29\20const +7668:AAT::Lookup>::get_value_or_null\28unsigned\20int\2c\20unsigned\20int\29\20const +7669:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +7670:AAT::Lookup>::get_value_or_null\28unsigned\20int\2c\20unsigned\20int\29\20const +7671:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +7672:AAT::KernPair\20const*\20hb_sorted_array_t::bsearch\28AAT::hb_glyph_pair_t\20const&\2c\20AAT::KernPair\20const*\29 +7673:AAT::KernPair\20const&\20OT::SortedArrayOf>>::bsearch\28AAT::hb_glyph_pair_t\20const&\2c\20AAT::KernPair\20const&\29\20const +7674:AAT::ChainSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +7675:AAT::ChainSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +7676:xyzd50_to_hcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +7677:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +7678:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +7679:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7680:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7681:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7682:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7683:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7684:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7685:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7686:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7687:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7688:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7689:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7690:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7691:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7692:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7693:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7694:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7695:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7696:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7697:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7698:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7699:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7700:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7701:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7702:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7703:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7704:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7705:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7706:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7707:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7708:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7709:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7710:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7711:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7712:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7713:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7714:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7715:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7716:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7717:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7718:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7719:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7720:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7721:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7722:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7723:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7724:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7725:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7726:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7727:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7728:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7729:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7730:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7731:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7732:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7733:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7734:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7735:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7736:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7737:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7738:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7739:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7740:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7741:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7742:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7743:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7744:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7745:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7746:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7747:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7748:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7749:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7750:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7751:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7752:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7753:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7754:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7755:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7756:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7757:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7758:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7759:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7760:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7761:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7762:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7763:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7764:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7765:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7766:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7767:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7768:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7769:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7770:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7771:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7772:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7773:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7774:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7775:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +7776:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +7777:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29.1 +7778:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29 +7779:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +7780:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +7781:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +7782:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +7783:virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7784:virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7785:virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7786:virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +7787:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29.1 +7788:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29 +7789:virtual\20thunk\20to\20GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +7790:virtual\20thunk\20to\20GrTextureProxy::instantiate\28GrResourceProvider*\29 +7791:virtual\20thunk\20to\20GrTextureProxy::getUniqueKey\28\29\20const +7792:virtual\20thunk\20to\20GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +7793:virtual\20thunk\20to\20GrTextureProxy::callbackDesc\28\29\20const +7794:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29\20const +7795:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29 +7796:virtual\20thunk\20to\20GrTexture::onGpuMemorySize\28\29\20const +7797:virtual\20thunk\20to\20GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +7798:virtual\20thunk\20to\20GrTexture::asTexture\28\29\20const +7799:virtual\20thunk\20to\20GrTexture::asTexture\28\29 +7800:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +7801:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +7802:virtual\20thunk\20to\20GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7803:virtual\20thunk\20to\20GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7804:virtual\20thunk\20to\20GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7805:virtual\20thunk\20to\20GrRenderTargetProxy::callbackDesc\28\29\20const +7806:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29\20const +7807:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29 +7808:virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +7809:virtual\20thunk\20to\20GrRenderTarget::onAbandon\28\29 +7810:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29\20const +7811:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29 +7812:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +7813:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +7814:virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +7815:virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +7816:virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +7817:virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7818:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29.1 +7819:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29 +7820:virtual\20thunk\20to\20GrGLTexture::onRelease\28\29 +7821:virtual\20thunk\20to\20GrGLTexture::onAbandon\28\29 +7822:virtual\20thunk\20to\20GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7823:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +7824:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +7825:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::onFinalize\28\29 +7826:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +7827:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29 +7828:virtual\20thunk\20to\20GrGLRenderTarget::onRelease\28\29 +7829:virtual\20thunk\20to\20GrGLRenderTarget::onGpuMemorySize\28\29\20const +7830:virtual\20thunk\20to\20GrGLRenderTarget::onAbandon\28\29 +7831:virtual\20thunk\20to\20GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7832:virtual\20thunk\20to\20GrGLRenderTarget::backendFormat\28\29\20const +7833:vertices_dispose +7834:vertices_create +7835:unicodePositionBuffer_create +7836:typefaces_filterCoveredCodePoints +7837:typeface_create +7838:tt_vadvance_adjust +7839:tt_slot_init +7840:tt_size_request +7841:tt_size_init +7842:tt_size_done +7843:tt_sbit_decoder_load_png +7844:tt_sbit_decoder_load_compound +7845:tt_sbit_decoder_load_byte_aligned +7846:tt_sbit_decoder_load_bit_aligned +7847:tt_property_set +7848:tt_property_get +7849:tt_name_ascii_from_utf16 +7850:tt_name_ascii_from_other +7851:tt_hadvance_adjust +7852:tt_glyph_load +7853:tt_get_var_blend +7854:tt_get_interface +7855:tt_get_glyph_name +7856:tt_get_cmap_info +7857:tt_get_advances +7858:tt_face_set_sbit_strike +7859:tt_face_load_strike_metrics +7860:tt_face_load_sbit_image +7861:tt_face_load_sbit +7862:tt_face_load_post +7863:tt_face_load_pclt +7864:tt_face_load_os2 +7865:tt_face_load_name +7866:tt_face_load_maxp +7867:tt_face_load_kern +7868:tt_face_load_hmtx +7869:tt_face_load_hhea +7870:tt_face_load_head +7871:tt_face_load_gasp +7872:tt_face_load_font_dir +7873:tt_face_load_cpal +7874:tt_face_load_colr +7875:tt_face_load_cmap +7876:tt_face_load_bhed +7877:tt_face_load_any +7878:tt_face_init +7879:tt_face_get_paint_layers +7880:tt_face_get_paint +7881:tt_face_get_kerning +7882:tt_face_get_colr_layer +7883:tt_face_get_colr_glyph_paint +7884:tt_face_get_colorline_stops +7885:tt_face_get_color_glyph_clipbox +7886:tt_face_free_sbit +7887:tt_face_free_ps_names +7888:tt_face_free_name +7889:tt_face_free_cpal +7890:tt_face_free_colr +7891:tt_face_done +7892:tt_face_colr_blend_layer +7893:tt_driver_init +7894:tt_cmap_unicode_init +7895:tt_cmap_unicode_char_next +7896:tt_cmap_unicode_char_index +7897:tt_cmap_init +7898:tt_cmap8_validate +7899:tt_cmap8_get_info +7900:tt_cmap8_char_next +7901:tt_cmap8_char_index +7902:tt_cmap6_validate +7903:tt_cmap6_get_info +7904:tt_cmap6_char_next +7905:tt_cmap6_char_index +7906:tt_cmap4_validate +7907:tt_cmap4_init +7908:tt_cmap4_get_info +7909:tt_cmap4_char_next +7910:tt_cmap4_char_index +7911:tt_cmap2_validate +7912:tt_cmap2_get_info +7913:tt_cmap2_char_next +7914:tt_cmap2_char_index +7915:tt_cmap14_variants +7916:tt_cmap14_variant_chars +7917:tt_cmap14_validate +7918:tt_cmap14_init +7919:tt_cmap14_get_info +7920:tt_cmap14_done +7921:tt_cmap14_char_variants +7922:tt_cmap14_char_var_isdefault +7923:tt_cmap14_char_var_index +7924:tt_cmap14_char_next +7925:tt_cmap13_validate +7926:tt_cmap13_get_info +7927:tt_cmap13_char_next +7928:tt_cmap13_char_index +7929:tt_cmap12_validate +7930:tt_cmap12_get_info +7931:tt_cmap12_char_next +7932:tt_cmap12_char_index +7933:tt_cmap10_validate +7934:tt_cmap10_get_info +7935:tt_cmap10_char_next +7936:tt_cmap10_char_index +7937:tt_cmap0_validate +7938:tt_cmap0_get_info +7939:tt_cmap0_char_next +7940:tt_cmap0_char_index +7941:textStyle_setWordSpacing +7942:textStyle_setTextBaseline +7943:textStyle_setLocale +7944:textStyle_setLetterSpacing +7945:textStyle_setHeight +7946:textStyle_setHalfLeading +7947:textStyle_setForeground +7948:textStyle_setFontVariations +7949:textStyle_setFontStyle +7950:textStyle_setFontSize +7951:textStyle_setDecorationColor +7952:textStyle_setColor +7953:textStyle_setBackground +7954:textStyle_dispose +7955:textStyle_create +7956:textStyle_copy +7957:textStyle_clearFontFamilies +7958:textStyle_addShadow +7959:textStyle_addFontFeature +7960:textStyle_addFontFamilies +7961:textBoxList_getLength +7962:textBoxList_getBoxAtIndex +7963:textBoxList_dispose +7964:t2_hints_stems +7965:t2_hints_open +7966:t1_make_subfont +7967:t1_hints_stem +7968:t1_hints_open +7969:t1_decrypt +7970:t1_decoder_parse_metrics +7971:t1_decoder_init +7972:t1_decoder_done +7973:t1_cmap_unicode_init +7974:t1_cmap_unicode_char_next +7975:t1_cmap_unicode_char_index +7976:t1_cmap_std_done +7977:t1_cmap_std_char_next +7978:t1_cmap_standard_init +7979:t1_cmap_expert_init +7980:t1_cmap_custom_init +7981:t1_cmap_custom_done +7982:t1_cmap_custom_char_next +7983:t1_cmap_custom_char_index +7984:t1_builder_start_point +7985:swizzle_or_premul\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\2c\20SkColorSpaceXformSteps\20const&\29 +7986:surface_renderPictureOnWorker +7987:surface_renderPicture +7988:surface_rasterizeImage +7989:surface_onRenderComplete +7990:surface_destroy +7991:surface_create +7992:strutStyle_setLeading +7993:strutStyle_setHeight +7994:strutStyle_setHalfLeading +7995:strutStyle_setForceStrutHeight +7996:strutStyle_setFontStyle +7997:strutStyle_setFontFamilies +7998:strutStyle_dispose +7999:strutStyle_create +8000:string_read +8001:std::exception::what\28\29\20const +8002:std::bad_variant_access::what\28\29\20const +8003:std::bad_optional_access::what\28\29\20const +8004:std::bad_array_new_length::what\28\29\20const +8005:std::bad_alloc::what\28\29\20const +8006:std::__2::time_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20tm\20const*\2c\20char\2c\20char\29\20const +8007:std::__2::time_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20tm\20const*\2c\20char\2c\20char\29\20const +8008:std::__2::time_get>>::do_get_year\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8009:std::__2::time_get>>::do_get_weekday\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8010:std::__2::time_get>>::do_get_time\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8011:std::__2::time_get>>::do_get_monthname\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8012:std::__2::time_get>>::do_get_date\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8013:std::__2::time_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\2c\20char\29\20const +8014:std::__2::time_get>>::do_get_year\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8015:std::__2::time_get>>::do_get_weekday\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8016:std::__2::time_get>>::do_get_time\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8017:std::__2::time_get>>::do_get_monthname\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8018:std::__2::time_get>>::do_get_date\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\29\20const +8019:std::__2::time_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20tm*\2c\20char\2c\20char\29\20const +8020:std::__2::numpunct::~numpunct\28\29 +8021:std::__2::numpunct::do_truename\28\29\20const +8022:std::__2::numpunct::do_grouping\28\29\20const +8023:std::__2::numpunct::do_falsename\28\29\20const +8024:std::__2::numpunct::~numpunct\28\29 +8025:std::__2::numpunct::do_truename\28\29\20const +8026:std::__2::numpunct::do_thousands_sep\28\29\20const +8027:std::__2::numpunct::do_grouping\28\29\20const +8028:std::__2::numpunct::do_falsename\28\29\20const +8029:std::__2::numpunct::do_decimal_point\28\29\20const +8030:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20void\20const*\29\20const +8031:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\29\20const +8032:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\20long\29\20const +8033:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +8034:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +8035:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +8036:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20double\29\20const +8037:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20bool\29\20const +8038:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20void\20const*\29\20const +8039:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\29\20const +8040:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\20long\29\20const +8041:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +8042:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +8043:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +8044:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20double\29\20const +8045:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20bool\29\20const +8046:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20void*&\29\20const +8047:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20short&\29\20const +8048:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20long\20long&\29\20const +8049:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20long&\29\20const +8050:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +8051:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long&\29\20const +8052:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20float&\29\20const +8053:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20double&\29\20const +8054:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20bool&\29\20const +8055:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20void*&\29\20const +8056:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20short&\29\20const +8057:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20unsigned\20long\20long&\29\20const +8058:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20long&\29\20const +8059:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +8060:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long&\29\20const +8061:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20float&\29\20const +8062:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20double&\29\20const +8063:std::__2::num_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20bool&\29\20const +8064:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +8065:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +8066:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +8067:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +8068:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\29\20const +8069:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +8070:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20std::__2::basic_string\2c\20std::__2::allocator>&\29\20const +8071:std::__2::money_get>>::do_get\28std::__2::istreambuf_iterator>\2c\20std::__2::istreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20unsigned\20int&\2c\20long\20double&\29\20const +8072:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +8073:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +8074:std::__2::locale::id::__init\28\29 +8075:std::__2::locale::__imp::~__imp\28\29 +8076:std::__2::ios_base::~ios_base\28\29.1 +8077:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +8078:std::__2::ctype::do_toupper\28wchar_t\29\20const +8079:std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +8080:std::__2::ctype::do_tolower\28wchar_t\29\20const +8081:std::__2::ctype::do_tolower\28wchar_t*\2c\20wchar_t\20const*\29\20const +8082:std::__2::ctype::do_scan_not\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8083:std::__2::ctype::do_scan_is\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8084:std::__2::ctype::do_narrow\28wchar_t\2c\20char\29\20const +8085:std::__2::ctype::do_narrow\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20char\2c\20char*\29\20const +8086:std::__2::ctype::do_is\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20unsigned\20long*\29\20const +8087:std::__2::ctype::do_is\28unsigned\20long\2c\20wchar_t\29\20const +8088:std::__2::ctype::~ctype\28\29 +8089:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +8090:std::__2::ctype::do_toupper\28char\29\20const +8091:std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +8092:std::__2::ctype::do_tolower\28char\29\20const +8093:std::__2::ctype::do_tolower\28char*\2c\20char\20const*\29\20const +8094:std::__2::ctype::do_narrow\28char\2c\20char\29\20const +8095:std::__2::ctype::do_narrow\28char\20const*\2c\20char\20const*\2c\20char\2c\20char*\29\20const +8096:std::__2::collate::do_transform\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8097:std::__2::collate::do_hash\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8098:std::__2::collate::do_compare\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8099:std::__2::collate::do_transform\28char\20const*\2c\20char\20const*\29\20const +8100:std::__2::collate::do_hash\28char\20const*\2c\20char\20const*\29\20const +8101:std::__2::collate::do_compare\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +8102:std::__2::codecvt::~codecvt\28\29 +8103:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +8104:std::__2::codecvt::do_out\28__mbstate_t&\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*&\2c\20char*\2c\20char*\2c\20char*&\29\20const +8105:std::__2::codecvt::do_max_length\28\29\20const +8106:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +8107:std::__2::codecvt::do_in\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*&\2c\20wchar_t*\2c\20wchar_t*\2c\20wchar_t*&\29\20const +8108:std::__2::codecvt::do_encoding\28\29\20const +8109:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +8110:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29.1 +8111:std::__2::basic_stringbuf\2c\20std::__2::allocator>::underflow\28\29 +8112:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +8113:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +8114:std::__2::basic_stringbuf\2c\20std::__2::allocator>::pbackfail\28int\29 +8115:std::__2::basic_stringbuf\2c\20std::__2::allocator>::overflow\28int\29 +8116:std::__2::basic_streambuf>::~basic_streambuf\28\29.1 +8117:std::__2::basic_streambuf>::xsputn\28char\20const*\2c\20long\29 +8118:std::__2::basic_streambuf>::xsgetn\28char*\2c\20long\29 +8119:std::__2::basic_streambuf>::uflow\28\29 +8120:std::__2::basic_streambuf>::setbuf\28char*\2c\20long\29 +8121:std::__2::basic_streambuf>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +8122:std::__2::basic_streambuf>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +8123:std::__2::bad_function_call::what\28\29\20const +8124:std::__2::__time_get_c_storage::__x\28\29\20const +8125:std::__2::__time_get_c_storage::__weeks\28\29\20const +8126:std::__2::__time_get_c_storage::__r\28\29\20const +8127:std::__2::__time_get_c_storage::__months\28\29\20const +8128:std::__2::__time_get_c_storage::__c\28\29\20const +8129:std::__2::__time_get_c_storage::__am_pm\28\29\20const +8130:std::__2::__time_get_c_storage::__X\28\29\20const +8131:std::__2::__time_get_c_storage::__x\28\29\20const +8132:std::__2::__time_get_c_storage::__weeks\28\29\20const +8133:std::__2::__time_get_c_storage::__r\28\29\20const +8134:std::__2::__time_get_c_storage::__months\28\29\20const +8135:std::__2::__time_get_c_storage::__c\28\29\20const +8136:std::__2::__time_get_c_storage::__am_pm\28\29\20const +8137:std::__2::__time_get_c_storage::__X\28\29\20const +8138:std::__2::__shared_ptr_pointer<_IO_FILE*\2c\20void\20\28*\29\28_IO_FILE*\29\2c\20std::__2::allocator<_IO_FILE>>::__on_zero_shared\28\29 +8139:std::__2::__shared_ptr_pointer\2c\20std::__2::allocator>::__on_zero_shared\28\29 +8140:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8141:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8142:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8143:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8144:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8145:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8146:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8147:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8148:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8149:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8150:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8151:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8152:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8153:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8154:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8155:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8156:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8157:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8158:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8159:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8160:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8161:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8162:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8163:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8164:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8165:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8166:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8167:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8168:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::operator\28\29\28skia::textlayout::Cluster\20const*&&\2c\20unsigned\20long&&\2c\20bool&&\29 +8169:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +8170:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +8171:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::operator\28\29\28skia::textlayout::Cluster\20const*&&\2c\20unsigned\20long&&\2c\20bool&&\29 +8172:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +8173:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +8174:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8175:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8176:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8177:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8178:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8179:std::__2::__function::__func\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8180:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8181:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8182:std::__2::__function::__func>&\29::$_0\2c\20std::__2::allocator>&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8183:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8184:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8185:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8186:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8187:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8188:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8189:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8190:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8191:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8192:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8193:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8194:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8195:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8196:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8197:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8198:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8199:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8200:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8201:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8202:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8203:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8204:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8205:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8206:std::__2::__function::__func\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8207:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*&&\2c\20float&&\2c\20skia::textlayout::SkRange&&\2c\20float*&&\29 +8208:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28std::__2::__function::__base\2c\20float*\29>*\29\20const +8209:std::__2::__function::__func\20const&\29::$_0\2c\20std::__2::allocator\20const&\29::$_0>\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8210:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +8211:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +8212:std::__2::__function::__func\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\2c\20std::__2::allocator\20const&\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>::__clone\28\29\20const +8213:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20skia::textlayout::SkRange&&\2c\20float&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\2c\20SkPoint&&\2c\20SkPoint&&\2c\20skia::textlayout::InternalLineMetrics&&\2c\20bool&&\29 +8214:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>*\29\20const +8215:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20skia::textlayout::SkRange\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPoint\2c\20SkPoint\2c\20skia::textlayout::InternalLineMetrics\2c\20bool\29>::__clone\28\29\20const +8216:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::operator\28\29\28skia::textlayout::Cluster*&&\29 +8217:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28std::__2::__function::__base*\29\20const +8218:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28\29\20const +8219:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +8220:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28\29\20const +8221:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::operator\28\29\28skia::textlayout::SkRange&&\2c\20SkSpan&&\2c\20float&\2c\20unsigned\20long&&\2c\20unsigned\20char&&\29 +8222:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28std::__2::__function::__base\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>*\29\20const +8223:std::__2::__function::__func\2c\20float\20\28skia::textlayout::SkRange\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29>::__clone\28\29\20const +8224:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::operator\28\29\28skia::textlayout::Block&&\2c\20skia_private::TArray&&\29 +8225:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::__clone\28std::__2::__function::__base\29>*\29\20const +8226:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29>\2c\20void\20\28skia::textlayout::Block\2c\20skia_private::TArray\29>::__clone\28\29\20const +8227:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::operator\28\29\28sk_sp&&\29 +8228:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::__clone\28std::__2::__function::__base\29>*\29\20const +8229:std::__2::__function::__func\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29\2c\20std::__2::allocator\2c\20SkSpan\2c\20float&\2c\20unsigned\20long\2c\20unsigned\20char\29\20const::'lambda'\28skia::textlayout::Block\2c\20skia_private::TArray\29::operator\28\29\28skia::textlayout::Block\2c\20skia_private::TArray\29\20const::'lambda'\28sk_sp\29>\2c\20skia::textlayout::OneLineShaper::Resolved\20\28sk_sp\29>::__clone\28\29\20const +8230:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::operator\28\29\28skia::textlayout::SkRange&&\29 +8231:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28std::__2::__function::__base\29>*\29\20const +8232:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28\29\20const +8233:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::operator\28\29\28sktext::gpu::AtlasSubRun\20const*&&\2c\20SkPoint&&\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20sktext::gpu::RendererData&&\29 +8234:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28std::__2::__function::__base\2c\20sktext::gpu::RendererData\29>*\29\20const +8235:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28\29\20const +8236:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29.1 +8237:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::operator\28\29\28void*&&\2c\20void\20const*&&\29 +8238:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy_deallocate\28\29 +8239:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy\28\29 +8240:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +8241:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28\29\20const +8242:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +8243:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8244:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +8245:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +8246:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8247:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +8248:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +8249:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +8250:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +8251:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +8252:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +8253:std::__2::__function::__func>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +8254:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +8255:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +8256:std::__2::__function::__func>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0\2c\20std::__2::allocator>\2c\20bool\2c\20GrProcessorSet::Analysis\20const&\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29::$_0>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +8257:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::operator\28\29\28sktext::gpu::AtlasSubRun\20const*&&\2c\20SkPoint&&\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20sktext::gpu::RendererData&&\29 +8258:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28std::__2::__function::__base\2c\20sktext::gpu::RendererData\29>*\29\20const +8259:std::__2::__function::__func\2c\20void\20\28sktext::gpu::AtlasSubRun\20const*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20sktext::gpu::RendererData\29>::__clone\28\29\20const +8260:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::operator\28\29\28sktext::gpu::GlyphVector*&&\2c\20int&&\2c\20int&&\2c\20skgpu::MaskFormat&&\2c\20int&&\29 +8261:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::__clone\28std::__2::__function::__base\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>*\29\20const +8262:std::__2::__function::__func\2c\20std::__2::tuple\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>::__clone\28\29\20const +8263:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::operator\28\29\28GrSurfaceProxy\20const*&&\29 +8264:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +8265:std::__2::__function::__func>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0\2c\20std::__2::allocator>\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\29::$_0>\2c\20bool\20\28GrSurfaceProxy\20const*\29>::__clone\28\29\20const +8266:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +8267:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +8268:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +8269:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +8270:std::__2::__function::__func\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrOp\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +8271:std::__2::__function::__func\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +8272:std::__2::__function::__func\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\2c\20std::__2::allocator\28GrFragmentProcessor\20const*\2c\20GrSurfaceProxy\20const*\29::'lambda'\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +8273:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +8274:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8275:std::__2::__function::__func<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::render_sw_mask\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20skgpu::ganesh::ClipStack::Element\20const**\2c\20int\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +8276:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::operator\28\29\28\29 +8277:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8278:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_1>\2c\20void\20\28\29>::__clone\28\29\20const +8279:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8280:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +8281:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8282:std::__2::__function::__func<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::colrv1_traverse_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +8283:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +8284:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8285:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +8286:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +8287:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8288:std::__2::__function::__func<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +8289:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +8290:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8291:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::MeshGP\28sk_sp\2c\20sk_sp\2c\20SkMatrix\20const&\2c\20std::__2::optional>\20const&\2c\20bool\2c\20sk_sp\2c\20SkSpan>>\29::'lambda'\28GrTextureEffect\20const&\29>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +8292:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +8293:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +8294:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +8295:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +8296:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +8297:std::__2::__function::__func<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\2c\20std::__2::allocator<\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29::'lambda'\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +8298:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29.1 +8299:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +8300:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy_deallocate\28\29 +8301:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy\28\29 +8302:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8303:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +8304:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +8305:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +8306:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +8307:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::operator\28\29\28unsigned\20long&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\2c\20unsigned\20long&&\29 +8308:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +8309:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +8310:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +8311:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +8312:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::operator\28\29\28SkVertices\20const*&&\2c\20SkBlendMode&&\2c\20SkPaint\20const&\2c\20float&&\2c\20float&&\2c\20bool&&\29 +8313:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +8314:std::__2::__function::__func\2c\20void\20\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29>::__clone\28\29\20const +8315:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::operator\28\29\28SkIRect\20const&\29 +8316:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8317:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +8318:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +8319:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8320:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +8321:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +8322:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8323:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8324:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +8325:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8326:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +8327:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +8328:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8329:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8330:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +8331:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8332:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +8333:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +8334:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8335:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8336:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::operator\28\29\28GrTextureProxy*&&\2c\20SkIRect&&\2c\20GrColorType&&\2c\20void\20const*&&\2c\20unsigned\20long&&\29 +8337:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::__clone\28std::__2::__function::__base*\29\20const +8338:std::__2::__function::__func&\29>&\2c\20bool\29::$_0\2c\20std::__2::allocator&\29>&\2c\20bool\29::$_0>\2c\20bool\20\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29>::__clone\28\29\20const +8339:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::operator\28\29\28GrBackendTexture&&\29 +8340:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28\29\20const +8341:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +8342:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +8343:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +8344:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +8345:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +8346:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +8347:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +8348:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8349:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +8350:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +8351:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8352:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +8353:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +8354:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8355:std::__2::__function::__func\20const&\29\20const::$_0\2c\20std::__2::allocator\20const&\29\20const::$_0>\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +8356:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8357:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8358:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8359:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +8360:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +8361:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +8362:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +8363:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +8364:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +8365:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +8366:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +8367:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +8368:stackSave +8369:stackRestore +8370:stackAlloc +8371:srgb_to_hwb\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +8372:srcover_p\28unsigned\20char\2c\20unsigned\20char\29 +8373:sn_write +8374:sktext::gpu::post_purge_blob_message\28unsigned\20int\2c\20unsigned\20int\29 +8375:sktext::gpu::TextBlob::~TextBlob\28\29.1 +8376:sktext::gpu::SlugImpl::~SlugImpl\28\29.1 +8377:sktext::gpu::SlugImpl::sourceBounds\28\29\20const +8378:sktext::gpu::SlugImpl::sourceBoundsWithOrigin\28\29\20const +8379:sktext::gpu::SlugImpl::doFlatten\28SkWriteBuffer&\29\20const +8380:sktext::gpu::SDFMaskFilterImpl::getTypeName\28\29\20const +8381:sktext::gpu::SDFMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +8382:sktext::gpu::SDFMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +8383:skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +8384:skif::\28anonymous\20namespace\29::RasterBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +8385:skif::\28anonymous\20namespace\29::RasterBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +8386:skif::\28anonymous\20namespace\29::RasterBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +8387:skif::\28anonymous\20namespace\29::GaneshBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +8388:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +8389:skif::\28anonymous\20namespace\29::GaneshBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +8390:skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +8391:skia_png_zfree +8392:skia_png_zalloc +8393:skia_png_set_read_fn +8394:skia_png_set_expand_gray_1_2_4_to_8 +8395:skia_png_read_start_row +8396:skia_png_read_finish_row +8397:skia_png_handle_zTXt +8398:skia_png_handle_unknown +8399:skia_png_handle_tRNS +8400:skia_png_handle_tIME +8401:skia_png_handle_tEXt +8402:skia_png_handle_sRGB +8403:skia_png_handle_sPLT +8404:skia_png_handle_sCAL +8405:skia_png_handle_sBIT +8406:skia_png_handle_pHYs +8407:skia_png_handle_pCAL +8408:skia_png_handle_oFFs +8409:skia_png_handle_iTXt +8410:skia_png_handle_iCCP +8411:skia_png_handle_hIST +8412:skia_png_handle_gAMA +8413:skia_png_handle_cHRM +8414:skia_png_handle_bKGD +8415:skia_png_handle_PLTE +8416:skia_png_handle_IHDR +8417:skia_png_handle_IEND +8418:skia_png_get_IHDR +8419:skia_png_do_read_transformations +8420:skia_png_destroy_read_struct +8421:skia_png_default_read_data +8422:skia_png_create_png_struct +8423:skia_png_combine_row +8424:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29.1 +8425:skia::textlayout::TypefaceFontStyleSet::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +8426:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29.1 +8427:skia::textlayout::TypefaceFontProvider::onMatchFamily\28char\20const*\29\20const +8428:skia::textlayout::TypefaceFontProvider::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +8429:skia::textlayout::TypefaceFontProvider::onGetFamilyName\28int\2c\20SkString*\29\20const +8430:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29.1 +8431:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8432:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8433:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29.1 +8434:skia::textlayout::ParagraphImpl::visit\28std::__2::function\20const&\29 +8435:skia::textlayout::ParagraphImpl::updateTextAlign\28skia::textlayout::TextAlign\29 +8436:skia::textlayout::ParagraphImpl::updateForegroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +8437:skia::textlayout::ParagraphImpl::updateFontSize\28unsigned\20long\2c\20unsigned\20long\2c\20float\29 +8438:skia::textlayout::ParagraphImpl::updateBackgroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +8439:skia::textlayout::ParagraphImpl::unresolvedGlyphs\28\29 +8440:skia::textlayout::ParagraphImpl::unresolvedCodepoints\28\29 +8441:skia::textlayout::ParagraphImpl::paint\28SkCanvas*\2c\20float\2c\20float\29 +8442:skia::textlayout::ParagraphImpl::markDirty\28\29 +8443:skia::textlayout::ParagraphImpl::lineNumber\28\29 +8444:skia::textlayout::ParagraphImpl::layout\28float\29 +8445:skia::textlayout::ParagraphImpl::getWordBoundary\28unsigned\20int\29 +8446:skia::textlayout::ParagraphImpl::getRectsForRange\28unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +8447:skia::textlayout::ParagraphImpl::getRectsForPlaceholders\28\29 +8448:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29::$_0::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const::'lambda'\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29::operator\28\29\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29\20const::'lambda'\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +8449:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29 +8450:skia::textlayout::ParagraphImpl::getLineNumberAtUTF16Offset\28unsigned\20long\29 +8451:skia::textlayout::ParagraphImpl::getLineMetrics\28std::__2::vector>&\29 +8452:skia::textlayout::ParagraphImpl::getLineMetricsAt\28int\2c\20skia::textlayout::LineMetrics*\29\20const +8453:skia::textlayout::ParagraphImpl::getFonts\28\29\20const +8454:skia::textlayout::ParagraphImpl::getFontAt\28unsigned\20long\29\20const +8455:skia::textlayout::ParagraphImpl::getFontAtUTF16Offset\28unsigned\20long\29 +8456:skia::textlayout::ParagraphImpl::getClosestUTF16GlyphInfoAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +8457:skia::textlayout::ParagraphImpl::getClosestGlyphClusterAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +8458:skia::textlayout::ParagraphImpl::getActualTextRange\28int\2c\20bool\29\20const +8459:skia::textlayout::ParagraphImpl::extendedVisit\28std::__2::function\20const&\29 +8460:skia::textlayout::ParagraphImpl::containsEmoji\28SkTextBlob*\29 +8461:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29::$_0::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +8462:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29 +8463:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29.1 +8464:skia::textlayout::ParagraphBuilderImpl::setWordsUtf8\28std::__2::vector>\29 +8465:skia::textlayout::ParagraphBuilderImpl::setWordsUtf16\28std::__2::vector>\29 +8466:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf8\28std::__2::vector>\29 +8467:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf16\28std::__2::vector>\29 +8468:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf8\28std::__2::vector>\29 +8469:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf16\28std::__2::vector>\29 +8470:skia::textlayout::ParagraphBuilderImpl::pushStyle\28skia::textlayout::TextStyle\20const&\29 +8471:skia::textlayout::ParagraphBuilderImpl::pop\28\29 +8472:skia::textlayout::ParagraphBuilderImpl::peekStyle\28\29 +8473:skia::textlayout::ParagraphBuilderImpl::getText\28\29 +8474:skia::textlayout::ParagraphBuilderImpl::getParagraphStyle\28\29\20const +8475:skia::textlayout::ParagraphBuilderImpl::addText\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +8476:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\2c\20unsigned\20long\29 +8477:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\29 +8478:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\29 +8479:skia::textlayout::ParagraphBuilderImpl::SetUnicode\28std::__2::unique_ptr>\29 +8480:skia::textlayout::ParagraphBuilderImpl::Reset\28\29 +8481:skia::textlayout::ParagraphBuilderImpl::Build\28\29 +8482:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29.1 +8483:skia::textlayout::OneLineShaper::~OneLineShaper\28\29.1 +8484:skia::textlayout::OneLineShaper::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8485:skia::textlayout::OneLineShaper::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8486:skia::textlayout::LangIterator::~LangIterator\28\29.1 +8487:skia::textlayout::LangIterator::~LangIterator\28\29 +8488:skia::textlayout::LangIterator::endOfCurrentRun\28\29\20const +8489:skia::textlayout::LangIterator::currentLanguage\28\29\20const +8490:skia::textlayout::LangIterator::consume\28\29 +8491:skia::textlayout::LangIterator::atEnd\28\29\20const +8492:skia::textlayout::FontCollection::~FontCollection\28\29.1 +8493:skia::textlayout::CanvasParagraphPainter::translate\28float\2c\20float\29 +8494:skia::textlayout::CanvasParagraphPainter::save\28\29 +8495:skia::textlayout::CanvasParagraphPainter::restore\28\29 +8496:skia::textlayout::CanvasParagraphPainter::drawTextShadow\28sk_sp\20const&\2c\20float\2c\20float\2c\20unsigned\20int\2c\20float\29 +8497:skia::textlayout::CanvasParagraphPainter::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20std::__2::variant\20const&\29 +8498:skia::textlayout::CanvasParagraphPainter::drawRect\28SkRect\20const&\2c\20std::__2::variant\20const&\29 +8499:skia::textlayout::CanvasParagraphPainter::drawPath\28SkPath\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +8500:skia::textlayout::CanvasParagraphPainter::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +8501:skia::textlayout::CanvasParagraphPainter::drawFilledRect\28SkRect\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +8502:skia::textlayout::CanvasParagraphPainter::clipRect\28SkRect\20const&\29 +8503:skgpu::tess::FixedCountWedges::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8504:skgpu::tess::FixedCountWedges::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8505:skgpu::tess::FixedCountStrokes::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8506:skgpu::tess::FixedCountCurves::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8507:skgpu::ganesh::texture_proxy_view_from_planes\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20skgpu::Budgeted\29::$_0::__invoke\28void*\2c\20void*\29 +8508:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29.1 +8509:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::visitProxies\28std::__2::function\20const&\29\20const +8510:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8511:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8512:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8513:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::name\28\29\20const +8514:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::fixedFunctionFlags\28\29\20const +8515:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8516:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::name\28\29\20const +8517:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8518:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8519:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8520:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8521:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29.1 +8522:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::name\28\29\20const +8523:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8524:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8525:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29.1 +8526:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +8527:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8528:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8529:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8530:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8531:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::name\28\29\20const +8532:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::fixedFunctionFlags\28\29\20const +8533:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8534:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29.1 +8535:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +8536:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8537:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8538:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8539:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8540:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::name\28\29\20const +8541:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8542:skgpu::ganesh::TriangulatingPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8543:skgpu::ganesh::TriangulatingPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8544:skgpu::ganesh::TriangulatingPathRenderer::name\28\29\20const +8545:skgpu::ganesh::TessellationPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +8546:skgpu::ganesh::TessellationPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +8547:skgpu::ganesh::TessellationPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8548:skgpu::ganesh::TessellationPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8549:skgpu::ganesh::TessellationPathRenderer::name\28\29\20const +8550:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29 +8551:skgpu::ganesh::SurfaceDrawContext::willReplaceOpsTask\28skgpu::ganesh::OpsTask*\2c\20skgpu::ganesh::OpsTask*\29 +8552:skgpu::ganesh::SurfaceDrawContext::canDiscardPreviousOpsOnFullClear\28\29\20const +8553:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29.1 +8554:skgpu::ganesh::SurfaceContext::asyncRescaleAndReadPixelsYUV420\28GrDirectContext*\2c\20SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::$_0::__invoke\28void*\29 +8555:skgpu::ganesh::SurfaceContext::asyncReadPixels\28GrDirectContext*\2c\20SkIRect\20const&\2c\20SkColorType\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::$_0::__invoke\28void*\29 +8556:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29.1 +8557:skgpu::ganesh::StrokeTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +8558:skgpu::ganesh::StrokeTessellateOp::usesStencil\28\29\20const +8559:skgpu::ganesh::StrokeTessellateOp::onPrepare\28GrOpFlushState*\29 +8560:skgpu::ganesh::StrokeTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8561:skgpu::ganesh::StrokeTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8562:skgpu::ganesh::StrokeTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8563:skgpu::ganesh::StrokeTessellateOp::name\28\29\20const +8564:skgpu::ganesh::StrokeTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8565:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29.1 +8566:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +8567:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::programInfo\28\29 +8568:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8569:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8570:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8571:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::name\28\29\20const +8572:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8573:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29.1 +8574:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +8575:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::programInfo\28\29 +8576:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8577:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8578:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8579:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8580:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::name\28\29\20const +8581:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8582:skgpu::ganesh::StencilClip::~StencilClip\28\29.1 +8583:skgpu::ganesh::StencilClip::~StencilClip\28\29 +8584:skgpu::ganesh::StencilClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +8585:skgpu::ganesh::StencilClip::getConservativeBounds\28\29\20const +8586:skgpu::ganesh::StencilClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +8587:skgpu::ganesh::SoftwarePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8588:skgpu::ganesh::SoftwarePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8589:skgpu::ganesh::SoftwarePathRenderer::name\28\29\20const +8590:skgpu::ganesh::SmallPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8591:skgpu::ganesh::SmallPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8592:skgpu::ganesh::SmallPathRenderer::name\28\29\20const +8593:skgpu::ganesh::SmallPathAtlasMgr::postFlush\28skgpu::AtlasToken\29 +8594:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29.1 +8595:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8596:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::programInfo\28\29 +8597:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8598:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8599:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8600:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8601:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::name\28\29\20const +8602:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8603:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_quad_generic\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8604:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8605:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8606:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_cov_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8607:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_cov_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8608:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color_uv_strict\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8609:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color_uv\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8610:skgpu::ganesh::QuadPerEdgeAA::\28anonymous\20namespace\29::write_2d_color\28skgpu::VertexWriter*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20GrQuad\20const*\2c\20GrQuad\20const*\2c\20float\20const*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +8611:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29.1 +8612:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::onTextureSampler\28int\29\20const +8613:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::name\28\29\20const +8614:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8615:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8616:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8617:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8618:skgpu::ganesh::PathWedgeTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +8619:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29.1 +8620:skgpu::ganesh::PathTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +8621:skgpu::ganesh::PathTessellateOp::usesStencil\28\29\20const +8622:skgpu::ganesh::PathTessellateOp::onPrepare\28GrOpFlushState*\29 +8623:skgpu::ganesh::PathTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8624:skgpu::ganesh::PathTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8625:skgpu::ganesh::PathTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8626:skgpu::ganesh::PathTessellateOp::name\28\29\20const +8627:skgpu::ganesh::PathTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8628:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29.1 +8629:skgpu::ganesh::PathStencilCoverOp::visitProxies\28std::__2::function\20const&\29\20const +8630:skgpu::ganesh::PathStencilCoverOp::onPrepare\28GrOpFlushState*\29 +8631:skgpu::ganesh::PathStencilCoverOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8632:skgpu::ganesh::PathStencilCoverOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8633:skgpu::ganesh::PathStencilCoverOp::name\28\29\20const +8634:skgpu::ganesh::PathStencilCoverOp::fixedFunctionFlags\28\29\20const +8635:skgpu::ganesh::PathStencilCoverOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8636:skgpu::ganesh::PathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +8637:skgpu::ganesh::PathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +8638:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29.1 +8639:skgpu::ganesh::PathInnerTriangulateOp::visitProxies\28std::__2::function\20const&\29\20const +8640:skgpu::ganesh::PathInnerTriangulateOp::onPrepare\28GrOpFlushState*\29 +8641:skgpu::ganesh::PathInnerTriangulateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8642:skgpu::ganesh::PathInnerTriangulateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8643:skgpu::ganesh::PathInnerTriangulateOp::name\28\29\20const +8644:skgpu::ganesh::PathInnerTriangulateOp::fixedFunctionFlags\28\29\20const +8645:skgpu::ganesh::PathInnerTriangulateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8646:skgpu::ganesh::PathCurveTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +8647:skgpu::ganesh::OpsTask::~OpsTask\28\29.1 +8648:skgpu::ganesh::OpsTask::onPrepare\28GrOpFlushState*\29 +8649:skgpu::ganesh::OpsTask::onPrePrepare\28GrRecordingContext*\29 +8650:skgpu::ganesh::OpsTask::onMakeSkippable\28\29 +8651:skgpu::ganesh::OpsTask::onIsUsed\28GrSurfaceProxy*\29\20const +8652:skgpu::ganesh::OpsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +8653:skgpu::ganesh::OpsTask::endFlush\28GrDrawingManager*\29 +8654:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29.1 +8655:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::visitProxies\28std::__2::function\20const&\29\20const +8656:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8657:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8658:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8659:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8660:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::name\28\29\20const +8661:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8662:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29.1 +8663:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::onTextureSampler\28int\29\20const +8664:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::name\28\29\20const +8665:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8666:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8667:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8668:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8669:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29.1 +8670:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8671:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::programInfo\28\29 +8672:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8673:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8674:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8675:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8676:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::name\28\29\20const +8677:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8678:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::clipToShape\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkClipOp\2c\20SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\29 +8679:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29.1 +8680:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29 +8681:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::name\28\29\20const +8682:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8683:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8684:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8685:skgpu::ganesh::DrawableOp::~DrawableOp\28\29.1 +8686:skgpu::ganesh::DrawableOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8687:skgpu::ganesh::DrawableOp::name\28\29\20const +8688:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29.1 +8689:skgpu::ganesh::DrawAtlasPathOp::visitProxies\28std::__2::function\20const&\29\20const +8690:skgpu::ganesh::DrawAtlasPathOp::onPrepare\28GrOpFlushState*\29 +8691:skgpu::ganesh::DrawAtlasPathOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8692:skgpu::ganesh::DrawAtlasPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8693:skgpu::ganesh::DrawAtlasPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8694:skgpu::ganesh::DrawAtlasPathOp::name\28\29\20const +8695:skgpu::ganesh::DrawAtlasPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8696:skgpu::ganesh::Device::~Device\28\29.1 +8697:skgpu::ganesh::Device::strikeDeviceInfo\28\29\20const +8698:skgpu::ganesh::Device::snapSpecial\28SkIRect\20const&\2c\20bool\29 +8699:skgpu::ganesh::Device::snapSpecialScaled\28SkIRect\20const&\2c\20SkISize\20const&\29 +8700:skgpu::ganesh::Device::replaceClip\28SkIRect\20const&\29 +8701:skgpu::ganesh::Device::recordingContext\28\29\20const +8702:skgpu::ganesh::Device::pushClipStack\28\29 +8703:skgpu::ganesh::Device::popClipStack\28\29 +8704:skgpu::ganesh::Device::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8705:skgpu::ganesh::Device::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8706:skgpu::ganesh::Device::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +8707:skgpu::ganesh::Device::onClipShader\28sk_sp\29 +8708:skgpu::ganesh::Device::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +8709:skgpu::ganesh::Device::makeSpecial\28SkImage\20const*\29 +8710:skgpu::ganesh::Device::isClipWideOpen\28\29\20const +8711:skgpu::ganesh::Device::isClipRect\28\29\20const +8712:skgpu::ganesh::Device::isClipEmpty\28\29\20const +8713:skgpu::ganesh::Device::isClipAntiAliased\28\29\20const +8714:skgpu::ganesh::Device::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +8715:skgpu::ganesh::Device::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +8716:skgpu::ganesh::Device::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +8717:skgpu::ganesh::Device::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +8718:skgpu::ganesh::Device::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +8719:skgpu::ganesh::Device::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +8720:skgpu::ganesh::Device::drawPaint\28SkPaint\20const&\29 +8721:skgpu::ganesh::Device::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +8722:skgpu::ganesh::Device::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +8723:skgpu::ganesh::Device::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +8724:skgpu::ganesh::Device::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +8725:skgpu::ganesh::Device::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +8726:skgpu::ganesh::Device::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +8727:skgpu::ganesh::Device::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +8728:skgpu::ganesh::Device::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +8729:skgpu::ganesh::Device::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +8730:skgpu::ganesh::Device::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +8731:skgpu::ganesh::Device::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +8732:skgpu::ganesh::Device::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +8733:skgpu::ganesh::Device::devClipBounds\28\29\20const +8734:skgpu::ganesh::Device::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +8735:skgpu::ganesh::Device::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +8736:skgpu::ganesh::Device::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +8737:skgpu::ganesh::Device::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +8738:skgpu::ganesh::Device::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +8739:skgpu::ganesh::Device::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +8740:skgpu::ganesh::Device::android_utils_clipWithStencil\28\29 +8741:skgpu::ganesh::DefaultPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +8742:skgpu::ganesh::DefaultPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +8743:skgpu::ganesh::DefaultPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8744:skgpu::ganesh::DefaultPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8745:skgpu::ganesh::DefaultPathRenderer::name\28\29\20const +8746:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::name\28\29\20const +8747:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8748:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8749:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8750:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::name\28\29\20const +8751:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8752:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8753:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8754:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29.1 +8755:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8756:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::programInfo\28\29 +8757:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8758:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8759:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8760:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8761:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::name\28\29\20const +8762:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::fixedFunctionFlags\28\29\20const +8763:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8764:skgpu::ganesh::DashLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8765:skgpu::ganesh::DashLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8766:skgpu::ganesh::DashLinePathRenderer::name\28\29\20const +8767:skgpu::ganesh::ClipStack::~ClipStack\28\29.1 +8768:skgpu::ganesh::ClipStack::preApply\28SkRect\20const&\2c\20GrAA\29\20const +8769:skgpu::ganesh::ClipStack::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +8770:skgpu::ganesh::ClearOp::~ClearOp\28\29 +8771:skgpu::ganesh::ClearOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8772:skgpu::ganesh::ClearOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8773:skgpu::ganesh::ClearOp::name\28\29\20const +8774:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29.1 +8775:skgpu::ganesh::AtlasTextOp::visitProxies\28std::__2::function\20const&\29\20const +8776:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8777:skgpu::ganesh::AtlasTextOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8778:skgpu::ganesh::AtlasTextOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8779:skgpu::ganesh::AtlasTextOp::name\28\29\20const +8780:skgpu::ganesh::AtlasTextOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8781:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29.1 +8782:skgpu::ganesh::AtlasRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +8783:skgpu::ganesh::AtlasRenderTask::onExecute\28GrOpFlushState*\29 +8784:skgpu::ganesh::AtlasPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8785:skgpu::ganesh::AtlasPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8786:skgpu::ganesh::AtlasPathRenderer::name\28\29\20const +8787:skgpu::ganesh::AALinearizingConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8788:skgpu::ganesh::AALinearizingConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8789:skgpu::ganesh::AALinearizingConvexPathRenderer::name\28\29\20const +8790:skgpu::ganesh::AAHairLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8791:skgpu::ganesh::AAHairLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8792:skgpu::ganesh::AAHairLinePathRenderer::name\28\29\20const +8793:skgpu::ganesh::AAConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8794:skgpu::ganesh::AAConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8795:skgpu::ganesh::AAConvexPathRenderer::name\28\29\20const +8796:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29.1 +8797:skgpu::TAsyncReadResult::rowBytes\28int\29\20const +8798:skgpu::TAsyncReadResult::data\28int\29\20const +8799:skgpu::TAsyncReadResult::count\28\29\20const +8800:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29.1 +8801:skgpu::StringKeyBuilder::appendComment\28char\20const*\29 +8802:skgpu::StringKeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +8803:skgpu::ShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\2c\20bool\29 +8804:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29.1 +8805:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29 +8806:skgpu::RectanizerSkyline::percentFull\28\29\20const +8807:skgpu::RectanizerPow2::reset\28\29 +8808:skgpu::RectanizerPow2::percentFull\28\29\20const +8809:skgpu::RectanizerPow2::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +8810:skgpu::Plot::~Plot\28\29.1 +8811:skgpu::KeyBuilder::~KeyBuilder\28\29 +8812:skgpu::DefaultShaderErrorHandler\28\29::DefaultShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\29 +8813:sk_mmap_releaseproc\28void\20const*\2c\20void*\29 +8814:sk_ft_stream_io\28FT_StreamRec_*\2c\20unsigned\20long\2c\20unsigned\20char*\2c\20unsigned\20long\29 +8815:sk_ft_realloc\28FT_MemoryRec_*\2c\20long\2c\20long\2c\20void*\29 +8816:sk_ft_alloc\28FT_MemoryRec_*\2c\20long\29 +8817:sk_fclose\28_IO_FILE*\29 +8818:skString_getData +8819:skString_free +8820:skString_allocate +8821:skString16_getData +8822:skString16_free +8823:skString16_allocate +8824:skData_dispose +8825:skData_create +8826:shader_createSweepGradient +8827:shader_createRuntimeEffectShader +8828:shader_createRadialGradient +8829:shader_createLinearGradient +8830:shader_createFromImage +8831:shader_createConicalGradient +8832:sfnt_table_info +8833:sfnt_stream_close +8834:sfnt_load_face +8835:sfnt_is_postscript +8836:sfnt_is_alphanumeric +8837:sfnt_init_face +8838:sfnt_get_ps_name +8839:sfnt_get_name_index +8840:sfnt_get_interface +8841:sfnt_get_glyph_name +8842:sfnt_get_charset_id +8843:sfnt_done_face +8844:setup_syllables_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8845:setup_syllables_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8846:setup_syllables_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8847:setup_syllables_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8848:setup_masks_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8849:setup_masks_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8850:setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8851:setup_masks_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8852:setup_masks_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8853:setup_masks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8854:runtimeEffect_getUniformSize +8855:runtimeEffect_create +8856:reverse_hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8857:reverse_hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8858:reorder_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8859:reorder_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8860:reorder_marks_hebrew\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +8861:reorder_marks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +8862:reorder_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8863:release_data\28void*\2c\20void*\29 +8864:rect_memcpy\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\2c\20SkColorSpaceXformSteps\20const&\29 +8865:record_stch\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8866:record_rphf_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8867:record_pref_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8868:receive_notification +8869:read_data_from_FT_Stream +8870:pthread_self +8871:psnames_get_service +8872:pshinter_get_t2_funcs +8873:pshinter_get_t1_funcs +8874:pshinter_get_globals_funcs +8875:psh_globals_new +8876:psh_globals_destroy +8877:psaux_get_glyph_name +8878:ps_table_release +8879:ps_table_new +8880:ps_table_done +8881:ps_table_add +8882:ps_property_set +8883:ps_property_get +8884:ps_parser_to_int +8885:ps_parser_to_fixed_array +8886:ps_parser_to_fixed +8887:ps_parser_to_coord_array +8888:ps_parser_to_bytes +8889:ps_parser_load_field_table +8890:ps_parser_init +8891:ps_hints_t2mask +8892:ps_hints_t2counter +8893:ps_hints_t1stem3 +8894:ps_hints_t1reset +8895:ps_hints_close +8896:ps_hints_apply +8897:ps_hinter_init +8898:ps_hinter_done +8899:ps_get_standard_strings +8900:ps_get_macintosh_name +8901:ps_decoder_init +8902:preprocess_text_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8903:preprocess_text_thai\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8904:preprocess_text_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8905:preprocess_text_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8906:premultiply_data +8907:premul_rgb\28SkRGBA4f<\28SkAlphaType\292>\29 +8908:premul_polar\28SkRGBA4f<\28SkAlphaType\292>\29 +8909:postprocess_glyphs_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8910:portable::xy_to_unit_angle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8911:portable::xy_to_radius\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8912:portable::xy_to_2pt_conical_well_behaved\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8913:portable::xy_to_2pt_conical_strip\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8914:portable::xy_to_2pt_conical_smaller\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8915:portable::xy_to_2pt_conical_greater\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8916:portable::xy_to_2pt_conical_focal_on_circle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8917:portable::xor_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8918:portable::white_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8919:portable::unpremul_polar\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8920:portable::unpremul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8921:portable::trace_var\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8922:portable::trace_scope\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8923:portable::trace_line\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8924:portable::trace_exit\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8925:portable::trace_enter\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8926:portable::tan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8927:portable::swizzle_copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8928:portable::swizzle_copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8929:portable::swizzle_copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8930:portable::swizzle_copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8931:portable::swizzle_copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8932:portable::swizzle_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8933:portable::swizzle_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8934:portable::swizzle_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8935:portable::swizzle_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8936:portable::swizzle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8937:portable::swap_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8938:portable::swap_rb_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8939:portable::swap_rb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8940:portable::sub_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8941:portable::sub_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8942:portable::sub_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8943:portable::sub_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8944:portable::sub_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8945:portable::sub_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8946:portable::sub_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8947:portable::sub_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8948:portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8949:portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8950:portable::store_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8951:portable::store_src_a\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8952:portable::store_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8953:portable::store_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8954:portable::store_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8955:portable::store_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8956:portable::store_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8957:portable::store_r8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8958:portable::store_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8959:portable::store_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8960:portable::store_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8961:portable::store_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8962:portable::store_device_xy01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8963:portable::store_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8964:portable::store_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8965:portable::store_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8966:portable::store_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8967:portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8968:portable::store_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8969:portable::store_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8970:portable::store_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8971:portable::store_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8972:portable::store_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8973:portable::store_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8974:portable::start_pipeline\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkRasterPipelineStage*\2c\20SkSpan\2c\20unsigned\20char*\29 +8975:portable::stack_rewind\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8976:portable::stack_checkpoint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8977:portable::srcover_rgba_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8978:portable::srcover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8979:portable::srcout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8980:portable::srcin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8981:portable::srcatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8982:portable::sqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8983:portable::splat_4_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8984:portable::splat_3_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8985:portable::splat_2_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8986:portable::softlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8987:portable::smoothstep_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8988:portable::sin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8989:portable::shuffle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8990:portable::set_base_pointer\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8991:portable::seed_shader\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8992:portable::screen\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8993:portable::scale_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8994:portable::scale_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8995:portable::saturation\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8996:portable::rgb_to_hsl\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8997:portable::repeat_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8998:portable::repeat_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8999:portable::repeat_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9000:portable::refract_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9001:portable::reenable_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9002:portable::premul_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9003:portable::premul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9004:portable::pow_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9005:portable::plus_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9006:portable::parametric\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9007:portable::overlay\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9008:portable::negate_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9009:portable::multiply\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9010:portable::mul_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9011:portable::mul_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9012:portable::mul_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9013:portable::mul_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9014:portable::mul_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9015:portable::mul_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9016:portable::mul_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9017:portable::mul_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9018:portable::mul_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9019:portable::mul_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9020:portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9021:portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9022:portable::move_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9023:portable::move_dst_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9024:portable::modulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9025:portable::mod_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9026:portable::mod_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9027:portable::mod_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9028:portable::mod_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9029:portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9030:portable::mix_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9031:portable::mix_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9032:portable::mix_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9033:portable::mix_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9034:portable::mix_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9035:portable::mix_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9036:portable::mix_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9037:portable::mix_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9038:portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9039:portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9040:portable::mirror_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9041:portable::mirror_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9042:portable::mirror_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9043:portable::mipmap_linear_update\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9044:portable::mipmap_linear_init\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9045:portable::mipmap_linear_finish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9046:portable::min_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9047:portable::min_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9048:portable::min_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9049:portable::min_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9050:portable::min_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9051:portable::min_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9052:portable::min_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9053:portable::min_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9054:portable::min_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9055:portable::min_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9056:portable::min_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9057:portable::min_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9058:portable::min_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9059:portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9060:portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9061:portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9062:portable::merge_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9063:portable::merge_inv_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9064:portable::merge_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9065:portable::max_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9066:portable::max_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9067:portable::max_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9068:portable::max_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9069:portable::max_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9070:portable::max_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9071:portable::max_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9072:portable::max_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9073:portable::max_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9074:portable::max_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9075:portable::max_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9076:portable::max_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9077:portable::max_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9078:portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9079:portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9080:portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9081:portable::matrix_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9082:portable::matrix_scale_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9083:portable::matrix_perspective\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9084:portable::matrix_multiply_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9085:portable::matrix_multiply_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9086:portable::matrix_multiply_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9087:portable::matrix_4x5\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9088:portable::matrix_4x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9089:portable::matrix_3x4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9090:portable::matrix_3x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9091:portable::matrix_2x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9092:portable::mask_off_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9093:portable::mask_off_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9094:portable::mask_2pt_conical_nan\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9095:portable::mask_2pt_conical_degenerates\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9096:portable::luminosity\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9097:portable::log_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9098:portable::log2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9099:portable::load_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9100:portable::load_rgf16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9101:portable::load_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9102:portable::load_rg88_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9103:portable::load_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9104:portable::load_rg1616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9105:portable::load_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9106:portable::load_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9107:portable::load_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9108:portable::load_f32_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9109:portable::load_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9110:portable::load_f16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9111:portable::load_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9112:portable::load_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9113:portable::load_af16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9114:portable::load_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9115:portable::load_a8_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9116:portable::load_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9117:portable::load_a16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9118:portable::load_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9119:portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9120:portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9121:portable::load_565_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9122:portable::load_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9123:portable::load_4444_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9124:portable::load_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9125:portable::load_16161616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9126:portable::load_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9127:portable::load_10x6_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9128:portable::load_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9129:portable::load_1010102_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9130:portable::load_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9131:portable::load_1010102_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9132:portable::load_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9133:portable::lighten\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9134:portable::lerp_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9135:portable::lerp_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9136:portable::just_return\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9137:portable::jump\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9138:portable::invsqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9139:portable::invsqrt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9140:portable::invsqrt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9141:portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9142:portable::inverse_mat4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9143:portable::inverse_mat3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9144:portable::inverse_mat2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9145:portable::init_lane_masks\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9146:portable::hue\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9147:portable::hsl_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9148:portable::hardlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9149:portable::gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9150:portable::gauss_a_to_rgba\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9151:portable::gather_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9152:portable::gather_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9153:portable::gather_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9154:portable::gather_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9155:portable::gather_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9156:portable::gather_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9157:portable::gather_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9158:portable::gather_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9159:portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9160:portable::gather_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9161:portable::gather_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9162:portable::gather_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9163:portable::gather_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9164:portable::gather_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9165:portable::gather_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9166:portable::gamma_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9167:portable::force_opaque_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9168:portable::force_opaque\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9169:portable::floor_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9170:portable::floor_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9171:portable::floor_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9172:portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9173:portable::exp_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9174:portable::exp2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9175:portable::exclusion\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9176:portable::exchange_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9177:portable::evenly_spaced_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9178:portable::evenly_spaced_2_stop_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9179:portable::emboss\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9180:portable::dstover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9181:portable::dstout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9182:portable::dstin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9183:portable::dstatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9184:portable::dot_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9185:portable::dot_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9186:portable::dot_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9187:portable::div_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9188:portable::div_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9189:portable::div_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9190:portable::div_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9191:portable::div_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9192:portable::div_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9193:portable::div_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9194:portable::div_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9195:portable::div_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9196:portable::div_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9197:portable::div_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9198:portable::div_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9199:portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9200:portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9201:portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9202:portable::dither\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9203:portable::difference\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9204:portable::decal_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9205:portable::decal_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9206:portable::decal_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9207:portable::darken\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9208:portable::css_oklab_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9209:portable::css_oklab_gamut_map_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9210:portable::css_lab_to_xyz\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9211:portable::css_hwb_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9212:portable::css_hsl_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9213:portable::css_hcl_to_lab\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9214:portable::cos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9215:portable::copy_uniform\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9216:portable::copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9217:portable::copy_slot_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9218:portable::copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9219:portable::copy_immutable_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9220:portable::copy_constant\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9221:portable::copy_4_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9222:portable::copy_4_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9223:portable::copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9224:portable::copy_4_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9225:portable::copy_3_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9226:portable::copy_3_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9227:portable::copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9228:portable::copy_3_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9229:portable::copy_2_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9230:portable::copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9231:portable::continue_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9232:portable::colordodge\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9233:portable::colorburn\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9234:portable::color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9235:portable::cmpne_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9236:portable::cmpne_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9237:portable::cmpne_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9238:portable::cmpne_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9239:portable::cmpne_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9240:portable::cmpne_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9241:portable::cmpne_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9242:portable::cmpne_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9243:portable::cmpne_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9244:portable::cmpne_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9245:portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9246:portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9247:portable::cmplt_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9248:portable::cmplt_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9249:portable::cmplt_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9250:portable::cmplt_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9251:portable::cmplt_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9252:portable::cmplt_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9253:portable::cmplt_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9254:portable::cmplt_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9255:portable::cmplt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9256:portable::cmplt_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9257:portable::cmplt_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9258:portable::cmplt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9259:portable::cmplt_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9260:portable::cmplt_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9261:portable::cmplt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9262:portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9263:portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9264:portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9265:portable::cmple_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9266:portable::cmple_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9267:portable::cmple_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9268:portable::cmple_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9269:portable::cmple_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9270:portable::cmple_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9271:portable::cmple_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9272:portable::cmple_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9273:portable::cmple_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9274:portable::cmple_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9275:portable::cmple_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9276:portable::cmple_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9277:portable::cmple_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9278:portable::cmple_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9279:portable::cmple_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9280:portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9281:portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9282:portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9283:portable::cmpeq_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9284:portable::cmpeq_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9285:portable::cmpeq_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9286:portable::cmpeq_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9287:portable::cmpeq_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9288:portable::cmpeq_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9289:portable::cmpeq_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9290:portable::cmpeq_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9291:portable::cmpeq_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9292:portable::cmpeq_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9293:portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9294:portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9295:portable::clear\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9296:portable::clamp_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9297:portable::clamp_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9298:portable::clamp_gamut\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9299:portable::clamp_01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9300:portable::ceil_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9301:portable::ceil_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9302:portable::ceil_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9303:portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9304:portable::cast_to_uint_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9305:portable::cast_to_uint_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9306:portable::cast_to_uint_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9307:portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9308:portable::cast_to_int_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9309:portable::cast_to_int_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9310:portable::cast_to_int_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9311:portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9312:portable::cast_to_float_from_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9313:portable::cast_to_float_from_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9314:portable::cast_to_float_from_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9315:portable::cast_to_float_from_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9316:portable::cast_to_float_from_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9317:portable::cast_to_float_from_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9318:portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9319:portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9320:portable::case_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9321:portable::callback\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9322:portable::byte_tables\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9323:portable::bt709_luminance_or_luma_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9324:portable::bt709_luminance_or_luma_to_alpha\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9325:portable::branch_if_no_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9326:portable::branch_if_no_active_lanes_eq\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9327:portable::branch_if_any_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9328:portable::branch_if_all_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9329:portable::blit_row_s32a_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9330:portable::black_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9331:portable::bitwise_xor_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9332:portable::bitwise_xor_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9333:portable::bitwise_xor_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9334:portable::bitwise_xor_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9335:portable::bitwise_xor_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9336:portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9337:portable::bitwise_or_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9338:portable::bitwise_or_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9339:portable::bitwise_or_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9340:portable::bitwise_or_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9341:portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9342:portable::bitwise_and_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9343:portable::bitwise_and_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9344:portable::bitwise_and_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9345:portable::bitwise_and_imm_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9346:portable::bitwise_and_imm_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9347:portable::bitwise_and_imm_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9348:portable::bitwise_and_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9349:portable::bitwise_and_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9350:portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9351:portable::bilinear_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9352:portable::bilinear_py\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9353:portable::bilinear_px\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9354:portable::bilinear_ny\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9355:portable::bilinear_nx\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9356:portable::bilerp_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9357:portable::bicubic_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9358:portable::bicubic_p3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9359:portable::bicubic_p3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9360:portable::bicubic_p1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9361:portable::bicubic_p1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9362:portable::bicubic_n3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9363:portable::bicubic_n3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9364:portable::bicubic_n1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9365:portable::bicubic_n1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9366:portable::bicubic_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9367:portable::atan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9368:portable::atan2_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9369:portable::asin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9370:portable::alter_2pt_conical_unswap\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9371:portable::alter_2pt_conical_compensate_focal\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9372:portable::alpha_to_red_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9373:portable::alpha_to_red\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9374:portable::alpha_to_gray_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9375:portable::alpha_to_gray\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9376:portable::add_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9377:portable::add_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9378:portable::add_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9379:portable::add_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9380:portable::add_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9381:portable::add_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9382:portable::add_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9383:portable::add_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9384:portable::add_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9385:portable::add_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9386:portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9387:portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9388:portable::acos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9389:portable::accumulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9390:portable::abs_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9391:portable::abs_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9392:portable::abs_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9393:portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9394:portable::RGBA_to_rgbA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +9395:portable::RGBA_to_bgrA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +9396:portable::RGBA_to_BGRA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +9397:portable::PQish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9398:portable::HLGish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9399:portable::HLGinvish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9400:pop_arg_long_double +9401:png_read_filter_row_up +9402:png_read_filter_row_sub +9403:png_read_filter_row_paeth_multibyte_pixel +9404:png_read_filter_row_paeth_1byte_pixel +9405:png_read_filter_row_avg +9406:picture_getCullRect +9407:pictureRecorder_endRecording +9408:pictureRecorder_dispose +9409:pictureRecorder_create +9410:pictureRecorder_beginRecording +9411:path_transform +9412:path_setFillType +9413:path_reset +9414:path_relativeQuadraticBezierTo +9415:path_relativeMoveTo +9416:path_relativeLineTo +9417:path_relativeCubicTo +9418:path_relativeConicTo +9419:path_relativeArcToRotated +9420:path_moveTo +9421:path_lineTo +9422:path_getFillType +9423:path_getBounds +9424:path_dispose +9425:path_create +9426:path_copy +9427:path_contains +9428:path_conicTo +9429:path_combine +9430:path_close +9431:path_arcToRotated +9432:path_arcToOval +9433:path_addRect +9434:path_addRRect +9435:path_addPolygon +9436:path_addPath +9437:path_addArc +9438:paragraph_layout +9439:paragraph_getWordBoundary +9440:paragraph_getWidth +9441:paragraph_getUnresolvedCodePoints +9442:paragraph_getPositionForOffset +9443:paragraph_getMinIntrinsicWidth +9444:paragraph_getMaxIntrinsicWidth +9445:paragraph_getLongestLine +9446:paragraph_getLineNumberAt +9447:paragraph_getLineMetricsAtIndex +9448:paragraph_getLineCount +9449:paragraph_getIdeographicBaseline +9450:paragraph_getHeight +9451:paragraph_getGlyphInfoAt +9452:paragraph_getDidExceedMaxLines +9453:paragraph_getClosestGlyphInfoAtCoordinate +9454:paragraph_getBoxesForRange +9455:paragraph_getBoxesForPlaceholders +9456:paragraph_getAlphabeticBaseline +9457:paragraphStyle_setTextStyle +9458:paragraphStyle_setTextHeightBehavior +9459:paragraphStyle_setTextDirection +9460:paragraphStyle_setTextAlign +9461:paragraphStyle_setStrutStyle +9462:paragraphStyle_setMaxLines +9463:paragraphStyle_setHeight +9464:paragraphStyle_setEllipsis +9465:paragraphStyle_dispose +9466:paragraphStyle_create +9467:paragraphBuilder_setWordBreaksUtf16 +9468:paragraphBuilder_setLineBreaksUtf16 +9469:paragraphBuilder_setGraphemeBreaksUtf16 +9470:paragraphBuilder_pushStyle +9471:paragraphBuilder_pop +9472:paragraphBuilder_getUtf8Text +9473:paragraphBuilder_create +9474:paragraphBuilder_addText +9475:paragraphBuilder_addPlaceholder +9476:paint_setStyle +9477:paint_setStrokeWidth +9478:paint_setStrokeJoin +9479:paint_setStrokeCap +9480:paint_setShader +9481:paint_setMiterLimit +9482:paint_setMaskFilter +9483:paint_setImageFilter +9484:paint_setColorInt +9485:paint_setColorFilter +9486:paint_setBlendMode +9487:paint_setAntiAlias +9488:paint_getStyle +9489:paint_getStrokeJoin +9490:paint_getStrokeCap +9491:paint_getMiterLImit +9492:paint_getColorInt +9493:paint_getAntiAlias +9494:paint_dispose +9495:paint_create +9496:override_features_khmer\28hb_ot_shape_planner_t*\29 +9497:override_features_indic\28hb_ot_shape_planner_t*\29 +9498:override_features_hangul\28hb_ot_shape_planner_t*\29 +9499:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +9500:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +9501:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +9502:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +9503:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.3 +9504:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.2 +9505:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +9506:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +9507:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +9508:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +9509:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +9510:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +9511:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +9512:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +9513:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +9514:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +9515:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +9516:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +9517:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +9518:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +9519:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9520:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +9521:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +9522:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +9523:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +9524:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +9525:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9526:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +9527:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::regenerateAtlas\28int\2c\20int\2c\20std::__2::function\20\28sktext::gpu::GlyphVector*\2c\20int\2c\20int\2c\20skgpu::MaskFormat\2c\20int\29>\29\20const +9528:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +9529:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +9530:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9531:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +9532:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +9533:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +9534:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +9535:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +9536:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +9537:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29.1 +9538:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29 +9539:non-virtual\20thunk\20to\20GrOpFlushState::writeView\28\29\20const +9540:non-virtual\20thunk\20to\20GrOpFlushState::usesMSAASurface\28\29\20const +9541:non-virtual\20thunk\20to\20GrOpFlushState::threadSafeCache\28\29\20const +9542:non-virtual\20thunk\20to\20GrOpFlushState::strikeCache\28\29\20const +9543:non-virtual\20thunk\20to\20GrOpFlushState::smallPathAtlasManager\28\29\20const +9544:non-virtual\20thunk\20to\20GrOpFlushState::sampledProxyArray\28\29 +9545:non-virtual\20thunk\20to\20GrOpFlushState::rtProxy\28\29\20const +9546:non-virtual\20thunk\20to\20GrOpFlushState::resourceProvider\28\29\20const +9547:non-virtual\20thunk\20to\20GrOpFlushState::renderPassBarriers\28\29\20const +9548:non-virtual\20thunk\20to\20GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +9549:non-virtual\20thunk\20to\20GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +9550:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndirectDraws\28int\29 +9551:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndices\28int\29 +9552:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +9553:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +9554:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +9555:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +9556:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +9557:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +9558:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +9559:non-virtual\20thunk\20to\20GrOpFlushState::dstProxyView\28\29\20const +9560:non-virtual\20thunk\20to\20GrOpFlushState::detachAppliedClip\28\29 +9561:non-virtual\20thunk\20to\20GrOpFlushState::colorLoadOp\28\29\20const +9562:non-virtual\20thunk\20to\20GrOpFlushState::caps\28\29\20const +9563:non-virtual\20thunk\20to\20GrOpFlushState::atlasManager\28\29\20const +9564:non-virtual\20thunk\20to\20GrOpFlushState::appliedClip\28\29\20const +9565:non-virtual\20thunk\20to\20GrGpuBuffer::unref\28\29\20const +9566:non-virtual\20thunk\20to\20GrGpuBuffer::ref\28\29\20const +9567:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +9568:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +9569:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onSetLabel\28\29 +9570:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +9571:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +9572:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +9573:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +9574:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::backendFormat\28\29\20const +9575:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +9576:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +9577:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +9578:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +9579:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::dstColor\28\29 +9580:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29.1 +9581:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29 +9582:maskFilter_createBlur +9583:lineMetrics_getWidth +9584:lineMetrics_getUnscaledAscent +9585:lineMetrics_getLeft +9586:lineMetrics_getHeight +9587:lineMetrics_getDescent +9588:lineMetrics_getBaseline +9589:lineMetrics_getAscent +9590:lineMetrics_dispose +9591:lineMetrics_create +9592:lineBreakBuffer_create +9593:lin_srgb_to_okhcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +9594:legalfunc$glWaitSync +9595:legalfunc$glClientWaitSync +9596:lcd_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9597:is_deleted_glyph\28hb_glyph_info_t\20const*\29 +9598:initial_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9599:image_getHeight +9600:image_createFromTextureSource +9601:image_createFromPixels +9602:image_createFromPicture +9603:imageFilter_getFilterBounds +9604:imageFilter_createMatrix +9605:imageFilter_createFromColorFilter +9606:imageFilter_createErode +9607:imageFilter_createDilate +9608:imageFilter_createBlur +9609:imageFilter_compose +9610:hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +9611:hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +9612:hb_unicode_script_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9613:hb_unicode_general_category_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9614:hb_ucd_script\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9615:hb_ucd_mirroring\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9616:hb_ucd_general_category\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9617:hb_ucd_decompose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20void*\29 +9618:hb_ucd_compose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9619:hb_ucd_combining_class\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9620:hb_syllabic_clear_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9621:hb_paint_sweep_gradient_nil\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9622:hb_paint_push_transform_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9623:hb_paint_push_clip_rectangle_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9624:hb_paint_image_nil\28hb_paint_funcs_t*\2c\20void*\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\2c\20hb_glyph_extents_t*\2c\20void*\29 +9625:hb_paint_extents_push_transform\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9626:hb_paint_extents_push_group\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +9627:hb_paint_extents_push_clip_rectangle\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9628:hb_paint_extents_push_clip_glyph\28hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_font_t*\2c\20void*\29 +9629:hb_paint_extents_pop_transform\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +9630:hb_paint_extents_pop_group\28hb_paint_funcs_t*\2c\20void*\2c\20hb_paint_composite_mode_t\2c\20void*\29 +9631:hb_paint_extents_pop_clip\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +9632:hb_paint_extents_paint_sweep_gradient\28hb_paint_funcs_t*\2c\20void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9633:hb_paint_extents_paint_image\28hb_paint_funcs_t*\2c\20void*\2c\20hb_blob_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\2c\20hb_glyph_extents_t*\2c\20void*\29 +9634:hb_paint_extents_paint_color\28hb_paint_funcs_t*\2c\20void*\2c\20int\2c\20unsigned\20int\2c\20void*\29 +9635:hb_outline_recording_pen_quadratic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9636:hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9637:hb_outline_recording_pen_line_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9638:hb_outline_recording_pen_cubic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9639:hb_outline_recording_pen_close_path\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +9640:hb_ot_paint_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +9641:hb_ot_map_t::lookup_map_t::cmp\28void\20const*\2c\20void\20const*\29 +9642:hb_ot_map_t::feature_map_t::cmp\28void\20const*\2c\20void\20const*\29 +9643:hb_ot_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +9644:hb_ot_get_variation_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9645:hb_ot_get_nominal_glyphs\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +9646:hb_ot_get_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9647:hb_ot_get_glyph_v_origin\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9648:hb_ot_get_glyph_v_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +9649:hb_ot_get_glyph_name\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +9650:hb_ot_get_glyph_h_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +9651:hb_ot_get_glyph_from_name\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +9652:hb_ot_get_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9653:hb_ot_get_font_v_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9654:hb_ot_get_font_h_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9655:hb_ot_draw_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +9656:hb_font_paint_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +9657:hb_font_paint_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +9658:hb_font_get_variation_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9659:hb_font_get_nominal_glyphs_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +9660:hb_font_get_nominal_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9661:hb_font_get_nominal_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9662:hb_font_get_glyph_v_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9663:hb_font_get_glyph_v_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9664:hb_font_get_glyph_v_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +9665:hb_font_get_glyph_v_advances_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +9666:hb_font_get_glyph_v_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9667:hb_font_get_glyph_v_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9668:hb_font_get_glyph_name_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +9669:hb_font_get_glyph_name_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +9670:hb_font_get_glyph_h_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9671:hb_font_get_glyph_h_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9672:hb_font_get_glyph_h_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +9673:hb_font_get_glyph_h_advances_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +9674:hb_font_get_glyph_h_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9675:hb_font_get_glyph_h_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9676:hb_font_get_glyph_from_name_default\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +9677:hb_font_get_glyph_extents_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9678:hb_font_get_glyph_extents_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9679:hb_font_get_glyph_contour_point_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9680:hb_font_get_glyph_contour_point_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9681:hb_font_get_font_v_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9682:hb_font_get_font_h_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9683:hb_font_draw_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +9684:hb_draw_quadratic_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9685:hb_draw_quadratic_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9686:hb_draw_move_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9687:hb_draw_line_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9688:hb_draw_extents_quadratic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9689:hb_draw_extents_cubic_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9690:hb_draw_cubic_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9691:hb_draw_close_path_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +9692:hb_buffer_t::_cluster_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +9693:hb_aat_map_builder_t::feature_event_t::cmp\28void\20const*\2c\20void\20const*\29 +9694:gray_raster_render +9695:gray_raster_new +9696:gray_raster_done +9697:gray_move_to +9698:gray_line_to +9699:gray_cubic_to +9700:gray_conic_to +9701:get_sfnt_table +9702:ft_smooth_transform +9703:ft_smooth_set_mode +9704:ft_smooth_render +9705:ft_smooth_overlap_spans +9706:ft_smooth_lcd_spans +9707:ft_smooth_init +9708:ft_smooth_get_cbox +9709:ft_gzip_free +9710:ft_ansi_stream_io +9711:ft_ansi_stream_close +9712:fquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9713:fontCollection_registerTypeface +9714:fontCollection_dispose +9715:fontCollection_create +9716:fontCollection_clearCaches +9717:fmt_fp +9718:fline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9719:final_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9720:fcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9721:fconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9722:error_callback +9723:emscripten_stack_set_limits +9724:emscripten_current_thread_process_queued_calls +9725:dquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9726:dline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9727:dispose_external_texture\28void*\29 +9728:decompose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +9729:decompose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +9730:decompose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +9731:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::Make\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20bool\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9732:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&\2c\20GrShaderCaps\20const&>\28SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28skgpu::ganesh::\28anonymous\20namespace\29::HullShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9733:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::StrokeTessellator::PathStrokeList&&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator::PathStrokeList&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9734:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9735:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&>\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29::'lambda'\28void*\29>\28skgpu::ganesh::PathTessellator::PathDrawList&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9736:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Make\28SkArenaAlloc*\2c\20GrAAType\2c\20skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::ProcessorFlags\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9737:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerSkyline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9738:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerPow2&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9739:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc>\28\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::TextureOpImpl::Desc&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9740:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::TentPass*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TentPass\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&>\28skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::TentPass&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9741:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::SimpleTriangleShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::SimpleTriangleShader\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&>\28SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::SimpleTriangleShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9742:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass*\20SkArenaAlloc::make<\28anonymous\20namespace\29::GaussPass\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&>\28skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20skvx::Vec<4\2c\20unsigned\20int>*&\2c\20int&\2c\20int&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::GaussPass&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9743:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::DrawAtlasPathShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::DrawAtlasPathShader\2c\20bool&\2c\20skgpu::ganesh::AtlasInstancedHelper*\2c\20GrShaderCaps\20const&>\28bool&\2c\20skgpu::ganesh::AtlasInstancedHelper*&&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::DrawAtlasPathShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9744:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make<\28anonymous\20namespace\29::BoundingBoxShader*\20SkArenaAlloc::make<\28anonymous\20namespace\29::BoundingBoxShader\2c\20SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&>\28SkRGBA4f<\28SkAlphaType\292>&\2c\20GrShaderCaps\20const&\29::'lambda'\28void*\29>\28\28anonymous\20namespace\29::BoundingBoxShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9745:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20unsigned\20char&&\29::'lambda'\28void*\29>\28Sprite_D32_S32&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9746:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTriColorShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9747:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTCubic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9748:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTConic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9749:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\29::'lambda'\28void*\29>\28SkSpriteBlitter_Memcpy&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9750:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&>\28SkPixmap\20const&\2c\20SkArenaAlloc*&\2c\20sk_sp&\29::'lambda'\28void*\29>\28SkRasterPipelineSpriteBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9751:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkArenaAlloc*&\29::'lambda'\28void*\29>\28SkRasterPipelineBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9752:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9753:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkImage_Base\20const*&&\2c\20SkMatrix\20const&\2c\20SkMipmapMode&\29::'lambda'\28void*\29>\28SkMipmapAccessor&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9754:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::PathData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9755:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9756:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkGlyph&&\29::'lambda'\28void*\29>\28SkGlyph&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9757:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make&\29>>::Node*\20SkArenaAlloc::make&\29>>::Node\2c\20std::__2::function&\29>>\28std::__2::function&\29>&&\29::'lambda'\28void*\29>\28SkArenaAllocList&\29>>::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9758:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node\2c\20std::__2::function&\29>\2c\20skgpu::AtlasToken>\28std::__2::function&\29>&&\2c\20skgpu::AtlasToken&&\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9759:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make::Node*\20SkArenaAlloc::make::Node>\28\29::'lambda'\28void*\29>\28SkArenaAllocList::Node&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9760:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29::'lambda'\28void*\29>\28SkA8_Coverage_Blitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9761:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28GrSimpleMesh&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9762:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29::'lambda'\28void*\29>\28GrResourceAllocator::Register&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9763:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPath\20const&\2c\20SkArenaAlloc*\20const&\29::'lambda'\28void*\29>\28GrInnerFanTriangulator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9764:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrDistanceFieldLCDTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20GrDistanceFieldLCDTextGeoProc::DistanceAdjust\2c\20unsigned\20int\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9765:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29>\28GrBitmapTextGeoProc::Make\28SkArenaAlloc*\2c\20GrShaderCaps\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\2c\20sk_sp\2c\20GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\2c\20skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20bool\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9766:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrAppliedClip&&\29::'lambda'\28void*\29>\28GrAppliedClip&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9767:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28EllipseGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9768:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>::__generic_construct\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__ctor>&\2c\20std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +9769:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +9770:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul\2c\201ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +9771:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<1ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\29 +9772:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_construct\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__ctor>&\2c\20std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_constructor\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +9773:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&&\29::'lambda'\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&>\28std::__2::__variant_detail::__move_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&&\29 +9774:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>::__generic_assign\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\29::'lambda'\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20auto&&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__copy_assignment\2c\20\28std::__2::__variant_detail::_Trait\291>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +9775:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +9776:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul\2c\200ul>::__dispatch\5babi:v160004\5d>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&>\28std::__2::__variant_detail::__visitation::__variant::__value_visitor>>&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>\20const&\29 +9777:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul>::__dispatch\5babi:v160004\5d\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20sk_sp\2c\20std::__2::unique_ptr>>&\29 +9778:decltype\28auto\29\20std::__2::__variant_detail::__visitation::__base::__dispatcher<0ul>::__dispatch\5babi:v160004\5d\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29::'lambda'\28auto&\29&&\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&>\28auto\2c\20std::__2::__variant_detail::__base<\28std::__2::__variant_detail::_Trait\291\2c\20SkPaint\2c\20int>&\29 +9779:deallocate_buffer_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9780:ddquad_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9781:ddquad_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9782:ddline_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9783:ddline_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9784:ddcubic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9785:ddcubic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9786:ddconic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9787:ddconic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9788:dconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9789:data_destroy_use\28void*\29 +9790:data_create_use\28hb_ot_shape_plan_t\20const*\29 +9791:data_create_khmer\28hb_ot_shape_plan_t\20const*\29 +9792:data_create_indic\28hb_ot_shape_plan_t\20const*\29 +9793:data_create_hangul\28hb_ot_shape_plan_t\20const*\29 +9794:convert_to_alpha8\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\2c\20SkColorSpaceXformSteps\20const&\29 +9795:convert_bytes_to_data +9796:contourMeasure_isClosed +9797:contourMeasure_getSegment +9798:contourMeasure_getPosTan +9799:contourMeasureIter_next +9800:contourMeasureIter_dispose +9801:contourMeasureIter_create +9802:compose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9803:compose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9804:compose_hebrew\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9805:compare_ppem +9806:compare_offsets +9807:compare_myanmar_order\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +9808:compare_combining_class\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +9809:colorFilter_createSRGBToLinearGamma +9810:colorFilter_createMode +9811:colorFilter_createMatrix +9812:colorFilter_createLinearToSRGBGamma +9813:colorFilter_compose +9814:collect_features_use\28hb_ot_shape_planner_t*\29 +9815:collect_features_myanmar\28hb_ot_shape_planner_t*\29 +9816:collect_features_khmer\28hb_ot_shape_planner_t*\29 +9817:collect_features_indic\28hb_ot_shape_planner_t*\29 +9818:collect_features_hangul\28hb_ot_shape_planner_t*\29 +9819:collect_features_arabic\28hb_ot_shape_planner_t*\29 +9820:clip\28SkPath\20const&\2c\20SkHalfPlane\20const&\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +9821:cleanup +9822:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitStatement\28SkSL::Statement\20const&\29 +9823:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9824:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitExpression\28SkSL::Expression\20const&\29 +9825:cff_slot_init +9826:cff_slot_done +9827:cff_size_request +9828:cff_size_init +9829:cff_size_done +9830:cff_sid_to_glyph_name +9831:cff_set_var_design +9832:cff_set_mm_weightvector +9833:cff_set_mm_blend +9834:cff_set_instance +9835:cff_random +9836:cff_ps_has_glyph_names +9837:cff_ps_get_font_info +9838:cff_ps_get_font_extra +9839:cff_parse_vsindex +9840:cff_parse_private_dict +9841:cff_parse_multiple_master +9842:cff_parse_maxstack +9843:cff_parse_font_matrix +9844:cff_parse_font_bbox +9845:cff_parse_cid_ros +9846:cff_parse_blend +9847:cff_metrics_adjust +9848:cff_hadvance_adjust +9849:cff_get_var_design +9850:cff_get_var_blend +9851:cff_get_standard_encoding +9852:cff_get_ros +9853:cff_get_ps_name +9854:cff_get_name_index +9855:cff_get_mm_weightvector +9856:cff_get_mm_var +9857:cff_get_mm_blend +9858:cff_get_is_cid +9859:cff_get_interface +9860:cff_get_glyph_name +9861:cff_get_cmap_info +9862:cff_get_cid_from_glyph_index +9863:cff_get_advances +9864:cff_free_glyph_data +9865:cff_face_init +9866:cff_face_done +9867:cff_driver_init +9868:cff_done_blend +9869:cff_decoder_prepare +9870:cff_decoder_init +9871:cff_cmap_unicode_init +9872:cff_cmap_unicode_char_next +9873:cff_cmap_unicode_char_index +9874:cff_cmap_encoding_init +9875:cff_cmap_encoding_done +9876:cff_cmap_encoding_char_next +9877:cff_cmap_encoding_char_index +9878:cff_builder_start_point +9879:cf2_free_instance +9880:cf2_decoder_parse_charstrings +9881:cf2_builder_moveTo +9882:cf2_builder_lineTo +9883:cf2_builder_cubeTo +9884:canvas_translate +9885:canvas_transform +9886:canvas_skew +9887:canvas_scale +9888:canvas_saveLayer +9889:canvas_save +9890:canvas_rotate +9891:canvas_restoreToCount +9892:canvas_restore +9893:canvas_getTransform +9894:canvas_getSaveCount +9895:canvas_getLocalClipBounds +9896:canvas_getDeviceClipBounds +9897:canvas_drawVertices +9898:canvas_drawShadow +9899:canvas_drawRect +9900:canvas_drawRRect +9901:canvas_drawPoints +9902:canvas_drawPicture +9903:canvas_drawPath +9904:canvas_drawParagraph +9905:canvas_drawPaint +9906:canvas_drawOval +9907:canvas_drawLine +9908:canvas_drawImageRect +9909:canvas_drawImageNine +9910:canvas_drawImage +9911:canvas_drawDRRect +9912:canvas_drawColor +9913:canvas_drawCircle +9914:canvas_drawAtlas +9915:canvas_drawArc +9916:canvas_clipRect +9917:canvas_clipRRect +9918:canvas_clipPath +9919:cancel_notification +9920:bw_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9921:bw_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9922:bw_pt_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9923:bw_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9924:bw_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9925:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::SpotVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9926:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::AmbientVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9927:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9928:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9929:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9930:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9931:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9932:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9933:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9934:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9935:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9936:blur_y_radius_4\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9937:blur_y_radius_3\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9938:blur_y_radius_2\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9939:blur_y_radius_1\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9940:blur_x_radius_4\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9941:blur_x_radius_3\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9942:blur_x_radius_2\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9943:blur_x_radius_1\28skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20skvx::Vec<8\2c\20unsigned\20short>*\2c\20skvx::Vec<8\2c\20unsigned\20short>*\29 +9944:blit_row_s32a_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9945:blit_row_s32_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9946:blit_row_s32_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9947:argb32_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9948:arabic_fallback_shape\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9949:afm_parser_parse +9950:afm_parser_init +9951:afm_parser_done +9952:afm_compare_kern_pairs +9953:af_property_set +9954:af_property_get +9955:af_latin_metrics_scale +9956:af_latin_metrics_init +9957:af_latin_hints_init +9958:af_latin_hints_apply +9959:af_latin_get_standard_widths +9960:af_indic_metrics_scale +9961:af_indic_metrics_init +9962:af_indic_hints_init +9963:af_indic_hints_apply +9964:af_get_interface +9965:af_face_globals_free +9966:af_dummy_hints_init +9967:af_dummy_hints_apply +9968:af_cjk_metrics_init +9969:af_autofitter_load_glyph +9970:af_autofitter_init +9971:aa_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9972:aa_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9973:aa_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9974:_hb_ot_font_destroy\28void*\29 +9975:_hb_glyph_info_is_default_ignorable\28hb_glyph_info_t\20const*\29 +9976:_hb_face_for_data_reference_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +9977:_hb_face_for_data_closure_destroy\28void*\29 +9978:_hb_clear_substitution_flags\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9979:_hb_blob_destroy\28void*\29 +9980:_emscripten_tls_init +9981:_emscripten_thread_init +9982:_emscripten_thread_free_data +9983:_emscripten_thread_exit +9984:_emscripten_thread_crashed +9985:_emscripten_run_in_main_runtime_thread_js +9986:_emscripten_check_mailbox +9987:__wasm_init_memory +9988:__wasm_call_ctors +9989:__stdio_write +9990:__stdio_seek +9991:__stdio_read +9992:__stdio_close +9993:__emscripten_stdout_seek +9994:__cxxabiv1::__vmi_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9995:__cxxabiv1::__vmi_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9996:__cxxabiv1::__vmi_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +9997:__cxxabiv1::__si_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9998:__cxxabiv1::__si_class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9999:__cxxabiv1::__si_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +10000:__cxxabiv1::__class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +10001:__cxxabiv1::__class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +10002:__cxxabiv1::__class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +10003:__cxxabiv1::__class_type_info::can_catch\28__cxxabiv1::__shim_type_info\20const*\2c\20void*&\29\20const +10004:__cxx_global_array_dtor.9213 +10005:__cxx_global_array_dtor.87 +10006:__cxx_global_array_dtor.7883 +10007:__cxx_global_array_dtor.72 +10008:__cxx_global_array_dtor.6016 +10009:__cxx_global_array_dtor.57 +10010:__cxx_global_array_dtor.4962 +10011:__cxx_global_array_dtor.4653 +10012:__cxx_global_array_dtor.44 +10013:__cxx_global_array_dtor.42 +10014:__cxx_global_array_dtor.4078 +10015:__cxx_global_array_dtor.402 +10016:__cxx_global_array_dtor.40 +10017:__cxx_global_array_dtor.38 +10018:__cxx_global_array_dtor.3683 +10019:__cxx_global_array_dtor.36 +10020:__cxx_global_array_dtor.34 +10021:__cxx_global_array_dtor.331 +10022:__cxx_global_array_dtor.32 +10023:__cxx_global_array_dtor.3 +10024:__cxx_global_array_dtor.1946 +10025:__cxx_global_array_dtor.138 +10026:__cxx_global_array_dtor.135 +10027:__cxx_global_array_dtor.111 +10028:__cxx_global_array_dtor +10029:__cxa_is_pointer_type +10030:\28anonymous\20namespace\29::skhb_nominal_glyphs\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\2c\20void*\29 +10031:\28anonymous\20namespace\29::skhb_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +10032:\28anonymous\20namespace\29::skhb_glyph_h_advances\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\2c\20void*\29 +10033:\28anonymous\20namespace\29::skhb_glyph_h_advance\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +10034:\28anonymous\20namespace\29::skhb_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +10035:\28anonymous\20namespace\29::skhb_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +10036:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29::$_0::__invoke\28void*\29 +10037:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +10038:\28anonymous\20namespace\29::make_morphology\28\28anonymous\20namespace\29::MorphType\2c\20SkSize\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +10039:\28anonymous\20namespace\29::create_sub_hb_font\28SkFont\20const&\2c\20std::__2::unique_ptr>\20const&\29::$_0::__invoke\28void*\29 +10040:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29.1 +10041:\28anonymous\20namespace\29::YUVPlanesRec::getCategory\28\29\20const +10042:\28anonymous\20namespace\29::YUVPlanesRec::diagnostic_only_getDiscardable\28\29\20const +10043:\28anonymous\20namespace\29::YUVPlanesRec::bytesUsed\28\29\20const +10044:\28anonymous\20namespace\29::YUVPlanesRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +10045:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29.1 +10046:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29.1 +10047:\28anonymous\20namespace\29::TriangulatingPathOp::visitProxies\28std::__2::function\20const&\29\20const +10048:\28anonymous\20namespace\29::TriangulatingPathOp::programInfo\28\29 +10049:\28anonymous\20namespace\29::TriangulatingPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10050:\28anonymous\20namespace\29::TriangulatingPathOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10051:\28anonymous\20namespace\29::TriangulatingPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10052:\28anonymous\20namespace\29::TriangulatingPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10053:\28anonymous\20namespace\29::TriangulatingPathOp::name\28\29\20const +10054:\28anonymous\20namespace\29::TriangulatingPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10055:\28anonymous\20namespace\29::TransformedMaskSubRun::unflattenSize\28\29\20const +10056:\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +10057:\28anonymous\20namespace\29::TransformedMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +10058:\28anonymous\20namespace\29::TransformedMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +10059:\28anonymous\20namespace\29::TransformedMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +10060:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29.1 +10061:\28anonymous\20namespace\29::TextureOpImpl::visitProxies\28std::__2::function\20const&\29\20const +10062:\28anonymous\20namespace\29::TextureOpImpl::programInfo\28\29 +10063:\28anonymous\20namespace\29::TextureOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +10064:\28anonymous\20namespace\29::TextureOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10065:\28anonymous\20namespace\29::TextureOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10066:\28anonymous\20namespace\29::TextureOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10067:\28anonymous\20namespace\29::TextureOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10068:\28anonymous\20namespace\29::TextureOpImpl::name\28\29\20const +10069:\28anonymous\20namespace\29::TextureOpImpl::fixedFunctionFlags\28\29\20const +10070:\28anonymous\20namespace\29::TextureOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10071:\28anonymous\20namespace\29::TentPass::startBlur\28\29 +10072:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +10073:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +10074:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +10075:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29.1 +10076:\28anonymous\20namespace\29::StaticVertexAllocator::unlock\28int\29 +10077:\28anonymous\20namespace\29::StaticVertexAllocator::lock\28unsigned\20long\2c\20int\29 +10078:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::currentScript\28\29\20const +10079:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::consume\28\29 +10080:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10081:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10082:\28anonymous\20namespace\29::SkMorphologyImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10083:\28anonymous\20namespace\29::SkMorphologyImageFilter::getTypeName\28\29\20const +10084:\28anonymous\20namespace\29::SkMorphologyImageFilter::flatten\28SkWriteBuffer&\29\20const +10085:\28anonymous\20namespace\29::SkMorphologyImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10086:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10087:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10088:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10089:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::getTypeName\28\29\20const +10090:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::flatten\28SkWriteBuffer&\29\20const +10091:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10092:\28anonymous\20namespace\29::SkFTGeometrySink::Quad\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +10093:\28anonymous\20namespace\29::SkFTGeometrySink::Move\28FT_Vector_\20const*\2c\20void*\29 +10094:\28anonymous\20namespace\29::SkFTGeometrySink::Line\28FT_Vector_\20const*\2c\20void*\29 +10095:\28anonymous\20namespace\29::SkFTGeometrySink::Cubic\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +10096:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +10097:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFamilyName\28SkString*\29\20const +10098:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +10099:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateFamilyNameIterator\28\29\20const +10100:\28anonymous\20namespace\29::SkEmptyTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +10101:\28anonymous\20namespace\29::SkCropImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10102:\28anonymous\20namespace\29::SkCropImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10103:\28anonymous\20namespace\29::SkCropImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10104:\28anonymous\20namespace\29::SkCropImageFilter::onAffectsTransparentBlack\28\29\20const +10105:\28anonymous\20namespace\29::SkCropImageFilter::getTypeName\28\29\20const +10106:\28anonymous\20namespace\29::SkCropImageFilter::flatten\28SkWriteBuffer&\29\20const +10107:\28anonymous\20namespace\29::SkCropImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10108:\28anonymous\20namespace\29::SkComposeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10109:\28anonymous\20namespace\29::SkComposeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10110:\28anonymous\20namespace\29::SkComposeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10111:\28anonymous\20namespace\29::SkComposeImageFilter::getTypeName\28\29\20const +10112:\28anonymous\20namespace\29::SkComposeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10113:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29.1 +10114:\28anonymous\20namespace\29::SkColorFilterImageFilter::onIsColorFilterNode\28SkColorFilter**\29\20const +10115:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10116:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10117:\28anonymous\20namespace\29::SkColorFilterImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10118:\28anonymous\20namespace\29::SkColorFilterImageFilter::onAffectsTransparentBlack\28\29\20const +10119:\28anonymous\20namespace\29::SkColorFilterImageFilter::getTypeName\28\29\20const +10120:\28anonymous\20namespace\29::SkColorFilterImageFilter::flatten\28SkWriteBuffer&\29\20const +10121:\28anonymous\20namespace\29::SkColorFilterImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10122:\28anonymous\20namespace\29::SkBlurImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10123:\28anonymous\20namespace\29::SkBlurImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10124:\28anonymous\20namespace\29::SkBlurImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10125:\28anonymous\20namespace\29::SkBlurImageFilter::getTypeName\28\29\20const +10126:\28anonymous\20namespace\29::SkBlurImageFilter::flatten\28SkWriteBuffer&\29\20const +10127:\28anonymous\20namespace\29::SkBlurImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10128:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29.1 +10129:\28anonymous\20namespace\29::SkBlendImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10130:\28anonymous\20namespace\29::SkBlendImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10131:\28anonymous\20namespace\29::SkBlendImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10132:\28anonymous\20namespace\29::SkBlendImageFilter::onAffectsTransparentBlack\28\29\20const +10133:\28anonymous\20namespace\29::SkBlendImageFilter::getTypeName\28\29\20const +10134:\28anonymous\20namespace\29::SkBlendImageFilter::flatten\28SkWriteBuffer&\29\20const +10135:\28anonymous\20namespace\29::SkBlendImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10136:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29.1 +10137:\28anonymous\20namespace\29::SkBidiIterator_icu::getLevelAt\28int\29 +10138:\28anonymous\20namespace\29::SkBidiIterator_icu::getLength\28\29 +10139:\28anonymous\20namespace\29::SimpleTriangleShader::name\28\29\20const +10140:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10141:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10142:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::FontRunIterator&\2c\20SkShaper::BiDiRunIterator&\2c\20SkShaper::ScriptRunIterator&\2c\20SkShaper::LanguageRunIterator&\2c\20float\2c\20SkShaper::RunHandler*\29\20const +10143:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::FontRunIterator&\2c\20SkShaper::BiDiRunIterator&\2c\20SkShaper::ScriptRunIterator&\2c\20SkShaper::LanguageRunIterator&\2c\20SkShaper::Feature\20const*\2c\20unsigned\20long\2c\20float\2c\20SkShaper::RunHandler*\29\20const +10144:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20bool\2c\20float\2c\20SkShaper::RunHandler*\29\20const +10145:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::~ShapeDontWrapOrReorder\28\29 +10146:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::wrap\28char\20const*\2c\20unsigned\20long\2c\20SkShaper::BiDiRunIterator\20const&\2c\20SkShaper::LanguageRunIterator\20const&\2c\20SkShaper::ScriptRunIterator\20const&\2c\20SkShaper::FontRunIterator\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue&\2c\20SkShaper::Feature\20const*\2c\20unsigned\20long\2c\20float\2c\20SkShaper::RunHandler*\29\20const +10147:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29.1 +10148:\28anonymous\20namespace\29::ShadowInvalidator::changed\28\29 +10149:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29.1 +10150:\28anonymous\20namespace\29::ShadowCircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +10151:\28anonymous\20namespace\29::ShadowCircularRRectOp::programInfo\28\29 +10152:\28anonymous\20namespace\29::ShadowCircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10153:\28anonymous\20namespace\29::ShadowCircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10154:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10155:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10156:\28anonymous\20namespace\29::ShadowCircularRRectOp::name\28\29\20const +10157:\28anonymous\20namespace\29::ShadowCircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10158:\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +10159:\28anonymous\20namespace\29::SDFTSubRun::unflattenSize\28\29\20const +10160:\28anonymous\20namespace\29::SDFTSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +10161:\28anonymous\20namespace\29::SDFTSubRun::glyphs\28\29\20const +10162:\28anonymous\20namespace\29::SDFTSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +10163:\28anonymous\20namespace\29::SDFTSubRun::doFlatten\28SkWriteBuffer&\29\20const +10164:\28anonymous\20namespace\29::SDFTSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +10165:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29.1 +10166:\28anonymous\20namespace\29::RectsBlurRec::getCategory\28\29\20const +10167:\28anonymous\20namespace\29::RectsBlurRec::diagnostic_only_getDiscardable\28\29\20const +10168:\28anonymous\20namespace\29::RectsBlurRec::bytesUsed\28\29\20const +10169:\28anonymous\20namespace\29::RectsBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +10170:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29.1 +10171:\28anonymous\20namespace\29::RRectBlurRec::getCategory\28\29\20const +10172:\28anonymous\20namespace\29::RRectBlurRec::diagnostic_only_getDiscardable\28\29\20const +10173:\28anonymous\20namespace\29::RRectBlurRec::bytesUsed\28\29\20const +10174:\28anonymous\20namespace\29::RRectBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +10175:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29.1 +10176:\28anonymous\20namespace\29::PathSubRun::unflattenSize\28\29\20const +10177:\28anonymous\20namespace\29::PathSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +10178:\28anonymous\20namespace\29::PathSubRun::doFlatten\28SkWriteBuffer&\29\20const +10179:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29.1 +10180:\28anonymous\20namespace\29::MipMapRec::getCategory\28\29\20const +10181:\28anonymous\20namespace\29::MipMapRec::diagnostic_only_getDiscardable\28\29\20const +10182:\28anonymous\20namespace\29::MipMapRec::bytesUsed\28\29\20const +10183:\28anonymous\20namespace\29::MipMapRec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +10184:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29.1 +10185:\28anonymous\20namespace\29::MiddleOutShader::name\28\29\20const +10186:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::emitVertexCode\28GrShaderCaps\20const&\2c\20GrPathTessellationShader\20const&\2c\20GrGLSLVertexBuilder*\2c\20GrGLSLVaryingHandler*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10187:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10188:\28anonymous\20namespace\29::MiddleOutShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10189:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29.1 +10190:\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const +10191:\28anonymous\20namespace\29::MeshOp::programInfo\28\29 +10192:\28anonymous\20namespace\29::MeshOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10193:\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10194:\28anonymous\20namespace\29::MeshOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10195:\28anonymous\20namespace\29::MeshOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10196:\28anonymous\20namespace\29::MeshOp::name\28\29\20const +10197:\28anonymous\20namespace\29::MeshOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10198:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29.1 +10199:\28anonymous\20namespace\29::MeshGP::onTextureSampler\28int\29\20const +10200:\28anonymous\20namespace\29::MeshGP::name\28\29\20const +10201:\28anonymous\20namespace\29::MeshGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10202:\28anonymous\20namespace\29::MeshGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10203:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29.1 +10204:\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10205:\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10206:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10207:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10208:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10209:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleBlender\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10210:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMainName\28\29 +10211:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10212:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +10213:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +10214:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareFunction\28char\20const*\29 +10215:\28anonymous\20namespace\29::HQDownSampler::buildLevel\28SkPixmap\20const&\2c\20SkPixmap\20const&\29 +10216:\28anonymous\20namespace\29::GaussPass::startBlur\28\29 +10217:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +10218:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +10219:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +10220:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29.1 +10221:\28anonymous\20namespace\29::FillRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +10222:\28anonymous\20namespace\29::FillRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +10223:\28anonymous\20namespace\29::FillRectOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10224:\28anonymous\20namespace\29::FillRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10225:\28anonymous\20namespace\29::FillRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10226:\28anonymous\20namespace\29::FillRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10227:\28anonymous\20namespace\29::FillRectOpImpl::name\28\29\20const +10228:\28anonymous\20namespace\29::FillRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10229:\28anonymous\20namespace\29::ExternalWebGLTexture::~ExternalWebGLTexture\28\29.1 +10230:\28anonymous\20namespace\29::ExternalWebGLTexture::getBackendTexture\28\29 +10231:\28anonymous\20namespace\29::ExternalWebGLTexture::dispose\28\29 +10232:\28anonymous\20namespace\29::EllipticalRRectEffect::onMakeProgramImpl\28\29\20const +10233:\28anonymous\20namespace\29::EllipticalRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10234:\28anonymous\20namespace\29::EllipticalRRectEffect::name\28\29\20const +10235:\28anonymous\20namespace\29::EllipticalRRectEffect::clone\28\29\20const +10236:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10237:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10238:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29.1 +10239:\28anonymous\20namespace\29::DrawableSubRun::unflattenSize\28\29\20const +10240:\28anonymous\20namespace\29::DrawableSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +10241:\28anonymous\20namespace\29::DrawableSubRun::doFlatten\28SkWriteBuffer&\29\20const +10242:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29.1 +10243:\28anonymous\20namespace\29::DrawAtlasPathShader::onTextureSampler\28int\29\20const +10244:\28anonymous\20namespace\29::DrawAtlasPathShader::name\28\29\20const +10245:\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10246:\28anonymous\20namespace\29::DrawAtlasPathShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10247:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10248:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10249:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29.1 +10250:\28anonymous\20namespace\29::DrawAtlasOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +10251:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10252:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10253:\28anonymous\20namespace\29::DrawAtlasOpImpl::name\28\29\20const +10254:\28anonymous\20namespace\29::DrawAtlasOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10255:\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +10256:\28anonymous\20namespace\29::DirectMaskSubRun::unflattenSize\28\29\20const +10257:\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +10258:\28anonymous\20namespace\29::DirectMaskSubRun::draw\28SkCanvas*\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp\2c\20std::__2::function\2c\20sktext::gpu::RendererData\29>\20const&\29\20const +10259:\28anonymous\20namespace\29::DirectMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +10260:\28anonymous\20namespace\29::DirectMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +10261:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29.1 +10262:\28anonymous\20namespace\29::DefaultPathOp::visitProxies\28std::__2::function\20const&\29\20const +10263:\28anonymous\20namespace\29::DefaultPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10264:\28anonymous\20namespace\29::DefaultPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10265:\28anonymous\20namespace\29::DefaultPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10266:\28anonymous\20namespace\29::DefaultPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10267:\28anonymous\20namespace\29::DefaultPathOp::name\28\29\20const +10268:\28anonymous\20namespace\29::DefaultPathOp::fixedFunctionFlags\28\29\20const +10269:\28anonymous\20namespace\29::DefaultPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10270:\28anonymous\20namespace\29::CircularRRectEffect::onMakeProgramImpl\28\29\20const +10271:\28anonymous\20namespace\29::CircularRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10272:\28anonymous\20namespace\29::CircularRRectEffect::name\28\29\20const +10273:\28anonymous\20namespace\29::CircularRRectEffect::clone\28\29\20const +10274:\28anonymous\20namespace\29::CircularRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10275:\28anonymous\20namespace\29::CircularRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10276:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29.1 +10277:\28anonymous\20namespace\29::CachedTessellationsRec::getCategory\28\29\20const +10278:\28anonymous\20namespace\29::CachedTessellationsRec::bytesUsed\28\29\20const +10279:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29.1 +10280:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29.1 +10281:\28anonymous\20namespace\29::CacheImpl::set\28SkImageFilterCacheKey\20const&\2c\20SkImageFilter\20const*\2c\20skif::FilterResult\20const&\29 +10282:\28anonymous\20namespace\29::CacheImpl::purge\28\29 +10283:\28anonymous\20namespace\29::CacheImpl::purgeByImageFilter\28SkImageFilter\20const*\29 +10284:\28anonymous\20namespace\29::CacheImpl::get\28SkImageFilterCacheKey\20const&\2c\20skif::FilterResult*\29\20const +10285:\28anonymous\20namespace\29::BoundingBoxShader::name\28\29\20const +10286:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10287:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10288:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10289:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29.1 +10290:\28anonymous\20namespace\29::AAHairlineOp::visitProxies\28std::__2::function\20const&\29\20const +10291:\28anonymous\20namespace\29::AAHairlineOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10292:\28anonymous\20namespace\29::AAHairlineOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10293:\28anonymous\20namespace\29::AAHairlineOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10294:\28anonymous\20namespace\29::AAHairlineOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10295:\28anonymous\20namespace\29::AAHairlineOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10296:\28anonymous\20namespace\29::AAHairlineOp::name\28\29\20const +10297:\28anonymous\20namespace\29::AAHairlineOp::fixedFunctionFlags\28\29\20const +10298:\28anonymous\20namespace\29::AAHairlineOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10299:Write_CVT_Stretched +10300:Write_CVT +10301:Vertish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10302:Vertish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10303:VertState::Triangles\28VertState*\29 +10304:VertState::TrianglesX\28VertState*\29 +10305:VertState::TriangleStrip\28VertState*\29 +10306:VertState::TriangleStripX\28VertState*\29 +10307:VertState::TriangleFan\28VertState*\29 +10308:VertState::TriangleFanX\28VertState*\29 +10309:VLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10310:VLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10311:TextureSourceImageGenerator::~TextureSourceImageGenerator\28\29.1 +10312:TextureSourceImageGenerator::generateExternalTexture\28GrRecordingContext*\2c\20skgpu::Mipmapped\29 +10313:TT_Set_MM_Blend +10314:TT_RunIns +10315:TT_Load_Simple_Glyph +10316:TT_Load_Glyph_Header +10317:TT_Load_Composite_Glyph +10318:TT_Get_Var_Design +10319:TT_Get_MM_Blend +10320:TT_Forget_Glyph_Frame +10321:TT_Access_Glyph_Frame +10322:TOUPPER\28unsigned\20char\29 +10323:TOLOWER\28unsigned\20char\29 +10324:SquareCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +10325:Sprite_D32_S32::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10326:Skwasm::Surface::fRasterizeImage\28Skwasm::Surface*\2c\20SkImage*\2c\20Skwasm::ImageByteFormat\2c\20unsigned\20int\29 +10327:Skwasm::Surface::fOnRasterizeComplete\28Skwasm::Surface*\2c\20SkData*\2c\20unsigned\20int\29 +10328:Skwasm::Surface::fDispose\28Skwasm::Surface*\29 +10329:Skwasm::Surface::Surface\28\29::$_0::__invoke\28void*\29 +10330:SkWeakRefCnt::internal_dispose\28\29\20const +10331:SkUnicode_client::~SkUnicode_client\28\29.1 +10332:SkUnicode_client::toUpper\28SkString\20const&\29 +10333:SkUnicode_client::reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29 +10334:SkUnicode_client::makeBreakIterator\28char\20const*\2c\20SkUnicode::BreakType\29 +10335:SkUnicode_client::makeBreakIterator\28SkUnicode::BreakType\29 +10336:SkUnicode_client::makeBidiIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +10337:SkUnicode_client::makeBidiIterator\28char\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +10338:SkUnicode_client::getWords\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +10339:SkUnicode_client::getBidiRegions\28char\20const*\2c\20int\2c\20SkUnicode::TextDirection\2c\20std::__2::vector>*\29 +10340:SkUnicode_client::copy\28\29 +10341:SkUnicode_client::computeCodeUnitFlags\28char16_t*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +10342:SkUnicode_client::computeCodeUnitFlags\28char*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +10343:SkUnicodeHardCodedCharProperties::isWhitespace\28int\29 +10344:SkUnicodeHardCodedCharProperties::isTabulation\28int\29 +10345:SkUnicodeHardCodedCharProperties::isSpace\28int\29 +10346:SkUnicodeHardCodedCharProperties::isIdeographic\28int\29 +10347:SkUnicodeHardCodedCharProperties::isHardBreak\28int\29 +10348:SkUnicodeHardCodedCharProperties::isControl\28int\29 +10349:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29.1 +10350:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29 +10351:SkUnicodeBidiRunIterator::endOfCurrentRun\28\29\20const +10352:SkUnicodeBidiRunIterator::currentLevel\28\29\20const +10353:SkUnicodeBidiRunIterator::consume\28\29 +10354:SkUnicodeBidiRunIterator::atEnd\28\29\20const +10355:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29.1 +10356:SkTypeface_FreeTypeStream::onOpenStream\28int*\29\20const +10357:SkTypeface_FreeTypeStream::onMakeFontData\28\29\20const +10358:SkTypeface_FreeTypeStream::onMakeClone\28SkFontArguments\20const&\29\20const +10359:SkTypeface_FreeTypeStream::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +10360:SkTypeface_FreeType::onGlyphMaskNeedsCurrentColor\28\29\20const +10361:SkTypeface_FreeType::onGetVariationDesignPosition\28SkFontArguments::VariationPosition::Coordinate*\2c\20int\29\20const +10362:SkTypeface_FreeType::onGetVariationDesignParameters\28SkFontParameters::Variation::Axis*\2c\20int\29\20const +10363:SkTypeface_FreeType::onGetUPEM\28\29\20const +10364:SkTypeface_FreeType::onGetTableTags\28unsigned\20int*\29\20const +10365:SkTypeface_FreeType::onGetTableData\28unsigned\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20void*\29\20const +10366:SkTypeface_FreeType::onGetPostScriptName\28SkString*\29\20const +10367:SkTypeface_FreeType::onGetKerningPairAdjustments\28unsigned\20short\20const*\2c\20int\2c\20int*\29\20const +10368:SkTypeface_FreeType::onGetAdvancedMetrics\28\29\20const +10369:SkTypeface_FreeType::onFilterRec\28SkScalerContextRec*\29\20const +10370:SkTypeface_FreeType::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +10371:SkTypeface_FreeType::onCreateFamilyNameIterator\28\29\20const +10372:SkTypeface_FreeType::onCountGlyphs\28\29\20const +10373:SkTypeface_FreeType::onCopyTableData\28unsigned\20int\29\20const +10374:SkTypeface_FreeType::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +10375:SkTypeface_FreeType::getPostScriptGlyphNames\28SkString*\29\20const +10376:SkTypeface_FreeType::getGlyphToUnicodeMap\28int*\29\20const +10377:SkTypeface_Empty::~SkTypeface_Empty\28\29 +10378:SkTypeface_Custom::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +10379:SkTypeface::onOpenExistingStream\28int*\29\20const +10380:SkTypeface::onCopyTableData\28unsigned\20int\29\20const +10381:SkTypeface::onComputeBounds\28SkRect*\29\20const +10382:SkTriColorShader::type\28\29\20const +10383:SkTriColorShader::isOpaque\28\29\20const +10384:SkTriColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10385:SkTransformShader::type\28\29\20const +10386:SkTransformShader::isOpaque\28\29\20const +10387:SkTransformShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10388:SkTQuad::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +10389:SkTQuad::setBounds\28SkDRect*\29\20const +10390:SkTQuad::ptAtT\28double\29\20const +10391:SkTQuad::make\28SkArenaAlloc&\29\20const +10392:SkTQuad::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +10393:SkTQuad::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +10394:SkTQuad::dxdyAtT\28double\29\20const +10395:SkTQuad::debugInit\28\29 +10396:SkTCubic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +10397:SkTCubic::setBounds\28SkDRect*\29\20const +10398:SkTCubic::ptAtT\28double\29\20const +10399:SkTCubic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +10400:SkTCubic::make\28SkArenaAlloc&\29\20const +10401:SkTCubic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +10402:SkTCubic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +10403:SkTCubic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +10404:SkTCubic::dxdyAtT\28double\29\20const +10405:SkTCubic::debugInit\28\29 +10406:SkTCubic::controlsInside\28\29\20const +10407:SkTCubic::collapsed\28\29\20const +10408:SkTConic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +10409:SkTConic::setBounds\28SkDRect*\29\20const +10410:SkTConic::ptAtT\28double\29\20const +10411:SkTConic::make\28SkArenaAlloc&\29\20const +10412:SkTConic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +10413:SkTConic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +10414:SkTConic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +10415:SkTConic::dxdyAtT\28double\29\20const +10416:SkTConic::debugInit\28\29 +10417:SkSweepGradient::getTypeName\28\29\20const +10418:SkSweepGradient::flatten\28SkWriteBuffer&\29\20const +10419:SkSweepGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10420:SkSweepGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10421:SkSurface_Raster::~SkSurface_Raster\28\29.1 +10422:SkSurface_Raster::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10423:SkSurface_Raster::onRestoreBackingMutability\28\29 +10424:SkSurface_Raster::onNewSurface\28SkImageInfo\20const&\29 +10425:SkSurface_Raster::onNewImageSnapshot\28SkIRect\20const*\29 +10426:SkSurface_Raster::onNewCanvas\28\29 +10427:SkSurface_Raster::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10428:SkSurface_Raster::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +10429:SkSurface_Raster::imageInfo\28\29\20const +10430:SkSurface_Ganesh::~SkSurface_Ganesh\28\29.1 +10431:SkSurface_Ganesh::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +10432:SkSurface_Ganesh::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10433:SkSurface_Ganesh::onWait\28int\2c\20GrBackendSemaphore\20const*\2c\20bool\29 +10434:SkSurface_Ganesh::onNewSurface\28SkImageInfo\20const&\29 +10435:SkSurface_Ganesh::onNewImageSnapshot\28SkIRect\20const*\29 +10436:SkSurface_Ganesh::onNewCanvas\28\29 +10437:SkSurface_Ganesh::onIsCompatible\28GrSurfaceCharacterization\20const&\29\20const +10438:SkSurface_Ganesh::onGetRecordingContext\28\29\20const +10439:SkSurface_Ganesh::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10440:SkSurface_Ganesh::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +10441:SkSurface_Ganesh::onCharacterize\28GrSurfaceCharacterization*\29\20const +10442:SkSurface_Ganesh::onCapabilities\28\29 +10443:SkSurface_Ganesh::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +10444:SkSurface_Ganesh::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +10445:SkSurface_Ganesh::imageInfo\28\29\20const +10446:SkSurface_Base::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29 +10447:SkSurface::imageInfo\28\29\20const +10448:SkStrikeCache::~SkStrikeCache\28\29.1 +10449:SkStrikeCache::findOrCreateScopedStrike\28SkStrikeSpec\20const&\29 +10450:SkStrike::~SkStrike\28\29.1 +10451:SkStrike::strikePromise\28\29 +10452:SkStrike::roundingSpec\28\29\20const +10453:SkStrike::getDescriptor\28\29\20const +10454:SkSpriteBlitter_Memcpy::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10455:SkSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +10456:SkSpriteBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10457:SkSpriteBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10458:SkSpriteBlitter::blitH\28int\2c\20int\2c\20int\29 +10459:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29.1 +10460:SkSpecialImage_Raster::onMakeSubset\28SkIRect\20const&\29\20const +10461:SkSpecialImage_Raster::getSize\28\29\20const +10462:SkSpecialImage_Raster::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +10463:SkSpecialImage_Raster::asImage\28\29\20const +10464:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29.1 +10465:SkSpecialImage_Gpu::onMakeSubset\28SkIRect\20const&\29\20const +10466:SkSpecialImage_Gpu::getSize\28\29\20const +10467:SkSpecialImage_Gpu::asImage\28\29\20const +10468:SkSpecialImage::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +10469:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29.1 +10470:SkShaper::TrivialLanguageRunIterator::currentLanguage\28\29\20const +10471:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29.1 +10472:SkShaper::TrivialBiDiRunIterator::currentLevel\28\29\20const +10473:SkScan::HairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10474:SkScan::HairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10475:SkScan::HairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10476:SkScan::AntiHairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10477:SkScan::AntiHairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10478:SkScan::AntiHairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10479:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10480:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29.1 +10481:SkScalerContext_FreeType::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +10482:SkScalerContext_FreeType::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +10483:SkScalerContext_FreeType::generateImage\28SkGlyph\20const&\2c\20void*\29 +10484:SkScalerContext_FreeType::generateFontMetrics\28SkFontMetrics*\29 +10485:SkScalerContext_FreeType::generateDrawable\28SkGlyph\20const&\29 +10486:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::~SkScalerContext_Empty\28\29 +10487:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +10488:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +10489:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateFontMetrics\28SkFontMetrics*\29 +10490:SkSRGBColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +10491:SkSRGBColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +10492:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_3::__invoke\28double\2c\20double\29 +10493:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_2::__invoke\28double\2c\20double\29 +10494:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_1::__invoke\28double\2c\20double\29 +10495:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29::$_0::__invoke\28double\2c\20double\29 +10496:SkSL::negate_value\28double\29 +10497:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29.1 +10498:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29.1 +10499:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +10500:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitExpressionPtr\28std::__2::unique_ptr>&\29 +10501:SkSL::count_returns_at_end_of_control_flow\28SkSL::FunctionDefinition\20const&\29::CountReturnsAtEndOfControlFlow::visitStatement\28SkSL::Statement\20const&\29 +10502:SkSL::bitwise_not_value\28double\29 +10503:SkSL::\28anonymous\20namespace\29::VariableWriteVisitor::visitExpression\28SkSL::Expression\20const&\29 +10504:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +10505:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitExpression\28SkSL::Expression\20const&\29 +10506:SkSL::\28anonymous\20namespace\29::ReturnsNonOpaqueColorVisitor::visitStatement\28SkSL::Statement\20const&\29 +10507:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitStatement\28SkSL::Statement\20const&\29 +10508:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +10509:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitExpression\28SkSL::Expression\20const&\29 +10510:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +10511:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +10512:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29.1 +10513:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitExpression\28SkSL::Expression\20const&\29 +10514:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29.1 +10515:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitStatement\28SkSL::Statement\20const&\29 +10516:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitExpression\28SkSL::Expression\20const&\29 +10517:SkSL::VectorType::isAllowedInES2\28\29\20const +10518:SkSL::VariableReference::clone\28SkSL::Position\29\20const +10519:SkSL::Variable::~Variable\28\29.1 +10520:SkSL::Variable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +10521:SkSL::Variable::mangledName\28\29\20const +10522:SkSL::Variable::layout\28\29\20const +10523:SkSL::Variable::description\28\29\20const +10524:SkSL::VarDeclaration::~VarDeclaration\28\29.1 +10525:SkSL::VarDeclaration::description\28\29\20const +10526:SkSL::TypeReference::clone\28SkSL::Position\29\20const +10527:SkSL::Type::minimumValue\28\29\20const +10528:SkSL::Type::maximumValue\28\29\20const +10529:SkSL::Type::fields\28\29\20const +10530:SkSL::Type::description\28\29\20const +10531:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29.1 +10532:SkSL::Tracer::var\28int\2c\20int\29 +10533:SkSL::Tracer::scope\28int\29 +10534:SkSL::Tracer::line\28int\29 +10535:SkSL::Tracer::exit\28int\29 +10536:SkSL::Tracer::enter\28int\29 +10537:SkSL::ThreadContext::DefaultErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10538:SkSL::TextureType::textureAccess\28\29\20const +10539:SkSL::TextureType::isMultisampled\28\29\20const +10540:SkSL::TextureType::isDepth\28\29\20const +10541:SkSL::TextureType::isArrayedTexture\28\29\20const +10542:SkSL::TernaryExpression::~TernaryExpression\28\29.1 +10543:SkSL::TernaryExpression::description\28SkSL::OperatorPrecedence\29\20const +10544:SkSL::TernaryExpression::clone\28SkSL::Position\29\20const +10545:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression&\29 +10546:SkSL::Swizzle::~Swizzle\28\29.1 +10547:SkSL::Swizzle::description\28SkSL::OperatorPrecedence\29\20const +10548:SkSL::Swizzle::clone\28SkSL::Position\29\20const +10549:SkSL::SwitchStatement::~SwitchStatement\28\29.1 +10550:SkSL::SwitchStatement::description\28\29\20const +10551:SkSL::SwitchCase::description\28\29\20const +10552:SkSL::StructType::slotType\28unsigned\20long\29\20const +10553:SkSL::StructType::isOrContainsUnsizedArray\28\29\20const +10554:SkSL::StructType::isOrContainsAtomic\28\29\20const +10555:SkSL::StructType::isOrContainsArray\28\29\20const +10556:SkSL::StructType::isInterfaceBlock\28\29\20const +10557:SkSL::StructType::isAllowedInES2\28\29\20const +10558:SkSL::StructType::fields\28\29\20const +10559:SkSL::StructDefinition::description\28\29\20const +10560:SkSL::StringStream::~StringStream\28\29.1 +10561:SkSL::StringStream::write\28void\20const*\2c\20unsigned\20long\29 +10562:SkSL::StringStream::writeText\28char\20const*\29 +10563:SkSL::StringStream::write8\28unsigned\20char\29 +10564:SkSL::Setting::description\28SkSL::OperatorPrecedence\29\20const +10565:SkSL::Setting::clone\28SkSL::Position\29\20const +10566:SkSL::ScalarType::priority\28\29\20const +10567:SkSL::ScalarType::numberKind\28\29\20const +10568:SkSL::ScalarType::minimumValue\28\29\20const +10569:SkSL::ScalarType::maximumValue\28\29\20const +10570:SkSL::ScalarType::isAllowedInES2\28\29\20const +10571:SkSL::ScalarType::bitWidth\28\29\20const +10572:SkSL::SamplerType::textureAccess\28\29\20const +10573:SkSL::SamplerType::isMultisampled\28\29\20const +10574:SkSL::SamplerType::isDepth\28\29\20const +10575:SkSL::SamplerType::isArrayedTexture\28\29\20const +10576:SkSL::SamplerType::dimensions\28\29\20const +10577:SkSL::ReturnStatement::description\28\29\20const +10578:SkSL::RP::VariableLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10579:SkSL::RP::VariableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10580:SkSL::RP::VariableLValue::isWritable\28\29\20const +10581:SkSL::RP::UnownedLValueSlice::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10582:SkSL::RP::UnownedLValueSlice::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10583:SkSL::RP::UnownedLValueSlice::fixedSlotRange\28SkSL::RP::Generator*\29 +10584:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29.1 +10585:SkSL::RP::SwizzleLValue::swizzle\28\29 +10586:SkSL::RP::SwizzleLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10587:SkSL::RP::SwizzleLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10588:SkSL::RP::SwizzleLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10589:SkSL::RP::ScratchLValue::~ScratchLValue\28\29.1 +10590:SkSL::RP::ScratchLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10591:SkSL::RP::ScratchLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10592:SkSL::RP::LValueSlice::~LValueSlice\28\29.1 +10593:SkSL::RP::ImmutableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10594:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29.1 +10595:SkSL::RP::DynamicIndexLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10596:SkSL::RP::DynamicIndexLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10597:SkSL::RP::DynamicIndexLValue::isWritable\28\29\20const +10598:SkSL::RP::DynamicIndexLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10599:SkSL::ProgramVisitor::visitStatementPtr\28std::__2::unique_ptr>\20const&\29 +10600:SkSL::ProgramVisitor::visitExpressionPtr\28std::__2::unique_ptr>\20const&\29 +10601:SkSL::PrefixExpression::description\28SkSL::OperatorPrecedence\29\20const +10602:SkSL::PrefixExpression::clone\28SkSL::Position\29\20const +10603:SkSL::PostfixExpression::description\28SkSL::OperatorPrecedence\29\20const +10604:SkSL::PostfixExpression::clone\28SkSL::Position\29\20const +10605:SkSL::Poison::description\28SkSL::OperatorPrecedence\29\20const +10606:SkSL::Poison::clone\28SkSL::Position\29\20const +10607:SkSL::PipelineStage::Callbacks::getMainName\28\29 +10608:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29.1 +10609:SkSL::Parser::Checkpoint::ForwardingErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10610:SkSL::Nop::description\28\29\20const +10611:SkSL::ModifiersDeclaration::description\28\29\20const +10612:SkSL::MethodReference::description\28SkSL::OperatorPrecedence\29\20const +10613:SkSL::MethodReference::clone\28SkSL::Position\29\20const +10614:SkSL::MatrixType::slotCount\28\29\20const +10615:SkSL::MatrixType::rows\28\29\20const +10616:SkSL::MatrixType::isAllowedInES2\28\29\20const +10617:SkSL::LiteralType::minimumValue\28\29\20const +10618:SkSL::LiteralType::maximumValue\28\29\20const +10619:SkSL::Literal::getConstantValue\28int\29\20const +10620:SkSL::Literal::description\28SkSL::OperatorPrecedence\29\20const +10621:SkSL::Literal::compareConstant\28SkSL::Expression\20const&\29\20const +10622:SkSL::Literal::clone\28SkSL::Position\29\20const +10623:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_uintBitsToFloat\28double\2c\20double\2c\20double\29 +10624:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_trunc\28double\2c\20double\2c\20double\29 +10625:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tanh\28double\2c\20double\2c\20double\29 +10626:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tan\28double\2c\20double\2c\20double\29 +10627:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28double\2c\20double\2c\20double\29 +10628:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_step\28double\2c\20double\2c\20double\29 +10629:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sqrt\28double\2c\20double\2c\20double\29 +10630:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_smoothstep\28double\2c\20double\2c\20double\29 +10631:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sinh\28double\2c\20double\2c\20double\29 +10632:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sin\28double\2c\20double\2c\20double\29 +10633:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sign\28double\2c\20double\2c\20double\29 +10634:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_saturate\28double\2c\20double\2c\20double\29 +10635:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_round\28double\2c\20double\2c\20double\29 +10636:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_radians\28double\2c\20double\2c\20double\29 +10637:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_pow\28double\2c\20double\2c\20double\29 +10638:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_opposite_sign\28double\2c\20double\2c\20double\29 +10639:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_not\28double\2c\20double\2c\20double\29 +10640:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mod\28double\2c\20double\2c\20double\29 +10641:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mix\28double\2c\20double\2c\20double\29 +10642:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_min\28double\2c\20double\2c\20double\29 +10643:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_max\28double\2c\20double\2c\20double\29 +10644:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log\28double\2c\20double\2c\20double\29 +10645:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log2\28double\2c\20double\2c\20double\29 +10646:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_inversesqrt\28double\2c\20double\2c\20double\29 +10647:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_intBitsToFloat\28double\2c\20double\2c\20double\29 +10648:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fract\28double\2c\20double\2c\20double\29 +10649:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fma\28double\2c\20double\2c\20double\29 +10650:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floor\28double\2c\20double\2c\20double\29 +10651:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToUint\28double\2c\20double\2c\20double\29 +10652:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToInt\28double\2c\20double\2c\20double\29 +10653:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp\28double\2c\20double\2c\20double\29 +10654:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp2\28double\2c\20double\2c\20double\29 +10655:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_div\28double\2c\20double\2c\20double\29 +10656:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_degrees\28double\2c\20double\2c\20double\29 +10657:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cosh\28double\2c\20double\2c\20double\29 +10658:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cos\28double\2c\20double\2c\20double\29 +10659:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_clamp\28double\2c\20double\2c\20double\29 +10660:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_ceil\28double\2c\20double\2c\20double\29 +10661:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atanh\28double\2c\20double\2c\20double\29 +10662:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan\28double\2c\20double\2c\20double\29 +10663:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan2\28double\2c\20double\2c\20double\29 +10664:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asinh\28double\2c\20double\2c\20double\29 +10665:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asin\28double\2c\20double\2c\20double\29 +10666:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28double\2c\20double\2c\20double\29 +10667:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acosh\28double\2c\20double\2c\20double\29 +10668:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acos\28double\2c\20double\2c\20double\29 +10669:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_abs\28double\2c\20double\2c\20double\29 +10670:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_notEqual\28double\2c\20double\29 +10671:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThan\28double\2c\20double\29 +10672:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThanEqual\28double\2c\20double\29 +10673:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThan\28double\2c\20double\29 +10674:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThanEqual\28double\2c\20double\29 +10675:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_equal\28double\2c\20double\29 +10676:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_length\28double\2c\20double\2c\20double\29 +10677:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_dot\28double\2c\20double\2c\20double\29 +10678:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_distance\28double\2c\20double\2c\20double\29 +10679:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_any\28double\2c\20double\2c\20double\29 +10680:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_all\28double\2c\20double\2c\20double\29 +10681:SkSL::InterfaceBlock::~InterfaceBlock\28\29.1 +10682:SkSL::InterfaceBlock::description\28\29\20const +10683:SkSL::IndexExpression::~IndexExpression\28\29.1 +10684:SkSL::IndexExpression::description\28SkSL::OperatorPrecedence\29\20const +10685:SkSL::IndexExpression::clone\28SkSL::Position\29\20const +10686:SkSL::IfStatement::~IfStatement\28\29.1 +10687:SkSL::IfStatement::description\28\29\20const +10688:SkSL::GlobalVarDeclaration::description\28\29\20const +10689:SkSL::GenericType::slotType\28unsigned\20long\29\20const +10690:SkSL::GenericType::coercibleTypes\28\29\20const +10691:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29.1 +10692:SkSL::FunctionReference::description\28SkSL::OperatorPrecedence\29\20const +10693:SkSL::FunctionReference::clone\28SkSL::Position\29\20const +10694:SkSL::FunctionPrototype::description\28\29\20const +10695:SkSL::FunctionDefinition::description\28\29\20const +10696:SkSL::FunctionDefinition::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20std::__2::unique_ptr>\2c\20bool\29::Finalizer::~Finalizer\28\29.1 +10697:SkSL::FunctionCall::description\28SkSL::OperatorPrecedence\29\20const +10698:SkSL::FunctionCall::clone\28SkSL::Position\29\20const +10699:SkSL::ForStatement::~ForStatement\28\29.1 +10700:SkSL::ForStatement::description\28\29\20const +10701:SkSL::FieldSymbol::description\28\29\20const +10702:SkSL::FieldAccess::clone\28SkSL::Position\29\20const +10703:SkSL::Extension::description\28\29\20const +10704:SkSL::ExtendedVariable::~ExtendedVariable\28\29.1 +10705:SkSL::ExtendedVariable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +10706:SkSL::ExtendedVariable::mangledName\28\29\20const +10707:SkSL::ExtendedVariable::interfaceBlock\28\29\20const +10708:SkSL::ExtendedVariable::detachDeadInterfaceBlock\28\29 +10709:SkSL::ExpressionStatement::description\28\29\20const +10710:SkSL::Expression::getConstantValue\28int\29\20const +10711:SkSL::Expression::description\28\29\20const +10712:SkSL::EmptyExpression::description\28SkSL::OperatorPrecedence\29\20const +10713:SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +10714:SkSL::DoStatement::~DoStatement\28\29.1 +10715:SkSL::DoStatement::description\28\29\20const +10716:SkSL::DiscardStatement::description\28\29\20const +10717:SkSL::DebugTracePriv::~DebugTracePriv\28\29.1 +10718:SkSL::CountReturnsWithLimit::visitStatement\28SkSL::Statement\20const&\29 +10719:SkSL::ContinueStatement::description\28\29\20const +10720:SkSL::ConstructorStruct::clone\28SkSL::Position\29\20const +10721:SkSL::ConstructorSplat::getConstantValue\28int\29\20const +10722:SkSL::ConstructorSplat::clone\28SkSL::Position\29\20const +10723:SkSL::ConstructorScalarCast::clone\28SkSL::Position\29\20const +10724:SkSL::ConstructorMatrixResize::getConstantValue\28int\29\20const +10725:SkSL::ConstructorMatrixResize::clone\28SkSL::Position\29\20const +10726:SkSL::ConstructorDiagonalMatrix::getConstantValue\28int\29\20const +10727:SkSL::ConstructorDiagonalMatrix::clone\28SkSL::Position\29\20const +10728:SkSL::ConstructorCompoundCast::clone\28SkSL::Position\29\20const +10729:SkSL::ConstructorCompound::clone\28SkSL::Position\29\20const +10730:SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +10731:SkSL::ConstructorArray::clone\28SkSL::Position\29\20const +10732:SkSL::Compiler::CompilerErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10733:SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +10734:SkSL::ChildCall::clone\28SkSL::Position\29\20const +10735:SkSL::BreakStatement::description\28\29\20const +10736:SkSL::Block::~Block\28\29.1 +10737:SkSL::Block::description\28\29\20const +10738:SkSL::BinaryExpression::~BinaryExpression\28\29.1 +10739:SkSL::BinaryExpression::description\28SkSL::OperatorPrecedence\29\20const +10740:SkSL::BinaryExpression::clone\28SkSL::Position\29\20const +10741:SkSL::ArrayType::slotType\28unsigned\20long\29\20const +10742:SkSL::ArrayType::slotCount\28\29\20const +10743:SkSL::ArrayType::isUnsizedArray\28\29\20const +10744:SkSL::ArrayType::isOrContainsUnsizedArray\28\29\20const +10745:SkSL::ArrayType::isOrContainsAtomic\28\29\20const +10746:SkSL::AnyConstructor::getConstantValue\28int\29\20const +10747:SkSL::AnyConstructor::description\28SkSL::OperatorPrecedence\29\20const +10748:SkSL::AnyConstructor::compareConstant\28SkSL::Expression\20const&\29\20const +10749:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29.1 +10750:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitStatement\28SkSL::Statement\20const&\29 +10751:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitExpression\28SkSL::Expression\20const&\29 +10752:SkSL::AliasType::textureAccess\28\29\20const +10753:SkSL::AliasType::slotType\28unsigned\20long\29\20const +10754:SkSL::AliasType::slotCount\28\29\20const +10755:SkSL::AliasType::rows\28\29\20const +10756:SkSL::AliasType::priority\28\29\20const +10757:SkSL::AliasType::isVector\28\29\20const +10758:SkSL::AliasType::isUnsizedArray\28\29\20const +10759:SkSL::AliasType::isStruct\28\29\20const +10760:SkSL::AliasType::isScalar\28\29\20const +10761:SkSL::AliasType::isMultisampled\28\29\20const +10762:SkSL::AliasType::isMatrix\28\29\20const +10763:SkSL::AliasType::isLiteral\28\29\20const +10764:SkSL::AliasType::isInterfaceBlock\28\29\20const +10765:SkSL::AliasType::isDepth\28\29\20const +10766:SkSL::AliasType::isArrayedTexture\28\29\20const +10767:SkSL::AliasType::isArray\28\29\20const +10768:SkSL::AliasType::dimensions\28\29\20const +10769:SkSL::AliasType::componentType\28\29\20const +10770:SkSL::AliasType::columns\28\29\20const +10771:SkSL::AliasType::coercibleTypes\28\29\20const +10772:SkRuntimeShader::~SkRuntimeShader\28\29.1 +10773:SkRuntimeShader::type\28\29\20const +10774:SkRuntimeShader::isOpaque\28\29\20const +10775:SkRuntimeShader::getTypeName\28\29\20const +10776:SkRuntimeShader::flatten\28SkWriteBuffer&\29\20const +10777:SkRuntimeShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10778:SkRuntimeEffect::~SkRuntimeEffect\28\29.1 +10779:SkRuntimeEffect::MakeFromSource\28SkString\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +10780:SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +10781:SkRuntimeEffect::MakeForBlender\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +10782:SkRgnClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10783:SkRgnClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10784:SkRgnClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10785:SkRgnClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10786:SkRgnClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10787:SkRgnClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10788:SkRgnBuilder::~SkRgnBuilder\28\29.1 +10789:SkRgnBuilder::blitH\28int\2c\20int\2c\20int\29 +10790:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::~Result\28\29.1 +10791:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::rowBytes\28int\29\20const +10792:SkRescaleAndReadPixels\28SkBitmap\2c\20SkImageInfo\20const&\2c\20SkIRect\20const&\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29::Result::data\28int\29\20const +10793:SkRectClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10794:SkRectClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10795:SkRectClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10796:SkRectClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10797:SkRectClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10798:SkRectClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10799:SkRecorder::~SkRecorder\28\29.1 +10800:SkRecorder::willSave\28\29 +10801:SkRecorder::onResetClip\28\29 +10802:SkRecorder::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10803:SkRecorder::onDrawSlug\28sktext::gpu::Slug\20const*\29 +10804:SkRecorder::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10805:SkRecorder::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10806:SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10807:SkRecorder::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10808:SkRecorder::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10809:SkRecorder::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10810:SkRecorder::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10811:SkRecorder::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10812:SkRecorder::onDrawPaint\28SkPaint\20const&\29 +10813:SkRecorder::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10814:SkRecorder::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +10815:SkRecorder::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10816:SkRecorder::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10817:SkRecorder::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10818:SkRecorder::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10819:SkRecorder::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10820:SkRecorder::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10821:SkRecorder::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10822:SkRecorder::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10823:SkRecorder::onDrawBehind\28SkPaint\20const&\29 +10824:SkRecorder::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +10825:SkRecorder::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10826:SkRecorder::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10827:SkRecorder::onDoSaveBehind\28SkRect\20const*\29 +10828:SkRecorder::onClipShader\28sk_sp\2c\20SkClipOp\29 +10829:SkRecorder::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10830:SkRecorder::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10831:SkRecorder::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10832:SkRecorder::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10833:SkRecorder::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10834:SkRecorder::didTranslate\28float\2c\20float\29 +10835:SkRecorder::didSetM44\28SkM44\20const&\29 +10836:SkRecorder::didScale\28float\2c\20float\29 +10837:SkRecorder::didRestore\28\29 +10838:SkRecorder::didConcat44\28SkM44\20const&\29 +10839:SkRecordedDrawable::~SkRecordedDrawable\28\29.1 +10840:SkRecordedDrawable::onMakePictureSnapshot\28\29 +10841:SkRecordedDrawable::onGetBounds\28\29 +10842:SkRecordedDrawable::onDraw\28SkCanvas*\29 +10843:SkRecordedDrawable::onApproximateBytesUsed\28\29 +10844:SkRecordedDrawable::getTypeName\28\29\20const +10845:SkRecordedDrawable::flatten\28SkWriteBuffer&\29\20const +10846:SkRecord::~SkRecord\28\29.1 +10847:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29.1 +10848:SkRasterPipelineSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +10849:SkRasterPipelineSpriteBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10850:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29.1 +10851:SkRasterPipelineBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10852:SkRasterPipelineBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10853:SkRasterPipelineBlitter::blitH\28int\2c\20int\2c\20int\29 +10854:SkRasterPipelineBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10855:SkRasterPipelineBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10856:SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10857:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_3::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10858:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_2::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10859:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_1::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10860:SkRasterPipelineBlitter::Create\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkArenaAlloc*\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20bool\2c\20SkShader\20const*\29::$_0::__invoke\28SkPixmap*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20long\20long\29 +10861:SkRadialGradient::getTypeName\28\29\20const +10862:SkRadialGradient::flatten\28SkWriteBuffer&\29\20const +10863:SkRadialGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10864:SkRadialGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10865:SkRTree::~SkRTree\28\29.1 +10866:SkRTree::search\28SkRect\20const&\2c\20std::__2::vector>*\29\20const +10867:SkRTree::insert\28SkRect\20const*\2c\20int\29 +10868:SkRTree::bytesUsed\28\29\20const +10869:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_3::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10870:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_2::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10871:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_1::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10872:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_0::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10873:SkPixelRef::~SkPixelRef\28\29.1 +10874:SkPictureRecord::~SkPictureRecord\28\29.1 +10875:SkPictureRecord::willSave\28\29 +10876:SkPictureRecord::willRestore\28\29 +10877:SkPictureRecord::onResetClip\28\29 +10878:SkPictureRecord::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10879:SkPictureRecord::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10880:SkPictureRecord::onDrawSlug\28sktext::gpu::Slug\20const*\29 +10881:SkPictureRecord::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10882:SkPictureRecord::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10883:SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10884:SkPictureRecord::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10885:SkPictureRecord::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10886:SkPictureRecord::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10887:SkPictureRecord::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10888:SkPictureRecord::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10889:SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +10890:SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10891:SkPictureRecord::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10892:SkPictureRecord::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10893:SkPictureRecord::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10894:SkPictureRecord::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10895:SkPictureRecord::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10896:SkPictureRecord::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10897:SkPictureRecord::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10898:SkPictureRecord::onDrawBehind\28SkPaint\20const&\29 +10899:SkPictureRecord::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +10900:SkPictureRecord::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10901:SkPictureRecord::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10902:SkPictureRecord::onDoSaveBehind\28SkRect\20const*\29 +10903:SkPictureRecord::onClipShader\28sk_sp\2c\20SkClipOp\29 +10904:SkPictureRecord::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10905:SkPictureRecord::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10906:SkPictureRecord::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10907:SkPictureRecord::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10908:SkPictureRecord::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10909:SkPictureRecord::didTranslate\28float\2c\20float\29 +10910:SkPictureRecord::didSetM44\28SkM44\20const&\29 +10911:SkPictureRecord::didScale\28float\2c\20float\29 +10912:SkPictureRecord::didConcat44\28SkM44\20const&\29 +10913:SkPictureImageGenerator::~SkPictureImageGenerator\28\29.1 +10914:SkPictureImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +10915:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29.1 +10916:SkOTUtils::LocalizedStrings_SingleName::next\28SkTypeface::LocalizedString*\29 +10917:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29.1 +10918:SkOTUtils::LocalizedStrings_NameTable::next\28SkTypeface::LocalizedString*\29 +10919:SkNoPixelsDevice::~SkNoPixelsDevice\28\29.1 +10920:SkNoPixelsDevice::replaceClip\28SkIRect\20const&\29 +10921:SkNoPixelsDevice::pushClipStack\28\29 +10922:SkNoPixelsDevice::popClipStack\28\29 +10923:SkNoPixelsDevice::onClipShader\28sk_sp\29 +10924:SkNoPixelsDevice::isClipWideOpen\28\29\20const +10925:SkNoPixelsDevice::isClipRect\28\29\20const +10926:SkNoPixelsDevice::isClipEmpty\28\29\20const +10927:SkNoPixelsDevice::isClipAntiAliased\28\29\20const +10928:SkNoPixelsDevice::devClipBounds\28\29\20const +10929:SkNoPixelsDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10930:SkNoPixelsDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +10931:SkNoPixelsDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +10932:SkNoPixelsDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +10933:SkNoPixelsDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +10934:SkMipmap::~SkMipmap\28\29.1 +10935:SkMipmap::onDataChange\28void*\2c\20void*\29 +10936:SkMemoryStream::~SkMemoryStream\28\29.1 +10937:SkMemoryStream::setMemory\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +10938:SkMemoryStream::seek\28unsigned\20long\29 +10939:SkMemoryStream::rewind\28\29 +10940:SkMemoryStream::read\28void*\2c\20unsigned\20long\29 +10941:SkMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +10942:SkMemoryStream::onFork\28\29\20const +10943:SkMemoryStream::onDuplicate\28\29\20const +10944:SkMemoryStream::move\28long\29 +10945:SkMemoryStream::isAtEnd\28\29\20const +10946:SkMemoryStream::getMemoryBase\28\29 +10947:SkMemoryStream::getLength\28\29\20const +10948:SkMatrixColorFilter::onIsAlphaUnchanged\28\29\20const +10949:SkMatrixColorFilter::onAsAColorMatrix\28float*\29\20const +10950:SkMatrixColorFilter::getTypeName\28\29\20const +10951:SkMatrixColorFilter::flatten\28SkWriteBuffer&\29\20const +10952:SkMatrixColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10953:SkMatrix::Trans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10954:SkMatrix::Trans_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10955:SkMatrix::Scale_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10956:SkMatrix::Scale_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10957:SkMatrix::ScaleTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10958:SkMatrix::Poly4Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10959:SkMatrix::Poly3Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10960:SkMatrix::Poly2Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10961:SkMatrix::Persp_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10962:SkMatrix::Persp_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10963:SkMatrix::Identity_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10964:SkMatrix::Identity_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10965:SkMatrix::Affine_vpts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10966:SkMaskFilterBase::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10967:SkMaskFilterBase::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10968:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29.1 +10969:SkMakePixelRefWithProc\28int\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29::PixelRef::~PixelRef\28\29.1 +10970:SkLocalMatrixShader::~SkLocalMatrixShader\28\29.1 +10971:SkLocalMatrixShader::~SkLocalMatrixShader\28\29 +10972:SkLocalMatrixShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +10973:SkLocalMatrixShader::makeAsALocalMatrixShader\28SkMatrix*\29\20const +10974:SkLocalMatrixShader::getTypeName\28\29\20const +10975:SkLocalMatrixShader::flatten\28SkWriteBuffer&\29\20const +10976:SkLocalMatrixShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10977:SkLocalMatrixShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10978:SkLinearGradient::getTypeName\28\29\20const +10979:SkLinearGradient::flatten\28SkWriteBuffer&\29\20const +10980:SkLinearGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10981:SkJSONWriter::popScope\28\29 +10982:SkJSONWriter::appendf\28char\20const*\2c\20...\29 +10983:SkIntersections::hasOppT\28double\29\20const +10984:SkImage_Raster::~SkImage_Raster\28\29.1 +10985:SkImage_Raster::onReinterpretColorSpace\28sk_sp\29\20const +10986:SkImage_Raster::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +10987:SkImage_Raster::onPeekPixels\28SkPixmap*\29\20const +10988:SkImage_Raster::onPeekMips\28\29\20const +10989:SkImage_Raster::onPeekBitmap\28\29\20const +10990:SkImage_Raster::onMakeWithMipmaps\28sk_sp\29\20const +10991:SkImage_Raster::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10992:SkImage_Raster::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10993:SkImage_Raster::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +10994:SkImage_Raster::onHasMipmaps\28\29\20const +10995:SkImage_Raster::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +10996:SkImage_Raster::notifyAddedToRasterCache\28\29\20const +10997:SkImage_Raster::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +10998:SkImage_LazyTexture::readPixelsProxy\28GrDirectContext*\2c\20SkPixmap\20const&\29\20const +10999:SkImage_LazyTexture::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11000:SkImage_Lazy::onReinterpretColorSpace\28sk_sp\29\20const +11001:SkImage_Lazy::onRefEncoded\28\29\20const +11002:SkImage_Lazy::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +11003:SkImage_Lazy::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +11004:SkImage_Lazy::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11005:SkImage_Lazy::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +11006:SkImage_Lazy::onIsProtected\28\29\20const +11007:SkImage_Lazy::isValid\28GrRecordingContext*\29\20const +11008:SkImage_Lazy::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +11009:SkImage_GaneshBase::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +11010:SkImage_GaneshBase::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11011:SkImage_GaneshBase::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +11012:SkImage_GaneshBase::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +11013:SkImage_GaneshBase::isValid\28GrRecordingContext*\29\20const +11014:SkImage_GaneshBase::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +11015:SkImage_GaneshBase::directContext\28\29\20const +11016:SkImage_Ganesh::~SkImage_Ganesh\28\29.1 +11017:SkImage_Ganesh::textureSize\28\29\20const +11018:SkImage_Ganesh::onReinterpretColorSpace\28sk_sp\29\20const +11019:SkImage_Ganesh::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +11020:SkImage_Ganesh::onIsProtected\28\29\20const +11021:SkImage_Ganesh::onHasMipmaps\28\29\20const +11022:SkImage_Ganesh::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +11023:SkImage_Ganesh::onAsyncRescaleAndReadPixelsYUV420\28SkYUVColorSpace\2c\20bool\2c\20sk_sp\2c\20SkIRect\2c\20SkISize\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +11024:SkImage_Ganesh::generatingSurfaceIsDeleted\28\29 +11025:SkImage_Ganesh::flush\28GrDirectContext*\2c\20GrFlushInfo\20const&\29\20const +11026:SkImage_Ganesh::asView\28GrRecordingContext*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29\20const +11027:SkImage_Ganesh::asFragmentProcessor\28GrRecordingContext*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29\20const +11028:SkImage_Base::onAsyncRescaleAndReadPixels\28SkImageInfo\20const&\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\2c\20void\20\28*\29\28void*\2c\20std::__2::unique_ptr>\29\2c\20void*\29\20const +11029:SkImage_Base::notifyAddedToRasterCache\28\29\20const +11030:SkImage_Base::makeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +11031:SkImage_Base::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11032:SkImage_Base::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +11033:SkImage_Base::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +11034:SkImage_Base::makeColorSpace\28skgpu::graphite::Recorder*\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +11035:SkImage_Base::makeColorSpace\28GrDirectContext*\2c\20sk_sp\29\20const +11036:SkImage_Base::isTextureBacked\28\29\20const +11037:SkImage_Base::isLazyGenerated\28\29\20const +11038:SkImageShader::~SkImageShader\28\29.1 +11039:SkImageShader::type\28\29\20const +11040:SkImageShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +11041:SkImageShader::isOpaque\28\29\20const +11042:SkImageShader::getTypeName\28\29\20const +11043:SkImageShader::flatten\28SkWriteBuffer&\29\20const +11044:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11045:SkImageGenerator::~SkImageGenerator\28\29.1 +11046:SkImageFilter::computeFastBounds\28SkRect\20const&\29\20const +11047:SkGradientBaseShader::onAsLuminanceColor\28unsigned\20int*\29\20const +11048:SkGradientBaseShader::isOpaque\28\29\20const +11049:SkGradientBaseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11050:SkGaussianColorFilter::getTypeName\28\29\20const +11051:SkGaussianColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11052:SkGammaColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +11053:SkGammaColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +11054:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29.1 +11055:SkFontStyleSet_Custom::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +11056:SkFontMgr_Custom::~SkFontMgr_Custom\28\29.1 +11057:SkFontMgr_Custom::onMatchFamily\28char\20const*\29\20const +11058:SkFontMgr_Custom::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +11059:SkFontMgr_Custom::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +11060:SkFontMgr_Custom::onMakeFromStreamArgs\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +11061:SkFontMgr_Custom::onMakeFromFile\28char\20const*\2c\20int\29\20const +11062:SkFontMgr_Custom::onMakeFromData\28sk_sp\2c\20int\29\20const +11063:SkFontMgr_Custom::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +11064:SkFontMgr_Custom::onGetFamilyName\28int\2c\20SkString*\29\20const +11065:SkFILEStream::~SkFILEStream\28\29.1 +11066:SkFILEStream::seek\28unsigned\20long\29 +11067:SkFILEStream::rewind\28\29 +11068:SkFILEStream::read\28void*\2c\20unsigned\20long\29 +11069:SkFILEStream::onFork\28\29\20const +11070:SkFILEStream::onDuplicate\28\29\20const +11071:SkFILEStream::move\28long\29 +11072:SkFILEStream::isAtEnd\28\29\20const +11073:SkFILEStream::getPosition\28\29\20const +11074:SkFILEStream::getLength\28\29\20const +11075:SkEmptyShader::getTypeName\28\29\20const +11076:SkEmptyPicture::~SkEmptyPicture\28\29 +11077:SkEmptyPicture::cullRect\28\29\20const +11078:SkEmptyPicture::approximateBytesUsed\28\29\20const +11079:SkEmptyFontMgr::onMatchFamily\28char\20const*\29\20const +11080:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +11081:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29.1 +11082:SkDynamicMemoryWStream::bytesWritten\28\29\20const +11083:SkDraw::paintMasks\28SkZip\2c\20SkPaint\20const&\29\20const +11084:SkDevice::strikeDeviceInfo\28\29\20const +11085:SkDevice::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +11086:SkDevice::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +11087:SkDevice::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20sk_sp\2c\20SkPaint\20const&\29 +11088:SkDevice::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +11089:SkDevice::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +11090:SkDevice::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11091:SkDevice::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +11092:SkDevice::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +11093:SkDevice::drawCoverageMask\28SkSpecialImage\20const*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +11094:SkDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +11095:SkDevice::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11096:SkDevice::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +11097:SkDashImpl::~SkDashImpl\28\29.1 +11098:SkDashImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +11099:SkDashImpl::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +11100:SkDashImpl::onAsADash\28SkPathEffect::DashInfo*\29\20const +11101:SkDashImpl::getTypeName\28\29\20const +11102:SkDashImpl::flatten\28SkWriteBuffer&\29\20const +11103:SkDCurve::nearPoint\28SkPath::Verb\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29\20const +11104:SkContourMeasure::~SkContourMeasure\28\29.1 +11105:SkConicalGradient::getTypeName\28\29\20const +11106:SkConicalGradient::flatten\28SkWriteBuffer&\29\20const +11107:SkConicalGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +11108:SkConicalGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +11109:SkComposeColorFilter::onIsAlphaUnchanged\28\29\20const +11110:SkComposeColorFilter::getTypeName\28\29\20const +11111:SkComposeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11112:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29.1 +11113:SkColorSpaceXformColorFilter::getTypeName\28\29\20const +11114:SkColorSpaceXformColorFilter::flatten\28SkWriteBuffer&\29\20const +11115:SkColorSpaceXformColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11116:SkColorShader::onAsLuminanceColor\28unsigned\20int*\29\20const +11117:SkColorShader::isOpaque\28\29\20const +11118:SkColorShader::getTypeName\28\29\20const +11119:SkColorShader::flatten\28SkWriteBuffer&\29\20const +11120:SkColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11121:SkColorFilterShader::~SkColorFilterShader\28\29.1 +11122:SkColorFilterShader::isOpaque\28\29\20const +11123:SkColorFilterShader::getTypeName\28\29\20const +11124:SkColorFilterShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11125:SkColorFilterBase::onFilterColor4f\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkColorSpace*\29\20const +11126:SkColor4Shader::~SkColor4Shader\28\29.1 +11127:SkColor4Shader::isOpaque\28\29\20const +11128:SkColor4Shader::getTypeName\28\29\20const +11129:SkColor4Shader::flatten\28SkWriteBuffer&\29\20const +11130:SkColor4Shader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11131:SkCoincidentSpans::setOppPtTStart\28SkOpPtT\20const*\29 +11132:SkCoincidentSpans::setOppPtTEnd\28SkOpPtT\20const*\29 +11133:SkCoincidentSpans::setCoinPtTStart\28SkOpPtT\20const*\29 +11134:SkCoincidentSpans::setCoinPtTEnd\28SkOpPtT\20const*\29 +11135:SkCanvas::~SkCanvas\28\29.1 +11136:SkCanvas::recordingContext\28\29\20const +11137:SkCanvas::recorder\28\29\20const +11138:SkCanvas::onPeekPixels\28SkPixmap*\29 +11139:SkCanvas::onNewSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +11140:SkCanvas::onImageInfo\28\29\20const +11141:SkCanvas::onGetProps\28SkSurfaceProps*\2c\20bool\29\20const +11142:SkCanvas::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +11143:SkCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +11144:SkCanvas::onDrawSlug\28sktext::gpu::Slug\20const*\29 +11145:SkCanvas::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +11146:SkCanvas::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +11147:SkCanvas::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +11148:SkCanvas::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +11149:SkCanvas::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +11150:SkCanvas::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +11151:SkCanvas::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +11152:SkCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +11153:SkCanvas::onDrawPaint\28SkPaint\20const&\29 +11154:SkCanvas::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +11155:SkCanvas::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +11156:SkCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +11157:SkCanvas::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +11158:SkCanvas::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +11159:SkCanvas::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +11160:SkCanvas::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +11161:SkCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +11162:SkCanvas::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +11163:SkCanvas::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +11164:SkCanvas::onDrawBehind\28SkPaint\20const&\29 +11165:SkCanvas::onDrawAtlas2\28SkImage\20const*\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20SkBlendMode\2c\20SkSamplingOptions\20const&\2c\20SkRect\20const*\2c\20SkPaint\20const*\29 +11166:SkCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +11167:SkCanvas::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +11168:SkCanvas::onDiscard\28\29 +11169:SkCanvas::onConvertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +11170:SkCanvas::onAccessTopLayerPixels\28SkPixmap*\29 +11171:SkCanvas::isClipRect\28\29\20const +11172:SkCanvas::isClipEmpty\28\29\20const +11173:SkCanvas::getBaseLayerSize\28\29\20const +11174:SkCachedData::~SkCachedData\28\29.1 +11175:SkCTMShader::~SkCTMShader\28\29.1 +11176:SkCTMShader::~SkCTMShader\28\29 +11177:SkCTMShader::getTypeName\28\29\20const +11178:SkCTMShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +11179:SkCTMShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11180:SkBreakIterator_client::~SkBreakIterator_client\28\29.1 +11181:SkBreakIterator_client::status\28\29 +11182:SkBreakIterator_client::setText\28char\20const*\2c\20int\29 +11183:SkBreakIterator_client::setText\28char16_t\20const*\2c\20int\29 +11184:SkBreakIterator_client::next\28\29 +11185:SkBreakIterator_client::isDone\28\29 +11186:SkBreakIterator_client::first\28\29 +11187:SkBreakIterator_client::current\28\29 +11188:SkBlurMaskFilterImpl::getTypeName\28\29\20const +11189:SkBlurMaskFilterImpl::flatten\28SkWriteBuffer&\29\20const +11190:SkBlurMaskFilterImpl::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +11191:SkBlurMaskFilterImpl::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +11192:SkBlurMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +11193:SkBlurMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +11194:SkBlurMaskFilterImpl::asImageFilter\28SkMatrix\20const&\29\20const +11195:SkBlurMaskFilterImpl::asABlur\28SkMaskFilterBase::BlurRec*\29\20const +11196:SkBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11197:SkBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +11198:SkBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11199:SkBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +11200:SkBlitter::allocBlitMemory\28unsigned\20long\29 +11201:SkBlendShader::getTypeName\28\29\20const +11202:SkBlendShader::flatten\28SkWriteBuffer&\29\20const +11203:SkBlendShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11204:SkBlendModeColorFilter::onIsAlphaUnchanged\28\29\20const +11205:SkBlendModeColorFilter::onAsAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +11206:SkBlendModeColorFilter::getTypeName\28\29\20const +11207:SkBlendModeColorFilter::flatten\28SkWriteBuffer&\29\20const +11208:SkBlendModeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11209:SkBlendModeBlender::onAppendStages\28SkStageRec\20const&\29\20const +11210:SkBlendModeBlender::getTypeName\28\29\20const +11211:SkBlendModeBlender::flatten\28SkWriteBuffer&\29\20const +11212:SkBlendModeBlender::asBlendMode\28\29\20const +11213:SkBitmapDevice::~SkBitmapDevice\28\29.1 +11214:SkBitmapDevice::snapSpecial\28SkIRect\20const&\2c\20bool\29 +11215:SkBitmapDevice::setImmutable\28\29 +11216:SkBitmapDevice::replaceClip\28SkIRect\20const&\29 +11217:SkBitmapDevice::pushClipStack\28\29 +11218:SkBitmapDevice::popClipStack\28\29 +11219:SkBitmapDevice::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +11220:SkBitmapDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +11221:SkBitmapDevice::onPeekPixels\28SkPixmap*\29 +11222:SkBitmapDevice::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkPaint\20const&\29 +11223:SkBitmapDevice::onClipShader\28sk_sp\29 +11224:SkBitmapDevice::onAccessPixels\28SkPixmap*\29 +11225:SkBitmapDevice::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +11226:SkBitmapDevice::makeSpecial\28SkImage\20const*\29 +11227:SkBitmapDevice::makeSpecial\28SkBitmap\20const&\29 +11228:SkBitmapDevice::isClipWideOpen\28\29\20const +11229:SkBitmapDevice::isClipRect\28\29\20const +11230:SkBitmapDevice::isClipEmpty\28\29\20const +11231:SkBitmapDevice::isClipAntiAliased\28\29\20const +11232:SkBitmapDevice::getRasterHandle\28\29\20const +11233:SkBitmapDevice::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +11234:SkBitmapDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11235:SkBitmapDevice::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +11236:SkBitmapDevice::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +11237:SkBitmapDevice::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +11238:SkBitmapDevice::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +11239:SkBitmapDevice::drawPaint\28SkPaint\20const&\29 +11240:SkBitmapDevice::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +11241:SkBitmapDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11242:SkBitmapDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +11243:SkBitmapDevice::devClipBounds\28\29\20const +11244:SkBitmapDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +11245:SkBitmapDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +11246:SkBitmapDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +11247:SkBitmapDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +11248:SkBitmapDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +11249:SkBitmapDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +11250:SkBitmapCache::Rec::~Rec\28\29.1 +11251:SkBitmapCache::Rec::postAddInstall\28void*\29 +11252:SkBitmapCache::Rec::getCategory\28\29\20const +11253:SkBitmapCache::Rec::canBePurged\28\29 +11254:SkBitmapCache::Rec::bytesUsed\28\29\20const +11255:SkBitmapCache::Rec::ReleaseProc\28void*\2c\20void*\29 +11256:SkBitmapCache::Rec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +11257:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29.1 +11258:SkBinaryWriteBuffer::write\28SkM44\20const&\29 +11259:SkBinaryWriteBuffer::writeTypeface\28SkTypeface*\29 +11260:SkBinaryWriteBuffer::writeString\28std::__2::basic_string_view>\29 +11261:SkBinaryWriteBuffer::writeStream\28SkStream*\2c\20unsigned\20long\29 +11262:SkBinaryWriteBuffer::writeScalar\28float\29 +11263:SkBinaryWriteBuffer::writeSampling\28SkSamplingOptions\20const&\29 +11264:SkBinaryWriteBuffer::writeRegion\28SkRegion\20const&\29 +11265:SkBinaryWriteBuffer::writeRect\28SkRect\20const&\29 +11266:SkBinaryWriteBuffer::writePoint\28SkPoint\20const&\29 +11267:SkBinaryWriteBuffer::writePointArray\28SkPoint\20const*\2c\20unsigned\20int\29 +11268:SkBinaryWriteBuffer::writePoint3\28SkPoint3\20const&\29 +11269:SkBinaryWriteBuffer::writePath\28SkPath\20const&\29 +11270:SkBinaryWriteBuffer::writePaint\28SkPaint\20const&\29 +11271:SkBinaryWriteBuffer::writePad32\28void\20const*\2c\20unsigned\20long\29 +11272:SkBinaryWriteBuffer::writeMatrix\28SkMatrix\20const&\29 +11273:SkBinaryWriteBuffer::writeImage\28SkImage\20const*\29 +11274:SkBinaryWriteBuffer::writeColor4fArray\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20unsigned\20int\29 +11275:SkBinaryWriteBuffer::writeBool\28bool\29 +11276:SkBigPicture::~SkBigPicture\28\29.1 +11277:SkBigPicture::playback\28SkCanvas*\2c\20SkPicture::AbortCallback*\29\20const +11278:SkBigPicture::cullRect\28\29\20const +11279:SkBigPicture::approximateOpCount\28bool\29\20const +11280:SkBigPicture::approximateBytesUsed\28\29\20const +11281:SkBasicEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +11282:SkBasicEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +11283:SkBasicEdgeBuilder::addQuad\28SkPoint\20const*\29 +11284:SkBasicEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +11285:SkBasicEdgeBuilder::addLine\28SkPoint\20const*\29 +11286:SkBasicEdgeBuilder::addCubic\28SkPoint\20const*\29 +11287:SkBBoxHierarchy::insert\28SkRect\20const*\2c\20SkBBoxHierarchy::Metadata\20const*\2c\20int\29 +11288:SkArenaAlloc::SkipPod\28char*\29 +11289:SkArenaAlloc::NextBlock\28char*\29 +11290:SkAnalyticEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +11291:SkAnalyticEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +11292:SkAnalyticEdgeBuilder::addQuad\28SkPoint\20const*\29 +11293:SkAnalyticEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +11294:SkAnalyticEdgeBuilder::addLine\28SkPoint\20const*\29 +11295:SkAnalyticEdgeBuilder::addCubic\28SkPoint\20const*\29 +11296:SkAAClipBlitter::~SkAAClipBlitter\28\29.1 +11297:SkAAClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11298:SkAAClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11299:SkAAClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11300:SkAAClipBlitter::blitH\28int\2c\20int\2c\20int\29 +11301:SkAAClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11302:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_1::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +11303:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_0::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +11304:SkAAClip::Builder::Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11305:SkAAClip::Builder::Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11306:SkAAClip::Builder::Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11307:SkAAClip::Builder::Blitter::blitH\28int\2c\20int\2c\20int\29 +11308:SkAAClip::Builder::Blitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11309:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29.1 +11310:SkA8_Coverage_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11311:SkA8_Coverage_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11312:SkA8_Coverage_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11313:SkA8_Coverage_Blitter::blitH\28int\2c\20int\2c\20int\29 +11314:SkA8_Coverage_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11315:SkA8_Blitter::~SkA8_Blitter\28\29.1 +11316:SkA8_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11317:SkA8_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11318:SkA8_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11319:SkA8_Blitter::blitH\28int\2c\20int\2c\20int\29 +11320:SkA8_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11321:SkA8Blitter_Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +11322:ShaderPDXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11323:ShaderPDXferProcessor::name\28\29\20const +11324:ShaderPDXferProcessor::makeProgramImpl\28\29\20const +11325:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11326:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11327:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11328:RuntimeEffectRPCallbacks::toLinearSrgb\28void\20const*\29 +11329:RuntimeEffectRPCallbacks::fromLinearSrgb\28void\20const*\29 +11330:RuntimeEffectRPCallbacks::appendShader\28int\29 +11331:RuntimeEffectRPCallbacks::appendColorFilter\28int\29 +11332:RuntimeEffectRPCallbacks::appendBlender\28int\29 +11333:RunBasedAdditiveBlitter::getRealBlitter\28bool\29 +11334:RunBasedAdditiveBlitter::flush_if_y_changed\28int\2c\20int\29 +11335:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11336:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11337:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11338:Round_Up_To_Grid +11339:Round_To_Half_Grid +11340:Round_To_Grid +11341:Round_To_Double_Grid +11342:Round_Super_45 +11343:Round_Super +11344:Round_None +11345:Round_Down_To_Grid +11346:RoundJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11347:RoundCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +11348:Read_CVT_Stretched +11349:Read_CVT +11350:Project_y +11351:Project +11352:PrePostInverseBlitterProc\28SkBlitter*\2c\20int\2c\20bool\29 +11353:PorterDuffXferProcessor::onHasSecondaryOutput\28\29\20const +11354:PorterDuffXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11355:PorterDuffXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11356:PorterDuffXferProcessor::name\28\29\20const +11357:PorterDuffXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11358:PorterDuffXferProcessor::makeProgramImpl\28\29\20const +11359:PDLCDXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +11360:PDLCDXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11361:PDLCDXferProcessor::name\28\29\20const +11362:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +11363:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11364:PDLCDXferProcessor::makeProgramImpl\28\29\20const +11365:OT::match_glyph\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11366:OT::match_coverage\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11367:OT::match_class_cached\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11368:OT::match_class_cached2\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11369:OT::match_class_cached1\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11370:OT::match_class\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11371:OT::hb_ot_apply_context_t::return_t\20OT::Layout::GSUB_impl::SubstLookup::dispatch_recurse_func\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\29 +11372:OT::hb_ot_apply_context_t::return_t\20OT::Layout::GPOS_impl::PosLookup::dispatch_recurse_func\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\29 +11373:OT::Layout::Common::RangeRecord::cmp_range\28void\20const*\2c\20void\20const*\29 +11374:OT::ColorLine::static_get_color_stops\28hb_color_line_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_color_stop_t*\2c\20void*\29 +11375:OT::ColorLine::static_get_color_stops\28hb_color_line_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20hb_color_stop_t*\2c\20void*\29 +11376:OT::CmapSubtableFormat4::accelerator_t::get_glyph_func\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +11377:Move_CVT_Stretched +11378:Move_CVT +11379:MiterJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11380:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29.1 +11381:MaskAdditiveBlitter::getWidth\28\29 +11382:MaskAdditiveBlitter::getRealBlitter\28bool\29 +11383:MaskAdditiveBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11384:MaskAdditiveBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11385:MaskAdditiveBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11386:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11387:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11388:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11389:InverseBlitter::blitH\28int\2c\20int\2c\20int\29 +11390:Horish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11391:Horish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11392:HLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11393:HLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11394:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11395:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11396:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const +11397:GrYUVtoRGBEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11398:GrYUVtoRGBEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11399:GrYUVtoRGBEffect::name\28\29\20const +11400:GrYUVtoRGBEffect::clone\28\29\20const +11401:GrXferProcessor::ProgramImpl::emitWriteSwizzle\28GrGLSLXPFragmentBuilder*\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20char\20const*\29\20const +11402:GrXferProcessor::ProgramImpl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11403:GrXferProcessor::ProgramImpl::emitBlendCodeForDstRead\28GrGLSLXPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20GrXferProcessor\20const&\29 +11404:GrWritePixelsTask::~GrWritePixelsTask\28\29.1 +11405:GrWritePixelsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11406:GrWritePixelsTask::onExecute\28GrOpFlushState*\29 +11407:GrWritePixelsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11408:GrWaitRenderTask::~GrWaitRenderTask\28\29.1 +11409:GrWaitRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +11410:GrWaitRenderTask::onExecute\28GrOpFlushState*\29 +11411:GrWaitRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11412:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29.1 +11413:GrTransferFromRenderTask::onExecute\28GrOpFlushState*\29 +11414:GrTransferFromRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11415:GrThreadSafeCache::Trampoline::~Trampoline\28\29.1 +11416:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29.1 +11417:GrTextureResolveRenderTask::onExecute\28GrOpFlushState*\29 +11418:GrTextureResolveRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11419:GrTextureEffect::~GrTextureEffect\28\29.1 +11420:GrTextureEffect::onMakeProgramImpl\28\29\20const +11421:GrTextureEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11422:GrTextureEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11423:GrTextureEffect::name\28\29\20const +11424:GrTextureEffect::clone\28\29\20const +11425:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11426:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11427:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29.1 +11428:GrTDeferredProxyUploader>::freeData\28\29 +11429:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29.1 +11430:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::freeData\28\29 +11431:GrSurfaceProxy::getUniqueKey\28\29\20const +11432:GrSurface::getResourceType\28\29\20const +11433:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29.1 +11434:GrStrokeTessellationShader::name\28\29\20const +11435:GrStrokeTessellationShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11436:GrStrokeTessellationShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11437:GrStrokeTessellationShader::Impl::~Impl\28\29.1 +11438:GrStrokeTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11439:GrStrokeTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11440:GrSkSLFP::~GrSkSLFP\28\29.1 +11441:GrSkSLFP::onMakeProgramImpl\28\29\20const +11442:GrSkSLFP::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11443:GrSkSLFP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11444:GrSkSLFP::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11445:GrSkSLFP::clone\28\29\20const +11446:GrSkSLFP::Impl::~Impl\28\29.1 +11447:GrSkSLFP::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11448:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11449:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11450:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11451:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleBlender\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11452:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::getMangledName\28char\20const*\29 +11453:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11454:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +11455:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +11456:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareFunction\28char\20const*\29 +11457:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11458:GrSimpleMesh*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29::'lambda'\28char*\29::__invoke\28char*\29 +11459:GrRingBuffer::FinishSubmit\28void*\29 +11460:GrResourceCache::CompareTimestamp\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29 +11461:GrRenderTask::disown\28GrDrawingManager*\29 +11462:GrRecordingContext::~GrRecordingContext\28\29.1 +11463:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29.1 +11464:GrRRectShadowGeoProc::onTextureSampler\28int\29\20const +11465:GrRRectShadowGeoProc::name\28\29\20const +11466:GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11467:GrRRectShadowGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11468:GrQuadEffect::name\28\29\20const +11469:GrQuadEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11470:GrQuadEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11471:GrQuadEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11472:GrQuadEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11473:GrPorterDuffXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11474:GrPorterDuffXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11475:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29.1 +11476:GrPerlinNoise2Effect::onMakeProgramImpl\28\29\20const +11477:GrPerlinNoise2Effect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11478:GrPerlinNoise2Effect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11479:GrPerlinNoise2Effect::name\28\29\20const +11480:GrPerlinNoise2Effect::clone\28\29\20const +11481:GrPerlinNoise2Effect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11482:GrPerlinNoise2Effect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11483:GrPathTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11484:GrPathTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11485:GrOpsRenderPass::onExecuteDrawable\28std::__2::unique_ptr>\29 +11486:GrOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11487:GrOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11488:GrOpFlushState::writeView\28\29\20const +11489:GrOpFlushState::usesMSAASurface\28\29\20const +11490:GrOpFlushState::tokenTracker\28\29 +11491:GrOpFlushState::threadSafeCache\28\29\20const +11492:GrOpFlushState::strikeCache\28\29\20const +11493:GrOpFlushState::sampledProxyArray\28\29 +11494:GrOpFlushState::rtProxy\28\29\20const +11495:GrOpFlushState::resourceProvider\28\29\20const +11496:GrOpFlushState::renderPassBarriers\28\29\20const +11497:GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +11498:GrOpFlushState::putBackIndirectDraws\28int\29 +11499:GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +11500:GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +11501:GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11502:GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +11503:GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11504:GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11505:GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11506:GrOpFlushState::dstProxyView\28\29\20const +11507:GrOpFlushState::colorLoadOp\28\29\20const +11508:GrOpFlushState::caps\28\29\20const +11509:GrOpFlushState::atlasManager\28\29\20const +11510:GrOpFlushState::appliedClip\28\29\20const +11511:GrOpFlushState::addInlineUpload\28std::__2::function&\29>&&\29 +11512:GrOnFlushCallbackObject::postFlush\28skgpu::AtlasToken\29 +11513:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11514:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11515:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +11516:GrModulateAtlasCoverageEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11517:GrModulateAtlasCoverageEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11518:GrModulateAtlasCoverageEffect::name\28\29\20const +11519:GrModulateAtlasCoverageEffect::clone\28\29\20const +11520:GrMeshDrawOp::onPrepare\28GrOpFlushState*\29 +11521:GrMeshDrawOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11522:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11523:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11524:GrMatrixEffect::onMakeProgramImpl\28\29\20const +11525:GrMatrixEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11526:GrMatrixEffect::name\28\29\20const +11527:GrMatrixEffect::clone\28\29\20const +11528:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +11529:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::$_0::__invoke\28void\20const*\2c\20void*\29 +11530:GrImageContext::~GrImageContext\28\29 +11531:GrHardClip::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +11532:GrGpuResource::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +11533:GrGpuBuffer::unref\28\29\20const +11534:GrGpuBuffer::getResourceType\28\29\20const +11535:GrGpuBuffer::computeScratchKey\28skgpu::ScratchKey*\29\20const +11536:GrGeometryProcessor::onTextureSampler\28int\29\20const +11537:GrGLVaryingHandler::~GrGLVaryingHandler\28\29 +11538:GrGLUniformHandler::~GrGLUniformHandler\28\29.1 +11539:GrGLUniformHandler::samplerVariable\28GrResourceHandle\29\20const +11540:GrGLUniformHandler::samplerSwizzle\28GrResourceHandle\29\20const +11541:GrGLUniformHandler::internalAddUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20bool\2c\20int\2c\20char\20const**\29 +11542:GrGLUniformHandler::getUniformCStr\28GrResourceHandle\29\20const +11543:GrGLUniformHandler::appendUniformDecls\28GrShaderFlags\2c\20SkString*\29\20const +11544:GrGLUniformHandler::addSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20GrShaderCaps\20const*\29 +11545:GrGLTextureRenderTarget::onSetLabel\28\29 +11546:GrGLTextureRenderTarget::backendFormat\28\29\20const +11547:GrGLTexture::textureParamsModified\28\29 +11548:GrGLTexture::onStealBackendTexture\28GrBackendTexture*\2c\20std::__2::function*\29 +11549:GrGLTexture::getBackendTexture\28\29\20const +11550:GrGLSemaphore::~GrGLSemaphore\28\29.1 +11551:GrGLSemaphore::setIsOwned\28\29 +11552:GrGLSemaphore::backendSemaphore\28\29\20const +11553:GrGLSLVertexBuilder::~GrGLSLVertexBuilder\28\29 +11554:GrGLSLVertexBuilder::onFinalize\28\29 +11555:GrGLSLUniformHandler::inputSamplerSwizzle\28GrResourceHandle\29\20const +11556:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +11557:GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +11558:GrGLSLFragmentShaderBuilder::forceHighPrecision\28\29 +11559:GrGLRenderTarget::getBackendRenderTarget\28\29\20const +11560:GrGLRenderTarget::completeStencilAttachment\28GrAttachment*\2c\20bool\29 +11561:GrGLRenderTarget::canAttemptStencilAttachment\28bool\29\20const +11562:GrGLRenderTarget::alwaysClearStencil\28\29\20const +11563:GrGLProgramDataManager::~GrGLProgramDataManager\28\29.1 +11564:GrGLProgramDataManager::setMatrix4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11565:GrGLProgramDataManager::setMatrix4f\28GrResourceHandle\2c\20float\20const*\29\20const +11566:GrGLProgramDataManager::setMatrix3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11567:GrGLProgramDataManager::setMatrix3f\28GrResourceHandle\2c\20float\20const*\29\20const +11568:GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11569:GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +11570:GrGLProgramDataManager::set4iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11571:GrGLProgramDataManager::set4i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +11572:GrGLProgramDataManager::set4f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\2c\20float\29\20const +11573:GrGLProgramDataManager::set3iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11574:GrGLProgramDataManager::set3i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\29\20const +11575:GrGLProgramDataManager::set3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11576:GrGLProgramDataManager::set3f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\29\20const +11577:GrGLProgramDataManager::set2iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11578:GrGLProgramDataManager::set2i\28GrResourceHandle\2c\20int\2c\20int\29\20const +11579:GrGLProgramDataManager::set2f\28GrResourceHandle\2c\20float\2c\20float\29\20const +11580:GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11581:GrGLProgramDataManager::set1i\28GrResourceHandle\2c\20int\29\20const +11582:GrGLProgramDataManager::set1fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11583:GrGLProgramDataManager::set1f\28GrResourceHandle\2c\20float\29\20const +11584:GrGLProgramBuilder::~GrGLProgramBuilder\28\29.1 +11585:GrGLProgramBuilder::varyingHandler\28\29 +11586:GrGLProgramBuilder::caps\28\29\20const +11587:GrGLProgram::~GrGLProgram\28\29.1 +11588:GrGLOpsRenderPass::~GrGLOpsRenderPass\28\29 +11589:GrGLOpsRenderPass::onSetScissorRect\28SkIRect\20const&\29 +11590:GrGLOpsRenderPass::onEnd\28\29 +11591:GrGLOpsRenderPass::onDraw\28int\2c\20int\29 +11592:GrGLOpsRenderPass::onDrawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +11593:GrGLOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11594:GrGLOpsRenderPass::onDrawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +11595:GrGLOpsRenderPass::onDrawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +11596:GrGLOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11597:GrGLOpsRenderPass::onClear\28GrScissorState\20const&\2c\20std::__2::array\29 +11598:GrGLOpsRenderPass::onClearStencilClip\28GrScissorState\20const&\2c\20bool\29 +11599:GrGLOpsRenderPass::onBindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +11600:GrGLOpsRenderPass::onBindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +11601:GrGLOpsRenderPass::onBindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +11602:GrGLOpsRenderPass::onBegin\28\29 +11603:GrGLOpsRenderPass::inlineUpload\28GrOpFlushState*\2c\20std::__2::function&\29>&\29 +11604:GrGLInterface::~GrGLInterface\28\29.1 +11605:GrGLGpu::~GrGLGpu\28\29.1 +11606:GrGLGpu::xferBarrier\28GrRenderTarget*\2c\20GrXferBarrierType\29 +11607:GrGLGpu::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +11608:GrGLGpu::willExecute\28\29 +11609:GrGLGpu::waitFence\28unsigned\20long\20long\29 +11610:GrGLGpu::submit\28GrOpsRenderPass*\29 +11611:GrGLGpu::stagingBufferManager\28\29 +11612:GrGLGpu::refPipelineBuilder\28\29 +11613:GrGLGpu::prepareTextureForCrossContextUsage\28GrTexture*\29 +11614:GrGLGpu::precompileShader\28SkData\20const&\2c\20SkData\20const&\29 +11615:GrGLGpu::pipelineBuilder\28\29 +11616:GrGLGpu::onWritePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +11617:GrGLGpu::onWrapRenderableBackendTexture\28GrBackendTexture\20const&\2c\20int\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11618:GrGLGpu::onWrapCompressedBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11619:GrGLGpu::onWrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\29 +11620:GrGLGpu::onWrapBackendRenderTarget\28GrBackendRenderTarget\20const&\29 +11621:GrGLGpu::onUpdateCompressedBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20void\20const*\2c\20unsigned\20long\29 +11622:GrGLGpu::onTransferPixelsTo\28GrTexture*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11623:GrGLGpu::onTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\29 +11624:GrGLGpu::onTransferFromBufferToBuffer\28sk_sp\2c\20unsigned\20long\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11625:GrGLGpu::onSubmitToGpu\28GrSyncCpu\29 +11626:GrGLGpu::onResolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +11627:GrGLGpu::onResetTextureBindings\28\29 +11628:GrGLGpu::onResetContext\28unsigned\20int\29 +11629:GrGLGpu::onRegenerateMipMapLevels\28GrTexture*\29 +11630:GrGLGpu::onReadPixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20unsigned\20long\29 +11631:GrGLGpu::onGetOpsRenderPass\28GrRenderTarget*\2c\20bool\2c\20GrAttachment*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const&\2c\20GrOpsRenderPass::LoadAndStoreInfo\20const&\2c\20GrOpsRenderPass::StencilLoadAndStoreInfo\20const&\2c\20skia_private::TArray\20const&\2c\20GrXferBarrierFlags\29 +11632:GrGLGpu::onDumpJSON\28SkJSONWriter*\29\20const +11633:GrGLGpu::onCreateTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Budgeted\2c\20skgpu::Protected\2c\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +11634:GrGLGpu::onCreateCompressedTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20void\20const*\2c\20unsigned\20long\29 +11635:GrGLGpu::onCreateCompressedBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\29 +11636:GrGLGpu::onCreateBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +11637:GrGLGpu::onCreateBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +11638:GrGLGpu::onCopySurface\28GrSurface*\2c\20SkIRect\20const&\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +11639:GrGLGpu::onClearBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20std::__2::array\29 +11640:GrGLGpu::makeStencilAttachment\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\29 +11641:GrGLGpu::makeSemaphore\28bool\29 +11642:GrGLGpu::makeMSAAAttachment\28SkISize\2c\20GrBackendFormat\20const&\2c\20int\2c\20skgpu::Protected\2c\20GrMemoryless\29 +11643:GrGLGpu::insertFence\28\29 +11644:GrGLGpu::getPreferredStencilFormat\28GrBackendFormat\20const&\29 +11645:GrGLGpu::finishOutstandingGpuWork\28\29 +11646:GrGLGpu::disconnect\28GrGpu::DisconnectType\29 +11647:GrGLGpu::deleteFence\28unsigned\20long\20long\29 +11648:GrGLGpu::deleteBackendTexture\28GrBackendTexture\20const&\29 +11649:GrGLGpu::compile\28GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\29 +11650:GrGLGpu::checkFinishProcs\28\29 +11651:GrGLGpu::addFinishedProc\28void\20\28*\29\28void*\29\2c\20void*\29 +11652:GrGLGpu::ProgramCache::~ProgramCache\28\29.1 +11653:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\2c\20unsigned\20int\2c\20float\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\29::__invoke\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20float\29 +11654:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\29::'lambda'\28void\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29::__invoke\28void\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +11655:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\2c\20float\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\2c\20float\29 +11656:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\2c\20float\2c\20float\29 +11657:GrGLFunction::GrGLFunction\28void\20\28*\29\28int\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20int\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20int\2c\20float\2c\20float\29 +11658:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\2c\20float\2c\20float\2c\20float\29\29::'lambda'\28void\20const*\2c\20float\2c\20float\2c\20float\2c\20float\29::__invoke\28void\20const*\2c\20float\2c\20float\2c\20float\2c\20float\29 +11659:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\29\29::'lambda'\28void\20const*\2c\20float\29::__invoke\28void\20const*\2c\20float\29 +11660:GrGLFunction::GrGLFunction\28void\20\28*\29\28__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29\29::'lambda'\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29::__invoke\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29 +11661:GrGLFunction::GrGLFunction\28void\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11662:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29\29::'lambda'\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29::__invoke\28void\20const*\2c\20__GLsync*\2c\20unsigned\20int\2c\20unsigned\20long\20long\29 +11663:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11664:GrGLContext::~GrGLContext\28\29 +11665:GrGLCaps::~GrGLCaps\28\29.1 +11666:GrGLCaps::surfaceSupportsReadPixels\28GrSurface\20const*\29\20const +11667:GrGLCaps::supportedWritePixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11668:GrGLCaps::onSurfaceSupportsWritePixels\28GrSurface\20const*\29\20const +11669:GrGLCaps::onSupportsDynamicMSAA\28GrRenderTargetProxy\20const*\29\20const +11670:GrGLCaps::onSupportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11671:GrGLCaps::onIsWindowRectanglesSupportedForRT\28GrBackendRenderTarget\20const&\29\20const +11672:GrGLCaps::onGetReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11673:GrGLCaps::onGetDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\29\20const +11674:GrGLCaps::onGetDefaultBackendFormat\28GrColorType\29\20const +11675:GrGLCaps::onDumpJSON\28SkJSONWriter*\29\20const +11676:GrGLCaps::onCanCopySurface\28GrSurfaceProxy\20const*\2c\20SkIRect\20const&\2c\20GrSurfaceProxy\20const*\2c\20SkIRect\20const&\29\20const +11677:GrGLCaps::onAreColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +11678:GrGLCaps::onApplyOptionsOverrides\28GrContextOptions\20const&\29 +11679:GrGLCaps::maxRenderTargetSampleCount\28GrBackendFormat\20const&\29\20const +11680:GrGLCaps::makeDesc\28GrRenderTarget*\2c\20GrProgramInfo\20const&\2c\20GrCaps::ProgramDescOverrideFlags\29\20const +11681:GrGLCaps::isFormatTexturable\28GrBackendFormat\20const&\2c\20GrTextureType\29\20const +11682:GrGLCaps::isFormatSRGB\28GrBackendFormat\20const&\29\20const +11683:GrGLCaps::isFormatRenderable\28GrBackendFormat\20const&\2c\20int\29\20const +11684:GrGLCaps::isFormatCopyable\28GrBackendFormat\20const&\29\20const +11685:GrGLCaps::isFormatAsColorTypeRenderable\28GrColorType\2c\20GrBackendFormat\20const&\2c\20int\29\20const +11686:GrGLCaps::getWriteSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11687:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrBackendFormat\20const&\29\20const +11688:GrGLCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11689:GrGLCaps::getBackendFormatFromCompressionType\28SkTextureCompressionType\29\20const +11690:GrGLCaps::computeFormatKey\28GrBackendFormat\20const&\29\20const +11691:GrGLBuffer::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11692:GrGLBuffer::onUpdateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +11693:GrGLBuffer::onUnmap\28GrGpuBuffer::MapType\29 +11694:GrGLBuffer::onSetLabel\28\29 +11695:GrGLBuffer::onRelease\28\29 +11696:GrGLBuffer::onMap\28GrGpuBuffer::MapType\29 +11697:GrGLBuffer::onClearToZero\28\29 +11698:GrGLBuffer::onAbandon\28\29 +11699:GrGLBackendTextureData::~GrGLBackendTextureData\28\29.1 +11700:GrGLBackendTextureData::~GrGLBackendTextureData\28\29 +11701:GrGLBackendTextureData::isSameTexture\28GrBackendTextureData\20const*\29\20const +11702:GrGLBackendTextureData::getBackendFormat\28\29\20const +11703:GrGLBackendTextureData::equal\28GrBackendTextureData\20const*\29\20const +11704:GrGLBackendTextureData::copyTo\28SkAnySubclass&\29\20const +11705:GrGLBackendRenderTargetData::isProtected\28\29\20const +11706:GrGLBackendRenderTargetData::getBackendFormat\28\29\20const +11707:GrGLBackendRenderTargetData::equal\28GrBackendRenderTargetData\20const*\29\20const +11708:GrGLBackendRenderTargetData::copyTo\28SkAnySubclass&\29\20const +11709:GrGLBackendFormatData::toString\28\29\20const +11710:GrGLBackendFormatData::stencilBits\28\29\20const +11711:GrGLBackendFormatData::equal\28GrBackendFormatData\20const*\29\20const +11712:GrGLBackendFormatData::desc\28\29\20const +11713:GrGLBackendFormatData::copyTo\28SkAnySubclass&\29\20const +11714:GrGLBackendFormatData::compressionType\28\29\20const +11715:GrGLBackendFormatData::channelMask\28\29\20const +11716:GrGLBackendFormatData::bytesPerBlock\28\29\20const +11717:GrGLAttachment::~GrGLAttachment\28\29 +11718:GrGLAttachment::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11719:GrGLAttachment::onSetLabel\28\29 +11720:GrGLAttachment::onRelease\28\29 +11721:GrGLAttachment::onAbandon\28\29 +11722:GrGLAttachment::backendFormat\28\29\20const +11723:GrFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11724:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11725:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +11726:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11727:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11728:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::name\28\29\20const +11729:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11730:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::clone\28\29\20const +11731:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11732:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const +11733:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::name\28\29\20const +11734:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::clone\28\29\20const +11735:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11736:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const +11737:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::name\28\29\20const +11738:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::clone\28\29\20const +11739:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11740:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const +11741:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::name\28\29\20const +11742:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11743:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::clone\28\29\20const +11744:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11745:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const +11746:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::name\28\29\20const +11747:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11748:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +11749:GrFixedClip::~GrFixedClip\28\29.1 +11750:GrFixedClip::~GrFixedClip\28\29 +11751:GrFixedClip::getConservativeBounds\28\29\20const +11752:GrExternalTextureGenerator::onGenerateTexture\28GrRecordingContext*\2c\20SkImageInfo\20const&\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +11753:GrDynamicAtlas::~GrDynamicAtlas\28\29.1 +11754:GrDrawOp::usesStencil\28\29\20const +11755:GrDrawOp::usesMSAA\28\29\20const +11756:GrDrawOp::fixedFunctionFlags\28\29\20const +11757:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29.1 +11758:GrDistanceFieldPathGeoProc::onTextureSampler\28int\29\20const +11759:GrDistanceFieldPathGeoProc::name\28\29\20const +11760:GrDistanceFieldPathGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11761:GrDistanceFieldPathGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11762:GrDistanceFieldPathGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11763:GrDistanceFieldPathGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11764:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29.1 +11765:GrDistanceFieldLCDTextGeoProc::name\28\29\20const +11766:GrDistanceFieldLCDTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11767:GrDistanceFieldLCDTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11768:GrDistanceFieldLCDTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11769:GrDistanceFieldLCDTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11770:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +11771:GrDistanceFieldA8TextGeoProc::name\28\29\20const +11772:GrDistanceFieldA8TextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11773:GrDistanceFieldA8TextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11774:GrDistanceFieldA8TextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11775:GrDistanceFieldA8TextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11776:GrDisableColorXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11777:GrDisableColorXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11778:GrDirectContext::~GrDirectContext\28\29.1 +11779:GrDirectContext::init\28\29 +11780:GrDirectContext::abandonContext\28\29 +11781:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29.1 +11782:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29.1 +11783:GrCpuVertexAllocator::unlock\28int\29 +11784:GrCpuVertexAllocator::lock\28unsigned\20long\2c\20int\29 +11785:GrCpuBuffer::unref\28\29\20const +11786:GrCpuBuffer::ref\28\29\20const +11787:GrCoverageSetOpXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11788:GrCoverageSetOpXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11789:GrCopyRenderTask::~GrCopyRenderTask\28\29.1 +11790:GrCopyRenderTask::onMakeSkippable\28\29 +11791:GrCopyRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11792:GrCopyRenderTask::onExecute\28GrOpFlushState*\29 +11793:GrCopyRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11794:GrConvexPolyEffect::~GrConvexPolyEffect\28\29 +11795:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11796:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11797:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const +11798:GrConvexPolyEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11799:GrConvexPolyEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11800:GrConvexPolyEffect::name\28\29\20const +11801:GrConvexPolyEffect::clone\28\29\20const +11802:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29.1 +11803:GrContextThreadSafeProxy::isValidCharacterizationForVulkan\28sk_sp\2c\20bool\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20bool\2c\20bool\29 +11804:GrConicEffect::name\28\29\20const +11805:GrConicEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11806:GrConicEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11807:GrConicEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11808:GrConicEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11809:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +11810:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11811:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11812:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const +11813:GrColorSpaceXformEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11814:GrColorSpaceXformEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11815:GrColorSpaceXformEffect::name\28\29\20const +11816:GrColorSpaceXformEffect::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11817:GrColorSpaceXformEffect::clone\28\29\20const +11818:GrCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11819:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29.1 +11820:GrBitmapTextGeoProc::onTextureSampler\28int\29\20const +11821:GrBitmapTextGeoProc::name\28\29\20const +11822:GrBitmapTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11823:GrBitmapTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11824:GrBitmapTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11825:GrBitmapTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11826:GrBicubicEffect::onMakeProgramImpl\28\29\20const +11827:GrBicubicEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11828:GrBicubicEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11829:GrBicubicEffect::name\28\29\20const +11830:GrBicubicEffect::clone\28\29\20const +11831:GrBicubicEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11832:GrBicubicEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11833:GrAttachment::onGpuMemorySize\28\29\20const +11834:GrAttachment::getResourceType\28\29\20const +11835:GrAttachment::computeScratchKey\28skgpu::ScratchKey*\29\20const +11836:GrAtlasManager::~GrAtlasManager\28\29.1 +11837:GrAtlasManager::postFlush\28skgpu::AtlasToken\29 +11838:GrAATriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +11839:FontMgrRunIterator::~FontMgrRunIterator\28\29.1 +11840:FontMgrRunIterator::consume\28\29 +11841:EllipticalRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11842:EllipticalRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11843:EllipticalRRectOp::name\28\29\20const +11844:EllipticalRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11845:EllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11846:EllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11847:EllipseOp::name\28\29\20const +11848:EllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11849:EllipseGeometryProcessor::name\28\29\20const +11850:EllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11851:EllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11852:EllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11853:Dual_Project +11854:DisableColorXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11855:DisableColorXP::name\28\29\20const +11856:DisableColorXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11857:DisableColorXP::makeProgramImpl\28\29\20const +11858:Direct_Move_Y +11859:Direct_Move_X +11860:Direct_Move_Orig_Y +11861:Direct_Move_Orig_X +11862:Direct_Move_Orig +11863:Direct_Move +11864:DefaultGeoProc::name\28\29\20const +11865:DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11866:DefaultGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11867:DefaultGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11868:DefaultGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11869:DIEllipseOp::~DIEllipseOp\28\29.1 +11870:DIEllipseOp::visitProxies\28std::__2::function\20const&\29\20const +11871:DIEllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11872:DIEllipseOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11873:DIEllipseOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11874:DIEllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11875:DIEllipseOp::name\28\29\20const +11876:DIEllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11877:DIEllipseGeometryProcessor::name\28\29\20const +11878:DIEllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11879:DIEllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11880:DIEllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11881:CustomXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11882:CustomXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11883:CustomXP::xferBarrierType\28GrCaps\20const&\29\20const +11884:CustomXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11885:CustomXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11886:CustomXP::name\28\29\20const +11887:CustomXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11888:CustomXP::makeProgramImpl\28\29\20const +11889:Current_Ppem_Stretched +11890:Current_Ppem +11891:Cr_z_zcalloc +11892:CoverageSetOpXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11893:CoverageSetOpXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11894:CoverageSetOpXP::name\28\29\20const +11895:CoverageSetOpXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11896:CoverageSetOpXP::makeProgramImpl\28\29\20const +11897:ColorTableEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11898:ColorTableEffect::onMakeProgramImpl\28\29\20const +11899:ColorTableEffect::name\28\29\20const +11900:ColorTableEffect::clone\28\29\20const +11901:CircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +11902:CircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11903:CircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11904:CircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11905:CircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11906:CircularRRectOp::name\28\29\20const +11907:CircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11908:CircleOp::~CircleOp\28\29.1 +11909:CircleOp::visitProxies\28std::__2::function\20const&\29\20const +11910:CircleOp::programInfo\28\29 +11911:CircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11912:CircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11913:CircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11914:CircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11915:CircleOp::name\28\29\20const +11916:CircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11917:CircleGeometryProcessor::name\28\29\20const +11918:CircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11919:CircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11920:CircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11921:ButtCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +11922:ButtCapDashedCircleOp::visitProxies\28std::__2::function\20const&\29\20const +11923:ButtCapDashedCircleOp::programInfo\28\29 +11924:ButtCapDashedCircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11925:ButtCapDashedCircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11926:ButtCapDashedCircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11927:ButtCapDashedCircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11928:ButtCapDashedCircleOp::name\28\29\20const +11929:ButtCapDashedCircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11930:ButtCapDashedCircleGeometryProcessor::name\28\29\20const +11931:ButtCapDashedCircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11932:ButtCapDashedCircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11933:ButtCapDashedCircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11934:BluntJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11935:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11936:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11937:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +11938:BlendFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11939:BlendFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11940:BlendFragmentProcessor::name\28\29\20const +11941:BlendFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11942:BlendFragmentProcessor::clone\28\29\20const +11943:$_3::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +11944:$_2::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 +11945:$_1::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +11946:$_0::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 diff --git a/canvaskit/skwasm.wasm b/canvaskit/skwasm.wasm new file mode 100644 index 000000000..94bfb1463 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 000000000..201afe538 --- /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:f=>(0,eval)(fs.readFileSync(f,"utf8")+"//# sourceURL="+f),postMessage:msg=>parentPort.postMessage(msg),performance:global.performance||{now:Date.now}})}var initializedJS=false;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]=(...args)=>{postMessage({cmd:"callHandler",handler:handler,args:args})}}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,/*isMainBrowserThread=*/0,/*isMainRuntimeThread=*/0,/*canBlock=*/1);Module["__emscripten_thread_mailbox_await"](e.data.pthread_ptr);Module["establishStackSpace"]();Module["PThread"].receiveObjectTransfer(e.data);Module["PThread"].threadInitTLS();if(!initializedJS){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==="checkMailbox"){if(initializedJS){Module["checkMailbox"]()}}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-16x16.png b/favicon-16x16.png similarity index 100% rename from web/favicon-16x16.png rename to favicon-16x16.png diff --git a/web/favicon-32x32.png b/favicon-32x32.png similarity index 100% rename from web/favicon-32x32.png rename to favicon-32x32.png diff --git a/web/favicon.ico b/favicon.ico similarity index 100% rename from web/favicon.ico rename to favicon.ico diff --git a/flutter.js b/flutter.js new file mode 100644 index 000000000..4a39079e5 --- /dev/null +++ b/flutter.js @@ -0,0 +1,4 @@ +(()=>{var a=window._flutter;a||(a=window._flutter={});a.loader=null;(function(){"use strict";let l=p(u());function u(){let n=document.querySelector("base");return n&&n.getAttribute("href")||""}function p(n){return n==""||n.endsWith("/")?n:`${n}/`}async function d(n,e,r){if(e<0)return n;let t,i=new Promise((o,s)=>{t=setTimeout(()=>{s(new Error(`${r} took more than ${e}ms to resolve. Moving on.`,{cause:d}))},e)});return Promise.race([n,i]).finally(()=>{clearTimeout(t)})}class y{constructor(e,r="flutter-js"){let t=e||[/\.js$/];window.trustedTypes&&(this.policy=trustedTypes.createPolicy(r,{createScriptURL:function(i){let o=new URL(i,window.location),s=o.pathname.split("/").pop();if(t.some(w=>w.test(s)))return o.toString();console.error("URL rejected by TrustedTypes policy",r,":",i,"(download prevented)")}}))}}class g{setTrustedTypesPolicy(e){this._ttPolicy=e}loadServiceWorker(e){if(e==null)return console.debug("Null serviceWorker configuration. Skipping."),Promise.resolve();if(!("serviceWorker"in navigator)){let c="Service Worker API unavailable.";return window.isSecureContext||(c+=` +The current context is NOT secure.`,c+=` +Read more: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts`),Promise.reject(new Error(c))}let{serviceWorkerVersion:r,serviceWorkerUrl:t=`${l}flutter_service_worker.js?v=${r}`,timeoutMillis:i=4e3}=e,o=t;this._ttPolicy!=null&&(o=this._ttPolicy.createScriptURL(o));let s=navigator.serviceWorker.register(o).then(c=>this._getNewServiceWorker(c,r)).then(this._waitForServiceWorkerActivation);return d(s,i,"prepareServiceWorker")}async _getNewServiceWorker(e,r){if(!e.active&&(e.installing||e.waiting))return console.debug("Installing/Activating first service worker."),e.installing||e.waiting;if(e.active.scriptURL.endsWith(r))return console.debug("Loading from existing service worker."),e.active;{let t=await e.update();return console.debug("Updating service worker."),t.installing||t.waiting||t.active}}async _waitForServiceWorkerActivation(e){if(!e||e.state=="activated")if(e){console.debug("Service worker already active.");return}else throw new Error("Cannot activate a null service worker!");return new Promise((r,t)=>{e.addEventListener("statechange",()=>{e.state=="activated"&&(console.debug("Activated new service worker."),r())})})}}class f{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(e){this._ttPolicy=e}async loadEntrypoint(e){let{entrypointUrl:r=`${l}main.dart.js`,onEntrypointLoaded:t,nonce:i}=e||{};return this._loadEntrypoint(r,t,i)}didCreateEngineInitializer(e){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(e),this._didCreateEngineInitializerResolve=null,delete a.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(e)}_loadEntrypoint(e,r,t){let i=typeof r=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let o=this._createScriptTag(e,t);if(i)console.debug("Injecting diff --git a/ios/.gitignore b/ios/.gitignore deleted file mode 100644 index 7a7f9873a..000000000 --- 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/ExportOptions.plist b/ios/ExportOptions.plist deleted file mode 100644 index c153e169e..000000000 --- a/ios/ExportOptions.plist +++ /dev/null @@ -1,17 +0,0 @@ - - - - - method - app-store - teamID - M5APZD5CKA - signingStyle - manual - provisioningProfiles - - life.mysit.SITLife - eb8b1f5f-3329-42a5-a18f-8254a2e85b41 - - - diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist deleted file mode 100644 index 7c5696400..000000000 --- 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 - 12.0 - - diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig deleted file mode 100644 index ec97fc6f3..000000000 --- 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 c4855bfe2..000000000 --- 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/Gemfile b/ios/Gemfile deleted file mode 100644 index 7a118b49b..000000000 --- a/ios/Gemfile +++ /dev/null @@ -1,3 +0,0 @@ -source "https://rubygems.org" - -gem "fastlane" diff --git a/ios/Podfile b/ios/Podfile deleted file mode 100644 index dc00e7ab0..000000000 --- a/ios/Podfile +++ /dev/null @@ -1,51 +0,0 @@ -# Uncomment this line to define a global platform for your project -platform :ios, '12.0' - -# CocoaPods analytics sends network stats synchronously affecting flutter build latency. -ENV['COCOAPODS_DISABLE_STATS'] = 'true' - -project 'Runner', { - 'Debug' => :debug, - 'Profile' => :release, - 'Release' => :release, -} - -def flutter_root - generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', '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) - # https://github.com/CocoaPods/CocoaPods/issues/12012 - target.build_configurations.each do |config| - xcconfig_path = config.base_configuration_reference.real_path - xcconfig = File.read(xcconfig_path) - xcconfig_mod = xcconfig.gsub(/DT_TOOLCHAIN_DIR/, "TOOLCHAIN_DIR") - File.open(xcconfig_path, "w") { |file| file << xcconfig_mod } - config.build_settings['CODE_SIGNING_REQUIRED'] = "NO" - config.build_settings['CODE_SIGNING_ALLOWED'] = "NO" - config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0' - end - end -end diff --git a/ios/Podfile.lock b/ios/Podfile.lock deleted file mode 100644 index cf6c937fe..000000000 --- a/ios/Podfile.lock +++ /dev/null @@ -1,332 +0,0 @@ -PODS: - - add_2_calendar (0.0.1): - - Flutter - - app_links (0.0.1): - - Flutter - - app_settings (5.1.1): - - Flutter - - audio_session (0.0.1): - - Flutter - - connectivity_plus (0.0.1): - - Flutter - - FlutterMacOS - - device_info_plus (0.0.1): - - Flutter - - 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 - - fk_user_agent (2.0.0): - - Flutter - - Flutter (1.0.0) - - flutter_image_compress_common (1.0.0): - - Flutter - - Mantle - - SDWebImage - - SDWebImageWebPCoder - - GoogleDataTransport (9.4.1): - - GoogleUtilities/Environment (~> 7.7) - - nanopb (< 2.30911.0, >= 2.30908.0) - - PromisesObjC (< 3.0, >= 1.2) - - GoogleMLKit/BarcodeScanning (6.0.0): - - GoogleMLKit/MLKitCore - - MLKitBarcodeScanning (~> 5.0.0) - - GoogleMLKit/MLKitCore (6.0.0): - - MLKitCommon (~> 11.0.0) - - GoogleToolboxForMac/Defines (4.2.1) - - GoogleToolboxForMac/Logger (4.2.1): - - GoogleToolboxForMac/Defines (= 4.2.1) - - "GoogleToolboxForMac/NSData+zlib (4.2.1)": - - GoogleToolboxForMac/Defines (= 4.2.1) - - GoogleUtilities/Environment (7.13.0): - - GoogleUtilities/Privacy - - PromisesObjC (< 3.0, >= 1.2) - - GoogleUtilities/Logger (7.13.0): - - GoogleUtilities/Environment - - GoogleUtilities/Privacy - - GoogleUtilities/Privacy (7.13.0) - - GoogleUtilities/UserDefaults (7.13.0): - - GoogleUtilities/Logger - - GoogleUtilities/Privacy - - GoogleUtilitiesComponents (1.1.0): - - GoogleUtilities/Logger - - GTMSessionFetcher/Core (3.4.1) - - image_picker_ios (0.0.1): - - Flutter - - irondash_engine_context (0.0.1): - - Flutter - - just_audio (0.0.1): - - Flutter - - libwebp (1.3.2): - - libwebp/demux (= 1.3.2) - - libwebp/mux (= 1.3.2) - - libwebp/sharpyuv (= 1.3.2) - - libwebp/webp (= 1.3.2) - - libwebp/demux (1.3.2): - - libwebp/webp - - libwebp/mux (1.3.2): - - libwebp/demux - - libwebp/sharpyuv (1.3.2) - - libwebp/webp (1.3.2): - - libwebp/sharpyuv - - Mantle (2.2.0): - - Mantle/extobjc (= 2.2.0) - - Mantle/extobjc (2.2.0) - - MLImage (1.0.0-beta5) - - MLKitBarcodeScanning (5.0.0): - - MLKitCommon (~> 11.0) - - MLKitVision (~> 7.0) - - MLKitCommon (11.0.0): - - GoogleDataTransport (< 10.0, >= 9.4.1) - - GoogleToolboxForMac/Logger (< 5.0, >= 4.2.1) - - "GoogleToolboxForMac/NSData+zlib (< 5.0, >= 4.2.1)" - - GoogleUtilities/UserDefaults (< 8.0, >= 7.13.0) - - GoogleUtilitiesComponents (~> 1.0) - - GTMSessionFetcher/Core (< 4.0, >= 3.3.2) - - MLKitVision (7.0.0): - - GoogleToolboxForMac/Logger (< 5.0, >= 4.2.1) - - "GoogleToolboxForMac/NSData+zlib (< 5.0, >= 4.2.1)" - - GTMSessionFetcher/Core (< 4.0, >= 3.3.2) - - MLImage (= 1.0.0-beta5) - - MLKitCommon (~> 11.0) - - mobile_scanner (5.0.0): - - Flutter - - GoogleMLKit/BarcodeScanning (~> 6.0.0) - - nanopb (2.30910.0): - - nanopb/decode (= 2.30910.0) - - nanopb/encode (= 2.30910.0) - - nanopb/decode (2.30910.0) - - nanopb/encode (2.30910.0) - - open_file (0.0.1): - - Flutter - - package_info_plus (0.4.5): - - Flutter - - path_provider_foundation (0.0.1): - - Flutter - - FlutterMacOS - - permission_handler_apple (9.3.0): - - Flutter - - PromisesObjC (2.4.0) - - quick_actions_ios (0.0.1): - - Flutter - - SDWebImage (5.18.0): - - SDWebImage/Core (= 5.18.0) - - SDWebImage/Core (5.18.0) - - SDWebImageWebPCoder (0.14.5): - - libwebp (~> 1.0) - - SDWebImage/Core (~> 5.17) - - share_plus (0.0.1): - - Flutter - - shared_preferences_foundation (0.0.1): - - Flutter - - FlutterMacOS - - sqflite (0.0.3): - - Flutter - - FlutterMacOS - - super_native_extensions (0.0.1): - - Flutter - - SwiftyGif (5.4.4) - - url_launcher_ios (0.0.1): - - Flutter - - vibration (1.7.5): - - Flutter - - video_player_avfoundation (0.0.1): - - Flutter - - FlutterMacOS - - wakelock_plus (0.0.1): - - Flutter - - webview_flutter_wkwebview (0.0.1): - - Flutter - -DEPENDENCIES: - - add_2_calendar (from `.symlinks/plugins/add_2_calendar/ios`) - - app_links (from `.symlinks/plugins/app_links/ios`) - - app_settings (from `.symlinks/plugins/app_settings/ios`) - - audio_session (from `.symlinks/plugins/audio_session/ios`) - - connectivity_plus (from `.symlinks/plugins/connectivity_plus/darwin`) - - device_info_plus (from `.symlinks/plugins/device_info_plus/ios`) - - file_picker (from `.symlinks/plugins/file_picker/ios`) - - fk_user_agent (from `.symlinks/plugins/fk_user_agent/ios`) - - Flutter (from `Flutter`) - - flutter_image_compress_common (from `.symlinks/plugins/flutter_image_compress_common/ios`) - - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) - - irondash_engine_context (from `.symlinks/plugins/irondash_engine_context/ios`) - - just_audio (from `.symlinks/plugins/just_audio/ios`) - - mobile_scanner (from `.symlinks/plugins/mobile_scanner/ios`) - - open_file (from `.symlinks/plugins/open_file/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`) - - quick_actions_ios (from `.symlinks/plugins/quick_actions_ios/ios`) - - share_plus (from `.symlinks/plugins/share_plus/ios`) - - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) - - sqflite (from `.symlinks/plugins/sqflite/darwin`) - - super_native_extensions (from `.symlinks/plugins/super_native_extensions/ios`) - - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) - - vibration (from `.symlinks/plugins/vibration/ios`) - - video_player_avfoundation (from `.symlinks/plugins/video_player_avfoundation/darwin`) - - wakelock_plus (from `.symlinks/plugins/wakelock_plus/ios`) - - webview_flutter_wkwebview (from `.symlinks/plugins/webview_flutter_wkwebview/ios`) - -SPEC REPOS: - trunk: - - DKImagePickerController - - DKPhotoGallery - - GoogleDataTransport - - GoogleMLKit - - GoogleToolboxForMac - - GoogleUtilities - - GoogleUtilitiesComponents - - GTMSessionFetcher - - libwebp - - Mantle - - MLImage - - MLKitBarcodeScanning - - MLKitCommon - - MLKitVision - - nanopb - - PromisesObjC - - SDWebImage - - SDWebImageWebPCoder - - SwiftyGif - -EXTERNAL SOURCES: - add_2_calendar: - :path: ".symlinks/plugins/add_2_calendar/ios" - app_links: - :path: ".symlinks/plugins/app_links/ios" - app_settings: - :path: ".symlinks/plugins/app_settings/ios" - audio_session: - :path: ".symlinks/plugins/audio_session/ios" - connectivity_plus: - :path: ".symlinks/plugins/connectivity_plus/darwin" - device_info_plus: - :path: ".symlinks/plugins/device_info_plus/ios" - file_picker: - :path: ".symlinks/plugins/file_picker/ios" - fk_user_agent: - :path: ".symlinks/plugins/fk_user_agent/ios" - Flutter: - :path: Flutter - flutter_image_compress_common: - :path: ".symlinks/plugins/flutter_image_compress_common/ios" - image_picker_ios: - :path: ".symlinks/plugins/image_picker_ios/ios" - irondash_engine_context: - :path: ".symlinks/plugins/irondash_engine_context/ios" - just_audio: - :path: ".symlinks/plugins/just_audio/ios" - mobile_scanner: - :path: ".symlinks/plugins/mobile_scanner/ios" - open_file: - :path: ".symlinks/plugins/open_file/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" - quick_actions_ios: - :path: ".symlinks/plugins/quick_actions_ios/ios" - share_plus: - :path: ".symlinks/plugins/share_plus/ios" - shared_preferences_foundation: - :path: ".symlinks/plugins/shared_preferences_foundation/darwin" - sqflite: - :path: ".symlinks/plugins/sqflite/darwin" - super_native_extensions: - :path: ".symlinks/plugins/super_native_extensions/ios" - url_launcher_ios: - :path: ".symlinks/plugins/url_launcher_ios/ios" - vibration: - :path: ".symlinks/plugins/vibration/ios" - video_player_avfoundation: - :path: ".symlinks/plugins/video_player_avfoundation/darwin" - wakelock_plus: - :path: ".symlinks/plugins/wakelock_plus/ios" - webview_flutter_wkwebview: - :path: ".symlinks/plugins/webview_flutter_wkwebview/ios" - -SPEC CHECKSUMS: - add_2_calendar: 5eee66d5a3b99cd5e1487a7e03abd4e3ac4aff11 - app_links: e70ca16b4b0f88253b3b3660200d4a10b4ea9795 - app_settings: 017320c6a680cdc94c799949d95b84cb69389ebc - audio_session: 088d2483ebd1dc43f51d253d4a1c517d9a2e7207 - connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db - device_info_plus: 97af1d7e84681a90d0693e63169a5d50e0839a0d - DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac - DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 - file_picker: 09aa5ec1ab24135ccd7a1621c46c84134bfd6655 - fk_user_agent: 1f47ec39291e8372b1d692b50084b0d54103c545 - Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 - flutter_image_compress_common: ec1d45c362c9d30a3f6a0426c297f47c52007e3e - GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a - GoogleMLKit: 97ac7af399057e99182ee8edfa8249e3226a4065 - GoogleToolboxForMac: d1a2cbf009c453f4d6ded37c105e2f67a32206d8 - GoogleUtilities: d053d902a8edaa9904e1bd00c37535385b8ed152 - GoogleUtilitiesComponents: 679b2c881db3b615a2777504623df6122dd20afe - GTMSessionFetcher: 8000756fc1c19d2e5697b90311f7832d2e33f6cd - image_picker_ios: b545a5f16c0fa88e3ecbbce3ed4de45567a8ec18 - irondash_engine_context: 3458bf979b90d616ffb8ae03a150bafe2e860cc9 - just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa - libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009 - Mantle: c5aa8794a29a022dfbbfc9799af95f477a69b62d - MLImage: 1824212150da33ef225fbd3dc49f184cf611046c - MLKitBarcodeScanning: 10ca0845a6d15f2f6e911f682a1998b68b973e8b - MLKitCommon: afec63980417d29ffbb4790529a1b0a2291699e1 - MLKitVision: e858c5f125ecc288e4a31127928301eaba9ae0c1 - mobile_scanner: 43a31484164e3a7f816c15765d5bf88bc35ff942 - nanopb: 438bc412db1928dac798aa6fd75726007be04262 - open_file: 02eb5cb6b21264bd3a696876f5afbfb7ca4f4b7d - package_info_plus: 58f0028419748fad15bf008b270aaa8e54380b1c - path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c - permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2 - PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 - quick_actions_ios: d24571db7345d2e48d094db8d077a015a568002d - SDWebImage: 182830bcddc30cde95fbc60dfe4badc3553d94ba - SDWebImageWebPCoder: c94f09adbca681822edad9e532ac752db713eabf - share_plus: 8875f4f2500512ea181eef553c3e27dba5135aad - shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695 - sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec - super_native_extensions: 4916b3c627a9c7fffdc48a23a9eca0b1ac228fa7 - SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f - url_launcher_ios: 6116280ddcfe98ab8820085d8d76ae7449447586 - vibration: 7d883d141656a1c1a6d8d238616b2042a51a1241 - video_player_avfoundation: 2b4384f3b157206b5e150a0083cdc0c905d260d3 - wakelock_plus: 78ec7c5b202cab7761af8e2b2b3d0671be6c4ae1 - webview_flutter_wkwebview: be0f0d33777f1bfd0c9fdcb594786704dbf65f36 - -PODFILE CHECKSUM: 2dd2fa37aad0529d8a419ffb4dbab67a5a6dd9b9 - -COCOAPODS: 1.15.2 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index fcb0edaf8..000000000 --- a/ios/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,623 +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 */; }; - 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 */; }; - EA915BBF27B52FC0003004DD /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = EA915BC127B52FC0003004DD /* InfoPlist.strings */; }; - F50330E48F3AE3E0400D160C /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 11DB5EC50A928A20CBD3F2E8 /* Pods_Runner.framework */; }; -/* 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 */ - 11DB5EC50A928A20CBD3F2E8 /* 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 = ""; }; - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 4D53D58D2ADC321E00255A67 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; }; - 53E1F9106D320232BBE160D0 /* 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 = ""; }; - 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 = ""; }; - 89872809EE6E03F14F4DDD73 /* 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 = ""; }; - A4B337E0717EC4077C02BECA /* 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 = ""; }; - EA915BC027B52FC0003004DD /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; - EA915BC227B53039003004DD /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/InfoPlist.strings"; sourceTree = ""; }; - EAC24D4728F0287200618B0C /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/InfoPlist.strings"; sourceTree = ""; }; - EACA95CD27BBDB80002FCB96 /* RunnerDebug.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = RunnerDebug.entitlements; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 97C146EB1CF9000F007C117D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - F50330E48F3AE3E0400D160C /* Pods_Runner.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 4A45559DBC458EC0E40B88E0 /* Pods */ = { - isa = PBXGroup; - children = ( - A4B337E0717EC4077C02BECA /* Pods-Runner.debug.xcconfig */, - 89872809EE6E03F14F4DDD73 /* Pods-Runner.release.xcconfig */, - 53E1F9106D320232BBE160D0 /* Pods-Runner.profile.xcconfig */, - ); - 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 */, - EACA95CD27BBDB80002FCB96 /* RunnerDebug.entitlements */, - 97C146F01CF9000F007C117D /* Runner */, - 97C146EF1CF9000F007C117D /* Products */, - 4A45559DBC458EC0E40B88E0 /* Pods */, - D1AAE1668A8C767130408518 /* Frameworks */, - ); - sourceTree = ""; - }; - 97C146EF1CF9000F007C117D /* Products */ = { - isa = PBXGroup; - children = ( - 97C146EE1CF9000F007C117D /* Runner.app */, - ); - name = Products; - sourceTree = ""; - }; - 97C146F01CF9000F007C117D /* Runner */ = { - isa = PBXGroup; - children = ( - 4D53D58D2ADC321E00255A67 /* Runner.entitlements */, - 97C146FA1CF9000F007C117D /* Main.storyboard */, - 97C146FD1CF9000F007C117D /* Assets.xcassets */, - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, - 97C147021CF9000F007C117D /* Info.plist */, - EA915BC127B52FC0003004DD /* InfoPlist.strings */, - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, - ); - path = Runner; - sourceTree = ""; - }; - D1AAE1668A8C767130408518 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 11DB5EC50A928A20CBD3F2E8 /* 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 = ( - B3A58F7A51D1F11234C53B0C /* [CP] Check Pods Manifest.lock */, - 9740EEB61CF901F6004384FC /* Run Script */, - 97C146EA1CF9000F007C117D /* Sources */, - 97C146EB1CF9000F007C117D /* Frameworks */, - 97C146EC1CF9000F007C117D /* Resources */, - 9705A1C41CF9048500538489 /* Embed Frameworks */, - 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 8D031BFA1068FBF3F0D98A42 /* [CP] Embed Pods Frameworks */, - 83F349C89AC1A23266ECA68F /* [CP] Copy Pods Resources */, - ); - 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 = 1510; - 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, - "zh-Hans", - "zh-Hant", - ); - 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 */, - EA915BBF27B52FC0003004DD /* InfoPlist.strings in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", - ); - name = "Thin Binary"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; - }; - 83F349C89AC1A23266ECA68F /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Copy Pods Resources"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; - 8D031BFA1068FBF3F0D98A42 /* [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"; - }; - B3A58F7A51D1F11234C53B0C /* [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 = ""; - }; - EA915BC127B52FC0003004DD /* InfoPlist.strings */ = { - isa = PBXVariantGroup; - children = ( - EA915BC027B52FC0003004DD /* en */, - EA915BC227B53039003004DD /* zh-Hans */, - EAC24D4728F0287200618B0C /* zh-Hant */, - ); - name = InfoPlist.strings; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 249021D3217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - 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 = "iPhone Distribution"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development: ziqi wei (U243T4LN6L)"; - 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 = 12.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; - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = M5APZD5CKA; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "SIT Life"; - INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = "$(FLUTTER_BUILD_NAME)"; - PRODUCT_BUNDLE_IDENTIFIER = life.mysit.SITLife; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - 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_LOCALIZABILITY_NONLOCALIZED = YES; - 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 = "iPhone Distribution"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development: ziqi wei (U243T4LN6L)"; - 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 = 12.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_LOCALIZABILITY_NONLOCALIZED = YES; - 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 = "iPhone Distribution"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development: ziqi wei (U243T4LN6L)"; - 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 = 12.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - 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; - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = M5APZD5CKA; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "SIT Life"; - INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = "$(FLUTTER_BUILD_NAME)"; - PRODUCT_BUNDLE_IDENTIFIER = life.mysit.SITLife; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - 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; - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = M5APZD5CKA; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "SIT Life"; - INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = "$(FLUTTER_BUILD_NAME)"; - PRODUCT_BUNDLE_IDENTIFIER = life.mysit.SITLife; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - 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 919434a62..000000000 --- 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 18d981003..000000000 --- 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 f9b0d7c5e..000000000 --- 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 e67b2808a..000000000 --- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 21a3cc14c..000000000 --- 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 18d981003..000000000 --- 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 f9b0d7c5e..000000000 --- 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 70693e4a8..000000000 --- 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/1024x1024.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/1024x1024.png deleted file mode 100644 index faf83faba..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/1024x1024.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/120x120 1.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/120x120 1.png deleted file mode 100644 index 179705133..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/120x120 1.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/120x120.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/120x120.png deleted file mode 100644 index 179705133..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/120x120.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/152x152.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/152x152.png deleted file mode 100644 index cbcac59de..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/152x152.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/167x167.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/167x167.png deleted file mode 100644 index 61a9585ba..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/167x167.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/180x180.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/180x180.png deleted file mode 100644 index bb8343fc5..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/180x180.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/20x20.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/20x20.png deleted file mode 100644 index daabe8106..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/20x20.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/29x29 1.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/29x29 1.png deleted file mode 100644 index 7e013938a..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/29x29 1.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/29x29.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/29x29.png deleted file mode 100644 index 7e013938a..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/29x29.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40 1.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40 1.png deleted file mode 100644 index 5f72117c0..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40 1.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40 2.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40 2.png deleted file mode 100644 index 5f72117c0..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40 2.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40.png deleted file mode 100644 index 5f72117c0..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/40x40.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/58x58 1.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/58x58 1.png deleted file mode 100644 index 6defa0952..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/58x58 1.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/58x58.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/58x58.png deleted file mode 100644 index 6defa0952..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/58x58.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/60x60.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/60x60.png deleted file mode 100644 index 2f3a60c42..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/60x60.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/76x76.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/76x76.png deleted file mode 100644 index 5937d38e8..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/76x76.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/80x80 1.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/80x80 1.png deleted file mode 100644 index 73b5b7197..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/80x80 1.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/80x80.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/80x80.png deleted file mode 100644 index 73b5b7197..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/80x80.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/87x87.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/87x87.png deleted file mode 100644 index b4fc30414..000000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/87x87.png and /dev/null differ 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 b237f26e2..000000000 --- a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "images" : [ - { - "filename" : "40x40 2.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "60x60.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "20x20" - }, - { - "filename" : "29x29 1.png", - "idiom" : "iphone", - "scale" : "1x", - "size" : "29x29" - }, - { - "filename" : "58x58 1.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "87x87.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "29x29" - }, - { - "filename" : "80x80 1.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "120x120.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "40x40" - }, - { - "filename" : "120x120 1.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "60x60" - }, - { - "filename" : "180x180.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "60x60" - }, - { - "filename" : "20x20.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "20x20" - }, - { - "filename" : "40x40 1.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "29x29.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "29x29" - }, - { - "filename" : "58x58.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "40x40.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "40x40" - }, - { - "filename" : "80x80.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "76x76.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "76x76" - }, - { - "filename" : "152x152.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "76x76" - }, - { - "filename" : "167x167.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "83.5x83.5" - }, - { - "filename" : "1024x1024.png", - "idiom" : "ios-marketing", - "scale" : "1x", - "size" : "1024x1024" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/Runner/Assets.xcassets/BrandingImage.imageset/256x256.png b/ios/Runner/Assets.xcassets/BrandingImage.imageset/256x256.png deleted file mode 100644 index a8d0473c6..000000000 Binary files a/ios/Runner/Assets.xcassets/BrandingImage.imageset/256x256.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 2c2f2ae18..000000000 --- a/ios/Runner/Assets.xcassets/BrandingImage.imageset/Contents.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "images" : [ - { - "filename" : "256x256.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "idiom" : "universal", - "scale" : "2x" - }, - { - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/Runner/Assets.xcassets/Contents.json b/ios/Runner/Assets.xcassets/Contents.json deleted file mode 100644 index 73c00596a..000000000 --- a/ios/Runner/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/1024x1024 1.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/1024x1024 1.png deleted file mode 100644 index cd4344060..000000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/1024x1024 1.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/256x256.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/256x256.png deleted file mode 100644 index a8d0473c6..000000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/256x256.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/512x512.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/512x512.png deleted file mode 100644 index d4a91f8fe..000000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/512x512.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 71d175a0c..000000000 --- a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "256x256.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "512x512.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "1024x1024 1.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} 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 89c2725b7..000000000 --- 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/Assets.xcassets/LaunchScreenBackgroundColor.colorset/Contents.json b/ios/Runner/Assets.xcassets/LaunchScreenBackgroundColor.colorset/Contents.json deleted file mode 100644 index 04256378a..000000000 --- a/ios/Runner/Assets.xcassets/LaunchScreenBackgroundColor.colorset/Contents.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "colors" : [ - { - "color" : { - "color-space" : "srgb", - "components" : { - "alpha" : "1.000", - "blue" : "1.000", - "green" : "1.000", - "red" : "1.000" - } - }, - "idiom" : "universal" - }, - { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "dark" - } - ], - "color" : { - "color-space" : "srgb", - "components" : { - "alpha" : "1.000", - "blue" : "0.000", - "green" : "0.000", - "red" : "0.000" - } - }, - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/Runner/Base.lproj/LaunchScreen.storyboard b/ios/Runner/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index d5e384f56..000000000 --- a/ios/Runner/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard deleted file mode 100644 index 76a4babe3..000000000 --- a/ios/Runner/Base.lproj/Main.storyboard +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist deleted file mode 100644 index e84d3b4bb..000000000 --- a/ios/Runner/Info.plist +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CADisableMinimumFrameDurationOnPhone - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - SIT Life - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIcons - - CFBundleIcons~ipad - - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - life.mysit.SITLife - CFBundlePackageType - APPL - CFBundleShortVersionString - $(FLUTTER_BUILD_NAME) - CFBundleSignature - ???? - CFBundleURLTypes - - - CFBundleTypeRole - Editor - CFBundleURLName - URL.life.mysit.SITLife - CFBundleURLSchemes - - life.mysit - - - - CFBundleVersion - $(FLUTTER_BUILD_NUMBER) - ITSAppUsesNonExemptEncryption - - LSRequiresIPhoneOS - - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - NSCalendarsUsageDescription - INSERT_REASON_HERE - - NSCalendarsUsageDescription - Used for Calendar Task. - NSCameraUsageDescription - Used for Image Picker plugin for Flutter - NSMicrophoneUsageDescription - Used for Image Picker plugin for Flutter - NSPhotoLibraryUsageDescription - Used for Image Picker plugin for Flutter - UIApplicationSupportsIndirectInputEvents - - UIBackgroundModes - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIStatusBarHidden - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - - UIViewControllerBasedStatusBarAppearance - - io.flutter.embedded_views_preview - YES - - diff --git a/ios/Runner/Runner-Bridging-Header.h b/ios/Runner/Runner-Bridging-Header.h deleted file mode 100644 index 308a2a560..000000000 --- a/ios/Runner/Runner-Bridging-Header.h +++ /dev/null @@ -1 +0,0 @@ -#import "GeneratedPluginRegistrant.h" diff --git a/ios/Runner/Runner.entitlements b/ios/Runner/Runner.entitlements deleted file mode 100644 index df1b84c30..000000000 --- a/ios/Runner/Runner.entitlements +++ /dev/null @@ -1,24 +0,0 @@ - - - - - aps-environment - development - com.apple.developer.associated-domains - - https://mysit.life - - com.apple.developer.icloud-container-identifiers - - iCloud.life.mysit.SITLife - - com.apple.developer.icloud-services - - CloudDocuments - - com.apple.developer.ubiquity-container-identifiers - - iCloud.life.mysit.SITLife - - - diff --git a/ios/Runner/RunnerProfile.entitlements b/ios/Runner/RunnerProfile.entitlements deleted file mode 100644 index 903def2af..000000000 --- a/ios/Runner/RunnerProfile.entitlements +++ /dev/null @@ -1,8 +0,0 @@ - - - - - aps-environment - development - - diff --git a/ios/Runner/en.lproj/InfoPlist.strings b/ios/Runner/en.lproj/InfoPlist.strings deleted file mode 100644 index e34e2bfc1..000000000 --- a/ios/Runner/en.lproj/InfoPlist.strings +++ /dev/null @@ -1,5 +0,0 @@ -CFBundleDisplayName = "SIT Life"; - -NSCalendarsUsageDescription = "Requires calendar premission to add exam event"; -NSCameraUsageDescription = "Requires camera premission to scan QR code"; -NSPhotoLibraryUsageDescription = "Requires album premission to recognize QR code and set timetable wallpaper"; diff --git a/ios/Runner/zh-Hans.lproj/InfoPlist.strings b/ios/Runner/zh-Hans.lproj/InfoPlist.strings deleted file mode 100644 index ee71dd559..000000000 --- a/ios/Runner/zh-Hans.lproj/InfoPlist.strings +++ /dev/null @@ -1,5 +0,0 @@ -CFBundleDisplayName = "小应生活"; - -NSCalendarsUsageDescription = "需要日历权限用于添加考试日程"; -NSCameraUsageDescription = "需要相机权限用于扫描二维码"; -NSPhotoLibraryUsageDescription = "需要照片权限用于识别二维码和设置课程表背景"; diff --git a/ios/Runner/zh-Hant.lproj/InfoPlist.strings b/ios/Runner/zh-Hant.lproj/InfoPlist.strings deleted file mode 100644 index ee0642643..000000000 --- a/ios/Runner/zh-Hant.lproj/InfoPlist.strings +++ /dev/null @@ -1,5 +0,0 @@ -CFBundleDisplayName = "小鷹生活"; - -NSCalendarsUsageDescription = "需要行事曆权限用於增加考試事項"; -NSCameraUsageDescription = "需要相機權限用於掃描QR碼"; -NSPhotoLibraryUsageDescription = "需要相簿權限用於識別QR碼和設置課程表桌布"; diff --git a/ios/RunnerDebug.entitlements b/ios/RunnerDebug.entitlements deleted file mode 100644 index 903def2af..000000000 --- a/ios/RunnerDebug.entitlements +++ /dev/null @@ -1,8 +0,0 @@ - - - - - aps-environment - development - - diff --git a/ios/RunnerTests/RunnerTests.swift b/ios/RunnerTests/RunnerTests.swift deleted file mode 100644 index 86a7c3b1b..000000000 --- a/ios/RunnerTests/RunnerTests.swift +++ /dev/null @@ -1,12 +0,0 @@ -import Flutter -import UIKit -import XCTest - -class RunnerTests: XCTestCase { - - func testExample() { - // If you add code to the Runner application, consider adding tests here. - // See https://developer.apple.com/documentation/xctest for more information about using XCTest. - } - -} diff --git a/lib/app.dart b/lib/app.dart deleted file mode 100644 index 395b393af..000000000 --- a/lib/app.dart +++ /dev/null @@ -1,179 +0,0 @@ -import 'dart:async'; -import 'dart:io'; -import 'dart:ui'; - -import 'package:animations/animations.dart'; -import 'package:app_links/app_links.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:fit_system_screenshot/fit_system_screenshot.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/files.dart'; -import 'package:sit/file_type/handle.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/qrcode/handle.dart'; -import 'package:sit/r.dart'; -import 'package:sit/route.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/update/utils.dart'; -import 'package:sit/utils/color.dart'; -import 'package:system_theme/system_theme.dart'; - -final $appLinks = StateProvider((ref) => <({Uri uri, DateTime ts})>[]); - -class MimirApp extends ConsumerStatefulWidget { - const MimirApp({super.key}); - - @override - ConsumerState createState() => _MimirAppState(); -} - -class _MimirAppState extends ConsumerState { - final $routingConfig = ValueNotifier( - Settings.focusTimetable ? buildTimetableFocusRouter() : buildCommonRoutingConfig(), - ); - late final router = buildRouter($routingConfig); - - @override - Widget build(BuildContext context) { - final demoMode = ref.watch(Dev.$demoMode); - final themeColorFromSystem = ref.watch(Settings.theme.$themeColorFromSystem) ?? true; - ref.listen(Settings.$focusTimetable, (pre, next) { - $routingConfig.value = next ?? false ? buildTimetableFocusRouter() : buildCommonRoutingConfig(); - }); - final themeColor = themeColorFromSystem - ? SystemTheme.accentColor.maybeAccent - : ref.watch(Settings.theme.$themeColor) ?? SystemTheme.accentColor.maybeAccent; - - ThemeData bakeTheme(ThemeData origin) { - return origin.copyWith( - platform: R.debugCupertino ? TargetPlatform.iOS : null, - colorScheme: themeColor == null - ? null - : ColorScheme.fromSeed( - seedColor: themeColor, - brightness: origin.brightness, - ), - visualDensity: VisualDensity.comfortable, - splashFactory: kIsWeb ? null : InkSparkle.splashFactory, - navigationBarTheme: const NavigationBarThemeData( - height: 60, - ), - pageTransitionsTheme: const PageTransitionsTheme( - builders: { - TargetPlatform.android: ZoomPageTransitionsBuilder(), - TargetPlatform.iOS: CupertinoPageTransitionsBuilder(), - TargetPlatform.macOS: CupertinoPageTransitionsBuilder(), - TargetPlatform.linux: SharedAxisPageTransitionsBuilder(transitionType: SharedAxisTransitionType.vertical), - TargetPlatform.windows: SharedAxisPageTransitionsBuilder(transitionType: SharedAxisTransitionType.vertical), - }, - ), - ); - } - - return MaterialApp.router( - title: R.appName, - onGenerateTitle: (ctx) => "appName".tr(), - routerConfig: router, - debugShowCheckedModeBanner: !demoMode, - localizationsDelegates: context.localizationDelegates, - supportedLocales: context.supportedLocales, - locale: context.locale, - themeMode: ref.watch(Settings.theme.$themeMode), - theme: bakeTheme(ThemeData.light()), - darkTheme: bakeTheme(ThemeData.dark()), - builder: (ctx, child) => _PostServiceRunner( - key: const ValueKey("Post service runner"), - child: child ?? const SizedBox(), - ), - scrollBehavior: const MaterialScrollBehavior().copyWith( - dragDevices: { - PointerDeviceKind.mouse, - PointerDeviceKind.touch, - PointerDeviceKind.stylus, - PointerDeviceKind.trackpad, - PointerDeviceKind.unknown - }, - ), - ); - } -} - -class _PostServiceRunner extends ConsumerStatefulWidget { - final Widget child; - - const _PostServiceRunner({ - super.key, - required this.child, - }); - - @override - ConsumerState<_PostServiceRunner> createState() => _PostServiceRunnerState(); -} - -class _PostServiceRunnerState extends ConsumerState<_PostServiceRunner> { - StreamSubscription? $appLink; - - @override - void initState() { - super.initState(); - if (!kIsWeb) { - fitSystemScreenshot.init(); - } - if (!kIsWeb) { - Future.delayed(Duration.zero).then((value) async { - await checkAppUpdate( - context: $key.currentContext!, - delayAtLeast: const Duration(milliseconds: 3000), - manually: false, - ); - }); - } - WidgetsBinding.instance.addPostFrameCallback((timeStamp) async { - $appLink = AppLinks().allUriLinkStream.listen((uri) async { - ref.read($appLinks.notifier).state = [...ref.read($appLinks), (uri: uri, ts: DateTime.now())]; - final navigateCtx = $key.currentContext; - if (navigateCtx == null) return; - if (!kIsWeb) { - final maybePath = Uri.decodeFull(uri.toString()); - final isFile = await File(maybePath).exists(); - if (isFile) { - if (!navigateCtx.mounted) return; - await onHandleFilePath(context: navigateCtx, path: maybePath); - return; - } - } - if (!navigateCtx.mounted) return; - await onHandleQrCodeUriData(context: navigateCtx, qrCodeData: uri); - }); - }); - } - - @override - void didChangeDependencies() { - // precache timetable background file - final timetableBk = Settings.timetable.backgroundImage; - if (timetableBk != null && timetableBk.enabled) { - if (kIsWeb) { - precacheImage(NetworkImage(timetableBk.path), context); - } else { - precacheImage(FileImage(Files.timetable.backgroundFile), context); - } - } - super.didChangeDependencies(); - } - - @override - void dispose() { - $appLink?.cancel(); - fitSystemScreenshot.release(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return widget.child; - } -} diff --git a/lib/credentials/entity/credential.dart b/lib/credentials/entity/credential.dart deleted file mode 100644 index 5aa7be25f..000000000 --- a/lib/credentials/entity/credential.dart +++ /dev/null @@ -1,32 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'credential.g.dart'; - -@HiveType(typeId: CoreHiveType.credentials) -@CopyWith(skipFields: true) -class Credentials { - @HiveField(0) - final String account; - @HiveField(1) - final String password; - - const Credentials({ - required this.account, - required this.password, - }); - - @override - String toString() => 'account:"$account", password:"$password"'; - - @override - bool operator ==(Object other) { - return other is Credentials && - runtimeType == other.runtimeType && - account == other.account && - password == other.password; - } - - @override - int get hashCode => Object.hash(account, password); -} diff --git a/lib/credentials/entity/credential.g.dart b/lib/credentials/entity/credential.g.dart deleted file mode 100644 index 1b82fbc3a..000000000 --- a/lib/credentials/entity/credential.g.dart +++ /dev/null @@ -1,96 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'credential.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$CredentialsCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Credentials(...).copyWith(id: 12, name: "My name") - /// ```` - Credentials call({ - String? account, - String? password, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfCredentials.copyWith(...)`. -class _$CredentialsCWProxyImpl implements _$CredentialsCWProxy { - const _$CredentialsCWProxyImpl(this._value); - - final Credentials _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Credentials(...).copyWith(id: 12, name: "My name") - /// ```` - Credentials call({ - Object? account = const $CopyWithPlaceholder(), - Object? password = const $CopyWithPlaceholder(), - }) { - return Credentials( - account: account == const $CopyWithPlaceholder() || account == null - ? _value.account - // ignore: cast_nullable_to_non_nullable - : account as String, - password: password == const $CopyWithPlaceholder() || password == null - ? _value.password - // ignore: cast_nullable_to_non_nullable - : password as String, - ); - } -} - -extension $CredentialsCopyWith on Credentials { - /// Returns a callable class that can be used as follows: `instanceOfCredentials.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$CredentialsCWProxy get copyWith => _$CredentialsCWProxyImpl(this); -} - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class CredentialsAdapter extends TypeAdapter { - @override - final int typeId = 4; - - @override - Credentials read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Credentials( - account: fields[0] as String, - password: fields[1] as String, - ); - } - - @override - void write(BinaryWriter writer, Credentials obj) { - writer - ..writeByte(2) - ..writeByte(0) - ..write(obj.account) - ..writeByte(1) - ..write(obj.password); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is CredentialsAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/credentials/entity/login_status.dart b/lib/credentials/entity/login_status.dart deleted file mode 100644 index daf7914e7..000000000 --- a/lib/credentials/entity/login_status.dart +++ /dev/null @@ -1,15 +0,0 @@ -import 'package:sit/storage/hive/type_id.dart'; - -part 'login_status.g.dart'; - -@HiveType(typeId: CoreHiveType.loginStatus) -enum LoginStatus { - @HiveField(0) - never, - @HiveField(2) - offline, - @HiveField(3) - validated, - @HiveField(4) - everLogin, -} diff --git a/lib/credentials/entity/login_status.g.dart b/lib/credentials/entity/login_status.g.dart deleted file mode 100644 index 68f853d49..000000000 --- a/lib/credentials/entity/login_status.g.dart +++ /dev/null @@ -1,54 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'login_status.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class LoginStatusAdapter extends TypeAdapter { - @override - final int typeId = 5; - - @override - LoginStatus read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return LoginStatus.never; - case 2: - return LoginStatus.offline; - case 3: - return LoginStatus.validated; - case 4: - return LoginStatus.everLogin; - default: - return LoginStatus.never; - } - } - - @override - void write(BinaryWriter writer, LoginStatus obj) { - switch (obj) { - case LoginStatus.never: - writer.writeByte(0); - break; - case LoginStatus.offline: - writer.writeByte(2); - break; - case LoginStatus.validated: - writer.writeByte(3); - break; - case LoginStatus.everLogin: - writer.writeByte(4); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is LoginStatusAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/credentials/entity/user_type.dart b/lib/credentials/entity/user_type.dart deleted file mode 100644 index 9849eeae7..000000000 --- a/lib/credentials/entity/user_type.dart +++ /dev/null @@ -1,39 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'user_type.g.dart'; - -typedef UserCapability = ({ - bool enableClass2nd, - bool enableExamArrange, - bool enableExamResult, -}); - -@HiveType(typeId: CoreHiveType.oaUserType) -enum OaUserType { - @HiveField(0) - undergraduate(( - enableClass2nd: true, - enableExamArrange: true, - enableExamResult: true, - )), - @HiveField(1) - postgraduate(( - enableClass2nd: false, - // postgraduates use a different SIS, so disable them temporarily - enableExamArrange: false, - enableExamResult: true, - )), - @HiveField(2) - other(( - enableClass2nd: false, - enableExamArrange: false, - enableExamResult: false, - )); - - final UserCapability capability; - - const OaUserType(this.capability); - - String l10n() => "OaUserType.$name".tr(); -} diff --git a/lib/credentials/entity/user_type.g.dart b/lib/credentials/entity/user_type.g.dart deleted file mode 100644 index 5d6bfd131..000000000 --- a/lib/credentials/entity/user_type.g.dart +++ /dev/null @@ -1,49 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'user_type.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class OaUserTypeAdapter extends TypeAdapter { - @override - final int typeId = 6; - - @override - OaUserType read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return OaUserType.undergraduate; - case 1: - return OaUserType.postgraduate; - case 2: - return OaUserType.other; - default: - return OaUserType.undergraduate; - } - } - - @override - void write(BinaryWriter writer, OaUserType obj) { - switch (obj) { - case OaUserType.undergraduate: - writer.writeByte(0); - break; - case OaUserType.postgraduate: - writer.writeByte(1); - break; - case OaUserType.other: - writer.writeByte(2); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is OaUserTypeAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/credentials/error.dart b/lib/credentials/error.dart deleted file mode 100644 index 18854a49a..000000000 --- a/lib/credentials/error.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; - -class CredentialsErrorType { - final String type; - - const CredentialsErrorType._(this.type); - - static const // - accountPassword = CredentialsErrorType._("accountPassword"), - captcha = CredentialsErrorType._("captcha"), - frozen = CredentialsErrorType._("frozen"), - locked = CredentialsErrorType._("locked"); - static const // - oaFrozen = CredentialsErrorType._("oa-frozen"), - oaLocked = CredentialsErrorType._("oa-locked"), - oaIncompleteUserInfo = CredentialsErrorType._("oa-incompleteUserInfo"); - - String l10n() => "credentials.error.$type".tr(); -} - -class CredentialsException implements Exception { - final CredentialsErrorType type; - final String? message; - - const CredentialsException({ - required this.type, - this.message, - }); - - @override - String toString() { - final message = this.message; - if (message == null) return "CredentialsException"; - return "CredentialsException: $type $message"; - } -} diff --git a/lib/credentials/i18n.dart b/lib/credentials/i18n.dart deleted file mode 100644 index 548de778b..000000000 --- a/lib/credentials/i18n.dart +++ /dev/null @@ -1,28 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -class CredentialsI18n with CommonI18nMixin { - const CredentialsI18n(); - - static const ns = "credentials"; - - String get account => "$ns.account".tr(); - - String get pwd => "$ns.pwd".tr(); -} - -class OaCredentialsI18n extends CredentialsI18n { - const OaCredentialsI18n(); - - static const ns = "${CredentialsI18n.ns}.oa"; - - String get studentId => "$ns.studentId".tr(); - - String get oaAccount => "$ns.oaAccount".tr(); - - String get oaPwd => "$ns.oaPwd".tr(); - - String get savedOaPwd => "$ns.savedOaPwd".tr(); - - String get savedOaPwdDesc => "$ns.savedOaPwdDesc".tr(); -} diff --git a/lib/credentials/init.dart b/lib/credentials/init.dart deleted file mode 100644 index 267ce3ab1..000000000 --- a/lib/credentials/init.dart +++ /dev/null @@ -1,11 +0,0 @@ -import 'storage/credential.dart'; - -class CredentialsInit { - static late CredentialStorage storage; - - static void init() {} - - static void initStorage() { - storage = CredentialStorage(); - } -} diff --git a/lib/credentials/storage/credential.dart b/lib/credentials/storage/credential.dart deleted file mode 100644 index 27b6a58ed..000000000 --- a/lib/credentials/storage/credential.dart +++ /dev/null @@ -1,70 +0,0 @@ -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/utils/hive.dart'; - -import '../entity/credential.dart'; -import '../entity/login_status.dart'; - -class _OaK { - static const ns = "/oa"; - static const credentials = "$ns/credentials"; - static const lastAuthTime = "$ns/lastAuthTime"; - static const loginStatus = "$ns/loginStatus"; - static const userType = "$ns/userType"; -} - -class _EmailK { - static const ns = "/eduEmail"; - static const credentials = "$ns/credentials"; -} - -class _LibraryK { - static const ns = "/library"; - static const credentials = "$ns/credentials"; -} - -class CredentialStorage { - Box get box => HiveInit.credentials; - - CredentialStorage(); - - // OA - Credentials? get oaCredentials => box.safeGet(_OaK.credentials); - - set oaCredentials(Credentials? newV) => box.safePut(_OaK.credentials, newV); - - late final $oaCredentials = box.provider(_OaK.credentials); - - DateTime? get oaLastAuthTime => box.safeGet(_OaK.lastAuthTime); - - set oaLastAuthTime(DateTime? newV) => box.safePut(_OaK.lastAuthTime, newV); - - late final $oaLastAuthTime = box.provider(_OaK.lastAuthTime); - - LoginStatus? get oaLoginStatus => box.safeGet(_OaK.loginStatus); - - set oaLoginStatus(LoginStatus? newV) => box.safePut(_OaK.loginStatus, newV); - - late final $oaLoginStatus = box.providerWithDefault(_OaK.loginStatus, () => LoginStatus.never); - - OaUserType? get oaUserType => box.safeGet(_OaK.userType); - - set oaUserType(OaUserType? newV) => box.safePut(_OaK.userType, newV); - - late final $oaUserType = box.provider(_OaK.userType); - - // Edu Email - Credentials? get eduEmailCredentials => box.safeGet(_EmailK.credentials); - - set eduEmailCredentials(Credentials? newV) => box.safePut(_EmailK.credentials, newV); - - late final $eduEmailCredentials = box.provider(_EmailK.credentials); - - // Library - Credentials? get libraryCredentials => box.safeGet(_LibraryK.credentials); - - set libraryCredentials(Credentials? newV) => box.safePut(_LibraryK.credentials, newV); - - late final $libraryCredentials = box.provider(_LibraryK.credentials); -} diff --git a/lib/credentials/utils.dart b/lib/credentials/utils.dart deleted file mode 100644 index 38e1b985d..000000000 --- a/lib/credentials/utils.dart +++ /dev/null @@ -1,22 +0,0 @@ -import 'package:sit/credentials/entity/user_type.dart'; - -/// 本、专科生(10位学号) -final RegExp _reUndergraduateId = RegExp(r'^(\d{6}[YGHE\d]\d{3})$'); - -/// 研究生(9位学号) -final RegExp _rePostgraduateId = RegExp(r'^(\d{2}6\d{6})$'); - -/// 教师(4位工号) -final RegExp _reTeacherId = RegExp(r'^(\d{4})$'); - -/// [oaAccount] can be a student ID or a work number. -OaUserType? estimateOaUserType(String oaAccount) { - if (oaAccount.length == 10 && _reUndergraduateId.hasMatch(oaAccount.toUpperCase())) { - return OaUserType.undergraduate; - } else if (oaAccount.length == 9 && _rePostgraduateId.hasMatch(oaAccount)) { - return OaUserType.postgraduate; - } else if (oaAccount.length == 4 && _reTeacherId.hasMatch(oaAccount)) { - return OaUserType.other; - } - return null; -} diff --git a/lib/design/adaptive/dialog.dart b/lib/design/adaptive/dialog.dart deleted file mode 100644 index 324dc297c..000000000 --- a/lib/design/adaptive/dialog.dart +++ /dev/null @@ -1,424 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart' hide isCupertino; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:universal_platform/universal_platform.dart'; - -import 'foundation.dart'; - -typedef PickerActionWidgetBuilder = Widget Function(BuildContext context, int? selectedIndex); -typedef DualPickerActionWidgetBuilder = Widget Function(BuildContext context, int? selectedIndexA, int? selectedIndexB); - -extension DialogEx on BuildContext { - /// return: whether the button was hit - Future showTip({ - String? title, - required String desc, - required String primary, - bool highlight = false, - bool serious = false, - }) async { - return showAnyTip( - title: title, - make: (_) => desc.text(style: const TextStyle()), - primary: primary, - highlight: false, - serious: serious, - ); - } - - Future showAnyTip({ - String? title, - required WidgetBuilder make, - required String primary, - bool highlight = false, - bool serious = false, - }) async { - final dynamic confirm = await showAdaptiveDialog( - context: this, - builder: (ctx) => $Dialog$( - title: title, - serious: serious, - make: make, - primary: $Action$( - warning: highlight, - text: primary, - onPressed: () { - ctx.navigator.pop(true); - }, - )), - ); - return confirm == true; - } - - Future showDialogRequest({ - String? title, - required String desc, - required String primary, - required String secondary, - bool dismissible = false, - bool serious = false, - bool primaryDestructive = false, - bool secondaryDestructive = false, - }) async { - return await showAnyRequest( - title: title, - dismissible: dismissible, - make: (_) => desc.text(style: const TextStyle()), - primary: primary, - secondary: secondary, - serious: serious, - primaryDestructive: primaryDestructive, - secondaryDestructive: secondaryDestructive, - ); - } - - Future showActionRequest({ - required String desc, - required String action, - required String cancel, - bool destructive = false, - }) async { - if (UniversalPlatform.isIOS) { - return showCupertinoActionRequest( - desc: desc, - action: action, - cancel: cancel, - destructive: destructive, - ); - } - return await showAnyRequest( - title: action, - make: (_) => desc.text(style: const TextStyle()), - primary: action, - secondary: cancel, - primaryDestructive: destructive, - serious: destructive, - ); - } - - Future showCupertinoActionRequest({ - String? title, - required String desc, - required String action, - required String cancel, - bool destructive = false, - }) async { - return await showCupertinoModalPopup( - context: this, - builder: (ctx) => CupertinoActionSheet( - title: title?.text(), - message: desc.text(), - actions: [ - CupertinoActionSheetAction( - isDestructiveAction: destructive, - onPressed: () { - ctx.pop(true); - }, - child: action.text(), - ), - ], - cancelButton: CupertinoActionSheetAction( - onPressed: () { - ctx.pop(false); - }, - child: cancel.text(), - ), - ), - ); - } - - Future showAnyRequest({ - String? title, - required WidgetBuilder make, - required String primary, - required String secondary, - bool dismissible = false, - bool serious = false, - bool primaryDestructive = false, - bool secondaryDestructive = false, - }) async { - return await showAdaptiveDialog( - context: this, - barrierDismissible: dismissible, - builder: (ctx) => $Dialog$( - title: title, - serious: serious, - make: make, - primary: $Action$( - warning: primaryDestructive, - text: primary, - onPressed: () { - ctx.navigator.pop(true); - }, - ), - secondary: $Action$( - text: secondary, - warning: secondaryDestructive, - onPressed: () { - ctx.navigator.pop(false); - }, - ), - ), - ); - } - - Future showPicker({ - required int count, - String? ok, - bool Function(int? selected)? okEnabled, - double targetHeight = 240, - bool highlight = false, - FixedExtentScrollController? controller, - List? actions, - required IndexedWidgetBuilder make, - }) async { - final res = await navigator.push( - CupertinoModalPopupRoute( - builder: (ctx) => SoloPicker( - make: make, - count: count, - controller: controller, - ok: ok, - okEnabled: okEnabled, - targetHeight: targetHeight, - highlight: highlight, - actions: actions, - ), - ), - ); - if (res is int) { - return res; - } else { - assert(res == null, "return value is ${res.runtimeType} actually"); - return null; - } - } - - Future<(int, int)?> showDualPicker({ - required int countA, - required int countB, - String? ok, - bool Function(int? selectedA, int? selectedB)? okEnabled, - double targetHeight = 240, - bool highlight = false, - FixedExtentScrollController? controllerA, - FixedExtentScrollController? controllerB, - List? actions, - required IndexedWidgetBuilder makeA, - required IndexedWidgetBuilder makeB, - }) async { - final res = await navigator.push( - CupertinoModalPopupRoute( - builder: (ctx) => DualPicker( - makeA: makeA, - countA: countA, - countB: countB, - makeB: makeB, - controllerA: controllerA, - controllerB: controllerB, - ok: ok, - okEnabled: okEnabled, - targetHeight: targetHeight, - highlight: highlight, - actions: actions, - ), - ), - ); - if (res is (int, int)) { - return res; - } else { - assert(res == null, "return value is ${res.runtimeType} actually"); - return null; - } - } -} - -class SoloPicker extends StatefulWidget { - final int count; - final String? ok; - final bool Function(int? selected)? okEnabled; - final double targetHeight; - final bool highlight; - final FixedExtentScrollController? controller; - final List? actions; - final IndexedWidgetBuilder make; - - const SoloPicker({ - super.key, - required this.count, - this.ok, - this.okEnabled, - this.controller, - this.targetHeight = 240, - this.highlight = false, - this.actions, - required this.make, - }); - - @override - State createState() => _SoloPickerState(); -} - -class _SoloPickerState extends State { - late final $selected = ValueNotifier(widget.controller?.initialItem); - - @override - void dispose() { - $selected.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final ok = widget.ok; - return CupertinoActionSheet( - message: CupertinoPicker( - scrollController: widget.controller, - magnification: 1.22, - useMagnifier: true, - // This is called when selected item is changed. - onSelectedItemChanged: (int selectedItem) { - $selected.value = selectedItem; - }, - squeeze: 1.5, - itemExtent: 32.0, - children: List.generate(widget.count, (index) => widget.make(context, index)), - ).sized(h: widget.targetHeight), - actions: widget.actions - ?.map( - (e) => ValueListenableBuilder(valueListenable: $selected, builder: (ctx, value, child) => e(ctx, value))) - .toList(), - cancelButton: ok == null - ? null - : $selected >> - (ctx, selected) => PlatformTextButton( - onPressed: widget.okEnabled?.call(selected) ?? true - ? () { - Navigator.of(ctx).pop($selected.value); - } - : null, - child: ok.text(style: TextStyle(color: widget.highlight ? ctx.$red$ : null))), - ); - } -} - -class DualPicker extends StatefulWidget { - final FixedExtentScrollController? controllerA; - final FixedExtentScrollController? controllerB; - final int countA; - final int countB; - final String? ok; - final bool Function(int? selectedA, int? selectedB)? okEnabled; - final double targetHeight; - final bool highlight; - final List? actions; - final IndexedWidgetBuilder makeA; - final IndexedWidgetBuilder makeB; - - const DualPicker({ - super.key, - this.ok, - this.okEnabled, - this.actions, - this.highlight = false, - this.targetHeight = 240, - this.controllerA, - this.controllerB, - required this.makeA, - required this.countA, - required this.countB, - required this.makeB, - }); - - @override - State createState() => _DualPickerState(); -} - -class _DualPickerState extends State { - late final $selectedA = ValueNotifier(widget.controllerA?.initialItem ?? 0); - late final $selectedB = ValueNotifier(widget.controllerB?.initialItem ?? 0); - - @override - void dispose() { - $selectedA.dispose(); - $selectedB.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final ok = widget.ok; - return CupertinoActionSheet( - message: [ - CupertinoPicker( - scrollController: widget.controllerA, - magnification: 1.22, - useMagnifier: true, - // This is called when selected item is changed. - onSelectedItemChanged: (int selectedItem) { - $selectedA.value = selectedItem; - }, - squeeze: 1.5, - itemExtent: 32.0, - children: List.generate(widget.countA, (index) => widget.makeA(context, index)), - ).expanded(), - CupertinoPicker( - scrollController: widget.controllerB, - magnification: 1.22, - useMagnifier: true, - // This is called when selected item is changed. - onSelectedItemChanged: (int selectedItem) { - $selectedB.value = selectedItem; - }, - squeeze: 1.5, - itemExtent: 32.0, - children: List.generate(widget.countB, (index) => widget.makeB(context, index)), - ).expanded(), - ].row().sized(h: widget.targetHeight), - actions: widget.actions?.map((e) => $selectedA >> (ctx, a) => $selectedB >> (ctx, b) => e(ctx, a, b)).toList(), - cancelButton: ok == null - ? null - : $selectedA >> - (ctx, a) => - $selectedB >> - (ctx, b) => CupertinoButton( - onPressed: widget.okEnabled?.call(a, b) ?? true - ? () { - Navigator.of(ctx).pop(($selectedA.value, $selectedB.value)); - } - : null, - child: ok.text( - style: TextStyle( - color: widget.highlight ? ctx.$red$ : null, - ), - ), - ), - ); - } -} - -extension SnackBarX on BuildContext { - ScaffoldFeatureController showSnackBar({ - required Widget content, - Duration duration = const Duration(milliseconds: 1000), - SnackBarAction? action, - VoidCallback? onVisible, - SnackBarBehavior? behavior, - bool? showCloseIcon, - DismissDirection dismissDirection = DismissDirection.down, - }) { - final snackBar = SnackBar( - content: content, - duration: duration, - action: action, - onVisible: onVisible, - behavior: behavior, - showCloseIcon: showCloseIcon, - dismissDirection: dismissDirection, - ); - - return ScaffoldMessenger.of(this).showSnackBar(snackBar); - } -} diff --git a/lib/design/adaptive/editor.dart b/lib/design/adaptive/editor.dart deleted file mode 100644 index e7e969d78..000000000 --- a/lib/design/adaptive/editor.dart +++ /dev/null @@ -1,530 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'foundation.dart'; -import 'dialog.dart'; - -const _i18n = CommonI18n(); - -typedef EditorBuilder = Widget Function(BuildContext ctx, String? desc, T initial); - -class Editor { - static final Map _customEditor = {}; - - static void registerEditor(EditorBuilder builder) { - _customEditor[T] = (ctx, desc, initial) => builder(ctx, desc, initial); - } - - static bool isSupport(dynamic test) { - return test is int || - test is String || - test is bool || - test is DateTime || - _customEditor.containsKey(test.runtimeType); - } - - static Future showAnyEditor( - BuildContext context, { - dynamic initial, - String? desc, - bool readonlyIfNotSupport = true, - }) async { - if (initial is int) { - return await showIntEditor(context, desc: desc, initial: initial); - } else if (initial is String) { - return await showStringEditor(context, desc: desc, initial: initial); - } else if (initial is bool) { - return await showBoolEditor(context, desc: desc, initial: initial); - } else if (initial is DateTime) { - return await showDateTimeEditor( - context, - desc: desc, - initial: initial, - firstDate: DateTime(0), - lastDate: DateTime(9999), - ); - } else { - final customEditorBuilder = _customEditor[initial.runtimeType]; - if (customEditorBuilder != null) { - return await showAdaptiveDialog( - context: context, - builder: (ctx) => customEditorBuilder(ctx, desc, initial), - ); - } else { - if (readonlyIfNotSupport) { - return await showReadonlyEditor(context, desc: desc, initial: initial); - } else { - throw UnsupportedError("Editing $initial is not supported."); - } - } - } - } - - static Future showDateTimeEditor( - BuildContext context, { - String? desc, - required DateTime initial, - required DateTime firstDate, - required DateTime lastDate, - }) async { - final newValue = await showAdaptiveDialog( - context: context, - builder: (ctx) => DateTimeEditor( - initial: initial, - title: desc, - firstDate: firstDate, - lastDate: lastDate, - ), - ); - if (newValue == null) return null; - return newValue; - } - - static Future showBoolEditor( - BuildContext context, { - String? desc, - required bool initial, - }) async { - final newValue = await showAdaptiveDialog( - context: context, - builder: (ctx) => BoolEditor( - initial: initial, - desc: desc, - ), - ); - if (newValue == null) return null; - return newValue; - } - - static Future showStringEditor( - BuildContext context, { - String? desc, - required String initial, - }) async { - final newValue = await showAdaptiveDialog( - context: context, - builder: (ctx) => StringEditor( - initial: initial, - title: desc, - ), - ); - if (newValue == null) return null; - return newValue; - } - - static Future showReadonlyEditor( - BuildContext context, { - String? desc, - required dynamic initial, - }) async { - await showDialog( - context: context, - builder: (ctx) => _readonlyEditor( - ctx, - (ctx) => SelectableText(initial.toString()), - title: desc, - ), - ); - } - - static Future showIntEditor( - BuildContext context, { - String? desc, - required int initial, - }) async { - final newValue = await showAdaptiveDialog( - context: context, - builder: (ctx) => IntEditor( - initial: initial, - title: desc, - ), - ); - if (newValue == null) return null; - return newValue; - } -} - -extension EditorEx on Editor { - static void registerEnumEditor(List values) { - Editor.registerEditor((ctx, desc, initial) => EnumEditor( - initial: initial, - title: desc, - values: values, - )); - } -} - -Widget _readonlyEditor(BuildContext ctx, WidgetBuilder make, {String? title}) { - return $Dialog$( - title: title, - primary: $Action$( - text: _i18n.close, - onPressed: () { - ctx.navigator.pop(false); - }), - make: (ctx) => make(ctx)); -} - -class EnumEditor extends StatefulWidget { - final T initial; - final List values; - final String? title; - - const EnumEditor({ - super.key, - required this.initial, - this.title, - required this.values, - }); - - @override - State> createState() => _EnumEditorState(); -} - -class _EnumEditorState extends State> { - late T current = widget.initial; - late final int initialIndex = max(widget.values.indexOf(widget.initial), 0); - - @override - Widget build(BuildContext context) { - return $Dialog$( - title: widget.title, - primary: $Action$( - text: _i18n.submit, - isDefault: true, - onPressed: () { - context.navigator.pop(current); - }, - ), - secondary: $Action$( - text: _i18n.cancel, - onPressed: () { - context.navigator.pop(); - }, - ), - make: (ctx) => PlatformTextButton( - child: current.toString().text(), - onPressed: () async { - FixedExtentScrollController controller = FixedExtentScrollController(initialItem: initialIndex); - controller.addListener(() { - final selected = widget.values[controller.selectedItem]; - if (selected != current) { - setState(() { - current = selected; - }); - } - }); - await ctx.showPicker( - count: widget.values.length, - controller: controller, - make: (ctx, index) => widget.values[index].toString().text()); - controller.dispose(); - }, - ), - ); - } -} - -class DateTimeEditor extends StatefulWidget { - final DateTime initial; - final String? title; - final DateTime firstDate; - final DateTime lastDate; - - const DateTimeEditor({ - super.key, - required this.initial, - this.title, - required this.firstDate, - required this.lastDate, - }); - - @override - State createState() => _DateTimeEditorState(); -} - -class _DateTimeEditorState extends State { - late DateTime current = widget.initial; - - @override - Widget build(BuildContext context) { - return $Dialog$( - title: widget.title, - primary: $Action$( - text: _i18n.submit, - isDefault: true, - onPressed: () { - context.navigator.pop(current); - }), - secondary: $Action$( - text: _i18n.cancel, - onPressed: () { - context.navigator.pop(); - }), - make: (ctx) => PlatformTextButton( - child: current.toString().text(), - onPressed: () async { - final newDate = await showDatePicker( - context: context, - initialDate: widget.initial, - firstDate: widget.firstDate, - lastDate: widget.lastDate, - ); - if (newDate != null) { - setState(() { - current = newDate; - }); - } - }, - ), - ); - } -} - -class IntEditor extends StatefulWidget { - final int initial; - final String? title; - - const IntEditor({super.key, required this.initial, this.title}); - - @override - State createState() => _IntEditorState(); -} - -class _IntEditorState extends State { - late TextEditingController controller; - late int value = widget.initial; - - @override - void initState() { - super.initState(); - controller = TextEditingController(text: widget.initial.toString()); - } - - @override - void dispose() { - controller.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return $Dialog$( - title: widget.title, - primary: $Action$( - text: _i18n.submit, - isDefault: true, - onPressed: () { - context.navigator.pop(value); - }), - secondary: $Action$( - text: _i18n.cancel, - onPressed: () { - context.navigator.pop(); - }), - make: (ctx) => buildBody(ctx)); - } - - Widget buildBody(BuildContext ctx) { - return Row( - children: [ - PlatformTextButton( - child: Icon(ctx.icons.remove), - onPressed: () { - setState(() { - value--; - controller.text = value.toString(); - }); - }, - ), - $TextField$( - controller: controller, - keyboardType: TextInputType.number, - inputFormatters: [ - FilteringTextInputFormatter.allow(RegExp(r'\d')), - ], - onChanged: (v) { - final newV = int.tryParse(v); - if (newV != null) { - setState(() { - value = newV; - }); - } - }, - ).sized(w: 100), - PlatformTextButton( - child: Icon(ctx.icons.add), - onPressed: () { - setState(() { - value++; - controller.text = value.toString(); - }); - }, - ), - ], - ); - } -} - -class BoolEditor extends StatefulWidget { - final bool initial; - final String? desc; - - const BoolEditor({super.key, required this.initial, this.desc}); - - @override - State createState() => _BoolEditorState(); -} - -class _BoolEditorState extends State { - late bool value = widget.initial; - - @override - Widget build(BuildContext context) { - return $Dialog$( - primary: $Action$( - text: _i18n.submit, - isDefault: true, - onPressed: () { - context.navigator.pop(value); - }), - secondary: $Action$( - text: _i18n.cancel, - onPressed: () { - context.navigator.pop(); - }), - make: (ctx) => $ListTile$( - title: (widget.desc ?? "").text(), - trailing: Switch.adaptive( - value: value, - onChanged: (newValue) { - setState(() { - value = newValue; - }); - }, - ))); - } -} - -class StringEditor extends StatefulWidget { - final String initial; - final String? title; - - const StringEditor({ - super.key, - required this.initial, - this.title, - }); - - @override - State createState() => _StringEditorState(); -} - -class _StringEditorState extends State { - late TextEditingController controller; - - @override - void initState() { - super.initState(); - controller = TextEditingController(text: widget.initial); - } - - @override - void dispose() { - controller.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final lines = context.isPortrait ? widget.initial.length ~/ 30 + 1 : widget.initial.length ~/ 100 + 1; - return $Dialog$( - title: widget.title, - primary: $Action$( - text: _i18n.submit, - isDefault: true, - onPressed: () { - context.navigator.pop(controller.text); - }, - ), - secondary: $Action$( - text: _i18n.cancel, - onPressed: () { - context.navigator.pop(); - }, - ), - make: (ctx) => $TextField$( - maxLines: lines, - controller: controller, - ), - ); - } -} - -class StringsEditor extends StatefulWidget { - final List<({String name, String initial})> fields; - final String? title; - final T Function(List values) ctor; - - const StringsEditor({ - super.key, - required this.fields, - required this.title, - required this.ctor, - }); - - @override - State createState() => _StringsEditorState(); -} - -class _StringsEditorState extends State { - late List<({String name, TextEditingController $value})> $values; - - late TextEditingController $password; - - @override - void initState() { - super.initState(); - $values = widget.fields.map((e) => (name: e.name, $value: TextEditingController(text: e.initial))).toList(); - } - - @override - void dispose() { - for (final (name: _, :$value) in $values) { - $value.dispose(); - } - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return $Dialog$( - title: widget.title, - make: (ctx) => $values.map((e) => buildField(e.name, e.$value)).toList().column(mas: MainAxisSize.min), - primary: $Action$( - text: _i18n.submit, - onPressed: () { - context.navigator.pop(widget.ctor($values.map((e) => e.$value.text).toList())); - }), - secondary: $Action$( - text: _i18n.cancel, - onPressed: () { - context.navigator.pop(); - }), - ); - } - - Widget buildField(String fieldName, TextEditingController controller) { - return $TextField$( - controller: controller, - textInputAction: TextInputAction.next, - labelText: fieldName, - ).padV(1); - } -} diff --git a/lib/design/adaptive/foundation.dart b/lib/design/adaptive/foundation.dart deleted file mode 100644 index 877ea99cc..000000000 --- a/lib/design/adaptive/foundation.dart +++ /dev/null @@ -1,279 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:modal_bottom_sheet/modal_bottom_sheet.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'multiplatform.dart'; - -const _kDialogAlpha = 0.89; - -extension $BuildContextEx$ on BuildContext { - Future showSheet( - WidgetBuilder builder, { - bool dismissible = true, - bool useRootNavigator = false, - }) async { - if (isCupertino) { - return await showCupertinoModalBottomSheet( - context: this, - builder: builder, - animationCurve: Curves.fastEaseInToSlowEaseOut, - isDismissible: dismissible, - useRootNavigator: useRootNavigator, - ); - } else { - // dismissible not working with CustomScrollView - // see https://github.com/flutter/flutter/issues/36283 - return await showModalBottomSheet( - context: this, - builder: builder, - isDismissible: dismissible, - isScrollControlled: true, - useSafeArea: true, - // It's a workaround - showDragHandle: true, - useRootNavigator: useRootNavigator, - ); - } - } -} - -class $Action$ { - final String text; - final bool isDefault; - final bool warning; - final VoidCallback? onPressed; - - const $Action$({ - required this.text, - this.onPressed, - this.isDefault = false, - this.warning = false, - }); -} - -class $Dialog$ extends StatelessWidget { - final String? title; - final $Action$ primary; - final $Action$? secondary; - - /// Highlight the title - final bool serious; - final WidgetBuilder make; - - const $Dialog$({ - super.key, - this.title, - required this.primary, - required this.make, - this.secondary, - this.serious = false, - }); - - @override - Widget build(BuildContext context) { - Widget dialog; - final second = secondary; - if (isCupertino) { - dialog = CupertinoAlertDialog( - title: title?.text(style: TextStyle(fontWeight: FontWeight.w600, color: serious ? context.$red$ : null)), - content: make(context), - actions: [ - if (second != null) - CupertinoDialogAction( - isDestructiveAction: second.warning, - isDefaultAction: second.isDefault, - onPressed: () { - second.onPressed?.call(); - }, - child: second.text.text(), - ), - CupertinoDialogAction( - isDestructiveAction: primary.warning, - isDefaultAction: primary.isDefault, - onPressed: () { - primary.onPressed?.call(); - }, - child: primary.text.text(), - ) - ], - ); - } else { - // For other platform - dialog = AlertDialog( - backgroundColor: context.theme.dialogBackgroundColor.withOpacity(_kDialogAlpha), - title: title?.text(style: TextStyle(fontWeight: FontWeight.w600, color: serious ? context.$red$ : null)), - content: make(context), - actions: [ - if (second != null) - TextButton( - onPressed: () { - second.onPressed?.call(); - }, - child: second.text.text( - textAlign: TextAlign.end, - style: TextStyle( - color: second.warning ? context.$red$ : null, - fontWeight: second.isDefault ? FontWeight.w600 : null, - ), - ), - ), - TextButton( - onPressed: () { - primary.onPressed?.call(); - }, - child: primary.text.text( - textAlign: TextAlign.end, - style: TextStyle( - color: primary.warning ? context.$red$ : null, - fontWeight: primary.isDefault ? FontWeight.w600 : null, - ), - )), - ], - actionsAlignment: MainAxisAlignment.spaceEvenly, - ); - } - return dialog; - } -} - -class $ListTile$ extends StatelessWidget { - final Widget title; - final Widget? subtitle; - final Widget? leading; - final Widget? trailing; - final FutureOr Function()? onTap; - - const $ListTile$({ - super.key, - required this.title, - this.subtitle, - this.leading, - this.trailing, - this.onTap, - }); - - @override - Widget build(BuildContext context) { - if (isCupertino) { - return CupertinoListTile( - title: title, - subtitle: subtitle, - leading: leading, - trailing: trailing, - onTap: onTap, - ); - } else { - return ListTile( - title: title, - subtitle: subtitle, - leading: leading, - trailing: trailing, - onTap: onTap, - ); - } - } -} - -class $TextField$ extends StatelessWidget { - final TextEditingController? controller; - final String? placeholder; - final Widget? prefixIcon; - final Widget? suffixIcon; - final bool autofocus; - - /// On Cupertino, it's a candidate of placeholder. - /// On Material, it's the [InputDecoration.labelText] - final String? labelText; - final TextInputAction? textInputAction; - final ValueChanged? onSubmit; - final Iterable? autofillHints; - final TextInputType? keyboardType; - final int? maxLines; - final List? inputFormatters; - final ValueChanged? onChanged; - - const $TextField$({ - super.key, - this.controller, - this.autofocus = false, - this.placeholder, - this.labelText, - this.autofillHints, - this.textInputAction, - this.prefixIcon, - this.suffixIcon, - this.onSubmit, - this.maxLines, - this.keyboardType, - this.inputFormatters, - this.onChanged, - }); - - @override - Widget build(BuildContext context) { - if (isCupertino) { - return CupertinoTextField( - controller: controller, - autofocus: autofocus, - placeholder: placeholder ?? labelText, - textInputAction: textInputAction, - prefix: prefixIcon, - suffix: suffixIcon, - autofillHints: autofillHints, - onSubmitted: onSubmit, - maxLines: maxLines, - onChanged: onChanged, - keyboardType: keyboardType, - inputFormatters: inputFormatters, - decoration: const BoxDecoration( - color: CupertinoDynamicColor.withBrightness( - color: CupertinoColors.white, - darkColor: CupertinoColors.darkBackgroundGray, - ), - border: _kDefaultRoundedBorder, - borderRadius: BorderRadius.all(Radius.circular(8.0)), - ), - style: CupertinoTheme.of(context).textTheme.textStyle, - ); - } else { - return TextFormField( - controller: controller, - autofocus: autofocus, - textInputAction: textInputAction, - maxLines: maxLines, - keyboardType: keyboardType, - inputFormatters: inputFormatters, - onChanged: onChanged, - decoration: InputDecoration( - hintText: placeholder, - icon: prefixIcon, - labelText: labelText, - suffixIcon: suffixIcon, - ), - onFieldSubmitted: onSubmit, - ); - } - } -} - -const BorderSide _kDefaultRoundedBorderSide = BorderSide( - color: CupertinoDynamicColor.withBrightness( - color: Color(0x33000000), - darkColor: Color(0xAAA0A0A0), - ), - width: 1.0, -); -const Border _kDefaultRoundedBorder = Border( - top: _kDefaultRoundedBorderSide, - bottom: _kDefaultRoundedBorderSide, - left: _kDefaultRoundedBorderSide, - right: _kDefaultRoundedBorderSide, -); - -extension ColorEx on BuildContext { - Color get $red$ => isCupertino ? CupertinoDynamicColor.resolve(CupertinoColors.systemRed, this) : Colors.redAccent; -} diff --git a/lib/design/adaptive/menu.dart b/lib/design/adaptive/menu.dart deleted file mode 100644 index ead2b76c5..000000000 --- a/lib/design/adaptive/menu.dart +++ /dev/null @@ -1,193 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:pull_down_button/pull_down_button.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'multiplatform.dart'; - -abstract class PullDownEntry { - PullDownMenuEntry buildCupertino(BuildContext context); - - Widget buildMaterial(BuildContext context); -} - -class PullDownDivider implements PullDownEntry { - const PullDownDivider(); - - @override - PullDownMenuEntry buildCupertino(BuildContext context) { - return const PullDownMenuDivider.large(); - } - - @override - Widget buildMaterial(BuildContext context) { - return const Divider(); - } -} - -class PullDownItem implements PullDownEntry { - final String title; - final VoidCallback? onTap; - final IconData? icon; - final bool destructive; - - const PullDownItem({ - required this.title, - this.onTap, - this.icon, - this.destructive = false, - }); - - const PullDownItem.edit({ - required this.title, - this.onTap, - this.icon, - this.destructive = false, - }); - - const PullDownItem.delete({ - required this.title, - this.onTap, - this.icon, - }) : destructive = true; - - @override - PullDownMenuEntry buildCupertino(BuildContext context) { - return PullDownMenuItem( - onTap: onTap, - title: title, - isDestructive: destructive, - icon: icon, - ); - } - - @override - Widget buildMaterial(BuildContext context) { - final icon = this.icon; - return MenuItemButton( - leadingIcon: icon == null ? null : Icon(icon), - onPressed: onTap, - child: title.text(style: context.textTheme.titleMedium?.copyWith(color: context.colorScheme.onSurface)).padH(8), - ); - } -} - -class SelectableMenuItemButton extends StatelessWidget { - final bool selected; - final Widget? leading; - final Widget child; - final VoidCallback? onTap; - - const SelectableMenuItemButton({ - super.key, - this.leading, - required this.child, - required this.selected, - this.onTap, - }); - - @override - Widget build(BuildContext context) { - return MenuItemButton( - leadingIcon: leading, - onPressed: () { - onTap?.call(); - }, - trailingIcon: Icon(selected ? context.icons.checkMark : null), - child: child, - ); - } -} - -class PullDownSelectable implements PullDownEntry { - final bool selected; - final String title; - final VoidCallback? onTap; - final IconData? icon; - final IconData? cupertinoIcon; - - const PullDownSelectable({ - required this.title, - required this.selected, - this.onTap, - this.icon, - this.cupertinoIcon, - }); - - @override - PullDownMenuEntry buildCupertino(BuildContext context) { - return PullDownMenuItem.selectable( - onTap: onTap, - selected: selected, - title: title, - icon: cupertinoIcon ?? icon, - ); - } - - @override - Widget buildMaterial(BuildContext context) { - return SelectableMenuItemButton( - leading: icon == null ? null : Icon(icon), - selected: selected, - onTap: onTap, - child: title.text(style: context.textTheme.titleMedium?.copyWith(color: context.colorScheme.onSurface)), - ); - } -} - -class PullDownMenuButton extends StatefulWidget { - final List Function(BuildContext context) itemBuilder; - - const PullDownMenuButton({ - super.key, - required this.itemBuilder, - }); - - @override - State createState() => _PullDownMenuButtonState(); -} - -class _PullDownMenuButtonState extends State { - final _focus = FocusNode(); - - @override - void dispose() { - _focus.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - if (isCupertino) { - return PullDownButton( - itemBuilder: (context) => widget.itemBuilder(context).map((item) => item.buildCupertino(context)).toList(), - buttonBuilder: (context, showMenu) => CupertinoButton( - onPressed: showMenu, - padding: EdgeInsets.zero, - child: const Icon(CupertinoIcons.ellipsis_circle), - ), - ); - } else { - return MenuAnchor( - childFocusNode: _focus, - clipBehavior: Clip.hardEdge, - menuChildren: widget.itemBuilder(context).map((item) => item.buildMaterial(context)).toList(), - consumeOutsideTap: true, - builder: (ctx, controller, child) { - return IconButton( - focusNode: _focus, - padding: EdgeInsets.zero, - onPressed: () { - if (controller.isOpen) { - controller.close(); - } else { - controller.open(); - } - }, - icon: Icon(Icons.adaptive.more), - ); - }, - ); - } - } -} diff --git a/lib/design/adaptive/multiplatform.dart b/lib/design/adaptive/multiplatform.dart deleted file mode 100644 index bd1f6ba97..000000000 --- a/lib/design/adaptive/multiplatform.dart +++ /dev/null @@ -1,44 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/r.dart'; -import 'package:universal_platform/universal_platform.dart'; - -bool get isCupertino => R.debugCupertino || UniversalPlatform.isIOS || UniversalPlatform.isMacOS; - -bool get supportContextMenu => - kIsWeb || UniversalPlatform.isIOS || UniversalPlatform.isMacOS || UniversalPlatform.isDesktop; - -extension ShareX on BuildContext { - Rect? getSharePositionOrigin() { - final box = findRenderObject() as RenderBox?; - final sharePositionOrigin = box == null ? null : box.localToGlobal(Offset.zero) & box.size; - if (UniversalPlatform.isIOS || UniversalPlatform.isMacOS) { - assert(sharePositionOrigin != null, "sharePositionOrigin should be nonnull on iPad and macOS"); - } - return sharePositionOrigin; - } -} - -extension BuildContextPlatformIconsX on BuildContext { - PlatformIcons get icons => PlatformIcons(this); -} - -extension PlatformIconsX on PlatformIcons { - IconData get lock => isMaterial(context) ? Icons.lock : CupertinoIcons.lock; - - IconData get copy => isMaterial(context) ? Icons.copy : CupertinoIcons.plus_square_on_square; - - IconData get calendar => isMaterial(context) ? Icons.calendar_month : CupertinoIcons.calendar; - - IconData get qrcode => isMaterial(context) ? Icons.qr_code : CupertinoIcons.qrcode; - - IconData get preview => isMaterial(context) ? Icons.preview : CupertinoIcons.eye; - - IconData get warningFilled => isMaterial(context) ? Icons.error : CupertinoIcons.exclamationmark_circle_fill; - - IconData get warning => isMaterial(context) ? Icons.error_outline : CupertinoIcons.exclamationmark_circle; - - IconData get troubleshoot => isMaterial(context) ? Icons.troubleshoot : CupertinoIcons.wrench; -} diff --git a/lib/design/adaptive/swipe.dart b/lib/design/adaptive/swipe.dart deleted file mode 100644 index 2ed71a903..000000000 --- a/lib/design/adaptive/swipe.dart +++ /dev/null @@ -1,79 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_swipe_action_cell/flutter_swipe_action_cell.dart' as w; -import 'package:rettulf/rettulf.dart'; - -class SwipeAction { - final VoidCallback action; - final IconData? icon; - final String? label; - final bool fullSwipeAction; - final bool destructive; - final Color color; - - const SwipeAction({ - required this.action, - this.icon, - this.label, - this.fullSwipeAction = false, - this.destructive = false, - this.color = Colors.green, - }); - - const SwipeAction.delete({ - required this.action, - this.icon, - this.label, - }) : destructive = true, - fullSwipeAction = true, - color = Colors.red; - - w.SwipeAction build(BuildContext context) { - return w.SwipeAction( - title: label, - icon: Icon(icon), - style: context.textTheme.titleSmall ?? const TextStyle(), - performsFirstActionWithFullSwipe: fullSwipeAction, - onTap: (w.CompletionHandler handler) async { - await handler(destructive); - action(); - }, - color: color, - ); - } -} - -class WithSwipeAction extends StatelessWidget { - final Widget child; - final SwipeAction? left; - final SwipeAction? right; - final Key childKey; - - const WithSwipeAction({ - super.key, - required this.childKey, - required this.child, - this.left, - this.right, - }); - - @override - Widget build(BuildContext context) { - final left = this.left; - final right = this.right; - return w.SwipeActionCell( - key: childKey, - backgroundColor: Colors.transparent, - leadingActions: left == null - ? null - : [ - left.build(context), - ], - trailingActions: right == null - ? null - : [ - right.build(context), - ], - child: child, - ); - } -} diff --git a/lib/design/animation/animated.dart b/lib/design/animation/animated.dart deleted file mode 100644 index dcc589c7d..000000000 --- a/lib/design/animation/animated.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:flutter/material.dart'; - -extension AnimatedEx on Widget { - Widget animatedSwitched({ - Duration duration = Durations.medium2, - Curve? switchInCurve, - Curve? switchOutCurve, - }) => - AnimatedSwitcher( - switchInCurve: switchInCurve ?? Curves.linear, - switchOutCurve: switchOutCurve ?? Curves.linear, - duration: duration, - child: this, - ); - - Widget animatedSized({ - Duration duration = Durations.medium2, - Alignment align = Alignment.center, - Curve curve = Curves.fastEaseInToSlowEaseOut, - }) => - AnimatedSize( - curve: curve, - duration: duration, - alignment: align, - child: this, - ); -} diff --git a/lib/design/animation/button.dart b/lib/design/animation/button.dart deleted file mode 100644 index 54de3d3d3..000000000 --- a/lib/design/animation/button.dart +++ /dev/null @@ -1,209 +0,0 @@ -// Steal from "https://github.com/ThomasEcalle/bouncing_widget" -import 'package:flutter/material.dart'; - -class Bouncing extends StatefulWidget { - /// Child that will receive the bouncing animation - final Widget child; - - /// Callback on click event - final VoidCallback? onPressed; - - /// Scale factor - /// < 0 => the bouncing will be reversed and widget will grow - /// 1 => default value - /// > 1 => increase the bouncing effect - final double scaleFactor; - - /// Animation duration - final Duration duration; - - /// Whether the animation can revers or not - final bool stayOnBottom; - - /// BouncingWidget constructor - const Bouncing({ - super.key, - required this.child, - this.onPressed, - this.scaleFactor = 1, - this.duration = const Duration(milliseconds: 200), - this.stayOnBottom = false, - }); - - @override - State createState() => _BouncingState(); -} - -class _BouncingState extends State with SingleTickerProviderStateMixin { - /// Animation controller - late AnimationController _controller; - - /// View scale used in order to make the bouncing animation - late double _scale; - - /// Key of the given child used to get its size and position whenever we need - final GlobalKey _childKey = GlobalKey(); - - /// If the touch position is outside or not of the given child - bool _isOutside = false; - - /// Simple getter on widget's child - Widget get child => widget.child; - - /// Simple getter on widget's onPressed callback - VoidCallback? get onPressed => widget.onPressed; - - /// Simple getter on widget's scaleFactor - double get scaleFactor => widget.scaleFactor; - - /// Simple getter on widget's animation duration - Duration get duration => widget.duration; - - /// Simple getter on widget's stayOnBottom boolean - bool get _stayOnBottom => widget.stayOnBottom; - - /// We instantiate the animation controller - /// The idea is to call setState() each time the controller's - /// value changes - @override - void initState() { - _controller = AnimationController( - vsync: this, - duration: duration, - lowerBound: 0.0, - upperBound: 0.1, - )..addListener(() { - setState(() {}); - }); - - super.initState(); - } - - @override - void didUpdateWidget(Bouncing oldWidget) { - if (oldWidget.stayOnBottom != _stayOnBottom) { - if (!_stayOnBottom) { - _reverseAnimation(); - } - } - super.didUpdateWidget(oldWidget); - } - - /// Dispose the animation controller - @override - void dispose() { - _controller.dispose(); - super.dispose(); - } - - /// Each time the [_controller]'s value changes, build() will be called - /// We just have to calculate the appropriate scale from the controller value - /// and pass it to our Transform.scale widget - @override - Widget build(BuildContext context) { - _scale = 1 - (_controller.value * scaleFactor); - return GestureDetector( - onTapDown: _onTapDown, - onTapUp: _onTapUp, - onLongPressEnd: (details) => _onLongPressEnd(details, context), - onHorizontalDragEnd: _onDragEnd, - onVerticalDragEnd: _onDragEnd, - onHorizontalDragUpdate: (details) => _onDragUpdate(details, context), - onVerticalDragUpdate: (details) => _onDragUpdate(details, context), - child: Transform.scale( - key: _childKey, - scale: _scale, - child: child, - ), - ); - } - - /// Simple method called when we need to notify the user of a press event - void _triggerOnPressed() { - onPressed?.call(); - } - - /// We start the animation - void _onTapDown(TapDownDetails details) { - _controller.forward(); - } - - /// We reverse the animation and notify the user of a press event - void _onTapUp(TapUpDetails details) { - if (!_stayOnBottom) { - Future.delayed(duration, () { - _reverseAnimation(); - }); - } - - _triggerOnPressed(); - } - - /// Here we are listening on each change when drag event is triggered - /// We must keep the [_isOutside] value updated in order to use it later - void _onDragUpdate(DragUpdateDetails details, BuildContext context) { - final Offset touchPosition = details.globalPosition; - _isOutside = _isOutsideChildBox(touchPosition); - } - - /// When this callback is triggered, we reverse the animation - /// If the touch position is inside the children renderBox, we notify the user of a press event - void _onLongPressEnd(LongPressEndDetails details, BuildContext context) { - final Offset touchPosition = details.globalPosition; - - if (!_isOutsideChildBox(touchPosition)) { - _triggerOnPressed(); - } - - _reverseAnimation(); - } - - /// When this callback is triggered, we reverse the animation - /// As we do not have position details, we use the [_isOutside] field to know - /// if we need to notify the user of a press event - void _onDragEnd(DragEndDetails details) { - if (!_isOutside) { - _triggerOnPressed(); - } - _reverseAnimation(); - } - - void _reverseAnimation() { - if (mounted) { - _controller.reverse(); - } - } - - /// Method called when we need to now if a specific touch position is inside the given - /// child render box - bool _isOutsideChildBox(Offset touchPosition) { - final RenderBox? childRenderBox = _childKey.currentContext?.findRenderObject() as RenderBox?; - if (childRenderBox == null) { - return true; - } - final Size childSize = childRenderBox.size; - final Offset childPosition = childRenderBox.localToGlobal(Offset.zero); - - return (touchPosition.dx < childPosition.dx || - touchPosition.dx > childPosition.dx + childSize.width || - touchPosition.dy < childPosition.dy || - touchPosition.dy > childPosition.dy + childSize.height); - } -} - -extension BouncingEx on Widget { - Bouncing withBouncing({ - VoidCallback? onTap, - Key? key, - double scale = 1, - Duration duration = const Duration(milliseconds: 200), - bool stayOnBottom = false, - }) => - Bouncing( - onPressed: onTap, - scaleFactor: scale, - duration: duration, - stayOnBottom: stayOnBottom, - child: this, - ); -} diff --git a/lib/design/animation/number.dart b/lib/design/animation/number.dart deleted file mode 100644 index 4cc9f6d3c..000000000 --- a/lib/design/animation/number.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'package:flutter/widgets.dart'; - -class AnimatedNumber extends StatelessWidget { - final Duration duration; - final double value; - final Widget Function(BuildContext context, double value) builder; - - const AnimatedNumber({ - super.key, - required this.value, - required this.builder, - this.duration = const Duration(milliseconds: 300), - }); - - @override - Widget build(BuildContext context) { - return TweenAnimationBuilder( - tween: Tween(begin: value, end: value), - duration: duration, - builder: (ctx, value, _) => builder(ctx, value), - ); - } -} diff --git a/lib/design/animation/progress.dart b/lib/design/animation/progress.dart deleted file mode 100644 index 6acc34f77..000000000 --- a/lib/design/animation/progress.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:flutter/material.dart'; - -class ProgressWatcher { - double _progress; - final void Function(double progress)? callback; - - ProgressWatcher({ - double initial = 0.0, - this.callback, - }) : _progress = initial; - - double get value => _progress; - - set value(double newV) { - _progress = newV; - callback?.call(newV); - } -} - -class AnimatedProgressBar extends StatelessWidget { - final double value; - final Duration duration; - - const AnimatedProgressBar({ - super.key, - required this.value, - this.duration = const Duration(milliseconds: 250), - }); - - @override - Widget build(BuildContext context) { - return TweenAnimationBuilder( - duration: duration, - curve: Curves.easeInOut, - tween: Tween( - begin: 0, - end: value, - ), - builder: (context, value, _) => LinearProgressIndicator(value: value), - ); - } -} diff --git a/lib/design/dash_decoration.dart b/lib/design/dash_decoration.dart deleted file mode 100644 index 1807e4689..000000000 --- a/lib/design/dash_decoration.dart +++ /dev/null @@ -1,115 +0,0 @@ -import 'dart:ui'; -import 'package:flutter/widgets.dart'; - -class DashDecoration extends Decoration { - final Set borders; - final Shape shape; - final Color color; - final BorderRadius? borderRadius; - final List dash; - final double strokeWidth; - - const DashDecoration({ - this.borders = const {}, - this.shape = Shape.line, - this.color = const Color(0xFF9E9E9E), - this.borderRadius, - this.dash = const [5, 5], - this.strokeWidth = 1, - }); - - @override - BoxPainter createBoxPainter([VoidCallback? onChanged]) { - return _DashPainter( - shape: shape, - borders: borders, - color: color, - borderRadius: borderRadius, - dash: dash, - strokeWidth: strokeWidth, - ); - } -} - -class _DashPainter extends BoxPainter { - final Set borders; - final Shape shape; - final Color color; - final BorderRadius borderRadius; - final List dash; - final double strokeWidth; - - _DashPainter({ - required this.shape, - required this.borders, - required this.color, - BorderRadius? borderRadius, - required this.dash, - required this.strokeWidth, - }) : borderRadius = borderRadius ?? BorderRadius.circular(0); - - @override - void paint(Canvas canvas, Offset offset, ImageConfiguration configuration) { - Path outPath = Path(); - if (shape == Shape.line) { - for (final border in borders) { - if (border == LinePosition.left) { - outPath.moveTo(offset.dx, offset.dy); - outPath.lineTo(offset.dx, offset.dy + configuration.size!.height); - } else if (border == LinePosition.top) { - outPath.moveTo(offset.dx, offset.dy); - outPath.lineTo(offset.dx + configuration.size!.width, offset.dy); - } else if (border == LinePosition.right) { - outPath.moveTo(offset.dx + configuration.size!.width, offset.dy); - outPath.lineTo(offset.dx + configuration.size!.width, offset.dy + configuration.size!.height); - } else { - outPath.moveTo(offset.dx, offset.dy + configuration.size!.height); - outPath.lineTo(offset.dx + configuration.size!.width, offset.dy + configuration.size!.height); - } - } - } else if (shape == Shape.box) { - RRect rect = RRect.fromLTRBAndCorners( - offset.dx, - offset.dy, - offset.dx + configuration.size!.width, - offset.dy + configuration.size!.height, - bottomLeft: borderRadius.bottomLeft, - bottomRight: borderRadius.bottomRight, - topLeft: borderRadius.topLeft, - topRight: borderRadius.topRight, - ); - outPath.addRRect(rect); - } else if (shape == Shape.circle) { - outPath.addOval(Rect.fromLTWH(offset.dx, offset.dy, configuration.size!.width, configuration.size!.height)); - } - - PathMetrics metrics = outPath.computeMetrics(forceClosed: false); - Path drawPath = Path(); - - for (PathMetric me in metrics) { - double totalLength = me.length; - int index = -1; - - for (double start = 0; start < totalLength;) { - double to = start + dash[(++index) % dash.length]; - to = to > totalLength ? totalLength : to; - bool isEven = index % 2 == 0; - if (isEven) { - drawPath.addPath(me.extractPath(start, to, startWithMoveTo: true), Offset.zero); - } - start = to; - } - } - - canvas.drawPath( - drawPath, - Paint() - ..color = color - ..style = PaintingStyle.stroke - ..strokeWidth = strokeWidth); - } -} - -enum LinePosition { left, top, right, bottom } - -enum Shape { line, box, circle } diff --git a/lib/design/widgets/app.dart b/lib/design/widgets/app.dart deleted file mode 100644 index ed9d3c818..000000000 --- a/lib/design/widgets/app.dart +++ /dev/null @@ -1,73 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -class AppCard extends StatelessWidget { - /// [SizedBox] by default. - final Widget? view; - final Widget? leading; - final Widget? title; - final Widget? subtitle; - final Widget? trailing; - final List? leftActions; - - /// 12 by default. - final double? leftActionsSpacing; - final List? rightActions; - - /// 0 by default - final double? rightActionsSpacing; - - const AppCard({ - super.key, - this.view, - this.leading, - this.title, - this.subtitle, - this.trailing, - this.leftActions, - this.rightActions, - this.leftActionsSpacing, - this.rightActionsSpacing, - }); - - @override - Widget build(BuildContext context) { - final leftActions = this.leftActions ?? const []; - final rightActions = this.rightActions ?? const []; - final textTheme = context.textTheme; - return Card.filled( - clipBehavior: Clip.hardEdge, - child: [ - Theme( - data: context.theme.copyWith( - cardTheme: context.theme.cardTheme.copyWith( - // in light mode, cards look in a lower level. - elevation: context.isDarkMode ? 4 : 2, - ), - ), - child: AnimatedSize( - duration: Durations.long2, - alignment: Alignment.topCenter, - curve: Curves.fastEaseInToSlowEaseOut, - child: view ?? const SizedBox(), - ), - ), - ListTile( - leading: leading, - titleTextStyle: textTheme.titleLarge, - title: title, - subtitleTextStyle: textTheme.bodyLarge?.copyWith(color: context.colorScheme.onSurfaceVariant), - subtitle: subtitle, - trailing: trailing, - ), - OverflowBar( - alignment: MainAxisAlignment.spaceBetween, - children: [ - leftActions.wrap(spacing: leftActionsSpacing ?? 8), - rightActions.wrap(spacing: rightActionsSpacing ?? 0), - ], - ).padOnly(l: 16, b: rightActions.isEmpty ? 12 : 8, r: 16), - ].column(), - ); - } -} diff --git a/lib/design/widgets/button.dart b/lib/design/widgets/button.dart deleted file mode 100644 index 44004e6b4..000000000 --- a/lib/design/widgets/button.dart +++ /dev/null @@ -1,46 +0,0 @@ -import 'package:flutter/material.dart'; - -class PlainExtendedButton extends StatelessWidget { - final Widget label; - final Widget? icon; - final Object? hero; - final VoidCallback? tap; - - const PlainExtendedButton({super.key, this.hero, required this.label, this.icon, this.tap}); - - @override - Widget build(BuildContext context) { - return FloatingActionButton.extended( - heroTag: hero, - icon: icon, - backgroundColor: Colors.transparent, - hoverColor: Colors.transparent, - elevation: 0, - highlightElevation: 0, - label: label, - onPressed: tap, - ); - } -} - -class PlainButton extends StatelessWidget { - final Widget? label; - final Widget? child; - final Object? hero; - final VoidCallback? tap; - - const PlainButton({super.key, this.hero, this.label, this.child, this.tap}); - - @override - Widget build(BuildContext context) { - return FloatingActionButton( - heroTag: hero, - backgroundColor: Colors.transparent, - hoverColor: Colors.transparent, - elevation: 0, - highlightElevation: 0, - onPressed: tap, - child: child, - ); - } -} diff --git a/lib/design/widgets/capture.dart b/lib/design/widgets/capture.dart deleted file mode 100644 index 1a56d06ac..000000000 --- a/lib/design/widgets/capture.dart +++ /dev/null @@ -1,50 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'dart:typed_data'; -import 'package:flutter/rendering.dart'; -import 'dart:ui' as ui; - -class WidgetCaptureController { - final GlobalKey containerKey; - - const WidgetCaptureController({ - required this.containerKey, - }); - - /// to capture widget to image by GlobalKey in RenderRepaintBoundary - Future capture() async { - try { - /// boundary widget by GlobalKey - final boundary = containerKey.currentContext?.findRenderObject() as RenderRepaintBoundary?; - - /// convert boundary to image - final image = await boundary?.toImage(pixelRatio: 6); - - /// set ImageByteFormat - final byteData = await image?.toByteData(format: ui.ImageByteFormat.png); - final pngBytes = byteData?.buffer.asUint8List(); - return pngBytes; - } catch (e) { - rethrow; - } - } -} - -class WidgetCapture extends StatelessWidget { - final Widget? child; - final WidgetCaptureController controller; - - const WidgetCapture({ - super.key, - required this.controller, - required this.child, - }); - - @override - Widget build(BuildContext context) { - /// to capture widget to image by GlobalKey in RepaintBoundary - return RepaintBoundary( - key: controller.containerKey, - child: child, - ); - } -} diff --git a/lib/design/widgets/card.dart b/lib/design/widgets/card.dart deleted file mode 100644 index e04101223..000000000 --- a/lib/design/widgets/card.dart +++ /dev/null @@ -1,51 +0,0 @@ -import 'package:flutter/material.dart'; - -enum CardVariant { - elevated, - filled, - outlined; -} - -extension WidgetCardX on Widget { - Widget inOutlinedCard({ - Clip? clip, - }) { - return Card.outlined( - clipBehavior: clip, - child: this, - ); - } - - Widget inFilledCard({ - Clip? clip, - }) { - return Card.filled( - clipBehavior: clip, - child: this, - ); - } - - Widget inAnyCard({ - Clip? clip, - CardVariant type = CardVariant.elevated, - Color? color, - }) { - return switch (type) { - CardVariant.elevated => Card( - clipBehavior: clip, - color: color, - child: this, - ), - CardVariant.filled => Card.filled( - clipBehavior: clip, - color: color, - child: this, - ), - CardVariant.outlined => Card.outlined( - clipBehavior: clip, - color: color, - child: this, - ), - }; - } -} diff --git a/lib/design/widgets/common.dart b/lib/design/widgets/common.dart deleted file mode 100644 index 40a2b5854..000000000 --- a/lib/design/widgets/common.dart +++ /dev/null @@ -1,75 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_svg/svg.dart'; -import 'package:rettulf/rettulf.dart'; - -class LeavingBlank extends StatelessWidget { - final WidgetBuilder iconBuilder; - final String? desc; - final VoidCallback? onIconTap; - final Widget? subtitle; - - const LeavingBlank.builder({super.key, required this.iconBuilder, required this.desc, this.onIconTap, this.subtitle}); - - factory LeavingBlank({ - Key? key, - required IconData icon, - String? desc, - VoidCallback? onIconTap, - double size = 120, - Widget? subtitle, - }) { - return LeavingBlank.builder( - iconBuilder: (ctx) => icon.make(size: size, color: ctx.colorScheme.primary), - desc: desc, - onIconTap: onIconTap, - subtitle: subtitle, - ); - } - - factory LeavingBlank.svgAssets({ - Key? key, - required String assetName, - String? desc, - VoidCallback? onIconTap, - double width = 120, - double height = 120, - Widget? subtitle, - }) { - return LeavingBlank.builder( - iconBuilder: (ctx) => SvgPicture.asset(assetName, width: width, height: height), - desc: desc, - onIconTap: onIconTap, - subtitle: subtitle, - ); - } - - @override - Widget build(BuildContext context) { - Widget icon = iconBuilder(context).padAll(20); - if (onIconTap != null) { - icon = icon.on(tap: onIconTap); - } - if (subtitle != null) { - return [ - icon, - if (desc != null) buildDesc(context, desc!), - subtitle!, - ].column(maa: MainAxisAlignment.spaceAround, mas: MainAxisSize.min).center(); - } else { - return [ - icon, - if (desc != null) buildDesc(context, desc!), - ].column(maa: MainAxisAlignment.spaceAround, mas: MainAxisSize.min).center(); - } - } - - Widget buildDesc(BuildContext ctx, String desc) { - return desc - .text( - style: ctx.textTheme.titleLarge, - textAlign: TextAlign.center, - ) - .center() - .padAll(10); - } -} diff --git a/lib/design/widgets/duration_picker.dart b/lib/design/widgets/duration_picker.dart deleted file mode 100644 index 13192546a..000000000 --- a/lib/design/widgets/duration_picker.dart +++ /dev/null @@ -1,886 +0,0 @@ -/* -Original author: https://github.com/juliansteenbakker/duration_picker - -MIT License - -Copyright (c) 2018 Chris Harris - -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. - */ - -import 'dart:async'; -import 'dart:math' as math; - -import 'package:flutter/material.dart'; - -const Duration _kDialAnimateDuration = Duration(milliseconds: 200); - -const double _kDurationPickerWidthPortrait = 328.0; -const double _kDurationPickerWidthLandscape = 512.0; - -const double _kDurationPickerHeightPortrait = 380.0; -const double _kDurationPickerHeightLandscape = 304.0; - -const double _kTwoPi = 2 * math.pi; -const double _kPiByTwo = math.pi / 2; - -const double _kCircleTop = _kPiByTwo; - -/// Use [DialPainter] to style the durationPicker to your style. -class DialPainter extends CustomPainter { - const DialPainter({ - required this.context, - required this.labels, - required this.backgroundColor, - required this.accentColor, - required this.theta, - required this.textDirection, - required this.selectedValue, - required this.pct, - required this.baseUnitMultiplier, - required this.baseUnitHand, - required this.baseUnit, - }); - - final List labels; - final Color? backgroundColor; - final Color accentColor; - final double theta; - final TextDirection textDirection; - final int? selectedValue; - final BuildContext context; - - final double pct; - final int baseUnitMultiplier; - final int baseUnitHand; - final BaseUnit baseUnit; - - @override - void paint(Canvas canvas, Size size) { - const epsilon = .001; - const sweep = _kTwoPi - epsilon; - const startAngle = -math.pi / 2.0; - - final radius = size.shortestSide / 2.0; - final center = Offset(size.width / 2.0, size.height / 2.0); - final centerPoint = center; - - final pctTheta = (0.25 - (theta % _kTwoPi) / _kTwoPi) % 1.0; - - // Draw the background outer ring - canvas.drawCircle(centerPoint, radius, Paint()..color = backgroundColor!); - - // Draw a translucent circle for every secondary unit - for (var i = 0; i < baseUnitMultiplier; i = i + 1) { - canvas.drawCircle( - centerPoint, - radius, - Paint()..color = accentColor.withOpacity((i == 0) ? 0.3 : 0.1), - ); - } - - // Draw the inner background circle - canvas.drawCircle( - centerPoint, - radius * 0.88, - Paint()..color = Theme.of(context).canvasColor, - ); - - // Get the offset point for an angle value of theta, and a distance of _radius - Offset getOffsetForTheta(double theta, double radius) { - return center + Offset(radius * math.cos(theta), -radius * math.sin(theta)); - } - - // Draw the handle that is used to drag and to indicate the position around the circle - final handlePaint = Paint()..color = accentColor; - final handlePoint = getOffsetForTheta(theta, radius - 10.0); - canvas.drawCircle(handlePoint, 20.0, handlePaint); - - // Get the appropriate base unit string - String getBaseUnitString() { - switch (baseUnit) { - case BaseUnit.millisecond: - return 'ms.'; - case BaseUnit.second: - return 'sec.'; - case BaseUnit.minute: - return 'min.'; - case BaseUnit.hour: - return 'hr.'; - } - } - - // Get the appropriate secondary unit string - String getSecondaryUnitString() { - switch (baseUnit) { - case BaseUnit.millisecond: - return 's '; - case BaseUnit.second: - return 'm '; - case BaseUnit.minute: - return 'h '; - case BaseUnit.hour: - return 'd '; - } - } - - // Draw the Text in the center of the circle which displays the duration string - final secondaryUnits = (baseUnitMultiplier == 0) ? '' : '$baseUnitMultiplier${getSecondaryUnitString()} '; - final baseUnits = '$baseUnitHand'; - - final textDurationValuePainter = TextPainter( - textAlign: TextAlign.center, - text: TextSpan( - text: '$secondaryUnits$baseUnits', - style: Theme.of(context).textTheme.displayMedium!.copyWith(fontSize: size.shortestSide * 0.15), - ), - textDirection: TextDirection.ltr, - )..layout(); - final middleForValueText = Offset( - centerPoint.dx - (textDurationValuePainter.width / 2), - centerPoint.dy - textDurationValuePainter.height / 2, - ); - textDurationValuePainter.paint(canvas, middleForValueText); - - final textMinPainter = TextPainter( - textAlign: TextAlign.center, - text: TextSpan( - text: getBaseUnitString(), //th: ${theta}', - style: Theme.of(context).textTheme.bodyMedium, - ), - textDirection: TextDirection.ltr, - )..layout(); - textMinPainter.paint( - canvas, - Offset( - centerPoint.dx - (textMinPainter.width / 2), - centerPoint.dy + (textDurationValuePainter.height / 2) - textMinPainter.height / 2, - ), - ); - - // Draw an arc around the circle for the amount of the circle that has elapsed. - final elapsedPainter = Paint() - ..style = PaintingStyle.stroke - ..strokeCap = StrokeCap.round - ..color = accentColor.withOpacity(0.3) - ..isAntiAlias = true - ..strokeWidth = radius * 0.12; - - canvas.drawArc( - Rect.fromCircle( - center: centerPoint, - radius: radius - radius * 0.12 / 2, - ), - startAngle, - sweep * pctTheta, - false, - elapsedPainter, - ); - - // Paint the labels (the minute strings) - void paintLabels(List labels) { - final labelThetaIncrement = -_kTwoPi / labels.length; - var labelTheta = _kPiByTwo; - - for (final label in labels) { - final labelOffset = Offset(-label.width / 2.0, -label.height / 2.0); - - label.paint( - canvas, - getOffsetForTheta(labelTheta, radius - 40.0) + labelOffset, - ); - - labelTheta += labelThetaIncrement; - } - } - - paintLabels(labels); - } - - @override - bool shouldRepaint(DialPainter oldDelegate) { - return oldDelegate.labels != labels || - oldDelegate.backgroundColor != backgroundColor || - oldDelegate.accentColor != accentColor || - oldDelegate.theta != theta; - } -} - -class _Dial extends StatefulWidget { - const _Dial({ - required this.duration, - required this.onChanged, - this.baseUnit = BaseUnit.minute, - this.snapToMins = 1.0, - }); - - final Duration duration; - final ValueChanged onChanged; - final BaseUnit baseUnit; - - /// The resolution of mins of the dial, i.e. if snapToMins = 5.0, only durations of 5min intervals will be selectable. - final double? snapToMins; - - @override - _DialState createState() => _DialState(); -} - -class _DialState extends State<_Dial> with SingleTickerProviderStateMixin { - @override - void initState() { - super.initState(); - _thetaController = AnimationController( - duration: _kDialAnimateDuration, - vsync: this, - ); - _thetaTween = Tween( - begin: _getThetaForDuration(widget.duration, widget.baseUnit), - ); - _theta = _thetaTween.animate( - CurvedAnimation(parent: _thetaController, curve: Curves.fastOutSlowIn), - )..addListener(() => setState(() {})); - _thetaController.addStatusListener((status) { - if (status == AnimationStatus.completed) { - _secondaryUnitValue = _secondaryUnitHand(); - _baseUnitValue = _baseUnitHand(); - setState(() {}); - } - }); - - _turningAngle = _kPiByTwo - _turningAngleFactor() * _kTwoPi; - _secondaryUnitValue = _secondaryUnitHand(); - _baseUnitValue = _baseUnitHand(); - } - - late ThemeData themeData; - MaterialLocalizations? localizations; - MediaQueryData? media; - - @override - void didChangeDependencies() { - super.didChangeDependencies(); - assert(debugCheckHasMediaQuery(context)); - themeData = Theme.of(context); - localizations = MaterialLocalizations.of(context); - media = MediaQuery.of(context); - } - - @override - void dispose() { - _thetaController.dispose(); - super.dispose(); - } - - late Tween _thetaTween; - late Animation _theta; - late AnimationController _thetaController; - - final double _pct = 0.0; - int _secondaryUnitValue = 0; - bool _dragging = false; - int _baseUnitValue = 0; - double _turningAngle = 0.0; - - static double _nearest(double target, double a, double b) { - return ((target - a).abs() < (target - b).abs()) ? a : b; - } - - void _animateTo(double targetTheta) { - final currentTheta = _theta.value; - var beginTheta = _nearest(targetTheta, currentTheta, currentTheta + _kTwoPi); - beginTheta = _nearest(targetTheta, beginTheta, currentTheta - _kTwoPi); - _thetaTween - ..begin = beginTheta - ..end = targetTheta; - _thetaController - ..value = 0.0 - ..forward(); - } - - // Converts the duration to the chosen base unit. For example, for base unit minutes, this gets the number of minutes - // in the duration - int _getDurationInBaseUnits(Duration duration, BaseUnit baseUnit) { - switch (baseUnit) { - case BaseUnit.millisecond: - return duration.inMilliseconds; - case BaseUnit.second: - return duration.inSeconds; - case BaseUnit.minute: - return duration.inMinutes; - case BaseUnit.hour: - return duration.inHours; - } - } - - // Converts the duration to the chosen secondary unit. For example, for base unit minutes, this gets the number - // of hours in the duration - int _getDurationInSecondaryUnits(Duration duration, BaseUnit baseUnit) { - switch (baseUnit) { - case BaseUnit.millisecond: - return duration.inSeconds; - case BaseUnit.second: - return duration.inMinutes; - case BaseUnit.minute: - return duration.inHours; - case BaseUnit.hour: - return duration.inDays; - } - } - - // Gets the relation between the base unit and the secondary unit, which is the unit just greater than the base unit. - // For example if the base unit is second, it will get the number of seconds in a minute - int _getBaseUnitToSecondaryUnitFactor(BaseUnit baseUnit) { - switch (baseUnit) { - case BaseUnit.millisecond: - return Duration.millisecondsPerSecond; - case BaseUnit.second: - return Duration.secondsPerMinute; - case BaseUnit.minute: - return Duration.minutesPerHour; - case BaseUnit.hour: - return Duration.hoursPerDay; - } - } - - double _getThetaForDuration(Duration duration, BaseUnit baseUnit) { - final int baseUnits = _getDurationInBaseUnits(duration, baseUnit); - final int baseToSecondaryFactor = _getBaseUnitToSecondaryUnitFactor(baseUnit); - - return (_kPiByTwo - (baseUnits % baseToSecondaryFactor) / baseToSecondaryFactor.toDouble() * _kTwoPi) % _kTwoPi; - } - - double _turningAngleFactor() { - return _getDurationInBaseUnits(widget.duration, widget.baseUnit) / - _getBaseUnitToSecondaryUnitFactor(widget.baseUnit); - } - - // TODO: Fix snap to mins - Duration _getTimeForTheta(double theta) { - return _angleToDuration(_turningAngle); - // var fractionalRotation = (0.25 - (theta / _kTwoPi)); - // fractionalRotation = fractionalRotation < 0 - // ? 1 - fractionalRotation.abs() - // : fractionalRotation; - // var mins = (fractionalRotation * 60).round(); - // debugPrint('Mins0: ${widget.snapToMins }'); - // if (widget.snapToMins != null) { - // debugPrint('Mins1: $mins'); - // mins = ((mins / widget.snapToMins!).round() * widget.snapToMins!).round(); - // debugPrint('Mins2: $mins'); - // } - // if (mins == 60) { - // // _snappedHours = _hours + 1; - // // mins = 0; - // return new Duration(hours: 1, minutes: mins); - // } else { - // // _snappedHours = _hours; - // return new Duration(hours: _hours, minutes: mins); - // } - } - - Duration _notifyOnChangedIfNeeded() { - _secondaryUnitValue = _secondaryUnitHand(); - _baseUnitValue = _baseUnitHand(); - final d = _angleToDuration(_turningAngle); - widget.onChanged(d); - - return d; - } - - void _updateThetaForPan() { - setState(() { - final offset = _position! - _center!; - final angle = (math.atan2(offset.dx, offset.dy) - _kPiByTwo) % _kTwoPi; - - // Stop accidental abrupt pans from making the dial seem like it starts from 1h. - // (happens when wanting to pan from 0 clockwise, but when doing so quickly, one actually pans from before 0 (e.g. setting the duration to 59mins, and then crossing 0, which would then mean 1h 1min). - if (angle >= _kCircleTop && - _theta.value <= _kCircleTop && - _theta.value >= 0.1 && // to allow the radians sign change at 15mins. - _secondaryUnitValue == 0) return; - - _thetaTween - ..begin = angle - ..end = angle; - }); - } - - Offset? _position; - Offset? _center; - - void _handlePanStart(DragStartDetails details) { - assert(!_dragging); - _dragging = true; - final box = context.findRenderObject() as RenderBox?; - _position = box?.globalToLocal(details.globalPosition); - _center = box?.size.center(Offset.zero); - - _notifyOnChangedIfNeeded(); - } - - void _handlePanUpdate(DragUpdateDetails details) { - final oldTheta = _theta.value; - _position = _position! + details.delta; - // _position! += details.delta; - _updateThetaForPan(); - final newTheta = _theta.value; - - _updateTurningAngle(oldTheta, newTheta); - _notifyOnChangedIfNeeded(); - } - - int _secondaryUnitHand() { - return _getDurationInSecondaryUnits(widget.duration, widget.baseUnit); - } - - int _baseUnitHand() { - // Result is in [0; num base units in secondary unit - 1], even if overall time is >= 1 secondary unit - return _getDurationInBaseUnits(widget.duration, widget.baseUnit) % - _getBaseUnitToSecondaryUnitFactor(widget.baseUnit); - } - - Duration _angleToDuration(double angle) { - return _baseUnitToDuration(_angleToBaseUnit(angle)); - } - - Duration _baseUnitToDuration(double baseUnitValue) { - final int unitFactor = _getBaseUnitToSecondaryUnitFactor(widget.baseUnit); - - switch (widget.baseUnit) { - case BaseUnit.millisecond: - return Duration( - seconds: baseUnitValue ~/ unitFactor, - milliseconds: (baseUnitValue % unitFactor.toDouble()).toInt(), - ); - case BaseUnit.second: - return Duration( - minutes: baseUnitValue ~/ unitFactor, - seconds: (baseUnitValue % unitFactor.toDouble()).toInt(), - ); - case BaseUnit.minute: - return Duration( - hours: baseUnitValue ~/ unitFactor, - minutes: (baseUnitValue % unitFactor.toDouble()).toInt(), - ); - case BaseUnit.hour: - return Duration( - days: baseUnitValue ~/ unitFactor, - hours: (baseUnitValue % unitFactor.toDouble()).toInt(), - ); - } - } - - String _durationToBaseUnitString(Duration duration) { - switch (widget.baseUnit) { - case BaseUnit.millisecond: - return duration.inMilliseconds.toString(); - case BaseUnit.second: - return duration.inSeconds.toString(); - case BaseUnit.minute: - return duration.inMinutes.toString(); - case BaseUnit.hour: - return duration.inHours.toString(); - } - } - - double _angleToBaseUnit(double angle) { - // Coordinate transformation from mathematical COS to dial COS - final dialAngle = _kPiByTwo - angle; - - // Turn dial angle into minutes, may go beyond 60 minutes (multiple turns) - return dialAngle / _kTwoPi * _getBaseUnitToSecondaryUnitFactor(widget.baseUnit); - } - - void _updateTurningAngle(double oldTheta, double newTheta) { - // Register any angle by which the user has turned the dial. - // - // The resulting turning angle fully captures the state of the dial, - // including multiple turns (= full hours). The [_turningAngle] is in - // mathematical coordinate system, i.e. 3-o-clock position being zero, and - // increasing counter clock wise. - - // From positive to negative (in mathematical COS) - if (newTheta > 1.5 * math.pi && oldTheta < 0.5 * math.pi) { - _turningAngle = _turningAngle - ((_kTwoPi - newTheta) + oldTheta); - } - // From negative to positive (in mathematical COS) - else if (newTheta < 0.5 * math.pi && oldTheta > 1.5 * math.pi) { - _turningAngle = _turningAngle + ((_kTwoPi - oldTheta) + newTheta); - } else { - _turningAngle = _turningAngle + (newTheta - oldTheta); - } - } - - void _handlePanEnd(DragEndDetails details) { - assert(_dragging); - _dragging = false; - _position = null; - _center = null; - _animateTo(_getThetaForDuration(widget.duration, widget.baseUnit)); - } - - void _handleTapUp(TapUpDetails details) { - final box = context.findRenderObject() as RenderBox?; - _position = box?.globalToLocal(details.globalPosition); - _center = box?.size.center(Offset.zero); - _updateThetaForPan(); - _notifyOnChangedIfNeeded(); - - _animateTo( - _getThetaForDuration(_getTimeForTheta(_theta.value), widget.baseUnit), - ); - _dragging = false; - _position = null; - _center = null; - } - - List _buildBaseUnitLabels(TextTheme textTheme) { - final style = textTheme.titleMedium; - - var baseUnitMarkerValues = []; - - switch (widget.baseUnit) { - case BaseUnit.millisecond: - const int interval = 100; - const int factor = Duration.millisecondsPerSecond; - const int length = factor ~/ interval; - baseUnitMarkerValues = List.generate( - length, - (index) => Duration(milliseconds: index * interval), - ); - break; - case BaseUnit.second: - const int interval = 5; - const int factor = Duration.secondsPerMinute; - const int length = factor ~/ interval; - baseUnitMarkerValues = List.generate( - length, - (index) => Duration(seconds: index * interval), - ); - break; - case BaseUnit.minute: - const int interval = 5; - const int factor = Duration.minutesPerHour; - const int length = factor ~/ interval; - baseUnitMarkerValues = List.generate( - length, - (index) => Duration(minutes: index * interval), - ); - break; - case BaseUnit.hour: - const int interval = 3; - const int factor = Duration.hoursPerDay; - const int length = factor ~/ interval; - baseUnitMarkerValues = List.generate(length, (index) => Duration(hours: index * interval)); - break; - } - - final labels = []; - for (final duration in baseUnitMarkerValues) { - final painter = TextPainter( - text: TextSpan(style: style, text: _durationToBaseUnitString(duration)), - textDirection: TextDirection.ltr, - )..layout(); - labels.add(painter); - } - return labels; - } - - @override - Widget build(BuildContext context) { - Color? backgroundColor; - switch (themeData.brightness) { - case Brightness.light: - backgroundColor = Colors.grey[200]; - break; - case Brightness.dark: - backgroundColor = themeData.colorScheme.background; - break; - } - - final theme = Theme.of(context); - - int? selectedDialValue; - _secondaryUnitValue = _secondaryUnitHand(); - _baseUnitValue = _baseUnitHand(); - - return GestureDetector( - excludeFromSemantics: true, - onPanStart: _handlePanStart, - onPanUpdate: _handlePanUpdate, - onPanEnd: _handlePanEnd, - onTapUp: _handleTapUp, - child: CustomPaint( - painter: DialPainter( - pct: _pct, - baseUnitMultiplier: _secondaryUnitValue, - baseUnitHand: _baseUnitValue, - baseUnit: widget.baseUnit, - context: context, - selectedValue: selectedDialValue, - labels: _buildBaseUnitLabels(theme.textTheme), - backgroundColor: backgroundColor, - accentColor: themeData.colorScheme.secondary, - theta: _theta.value, - textDirection: Directionality.of(context), - ), - ), - ); - } -} - -/// A duration picker designed to appear inside a popup dialog. -/// -/// Pass this widget to [showDialog]. The value returned by [showDialog] is the -/// selected [Duration] if the user taps the "OK" button, or null if the user -/// taps the "CANCEL" button. The selected time is reported by calling -/// [Navigator.pop]. -class DurationPickerDialog extends StatefulWidget { - /// Creates a duration picker. - /// - /// [initialTime] must not be null. - const DurationPickerDialog({ - super.key, - required this.initialTime, - this.baseUnit = BaseUnit.minute, - this.snapToMins = 1.0, - this.decoration, - }); - - /// The duration initially selected when the dialog is shown. - final Duration initialTime; - final BaseUnit baseUnit; - final double snapToMins; - final BoxDecoration? decoration; - - @override - DurationPickerDialogState createState() => DurationPickerDialogState(); -} - -class DurationPickerDialogState extends State { - @override - void initState() { - super.initState(); - _selectedDuration = widget.initialTime; - } - - @override - void didChangeDependencies() { - super.didChangeDependencies(); - localizations = MaterialLocalizations.of(context); - } - - Duration? get selectedDuration => _selectedDuration; - Duration? _selectedDuration; - - late MaterialLocalizations localizations; - - void _handleTimeChanged(Duration value) { - setState(() { - _selectedDuration = value; - }); - } - - void _handleCancel() { - Navigator.pop(context); - } - - void _handleOk() { - Navigator.pop(context, _selectedDuration); - } - - @override - Widget build(BuildContext context) { - assert(debugCheckHasMediaQuery(context)); - final theme = Theme.of(context); - final boxDecoration = widget.decoration ?? BoxDecoration(color: theme.dialogBackgroundColor); - final Widget picker = Padding( - padding: const EdgeInsets.all(16.0), - child: AspectRatio( - aspectRatio: 1.0, - child: _Dial( - duration: _selectedDuration!, - onChanged: _handleTimeChanged, - baseUnit: widget.baseUnit, - snapToMins: widget.snapToMins, - ), - ), - ); - - final Widget actions = ButtonBarTheme( - data: ButtonBarTheme.of(context), - child: ButtonBar( - children: [ - TextButton( - onPressed: _handleCancel, - child: Text(localizations.cancelButtonLabel), - ), - TextButton( - onPressed: _handleOk, - child: Text(localizations.okButtonLabel), - ), - ], - ), - ); - - final dialog = Dialog( - child: OrientationBuilder( - builder: (BuildContext context, Orientation orientation) { - final Widget pickerAndActions = DecoratedBox( - decoration: boxDecoration, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Expanded( - child: picker, - ), // picker grows and shrinks with the available space - actions, - ], - ), - ); - - switch (orientation) { - case Orientation.portrait: - return SizedBox( - width: _kDurationPickerWidthPortrait, - height: _kDurationPickerHeightPortrait, - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.stretch, - children: [ - Expanded( - child: pickerAndActions, - ), - ], - ), - ); - case Orientation.landscape: - return SizedBox( - width: _kDurationPickerWidthLandscape, - height: _kDurationPickerHeightLandscape, - child: Row( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.stretch, - children: [ - Flexible( - child: pickerAndActions, - ), - ], - ), - ); - } - }, - ), - ); - - return Theme( - data: theme.copyWith( - dialogBackgroundColor: Colors.transparent, - ), - child: dialog, - ); - } - - @override - void dispose() { - super.dispose(); - } -} - -/// Shows a dialog containing the duration picker. -/// -/// The returned Future resolves to the duration selected by the user when the user -/// closes the dialog. If the user cancels the dialog, null is returned. -/// -/// To show a dialog with [initialTime] equal to the current time: -/// -/// ```dart -/// showDurationPicker( -/// initialTime: new Duration.now(), -/// context: context, -/// ); -/// ``` -Future showDurationPicker({ - required BuildContext context, - required Duration initialTime, - BaseUnit baseUnit = BaseUnit.minute, - double snapToMins = 1.0, - BoxDecoration? decoration, -}) async { - return showAdaptiveDialog( - context: context, - builder: (BuildContext context) => DurationPickerDialog( - initialTime: initialTime, - baseUnit: baseUnit, - snapToMins: snapToMins, - decoration: decoration, - ), - ); -} - -/// The [DurationPicker] widget. -class DurationPicker extends StatelessWidget { - final Duration duration; - final ValueChanged onChange; - final BaseUnit baseUnit; - final double? snapToMins; - - final double? width; - final double? height; - - const DurationPicker({ - super.key, - this.duration = Duration.zero, - required this.onChange, - this.baseUnit = BaseUnit.minute, - this.snapToMins, - this.width, - this.height, - }); - - @override - Widget build(BuildContext context) { - return SizedBox( - width: width ?? _kDurationPickerWidthPortrait / 1.5, - height: height ?? _kDurationPickerHeightPortrait / 1.5, - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.stretch, - children: [ - Expanded( - child: _Dial( - duration: duration, - onChanged: onChange, - baseUnit: baseUnit, - snapToMins: snapToMins, - ), - ), - ], - ), - ); - } -} - -/// This enum contains the possible units for the [DurationPicker] -enum BaseUnit { - millisecond, - second, - minute, - hour, -} diff --git a/lib/design/widgets/entry_card.dart b/lib/design/widgets/entry_card.dart deleted file mode 100644 index 8cc49d735..000000000 --- a/lib/design/widgets/entry_card.dart +++ /dev/null @@ -1,356 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:super_context_menu/super_context_menu.dart'; -import 'package:universal_platform/universal_platform.dart'; - -enum EntryActionType { - edit, - share, - other; -} - -class EntryAction { - final IconData? icon; - final bool main; - final String label; - final EntryActionType type; - final bool oneShot; - final SingleActivator? activator; - final Future Function() action; - - const EntryAction({ - required this.label, - this.main = false, - this.icon, - this.oneShot = false, - required this.action, - this.activator, - this.type = EntryActionType.other, - }); - - const EntryAction.edit({ - required this.label, - this.main = false, - this.oneShot = false, - this.icon, - required this.action, - this.activator, - }) : type = EntryActionType.edit; - - const EntryAction.delete({ - required this.label, - this.main = false, - this.icon, - required this.action, - this.activator = const SingleActivator(LogicalKeyboardKey.delete), - }) : oneShot = true, - type = EntryActionType.edit; -} - -class EntrySelectAction { - final String selectLabel; - final String selectedLabel; - final Future Function() action; - - const EntrySelectAction({ - required this.selectLabel, - required this.selectedLabel, - required this.action, - }); -} - -class EntryCard extends StatelessWidget { - final bool selected; - final String title; - final Widget Function(BuildContext context) itemBuilder; - final Widget Function(BuildContext context, List Function(BuildContext context)? actionsBuilder) - detailsBuilder; - final List Function(BuildContext context) actions; - final EntrySelectAction? Function(BuildContext context) selectAction; - final EntryAction Function(BuildContext context)? deleteAction; - - const EntryCard({ - super.key, - required this.title, - required this.selected, - required this.itemBuilder, - required this.actions, - required this.selectAction, - required this.detailsBuilder, - this.deleteAction, - }); - - @override - Widget build(BuildContext context) { - return supportContextMenu ? buildCardWithContextMenu(context) : buildCardWithDropMenu(context); - } - - Widget buildCardWithDropMenu(BuildContext context) { - final actions = this.actions(context); - final mainActions = actions.where((action) => action.main).toList(); - final secondaryActions = actions.where((action) => !action.main).toList(); - final selectAction = this.selectAction(context); - - Widget buildMaterialMainActions() { - final all = []; - if (selectAction != null) { - all.add( - selected - ? FilledButton.icon( - icon: Icon(context.icons.checkMark), - onPressed: null, - label: selectAction.selectedLabel.text(), - ) - : FilledButton( - onPressed: selectAction.action, - child: selectAction.selectLabel.text(), - ), - ); - } - for (final action in mainActions) { - all.add(OutlinedButton( - onPressed: action.action, - child: action.label.text(), - )); - } - return all.wrap(spacing: 4); - } - - Widget buildSecondaryActionPopup() { - return PullDownMenuButton( - itemBuilder: (ctx) { - final all = []; - for (final action in secondaryActions) { - final callback = action.action; - all.add(PullDownItem( - title: action.label, - icon: action.icon, - onTap: () async { - await callback(); - }, - )); - } - final deleteAction = this.deleteAction; - if (deleteAction != null) { - final deleteActionWidget = deleteAction(context); - all.add(const PullDownDivider()); - all.add(PullDownItem( - title: deleteActionWidget.label, - icon: deleteActionWidget.icon, - onTap: () async { - await deleteActionWidget.action(); - }, - )); - } - return all; - }, - ); - } - - return InkWell( - child: [ - itemBuilder(context), - OverflowBar( - alignment: MainAxisAlignment.spaceBetween, - children: [ - buildMaterialMainActions(), - buildSecondaryActionPopup(), - ], - ), - ].column(caa: CrossAxisAlignment.start).padSymmetric(v: 10, h: 15), - onTap: () async { - await context.showSheet((ctx) => detailsBuilder(context, buildDetailsActions)); - }, - ).inAnyCard( - type: selected ? CardVariant.filled : CardVariant.outlined, - clip: Clip.hardEdge, - ); - } - - Widget buildCardWithContextMenu(BuildContext context) { - return Builder( - builder: (context) { - final actions = this.actions(context); - final deleteAction = this.deleteAction?.call(context); - return ContextMenuWidget( - menuProvider: (MenuRequest request) { - return Menu( - children: buildMenuActions( - context, - actions: actions, - selectAction: selectAction(context), - deleteAction: deleteAction, - ), - ); - }, - child: buildCardWithContextMenuBody( - context, - selectAction: selectAction(context), - ), - ); - }, - ); - } - - Widget buildCardWithContextMenuBody( - BuildContext context, { - required EntrySelectAction? selectAction, - }) { - Widget widget = [ - itemBuilder(context), - OverflowBar( - alignment: MainAxisAlignment.end, - children: [ - if (selectAction != null) - CupertinoButton( - padding: EdgeInsets.zero, - onPressed: selected ? null : selectAction.action, - child: selected - ? Icon(context.icons.checkMark, color: context.colorScheme.primary) - : Icon(context.icons.checkBoxBlankOutlineRounded), - ), - ], - ), - ].column(caa: CrossAxisAlignment.start).padOnly(t: 12, l: 12, r: 8, b: 4); - if (UniversalPlatform.isIOS) { - widget = GestureDetector( - onTap: () async { - await context.showSheet((ctx) => detailsBuilder(context, buildDetailsActions)); - }, - child: widget, - ); - } else { - widget = InkWell( - onTap: () async { - await context.showSheet((ctx) => detailsBuilder(context, buildDetailsActions)); - }, - child: widget, - ); - } - return widget.inAnyCard( - type: selected ? CardVariant.filled : CardVariant.outlined, - clip: Clip.hardEdge, - ); - } - - List buildMenuActions( - BuildContext context, { - required List actions, - required EntrySelectAction? selectAction, - required EntryAction? deleteAction, - }) { - final all = []; - if (selectAction != null && !selected) { - final selectCallback = selectAction.action; - all.add(MenuAction( - image: MenuImage.icon(context.icons.checkMark), - title: selectAction.selectLabel, - callback: selectCallback, - )); - } - for (final action in actions) { - final callback = action.action; - final icon = action.icon; - all.add(MenuAction( - image: icon == null ? null : MenuImage.icon(icon), - title: action.label, - activator: action.activator, - callback: callback, - )); - } - if (deleteAction != null) { - final icon = deleteAction.icon; - all.add(MenuAction( - image: icon == null ? null : MenuImage.icon(icon), - title: deleteAction.label, - attributes: const MenuActionAttributes(destructive: true), - activator: deleteAction.activator, - callback: deleteAction.action, - )); - } - assert(all.isNotEmpty, "CupertinoContextMenuActions can't be empty"); - return all; - } - - List buildDetailsActions(BuildContext context) { - final all = []; - final actions = this.actions(context); - final selectAction = this.selectAction.call(context); - final deleteAction = this.deleteAction?.call(context); - final editAction = actions.firstWhereOrNull((action) => action.type == EntryActionType.edit); - if (editAction != null) { - all.add(PlatformTextButton( - onPressed: () async { - if (editAction.oneShot) { - if (!context.mounted) return; - context.navigator.pop(); - } - await editAction.action(); - }, - child: editAction.label.text(), - )); - // remove edit action - actions.retainWhere((action) => action.type != EntryActionType.edit); - if (selectAction != null && !selected) { - actions.insert( - 0, - EntryAction( - label: selectAction.selectLabel, - oneShot: true, - icon: context.icons.checkMark, - action: selectAction.action, - ), - ); - } - } else if (selectAction != null && !selected) { - all.add(PlatformTextButton( - onPressed: () async { - await selectAction.action(); - if (!context.mounted) return; - context.navigator.pop(); - }, - child: selectAction.selectLabel.text(), - )); - } - all.add(PullDownMenuButton( - itemBuilder: (ctx) { - return [ - ...actions.map( - (action) => PullDownItem( - icon: action.icon, - title: action.label, - onTap: () async { - if (action.oneShot) { - if (!context.mounted) return; - context.navigator.pop(); - } - await action.action(); - }, - ), - ), - if (deleteAction != null) ...[ - const PullDownDivider(), - PullDownItem.delete( - title: deleteAction.label, - icon: context.icons.delete, - onTap: () async { - await deleteAction.action(); - if (!context.mounted) return; - context.navigator.pop(); - }, - ), - ], - ]; - }, - )); - return all; - } -} diff --git a/lib/design/widgets/expansion_tile.dart b/lib/design/widgets/expansion_tile.dart deleted file mode 100644 index 7fdc2db98..000000000 --- a/lib/design/widgets/expansion_tile.dart +++ /dev/null @@ -1,189 +0,0 @@ -import 'package:flutter/material.dart'; - -// thanks to "https://github.com/simplewidgets/rounded_expansion_tile" -const _kDefaultDuration = Durations.medium4; - -class AnimatedExpansionTile extends StatefulWidget { - final List children; - final bool? autofocus; - final EdgeInsetsGeometry? contentPadding; - final bool? dense; - final bool? enabled; - final bool? enableFeedback; - final Color? focusColor; - final FocusNode? focusNode; - final double? horizontalTitleGap; - final Color? hoverColor; - final bool? isThreeLine; - final Widget? leading; - final double? minLeadingWidth; - final double? minVerticalPadding; - final MouseCursor? mouseCursor; - final void Function()? onLongPress; - final bool? selected; - final Color? selectedTileColor; - final ShapeBorder? shape; - final Widget? subtitle; - final Widget? title; - final Color? tileColor; - final Widget? trailing; - final VisualDensity? visualDensity; - final Duration? duration; - final Curve? fadeCurve; - final Curve? sizeCurve; - final EdgeInsets? childrenPadding; - final bool? rotateTrailing; - final bool? noTrailing; - final bool initiallyExpanded; - - const AnimatedExpansionTile({ - super.key, - required this.children, - this.title, - this.subtitle, - this.leading, - this.trailing, - this.duration, - this.autofocus, - this.contentPadding, - this.dense, - this.enabled, - this.enableFeedback, - this.focusColor, - this.focusNode, - this.horizontalTitleGap, - this.hoverColor, - this.isThreeLine, - this.minLeadingWidth, - this.minVerticalPadding, - this.mouseCursor, - this.onLongPress, - this.selected, - this.selectedTileColor, - this.shape, - this.tileColor, - this.visualDensity, - this.childrenPadding, - this.rotateTrailing, - this.noTrailing, - this.initiallyExpanded = false, - this.fadeCurve, - this.sizeCurve, - }); - - @override - AnimatedExpansionTileState createState() => AnimatedExpansionTileState(); -} - -class AnimatedExpansionTileState extends State with TickerProviderStateMixin { - late bool _expanded; - bool? _rotateTrailing; - bool? _noTrailing; - late AnimationController _iconController; - - // When the duration of the ListTile animation is NOT provided. This value will be used instead. - - @override - void initState() { - super.initState(); - _expanded = widget.initiallyExpanded; - // If not provided, this will be true - _rotateTrailing = widget.rotateTrailing ?? true; - // If not provided this will be false - _noTrailing = widget.noTrailing ?? false; - - _iconController = AnimationController( - duration: widget.duration ?? _kDefaultDuration, - vsync: this, - ); - } - - @override - void dispose() { - if (mounted) { - _iconController.dispose(); - super.dispose(); - } - } - - @override - Widget build(BuildContext context) { - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.start, - mainAxisSize: MainAxisSize.min, - children: [ - ListTile( - // If bool is not provided the default will be false. - autofocus: widget.autofocus ?? false, - contentPadding: widget.contentPadding, - // If bool is not provided the default will be false. - dense: widget.dense, - // If bool is not provided the default will be true. - enabled: widget.enabled ?? true, - enableFeedback: - // If bool is not provided the default will be false. - widget.enableFeedback ?? false, - focusColor: widget.focusColor, - focusNode: widget.focusNode, - horizontalTitleGap: widget.horizontalTitleGap, - hoverColor: widget.hoverColor, - // If bool is not provided the default will be false. - isThreeLine: widget.isThreeLine ?? false, - key: widget.key, - leading: widget.leading, - minLeadingWidth: widget.minLeadingWidth, - minVerticalPadding: widget.minVerticalPadding, - mouseCursor: widget.mouseCursor, - onLongPress: widget.onLongPress, - // If bool is not provided the default will be false. - selected: widget.selected ?? false, - selectedTileColor: widget.selectedTileColor, - shape: widget.shape, - subtitle: widget.subtitle, - title: widget.title, - tileColor: widget.tileColor, - trailing: _noTrailing! ? null : _trailingIcon(), - visualDensity: widget.visualDensity, - onTap: () { - setState(() { - // Checks if the ListTile is expanded and sets state accordingly. - if (_expanded) { - _expanded = !_expanded; - _iconController.reverse(); - } else { - _expanded = !_expanded; - _iconController.forward(); - } - }); - }, - ), - ListView.builder( - physics: const NeverScrollableScrollPhysics(), - padding: widget.childrenPadding ?? EdgeInsets.zero, - shrinkWrap: true, - itemCount: widget.children.length, - itemBuilder: (ctx, i) => AnimatedCrossFade( - duration: widget.duration ?? _kDefaultDuration, - firstCurve: widget.fadeCurve ?? Curves.linear, - sizeCurve: widget.sizeCurve ?? Curves.fastEaseInToSlowEaseOut, - firstChild: widget.children[i], - secondChild: const SizedBox(), - crossFadeState: _expanded ? CrossFadeState.showFirst : CrossFadeState.showSecond, - ), - ), - ], - ); - } - - // Build trailing widget based on the user input. - Widget? _trailingIcon() { - final trailing = widget.trailing ?? const Icon(Icons.keyboard_arrow_down); - if (_rotateTrailing!) { - return RotationTransition(turns: Tween(begin: 0.0, end: 0.5).animate(_iconController), child: trailing); - } else { - // If developer sets rotateTrailing to false the widget will just be returned. - return trailing; - } - } -} diff --git a/lib/design/widgets/fab.dart b/lib/design/widgets/fab.dart deleted file mode 100644 index d1628aab3..000000000 --- a/lib/design/widgets/fab.dart +++ /dev/null @@ -1,117 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/rendering.dart'; - -enum _FABType { - regular, - small, - large, - extended, -} - -class AutoHideFAB extends StatefulWidget { - final ScrollController controller; - final Widget? label; - final Widget? child; - final VoidCallback? onPressed; - final _FABType _type; - - /// false by default. - final bool? alwaysShow; - - const AutoHideFAB({ - super.key, - required this.controller, - required this.onPressed, - this.label, - this.child, - this.alwaysShow, - }) : _type = _FABType.regular; - - const AutoHideFAB.extended({ - super.key, - required this.controller, - required this.onPressed, - required Widget this.label, - required Widget? icon, - this.alwaysShow, - }) : _type = _FABType.extended, - child = icon; - - @override - State createState() => _AutoHideFABState(); -} - -class _AutoHideFABState extends State { - bool showBtn = true; - - bool get alwaysShow => widget.alwaysShow ?? false; - - @override - void initState() { - super.initState(); - widget.controller.addListener(onScrollChanged); - } - - @override - void dispose() { - widget.controller.removeListener(onScrollChanged); - super.dispose(); - } - - void onScrollChanged() { - final direction = widget.controller.positions.last.userScrollDirection; - if (direction == ScrollDirection.forward) { - if (!showBtn) { - setState(() { - showBtn = true; - }); - } - } else if (direction == ScrollDirection.reverse) { - if (showBtn) { - setState(() { - showBtn = false; - }); - } - } - } - - @override - Widget build(BuildContext context) { - return AnimatedSlideDown( - upWhen: alwaysShow || showBtn, - child: switch (widget._type) { - _FABType.extended => FloatingActionButton.extended( - icon: widget.child, - onPressed: widget.onPressed, - label: widget.label!, - ), - _FABType.regular => FloatingActionButton( - onPressed: widget.onPressed, - child: widget.child, - ), - _FABType.small => FloatingActionButton.small( - onPressed: widget.onPressed, - child: widget.child, - ), - _FABType.large => FloatingActionButton.large( - onPressed: widget.onPressed, - child: widget.child, - ), - }, - ); - } -} - -// ignore: non_constant_identifier_names -Widget AnimatedSlideDown({ - required bool upWhen, - required Widget child, -}) { - const duration = Duration(milliseconds: 300); - return AnimatedSlide( - duration: duration, - curve: Curves.fastEaseInToSlowEaseOut.flipped, - offset: upWhen ? Offset.zero : const Offset(0, 2), - child: child, - ); -} diff --git a/lib/design/widgets/grouped.dart b/lib/design/widgets/grouped.dart deleted file mode 100644 index b14836072..000000000 --- a/lib/design/widgets/grouped.dart +++ /dev/null @@ -1,159 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sliver_tools/sliver_tools.dart'; - -typedef HeaderBuilder = Widget Function( - BuildContext context, - bool expanded, - VoidCallback toggleExpand, - Widget defaultTrailing, -); - -class GroupedSection extends StatefulWidget { - final bool initialExpanded; - final int itemCount; - final HeaderBuilder headerBuilder; - final Widget Function(BuildContext context, int index) itemBuilder; - - const GroupedSection({ - super.key, - this.initialExpanded = true, - required this.itemCount, - required this.itemBuilder, - required this.headerBuilder, - }); - - @override - State createState() => _GroupedSectionState(); -} - -class _GroupedSectionState extends State { - late var expanded = widget.initialExpanded; - - @override - Widget build(BuildContext context) { - return MultiSliver( - pushPinnedChildren: true, - children: [ - SliverPinnedHeader( - child: Card( - clipBehavior: Clip.hardEdge, - child: widget.headerBuilder( - context, - expanded, - () { - setState(() { - expanded = !expanded; - }); - }, - expanded ? const Icon(Icons.expand_less) : const Icon(Icons.expand_more), - ), - ), - ), - SliverAnimatedPaintExtent( - duration: Durations.medium3, - curve: Curves.fastEaseInToSlowEaseOut, - child: SliverList( - delegate: !expanded - ? const SliverChildListDelegate.fixed([]) - : SliverChildBuilderDelegate( - widget.itemBuilder, - childCount: widget.itemCount, - ), - ), - ) - ], - ); - } -} - -class AsyncGroupSection extends StatefulWidget { - final bool initialExpanded; - final Widget? title; - final Widget? subtitle; - final Future> Function() fetch; - final Widget Function(BuildContext context, int index, T item) itemBuilder; - - const AsyncGroupSection({ - super.key, - this.title, - this.subtitle, - this.initialExpanded = true, - required this.fetch, - required this.itemBuilder, - }); - - @override - State> createState() => _AsyncGroupSectionState(); -} - -class _AsyncGroupSectionState extends State> { - late var expanded = widget.initialExpanded; - List? items; - bool isFetching = false; - - @override - void initState() { - super.initState(); - if (widget.initialExpanded) { - fetchData(); - } - } - - Future fetchData() async { - if (items != null) return; - setState(() { - isFetching = true; - }); - final data = await widget.fetch(); - setState(() { - items = data; - isFetching = false; - }); - } - - @override - Widget build(BuildContext context) { - final items = this.items; - return MultiSliver( - pushPinnedChildren: true, - children: [ - SliverPinnedHeader( - child: Card.filled( - clipBehavior: Clip.hardEdge, - child: ListTile( - title: widget.title, - subtitle: widget.subtitle, - dense: true, - onTap: () async { - setState(() { - expanded = !expanded; - }); - await fetchData(); - }, - trailing: isFetching - ? const CircularProgressIndicator.adaptive() - : expanded - ? const Icon(Icons.expand_less) - : const Icon(Icons.expand_more), - ), - ), - ), - SliverAnimatedPaintExtent( - duration: const Duration(milliseconds: 300), - curve: Curves.fastEaseInToSlowEaseOut, - child: SliverList( - delegate: !expanded || items == null - ? const SliverChildListDelegate.fixed([]) - : SliverChildBuilderDelegate( - childCount: items.length, - (ctx, i) { - final item = items[i]; - return widget.itemBuilder(ctx, i, item); - }, - ), - ), - ) - ], - ); - } -} diff --git a/lib/design/widgets/icon.dart b/lib/design/widgets/icon.dart deleted file mode 100644 index 3453bfda3..000000000 --- a/lib/design/widgets/icon.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; -import 'package:rettulf/rettulf.dart'; - -class DualIcon extends StatelessWidget { - final IconData primary; - final IconData? secondary; - final double size; - - const DualIcon({ - super.key, - required this.primary, - this.secondary, - required this.size, - }); - - @override - Widget build(BuildContext context) { - final secondary = this.secondary; - final primarySize = size; - final secondarySize = size * 0.25; - return [ - Icon( - primary, - size: primarySize, - ).sizedAll(size), - if (secondary != null) - Card.filled( - child: Icon( - secondary, - size: secondarySize, - ).sizedAll(secondarySize).padAll(secondarySize * 0.1), - ).align(at: Alignment.bottomRight), - ].stack().sizedAll(size); - } -} diff --git a/lib/design/widgets/list_tile.dart b/lib/design/widgets/list_tile.dart deleted file mode 100644 index 1a31ce72a..000000000 --- a/lib/design/widgets/list_tile.dart +++ /dev/null @@ -1,51 +0,0 @@ -import 'package:flutter/gestures.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/l10n/common.dart'; - -class DetailListTile extends StatelessWidget { - final String? title; - final String? subtitle; - final Widget? leading; - final Widget? trailing; - final bool copyable; - - const DetailListTile({ - super.key, - this.title, - this.subtitle, - this.copyable = true, - this.leading, - this.trailing, - }); - - @override - Widget build(BuildContext context) { - final subtitle = this.subtitle; - return Tooltip( - triggerMode: TooltipTriggerMode.tap, - verticalOffset: 0, - richMessage: TextSpan( - text: const CommonI18n().copy, - recognizer: copyable && subtitle != null - ? (TapGestureRecognizer() - ..onTap = () async { - final title = this.title; - if (title != null) { - context.showSnackBar(content: const CommonI18n().copyTipOf(title).text()); - } - await Clipboard.setData(ClipboardData(text: subtitle)); - }) - : null), - child: ListTile( - leading: leading, - trailing: trailing, - title: title?.text(), - subtitle: subtitle?.text(), - visualDensity: VisualDensity.compact, - ), - ); - } -} diff --git a/lib/design/widgets/multi_select.dart b/lib/design/widgets/multi_select.dart deleted file mode 100644 index 237256f92..000000000 --- a/lib/design/widgets/multi_select.dart +++ /dev/null @@ -1,307 +0,0 @@ -library multiselect_scope; - -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; - -// Steal from: "https://github.com/flankb/multiselect_scope/blob/master/lib/multiselect_scope.dart" - -/// An object that stores the selected indexes and also allows you to change them -class MultiselectController extends ChangeNotifier { - List _selectedIndexes = []; - List _dataSource = []; - - List get selectedIndexes => _selectedIndexes; - - bool get selectedAny => _selectedIndexes.any((element) => true); - - late int _itemsCount; - - void select(int index) { - assert(index >= 0 && index < _dataSource.length); - if (index < 0 || index >= _dataSource.length) return; - final indexContains = _selectedIndexes.contains(index); - if (!indexContains) { - _selectedIndexes.add(index); - notifyListeners(); - } - } - - void unselect(int index) { - assert(index >= 0 && index < _dataSource.length); - if (index < 0 || index >= _dataSource.length) return; - final indexContains = _selectedIndexes.contains(index); - if (indexContains) { - _selectedIndexes.remove(index); - notifyListeners(); - } - } - - void toggle(int index) { - assert(index >= 0 && index < _dataSource.length); - if (index < 0 || index >= _dataSource.length) return; - final indexContains = _selectedIndexes.contains(index); - final doSelect = indexContains ? false : true; - - if (doSelect) { - if (!indexContains) { - _selectedIndexes.add(index); - notifyListeners(); - } - } else { - if (indexContains) { - _selectedIndexes.remove(index); - notifyListeners(); - } - } - } - - void selectItem(T item) { - final index = _dataSource.indexOf(item); - if (index < 0) return; - select(index); - } - - void unselectItem(T item) { - final index = _dataSource.indexOf(item); - if (index < 0) return; - unselect(index); - } - - void toggleItem(T item) { - final index = _dataSource.indexOf(item); - if (index < 0) return; - toggle(index); - } - - /// Get current selected items in [dataSource] - List getSelectedItems() { - final selectedItems = selectedIndexes.map((e) => _dataSource[e]).toList(); - return selectedItems; - } - - /// Set all selection to empty - void clearSelection() { - if (selectedIndexes.any((element) => true)) { - selectedIndexes.clear(); - notifyListeners(); - } - } - - /// Replace selection by all not selected items - void invertSelection() { - _selectedIndexes = List.generate(_itemsCount, (i) => i).toSet().difference(_selectedIndexes.toSet()).toList(); - - notifyListeners(); - } - - /// Select all items in [dataSource] - void selectAll() { - _selectedIndexes = List.generate(_itemsCount, (i) => i); - notifyListeners(); - } - - bool isSelectedAll() { - return _selectedIndexes.length == _dataSource.length; - } - - /// Check selection of item by it index - bool isSelectedIndex(int index) { - return _selectedIndexes.contains(index); - } - - /// Check selection of item by it index - bool isSelectedItem(T item) { - final index = _dataSource.indexOf(item); - return index >= 0 && _selectedIndexes.contains(index); - } - - /// Set selection by specified indexes - /// Replace existing selected indexes by [newIndexes] - void setSelectedIndexes(List newIndexes) { - _setSelectedIndexes(newIndexes, true); - } - - void setSelectedItems(List newItems) { - _setSelectedItems(newItems, true); - } - - void _setDataSource(List dataSource) { - _dataSource = dataSource; - _itemsCount = dataSource.length; - } - - void _setSelectedIndexes(List newIndexes, bool notifyListeners) { - _selectedIndexes = newIndexes; - if (notifyListeners) { - this.notifyListeners(); - } - } - - void _setSelectedItems(List items, bool notifyListeners) { - _selectedIndexes = items.map((item) => _dataSource.indexOf(item)).where((index) => index >= 0).toList(); - if (notifyListeners) { - this.notifyListeners(); - } - } - - T operator [](int index) { - return _dataSource[index]; - } -} - -typedef SelectionChangedCallback = void Function(List selectedIndexes, List selectedItems); - -/// Widget to manage item selection -class MultiselectScope extends StatefulWidget { - /// A child widget that usually contains in its subtree a list - /// of items whose selection you want to control - final Widget child; - - /// Function that invoked when selected indexes changes. - /// Builds appropriate listeners on stage of init [MultiselectScope] widget - /// and then does not change. - /// This function will not invoke on first load of this widget. - final SelectionChangedCallback? onSelectionChanged; - - /// An object that stores the selected indexes and also allows you to change them - /// This object may be set once and can not be replaced - /// when updating the widget configuration - final MultiselectController? controller; - - /// Data for selection tracking - /// For example list of `Cars` or `Employees` - final List dataSource; - - /// Clear selection if user push back button - final bool clearSelectionOnPop; - - /// If [true]: when you update [dataSource] then selected indexes will update - /// so that the same elements in new [dataSource] are selected - /// If [false]: selected indexes will have not automatically updates during [dataSource] update - final bool keepSelectedItemsBetweenUpdates; - - /// Selected indexes, which will be initialized - /// when the widget is inserted into the widget tree - final List? initialSelectedIndexes; - - const MultiselectScope({ - super.key, - required this.dataSource, - this.controller, - this.onSelectionChanged, - this.clearSelectionOnPop = false, - this.keepSelectedItemsBetweenUpdates = true, - this.initialSelectedIndexes, - required this.child, - }); - - @override - State> createState() => _MultiselectScopeState(); - - static MultiselectController controllerOf(BuildContext context) { - return context.dependOnInheritedWidgetOfExactType<_InheritedMultiselectNotifier>()!.controller - as MultiselectController; - } -} - -class _MultiselectScopeState extends State> { - late List _hashesCopy; - late MultiselectController _multiselectController; - - void _onSelectionChangedFunc() { - if (widget.onSelectionChanged != null) { - widget.onSelectionChanged!( - _multiselectController.selectedIndexes, _multiselectController.getSelectedItems().cast()); - } - } - - List _createHashesCopy(MultiselectScope widget) { - return widget.dataSource.map((e) => e.hashCode).toList(); - } - - @override - void initState() { - super.initState(); - - _multiselectController = widget.controller ?? MultiselectController(); - - _hashesCopy = _createHashesCopy(widget); - _multiselectController._setDataSource(widget.dataSource); - - if (widget.initialSelectedIndexes != null) { - _multiselectController._setSelectedIndexes(widget.initialSelectedIndexes!, false); - } - - if (widget.onSelectionChanged != null) { - _multiselectController.addListener(_onSelectionChangedFunc); - } - } - - @override - void dispose() { - _multiselectController.removeListener(_onSelectionChangedFunc); - super.dispose(); - } - - @override - void didUpdateWidget(MultiselectScope oldWidget) { - super.didUpdateWidget(oldWidget); - debugPrint('didUpdateWidget GreatMultiselect'); - - if (widget.keepSelectedItemsBetweenUpdates) { - _updateController(oldWidget); - } - - _multiselectController._setDataSource(widget.dataSource); - } - - @override - Widget build(BuildContext context) { - debugPrint('build GreatMultiselect'); - return widget.clearSelectionOnPop - ? PopScope( - canPop: !_multiselectController.selectedAny, - onPopInvoked: (didPop) { - if (!didPop) { - _multiselectController.clearSelection(); - } - }, - child: _buildMultiselectScope(), - ) - : _buildMultiselectScope(); - } - - _InheritedMultiselectNotifier _buildMultiselectScope() => - _InheritedMultiselectNotifier(controller: _multiselectController, child: widget.child); - - void _updateController(MultiselectScope oldWidget) { - if (!oldWidget.keepSelectedItemsBetweenUpdates && widget.keepSelectedItemsBetweenUpdates) { - // Recalculate hashes of previous state - _hashesCopy = _createHashesCopy(oldWidget); - } - - final newHashesCopy = _createHashesCopy(widget); - - //debugPrint( - // "Old dataSource: ${_hashesCopy} new dataSource: ${newHashesCopy}"); - final oldSelectedHashes = _multiselectController.selectedIndexes.map((e) => _hashesCopy[e]).toList(); - - final newIndexes = []; - newHashesCopy.asMap().forEach((index, value) { - //debugPrint("$index $value"); - if (oldSelectedHashes.contains(value)) { - newIndexes.add(index); - } - }); - - _multiselectController._setSelectedIndexes(newIndexes, false); - _hashesCopy = newHashesCopy; - } -} - -class _InheritedMultiselectNotifier extends InheritedNotifier { - final MultiselectController controller; - - const _InheritedMultiselectNotifier({super.key, required super.child, required this.controller}) - : super(notifier: controller); -} diff --git a/lib/design/widgets/navigation.dart b/lib/design/widgets/navigation.dart deleted file mode 100644 index 6237834b1..000000000 --- a/lib/design/widgets/navigation.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; - -class PageNavigationTile extends StatelessWidget { - final Widget? title; - final Widget? subtitle; - final Widget? leading; - final String path; - - const PageNavigationTile({ - super.key, - this.title, - this.subtitle, - this.leading, - required this.path, - }); - - @override - Widget build(BuildContext context) { - return ListTile( - title: title, - subtitle: subtitle, - leading: leading, - trailing: Icon(context.icons.rightChevron), - onTap: () { - context.push(path); - }, - ); - } -} diff --git a/lib/design/widgets/tags.dart b/lib/design/widgets/tags.dart deleted file mode 100644 index 73e8c4417..000000000 --- a/lib/design/widgets/tags.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -class TagsGroup extends StatelessWidget { - final List tags; - - const TagsGroup( - this.tags, { - super.key, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - return tags - .map( - (tag) => Chip( - label: tag.text(), - padding: EdgeInsets.zero, - labelStyle: textTheme.bodySmall, - elevation: 4, - ), - ) - .toList() - .wrap(spacing: 4); - } -} diff --git a/lib/design/widgets/view.dart b/lib/design/widgets/view.dart deleted file mode 100644 index 4e094133d..000000000 --- a/lib/design/widgets/view.dart +++ /dev/null @@ -1,94 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:universal_platform/universal_platform.dart'; - -extension ScrollWidgetListEx on List { - Widget scrolledWithBar({Key? key, ScrollController? controller}) { - if (UniversalPlatform.isWindows || UniversalPlatform.isLinux) { - return listview(); - } else { - return _ScrolledWithBar( - key: key, - controller: controller, - children: this, - ); - } - } -} - -extension ScrollSingleWidgetEx on Widget { - Widget scrolledWithBar({Key? key, ScrollController? controller}) { - if (UniversalPlatform.isWindows || UniversalPlatform.isLinux) { - return scrolled(); - } else { - return _ScrolledWithBar( - key: key, - controller: controller, - child: this, - ); - } - } -} - -class _ScrolledWithBar extends StatefulWidget { - final Widget? child; - final List? children; - final ScrollController? controller; - - const _ScrolledWithBar({super.key, this.child, this.children, this.controller}) - : assert(child != null || children != null); - - @override - State<_ScrolledWithBar> createState() => _ScrolledWithBarState(); -} - -class _ScrolledWithBarState extends State<_ScrolledWithBar> { - ScrollController? controller; - - @override - void initState() { - super.initState(); - final child = widget.child; - if (child is ScrollView) { - final childController = child.controller; - assert(childController != null, "The ScrollView external provided should have a ScrollController."); - controller = child.controller; - } else { - controller = widget.controller ?? ScrollController(); - } - } - - @override - Widget build(BuildContext context) { - return LayoutBuilder( - builder: (ctx, constraints) { - final width = constraints.maxWidth; - var child = widget.child; - final children = widget.children; - if (child != null) { - // child mode - if (child is! ScrollView) { - child = child.scrolled(controller: controller); - } - } else if (children != null) { - // list mode - child = children.listview(controller: controller); - } else { - throw Exception("Never reached."); - } - return Scrollbar( - thickness: width / 25, - radius: const Radius.circular(12), - controller: controller, - interactive: true, - child: child); - }, - ); - } - - @override - void dispose() { - super.dispose(); - controller?.dispose(); - } -} diff --git a/lib/entity/campus.dart b/lib/entity/campus.dart deleted file mode 100644 index 2a653db46..000000000 --- a/lib/entity/campus.dart +++ /dev/null @@ -1,20 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'campus.g.dart'; - -typedef CampusCapability = ({bool enableElectricity}); - -@HiveType(typeId: CoreHiveType.campus) -enum Campus { - @HiveField(0) - fengxian((enableElectricity: true)), - @HiveField(1) - xuhui((enableElectricity: false)); - - final CampusCapability capability; - - const Campus(this.capability); - - String l10nName() => "campus.$name".tr(); -} diff --git a/lib/entity/campus.g.dart b/lib/entity/campus.g.dart deleted file mode 100644 index 5e9de46f5..000000000 --- a/lib/entity/campus.g.dart +++ /dev/null @@ -1,43 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'campus.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class CampusAdapter extends TypeAdapter { - @override - final int typeId = 3; - - @override - Campus read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return Campus.fengxian; - case 1: - return Campus.xuhui; - default: - return Campus.fengxian; - } - } - - @override - void write(BinaryWriter writer, Campus obj) { - switch (obj) { - case Campus.fengxian: - writer.writeByte(0); - break; - case Campus.xuhui: - writer.writeByte(1); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is CampusAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/entity/version.dart b/lib/entity/version.dart deleted file mode 100644 index f13a6bcd5..000000000 --- a/lib/entity/version.dart +++ /dev/null @@ -1,93 +0,0 @@ -import 'package:package_info_plus/package_info_plus.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:version/version.dart'; - -enum AppPlatform { - android("Android"), - windows("Windows"), - iOS("iOS"), - macOS("macOS"), - linux("Linux"), - web("Web"), - unknown("?"); - - final String name; - - const AppPlatform(this.name); -} - -class InstallerStore { - static const testFlight = "com.apple.testflight"; - static const appStore = "com.apple"; -} - -class AppMeta { - final AppPlatform platform; - final Version version; - - /// The app name. `CFBundleDisplayName` on iOS, `application/label` on Android. - final String appName; - - /// The package name. `bundleIdentifier` on iOS, `getPackageName` on Android. - final String packageName; - - /// The build signature. Empty string on iOS, signing key signature (hex) on Android. - final String buildSignature; - - /// The installer store. Indicates through which store this application was installed. - /// For example: - /// com.apple.testflight - final String? installerStore; - - const AppMeta({ - required this.platform, - required this.version, - required this.appName, - required this.packageName, - required this.buildSignature, - required this.installerStore, - }); -} - -Future getCurrentVersion() async { - final info = await PackageInfo.fromPlatform(); - var versionText = info.version; - final String? buildNumber; - if (info.buildNumber.isNotEmpty) { - if (UniversalPlatform.isIOS && info.buildNumber == info.version) { - buildNumber = null; - } else { - buildNumber = info.buildNumber; - } - } else { - buildNumber = null; - } - if (buildNumber != null) { - versionText = "${info.version}+$buildNumber"; - } - - final AppPlatform platform; - if (UniversalPlatform.isAndroid) { - platform = AppPlatform.android; - } else if (UniversalPlatform.isIOS) { - platform = AppPlatform.iOS; - } else if (UniversalPlatform.isMacOS) { - platform = AppPlatform.macOS; - } else if (UniversalPlatform.isLinux) { - platform = AppPlatform.linux; - } else if (UniversalPlatform.isWindows) { - platform = AppPlatform.windows; - } else if (UniversalPlatform.isWeb) { - platform = AppPlatform.web; - } else { - platform = AppPlatform.unknown; - } - return AppMeta( - platform: platform, - version: Version.parse(versionText), - appName: info.appName, - packageName: info.packageName, - buildSignature: info.buildSignature, - installerStore: info.installerStore, - ); -} diff --git a/lib/file_type/handle.dart b/lib/file_type/handle.dart deleted file mode 100644 index b82d27fcd..000000000 --- a/lib/file_type/handle.dart +++ /dev/null @@ -1,20 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/file_type/protocol.dart'; -import 'package:sit/l10n/common.dart'; - -const _i18n = CommonI18n(); - -Future onHandleFilePath({ - required BuildContext context, - required String path, -}) async { - for (final handler in FileTypeHandlerProtocol.all) { - if (handler.matchPath(path)) { - await handler.onHandle(context: context, path: path); - return; - } - } - if (!context.mounted) return; - await context.showTip(title: "Unknown file format", desc: "$path", primary: _i18n.ok); -} diff --git a/lib/file_type/protocol.dart b/lib/file_type/protocol.dart deleted file mode 100644 index cb9cbdd6a..000000000 --- a/lib/file_type/protocol.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:sit/timetable/file_type/timetable.dart'; -import 'package:path/path.dart'; - -abstract class FileTypeHandlerProtocol { - const FileTypeHandlerProtocol(); - - bool matchPath(String path); - - Future onHandle({ - required BuildContext context, - required String path, - }); - - static final List all = [ - const TimetableFileType(), - ]; -} - -abstract mixin class FixedExtensionFileTypeHandler implements FileTypeHandlerProtocol { - List get extensions; - - @override - bool matchPath(String path) { - return extensions.contains(extension(path)); - } -} diff --git a/lib/files.dart b/lib/files.dart deleted file mode 100644 index e06fafffb..000000000 --- a/lib/files.dart +++ /dev/null @@ -1,57 +0,0 @@ -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:path/path.dart'; -import 'package:universal_platform/universal_platform.dart'; - -class Files { - const Files._(); - - static late final Directory temp; - static late final Directory cache; - static late final Directory internal; - static late final Directory user; - - static Directory get screenshot => temp.subDir("screenshot"); - static Directory get artifact => temp.subDir("artifact"); - - static const timetable = TimetableFiles(); - static const oaAnnounce = OaAnnounceFiles(); - - static Future init() async { - if (kIsWeb) return; - await screenshot.create(recursive: true); - await artifact.create(recursive: true); - await timetable.init(); - } -} - -extension DirectoryX on Directory { - File subFile(String p1, [String? p2, String? p3, String? p4]) => File(join(path, p1, p2, p3, p4)); - - Directory subDir(String p1, [String? p2, String? p3, String? p4]) => Directory(join(path, p1, p2, p3, p4)); -} - -class TimetableFiles { - const TimetableFiles(); - - File get screenshotFile => Files.screenshot.subFile("timetable.png"); - - File get backgroundFile => Files.user.subFile("timetable", "background"); - - // on MIUI, OpenFile can't open file under `Files.user` - Directory get calendarDir => (UniversalPlatform.isAndroid ? Files.cache : Files.user).subDir("timetable", "calendar"); - - Future init() async { - await calendarDir.create(recursive: true); - await Files.user.subDir("timetable").create(recursive: true); - } -} - -class OaAnnounceFiles { - const OaAnnounceFiles(); - - Directory attachmentDir(String uuid) => Files.internal.subDir("attachment", uuid); - - Future init() async {} -} diff --git a/lib/game/2048/card.dart b/lib/game/2048/card.dart deleted file mode 100644 index 67903bf82..000000000 --- a/lib/game/2048/card.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/game/2048/save.dart'; -import 'package:sit/game/widget/card.dart'; - -import 'i18n.dart'; - -class GameAppCard2048 extends StatefulWidget { - const GameAppCard2048({super.key}); - - @override - State createState() => _GameAppCard2048State(); -} - -class _GameAppCard2048State extends State { - @override - Widget build(BuildContext context) { - return OfflineGameAppCard( - name: i18n.title, - baseRoute: "/2048", - storage: Save2048.storage, - ); - } -} diff --git a/lib/game/2048/entity/board.dart b/lib/game/2048/entity/board.dart deleted file mode 100644 index 1b4094728..000000000 --- a/lib/game/2048/entity/board.dart +++ /dev/null @@ -1,65 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:uuid/uuid.dart'; - -import '../entity/tile.dart'; -import '../save.dart'; - -part "board.g.dart"; - -@CopyWith(skipFields: true) -class Board { - //Current score on the board - final int score; - - //Best score so far - final int best; - - //Current list of tiles shown on the board - final List tiles; - - //Whether the game is over or not - final bool over; - - //Whether the game is won or not - final bool won; - - const Board({ - required this.score, - required this.best, - required this.tiles, - this.over = false, - this.won = false, - }); - - //Create a model for a new game. - const Board.newGame({ - required this.best, - required this.tiles, - }) : score = 0, - over = false, - won = false; - - // Create a Board from json data - factory Board.fromSave(Save2048 save) { - final tiles = []; - for (var i = 0; i < save.tiles.length; i++) { - final score = save.tiles[i]; - if (score > 0) { - tiles.add(Tile(id: const Uuid().v4(), value: score, index: i)); - } - } - return Board(score: save.score, best: save.score, tiles: tiles); - } - - //Generate json data from the Board - Save2048 toSave() { - final slots = List.generate(16, (index) => -1, growable: false); - for (final tile in tiles) { - slots[tile.index] = tile.value; - } - return Save2048( - score: score, - tiles: slots, - ); - } -} diff --git a/lib/game/2048/entity/board.g.dart b/lib/game/2048/entity/board.g.dart deleted file mode 100644 index 9c7f77331..000000000 --- a/lib/game/2048/entity/board.g.dart +++ /dev/null @@ -1,75 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'board.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$BoardCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Board(...).copyWith(id: 12, name: "My name") - /// ```` - Board call({ - int? score, - int? best, - List? tiles, - bool? over, - bool? won, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfBoard.copyWith(...)`. -class _$BoardCWProxyImpl implements _$BoardCWProxy { - const _$BoardCWProxyImpl(this._value); - - final Board _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Board(...).copyWith(id: 12, name: "My name") - /// ```` - Board call({ - Object? score = const $CopyWithPlaceholder(), - Object? best = const $CopyWithPlaceholder(), - Object? tiles = const $CopyWithPlaceholder(), - Object? over = const $CopyWithPlaceholder(), - Object? won = const $CopyWithPlaceholder(), - }) { - return Board( - score: score == const $CopyWithPlaceholder() || score == null - ? _value.score - // ignore: cast_nullable_to_non_nullable - : score as int, - best: best == const $CopyWithPlaceholder() || best == null - ? _value.best - // ignore: cast_nullable_to_non_nullable - : best as int, - tiles: tiles == const $CopyWithPlaceholder() || tiles == null - ? _value.tiles - // ignore: cast_nullable_to_non_nullable - : tiles as List, - over: over == const $CopyWithPlaceholder() || over == null - ? _value.over - // ignore: cast_nullable_to_non_nullable - : over as bool, - won: won == const $CopyWithPlaceholder() || won == null - ? _value.won - // ignore: cast_nullable_to_non_nullable - : won as bool, - ); - } -} - -extension $BoardCopyWith on Board { - /// Returns a callable class that can be used as follows: `instanceOfBoard.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$BoardCWProxy get copyWith => _$BoardCWProxyImpl(this); -} diff --git a/lib/game/2048/entity/record.dart b/lib/game/2048/entity/record.dart deleted file mode 100644 index a444435bc..000000000 --- a/lib/game/2048/entity/record.dart +++ /dev/null @@ -1,22 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/game/record/record.dart'; - -part "record.g.dart"; - -@JsonSerializable() -class Record2048 extends GameRecord { - @JsonKey() - final int score; - @JsonKey() - final int maxNumber; - - const Record2048({ - required super.ts, - required this.score, - required this.maxNumber, - }); - - Map toJson() => _$Record2048ToJson(this); - - factory Record2048.fromJson(Map json) => _$Record2048FromJson(json); -} diff --git a/lib/game/2048/entity/record.g.dart b/lib/game/2048/entity/record.g.dart deleted file mode 100644 index 70f17de91..000000000 --- a/lib/game/2048/entity/record.g.dart +++ /dev/null @@ -1,19 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'record.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -Record2048 _$Record2048FromJson(Map json) => Record2048( - ts: DateTime.parse(json['ts'] as String), - score: (json['score'] as num).toInt(), - maxNumber: (json['maxNumber'] as num).toInt(), - ); - -Map _$Record2048ToJson(Record2048 instance) => { - 'ts': instance.ts.toIso8601String(), - 'score': instance.score, - 'maxNumber': instance.maxNumber, - }; diff --git a/lib/game/2048/entity/tile.dart b/lib/game/2048/entity/tile.dart deleted file mode 100644 index 597754d89..000000000 --- a/lib/game/2048/entity/tile.dart +++ /dev/null @@ -1,63 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:json_annotation/json_annotation.dart'; - -part 'tile.g.dart'; - -@JsonSerializable(anyMap: true) -@CopyWith(skipFields: true) -class Tile { - //Unique id used as ValueKey for the TileWidget - final String id; - - //The number on the tile - final int value; - - //The index of the tile on the board from which the position of the tile will be calculated - final int index; - - //The next index of the tile on the board - final int? nextIndex; - - //Whether the tile was merged with another tile - final bool merged; - - const Tile({ - required this.id, - required this.value, - required this.index, - this.nextIndex, - this.merged = false, - }); - - //Calculate the current top position based on the current index - double getTop(double size) { - var i = ((index + 1) / 4).ceil(); - return ((i - 1) * size) + (12.0 * i); - } - - //Calculate the current left position based on the current index - double getLeft(double size) { - var i = (index - (((index + 1) / 4).ceil() * 4 - 4)); - return (i * size) + (12.0 * (i + 1)); - } - - //Calculate the next top position based on the next index - double? getNextTop(double size) { - if (nextIndex == null) return null; - var i = ((nextIndex! + 1) / 4).ceil(); - return ((i - 1) * size) + (12.0 * i); - } - - //Calculate the next top position based on the next index - double? getNextLeft(double size) { - if (nextIndex == null) return null; - var i = (nextIndex! - (((nextIndex! + 1) / 4).ceil() * 4 - 4)); - return (i * size) + (12.0 * (i + 1)); - } - - //Create a Tile from json data - factory Tile.fromJson(Map json) => _$TileFromJson(json); - - //Generate json data from the Tile - Map toJson() => _$TileToJson(this); -} diff --git a/lib/game/2048/entity/tile.g.dart b/lib/game/2048/entity/tile.g.dart deleted file mode 100644 index 7585edcd7..000000000 --- a/lib/game/2048/entity/tile.g.dart +++ /dev/null @@ -1,95 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'tile.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$TileCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Tile(...).copyWith(id: 12, name: "My name") - /// ```` - Tile call({ - String? id, - int? value, - int? index, - int? nextIndex, - bool? merged, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfTile.copyWith(...)`. -class _$TileCWProxyImpl implements _$TileCWProxy { - const _$TileCWProxyImpl(this._value); - - final Tile _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Tile(...).copyWith(id: 12, name: "My name") - /// ```` - Tile call({ - Object? id = const $CopyWithPlaceholder(), - Object? value = const $CopyWithPlaceholder(), - Object? index = const $CopyWithPlaceholder(), - Object? nextIndex = const $CopyWithPlaceholder(), - Object? merged = const $CopyWithPlaceholder(), - }) { - return Tile( - id: id == const $CopyWithPlaceholder() || id == null - ? _value.id - // ignore: cast_nullable_to_non_nullable - : id as String, - value: value == const $CopyWithPlaceholder() || value == null - ? _value.value - // ignore: cast_nullable_to_non_nullable - : value as int, - index: index == const $CopyWithPlaceholder() || index == null - ? _value.index - // ignore: cast_nullable_to_non_nullable - : index as int, - nextIndex: nextIndex == const $CopyWithPlaceholder() - ? _value.nextIndex - // ignore: cast_nullable_to_non_nullable - : nextIndex as int?, - merged: merged == const $CopyWithPlaceholder() || merged == null - ? _value.merged - // ignore: cast_nullable_to_non_nullable - : merged as bool, - ); - } -} - -extension $TileCopyWith on Tile { - /// Returns a callable class that can be used as follows: `instanceOfTile.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$TileCWProxy get copyWith => _$TileCWProxyImpl(this); -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -Tile _$TileFromJson(Map json) => Tile( - id: json['id'] as String, - value: (json['value'] as num).toInt(), - index: (json['index'] as num).toInt(), - nextIndex: (json['nextIndex'] as num?)?.toInt(), - merged: json['merged'] as bool? ?? false, - ); - -Map _$TileToJson(Tile instance) => { - 'id': instance.id, - 'value': instance.value, - 'index': instance.index, - 'nextIndex': instance.nextIndex, - 'merged': instance.merged, - }; diff --git a/lib/game/2048/game.dart b/lib/game/2048/game.dart deleted file mode 100644 index 204dd0df9..000000000 --- a/lib/game/2048/game.dart +++ /dev/null @@ -1,182 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter_swipe_detector/flutter_swipe_detector.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; - -import 'entity/board.dart'; -import 'save.dart'; -import 'widget/empty_board.dart'; -import 'widget/score_board.dart'; -import 'widget/tile_board.dart'; -import 'theme.dart'; -import 'manager/board.dart'; -import 'i18n.dart'; - -class Game2048 extends ConsumerStatefulWidget { - final bool newGame; - - const Game2048({ - super.key, - this.newGame = true, - }); - - @override - ConsumerState createState() => _GameState(); -} - -class _GameState extends ConsumerState with TickerProviderStateMixin, WidgetsBindingObserver { - //The controller used to move the the tiles - late final AnimationController _moveController = AnimationController( - duration: const Duration(milliseconds: 100), - vsync: this, - )..addStatusListener((status) { - //When the movement finishes merge the tiles and start the scale animation which gives the pop effect. - if (status == AnimationStatus.completed) { - ref.read(boardManager.notifier).merge(); - _scaleController.forward(from: 0.0); - } - }); - - //The curve animation for the move animation controller. - late final CurvedAnimation _moveAnimation = CurvedAnimation( - parent: _moveController, - curve: Curves.easeInOut, - ); - - //The controller used to show a popup effect when the tiles get merged - late final AnimationController _scaleController = AnimationController( - duration: const Duration(milliseconds: 200), - vsync: this, - )..addStatusListener((status) { - //When the scale animation finishes end the round and if there is a queued movement start the move controller again for the next direction. - if (status == AnimationStatus.completed) { - if (ref.read(boardManager.notifier).endRound()) { - _moveController.forward(from: 0.0); - } - } - }); - - //The curve animation for the scale animation controller. - late final CurvedAnimation _scaleAnimation = CurvedAnimation( - parent: _scaleController, - curve: Curves.easeInOut, - ); - - final $focus = FocusNode(); - - @override - void initState() { - super.initState(); - //Add an Observer for the Lifecycles of the App - WidgetsBinding.instance.addObserver(this); - Future.delayed(Duration.zero).then((value) { - if (widget.newGame) { - ref.read(boardManager.notifier).newGame(); - } else { - final save = Save2048.storage.load(); - if (save != null) { - ref.read(boardManager.notifier).fromSave(Board.fromSave(save)); - } else { - ref.read(boardManager.notifier).newGame(); - } - } - }); - } - - @override - void didChangeAppLifecycleState(AppLifecycleState state) { - //Save current state when the app becomes inactive - if (state == AppLifecycleState.inactive) { - ref.read(boardManager.notifier).save(); - } - super.didChangeAppLifecycleState(state); - } - - @override - void deactivate() { - super.deactivate(); - ref.read(boardManager.notifier).save(); - } - - @override - void dispose() { - //Remove the Observer for the Lifecycles of the App - WidgetsBinding.instance.removeObserver(this); - - $focus.dispose(); - //Dispose the animations. - _moveAnimation.dispose(); - _scaleAnimation.dispose(); - _moveController.dispose(); - _scaleController.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: i18n.title.text(), - actions: [ - PlatformIconButton( - onPressed: () { - ref.read(boardManager.notifier).newGame(); - }, - icon: Icon(context.icons.refresh), - ) - ], - ), - body: KeyboardListener( - autofocus: true, - focusNode: $focus, - onKeyEvent: (event) { - //Move the tile with the arrows on the keyboard on Desktop - if (!_moveController.isCompleted) return; - if (ref.read(boardManager.notifier).onKey(event)) { - _moveController.forward(from: 0.0); - } - }, - child: SwipeDetector( - onSwipe: (direction, offset) { - if (ref.read(boardManager.notifier).move(direction)) { - _moveController.forward(from: 0.0); - } - }, - child: Scaffold( - backgroundColor: backgroundColor, - body: Column( - crossAxisAlignment: CrossAxisAlignment.center, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const Padding( - padding: EdgeInsets.symmetric(horizontal: 16.0), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Text( - '2048', - style: TextStyle(color: textColor, fontWeight: FontWeight.bold, fontSize: 52.0), - ), - ScoreBoard(), - ], - ), - ), - const SizedBox( - height: 32.0, - ), - Stack( - children: [ - const EmptyBoardWidget(), - TileBoardWidget(moveAnimation: _moveAnimation, scaleAnimation: _scaleAnimation) - ], - ) - ], - ), - ), - ), - ), - ); - } -} diff --git a/lib/game/2048/i18n.dart b/lib/game/2048/i18n.dart deleted file mode 100644 index 0fb3a7e97..000000000 --- a/lib/game/2048/i18n.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/game/i18n.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin, CommonGameI18nMixin { - const _I18n(); - - static const ns = "game.2048"; - - String get title => "$ns.title".tr(); - - String get score => "$ns.score".tr(); - - String get best => "$ns.best".tr(); -} - -class _Settings { - const _Settings(); - - static const ns = "${_I18n.ns}.settings"; -} diff --git a/lib/game/2048/index.dart b/lib/game/2048/index.dart deleted file mode 100644 index 98e498ff8..000000000 --- a/lib/game/2048/index.dart +++ /dev/null @@ -1,26 +0,0 @@ -// thanks to https://github.com/angjelkom/flutter_2048 -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; - -import 'game.dart'; - -class Game2048Page extends StatefulWidget { - final bool newGame; - - const Game2048Page({ - super.key, - this.newGame = true, - }); - - @override - State createState() => _Game2048PageState(); -} - -class _Game2048PageState extends State { - @override - Widget build(BuildContext context) { - return ProviderScope( - child: Game2048(newGame: widget.newGame), - ); - } -} diff --git a/lib/game/2048/manager/board.dart b/lib/game/2048/manager/board.dart deleted file mode 100644 index f09dd817c..000000000 --- a/lib/game/2048/manager/board.dart +++ /dev/null @@ -1,296 +0,0 @@ -import 'dart:math'; -import 'package:flutter/services.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter_swipe_detector/flutter_swipe_detector.dart'; -import 'package:sit/game/2048/save.dart'; -import 'package:sit/game/utils.dart'; -import 'package:uuid/uuid.dart'; - -import '../entity/tile.dart'; -import '../entity/board.dart'; - -import 'next_direction.dart'; -import 'round.dart'; - -class BoardManager extends StateNotifier { - // We will use this list to retrieve the right index when user swipes up/down - // which will allow us to reuse most of the logic. - final verticalOrder = [12, 8, 4, 0, 13, 9, 5, 1, 14, 10, 6, 2, 15, 11, 7, 3]; - - final StateNotifierProviderRef ref; - - BoardManager(this.ref) : super(Board.newGame(best: 0, tiles: [])); - - // Start New Game - void newGame() { - state = Board.newGame(best: max(state.best, state.score), tiles: [random([])]); - } - - // Continue from save - void fromSave(Board save) { - state = save; - } - - // Check whether the indexes are in the same row or column in the board. - bool _inRange(index, nextIndex) { - return index < 4 && nextIndex < 4 || - index >= 4 && index < 8 && nextIndex >= 4 && nextIndex < 8 || - index >= 8 && index < 12 && nextIndex >= 8 && nextIndex < 12 || - index >= 12 && nextIndex >= 12; - } - - Tile _calculate(Tile tile, List tiles, direction) { - bool asc = direction == SwipeDirection.left || direction == SwipeDirection.up; - bool vert = direction == SwipeDirection.up || direction == SwipeDirection.down; - // Get the first index from the left in the row - // Example: for left swipe that can be: 0, 4, 8, 12 - // for right swipe that can be: 3, 7, 11, 15 - // depending which row in the column in the board we need - // let's say the title.index = 6 (which is the 3rd tile from the left and 2nd from right side, in the second row) - // ceil means it will ALWAYS round up to the next largest integer - // NOTE: don't confuse ceil it with floor or round as even if the value is 2.1 output would be 3. - // ((6 + 1) / 4) = 1.75 - // Ceil(1.75) = 2 - // If it's ascending: 2 * 4 – 4 = 4, which is the first index from the left side in the second row - // If it's descending: 2 * 4 – 1 = 7, which is the last index from the left side and first index from the right side in the second row - // If user swipes vertically use the verticalOrder list to retrieve the up/down index else use the existing index - int index = vert ? verticalOrder[tile.index] : tile.index; - int nextIndex = ((index + 1) / 4).ceil() * 4 - (asc ? 4 : 1); - - // If the list of the new tiles to be rendered is not empty get the last tile - // and if that tile is in the same row as the curren tile set the next index for the current tile to be after the last tile - if (tiles.isNotEmpty) { - var last = tiles.last; - // If user swipes vertically use the verticalOrder list to retrieve the up/down index else use the existing index - var lastIndex = last.nextIndex ?? last.index; - lastIndex = vert ? verticalOrder[lastIndex] : lastIndex; - if (_inRange(index, lastIndex)) { - // If the order is ascending set the tile after the last processed tile - // If the order is descending set the tile before the last processed tile - nextIndex = lastIndex + (asc ? 1 : -1); - } - } - - // Return immutable copy of the current tile with the new next index - // which can either be the top left index in the row or the last tile nextIndex/index + 1 - return tile.copyWith(nextIndex: vert ? verticalOrder.indexOf(nextIndex) : nextIndex); - } - - //Move the tile in the direction - bool move(SwipeDirection direction) { - bool asc = direction == SwipeDirection.left || direction == SwipeDirection.up; - bool vert = direction == SwipeDirection.up || direction == SwipeDirection.down; - // Sort the list of tiles by index. - // If user swipes vertically use the verticalOrder list to retrieve the up/down index - state.tiles.sort( - ((a, b) => - (asc ? 1 : -1) * - (vert ? verticalOrder[a.index].compareTo(verticalOrder[b.index]) : a.index.compareTo(b.index))), - ); - - List tiles = []; - - for (int i = 0, l = state.tiles.length; i < l; i++) { - var tile = state.tiles[i]; - - // Calculate nextIndex for current tile. - tile = _calculate(tile, tiles, direction); - tiles.add(tile); - - if (i + 1 < l) { - var next = state.tiles[i + 1]; - // Assign current tile nextIndex or index to the next tile if its allowed to be moved. - if (tile.value == next.value) { - // If user swipes vertically use the verticalOrder list to retrieve the up/down index else use the existing index - var index = vert ? verticalOrder[tile.index] : tile.index, - nextIndex = vert ? verticalOrder[next.index] : next.index; - if (_inRange(index, nextIndex)) { - tiles.add(next.copyWith(nextIndex: tile.nextIndex)); - // Skip next iteration if next tile was already assigned nextIndex. - i += 1; - continue; - } - } - } - } - - // Assign immutable copy of the new board state and trigger rebuild. - state = state.copyWith(tiles: tiles); - return true; - } - - final rand = Random(); - - /// Generates tiles at random place on the board. - /// Avoids occupied tiles. - Tile random(List indexes) { - final candidates = Iterable.generate(16, (i) => i).toList(); - candidates.removeWhere((i) => indexes.contains(i)); - final index = candidates[rand.nextInt(candidates.length)]; - return Tile(id: const Uuid().v4(), value: 2, index: index); - } - - //Merge tiles - void merge() { - List tiles = []; - var tilesMoved = false; - List indexes = []; - var score = state.score; - - for (int i = 0, l = state.tiles.length; i < l; i++) { - var tile = state.tiles[i]; - - var value = tile.value, merged = false; - - if (i + 1 < l) { - //sum the number of the two tiles with same index and mark the tile as merged and skip the next iteration. - var next = state.tiles[i + 1]; - if (tile.nextIndex == next.nextIndex || tile.index == next.nextIndex && tile.nextIndex == null) { - value = tile.value + next.value; - merged = true; - applyGameHapticFeedback(); - score += tile.value; - i += 1; - } - } - - if (merged || tile.nextIndex != null && tile.index != tile.nextIndex) { - tilesMoved = true; - } - - tiles.add(tile.copyWith(index: tile.nextIndex ?? tile.index, nextIndex: null, value: value, merged: merged)); - indexes.add(tiles.last.index); - } - - // If tiles got moved then generate a new tile at random position of the available positions on the board. - // If all tiles are occupied, then don't generate. - if (tilesMoved && indexes.length < 16) { - tiles.add(random(indexes)); - } - state = state.copyWith(score: score, tiles: tiles, best: max(state.best, score)); - } - - //Finish round, win or loose the game. - void _endRound() { - var gameOver = true, gameWon = false; - List tiles = []; - - //If there is no more empty place on the board - if (state.tiles.length == 16) { - state.tiles.sort(((a, b) => a.index.compareTo(b.index))); - - for (int i = 0, l = state.tiles.length; i < l; i++) { - var tile = state.tiles[i]; - - //If there is a tile with 2048 then the game is won. - if (tile.value == 2048) { - gameWon = true; - } - - var x = (i - (((i + 1) / 4).ceil() * 4 - 4)); - - if (x > 0 && i - 1 >= 0) { - //If tile can be merged with left tile then game is not lost. - var left = state.tiles[i - 1]; - if (tile.value == left.value) { - gameOver = false; - } - } - - if (x < 3 && i + 1 < l) { - //If tile can be merged with right tile then game is not lost. - var right = state.tiles[i + 1]; - if (tile.value == right.value) { - gameOver = false; - } - } - - if (i - 4 >= 0) { - //If tile can be merged with above tile then game is not lost. - var top = state.tiles[i - 4]; - if (tile.value == top.value) { - gameOver = false; - } - } - - if (i + 4 < l) { - //If tile can be merged with the bellow tile then game is not lost. - var bottom = state.tiles[i + 4]; - if (tile.value == bottom.value) { - gameOver = false; - } - } - //Set the tile merged: false - tiles.add(tile.copyWith(merged: false)); - } - } else { - //There is still a place on the board to add a tile so the game is not lost. - gameOver = false; - for (var tile in state.tiles) { - //If there is a tile with 2048 then the game is won. - if (tile.value == 2048) { - gameWon = true; - } - //Set the tile merged: false - tiles.add(tile.copyWith(merged: false)); - } - } - - state = state.copyWith(tiles: tiles, won: gameWon, over: gameOver); - } - - //Mark the merged as false after the merge animation is complete. - bool endRound() { - //End round. - _endRound(); - ref.read(roundManager.notifier).end(); - - //If player moved too fast before the current animation/transition finished, start the move for the next direction - var nextDirection = ref.read(nextDirectionManager); - if (nextDirection != null) { - move(nextDirection); - ref.read(nextDirectionManager.notifier).clear(); - return true; - } - return false; - } - - //Move the tiles using the arrow keys on the keyboard. - bool onKey(KeyEvent event) { - SwipeDirection? direction; - if (HardwareKeyboard.instance.isLogicalKeyPressed(LogicalKeyboardKey.arrowRight)) { - direction = SwipeDirection.right; - } else if (HardwareKeyboard.instance.isLogicalKeyPressed(LogicalKeyboardKey.arrowLeft)) { - direction = SwipeDirection.left; - } else if (HardwareKeyboard.instance.isLogicalKeyPressed(LogicalKeyboardKey.arrowUp)) { - direction = SwipeDirection.up; - } else if (HardwareKeyboard.instance.isLogicalKeyPressed(LogicalKeyboardKey.arrowDown)) { - direction = SwipeDirection.down; - } - - if (direction != null) { - move(direction); - return true; - } - return false; - } - - bool canSave() { - if (state.won || state.over) return false; - if (state.tiles.isEmpty) return false; - if (state.tiles.length == 1 && state.tiles.first.value == 2) return false; - return true; - } - - Future save() async { - if (canSave()) { - await Save2048.storage.save(state.toSave()); - } else { - await Save2048.storage.delete(); - } - } -} - -final boardManager = StateNotifierProvider((ref) { - return BoardManager(ref); -}); diff --git a/lib/game/2048/manager/next_direction.dart b/lib/game/2048/manager/next_direction.dart deleted file mode 100644 index 859208469..000000000 --- a/lib/game/2048/manager/next_direction.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter_swipe_detector/flutter_swipe_detector.dart'; - -/* -In case user swipes too fast we prevent for the next round to start until the current round finishes, we do that using the RoundManager, -but instead of canceling that round we will queue it so that the round automatically starts as soon the current finishes, -that way we will prevent the user feeling like the game is lag-ish or slow. -*/ -class NextDirectionManager extends StateNotifier { - NextDirectionManager() : super(null); - - void queue(direction) { - state = direction; - } - - void clear() { - state = null; - } -} - -final nextDirectionManager = StateNotifierProvider((ref) { - return NextDirectionManager(); -}); diff --git a/lib/game/2048/manager/round.dart b/lib/game/2048/manager/round.dart deleted file mode 100644 index 9eaa140d0..000000000 --- a/lib/game/2048/manager/round.dart +++ /dev/null @@ -1,21 +0,0 @@ -import 'package:flutter_riverpod/flutter_riverpod.dart'; - -/* -A Notifier when a round starts, in order to prevent the next round starts before the current ends -prevents animation issues when user tries to move tiles too soon. -*/ -class RoundManager extends StateNotifier { - RoundManager() : super(true); - - void end() { - state = true; - } - - void begin() { - state = false; - } -} - -final roundManager = StateNotifierProvider((ref) { - return RoundManager(); -}); diff --git a/lib/game/2048/save.dart b/lib/game/2048/save.dart deleted file mode 100644 index c40561b2f..000000000 --- a/lib/game/2048/save.dart +++ /dev/null @@ -1,30 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/game/storage/storage.dart'; -import 'package:version/version.dart'; - -part "save.g.dart"; - -List _defaultTiles() { - return List.generate(16, (index) => -1); -} - -@JsonSerializable() -class Save2048 { - @JsonKey(defaultValue: 0) - final int score; - @JsonKey(defaultValue: _defaultTiles) - final List tiles; - - const Save2048({required this.score, required this.tiles}); - - Map toJson() => _$Save2048ToJson(this); - - factory Save2048.fromJson(Map json) => _$Save2048FromJson(json); - - static final storage = GameStorageBox( - name: "2048", - version: Version(1, 0, 0), - serialize: (save) => save.toJson(), - deserialize: Save2048.fromJson, - ); -} diff --git a/lib/game/2048/save.g.dart b/lib/game/2048/save.g.dart deleted file mode 100644 index 112016c0d..000000000 --- a/lib/game/2048/save.g.dart +++ /dev/null @@ -1,17 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'save.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -Save2048 _$Save2048FromJson(Map json) => Save2048( - score: (json['score'] as num?)?.toInt() ?? 0, - tiles: (json['tiles'] as List?)?.map((e) => (e as num).toInt()).toList() ?? _defaultTiles(), - ); - -Map _$Save2048ToJson(Save2048 instance) => { - 'score': instance.score, - 'tiles': instance.tiles, - }; diff --git a/lib/game/2048/settings.dart b/lib/game/2048/settings.dart deleted file mode 100644 index 74490a1c3..000000000 --- a/lib/game/2048/settings.dart +++ /dev/null @@ -1,3 +0,0 @@ -class Settings2048 { - const Settings2048(); -} diff --git a/lib/game/2048/theme.dart b/lib/game/2048/theme.dart deleted file mode 100644 index 07b142443..000000000 --- a/lib/game/2048/theme.dart +++ /dev/null @@ -1,25 +0,0 @@ -import 'dart:ui'; - -const backgroundColor = Color(0xfffaf8ef); -const textColor = Color(0xff776e65); -const textColorWhite = Color(0xfff9f6f2); -const boardColor = Color(0xffbbada0); -const emptyTileColor = Color(0xffcdc1b4); -const buttonColor = Color(0xff8f7a66); -const scoreColor = Color(0xffbbada0); -const overlayColor = Color.fromRGBO(238, 228, 218, 0.73); -const defaultTileColor = Color(0xff121212); - -const tileColors = { - 2: Color(0xffeee4da), - 4: Color(0xffeee1c9), - 8: Color(0xfff3b27a), - 16: Color(0xfff69664), - 32: Color(0xfff77c5f), - 64: Color(0xfff75f3b), - 128: Color(0xffedd073), - 256: Color(0xffedcc62), - 512: Color(0xffedc950), - 1024: Color(0xffedc53f), - 2048: Color(0xffedc22e), -}; diff --git a/lib/game/2048/widget/animated_tile.dart b/lib/game/2048/widget/animated_tile.dart deleted file mode 100644 index 61e9a599f..000000000 --- a/lib/game/2048/widget/animated_tile.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'package:flutter/material.dart'; - -import '../entity/tile.dart'; - -class AnimatedTile extends AnimatedWidget { - //We use Listenable.merge in order to update the animated widget when both of the controllers have change - AnimatedTile({ - super.key, - required this.moveAnimation, - required this.scaleAnimation, - required this.tile, - required this.child, - required this.size, - }) : super(listenable: Listenable.merge([moveAnimation, scaleAnimation])); - - final Tile tile; - final Widget child; - final CurvedAnimation moveAnimation; - final CurvedAnimation scaleAnimation; - final double size; - - //Get the current top position based on current index of the tile - late final double _top = tile.getTop(size); - - //Get the current left position based on current index of the tile - late final double _left = tile.getLeft(size); - - //Get the next top position based on current next index of the tile - late final double _nextTop = tile.getNextTop(size) ?? _top; - - //Get the next top position based on next index of the tile - late final double _nextLeft = tile.getNextLeft(size) ?? _left; - - //top tween used to move the tile from top to bottom - late final Animation top = Tween( - begin: _top, - end: _nextTop, - ).animate( - moveAnimation, - ), - //left tween used to move the tile from left to right - left = Tween( - begin: _left, - end: _nextLeft, - ).animate( - moveAnimation, - ), - //scale tween used to use give "pop" effect when a merge happens - scale = TweenSequence( - >[ - TweenSequenceItem( - tween: Tween(begin: 1.0, end: 1.5).chain(CurveTween(curve: Curves.easeOut)), - weight: 50.0, - ), - TweenSequenceItem( - tween: Tween(begin: 1.5, end: 1.0).chain(CurveTween(curve: Curves.easeIn)), - weight: 50.0, - ), - ], - ).animate( - scaleAnimation, - ); - - @override - Widget build(BuildContext context) { - return Positioned( - top: top.value, - left: left.value, - //Only use scale animation if the tile was merged - child: tile.merged - ? ScaleTransition( - scale: scale, - child: child, - ) - : child, - ); - } -} diff --git a/lib/game/2048/widget/button.dart b/lib/game/2048/widget/button.dart deleted file mode 100644 index 5e4a5126d..000000000 --- a/lib/game/2048/widget/button.dart +++ /dev/null @@ -1,43 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; - -import '../theme.dart'; - -class ButtonWidget extends ConsumerWidget { - const ButtonWidget({super.key, this.text, this.icon, required this.onPressed}); - - final String? text; - final IconData? icon; - final VoidCallback onPressed; - - @override - Widget build(BuildContext context, WidgetRef ref) { - if (icon != null) { - //Button Widget with icon for Undo and Restart Game button. - return Container( - decoration: BoxDecoration( - color: scoreColor, - borderRadius: BorderRadius.circular(12.0), - ), - child: PlatformIconButton( - color: textColorWhite, - onPressed: onPressed, - icon: Icon( - icon, - size: 24.0, - )), - ); - } - //Button Widget with text for New Game and Try Again button. - return ElevatedButton( - style: ButtonStyle( - padding: MaterialStateProperty.all(const EdgeInsets.all(16.0)), - backgroundColor: MaterialStateProperty.all(buttonColor)), - onPressed: onPressed, - child: Text( - text!, - style: const TextStyle(fontWeight: FontWeight.bold, fontSize: 18.0), - )); - } -} diff --git a/lib/game/2048/widget/empty_board.dart b/lib/game/2048/widget/empty_board.dart deleted file mode 100644 index aab145383..000000000 --- a/lib/game/2048/widget/empty_board.dart +++ /dev/null @@ -1,45 +0,0 @@ -import 'dart:math'; -import 'package:flutter/material.dart'; - -import '../theme.dart'; -import 'tile.dart'; - -class EmptyBoardWidget extends StatelessWidget { - const EmptyBoardWidget({super.key}); - - @override - Widget build(BuildContext context) { - //Decides the maximum size the Board can be based on the shortest size of the screen. - final size = max(290.0, min((MediaQuery.of(context).size.shortestSide * 0.90).floorToDouble(), 460.0)); - - //Decide the size of the tile based on the size of the board minus the space between each tile. - final sizePerTile = (size / 4).floorToDouble(); - final tileSize = sizePerTile - 12.0 - (12.0 / 4); - final boardSize = sizePerTile * 4; - return Container( - width: boardSize, - height: boardSize, - decoration: BoxDecoration(color: boardColor, borderRadius: BorderRadius.circular(12.0)), - child: Stack( - children: List.generate(16, (i) { - //Render the empty board in 4x4 GridView - var x = ((i + 1) / 4).ceil(); - var y = x - 1; - - var top = y * (tileSize) + (x * 12.0); - var z = (i - (4 * y)); - var left = z * (tileSize) + ((z + 1) * 12.0); - - return Positioned( - top: top, - left: left, - child: BoardTile( - size: tileSize, - color: emptyTileColor, - ), - ); - }), - ), - ); - } -} diff --git a/lib/game/2048/widget/score_board.dart b/lib/game/2048/widget/score_board.dart deleted file mode 100644 index 7b1a2ba08..000000000 --- a/lib/game/2048/widget/score_board.dart +++ /dev/null @@ -1,58 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import '../i18n.dart'; - -import '../theme.dart'; -import '../manager/board.dart'; - -class ScoreBoard extends ConsumerWidget { - const ScoreBoard({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final score = ref.watch(boardManager.select((board) => board.score)); - final best = ref.watch(boardManager.select((board) => board.best)); - - return Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Score(label: i18n.score, score: '$score'), - const SizedBox( - width: 8.0, - ), - Score(label: i18n.best, score: '$best', padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0)), - ], - ); - } -} - -class Score extends StatelessWidget { - const Score({ - super.key, - required this.label, - required this.score, - this.padding, - }); - - final String label; - final String score; - final EdgeInsets? padding; - - @override - Widget build(BuildContext context) { - return Container( - padding: padding ?? const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0), - decoration: BoxDecoration(color: scoreColor, borderRadius: BorderRadius.circular(12.0)), - child: Column(children: [ - Text( - label.toUpperCase(), - style: const TextStyle(fontSize: 18.0, color: textColorWhite), - ), - Text( - score, - style: const TextStyle(color: Colors.white, fontWeight: FontWeight.bold, fontSize: 18.0), - ) - ]), - ); - } -} diff --git a/lib/game/2048/widget/tile.dart b/lib/game/2048/widget/tile.dart deleted file mode 100644 index 994fda1c1..000000000 --- a/lib/game/2048/widget/tile.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:flutter/material.dart'; - -class BoardTile extends StatelessWidget { - final Color? color; - final double size; - final Widget? child; - - const BoardTile({ - super.key, - this.color, - required this.size, - this.child, - }); - - @override - Widget build(BuildContext context) { - return Container( - width: size, - height: size, - decoration: BoxDecoration( - color: color, - borderRadius: BorderRadius.circular(12.0), - ), - child: child, - ); - } -} diff --git a/lib/game/2048/widget/tile_board.dart b/lib/game/2048/widget/tile_board.dart deleted file mode 100644 index 7f616c1ae..000000000 --- a/lib/game/2048/widget/tile_board.dart +++ /dev/null @@ -1,90 +0,0 @@ -import 'dart:math'; -import 'package:auto_size_text/auto_size_text.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/game/2048/widget/tile.dart'; - -import '../theme.dart'; -import '../i18n.dart'; -import '../manager/board.dart'; - -import 'animated_tile.dart'; -import 'button.dart'; - -class TileBoardWidget extends ConsumerWidget { - const TileBoardWidget({super.key, required this.moveAnimation, required this.scaleAnimation}); - - final CurvedAnimation moveAnimation; - final CurvedAnimation scaleAnimation; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final board = ref.watch(boardManager); - - //Decides the maximum size the Board can be based on the shortest size of the screen. - final size = max(290.0, min((MediaQuery.of(context).size.shortestSide * 0.90).floorToDouble(), 460.0)); - - //Decide the size of the tile based on the size of the board minus the space between each tile. - final sizePerTile = (size / 4).floorToDouble(); - final tileSize = sizePerTile - 12.0 - (12.0 / 4); - final boardSize = sizePerTile * 4; - return SizedBox( - width: boardSize, - height: boardSize, - child: Stack( - children: [ - ...List.generate( - board.tiles.length, - (i) { - var tile = board.tiles[i]; - - return AnimatedTile( - key: ValueKey(tile.id), - tile: tile, - moveAnimation: moveAnimation, - scaleAnimation: scaleAnimation, - size: tileSize, - //In order to optimize performances and prevent unneeded re-rendering the actual tile is passed as child to the AnimatedTile - //as the tile won't change for the duration of the movement (apart from it's position) - child: BoardTile( - size: tileSize, - color: tileColors[tile.value] ?? defaultTileColor, - child: AutoSizeText( - '${tile.value}', - maxLines: 1, - style: TextStyle( - fontWeight: FontWeight.bold, - fontSize: context.textTheme.headlineLarge?.fontSize, - color: tile.value < 8 ? textColor : textColorWhite, - ), - ).center().padH(4), - ), - ); - }, - ), - if (board.over) - Positioned.fill( - child: Container( - color: overlayColor, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - board.won ? i18n.youWin : i18n.gameOver, - style: const TextStyle(color: textColor, fontWeight: FontWeight.bold, fontSize: 64.0), - ), - ButtonWidget( - text: board.won ? i18n.newGame : i18n.tryAgain, - onPressed: () { - ref.read(boardManager.notifier).newGame(); - }, - ) - ], - ), - )) - ], - ), - ); - } -} diff --git a/lib/game/entity/game_state.dart b/lib/game/entity/game_state.dart deleted file mode 100644 index 049f15143..000000000 --- a/lib/game/entity/game_state.dart +++ /dev/null @@ -1,9 +0,0 @@ -import 'package:freezed_annotation/freezed_annotation.dart'; - -@JsonEnum() -enum GameState { - running, - idle, - gameOver, - victory, -} diff --git a/lib/game/i18n.dart b/lib/game/i18n.dart deleted file mode 100644 index 411a31f13..000000000 --- a/lib/game/i18n.dart +++ /dev/null @@ -1,37 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); -const _ns = "game"; - -class _I18n with CommonI18nMixin { - const _I18n(); - - final settings = const _Settings(); - - String get navigation => "$_ns.navigation".tr(); - - String get newGame => "$_ns.newGame".tr(); - - String get continueGame => "$_ns.continueGame".tr(); -} - -mixin class CommonGameI18nMixin { - String get newGame => "$_ns.newGame".tr(); - - String get tryAgain => "$_ns.tryAgain".tr(); - - String get youWin => "$_ns.youWin".tr(); - - String get gameOver => "$_ns.gameOver".tr(); -} - -class _Settings { - static const ns = "$_ns.settings"; - - const _Settings(); - - String get enableHapticFeedback => "$ns.enableHapticFeedback.title".tr(); - - String get enableHapticFeedbackDesc => "$ns.enableHapticFeedback.desc".tr(); -} diff --git a/lib/game/index.dart b/lib/game/index.dart deleted file mode 100644 index 03cd56637..000000000 --- a/lib/game/index.dart +++ /dev/null @@ -1,55 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/game/2048/card.dart'; -import 'package:sit/game/minesweeper/card.dart'; -import 'package:sit/settings/dev.dart'; - -import "i18n.dart"; -import 'widget/card.dart'; - -class GamePage extends ConsumerStatefulWidget { - const GamePage({super.key}); - - @override - ConsumerState createState() => _GamePageState(); -} - -class _GamePageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final devMode = ref.watch(Dev.$on); - return Scaffold( - resizeToAvoidBottomInset: false, - body: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, bool innerBoxIsScrolled) { - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - title: i18n.navigation.text(), - forceElevated: innerBoxIsScrolled, - ), - ), - ]; - }, - body: CustomScrollView( - slivers: [ - SliverList.list( - children: [ - const GameAppCard2048(), - const GameAppCardMinesweeper(), - if (devMode) - const OfflineGameAppCard( - name: "SIT Suika", - baseRoute: "/suika", - ), - ], - ), - ], - ), - ), - ); - } -} diff --git a/lib/game/minesweeper/card.dart b/lib/game/minesweeper/card.dart deleted file mode 100644 index 2e120bfd7..000000000 --- a/lib/game/minesweeper/card.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'package:flutter/material.dart'; -import 'save.dart'; -import 'package:sit/game/widget/card.dart'; - -import 'i18n.dart'; - -class GameAppCardMinesweeper extends StatefulWidget { - const GameAppCardMinesweeper({super.key}); - - @override - State createState() => _GameAppCardMinesweeperState(); -} - -class _GameAppCardMinesweeperState extends State { - @override - Widget build(BuildContext context) { - return OfflineGameAppCard( - name: i18n.title, - baseRoute: "/minesweeper", - // storage: SaveMinesweeper.storage, - ); - } -} diff --git a/lib/game/minesweeper/entity/board.dart b/lib/game/minesweeper/entity/board.dart deleted file mode 100644 index 10aa9c1b6..000000000 --- a/lib/game/minesweeper/entity/board.dart +++ /dev/null @@ -1,146 +0,0 @@ -import 'package:collection/collection.dart'; -import "package:flutter/foundation.dart"; -import '../manager/logic.dart'; -import 'package:logger/logger.dart'; -import 'dart:math'; -import '../save.dart'; -import 'cell.dart'; - -// @JsonSerializable() -class Board { - var _mines = -1; - final int rows; - final int columns; - late List _cells; - - static const _nearbyDelta = [(-1, 1), (0, 1), (1, 1), (-1, 0), /*(0,0)*/ (1, 0), (-1, -1), (0, -1), (1, -1)]; - - Board({required this.rows, required this.columns}) { - _cells = List.generate(rows * columns, (index) => Cell(row: index ~/ columns, col: index % columns)); - if (kDebugMode) { - logger.log(Level.info, "MineBoard Init Finished"); - } - } - - Board._({ - required this.rows, - required this.columns, - required List board, - required int mines, - }) : _cells = board, - _mines = mines; - - factory Board.fromSave(SaveMinesweeper save) { - final board = save.cells - .mapIndexed( - (index, cell) => Cell(row: index ~/ save.columns, col: index % save.columns) - ..mine = cell.mine - ..state = cell.state, - ) - .toList(); - return Board._( - rows: save.rows, - columns: save.columns, - board: board, - mines: board.where((cell) => cell.mine).length, - ); - } - - SaveMinesweeper toSave() { - return SaveMinesweeper( - rows: rows, - columns: columns, - cells: _cells.map((cell) => Cell4Save(mine: cell.mine, state: cell.state)).toList(), - ); - } - - int countAllByState({required state}) { - var count = 0; - for (final cell in iterateAllCells()) { - if (cell.state == state) { - count += 1; - } - } - return count; - } - - int get mines => max(0, _mines); - - bool get started => _mines >= 0; - - int countAroundByState({required Cell cell, required state}) { - var count = 0; - for (final cell in iterateAround(cell: cell)) { - if (cell.state == state) { - count += 1; - } - } - return count; - } - - int countAroundMines({required Cell cell}) { - var count = 0; - for (final cell in iterateAround(cell: cell)) { - if (cell.mine) { - count += 1; - } - } - return count; - } - - void randomMines({required number, required clickRow, required clickCol}) { - _mines = number; - int beginSafeRow = clickRow - 1 < 0 ? 0 : clickRow - 1; - int endSafeRow = clickRow + 1 >= rows ? rows - 1 : clickRow + 1; - int beginSafeCol = clickCol - 1 < 0 ? 0 : clickCol - 1; - int endSafeCol = clickCol + 1 >= columns ? columns - 1 : clickCol + 1; - var cnt = 0; - while (cnt < number) { - var value = Random().nextInt(columns * rows); - var col = value % columns; - var row = (value / columns).floor(); - final cell = getCell(row: row, col: col); - if (!cell.mine && !((row >= beginSafeRow && row <= endSafeRow) && (col >= beginSafeCol && col <= endSafeCol))) { - cell.mine = true; - _addRoundCellMineNum(row: row, col: col); // count as mine created - cnt += 1; - } - } - } - - void _addRoundCellMineNum({required row, required col}) { - for (final neighbor in iterateAround(cell: getCell(row: row, col: col))) { - neighbor.minesAround += 1; - } - } - - Cell getCell({required row, required col}) { - return _cells[row * columns + col]; - } - - void changeCell({required row, required col, required state}) { - getCell(row: row, col: col).state = state; - } - - Iterable iterateAround({required Cell cell}) sync* { - for (final (dx, dy) in _nearbyDelta) { - final row = cell.row + dx; - final col = cell.col + dy; - if (_isInRange(row: row, col: col)) { - yield getCell(row: row, col: col); - } - } - } - - Iterable iterateAllCells() sync* { - for (var row = 0; row < rows; row++) { - for (var column = 0; column < columns; column++) { - yield getCell(row: row, col: column); - } - } - } - - bool _isInRange({required int row, required int col}) { - return 0 <= row && row < rows && 0 <= col && col < columns; - } -} diff --git a/lib/game/minesweeper/entity/cell.dart b/lib/game/minesweeper/entity/cell.dart deleted file mode 100644 index 805beb1cb..000000000 --- a/lib/game/minesweeper/entity/cell.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; - -enum CellState { - @JsonValue(0) - covered, - @JsonValue(1) - blank, - @JsonValue(2) - flag; -} - -class Cell { - Cell({ - required this.row, - required this.col, - }); - - final int row; - final int col; - bool mine = false; - CellState state = CellState.covered; - int minesAround = 0; -} diff --git a/lib/game/minesweeper/entity/mode.dart b/lib/game/minesweeper/entity/mode.dart deleted file mode 100644 index fdbe284f2..000000000 --- a/lib/game/minesweeper/entity/mode.dart +++ /dev/null @@ -1,43 +0,0 @@ -class GameMode { - final String name; - final int gameRows; - final int gameColumns; - final int gameMines; - static const defaultRows = 15; - static const defaultColumns = 8; - static const easy = GameMode._( - name: "easy", - gameRows: defaultRows, - gameColumns: defaultColumns, - gameMines: 18, - ); - static const normal = GameMode._( - name: "normal", - gameRows: 15, - gameColumns: 8, - gameMines: 18, - ); - static const hard = GameMode._( - name: "hard", - gameRows: 15, - gameColumns: 8, - gameMines: 18, - ); - - static final name2mode = { - "easy": easy, - "normal": normal, - "hard": hard, - }; - - const GameMode._({ - required this.name, - required this.gameRows, - required this.gameColumns, - required this.gameMines, - }); - - static String toJson(GameMode mode) => mode.name; - - static GameMode fromJson(String name) => name2mode[name] ?? easy; -} diff --git a/lib/game/minesweeper/entity/record.dart b/lib/game/minesweeper/entity/record.dart deleted file mode 100644 index 7970982d1..000000000 --- a/lib/game/minesweeper/entity/record.dart +++ /dev/null @@ -1,7 +0,0 @@ -import 'package:sit/game/record/record.dart'; - -class RecordMinesweeper extends GameRecord { - const RecordMinesweeper({ - required super.ts, - }); -} diff --git a/lib/game/minesweeper/entity/screen.dart b/lib/game/minesweeper/entity/screen.dart deleted file mode 100644 index 034d2910e..000000000 --- a/lib/game/minesweeper/entity/screen.dart +++ /dev/null @@ -1,41 +0,0 @@ -import 'mode.dart'; - -class Size { - Size({required this.width, required this.height}); - final double width; - final double height; -} - -class Screen { - final double screenWidth; - final double screenHeight; - final GameMode gameMode; - - const Screen({required this.screenWidth, required this.screenHeight, required this.gameMode}); - - double getBorderWidth() { - return (getCellWidth() / 8).floorToDouble(); - } - - double getBoardRadius() { - return 12; - } - - double getInfoHeight() { - return (screenHeight - getBoardSize().height) * 0.2; - } - - double getCellWidth() { - var wCell = (screenWidth / (gameMode.gameColumns + 1)).floorToDouble(); - var hCell = (screenHeight / (gameMode.gameRows + 3)).floorToDouble(); - var cellWidth = wCell > hCell ? hCell : wCell; - return cellWidth; - } - - Size getBoardSize() { - final width = getCellWidth() * gameMode.gameColumns + getBorderWidth() * 2; - final height = getCellWidth() * gameMode.gameRows + getBorderWidth() * 2; - final boardSize = Size(width: width, height: height); - return boardSize; - } -} diff --git a/lib/game/minesweeper/entity/state.dart b/lib/game/minesweeper/entity/state.dart deleted file mode 100644 index 8116db916..000000000 --- a/lib/game/minesweeper/entity/state.dart +++ /dev/null @@ -1,29 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/game/entity/game_state.dart'; - -import 'board.dart'; -import 'mode.dart'; - -part "state.g.dart"; - -// @JsonSerializable() -@CopyWith(skipFields: true) -class GameStateMinesweeper { - @JsonKey() - final GameState state; - @JsonKey(toJson: GameMode.toJson, fromJson: GameMode.fromJson) - final GameMode mode; - @JsonKey() - final Board board; - - const GameStateMinesweeper({ - required this.state, - required this.mode, - required this.board, - }); - // - // Map toJson() => _$GameStateMinesweeperToJson(this); - // - // factory GameStateMinesweeper.fromJson(Map json) => _$GameStateMinesweeperFromJson(json); -} diff --git a/lib/game/minesweeper/entity/state.g.dart b/lib/game/minesweeper/entity/state.g.dart deleted file mode 100644 index 560c72af2..000000000 --- a/lib/game/minesweeper/entity/state.g.dart +++ /dev/null @@ -1,63 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'state.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$GameStateMinesweeperCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// GameStateMinesweeper(...).copyWith(id: 12, name: "My name") - /// ```` - GameStateMinesweeper call({ - GameState? state, - GameMode? mode, - Board? board, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfGameStateMinesweeper.copyWith(...)`. -class _$GameStateMinesweeperCWProxyImpl implements _$GameStateMinesweeperCWProxy { - const _$GameStateMinesweeperCWProxyImpl(this._value); - - final GameStateMinesweeper _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// GameStateMinesweeper(...).copyWith(id: 12, name: "My name") - /// ```` - GameStateMinesweeper call({ - Object? state = const $CopyWithPlaceholder(), - Object? mode = const $CopyWithPlaceholder(), - Object? board = const $CopyWithPlaceholder(), - }) { - return GameStateMinesweeper( - state: state == const $CopyWithPlaceholder() || state == null - ? _value.state - // ignore: cast_nullable_to_non_nullable - : state as GameState, - mode: mode == const $CopyWithPlaceholder() || mode == null - ? _value.mode - // ignore: cast_nullable_to_non_nullable - : mode as GameMode, - board: board == const $CopyWithPlaceholder() || board == null - ? _value.board - // ignore: cast_nullable_to_non_nullable - : board as Board, - ); - } -} - -extension $GameStateMinesweeperCopyWith on GameStateMinesweeper { - /// Returns a callable class that can be used as follows: `instanceOfGameStateMinesweeper.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$GameStateMinesweeperCWProxy get copyWith => _$GameStateMinesweeperCWProxyImpl(this); -} diff --git a/lib/game/minesweeper/game.dart b/lib/game/minesweeper/game.dart deleted file mode 100644 index f40dca389..000000000 --- a/lib/game/minesweeper/game.dart +++ /dev/null @@ -1,251 +0,0 @@ -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter/material.dart'; -import 'package:logger/logger.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/game/minesweeper/save.dart'; -import 'entity/board.dart'; -import 'entity/cell.dart'; -import 'entity/mode.dart'; -import 'widget/info.dart'; -import 'manager/logic.dart'; -import 'widget/board.dart'; -import "package:flutter/foundation.dart"; -import 'manager/timer.dart'; -import 'theme.dart'; -import 'i18n.dart'; - -class GameMinesweeper extends ConsumerStatefulWidget { - final bool newGame; - - const GameMinesweeper({ - super.key, - this.newGame = true, - }); - - @override - ConsumerState createState() => _MinesweeperState(); -} - -class _MinesweeperState extends ConsumerState with WidgetsBindingObserver { - late GameTimer timer; - late GameMode mode; - - @override - void initState() { - super.initState(); - WidgetsBinding.instance.addObserver(this); - mode = GameMode.easy; - timer = GameTimer(refresh: updateGame); - ref.read(boardManager.notifier).initGame(gameMode: mode); - Future.delayed(Duration.zero).then((value) { - if (!widget.newGame) { - final save = SaveMinesweeper.storage.load(); - if (save != null) { - ref.read(boardManager.notifier).fromSave(Board.fromSave(save)); - } else { - ref.read(boardManager.notifier).initGame(gameMode: mode); - } - } - }); - if (kDebugMode) { - logger.log(Level.info, "GameState Init Finished"); - } - } - - @override - void didChangeAppLifecycleState(AppLifecycleState state) { - //Save current state when the app becomes inactive - if (state == AppLifecycleState.inactive) { - ref.read(boardManager.notifier).save(); - } - super.didChangeAppLifecycleState(state); - } - - @override - void deactivate() { - super.deactivate(); - ref.read(boardManager.notifier).save(); - } - - @override - void dispose() { - //Remove the Observer for the Lifecycles of the App - WidgetsBinding.instance.removeObserver(this); - timer.stopTimer(); - super.dispose(); - } - - void updateGame() { - if (!timer.timerStart && !ref.read(boardManager.notifier).firstClick) { - timer.startTimer(); - } - if (!context.mounted) return; - setState(() { - if (kDebugMode) { - ref.read(boardManager).gameOver ? logger.log(Level.info, "Game Over!") : null; - ref.read(boardManager).goodGame ? logger.log(Level.info, "Good Game!") : null; - } - }); - } - - void resetGame({gameMode = GameMode.easy}) { - timer.stopTimer(); - mode = gameMode; - timer = GameTimer(refresh: updateGame); - ref.read(boardManager.notifier).initGame(gameMode: mode); - updateGame(); - } - - void initScreen({required screenSize, required gameMode}) { - // The Appbar Height 56 - ref.read(boardManager.notifier).initScreen( - width: screenSize.width, - height: screenSize.height - 56, - mode: gameMode, - ); - } - - @override - Widget build(BuildContext context) { - // Get Your Screen Size - final screenSize = MediaQuery.of(context).size; - initScreen(screenSize: screenSize, gameMode: mode); - // Build UI From Screen Size - - return Scaffold( - appBar: AppBar( - centerTitle: true, - title: i18n.title.text(), - actions: [ - PlatformIconButton( - onPressed: () { - resetGame(); - }, - icon: Icon(context.icons.refresh), - ) - ], - ), - body: Column( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - GameHud( - mode: mode, - timer: timer, - ), - Center( - child: Stack( - children: [ - GameBoard(refresh: updateGame, timer: timer), - GameOverModal(resetGame: resetGame, timer: timer), - ], - ), - ), - ], - ), - ); - } -} - -class MinesAndFlags extends StatelessWidget { - final int flags; - final int mines; - - const MinesAndFlags({ - super.key, - required this.flags, - required this.mines, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - return Row( - children: [ - Text( - " $flags ", - style: textTheme.bodyLarge, - ), - const Icon( - Icons.flag_outlined, - color: flagColor, - ), - Text( - "/ $mines ", - style: textTheme.bodyLarge, - ), - const Icon( - Icons.gps_fixed, - color: mineColor, - ), - ], - ); - } -} - -class GameHud extends ConsumerWidget { - final GameTimer timer; - final GameMode mode; - - const GameHud({ - super.key, - required this.mode, - required this.timer, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final screen = ref.read(boardManager).screen; - final boardRadius = screen.getBoardRadius(); - final textTheme = context.textTheme; - return Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Container( - width: screen.getBoardSize().width / 2, - height: screen.getInfoHeight(), - decoration: BoxDecoration( - color: context.colorScheme.secondaryContainer, - borderRadius: - BorderRadius.only(topLeft: Radius.circular(boardRadius), bottomLeft: Radius.circular(boardRadius))), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - const Icon(Icons.videogame_asset_outlined), - ref.read(boardManager).board.started - ? MinesAndFlags( - flags: ref.read(boardManager).board.countAllByState(state: CellState.flag), - mines: ref.read(boardManager).board.mines, - ) - : Text( - mode.l10n(), - style: textTheme.bodyLarge, - ), - ], - ), - ), - Container( - width: screen.getBoardSize().width / 2, - height: screen.getInfoHeight(), - decoration: BoxDecoration( - color: context.colorScheme.tertiaryContainer, - borderRadius: BorderRadius.only( - topRight: Radius.circular(boardRadius), - bottomRight: Radius.circular(boardRadius), - )), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - const Icon(Icons.alarm), - Text( - timer.getTimeCost(), - style: textTheme.bodyLarge, - ), - ], - ), - ), - ], - ); - } -} diff --git a/lib/game/minesweeper/i18n.dart b/lib/game/minesweeper/i18n.dart deleted file mode 100644 index 2c433b8a0..000000000 --- a/lib/game/minesweeper/i18n.dart +++ /dev/null @@ -1,20 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/game/i18n.dart'; -import 'entity/mode.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin, CommonGameI18nMixin { - const _I18n(); - - static const ns = "game.minesweeper"; - - String get title => "$ns.title".tr(); - - String timeSpent(String time) => "$ns.timeSpent".tr(args: [time]); -} - -extension GameModeI18nX on GameMode { - String l10n() => "${_I18n.ns}.gameMode.$name".tr(); -} diff --git a/lib/game/minesweeper/index.dart b/lib/game/minesweeper/index.dart deleted file mode 100644 index f26315c45..000000000 --- a/lib/game/minesweeper/index.dart +++ /dev/null @@ -1,26 +0,0 @@ -// thanks to https://github.com/Henry-Sky/minesweeper - -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'game.dart'; - -class GameMinesweeperPage extends StatefulWidget { - final bool newGame; - - const GameMinesweeperPage({ - super.key, - this.newGame = true, - }); - - @override - State createState() => _MinesweeperPage(); -} - -class _MinesweeperPage extends State { - @override - Widget build(BuildContext context) { - return ProviderScope( - child: GameMinesweeper(newGame: widget.newGame), - ); - } -} diff --git a/lib/game/minesweeper/manager/logic.dart b/lib/game/minesweeper/manager/logic.dart deleted file mode 100644 index 57365d4c6..000000000 --- a/lib/game/minesweeper/manager/logic.dart +++ /dev/null @@ -1,188 +0,0 @@ -import 'package:sit/game/minesweeper/save.dart'; - -import '../entity/mode.dart'; -import '../entity/screen.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import "package:flutter/foundation.dart"; -import 'package:logger/logger.dart'; -import '../entity/board.dart'; -import '../entity/cell.dart'; - -// Debug Tool -final logger = Logger(); - -class GameLogic extends StateNotifier { - GameLogic(this.ref) : super(GameStates()); - final StateNotifierProviderRef ref; - - // Generating Mines When First Click - bool firstClick = true; - int mineNum = -1; - - void initGame({required GameMode gameMode}) { - state.mode = gameMode; - state.gameOver = false; - state.goodGame = false; - state.board = Board(rows: state.mode.gameRows, columns: state.mode.gameColumns); - mineNum = state.mode.gameMines; - firstClick = true; - if (kDebugMode) { - logger.log(Level.info, "Game Init Finished"); - } - } - - // TODO: finish this - void fromSave(Board save) { - state.mode = GameMode.easy; - state.gameOver = false; - state.goodGame = false; - state.board = save; - mineNum = save.mines; - firstClick = true; - if (kDebugMode) { - logger.log(Level.info, "Game from save"); - } - } - - bool get gameOver => state.gameOver; - - void initScreen({required width, required, height, required mode}) { - state.screen = Screen(screenWidth: width, screenHeight: height, gameMode: mode); - } - - Cell getCell({required row, required col}) { - return state.board.getCell(row: row, col: col); - } - - void _changeCell({required Cell cell, required CellState state}) { - this.state.board.changeCell(row: cell.row, col: cell.col, state: state); - } - - void dig({required Cell cell}) { - if (firstClick) { - state.board.randomMines(number: mineNum, clickRow: cell.row, clickCol: cell.col); - firstClick = false; - } - if (cell.state == CellState.covered) { - _changeCell(cell: cell, state: CellState.blank); - // Check Game State - if (cell.mine) { - state.gameOver = true; - } else { - _digAroundIfSafe(cell: cell); - if (checkWin()) { - state.goodGame = true; - } - } - } else { - assert(false, "$cell"); - } - } - - void _digAroundIfSafe({required Cell cell}) { - if (cell.minesAround == 0) { - for (final neighbor in state.board.iterateAround(cell: cell)) { - if (neighbor.state == CellState.covered && neighbor.minesAround == 0) { - _changeCell(cell: neighbor, state: CellState.blank); - _digAroundIfSafe(cell: neighbor); - } else if (!neighbor.mine && neighbor.state == CellState.covered && neighbor.minesAround != 0) { - _changeCell(cell: neighbor, state: CellState.blank); - } - } - } - } - - bool digAroundBesidesFlagged({required Cell cell}) { - bool digAny = false; - if (state.board.countAroundByState(cell: cell, state: CellState.flag) >= cell.minesAround) { - for (final neighbor in state.board.iterateAround(cell: cell)) { - if (neighbor.state == CellState.covered) { - dig(cell: neighbor); - digAny = true; - } - } - } - return digAny; - } - - bool flagRestCovered({required Cell cell}) { - bool flagAny = false; - final coveredCount = state.board.countAroundByState(cell: cell, state: CellState.covered); - if (coveredCount == 0) return false; - final flagCount = state.board.countAroundByState(cell: cell, state: CellState.flag); - if (coveredCount + flagCount == cell.minesAround) { - for (final neighbor in state.board.iterateAround(cell: cell)) { - if (neighbor.state == CellState.covered) { - flag(cell: neighbor); - flagAny = true; - } - } - } - return flagAny; - } - - bool checkWin() { - var coveredCells = state.board.countAllByState(state: CellState.covered); - var flagCells = state.board.countAllByState(state: CellState.flag); - var mineCells = state.board.mines; - if (kDebugMode) { - logger.log( - Level.debug, - "mines: $mineCells, covers: $coveredCells, flags: $flagCells", - ); - } - if (coveredCells + flagCells == mineCells) { - return true; - } - return false; - } - - void toggleFlag({required Cell cell}) { - if (cell.state == CellState.flag) { - _changeCell(cell: cell, state: CellState.covered); - } else if (cell.state == CellState.covered) { - _changeCell(cell: cell, state: CellState.flag); - } else { - assert(false, "$cell"); - } - } - - void flag({required Cell cell}) { - if (cell.state == CellState.covered) { - _changeCell(cell: cell, state: CellState.flag); - } else { - assert(false, "$cell"); - } - } - - void removeFlag({required Cell cell}) { - if (cell.state == CellState.flag) { - _changeCell(cell: cell, state: CellState.covered); - } else { - assert(false, "$cell"); - } - } - - Future save() async { - if (state.goodGame || state.gameOver) { - await SaveMinesweeper.storage.delete(); - } else { - await SaveMinesweeper.storage.save(state.board.toSave()); - } - } -} - -class GameStates { - late bool gameOver; - late bool goodGame; - late GameMode mode; - late Screen screen; - late Board board; -} - -final boardManager = StateNotifierProvider((ref) { - if (kDebugMode) { - logger.log(Level.info, "GameLogic Init Finished"); - } - return GameLogic(ref); -}); diff --git a/lib/game/minesweeper/manager/timer.dart b/lib/game/minesweeper/manager/timer.dart deleted file mode 100644 index 0396cd01f..000000000 --- a/lib/game/minesweeper/manager/timer.dart +++ /dev/null @@ -1,43 +0,0 @@ -import 'dart:async'; - -class GameTimer { - final void Function() refresh; - Timer? _timer; - - bool get timerStart => _timer != null; - int cntNow = 0; - - GameTimer({required this.refresh}); - - void startTimer() { - _timer = Timer.periodic(const Duration(milliseconds: 1000), (timer) { - if (cntNow >= 0 && cntNow < 60 * 60 - 1) { - cntNow += 1; - } else { - cntNow = 0; - } - refresh(); - }); - } - - void stopTimer() { - _timer?.cancel(); - } - - bool checkValueTime({required int val}) { - return cntNow > val; - } - - int getTimerValue() { - return cntNow; - } - - String getTimeCost() { - int time = cntNow; - int minute = (time / 60).floor(); - int second = time % 60; - String min = minute < 10 ? '0$minute' : minute.toString(); - String sec = second < 10 ? '0$second' : second.toString(); - return ("$min:$sec"); - } -} diff --git a/lib/game/minesweeper/save.dart b/lib/game/minesweeper/save.dart deleted file mode 100644 index 13f0ef24e..000000000 --- a/lib/game/minesweeper/save.dart +++ /dev/null @@ -1,59 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/game/storage/storage.dart'; -import 'package:version/version.dart'; - -import 'entity/mode.dart'; -import 'entity/cell.dart'; - -part "save.g.dart"; - -List _defaultCells() { - return List.generate( - GameMode.defaultRows * GameMode.defaultColumns, - (index) => const Cell4Save(mine: false, state: CellState.covered), - ); -} - -@JsonSerializable() -class Cell4Save { - @JsonKey(defaultValue: false) - final bool mine; - @JsonKey(defaultValue: CellState.covered) - final CellState state; - - const Cell4Save({ - required this.mine, - required this.state, - }); - - Map toJson() => _$Cell4SaveToJson(this); - - factory Cell4Save.fromJson(Map json) => _$Cell4SaveFromJson(json); -} - -@JsonSerializable() -class SaveMinesweeper { - @JsonKey(defaultValue: GameMode.defaultRows) - final int rows; - @JsonKey(defaultValue: GameMode.defaultColumns) - final int columns; - @JsonKey(defaultValue: _defaultCells) - final List cells; - - const SaveMinesweeper({ - required this.rows, - required this.columns, - required this.cells, - }); - - Map toJson() => _$SaveMinesweeperToJson(this); - - factory SaveMinesweeper.fromJson(Map json) => _$SaveMinesweeperFromJson(json); - - static final storage = GameStorageBox( - name: "minesweeper", - version: Version(1, 0, 0), - serialize: (save) => save.toJson(), - deserialize: SaveMinesweeper.fromJson, - ); -} diff --git a/lib/game/minesweeper/save.g.dart b/lib/game/minesweeper/save.g.dart deleted file mode 100644 index 29133cd2e..000000000 --- a/lib/game/minesweeper/save.g.dart +++ /dev/null @@ -1,36 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'save.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -Cell4Save _$Cell4SaveFromJson(Map json) => Cell4Save( - mine: json['mine'] as bool? ?? false, - state: $enumDecodeNullable(_$CellStateEnumMap, json['state']) ?? CellState.covered, - ); - -Map _$Cell4SaveToJson(Cell4Save instance) => { - 'mine': instance.mine, - 'state': _$CellStateEnumMap[instance.state]!, - }; - -const _$CellStateEnumMap = { - CellState.covered: 0, - CellState.blank: 1, - CellState.flag: 2, -}; - -SaveMinesweeper _$SaveMinesweeperFromJson(Map json) => SaveMinesweeper( - rows: (json['rows'] as num?)?.toInt() ?? 15, - columns: (json['columns'] as num?)?.toInt() ?? 8, - cells: (json['cells'] as List?)?.map((e) => Cell4Save.fromJson(e as Map)).toList() ?? - _defaultCells(), - ); - -Map _$SaveMinesweeperToJson(SaveMinesweeper instance) => { - 'rows': instance.rows, - 'columns': instance.columns, - 'cells': instance.cells, - }; diff --git a/lib/game/minesweeper/settings.dart b/lib/game/minesweeper/settings.dart deleted file mode 100644 index e438100ba..000000000 --- a/lib/game/minesweeper/settings.dart +++ /dev/null @@ -1,3 +0,0 @@ -class SettingsMinesweeper { - const SettingsMinesweeper(); -} diff --git a/lib/game/minesweeper/theme.dart b/lib/game/minesweeper/theme.dart deleted file mode 100644 index be4ffe380..000000000 --- a/lib/game/minesweeper/theme.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'package:flutter/material.dart'; - -// GameInfo Color -final gameOverColor = Colors.red[600]; -final gameOverTextColor = Colors.blue[900]; -final goodGameColor = Colors.green[600]; -final goodGameTextColor = Colors.yellow[800]; - -// Cell Color -const mineColor = Colors.red; -const flagColor = Colors.amber; - -// Blank Cell Number Color -const List numberColors = [ - Colors.green, - Colors.blue, - Colors.orange, - Colors.purple, - Colors.brown, - Colors.amber, - Colors.blueGrey, - Colors.red, -]; - -// Error Info Color -const errorColor = Colors.redAccent; diff --git a/lib/game/minesweeper/widget/board.dart b/lib/game/minesweeper/widget/board.dart deleted file mode 100644 index cd1faee5e..000000000 --- a/lib/game/minesweeper/widget/board.dart +++ /dev/null @@ -1,47 +0,0 @@ -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import '../manager/timer.dart'; -import '../manager/logic.dart'; -import 'cell.dart'; - -class GameBoard extends ConsumerWidget { - const GameBoard({super.key, required this.refresh, required this.timer}); - final void Function() refresh; - final GameTimer timer; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final screen = ref.read(boardManager).screen; - final boardRows = ref.read(boardManager).mode.gameRows; - final boardCols = ref.read(boardManager).mode.gameColumns; - final borderWidth = screen.getBorderWidth(); - final cellWidth = screen.getCellWidth(); - final boardRadius = screen.getBoardRadius(); - - return AnimatedContainer( - width: screen.getBoardSize().width, - height: screen.getBoardSize().height, - decoration: BoxDecoration( - border: Border.all( - color: context.colorScheme.onSurfaceVariant, - width: borderWidth, - ), - borderRadius: BorderRadius.all( - Radius.circular(boardRadius), - ), - ), - duration: Durations.extralong4, - child: Stack( - children: List.generate(boardRows * boardCols, (i) { - var col = i % boardCols; - var row = (i / boardCols).floor(); - return Positioned( - left: col * cellWidth, - top: row * cellWidth, - child: CellWidget(row: row, col: col, refresh: refresh), - ); - })), - ); - } -} diff --git a/lib/game/minesweeper/widget/cell.dart b/lib/game/minesweeper/widget/cell.dart deleted file mode 100644 index d2b46c6d3..000000000 --- a/lib/game/minesweeper/widget/cell.dart +++ /dev/null @@ -1,66 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter/material.dart'; -import "package:flutter/foundation.dart"; -import 'package:logger/logger.dart'; -import '../entity/cell.dart'; -import '../manager/logic.dart'; -import 'cell/button.dart'; -import 'cell/cover.dart'; -import 'cell/flag.dart'; -import 'cell/mine.dart'; -import 'cell/number.dart'; - -class CellWidget extends ConsumerWidget { - final int row; - final int col; - final void Function() refresh; - - const CellWidget({ - super.key, - required this.row, - required this.col, - required this.refresh, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final manager = ref.watch(boardManager.notifier); - final cell = manager.getCell(row: row, col: col); - var coverVisible = true; - var flagVisible = false; - - switch (cell.state) { - case CellState.blank: - coverVisible = false; - flagVisible = false; - case CellState.covered: - coverVisible = true; - flagVisible = false; - case CellState.flag: - coverVisible = true; - flagVisible = true; - default: - if (kDebugMode) { - logger.log(Level.error, "Wrong Cell State"); - } - } - - return Stack( - children: [ - if (cell.mine) const Mine() else MinesAroundNumber(cell: cell), - Opacity( - opacity: manager.gameOver && cell.mine ? 0.5 : 1.0, - child: CellCover(visible: coverVisible), - ), - CellFlag(visible: flagVisible), - CellButton( - cell: cell, - coverVisible: coverVisible, - flagVisible: flagVisible, - refresh: refresh, - ), - ], - ); - } -} diff --git a/lib/game/minesweeper/widget/cell/button.dart b/lib/game/minesweeper/widget/cell/button.dart deleted file mode 100644 index cffdbec21..000000000 --- a/lib/game/minesweeper/widget/cell/button.dart +++ /dev/null @@ -1,86 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/build_context.dart'; -import 'package:sit/game/utils.dart'; -import '../../entity/cell.dart'; -import '../../manager/logic.dart'; - -class CellButton extends ConsumerWidget { - const CellButton({ - super.key, - required this.cell, - required this.coverVisible, - required this.flagVisible, - required this.refresh, - }); - - final Cell cell; - final bool coverVisible; - final bool flagVisible; - final void Function() refresh; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final manager = ref.read(boardManager.notifier); - final screen = ref.read(boardManager).screen; - final cellWidth = screen.getCellWidth(); - return !(cell.state == CellState.blank && cell.minesAround == 0) - ? Container( - width: cellWidth, - height: cellWidth, - decoration: BoxDecoration( - border: Border.all( - width: 1.0, - color: context.colorScheme.surface, - ), - borderRadius: BorderRadius.all( - Radius.circular(screen.getBoardRadius()), - ), - ), - child: InkWell( - radius: screen.getBoardRadius(), - highlightColor: Colors.transparent, - splashColor: !coverVisible ? Colors.transparent : context.colorScheme.surfaceVariant, - onTap: !coverVisible - ? null - : () { - // Click a Cover Cell => Blank - if (!flagVisible) { - manager.dig(cell: cell); - applyGameHapticFeedback(); - } else { - // Click a Flag Cell => Cancel Flag (Covered) - manager.removeFlag(cell: cell); - } - refresh(); - }, - onDoubleTap: coverVisible - ? null - : () { - bool anyChanged = false; - anyChanged |= manager.digAroundBesidesFlagged(cell: cell); - anyChanged |= manager.flagRestCovered(cell: cell); - if (anyChanged) { - applyGameHapticFeedback(); - } - refresh(); - }, - onLongPress: !coverVisible - ? null - : () { - manager.toggleFlag(cell: cell); - applyGameHapticFeedback(); - refresh(); - }, - onSecondaryTap: !coverVisible - ? null - : () { - manager.toggleFlag(cell: cell); - applyGameHapticFeedback(); - refresh(); - }, - ), - ) - : const SizedBox.shrink(); - } -} diff --git a/lib/game/minesweeper/widget/cell/cover.dart b/lib/game/minesweeper/widget/cell/cover.dart deleted file mode 100644 index e5e656df2..000000000 --- a/lib/game/minesweeper/widget/cell/cover.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/rettulf.dart'; -import '../../manager/logic.dart'; - -class CellCover extends ConsumerWidget { - const CellCover({ - super.key, - required this.visible, - }); - - final duration = Durations.medium4; - final curve = Curves.ease; - final bool visible; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final screen = ref.read(boardManager).screen; - final cellWidth = screen.getCellWidth(); - return AnimatedOpacity( - opacity: visible ? 1 : 0, - curve: curve, - duration: duration, - child: Container( - width: cellWidth, - height: cellWidth, - decoration: BoxDecoration( - color: context.colorScheme.surfaceVariant, - border: Border.all( - width: 1, - color: context.colorScheme.surface, - ), - borderRadius: BorderRadius.all( - Radius.circular( - screen.getBoardRadius(), - ), - ), - ), - ), - ); - } -} diff --git a/lib/game/minesweeper/widget/cell/flag.dart b/lib/game/minesweeper/widget/cell/flag.dart deleted file mode 100644 index eed562da1..000000000 --- a/lib/game/minesweeper/widget/cell/flag.dart +++ /dev/null @@ -1,37 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import '../../theme.dart'; -import '../../manager/logic.dart'; - -class CellFlag extends ConsumerWidget { - const CellFlag({super.key, required this.visible}); - final duration = Durations.medium4; - final curve = Curves.ease; - final bool visible; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final screen = ref.read(boardManager).screen; - final double flagSize = screen.getCellWidth(); - return AnimatedPositioned( - left: 0, - top: visible ? 0 : -40, - duration: duration, - curve: curve, - child: AnimatedOpacity( - opacity: visible ? 1 : 0, - duration: duration, - curve: curve, - child: AnimatedScale( - scale: visible ? 1 : 0.2, - duration: duration, - curve: curve, - child: Icon( - Icons.flag, - size: flagSize, - color: flagColor, - ), - )), - ); - } -} diff --git a/lib/game/minesweeper/widget/cell/mine.dart b/lib/game/minesweeper/widget/cell/mine.dart deleted file mode 100644 index 26e18297a..000000000 --- a/lib/game/minesweeper/widget/cell/mine.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; - -import '../../manager/logic.dart'; -import '../../theme.dart'; - -class Mine extends ConsumerWidget { - const Mine({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final screen = ref.read(boardManager).screen; - final cellWidth = screen.getCellWidth(); - final mineSize = cellWidth * 0.7; - return SizedBox( - width: cellWidth, - height: cellWidth, - child: Icon( - Icons.gps_fixed, - size: mineSize, - color: mineColor, - )); - } -} diff --git a/lib/game/minesweeper/widget/cell/number.dart b/lib/game/minesweeper/widget/cell/number.dart deleted file mode 100644 index 224151e7e..000000000 --- a/lib/game/minesweeper/widget/cell/number.dart +++ /dev/null @@ -1,37 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; - -import '../../manager/logic.dart'; -import '../../entity/cell.dart'; -import '../../theme.dart'; - -class MinesAroundNumber extends ConsumerWidget { - final Cell cell; - - const MinesAroundNumber({ - super.key, - required this.cell, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final screen = ref.read(boardManager).screen; - final cellWidth = screen.getCellWidth(); - final numberSize = cellWidth * 0.7; - return SizedBox( - width: cellWidth, - height: cellWidth, - child: cell.minesAround != 0 - ? Text( - cell.minesAround.toString(), - textAlign: TextAlign.center, - style: TextStyle( - color: numberColors[cell.minesAround - 1], - fontWeight: FontWeight.w900, - fontSize: numberSize, - ), - ) - : null, - ); - } -} diff --git a/lib/game/minesweeper/widget/info.dart b/lib/game/minesweeper/widget/info.dart deleted file mode 100644 index 61bda3b78..000000000 --- a/lib/game/minesweeper/widget/info.dart +++ /dev/null @@ -1,84 +0,0 @@ -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter/material.dart'; -import '../manager/logic.dart'; -import '../manager/timer.dart'; -import '../theme.dart'; -import '../i18n.dart'; - -class GameOverModal extends ConsumerWidget { - const GameOverModal({ - super.key, - required this.resetGame, - required this.timer, - }); - - final void Function() resetGame; - final GameTimer timer; - final double opacityValue = 0.5; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final screen = ref.read(boardManager).screen; - final borderWidth = screen.getBorderWidth(); - final textSize = screen.getCellWidth(); - // Lost Game - if (ref.read(boardManager).gameOver) { - timer.stopTimer(); - return Opacity( - opacity: opacityValue, - child: Container( - width: screen.getBoardSize().width, - height: screen.getBoardSize().height, - decoration: BoxDecoration( - color: gameOverColor, - borderRadius: BorderRadius.all( - Radius.circular(borderWidth), - )), - child: MaterialButton( - onPressed: () { - resetGame(); - }, - child: Text( - i18n.gameOver, - style: TextStyle( - color: gameOverTextColor, - fontSize: textSize, - ), - ), - ), - ), - ); - } - // Win Game - else if (ref.read(boardManager).goodGame) { - // The Cost Time Should Be Counted Before Timer Stop - String costTime = timer.getTimeCost(); - timer.stopTimer(); - return Opacity( - opacity: opacityValue, - child: Container( - width: screen.getBoardSize().width, - height: screen.getBoardSize().height, - decoration: BoxDecoration( - color: goodGameColor, - borderRadius: BorderRadius.all( - Radius.circular(borderWidth), - )), - child: MaterialButton( - onPressed: () { - resetGame(); - }, - child: Text( - "${i18n.youWin}\n${i18n.timeSpent(costTime)}", - style: TextStyle(color: goodGameTextColor, fontSize: textSize), - ), - ), - ), - ); - } - // Other - else { - return const SizedBox.shrink(); - } - } -} diff --git a/lib/game/page/settings.dart b/lib/game/page/settings.dart deleted file mode 100644 index e62e4fd1c..000000000 --- a/lib/game/page/settings.dart +++ /dev/null @@ -1,58 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; -import '../i18n.dart'; - -class GameSettingsPage extends ConsumerStatefulWidget { - const GameSettingsPage({ - super.key, - }); - - @override - ConsumerState createState() => _SchoolSettingsPageState(); -} - -class _SchoolSettingsPageState extends ConsumerState { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.navigation.text(), - ), - SliverList.list( - children: const [ - HapticFeedbackTile(), - ], - ), - ], - ), - ); - } -} - -class HapticFeedbackTile extends ConsumerWidget { - const HapticFeedbackTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final on = ref.watch(Settings.game.$enableHapticFeedback) ?? true; - return ListTile( - title: i18n.settings.enableHapticFeedback.text(), - subtitle: i18n.settings.enableHapticFeedbackDesc.text(), - leading: const Icon(Icons.vibration), - trailing: Switch.adaptive( - value: on, - onChanged: (newV) { - ref.read(Settings.game.$enableHapticFeedback.notifier).set(newV); - }, - ), - ); - } -} diff --git a/lib/game/record/record.dart b/lib/game/record/record.dart deleted file mode 100644 index 7a1ea547a..000000000 --- a/lib/game/record/record.dart +++ /dev/null @@ -1,10 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; - -class GameRecord { - @JsonKey() - final DateTime ts; - - const GameRecord({ - required this.ts, - }); -} diff --git a/lib/game/settings.dart b/lib/game/settings.dart deleted file mode 100644 index 6d20992d6..000000000 --- a/lib/game/settings.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; - -class _K { - static const ns = "/game"; - static const enableHapticFeedback = "$ns/enableHapticFeedback"; -} - -class GameSettings { - final Box box; - - GameSettings(this.box); - - late final k2048 = _2048(box); - - bool get enableHapticFeedback => box.safeGet(_K.enableHapticFeedback) ?? true; - - set enableHapticFeedback(bool newV) => box.safePut(_K.enableHapticFeedback, newV); - - late final $enableHapticFeedback = box.provider(_K.enableHapticFeedback); -} - -class _2048K { - static const ns = "${_K.ns}/2048"; -} - -class _2048 { - final Box box; - - const _2048(this.box); -} diff --git a/lib/game/storage/storage.dart b/lib/game/storage/storage.dart deleted file mode 100644 index 93bc2244e..000000000 --- a/lib/game/storage/storage.dart +++ /dev/null @@ -1,69 +0,0 @@ -import 'dart:async'; -import 'dart:convert'; - -import 'package:sit/utils/hive.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:version/version.dart'; - -class GameStorageBox { - Box get _box => HiveInit.game; - final String name; - final Version version; - final TSave Function(Map json) deserialize; - final Map Function(TSave save) serialize; - - GameStorageBox({ - required this.name, - required this.version, - required this.serialize, - required this.deserialize, - }); - - Future save(TSave save, {int slot = 0}) async { - final json = serialize(save); - final str = jsonEncode(json); - await _box.safePut("/$name/$version/$slot", str); - } - - Future delete({int slot = 0}) async { - await _box.delete("/$name/$version/$slot"); - } - - TSave? load({int slot = 0}) { - final str = _box.safeGet("/$name/$version/$slot"); - if (str == null) return null; - try { - final json = jsonDecode(str); - final save = deserialize(json); - return save; - } catch (e) { - return null; - } - } - - bool exists({int slot = 0}) { - return _box.containsKey("/$name/$version/$slot"); - } - - late final $saveOf = _box.providerFamily( - (slot) => "/$name/$version/$slot", - get: (slot) => load(slot: slot), - set: (slot, v) async { - if (v == null) { - await delete(slot: slot); - } else { - await save(v, slot: slot); - } - }, - ); - - late final $saveExistsOf = _box.existsChangeProviderFamily( - (slot) => "/$name/$version/$slot", - ); - - Listenable listen({int slot = 0}) { - return _box.listenable(keys: ["/$name/$version/$slot"]); - } -} diff --git a/lib/game/suika/domain/game_state.dart b/lib/game/suika/domain/game_state.dart deleted file mode 100644 index 2219d280a..000000000 --- a/lib/game/suika/domain/game_state.dart +++ /dev/null @@ -1,343 +0,0 @@ -import 'dart:async'; -import 'dart:math'; - -import 'package:flame/components.dart'; -import 'package:flame_forge2d/flame_forge2d.dart'; -import 'package:sit/game/utils.dart'; -import '../model/fruit.dart'; -import '../entity/fruit.dart'; -import '../entity/wall.dart'; -import '../model/wall.dart'; -import '../presenter/dialog_presenter.dart'; -import '../presenter/next_text_presenter.dart'; -import '../presenter/prediction_line_presenter.dart'; -import '../presenter/score_presenter.dart'; -import '../presenter/world_presenter.dart'; -import '../repository/game_repository.dart'; -import '../rule/next_size_fruit.dart'; -import '../rule/score_calculator.dart'; -import 'package:get_it/get_it.dart'; -import 'package:uuid/uuid.dart'; - -import '../ui/main_game.dart'; - -typedef ScreenCoordinateFunction = Vector2 Function(Vector2); -typedef ComponentFunction = FutureOr Function(Component); - -class GameState { - GameState({ - required this.worldToScreen, - required this.screenToWorld, - required this.camera, - required this.add, - }); - - final ScreenCoordinateFunction worldToScreen; - final ScreenCoordinateFunction screenToWorld; - final ComponentFunction add; - final CameraComponent camera; - - /// where to drop fruit - double? draggingPosition; - FruitEntity? draggingFruit; - FruitEntity? nextFruit; - - bool isDragEnd = false; - - int overGameOverLineCount = 0; - - bool isGameOver = false; - - GameRepository get _gameRepository => GetIt.I.get(); - - WorldPresenter get _worldPresenter => GetIt.I.get(); - - ScorePresenter get _scorePresenter => GetIt.I.get(); - - NextTextPresenter get _nextTextPresenter => GetIt.I.get(); - - PredictionLinePresenter get _predictLinePresenter => GetIt.I.get(); - - DialogPresenter get _dialogPresenter => GetIt.I.get(); - - void onLoad() { - // Add wall - _worldPresenter - ..add( - WallEntity( - wall: Wall( - pos: center + Vector2(screenSize.x, 0), - size: Vector2(1, screenSize.y), - ), - ), - ) - ..add( - WallEntity( - wall: Wall( - pos: center - Vector2(screenSize.x, 0), - size: Vector2(1, screenSize.y), - ), - ), - ) - ..add( - WallEntity( - wall: Wall( - pos: center + Vector2(0, screenSize.y), - size: Vector2(screenSize.x + 1, 1), - ), - ), - ); - _scorePresenter.position = worldToScreen( - center - Vector2(screenSize.x + 1, screenSize.y + 13), - ); - _nextTextPresenter.position = worldToScreen( - center - Vector2(-screenSize.x + 5, screenSize.y + 13), - ); - - final rect = camera.visibleWorldRect; - draggingPosition = (rect.left + rect.right) / 2; - draggingFruit = FruitEntity( - fruit: Fruit.$1( - id: const Uuid().v4(), - pos: Vector2( - draggingPosition!, - -screenSize.y + center.y - FruitType.$1.radius, - ), - ), - isStatic: true, - ); - _worldPresenter.add(draggingFruit!); - final newNextFruit = _getNextFruit(); - nextFruit = FruitEntity( - fruit: newNextFruit.copyWith( - pos: Vector2( - screenSize.x - 2, - -screenSize.y + center.y - 7, - ), - ), - overrideRadius: 2, - isStatic: true, - ); - _worldPresenter.add(nextFruit!); - } - - void onUpdate() { - if (isGameOver) { - return; - } - _countOverGameOverLine(); - if (overGameOverLineCount > 100) { - isGameOver = true; - final score = _scorePresenter.score; - _dialogPresenter.showGameOverDialog(score); - } - - if (isDragEnd) { - onDragEnd(); - isDragEnd = false; - } - _handleCollision(); - } - - void _handleCollision() { - final collidedFruits = _gameRepository.getCollidedFruits(); - if (collidedFruits.isEmpty) return; - - for (final collideFruit in collidedFruits) { - final fruit1 = collideFruit.fruit1.userData! as FruitEntity; - final fruit2 = collideFruit.fruit2.userData! as FruitEntity; - final newFruit = _getNextSizeFruit( - fruit1: fruit1, - fruit2: fruit2, - ); - _scorePresenter.addScore( - getScore( - newFruit, - ), - ); - - _worldPresenter - ..remove(fruit1) - ..remove(fruit2); - if (newFruit != null) { - _worldPresenter.add( - FruitEntity( - fruit: newFruit, - ), - ); - applyGameHapticFeedback(); - } - } - _gameRepository.clearCollidedFruits(); - } - - void onDragUpdate(int pointerId, Vector2 global) { - final pos = screenToWorld(global); - final draggingPositionX = _adjustDraggingPositionX(pos.x); - _onDraggingPositionChanged(draggingPositionX); - } - - void _onDraggingPositionChanged(double newX) { - draggingPosition = newX; - final rect = camera.visibleWorldRect; - // Update the predict line - _predictLinePresenter.updateLine( - worldToScreen(Vector2(newX, rect.top)), - worldToScreen(Vector2(newX, rect.bottom)), - ); - if (draggingFruit?.isMounted != null && draggingFruit!.isMounted) { - draggingFruit?.body.setTransform( - Vector2( - newX, - -screenSize.y + center.y - draggingFruit!.fruit.radius, - ), - 0, - ); - } - } - - Future onDragEnd() async { - if (draggingFruit == null) return; - _dropFruit(); - await Future.delayed(const Duration(seconds: 1)); - _createDraggingFruit(); - } - - Future onTap(double globalX) async { - if (draggingFruit == null) return; - final pos = screenToWorld(Vector2(globalX, 0)); - final x = _adjustDraggingPositionX(pos.x); - _onDraggingPositionChanged(x); - _dropFruit(); - await Future.delayed(const Duration(seconds: 1)); - _createDraggingFruit(); - } - - void _dropFruit() { - if (draggingFruit == null) return; - _worldPresenter.remove(draggingFruit!); - final fruit = draggingFruit!.fruit; - final draggingPositionX = _adjustDraggingPositionX(draggingPosition!); - final newFruit = fruit.copyWith( - pos: Vector2( - draggingPositionX, - -screenSize.y + center.y - fruit.radius, - ), - ); - _worldPresenter.add( - FruitEntity( - fruit: newFruit, - ), - ); - draggingFruit = null; - } - - void _createDraggingFruit() { - final draggingPositionX = _adjustDraggingPositionX(draggingPosition!); - draggingFruit = FruitEntity( - fruit: nextFruit!.fruit.copyWith( - pos: Vector2( - draggingPositionX, - -screenSize.y + center.y - nextFruit!.fruit.radius, - ), - ), - isStatic: true, - ); - _worldPresenter - ..remove(nextFruit!) - ..add(draggingFruit!); - final newNextFruit = _getNextFruit(); - nextFruit = FruitEntity( - fruit: newNextFruit.copyWith( - pos: Vector2( - screenSize.x - 2, - -screenSize.y + center.y - 7, - ), - ), - overrideRadius: 2, - isStatic: true, - ); - _worldPresenter.add(nextFruit!); - } - - void reset() { - _worldPresenter.clear(); - _gameRepository.clearCollidedFruits(); - _scorePresenter.reset(); - draggingPosition = null; - draggingFruit = null; - nextFruit = null; - isGameOver = false; - onLoad(); - } - - double _adjustDraggingPositionX(double x) { - final fruitRadius = draggingFruit?.fruit.radius ?? 1; - if (x < screenSize.x * -1 + fruitRadius + 1) { - return screenSize.x * -1 + fruitRadius + 1; - } - if (x > screenSize.x - fruitRadius - 1) { - return screenSize.x - fruitRadius - 1; - } - return x; - } - - void _countOverGameOverLine() { - final components = _worldPresenter.getComponents(); - final fruits = components.whereType(); - final dynamicFruits = fruits.where((fruit) => !fruit.isStatic); - final minY = dynamicFruits.fold( - 0, - (previousValue, element) => min(previousValue, element.body.position.y + center.y + 2.25), - ); - if (minY < 0) { - overGameOverLineCount++; - } else { - overGameOverLineCount = 0; - } - } - - void onCollidedSameSizeFruits({ - required Body bodyA, - required Body bodyB, - }) { - GetIt.I.get().addCollidedFruits( - CollidedFruits(bodyA, bodyB), - ); - } - - Fruit? _getNextSizeFruit({ - required FruitEntity fruit1, - required FruitEntity fruit2, - }) { - return getNextSizeFruit( - fruit1: fruit1.fruit.copyWith( - pos: fruit1.body.position, - ), - fruit2: fruit2.fruit.copyWith( - pos: fruit2.body.position, - ), - ); - } - - Fruit _getNextFruit() { - final id = const Uuid().v4(); - final pos = Vector2(0, 0); - final candidates = [ - FruitType.$1, - FruitType.$2, - FruitType.$3, - FruitType.$4, - FruitType.$5, - ]; - final random = Random(); - candidates.shuffle(random); - return Fruit( - id: id, - pos: pos, - radius: candidates[0].radius, - color: candidates[0].color, - image: candidates[0].image, - ); - } -} diff --git a/lib/game/suika/entity/fruit.dart b/lib/game/suika/entity/fruit.dart deleted file mode 100644 index 38a484e05..000000000 --- a/lib/game/suika/entity/fruit.dart +++ /dev/null @@ -1,66 +0,0 @@ -import 'dart:async'; - -import 'package:flame/components.dart'; -import 'package:flame/extensions.dart'; -import 'package:flame/palette.dart'; -import 'package:flame_forge2d/flame_forge2d.dart'; -import '../model/fruit.dart'; - -class FruitEntity extends BodyComponent { - FruitEntity({ - required this.fruit, - this.isStatic = false, - this.overrideRadius, - }) : super( - paint: BasicPalette.transparent.paint(), - ); - - final Fruit fruit; - final bool isStatic; - final double? overrideRadius; - - late final SpriteComponent _spriteComponent; - - @override - Future onLoad() async { - await super.onLoad(); - final sprite = await Sprite.load(fruit.image, images: game.images); - _spriteComponent = SpriteComponent( - sprite: sprite, - size: Vector2.all((overrideRadius ?? fruit.radius) * 2.00), - anchor: Anchor.center, - ); - add(_spriteComponent); - } - - @override - Body createBody() { - final shape = CircleShape()..radius = overrideRadius ?? fruit.radius; - - final fixtureDef = FixtureDef( - shape, - restitution: Fruit.restitution, - density: Fruit.density, - friction: Fruit.friction, - ); - - final bodyDef = BodyDef( - userData: this, - position: fruit.pos, - type: isStatic ? BodyType.static : BodyType.dynamic, - ); - - return world.createBody(bodyDef)..createFixture(fixtureDef); - } - - @override - void renderCircle(Canvas canvas, Offset center, double radius) { - super.renderCircle(canvas, center, radius); - - // canvas.drawLine( - // center, - // center + Offset(0, radius), - // BasicPalette.black.paint(), - // ); - } -} diff --git a/lib/game/suika/entity/game_over_line.dart b/lib/game/suika/entity/game_over_line.dart deleted file mode 100644 index aca203940..000000000 --- a/lib/game/suika/entity/game_over_line.dart +++ /dev/null @@ -1,20 +0,0 @@ -import 'package:flame/components.dart'; -import 'package:flame/extensions.dart'; -import 'package:flutter/material.dart'; - -class GameOverLine extends Component { - GameOverLine(this.startPosition, this.endPosition); - late final Vector2 startPosition; - late final Vector2 endPosition; - final double thickness = 5; - - @override - void render(Canvas canvas) { - final paint = Paint() - ..color = Colors.white.withOpacity(0.1) - ..strokeWidth = thickness - ..style = PaintingStyle.stroke; - - canvas.drawLine(startPosition.toOffset(), endPosition.toOffset(), paint); - } -} diff --git a/lib/game/suika/entity/prediction_line.dart b/lib/game/suika/entity/prediction_line.dart deleted file mode 100644 index 106ad4a9a..000000000 --- a/lib/game/suika/entity/prediction_line.dart +++ /dev/null @@ -1,25 +0,0 @@ -import 'package:flame/components.dart'; -import 'package:flame/extensions.dart'; -import 'package:flutter/material.dart'; - -class PredictionLineComponent extends Component { - Vector2? start; - Vector2? end; - - @override - void render(Canvas canvas) { - if (start != null && end != null) { - final paint = Paint() - ..color = Colors.white70 - ..strokeWidth = 2 - ..style = PaintingStyle.stroke; - - canvas.drawLine(start!.toOffset(), end!.toOffset(), paint); - } - } - - void updateLine(Vector2? newStart, Vector2? newEnd) { - start = newStart; - end = newEnd; - } -} diff --git a/lib/game/suika/entity/score.dart b/lib/game/suika/entity/score.dart deleted file mode 100644 index 663c23d90..000000000 --- a/lib/game/suika/entity/score.dart +++ /dev/null @@ -1,20 +0,0 @@ -import 'dart:async'; - -import 'package:flame/components.dart'; - -// スコアを表示するコンポーネント -class ScoreComponent extends TextComponent { - ScoreComponent() : super(text: 'Score: 0'); - - @override - Future onLoad() async { - super.onLoad(); - // スコア表示の位置を左上に設定 - position = Vector2(10, 15); - } - - // スコアを更新するメソッド - void updateScore(int newScore) { - text = 'Score: $newScore'; - } -} diff --git a/lib/game/suika/entity/wall.dart b/lib/game/suika/entity/wall.dart deleted file mode 100644 index 2891cdf1c..000000000 --- a/lib/game/suika/entity/wall.dart +++ /dev/null @@ -1,21 +0,0 @@ -import 'package:flame_forge2d/flame_forge2d.dart'; -import '../model/wall.dart'; - -class WallEntity extends BodyComponent { - WallEntity({ - required this.wall, - }) : super(paint: Wall.color.paint()); - - final Wall wall; - - @override - Body createBody() { - final shape = PolygonShape()..setAsBox(wall.size.x, wall.size.y, wall.pos, 0); - final fixtureDef = FixtureDef( - shape, - friction: Wall.friction, - ); - final bodyDef = BodyDef(userData: this); - return world.createBody(bodyDef)..createFixture(fixtureDef); - } -} diff --git a/lib/game/suika/index.dart b/lib/game/suika/index.dart deleted file mode 100644 index c01e4f7b7..000000000 --- a/lib/game/suika/index.dart +++ /dev/null @@ -1,27 +0,0 @@ -// Thanks to "https://github.com/welchi/flutter_suika_game" -import 'package:flame/game.dart'; -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'ui/main_game.dart'; - -class GameSuikaPage extends StatefulWidget { - const GameSuikaPage({super.key}); - - @override - State createState() => _SuikaGameState(); -} - -class _SuikaGameState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: "Suika Game".text(), - ), - body: GameWidget( - game: SuikaGame(), - ), - ); - } -} diff --git a/lib/game/suika/model/fruit.dart b/lib/game/suika/model/fruit.dart deleted file mode 100644 index aeffba32c..000000000 --- a/lib/game/suika/model/fruit.dart +++ /dev/null @@ -1,233 +0,0 @@ -import 'package:flame/game.dart'; -import 'package:flame/palette.dart'; -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'fruit.freezed.dart'; - -const _baseFruitRadius = 1.55; -const _factor = 1.25; - -enum FruitType { - $1(_baseFruitRadius, BasicPalette.red, 'fruit-1.png'), - $2(_baseFruitRadius * _factor, BasicPalette.pink, 'fruit-2.png'), - $3(_baseFruitRadius * _factor * _factor, BasicPalette.purple, 'fruit-3.png'), - $4( - _baseFruitRadius * _factor * _factor * _factor, - BasicPalette.orange, - 'fruit-4.png', - ), - $5( - _baseFruitRadius * _factor * _factor * _factor * _factor, - BasicPalette.lightOrange, - 'fruit-5.png', - ), - $6( - _baseFruitRadius * _factor * _factor * _factor * _factor * _factor, - BasicPalette.red, - 'fruit-6.png', - ), - $7( - _baseFruitRadius * _factor * _factor * _factor * _factor * _factor * _factor, - BasicPalette.lightGreen, - 'fruit-7.png', - ), - $8( - _baseFruitRadius * _factor * _factor * _factor * _factor * _factor * _factor * _factor, - BasicPalette.orange, - 'fruit-8.png', - ), - $9( - _baseFruitRadius * _factor * _factor * _factor * _factor * _factor * _factor * _factor * _factor, - BasicPalette.yellow, - 'fruit-9.png', - ), - $10( - _baseFruitRadius * _factor * _factor * _factor * _factor * _factor * _factor * _factor * _factor * _factor, - BasicPalette.green, - 'fruit-10.png', - ), - $11( - _baseFruitRadius * - _factor * - _factor * - _factor * - _factor * - _factor * - _factor * - _factor * - _factor * - _factor * - _factor, - BasicPalette.darkGreen, - 'fruit-11.png', - ); - - const FruitType( - this.radius, - this.color, - this.image, - ); - - final double radius; - final PaletteEntry color; - final String image; -} - -@freezed -class Fruit with _$Fruit { - static const double friction = 0.5; - static const double density = 5; - static const double restitution = 0.1; - - factory Fruit({ - required String id, - required Vector2 pos, - required double radius, - required PaletteEntry color, - required String image, - }) = _Fruit; - Fruit._(); - - factory Fruit.$1({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$1.radius, - color: FruitType.$1.color, - image: FruitType.$1.image, - ); - } - - factory Fruit.$2({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$2.radius, - color: FruitType.$2.color, - image: FruitType.$2.image, - ); - } - - factory Fruit.$3({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$3.radius, - color: FruitType.$3.color, - image: FruitType.$3.image, - ); - } - - factory Fruit.$4({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$4.radius, - color: FruitType.$4.color, - image: FruitType.$4.image, - ); - } - - factory Fruit.$5({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$5.radius, - color: FruitType.$5.color, - image: FruitType.$5.image, - ); - } - - factory Fruit.$6({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$6.radius, - color: FruitType.$6.color, - image: FruitType.$6.image, - ); - } - - factory Fruit.$7({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$7.radius, - color: FruitType.$7.color, - image: FruitType.$7.image, - ); - } - - factory Fruit.$8({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$8.radius, - color: FruitType.$8.color, - image: FruitType.$8.image, - ); - } - - factory Fruit.$9({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$9.radius, - color: FruitType.$9.color, - image: FruitType.$9.image, - ); - } - - factory Fruit.$10({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$10.radius, - color: FruitType.$10.color, - image: FruitType.$10.image, - ); - } - - factory Fruit.$11({ - required String id, - required Vector2 pos, - }) { - return Fruit( - id: id, - pos: pos, - radius: FruitType.$11.radius, - color: FruitType.$11.color, - image: FruitType.$11.image, - ); - } -} diff --git a/lib/game/suika/model/fruit.freezed.dart b/lib/game/suika/model/fruit.freezed.dart deleted file mode 100644 index 9bb58e8ae..000000000 --- a/lib/game/suika/model/fruit.freezed.dart +++ /dev/null @@ -1,191 +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 'fruit.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#adding-getters-and-methods-to-our-models'); - -/// @nodoc -mixin _$Fruit { - String get id => throw _privateConstructorUsedError; - Vector2 get pos => throw _privateConstructorUsedError; - double get radius => throw _privateConstructorUsedError; - PaletteEntry get color => throw _privateConstructorUsedError; - String get image => throw _privateConstructorUsedError; - - @JsonKey(ignore: true) - $FruitCopyWith get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $FruitCopyWith<$Res> { - factory $FruitCopyWith(Fruit value, $Res Function(Fruit) then) = _$FruitCopyWithImpl<$Res, Fruit>; - @useResult - $Res call({String id, Vector2 pos, double radius, PaletteEntry color, String image}); -} - -/// @nodoc -class _$FruitCopyWithImpl<$Res, $Val extends Fruit> implements $FruitCopyWith<$Res> { - _$FruitCopyWithImpl(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 = null, - Object? pos = null, - Object? radius = null, - Object? color = null, - Object? image = null, - }) { - return _then(_value.copyWith( - id: null == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as String, - pos: null == pos - ? _value.pos - : pos // ignore: cast_nullable_to_non_nullable - as Vector2, - radius: null == radius - ? _value.radius - : radius // ignore: cast_nullable_to_non_nullable - as double, - color: null == color - ? _value.color - : color // ignore: cast_nullable_to_non_nullable - as PaletteEntry, - image: null == image - ? _value.image - : image // ignore: cast_nullable_to_non_nullable - as String, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$FruitImplCopyWith<$Res> implements $FruitCopyWith<$Res> { - factory _$$FruitImplCopyWith(_$FruitImpl value, $Res Function(_$FruitImpl) then) = __$$FruitImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({String id, Vector2 pos, double radius, PaletteEntry color, String image}); -} - -/// @nodoc -class __$$FruitImplCopyWithImpl<$Res> extends _$FruitCopyWithImpl<$Res, _$FruitImpl> - implements _$$FruitImplCopyWith<$Res> { - __$$FruitImplCopyWithImpl(_$FruitImpl _value, $Res Function(_$FruitImpl) _then) : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? id = null, - Object? pos = null, - Object? radius = null, - Object? color = null, - Object? image = null, - }) { - return _then(_$FruitImpl( - id: null == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as String, - pos: null == pos - ? _value.pos - : pos // ignore: cast_nullable_to_non_nullable - as Vector2, - radius: null == radius - ? _value.radius - : radius // ignore: cast_nullable_to_non_nullable - as double, - color: null == color - ? _value.color - : color // ignore: cast_nullable_to_non_nullable - as PaletteEntry, - image: null == image - ? _value.image - : image // ignore: cast_nullable_to_non_nullable - as String, - )); - } -} - -/// @nodoc - -class _$FruitImpl extends _Fruit { - _$FruitImpl({required this.id, required this.pos, required this.radius, required this.color, required this.image}) - : super._(); - - @override - final String id; - @override - final Vector2 pos; - @override - final double radius; - @override - final PaletteEntry color; - @override - final String image; - - @override - String toString() { - return 'Fruit(id: $id, pos: $pos, radius: $radius, color: $color, image: $image)'; - } - - @override - bool operator ==(Object other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FruitImpl && - (identical(other.id, id) || other.id == id) && - (identical(other.pos, pos) || other.pos == pos) && - (identical(other.radius, radius) || other.radius == radius) && - (identical(other.color, color) || other.color == color) && - (identical(other.image, image) || other.image == image)); - } - - @override - int get hashCode => Object.hash(runtimeType, id, pos, radius, color, image); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FruitImplCopyWith<_$FruitImpl> get copyWith => __$$FruitImplCopyWithImpl<_$FruitImpl>(this, _$identity); -} - -abstract class _Fruit extends Fruit { - factory _Fruit( - {required final String id, - required final Vector2 pos, - required final double radius, - required final PaletteEntry color, - required final String image}) = _$FruitImpl; - _Fruit._() : super._(); - - @override - String get id; - @override - Vector2 get pos; - @override - double get radius; - @override - PaletteEntry get color; - @override - String get image; - @override - @JsonKey(ignore: true) - _$$FruitImplCopyWith<_$FruitImpl> get copyWith => throw _privateConstructorUsedError; -} diff --git a/lib/game/suika/model/wall.dart b/lib/game/suika/model/wall.dart deleted file mode 100644 index 208161297..000000000 --- a/lib/game/suika/model/wall.dart +++ /dev/null @@ -1,15 +0,0 @@ -import 'package:flame/game.dart'; -import 'package:flame/palette.dart'; -import 'package:flutter/foundation.dart'; - -@immutable -class Wall { - static const double friction = 0.8; - static const PaletteEntry color = BasicPalette.orange; - const Wall({ - required this.pos, - required this.size, - }); - final Vector2 pos; - final Vector2 size; -} diff --git a/lib/game/suika/presenter/dialog_presenter.dart b/lib/game/suika/presenter/dialog_presenter.dart deleted file mode 100644 index 8d4963942..000000000 --- a/lib/game/suika/presenter/dialog_presenter.dart +++ /dev/null @@ -1,28 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/lifecycle.dart'; -import '../domain/game_state.dart'; -import 'package:get_it/get_it.dart'; - -class DialogPresenter { - Future showGameOverDialog(int score) async { - return showDialog( - context: $key.currentContext!, - barrierDismissible: false, - builder: (context) { - return AlertDialog( - title: const Text('Game Over'), - content: Text('Score: $score'), - actions: [ - TextButton( - onPressed: () { - Navigator.of(context).pop(); - GetIt.I.get().reset(); - }, - child: const Text('Retry'), - ), - ], - ); - }, - ); - } -} diff --git a/lib/game/suika/presenter/game_over_panel_presenter.dart b/lib/game/suika/presenter/game_over_panel_presenter.dart deleted file mode 100644 index 9a5cff0f9..000000000 --- a/lib/game/suika/presenter/game_over_panel_presenter.dart +++ /dev/null @@ -1,70 +0,0 @@ -import 'package:flame/components.dart'; -import 'package:flame/events.dart'; -import 'package:flame/extensions.dart'; -import 'package:flutter/material.dart'; -import '../domain/game_state.dart'; -import '../presenter/world_presenter.dart'; -import 'package:get_it/get_it.dart'; - -class GameOverPanel extends PositionComponent with TapCallbacks { - GameOverPanel() - : _textPaint = TextPaint( - style: const TextStyle( - color: Colors.white, - fontSize: 4, - ), - ), - _buttonPaint = Paint()..color = Colors.blue { - size = Vector2(30, 20); - anchor = Anchor.center; - position = Vector2(0, 0); - } - final TextPaint _textPaint; - late Rect _retryButtonRect; - final Paint _buttonPaint; - - @override - void render(Canvas canvas) { - super.render(canvas); - _drawBackground(canvas); - _drawGameOverText(canvas); - _drawRetryButton(canvas); - } - - void _drawBackground(Canvas canvas) { - final rect = size.toRect(); - canvas.drawRect(rect, Paint()..color = Colors.grey.withOpacity(0.85)); - } - - void _drawGameOverText(Canvas canvas) { - _textPaint.render(canvas, 'Game Over', Vector2(5, 4)); - } - - void _drawRetryButton(Canvas canvas) { - _retryButtonRect = Rect.fromCenter( - center: Offset(size.x / 2, size.y - 5), - width: 20, - height: 5, - ); - canvas.drawRect(_retryButtonRect, _buttonPaint); - _textPaint.render(canvas, 'Retry', Vector2(size.x / 2 - 5, size.y - 7.5)); - } - - @override - bool containsPoint(Vector2 point) { - return _retryButtonRect.contains(point.toOffset()); - } - - @override - void onTapDown(TapDownEvent event) { - super.onTapDown(event); - GetIt.I.get().reset(); - } -} - -class GameOverPanelPresenter { - WorldPresenter get _worldPresenter => GetIt.I.get(); - void show() { - _worldPresenter.add(GameOverPanel()); - } -} diff --git a/lib/game/suika/presenter/next_text_presenter.dart b/lib/game/suika/presenter/next_text_presenter.dart deleted file mode 100644 index ec2a37125..000000000 --- a/lib/game/suika/presenter/next_text_presenter.dart +++ /dev/null @@ -1,12 +0,0 @@ -import 'package:flame/game.dart'; -import '../ui/main_game.dart'; - -class NextTextPresenter { - NextTextPresenter(this._nextTextComponent); - final NextTextComponent _nextTextComponent; - set position(Vector2 position) { - _nextTextComponent.position = position; - } - - Vector2 get position => _nextTextComponent.position; -} diff --git a/lib/game/suika/presenter/prediction_line_presenter.dart b/lib/game/suika/presenter/prediction_line_presenter.dart deleted file mode 100644 index d2d70aebb..000000000 --- a/lib/game/suika/presenter/prediction_line_presenter.dart +++ /dev/null @@ -1,12 +0,0 @@ -import 'package:flame/game.dart'; -import '../entity/prediction_line.dart'; - -class PredictionLinePresenter { - PredictionLinePresenter(this._predictionLineComponent); - final PredictionLineComponent _predictionLineComponent; - - /// Update the prediction line. - void updateLine(Vector2? newStart, Vector2? newEnd) { - _predictionLineComponent.updateLine(newStart, newEnd); - } -} diff --git a/lib/game/suika/presenter/score_presenter.dart b/lib/game/suika/presenter/score_presenter.dart deleted file mode 100644 index f5d1c69ac..000000000 --- a/lib/game/suika/presenter/score_presenter.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'package:flame/game.dart'; -import '../entity/score.dart'; - -class ScorePresenter { - ScorePresenter(this._scoreComponent); - int _score = 0; - final ScoreComponent _scoreComponent; - - void addScore(int score) { - _score += score; - _scoreComponent.updateScore(_score); - } - - set position(Vector2 position) { - _scoreComponent.position = position; - } - - int get score => _score; - - void reset() { - _score = 0; - _scoreComponent.updateScore(_score); - } - - Vector2 get position => _scoreComponent.position; -} diff --git a/lib/game/suika/presenter/world_presenter.dart b/lib/game/suika/presenter/world_presenter.dart deleted file mode 100644 index 5745fbcee..000000000 --- a/lib/game/suika/presenter/world_presenter.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:flame/components.dart'; - -class WorldPresenter { - WorldPresenter(this.world); - final World world; - - void add(Component component) { - world.add(component); - } - - void remove(Component component) { - world.remove(component); - } - - void update(double dt) { - world.update(dt); - } - - List getComponents() { - return world.children.toList(); - } - - void clear() { - final components = getComponents(); - world.removeAll(components); - } -} diff --git a/lib/game/suika/repository/game_repository.dart b/lib/game/suika/repository/game_repository.dart deleted file mode 100644 index b36040fab..000000000 --- a/lib/game/suika/repository/game_repository.dart +++ /dev/null @@ -1,46 +0,0 @@ -import 'package:flame_forge2d/flame_forge2d.dart'; -import 'package:flutter/foundation.dart'; -import '../entity/fruit.dart'; - -class GameRepository { - final List _collidedFruits = []; - - List getCollidedFruits() { - return _collidedFruits; - } - - void addCollidedFruits(CollidedFruits collidedFruits) { - if (collidedFruits.fruit1.userData is! FruitEntity || collidedFruits.fruit2.userData is! FruitEntity) { - return; - } - final newFruit1 = collidedFruits.fruit1.userData! as FruitEntity; - final newFruit2 = collidedFruits.fruit2.userData! as FruitEntity; - if (_collidedFruits.any((element) { - final fruit1 = element.fruit1.userData! as FruitEntity; - final fruit2 = element.fruit2.userData! as FruitEntity; - return fruit1.fruit.id == newFruit1.fruit.id || - fruit1.fruit.id == newFruit2.fruit.id || - fruit2.fruit.id == newFruit1.fruit.id || - fruit2.fruit.id == newFruit2.fruit.id; - })) { - return; - } - - _collidedFruits.add(collidedFruits); - } - - void removeCollidedFruits(CollidedFruits collidedFruits) { - _collidedFruits.remove(collidedFruits); - } - - void clearCollidedFruits() { - _collidedFruits.clear(); - } -} - -@immutable -class CollidedFruits { - const CollidedFruits(this.fruit1, this.fruit2); - final Body fruit1; - final Body fruit2; -} diff --git a/lib/game/suika/rule/next_size_fruit.dart b/lib/game/suika/rule/next_size_fruit.dart deleted file mode 100644 index d7553cea8..000000000 --- a/lib/game/suika/rule/next_size_fruit.dart +++ /dev/null @@ -1,42 +0,0 @@ -import '../model/fruit.dart'; -import 'package:uuid/uuid.dart'; - -Fruit? getNextSizeFruit({ - required Fruit fruit1, - required Fruit fruit2, -}) { - final id = const Uuid().v4(); - final pos = (fruit1.pos + fruit2.pos) / 2; - final radius = fruit1.radius; - if (radius == FruitType.$1.radius) { - return Fruit.$2(id: id, pos: pos); - } - if (radius == FruitType.$2.radius) { - return Fruit.$3(id: id, pos: pos); - } - if (radius == FruitType.$3.radius) { - return Fruit.$4(id: id, pos: pos); - } - if (radius == FruitType.$4.radius) { - return Fruit.$5(id: id, pos: pos); - } - if (radius == FruitType.$5.radius) { - return Fruit.$6(id: id, pos: pos); - } - if (radius == FruitType.$6.radius) { - return Fruit.$7(id: id, pos: pos); - } - if (radius == FruitType.$7.radius) { - return Fruit.$8(id: id, pos: pos); - } - if (radius == FruitType.$8.radius) { - return Fruit.$9(id: id, pos: pos); - } - if (radius == FruitType.$9.radius) { - return Fruit.$10(id: id, pos: pos); - } - if (radius == FruitType.$10.radius) { - return Fruit.$11(id: id, pos: pos); - } - return null; -} diff --git a/lib/game/suika/rule/score_calculator.dart b/lib/game/suika/rule/score_calculator.dart deleted file mode 100644 index 005a1a5e4..000000000 --- a/lib/game/suika/rule/score_calculator.dart +++ /dev/null @@ -1,41 +0,0 @@ -import '../model/fruit.dart'; - -int getScore(Fruit? fruit) { - if (fruit == null) { - return 66; - } - if (fruit.radius == FruitType.$1.radius) { - return 0; - } - if (fruit.radius == FruitType.$2.radius) { - return 1; - } - if (fruit.radius == FruitType.$3.radius) { - return 3; - } - if (fruit.radius == FruitType.$4.radius) { - return 6; - } - if (fruit.radius == FruitType.$5.radius) { - return 10; - } - if (fruit.radius == FruitType.$6.radius) { - return 15; - } - if (fruit.radius == FruitType.$7.radius) { - return 21; - } - if (fruit.radius == FruitType.$8.radius) { - return 28; - } - if (fruit.radius == FruitType.$9.radius) { - return 36; - } - if (fruit.radius == FruitType.$10.radius) { - return 45; - } - if (fruit.radius == FruitType.$11.radius) { - return 55; - } - return 66; -} diff --git a/lib/game/suika/ui/main_game.dart b/lib/game/suika/ui/main_game.dart deleted file mode 100644 index c8a275eb4..000000000 --- a/lib/game/suika/ui/main_game.dart +++ /dev/null @@ -1,152 +0,0 @@ -import 'dart:async'; - -import 'package:flame/cache.dart'; -import 'package:flame/components.dart'; -import 'package:flame/events.dart'; -import 'package:flame/extensions.dart'; -import 'package:flame/palette.dart'; -import 'package:flame_forge2d/flame_forge2d.dart'; -import '../domain/game_state.dart'; -import '../entity/game_over_line.dart'; -import '../entity/fruit.dart'; -import '../entity/prediction_line.dart'; -import '../entity/score.dart'; -import '../presenter/dialog_presenter.dart'; -import '../presenter/game_over_panel_presenter.dart'; -import '../presenter/next_text_presenter.dart'; -import '../presenter/prediction_line_presenter.dart'; -import '../presenter/score_presenter.dart'; -import '../presenter/world_presenter.dart'; -import '../repository/game_repository.dart'; -import 'package:get_it/get_it.dart'; - -class NextTextComponent extends TextComponent with HasGameRef { - NextTextComponent() : super(text: 'Next'); - - @override - Future onLoad() async { - super.onLoad(); - position = Vector2(10, 15); - } -} - -final screenSize = Vector2(18, 28); -final center = Vector2(0, 9); - -class SuikaGame extends Forge2DGame with TapCallbacks, MultiTouchDragDetector { - SuikaGame() : super(gravity: Vector2(0, 100.0)) { - assets = AssetsCache(prefix: "assets/game/suika/"); - images = Images(prefix: "assets/game/suika/"); - } - - @override - Color backgroundColor() { - return const PaletteEntry(Color(0xFFE4CE9D)).color; - } - - GameState get _gameState => GetIt.I.get(); - - @override - void update(double dt) { - super.update(dt); - _gameState.onUpdate(); - } - - @override - Future onLoad() async { - super.onLoad(); - await GetIt.I.reset(); - final predictionLineComponent = PredictionLineComponent(); - final scoreComponent = ScoreComponent(); - final nextTextComponent = NextTextComponent(); - - final gameOverLine = GameOverLine( - worldToScreen(center - Vector2(screenSize.x + 1, screenSize.y)), - worldToScreen(center - Vector2(-screenSize.x - 1, screenSize.y)), - ); - add(predictionLineComponent); - add(scoreComponent); - add(nextTextComponent); - add(gameOverLine); - - GetIt.I.registerSingleton( - GameRepository(), - ); - GetIt.I.registerSingleton( - GameState( - worldToScreen: worldToScreen, - screenToWorld: screenToWorld, - camera: camera, - add: add, - ), - ); - GetIt.I.registerSingleton( - WorldPresenter(world), - ); - GetIt.I.registerSingleton( - PredictionLinePresenter(predictionLineComponent), - ); - GetIt.I.registerSingleton( - ScorePresenter(scoreComponent), - ); - - GetIt.I.registerSingleton( - NextTextPresenter(nextTextComponent), - ); - GetIt.I.registerSingleton( - GameOverPanelPresenter(), - ); - GetIt.I.registerSingleton( - DialogPresenter(), - ); - - _gameState.onLoad(); - - world.physicsWorld.setContactListener( - FruitsContactListener(), - ); - } - - @override - void onDragUpdate(int pointerId, DragUpdateInfo info) { - super.onDragUpdate(pointerId, info); - _gameState.onDragUpdate(pointerId, info.eventPosition.global); - } - - @override - void onDragEnd(int pointerId, DragEndInfo info) { - super.onDragEnd(pointerId, info); - _gameState.isDragEnd = true; - } - - @override - void onTapUp(TapUpEvent event) { - super.onTapUp(event); - _gameState.onTap(event.localPosition.x); - } -} - -class FruitsContactListener extends ContactListener { - FruitsContactListener(); - - @override - void beginContact(Contact contact) { - final bodyA = contact.fixtureA.body; - final bodyB = contact.fixtureB.body; - final userDataA = bodyA.userData; - final userDataB = bodyB.userData; - - if (userDataA is FruitEntity && userDataB is FruitEntity) { - if (userDataA.isStatic || userDataB.isStatic) { - return; - } - // When balls of the same size collide - if (userDataA.fruit.radius == userDataB.fruit.radius) { - GetIt.I.get().onCollidedSameSizeFruits( - bodyA: bodyA, - bodyB: bodyB, - ); - } - } - } -} diff --git a/lib/game/utils.dart b/lib/game/utils.dart deleted file mode 100644 index c77cda9e8..000000000 --- a/lib/game/utils.dart +++ /dev/null @@ -1,8 +0,0 @@ -import 'package:flutter/services.dart'; -import 'package:sit/settings/settings.dart'; - -Future applyGameHapticFeedback() async { - if (Settings.game.enableHapticFeedback) { - await HapticFeedback.lightImpact(); - } -} diff --git a/lib/game/widget/card.dart b/lib/game/widget/card.dart deleted file mode 100644 index 76b3afaff..000000000 --- a/lib/game/widget/card.dart +++ /dev/null @@ -1,82 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/app.dart'; - -import '../storage/storage.dart'; -import '../i18n.dart'; - -class OfflineGameAppCard extends ConsumerStatefulWidget { - final String name; - final String baseRoute; - final bool supportHistory; - final bool supportLeaderboard; - final GameStorageBox? storage; - - const OfflineGameAppCard({ - super.key, - required this.baseRoute, - required this.name, - this.supportHistory = false, - this.supportLeaderboard = false, - this.storage, - }); - - @override - ConsumerState createState() => _OfflineGameAppCardState(); -} - -class _OfflineGameAppCardState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = widget.storage; - var hasSave = false; - if (storage != null) { - hasSave |= ref.watch(storage.$saveExistsOf(0)); - } - return AppCard( - title: widget.name.text(), - leftActions: [ - if (hasSave != true) - FilledButton( - onPressed: () { - context.push("/game${widget.baseRoute}"); - }, - child: i18n.newGame.text(), - ) - else ...[ - FilledButton( - onPressed: () { - context.push("/game${widget.baseRoute}?continue"); - }, - child: i18n.continueGame.text(), - ), - OutlinedButton( - onPressed: () { - context.push("/game${widget.baseRoute}"); - }, - child: i18n.newGame.text(), - ) - ], - ], - rightActions: [ - if (widget.supportHistory) - PlatformIconButton( - onPressed: () { - context.push("/game${widget.baseRoute}/history"); - }, - icon: const Icon(Icons.history), - ), - if (widget.supportLeaderboard) - PlatformIconButton( - onPressed: () { - context.push("/game${widget.baseRoute}/leaderboard"); - }, - icon: const Icon(Icons.leaderboard), - ), - ], - ); - } -} diff --git a/lib/index.dart b/lib/index.dart deleted file mode 100644 index 80c0c8ab4..000000000 --- a/lib/index.dart +++ /dev/null @@ -1,173 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/timetable/i18n.dart' as $timetable; -import 'package:sit/school/i18n.dart' as $school; -import 'package:sit/life/i18n.dart' as $life; -import 'package:sit/game/i18n.dart' as $game; -import 'package:sit/me/i18n.dart' as $me; -import 'package:rettulf/rettulf.dart'; - -class MainStagePage extends StatefulWidget { - final StatefulNavigationShell navigationShell; - - const MainStagePage({super.key, required this.navigationShell}); - - @override - State createState() => _MainStagePageState(); -} - -typedef _NavigationDest = ({Widget icon, Widget activeIcon, String label}); - -extension _NavigationDestX on _NavigationDest { - NavigationDestination toBarItem() { - return NavigationDestination( - icon: icon, - selectedIcon: activeIcon, - label: label, - ); - } - - NavigationRailDestination toRailDest() { - return NavigationRailDestination( - icon: icon, - selectedIcon: activeIcon, - label: label.text(), - ); - } -} - -class _MainStagePageState extends State { - var currentStage = 0; - late var items = [ - ( - route: "/timetable", - item: ( - icon: const Icon(Icons.calendar_month_outlined), - activeIcon: const Icon(Icons.calendar_month), - label: $timetable.i18n.navigation, - ) - ), - if (!kIsWeb) - ( - route: "/school", - item: ( - icon: const Icon(Icons.school_outlined), - activeIcon: const Icon(Icons.school), - label: $school.i18n.navigation, - ) - ), - if (!kIsWeb) - ( - route: "/life", - item: ( - icon: const Icon(Icons.spa_outlined), - activeIcon: const Icon(Icons.spa), - label: $life.i18n.navigation, - ) - ), - // ( - // route: "/game", - // item: ( - // icon: const Icon(Icons.videogame_asset_outlined), - // activeIcon: const Icon(Icons.videogame_asset), - // label: $game.i18n.navigation, - // ) - // ), - ( - route: "/me", - item: ( - icon: const Icon(Icons.person_outline), - activeIcon: const Icon(Icons.person), - label: $me.i18n.navigation, - ) - ), - ]; - - @override - Widget build(BuildContext context) { - if (context.isPortrait) { - return Scaffold( - body: widget.navigationShell, - bottomNavigationBar: buildNavigationBar(), - ); - } else { - return Scaffold( - body: [ - buildNavigationRail(), - const VerticalDivider(), - widget.navigationShell.expanded(), - ].row(), - ); - } - } - - Widget buildNavigationBar() { - return NavigationBar( - selectedIndex: getSelectedIndex(), - onDestinationSelected: onItemTapped, - destinations: items.map((e) => e.item.toBarItem()).toList(), - ); - } - - Widget buildNavigationRail() { - return NavigationRail( - labelType: NavigationRailLabelType.all, - selectedIndex: getSelectedIndex(), - onDestinationSelected: onItemTapped, - destinations: items.map((e) => e.item.toRailDest()).toList(), - ); - } - - int getSelectedIndex() { - final location = GoRouterState.of(context).uri.toString(); - return max(0, items.indexWhere((e) => location.startsWith(e.route))); - } - - void onItemTapped(int index) { - widget.navigationShell.goBranch( - index, - initialLocation: index == widget.navigationShell.currentIndex, - ); - } -} - -abstract class DrawerDelegateProtocol { - const DrawerDelegateProtocol(); - - void openDrawer(); - - void closeDrawer(); - - void openEndDrawer(); - - void closeEndDrawer(); -} - -class DrawerDelegate extends DrawerDelegateProtocol { - final GlobalKey key; - - const DrawerDelegate(this.key); - - @override - void openDrawer() { - key.currentState?.openDrawer(); - } - - @override - void closeDrawer() { - key.currentState?.closeDrawer(); - } - - @override - void openEndDrawer() { - key.currentState?.openEndDrawer(); - } - - @override - void closeEndDrawer() { - key.currentState?.closeEndDrawer(); - } -} diff --git a/lib/init.dart b/lib/init.dart deleted file mode 100644 index 8c9222e24..000000000 --- a/lib/init.dart +++ /dev/null @@ -1,164 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:sit/entity/campus.dart'; - -import 'package:flutter/foundation.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/session/backend.dart'; -import 'package:sit/settings/entity/proxy.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/session/class2nd.dart'; -import 'package:sit/session/pg_registration.dart'; -import 'package:sit/session/library.dart'; -import 'package:sit/session/ywb.dart'; -import 'package:sit/life/electricity/init.dart'; -import 'package:sit/life/expense_records/init.dart'; -import 'package:sit/login/init.dart'; -import 'package:sit/me/edu_email/init.dart'; -import 'package:sit/school/ywb/init.dart'; -import 'package:sit/school/exam_arrange/init.dart'; -import 'package:sit/school/library/init.dart'; -import 'package:sit/school/oa_announce/init.dart'; -import 'package:sit/school/class2nd/init.dart'; -import 'package:sit/school/exam_result/init.dart'; -import 'package:sit/school/yellow_pages/init.dart'; -import 'package:sit/session/ug_registration.dart'; -import 'package:sit/timetable/init.dart'; -import 'dart:async'; - -import 'package:cookie_jar/cookie_jar.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/storage/hive/cookie.dart'; -import 'package:sit/network/dio.dart'; -import 'package:sit/session/sso.dart'; -import 'package:sit/update/init.dart'; - -import '../widgets/captcha_box.dart'; - -class Init { - const Init._(); - - static late CookieJar cookieJar; - static late Dio dio; - static late BackendSession backend; - static late SsoSession ssoSession; - static late UgRegistrationSession ugRegSession; - static late PgRegistrationSession pgRegSession; - static late YwbSession ywbSession; - static late LibrarySession librarySession; - static late Class2ndSession class2ndSession; - - static Future initNetwork() async { - debugPrint("Initializing network"); - if (kIsWeb) { - cookieJar = WebCookieJar(); - } else { - cookieJar = PersistCookieJar( - storage: HiveCookieJar(HiveInit.cookies), - ); - } - dio = await DioInit.init( - cookieJar: cookieJar, - config: BaseOptions( - connectTimeout: const Duration(milliseconds: 8000), - receiveTimeout: const Duration(milliseconds: 8000), - sendTimeout: const Duration(milliseconds: 8000), - ), - ); - backend = BackendSession( - dio: dio, - ); - ssoSession = SsoSession( - dio: dio, - cookieJar: cookieJar, - inputCaptcha: (Uint8List imageBytes) async { - final context = $key.currentContext!; - // return await context.show$Sheet$( - // (ctx) => CaptchaSheetPage( - // captchaData: imageBytes, - // ), - // ); - return await showAdaptiveDialog( - context: context, - barrierDismissible: false, - builder: (context) => CaptchaDialog(captchaData: imageBytes), - ); - }, - ); - ugRegSession = UgRegistrationSession( - ssoSession: ssoSession, - ); - ywbSession = YwbSession( - dio: dio, - ); - librarySession = LibrarySession( - dio: dio, - ); - class2ndSession = Class2ndSession( - ssoSession: ssoSession, - ); - pgRegSession = PgRegistrationSession( - ssoSession: ssoSession, - ); - } - - static Future initModules() async { - debugPrint("Initializing modules"); - CredentialsInit.init(); - TimetableInit.init(); - if (!kIsWeb) { - UpdateInit.init(); - OaAnnounceInit.init(); - ExamResultInit.init(); - ExamArrangeInit.init(); - ExpenseRecordsInit.init(); - LibraryInit.init(); - YwbInit.init(); - Class2ndInit.init(); - ElectricityBalanceInit.init(); - } - YellowPagesInit.init(); - EduEmailInit.init(); - LoginInit.init(); - } - - static Future initStorage() async { - debugPrint("Initializing module storage"); - CredentialsInit.initStorage(); - TimetableInit.initStorage(); - if (!kIsWeb) { - UpdateInit.initStorage(); - OaAnnounceInit.initStorage(); - ExamResultInit.initStorage(); - ExamArrangeInit.initStorage(); - ExpenseRecordsInit.initStorage(); - LibraryInit.initStorage(); - YwbInit.initStorage(); - Class2ndInit.initStorage(); - ElectricityBalanceInit.initStorage(); - } - YellowPagesInit.initStorage(); - EduEmailInit.initStorage(); - LoginInit.initStorage(); - } - - static void registerCustomEditor() { - EditorEx.registerEnumEditor(Campus.values); - EditorEx.registerEnumEditor(ThemeMode.values); - EditorEx.registerEnumEditor(ProxyMode.values); - Editor.registerEditor((ctx, desc, initial) => StringsEditor( - fields: [ - (name: "account", initial: initial.account), - (name: "password", initial: initial.password), - ], - title: desc, - ctor: (values) => Credentials(account: values[0], password: values[1]), - )); - EditorEx.registerEnumEditor(LoginStatus.values); - EditorEx.registerEnumEditor(OaUserType.values); - } -} diff --git a/lib/l10n/app.dart b/lib/l10n/app.dart deleted file mode 100644 index 96453155f..000000000 --- a/lib/l10n/app.dart +++ /dev/null @@ -1,18 +0,0 @@ -import 'package:sit/timetable/i18n.dart' as t; -import 'package:sit/school/i18n.dart' as s; -import 'package:sit/life/i18n.dart' as l; -import 'package:sit/game/i18n.dart' as g; - -class AppI18n { - const AppI18n(); - final navigation = const _Navigation(); -} - -class _Navigation { - const _Navigation(); - - String get timetable => t.i18n.navigation; - String get school => s.i18n.navigation; - String get life => l.i18n.navigation; - String get game => g.i18n.navigation; -} diff --git a/lib/l10n/common.dart b/lib/l10n/common.dart deleted file mode 100644 index 8062936d6..000000000 --- a/lib/l10n/common.dart +++ /dev/null @@ -1,152 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; - -mixin class CommonI18nMixin { - String get open => "open".tr(); - - String get delete => "delete".tr(); - - String get confirm => "confirm".tr(); - - String get error => "error".tr(); - - String get ok => "ok".tr(); - - String get yes => "yes".tr(); - - String get refresh => "refresh".tr(); - - String get close => "close".tr(); - - String get submit => "submit".tr(); - - String get cancel => "cancel".tr(); - - String get back => "back".tr(); - - String get clear => "clear".tr(); - - String get save => "save".tr(); - - String get continue$ => "continue".tr(); - - String get unknown => "unknown".tr(); - - String get failed => "failed".tr(); - - String get download => "download".tr(); - - String get fetching => "fetching".tr(); - - String get warning => "warning".tr(); - - String get exceptionInfo => "exceptionInfo".tr(); - - String get untitled => "untitled".tr(); - - String get congratulations => "congratulations".tr(); - - String get search => "search".tr(); - - String get seeAll => "seeAll".tr(); - - String get select => "select".tr(); - - String get unselect => "unselect".tr(); - - String get share => "share".tr(); - - String get edit => "edit".tr(); - - String get use => "use".tr(); - - String get used => "used".tr(); - - String get preview => "preview".tr(); - - String get copy => "copy".tr(); - - String get upload => "upload".tr(); - - String get pick => "pick".tr(); - - String get retry => "retry".tr(); - - String get duplicate => "duplicate".tr(); - - String copyTipOf(String item) => "copyTip".tr(args: [item]); - - String get done => "done".tr(); - - String get openInBrowser => "openInBrowser".tr(); - - String get choose => "choose".tr(); - - String get unspecified => "unspecified".tr(); - - String get shareQrCode => "shareQrCode".tr(); - - String get add => "add".tr(); -} - -class CommonI18n with CommonI18nMixin { - const CommonI18n(); -} - -class NetworkI18n { - const NetworkI18n(); - - static const ns = "network"; - - String get error => "$ns.error".tr(); - - String get ipAddress => "$ns.ipAddress".tr(); - - String get connectionTimeoutError => "$ns.connectionTimeoutError".tr(); - - String get connectionTimeoutErrorDesc => "$ns.connectionTimeoutErrorDesc".tr(); - - String get openToolBtn => "$ns.openToolBtn".tr(); - - String get noAccessTip => "$ns.noAccessTip".tr(); - - String get untitled => "$ns.untitled".tr(); -} - -class UnitI18n { - const UnitI18n(); - - static const ns = "unit"; - - String rmb(String amount) => "$ns.rmb".tr(args: [amount]); - - String powerKwh(String amount) => "$ns.powerKwh".tr(args: [amount]); -} - -class TimeI18n { - const TimeI18n(); - - static const ns = "time"; - - String get minute => "$ns.minute".tr(); - - String get hour => "$ns.hour".tr(); - - String hourMinuteFormat(String hour, String minute) => "$ns.hourMinuteFormat".tr(namedArgs: { - "hour": hour, - "minute": minute, - }); - - String hourFormat(String hour) => "$ns.hourFormat".tr(args: [hour]); - - String minuteFormat(String minute) => "$ns.minuteFormat".tr(args: [minute]); -} - -class CampusI10n { - const CampusI10n(); - - static const ns = "campus"; - - String get xuhui => "$ns.xuhui".tr(); - - String get fengxian => "$ns.fengxian".tr(); -} diff --git a/lib/l10n/extension.dart b/lib/l10n/extension.dart deleted file mode 100644 index 1afc0296c..000000000 --- a/lib/l10n/extension.dart +++ /dev/null @@ -1,54 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:intl/intl.dart'; -import 'package:sit/l10n/time.dart'; - -import 'lang.dart'; - -export 'package:sit/r.dart'; - -export 'lang.dart'; - -extension I18nBuildContext on BuildContext { - ///e.g.: Wednesday, September 21, 2022 - String formatYmdWeekText(DateTime date) => Lang.formatOf(locale).ymdWeekText.format(date); - - ///e.g.: Wednesday, September 21 - String formatMdWeekText(DateTime date) => Lang.formatOf(locale).mdWeekText.format(date); - - ///e.g.: September 21, 2022 - String formatYmdText(DateTime date) => Lang.formatOf(locale).ymdText.format(date); - - ///e.g.: 9/21/2022 - String formatYmdNum(DateTime date) => Lang.formatOf(locale).ymdNum.format(date); - - ///e.g.: 9/21/2022 23:57:23 - String formatYmdhmsNum(DateTime date) => Lang.formatOf(locale).ymdhmsNum.format(date); - - ///e.g.: 9/21/2022 23:57 - String formatYmdhmNum(DateTime date) => Lang.formatOf(locale).ymdhmNum.format(date); - - String formatYmText(DateTime date) => Lang.formatOf(locale).ymText.format(date); - - /// e.g.: 8:32:59 - String formatHmsNum(DateTime date) => Lang.formatOf(locale).hms.format(date); - - /// e.g.: 8:32 - String formatHmNum(DateTime date) => Lang.formatOf(locale).hm.format(date); - - /// e.g.: 9/21 - String formatMdNum(DateTime date) => Lang.formatOf(locale).mdNum.format(date); - - /// e.g.: 9/21 7:32 - String formatMdhmNum(DateTime date) => Lang.formatOf(locale).mdHmNum.format(date); - - Weekday firstDayInWeek() => Lang.formatOf(locale).firstDayInWeek; -} - -extension BrightnessL10nX on Brightness { - String l10n() => "brightness.$name".tr(); -} - -extension ThemeModeL10nX on ThemeMode { - String l10n() => "themeMode.$name".tr(); -} diff --git a/lib/l10n/lang.dart b/lib/l10n/lang.dart deleted file mode 100644 index d8e527b64..000000000 --- a/lib/l10n/lang.dart +++ /dev/null @@ -1,127 +0,0 @@ -import 'dart:ui'; - -import 'package:intl/intl.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/r.dart'; - -abstract class RegionalFormatter { - DateFormat get hms; - - DateFormat get hm; - - DateFormat get ymdText; - - DateFormat get ymdWeekText; - - DateFormat get mdWeekText; - - DateFormat get ymText; - - DateFormat get ymdNum; - - DateFormat get ymdhmsNum; - - DateFormat get ymdhmNum; - - DateFormat get mdHmNum; - - DateFormat get mdNum; - - Weekday get firstDayInWeek; -} - -class Lang { - Lang._(); - - static final zhHansFormatter = _ZhHansFormatter(); - static final zhHantFormatter = _ZhHantFormatter(); - static final enFormatter = _EnUsFormatter(); - static final locale2Format = { - R.enLocale: _EnUsFormatter(), - R.zhHansLocale: _ZhHansFormatter(), - R.zhHantLocale: _ZhHantFormatter(), - }; - - static RegionalFormatter formatOf(Locale locale) => locale2Format[locale] ?? zhHansFormatter; -} - -class _ZhHansFormatter implements RegionalFormatter { - @override - final hms = DateFormat("H:mm:ss"); - @override - final hm = DateFormat("H:mm"); - @override - final ymdText = DateFormat("yyyy年M月d日", "zh_Hans"); - @override - final ymdWeekText = DateFormat("yyyy年M月d日 EEEE", "zh_Hans"); - @override - final mdWeekText = DateFormat("M月d日 EEEE", "zh_Hans"); - @override - final ymText = DateFormat("yyyy年M月", "zh_Hans"); - @override - final ymdNum = DateFormat("yyyy/M/d", "zh_Hans"); - @override - final ymdhmsNum = DateFormat("yyyy/M/d H:mm:ss", "zh_Hans"); - @override - final ymdhmNum = DateFormat("yyyy/M/d H:mm:ss", "zh_Hans"); - @override - final mdHmNum = DateFormat("M/d H:mm", "zh_Hans"); - @override - final mdNum = DateFormat("M/d", "zh_Hans"); - @override - final firstDayInWeek = Weekday.monday; -} - -class _ZhHantFormatter implements RegionalFormatter { - @override - final hms = DateFormat("H:mm:ss"); - @override - final hm = DateFormat("H:mm"); - @override - final ymdText = DateFormat("yyyy年M月d日", "zh_Hant"); - @override - final ymdWeekText = DateFormat("yyyy年M月d日 EEEE", "zh_Hant"); - @override - final mdWeekText = DateFormat("M月d日 EEEE", "zh_Hant"); - @override - final ymText = DateFormat("yyyy年M月", "zh_Hant"); - @override - final ymdNum = DateFormat("yyyy/M/d", "zh_Hant"); - @override - final ymdhmsNum = DateFormat("yyyy/M/d H:mm:ss", "zh_Hant"); - @override - final ymdhmNum = DateFormat("yyyy/M/d H:mm:ss", "zh_Hant"); - @override - final mdHmNum = DateFormat("M/d H:mm", "zh_Hant"); - @override - final mdNum = DateFormat("M/d", "zh_Hant"); - @override - final firstDayInWeek = Weekday.monday; -} - -class _EnUsFormatter implements RegionalFormatter { - @override - final hms = DateFormat.jms(); - @override - final hm = DateFormat.jm(); - @override - final ymdText = DateFormat("MMMM d, yyyy", "en_US"); - @override - final ymdWeekText = DateFormat("EEEE, MMMM d, yyyy", "en_US"); - @override - final mdWeekText = DateFormat("EEEE, MMMM d", "en_US"); - @override - final ymText = DateFormat("MMMM, yyyy", "en_US"); - @override - final ymdNum = DateFormat("M/d/yyyy", "en_US"); - @override - final ymdhmsNum = DateFormat("M/d/yyyy", "en_US").add_jms(); - @override - final ymdhmNum = DateFormat("M/d/yyyy", "en_US").add_jm(); - @override - final mdHmNum = DateFormat("M/d", "en_US").add_jm(); - @override - final mdNum = DateFormat("M/d", "en_US"); - @override - final firstDayInWeek = Weekday.sunday; -} diff --git a/lib/l10n/time.dart b/lib/l10n/time.dart deleted file mode 100644 index 496191d73..000000000 --- a/lib/l10n/time.dart +++ /dev/null @@ -1,54 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:json_annotation/json_annotation.dart'; - -@JsonEnum() -enum Weekday { - monday, - tuesday, - wednesday, - thursday, - friday, - saturday, - sunday; - - int toJson() => index; - - static const calendarOrder = [ - sunday, - monday, - tuesday, - wednesday, - thursday, - friday, - saturday, - ]; - - int getIndex({required Weekday firstDay}) { - return (this - firstDay.index).index; - } - - static Weekday fromJson(int json) => Weekday.values.elementAtOrNull(json) ?? Weekday.monday; - - static Weekday fromIndex(int index) { - assert(0 <= index && index < Weekday.values.length); - return Weekday.values[index % Weekday.values.length]; - } - - String l10n() => "weekday.$index".tr(); - - String l10nShort() => "weekdayShort.$index".tr(); - - static List genSequence(Weekday firstDay) { - return List.generate(7, (index) => firstDay + index); - } - - Weekday operator +(int delta) { - return Weekday.values[(index + delta) % Weekday.values.length]; - } - - Weekday operator -(int delta) { - return Weekday.values[(index - delta) % Weekday.values.length]; - } - - List genSequenceStartWithThis() => genSequence(this); -} diff --git a/lib/l10n/tr.dart b/lib/l10n/tr.dart deleted file mode 100644 index 7967cf013..000000000 --- a/lib/l10n/tr.dart +++ /dev/null @@ -1,45 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/widgets.dart'; - -extension TrX on String { - List trSpan({ - BuildContext? context, - required Map args, - }) { - final translated = this.tr( - namedArgs: args.map((k, v) => MapEntry(k, "{$k}")), - ); - return replaceWidget(raw: translated, args: args); - } -} - -List replaceWidget({ - required String raw, - required Map args, -}) { - List spans = []; - RegExp regExp = RegExp(r'{(.*?)}'); - Iterable matches = regExp.allMatches(raw); - int currentIndex = 0; - - for (Match match in matches) { - spans.add(TextSpan(text: raw.substring(currentIndex, match.start))); - final key = match.group(1); - if (key == null) { - spans.add(const TextSpan(text: "?")); - } else { - final replaced = args[key]; - if (replaced == null) { - spans.add(TextSpan(text: key)); - } else { - spans.add(replaced); - } - } - currentIndex = match.end; - } - - if (currentIndex < raw.length) { - spans.add(TextSpan(text: raw.substring(currentIndex))); - } - return spans; -} diff --git a/lib/l10n/yaml_assets_loader.dart b/lib/l10n/yaml_assets_loader.dart deleted file mode 100644 index 31a8f3529..000000000 --- a/lib/l10n/yaml_assets_loader.dart +++ /dev/null @@ -1,51 +0,0 @@ -import 'dart:developer'; -import 'dart:ui'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/services.dart'; -import 'package:yaml/yaml.dart'; - -//Loader for multiple yaml files -class YamlAssetLoader extends AssetLoader { - String getLocalePath(String basePath, Locale locale) { - return '$basePath/${locale.toStringWithSeparator(separator: "-")}.yaml'; - } - - @override - Future> load(String path, Locale locale) async { - var localePath = getLocalePath(path, locale); - log('easy localization loader: load yaml file $localePath'); - YamlMap yaml = loadYaml(await rootBundle.loadString(localePath)); - return convertYamlMapToMap(yaml); - } -} - -//Loader for single yaml file -class YamlSingleAssetLoader extends AssetLoader { - Map? yamlData; - - @override - Future> load(String path, Locale locale) async { - if (yamlData == null) { - log('easy localization loader: load yaml file $path'); - yamlData = convertYamlMapToMap(loadYaml(await rootBundle.loadString(path))); - } else { - log('easy localization loader: Yaml already loaded, read cache'); - } - return yamlData![locale.toString()]; - } -} - -/// Convert YamlMap to Map -Map convertYamlMapToMap(YamlMap yamlMap) { - final map = {}; - - for (final entry in yamlMap.entries) { - if (entry.value is YamlMap || entry.value is Map) { - map[entry.key.toString()] = convertYamlMapToMap(entry.value); - } else { - map[entry.key.toString()] = entry.value.toString(); - } - } - return map; -} diff --git a/lib/life/electricity/aggregated.dart b/lib/life/electricity/aggregated.dart deleted file mode 100644 index 69374c047..000000000 --- a/lib/life/electricity/aggregated.dart +++ /dev/null @@ -1,32 +0,0 @@ -import 'package:sit/life/electricity/init.dart'; -import 'package:sit/settings/settings.dart'; - -class ElectricityAggregated { - static void addSearchHistory(String room) { - final storage = ElectricityBalanceInit.storage; - final searchHistory = storage.searchHistory ?? []; - if (searchHistory.any((e) => e == room)) return; - searchHistory.insert(0, room); - storage.searchHistory = searchHistory; - } - - static void selectNewRoom(String room) { - Settings.life.electricity.selectedRoom = room; - addSearchHistory(room); - ElectricityBalanceInit.storage.lastUpdateTime = null; - } - - static void clearSelectedRoom() { - Settings.life.electricity.selectedRoom = null; - ElectricityBalanceInit.storage.lastUpdateTime = null; - ElectricityBalanceInit.storage.lastBalance = null; - } - - static Future refresh({required String selectedRoom}) async { - final lastBalance = await ElectricityBalanceInit.service.getBalance(selectedRoom); - if (lastBalance.roomNumber == selectedRoom) { - ElectricityBalanceInit.storage.lastBalance = lastBalance; - ElectricityBalanceInit.storage.lastUpdateTime = DateTime.now(); - } - } -} diff --git a/lib/life/electricity/entity/balance.dart b/lib/life/electricity/entity/balance.dart deleted file mode 100644 index 119353284..000000000 --- a/lib/life/electricity/entity/balance.dart +++ /dev/null @@ -1,67 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'balance.g.dart'; - -double _parseBalance(String raw) { - return double.tryParse(raw) ?? 0; -} - -/// 0.636 RMB/kWh -/// Since 1/1/2024, it rises from 0.61 to 0.636. -const rmbPerKwh = 0.636; - -/// ```json -/// [{ -/// "RoomName":"105604", -/// "BaseBalance":"53.6640", -/// "ElecBalance":"0.0000", -/// "Balance":"53.6640" -/// }] -/// ``` -@JsonSerializable(createToJson: false) -@HiveType(typeId: CacheHiveType.electricityBalance) -class ElectricityBalance { - @JsonKey(name: "Balance", fromJson: _parseBalance) - @HiveField(0) - final double balance; - - @JsonKey(name: "BaseBalance", fromJson: _parseBalance) - @HiveField(1) - final double baseBalance; - - @JsonKey(name: "ElecBalance", fromJson: _parseBalance) - @HiveField(2) - final double electricityBalance; - - @JsonKey(name: "RoomName") - @HiveField(3) - final String roomNumber; - - const ElectricityBalance({ - required this.roomNumber, - required this.balance, - required this.baseBalance, - required this.electricityBalance, - }); - - const ElectricityBalance.all({ - required this.roomNumber, - required this.balance, - }) : baseBalance = balance, - electricityBalance = balance; - - factory ElectricityBalance.fromJson(Map json) => _$ElectricityBalanceFromJson(json); - - double get remainingPower => balance / rmbPerKwh; - - @override - String toString() { - return { - "balance": balance, - "baseBalance": baseBalance, - "electricityBalance": electricityBalance, - "roomNumber": roomNumber, - }.toString(); - } -} diff --git a/lib/life/electricity/entity/balance.g.dart b/lib/life/electricity/entity/balance.g.dart deleted file mode 100644 index e025c8f0e..000000000 --- a/lib/life/electricity/entity/balance.g.dart +++ /dev/null @@ -1,59 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'balance.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class ElectricityBalanceAdapter extends TypeAdapter { - @override - final int typeId = 60; - - @override - ElectricityBalance read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return ElectricityBalance( - roomNumber: fields[3] as String, - balance: fields[0] as double, - baseBalance: fields[1] as double, - electricityBalance: fields[2] as double, - ); - } - - @override - void write(BinaryWriter writer, ElectricityBalance obj) { - writer - ..writeByte(4) - ..writeByte(0) - ..write(obj.balance) - ..writeByte(1) - ..write(obj.baseBalance) - ..writeByte(2) - ..write(obj.electricityBalance) - ..writeByte(3) - ..write(obj.roomNumber); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is ElectricityBalanceAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -ElectricityBalance _$ElectricityBalanceFromJson(Map json) => ElectricityBalance( - roomNumber: json['RoomName'] as String, - balance: _parseBalance(json['Balance'] as String), - baseBalance: _parseBalance(json['BaseBalance'] as String), - electricityBalance: _parseBalance(json['ElecBalance'] as String), - ); diff --git a/lib/life/electricity/entity/room.dart b/lib/life/electricity/entity/room.dart deleted file mode 100644 index b536c7673..000000000 --- a/lib/life/electricity/entity/room.dart +++ /dev/null @@ -1,148 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/utils/strings.dart'; - -class DormitoryRoom { - final int building; - final int floorWithRoom; - final int floor; - final int room; - - const DormitoryRoom({ - required this.building, - required this.floorWithRoom, - required this.floor, - required this.room, - }); - - /// For buildings #1 through #10, their floors are all below 10. - /// ## examples: - /// - 101301: building #1, room #301 - /// - 10251524: building #25, room #1524 - factory DormitoryRoom.fromFullString(String full) { - full = full.removePrefix("10"); - assert(full.length >= 4 && full.length <= 6, '"$full" is too long.'); - if (full.length == 4) { - // building is in 1 digit, like 1 301 - final buildingRaw = full[0]; - final floorWithRoomNumberRaw = full.substring(1); - final floorNumberRaw = full.substring(1, 2); - final roomNumberRaw = full.substring(2); - return DormitoryRoom( - building: int.tryParse(buildingRaw) ?? 0, - floorWithRoom: int.tryParse(floorWithRoomNumberRaw) ?? 0, - floor: int.tryParse(floorNumberRaw) ?? 0, - room: int.tryParse(roomNumberRaw) ?? 0, - ); - } else if (full.length == 5) { - // building is in 2 digit,like 12 301 - final buildingRaw = full.substring(0, 2); - final floorWithRoomNumber = full.substring(2); - final floorNumberRaw = full.substring(2, 3); - final roomNumberRaw = full.substring(3); - return DormitoryRoom( - building: int.tryParse(buildingRaw) ?? 0, - floorWithRoom: int.tryParse(floorWithRoomNumber) ?? 0, - floor: int.tryParse(floorNumberRaw) ?? 0, - room: int.tryParse(roomNumberRaw) ?? 0, - ); - } else if (full.length == 6) { - // building is in 2 digit,like 12 1301 - final buildingRaw = full.substring(0, 2); - final floorWithRoomNumber = full.substring(2); - final floorNumberRaw = full.substring(2, 4); - final roomNumberRaw = full.substring(4); - return DormitoryRoom( - building: int.tryParse(buildingRaw) ?? 0, - floorWithRoom: int.tryParse(floorWithRoomNumber) ?? 0, - floor: int.tryParse(floorNumberRaw) ?? 0, - room: int.tryParse(roomNumberRaw) ?? 0, - ); - } - // fallback - return const DormitoryRoom(building: 0, floorWithRoom: 0, floor: 0, room: 0); - } - - @override - String toString() { - return "Building $building #$floorWithRoom"; - } - - String l10n() { - return "dormitoryRoom".tr(namedArgs: { - "building": building.toString(), - "room": floorWithRoom.toString(), - }); - } - - static void quickSort(List rooms, int Function(int, int) compare) { - if (rooms.length < 2) { - return; - } - - List stack = []; - stack.add(0); - stack.add(rooms.length - 1); - - while (stack.isNotEmpty) { - int end = stack.removeLast(); - int start = stack.removeLast(); - - int pivotIndex = partition(rooms, start, end, compare); - - if (pivotIndex - 1 > start) { - stack.add(start); - stack.add(pivotIndex - 1); - } - - if (pivotIndex + 1 < end) { - stack.add(pivotIndex + 1); - stack.add(end); - } - } - } - - static int partition(List rooms, int start, int end, int Function(int, int) compare) { - int pivot = rooms[end]; - int i = start - 1; - - for (int j = start; j < end; j++) { - if (compare(rooms[j], pivot) <= 0) { - i++; - _swap(rooms, i, j); - } - } - - _swap(rooms, i + 1, end); - return i + 1; - } - - static void _swap(List rooms, int i, int j) { - int temp = rooms[i]; - rooms[i] = rooms[j]; - rooms[j] = temp; - } - - static int compare(int room1, int room2) { - var dormitoryRoom1 = DormitoryRoom.fromFullString(room1.toString()); - var dormitoryRoom2 = DormitoryRoom.fromFullString(room2.toString()); - if (dormitoryRoom1.building < dormitoryRoom2.building) { - return -1; - } else if (dormitoryRoom1.building > dormitoryRoom2.building) { - return 1; - } else { - if (dormitoryRoom1.floor < dormitoryRoom2.floor) { - return -1; - } else if (dormitoryRoom1.floor > dormitoryRoom2.floor) { - return 1; - } else { - if (dormitoryRoom1.room < dormitoryRoom2.room) { - return -1; - } else if (dormitoryRoom1.room > dormitoryRoom2.room) { - return 1; - } else { - return 0; - } - } - } - } -} diff --git a/lib/life/electricity/i18n.dart b/lib/life/electricity/i18n.dart deleted file mode 100644 index 7e9e96143..000000000 --- a/lib/life/electricity/i18n.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "electricity"; - final unit = const UnitI18n(); - - String get title => "$ns.title".tr(); - - String get searchRoom => "$ns.searchRoom".tr(); - - String get balance => "$ns.balance".tr(); - - String get remainingPower => "$ns.remainingPower".tr(); - - String get searchInvalidTip => "$ns.searchInvalidTip".tr(); - - String get refreshSuccessTip => "$ns.refreshSuccessTip".tr(); - - String get refreshFailedTip => "$ns.refreshFailedTip".tr(); - - String lastUpdateTime(String time) => "$ns.lastUpdateTime".tr(args: [time]); -} diff --git a/lib/life/electricity/index.dart b/lib/life/electricity/index.dart deleted file mode 100644 index 20b05cfdd..000000000 --- a/lib/life/electricity/index.dart +++ /dev/null @@ -1,197 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart' hide isCupertino; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/utils/async_event.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:share_plus/share_plus.dart'; -import 'package:super_context_menu/super_context_menu.dart'; - -import '../event.dart'; -import 'aggregated.dart'; -import 'entity/balance.dart'; -import 'i18n.dart'; -import 'init.dart'; -import 'widget/card.dart'; -import 'widget/search.dart'; - -class ElectricityBalanceAppCard extends ConsumerStatefulWidget { - const ElectricityBalanceAppCard({super.key}); - - @override - ConsumerState createState() => _ElectricityBalanceAppCardState(); -} - -class _ElectricityBalanceAppCardState extends ConsumerState { - late final EventSubscription $refreshEvent; - - @override - initState() { - super.initState(); - $refreshEvent = lifeEventBus.addListener(() async { - await refresh(active: true); - }); - if (Settings.life.electricity.autoRefresh) { - refresh(active: false); - } - } - - @override - dispose() { - $refreshEvent.cancel(); - super.dispose(); - } - - /// The electricity balance is refreshed approximately every 15 minutes. - Future refresh({required bool active}) async { - final selectedRoom = Settings.life.electricity.selectedRoom; - if (selectedRoom == null) return; - try { - await ElectricityAggregated.refresh( - selectedRoom: selectedRoom, - ); - } catch (error) { - if (active) { - if (!mounted) return; - context.showSnackBar(content: i18n.refreshFailedTip.text()); - } - return; - } - if (active) { - if (!mounted) return; - context.showSnackBar(content: i18n.refreshSuccessTip.text()); - } - } - - @override - Widget build(BuildContext context) { - final storage = ElectricityBalanceInit.storage; - final lastBalance = ref.watch(storage.$lastBalance); - final selectedRoom = ref.watch(Settings.life.electricity.$selectedRoom); - final lastUpdateTime = ref.watch(storage.$lastUpdateTime); - final balance = lastBalance?.roomNumber == selectedRoom ? lastBalance : null; - final roomNumber = balance != null - ? "#${balance.roomNumber}" - : selectedRoom != null - ? "#$selectedRoom" - : null; - return AppCard( - view: selectedRoom != null && balance != null - ? buildBalanceCard( - balance: balance, - selectedRoom: selectedRoom, - ) - : const SizedBox(), - title: (roomNumber == null ? i18n.title : "${i18n.title} $roomNumber").text(), - subtitle: lastUpdateTime != null ? i18n.lastUpdateTime(context.formatMdhmNum(lastUpdateTime)).text() : null, - leftActions: [ - FilledButton.icon( - onPressed: () async { - final $searchHistory = ValueNotifier(ElectricityBalanceInit.storage.searchHistory ?? const []); - $searchHistory.addListener(() { - ElectricityBalanceInit.storage.searchHistory = $searchHistory.value; - }); - final room = await searchRoom( - ctx: context, - $searchHistory: $searchHistory, - roomList: ElectricityBalanceInit.service.getRoomNumberCandidates(), - ); - $searchHistory.dispose(); - if (room == null) return; - if (Settings.life.electricity.selectedRoom != room) { - ElectricityAggregated.selectNewRoom(room); - await refresh(active: true); - } - }, - label: i18n.searchRoom.text(), - icon: Icon(context.icons.search), - ), - ], - rightActions: [ - if (balance != null && selectedRoom != null && !supportContextMenu) - PlatformIconButton( - material: (ctx, p) { - return MaterialIconButtonData( - tooltip: i18n.share, - ); - }, - onPressed: () async { - await shareBalance(balance: balance, selectedRoom: selectedRoom, context: context); - }, - icon: Icon(context.icons.share), - ), - ], - ); - } - - Widget buildBalanceCard({ - required ElectricityBalance balance, - required String selectedRoom, - }) { - if (!supportContextMenu) { - return Dismissible( - direction: DismissDirection.endToStart, - key: const ValueKey("Balance"), - onDismissed: (dir) async { - await HapticFeedback.heavyImpact(); - ElectricityAggregated.clearSelectedRoom(); - }, - child: buildCard(balance), - ); - } - return Builder( - builder: (ctx) => ContextMenuWidget( - menuProvider: (MenuRequest request) { - return Menu( - children: [ - MenuAction( - image: MenuImage.icon(context.icons.share), - title: i18n.share, - callback: () async { - await shareBalance(balance: balance, selectedRoom: selectedRoom, context: ctx); - }, - ), - MenuAction( - image: MenuImage.icon(context.icons.delete), - title: i18n.delete, - attributes: const MenuActionAttributes(destructive: true), - activator: const SingleActivator(LogicalKeyboardKey.delete), - callback: () async { - await HapticFeedback.heavyImpact(); - Settings.life.electricity.selectedRoom = null; - }, - ), - ], - ); - }, - child: buildCard(balance), - ), - ); - } - - Widget buildCard(ElectricityBalance balance) { - return ElectricityBalanceCard( - balance: balance, - ).sized(h: 120); - } -} - -Future shareBalance({ - required ElectricityBalance balance, - required String selectedRoom, - required BuildContext context, -}) async { - final text = - "#$selectedRoom: ${i18n.unit.rmb(balance.balance.toStringAsFixed(2))}, ${i18n.unit.powerKwh(balance.remainingPower.toStringAsFixed(2))}"; - await Share.share( - text, - sharePositionOrigin: context.getSharePositionOrigin(), - ); -} diff --git a/lib/life/electricity/init.dart b/lib/life/electricity/init.dart deleted file mode 100644 index 8d52c6f03..000000000 --- a/lib/life/electricity/init.dart +++ /dev/null @@ -1,18 +0,0 @@ -import 'package:sit/life/electricity/service/electricity.demo.dart'; -import 'package:sit/settings/dev.dart'; - -import 'service/electricity.dart'; -import 'storage/electricity.dart'; - -class ElectricityBalanceInit { - static late ElectricityStorage storage; - static late ElectricityService service; - - static void init() { - service = Dev.demoMode ? const DemoElectricityService() : const ElectricityService(); - } - - static void initStorage() { - storage = ElectricityStorage(); - } -} diff --git a/lib/life/electricity/service/electricity.dart b/lib/life/electricity/service/electricity.dart deleted file mode 100644 index 5d3fcff5a..000000000 --- a/lib/life/electricity/service/electricity.dart +++ /dev/null @@ -1,35 +0,0 @@ -import 'dart:convert'; - -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; -import 'package:sit/r.dart'; -import '../entity/balance.dart'; - -const _balanceUrl = "https://xgfy.sit.edu.cn/unifri-flow/WF/Comm/ProcessRequest.do?DoType=DBAccess_RunSQLReturnTable"; - -class ElectricityService { - Dio get _dio => Init.dio; - - const ElectricityService(); - - Future getBalance(String room) async { - final response = await _dio.post( - _balanceUrl, - queryParameters: { - "SQL": "select * from sys_room_balance where RoomName='$room';", - }, - options: Options( - headers: { - "Cookie": "FK_Dept=B1101", - }, - ), - ); - final data = jsonDecode(response.data as String) as List; - final list = data.map((e) => ElectricityBalance.fromJson(e)).toList(); - return list.first; - } - - List getRoomNumberCandidates() { - return R.roomList; - } -} diff --git a/lib/life/electricity/service/electricity.demo.dart b/lib/life/electricity/service/electricity.demo.dart deleted file mode 100644 index aa4acb2c5..000000000 --- a/lib/life/electricity/service/electricity.demo.dart +++ /dev/null @@ -1,22 +0,0 @@ -import 'dart:math'; - -import '../entity/balance.dart'; -import 'electricity.dart'; - -class DemoElectricityService implements ElectricityService { - const DemoElectricityService(); - - @override - Future getBalance(String room) async { - final rand = Random(room.hashCode); - return ElectricityBalance.all( - roomNumber: room, - balance: rand.nextInt(10000) / 100, - ); - } - - @override - List getRoomNumberCandidates() { - return ["114514", "1919", "1314", "6666"]; - } -} diff --git a/lib/life/electricity/storage/electricity.dart b/lib/life/electricity/storage/electricity.dart deleted file mode 100644 index 2e00f96a6..000000000 --- a/lib/life/electricity/storage/electricity.dart +++ /dev/null @@ -1,48 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/foundation.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/balance.dart'; - -class _K { - static const lastBalance = "/lastBalance"; - static const searchHistory = "/searchHistory"; - static const lastUpdateTime = "/lastUpdateTime"; -} - -class ElectricityStorage { - Box get box => HiveInit.electricity; - final int maxHistoryLength; - - ElectricityStorage({ - this.maxHistoryLength = 20, - }); - - ValueListenable listenBalance() => box.listenable(keys: [_K.lastBalance]); - - late final $lastBalance = box.provider(_K.lastBalance); - - ElectricityBalance? get lastBalance => box.safeGet(_K.lastBalance); - - set lastBalance(ElectricityBalance? newV) => box.safePut(_K.lastBalance, newV); - - List? get searchHistory => box.safeGet(_K.searchHistory); - - set searchHistory(List? newV) { - if (newV != null) { - newV = newV.sublist(0, min(newV.length, maxHistoryLength)); - } - box.safePut(_K.searchHistory, newV); - } - - DateTime? get lastUpdateTime => box.safeGet(_K.lastUpdateTime); - - set lastUpdateTime(DateTime? newV) => box.safePut(_K.lastUpdateTime, newV); - - late final $lastUpdateTime = box.provider(_K.lastUpdateTime); - - ValueListenable listenLastUpdateTime() => box.listenable(keys: [_K.lastUpdateTime]); -} diff --git a/lib/life/electricity/widget/card.dart b/lib/life/electricity/widget/card.dart deleted file mode 100644 index aa7ba0ef7..000000000 --- a/lib/life/electricity/widget/card.dart +++ /dev/null @@ -1,49 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/design/animation/number.dart'; -import '../entity/balance.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../i18n.dart'; - -class ElectricityBalanceCard extends StatelessWidget { - final ElectricityBalance balance; - final double? warningBalance; - final Color warningColor; - - const ElectricityBalanceCard({ - super.key, - required this.balance, - this.warningBalance = 10.0, - this.warningColor = Colors.redAccent, - }); - - @override - Widget build(BuildContext context) { - final warningBalance = this.warningBalance; - final balance = this.balance; - final balanceColor = warningBalance == null || warningBalance < balance.balance ? null : warningColor; - final style = context.textTheme.titleMedium; - return [ - ListTile( - leading: const Icon(Icons.offline_bolt), - titleTextStyle: style, - title: i18n.remainingPower.text(), - trailing: AnimatedNumber( - value: balance.remainingPower, - builder: (ctx, value) => i18n.unit.powerKwh(value.toStringAsFixed(2)).text(style: style), - ), - ), - ListTile( - leading: Icon(Icons.savings, color: balanceColor), - titleTextStyle: style?.copyWith(color: balanceColor), - title: i18n.balance.text(), - trailing: AnimatedNumber( - value: balance.balance, - builder: (ctx, value) => i18n.unit.rmb(value.toStringAsFixed(2)).text( - style: style?.copyWith(color: balanceColor), - ), - ), - ), - ].column(maa: MainAxisAlignment.spaceEvenly).inCard(); - } -} diff --git a/lib/life/electricity/widget/search.dart b/lib/life/electricity/widget/search.dart deleted file mode 100644 index 523a5139c..000000000 --- a/lib/life/electricity/widget/search.dart +++ /dev/null @@ -1,90 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/adaptive/swipe.dart'; -import 'package:sit/life/electricity/entity/room.dart'; -import 'package:sit/widgets/search.dart'; -import 'package:rettulf/rettulf.dart'; -import '../i18n.dart'; - -const _emptyIndicator = Object(); - -Future searchRoom({ - String? initial, - required BuildContext ctx, - required ValueNotifier> $searchHistory, - required List roomList, -}) async { - final result = await showSearch( - context: ctx, - query: initial, - delegate: ItemSearchDelegate.highlight( - keyboardType: TextInputType.number, - searchHistory: $searchHistory, - candidateBuilder: (ctx, items, highlight, selectIt) { - return ListView.builder( - itemCount: items.length, - itemBuilder: (ctx, i) { - final item = items[i]; - final (full, highlighted) = highlight(item); - final room = DormitoryRoom.fromFullString(full); - return ListTile( - title: HighlightedText( - full: full, - highlighted: highlighted, - baseStyle: ctx.textTheme.bodyLarge, - ), - subtitle: room.l10n().text(), - onTap: () { - selectIt(item); - }, - ); - }, - ); - }, - historyBuilder: (ctx, items, stringify, selectIt) { - return ListView.builder( - itemCount: items.length, - itemBuilder: (ctx, i) { - final item = items[i]; - final full = stringify(item); - final room = DormitoryRoom.fromFullString(full); - return WithSwipeAction( - right: SwipeAction.delete( - icon: ctx.icons.delete, - action: () { - final newList = List.of($searchHistory.value); - newList.removeAt(i); - $searchHistory.value = newList; - }, - ), - childKey: ValueKey(item), - child: ListTile( - leading: const Icon(Icons.history), - title: HighlightedText( - full: full, - baseStyle: ctx.textTheme.bodyLarge, - ), - subtitle: room.l10n().text(), - onTap: () { - selectIt(item); - }, - ), - ); - }, - ); - }, - candidates: roomList, - queryProcessor: _keepOnlyNumber, - invalidSearchTip: i18n.searchInvalidTip, - childAspectRatio: 2, - maxCrossAxisExtent: 150.0, - emptyIndicator: _emptyIndicator, - ), - ); - return result is String ? result : null; -} - -String _keepOnlyNumber(String raw) { - return String.fromCharCodes(raw.codeUnits.where((e) => e >= 48 && e < 58)); -} diff --git a/lib/life/event.dart b/lib/life/event.dart deleted file mode 100644 index d05caeae4..000000000 --- a/lib/life/event.dart +++ /dev/null @@ -1,3 +0,0 @@ -import 'package:sit/utils/async_event.dart'; - -final lifeEventBus = AsyncEventEmitter(); diff --git a/lib/life/expense_records/Description.md b/lib/life/expense_records/Description.md deleted file mode 100644 index 56b825970..000000000 --- a/lib/life/expense_records/Description.md +++ /dev/null @@ -1,67 +0,0 @@ -# Expense Tracker - -## Remote - -1. Fetching the data, in json, form school website. -2. Mapping the raw data to "raw" dart classes, such as `TransactionRaw` - in [remote.dart](entity/remote.dart). -3. Analyzing the "raw" dart classes, and transform them into several classes and enums, such - as `Transaction` and `TranscationType` in [local.dart](entity/local.dart). - -## Local - -### Adding extra data - -1. Adding TypeMark, `Food`, `TopUp`, `Subsidy` and so on, which can be modified manually by users. - -### Persistence - -- Option A: Serializing the local classes into Hive with generated TypeAdapter. -- Option B: Serializing the local classes in json for the future needs. - -## 本地缓存 - -### 本地缓存策略概述 - -requestSet = 使用请求的时间区间 - -cachedSet = 本地已缓存的时间区间 - -targetSet = requestSet - cachedSet = 新的时间区间 - -若targetSet为空集,则直接走缓存,否则拉取targetSet时间区间的消费情况并加入本地缓存 - -### 缓存层存储设计 - -所有交易记录的索引,记录所有的交易时间,需要保证有序 - -+ /expense/transactionTsList - -所有交易记录 - -+ /expense/transactions/:id - - id为主键,不能重复,可认为交易时间不会重复,故可选用交易时间的时间戳的hex为主键 - -已缓存的时间区间 - -由于可能用户在某一段时间区间内确实未进行消费,故这里必须持久化存储已缓存的时间区间 - -+ /expense/cachedTsRange/start - -+ /expense/cachedTsRange/end - -### 代码结构设计 - -建立抽象的Fetch接口,Remote层实现Fetch接口来拉取数据,Cache层也需要实现Fetch接口来拉取数据。 - -Storage层用来封装抽象`缓存层存储设计`的接口和实现。 - -Cache层的类构造函数需要传入`Remote层Fetch接口实现`和`持久化存储接口实现`。 - -Cache层自身也作为一个Fetch接口的实现,其中的fetch方法需要基于remote层与持久化层编写缓存策略的代码逻辑,体现了一种装饰器模式的思想。 - -## Display - -Transactions are page-split by month to display with an endless lazy column. - diff --git a/lib/life/expense_records/aggregated.dart b/lib/life/expense_records/aggregated.dart deleted file mode 100644 index 014032236..000000000 --- a/lib/life/expense_records/aggregated.dart +++ /dev/null @@ -1,66 +0,0 @@ -import 'package:sit/settings/dev.dart'; - -import 'entity/local.dart'; -import 'init.dart'; - -class ExpenseAggregated { - static Future fetchAndSaveTransactionUntilNow({ - required String oaAccount, - }) async { - final override = Dev.expenseUserOverride; - if (override != null) { - oaAccount = override; - } - final storage = ExpenseRecordsInit.storage; - final now = DateTime.now(); - final start = now.copyWith(year: now.year - 6); - final newlyFetched = await ExpenseRecordsInit.service.fetch( - studentID: oaAccount, - from: start, - to: now, - ); - storage.lastUpdateTime = DateTime.now(); - final oldTsList = storage.transactionTsList ?? const []; - final newTsList = {...newlyFetched.map((e) => e.timestamp), ...oldTsList}.toList(); - // the latest goes first - newTsList.sort((a, b) => -a.compareTo(b)); - for (final transaction in newlyFetched) { - storage.setTransactionByTs(transaction.timestamp, transaction); - } - storage.transactionTsList = newTsList; - final latest = newlyFetched.firstOrNull; - if (latest != null) { - final latestValidBalance = _findLatestValidBalanceTransaction(newlyFetched, newTsList); - // check if the transaction is kept for topping up - if (latestValidBalance != null) { - storage.lastTransaction = latest.copyWith( - balanceBefore: latestValidBalance.balanceBefore, - balanceAfter: latestValidBalance.balanceAfter, - ); - } else { - storage.lastTransaction = latest; - } - } - } - - /// [newlyFetched] is descending by time. - static Transaction? _findLatestValidBalanceTransaction(List newlyFetched, List allTsList) { - for (final transaction in newlyFetched) { - if (transaction.type != TransactionType.topUp && - transaction.balanceBefore != 0 && - transaction.balanceAfter != 0) { - return transaction; - } - } - for (final ts in allTsList) { - final transaction = ExpenseRecordsInit.storage.getTransactionByTs(ts); - if (transaction == null) continue; - if (transaction.type != TransactionType.topUp && - transaction.balanceBefore != 0 && - transaction.balanceAfter != 0) { - return transaction; - } - } - return null; - } -} diff --git a/lib/life/expense_records/entity/local.dart b/lib/life/expense_records/entity/local.dart deleted file mode 100644 index 32ead0dc4..000000000 --- a/lib/life/expense_records/entity/local.dart +++ /dev/null @@ -1,128 +0,0 @@ -import 'dart:convert'; - -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/storage/hive/type_id.dart'; -import 'package:unicons/unicons.dart'; - -import 'remote.dart'; - -part 'local.g.dart'; - -@HiveType(typeId: CacheHiveType.expenseTransaction) -@CopyWith(skipFields: true) -class Transaction { - /// The compound of [TransactionRaw.date] and [TransactionRaw.time]. - @HiveField(0) - final DateTime timestamp; - - /// [TransactionRaw.customerId] - @HiveField(1) - final int consumerId; - - @HiveField(2) - final TransactionType type; - @HiveField(3) - final double balanceBefore; - @HiveField(4) - final double balanceAfter; - - /// It's absolute - @HiveField(5) - final double deltaAmount; - @HiveField(6) - final String deviceName; - @HiveField(7) - final String note; - - const Transaction({ - required this.timestamp, - required this.consumerId, - required this.type, - required this.balanceBefore, - required this.balanceAfter, - required this.deltaAmount, - required this.deviceName, - required this.note, - }); - - @override - String toString() { - return jsonEncode({ - "timestamp": timestamp.toString(), - "consumerId": consumerId, - "type": type.toString(), - "balanceBefore": balanceBefore, - "balanceAfter": balanceAfter, - "deltaAmount": deltaAmount, - "deviceName": deviceName, - "note": note, - }); - } -} - -final _textInBrackets = RegExp(r'\([^)]*\)'); - -extension TransactionX on Transaction { - bool get isConsume => - (balanceAfter - balanceBefore) < 0 && type != TransactionType.topUp && type != TransactionType.subsidy; - - String? get bestTitle { - return deviceName.isNotEmpty - ? deviceName - : note.isNotEmpty - ? note - : null; - } - - String shortDeviceName() { - return deviceName.replaceAll(_textInBrackets, ''); - } - - Color get billColor => isConsume ? Colors.redAccent : Colors.green; - - String toReadableString() { - if (deltaAmount == 0) { - return deltaAmount.toStringAsFixed(2); - } else { - return "${isConsume ? '-' : '+'}${deltaAmount.toStringAsFixed(2)}"; - } - } -} - -@HiveType(typeId: CacheHiveType.expenseTransactionType) -enum TransactionType { - @HiveField(0) - water((UniconsLine.water_glass, Color(0xff8acde1)), isConsume: true), - @HiveField(1) - shower((Icons.shower_outlined, Color(0xFF2196F3)), isConsume: true), - @HiveField(2) - food((Icons.restaurant, Color(0xffe78d32)), isConsume: true), - @HiveField(3) - store((Icons.store_outlined, Color(0xFF0DAB30)), isConsume: true), - @HiveField(4) - topUp((Icons.savings, Colors.blue), isConsume: false), - @HiveField(5) - subsidy((Icons.handshake_outlined, Color(0xffdd2e22)), isConsume: false), - @HiveField(6) - coffee((Icons.coffee_rounded, Color(0xFF6F4E37)), isConsume: true), - @HiveField(7) - library((Icons.import_contacts_outlined, Color(0xffa75f1d)), isConsume: true), - @HiveField(8) - other((Icons.menu_rounded, Colors.grey), isConsume: true); - - final bool isConsume; - final (IconData icon, Color) style; - - IconData get icon => style.$1; - - Color get color => style.$2; - - const TransactionType( - this.style, { - required this.isConsume, - }); - - String l10n() => "expenseRecords.type.$name".tr(); -} diff --git a/lib/life/expense_records/entity/local.g.dart b/lib/life/expense_records/entity/local.g.dart deleted file mode 100644 index cafde43c6..000000000 --- a/lib/life/expense_records/entity/local.g.dart +++ /dev/null @@ -1,222 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'local.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$TransactionCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Transaction(...).copyWith(id: 12, name: "My name") - /// ```` - Transaction call({ - DateTime? timestamp, - int? consumerId, - TransactionType? type, - double? balanceBefore, - double? balanceAfter, - double? deltaAmount, - String? deviceName, - String? note, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfTransaction.copyWith(...)`. -class _$TransactionCWProxyImpl implements _$TransactionCWProxy { - const _$TransactionCWProxyImpl(this._value); - - final Transaction _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// Transaction(...).copyWith(id: 12, name: "My name") - /// ```` - Transaction call({ - Object? timestamp = const $CopyWithPlaceholder(), - Object? consumerId = const $CopyWithPlaceholder(), - Object? type = const $CopyWithPlaceholder(), - Object? balanceBefore = const $CopyWithPlaceholder(), - Object? balanceAfter = const $CopyWithPlaceholder(), - Object? deltaAmount = const $CopyWithPlaceholder(), - Object? deviceName = const $CopyWithPlaceholder(), - Object? note = const $CopyWithPlaceholder(), - }) { - return Transaction( - timestamp: timestamp == const $CopyWithPlaceholder() || timestamp == null - ? _value.timestamp - // ignore: cast_nullable_to_non_nullable - : timestamp as DateTime, - consumerId: consumerId == const $CopyWithPlaceholder() || consumerId == null - ? _value.consumerId - // ignore: cast_nullable_to_non_nullable - : consumerId as int, - type: type == const $CopyWithPlaceholder() || type == null - ? _value.type - // ignore: cast_nullable_to_non_nullable - : type as TransactionType, - balanceBefore: balanceBefore == const $CopyWithPlaceholder() || balanceBefore == null - ? _value.balanceBefore - // ignore: cast_nullable_to_non_nullable - : balanceBefore as double, - balanceAfter: balanceAfter == const $CopyWithPlaceholder() || balanceAfter == null - ? _value.balanceAfter - // ignore: cast_nullable_to_non_nullable - : balanceAfter as double, - deltaAmount: deltaAmount == const $CopyWithPlaceholder() || deltaAmount == null - ? _value.deltaAmount - // ignore: cast_nullable_to_non_nullable - : deltaAmount as double, - deviceName: deviceName == const $CopyWithPlaceholder() || deviceName == null - ? _value.deviceName - // ignore: cast_nullable_to_non_nullable - : deviceName as String, - note: note == const $CopyWithPlaceholder() || note == null - ? _value.note - // ignore: cast_nullable_to_non_nullable - : note as String, - ); - } -} - -extension $TransactionCopyWith on Transaction { - /// Returns a callable class that can be used as follows: `instanceOfTransaction.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$TransactionCWProxy get copyWith => _$TransactionCWProxyImpl(this); -} - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class TransactionAdapter extends TypeAdapter { - @override - final int typeId = 51; - - @override - Transaction read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Transaction( - timestamp: fields[0] as DateTime, - consumerId: fields[1] as int, - type: fields[2] as TransactionType, - balanceBefore: fields[3] as double, - balanceAfter: fields[4] as double, - deltaAmount: fields[5] as double, - deviceName: fields[6] as String, - note: fields[7] as String, - ); - } - - @override - void write(BinaryWriter writer, Transaction obj) { - writer - ..writeByte(8) - ..writeByte(0) - ..write(obj.timestamp) - ..writeByte(1) - ..write(obj.consumerId) - ..writeByte(2) - ..write(obj.type) - ..writeByte(3) - ..write(obj.balanceBefore) - ..writeByte(4) - ..write(obj.balanceAfter) - ..writeByte(5) - ..write(obj.deltaAmount) - ..writeByte(6) - ..write(obj.deviceName) - ..writeByte(7) - ..write(obj.note); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is TransactionAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class TransactionTypeAdapter extends TypeAdapter { - @override - final int typeId = 50; - - @override - TransactionType read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return TransactionType.water; - case 1: - return TransactionType.shower; - case 2: - return TransactionType.food; - case 3: - return TransactionType.store; - case 4: - return TransactionType.topUp; - case 5: - return TransactionType.subsidy; - case 6: - return TransactionType.coffee; - case 7: - return TransactionType.library; - case 8: - return TransactionType.other; - default: - return TransactionType.water; - } - } - - @override - void write(BinaryWriter writer, TransactionType obj) { - switch (obj) { - case TransactionType.water: - writer.writeByte(0); - break; - case TransactionType.shower: - writer.writeByte(1); - break; - case TransactionType.food: - writer.writeByte(2); - break; - case TransactionType.store: - writer.writeByte(3); - break; - case TransactionType.topUp: - writer.writeByte(4); - break; - case TransactionType.subsidy: - writer.writeByte(5); - break; - case TransactionType.coffee: - writer.writeByte(6); - break; - case TransactionType.library: - writer.writeByte(7); - break; - case TransactionType.other: - writer.writeByte(8); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is TransactionTypeAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/life/expense_records/entity/remote.dart b/lib/life/expense_records/entity/remote.dart deleted file mode 100644 index 2e777ae58..000000000 --- a/lib/life/expense_records/entity/remote.dart +++ /dev/null @@ -1,89 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; - -part 'remote.g.dart'; - -/// The analysis of expense tracker is [here](https://github.com/SIT-kite/expense-tracker). -@JsonSerializable(createToJson: false) -class DataPackRaw { - @JsonKey(name: "retcode") - final int code; - @JsonKey(name: "retcount") - final int count; - @JsonKey(name: "retdata") - final List transactions; - @JsonKey(name: "retmsg") - final String message; - - const DataPackRaw({ - required this.code, - required this.count, - required this.transactions, - required this.message, - }); - - factory DataPackRaw.fromJson(Map json) => _$DataPackRawFromJson(json); -} - -@JsonSerializable(createToJson: false) -class TransactionRaw { - /// transaction name - /// example: "pos消费", "支付宝充值", "补助领取", "批量销户" or "卡冻结", "余额转移", "下发补助" or "补助撤销" - @JsonKey(name: "transname") - final String name; - - /// example: "20221102" - /// transaction data - /// format: yyyymmdd - @JsonKey(name: "transdate") - final String date; - - /// transaction time - /// example: "114745" - /// format: hhmmss - @JsonKey(name: "transtime") - final String time; - - /// customer id - /// example: 11045158 - @JsonKey(name: "custid") - final int customerId; - - /// transaction flag - @JsonKey(name: "transflag") - final int flag; - - /// card before balance - /// example: 76.5 - @JsonKey(name: "cardbefbal") - final double balanceBeforeTransaction; - - /// card after balance - /// example: 70.5 - @JsonKey(name: "cardaftbal") - final double balanceAfterTransaction; - - /// the amount of this transaction performed - /// It's absolute. - /// example: 6 - @JsonKey(name: "amount") - final double amount; - - /// device name - /// example: "奉贤一食堂一楼汇多pos4(新)", "多媒体-3-4号楼", "上海应用技术学院" - @JsonKey(name: "devicename") - final String? deviceName; - - const TransactionRaw({ - required this.date, - required this.time, - required this.customerId, - required this.flag, - required this.balanceBeforeTransaction, - required this.balanceAfterTransaction, - required this.amount, - required this.deviceName, - required this.name, - }); - - factory TransactionRaw.fromJson(Map json) => _$TransactionRawFromJson(json); -} diff --git a/lib/life/expense_records/entity/remote.g.dart b/lib/life/expense_records/entity/remote.g.dart deleted file mode 100644 index c547016d3..000000000 --- a/lib/life/expense_records/entity/remote.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'remote.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -DataPackRaw _$DataPackRawFromJson(Map json) => DataPackRaw( - code: (json['retcode'] as num).toInt(), - count: (json['retcount'] as num).toInt(), - transactions: - (json['retdata'] as List).map((e) => TransactionRaw.fromJson(e as Map)).toList(), - message: json['retmsg'] as String, - ); - -TransactionRaw _$TransactionRawFromJson(Map json) => TransactionRaw( - date: json['transdate'] as String, - time: json['transtime'] as String, - customerId: (json['custid'] as num).toInt(), - flag: (json['transflag'] as num).toInt(), - balanceBeforeTransaction: (json['cardbefbal'] as num).toDouble(), - balanceAfterTransaction: (json['cardaftbal'] as num).toDouble(), - amount: (json['amount'] as num).toDouble(), - deviceName: json['devicename'] as String?, - name: json['transname'] as String, - ); diff --git a/lib/life/expense_records/entity/statistics.dart b/lib/life/expense_records/entity/statistics.dart deleted file mode 100644 index 76ac0fa3d..000000000 --- a/lib/life/expense_records/entity/statistics.dart +++ /dev/null @@ -1,105 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/utils/date.dart'; - -import 'local.dart'; - -typedef StartTime2Records = List<({DateTime start, List records})>; - -enum StatisticsMode { - day, - week, - month, - year; - - StatisticsMode get downgrade { - if (this == day) throw RangeError.range(0, 1, StatisticsMode.values.length); - return StatisticsMode.values[index - 1]; - } - - const StatisticsMode(); - - /// Resort the records, separate them by start time, and sort them in DateTime ascending order. - StartTime2Records resort(List records) { - switch (this) { - case StatisticsMode.day: - final d2records = records.groupListsBy((r) => (r.timestamp.year, r.timestamp.month, r.timestamp.day)); - final startTime2Records = d2records.entries - .map((entry) => (start: DateTime(entry.key.$1, entry.key.$2, entry.key.$3), records: entry.value)) - .toList(); - startTime2Records.sortBy((r) => r.start); - return startTime2Records; - case StatisticsMode.week: - final ym2records = records.groupListsBy((r) => (r.timestamp.year, r.timestamp.week)); - final startTime2Records = ym2records.entries - .map((entry) => - (start: getDateOfFirstDayInWeek(year: entry.key.$1, week: entry.key.$2), records: entry.value)) - .toList(); - startTime2Records.sortBy((r) => r.start); - return startTime2Records; - case StatisticsMode.month: - final ym2records = records.groupListsBy((r) => (r.timestamp.year, r.timestamp.month)); - final startTime2Records = ym2records.entries - .map((entry) => (start: DateTime(entry.key.$1, entry.key.$2), records: entry.value)) - .toList(); - startTime2Records.sortBy((r) => r.start); - return startTime2Records; - case StatisticsMode.year: - final ym2records = records.groupListsBy((r) => r.timestamp.year); - final startTime2Records = - ym2records.entries.map((entry) => (start: DateTime(entry.key), records: entry.value)).toList(); - startTime2Records.sortBy((r) => r.start); - return startTime2Records; - } - } - - DateTime getAfterUnitTime({ - required DateTime start, - DateTime? endLimit, - }) { - var end = switch (this) { - StatisticsMode.day => start.copyWith( - day: start.day, - hour: 23, - minute: 59, - second: 59, - ), - StatisticsMode.week => start.copyWith( - day: start.day + 6, - hour: 23, - minute: 59, - second: 59, - ), - StatisticsMode.month => start.copyWith( - day: daysInMonth(year: start.month, month: start.month), - hour: 23, - minute: 59, - second: 59, - ), - StatisticsMode.year => start.copyWith( - month: 12, - day: daysInMonth(year: start.month, month: start.month), - hour: 23, - minute: 59, - second: 59, - ) - }; - if (endLimit != null && endLimit.isBefore(end)) { - end = endLimit; - } - return end; - } - - String formatDate(DateTime date) { - final local = $key.currentContext?.locale.toString(); - return switch (this) { - StatisticsMode.day => DateFormat.MMMMd(local).format(date), - StatisticsMode.week => DateFormat.MMMMd(local).format(date), - StatisticsMode.month => DateFormat.MMMMd(local).format(date), - StatisticsMode.year => DateFormat.MMMM(local).format(date), - }; - } - - String l10nName() => "expenseRecords.statsMode.$name".tr(); -} diff --git a/lib/life/expense_records/i18n.dart b/lib/life/expense_records/i18n.dart deleted file mode 100644 index d1bedc077..000000000 --- a/lib/life/expense_records/i18n.dart +++ /dev/null @@ -1,104 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -import 'entity/local.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "expenseRecords"; - final unit = const UnitI18n(); - final stats = const _Stats(); - final view = const _View(); - - String get title => "$ns.title".tr(); - - String get noTransactionsTip => "$ns.noTransactionsTip".tr(); - - String get refreshSuccessTip => "$ns.refreshSuccessTip".tr(); - - String get refreshFailedTip => "$ns.refreshFailedTip".tr(); - - String get list => "$ns.list".tr(); - - String get statistics => "$ns.statistics".tr(); - - String balanceInCard(String amount) => "$ns.balanceInCard".tr(args: [amount]); - - String lastTransaction(String amount, String place) => "$ns.lastTransaction".tr(namedArgs: { - "amount": amount, - "place": place, - }); - - String income(String amount) => "$ns.income".tr(args: [amount]); - - String outcome(String amount) => "$ns.outcome".tr(args: [amount]); - - String lastUpdateTime(String time) => "$ns.lastUpdateTime".tr(args: [time]); -} - -class _Stats { - const _Stats(); - - static const ns = "${_I18n.ns}.stats"; - - String get title => "$ns.title".tr(); - - String get total => "$ns.total".tr(); - - String get summary => "$ns.summary".tr(); - - String get details => "$ns.details".tr(); - - String averageSpendIn({ - required String amount, - required TransactionType type, - }) => - "$ns.averageSpendIn".tr(namedArgs: { - "amount": amount, - "type": type.l10n(), - }); - - String maxSpendOf({ - required String amount, - }) => - "$ns.maxSpendOf".tr(namedArgs: { - "amount": amount, - }); - - String get averageLineLabel => "$ns.averageLineLabel".tr(); - - String get hourlyAverage => "$ns.hourlyAverage".tr(); - - String get dailyAverage => "$ns.dailyAverage".tr(); - - String get monthlyAverage => "$ns.monthlyAverage".tr(); - - String get today => "$ns.today".tr(); - - String get yesterday => "$ns.yesterday".tr(); - - String get thisWeek => "$ns.thisWeek".tr(); - - String get lastWeek => "$ns.lastWeek".tr(); - - String get thisMonth => "$ns.thisMonth".tr(); - - String get lastMonth => "$ns.lastMonth".tr(); - - String get thisYear => "$ns.thisYear".tr(); - - String get lastYear => "$ns.lastYear".tr(); -} - -class _View { - const _View(); - - static const ns = "${_I18n.ns}.view"; - - String get balance => "$ns.balance".tr(); - - String get rmb => "$ns.rmb".tr(); -} diff --git a/lib/life/expense_records/index.dart b/lib/life/expense_records/index.dart deleted file mode 100644 index d45c7f970..000000000 --- a/lib/life/expense_records/index.dart +++ /dev/null @@ -1,114 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/life/event.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/life/expense_records/init.dart'; -import 'package:sit/utils/async_event.dart'; -import 'aggregated.dart'; -import 'widget/balance.dart'; -import 'package:rettulf/rettulf.dart'; - -import "i18n.dart"; -import 'widget/transaction.dart'; - -class ExpenseRecordsAppCard extends ConsumerStatefulWidget { - const ExpenseRecordsAppCard({super.key}); - - @override - ConsumerState createState() => _ExpenseRecordsAppCardState(); -} - -class _ExpenseRecordsAppCardState extends ConsumerState { - late final EventSubscription $refreshEvent; - - @override - void initState() { - $refreshEvent = lifeEventBus.addListener(() async { - await refresh(active: true); - }); - super.initState(); - } - - @override - void didChangeDependencies() { - super.didChangeDependencies(); - if (Settings.life.expense.autoRefresh) { - refresh(active: false); - } - } - - @override - void dispose() { - $refreshEvent.cancel(); - super.dispose(); - } - - void onLatestChanged() { - setState(() {}); - } - - Future refresh({required bool active}) async { - final credentials = ref.read(CredentialsInit.storage.$oaCredentials); - if (credentials == null) return; - try { - await ExpenseAggregated.fetchAndSaveTransactionUntilNow( - oaAccount: credentials.account, - ); - } catch (error) { - if (active) { - if (!mounted) return; - context.showSnackBar(content: i18n.refreshFailedTip.text()); - } - return; - } - if (active) { - if (!mounted) return; - context.showSnackBar(content: i18n.refreshSuccessTip.text()); - } - } - - @override - Widget build(BuildContext context) { - final storage = ExpenseRecordsInit.storage; - final lastUpdateTime = ref.watch(storage.$lastUpdateTime); - final lastTransaction = ref.watch(storage.$lastTransaction); - return AppCard( - view: lastTransaction == null - ? const SizedBox() - : [ - BalanceCard( - balance: lastTransaction.balanceAfter, - ).expanded(), - TransactionCard( - transaction: lastTransaction, - ).expanded(), - ].row().sized(h: 140), - title: i18n.title.text(), - subtitle: lastUpdateTime != null ? i18n.lastUpdateTime(context.formatMdhmNum(lastUpdateTime)).text() : null, - leftActions: [ - FilledButton.icon( - icon: const Icon(Icons.assignment), - onPressed: () async { - context.push("/expense-records"); - }, - label: i18n.list.text(), - ), - OutlinedButton( - onPressed: lastTransaction == null - ? null - : () async { - context.push("/expense-records/statistics"); - }, - child: i18n.statistics.text(), - ), - ], - ); - } -} diff --git a/lib/life/expense_records/init.dart b/lib/life/expense_records/init.dart deleted file mode 100644 index 3136681e6..000000000 --- a/lib/life/expense_records/init.dart +++ /dev/null @@ -1,18 +0,0 @@ -import 'package:sit/settings/dev.dart'; - -import 'service/fetch.dart'; -import 'service/fetch.demo.dart'; -import 'storage/local.dart'; - -class ExpenseRecordsInit { - static late ExpenseService service; - static late ExpenseStorage storage; - - static void init() { - service = Dev.demoMode ? const DemoExpenseService() : const ExpenseService(); - } - - static void initStorage() { - storage = ExpenseStorage(); - } -} diff --git a/lib/life/expense_records/page/records.dart b/lib/life/expense_records/page/records.dart deleted file mode 100644 index c31a0060d..000000000 --- a/lib/life/expense_records/page/records.dart +++ /dev/null @@ -1,132 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/life/expense_records/storage/local.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/life/expense_records/widget/group.dart'; -import 'package:sit/utils/error.dart'; - -import '../aggregated.dart'; -import '../entity/local.dart'; -import '../init.dart'; -import '../i18n.dart'; -import '../utils.dart'; - -class ExpenseRecordsPage extends ConsumerStatefulWidget { - const ExpenseRecordsPage({super.key}); - - @override - ConsumerState createState() => _ExpenseRecordsPageState(); -} - -class _ExpenseRecordsPageState extends ConsumerState { - bool isFetching = false; - List? records; - List<({YearMonth time, List records})>? month2records; - - @override - void initState() { - super.initState(); - updateRecords(ExpenseRecordsInit.storage.getTransactionsByRange()); - } - - void updateRecords(List? records) { - if (!mounted) return; - setState(() { - this.records = records; - month2records = records == null ? null : groupTransactionsByMonthYear(records); - }); - } - - Future refresh() async { - final credentials = ref.read(CredentialsInit.storage.$oaCredentials); - if (credentials == null) return; - if (!mounted) return; - setState(() { - isFetching = true; - }); - try { - await ExpenseAggregated.fetchAndSaveTransactionUntilNow( - oaAccount: credentials.account, - ); - updateRecords(ExpenseRecordsInit.storage.getTransactionsByRange()); - setState(() { - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final storage = ExpenseRecordsInit.storage; - final month2records = this.month2records; - final lastTransaction = ref.watch(storage.$lastTransaction); - return Scaffold( - appBar: AppBar( - title: lastTransaction == null - ? i18n.title.text() - : i18n.balanceInCard(lastTransaction.balanceAfter.toStringAsFixed(2)).text(), - actions: [ - PlatformIconButton( - material: (ctx, p) { - return MaterialIconButtonData( - tooltip: i18n.delete, - ); - }, - icon: Icon(context.icons.delete), - onPressed: () async { - ExpenseRecordsInit.storage.clearIndex(); - await HapticFeedback.heavyImpact(); - updateRecords(null); - }, - ), - ], - centerTitle: true, - bottom: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - body: RefreshIndicator.adaptive( - onRefresh: () async { - await HapticFeedback.heavyImpact(); - await refresh(); - }, - child: CustomScrollView( - slivers: [ - if (month2records == null || month2records.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noTransactionsTip, - ), - ) - else - ...month2records.mapIndexed( - (index, e) { - return TransactionGroupSection( - // expand records in the first month by default. - initialExpanded: index == 0, - time: e.time, - records: e.records, - ); - }, - ), - ], - ), - ), - ); - } -} diff --git a/lib/life/expense_records/page/statistics.dart b/lib/life/expense_records/page/statistics.dart deleted file mode 100644 index 81851a383..000000000 --- a/lib/life/expense_records/page/statistics.dart +++ /dev/null @@ -1,218 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/grouped.dart'; -import 'package:sit/life/expense_records/entity/statistics.dart'; -import 'package:sit/life/expense_records/storage/local.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/life/expense_records/utils.dart'; -import 'package:sit/utils/collection.dart'; -import 'package:sit/utils/date.dart'; -import 'package:statistics/statistics.dart'; - -import '../entity/local.dart'; -import '../i18n.dart'; -import '../init.dart'; -import '../widget/chart/bar.dart'; -import '../widget/chart/delegate.dart'; -import '../widget/chart/header.dart'; -import '../widget/chart/pie.dart'; -import '../widget/transaction.dart'; - -class ExpenseStatisticsPage extends ConsumerStatefulWidget { - const ExpenseStatisticsPage({super.key}); - - @override - ConsumerState createState() => _ExpenseStatisticsPageState(); -} - -typedef Type2transactions = Map records, double total, double proportion})>; - -final _allRecords = Provider.autoDispose((ref) { - final all = ExpenseRecordsInit.storage.getTransactionsByRange() ?? const []; - all.retainWhere((record) => record.type.isConsume); - return all; -}); - -final _statisticsMode = StateProvider.autoDispose((ref) => StatisticsMode.week); - -final _startTime2Records = Provider.autoDispose((ref) { - final mode = ref.watch(_statisticsMode); - final all = ref.watch(_allRecords); - return mode.resort(all); -}); - -class _ExpenseStatisticsPageState extends ConsumerState { - late int index = ref.read(_startTime2Records).length - 1; - final controller = ScrollController(); - final $showTimeSpan = ValueNotifier(false); - - @override - void initState() { - super.initState(); - controller.addListener(() { - final pos = controller.positions.last; - final showTimeSpan = $showTimeSpan.value; - if (pos.pixels > pos.minScrollExtent) { - if (!showTimeSpan) { - setState(() { - $showTimeSpan.value = true; - }); - } - } else { - if (showTimeSpan) { - setState(() { - $showTimeSpan.value = false; - }); - } - } - }); - } - - @override - void dispose() { - controller.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final mode = ref.watch(_statisticsMode); - final startTime2Records = ref.watch(_startTime2Records); - ref.listen(_startTime2Records, (previous, next) { - setState(() { - index = next.length - 1; - }); - }); - final current = startTime2Records.indexAt(index); - assert(current.records.every((type) => type.isConsume)); - final type2Records = current.records.groupListsBy((r) => r.type).entries.toList(); - final delegate = StatisticsDelegate.byMode( - mode, - start: current.start, - records: current.records, - ); - return Scaffold( - appBar: AppBar( - title: i18n.stats.title.text(), - ), - body: [ - CustomScrollView( - controller: controller, - physics: const AlwaysScrollableScrollPhysics(), - slivers: [ - SliverList.list(children: [ - buildModeSelector(mode).padSymmetric(h: 16, v: 4), - ExpenseBarChart(delegate: delegate), - const Divider(), - ExpensePieChart(delegate: delegate), - const Divider(), - ExpenseChartHeaderLabel(i18n.stats.summary).padFromLTRB(16, 8, 0, 0), - ]), - SliverList.builder( - itemCount: type2Records.length, - itemBuilder: (ctx, i) { - final e = type2Records[i]; - final amounts = e.value.map((e) => e.deltaAmount).toList(); - return ExpenseAverageTile( - average: amounts.mean, - max: amounts.max, - type: e.key, - ); - }, - ), - SliverList.list(children: [ - const Divider(), - ExpenseChartHeaderLabel(i18n.stats.details).padFromLTRB(16, 8, 0, 0), - ]), - if (mode != StatisticsMode.day) - ...mode.downgrade.resort(current.records).map((e) { - return GroupedSection( - headerBuilder: (context, expanded, toggleExpand, defaultTrailing) { - return ListTile( - title: formatDateSpan( - from: e.start, - to: mode.downgrade.getAfterUnitTime(start: e.start), - ).text(), - onTap: toggleExpand, - trailing: defaultTrailing, - ); - }, - itemCount: e.records.length, - itemBuilder: (ctx, i) { - final record = e.records[i]; - return TransactionTile(record); - }, - ); - }) - else - SliverList.builder( - itemCount: current.records.length, - itemBuilder: (ctx, i) { - final record = current.records[i]; - return TransactionTile(record); - }, - ), - ], - ), - $showTimeSpan >> - (ctx, showTimeSpan) => AnimatedSlide( - offset: showTimeSpan ? Offset.zero : const Offset(0, -2), - duration: Durations.long4, - child: AnimatedSwitcher( - duration: Durations.long4, - child: showTimeSpan ? buildHeader(current.start) : null, - ), - ).align(at: Alignment.topCenter), - ].stack(), - ); - } - - Widget buildModeSelector(StatisticsMode selected) { - return SegmentedButton( - showSelectedIcon: false, - segments: StatisticsMode.values - .map((e) => ButtonSegment( - value: e, - label: e.l10nName().text(), - )) - .toList(), - selected: {selected}, - onSelectionChanged: (newSelection) { - ref.read(_statisticsMode.notifier).state = newSelection.first; - }, - ); - } - - Widget buildHeader(DateTime start) { - final startTime2Records = ref.watch(_startTime2Records); - final mode = ref.watch(_statisticsMode); - return Card.filled( - child: [ - PlatformIconButton( - onPressed: index > 0 - ? () { - setState(() { - index = index - 1; - }); - } - : null, - icon: Icon(context.icons.leftChevron), - ), - resolveTime4Display(context: context, mode: mode, date: start).text(), - PlatformIconButton( - onPressed: index < startTime2Records.length - 1 - ? () { - setState(() { - index = index + 1; - }); - } - : null, - icon: Icon(context.icons.rightChevron), - ), - ].row(maa: MainAxisAlignment.spaceBetween), - ); - } -} diff --git a/lib/life/expense_records/service/fetch.dart b/lib/life/expense_records/service/fetch.dart deleted file mode 100644 index 15dfc5bbf..000000000 --- a/lib/life/expense_records/service/fetch.dart +++ /dev/null @@ -1,72 +0,0 @@ -import 'dart:collection'; -import 'dart:convert'; - -import 'package:crypto/crypto.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/sso.dart'; - -import '../entity/local.dart'; -import '../entity/remote.dart'; -import '../utils.dart'; - -class ExpenseService { - String _al2(int v) => v < 10 ? "0$v" : "$v"; - - String _format(DateTime d) => - "${d.year}${_al2(d.month)}${_al2(d.day)}${_al2(d.hour)}${_al2(d.minute)}${_al2(d.second)}"; - - static const String magicNumber = "adc4ac6822fd462780f878b86cb94688"; - static const urlPath = "https://xgfy.sit.edu.cn/yktapi/services/querytransservice/querytrans"; - - SsoSession get _session => Init.ssoSession; - - const ExpenseService(); - - Future> fetch({ - required String studentID, - required DateTime from, - required DateTime to, - }) async { - final curTs = _format(DateTime.now()); - final fromTs = _format(from); - final toTs = _format(to); - final auth = _composeAuth(studentID, fromTs, toTs, curTs); - - final res = await _session.request( - urlPath, - options: Options( - contentType: 'text/plain', - method: "POST", - ), - para: { - 'timestamp': curTs, - 'starttime': fromTs, - 'endtime': toTs, - 'sign': auth, - 'sign_method': 'HMAC', - 'stuempno': studentID, - }, - ); - final raw = _parseDataPack(res.data); - final list = raw.transactions.map(parseFull).toList(); - return list; - } - - DataPackRaw _parseDataPack(dynamic data) { - final res = HashMap.of(data); - final retdataRaw = res["retdata"]; - final retdata = json.decode(retdataRaw); - res["retdata"] = retdata; - return DataPackRaw.fromJson(res); - } - - String _composeAuth(String studentId, String from, String to, String cur) { - final full = studentId + from + to + cur; - final msg = utf8.encode(full); - final key = utf8.encode(magicNumber); - final hmac = Hmac(sha1, key); - return hmac.convert(msg).toString(); - } -} diff --git a/lib/life/expense_records/service/fetch.demo.dart b/lib/life/expense_records/service/fetch.demo.dart deleted file mode 100644 index d76b077f8..000000000 --- a/lib/life/expense_records/service/fetch.demo.dart +++ /dev/null @@ -1,27 +0,0 @@ -import '../entity/local.dart'; -import 'fetch.dart'; - -class DemoExpenseService implements ExpenseService { - const DemoExpenseService(); - - @override - Future> fetch({ - required String studentID, - required DateTime from, - required DateTime to, - }) async { - return [ - Transaction( - timestamp: DateTime.now(), - consumerId: 99999, - type: TransactionType.food, - balanceBefore: 99.99, - balanceAfter: 69.99, - deltaAmount: 30.00, - // TODO: l10n - deviceName: "小应生活食堂", - note: "", - ), - ]; - } -} diff --git a/lib/life/expense_records/storage/local.dart b/lib/life/expense_records/storage/local.dart deleted file mode 100644 index ae7371edb..000000000 --- a/lib/life/expense_records/storage/local.dart +++ /dev/null @@ -1,93 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/local.dart'; - -class _K { - static const transactionTsList = '/transactionTsList'; - - static String transaction(DateTime timestamp) { - final id = (timestamp.millisecondsSinceEpoch ~/ 1000).toRadixString(16); - return '/transactions/$id'; - } - - // Don't use lastFetchedTs, and just fetch all translations - // static const lastFetchedTs = "/lastFetchedTs"; - static const lastTransaction = "/lastTransaction"; - static const lastUpdateTime = "/lastUpdateTime"; -} - -class ExpenseStorage { - Box get box => HiveInit.expense; - - ExpenseStorage(); - - /// 所有交易记录的索引,记录所有的交易时间,需要保证有序,以实现二分查找 - List? get transactionTsList => box.safeGet(_K.transactionTsList)?.cast(); - - set transactionTsList(List? newV) => box.safePut(_K.transactionTsList, newV); - - ValueListenable listenTransactionTsList() => box.listenable(keys: [_K.transactionTsList]); - - /// 通过某个时刻来获得交易记录 - Transaction? getTransactionByTs(DateTime ts) => box.safeGet(_K.transaction(ts)); - - setTransactionByTs(DateTime ts, Transaction? transaction) => - box.safePut(_K.transaction(ts), transaction); - - Transaction? get lastTransaction => box.safeGet(_K.lastTransaction); - - set lastTransaction(Transaction? v) => box.safePut(_K.lastTransaction, v); - - late final $lastTransaction = box.provider(_K.lastTransaction); - - ValueListenable listenLastTransaction() => box.listenable(keys: [_K.lastTransaction]); - - DateTime? get lastUpdateTime => box.safeGet(_K.lastUpdateTime); - - set lastUpdateTime(DateTime? newV) => box.safePut(_K.lastUpdateTime, newV); - - late final $lastUpdateTime = box.provider(_K.lastUpdateTime); - - ValueListenable listenLastUpdateTime() => box.listenable(keys: [_K.lastUpdateTime]); -} - -extension ExpenseStorageX on ExpenseStorage { - void clearIndex() { - transactionTsList = null; - lastTransaction = null; - } - - /// Gets the transaction timestamps in range of start to end. - /// [start] is inclusive. - /// [end] is exclusive. - List? getTransactionTsByRange({ - DateTime? start, - DateTime? end, - }) { - final list = transactionTsList; - if (list == null) return null; - if (start == null && end == null) return list; - return list - .where((e) => start == null || e == start || e.isAfter(start)) - .where((e) => end == null || e.isBefore(end)) - .toList(); - } - - List? getTransactionsByRange({ - DateTime? start, - DateTime? end, - }) { - final timestamps = getTransactionTsByRange(start: start, end: end); - if (timestamps == null) return null; - final transactions = []; - for (final ts in timestamps) { - final transaction = getTransactionByTs(ts); - assert(transaction != null, "$ts has no transaction"); - if (transaction != null) transactions.add(transaction); - } - return transactions; - } -} diff --git a/lib/life/expense_records/utils.dart b/lib/life/expense_records/utils.dart deleted file mode 100644 index 53b5aff15..000000000 --- a/lib/life/expense_records/utils.dart +++ /dev/null @@ -1,199 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/widgets.dart'; -import 'package:intl/intl.dart'; -import 'package:sit/life/expense_records/entity/local.dart'; - -import 'package:sit/school/utils.dart'; -import 'package:sit/utils/date.dart'; - -import 'entity/remote.dart'; -import 'entity/statistics.dart'; -import 'i18n.dart'; - -const deviceName2Type = { - '开水': TransactionType.water, - '浴室': TransactionType.shower, - '咖啡吧': TransactionType.coffee, - '食堂': TransactionType.food, - '超市': TransactionType.store, - '图书馆': TransactionType.library, -}; - -TransactionType parseType(Transaction trans) { - if (trans.note.contains("补助")) { - return TransactionType.subsidy; - } else if (trans.note.contains("充值") || trans.note.contains("余额转移") || !trans.isConsume) { - return TransactionType.topUp; - } else if (trans.note.contains("消费") || trans.isConsume) { - for (MapEntry entry in deviceName2Type.entries) { - String name = entry.key; - TransactionType type = entry.value; - if (trans.deviceName.contains(name)) { - return type; - } - } - } - return TransactionType.other; -} - -Transaction parseFull(TransactionRaw raw) { - final transaction = Transaction( - timestamp: parseDatetime(raw), - balanceBefore: raw.balanceBeforeTransaction, - balanceAfter: raw.balanceAfterTransaction, - deltaAmount: raw.amount.abs(), - deviceName: mapChinesePunctuations(raw.deviceName ?? ""), - note: raw.name, - consumerId: raw.customerId, - type: TransactionType.other, - ); - return transaction.copyWith( - type: parseType(transaction), - ); -} - -DateTime parseDatetime(TransactionRaw raw) { - final date = raw.date; - final year = int.parse(date.substring(0, 4)); - final month = int.parse(date.substring(4, 6)); - final day = int.parse(date.substring(6, 8)); - - final time = raw.time; - final hour = int.parse(time.substring(0, 2)); - final min = int.parse(time.substring(2, 4)); - final sec = int.parse(time.substring(4, 6)); - return DateTime(year, month, day, hour, min, sec); -} - -typedef YearMonth = ({int year, int month}); - -extension YearMonthX on YearMonth { - int compareTo(YearMonth other, {bool ascending = true}) { - final sign = ascending ? 1 : -1; - return switch (this.year - other.year) { - > 0 => 1 * sign, - < 0 => -1 * sign, - _ => switch (this.month - other.month) { - > 0 => 1 * sign, - < 0 => -1 * sign, - _ => 0, - } - }; - } - - DateTime toDateTime() => DateTime(year, month); -} - -List<({YearMonth time, List records})> groupTransactionsByMonthYear( - List records, -) { - final groupByYearMonth = records - .groupListsBy((r) => (year: r.timestamp.year, month: r.timestamp.month)) - .entries - // the latest goes first - .map((e) => (time: e.key, records: e.value.sorted((a, b) => -a.timestamp.compareTo(b.timestamp)))) - .toList(); - groupByYearMonth.sort((a, b) => a.time.compareTo(b.time, ascending: false)); - return groupByYearMonth; -} - -bool validateTransaction(Transaction t) { - if (t.type == TransactionType.topUp) { - return false; - } - return true; -} - -/// Accumulates the income and outcome. -/// Ignores invalid transactions by [validateTransaction]. -({double income, double outcome}) accumulateTransactionIncomeOutcome(List transactions) { - double income = 0; - double outcome = 0; - for (final t in transactions) { - if (!validateTransaction(t)) continue; - if (t.isConsume) { - outcome += t.deltaAmount; - } else { - income += t.deltaAmount; - } - } - return (income: income, outcome: outcome); -} - -/// Accumulates the [Transaction.deltaAmount]. -double accumulateTransactionAmount(List transactions) { - var total = 0.0; - for (final t in transactions) { - total += t.deltaAmount; - } - return total; -} - -({double total, Map records, double total})> type2Stats}) - statisticsTransactionByType( - List records, -) { - final type2transactions = records.groupListsBy((record) => record.type); - final type2total = type2transactions.map((type, records) => MapEntry(type, accumulateTransactionAmount(records))); - final total = type2total.values.sum; - return ( - total: total, - type2Stats: type2transactions.map((type, records) { - final (income: _, :outcome) = accumulateTransactionIncomeOutcome(records); - return MapEntry(type, (records: records, total: outcome, proportion: (type2total[type] ?? 0) / total)); - }) - ); -} - -String resolveTime4Display({ - required BuildContext context, - required StatisticsMode mode, - required DateTime date, -}) { - final now = DateTime.now(); - switch (mode) { - case StatisticsMode.day: - final dayDiff = now.difference(date).inDays; - if (dayDiff == 0) { - return i18n.stats.today; - } else if (dayDiff == 1) { - return i18n.stats.yesterday; - } - return formatDateSpan(from: date, to: StatisticsMode.day.getAfterUnitTime(start: date)); - case StatisticsMode.week: - if (date.year == now.year) { - final nowWeek = now.week; - final dateWeek = date.week; - if (dateWeek == nowWeek) { - return i18n.stats.thisWeek; - } else if (dateWeek == nowWeek - 1) { - return i18n.stats.lastWeek; - } - } - return formatDateSpan(from: date, to: StatisticsMode.week.getAfterUnitTime(start: date)); - case StatisticsMode.month: - final yearMonthFormat = DateFormat.yMMMM(); - final monthFormat = DateFormat.MMMM(); - if (date.year == now.year) { - if (date.month == now.month) { - return i18n.stats.thisMonth; - } else if (date.month == now.month - 1) { - return i18n.stats.lastMonth; - } else { - return monthFormat.format(date); - } - } else { - return yearMonthFormat.format(date); - } - case StatisticsMode.year: - final yearFormat = DateFormat.y(); - if (date.year == now.year) { - return i18n.stats.thisYear; - } else if (date.year == now.year - 1) { - return i18n.stats.lastYear; - } else { - return yearFormat.format(date); - } - } -} diff --git a/lib/life/expense_records/widget/balance.dart b/lib/life/expense_records/widget/balance.dart deleted file mode 100644 index 37f1d1fae..000000000 --- a/lib/life/expense_records/widget/balance.dart +++ /dev/null @@ -1,55 +0,0 @@ -import 'package:auto_size_text/auto_size_text.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/animation/number.dart'; -import 'package:sit/utils/format.dart'; -import 'package:rettulf/rettulf.dart'; -import "../i18n.dart"; - -class BalanceCard extends StatelessWidget { - final double balance; - final bool removeTrailingZeros; - final double? warningBalance; - final Color warningColor; - - const BalanceCard({ - super.key, - required this.balance, - this.warningBalance = 10.0, - this.warningColor = Colors.redAccent, - this.removeTrailingZeros = false, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - final warningBalance = this.warningBalance; - final balanceColor = warningBalance == null || warningBalance < balance ? null : warningColor; - return [ - AutoSizeText( - i18n.view.balance, - style: textTheme.titleLarge, - maxLines: 1, - ), - AnimatedNumber( - value: balance, - builder: (context, balance) { - return AutoSizeText( - removeTrailingZeros ? formatWithoutTrailingZeros(balance) : balance.toStringAsFixed(2), - style: textTheme.displayMedium?.copyWith(color: balanceColor), - maxLines: 1, - ); - }), - AutoSizeText( - i18n.view.rmb, - style: textTheme.titleMedium, - maxLines: 1, - ), - ] - .column( - caa: CrossAxisAlignment.start, - maa: MainAxisAlignment.spaceEvenly, - ) - .padAll(10) - .inCard(); - } -} diff --git a/lib/life/expense_records/widget/chart/bar.dart b/lib/life/expense_records/widget/chart/bar.dart deleted file mode 100644 index c214a2a93..000000000 --- a/lib/life/expense_records/widget/chart/bar.dart +++ /dev/null @@ -1,207 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:fl_chart/fl_chart.dart'; -import 'package:flutter/material.dart'; -import 'package:intl/intl.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/date.dart'; -import 'package:sit/utils/format.dart'; - -import '../../entity/statistics.dart'; -import '../../utils.dart'; -import "../../i18n.dart"; -import 'delegate.dart'; -import 'header.dart'; - -class ExpenseBarChart extends StatefulWidget { - final StatisticsDelegate delegate; - - const ExpenseBarChart({ - super.key, - required this.delegate, - }); - - @override - State createState() => _ExpenseBarChartState(); -} - -class _ExpenseBarChartState extends State { - StatisticsDelegate get delegate => widget.delegate; - - DateTime get start => delegate.start; - - StatisticsMode get mode => delegate.mode; - - @override - Widget build(BuildContext context) { - return [ - buildChartHeader().padFromLTRB(16, 8, 0, 8), - AspectRatio( - aspectRatio: 1.5, - child: ExpenseBarChartWidget( - delegate: delegate, - ).padSymmetric(v: 12, h: 8), - ), - ].column(caa: CrossAxisAlignment.start); - } - - Widget buildChartHeader() { - final from = start; - final to = mode.getAfterUnitTime(start: start, endLimit: DateTime.now()); - return switch (mode) { - StatisticsMode.day => ExpenseChartHeader( - upper: i18n.stats.hourlyAverage, - content: "¥${delegate.average.toStringAsFixed(2)}", - lower: DateFormat.yMMMMd().format(from), - ), - StatisticsMode.year => ExpenseChartHeader( - upper: i18n.stats.monthlyAverage, - content: "¥${delegate.average.toStringAsFixed(2)}", - lower: formatDateSpan(from: from, to: to), - ), - StatisticsMode.week || StatisticsMode.month => ExpenseChartHeader( - upper: i18n.stats.dailyAverage, - content: "¥${delegate.average.toStringAsFixed(2)}", - lower: formatDateSpan(from: from, to: to), - ), - }; - } -} - -class ExpenseBarChartWidget extends StatefulWidget { - final StatisticsDelegate delegate; - - const ExpenseBarChartWidget({ - super.key, - required this.delegate, - }); - - @override - State createState() => _ExpenseBarChartWidgetState(); -} - -class _ExpenseBarChartWidgetState extends State { - StatisticsDelegate get delegate => widget.delegate; - int touchedIndex = -1; - - @override - Widget build(BuildContext context) { - return BarChart( - BarChartData( - alignment: BarChartAlignment.center, - barTouchData: BarTouchData( - enabled: true, - touchTooltipData: BarTouchTooltipData( - getTooltipItem: (group, groupIndex, rod, rodIndex) { - return BarTooltipItem( - buildToolTip(groupIndex, rod.toY), - context.textTheme.titleMedium ?? const TextStyle(), - ); - }, - getTooltipColor: (group) => context.colorScheme.surfaceVariant, - ), - touchCallback: (FlTouchEvent event, barTouchResponse) { - setState(() { - if (!event.isInterestedForInteractions || barTouchResponse == null || barTouchResponse.spot == null) { - touchedIndex = -1; - return; - } - touchedIndex = barTouchResponse.spot!.touchedBarGroupIndex; - }); - }, - ), - titlesData: FlTitlesData( - show: true, - bottomTitles: AxisTitles( - sideTitles: SideTitles( - showTitles: true, - reservedSize: 28, - getTitlesWidget: (v, meta) => delegate.bottom(context, v, meta), - ), - ), - leftTitles: AxisTitles( - sideTitles: SideTitles( - showTitles: true, - reservedSize: 60, - getTitlesWidget: (v, meta) => delegate.side(context, v, meta), - ), - ), - topTitles: const AxisTitles( - sideTitles: SideTitles(showTitles: false), - ), - rightTitles: const AxisTitles( - sideTitles: SideTitles(showTitles: false), - ), - ), - extraLinesData: ExtraLinesData( - horizontalLines: [ - if (delegate.average.isFinite) - HorizontalLine( - label: HorizontalLineLabel( - show: true, - alignment: Alignment.bottomRight, - style: context.textTheme.labelSmall, - labelResolver: (line) => i18n.stats.averageLineLabel, - ), - y: delegate.average, - strokeWidth: 3, - color: context.colorScheme.tertiary.withOpacity(0.5), - dashArray: [5, 5], - ), - ], - ), - gridData: FlGridData( - show: true, - checkToShowHorizontalLine: (value) => value % 5 == 0, - getDrawingHorizontalLine: (value) => FlLine( - color: context.colorScheme.secondary.withOpacity(0.2), - strokeWidth: 1, - ), - drawVerticalLine: false, - ), - borderData: FlBorderData( - show: false, - ), - groupsSpace: 40, - barGroups: delegate.data.mapIndexed((i, records) { - final isTouched = i == touchedIndex; - final (:total, :type2Stats) = statisticsTransactionByType(records); - var c = 0.0; - return BarChartGroupData( - x: i, - barRods: [ - BarChartRodData( - toY: total, - color: Colors.transparent, - borderSide: isTouched - ? BorderSide(color: context.colorScheme.onSurface, width: 1.5) - : const BorderSide(color: Colors.transparent, width: 0), - rodStackItems: type2Stats.entries.map((e) { - final res = BarChartRodStackItem( - c, - c + e.value.total, - e.key.color, - ); - c += e.value.total; - return res; - }).toList(), - ), - ], - ); - }).toList(), - ), - ); - } - - String buildToolTip(int index, double value) { - if (delegate.mode == StatisticsMode.day) { - return "¥${formatWithoutTrailingZeros(value)}"; - } else { - final records = delegate.data[index]; - final template = records.firstOrNull; - if (template == null) return ""; - final ts = template.timestamp; - return "${delegate.mode.formatDate(ts)}\n ¥${formatWithoutTrailingZeros(value)}"; - // return records; - } - } -} diff --git a/lib/life/expense_records/widget/chart/delegate.dart b/lib/life/expense_records/widget/chart/delegate.dart deleted file mode 100644 index a9e0c989a..000000000 --- a/lib/life/expense_records/widget/chart/delegate.dart +++ /dev/null @@ -1,226 +0,0 @@ -import 'dart:math'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:fl_chart/fl_chart.dart'; -import 'package:flutter/widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/life/expense_records/utils.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/utils/date.dart'; -import 'package:sit/utils/format.dart'; -import 'package:statistics/statistics.dart'; - -import '../../entity/local.dart'; -import '../../entity/statistics.dart'; - -class StatisticsDelegate { - final StatisticsMode mode; - final List> data; - final Map records, double total})> type2Stats; - final StartTime2Records start2Records; - final double average; - final double total; - final DateTime start; - final Widget Function(BuildContext context, double value, TitleMeta meta) side; - final Widget Function(BuildContext context, double value, TitleMeta meta) bottom; - - const StatisticsDelegate({ - required this.mode, - required this.data, - required this.type2Stats, - required this.start2Records, - required this.start, - required this.average, - required this.total, - required this.side, - required this.bottom, - }); - - factory StatisticsDelegate.byMode( - StatisticsMode mode, { - required DateTime start, - required List records, - }) { - switch (mode) { - case StatisticsMode.day: - return StatisticsDelegate.day(start: start, records: records); - case StatisticsMode.week: - return StatisticsDelegate.week(start: start, records: records); - case StatisticsMode.month: - return StatisticsDelegate.month(start: start, records: records); - case StatisticsMode.year: - return StatisticsDelegate.year(start: start, records: records); - } - } - - factory StatisticsDelegate.day({ - required DateTime start, - required List records, - }) { - final now = DateTime.now(); - final data = List.generate( - now.inTheSameDay(start) ? now.hour + 1 : 24, - (i) => [], - ); - for (final record in records) { - // add data at the same weekday. - // sunday goes first - data[record.timestamp.hour].add(record); - } - final (:total, :type2Stats) = statisticsTransactionByType(records); - final dayTotals = data.map((monthRecords) => monthRecords.map((r) => r.deltaAmount).sum).toList(); - return StatisticsDelegate( - mode: StatisticsMode.day, - start: start, - start2Records: StatisticsMode.day.resort(records), - data: data, - side: _buildSideTitle, - average: dayTotals.isEmpty ? 0.0 : dayTotals.mean, - type2Stats: type2Stats, - total: total, - bottom: (ctx, value, mate) { - final index = value.toInt(); - if (!(index == 0 || index == data.length - 1) && index % 4 != 0) { - return const SizedBox(); - } - return SideTitleWidget( - axisSide: mate.axisSide, - child: Text( - style: ctx.textTheme.labelMedium, - "${index}", - ), - ); - }, - ); - } - - factory StatisticsDelegate.week({ - required DateTime start, - required List records, - }) { - final now = DateTime.now(); - final data = List.generate( - start.year == now.year && start.week == now.week ? now.calendarOrderWeekday + 1 : 7, - (i) => [], - ); - for (final record in records) { - // add data at the same weekday. - // sunday goes first - data[record.timestamp.calendarOrderWeekday].add(record); - } - final (:total, :type2Stats) = statisticsTransactionByType(records); - final dayTotals = - data.map((monthRecords) => monthRecords.map((r) => r.deltaAmount).sum).where((total) => total > 0).toList(); - return StatisticsDelegate( - mode: StatisticsMode.week, - start: start, - start2Records: StatisticsMode.week.resort(records), - data: data, - side: _buildSideTitle, - average: dayTotals.isEmpty ? 0.0 : dayTotals.mean, - type2Stats: type2Stats, - total: total, - bottom: (ctx, value, mate) { - final index = value.toInt(); - return SideTitleWidget( - axisSide: mate.axisSide, - child: Text( - style: ctx.textTheme.labelMedium, - Weekday.calendarOrder[index].l10nShort(), - ), - ); - }, - ); - } - - factory StatisticsDelegate.month({ - required DateTime start, - required List records, - }) { - final now = DateTime.now(); - final data = List.generate( - start.year == now.year && start.month == now.month ? now.day : daysInMonth(year: start.year, month: start.month), - (i) => [], - ); - for (final record in records) { - // add data on the same day. - data[record.timestamp.day - 1].add(record); - } - final (:total, :type2Stats) = statisticsTransactionByType(records); - final dayTotals = - data.map((monthRecords) => monthRecords.map((r) => r.deltaAmount).sum).where((total) => total > 0).toList(); - final sep = data.length ~/ 5; - return StatisticsDelegate( - mode: StatisticsMode.month, - start: start, - start2Records: StatisticsMode.month.resort(records), - data: data, - average: dayTotals.isEmpty ? 0.0 : dayTotals.mean, - type2Stats: type2Stats, - total: total, - side: _buildSideTitle, - bottom: (ctx, value, meta) { - final index = value.toInt(); - if (!(index == 0 || index == data.length - 1) && index % sep != 0) { - return const SizedBox(); - } - return SideTitleWidget( - axisSide: meta.axisSide, - child: Text( - style: ctx.textTheme.labelMedium, - "${index + 1}", - ), - ); - }, - ); - } - - factory StatisticsDelegate.year({ - required DateTime start, - required List records, - }) { - final _monthFormat = DateFormat.MMM($key.currentContext!.locale.toString()); - final now = DateTime.now(); - final data = List.generate(start.year == now.year ? now.month : 12, (i) => []); - for (final record in records) { - // add data in the same month. - data[record.timestamp.month - 1].add(record); - } - final (:total, :type2Stats) = statisticsTransactionByType(records); - final monthTotals = - data.map((monthRecords) => monthRecords.map((r) => r.deltaAmount).sum).where((total) => total > 0).toList(); - return StatisticsDelegate( - mode: StatisticsMode.year, - start: start, - start2Records: StatisticsMode.year.resort(records), - data: data, - average: monthTotals.isEmpty ? 0.0 : monthTotals.mean, - type2Stats: type2Stats, - total: total, - side: _buildSideTitle, - bottom: (ctx, value, mate) { - final index = value.toInt(); - final text = _monthFormat.format(DateTime(0, index + 1)); - return SideTitleWidget( - axisSide: mate.axisSide, - child: Text( - style: ctx.textTheme.labelMedium, - text.substring(0, min(3, text.length)), - ), - ); - }, - ); - } - - static Widget _buildSideTitle(BuildContext ctx, double value, TitleMeta meta) { - String text = '¥${formatWithoutTrailingZeros(value)}'; - return SideTitleWidget( - axisSide: meta.axisSide, - child: Text( - style: ctx.textTheme.labelMedium, - text, - ), - ); - } -} diff --git a/lib/life/expense_records/widget/chart/header.dart b/lib/life/expense_records/widget/chart/header.dart deleted file mode 100644 index 97e9c7afd..000000000 --- a/lib/life/expense_records/widget/chart/header.dart +++ /dev/null @@ -1,39 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:rettulf/rettulf.dart'; - -class ExpenseChartHeader extends StatelessWidget { - final String upper; - final String content; - final String? lower; - - const ExpenseChartHeader({ - super.key, - required this.upper, - required this.content, - this.lower, - }); - - @override - Widget build(BuildContext context) { - return [ - ExpenseChartHeaderLabel(upper), - content.text(style: context.textTheme.titleLarge), - if (lower != null) ExpenseChartHeaderLabel(lower!), - ].column(caa: CrossAxisAlignment.start); - } -} - -class ExpenseChartHeaderLabel extends StatelessWidget { - final String text; - - const ExpenseChartHeaderLabel( - this.text, { - super.key, - }); - - @override - Widget build(BuildContext context) { - final style = context.textTheme.titleMedium?.copyWith(color: context.theme.disabledColor); - return text.text(style: style); - } -} diff --git a/lib/life/expense_records/widget/chart/pie.dart b/lib/life/expense_records/widget/chart/pie.dart deleted file mode 100644 index 095f08105..000000000 --- a/lib/life/expense_records/widget/chart/pie.dart +++ /dev/null @@ -1,160 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:dynamic_color/dynamic_color.dart'; -import 'package:fl_chart/fl_chart.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../../entity/local.dart'; -import '../../entity/statistics.dart'; -import "../../i18n.dart"; -import 'delegate.dart'; -import 'header.dart'; - -class ExpensePieChart extends StatefulWidget { - final StatisticsDelegate delegate; - - const ExpensePieChart({ - super.key, - required this.delegate, - }); - - @override - State createState() => _ExpensePieChartState(); -} - -class _ExpensePieChartState extends State { - StatisticsDelegate get delegate => widget.delegate; - - DateTime get start => delegate.start; - - StatisticsMode get mode => delegate.mode; - - @override - Widget build(BuildContext context) { - return [ - ExpensePieChartHeader( - total: delegate.total, - ).padFromLTRB(16, 8, 0, 0), - AspectRatio( - aspectRatio: 1.5, - child: ExpensePieChartWidget( - delegate: delegate, - ), - ), - buildLegends().padAll(8).align(at: Alignment.topLeft), - ].column(caa: CrossAxisAlignment.start); - } - - Widget buildLegends() { - return delegate.type2Stats.entries - .sortedBy((e) => -e.value.total) - .map((record) { - final MapEntry(key: type, value: (records: _, :total, proportion: _)) = record; - final color = type.color.harmonizeWith(context.colorScheme.primary); - return Chip( - avatar: Icon(type.icon, color: color), - labelStyle: TextStyle(color: color), - label: "${type.l10n()}: ${i18n.unit.rmb(total.toStringAsFixed(2))}".text(), - ); - }) - .toList() - .wrap(spacing: 4, runSpacing: 4); - } -} - -class ExpensePieChartHeader extends StatelessWidget { - final double total; - - const ExpensePieChartHeader({ - super.key, - required this.total, - }); - - @override - Widget build(BuildContext context) { - return ExpenseChartHeader( - upper: i18n.stats.total, - content: "¥${total.toStringAsFixed(2)}", - ); - } -} - -class ExpensePieChartWidget extends ConsumerStatefulWidget { - final StatisticsDelegate delegate; - - const ExpensePieChartWidget({ - super.key, - required this.delegate, - }); - - @override - ConsumerState createState() => _PieChartWidgetState(); -} - -class _PieChartWidgetState extends ConsumerState { - StatisticsDelegate get delegate => widget.delegate; - int touchedIndex = -1; - - @override - Widget build(BuildContext context) { - return PieChart( - PieChartData( - pieTouchData: PieTouchData( - touchCallback: (FlTouchEvent event, pieTouchResponse) { - setState(() { - if (!event.isInterestedForInteractions || - pieTouchResponse == null || - pieTouchResponse.touchedSection == null) { - touchedIndex = -1; - return; - } - touchedIndex = pieTouchResponse.touchedSection!.touchedSectionIndex; - }); - }, - ), - borderData: FlBorderData( - show: false, - ), - sectionsSpace: 0, - centerSpaceRadius: 60, - sections: delegate.type2Stats.entries.mapIndexed((i, entry) { - final isTouched = i == touchedIndex; - final MapEntry(key: type, value: (records: _, :total, :proportion)) = entry; - final color = type.color.harmonizeWith(context.colorScheme.primary); - return PieChartSectionData( - color: color.withOpacity(isTouched ? 1 : 0.8), - value: total, - title: "${(proportion * 100).toStringAsFixed(2)}%", - titleStyle: context.textTheme.titleSmall, - radius: isTouched ? 55 : 50, - badgeWidget: Icon(type.icon, color: color), - badgePositionPercentageOffset: 1.5, - ); - }).toList(), - ), - ); - } -} - -class ExpenseAverageTile extends StatelessWidget { - final TransactionType type; - final double average; - final double max; - - const ExpenseAverageTile({ - super.key, - required this.type, - required this.average, - required this.max, - }); - - @override - Widget build(BuildContext context) { - return ListTile( - leading: Icon(type.icon, color: type.color), - title: i18n.stats.averageSpendIn(amount: "¥${average.toStringAsFixed(2)}", type: type).text(), - subtitle: i18n.stats.maxSpendOf(amount: "¥${max.toStringAsFixed(2)}").text(), - ); - } -} diff --git a/lib/life/expense_records/widget/group.dart b/lib/life/expense_records/widget/group.dart deleted file mode 100644 index b8026049c..000000000 --- a/lib/life/expense_records/widget/group.dart +++ /dev/null @@ -1,45 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/design/widgets/grouped.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/local.dart'; -import '../utils.dart'; -import '../i18n.dart'; -import 'transaction.dart'; - -class TransactionGroupSection extends StatelessWidget { - final bool initialExpanded; - final YearMonth time; - final List records; - - const TransactionGroupSection({ - required this.time, - required this.records, - this.initialExpanded = true, - super.key, - }); - - @override - Widget build(BuildContext context) { - final (:income, :outcome) = accumulateTransactionIncomeOutcome(records); - return GroupedSection( - headerBuilder: (context, expanded, toggleExpand, defaultTrailing) { - return ListTile( - title: context.formatYmText((time.toDateTime())).text(), - titleTextStyle: context.textTheme.titleMedium, - subtitle: "${i18n.income(income.toStringAsFixed(2))}\n${i18n.outcome(outcome.toStringAsFixed(2))}" - .text(maxLines: 2), - onTap: toggleExpand, - trailing: defaultTrailing, - ); - }, - initialExpanded: initialExpanded, - itemCount: records.length, - itemBuilder: (ctx, i) { - final record = records[i]; - return TransactionTile(record); - }, - ); - } -} diff --git a/lib/life/expense_records/widget/selector.dart b/lib/life/expense_records/widget/selector.dart deleted file mode 100644 index f3dae0fba..000000000 --- a/lib/life/expense_records/widget/selector.dart +++ /dev/null @@ -1,76 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -class YearMonthSelector extends StatefulWidget { - final List years; - final List months; - final int initialYear; - final int initialMonth; - final bool enableAllYears; - final bool enableAllMonths; - - const YearMonthSelector({ - super.key, - required this.years, - required this.months, - this.enableAllYears = false, - this.enableAllMonths = false, - required this.initialYear, - required this.initialMonth, - }); - - @override - State createState() => _YearMonthSelectorState(); -} - -class _YearMonthSelectorState extends State { - late int selectedYear; - late int selectedMonth; - - @override - Widget build(BuildContext context) { - return Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - buildYearSelector(), - buildMonthSelector(), - ], - ); - } - - Widget buildYearSelector() { - return DropdownMenu( - label: "Year".text(), - initialSelection: widget.initialYear, - onSelected: (int? selected) { - if (selected != null && selected != selectedYear) { - setState(() => selectedYear = selected); - } - }, - dropdownMenuEntries: widget.years - .map((year) => DropdownMenuEntry( - value: year, - label: "$year–${year + 1}", - )) - .toList(), - ); - } - - Widget buildMonthSelector() { - return DropdownMenu( - label: "Month".text(), - initialSelection: widget.initialMonth, - onSelected: (int? selected) { - if (selected != null && selected != selectedYear) { - setState(() => selectedYear = selected); - } - }, - dropdownMenuEntries: widget.months - .map((month) => DropdownMenuEntry( - value: month, - label: month.toString(), - )) - .toList(), - ); - } -} diff --git a/lib/life/expense_records/widget/transaction.dart b/lib/life/expense_records/widget/transaction.dart deleted file mode 100644 index 545413c68..000000000 --- a/lib/life/expense_records/widget/transaction.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'package:auto_size_text/auto_size_text.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/dev.dart'; -import '../entity/local.dart'; -import "../i18n.dart"; - -class TransactionTile extends StatelessWidget { - final Transaction transaction; - - const TransactionTile(this.transaction, {super.key}); - - @override - Widget build(BuildContext context) { - final title = transaction.bestTitle; - return ListTile( - title: Text(title ?? i18n.unknown, style: context.textTheme.titleSmall), - subtitle: [ - context.formatYmdhmsNum(transaction.timestamp).text(), - if (title != transaction.note && transaction.note.isNotEmpty) transaction.note.text(), - if (Dev.on) "${transaction.balanceBefore} => ${transaction.balanceAfter}".text(), - ].column(caa: CrossAxisAlignment.start), - leading: transaction.type.icon.make(color: transaction.type.color, size: 32), - trailing: transaction.toReadableString().text( - style: context.textTheme.titleLarge?.copyWith(color: transaction.billColor), - ), - ); - } -} - -class TransactionCard extends StatelessWidget { - final Transaction transaction; - - const TransactionCard({ - super.key, - required this.transaction, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - final billColor = transaction.isConsume ? null : transaction.billColor; - return [ - [ - transaction.type.icon.make(color: transaction.type.color).padOnly(r: 8), - AutoSizeText( - context.formatMdhmNum(transaction.timestamp), - style: textTheme.titleMedium, - maxLines: 1, - ).expanded(), - ].row(), - [ - AutoSizeText( - transaction.toReadableString(), - style: textTheme.displayMedium?.copyWith(color: billColor), - maxLines: 1, - ).expanded(), - AutoSizeText( - i18n.view.rmb, - style: textTheme.titleMedium?.copyWith(color: billColor), - maxLines: 1, - ), - ].row(caa: CrossAxisAlignment.end), - AutoSizeText( - transaction.shortDeviceName(), - style: textTheme.titleMedium, - maxLines: 1, - ), - ] - .column( - caa: CrossAxisAlignment.start, - maa: MainAxisAlignment.spaceEvenly, - ) - .padAll(10) - .inCard(); - } -} diff --git a/lib/life/i18n.dart b/lib/life/i18n.dart deleted file mode 100644 index dd3fbd645..000000000 --- a/lib/life/i18n.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - final settings = const _Settings(); - - static const ns = "life"; - - String get navigation => "$ns.navigation".tr(); -} - -class _Settings { - const _Settings(); - - final electricity = const _Electricity(); - final expense = const _Expense(); - static const ns = "${_I18n.ns}.settings"; -} - -class _Electricity { - static const ns = "${_Settings.ns}.electricity"; - - const _Electricity(); - - String get autoRefresh => "$ns.autoRefresh.title".tr(); - - String get autoRefreshDesc => "$ns.autoRefresh.desc".tr(); -} - -class _Expense { - static const ns = "${_Settings.ns}.expenseRecords"; - - const _Expense(); - - String get autoRefresh => "$ns.autoRefresh.title".tr(); - - String get autoRefreshDesc => "$ns.autoRefresh.desc".tr(); -} diff --git a/lib/life/index.dart b/lib/life/index.dart deleted file mode 100644 index 373294bf6..000000000 --- a/lib/life/index.dart +++ /dev/null @@ -1,65 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/entity/campus.dart'; -import 'package:sit/life/electricity/index.dart'; -import 'package:sit/life/expense_records/index.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'event.dart'; -import "i18n.dart"; - -class LifePage extends ConsumerStatefulWidget { - const LifePage({super.key}); - - @override - ConsumerState createState() => _LifePageState(); -} - -class _LifePageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final loginStatus = ref.watch(CredentialsInit.storage.$oaLoginStatus); - final campus = ref.watch(Settings.$campus) ?? Campus.fengxian; - return Scaffold( - resizeToAvoidBottomInset: false, - body: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, bool innerBoxIsScrolled) { - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - title: i18n.navigation.text(), - forceElevated: innerBoxIsScrolled, - ), - ), - ]; - }, - body: RefreshIndicator.adaptive( - triggerMode: RefreshIndicatorTriggerMode.anywhere, - onRefresh: () async { - debugPrint("Life page refreshed"); - await HapticFeedback.heavyImpact(); - await lifeEventBus.notifyListeners(); - }, - child: CustomScrollView( - slivers: [ - if (loginStatus != LoginStatus.never) - const SliverToBoxAdapter( - child: ExpenseRecordsAppCard(), - ), - if (campus.capability.enableElectricity) - const SliverToBoxAdapter( - child: ElectricityBalanceAppCard(), - ), - ], - ), - ), - ), - ); - } -} diff --git a/lib/life/page/settings.dart b/lib/life/page/settings.dart deleted file mode 100644 index 3fb5661f2..000000000 --- a/lib/life/page/settings.dart +++ /dev/null @@ -1,75 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; -import '../i18n.dart'; - -class LifeSettingsPage extends StatefulWidget { - const LifeSettingsPage({ - super.key, - }); - - @override - State createState() => _LifeSettingsPageState(); -} - -class _LifeSettingsPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.navigation.text(), - ), - SliverList( - delegate: SliverChildListDelegate([ - buildElectricityAutoRefreshToggle(), - buildExpenseAutoRefreshToggle(), - ]), - ), - ], - ), - ); - } - - Widget buildElectricityAutoRefreshToggle() { - return StatefulBuilder( - builder: (ctx, setState) => ListTile( - title: i18n.settings.electricity.autoRefresh.text(), - subtitle: i18n.settings.electricity.autoRefreshDesc.text(), - leading: Icon(context.icons.refresh), - trailing: Switch.adaptive( - value: Settings.life.electricity.autoRefresh, - onChanged: (newV) { - setState(() { - Settings.life.electricity.autoRefresh = newV; - }); - }, - ), - ), - ); - } - - Widget buildExpenseAutoRefreshToggle() { - return StatefulBuilder( - builder: (ctx, setState) => ListTile( - title: i18n.settings.expense.autoRefresh.text(), - subtitle: i18n.settings.expense.autoRefreshDesc.text(), - leading: Icon(context.icons.refresh), - trailing: Switch.adaptive( - value: Settings.life.expense.autoRefresh, - onChanged: (newV) { - setState(() { - Settings.life.expense.autoRefresh = newV; - }); - }, - ), - ), - ); - } -} diff --git a/lib/life/settings.dart b/lib/life/settings.dart deleted file mode 100644 index eeecbbdd9..000000000 --- a/lib/life/settings.dart +++ /dev/null @@ -1,56 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:hive_flutter/hive_flutter.dart'; - -const _kElectricityAutoRefresh = true; -const _kExpenseRecordsAutoRefresh = true; - -class LifeSettings { - final Box box; - - LifeSettings(this.box); - - late final electricity = _Electricity(box); - late final expense = _ExpenseRecords(box); - - static const ns = "/life"; -} - -class _ElectricityK { - static const ns = "${LifeSettings.ns}/electricity"; - static const autoRefresh = "$ns/autoRefresh"; - static const selectedRoom = "$ns/selectedRoom"; -} - -class _Electricity { - final Box box; - - _Electricity(this.box); - - bool get autoRefresh => box.safeGet(_ElectricityK.autoRefresh) ?? _kElectricityAutoRefresh; - - set autoRefresh(bool foo) => box.safePut(_ElectricityK.autoRefresh, foo); - - String? get selectedRoom => box.safeGet(_ElectricityK.selectedRoom); - - late final $selectedRoom = box.provider(_ElectricityK.selectedRoom); - - set selectedRoom(String? newV) => box.safePut(_ElectricityK.selectedRoom, newV); - - ValueListenable listenSelectedRoom() => box.listenable(keys: [_ElectricityK.selectedRoom]); -} - -class _ExpenseK { - static const ns = "${LifeSettings.ns}/expenseRecords"; - static const autoRefresh = "$ns/autoRefresh"; -} - -class _ExpenseRecords { - final Box box; - - const _ExpenseRecords(this.box); - - bool get autoRefresh => box.safeGet(_ExpenseK.autoRefresh) ?? _kExpenseRecordsAutoRefresh; - - set autoRefresh(bool foo) => box.safePut(_ExpenseK.autoRefresh, foo); -} diff --git a/lib/lifecycle.dart b/lib/lifecycle.dart deleted file mode 100644 index 9aeb8f3cf..000000000 --- a/lib/lifecycle.dart +++ /dev/null @@ -1,7 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; - -final $key = GlobalKey(); -final $oaOnline = StateProvider((ref) => false); -final $campusNetworkAvailable = StateProvider((ref) => false); -final $studentRegAvailable = StateProvider((ref) => false); diff --git a/lib/login/aggregated.dart b/lib/login/aggregated.dart deleted file mode 100644 index e961199d0..000000000 --- a/lib/login/aggregated.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/credentials/utils.dart'; -import 'package:sit/init.dart'; -import 'package:sit/settings/settings.dart'; - -import 'init.dart'; - -class LoginAggregated { - static Future login(Credentials credentials) async { - credentials = credentials.copyWith( - account: credentials.account.toUpperCase(), - ); - final userType = estimateOaUserType(credentials.account); - await Init.ssoSession.deleteSitUriCookies(); - await Init.ssoSession.loginLocked(credentials); - // set user's real name to signature by default. - final personName = await LoginInit.authServerService.getPersonName(); - Settings.lastSignature ??= personName; - CredentialsInit.storage.oaCredentials = credentials; - CredentialsInit.storage.oaLoginStatus = LoginStatus.validated; - CredentialsInit.storage.oaLastAuthTime = DateTime.now(); - CredentialsInit.storage.oaUserType = userType; - } -} diff --git a/lib/login/i18n.dart b/lib/login/i18n.dart deleted file mode 100644 index 841fbb764..000000000 --- a/lib/login/i18n.dart +++ /dev/null @@ -1,56 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/credentials/i18n.dart'; -import 'package:sit/l10n/common.dart'; - -class CommonLoginI18n with CommonI18nMixin { - const CommonLoginI18n(); - - static const ns = "login"; - final network = const NetworkI18n(); - final credentials = const CredentialsI18n(); - - String get login => "$ns.login".tr(); - - String get forgotPwd => "$ns.forgotPwd".tr(); - - String get credentialsValidatedTip => "$ns.credentialsValidatedTip".tr(); - - String get formatError => "$ns.formatError".tr(); - - String get validateInputAccountPwdRequest => "$ns.validateInputAccountPwdRequest".tr(); - - String get loggedInTip => "$ns.loggedInTip".tr(); - - String get notLoggedIn => "$ns.notLoggedIn".tr(); - - String get invalidAccountFormat => "$ns.invalidAccountFormat".tr(); - - String get offlineModeBtn => "$ns.offlineModeBtn".tr(); - - String get failedWarn => "$ns.failedWarn".tr(); - - String get unknownAuthErrorTip => "$ns.unknownAuthErrorTip".tr(); -} - -class OaLoginI18n extends CommonLoginI18n { - const OaLoginI18n(); - - static const ns = "${CommonLoginI18n.ns}.oa"; - - @override - OaCredentialsI18n get credentials => const OaCredentialsI18n(); - - String get welcomeHeader => "$ns.welcomeHeader".tr(); - - String get loginOa => "$ns.loginOa".tr(); - - String get accountHint => "$ns.accountHint".tr(); - - String get oaPwdHint => "$ns.oaPwdHint".tr(); - - String get schoolServerUnconnectedTip => "$ns.schoolServerUnconnectedTip".tr(); - - String get loginRequired => "$ns.loginRequired".tr(); - - String get neverLoggedInTip => "$ns.neverLoggedInTip".tr(); -} diff --git a/lib/login/init.dart b/lib/login/init.dart deleted file mode 100644 index c7039dec9..000000000 --- a/lib/login/init.dart +++ /dev/null @@ -1,11 +0,0 @@ -import 'service/authserver.dart'; - -class LoginInit { - static late AuthServerService authServerService; - - static void init() { - authServerService = const AuthServerService(); - } - - static void initStorage() {} -} diff --git a/lib/login/page/captcha.dart b/lib/login/page/captcha.dart deleted file mode 100644 index 573c28df8..000000000 --- a/lib/login/page/captcha.dart +++ /dev/null @@ -1,71 +0,0 @@ -import 'dart:typed_data'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/l10n/common.dart'; - -const _i18n = CaptchaI18n(); - -class CaptchaI18n with CommonI18nMixin { - static const ns = "captcha"; - - const CaptchaI18n(); - - String get title => "$ns.title".tr(); - - String get enterHint => "$ns.enterHint".tr(); - - String get emptyInputError => "$ns.emptyInputError".tr(); -} - -class CaptchaSheetPage extends StatefulWidget { - final Uint8List captchaData; - - const CaptchaSheetPage({ - super.key, - required this.captchaData, - }); - - @override - State createState() => _CaptchaSheetPageState(); -} - -class _CaptchaSheetPageState extends State { - final $captcha = TextEditingController(); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: "Captcha".text(), - actions: [ - PlatformTextButton( - onPressed: () { - context.navigator.pop($captcha.text); - }, - child: "Submit".text(), - ) - ], - ), - body: [ - Image.memory( - widget.captchaData, - scale: 0.5, - ), - $TextField$( - controller: $captcha, - autofocus: true, - placeholder: _i18n.enterHint, - keyboardType: TextInputType.text, - autofillHints: const [AutofillHints.oneTimeCode], - onSubmit: (value) { - context.navigator.pop(value); - }, - ).padOnly(t: 15), - ].column(mas: MainAxisSize.min).center().padH(16), - ); - } -} diff --git a/lib/login/page/index.dart b/lib/login/page/index.dart deleted file mode 100644 index 05d50cc9e..000000000 --- a/lib/login/page/index.dart +++ /dev/null @@ -1,304 +0,0 @@ -import 'dart:math'; - -import 'package:connectivity_plus/connectivity_plus.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/credentials/utils.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/init.dart'; -import 'package:sit/login/utils.dart'; -import 'package:sit/r.dart'; -import 'package:sit/school/widgets/campus.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart' hide isCupertino; - -import '../aggregated.dart'; -import '../i18n.dart'; -import '../widgets/forgot_pwd.dart'; - -const i18n = OaLoginI18n(); - -const _forgotLoginPasswordUrl = - "https://authserver.sit.edu.cn/authserver/getBackPasswordMainPage.do?service=https%3A%2F%2Fmyportal.sit.edu.cn%3A443%2F"; - -class LoginPage extends ConsumerStatefulWidget { - final bool isGuarded; - - const LoginPage({super.key, required this.isGuarded}); - - @override - ConsumerState createState() => _LoginPageState(); -} - -class _LoginPageState extends ConsumerState { - final $account = TextEditingController(text: Dev.demoMode ? R.demoModeOaCredentials.account : null); - final $password = TextEditingController(text: Dev.demoMode ? R.demoModeOaCredentials.password : null); - final _formKey = GlobalKey(); - bool isPasswordClear = false; - bool isLoggingIn = false; - - @override - void initState() { - super.initState(); - $account.addListener(onAccountChange); - } - - @override - void dispose() { - $account.dispose(); - $password.dispose(); - $account.removeListener(onAccountChange); - super.dispose(); - } - - void onAccountChange() { - final old = $account.text; - final uppercase = old.toUpperCase(); - if (old != uppercase) { - $account.text = uppercase; - } - } - - /// 用户点击登录按钮后 - Future login() async { - final account = $account.text; - final password = $password.text; - if (account == R.demoModeOaCredentials.account && password == R.demoModeOaCredentials.password) { - await loginDemoMode(); - } else { - await loginWithCredentials(account, password, formatValid: (_formKey.currentState as FormState).validate()); - } - } - - Future loginDemoMode() async { - if (!mounted) return; - setState(() => isLoggingIn = true); - final rand = Random(); - await Future.delayed(Duration(milliseconds: rand.nextInt(2000))); - Settings.lastSignature ??= "Liplum"; - CredentialsInit.storage.oaCredentials = R.demoModeOaCredentials; - CredentialsInit.storage.oaLoginStatus = LoginStatus.validated; - CredentialsInit.storage.oaLastAuthTime = DateTime.now(); - CredentialsInit.storage.oaUserType = OaUserType.undergraduate; - Dev.demoMode = true; - await Init.initModules(); - if (!mounted) return; - setState(() => isLoggingIn = false); - context.go("/"); - } - - /// After the user clicks the login button - Future loginWithCredentials( - String account, - String password, { - required bool formatValid, - }) async { - final userType = estimateOaUserType(account); - if (!formatValid || userType == null || account.isEmpty || password.isEmpty) { - await context.showTip( - title: i18n.formatError, - desc: i18n.validateInputAccountPwdRequest, - primary: i18n.close, - serious: true, - ); - return; - } - - if (!mounted) return; - setState(() => isLoggingIn = true); - final connectionType = await Connectivity().checkConnectivity(); - if (connectionType.contains(ConnectivityResult.none)) { - if (!mounted) return; - setState(() => isLoggingIn = false); - await context.showTip( - title: i18n.network.error, - desc: i18n.network.noAccessTip, - primary: i18n.close, - serious: true, - ); - return; - } - - try { - await LoginAggregated.login(Credentials(account: account, password: password)); - if (!mounted) return; - setState(() => isLoggingIn = false); - context.go("/"); - } catch (error, stackTrace) { - if (!mounted) return; - setState(() => isLoggingIn = false); - if (error is Exception) { - await handleLoginException(context: context, error: error, stackTrace: stackTrace); - } - } - } - - @override - Widget build(BuildContext context) { - ref.listen(CredentialsInit.storage.$oaCredentials, (pre, next) { - if (next != null) { - $account.text = next.account; - $password.text = next.password; - } - }); - - return GestureDetector( - onTap: () { - // dismiss the keyboard when tap out of TextField. - FocusScope.of(context).requestFocus(FocusNode()); - }, - child: Scaffold( - appBar: AppBar( - title: widget.isGuarded ? i18n.loginRequired.text() : const CampusSelector(), - actions: [ - PlatformIconButton( - icon: isCupertino ? const Icon(CupertinoIcons.settings) : const Icon(Icons.settings), - onPressed: () { - context.push("/settings"); - }, - ), - ], - bottom: isLoggingIn - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - body: buildBody(), - //to avoid overflow when keyboard is up. - bottomNavigationBar: const ForgotPasswordButton(url: _forgotLoginPasswordUrl), - ), - ); - } - - Widget buildBody() { - return [ - widget.isGuarded - ? const Icon( - Icons.person_off_outlined, - size: 120, - ) - : i18n.welcomeHeader.text( - style: context.textTheme.displayMedium?.copyWith(fontWeight: FontWeight.bold), - textAlign: TextAlign.center, - ), - const Padding(padding: EdgeInsets.only(top: 40)), - // Form field: username and password. - buildLoginForm(), - const SizedBox(height: 10), - buildLoginButton(), - ].column(mas: MainAxisSize.min).scrolled(physics: const NeverScrollableScrollPhysics()).padH(25).center(); - } - - Widget buildLoginForm() { - return Form( - autovalidateMode: AutovalidateMode.always, - key: _formKey, - child: AutofillGroup( - child: Column( - children: [ - TextFormField( - controller: $account, - autofillHints: const [AutofillHints.username], - textInputAction: TextInputAction.next, - autocorrect: false, - autofocus: true, - readOnly: isLoggingIn, - enableSuggestions: false, - validator: (account) => studentIdValidator(account, () => i18n.invalidAccountFormat), - decoration: InputDecoration( - labelText: i18n.credentials.account, - hintText: i18n.accountHint, - icon: Icon(context.icons.person), - ), - ), - TextFormField( - controller: $password, - keyboardType: isPasswordClear ? TextInputType.visiblePassword : null, - autofillHints: const [AutofillHints.password], - textInputAction: TextInputAction.send, - readOnly: isLoggingIn, - contextMenuBuilder: (ctx, state) { - return AdaptiveTextSelectionToolbar.editableText( - editableTextState: state, - ); - }, - autocorrect: false, - autofocus: true, - enableSuggestions: false, - obscureText: !isPasswordClear, - onFieldSubmitted: (inputted) async { - await login(); - }, - decoration: InputDecoration( - labelText: i18n.credentials.oaPwd, - hintText: i18n.oaPwdHint, - icon: Icon(context.icons.lock), - suffixIcon: PlatformIconButton( - icon: Icon(isPasswordClear ? context.icons.eyeSolid : context.icons.eyeSlashSolid), - onPressed: () { - setState(() { - isPasswordClear = !isPasswordClear; - }); - }, - ), - ), - ), - ], - ), - ), - ); - } - - Widget buildLoginButton() { - return [ - $account >> - (ctx, account) => FilledButton.icon( - // Online - onPressed: !isLoggingIn && account.text.isNotEmpty - ? () { - // un-focus the text field. - FocusScope.of(context).requestFocus(FocusNode()); - login(); - } - : null, - icon: const Icon(Icons.login), - label: i18n.login.text(), - ), - if (!widget.isGuarded) - $account >> - (ctx, account) => - $password >> - (ctx, password) => OutlinedButton( - // Offline - onPressed: account.text.isNotEmpty || password.text.isNotEmpty - ? null - : () { - CredentialsInit.storage.oaLoginStatus = LoginStatus.offline; - context.go("/"); - }, - child: i18n.offlineModeBtn.text(), - ), - ].row(caa: CrossAxisAlignment.center, maa: MainAxisAlignment.spaceAround); - } -} - -/// Only allow student ID/ work number. -String? studentIdValidator(String? account, String Function() invalidMessage) { - if (account != null && account.isNotEmpty) { - if (estimateOaUserType(account) == null) { - return invalidMessage(); - } - } - return null; -} diff --git a/lib/login/page/sheet.dart b/lib/login/page/sheet.dart deleted file mode 100644 index 7bb0c5399..000000000 --- a/lib/login/page/sheet.dart +++ /dev/null @@ -1,16 +0,0 @@ -import 'package:flutter/material.dart'; - -/// A sheet for login auth -class LoginSheet extends StatefulWidget { - const LoginSheet({super.key}); - - @override - State createState() => _LoginSheetState(); -} - -class _LoginSheetState extends State { - @override - Widget build(BuildContext context) { - return Scaffold(); - } -} diff --git a/lib/login/service/authserver.dart b/lib/login/service/authserver.dart deleted file mode 100644 index 2143c2dd4..000000000 --- a/lib/login/service/authserver.dart +++ /dev/null @@ -1,32 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/sso.dart'; -import 'package:sit/utils/error.dart'; - -class AuthServerService { - SsoSession get session => Init.ssoSession; - - const AuthServerService(); - - Future getPersonName() async { - try { - final response = await session.request( - 'https://authserver.sit.edu.cn/authserver/index.do', - options: Options( - method: "GET", - ), - ); - final html = BeautifulSoup(response.data); - final resultDesktop = html.find('div', class_: 'auth_username')?.text ?? ''; - final resultMobile = html.find('div', class_: 'index-nav-name')?.text ?? ''; - - final result = (resultMobile + resultDesktop).trim(); - return result.isNotEmpty ? result : null; - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - return null; - } - } -} diff --git a/lib/login/utils.dart b/lib/login/utils.dart deleted file mode 100644 index e3310524a..000000000 --- a/lib/login/utils.dart +++ /dev/null @@ -1,48 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:sit/credentials/error.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/session/sso.dart'; -import 'package:sit/utils/error.dart'; -import "./i18n.dart"; - -const _i18n = OaLoginI18n(); - -Future handleLoginException({ - required BuildContext context, - required Exception error, - required StackTrace stackTrace, -}) async { - debugPrintError(error, stackTrace); - if (!context.mounted) return; - if (error is CredentialsException) { - await context.showTip( - serious: true, - title: _i18n.failedWarn, - desc: error.type.l10n(), - primary: _i18n.close, - ); - return; - } - if (error is DioException) { - await context.showTip( - serious: true, - title: _i18n.failedWarn, - desc: _i18n.schoolServerUnconnectedTip, - primary: _i18n.close, - ); - return; - } - if (error is LoginCaptchaCancelledException) { - if (!context.mounted) return; - return; - } - if (!context.mounted) return; - await context.showTip( - serious: true, - title: _i18n.failedWarn, - desc: _i18n.unknownAuthErrorTip, - primary: _i18n.close, - ); - return; -} diff --git a/lib/login/widgets/forgot_pwd.dart b/lib/login/widgets/forgot_pwd.dart deleted file mode 100644 index 7db520784..000000000 --- a/lib/login/widgets/forgot_pwd.dart +++ /dev/null @@ -1,28 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/guard_launch.dart'; -import '../i18n.dart'; - -const _i18n = OaLoginI18n(); - -class ForgotPasswordButton extends StatelessWidget { - final String url; - - const ForgotPasswordButton({ - super.key, - required this.url, - }); - - @override - Widget build(BuildContext context) { - return PlatformTextButton( - child: _i18n.forgotPwd.text( - style: const TextStyle(color: Colors.grey), - ), - onPressed: () async { - await guardLaunchUrlString(context, url); - }, - ); - } -} diff --git a/lib/main.dart b/lib/main.dart deleted file mode 100644 index 4a1b361b1..000000000 --- a/lib/main.dart +++ /dev/null @@ -1,138 +0,0 @@ -import 'dart:convert'; -import 'dart:io'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/rendering.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:shared_preferences/shared_preferences.dart'; -import 'package:sit/files.dart'; -import 'package:sit/migration/foundation.dart'; -import 'package:sit/network/proxy.dart'; -import 'package:sit/platform/windows/windows.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/init.dart'; -import 'package:sit/migration/migrations.dart'; -import 'package:sit/platform/desktop.dart'; -import 'package:sit/school/yellow_pages/entity/contact.dart'; -import 'package:path_provider/path_provider.dart'; -import 'package:sit/settings/meta.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/entity/version.dart'; -import 'package:sit/storage/prefs.dart'; -import 'package:system_theme/system_theme.dart'; -import 'package:version/version.dart'; - -import 'app.dart'; - -import 'l10n/yaml_assets_loader.dart'; -import 'r.dart'; - -void main() async { - // debugRepaintRainbowEnabled = true; - // debugRepaintTextRainbowEnabled = true; - // debugPaintSizeEnabled = true; - WidgetsFlutterBinding.ensureInitialized(); - GoRouter.optionURLReflectsImperativeAPIs = kDebugMode; - final prefs = await SharedPreferences.getInstance(); - final lastSize = prefs.getLastWindowSize(); - await DesktopInit.init(size: lastSize); - await WindowsInit.registerCustomScheme(R.scheme); - final installationTime = prefs.getInstallTime(); - debugPrint("First installation time: $installationTime"); - if (installationTime == null) { - await prefs.setInstallTime(DateTime.now()); - } - // Initialize the window size before others for a better experience when loading. - await SystemTheme.accentColor.load(); - await EasyLocalization.ensureInitialized(); - Migrations.init(); - - if (!kIsWeb) { - Files.cache = await getApplicationCacheDirectory(); - debugPrint("Cache ${Files.cache}"); - Files.temp = await getTemporaryDirectory(); - debugPrint("Temp ${Files.temp}"); - Files.internal = await getApplicationSupportDirectory(); - debugPrint("Internal ${Files.internal}"); - Files.user = await getApplicationDocumentsDirectory(); - debugPrint("User ${Files.user}"); - } - await Files.init(); - // Perform migrations - R.currentVersion = await getCurrentVersion(); - final currentVersion = R.currentVersion.version; - final lastVersionRaw = prefs.getLastVersion(); - final lastVersion = lastVersionRaw != null ? Version.parse(lastVersionRaw) : currentVersion; - debugPrint("Last version: $lastVersion"); - await prefs.setLastVersion(currentVersion.toString()); - final migrations = Migrations.match(from: lastVersion, to: currentVersion); - // final migrations = Migrations.match(from: Version(2, 3, 2), to: currentVersion); - - await migrations.perform(MigrationPhrase.beforeHive); - - R.roomList = await _loadRoomNumberList(); - R.userAgentList = await _loadUserAgents(); - R.yellowPages = await _loadYellowPages(); - - // Initialize Hive - if (!kIsWeb) { - await HiveInit.initLocalStorage( - coreDir: Files.internal.subDir("hive", R.hiveStorageVersionCore), - // iOS will clear the cache under [getApplicationCacheDirectory()] when device has no enough storage. - cacheDir: Files.internal.subDir("hive-cache", R.hiveStorageVersionCache), - ); - } - HiveInit.initAdapters(); - await HiveInit.initBox(); - - // Setup Settings and Meta - if (kDebugMode) { - Dev.on = true; - } - // The last time when user launch this app - Meta.lastLaunchTime = Meta.thisLaunchTime; - Meta.thisLaunchTime = DateTime.now(); - Init.registerCustomEditor(); - await migrations.perform(MigrationPhrase.afterHive); - HttpOverrides.global = SitHttpOverrides(); - await Init.initNetwork(); - await Init.initModules(); - await Init.initStorage(); - await migrations.perform(MigrationPhrase.afterInitStorage); - runApp( - ProviderScope( - child: EasyLocalization( - supportedLocales: R.supportedLocales, - path: 'assets/l10n', - fallbackLocale: R.defaultLocale, - useFallbackTranslations: true, - assetLoader: _yamlAssetsLoader, - child: const MimirApp(), - ), - ), - ); -} - -final _yamlAssetsLoader = YamlAssetLoader(); - -Future> _loadRoomNumberList() async { - String jsonData = await rootBundle.loadString("assets/room_list.json"); - List list = jsonDecode(jsonData); - return list.map((e) => e.toString()).toList(); -} - -Future> _loadUserAgents() async { - String jsonData = await rootBundle.loadString("assets/user_agent.json"); - List list = jsonDecode(jsonData); - return list.cast(); -} - -Future> _loadYellowPages() async { - String jsonData = await rootBundle.loadString("assets/yellow_pages.json"); - List list = jsonDecode(jsonData); - return list.map((e) => SchoolContact.fromJson(e)).toList().cast(); -} diff --git a/lib/me/edu_email/entity/email.dart b/lib/me/edu_email/entity/email.dart deleted file mode 100644 index 8b1378917..000000000 --- a/lib/me/edu_email/entity/email.dart +++ /dev/null @@ -1 +0,0 @@ - diff --git a/lib/me/edu_email/i18n.dart b/lib/me/edu_email/i18n.dart deleted file mode 100644 index 110ca2430..000000000 --- a/lib/me/edu_email/i18n.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/login/i18n.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "eduEmail"; - final action = const _Action(); - final login = const _Login(); - final inbox = const _Inbox(); - final outbox = const _Outbox(); - final info = const _Info(); - - String get title => "$ns.title".tr(); - - String get noContent => "$ns.noContent".tr(); - - String get noSubject => "$ns.noSubject".tr(); - - String get pluralSenderTailing => "$ns.pluralSenderTailing".tr(); - - String get text => "$ns.text".tr(); -} - -class _Action { - const _Action(); - - static const ns = "${_I18n.ns}.action"; - - String get open => "$ns.open".tr(); - - String get login => "$ns.login".tr(); - - String get inbox => "$ns.inbox".tr(); - - String get outbox => "$ns.outbox".tr(); -} - -class _Login extends CommonLoginI18n { - const _Login(); - - static const ns = "${_I18n.ns}.login"; - - String get title => "$ns.title".tr(); - - String get addressHint => "$ns.addressHint".tr(); - - String get passwordHint => "$ns.passwordHint".tr(); - - String get invalidEmailAddressFormatTip => "$ns.invalidEmailAddressFormatTip".tr(); -} - -class _Info { - const _Info(); - - static const ns = "${_I18n.ns}.info"; - - String get emailAddress => "$ns.emailAddress".tr(); -} - -class _Outbox { - const _Outbox(); - - static const ns = "${_I18n.ns}.outbox"; - - String get title => "$ns.title".tr(); -} - -class _Inbox { - const _Inbox(); - - static const ns = "${_I18n.ns}.inbox"; - - String get title => "$ns.title".tr(); -} diff --git a/lib/me/edu_email/index.dart b/lib/me/edu_email/index.dart deleted file mode 100644 index 1015dadbb..000000000 --- a/lib/me/edu_email/index.dart +++ /dev/null @@ -1,67 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:url_launcher/url_launcher_string.dart'; - -import "i18n.dart"; - -const emailUrl = "http://imap.mail.sit.edu.cn"; - -class EduEmailAppCard extends ConsumerStatefulWidget { - const EduEmailAppCard({super.key}); - - @override - ConsumerState createState() => _EduEmailAppCardState(); -} - -class _EduEmailAppCardState extends ConsumerState { - @override - Widget build(BuildContext context) { - final credentials = ref.watch(CredentialsInit.storage.$eduEmailCredentials); - final email = credentials?.account.toString(); - return AppCard( - title: i18n.title.text(), - subtitle: email != null ? SelectableText(email) : null, - leftActions: kIsWeb - ? [ - FilledButton.icon( - onPressed: () async { - await launchUrlString(emailUrl, mode: LaunchMode.externalApplication); - }, - icon: const Icon(Icons.open_in_browser), - label: i18n.action.open.text(), - ), - ] - : credentials == null - ? [ - FilledButton.icon( - onPressed: () async { - await context.push("/edu-email/login"); - }, - icon: const Icon(Icons.login), - label: i18n.action.login.text(), - ), - ] - : [ - FilledButton.icon( - onPressed: () { - context.push("/edu-email/inbox"); - }, - icon: const Icon(Icons.inbox), - label: i18n.action.inbox.text(), - ), - OutlinedButton.icon( - onPressed: () { - context.push("/edu-email/outbox"); - }, - icon: const Icon(Icons.outbox), - label: i18n.action.outbox.text(), - ), - ], - ); - } -} diff --git a/lib/me/edu_email/init.dart b/lib/me/edu_email/init.dart deleted file mode 100644 index 5896be969..000000000 --- a/lib/me/edu_email/init.dart +++ /dev/null @@ -1,15 +0,0 @@ -import 'service/email.dart'; -import 'storage/email.dart'; - -class EduEmailInit { - static late EduEmailStorage storage; - static late MailService service; - - static void init() { - service = MailService(); - } - - static void initStorage() { - storage = const EduEmailStorage(); - } -} diff --git a/lib/me/edu_email/page/details.dart b/lib/me/edu_email/page/details.dart deleted file mode 100644 index b0760d47b..000000000 --- a/lib/me/edu_email/page/details.dart +++ /dev/null @@ -1,71 +0,0 @@ -import 'package:enough_mail/enough_mail.dart'; -import 'package:enough_mail_html/enough_mail_html.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_widget_from_html/flutter_widget_from_html.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/widgets/html.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../i18n.dart'; - -// TODO: Better UI -class EduEmailDetailsPage extends StatelessWidget { - final MimeMessage message; - - const EduEmailDetailsPage(this.message, {super.key}); - - @override - Widget build(BuildContext context) { - final subject = message.decodeSubject() ?? i18n.noSubject; - return Scaffold( - body: SelectionArea( - child: CustomScrollView( - slivers: [ - SliverAppBar( - floating: true, - title: subject.text(), - ), - SliverToBoxAdapter( - child: MailMetaCard(message), - ), - SliverPadding( - padding: const EdgeInsets.all(8), - sliver: RestyledHtmlWidget( - _generateHtml(context, message), - renderMode: RenderMode.sliverList, - ), - ) - ], - ), - ), - ); - } -} - -String _generateHtml(BuildContext context, MimeMessage mimeMessage) { - return mimeMessage.transformToHtml( - blockExternalImages: false, - preferPlainText: true, - enableDarkMode: context.isDarkMode, - emptyMessageText: i18n.noContent, - ); -} - -class MailMetaCard extends StatelessWidget { - final MimeMessage message; - - const MailMetaCard(this.message, {super.key}); - - @override - Widget build(BuildContext context) { - final subject = message.decodeSubject() ?? i18n.noSubject; - final sender = message.decodeSender(); - var senderText = sender[0].toString(); - if (sender.length > 1) { - senderText += i18n.pluralSenderTailing; - } - final date = message.decodeDate(); - final dateText = date != null ? context.formatYmdhmsNum(date) : ''; - return [Text(subject), Text('$senderText\n$dateText')].column().inCard(); - } -} diff --git a/lib/me/edu_email/page/inbox.dart b/lib/me/edu_email/page/inbox.dart deleted file mode 100644 index 08d4850f7..000000000 --- a/lib/me/edu_email/page/inbox.dart +++ /dev/null @@ -1,86 +0,0 @@ -import 'package:enough_mail/enough_mail.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/error.dart'; - -import '../init.dart'; -import '../i18n.dart'; -import '../widgets/item.dart'; - -// TODO: Send email -class EduEmailInboxPage extends ConsumerStatefulWidget { - const EduEmailInboxPage({super.key}); - - @override - ConsumerState createState() => _EduEmailInboxPageState(); -} - -class _EduEmailInboxPageState extends ConsumerState { - List? messages; - - @override - initState() { - super.initState(); - final credentials = ref.read(CredentialsInit.storage.$eduEmailCredentials); - if (credentials != null) { - refresh(credentials); - } - } - - Future refresh(Credentials credentials) async { - if (!mounted) return; - try { - await EduEmailInit.service.login(credentials); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - CredentialsInit.storage.eduEmailCredentials = null; - return; - } - try { - final result = await EduEmailInit.service.getInboxMessage(30); - final messages = result.messages; - // The more recent the time, the smaller the index in the list. - messages.sort((a, b) { - return a.decodeDate()!.isAfter(b.decodeDate()!) ? -1 : 1; - }); - if (!mounted) return; - setState(() { - this.messages = messages; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - } - } - - @override - Widget build(BuildContext context) { - final credentials = ref.watch(CredentialsInit.storage.$eduEmailCredentials); - final messages = this.messages; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar( - floating: true, - title: i18n.inbox.title.text(), - bottom: credentials != null && messages == null - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - if (messages != null) - SliverList.builder( - itemCount: messages.length, - itemBuilder: (ctx, i) { - return EmailItem(messages[i]); - }, - ) - ], - ), - ); - } -} diff --git a/lib/me/edu_email/page/login.dart b/lib/me/edu_email/page/login.dart deleted file mode 100644 index 47d42a622..000000000 --- a/lib/me/edu_email/page/login.dart +++ /dev/null @@ -1,175 +0,0 @@ -import 'package:email_validator/email_validator.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/login/utils.dart'; -import 'package:sit/login/widgets/forgot_pwd.dart'; -import 'package:sit/r.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/utils/error.dart'; -import '../init.dart'; -import '../i18n.dart'; - -const _forgotLoginPasswordUrl = - "http://imap.mail.sit.edu.cn//edu_reg/retrieve/redirect?redirectURL=http://imap.mail.sit.edu.cn/coremail/index.jsp"; - -class EduEmailLoginPage extends StatefulWidget { - const EduEmailLoginPage({super.key}); - - @override - State createState() => _EduEmailLoginPageState(); -} - -class _EduEmailLoginPageState extends State { - final initialAccount = CredentialsInit.storage.oaCredentials?.account; - late final $username = TextEditingController(text: initialAccount); - final $password = TextEditingController(); - final _formKey = GlobalKey(); - bool isPasswordClear = false; - bool isLoggingIn = false; - - @override - void dispose() { - $username.dispose(); - $password.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return GestureDetector( - onTap: () { - // dismiss the keyboard when tap out of TextField. - FocusScope.of(context).requestFocus(FocusNode()); - }, - child: Scaffold( - appBar: AppBar( - title: i18n.login.title.text(), - bottom: isLoggingIn - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - body: buildBody(), - bottomNavigationBar: const ForgotPasswordButton(url: _forgotLoginPasswordUrl), - ), - ); - } - - Widget buildBody() { - return [ - buildForm(), - SizedBox(height: 10), - buildLoginButton(), - ].column(mas: MainAxisSize.min).scrolled(physics: const NeverScrollableScrollPhysics()).padH(25).center(); - } - - Widget buildForm() { - return Form( - autovalidateMode: AutovalidateMode.always, - key: _formKey, - child: AutofillGroup( - child: Column( - children: [ - TextFormField( - controller: $username, - textInputAction: TextInputAction.next, - autofocus: true, - readOnly: !Dev.on && initialAccount != null, - autocorrect: false, - enableSuggestions: false, - validator: (username) { - if (username == null) return null; - if (EmailValidator.validate(R.formatEduEmail(username: username))) return null; - return i18n.login.invalidEmailAddressFormatTip; - }, - decoration: InputDecoration( - labelText: i18n.info.emailAddress, - hintText: i18n.login.addressHint, - suffixText: "@${R.eduEmailDomain}", - icon: const Icon(Icons.alternate_email_outlined), - ), - ), - TextFormField( - controller: $password, - autofocus: true, - keyboardType: isPasswordClear ? TextInputType.visiblePassword : null, - textInputAction: TextInputAction.send, - contextMenuBuilder: (ctx, state) { - return AdaptiveTextSelectionToolbar.editableText( - editableTextState: state, - ); - }, - autocorrect: false, - enableSuggestions: false, - obscureText: !isPasswordClear, - onFieldSubmitted: (inputted) async { - if (!isLoggingIn) { - await onLogin(); - } - }, - decoration: InputDecoration( - labelText: i18n.login.credentials.pwd, - icon: Icon(context.icons.lock), - hintText: i18n.login.passwordHint, - suffixIcon: PlatformIconButton( - icon: Icon(isPasswordClear ? context.icons.eyeSolid : context.icons.eyeSlashSolid), - onPressed: () { - setState(() { - isPasswordClear = !isPasswordClear; - }); - }, - ), - ), - ), - ], - ), - ), - ); - } - - Widget buildLoginButton() { - return $username >> - (ctx, account) => FilledButton.icon( - // Online - onPressed: !isLoggingIn && account.text.isNotEmpty - ? () async { - // un-focus the text field. - FocusScope.of(context).requestFocus(FocusNode()); - await onLogin(); - } - : null, - icon: const Icon(Icons.login), - label: i18n.login.login.text().padAll(5), - ); - } - - Future onLogin() async { - final credential = Credentials( - account: R.formatEduEmail(username: $username.text), - password: $password.text, - ); - try { - if (!mounted) return; - setState(() => isLoggingIn = true); - await EduEmailInit.service.login(credential); - CredentialsInit.storage.eduEmailCredentials = credential; - if (!mounted) return; - setState(() => isLoggingIn = false); - context.replace("/edu-email/inbox"); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - if (!mounted) return; - setState(() => isLoggingIn = false); - if (error is Exception) { - await handleLoginException(context: context, error: error, stackTrace: stackTrace); - } - } - } -} diff --git a/lib/me/edu_email/page/outbox.dart b/lib/me/edu_email/page/outbox.dart deleted file mode 100644 index ddd1b4492..000000000 --- a/lib/me/edu_email/page/outbox.dart +++ /dev/null @@ -1,25 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import '../i18n.dart'; - -class EduEmailOutboxPage extends StatefulWidget { - const EduEmailOutboxPage({super.key}); - - @override - State createState() => _EduEmailOutboxPageState(); -} - -class _EduEmailOutboxPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar( - title: i18n.outbox.title.text(), - ), - ], - ), - ); - } -} diff --git a/lib/me/edu_email/service/email.dart b/lib/me/edu_email/service/email.dart deleted file mode 100644 index bb5836937..000000000 --- a/lib/me/edu_email/service/email.dart +++ /dev/null @@ -1,28 +0,0 @@ -import 'package:enough_mail/enough_mail.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/error.dart'; - -const _server = "imap.mail.sit.edu.cn"; -const _port = 993; - -class MailService { - final ImapClient _client = ImapClient(isLogEnabled: true, onBadCertificate: (_) => true); - - Future> login(Credentials credential) async { - try { - await _client.connectToServer(_server, _port, isSecure: true); - return await _client.login(credential.account, credential.password); - } catch (error) { - if (error is ImapException) { - throw CredentialsException(type: CredentialsErrorType.accountPassword, message: error.message); - } - rethrow; - } - } - - Future getInboxMessage([int count = 30]) async { - final mailboxes = await _client.listMailboxes(); - await _client.selectInbox(); - return await _client.fetchRecentMessages(messageCount: count); - } -} diff --git a/lib/me/edu_email/storage/email.dart b/lib/me/edu_email/storage/email.dart deleted file mode 100644 index 1a4214afa..000000000 --- a/lib/me/edu_email/storage/email.dart +++ /dev/null @@ -1,8 +0,0 @@ -import 'package:hive/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -class EduEmailStorage { - Box get box => HiveInit.eduEmail; - - const EduEmailStorage(); -} diff --git a/lib/me/edu_email/widgets/item.dart b/lib/me/edu_email/widgets/item.dart deleted file mode 100644 index e57032ca7..000000000 --- a/lib/me/edu_email/widgets/item.dart +++ /dev/null @@ -1,33 +0,0 @@ -import 'package:enough_mail/enough_mail.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/l10n/extension.dart'; - -import '../page/details.dart'; - -// TODO: Migration -class EmailItem extends StatelessWidget { - final MimeMessage _message; - - const EmailItem(this._message, {super.key}); - - @override - Widget build(BuildContext context) { - final titleStyle = Theme.of(context).textTheme.titleMedium; - final subtitleStyle = Theme.of(context).textTheme.bodyMedium; - - final subjectText = _message.decodeSubject() ?? ''; - final sender = _message.decodeSender(); - final senderText = sender[0].toString() + (sender.length > 1 ? '...' : ''); - final date = _message.decodeDate(); - final dateText = date != null ? context.formatYmdNum(date) : ''; - - return ListTile( - title: Text(subjectText, style: titleStyle, maxLines: 1, overflow: TextOverflow.fade), - subtitle: Text(senderText, style: subtitleStyle), - trailing: Text(dateText, style: subtitleStyle), - onTap: () { - Navigator.of(context).push(MaterialPageRoute(builder: (_) => EduEmailDetailsPage(_message))); - }, - ); - } -} diff --git a/lib/me/i18n.dart b/lib/me/i18n.dart deleted file mode 100644 index 1598f791c..000000000 --- a/lib/me/i18n.dart +++ /dev/null @@ -1,12 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "me"; - - String get navigation => "$ns.navigation".tr(); -} diff --git a/lib/me/index.dart b/lib/me/index.dart deleted file mode 100644 index 4fe8516b3..000000000 --- a/lib/me/index.dart +++ /dev/null @@ -1,135 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:simple_icons/simple_icons.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/game/2048/card.dart'; -import 'package:sit/game/minesweeper/card.dart'; -import 'package:sit/game/widget/card.dart'; -import 'package:sit/me/edu_email/index.dart'; -import 'package:sit/me/widgets/greeting.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/qrcode/utils.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/utils/error.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:url_launcher/url_launcher_string.dart'; -import "i18n.dart"; - -const _qGroupNumber = "917740212"; -const _joinQGroupMobileUri = - "mqqapi://card/show_pslcard?src_type=internal&version=1&uin=$_qGroupNumber&card_type=group&source=qrcode"; -const _joinQGroupDesktopUri = - "https://qm.qq.com/cgi-bin/qm/qr?k=9Gn1xo7NfyViy73OP-wVy-Tvzw2pW-fp&authKey=IiyjgIkoBD3I37l/ODvjonS4TwiEaceT4HSp0gxNe3kmicvPdb3opS9lQutKx1DH"; -const _wechatUri = "weixin://dl/publicaccount?username=gh_61f7fd217d36"; - -class MePage extends ConsumerStatefulWidget { - const MePage({super.key}); - - @override - ConsumerState createState() => _MePageState(); -} - -class _MePageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final devMode = ref.watch(Dev.$on); - return Scaffold( - resizeToAvoidBottomInset: false, - body: CustomScrollView( - slivers: [ - SliverAppBar( - titleTextStyle: context.textTheme.headlineSmall, - actions: [ - buildScannerAction(), - PlatformIconButton( - icon: Icon(context.icons.settings), - onPressed: () { - context.push("/settings"); - }, - ), - ], - ), - const SliverToBoxAdapter( - child: Greeting(), - ), - const SliverToBoxAdapter( - child: EduEmailAppCard(), - ), - SliverList.list( - children: [ - const GameAppCard2048(), - const GameAppCardMinesweeper(), - if (devMode) - const OfflineGameAppCard( - name: "SIT Suika", - baseRoute: "/suika", - ), - ], - ), - SliverList.list(children: [ - buildQQGroupTile(), - buildWechatOfficialAccountTile(), - ]), - ], - ), - ); - } - - Widget buildQQGroupTile() { - return ListTile( - leading: const Icon(SimpleIcons.tencentqq), - title: "QQ交流群".text(), - subtitle: _qGroupNumber.text(), - trailing: PlatformIconButton( - padding: EdgeInsets.zero, - onPressed: () async { - try { - if (UniversalPlatform.isIOS || UniversalPlatform.isAndroid) { - await launchUrlString(_joinQGroupMobileUri); - } else { - await launchUrlString(_joinQGroupDesktopUri, mode: LaunchMode.externalNonBrowserApplication); - } - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - await Clipboard.setData(const ClipboardData(text: _qGroupNumber)); - if (!mounted) return; - context.showSnackBar(content: "已复制到剪贴板".text()); - } - }, - icon: const Icon(Icons.group), - ), - ); - } - - Widget buildWechatOfficialAccountTile() { - return ListTile( - leading: const Icon(SimpleIcons.wechat), - title: "微信公众号".text(), - subtitle: "小应生活".text(), - trailing: PlatformIconButton( - padding: EdgeInsets.zero, - onPressed: () async { - try { - await launchUrlString(_wechatUri); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - } - }, - icon: Icon(context.icons.rightChevron), - ), - ); - } - - Widget buildScannerAction() { - return PlatformIconButton( - onPressed: () async { - await recognizeQrCode(context); - }, - icon: const Icon(Icons.qr_code_scanner_outlined), - ); - } -} diff --git a/lib/me/widgets/greeting.dart b/lib/me/widgets/greeting.dart deleted file mode 100644 index 7d041c047..000000000 --- a/lib/me/widgets/greeting.dart +++ /dev/null @@ -1,86 +0,0 @@ -import 'dart:async'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/utils/timer.dart'; -import 'package:rettulf/rettulf.dart'; - -class Greeting extends ConsumerStatefulWidget { - const Greeting({super.key}); - - @override - ConsumerState createState() => _GreetingState(); -} - -class _GreetingState extends ConsumerState { - Timer? dayWatcher; - DateTime? _admissionDate; - - @override - void initState() { - super.initState(); - - /// Rebuild the study days when date is changed. - dayWatcher = runPeriodically(const Duration(minutes: 1), (timer) { - final admissionDate = _admissionDate; - if (admissionDate != null) { - setState(() {}); - } - }); - } - - @override - void dispose() { - dayWatcher?.cancel(); - super.dispose(); - } - - int _getStudyDaysAndInitState(Credentials credentials) { - final id = credentials.account; - if (id.isNotEmpty) { - final admissionYearTrailing = int.tryParse(id.substring(0, 2)); - if (admissionYearTrailing != null) { - int admissionYear = 2000 + admissionYearTrailing; - final admissionDate = DateTime(admissionYear, 9, 1); - _admissionDate = admissionDate; - - /// To calculate admission year after 2000, the default start date is September 1st. - /// e.g. 2018. - return DateTime.now().difference(admissionDate).inDays; - } - } - return 0; - } - - @override - Widget build(BuildContext context) { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - final studyDays = credentials == null ? 0 : _getStudyDaysAndInitState(credentials); - - final days = studyDays; - return ListTile( - titleTextStyle: context.textTheme.titleMedium, - title: _i18n.headerA.text(), - subtitleTextStyle: context.textTheme.headlineSmall, - subtitle: _i18n.headerB((days) + 1).text(), - ); - } -} - -const _i18n = _I18n(); - -class _I18n { - const _I18n(); - - static const ns = "greeting"; - - final campus = const CampusI10n(); - - String get headerA => "$ns.headerA".tr(); - - String headerB(int day) => "$ns.headerB".plural(day, args: [day.toString()]); -} diff --git a/lib/migration/foundation.dart b/lib/migration/foundation.dart deleted file mode 100644 index fa4bfb08a..000000000 --- a/lib/migration/foundation.dart +++ /dev/null @@ -1,93 +0,0 @@ -import 'dart:async'; - -import 'package:version/version.dart'; - -enum MigrationPhrase { - beforeHive, - afterHive, - afterInitStorage, -} - -/// Migration happens after Hive is initialized, but before all other initializations. -/// If the interval is long enough, each migration between two versions will be performed in sequence. -abstract class Migration { - const Migration(); - - factory Migration.run(FutureOr Function(MigrationPhrase phrase) func) { - return _FunctionalMigration(func); - } - - /// Perform the migration for a specific version. - Future perform(MigrationPhrase phrase); - - Migration operator +(Migration then) => ChainedMigration([this, then]); -} - -class _FunctionalMigration extends Migration { - final FutureOr Function(MigrationPhrase phrase) func; - - const _FunctionalMigration(this.func); - - @override - Future perform(MigrationPhrase phrase) async { - await func(phrase); - } -} - -class ChainedMigration extends Migration { - final List migrations; - - ChainedMigration(this.migrations); - - @override - Future perform(MigrationPhrase phrase) async { - for (final migration in migrations) { - await migration.perform(phrase); - } - } -} - -class _MigrationEntry implements Comparable<_MigrationEntry> { - final Version version; - final Migration migration; - - _MigrationEntry(this.version, this.migration); - - @override - int compareTo(_MigrationEntry other) { - return version.compareTo(other.version); - } -} - -class MigrationManager { - final List<_MigrationEntry> _migrations = []; - - /// Add a migration when - void addWhen(Version version, {required Migration perform}) { - _migrations.add(_MigrationEntry(version, perform)); - } - - /// [from] is exclusive. - /// [current] is inclusive. - List collectBetween(Version from, Version current) { - if (from == current) return []; - _migrations.sort(); - final involved = _migrations.where((m) { - // from: 2.3.2, m: 2.3.1 => no - // from: 2.3.2, m: 2.3.2 => yes - // from: 2.3.2, m: 2.4.0 => yes - if (from <= m.version) { - return true; - } - // current: 2.4.0, m: 2.3.2 => no - // current: 2.4.0, m: 2.4.0 => yes - // from: 2.4.0, current: 2.4.0, m: 2.4.0 => filter at first - // from: 2.3.2, current: 2.4.0, m: 2.4.0 => handled upper - if (current <= m.version) { - return true; - } - return false; - }).toList(); - return involved.map((e) => e.migration).toList(); - } -} diff --git a/lib/migration/migrations.dart b/lib/migration/migrations.dart deleted file mode 100644 index 4abdebde3..000000000 --- a/lib/migration/migrations.dart +++ /dev/null @@ -1,104 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:sit/files.dart'; -import 'package:sit/settings/entity/proxy.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:version/version.dart'; - -import 'foundation.dart'; - -class Migrations { - static final _manager = MigrationManager(); - static Migration? _onNullVersion; - - static void init() { - Version(1, 0, 0) << - Migration.run((phrase) async { - if (phrase == MigrationPhrase.afterHive) { - await HiveInit.clearCache(); - } - }); - Version(2, 4, 0) << - Migration.run((phrase) async { - if (kIsWeb) return; - switch (phrase) { - case MigrationPhrase.beforeHive: - final oldTimetableBackgroundFi = Files.user.subFile("timetable", "background.img"); - final oldExists = await oldTimetableBackgroundFi.exists(); - final newExists = await Files.timetable.backgroundFile.exists(); - if (oldExists && !newExists) { - await oldTimetableBackgroundFi.copy(Files.timetable.backgroundFile.path); - await oldTimetableBackgroundFi.delete(); - } - case MigrationPhrase.afterHive: - await HiveInit.ywb.clear(); - // proxy - final proxyBox = Settings.proxy.box; - for (final cat in ProxyCat.values) { - if (Settings.proxy.getProfileOf(cat) != null) { - continue; - } - final address = proxyBox.safeGet("/proxy/${cat.name}/address"); - final addressUri = address != null ? Uri.tryParse(address) : null; - final enabled = proxyBox.safeGet("/proxy/${cat.name}/enabled"); - final mode = proxyBox.safeGet("/proxy/${cat.name}/proxyMode"); - if (addressUri != null && !cat.isDefaultUri(addressUri)) { - await Settings.proxy.setProfileOf( - cat, - ProxyProfile( - address: addressUri, - enabled: enabled ?? true, - mode: mode ?? ProxyMode.schoolOnly, - ), - ); - } - await proxyBox.delete("/proxy/${cat.name}/address"); - await proxyBox.delete("/proxy/${cat.name}/enabled"); - await proxyBox.delete("/proxy/${cat.name}/proxyMode"); - } - case MigrationPhrase.afterInitStorage: - } - }); - } - - static MigrationMatch match({ - required Version? from, - required Version? to, - }) { - final result = []; - if (from == null) { - final onNullVersion = _onNullVersion; - if (onNullVersion != null) { - result.add(onNullVersion); - } - } else if (to != null) { - final all = _manager.collectBetween(from, to); - result.addAll(all); - } - return MigrationMatch(result); - } -} - -class MigrationMatch { - final List _migrations; - - const MigrationMatch(this._migrations); - - Future perform(MigrationPhrase phrase) async { - try { - for (final migration in _migrations) { - await migration.perform(phrase); - } - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - } - } -} - -extension _MigrationEx on Version { - void operator <<(Migration migration) { - Migrations._manager.addWhen(this, perform: migration); - } -} diff --git a/lib/network/connectivity.dart b/lib/network/connectivity.dart deleted file mode 100644 index 66ca46317..000000000 --- a/lib/network/connectivity.dart +++ /dev/null @@ -1,97 +0,0 @@ -import 'dart:async'; - -import 'package:connectivity_plus/connectivity_plus.dart'; -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:flutter/material.dart'; - -part "connectivity.g.dart"; - -enum ConnectivityType { - bluetooth, - wifi, - ethernet, - cellular, - other; -} - -@CopyWith(skipFields: true) -class ConnectivityStatus { - final ConnectivityType? type; - final bool vpnEnabled; - - const ConnectivityStatus({ - required this.type, - required this.vpnEnabled, - }); - - const ConnectivityStatus.disconnected({ - required this.vpnEnabled, - }) : type = null; - - const ConnectivityStatus.otherType({ - required this.vpnEnabled, - }) : type = ConnectivityType.other; - - @override - String toString() { - return "$type, vpn:$vpnEnabled"; - } -} - -ConnectivityType? _parseResult(ConnectivityResult? r) { - assert(r != ConnectivityResult.none); - assert(r != ConnectivityResult.vpn); - return switch (r) { - ConnectivityResult.bluetooth => ConnectivityType.bluetooth, - ConnectivityResult.wifi => ConnectivityType.wifi, - ConnectivityResult.ethernet => ConnectivityType.ethernet, - ConnectivityResult.mobile => ConnectivityType.cellular, - ConnectivityResult.none => null, - ConnectivityResult.vpn => null, - ConnectivityResult.other => ConnectivityType.other, - null => null, - }; -} - -Future checkConnectivity() async { - var types = await Connectivity().checkConnectivity(); - if (types.isEmpty || types.first == ConnectivityResult.none) { - return const ConnectivityStatus.disconnected(vpnEnabled: false); - } - var vpnEnabled = types.contains(ConnectivityResult.vpn); - if (types.contains(ConnectivityResult.other)) { - return ConnectivityStatus.otherType(vpnEnabled: vpnEnabled); - } - final type = types.where((t) => t != ConnectivityResult.vpn && t != ConnectivityResult.other).firstOrNull; - return ConnectivityStatus(type: _parseResult(type), vpnEnabled: vpnEnabled); -} - -Stream checkPeriodic({ - required Duration period, - required FutureOr Function() check, -}) async* { - while (true) { - final result = await check(); - debugPrint(result.toString()); - yield result; - await Future.delayed(period); - } -} - -const _type2Icon = { - ConnectivityType.bluetooth: Icons.bluetooth, - ConnectivityType.wifi: Icons.wifi, - ConnectivityType.ethernet: Icons.lan, - ConnectivityType.cellular: Icons.signal_cellular_alt, -}; - -IconData getConnectionTypeIcon( - ConnectivityStatus? status, { - IconData? fallback, - bool ignoreVpn = false, -}) { - if (status == null) return Icons.wifi_find_outlined; - if (!ignoreVpn && status.vpnEnabled) return Icons.vpn_key; - if (status.type == null) return Icons.public_off; - return _type2Icon[status.type] ?? fallback ?? Icons.signal_wifi_statusbar_null_outlined; -} diff --git a/lib/network/connectivity.g.dart b/lib/network/connectivity.g.dart deleted file mode 100644 index 733f0b2e8..000000000 --- a/lib/network/connectivity.g.dart +++ /dev/null @@ -1,57 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'connectivity.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$ConnectivityStatusCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// ConnectivityStatus(...).copyWith(id: 12, name: "My name") - /// ```` - ConnectivityStatus call({ - ConnectivityType? type, - bool? vpnEnabled, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfConnectivityStatus.copyWith(...)`. -class _$ConnectivityStatusCWProxyImpl implements _$ConnectivityStatusCWProxy { - const _$ConnectivityStatusCWProxyImpl(this._value); - - final ConnectivityStatus _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// ConnectivityStatus(...).copyWith(id: 12, name: "My name") - /// ```` - ConnectivityStatus call({ - Object? type = const $CopyWithPlaceholder(), - Object? vpnEnabled = const $CopyWithPlaceholder(), - }) { - return ConnectivityStatus( - type: type == const $CopyWithPlaceholder() - ? _value.type - // ignore: cast_nullable_to_non_nullable - : type as ConnectivityType?, - vpnEnabled: vpnEnabled == const $CopyWithPlaceholder() || vpnEnabled == null - ? _value.vpnEnabled - // ignore: cast_nullable_to_non_nullable - : vpnEnabled as bool, - ); - } -} - -extension $ConnectivityStatusCopyWith on ConnectivityStatus { - /// Returns a callable class that can be used as follows: `instanceOfConnectivityStatus.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$ConnectivityStatusCWProxy get copyWith => _$ConnectivityStatusCWProxyImpl(this); -} diff --git a/lib/network/dio.dart b/lib/network/dio.dart deleted file mode 100644 index 5be551a35..000000000 --- a/lib/network/dio.dart +++ /dev/null @@ -1,85 +0,0 @@ -import 'dart:math'; - -import 'package:cookie_jar/cookie_jar.dart'; -import 'package:dio/dio.dart'; -import 'package:dio_cookie_manager/dio_cookie_manager.dart'; -import 'package:fk_user_agent/fk_user_agent.dart'; -import 'package:flutter/foundation.dart'; -import 'package:sit/r.dart'; - -final _rand = Random(); - -class DioInit { - static Future init({ - required CookieJar cookieJar, - BaseOptions? config, - }) async { - final dio = Dio(); - if (!kIsWeb) { - dio.interceptors.add(CookieManager(cookieJar)); - } - if (kDebugMode && R.debugNetwork) { - dio.interceptors.add(LogInterceptor()); - } - if (kDebugMode && R.debugNetwork && R.poorNetworkSimulation) { - dio.interceptors.add(PoorNetworkDioInterceptor()); - } - if (config != null) { - dio.options = config; - } - await initUserAgentString(dio: dio); - - return dio; - } - - static String getRandomUa() { - return R.userAgentList[_rand.nextInt(R.userAgentList.length)].trim(); - } - - static Future initUserAgentString({ - required Dio dio, - }) async { - try { - // 如果非IOS/Android,则该函数将抛异常 - await FkUserAgent.init(); - // 更新 dio 设置的 user-agent 字符串 - dio.options.headers['User-Agent'] = FkUserAgent.webViewUserAgent ?? getRandomUa(); - } catch (e) { - // Desktop端将进入该异常 - dio.options.headers['User-Agent'] = getRandomUa(); - } - } -} - -final _debugRequests = []; -final _debugResponses = []; - -class PoorNetworkDioInterceptor extends Interceptor { - @override - Future onRequest(RequestOptions options, RequestInterceptorHandler handler) async { - if (kDebugMode) { - _debugRequests.add(options); - } - if (options.path == "http://sc.sit.edu.cn//public/init/index.action" || - options.path == "http://sc.sit.edu.cn/public/init/index.action") { - print("!!!!!!!!!!"); - } - final duration = Duration(milliseconds: _rand.nextInt(2000)); - debugPrint("Start to request ${options.uri}"); - await Future.delayed(duration); - debugPrint("Delayed Request ${options.uri} $duration"); - handler.next(options); - } - - @override - Future onResponse(Response response, ResponseInterceptorHandler handler) async { - if (kDebugMode) { - _debugResponses.add(response); - } - final duration = Duration(milliseconds: _rand.nextInt(2000)); - debugPrint("Start to response ${response.realUri}"); - await Future.delayed(duration); - debugPrint("Delayed Response ${response.realUri} $duration"); - handler.next(response); - } -} diff --git a/lib/network/i18n.dart b/lib/network/i18n.dart deleted file mode 100644 index 6f7e91373..000000000 --- a/lib/network/i18n.dart +++ /dev/null @@ -1,116 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/credentials/i18n.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/network/widgets/checker.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "networkTool"; - final easyconnect = const _Easyconnect(); - final network = const NetworkI18n(); - final credentials = const OaCredentialsI18n(); - final checker = const _NetworkCheckerI18n(); - - String get title => "$ns.title".tr(); - - String get subtitle => "$ns.subtitle".tr(); - - String get openWifiSettingsBtn => "$ns.openWifiSettingsBtn".tr(); - - String get openInAppProxySettingsBtn => "$ns.openInAppProxySettingsBtn".tr(); - - String get connectionFailedError => "$ns.connectionFailedError".tr(); - - String get connectionFailedButCampusNetworkConnected => "$ns.connectionFailedButCampusNetworkConnected".tr(); - - String get studentRegAvailable => "$ns.studentRegAvailable".tr(); - - String get studentRegUnavailable => "$ns.studentRegUnavailable".tr(); - - String get ugRegAvailableTip => "$ns.ugRegAvailableTip".tr(); - - String get ugRegUnavailableTip => "$ns.ugRegUnavailableTip".tr(); - - String get pgRegAvailableTip => "$ns.pgRegAvailableTip".tr(); - - String get pgRegUnavailableTip => "$ns.pgRegUnavailableTip".tr(); - - String get campusNetworkConnected => "$ns.campusNetworkConnected".tr(); - - String get campusNetworkNotConnected => "$ns.campusNetworkNotConnected".tr(); - - String get troubleshoot => "$ns.troubleshoot".tr(); - - String get studentRegTroubleshoot => "$ns.studentRegTroubleshoot".tr(); - - String get studentRegUnavailableButCampusNetworkConnected => - "$ns.studentRegUnavailableButCampusNetworkConnected".tr(); -} - -class _Easyconnect { - const _Easyconnect(); - - static const ns = "easyconnect"; - - String get launchBtn => "$ns.launchBtn".tr(); - - String get launchFailed => "$ns.launchFailed".tr(); - - String get launchFailedDesc => "$ns.launchFailedDesc".tr(); -} - -class _NetworkCheckerI18n { - const _NetworkCheckerI18n(); - - static const ns = "networkChecker"; - - final button = const _NetworkCheckerButton(); - final status = const _NetworkCheckerStatus(); - - String get testConnection => "$ns.testConnection.title".tr(); - - String testConnectionDesc(WhereToCheck where) => "$ns.testConnection.desc".tr(namedArgs: { - "where": where.l10n(), - }); -} - -class _NetworkCheckerButton { - final String ns = "${_NetworkCheckerI18n.ns}.button"; - - const _NetworkCheckerButton(); - - String get connected => "$ns.connected".tr(); - - String get connecting => "$ns.connecting".tr(); - - String get disconnected => "$ns.disconnected".tr(); - - String get none => "$ns.none".tr(); -} - -class _NetworkCheckerStatus { - final String ns = "${_NetworkCheckerI18n.ns}.status"; - - const _NetworkCheckerStatus(); - - String connected(WhereToCheck where) => "$ns.connected".tr(namedArgs: { - "where": where.l10n(), - }); - - String connecting(WhereToCheck where) => "$ns.connecting".tr(); - - String disconnected(WhereToCheck where) => "$ns.disconnected".tr(namedArgs: { - "where": where.l10n(), - }); - - String none(WhereToCheck where) => "$ns.none".tr(namedArgs: { - "where": where.l10n(), - }); -} - -extension WhereToCheckI18nX on WhereToCheck { - String l10n() => "${_NetworkCheckerI18n.ns}.whereToCheck.$name".tr(); -} diff --git a/lib/network/page/index.dart b/lib/network/page/index.dart deleted file mode 100644 index c4f89084a..000000000 --- a/lib/network/page/index.dart +++ /dev/null @@ -1,241 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter/rendering.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/animation/animated.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/icon.dart'; -import 'package:sit/init.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/network/service/network.dart'; -import 'package:sit/network/widgets/buttons.dart'; -import '../connectivity.dart'; - -import '../i18n.dart'; -import '../utils.dart'; - -class NetworkToolPage extends StatefulWidget { - const NetworkToolPage({super.key}); - - @override - State createState() => _NetworkToolPageState(); -} - -class _NetworkToolPageState extends State { - bool? studentRegAvailable; - CampusNetworkStatus? campusNetworkStatus; - ConnectivityStatus? connectivityStatus; - late StreamSubscription studentRegChecker; - late StreamSubscription connectivityChecker; - late StreamSubscription campusNetworkChecker; - - @override - void initState() { - super.initState(); - connectivityChecker = checkPeriodic( - period: const Duration(milliseconds: 1000), - check: () => checkConnectivityWithProxySettings(schoolNetwork: true), - ).listen((status) { - if (connectivityStatus != status) { - if (!mounted) return; - setState(() { - connectivityStatus = status; - }); - } - }); - studentRegChecker = checkPeriodic( - period: const Duration(milliseconds: 8000), - check: () async { - try { - return await Init.ugRegSession.checkConnectivity(); - } catch (err) { - return false; - } - }, - ).listen((connected) { - if (studentRegAvailable != connected) { - setState(() { - studentRegAvailable = connected; - }); - } - }); - campusNetworkChecker = checkPeriodic( - period: const Duration(milliseconds: 3000), - check: () async { - return await Network.checkCampusNetworkStatus(); - }, - ).listen((status) { - if (campusNetworkStatus != status) { - if (!mounted) return; - setState(() { - campusNetworkStatus = status; - }); - } - }); - } - - @override - void dispose() { - connectivityChecker.cancel(); - studentRegChecker.cancel(); - campusNetworkChecker.cancel(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: [ - i18n.title.text(), - const CircularProgressIndicator.adaptive().sizedAll(16), - ].wrap(caa: WrapCrossAlignment.center, spacing: 16), - ), - SliverList.list( - children: [ - ConnectivityInfo( - status: connectivityStatus, - ).padSymmetric(v: 16, h: 8).inOutlinedCard().animatedSized(), - CampusNetworkConnectivityInfo( - status: campusNetworkStatus, - ).padSymmetric(v: 16, h: 8).inOutlinedCard().animatedSized(), - StudentRegConnectivityInfo( - connected: studentRegAvailable, - ).padSymmetric(v: 16, h: 8).inOutlinedCard().animatedSized(), - if (studentRegAvailable == false && campusNetworkStatus != null) - i18n.studentRegUnavailableButCampusNetworkConnected - .text( - style: context.textTheme.bodyLarge, - textAlign: TextAlign.center, - ) - .padSymmetric(v: 16, h: 8) - .inOutlinedCard(), - if (studentRegAvailable == false) - [ - i18n.troubleshoot.text(style: context.textTheme.titleMedium), - i18n.studentRegTroubleshoot.text( - style: context.textTheme.bodyMedium, - ) - ].column().padSymmetric(v: 16, h: 8).inOutlinedCard(), - ], - ), - ], - ), - bottomNavigationBar: BottomAppBar( - child: ListView( - scrollDirection: Axis.horizontal, - padding: const EdgeInsets.only(right: 8, top: 8, bottom: 8), - children: const [ - LaunchEasyConnectButton(), - SizedBox(width: 8), - OpenWifiSettingsButton(), - SizedBox(width: 8), - OpenInAppProxyButton(), - ], - ), - ), - ); - } -} - -class ConnectivityInfo extends StatelessWidget { - final ConnectivityStatus? status; - - const ConnectivityInfo({ - required this.status, - super.key, - }); - - @override - Widget build(BuildContext context) { - final status = this.status; - return [ - DualIcon( - primary: status == null ? Icons.public_off : getConnectionTypeIcon(status, ignoreVpn: true), - secondary: status?.vpnEnabled == true ? Icons.vpn_key : null, - size: 120, - ), - ].column(caa: CrossAxisAlignment.center); - } -} - -class StudentRegConnectivityInfo extends ConsumerWidget { - final bool? connected; - - const StudentRegConnectivityInfo({ - super.key, - required this.connected, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final userType = ref.watch(CredentialsInit.storage.$oaUserType); - final widgets = []; - final connected = this.connected; - final textTheme = context.textTheme; - widgets.add((switch (connected) { - null => i18n.checker.button.connecting, - true => i18n.studentRegAvailable, - false => i18n.studentRegUnavailable, - }) - .text( - style: textTheme.titleMedium, - )); - Widget buildTip(String tip) { - return tip.text( - textAlign: TextAlign.center, - style: textTheme.bodyMedium, - ); - } - - switch (connected) { - case true: - if (userType == OaUserType.undergraduate) { - widgets.add(buildTip(i18n.ugRegAvailableTip)); - } else if (userType == OaUserType.postgraduate) { - widgets.add(buildTip(i18n.pgRegAvailableTip)); - } - case false: - if (userType == OaUserType.undergraduate) { - widgets.add(buildTip(i18n.ugRegUnavailableTip)); - } else if (userType == OaUserType.postgraduate) { - widgets.add(buildTip(i18n.pgRegUnavailableTip)); - } - case null: - } - return widgets.column(caa: CrossAxisAlignment.center); - } -} - -class CampusNetworkConnectivityInfo extends StatelessWidget { - final CampusNetworkStatus? status; - - const CampusNetworkConnectivityInfo({ - super.key, - this.status, - }); - - @override - Widget build(BuildContext context) { - final style = context.textTheme.bodyMedium; - final status = this.status; - String? ip; - String? studentId; - if (status != null) { - ip = status.ip; - studentId = status.studentId ?? i18n.unknown; - } - return [ - (status == null ? i18n.campusNetworkNotConnected : i18n.campusNetworkConnected).text( - style: context.textTheme.titleMedium, - ), - if (studentId != null) "${i18n.credentials.studentId}: $studentId".text(style: style), - if (ip != null) "${i18n.network.ipAddress}: $ip".text(style: style), - ].column(caa: CrossAxisAlignment.center); - } -} diff --git a/lib/network/proxy.dart b/lib/network/proxy.dart deleted file mode 100644 index a986a77e4..000000000 --- a/lib/network/proxy.dart +++ /dev/null @@ -1,73 +0,0 @@ -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:sit/r.dart'; -import 'package:sit/settings/entity/proxy.dart'; -import 'package:sit/settings/settings.dart'; - -class SitHttpOverrides extends HttpOverrides { - SitHttpOverrides(); - - @override - HttpClient createHttpClient(SecurityContext? context) { - final client = super.createHttpClient(context); - client.badCertificateCallback = (cert, host, port) => true; - client.findProxy = (url) { - if (kDebugMode) { - print('Accessing "$url", captured by $SitHttpOverrides'); - } - final host = url.host; - final isSchoolLanRequired = _isSchoolLanRequired(host); - final profiles = _buildProxy(isSchoolLanRequired); - if (profiles.http == null && profiles.https == null && profiles.all == null) { - return 'DIRECT'; - } else { - final env = _toEnvMap(profiles); - if (kDebugMode) { - print("Access $url ${env.isEmpty ? "bypass proxy" : "by proxy $env"}"); - } - // TODO: Socks proxy doesn't work with env - return HttpClient.findProxyFromEnvironment( - url, - environment: env, - ); - } - }; - return client; - } -} - -Map _toEnvMap(({String? http, String? https, String? all}) profiles) { - final (:http, :https, :all) = profiles; - return { - if (http != null) "http_proxy": http, - if (https != null) "https_proxy": https, - if (all != null) "all_proxy": all, - }; -} - -({String? http, String? https, String? all}) _buildProxy(bool isSchoolLanRequired) { - return ( - http: _buildProxyForType(ProxyCat.http, isSchoolLanRequired), - https: _buildProxyForType(ProxyCat.https, isSchoolLanRequired), - all: _buildProxyForType(ProxyCat.all, isSchoolLanRequired), - ); -} - -String? _buildProxyForType(ProxyCat cat, bool isSchoolLanRequired) { - final profile = Settings.proxy.getProfileOf(cat); - if (profile == null) return null; - final address = profile.address; - if (!profile.enabled) return null; - if (profile.mode == ProxyMode.global || !isSchoolLanRequired) return null; - return address.toString(); -} - -bool _isSchoolLanRequired(String host) { - for (final uri in R.sitSchoolNetworkUriList) { - if (host == uri.host) { - return true; - } - } - return false; -} diff --git a/lib/network/service/network.dart b/lib/network/service/network.dart deleted file mode 100644 index c5ccfd5e5..000000000 --- a/lib/network/service/network.dart +++ /dev/null @@ -1,140 +0,0 @@ -import 'dart:convert'; - -import 'package:dio/dio.dart'; -import 'package:json_annotation/json_annotation.dart'; - -part 'network.g.dart'; - -bool _toBool(int num) => num != 0; - -@JsonSerializable(createToJson: false) -class CampusNetworkStatus { - /// 1:logged in - /// 0:not logged in - @JsonKey(name: "result", fromJson: _toBool) - final bool loggedIn; - - /// Currently assigned IP in the campus network - @JsonKey(name: 'v46ip') - final String ip; - - /// the student ID currently logged in with - @JsonKey(name: "uid") - final String? studentId; - - const CampusNetworkStatus({ - required this.loggedIn, - required this.ip, - this.studentId, - }); - - factory CampusNetworkStatus.fromJson(Map json) => _$CampusNetworkStatusFromJson(json); - - @override - String toString() { - return { - "loggedIn": loggedIn, - "ip": ip, - "studentId": studentId, - }.toString(); - } -} - -@JsonSerializable(createToJson: false) -class LogoutResult { - final int result; - - LogoutResult(this.result); - - factory LogoutResult.fromJson(Map json) => _$LogoutResultFromJson(json); -} - -@JsonSerializable() -class LoginResult { - final int result; - - const LoginResult(this.result); - - factory LoginResult.fromJson(Map json) => _$LoginResultFromJson(json); - - Map toJson() => _$LoginResultToJson(this); -} - -class Network { - static const _indexUrl = 'http://172.16.8.70'; - static const _drcomUrl = '$_indexUrl/drcom'; - static const _loginUrl = '$_drcomUrl/login'; - static const _checkStatusUrl = '$_drcomUrl/chkstatus'; - static const _logoutUrl = '$_drcomUrl/logout'; - - static final dio = Dio() - ..options = BaseOptions( - connectTimeout: const Duration(milliseconds: 3000), - sendTimeout: const Duration(milliseconds: 3000), - receiveTimeout: const Duration(milliseconds: 3000), - ); - - static Future> _get(String url, {Map? queryParameters}) async { - var response = await dio.get( - url, - queryParameters: queryParameters, - options: Options( - responseType: ResponseType.plain, - ), - ); - var jsonp = response.data.toString().trim(); - return jsonDecode(jsonp.substring(7, jsonp.length - 1)); - } - - static Future login(String username, String password) async { - return LoginResult.fromJson(await _get( - _loginUrl, - queryParameters: { - 'callback': 'dr1003', - 'DDDDD': username, - 'upass': password, - '0MKKey': '123456', - "R1'": '0', - 'R2': '', - 'R3': '0', - 'R6': '0', - 'para': '00', - 'terminal_type': '1', - 'lang': 'zh-cn', - 'jsVersion': '4.1', - }, - )); - } - - static Future checkCampusNetworkStatus() async { - try { - final payload = await _get( - _checkStatusUrl, - queryParameters: { - 'callback': 'dr1002', - 'lang': 'zh', - 'jsVersion': '4.X', - }, - ); - return CampusNetworkStatus.fromJson(payload); - } catch (error) { - return null; - } - } - - static Future logout() async { - try { - final payload = await _get( - _logoutUrl, - queryParameters: { - 'callback': 'dr1002', - 'jsVersion': '4.1.3', - 'lang': 'zh', - }, - ); - return LogoutResult.fromJson(payload); - } catch (error) { - return null; - } - } -} diff --git a/lib/network/service/network.g.dart b/lib/network/service/network.g.dart deleted file mode 100644 index 4d1cd70d8..000000000 --- a/lib/network/service/network.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'network.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -CampusNetworkStatus _$CampusNetworkStatusFromJson(Map json) => CampusNetworkStatus( - loggedIn: _toBool((json['result'] as num).toInt()), - ip: json['v46ip'] as String, - studentId: json['uid'] as String?, - ); - -LogoutResult _$LogoutResultFromJson(Map json) => LogoutResult( - (json['result'] as num).toInt(), - ); - -LoginResult _$LoginResultFromJson(Map json) => LoginResult( - (json['result'] as num).toInt(), - ); - -Map _$LoginResultToJson(LoginResult instance) => { - 'result': instance.result, - }; diff --git a/lib/network/utils.dart b/lib/network/utils.dart deleted file mode 100644 index 93d0c54c6..000000000 --- a/lib/network/utils.dart +++ /dev/null @@ -1,25 +0,0 @@ -import 'package:sit/settings/entity/proxy.dart'; -import 'package:sit/settings/settings.dart'; - -import 'connectivity.dart'; - -Future checkConnectivityWithProxySettings({ - required bool schoolNetwork, -}) async { - final status = await checkConnectivity(); - final proxyEnabled = Settings.proxy.anyEnabled; - if (!proxyEnabled) return status; - - final schoolNetworkProxy = Settings.proxy.hasAnyProxyMode(ProxyMode.schoolOnly); - final globalProxy = Settings.proxy.hasAnyProxyMode(ProxyMode.global); - var vpnEnabled = status.vpnEnabled; - if (!schoolNetwork && globalProxy) { - vpnEnabled |= true; - } - if (schoolNetwork && (schoolNetworkProxy || globalProxy)) { - vpnEnabled |= true; - } - return status.copyWith( - vpnEnabled: vpnEnabled, - ); -} diff --git a/lib/network/widgets/buttons.dart b/lib/network/widgets/buttons.dart deleted file mode 100644 index 4d0e7b6f4..000000000 --- a/lib/network/widgets/buttons.dart +++ /dev/null @@ -1,66 +0,0 @@ -import 'package:app_settings/app_settings.dart'; -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/utils/guard_launch.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../i18n.dart'; - -const easyConnectDownloadUrl = "https://vpn1.sit.edu.cn/com/installClient.html"; - -class LaunchEasyConnectButton extends StatelessWidget { - const LaunchEasyConnectButton({super.key}); - - @override - Widget build(BuildContext context) { - return FilledButton( - child: i18n.easyconnect.launchBtn.text(), - onPressed: () async { - final launched = await guardLaunchUrlString(context, 'sangfor://easyconnect'); - if (!launched) { - if (!context.mounted) return; - final confirm = await context.showDialogRequest( - title: i18n.easyconnect.launchFailed, - desc: i18n.easyconnect.launchFailedDesc, - primary: i18n.download, - secondary: i18n.cancel, - primaryDestructive: true, - ); - if (confirm == true) { - if (!context.mounted) return; - await guardLaunchUrlString(context, easyConnectDownloadUrl); - } - } - }, - ); - } -} - -class OpenWifiSettingsButton extends StatelessWidget { - const OpenWifiSettingsButton({super.key}); - - @override - Widget build(BuildContext context) { - return OutlinedButton( - onPressed: () { - AppSettings.openAppSettings(type: AppSettingsType.wifi); - }, - child: i18n.openWifiSettingsBtn.text(), - ); - } -} - -class OpenInAppProxyButton extends StatelessWidget { - const OpenInAppProxyButton({super.key}); - - @override - Widget build(BuildContext context) { - return OutlinedButton( - onPressed: () { - context.push("/settings/proxy"); - }, - child: i18n.openInAppProxySettingsBtn.text(), - ); - } -} diff --git a/lib/network/widgets/checker.dart b/lib/network/widgets/checker.dart deleted file mode 100644 index 929d51a9d..000000000 --- a/lib/network/widgets/checker.dart +++ /dev/null @@ -1,252 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/animation/animated.dart'; -import 'package:sit/network/connectivity.dart'; -import 'package:sit/utils/error.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../utils.dart'; -import '../i18n.dart'; - -enum _Status { - none, - connecting, - connected, - disconnected; -} - -enum WhereToCheck { - schoolServer, - studentReg; -} - -class ConnectivityChecker extends StatefulWidget { - final double iconSize; - final String? initialDesc; - final VoidCallback onConnected; - final Duration? autoStartDelay; - final WhereToCheck where; - - /// Whether it's connected will be turned. - /// Throw any error if connection fails. - final Future Function() check; - - const ConnectivityChecker({ - super.key, - this.iconSize = 120, - this.initialDesc, - required this.onConnected, - required this.check, - this.autoStartDelay, - required this.where, - }); - - @override - State createState() => _ConnectivityCheckerState(); -} - -class _ConnectivityCheckerState extends State { - _Status status = _Status.none; - late StreamSubscription connectivityChecker; - ConnectivityStatus? connectivityStatus; - - @override - void initState() { - super.initState(); - connectivityChecker = checkPeriodic( - period: const Duration(milliseconds: 1000), - check: () => checkConnectivityWithProxySettings(schoolNetwork: true), - ).listen((status) { - if (connectivityStatus != status) { - if (!mounted) return; - setState(() { - connectivityStatus = status; - }); - } - }); - final autoStartDelay = widget.autoStartDelay; - if (autoStartDelay != null) { - Future.delayed(autoStartDelay).then((value) { - startCheck(); - }); - } - } - - @override - void dispose() { - connectivityChecker.cancel(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return [ - AnimatedSize( - duration: Durations.medium2, - child: buildIndicatorArea(context).animatedSwitched(), - ), - AnimatedSize( - duration: Durations.medium2, - child: buildStatus(context).animatedSwitched(), - ), - buildButton(context), - if (status == _Status.disconnected) buildTroubleshooting(), - ].column(maa: MainAxisAlignment.spaceAround, caa: CrossAxisAlignment.center).center().padAll(20); - } - - Widget buildTroubleshooting() { - return OutlinedButton.icon( - icon: Icon(context.icons.troubleshoot), - label: i18n.troubleshoot.text(), - onPressed: () { - context.push("/tools/network-tool"); - }, - ); - } - - Future startCheck() async { - if (!mounted) return; - setState(() { - status = _Status.connecting; - }); - try { - final connected = await widget.check(); - if (!mounted) return; - setState(() { - if (connected) { - status = _Status.connected; - } else { - status = _Status.disconnected; - } - }); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - if (!mounted) return; - setState(() { - status = _Status.disconnected; - }); - } - } - - Widget buildStatus(BuildContext ctx) { - // TODO: it's student registration system - final tip = switch (status) { - _Status.none => widget.initialDesc ?? i18n.checker.status.none(widget.where), - _Status.connecting => i18n.checker.status.connecting(widget.where), - _Status.connected => i18n.checker.status.connected(widget.where), - _Status.disconnected => i18n.checker.status.disconnected(widget.where), - }; - return tip.text(key: ValueKey(status), style: ctx.textTheme.titleLarge, textAlign: TextAlign.center); - } - - Widget buildButton(BuildContext ctx) { - final style = TextStyle(fontSize: context.textTheme.titleMedium?.fontSize); - return switch (status) { - _Status.none => FilledButton( - onPressed: startCheck, - child: i18n.checker.button.none.text(style: style), - ), - _Status.connecting => FilledButton( - onPressed: null, - child: i18n.checker.button.connecting.text(style: style), - ), - _Status.connected => FilledButton( - onPressed: widget.onConnected, - child: i18n.checker.button.connected.text(style: style), - ), - _Status.disconnected => FilledButton.icon( - icon: Icon(ctx.icons.refresh), - onPressed: startCheck, - label: i18n.checker.button.disconnected.text(style: style), - ), - }; - } - - Widget buildIndicatorArea(BuildContext ctx) { - switch (status) { - case _Status.none: - return buildIcon(ctx, getConnectionTypeIcon(connectivityStatus)); - case _Status.connecting: - return const CircularProgressIndicator( - key: ValueKey("Waiting"), - strokeWidth: 14, - ).sizedAll(widget.iconSize); - case _Status.connected: - return buildIcon(ctx, context.icons.checkMark); - case _Status.disconnected: - return buildIcon(ctx, Icons.public_off_rounded); - } - } - - Widget buildIcon(BuildContext ctx, IconData icon, [Key? key]) { - key ??= ValueKey(icon); - return Icon( - icon, - size: widget.iconSize, - color: ctx.colorScheme.primary, - ).sizedAll( - key: key, - widget.iconSize, - ); - } -} - -class TestConnectionTile extends StatefulWidget { - final WhereToCheck where; - - /// Whether it's connected will be turned. - /// Throw any error if connection fails. - final Future Function() check; - - const TestConnectionTile({ - super.key, - required this.where, - required this.check, - }); - - @override - State createState() => _TestConnectionTileState(); -} - -class _TestConnectionTileState extends State { - var testState = _Status.none; - - @override - Widget build(BuildContext context) { - return ListTile( - enabled: testState != _Status.connecting, - leading: const Icon(Icons.network_check), - title: i18n.checker.testConnection.text(), - subtitle: i18n.checker.testConnectionDesc(widget.where).text(), - trailing: switch (testState) { - _Status.connecting => const CircularProgressIndicator.adaptive(), - _Status.connected => Icon(context.icons.checkMark, color: Colors.green), - _Status.disconnected => Icon(Icons.public_off_rounded, color: context.$red$), - _ => null, - }, - onTap: () async { - setState(() { - testState = _Status.connecting; - }); - final bool connected; - try { - connected = await widget.check(); - if (!mounted) return; - setState(() { - testState = connected ? _Status.connected : _Status.disconnected; - }); - } catch (error) { - if (!mounted) return; - setState(() { - testState = _Status.disconnected; - }); - } - }, - ); - } -} diff --git a/lib/network/widgets/entrance.dart b/lib/network/widgets/entrance.dart deleted file mode 100644 index e614fa426..000000000 --- a/lib/network/widgets/entrance.dart +++ /dev/null @@ -1,18 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/navigation.dart'; -import '../i18n.dart'; - -class NetworkToolEntranceTile extends StatelessWidget { - const NetworkToolEntranceTile({super.key}); - - @override - Widget build(BuildContext context) { - return PageNavigationTile( - title: i18n.title.text(), - subtitle: i18n.subtitle.text(), - leading: const Icon(Icons.network_check), - path: "/tools/network-tool", - ); - } -} diff --git a/lib/platform/desktop.dart b/lib/platform/desktop.dart deleted file mode 100644 index d34a6e48b..000000000 --- a/lib/platform/desktop.dart +++ /dev/null @@ -1,54 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:shared_preferences/shared_preferences.dart'; -import 'package:sit/r.dart'; -import 'package:sit/storage/prefs.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:window_manager/window_manager.dart'; - -class DesktopWindowListener extends WindowListener { - @override - void onWindowResized() { - super.onWindowResized(); - saveWindowSize(); - } - - Future saveWindowSize() async { - final prefs = await SharedPreferences.getInstance(); - final curSize = await windowManager.getSize(); - await prefs.setLastWindowSize(curSize); - debugPrint("Saved last window size $curSize"); - } -} - -class DesktopInit { - static Future init({ - Size? size, - }) async { - if (!UniversalPlatform.isDesktop) return; - windowManager.addListener(DesktopWindowListener()); - await windowManager.ensureInitialized(); - final options = WindowOptions( - title: R.appName, - size: size ?? R.defaultWindowSize, - center: true, - minimumSize: R.minWindowSize, - ); - windowManager.waitUntilReadyToShow(options).then((_) async { - await windowManager.show(); - await windowManager.focus(); - }); - } - - static Future resizeTo(Size newSize, {bool center = true}) async { - await windowManager.setSize(newSize); - if (center) { - await windowManager.center(); - } - } - - static setTitle(String title) async { - if (UniversalPlatform.isDesktop) { - await windowManager.setTitle(title); - } - } -} diff --git a/lib/platform/quick_action.dart b/lib/platform/quick_action.dart deleted file mode 100644 index 8635b81be..000000000 --- a/lib/platform/quick_action.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:quick_actions/quick_actions.dart'; -import 'package:sit/lifecycle.dart'; - -class _Type { - const _Type._(); - - static const examArrange = "exam_arrange"; - static const oaAnnounce = "oa_announce"; -} - -class QuickAction { - static const QuickActions _quickActions = QuickActions(); - - static void quickActionHandler(String type) { - final ctx = $key.currentContext; - if (ctx == null) return; - switch (type) { - case _Type.examArrange: - ctx.push("/exam_arrange"); - break; - case _Type.oaAnnounce: - ctx.push("/oa_announce"); - break; - } - } - - static void init(BuildContext context) { - _quickActions.initialize(quickActionHandler); - _quickActions.setShortcutItems([ - ShortcutItem( - type: _Type.examArrange, - localizedTitle: "Exam arrangement", - ), - ShortcutItem( - type: _Type.oaAnnounce, - localizedTitle: "OA announcement", - ), - ]); - } -} diff --git a/lib/platform/windows/win32.dart b/lib/platform/windows/win32.dart deleted file mode 100644 index d540b37c5..000000000 --- a/lib/platform/windows/win32.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'dart:io'; - -import 'package:universal_platform/universal_platform.dart'; -import 'package:win32_registry/win32_registry.dart'; - -Future registerCustomSchemeWin32(String scheme) async { - if (!UniversalPlatform.isWindows) return; - final appPath = Platform.resolvedExecutable; - - final protocolRegKey = 'Software\\Classes\\$scheme'; - const protocolRegValue = RegistryValue( - 'URL Protocol', - RegistryValueType.string, - '', - ); - const protocolCmdRegKey = 'shell\\open\\command'; - final protocolCmdRegValue = RegistryValue( - '', - RegistryValueType.string, - '"$appPath" "%1"', - ); - - final regKey = Registry.currentUser.createKey(protocolRegKey); - regKey.createValue(protocolRegValue); - regKey.createKey(protocolCmdRegKey).createValue(protocolCmdRegValue); -} diff --git a/lib/platform/windows/win32_web_mock.dart b/lib/platform/windows/win32_web_mock.dart deleted file mode 100644 index 8c283b0fa..000000000 --- a/lib/platform/windows/win32_web_mock.dart +++ /dev/null @@ -1 +0,0 @@ -Future registerCustomSchemeWin32(String scheme) async {} diff --git a/lib/platform/windows/windows.dart b/lib/platform/windows/windows.dart deleted file mode 100644 index f8ead94d4..000000000 --- a/lib/platform/windows/windows.dart +++ /dev/null @@ -1,7 +0,0 @@ -import 'win32_web_mock.dart' if (dart.library.io) 'win32.dart'; - -class WindowsInit { - static Future registerCustomScheme(String scheme) async { - await registerCustomSchemeWin32(scheme); - } -} diff --git a/lib/qrcode/handle.dart b/lib/qrcode/handle.dart deleted file mode 100644 index 1bdd591b0..000000000 --- a/lib/qrcode/handle.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/qrcode/protocol.dart'; -import 'package:sit/r.dart'; - -enum QrCodeHandleResult { - success, - unhandled, - unrecognized, - invalidFormat; -} - -Future onHandleQrCodeUriStringData({ - required BuildContext context, - required String data, -}) async { - final qrCodeData = Uri.tryParse(data); - if (qrCodeData == null) return QrCodeHandleResult.invalidFormat; - return onHandleQrCodeUriData(context: context, qrCodeData: qrCodeData); -} - -Future onHandleQrCodeUriData({ - required BuildContext context, - required Uri qrCodeData, -}) async { - // backwards supports. - if (qrCodeData.scheme != R.scheme && qrCodeData.scheme != "sitlife") return QrCodeHandleResult.unrecognized; - for (final handler in DeepLinkHandlerProtocol.all) { - if (handler.match(qrCodeData)) { - await handler.onHandle(context: context, qrCodeData: qrCodeData); - return QrCodeHandleResult.success; - } - } - return QrCodeHandleResult.unhandled; -} diff --git a/lib/qrcode/i18n.dart b/lib/qrcode/i18n.dart deleted file mode 100644 index 360155630..000000000 --- a/lib/qrcode/i18n.dart +++ /dev/null @@ -1,21 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/l10n/tr.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "qrCode"; - - String get barcodeNotRecognizedTip => "$ns.barcodeNotRecognizedTip".tr(); - - String get unrecognizedQrCodeTip => "$ns.unrecognizedQrCodeTip".tr(); - - List get hint => "$ns.hint".trSpan(args: { - "me": const WidgetSpan(child: Icon(Icons.person)), - "scan": const WidgetSpan(child: Icon(Icons.qr_code_scanner)), - }); -} diff --git a/lib/qrcode/page/scanner.dart b/lib/qrcode/page/scanner.dart deleted file mode 100644 index 8882e4dfb..000000000 --- a/lib/qrcode/page/scanner.dart +++ /dev/null @@ -1,195 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:image_picker/image_picker.dart'; -import 'package:permission_handler/permission_handler.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:mobile_scanner/mobile_scanner.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/permission.dart'; - -import '../i18n.dart'; -import '../widgets/overlay.dart'; - -class ScannerPage extends StatefulWidget { - const ScannerPage({super.key}); - - @override - State createState() => _ScannerPageState(); -} - -class _ScannerPageState extends State with WidgetsBindingObserver { - final controller = MobileScannerController( - torchEnabled: false, - formats: [BarcodeFormat.qrCode], - facing: CameraFacing.back, - ); - StreamSubscription? _subscription; - - @override - void initState() { - super.initState(); - SystemChrome.setPreferredOrientations([ - DeviceOrientation.portraitUp, - DeviceOrientation.portraitDown, - ]); - // Start listening to lifecycle changes. - WidgetsBinding.instance.addObserver(this); - - // Start listening to the barcode events. - _subscription = controller.barcodes.listen(_handleBarcode); - - // Finally, start the scanner itself. - unawaited(startCamera()); - } - - Future startCamera() async { - try { - await controller.start(); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - if (error is MobileScannerException && error.errorCode == MobileScannerErrorCode.permissionDenied) { - if (!mounted) return; - await showPermissionDeniedDialog(context: context, permission: Permission.camera); - } - } - } - - Future _handleBarcode(BarcodeCapture capture) async { - final qrcode = capture.barcodes.firstOrNull; - if (qrcode != null) { - context.pop(qrcode.rawValue); - await HapticFeedback.heavyImpact(); - } - } - - Future recognizeFromFile() async { - final ImagePicker picker = ImagePicker(); - // Pick an image - final XFile? image = await picker.pickImage(source: ImageSource.gallery); - if (image != null) { - final result = await controller.analyzeImage(image.path); - if (result != null) { - await _handleBarcode(result); - } else { - if (!mounted) return; - context.showSnackBar(content: i18n.barcodeNotRecognizedTip.text()); - } - } - } - - @override - void dispose() { - SystemChrome.setPreferredOrientations([ - DeviceOrientation.landscapeRight, - DeviceOrientation.landscapeLeft, - DeviceOrientation.portraitUp, - DeviceOrientation.portraitDown, - ]); - // Stop listening to lifecycle changes. - WidgetsBinding.instance.removeObserver(this); - // Stop listening to the barcode events. - unawaited(_subscription?.cancel()); - _subscription = null; - // Dispose the widget itself. - super.dispose(); - // Finally, dispose of the controller. - unawaited(controller.dispose()); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar(), - body: [ - buildScanner(), - const QRScannerOverlay( - overlayColour: Colors.black26, - ), - ].stack(), - bottomNavigationBar: buildControllerView(), - ); - } - - Widget buildScanner() { - return MobileScanner( - controller: controller, - fit: BoxFit.contain, - ); - } - - Widget buildControllerView() { - return [ - buildTorchButton(), - buildSwitchButton(), - buildImagePicker(), - ].row( - caa: CrossAxisAlignment.center, - maa: MainAxisAlignment.spaceEvenly, - ); - } - - Widget buildImagePicker() { - return PlatformIconButton( - icon: const Icon(Icons.image), - onPressed: recognizeFromFile, - ); - } - - Widget buildSwitchButton() { - return PlatformIconButton( - icon: Icon(context.icons.switchCamera), - onPressed: () => controller.switchCamera(), - ); - } - - Widget buildTorchButton() { - return controller >> - (context, state) => switch (state.torchState) { - TorchState.off => PlatformIconButton( - icon: const Icon(Icons.flash_off), - onPressed: controller.toggleTorch, - ), - TorchState.on => PlatformIconButton( - icon: const Icon(Icons.flash_on, color: Colors.yellow), - onPressed: controller.toggleTorch, - ), - TorchState.unavailable => PlatformIconButton( - icon: const Icon(Icons.flash_off), - ), - // TorchState.auto => PlatformIconButton( - // icon: const Icon(Icons.flash_on), - // onPressed: controller.toggleTorch, - // ), - }; - } - - @override - void didChangeAppLifecycleState(AppLifecycleState state) { - super.didChangeAppLifecycleState(state); - - switch (state) { - case AppLifecycleState.detached: - case AppLifecycleState.hidden: - case AppLifecycleState.paused: - return; - case AppLifecycleState.resumed: - // Restart the scanner when the app is resumed. - // Don't forget to resume listening to the barcode events. - _subscription = controller.barcodes.listen(_handleBarcode); - - unawaited(controller.start()); - case AppLifecycleState.inactive: - // Stop the scanner when the app is paused. - // Also stop the barcode events subscription. - unawaited(_subscription?.cancel()); - _subscription = null; - unawaited(controller.stop()); - } - } -} diff --git a/lib/qrcode/page/view.dart b/lib/qrcode/page/view.dart deleted file mode 100644 index 712f61601..000000000 --- a/lib/qrcode/page/view.dart +++ /dev/null @@ -1,130 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_svg_provider/flutter_svg_provider.dart'; -import 'package:pretty_qr_code/pretty_qr_code.dart'; -import 'package:qr_flutter/qr_flutter.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/settings/dev.dart'; - -import '../i18n.dart'; - -class QrCodePage extends StatelessWidget { - final String data; - final double? maxSize; - final Widget? title; - - const QrCodePage({ - super.key, - required this.data, - this.maxSize, - this.title, - }); - - @override - Widget build(BuildContext context) { - final hugeQrCode = data.length > 512; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar( - floating: true, - title: title, - ), - SliverToBoxAdapter( - child: LayoutBuilder( - builder: (ctx, box) { - final side = min(box.maxWidth, maxSize ?? double.infinity); - return PlainQrCodeView( - data: data, - size: side, - ).center().padSymmetric(h: hugeQrCode ? 0 : 16); - }, - ), - ), - SliverToBoxAdapter( - child: RichText( - text: TextSpan( - style: context.textTheme.bodyLarge, - children: i18n.hint, - ), - ).padAll(10), - ), - if (Dev.on) - SliverList.list( - children: [ - ListTile( - title: "Text length: ${data.length}".text(), - trailing: PlatformIconButton( - icon: Icon(context.icons.copy), - onPressed: () async { - context.showSnackBar(content: "Copied".text()); - await Clipboard.setData(ClipboardData(text: data)); - }, - ), - ), - SelectableText(data).padAll(10), - ], - ), - ], - ), - ); - } -} - -class PlainQrCodeView extends StatelessWidget { - final String data; - final double? size; - - const PlainQrCodeView({ - super.key, - required this.data, - this.size, - }); - - @override - Widget build(BuildContext context) { - return QrImageView( - backgroundColor: context.colorScheme.surface, - data: data, - size: size, - eyeStyle: QrEyeStyle( - eyeShape: QrEyeShape.square, - color: context.colorScheme.onSurface, - ), - dataModuleStyle: QrDataModuleStyle( - dataModuleShape: QrDataModuleShape.square, - color: context.colorScheme.onSurface, - ), - version: QrVersions.auto, - ); - } -} - -class BrandQrCodeView extends StatelessWidget { - final String data; - - const BrandQrCodeView({ - super.key, - required this.data, - }); - - @override - Widget build(BuildContext context) { - return PrettyQrView.data( - data: data, - decoration: PrettyQrDecoration( - shape: PrettyQrSmoothSymbol( - color: context.colorScheme.onSurface, - ), - image: const PrettyQrDecorationImage( - image: Svg("assets/icon.svg"), - ), - ), - ); - } -} diff --git a/lib/qrcode/protocol.dart b/lib/qrcode/protocol.dart deleted file mode 100644 index 6c07755d2..000000000 --- a/lib/qrcode/protocol.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:sit/r.dart'; -import 'package:sit/settings/qrcode/proxy.dart'; -import 'package:sit/timetable/qrcode/palette.dart'; -import 'package:sit/timetable/qrcode/timetable.dart'; - -import '../timetable/qrcode/patch.dart'; - -/// convert any data to a URI with [R.scheme]. -abstract class DeepLinkHandlerProtocol { - const DeepLinkHandlerProtocol(); - - bool match(Uri encoded); - - Future onHandle({ - required BuildContext context, - required Uri qrCodeData, - }); - - static final List all = [ - const ProxyDeepLink(), - const TimetablePaletteDeepLink(), - const TimetablePatchDeepLink(), - const TimetableDeepLink(), - ]; -} diff --git a/lib/qrcode/utils.dart b/lib/qrcode/utils.dart deleted file mode 100644 index 62f7a14a4..000000000 --- a/lib/qrcode/utils.dart +++ /dev/null @@ -1,67 +0,0 @@ -import 'dart:convert'; -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hashlib_codecs/hashlib_codecs.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/utils/guard_launch.dart'; - -import 'handle.dart'; -import 'i18n.dart'; - -final _codec = ZLibCodec(level: 6); -final _decoder = _codec.decoder; -final _encoder = _codec.encoder; - -String encodeBytesForUrl(Uint8List original, {bool compress = true}) { - final bytes = compress ? _encoder.convert(original) : original; - final compressedStr = toBase64(bytes, url: true, padding: false); - if (kDebugMode) { - if (compress) { - debugPrint("${original.length} => ${bytes.length}"); - assert(bytes.length <= original.length, "compressed is ${bytes.length} > original is ${original.length}"); - assert(compressedStr.length <= base64Encode(original).length); - } else { - debugPrint("${original.length}"); - } - } - return compressedStr; -} - -Uint8List decodeBytesFromUrl(String url, {bool compress = true}) { - final bytes = fromBase64(url, padding: false); - final uncompressed = compress ? _decoder.convert(bytes) : bytes; - return uncompressed as Uint8List; -} - -Future recognizeQrCode(BuildContext context) async { - final res = await context.push("/tools/scanner"); - if (!context.mounted) return; - if (Dev.on) { - await context.showTip(desc: res.toString(), primary: i18n.ok); - } - if (!context.mounted) return; - if (res == null) return; - if (res is String) { - final result = await onHandleQrCodeUriStringData(context: context, data: res); - if (result == QrCodeHandleResult.success) { - return; - } else if (result == QrCodeHandleResult.unhandled || result == QrCodeHandleResult.unrecognized) { - if (!context.mounted) return; - final maybeUri = Uri.tryParse(res); - if (maybeUri != null) { - await guardLaunchUrlString(context, res); - return; - } - await context.showTip(desc: res.toString(), primary: i18n.ok); - } else if (result == QrCodeHandleResult.invalidFormat) { - if (!context.mounted) return; - await context.showTip(desc: i18n.unrecognizedQrCodeTip, primary: i18n.ok); - } - } else { - await context.showTip(desc: res.toString(), primary: i18n.ok); - } -} diff --git a/lib/qrcode/widgets/overlay.dart b/lib/qrcode/widgets/overlay.dart deleted file mode 100644 index 24ef488aa..000000000 --- a/lib/qrcode/widgets/overlay.dart +++ /dev/null @@ -1,142 +0,0 @@ -import 'package:flutter/material.dart'; - -// grab from https://gist.github.com/r-yeates/0bad6b8a07e01520a1b3ceba32bad77d - -class QRScannerOverlay extends StatelessWidget { - const QRScannerOverlay({Key? key, required this.overlayColour}) : super(key: key); - - final Color overlayColour; - - @override - Widget build(BuildContext context) { - double scanArea = - (MediaQuery.of(context).size.width < 400 || MediaQuery.of(context).size.height < 400) ? 200.0 : 330.0; - return Stack(children: [ - ColorFiltered( - colorFilter: ColorFilter.mode(overlayColour, BlendMode.srcOut), // This one will create the magic - child: Stack( - children: [ - Container( - decoration: const BoxDecoration( - color: Colors.red, - backgroundBlendMode: BlendMode.dstOut), // This one will handle background + difference out - ), - Align( - alignment: Alignment.center, - child: Container( - height: scanArea, - width: scanArea, - decoration: BoxDecoration( - color: Colors.red, - borderRadius: BorderRadius.circular(20), - ), - ), - ), - ], - ), - ), - Align( - alignment: Alignment.center, - child: CustomPaint( - foregroundPainter: BorderPainter(), - child: SizedBox( - width: scanArea + 25, - height: scanArea + 25, - ), - ), - ), - ]); - } -} - -// Creates the white borders -class BorderPainter extends CustomPainter { - @override - void paint(Canvas canvas, Size size) { - const width = 4.0; - const radius = 20.0; - const tRadius = 3 * radius; - final rect = Rect.fromLTWH( - width, - width, - size.width - 2 * width, - size.height - 2 * width, - ); - final rrect = RRect.fromRectAndRadius(rect, const Radius.circular(radius)); - const clippingRect0 = Rect.fromLTWH( - 0, - 0, - tRadius, - tRadius, - ); - final clippingRect1 = Rect.fromLTWH( - size.width - tRadius, - 0, - tRadius, - tRadius, - ); - final clippingRect2 = Rect.fromLTWH( - 0, - size.height - tRadius, - tRadius, - tRadius, - ); - final clippingRect3 = Rect.fromLTWH( - size.width - tRadius, - size.height - tRadius, - tRadius, - tRadius, - ); - - final path = Path() - ..addRect(clippingRect0) - ..addRect(clippingRect1) - ..addRect(clippingRect2) - ..addRect(clippingRect3); - - canvas.clipPath(path); - canvas.drawRRect( - rrect, - Paint() - ..color = Colors.white - ..style = PaintingStyle.stroke - ..strokeWidth = width, - ); - } - - @override - bool shouldRepaint(CustomPainter oldDelegate) { - return false; - } -} - -class BarReaderSize { - static double width = 200; - static double height = 200; -} - -class OverlayWithHolePainter extends CustomPainter { - @override - void paint(Canvas canvas, Size size) { - final paint = Paint()..color = Colors.black54; - canvas.drawPath( - Path.combine( - PathOperation.difference, - Path()..addRect(Rect.fromLTWH(0, 0, size.width, size.height)), - Path() - ..addOval(Rect.fromCircle(center: Offset(size.width - 44, size.height - 44), radius: 40)) - ..close(), - ), - paint); - } - - @override - bool shouldRepaint(CustomPainter oldDelegate) { - return false; - } -} - -@override -bool shouldRepaint(CustomPainter oldDelegate) { - return false; -} diff --git a/lib/r.dart b/lib/r.dart deleted file mode 100644 index 3b9f693c1..000000000 --- a/lib/r.dart +++ /dev/null @@ -1,83 +0,0 @@ -import 'dart:ui'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/foundation.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/school/yellow_pages/entity/contact.dart'; -import 'package:sit/entity/version.dart'; - -class R { - const R._(); - - static const scheme = "life.mysit"; - static const hiveStorageVersionCache = "2.3.0"; - static const hiveStorageVersionCore = "2.1.1"; - static const appId = "life.mysit.SITLife"; - static const appName = "SIT Life"; - static const icpLicense = "沪ICP备18042337号-3A"; - - static String get appNameL10n => "appName".tr(); - - static late AppMeta currentVersion; - - /// For debugging iOS on other platforms. - static const debugCupertino = kDebugMode ? false : false; - - static const debugNetwork = true; - static const poorNetworkSimulation = false; - - /// The default window size is small enough for any modern desktop device. - static const Size defaultWindowSize = Size(500, 800); - - /// If the window was resized to too small accidentally, this will keep a minimum function area. - static const Size minWindowSize = Size(300, 400); - - static const eduEmailDomain = "mail.sit.edu.cn"; - static const demoModeOaCredentials = Credentials(account: "2300421153", password: "liplum-sit-life"); - static const iosAppId = "6468989112"; - static const iosAppStoreUrl = "https://apps.apple.com/app/$iosAppId"; - static const iosTimetableICalToCalendarShortcut = "https://www.icloud.com/shortcuts/98f1b96465c542dcbdac651a921e2459"; - - static String formatEduEmail({required String username}) { - return "$username@$eduEmailDomain"; - } - - static late List roomList; - static late List userAgentList; - static late List yellowPages; - static const enLocale = Locale('en'); - static const zhHansLocale = Locale.fromSubtags(languageCode: "zh", scriptCode: "Hans"); - static const zhHantLocale = Locale.fromSubtags(languageCode: "zh", scriptCode: "Hant"); - static const defaultLocale = enLocale; - static const supportedLocales = [ - enLocale, - zhHansLocale, - zhHantLocale, - ]; - - static final jwxtUri = Uri(scheme: "http", host: "jwxt.sit.edu.cn"); - static final gmsUri = Uri(scheme: "http", host: "gms.sit.edu.cn"); - static final authServerUri = Uri(scheme: "https", host: "authserver.sit.edu.cn"); - static final class2ndUri = Uri(scheme: "http", host: "sc.sit.edu.cn"); - static final schoolCardUri = Uri(scheme: "http", host: "card.sit.edu.cn"); - static final myPortalUri = Uri(scheme: "https", host: "myportal.sit.edu.cn"); - static final libraryUri = Uri(scheme: "http", host: "210.35.66.106"); - static final gateUri = Uri(scheme: "http", host: "210.35.98.178"); - static final sitUriList = [ - authServerUri, - jwxtUri, - gmsUri, - class2ndUri, - schoolCardUri, - myPortalUri, - libraryUri, - ]; - static final sitSchoolNetworkUriList = [ - jwxtUri, - gmsUri, - class2ndUri, - schoolCardUri, - libraryUri, - gateUri, - ]; -} diff --git a/lib/route.dart b/lib/route.dart deleted file mode 100644 index 0efebc7a9..000000000 --- a/lib/route.dart +++ /dev/null @@ -1,579 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/game/2048/index.dart'; -import 'package:sit/game/index.dart'; -import 'package:sit/game/minesweeper/index.dart'; -import 'package:sit/game/page/settings.dart'; -import 'package:sit/game/suika/index.dart'; -import 'package:sit/index.dart'; -import 'package:sit/life/page/settings.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/me/edu_email/page/login.dart'; -import 'package:sit/me/edu_email/page/outbox.dart'; -import 'package:sit/school/class2nd/entity/attended.dart'; -import 'package:sit/school/exam_result/page/gpa.dart'; -import 'package:sit/school/exam_result/page/result.pg.dart'; -import 'package:sit/school/library/page/history.dart'; -import 'package:sit/school/library/page/login.dart'; -import 'package:sit/school/library/page/borrowing.dart'; -import 'package:sit/school/ywb/entity/service.dart'; -import 'package:sit/school/ywb/page/details.dart'; -import 'package:sit/school/ywb/page/service.dart'; -import 'package:sit/school/ywb/page/application.dart'; -import 'package:sit/settings/page/about.dart'; -import 'package:sit/settings/page/language.dart'; -import 'package:sit/settings/page/proxy.dart'; -import 'package:sit/school/page/settings.dart'; -import 'package:sit/settings/page/storage.dart'; -import 'package:sit/life/expense_records/page/records.dart'; -import 'package:sit/life/expense_records/page/statistics.dart'; -import 'package:sit/life/index.dart'; -import 'package:sit/login/page/index.dart'; -import 'package:sit/me/edu_email/page/inbox.dart'; -import 'package:sit/network/page/index.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/page/theme_color.dart'; -import 'package:sit/timetable/init.dart'; -import 'package:sit/timetable/page/p13n/background.dart'; -import 'package:sit/timetable/page/p13n/cell_style.dart'; -import 'package:sit/timetable/page/edit/editor.dart'; -import 'package:sit/timetable/page/p13n/palette_editor.dart'; -import 'package:sit/timetable/page/patch/patch.dart'; -import 'package:sit/timetable/page/settings.dart'; -import 'package:sit/utils/riverpod.dart'; -import 'package:sit/widgets/not_found.dart'; -import 'package:sit/school/oa_announce/entity/announce.dart'; -import 'package:sit/school/oa_announce/page/details.dart'; -import 'package:sit/school/exam_arrange/page/list.dart'; -import 'package:sit/school/oa_announce/page/list.dart'; -import 'package:sit/qrcode/page/scanner.dart'; -import 'package:sit/school/class2nd/page/details.dart'; -import 'package:sit/school/class2nd/page/activity.dart'; -import 'package:sit/school/class2nd/page/attended.dart'; -import 'package:sit/school/exam_result/page/evaluation.dart'; -import 'package:sit/school/exam_result/page/result.ug.dart'; -import 'package:sit/school/yellow_pages/page/index.dart'; -import 'package:sit/settings/page/credentials.dart'; -import 'package:sit/settings/page/developer.dart'; -import 'package:sit/settings/page/index.dart'; -import 'package:sit/me/index.dart'; -import 'package:sit/school/index.dart'; -import 'package:sit/timetable/page/import.dart'; -import 'package:sit/timetable/page/index.dart'; -import 'package:sit/timetable/page/mine.dart'; -import 'package:sit/timetable/page/p13n/palette.dart'; -import 'package:sit/widgets/image.dart'; -import 'package:sit/widgets/webview/page.dart'; - -final $TimetableShellKey = GlobalKey(); -final $SchoolShellKey = GlobalKey(); -final $LifeShellKey = GlobalKey(); -final $GameShellKey = GlobalKey(); -final $MeShellKey = GlobalKey(); - -bool isLoginGuarded(BuildContext ctx) { - if (Dev.demoMode) return false; - final loginStatus = ProviderScope.containerOf(ctx).read(CredentialsInit.storage.$oaLoginStatus); - final credentials = ProviderScope.containerOf(ctx).read(CredentialsInit.storage.$oaCredentials); - return loginStatus != LoginStatus.validated && credentials == null; -} - -String? _loginRequired(BuildContext ctx, GoRouterState state) { - if (isLoginGuarded(ctx)) return "/login?guard=true"; - return null; -} - -FutureOr _redirectRoot(BuildContext ctx, GoRouterState state) { - final loginStatus = ctx.riverpod().read(CredentialsInit.storage.$oaLoginStatus); - if (loginStatus == LoginStatus.never) { -// allow to access settings page. - if (state.matchedLocation.startsWith("/tools")) return null; - if (state.matchedLocation.startsWith("/settings")) return null; -// allow to access browser page. - if (state.matchedLocation == "/browser") return null; - return "/login"; - } - return null; -} - -Widget _onError(BuildContext context, GoRouterState state) { - return NotFoundPage(state.uri.toString()); -} - -final _timetableShellRoute = GoRoute( - path: "/timetable", -// Timetable is the home page. - builder: (ctx, state) => const TimetablePage(), -); - -final _timetableRoutes = [ - GoRoute( - path: "/timetable/import", - builder: (ctx, state) => const ImportTimetablePage(), - redirect: _loginRequired, - ), - GoRoute( - path: "/timetable/mine", - builder: (ctx, state) => const MyTimetableListPage(), - ), - GoRoute( - path: "/timetable/p13n", - builder: (ctx, state) => const TimetableP13nPage(), - routes: [ - GoRoute( - path: "custom", - builder: (ctx, state) => const TimetableP13nPage(tab: TimetableP13nTab.custom), - ), - GoRoute( - path: "builtin", - builder: (ctx, state) => const TimetableP13nPage(tab: TimetableP13nTab.builtin), - ), - ], - ), - GoRoute( - path: "/timetable/palette/:id/edit", - builder: (ctx, state) { - final id = int.tryParse(state.pathParameters["id"] ?? ""); - if (id == null) throw 404; - final palette = TimetableInit.storage.palette[id]; - if (palette == null) throw 404; - return TimetablePaletteEditorPage(palette: palette); - }, - ), - GoRoute( - path: "/timetable/:id/edit", - builder: (ctx, state) { - final id = int.tryParse(state.pathParameters["id"] ?? ""); - if (id == null) throw 404; - final timetable = TimetableInit.storage.timetable[id]; - if (timetable == null) throw 404; - return TimetableEditorPage(timetable: timetable); - }, - ), - GoRoute( - path: "/timetable/:id/edit/patch", - builder: (ctx, state) { - final id = int.tryParse(state.pathParameters["id"] ?? ""); - if (id == null) throw 404; - final timetable = TimetableInit.storage.timetable[id]; - if (timetable == null) throw 404; - return TimetablePatchEditorPage(timetable: timetable); - }, - ), - GoRoute( - path: "/timetable/cell-style", - builder: (ctx, state) => const TimetableCellStyleEditor(), - ), - GoRoute( - path: "/timetable/background", - builder: (ctx, state) => const TimetableBackgroundEditor(), - ), -]; - -final _schoolShellRoute = GoRoute( - path: "/school", - builder: (ctx, state) => const SchoolPage(), -); -final _lifeShellRoute = GoRoute( - path: "/life", - builder: (ctx, state) => const LifePage(), -); -final _gameShellRoute = GoRoute( - path: "/game", - builder: (ctx, state) => const GamePage(), -); -final _meShellRoute = GoRoute( - path: "/me", - builder: (ctx, state) => const MePage(), -); -final _toolsRoutes = [ - GoRoute( - path: "/tools/network-tool", - builder: (ctx, state) => const NetworkToolPage(), - ), - GoRoute( - path: "/tools/scanner", - parentNavigatorKey: $key, - builder: (ctx, state) => const ScannerPage(), - ), -]; -final _settingsRoute = GoRoute( - path: "/settings", - builder: (ctx, state) => const SettingsPage(), - routes: [ - GoRoute( - path: "language", - builder: (ctx, state) => const LanguagePage(), - ), - GoRoute( - path: "theme-color", - builder: (ctx, state) => const ThemeColorPage(), - ), - GoRoute( - path: "credentials", - builder: (ctx, state) => const CredentialsPage(), - ), - GoRoute( - path: "timetable", - builder: (ctx, state) => const TimetableSettingsPage(), - ), - GoRoute( - path: "school", - builder: (ctx, state) => const SchoolSettingsPage(), - ), - GoRoute( - path: "life", - builder: (ctx, state) => const LifeSettingsPage(), - ), - GoRoute( - path: "game", - builder: (ctx, state) => const GameSettingsPage(), - ), - GoRoute( - path: "about", - builder: (ctx, state) => const AboutSettingsPage(), - ), - GoRoute( - path: "proxy", - builder: (ctx, state) => const ProxySettingsPage(), - ), - GoRoute( - path: "developer", - builder: (ctx, state) => const DeveloperOptionsPage(), - routes: [ - GoRoute( - path: "local-storage", - builder: (ctx, state) => const LocalStoragePage(), - ) - ], - ), - ], -); -final _expenseRoute = GoRoute( - path: "/expense-records", - builder: (ctx, state) => const ExpenseRecordsPage(), - redirect: _loginRequired, - routes: [ - GoRoute( - path: "statistics", - builder: (ctx, state) => const ExpenseStatisticsPage(), - redirect: _loginRequired, - ) - ], -); - -final _class2ndRoute = GoRoute( - path: "/class2nd", - builder: (ctx, state) => const ActivityListPage(), - redirect: _loginRequired, - routes: [ - GoRoute( - path: "attended", - builder: (ctx, state) => const AttendedActivityPage(), - redirect: _loginRequired, - ), - GoRoute( - path: "activity-details/:id", - builder: (ctx, state) { - final id = int.tryParse(state.pathParameters["id"] ?? ""); - if (id == null) throw 404; - final enableApply = state.uri.queryParameters["enable-apply"] != null; - final title = state.uri.queryParameters["title"]; - final time = DateTime.tryParse(state.uri.queryParameters["time"] ?? ""); - return Class2ndActivityDetailsPage(activityId: id, title: title, time: time, enableApply: enableApply); - }, - redirect: _loginRequired, - ), - // TODO: using path para - GoRoute( - path: "attended-details", - builder: (ctx, state) { - final extra = state.extra; - if (extra is Class2ndAttendedActivity) { - return Class2ndApplicationDetailsPage(extra); - } - throw 404; - }, - redirect: _loginRequired, - ), - ], -); - -final _oaAnnounceRoute = GoRoute( - path: "/oa-announce", - builder: (ctx, state) => const OaAnnounceListPage(), - redirect: _loginRequired, - routes: [ - // TODO: using path para - GoRoute( - path: "details", - builder: (ctx, state) { - final extra = state.extra; - if (extra is OaAnnounceRecord) { - return AnnounceDetailsPage(extra); - } - throw 404; - }, - ), - ], -); -final _yellowPagesRoute = GoRoute( - path: "/yellow-pages", - builder: (ctx, state) => const YellowPagesListPage(), -); -final _eduEmailRoutes = [ - GoRoute( - path: "/edu-email/login", - builder: (ctx, state) => const EduEmailLoginPage(), - ), - GoRoute( - path: "/edu-email/inbox", - builder: (ctx, state) => const EduEmailInboxPage(), - ), - GoRoute( - path: "/edu-email/outbox", - builder: (ctx, state) => const EduEmailOutboxPage(), - ), -]; - -final _ywbRoute = GoRoute( - path: "/ywb", - builder: (ctx, state) => const YwbServiceListPage(), - redirect: _loginRequired, - routes: [ - GoRoute( - path: "mine", - builder: (ctx, state) => const YwbMyApplicationListPage(), - ), - // TODO: using path para - GoRoute( - path: "details", - builder: (ctx, state) { - final extra = state.extra; - if (extra is YwbService) { - return YwbServiceDetailsPage(meta: extra); - } - throw 404; - }, - ), - ], -); - -final _imageRoute = GoRoute( - path: "/image", - builder: (ctx, state) { - final extra = state.extra; - final data = state.uri.queryParameters["origin"] ?? extra as String?; - if (data != null) { - return ImageViewPage( - data, - title: state.uri.queryParameters["title"], - ); - } - throw 400; - }, -); - -final _loginRoute = GoRoute( - path: "/login", - builder: (ctx, state) { - final guarded = state.uri.queryParameters["guard"] == "true"; - return LoginPage(isGuarded: guarded); - }, -); - -final _teacherEvalRoute = GoRoute( - path: "/teacher-eval", - builder: (ctx, state) => const TeacherEvaluationPage(), - redirect: _loginRequired, -); - -final _libraryRoutes = [ - GoRoute( - path: "/library/login", - builder: (ctx, state) => const LibraryLoginPage(), - ), - GoRoute( - path: "/library/borrowing", - builder: (ctx, state) => const LibraryBorrowingPage(), - ), - GoRoute( - path: "/library/borrowing-history", - builder: (ctx, state) => const LibraryMyBorrowingHistoryPage(), - ), -]; - -final _examArrange = GoRoute( - path: "/exam-arrange", - builder: (ctx, state) => const ExamArrangementListPage(), - redirect: _loginRequired, -); - -final _examResultRoute = GoRoute( - path: "/exam-result", - routes: [ - GoRoute(path: "ug", builder: (ctx, state) => const ExamResultUgPage(), routes: [ - GoRoute( - path: "gpa", - builder: (ctx, state) => const GpaCalculatorPage(), - ), - ]), - GoRoute( - path: "pg", - builder: (ctx, state) => const ExamResultPgPage(), - ), - ], - redirect: _loginRequired, -); - -final _browserRoute = GoRoute( - path: "/browser", - builder: (ctx, state) { - var url = state.uri.queryParameters["url"] ?? state.extra; - if (url is String) { - if (!url.startsWith("http://") && !url.startsWith("https://")) { - url = "http://$url"; - } - return WebViewPage(initialUrl: url); - } - throw 400; - }, -); -final _gameRoutes = [ - GoRoute( - path: "/game/2048", - builder: (ctx, state) { - final continueGame = state.uri.queryParameters["continue"] != null; - return Game2048Page(newGame: !continueGame); - }, - ), - GoRoute( - path: "/game/minesweeper", - builder: (ctx, state) { - final continueGame = state.uri.queryParameters["continue"] != null; - return GameMinesweeperPage(newGame: !continueGame); - }, - ), - GoRoute( - path: "/game/suika", - builder: (ctx, state) => const GameSuikaPage(), - ), -]; - -GoRouter buildRouter(ValueNotifier $routingConfig) { - return GoRouter.routingConfig( - routingConfig: $routingConfig, - navigatorKey: $key, - initialLocation: "/", - debugLogDiagnostics: kDebugMode, - errorBuilder: _onError, - ); -} - -RoutingConfig buildCommonRoutingConfig() { - return RoutingConfig( - redirect: _redirectRoot, - routes: [ - GoRoute( - path: "/", - redirect: (ctx, state) => "/timetable", - ), - StatefulShellRoute.indexedStack( - builder: (ctx, state, navigationShell) { - return MainStagePage(navigationShell: navigationShell); - }, - branches: [ - StatefulShellBranch( - navigatorKey: $TimetableShellKey, - routes: [ - _timetableShellRoute, - ], - ), - if (!kIsWeb) - StatefulShellBranch( - navigatorKey: $SchoolShellKey, - routes: [ - _schoolShellRoute, - ], - ), - if (!kIsWeb) - StatefulShellBranch( - navigatorKey: $LifeShellKey, - routes: [ - _lifeShellRoute, - ], - ), - // StatefulShellBranch( - // navigatorKey: $GameShellKey, - // routes: [ - // _gameShellRoute, - // ], - // ), - StatefulShellBranch( - navigatorKey: $MeShellKey, - routes: [ - _meShellRoute, - ], - ), - ], - ), - ..._timetableRoutes, - _browserRoute, - _expenseRoute, - _settingsRoute, - _yellowPagesRoute, - ..._toolsRoutes, - _class2ndRoute, - _oaAnnounceRoute, - ..._eduEmailRoutes, - _ywbRoute, - _examResultRoute, - _examArrange, - ..._libraryRoutes, - _teacherEvalRoute, - _loginRoute, - _imageRoute, - ..._gameRoutes, - ], - ); -} - -RoutingConfig buildTimetableFocusRouter() { - return RoutingConfig( - redirect: _redirectRoot, - routes: [ - GoRoute( - path: "/", - redirect: (ctx, state) => "/timetable", - ), - _timetableShellRoute, - ..._timetableRoutes, - _schoolShellRoute, - _gameShellRoute, - _lifeShellRoute, - _meShellRoute, - _browserRoute, - _expenseRoute, - _settingsRoute, - _yellowPagesRoute, - ..._toolsRoutes, - _class2ndRoute, - _oaAnnounceRoute, - ..._eduEmailRoutes, - _ywbRoute, - _examResultRoute, - _examArrange, - ..._libraryRoutes, - _teacherEvalRoute, - _loginRoute, - _imageRoute, - ..._gameRoutes, - ], - ); -} diff --git a/lib/school/class2nd/entity/activity.dart b/lib/school/class2nd/entity/activity.dart deleted file mode 100644 index 5b2bbf687..000000000 --- a/lib/school/class2nd/entity/activity.dart +++ /dev/null @@ -1,155 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; - -import 'package:sit/storage/hive/type_id.dart'; - -import 'attended.dart'; - -part 'activity.g.dart'; - -@HiveType(typeId: CacheHiveType.activityCat) -enum Class2ndActivityCat { - /// 讲座报告 - @HiveField(0) - lecture( - "001", - Class2ndPointType.thematicReport, - ), - - /// 主题教育 - @HiveField(1) - thematicEdu("ff808081674ec4720167ce60dda77cea"), - - /// 创新创业创意 - @HiveField(2) - creation( - "ff8080814e241104014eb867e1481dc3", - Class2ndPointType.creation, - ), - - /// 校园文化活动 - @HiveField(3) - schoolCultureActivity( - "8ab17f543fe626a8013fe6278a880001", - Class2ndPointType.schoolCulture, - ), - - /// 校园文明 - @HiveField(4) - schoolCivilization( - "8F963F2A04013A66E0540021287E4866", - Class2ndPointType.schoolSafetyCivilization, - ), - - /// 社会实践 - @HiveField(5) - practice( - "8ab17f543fe62d5d013fe62efd3a0002", - Class2ndPointType.practice, - ), - - /// 志愿公益 - @HiveField(6) - voluntary( - "8ab17f543fe62d5d013fe62e6dc70001", - Class2ndPointType.voluntary, - ), - - /// 安全教育网络教学 - @HiveField(7) - onlineSafetyEdu( - "402881de5d62ba57015d6320f1a7000c", - Class2ndPointType.schoolSafetyCivilization, - ), - - /// 会议(无学分) - @HiveField(8) - conference("ff8080814e241104014fedbbf7fd329d"), - - /// 校园文化竞赛活动 - @HiveField(9) - schoolCultureCompetition( - "8ab17f2a3fe6585e013fe6596c300001", - Class2ndPointType.schoolCulture, - ), - - /// 论文专利 - @HiveField(10) - paperAndPatent( - "8ab17f533ff05c27013ff06d10bf0001", - Class2ndPointType.creation, - ), - @HiveField(11) - unknown(null); - - final String? id; - final Class2ndPointType? pointType; - - bool get canFetchData => id != null; - - const Class2ndActivityCat(this.id, [this.pointType]); - - String l10nName() => "class2nd.activityCat.$name".tr(); - - static String allCatL10n() => "class2nd.activityCat.all".tr(); - - /// Don't Change this. - /// Strings from school API - static Class2ndActivityCat? parse(String name) { - // To prevent ellipsis - name = name.replaceAll(".", ""); - if (name == "讲座报告") { - return Class2ndActivityCat.lecture; - } else if (name == "主题教育") { - return Class2ndActivityCat.lecture; - } else if (name == "校园文化活动") { - return Class2ndActivityCat.schoolCultureActivity; - } else if (name == "校园文化竞赛活动") { - return Class2ndActivityCat.schoolCultureCompetition; - } else if (name == "创新创业创意") { - return Class2ndActivityCat.creation; - } else if (name == "论文专利") { - return Class2ndActivityCat.paperAndPatent; - } else if (name == "社会实践") { - return Class2ndActivityCat.practice; - } else if (name == "志愿公益") { - return Class2ndActivityCat.voluntary; - } else if (name == "安全教育网络教学") { - return Class2ndActivityCat.onlineSafetyEdu; - } else if (name == "校园文明") { - return Class2ndActivityCat.schoolCivilization; - } else if (name.contains("会议")) { - return Class2ndActivityCat.conference; - } - return null; - } -} - -@HiveType(typeId: CacheHiveType.activity) -class Class2ndActivity { - /// Activity id - @HiveField(0) - final int id; - - /// Title - @HiveField(1) - final String title; - - /// Date - @HiveField(2) - final DateTime time; - - const Class2ndActivity({ - required this.id, - required this.title, - required this.time, - }); - - @override - String toString() { - return { - "id": id, - "fullTitle": title, - "time": time, - }.toString(); - } -} diff --git a/lib/school/class2nd/entity/activity.g.dart b/lib/school/class2nd/entity/activity.g.dart deleted file mode 100644 index dd183c709..000000000 --- a/lib/school/class2nd/entity/activity.g.dart +++ /dev/null @@ -1,132 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'activity.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class Class2ndActivityAdapter extends TypeAdapter { - @override - final int typeId = 30; - - @override - Class2ndActivity read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Class2ndActivity( - id: fields[0] as int, - title: fields[1] as String, - time: fields[2] as DateTime, - ); - } - - @override - void write(BinaryWriter writer, Class2ndActivity obj) { - writer - ..writeByte(3) - ..writeByte(0) - ..write(obj.id) - ..writeByte(1) - ..write(obj.title) - ..writeByte(2) - ..write(obj.time); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndActivityAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class Class2ndActivityCatAdapter extends TypeAdapter { - @override - final int typeId = 32; - - @override - Class2ndActivityCat read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return Class2ndActivityCat.lecture; - case 1: - return Class2ndActivityCat.thematicEdu; - case 2: - return Class2ndActivityCat.creation; - case 3: - return Class2ndActivityCat.schoolCultureActivity; - case 4: - return Class2ndActivityCat.schoolCivilization; - case 5: - return Class2ndActivityCat.practice; - case 6: - return Class2ndActivityCat.voluntary; - case 7: - return Class2ndActivityCat.onlineSafetyEdu; - case 8: - return Class2ndActivityCat.conference; - case 9: - return Class2ndActivityCat.schoolCultureCompetition; - case 10: - return Class2ndActivityCat.paperAndPatent; - case 11: - return Class2ndActivityCat.unknown; - default: - return Class2ndActivityCat.lecture; - } - } - - @override - void write(BinaryWriter writer, Class2ndActivityCat obj) { - switch (obj) { - case Class2ndActivityCat.lecture: - writer.writeByte(0); - break; - case Class2ndActivityCat.thematicEdu: - writer.writeByte(1); - break; - case Class2ndActivityCat.creation: - writer.writeByte(2); - break; - case Class2ndActivityCat.schoolCultureActivity: - writer.writeByte(3); - break; - case Class2ndActivityCat.schoolCivilization: - writer.writeByte(4); - break; - case Class2ndActivityCat.practice: - writer.writeByte(5); - break; - case Class2ndActivityCat.voluntary: - writer.writeByte(6); - break; - case Class2ndActivityCat.onlineSafetyEdu: - writer.writeByte(7); - break; - case Class2ndActivityCat.conference: - writer.writeByte(8); - break; - case Class2ndActivityCat.schoolCultureCompetition: - writer.writeByte(9); - break; - case Class2ndActivityCat.paperAndPatent: - writer.writeByte(10); - break; - case Class2ndActivityCat.unknown: - writer.writeByte(11); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndActivityCatAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/class2nd/entity/application.dart b/lib/school/class2nd/entity/application.dart deleted file mode 100644 index bb85b9f66..000000000 --- a/lib/school/class2nd/entity/application.dart +++ /dev/null @@ -1,92 +0,0 @@ -import 'dart:core'; - -import 'package:easy_localization/easy_localization.dart'; - -import 'activity.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'application.g.dart'; - -@HiveType(typeId: CacheHiveType.class2ndActivityApplicationStatus) -enum Class2ndActivityApplicationStatus { - @HiveField(0) - unknown, - @HiveField(1) - approved, - @HiveField(2) - rejected, - @HiveField(3) - withdrawn, - @HiveField(4) - activityCancelled, - @HiveField(5) - reviewing, - ; - - static Class2ndActivityApplicationStatus? parse(String status) { - if (status == "通过") { - return Class2ndActivityApplicationStatus.approved; - } else if (status == "未通过") { - return Class2ndActivityApplicationStatus.rejected; - } else if (status == "活动取消") { - return Class2ndActivityApplicationStatus.activityCancelled; - } else if (status == "已撤销") { - return Class2ndActivityApplicationStatus.withdrawn; - } else if (status == "审核中") { - return Class2ndActivityApplicationStatus.reviewing; - } - return null; - } - - String l10n() { - return "class2nd.applicationStatus.$name".tr(); - } -} - -@HiveType(typeId: CacheHiveType.class2ndActivityApplication) -class Class2ndActivityApplication { - /// 申请编号 - @HiveField(0) - final int applicationId; - - /// 活动编号 - /// -1 if the activity was cancelled. - @HiveField(1) - final int activityId; - - /// 活动标题 - @HiveField(2) - final String title; - - /// 申请时间 - @HiveField(3) - final DateTime time; - - /// 活动状态 - @HiveField(4) - final Class2ndActivityApplicationStatus status; - - @HiveField(5) - final Class2ndActivityCat category; - - const Class2ndActivityApplication({ - required this.applicationId, - required this.activityId, - required this.title, - required this.time, - required this.status, - required this.category, - }); - - @override - String toString() { - return { - "applyId": applicationId, - "activityId": activityId, - "title": title, - "time": time, - "status": status, - "category": category, - }.toString(); - } -} diff --git a/lib/school/class2nd/entity/application.g.dart b/lib/school/class2nd/entity/application.g.dart deleted file mode 100644 index c807dab7b..000000000 --- a/lib/school/class2nd/entity/application.g.dart +++ /dev/null @@ -1,111 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'application.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class Class2ndActivityApplicationAdapter extends TypeAdapter { - @override - final int typeId = 34; - - @override - Class2ndActivityApplication read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Class2ndActivityApplication( - applicationId: fields[0] as int, - activityId: fields[1] as int, - title: fields[2] as String, - time: fields[3] as DateTime, - status: fields[4] as Class2ndActivityApplicationStatus, - category: fields[5] as Class2ndActivityCat, - ); - } - - @override - void write(BinaryWriter writer, Class2ndActivityApplication obj) { - writer - ..writeByte(6) - ..writeByte(0) - ..write(obj.applicationId) - ..writeByte(1) - ..write(obj.activityId) - ..writeByte(2) - ..write(obj.title) - ..writeByte(3) - ..write(obj.time) - ..writeByte(4) - ..write(obj.status) - ..writeByte(5) - ..write(obj.category); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndActivityApplicationAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class Class2ndActivityApplicationStatusAdapter extends TypeAdapter { - @override - final int typeId = 35; - - @override - Class2ndActivityApplicationStatus read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return Class2ndActivityApplicationStatus.unknown; - case 1: - return Class2ndActivityApplicationStatus.approved; - case 2: - return Class2ndActivityApplicationStatus.rejected; - case 3: - return Class2ndActivityApplicationStatus.withdrawn; - case 4: - return Class2ndActivityApplicationStatus.activityCancelled; - case 5: - return Class2ndActivityApplicationStatus.reviewing; - default: - return Class2ndActivityApplicationStatus.unknown; - } - } - - @override - void write(BinaryWriter writer, Class2ndActivityApplicationStatus obj) { - switch (obj) { - case Class2ndActivityApplicationStatus.unknown: - writer.writeByte(0); - break; - case Class2ndActivityApplicationStatus.approved: - writer.writeByte(1); - break; - case Class2ndActivityApplicationStatus.rejected: - writer.writeByte(2); - break; - case Class2ndActivityApplicationStatus.withdrawn: - writer.writeByte(3); - break; - case Class2ndActivityApplicationStatus.activityCancelled: - writer.writeByte(4); - break; - case Class2ndActivityApplicationStatus.reviewing: - writer.writeByte(5); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndActivityApplicationStatusAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/class2nd/entity/attended.dart b/lib/school/class2nd/entity/attended.dart deleted file mode 100644 index 6d1819ac7..000000000 --- a/lib/school/class2nd/entity/attended.dart +++ /dev/null @@ -1,225 +0,0 @@ -import 'dart:core'; - -import 'package:easy_localization/easy_localization.dart'; - -import 'activity.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -import 'application.dart'; - -part 'attended.g.dart'; - -@HiveType(typeId: CacheHiveType.class2ndPointsSummary) -class Class2ndPointsSummary { - /// 主题报告 - @HiveField(0) - final double thematicReport; - - /// 社会实践 - @HiveField(1) - final double practice; - - /// 创新创业创意 - @HiveField(2) - final double creation; - - /// 校园安全文明 - @HiveField(3) - final double schoolSafetyCivilization; - - /// 公益志愿 - @HiveField(4) - final double voluntary; - - /// 校园文化 - @HiveField(5) - final double schoolCulture; - - /// 诚信积分 - @HiveField(6) - final double honestyPoints; - - /// Total points - @HiveField(7) - final double totalPoints; - - const Class2ndPointsSummary({ - this.thematicReport = 0, - this.practice = 0, - this.creation = 0, - this.schoolSafetyCivilization = 0, - this.voluntary = 0, - this.schoolCulture = 0, - this.honestyPoints = 0, - this.totalPoints = 0, - }); - - @override - String toString() { - return { - "lecture": thematicReport, - "practice": practice, - "creation": creation, - "safetyEdu": schoolSafetyCivilization, - "voluntary": voluntary, - "schoolCulture": schoolCulture, - "honestyPoints": honestyPoints, - }.toString(); - } - - List<({Class2ndPointType type, double score})> toName2score() { - return [ - (type: Class2ndPointType.voluntary, score: voluntary), - (type: Class2ndPointType.schoolCulture, score: schoolCulture), - (type: Class2ndPointType.creation, score: creation), - (type: Class2ndPointType.schoolSafetyCivilization, score: schoolSafetyCivilization), - (type: Class2ndPointType.thematicReport, score: thematicReport), - (type: Class2ndPointType.practice, score: practice), - ]; - } -} - -@HiveType(typeId: CacheHiveType.class2ndPointItem) -class Class2ndPointItem { - /// 活动名称 - @HiveField(0) - final String name; - - /// 活动编号 - @HiveField(1) - final int activityId; - - /// 活动类型 - @HiveField(2) - final Class2ndActivityCat category; - - /// 活动时间 - @HiveField(3) - final DateTime? time; - - /// 得分 - @HiveField(4) - final double points; - - /// 诚信分 - @HiveField(5) - final double honestyPoints; - - Class2ndPointType? get pointType => category.pointType; - - const Class2ndPointItem({ - required this.name, - required this.activityId, - required this.category, - required this.time, - required this.points, - required this.honestyPoints, - }); - - @override - String toString() { - return { - "name": name, - "activityId": activityId, - "category": category, - "time": time, - "points": points, - "honestyPoints": honestyPoints, - }.toString(); - } -} - -@HiveType(typeId: CacheHiveType.class2ndScoreType) -enum Class2ndPointType { - /// 讲座报告 - @HiveField(0) - thematicReport, - - /// 创新创业创意 - @HiveField(1) - creation, - - /// 校园文化 - @HiveField(2) - schoolCulture, - - /// 社会实践 - @HiveField(3) - practice, - - /// 志愿公益 - @HiveField(4) - voluntary, - - /// 校园安全文明 - @HiveField(5) - schoolSafetyCivilization; - - const Class2ndPointType(); - - String l10nShortName() => "class2nd.scoreType.$name.short".tr(); - - String l10nFullName() => "class2nd.scoreType.$name.full".tr(); - - static String allCatL10n() => "class2nd.scoreType.all".tr(); - - static Class2ndPointType? parse(String typeName) { - if (typeName == "主题报告") { - return Class2ndPointType.thematicReport; - } else if (typeName == "社会实践") { - return Class2ndPointType.practice; - } else if (typeName == "创新创业创意") { - return Class2ndPointType.creation; - } else if (typeName == "校园文化") { - return Class2ndPointType.schoolCulture; - } else if (typeName == "公益志愿") { - return Class2ndPointType.voluntary; - } else if (typeName == "校园安全文明") { - return Class2ndPointType.schoolSafetyCivilization; - } - return null; - } -} - -class Class2ndAttendedActivity { - final Class2ndActivityApplication application; - final List scores; - - double? calcTotalPoints() { - if (scores.isEmpty) return null; - return scores.fold(0.0, (pre, e) => pre + e.points); - } - - double? calcTotalHonestyPoints() { - if (scores.isEmpty) return null; - return scores.fold(0.0, (pre, e) => pre + e.honestyPoints); - } - - int get activityId => application.activityId; - - Class2ndActivityApplicationStatus get status => application.status; - - bool get cancelled => application.activityId == -1; - - int get applicationId => application.applicationId; - - Class2ndActivityCat get category => application.category; - - Class2ndPointType? get scoreType => application.category.pointType; - - /// Because the [application.name] might have trailing ellipsis - String get title => scores.firstOrNull?.name ?? application.title; - - const Class2ndAttendedActivity({ - required this.application, - required this.scores, - }); - - @override - String toString() { - return { - "application": application, - "scores": scores, - }.toString(); - } -} diff --git a/lib/school/class2nd/entity/attended.g.dart b/lib/school/class2nd/entity/attended.g.dart deleted file mode 100644 index bc2591ab7..000000000 --- a/lib/school/class2nd/entity/attended.g.dart +++ /dev/null @@ -1,164 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'attended.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class Class2ndPointsSummaryAdapter extends TypeAdapter { - @override - final int typeId = 33; - - @override - Class2ndPointsSummary read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Class2ndPointsSummary( - thematicReport: fields[0] as double, - practice: fields[1] as double, - creation: fields[2] as double, - schoolSafetyCivilization: fields[3] as double, - voluntary: fields[4] as double, - schoolCulture: fields[5] as double, - honestyPoints: fields[6] as double, - totalPoints: fields[7] as double, - ); - } - - @override - void write(BinaryWriter writer, Class2ndPointsSummary obj) { - writer - ..writeByte(8) - ..writeByte(0) - ..write(obj.thematicReport) - ..writeByte(1) - ..write(obj.practice) - ..writeByte(2) - ..write(obj.creation) - ..writeByte(3) - ..write(obj.schoolSafetyCivilization) - ..writeByte(4) - ..write(obj.voluntary) - ..writeByte(5) - ..write(obj.schoolCulture) - ..writeByte(6) - ..write(obj.honestyPoints) - ..writeByte(7) - ..write(obj.totalPoints); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndPointsSummaryAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class Class2ndPointItemAdapter extends TypeAdapter { - @override - final int typeId = 36; - - @override - Class2ndPointItem read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Class2ndPointItem( - name: fields[0] as String, - activityId: fields[1] as int, - category: fields[2] as Class2ndActivityCat, - time: fields[3] as DateTime?, - points: fields[4] as double, - honestyPoints: fields[5] as double, - ); - } - - @override - void write(BinaryWriter writer, Class2ndPointItem obj) { - writer - ..writeByte(6) - ..writeByte(0) - ..write(obj.name) - ..writeByte(1) - ..write(obj.activityId) - ..writeByte(2) - ..write(obj.category) - ..writeByte(3) - ..write(obj.time) - ..writeByte(4) - ..write(obj.points) - ..writeByte(5) - ..write(obj.honestyPoints); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndPointItemAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class Class2ndPointTypeAdapter extends TypeAdapter { - @override - final int typeId = 37; - - @override - Class2ndPointType read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return Class2ndPointType.thematicReport; - case 1: - return Class2ndPointType.creation; - case 2: - return Class2ndPointType.schoolCulture; - case 3: - return Class2ndPointType.practice; - case 4: - return Class2ndPointType.voluntary; - case 5: - return Class2ndPointType.schoolSafetyCivilization; - default: - return Class2ndPointType.thematicReport; - } - } - - @override - void write(BinaryWriter writer, Class2ndPointType obj) { - switch (obj) { - case Class2ndPointType.thematicReport: - writer.writeByte(0); - break; - case Class2ndPointType.creation: - writer.writeByte(1); - break; - case Class2ndPointType.schoolCulture: - writer.writeByte(2); - break; - case Class2ndPointType.practice: - writer.writeByte(3); - break; - case Class2ndPointType.voluntary: - writer.writeByte(4); - break; - case Class2ndPointType.schoolSafetyCivilization: - writer.writeByte(5); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndPointTypeAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/class2nd/entity/details.dart b/lib/school/class2nd/entity/details.dart deleted file mode 100644 index 63bd5b016..000000000 --- a/lib/school/class2nd/entity/details.dart +++ /dev/null @@ -1,87 +0,0 @@ -import 'package:sit/storage/hive/type_id.dart'; - -part 'details.g.dart'; - -@HiveType(typeId: CacheHiveType.activityDetails) -class Class2ndActivityDetails { - /// Activity id - @HiveField(0) - final int id; - - /// Activity title - @HiveField(1) - final String title; - - /// Activity start time - @HiveField(2) - final DateTime startTime; - - /// Sign start time - @HiveField(3) - final DateTime signStartTime; - - /// Sign end time - @HiveField(4) - final DateTime signEndTime; - - /// Place - @HiveField(5) - final String? place; - - /// Duration - @HiveField(6) - final String? duration; - - /// Activity manager - @HiveField(7) - final String? principal; - - /// Manager yellow_pages(phone) - @HiveField(8) - final String? contactInfo; - - /// Activity organizer - @HiveField(9) - final String? organizer; - - /// Activity undertaker - @HiveField(10) - final String? undertaker; - - /// Description in text. - @HiveField(11) - final String? description; - - const Class2ndActivityDetails({ - required this.id, - required this.title, - required this.startTime, - required this.signStartTime, - required this.signEndTime, - this.place, - this.duration, - this.principal, - this.contactInfo, - this.organizer, - this.undertaker, - this.description, - }); - - @override - String toString() { - return { - "id": id, - "title": title, - "startTime": startTime, - "signStartTime": signStartTime, - "signEndTime": signEndTime, - "place": place, - "duration": duration, - "principal": principal, - "contactInfo": contactInfo, - "organizer": organizer, - "undertaker": undertaker, - "description": description, - }.toString(); - } -} diff --git a/lib/school/class2nd/entity/details.g.dart b/lib/school/class2nd/entity/details.g.dart deleted file mode 100644 index 370f98ba2..000000000 --- a/lib/school/class2nd/entity/details.g.dart +++ /dev/null @@ -1,72 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'details.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class Class2ndActivityDetailsAdapter extends TypeAdapter { - @override - final int typeId = 31; - - @override - Class2ndActivityDetails read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Class2ndActivityDetails( - id: fields[0] as int, - title: fields[1] as String, - startTime: fields[2] as DateTime, - signStartTime: fields[3] as DateTime, - signEndTime: fields[4] as DateTime, - place: fields[5] as String?, - duration: fields[6] as String?, - principal: fields[7] as String?, - contactInfo: fields[8] as String?, - organizer: fields[9] as String?, - undertaker: fields[10] as String?, - description: fields[11] as String?, - ); - } - - @override - void write(BinaryWriter writer, Class2ndActivityDetails obj) { - writer - ..writeByte(12) - ..writeByte(0) - ..write(obj.id) - ..writeByte(1) - ..write(obj.title) - ..writeByte(2) - ..write(obj.startTime) - ..writeByte(3) - ..write(obj.signStartTime) - ..writeByte(4) - ..write(obj.signEndTime) - ..writeByte(5) - ..write(obj.place) - ..writeByte(6) - ..write(obj.duration) - ..writeByte(7) - ..write(obj.principal) - ..writeByte(8) - ..write(obj.contactInfo) - ..writeByte(9) - ..write(obj.organizer) - ..writeByte(10) - ..write(obj.undertaker) - ..writeByte(11) - ..write(obj.description); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is Class2ndActivityDetailsAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/class2nd/i18n.dart b/lib/school/class2nd/i18n.dart deleted file mode 100644 index b6dffcaf1..000000000 --- a/lib/school/class2nd/i18n.dart +++ /dev/null @@ -1,120 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "class2nd"; - - final apply = const _Apply(); - final attended = const _Attended(); - final info = const _Info(); - - String get title => "$ns.title".tr(); - - String get noAttendedActivities => "$ns.noAttendedActivities".tr(); - - String get noActivities => "$ns.noActivities".tr(); - - String get activityAction => "$ns.activity".tr(); - - String get attendedAction => "$ns.attended.title".tr(); - - String get refreshSuccessTip => "$ns.refreshSuccessTip".tr(); - - String get refreshFailedTip => "$ns.refreshFailedTip".tr(); - - String get noDetails => "$ns.noDetails".tr(); - - String get infoTab => "$ns.tab.info".tr(); - - String get descriptionTab => "$ns.tab.description".tr(); - - String get viewDetails => "$ns.viewDetails".tr(); -} - -class _Apply { - const _Apply(); - - static const ns = "${_I18n.ns}.apply"; - - String get btn => "$ns.btn".tr(); - - String get replyTip => "$ns.replyTip".tr(); - - String get applyRequest => "$ns.applyRequest".tr(); - - String get applyRequestDesc => "$ns.applyRequestDesc".tr(); - - String get applySuccessTip => "$ns.applySuccessTip".tr(); - - String get applyFailureTip => "$ns.applyFailureTip".tr(); -} - -class _Attended { - const _Attended(); - - static const ns = "${_I18n.ns}.attended"; - - String get title => "$ns.title".tr(); - - String get withdrawApplicationAction => "$ns.withdrawApplicationAction".tr(); - - String get withdrawApplication => "$ns.withdrawApplication.title".tr(); - - String get withdrawApplicationDesc => "$ns.withdrawApplication.desc".tr(); -} - -class _Info { - const _Info(); - - static const ns = "${_I18n.ns}.info"; - - String get applicationId => "$ns.applicationId".tr(); - - String get activityId => "$ns.activityId".tr(); - - String applicationOf(int applicationId) => "$ns.applicationOf".tr( - args: [applicationId.toString()], - ); - - String activityOf(int activityId) => "$ns.activityOf".tr( - args: [activityId.toString()], - ); - - String get name => "$ns.name".tr(); - - String get tags => "$ns.tags".tr(); - - String get category => "$ns.category".tr(); - - String get scoreType => "$ns.scoreType".tr(); - - String get honestyPoints => "$ns.honestyPoints".tr(); - - String get totalPoints => "$ns.totalPoints".tr(); - - String get applicationTime => "$ns.applicationTime".tr(); - - String get status => "$ns.status".tr(); - - String get duration => "$ns.duration".tr(); - - String get location => "$ns.location".tr(); - - String get organizer => "$ns.organizer".tr(); - - String get principal => "$ns.principal".tr(); - - String get signInTime => "$ns.signInTime".tr(); - - String get signOutTime => "$ns.signOutTime".tr(); - - String get startTime => "$ns.startTime".tr(); - - String get undertaker => "$ns.undertaker".tr(); - - String get contactInfo => "$ns.contactInfo".tr(); -} diff --git a/lib/school/class2nd/index.dart b/lib/school/class2nd/index.dart deleted file mode 100644 index 1d4ee6a56..000000000 --- a/lib/school/class2nd/index.dart +++ /dev/null @@ -1,177 +0,0 @@ -import 'dart:async'; - -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart' hide isCupertino; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/school/class2nd/widgets/summary.dart'; -import 'package:sit/school/event.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/utils/async_event.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:share_plus/share_plus.dart'; -import 'package:sit/utils/error.dart'; -import 'package:super_context_menu/super_context_menu.dart'; - -import 'entity/attended.dart'; -import "i18n.dart"; -import 'init.dart'; -import 'utils.dart'; - -class Class2ndAppCard extends ConsumerStatefulWidget { - const Class2ndAppCard({super.key}); - - @override - ConsumerState createState() => _Class2ndAppCardState(); -} - -class _Class2ndAppCardState extends ConsumerState { - late final EventSubscription $refreshEvent; - - @override - void initState() { - $refreshEvent = schoolEventBus.addListener(() async { - await refresh(active: true); - }); - super.initState(); - } - - @override - void didChangeDependencies() { - super.didChangeDependencies(); - refresh(active: false); - } - - @override - void dispose() { - $refreshEvent.cancel(); - super.dispose(); - } - - Future refresh({required bool active}) async { - // TODO: Error when school server unavailable. - try { - final summary = await Class2ndInit.pointService.fetchScoreSummary(); - Class2ndInit.pointStorage.pointsSummary = summary; - if (active) { - if (!mounted) return; - context.showSnackBar(content: i18n.refreshSuccessTip.text()); - } - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - if (active) { - context.showSnackBar(content: i18n.refreshFailedTip.text()); - } - } - } - - Class2ndPointsSummary getTargetScore() { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - final admissionYear = getAdmissionYearFromStudentId(credentials?.account); - return getTargetScoreOf(admissionYear: admissionYear); - } - - @override - Widget build(BuildContext context) { - final storage = Class2ndInit.pointStorage; - final summary = ref.watch(storage.$pointsSummary); - return AppCard( - title: i18n.title.text(), - view: summary == null - ? const SizedBox() - : buildSummeryCard( - summary: summary, - target: getTargetScore(), - ), - subtitle: summary == null - ? null - : [ - "${i18n.info.honestyPoints}: ${summary.honestyPoints}".text(), - "${i18n.info.totalPoints}: ${summary.totalPoints}".text(), - ].column(caa: CrossAxisAlignment.start), - leftActions: [ - FilledButton.icon( - onPressed: () async { - await context.push("/class2nd"); - }, - label: i18n.activityAction.text(), - icon: const Icon(Icons.local_activity), - ), - OutlinedButton( - onPressed: () async { - await context.push("/class2nd/attended"); - }, - child: i18n.attendedAction.text(), - ) - ], - rightActions: [ - if (!supportContextMenu) - PlatformIconButton( - material: (ctx, p) { - return MaterialIconButtonData( - tooltip: i18n.share, - ); - }, - onPressed: summary != null - ? () async { - await shareSummery(summary: summary, target: getTargetScore(), context: context); - } - : null, - icon: Icon(context.icons.share), - ), - ], - ); - } - - Widget buildSummeryCard({ - required Class2ndPointsSummary summary, - required Class2ndPointsSummary target, - }) { - final card = Class2ndScoreSummeryCard( - targetScore: target, - summary: summary, - ).constrained(maxH: 250); - if (!supportContextMenu) return card; - return Builder( - builder: (ctx) => ContextMenuWidget( - menuProvider: (MenuRequest request) { - return Menu( - children: [ - MenuAction( - image: MenuImage.icon(context.icons.share), - title: i18n.share, - callback: () async { - await shareSummery(summary: summary, target: target, context: ctx); - }, - ), - ], - ); - }, - child: card, - ), - ); - } - - Future shareSummery({ - required Class2ndPointsSummary summary, - required Class2ndPointsSummary target, - required BuildContext context, - }) async { - final name2score = summary.toName2score(); - final name2target = target.toName2score(); - final text = name2score - .map((e) => - "${e.type.l10nFullName()}: ${e.score}/${name2target.firstWhereOrNull((t) => t.type == e.type)?.score}") - .join(", "); - await Share.share( - text, - sharePositionOrigin: context.getSharePositionOrigin(), - ); - } -} diff --git a/lib/school/class2nd/init.dart b/lib/school/class2nd/init.dart deleted file mode 100644 index c7971846f..000000000 --- a/lib/school/class2nd/init.dart +++ /dev/null @@ -1,29 +0,0 @@ -import 'package:sit/school/class2nd/service/points.demo.dart'; -import 'package:sit/settings/dev.dart'; - -import 'service/activity.dart'; -import 'service/activity.demo.dart'; -import 'service/application.dart'; -import 'service/application.demo.dart'; -import 'service/points.dart'; -import 'storage/activity.dart'; -import 'storage/points.dart'; - -class Class2ndInit { - static late Class2ndPointsService pointService; - static late Class2ndPointsStorage pointStorage; - static late Class2ndActivityService activityService; - static late Class2ndActivityStorage activityStorage; - static late Class2ndApplicationService applicationService; - - static void init() { - pointService = Dev.demoMode ? const DemoClass2ndPointsService() : const Class2ndPointsService(); - activityService = Dev.demoMode ? const DemoClass2ndActivityService() : const Class2ndActivityService(); - applicationService = Dev.demoMode ? const DemoClass2ndApplicationService() : const Class2ndApplicationService(); - } - - static void initStorage() { - pointStorage = Class2ndPointsStorage(); - activityStorage = const Class2ndActivityStorage(); - } -} diff --git a/lib/school/class2nd/page/activity.dart b/lib/school/class2nd/page/activity.dart deleted file mode 100644 index ee692f1eb..000000000 --- a/lib/school/class2nd/page/activity.dart +++ /dev/null @@ -1,207 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/utils/collection.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/activity.dart'; -import '../init.dart'; -import '../utils.dart'; -import '../widgets/activity.dart'; -import '../widgets/search.dart'; -import '../i18n.dart'; - -class ActivityListPage extends StatefulWidget { - const ActivityListPage({super.key}); - - @override - State createState() => _ActivityListPageState(); -} - -class _ActivityListPageState extends State { - final $loadingStates = ValueNotifier(commonClass2ndCategories.map((cat) => false).toList()); - - @override - void dispose() { - $loadingStates.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - bottomNavigationBar: PreferredSize( - preferredSize: const Size.fromHeight(4), - child: $loadingStates >> - (ctx, states) { - return !states.any((state) => state == true) ? const SizedBox() : const LinearProgressIndicator(); - }, - ), - body: DefaultTabController( - length: commonClass2ndCategories.length, - child: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - // These are the slivers that show up in the "outer" scroll view. - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.title.text(), - forceElevated: innerBoxIsScrolled, - actions: [ - PlatformIconButton( - icon: Icon(context.icons.search), - onPressed: () => showSearch(context: context, delegate: ActivitySearchDelegate()), - ), - ], - bottom: TabBar( - isScrollable: true, - tabs: commonClass2ndCategories - .mapIndexed( - (i, e) => Tab( - child: e.l10nName().text(), - ), - ) - .toList(), - ), - ), - ), - ]; - }, - body: TabBarView( - // These are the contents of the tab views, below the tabs. - children: commonClass2ndCategories.mapIndexed((i, cat) { - return ActivityLoadingList( - cat: cat, - onLoadingChanged: (state) { - final newStates = List.of($loadingStates.value); - newStates[i] = state; - $loadingStates.value = newStates; - }, - ); - }).toList(), - ), - ), - ), - ); - } -} - -/// Thanks to the cache, don't worry about that switching tab will re-fetch the activity list. -class ActivityLoadingList extends StatefulWidget { - final Class2ndActivityCat cat; - final ValueChanged onLoadingChanged; - - const ActivityLoadingList({ - super.key, - required this.cat, - required this.onLoadingChanged, - }); - - @override - State createState() => _ActivityLoadingListState(); -} - -class _ActivityLoadingListState extends State with AutomaticKeepAliveClientMixin { - int lastPage = 1; - bool isFetching = false; - late var activities = Class2ndInit.activityStorage.getActivities(widget.cat); - - @override - bool get wantKeepAlive => true; - - @override - void initState() { - super.initState(); - Future.delayed(Duration.zero).then((value) async { - await loadMore(); - }); - } - - @override - Widget build(BuildContext context) { - super.build(context); - final activities = this.activities; - return NotificationListener( - onNotification: (event) { - if (event.metrics.pixels >= event.metrics.maxScrollExtent) { - loadMore(); - } - return true; - }, - child: CustomScrollView( - // CAN'T USE ScrollController, and I don't know why - // controller: scrollController, - slivers: [ - SliverOverlapInjector( - // This is the flip side of the SliverOverlapAbsorber above. - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - ), - if (activities != null) - if (activities.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noActivities, - ), - ) - else - SliverList.builder( - itemCount: activities.length, - itemBuilder: (ctx, index) { - final activity = activities[index]; - return ActivityCard( - activity, - onTap: () async { - await context.push( - "/class2nd/activity-details/${activity.id}?title=${activity.title}&time=${activity.time}&enable-apply=true", - ); - }, - ); - }, - ), - ], - ), - ); - } - - Future loadMore() async { - final cat = widget.cat; - if (!cat.canFetchData) return; - if (isFetching) return; - if (!mounted) return; - setState(() { - isFetching = true; - }); - widget.onLoadingChanged(true); - try { - final lastActivities = await Class2ndInit.activityService.getActivityList(cat, lastPage); - final activities = this.activities ?? []; - activities.addAll(lastActivities); - activities.distinctBy((a) => a.id); - // The incoming activities may be the same as before, so distinct is necessary. - activities.sort((a, b) => b.time.compareTo(a.time)); - await Class2ndInit.activityStorage.setActivities(cat, activities); - if (!mounted) return; - setState(() { - lastPage++; - this.activities = activities; - isFetching = false; - }); - widget.onLoadingChanged(false); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - widget.onLoadingChanged(false); - } - } -} diff --git a/lib/school/class2nd/page/attended.dart b/lib/school/class2nd/page/attended.dart deleted file mode 100644 index 6dc1101f6..000000000 --- a/lib/school/class2nd/page/attended.dart +++ /dev/null @@ -1,510 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/animation/progress.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/design/widgets/tags.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/school/class2nd/entity/activity.dart'; -import 'package:sit/school/class2nd/utils.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/application.dart'; -import '../entity/attended.dart'; -import '../init.dart'; -import '../i18n.dart'; - -class AttendedActivityPage extends ConsumerStatefulWidget { - const AttendedActivityPage({super.key}); - - @override - ConsumerState createState() => _AttendedActivityPageState(); -} - -class _AttendedActivityPageState extends ConsumerState { - List? attended = () { - final applications = Class2ndInit.pointStorage.applicationList; - final scores = Class2ndInit.pointStorage.pointItemList; - if (applications == null || scores == null) return null; - return buildAttendedActivityList( - applications: applications, - scores: scores, - ); - }(); - late bool isFetching = false; - final $loadingProgress = ValueNotifier(0.0); - Class2ndActivityCat? selectedCat; - Class2ndPointType? selectedScoreType; - - @override - void initState() { - super.initState(); - refresh(active: false); - } - - @override - void dispose() { - $loadingProgress.dispose(); - super.dispose(); - } - - Future refresh({required bool active}) async { - if (!mounted) return; - setState(() => isFetching = true); - try { - $loadingProgress.value = 0; - final applicationList = await Class2ndInit.pointService.fetchActivityApplicationList(); - $loadingProgress.value = 0.5; - final scoreItemList = await Class2ndInit.pointService.fetchScoreItemList(); - $loadingProgress.value = 1.0; - Class2ndInit.pointStorage.applicationList = applicationList; - Class2ndInit.pointStorage.pointItemList = scoreItemList; - - if (!mounted) return; - setState(() { - attended = buildAttendedActivityList(applications: applicationList, scores: scoreItemList); - isFetching = false; - }); - $loadingProgress.value = 0; - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() => isFetching = false); - $loadingProgress.value = 0; - } - } - - Class2ndPointsSummary getTargetScore() { - final credentials = ref.read(CredentialsInit.storage.$oaCredentials); - final admissionYear = int.tryParse(credentials?.account.substring(0, 2) ?? "") ?? 2000; - return getTargetScoreOf(admissionYear: admissionYear); - } - - @override - Widget build(BuildContext context) { - final attended = this.attended; - final filteredActivities = attended - ?.where((activity) => selectedCat == null || activity.category == selectedCat) - .where((activity) => selectedScoreType == null || activity.scoreType == selectedScoreType) - .toList(); - return Scaffold( - body: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.attended.title.text(), - actions: [ - PlatformIconButton( - onPressed: () async { - final result = await showSearch( - context: context, - delegate: AttendedActivitySearchDelegate(attended ?? []), - ); - }, - icon: Icon(context.icons.search), - ), - ], - bottom: isFetching - ? PreferredSize( - preferredSize: const Size.fromHeight(4), - child: $loadingProgress >> (ctx, value) => AnimatedProgressBar(value: value), - ) - : null, - forceElevated: innerBoxIsScrolled, - ), - ), - ]; - }, - body: RefreshIndicator.adaptive( - triggerMode: RefreshIndicatorTriggerMode.anywhere, - onRefresh: () async { - await HapticFeedback.heavyImpact(); - await refresh(active: true); - }, - child: CustomScrollView( - slivers: [ - SliverList.list(children: [ - ListTile( - title: i18n.info.category.text(), - ), - buildActivityCatChoices(), - ListTile( - title: i18n.info.scoreType.text(), - ), - buildScoreTypeChoices(), - ]), - const SliverToBoxAdapter( - child: Divider(), - ), - if (filteredActivities != null) - if (filteredActivities.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noAttendedActivities, - ), - ) - else - SliverList.builder( - itemCount: filteredActivities.length, - itemBuilder: (ctx, i) { - final activity = filteredActivities[i]; - return ActivityApplicationCard( - activity, - onWithdrawn: () { - refresh(active: false); - }, - ); - }, - ), - ], - ), - ), - ), - ); - } - - Widget buildActivityCatChoices() { - return ListView( - scrollDirection: Axis.horizontal, - physics: const RangeMaintainingScrollPhysics(), - children: [ - ChoiceChip( - label: Class2ndActivityCat.allCatL10n().text(), - selected: selectedCat == null, - onSelected: (value) { - setState(() { - selectedCat = null; - }); - }, - ).padH(4), - ...(attended ?? const []).map((activity) => activity.category).toSet().map( - (cat) => ChoiceChip( - label: cat.l10nName().text(), - selected: selectedCat == cat, - onSelected: (value) { - setState(() { - selectedCat = cat; - selectedScoreType = null; - }); - }, - ).padH(4), - ), - ], - ).sized(h: 40); - } - - Widget buildScoreTypeChoices() { - return ListView( - scrollDirection: Axis.horizontal, - physics: const RangeMaintainingScrollPhysics(), - children: [ - ChoiceChip( - label: Class2ndPointType.allCatL10n().text(), - selected: selectedScoreType == null, - onSelected: (value) { - setState(() { - selectedScoreType = null; - }); - }, - ).padH(4), - ...(attended ?? const []).map((activity) => activity.category.pointType).whereNotNull().toSet().map( - (scoreType) => ChoiceChip( - label: scoreType.l10nFullName().text(), - selected: selectedScoreType == scoreType, - onSelected: (value) { - setState(() { - selectedScoreType = scoreType; - selectedCat = null; - }); - }, - ).padH(4), - ), - ], - ).sized(h: 40); - } -} - -class ActivityApplicationCard extends StatelessWidget { - final Class2ndAttendedActivity attended; - final VoidCallback? onWithdrawn; - - const ActivityApplicationCard( - this.attended, { - super.key, - this.onWithdrawn, - }); - - @override - Widget build(BuildContext context) { - final (:title, :tags) = separateTagsFromTitle(attended.title); - final points = attended.calcTotalPoints(); - return Card.filled( - clipBehavior: Clip.hardEdge, - child: ListTile( - isThreeLine: true, - title: title.text(), - subtitleTextStyle: context.textTheme.bodyMedium, - subtitle: [ - "${attended.category.l10nName()} #${attended.application.applicationId}".text(), - context.formatYmdhmsNum(attended.application.time).text(), - if (tags.isNotEmpty) TagsGroup(tags), - ].column(caa: CrossAxisAlignment.start), - trailing: points != null && points != 0 - ? Text( - _pointsText(points), - style: context.textTheme.titleMedium?.copyWith(color: _pointsColor(context, points)), - ) - : Text( - attended.application.status.l10n(), - style: context.textTheme.titleMedium?.copyWith( - color: switch (attended.application.status) { - Class2ndActivityApplicationStatus.approved => Colors.green, - Class2ndActivityApplicationStatus.rejected => Colors.redAccent, - _ => null, - }), - ), - onTap: () async { - final result = await context.push("/class2nd/attended-details", extra: attended); - if (result == "withdrawn") { - onWithdrawn?.call(); - } - }, - ), - ); - } -} - -/// The navigation will pop with ["withdrawn"] when user withdrew this application. -class Class2ndApplicationDetailsPage extends StatefulWidget { - final Class2ndAttendedActivity activity; - - const Class2ndApplicationDetailsPage( - this.activity, { - super.key, - }); - - @override - State createState() => _Class2ndApplicationDetailsPageState(); -} - -class _Class2ndApplicationDetailsPageState extends State { - var withdrawing = false; - - @override - Widget build(BuildContext context) { - final activity = widget.activity; - final (:title, :tags) = separateTagsFromTitle(activity.title); - final scores = activity.scores; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.info.applicationOf(activity.application.applicationId).text(), - actions: [ - if (activity.status == Class2ndActivityApplicationStatus.reviewing) - PlatformTextButton( - onPressed: withdrawing ? null : withdrawApplication, - child: i18n.attended.withdrawApplicationAction.text(), - ) - ], - ), - SliverList.list(children: [ - DetailListTile( - title: i18n.info.name, - subtitle: title, - ), - DetailListTile( - title: i18n.info.category, - subtitle: activity.category.l10nName(), - ), - DetailListTile( - title: i18n.info.applicationTime, - subtitle: context.formatYmdhmNum(activity.application.time), - ), - DetailListTile( - title: i18n.info.status, - subtitle: activity.application.status.l10n(), - ), - if (tags.isNotEmpty) - ListTile( - isThreeLine: true, - title: i18n.info.tags.text(), - subtitle: TagsGroup(tags), - visualDensity: VisualDensity.compact, - ), - if (!activity.cancelled) - ListTile( - title: i18n.viewDetails.text(), - subtitle: i18n.info.activityOf(activity.activityId).text(), - trailing: const Icon(Icons.open_in_new), - onTap: () async { - await context.push( - "/class2nd/activity-details/${activity.activityId}?title=${activity.title}", - ); - }, - ), - ]), - if (scores.isNotEmpty) - const SliverToBoxAdapter( - child: Divider(), - ), - SliverList.builder( - itemCount: scores.length, - itemBuilder: (ctx, i) { - return Class2ndScoreTile(scores[i]); - }, - ), - ], - ), - ); - } - - Future withdrawApplication() async { - final confirm = await context.showActionRequest( - action: i18n.attended.withdrawApplication, - desc: i18n.attended.withdrawApplicationDesc, - cancel: i18n.cancel, - ); - if (confirm != true) return; - setState(() { - withdrawing = true; - }); - final res = await Class2ndInit.applicationService.withdraw(widget.activity.applicationId); - if (!mounted) return; - setState(() { - withdrawing = false; - }); - if (res) { - // pop with "withdrawn" - context.pop("withdrawn"); - } - } -} - -class Class2ndScoreTile extends StatelessWidget { - final Class2ndPointItem score; - - const Class2ndScoreTile( - this.score, { - super.key, - }); - - @override - Widget build(BuildContext context) { - final time = score.time; - final subtitle = time == null ? null : context.formatYmdhmNum(time).text(); - final scoreType = score.pointType; - if (score.points != 0 && score.honestyPoints != 0) { - return ListTile( - title: RichText( - text: TextSpan(children: [ - TextSpan( - text: scoreType != null - ? "${scoreType.l10nFullName()} ${_pointsText(score.points)}" - : _pointsText(score.points), - style: context.textTheme.bodyLarge?.copyWith(color: _pointsColor(context, score.points)), - ), - const TextSpan(text: "\n"), - TextSpan( - text: "${i18n.info.honestyPoints} ${_pointsText(score.honestyPoints)}", - style: context.textTheme.bodyLarge?.copyWith(color: _pointsColor(context, score.honestyPoints)), - ), - ]), - ), - subtitle: subtitle, - ); - } else if (score.points != 0) { - return ListTile( - titleTextStyle: context.textTheme.bodyLarge?.copyWith(color: _pointsColor(context, score.points)), - title: - (scoreType != null ? "${scoreType.l10nFullName()} ${_pointsText(score.points)}" : _pointsText(score.points)) - .text(), - subtitle: subtitle, - ); - } else if (score.honestyPoints != 0) { - return ListTile( - titleTextStyle: context.textTheme.bodyLarge?.copyWith(color: _pointsColor(context, score.honestyPoints)), - title: "${i18n.info.honestyPoints} ${_pointsText(score.honestyPoints)}".text(), - subtitle: subtitle, - ); - } else { - return ListTile( - title: "+0".text(), - subtitle: subtitle, - ); - } - } -} - -String _pointsText(double points) { - if (points > 0) { - return "+${points.toStringAsFixed(2)}"; - } else if (points == 0) { - return "+0"; - } else { - return points.toStringAsFixed(2); - } -} - -Color? _pointsColor(BuildContext ctx, double points) { - if (points > 0) { - return Colors.green; - } else if (points == 0) { - return null; - } else { - return ctx.$red$; - } -} - -class AttendedActivitySearchDelegate extends SearchDelegate { - final List activities; - - AttendedActivitySearchDelegate(this.activities); - - @override - List? buildActions(BuildContext context) { - return [ - PlatformIconButton(onPressed: () => query = '', icon: Icon(context.icons.clear)), - ]; - } - - @override - Widget? buildLeading(BuildContext context) { - return null; - } - - @override - Widget buildResults(BuildContext context) { - final results = _query(activities, query); - return ListView.builder( - itemCount: results.length, - itemBuilder: (ctx, i) { - final activity = results[i]; - return ActivityApplicationCard(activity); - }, - ); - } - - @override - Widget buildSuggestions(BuildContext context) { - return Container(); - } -} - -List _query(List all, String prompt) { - return all.where((activity) => activity.title.contains(prompt)).toList(); -} diff --git a/lib/school/class2nd/page/details.dart b/lib/school/class2nd/page/details.dart deleted file mode 100644 index 42659ee80..000000000 --- a/lib/school/class2nd/page/details.dart +++ /dev/null @@ -1,339 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_widget_from_html/flutter_widget_from_html.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/design/widgets/tags.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/school/class2nd/service/application.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/widgets/html.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:url_launcher/url_launcher_string.dart'; - -import '../entity/details.dart'; -import '../init.dart'; -import '../i18n.dart'; -import '../utils.dart'; - -String _getActivityUrl(int activityId) { - return 'http://sc.sit.edu.cn/public/activity/activityDetail.action?activityId=$activityId'; -} - -class Class2ndActivityDetailsPage extends StatefulWidget { - final int activityId; - final String? title; - final DateTime? time; - final bool enableApply; - - const Class2ndActivityDetailsPage({ - super.key, - required this.activityId, - this.title, - this.time, - this.enableApply = false, - }); - - @override - State createState() => _Class2ndActivityDetailsPageState(); -} - -class _Class2ndActivityDetailsPageState extends State { - int get activityId => widget.activityId; - late Class2ndActivityDetails? details = Class2ndInit.activityStorage.getActivityDetails(activityId); - bool isFetching = false; - - @override - void initState() { - super.initState(); - fetch(); - } - - Future fetch() async { - if (details != null) return; - setState(() { - isFetching = true; - }); - final data = await Class2ndInit.activityService.getActivityDetails(activityId); - await Class2ndInit.activityStorage.setActivityDetails(activityId, data); - setState(() { - details = data; - isFetching = false; - }); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - body: DefaultTabController( - length: 2, - child: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.info.activityOf(activityId).text(), - actions: [ - if (widget.enableApply) - PlatformTextButton( - child: i18n.apply.btn.text(), - onPressed: () async { - await showApplyRequest(); - }, - ), - buildMoreActions(), - ], - forceElevated: innerBoxIsScrolled, - bottom: TabBar( - isScrollable: true, - tabs: [ - Tab(child: i18n.infoTab.text()), - Tab(child: i18n.descriptionTab.text()), - ], - ), - ), - ), - ]; - }, - body: TabBarView( - children: [ - ActivityDetailsInfoTabView(activityTitle: widget.title, activityTime: widget.time, details: details), - ActivityDetailsDocumentTabView(details: details), - ], - ), - ), - ), - bottomNavigationBar: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ); - } - - Widget buildMoreActions() { - return PullDownMenuButton( - itemBuilder: (ctx) => [ - PullDownItem( - icon: Icons.open_in_browser, - title: i18n.openInBrowser, - onTap: () async { - await launchUrlString( - _getActivityUrl(activityId), - mode: LaunchMode.externalApplication, - ); - }, - ), - if (Dev.on) - PullDownItem( - icon: Icons.send, - title: "Forcibly apply", - destructive: true, - onTap: () async { - await showForciblyApplyRequest(); - }, - ), - if (Dev.on) - PullDownItem( - icon: context.icons.delete, - title: "Delete cache", - destructive: true, - onTap: () async { - Class2ndInit.activityStorage.setActivityDetails(activityId, null); - }, - ), - ], - ); - } - - Future showApplyRequest() async { - final confirm = await context.showActionRequest( - action: i18n.apply.applyRequest, - desc: i18n.apply.applyRequestDesc, - cancel: i18n.cancel, - destructive: true, - ); - if (confirm != true) return; - try { - final checkRes = await Class2ndInit.applicationService.check(activityId); - if (checkRes != Class2ndApplicationCheckResponse.successfulCheck) { - if (!mounted) return; - await context.showTip(title: i18n.apply.replyTip, desc: checkRes.l10n(), primary: i18n.ok); - return; - } - final applySuccess = await Class2ndInit.applicationService.apply(activityId); - if (!mounted) return; - await context.showTip( - title: i18n.apply.replyTip, - desc: applySuccess ? i18n.apply.applySuccessTip : i18n.apply.applyFailureTip, - primary: i18n.ok, - ); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - } - } - - Future showForciblyApplyRequest() async { - final confirm = await context.showActionRequest( - action: "Forcibly apply", - desc: "Confirm to apply this activity forcibly?", - cancel: i18n.cancel, - destructive: true, - ); - if (confirm != true) return; - try { - final applySuccess = await Class2ndInit.applicationService.apply(activityId); - if (!mounted) return; - await context.showTip( - title: i18n.apply.replyTip, - desc: applySuccess ? "Yes" : "No", - primary: i18n.ok, - ); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - } - } -} - -class ActivityDetailsInfoTabView extends StatefulWidget { - final String? activityTitle; - final DateTime? activityTime; - final Class2ndActivityDetails? details; - - const ActivityDetailsInfoTabView({ - super.key, - this.activityTitle, - this.activityTime, - this.details, - }); - - @override - State createState() => _ActivityDetailsInfoTabViewState(); -} - -class _ActivityDetailsInfoTabViewState extends State with AutomaticKeepAliveClientMixin { - @override - bool get wantKeepAlive => true; - - @override - Widget build(BuildContext context) { - super.build(context); - final details = widget.details; - final (:title, :tags) = separateTagsFromTitle(widget.activityTitle ?? details?.title ?? ""); - final time = details?.startTime ?? widget.activityTime; - return SelectionArea( - child: CustomScrollView( - slivers: [ - SliverList.list(children: [ - DetailListTile( - title: i18n.info.name, - subtitle: title, - ), - if (time != null) - DetailListTile( - title: i18n.info.startTime, - subtitle: context.formatYmdhmNum(time), - ), - if (details != null) ...[ - if (details.place != null) - DetailListTile( - title: i18n.info.location, - subtitle: details.place!, - ), - if (details.principal != null) - DetailListTile( - title: i18n.info.principal, - subtitle: details.principal!, - ), - if (details.organizer != null) - DetailListTile( - title: i18n.info.organizer, - subtitle: details.organizer!, - ), - if (details.undertaker != null) - DetailListTile( - title: i18n.info.undertaker, - subtitle: details.undertaker!, - ), - if (details.contactInfo != null) - DetailListTile( - title: i18n.info.contactInfo, - subtitle: details.contactInfo!, - ), - if (tags.isNotEmpty) - ListTile( - isThreeLine: true, - title: i18n.info.tags.text(), - subtitle: TagsGroup(tags), - ), - DetailListTile( - title: i18n.info.signInTime, - subtitle: context.formatYmdhmNum(details.signStartTime), - ), - DetailListTile( - title: i18n.info.signOutTime, - subtitle: context.formatYmdhmNum(details.signEndTime), - ), - if (details.duration != null) - DetailListTile( - title: i18n.info.duration, - subtitle: details.duration!, - ), - ], - ]), - ], - ), - ); - } -} - -class ActivityDetailsDocumentTabView extends StatefulWidget { - final Class2ndActivityDetails? details; - - const ActivityDetailsDocumentTabView({ - super.key, - this.details, - }); - - @override - State createState() => _ActivityDetailsDocumentTabViewState(); -} - -class _ActivityDetailsDocumentTabViewState extends State - with AutomaticKeepAliveClientMixin { - @override - bool get wantKeepAlive => true; - - @override - Widget build(BuildContext context) { - super.build(context); - final description = widget.details?.description; - return SelectionArea( - child: CustomScrollView( - slivers: [ - if (description == null) - SliverToBoxAdapter( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noDetails, - ), - ) - else - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 8), - sliver: RestyledHtmlWidget(description, renderMode: RenderMode.sliverList), - ) - ], - ), - ); - } -} diff --git a/lib/school/class2nd/service/activity.dart b/lib/school/class2nd/service/activity.dart deleted file mode 100644 index e82facdaa..000000000 --- a/lib/school/class2nd/service/activity.dart +++ /dev/null @@ -1,145 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/school/utils.dart'; -import 'package:sit/session/class2nd.dart'; - -import '../entity/details.dart'; -import '../entity/activity.dart'; -import "package:intl/intl.dart"; - -class Class2ndActivityService { - static final re = RegExp(r"(\d){7}"); - static final _spacesRx = RegExp(r'\s{2}\s+'); - static final _dateFormatParser = DateFormat('yyyy-MM-dd hh:mm:ss'); - - Class2ndSession get _session => Init.class2ndSession; - - const Class2ndActivityService(); - - String _generateUrl(Class2ndActivityCat cat, int page, [int pageSize = 20]) { - assert(cat.canFetchData); - return 'http://sc.sit.edu.cn/public/activity/activityList.action?pageNo=$page&pageSize=$pageSize&categoryId=${cat.id}'; - } - - Future> getActivityList(Class2ndActivityCat cat, int page) async { - assert(cat.canFetchData); - final url = _generateUrl(cat, page); - final response = await _session.request( - url, - options: Options( - method: "GET", - ), - ); - return _parseActivityList(response.data); - } - - Future> query(String queryString) async { - const String url = 'http://sc.sit.edu.cn/public/activity/activityList.action'; - final response = await _session.request( - url, - data: 'activityName=$queryString', - options: Options( - contentType: Headers.formUrlEncodedContentType, - method: "POST", - ), - ); - - return _parseActivityList(response.data); - } - - static List _parseActivityList(String htmlPage) { - final BeautifulSoup soup = BeautifulSoup(htmlPage); - List result = soup.findAll('.ul_7 li > a').map( - (element) { - final date = element.nextSibling!.text; - final String fullTitle = mapChinesePunctuations(element.text.substring(2)); - final String link = element.attributes['href']!; - - final String? x = re.firstMatch(link)?.group(0).toString(); - final int id = int.parse(x!); - return Class2ndActivity( - id: id, - title: fullTitle, - time: _dateFormatParser.parse(date), - ); - }, - ).toList(); - return result; - } - - /// 获取第二课堂活动详情 - Future getActivityDetails(int activityId) async { - final response = await _session.request( - 'http://sc.sit.edu.cn/public/activity/activityDetail.action?activityId=$activityId', - options: Options( - method: "POST", - ), - ); - final data = response.data; - return _parseActivityDetails(data); - } - - static String _cleanText(String banner) { - String result = banner.replaceAll(' ', ' ').replaceAll('
', ''); - return result.replaceAll(_spacesRx, '\n'); - } - - static Map _splitActivityProperties(String banner) { - String cleanText = _cleanText(banner); - List lines = cleanText.split('\n'); - lines.removeLast(); - final map = {}; - for (String line in lines) { - List result = line.split(':'); - // handle Tencent Meeting, for example: 活动地点:"#腾讯会议:627-872-562" - map.addAll({result[0]: result.sublist(1).join(':')}); - } - return map; - } - - static DateTime _parseDateTime(String dateTime) { - var dateFormat = DateFormat('yyyy-MM-dd hh:mm:ss'); - return dateFormat.parse(dateTime); - } - - static List _parseSignTime(String value) { - List time = value.split(' --至-- '); - return [_parseDateTime(time[0]), _parseDateTime(time[1])]; - } - - static Class2ndActivityDetails _parseProperties(Bs4Element item) { - String title = item.findAll('h1').map((e) => e.innerHtml.trim()).elementAt(0); - String description = - item.findAll('div[style="padding:30px 50px; font-size:14px;"]').map((e) => e.innerHtml.trim()).elementAt(0); - String banner = - item.findAll('div[style=" color:#7a7a7a; text-align:center"]').map((e) => e.innerHtml.trim()).elementAt(0); - - final properties = _splitActivityProperties(banner); - final signTime = _parseSignTime(properties['刷卡时间段']!); - - return Class2ndActivityDetails( - id: int.parse(properties['活动编号']!), - title: mapChinesePunctuations(title), - startTime: _parseDateTime(properties['活动开始时间']!), - signStartTime: signTime[0], - signEndTime: signTime[1], - place: properties['活动地点'], - duration: properties['活动时长'], - principal: properties['负责人'], - contactInfo: properties['负责人电话'], - organizer: properties['主办方'], - undertaker: properties['承办方'], - description: description, - ); - } - - static Class2ndActivityDetails _parseActivityDetails(String htmlPage) { - final BeautifulSoup soup = BeautifulSoup(htmlPage); - final frame = soup.find('.box-1'); - final detail = _parseProperties(frame!); - - return detail; - } -} diff --git a/lib/school/class2nd/service/activity.demo.dart b/lib/school/class2nd/service/activity.demo.dart deleted file mode 100644 index f2f42fa6b..000000000 --- a/lib/school/class2nd/service/activity.demo.dart +++ /dev/null @@ -1,65 +0,0 @@ -import 'dart:math'; - -import 'package:sit/school/class2nd/entity/details.dart'; - -import '../entity/activity.dart'; -import 'activity.dart'; - -class DemoClass2ndActivityService implements Class2ndActivityService { - const DemoClass2ndActivityService(); - - @override - Future> getActivityList(Class2ndActivityCat cat, int page) async { - if (page > 3) return []; - final rand = Random(cat.hashCode); - final now = DateTime.now(); - Class2ndActivity gen(String title) { - final time = now.copyWith(day: now.day + rand.nextInt(10) + 1); - return Class2ndActivity( - id: rand.nextInt(9999) + 1000, - title: "$title ${time.month}/${time.day}", - time: time, - ); - } - - return switch (cat) { - Class2ndActivityCat.lecture => [gen("小应生活开发者讲座")], - Class2ndActivityCat.thematicEdu => [gen("生活主题教育")], - Class2ndActivityCat.creation => [gen("三创展")], - Class2ndActivityCat.schoolCultureActivity => [gen("小应生活社区活动")], - Class2ndActivityCat.schoolCivilization => [gen("小应生活文明安全")], - Class2ndActivityCat.practice => [gen("小应生活线下实践")], - Class2ndActivityCat.voluntary => [gen("小应生活志愿活动")], - Class2ndActivityCat.onlineSafetyEdu => [gen("生活线上安全教育")], - Class2ndActivityCat.conference => [gen("小应生活开发者大会")], - Class2ndActivityCat.schoolCultureCompetition => [gen("小应生活竞赛")], - Class2ndActivityCat.paperAndPatent => [gen("小应生活论文报告")], - Class2ndActivityCat.unknown => [gen("小应生活活动")], - }; - } - - @override - Future> query(String queryString) async { - final rand = Random(); - final now = DateTime.now(); - return [ - Class2ndActivity( - id: rand.nextInt(9999) + 1000, - title: queryString, - time: now.copyWith(day: now.day + rand.nextInt(10) + 1), - ), - ]; - } - - @override - Future getActivityDetails(int activityId) async { - final now = DateTime.now(); - return Class2ndActivityDetails( - id: activityId, - title: "小应生活线下活动", - startTime: now.copyWith(day: now.day + 10), - signStartTime: now.copyWith(day: now.day + 10), - signEndTime: now.copyWith(day: now.day + 10, hour: now.hour + 2), - ); - } -} diff --git a/lib/school/class2nd/service/application.dart b/lib/school/class2nd/service/application.dart deleted file mode 100644 index 2baac32f9..000000000 --- a/lib/school/class2nd/service/application.dart +++ /dev/null @@ -1,76 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/class2nd.dart'; - -enum Class2ndApplicationCheckResponse { - successfulCheck, - incompleteApplicantInfo, - alreadyApplied, - applicationReachLimitToday, - activityReachParticipantLimit, - activityExpired, - applicantOccupiedWithinActivity, - applicantNotPermitted, - applicantNotIncluding, - ; - - String l10n() => "class2nd.applicationResponse.$name".tr(); - - const Class2ndApplicationCheckResponse(); - - static Class2ndApplicationCheckResponse parse(String code) { - const code2Response = { - "0": successfulCheck, - "1": incompleteApplicantInfo, - "2": alreadyApplied, - "3": applicationReachLimitToday, - "4": activityReachParticipantLimit, - "5": activityExpired, - "6": applicantOccupiedWithinActivity, - "7": applicantNotPermitted, - "8": applicantNotIncluding, - }; - return code2Response[code] ?? applicantNotPermitted; - } -} - -class Class2ndApplicationService { - Class2ndSession get _session => Init.class2ndSession; - - const Class2ndApplicationService(); - - Future check(int activityId) async { - final res = await _session.request( - 'http://sc.sit.edu.cn/public/pcenter/check.action?activityId=$activityId', - options: Options( - method: "GET", - ), - ); - final code = (res.data as String).trim(); - return Class2ndApplicationCheckResponse.parse(code); - } - - /// 提交最后的活动申请 - Future apply(int activityId) async { - final res = await _session.request( - 'http://sc.sit.edu.cn/public/pcenter/applyActivity.action?activityId=$activityId', - options: Options( - method: "GET", - ), - ); - final code = res.data as String; - return code.contains('申请成功'); - } - - Future withdraw(int applicationId) async { - final res = await _session.request( - 'http://sc.sit.edu.cn/public/pcenter/cancelOrder.action?orderNo=$applicationId', - options: Options( - method: "GET", - ), - ); - return true; - } -} diff --git a/lib/school/class2nd/service/application.demo.dart b/lib/school/class2nd/service/application.demo.dart deleted file mode 100644 index 09ff94181..000000000 --- a/lib/school/class2nd/service/application.demo.dart +++ /dev/null @@ -1,20 +0,0 @@ -import 'application.dart'; - -class DemoClass2ndApplicationService implements Class2ndApplicationService { - const DemoClass2ndApplicationService(); - - @override - Future check(int activityId) async { - return Class2ndApplicationCheckResponse.successfulCheck; - } - - @override - Future apply(int activityId) async { - return true; - } - - @override - Future withdraw(int applicationId) async { - return true; - } -} diff --git a/lib/school/class2nd/service/points.dart b/lib/school/class2nd/service/points.dart deleted file mode 100644 index 5103c927d..000000000 --- a/lib/school/class2nd/service/points.dart +++ /dev/null @@ -1,237 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:flutter/foundation.dart'; -import 'package:intl/intl.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/school/utils.dart'; -import 'package:sit/session/class2nd.dart'; - -import '../entity/activity.dart'; -import '../entity/application.dart'; -import '../entity/attended.dart'; - -class Class2ndPointsService { - static const homeUrl = 'http://sc.sit.edu.cn/public/init/index.action'; - static const scoreUrl = 'http://sc.sit.edu.cn/public/pcenter/scoreDetail.action'; - static const myEventUrl = 'http://sc.sit.edu.cn/public/pcenter/activityOrderList.action?pageSize=999'; - - Class2ndSession get _session => Init.class2ndSession; - - const Class2ndPointsService(); - - /// 获取第二课堂分数 - Future fetchScoreSummary() async { - final response = await _session.request( - homeUrl, - options: Options( - method: "POST", - ), - ); - final data = response.data; - return _parseScoreSummary(data); - } - - static Class2ndPointsSummary _parseScoreSummary(String htmlPage) { - final html = BeautifulSoup(htmlPage); - - final (:thematicReport, :practice, :creation, :schoolCulture, :schoolSafetyCivilization, :voluntary) = - _parseAllStatus(html); - - final honestyPoints = _parseHonestyPoints(html); - final total = _parseTotalPoints(html); - return Class2ndPointsSummary( - thematicReport: thematicReport, - practice: practice, - creation: creation, - schoolSafetyCivilization: schoolSafetyCivilization, - voluntary: voluntary, - schoolCulture: schoolCulture, - honestyPoints: honestyPoints, - totalPoints: total, - ); - } - - static ({ - double thematicReport, - double practice, - double creation, - double schoolSafetyCivilization, - double voluntary, - double schoolCulture, - }) _parseAllStatus(BeautifulSoup html) { - // 学分=1.5(主题报告)+2.0(社会实践)+1.5(创新创业创意)+1.0(校园安全文明)+0.0(公益志愿)+2.0(校园文化) - final found = html.find('#span_score'); - if (found == null) { - debugPrint(found.toString()); - } - final String scoreText = found!.text; - final regExp = RegExp(r'([\d.]+)\(([\u4e00-\u9fa5]+)\)'); - - late final double lecture, practice, creation, safetyEdu, voluntary, campus; - - final matches = regExp.allMatches(scoreText); - for (final item in matches) { - final score = double.parse(item.group(1) ?? '0.0'); - final typeName = item.group(2)!; - final type = Class2ndPointType.parse(typeName); - - switch (type) { - case Class2ndPointType.thematicReport: - lecture = score; - break; - case Class2ndPointType.creation: - creation = score; - break; - case Class2ndPointType.schoolCulture: - campus = score; - break; - case Class2ndPointType.practice: - practice = score; - break; - case Class2ndPointType.voluntary: - voluntary = score; - break; - case Class2ndPointType.schoolSafetyCivilization: - safetyEdu = score; - break; - case null: - break; - } - } - return ( - thematicReport: lecture, - practice: practice, - creation: creation, - schoolSafetyCivilization: safetyEdu, - voluntary: voluntary, - schoolCulture: campus, - ); - } - - static final honestyPointsRe = RegExp(r'诚信积分:(\S+)'); - - static double _parseHonestyPoints(BeautifulSoup html) { - final element = html.find("div", attrs: {"onmouseover": "showSynopsis()"}); - var honestyPoints = 0.0; - if (element != null) { - final pointsRaw = honestyPointsRe.firstMatch(element.text)?.group(1); - if (pointsRaw != null) { - final points = double.tryParse(pointsRaw); - if (points != null) { - honestyPoints = points; - } - } - } - return honestyPoints; - } - - static const totalPoints = '#content-box > div.user-info > div:nth-child(3) > font'; - - static double _parseTotalPoints(BeautifulSoup html) { - final pointsRaw = html.find(totalPoints); - if (pointsRaw != null) { - final total = double.tryParse(pointsRaw.text); - if (total != null) { - return total; - } - } - return 0.0; - } - - /// 获取我的得分列表 - Future> fetchScoreItemList() async { - final response = await _session.request( - scoreUrl, - options: Options( - method: "POST", - ), - ); - return _parseScoreList(response.data); - } - - static final scoreItemTimeFormat = DateFormat('yyyy-MM-dd hh:mm'); - - static List _parseScoreList(String htmlPage) { - Class2ndPointItem nodeToScoreItem(Bs4Element item) { - final title = item.find('td:nth-child(3)')!.text.trim(); - final timeRaw = item.find('td:nth-child(9) > a'); - final time = timeRaw == null ? null : scoreItemTimeFormat.parse(timeRaw.text.trim()); - final idRaw = item.find('td:nth-child(7)'); - final id = int.parse(idRaw!.innerHtml.trim()); - // 注意:“我的成绩” 页面中,成绩条目显示的是活动类型,而非加分类型, 因此使用 ActivityType. - final categoryRaw = item.find('td:nth-child(5)')!.innerHtml.trim(); - final category = Class2ndActivityCat.parse(categoryRaw); - assert(category != null, "Unknown class2nd category $categoryRaw"); - final points = double.parse(item.find('td:nth-child(11) > span')!.innerHtml.trim()); - final honestyPointsRaw = item.find('td:nth-child(13) > span')!.innerHtml.trim(); - final honestyPoints = honestyPointsRaw.startsWith("+-") - ? double.parse(honestyPointsRaw.substring(1)) - : double.parse(honestyPointsRaw); - - return Class2ndPointItem( - name: mapChinesePunctuations(title), - activityId: id, - category: category ?? Class2ndActivityCat.unknown, - time: time, - points: points, - honestyPoints: honestyPoints, - ); - } - - return BeautifulSoup(htmlPage) - .findAll('#div1 > div.table_style_4 > form > table:nth-child(7) > tbody > tr') - .map(nodeToScoreItem) - .toList(); - } - - /// 获取我的活动列表 - Future> fetchActivityApplicationList() async { - final response = await _session.request( - myEventUrl, - options: Options( - method: "POST", - ), - ); - return _parseActivityApplicationList(response.data); - } - - static List _parseActivityApplicationList(String htmlPage) { - final html = BeautifulSoup(htmlPage); - return html - .findAll('#content-box > div:nth-child(23) > div.table_style_4 > form > table > tbody > tr') - .map((e) => _activityMapDetail(e)) - .where(filterDeletedActivity) - .toList(); - } - - static bool filterDeletedActivity(Class2ndActivityApplication x) => x.activityId != 0; - - static final attendedTimeFormat = DateFormat('yyyy-MM-dd hh:mm:ss'); - static final activityIdRe = RegExp(r'activityId=(\d+)'); - - static Class2ndActivityApplication _activityMapDetail(Bs4Element item) { - final applyIdText = item.find('td:nth-child(1)')!.text.trim(); - final applicationId = int.parse(applyIdText); - final activityIdText = item.find('td:nth-child(3)')!.innerHtml.trim(); - // 部分取消了的活动,活动链接不存在,这里将活动 id 记为 -1. - final activityId = int.parse(activityIdRe.firstMatch(activityIdText)?.group(1) ?? '-1'); - final title = item.find('td:nth-child(3)')!.text.trim(); - final categoryRaw = item.find('td:nth-child(5)')!.text.trim(); - final category = Class2ndActivityCat.parse(categoryRaw); - assert(category != null, "Unknown class2nd category $categoryRaw"); - final timeRaw = item.find('td:nth-child(7)')!.text.trim(); - final time = attendedTimeFormat.parse(timeRaw); - final statusRaw = item.find('td:nth-child(9)')!.text.trim(); - final status = Class2ndActivityApplicationStatus.parse(statusRaw); - assert(status != Class2ndActivityApplicationStatus.unknown); - return Class2ndActivityApplication( - applicationId: applicationId, - activityId: activityId, - title: mapChinesePunctuations(title), - category: category ?? Class2ndActivityCat.unknown, - time: time, - status: status ?? Class2ndActivityApplicationStatus.unknown, - ); - } -} diff --git a/lib/school/class2nd/service/points.demo.dart b/lib/school/class2nd/service/points.demo.dart deleted file mode 100644 index e08ee9a56..000000000 --- a/lib/school/class2nd/service/points.demo.dart +++ /dev/null @@ -1,63 +0,0 @@ -import 'package:flutter/cupertino.dart'; - -import '../entity/activity.dart'; -import '../entity/application.dart'; -import '../entity/attended.dart'; -import 'points.dart'; - -class DemoClass2ndPointsService implements Class2ndPointsService { - const DemoClass2ndPointsService(); - - @override - Future fetchScoreSummary() async { - debugPrint("fetchScoreSummary"); - return const Class2ndPointsSummary( - thematicReport: 1.5, - practice: 2.0, - creation: 1.5, - schoolSafetyCivilization: 1.0, - voluntary: 1.0, - schoolCulture: 1.0, - honestyPoints: 10.0, - totalPoints: 8.0, - ); - } - - @override - Future> fetchScoreItemList() async { - debugPrint("fetchScoreItemList"); - return [ - Class2ndPointItem( - name: "小应生活茶话会", - activityId: 1919810, - category: Class2ndActivityCat.creation, - time: DateTime(2020, 12, 18), - points: 2.0, - honestyPoints: 0.2, - ), - ]; - } - - @override - Future> fetchActivityApplicationList() async { - debugPrint("fetchActivityApplicationList"); - return [ - Class2ndActivityApplication( - applicationId: 10001, - activityId: 114514, - title: "小应生活茶话会", - time: DateTime(2020, 12, 18), - status: Class2ndActivityApplicationStatus.reviewing, - category: Class2ndActivityCat.creation, - ), - Class2ndActivityApplication( - applicationId: 10002, - activityId: 1919810, - title: "小应生活开发者大会", - time: DateTime(2020, 12, 18), - status: Class2ndActivityApplicationStatus.approved, - category: Class2ndActivityCat.creation, - ), - ]; - } -} diff --git a/lib/school/class2nd/storage/activity.dart b/lib/school/class2nd/storage/activity.dart deleted file mode 100644 index 794b041a3..000000000 --- a/lib/school/class2nd/storage/activity.dart +++ /dev/null @@ -1,59 +0,0 @@ -import 'package:hive/hive.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/details.dart'; -import '../entity/activity.dart'; - -class _K { - static String activity(int id) => '/activities/$id'; - - static String activityDetails(int id) => '/activityDetails/$id'; - - static String activityIdList(Class2ndActivityCat type) => '/activityIdList/$type'; -} - -class Class2ndActivityStorage { - Box get box => HiveInit.class2nd; - - const Class2ndActivityStorage(); - - List? getActivityIdList(Class2ndActivityCat type) => box.safeGet>(_K.activityIdList(type)); - - Future setActivityIdList(Class2ndActivityCat type, List? activityIdList) => - box.safePut>(_K.activityIdList(type), activityIdList); - - Class2ndActivity? getActivity(int id) => box.safeGet(_K.activity(id)); - - Future setActivity(int id, Class2ndActivity? activity) => - box.safePut(_K.activity(id), activity); - - Class2ndActivityDetails? getActivityDetails(int id) => box.safeGet(_K.activityDetails(id)); - - Future setActivityDetails(int id, Class2ndActivityDetails? details) => - box.safePut(_K.activityDetails(id), details); - - List? getActivities(Class2ndActivityCat type) { - final idList = getActivityIdList(type); - if (idList == null) return null; - final res = []; - for (final id in idList) { - final activity = getActivity(id); - if (activity != null) { - res.add(activity); - } - } - return res; - } - - Future? setActivities(Class2ndActivityCat type, List? activities) async { - if (activities == null) { - await setActivities(type, null); - } else { - await setActivityIdList(type, activities.map((e) => e.id).toList(growable: false)); - for (final activity in activities) { - await setActivity(activity.id, activity); - } - } - } -} diff --git a/lib/school/class2nd/storage/points.dart b/lib/school/class2nd/storage/points.dart deleted file mode 100644 index 1d6be8265..000000000 --- a/lib/school/class2nd/storage/points.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/application.dart'; -import '../entity/attended.dart'; - -class _K { - static const pointsSummary = "/pointsSummary"; - static const pointItemList = "/pointItemList"; - static const applicationList = "/applicationList"; -} - -class Class2ndPointsStorage { - Box get box => HiveInit.class2nd; - - Class2ndPointsStorage(); - - Class2ndPointsSummary? get pointsSummary => box.safeGet(_K.pointsSummary); - - set pointsSummary(Class2ndPointsSummary? newValue) => box.safePut(_K.pointsSummary, newValue); - - ValueListenable listenPointsSummary() => box.listenable(keys: [_K.pointsSummary]); - - late final $pointsSummary = box.provider(_K.pointsSummary); - - List? get pointItemList => box.safeGet(_K.pointItemList)?.cast(); - - set pointItemList(List? newValue) => box.safePut(_K.pointItemList, newValue); - - List? get applicationList => - box.safeGet(_K.applicationList)?.cast(); - - set applicationList(List? newValue) => box.safePut(_K.applicationList, newValue); -} diff --git a/lib/school/class2nd/utils.dart b/lib/school/class2nd/utils.dart deleted file mode 100644 index 9d893eb04..000000000 --- a/lib/school/class2nd/utils.dart +++ /dev/null @@ -1,85 +0,0 @@ -import 'package:sit/school/class2nd/entity/activity.dart'; - -import 'entity/application.dart'; -import 'entity/attended.dart'; - -final _tagParenthesesRegx = RegExp(r"\[(.*?)\]"); - -({String title, List tags}) separateTagsFromTitle(String full) { - if (full.isEmpty) return (title: "", tags: []); - final allMatched = _tagParenthesesRegx.allMatches(full); - final resultTags = []; - for (final matched in allMatched) { - final tag = matched.group(1); - if (tag != null) { - final tags = tag.split("&"); - for (final tag in tags) { - resultTags.add(tag.trim()); - } - } - } - final title = full.replaceAll(_tagParenthesesRegx, ""); - return (title: title, tags: resultTags.toSet().toList()); -} - -const commonClass2ndCategories = [ - Class2ndActivityCat.lecture, - Class2ndActivityCat.creation, - Class2ndActivityCat.thematicEdu, - Class2ndActivityCat.practice, - Class2ndActivityCat.voluntary, - Class2ndActivityCat.schoolCultureActivity, - Class2ndActivityCat.schoolCultureCompetition, -]; - -List buildAttendedActivityList({ - required List applications, - required List scores, -}) { - final attended = applications.map((application) { - final relatedScoreItems = scores.where((e) => e.activityId == application.activityId).toList(); - return Class2ndAttendedActivity( - application: application, - scores: relatedScoreItems, - ); - }).toList(); - return attended; -} - -const _targetScores2019 = Class2ndPointsSummary( - thematicReport: 1.5, - practice: 2, - creation: 1.5, - schoolSafetyCivilization: 1, - voluntary: 1, - schoolCulture: 1, -); -const _admissionYear2targetScores = { - 2013: Class2ndPointsSummary(thematicReport: 1, schoolCulture: 1), - 2014: Class2ndPointsSummary(thematicReport: 1, practice: 1, schoolCulture: 1), - 2015: Class2ndPointsSummary(thematicReport: 1, practice: 1, creation: 1, schoolCulture: 1), - 2016: Class2ndPointsSummary(thematicReport: 1, practice: 1, creation: 1, schoolCulture: 1), - 2017: Class2ndPointsSummary( - thematicReport: 1.5, - practice: 2, - creation: 1.5, - schoolSafetyCivilization: 1, - schoolCulture: 2, - ), - 2018: Class2ndPointsSummary( - thematicReport: 1.5, - practice: 2, - creation: 1.5, - schoolSafetyCivilization: 1, - schoolCulture: 2, - ), - 2019: _targetScores2019, - 2020: _targetScores2019, - 2021: _targetScores2019, - 2022: _targetScores2019, - 2023: _targetScores2019, -}; - -Class2ndPointsSummary getTargetScoreOf({required int? admissionYear}) { - return _admissionYear2targetScores[admissionYear] ?? _targetScores2019; -} diff --git a/lib/school/class2nd/widgets/activity.dart b/lib/school/class2nd/widgets/activity.dart deleted file mode 100644 index 06ec79a85..000000000 --- a/lib/school/class2nd/widgets/activity.dart +++ /dev/null @@ -1,35 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/design/widgets/tags.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/activity.dart'; -import '../utils.dart'; - -class ActivityCard extends StatelessWidget { - final Class2ndActivity activity; - final VoidCallback? onTap; - - const ActivityCard( - this.activity, { - super.key, - this.onTap, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - final (:title, :tags) = separateTagsFromTitle(activity.title); - return Card.filled( - clipBehavior: Clip.hardEdge, - child: ListTile( - isThreeLine: true, - title: title.text(), - titleTextStyle: textTheme.titleMedium, - trailing: context.formatYmdNum(activity.time).text(style: textTheme.bodyMedium), - subtitle: TagsGroup(tags), - onTap: onTap, - ), - ); - } -} diff --git a/lib/school/class2nd/widgets/search.dart b/lib/school/class2nd/widgets/search.dart deleted file mode 100644 index dc8ffe4f0..000000000 --- a/lib/school/class2nd/widgets/search.dart +++ /dev/null @@ -1,104 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; - -import '../entity/activity.dart'; -import '../init.dart'; -import '../i18n.dart'; -import '../page/details.dart'; -import 'activity.dart'; - -class ActivitySearchDelegate extends SearchDelegate { - @override - List? buildActions(BuildContext context) { - return [ - PlatformIconButton( - onPressed: () => query = '', - icon: Icon(context.icons.clear), - ), - ]; - } - - @override - Widget? buildLeading(BuildContext context) { - return null; - } - - @override - Widget buildResults(BuildContext context) { - return _ActivityAsyncSearchList( - query: query, - ); - } - - @override - Widget buildSuggestions(BuildContext context) { - return Container(); - } -} - -class _ActivityAsyncSearchList extends StatefulWidget { - final String query; - - const _ActivityAsyncSearchList({ - super.key, - required this.query, - }); - - @override - State<_ActivityAsyncSearchList> createState() => _ActivityAsyncSearchListState(); -} - -class _ActivityAsyncSearchListState extends State<_ActivityAsyncSearchList> { - List? activityList; - - @override - void initState() { - super.initState(); - load(); - } - - Future load() async { - final result = await Class2ndInit.activityService.query(widget.query); - setState(() { - activityList = result; - }); - } - - @override - Widget build(BuildContext context) { - final activityList = this.activityList; - return CustomScrollView( - slivers: [ - if (activityList != null) - if (activityList.isNotEmpty) - SliverList.builder( - itemCount: activityList.length, - itemBuilder: (ctx, i) { - final activity = activityList[i]; - return ActivityCard( - activity, - onTap: () async { - await context.showSheet((ctx) => Class2ndActivityDetailsPage( - activityId: activity.id, - title: activity.title, - time: activity.time, - enableApply: true, - )); - }, - ); - }, - ) - else - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noActivities, - ), - ), - ], - ); - } -} diff --git a/lib/school/class2nd/widgets/summary.dart b/lib/school/class2nd/widgets/summary.dart deleted file mode 100644 index df4f68b54..000000000 --- a/lib/school/class2nd/widgets/summary.dart +++ /dev/null @@ -1,128 +0,0 @@ -import 'package:fl_chart/fl_chart.dart'; -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/attended.dart'; - -class Class2ndScoreSummeryCard extends StatelessWidget { - final Class2ndPointsSummary targetScore; - final Class2ndPointsSummary summary; - final double aspectRatio; - - const Class2ndScoreSummeryCard({ - super.key, - required this.targetScore, - required this.summary, - this.aspectRatio = 16 / 9, - }); - - @override - Widget build(BuildContext context) { - return AspectRatio( - aspectRatio: aspectRatio, - child: Card( - child: Class2ndScoreSummaryChart(targetScore: targetScore, summary: summary).padSymmetric(v: 4), - ), - ); - } -} - -class Class2ndScoreSummaryChart extends StatelessWidget { - final Class2ndPointsSummary targetScore; - final Class2ndPointsSummary summary; - - const Class2ndScoreSummaryChart({ - super.key, - required this.targetScore, - required this.summary, - }); - - @override - Widget build(BuildContext context) { - final scores = summary.toName2score(); - final targetScores = targetScore.toName2score(); - final barColor = context.colorScheme.primary; - final completeStyle = TextStyle(color: context.colorScheme.primary); - List values = []; - for (var i = 0; i < scores.length; i++) { - // Skip empty targets to prevent zero-division error. - if (targetScores[i].score == 0) continue; - final pct = scores[i].score / targetScores[i].score; - values.add(BarChartGroupData(x: i, barRods: [ - BarChartRodData( - toY: pct, - width: 12, - color: barColor, - ), - ])); - } - return BarChart( - BarChartData( - maxY: 1, - barGroups: values, - borderData: FlBorderData(show: false), - gridData: const FlGridData(show: false), - barTouchData: BarTouchData(enabled: false), - titlesData: FlTitlesData( - show: true, - leftTitles: const AxisTitles(), - topTitles: AxisTitles( - sideTitles: SideTitles( - showTitles: true, - getTitlesWidget: (double indexDouble, TitleMeta meta) { - final i = indexDouble.toInt(); - final isComplete = scores[i].score / targetScores[i].score >= 1; - return targetScores[i].score.toString().text(style: isComplete ? completeStyle : null); - }, - ), - ), - rightTitles: const AxisTitles(), - bottomTitles: AxisTitles( - sideTitles: SideTitles( - showTitles: true, - reservedSize: 44, - getTitlesWidget: (double indexDouble, TitleMeta meta) { - final i = indexDouble.toInt(); - final isComplete = scores[i].score / targetScores[i].score >= 1; - return Tooltip( - triggerMode: TooltipTriggerMode.tap, - message: scores[i].type.l10nFullName(), - child: [ - scores[i].type.l10nShortName().text(style: isComplete ? completeStyle : null), - scores[i].score.toString().text(style: isComplete ? completeStyle : null), - ].column(), - ); - }, - ), - ), - ), - ), - ); - } -} - -// syncfusion_flutter_charts: ^22.2.12 -// SfCartesianChart( -// primaryXAxis: CategoryAxis( -// majorGridLines: const MajorGridLines(width: 0), -// axisLine: const AxisLine(width: 0), -// ), -// primaryYAxis: NumericAxis( -// minimum: 0, -// maximum: 1, -// numberFormat: NumberFormat.percentPattern(), -// majorGridLines: const MajorGridLines(width: 0), -// axisLine: const AxisLine(width: 0), -// ), -// series: >[ -// BarSeries<({String name, double score}), String>( -// borderRadius: BorderRadius.circular(4), -// dataSource: scoreValues, -// xValueMapper: (data, _) => data.name, -// dataLabelMapper: (data, i) => "${data.score}/${targetScores[i].score}".toString(), -// yValueMapper: (data, i) => data.score / targetScores[i].score, -// color: context.colorScheme.primary, -// dataLabelSettings: const DataLabelSettings(isVisible: true), -// ) -// ], -// ); diff --git a/lib/school/entity/icon.dart b/lib/school/entity/icon.dart deleted file mode 100644 index 0dd354944..000000000 --- a/lib/school/entity/icon.dart +++ /dev/null @@ -1,104 +0,0 @@ -class CourseIcons { - static const Map> _courseToCategory = { - 'art': [ - '手绘', - '速写', - '插图', - '图文', - '创作', - '摄影', - '构图', - '美术', - '水彩', - '油画', - '素描', - '艺术', - '雕塑', - '装饰', - '写生', - '技法', - '视觉', - '漆艺', - 'UI', - '广告', - '美学' - ], - 'biological': ['生物', '环境', '花卉', '药物', '微生物', '材料'], - 'history': ['文化', '历史', '设计史', '书画', '文明史'], - 'building': ['建筑', '轨道', '铁道', '桥梁', '结构力学', '房屋', '建材', '工程', '混凝土', '建设'], - 'chemical': ['化学', '传热学', '仪器', '药剂', '腐蚀', '制药', '化妆品', '酒', '香精', '聚合物', '水质', '药理'], - 'engineering': ['测量', '力学', '光谱', '检测', '有限单元'], - 'practice': ['实习', '实训', '营销', '就业', '实践', '职业'], - 'circuit': ['电工', '电磁', '电子', '信号', '数码', '数字', '嵌入式', 'EDA', '单片机'], - 'computer': [ - 'Python', - '计算机', - '程序设计', - '软件', - 'web', - '开发', - '建模', - '非线性编辑', - '微机', - '图形', - '操作系统', - '数据结构', - 'C语言', - '编译', - '人工智能' - ], - 'control': ['控制', '半导体', '泵', '电源', '系统', '故障诊断', '接触网', '维修', '液压', '气压', '汽轮机'], - 'experiment': ['特效', '会展', '实验', '活性剂', '光学'], - 'electricity': ['化工', '给水', '燃烧', '管网', '热工', '玻璃', '固废', '发电厂'], - 'music': ['音频', '音乐', '产品设计'], - 'social': ['园林'], - 'geography': ['生态', '一带一路', '大气污染', '地理'], - 'economic': ['估价', '贸易', '会计', '经济', '货币'], - 'physical': ['土壤', '国际', '物理'], - 'design': ['规划', '园艺', '线造型', '制图', '设计', 'Design', 'CAD'], - 'mechanical': ['工艺', '设备', '装备', '机械', '机电', '金属', '钢'], - 'sports': ['篮球'], - 'internship': ['香原料', '美容', '品评', '社区', '心理', '采编', '招聘', '妇女'], - 'political': ['珠宝'], - 'running': ['体育'], - 'language': ['英语', '德语', '语言', '法语', '日语', '英文', '英汉', '专业外语'], - 'ideological': ['思想道德', '毛泽东', '法治', '近现代史', '马克思', '政策', '政治'], - 'reading': ['植物', '信息论'], - 'management': ['食品', '管理', '项目', '关系', '安全', '行为', '社会'], - 'training': ['通信', '网络', '物联网', '文献检索'], - 'business': ['多媒体', '动画', '审计', '企业'], - 'statistical': ['数据分析', '数据挖掘', '数据库', '大数据', '市场', '调研', '证券', '统计'], - 'mathematics': ['计算', '复变函数', '概率论', '积分', '数学', '代数'], - 'technology': ['空调', '技术', '科学', '科技'], - 'generality': ['书籍'], - 'literature': ['文学', '编辑', '新闻', '报刊'], - 'curriculum': ['论文'], - }; - - static const _fallbackCat = "principle"; - - static String query(String curriculum, {String fallback = _fallbackCat}) { - for (var title in _courseToCategory.keys) { - for (var item in _courseToCategory[title]!) { - if (curriculum.contains(item)) { - return title; - } - } - } - return fallback; - } - - static const String _courseIconDir = 'assets/course'; - - static String iconPathOf({String? courseName, String? iconName}) { - final String icon; - if (iconName != null && _courseToCategory.containsKey(iconName)) { - icon = iconName; - } else if (courseName != null) { - icon = query(courseName); - } else { - icon = _fallbackCat; - } - return "$_courseIconDir/$icon.png"; - } -} diff --git a/lib/school/entity/school.dart b/lib/school/entity/school.dart deleted file mode 100644 index a542c3111..000000000 --- a/lib/school/entity/school.dart +++ /dev/null @@ -1,152 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'school.g.dart'; - -typedef SchoolYear = int; - -@HiveType(typeId: CacheHiveType.semester) -@JsonEnum() -enum Semester implements Comparable { - @HiveField(0) - all, - @HiveField(1) - term1, - @HiveField(2) - term2; - - String l10n() => "school.semester.$name".tr(); - - @override - int compareTo(Semester other) { - if (this == other) return 0; - if (this == term1) return -1; - return 1; - } -} - -@HiveType(typeId: CacheHiveType.semesterInfo) -class SemesterInfo implements Comparable { - /// null means all school year - @HiveField(0) - final SchoolYear? year; - @HiveField(1) - final Semester semester; - - const SemesterInfo({ - required this.year, - required this.semester, - }); - - static const all = SemesterInfo(year: null, semester: Semester.all); - - bool get exactlyOne => year != null && semester != Semester.all; - - SchoolYear get exactYear { - assert(exactlyOne); - return year ?? DateTime.now().year; - } - - @override - String toString() { - return "$year:$semester"; - } - - static String allYearL10n() => "school.allYear".tr(); - - String l10n() { - final year = this.year; - if (year == null) { - return "${allYearL10n()} ${semester.l10n()}"; - } else { - return "$year–${year + 1} ${semester.l10n()}"; - } - } - - @override - bool operator ==(Object other) { - return other is SemesterInfo && - runtimeType == other.runtimeType && - year == other.year && - semester == other.semester; - } - - @override - int get hashCode => Object.hash(year, semester); - - @override - int compareTo(SemesterInfo other) { - final yearA = year; - final yearB = other.year; - if (yearA != yearB) { - if (yearA == null) return 1; - if (yearB == null) return -1; - return yearA.compareTo(yearB); - } - if (semester != other.semester) { - if (semester == Semester.all) return 1; - if (other.semester == Semester.all) return -1; - return semester.compareTo(other.semester); - } - return 0; - } -} - -String semesterToFormField(Semester semester) { - const mapping = { - Semester.all: '', - Semester.term1: '3', - Semester.term2: '12', - }; - return mapping[semester]!; -} - -@HiveType(typeId: CacheHiveType.courseCat) -enum CourseCat { - @HiveField(0) - none, - - /// 通识课 - @HiveField(1) - genEd, - - /// 公共基础课 - @HiveField(2) - publicCore, - - /// 学科专业基础课 - @HiveField(3) - specializedCore, - - /// 专业必修课 - @HiveField(4) - specializedCompulsory, - - /// 专业选修课 - @HiveField(5) - specializedElective, - - /// 综合实践 - @HiveField(6) - integratedPractice, - - /// 实践教学 - @HiveField(7) - practicalInstruction; - - String l10n() => "school.courseCat.$name".tr(); - - static CourseCat parse(String? str) { - return switch (str) { - "通识课" => genEd, - "公共基础课" => publicCore, - "学科专业基础课" => specializedCore, - "专业必修课" => specializedCompulsory, - "专业选修课" => specializedElective, - "综合实践" => integratedPractice, - "实践教学" => practicalInstruction, - _ => none, - }; - } -} diff --git a/lib/school/entity/school.g.dart b/lib/school/entity/school.g.dart deleted file mode 100644 index f2c950f3c..000000000 --- a/lib/school/entity/school.g.dart +++ /dev/null @@ -1,149 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'school.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class SemesterInfoAdapter extends TypeAdapter { - @override - final int typeId = 1; - - @override - SemesterInfo read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return SemesterInfo( - year: fields[0] as int?, - semester: fields[1] as Semester, - ); - } - - @override - void write(BinaryWriter writer, SemesterInfo obj) { - writer - ..writeByte(2) - ..writeByte(0) - ..write(obj.year) - ..writeByte(1) - ..write(obj.semester); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is SemesterInfoAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class SemesterAdapter extends TypeAdapter { - @override - final int typeId = 0; - - @override - Semester read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return Semester.all; - case 1: - return Semester.term1; - case 2: - return Semester.term2; - default: - return Semester.all; - } - } - - @override - void write(BinaryWriter writer, Semester obj) { - switch (obj) { - case Semester.all: - writer.writeByte(0); - break; - case Semester.term1: - writer.writeByte(1); - break; - case Semester.term2: - writer.writeByte(2); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is SemesterAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class CourseCatAdapter extends TypeAdapter { - @override - final int typeId = 2; - - @override - CourseCat read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return CourseCat.none; - case 1: - return CourseCat.genEd; - case 2: - return CourseCat.publicCore; - case 3: - return CourseCat.specializedCore; - case 4: - return CourseCat.specializedCompulsory; - case 5: - return CourseCat.specializedElective; - case 6: - return CourseCat.integratedPractice; - case 7: - return CourseCat.practicalInstruction; - default: - return CourseCat.none; - } - } - - @override - void write(BinaryWriter writer, CourseCat obj) { - switch (obj) { - case CourseCat.none: - writer.writeByte(0); - break; - case CourseCat.genEd: - writer.writeByte(1); - break; - case CourseCat.publicCore: - writer.writeByte(2); - break; - case CourseCat.specializedCore: - writer.writeByte(3); - break; - case CourseCat.specializedCompulsory: - writer.writeByte(4); - break; - case CourseCat.specializedElective: - writer.writeByte(5); - break; - case CourseCat.integratedPractice: - writer.writeByte(6); - break; - case CourseCat.practicalInstruction: - writer.writeByte(7); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is CourseCatAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/entity/timetable.dart b/lib/school/entity/timetable.dart deleted file mode 100644 index d57679ffe..000000000 --- a/lib/school/entity/timetable.dart +++ /dev/null @@ -1,129 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/entity/campus.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/l10n/extension.dart'; - -class TimePoint { - final int hour; - final int minute; - - const TimePoint(this.hour, this.minute); - - const TimePoint.fromMinutes(int minutes) - : hour = minutes ~/ 60, - minute = minutes % 60; - - @override - String toString() => '$hour:${'$minute'.padLeft(2, '0')}'; - - String toStringPrefixed0({bool hour = true, bool minute = true}) { - final sb = StringBuffer(); - if (hour) { - sb.write(this.hour.toString().padLeft(2, '0')); - } else { - sb.write(this.hour.toString()); - } - sb.write(':'); - if (minute) { - sb.write(this.minute.toString().padLeft(2, '0')); - } else { - sb.write(this.minute.toString()); - } - return sb.toString(); - } - - String l10n(BuildContext context) => context.formatHmNum(DateTime(0, 1, 1, hour, minute)); - - TimeDuration difference(TimePoint b) => TimeDuration.fromMinutes(totalMinutes - b.totalMinutes); - - TimePoint operator -(TimeDuration b) => TimePoint.fromMinutes(totalMinutes - b.totalMinutes); - - TimePoint operator +(TimeDuration b) => TimePoint.fromMinutes(totalMinutes + b.totalMinutes); - - int get totalMinutes => hour * 60 + minute; -} - -extension DateTimeTimePointX on DateTime { - DateTime addTimePoint(TimePoint t) { - return add(Duration(hours: t.hour, minutes: t.minute)); - } -} - -class TimeDuration { - final int hour; - final int minute; - static const _i18n = TimeI18n(); - - int get totalMinutes => hour * 60 + minute; - - const TimeDuration(this.hour, this.minute); - - const TimeDuration.fromMinutes(int minutes) - : hour = minutes ~/ 60, - minute = minutes % 60; - - String localized() { - final h = "$hour"; - final min = "$minute".padLeft(2, '0'); - if (hour == 0) { - return _i18n.minuteFormat(min); - } else if (minute == 0) { - return _i18n.hourFormat(h); - } - return _i18n.hourMinuteFormat(h, min); - } - - Duration toDuration() => Duration(hours: hour, minutes: minute); -} - -typedef ClassTime = ({TimePoint begin, TimePoint end}); - -extension ClassTimeX on ClassTime { - TimeDuration get duration { - return end.difference(begin); - } -} - -const fengxianTimetable = [ - // morning - (begin: TimePoint(8, 20), end: TimePoint(9, 05)), - (begin: TimePoint(9, 10), end: TimePoint(9, 55)), - (begin: TimePoint(10, 15), end: TimePoint(11, 00)), - (begin: TimePoint(11, 05), end: TimePoint(11, 50)), - // afternoon - (begin: TimePoint(13, 00), end: TimePoint(13, 45)), - (begin: TimePoint(13, 50), end: TimePoint(14, 35)), - (begin: TimePoint(14, 55), end: TimePoint(15, 40)), - (begin: TimePoint(15, 45), end: TimePoint(16, 30)), - // night - (begin: TimePoint(18, 00), end: TimePoint(18, 45)), - (begin: TimePoint(18, 50), end: TimePoint(19, 35)), - (begin: TimePoint(19, 40), end: TimePoint(20, 25)), -]; - -const xuhuiCampusTimetable = [ - // morning - (begin: TimePoint(8, 00), end: TimePoint(8, 45)), - (begin: TimePoint(8, 50), end: TimePoint(9, 35)), - (begin: TimePoint(9, 55), end: TimePoint(10, 40)), - (begin: TimePoint(10, 45), end: TimePoint(11, 30)), - // afternoon - (begin: TimePoint(13, 00), end: TimePoint(13, 45)), - (begin: TimePoint(13, 50), end: TimePoint(14, 35)), - (begin: TimePoint(14, 55), end: TimePoint(15, 40)), - (begin: TimePoint(15, 45), end: TimePoint(16, 30)), - // night - (begin: TimePoint(18, 00), end: TimePoint(18, 45)), - (begin: TimePoint(18, 50), end: TimePoint(19, 35)), - (begin: TimePoint(19, 40), end: TimePoint(20, 25)), -]; - -List getTeachingBuildingTimetable(Campus campus, String place) { - if (campus == Campus.xuhui) { - return xuhuiCampusTimetable; - } - if (campus == Campus.fengxian) { - return fengxianTimetable; - } - return fengxianTimetable; -} diff --git a/lib/school/event.dart b/lib/school/event.dart deleted file mode 100644 index 89baad9fe..000000000 --- a/lib/school/event.dart +++ /dev/null @@ -1,3 +0,0 @@ -import 'package:sit/utils/async_event.dart'; - -final schoolEventBus = AsyncEventEmitter(); diff --git a/lib/school/exam_arrange/entity/exam.dart b/lib/school/exam_arrange/entity/exam.dart deleted file mode 100644 index 537e96d53..000000000 --- a/lib/school/exam_arrange/entity/exam.dart +++ /dev/null @@ -1,149 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:intl/intl.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/school/utils.dart'; - -part 'exam.g.dart'; - -String _parseCourseName(dynamic courseName) { - return mapChinesePunctuations(courseName.toString()); -} - -String _parsePlace(dynamic place) { - return mapChinesePunctuations(place.toString()); -} - -int? _parseSeatNumber(String s) => int.tryParse(s); -final _timeFormat = DateFormat('yyyy-MM-dd hh:mm'); - -ExamTime? _parseTime(String s) { - try { - final date = s.split('(')[0]; - final time = s.split('(')[1].replaceAll(')', ''); - final startRaw = '$date ${time.split('-')[0]}'; - final endRaw = '$date ${time.split('-')[1]}'; - - final startTime = _timeFormat.parse(startRaw); - final endTime = _timeFormat.parse(endRaw); - - return (start: startTime, end: endTime); - } catch (_) { - return null; - } -} - -bool? _parseRetake(dynamic status) { - if (status == null) return null; - return switch (status.toString()) { - "是" => true, - "否" => false, - _ => null, - }; -} - -typedef ExamTime = ({DateTime start, DateTime end}); - -@JsonSerializable() -class ExamEntry { - /// 课程名称 - @JsonKey() - final String courseName; - - /// 考试时间. 若无数据, 列表未空. - @JsonKey() - final ExamTime? time; - - /// 考试地点 - @JsonKey() - final String place; - - // TODO: Use Campus enum - /// 考试校区 - @JsonKey() - final String campus; - - /// 考试座号 - @JsonKey() - final int? seatNumber; - - /// 是否重修 - @JsonKey() - final bool? isRetake; - - const ExamEntry({ - required this.courseName, - required this.place, - required this.campus, - required this.time, - required this.seatNumber, - required this.isRetake, - }); - - factory ExamEntry.fromJson(Map json) => _$ExamEntryFromJson(json); - - Map toJson() => _$ExamEntryToJson(this); - - factory ExamEntry.parseRemoteJson(Map json) { - return ExamEntry( - courseName: _parseCourseName(json['kcmc']), - place: _parsePlace(json['cdmc']), - campus: json['cdxqmc'] as String, - time: _parseTime(json['kssj'] as String), - seatNumber: _parseSeatNumber(json['zwh'] as String), - isRetake: _parseRetake(json['cxbj']), - ); - } - - @override - String toString() { - return { - "courseName": courseName, - "time": time, - "place": place, - "campus": campus, - "seatNumber": seatNumber, - "isRetake": isRetake, - }.toString(); - } - - static int comparator(ExamEntry a, ExamEntry b) { - final timeA = a.time; - final timeB = b.time; - if (timeA == null || timeB == null) { - if (timeA != timeB) { - return timeA == null ? 1 : -1; - } - return 0; - } - return timeA.start.isAfter(timeB.start) ? 1 : -1; - } -} - -extension ExamEntryX on ExamEntry { - String buildDate(BuildContext context) { - final time = this.time; - assert(time != null); - if (time == null) return "null"; - final (:start, :end) = time; - if (start.year == end.year && start.month == end.month && start.day == end.day) { - // at the same day - return context.formatMdWeekText(start); - } else { - return "${context.formatMdNum(start)}–${context.formatMdNum(end)}"; - } - } - - String buildTime(BuildContext context) { - final time = this.time; - assert(time != null); - if (time == null) return "null"; - final (:start, :end) = time; - if (start.year == end.year && start.month == end.month && start.day == end.day) { - // at the same day - return "${context.formatHmNum(start)}–${context.formatHmNum(end)}"; - } else { - return "${context.formatMdhmNum(start)}–${context.formatMdhmNum(end)}"; - } - } -} diff --git a/lib/school/exam_arrange/entity/exam.g.dart b/lib/school/exam_arrange/entity/exam.g.dart deleted file mode 100644 index cadb42e4b..000000000 --- a/lib/school/exam_arrange/entity/exam.g.dart +++ /dev/null @@ -1,42 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'exam.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -ExamEntry _$ExamEntryFromJson(Map json) => ExamEntry( - courseName: json['courseName'] as String, - place: json['place'] as String, - campus: json['campus'] as String, - time: _$recordConvertNullable( - json['time'], - ($jsonValue) => ( - end: DateTime.parse($jsonValue['end'] as String), - start: DateTime.parse($jsonValue['start'] as String), - ), - ), - seatNumber: (json['seatNumber'] as num?)?.toInt(), - isRetake: json['isRetake'] as bool?, - ); - -Map _$ExamEntryToJson(ExamEntry instance) => { - 'courseName': instance.courseName, - 'time': instance.time == null - ? null - : { - 'end': instance.time!.end.toIso8601String(), - 'start': instance.time!.start.toIso8601String(), - }, - 'place': instance.place, - 'campus': instance.campus, - 'seatNumber': instance.seatNumber, - 'isRetake': instance.isRetake, - }; - -$Rec? _$recordConvertNullable<$Rec>( - Object? value, - $Rec Function(Map) convert, -) => - value == null ? null : convert(value as Map); diff --git a/lib/school/exam_arrange/i18n.dart b/lib/school/exam_arrange/i18n.dart deleted file mode 100644 index f23b0025c..000000000 --- a/lib/school/exam_arrange/i18n.dart +++ /dev/null @@ -1,30 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "examArrange"; - - String get title => "$ns.title".tr(); - - String get check => "$ns.check".tr(); - - String get date => "$ns.date".tr(); - - String get time => "$ns.time".tr(); - - String get retake => "$ns.retake".tr(); - - String get location => "$ns.location".tr(); - - String get noExamsTip => "$ns.noExamsTip".tr(); - - String get seatNumber => "$ns.seatNumber".tr(); - - String get addCalendarEvent => "$ns.addCalendarEvent".tr(); - - String calendarEventTitleOf(String exam) => "$ns.calendarEventTitle".tr(args: [exam]); -} diff --git a/lib/school/exam_arrange/index.dart b/lib/school/exam_arrange/index.dart deleted file mode 100644 index 52814e2be..000000000 --- a/lib/school/exam_arrange/index.dart +++ /dev/null @@ -1,125 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:share_plus/share_plus.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/school/exam_arrange/entity/exam.dart'; -import 'package:sit/school/exam_arrange/init.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:super_context_menu/super_context_menu.dart'; -import 'package:universal_platform/universal_platform.dart'; - -import "i18n.dart"; -import 'widgets/exam.dart'; - -class ExamArrangeAppCard extends ConsumerStatefulWidget { - const ExamArrangeAppCard({super.key}); - - @override - ConsumerState createState() => _ExamArrangeAppCardState(); -} - -class _ExamArrangeAppCardState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = ExamArrangeInit.storage; - final currentSemester = estimateCurrentSemester(); - ref.watch(storage.$examListFamily(currentSemester)); - final examList = storage.getExamList(currentSemester); - return AppCard( - title: i18n.title.text(), - view: examList != null ? buildMostRecentExam(examList) : null, - leftActions: [ - FilledButton.icon( - onPressed: () { - context.push("/exam-arrange"); - }, - icon: const Icon(Icons.calendar_month), - label: i18n.check.text(), - ), - ], - ); - } - - Widget? buildMostRecentExam(List examList) { - if (examList.isEmpty) return const SizedBox(); - final now = DateTime.now(); - examList = examList.where((exam) => exam.time?.start.isAfter(now) ?? false).toList(); - examList.sort(ExamEntry.comparator); - final mostRecent = examList.firstOrNull; - if (mostRecent == null) return null; - return buildExam(mostRecent); - } - - Widget buildExam(ExamEntry exam) { - if (!supportContextMenu) { - return ExamCard(exam); - } - return Builder(builder: (context) { - return ContextMenuWidget( - menuProvider: (MenuRequest request) { - return Menu( - children: [ - if (UniversalPlatform.isAndroid || UniversalPlatform.isIOS) - MenuAction( - image: MenuImage.icon(CupertinoIcons.calendar_badge_plus), - title: i18n.addCalendarEvent, - callback: () async { - await addExamArrangeToCalendar(exam); - }, - ), - MenuAction( - image: MenuImage.icon(context.icons.share), - title: i18n.share, - callback: () async { - await shareExamArrange(exam: exam, context: context); - }, - ), - ], - ); - }, - child: ExamCard(exam), - ); - }); - } -} - -Future shareExamArrange({ - required ExamEntry exam, - required BuildContext context, -}) async { - var text = "${exam.courseName}, ${exam.buildDate(context)}, ${exam.buildTime(context)}, ${exam.place}"; - if (exam.seatNumber != null) { - text += ", ${i18n.seatNumber} ${exam.seatNumber}"; - } - await Share.share( - text, - sharePositionOrigin: context.getSharePositionOrigin(), - ); -} - -class ExamCard extends StatelessWidget { - final ExamEntry exam; - - const ExamCard( - this.exam, { - super.key, - }); - - @override - Widget build(BuildContext context) { - return [ - [ - exam.courseName.text(style: context.textTheme.titleMedium), - if (exam.isRetake == true) Chip(label: i18n.retake.text(), elevation: 2), - ].row(maa: MainAxisAlignment.spaceBetween), - const Divider(), - ExamEntryDetailsTable(exam), - ].column(caa: CrossAxisAlignment.start).padSymmetric(v: 15, h: 20).inCard(); - } -} diff --git a/lib/school/exam_arrange/init.dart b/lib/school/exam_arrange/init.dart deleted file mode 100644 index 56dfa49fc..000000000 --- a/lib/school/exam_arrange/init.dart +++ /dev/null @@ -1,18 +0,0 @@ -import 'package:sit/school/exam_arrange/storage/exam.dart'; -import 'package:sit/settings/dev.dart'; - -import 'service/exam.dart'; -import 'service/exam.demo.dart'; - -class ExamArrangeInit { - static late ExamArrangeService service; - static late ExamArrangeStorage storage; - - static void init() { - service = Dev.demoMode ? const DemoExamArrangeService() : const ExamArrangeService(); - } - - static void initStorage() { - storage = ExamArrangeStorage(); - } -} diff --git a/lib/school/exam_arrange/page/list.dart b/lib/school/exam_arrange/page/list.dart deleted file mode 100644 index f2f8bf5de..000000000 --- a/lib/school/exam_arrange/page/list.dart +++ /dev/null @@ -1,119 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/school/widgets/semester.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/exam.dart'; -import '../i18n.dart'; -import '../init.dart'; -import '../widgets/exam.dart'; - -class ExamArrangementListPage extends ConsumerStatefulWidget { - const ExamArrangementListPage({super.key}); - - @override - ConsumerState createState() => _ExamArrangementListPageState(); -} - -class _ExamArrangementListPageState extends ConsumerState { - List? examList; - bool isFetching = false; - late SemesterInfo initial = ExamArrangeInit.storage.lastSemesterInfo ?? estimateCurrentSemester(); - late SemesterInfo selected = initial; - - @override - void initState() { - super.initState(); - refresh(initial); - } - - Future refresh(SemesterInfo info) async { - if (!mounted) return; - setState(() { - examList = ExamArrangeInit.storage.getExamList(info); - isFetching = true; - }); - try { - final examList = await ExamArrangeInit.service.fetchExamList(info); - ExamArrangeInit.storage.setExamList(info, examList); - if (info == selected) { - if (!mounted) return; - setState(() { - this.examList = examList; - isFetching = false; - }); - } - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final examList = this.examList; - final now = DateTime.now(); - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.title.text(), - ), - SliverToBoxAdapter( - child: buildSemesterSelector(), - ), - if (examList != null) - if (examList.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noExamsTip, - ), - ) - else - SliverList.builder( - itemCount: examList.length, - itemBuilder: (ctx, i) { - final exam = examList[i]; - return Card.filled( - child: ExamCardContent( - exam, - enableAddEvent: exam.time?.end.isAfter(now) ?? false, - ), - ).padH(6); - }, - ), - ], - ), - bottomNavigationBar: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ); - } - - Widget buildSemesterSelector() { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - return SemesterSelector( - initial: initial, - baseYear: getAdmissionYearFromStudentId(credentials?.account), - onSelected: (newSelection) { - setState(() { - selected = newSelection; - }); - ExamArrangeInit.storage.lastSemesterInfo = newSelection; - refresh(newSelection); - }, - ); - } -} diff --git a/lib/school/exam_arrange/service/exam.dart b/lib/school/exam_arrange/service/exam.dart deleted file mode 100644 index 4e86c4998..000000000 --- a/lib/school/exam_arrange/service/exam.dart +++ /dev/null @@ -1,39 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/ug_registration.dart'; - -import '../entity/exam.dart'; -import 'package:sit/school/entity/school.dart'; - -class ExamArrangeService { - static const _examRoomUrl = 'http://jwxt.sit.edu.cn/jwglxt/kwgl/kscx_cxXsksxxIndex.html'; - - UgRegistrationSession get _session => Init.ugRegSession; - - const ExamArrangeService(); - - /// 获取考场信息 - Future> fetchExamList(SemesterInfo info) async { - final response = await _session.request( - _examRoomUrl, - para: { - 'doType': 'query', - 'gnmkdm': 'N358105', - }, - data: { - // 学年名 - 'xnm': info.year.toString(), - // 学期名 - 'xqm': semesterToFormField(info.semester), - }, - options: Options( - method: "POST", - ), - ); - final List itemsData = response.data['items']; - final list = itemsData.map((e) => ExamEntry.parseRemoteJson(e as Map)).toList(); - list.sort(ExamEntry.comparator); - return list; - } -} diff --git a/lib/school/exam_arrange/service/exam.demo.dart b/lib/school/exam_arrange/service/exam.demo.dart deleted file mode 100644 index 385cce9d5..000000000 --- a/lib/school/exam_arrange/service/exam.demo.dart +++ /dev/null @@ -1,23 +0,0 @@ -import '../entity/exam.dart'; -import 'package:sit/school/entity/school.dart'; - -import 'exam.dart'; - -class DemoExamArrangeService implements ExamArrangeService { - const DemoExamArrangeService(); - - @override - Future> fetchExamList(SemesterInfo info) async { - final now = DateTime.now(); - return [ - ExamEntry( - courseName: "小应生活开发实训", - place: "小应生活实验室", - campus: "奉贤", - time: (start: now.copyWith(day: now.day + 1), end: now.copyWith(day: now.day + 1, hour: now.hour + 1)), - seatNumber: 9, - isRetake: true, - ), - ]; - } -} diff --git a/lib/school/exam_arrange/storage/exam.dart b/lib/school/exam_arrange/storage/exam.dart deleted file mode 100644 index 6af7c1fe0..000000000 --- a/lib/school/exam_arrange/storage/exam.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:hive/hive.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/utils/json.dart'; - -import '../entity/exam.dart'; - -class _K { - static const lastSemesterInfo = "/lastSemesterInfo"; - - static String examList(SemesterInfo info) => "/examList/$info"; -} - -class ExamArrangeStorage { - Box get box => HiveInit.examArrange; - - ExamArrangeStorage(); - - List? getExamList(SemesterInfo info) => - decodeJsonList(box.safeGet(_K.examList(info)), (e) => ExamEntry.fromJson(e)); - - void setExamList(SemesterInfo info, List? exams) => - box.safePut(_K.examList(info), encodeJsonList(exams, (e) => e.toJson())); - - SemesterInfo? get lastSemesterInfo => box.safeGet(_K.lastSemesterInfo); - - set lastSemesterInfo(SemesterInfo? newV) => box.safePut(_K.lastSemesterInfo, newV); - - Stream watchExamList(SemesterInfo Function() getFilter) => - box.watch().where((event) => event.key == _K.examList(getFilter())); - - late final $examListFamily = box.streamChangeProviderFamily( - (e, semester) => e.key == _K.examList(semester), - ); -} diff --git a/lib/school/exam_arrange/widgets/exam.dart b/lib/school/exam_arrange/widgets/exam.dart deleted file mode 100644 index c2bb50747..000000000 --- a/lib/school/exam_arrange/widgets/exam.dart +++ /dev/null @@ -1,99 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:add_2_calendar/add_2_calendar.dart'; -import 'package:universal_platform/universal_platform.dart'; - -import '../i18n.dart'; -import '../entity/exam.dart'; - -class ExamCardContent extends StatelessWidget { - final ExamEntry exam; - final bool enableAddEvent; - - const ExamCardContent( - this.exam, { - super.key, - required this.enableAddEvent, - }); - - @override - Widget build(BuildContext context) { - final time = exam.time; - return [ - [ - exam.courseName.text(style: context.textTheme.titleMedium), - if (exam.isRetake == true) Chip(label: i18n.retake.text(), elevation: 2), - ].row(maa: MainAxisAlignment.spaceBetween), - Divider(color: context.colorScheme.onSurfaceVariant), - ExamEntryDetailsTable(exam), - if (enableAddEvent && time != null && (UniversalPlatform.isAndroid || UniversalPlatform.isIOS)) ...[ - Divider(color: context.colorScheme.onSurfaceVariant), - buildAddToCalenderAction(), - ], - ].column(caa: CrossAxisAlignment.start).padSymmetric(v: 15, h: 20); - } - - Widget buildAddToCalenderAction() { - return FilledButton.icon( - icon: const Icon(Icons.calendar_month), - onPressed: () async { - await addExamArrangeToCalendar(exam); - }, - label: i18n.addCalendarEvent.text(), - ); - } -} - -class ExamEntryDetailsTable extends StatelessWidget { - final ExamEntry exam; - - const ExamEntryDetailsTable( - this.exam, { - super.key, - }); - - @override - Widget build(BuildContext context) { - final style = context.textTheme.bodyMedium; - final time = exam.time; - return Table( - children: [ - TableRow(children: [ - i18n.location.text(style: style), - exam.place.text(style: style), - ]), - if (exam.seatNumber != null) - TableRow(children: [ - i18n.seatNumber.text(style: style), - exam.seatNumber.toString().text(style: style), - ]), - if (time != null) ...[ - TableRow(children: [ - i18n.date.text(style: style), - exam.buildDate(context).text(style: style), - ]), - TableRow(children: [ - i18n.time.text(style: style), - exam.buildTime(context).text(style: style), - ]), - ], - ], - ); - } -} - -Future addExamArrangeToCalendar(ExamEntry exam) async { - final time = exam.time; - if (time == null) return; - final (:start, :end) = time; - final event = Event( - title: i18n.calendarEventTitleOf(exam.courseName), - description: "${i18n.seatNumber} ${exam.seatNumber}", - location: "${exam.place} #${exam.seatNumber}", - // alert before exam, 30 minutes by default. - iosParams: const IOSParams(reminder: Duration(minutes: 30)), - startDate: start, - endDate: end, - ); - await Add2Calendar.addEvent2Cal(event); -} diff --git a/lib/school/exam_result/aggregated.dart b/lib/school/exam_result/aggregated.dart deleted file mode 100644 index cb610b6ca..000000000 --- a/lib/school/exam_result/aggregated.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:sit/school/entity/school.dart'; - -import 'entity/result.ug.dart'; -import 'init.dart'; - -class ExamResultAggregated { - static Future<({Map> semester2Results, List all})> - fetchAndCacheExamResultUgEachSemester({ - void Function(double progress)? onProgress, - }) async { - final all = await ExamResultInit.ugService.fetchResultList( - SemesterInfo.all, - onProgress: onProgress, - ); - final semester2Results = all.groupListsBy((result) => result.semesterInfo); - final storage = ExamResultInit.ugStorage; - await storage.setResultList(SemesterInfo.all, all); - for (final MapEntry(key: semester, value: list) in semester2Results.entries) { - await storage.setResultList(semester, list); - } - return (semester2Results: semester2Results, all: all); - } -} diff --git a/lib/school/exam_result/entity/gpa.dart b/lib/school/exam_result/entity/gpa.dart deleted file mode 100644 index 2c5d7ce05..000000000 --- a/lib/school/exam_result/entity/gpa.dart +++ /dev/null @@ -1,69 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/exam_result/entity/result.ug.dart'; - -class ExamResultGpaItem { - // for multi-selection - final int index; - - /// the first attempt of an exam. - final ExamResultUg initial; - final List resit; - final List retake; - - const ExamResultGpaItem({ - required this.index, - required this.initial, - required this.resit, - required this.retake, - }); - - /// Using the [initial.year] - SchoolYear get year => initial.year; - - /// Using the [initial.semester] - Semester get semester => initial.semester; - - /// Using the [initial.semesterInfo] - SemesterInfo get semesterInfo => initial.semesterInfo; - - CourseCat get courseCat => initial.courseCat; - - /// Even if you retake the course, there will be no change. - String get courseCode => initial.courseCode; - - String get courseName => initial.courseName; - - double get credit => initial.credit; - - double? get maxScore { - return [ - ...resit.map((e) => e.score), - ...retake.map((e) => e.score), - initial.score, - ].whereNotNull().maxOrNull; - } - - bool get passed { - final maxScore = this.maxScore; - if (maxScore == null) return false; - return maxScore >= 60.0; - } - - @override - bool operator ==(Object other) { - if (identical(this, other)) return true; - return other is ExamResultGpaItem && - runtimeType == other.runtimeType && - initial == other.initial && - resit.equals(other.resit) && - retake.equals(other.retake); - } - - @override - int get hashCode => Object.hash( - initial, - Object.hashAll(resit), - Object.hashAll(retake), - ); -} diff --git a/lib/school/exam_result/entity/result.pg.dart b/lib/school/exam_result/entity/result.pg.dart deleted file mode 100644 index 18774ad4a..000000000 --- a/lib/school/exam_result/entity/result.pg.dart +++ /dev/null @@ -1,159 +0,0 @@ -import 'package:sit/storage/hive/type_id.dart'; - -part 'result.pg.g.dart'; - -class ExamResultPgRaw { - /// 课程类别 - final String courseType; - - /// 课程编号 - final String courseCode; - - /// 课程名称 - final String courseName; - - /// 学分 - final String credit; - - /// 教师 - final String teacher; - - /// 成绩 - final String score; - - /// 是否及格 - /// eg. "及格" - final String passStatus; - - /// 考试性质 - /// eg. "期末考试" - final String examType; - - /// 考试方式 - /// eg. "笔试" - final String examForm; - - /// 考试时间 - final String examTime; - - /// 备注 - final String notes; - - const ExamResultPgRaw({ - required this.courseType, - required this.courseCode, - required this.courseName, - required this.credit, - required this.teacher, - required this.score, - required this.passStatus, - required this.examType, - required this.examForm, - required this.examTime, - required this.notes, - }); - - @override - String toString() { - return { - "courseClass": courseType, - "courseCode": courseCode, - "courseName": courseName, - "courseCredit": credit, - "teacher": teacher, - "score": score, - "isPassed": passStatus, - "examNature": examType, - "examForm": examForm, - "examTime": examTime, - }.toString(); - } - - ExamResultPg parse() { - return ExamResultPg( - courseType: courseType, - courseCode: courseCode, - courseName: courseName, - credit: int.parse(credit), - teacher: teacher, - score: double.parse(score), - passed: passStatus == "及格", - examType: examType, - form: examForm, - // currently, time is not given - time: null, - notes: notes, - ); - } - - bool canParse() { - return double.tryParse(score) != null; - } -} - -@HiveType(typeId: CacheHiveType.examResultPg) -class ExamResultPg { - @HiveField(0) - final String courseType; - - @HiveField(1) - final String courseCode; - - @HiveField(2) - final String courseName; - - @HiveField(3) - final int credit; - - @HiveField(4) - final String teacher; - - /// It's always int. But double is used for most compatibility. - @HiveField(5) - final double score; - - @HiveField(6) - final bool passed; - - @HiveField(7) - final String examType; - - @HiveField(8) - final String form; - - @HiveField(9) - final DateTime? time; - - @HiveField(10) - final String notes; - - const ExamResultPg({ - required this.courseType, - required this.courseCode, - required this.courseName, - required this.credit, - required this.teacher, - required this.score, - required this.passed, - required this.examType, - required this.form, - required this.time, - required this.notes, - }); - - @override - String toString() { - return { - "courseClass": courseType, - "courseCode": courseCode, - "courseName": courseName, - "courseCredit": credit, - "teacher": teacher, - "score": score, - "isPassed": passed, - "examNature": examType, - "examForm": form, - "examTime": time, - }.toString(); - } -} diff --git a/lib/school/exam_result/entity/result.pg.g.dart b/lib/school/exam_result/entity/result.pg.g.dart deleted file mode 100644 index ff0aeb76c..000000000 --- a/lib/school/exam_result/entity/result.pg.g.dart +++ /dev/null @@ -1,69 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'result.pg.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class ExamResultPgAdapter extends TypeAdapter { - @override - final int typeId = 23; - - @override - ExamResultPg read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return ExamResultPg( - courseType: fields[0] as String, - courseCode: fields[1] as String, - courseName: fields[2] as String, - credit: fields[3] as int, - teacher: fields[4] as String, - score: fields[5] as double, - passed: fields[6] as bool, - examType: fields[7] as String, - form: fields[8] as String, - time: fields[9] as DateTime?, - notes: fields[10] as String, - ); - } - - @override - void write(BinaryWriter writer, ExamResultPg obj) { - writer - ..writeByte(11) - ..writeByte(0) - ..write(obj.courseType) - ..writeByte(1) - ..write(obj.courseCode) - ..writeByte(2) - ..write(obj.courseName) - ..writeByte(3) - ..write(obj.credit) - ..writeByte(4) - ..write(obj.teacher) - ..writeByte(5) - ..write(obj.score) - ..writeByte(6) - ..write(obj.passed) - ..writeByte(7) - ..write(obj.examType) - ..writeByte(8) - ..write(obj.form) - ..writeByte(9) - ..write(obj.time) - ..writeByte(10) - ..write(obj.notes); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is ExamResultPgAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/exam_result/entity/result.ug.dart b/lib/school/exam_result/entity/result.ug.dart deleted file mode 100644 index fed5573f6..000000000 --- a/lib/school/exam_result/entity/result.ug.dart +++ /dev/null @@ -1,265 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/storage/hive/type_id.dart'; -import 'package:sit/school/entity/school.dart'; - -part 'result.ug.g.dart'; - -String _parseCourseName(dynamic courseName) { - return mapChinesePunctuations(courseName.toString()); -} - -Semester _formFieldToSemester(String s) { - Map semester = { - '': Semester.all, - '3': Semester.term1, - '12': Semester.term2, - }; - return semester[s]!; -} - -SchoolYear _formFieldToSchoolYear(String s) { - return int.parse(s.split('-')[0]); -} - -String _schoolYearToFormField(SchoolYear year) { - return '$year-${year + 1}'; -} - -final _timeFormat = DateFormat("yyyy-MM-dd hh:mm:ss"); - -DateTime? _parseTime(dynamic time) { - if (time == null) return null; - return _timeFormat.parse(time.toString()); -} - -List _parseTeachers(String? text) { - if (text == null) return const []; - if (text == "无") return const []; - return text.split(";"); -} - -@HiveType(typeId: CacheHiveType.examResultUgExamType) -enum UgExamType { - /// 正常考试 - @HiveField(0) - normal, - - /// 补考一 - @HiveField(1) - resit, - - /// 重修 - @HiveField(2) - retake; - - String l10n() => "examResult.examType.$name".tr(); - - static UgExamType parse(String type) { - if (type == "正常考试") return normal; - if (type == "重修") return retake; - if (type.contains("补考")) return resit; - // fallback to normal - return normal; - } -} - -@JsonSerializable() -@HiveType(typeId: CacheHiveType.examResultUg) -@CopyWith(skipFields: true) -class ExamResultUg { - /// If the teacher of class hasn't been evaluated, the score is NaN. - @JsonKey(name: 'cj', fromJson: double.tryParse) - @HiveField(0) - final double? score; - - /// 课程 - @JsonKey(name: 'kcmc', fromJson: _parseCourseName) - @HiveField(1) - final String courseName; - - /// 课程代码 - @JsonKey(name: 'kch') - @HiveField(2) - final String courseCode; - - /// 班级(正方内部使用) - @JsonKey(name: 'jxb_id') - @HiveField(3) - final String innerClassId; - - /// 班级ID(数字) - @JsonKey(name: 'jxbmc', defaultValue: "") - @HiveField(4) - final String classCode; - - /// 学年 - @JsonKey(name: 'xnmmc', fromJson: _formFieldToSchoolYear, toJson: _schoolYearToFormField) - @HiveField(5) - final SchoolYear year; - - /// 学期 - @JsonKey(name: 'xqm', fromJson: _formFieldToSemester) - @HiveField(6) - final Semester semester; - - /// 学分 - @JsonKey(name: 'xf', fromJson: double.parse) - @HiveField(7) - final double credit; - - @JsonKey(name: "tjsj", fromJson: _parseTime, includeToJson: false) - @HiveField(8) - final DateTime? time; - - @JsonKey(name: "kclbmc", fromJson: CourseCat.parse) - @HiveField(9) - final CourseCat courseCat; - - @JsonKey(name: "jsxm", fromJson: _parseTeachers) - @HiveField(10) - final List teachers; - - @JsonKey(name: "ksxz", fromJson: UgExamType.parse) - @HiveField(11) - final UgExamType examType; - - @JsonKey(includeToJson: false, includeFromJson: false) - @HiveField(12) - final List items; - - const ExamResultUg({ - required this.score, - required this.courseName, - required this.courseCode, - required this.innerClassId, - required this.year, - required this.semester, - required this.credit, - required this.classCode, - required this.time, - required this.courseCat, - required this.examType, - required this.teachers, - this.items = const [], - }); - - bool get passed { - final score = this.score; - return score != null ? score >= 60.0 : false; - } - - bool get isPreparatory => courseCode.startsWith("YK"); - - SemesterInfo get semesterInfo => SemesterInfo(year: year, semester: semester); - - factory ExamResultUg.fromJson(Map json) => _$ExamResultUgFromJson(json); - - @override - String toString() { - return { - "score": "$score", - "courseName": courseName, - "courseId": courseCode, - "innerClassId": innerClassId, - "dynClassId": classCode, - "schoolYear": "$year", - "semester": "$semester", - "credit": "$credit", - "time": time, - "items": "$items", - }.toString(); - } - - static int compareByTime(ExamResultUg a, ExamResultUg b) { - final timeA = a.time; - final timeB = b.time; - if (timeA == null && timeB == null) return 0; - if (timeA == null) return -1; - if (timeB == null) return 1; - return timeA.compareTo(timeB); - } - - @override - bool operator ==(Object other) { - if (identical(this, other)) return true; - return other is ExamResultUg && - runtimeType == other.runtimeType && - score == other.score && - courseName == other.courseName && - courseCode == other.courseCode && - innerClassId == other.innerClassId && - year == other.year && - semester == other.semester && - credit == other.credit && - classCode == other.classCode && - time == other.time && - courseCat == other.courseCat && - examType == other.examType && - teachers.equals(other.teachers) && - items.equals(other.items); - } - - @override - int get hashCode => Object.hashAll([ - score, - courseName, - courseCode, - innerClassId, - year, - semester, - credit, - classCode, - time, - courseCat, - examType, - Object.hashAll(teachers), - Object.hashAll(items), - ]); -} - -@HiveType(typeId: CacheHiveType.examResultUgItem) -class ExamResultItem { - /// 成绩名称 - @HiveField(0) - final String scoreType; - - /// 占总成绩百分比 - @HiveField(1) - final String percentage; - - /// 成绩数值 - @HiveField(3) - final double? score; - - const ExamResultItem({ - required this.scoreType, - required this.percentage, - this.score, - }); - - @override - String toString() { - return { - "scoreType": scoreType, - "percentage": percentage, - "score": score, - }.toString(); - } - - @override - bool operator ==(Object other) { - if (identical(this, other)) return true; - return other is ExamResultItem && - runtimeType == other.runtimeType && - scoreType == other.scoreType && - score == other.score && - percentage == other.percentage; - } - - @override - int get hashCode => Object.hash(scoreType, score, percentage); -} diff --git a/lib/school/exam_result/entity/result.ug.g.dart b/lib/school/exam_result/entity/result.ug.g.dart deleted file mode 100644 index 0eb147a87..000000000 --- a/lib/school/exam_result/entity/result.ug.g.dart +++ /dev/null @@ -1,331 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'result.ug.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$ExamResultUgCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// ExamResultUg(...).copyWith(id: 12, name: "My name") - /// ```` - ExamResultUg call({ - double? score, - String? courseName, - String? courseCode, - String? innerClassId, - int? year, - Semester? semester, - double? credit, - String? classCode, - DateTime? time, - CourseCat? courseCat, - UgExamType? examType, - List? teachers, - List? items, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfExamResultUg.copyWith(...)`. -class _$ExamResultUgCWProxyImpl implements _$ExamResultUgCWProxy { - const _$ExamResultUgCWProxyImpl(this._value); - - final ExamResultUg _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// ExamResultUg(...).copyWith(id: 12, name: "My name") - /// ```` - ExamResultUg call({ - Object? score = const $CopyWithPlaceholder(), - Object? courseName = const $CopyWithPlaceholder(), - Object? courseCode = const $CopyWithPlaceholder(), - Object? innerClassId = const $CopyWithPlaceholder(), - Object? year = const $CopyWithPlaceholder(), - Object? semester = const $CopyWithPlaceholder(), - Object? credit = const $CopyWithPlaceholder(), - Object? classCode = const $CopyWithPlaceholder(), - Object? time = const $CopyWithPlaceholder(), - Object? courseCat = const $CopyWithPlaceholder(), - Object? examType = const $CopyWithPlaceholder(), - Object? teachers = const $CopyWithPlaceholder(), - Object? items = const $CopyWithPlaceholder(), - }) { - return ExamResultUg( - score: score == const $CopyWithPlaceholder() - ? _value.score - // ignore: cast_nullable_to_non_nullable - : score as double?, - courseName: courseName == const $CopyWithPlaceholder() || courseName == null - ? _value.courseName - // ignore: cast_nullable_to_non_nullable - : courseName as String, - courseCode: courseCode == const $CopyWithPlaceholder() || courseCode == null - ? _value.courseCode - // ignore: cast_nullable_to_non_nullable - : courseCode as String, - innerClassId: innerClassId == const $CopyWithPlaceholder() || innerClassId == null - ? _value.innerClassId - // ignore: cast_nullable_to_non_nullable - : innerClassId as String, - year: year == const $CopyWithPlaceholder() || year == null - ? _value.year - // ignore: cast_nullable_to_non_nullable - : year as int, - semester: semester == const $CopyWithPlaceholder() || semester == null - ? _value.semester - // ignore: cast_nullable_to_non_nullable - : semester as Semester, - credit: credit == const $CopyWithPlaceholder() || credit == null - ? _value.credit - // ignore: cast_nullable_to_non_nullable - : credit as double, - classCode: classCode == const $CopyWithPlaceholder() || classCode == null - ? _value.classCode - // ignore: cast_nullable_to_non_nullable - : classCode as String, - time: time == const $CopyWithPlaceholder() - ? _value.time - // ignore: cast_nullable_to_non_nullable - : time as DateTime?, - courseCat: courseCat == const $CopyWithPlaceholder() || courseCat == null - ? _value.courseCat - // ignore: cast_nullable_to_non_nullable - : courseCat as CourseCat, - examType: examType == const $CopyWithPlaceholder() || examType == null - ? _value.examType - // ignore: cast_nullable_to_non_nullable - : examType as UgExamType, - teachers: teachers == const $CopyWithPlaceholder() || teachers == null - ? _value.teachers - // ignore: cast_nullable_to_non_nullable - : teachers as List, - items: items == const $CopyWithPlaceholder() || items == null - ? _value.items - // ignore: cast_nullable_to_non_nullable - : items as List, - ); - } -} - -extension $ExamResultUgCopyWith on ExamResultUg { - /// Returns a callable class that can be used as follows: `instanceOfExamResultUg.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$ExamResultUgCWProxy get copyWith => _$ExamResultUgCWProxyImpl(this); -} - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class ExamResultUgAdapter extends TypeAdapter { - @override - final int typeId = 20; - - @override - ExamResultUg read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return ExamResultUg( - score: fields[0] as double?, - courseName: fields[1] as String, - courseCode: fields[2] as String, - innerClassId: fields[3] as String, - year: fields[5] as int, - semester: fields[6] as Semester, - credit: fields[7] as double, - classCode: fields[4] as String, - time: fields[8] as DateTime?, - courseCat: fields[9] as CourseCat, - examType: fields[11] as UgExamType, - teachers: (fields[10] as List).cast(), - items: (fields[12] as List).cast(), - ); - } - - @override - void write(BinaryWriter writer, ExamResultUg obj) { - writer - ..writeByte(13) - ..writeByte(0) - ..write(obj.score) - ..writeByte(1) - ..write(obj.courseName) - ..writeByte(2) - ..write(obj.courseCode) - ..writeByte(3) - ..write(obj.innerClassId) - ..writeByte(4) - ..write(obj.classCode) - ..writeByte(5) - ..write(obj.year) - ..writeByte(6) - ..write(obj.semester) - ..writeByte(7) - ..write(obj.credit) - ..writeByte(8) - ..write(obj.time) - ..writeByte(9) - ..write(obj.courseCat) - ..writeByte(10) - ..write(obj.teachers) - ..writeByte(11) - ..write(obj.examType) - ..writeByte(12) - ..write(obj.items); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is ExamResultUgAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class ExamResultItemAdapter extends TypeAdapter { - @override - final int typeId = 21; - - @override - ExamResultItem read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return ExamResultItem( - scoreType: fields[0] as String, - percentage: fields[1] as String, - score: fields[3] as double?, - ); - } - - @override - void write(BinaryWriter writer, ExamResultItem obj) { - writer - ..writeByte(3) - ..writeByte(0) - ..write(obj.scoreType) - ..writeByte(1) - ..write(obj.percentage) - ..writeByte(3) - ..write(obj.score); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is ExamResultItemAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class UgExamTypeAdapter extends TypeAdapter { - @override - final int typeId = 22; - - @override - UgExamType read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return UgExamType.normal; - case 1: - return UgExamType.resit; - case 2: - return UgExamType.retake; - default: - return UgExamType.normal; - } - } - - @override - void write(BinaryWriter writer, UgExamType obj) { - switch (obj) { - case UgExamType.normal: - writer.writeByte(0); - break; - case UgExamType.resit: - writer.writeByte(1); - break; - case UgExamType.retake: - writer.writeByte(2); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is UgExamTypeAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -ExamResultUg _$ExamResultUgFromJson(Map json) => ExamResultUg( - score: double.tryParse(json['cj'] as String), - courseName: _parseCourseName(json['kcmc']), - courseCode: json['kch'] as String, - innerClassId: json['jxb_id'] as String, - year: _formFieldToSchoolYear(json['xnmmc'] as String), - semester: _formFieldToSemester(json['xqm'] as String), - credit: double.parse(json['xf'] as String), - classCode: json['jxbmc'] as String? ?? '', - time: _parseTime(json['tjsj']), - courseCat: CourseCat.parse(json['kclbmc'] as String?), - examType: UgExamType.parse(json['ksxz'] as String), - teachers: _parseTeachers(json['jsxm'] as String?), - ); - -Map _$ExamResultUgToJson(ExamResultUg instance) => { - 'cj': instance.score, - 'kcmc': instance.courseName, - 'kch': instance.courseCode, - 'jxb_id': instance.innerClassId, - 'jxbmc': instance.classCode, - 'xnmmc': _schoolYearToFormField(instance.year), - 'xqm': _$SemesterEnumMap[instance.semester]!, - 'xf': instance.credit, - 'kclbmc': _$CourseCatEnumMap[instance.courseCat]!, - 'jsxm': instance.teachers, - 'ksxz': _$UgExamTypeEnumMap[instance.examType]!, - }; - -const _$SemesterEnumMap = { - Semester.all: 'all', - Semester.term1: 'term1', - Semester.term2: 'term2', -}; - -const _$CourseCatEnumMap = { - CourseCat.none: 'none', - CourseCat.genEd: 'genEd', - CourseCat.publicCore: 'publicCore', - CourseCat.specializedCore: 'specializedCore', - CourseCat.specializedCompulsory: 'specializedCompulsory', - CourseCat.specializedElective: 'specializedElective', - CourseCat.integratedPractice: 'integratedPractice', - CourseCat.practicalInstruction: 'practicalInstruction', -}; - -const _$UgExamTypeEnumMap = { - UgExamType.normal: 'normal', - UgExamType.resit: 'resit', - UgExamType.retake: 'retake', -}; diff --git a/lib/school/exam_result/i18n.dart b/lib/school/exam_result/i18n.dart deleted file mode 100644 index a338eeb4c..000000000 --- a/lib/school/exam_result/i18n.dart +++ /dev/null @@ -1,63 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/school/i18n.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "examResult"; - final gpa = const _Gpa(); - final course = const CourseI18n(); - - String get title => "$ns.title".tr(); - - String get check => "$ns.check".tr(); - - String get score => "$ns.score".tr(); - - String get maxScore => "$ns.maxScore".tr(); - - String get publishTime => "$ns.publishTime".tr(); - - String get teacherEval => "$ns.teacherEval".tr(); - - String get teacherEvalTitle => "$ns.teacherEvalTitle".tr(); - - String get noResultsTip => "$ns.noResultsTip".tr(); - - String get examType => "$ns.examType.title".tr(); - - String get courseNotEval => "$ns.courseNotEval".tr(); - - String get examRequireEvalTip => "$ns.examRequireEvalTip".tr(); -} - -class _Gpa { - const _Gpa(); - - static const ns = "${_I18n.ns}.gpa"; - - String get title => "$ns.title".tr(); - - String lessonSelected(int count) => "$ns.lessonSelected".tr(args: [ - count.toString(), - ]); - - String credit(double point) => "$ns.credit".tr(args: [ - point.toString(), - ]); - - String gpaResult(double point) => "$ns.gpaResult".tr(args: [ - point.toStringAsPrecision(2), - ]); - - String get selectAll => "$ns.selectAll".tr(); - - String get invert => "$ns.invert".tr(); - - String get exceptGenEd => "$ns.exceptGenEd".tr(); - - String get exceptFailed => "$ns.exceptFailed".tr(); -} diff --git a/lib/school/exam_result/index.pg.dart b/lib/school/exam_result/index.pg.dart deleted file mode 100644 index f5d7ffb5e..000000000 --- a/lib/school/exam_result/index.pg.dart +++ /dev/null @@ -1,65 +0,0 @@ -import 'package:carousel_slider/carousel_slider.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/school/exam_result/init.dart'; -import 'package:sit/school/exam_result/widgets/pg.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'entity/result.pg.dart'; -import "i18n.dart"; - -class ExamResultPgAppCard extends ConsumerStatefulWidget { - const ExamResultPgAppCard({super.key}); - - @override - ConsumerState createState() => _ExamResultPgAppCardState(); -} - -class _ExamResultPgAppCardState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = ExamResultInit.pgStorage; - final showResultPreview = ref.watch(Settings.school.examResult.$showResultPreview); - final resultList = ref.watch(storage.$resultList); - return AppCard( - title: i18n.title.text(), - view: showResultPreview == false - ? null - : resultList == null - ? null - : buildRecentResults(resultList), - leftActions: [ - FilledButton.icon( - onPressed: () async { - await context.push("/exam-result/pg"); - }, - icon: const Icon(Icons.fact_check), - label: i18n.check.text(), - ), - ], - ); - } - - Widget? buildRecentResults(List resultList) { - if (resultList.isEmpty) return null; - return CarouselSlider.builder( - itemCount: resultList.length, - options: CarouselOptions( - height: 120, - viewportFraction: 0.45, - enableInfiniteScroll: false, - padEnds: false, - ), - itemBuilder: (BuildContext context, int i, int pageViewIndex) { - final result = resultList[i]; - return ExamResultPgCarouselCard( - result, - elevated: true, - ).sized(w: 180); - }, - ); - } -} diff --git a/lib/school/exam_result/index.ug.dart b/lib/school/exam_result/index.ug.dart deleted file mode 100644 index 1e7c56347..000000000 --- a/lib/school/exam_result/index.ug.dart +++ /dev/null @@ -1,70 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/school/exam_result/init.dart'; -import 'package:sit/school/exam_result/widgets/ug.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'entity/result.ug.dart'; -import "i18n.dart"; - -const _recentLength = 2; - -class ExamResultUgAppCard extends ConsumerStatefulWidget { - const ExamResultUgAppCard({super.key}); - - @override - ConsumerState createState() => _ExamResultUgAppCardState(); -} - -class _ExamResultUgAppCardState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = ExamResultInit.ugStorage; - final currentSemester = estimateCurrentSemester(); - ref.watch(storage.$resultListFamily(currentSemester)); - final resultList = storage.getResultList(currentSemester); - final showResultPreview = ref.watch(Settings.school.examResult.$showResultPreview); - return AppCard( - title: i18n.title.text(), - view: showResultPreview == false - ? null - : resultList == null - ? null - : buildRecentResults(resultList), - leftActions: [ - FilledButton.icon( - onPressed: () async { - await context.push("/exam-result/ug"); - }, - icon: const Icon(Icons.fact_check), - label: i18n.check.text(), - ), - OutlinedButton.icon( - onPressed: () async { - await context.push("/exam-result/ug/gpa"); - }, - icon: const Icon(Icons.assessment), - label: i18n.gpa.title.text(), - ) - ], - ); - } - - Widget? buildRecentResults(List resultList) { - if (resultList.isEmpty) return null; - resultList.sort((a, b) => -ExamResultUg.compareByTime(a, b)); - final results = resultList.sublist(0, min(_recentLength, resultList.length)); - return results - .map((result) => ExamResultUgTile( - result, - ).inCard(clip: Clip.hardEdge)) - .toList() - .column(); - } -} diff --git a/lib/school/exam_result/init.dart b/lib/school/exam_result/init.dart deleted file mode 100644 index 6a71c232d..000000000 --- a/lib/school/exam_result/init.dart +++ /dev/null @@ -1,25 +0,0 @@ -import 'package:sit/school/exam_result/service/result.ug.demo.dart'; -import 'package:sit/settings/dev.dart'; - -import 'service/result.pg.dart'; -import 'service/result.pg.demo.dart'; -import 'service/result.ug.dart'; -import 'storage/result.pg.dart'; -import 'storage/result.ug.dart'; - -class ExamResultInit { - static late ExamResultUgService ugService; - static late ExamResultPgService pgService; - static late ExamResultUgStorage ugStorage; - static late ExamResultPgStorage pgStorage; - - static void init() { - ugService = Dev.demoMode ? const DemoExamResultUgService() : const ExamResultUgService(); - pgService = Dev.demoMode ? const DemoExamResultPgService() : const ExamResultPgService(); - } - - static void initStorage() { - ugStorage = ExamResultUgStorage(); - pgStorage = ExamResultPgStorage(); - } -} diff --git a/lib/school/exam_result/page/details.gpa.dart b/lib/school/exam_result/page/details.gpa.dart deleted file mode 100644 index d44e9b95c..000000000 --- a/lib/school/exam_result/page/details.gpa.dart +++ /dev/null @@ -1,81 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/exam_result/entity/gpa.dart'; -import 'package:sit/school/exam_result/widgets/ug.dart'; -import '../i18n.dart'; - -class ExamResultGpaItemDetailsPage extends StatefulWidget { - final ExamResultGpaItem item; - - const ExamResultGpaItemDetailsPage(this.item, {super.key}); - - @override - State createState() => _ExamResultDetailsPageState(); -} - -class _ExamResultDetailsPageState extends State { - @override - Widget build(BuildContext context) { - final item = widget.item; - final score = item.maxScore; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: item.courseName.text(), - ), - SliverList.list(children: [ - if (score != null) - DetailListTile( - leading: const Icon(Icons.score), - title: i18n.maxScore, - subtitle: score.toString(), - ), - DetailListTile( - leading: const Icon(Icons.view_timeline_outlined), - title: i18n.course.semester, - subtitle: item.semesterInfo.l10n(), - ), - DetailListTile( - leading: const Icon(Icons.numbers), - title: i18n.course.courseCode, - subtitle: item.courseCode.toString(), - ), - if (item.courseCat != CourseCat.none) - DetailListTile( - leading: const Icon(Icons.category), - title: i18n.course.category, - subtitle: item.courseCat.l10n(), - ), - ]), - if (item.resit.isNotEmpty) ...[ - const SliverToBoxAdapter( - child: Divider(), - ), - SliverList.builder( - itemCount: item.resit.length, - itemBuilder: (ctx, i) { - final result = item.resit[i]; - return ExamResultUgTile(result); - }, - ), - ], - if (item.retake.isNotEmpty) ...[ - const SliverToBoxAdapter( - child: Divider(), - ), - SliverList.builder( - itemCount: item.retake.length, - itemBuilder: (ctx, i) { - final result = item.retake[i]; - return ExamResultUgTile(result); - }, - ), - ], - ], - ), - ); - } -} diff --git a/lib/school/exam_result/page/details.ug.dart b/lib/school/exam_result/page/details.ug.dart deleted file mode 100644 index 9c4110e66..000000000 --- a/lib/school/exam_result/page/details.ug.dart +++ /dev/null @@ -1,103 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/design/widgets/navigation.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/exam_result/entity/result.ug.dart'; -import '../i18n.dart'; - -class ExamResultUgDetailsPage extends StatefulWidget { - final ExamResultUg result; - - const ExamResultUgDetailsPage(this.result, {super.key}); - - @override - State createState() => _ExamResultDetailsPageState(); -} - -class _ExamResultDetailsPageState extends State { - @override - Widget build(BuildContext context) { - final result = widget.result; - final score = result.score; - final time = result.time; - final items = result.items.where((e) => e.score != null).toList(); - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: result.courseName.text(), - ), - SliverList.list(children: [ - if (score != null) - DetailListTile( - leading: const Icon(Icons.score), - title: i18n.score, - subtitle: result.score.toString(), - ) - else - PageNavigationTile( - leading: const Icon(Icons.warning), - title: i18n.courseNotEval.text(), - subtitle: i18n.examRequireEvalTip.text(), - path: '/teacher-eval', - ), - DetailListTile( - leading: const Icon(Icons.class_), - title: i18n.examType, - subtitle: result.examType.l10n(), - ), - DetailListTile( - leading: const Icon(Icons.view_timeline_outlined), - title: i18n.course.semester, - subtitle: result.semesterInfo.l10n(), - ), - if (time != null) - DetailListTile( - leading: const Icon(Icons.access_time), - title: i18n.publishTime, - subtitle: context.formatYmdhmNum(time), - ), - DetailListTile( - leading: const Icon(Icons.numbers), - title: i18n.course.courseCode, - subtitle: result.courseCode.toString(), - ), - if (result.classCode.isNotEmpty) - DetailListTile( - leading: const Icon(Icons.group), - title: i18n.course.classCode, - subtitle: result.classCode.toString(), - ), - if (result.courseCat != CourseCat.none) - DetailListTile( - leading: const Icon(Icons.category), - title: i18n.course.category, - subtitle: result.courseCat.l10n(), - ), - if (result.teachers.isNotEmpty) - DetailListTile( - leading: Icon(result.teachers.length > 1 ? Icons.people : Icons.person), - title: i18n.course.teacher(result.teachers.length), // plural - subtitle: result.teachers.join(", "), - ), - ]), - const SliverToBoxAdapter( - child: Divider(), - ), - SliverGrid.extent( - maxCrossAxisExtent: 240, - childAspectRatio: 3, - children: items - .map((item) => ListTile( - title: "${item.scoreType} ${item.percentage}".text(), - subtitle: item.score.toString().text(), - )) - .toList(), - ), - ], - ), - ); - } -} diff --git a/lib/school/exam_result/page/evaluation.dart b/lib/school/exam_result/page/evaluation.dart deleted file mode 100644 index 97fdbf20d..000000000 --- a/lib/school/exam_result/page/evaluation.dart +++ /dev/null @@ -1,110 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/settings/dev.dart'; -import 'package:sit/utils/cookies.dart'; -import 'package:sit/widgets/webview/injectable.dart'; -import 'package:sit/widgets/webview/page.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:webview_flutter/webview_flutter.dart'; - -import '../i18n.dart'; - -class TeacherEvaluationPage extends StatefulWidget { - const TeacherEvaluationPage({super.key}); - - @override - State createState() => _TeacherEvaluationPageState(); -} - -final teacherEvaluationUri = Uri( - scheme: 'http', - host: 'jwxt.sit.edu.cn', - path: '/jwglxt/xspjgl/xspj_cxXspjIndex.html', - queryParameters: { - 'doType': 'details', - 'gnmkdm': 'N401605', - 'layout': 'default', - // 'su': studentId, - }, -); - -const _skipCountingDownPageJs = """ -onClickMenu.call(this, '/xspjgl/xspj_cxXspjIndex.html?doType=details', 'N401605', { "offDetails": "1" }) -"""; - -class _TeacherEvaluationPageState extends State { - final $autoScore = ValueNotifier(100); - final controller = WebViewController(); - List? cookies; - - @override - void initState() { - super.initState(); - $autoScore.addListener(setAllScores); - loadCookies(); - } - - @override - void dispose() { - $autoScore.dispose(); - $autoScore.removeListener(setAllScores); - super.dispose(); - } - - Future setAllScores() async { - await controller.runJavaScript( - "for(const e of document.getElementsByClassName('input-pjf')) e.value='${$autoScore.value}'", - ); - } - - Future loadCookies() async { - // refresh the cookies - await Init.ugRegSession.request( - teacherEvaluationUri.toString(), - options: Options( - method: "GET", - ), - ); - final cookies = await Init.cookieJar.loadAsWebViewCookie(teacherEvaluationUri); - setState(() { - this.cookies = cookies; - }); - } - - @override - Widget build(BuildContext context) { - final cookies = this.cookies; - if (cookies == null) return const SizedBox(); - return WebViewPage( - controller: controller, - initialUrl: teacherEvaluationUri.toString(), - fixedTitle: i18n.teacherEvalTitle, - initialCookies: cookies, - pageFinishedInjections: const [ - Injection( - js: _skipCountingDownPageJs, - ), - ], - bottomNavigationBar: Dev.on - ? BottomAppBar( - height: 40, - child: buildAutofillScore(), - ) - : null, - ); - } - - Widget buildAutofillScore() { - return $autoScore >> - (context, value) => Slider( - min: 0, - max: 100, - divisions: 100, - label: value.toString(), - value: value.toDouble(), - onChanged: (v) => $autoScore.value = v.toInt(), - ); - } -} diff --git a/lib/school/exam_result/page/gpa.dart b/lib/school/exam_result/page/gpa.dart deleted file mode 100644 index 83733ecf6..000000000 --- a/lib/school/exam_result/page/gpa.dart +++ /dev/null @@ -1,331 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/animation/progress.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/design/widgets/grouped.dart'; -import 'package:sit/design/widgets/multi_select.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/exam_result/entity/gpa.dart'; -import 'package:sit/school/exam_result/entity/result.ug.dart'; -import 'package:sit/school/exam_result/init.dart'; -import 'package:sit/school/exam_result/page/details.gpa.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../aggregated.dart'; -import '../i18n.dart'; -import '../utils.dart'; - -class GpaCalculatorPage extends StatefulWidget { - const GpaCalculatorPage({super.key}); - - @override - State createState() => _GpaCalculatorPageState(); -} - -typedef _GpaGroups = ({ - List<({SemesterInfo semester, List items})> groups, - List list -}); - -class _GpaCalculatorPageState extends State { - late _GpaGroups? gpaItems = buildGpaItems(ExamResultInit.ugStorage.getResultList(SemesterInfo.all)); - - final $loadingProgress = ValueNotifier(0.0); - bool isFetching = false; - final $selected = ValueNotifier(const []); - final multiselect = MultiselectController(); - - @override - void initState() { - super.initState(); - fetchAll(); - } - - @override - void dispose() { - multiselect.dispose(); - $loadingProgress.dispose(); - super.dispose(); - } - - _GpaGroups? buildGpaItems(List? resultList) { - if (resultList == null) return null; - final gpaItems = extractExamResultGpaItems(resultList); - final groups = groupExamResultGpaItems(gpaItems); - return (groups: groups, list: gpaItems); - } - - Future fetchAll() async { - setState(() { - isFetching = true; - }); - try { - final (semester2Results: _, :all) = await ExamResultAggregated.fetchAndCacheExamResultUgEachSemester( - onProgress: (p) { - if (!mounted) return; - $loadingProgress.value = p; - }, - ); - if (!mounted) return; - setState(() { - gpaItems = buildGpaItems(all); - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final gpaItems = this.gpaItems; - return Scaffold( - body: MultiselectScope( - controller: multiselect, - dataSource: gpaItems?.list ?? const [], - onSelectionChanged: (indexes, items) { - $selected.value = items; - }, - child: CustomScrollView( - slivers: [ - SliverAppBar( - pinned: true, - title: buildTitle(), - actions: [ - PlatformTextButton( - onPressed: () { - multiselect.clearSelection(); - }, - child: Text(i18n.cancel), - ) - ], - bottom: isFetching - ? PreferredSize( - preferredSize: const Size.fromHeight(4), - child: $loadingProgress >> (ctx, value) => AnimatedProgressBar(value: value), - ) - : null, - ), - if (gpaItems != null) - if (gpaItems.groups.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noResultsTip, - ), - ), - if (gpaItems != null) - ...gpaItems.groups.map((e) => ExamResultGroupBySemester( - semester: e.semester, - items: e.items, - )), - ], - ), - ), - bottomNavigationBar: BottomAppBar( - padding: EdgeInsets.zero, - child: buildCourseCatChoices().sized(h: 40), - ), - ); - } - - Widget buildTitle() { - return $selected >> - (ctx, selected) => selected.isEmpty - ? i18n.gpa.title.text() - : TextScroll(_buildGpaText( - items: selected, - showSelectedCount: false, - )); - } - - Widget buildCourseCatChoices() { - return $selected >> - (ctx, selected) { - return ListView( - scrollDirection: Axis.horizontal, - physics: const RangeMaintainingScrollPhysics(), - children: [ - ActionChip( - label: i18n.gpa.selectAll.text(), - onPressed: selected.length != gpaItems?.list.length - ? () { - multiselect.selectAll(); - } - : null, - ).padH(4), - ActionChip( - label: i18n.gpa.invert.text(), - onPressed: () { - multiselect.invertSelection(); - }, - ).padH(4), - ActionChip( - label: i18n.gpa.exceptGenEd.text(), - onPressed: selected.any((item) => item.courseCat == CourseCat.genEd) - ? () { - multiselect.setSelectedIndexes(selected - .where((item) => item.courseCat != CourseCat.genEd) - .map((item) => item.index) - .toList()); - } - : null, - ).padH(4), - ActionChip( - label: i18n.gpa.exceptFailed.text(), - onPressed: selected.any((item) => !item.passed) - ? () { - multiselect.setSelectedIndexes( - selected.where((item) => item.passed).map((item) => item.index).toList()); - } - : null, - ).padH(4), - ], - ); - }; - } -} - -class ExamResultGroupBySemester extends StatefulWidget { - final SemesterInfo semester; - final List items; - - const ExamResultGroupBySemester({ - super.key, - required this.semester, - required this.items, - }); - - @override - State createState() => _ExamResultGroupBySemesterState(); -} - -class _ExamResultGroupBySemesterState extends State { - @override - Widget build(BuildContext context) { - final scope = MultiselectScope.controllerOf(context); - final selectedIndicesSet = scope.selectedIndexes.toSet(); - final indicesOfGroup = widget.items.map((item) => item.index).toSet(); - final intersection = selectedIndicesSet.intersection(indicesOfGroup); - final selectedItems = intersection.map((i) => scope[i]).toList(); - final isGroupNoneSelected = intersection.isEmpty; - final isGroupAllSelected = intersection.length == indicesOfGroup.length; - return GroupedSection( - headerBuilder: (context, expanded, toggleExpand, defaultTrailing) { - return ListTile( - leading: Icon(expanded ? Icons.expand_less : Icons.expand_more), - title: widget.semester.l10n().text(), - subtitle: _buildGpaText(items: selectedItems).text(), - titleTextStyle: context.textTheme.titleMedium, - onTap: toggleExpand, - trailing: PlatformIconButton( - icon: Icon( - isGroupNoneSelected - ? context.icons.checkBoxBlankOutlineRounded - : isGroupAllSelected - ? context.icons.checkBoxCheckedOutlineRounded - : context.icons.checkBoxIndeterminateOutlineRounded, - ), - onPressed: () { - for (final item in widget.items) { - if (isGroupAllSelected) { - scope.unselect(item.index); - } else { - scope.select(item.index); - } - } - }, - ), - ); - }, - itemCount: widget.items.length, - itemBuilder: (ctx, i) { - final item = widget.items[i]; - final selected = scope.isSelectedIndex(item.index); - return ExamResultGpaTile( - item, - selected: selected, - onTap: () { - scope.toggle(item.index); - }, - onLongPress: () async { - await ctx.showSheet((ctx) => ExamResultGpaItemDetailsPage(item)); - }, - ).inFilledCard(clip: Clip.hardEdge); - }); - } -} - -class ExamResultGpaTile extends StatelessWidget { - final ExamResultGpaItem item; - final VoidCallback? onTap; - final VoidCallback? onLongPress; - final bool selected; - - const ExamResultGpaTile( - this.item, { - super.key, - this.onTap, - this.onLongPress, - required this.selected, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - final result = item.initial; - assert(item.maxScore != null); - final score = item.maxScore ?? 0.0; - return ListTile( - isThreeLine: true, - selected: selected, - leading: Icon(selected ? context.icons.checkBoxCheckedOutlineRounded : context.icons.checkBoxBlankOutlineRounded) - .padAll(8), - titleTextStyle: textTheme.titleMedium, - title: Text(result.courseName), - subtitleTextStyle: textTheme.bodyMedium, - subtitle: [ - '${i18n.course.credit}: ${result.credit}'.text(), - if (result.teachers.isNotEmpty) result.teachers.join(", ").text(), - ].column(caa: CrossAxisAlignment.start, mas: MainAxisSize.min), - leadingAndTrailingTextStyle: textTheme.labelSmall?.copyWith( - fontSize: textTheme.bodyLarge?.fontSize, - color: item.passed ? null : context.$red$, - ), - trailing: score.toString().text(), - onTap: onTap, - onLongPress: onLongPress, - ); - } -} - -String _buildGpaText({ - required List items, - bool showSelectedCount = true, -}) { - if (items.isEmpty) { - return i18n.gpa.lessonSelected(items.length); - } - final validItems = items.map((item) { - final maxScore = item.maxScore; - if (maxScore == null) return null; - return (score: maxScore, credit: item.credit); - }).whereNotNull(); - final (:gpa, :credit) = calcGPA(validItems); - var text = "${i18n.gpa.credit(credit)} ${i18n.gpa.gpaResult(gpa)}"; - if (showSelectedCount) { - text = "${i18n.gpa.lessonSelected(items.length)} $text"; - } - return text; -} diff --git a/lib/school/exam_result/page/result.pg.dart b/lib/school/exam_result/page/result.pg.dart deleted file mode 100644 index b9e9be3b0..000000000 --- a/lib/school/exam_result/page/result.pg.dart +++ /dev/null @@ -1,106 +0,0 @@ -import 'package:fit_system_screenshot/fit_system_screenshot.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/result.pg.dart'; -import '../init.dart'; -import '../widgets/pg.dart'; -import '../i18n.dart'; - -class ExamResultPgPage extends StatefulWidget { - const ExamResultPgPage({super.key}); - - @override - State createState() => _ExamResultPgPageState(); -} - -class _ExamResultPgPageState extends State { - List? resultList; - bool isFetching = false; - bool isSelecting = false; - - Dispose? screenShotDispose; - final scrollAreaKey = GlobalKey(); - final scrollController = ScrollController(); - - @override - void initState() { - super.initState(); - screenShotDispose = fitSystemScreenshot.attachToPage( - scrollAreaKey, - scrollController, - scrollController.jumpTo, - ); - refresh(); - } - - @override - void dispose() { - screenShotDispose?.call(); - scrollController.dispose(); - super.dispose(); - } - - Future refresh() async { - if (!mounted) return; - setState(() { - resultList = ExamResultInit.pgStorage.getResultList(); - isFetching = true; - }); - try { - final resultList = await ExamResultInit.pgService.fetchResultList(); - await ExamResultInit.pgStorage.setResultList(resultList); - if (!mounted) return; - setState(() { - this.resultList = resultList; - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final resultList = this.resultList; - return Scaffold( - body: CustomScrollView( - key: scrollAreaKey, - controller: scrollController, - slivers: [ - SliverAppBar.medium( - title: i18n.title.text(), - bottom: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - if (resultList != null) - if (resultList.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noResultsTip, - ), - ) - else - SliverList.builder( - itemCount: resultList.length, - itemBuilder: (item, i) => ExamResultPgCard( - resultList[i], - elevated: false, - ), - ), - ], - ), - ); - } -} diff --git a/lib/school/exam_result/page/result.ug.dart b/lib/school/exam_result/page/result.ug.dart deleted file mode 100644 index 49fc29b84..000000000 --- a/lib/school/exam_result/page/result.ug.dart +++ /dev/null @@ -1,149 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/animation/progress.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/school/exam_result/aggregated.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/school/widgets/semester.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/guard_launch.dart'; -import 'package:universal_platform/universal_platform.dart'; - -import '../entity/result.ug.dart'; -import '../init.dart'; -import '../widgets/ug.dart'; -import '../i18n.dart'; -import 'evaluation.dart'; - -class ExamResultUgPage extends ConsumerStatefulWidget { - const ExamResultUgPage({super.key}); - - @override - ConsumerState createState() => _ExamResultUgPageState(); -} - -class _ExamResultUgPageState extends ConsumerState { - late SemesterInfo initial = ExamResultInit.ugStorage.lastSemesterInfo ?? estimateCurrentSemester(); - late List? resultList = ExamResultInit.ugStorage.getResultList(initial); - bool isFetching = false; - final $loadingProgress = ValueNotifier(0.0); - late SemesterInfo selected = initial; - - @override - void initState() { - super.initState(); - fetch(); - } - - @override - void dispose() { - $loadingProgress.dispose(); - super.dispose(); - } - - Future fetch() async { - if (!mounted) return; - setState(() { - isFetching = true; - }); - try { - final (:semester2Results, all: _) = await ExamResultAggregated.fetchAndCacheExamResultUgEachSemester( - onProgress: (p) { - if (!mounted) return; - $loadingProgress.value = p; - }, - ); - if (!mounted) return; - setState(() { - resultList = semester2Results[selected]; - isFetching = false; - }); - $loadingProgress.value = 0; - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - $loadingProgress.value = 0; - } - } - - Future onChangeSemester(SemesterInfo info) async { - if (!mounted) return; - setState(() { - resultList = ExamResultInit.ugStorage.getResultList(info); - }); - } - - @override - Widget build(BuildContext context) { - final resultList = this.resultList; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.title.text(), - actions: [ - PlatformTextButton( - child: i18n.teacherEval.text(), - onPressed: () async { - if (UniversalPlatform.isDesktop) { - await guardLaunchUrl(context, teacherEvaluationUri); - } else { - await context.push("/teacher-eval"); - } - }, - ) - ], - ), - SliverToBoxAdapter( - child: buildSemesterSelector(), - ), - if (resultList != null) - if (resultList.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noResultsTip, - ), - ) - else - SliverList.builder( - itemCount: resultList.length, - itemBuilder: (item, i) => ExamResultUgTile( - resultList[i], - ).inFilledCard(clip: Clip.hardEdge), - ), - ], - ), - bottomNavigationBar: isFetching - ? PreferredSize( - preferredSize: const Size.fromHeight(4), - child: $loadingProgress >> (ctx, value) => AnimatedProgressBar(value: value), - ) - : null, - ); - } - - Widget buildSemesterSelector() { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - return SemesterSelector( - initial: initial, - baseYear: getAdmissionYearFromStudentId(credentials?.account), - onSelected: (newSelection) { - ExamResultInit.ugStorage.lastSemesterInfo = newSelection; - setState(() { - selected = newSelection; - resultList = ExamResultInit.ugStorage.getResultList(newSelection); - }); - }, - ); - } -} diff --git a/lib/school/exam_result/service/result.pg.dart b/lib/school/exam_result/service/result.pg.dart deleted file mode 100644 index 503bff2a5..000000000 --- a/lib/school/exam_result/service/result.pg.dart +++ /dev/null @@ -1,79 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:html/parser.dart'; -import 'package:sit/init.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/session/pg_registration.dart'; - -import '../entity/result.pg.dart'; - -class ExamResultPgService { - static const _postgraduateScoresUrl = "http://gms.sit.edu.cn/epstar/app/template.jsp"; - - PgRegistrationSession get _gmsSession => Init.pgRegSession; - - const ExamResultPgService(); - - Future> fetchResultRawList() async { - final res = await _gmsSession.request( - _postgraduateScoresUrl, - options: Options( - method: "GET", - ), - para: { - "mainobj": "YJSXT/PYGL/CJGLST/V_PYGL_CJGL_KSCJHZB", - "tfile": "KSCJHZB_CJCX_CD/KSCJHZB_XSCX_CD_BD", - }, - ); - final resultRawList = _parse(res.data); - return resultRawList; - } - - Future> fetchResultList() async { - final rawList = await fetchResultRawList(); - return rawList.where((raw) => raw.canParse()).map((raw) => raw.parse()).toList(); - } - - static List _parse(String html) { - List all = []; - - final htmlDocument = parse(html); - final table = htmlDocument - .querySelectorAll('table.t_table')[1] - .querySelector("tbody")! - .querySelectorAll("tr")[1] - .querySelector("td"); - final tbody = table!.querySelector("tbody"); - final trList = tbody!.querySelectorAll("tr"); - for (var tr in trList) { - if (tr.className == "tr_fld_v") { - final tdList = tr.querySelectorAll("td"); - var courseClass = mapChinesePunctuations(tdList[0].text.trim()); - var courseCode = tdList[1].text.trim(); - var courseName = mapChinesePunctuations(tdList[2].text.trim()); - var courseCredit = tdList[3].text.trim(); - var teacher = tdList[4].text.trim(); - var score = tdList[5].text.trim(); - var isPassed = tdList[6].text.trim(); - var examNature = tdList[7].text.trim(); - var examForm = tdList[8].text.trim(); - var examTime = tdList[9].text.trim(); - var notes = tdList[9].text.trim(); - final scoresRaw = ExamResultPgRaw( - courseType: courseClass, - courseCode: courseCode, - courseName: courseName, - credit: courseCredit, - teacher: teacher, - score: score, - passStatus: isPassed, - examType: examNature, - examForm: examForm, - examTime: examTime, - notes: notes, - ); - all.add(scoresRaw); - } - } - return all; - } -} diff --git a/lib/school/exam_result/service/result.pg.demo.dart b/lib/school/exam_result/service/result.pg.demo.dart deleted file mode 100644 index 5700d66cf..000000000 --- a/lib/school/exam_result/service/result.pg.demo.dart +++ /dev/null @@ -1,35 +0,0 @@ -import 'dart:math'; - -import '../entity/result.pg.dart'; -import 'result.pg.dart'; - -class DemoExamResultPgService implements ExamResultPgService { - const DemoExamResultPgService(); - - @override - Future> fetchResultRawList() async { - return []; - } - - @override - Future> fetchResultList() async { - final now = DateTime.now(); - final rand = Random(); - return List.generate(15, (index) { - final score = rand.nextInt(100).toDouble(); - return ExamResultPg( - score: score, - courseName: "小应生活开发实训${rand.nextInt(10)}", - courseCode: "SIT-Life-${rand.nextInt(100)}", - examType: '考试', - courseType: "必修", - credit: 2, - teacher: "Liplum", - notes: "", - time: now.copyWith(day: now.day - rand.nextInt(10)), - passed: score >= 60, - form: '', - ); - }); - } -} diff --git a/lib/school/exam_result/service/result.ug.dart b/lib/school/exam_result/service/result.ug.dart deleted file mode 100644 index 3edac0260..000000000 --- a/lib/school/exam_result/service/result.ug.dart +++ /dev/null @@ -1,127 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/design/animation/progress.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/school/entity/school.dart'; -import 'package:sit/session/ug_registration.dart'; - -import '../entity/result.ug.dart'; - -class ExamResultUgService { - static const _scoreUrl = 'http://jwxt.sit.edu.cn/jwglxt/cjcx/cjcx_cxDgXscj.html'; - static const _scoreDetailsUrl = 'http://jwxt.sit.edu.cn/jwglxt/cjcx/cjcx_cxCjxqGjh.html'; - - /* Why there child is 1,3,5 not 1,2,3? - The example likes follow: - - 【 平时 】 - 40%  - 77.5  - - When you use 1,2,3 to choose the , you will get [] by 2, - it's because /n is chosen by 2 in dart,so here use 1,3,5 to choose - */ - static const _scoreDetailPageSelector = 'div.table-responsive > #subtab > tbody > tr'; - static const _scoreFormSelector = 'td:nth-child(1)'; - static const _scorePercentageSelector = 'td:nth-child(3)'; - static const _scoreValueSelector = 'td:nth-child(5)'; - - UgRegistrationSession get _session => Init.ugRegSession; - - const ExamResultUgService(); - - /// 获取成绩 - Future> fetchResultList( - SemesterInfo info, { - void Function(double progress)? onProgress, - }) async { - final year = info.year; - final progress = ProgressWatcher(callback: onProgress); - final response = await _session.request( - _scoreUrl, - options: Options( - method: "POST", - ), - para: { - 'gnmkdm': 'N305005', - 'doType': 'query', - }, - data: { - // 学年名 - 'xnm': year == null ? "" : year.toString(), - // 学期名 - 'xqm': semesterToFormField(info.semester), - // 获取成绩最大数量 - 'queryModel.showCount': 5000, - }, - ); - progress.value = 0.2; - final resultList = _parseScoreList(response.data); - resultList.sort((a, b) => -ExamResultUg.compareByTime(a, b)); - final perProgress = resultList.isEmpty ? 0 : 0.8 / resultList.length; - final newResultList = await Future.wait(resultList.map((result) async { - final resultItems = await _fetchResultItems( - info: result.semesterInfo, - classId: result.innerClassId, - ); - progress.value += perProgress; - return result.copyWith(items: resultItems); - })); - progress.value = 1; - return newResultList; - } - - static List _parseScoreList(Map json) { - final List? scoreList = json['items']; - if (scoreList == null) return const []; - return scoreList.map((e) => ExamResultUg.fromJson(e as Map)).toList(); - } - - /// 获取成绩详情 - Future> _fetchResultItems({ - required SemesterInfo info, - required String classId, - }) async { - final response = await _session.request( - _scoreDetailsUrl, - options: Options( - method: "POST", - ), - para: {'gnmkdm': 'N305005'}, - data: FormData.fromMap({ - // 班级 - 'jxb_id': classId, - // 学年名 - 'xnm': info.year.toString(), - // 学期名 - 'xqm': semesterToFormField(info.semester) - }), - ); - final html = response.data as String; - return _parseDetailsPage(html); - } - - static List _parseDetailsPage(String htmlPage) { - final BeautifulSoup soup = BeautifulSoup(htmlPage); - final elements = soup.findAll(_scoreDetailPageSelector); - - return elements.map(_mapToDetailsItem).toList(); - } - - static ExamResultItem _mapToDetailsItem(Bs4Element item) { - f1(s) => s.replaceAll(' ', '').replaceAll(' ', ''); - f2(s) => s.replaceAll('【', '').replaceAll('】', ''); - f(s) => f1(f2(s)); - - String type = item.find(_scoreFormSelector)!.innerHtml.trim(); - String percentage = item.find(_scorePercentageSelector)!.innerHtml.trim(); - String value = item.find(_scoreValueSelector)!.innerHtml; - - return ExamResultItem( - scoreType: f(type), - percentage: f(percentage), - score: double.tryParse(f(value)), - ); - } -} diff --git a/lib/school/exam_result/service/result.ug.demo.dart b/lib/school/exam_result/service/result.ug.demo.dart deleted file mode 100644 index ea8093e94..000000000 --- a/lib/school/exam_result/service/result.ug.demo.dart +++ /dev/null @@ -1,51 +0,0 @@ -import 'dart:math'; - -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/utils.dart'; - -import '../entity/result.ug.dart'; -import 'result.ug.dart'; - -class DemoExamResultUgService implements ExamResultUgService { - const DemoExamResultUgService(); - - @override - Future> fetchResultList( - SemesterInfo info, { - void Function(double progress)? onProgress, - }) async { - onProgress?.call(1.0); - final now = DateTime.now(); - final SemesterInfo(:exactYear, :semester) = estimateCurrentSemester(); - final rand = Random(); - return List.generate(15, (index) { - final score = rand.nextInt(100).toDouble(); - return ExamResultUg( - score: score, - courseName: "小应生活开发实训${rand.nextInt(10)}", - courseCode: "SIT-Life-${rand.nextInt(100)}", - innerClassId: "SIT-Life-${rand.nextInt(100)}", - year: exactYear, - semester: semester, - credit: 6.0, - classCode: "Liplum-Dev", - time: now.copyWith(day: now.day - rand.nextInt(10)), - courseCat: CourseCat.publicCore, - examType: UgExamType.normal, - teachers: ["Liplum"], - items: [ - ExamResultItem( - scoreType: 'A', - percentage: '50%', - score: score * 0.5, - ), - ExamResultItem( - scoreType: 'B', - percentage: '50%', - score: score * 0.5, - ), - ], - ); - }); - } -} diff --git a/lib/school/exam_result/storage/result.pg.dart b/lib/school/exam_result/storage/result.pg.dart deleted file mode 100644 index 556985482..000000000 --- a/lib/school/exam_result/storage/result.pg.dart +++ /dev/null @@ -1,22 +0,0 @@ -import 'package:sit/utils/hive.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/school/exam_result/entity/result.pg.dart'; -import 'package:sit/storage/hive/init.dart'; - -class _K { - static const ns = "/pg"; - - static const resultList = "$ns/resultList"; -} - -class ExamResultPgStorage { - Box get box => HiveInit.examResult; - - ExamResultPgStorage(); - - List? getResultList() => box.safeGet(_K.resultList)?.cast(); - - Future setResultList(List? newV) => box.safePut(_K.resultList, newV); - - late final $resultList = box.provider>(_K.resultList, get: getResultList); -} diff --git a/lib/school/exam_result/storage/result.ug.dart b/lib/school/exam_result/storage/result.ug.dart deleted file mode 100644 index c33fca491..000000000 --- a/lib/school/exam_result/storage/result.ug.dart +++ /dev/null @@ -1,38 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/school/entity/school.dart'; - -import '../entity/result.ug.dart'; - -class _K { - static const ns = "/ug"; - static const lastSemesterInfo = "$ns/lastSemesterInfo"; - - static String resultList(SemesterInfo info) => "$ns/resultList/$info"; -} - -class ExamResultUgStorage { - Box get box => HiveInit.examResult; - - ExamResultUgStorage(); - - List? getResultList(SemesterInfo info) => box.safeGet(_K.resultList(info))?.cast(); - - Future setResultList(SemesterInfo info, List? results) => - box.safePut(_K.resultList(info), results); - - ValueListenable listenResultList(SemesterInfo info) => box.listenable(keys: [_K.resultList(info)]); - - SemesterInfo? get lastSemesterInfo => box.safeGet(_K.lastSemesterInfo); - - set lastSemesterInfo(SemesterInfo? newV) => box.safePut(_K.lastSemesterInfo, newV); - - Stream watchResultList(SemesterInfo Function() getFilter) => - box.watch().where((event) => event.key == _K.resultList(getFilter())); - - late final $resultListFamily = box.streamChangeProviderFamily( - (e, semester) => e.key == _K.resultList(semester), - ); -} diff --git a/lib/school/exam_result/utils.dart b/lib/school/exam_result/utils.dart deleted file mode 100644 index a61c3d128..000000000 --- a/lib/school/exam_result/utils.dart +++ /dev/null @@ -1,59 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:sit/school/entity/school.dart'; - -import 'entity/gpa.dart'; -import 'entity/result.ug.dart'; - -({double gpa, double credit}) calcGPA(Iterable<({double score, double credit})> resultList) { - double totalCredits = 0.0; - double sum = 0.0; - - for (final s in resultList) { - final score = s.score; - assert(score >= 0, "Exam score should be >= 0"); - totalCredits += s.credit; - sum += s.credit * score; - } - final res = sum / totalCredits / 10.0 - 5.0; - return (gpa: res.isNaN ? 0 : res, credit: totalCredits); -} - -List filterGpaAvailableResult(List list) { - return list.where((result) => result.score != null && !result.isPreparatory).toList(); -} - -List<({SemesterInfo semester, List results})> groupExamResultList(List list) { - final semester2Result = list.groupListsBy((result) => result.semesterInfo); - final groups = semester2Result.entries.map((entry) => (semester: entry.key, results: entry.value)).toList(); - groups.sortBy((group) => group.semester); - return groups; -} - -List extractExamResultGpaItems(List list) { - final groupByExamType = list.groupListsBy((result) => result.examType); - final normal = groupByExamType[UgExamType.normal] ?? []; - final resit = groupByExamType[UgExamType.resit] ?? []; - final retake = groupByExamType[UgExamType.retake] ?? []; - - final res = []; - var index = 0; - for (final exam in normal) { - final relatedResit = resit.where((e) => e.courseCode == exam.courseCode).toList(); - final relatedRetake = retake.where((e) => e.courseCode == exam.courseCode).toList(); - res.add(ExamResultGpaItem( - index: index, - initial: exam, - resit: relatedResit, - retake: relatedRetake, - )); - index++; - } - return res; -} - -List<({SemesterInfo semester, List items})> groupExamResultGpaItems(List list) { - final semester2Result = list.groupListsBy((result) => result.semesterInfo); - final groups = semester2Result.entries.map((entry) => (semester: entry.key, items: entry.value)).toList(); - groups.sortBy((group) => group.semester); - return groups; -} diff --git a/lib/school/exam_result/widgets/pg.dart b/lib/school/exam_result/widgets/pg.dart deleted file mode 100644 index 54bc5feed..000000000 --- a/lib/school/exam_result/widgets/pg.dart +++ /dev/null @@ -1,70 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/school/widgets/course.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../entity/result.pg.dart'; -import '../i18n.dart'; - -class ExamResultPgCard extends StatelessWidget { - final bool elevated; - final ExamResultPg result; - - const ExamResultPgCard( - this.result, { - super.key, - required this.elevated, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - return ListTile( - isThreeLine: true, - leading: CourseIcon(courseName: result.courseName), - titleTextStyle: textTheme.titleMedium, - title: Text(result.courseName), - subtitleTextStyle: textTheme.bodyMedium, - subtitle: [ - '${result.courseType} ${result.teacher}'.text(), - '${result.examType} | ${i18n.course.credit}: ${result.credit}'.text(), - ].column(caa: CrossAxisAlignment.start), - leadingAndTrailingTextStyle: textTheme.labelSmall?.copyWith( - fontSize: textTheme.bodyLarge?.fontSize, - color: result.passed ? null : context.$red$, - ), - trailing: result.score.toString().text(), - ).inAnyCard(clip: Clip.hardEdge, type: elevated ? CardVariant.elevated : CardVariant.filled); - } -} - -class ExamResultPgCarouselCard extends StatelessWidget { - final bool elevated; - final ExamResultPg result; - - const ExamResultPgCarouselCard( - this.result, { - super.key, - required this.elevated, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - return Card( - child: [ - CourseIcon(courseName: result.courseName), - TextScroll(result.courseName), - result.teacher.text(), - result.score.toString().text( - style: textTheme.labelSmall?.copyWith( - fontSize: textTheme.bodyLarge?.fontSize, - color: result.passed ? null : context.$red$, - ), - ), - ].column(maa: MainAxisAlignment.center), - ); - } -} diff --git a/lib/school/exam_result/widgets/ug.dart b/lib/school/exam_result/widgets/ug.dart deleted file mode 100644 index e43dad7c6..000000000 --- a/lib/school/exam_result/widgets/ug.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/school/exam_result/page/details.ug.dart'; -import 'package:sit/school/widgets/course.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../i18n.dart'; -import '../entity/result.ug.dart'; - -class ExamResultUgTile extends StatelessWidget { - final ExamResultUg result; - - const ExamResultUgTile( - this.result, { - super.key, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - final score = result.score; - return ListTile( - isThreeLine: true, - leading: CourseIcon(courseName: result.courseName), - titleTextStyle: textTheme.titleMedium, - title: Text(result.courseName), - subtitleTextStyle: textTheme.bodyMedium, - subtitle: [ - result.examType.l10n().text(), - if (result.teachers.isNotEmpty) result.teachers.join(", ").text(), - ].column(caa: CrossAxisAlignment.start, mas: MainAxisSize.min), - leadingAndTrailingTextStyle: textTheme.labelSmall?.copyWith( - fontSize: textTheme.bodyLarge?.fontSize, - color: result.passed ? null : context.$red$, - ), - trailing: score != null ? score.toString().text() : i18n.courseNotEval.text(), - onTap: () async { - context.showSheet((ctx) => ExamResultUgDetailsPage(result)); - }, - ); - } -} diff --git a/lib/school/i18n.dart b/lib/school/i18n.dart deleted file mode 100644 index 6c4d8ef63..000000000 --- a/lib/school/i18n.dart +++ /dev/null @@ -1,74 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "school"; - final course = const CourseI18n(); - final settings = const _Settings(); - - String get title => "$ns.title".tr(); - - String get navigation => "$ns.navigation".tr(); -} - -class CourseI18n { - const CourseI18n(); - - static const ns = "${_I18n.ns}.course"; - - String get courseName => "$ns.courseName".tr(); - - String get classCode => "$ns.classCode".tr(); - - String get courseCode => "$ns.courseCode".tr(); - - String get place => "$ns.place".tr(); - - String get displayable => "$ns.displayable".tr(); - - String teacher(int count) => "$ns.teacher".plural(count); - - String get credit => "$ns.credit".tr(); - - String get schoolYear => "$ns.schoolYear".tr(); - - String get semester => "$ns.semester".tr(); - - String get category => "$ns.category".tr(); - - String get compulsory => "$ns.compulsory".tr(); - - String get elective => "$ns.elective".tr(); -} - -class _Settings { - const _Settings(); - - static const ns = "${_I18n.ns}.settings"; - final class2nd = const _Class2nd(); - final examResult = const _ExamResult(); -} - -class _Class2nd { - static const ns = "${_Settings.ns}.class2nd"; - - const _Class2nd(); - - String get autoRefresh => "$ns.autoRefresh.title".tr(); - - String get autoRefreshDesc => "$ns.autoRefresh.desc".tr(); -} - -class _ExamResult { - static const ns = "${_Settings.ns}.examResult"; - - const _ExamResult(); - - String get showResultPreview => "$ns.showResultPreview.title".tr(); - - String get showResultPreviewDesc => "$ns.showResultPreview.desc".tr(); -} diff --git a/lib/school/index.dart b/lib/school/index.dart deleted file mode 100644 index 01523ee4c..000000000 --- a/lib/school/index.dart +++ /dev/null @@ -1,94 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/school/class2nd/index.dart'; -import 'package:sit/school/event.dart'; -import 'package:sit/school/exam_arrange/index.dart'; -import 'package:sit/school/exam_result/index.pg.dart'; -import 'package:sit/school/exam_result/index.ug.dart'; -import 'package:sit/school/library/index.dart'; -import 'package:sit/school/oa_announce/index.dart'; -import 'package:sit/school/yellow_pages/index.dart'; -import 'package:sit/school/ywb/index.dart'; -import 'package:rettulf/rettulf.dart'; -import 'i18n.dart'; - -class SchoolPage extends ConsumerStatefulWidget { - const SchoolPage({super.key}); - - @override - ConsumerState createState() => _SchoolPageState(); -} - -class _SchoolPageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final userType = ref.watch(CredentialsInit.storage.$oaUserType); - final loginStatus = ref.watch(CredentialsInit.storage.$oaLoginStatus); - return Scaffold( - resizeToAvoidBottomInset: false, - body: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - title: i18n.navigation.text(), - forceElevated: innerBoxIsScrolled, - ), - ), - ]; - }, - body: RefreshIndicator.adaptive( - triggerMode: RefreshIndicatorTriggerMode.anywhere, - onRefresh: () async { - debugPrint("School page refreshed"); - await HapticFeedback.heavyImpact(); - await schoolEventBus.notifyListeners(); - }, - child: CustomScrollView( - slivers: [ - if (loginStatus != LoginStatus.never) ...[ - if (userType?.capability.enableClass2nd == true) - const SliverToBoxAdapter( - child: Class2ndAppCard(), - ), - if (userType?.capability.enableExamArrange == true) - const SliverToBoxAdapter( - child: ExamArrangeAppCard(), - ), - if (userType?.capability.enableExamResult == true) - if (userType == OaUserType.undergraduate) - const SliverToBoxAdapter( - child: ExamResultUgAppCard(), - ) - else if (userType == OaUserType.postgraduate) - const SliverToBoxAdapter( - child: ExamResultPgAppCard(), - ), - ], - if (loginStatus != LoginStatus.never) - const SliverToBoxAdapter( - child: OaAnnounceAppCard(), - ), - if (loginStatus != LoginStatus.never) - const SliverToBoxAdapter( - child: YwbAppCard(), - ), - const SliverToBoxAdapter( - child: LibraryAppCard(), - ), - const SliverToBoxAdapter( - child: YellowPagesAppCard(), - ), - ], - ), - ), - ), - ); - } -} diff --git a/lib/school/init.dart b/lib/school/init.dart deleted file mode 100644 index 685b0504b..000000000 --- a/lib/school/init.dart +++ /dev/null @@ -1,9 +0,0 @@ -import 'package:sit/design/adaptive/editor.dart'; - -import 'entity/school.dart'; - -class SchoolInit { - static void init() { - EditorEx.registerEnumEditor(Semester.values); - } -} diff --git a/lib/school/library/aggregated.dart b/lib/school/library/aggregated.dart deleted file mode 100644 index bda78c824..000000000 --- a/lib/school/library/aggregated.dart +++ /dev/null @@ -1,55 +0,0 @@ -import 'entity/collection_preview.dart'; -import 'entity/image.dart'; -import 'entity/book.dart'; -import 'init.dart'; - -class LibraryAggregated { - /// The result isbn the same as [isbnList] - static Future> fetchBookImages({ - required List isbnList, - }) async { - final result = {}; - final searchRequired = []; - for (final isbn in isbnList) { - final image = LibraryInit.imageStorage.getImage(isbn); - if (image == null) { - searchRequired.add(isbn); - } else { - result[isbn] = image; - } - } - if (searchRequired.isNotEmpty) { - final isbn2Image = await LibraryInit.bookImageSearch.searchByIsbnList(searchRequired); - for (final isbn in searchRequired) { - final image = isbn2Image[isbn.replaceAll('-', '')]; - if (image != null) { - result[isbn] = image; - await LibraryInit.imageStorage.setImage(isbn, image); - } - } - } - return result; - } - - static Future fetchBookImage({required String isbn}) async { - final result = await fetchBookImages(isbnList: [isbn]); - return result.entries.firstOrNull?.value; - } - - static BookImage? getCachedBookImageByIsbn(String isbn) { - return LibraryInit.imageStorage.getImage(isbn); - } - - /// [Book.bookId] to [BookCollectionItem] - static Future>> fetchBooksCollectionPreviewList({ - required List bookIdList, - }) async { - final bookId2Preview = await LibraryInit.collectionPreviewService.getCollectionPreviews(bookIdList); - return bookId2Preview; - } - - static Future> fetchBookCollectionPreviewList({required String bookId}) async { - final bookId2Previews = await fetchBooksCollectionPreviewList(bookIdList: [bookId]); - return bookId2Previews.values.first; - } -} diff --git a/lib/school/library/api.dart b/lib/school/library/api.dart deleted file mode 100644 index b42192ed9..000000000 --- a/lib/school/library/api.dart +++ /dev/null @@ -1,21 +0,0 @@ -class LibraryApi { - static const opacUrl = 'http://210.35.66.106/opac'; - static const forgotLoginPasswordUrl = "$opacUrl/reader/retrievePassword"; - - static const searchUrl = '$opacUrl/search'; - static const hotSearchUrl = '$opacUrl/hotsearch'; - static const apiUrl = '$opacUrl/api'; - static const bookUrl = '$opacUrl/book'; - - static const loanUrl = '$opacUrl/loan'; - static const currentLoanListUrl = '$loanUrl/currentLoanList'; - static const historyLoanListUrl = '$loanUrl/historyLoanList'; - static const renewList = '$loanUrl/renewList'; - static const doRenewUrl = '$loanUrl/doRenew'; - - static const bookCollectionUrl = '$apiUrl/holding'; - static const bookCollectionPreviewsUrl = '$bookUrl/holdingPreviews'; - static const virtualBookshelfUrl = '$apiUrl/virtualBookshelf'; - - static const bookImageInfoUrl = 'https://book-resource.dataesb.com/websearch/metares'; -} diff --git a/lib/school/library/entity/book.dart b/lib/school/library/entity/book.dart deleted file mode 100644 index 4b5872960..000000000 --- a/lib/school/library/entity/book.dart +++ /dev/null @@ -1,94 +0,0 @@ -import 'package:sit/storage/hive/type_id.dart'; - -part "book.g.dart"; - -@HiveType(typeId: CacheHiveType.libraryBook) -class Book { - @HiveField(0) - final String bookId; - @HiveField(1) - final String isbn; - @HiveField(2) - final String title; - @HiveField(3) - final String author; - @HiveField(4) - final String publisher; - @HiveField(5) - final String publishDate; - @HiveField(6) - final String callNumber; - - const Book({ - required this.bookId, - required this.isbn, - required this.title, - required this.author, - required this.publisher, - required this.publishDate, - required this.callNumber, - }); - - @override - String toString() { - return { - "bookId": bookId, - "isbn": isbn, - "title": title, - "author": author, - "publisher": publisher, - "publishDate": publishDate, - "callNumber": callNumber, - }.toString(); - } -} - -@HiveType(typeId: CacheHiveType.libraryBookDetails) -class BookDetails { - @HiveField(0) - final Map details; - - const BookDetails({ - required this.details, - }); - - @override - String toString() { - return details.toString(); - } -} - -class BookSearchResult { - final int resultCount; - final double useTime; - final int currentPage; - final int totalPage; - final List books; - - const BookSearchResult({ - required this.resultCount, - required this.useTime, - required this.currentPage, - required this.totalPage, - required this.books, - }); - - const BookSearchResult.empty({ - this.resultCount = 0, - required this.useTime, - this.currentPage = 0, - this.totalPage = 0, - this.books = const [], - }); - - @override - String toString() { - return { - "resultCount": resultCount, - "useTime": useTime, - "currentPage": currentPage, - "totalPage": totalPage, - "books": books, - }.toString(); - } -} diff --git a/lib/school/library/entity/book.g.dart b/lib/school/library/entity/book.g.dart deleted file mode 100644 index 180381d68..000000000 --- a/lib/school/library/entity/book.g.dart +++ /dev/null @@ -1,88 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'book.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class BookAdapter extends TypeAdapter { - @override - final int typeId = 105; - - @override - Book read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return Book( - bookId: fields[0] as String, - isbn: fields[1] as String, - title: fields[2] as String, - author: fields[3] as String, - publisher: fields[4] as String, - publishDate: fields[5] as String, - callNumber: fields[6] as String, - ); - } - - @override - void write(BinaryWriter writer, Book obj) { - writer - ..writeByte(7) - ..writeByte(0) - ..write(obj.bookId) - ..writeByte(1) - ..write(obj.isbn) - ..writeByte(2) - ..write(obj.title) - ..writeByte(3) - ..write(obj.author) - ..writeByte(4) - ..write(obj.publisher) - ..writeByte(5) - ..write(obj.publishDate) - ..writeByte(6) - ..write(obj.callNumber); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is BookAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class BookDetailsAdapter extends TypeAdapter { - @override - final int typeId = 107; - - @override - BookDetails read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return BookDetails( - details: (fields[0] as Map).cast(), - ); - } - - @override - void write(BinaryWriter writer, BookDetails obj) { - writer - ..writeByte(1) - ..writeByte(0) - ..write(obj.details); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is BookDetailsAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/library/entity/borrow.dart b/lib/school/library/entity/borrow.dart deleted file mode 100644 index 477d6f768..000000000 --- a/lib/school/library/entity/borrow.dart +++ /dev/null @@ -1,137 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part "borrow.g.dart"; - -@HiveType(typeId: CacheHiveType.libraryBorrowedBook) -class BorrowedBookItem { - @HiveField(0) - final String bookId; - - @HiveField(1) - final DateTime borrowDate; - - @HiveField(2) - final DateTime expireDate; - - @HiveField(3) - final String barcode; - - @HiveField(4) - final String isbn; - - @HiveField(5) - final String callNumber; - - @HiveField(6) - final String title; - - @HiveField(7) - final String location; - - @HiveField(8) - final String author; - @HiveField(9) - final String type; - - const BorrowedBookItem({ - required this.bookId, - required this.barcode, - required this.isbn, - required this.author, - required this.title, - required this.callNumber, - required this.location, - required this.type, - required this.borrowDate, - required this.expireDate, - }); - - @override - String toString() { - return { - "bookId": bookId, - "barcode": barcode, - "isbn": isbn, - "author": author, - "title": title, - "callNumber": callNumber, - "location": location, - "type": type, - "borrowDate": borrowDate, - "expireDate": expireDate, - }.toString(); - } -} - -@HiveType(typeId: CacheHiveType.libraryBorrowingHistoryOp) -enum BookBorrowingHistoryOperation { - @HiveField(0) - borrowing, - @HiveField(1) - returning; - - String l10n() => "library.history.operation.$name".tr(); -} - -@HiveType(typeId: CacheHiveType.libraryBorrowingHistory) -class BookBorrowingHistoryItem { - @HiveField(0) - final String bookId; - - @HiveField(1) - final DateTime processDate; - - @HiveField(2) - final BookBorrowingHistoryOperation operation; - - @HiveField(3) - final String barcode; - - @HiveField(4) - final String title; - - @HiveField(5) - final String isbn; - - @HiveField(6) - final String callNumber; - - @HiveField(7) - final String author; - - @HiveField(8) - final String location; - - @HiveField(9) - final String type; - - const BookBorrowingHistoryItem({ - required this.bookId, - required this.operation, - required this.barcode, - required this.title, - required this.isbn, - required this.callNumber, - required this.location, - required this.type, - required this.author, - required this.processDate, - }); - - @override - String toString() { - return { - "bookId": bookId, - "operateType": operation, - "barcode": barcode, - "title": title, - "isbn": isbn, - "callNo": callNumber, - "location": location, - "type": type, - "author": author, - "processDate": processDate, - }.toString(); - } -} diff --git a/lib/school/library/entity/borrow.g.dart b/lib/school/library/entity/borrow.g.dart deleted file mode 100644 index f3b429ed0..000000000 --- a/lib/school/library/entity/borrow.g.dart +++ /dev/null @@ -1,162 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'borrow.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class BorrowedBookItemAdapter extends TypeAdapter { - @override - final int typeId = 108; - - @override - BorrowedBookItem read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return BorrowedBookItem( - bookId: fields[0] as String, - barcode: fields[3] as String, - isbn: fields[4] as String, - author: fields[8] as String, - title: fields[6] as String, - callNumber: fields[5] as String, - location: fields[7] as String, - type: fields[9] as String, - borrowDate: fields[1] as DateTime, - expireDate: fields[2] as DateTime, - ); - } - - @override - void write(BinaryWriter writer, BorrowedBookItem obj) { - writer - ..writeByte(10) - ..writeByte(0) - ..write(obj.bookId) - ..writeByte(1) - ..write(obj.borrowDate) - ..writeByte(2) - ..write(obj.expireDate) - ..writeByte(3) - ..write(obj.barcode) - ..writeByte(4) - ..write(obj.isbn) - ..writeByte(5) - ..write(obj.callNumber) - ..writeByte(6) - ..write(obj.title) - ..writeByte(7) - ..write(obj.location) - ..writeByte(8) - ..write(obj.author) - ..writeByte(9) - ..write(obj.type); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is BorrowedBookItemAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class BookBorrowingHistoryItemAdapter extends TypeAdapter { - @override - final int typeId = 109; - - @override - BookBorrowingHistoryItem read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return BookBorrowingHistoryItem( - bookId: fields[0] as String, - operation: fields[2] as BookBorrowingHistoryOperation, - barcode: fields[3] as String, - title: fields[4] as String, - isbn: fields[5] as String, - callNumber: fields[6] as String, - location: fields[8] as String, - type: fields[9] as String, - author: fields[7] as String, - processDate: fields[1] as DateTime, - ); - } - - @override - void write(BinaryWriter writer, BookBorrowingHistoryItem obj) { - writer - ..writeByte(10) - ..writeByte(0) - ..write(obj.bookId) - ..writeByte(1) - ..write(obj.processDate) - ..writeByte(2) - ..write(obj.operation) - ..writeByte(3) - ..write(obj.barcode) - ..writeByte(4) - ..write(obj.title) - ..writeByte(5) - ..write(obj.isbn) - ..writeByte(6) - ..write(obj.callNumber) - ..writeByte(7) - ..write(obj.author) - ..writeByte(8) - ..write(obj.location) - ..writeByte(9) - ..write(obj.type); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is BookBorrowingHistoryItemAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class BookBorrowingHistoryOperationAdapter extends TypeAdapter { - @override - final int typeId = 110; - - @override - BookBorrowingHistoryOperation read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return BookBorrowingHistoryOperation.borrowing; - case 1: - return BookBorrowingHistoryOperation.returning; - default: - return BookBorrowingHistoryOperation.borrowing; - } - } - - @override - void write(BinaryWriter writer, BookBorrowingHistoryOperation obj) { - switch (obj) { - case BookBorrowingHistoryOperation.borrowing: - writer.writeByte(0); - break; - case BookBorrowingHistoryOperation.returning: - writer.writeByte(1); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is BookBorrowingHistoryOperationAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/library/entity/collection.dart b/lib/school/library/entity/collection.dart deleted file mode 100644 index 057a65f94..000000000 --- a/lib/school/library/entity/collection.dart +++ /dev/null @@ -1,288 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; - -part 'collection.g.dart'; - -class BookCollection { - /// 图书记录号(同一本书可能有多本,该参数用于标识同一本书的不同本) - final int bookRecordId; - - /// 图书编号(用于标识哪本书) - final int bookId; - - /// 馆藏状态类型名称 - final String stateTypeName; - - /// 条码号 - final String barcode; - - /// 索书号 - final String callNumber; - - /// 文献所属馆 - final String originLibrary; - - /// 所属馆位置 - final String originLocation; - - /// 文献所在馆 - final String currentLibrary; - - /// 所在馆位置 - final String currentLocation; - - /// 流通类型名称 - final String circulateTypeName; - - /// 流通类型描述 - final String circulateTypeDescription; - - /// 注册日期 - final DateTime registerDate; - - /// 入馆日期 - final DateTime inDate; - - /// 单价 - final double singlePrice; - - /// 总价 - final double totalPrice; - - const BookCollection({ - required this.bookRecordId, - required this.bookId, - required this.stateTypeName, - required this.barcode, - required this.callNumber, - required this.originLibrary, - required this.originLocation, - required this.currentLibrary, - required this.currentLocation, - required this.circulateTypeName, - required this.circulateTypeDescription, - required this.registerDate, - required this.inDate, - required this.singlePrice, - required this.totalPrice, - }); - - @override - String toString() { - return { - "bookRecordId": bookRecordId, - "bookId": bookId, - "stateTypeName": stateTypeName, - "barcode": barcode, - "callNumber": callNumber, - "originLibrary": originLibrary, - "originLocation": originLocation, - "currentLibrary": currentLibrary, - "currentLocation": currentLocation, - "circulateTypeName": circulateTypeName, - "circulateTypeDescription": circulateTypeDescription, - "registerDate": registerDate, - "inDate": inDate, - "singlePrice": singlePrice, - "totalPrice": totalPrice, - }.toString(); - } -} - -/// 图书的流通类型 -@JsonSerializable() -class BookCirculateType { - // 流通类型代码 - @JsonKey(name: 'cirtype') - final String circulateType; - - // 图书馆代码(SITLIB等) - @JsonKey(name: 'libcode') - final String libraryCode; - - // 流通类型名 - final String name; - - // 流通类型描述 - @JsonKey(name: 'descripe') - final String description; - - // 不知道是啥 - final int loanNumSign; - - // 不知道是啥 - final int isPreviService; - - const BookCirculateType( - this.circulateType, this.libraryCode, this.name, this.description, this.loanNumSign, this.isPreviService); - - factory BookCirculateType.fromJson(Map json) => _$BookCirculateTypeFromJson(json); - - Map toJson() => _$BookCirculateTypeToJson(this); -} - -@JsonSerializable() -class BookCollectionState { - final int stateType; - final String stateName; - - const BookCollectionState(this.stateType, this.stateName); - - factory BookCollectionState.fromJson(Map json) => _$BookCollectionStateFromJson(json); - - Map toJson() => _$BookCollectionStateToJson(this); -} - -@JsonSerializable() -class BookCollectionItem { - // 图书记录号(同一本书可能有多本,该参数用于标识同一本书的不同本) - @JsonKey(name: 'recno') - final int bookRecordId; - - // 图书编号(用于标识哪本书) - @JsonKey(name: 'bookrecno') - final int bookId; - - // 馆藏状态类型号 - @JsonKey(name: 'state') - final int stateType; - - // 条码号 - final String barcode; - - // 索书号 - @JsonKey(name: 'callno') - final String callNumber; - - // 文献所属馆 - @JsonKey(name: 'orglib') - final String originLibraryCode; - @JsonKey(name: 'orglocal') - final String originLocationCode; - - // 文献所在馆 - @JsonKey(name: 'curlib') - final String currentLibraryCode; - @JsonKey(name: 'curlocal') - final String currentLocationCode; - - // 流通类型 - @JsonKey(name: 'cirtype') - final String circulateType; - - // 注册日期 - @JsonKey(name: 'regdate') - final String registerDate; - - // String? register_time; - - // 入馆日期 - @JsonKey(name: 'indate') - final String inDate; - - // 单价 - final double singlePrice; - - // 总价 - final double totalPrice; - - const BookCollectionItem({ - required this.bookRecordId, - required this.bookId, - required this.stateType, - required this.barcode, - required this.callNumber, - required this.originLibraryCode, - required this.originLocationCode, - required this.currentLibraryCode, - required this.currentLocationCode, - required this.circulateType, - required this.registerDate, - required this.inDate, - required this.singlePrice, - required this.totalPrice, - }); - -// double totalLoanNum; - factory BookCollectionItem.fromJson(Map json) => _$BookCollectionItemFromJson(json); - - Map toJson() => _$BookCollectionItemToJson(this); -} - -@JsonSerializable() -class BookCollectionInfo { - // 馆藏信息列表 - final List holdingList; - - // "libcodeMap": { - // "SITLIB": "上应大", - // "999": "中心馆" - // }, - - // 图书馆代码字典 - @JsonKey(name: 'libcodeMap') - final Map libraryCodeMap; - - // "localMap": { - // "110": "徐汇社科阅览室", - // "111": "徐汇综合阅览室", - // "001": "奉贤借阅", - // "002": "社科历史地理", - // "003": "奉贤外文", - - @JsonKey(name: 'localMap') - final Map locationMap; - - // "pBCtypeMap": { - // "SIT_US01": { - // "cirtype": "SIT_US01", - // "libcode": "SITLIB", - // "name": "西文图书", - // "descripe": "全局西文图书", - // "loanNumSign": 0, - // "isPreviService": 1 - // }, - // "SIT_US02": { - // "cirtype": "SIT_US02", - @JsonKey(name: 'pBCtypeMap') - final Map circulateTypeMap; - - // "holdStateMap": { - // "32": { - // "stateType": 32, - // "stateName": "已签收" - // }, - // "0": { - // "stateType": 0, - // "stateName": "流通还回上架中" - // }, - // 馆藏状态 - final Map holdStateMap; - - // 不知道是啥 - // "libcodeDeferDateMap": { - // "SITLIB": 7, - // "999": 7 - // } - final Map libcodeDeferDateMap; - - // 不知道是啥 - // "barcodeLocationUrlMap": { - // "SITLIB": "http://210.35.66.106:8088/TSDW/GotoFlash.aspx?szBarCode=", - // "999": "http://210.35.66.106:8088" - // }, - final Map barcodeLocationUrlMap; - - const BookCollectionInfo({ - required this.holdingList, - required this.libraryCodeMap, - required this.locationMap, - required this.circulateTypeMap, - required this.holdStateMap, - required this.libcodeDeferDateMap, - required this.barcodeLocationUrlMap, - }); - - factory BookCollectionInfo.fromJson(Map json) => _$BookCollectionInfoFromJson(json); - - Map toJson() => _$BookCollectionInfoToJson(this); -} diff --git a/lib/school/library/entity/collection.g.dart b/lib/school/library/entity/collection.g.dart deleted file mode 100644 index b08088129..000000000 --- a/lib/school/library/entity/collection.g.dart +++ /dev/null @@ -1,95 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'collection.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -BookCirculateType _$BookCirculateTypeFromJson(Map json) => BookCirculateType( - json['cirtype'] as String, - json['libcode'] as String, - json['name'] as String, - json['descripe'] as String, - (json['loanNumSign'] as num).toInt(), - (json['isPreviService'] as num).toInt(), - ); - -Map _$BookCirculateTypeToJson(BookCirculateType instance) => { - 'cirtype': instance.circulateType, - 'libcode': instance.libraryCode, - 'name': instance.name, - 'descripe': instance.description, - 'loanNumSign': instance.loanNumSign, - 'isPreviService': instance.isPreviService, - }; - -BookCollectionState _$BookCollectionStateFromJson(Map json) => BookCollectionState( - (json['stateType'] as num).toInt(), - json['stateName'] as String, - ); - -Map _$BookCollectionStateToJson(BookCollectionState instance) => { - 'stateType': instance.stateType, - 'stateName': instance.stateName, - }; - -BookCollectionItem _$BookCollectionItemFromJson(Map json) => BookCollectionItem( - bookRecordId: (json['recno'] as num).toInt(), - bookId: (json['bookrecno'] as num).toInt(), - stateType: (json['state'] as num).toInt(), - barcode: json['barcode'] as String, - callNumber: json['callno'] as String, - originLibraryCode: json['orglib'] as String, - originLocationCode: json['orglocal'] as String, - currentLibraryCode: json['curlib'] as String, - currentLocationCode: json['curlocal'] as String, - circulateType: json['cirtype'] as String, - registerDate: json['regdate'] as String, - inDate: json['indate'] as String, - singlePrice: (json['singlePrice'] as num).toDouble(), - totalPrice: (json['totalPrice'] as num).toDouble(), - ); - -Map _$BookCollectionItemToJson(BookCollectionItem instance) => { - 'recno': instance.bookRecordId, - 'bookrecno': instance.bookId, - 'state': instance.stateType, - 'barcode': instance.barcode, - 'callno': instance.callNumber, - 'orglib': instance.originLibraryCode, - 'orglocal': instance.originLocationCode, - 'curlib': instance.currentLibraryCode, - 'curlocal': instance.currentLocationCode, - 'cirtype': instance.circulateType, - 'regdate': instance.registerDate, - 'indate': instance.inDate, - 'singlePrice': instance.singlePrice, - 'totalPrice': instance.totalPrice, - }; - -BookCollectionInfo _$BookCollectionInfoFromJson(Map json) => BookCollectionInfo( - holdingList: (json['holdingList'] as List) - .map((e) => BookCollectionItem.fromJson(e as Map)) - .toList(), - libraryCodeMap: Map.from(json['libcodeMap'] as Map), - locationMap: Map.from(json['localMap'] as Map), - circulateTypeMap: (json['pBCtypeMap'] as Map).map( - (k, e) => MapEntry(k, BookCirculateType.fromJson(e as Map)), - ), - holdStateMap: (json['holdStateMap'] as Map).map( - (k, e) => MapEntry(k, BookCollectionState.fromJson(e as Map)), - ), - libcodeDeferDateMap: Map.from(json['libcodeDeferDateMap'] as Map), - barcodeLocationUrlMap: Map.from(json['barcodeLocationUrlMap'] as Map), - ); - -Map _$BookCollectionInfoToJson(BookCollectionInfo instance) => { - 'holdingList': instance.holdingList, - 'libcodeMap': instance.libraryCodeMap, - 'localMap': instance.locationMap, - 'pBCtypeMap': instance.circulateTypeMap, - 'holdStateMap': instance.holdStateMap, - 'libcodeDeferDateMap': instance.libcodeDeferDateMap, - 'barcodeLocationUrlMap': instance.barcodeLocationUrlMap, - }; diff --git a/lib/school/library/entity/collection_preview.dart b/lib/school/library/entity/collection_preview.dart deleted file mode 100644 index 888b0780a..000000000 --- a/lib/school/library/entity/collection_preview.dart +++ /dev/null @@ -1,56 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; - -part 'collection_preview.g.dart'; - -@JsonSerializable() -class BookCollectionItem { - @JsonKey(name: 'bookrecno') - final int bookId; - @JsonKey(name: 'barcode') - final String barcode; - @JsonKey(name: 'callno') - final String callNumber; - - // 文献所在馆 - @JsonKey(name: 'curlibName') - final String currentLibrary; - - // 所在馆位置 - @JsonKey(name: 'curlocalName') - final String currentLocation; - - // 总共有多少 - @JsonKey(name: 'copycount') - final int copyCount; - - // 可借数量 - @JsonKey(name: 'loanableCount') - final int loanableCount; - - const BookCollectionItem({ - required this.bookId, - required this.barcode, - required this.callNumber, - required this.currentLibrary, - required this.currentLocation, - required this.copyCount, - required this.loanableCount, - }); - - factory BookCollectionItem.fromJson(Map json) => _$BookCollectionItemFromJson(json); - - Map toJson() => _$BookCollectionItemToJson(this); - - @override - String toString() { - return { - "bookId": bookId, - "barcode": barcode, - "callNo": callNumber, - "currentLibrary": currentLibrary, - "currentLocation": currentLocation, - "copyCount": copyCount, - "loanableCount": loanableCount, - }.toString(); - } -} diff --git a/lib/school/library/entity/collection_preview.g.dart b/lib/school/library/entity/collection_preview.g.dart deleted file mode 100644 index 442acdb87..000000000 --- a/lib/school/library/entity/collection_preview.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'collection_preview.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -BookCollectionItem _$BookCollectionItemFromJson(Map json) => BookCollectionItem( - bookId: (json['bookrecno'] as num).toInt(), - barcode: json['barcode'] as String, - callNumber: json['callno'] as String, - currentLibrary: json['curlibName'] as String, - currentLocation: json['curlocalName'] as String, - copyCount: (json['copycount'] as num).toInt(), - loanableCount: (json['loanableCount'] as num).toInt(), - ); - -Map _$BookCollectionItemToJson(BookCollectionItem instance) => { - 'bookrecno': instance.bookId, - 'barcode': instance.barcode, - 'callno': instance.callNumber, - 'curlibName': instance.currentLibrary, - 'curlocalName': instance.currentLocation, - 'copycount': instance.copyCount, - 'loanableCount': instance.loanableCount, - }; diff --git a/lib/school/library/entity/image.dart b/lib/school/library/entity/image.dart deleted file mode 100644 index cb20487a4..000000000 --- a/lib/school/library/entity/image.dart +++ /dev/null @@ -1,30 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'image.g.dart'; - -@JsonSerializable() -@HiveType(typeId: CacheHiveType.libraryBookImage) -class BookImage { - @HiveField(0) - final String isbn; - @JsonKey(name: 'coverlink') - @HiveField(1) - final String coverUrl; - @JsonKey(name: 'resourceLink') - @HiveField(2) - final String resourceUrl; - @HiveField(3) - final int status; - - const BookImage({ - required this.isbn, - required this.coverUrl, - required this.resourceUrl, - required this.status, - }); - - factory BookImage.fromJson(Map json) => _$BookImageFromJson(json); - - Map toJson() => _$BookImageToJson(this); -} diff --git a/lib/school/library/entity/image.g.dart b/lib/school/library/entity/image.g.dart deleted file mode 100644 index a6a67561a..000000000 --- a/lib/school/library/entity/image.g.dart +++ /dev/null @@ -1,65 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'image.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class BookImageAdapter extends TypeAdapter { - @override - final int typeId = 106; - - @override - BookImage read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return BookImage( - isbn: fields[0] as String, - coverUrl: fields[1] as String, - resourceUrl: fields[2] as String, - status: fields[3] as int, - ); - } - - @override - void write(BinaryWriter writer, BookImage obj) { - writer - ..writeByte(4) - ..writeByte(0) - ..write(obj.isbn) - ..writeByte(1) - ..write(obj.coverUrl) - ..writeByte(2) - ..write(obj.resourceUrl) - ..writeByte(3) - ..write(obj.status); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is BookImageAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -BookImage _$BookImageFromJson(Map json) => BookImage( - isbn: json['isbn'] as String, - coverUrl: json['coverlink'] as String, - resourceUrl: json['resourceLink'] as String, - status: (json['status'] as num).toInt(), - ); - -Map _$BookImageToJson(BookImage instance) => { - 'isbn': instance.isbn, - 'coverlink': instance.coverUrl, - 'resourceLink': instance.resourceUrl, - 'status': instance.status, - }; diff --git a/lib/school/library/entity/search.dart b/lib/school/library/entity/search.dart deleted file mode 100644 index e87967e03..000000000 --- a/lib/school/library/entity/search.dart +++ /dev/null @@ -1,145 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:json_annotation/json_annotation.dart'; - -part 'search.g.dart'; - -@JsonEnum() -enum SearchMethod { - any(""), - title("title"), - primaryTitle("title200a"), - isbn("isbn"), - author("author"), - subject("subject"), - $class("class"), - bookId("ctrlno"), - orderNumber("orderno"), - publisher("publisher"), - callNumber("callno"); - - final String internalQueryParameter; - - const SearchMethod(this.internalQueryParameter); - - String l10nName() => "library.searchMethod.$name".tr(); -} - -@JsonEnum() -enum SortMethod { - // 匹配度 - matchScore("score"), - // 出版日期 - publishDate("pubdate_sort"), - // 主题词 - subject("subject_sort"), - // 标题名 - title("title_sort"), - // 作者 - author("author_sort"), - // 索书号 - callNo("callno_sort"), - // 标题名拼音 - pinyin("pinyin_sort"), - // 借阅次数 - loanCount("loannum_sort"), - // 续借次数 - renewCount("renew_sort"), - // 题名权重 - titleWeight("title200Weight"), - // 正题名权重 - primaryTitleWeight("title200aWeight"), - // 卷册号 - volume("title200h"); - - final String internalQueryParameter; - - const SortMethod(this.internalQueryParameter); - - String l10nName() => "library.sortMethod.$name".tr(); -} - -@JsonEnum() -enum SortOrder { - asc("asc"), - desc("desc"); - - final String internalQueryParameter; - - const SortOrder(this.internalQueryParameter); -} - -@JsonSerializable() -class SearchHistoryItem { - @JsonKey() - final String keyword; - @JsonKey() - final SearchMethod searchMethod; - @JsonKey() - final DateTime time; - - SearchHistoryItem({ - required this.keyword, - required this.searchMethod, - required this.time, - }); - - @override - String toString() { - return { - "keyword": keyword, - "searchMethod": searchMethod, - "time": time, - }.toString(); - } - - factory SearchHistoryItem.fromJson(Map json) => _$SearchHistoryItemFromJson(json); - - Map toJson() => _$SearchHistoryItemToJson(this); -} - -@JsonSerializable() -class LibraryTrendsItem { - @JsonKey() - final String keyword; - @JsonKey() - final int count; - - const LibraryTrendsItem({ - required this.keyword, - required this.count, - }); - - @override - String toString() { - return "$keyword($count)"; - } - - factory LibraryTrendsItem.fromJson(Map json) => _$LibraryTrendsItemFromJson(json); - - Map toJson() => _$LibraryTrendsItemToJson(this); -} - -@JsonSerializable() -class LibraryTrends { - @JsonKey() - final List recent30days; - @JsonKey() - final List total; - - const LibraryTrends({ - required this.recent30days, - required this.total, - }); - - @override - String toString() { - return { - "recent30days": recent30days, - "total": total, - }.toString(); - } - - factory LibraryTrends.fromJson(Map json) => _$LibraryTrendsFromJson(json); - - Map toJson() => _$LibraryTrendsToJson(this); -} diff --git a/lib/school/library/entity/search.g.dart b/lib/school/library/entity/search.g.dart deleted file mode 100644 index 791871ef0..000000000 --- a/lib/school/library/entity/search.g.dart +++ /dev/null @@ -1,56 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'search.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -SearchHistoryItem _$SearchHistoryItemFromJson(Map json) => SearchHistoryItem( - keyword: json['keyword'] as String, - searchMethod: $enumDecode(_$SearchMethodEnumMap, json['searchMethod']), - time: DateTime.parse(json['time'] as String), - ); - -Map _$SearchHistoryItemToJson(SearchHistoryItem instance) => { - 'keyword': instance.keyword, - 'searchMethod': _$SearchMethodEnumMap[instance.searchMethod]!, - 'time': instance.time.toIso8601String(), - }; - -const _$SearchMethodEnumMap = { - SearchMethod.any: 'any', - SearchMethod.title: 'title', - SearchMethod.primaryTitle: 'primaryTitle', - SearchMethod.isbn: 'isbn', - SearchMethod.author: 'author', - SearchMethod.subject: 'subject', - SearchMethod.$class: r'$class', - SearchMethod.bookId: 'bookId', - SearchMethod.orderNumber: 'orderNumber', - SearchMethod.publisher: 'publisher', - SearchMethod.callNumber: 'callNumber', -}; - -LibraryTrendsItem _$LibraryTrendsItemFromJson(Map json) => LibraryTrendsItem( - keyword: json['keyword'] as String, - count: (json['count'] as num).toInt(), - ); - -Map _$LibraryTrendsItemToJson(LibraryTrendsItem instance) => { - 'keyword': instance.keyword, - 'count': instance.count, - }; - -LibraryTrends _$LibraryTrendsFromJson(Map json) => LibraryTrends( - recent30days: (json['recent30days'] as List) - .map((e) => LibraryTrendsItem.fromJson(e as Map)) - .toList(), - total: - (json['total'] as List).map((e) => LibraryTrendsItem.fromJson(e as Map)).toList(), - ); - -Map _$LibraryTrendsToJson(LibraryTrends instance) => { - 'recent30days': instance.recent30days, - 'total': instance.total, - }; diff --git a/lib/school/library/i18n.dart b/lib/school/library/i18n.dart deleted file mode 100644 index 5c9ed2e62..000000000 --- a/lib/school/library/i18n.dart +++ /dev/null @@ -1,116 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/login/i18n.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "library"; - final login = const _Login(); - final info = const _Info(); - final action = const _Action(); - final searching = const _Search(); - final borrowing = const _Borrowing(); - final history = const _History(); - - String get title => "$ns.title".tr(); - - String get hotPost => "$ns.hotPost".tr(); - - String get readerId => "$ns.readerId".tr(); - - String get noBooks => "$ns.noBooks".tr(); - - String get collectionStatus => "$ns.collectionStatus".tr(); -} - -class _Action { - const _Action(); - - static const ns = "${_I18n.ns}.action"; - - String get login => "$ns.login".tr(); - - String get searchBooks => "$ns.searchBooks".tr(); - - String get borrowing => "$ns.borrowing".tr(); -} - -class _Login extends CommonLoginI18n { - const _Login(); - - static const ns = "${_I18n.ns}.login"; - - String get title => "$ns.title".tr(); - - String get readerIdHint => "$ns.readerIdHint".tr(); - - String get passwordHint => "$ns.passwordHint".tr(); -} - -class _Info { - const _Info(); - - static const ns = "${_I18n.ns}.info"; - - String get title => "$ns.title".tr(); - - String get author => "$ns.author".tr(); - - String get isbn => "$ns.isbn".tr(); - - String get publisher => "$ns.publisher".tr(); - - String get publishDate => "$ns.publishDate".tr(); - - String get callNumber => "$ns.callNumber".tr(); - - String get bookId => "$ns.bookId".tr(); - - String get barcode => "$ns.barcode".tr(); - - String availableCollection(String available, String collection) => "$ns.availableCollection".tr( - namedArgs: { - "available": available, - "collection": collection, - }, - ); -} - -class _Search { - const _Search(); - - static const ns = "${_I18n.ns}.search"; - - String get searchHistory => "$ns.searchHistory".tr(); - - String get trending => "$ns.trending".tr(); - - String get mostPopular => "$ns.mostPopular".tr(); -} - -class _Borrowing { - const _Borrowing(); - - static const ns = "${_I18n.ns}.borrowing"; - - String get title => "$ns.title".tr(); - - String get history => "$ns.history".tr(); - - String get renew => "$ns.renew".tr(); - - String get noBorrowing => "$ns.noBorrowing".tr(); -} - -class _History { - const _History(); - - static const ns = "${_I18n.ns}.history"; - - String get title => "$ns.title".tr(); - - String get noHistory => "$ns.noHistory".tr(); -} diff --git a/lib/school/library/index.dart b/lib/school/library/index.dart deleted file mode 100644 index d8b4e7be0..000000000 --- a/lib/school/library/index.dart +++ /dev/null @@ -1,88 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/school/library/page/borrowing.dart'; -import 'package:super_context_menu/super_context_menu.dart'; - -import './i18n.dart'; -import 'entity/borrow.dart'; -import 'init.dart'; -import 'page/search.dart'; -import 'utils.dart'; - -class LibraryAppCard extends ConsumerStatefulWidget { - const LibraryAppCard({super.key}); - - @override - ConsumerState createState() => _LibraryAppCardState(); -} - -class _LibraryAppCardState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = LibraryInit.borrowStorage; - final credentials = ref.watch(CredentialsInit.storage.$libraryCredentials); - final borrowedBooks = ref.watch(storage.$borrowed); - return AppCard( - title: i18n.title.text(), - view: borrowedBooks == null ? null : buildBorrowedBook(borrowedBooks), - leftActions: [ - FilledButton.icon( - onPressed: () async { - await showSearch(context: context, delegate: LibrarySearchDelegate()); - }, - icon: Icon(context.icons.search), - label: i18n.action.searchBooks.text(), - ), - if (credentials == null) - OutlinedButton( - onPressed: () async { - await context.push("/library/login"); - }, - child: i18n.action.login.text(), - ) - else - OutlinedButton.icon( - onPressed: () async { - await context.push("/library/borrowing"); - }, - icon: Icon(context.icons.person), - label: i18n.action.borrowing.text(), - ) - ], - ); - } - - Widget? buildBorrowedBook(List books) { - if (books.isEmpty) return null; - final book = books.first; - final card = BorrowedBookCard( - book, - elevated: true, - ); - if (!supportContextMenu) return card; - return Builder( - builder: (ctx) => ContextMenuWidget( - menuProvider: (MenuRequest request) { - return Menu( - children: [ - MenuAction( - image: MenuImage.icon(context.icons.refresh), - title: i18n.borrowing.renew, - callback: () async { - await renewBorrowedBook(ctx, book.barcode); - }, - ), - ], - ); - }, - child: card, - ), - ); - } -} diff --git a/lib/school/library/init.dart b/lib/school/library/init.dart deleted file mode 100644 index 3940df4e0..000000000 --- a/lib/school/library/init.dart +++ /dev/null @@ -1,56 +0,0 @@ -import 'package:sit/school/library/service/auth.dart'; -import 'package:sit/school/library/storage/book.dart'; -import 'package:sit/school/library/storage/borrow.dart'; -import 'package:sit/settings/dev.dart'; - -import 'service/book.demo.dart'; -import 'service/details.dart'; -import 'service/book.dart'; -import 'service/borrow.dart'; -import 'service/collection.dart'; -import 'service/collection_preview.dart'; -import 'service/trends.dart'; -import 'service/image_search.dart'; -import 'service/trends.demo.dart'; -import 'storage/browse.dart'; -import 'storage/image.dart'; -import 'storage/search.dart'; - -class LibraryInit { - static late LibraryAuthService auth; - static late BookDetailsService bookDetailsService; - static late LibraryCollectionInfoService collectionInfoService; - static late BookSearchService bookSearch; - static late BookImageSearchService bookImageSearch; - static late LibraryCollectionPreviewService collectionPreviewService; - static late LibraryTrendsService hotSearchService; - static late LibraryBorrowService borrowService; - - static late LibrarySearchStorage searchStorage; - static late LibraryBookStorage bookStorage; - static late LibraryBorrowStorage borrowStorage; - static late LibraryImageStorage imageStorage; - - static late LibraryBrowseStorage browseStorage; - - static void init() { - auth = const LibraryAuthService(); - - bookSearch = Dev.demoMode ? const DemoBookSearchService() : const BookSearchService(); - bookDetailsService = const BookDetailsService(); - collectionInfoService = const LibraryCollectionInfoService(); - bookImageSearch = const BookImageSearchService(); - collectionPreviewService = const LibraryCollectionPreviewService(); - hotSearchService = Dev.demoMode ? const DemoLibraryTrendsService() : const LibraryTrendsService(); - borrowService = const LibraryBorrowService(); - } - - static void initStorage() { - searchStorage = const LibrarySearchStorage(); - bookStorage = const LibraryBookStorage(); - borrowStorage = LibraryBorrowStorage(); - imageStorage = const LibraryImageStorage(); - - browseStorage = const LibraryBrowseStorage(); - } -} diff --git a/lib/school/library/page/borrowing.dart b/lib/school/library/page/borrowing.dart deleted file mode 100644 index 17e71878d..000000000 --- a/lib/school/library/page/borrowing.dart +++ /dev/null @@ -1,143 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/school/library/init.dart'; -import 'package:sit/school/library/utils.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/borrow.dart'; -import '../i18n.dart'; -import '../widgets/book.dart'; -import 'details.dart'; -import 'details.model.dart'; - -class LibraryBorrowingPage extends StatefulWidget { - const LibraryBorrowingPage({super.key}); - - @override - State createState() => _LibraryBorrowingPageState(); -} - -class _LibraryBorrowingPageState extends State { - bool isFetching = false; - List? borrowed = LibraryInit.borrowStorage.getBorrowedBooks(); - - @override - void initState() { - super.initState(); - fetch(); - } - - Future fetch() async { - if (!mounted) return; - setState(() { - isFetching = true; - }); - try { - final borrowed = await LibraryInit.borrowService.getMyBorrowBookList(); - await LibraryInit.borrowStorage.setBorrowedBooks(borrowed); - if (!mounted) return; - setState(() { - this.borrowed = borrowed; - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final borrowed = this.borrowed; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar( - title: i18n.borrowing.title.text(), - actions: [ - PlatformTextButton( - child: i18n.borrowing.history.text(), - onPressed: () async { - await context.push("/library/borrowing-history"); - }, - ), - ], - bottom: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - if (borrowed != null) - if (borrowed.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.borrowing.noBorrowing, - ), - ) - else - SliverList.builder( - itemCount: borrowed.length, - itemBuilder: (ctx, i) { - return BorrowedBookCard( - borrowed[i], - elevated: false, - ); - }, - ), - ], - ), - ); - } -} - -class BorrowedBookCard extends StatelessWidget { - final BorrowedBookItem book; - final bool elevated; - - const BorrowedBookCard( - this.book, { - super.key, - required this.elevated, - }); - - @override - Widget build(BuildContext context) { - return ListTile( - leading: AsyncBookImage(isbn: book.isbn), - title: book.title.text(), - subtitle: [ - book.author.text(), - "${i18n.info.barcode} ${book.barcode}".text(), - "${i18n.info.isbn} ${book.isbn}".text(), - "${context.formatYmdText(book.borrowDate)}–${context.formatYmdText(book.expireDate)}".text(), - ].column(mas: MainAxisSize.min, caa: CrossAxisAlignment.start), - onTap: () async { - await context.showSheet( - (ctx) => BookDetailsPage( - book: BookModel.fromBorrowed(book), - actions: [ - PlatformTextButton( - onPressed: () async { - await renewBorrowedBook(context, book.barcode); - }, - child: i18n.borrowing.renew.text(), - ) - ], - ), - ); - }, - ).inAnyCard(clip: Clip.hardEdge, type: elevated ? CardVariant.elevated : CardVariant.filled); - } -} diff --git a/lib/school/library/page/details.dart b/lib/school/library/page/details.dart deleted file mode 100644 index d7b035147..000000000 --- a/lib/school/library/page/details.dart +++ /dev/null @@ -1,265 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/school/library/aggregated.dart'; -import 'package:sit/school/library/page/details.model.dart'; -import 'package:sit/school/library/widgets/book.dart'; -import 'package:sit/utils/error.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../entity/book.dart'; -import '../entity/collection_preview.dart'; -import '../entity/search.dart'; -import '../init.dart'; -import '../i18n.dart'; -import 'search_result.dart'; - -class BookDetailsPage extends StatefulWidget { - final BookModel book; - final BookSearchCallback? onSearchTap; - final List? actions; - - const BookDetailsPage({ - super.key, - required this.book, - this.onSearchTap, - this.actions, - }); - - @override - State createState() => _BookDetailsPageState(); -} - -class _BookDetailsPageState extends State { - late BookDetails? details = LibraryInit.bookStorage.getBookDetails(widget.book.bookId); - bool isFetching = false; - final $hasImage = ValueNotifier(true); - - @override - void initState() { - super.initState(); - fetchDetails(); - } - - Future fetchDetails() async { - if (details != null) return; - if (!mounted) return; - setState(() { - isFetching = true; - }); - final bookId = widget.book.bookId; - try { - final details = await LibraryInit.bookDetailsService.query(bookId); - await LibraryInit.bookStorage.setBookDetails(bookId, details); - if (!mounted) return; - setState(() { - this.details = details; - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - return; - } - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - - @override - Widget build(BuildContext context) { - final details = this.details; - final book = widget.book; - final onSearchTap = widget.onSearchTap; - final publisher = book.publisher; - final publishDate = book.publishDate; - return SelectionArea( - child: Scaffold( - body: CustomScrollView( - slivers: [ - $hasImage >> - (ctx, hasImage) => TweenAnimationBuilder( - duration: Durations.long4, - curve: Curves.fastEaseInToSlowEaseOut, - tween: Tween( - begin: 0.0, - end: hasImage ? 300.0 : 0.0, - ), - builder: (context, value, _) { - return SliverAppBar.medium( - expandedHeight: value, - stretch: true, - title: TextScroll(book.title), - flexibleSpace: FlexibleSpaceBar( - background: AsyncBookImage( - isbn: book.isbn, - onHasImageChanged: (value) { - $hasImage.value = value; - }, - ), - ), - actions: widget.actions, - bottom: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ); - }, - ), - SliverList.list(children: [ - DetailListTile( - title: i18n.info.title, - subtitle: book.title, - trailing: onSearchTap == null - ? null - : PlatformIconButton( - icon: Icon(context.icons.search), - onPressed: () { - onSearchTap.call(SearchMethod.title, book.title); - }, - ), - ), - DetailListTile( - title: i18n.info.author, - subtitle: book.author, - trailing: onSearchTap == null - ? null - : PlatformIconButton( - icon: Icon(context.icons.search), - onPressed: () { - onSearchTap.call(SearchMethod.author, book.author); - }, - ), - ), - DetailListTile( - title: i18n.info.isbn, - subtitle: book.isbn, - ), - DetailListTile( - title: i18n.info.callNumber, - subtitle: book.callNumber, - ), - if (publisher != null) - DetailListTile( - title: i18n.info.publisher, - subtitle: publisher, - trailing: onSearchTap == null - ? null - : PlatformIconButton( - icon: const Icon(Icons.youtube_searched_for), - onPressed: () { - onSearchTap.call(SearchMethod.publisher, publisher); - }, - ), - ), - if (publishDate != null) - DetailListTile( - title: i18n.info.publishDate, - subtitle: book.publishDate, - ), - ]), - SliverList.list(children: [ - const Divider(), - BookCollectionPreviewList(book: book), - ]), - if (details != null) - SliverList.list(children: [ - const Divider(), - buildBookDetails(details).padAll(10), - ]), - ], - ), - ), - ); - } - - Widget buildBookDetails(BookDetails info) { - return Table( - columnWidths: const { - 0: FlexColumnWidth(2), - 1: FlexColumnWidth(5), - }, - // border: TableBorder.all(color: Colors.red), - children: info.details.entries - .map( - (e) => TableRow( - children: [ - e.key.text(), - e.value.text(), - ], - ), - ) - .toList(), - ); - } -} - -class BookCollectionPreviewList extends StatefulWidget { - final BookModel book; - - const BookCollectionPreviewList({ - super.key, - required this.book, - }); - - @override - State createState() => _BookCollectionPreviewListState(); -} - -class _BookCollectionPreviewListState extends State { - List? holding; - bool isFetching = false; - - @override - void initState() { - super.initState(); - fetchCollectionPreview(); - } - - Future fetchCollectionPreview() async { - if (!mounted) return; - setState(() { - isFetching = true; - }); - final bookId = widget.book.bookId; - try { - final holding = await LibraryAggregated.fetchBookCollectionPreviewList(bookId: bookId); - if (!mounted) return; - setState(() { - this.holding = holding; - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - return; - } - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - - @override - Widget build(BuildContext context) { - final holding = this.holding; - return [ - ListTile( - leading: const Icon(Icons.book), - title: i18n.collectionStatus.text(), - ), - if (isFetching) - const CircularProgressIndicator.adaptive() - else if (holding != null) - ...holding.map((item) { - return ListTile( - title: item.currentLocation.text(), - subtitle: i18n.info.availableCollection("${item.loanableCount}", "${item.copyCount}").text(), - ); - }) - ].column(); - } -} diff --git a/lib/school/library/page/details.model.dart b/lib/school/library/page/details.model.dart deleted file mode 100644 index ac449e244..000000000 --- a/lib/school/library/page/details.model.dart +++ /dev/null @@ -1,67 +0,0 @@ -import '../entity/book.dart'; -import '../entity/borrow.dart'; - -class BookModel { - final String bookId; - final String isbn; - final String title; - final String author; - final String callNumber; - final String? publisher; - final String? publishDate; - - const BookModel({ - required this.bookId, - required this.isbn, - required this.title, - required this.author, - required this.callNumber, - this.publisher, - this.publishDate, - }); - - @override - String toString() { - return { - "bookId": bookId, - "isbn": isbn, - "title": title, - "author": author, - "publisher": publisher, - "publishDate": publishDate, - "callNumber": callNumber, - }.toString(); - } - - factory BookModel.fromBook(Book book) { - return BookModel( - bookId: book.bookId, - isbn: book.isbn, - title: book.title, - author: book.author, - callNumber: book.callNumber, - publisher: book.publisher, - publishDate: book.publishDate, - ); - } - - factory BookModel.fromBorrowed(BorrowedBookItem book) { - return BookModel( - bookId: book.bookId, - isbn: book.isbn, - title: book.title, - author: book.author, - callNumber: book.callNumber, - ); - } - - factory BookModel.fromBorrowHistory(BookBorrowingHistoryItem book) { - return BookModel( - bookId: book.bookId, - isbn: book.isbn, - title: book.title, - author: book.author, - callNumber: book.callNumber, - ); - } -} diff --git a/lib/school/library/page/history.dart b/lib/school/library/page/history.dart deleted file mode 100644 index 57ca802d9..000000000 --- a/lib/school/library/page/history.dart +++ /dev/null @@ -1,122 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/school/library/init.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/borrow.dart'; -import '../i18n.dart'; -import '../widgets/book.dart'; -import 'details.dart'; -import 'details.model.dart'; - -class LibraryMyBorrowingHistoryPage extends StatefulWidget { - const LibraryMyBorrowingHistoryPage({super.key}); - - @override - State createState() => _LibraryMyBorrowingHistoryPageState(); -} - -class _LibraryMyBorrowingHistoryPageState extends State { - bool isFetching = false; - List? history = LibraryInit.borrowStorage.getBorrowHistory(); - - @override - void initState() { - super.initState(); - fetch(); - } - - Future fetch() async { - if (!mounted) return; - setState(() { - isFetching = true; - }); - try { - final history = await LibraryInit.borrowService.getHistoryBorrowBookList(); - await LibraryInit.borrowStorage.setBorrowHistory(history); - if (!mounted) return; - setState(() { - this.history = history; - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final history = this.history; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar( - title: i18n.history.title.text(), - bottom: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - if (history != null) - if (history.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.history.noHistory, - ), - ) - else - SliverList.builder( - itemCount: history.length, - itemBuilder: (ctx, i) { - return BookBorrowHistoryCard(history[i]); - }, - ), - ], - ), - ); - } -} - -class BookBorrowHistoryCard extends StatelessWidget { - final BookBorrowingHistoryItem book; - - const BookBorrowHistoryCard( - this.book, { - super.key, - }); - - @override - Widget build(BuildContext context) { - return Card.filled( - clipBehavior: Clip.hardEdge, - child: ListTile( - leading: AsyncBookImage(isbn: book.isbn), - title: book.title.text(), - subtitle: [ - book.author.text(), - "${i18n.info.barcode} ${book.barcode}".text(), - "${i18n.info.isbn} ${book.isbn}".text(), - context.formatYmdText(book.processDate).text(), - ].column(mas: MainAxisSize.min, caa: CrossAxisAlignment.start), - trailing: book.operation.l10n().text(), - onTap: () async { - await context.showSheet( - (ctx) => BookDetailsPage( - book: BookModel.fromBorrowHistory(book), - ), - ); - }, - ), - ); - } -} diff --git a/lib/school/library/page/login.dart b/lib/school/library/page/login.dart deleted file mode 100644 index b45a332a4..000000000 --- a/lib/school/library/page/login.dart +++ /dev/null @@ -1,166 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/login/utils.dart'; -import 'package:sit/login/widgets/forgot_pwd.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/school/library/api.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/utils/error.dart'; -import '../init.dart'; -import '../i18n.dart'; - -class LibraryLoginPage extends StatefulWidget { - const LibraryLoginPage({super.key}); - - @override - State createState() => _LibraryLoginPageState(); -} - -class _LibraryLoginPageState extends State { - final initialAccount = CredentialsInit.storage.oaCredentials?.account; - late final $readerId = TextEditingController(text: initialAccount); - final $password = TextEditingController(); - final _formKey = GlobalKey(); - bool isPasswordClear = false; - bool isLoggingIn = false; - - @override - void dispose() { - $readerId.dispose(); - $password.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return GestureDetector( - onTap: () { - // dismiss the keyboard when tap out of TextField. - FocusScope.of(context).requestFocus(FocusNode()); - }, - child: Scaffold( - appBar: AppBar( - title: i18n.login.title.text(), - bottom: isLoggingIn - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - body: buildBody(), - bottomNavigationBar: const ForgotPasswordButton(url: LibraryApi.forgotLoginPasswordUrl), - ), - ); - } - - Widget buildBody() { - return [ - buildForm(), - SizedBox(height: 10), - buildLoginButton(), - ].column(mas: MainAxisSize.min).scrolled(physics: const NeverScrollableScrollPhysics()).padH(25).center(); - } - - Widget buildForm() { - return Form( - autovalidateMode: AutovalidateMode.always, - key: _formKey, - child: AutofillGroup( - child: Column( - children: [ - TextFormField( - controller: $readerId, - textInputAction: TextInputAction.next, - autofocus: true, - readOnly: !Dev.on && initialAccount != null, - autocorrect: false, - enableSuggestions: false, - decoration: InputDecoration( - labelText: i18n.readerId, - hintText: i18n.login.readerIdHint, - icon: const Icon(Icons.chrome_reader_mode), - ), - ), - TextFormField( - controller: $password, - autofocus: true, - keyboardType: isPasswordClear ? TextInputType.visiblePassword : null, - textInputAction: TextInputAction.send, - contextMenuBuilder: (ctx, state) { - return AdaptiveTextSelectionToolbar.editableText( - editableTextState: state, - ); - }, - autocorrect: false, - enableSuggestions: false, - obscureText: !isPasswordClear, - onFieldSubmitted: (inputted) async { - if (!isLoggingIn) { - await onLogin(); - } - }, - decoration: InputDecoration( - labelText: i18n.login.credentials.pwd, - hintText: i18n.login.passwordHint, - icon: Icon(context.icons.lock), - suffixIcon: PlatformIconButton( - icon: Icon(isPasswordClear ? context.icons.eyeSolid : context.icons.eyeSlashSolid), - onPressed: () { - setState(() { - isPasswordClear = !isPasswordClear; - }); - }, - ), - ), - ), - ], - ), - ), - ); - } - - Widget buildLoginButton() { - return $readerId >> - (ctx, account) => FilledButton.icon( - // Online - onPressed: !isLoggingIn && account.text.isNotEmpty - ? () async { - // un-focus the text field. - FocusScope.of(context).requestFocus(FocusNode()); - await onLogin(); - } - : null, - icon: const Icon(Icons.login), - label: i18n.login.login.text().padAll(5), - ); - } - - Future onLogin() async { - final credential = Credentials( - account: $readerId.text, - password: $password.text, - ); - try { - if (!mounted) return; - setState(() => isLoggingIn = true); - await LibraryInit.auth.login(credential); - CredentialsInit.storage.libraryCredentials = credential; - if (!mounted) return; - setState(() => isLoggingIn = false); - context.replace("/library/borrowing"); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() => isLoggingIn = false); - if (error is Exception) { - handleLoginException(context: context, error: error, stackTrace: stackTrace); - } - return; - } - } -} diff --git a/lib/school/library/page/search.dart b/lib/school/library/page/search.dart deleted file mode 100644 index 246cf8280..000000000 --- a/lib/school/library/page/search.dart +++ /dev/null @@ -1,289 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/school/library/storage/search.dart'; -import 'package:sit/school/library/widgets/search.dart'; - -import '../entity/search.dart'; -import '../init.dart'; -import '../i18n.dart'; -import 'search_result.dart'; - -class LibrarySearchDelegate extends SearchDelegate { - final $searchMethod = ValueNotifier(SearchMethod.any); - - @override - void dispose() { - $searchMethod.dispose(); - super.dispose(); - } - - void searchByGiving( - BuildContext context, { - required String keyword, - SearchMethod? searchMethod, - }) async { - if (searchMethod != null) { - $searchMethod.value = searchMethod; - } - query = keyword.trim(); - - showSuggestions(context); - await Future.delayed(const Duration(milliseconds: 500)); - if (!context.mounted) return; - showResults(context); - } - - @override - List? buildActions(BuildContext context) { - return [ - PlatformIconButton( - icon: Icon(context.icons.clear), - onPressed: () { - query = ''; - showSuggestions(context); - }, - ), - ]; - } - - @override - Widget? buildLeading(BuildContext context) { - return PlatformIconButton( - icon: AnimatedIcon( - icon: AnimatedIcons.menu_arrow, - progress: transitionAnimation, - ), - onPressed: () { - if (query.isEmpty) { - close(context, ''); - } else { - query = ''; - showSuggestions(context); - } - }, - ); - } - - @override - void showResults(BuildContext context) { - super.showResults(context); - addHistory(query, $searchMethod.value); - } - - Future addHistory(String keyword, SearchMethod searchMethod) async { - keyword = keyword.trim(); - if (keyword.isEmpty) return; - await LibraryInit.searchStorage.addSearchHistory(SearchHistoryItem( - keyword: keyword, - searchMethod: searchMethod, - time: DateTime.now(), - )); - } - - @override - Widget buildResults(BuildContext context) { - return BookSearchResultWidget( - query: query, - onSearchTap: (method, keyword) { - searchByGiving( - context, - keyword: keyword, - searchMethod: method, - ); - }, - $searchMethod: $searchMethod, - ); - } - - @override - Widget buildSuggestions(BuildContext context) { - return CustomScrollView( - slivers: [ - SliverToBoxAdapter( - child: ($searchMethod >> - (ctx, _) => SearchMethodSwitcher( - selected: $searchMethod.value, - onSelect: (newSelection) { - $searchMethod.value = newSelection; - }, - )) - .sized(h: 40), - ), - SliverToBoxAdapter( - child: LibrarySearchHistoryGroup( - onTap: (method, title) => searchByGiving(context, keyword: title, searchMethod: method), - ), - ), - SliverToBoxAdapter( - child: LibraryTrendsGroup(onTap: (title) => searchByGiving(context, keyword: title)), - ) - ], - ); - } -} - -class LibraryTrendsGroup extends StatefulWidget { - final void Function(String keyword)? onTap; - - const LibraryTrendsGroup({ - super.key, - this.onTap, - }); - - @override - State createState() => _LibraryTrendsGroupState(); -} - -class _LibraryTrendsGroupState extends State { - LibraryTrends? trends = LibraryInit.searchStorage.getTrends(); - bool recentOrTotal = true; - - @override - void initState() { - super.initState(); - fetchHotSearch(); - } - - Future fetchHotSearch() async { - final trends = await LibraryInit.hotSearchService.getTrends(); - await LibraryInit.searchStorage.setTrends(trends); - if (!mounted) return; - setState(() { - this.trends = trends; - }); - } - - @override - Widget build(BuildContext context) { - final onTap = widget.onTap; - final trends = this.trends; - return SuggestionItemView( - tileLeading: Icon(recentOrTotal ? Icons.local_fire_department : Icons.people), - title: recentOrTotal ? i18n.searching.trending.text() : i18n.searching.mostPopular.text(), - tileTrailing: PlatformIconButton( - icon: const Icon(Icons.swap_horiz), - onPressed: () { - setState(() { - recentOrTotal = !recentOrTotal; - }); - }, - ), - items: recentOrTotal ? trends?.recent30days : trends?.total, - itemBuilder: (ctx, item) { - return ActionChip( - label: item.keyword.text(), - onPressed: () { - onTap?.call(item.keyword); - }, - ); - }, - ); - } -} - -class LibrarySearchHistoryGroup extends StatefulWidget { - final void Function(SearchMethod method, String keyword)? onTap; - - const LibrarySearchHistoryGroup({ - super.key, - this.onTap, - }); - - @override - State createState() => _LibrarySearchHistoryGroupState(); -} - -class _LibrarySearchHistoryGroupState extends State { - List? history = LibraryInit.searchStorage.getSearchHistory(); - final $history = LibraryInit.searchStorage.listenSearchHistory(); - - @override - void initState() { - super.initState(); - $history.addListener(onChange); - } - - @override - void dispose() { - $history.removeListener(onChange); - super.dispose(); - } - - void onChange() { - setState(() { - history = LibraryInit.searchStorage.getSearchHistory(); - }); - } - - @override - Widget build(BuildContext context) { - final onTap = widget.onTap; - final history = this.history; - return SuggestionItemView( - tileLeading: const Icon(Icons.history), - title: i18n.searching.searchHistory.text(), - items: history, - tileTrailing: PlatformIconButton( - icon: Icon(context.icons.delete), - onPressed: history?.isNotEmpty == true - ? () { - LibraryInit.searchStorage.setSearchHistory(null); - } - : null, - ), - itemBuilder: (ctx, item) { - return ActionChip( - label: item.keyword.text(), - onPressed: () { - onTap?.call(item.searchMethod, item.keyword); - }, - ); - }, - ); - } -} - -class SuggestionItemView extends StatelessWidget { - final Widget title; - final List? items; - final Widget Function(BuildContext context, T item) itemBuilder; - final int limitLength; - final Widget? tileTrailing; - final Widget? tileLeading; - - const SuggestionItemView({ - super.key, - required this.title, - required this.items, - required this.itemBuilder, - this.limitLength = 20, - this.tileTrailing, - this.tileLeading, - }); - - @override - Widget build(BuildContext context) { - final items = this.items; - return [ - ListTile( - leading: tileLeading, - title: title, - trailing: tileTrailing, - ), - AnimatedSwitcher( - duration: Durations.medium2, - child: items != null - ? items - .sublist(0, min(items.length, limitLength)) - .map((e) => itemBuilder(context, e)) - .toList(growable: false) - .wrap(spacing: 4) - : const SizedBox(), - ).padH(8), - ].column(caa: CrossAxisAlignment.start, mas: MainAxisSize.min); - } -} diff --git a/lib/school/library/page/search_result.dart b/lib/school/library/page/search_result.dart deleted file mode 100644 index 2dabdacb9..000000000 --- a/lib/school/library/page/search_result.dart +++ /dev/null @@ -1,253 +0,0 @@ -import 'package:flutter/gestures.dart'; -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/school/library/page/details.model.dart'; -import 'package:sit/school/library/widgets/book.dart'; -import 'package:sit/school/library/widgets/search.dart'; -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/book.dart'; -import '../entity/search.dart'; -import '../init.dart'; -import '../i18n.dart'; -import 'details.dart'; - -typedef BookSearchCallback = void Function(SearchMethod method, String keyword); - -class BookSearchResultWidget extends StatefulWidget { - final String query; - - final ValueNotifier $searchMethod; - - final BookSearchCallback? onSearchTap; - - const BookSearchResultWidget({ - required this.query, - required this.$searchMethod, - super.key, - this.onSearchTap, - }); - - @override - State createState() => _BookSearchResultWidgetState(); -} - -class _BookSearchResultWidgetState extends State with AutomaticKeepAliveClientMixin { - @override - bool get wantKeepAlive => true; - final scrollController = ScrollController(); - static const sizePerPage = 30; - BookSearchResult? lastResult; - List? books; - bool isFetching = false; - - @override - void initState() { - super.initState(); - // Fetch the first page - fetchNextPage(); - scrollController.addListener(() { - if (scrollController.position.pixels == scrollController.position.maxScrollExtent) { - fetchNextPage(); - } - }); - } - - @override - void dispose() { - scrollController.dispose(); - super.dispose(); - } - - Future fetchNextPage() async { - if (isFetching) return; - final lastResult = this.lastResult; - if (lastResult != null && lastResult.currentPage > lastResult.totalPage) return; - setState(() { - isFetching = true; - }); - try { - final searchResult = await LibraryInit.bookSearch.search( - keyword: widget.query, - rows: sizePerPage, - page: lastResult != null ? lastResult.currentPage + 1 : 0, - searchMethod: widget.$searchMethod.value, - ); - if (!mounted) return; - setState(() { - final books = this.books ??= []; - books.addAll(searchResult.books); - this.lastResult = searchResult; - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - super.build(context); - final books = this.books; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverToBoxAdapter( - child: buildSearchMethodSwitcher().sized(h: 40), - ), - if (books != null) - if (books.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noBooks, - ), - ) - else - buildGrid(books) - ], - ), - bottomNavigationBar: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ); - } - - Widget buildGrid(List books) { - final onSearchTap = widget.onSearchTap; - return SliverFillRemaining( - child: MasonryGridView.extent( - controller: scrollController, - maxCrossAxisExtent: 280, - itemCount: books.length, - itemBuilder: (context, i) { - final book = books[i]; - return BookTile( - book: book, - onSearchTap: onSearchTap, - onTap: () async { - await context.showSheet( - (ctx) => BookDetailsPage( - book: BookModel.fromBook(book), - onSearchTap: onSearchTap == null - ? null - : (method, keyword) { - // pop the sheet - ctx.pop(); - onSearchTap(method, keyword); - }, - ), - ); - }, - ); - }, - ), - ); - } - - Widget buildSearchMethodSwitcher() { - return widget.$searchMethod >> - (ctx, _) => SearchMethodSwitcher( - selected: widget.$searchMethod.value, - onSelect: (newSelection) { - widget.$searchMethod.value = newSelection; - setState(() { - books = null; - lastResult = null; - }); - fetchNextPage(); - }, - ); - } -} - -class BookTile extends StatelessWidget { - final Book book; - final void Function()? onTap; - final BookSearchCallback? onSearchTap; - - const BookTile({ - super.key, - this.onSearchTap, - this.onTap, - required this.book, - }); - - @override - Widget build(BuildContext context) { - final book = this.book; - return Card.filled( - clipBehavior: Clip.hardEdge, - child: InkWell( - onTap: onTap, - child: [ - AsyncBookImage(isbn: book.isbn), - [ - book.title.text(style: context.textTheme.titleMedium), - buildAuthor(context), - "${i18n.info.callNumber} ${book.callNumber}".text(), - buildPublisher(context) - ].column(mas: MainAxisSize.min).padSymmetric(v: 2, h: 4), - ].column(mas: MainAxisSize.min), - ), - ); - } - - Widget buildAuthor(BuildContext context) { - return RichText( - text: TextSpan( - children: [ - buildSearchableField( - method: SearchMethod.author, - text: book.author, - ), - ], - style: context.textTheme.bodyMedium?.copyWith(color: context.colorScheme.onSurfaceVariant), - ), - ); - } - - Widget buildPublisher(BuildContext context) { - return RichText( - text: TextSpan( - children: [ - buildSearchableField( - method: SearchMethod.publisher, - text: book.publisher, - ), - const TextSpan(text: " "), - TextSpan(text: book.publishDate), - ], - style: context.textTheme.bodyMedium?.copyWith(color: context.colorScheme.onSurfaceVariant), - ), - ); - } - - TextSpan buildSearchableField({ - required SearchMethod method, - required String text, - }) { - final onSearchTap = this.onSearchTap; - return TextSpan( - text: text, - style: const TextStyle(color: Colors.blue), - recognizer: onSearchTap == null - ? null - : (TapGestureRecognizer() - ..onTap = () async { - onSearchTap(method, text); - }), - ); - } -} diff --git a/lib/school/library/service/auth.dart b/lib/school/library/service/auth.dart deleted file mode 100644 index 5dac7ad82..000000000 --- a/lib/school/library/service/auth.dart +++ /dev/null @@ -1,71 +0,0 @@ -import 'dart:convert'; - -import 'package:crypto/crypto.dart'; -import 'package:dio/dio.dart'; -import 'package:encrypt/encrypt.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/error.dart'; -import 'package:sit/init.dart'; -import 'package:sit/utils/dio.dart'; - -const _opacUrl = 'http://210.35.66.106/opac'; -const _pemUrl = '$_opacUrl/certificate/pem'; -const _loginUrl = '$_opacUrl/reader/doLogin'; - -class LibraryAuthService { - Dio get dio => Init.dio; - - const LibraryAuthService(); - - Future login(Credentials credentials) async { - final response = await _login(credentials.account, credentials.password); - final content = response.data.toString(); - if (content.contains('用户名或密码错误')) { - throw CredentialsException( - type: CredentialsErrorType.accountPassword, - message: content, - ); - } - // TODO: Handle other exceptions - return response; - } - - Future _login(String username, String password) async { - final rdPasswd = await _encryptPassword(password); - final response = await dio.post( - _loginUrl, - data: { - 'vToken': '', - 'rdLoginId': username, - 'p': '', - 'rdPasswd': rdPasswd, - 'returnUrl': '', - 'password': '', - }, - options: disableRedirectFormEncodedOptions(), - ); - return processRedirect(dio, response); - } - - Future _encryptPassword(String password) async { - String hashedPwd = md5.convert(const Utf8Encoder().convert(password)).toString(); - final pk = await _getRSAPublicKey(); - final encrypter = Encrypter(RSA(publicKey: pk)); - final String encryptedPwd = encrypter.encrypt(hashedPwd).base64; - return encryptedPwd; - } - - Future _getRSAPublicKey() async { - final pemResponse = await dio.get( - _pemUrl, - queryParameters: { - "checkCode": "1opac", - }, - ); - String publicKeyStr = pemResponse.data; - final pemFileContent = '-----BEGIN PUBLIC KEY-----\n$publicKeyStr\n-----END PUBLIC KEY-----'; - - final parser = RSAKeyParser(); - return parser.parse(pemFileContent); - } -} diff --git a/lib/school/library/service/book.dart b/lib/school/library/service/book.dart deleted file mode 100644 index 09bf83714..000000000 --- a/lib/school/library/service/book.dart +++ /dev/null @@ -1,97 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/library.dart'; - -import '../entity/book.dart'; -import '../api.dart'; -import '../entity/search.dart'; - -class BookSearchService { - LibrarySession get _session => Init.librarySession; - - const BookSearchService(); - - Future search({ - String keyword = '', - int rows = 10, - int page = 1, - SearchMethod searchMethod = SearchMethod.any, - SortMethod sortMethod = SortMethod.matchScore, - SortOrder sortOrder = SortOrder.desc, - }) async { - final response = await _session.request( - LibraryApi.searchUrl, - para: { - 'q': keyword, - 'searchType': 'standard', - 'isFacet': 'true', - 'view': 'standard', - 'searchWay': searchMethod.internalQueryParameter, - 'rows': rows.toString(), - 'sortWay': sortMethod.internalQueryParameter, - 'sortOrder': sortOrder.internalQueryParameter, - 'hasholding': '1', - 'searchWay0': 'marc', - 'logical0': 'AND', - 'page': page.toString(), - }, - options: Options( - method: "GET", - ), - ); - - final soup = BeautifulSoup(response.data); - - final currentPage = soup.find('b', selector: '.meneame > b')?.text.trim() ?? '$page'; - final resultNumAndTime = soup - .find( - 'div', - selector: '#search_meta > div:nth-child(1)', - )! - .text; - final resultCount = - int.parse(RegExp(r'检索到: (\S*) 条结果').allMatches(resultNumAndTime).first.group(1)!.replaceAll(',', '')); - final useTime = double.parse(RegExp(r'检索时间: (\S*) 秒').allMatches(resultNumAndTime).first.group(1)!); - final totalPages = soup.find('div', class_: 'meneame')?.find('span', class_: 'disabled')?.text.trim(); - final booksRaw = soup.find('table', class_: 'resultTable')?.findAll('tr'); - if (totalPages == null || booksRaw == null) { - return BookSearchResult.empty(useTime: useTime); - } - final books = booksRaw.map((e) => _parseBook(e)).toList(); - return BookSearchResult( - resultCount: resultCount, - useTime: useTime, - currentPage: int.parse(currentPage), - totalPage: int.parse(totalPages.substring(1, totalPages.length - 1).trim().replaceAll(',', '')), - books: books, - ); - } - - static Book _parseBook(Bs4Element e) { - // 获得图书信息 - String getBookInfo(String name, String selector) { - return e.find(name, selector: selector)!.text.trim(); - } - - final bookCoverImage = e.find('img', class_: 'bookcover_img')!; - final author = getBookInfo('a', '.author-link'); - final bookId = bookCoverImage.attributes['bookrecno']!; - final isbn = bookCoverImage.attributes['isbn']!; - final callNo = getBookInfo('span', '.callnosSpan'); - final publishDate = getBookInfo('div', 'div').split('出版日期:')[1].split('\n')[0].trim(); - - final publisher = getBookInfo('a', '.publisher-link'); - final title = getBookInfo('a', '.title-link'); - return Book( - bookId: bookId, - isbn: isbn, - title: title, - author: author, - publisher: publisher, - publishDate: publishDate, - callNumber: callNo, - ); - } -} diff --git a/lib/school/library/service/book.demo.dart b/lib/school/library/service/book.demo.dart deleted file mode 100644 index aca884446..000000000 --- a/lib/school/library/service/book.demo.dart +++ /dev/null @@ -1,26 +0,0 @@ -import '../entity/book.dart'; -import '../entity/search.dart'; -import 'book.dart'; - -class DemoBookSearchService implements BookSearchService { - const DemoBookSearchService(); - - @override - Future search({ - String keyword = '', - int rows = 10, - int page = 1, - SearchMethod searchMethod = SearchMethod.any, - SortMethod sortMethod = SortMethod.matchScore, - SortOrder sortOrder = SortOrder.desc, - }) async { - await Future.delayed(const Duration(milliseconds: 1000)); - return const BookSearchResult( - resultCount: 2, - useTime: 1000, - currentPage: 1, - totalPage: 1, - books: [], - ); - } -} diff --git a/lib/school/library/service/borrow.dart b/lib/school/library/service/borrow.dart deleted file mode 100644 index 1d198260d..000000000 --- a/lib/school/library/service/borrow.dart +++ /dev/null @@ -1,131 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:intl/intl.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/library.dart'; - -import '../entity/borrow.dart'; -import '../api.dart'; - -final _historyDateFormat = DateFormat('yyyy-MM-dd'); - -class LibraryBorrowService { - LibrarySession get session => Init.librarySession; - - const LibraryBorrowService(); - - Future> getHistoryBorrowBookList() async { - final response = await session.request( - LibraryApi.historyLoanListUrl, - para: { - 'page': 1.toString(), - 'rows': 99999.toString(), - }, - options: Options( - method: "GET", - ), - ); - final html = BeautifulSoup(response.data); - final table = html.find('table', id: 'contentTable'); - if (table == null) { - return const []; - } - return table.findAll('tr').where((e) => e.id != 'contentHeader').map((e) { - final columns = e.findAll('td'); - final columnsText = columns.map((e) => e.text.trim()).toList(); - return BookBorrowingHistoryItem( - bookId: columns[0].find('input')!.attributes['value']!, - operation: _parseOpType(columnsText[0]), - barcode: columnsText[1], - title: columnsText[2], - isbn: columnsText[3], - author: columnsText[4], - callNumber: columnsText[5], - location: columnsText[6], - type: columnsText[7], - processDate: _historyDateFormat.parse(columnsText[8]), - ); - }).toList(); - } - - BookBorrowingHistoryOperation _parseOpType(String text) { - if (text == "还书") { - return BookBorrowingHistoryOperation.returning; - } else if (text == "借书") { - return BookBorrowingHistoryOperation.borrowing; - } - return BookBorrowingHistoryOperation.borrowing; - } - - Future> getMyBorrowBookList() async { - final response = await session.request( - LibraryApi.currentLoanListUrl, - para: { - 'page': 1.toString(), - 'rows': 99999.toString(), - }, - options: Options( - method: "GET", - ), - ); - final html = BeautifulSoup(response.data); - final table = html.find('table', id: 'contentTable'); - if (table == null) { - return const []; - } - return table.findAll('tr').where((e) => e.id != 'contentHeader').map((e) { - final columns = e.findAll('td'); - final columnsText = columns.map((e) => e.text.trim()).toList(); - final dataFormat = DateFormat('yyyy-MM-dd'); - return BorrowedBookItem( - bookId: columns[0].find('input')!.attributes['value']!, - barcode: columnsText[0], - title: columnsText[1], - isbn: columnsText[2], - author: columnsText[3], - callNumber: columnsText[4], - location: columnsText[5], - type: columnsText[6], - borrowDate: dataFormat.parse(columnsText[7]), - expireDate: dataFormat.parse(columnsText[8]), - ); - }).toList(); - } - - Future renewBook({ - required List barcodeList, - bool renewAll = false, - }) async { - await session.request( - LibraryApi.renewList, - options: Options( - method: "GET", - ), - ); - final listRes = await session.request( - LibraryApi.renewList, - options: Options( - method: "GET", - ), - ); - final listHtml = BeautifulSoup(listRes.data); - final pdsToken = listHtml.find('input', attrs: {'name': 'pdsToken'})!.attributes['value'] ?? ''; - final renewRes = await session.request( - LibraryApi.doRenewUrl, - data: FormData.fromMap({ - 'pdsToken': pdsToken, - 'barcodeList': barcodeList.join(','), - 'furl': '/opac/loan/renewList', - 'renewAll': renewAll ? 'all' : '', - }), - options: Options( - method: "POST", - contentType: Headers.formUrlEncodedContentType, - ), - ); - final renewHtml = BeautifulSoup(renewRes.data); - final result = renewHtml.find('div', id: 'content')!.text; - return result.replaceAll(RegExp(r"\s+"), ""); - } -} diff --git a/lib/school/library/service/collection.dart b/lib/school/library/service/collection.dart deleted file mode 100644 index 3835f4ee7..000000000 --- a/lib/school/library/service/collection.dart +++ /dev/null @@ -1,87 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/library.dart'; - -import '../entity/collection.dart'; -import '../api.dart'; - -class LibraryCollectionInfoService { - LibrarySession get session => Init.librarySession; - - const LibraryCollectionInfoService(); - - Future> queryByBookId(String bookId) async { - final response = await session.request( - '${LibraryApi.bookCollectionUrl}/$bookId', - options: Options( - method: "GET", - ), - ); - - final raw = BookCollectionInfo.fromJson(response.data); - final result = raw.holdingList.map((rawHoldingItem) { - final bookRecordId = rawHoldingItem.bookRecordId; - final bookId = rawHoldingItem.bookId; - final stateTypeName = raw.holdStateMap[rawHoldingItem.stateType.toString()]!.stateName; - final barcode = rawHoldingItem.barcode; - final callNo = rawHoldingItem.callNumber; - final originLibrary = raw.libraryCodeMap[rawHoldingItem.originLibraryCode]!; - final originLocation = raw.locationMap[rawHoldingItem.originLocationCode]!; - final currentLibrary = raw.libraryCodeMap[rawHoldingItem.currentLibraryCode]!; - final currentLocation = raw.locationMap[rawHoldingItem.currentLocationCode]!; - final circulateTypeName = raw.circulateTypeMap[rawHoldingItem.circulateType]!.name; - final circulateTypeDescription = raw.circulateTypeMap[rawHoldingItem.circulateType]!.description; - final registerDate = DateTime.parse(rawHoldingItem.registerDate); - final inDate = DateTime.parse(rawHoldingItem.inDate); - final singlePrice = rawHoldingItem.singlePrice; - final totalPrice = rawHoldingItem.totalPrice; - return BookCollection( - bookRecordId: bookRecordId, - bookId: bookId, - stateTypeName: stateTypeName, - barcode: barcode, - callNumber: callNo, - originLibrary: originLibrary, - originLocation: originLocation, - currentLibrary: currentLibrary, - currentLocation: currentLocation, - circulateTypeName: circulateTypeName, - circulateTypeDescription: circulateTypeDescription, - registerDate: registerDate, - inDate: inDate, - singlePrice: singlePrice, - totalPrice: totalPrice, - ); - }).toList(); - return result; - } - - /// 搜索附近的书的id号 - Future> searchNearBookIdList(String bookId) async { - final response = await session.request( - LibraryApi.virtualBookshelfUrl, - para: { - 'bookrecno': bookId, - - // 1 表示不出现同一本书的重复书籍 - 'holding': '1', - }, - options: Options( - method: "GET", - ), - ); - final soup = BeautifulSoup(response.data); - return soup - .findAll( - 'a', - attrs: {'target': '_blank'}, - ) - .map( - (e) => e.attributes['href']!, - ) - .map((e) => e.split('book/')[1]) - .toList(); - } -} diff --git a/lib/school/library/service/collection_preview.dart b/lib/school/library/service/collection_preview.dart deleted file mode 100644 index c4ca6a849..000000000 --- a/lib/school/library/service/collection_preview.dart +++ /dev/null @@ -1,35 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/library.dart'; - -import '../entity/collection_preview.dart'; -import '../api.dart'; - -class LibraryCollectionPreviewService { - LibrarySession get session => Init.librarySession; - - const LibraryCollectionPreviewService(); - - Future>> getCollectionPreviews( - List bookIdList, - ) async { - final response = await session.request( - LibraryApi.bookCollectionPreviewsUrl, - para: { - 'bookrecnos': bookIdList.join(','), - 'curLibcodes': '', - 'return_fmt': 'json', - }, - options: Options( - method: "GET", - ), - ); - final json = response.data; - final previewsRaw = json['previews'] as Map?; - if (previewsRaw == null) return >{}; - final previews = previewsRaw.map((k, e) => - MapEntry(k, (e as List).map((e) => BookCollectionItem.fromJson(e as Map)).toList())); - return previews; - } -} diff --git a/lib/school/library/service/details.dart b/lib/school/library/service/details.dart deleted file mode 100644 index 2c8033865..000000000 --- a/lib/school/library/service/details.dart +++ /dev/null @@ -1,81 +0,0 @@ -import 'dart:collection'; - -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/library.dart'; - -import '../api.dart'; -import '../entity/book.dart'; - -class BookDetailsService { - LibrarySession get session => Init.librarySession; - - const BookDetailsService(); - - Future query(String bookId) async { - final response = await session.request( - '${LibraryApi.bookUrl}/$bookId', - options: Options( - method: "GET", - ), - ); - final html = BeautifulSoup(response.data); - final detailItems = html - .find('table', id: 'bookInfoTable')! - .findAll('tr') - .map( - (e) => e - .findAll('td') - .map( - (e) => e.text.replaceAll(RegExp(r'\s*'), ''), - ) - .toList(), - ) - .where( - (element) { - if (element.isEmpty) { - return false; - } - String e1 = element[0]; - - // 过滤包含这些关键字的条目 - for (final keyword in ['分享', '相关', '随书']) { - if (e1.contains(keyword)) return false; - } - - return true; - }, - ).toList(); - - final rawDetails = LinkedHashMap.fromEntries( - detailItems.sublist(1).map( - (e) => MapEntry( - e[0].substring(0, e[0].length - 1), - e[1], - ), - ), - ); - return parseBookDetails(rawDetails); - } - - BookDetails parseBookDetails(Map details) { - final isbnAndPrice = details['ISBN']!.split('价格:'); - details["ISBN"] = isbnAndPrice[0]; - final price = isbnAndPrice.elementAtOrNull(1); - if (price != null) { - details["价格"] = price; - } - - final classAndEdition = details['中图分类法']!.split('版次:'); - details["中图分类法"] = classAndEdition[0]; - if (classAndEdition.length > 1) { - details["版次"] = classAndEdition[1]; - } - - return BookDetails( - details: details, - ); - } -} diff --git a/lib/school/library/service/image_search.dart b/lib/school/library/service/image_search.dart deleted file mode 100644 index 6b09e4082..000000000 --- a/lib/school/library/service/image_search.dart +++ /dev/null @@ -1,44 +0,0 @@ -import 'dart:convert'; - -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/library.dart'; - -import '../entity/image.dart'; -import '../api.dart'; - -/// 本类提供了一系列,通过查询图书图片的方法,返回结果类型为字典,以ISBN为键 -class BookImageSearchService { - LibrarySession get session => Init.librarySession; - - Dio get dio => Init.dio; - - const BookImageSearchService(); - - /// The result isbn doesn't have hyphen `-` - Future> searchByIsbnList(List isbnList) async { - final response = await dio.request( - LibraryApi.bookImageInfoUrl, - queryParameters: { - 'glc': 'U1SH021060', - 'cmdACT': 'getImages', - 'type': '0', - 'isbns': isbnList.join(','), - }, - options: Options( - responseType: ResponseType.plain, - method: "GET", - ), - ); - var resStr = (response.data as String).trim(); - resStr = resStr.substring(1, resStr.length - 1); - final result = {}; - final resultRaw = jsonDecode(resStr)['result'] as List; - final images = resultRaw.map((e) => BookImage.fromJson(e)); - for (final image in images) { - result[image.isbn] = image; - } - return result; - } -} diff --git a/lib/school/library/service/trends.dart b/lib/school/library/service/trends.dart deleted file mode 100644 index e7da168e1..000000000 --- a/lib/school/library/service/trends.dart +++ /dev/null @@ -1,45 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/library.dart'; - -import '../api.dart'; -import '../entity/search.dart'; - -class LibraryTrendsService { - LibrarySession get _session => Init.librarySession; - - const LibraryTrendsService(); - - LibraryTrendsItem _parse(String rawText) { - final texts = rawText.split('(').map((e) => e.trim()).toList(); - final title = texts.sublist(0, texts.length - 1).join('('); - final numWithRight = texts[texts.length - 1]; - final numText = numWithRight.substring(0, numWithRight.length - 1); - return LibraryTrendsItem( - keyword: title, - count: int.parse(numText), - ); - } - - Future getTrends() async { - final response = await _session.request( - LibraryApi.hotSearchUrl, - options: Options( - method: "GET", - ), - ); - final soup = BeautifulSoup(response.data); - final fieldsets = soup.findAll('fieldset'); - - List getHotSearchItems(Bs4Element fieldset) { - return fieldset.findAll('a').map((e) => _parse(e.text)).toList(); - } - - return LibraryTrends( - recent30days: getHotSearchItems(fieldsets[0]), - total: getHotSearchItems(fieldsets[1]), - ); - } -} diff --git a/lib/school/library/service/trends.demo.dart b/lib/school/library/service/trends.demo.dart deleted file mode 100644 index 0ef17583a..000000000 --- a/lib/school/library/service/trends.demo.dart +++ /dev/null @@ -1,20 +0,0 @@ -import '../entity/search.dart'; -import 'trends.dart'; - -class DemoLibraryTrendsService implements LibraryTrendsService { - const DemoLibraryTrendsService(); - - @override - Future getTrends() async { - return const LibraryTrends( - recent30days: [ - LibraryTrendsItem(keyword: '小应生活', count: 500), - LibraryTrendsItem(keyword: 'Liplum', count: 200), - ], - total: [ - LibraryTrendsItem(keyword: '小应生活', count: 1000), - LibraryTrendsItem(keyword: 'Liplum', count: 800), - ], - ); - } -} diff --git a/lib/school/library/storage/book.dart b/lib/school/library/storage/book.dart deleted file mode 100644 index 0ddadce0d..000000000 --- a/lib/school/library/storage/book.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:hive/hive.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/book.dart'; - -class _K { - static const ns = "/library/books"; - - static String info(String bookId) => "$ns/$bookId"; - - static String details(String bookId) => "$ns/$bookId"; -} - -class LibraryBookStorage { - Box get box => HiveInit.library; - - const LibraryBookStorage(); - - Book? getBook(String bookId) => box.safeGet(_K.info(bookId)); - - Future setBook(String bookId, Book? value) => box.safePut(_K.info(bookId), value); - - BookDetails? getBookDetails(String bookId) => box.safeGet(_K.details(bookId)); - - Future setBookDetails(String bookId, BookDetails? value) => box.safePut(_K.details(bookId), value); -} diff --git a/lib/school/library/storage/borrow.dart b/lib/school/library/storage/borrow.dart deleted file mode 100644 index 976039a18..000000000 --- a/lib/school/library/storage/borrow.dart +++ /dev/null @@ -1,28 +0,0 @@ -import 'package:sit/utils/hive.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/borrow.dart'; - -class _K { - static const ns = "/library/borrow"; - static const borrowed = "$ns/borrowed"; - static const borrowHistory = "$ns/borrowHistory"; -} - -class LibraryBorrowStorage { - Box get box => HiveInit.library; - - LibraryBorrowStorage(); - - List? getBorrowedBooks() => box.safeGet(_K.borrowed)?.cast(); - - Future setBorrowedBooks(List? value) => box.safePut(_K.borrowed, value); - - late final $borrowed = box.provider>(_K.borrowed, get: getBorrowedBooks); - - List? getBorrowHistory() => - box.safeGet(_K.borrowHistory)?.cast(); - - Future setBorrowHistory(List? value) => box.safePut(_K.borrowHistory, value); -} diff --git a/lib/school/library/storage/browse.dart b/lib/school/library/storage/browse.dart deleted file mode 100644 index 5824bc497..000000000 --- a/lib/school/library/storage/browse.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:hive/hive.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -class _K { - static const ns = "/library/browse"; - static const browseHistory = "$ns/browseHistory"; - static const favorite = "$ns/favorite"; -} - -class LibraryBrowseStorage { - Box get box => HiveInit.library; - - const LibraryBrowseStorage(); - - /// a list of book ID - List? getBrowseHistory() => box.safeGet(_K.browseHistory)?.cast(); - - /// a list of book ID - Future setBrowseHistory(String bookId, List? value) => box.safePut(_K.browseHistory, value); - - /// a list of book ID - List? getFavorite() => box.safeGet(_K.favorite)?.cast(); - - /// a list of book ID - Future setFavorite(String bookId, List? value) => box.safePut(_K.favorite, value); -} diff --git a/lib/school/library/storage/image.dart b/lib/school/library/storage/image.dart deleted file mode 100644 index d71af27a9..000000000 --- a/lib/school/library/storage/image.dart +++ /dev/null @@ -1,21 +0,0 @@ -import 'package:hive/hive.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/utils/hive.dart'; - -import '../entity/image.dart'; - -class _K { - static const ns = "/library/images"; - - static String image(String isbn) => "$ns/$isbn"; -} - -class LibraryImageStorage { - Box get box => HiveInit.library; - - const LibraryImageStorage(); - - BookImage? getImage(String isbn) => box.safeGet(_K.image(isbn)); - - Future setImage(String isbn, BookImage? value) => box.safePut(_K.image(isbn), value); -} diff --git a/lib/school/library/storage/search.dart b/lib/school/library/storage/search.dart deleted file mode 100644 index 3bc96d4de..000000000 --- a/lib/school/library/storage/search.dart +++ /dev/null @@ -1,41 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/utils/collection.dart'; -import 'package:sit/utils/json.dart'; -import '../entity/search.dart'; - -class _K { - static const ns = "/search"; - static const searchHistory = "$ns/searchHistory"; - static const trends = "$ns/trends"; -} - -class LibrarySearchStorage { - Box get box => HiveInit.library; - - const LibrarySearchStorage(); - - LibraryTrends? getTrends() => decodeJsonObject(box.safeGet(_K.trends), (obj) => LibraryTrends.fromJson(obj)); - - Future setTrends(LibraryTrends value) => box.safePut(_K.trends, encodeJsonObject(value)); - - List? getSearchHistory() => - decodeJsonList(box.safeGet(_K.searchHistory), (obj) => SearchHistoryItem.fromJson(obj)); - - Future setSearchHistory(List? value) => - box.safePut(_K.searchHistory, encodeJsonList(value)); - - ValueListenable listenSearchHistory() => box.listenable(keys: [_K.searchHistory]); -} - -extension LibrarySearchStorageX on LibrarySearchStorage { - Future addSearchHistory(SearchHistoryItem item) async { - final all = getSearchHistory() ?? []; - all.add(item); - all.sort((a, b) => b.time.compareTo(a.time)); - all.distinctBy((item) => item.keyword); - await setSearchHistory(all); - } -} diff --git a/lib/school/library/utils.dart b/lib/school/library/utils.dart deleted file mode 100644 index 519db6e90..000000000 --- a/lib/school/library/utils.dart +++ /dev/null @@ -1,16 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/utils/error.dart'; - -import 'init.dart'; -import 'i18n.dart'; - -Future renewBorrowedBook(BuildContext context, String barcode) async { - try { - final result = await LibraryInit.borrowService.renewBook(barcodeList: [barcode]); - if (!context.mounted) return; - await context.showTip(title: i18n.borrowing.renew, primary: i18n.ok, desc: result); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - } -} diff --git a/lib/school/library/widgets/book.dart b/lib/school/library/widgets/book.dart deleted file mode 100644 index 03d654a1d..000000000 --- a/lib/school/library/widgets/book.dart +++ /dev/null @@ -1,68 +0,0 @@ -import 'package:cached_network_image/cached_network_image.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/utils/error.dart'; - -import '../aggregated.dart'; -import '../entity/image.dart'; - -class AsyncBookImage extends StatefulWidget { - final String isbn; - final ValueChanged? onHasImageChanged; - - const AsyncBookImage({ - super.key, - required this.isbn, - this.onHasImageChanged, - }); - - @override - State createState() => _AsyncBookImageState(); -} - -class _AsyncBookImageState extends State { - late BookImage? image = LibraryAggregated.getCachedBookImageByIsbn(widget.isbn); - - @override - void initState() { - super.initState(); - fetch(); - WidgetsBinding.instance.addPostFrameCallback((timeStamp) { - widget.onHasImageChanged?.call(image != null); - }); - } - - Future fetch() async { - try { - final image = await LibraryAggregated.fetchBookImage(isbn: widget.isbn); - if (!mounted) return; - setState(() { - this.image = image; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - } - } - - @override - Widget build(BuildContext context) { - return AnimatedSize( - duration: Durations.long2, - curve: Curves.fastEaseInToSlowEaseOut, - child: buildContext(), - ); - } - - Widget buildContext() { - final image = this.image; - if (image == null) return const SizedBox(); - return CachedNetworkImage( - fit: BoxFit.cover, - imageUrl: image.resourceUrl, - placeholder: (context, url) => const SizedBox(), - errorWidget: (context, url, error) => const SizedBox(), - errorListener: (error) { - widget.onHasImageChanged?.call(false); - }, - ); - } -} diff --git a/lib/school/library/widgets/search.dart b/lib/school/library/widgets/search.dart deleted file mode 100644 index 9dec8fae8..000000000 --- a/lib/school/library/widgets/search.dart +++ /dev/null @@ -1,46 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/search.dart'; - -const _searchMethods = [ - SearchMethod.any, - SearchMethod.title, - SearchMethod.author, - SearchMethod.publisher, - SearchMethod.subject, - SearchMethod.isbn, -]; - -class SearchMethodSwitcher extends StatelessWidget { - final List all; - final SearchMethod selected; - final ValueChanged? onSelect; - - const SearchMethodSwitcher({ - super.key, - this.all = _searchMethods, - required this.selected, - this.onSelect, - }); - - @override - Widget build(BuildContext context) { - return ListView.builder( - scrollDirection: Axis.horizontal, - itemCount: all.length, - itemBuilder: (ctx, i) { - final method = all[i]; - return ChoiceChip( - label: method.l10nName().text(), - selected: selected == method, - onSelected: (value) { - if (value) { - onSelect?.call(method); - } - }, - ).padH(4); - }, - ); - } -} diff --git a/lib/school/oa_announce/entity/announce.dart b/lib/school/oa_announce/entity/announce.dart deleted file mode 100644 index 0da08ed0a..000000000 --- a/lib/school/oa_announce/entity/announce.dart +++ /dev/null @@ -1,192 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'announce.g.dart'; - -/// 通知分类 -enum OaAnnounceCat { - // ug, pg - studentAffairs('学生事务', 'pe2362'), - // ug - learning('学习课堂', 'pe2364'), - // ug, pg - collegeNotification('二级学院通知', 'pe2368'), - // ug - culture('校园文化', 'pe2366'), - // ug, pg - announcement('公告信息', 'pe2367'), - // ug, pg - life('生活服务', 'pe2365'), - // ug - download('文件下载专区', 'pe2382'), - // pg - training('培养信息', 'pe3442'), - // pg - academicReport('学术报告', 'pe3422'); - - /// 分类名 - final String catName; - - /// 分类代号(OA上命名为pen,以pe打头) - final String internalId; - - String l10nName() => "oaAnnounce.oaAnnounceCat.$name".tr(); - - static String allCatL10n() => "oaAnnounce.oaAnnounceCat.all".tr(); - - const OaAnnounceCat(this.catName, this.internalId); - - static const common = [ - OaAnnounceCat.studentAffairs, - OaAnnounceCat.announcement, - OaAnnounceCat.collegeNotification, - OaAnnounceCat.life, - ]; - static const undergraduate = [ - OaAnnounceCat.learning, - OaAnnounceCat.studentAffairs, - OaAnnounceCat.announcement, - OaAnnounceCat.culture, - OaAnnounceCat.download, - OaAnnounceCat.collegeNotification, - OaAnnounceCat.life, - OaAnnounceCat.academicReport, - ]; - static const postgraduate = [ - OaAnnounceCat.studentAffairs, - OaAnnounceCat.announcement, - OaAnnounceCat.training, - OaAnnounceCat.collegeNotification, - OaAnnounceCat.life, - ]; - - static List resolve(OaUserType? userType) { - return switch (userType) { - OaUserType.undergraduate => undergraduate, - OaUserType.postgraduate => postgraduate, - _ => common, - }; - } -} - -/// 某篇通知的记录信息,根据该信息可寻找到对应文章 -@HiveType(typeId: CacheHiveType.oaAnnounceRecord) -class OaAnnounceRecord { - /// 标题 - @HiveField(0) - final String title; - - /// 文章id - @HiveField(1) - final String uuid; - - /// 目录id - @HiveField(2) - final String catalogId; - - /// 发布时间 - @HiveField(3) - final DateTime dateTime; - - /// 发布部门 - @HiveField(4) - final List departments; - - const OaAnnounceRecord({ - required this.title, - required this.uuid, - required this.catalogId, - required this.dateTime, - required this.departments, - }); - - @override - String toString() { - return { - "title": title, - "uuid": uuid, - "catalogId": catalogId, - "dateTime": dateTime, - "departments": departments, - }.toString(); - } -} - -@HiveType(typeId: CacheHiveType.oaAnnounceDetails) -class OaAnnounceDetails { - /// 标题 - @HiveField(0) - final String title; - - /// 发布时间 - @HiveField(1) - final DateTime dateTime; - - /// 发布部门 - @HiveField(2) - final String department; - - /// 发布者 - @HiveField(3) - final String author; - - /// 阅读人数 - @HiveField(4) - final int readNumber; - - /// 内容(html格式) - @HiveField(5) - final String content; - - /// 附件 - @HiveField(6) - final List attachments; - - const OaAnnounceDetails({ - required this.title, - required this.dateTime, - required this.department, - required this.author, - required this.readNumber, - required this.content, - required this.attachments, - }); - - @override - String toString() { - return { - "title": title, - "dateTime": dateTime, - "department": department, - "author": author, - "readNumber": readNumber, - "content": content, - "attachments": attachments, - }.toString(); - } -} - -@HiveType(typeId: CacheHiveType.oaAnnounceAttachment) -class OaAnnounceAttachment { - /// 附件标题 - @HiveField(0) - final String name; - - /// 附件下载网址 - @HiveField(1) - final String url; - - const OaAnnounceAttachment({ - required this.name, - required this.url, - }); - - @override - String toString() { - return { - "name": name, - "url": url, - }.toString(); - } -} diff --git a/lib/school/oa_announce/entity/announce.g.dart b/lib/school/oa_announce/entity/announce.g.dart deleted file mode 100644 index 580fe2bce..000000000 --- a/lib/school/oa_announce/entity/announce.g.dart +++ /dev/null @@ -1,136 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'announce.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class OaAnnounceRecordAdapter extends TypeAdapter { - @override - final int typeId = 92; - - @override - OaAnnounceRecord read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return OaAnnounceRecord( - title: fields[0] as String, - uuid: fields[1] as String, - catalogId: fields[2] as String, - dateTime: fields[3] as DateTime, - departments: (fields[4] as List).cast(), - ); - } - - @override - void write(BinaryWriter writer, OaAnnounceRecord obj) { - writer - ..writeByte(5) - ..writeByte(0) - ..write(obj.title) - ..writeByte(1) - ..write(obj.uuid) - ..writeByte(2) - ..write(obj.catalogId) - ..writeByte(3) - ..write(obj.dateTime) - ..writeByte(4) - ..write(obj.departments); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is OaAnnounceRecordAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class OaAnnounceDetailsAdapter extends TypeAdapter { - @override - final int typeId = 90; - - @override - OaAnnounceDetails read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return OaAnnounceDetails( - title: fields[0] as String, - dateTime: fields[1] as DateTime, - department: fields[2] as String, - author: fields[3] as String, - readNumber: fields[4] as int, - content: fields[5] as String, - attachments: (fields[6] as List).cast(), - ); - } - - @override - void write(BinaryWriter writer, OaAnnounceDetails obj) { - writer - ..writeByte(7) - ..writeByte(0) - ..write(obj.title) - ..writeByte(1) - ..write(obj.dateTime) - ..writeByte(2) - ..write(obj.department) - ..writeByte(3) - ..write(obj.author) - ..writeByte(4) - ..write(obj.readNumber) - ..writeByte(5) - ..write(obj.content) - ..writeByte(6) - ..write(obj.attachments); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is OaAnnounceDetailsAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class OaAnnounceAttachmentAdapter extends TypeAdapter { - @override - final int typeId = 91; - - @override - OaAnnounceAttachment read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return OaAnnounceAttachment( - name: fields[0] as String, - url: fields[1] as String, - ); - } - - @override - void write(BinaryWriter writer, OaAnnounceAttachment obj) { - writer - ..writeByte(2) - ..writeByte(0) - ..write(obj.name) - ..writeByte(1) - ..write(obj.url); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is OaAnnounceAttachmentAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/school/oa_announce/entity/page.dart b/lib/school/oa_announce/entity/page.dart deleted file mode 100644 index 33a7f66b1..000000000 --- a/lib/school/oa_announce/entity/page.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'announce.dart'; - -/// 获取到的通知页 -class OaAnnounceListPayload { - final int currentPage; - final int totalPage; - final List items; - - const OaAnnounceListPayload({ - required this.currentPage, - required this.totalPage, - required this.items, - }); - - @override - String toString() { - return { - "currentPage": currentPage, - "totalPage": totalPage, - "items": items, - }.toString(); - } -} diff --git a/lib/school/oa_announce/i18n.dart b/lib/school/oa_announce/i18n.dart deleted file mode 100644 index 1b44f439c..000000000 --- a/lib/school/oa_announce/i18n.dart +++ /dev/null @@ -1,43 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "oaAnnounce"; - final info = const _Info(); - - String get title => "$ns.title".tr(); - - String get noOaAnnouncementsTip => "$ns.noOaAnnouncementsTip".tr(); - - String get downloadCompleted => "$ns.downloadCompleted".tr(); - - String get downloadFailed => "$ns.downloadFailed".tr(); - - String get downloading => "$ns.downloading".tr(); - - String get infoTab => "$ns.tab.info".tr(); - - String get contentTab => "$ns.tab.content".tr(); -} - -class _Info { - const _Info(); - - static const ns = "${_I18n.ns}.info"; - - String attachmentHeader(int count) => "$ns.attachmentHeader".plural(count); - - String get title => "$ns.title".tr(); - - String get publishTime => "$ns.publishTime".tr(); - - String get department => "$ns.department".tr(); - - String get author => "$ns.author".tr(); - - String get tags => "$ns.tags".tr(); -} diff --git a/lib/school/oa_announce/index.dart b/lib/school/oa_announce/index.dart deleted file mode 100644 index 2e79e5f4c..000000000 --- a/lib/school/oa_announce/index.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:rettulf/rettulf.dart'; - -import "i18n.dart"; - -class OaAnnounceAppCard extends StatefulWidget { - const OaAnnounceAppCard({super.key}); - - @override - State createState() => _OaAnnounceAppCardState(); -} - -class _OaAnnounceAppCardState extends State { - @override - Widget build(BuildContext context) { - return AppCard( - title: i18n.title.text(), - leftActions: [ - FilledButton.icon( - onPressed: () { - context.push("/oa-announce"); - }, - icon: const Icon(Icons.newspaper), - label: i18n.seeAll.text(), - ), - ], - ); - } -} diff --git a/lib/school/oa_announce/init.dart b/lib/school/oa_announce/init.dart deleted file mode 100644 index 633e2e57f..000000000 --- a/lib/school/oa_announce/init.dart +++ /dev/null @@ -1,19 +0,0 @@ -import 'package:sit/school/oa_announce/service/announce.demo.dart'; -import 'package:sit/settings/dev.dart'; - -import 'storage/announce.dart'; - -import 'service/announce.dart'; - -class OaAnnounceInit { - static late OaAnnounceService service; - static late OaAnnounceStorage storage; - - static void init() { - service = Dev.demoMode ? const DemoOaAnnounceService() : const OaAnnounceService(); - } - - static void initStorage() { - storage = const OaAnnounceStorage(); - } -} diff --git a/lib/school/oa_announce/page/details.dart b/lib/school/oa_announce/page/details.dart deleted file mode 100644 index c338ef636..000000000 --- a/lib/school/oa_announce/page/details.dart +++ /dev/null @@ -1,236 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/design/widgets/tags.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/school/class2nd/utils.dart'; -import 'package:sit/school/oa_announce/widget/article.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/error.dart'; -import 'package:url_launcher/url_launcher_string.dart'; - -import '../entity/announce.dart'; -import '../init.dart'; -import '../i18n.dart'; -import '../service/announce.dart'; -import '../widget/attachment.dart'; - -class AnnounceDetailsPage extends StatefulWidget { - final OaAnnounceRecord record; - - const AnnounceDetailsPage( - this.record, { - super.key, - }); - - @override - State createState() => _AnnounceDetailsPageState(); -} - -class _Tab { - static const length = 2; - static const info = 0; - static const content = 1; -} - -class _AnnounceDetailsPageState extends State { - late OaAnnounceDetails? details = OaAnnounceInit.storage.getAnnounceDetails(widget.record.uuid); - bool isFetching = false; - - @override - void initState() { - super.initState(); - refresh(); - } - - Future refresh() async { - if (details != null) return; - if (!mounted) return; - setState(() { - isFetching = true; - }); - try { - final catalogId = widget.record.catalogId; - final uuid = widget.record.uuid; - final details = await OaAnnounceInit.service.fetchAnnounceDetails(catalogId, uuid); - OaAnnounceInit.storage.setAnnounceDetails(uuid, details); - if (!mounted) return; - setState(() { - this.details = details; - isFetching = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final details = this.details; - final record = widget.record; - return Scaffold( - body: DefaultTabController( - length: _Tab.length, - child: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.title.text(), - actions: [ - PlatformIconButton( - onPressed: () { - launchUrlString( - OaAnnounceService.getAnnounceUrl(widget.record.catalogId, widget.record.uuid), - mode: LaunchMode.externalApplication, - ); - }, - icon: const Icon(Icons.open_in_browser), - ), - ], - forceElevated: innerBoxIsScrolled, - bottom: TabBar( - isScrollable: true, - tabs: [ - Tab(child: i18n.infoTab.text()), - Tab(child: i18n.contentTab.text()), - ], - ), - ), - ), - ]; - }, - body: TabBarView( - children: [ - OaAnnounceDetailsInfoTabView(record: record, details: details), - OaAnnounceDetailsContentTabView(details: details), - ], - ), - ), - ), - bottomNavigationBar: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ); - } -} - -class OaAnnounceDetailsInfoTabView extends StatefulWidget { - final OaAnnounceRecord record; - final OaAnnounceDetails? details; - - const OaAnnounceDetailsInfoTabView({ - super.key, - required this.record, - this.details, - }); - - @override - State createState() => _OaAnnounceDetailsInfoTabViewState(); -} - -class _OaAnnounceDetailsInfoTabViewState extends State - with AutomaticKeepAliveClientMixin { - @override - bool get wantKeepAlive => true; - - @override - Widget build(BuildContext context) { - super.build(context); - final details = widget.details; - final record = widget.record; - final (:title, :tags) = separateTagsFromTitle(record.title); - return SelectionArea( - child: CustomScrollView( - slivers: [ - SliverList.list(children: [ - DetailListTile( - title: i18n.info.title, - subtitle: title, - ), - if (details != null) - DetailListTile( - title: i18n.info.author, - subtitle: details.author, - ), - DetailListTile( - title: i18n.info.publishTime, - subtitle: context.formatYmdText(record.dateTime), - ), - DetailListTile( - title: i18n.info.department, - subtitle: record.departments.join(", "), - ), - if (tags.isNotEmpty) - ListTile( - isThreeLine: true, - title: i18n.info.tags.text(), - subtitle: TagsGroup(tags), - ) - ]), - if (details != null && details.attachments.isNotEmpty) - SliverList.list(children: [ - const Divider(), - ListTile( - leading: const Icon(Icons.attach_file), - title: i18n.info.attachmentHeader(details.attachments.length).text(), - ) - ]), - if (details != null) - SliverList.builder( - itemCount: details.attachments.length, - itemBuilder: (ctx, i) => AttachmentLinkTile( - details.attachments[i], - uuid: record.uuid, - ), - ), - ], - ), - ); - } -} - -class OaAnnounceDetailsContentTabView extends StatefulWidget { - final OaAnnounceDetails? details; - - const OaAnnounceDetailsContentTabView({ - super.key, - this.details, - }); - - @override - State createState() => _OaAnnounceDetailsContentTabViewState(); -} - -class _OaAnnounceDetailsContentTabViewState extends State - with AutomaticKeepAliveClientMixin { - @override - bool get wantKeepAlive => true; - - @override - Widget build(BuildContext context) { - super.build(context); - final details = widget.details; - return SelectionArea( - child: CustomScrollView( - slivers: [ - if (details != null) - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 8), - sliver: AnnounceArticle(details), - ) - ], - ), - ); - } -} diff --git a/lib/school/oa_announce/page/list.dart b/lib/school/oa_announce/page/list.dart deleted file mode 100644 index e3e0c678e..000000000 --- a/lib/school/oa_announce/page/list.dart +++ /dev/null @@ -1,213 +0,0 @@ -import 'dart:math'; - -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/widgets/common.dart'; - -import 'package:sit/school/oa_announce/widget/tile.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/collection.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/announce.dart'; -import '../init.dart'; -import '../i18n.dart'; - -class OaAnnounceListPage extends ConsumerStatefulWidget { - const OaAnnounceListPage({super.key}); - - @override - ConsumerState createState() => _OaAnnounceListPageState(); -} - -class _OaAnnounceListPageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final userType = ref.watch(CredentialsInit.storage.$oaUserType); - final cats = OaAnnounceCat.resolve(userType); - return OaAnnounceListPageInternal(cats: cats); - } -} - -class OaAnnounceListPageInternal extends StatefulWidget { - final List cats; - - const OaAnnounceListPageInternal({ - super.key, - required this.cats, - }); - - @override - State createState() => _OaAnnounceListPageInternalState(); -} - -class _OaAnnounceListPageInternalState extends State { - late final $loadingStates = ValueNotifier(widget.cats.map((cat) => false).toList()); - - @override - void dispose() { - $loadingStates.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - bottomNavigationBar: PreferredSize( - preferredSize: const Size.fromHeight(4), - child: $loadingStates >> - (ctx, states) { - return !states.any((state) => state == true) ? const SizedBox() : const LinearProgressIndicator(); - }, - ), - body: DefaultTabController( - length: widget.cats.length, - child: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - // These are the slivers that show up in the "outer" scroll view. - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.title.text(), - forceElevated: innerBoxIsScrolled, - bottom: TabBar( - isScrollable: true, - tabs: widget.cats - .map((cat) => Tab( - child: cat.l10nName().text(), - )) - .toList(), - ), - ), - ), - ]; - }, - body: TabBarView( - // These are the contents of the tab views, below the tabs. - children: widget.cats.mapIndexed((i, cat) { - return OaAnnounceLoadingList( - key: ValueKey(cat), - cat: cat, - onLoadingChanged: (state) { - final newStates = List.of($loadingStates.value); - newStates[i] = state; - $loadingStates.value = newStates; - }, - ); - }).toList(), - ), - ), - ), - ); - } -} - -class OaAnnounceLoadingList extends StatefulWidget { - final OaAnnounceCat cat; - final ValueChanged onLoadingChanged; - - const OaAnnounceLoadingList({ - super.key, - required this.cat, - required this.onLoadingChanged, - }); - - @override - State createState() => _OaAnnounceLoadingListState(); -} - -class _OaAnnounceLoadingListState extends State with AutomaticKeepAliveClientMixin { - int lastPage = 1; - bool isFetching = false; - late var announcements = OaAnnounceInit.storage.getAnnouncements(widget.cat); - - @override - bool get wantKeepAlive => true; - - @override - void initState() { - super.initState(); - Future.delayed(Duration.zero).then((value) async { - await loadMore(); - }); - } - - @override - Widget build(BuildContext context) { - super.build(context); - final announcements = this.announcements; - return NotificationListener( - onNotification: (event) { - if (event.metrics.pixels >= event.metrics.maxScrollExtent) { - loadMore(); - } - return true; - }, - child: CustomScrollView( - // CAN'T USE ScrollController, and I don't know why - // controller: scrollController, - slivers: [ - SliverOverlapInjector( - // This is the flip side of the SliverOverlapAbsorber above. - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - ), - if (announcements != null) - if (announcements.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noOaAnnouncementsTip, - ), - ) - else - SliverList.builder( - itemCount: announcements.length, - itemBuilder: (ctx, index) { - return Card.filled( - clipBehavior: Clip.hardEdge, - child: OaAnnounceTile(announcements[index]), - ); - }, - ), - ], - ), - ); - } - - Future loadMore() async { - if (isFetching) return; - if (!mounted) return; - setState(() { - isFetching = true; - }); - widget.onLoadingChanged(true); - final cat = widget.cat; - try { - final lastPayload = await OaAnnounceInit.service.getAnnounceList(cat, lastPage); - final announcements = this.announcements ?? []; - announcements.addAll(lastPayload.items); - announcements.distinctBy((a) => a.uuid); - announcements.sort((a, b) => b.dateTime.compareTo(a.dateTime)); - await OaAnnounceInit.storage.setAnnouncements(cat, announcements); - if (!mounted) return; - setState(() { - lastPage = max(lastPage + 1, lastPayload.totalPage); - this.announcements = announcements; - isFetching = false; - }); - widget.onLoadingChanged(false); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - widget.onLoadingChanged(false); - } - } -} diff --git a/lib/school/oa_announce/service/announce.dart b/lib/school/oa_announce/service/announce.dart deleted file mode 100644 index 4fbe80869..000000000 --- a/lib/school/oa_announce/service/announce.dart +++ /dev/null @@ -1,114 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:intl/intl.dart'; -import 'package:sit/init.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/session/sso.dart'; - -import '../entity/announce.dart'; -import '../entity/page.dart'; - -final _announceDateTimeFormat = DateFormat('yyyy-MM-dd'); -final _departmentSplitRegex = RegExp(r'\s+'); -final _dateFormat = DateFormat('yyyy年MM月dd日 hh:mm'); - -class OaAnnounceService { - SsoSession get _session => Init.ssoSession; - - const OaAnnounceService(); - - List _parseAttachment(Bs4Element element) { - return element.find('#containerFrame > table')!.findAll('a').map((e) { - return OaAnnounceAttachment( - name: e.text.trim(), - url: 'https://myportal.sit.edu.cn/${e.attributes['href']!}', - ); - }).toList(); - } - - OaAnnounceDetails _parseAnnounceDetails(Bs4Element item) { - String metaHtml = item.find('div', class_: 'bulletin-info')?.innerHtml ?? ''; - // 删除注释 - metaHtml = metaHtml.replaceAll('', ''); - String meta = BeautifulSoup(metaHtml).text; - - final metaList = meta.split('|').map((e) => e.trim()).toList(); - final title = item.find('div', class_: 'bulletin-title')?.text.trim() ?? ''; - final author = metaList[2].substring(3); - final department = metaList[1].substring(5); - return OaAnnounceDetails( - title: mapChinesePunctuations(title), - content: item.find('div', class_: 'bulletin-content')?.innerHtml ?? '', - attachments: _parseAttachment(item), - dateTime: _dateFormat.parse(metaList[0].substring(5)), - department: mapChinesePunctuations(department), - author: mapChinesePunctuations(author), - readNumber: int.parse(metaList[3].substring(5)), - ); - } - - static String getAnnounceUrl(String catalogueId, String uuid) { - return 'https://myportal.sit.edu.cn/detach.portal?action=bulletinBrowser&.ia=false&.pmn=view&.pen=$catalogueId&bulletinId=$uuid'; - } - - Future fetchAnnounceDetails(String catalogId, String uuid) async { - final response = await _session.request( - getAnnounceUrl(catalogId, uuid), - options: Options( - method: "GET", - ), - ); - final soup = BeautifulSoup(response.data); - return _parseAnnounceDetails(soup.html!); - } - - static OaAnnounceListPayload _parseAnnounceListPage(Bs4Element element) { - final list = element.findAll('li').map((e) { - final departmentAndDate = e.find('span', class_: 'rss-time')!.text.trim(); - final departmentAndDateLen = departmentAndDate.length; - final department = departmentAndDate.substring(0, departmentAndDateLen - 8); - final date = '20${departmentAndDate.substring(departmentAndDateLen - 8, departmentAndDateLen)}'; - - final titleElement = e.find('a', class_: 'rss-title')!; - final uri = Uri.parse(titleElement.attributes['href']!); - - return OaAnnounceRecord( - title: mapChinesePunctuations(titleElement.text.trim()), - departments: department.trim().split(_departmentSplitRegex).map(mapChinesePunctuations).toList(), - dateTime: _announceDateTimeFormat.parse(date), - catalogId: uri.queryParameters['.pen']!, - uuid: uri.queryParameters['bulletinId']!, - ); - }).toList(); - - ({int currentPage, int totalPage})? parsePage() { - final currentRaw = element.find('div', attrs: {'title': '当前页'})?.text; - if (currentRaw == null) return null; - final lastElement = element.find('a', attrs: {'title': '点击跳转到最后页'}); - if (lastElement == null) return null; - final lastElementHref = Uri.parse(lastElement.attributes['href']!); - final lastPageIndex = lastElementHref.queryParameters['pageIndex']!; - return (currentPage: int.parse(currentRaw), totalPage: int.parse(lastPageIndex)); - } - - final page = parsePage(); - - return OaAnnounceListPayload( - items: list, - currentPage: page?.currentPage ?? 1, - totalPage: page?.totalPage ?? 1, - ); - } - - Future getAnnounceList(OaAnnounceCat cat, int pageIndex) async { - final response = await _session.request( - 'https://myportal.sit.edu.cn/detach.portal?pageIndex=$pageIndex&groupid=&action=bulletinsMoreView&.ia=false&pageSize=&.pmn=view&.pen=${cat.internalId}', - options: Options( - method: "GET", - ), - ); - final html = BeautifulSoup(response.data); - return _parseAnnounceListPage(html.html!); - } -} diff --git a/lib/school/oa_announce/service/announce.demo.dart b/lib/school/oa_announce/service/announce.demo.dart deleted file mode 100644 index d39583546..000000000 --- a/lib/school/oa_announce/service/announce.demo.dart +++ /dev/null @@ -1,75 +0,0 @@ -import 'dart:math'; - -import 'package:flame/extensions.dart'; -import 'package:sit/school/oa_announce/entity/announce.dart'; - -import 'package:sit/school/oa_announce/entity/page.dart'; - -import 'announce.dart'; - -class DemoOaAnnounceService implements OaAnnounceService { - const DemoOaAnnounceService(); - - @override - Future fetchAnnounceDetails(String catalogId, String uuid) async { - return OaAnnounceDetails( - title: "title", - dateTime: DateTime.now(), - department: "Any", - author: "Any", - readNumber: 100, - content: "", - attachments: [], - ); - } - - @override - Future getAnnounceList(OaAnnounceCat cat, int pageIndex) async { - if (pageIndex == 1) { - final now = DateTime.now(); - final rand = Random(); - return OaAnnounceListPayload( - currentPage: 1, - totalPage: 1, - items: [ - OaAnnounceRecord( - title: '小应生活发布啦', - uuid: "1", - catalogId: cat.internalId, - dateTime: DateTime.now().copyWith(day: now.day - rand.nextInt(20)), - departments: [_departments.random(rand)], - ), - OaAnnounceRecord( - title: '小应生活全新升级', - uuid: "2", - catalogId: cat.internalId, - dateTime: DateTime.now().copyWith(day: now.day - rand.nextInt(20)), - departments: [_departments.random(rand)], - ), - OaAnnounceRecord( - title: '小应生活测试计划', - uuid: "3", - catalogId: cat.internalId, - dateTime: DateTime.now().copyWith(day: now.day - rand.nextInt(20)), - departments: [_departments.random(rand)], - ) - ], - ); - } else { - return OaAnnounceListPayload( - currentPage: pageIndex, - totalPage: pageIndex, - items: [], - ); - } - } -} - -const _departments = [ - "开发部", - "后勤部", - "和平部", - "友爱部", - "真理部", - "富裕部", -]; diff --git a/lib/school/oa_announce/storage/announce.dart b/lib/school/oa_announce/storage/announce.dart deleted file mode 100644 index 8ddcb5ffd..000000000 --- a/lib/school/oa_announce/storage/announce.dart +++ /dev/null @@ -1,58 +0,0 @@ -import 'package:sit/utils/hive.dart'; -import 'package:hive/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/announce.dart'; - -class _K { - static String announce(String uuid) => '/announce/$uuid'; - - static String announceDetails(String uuid) => '/announceDetails/$uuid'; - - static String announceIdList(OaAnnounceCat type) => '/announceIdList/$type'; -} - -class OaAnnounceStorage { - Box get box => HiveInit.oaAnnounce; - - const OaAnnounceStorage(); - - List? getAnnounceIdList(OaAnnounceCat type) => box.safeGet>(_K.announceIdList(type)); - - Future setAnnounceIdList(OaAnnounceCat type, List? announceIdList) => - box.safePut>(_K.announceIdList(type), announceIdList); - - OaAnnounceRecord? getAnnounce(String uuid) => box.safeGet(_K.announce(uuid)); - - Future setAnnounce(String uuid, OaAnnounceRecord? announce) => - box.safePut(_K.announce(uuid), announce); - - OaAnnounceDetails? getAnnounceDetails(String uuid) => box.safeGet(_K.announceDetails(uuid)); - - Future setAnnounceDetails(String uuid, OaAnnounceDetails? details) => - box.safePut(_K.announceDetails(uuid), details); - - List? getAnnouncements(OaAnnounceCat type) { - final idList = getAnnounceIdList(type); - if (idList == null) return null; - final res = []; - for (final id in idList) { - final announce = getAnnounce(id); - if (announce != null) { - res.add(announce); - } - } - return res; - } - - Future? setAnnouncements(OaAnnounceCat type, List? announcements) async { - if (announcements == null) { - await setAnnouncements(type, null); - } else { - await setAnnounceIdList(type, announcements.map((e) => e.uuid).toList(growable: false)); - for (final announce in announcements) { - await setAnnounce(announce.uuid, announce); - } - } - } -} diff --git a/lib/school/oa_announce/widget/article.dart b/lib/school/oa_announce/widget/article.dart deleted file mode 100644 index e360bf0bf..000000000 --- a/lib/school/oa_announce/widget/article.dart +++ /dev/null @@ -1,37 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_widget_from_html/flutter_widget_from_html.dart'; -import 'package:sit/widgets/html.dart'; - -import '../entity/announce.dart'; - -class AnnounceArticle extends StatelessWidget { - final OaAnnounceDetails details; - - const AnnounceArticle(this.details, {super.key}); - - @override - Widget build(BuildContext context) { - final htmlContent = _linkTel(details.content); - return RestyledHtmlWidget( - htmlContent, - renderMode: RenderMode.sliverList, - ); - } -} - -final RegExp _phoneRegex = RegExp(r"(6087\d{4})"); -final RegExp _mobileRegex = RegExp(r"(\d{12})"); - -String _linkTel(String content) { - String t = content; - for (var phone in _phoneRegex.allMatches(t)) { - final num = phone.group(0).toString(); - t = t.replaceAll(num, '$num'); - } - for (var mobile in _mobileRegex.allMatches(content)) { - final num = mobile.group(0).toString(); - t = t.replaceAll(num, '$num'); - } - return t; -} diff --git a/lib/school/oa_announce/widget/attachment.dart b/lib/school/oa_announce/widget/attachment.dart deleted file mode 100644 index b95e46e5b..000000000 --- a/lib/school/oa_announce/widget/attachment.dart +++ /dev/null @@ -1,130 +0,0 @@ -import 'dart:io'; - -import 'package:flutter/gestures.dart'; -import 'package:flutter/material.dart'; -import 'package:sanitize_filename/sanitize_filename.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:open_file/open_file.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/files.dart'; -import 'package:sit/init.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/announce.dart'; -import '../i18n.dart'; - -class AttachmentLinkTile extends StatefulWidget { - final String uuid; - final OaAnnounceAttachment attachment; - - const AttachmentLinkTile( - this.attachment, { - super.key, - required this.uuid, - }); - - @override - State createState() => _AttachmentLinkTileState(); -} - -class _AttachmentLinkTileState extends State { - double? progress; - - @override - Widget build(BuildContext context) { - final progress = this.progress; - return ListTile( - title: RichText( - text: TextSpan( - children: [ - TextSpan( - text: widget.attachment.name, - style: const TextStyle(color: Colors.blue), - recognizer: TapGestureRecognizer()..onTap = onDownload, - ), - ], - ), - ), - subtitle: progress == null - ? null - : LinearProgressIndicator( - value: progress.isNaN ? null : progress, - ), - ); - } - - Future onDownload() async { - final dir = await Files.oaAnnounce.attachmentDir(widget.uuid).create(recursive: true); - final target = dir.subFile(sanitizeFilename(widget.attachment.name)); - if (await target.exists()) { - await OpenFile.open(target.path); - } else { - if (!mounted) return; - context.showSnackBar( - content: i18n.downloading.text(), - duration: const Duration(seconds: 1), - ); - try { - await _onDownloadFile( - name: widget.attachment.name, - url: widget.attachment.url, - target: target, - onProgress: (progress) { - if (!mounted) return; - setState(() { - this.progress = progress; - }); - }, - ); - if (!mounted) return; - context.showSnackBar( - content: widget.attachment.name.text(), - duration: const Duration(seconds: 5), - action: SnackBarAction( - label: i18n.open, - onPressed: () async { - await OpenFile.open(target.path); - }, - ), - ); - setState(() { - progress = 1; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - progress = null; - }); - context.showSnackBar( - content: i18n.downloadFailed.text(), - duration: const Duration(seconds: 5), - action: SnackBarAction( - label: i18n.retry, - onPressed: () async { - await onDownload(); - }, - ), - ); - } - } - } -} - -Future _onDownloadFile({ - required String name, - required String url, - required File target, - void Function(double progress)? onProgress, -}) async { - debugPrint('Start downloading [$name]($url) to $target'); - // 如果文件不存在,那么下载文件 - await Init.dio.download( - url, - target.path, - onReceiveProgress: (int count, int total) { - onProgress?.call(total <= 0 ? double.nan : count / total); - }, - ); - debugPrint('Downloaded [$name]($url)'); -} diff --git a/lib/school/oa_announce/widget/tile.dart b/lib/school/oa_announce/widget/tile.dart deleted file mode 100644 index 97e351897..000000000 --- a/lib/school/oa_announce/widget/tile.dart +++ /dev/null @@ -1,35 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/widgets/tags.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/school/class2nd/utils.dart'; - -import '../entity/announce.dart'; - -class OaAnnounceTile extends StatelessWidget { - final OaAnnounceRecord record; - - const OaAnnounceTile( - this.record, { - super.key, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - final (:title, :tags) = separateTagsFromTitle(record.title); - - return ListTile( - isThreeLine: true, - titleTextStyle: textTheme.titleMedium, - title: title.text(), - subtitleTextStyle: textTheme.bodySmall, - subtitle: TagsGroup(record.departments + tags), - trailing: context.formatYmdNum(record.dateTime).text(style: textTheme.bodySmall), - onTap: () { - context.push("/oa-announce/details", extra: record); - }, - ); - } -} diff --git a/lib/school/page/settings.dart b/lib/school/page/settings.dart deleted file mode 100644 index ad7f24526..000000000 --- a/lib/school/page/settings.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; -import '../i18n.dart'; - -class SchoolSettingsPage extends ConsumerStatefulWidget { - const SchoolSettingsPage({ - super.key, - }); - - @override - ConsumerState createState() => _SchoolSettingsPageState(); -} - -class _SchoolSettingsPageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final userType = ref.watch(CredentialsInit.storage.$oaUserType); - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.navigation.text(), - ), - SliverList.list( - children: [ - if (userType?.capability.enableClass2nd == true) buildClass2ndAutoRefreshToggle(), - if (userType?.capability.enableExamResult == true) buildExamResultShowResultPreviewToggle(), - ], - ), - ], - ), - ); - } - - Widget buildClass2ndAutoRefreshToggle() { - return StatefulBuilder( - builder: (ctx, setState) => ListTile( - title: i18n.settings.class2nd.autoRefresh.text(), - subtitle: i18n.settings.class2nd.autoRefreshDesc.text(), - leading: Icon(context.icons.refresh), - trailing: Switch.adaptive( - value: Settings.school.class2nd.autoRefresh, - onChanged: (newV) { - setState(() { - Settings.school.class2nd.autoRefresh = newV; - }); - }, - ), - ), - ); - } - - Widget buildExamResultShowResultPreviewToggle() { - return StatefulBuilder( - builder: (ctx, setState) => ListTile( - title: i18n.settings.examResult.showResultPreview.text(), - subtitle: i18n.settings.examResult.showResultPreviewDesc.text(), - leading: const Icon(Icons.preview), - trailing: Switch.adaptive( - value: Settings.school.examResult.showResultPreview, - onChanged: (newV) { - setState(() { - Settings.school.examResult.showResultPreview = newV; - }); - }, - ), - ), - ); - } -} diff --git a/lib/school/settings.dart b/lib/school/settings.dart deleted file mode 100644 index 5cd04cf79..000000000 --- a/lib/school/settings.dart +++ /dev/null @@ -1,63 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:hive_flutter/hive_flutter.dart'; - -const _kClass2ndAutoRefresh = true; - -class SchoolSettings { - final Box box; - - SchoolSettings(this.box); - - late final class2nd = _Class2nd(box); - late final examResult = _ExamResult(box); - late final examArrange = _ExamArrange(box); - - static const ns = "/school"; -} - -class _Class2ndK { - static const ns = "${SchoolSettings.ns}/class2nd"; - static const autoRefresh = "$ns/autoRefresh"; -} - -class _Class2nd { - final Box box; - - const _Class2nd(this.box); - - bool get autoRefresh => box.safeGet(_Class2ndK.autoRefresh) ?? _kClass2ndAutoRefresh; - - set autoRefresh(bool newV) => box.safePut(_Class2ndK.autoRefresh, newV); -} - -const _kExamResulShowResultPreview = true; - -class _ExamResultK { - static const ns = "${SchoolSettings.ns}/examResult"; - static const showResultPreview = "$ns/showResultPreview"; -} - -class _ExamResult { - final Box box; - - _ExamResult(this.box); - - bool get showResultPreview => box.safeGet(_ExamResultK.showResultPreview) ?? _kExamResulShowResultPreview; - - set showResultPreview(bool newV) => box.safePut(_ExamResultK.showResultPreview, newV); - - Listenable listenShowResultPreview() => box.listenable(keys: [_ExamResultK.showResultPreview]); - - late final $showResultPreview = box.provider(_ExamResultK.showResultPreview); -} - -class _ExamArrangeK { - static const ns = "${SchoolSettings.ns}/examArrange"; -} - -class _ExamArrange { - final Box box; - - const _ExamArrange(this.box); -} diff --git a/lib/school/utils.dart b/lib/school/utils.dart deleted file mode 100644 index dd57b5817..000000000 --- a/lib/school/utils.dart +++ /dev/null @@ -1,80 +0,0 @@ -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/entity/school.dart'; - -/// 将 "第几周、周几" 转换为日期. 如, 开学日期为 2021-9-1, 那么将第一周周一转换为 2021-9-1 -DateTime reflectWeekDayIndexToDate({ - required DateTime startDate, - required int weekIndex, - required Weekday weekday, -}) { - return startDate.add(Duration(days: weekIndex * 7 + weekday.index)); -} - -final _parenthesesRegx = RegExp(r"\((.*?)\)"); - -/// Exchange a string in brackets with a string out of brackets, -/// if the string in brackets has a substring such as "一教", "二教", and "三教". -String reformatPlace(String place) { - final matched = _parenthesesRegx.firstMatch(place); - if (matched == null) return place; - final inParentheses = matched.group(1); - if (inParentheses == null) return place; - if (!inParentheses.contains("一教") && !inParentheses.contains("二教") && !inParentheses.contains("三教")) return place; - final outParentheses = place.replaceRange(matched.start, matched.end, ""); - return "$inParentheses($outParentheses)"; -} - -/// 删去 place 括号里的描述信息. 如, 二教F301(机电18中外合作专用) -/// But it will keep the "三教" in brackets. -String beautifyPlace(String place) { - int indexOfBucket = place.indexOf('('); - return indexOfBucket != -1 ? place.substring(0, indexOfBucket) : place; -} - -/// Replace the full-width brackets to ASCII ones -String mapChinesePunctuations(String name) { - final b = StringBuffer(); - for (final c in name.runes) { - switch (c) { - case 0xFF08: // ( - b.writeCharCode(0x28); // ( - break; - - case 0xFF09: // ) - b.writeCharCode(0x29); // ) - break; - - case 0x3010: // 【 - b.writeCharCode(0x5B); // [ - break; - - case 0x3011: // 】 - b.writeCharCode(0x5D); // ] - break; - - case 0xFF06: // & - b.writeCharCode(0x26); // & - break; - default: - b.writeCharCode(c); - } - } - return b.toString(); -} - -int? getAdmissionYearFromStudentId(String? studentId) { - if (studentId == null) return null; - final fromID = int.tryParse(studentId.substring(0, 2)); - if (fromID != null) { - return 2000 + fromID; - } - return null; -} - -SemesterInfo estimateCurrentSemester() { - final now = DateTime.now(); - return SemesterInfo( - year: now.month >= 9 ? now.year : now.year - 1, - semester: now.month >= 3 && now.month <= 7 ? Semester.term2 : Semester.term1, - ); -} diff --git a/lib/school/widgets/campus.dart b/lib/school/widgets/campus.dart deleted file mode 100644 index 8cad2e1c4..000000000 --- a/lib/school/widgets/campus.dart +++ /dev/null @@ -1,29 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/entity/campus.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; - -class CampusSelector extends ConsumerWidget { - const CampusSelector({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - return SegmentedButton( - segments: Campus.values - .map((e) => ButtonSegment( - icon: Icon(context.icons.location), - value: e, - label: e.l10nName().text(), - )) - .toList(), - selected: {ref.watch(Settings.$campus) ?? Campus.fengxian}, - onSelectionChanged: (newSelection) async { - ref.read(Settings.$campus.notifier).set(newSelection.first); - await HapticFeedback.mediumImpact(); - }, - ); - } -} diff --git a/lib/school/widgets/course.dart b/lib/school/widgets/course.dart deleted file mode 100644 index 9d5f18d5e..000000000 --- a/lib/school/widgets/course.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/school/entity/icon.dart'; - -class CourseIcon extends StatelessWidget { - final String courseName; - final double? size; - final bool enabled; - static const kDefaultSize = 45.0; - - const CourseIcon({ - super.key, - required this.courseName, - this.enabled = true, - this.size = kDefaultSize, - }); - - @override - Widget build(BuildContext context) { - return Image.asset( - CourseIcons.iconPathOf(courseName: courseName), - width: size, - height: size, - color: enabled ? null : context.theme.disabledColor, - ).sized(w: kDefaultSize, h: kDefaultSize); - } -} diff --git a/lib/school/widgets/semester.dart b/lib/school/widgets/semester.dart deleted file mode 100644 index b23308a35..000000000 --- a/lib/school/widgets/semester.dart +++ /dev/null @@ -1,111 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/school.dart'; -import "../i18n.dart"; - -class SemesterSelector extends StatefulWidget { - final int? baseYear; - final SemesterInfo? initial; - - /// 是否显示整个学年 - final bool showEntireYear; - final void Function(SemesterInfo newSelection)? onSelected; - - const SemesterSelector({ - super.key, - required this.baseYear, - this.onSelected, - this.initial, - this.showEntireYear = false, - }); - - @override - State createState() => _SemesterSelectorState(); -} - -class _SemesterSelectorState extends State { - late final DateTime now; - - /// 四位年份 - late int selectedYear; - - /// 要查询的学期 - late Semester selectedSemester; - - @override - void initState() { - super.initState(); - now = DateTime.now(); - selectedYear = widget.initial?.year ?? (now.month >= 9 ? now.year : now.year - 1); - if (widget.showEntireYear) { - selectedSemester = widget.initial?.semester ?? Semester.all; - } else { - selectedSemester = - widget.initial?.semester ?? (now.month >= 3 && now.month <= 7 ? Semester.term2 : Semester.term1); - } - } - - @override - Widget build(BuildContext context) { - return [ - buildYearSelector().padH(4), - buildSemesterSelector().padH(4), - ].row(caa: CrossAxisAlignment.start, mas: MainAxisSize.min).padSymmetric(v: 5).center(); - } - - List _generateYearList() { - final endYear = now.month >= 9 ? now.year : now.year - 1; - List yearItems = []; - for (var year = widget.baseYear ?? now.year; year <= endYear; year++) { - yearItems.add(year); - } - return yearItems; - } - - Widget buildYearSelector() { - // 生成经历过的学期并逆序(方便用户选择) - final List yearList = _generateYearList().reversed.toList(); - - // 保证显示上初始选择年份、实际加载的年份、selectedYear 变量一致. - return DropdownMenu( - label: i18n.course.schoolYear.text(), - initialSelection: selectedYear, - onSelected: (int? newSelection) { - if (newSelection != null && newSelection != selectedYear) { - setState(() => selectedYear = newSelection); - widget.onSelected?.call(SemesterInfo(year: newSelection, semester: selectedSemester)); - } - }, - dropdownMenuEntries: yearList - .map((year) => DropdownMenuEntry( - value: year, - label: "$year–${year + 1}", - )) - .toList(), - ); - } - - Widget buildSemesterSelector() { - List semesters = widget.showEntireYear - ? const [Semester.all, Semester.term1, Semester.term2] - : const [Semester.term1, Semester.term2]; - // 保证显示上初始选择学期、实际加载的学期、selectedSemester 变量一致. - return DropdownMenu( - label: i18n.course.semester.text(), - initialSelection: selectedSemester, - onSelected: (Semester? newSelection) { - if (newSelection != null && newSelection != selectedSemester) { - setState(() => selectedSemester = newSelection); - widget.onSelected?.call(SemesterInfo(year: selectedYear, semester: newSelection)); - } - }, - dropdownMenuEntries: semesters - .map((semester) => DropdownMenuEntry( - value: semester, - label: semester.l10n(), - )) - .toList(), - ); - } -} diff --git a/lib/school/yellow_pages/entity/contact.dart b/lib/school/yellow_pages/entity/contact.dart deleted file mode 100644 index 746c9c845..000000000 --- a/lib/school/yellow_pages/entity/contact.dart +++ /dev/null @@ -1,46 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/storage/hive/type_id.dart'; - -part 'contact.g.dart'; - -@JsonSerializable(createToJson: false) -@HiveType(typeId: CacheHiveType.schoolContact) -class SchoolContact { - @JsonKey() - @HiveField(0) - final String department; - - @JsonKey(includeIfNull: false) - @HiveField(1) - final String? description; - - @JsonKey(includeIfNull: false) - @HiveField(2) - final String? name; - - @JsonKey() - @HiveField(3) - final String phone; - - const SchoolContact(this.department, this.description, this.name, this.phone); - - factory SchoolContact.fromJson(Map json) => _$SchoolContactFromJson(json); - - @override - String toString() { - return '{department: $department, description: $description, name: $name, phone: $phone}'; - } - - @override - bool operator ==(Object other) => - identical(this, other) || - other is SchoolContact && - runtimeType == other.runtimeType && - department == other.department && - name == other.name && - phone == other.phone && - description == other.description; - - @override - int get hashCode => Object.hash(department, name, phone, description); -} diff --git a/lib/school/yellow_pages/entity/contact.g.dart b/lib/school/yellow_pages/entity/contact.g.dart deleted file mode 100644 index a5e220bc1..000000000 --- a/lib/school/yellow_pages/entity/contact.g.dart +++ /dev/null @@ -1,59 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'contact.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class SchoolContactAdapter extends TypeAdapter { - @override - final int typeId = 100; - - @override - SchoolContact read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return SchoolContact( - fields[0] as String, - fields[1] as String?, - fields[2] as String?, - fields[3] as String, - ); - } - - @override - void write(BinaryWriter writer, SchoolContact obj) { - writer - ..writeByte(4) - ..writeByte(0) - ..write(obj.department) - ..writeByte(1) - ..write(obj.description) - ..writeByte(2) - ..write(obj.name) - ..writeByte(3) - ..write(obj.phone); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is SchoolContactAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -SchoolContact _$SchoolContactFromJson(Map json) => SchoolContact( - json['department'] as String, - json['description'] as String?, - json['name'] as String?, - json['phone'] as String, - ); diff --git a/lib/school/yellow_pages/i18n.dart b/lib/school/yellow_pages/i18n.dart deleted file mode 100644 index 2a26a296d..000000000 --- a/lib/school/yellow_pages/i18n.dart +++ /dev/null @@ -1,12 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "yellowPages"; - - String get title => "$ns.title".tr(); -} diff --git a/lib/school/yellow_pages/index.dart b/lib/school/yellow_pages/index.dart deleted file mode 100644 index ff0e0ddb9..000000000 --- a/lib/school/yellow_pages/index.dart +++ /dev/null @@ -1,90 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/r.dart'; -import 'init.dart'; -import 'storage/contact.dart'; -import 'widgets/contact.dart'; -import 'package:rettulf/rettulf.dart'; - -import 'entity/contact.dart'; -import 'i18n.dart'; -import 'widgets/search.dart'; - -const _historyLength = 2; - -class YellowPagesAppCard extends StatefulWidget { - const YellowPagesAppCard({super.key}); - - @override - State createState() => _YellowPagesAppCardState(); -} - -class _YellowPagesAppCardState extends State { - final $history = YellowPagesInit.storage.listenHistory(); - - @override - void initState() { - $history.addListener(refresh); - super.initState(); - } - - @override - void dispose() { - $history.removeListener(refresh); - super.dispose(); - } - - void refresh() { - setState(() {}); - } - - @override - Widget build(BuildContext context) { - final history = YellowPagesInit.storage.interactHistory ?? const []; - return AppCard( - view: buildHistory(history), - title: i18n.title.text(), - leftActions: [ - FilledButton.icon( - onPressed: () async { - final result = await showSearch(context: context, delegate: YellowPageSearchDelegate(R.yellowPages)); - if (result == null) return; - YellowPagesInit.storage.addInteractHistory(result); - }, - label: i18n.search.text(), - icon: const Icon(Icons.search), - ), - OutlinedButton( - onPressed: () { - context.push("/yellow-pages"); - }, - child: i18n.seeAll.text(), - ) - ], - ); - } - - Widget buildHistory(List history) { - if (history.isEmpty) return const SizedBox(); - final contacts = history.sublist(0, min(_historyLength, history.length)); - return contacts - .map((contact) { - return Dismissible( - direction: DismissDirection.endToStart, - key: ValueKey("${contact.name}+${contact.phone}"), - onDismissed: (dir) async { - await HapticFeedback.heavyImpact(); - history.remove(contact); - YellowPagesInit.storage.interactHistory = history; - }, - child: ContactTile(contact).inCard(), - ); - }) - .toList() - .column(mas: MainAxisSize.min); - } -} diff --git a/lib/school/yellow_pages/init.dart b/lib/school/yellow_pages/init.dart deleted file mode 100644 index 574c8125c..000000000 --- a/lib/school/yellow_pages/init.dart +++ /dev/null @@ -1,10 +0,0 @@ -import 'package:sit/school/yellow_pages/storage/contact.dart'; - -class YellowPagesInit { - static late YellowPagesStorage storage; - - static void init() {} - static void initStorage() { - storage = const YellowPagesStorage(); - } -} diff --git a/lib/school/yellow_pages/page/index.dart b/lib/school/yellow_pages/page/index.dart deleted file mode 100644 index d0b75678e..000000000 --- a/lib/school/yellow_pages/page/index.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/r.dart'; -import 'package:sit/school/yellow_pages/init.dart'; -import 'package:sit/school/yellow_pages/storage/contact.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../widgets/list.dart'; -import '../widgets/search.dart'; -import '../i18n.dart'; - -class YellowPagesListPage extends StatefulWidget { - const YellowPagesListPage({super.key}); - - @override - State createState() => _YellowPagesListPageState(); -} - -class _YellowPagesListPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: i18n.title.text(), - actions: [ - PlatformIconButton( - onPressed: () async { - final result = await showSearch(context: context, delegate: YellowPageSearchDelegate(R.yellowPages)); - if (result == null) return; - YellowPagesInit.storage.addInteractHistory(result); - }, - icon: Icon(context.icons.search), - ), - ], - ), - body: SchoolContactList( - R.yellowPages, - ), - ); - } -} diff --git a/lib/school/yellow_pages/storage/contact.dart b/lib/school/yellow_pages/storage/contact.dart deleted file mode 100644 index f31ec7f7d..000000000 --- a/lib/school/yellow_pages/storage/contact.dart +++ /dev/null @@ -1,41 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/foundation.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/contact.dart'; - -class _K { - static const history = "/interactHistory"; -} - -class YellowPagesStorage { - Box get box => HiveInit.yellowPages; - final int maxHistoryLength; - - const YellowPagesStorage({ - this.maxHistoryLength = 2, - }); - - List? get interactHistory => box.safeGet(_K.history)?.cast(); - - set interactHistory(List? newV) { - if (newV != null) { - newV = newV.sublist(0, min(newV.length, maxHistoryLength)); - } - box.safePut(_K.history, newV); - } - - ValueListenable listenHistory() => box.listenable(keys: [_K.history]); -} - -extension YellowPagesStorageX on YellowPagesStorage { - void addInteractHistory(SchoolContact contact) { - final interactHistory = this.interactHistory ?? []; - if (interactHistory.any((e) => e == contact)) return; - interactHistory.insert(0, contact); - this.interactHistory = interactHistory; - } -} diff --git a/lib/school/yellow_pages/widgets/contact.dart b/lib/school/yellow_pages/widgets/contact.dart deleted file mode 100644 index c17732bb8..000000000 --- a/lib/school/yellow_pages/widgets/contact.dart +++ /dev/null @@ -1,73 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/school/yellow_pages/init.dart'; -import 'package:sit/school/yellow_pages/storage/contact.dart'; -import 'package:sit/utils/guard_launch.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/contact.dart'; - -class ContactTile extends StatelessWidget { - final SchoolContact contact; - final bool? inHistory; - - const ContactTile( - this.contact, { - super.key, - this.inHistory, - }); - - @override - Widget build(BuildContext context) { - final name = contact.name; - final full = name == null ? contact.phone : "$name, ${contact.phone}"; - final phoneNumber = contact.phone.length == 8 ? "021${contact.phone}" : contact.phone; - return ListTile( - selected: inHistory ?? false, - leading: CircleAvatar( - backgroundColor: context.colorScheme.primary, - radius: 20, - child: name == null || name.isEmpty || _isDigit(name[0]) - ? Center(child: Icon(context.icons.accountCircle, size: 40, color: context.colorScheme.onPrimary)) - : name[0] - .text( - style: context.textTheme.titleLarge?.copyWith(color: context.colorScheme.onPrimary), - overflow: TextOverflow.ellipsis, - textAlign: TextAlign.center, - ) - .center(), - ), - title: contact.description.toString().text( - overflow: TextOverflow.ellipsis, - ), - subtitle: full.text(overflow: TextOverflow.ellipsis), - trailing: phoneNumber.isEmpty - ? null - : [ - PlatformIconButton( - icon: const Icon(Icons.phone), - onPressed: () async { - YellowPagesInit.storage.addInteractHistory(contact); - await guardLaunchUrlString(context, "tel:$phoneNumber"); - }, - ), - PlatformIconButton( - icon: const Icon(Icons.content_copy), - onPressed: () async { - YellowPagesInit.storage.addInteractHistory(contact); - await Clipboard.setData(ClipboardData(text: contact.phone)); - if (!context.mounted) return; - context.showSnackBar(content: "Phone number is copied".text()); - }, - ), - ].row(mas: MainAxisSize.min), - ); - } -} - -bool _isDigit(String char) { - return (char.codeUnitAt(0) ^ 0x30) <= 9; -} diff --git a/lib/school/yellow_pages/widgets/list.dart b/lib/school/yellow_pages/widgets/list.dart deleted file mode 100644 index 75015517e..000000000 --- a/lib/school/yellow_pages/widgets/list.dart +++ /dev/null @@ -1,90 +0,0 @@ -import 'package:collection/collection.dart'; -// import 'package:fit_system_screenshot/fit_system_screenshot.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/grouped.dart'; -import 'package:sit/school/yellow_pages/init.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/contact.dart'; -import 'contact.dart'; - -class SchoolContactList extends StatefulWidget { - final List contacts; - final bool Function(int index, int length)? isInitialExpanded; - - const SchoolContactList( - this.contacts, { - super.key, - this.isInitialExpanded, - }); - - @override - State createState() => _SchoolContactListState(); -} - -class _SchoolContactListState extends State { - late Map> department2contacts; - // Dispose? screenShotDispose; - // final scrollAreaKey = GlobalKey(); - // final scrollController = ScrollController(); - @override - void initState() { - super.initState(); - // screenShotDispose = fitSystemScreenshot.attachToPage( - // scrollAreaKey, - // scrollController, - // scrollController.jumpTo, - // ); - updateGroupedContacts(); - } - - @override - void dispose() { - // screenShotDispose?.call(); - // scrollController.dispose(); - super.dispose(); - } - - @override - void didUpdateWidget(covariant SchoolContactList oldWidget) { - super.didUpdateWidget(oldWidget); - if (!widget.contacts.equals(oldWidget.contacts)) { - updateGroupedContacts(); - } - } - - void updateGroupedContacts() { - department2contacts = widget.contacts.groupListsBy((contact) => contact.department); - } - - @override - Widget build(BuildContext context) { - final history = YellowPagesInit.storage.interactHistory; - return CustomScrollView( - // key: scrollAreaKey, - // controller: scrollController, - slivers: department2contacts.entries - .mapIndexed( - (i, entry) => GroupedSection( - headerBuilder: (context, expanded, toggleExpand, defaultTrailing) { - return ListTile( - title: entry.key.text(), - titleTextStyle: context.textTheme.titleMedium, - onTap: toggleExpand, - trailing: defaultTrailing, - ); - }, - initialExpanded: widget.isInitialExpanded?.call(i, department2contacts.length) ?? true, - itemCount: entry.value.length, - itemBuilder: (ctx, i) { - final contact = entry.value[i]; - final inHistory = history?.any((e) => e == contact); - return ContactTile(contact, inHistory: inHistory).inFilledCard(); - }, - ), - ) - .toList(), - ); - } -} diff --git a/lib/school/yellow_pages/widgets/search.dart b/lib/school/yellow_pages/widgets/search.dart deleted file mode 100644 index 567c63ce3..000000000 --- a/lib/school/yellow_pages/widgets/search.dart +++ /dev/null @@ -1,61 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; - -import '../entity/contact.dart'; -import 'list.dart'; - -class YellowPageSearchDelegate extends SearchDelegate { - final List contacts; - - YellowPageSearchDelegate(this.contacts) : super(); - - @override - List? buildActions(BuildContext context) { - return [ - PlatformIconButton( - icon: Icon(context.icons.clear), - onPressed: () => query = "", - ), - ]; - } - - @override - Widget? buildLeading(BuildContext context) { - return null; - } - - @override - Widget buildResults(BuildContext context) { - if (query.isEmpty) return const SizedBox(); - final matched = contacts.where((e) => predicate(query, e)).toList(); - return SchoolContactList(matched); - } - - @override - void showResults(BuildContext context) { - super.showResults(context); - final matched = contacts.where((e) => predicate(query, e)).toList(); - if (matched.length == 1) { - close(context, matched[0]); - } - } - - @override - Widget buildSuggestions(BuildContext context) { - if (query.isEmpty) return const SizedBox(); - final searched = contacts.where((e) => predicate(query, e)).toList(); - return SchoolContactList(searched); - } - - bool predicate(String query, SchoolContact contact) { - query = query.toLowerCase(); - final name = contact.name?.toLowerCase(); - final department = contact.department.toLowerCase(); - final description = contact.description?.toLowerCase(); - return department.contains(query) || - (name != null && name.contains(query)) || - (description != null && description.contains(query)) || - contact.phone.contains(query); - } -} diff --git a/lib/school/ywb/entity/application.dart b/lib/school/ywb/entity/application.dart deleted file mode 100644 index 09604dec0..000000000 --- a/lib/school/ywb/entity/application.dart +++ /dev/null @@ -1,162 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/storage/hive/type_id.dart'; -import 'package:sit/school/utils.dart'; - -part 'application.g.dart'; - -enum YwbApplicationType { - complete("Complete_Init"), - running("Runing_Init"), - todo("Todolist_Init"); - - final String method; - - const YwbApplicationType(this.method); - - String l10nName() => "ywb.type.$name".tr(); - - String get messageListUrl => - 'https://xgfy.sit.edu.cn/unifri-flow/WF/Comm/ProcessRequest.do?DoType=HttpHandler&DoMethod=$method&HttpHandlerName=BP.WF.HttpHandler.WF'; -} - -final _tsFormat = DateFormat("yyyy-MM-dd hh:mm"); - -DateTime _parseTimestamp(dynamic ts) { - return _tsFormat.parse(ts); -} - -@JsonSerializable(createToJson: false) -@HiveType(typeId: CacheHiveType.ywbApplication) -@CopyWith(skipFields: true) -class YwbApplication { - @JsonKey(name: 'WorkID') - @HiveField(0) - final int workId; - @JsonKey(name: 'FK_Flow') - @HiveField(1) - final String functionId; - @JsonKey(name: 'FlowName') - @HiveField(2) - final String name; - @JsonKey(name: 'FlowNote') - @HiveField(3) - final String note; - @JsonKey(name: 'RDT', fromJson: _parseTimestamp) - @HiveField(4) - final DateTime startTs; - @JsonKey(includeFromJson: false, includeToJson: false) - @HiveField(5) - final List track; - - const YwbApplication({ - required this.workId, - required this.functionId, - required this.name, - required this.note, - required this.startTs, - this.track = const [], - }); - - factory YwbApplication.fromJson(Map json) => _$YwbApplicationFromJson(json); - - @override - String toString() { - return { - "workId": workId, - "functionId": functionId, - "name": name, - "note": note, - "startTs": startTs, - "track": track, - }.toString(); - } -} - -@JsonSerializable(createToJson: false) -@HiveType(typeId: CacheHiveType.ywbApplicationTrack) -class YwbApplicationTrack { - @JsonKey(name: "ActionType") - @HiveField(0) - final int actionType; - @JsonKey(name: "ActionTypeText") - @HiveField(1) - final String action; - @JsonKey(name: "EmpFrom") - @HiveField(2) - final String senderId; - @JsonKey(name: "EmpFromT", fromJson: mapChinesePunctuations) - @HiveField(3) - final String senderName; - @JsonKey(name: "EmpTo") - @HiveField(4) - final String receiverId; - @JsonKey(name: "EmpToT", fromJson: mapChinesePunctuations) - @HiveField(5) - final String receiverName; - @JsonKey(name: "Msg", fromJson: mapChinesePunctuations) - @HiveField(6) - final String message; - @JsonKey(name: "RDT", fromJson: _parseTimestamp) - @HiveField(7) - final DateTime timestamp; - @JsonKey(name: "NDFromT", fromJson: mapChinesePunctuations) - @HiveField(8) - final String step; - - bool get isActionOk { - // 发送 - if (actionType == 1) return true; - // 退回 - if (actionType == 2) return false; - // 办结 - if (actionType == 8) return true; - return true; - } - - const YwbApplicationTrack({ - required this.actionType, - required this.action, - required this.senderId, - required this.senderName, - required this.receiverId, - required this.receiverName, - required this.message, - required this.timestamp, - required this.step, - }); - - factory YwbApplicationTrack.fromJson(Map json) => _$YwbApplicationTrackFromJson(json); - - @override - String toString() { - return { - "actionType": actionType, - "action": action, - "senderId": senderId, - "senderName": senderName, - "receiverId": receiverId, - "receiverName": receiverName, - "message": message, - "timestamp": timestamp, - "step": step, - }.toString(); - } -} - -typedef MyYwbApplications = ({ - List todo, - List running, - List complete, -}); - -extension MyYwbApplicationsX on MyYwbApplications { - List resolve(YwbApplicationType type) { - return switch (type) { - YwbApplicationType.todo => todo, - YwbApplicationType.running => running, - YwbApplicationType.complete => complete, - }; - } -} diff --git a/lib/school/ywb/entity/application.g.dart b/lib/school/ywb/entity/application.g.dart deleted file mode 100644 index f5982a332..000000000 --- a/lib/school/ywb/entity/application.g.dart +++ /dev/null @@ -1,212 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'application.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$YwbApplicationCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// YwbApplication(...).copyWith(id: 12, name: "My name") - /// ```` - YwbApplication call({ - int? workId, - String? functionId, - String? name, - String? note, - DateTime? startTs, - List? track, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfYwbApplication.copyWith(...)`. -class _$YwbApplicationCWProxyImpl implements _$YwbApplicationCWProxy { - const _$YwbApplicationCWProxyImpl(this._value); - - final YwbApplication _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// YwbApplication(...).copyWith(id: 12, name: "My name") - /// ```` - YwbApplication call({ - Object? workId = const $CopyWithPlaceholder(), - Object? functionId = const $CopyWithPlaceholder(), - Object? name = const $CopyWithPlaceholder(), - Object? note = const $CopyWithPlaceholder(), - Object? startTs = const $CopyWithPlaceholder(), - Object? track = const $CopyWithPlaceholder(), - }) { - return YwbApplication( - workId: workId == const $CopyWithPlaceholder() || workId == null - ? _value.workId - // ignore: cast_nullable_to_non_nullable - : workId as int, - functionId: functionId == const $CopyWithPlaceholder() || functionId == null - ? _value.functionId - // ignore: cast_nullable_to_non_nullable - : functionId as String, - name: name == const $CopyWithPlaceholder() || name == null - ? _value.name - // ignore: cast_nullable_to_non_nullable - : name as String, - note: note == const $CopyWithPlaceholder() || note == null - ? _value.note - // ignore: cast_nullable_to_non_nullable - : note as String, - startTs: startTs == const $CopyWithPlaceholder() || startTs == null - ? _value.startTs - // ignore: cast_nullable_to_non_nullable - : startTs as DateTime, - track: track == const $CopyWithPlaceholder() || track == null - ? _value.track - // ignore: cast_nullable_to_non_nullable - : track as List, - ); - } -} - -extension $YwbApplicationCopyWith on YwbApplication { - /// Returns a callable class that can be used as follows: `instanceOfYwbApplication.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$YwbApplicationCWProxy get copyWith => _$YwbApplicationCWProxyImpl(this); -} - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class YwbApplicationAdapter extends TypeAdapter { - @override - final int typeId = 73; - - @override - YwbApplication read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return YwbApplication( - workId: fields[0] as int, - functionId: fields[1] as String, - name: fields[2] as String, - note: fields[3] as String, - startTs: fields[4] as DateTime, - track: (fields[5] as List).cast(), - ); - } - - @override - void write(BinaryWriter writer, YwbApplication obj) { - writer - ..writeByte(6) - ..writeByte(0) - ..write(obj.workId) - ..writeByte(1) - ..write(obj.functionId) - ..writeByte(2) - ..write(obj.name) - ..writeByte(3) - ..write(obj.note) - ..writeByte(4) - ..write(obj.startTs) - ..writeByte(5) - ..write(obj.track); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is YwbApplicationAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class YwbApplicationTrackAdapter extends TypeAdapter { - @override - final int typeId = 74; - - @override - YwbApplicationTrack read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return YwbApplicationTrack( - actionType: fields[0] as int, - action: fields[1] as String, - senderId: fields[2] as String, - senderName: fields[3] as String, - receiverId: fields[4] as String, - receiverName: fields[5] as String, - message: fields[6] as String, - timestamp: fields[7] as DateTime, - step: fields[8] as String, - ); - } - - @override - void write(BinaryWriter writer, YwbApplicationTrack obj) { - writer - ..writeByte(9) - ..writeByte(0) - ..write(obj.actionType) - ..writeByte(1) - ..write(obj.action) - ..writeByte(2) - ..write(obj.senderId) - ..writeByte(3) - ..write(obj.senderName) - ..writeByte(4) - ..write(obj.receiverId) - ..writeByte(5) - ..write(obj.receiverName) - ..writeByte(6) - ..write(obj.message) - ..writeByte(7) - ..write(obj.timestamp) - ..writeByte(8) - ..write(obj.step); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is YwbApplicationTrackAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -YwbApplication _$YwbApplicationFromJson(Map json) => YwbApplication( - workId: (json['WorkID'] as num).toInt(), - functionId: json['FK_Flow'] as String, - name: json['FlowName'] as String, - note: json['FlowNote'] as String, - startTs: _parseTimestamp(json['RDT']), - ); - -YwbApplicationTrack _$YwbApplicationTrackFromJson(Map json) => YwbApplicationTrack( - actionType: (json['ActionType'] as num).toInt(), - action: json['ActionTypeText'] as String, - senderId: json['EmpFrom'] as String, - senderName: mapChinesePunctuations(json['EmpFromT'] as String), - receiverId: json['EmpTo'] as String, - receiverName: mapChinesePunctuations(json['EmpToT'] as String), - message: mapChinesePunctuations(json['Msg'] as String), - timestamp: _parseTimestamp(json['RDT']), - step: mapChinesePunctuations(json['NDFromT'] as String), - ); diff --git a/lib/school/ywb/entity/service.dart b/lib/school/ywb/entity/service.dart deleted file mode 100644 index beed795e2..000000000 --- a/lib/school/ywb/entity/service.dart +++ /dev/null @@ -1,117 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/storage/hive/type_id.dart'; -import 'package:sit/utils/iconfont.dart'; - -part 'service.g.dart'; - -@JsonSerializable(createToJson: false) -@HiveType(typeId: CacheHiveType.ywbService) -class YwbService { - @JsonKey(name: 'appID') - @HiveField(0) - final String id; - @JsonKey(name: 'appName') - @HiveField(1) - final String name; - @JsonKey(name: 'appDescribe') - @HiveField(2) - final String summary; - @JsonKey(name: 'appStatus') - @HiveField(3) - final int status; - @JsonKey(name: 'appCount') - @HiveField(4) - final int count; - @JsonKey(name: 'appIcon') - @HiveField(5) - final String iconName; - - IconData get icon => IconFont.query(iconName); - - const YwbService({ - required this.id, - required this.name, - required this.summary, - required this.status, - required this.count, - required this.iconName, - }); - - factory YwbService.fromJson(Map json) => _$YwbServiceFromJson(json); - - @override - String toString() { - return { - "id": id, - "name": name, - "summary": summary, - "status": status, - "count": count, - "iconName": iconName, - }.toString(); - } -} - -@HiveType(typeId: CacheHiveType.ywbServiceDetails) -class YwbServiceDetails { - @HiveField(0) - final String id; - @HiveField(1) - final List sections; - - const YwbServiceDetails({ - required this.id, - required this.sections, - }); - - @override - String toString() { - return { - "id": id, - "sections": sections, - }.toString(); - } -} - -@JsonSerializable(createToJson: false) -@HiveType(typeId: CacheHiveType.ywbServiceDetailSection) -class YwbServiceDetailSection { - @JsonKey(name: 'formName') - @HiveField(0) - final String section; - @JsonKey() - @HiveField(1) - final String type; - @JsonKey() - @HiveField(2) - final DateTime createTime; - @JsonKey() - @HiveField(3) - final String content; - - const YwbServiceDetailSection({ - required this.type, - required this.section, - required this.createTime, - required this.content, - }); - - factory YwbServiceDetailSection.fromJson(Map json) => _$YwbServiceDetailSectionFromJson(json); - - @override - String toString() { - return { - "type": type, - "section": section, - "createTime": createTime, - "content": content, - }.toString(); - } -} - -extension YwbServiceDetailSectionX on YwbServiceDetailSection { - bool get isEmpty => content.isEmpty; - - bool get isNotEmpty => content.isNotEmpty; -} diff --git a/lib/school/ywb/entity/service.g.dart b/lib/school/ywb/entity/service.g.dart deleted file mode 100644 index 88c56affb..000000000 --- a/lib/school/ywb/entity/service.g.dart +++ /dev/null @@ -1,150 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'service.dart'; - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class YwbServiceAdapter extends TypeAdapter { - @override - final int typeId = 72; - - @override - YwbService read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return YwbService( - id: fields[0] as String, - name: fields[1] as String, - summary: fields[2] as String, - status: fields[3] as int, - count: fields[4] as int, - iconName: fields[5] as String, - ); - } - - @override - void write(BinaryWriter writer, YwbService obj) { - writer - ..writeByte(6) - ..writeByte(0) - ..write(obj.id) - ..writeByte(1) - ..write(obj.name) - ..writeByte(2) - ..write(obj.summary) - ..writeByte(3) - ..write(obj.status) - ..writeByte(4) - ..write(obj.count) - ..writeByte(5) - ..write(obj.iconName); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is YwbServiceAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class YwbServiceDetailsAdapter extends TypeAdapter { - @override - final int typeId = 70; - - @override - YwbServiceDetails read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return YwbServiceDetails( - id: fields[0] as String, - sections: (fields[1] as List).cast(), - ); - } - - @override - void write(BinaryWriter writer, YwbServiceDetails obj) { - writer - ..writeByte(2) - ..writeByte(0) - ..write(obj.id) - ..writeByte(1) - ..write(obj.sections); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is YwbServiceDetailsAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class YwbServiceDetailSectionAdapter extends TypeAdapter { - @override - final int typeId = 71; - - @override - YwbServiceDetailSection read(BinaryReader reader) { - final numOfFields = reader.readByte(); - final fields = { - for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(), - }; - return YwbServiceDetailSection( - type: fields[1] as String, - section: fields[0] as String, - createTime: fields[2] as DateTime, - content: fields[3] as String, - ); - } - - @override - void write(BinaryWriter writer, YwbServiceDetailSection obj) { - writer - ..writeByte(4) - ..writeByte(0) - ..write(obj.section) - ..writeByte(1) - ..write(obj.type) - ..writeByte(2) - ..write(obj.createTime) - ..writeByte(3) - ..write(obj.content); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || - other is YwbServiceDetailSectionAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -YwbService _$YwbServiceFromJson(Map json) => YwbService( - id: json['appID'] as String, - name: json['appName'] as String, - summary: json['appDescribe'] as String, - status: (json['appStatus'] as num).toInt(), - count: (json['appCount'] as num).toInt(), - iconName: json['appIcon'] as String, - ); - -YwbServiceDetailSection _$YwbServiceDetailSectionFromJson(Map json) => YwbServiceDetailSection( - type: json['type'] as String, - section: json['formName'] as String, - createTime: DateTime.parse(json['createTime'] as String), - content: json['content'] as String, - ); diff --git a/lib/school/ywb/i18n.dart b/lib/school/ywb/i18n.dart deleted file mode 100644 index 2f2d99e3b..000000000 --- a/lib/school/ywb/i18n.dart +++ /dev/null @@ -1,46 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "ywb"; - - final mine = const _Mine(); - final details = const _Details(); - final action = const _Action(); - - String get title => "$ns.title".tr(); - - String get info => "$ns.info".tr(); - - String get noServicesTip => "$ns.noServicesTip".tr(); -} - -class _Mine { - const _Mine(); - - static const ns = "${_I18n.ns}.mine"; - - String get title => "$ns.title".tr(); - - String get noApplicationsTip => "$ns.noApplicationsTip".tr(); -} - -class _Details { - const _Details(); - - static const ns = "${_I18n.ns}.details"; - - String get apply => "$ns.apply".tr(); -} - -class _Action { - const _Action(); - - static const ns = "${_I18n.ns}.action"; - - String get applications => "$ns.applications".tr(); -} diff --git a/lib/school/ywb/index.dart b/lib/school/ywb/index.dart deleted file mode 100644 index 7fad064d2..000000000 --- a/lib/school/ywb/index.dart +++ /dev/null @@ -1,61 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/app.dart'; -import 'package:sit/school/ywb/entity/application.dart'; -import 'package:sit/school/ywb/init.dart'; -import 'package:rettulf/rettulf.dart'; - -import "i18n.dart"; -import 'widgets/application.dart'; - -const _applicationLength = 2; - -class YwbAppCard extends ConsumerStatefulWidget { - const YwbAppCard({super.key}); - - @override - ConsumerState createState() => _YwbAppCardState(); -} - -class _YwbAppCardState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = YwbInit.applicationStorage; - final family = storage.$applicationOf(YwbApplicationType.running); - final running = ref.watch(family); - return AppCard( - title: i18n.title.text(), - view: running == null ? null : buildRunningCard(running), - leftActions: [ - FilledButton.icon( - onPressed: () { - context.push("/ywb"); - }, - icon: const Icon(Icons.list_alt), - label: i18n.seeAll.text(), - ), - OutlinedButton.icon( - onPressed: () { - context.push("/ywb/mine"); - }, - label: i18n.action.applications.text(), - icon: Icon(context.icons.mail), - ) - ], - ); - } - - Widget buildRunningCard(List running) { - final applications = running.sublist(0, min(_applicationLength, running.length)); - return applications - .map((e) => YwbApplicationTile(e).inCard( - clip: Clip.hardEdge, - )) - .toList() - .column(); - } -} diff --git a/lib/school/ywb/init.dart b/lib/school/ywb/init.dart deleted file mode 100644 index bafb19b91..000000000 --- a/lib/school/ywb/init.dart +++ /dev/null @@ -1,25 +0,0 @@ -import 'package:sit/school/ywb/service/application.demo.dart'; -import 'package:sit/settings/dev.dart'; - -import 'service/service.dart'; -import 'service/application.dart'; -import 'service/service.demo.dart'; -import 'storage/service.dart'; -import 'storage/application.dart'; - -class YwbInit { - static late YwbServiceService serviceService; - static late YwbServiceStorage serviceStorage; - static late YwbApplicationService applicationService; - static late YwbApplicationStorage applicationStorage; - - static void init() { - serviceService = Dev.demoMode ? const DemoYwbServiceService() : const YwbServiceService(); - applicationService = Dev.demoMode ? const DemoYwbApplicationService() : const YwbApplicationService(); - } - - static void initStorage() { - applicationStorage = YwbApplicationStorage(); - serviceStorage = const YwbServiceStorage(); - } -} diff --git a/lib/school/ywb/page/application.dart b/lib/school/ywb/page/application.dart deleted file mode 100644 index e81987cd8..000000000 --- a/lib/school/ywb/page/application.dart +++ /dev/null @@ -1,166 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/application.dart'; -import '../init.dart'; -import '../widgets/application.dart'; -import '../i18n.dart'; - -class YwbMyApplicationListPage extends StatefulWidget { - const YwbMyApplicationListPage({super.key}); - - @override - State createState() => _YwbMyApplicationListPageState(); -} - -class _YwbMyApplicationListPageState extends State { - late final $loadingStates = ValueNotifier(YwbApplicationType.values.map((type) => false).toList()); - - @override - void dispose() { - $loadingStates.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - bottomNavigationBar: PreferredSize( - preferredSize: const Size.fromHeight(4), - child: $loadingStates >> - (ctx, states) { - return !states.any((state) => state == true) ? const SizedBox() : const LinearProgressIndicator(); - }, - ), - body: DefaultTabController( - length: YwbApplicationType.values.length, - child: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - // These are the slivers that show up in the "outer" scroll view. - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.mine.title.text(), - forceElevated: innerBoxIsScrolled, - bottom: TabBar( - isScrollable: true, - tabs: YwbApplicationType.values - .map((type) => Tab( - child: type.l10nName().text(), - )) - .toList(), - ), - ), - ), - ]; - }, - body: TabBarView( - // These are the contents of the tab views, below the tabs. - children: YwbApplicationType.values.mapIndexed((i, type) { - return YwbApplicationLoadingList( - type: type, - onLoadingChanged: (bool value) { - final newStates = List.of($loadingStates.value); - newStates[i] = value; - $loadingStates.value = newStates; - }, - ); - }).toList(), - ), - ), - ), - ); - } -} - -class YwbApplicationLoadingList extends StatefulWidget { - final YwbApplicationType type; - final ValueChanged onLoadingChanged; - - const YwbApplicationLoadingList({ - super.key, - required this.type, - required this.onLoadingChanged, - }); - - @override - State createState() => _YwbApplicationLoadingListState(); -} - -class _YwbApplicationLoadingListState extends State with AutomaticKeepAliveClientMixin { - bool isFetching = false; - late var applications = YwbInit.applicationStorage.getApplicationListOf(widget.type); - - @override - bool get wantKeepAlive => true; - - @override - void initState() { - super.initState(); - Future.delayed(Duration.zero).then((value) async { - await fetch(); - }); - } - - @override - Widget build(BuildContext context) { - super.build(context); - final applications = this.applications; - return CustomScrollView( - slivers: [ - SliverOverlapInjector( - // This is the flip side of the SliverOverlapAbsorber above. - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - ), - if (applications != null) - if (applications.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.mine.noApplicationsTip, - ), - ) - else - SliverList.builder( - itemCount: applications.length, - itemBuilder: (ctx, index) { - return YwbApplicationTile(applications[index]); - }, - ), - ], - ); - } - - Future fetch() async { - if (isFetching) return; - if (!mounted) return; - setState(() { - isFetching = true; - }); - widget.onLoadingChanged(true); - final type = widget.type; - try { - final applications = await YwbInit.applicationService.getApplicationsOf(type); - await YwbInit.applicationStorage.setApplicationListOf(type, applications); - if (!mounted) return; - setState(() { - this.applications = applications; - isFetching = false; - }); - widget.onLoadingChanged(false); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - widget.onLoadingChanged(false); - } - } -} diff --git a/lib/school/ywb/page/details.dart b/lib/school/ywb/page/details.dart deleted file mode 100644 index f01f5652c..000000000 --- a/lib/school/ywb/page/details.dart +++ /dev/null @@ -1,115 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/fab.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/guard_launch.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:universal_platform/universal_platform.dart'; - -import '../entity/service.dart'; -import '../init.dart'; -import '../page/form.dart'; -import '../widgets/detail.dart'; -import "../i18n.dart"; - -class YwbServiceDetailsPage extends StatefulWidget { - final YwbService meta; - - const YwbServiceDetailsPage({ - super.key, - required this.meta, - }); - - @override - State createState() => _YwbServiceDetailsPageState(); -} - -class _YwbServiceDetailsPageState extends State { - String get id => widget.meta.id; - - String get name => widget.meta.name; - late YwbServiceDetails? details = YwbInit.serviceStorage.getServiceDetails(id); - final controller = ScrollController(); - bool isFetching = false; - - @override - void initState() { - super.initState(); - refresh(); - } - - Future refresh() async { - if (!mounted) return; - setState(() { - isFetching = true; - }); - try { - final meta = await YwbInit.serviceService.getServiceDetails(id); - YwbInit.serviceStorage.setMetaDetails(id, meta); - if (!mounted) return; - setState(() { - isFetching = false; - details = meta; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isFetching = false; - }); - } - } - - @override - void dispose() { - controller.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final details = this.details; - return Scaffold( - body: SelectionArea( - child: CustomScrollView( - controller: controller, - slivers: [ - SliverAppBar.medium( - title: name.text(), - ), - if (details != null) - SliverList.separated( - itemCount: details.sections.length, - itemBuilder: (ctx, i) => YwbApplicationDetailSectionBlock(details.sections[i]), - separatorBuilder: (ctx, i) => const Divider(), - ), - ], - ), - ), - floatingActionButton: AutoHideFAB.extended( - controller: controller, - onPressed: () => openInApp(), - icon: Icon(context.icons.rightChevron), - label: i18n.details.apply.text(), - ), - bottomNavigationBar: isFetching - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ); - } - - void openInApp() { - if (kIsWeb || UniversalPlatform.isDesktop) { - guardLaunchUrlString(context, "http://ywb.sit.edu.cn/v1/#/"); - } else { - // 跳转到申请页面 - final String applyUrl = - 'http://ywb.sit.edu.cn/v1/#/flow?src=http://ywb.sit.edu.cn/unifri-flow/WF/MyFlow.htm?FK_Flow=$id'; - context.navigator.push(MaterialPageRoute(builder: (_) => YwbInAppViewPage(title: name, url: applyUrl))); - } - } -} diff --git a/lib/school/ywb/page/form.dart b/lib/school/ywb/page/form.dart deleted file mode 100644 index 116f540d9..000000000 --- a/lib/school/ywb/page/form.dart +++ /dev/null @@ -1,52 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/init.dart'; -import 'package:sit/utils/cookies.dart'; -import 'package:webview_flutter/webview_flutter.dart'; - -const ywbUrl = 'https://xgfy.sit.edu.cn'; - -class YwbInAppViewPage extends StatefulWidget { - final String title; - final String url; - - const YwbInAppViewPage({super.key, required this.title, required this.url}); - - @override - State createState() => _YwbInAppViewPageState(); -} - -class _YwbInAppViewPageState extends State { - final WebViewController controller = WebViewController()..setJavaScriptMode(JavaScriptMode.unrestricted); - final WebViewCookieManager cookieManager = WebViewCookieManager(); - List? cookies; - - @override - void initState() { - super.initState(); - Init.cookieJar.loadAsWebViewCookie(Uri.parse(ywbUrl)).then((value) { - cookies = value; - for (final cookie in value) { - cookieManager.setCookie(cookie); - } - controller.loadRequest(Uri.parse(widget.url)); - setState(() {}); - }).onError((error, stackTrace) {}); - } - - @override - Widget build(BuildContext context) { - final cookies = this.cookies; - return Scaffold( - appBar: AppBar( - title: Text(widget.title), - ), - body: cookies == null ? const CircularProgressIndicator.adaptive() : buildWebPage(cookies), - ); - } - - Widget buildWebPage(List cookies) { - return WebViewWidget( - controller: controller, - ); - } -} diff --git a/lib/school/ywb/page/service.dart b/lib/school/ywb/page/service.dart deleted file mode 100644 index fc5a8d784..000000000 --- a/lib/school/ywb/page/service.dart +++ /dev/null @@ -1,119 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:fit_system_screenshot/fit_system_screenshot.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/error.dart'; - -import '../entity/service.dart'; -import '../init.dart'; -import '../widgets/service.dart'; -import '../i18n.dart'; - -class YwbServiceListPage extends StatefulWidget { - const YwbServiceListPage({super.key}); - - @override - State createState() => _YwbServiceListPageState(); -} - -class _YwbServiceListPageState extends State { - Dispose? screenShotDispose; - final scrollAreaKey = GlobalKey(); - final scrollController = ScrollController(); - - /// in descending order - List? metaList; - bool isLoading = false; - - @override - void initState() { - super.initState(); - screenShotDispose = fitSystemScreenshot.attachToPage( - scrollAreaKey, - scrollController, - scrollController.jumpTo, - ); - } - - @override - void dispose() { - screenShotDispose?.call(); - scrollController.dispose(); - super.dispose(); - } - - @override - void didChangeDependencies() { - super.didChangeDependencies(); - refresh(); - } - - Future refresh() async { - if (!mounted) return; - setState(() { - metaList = YwbInit.serviceStorage.serviceList; - isLoading = true; - }); - try { - final metaList = await YwbInit.serviceService.getServices(); - metaList.sortBy((e) => -e.count); - YwbInit.serviceStorage.serviceList = metaList; - if (!mounted) return; - setState(() { - this.metaList = metaList; - isLoading = false; - }); - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - if (!mounted) return; - setState(() { - isLoading = false; - }); - } - } - - @override - Widget build(BuildContext context) { - final metaList = this.metaList; - return Scaffold( - body: CustomScrollView( - key: scrollAreaKey, - controller: scrollController, - slivers: [ - SliverAppBar( - floating: true, - title: i18n.title.text(), - actions: [ - Tooltip( - triggerMode: TooltipTriggerMode.tap, - message: i18n.info, - child: Icon(context.icons.info).padAll(8), - ), - ], - bottom: isLoading - ? const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ) - : null, - ), - if (metaList != null) - if (metaList.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.inbox_outlined, - desc: i18n.noServicesTip, - ), - ) - else - SliverList.builder( - itemCount: metaList.length, - itemBuilder: (ctx, i) => YwbServiceTile(meta: metaList[i], isHot: i < 3), - ), - ], - ), - ); - } -} diff --git a/lib/school/ywb/service/application.dart b/lib/school/ywb/service/application.dart deleted file mode 100644 index a10d26684..000000000 --- a/lib/school/ywb/service/application.dart +++ /dev/null @@ -1,69 +0,0 @@ -import 'dart:convert'; - -import 'package:dio/dio.dart'; -import 'package:sit/design/animation/progress.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/ywb.dart'; - -import '../entity/application.dart'; - -class YwbApplicationService { - YwbSession get _session => Init.ywbSession; - - const YwbApplicationService(); - - Future> getApplicationsOf( - YwbApplicationType type, { - void Function(double progress)? onProgress, - }) async { - final progress = ProgressWatcher(callback: onProgress); - final response = await _session.request( - type.messageListUrl, - data: { - "myFlow": 1, - "pageIdx": 1, - "pageSize": 99, - }, - options: Options( - contentType: Headers.formUrlEncodedContentType, - method: "POST", - ), - ); - progress.value = 0.2; - final List data = jsonDecode(response.data); - // filter empty application - data.retainWhere((e) => e["WorkID"] is int); - final applications = data.map((e) => YwbApplication.fromJson(e)).toList(); - final per = applications.isEmpty ? 0 : 0.8 / applications.length; - final res = await Future.wait(applications.map((application) async { - final track = await _getTrack(workId: application.workId, functionId: application.functionId); - progress.value += per; - return application.copyWith(track: track); - })); - progress.value = 1; - return res; - } - - Future> _getTrack({ - required int workId, - required String functionId, - }) async { - // Authentication cookie is even not required! - final res = await _session.request( - "http://ywb.sit.edu.cn/unifri-flow/WF/Comm/ProcessRequest.do?&DoType=HttpHandler&DoMethod=TimeBase_Init&HttpHandlerName=BP.WF.HttpHandler.WF_WorkOpt_OneWork", - data: { - "WorkID": workId, - "FK_Flow": functionId, - }, - options: Options( - contentType: Headers.formUrlEncodedContentType, - method: "POST", - ), - ); - final Map payload = jsonDecode(res.data); - final List trackRaw = payload["Track"]; - final track = trackRaw.map((e) => YwbApplicationTrack.fromJson(e)).toList(); - return track; - } -} diff --git a/lib/school/ywb/service/application.demo.dart b/lib/school/ywb/service/application.demo.dart deleted file mode 100644 index d2d55bd50..000000000 --- a/lib/school/ywb/service/application.demo.dart +++ /dev/null @@ -1,48 +0,0 @@ -import '../entity/application.dart'; -import 'application.dart'; - -class DemoYwbApplicationService implements YwbApplicationService { - const DemoYwbApplicationService(); - - @override - Future> getApplicationsOf( - YwbApplicationType type, { - void Function(double progress)? onProgress, - }) async { - onProgress?.call(1); - final now = DateTime.now(); - return [ - YwbApplication( - workId: 9999, - functionId: 'SIT-Life', - name: '小应生活账号注册申请', - note: '成功', - startTs: now, - track: [ - YwbApplicationTrack( - actionType: 1, - action: '发送', - senderId: 'SITLife001', - senderName: '用户', - receiverId: 'SITLife000', - receiverName: '小应生活', - message: '申请注册', - timestamp: now, - step: '发送注册申请', - ), - YwbApplicationTrack( - actionType: 1, - action: '注册', - senderId: 'SITLife000', - senderName: '小应生活', - receiverId: 'SITLife001', - receiverName: '用户', - message: '注册成功', - timestamp: now.copyWith(minute: now.minute + 1), - step: '返回注册申请状态', - ), - ], - ), - ]; - } -} diff --git a/lib/school/ywb/service/service.dart b/lib/school/ywb/service/service.dart deleted file mode 100644 index fb711e6e3..000000000 --- a/lib/school/ywb/service/service.dart +++ /dev/null @@ -1,50 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/session/ywb.dart'; - -import '../entity/service.dart'; - -const String _serviceFunctionList = 'https://xgfy.sit.edu.cn/app/public/queryAppManageJson'; -const String _serviceFunctionDetail = 'https://xgfy.sit.edu.cn/app/public/queryAppFormJson'; - -class YwbServiceService { - YwbSession get _session => Init.ywbSession; - - const YwbServiceService(); - - Future> getServices() async { - final response = await _session.request( - _serviceFunctionList, - data: '{"appObject":"student","appName":null}', - options: Options( - responseType: ResponseType.json, - method: "POST", - ), - ); - - final Map data = response.data; - final List functionList = (data['value'] as List) - .map((e) => YwbService.fromJson(e)) - .where((element) => element.status == 1) // Filter functions unavailable. - .toList(); - - return functionList; - } - - Future getServiceDetails(String functionId) async { - final response = await _session.request( - _serviceFunctionDetail, - data: '{"appID":"$functionId"}', - options: Options( - responseType: ResponseType.json, - method: "POST", - ), - ); - final Map data = response.data; - final List sections = - (data['value'] as List).map((e) => YwbServiceDetailSection.fromJson(e)).toList(); - - return YwbServiceDetails(id: functionId, sections: sections); - } -} diff --git a/lib/school/ywb/service/service.demo.dart b/lib/school/ywb/service/service.demo.dart deleted file mode 100644 index a35a5b3b6..000000000 --- a/lib/school/ywb/service/service.demo.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:sit/school/ywb/entity/service.dart'; - -import 'service.dart'; - -class DemoYwbServiceService implements YwbServiceService { - const DemoYwbServiceService(); - - @override - Future getServiceDetails(String functionId) async { - return const YwbServiceDetails(id: "0", sections: []); - } - - @override - Future> getServices() async { - return [ - const YwbService( - id: "1", - name: "小应生活账号 申请", - summary: "申请一个新的小应生活账号", - status: 1, - count: 1875, - iconName: "icon-add-account", - ), - const YwbService( - id: "2", - name: "小应生活账号注销", - summary: "注销你的小应生活张海", - status: 1, - count: 24, - iconName: "icon-yingjian", - ), - const YwbService( - id: "3", - name: "小应生活线下身份验证", - summary: "线下验证小应生活账号的学生身份", - status: 1, - count: 5, - iconName: "", - ), - ]; - } -} diff --git a/lib/school/ywb/storage/application.dart b/lib/school/ywb/storage/application.dart deleted file mode 100644 index 14ec98e60..000000000 --- a/lib/school/ywb/storage/application.dart +++ /dev/null @@ -1,32 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/storage/hive/init.dart'; - -import '../entity/application.dart'; - -class _K { - static const ns = "/application"; - - static String applicationListOf(YwbApplicationType type) => "$ns/$type"; -} - -class YwbApplicationStorage { - Box get box => HiveInit.ywb; - - YwbApplicationStorage(); - - List? getApplicationListOf(YwbApplicationType type) => - box.safeGet(_K.applicationListOf(type))?.cast(); - - Future setApplicationListOf(YwbApplicationType type, List? newV) => - box.safePut(_K.applicationListOf(type), newV); - - Listenable listenApplicationListOf(YwbApplicationType type) => box.listenable(keys: [_K.applicationListOf(type)]); - - late final $applicationOf = box.providerFamily, YwbApplicationType>( - _K.applicationListOf, - get: getApplicationListOf, - set: setApplicationListOf, - ); -} diff --git a/lib/school/ywb/storage/service.dart b/lib/school/ywb/storage/service.dart deleted file mode 100644 index 134c87d4e..000000000 --- a/lib/school/ywb/storage/service.dart +++ /dev/null @@ -1,28 +0,0 @@ -import 'package:hive/hive.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/utils/hive.dart'; - -import '../entity/service.dart'; - -class _K { - static const ns = "/meta"; - static const serviceList = "$ns/serviceList"; - - static String details(String applicationId) => "$ns/details/$applicationId"; -} - -class YwbServiceStorage { - Box get box => HiveInit.ywb; - - const YwbServiceStorage(); - - YwbServiceDetails? getServiceDetails(String applicationId) => - box.safeGet(_K.details(applicationId)); - - void setMetaDetails(String applicationId, YwbServiceDetails? newV) => - box.safePut(_K.details(applicationId), newV); - - List? get serviceList => box.safeGet(_K.serviceList)?.cast(); - - set serviceList(List? newV) => box.safePut(_K.serviceList, newV); -} diff --git a/lib/school/ywb/widgets/application.dart b/lib/school/ywb/widgets/application.dart deleted file mode 100644 index 258a50361..000000000 --- a/lib/school/ywb/widgets/application.dart +++ /dev/null @@ -1,56 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/expansion_tile.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/application.dart'; - -class YwbApplicationTile extends StatelessWidget { - final YwbApplication application; - - const YwbApplicationTile( - this.application, { - super.key, - }); - - @override - Widget build(BuildContext context) { - return AnimatedExpansionTile( - title: "${application.name} #${application.workId}".text(), - subtitle: context.formatYmdWeekText(application.startTs).text(), - children: application.track.map((e) => YwbApplicationTrackTile(e)).toList(), - ); - } -} - -class YwbApplicationTrackTile extends StatelessWidget { - final YwbApplicationTrack track; - - const YwbApplicationTrackTile( - this.track, { - super.key, - }); - - @override - Widget build(BuildContext context) { - return ListTile( - isThreeLine: true, - leading: track.isActionOk - ? Icon(context.icons.checkMark, color: Colors.green) - : Icon(context.icons.error, color: Colors.redAccent), - title: track.step.text(), - subtitle: [ - context.formatYmdhmNum(track.timestamp).text(), - if (track.message.isNotEmpty) track.message.text(), - track.action.text(), - ].column(caa: CrossAxisAlignment.start), - trailing: track.senderName.text(), - ); - } -} - -// final String resultUrl = -// 'https://xgfy.sit.edu.cn/unifri-flow/WF/mobile/index.html?ismobile=1&FK_Flow=${msg.functionId}&WorkID=${msg.workId}&IsReadonly=1&IsView=1'; -// Navigator.of(context) -// .push(MaterialPageRoute(builder: (_) => YwbInAppViewPage(title: msg.name, url: resultUrl))); diff --git a/lib/school/ywb/widgets/detail.dart b/lib/school/ywb/widgets/detail.dart deleted file mode 100644 index 4a80a07a8..000000000 --- a/lib/school/ywb/widgets/detail.dart +++ /dev/null @@ -1,46 +0,0 @@ -import 'dart:convert'; - -import 'package:flutter/material.dart'; -import 'package:sit/widgets/html.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/service.dart'; - -class YwbApplicationDetailSectionBlock extends StatelessWidget { - final YwbServiceDetailSection section; - - const YwbApplicationDetailSectionBlock(this.section, {super.key}); - - @override - Widget build(BuildContext context) { - final bodyWidget = switch (section.type) { - 'html' => buildHtmlSection(section.content), - 'json' => buildJsonSection(section.content), - _ => const SizedBox(), - }; - - return Padding( - padding: const EdgeInsets.fromLTRB(10, 5, 10, 5), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text(section.section, style: context.textTheme.headlineSmall), - bodyWidget, - ], - ), - ); - } - - Widget buildJsonSection(String content) { - final Map kvPairs = jsonDecode(content); - List items = []; - kvPairs.forEach((key, value) => items.add(Text('$key: $value'))); - return Column(crossAxisAlignment: CrossAxisAlignment.start, children: items); - } - - Widget buildHtmlSection(String content) { - // TODO: cannot download pdf files - final html = content.replaceAll('../app/files/', 'https://xgfy.sit.edu.cn/app/files/'); - return RestyledHtmlWidget(html); - } -} diff --git a/lib/school/ywb/widgets/service.dart b/lib/school/ywb/widgets/service.dart deleted file mode 100644 index 4e594bb0a..000000000 --- a/lib/school/ywb/widgets/service.dart +++ /dev/null @@ -1,58 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../entity/service.dart'; - -const List _serviceColors = [ - Colors.orangeAccent, - Colors.redAccent, - Colors.blueAccent, - Colors.grey, - Colors.green, - Colors.yellowAccent, - Colors.cyan, - Colors.purple, - Colors.teal, -]; - -class YwbServiceTile extends StatelessWidget { - final YwbService meta; - final bool isHot; - - const YwbServiceTile({super.key, required this.meta, required this.isHot}); - - @override - Widget build(BuildContext context) { - final colorIndex = Random(meta.id.hashCode).nextInt(_serviceColors.length); - final color = _serviceColors[colorIndex]; - final style = context.textTheme.bodyMedium; - final views = isHot - ? [ - Text(meta.count.toString(), style: style), - const Icon( - Icons.local_fire_department_rounded, - color: Colors.red, - ), - ].row(mas: MainAxisSize.min) - : Text(meta.count.toString(), style: style); - - return ListTile( - leading: Icon(meta.icon, size: 35, color: color).center().sized(w: 40, h: 40), - title: Text( - meta.name, - overflow: TextOverflow.ellipsis, - ), - subtitle: Text( - meta.summary, - overflow: TextOverflow.ellipsis, - ), - trailing: views, - onTap: () { - context.push("/ywb/details", extra: meta); - }, - ); - } -} diff --git a/lib/session/auth.dart b/lib/session/auth.dart deleted file mode 100644 index f3494fb81..000000000 --- a/lib/session/auth.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'dart:convert'; - -import 'package:dio/dio.dart'; -import 'package:flutter/foundation.dart'; -import 'package:sit/init.dart'; -import 'package:sit/utils/error.dart'; - -class AuthSession { - static final String _ocrServerUrl = - utf8.decode(base64Decode('aHR0cHM6Ly9hcGkua2l0ZS5zdW5ueXNhYi5jbi9hcGkvb2NyL2NhcHRjaGE=')); - - static Dio get dio => Init.dio; - - static Future recognizeOaCaptcha(Uint8List imageData) async { - try { - final response = await dio.post(_ocrServerUrl, data: base64Encode(imageData)); - final result = response.data; - return result['code'] == 0 ? result['data'] as String? : null; - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - return null; - } - } -} diff --git a/lib/session/backend.dart b/lib/session/backend.dart deleted file mode 100644 index eb521d038..000000000 --- a/lib/session/backend.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:dio/dio.dart'; - -/// mysit.life -class BackendSession { - final Dio dio; - - const BackendSession({required this.dio}); - - /// get.mysit.life is a static server, authentication is not required. - Future get( - String url, { - Map? para, - data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - return await dio.request( - url, - queryParameters: para, - data: data, - options: options, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ); - } -} diff --git a/lib/session/class2nd.dart b/lib/session/class2nd.dart deleted file mode 100644 index 0dcf04b0f..000000000 --- a/lib/session/class2nd.dart +++ /dev/null @@ -1,49 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:sit/init.dart'; -import 'package:sit/session/sso.dart'; - -class Class2ndSession { - final SsoSession ssoSession; - - Class2ndSession({required this.ssoSession}); - - bool _needRedirectToLoginPage(String data) { - return data.contains(''); - } - - Future request( - String url, { - Map? para, - data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - Future fetch() { - return ssoSession.request( - url, - para: para, - data: data, - options: options, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ); - } - - var res = await fetch(); - final responseData = res.data; - // 如果返回值是登录页面,那就从 SSO 跳转一次以登录. - if (responseData is String && _needRedirectToLoginPage(responseData)) { - await Init.cookieJar.delete(Uri.parse(url), true); - // the response has been already redirected to the originally-requested one. - res = await ssoSession.request( - 'https://authserver.sit.edu.cn/authserver/login?service=http%3A%2F%2Fsc.sit.edu.cn%2Flogin.jsp', - options: Options( - method: "GET", - ), - ); - // res = await fetch(); - } - return res; - } -} diff --git a/lib/session/library.dart b/lib/session/library.dart deleted file mode 100644 index 80115242b..000000000 --- a/lib/session/library.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:sit/credentials/init.dart'; - -import 'package:sit/school/library/init.dart'; - -class LibrarySession { - final Dio dio; - - const LibrarySession({required this.dio}); - - Future request( - String url, { - Map? para, - data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - Future fetch() { - return dio.request( - url, - queryParameters: para, - data: data, - options: options, - ); - } - - final response = await fetch(); - final resData = response.data; - if (resData is String) { - // renew login - final credentials = CredentialsInit.storage.libraryCredentials; - if (credentials != null) { - if (resData.contains("/opac/reader/doLogin")) { - await LibraryInit.auth.login(credentials); - return await fetch(); - } - } - } - return response; - } -} diff --git a/lib/session/pg_registration.dart b/lib/session/pg_registration.dart deleted file mode 100644 index 9d680cc99..000000000 --- a/lib/session/pg_registration.dart +++ /dev/null @@ -1,53 +0,0 @@ -import 'package:dio/dio.dart'; - -import 'package:sit/session/sso.dart'; - -/// gms.sit.edu.cn -/// Student registration system for postgraduate -class PgRegistrationSession { - final SsoSession ssoSession; - - const PgRegistrationSession({required this.ssoSession}); - - Future request( - String url, { - Map? para, - data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - options ??= Options(); - // TODO: is this really necessary? - options.contentType = 'application/x-www-form-urlencoded;charset=utf-8'; - - Future fetch() async { - return await ssoSession.request( - url, - para: para, - data: data, - options: options, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ); - } - - final response = await fetch(); - final content = response.data; - if (content is String && content.contains("正在登录") == true) { - await authGmsService(); - return await fetch(); - } - return response; - } - - Future authGmsService() async { - final authRes = await ssoSession.request( - "https://authserver.sit.edu.cn/authserver/login?service=http%3A%2F%2Fgms.sit.edu.cn%2Fepstar%2Fweb%2Fswms%2Fmainframe%2Fhome%2Findex.jsp", - options: Options( - method: "GET", - ), - ); - return authRes.statusCode == 302; - } -} diff --git a/lib/session/sso.dart b/lib/session/sso.dart deleted file mode 100644 index f63f66e08..000000000 --- a/lib/session/sso.dart +++ /dev/null @@ -1,406 +0,0 @@ -import 'dart:math'; - -import 'package:async_locks/async_locks.dart'; -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:collection/collection.dart'; -import 'package:cookie_jar/cookie_jar.dart'; -import 'package:dio/dio.dart'; -import 'package:flutter/foundation.dart' hide Key; -import 'package:logger/logger.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/error.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/init.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/r.dart'; - -import 'package:sit/session/auth.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/riverpod.dart'; -import 'package:encrypt/encrypt.dart'; - -import '../utils/dio.dart'; - -class LoginCaptchaCancelledException implements Exception { - const LoginCaptchaCancelledException(); -} - -class OaCredentialsRequiredException implements Exception { - final String url; - - const OaCredentialsRequiredException({required this.url}); - - @override - String toString() { - return "OaCredentialsRequiredException: $url"; - } -} - -const _neededHeaders = { - "Accept-Encoding": "gzip, deflate, br", - 'Origin': 'https://authserver.sit.edu.cn', - "Upgrade-Insecure-Requests": "1", - "Sec-Fetch-Dest": "document", - "Sec-Fetch-Mode": "navigate", - "Sec-Fetch-Site": "same-origin", - "Sec-Fetch-User": "?1", - "Referer": "https://authserver.sit.edu.cn/authserver/login", -}; - -final networkLogger = Logger( - printer: PrettyPrinter( - methodCount: 8, - // Number of method calls to be displayed - errorMethodCount: 8, - // Print an emoji for each log message - printTime: true, // Should each log print contain a timestamp - ), -); - -/// Single Sign-On -class SsoSession { - static const String _authServerUrl = 'https://authserver.sit.edu.cn/authserver'; - static const String _loginUrl = '$_authServerUrl/login'; - static const String _needCaptchaUrl = '$_authServerUrl/needCaptcha.html'; - static const String _captchaUrl = '$_authServerUrl/captcha.html'; - static const String _loginSuccessUrl = 'https://authserver.sit.edu.cn/authserver/index.do'; - - final Dio dio; - final CookieJar cookieJar; - - /// Input captcha manually - final Future Function(Uint8List imageBytes) inputCaptcha; - - /// Lock it to prevent simultaneous login. - static final _loginLock = Lock(); - - /// Lock all requests through SSO. - static final _ssoLock = Lock(); - - SsoSession({ - required this.dio, - required this.cookieJar, - required this.inputCaptcha, - }); - - /// - User try to log in actively on a login page. - Future loginLocked(Credentials credentials) async { - return await _loginLock.run(() async { - networkLogger.i("loginLocked ${DateTime.now().toIso8601String()}"); - try { - final byAutoCaptcha = await _login( - credentials: credentials, - inputCaptcha: (captchaImage) => AuthSession.recognizeOaCaptcha(captchaImage), - ); - return byAutoCaptcha; - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - } - final byManualCaptcha = await _login( - credentials: credentials, - inputCaptcha: inputCaptcha, - ); - return byManualCaptcha; - }); - } - - Future _request( - String url, { - Map? queryParameters, - dynamic data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - options ??= Options(); - Future requestNormally() async { - final response = await dio.request( - url, - queryParameters: queryParameters, - options: options?.copyWith( - followRedirects: false, - validateStatus: (status) { - return status! < 400; - }, - ), - data: data, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ); - final debugDepths = []; - final finalResponse = await processRedirect( - dio, - response, - headers: _neededHeaders, - debugDepths: debugDepths, - ); - return finalResponse; - } - - // request normally at first - final firstResponse = await requestNormally(); - - // check if the response is the login page. if so, login it first. - if (firstResponse.realUri.toString().contains(_loginUrl)) { - final credentials = CredentialsInit.storage.oaCredentials; - if (credentials == null) { - throw OaCredentialsRequiredException(url: url); - } - await cookieJar.delete(Uri.parse(url), true); - await loginLocked(credentials); - return await requestNormally(); - } else { - return firstResponse; - } - } - - void _setOnline(bool isOnline) { - final ctx = $key.currentContext; - if (ctx != null && ctx.mounted) { - ctx.riverpod().read($oaOnline.notifier).state = isOnline; - } - } - - Future getJSessionId() async { - final cookies = await Init.cookieJar.loadForRequest(Uri.parse(_authServerUrl)); - return cookies.firstWhereOrNull((cookie) => cookie.name == "JSESSIONID"); - } - - Future _login({ - required Credentials credentials, - required Future Function(Uint8List imageBytes) inputCaptcha, - }) async { - debugPrint('${credentials.account} logging in'); - debugPrint('UA: ${dio.options.headers['User-Agent']}'); - // When logging into OA, - // the server will record the number of times a user has logged in with the same cookie - // and the number of times the user made an input error, - // so it is necessary to clear all cookies before logging in to avoid errors when the user retries. - await cookieJar.delete(R.authServerUri, true); - // await cookieJar.delete(R.authServerUri, true); - final Response response; - try { - // 首先获取AuthServer首页 - final html = await _fetchAuthServerHtml(); - var captcha = ''; - if (await isCaptchaRequired(credentials.account)) { - final captchaImage = await getCaptcha(); - final c = await inputCaptcha(captchaImage); - if (c != null) { - captcha = c; - debugPrint("Captcha entered is $captcha"); - } else { - throw const LoginCaptchaCancelledException(); - } - } - // 获取casTicket - final casTicket = _extractCasTicketFromAuthHtml(html); - // 获取salt - final salt = _extractSaltFromAuthHtml(html); - // 加密密码 - final hashedPwd = _hashPassword(salt, credentials.password); - // 登录系统,获得cookie - response = await _postLoginRequest(credentials.account, hashedPwd, captcha, casTicket); - } catch (e) { - _setOnline(false); - rethrow; - } - final pageRaw = response.data as String; - if (pageRaw.contains("完善资料")) { - throw CredentialsException(message: pageRaw, type: CredentialsErrorType.oaIncompleteUserInfo); - } - final page = BeautifulSoup(pageRaw); - // For desktop - final authError = page.find('span', id: 'msg', class_: 'auth_error')?.text.trim() ?? ""; - // For mobile - final mobileError = page.find('span', id: 'errorMsg')?.text.trim() ?? ""; - if (authError.isNotEmpty || mobileError.isNotEmpty) { - final errorMessage = authError + mobileError; - final type = _parseInvalidType(errorMessage); - _setOnline(false); - throw CredentialsException(message: errorMessage, type: type); - } - - if (response.realUri.toString() != _loginSuccessUrl) { - debugPrint('Unknown auth error at "${response.realUri}"'); - _setOnline(false); - throw Exception(response.data.toString()); - } - debugPrint('${credentials.account} logged in'); - CredentialsInit.storage.oaLastAuthTime = DateTime.now(); - _setOnline(true); - return response; - } - - Future deleteSitUriCookies() async { - for (final uri in R.sitUriList) { - await cookieJar.delete(uri, true); - } - } - - static CredentialsErrorType _parseInvalidType(String errorMessage) { - if (errorMessage.contains("验证码")) { - return CredentialsErrorType.captcha; - } else if (errorMessage.contains("冻结")) { - return CredentialsErrorType.oaFrozen; - } else if (errorMessage.contains("锁定")) { - return CredentialsErrorType.oaLocked; - } - return CredentialsErrorType.accountPassword; - } - - /// Extract the Salt from the auth page - String _extractSaltFromAuthHtml(String htmlText) { - final a = RegExp(r'var pwdDefaultEncryptSalt = "(.*?)";'); - final matchResult = a.firstMatch(htmlText)!.group(0)!; - final salt = matchResult.substring(29, matchResult.length - 2); - debugPrint('Salt: $salt'); - return salt; - } - - /// Extract the CAS ticket from the auth page - String _extractCasTicketFromAuthHtml(String htmlText) { - final a = RegExp(r' _fetchAuthServerHtml() async { - final response = await dio.get( - _loginUrl, - options: Options(headers: Map.from(_neededHeaders)..remove('Referer')), - ); - return response.data; - } - - /// check if captcha is required for this logging in - Future isCaptchaRequired(String username) async { - final response = await dio.get( - _needCaptchaUrl, - queryParameters: { - 'username': username, - 'pwdEncrypt2': 'pwdEncryptSalt', - }, - options: Options(headers: _neededHeaders), - ); - final needCaptcha = response.data == 'true'; - debugPrint('Account: $username, Captcha required: $needCaptcha'); - return needCaptcha; - } - - Future getCaptcha() async { - final response = await dio.get( - _captchaUrl, - options: Options( - responseType: ResponseType.bytes, - headers: _neededHeaders, - ), - ); - Uint8List captchaData = response.data; - return captchaData; - } - - /// Login the single sign-on - Future _postLoginRequest(String username, String hashedPassword, String captcha, String casTicket) async { - // Login - final res = await dio.post( - _loginUrl, - data: { - 'username': username, - 'password': hashedPassword, - 'captchaResponse': captcha, - 'lt': casTicket, - 'dllt': 'userNamePasswordLogin', - 'execution': 'e1s1', - '_eventId': 'submit', - 'rmShown': '1', - }, - options: Options( - contentType: Headers.formUrlEncodedContentType, - followRedirects: false, - validateStatus: (status) { - return status! < 400; - }, - headers: _neededHeaders, - ), - ); - final debugDepths = []; - final finalResponse = await processRedirect( - dio, - res, - headers: _neededHeaders, - debugDepths: debugDepths, - ); - return finalResponse; - } - - Future request( - String url, { - Map? para, - data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - networkLogger.i("$SsoSession.request ${DateTime.now().toIso8601String()}"); - return await _ssoLock.run(() async { - networkLogger.i("$SsoSession.request-locked ${DateTime.now().toIso8601String()}"); - try { - return await _request( - url, - queryParameters: para, - data: data, - options: options, - ); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - rethrow; - } - }); - } -} - -String _hashPassword(String salt, String password) { - var iv = _rds(16); - var encrypt = _SsoEncryption(salt, iv); - return encrypt.aesEncrypt(_rds(64) + password); -} - -final _rand = Random.secure(); - -String _rds(int num) { - const chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; - final s = StringBuffer(); - for (var i = 0; i < num; i++) { - s.write(chars[_rand.nextInt(chars.length)]); - } - return s.toString(); -} - -class _SsoEncryption { - Key? _key; - IV? _iv; - - _SsoEncryption(String key, String iv) { - _key = Key.fromUtf8(key); - _iv = IV.fromUtf8(iv); - } - - String aesEncrypt(String content) { - return Encrypter( - AES( - _key!, - mode: AESMode.cbc, - padding: 'PKCS7', - ), - ) - .encrypt( - content, - iv: _iv, - ) - .base64; - } -} diff --git a/lib/session/ug_registration.dart b/lib/session/ug_registration.dart deleted file mode 100644 index 897cce4f5..000000000 --- a/lib/session/ug_registration.dart +++ /dev/null @@ -1,82 +0,0 @@ -import 'package:dio/dio.dart'; -import 'package:flutter/foundation.dart'; - -import 'package:sit/session/sso.dart'; - -/// jwxt.sit.edu.cn -/// Student registration system for undergraduate -class UgRegistrationSession { - final SsoSession ssoSession; - - const UgRegistrationSession({required this.ssoSession}); - - Future refreshCookie() async { - await ssoSession.request( - 'http://jwxt.sit.edu.cn/sso/jziotlogin', - options: Options( - method: "GET", - ), - ); - } - - bool _isRedirectedToLoginPage(Response response) { - return response.realUri.path == '/jwglxt/xtgl/login_slogin.html'; - } - - Future request( - String url, { - Map? para, - data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - options ??= Options(); - // TODO: is this really necessary? - options.contentType = 'application/x-www-form-urlencoded;charset=utf-8'; - Future fetch() async { - return await ssoSession.request( - url, - para: para, - data: data, - options: options, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ); - } - - final response = await fetch(); - // 如果返回值是登录页面,那就从 SSO 跳转一次以登录. - if (_isRedirectedToLoginPage(response)) { - debugPrint('JwxtSession requires login'); - await refreshCookie(); - return await fetch(); - } - // 如果还是需要登录 - if (_isRedirectedToLoginPage(response)) { - debugPrint('JwxtSession still requires login'); - await refreshCookie(); - return await fetch(); - } - return response; - } - - Future checkConnectivity({ - String url = 'http://jwxt.sit.edu.cn/', - }) async { - try { - await request( - url, - options: Options( - method: "GET", - contentType: Headers.formUrlEncodedContentType, - followRedirects: false, - validateStatus: (status) => status! < 400, - ), - ); - return true; - } catch (e) { - return false; - } - } -} diff --git a/lib/session/ywb.dart b/lib/session/ywb.dart deleted file mode 100644 index 7d9fc4dc5..000000000 --- a/lib/session/ywb.dart +++ /dev/null @@ -1,98 +0,0 @@ -import 'dart:convert'; -import 'package:crypto/crypto.dart'; -import 'package:dio/dio.dart'; -import 'package:sit/credentials/error.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/session/sso.dart'; - -/// 应网办 official website -const _ywbUrl = "https://ywb.sit.edu.cn/v1"; - -class YwbSession { - bool isLogin = false; - String? username; - String? jwtToken; - final Dio dio; - - YwbSession({ - required this.dio, - }); - - Future _login({ - required String username, - required String password, - }) async { - final response = await dio.post( - "https://xgfy.sit.edu.cn/unifri-flow/login", - data: { - 'account': username, - 'userPassword': password, - 'remember': 'true', - }, - options: Options( - contentType: Headers.jsonContentType, - ), - ); - final resData = response.data as Map; - final int code = resData['code']; - - if (code != 0) { - final String errMessage = resData['msg']; - throw CredentialsException(type: CredentialsErrorType.accountPassword, message: '($code) $errMessage'); - } - jwtToken = resData['data']['authorization']; - this.username = username; - isLogin = true; - } - - /// 获取当前以毫秒为单位的时间戳. - static String _getTimestamp() => DateTime.now().millisecondsSinceEpoch.toString(); - - /// 为时间戳生成签名. 此方案是联鹏习惯的反爬方式. - static String _sign(String ts) { - final content = const Utf8Encoder().convert('unifri.com$ts'); - return md5.convert(content).toString(); - } - - Future request( - String url, { - Map? para, - dynamic data, - Options? options, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) async { - if (!isLogin) { - final credentials = CredentialsInit.storage.oaCredentials; - if (credentials == null) throw OaCredentialsRequiredException(url: url); - await _login( - username: credentials.account, - password: credentials.password, - ); - } - - Options newOptions = options ?? Options(); - - // Make default options. - final String ts = _getTimestamp(); - final String sign = _sign(ts); - final Map newHeaders = { - 'timestamp': ts, - 'signature': sign, - 'Authorization': jwtToken, - }; - - newOptions.headers == null ? newOptions.headers = newHeaders : newOptions.headers?.addAll(newHeaders); - newOptions.method = options?.method; - - final response = await dio.request( - url, - queryParameters: para, - data: data, - options: newOptions, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ); - return response; - } -} diff --git a/lib/settings/dev.dart b/lib/settings/dev.dart deleted file mode 100644 index dfed9143d..000000000 --- a/lib/settings/dev.dart +++ /dev/null @@ -1,48 +0,0 @@ -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/utils/collection.dart'; - -class _K { - static const ns = '/dev'; - static const on = '$ns/on'; - static const savedOaCredentialsList = '$ns/savedOaCredentialsList'; - static const demoMode = '$ns/demoMode'; - static const expenseUserOverride = '$ns/expenseUserOverride'; -} - -// ignore: non_constant_identifier_names -late DevSettingsImpl Dev; - -class DevSettingsImpl { - final Box box; - - DevSettingsImpl(this.box); - - /// [false] by default. - bool get on => box.safeGet(_K.on) ?? false; - - set on(bool newV) => box.safePut(_K.on, newV); - - late final $on = box.providerWithDefault(_K.on, () => false); - - /// [false] by default. - bool get demoMode => box.safeGet(_K.demoMode) ?? false; - - set demoMode(bool newV) => box.safePut(_K.demoMode, newV); - - late final $demoMode = box.providerWithDefault(_K.demoMode, () => false); - - String? get expenseUserOverride => box.safeGet(_K.expenseUserOverride); - - set expenseUserOverride(String? newV) => box.safePut(_K.expenseUserOverride, newV); - - late final $expenseUserOverride = box.provider(_K.expenseUserOverride); - - List? getSavedOaCredentialsList() => box.safeGet(_K.savedOaCredentialsList)?.cast(); - - Future setSavedOaCredentialsList(List? newV) async { - newV?.distinctBy((c) => c.account); - await box.safePut(_K.savedOaCredentialsList, newV); - } -} diff --git a/lib/settings/entity/proxy.dart b/lib/settings/entity/proxy.dart deleted file mode 100644 index 59711a2b4..000000000 --- a/lib/settings/entity/proxy.dart +++ /dev/null @@ -1,139 +0,0 @@ -import 'dart:typed_data'; - -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/storage/hive/type_id.dart'; -import 'package:sit/utils/byte_io/byte_io.dart'; - -part "proxy.g.dart"; - -enum ProxyCat { - http( - defaultHost: "localhost", - defaultPort: 3128, - supportedProtocols: [ - "http", - "https", - ], - defaultProtocol: "http", - ), - https( - defaultHost: "localhost", - defaultPort: 443, - supportedProtocols: [ - "http", - "https", - ], - defaultProtocol: "https", - ), - all( - defaultHost: "localhost", - defaultPort: 1080, - supportedProtocols: [ - "socks5", - ], - defaultProtocol: "socks5", - ); - - final String defaultHost; - final int defaultPort; - final List supportedProtocols; - final String defaultProtocol; - - const ProxyCat({ - required this.defaultHost, - required this.defaultPort, - required this.supportedProtocols, - required this.defaultProtocol, - }); - - Uri buildDefaultUri() => Uri(scheme: defaultProtocol, host: defaultHost, port: defaultPort); - - bool isDefaultUri(Uri uri) { - if (uri.scheme != defaultProtocol) return false; - if (uri.host != defaultHost) return false; - if (uri.port != defaultPort) return false; - if (uri.hasQuery) return false; - if (uri.hasFragment) return false; - if (uri.userInfo.isNotEmpty) return false; - return true; - } - - bool? isDefaultUriString(String? uriString) { - if (uriString == null) return null; - final uri = Uri.tryParse(uriString); - if (uri == null) return null; - return isDefaultUri(uri); - } -} - -@HiveType(typeId: CoreHiveType.proxyMode) -enum ProxyMode { - @HiveField(0) - global, - @HiveField(1) - schoolOnly; -} - -@JsonSerializable() -@CopyWith(skipFields: true) -class ProxyProfile { - static const clear = Object(); - static const version = 1; - @JsonKey() - final Uri address; - @JsonKey() - final bool enabled; - @JsonKey() - final ProxyMode mode; - - const ProxyProfile({ - required this.address, - this.enabled = false, - this.mode = ProxyMode.schoolOnly, - }); - - Uint8List encodeByteList() { - final writer = ByteWriter(128); - writer.uint8(version); - serialize(writer); - return writer.build(); - } - - static ProxyProfile decodeFromByteList(Uint8List bytes) { - final reader = ByteReader(bytes); - // ignore: unused_local_variable - final revision = reader.uint8(); - return deserialize(reader); - } - - void serialize(ByteWriter writer) { - writer.strUtf8(address.toString(), ByteLength.bit16); - writer.b(enabled); - writer.int8(mode.index); - } - - static ProxyProfile deserialize(ByteReader reader) { - return ProxyProfile( - address: Uri.parse(reader.strUtf8(ByteLength.bit16)), - enabled: reader.b(), - mode: ProxyMode.values[reader.int8()], - ); - } - - factory ProxyProfile.fromJson(Map json) => _$ProxyProfileFromJson(json); - - Map toJson() => _$ProxyProfileToJson(this); - - @override - int get hashCode => Object.hash(address, enabled, mode); - - @override - bool operator ==(Object other) => - identical(this, other) || - other is ProxyProfile && - runtimeType == other.runtimeType && - address == other.address && - enabled == enabled && - mode == other.mode; -} diff --git a/lib/settings/entity/proxy.g.dart b/lib/settings/entity/proxy.g.dart deleted file mode 100644 index 43f05d4bf..000000000 --- a/lib/settings/entity/proxy.g.dart +++ /dev/null @@ -1,124 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'proxy.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$ProxyProfileCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// ProxyProfile(...).copyWith(id: 12, name: "My name") - /// ```` - ProxyProfile call({ - Uri? address, - bool? enabled, - ProxyMode? mode, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfProxyProfile.copyWith(...)`. -class _$ProxyProfileCWProxyImpl implements _$ProxyProfileCWProxy { - const _$ProxyProfileCWProxyImpl(this._value); - - final ProxyProfile _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// ProxyProfile(...).copyWith(id: 12, name: "My name") - /// ```` - ProxyProfile call({ - Object? address = const $CopyWithPlaceholder(), - Object? enabled = const $CopyWithPlaceholder(), - Object? mode = const $CopyWithPlaceholder(), - }) { - return ProxyProfile( - address: address == const $CopyWithPlaceholder() || address == null - ? _value.address - // ignore: cast_nullable_to_non_nullable - : address as Uri, - enabled: enabled == const $CopyWithPlaceholder() || enabled == null - ? _value.enabled - // ignore: cast_nullable_to_non_nullable - : enabled as bool, - mode: mode == const $CopyWithPlaceholder() || mode == null - ? _value.mode - // ignore: cast_nullable_to_non_nullable - : mode as ProxyMode, - ); - } -} - -extension $ProxyProfileCopyWith on ProxyProfile { - /// Returns a callable class that can be used as follows: `instanceOfProxyProfile.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$ProxyProfileCWProxy get copyWith => _$ProxyProfileCWProxyImpl(this); -} - -// ************************************************************************** -// TypeAdapterGenerator -// ************************************************************************** - -class ProxyModeAdapter extends TypeAdapter { - @override - final int typeId = 7; - - @override - ProxyMode read(BinaryReader reader) { - switch (reader.readByte()) { - case 0: - return ProxyMode.global; - case 1: - return ProxyMode.schoolOnly; - default: - return ProxyMode.global; - } - } - - @override - void write(BinaryWriter writer, ProxyMode obj) { - switch (obj) { - case ProxyMode.global: - writer.writeByte(0); - break; - case ProxyMode.schoolOnly: - writer.writeByte(1); - break; - } - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is ProxyModeAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -ProxyProfile _$ProxyProfileFromJson(Map json) => ProxyProfile( - address: Uri.parse(json['address'] as String), - enabled: json['enabled'] as bool? ?? false, - mode: $enumDecodeNullable(_$ProxyModeEnumMap, json['mode']) ?? ProxyMode.schoolOnly, - ); - -Map _$ProxyProfileToJson(ProxyProfile instance) => { - 'address': instance.address.toString(), - 'enabled': instance.enabled, - 'mode': _$ProxyModeEnumMap[instance.mode]!, - }; - -const _$ProxyModeEnumMap = { - ProxyMode.global: 'global', - ProxyMode.schoolOnly: 'schoolOnly', -}; diff --git a/lib/settings/i18n.dart b/lib/settings/i18n.dart deleted file mode 100644 index d2b995056..000000000 --- a/lib/settings/i18n.dart +++ /dev/null @@ -1,161 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/credentials/i18n.dart'; -import 'package:sit/l10n/app.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/settings/entity/proxy.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - final oaCredentials = const _OaCredentials(); - final proxy = const _Proxy(); - final dev = const _DevOptions(); - final about = const _About(); - final app = const AppI18n(); - - static const ns = "settings"; - - String get title => "$ns.title".tr(); - - String get language => "$ns.language".tr(); - - String get themeColor => "$ns.themeColor".tr(); - - String get fromSystem => "$ns.fromSystem".tr(); - - String get themeModeTitle => "$ns.themeMode.title".tr(); - - String get clearCacheTitle => "$ns.clearCache.title".tr(); - - String get clearCacheDesc => "$ns.clearCache.desc".tr(); - - String get clearCacheRequest => "$ns.clearCache.request".tr(); - - String get wipeDataTitle => "$ns.wipeData.title".tr(); - - String get wipeDataDesc => "$ns.wipeData.desc".tr(); - - String get wipeDataRequest => "$ns.wipeData.request".tr(); - - String get wipeDataRequestDesc => "$ns.wipeData.requestDesc".tr(); -} - -class _Proxy { - const _Proxy(); - - static const ns = "${_I18n.ns}.proxy"; - - String get title => "$ns.title".tr(); - - String get desc => "$ns.desc".tr(); - - String get enableProxy => "$ns.enableProxy.title".tr(); - - String get enableProxyDesc => "$ns.enableProxy.desc".tr(); - - String get proxyMode => "$ns.proxyMode.title".tr(); - - String get shareQrCode => "$ns.shareQrCode.title".tr(); - - String get shareQrCodeDesc => "$ns.shareQrCode.desc".tr(); - - String get protocol => "$ns.protocol".tr(); - - String get hostname => "$ns.hostname".tr(); - - String get port => "$ns.port".tr(); - - String get enableAuth => "$ns.enableAuth".tr(); - - String get authentication => "$ns.authentication".tr(); - - String get username => "$ns.username".tr(); - - String get password => "$ns.password".tr(); - - String get invalidProxyFormatTip => "$ns.invalidProxyFormatTip".tr(); - - String get setFromQrCodeAction => "$ns.setFromQrCodeAction".tr(); - - String get setFromQrCodeDesc => "$ns.setFromQrCodeDesc".tr(); -} - -class _About { - const _About(); - - static const ns = "${_I18n.ns}.about"; - - String get title => "$ns.title".tr(); - - String get version => "$ns.version".tr(); - - String get icpLicense => "$ns.icpLicense".tr(); - - String get termsOfUse => "$ns.termsOfUse".tr(); - - String get privacyPolicy => "$ns.privacyPolicy".tr(); - - String get checkUpdate => "$ns.checkUpdate".tr(); -} - -class _DevOptions { - const _DevOptions(); - - final storage = const _Storage(); - - static const ns = "${_I18n.ns}.dev"; - - String get title => "$ns.title".tr(); - - String get devMode => "$ns.devMode.title".tr(); - - String get demoMode => "$ns.demoMode.title".tr(); - - String get devModeActivateTip => "$ns.activateTip".tr(); - - String get reload => "$ns.reload.title".tr(); - - String get reloadDesc => "$ns.reload.desc".tr(); - - String get localStorage => "$ns.localStorage.title".tr(); - - String get localStorageDesc => "$ns.localStorage.desc".tr(); -} - -class _Storage with CommonI18nMixin { - const _Storage(); - - static const ns = "${_DevOptions.ns}.localStorage"; - - String get title => "$ns.title".tr(); - - String get selectBoxTip => "$ns.selectBoxTip".tr(); - - String get clearBoxDesc => "$ns.clearBoxDesc".tr(); - - String get deleteItemDesc => "$ns.deleteItemDesc".tr(); - - String get emptyValueDesc => "$ns.emptyValueDesc".tr(); -} - -class _OaCredentials extends OaCredentialsI18n { - static const ns = "${_I18n.ns}.credentials"; - - const _OaCredentials(); - - String get testLoginOa => "$ns.testLoginOa.title".tr(); - - String get testLoginOaDesc => "$ns.testLoginOa.desc".tr(); -} - -extension ProxyTypeI18nX on ProxyCat { - String l10n() => "settings.proxy.proxyType.$name".tr(); -} - -extension ProxyModeI18nX on ProxyMode { - String l10nName() => "settings.proxy.proxyMode.$name.name".tr(); - - String l10nTip() => "settings.proxy.proxyMode.$name.tip".tr(); -} diff --git a/lib/settings/meta.dart b/lib/settings/meta.dart deleted file mode 100644 index fa8340ac4..000000000 --- a/lib/settings/meta.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'package:sit/utils/hive.dart'; -import 'package:hive_flutter/hive_flutter.dart'; - -class _K { - static const lastLaunchTime = "/lastLaunchTime"; - static const thisLaunchTime = "/thisLaunchTime"; -} - -// ignore: non_constant_identifier_names -late MetaImpl Meta; - -class MetaImpl { - final Box box; - - const MetaImpl(this.box); - - DateTime? get lastLaunchTime => box.safeGet(_K.lastLaunchTime); - - set lastLaunchTime(DateTime? newV) => box.safePut(_K.lastLaunchTime, newV); - - DateTime? get thisLaunchTime => box.safeGet(_K.thisLaunchTime); - - set thisLaunchTime(DateTime? newV) => box.safePut(_K.thisLaunchTime, newV); -} diff --git a/lib/settings/page/about.dart b/lib/settings/page/about.dart deleted file mode 100644 index 81f426e6b..000000000 --- a/lib/settings/page/about.dart +++ /dev/null @@ -1,182 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:simple_icons/simple_icons.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/r.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/entity/version.dart'; -import 'package:sit/update/utils.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/guard_launch.dart'; -import 'package:web_browser_detect/web_browser_detect.dart'; -import '../i18n.dart'; - -class AboutSettingsPage extends StatefulWidget { - const AboutSettingsPage({ - super.key, - }); - - @override - State createState() => _AboutSettingsPageState(); -} - -class _AboutSettingsPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.about.title.text(), - ), - SliverList.list( - children: [ - const VersionTile(), - if (Dev.on) - DetailListTile( - title: "Installer Store", - subtitle: R.currentVersion.installerStore, - ), - DetailListTile( - title: i18n.about.icpLicense, - subtitle: R.icpLicense, - trailing: PlatformIconButton( - icon: const Icon(Icons.open_in_browser), - onPressed: () async { - await guardLaunchUrlString(context, "https://beian.miit.gov.cn/"); - }, - ), - ), - ListTile( - title: i18n.about.termsOfUse.text(), - trailing: PlatformIconButton( - icon: const Icon(Icons.open_in_browser), - onPressed: () async { - await guardLaunchUrlString( - context, "https://github.com/liplum-dev/mimir/blob/master/Terms%20of%20use.md"); - }, - ), - ), - ListTile( - title: i18n.about.privacyPolicy.text(), - trailing: PlatformIconButton( - icon: const Icon(Icons.open_in_browser), - onPressed: () async { - await guardLaunchUrlString( - context, "https://github.com/liplum-dev/mimir/blob/master/Privacy%20Policy.md"); - }, - ), - ), - AboutListTile( - // FIXME: icon is buggy - // icon: SvgPicture.asset("assets/icon.svg").sizedAll(32), - applicationName: R.appNameL10n, - applicationVersion: R.currentVersion.version.toString(), - applicationLegalese: "Copyright©️2023 Liplum Dev. All Rights Reserved.", - ), - ], - ), - ], - ), - ); - } -} - -class VersionTile extends ConsumerStatefulWidget { - const VersionTile({super.key}); - - @override - ConsumerState createState() => _VersionTileState(); -} - -class _VersionTileState extends ConsumerState { - int clickCount = 0; - - @override - Widget build(BuildContext context) { - final devOn = ref.watch(Dev.$on); - final version = R.currentVersion; - return ListTile( - leading: switch (version.platform) { - AppPlatform.iOS || AppPlatform.macOS => const Icon(SimpleIcons.apple), - AppPlatform.android => const Icon(SimpleIcons.android), - AppPlatform.linux => const Icon(SimpleIcons.linux), - AppPlatform.windows => const Icon(SimpleIcons.windows), - AppPlatform.web => Icon(_getBrowserIcon()), - AppPlatform.unknown => const Icon(Icons.device_unknown_outlined), - }, - title: i18n.about.version.text(), - subtitle: "${version.platform.name} ${version.version.toString()}".text(), - trailing: kIsWeb ? null : const CheckUpdateButton(), - onTap: devOn && clickCount <= 10 - ? null - : () async { - if (ref.read(Dev.$on)) return; - clickCount++; - if (clickCount >= 10) { - clickCount = 0; - context.showSnackBar(content: i18n.dev.devModeActivateTip.text()); - await ref.read(Dev.$on.notifier).set(true); - await HapticFeedback.mediumImpact(); - } - }, - ); - } -} - -IconData _getBrowserIcon() { - final browser = Browser.detectOrNull(); - if (browser == null) return Icons.web; - return switch (browser.browserAgent) { - BrowserAgent.UnKnown => Icons.web, - BrowserAgent.Chrome => SimpleIcons.googlechrome, - BrowserAgent.Safari => SimpleIcons.safari, - BrowserAgent.Firefox => SimpleIcons.firefoxbrowser, - BrowserAgent.Explorer => SimpleIcons.internetexplorer, - BrowserAgent.Edge => SimpleIcons.microsoftedge, - BrowserAgent.EdgeChromium => SimpleIcons.microsoftedge, - }; -} - -class CheckUpdateButton extends StatefulWidget { - const CheckUpdateButton({super.key}); - - @override - State createState() => _CheckUpdateButtonState(); -} - -class _CheckUpdateButtonState extends State { - var isChecking = false; - - @override - Widget build(BuildContext context) { - return OutlinedButton( - onPressed: isChecking - ? null - : () async { - setState(() { - isChecking = true; - }); - try { - await checkAppUpdate(context: context, manually: true); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - } - setState(() { - isChecking = false; - }); - }, - child: i18n.about.checkUpdate.text(), - ); - } -} diff --git a/lib/settings/page/credentials.dart b/lib/settings/page/credentials.dart deleted file mode 100644 index 73a28feaf..000000000 --- a/lib/settings/page/credentials.dart +++ /dev/null @@ -1,167 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/init.dart'; -import 'package:sit/login/utils.dart'; -import '../i18n.dart'; - -const _changePasswordUrl = "https://authserver.sit.edu.cn/authserver/passwordChange.do"; - -class CredentialsPage extends ConsumerStatefulWidget { - const CredentialsPage({super.key}); - - @override - ConsumerState createState() => _CredentialsPageState(); -} - -class _CredentialsPageState extends ConsumerState { - var showPassword = false; - - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.oaCredentials.oaAccount.text(), - ), - buildBody(), - ], - ), - ); - } - - Widget buildBody() { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - final all = []; - if (credentials != null) { - all.add((_) => buildAccount(credentials)); - all.add((_) => const Divider()); - all.add((_) => buildPassword(credentials)); - all.add((_) => TestLoginTile(credentials: credentials)); - } - return SliverList( - delegate: SliverChildBuilderDelegate( - childCount: all.length, - (ctx, index) { - return all[index](ctx); - }, - ), - ); - } - - Widget buildAccount(Credentials credential) { - return ListTile( - title: i18n.oaCredentials.oaAccount.text(), - subtitle: credential.account.text(), - leading: Icon(context.icons.person), - trailing: Icon(context.icons.copy), - onTap: () async { - context.showSnackBar(content: i18n.copyTipOf(i18n.oaCredentials.oaAccount).text()); - // Copy the student ID to clipboard - await Clipboard.setData(ClipboardData(text: credential.account)); - }, - ); - } - - Widget buildPassword(Credentials credential) { - return AnimatedSize( - duration: const Duration(milliseconds: 100), - child: ListTile( - title: i18n.oaCredentials.savedOaPwd.text(), - subtitle: Text(!showPassword ? i18n.oaCredentials.savedOaPwdDesc : credential.password), - leading: const Icon(Icons.password_rounded), - trailing: [ - PlatformIconButton( - icon: Icon(context.icons.edit), - onPressed: () async { - final newPwd = await Editor.showStringEditor( - context, - desc: i18n.oaCredentials.savedOaPwd, - initial: credential.password, - ); - if (newPwd != credential.password) { - if (!mounted) return; - CredentialsInit.storage.oaCredentials = credential.copyWith(password: newPwd); - setState(() {}); - } - }, - ), - PlatformIconButton( - onPressed: () { - setState(() { - showPassword = !showPassword; - }); - }, - icon: showPassword ? const Icon(Icons.visibility) : const Icon(Icons.visibility_off)), - ].wrap(), - ), - ); - } -} - -enum _TestLoginState { - notStart, - loggingIn, - success, -} - -class TestLoginTile extends StatefulWidget { - final Credentials credentials; - - const TestLoginTile({ - super.key, - required this.credentials, - }); - - @override - State createState() => _TestLoginTileState(); -} - -class _TestLoginTileState extends State { - var loggingState = _TestLoginState.notStart; - - @override - Widget build(BuildContext context) { - return ListTile( - enabled: loggingState != _TestLoginState.loggingIn, - title: i18n.oaCredentials.testLoginOa.text(), - subtitle: i18n.oaCredentials.testLoginOaDesc.text(), - leading: const Icon(Icons.login), - trailing: Padding( - padding: const EdgeInsets.all(8), - child: switch (loggingState) { - _TestLoginState.loggingIn => const CircularProgressIndicator.adaptive(), - _TestLoginState.success => Icon(context.icons.checkMark, color: Colors.green), - _ => null, - }, - ), - onTap: loggingState == _TestLoginState.loggingIn - ? null - : () async { - setState(() => loggingState = _TestLoginState.loggingIn); - try { - await Init.ssoSession.deleteSitUriCookies(); - await Init.ssoSession.loginLocked(widget.credentials); - if (!mounted) return; - setState(() => loggingState = _TestLoginState.success); - } on Exception catch (error, stackTrace) { - setState(() => loggingState = _TestLoginState.notStart); - if (!mounted) return; - await handleLoginException(context: context, error: error, stackTrace: stackTrace); - } - }, - ); - } -} diff --git a/lib/settings/page/developer.dart b/lib/settings/page/developer.dart deleted file mode 100644 index 95b529320..000000000 --- a/lib/settings/page/developer.dart +++ /dev/null @@ -1,337 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/app.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/credentials/utils.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/expansion_tile.dart'; -import 'package:sit/init.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/login/aggregated.dart'; -import 'package:sit/login/utils.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/design/widgets/navigation.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/settings.dart'; -import '../i18n.dart'; - -class DeveloperOptionsPage extends ConsumerStatefulWidget { - const DeveloperOptionsPage({ - super.key, - }); - - @override - ConsumerState createState() => _DeveloperOptionsPageState(); -} - -class _DeveloperOptionsPageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - final demoMode = ref.watch(Dev.$demoMode); - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.dev.title.text(), - ), - SliverList( - delegate: SliverChildListDelegate([ - buildDevModeToggle(), - buildDemoModeToggle(), - PageNavigationTile( - title: i18n.dev.localStorage.text(), - subtitle: i18n.dev.localStorageDesc.text(), - leading: const Icon(Icons.storage), - path: "/settings/developer/local-storage", - ), - buildReload(), - const DebugExpenseUserOverrideTile(), - if (credentials != null) - SwitchOaUserTile( - currentCredentials: credentials, - ), - if (demoMode && credentials != R.demoModeOaCredentials) - ListTile( - leading: const Icon(Icons.adb), - title: "Login demo account".text(), - trailing: const Icon(Icons.login), - onTap: () async { - Settings.lastSignature ??= "Liplum"; - CredentialsInit.storage.oaCredentials = R.demoModeOaCredentials; - CredentialsInit.storage.oaLoginStatus = LoginStatus.validated; - CredentialsInit.storage.oaLastAuthTime = DateTime.now(); - CredentialsInit.storage.oaUserType = OaUserType.undergraduate; - await Init.initModules(); - if (!context.mounted) return; - context.go("/"); - }, - ), - const AppLinksTile(), - const DebugGoRouteTile(), - ]), - ), - ], - ), - ); - } - - Widget buildDevModeToggle() { - final on = ref.watch(Dev.$on); - return ListTile( - title: i18n.dev.devMode.text(), - leading: const Icon(Icons.developer_mode_outlined), - trailing: Switch.adaptive( - value: on, - onChanged: (newV) { - ref.read(Dev.$on.notifier).set(newV); - }, - ), - ); - } - - Widget buildDemoModeToggle() { - final demoMode = ref.watch(Dev.$demoMode); - return ListTile( - leading: const Icon(Icons.adb), - title: i18n.dev.demoMode.text(), - trailing: Switch.adaptive( - value: demoMode, - onChanged: (newV) async { - ref.read(Dev.$demoMode.notifier).set(newV); - await Init.initModules(); - }, - ), - ); - } - - Widget buildReload() { - return ListTile( - title: i18n.dev.reload.text(), - subtitle: i18n.dev.reloadDesc.text(), - leading: Icon(context.icons.refresh), - onTap: () async { - await Init.initNetwork(); - await Init.initModules(); - final engine = WidgetsFlutterBinding.ensureInitialized(); - engine.performReassemble(); - if (!mounted) return; - context.navigator.pop(); - }, - ); - } -} - -class AppLinksTile extends ConsumerWidget { - const AppLinksTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final appLinks = ref.watch($appLinks); - return AnimatedExpansionTile( - leading: const Icon(Icons.link), - title: "App links".text(), - children: appLinks - .map((uri) => ListTile( - title: context.formatYmdhmsNum(uri.ts).text(), - subtitle: Uri.decodeFull(uri.uri.toString()).text(), - )) - .toList(), - ); - } -} - -class DebugGoRouteTile extends StatefulWidget { - const DebugGoRouteTile({super.key}); - - @override - State createState() => _DebugGoRouteTileState(); -} - -class _DebugGoRouteTileState extends State { - final $route = TextEditingController(); - - @override - void dispose() { - $route.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.route_outlined), - title: "Go route".text(), - subtitle: TextField( - controller: $route, - textInputAction: TextInputAction.go, - onSubmitted: (text) { - go(text); - }, - decoration: const InputDecoration( - hintText: "/anywhere", - ), - ), - trailing: [ - $route >> - (ctx, route) => PlatformIconButton( - onPressed: route.text.isEmpty - ? null - : () { - go(route.text); - }, - icon: const Icon(Icons.arrow_forward), - ) - ].row(mas: MainAxisSize.min), - ); - } - - void go(String route) { - if (!route.startsWith("/")) { - route = "/$route"; - } - context.push(route); - } -} - -class SwitchOaUserTile extends StatefulWidget { - final Credentials currentCredentials; - - const SwitchOaUserTile({ - super.key, - required this.currentCredentials, - }); - - @override - State createState() => _SwitchOaUserTileState(); -} - -class _SwitchOaUserTileState extends State { - bool isLoggingIn = false; - - @override - Widget build(BuildContext context) { - final credentialsList = Dev.getSavedOaCredentialsList() ?? []; - if (credentialsList.none((c) => c.account == widget.currentCredentials.account)) { - credentialsList.add(widget.currentCredentials); - } - return AnimatedExpansionTile( - title: "Switch OA user".text(), - subtitle: "Without logging out".text(), - initiallyExpanded: true, - leading: const Icon(Icons.swap_horiz), - trailing: isLoggingIn - ? const Padding( - padding: EdgeInsets.all(8), - child: CircularProgressIndicator.adaptive(), - ) - : null, - children: [ - ...credentialsList.map(buildCredentialsHistoryTile).map((e) => e.padOnly(l: 32)), - buildLoginNewTile().padOnly(l: 32), - ], - ); - } - - Widget buildCredentialsHistoryTile(Credentials credentials) { - final isCurrent = credentials == widget.currentCredentials; - return ListTile( - leading: Icon(context.icons.accountCircle), - title: credentials.account.text(), - subtitle: isCurrent ? "Current user".text() : estimateOaUserType(credentials.account)?.l10n().text(), - trailing: const Icon(Icons.login).padAll(8), - enabled: !isCurrent, - onTap: () async { - await loginWith(credentials); - }, - onLongPress: () async { - context.showSnackBar(content: i18n.copyTipOf(i18n.oaCredentials.oaAccount).text()); - await Clipboard.setData(ClipboardData(text: credentials.account)); - }, - ); - } - - Widget buildLoginNewTile() { - return ListTile( - leading: Icon(context.icons.add), - title: "New account".text(), - onTap: () async { - final credentials = await await Editor.showAnyEditor( - context, - initial: const Credentials(account: "", password: ""), - ); - if (credentials == null) return; - await loginWith(credentials); - }, - ); - } - - Future loginWith(Credentials credentials) async { - setState(() => isLoggingIn = true); - try { - await Init.cookieJar.deleteAll(); - await LoginAggregated.login(credentials); - final former = Dev.getSavedOaCredentialsList() ?? []; - former.add(credentials); - await Dev.setSavedOaCredentialsList(former); - if (!mounted) return; - setState(() => isLoggingIn = false); - context.go("/"); - } on Exception catch (error, stackTrace) { - if (!mounted) return; - setState(() => isLoggingIn = false); - await handleLoginException(context: context, error: error, stackTrace: stackTrace); - } - } -} - -class DebugExpenseUserOverrideTile extends ConsumerWidget { - const DebugExpenseUserOverrideTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final user = ref.watch(Dev.$expenseUserOverride); - return ListTile( - leading: Icon(context.icons.person), - title: "Expense user".text(), - subtitle: user?.text(), - onTap: () async { - final res = await Editor.showStringEditor( - context, - desc: "OA account", - initial: user ?? "", - ); - if (res == null) return; - if (res.isEmpty) { - ref.read(Dev.$expenseUserOverride.notifier).set(null); - return; - } - if (estimateOaUserType(res) == null) { - if (!context.mounted) return; - await context.showTip( - title: "Error", - desc: "Invalid OA account format.", - primary: "OK", - ); - } else { - ref.read(Dev.$expenseUserOverride.notifier).set(res); - } - }, - trailing: Icon(context.icons.edit), - ); - } -} diff --git a/lib/settings/page/index.dart b/lib/settings/page/index.dart deleted file mode 100644 index 321dd2072..000000000 --- a/lib/settings/page/index.dart +++ /dev/null @@ -1,243 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/login/i18n.dart'; -import 'package:sit/network/widgets/entrance.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/init.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/school/widgets/campus.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:locale_names/locale_names.dart'; -import 'package:sit/utils/riverpod.dart'; - -import '../i18n.dart'; -import '../../design/widgets/navigation.dart'; - -class SettingsPage extends ConsumerStatefulWidget { - const SettingsPage({super.key}); - - @override - ConsumerState createState() => _SettingsPageState(); -} - -class _SettingsPageState extends ConsumerState { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.title.text(), - ), - SliverList.list( - children: buildEntries(), - ), - ], - ), - ); - } - - List buildEntries() { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - final loginStatus = ref.watch(CredentialsInit.storage.$oaLoginStatus); - final devOn = ref.watch(Dev.$on); - final all = []; - if (loginStatus != LoginStatus.never) { - all.add(const CampusSelector().padSymmetric(h: 8)); - } - if (credentials != null) { - all.add(PageNavigationTile( - title: i18n.oaCredentials.oaAccount.text(), - subtitle: credentials.account.text(), - leading: const Icon(Icons.person_rounded), - path: "/settings/credentials", - )); - } else { - const oaLogin = OaLoginI18n(); - all.add(ListTile( - title: oaLogin.loginOa.text(), - subtitle: oaLogin.neverLoggedInTip.text(), - leading: const Icon(Icons.person_rounded), - onTap: () { - context.go("/login"); - }, - )); - } - all.add(const Divider()); - - all.add(PageNavigationTile( - title: i18n.language.text(), - subtitle: context.locale.nativeDisplayLanguageScript.text(), - leading: const Icon(Icons.translate_rounded), - path: "/settings/language", - )); - all.add(buildThemeMode()); - all.add(PageNavigationTile( - leading: const Icon(Icons.color_lens_outlined), - title: i18n.themeColor.text(), - path: "/settings/theme-color", - )); - all.add(const Divider()); - - if (loginStatus != LoginStatus.never) { - all.add(PageNavigationTile( - leading: const Icon(Icons.calendar_month_outlined), - title: i18n.app.navigation.timetable.text(), - path: "/settings/timetable", - )); - if (!kIsWeb) { - all.add(PageNavigationTile( - title: i18n.app.navigation.school.text(), - leading: const Icon(Icons.school_outlined), - path: "/settings/school", - )); - all.add(PageNavigationTile( - title: i18n.app.navigation.life.text(), - leading: const Icon(Icons.spa_outlined), - path: "/settings/life", - )); - } - all.add(PageNavigationTile( - title: i18n.app.navigation.game.text(), - leading: const Icon(Icons.videogame_asset), - path: "/settings/game", - )); - all.add(const Divider()); - } - if (devOn) { - all.add(PageNavigationTile( - title: i18n.dev.title.text(), - leading: const Icon(Icons.developer_mode_outlined), - path: "/settings/developer", - )); - } - if (!kIsWeb) { - all.add(PageNavigationTile( - title: i18n.proxy.title.text(), - subtitle: i18n.proxy.desc.text(), - leading: const Icon(Icons.vpn_key), - path: "/settings/proxy", - )); - all.add(const NetworkToolEntranceTile()); - } - if (loginStatus != LoginStatus.never) { - all.add(const ClearCacheTile()); - } - all.add(const WipeDataTile()); - all.add(PageNavigationTile( - title: i18n.about.title.text(), - leading: Icon(context.icons.info), - path: "/settings/about", - )); - all[all.length - 1] = all.last.safeArea(t: false); - return all; - } - - Widget buildThemeMode() { - final themeMode = ref.watch(Settings.theme.$themeMode) ?? ThemeMode.system; - return ListTile( - leading: switch (themeMode) { - ThemeMode.dark => const Icon(Icons.dark_mode), - ThemeMode.light => const Icon(Icons.light_mode), - ThemeMode.system => const Icon(Icons.brightness_auto), - }, - isThreeLine: true, - title: i18n.themeModeTitle.text(), - subtitle: ThemeMode.values - .map((mode) => ChoiceChip( - label: mode.l10n().text(), - selected: Settings.theme.themeMode == mode, - onSelected: (value) async { - ref.read(Settings.theme.$themeMode.notifier).set(mode); - await HapticFeedback.mediumImpact(); - }, - )) - .toList() - .wrap(spacing: 4), - ); - } -} - -class ClearCacheTile extends StatelessWidget { - const ClearCacheTile({super.key}); - - @override - Widget build(BuildContext context) { - return ListTile( - title: i18n.clearCacheTitle.text(), - subtitle: i18n.clearCacheDesc.text(), - leading: const Icon(Icons.folder_delete_outlined), - onTap: () { - _onClearCache(context); - }, - ); - } -} - -void _onClearCache(BuildContext context) async { - final confirm = await context.showActionRequest( - action: i18n.clearCacheTitle, - desc: i18n.clearCacheRequest, - cancel: i18n.cancel, - destructive: true, - ); - if (confirm == true) { - await HiveInit.clearCache(); - } -} - -class WipeDataTile extends StatelessWidget { - const WipeDataTile({super.key}); - - @override - Widget build(BuildContext context) { - return ListTile( - title: i18n.wipeDataTitle.text(), - subtitle: i18n.wipeDataDesc.text(), - leading: const Icon(Icons.delete_forever_rounded), - onTap: () { - _onWipeData(context); - }, - ); - } -} - -Future _onWipeData(BuildContext context) async { - final confirm = await context.showActionRequest( - action: i18n.wipeDataRequest, - desc: i18n.wipeDataRequestDesc, - cancel: i18n.cancel, - destructive: true, - ); - if (confirm == true) { - await HiveInit.clear(); // Clear storage - await Init.initNetwork(); - await Init.initModules(); - if (!context.mounted) return; - context.riverpod().read($oaOnline.notifier).state = false; - _gotoLogin(context); - } -} - -void _gotoLogin(BuildContext context) { - final navigator = context.navigator; - while (navigator.canPop()) { - navigator.pop(); - } - context.go("/login"); -} diff --git a/lib/settings/page/language.dart b/lib/settings/page/language.dart deleted file mode 100644 index 0ad6105a6..000000000 --- a/lib/settings/page/language.dart +++ /dev/null @@ -1,76 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:locale_names/locale_names.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/r.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/utils/save.dart'; -import '../i18n.dart'; - -class LanguagePage extends StatefulWidget { - const LanguagePage({ - super.key, - }); - - @override - State createState() => _LanguagePageState(); -} - -class _LanguagePageState extends State { - late var selected = context.locale; - - @override - Widget build(BuildContext context) { - final canSave = selected != context.locale; - return PromptSaveBeforeQuitScope( - changed: canSave, - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.language.text(), - actions: [ - PlatformTextButton( - onPressed: canSave ? onSave : null, - child: i18n.save.text(), - ) - ], - ), - SliverList.builder( - itemCount: R.supportedLocales.length, - itemBuilder: (ctx, i) { - final locale = R.supportedLocales[i]; - final isSelected = selected == locale; - return ListTile( - selected: isSelected, - title: locale.nativeDisplayLanguageScript.text(), - trailing: isSelected ? Icon(ctx.icons.checkMark) : null, - onTap: () { - setState(() { - selected = locale; - }); - }, - ); - }, - ), - ], - ), - ), - ); - } - - Future onSave() async { - await context.setLocale(selected); - final engine = WidgetsFlutterBinding.ensureInitialized(); - engine.performReassemble(); - if (!mounted) return; - context.pop(); - } -} diff --git a/lib/settings/page/proxy.dart b/lib/settings/page/proxy.dart deleted file mode 100644 index e103a8e1d..000000000 --- a/lib/settings/page/proxy.dart +++ /dev/null @@ -1,557 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/list_tile.dart'; -import 'package:sit/init.dart'; -import 'package:sit/network/widgets/checker.dart'; -import 'package:sit/qrcode/page/view.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/save.dart'; -import '../entity/proxy.dart'; -import '../i18n.dart'; -import '../qrcode/proxy.dart'; - -class ProxySettingsPage extends ConsumerStatefulWidget { - const ProxySettingsPage({ - super.key, - }); - - @override - ConsumerState createState() => _ProxySettingsPageState(); -} - -class _ProxySettingsPageState extends ConsumerState { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.proxy.title.text(), - ), - SliverList( - delegate: SliverChildListDelegate([ - buildEnableProxyToggle(), - buildProxyModeSwitcher(), - const Divider(), - buildProxyTypeTile( - ProxyCat.http, - icon: const Icon(Icons.http), - ), - buildProxyTypeTile( - ProxyCat.https, - icon: const Icon(Icons.https), - ), - if (Dev.on) - buildProxyTypeTile( - ProxyCat.all, - icon: const Icon(Icons.public), - ), - const Divider(), - TestConnectionTile( - where: WhereToCheck.studentReg, - check: () async => await Init.ugRegSession.checkConnectivity(), - ), - const ProxyShareQrCodeTile(), - ]), - ), - ], - ), - ); - } - - Widget buildProxyTypeTile( - ProxyCat type, { - required Widget icon, - }) { - final ProxyProfile? profile; - try { - profile = ref.watch(Settings.proxy.$profileOf(type)); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - rethrow; - } - return ListTile( - leading: icon, - title: type.l10n().text(), - subtitle: profile?.address.toString().text(), - trailing: const Icon(Icons.open_in_new), - onTap: () async { - final profile = await context.showSheet( - (ctx) => ProxyProfileEditorPage(type: type), - ); - if (profile is ProxyProfile) { - ref.read(Settings.proxy.$profileOf(type).notifier).set(profile); - } else if (profile == ProxyProfile.clear) { - ref.read(Settings.proxy.$profileOf(type).notifier).set(null); - } - }, - ); - } - - Widget buildEnableProxyToggle() { - final anyEnabled = ref.watch(Settings.proxy.$anyEnabled); - return _EnableProxyToggleTile( - enabled: anyEnabled, - onChanged: (newV) { - setState(() { - ref.read(Settings.proxy.$anyEnabled.notifier).set?.call(newV); - }); - }, - ); - } - - Widget buildProxyModeSwitcher() { - final integratedProxyMode = ref.watch(Settings.proxy.$integratedProxyMode); - return _ProxyModeSwitcherTile( - proxyMode: integratedProxyMode, - onChanged: (value) { - setState(() { - ref.watch(Settings.proxy.$integratedProxyMode.notifier).set?.call(value); - }); - }, - ); - } -} - -Uri? _validateProxyUri(String uriString) { - final uri = Uri.tryParse(uriString); - if (uri == null || !uri.isAbsolute) { - return null; - } - return uri; -} - -Uri? _validateProxyUriForType(String uriString, ProxyCat type) { - final uri = _validateProxyUri(uriString); - if (uri == null) return null; - return !type.supportedProtocols.contains(uri.scheme) ? null : uri; -} - -class ProxyShareQrCodeTile extends StatelessWidget { - const ProxyShareQrCodeTile({ - super.key, - }); - - @override - Widget build(BuildContext context) { - return ListTile( - leading: Icon(context.icons.qrcode), - title: i18n.proxy.shareQrCode.text(), - subtitle: i18n.proxy.shareQrCodeDesc.text(), - trailing: Icon(context.icons.share), - onTap: () async { - final proxy = Settings.proxy; - final qrCodeData = const ProxyDeepLink().encode( - http: proxy.http, - https: proxy.https, - all: proxy.all, - ); - context.showSheet( - (context) => QrCodePage( - title: i18n.proxy.title.text(), - data: qrCodeData.toString(), - ), - ); - }, - ); - } -} - -Future onProxyFromQrCode({ - required BuildContext context, - required ProxyProfile? http, - required ProxyProfile? https, - required ProxyProfile? all, -}) async { - final confirm = await context.showActionRequest( - desc: i18n.proxy.setFromQrCodeDesc, - action: i18n.proxy.setFromQrCodeAction, - cancel: i18n.cancel, - ); - if (confirm != true) return; - bool isValid(Uri? uri, ProxyCat type) { - return uri == null ? true : _validateProxyUriForType(uri.toString(), type) != null; - } - - var valid = isValid(http?.address, ProxyCat.http) && - isValid(https?.address, ProxyCat.https) && - isValid(all?.address, ProxyCat.all); - if (!valid) { - if (!context.mounted) return; - context.showTip( - title: i18n.error, - desc: i18n.proxy.invalidProxyFormatTip, - primary: i18n.close, - ); - return; - } - final cat2Address = { - ProxyCat.http: http, - ProxyCat.https: https, - ProxyCat.all: all, - }; - Settings.proxy.applyForeach((cat, profile, set) { - final profile = cat2Address[cat]; - if (profile != null) { - set(profile); - } - }); - - await HapticFeedback.mediumImpact(); - if (!context.mounted) return; - context.push("/settings/proxy"); -} - -class ProxyProfileEditorPage extends ConsumerStatefulWidget { - final ProxyCat type; - - const ProxyProfileEditorPage({ - super.key, - required this.type, - }); - - @override - ConsumerState createState() => _ProxyProfileEditorPageState(); -} - -class _ProxyProfileEditorPageState extends ConsumerState { - late final profile = Settings.proxy.getProfileOf(widget.type); - late var uri = profile?.address; - late var enabled = profile?.enabled ?? false; - late var proxyMode = profile?.mode ?? ProxyMode.schoolOnly; - late var enableAuth = uri?.userInfo.isNotEmpty == true; - - ProxyCat get type => widget.type; - - @override - Widget build(BuildContext context) { - return PromptSaveBeforeQuitScope( - changed: buildProfile() != profile, - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar( - title: widget.type.l10n().text(), - actions: [ - PlatformTextButton( - onPressed: uri?.toString().isNotEmpty == true - ? () { - setState(() { - uri = null; - enableAuth = false; - }); - } - : null, - child: i18n.clear.text(), - ), - PlatformTextButton( - onPressed: onSave, - child: i18n.save.text(), - ), - ], - ), - SliverList.list(children: [ - buildEnableProxyToggle(), - buildProxyModeSwitcher(), - buildProxyUrlTile(), - const Divider(), - buildProxyProtocolTile(), - buildProxyHostTile(), - buildProxyPortTile(), - buildEnableAuth(), - if (enableAuth) buildProxyAuthTile().padOnly(l: 32), - ]), - ], - ), - ), - ); - } - - void onSave() { - context.pop(buildProfile() ?? ProxyProfile.clear); - } - - ProxyProfile? buildProfile() { - var uri = this.uri; - if (uri == null) return null; - if (!enableAuth) { - uri = uri.replace(userInfo: ""); - } - return ProxyProfile( - address: uri, - enabled: enabled, - mode: proxyMode, - ); - } - - Widget buildProxyUrlTile() { - final uri = this.uri; - return DetailListTile( - leading: const Icon(Icons.link), - title: "URL", - subtitle: uri?.toString(), - trailing: PlatformIconButton( - icon: Icon(context.icons.edit), - onPressed: () async { - var newFullProxy = await Editor.showStringEditor( - context, - desc: i18n.proxy.title, - initial: uri?.toString() ?? type.buildDefaultUri().toString(), - ); - if (newFullProxy == null) return; - newFullProxy = newFullProxy.trim(); - final newUri = _validateProxyUriForType(newFullProxy, type); - if (newUri == null) { - if (!mounted) return; - context.showTip( - title: i18n.error, - desc: i18n.proxy.invalidProxyFormatTip, - primary: i18n.close, - ); - return; - } - if (newUri != uri) { - setState(() { - this.uri = newUri; - enableAuth = newUri.userInfo.isNotEmpty; - }); - } - }, - ), - ); - } - - Widget buildProxyProtocolTile() { - final scheme = uri?.scheme.toLowerCase(); - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.https), - title: i18n.proxy.protocol.text(), - subtitle: type.supportedProtocols - .map((protocol) => ChoiceChip( - label: protocol.toUpperCase().text(), - selected: protocol == scheme, - onSelected: (value) { - setState(() { - uri = uri?.replace( - scheme: protocol.toLowerCase(), - ); - }); - }, - )) - .toList() - .wrap(spacing: 4), - ); - } - - Widget buildProxyHostTile() { - final host = uri?.host; - return DetailListTile( - leading: const Icon(Icons.link), - title: i18n.proxy.hostname, - subtitle: host, - trailing: PlatformIconButton( - icon: Icon(context.icons.edit), - onPressed: () async { - final newHostRaw = await Editor.showStringEditor( - context, - desc: i18n.proxy.hostname, - initial: host ?? type.defaultHost, - ); - if (newHostRaw == null) return; - final newHost = newHostRaw.trim(); - if (newHost != host) { - setState(() { - uri = uri?.replace( - host: newHost, - ); - }); - } - }, - ), - ); - } - - Widget buildProxyPortTile() { - final port = uri?.port; - return DetailListTile( - leading: const Icon(Icons.settings_input_component_outlined), - title: i18n.proxy.port, - subtitle: port?.toString(), - trailing: PlatformIconButton( - icon: Icon(context.icons.edit), - onPressed: () async { - final newPort = await Editor.showIntEditor( - context, - desc: i18n.proxy.port, - initial: port ?? type.defaultPort, - ); - if (newPort == null) return; - if (newPort != port) { - setState(() { - uri = uri?.replace( - port: newPort, - ); - }); - } - }, - ), - ); - } - - Widget buildEnableAuth() { - return ListTile( - leading: const Icon(Icons.key), - title: i18n.proxy.enableAuth.text(), - trailing: Switch.adaptive( - value: enableAuth, - onChanged: (newV) { - setState(() { - enableAuth = newV; - }); - }, - ), - ); - } - - Widget buildProxyAuthTile() { - final userInfoParts = uri?.userInfo.split(":"); - final auth = userInfoParts == null - ? null - : userInfoParts.length == 2 - ? (username: userInfoParts[0], password: userInfoParts[1]) - : null; - final text = auth != null ? "${auth.username}:${auth.password}" : null; - return DetailListTile( - title: i18n.proxy.authentication, - subtitle: text, - trailing: PlatformIconButton( - icon: Icon(context.icons.edit), - onPressed: () async { - final newAuth = await showAdaptiveDialog<({String username, String password})>( - context: context, - builder: (_) => StringsEditor( - fields: [ - (name: "username", initial: auth?.username ?? ""), - (name: "password", initial: auth?.password ?? ""), - ], - title: i18n.proxy.authentication, - ctor: (values) => (username: values[0].trim(), password: values[1].trim()), - ), - ); - if (newAuth != null && newAuth != auth) { - setState(() { - uri = uri?.replace( - userInfo: newAuth.password.isNotEmpty ? "${newAuth.username}:${newAuth.password}" : newAuth.username); - }); - } - }, - ), - ); - } - - Widget buildEnableProxyToggle() { - return _EnableProxyToggleTile( - enabled: enabled, - onChanged: (newV) { - setState(() { - enabled = newV; - }); - }, - ); - } - - Widget buildProxyModeSwitcher() { - return _ProxyModeSwitcherTile( - proxyMode: proxyMode, - onChanged: (value) { - setState(() { - proxyMode = value; - }); - }, - ); - } -} - -class _EnableProxyToggleTile extends StatelessWidget { - final bool enabled; - final ValueChanged onChanged; - - const _EnableProxyToggleTile({ - required this.enabled, - required this.onChanged, - }); - - @override - Widget build(BuildContext context) { - return ListTile( - title: i18n.proxy.enableProxy.text(), - subtitle: i18n.proxy.enableProxyDesc.text(), - leading: const Icon(Icons.vpn_key), - trailing: Switch.adaptive( - value: enabled, - onChanged: onChanged, - ), - ); - } -} - -class _ProxyModeSwitcherTile extends StatelessWidget { - final ProxyMode? proxyMode; - final ValueChanged onChanged; - - const _ProxyModeSwitcherTile({ - required this.proxyMode, - required this.onChanged, - }); - - @override - Widget build(BuildContext context) { - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.public), - title: i18n.proxy.proxyMode.text(), - subtitle: ProxyMode.values - .map((mode) => ChoiceChip( - label: mode.l10nName().text(), - selected: proxyMode == mode, - onSelected: (value) { - onChanged(mode); - }, - )) - .toList() - .wrap(spacing: 4), - trailing: Tooltip( - triggerMode: TooltipTriggerMode.tap, - message: buildTooltip(), - child: Icon(context.icons.info), - ).padAll(8), - ); - } - - String buildTooltip() { - final proxyMode = this.proxyMode; - if (proxyMode == null) { - return ProxyMode.values.map((mode) => "${mode.l10nName()}: ${mode.l10nTip()}").join("\n"); - } else { - return proxyMode.l10nTip(); - } - } -} diff --git a/lib/settings/page/storage.dart b/lib/settings/page/storage.dart deleted file mode 100644 index 91e92aebf..000000000 --- a/lib/settings/page/storage.dart +++ /dev/null @@ -1,474 +0,0 @@ -import 'dart:math'; - -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/widgets/page_grouper.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../i18n.dart'; - -class LocalStoragePage extends StatefulWidget { - const LocalStoragePage({super.key}); - - @override - State createState() => _LocalStoragePageState(); -} - -class _LocalStoragePageState extends State { - final Map name2Box = {}; - - @override - void initState() { - super.initState(); - for (final entry in HiveInit.name2Box.entries) { - final boxName = entry.key; - final box = entry.value; - if (box.isOpen) { - name2Box[boxName] = box; - } - } - } - - @override - Widget build(BuildContext context) { - final boxes = name2Box.entries.map((e) => (name: e.key, box: e.value)).toList(); - boxes.sortBy((entry) => entry.name); - return context.isPortrait ? StorageListPortrait(boxes) : StorageListLandscape(boxes); - } -} - -class StorageListPortrait extends StatefulWidget { - final List<({String name, Box box})> boxes; - - const StorageListPortrait(this.boxes, {super.key}); - - @override - State createState() => _StorageListPortraitState(); -} - -class _StorageListPortraitState extends State { - @override - void initState() { - super.initState(); - } - - @override - Widget build(BuildContext ctx) { - return Scaffold( - resizeToAvoidBottomInset: false, - appBar: AppBar(title: i18n.title.text()), - body: ListView.separated( - itemCount: widget.boxes.length, - itemBuilder: (ctx, i) { - final (:name, :box) = widget.boxes[i]; - return BoxSection(box: box, boxName: name); - }, - separatorBuilder: (BuildContext context, int index) { - return const Divider(); - }, - ), - ); - } -} - -class BoxSection extends StatefulWidget { - final String boxName; - final Box box; - - const BoxSection({ - super.key, - required this.box, - required this.boxName, - }); - - @override - State createState() => _BoxSectionState(); -} - -class _BoxSectionState extends State { - String get boxName => widget.boxName; - - Box get box => widget.box; - - Widget buildTitle(BuildContext ctx) { - final box = this.box; - final boxNameStyle = ctx.textTheme.headlineSmall; - final action = PullDownMenuButton( - itemBuilder: (ctx) => [ - PullDownItem.delete( - icon: context.icons.delete, - title: i18n.delete, - onTap: () async { - final confirm = await _showDeleteBoxRequest(ctx); - if (confirm == true) { - box.clear(); - // Add a delay to ensure the box is really empty. - await Future.delayed(const Duration(milliseconds: 500)); - if (!mounted) return; - setState(() {}); - } - }, - ), - ], - ); - return ListTile( - title: Text(boxName, style: boxNameStyle, textAlign: TextAlign.center), - trailing: action, - ).inOutlinedCard(); - } - - @override - Widget build(BuildContext context) { - final curBox = box; - return [ - buildTitle(context), - BoxItemList(box: curBox), - ].column(mas: MainAxisSize.min).sized(w: double.infinity).padSymmetric(v: 5, h: 10); - } -} - -class BoxItemList extends StatefulWidget { - final Box box; - - const BoxItemList({super.key, required this.box}); - - @override - State createState() => _BoxItemListState(); -} - -class _BoxItemListState extends State { - int currentPage = 0; - static const pageSize = 6; - - late final $box = widget.box.listenable(); - - @override - Widget build(BuildContext context) { - return $box >> (ctx, _) => buildBody(ctx); - } - - Widget buildBody(BuildContext context) { - final keys = widget.box.keys.toList(); - final length = keys.length; - if (length < pageSize) { - return buildBoxItems(context, keys); - } else { - final start = currentPage * pageSize; - var totalPages = length ~/ pageSize; - if (length % pageSize != 0) { - totalPages++; - } - final end = min(start + pageSize, length); - return [ - buildPaginated(context, totalPages).padAll(10), - AnimatedSize( - duration: const Duration(milliseconds: 300), - curve: Curves.fastEaseInToSlowEaseOut, - child: buildBoxItems(context, keys.sublist(start, end)), - ), - ].column(); - } - } - - Widget buildBoxItems(BuildContext ctx, List keys) { - final routeStyle = context.textTheme.titleMedium; - final typeStyle = context.textTheme.bodySmall; - final contentStyle = context.textTheme.bodyMedium; - return keys - .map((e) => BoxItem( - keyInBox: e, - box: widget.box, - routeStyle: routeStyle, - typeStyle: typeStyle, - contentStyle: contentStyle, - onBoxChanged: () { - if (!mounted) return; - setState(() {}); - }, - )) - .toList() - .column(); - } - - Widget buildPaginated(BuildContext ctx, int totalPage) { - return PageGrouper( - paginateButtonStyles: PageBtnStyles(), - preBtnStyles: SkipBtnStyle( - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(20), - bottomLeft: Radius.circular(20), - ), - ), - onPageChange: (number) { - setState(() { - currentPage = number - 1; - }); - }, - totalPage: totalPage, - btnPerGroup: (ctx.mediaQuery.size.width / 50).round().clamp(1, totalPage), - currentPageIndex: currentPage + 1, - ); - } -} - -class BoxItem extends StatefulWidget { - final TextStyle? routeStyle; - - final TextStyle? typeStyle; - final TextStyle? contentStyle; - final dynamic keyInBox; - final Box box; - final VoidCallback? onBoxChanged; - - const BoxItem({ - super.key, - this.routeStyle, - this.typeStyle, - this.contentStyle, - required this.keyInBox, - required this.box, - this.onBoxChanged, - }); - - @override - State createState() => _BoxItemState(); -} - -class _BoxItemState extends State { - @override - Widget build(BuildContext context) { - final key = widget.keyInBox.toString(); - final value = widget.box.safeGet(widget.keyInBox); - final type = value.runtimeType.toString(); - Widget res = ListTile( - isThreeLine: true, - title: key.text(style: widget.routeStyle), - trailing: buildActionButton(key, value), - subtitle: [ - type.text(style: widget.typeStyle?.copyWith(color: Editor.isSupport(value) ? Colors.green : null)), - '$value'.text( - maxLines: 5, - style: widget.contentStyle?.copyWith(overflow: TextOverflow.ellipsis), - ) - ].column(caa: CrossAxisAlignment.start).align(at: Alignment.topLeft), - ).inFilledCard(); - if (value != null) { - res = res.on(tap: () async => showContentDialog(context, widget.box, key, value)); - } - return res; - } - - Widget buildActionButton(String key, dynamic value) { - return PullDownMenuButton( - itemBuilder: (ctx) => [ - PullDownItem.delete( - icon: ctx.icons.clear, - title: i18n.clear, - onTap: () async { - final confirm = await context.showDialogRequest( - title: i18n.warning, - desc: i18n.dev.storage.emptyValueDesc, - primary: i18n.confirm, - secondary: i18n.cancel, - primaryDestructive: true); - if (confirm == true) { - // this is unsafe, because the type is unknown - widget.box.put(key, _emptyValue(value)); - if (!mounted) return; - setState(() {}); - } - }, - ), - PullDownItem.delete( - title: i18n.delete, - icon: context.icons.delete, - onTap: () async { - ctx.pop(); - final confirm = await _showDeleteItemRequest(ctx); - if (confirm == true) { - widget.box.delete(key); - widget.onBoxChanged?.call(); - } - }, - ), - ], - ); - } - - Future showContentDialog(BuildContext context, Box box, String key, dynamic value, - {bool readonly = false}) async { - if (readonly || !Editor.isSupport(value)) { - await Editor.showReadonlyEditor(context, desc: key, initial: value); - } else { - final newValue = await Editor.showAnyEditor(context, initial: value, desc: key); - if (newValue == null) return; - bool isModified = value != newValue; - if (isModified) { - box.safePut(key, newValue); - if (!mounted) return; - setState(() {}); - } - } - } -} - -class StorageListLandscape extends StatefulWidget { - final List<({String name, Box box})> boxes; - - const StorageListLandscape(this.boxes, {super.key}); - - @override - State createState() => _StorageListLandscapeState(); -} - -class _StorageListLandscapeState extends State { - late String? selectedBoxName = widget.boxes.firstOrNull?.name; - - @override - void initState() { - super.initState(); - } - - @override - Widget build(BuildContext ctx) { - return Scaffold( - resizeToAvoidBottomInset: false, - appBar: AppBar( - title: i18n.title.text(), - elevation: 0, - ), - body: [ - buildBoxTitle().expanded(), - const VerticalDivider( - thickness: 5, - ), - AnimatedSwitcher( - duration: const Duration(milliseconds: 300), - child: buildBoxContentView(ctx), - ).padAll(10).flexible(flex: 2) - ].row()); - } - - Widget buildBoxTitle() { - final boxNameStyle = context.textTheme.titleMedium; - return ListView.builder( - itemCount: widget.boxes.length, - itemBuilder: (ctx, i) { - final (:name, :box) = widget.boxes[i]; - final color = name == selectedBoxName ? context.theme.secondaryHeaderColor : null; - final action = PullDownMenuButton( - itemBuilder: (ctx) => [ - PullDownItem.delete( - title: i18n.clear, - icon: context.icons.clear, - onTap: () async { - final confirm = await _showDeleteBoxRequest(ctx); - if (confirm == true) { - box.clear(); - if (!mounted) return; - setState(() {}); - } - }, - ), - ], - ); - return [ - name.text(style: boxNameStyle).padAll(10).on(tap: () { - if (selectedBoxName != name) { - setState(() { - selectedBoxName = name; - }); - } - }).expanded(), - action, - ].row().inCard(elevation: 3, color: color); - }, - ); - } - - Widget buildBoxContentView(BuildContext ctx) { - final name = selectedBoxName; - final selected = widget.boxes.firstWhereOrNull((tuple) => tuple.name == name); - if (selected == null) { - return LeavingBlank( - key: ValueKey(name), - icon: Icons.unarchive_outlined, - desc: i18n.dev.storage.selectBoxTip, - ); - } - final routeStyle = context.textTheme.titleMedium; - final typeStyle = context.textTheme.bodySmall; - final contentStyle = context.textTheme.bodyMedium; - final keys = selected.box.keys.toList(); - return ListView.builder( - itemCount: keys.length, - itemBuilder: (ctx, i) { - return BoxItem( - keyInBox: keys[i], - box: selected.box, - routeStyle: routeStyle, - typeStyle: typeStyle, - contentStyle: contentStyle, - onBoxChanged: () { - if (!mounted) return; - setState(() {}); - }, - ); - }, - ); - } -} - -/// THIS IS VERY DANGEROUS!!! -dynamic _emptyValue(dynamic value) { - if (value is String) { - return ""; - } else if (value is bool) { - return false; - } else if (value is int) { - return 0; - } else if (value is double) { - return 0.0; - } else if (value is List) { - value.clear(); - return value; - } else if (value is Set) { - value.clear(); - return value; - } else if (value is Map) { - value.clear(); - return value; - } else { - return value; - } -} - -Future _showDeleteBoxRequest(BuildContext ctx) async { - return await ctx.showDialogRequest( - title: i18n.delete, - desc: i18n.dev.storage.clearBoxDesc, - primary: i18n.confirm, - secondary: i18n.cancel, - primaryDestructive: true, - ); -} - -Future _showDeleteItemRequest(BuildContext ctx) async { - return await ctx.showDialogRequest( - title: i18n.delete, - desc: i18n.dev.storage.deleteItemDesc, - primary: i18n.delete, - secondary: i18n.cancel, - primaryDestructive: true, - ); -} diff --git a/lib/settings/page/theme_color.dart b/lib/settings/page/theme_color.dart deleted file mode 100644 index 8972011c2..000000000 --- a/lib/settings/page/theme_color.dart +++ /dev/null @@ -1,225 +0,0 @@ -import 'package:flex_color_picker/flex_color_picker.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/utils/color.dart'; -import 'package:sit/utils/save.dart'; -import 'package:system_theme/system_theme.dart'; -import '../i18n.dart'; - -class ThemeColorPage extends StatefulWidget { - const ThemeColorPage({ - super.key, - }); - - @override - State createState() => _ThemeColorPageState(); -} - -class _ThemeColorPageState extends State { - late var themeColor = Settings.theme.themeColor ?? getDefaultThemeColor(); - var fromSystem = Settings.theme.themeColorFromSystem; - - @override - Widget build(BuildContext context) { - final canSave = this.canSave(); - return PromptSaveBeforeQuitScope( - changed: canSave, - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.themeColor.text(), - actions: [ - PlatformTextButton( - onPressed: canSave ? onSave : null, - child: i18n.save.text(), - ) - ], - ), - SliverList.list( - children: [ - buildFromSystemToggle(), - buildThemeColorTile(), - ListTile( - title: i18n.preview.text(), - ) - ], - ), - SliverToBoxAdapter( - child: Theme( - data: context.theme.copyWith( - colorScheme: ColorScheme.fromSeed( - seedColor: fromSystem ? getDefaultThemeColor() : themeColor, - brightness: context.theme.brightness, - ), - ), - child: const ThemeColorPreview(), - ).padSymmetric(h: 12), - ) - ], - ), - ), - ); - } - - Color getDefaultThemeColor() { - return SystemTheme.accentColor.maybeAccent ?? context.colorScheme.primary; - } - - bool canSave() { - return fromSystem != Settings.theme.themeColorFromSystem || - themeColor != (Settings.theme.themeColor ?? getDefaultThemeColor()); - } - - Future selectNewThemeColor() async { - final newColor = await showColorPickerDialog( - context, - themeColor, - enableOpacity: true, - enableShadesSelection: true, - enableTonalPalette: true, - showColorCode: true, - pickersEnabled: const { - ColorPickerType.both: true, - ColorPickerType.primary: false, - ColorPickerType.accent: false, - ColorPickerType.custom: true, - ColorPickerType.wheel: true, - }, - ); - setState(() { - themeColor = newColor; - }); - } - - Widget buildThemeColorTile() { - return ListTile( - leading: const Icon(Icons.color_lens_outlined), - enabled: !fromSystem, - title: i18n.themeColor.text(), - subtitle: "#${themeColor.hexAlpha}".text(), - onTap: selectNewThemeColor, - trailing: Card.filled( - color: fromSystem ? context.theme.disabledColor : themeColor, - clipBehavior: Clip.hardEdge, - child: const SizedBox( - width: 32, - height: 32, - ), - ), - ); - } - - Widget buildFromSystemToggle() { - return ListTile( - title: i18n.fromSystem.text(), - trailing: Switch.adaptive( - value: fromSystem, - onChanged: (value) { - setState(() { - fromSystem = value; - }); - }, - ), - ); - } - - Future onSave() async { - Settings.theme.themeColor = themeColor; - Settings.theme.themeColorFromSystem = fromSystem; - final engine = WidgetsFlutterBinding.ensureInitialized(); - engine.performReassemble(); - if (!mounted) return; - context.pop(); - } -} - -class ThemeColorPreview extends StatelessWidget { - const ThemeColorPreview({super.key}); - - @override - Widget build(BuildContext context) { - return [ - Card( - child: _PreviewTile( - trailing: (v, f) => Checkbox.adaptive( - value: v, - onChanged: (v) => f(v != true), - ), - ), - ), - Card.filled( - child: _PreviewTile( - trailing: (v, f) => Switch.adaptive( - value: v, - onChanged: f, - ), - )), - _PreviewButton().padAll(8), - ].column(caa: CrossAxisAlignment.start); - } -} - -class _PreviewTile extends StatefulWidget { - final Widget Function(bool value, ValueChanged onChanged) trailing; - - const _PreviewTile({ - required this.trailing, - }); - - @override - State<_PreviewTile> createState() => _PreviewTileState(); -} - -class _PreviewTileState extends State<_PreviewTile> { - var selected = true; - - @override - Widget build(BuildContext context) { - return ListTile( - leading: const Icon(Icons.color_lens), - selected: selected, - title: i18n.themeColor.text(), - subtitle: i18n.themeColor.text(), - trailing: widget.trailing( - selected, - (value) { - setState(() { - selected = !selected; - }); - }, - ), - ); - } -} - -class _PreviewButton extends StatefulWidget { - const _PreviewButton(); - - @override - State<_PreviewButton> createState() => _PreviewButtonState(); -} - -class _PreviewButtonState extends State<_PreviewButton> { - @override - Widget build(BuildContext context) { - return [ - FilledButton( - onPressed: () {}, - child: i18n.themeColor.text(), - ), - OutlinedButton( - onPressed: () {}, - child: i18n.themeColor.text(), - ), - ].wrap(spacing: 8); - } -} diff --git a/lib/settings/qrcode/proxy.dart b/lib/settings/qrcode/proxy.dart deleted file mode 100644 index ba2d67cf2..000000000 --- a/lib/settings/qrcode/proxy.dart +++ /dev/null @@ -1,56 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/qrcode/protocol.dart'; -import 'package:sit/qrcode/utils.dart'; -import 'package:sit/r.dart'; -import 'package:sit/settings/entity/proxy.dart'; -import 'package:sit/settings/page/proxy.dart'; - -class ProxyDeepLink extends DeepLinkHandlerProtocol { - static const host = "proxy"; - static const path = "/set"; - - const ProxyDeepLink(); - - Uri encode({ - required ProxyProfile? http, - required ProxyProfile? https, - required ProxyProfile? all, - }) => - Uri(scheme: R.scheme, host: host, path: path, queryParameters: { - if (http != null) "http": encodeBytesForUrl(http.encodeByteList(), compress: false), - if (https != null) "https": encodeBytesForUrl(https.encodeByteList(), compress: false), - if (all != null) "all": encodeBytesForUrl(all.encodeByteList(), compress: false), - }); - - ({ProxyProfile? http, ProxyProfile? https, ProxyProfile? all}) decode(Uri qrCodeData) { - final param = qrCodeData.queryParameters; - final http = param["http"]; - final https = param["https"]; - final all = param["all"]; - - return ( - http: http == null ? null : ProxyProfile.decodeFromByteList(decodeBytesFromUrl(http, compress: false)), - https: https == null ? null : ProxyProfile.decodeFromByteList(decodeBytesFromUrl(https, compress: false)), - all: all == null ? null : ProxyProfile.decodeFromByteList(decodeBytesFromUrl(all, compress: false)), - ); - } - - @override - bool match(Uri encoded) { - return encoded.host == host && encoded.path == path; - } - - @override - Future onHandle({ - required BuildContext context, - required Uri qrCodeData, - }) async { - final (:http, :https, :all) = decode(qrCodeData); - await onProxyFromQrCode( - context: context, - http: http, - https: https, - all: all, - ); - } -} diff --git a/lib/settings/settings.dart b/lib/settings/settings.dart deleted file mode 100644 index 0662ac193..000000000 --- a/lib/settings/settings.dart +++ /dev/null @@ -1,219 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/game/settings.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/entity/campus.dart'; -import 'package:sit/school/settings.dart'; -import 'package:sit/timetable/settings.dart'; -import 'package:sit/utils/json.dart'; -import 'package:sit/utils/riverpod.dart'; -import 'package:statistics/statistics.dart'; - -import '../life/settings.dart'; -import 'entity/proxy.dart'; - -class _K { - static const ns = "/settings"; - static const campus = '$ns/campus'; - static const focusTimetable = '$ns/focusTimetable'; - static const lastSignature = '$ns/lastSignature'; -} - -class _UpdateK { - static const ns = '/update'; - static const skippedVersion = '$ns/skippedVersion'; - static const lastSkipUpdateTime = '$ns/lastSkipUpdateTime'; -} - -// ignore: non_constant_identifier_names -late SettingsImpl Settings; - -class SettingsImpl { - final Box box; - - SettingsImpl(this.box); - - late final life = LifeSettings(box); - late final timetable = TimetableSettings(box); - late final school = SchoolSettings(box); - late final game = GameSettings(box); - late final theme = _Theme(box); - late final proxy = _Proxy(box); - - Campus get campus => box.safeGet(_K.campus) ?? Campus.fengxian; - - set campus(Campus newV) => box.safePut(_K.campus, newV); - - late final $campus = box.provider(_K.campus); - - bool get focusTimetable => box.safeGet(_K.focusTimetable) ?? false; - - set focusTimetable(bool newV) => box.safePut(_K.focusTimetable, newV); - - late final $focusTimetable = box.provider(_K.focusTimetable); - - String? get lastSignature => box.safeGet(_K.lastSignature); - - set lastSignature(String? value) => box.safePut(_K.lastSignature, value); - - String? get skippedVersion => box.safeGet(_UpdateK.skippedVersion); - - set skippedVersion(String? newV) => box.safePut(_UpdateK.skippedVersion, newV); - - DateTime? get lastSkipUpdateTime => box.safeGet(_UpdateK.lastSkipUpdateTime); - - set lastSkipUpdateTime(DateTime? newV) => box.safePut(_UpdateK.lastSkipUpdateTime, newV); -} - -class _ThemeK { - static const ns = '/theme'; - static const themeColorFromSystem = '$ns/themeColorFromSystem'; - static const themeColor = '$ns/themeColor'; - static const themeMode = '$ns/themeMode'; -} - -class _Theme { - final Box box; - - _Theme(this.box); - - // theme - Color? get themeColor { - final value = box.safeGet(_ThemeK.themeColor); - if (value == null) { - return null; - } else { - return Color(value); - } - } - - set themeColor(Color? v) { - box.safePut(_ThemeK.themeColor, v?.value); - } - - late final $themeColor = box.provider( - _ThemeK.themeColor, - get: () => themeColor, - set: (v) => themeColor = v, - ); - - bool get themeColorFromSystem => box.safeGet(_ThemeK.themeColorFromSystem) ?? true; - - set themeColorFromSystem(bool value) => box.safePut(_ThemeK.themeColorFromSystem, value); - - late final $themeColorFromSystem = box.provider(_ThemeK.themeColorFromSystem); - - /// [ThemeMode.system] by default. - ThemeMode get themeMode => box.safeGet(_ThemeK.themeMode) ?? ThemeMode.system; - - set themeMode(ThemeMode value) => box.safePut(_ThemeK.themeMode, value); - - late final $themeMode = box.provider(_ThemeK.themeMode); -} - -class _ProxyK { - static const ns = '/proxy'; - - static String keyOf(ProxyCat type) => "$ns/${type.name}"; -} - -class _Proxy { - final Box box; - - _Proxy(this.box); - - ProxyProfile? getProfileOf(ProxyCat cat) => - decodeJsonObject(box.safeGet(_ProxyK.keyOf(cat)), (obj) => ProxyProfile.fromJson(obj)); - - Future setProfileOf(ProxyCat cat, ProxyProfile? newV) async => - await box.safePut(_ProxyK.keyOf(cat), encodeJsonObject(newV)); - - ProxyProfile? get http => getProfileOf(ProxyCat.http); - - ProxyProfile? get https => getProfileOf(ProxyCat.https); - - ProxyProfile? get all => getProfileOf(ProxyCat.all); - - set http(ProxyProfile? profile) => setProfileOf(ProxyCat.http, profile); - - set https(ProxyProfile? profile) => setProfileOf(ProxyCat.https, profile); - - set all(ProxyProfile? profile) => setProfileOf(ProxyCat.all, profile); - - List get profiles { - final http = this.http; - final https = this.https; - final all = this.all; - return [ - if (http != null) http, - if (https != null) https, - if (all != null) all, - ]; - } - - FutureOr applyForeach( - FutureOr Function( - ProxyCat cat, - ProxyProfile? profile, - Future Function(ProxyProfile?) set, - ) func, - ) async { - for (final cat in ProxyCat.values) { - await func(cat, getProfileOf(cat), (newV) => setProfileOf(cat, newV)); - } - } - - bool get anyEnabled => profiles.any((profile) => profile.enabled); - - set anyEnabled(bool value) { - applyForeach((cat, profile, set) { - if (profile != null) { - set(profile.copyWith(enabled: value)); - } - }); - } - - /// return null if their proxy mode are not identical. - ProxyMode? get integratedProxyMode { - final profiles = this.profiles; - return profiles.all((profile) => profile.mode == ProxyMode.schoolOnly) - ? ProxyMode.schoolOnly - : profiles.all((profile) => profile.mode == ProxyMode.global) - ? ProxyMode.global - : null; - } - - set integratedProxyMode(ProxyMode? mode) { - applyForeach((cat, profile, set) { - if (profile != null) { - set(profile.copyWith(mode: mode)); - } - }); - } - - /// return null if their proxy mode are not identical. - bool hasAnyProxyMode(ProxyMode mode) { - return http?.mode == mode || https?.mode == mode || all?.mode == mode; - } - - late final $profileOf = box.providerFamily( - _ProxyK.keyOf, - get: getProfileOf, - set: setProfileOf, - ); - - late final profilesListenable = box.listenable( - keys: ProxyCat.values.map((cat) => _ProxyK.keyOf(cat)).toList(), - ); - - late final $anyEnabled = profilesListenable.provider( - get: () => anyEnabled, - set: (newV) => anyEnabled = newV, - ); - late final $integratedProxyMode = profilesListenable.provider( - get: () => integratedProxyMode, - set: (newV) => integratedProxyMode = newV, - ); -} diff --git a/lib/storage/hive/adapter.dart b/lib/storage/hive/adapter.dart deleted file mode 100644 index 835486e1d..000000000 --- a/lib/storage/hive/adapter.dart +++ /dev/null @@ -1,101 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:hive/hive.dart'; -import 'package:sit/credentials/entity/credential.dart'; -import 'package:sit/credentials/entity/login_status.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/entity/campus.dart'; -import 'package:sit/life/electricity/entity/balance.dart'; -import 'package:sit/life/expense_records/entity/local.dart'; -import 'package:sit/school/class2nd/entity/application.dart'; -import 'package:sit/school/exam_result/entity/result.pg.dart'; -import 'package:sit/school/library/entity/book.dart'; -import 'package:sit/school/library/entity/borrow.dart'; -import 'package:sit/school/library/entity/image.dart'; -import 'package:sit/school/ywb/entity/service.dart'; -import 'package:sit/school/ywb/entity/application.dart'; -import 'package:sit/school/exam_result/entity/result.ug.dart'; -import 'package:sit/school/oa_announce/entity/announce.dart'; -import 'package:sit/school/class2nd/entity/details.dart'; -import 'package:sit/school/class2nd/entity/activity.dart'; -import 'package:sit/school/class2nd/entity/attended.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/yellow_pages/entity/contact.dart'; -import 'package:sit/settings/entity/proxy.dart'; -import 'package:sit/storage/hive/init.dart'; - -import 'builtin.dart'; - -class HiveAdapter { - HiveAdapter._(); - - static void registerCoreAdapters(HiveInterface hive) { - debugPrint("Register core Hive type"); - // Basic - hive.addAdapter(SizeAdapter()); - hive.addAdapter(VersionAdapter()); - hive.addAdapter(ThemeModeAdapter()); - hive.addAdapter(CampusAdapter()); - - // Credential - hive.addAdapter(CredentialsAdapter()); - hive.addAdapter(LoginStatusAdapter()); - hive.addAdapter(OaUserTypeAdapter()); - - // Settings - hive.addAdapter(ProxyModeAdapter()); - } - - static void registerCacheAdapters(HiveInterface hive) { - debugPrint("Register cache Hive type"); - // Electric Bill - hive.addAdapter(ElectricityBalanceAdapter()); - - // Activity - hive.addAdapter(Class2ndActivityDetailsAdapter()); - hive.addAdapter(Class2ndActivityAdapter()); - hive.addAdapter(Class2ndPointsSummaryAdapter()); - hive.addAdapter(Class2ndActivityApplicationAdapter()); - hive.addAdapter(Class2ndActivityApplicationStatusAdapter()); - hive.addAdapter(Class2ndPointItemAdapter()); - hive.addAdapter(Class2ndActivityCatAdapter()); - hive.addAdapter(Class2ndPointTypeAdapter()); - - // OA Announcement - hive.addAdapter(OaAnnounceDetailsAdapter()); - hive.addAdapter(OaAnnounceRecordAdapter()); - hive.addAdapter(OaAnnounceAttachmentAdapter()); - - // Application - hive.addAdapter(YwbServiceDetailSectionAdapter()); - hive.addAdapter(YwbServiceDetailsAdapter()); - hive.addAdapter(YwbServiceAdapter()); - hive.addAdapter(YwbApplicationAdapter()); - hive.addAdapter(YwbApplicationTrackAdapter()); - - // Exam Result - hive.addAdapter(ExamResultUgAdapter()); - hive.addAdapter(ExamResultItemAdapter()); - hive.addAdapter(UgExamTypeAdapter()); - hive.addAdapter(ExamResultPgAdapter()); - - // Expense Records - hive.addAdapter(TransactionAdapter()); - hive.addAdapter(TransactionTypeAdapter()); - - // Yellow Pages - hive.addAdapter(SchoolContactAdapter()); - - // Library - hive.addAdapter(BookAdapter()); - hive.addAdapter(BookDetailsAdapter()); - hive.addAdapter(BorrowedBookItemAdapter()); - hive.addAdapter(BookBorrowingHistoryItemAdapter()); - hive.addAdapter(BookBorrowingHistoryOperationAdapter()); - hive.addAdapter(BookImageAdapter()); - - // School - hive.addAdapter(SemesterAdapter()); - hive.addAdapter(SemesterInfoAdapter()); - hive.addAdapter(CourseCatAdapter()); - } -} diff --git a/lib/storage/hive/builtin.dart b/lib/storage/hive/builtin.dart deleted file mode 100644 index 42fe5c776..000000000 --- a/lib/storage/hive/builtin.dart +++ /dev/null @@ -1,82 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:version/version.dart'; - -import 'type_id.dart'; - -class VersionAdapter extends TypeAdapter { - @override - final int typeId = CoreHiveType.version; - - @override - Version read(BinaryReader reader) { - final major = reader.readInt(); - final minor = reader.readInt(); - final patch = reader.readInt(); - final build = reader.readString(); - return Version(major, minor, patch, build: build); - } - - @override - void write(BinaryWriter writer, Version obj) { - writer.writeInt(obj.major); - writer.writeInt(obj.minor); - writer.writeInt(obj.patch); - writer.writeString(obj.build); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is VersionAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -class ThemeModeAdapter extends TypeAdapter { - @override - final int typeId = CoreHiveType.themeMode; - - @override - ThemeMode read(BinaryReader reader) { - final index = reader.readInt32(); - return ThemeMode.values[index]; - } - - @override - void write(BinaryWriter writer, ThemeMode obj) { - writer.writeInt32(obj.index); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is ThemeModeAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} - -/// There is no need to consider revision -class SizeAdapter extends TypeAdapter { - @override - final int typeId = CoreHiveType.size; - - @override - Size read(BinaryReader reader) { - var x = reader.readDouble(); - var y = reader.readDouble(); - return Size(x, y); - } - - @override - void write(BinaryWriter writer, Size obj) { - writer.writeDouble(obj.width); - writer.writeDouble(obj.height); - } - - @override - int get hashCode => typeId.hashCode; - - @override - bool operator ==(Object other) => - identical(this, other) || other is SizeAdapter && runtimeType == other.runtimeType && typeId == other.typeId; -} diff --git a/lib/storage/hive/cookie.dart b/lib/storage/hive/cookie.dart deleted file mode 100644 index d38d43b3a..000000000 --- a/lib/storage/hive/cookie.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'package:sit/utils/hive.dart'; -import 'package:cookie_jar/cookie_jar.dart'; -import 'package:hive/hive.dart'; - -class HiveCookieJar implements Storage { - final Box box; - - const HiveCookieJar(this.box); - - @override - Future init(bool persistSession, bool ignoreExpires) async {} - - @override - Future write(String key, String value) async => box.safePut(key, value); - - @override - Future read(String key) async => box.safeGet(key); - - @override - Future delete(String key) async => box.delete(key); - - @override - Future deleteAll(List keys) async => box.deleteAll(keys); -} diff --git a/lib/storage/hive/init.dart b/lib/storage/hive/init.dart deleted file mode 100644 index ad701428b..000000000 --- a/lib/storage/hive/init.dart +++ /dev/null @@ -1,125 +0,0 @@ -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/widgets.dart'; -import 'package:hive/hive.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/meta.dart'; -import 'package:sit/settings/settings.dart'; -import "package:hive/src/hive_impl.dart"; -import 'adapter.dart'; - -class HiveInit { - const HiveInit._(); - - static final core = HiveImpl(); - static final cache = HiveImpl(); - - static late Box // - credentials, - library, - timetable, - expense, - yellowPages, - class2nd, - examArrange, - examResult, - oaAnnounce, - ywb, - eduEmail, - settings, - electricity, - meta, - cookies, - dev, - game; - - static late Map name2Box; - static late List cacheBoxes; - - static Future initLocalStorage({ - required Directory coreDir, - required Directory cacheDir, - }) async { - debugPrint("Initializing hive"); - await core.initFlutter(coreDir); - await cache.initFlutter(cacheDir); - } - - static void initAdapters() async { - debugPrint("Initializing hive adapters"); - HiveAdapter.registerCoreAdapters(core); - HiveAdapter.registerCacheAdapters(cache); - } - - static Future initBox() async { - debugPrint("Initializing hive box"); - name2Box = _name2Box([ - credentials = await core.openBox('credentials'), - settings = await core.openBox('settings'), - meta = await core.openBox('meta'), - timetable = await core.openBox('timetable'), - dev = await core.openBox("dev"), - ...cacheBoxes = [ - yellowPages = await cache.openBox('yellow-pages'), - eduEmail = await cache.openBox('edu-email'), - game = await core.openBox("game"), - if (!kIsWeb) cookies = await cache.openBox('cookies'), - if (!kIsWeb) expense = await cache.openBox('expense'), - if (!kIsWeb) library = await cache.openBox('library'), - if (!kIsWeb) examArrange = await cache.openBox('exam-arrange'), - if (!kIsWeb) examResult = await cache.openBox('exam-result'), - if (!kIsWeb) oaAnnounce = await cache.openBox('oa-announce'), - if (!kIsWeb) class2nd = await cache.openBox('class2nd'), - if (!kIsWeb) ywb = await cache.openBox('ywb'), - if (!kIsWeb) electricity = await cache.openBox('electricity'), - ], - ]); - Settings = SettingsImpl(settings); - Dev = DevSettingsImpl(dev); - Meta = MetaImpl(meta); - } - - static Map _name2Box(List boxes) { - final map = {}; - for (final box in boxes) { - map[box.name] = box; - } - return map; - } - - static Future clear() async { - for (final box in name2Box.values) { - await box.clear(); - } - } - - static Future clearCache() async { - for (final box in cacheBoxes) { - await box.clear(); - } - } -} - -/// Flutter extensions for Hive. -extension HiveX on HiveInterface { - /// Initializes Hive with the path from [getApplicationDocumentsDirectory]. - /// - /// You can provide a [subDir] where the boxes should be stored. - Future initFlutter(Directory dir) async { - WidgetsFlutterBinding.ensureInitialized(); - if (kIsWeb) return; - init(dir.path); - } - - void addAdapter(TypeAdapter adapter) { - assert( - !isAdapterRegistered(adapter.typeId), - "Trying to register adapter of $T, but the type ID #${adapter.typeId} is occupied by ${(this as dynamic).findAdapterForTypeId(adapter.typeId)}", - ); - if (!isAdapterRegistered(adapter.typeId)) { - registerAdapter(adapter); - debugPrint("Register type adapter of $T at ${adapter.typeId}"); - } - } -} diff --git a/lib/storage/hive/table.dart b/lib/storage/hive/table.dart deleted file mode 100644 index 442d04729..000000000 --- a/lib/storage/hive/table.dart +++ /dev/null @@ -1,206 +0,0 @@ -import 'dart:async'; -import 'dart:convert'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/utils/riverpod.dart'; - -const _kLastId = "lastId"; -const _kIdList = "idList"; -const _kRows = "rows"; -const _kSelectedId = "selectedId"; -const _kLastIdStart = 0; - -class Notifier with ChangeNotifier { - void notifier() => notifyListeners(); -} - -class HiveTable { - final String base; - final Box box; - - final String _lastIdK; - final String _idListK; - final String _rowsK; - final String _selectedIdK; - final ({T Function(Map json) fromJson, Map Function(T row) toJson})? useJson; - - /// notify if selected row was changed. - final $selected = Notifier(); - - /// notify if any row was changed. - final $any = Notifier(); - - /// The delegate of getting row - final T? Function(int id, T? Function(int id) builtin)? getDelegate; - - /// The delegate of setting row - final FutureOr Function(int id, T? newV, Future Function(int id, T? newV) builtin)? setDelegate; - - HiveTable({ - required this.base, - required this.box, - this.getDelegate, - this.setDelegate, - this.useJson, - }) : _lastIdK = "$base/$_kLastId", - _idListK = "$base/$_kIdList", - _rowsK = "$base/$_kRows", - _selectedIdK = "$base/$_kSelectedId"; - - bool get hasAny => idList?.isNotEmpty ?? false; - - int get lastId => box.safeGet(_lastIdK) ?? _kLastIdStart; - - set lastId(int newValue) => box.safePut(_lastIdK, newValue); - - List? get idList => box.safeGet>(_idListK)?.cast(); - - set idList(List? newValue) => box.safePut>(_idListK, newValue); - - int? get selectedId => box.safeGet(_selectedIdK); - - bool get isEmpty => idList?.isEmpty != false; - - bool get isNotEmpty => !isEmpty; - - String _rowK(int id) => "$_rowsK/$id"; - - set selectedId(int? newValue) { - box.safePut(_selectedIdK, newValue); - $selected.notifier(); - $any.notifier(); - } - - T? get selectedRow { - final id = selectedId; - if (id == null) { - return null; - } - return this[id]; - } - - T? _getBuiltin(int id) { - final row = box.safeGet(_rowK(id)); - final useJson = this.useJson; - if (useJson == null || row == null) { - return row; - } else { - return useJson.fromJson(jsonDecode(row)); - } - } - - T? get(int id) { - final get = this.getDelegate; - if (get != null) { - return get(id, _getBuiltin); - } - return _getBuiltin(id); - } - - T? operator [](int id) => get(id); - - Future _setBuiltin(int id, T? newValue) async { - final useJson = this.useJson; - if (useJson == null || newValue == null) { - await box.safePut(_rowK(id), newValue); - } else { - await box.safePut(_rowK(id), jsonEncode(useJson.toJson(newValue))); - } - if (selectedId == id) { - $selected.notifier(); - } - $any.notifier(); - } - - Future set(int id, T? newValue) async { - final set = this.setDelegate; - if (set != null) { - await set(id, newValue, _setBuiltin); - } - return _setBuiltin(id, newValue); - } - - void operator []=(int id, T? newValue) => set(id, newValue); - - /// Return a new ID for the [row]. - int add(T row) { - final curId = lastId++; - final ids = idList ?? []; - ids.add(curId); - this[curId] = row; - idList = ids; - return curId; - } - - /// Delete the timetable by [id]. - /// If [selectedId] is deleted, an available timetable would be switched to. - void delete(int id) { - final ids = idList; - if (ids == null) return; - if (ids.remove(id)) { - idList = ids; - if (selectedId == id) { - if (ids.isNotEmpty) { - selectedId = ids.first; - } else { - selectedId = null; - } - } - box.delete(_rowK(id)); - $any.notifier(); - } - } - - void drop() { - final ids = idList; - if (ids == null) return; - for (final id in ids) { - box.delete(_rowK(id)); - } - box.delete(_idListK); - box.delete(_selectedIdK); - box.delete(_lastIdK); - $selected.notifier(); - $any.notifier(); - } - - // TODO: Row delegate? - /// ignore null row - List<({int id, T row})> getRows() { - final ids = idList; - final res = <({int id, T row})>[]; - if (ids == null) return res; - for (final id in ids) { - final row = this[id]; - if (row != null) { - res.add((id: id, row: row)); - } - } - return res; - } - - Listenable listenRowChange(int id) => box.listenable(keys: [_rowK(id)]); - - late final $rowOf = box.providerFamily( - (id) => _rowK(id), - get: (id) => this[id], - set: (id, v) => this[id] = v, - ); - - late final $rows = $any.provider>( - get: getRows, - ); - late final $selectedId = $selected.provider( - get: () => selectedId, - ); - late final $selectedRow = $selected.provider( - get: () => selectedRow, - ); - // TODO: compose them - // late final $selectedRowWithId = Provider((ref){ - // return (id: ref.watch($selectedId)); - // }); -} diff --git a/lib/storage/hive/type_id.dart b/lib/storage/hive/type_id.dart deleted file mode 100644 index d218d8fbc..000000000 --- a/lib/storage/hive/type_id.dart +++ /dev/null @@ -1,75 +0,0 @@ -export "package:hive/hive.dart"; - -/// Basic 0-19 -class CoreHiveType { - static const size = 0; - static const themeMode = 1; - static const version = 2; - static const campus = 3; - static const credentials = 4; - static const loginStatus = 5; - static const oaUserType = 6; - static const proxyMode = 7; -} - -class CacheHiveType { - // School 20 - static const _school = 0; - static const semester = _school + 0; - static const semesterInfo = _school + 1; - static const courseCat = _school + 2; - - // Exam result 10 - static const _examResult = _school + 20; - static const examResultUg = _examResult + 0; - static const examResultUgItem = _examResult + 1; - static const examResultUgExamType = _examResult + 2; - static const examResultPg = _examResult + 3; - - // Second class 20 - static const _class2nd = _examResult + 10; - static const activity = _class2nd + 0; - static const activityDetails = _class2nd + 1; - static const activityCat = _class2nd + 2; - static const class2ndPointsSummary = _class2nd + 3; - static const class2ndActivityApplication = _class2nd + 4; - static const class2ndActivityApplicationStatus = _class2nd + 5; - static const class2ndPointItem = _class2nd + 6; - static const class2ndScoreType = _class2nd + 7; - - // Expense 10 - static const _expense = _class2nd + 20; - static const expenseTransactionType = _expense + 0; - static const expenseTransaction = _expense + 1; - - // Electricity 10 - static const _electricity = _expense + 10; - static const electricityBalance = _electricity + 0; - - // Ywb 20 - static const _ywb = _electricity + 10; - static const ywbServiceDetails = _ywb + 0; - static const ywbServiceDetailSection = _ywb + 1; - static const ywbService = _ywb + 2; - static const ywbApplication = _ywb + 3; - static const ywbApplicationTrack = _ywb + 4; - - // OaAnnounce 10 - static const _oaAnnounce = _ywb + 20; - static const oaAnnounceDetails = _oaAnnounce + 0; - static const oaAnnounceAttachment = _oaAnnounce + 1; - static const oaAnnounceRecord = _oaAnnounce + 2; - - // School yellow pages 5 - static const _yellowPages = _oaAnnounce + 10; - static const schoolContact = _yellowPages + 0; - - // Library 20 - static const _library = _yellowPages + 5; - static const libraryBook = _library + 0; - static const libraryBookImage = _library + 1; - static const libraryBookDetails = _library + 2; - static const libraryBorrowedBook = _library + 3; - static const libraryBorrowingHistory = _library + 4; - static const libraryBorrowingHistoryOp = _library + 5; -} diff --git a/lib/storage/prefs.dart b/lib/storage/prefs.dart deleted file mode 100644 index 36974cbf6..000000000 --- a/lib/storage/prefs.dart +++ /dev/null @@ -1,43 +0,0 @@ -import 'dart:ui'; - -import 'package:shared_preferences/shared_preferences.dart'; -import 'package:sit/r.dart'; - -class _K { - static const lastVersion = "${R.appId}.lastVersion"; - static const lastWindowSize = "${R.appId}.lastWindowSize"; - static const installTime = "${R.appId}.installTime"; -} - -extension PrefsX on SharedPreferences { - String? getLastVersion() => getString(_K.lastVersion); - - Future setLastVersion(String value) => setString(_K.lastVersion, value); - - Size? getLastWindowSize() => _string2Size(getString(_K.lastWindowSize)); - - Future setLastWindowSize(Size value) => setString(_K.lastWindowSize, _size2String(value)); - - /// The first time when user launch this app - DateTime? getInstallTime() { - final raw = getString(_K.installTime); - if (raw == null) return null; - return DateTime.tryParse(raw); - } - - Future setInstallTime(DateTime value) => setString(_K.installTime, value.toString()); -} - -Size? _string2Size(String? value) { - if (value == null) return null; - final parts = value.split(","); - if (parts.length != 2) return null; - final width = int.tryParse(parts[0]); - final height = int.tryParse(parts[1]); - if (width == null || height == null) return null; - return Size(width.toDouble(), height.toDouble()); -} - -String _size2String(Size size) { - return "${size.width.toInt()},${size.height.toInt()}"; -} diff --git a/lib/timetable/entity/background.dart b/lib/timetable/entity/background.dart deleted file mode 100644 index fa5169908..000000000 --- a/lib/timetable/entity/background.dart +++ /dev/null @@ -1,59 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:flutter/painting.dart'; -import 'package:json_annotation/json_annotation.dart'; - -part 'background.g.dart'; - -@JsonSerializable() -@CopyWith(skipFields: true) -class BackgroundImage { - @JsonKey() - final String path; - @JsonKey() - final double opacity; - @JsonKey() - final bool repeat; - @JsonKey() - final bool antialias; - - const BackgroundImage({ - required this.path, - this.opacity = 1.0, - this.repeat = true, - this.antialias = true, - }); - - const BackgroundImage.disabled({ - this.opacity = 1.0, - this.repeat = true, - this.antialias = true, - }) : path = ""; - - bool get enabled => path.isNotEmpty; - - ImageRepeat get imageRepeat => repeat ? ImageRepeat.repeat : ImageRepeat.noRepeat; - FilterQuality get filterQuality => antialias ? FilterQuality.low : FilterQuality.none; - - factory BackgroundImage.fromJson(Map json) => _$BackgroundImageFromJson(json); - - Map toJson() => _$BackgroundImageToJson(this); - - @override - bool operator ==(Object other) { - return identical(this, other) || - other is BackgroundImage && - runtimeType == other.runtimeType && - path == other.path && - opacity == other.opacity && - repeat == other.repeat && - antialias == other.antialias; - } - - @override - int get hashCode => Object.hash(path, opacity, repeat, antialias); - - @override - String toString() { - return toJson().toString(); - } -} diff --git a/lib/timetable/entity/background.g.dart b/lib/timetable/entity/background.g.dart deleted file mode 100644 index fea878c7a..000000000 --- a/lib/timetable/entity/background.g.dart +++ /dev/null @@ -1,87 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'background.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$BackgroundImageCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// BackgroundImage(...).copyWith(id: 12, name: "My name") - /// ```` - BackgroundImage call({ - String? path, - double? opacity, - bool? repeat, - bool? antialias, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfBackgroundImage.copyWith(...)`. -class _$BackgroundImageCWProxyImpl implements _$BackgroundImageCWProxy { - const _$BackgroundImageCWProxyImpl(this._value); - - final BackgroundImage _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// BackgroundImage(...).copyWith(id: 12, name: "My name") - /// ```` - BackgroundImage call({ - Object? path = const $CopyWithPlaceholder(), - Object? opacity = const $CopyWithPlaceholder(), - Object? repeat = const $CopyWithPlaceholder(), - Object? antialias = const $CopyWithPlaceholder(), - }) { - return BackgroundImage( - path: path == const $CopyWithPlaceholder() || path == null - ? _value.path - // ignore: cast_nullable_to_non_nullable - : path as String, - opacity: opacity == const $CopyWithPlaceholder() || opacity == null - ? _value.opacity - // ignore: cast_nullable_to_non_nullable - : opacity as double, - repeat: repeat == const $CopyWithPlaceholder() || repeat == null - ? _value.repeat - // ignore: cast_nullable_to_non_nullable - : repeat as bool, - antialias: antialias == const $CopyWithPlaceholder() || antialias == null - ? _value.antialias - // ignore: cast_nullable_to_non_nullable - : antialias as bool, - ); - } -} - -extension $BackgroundImageCopyWith on BackgroundImage { - /// Returns a callable class that can be used as follows: `instanceOfBackgroundImage.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$BackgroundImageCWProxy get copyWith => _$BackgroundImageCWProxyImpl(this); -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -BackgroundImage _$BackgroundImageFromJson(Map json) => BackgroundImage( - path: json['path'] as String, - opacity: (json['opacity'] as num?)?.toDouble() ?? 1.0, - repeat: json['repeat'] as bool? ?? true, - antialias: json['antialias'] as bool? ?? true, - ); - -Map _$BackgroundImageToJson(BackgroundImage instance) => { - 'path': instance.path, - 'opacity': instance.opacity, - 'repeat': instance.repeat, - 'antialias': instance.antialias, - }; diff --git a/lib/timetable/entity/cell_style.dart b/lib/timetable/entity/cell_style.dart deleted file mode 100644 index 2a8a624e0..000000000 --- a/lib/timetable/entity/cell_style.dart +++ /dev/null @@ -1,63 +0,0 @@ -import 'dart:ui'; - -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:dynamic_color/dynamic_color.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/utils/color.dart'; - -part "cell_style.g.dart"; - -@CopyWith(skipFields: true) -@JsonSerializable() -class CourseCellStyle { - @JsonKey() - final bool showTeachers; - @JsonKey() - final bool grayOutTakenLessons; - @JsonKey() - final bool harmonizeWithThemeColor; - @JsonKey() - final double alpha; - - const CourseCellStyle({ - this.showTeachers = true, - this.grayOutTakenLessons = false, - this.harmonizeWithThemeColor = true, - this.alpha = 1.0, - }); - - Color decorateColor( - Color color, { - Color? themeColor, - bool isLessonTaken = false, - }) { - if (harmonizeWithThemeColor && themeColor != null) { - color = color.harmonizeWith(themeColor); - } - if (grayOutTakenLessons && isLessonTaken) { - color = color.monochrome(); - } - if (alpha < 1.0) { - color = color.withOpacity(color.opacity * alpha); - } - return color; - } - - factory CourseCellStyle.fromJson(Map json) => _$CourseCellStyleFromJson(json); - - Map toJson() => _$CourseCellStyleToJson(this); - - @override - bool operator ==(Object other) { - return identical(this, other) || - other is CourseCellStyle && - runtimeType == other.runtimeType && - showTeachers == other.showTeachers && - grayOutTakenLessons == other.grayOutTakenLessons && - harmonizeWithThemeColor == other.harmonizeWithThemeColor && - alpha == other.alpha; - } - - @override - int get hashCode => Object.hash(showTeachers, grayOutTakenLessons, harmonizeWithThemeColor, alpha); -} diff --git a/lib/timetable/entity/cell_style.g.dart b/lib/timetable/entity/cell_style.g.dart deleted file mode 100644 index 315065763..000000000 --- a/lib/timetable/entity/cell_style.g.dart +++ /dev/null @@ -1,88 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'cell_style.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$CourseCellStyleCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// CourseCellStyle(...).copyWith(id: 12, name: "My name") - /// ```` - CourseCellStyle call({ - bool? showTeachers, - bool? grayOutTakenLessons, - bool? harmonizeWithThemeColor, - double? alpha, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfCourseCellStyle.copyWith(...)`. -class _$CourseCellStyleCWProxyImpl implements _$CourseCellStyleCWProxy { - const _$CourseCellStyleCWProxyImpl(this._value); - - final CourseCellStyle _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// CourseCellStyle(...).copyWith(id: 12, name: "My name") - /// ```` - CourseCellStyle call({ - Object? showTeachers = const $CopyWithPlaceholder(), - Object? grayOutTakenLessons = const $CopyWithPlaceholder(), - Object? harmonizeWithThemeColor = const $CopyWithPlaceholder(), - Object? alpha = const $CopyWithPlaceholder(), - }) { - return CourseCellStyle( - showTeachers: showTeachers == const $CopyWithPlaceholder() || showTeachers == null - ? _value.showTeachers - // ignore: cast_nullable_to_non_nullable - : showTeachers as bool, - grayOutTakenLessons: grayOutTakenLessons == const $CopyWithPlaceholder() || grayOutTakenLessons == null - ? _value.grayOutTakenLessons - // ignore: cast_nullable_to_non_nullable - : grayOutTakenLessons as bool, - harmonizeWithThemeColor: - harmonizeWithThemeColor == const $CopyWithPlaceholder() || harmonizeWithThemeColor == null - ? _value.harmonizeWithThemeColor - // ignore: cast_nullable_to_non_nullable - : harmonizeWithThemeColor as bool, - alpha: alpha == const $CopyWithPlaceholder() || alpha == null - ? _value.alpha - // ignore: cast_nullable_to_non_nullable - : alpha as double, - ); - } -} - -extension $CourseCellStyleCopyWith on CourseCellStyle { - /// Returns a callable class that can be used as follows: `instanceOfCourseCellStyle.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$CourseCellStyleCWProxy get copyWith => _$CourseCellStyleCWProxyImpl(this); -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -CourseCellStyle _$CourseCellStyleFromJson(Map json) => CourseCellStyle( - showTeachers: json['showTeachers'] as bool? ?? true, - grayOutTakenLessons: json['grayOutTakenLessons'] as bool? ?? false, - harmonizeWithThemeColor: json['harmonizeWithThemeColor'] as bool? ?? true, - alpha: (json['alpha'] as num?)?.toDouble() ?? 1.0, - ); - -Map _$CourseCellStyleToJson(CourseCellStyle instance) => { - 'showTeachers': instance.showTeachers, - 'grayOutTakenLessons': instance.grayOutTakenLessons, - 'harmonizeWithThemeColor': instance.harmonizeWithThemeColor, - 'alpha': instance.alpha, - }; diff --git a/lib/timetable/entity/course.dart b/lib/timetable/entity/course.dart deleted file mode 100644 index 1203f82d6..000000000 --- a/lib/timetable/entity/course.dart +++ /dev/null @@ -1,111 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; - -part 'course.g.dart'; - -@JsonSerializable(createToJson: false) -class UndergraduateCourseRaw { - /// 课程名称 - @JsonKey(name: 'kcmc') - final String courseName; - - /// 星期 - @JsonKey(name: 'xqjmc') - final String weekDayText; - - /// 节次 - @JsonKey(name: 'jcs') - final String timeslotsText; - - /// 周次 - @JsonKey(name: 'zcd') - final String weekText; - - /// 教室 - @JsonKey(name: 'cdmc') - final String place; - - /// 教师 - @JsonKey(name: 'xm', defaultValue: "") - final String teachers; - - /// 校区 - @JsonKey(name: 'xqmc') - final String campus; - - /// 学分 - @JsonKey(name: 'xf') - final String courseCredit; - - /// 学时 - @JsonKey(name: 'zxs') - final String creditHour; - - /// 教学班 - @JsonKey(name: 'jxbmc') - final String classCode; - - /// 课程代码 - @JsonKey(name: 'kch') - final String courseCode; - - factory UndergraduateCourseRaw.fromJson(Map json) => _$UndergraduateCourseRawFromJson(json); - - const UndergraduateCourseRaw({ - required this.courseName, - required this.weekDayText, - required this.timeslotsText, - required this.weekText, - required this.place, - required this.teachers, - required this.campus, - required this.courseCredit, - required this.creditHour, - required this.classCode, - required this.courseCode, - }); -} - -class PostgraduateCourseRaw { - /// 课程名称 - late String courseName; - - /// 星期 - late String weekDayText; - - /// 节次 - late String timeslotsText; - - /// 周次 - late String weekText; - - /// 教室 - late String place; - - /// 教师 - late String teachers; - - /// 学分 - late String courseCredit; - - /// 学时 - late String creditHour; - - /// 教学班 - late String classCode; - - /// 课程代码 - late String courseCode; - - PostgraduateCourseRaw({ - required this.courseName, - required this.weekDayText, - required this.timeslotsText, - required this.weekText, - required this.place, - required this.teachers, - required this.courseCredit, - required this.creditHour, - required this.classCode, - required this.courseCode, - }); -} diff --git a/lib/timetable/entity/course.g.dart b/lib/timetable/entity/course.g.dart deleted file mode 100644 index ebb625570..000000000 --- a/lib/timetable/entity/course.g.dart +++ /dev/null @@ -1,21 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'course.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -UndergraduateCourseRaw _$UndergraduateCourseRawFromJson(Map json) => UndergraduateCourseRaw( - courseName: json['kcmc'] as String, - weekDayText: json['xqjmc'] as String, - timeslotsText: json['jcs'] as String, - weekText: json['zcd'] as String, - place: json['cdmc'] as String, - teachers: json['xm'] as String? ?? '', - campus: json['xqmc'] as String, - courseCredit: json['xf'] as String, - creditHour: json['zxs'] as String, - classCode: json['jxbmc'] as String, - courseCode: json['kch'] as String, - ); diff --git a/lib/timetable/entity/display.dart b/lib/timetable/entity/display.dart deleted file mode 100644 index ed1c33a5e..000000000 --- a/lib/timetable/entity/display.dart +++ /dev/null @@ -1,20 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; - -/// 课表显示模式 -enum DisplayMode { - weekly, - daily; - - static DisplayMode? at(int? index) { - if (index == null) { - return null; - } else if (0 <= index && index < DisplayMode.values.length) { - return DisplayMode.values[index]; - } - return null; - } - - DisplayMode toggle() => DisplayMode.values[(index + 1) & 1]; - - String l10n() => "timetable.displayMode.$name".tr(); -} diff --git a/lib/timetable/entity/issue.dart b/lib/timetable/entity/issue.dart deleted file mode 100644 index 39a6adbe0..000000000 --- a/lib/timetable/entity/issue.dart +++ /dev/null @@ -1,95 +0,0 @@ -import 'package:sit/l10n/time.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:statistics/statistics.dart'; - -import 'timetable.dart'; -import 'timetable_entity.dart'; - -sealed class TimetableIssue {} - -class TimetableEmptyIssue implements TimetableIssue { - const TimetableEmptyIssue(); -} - -/// Credit by Examination -class TimetableCbeIssue implements TimetableIssue { - final int courseKey; - - const TimetableCbeIssue({ - required this.courseKey, - }); - - static bool detectCbe(SitCourse course) { - if (course.courseName.contains("自修") || course.courseName.contains("免听")) { - return true; - } - return false; - } -} - -class TimetableCourseOverlapIssue implements TimetableIssue { - final List courseKeys; - final int weekIndex; - final Weekday weekday; - final ({int start, int end}) timeslots; - - const TimetableCourseOverlapIssue({ - required this.courseKeys, - required this.weekIndex, - required this.weekday, - required this.timeslots, - }); - - bool isSameOne(TimetableCourseOverlapIssue other) { - if (courseKeys.toSet().equalsElements(other.courseKeys.toSet())) { - return true; - } - return false; - } -} - -extension SitTimetable4IssueX on SitTimetable { - List inspect() { - final issues = []; - // check if empty - if (courses.isEmpty) { - issues.add(const TimetableEmptyIssue()); - } - - // check if any cbe - for (final course in courses.values) { - if (!course.hidden && TimetableCbeIssue.detectCbe(course)) { - issues.add(TimetableCbeIssue( - courseKey: course.courseKey, - )); - } - } - - // TODO: finish overlap issue inspection - if (Dev.on) { - final overlaps = []; - final entity = resolve(); - for (final week in entity.weeks) { - for (final day in week.days) { - for (var timeslot = 0; timeslot < day.timeslot2LessonSlot.length; timeslot++) { - final lessonSlot = day.timeslot2LessonSlot[timeslot]; - if (lessonSlot.lessons.length >= 2) { - final issue = TimetableCourseOverlapIssue( - courseKeys: lessonSlot.lessons.map((l) => l.course.courseKey).toList(), - weekIndex: week.index, - weekday: Weekday.values[day.index], - timeslots: (start: timeslot, end: timeslot), - ); - if (overlaps.every((overlap) => !overlap.isSameOne(issue))) { - overlaps.add(issue); - } - } - } - } - } - issues.addAll(overlaps); - } - - return issues; - } -} diff --git a/lib/timetable/entity/loc.dart b/lib/timetable/entity/loc.dart deleted file mode 100644 index 00a6305a4..000000000 --- a/lib/timetable/entity/loc.dart +++ /dev/null @@ -1,128 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/utils/byte_io/byte_io.dart'; -import 'pos.dart'; -import 'timetable_entity.dart'; - -part "loc.g.dart"; - -@JsonEnum() -enum TimetableDayLocMode { - pos, - date, - ; - - String l10n() => "timetable.dayLocMode.$name".tr(); -} - -@JsonSerializable(ignoreUnannotated: true) -class TimetableDayLoc { - @JsonKey() - final TimetableDayLocMode mode; - - @JsonKey(name: "pos", includeIfNull: false) - final TimetablePos? posInternal; - - /// starts with 0 - @JsonKey(name: "date", includeIfNull: false) - final DateTime? dateInternal; - - const TimetableDayLoc({ - required this.mode, - required this.posInternal, - required this.dateInternal, - }); - - const TimetableDayLoc.pos(TimetablePos pos) - : posInternal = pos, - dateInternal = null, - mode = TimetableDayLocMode.pos; - - TimetableDayLoc.byPos(int weekIndex, Weekday weekday) - : posInternal = TimetablePos(weekIndex: weekIndex, weekday: weekday), - dateInternal = null, - mode = TimetableDayLocMode.pos; - - const TimetableDayLoc.date(DateTime date) - : posInternal = null, - dateInternal = date, - mode = TimetableDayLocMode.date; - - TimetableDayLoc.byDate(int year, int month, int day) - : posInternal = null, - dateInternal = DateTime(year, month, day), - mode = TimetableDayLocMode.date; - - TimetablePos get pos => posInternal!; - - DateTime get date => dateInternal!; - - void serialize(ByteWriter writer) { - writer.uint8(mode.index); - switch (mode) { - case TimetableDayLocMode.pos: - pos.serialize(writer); - case TimetableDayLocMode.date: - writer.datePacked(date, 2000); - } - } - - static TimetableDayLoc deserialize(ByteReader reader) { - final mode = TimetableDayLocMode.values[reader.uint8()]; - switch (mode) { - case TimetableDayLocMode.pos: - return TimetableDayLoc.pos(TimetablePos.deserialize(reader)); - case TimetableDayLocMode.date: - return TimetableDayLoc.date(reader.datePacked(2000)); - } - } - - String toDartCode() { - return switch (mode) { - TimetableDayLocMode.pos => "TimetableDayLoc.pos(${pos.toDartCode()})", - TimetableDayLocMode.date => 'TimetableDayLoc.date(DateTime(${date.year},${date.month},${date.day}))', - }; - } - - String l10n() { - return switch (mode) { - TimetableDayLocMode.pos => pos.l10n(), - TimetableDayLocMode.date => $key.currentContext!.formatYmdWeekText(date), - }; - } - - Map toJson() => _$TimetableDayLocToJson(this); - - factory TimetableDayLoc.fromJson(Map json) => _$TimetableDayLocFromJson(json); - - SitTimetableDay? resolveDay(SitTimetableEntity entity) { - return switch (mode) { - TimetableDayLocMode.pos => entity.weeks[pos.weekIndex].days[pos.weekday.index], - TimetableDayLocMode.date => entity.getDayOn(date), - }; - } - - @override - bool operator ==(Object other) { - return other is TimetableDayLoc && - runtimeType == other.runtimeType && - mode == other.mode && - dateInternal == other.dateInternal && - posInternal == other.posInternal; - } - - @override - int get hashCode => Object.hash(mode, pos, dateInternal); - - @override - String toString() { - return switch (mode) { - TimetableDayLocMode.pos => pos, - TimetableDayLocMode.date => date, - } - .toString(); - } -} diff --git a/lib/timetable/entity/loc.g.dart b/lib/timetable/entity/loc.g.dart deleted file mode 100644 index 1f61cb3a4..000000000 --- a/lib/timetable/entity/loc.g.dart +++ /dev/null @@ -1,34 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'loc.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -TimetableDayLoc _$TimetableDayLocFromJson(Map json) => TimetableDayLoc( - mode: $enumDecode(_$TimetableDayLocModeEnumMap, json['mode']), - posInternal: json['pos'] == null ? null : TimetablePos.fromJson(json['pos'] as Map), - dateInternal: json['date'] == null ? null : DateTime.parse(json['date'] as String), - ); - -Map _$TimetableDayLocToJson(TimetableDayLoc instance) { - final val = { - 'mode': _$TimetableDayLocModeEnumMap[instance.mode]!, - }; - - void writeNotNull(String key, dynamic value) { - if (value != null) { - val[key] = value; - } - } - - writeNotNull('pos', instance.posInternal); - writeNotNull('date', instance.dateInternal?.toIso8601String()); - return val; -} - -const _$TimetableDayLocModeEnumMap = { - TimetableDayLocMode.pos: 'pos', - TimetableDayLocMode.date: 'date', -}; diff --git a/lib/timetable/entity/patch.dart b/lib/timetable/entity/patch.dart deleted file mode 100644 index 6f577faf9..000000000 --- a/lib/timetable/entity/patch.dart +++ /dev/null @@ -1,571 +0,0 @@ -import 'dart:async'; -import 'dart:math'; -import 'dart:typed_data'; - -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/utils/byte_io/byte_io.dart'; -import 'package:sit/utils/error.dart'; - -import '../widgets/patch/copy_day.dart'; -import '../widgets/patch/move_day.dart'; -import '../widgets/patch/remove_day.dart'; -import '../widgets/patch/swap_days.dart'; -import 'loc.dart'; -import 'timetable.dart'; -import '../i18n.dart'; - -part "patch.g.dart"; - -/// for json serializable -const _patchSetType = "patchSet"; - -/// for QR code -const _patchSetTypeIndex = 255; - -sealed class TimetablePatchEntry { - static const version = 1; - - const TimetablePatchEntry(); - - factory TimetablePatchEntry.fromJson(Map json) { - final type = json["type"]; - if (type == _patchSetType) { - try { - return TimetablePatchSet.fromJson(json); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - return TimetableUnknownPatch(legacy: json); - } - } else { - return TimetablePatch.fromJson(json); - } - } - - Map toJson(); - - @override - String toString() => toDartCode(); - - String toDartCode(); - - void _serialize(ByteWriter writer); - - static TimetablePatchEntry deserialize(ByteReader reader) { - // ignore: unused_local_variable - final revision = reader.uint8(); - final typeId = reader.uint8(); - if (typeId == _patchSetTypeIndex) { - return TimetablePatchSet.deserialize(reader); - } else if (0 <= typeId && typeId < TimetablePatchType.values.length) { - final type = TimetablePatchType.values[typeId]; - return type._deserialize(reader); - } - assert(false); - return const TimetableUnknownPatch(); - } - - static void serialize(TimetablePatchEntry entry, ByteWriter writer) { - writer.uint8(version); - if (entry is TimetablePatchSet) { - writer.uint8(_patchSetTypeIndex); - } else if (entry is TimetablePatch) { - writer.uint8(entry.type.index); - } else { - writer.uint8(254); - } - entry._serialize(writer); - } - - static TimetablePatchEntry decodeByteList(Uint8List bytes) { - final reader = ByteReader(bytes); - return deserialize(reader); - } - - static Uint8List encodeByteList(TimetablePatchEntry entry) { - final writer = ByteWriter(512); - serialize(entry, writer); - return writer.build(); - } -} - -@JsonEnum(alwaysCreate: true) -enum TimetablePatchType { - // addLesson, - // removeLesson, - // replaceLesson, - // swapLesson, - // moveLesson, - // addDay, - unknown( - Icons.question_mark, - TimetableUnknownPatch.onCreate, - TimetableUnknownPatch.deserialize, - ), - moveDay( - Icons.turn_sharp_right, - TimetableMoveDayPatch.onCreate, - TimetableMoveDayPatch.deserialize, - ), - removeDay( - Icons.delete, - TimetableRemoveDayPatch.onCreate, - TimetableRemoveDayPatch.deserialize, - ), - copyDay( - Icons.copy, - TimetableCopyDayPatch.onCreate, - TimetableCopyDayPatch.deserialize, - ), - swapDays( - Icons.swap_horiz, - TimetableSwapDaysPatch.onCreate, - TimetableSwapDaysPatch.deserialize, - ), - ; - - static const creatable = [ - moveDay, - removeDay, - copyDay, - swapDays, - ]; - - final IconData icon; - final FutureOr Function(BuildContext context, SitTimetable timetable, [TPatch? patch]) _onCreate; - final TPatch Function(ByteReader reader) _deserialize; - - const TimetablePatchType(this.icon, this._onCreate, this._deserialize); - - FutureOr create(BuildContext context, SitTimetable timetable, [TPatch? patch]) async { - dynamic any = this; - // I have to cast [this] to dynamic :( - final newPatch = await any._onCreate(context, timetable, patch); - return newPatch; - } - - String l10n() => "timetable.patch.type.$name".tr(); -} - -/// To opt-in [JsonSerializable], please specify `toJson` parameter to [TimetablePatch.toJson]. -sealed class TimetablePatch extends TimetablePatchEntry { - @JsonKey() - TimetablePatchType get type; - - const TimetablePatch(); - - factory TimetablePatch.fromJson(Map json) { - final type = $enumDecode(_$TimetablePatchTypeEnumMap, json["type"], unknownValue: TimetablePatchType.unknown); - try { - return switch (type) { - // TimetablePatchType.addLesson => TimetableAddLessonPatch.fromJson(json), - // TimetablePatchType.removeLesson => TimetableAddLessonPatch.fromJson(json), - // TimetablePatchType.replaceLesson => TimetableAddLessonPatch.fromJson(json), - // TimetablePatchType.swapLesson => TimetableAddLessonPatch.fromJson(json), - // TimetablePatchType.moveLesson => TimetableAddLessonPatch.fromJson(json), - // TimetablePatchType.addDay => TimetableAddLessonPatch.fromJson(json), - TimetablePatchType.unknown => TimetableUnknownPatch.fromJson(json), - TimetablePatchType.removeDay => TimetableRemoveDayPatch.fromJson(json), - TimetablePatchType.swapDays => TimetableSwapDaysPatch.fromJson(json), - TimetablePatchType.moveDay => TimetableMoveDayPatch.fromJson(json), - TimetablePatchType.copyDay => TimetableCopyDayPatch.fromJson(json), - }; - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - return const TimetableUnknownPatch(); - } - } - - String l10n(); -} - -@JsonSerializable() -@CopyWith() -class TimetablePatchSet extends TimetablePatchEntry { - final String name; - final List patches; - - const TimetablePatchSet({ - required this.name, - required this.patches, - }); - - factory TimetablePatchSet.fromJson(Map json) => _$TimetablePatchSetFromJson(json); - - @override - Map toJson() => _$TimetablePatchSetToJson(this)..["type"] = _patchSetType; - - @override - String toDartCode() { - return 'TimetablePatchSet(name:"$name",patches:${patches.map((p) => p.toDartCode()).toList(growable: false)})'; - } - - static void _serializeLocal(TimetablePatchSet obj, ByteWriter writer) { - writer.strUtf8(obj.name); - writer.uint8(min(obj.patches.length, 255)); - for (final patch in obj.patches) { - TimetablePatchEntry.serialize(patch, writer); - } - } - - static TimetablePatchSet deserialize(ByteReader reader) { - final name = reader.strUtf8(); - final length = reader.uint8(); - final patches = []; - for (var i = 0; i < length; i++) { - patches.add(TimetablePatchEntry.deserialize(reader) as TimetablePatch); - } - return TimetablePatchSet(name: name, patches: patches); - } - - @override - void _serialize(ByteWriter writer) => _serializeLocal(this, writer); -} - -class BuiltinTimetablePatchSet implements TimetablePatchSet { - final String key; - - @override - String get name => "timetable.patch.builtin.$key".tr(); - @override - final List patches; - - const BuiltinTimetablePatchSet({ - required this.key, - required this.patches, - }); - - @override - void _serialize(ByteWriter writer) => TimetablePatchSet._serializeLocal(this, writer); - - @override - Map toJson() => _$TimetablePatchSetToJson(this)..["type"] = _patchSetType; - - @override - String toDartCode() { - return 'BuiltinTimetablePatchSet(patches:${patches.map((p) => p.toDartCode()).toList(growable: false)})'; - } - - @override - String toString() => toDartCode(); -} - -// -// @JsonSerializable() -// class TimetableAddLessonPatch extends TimetablePatch { -// @override -// final type = TimetablePatchType.addLesson; -// -// const TimetableAddLessonPatch(); -// -// factory TimetableAddLessonPatch.fromJson(Map json) => _$TimetableAddLessonPatchFromJson(json); -// -// @override -// Map toJson() => _$TimetableAddLessonPatchToJson(this); -// } - -// @JsonSerializable() -// class TimetableRemoveLessonPatch extends TimetablePatch { -// @override -// final type = TimetablePatchType.removeLesson; -// -// const TimetableRemoveLessonPatch(); -// -// factory TimetableRemoveLessonPatch.fromJson(Map json) => _$TimetableRemoveLessonPatchFromJson(json); -// -// @override -// Map toJson() => _$TimetableRemoveLessonPatchToJson(this); -// } -// -// @JsonSerializable() -// class TimetableMoveLessonPatch extends TimetablePatch { -// @override -// final type = TimetablePatchType.moveLesson; -// -// const TimetableMoveLessonPatch(); -// -// factory TimetableMoveLessonPatch.fromJson(Map json) => _$TimetableMoveLessonPatchFromJson(json); -// -// @override -// Map toJson() => _$TimetableMoveLessonPatchToJson(this); -// } - -@JsonSerializable() -class TimetableUnknownPatch extends TimetablePatch { - @JsonKey() - @override - TimetablePatchType get type => TimetablePatchType.unknown; - - final Map? legacy; - - const TimetableUnknownPatch({this.legacy}); - - static Future onCreate( - BuildContext context, - SitTimetable timetable, [ - TimetableUnknownPatch? patch, - ]) async { - throw UnsupportedError("TimetableUnknownPatch can't be created"); - } - - factory TimetableUnknownPatch.fromJson(Map json) { - return TimetableUnknownPatch(legacy: json); - } - - @override - void _serialize(ByteWriter writer) { - writer.uint8(type.index); - } - - static TimetableUnknownPatch deserialize(ByteReader reader) { - return const TimetableUnknownPatch(); - } - - @override - Map toJson() => (legacy ?? {})..["type"] = _$TimetablePatchTypeEnumMap[type]; - - @override - String toDartCode() { - return "TimetableUnknownPatch(legacy:$legacy)"; - } - - @override - String l10n() { - return i18n.unknown; - } -} - -@JsonSerializable() -class TimetableRemoveDayPatch extends TimetablePatch { - @override - TimetablePatchType get type => TimetablePatchType.removeDay; - - @JsonKey() - final List all; - - const TimetableRemoveDayPatch({ - required this.all, - }); - - TimetableRemoveDayPatch.oneDay({ - required TimetableDayLoc loc, - }) : all = [loc]; - - @override - void _serialize(ByteWriter writer) { - writer.uint8(min(all.length, 255)); - for (final loc in all) { - loc.serialize(writer); - } - } - - static TimetableRemoveDayPatch deserialize(ByteReader reader) { - final length = reader.uint8(); - final all = []; - for (var i = 0; i < length; i++) { - all.add(TimetableDayLoc.deserialize(reader)); - } - return TimetableRemoveDayPatch( - all: all, - ); - } - - factory TimetableRemoveDayPatch.fromJson(Map json) => _$TimetableRemoveDayPatchFromJson(json); - - @override - Map toJson() => _$TimetableRemoveDayPatchToJson(this)..["type"] = _$TimetablePatchTypeEnumMap[type]; - - static Future onCreate( - BuildContext context, - SitTimetable timetable, [ - TimetableRemoveDayPatch? patch, - ]) async { - return await context.showSheet( - (ctx) => TimetableRemoveDayPatchSheet( - timetable: timetable, - patch: patch, - ), - ); - } - - @override - String toDartCode() { - return "TimetableRemoveDayPatch(loc:${all.map((loc) => loc.toDartCode()).toList()})"; - } - - @override - String l10n() { - return i18n.patch.removeDay(all.map((loc) => loc.l10n()).join(", ")); - } -} - -@JsonSerializable() -class TimetableMoveDayPatch extends TimetablePatch { - @override - TimetablePatchType get type => TimetablePatchType.moveDay; - @JsonKey() - final TimetableDayLoc source; - @JsonKey() - final TimetableDayLoc target; - - const TimetableMoveDayPatch({ - required this.source, - required this.target, - }); - - @override - void _serialize(ByteWriter writer) { - source.serialize(writer); - target.serialize(writer); - } - - static TimetableMoveDayPatch deserialize(ByteReader reader) { - final source = TimetableDayLoc.deserialize(reader); - final target = TimetableDayLoc.deserialize(reader); - return TimetableMoveDayPatch(source: source, target: target); - } - - factory TimetableMoveDayPatch.fromJson(Map json) => _$TimetableMoveDayPatchFromJson(json); - - @override - Map toJson() => _$TimetableMoveDayPatchToJson(this)..["type"] = _$TimetablePatchTypeEnumMap[type]; - - static Future onCreate( - BuildContext context, - SitTimetable timetable, [ - TimetableMoveDayPatch? patch, - ]) async { - return await context.showSheet( - (ctx) => TimetableMoveDayPatchSheet( - timetable: timetable, - patch: patch, - ), - ); - } - - @override - String toDartCode() { - return "TimetableMoveDayPatch(source:${source.toDartCode()},target:${target.toDartCode()},)"; - } - - @override - String l10n() { - return i18n.patch.moveDay(source.l10n(), target.l10n()); - } -} - -@JsonSerializable() -class TimetableCopyDayPatch extends TimetablePatch { - @override - TimetablePatchType get type => TimetablePatchType.copyDay; - @JsonKey() - final TimetableDayLoc source; - @JsonKey() - final TimetableDayLoc target; - - const TimetableCopyDayPatch({ - required this.source, - required this.target, - }); - - @override - void _serialize(ByteWriter writer) { - source.serialize(writer); - target.serialize(writer); - } - - static TimetableCopyDayPatch deserialize(ByteReader reader) { - final source = TimetableDayLoc.deserialize(reader); - final target = TimetableDayLoc.deserialize(reader); - return TimetableCopyDayPatch(source: source, target: target); - } - - factory TimetableCopyDayPatch.fromJson(Map json) => _$TimetableCopyDayPatchFromJson(json); - - @override - Map toJson() => _$TimetableCopyDayPatchToJson(this)..["type"] = _$TimetablePatchTypeEnumMap[type]; - - static Future onCreate( - BuildContext context, - SitTimetable timetable, [ - TimetableCopyDayPatch? patch, - ]) async { - return await context.showSheet( - (ctx) => TimetableCopyDayPatchSheet( - timetable: timetable, - patch: patch, - ), - ); - } - - @override - String l10n() { - return i18n.patch.copyDay(source.l10n(), target.l10n()); - } - - @override - String toDartCode() { - return "TimetableCopyDayPatch(source:${source.toDartCode()},target:${target.toDartCode()})"; - } -} - -@JsonSerializable() -class TimetableSwapDaysPatch extends TimetablePatch { - @override - TimetablePatchType get type => TimetablePatchType.swapDays; - @JsonKey() - final TimetableDayLoc a; - @JsonKey() - final TimetableDayLoc b; - - const TimetableSwapDaysPatch({ - required this.a, - required this.b, - }); - - static TimetableSwapDaysPatch deserialize(ByteReader reader) { - final a = TimetableDayLoc.deserialize(reader); - final b = TimetableDayLoc.deserialize(reader); - return TimetableSwapDaysPatch(a: a, b: b); - } - - factory TimetableSwapDaysPatch.fromJson(Map json) => _$TimetableSwapDaysPatchFromJson(json); - - @override - void _serialize(ByteWriter writer) { - a.serialize(writer); - b.serialize(writer); - } - - @override - Map toJson() => _$TimetableSwapDaysPatchToJson(this)..["type"] = _$TimetablePatchTypeEnumMap[type]; - - static Future onCreate( - BuildContext context, - SitTimetable timetable, [ - TimetableSwapDaysPatch? patch, - ]) async { - return await context.showSheet( - (ctx) => TimetableSwapDaysPatchSheet( - timetable: timetable, - patch: patch, - ), - ); - } - - @override - String l10n() { - return i18n.patch.swapDays(a.l10n(), b.l10n()); - } - - @override - String toDartCode() { - return "TimetableSwapDayPatch(a:${a.toDartCode()},b:${b.toDartCode()})"; - } -} -// factory .fromJson(Map json) => _$FromJson(json); -// -// Map toJson() => _$ToJson(this); diff --git a/lib/timetable/entity/patch.g.dart b/lib/timetable/entity/patch.g.dart deleted file mode 100644 index 97f473ecd..000000000 --- a/lib/timetable/entity/patch.g.dart +++ /dev/null @@ -1,136 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'patch.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$TimetablePatchSetCWProxy { - TimetablePatchSet name(String name); - - TimetablePatchSet patches(List patches); - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. You can also use `TimetablePatchSet(...).copyWith.fieldName(...)` to override fields one at a time with nullification support. - /// - /// Usage - /// ```dart - /// TimetablePatchSet(...).copyWith(id: 12, name: "My name") - /// ```` - TimetablePatchSet call({ - String? name, - List? patches, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfTimetablePatchSet.copyWith(...)`. Additionally contains functions for specific fields e.g. `instanceOfTimetablePatchSet.copyWith.fieldName(...)` -class _$TimetablePatchSetCWProxyImpl implements _$TimetablePatchSetCWProxy { - const _$TimetablePatchSetCWProxyImpl(this._value); - - final TimetablePatchSet _value; - - @override - TimetablePatchSet name(String name) => this(name: name); - - @override - TimetablePatchSet patches(List patches) => this(patches: patches); - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. You can also use `TimetablePatchSet(...).copyWith.fieldName(...)` to override fields one at a time with nullification support. - /// - /// Usage - /// ```dart - /// TimetablePatchSet(...).copyWith(id: 12, name: "My name") - /// ```` - TimetablePatchSet call({ - Object? name = const $CopyWithPlaceholder(), - Object? patches = const $CopyWithPlaceholder(), - }) { - return TimetablePatchSet( - name: name == const $CopyWithPlaceholder() || name == null - ? _value.name - // ignore: cast_nullable_to_non_nullable - : name as String, - patches: patches == const $CopyWithPlaceholder() || patches == null - ? _value.patches - // ignore: cast_nullable_to_non_nullable - : patches as List, - ); - } -} - -extension $TimetablePatchSetCopyWith on TimetablePatchSet { - /// Returns a callable class that can be used as follows: `instanceOfTimetablePatchSet.copyWith(...)` or like so:`instanceOfTimetablePatchSet.copyWith.fieldName(...)`. - // ignore: library_private_types_in_public_api - _$TimetablePatchSetCWProxy get copyWith => _$TimetablePatchSetCWProxyImpl(this); -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -TimetablePatchSet _$TimetablePatchSetFromJson(Map json) => TimetablePatchSet( - name: json['name'] as String, - patches: - (json['patches'] as List).map((e) => TimetablePatch.fromJson(e as Map)).toList(), - ); - -Map _$TimetablePatchSetToJson(TimetablePatchSet instance) => { - 'name': instance.name, - 'patches': instance.patches, - }; - -TimetableUnknownPatch _$TimetableUnknownPatchFromJson(Map json) => TimetableUnknownPatch( - legacy: json['legacy'] as Map?, - ); - -Map _$TimetableUnknownPatchToJson(TimetableUnknownPatch instance) => { - 'legacy': instance.legacy, - }; - -TimetableRemoveDayPatch _$TimetableRemoveDayPatchFromJson(Map json) => TimetableRemoveDayPatch( - all: (json['all'] as List).map((e) => TimetableDayLoc.fromJson(e as Map)).toList(), - ); - -Map _$TimetableRemoveDayPatchToJson(TimetableRemoveDayPatch instance) => { - 'all': instance.all, - }; - -TimetableMoveDayPatch _$TimetableMoveDayPatchFromJson(Map json) => TimetableMoveDayPatch( - source: TimetableDayLoc.fromJson(json['source'] as Map), - target: TimetableDayLoc.fromJson(json['target'] as Map), - ); - -Map _$TimetableMoveDayPatchToJson(TimetableMoveDayPatch instance) => { - 'source': instance.source, - 'target': instance.target, - }; - -TimetableCopyDayPatch _$TimetableCopyDayPatchFromJson(Map json) => TimetableCopyDayPatch( - source: TimetableDayLoc.fromJson(json['source'] as Map), - target: TimetableDayLoc.fromJson(json['target'] as Map), - ); - -Map _$TimetableCopyDayPatchToJson(TimetableCopyDayPatch instance) => { - 'source': instance.source, - 'target': instance.target, - }; - -TimetableSwapDaysPatch _$TimetableSwapDaysPatchFromJson(Map json) => TimetableSwapDaysPatch( - a: TimetableDayLoc.fromJson(json['a'] as Map), - b: TimetableDayLoc.fromJson(json['b'] as Map), - ); - -Map _$TimetableSwapDaysPatchToJson(TimetableSwapDaysPatch instance) => { - 'a': instance.a, - 'b': instance.b, - }; - -const _$TimetablePatchTypeEnumMap = { - TimetablePatchType.unknown: 'unknown', - TimetablePatchType.moveDay: 'moveDay', - TimetablePatchType.removeDay: 'removeDay', - TimetablePatchType.copyDay: 'copyDay', - TimetablePatchType.swapDays: 'swapDays', -}; diff --git a/lib/timetable/entity/platte.dart b/lib/timetable/entity/platte.dart deleted file mode 100644 index 536f6ad9a..000000000 --- a/lib/timetable/entity/platte.dart +++ /dev/null @@ -1,193 +0,0 @@ -import 'dart:typed_data'; - -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/utils/byte_io/byte_io.dart'; - -import 'timetable.dart'; - -part 'platte.g.dart'; - -int _colorToJson(Color color) => color.value; - -Color _colorFromJson(int value) => Color(value); - -typedef Color2Mode = ({Color light, Color dark}); - -Color2Mode _color2ModeFromJson(Map json) { - return ( - light: _colorFromJson(json["light"]), - dark: _colorFromJson(json["dark"]), - ); -} - -Map _color2ModeToJson(Color2Mode colors) { - return { - "light": _colorToJson(colors.light), - "dark": _colorToJson(colors.dark), - }; -} - -List _colorsFromJson(List json) { - return json.map((entry) => _color2ModeFromJson(entry)).toList(); -} - -List _colorsToJson(List colors) { - return colors.map((entry) => _color2ModeToJson(entry)).toList(); -} - -DateTime _kLastModified() => DateTime.now(); - -@JsonSerializable() -@CopyWith() -class TimetablePalette { - static const version = 1; - @JsonKey() - final String name; - @JsonKey() - final String author; - @JsonKey(fromJson: _colorsFromJson, toJson: _colorsToJson) - final List colors; - @JsonKey(defaultValue: _kLastModified) - final DateTime lastModified; - - static const defaultColor = (light: Colors.white, dark: Colors.black); - - const TimetablePalette({ - required this.name, - required this.author, - required this.colors, - required this.lastModified, - }); - - factory TimetablePalette.fromJson(Map json) => _$TimetablePaletteFromJson(json); - - Map toJson() => _$TimetablePaletteToJson(this); - - Uint8List encodeByteList() => _encodeByteList(this); - - static Uint8List _encodeByteList(TimetablePalette obj) { - final writer = ByteWriter(256); - writer.uint8(version); - writer.strUtf8(obj.name, ByteLength.bit8); - writer.strUtf8(obj.author, ByteLength.bit8); - writer.uint16(obj.colors.length); - for (var color in obj.colors) { - writer.uint32(color.light.value); - writer.uint32(color.dark.value); - } - - return writer.build(); - } - - static TimetablePalette decodeFromByteList(Uint8List bytes) { - final reader = ByteReader(bytes); - // ignore: unused_local_variable - final revision = reader.uint8(); - final name = reader.strUtf8(ByteLength.bit8); - final author = reader.strUtf8(ByteLength.bit8); - - final colors = List.generate(reader.uint16(), (index) { - Color light = Color(reader.uint32()); - Color dark = Color(reader.uint32()); - return (light: light, dark: dark); - }); - - return TimetablePalette( - name: name, - author: author, - colors: colors, - lastModified: DateTime.now(), - ); - } -} - -extension TimetablePaletteX on TimetablePalette { - TimetablePalette markModified() { - return copyWith( - lastModified: DateTime.now(), - ); - } -} - -class BuiltinTimetablePalette implements TimetablePalette { - final int id; - final String key; - final String? nameOverride; - final String? authorOverride; - - @override - String get name => nameOverride ?? "timetable.p13n.palette.builtin.$key.name".tr(); - - @override - String get author => authorOverride ?? "timetable.p13n.palette.builtin.$key.author".tr(); - @override - final List colors; - - @override - DateTime get lastModified => DateTime.now(); - - const BuiltinTimetablePalette({ - required this.key, - required this.id, - required this.colors, - String? name, - String? author, - }) : nameOverride = name, - authorOverride = author; - - @override - Map toJson() => { - "id": id, - "author": author, - "colors": _colorsToJson(colors), - }; - - @override - Uint8List encodeByteList() => TimetablePalette._encodeByteList(this); -} - -abstract mixin class SitTimetablePaletteResolver { - SitTimetable get type; - - factory SitTimetablePaletteResolver(SitTimetable type) { - return _SitTimetablePaletteResolverImpl(type: type); - } - - final _fixedCourseCode2Color = >{}; - - Color2Mode resolveColor(TimetablePalette palette, SitCourse course) { - assert(palette.colors.isNotEmpty, "Colors can't be empty"); - if (palette.colors.isEmpty) return TimetablePalette.defaultColor; - assert(type.courses.containsValue(course), "Course $course not found in this timetable"); - - final fixedCourseCode2Color = _fixedCourseCode2Color[palette] ?? _cacheFixedCourseCode2Color(palette); - return fixedCourseCode2Color[course.courseCode] ?? - palette.colors[course.courseCode.hashCode.abs() % palette.colors.length]; - } - - Map _cacheFixedCourseCode2Color(TimetablePalette palette) { - final queue = List.of(palette.colors); - final fixedCourseCode2Color = {}; - for (final course in type.courses.values) { - if (queue.isEmpty) break; - final index = course.courseCode.hashCode.abs() % queue.length; - // allocate a color for this course code - fixedCourseCode2Color[course.courseCode] = queue[index]; - // remove it in the next loop - queue.removeAt(index); - } - return fixedCourseCode2Color; - } -} - -class _SitTimetablePaletteResolverImpl with SitTimetablePaletteResolver { - @override - final SitTimetable type; - - _SitTimetablePaletteResolverImpl({ - required this.type, - }); -} diff --git a/lib/timetable/entity/platte.g.dart b/lib/timetable/entity/platte.g.dart deleted file mode 100644 index 2f518e6d5..000000000 --- a/lib/timetable/entity/platte.g.dart +++ /dev/null @@ -1,107 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'platte.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$TimetablePaletteCWProxy { - TimetablePalette name(String name); - - TimetablePalette author(String author); - - TimetablePalette colors(List<({Color dark, Color light})> colors); - - TimetablePalette lastModified(DateTime lastModified); - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. You can also use `TimetablePalette(...).copyWith.fieldName(...)` to override fields one at a time with nullification support. - /// - /// Usage - /// ```dart - /// TimetablePalette(...).copyWith(id: 12, name: "My name") - /// ```` - TimetablePalette call({ - String? name, - String? author, - List<({Color dark, Color light})>? colors, - DateTime? lastModified, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfTimetablePalette.copyWith(...)`. Additionally contains functions for specific fields e.g. `instanceOfTimetablePalette.copyWith.fieldName(...)` -class _$TimetablePaletteCWProxyImpl implements _$TimetablePaletteCWProxy { - const _$TimetablePaletteCWProxyImpl(this._value); - - final TimetablePalette _value; - - @override - TimetablePalette name(String name) => this(name: name); - - @override - TimetablePalette author(String author) => this(author: author); - - @override - TimetablePalette colors(List<({Color dark, Color light})> colors) => this(colors: colors); - - @override - TimetablePalette lastModified(DateTime lastModified) => this(lastModified: lastModified); - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. You can also use `TimetablePalette(...).copyWith.fieldName(...)` to override fields one at a time with nullification support. - /// - /// Usage - /// ```dart - /// TimetablePalette(...).copyWith(id: 12, name: "My name") - /// ```` - TimetablePalette call({ - Object? name = const $CopyWithPlaceholder(), - Object? author = const $CopyWithPlaceholder(), - Object? colors = const $CopyWithPlaceholder(), - Object? lastModified = const $CopyWithPlaceholder(), - }) { - return TimetablePalette( - name: name == const $CopyWithPlaceholder() || name == null - ? _value.name - // ignore: cast_nullable_to_non_nullable - : name as String, - author: author == const $CopyWithPlaceholder() || author == null - ? _value.author - // ignore: cast_nullable_to_non_nullable - : author as String, - colors: colors == const $CopyWithPlaceholder() || colors == null - ? _value.colors - // ignore: cast_nullable_to_non_nullable - : colors as List<({Color dark, Color light})>, - lastModified: lastModified == const $CopyWithPlaceholder() || lastModified == null - ? _value.lastModified - // ignore: cast_nullable_to_non_nullable - : lastModified as DateTime, - ); - } -} - -extension $TimetablePaletteCopyWith on TimetablePalette { - /// Returns a callable class that can be used as follows: `instanceOfTimetablePalette.copyWith(...)` or like so:`instanceOfTimetablePalette.copyWith.fieldName(...)`. - // ignore: library_private_types_in_public_api - _$TimetablePaletteCWProxy get copyWith => _$TimetablePaletteCWProxyImpl(this); -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -TimetablePalette _$TimetablePaletteFromJson(Map json) => TimetablePalette( - name: json['name'] as String, - author: json['author'] as String, - colors: _colorsFromJson(json['colors'] as List), - lastModified: json['lastModified'] == null ? _kLastModified() : DateTime.parse(json['lastModified'] as String), - ); - -Map _$TimetablePaletteToJson(TimetablePalette instance) => { - 'name': instance.name, - 'author': instance.author, - 'colors': _colorsToJson(instance.colors), - 'lastModified': instance.lastModified.toIso8601String(), - }; diff --git a/lib/timetable/entity/pos.dart b/lib/timetable/entity/pos.dart deleted file mode 100644 index 135cb5ca3..000000000 --- a/lib/timetable/entity/pos.dart +++ /dev/null @@ -1,112 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/utils/byte_io/byte_io.dart'; - -import 'timetable.dart'; -import '../i18n.dart'; - -part "pos.g.dart"; - -@JsonSerializable() -@CopyWith(skipFields: true) -class TimetablePos { - /// starts with 0 - final int weekIndex; - - /// starts with 0 - final Weekday weekday; - - const TimetablePos({ - required this.weekIndex, - required this.weekday, - }); - - static const initial = TimetablePos(weekIndex: 0, weekday: Weekday.monday); - - static TimetablePos locate( - DateTime current, { - required DateTime relativeTo, - TimetablePos? fallback, - }) { - // calculate how many days have passed. - int totalDays = current.clearTime().difference(relativeTo.clearTime()).inDays; - - int week = totalDays ~/ 7 + 1; - int day = totalDays % 7 + 1; - if (totalDays >= 0 && 1 <= week && week <= 20 && 1 <= day && day <= 7) { - return TimetablePos(weekIndex: week - 1, weekday: Weekday.fromIndex(day - 1)); - } else { - // if out of range, fallback will be return. - return fallback ?? initial; - } - } - - void serialize(ByteWriter writer) { - writer.uint8(weekIndex); - writer.uint8(weekday.index); - } - - static TimetablePos deserialize(ByteReader reader) { - final weekIndex = reader.uint8(); - final weekdayIndex = reader.uint8(); - return TimetablePos(weekIndex: weekIndex, weekday: Weekday.fromIndex(weekdayIndex)); - } - - String l10n() { - return "${i18n.weekOrderedName(number: weekIndex + 1)} ${weekday.l10n()}"; - } - - String toDartCode() { - return "TimetablePos(weekIndex:$weekIndex,weekday:$weekday)"; - } - - factory TimetablePos.fromJson(Map json) => _$TimetablePosFromJson(json); - - Map toJson() => _$TimetablePosToJson(this); - - @override - bool operator ==(Object other) { - return other is TimetablePos && - runtimeType == other.runtimeType && - weekIndex == other.weekIndex && - weekday == other.weekday; - } - - @override - int get hashCode => Object.hash(weekIndex, weekday); - - @override - String toString() { - return (week: weekIndex, day: weekday).toString(); - } -} - -extension _DateTimeX on DateTime { - DateTime clearTime([int hour = 0, int minute = 0, int second = 0]) { - return DateTime(year, month, day, hour, minute, second); - } -} - -extension TimetableX on SitTimetable { - TimetablePos locate(DateTime current) { - return TimetablePos.locate(current, relativeTo: startDate); - } -} - -// TODO: finish timetable lesson pos -class TimetableLessonPos { - final String courseCode; - - /// starts with 0 - final int weekIndex; - - /// starts with 0 - final Weekday weekday; - - const TimetableLessonPos({ - required this.courseCode, - required this.weekIndex, - required this.weekday, - }); -} diff --git a/lib/timetable/entity/pos.g.dart b/lib/timetable/entity/pos.g.dart deleted file mode 100644 index a3e52cd3f..000000000 --- a/lib/timetable/entity/pos.g.dart +++ /dev/null @@ -1,81 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'pos.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$TimetablePosCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// TimetablePos(...).copyWith(id: 12, name: "My name") - /// ```` - TimetablePos call({ - int? weekIndex, - Weekday? weekday, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfTimetablePos.copyWith(...)`. -class _$TimetablePosCWProxyImpl implements _$TimetablePosCWProxy { - const _$TimetablePosCWProxyImpl(this._value); - - final TimetablePos _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// TimetablePos(...).copyWith(id: 12, name: "My name") - /// ```` - TimetablePos call({ - Object? weekIndex = const $CopyWithPlaceholder(), - Object? weekday = const $CopyWithPlaceholder(), - }) { - return TimetablePos( - weekIndex: weekIndex == const $CopyWithPlaceholder() || weekIndex == null - ? _value.weekIndex - // ignore: cast_nullable_to_non_nullable - : weekIndex as int, - weekday: weekday == const $CopyWithPlaceholder() || weekday == null - ? _value.weekday - // ignore: cast_nullable_to_non_nullable - : weekday as Weekday, - ); - } -} - -extension $TimetablePosCopyWith on TimetablePos { - /// Returns a callable class that can be used as follows: `instanceOfTimetablePos.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$TimetablePosCWProxy get copyWith => _$TimetablePosCWProxyImpl(this); -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -TimetablePos _$TimetablePosFromJson(Map json) => TimetablePos( - weekIndex: (json['weekIndex'] as num).toInt(), - weekday: $enumDecode(_$WeekdayEnumMap, json['weekday']), - ); - -Map _$TimetablePosToJson(TimetablePos instance) => { - 'weekIndex': instance.weekIndex, - 'weekday': instance.weekday, - }; - -const _$WeekdayEnumMap = { - Weekday.monday: 'monday', - Weekday.tuesday: 'tuesday', - Weekday.wednesday: 'wednesday', - Weekday.thursday: 'thursday', - Weekday.friday: 'friday', - Weekday.saturday: 'saturday', - Weekday.sunday: 'sunday', -}; diff --git a/lib/timetable/entity/timetable.dart b/lib/timetable/entity/timetable.dart deleted file mode 100644 index d3f271b81..000000000 --- a/lib/timetable/entity/timetable.dart +++ /dev/null @@ -1,604 +0,0 @@ -import 'dart:typed_data'; - -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:json_annotation/json_annotation.dart'; -import 'package:meta/meta.dart'; -import 'package:sit/entity/campus.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/entity/timetable.dart'; -import 'package:sit/utils/byte_io/byte_io.dart'; -import 'package:statistics/statistics.dart'; - -import 'patch.dart'; - -part 'timetable.g.dart'; - -DateTime _kLastModified() => DateTime.now(); - -List _patchesFromJson(List? list) { - return list - ?.map((e) => TimetablePatchEntry.fromJson(e as Map)) - .where((patch) => patch is TimetablePatch ? patch.type != TimetablePatchType.unknown : true) - .toList() ?? - const []; -} - -@JsonSerializable() -@CopyWith(skipFields: true) -@immutable -class SitTimetable { - @JsonKey() - final String name; - @JsonKey() - final DateTime startDate; - @JsonKey() - final int schoolYear; - @JsonKey() - final Semester semester; - @JsonKey() - final int lastCourseKey; - @JsonKey() - final String signature; - - /// The index is the CourseKey. - @JsonKey() - final Map courses; - - @JsonKey(defaultValue: _kLastModified) - final DateTime lastModified; - - @JsonKey() - final int version; - - /// Timetable patches will be processed in list order. - @JsonKey(fromJson: _patchesFromJson) - final List patches; - - const SitTimetable({ - required this.courses, - required this.lastCourseKey, - required this.name, - required this.startDate, - required this.schoolYear, - required this.semester, - required this.lastModified, - this.patches = const [], - this.signature = "", - this.version = 1, - }); - - SitTimetable markModified() { - return copyWith( - lastModified: DateTime.now(), - ); - } - - @override - String toString() { - return { - "name": name, - "startDate": startDate, - "schoolYear": schoolYear, - "semester": semester, - "lastModified": lastModified, - "signature": signature, - "patches": patches, - }.toString(); - } - - String toDartCode() { - return "SitTimetable(" - 'name:"$name",' - 'signature:"$signature",' - 'startDate:DateTime.parse("$startDate"),' - 'lastModified:DateTime.now(),' - "courses:${courses.map((key, value) => MapEntry('"$key"', value.toDartCode()))}," - "schoolYear:$schoolYear," - "semester:$semester," - "lastCourseKey:$lastCourseKey," - "version:$version," - "patches:${patches.map((p) => p.toDartCode()).toList()}," - ")"; - } - - @override - bool operator ==(Object other) { - return other is SitTimetable && - runtimeType == other.runtimeType && - lastCourseKey == other.lastCourseKey && - version == other.version && - schoolYear == other.schoolYear && - semester == other.semester && - name == other.name && - signature == other.signature && - startDate == other.startDate && - lastModified == other.lastModified && - courses.equalsKeysValues(courses.keys, other.courses) && - patches.equalsElements(other.patches); - } - - @override - int get hashCode => Object.hash( - name, - signature, - lastCourseKey, - schoolYear, - semester, - startDate, - lastModified, - Object.hashAllUnordered(courses.entries.map((e) => (e.key, e.value))), - Object.hashAll(patches), - version, - ); - - factory SitTimetable.fromJson(Map json) => _$SitTimetableFromJson(json); - - Map toJson() => _$SitTimetableToJson(this); - - void serialize(ByteWriter writer) { - writer.uint8(version); - writer.strUtf8(name, ByteLength.bit8); - writer.strUtf8(signature, ByteLength.bit8); - writer.uint8(schoolYear); - writer.uint8(semester.index); - writer.uint8(lastCourseKey); - writer.datePacked(startDate, 2000); - writer.uint8(courses.length); - for (final course in courses.values) { - course.serialize(writer); - } - writer.uint8(patches.length); - for (final patch in patches) { - TimetablePatchEntry.serialize(patch, writer); - } - } - - static SitTimetable deserialize(ByteReader reader) { - // ignore: unused_local_variable - final revision = reader.uint8(); - return SitTimetable( - name: reader.strUtf8(ByteLength.bit8), - signature: reader.strUtf8(ByteLength.bit8), - schoolYear: reader.uint8(), - semester: Semester.values[reader.uint8()], - lastCourseKey: reader.uint8(), - startDate: reader.datePacked(2000), - courses: Map.fromEntries(List.generate(reader.uint8(), (index) { - final course = SitCourse.deserialize(reader); - return MapEntry("${course.courseKey}", course); - })), - patches: List.generate(reader.uint8(), (index) { - return TimetablePatchEntry.deserialize(reader); - }), - lastModified: DateTime.now(), - ); - } - - static SitTimetable decodeByteList(Uint8List bytes) { - final reader = ByteReader(bytes); - return deserialize(reader); - } - - static Uint8List encodeByteList(SitTimetable entry) { - final writer = ByteWriter(4096); - entry.serialize(writer); - return writer.build(); - } -} - -@JsonSerializable() -@CopyWith(skipFields: true) -@immutable -class SitCourse { - @JsonKey() - final int courseKey; - @JsonKey() - final String courseName; - @JsonKey() - final String courseCode; - @JsonKey() - final String classCode; - @JsonKey(unknownEnumValue: Campus.fengxian) - final Campus campus; - @JsonKey() - final String place; - - @JsonKey() - final TimetableWeekIndices weekIndices; - - /// e.g.: (start:1, end: 3) means `2nd slot to 4th slot`. - /// Starts with 0 - @JsonKey() - final ({int start, int end}) timeslots; - @JsonKey() - final double courseCredit; - - /// e.g.: `0` means `Monday` - /// Starts with 0 - @JsonKey() - final int dayIndex; - @JsonKey() - final List teachers; - - @JsonKey() - final bool hidden; - - const SitCourse({ - required this.courseKey, - required this.courseName, - required this.courseCode, - required this.classCode, - required this.campus, - required this.place, - required this.weekIndices, - required this.timeslots, - required this.courseCredit, - required this.dayIndex, - required this.teachers, - this.hidden = false, - }); - - @override - String toString() => "#$courseKey($courseName: $place)"; - - factory SitCourse.fromJson(Map json) => _$SitCourseFromJson(json); - - Map toJson() => _$SitCourseToJson(this); - - String toDartCode() { - return "SitCourse(" - "courseKey:$courseKey," - 'courseName:"$courseName",' - 'courseCode:"$courseCode",' - 'classCode:"$classCode",' - "campus:$campus," - 'place:"$place",' - "weekIndices:${weekIndices.toDartCode()}," - "timeslots:$timeslots," - "courseCredit:$courseCredit," - "dayIndex:$dayIndex," - "teachers:${teachers.map((t) => '"$t"').toList(growable: false)}," - "hidden:$hidden," - ")"; - } - - @override - bool operator ==(Object other) { - return other is SitCourse && - runtimeType == other.runtimeType && - courseKey == other.courseKey && - courseName == other.courseName && - courseCode == other.courseCode && - campus == other.campus && - place == other.place && - weekIndices == other.weekIndices && - timeslots == other.timeslots && - courseCredit == other.courseCredit && - dayIndex == other.dayIndex && - teachers.equalsElements(other.teachers) && - hidden == other.hidden; - } - - @override - int get hashCode => Object.hash( - courseKey, - courseName, - courseCode, - campus, - place, - weekIndices, - timeslots, - courseCredit, - dayIndex, - Object.hashAll(teachers), - hidden, - ); - - void serialize(ByteWriter writer) { - writer.uint8(courseKey); - writer.strUtf8(courseName, ByteLength.bit8); - writer.strUtf8(courseCode, ByteLength.bit8); - writer.strUtf8(classCode, ByteLength.bit8); - writer.strUtf8(place, ByteLength.bit8); - writer.uint8(campus.index); - weekIndices.serialize(writer); - writer.uint8(timeslots.packedInt8()); - writer.uint8((courseCredit * 10).toInt()); - writer.uint8(dayIndex); - writer.uint8(teachers.length); - for (final teacher in teachers) { - writer.strUtf8(teacher, ByteLength.bit8); - } - writer.b(hidden); - } - - static SitCourse deserialize(ByteReader reader) { - return SitCourse( - courseKey: reader.uint8(), - courseName: reader.strUtf8(ByteLength.bit8), - courseCode: reader.strUtf8(ByteLength.bit8), - classCode: reader.strUtf8(ByteLength.bit8), - place: reader.strUtf8(ByteLength.bit8), - campus: Campus.values[reader.uint8()], - weekIndices: TimetableWeekIndices.deserialize(reader), - timeslots: _unpackedInt8(reader.uint8()), - courseCredit: reader.uint8() * 0.1, - dayIndex: reader.uint8(), - teachers: List.generate(reader.uint8(), (index) { - return reader.strUtf8(ByteLength.bit8); - }), - hidden: reader.b(), - ); - } -} - -extension SitCourseEx on SitCourse { - List get buildingTimetable => getTeachingBuildingTimetable(campus, place); - - /// Based on [SitCourse.timeslots], compose a full-length class time. - /// Starts with the first part starts. - /// Ends with the last part ends. - ClassTime calcBeginEndTimePoint() { - final timetable = buildingTimetable; - final (:start, :end) = timeslots; - return (begin: timetable[start].begin, end: timetable[end].end); - } - - List calcBeginEndTimePointForEachLesson() { - final timetable = buildingTimetable; - final (:start, :end) = timeslots; - final result = []; - for (var timeslot = start; timeslot <= end; timeslot++) { - result.add(timetable[timeslot]); - } - return result; - } - - ClassTime calcBeginEndTimePointOfLesson(int timeslot) { - final timetable = buildingTimetable; - return timetable[timeslot]; - } -} - -@JsonEnum() -enum TimetableWeekIndexType { - all, - odd, - even; - - String l10nOf(String start, String end) => "timetable.weekIndexType.of.$name".tr(namedArgs: { - "start": start, - "end": end, - }); - - String l10n() => "timetable.weekIndexType.$name".tr(); - - static String l10nOfSingle(String index) => "timetable.weekIndexType.of.single".tr(args: [index]); -} - -@JsonSerializable() -@CopyWith(skipFields: true) -@immutable -class TimetableWeekIndex { - @JsonKey() - final TimetableWeekIndexType type; - - /// Both [start] and [end] are inclusive. - /// [start] will equal to [end] if it's not ranged. - @JsonKey() - final ({int start, int end}) range; - - const TimetableWeekIndex({ - required this.type, - required this.range, - }); - - const TimetableWeekIndex.all( - this.range, - ) : type = TimetableWeekIndexType.all; - - /// [start] will equal to [end]. - const TimetableWeekIndex.single( - int weekIndex, - ) : type = TimetableWeekIndexType.all, - range = (start: weekIndex, end: weekIndex); - - const TimetableWeekIndex.odd( - this.range, - ) : type = TimetableWeekIndexType.odd; - - const TimetableWeekIndex.even( - this.range, - ) : type = TimetableWeekIndexType.even; - - /// week number start by - bool match(int weekIndex) { - return range.start <= weekIndex && weekIndex <= range.end; - } - - bool get isSingle => range.start == range.end; - - /// convert the index to number. - /// e.g.: (start: 0, end: 8) => "1–9" - String l10n() { - if (isSingle) { - return TimetableWeekIndexType.l10nOfSingle("${range.start + 1}"); - } else { - return type.l10nOf("${range.start + 1}", "${range.end + 1}"); - } - } - - void serialize(ByteWriter writer) { - writer.uint8(type.index); - writer.uint8(range.packedInt8()); - } - - static TimetableWeekIndex deserialize(ByteReader reader) { - return TimetableWeekIndex( - type: TimetableWeekIndexType.values[reader.uint8()], - range: _unpackedInt8(reader.uint8()), - ); - } - - String toDartCode() { - return "TimetableWeekIndex(" - "type:$type," - "range:$range," - ")"; - } - - @override - bool operator ==(Object other) { - return other is TimetableWeekIndex && - runtimeType == other.runtimeType && - type == other.type && - range == other.range; - } - - @override - int get hashCode => Object.hash(type, range); - - factory TimetableWeekIndex.fromJson(Map json) => _$TimetableWeekIndexFromJson(json); - - Map toJson() => _$TimetableWeekIndexToJson(this); -} - -@JsonSerializable() -@immutable -class TimetableWeekIndices { - @JsonKey() - final List indices; - - const TimetableWeekIndices(this.indices); - - bool match(int weekIndex) { - for (final index in indices) { - if (index.match(weekIndex)) return true; - } - return false; - } - - /// Then the [indices] could be ["a1-5", "s14", "o8-10"] - /// The return value should be: - /// - `1-5 周, 14 周, 8-10 单周` in Chinese. - /// - `1-5 wk, 14 wk, 8-10 odd wk` - List l10n() { - return indices.map((index) => index.l10n()).toList(); - } - - /// The result, week index, which starts with 0. - /// e.g.: - /// ```dart - /// TimetableWeekIndices([ - /// TimetableWeekIndex.all( - /// (start: 0, end: 4), - /// ), - /// TimetableWeekIndex.single( - /// 13, - /// ), - /// TimetableWeekIndex.odd( - /// (start: 7, end: 9), - /// ), - /// ]) - /// ``` - /// return value is {0,1,2,3,4,13,7,9}. - Set getWeekIndices() { - final res = {}; - for (final TimetableWeekIndex(:type, :range) in indices) { - switch (type) { - case TimetableWeekIndexType.all: - for (var i = range.start; i <= range.end; i++) { - res.add(i); - } - break; - case TimetableWeekIndexType.odd: - for (var i = range.start; i <= range.end; i += 2) { - if ((i + 1).isOdd) res.add(i); - } - break; - case TimetableWeekIndexType.even: - for (var i = range.start; i <= range.end; i++) { - if ((i + 1).isEven) res.add(i); - } - break; - } - } - return res; - } - - @override - bool operator ==(Object other) { - return other is TimetableWeekIndices && runtimeType == other.runtimeType && indices.equalsElements(other.indices); - } - - @override - int get hashCode => Object.hashAll(indices); - - void serialize(ByteWriter writer) { - writer.uint8(indices.length); - for (final index in indices) { - index.serialize(writer); - } - } - - static TimetableWeekIndices deserialize(ByteReader reader) { - return TimetableWeekIndices(List.generate(reader.uint8(), (index) { - return TimetableWeekIndex.deserialize(reader); - })); - } - - factory TimetableWeekIndices.fromJson(Map json) => _$TimetableWeekIndicesFromJson(json); - - Map toJson() => _$TimetableWeekIndicesToJson(this); - - String toDartCode() { - return "TimetableWeekIndices(" - "${indices.map((i) => i.toDartCode()).toList(growable: false)}" - ")"; - } -} - -/// If [range] is "1-8", the output will be `(start:0, end: 7)`. -/// if [number2index] is true, the [range] will be considered as a number range, which starts with 1 instead of 0. -({int start, int end}) rangeFromString( - String range, { - bool number2index = false, -}) { - if (range.contains("-")) { -// in range of time slots - final rangeParts = range.split("-"); - final start = int.parse(rangeParts[0]); - final end = int.parse(rangeParts[1]); - if (number2index) { - return (start: start - 1, end: end - 1); - } else { - return (start: start, end: end); - } - } else { - final single = int.parse(range); - if (number2index) { - return (start: single - 1, end: single - 1); - } else { - return (start: single, end: single); - } - } -} - -String rangeToString(({int start, int end}) range) { - if (range.start == range.end) { - return "${range.start}"; - } else { - return "${range.start}-${range.end}"; - } -} - -extension _RangeX on ({int start, int end}) { - int packedInt8() { - return start << 4 | end; - } -} - -({int start, int end}) _unpackedInt8(int packed) { - return (start: packed >> 4 & 0xF, end: packed & 0xF); -} diff --git a/lib/timetable/entity/timetable.g.dart b/lib/timetable/entity/timetable.g.dart deleted file mode 100644 index 45af0bbcf..000000000 --- a/lib/timetable/entity/timetable.g.dart +++ /dev/null @@ -1,386 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'timetable.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$SitTimetableCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetable(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetable call({ - Map? courses, - int? lastCourseKey, - String? name, - DateTime? startDate, - int? schoolYear, - Semester? semester, - DateTime? lastModified, - List? patches, - String? signature, - int? version, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfSitTimetable.copyWith(...)`. -class _$SitTimetableCWProxyImpl implements _$SitTimetableCWProxy { - const _$SitTimetableCWProxyImpl(this._value); - - final SitTimetable _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetable(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetable call({ - Object? courses = const $CopyWithPlaceholder(), - Object? lastCourseKey = const $CopyWithPlaceholder(), - Object? name = const $CopyWithPlaceholder(), - Object? startDate = const $CopyWithPlaceholder(), - Object? schoolYear = const $CopyWithPlaceholder(), - Object? semester = const $CopyWithPlaceholder(), - Object? lastModified = const $CopyWithPlaceholder(), - Object? patches = const $CopyWithPlaceholder(), - Object? signature = const $CopyWithPlaceholder(), - Object? version = const $CopyWithPlaceholder(), - }) { - return SitTimetable( - courses: courses == const $CopyWithPlaceholder() || courses == null - ? _value.courses - // ignore: cast_nullable_to_non_nullable - : courses as Map, - lastCourseKey: lastCourseKey == const $CopyWithPlaceholder() || lastCourseKey == null - ? _value.lastCourseKey - // ignore: cast_nullable_to_non_nullable - : lastCourseKey as int, - name: name == const $CopyWithPlaceholder() || name == null - ? _value.name - // ignore: cast_nullable_to_non_nullable - : name as String, - startDate: startDate == const $CopyWithPlaceholder() || startDate == null - ? _value.startDate - // ignore: cast_nullable_to_non_nullable - : startDate as DateTime, - schoolYear: schoolYear == const $CopyWithPlaceholder() || schoolYear == null - ? _value.schoolYear - // ignore: cast_nullable_to_non_nullable - : schoolYear as int, - semester: semester == const $CopyWithPlaceholder() || semester == null - ? _value.semester - // ignore: cast_nullable_to_non_nullable - : semester as Semester, - lastModified: lastModified == const $CopyWithPlaceholder() || lastModified == null - ? _value.lastModified - // ignore: cast_nullable_to_non_nullable - : lastModified as DateTime, - patches: patches == const $CopyWithPlaceholder() || patches == null - ? _value.patches - // ignore: cast_nullable_to_non_nullable - : patches as List, - signature: signature == const $CopyWithPlaceholder() || signature == null - ? _value.signature - // ignore: cast_nullable_to_non_nullable - : signature as String, - version: version == const $CopyWithPlaceholder() || version == null - ? _value.version - // ignore: cast_nullable_to_non_nullable - : version as int, - ); - } -} - -extension $SitTimetableCopyWith on SitTimetable { - /// Returns a callable class that can be used as follows: `instanceOfSitTimetable.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$SitTimetableCWProxy get copyWith => _$SitTimetableCWProxyImpl(this); -} - -abstract class _$SitCourseCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitCourse(...).copyWith(id: 12, name: "My name") - /// ```` - SitCourse call({ - int? courseKey, - String? courseName, - String? courseCode, - String? classCode, - Campus? campus, - String? place, - TimetableWeekIndices? weekIndices, - ({int end, int start})? timeslots, - double? courseCredit, - int? dayIndex, - List? teachers, - bool? hidden, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfSitCourse.copyWith(...)`. -class _$SitCourseCWProxyImpl implements _$SitCourseCWProxy { - const _$SitCourseCWProxyImpl(this._value); - - final SitCourse _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitCourse(...).copyWith(id: 12, name: "My name") - /// ```` - SitCourse call({ - Object? courseKey = const $CopyWithPlaceholder(), - Object? courseName = const $CopyWithPlaceholder(), - Object? courseCode = const $CopyWithPlaceholder(), - Object? classCode = const $CopyWithPlaceholder(), - Object? campus = const $CopyWithPlaceholder(), - Object? place = const $CopyWithPlaceholder(), - Object? weekIndices = const $CopyWithPlaceholder(), - Object? timeslots = const $CopyWithPlaceholder(), - Object? courseCredit = const $CopyWithPlaceholder(), - Object? dayIndex = const $CopyWithPlaceholder(), - Object? teachers = const $CopyWithPlaceholder(), - Object? hidden = const $CopyWithPlaceholder(), - }) { - return SitCourse( - courseKey: courseKey == const $CopyWithPlaceholder() || courseKey == null - ? _value.courseKey - // ignore: cast_nullable_to_non_nullable - : courseKey as int, - courseName: courseName == const $CopyWithPlaceholder() || courseName == null - ? _value.courseName - // ignore: cast_nullable_to_non_nullable - : courseName as String, - courseCode: courseCode == const $CopyWithPlaceholder() || courseCode == null - ? _value.courseCode - // ignore: cast_nullable_to_non_nullable - : courseCode as String, - classCode: classCode == const $CopyWithPlaceholder() || classCode == null - ? _value.classCode - // ignore: cast_nullable_to_non_nullable - : classCode as String, - campus: campus == const $CopyWithPlaceholder() || campus == null - ? _value.campus - // ignore: cast_nullable_to_non_nullable - : campus as Campus, - place: place == const $CopyWithPlaceholder() || place == null - ? _value.place - // ignore: cast_nullable_to_non_nullable - : place as String, - weekIndices: weekIndices == const $CopyWithPlaceholder() || weekIndices == null - ? _value.weekIndices - // ignore: cast_nullable_to_non_nullable - : weekIndices as TimetableWeekIndices, - timeslots: timeslots == const $CopyWithPlaceholder() || timeslots == null - ? _value.timeslots - // ignore: cast_nullable_to_non_nullable - : timeslots as ({int end, int start}), - courseCredit: courseCredit == const $CopyWithPlaceholder() || courseCredit == null - ? _value.courseCredit - // ignore: cast_nullable_to_non_nullable - : courseCredit as double, - dayIndex: dayIndex == const $CopyWithPlaceholder() || dayIndex == null - ? _value.dayIndex - // ignore: cast_nullable_to_non_nullable - : dayIndex as int, - teachers: teachers == const $CopyWithPlaceholder() || teachers == null - ? _value.teachers - // ignore: cast_nullable_to_non_nullable - : teachers as List, - hidden: hidden == const $CopyWithPlaceholder() || hidden == null - ? _value.hidden - // ignore: cast_nullable_to_non_nullable - : hidden as bool, - ); - } -} - -extension $SitCourseCopyWith on SitCourse { - /// Returns a callable class that can be used as follows: `instanceOfSitCourse.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$SitCourseCWProxy get copyWith => _$SitCourseCWProxyImpl(this); -} - -abstract class _$TimetableWeekIndexCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// TimetableWeekIndex(...).copyWith(id: 12, name: "My name") - /// ```` - TimetableWeekIndex call({ - TimetableWeekIndexType? type, - ({int end, int start})? range, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfTimetableWeekIndex.copyWith(...)`. -class _$TimetableWeekIndexCWProxyImpl implements _$TimetableWeekIndexCWProxy { - const _$TimetableWeekIndexCWProxyImpl(this._value); - - final TimetableWeekIndex _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// TimetableWeekIndex(...).copyWith(id: 12, name: "My name") - /// ```` - TimetableWeekIndex call({ - Object? type = const $CopyWithPlaceholder(), - Object? range = const $CopyWithPlaceholder(), - }) { - return TimetableWeekIndex( - type: type == const $CopyWithPlaceholder() || type == null - ? _value.type - // ignore: cast_nullable_to_non_nullable - : type as TimetableWeekIndexType, - range: range == const $CopyWithPlaceholder() || range == null - ? _value.range - // ignore: cast_nullable_to_non_nullable - : range as ({int end, int start}), - ); - } -} - -extension $TimetableWeekIndexCopyWith on TimetableWeekIndex { - /// Returns a callable class that can be used as follows: `instanceOfTimetableWeekIndex.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$TimetableWeekIndexCWProxy get copyWith => _$TimetableWeekIndexCWProxyImpl(this); -} - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -SitTimetable _$SitTimetableFromJson(Map json) => SitTimetable( - courses: (json['courses'] as Map).map( - (k, e) => MapEntry(k, SitCourse.fromJson(e as Map)), - ), - lastCourseKey: (json['lastCourseKey'] as num).toInt(), - name: json['name'] as String, - startDate: DateTime.parse(json['startDate'] as String), - schoolYear: (json['schoolYear'] as num).toInt(), - semester: $enumDecode(_$SemesterEnumMap, json['semester']), - lastModified: json['lastModified'] == null ? _kLastModified() : DateTime.parse(json['lastModified'] as String), - patches: json['patches'] == null ? const [] : _patchesFromJson(json['patches'] as List?), - signature: json['signature'] as String? ?? "", - version: (json['version'] as num?)?.toInt() ?? 1, - ); - -Map _$SitTimetableToJson(SitTimetable instance) => { - 'name': instance.name, - 'startDate': instance.startDate.toIso8601String(), - 'schoolYear': instance.schoolYear, - 'semester': _$SemesterEnumMap[instance.semester]!, - 'lastCourseKey': instance.lastCourseKey, - 'signature': instance.signature, - 'courses': instance.courses, - 'lastModified': instance.lastModified.toIso8601String(), - 'version': instance.version, - 'patches': instance.patches, - }; - -const _$SemesterEnumMap = { - Semester.all: 'all', - Semester.term1: 'term1', - Semester.term2: 'term2', -}; - -SitCourse _$SitCourseFromJson(Map json) => SitCourse( - courseKey: (json['courseKey'] as num).toInt(), - courseName: json['courseName'] as String, - courseCode: json['courseCode'] as String, - classCode: json['classCode'] as String, - campus: $enumDecode(_$CampusEnumMap, json['campus'], unknownValue: Campus.fengxian), - place: json['place'] as String, - weekIndices: TimetableWeekIndices.fromJson(json['weekIndices'] as Map), - timeslots: _$recordConvert( - json['timeslots'], - ($jsonValue) => ( - end: ($jsonValue['end'] as num).toInt(), - start: ($jsonValue['start'] as num).toInt(), - ), - ), - courseCredit: (json['courseCredit'] as num).toDouble(), - dayIndex: (json['dayIndex'] as num).toInt(), - teachers: (json['teachers'] as List).map((e) => e as String).toList(), - hidden: json['hidden'] as bool? ?? false, - ); - -Map _$SitCourseToJson(SitCourse instance) => { - 'courseKey': instance.courseKey, - 'courseName': instance.courseName, - 'courseCode': instance.courseCode, - 'classCode': instance.classCode, - 'campus': _$CampusEnumMap[instance.campus]!, - 'place': instance.place, - 'weekIndices': instance.weekIndices, - 'timeslots': { - 'end': instance.timeslots.end, - 'start': instance.timeslots.start, - }, - 'courseCredit': instance.courseCredit, - 'dayIndex': instance.dayIndex, - 'teachers': instance.teachers, - 'hidden': instance.hidden, - }; - -const _$CampusEnumMap = { - Campus.fengxian: 'fengxian', - Campus.xuhui: 'xuhui', -}; - -$Rec _$recordConvert<$Rec>( - Object? value, - $Rec Function(Map) convert, -) => - convert(value as Map); - -TimetableWeekIndex _$TimetableWeekIndexFromJson(Map json) => TimetableWeekIndex( - type: $enumDecode(_$TimetableWeekIndexTypeEnumMap, json['type']), - range: _$recordConvert( - json['range'], - ($jsonValue) => ( - end: ($jsonValue['end'] as num).toInt(), - start: ($jsonValue['start'] as num).toInt(), - ), - ), - ); - -Map _$TimetableWeekIndexToJson(TimetableWeekIndex instance) => { - 'type': _$TimetableWeekIndexTypeEnumMap[instance.type]!, - 'range': { - 'end': instance.range.end, - 'start': instance.range.start, - }, - }; - -const _$TimetableWeekIndexTypeEnumMap = { - TimetableWeekIndexType.all: 'all', - TimetableWeekIndexType.odd: 'odd', - TimetableWeekIndexType.even: 'even', -}; - -TimetableWeekIndices _$TimetableWeekIndicesFromJson(Map json) => TimetableWeekIndices( - (json['indices'] as List).map((e) => TimetableWeekIndex.fromJson(e as Map)).toList(), - ); - -Map _$TimetableWeekIndicesToJson(TimetableWeekIndices instance) => { - 'indices': instance.indices, - }; diff --git a/lib/timetable/entity/timetable_entity.dart b/lib/timetable/entity/timetable_entity.dart deleted file mode 100644 index e042928e0..000000000 --- a/lib/timetable/entity/timetable_entity.dart +++ /dev/null @@ -1,483 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:flutter/foundation.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/entity/timetable.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/timetable/utils.dart'; -import 'package:collection/collection.dart'; -import 'package:sit/utils/date.dart'; -import 'patch.dart'; -import 'platte.dart'; -import 'timetable.dart'; - -part "timetable_entity.g.dart"; - -/// The entity to display. -class SitTimetableEntity with SitTimetablePaletteResolver { - @override - final SitTimetable type; - - /// The Default number of weeks is 20. - final List weeks; - - final _courseCode2CoursesCache = >{}; - - SitTimetableEntity({ - required this.type, - required this.weeks, - }) { - for (final week in weeks) { - week.parent = this; - } - } - - List findAndCacheCoursesByCourseCode(String courseCode) { - final found = _courseCode2CoursesCache[courseCode]; - if (found != null) { - return found; - } else { - final res = []; - for (final course in type.courses.values) { - if (course.courseCode == courseCode) { - res.add(course); - } - } - _courseCode2CoursesCache[courseCode] = res; - return res; - } - } - - String get name => type.name; - - DateTime get startDate => type.startDate; - - int get schoolYear => type.schoolYear; - - Semester get semester => type.semester; - - String get signature => type.signature; - - SitTimetableDay? getDaySinceStart(int days) { - if (days > maxWeekLength * 7) return null; - final weekIndex = days ~/ 7; - if (weekIndex < 0 || weekIndex >= weeks.length) return null; - final week = weeks[weekIndex]; - final dayIndex = days % 7 - 1; - return week.days[dayIndex]; - } - - SitTimetableWeek? getWeekOn(DateTime date) { - if (startDate.isAfter(date)) return null; - final diff = date.difference(startDate); - if (diff.inDays > maxWeekLength * 7) return null; - final weekIndex = diff.inDays ~/ 7; - if (weekIndex < 0 || weekIndex >= weeks.length) return null; - return weeks[weekIndex]; - } - - SitTimetableDay? getDayOn(DateTime date) { - if (startDate.isAfter(date)) return null; - final diff = date.difference(startDate); - if (diff.inDays > maxWeekLength * 7) return null; - final weekIndex = diff.inDays ~/ 7; - if (weekIndex < 0 || weekIndex >= weeks.length) return null; - final week = weeks[weekIndex]; - // don't -1 here, because inDays always omitted fraction. - final dayIndex = diff.inDays % 7; - return week.days[dayIndex]; - } -} - -class SitTimetableWeek { - late final SitTimetableEntity parent; - final int index; - - /// The 7 days in a week - final List days; - - SitTimetableWeek({ - required this.index, - required this.days, - }) { - for (final day in days) { - day.parent = this; - } - } - - factory SitTimetableWeek.$7days(int weekIndex) { - return SitTimetableWeek( - index: weekIndex, - days: List.generate(7, (index) => SitTimetableDay.$11slots(index)), - ); - } - - bool get isFree => days.every((day) => day.isFree); - - @override - String toString() => "$days"; - - SitTimetableDay operator [](Weekday weekday) => days[weekday.index]; - - operator []=(Weekday weekday, SitTimetableDay day) => days[weekday.index] = day; -} - -/// Lessons in the same timeslot. -@CopyWith(skipFields: true) -class SitTimetableLessonSlot { - late final SitTimetableDay parent; - final List lessons; - - SitTimetableLessonSlot({required this.lessons}); - - SitTimetableLessonPart? lessonAt(int index) { - return lessons.elementAtOrNull(index); - } - - @override - String toString() { - return "${_formatDay(parent.date)} $lessons".toString(); - } -} - -String _formatDay(DateTime date) { - return "${date.year}/${date.month}/${date.day}"; -} - -String _formatTime(DateTime date) { - return "${date.year}/${date.month}/${date.day} ${date.hour}:${date.minute}"; -} - -class SitTimetableDay { - late final SitTimetableWeek parent; - final int index; - - /// The Default number of lessons in one day is 11. But it can be extended. - /// For example, - /// A Timeslot could contain one or more lesson. - final List _timeslot2LessonSlot; - - List get timeslot2LessonSlot => UnmodifiableListView(_timeslot2LessonSlot); - - late final Set _associatedCourses = - _timeslot2LessonSlot.map((slot) => slot.lessons).flattened.map((part) => part.course).toSet(); - - Set get associatedCourses => UnmodifiableSetView(_associatedCourses); - - bool _frozen = false; - - bool get frozen => _frozen; - - void freeze() { - _frozen = true; - throw UnimplementedError(); - } - - DateTime get date => reflectWeekDayIndexToDate( - startDate: parent.parent.startDate, - weekIndex: parent.index, - weekday: Weekday.fromIndex(index), - ); - - SitTimetableDay({ - required int index, - required List timeslot2LessonSlot, - }) : this._internal(index, List.of(timeslot2LessonSlot)); - - SitTimetableDay._internal(this.index, this._timeslot2LessonSlot) { - for (final lessonSlot in timeslot2LessonSlot) { - lessonSlot.parent = this; - } - } - - factory SitTimetableDay.$11slots(int dayIndex) { - return SitTimetableDay._internal( - dayIndex, - List.generate(11, (index) => SitTimetableLessonSlot(lessons: [])), - ); - } - - bool get isFree => _timeslot2LessonSlot.every((lessonSlot) => lessonSlot.lessons.isEmpty); - - void add({required SitTimetableLessonPart lesson, required int at}) { - if (frozen) throw throw UnsupportedError("Cannot modify a frozen $SitTimetableDay."); - assert(0 <= at && at < _timeslot2LessonSlot.length); - if (0 <= at && at < _timeslot2LessonSlot.length) { - final lessonSlot = _timeslot2LessonSlot[at]; - lessonSlot.lessons.add(lesson); - lesson.type.parent = this; - } - } - - void clear() { - if (frozen) throw throw UnsupportedError("Cannot modify a frozen $SitTimetableDay."); - for (final lessonSlot in _timeslot2LessonSlot) { - lessonSlot.lessons.clear(); - } - } - - void replaceWith(SitTimetableDay other) { - // timeslot2LessonSlot - setLessonSlots(other.cloneLessonSlots()); - } - - void swap(SitTimetableDay other) { - // timeslot2LessonSlot - final $timeslot2LessonSlot = other.cloneLessonSlots(); - other.setLessonSlots(cloneLessonSlots()); - setLessonSlots($timeslot2LessonSlot); - } - - void setLessonSlots(Iterable v) { - _timeslot2LessonSlot.clear(); - _timeslot2LessonSlot.addAll(v); - - for (final lessonSlot in _timeslot2LessonSlot) { - lessonSlot.parent = this; - for (final part in lessonSlot.lessons) { - part.type.parent = this; - } - } - } - - List cloneLessonSlots() { - final old2newLesson = {}; - final timeslots = List.of( - _timeslot2LessonSlot.map( - (lessonSlot) { - return SitTimetableLessonSlot( - lessons: List.of( - lessonSlot.lessons.map( - (lessonPart) { - final oldLesson = lessonPart.type; - final lesson = old2newLesson[oldLesson] ?? - oldLesson.copyWith( - parts: [], - ); - old2newLesson[oldLesson] ??= lesson; - final part = lessonPart.copyWith( - type: lesson, - ); - return part; - }, - ), - ), - ); - }, - ), - ); - - for (final slot in timeslots) { - for (final lessonPart in slot.lessons) { - lessonPart.type.parts - .addAll(timeslots.map((slot) => slot.lessons).flattened.where((part) => part.type == lessonPart.type)); - } - } - return timeslots; - } - - /// At all lessons [layer] - Iterable browseLessonsAt({required int layer}) sync* { - for (final lessonSlot in _timeslot2LessonSlot) { - if (0 <= layer && layer < lessonSlot.lessons.length) { - yield lessonSlot.lessons[layer]; - } - } - } - - bool hasAnyLesson() { - for (final lessonSlot in _timeslot2LessonSlot) { - if (lessonSlot.lessons.isNotEmpty) { - assert(associatedCourses.isNotEmpty); - return true; - } - } - return false; - } - - @override - String toString() => { - "date": _formatDay(date), - "index": index, - "timeslot2LessonSlot": _timeslot2LessonSlot, - "associatedCourses": associatedCourses, - }.toString(); -} - -@CopyWith(skipFields: true) -class SitTimetableLesson { - late SitTimetableDay parent; - - /// A lesson may last two or more time slots. - /// If current [SitTimetableLessonPart] is a part of the whole lesson, they all have the same [courseKey]. - final SitCourse course; - - /// in timeslot order - final List parts; - - SitTimetableLesson({ - required this.course, - required this.parts, - }); - - /// How many timeslots this lesson takes. - /// It's at least 1 timeslot. - int get timeslotDuration => endIndex - startIndex + 1; - - /// The start index of this lesson in a [SitTimetableWeek] - int get startIndex => parts.first.index; - - /// The end index of this lesson in a [SitTimetableWeek] - int get endIndex => parts.last.index; - - DateTime get startTime => parts.first.startTime; - - DateTime get endTime => parts.last.endTime; - - @override - String toString() { - return "${course.courseName} ${_formatTime(startTime)} => ${_formatTime(endTime)}"; - } -} - -@CopyWith(skipFields: true) -class SitTimetableLessonPart { - final SitTimetableLesson type; - - /// The start index of this lesson in a [SitTimetableWeek] - final int index; - - late SitTimetableDay _dayCache = type.parent; - - ({DateTime start, DateTime end})? _timeCache; - - ({DateTime start, DateTime end}) get time { - final timeCache = _timeCache; - - if (_dayCache == type.parent && timeCache != null) { - return timeCache; - } else { - final thatDay = type.parent.date; - final classTime = course.calcBeginEndTimePointOfLesson(index); - _dayCache = type.parent; - final time = (start: thatDay.addTimePoint(classTime.begin), end: thatDay.addTimePoint(classTime.end)); - _timeCache = time; - return time; - } - } - - DateTime get startTime => time.start; - - DateTime get endTime => time.end; - - SitCourse get course => type.course; - - SitTimetableLessonPart({ - required this.type, - required this.index, - }); - - @override - String toString() => "[$index] $type"; -} - -extension SitTimetable4EntityX on SitTimetable { - SitTimetableEntity resolve() { - final weeks = List.generate(20, (index) => SitTimetableWeek.$7days(index)); - - for (final course in courses.values) { - if (course.hidden) continue; - final timeslots = course.timeslots; - for (final weekIndex in course.weekIndices.getWeekIndices()) { - assert( - 0 <= weekIndex && weekIndex < maxWeekLength, - "Week index is more out of range [0,$maxWeekLength) but $weekIndex.", - ); - if (0 <= weekIndex && weekIndex < maxWeekLength) { - final week = weeks[weekIndex]; - final day = week.days[course.dayIndex]; - final parts = []; - final lesson = SitTimetableLesson( - course: course, - parts: parts, - ); - for (int slot = timeslots.start; slot <= timeslots.end; slot++) { - final part = SitTimetableLessonPart( - type: lesson, - index: slot, - ); - parts.add(part); - day.add( - at: slot, - lesson: part, - ); - } - } - } - } - final entity = SitTimetableEntity( - type: this, - weeks: weeks, - ); - - void processPatch(TimetablePatchEntry patch) { - if (patch is TimetablePatchSet) { - for (final patch in patch.patches) { - processPatch(patch); - } - } else if (patch is TimetableRemoveDayPatch) { - for (final loc in patch.all) { - final day = loc.resolveDay(entity); - if (day != null) { - day.clear(); - } - } - } else if (patch is TimetableMoveDayPatch) { - final source = patch.source; - final target = patch.target; - final sourceDay = source.resolveDay(entity); - final targetDay = target.resolveDay(entity); - if (sourceDay != null && targetDay != null) { - targetDay.replaceWith(sourceDay); - sourceDay.clear(); - } - } else if (patch is TimetableCopyDayPatch) { - final source = patch.source; - final target = patch.target; - final sourceDay = source.resolveDay(entity); - final targetDay = target.resolveDay(entity); - if (sourceDay != null && targetDay != null) { - targetDay.replaceWith(sourceDay); - } - } else if (patch is TimetableSwapDaysPatch) { - final a = patch.a; - final b = patch.b; - final aDay = a.resolveDay(entity); - final bDay = b.resolveDay(entity); - if (aDay != null && bDay != null) { - aDay.swap(bDay); - } - } - } - - for (final patch in patches) { - processPatch(patch); - } - - if (kDebugMode) { - for (final week in entity.weeks) { - for (final day in week.days) { - assert(day.parent == week); - for (final slot in day.timeslot2LessonSlot) { - assert(slot.parent == day); - for (final lessonPart in slot.lessons) { - assert(lessonPart.type.parts.contains(lessonPart)); - assert(lessonPart.type.startTime.inTheSameDay(day.date)); - } - } - } - } - } - return entity; - } -} diff --git a/lib/timetable/entity/timetable_entity.g.dart b/lib/timetable/entity/timetable_entity.g.dart deleted file mode 100644 index 8a8992e77..000000000 --- a/lib/timetable/entity/timetable_entity.g.dart +++ /dev/null @@ -1,151 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'timetable_entity.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$SitTimetableLessonSlotCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetableLessonSlot(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetableLessonSlot call({ - List? lessons, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfSitTimetableLessonSlot.copyWith(...)`. -class _$SitTimetableLessonSlotCWProxyImpl implements _$SitTimetableLessonSlotCWProxy { - const _$SitTimetableLessonSlotCWProxyImpl(this._value); - - final SitTimetableLessonSlot _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetableLessonSlot(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetableLessonSlot call({ - Object? lessons = const $CopyWithPlaceholder(), - }) { - return SitTimetableLessonSlot( - lessons: lessons == const $CopyWithPlaceholder() || lessons == null - ? _value.lessons - // ignore: cast_nullable_to_non_nullable - : lessons as List, - ); - } -} - -extension $SitTimetableLessonSlotCopyWith on SitTimetableLessonSlot { - /// Returns a callable class that can be used as follows: `instanceOfSitTimetableLessonSlot.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$SitTimetableLessonSlotCWProxy get copyWith => _$SitTimetableLessonSlotCWProxyImpl(this); -} - -abstract class _$SitTimetableLessonCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetableLesson(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetableLesson call({ - SitCourse? course, - List? parts, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfSitTimetableLesson.copyWith(...)`. -class _$SitTimetableLessonCWProxyImpl implements _$SitTimetableLessonCWProxy { - const _$SitTimetableLessonCWProxyImpl(this._value); - - final SitTimetableLesson _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetableLesson(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetableLesson call({ - Object? course = const $CopyWithPlaceholder(), - Object? parts = const $CopyWithPlaceholder(), - }) { - return SitTimetableLesson( - course: course == const $CopyWithPlaceholder() || course == null - ? _value.course - // ignore: cast_nullable_to_non_nullable - : course as SitCourse, - parts: parts == const $CopyWithPlaceholder() || parts == null - ? _value.parts - // ignore: cast_nullable_to_non_nullable - : parts as List, - ); - } -} - -extension $SitTimetableLessonCopyWith on SitTimetableLesson { - /// Returns a callable class that can be used as follows: `instanceOfSitTimetableLesson.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$SitTimetableLessonCWProxy get copyWith => _$SitTimetableLessonCWProxyImpl(this); -} - -abstract class _$SitTimetableLessonPartCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetableLessonPart(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetableLessonPart call({ - SitTimetableLesson? type, - int? index, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfSitTimetableLessonPart.copyWith(...)`. -class _$SitTimetableLessonPartCWProxyImpl implements _$SitTimetableLessonPartCWProxy { - const _$SitTimetableLessonPartCWProxyImpl(this._value); - - final SitTimetableLessonPart _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// SitTimetableLessonPart(...).copyWith(id: 12, name: "My name") - /// ```` - SitTimetableLessonPart call({ - Object? type = const $CopyWithPlaceholder(), - Object? index = const $CopyWithPlaceholder(), - }) { - return SitTimetableLessonPart( - type: type == const $CopyWithPlaceholder() || type == null - ? _value.type - // ignore: cast_nullable_to_non_nullable - : type as SitTimetableLesson, - index: index == const $CopyWithPlaceholder() || index == null - ? _value.index - // ignore: cast_nullable_to_non_nullable - : index as int, - ); - } -} - -extension $SitTimetableLessonPartCopyWith on SitTimetableLessonPart { - /// Returns a callable class that can be used as follows: `instanceOfSitTimetableLessonPart.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$SitTimetableLessonPartCWProxy get copyWith => _$SitTimetableLessonPartCWProxyImpl(this); -} diff --git a/lib/timetable/events.dart b/lib/timetable/events.dart deleted file mode 100644 index 17e90eaca..000000000 --- a/lib/timetable/events.dart +++ /dev/null @@ -1,11 +0,0 @@ -import 'package:event_bus/event_bus.dart'; - -import 'entity/pos.dart'; - -final eventBus = EventBus(); - -class JumpToPosEvent { - final TimetablePos where; - - const JumpToPosEvent(this.where); -} diff --git a/lib/timetable/file_type/timetable.dart b/lib/timetable/file_type/timetable.dart deleted file mode 100644 index bd8819683..000000000 --- a/lib/timetable/file_type/timetable.dart +++ /dev/null @@ -1,23 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/file_type/protocol.dart'; -import 'package:sit/timetable/utils.dart'; - -import '../page/mine.dart'; - -class TimetableFileType with FixedExtensionFileTypeHandler implements FileTypeHandlerProtocol { - const TimetableFileType(); - - @override - List get extensions => const [".timetable"]; - - @override - Future onHandle({ - required BuildContext context, - required String path, - }) async { - final timetable = await readTimetableFromFileWithPrompt(context, path); - if (timetable == null) return; - if (!context.mounted) return; - await onTimetableFromFile(context: context, timetable: timetable); - } -} diff --git a/lib/timetable/i18n.dart b/lib/timetable/i18n.dart deleted file mode 100644 index 60424121a..000000000 --- a/lib/timetable/i18n.dart +++ /dev/null @@ -1,426 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/school/i18n.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "timetable"; - final time = const TimeI18n(); - final mine = const _Mine(); - final p13n = const _P13n(); - final import = const _Import(); - final export = const _Export(); - final course = const CourseI18n(); - final screenshot = const _Screenshot(); - final editor = const _Editor(); - final issue = const _Issue(); - final patch = const _Patch(); - final freeTip = const _FreeTip(); - final campus = const CampusI10n(); - final settings = const _Settings(); - - String get navigation => "$ns.navigation".tr(); - - String weekOrderedName({required int number}) => "$ns.weekOrderedName".tr(args: [number.toString()]); - - String get startWith => "$ns.startWith".tr(); - - String get jump => "$ns.jump".tr(); - - String get findToday => "$ns.findToday".tr(); - - String get focusTimetable => "$ns.focusTimetable".tr(); - - String get signature => "$ns.signature".tr(); - - String get signaturePlaceholder => "$ns.signaturePlaceholder".tr(); - - String get lunchtime => "$ns.lunchtime".tr(); - - String get dinnertime => "$ns.dinnertime".tr(); -} - -class _Mine { - const _Mine(); - - static const ns = "${_I18n.ns}.mine"; - - String get title => "$ns.title".tr(); - - String get exportFile => "$ns.exportFile".tr(); - - String get exportCalendar => "$ns.exportCalendar".tr(); - - String get patch => "$ns.patch".tr(); - - String get deleteRequest => "$ns.deleteRequest".tr(); - - String get deleteRequestDesc => "$ns.deleteRequestDesc".tr(); - - String get emptyTip => "$ns.emptyTip".tr(); - - String get details => "$ns.details".tr(); -} - -class _P13n { - const _P13n(); - - static const ns = "${_I18n.ns}.p13n"; - final cell = const _CellStyle(); - final palette = const _Palette(); - final background = const _Background(); - - String get title => "$ns.title".tr(); - - ({String name, String place, List teachers}) livePreview(int index) { - return ( - name: "$ns.livePreview.$index.name".tr(), - place: "$ns.livePreview.$index.place".tr(), - teachers: "$ns.livePreview.$index.teachers".tr().split(","), - ); - } -} - -class _CellStyle { - const _CellStyle(); - - static const ns = "${_P13n.ns}.cellStyle"; - - String get title => "$ns.title".tr(); - - String get showTeachers => "$ns.showTeachers.title".tr(); - - String get showTeachersDesc => "$ns.showTeachers.desc".tr(); - - String get grayOut => "$ns.grayOut.title".tr(); - - String get grayOutDesc => "$ns.grayOut.desc".tr(); - - String get harmonize => "$ns.harmonize.title".tr(); - - String get harmonizeDesc => "$ns.harmonize.desc".tr(); - - String get alpha => "$ns.alpha".tr(); -} - -class _Palette { - const _Palette(); - - static const ns = "${_P13n.ns}.palette"; - - String get title => "$ns.title".tr(); - - String get fab => "$ns.fab".tr(); - - String get customTab => "$ns.tab.custom".tr(); - - String get builtinTab => "$ns.tab.builtin".tr(); - - String get infoTab => "$ns.tab.info".tr(); - - String get colorsTab => "$ns.tab.colors".tr(); - - String get newPaletteName => "$ns.newPaletteName".tr(); - - String get deleteRequest => "$ns.deleteRequest".tr(); - - String get deleteRequestDesc => "$ns.deleteRequestDesc".tr(); - - String get addColor => "$ns.addColor".tr(); - - String get name => "$ns.name".tr(); - - String get namePlaceholder => "$ns.namePlaceholder".tr(); - - String get author => "$ns.author".tr(); - - String get authorPlaceholder => "$ns.authorPlaceholder".tr(); - - String get color => "$ns.color".tr(); - - String get details => "$ns.details".tr(); -} - -class _Background { - const _Background(); - - static const ns = "${_P13n.ns}.background"; - - String get title => "$ns.title".tr(); - - String get pickTip => "$ns.pickTip".tr(); - - String get selectedImage => "$ns.selectedImage".tr(); - - String get imageURL => "$ns.imageURL".tr(); - - String get invalidURL => "$ns.invalidURL".tr(); - - String get invalidURLDesc => "$ns.invalidURLDesc".tr(); - - String get opacity => "$ns.opacity".tr(); - - String get repeat => "$ns.repeat.title".tr(); - - String get repeatDesc => "$ns.repeat.desc".tr(); - - String get antialias => "$ns.antialias.title".tr(); - - String get antialiasDesc => "$ns.antialias.desc".tr(); -} - -class _Screenshot { - const _Screenshot(); - - static const ns = "${_I18n.ns}.screenshot"; - - String get title => "$ns.title".tr(); - - String get screenshot => "$ns.screenshot".tr(); - - String get take => "$ns.take".tr(); - - String get enableBackground => "$ns.enableBackground.title".tr(); - - String get enableBackgroundDesc => "$ns.enableBackground.desc".tr(); -} - -class _Import { - const _Import(); - - static const ns = "${_I18n.ns}.import"; - - String get title => "$ns.title".tr(); - - String get import => "$ns.import".tr(); - - String get fromFile => "$ns.fromFile".tr(); - - String get fromFileBtn => "$ns.fromFileBtn".tr(); - - String get connectivityCheckerDesc => "$ns.connectivityCheckerDesc".tr(); - - String get selectSemesterTip => "$ns.selectSemesterTip".tr(); - - String get endTip => "$ns.endTip".tr(); - - String get failed => "$ns.failed".tr(); - - String get failedDesc => "$ns.failedDesc".tr(); - - String get failedTip => "$ns.failedTip".tr(); - - String get tryImportBtn => "$ns.tryImportBtn".tr(); - - String get importing => "$ns.importing".tr(); - - String get timetableInfo => "$ns.timetableInfo".tr(); - - String defaultName( - String semester, - String yearStart, - String yearEnd, - ) => - "$ns.defaultName".tr(namedArgs: { - "semester": semester, - "yearStart": yearStart, - "yearEnd": yearEnd, - }); -} - -class _Editor { - const _Editor(); - - static const ns = "${_I18n.ns}.edit"; - - String get name => "$ns.name".tr(); - - String get infoTab => "$ns.tab.info".tr(); - - String get advancedTab => "$ns.tab.advanced".tr(); - - String get editCourse => "$ns.editCourse".tr(); - - String get newCourse => "$ns.newCourse".tr(); - - String get addCourse => "$ns.addCourse".tr(); - - String get repeating => "$ns.repeating".tr(); - - String get daysOfWeek => "$ns.daysOfWeek".tr(); - - String timeslotsSpanMultiple({ - required String from, - required String to, - }) => - "$ns.timeslots.multiple".tr(namedArgs: { - "from": from, - "to": to, - }); - - String timeslotsSpanSingle(String at) => "$ns.timeslots.single".tr(args: [at]); -} - -class _Issue { - const _Issue(); - - static const ns = "${_I18n.ns}.issue"; - - String get title => "$ns.title".tr(); - - String get resolve => "$ns.resolve".tr(); - - String get emptyIssue => "$ns.emptyIssue.title".tr(); - - String get emptyIssueDesc => "$ns.emptyIssue.desc".tr(); - - String get cbeCourseIssue => "$ns.cbeCourseIssue.title".tr(); - - String get cbeCourseIssueDesc => "$ns.cbeCourseIssue.desc".tr(); - - String get courseOverlapsIssue => "$ns.courseOverlapsIssue.title".tr(); - - String get courseOverlapsIssueDesc => "$ns.courseOverlapsIssue.desc".tr(); -} - -class _Patch { - const _Patch(); - - static const ns = "${_I18n.ns}.patch"; - - String get title => "$ns.title".tr(); - - String get prefabs => "$ns.prefabs".tr(); - - String get defaultName => "$ns.defaultName".tr(); - - String get unpack => "$ns.unpack".tr(); - - String get noPatches => "$ns.noPatches".tr(); - - String get noPatchesTip => "$ns.noPatchesTip".tr(); - - String get patchSetName => "$ns.patchSetName".tr(); - - String get editName => "$ns.editName".tr(); - - String removeDay(String day) => "$ns.removeDay".tr(namedArgs: { - "day": day, - }); - - String swapDays(String a, String b) => "$ns.swapDays".tr(namedArgs: { - "a": a, - "b": b, - }); - - String copyDay(String source, String target) => "$ns.copyDay".tr(namedArgs: { - "source": source, - "target": target, - }); - - String moveDay(String source, String target) => "$ns.moveDay".tr(namedArgs: { - "source": source, - "target": target, - }); - - String get moveSource => "$ns.moveSource".tr(); - - String get moveTarget => "$ns.moveTarget".tr(); - - String get copySource => "$ns.copySource".tr(); - - String get copyTarget => "$ns.copyTarget".tr(); - - String get swappedDay => "$ns.swappedDay".tr(); - - String get removedDay => "$ns.removedDay".tr(); -} - -class _Export { - const _Export(); - - static const ns = "${_I18n.ns}.export"; - - String get title => "$ns.title".tr(); - - String get export => "$ns.export".tr(); - - String get iOSGetShortcutAction => "$ns.iOSGetShortcutAction".tr(); - - String get lessonMode => "$ns.lessonMode.title".tr(); - - String get lessonModeMerged => "$ns.lessonMode.merged".tr(); - - String get lessonModeMergedTip => "$ns.lessonMode.mergedTip".tr(); - - String get lessonModeSeparate => "$ns.lessonMode.separate".tr(); - - String get lessonModeSeparateTip => "$ns.lessonMode.separateTip".tr(); - - String get enableAlarm => "$ns.enableAlarm.title".tr(); - - String get enableAlarmDesc => "$ns.enableAlarm.desc".tr(); - - String get alarmMode => "$ns.alarmMode.title".tr(); - - String get alarmModeSound => "$ns.alarmMode.sound".tr(); - - String get alarmModeDisplay => "$ns.alarmMode.display".tr(); - - String get alarmDuration => "$ns.alarmDuration".tr(); - - String get alarmBeforeClassBegins => "$ns.alarmBeforeClassBegins.title".tr(); - - String alarmBeforeClassBeginsDesc(Duration duration) => "$ns.alarmBeforeClassBegins.desc".tr(namedArgs: { - "duration": i18n.time.minuteFormat(duration.inMinutes.toString()), - }); -} - -class _FreeTip { - const _FreeTip(); - - static const ns = "${_I18n.ns}.freeTip"; - - String get dayTip => "$ns.dayTip".tr(); - - String get isTodayTip => "$ns.isTodayTip".tr(); - - String get weekTip => "$ns.weekTip".tr(); - - String get isThisWeekTip => "$ns.isThisWeekTip".tr(); - - String get termTip => "$ns.termTip".tr(); - - String get findNearestWeekWithClass => "$ns.findNearestWeekWithClass".tr(); - - String get findNearestDayWithClass => "$ns.findNearestDayWithClass".tr(); -} - -class _Settings { - const _Settings(); - - static const ns = "${_I18n.ns}.settings"; - - String get autoUseImported => "$ns.autoUseImported.title".tr(); - - String get autoUseImportedDesc => "$ns.autoUseImported.desc".tr(); - - String get palette => "$ns.palette.title".tr(); - - String get paletteDesc => "$ns.palette.desc".tr(); - - String get cellStyle => "$ns.cellStyle.title".tr(); - - String get cellStyleDesc => "$ns.cellStyle.desc".tr(); - - String get background => "$ns.background.title".tr(); - - String get backgroundDesc => "$ns.background.desc".tr(); - - String get quickLookLessonOnTap => "$ns.quickLookLessonOnTap.title".tr(); - - String get quickLookLessonOnTapDesc => "$ns.quickLookLessonOnTap.desc".tr(); -} diff --git a/lib/timetable/init.dart b/lib/timetable/init.dart deleted file mode 100644 index f6c3d7566..000000000 --- a/lib/timetable/init.dart +++ /dev/null @@ -1,18 +0,0 @@ -import 'package:sit/settings/dev.dart'; -import 'package:sit/timetable/service/school.demo.dart'; - -import 'service/school.dart'; -import 'storage/timetable.dart'; - -class TimetableInit { - static late TimetableService service; - static late TimetableStorage storage; - - static void init() { - service = Dev.demoMode ? const DemoTimetableService() : const TimetableService(); - } - - static void initStorage() { - storage = TimetableStorage(); - } -} diff --git a/lib/timetable/page/edit/course_editor.dart b/lib/timetable/page/edit/course_editor.dart deleted file mode 100644 index 61ee5a196..000000000 --- a/lib/timetable/page/edit/course_editor.dart +++ /dev/null @@ -1,470 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/adaptive/swipe.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/timetable.dart'; -import '../../i18n.dart'; - -class SitCourseEditable { - final bool courseName; - final bool courseCode; - final bool classCode; - final bool campus; - final bool place; - final bool hidden; - final bool weekIndices; - final bool timeslots; - final bool courseCredit; - final bool dayIndex; - final bool teachers; - - const SitCourseEditable({ - required this.courseName, - required this.courseCode, - required this.classCode, - required this.campus, - required this.place, - required this.hidden, - required this.weekIndices, - required this.timeslots, - required this.courseCredit, - required this.dayIndex, - required this.teachers, - }); - - const SitCourseEditable.item({ - this.place = true, - this.hidden = true, - this.weekIndices = true, - this.timeslots = true, - this.dayIndex = true, - this.teachers = true, - }) : courseName = false, - courseCode = false, - classCode = false, - campus = false, - courseCredit = false; - - const SitCourseEditable.template() - : courseName = true, - courseCode = true, - classCode = true, - campus = true, - courseCredit = true, - place = false, - hidden = false, - weekIndices = false, - timeslots = false, - dayIndex = false, - teachers = false; - - const SitCourseEditable.only({ - this.courseName = false, - this.courseCode = false, - this.classCode = false, - this.campus = false, - this.place = false, - this.hidden = false, - this.weekIndices = false, - this.timeslots = false, - this.courseCredit = false, - this.dayIndex = false, - this.teachers = false, - }); - - const SitCourseEditable.all({ - this.courseName = true, - this.courseCode = true, - this.classCode = true, - this.campus = true, - this.place = true, - this.hidden = true, - this.weekIndices = true, - this.timeslots = true, - this.courseCredit = true, - this.dayIndex = true, - this.teachers = true, - }); -} - -class SitCourseEditorPage extends StatefulWidget { - final String? title; - final SitCourse? course; - final SitCourseEditable editable; - - const SitCourseEditorPage({ - super.key, - this.title, - required this.course, - this.editable = const SitCourseEditable.all(), - }); - - @override - State createState() => _SitCourseEditorPageState(); -} - -class _SitCourseEditorPageState extends State { - late final $courseName = TextEditingController(text: widget.course?.courseName); - late final $courseCode = TextEditingController(text: widget.course?.courseCode); - late final $classCode = TextEditingController(text: widget.course?.classCode); - late var campus = widget.course?.campus ?? Settings.campus; - late final $place = TextEditingController(text: widget.course?.place); - late var weekIndices = widget.course?.weekIndices ?? const TimetableWeekIndices([]); - late var timeslots = widget.course?.timeslots ?? (start: 0, end: 0); - late var courseCredit = widget.course?.courseCredit ?? 0.0; - late var hidden = widget.course?.hidden ?? false; - late var dayIndex = widget.course?.dayIndex ?? 0; - late var teachers = List.of(widget.course?.teachers ?? []); - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - @override - void initState() { - super.initState(); - $courseName.addListener(() { - if ($courseName.text != widget.course?.courseName) { - setState(() => markChanged()); - } - }); - $courseCode.addListener(() { - if ($courseCode.text != widget.course?.courseCode) { - setState(() => markChanged()); - } - }); - $classCode.addListener(() { - if ($classCode.text != widget.course?.classCode) { - setState(() => markChanged()); - } - }); - } - - @override - void dispose() { - $courseName.dispose(); - $courseCode.dispose(); - $classCode.dispose(); - $place.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final editable = widget.editable; - return PromptSaveBeforeQuitScope( - changed: anyChanged, - onSave: onSave, - child: Scaffold( - resizeToAvoidBottomInset: false, - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: widget.title?.text(), - actions: [ - PlatformTextButton( - onPressed: onSave, - child: i18n.done.text(), - ), - ], - ), - SliverList.list(children: [ - buildTextField( - controller: $courseName, - title: i18n.course.courseName, - readonly: !editable.courseName, - ), - buildTextField( - controller: $courseCode, - title: i18n.course.courseCode, - readonly: !editable.courseName, - ), - buildTextField( - controller: $classCode, - title: i18n.course.classCode, - readonly: !editable.courseName, - ), - if (editable.place) - buildTextField( - title: i18n.course.place, - controller: $place, - ), - if (editable.hidden) buildHidden(), - if (editable.dayIndex) - buildWeekdays().inCard( - clip: Clip.hardEdge, - ), - if (editable.timeslots) - buildTimeslots().inCard( - clip: Clip.hardEdge, - ), - if (editable.weekIndices) - buildRepeating().inCard( - clip: Clip.hardEdge, - ), - if (editable.teachers) - buildTeachers().inCard( - clip: Clip.hardEdge, - ), - ]), - ], - ), - ), - ); - } - - Widget buildWeekdays() { - return ListTile( - title: i18n.editor.daysOfWeek.text(), - isThreeLine: true, - subtitle: [ - ...Weekday.values.map( - (w) => ChoiceChip( - showCheckmark: false, - label: w.l10n().text(), - selected: dayIndex == w.index, - onSelected: (value) { - setState(() { - dayIndex = w.index; - }); - markChanged(); - }, - ), - ), - ].wrap(spacing: 4), - ); - } - - Widget buildTimeslots() { - return ListTile( - title: (timeslots.start == timeslots.end - ? i18n.editor.timeslotsSpanSingle("${timeslots.start + 1}") - : i18n.editor.timeslotsSpanMultiple(from: "${timeslots.start + 1}", to: "${timeslots.end + 1}")) - .text(), - subtitle: [ - const Icon(Icons.light_mode), - RangeSlider( - values: RangeValues(timeslots.start.toDouble(), timeslots.end.toDouble()), - max: 10, - divisions: 10, - labels: RangeLabels( - "${timeslots.start.round() + 1}", - "${timeslots.end.round() + 1}", - ), - onChanged: (RangeValues values) { - final newStart = values.start.toInt(); - final newEnd = values.end.toInt(); - if (timeslots.start != newStart || timeslots.end != newEnd) { - setState(() { - timeslots = (start: newStart, end: newEnd); - }); - markChanged(); - } - }, - ).expanded(), - const Icon(Icons.dark_mode), - ].row(mas: MainAxisSize.min), - ); - } - - Widget buildRepeating() { - return [ - ListTile( - title: i18n.editor.repeating.text(), - trailing: PlatformIconButton( - icon: Icon(context.icons.add), - onPressed: () { - final newIndices = List.of(weekIndices.indices); - newIndices.add(const TimetableWeekIndex.all((start: 0, end: 1))); - setState(() { - weekIndices = TimetableWeekIndices(newIndices); - }); - markChanged(); - }, - ), - ), - ...weekIndices.indices.mapIndexed((i, index) { - return RepeatingItemEditor( - childKey: ValueKey(i), - index: index, - onChanged: (value) { - final newIndices = List.of(weekIndices.indices); - newIndices[i] = value; - setState(() { - weekIndices = TimetableWeekIndices(newIndices); - }); - markChanged(); - }, - onDeleted: () { - setState(() { - weekIndices = TimetableWeekIndices( - List.of(weekIndices.indices)..removeAt(i), - ); - }); - markChanged(); - }, - ); - }) - ].column(); - } - - Widget buildTeachers() { - return ListTile( - title: i18n.course.teacher(2).text(), - isThreeLine: true, - trailing: PlatformIconButton( - icon: Icon(context.icons.add), - onPressed: () async { - final newTeacher = await Editor.showStringEditor( - context, - desc: i18n.course.teacher(2), - initial: "", - ); - if (newTeacher != null && !teachers.contains(newTeacher)) { - if (!mounted) return; - setState(() { - teachers.add(newTeacher); - }); - markChanged(); - } - }, - ), - subtitle: [ - ...teachers.map((teacher) => InputChip( - label: teacher.text(), - onDeleted: () { - setState(() { - teachers.remove(teacher); - }); - markChanged(); - }, - )), - ].wrap(spacing: 4), - ); - } - - Widget buildHidden() { - return ListTile( - title: i18n.course.displayable.text(), - trailing: Switch.adaptive( - value: !hidden, - onChanged: (newV) { - setState(() { - hidden = !newV; - }); - markChanged(); - }, - ), - ); - } - - void onSave() { - context.pop(SitCourse( - courseKey: widget.course?.courseKey ?? 0, - courseName: $courseName.text, - courseCode: $courseCode.text, - classCode: $classCode.text, - campus: campus, - place: $place.text, - weekIndices: weekIndices, - timeslots: timeslots, - courseCredit: courseCredit, - dayIndex: dayIndex, - teachers: teachers, - hidden: hidden, - )); - } - - Widget buildTextField({ - required TextEditingController controller, - required String title, - bool readonly = false, - }) { - return TextFormField( - controller: controller, - maxLines: 1, - readOnly: readonly, - decoration: InputDecoration( - labelText: title, - enabled: !readonly, - border: const OutlineInputBorder(), - ), - ).padAll(10); - } -} - -class RepeatingItemEditor extends StatelessWidget { - final Key childKey; - final TimetableWeekIndex index; - final ValueChanged? onChanged; - final void Function()? onDeleted; - - const RepeatingItemEditor({ - super.key, - required this.index, - required this.childKey, - this.onChanged, - this.onDeleted, - }); - - @override - Widget build(BuildContext context) { - final onDeleted = this.onDeleted; - return WithSwipeAction( - childKey: childKey, - right: onDeleted == null - ? null - : SwipeAction.delete( - icon: context.icons.delete, - action: () async { - onDeleted(); - }, - ), - child: ListTile( - title: index.l10n().text(), - isThreeLine: true, - subtitle: [ - RangeSlider( - values: RangeValues(index.range.start.toDouble(), index.range.end.toDouble()), - max: 19, - divisions: 19, - labels: RangeLabels( - "${index.range.start.round() + 1}", - "${index.range.end.round() + 1}", - ), - onChanged: (RangeValues values) { - final newStart = values.start.toInt(); - final newEnd = values.end.toInt(); - if (index.range.start != newStart || index.range.end != newEnd) { - onChanged?.call(index.copyWith( - range: (start: newStart, end: newEnd), - type: newStart == newEnd ? TimetableWeekIndexType.all : index.type, - )); - } - }, - ), - [ - ...TimetableWeekIndexType.values.map((type) => ChoiceChip( - label: type.l10n().text(), - selected: index.type == type, - onSelected: type != TimetableWeekIndexType.all && index.isSingle - ? null - : (value) { - onChanged?.call(index.copyWith( - type: type, - )); - }, - )), - ].wrap(spacing: 4), - ].column(mas: MainAxisSize.min, caa: CrossAxisAlignment.start), - ), - ); - } -} diff --git a/lib/timetable/page/edit/editor.dart b/lib/timetable/page/edit/editor.dart deleted file mode 100644 index d747ea33a..000000000 --- a/lib/timetable/page/edit/editor.dart +++ /dev/null @@ -1,481 +0,0 @@ -import 'dart:async'; - -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/adaptive/swipe.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/expansion_tile.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/widgets/course.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/settings.dart'; -import '../../entity/issue.dart'; -import '../../widgets/issue.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/timetable.dart'; -import '../../i18n.dart'; -import 'course_editor.dart'; -import '../preview.dart'; - -class TimetableEditorPage extends StatefulWidget { - final SitTimetable timetable; - - const TimetableEditorPage({ - super.key, - required this.timetable, - }); - - @override - State createState() => _TimetableEditorPageState(); -} - -class _TimetableEditorPageState extends State { - final _formKey = GlobalKey(); - late final $name = TextEditingController(text: widget.timetable.name); - late final $startDate = ValueNotifier(widget.timetable.startDate); - late final $signature = TextEditingController(text: widget.timetable.signature); - late var courses = Map.of(widget.timetable.courses); - late var lastCourseKey = widget.timetable.lastCourseKey; - var navIndex = 0; - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - @override - void initState() { - super.initState(); - $name.addListener(() { - if ($name.text != widget.timetable.name) { - setState(() => markChanged()); - } - }); - $startDate.addListener(() { - if ($startDate.value != widget.timetable.startDate) { - setState(() => markChanged()); - } - }); - $signature.addListener(() { - if ($signature.text != widget.timetable.signature) { - setState(() => markChanged()); - } - }); - } - - @override - void dispose() { - $name.dispose(); - $startDate.dispose(); - $signature.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return PromptSaveBeforeQuitScope( - changed: anyChanged, - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.import.timetableInfo.text(), - actions: [ - PlatformTextButton( - onPressed: onPreview, - child: i18n.preview.text(), - ), - PlatformTextButton( - onPressed: onSave, - child: i18n.save.text(), - ), - ], - ), - if (navIndex == 0) ...buildInfoTab() else ...buildAdvancedTab(), - ], - ), - bottomNavigationBar: NavigationBar( - selectedIndex: navIndex, - destinations: [ - NavigationDestination( - icon: const Icon(Icons.info_outline), - selectedIcon: const Icon(Icons.info), - label: i18n.editor.infoTab, - ), - NavigationDestination( - icon: const Icon(Icons.calendar_month_outlined), - selectedIcon: const Icon(Icons.calendar_month), - label: i18n.editor.advancedTab, - ), - ], - onDestinationSelected: (newIndex) { - setState(() { - navIndex = newIndex; - }); - }, - ), - ), - ); - } - - List buildInfoTab() { - final timetable = buildTimetable(); - final issues = timetable.inspect(); - return [ - SliverList.list(children: [ - buildDescForm(), - buildStartDate(), - buildSignature(), - if (issues.isNotEmpty) ...[ - ListTile( - leading: Icon(context.icons.warning), - title: i18n.issue.title.text(), - ), - ...issues.build( - context: context, - timetable: timetable, - onTimetableChanged: (newTimetable) { - setFromTimetable(newTimetable); - }, - ), - ], - ]), - ]; - } - - List buildAdvancedTab() { - final code2Courses = courses.values.groupListsBy((c) => c.courseCode).entries.toList(); - code2Courses.sortBy((p) => p.key); - for (var p in code2Courses) { - p.value.sortBy((l) => l.courseCode); - } - return [ - SliverList.list(children: [ - addCourseTile(), - const Divider(thickness: 2), - ]), - SliverList.builder( - itemCount: code2Courses.length, - itemBuilder: (ctx, i) { - final MapEntry(key: courseKey, value: courses) = code2Courses[i]; - final template = courses.first; - return TimetableEditableCourseCard( - key: ValueKey(courseKey), - courses: courses, - template: template, - onCourseChanged: onCourseChanged, - onCourseAdded: onCourseAdded, - onCourseRemoved: onCourseRemoved, - ); - }, - ), - ]; - } - - Widget addCourseTile() { - return ListTile( - title: i18n.editor.addCourse.text(), - trailing: Icon(context.icons.add), - onTap: () async { - final newCourse = await context.showSheet( - (ctx) => SitCourseEditorPage( - title: i18n.editor.newCourse, - course: null, - ), - ); - if (newCourse == null) return; - onCourseAdded(newCourse); - }, - ); - } - - void onCourseChanged(SitCourse old, SitCourse newValue) { - markChanged(); - final key = "${newValue.courseKey}"; - if (courses.containsKey(key)) { - setState(() { - courses[key] = newValue; - }); - } - // check if shared fields are changed. - if (old.courseCode != newValue.courseCode || - old.classCode != newValue.classCode || - old.courseName != newValue.courseName) { - for (final MapEntry(:key, value: course) in courses.entries.toList()) { - if (course.courseCode == old.courseCode) { - // change the shared fields simultaneously - courses[key] = course.copyWith( - courseCode: newValue.courseCode, - classCode: newValue.classCode, - courseName: newValue.courseName, - hidden: newValue.hidden, - ); - } - } - } - } - - void onCourseAdded(SitCourse course) { - markChanged(); - course = course.copyWith( - courseKey: lastCourseKey++, - ); - setState(() { - courses["${course.courseKey}"] = course; - }); - } - - void onCourseRemoved(SitCourse course) { - final key = "${course.courseKey}"; - if (courses.containsKey(key)) { - setState(() { - courses.remove("${course.courseKey}"); - }); - markChanged(); - } - } - - Widget buildStartDate() { - return ListTile( - leading: const Icon(Icons.alarm), - title: i18n.startWith.text(), - trailing: FilledButton( - child: $startDate >> (ctx, value) => ctx.formatYmdText(value).text(), - onPressed: () async { - final date = await _pickTimetableStartDate(context, initial: $startDate.value); - if (date != null) { - $startDate.value = DateTime(date.year, date.month, date.day); - } - }, - ), - ); - } - - Widget buildSignature() { - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.drive_file_rename_outline), - title: i18n.signature.text(), - subtitle: TextField( - controller: $signature, - decoration: InputDecoration( - hintText: i18n.signaturePlaceholder, - ), - ), - ); - } - - SitTimetable buildTimetable() { - final signature = $signature.text.trim(); - return widget.timetable.copyWith( - name: $name.text, - signature: signature, - startDate: $startDate.value, - courses: courses, - lastCourseKey: lastCourseKey, - lastModified: DateTime.now(), - ); - } - - void setFromTimetable(SitTimetable timetable) { - setState(() { - $name.text = timetable.name; - $startDate.value = timetable.startDate; - $signature.text = timetable.signature; - courses = Map.of(timetable.courses); - lastCourseKey = timetable.lastCourseKey; - }); - markChanged(); - } - - void onSave() { - final signature = $signature.text.trim(); - Settings.lastSignature = signature; - final timetable = buildTimetable(); - context.pop(timetable); - } - - Future onPreview() async { - await previewTimetable(context, timetable: buildTimetable()); - } - - Widget buildDescForm() { - return Form( - key: _formKey, - child: Column( - children: [ - TextFormField( - controller: $name, - maxLines: 1, - decoration: InputDecoration( - labelText: i18n.editor.name, - border: const OutlineInputBorder(), - ), - ).padAll(10), - ], - ), - ); - } -} - -Future _pickTimetableStartDate( - BuildContext ctx, { - required DateTime initial, -}) async { - final now = DateTime.now(); - return await showDatePicker( - context: ctx, - initialDate: initial, - currentDate: now, - firstDate: DateTime(now.year - 4), - lastDate: DateTime(now.year + 2), - selectableDayPredicate: (DateTime dataTime) => dataTime.weekday == DateTime.monday, - ); -} - -class TimetableEditableCourseCard extends StatelessWidget { - final SitCourse template; - final List courses; - final Color? color; - final void Function(SitCourse old, SitCourse newValue)? onCourseChanged; - final void Function(SitCourse)? onCourseAdded; - final void Function(SitCourse)? onCourseRemoved; - - const TimetableEditableCourseCard({ - super.key, - required this.template, - required this.courses, - this.color, - this.onCourseChanged, - this.onCourseAdded, - this.onCourseRemoved, - }); - - @override - Widget build(BuildContext context) { - final onCourseRemoved = this.onCourseRemoved; - final allHidden = courses.every((c) => c.hidden); - final templateStyle = TextStyle(color: allHidden ? context.theme.disabledColor : null); - return AnimatedExpansionTile( - leading: CourseIcon( - courseName: template.courseName, - enabled: !allHidden, - ), - visualDensity: VisualDensity.compact, - rotateTrailing: false, - title: template.courseName.text(style: templateStyle), - subtitle: [ - if (template.courseCode.isNotEmpty) - "${i18n.course.courseCode} ${template.courseCode}".text(style: templateStyle), - if (template.classCode.isNotEmpty) "${i18n.course.classCode} ${template.classCode}".text(style: templateStyle), - ].column(caa: CrossAxisAlignment.start), - trailing: [ - PlatformIconButton( - icon: Icon(context.icons.add), - padding: EdgeInsets.zero, - onPressed: () async { - final tempItem = template.createSubItem(courseKey: 0); - final newItem = await context.showSheet( - (context) => SitCourseEditorPage( - title: i18n.editor.newCourse, - course: tempItem, - editable: const SitCourseEditable.item(), - ), - ); - if (newItem == null) return; - onCourseAdded?.call(newItem); - }, - ), - PlatformIconButton( - icon: Icon(context.icons.edit), - padding: EdgeInsets.zero, - onPressed: () async { - final newTemplate = await context.showSheet( - (context) => SitCourseEditorPage( - title: i18n.editor.editCourse, - editable: const SitCourseEditable.template(), - course: template, - ), - ); - if (newTemplate == null) return; - onCourseChanged?.call(template, newTemplate); - }, - ), - ].row(mas: MainAxisSize.min), - - // sub-courses - children: courses.mapIndexed((i, course) { - final weekNumbers = course.weekIndices.l10n(); - final (:begin, :end) = course.calcBeginEndTimePoint(); - return WithSwipeAction( - childKey: ValueKey(course.courseKey), - right: onCourseRemoved == null - ? null - : SwipeAction.delete( - icon: context.icons.delete, - action: () async { - onCourseRemoved(course); - }, - ), - child: ListTile( - isThreeLine: true, - visualDensity: VisualDensity.compact, - enabled: !course.hidden, - leading: Dev.on ? "${course.courseKey}".text() : null, - title: course.place.text(), - subtitle: [ - course.teachers.join(", ").text(), - "${Weekday.fromIndex(course.dayIndex).l10n()} ${begin.l10n(context)}–${end.l10n(context)}".text(), - ...weekNumbers.map((n) => n.text()), - ].column(mas: MainAxisSize.min, caa: CrossAxisAlignment.start), - trailing: PlatformIconButton( - icon: Icon(context.icons.edit), - padding: EdgeInsets.zero, - onPressed: () async { - final newItem = await context.showSheet( - (context) => SitCourseEditorPage( - title: i18n.editor.editCourse, - course: course, - editable: const SitCourseEditable.item(), - ), - ); - if (newItem == null) return; - onCourseChanged?.call(course, newItem); - }, - ), - ), - ); - }).toList(), - ).inAnyCard( - clip: Clip.hardEdge, - type: allHidden ? CardVariant.outlined : CardVariant.filled, - color: allHidden ? null : color, - ); - } -} - -extension _SitCourseX on SitCourse { - SitCourse createSubItem({ - required int courseKey, - }) { - return SitCourse( - courseKey: courseKey, - courseName: courseName, - courseCode: courseCode, - classCode: classCode, - campus: campus, - place: "", - weekIndices: const TimetableWeekIndices([]), - timeslots: (start: 0, end: 0), - courseCredit: courseCredit, - dayIndex: 0, - teachers: teachers, - ); - } -} diff --git a/lib/timetable/page/ical.dart b/lib/timetable/page/ical.dart deleted file mode 100644 index de0032c0b..000000000 --- a/lib/timetable/page/ical.dart +++ /dev/null @@ -1,229 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/duration_picker.dart'; -import 'package:sit/r.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:url_launcher/url_launcher_string.dart'; -import '../entity/timetable.dart'; -import "../i18n.dart"; - -typedef TimetableICalAlarmConfig = ({ - Duration alarmBeforeClass, - Duration alarmDuration, - bool isDisplayAlarm, -}); - -typedef TimetableICalConfig = ({ - TimetableICalAlarmConfig? alarm, - Locale? locale, - bool isLessonMerged, -}); - -class TimetableICalConfigEditor extends StatefulWidget { - final SitTimetable timetable; - - const TimetableICalConfigEditor({ - super.key, - required this.timetable, - }); - - @override - State createState() => _TimetableICalConfigEditorState(); -} - -class _TimetableICalConfigEditorState extends State { - var enableAlarm = false; - var alarmDuration = const Duration(minutes: 5); - var alarmBeforeClass = const Duration(minutes: 15); - var merged = true; - var isDisplayAlarm = true; - - @override - Widget build(BuildContext context) { - return Scaffold( - resizeToAvoidBottomInset: false, - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.export.title.text(), - actions: [ - buildExportAction(), - ], - ), - SliverList.list(children: [ - buildModeSwitch(), - const Divider(), - buildAlarmToggle(), - buildAlarmModeSwitch(), - buildAlarmDuration(), - buildAlarmBeforeClassStart(), - ]), - ], - ), - bottomNavigationBar: buildGetShortcut(), - ); - } - - Widget? buildGetShortcut() { - // only for iOS - if (!UniversalPlatform.isIOS) return null; - return BottomAppBar( - color: Colors.transparent, - surfaceTintColor: Colors.transparent, - child: PlatformTextButton( - child: i18n.export.iOSGetShortcutAction.text(), - onPressed: () { - launchUrlString(R.iosTimetableICalToCalendarShortcut); - }, - ), - ); - } - - Widget buildExportAction() { - return PlatformTextButton( - child: i18n.export.export.text(), - onPressed: () async { - context.pop(( - alarm: enableAlarm - ? ( - alarmBeforeClass: alarmBeforeClass, - alarmDuration: alarmDuration, - isDisplayAlarm: isDisplayAlarm, - ) - : null, - locale: context.locale, - isLessonMerged: merged, - )); - }, - ); - } - - Widget buildModeSwitch() { - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.calendar_month), - title: i18n.export.lessonMode.text(), - subtitle: [ - ChoiceChip( - label: i18n.export.lessonModeMerged.text(), - selected: merged, - onSelected: (value) { - setState(() { - merged = true; - }); - }, - ), - ChoiceChip( - label: i18n.export.lessonModeSeparate.text(), - selected: !merged, - onSelected: (value) { - setState(() { - merged = false; - }); - }, - ), - ].wrap(spacing: 4), - trailing: Tooltip( - triggerMode: TooltipTriggerMode.tap, - message: merged ? i18n.export.lessonModeMergedTip : i18n.export.lessonModeSeparateTip, - child: Icon(context.icons.info), - ).padAll(8), - ); - } - - Widget buildAlarmToggle() { - return ListTile( - leading: const Icon(Icons.alarm), - title: i18n.export.enableAlarm.text(), - subtitle: i18n.export.enableAlarmDesc.text(), - trailing: Switch.adaptive( - value: enableAlarm, - onChanged: (newV) { - setState(() { - enableAlarm = newV; - }); - }, - ), - ); - } - - Widget buildAlarmModeSwitch() { - return ListTile( - isThreeLine: true, - enabled: enableAlarm, - title: i18n.export.alarmMode.text(), - subtitle: [ - ChoiceChip( - label: i18n.export.alarmModeSound.text(), - selected: !isDisplayAlarm, - onSelected: !enableAlarm - ? null - : (value) { - setState(() { - isDisplayAlarm = false; - }); - }, - ), - ChoiceChip( - label: i18n.export.alarmModeDisplay.text(), - selected: isDisplayAlarm, - onSelected: !enableAlarm - ? null - : (value) { - setState(() { - isDisplayAlarm = true; - }); - }, - ), - ].wrap(spacing: 4), - ); - } - - Widget buildAlarmDuration() { - return ListTile( - enabled: enableAlarm && !isDisplayAlarm, - title: i18n.export.alarmDuration.text(), - subtitle: i18n.time.minuteFormat(alarmDuration.inMinutes.toString()).text(), - trailing: Icon(context.icons.edit), - onTap: !enableAlarm - ? null - : () async { - final newDuration = await showDurationPicker( - context: context, - initialTime: alarmDuration, - ); - if (newDuration != null) { - setState(() { - alarmDuration = newDuration; - }); - } - }, - ); - } - - Widget buildAlarmBeforeClassStart() { - return ListTile( - enabled: enableAlarm, - title: i18n.export.alarmBeforeClassBegins.text(), - subtitle: i18n.export.alarmBeforeClassBeginsDesc(alarmBeforeClass).text(), - onTap: !enableAlarm - ? null - : () async { - final newDuration = await showDurationPicker( - context: context, - initialTime: alarmBeforeClass, - ); - if (newDuration != null) { - setState(() { - alarmBeforeClass = newDuration; - }); - } - }, - trailing: Icon(context.icons.edit), - ); - } -} diff --git a/lib/timetable/page/import.dart b/lib/timetable/page/import.dart deleted file mode 100644 index 09b01fd03..000000000 --- a/lib/timetable/page/import.dart +++ /dev/null @@ -1,257 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/credentials/entity/user_type.dart'; -import 'package:sit/credentials/init.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/animation/animated.dart'; -import 'package:sit/network/widgets/checker.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/school/widgets/semester.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/timetable/utils.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../i18n.dart'; -import '../entity/timetable.dart'; -import '../init.dart'; -import 'edit/editor.dart'; - -enum ImportStatus { - none, - importing, - end, - failed; -} - -/// It doesn't persist changes to storage before route popping. -class ImportTimetablePage extends ConsumerStatefulWidget { - const ImportTimetablePage({super.key}); - - @override - ConsumerState createState() => _ImportTimetablePageState(); -} - -class _ImportTimetablePageState extends ConsumerState { - bool canImport = false; - var _status = ImportStatus.none; - late SemesterInfo initial = estimateCurrentSemester(); - late SemesterInfo selected = initial; - - @override - void initState() { - super.initState(); - } - - @override - Widget build(BuildContext context) { - final isImporting = _status == ImportStatus.importing; - return Scaffold( - appBar: AppBar( - title: i18n.import.title.text(), - actions: [ - PlatformTextButton( - onPressed: importFromFile, - child: i18n.import.fromFileBtn.text(), - ), - ], - bottom: !isImporting - ? null - : const PreferredSize( - preferredSize: Size.fromHeight(4), - child: LinearProgressIndicator(), - ), - ), - body: (canImport - ? buildImportPage(key: const ValueKey("Import Timetable")) - : buildConnectivityChecker(context, const ValueKey("Connectivity Checker"))) - .animatedSwitched(), - ); - } - - Future importFromFile() async { - var timetable = await readTimetableFromPickedFileWithPrompt(context); - if (timetable == null) return; - if (!mounted) return; - timetable = await processImportedTimetable(context, timetable); - if (timetable == null) return; - if (!mounted) return; - context.pop(timetable); - } - - Widget buildConnectivityChecker(BuildContext ctx, Key? key) { - return ConnectivityChecker( - key: key, - iconSize: ctx.isPortrait ? 180 : 120, - initialDesc: i18n.import.connectivityCheckerDesc, - check: TimetableInit.service.checkConnectivity, - where: WhereToCheck.studentReg, - onConnected: () { - if (!mounted) return; - setState(() { - canImport = true; - }); - }, - ); - } - - Widget buildTip(BuildContext ctx) { - final tip = switch (_status) { - ImportStatus.none => i18n.import.selectSemesterTip, - ImportStatus.importing => i18n.import.importing, - ImportStatus.end => i18n.import.endTip, - ImportStatus.failed => i18n.import.failedTip, - }; - return tip - .text( - key: ValueKey(_status), - style: ctx.textTheme.titleLarge, - ) - .animatedSwitched(); - } - - Widget buildImportPage({Key? key}) { - final credentials = ref.watch(CredentialsInit.storage.$oaCredentials); - return [ - buildTip(context).padSymmetric(v: 30), - SemesterSelector( - baseYear: getAdmissionYearFromStudentId(credentials?.account), - initial: initial, - onSelected: (newSelection) { - setState(() { - selected = newSelection; - }); - }, - ).padSymmetric(v: 30), - buildImportButton(context).padAll(24), - ].column(key: key, maa: MainAxisAlignment.center, caa: CrossAxisAlignment.center); - } - - Future handleTimetableData( - SitTimetable timetable, - SemesterInfo info, - ) async { - final SemesterInfo(:exactYear, :semester) = info; - final defaultName = i18n.import.defaultName(semester.l10n(), exactYear.toString(), (exactYear + 1).toString()); - DateTime defaultStartDate = estimateStartDate(exactYear, semester); - final userType = ref.read(CredentialsInit.storage.$oaUserType); - if (userType == OaUserType.undergraduate) { - final current = estimateCurrentSemester(); - if (info == current) { - final span = await TimetableInit.service.getUgSemesterSpan(); - if (span != null) { - defaultStartDate = span.start; - } - } - } - timetable = timetable.copyWith( - name: defaultName, - semester: semester, - startDate: defaultStartDate, - schoolYear: exactYear, - signature: Settings.lastSignature, - ); - if (!mounted) return null; - final newTimetable = await processImportedTimetable(context, timetable); - if (newTimetable != null) { - return newTimetable; - } - return null; - } - - DateTime estimateStartDate(int year, Semester semester) { - if (semester == Semester.term1) { - return findFirstWeekdayInCurrentMonth(DateTime(year, 9), DateTime.monday); - } else { - return findFirstWeekdayInCurrentMonth(DateTime(year + 1, 2), DateTime.monday); - } - } - - Widget buildImportButton(BuildContext ctx) { - return PlatformElevatedButton( - onPressed: _status == ImportStatus.importing ? null : _onImport, - child: i18n.import.tryImportBtn.text(), - ); - } - - Future fetchTimetable(SemesterInfo info) async { - final userType = ref.read(CredentialsInit.storage.$oaUserType); - return switch (userType) { - OaUserType.undergraduate => TimetableInit.service.fetchUgTimetable(info), - OaUserType.postgraduate => TimetableInit.service.fetchPgTimetable(info), - OaUserType.other => throw Exception("Timetable importing not supported"), - _ => throw Exception("Timetable importing not supported"), - }; - } - - void _onImport() async { - setState(() { - _status = ImportStatus.importing; - }); - try { - final selected = this.selected; - final timetable = await fetchTimetable(selected); - if (!mounted) return; - setState(() { - _status = ImportStatus.end; - }); - final newTimetable = await handleTimetableData(timetable, selected); - if (!mounted) return; - context.pop(newTimetable); - } catch (e, stackTrace) { - if (e is ParallelWaitError) { - final inner = e.errors.$1 as AsyncError; - debugPrint(inner.toString()); - debugPrintStack(stackTrace: inner.stackTrace); - } else { - debugPrint(e.toString()); - debugPrintStack(stackTrace: stackTrace); - } - setState(() { - _status = ImportStatus.failed; - }); - if (!mounted) return; - await context.showTip(title: i18n.import.failed, desc: i18n.import.failedDesc, primary: i18n.ok); - } finally { - if (_status == ImportStatus.importing) { - setState(() { - _status = ImportStatus.end; - }); - } - } - } -} - -DateTime findFirstWeekdayInCurrentMonth(DateTime current, int weekday) { - // Calculate the first day of the current month while keeping the same year. - DateTime firstDayOfMonth = DateTime(current.year, current.month, 1); - - // Calculate the difference in days between the first day of the current month - // and the desired weekday. - int daysUntilWeekday = (weekday - firstDayOfMonth.weekday + 7) % 7; - - // Calculate the date of the first occurrence of the desired weekday in the current month. - DateTime firstWeekdayInMonth = firstDayOfMonth.add(Duration(days: daysUntilWeekday)); - - return firstWeekdayInMonth; -} - -Future processImportedTimetable( - BuildContext context, - SitTimetable timetable, { - bool useRootNavigator = false, -}) async { - final newTimetable = await context.showSheet( - (ctx) => TimetableEditorPage( - timetable: timetable, - ), - useRootNavigator: true, - dismissible: false, - ); - return newTimetable; -} diff --git a/lib/timetable/page/index.dart b/lib/timetable/page/index.dart deleted file mode 100644 index 3074ada56..000000000 --- a/lib/timetable/page/index.dart +++ /dev/null @@ -1,39 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; - -import '../init.dart'; -import '../widgets/style.dart'; -import 'mine.dart'; -import 'timetable.dart'; -import '../entity/timetable_entity.dart'; - -class TimetablePage extends ConsumerStatefulWidget { - const TimetablePage({super.key}); - - @override - ConsumerState createState() => _TimetablePageState(); -} - -final $selectedTimetableEntity = Provider.autoDispose((ref) { - final timetable = ref.watch(TimetableInit.storage.timetable.$selectedRow); - return timetable?.resolve(); -}); - -class _TimetablePageState extends ConsumerState { - @override - Widget build(BuildContext context) { - final selected = ref.watch($selectedTimetableEntity); - final selectedId = ref.watch(TimetableInit.storage.timetable.$selectedId); - if (selected == null || selectedId == null) { - // If no timetable selected, navigate to Mine page to select/import one. - return const MyTimetableListPage(); - } else { - return TimetableStyleProv( - child: TimetableBoardPage( - id: selectedId, - timetable: selected, - ), - ); - } - } -} diff --git a/lib/timetable/page/mine.dart b/lib/timetable/page/mine.dart deleted file mode 100644 index 51f8daf4e..000000000 --- a/lib/timetable/page/mine.dart +++ /dev/null @@ -1,489 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/widgets/entry_card.dart'; -import 'package:sit/design/widgets/fab.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/qrcode/page/view.dart'; -import 'package:sit/route.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/timetable/entity/patch.dart'; -import 'package:sit/timetable/page/ical.dart'; -import 'package:sit/timetable/palette.dart'; -import 'package:sit/timetable/qrcode/timetable.dart'; -import 'package:sit/timetable/widgets/course.dart'; -import 'package:sit/utils/format.dart'; -import 'package:text_scroll/text_scroll.dart'; -import 'package:universal_platform/universal_platform.dart'; - -import '../entity/platte.dart'; -import '../entity/timetable_entity.dart'; -import '../i18n.dart'; -import '../entity/timetable.dart'; -import '../init.dart'; -import '../utils.dart'; -import '../widgets/focus.dart'; -import '../widgets/style.dart'; -import 'import.dart'; -import 'preview.dart'; - -class MyTimetableListPage extends ConsumerStatefulWidget { - const MyTimetableListPage({super.key}); - - @override - ConsumerState createState() => _MyTimetableListPageState(); -} - -class _MyTimetableListPageState extends ConsumerState { - final scrollController = ScrollController(); - - @override - Widget build(BuildContext context) { - final storage = TimetableInit.storage.timetable; - final timetables = ref.watch(storage.$rows); - final selectedId = ref.watch(storage.$selectedId); - timetables.sort((a, b) => b.row.lastModified.compareTo(a.row.lastModified)); - final actions = [ - if (Settings.focusTimetable) - buildMoreActionsButton() - else - PlatformIconButton( - icon: const Icon(Icons.color_lens_outlined), - onPressed: () { - context.push("/timetable/p13n"); - }, - ), - ]; - return Scaffold( - body: CustomScrollView( - controller: scrollController, - slivers: [ - if (timetables.isEmpty) - SliverAppBar( - title: i18n.mine.title.text(), - actions: actions, - ) - else - SliverAppBar.medium( - title: i18n.mine.title.text(), - actions: actions, - ), - if (timetables.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.calendar_month_rounded, - desc: i18n.mine.emptyTip, - onIconTap: goImport, - ), - ) - else - SliverList.builder( - itemCount: timetables.length, - itemBuilder: (ctx, i) { - final (:id, row: timetable) = timetables[i]; - return TimetableCard( - id: id, - timetable: timetable, - selected: selectedId == id, - allTimetableNames: timetables.map((t) => t.row.name).toList(), - ).padH(6); - }, - ), - ], - ), - floatingActionButton: AutoHideFAB.extended( - controller: scrollController, - onPressed: goImport, - label: Text(isLoginGuarded(context) ? i18n.import.fromFile : i18n.import.import), - icon: Icon(context.icons.add), - ), - ); - } - - /// Import a new timetable. - /// Updates the selected timetable id. - /// If [TimetableSettings.autoUseImported] is enabled, the newly-imported will be used. - Future goImport() async { - SitTimetable? timetable; - final fromFile = isLoginGuarded(context); - if (fromFile) { - timetable = await importFromFile(); - } else { - timetable = await importFromSchoolServer(); - } - if (timetable == null) return; - // process timetable imported from file - // if (fromFile) { - // if (!mounted) return; - // final newTimetable = await processImportedTimetable(context, timetable); - // if (newTimetable == null) return; - // timetable = newTimetable; - // } - - // prevent duplicate names - // timetable = timetable.copyWith( - // name: allocValidFileName( - // timetable.name, - // all: TimetableInit.storage.timetable.getRows().map((e) => e.row.name).toList(growable: false), - // ), - // ); - final id = TimetableInit.storage.timetable.add(timetable); - - if (Settings.timetable.autoUseImported) { - TimetableInit.storage.timetable.selectedId = id; - } else { - // use this timetable if no one else - TimetableInit.storage.timetable.selectedId ??= id; - } - } - - Future importFromSchoolServer() async { - return await context.push("/timetable/import"); - } - - Future importFromFile() async { - final timetable = await readTimetableFromPickedFileWithPrompt(context); - if (timetable == null) return null; - if (!mounted) return null; - return timetable; - } - - Widget buildMoreActionsButton() { - final focusMode = Settings.focusTimetable; - return PullDownMenuButton( - itemBuilder: (ctx) => [ - PullDownItem( - icon: Icons.palette_outlined, - title: i18n.p13n.palette.title, - onTap: () async { - await context.push("/timetable/p13n"); - }, - ), - PullDownItem( - icon: Icons.view_comfortable_outlined, - title: i18n.p13n.cell.title, - onTap: () async { - await context.push("/timetable/cell-style"); - }, - ), - PullDownItem( - icon: Icons.image_outlined, - title: i18n.p13n.background.title, - onTap: () async { - await context.push("/timetable/background"); - }, - ), - if (focusMode) ...buildFocusPopupActions(context), - const PullDownDivider(), - PullDownSelectable( - title: i18n.focusTimetable, - selected: focusMode, - onTap: () async { - Settings.focusTimetable = !focusMode; - }, - ), - ], - ); - } -} - -Future editTimetablePatch({ - required BuildContext context, - required int id, - required SitTimetable timetable, -}) async { - var patches = await context.push>("/timetable/$id/edit/patch"); - if (patches == null) return; - TimetableInit.storage.timetable[id] = timetable - .copyWith( - patches: List.of(patches), - ) - .markModified(); -} - -class TimetableCard extends StatelessWidget { - final SitTimetable timetable; - final int id; - final bool selected; - final List? allTimetableNames; - - const TimetableCard({ - super.key, - required this.timetable, - required this.id, - required this.selected, - this.allTimetableNames, - }); - - @override - Widget build(BuildContext context) { - return EntryCard( - title: timetable.name, - selected: selected, - selectAction: (ctx) => EntrySelectAction( - selectLabel: i18n.use, - selectedLabel: i18n.used, - action: () async { - TimetableInit.storage.timetable.selectedId = id; - }, - ), - deleteAction: (ctx) => EntryAction.delete( - label: i18n.delete, - icon: context.icons.delete, - action: () async { - final confirm = await ctx.showActionRequest( - action: i18n.mine.deleteRequest, - desc: i18n.mine.deleteRequestDesc, - cancel: i18n.cancel, - destructive: true, - ); - if (confirm != true) return; - TimetableInit.storage.timetable.delete(id); - if (TimetableInit.storage.timetable.isEmpty) { - if (!ctx.mounted) return; - ctx.pop(); - } - }, - ), - actions: (ctx) => [ - if (!selected) - EntryAction( - main: true, - label: i18n.preview, - icon: ctx.icons.preview, - activator: const SingleActivator(LogicalKeyboardKey.keyP), - action: () async { - if (!ctx.mounted) return; - await context.showSheet( - (context) => TimetableStyleProv( - child: TimetablePreviewPage( - timetable: timetable, - ), - ), - ); - }, - ), - EntryAction.edit( - label: i18n.edit, - icon: context.icons.edit, - activator: const SingleActivator(LogicalKeyboardKey.keyE), - action: () async { - var newTimetable = await ctx.push("/timetable/$id/edit"); - if (newTimetable == null) return; - final newName = allocValidFileName(newTimetable.name); - if (newName != newTimetable.name) { - newTimetable = newTimetable.copyWith(name: newName); - } - TimetableInit.storage.timetable[id] = newTimetable.markModified(); - }, - ), - // share_plus: sharing files is not supported on Linux - if (!UniversalPlatform.isLinux) - EntryAction( - label: i18n.share, - icon: context.icons.share, - type: EntryActionType.share, - action: () async { - await exportTimetableFileAndShare(timetable, context: ctx); - }, - ), - EntryAction( - label: i18n.mine.exportCalendar, - icon: context.icons.calendar, - action: () async { - await onExportCalendar(ctx, timetable); - }, - ), - EntryAction( - label: i18n.mine.patch, - icon: Icons.dashboard_customize, - action: () async { - await editTimetablePatch(context: ctx, id: id, timetable: timetable); - }, - ), - if (kDebugMode) - EntryAction( - icon: context.icons.copy, - label: "[Dart] Timetable", - action: () async { - final code = timetable.toDartCode(); - debugPrint(code); - await Clipboard.setData(ClipboardData(text: code)); - }, - ), - if (!kIsWeb && Dev.on) - EntryAction( - icon: context.icons.qrcode, - label: i18n.shareQrCode, - action: () async { - final qrCodeData = const TimetableDeepLink().encode(timetable); - await context.showSheet( - (context) => QrCodePage( - title: TextScroll(timetable.name), - data: qrCodeData.toString(), - ), - ); - }, - ), - EntryAction( - label: i18n.duplicate, - oneShot: true, - icon: context.icons.copy, - activator: const SingleActivator(LogicalKeyboardKey.keyD), - action: () async { - final duplicate = timetable.copyWith( - name: getDuplicateFileName(timetable.name, all: allTimetableNames), lastModified: DateTime.now()); - TimetableInit.storage.timetable.add(duplicate); - }, - ), - ], - detailsBuilder: (ctx, actions) { - return TimetableStyleProv( - child: TimetableDetailsPage( - id: id, - timetable: timetable, - actions: actions?.call(ctx), - ), - ); - }, - itemBuilder: (ctx) { - return TimetableInfo(timetable: timetable); - }, - ); - } - - Future onExportCalendar(BuildContext context, SitTimetable timetable) async { - final config = await context.showSheet( - (context) => TimetableICalConfigEditor( - timetable: timetable, - ), - ); - if (config == null) return; - if (!context.mounted) return; - await exportTimetableAsICalendarAndOpen( - context, - timetable: timetable.resolve(), - config: config, - ); - } -} - -class TimetableInfo extends StatelessWidget { - final SitTimetable timetable; - - const TimetableInfo({ - super.key, - required this.timetable, - }); - - @override - Widget build(BuildContext context) { - final textTheme = context.textTheme; - final year = '${timetable.schoolYear}–${timetable.schoolYear + 1}'; - final semester = timetable.semester.l10n(); - - return [ - timetable.name.text(style: textTheme.titleLarge), - "$year, $semester".text(style: textTheme.titleMedium), - if (timetable.signature.isNotEmpty) timetable.signature.text(style: textTheme.bodyMedium), - "${i18n.startWith} ${context.formatYmdText(timetable.startDate)}".text(style: textTheme.bodyMedium), - ].column(caa: CrossAxisAlignment.start); - } -} - -class TimetableDetailsPage extends ConsumerWidget { - final int id; - final SitTimetable timetable; - final List? actions; - - const TimetableDetailsPage({ - super.key, - required this.id, - required this.timetable, - this.actions, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final timetable = ref.watch(TimetableInit.storage.timetable.$rowOf(id)) ?? this.timetable; - final resolver = SitTimetablePaletteResolver(timetable); - final palette = ref.watch(TimetableInit.storage.palette.$selectedRow) ?? BuiltinTimetablePalettes.classic; - final code2Courses = timetable.courses.values.groupListsBy((c) => c.courseCode).entries.toList(); - final style = TimetableStyle.of(context); - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TextScroll(timetable.name), - actions: actions, - ), - SliverList.list(children: [ - ListTile( - leading: const Icon(Icons.drive_file_rename_outline), - title: i18n.editor.name.text(), - subtitle: timetable.name.text(), - ), - ListTile( - leading: const Icon(Icons.date_range), - title: i18n.startWith.text(), - subtitle: context.formatYmdText(timetable.startDate).text(), - ), - ListTile( - leading: const Icon(Icons.drive_file_rename_outline), - title: i18n.signature.text(), - subtitle: timetable.signature.text(), - ), - ]), - if (code2Courses.isNotEmpty) const SliverToBoxAdapter(child: Divider()), - SliverList.builder( - itemCount: code2Courses.length, - itemBuilder: (ctx, i) { - final MapEntry(value: courses) = code2Courses[i]; - final template = courses.first; - final color = resolver.resolveColor(palette, template).byTheme(context.theme); - return TimetableCourseCard( - courses: courses, - courseName: template.courseName, - courseCode: template.courseCode, - classCode: template.classCode, - color: style.cellStyle.decorateColor(color, themeColor: ctx.colorScheme.primary), - ); - }, - ) - ], - ), - ); - } -} - -Future onTimetableFromFile({ - required BuildContext context, - required SitTimetable timetable, -}) async { - final newTimetable = await processImportedTimetable( - context, - timetable, - useRootNavigator: true, - ); - if (newTimetable == null) return; - final id = TimetableInit.storage.timetable.add(timetable); - if (Settings.timetable.autoUseImported) { - TimetableInit.storage.timetable.selectedId = id; - } else { - TimetableInit.storage.timetable.selectedId ??= id; - } - await HapticFeedback.mediumImpact(); - if (!context.mounted) return; - context.push("/timetable/mine"); -} diff --git a/lib/timetable/page/p13n/background.dart b/lib/timetable/page/p13n/background.dart deleted file mode 100644 index 424a41dad..000000000 --- a/lib/timetable/page/p13n/background.dart +++ /dev/null @@ -1,331 +0,0 @@ -import 'dart:async'; -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:image_picker/image_picker.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/files.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/timetable/entity/background.dart'; -import 'package:sit/utils/images.dart'; -import 'package:sit/utils/save.dart'; -import 'package:sit/widgets/modal_image_view.dart'; -import 'package:universal_platform/universal_platform.dart'; -import "../../i18n.dart"; - -/// It persists changes to storage before route popping -class TimetableBackgroundEditor extends StatefulWidget { - const TimetableBackgroundEditor({super.key}); - - @override - State createState() => _TimetableBackgroundEditorState(); -} - -class _TimetableBackgroundEditorState extends State with SingleTickerProviderStateMixin { - String? rawPath; - File? renderImageFile; - double opacity = 1.0; - bool repeat = true; - bool antialias = true; - late final AnimationController $opacity; - - _TimetableBackgroundEditorState() { - final bk = Settings.timetable.backgroundImage; - rawPath = bk?.path; - if (!kIsWeb) { - renderImageFile = bk?.path == null ? null : Files.timetable.backgroundFile; - } - opacity = bk?.opacity ?? 1.0; - repeat = bk?.repeat ?? true; - antialias = bk?.antialias ?? true; - } - - @override - void initState() { - super.initState(); - $opacity = AnimationController(vsync: this, value: opacity); - } - - @override - void dispose() { - $opacity.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final rawPath = this.rawPath; - final canSave = buildBackgroundImage() != Settings.timetable.backgroundImage; - return PromptSaveBeforeQuitScope( - changed: canSave, - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.p13n.background.title.text(), - actions: [ - PlatformTextButton( - onPressed: !canSave ? null : onSave, - child: i18n.save.text(), - ), - ], - ), - SliverList.list(children: [ - buildImage().padH(10), - buildToolBar().padV(4), - if (rawPath != null && (Dev.on || (UniversalPlatform.isDesktop || kIsWeb))) - ListTile( - title: i18n.p13n.background.selectedImage.text(), - subtitle: rawPath.text(), - ), - buildOpacity(), - buildRepeat(), - buildAntialias(), - ]), - ], - ), - ), - ); - } - - Future onSave() async { - if (kIsWeb) { - await onSaveWeb(); - } else { - await onSaveIo(); - } - } - - Future onSaveWeb() async { - final background = buildBackgroundImage(); - if (background == null) { - Settings.timetable.backgroundImage = background; - context.pop(null); - return; - } - final img = NetworkImage(background.path); - Settings.timetable.backgroundImage = background; - await precacheImage(img, context); - if (!mounted) return; - context.pop(background); - } - - Future onSaveIo() async { - final background = buildBackgroundImage(); - final img = FileImage(Files.timetable.backgroundFile); - if (background == null) { - if (await Files.timetable.backgroundFile.exists()) { - await Files.timetable.backgroundFile.delete(); - } - await img.evict(); - Settings.timetable.backgroundImage = null; - if (!mounted) return; - context.pop(null); - return; - } - final renderImageFile = this.renderImageFile; - if (renderImageFile == null) return; - Settings.timetable.backgroundImage = background; - if (renderImageFile.path != Files.timetable.backgroundFile.path) { - await copyCompressedImageToTarget( - source: renderImageFile, - target: Files.timetable.backgroundFile.path, - ); - await img.evict(); - if (!mounted) return; - await precacheImage(img, context); - } - if (!mounted) return; - context.pop(background); - } - - Future chooseImage() async { - if (kIsWeb) { - await inputImageUrl(); - } else { - await pickImage(); - } - } - - Future inputImageUrl() async { - final url = await Editor.showStringEditor( - context, - desc: i18n.p13n.background.imageURL, - initial: rawPath ?? "", - ); - if (url == null) return; - final uri = Uri.tryParse(url); - if (!mounted) return; - if (uri == null || !uri.isScheme("http") && !uri.isScheme("https")) { - await context.showTip( - title: i18n.p13n.background.invalidURL, - desc: i18n.p13n.background.invalidURLDesc, - primary: i18n.ok, - ); - return; - } - setState(() { - rawPath = uri.toString(); - }); - } - - Future pickImage() async { - final picker = ImagePicker(); - final XFile? fi = await picker.pickImage( - source: ImageSource.gallery, - requestFullMetadata: false, - ); - if (fi == null) return; - if (!mounted) return; - setState(() { - rawPath = fi.path; - renderImageFile = File(fi.path); - }); - setOpacity(opacity); - } - - BackgroundImage? buildBackgroundImage() { - final path = rawPath; - if (path == null) return null; - return BackgroundImage( - path: path, - opacity: opacity, - repeat: repeat, - antialias: antialias, - ); - } - - Widget buildToolBar() { - return [ - FilledButton.icon( - onPressed: chooseImage, - icon: Icon(context.icons.create), - label: i18n.choose.text(), - ), - OutlinedButton.icon( - onPressed: (kIsWeb ? rawPath == null : renderImageFile == null) - ? null - : () { - setState(() { - rawPath = null; - renderImageFile = null; - }); - }, - icon: Icon(context.icons.delete), - label: i18n.delete.text(), - ), - ].row(maa: MainAxisAlignment.spaceEvenly); - } - - Widget buildImage() { - return Card.outlined( - clipBehavior: Clip.hardEdge, - child: buildPreviewBoxContent(), - ); - } - - Widget buildPreviewBoxContent() { - final renderImageFile = this.renderImageFile; - final height = context.mediaQuery.size.height / 3; - final rawPath = this.rawPath; - final filterQuality = antialias ? FilterQuality.low : FilterQuality.none; - if (renderImageFile != null) { - return ModalImageViewer( - hereTag: rawPath, - child: Image.file( - renderImageFile, - opacity: $opacity, - height: height, - filterQuality: filterQuality, - ), - ); - } else if (kIsWeb && rawPath != null) { - return ModalImageViewer( - hereTag: rawPath, - child: Image.network( - rawPath, - opacity: $opacity, - height: height, - filterQuality: filterQuality, - ), - ); - } else { - return LeavingBlank( - icon: Icons.add_photo_alternate_outlined, - desc: i18n.p13n.background.pickTip, - onIconTap: renderImageFile == null ? chooseImage : null, - ).sized(h: height); - } - } - - void setOpacity(double newValue) { - setState(() { - opacity = newValue; - }); - $opacity.animateTo( - newValue, - duration: Durations.short3, - ); - } - - Widget buildOpacity() { - final value = opacity; - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.invert_colors), - title: i18n.p13n.background.opacity.text(), - trailing: "${(value * 100).toInt()}%".toString().text(), - subtitle: Slider( - min: 0.0, - max: 1.0, - divisions: 255, - label: "${(value * 100).toInt()}%", - value: value, - onChanged: (double value) { - setOpacity(value); - }, - ), - ); - } - - Widget buildRepeat() { - return ListTile( - leading: const Icon(Icons.repeat), - title: i18n.p13n.background.repeat.text(), - subtitle: i18n.p13n.background.repeatDesc.text(), - trailing: Switch.adaptive( - value: repeat, - onChanged: (newV) { - setState(() { - repeat = newV; - }); - }, - ), - ); - } - - Widget buildAntialias() { - return ListTile( - leading: const Icon(Icons.landscape), - title: i18n.p13n.background.antialias.text(), - subtitle: i18n.p13n.background.antialiasDesc.text(), - trailing: Switch.adaptive( - value: antialias, - onChanged: (newV) { - setState(() { - antialias = newV; - }); - }, - ), - ); - } -} diff --git a/lib/timetable/page/p13n/cell_style.dart b/lib/timetable/page/p13n/cell_style.dart deleted file mode 100644 index c62e65930..000000000 --- a/lib/timetable/page/p13n/cell_style.dart +++ /dev/null @@ -1,146 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/cell_style.dart'; -import '../../widgets/style.dart'; -import '../../i18n.dart'; -import 'palette.dart'; - -/// It persists changes to storage before route popping -class TimetableCellStyleEditor extends StatefulWidget { - const TimetableCellStyleEditor({super.key}); - - @override - State createState() => _TimetableCellStyleEditorState(); -} - -class _TimetableCellStyleEditorState extends State { - var cellStyle = Settings.timetable.cellStyle ?? const CourseCellStyle(); - var canSave = false; - @override - Widget build(BuildContext context) { - final old = Settings.timetable.cellStyle; - final canSave = old != buildCellStyle(); - return PromptSaveBeforeQuitScope( - changed: canSave, - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.p13n.cell.title.text(), - actions: [ - PlatformTextButton( - onPressed: !canSave ? null : onSave, - child: i18n.save.text(), - ), - ], - ), - SliverToBoxAdapter( - child: TimetableStyleProv( - cellStyle: buildCellStyle(), - child: const TimetableP13nLivePreview(), - ), - ), - SliverList.list(children: [ - buildTeachersToggle(), - buildGrayOutPassedLesson(), - buildHarmonizeWithThemeColor(), - buildAlpha(), - ]), - ], - ), - ), - ); - } - - void onSave() { - final cellStyle = buildCellStyle(); - Settings.timetable.cellStyle = cellStyle; - if (!mounted) return; - context.pop(cellStyle); - } - - CourseCellStyle buildCellStyle() { - return CourseCellStyle( - showTeachers: cellStyle.showTeachers, - grayOutTakenLessons: cellStyle.grayOutTakenLessons, - harmonizeWithThemeColor: cellStyle.harmonizeWithThemeColor, - alpha: cellStyle.alpha, - ); - } - - Widget buildTeachersToggle() { - return ListTile( - leading: const Icon(Icons.person_pin), - title: i18n.p13n.cell.showTeachers.text(), - subtitle: i18n.p13n.cell.showTeachersDesc.text(), - trailing: Switch.adaptive( - value: cellStyle.showTeachers, - onChanged: (newV) { - setState(() { - cellStyle = cellStyle.copyWith(showTeachers: newV); - }); - }, - ), - ); - } - - Widget buildGrayOutPassedLesson() { - return ListTile( - leading: const Icon(Icons.timelapse), - title: i18n.p13n.cell.grayOut.text(), - subtitle: i18n.p13n.cell.grayOutDesc.text(), - trailing: Switch.adaptive( - value: cellStyle.grayOutTakenLessons, - onChanged: (newV) { - setState(() { - cellStyle = cellStyle.copyWith(grayOutTakenLessons: newV); - }); - }, - ), - ); - } - - Widget buildHarmonizeWithThemeColor() { - return ListTile( - leading: const Icon(Icons.format_color_fill), - title: i18n.p13n.cell.harmonize.text(), - subtitle: i18n.p13n.cell.harmonizeDesc.text(), - trailing: Switch.adaptive( - value: cellStyle.harmonizeWithThemeColor, - onChanged: (newV) { - setState(() { - cellStyle = cellStyle.copyWith(harmonizeWithThemeColor: newV); - }); - }, - ), - ); - } - - Widget buildAlpha() { - final value = cellStyle.alpha; - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.invert_colors), - title: i18n.p13n.cell.alpha.text(), - trailing: "${(value * 100).toInt()}%".toString().text(), - subtitle: Slider( - min: 0.0, - max: 1.0, - divisions: 255, - label: "${(value * 100).toInt()}%", - value: value, - onChanged: (double value) { - setState(() { - cellStyle = cellStyle.copyWith(alpha: value); - }); - }, - ), - ); - } -} diff --git a/lib/timetable/page/p13n/palette.dart b/lib/timetable/page/p13n/palette.dart deleted file mode 100644 index 32a1945e1..000000000 --- a/lib/timetable/page/p13n/palette.dart +++ /dev/null @@ -1,533 +0,0 @@ -import 'package:carousel_slider/carousel_slider.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/entry_card.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/qrcode/page/view.dart'; -import 'package:sit/timetable/entity/platte.dart'; -import 'package:sit/timetable/entity/timetable.dart'; -import 'package:sit/timetable/init.dart'; -import 'package:sit/timetable/palette.dart'; -import 'package:sit/utils/format.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../../i18n.dart'; -import '../../qrcode/palette.dart'; -import '../../widgets/style.dart'; -import '../../widgets/timetable/weekly.dart'; -import 'palette_editor.dart'; -import '../preview.dart'; - -class TimetableP13nPage extends ConsumerStatefulWidget { - final int? tab; - - const TimetableP13nPage({ - super.key, - this.tab, - }) : assert(tab == null || (0 <= tab && tab < TimetableP13nTab.length), "#$tab tab not found"); - - @override - ConsumerState createState() => _TimetableP13nPageState(); -} - -class TimetableP13nTab { - static const length = 2; - static const custom = 0; - static const builtin = 1; -} - -class _TimetableP13nPageState extends ConsumerState with SingleTickerProviderStateMixin { - late final TabController tabController; - - @override - void initState() { - super.initState(); - tabController = TabController(vsync: this, length: TimetableP13nTab.length); - final selectedId = TimetableInit.storage.palette.selectedId; - final forceTab = widget.tab; - if (forceTab != null) { - tabController.index = forceTab.clamp(TimetableP13nTab.custom, TimetableP13nTab.builtin); - } else if (selectedId == null || BuiltinTimetablePalettes.all.any((palette) => palette.id == selectedId)) { - tabController.index = TimetableP13nTab.builtin; - } - } - - @override - void dispose() { - tabController.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final palettes = ref.watch(TimetableInit.storage.palette.$rows); - return Scaffold( - floatingActionButton: FloatingActionButton.extended( - label: i18n.p13n.palette.fab.text(), - icon: Icon(context.icons.add), - onPressed: addPalette, - ), - body: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - // These are the slivers that show up in the "outer" scroll view. - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.p13n.palette.title.text(), - forceElevated: innerBoxIsScrolled, - bottom: TabBar( - controller: tabController, - isScrollable: true, - tabs: [ - Tab(child: i18n.p13n.palette.customTab.text()), - Tab(child: i18n.p13n.palette.builtinTab.text()), - ], - ), - ), - ), - ]; - }, - body: TabBarView( - controller: tabController, - children: [ - buildPaletteList(palettes), - buildPaletteList(BuiltinTimetablePalettes.all.map((e) => (id: e.id, row: e)).toList()), - ], - ), - ), - ); - } - - Future addPalette() async { - final palette = TimetablePalette( - name: i18n.p13n.palette.newPaletteName, - author: "", - colors: [], - lastModified: DateTime.now(), - ); - TimetableInit.storage.palette.add(palette); - tabController.index = TimetableP13nTab.custom; - } - - Widget buildPaletteList(List<({int id, TimetablePalette row})> palettes) { - final selectedId = ref.watch(TimetableInit.storage.palette.$selectedId) ?? BuiltinTimetablePalettes.classic.id; - final selectedTimetable = ref.watch(TimetableInit.storage.timetable.$selectedRow); - palettes.sort((a, b) => b.row.lastModified.compareTo(a.row.lastModified)); - return CustomScrollView( - slivers: [ - SliverList.builder( - itemCount: palettes.length, - itemBuilder: (ctx, i) { - final (:id, row: palette) = palettes[i]; - return PaletteCard( - id: id, - palette: palette, - timetable: selectedTimetable, - selected: selectedId == id, - onDuplicate: () { - tabController.index = TimetableP13nTab.custom; - }, - allPaletteNames: palettes.map((p) => p.row.name).toList(), - ).padH(6); - }, - ), - ], - ); - } -} - -class PaletteCard extends StatelessWidget { - final int id; - final TimetablePalette palette; - final bool selected; - final SitTimetable? timetable; - final VoidCallback? onDuplicate; - final List? allPaletteNames; - - const PaletteCard({ - super.key, - required this.id, - required this.palette, - required this.selected, - this.timetable, - this.onDuplicate, - this.allPaletteNames, - }); - - @override - Widget build(BuildContext context) { - final timetable = this.timetable; - return EntryCard( - title: palette.name, - selected: selected, - selectAction: (ctx) => palette.colors.isEmpty - ? null - : EntrySelectAction( - selectLabel: i18n.use, - selectedLabel: i18n.used, - action: () async { - TimetableInit.storage.palette.selectedId = id; - }, - ), - deleteAction: palette is BuiltinTimetablePalette - ? null - : (ctx) => EntryAction.delete( - label: i18n.delete, - icon: context.icons.delete, - action: () async { - final confirm = await ctx.showDialogRequest( - title: i18n.p13n.palette.deleteRequest, - desc: i18n.p13n.palette.deleteRequestDesc, - primary: i18n.delete, - secondary: i18n.cancel, - primaryDestructive: true, - ); - if (confirm == true) { - TimetableInit.storage.palette.delete(id); - } - }, - ), - actions: (ctx) => [ - if (palette is! BuiltinTimetablePalette) - EntryAction.edit( - main: true, - label: i18n.edit, - icon: context.icons.edit, - activator: const SingleActivator(LogicalKeyboardKey.keyE), - action: () async { - var newPalette = await context.push("/timetable/palette/$id/edit"); - if (newPalette != null) { - final newName = allocValidFileName(newPalette.name); - if (newName != newPalette.name) { - newPalette = newPalette - .copyWith( - name: newName, - colors: List.of(newPalette.colors), - ) - .markModified(); - } - TimetableInit.storage.palette[id] = newPalette; - } - }, - ), - if (timetable != null && palette.colors.isNotEmpty) - EntryAction( - label: i18n.preview, - icon: isCupertino ? CupertinoIcons.eye : Icons.preview, - activator: const SingleActivator(LogicalKeyboardKey.keyP), - action: () async { - await context.showSheet( - (context) => TimetableStyleProv( - palette: palette, - child: TimetablePreviewPage( - timetable: timetable, - ), - ), - ); - }, - ), - EntryAction( - label: i18n.duplicate, - icon: context.icons.copy, - oneShot: true, - activator: const SingleActivator(LogicalKeyboardKey.keyD), - action: () async { - final duplicate = palette - .copyWith( - name: allocValidFileName(palette.name, all: allPaletteNames), - author: palette.author, - colors: List.of(palette.colors), - ) - .markModified(); - TimetableInit.storage.palette.add(duplicate); - onDuplicate?.call(); - }, - ), - // Uint64 is not supporting on web - if (!kIsWeb) - EntryAction( - label: i18n.shareQrCode, - icon: context.icons.qrcode, - action: () async { - final qrCodeData = const TimetablePaletteDeepLink().encode(palette); - await ctx.showSheet( - (context) => QrCodePage( - title: palette.name.text(), - data: qrCodeData.toString(), - ), - ); - }, - ), - if (kDebugMode) - EntryAction( - icon: context.icons.copy, - label: "Copy Dart code", - action: () async { - final code = palette.colors.toString(); - debugPrint(code); - await Clipboard.setData(ClipboardData(text: code)); - }, - ), - ], - detailsBuilder: (ctx, actions) { - return PaletteDetailsPage( - id: id, - palette: palette, - actions: actions?.call(ctx), - ); - }, - itemBuilder: (ctx) { - return PaletteInfo(palette: palette); - }, - ); - } -} - -class PaletteInfo extends StatelessWidget { - final TimetablePalette palette; - - const PaletteInfo({ - super.key, - required this.palette, - }); - - @override - Widget build(BuildContext context) { - return [ - palette.name.text(style: context.textTheme.titleLarge), - if (palette.author.isNotEmpty) - palette.author.text( - style: const TextStyle( - fontStyle: FontStyle.italic, - ), - ), - PaletteColorsPreview(palette.colors), - ].column(caa: CrossAxisAlignment.start); - } -} - -class PaletteDetailsPage extends ConsumerWidget { - final int id; - final TimetablePalette palette; - final List? actions; - - const PaletteDetailsPage({ - super.key, - required this.id, - required this.palette, - this.actions, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final palette = ref.watch(TimetableInit.storage.palette.$rowOf(id)) ?? this.palette; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TextScroll(palette.name), - actions: actions, - ), - SliverList.list(children: [ - ListTile( - leading: const Icon(Icons.drive_file_rename_outline), - title: i18n.p13n.palette.name.text(), - subtitle: palette.name.text(), - ), - if (palette.author.isNotEmpty) - ListTile( - leading: const Icon(Icons.person), - title: i18n.p13n.palette.author.text(), - subtitle: palette.author.text(), - ), - if (palette.colors.isNotEmpty) const Divider(), - if (palette.colors.isNotEmpty) - TimetableStyleProv( - palette: palette, - child: const TimetableP13nLivePreview(), - ), - const Divider(), - const LightDarkColorsHeaderTitle(), - ]), - SliverList.builder( - itemCount: palette.colors.length, - itemBuilder: (ctx, i) { - return PaletteColorTile(colors: palette.colors[i]); - }, - ) - ], - ), - ); - } -} - -class PaletteColorsPreview extends StatelessWidget { - final List colors; - - const PaletteColorsPreview(this.colors, {super.key}); - - @override - Widget build(BuildContext context) { - final brightness = context.theme.brightness; - return colors - .map((c) { - final color = c.byBrightness(brightness); - return Card.outlined( - margin: EdgeInsets.zero, - child: TweenAnimationBuilder( - tween: ColorTween(begin: color, end: color), - duration: const Duration(milliseconds: 300), - builder: (ctx, value, child) => Card.filled( - margin: EdgeInsets.zero, - color: value, - child: const SizedBox( - width: 32, - height: 32, - ), - ), - ), - ); - }) - .toList() - .wrap(spacing: 4, runSpacing: 4) - .padV(4); - } -} - -class TimetableP13nLivePreview extends StatelessWidget { - const TimetableP13nLivePreview({ - super.key, - }); - - @override - Widget build(BuildContext context) { - return LayoutBuilder(builder: (ctx, box) { - final height = box.maxHeight.isFinite ? box.maxHeight : context.mediaQuery.size.height / 2; - return buildLivePreview(context, fullSize: Size(box.maxWidth, height)); - }); - } - - Widget buildLivePreview( - BuildContext context, { - required Size fullSize, - }) { - final style = TimetableStyle.of(context); - final cellStyle = style.cellStyle; - final palette = style.platte; - final cellSize = Size(fullSize.width / 5, fullSize.height / 3); - final themeColor = context.colorScheme.primary; - Widget buildCell({ - required int colorId, - required String name, - required String place, - required List teachers, - bool grayOut = false, - }) { - var color = palette.safeGetColor(colorId).byTheme(context.theme); - color = cellStyle.decorateColor(color, themeColor: themeColor, isLessonTaken: grayOut); - return TweenAnimationBuilder( - tween: ColorTween(begin: color, end: color), - duration: const Duration(milliseconds: 300), - builder: (ctx, value, child) => CourseCell( - courseName: name, - color: value!, - place: place, - teachers: cellStyle.showTeachers ? teachers : null, - ), - ); - } - - Widget livePreview( - int index, { - required int colorId, - bool grayOut = false, - }) { - final data = i18n.p13n.livePreview(index); - return buildCell( - colorId: colorId, - name: data.name, - place: data.place, - teachers: data.teachers, - grayOut: grayOut, - ); - } - - final grayOut = cellStyle.grayOutTakenLessons; - return CarouselSlider.builder( - itemCount: palette.colors.length, - options: CarouselOptions( - height: cellSize.height, - viewportFraction: 0.24, - // FIXME: https://github.com/serenader2014/flutter_carousel_slider/issues/291 - enableInfiniteScroll: true, - padEnds: false, - autoPlay: true, - autoPlayInterval: const Duration(milliseconds: 1500), - autoPlayCurve: Curves.fastEaseInToSlowEaseOut, - ), - itemBuilder: (BuildContext context, int i, int pageViewIndex) { - return livePreview(i % 4, colorId: i, grayOut: grayOut && i % 4 < 2).padH(8); - }, - ); - } -} - -class BrightnessSwitch extends StatelessWidget { - final ValueNotifier $brightness; - - const BrightnessSwitch( - this.$brightness, { - super.key, - }); - - @override - Widget build(BuildContext context) { - return $brightness >> - (ctx, brightness) => SegmentedButton( - segments: [ - ButtonSegment( - value: Brightness.light, - label: Brightness.light.l10n().text(), - icon: const Icon(Icons.light_mode), - ), - ButtonSegment( - value: Brightness.dark, - label: Brightness.dark.l10n().text(), - icon: const Icon(Icons.dark_mode), - ), - ], - selected: {brightness}, - onSelectionChanged: (newSelection) async { - $brightness.value = newSelection.first; - await HapticFeedback.selectionClick(); - }, - ); - } -} - -Future onTimetablePaletteFromQrCode({ - required BuildContext context, - required TimetablePalette palette, -}) async { - final newPalette = await context.showSheet( - (ctx) => TimetablePaletteEditorPage(palette: palette), - dismissible: false, - useRootNavigator: true, - ); - if (newPalette == null) return; - TimetableInit.storage.palette.add(newPalette); - await HapticFeedback.mediumImpact(); - if (!context.mounted) return; - context.push("/timetable/p13n/custom"); -} diff --git a/lib/timetable/page/p13n/palette_editor.dart b/lib/timetable/page/p13n/palette_editor.dart deleted file mode 100644 index f79ab17fb..000000000 --- a/lib/timetable/page/p13n/palette_editor.dart +++ /dev/null @@ -1,350 +0,0 @@ -import 'package:flex_color_picker/flex_color_picker.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart' hide isCupertino; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/adaptive/swipe.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/timetable/page/preview.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/platte.dart'; -import '../../i18n.dart'; -import '../../init.dart'; -import '../../widgets/style.dart'; - -/// [TimetablePalette] object will be popped. -class TimetablePaletteEditorPage extends ConsumerStatefulWidget { - final TimetablePalette palette; - - const TimetablePaletteEditorPage({ - super.key, - required this.palette, - }); - - @override - ConsumerState createState() => _TimetablePaletteEditorPageState(); -} - -class _Tab { - static const length = 2; - static const info = 0; - static const colors = 1; -} - -class _TimetablePaletteEditorPageState extends ConsumerState { - late final $name = TextEditingController(text: widget.palette.name); - late final $author = TextEditingController(text: widget.palette.author); - late var colors = widget.palette.colors; - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - @override - void initState() { - super.initState(); - $name.addListener(() { - if ($name.text != widget.palette.name) { - setState(() => markChanged()); - } - }); - $author.addListener(() { - if ($author.text != widget.palette.author) { - setState(() => markChanged()); - } - }); - } - - @override - void dispose() { - $name.dispose(); - $author.dispose(); - super.dispose(); - } - - - @override - Widget build(BuildContext context) { - final timetable = ref.watch(TimetableInit.storage.timetable.$selectedRow); - return PromptSaveBeforeQuitScope( - changed: anyChanged, - onSave: onSave, - child: Scaffold( - body: DefaultTabController( - length: _Tab.length, - child: NestedScrollView( - floatHeaderSlivers: true, - headerSliverBuilder: (context, innerBoxIsScrolled) { - return [ - SliverOverlapAbsorber( - handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context), - sliver: SliverAppBar( - floating: true, - title: i18n.p13n.palette.title.text(), - actions: [ - if (timetable != null && colors.isNotEmpty) - PlatformTextButton( - child: i18n.preview.text(), - onPressed: () async { - await context.showSheet( - (context) => TimetableStyleProv( - palette: buildPalette(), - child: TimetablePreviewPage( - timetable: timetable, - ), - ), - ); - }, - ), - PlatformTextButton( - onPressed: onSave, - child: i18n.save.text(), - ), - ], - forceElevated: innerBoxIsScrolled, - bottom: TabBar( - isScrollable: true, - tabs: [ - Tab(child: i18n.p13n.palette.infoTab.text()), - Tab(child: i18n.p13n.palette.colorsTab.text()), - ], - ), - ), - ), - ]; - }, - body: TabBarView( - children: [ - CustomScrollView( - slivers: [ - SliverList.list(children: [ - buildName(), - buildAuthor(), - ]), - ], - ), - CustomScrollView( - slivers: [ - const SliverToBoxAdapter( - child: LightDarkColorsHeaderTitle(), - ), - SliverList.builder( - itemCount: colors.length, - itemBuilder: buildColorTile, - ), - SliverList.list(children: [ - const Divider(indent: 12, endIndent: 12), - ListTile( - leading: Icon(context.icons.add), - title: i18n.p13n.palette.addColor.text(), - onTap: () { - setState(() { - colors.add(TimetablePalette.defaultColor); - }); - markChanged(); - }, - ), - ]), - ], - ) - ], - ), - ), - ), - ), - ); - } - - void onSave() { - final palette = buildPalette(); - context.navigator.pop(palette); - } - - TimetablePalette buildPalette() { - return TimetablePalette( - name: $name.text, - author: $author.text, - colors: colors, - lastModified: DateTime.now(), - ); - } - - Widget buildColorTile(BuildContext ctx, int index) { - Future changeColor(Color old, Brightness brightness) async { - final newColor = await showColorPickerDialog( - ctx, - old, - enableOpacity: true, - enableShadesSelection: true, - enableTonalPalette: true, - showColorCode: true, - pickersEnabled: const { - ColorPickerType.both: true, - ColorPickerType.primary: false, - ColorPickerType.accent: false, - ColorPickerType.custom: true, - ColorPickerType.wheel: true, - }, - ); - if (newColor != old) { - await HapticFeedback.mediumImpact(); - setState(() { - if (brightness == Brightness.light) { - colors[index] = (light: newColor, dark: colors[index].dark); - } else { - colors[index] = (light: colors[index].light, dark: newColor); - } - }); - } - } - - final current = colors[index]; - return WithSwipeAction( - childKey: ObjectKey(current), - right: SwipeAction.delete( - icon: context.icons.delete, - action: () async { - setState(() { - colors.removeAt(index); - }); - markChanged(); - }, - ), - child: PaletteColorTile( - colors: current, - onEdit: (old, brightness) async { - await changeColor(old, brightness); - markChanged(); - }, - ), - ); - } - - Widget buildName() { - return ListTile( - isThreeLine: true, - title: i18n.p13n.palette.name.text(), - subtitle: TextField( - controller: $name, - decoration: InputDecoration( - hintText: i18n.p13n.palette.namePlaceholder, - ), - ), - ); - } - - Widget buildAuthor() { - return ListTile( - isThreeLine: true, - title: i18n.p13n.palette.author.text(), - subtitle: TextField( - controller: $author, - decoration: InputDecoration( - hintText: i18n.p13n.palette.authorPlaceholder, - ), - ), - ); - } -} - -class LightDarkColorsHeaderTitle extends StatelessWidget { - const LightDarkColorsHeaderTitle({super.key}); - - @override - Widget build(BuildContext context) { - return ListTile( - title: [ - [const Icon(Icons.light_mode), Brightness.light.l10n().text()].row(mas: MainAxisSize.min), - [const Icon(Icons.dark_mode), Brightness.dark.l10n().text()].row(mas: MainAxisSize.min), - ].row(maa: MainAxisAlignment.spaceBetween), - ); - } -} - -class PaletteColorTile extends StatelessWidget { - final Color2Mode colors; - final void Function(Color old, Brightness brightness)? onEdit; - - const PaletteColorTile({ - super.key, - required this.colors, - this.onEdit, - }); - - @override - Widget build(BuildContext context) { - final (:light, :dark) = colors; - return ListTile( - isThreeLine: true, - visualDensity: VisualDensity.compact, - title: [ - "#${light.hexAlpha}".text(), - "#${dark.hexAlpha}".text(), - ].row(maa: MainAxisAlignment.spaceBetween), - subtitle: [ - PaletteColorBar( - color: light, - brightness: Brightness.light, - onEdit: onEdit, - ).expanded(), - const SizedBox(width: 5), - PaletteColorBar( - color: dark, - brightness: Brightness.dark, - onEdit: onEdit, - ).expanded(), - ].row(mas: MainAxisSize.min, maa: MainAxisAlignment.spaceEvenly), - ); - } -} - -class PaletteColorBar extends StatelessWidget { - final Color color; - final Brightness brightness; - final void Function(Color old, Brightness brightness)? onEdit; - - const PaletteColorBar({ - super.key, - required this.color, - required this.brightness, - this.onEdit, - }); - - @override - Widget build(BuildContext context) { - final onEdit = this.onEdit; - // final textColor = color.resolveTextColorForReadability(); - final textColor = brightness == Brightness.light ? Colors.black : Colors.white; - return Card.outlined( - color: textColor, - margin: EdgeInsets.zero, - child: Card.filled( - color: color, - clipBehavior: Clip.hardEdge, - margin: EdgeInsets.zero, - child: InkWell( - onTap: onEdit == null - ? null - : () { - onEdit.call(color, brightness); - }, - onLongPress: () async { - await Clipboard.setData(ClipboardData(text: "#${color.hexAlpha}")); - if (!context.mounted) return; - context.showSnackBar(content: i18n.copyTipOf(i18n.p13n.palette.color).text()); - }, - child: SizedBox( - height: 35, - child: - // "${brightness.l10n()} ${calculateContrastRatio(textColor!, color).toStringAsFixed(2)}" - brightness.l10n().text(style: context.textTheme.bodyLarge?.copyWith(color: textColor)).center(), - ), - ), - ), - ); - } -} diff --git a/lib/timetable/page/patch/patch.dart b/lib/timetable/page/patch/patch.dart deleted file mode 100644 index 3d9ceda60..000000000 --- a/lib/timetable/page/patch/patch.dart +++ /dev/null @@ -1,353 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:reorderables/reorderables.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/adaptive/swipe.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/timetable/widgets/patch/shared.dart'; -import 'package:sit/utils/format.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/patch.dart'; -import 'patch_prefab.dart'; -import '../../entity/timetable.dart'; -import '../../i18n.dart'; -import '../../widgets/patch/patch_set.dart'; -import '../preview.dart'; - -class TimetablePatchEditorPage extends StatefulWidget { - final SitTimetable timetable; - - const TimetablePatchEditorPage({ - super.key, - required this.timetable, - }); - - @override - State createState() => _TimetablePatchEditorPageState(); -} - -class _TimetablePatchEditorPageState extends State { - late var patches = List.of(widget.timetable.patches); - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - @override - Widget build(BuildContext context) { - return PromptSaveBeforeQuitScope( - changed: anyChanged, - onSave: onSave, - child: Scaffold( - resizeToAvoidBottomInset: false, - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.patch.title.text(), - actions: [ - PlatformTextButton( - onPressed: onSave, - child: i18n.save.text(), - ), - buildMoreActions(), - ], - ), - if (patches.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.dashboard_customize, - desc: i18n.patch.noPatchesTip, - onIconTap: openPrefab, - ), - ) - else - ReorderableSliverList( - onReorder: (int oldIndex, int newIndex) { - setState(() { - final patch = patches.removeAt(oldIndex); - patches.insert(newIndex, patch); - }); - markChanged(); - }, - delegate: ReorderableSliverChildBuilderDelegate( - childCount: patches.length, - (context, i) { - final patch = patches[i]; - final timetable = widget.timetable.copyWith(patches: patches.sublist(0, i + 1)); - return buildPatchEntry(patch, i, timetable); - }, - ), - ), - ], - ), - bottomNavigationBar: BottomAppBar( - padding: EdgeInsets.zero, - child: AddPatchButtons( - timetable: widget.timetable, - addPatch: addPatch, - ), - ), - ), - ); - } - - void onSave() { - context.pop(List.of(patches)); - } - - Future onPreview() async { - await previewTimetable(context, timetable: buildTimetable()); - } - - Widget buildMoreActions() { - return PullDownMenuButton( - itemBuilder: (BuildContext context) { - return [ - PullDownItem( - icon: context.icons.preview, - title: i18n.preview, - onTap: onPreview, - ), - PullDownItem( - icon: Icons.dashboard_customize, - title: i18n.patch.prefabs, - onTap: openPrefab, - ), - PullDownItem.delete( - icon: context.icons.clear, - title: i18n.clear, - onTap: patches.isNotEmpty - ? () { - setState(() { - patches.clear(); - }); - markChanged(); - } - : null, - ), - ]; - }, - ); - } - - Future openPrefab() async { - final patchSet = await context.showSheet( - (context) => const TimetablePatchPrefabPage(), - ); - if (patchSet == null) return; - if (!mounted) return; - addPatch(patchSet); - } - - Widget buildPatchEntry(TimetablePatchEntry entry, int index, SitTimetable timetable) { - return switch (entry) { - TimetablePatchSet() => TimetablePatchEntryDroppable( - patch: entry, - onMerged: (other) { - removePatch(patches.indexOf(other)); - patches[index] = entry.copyWith(patches: List.of(entry.patches)..add(other)); - markChanged(); - }, - builder: (dropping) => TimetablePatchSetCard( - selected: dropping, - patchSet: entry, - timetable: timetable, - optimizedForTouch: true, - onDeleted: () { - removePatch(index); - }, - onUnpacked: () { - removePatch(index); - patches.insertAll(index, entry.patches); - markChanged(); - }, - onChanged: (newPatchSet) { - setState(() { - patches[index] = newPatchSet; - }); - markChanged(); - }, - ).padSymmetric(v: 4), - ), - TimetablePatch() => WithSwipeAction( - childKey: ValueKey(entry), - right: SwipeAction.delete( - icon: context.icons.delete, - action: () { - removePatch(index); - }, - ), - child: TimetablePatchEntryDroppable( - patch: entry, - onMerged: (other) { - final patchSet = TimetablePatchSet( - name: allocValidFileName( - i18n.patch.defaultName, - all: patches.whereType().map((set) => set.name).toList(), - ), - patches: [entry, other], - ); - patches.insert(index, patchSet); - removePatch(patches.indexOf(entry)); - removePatch(patches.indexOf(other)); - markChanged(); - }, - builder: (dropping) => TimetablePatchWidget( - selected: dropping, - optimizedForTouch: true, - leading: (ctx, child) => TimetablePatchDraggable( - patch: entry, - child: child, - ), - patch: entry, - timetable: timetable, - onDeleted: () { - removePatch(index); - }, - edit: (patch) async { - return await entry.type.create(context, timetable, patch); - }, - onChanged: (newPatch) { - setState(() { - patches[index] = newPatch; - }); - markChanged(); - }, - ), - ), - ), - }; - } - - void addPatch(TimetablePatchEntry patch) { - setState(() { - patches.add(patch); - }); - markChanged(); - } - - void removePatch(int index) { - setState(() { - patches.removeAt(index); - }); - markChanged(); - } - - SitTimetable buildTimetable() { - return widget.timetable.copyWith( - patches: List.of(patches), - ); - } -} - -class TimetablePatchEntryDroppable extends StatefulWidget { - final TimetablePatchEntry patch; - final void Function(TimetablePatch other) onMerged; - final Widget Function(bool dropping) builder; - - const TimetablePatchEntryDroppable({ - super.key, - required this.patch, - required this.builder, - required this.onMerged, - }); - - @override - State createState() => _TimetablePatchEntryDroppableState(); -} - -class _TimetablePatchEntryDroppableState extends State { - @override - Widget build(BuildContext context) { - return DragTarget( - builder: (context, candidateItems, rejectedItems) { - return widget.builder(candidateItems.isNotEmpty); - }, - onWillAcceptWithDetails: (details) { - final willAccept = details.data != widget.patch; - if (willAccept) { - HapticFeedback.selectionClick(); - } - return willAccept; - }, - onAcceptWithDetails: (details) { - widget.onMerged(details.data); - HapticFeedback.mediumImpact(); - }, - ); - } -} - -class TimetablePatchDraggable extends StatefulWidget { - final TimetablePatch patch; - final Widget child; - - const TimetablePatchDraggable({ - super.key, - required this.patch, - required this.child, - }); - - @override - State createState() => _TimetablePatchDraggableState(); -} - -class _TimetablePatchDraggableState extends State { - var dragging = false; - - @override - Widget build(BuildContext context) { - final patch = widget.patch; - return Draggable( - data: patch, - feedback: widget.child, - onDragStarted: () async { - setState(() { - dragging = true; - }); - await HapticFeedback.selectionClick(); - }, - onDragEnd: (details) async { - setState(() { - dragging = false; - }); - }, - child: AnimatedOpacity( - opacity: dragging ? 0.25 : 1.0, - duration: Durations.short3, - child: widget.child, - ), - ); - } -} - -class ReadonlyTimetablePatchEntryWidget extends StatelessWidget { - final TimetablePatchEntry entry; - final bool enableQrCode; - - const ReadonlyTimetablePatchEntryWidget({ - super.key, - required this.entry, - this.enableQrCode = true, - }); - - @override - Widget build(BuildContext context) { - final entry = this.entry; - return switch (entry) { - TimetablePatchSet() => TimetablePatchSetCard( - patchSet: entry, - enableQrCode: enableQrCode, - ), - TimetablePatch() => TimetablePatchWidget( - enableQrCode: enableQrCode, - patch: entry, - ), - }; - } -} diff --git a/lib/timetable/page/patch/patch_prefab.dart b/lib/timetable/page/patch/patch_prefab.dart deleted file mode 100644 index 69e991af8..000000000 --- a/lib/timetable/page/patch/patch_prefab.dart +++ /dev/null @@ -1,47 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../../patch.dart'; -import '../../widgets/patch/prefab.dart'; -import '../../i18n.dart'; - -class TimetablePatchPrefabPage extends StatefulWidget { - const TimetablePatchPrefabPage({ - super.key, - }); - - @override - State createState() => _TimetablePatchPrefabPageState(); -} - -class _TimetablePatchPrefabPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.patch.prefabs.text(), - ), - SliverList.builder( - itemCount: BuiltinTimetablePatchSets.all.length, - itemBuilder: (ctx, i) { - final patchSet = BuiltinTimetablePatchSets.all[i]; - return TimetablePatchSetGalleryCard( - patchSet: patchSet, - onAdd: () { - context.pop(patchSet); - }, - ); - }, - ), - ], - ), - ); - } -} diff --git a/lib/timetable/page/patch/patch_set.dart b/lib/timetable/page/patch/patch_set.dart deleted file mode 100644 index 095fbcafe..000000000 --- a/lib/timetable/page/patch/patch_set.dart +++ /dev/null @@ -1,204 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:reorderables/reorderables.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/editor.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/adaptive/swipe.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/timetable/widgets/patch/shared.dart'; -import 'package:sit/utils/save.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../../entity/patch.dart'; -import '../../entity/timetable.dart'; -import '../../i18n.dart'; -import '../preview.dart'; - -class TimetablePatchSetEditorPage extends StatefulWidget { - final SitTimetable timetable; - final TimetablePatchSet patchSet; - - const TimetablePatchSetEditorPage({ - super.key, - required this.timetable, - required this.patchSet, - }); - - @override - State createState() => _TimetablePatchSetEditorPageState(); -} - -class _TimetablePatchSetEditorPageState extends State { - late var patches = List.of(widget.patchSet.patches); - late var name = widget.patchSet.name; - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - @override - Widget build(BuildContext context) { - assert(widget.patchSet.patches.isNotEmpty); - return PromptSaveBeforeQuitScope( - changed: anyChanged, - onSave: onSave, - child: Scaffold( - resizeToAvoidBottomInset: false, - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TextScroll(name), - actions: [ - PlatformTextButton( - onPressed: onSave, - child: i18n.save.text(), - ), - buildMoreActions(), - ], - ), - if (patches.isEmpty) - SliverFillRemaining( - child: LeavingBlank( - icon: Icons.dashboard_customize, - desc: i18n.patch.noPatches, - ), - ) - else - ReorderableSliverList( - onReorder: (int oldIndex, int newIndex) { - setState(() { - final patch = patches.removeAt(oldIndex); - patches.insert(newIndex, patch); - }); - markChanged(); - }, - delegate: ReorderableSliverChildBuilderDelegate( - childCount: patches.length, - (context, i) { - final patch = patches[i]; - final timetable = widget.timetable.copyWith(patches: patches.sublist(0, i + 1)); - return buildPatchEntry(patch, i, timetable); - }, - ), - ), - ], - ), - bottomNavigationBar: BottomAppBar( - padding: EdgeInsets.zero, - child: AddPatchButtons( - timetable: widget.timetable, - addPatch: addPatch, - ), - ), - ), - ); - } - - void onSave() { - context.pop(buildPatchSet()); - } - - TimetablePatchSet buildPatchSet() { - return TimetablePatchSet( - name: name, - patches: List.of(patches), - ); - } - - Future onPreview() async { - await previewTimetable(context, timetable: buildTimetable()); - } - - Widget buildMoreActions() { - return PullDownMenuButton( - itemBuilder: (BuildContext context) { - return [ - PullDownItem( - icon: context.icons.preview, - title: i18n.preview, - onTap: onPreview, - ), - PullDownItem( - icon: context.icons.edit, - title: i18n.patch.editName, - onTap: () async { - final newName = await Editor.showStringEditor( - context, - desc: i18n.patch.patchSetName, - initial: name, - ); - if (newName == null) return; - if (name != newName) { - setState(() { - name = newName; - }); - markChanged(); - } - }, - ), - PullDownItem.delete( - icon: context.icons.clear, - title: i18n.clear, - onTap: patches.isNotEmpty - ? () { - setState(() { - patches.clear(); - }); - markChanged(); - } - : null, - ), - ]; - }, - ); - } - - Widget buildPatchEntry(TimetablePatch patch, int index, SitTimetable timetable) { - return WithSwipeAction( - childKey: ValueKey(patch), - right: SwipeAction.delete( - icon: context.icons.delete, - action: () { - removePatch(index); - }, - ), - child: TimetablePatchWidget( - patch: patch, - timetable: timetable, - edit: (patch) async { - return await patch.type.create(context, timetable, patch); - }, - onChanged: (newPatch) { - setState(() { - patches[index] = newPatch; - }); - markChanged(); - }, - ), - ); - } - - void addPatch(TimetablePatch patch) { - setState(() { - patches.add(patch); - }); - markChanged(); - } - - void removePatch(int index) { - setState(() { - patches.removeAt(index); - }); - markChanged(); - } - - SitTimetable buildTimetable() { - return widget.timetable.copyWith( - patches: List.of(widget.timetable.patches) - ..removeLast() - ..add(buildPatchSet()), - ); - } -} diff --git a/lib/timetable/page/patch/qrcode.dart b/lib/timetable/page/patch/qrcode.dart deleted file mode 100644 index 48e3c8195..000000000 --- a/lib/timetable/page/patch/qrcode.dart +++ /dev/null @@ -1,194 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/timetable/entity/timetable.dart'; -import 'package:sit/timetable/page/patch/patch.dart'; -import 'package:sit/timetable/page/preview.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../../i18n.dart'; -import '../../entity/patch.dart'; -import '../../init.dart'; -import '../mine.dart'; - -Future onTimetablePatchFromQrCode({ - required BuildContext context, - required TimetablePatchEntry patch, -}) async { - await context.showSheet( - (ctx) => TimetablePatchFromQrCodeSheet(patch: patch), - dismissible: false, - useRootNavigator: true, - ); -} - -class TimetablePatchFromQrCodeSheet extends ConsumerStatefulWidget { - final TimetablePatchEntry patch; - - const TimetablePatchFromQrCodeSheet({ - super.key, - required this.patch, - }); - - @override - ConsumerState createState() => _TimetablePatchFromQrCodeSheetState(); -} - -class _TimetablePatchFromQrCodeSheetState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = TimetableInit.storage.timetable; - final timetables = ref.watch(storage.$rows); - final patch = widget.patch; - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: patch is TimetablePatchSet - ? [ - const Icon(Icons.dashboard_customize).padOnly(r: 8), - TextScroll(patch.name).expanded(), - ].row() - : i18n.patch.title.text(), - actions: [ - PlatformTextButton( - onPressed: timetables.isEmpty - ? null - : () async { - final timetable = await context.showSheet( - (context) => TimetablePatchUseSheet(patch: patch), - ); - if (timetable == null) return; - if (!context.mounted) return; - context.pop(); - }, - child: i18n.use.text(), - ) - ], - ), - if (patch is TimetablePatchSet) - SliverList.builder( - itemCount: patch.patches.length, - itemBuilder: (ctx, i) { - final p = patch.patches[i]; - return ReadonlyTimetablePatchEntryWidget( - entry: p, - enableQrCode: false, - ); - }, - ) - else - SliverList.list(children: [ - ReadonlyTimetablePatchEntryWidget( - entry: patch, - enableQrCode: false, - ) - ]), - ], - ), - ); - } -} - -class TimetablePatchUseSheet extends ConsumerStatefulWidget { - final TimetablePatchEntry patch; - - const TimetablePatchUseSheet({ - super.key, - required this.patch, - }); - - @override - ConsumerState createState() => _TimetablePatchUseSheetState(); -} - -class _TimetablePatchUseSheetState extends ConsumerState { - @override - Widget build(BuildContext context) { - final storage = TimetableInit.storage.timetable; - final timetables = ref.watch(storage.$rows); - assert(timetables.isNotEmpty); - final patch = widget.patch; - timetables.sort((a, b) => b.row.lastModified.compareTo(a.row.lastModified)); - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.mine.title.text(), - ), - SliverList.builder( - itemCount: timetables.length, - itemBuilder: (ctx, i) { - final (:id, row: timetable) = timetables[i]; - return TimetablePatchReceiverCard( - id: id, - timetable: timetable, - onAdded: () { - final newTimetable = buildTimetable(timetable, patch).markModified(); - storage[id] = newTimetable; - ctx.pop(newTimetable); - }, - onPreview: () async { - await previewTimetable( - context, - timetable: buildTimetable(timetable, patch), - ); - }, - ).padH(6); - }, - ), - ], - ), - ); - } - - SitTimetable buildTimetable(SitTimetable timetable, TimetablePatchEntry patch) { - return timetable.copyWith( - patches: List.of(timetable.patches)..add(patch), - ); - } -} - -class TimetablePatchReceiverCard extends StatelessWidget { - final int id; - final SitTimetable timetable; - final VoidCallback? onAdded; - final VoidCallback? onPreview; - - const TimetablePatchReceiverCard({ - super.key, - required this.id, - required this.timetable, - this.onAdded, - this.onPreview, - }); - - @override - Widget build(BuildContext context) { - final onAdded = this.onAdded; - final onPreview = this.onPreview; - return [ - TimetableInfo(timetable: timetable), - OverflowBar( - children: [ - [ - if (onAdded != null) - FilledButton( - onPressed: onAdded, - child: i18n.add.text(), - ), - if (onPreview != null) - OutlinedButton( - onPressed: onPreview, - child: i18n.preview.text(), - ), - ].wrap(spacing: 4), - ], - ), - ].column(caa: CrossAxisAlignment.start).padSymmetric(v: 10, h: 15).inOutlinedCard(); - } -} diff --git a/lib/timetable/page/preview.dart b/lib/timetable/page/preview.dart deleted file mode 100644 index 12ee73bcb..000000000 --- a/lib/timetable/page/preview.dart +++ /dev/null @@ -1,88 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../entity/display.dart'; -import '../entity/timetable.dart'; -import '../entity/timetable_entity.dart'; -import '../entity/pos.dart'; -import '../widgets/style.dart'; -import '../widgets/timetable/board.dart'; - -class TimetablePreviewPage extends StatefulWidget { - final SitTimetable? timetable; - final SitTimetableEntity? entity; - - const TimetablePreviewPage({ - super.key, - this.timetable, - this.entity, - }); - - @override - State createState() => _TimetablePreviewPageState(); -} - -class _TimetablePreviewPageState extends State { - SitTimetable get timetable => widget.timetable ?? widget.entity!.type; - - final $displayMode = ValueNotifier(DisplayMode.weekly); - late final $currentPos = ValueNotifier(timetable.locate(DateTime.now())); - final scrollController = ScrollController(); - late SitTimetableEntity entity = widget.entity ?? timetable.resolve(); - - @override - void dispose() { - $displayMode.dispose(); - $currentPos.dispose(); - scrollController.dispose(); - super.dispose(); - } - - @override - void didUpdateWidget(covariant TimetablePreviewPage oldWidget) { - super.didUpdateWidget(oldWidget); - if (widget.timetable != oldWidget.timetable || widget.entity != oldWidget.entity) { - entity = widget.entity ?? timetable.resolve(); - } - } - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: TextScroll(timetable.name), - actions: [ - PlatformIconButton( - icon: const Icon(Icons.swap_horiz), - onPressed: () { - $displayMode.value = $displayMode.value.toggle(); - }, - ) - ], - ), - body: TimetableBoard( - timetable: entity, - $displayMode: $displayMode, - $currentPos: $currentPos, - ), - ); - } -} - -Future previewTimetable( - BuildContext context, { - SitTimetable? timetable, - SitTimetableEntity? entity, -}) async { - assert(timetable != null || entity != null); - await context.showSheet( - (context) => TimetableStyleProv( - child: TimetablePreviewPage( - timetable: timetable, - entity: entity, - ), - ), - ); -} diff --git a/lib/timetable/page/screenshot.dart b/lib/timetable/page/screenshot.dart deleted file mode 100644 index daa78f7c1..000000000 --- a/lib/timetable/page/screenshot.dart +++ /dev/null @@ -1,234 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:open_file/open_file.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:screenshot/screenshot.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/files.dart'; -import 'package:sit/settings/settings.dart'; - -import "../i18n.dart"; -import '../widgets/style.dart'; -import '../widgets/timetable/background.dart'; -import '../widgets/timetable/weekly.dart'; -import '../entity/timetable_entity.dart'; - -typedef TimetableScreenshotConfig = ({ - String signature, - bool grayOutTakenLessons, - bool enableBackground, -}); - -class TimetableScreenshotConfigEditor extends StatefulWidget { - final SitTimetableEntity timetable; - final bool initialGrayOutTakenLessons; - - const TimetableScreenshotConfigEditor({ - super.key, - required this.timetable, - this.initialGrayOutTakenLessons = false, - }); - - @override - State createState() => _TimetableScreenshotConfigEditorState(); -} - -class _TimetableScreenshotConfigEditorState extends State { - late final $signature = TextEditingController(text: widget.timetable.signature); - late bool grayOutTakenLessons = widget.initialGrayOutTakenLessons; - var enableBackground = true; - - @override - void dispose() { - $signature.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: i18n.screenshot.title.text(), - actions: [ - buildScreenshotAction(), - ], - ), - SliverList.list(children: [ - buildSignatureInput(), - buildGrayOutTakenLessons(), - buildEnableBackground(), - ]), - ], - ), - ); - } - - Widget buildScreenshotAction() { - return PlatformTextButton( - child: i18n.screenshot.take.text(), - onPressed: () async { - Settings.lastSignature = $signature.text; - context.pop(( - signature: $signature.text.trim(), - grayOutTakenLessons: grayOutTakenLessons == true, - enableBackground: enableBackground, - )); - }, - ); - } - - Widget buildSignatureInput() { - return ListTile( - isThreeLine: true, - leading: const Icon(Icons.drive_file_rename_outline), - title: i18n.signature.text(), - subtitle: TextField( - controller: $signature, - decoration: InputDecoration( - hintText: i18n.signaturePlaceholder, - ), - ), - ); - } - - Widget buildGrayOutTakenLessons() { - return ListTile( - leading: const Icon(Icons.timelapse), - title: i18n.p13n.cell.grayOut.text(), - subtitle: i18n.p13n.cell.grayOutDesc.text(), - trailing: Switch.adaptive( - value: grayOutTakenLessons == true, - onChanged: (newV) { - setState(() { - grayOutTakenLessons = newV; - }); - }, - ), - ); - } - - Widget buildEnableBackground() { - return ListTile( - leading: const Icon(Icons.image_outlined), - title: i18n.screenshot.enableBackground.text(), - subtitle: i18n.screenshot.enableBackgroundDesc.text(), - trailing: Switch.adaptive( - value: enableBackground, - onChanged: (newV) { - setState(() { - enableBackground = newV; - }); - }, - ), - ); - } -} - -class TimetableWeeklyScreenshotFilm extends StatelessWidget { - final TimetableScreenshotConfig config; - final SitTimetableEntity timetable; - final int weekIndex; - final Size fullSize; - - const TimetableWeeklyScreenshotFilm({ - super.key, - required this.timetable, - required this.weekIndex, - required this.fullSize, - required this.config, - }); - - @override - Widget build(BuildContext context) { - final style = TimetableStyle.of(context); - final background = style.background; - if (config.enableBackground && background.enabled) { - return [ - Positioned.fill( - child: TimetableBackground( - background: background, - fade: false, - ), - ), - buildBody(context, style), - ].stack(); - } - return buildBody(context, style); - } - - Widget buildBody(BuildContext context, TimetableStyleData style) { - return [ - buildTitle().text(style: context.textTheme.titleLarge).padSymmetric(v: 10), - TimetableOneWeek( - fullSize: fullSize, - timetable: timetable, - weekIndex: weekIndex, - cellBuilder: ({required context, required lesson, required timetable}) { - return StyledCourseCell( - style: style, - timetable: timetable, - course: lesson.course, - isLessonTaken: lesson.type.endTime.isBefore(DateTime.now()), - ); - }, - ), - ].column(); - } - - String buildTitle() { - final week = i18n.weekOrderedName(number: weekIndex + 1); - final signature = config.signature; - if (signature.isNotEmpty) { - return "$signature $week"; - } - return week; - } -} - -Future takeTimetableScreenshot({ - required BuildContext context, - required SitTimetableEntity timetable, - required int weekIndex, -}) async { - final config = await context.showSheet( - (ctx) => TimetableScreenshotConfigEditor( - timetable: timetable, - initialGrayOutTakenLessons: Settings.timetable.cellStyle?.grayOutTakenLessons ?? false, - ), - ); - if (config == null) return; - if (!context.mounted) return; - var fullSize = context.mediaQuery.size; - final screenshotController = ScreenshotController(); - final screenshot = await screenshotController.captureFromLongWidget( - InheritedTheme.captureAll( - context, - ProviderScope( - child: MediaQuery( - data: MediaQueryData(size: fullSize), - child: Material( - child: TimetableStyleProv( - child: TimetableWeeklyScreenshotFilm( - config: config, - timetable: timetable, - weekIndex: weekIndex, - fullSize: fullSize, - ), - ), - ), - ), - ), - ), - delay: const Duration(milliseconds: 100), - context: context, - pixelRatio: View.of(context).devicePixelRatio, - ); - final imgFi = Files.timetable.screenshotFile; - await imgFi.writeAsBytes(screenshot); - - await OpenFile.open(imgFi.path, type: "image/png", uti: "public.png"); -} diff --git a/lib/timetable/page/settings.dart b/lib/timetable/page/settings.dart deleted file mode 100644 index da31a890e..000000000 --- a/lib/timetable/page/settings.dart +++ /dev/null @@ -1,120 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:rettulf/rettulf.dart'; -import '../i18n.dart'; - -class TimetableSettingsPage extends StatefulWidget { - const TimetableSettingsPage({ - super.key, - }); - - @override - State createState() => _TimetableSettingsPageState(); -} - -class _TimetableSettingsPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - body: CustomScrollView( - physics: const RangeMaintainingScrollPhysics(), - slivers: [ - SliverAppBar.large( - pinned: true, - snap: false, - floating: false, - title: i18n.navigation.text(), - ), - SliverList.list( - children: [ - const AutoUseImportedTile(), - const QuickLookCourseOnTapTile(), - const Divider(), - buildCellStyle(), - buildP13n(), - buildBackground(), - ], - ), - ], - ), - ); - } - - Widget buildP13n() { - return ListTile( - leading: const Icon(Icons.color_lens_outlined), - title: i18n.settings.palette.text(), - subtitle: i18n.settings.paletteDesc.text(), - trailing: const Icon(Icons.open_in_new), - onTap: () async { - await context.push("/timetable/p13n"); - }, - ); - } - - Widget buildCellStyle() { - return ListTile( - leading: const Icon(Icons.view_comfortable_outlined), - title: i18n.settings.cellStyle.text(), - subtitle: i18n.settings.cellStyleDesc.text(), - trailing: const Icon(Icons.open_in_new), - onTap: () async { - await context.push("/timetable/cell-style"); - }, - ); - } - - Widget buildBackground() { - return ListTile( - leading: const Icon(Icons.image_outlined), - title: i18n.settings.background.text(), - subtitle: i18n.settings.backgroundDesc.text(), - trailing: const Icon(Icons.open_in_new), - onTap: () async { - await context.push("/timetable/background"); - }, - ); - } -} - -class QuickLookCourseOnTapTile extends ConsumerWidget { - const QuickLookCourseOnTapTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final on = ref.watch(Settings.timetable.$quickLookLessonOnTap) ?? true; - return ListTile( - leading: const Icon(Icons.touch_app), - title: i18n.settings.quickLookLessonOnTap.text(), - subtitle: i18n.settings.quickLookLessonOnTapDesc.text(), - trailing: Switch.adaptive( - value: on, - onChanged: (newV) { - ref.read(Settings.timetable.$quickLookLessonOnTap.notifier).set(newV); - }, - ), - ); - } -} - -class AutoUseImportedTile extends ConsumerWidget { - const AutoUseImportedTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final on = ref.watch(Settings.timetable.$autoUseImported) ?? true; - return ListTile( - title: i18n.settings.autoUseImported.text(), - subtitle: i18n.settings.autoUseImportedDesc.text(), - leading: const Icon(Icons.auto_mode_outlined), - trailing: Switch.adaptive( - value: on, - onChanged: (newV) { - ref.read(Settings.timetable.$autoUseImported.notifier).set(newV); - }, - ), - ); - } -} diff --git a/lib/timetable/page/timetable.dart b/lib/timetable/page/timetable.dart deleted file mode 100644 index 4c9c0500c..000000000 --- a/lib/timetable/page/timetable.dart +++ /dev/null @@ -1,204 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/widgets/fab.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/timetable/page/screenshot.dart'; -import '../entity/display.dart'; -import '../events.dart'; -import '../i18n.dart'; -import '../entity/timetable_entity.dart'; -import '../init.dart'; -import '../entity/pos.dart'; -import '../utils.dart'; -import '../widgets/focus.dart'; -import '../widgets/timetable/board.dart'; -import 'mine.dart'; - -class TimetableBoardPage extends StatefulWidget { - final int id; - final SitTimetableEntity timetable; - - const TimetableBoardPage({ - super.key, - required this.id, - required this.timetable, - }); - - @override - State createState() => _TimetableBoardPageState(); -} - -class _TimetableBoardPageState extends State { - final scrollController = ScrollController(); - final $displayMode = ValueNotifier(TimetableInit.storage.lastDisplayMode ?? DisplayMode.weekly); - late final ValueNotifier $currentPos; - - SitTimetableEntity get timetable => widget.timetable; - - @override - void initState() { - super.initState(); - $displayMode.addListener(() { - TimetableInit.storage.lastDisplayMode = $displayMode.value; - }); - $currentPos = ValueNotifier(timetable.type.locate(DateTime.now())); - } - - @override - void dispose() { - scrollController.dispose(); - $displayMode.dispose(); - $currentPos.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - resizeToAvoidBottomInset: false, - appBar: AppBar( - title: $currentPos >> (ctx, pos) => i18n.weekOrderedName(number: pos.weekIndex + 1).text(), - actions: [ - buildSwitchViewButton(), - buildMoreActionsButton(), - ], - ), - floatingActionButton: InkWell( - onLongPress: () async { - if ($displayMode.value == DisplayMode.weekly) { - await selectWeeklyTimetablePageToJump(); - } else { - await selectDailyTimetablePageToJump(); - } - }, - child: AutoHideFAB( - controller: scrollController, - child: const Icon(Icons.undo_rounded), - onPressed: () async { - final today = timetable.type.locate(DateTime.now()); - if ($currentPos.value != today) { - eventBus.fire(JumpToPosEvent(today)); - } - }, - ), - ), - body: TimetableBoard( - timetable: timetable, - $displayMode: $displayMode, - $currentPos: $currentPos, - ), - ); - } - - Widget buildSwitchViewButton() { - return $displayMode >> - (ctx, mode) => SegmentedButton( - showSelectedIcon: false, - style: ButtonStyle( - padding: MaterialStateProperty.all(const EdgeInsets.symmetric(horizontal: 4)), - visualDensity: VisualDensity.compact, - ), - segments: DisplayMode.values - .map((e) => ButtonSegment( - value: e, - label: e.l10n().text(), - )) - .toList(), - selected: {mode}, - onSelectionChanged: (newSelection) { - $displayMode.value = mode.toggle(); - }, - ); - } - - Widget buildMoreActionsButton() { - final focusMode = Settings.focusTimetable; - return PullDownMenuButton( - itemBuilder: (ctx) => [ - PullDownItem( - icon: Icons.calendar_month, - title: i18n.mine.title, - onTap: () async { - await context.push("/timetable/mine"); - }, - ), - PullDownItem( - icon: Icons.view_comfortable_outlined, - title: i18n.p13n.cell.title, - onTap: () async { - await context.push("/timetable/cell-style"); - }, - ), - PullDownItem( - icon: Icons.image_outlined, - title: i18n.p13n.background.title, - onTap: () async { - await context.push("/timetable/background"); - }, - ), - const PullDownDivider(), - PullDownItem( - icon: Icons.screenshot, - title: i18n.screenshot.screenshot, - onTap: () async { - await takeTimetableScreenshot( - context: context, - timetable: timetable, - weekIndex: $currentPos.value.weekIndex, - ); - }, - ), - PullDownItem( - icon: Icons.dashboard_customize, - title: i18n.patch.title, - onTap: () async { - await editTimetablePatch( - context: ctx, - id: widget.id, - timetable: widget.timetable.type, - ); - }, - ), - if (focusMode) ...buildFocusPopupActions(context), - const PullDownDivider(), - PullDownSelectable( - title: i18n.focusTimetable, - selected: focusMode, - onTap: () async { - Settings.focusTimetable = !focusMode; - }, - ), - ], - ); - } - - Future selectWeeklyTimetablePageToJump() async { - final initialIndex = $currentPos.value.weekIndex; - final week2Go = await selectWeekInTimetable( - context: context, - timetable: timetable.type, - initialWeekIndex: initialIndex, - submitLabel: i18n.jump, - ); - if (week2Go == null) return; - if (week2Go != initialIndex) { - eventBus.fire(JumpToPosEvent($currentPos.value.copyWith(weekIndex: week2Go))); - } - } - - Future selectDailyTimetablePageToJump() async { - final currentPos = $currentPos.value; - final pos2Go = await selectDayInTimetable( - context: context, - timetable: timetable.type, - initialPos: currentPos, - submitLabel: i18n.jump, - ); - if (pos2Go == null) return; - if (pos2Go != currentPos) { - eventBus.fire(JumpToPosEvent(pos2Go)); - } - } -} diff --git a/lib/timetable/palette.dart b/lib/timetable/palette.dart deleted file mode 100644 index 1f5b8166c..000000000 --- a/lib/timetable/palette.dart +++ /dev/null @@ -1,180 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/timetable/entity/platte.dart'; -import 'package:sit/utils/color.dart'; - -import 'entity/timetable.dart'; - -/// https://m3.material.io/theme-builder#/custom -class BuiltinTimetablePalettes { - static const classic = BuiltinTimetablePalette( - id: -1, - key: "classic", - author: "Li_plum@outlook.com", - colors: [ - (dark: Color(0xdf356a21), light: Color(0xd2a7d99b)), - (dark: Color(0xdf00739b), light: Color(0xd2cbe3ef)), - (dark: Color(0xdf8e2f56), light: Color(0xd2ffa6bb)), - (dark: Color(0xdf50378a), light: Color(0xd2b8a4ea)), - (dark: Color(0xdfac5029), light: Color(0xd2ecab8a)), - (dark: Color(0xdf80002d), light: Color(0xd2eeb6d3)), - (dark: Color(0xdf7c5800), light: Color(0xd2eadea1)), - (dark: Color(0xdf006b5f), light: Color(0xd292c7b8)), - (dark: Color(0xdf004e5f), light: Color(0xd2aaccd8)), - (dark: Color(0xdf7c157a), light: Color(0xd2ffd7f5)), - (dark: Color(0xdf616200), light: Color(0xd2d9dc89)), - ], - ); - static const americano = BuiltinTimetablePalette( - id: -2, - key: "americano", - author: "Gracie", - colors: [ - (dark: Color(0xff4d5a3f), light: Color(0xe67a8d62)), - (dark: Color(0xff837a69), light: Color(0xffedddbe)), - (dark: Color(0xff6a3634), light: Color(0xe6c86563)), - (dark: Color(0xff98814c), light: Color(0xffe7c574)), - (dark: Color(0xff14506a), light: Color(0xe60080ad)), - ], - ); - static const candy = BuiltinTimetablePalette( - id: -3, - key: "candy", - author: "Gracie", - colors: [ - (dark: Color(0xff877878), light: Color(0xfff1dada)), - (dark: Color(0xff668076), light: Color(0xffb9e8d7)), - (dark: Color(0xff6e7760), light: Color(0xffc9d8af)), - (dark: Color(0xffa36665), light: Color(0xfff2a09e)), - (dark: Color(0xff676f7f), light: Color(0xffbbc9e6)), - (dark: Color(0xff786e7a), light: Color(0xffdac8dd)), - (dark: Color(0xff87786e), light: Color(0xfff2d8c8)), - ], - ); - static const spring = BuiltinTimetablePalette( - id: -4, - key: "sprint", - author: "Gracie", - colors: [ - (dark: Color(0xff6c8081), light: Color(0xffa5c2c4)), - (dark: Color(0xff88877c), light: Color(0xfff3f1e1)), - (dark: Color(0xff715252), light: Color(0xffae7e7e)), - (dark: Color(0xff799995), light: Color(0xffbae5df)), - (dark: Color(0xff799279), light: Color(0xffb9dbb9)), - (dark: Color(0xff907f6d), light: Color(0xffffe4c8)), - ], - ); - static const summary = BuiltinTimetablePalette( - id: -5, - key: "summary", - author: "Gracie", - colors: [ - (dark: Color(0xffaca88b), light: Color(0xfffffad3)), - (dark: Color(0xff976455), light: Color(0xffe69782)), - (dark: Color(0xff7ca07f), light: Color(0xffbeedc3)), - (dark: Color(0xff3c5b51), light: Color(0xff5e8f7f)), - (dark: Color(0xff93997b), light: Color(0xffdce4bd)), - (dark: Color(0xffa78044), light: Color(0xffffc367)), - ], - ); - static const fall = BuiltinTimetablePalette( - id: -6, - key: "fall", - author: "Gracie", - colors: [ - (dark: Color(0xff9e9c7e), light: Color(0xffece9c1)), - (dark: Color(0xff977955), light: Color(0xffe6b982)), - (dark: Color(0xff8e8471), light: Color(0xffd5c6af)), - (dark: Color(0xff626a48), light: Color(0xff97a470)), - (dark: Color(0xff6e5c46), light: Color(0xffaa8f6c)), - (dark: Color(0xff96563a), light: Color(0xffe68358)), - ], - ); - static const winter = BuiltinTimetablePalette( - id: -7, - key: "winter", - author: "Gracie", - colors: [ - (dark: Color(0xff7c8787), light: Color(0xffc3dede)), - (dark: Color(0xff7e7f6d), light: Color(0xffe5e6c4)), - (dark: Color(0xff4d6067), light: Color(0xff90b2c0)), - (dark: Color(0xff4e6f6d), light: Color(0xff8fcdca)), - (dark: Color(0xff5e6d5e), light: Color(0xffabc8ad)), - (dark: Color(0xff4c5253), light: Color(0xffb9c6c9)), - ], - ); - static const thicket = BuiltinTimetablePalette( - id: -8, - key: "thicket", - author: "Gracie", - colors: [ - (dark: Color(0xff506952), light: Color(0xff7da37f)), - (dark: Color(0xff547b65), light: Color(0xff81bc95)), - (dark: Color(0xff465753), light: Color(0xff6e8882)), - (dark: Color(0xff7b978d), light: Color(0xffbce2d4)), - (dark: Color(0xff9e948a), light: Color(0xffecdfd0)), - ], - ); - static const creeksideBreeze = BuiltinTimetablePalette( - id: -9, - key: "creeksideBreeze", - author: "Gracie", - colors: [ - (dark: Color(0xff6c8080), light: Color(0xffc4e7e7)), - (dark: Color(0xff748e87), light: Color(0xffdcf4f1)), - (dark: Color(0xff3e5657), light: Color(0xff77a3a5)), - (dark: Color(0xff7c726f), light: Color(0xffbcada9)), - (dark: Color(0xff5d5a5a), light: Color(0xfff4ecec)), - ], - ); - - static const all = [ - classic, - americano, - candy, - spring, - summary, - fall, - winter, - thicket, - creeksideBreeze, - ]; -} - -extension TimetablePlatteX on TimetablePalette { - Color2Mode resolveColor(SitCourse course) { - assert(colors.isNotEmpty, "Colors can't be empty"); - if (colors.isEmpty) return TimetablePalette.defaultColor; - return colors[course.courseCode.hashCode.abs() % colors.length]; - } - - Color2Mode safeGetColor(int index) { - assert(colors.isNotEmpty, "Colors can't be empty"); - if (colors.isEmpty) return TimetablePalette.defaultColor; - return colors[index % colors.length]; - } -} - -const _lightTextColors = [ - Color(0xFFFFFFFF), - Color(0xFFDEDEDE), - Color(0xFFAEAEAE), - Color(0xFF9E9E9E), -]; -const _darkTextColors = [ - Color(0xFF4A4A4A), - Color(0xFF202020), - Color(0xFF101010), - Color(0xFF000000), -]; - -extension Color2ModeX on Color2Mode { - Color byTheme(ThemeData theme) => theme.brightness == Brightness.dark ? dark : light; - - Color byBrightness(Brightness brightness) => brightness == Brightness.dark ? dark : light; -} - -extension ColorX on Color { - Color? resolveTextColorForReadability() { - return luminance >= 0.5 ? findBestTextColor(this, _darkTextColors) : findBestTextColor(this, _lightTextColors); - } -} diff --git a/lib/timetable/patch.dart b/lib/timetable/patch.dart deleted file mode 100644 index 06bcae27a..000000000 --- a/lib/timetable/patch.dart +++ /dev/null @@ -1,79 +0,0 @@ -import 'entity/loc.dart'; -import 'entity/patch.dart'; - -class BuiltinTimetablePatchSets { - static final vacationShift2024 = BuiltinTimetablePatchSet( - key: "sitVacationShift2024", - patches: [ - // New Year's Day - TimetableRemoveDayPatch.oneDay(loc: TimetableDayLoc.byDate(2024, 1, 1)), - // Qingming Festival - TimetableRemoveDayPatch.oneDay(loc: TimetableDayLoc.byDate(2024, 4, 4)), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 4, 3), - target: TimetableDayLoc.byDate(2024, 4, 7), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 4, 5), - target: TimetableDayLoc.byDate(2024, 4, 3), - ), - // International Workers' Day - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 4, 30), - target: TimetableDayLoc.byDate(2024, 4, 28), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 5, 3), - target: TimetableDayLoc.byDate(2024, 4, 30), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 5, 10), - target: TimetableDayLoc.byDate(2024, 5, 11), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 5, 2), - target: TimetableDayLoc.byDate(2024, 5, 10), - ), - TimetableRemoveDayPatch.oneDay(loc: TimetableDayLoc.byDate(2024, 5, 1)), - // Dragon Boat Festival - TimetableRemoveDayPatch.oneDay(loc: TimetableDayLoc.byDate(2024, 6, 10)), - // Mid-Autumn Festival - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 9, 13), - target: TimetableDayLoc.byDate(2024, 9, 14), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 9, 16), - target: TimetableDayLoc.byDate(2024, 9, 13), - ), - TimetableRemoveDayPatch.oneDay(loc: TimetableDayLoc.byDate(2024, 9, 17)), - // the National Day of the PRC - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 9, 30), - target: TimetableDayLoc.byDate(2024, 9, 29), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 10, 4), - target: TimetableDayLoc.byDate(2024, 9, 30), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 10, 11), - target: TimetableDayLoc.byDate(2024, 10, 12), - ), - TimetableMoveDayPatch( - source: TimetableDayLoc.byDate(2024, 10, 7), - target: TimetableDayLoc.byDate(2024, 10, 11), - ), - TimetableRemoveDayPatch(all: [ - TimetableDayLoc.byDate(2024, 10, 1), - TimetableDayLoc.byDate(2024, 10, 2), - TimetableDayLoc.byDate(2024, 10, 3), - TimetableDayLoc.byDate(2024, 10, 5), - TimetableDayLoc.byDate(2024, 10, 6), - ]), - ], - ); - static final all = [ - vacationShift2024, - ]; -} diff --git a/lib/timetable/qrcode/palette.dart b/lib/timetable/qrcode/palette.dart deleted file mode 100644 index 737b884b7..000000000 --- a/lib/timetable/qrcode/palette.dart +++ /dev/null @@ -1,43 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/qrcode/protocol.dart'; -import 'package:sit/qrcode/utils.dart'; -import 'package:sit/r.dart'; - -import '../entity/platte.dart'; -import '../page/p13n/palette.dart'; - -class TimetablePaletteDeepLink implements DeepLinkHandlerProtocol { - static const path = "timetable-palette"; - - const TimetablePaletteDeepLink(); - - Uri encode(TimetablePalette palette) => Uri( - scheme: R.scheme, - path: path, - query: encodeBytesForUrl( - palette.encodeByteList(), - compress: false, - )); - - TimetablePalette decode(Uri qrCodeData) => TimetablePalette.decodeFromByteList(decodeBytesFromUrl( - qrCodeData.query, - compress: false, - )); - - @override - bool match(Uri encoded) { - return encoded.path == path; - } - - @override - Future onHandle({ - required BuildContext context, - required Uri qrCodeData, - }) async { - final palette = decode(qrCodeData); - await onTimetablePaletteFromQrCode( - context: context, - palette: palette, - ); - } -} diff --git a/lib/timetable/qrcode/patch.dart b/lib/timetable/qrcode/patch.dart deleted file mode 100644 index dab08ab8f..000000000 --- a/lib/timetable/qrcode/patch.dart +++ /dev/null @@ -1,35 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/qrcode/protocol.dart'; -import 'package:sit/qrcode/utils.dart'; -import 'package:sit/r.dart'; -import 'package:sit/timetable/entity/patch.dart'; - -import '../page/patch/qrcode.dart'; - -class TimetablePatchDeepLink implements DeepLinkHandlerProtocol { - static const path = "timetable-patch"; - - const TimetablePatchDeepLink(); - - Uri encode(TimetablePatchEntry entry) => - Uri(scheme: R.scheme, path: path, query: encodeBytesForUrl(TimetablePatchEntry.encodeByteList(entry))); - - TimetablePatchEntry decode(Uri qrCodeData) => (TimetablePatchEntry.decodeByteList(decodeBytesFromUrl(qrCodeData.query))); - - @override - bool match(Uri encoded) { - return encoded.path == path; - } - - @override - Future onHandle({ - required BuildContext context, - required Uri qrCodeData, - }) async { - final patch = decode(qrCodeData); - await onTimetablePatchFromQrCode( - context: context, - patch: patch, - ); - } -} diff --git a/lib/timetable/qrcode/timetable.dart b/lib/timetable/qrcode/timetable.dart deleted file mode 100644 index 000ce517e..000000000 --- a/lib/timetable/qrcode/timetable.dart +++ /dev/null @@ -1,35 +0,0 @@ -import 'package:flutter/widgets.dart'; -import 'package:sit/qrcode/protocol.dart'; -import 'package:sit/qrcode/utils.dart'; -import 'package:sit/r.dart'; -import 'package:sit/timetable/entity/timetable.dart'; - -import '../page/mine.dart'; - -class TimetableDeepLink implements DeepLinkHandlerProtocol { - static const path = "timetable"; - - const TimetableDeepLink(); - - Uri encode(SitTimetable timetable) => - Uri(scheme: R.scheme, path: path, query: encodeBytesForUrl(SitTimetable.encodeByteList(timetable))); - - SitTimetable decode(Uri qrCodeData) => (SitTimetable.decodeByteList(decodeBytesFromUrl(qrCodeData.query))); - - @override - bool match(Uri encoded) { - return encoded.path == path; - } - - @override - Future onHandle({ - required BuildContext context, - required Uri qrCodeData, - }) async { - final timetable = decode(qrCodeData); - await onTimetableFromFile( - context: context, - timetable: timetable, - ); - } -} diff --git a/lib/timetable/service/school.dart b/lib/timetable/service/school.dart deleted file mode 100644 index e954374e6..000000000 --- a/lib/timetable/service/school.dart +++ /dev/null @@ -1,109 +0,0 @@ -import 'package:beautiful_soup_dart/beautiful_soup.dart'; -import 'package:dio/dio.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/init.dart'; - -import 'package:sit/school/entity/school.dart'; -import 'package:sit/school/exam_result/init.dart'; -import 'package:sit/session/pg_registration.dart'; -import 'package:sit/session/ug_registration.dart'; -import 'package:sit/settings/settings.dart'; - -import '../entity/course.dart'; -import '../entity/timetable.dart'; -import '../utils.dart'; - -class TimetableService { - static const _undergraduateTimetableUrl = 'http://jwxt.sit.edu.cn/jwglxt/kbcx/xskbcx_cxXsgrkb.html'; - static const _postgraduateTimetableUrl = - 'http://gms.sit.edu.cn/epstar/yjs/T_PYGL_KWGL_WSXK/T_PYGL_KWGL_WSXK_XSKB_NEW.jsp'; - - UgRegistrationSession get _ugRegSession => Init.ugRegSession; - - PgRegistrationSession get _pgRegSession => Init.pgRegSession; - - const TimetableService(); - - Future checkConnectivity() { - return _ugRegSession.checkConnectivity(); - } - - /// 获取本科生课表 - Future fetchUgTimetable(SemesterInfo info) async { - final response = await _ugRegSession.request( - _undergraduateTimetableUrl, - options: Options( - method: "POST", - ), - para: {'gnmkdm': 'N253508'}, - data: { - // 学年名 - 'xnm': info.exactYear.toString(), - // 学期名 - 'xqm': semesterToFormField(info.semester) - }, - ); - final json = response.data; - final List courseList = json['kbList']; - final rawCourses = courseList.map((e) => UndergraduateCourseRaw.fromJson(e)).toList(); - final timetableEntity = parseUndergraduateTimetableFromCourseRaw(rawCourses); - return timetableEntity; - } - - /// 获取研究生课表 - Future fetchPgTimetable(SemesterInfo info) async { - final timetableRes = await _pgRegSession.request( - _postgraduateTimetableUrl, - options: Options( - method: "POST", - ), - data: { - "excel": "true", - "XQDM": _toPgSemesterText(info), - }, - ); - final scoreList = await ExamResultInit.pgService.fetchResultRawList(); - final courseList = parsePostgraduateCourseRawsFromHtml(timetableRes.data); - completePostgraduateCourseRawsFromPostgraduateScoreRaws(courseList, scoreList); - final timetableEntity = parsePostgraduateTimetableFromCourseRaw( - courseList, - campus: Settings.campus, - ); - return timetableEntity; - } - - String _toPgSemesterText(SemesterInfo info) { - assert(info.semester != Semester.all); - if (info.semester == Semester.term1) { - return "${info.exactYear}09"; - } else { - return "${info.exactYear + 1}02"; - } - } - - Future<({DateTime start, DateTime end})?> getUgSemesterSpan() async { - final res = await _ugRegSession.request( - "http://jwxt.sit.edu.cn/jwglxt/xtgl/index_cxAreaFive.html", - options: Options( - method: "POST", - ), - ); - return _parseSemesterSpan(res.data); - } - - static final _semesterSpanRe = RegExp(r"\((\S+)至(\S+)\)"); - static final _semesterSpanDateFormat = DateFormat("yyyy-MM-dd"); - - ({DateTime start, DateTime end})? _parseSemesterSpan(String content) { - final html = BeautifulSoup(content); - final element = html.find("th", attrs: {"style": "text-align: center"}); - if (element == null) return null; - final text = element.text; - final match = _semesterSpanRe.firstMatch(text); - if (match == null) return null; - final start = _semesterSpanDateFormat.tryParse(match.group(1) ?? ""); - final end = _semesterSpanDateFormat.tryParse(match.group(2) ?? ""); - if (start == null || end == null) return null; - return (start: start, end: end); - } -} diff --git a/lib/timetable/service/school.demo.dart b/lib/timetable/service/school.demo.dart deleted file mode 100644 index a09fb3062..000000000 --- a/lib/timetable/service/school.demo.dart +++ /dev/null @@ -1,144 +0,0 @@ -import 'package:sit/entity/campus.dart'; -import 'package:sit/school/entity/school.dart'; -import '../entity/timetable.dart'; -import 'school.dart'; - -class DemoTimetableService implements TimetableService { - const DemoTimetableService(); - - @override - Future checkConnectivity() async { - return true; - } - - @override - Future fetchUgTimetable(SemesterInfo info) async { - var key = 0; - return SitTimetable( - courses: { - "$key": SitCourse( - courseKey: key++, - courseName: '小应生活开发实训', - courseCode: 'dev', - classCode: '001', - campus: Campus.fengxian, - place: '小应生活实验室', - weekIndices: const TimetableWeekIndices([ - TimetableWeekIndex.all((start: 0, end: 19)), - ]), - timeslots: (start: 0, end: 2), - courseCredit: 6.0, - dayIndex: 0, - teachers: [], - ), - "$key": SitCourse( - courseKey: key++, - courseName: '小应生活运维实训', - courseCode: 'ops', - classCode: '002', - campus: Campus.fengxian, - place: '小应生活实验室', - weekIndices: const TimetableWeekIndices([ - TimetableWeekIndex.all((start: 0, end: 19)), - ]), - timeslots: (start: 5, end: 7), - courseCredit: 6.0, - dayIndex: 2, - teachers: [], - ), - "$key": SitCourse( - courseKey: key++, - courseName: '小应生活设计实训', - courseCode: 'design', - classCode: '003', - campus: Campus.fengxian, - place: '小应生活实验室', - weekIndices: const TimetableWeekIndices([ - TimetableWeekIndex.all((start: 0, end: 19)), - ]), - timeslots: (start: 2, end: 4), - courseCredit: 3.0, - dayIndex: 4, - teachers: [], - ), - "$key": SitCourse( - courseKey: key++, - courseName: '小应生活部署实训', - courseCode: 'deploy', - classCode: '004', - campus: Campus.fengxian, - place: '小应生活实验室', - weekIndices: const TimetableWeekIndices([ - TimetableWeekIndex.all((start: 0, end: 19)), - ]), - timeslots: (start: 0, end: 1), - courseCredit: 1.0, - dayIndex: 3, - teachers: [], - ), - "$key": SitCourse( - courseKey: key++, - courseName: '小应生活管理实训', - courseCode: 'management', - classCode: '005', - campus: Campus.fengxian, - place: '小应生活实验室', - weekIndices: const TimetableWeekIndices([ - TimetableWeekIndex.all((start: 0, end: 19)), - ]), - timeslots: (start: 5, end: 6), - courseCredit: 1.0, - dayIndex: 1, - teachers: [], - ), - "$key": SitCourse( - courseKey: key++, - courseName: '小应生活会议', - courseCode: 'meeting', - classCode: '006', - campus: Campus.fengxian, - place: '小应生活实验室', - weekIndices: const TimetableWeekIndices([ - TimetableWeekIndex.all((start: 0, end: 19)), - ]), - timeslots: (start: 2, end: 3), - courseCredit: 1.0, - dayIndex: 1, - teachers: [], - ), - "$key": SitCourse( - courseKey: key++, - courseName: '小应生活国际化实训', - courseCode: 'i18n', - classCode: '007', - campus: Campus.fengxian, - place: '小应生活实验室', - weekIndices: const TimetableWeekIndices([ - TimetableWeekIndex.all((start: 0, end: 19)), - ]), - timeslots: (start: 1, end: 2), - courseCredit: 1.0, - dayIndex: 2, - teachers: [], - ), - }, - lastCourseKey: key, - name: "小应生活的课程表", - startDate: DateTime.now(), - schoolYear: info.exactYear, - semester: info.semester, - lastModified: DateTime.now(), - ); - } - - @override - Future fetchPgTimetable(SemesterInfo info) async { - return fetchUgTimetable(info); - } - - @override - Future<({DateTime start, DateTime end})?> getUgSemesterSpan() async { - final now = DateTime.now(); - return (start: now, end: now.copyWith(month: now.month + 4)); - } -} diff --git a/lib/timetable/settings.dart b/lib/timetable/settings.dart deleted file mode 100644 index 0c02dcc71..000000000 --- a/lib/timetable/settings.dart +++ /dev/null @@ -1,65 +0,0 @@ -import 'dart:convert'; - -import 'package:flutter/foundation.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/timetable/entity/background.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/utils/json.dart'; - -import 'entity/cell_style.dart'; - -const _kAutoUseImported = true; -const _kQuickLookCourseOnTap = true; - -class _K { - static const ns = "/timetable"; - static const autoUseImported = "$ns/autoUseImported"; - static const backgroundImage = "$ns/backgroundImage"; - static const cellStyle = "$ns/cellStyle"; - static const quickLookLessonOnTap = "$ns/quickLookLessonOnTap"; -} - -class TimetableSettings { - final Box box; - - TimetableSettings(this.box); - - bool get autoUseImported => box.safeGet(_K.autoUseImported) ?? _kAutoUseImported; - - set autoUseImported(bool newV) => box.safePut(_K.autoUseImported, newV); - - late final $autoUseImported = box.provider(_K.autoUseImported); - - CourseCellStyle? get cellStyle => - decodeJsonObject(box.safeGet(_K.cellStyle), (obj) => CourseCellStyle.fromJson(obj)); - - set cellStyle(CourseCellStyle? newV) => - box.safePut(_K.cellStyle, encodeJsonObject(newV, (obj) => obj.toJson())); - - late final $cellStyle = box.provider( - _K.cellStyle, - get: () => cellStyle, - set: (v) => cellStyle = v, - ); - - ValueListenable listenCellStyle() => box.listenable(keys: [_K.cellStyle]); - - BackgroundImage? get backgroundImage => - decodeJsonObject(box.safeGet(_K.backgroundImage), (obj) => BackgroundImage.fromJson(obj)); - - set backgroundImage(BackgroundImage? newV) => box.safePut(_K.backgroundImage, jsonEncode(newV?.toJson())); - - late final $backgroundImage = box.provider( - _K.backgroundImage, - get: () => backgroundImage, - set: (v) => backgroundImage = v, - ); - - ValueListenable listenBackgroundImage() => box.listenable(keys: [_K.backgroundImage]); - - bool get quickLookLessonOnTap => box.safeGet(_K.quickLookLessonOnTap) ?? _kQuickLookCourseOnTap; - - set quickLookLessonOnTap(bool newV) => box.safePut(_K.quickLookLessonOnTap, newV); - - late final $quickLookLessonOnTap = box.provider(_K.quickLookLessonOnTap); -} diff --git a/lib/timetable/storage/timetable.dart b/lib/timetable/storage/timetable.dart deleted file mode 100644 index 2d2b14cd9..000000000 --- a/lib/timetable/storage/timetable.dart +++ /dev/null @@ -1,52 +0,0 @@ -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:sit/storage/hive/init.dart'; -import 'package:sit/storage/hive/table.dart'; -import 'package:sit/utils/hive.dart'; -import 'package:sit/timetable/entity/timetable.dart'; - -import '../entity/display.dart'; -import '../entity/platte.dart'; -import '../palette.dart'; - -class _K { - static const timetable = "/timetable"; - static const lastDisplayMode = "/lastDisplayMode"; - static const palette = "/palette"; -} - -class TimetableStorage { - Box get box => HiveInit.timetable; - - final HiveTable timetable; - final HiveTable palette; - - TimetableStorage() - : timetable = HiveTable( - base: _K.timetable, - box: HiveInit.timetable, - useJson: (fromJson: SitTimetable.fromJson, toJson: (timetable) => timetable.toJson()), - ), - palette = HiveTable( - base: _K.palette, - box: HiveInit.timetable, - useJson: (fromJson: TimetablePalette.fromJson, toJson: (palette) => palette.toJson()), - getDelegate: (id, builtin) { - // intercept builtin timetable - for (final timetable in BuiltinTimetablePalettes.all) { - if (timetable.id == id) return timetable; - } - return builtin(id); - }, - setDelegate: (id, newV, builtin) { - // skip builtin timetable - for (final timetable in BuiltinTimetablePalettes.all) { - if (timetable.id == id) return; - } - builtin(id, newV); - }, - ); - - DisplayMode? get lastDisplayMode => DisplayMode.at(box.safeGet(_K.lastDisplayMode)); - - set lastDisplayMode(DisplayMode? newValue) => box.safePut(_K.lastDisplayMode, newValue?.index); -} diff --git a/lib/timetable/utils.dart b/lib/timetable/utils.dart deleted file mode 100644 index d90cd1978..000000000 --- a/lib/timetable/utils.dart +++ /dev/null @@ -1,579 +0,0 @@ -import 'dart:convert'; -import 'dart:io'; - -import 'package:file_picker/file_picker.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter/widgets.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:open_file/open_file.dart'; -import 'package:permission_handler/permission_handler.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/entity/campus.dart'; -import 'package:sit/files.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/entity/school.dart'; -import 'package:sanitize_filename/sanitize_filename.dart'; -import 'package:share_plus/share_plus.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/timetable/entity/pos.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/utils/ical.dart'; -import 'package:sit/utils/permission.dart'; -import 'package:sit/utils/strings.dart'; -import 'package:universal_platform/universal_platform.dart'; -import '../school/exam_result/entity/result.pg.dart'; -import 'entity/timetable.dart'; - -import 'entity/course.dart'; -import 'entity/timetable_entity.dart'; -import 'dart:math'; - -import 'i18n.dart'; - -import 'page/ical.dart'; -import 'package:html/parser.dart'; - -const maxWeekLength = 20; - -final Map _weekday2Index = { - '星期一': 0, - '星期二': 1, - '星期三': 2, - '星期四': 3, - '星期五': 4, - '星期六': 5, - '星期日': 6, -}; - -/// Then the [weekText] could be `1-5周,14周,8-10周(单)` -/// The return value should be -/// ```dart -/// TimetableWeekIndices([ -/// TimetableWeekIndex.all( -/// (start: 0, end: 4) -/// ), -/// TimetableWeekIndex.single( -/// 13, -/// ), -/// TimetableWeekIndex.odd( -/// (start: 7, end: 9), -/// ), -/// ]) -/// ``` -TimetableWeekIndices _parseWeekText2RangedNumbers( - String weekText, { - required String allSuffix, - required String oddSuffix, - required String evenSuffix, -}) { - final weeks = weekText.split(','); -// Then the weeks should be ["1-5周","14周","8-10周(单)"] - final indices = []; - for (final week in weeks) { - // odd week - if (week.endsWith(oddSuffix)) { - final rangeText = week.removeSuffix(oddSuffix); - final range = rangeFromString(rangeText, number2index: true); - indices.add(TimetableWeekIndex.odd(range)); - } else if (week.endsWith(evenSuffix)) { - final rangeText = week.removeSuffix(evenSuffix); - final range = rangeFromString(rangeText, number2index: true); - indices.add(TimetableWeekIndex.even(range)); - } else if (week.endsWith(allSuffix)) { - final numberText = week.removeSuffix(allSuffix); - final range = rangeFromString(numberText, number2index: true); - indices.add(TimetableWeekIndex.all(range)); - } - } - return TimetableWeekIndices(indices); -} - -Campus _parseCampus(String campus) { - if (campus.contains("徐汇")) { - return Campus.xuhui; - } else { - return Campus.fengxian; - } -} - -SitTimetable parseUndergraduateTimetableFromCourseRaw(List all) { - final courseKey2Entity = {}; - var counter = 0; - for (final raw in all) { - final courseKey = counter++; - final weekIndices = _parseWeekText2RangedNumbers( - mapChinesePunctuations(raw.weekText), - allSuffix: "周", - oddSuffix: "周(单)", - evenSuffix: "周(双)", - ); - final dayIndex = _weekday2Index[raw.weekDayText]; - assert(dayIndex != null && 0 <= dayIndex && dayIndex < 7, "dayIndex isn't in range [0,6] but $dayIndex"); - if (dayIndex == null || !(0 <= dayIndex && dayIndex < 7)) continue; - final timeslots = rangeFromString(raw.timeslotsText, number2index: true); - assert(timeslots.start <= timeslots.end, "${timeslots.start} > ${timeslots.end} actually. ${raw.courseName}"); - final course = SitCourse( - courseKey: courseKey, - courseName: mapChinesePunctuations(raw.courseName).trim(), - courseCode: raw.courseCode.trim(), - classCode: raw.classCode.trim(), - campus: _parseCampus(raw.campus), - place: reformatPlace(mapChinesePunctuations(raw.place)), - weekIndices: weekIndices, - timeslots: timeslots, - courseCredit: double.tryParse(raw.courseCredit) ?? 0.0, - dayIndex: dayIndex, - teachers: raw.teachers.split(","), - ); - courseKey2Entity["$courseKey"] = course; - } - final res = SitTimetable( - courses: courseKey2Entity, - lastCourseKey: counter, - name: "", - startDate: DateTime.utc(0), - schoolYear: 0, - semester: Semester.term1, - lastModified: DateTime.now(), - ); - return res; -} - -Duration calcuSwitchAnimationDuration(num distance) { - final time = sqrt(max(1, distance) * 100000); - return Duration(milliseconds: time.toInt()); -} - -Future readTimetableFromPickedFile() async { - final result = await FilePicker.platform.pickFiles( - // Cannot limit the extensions. My RedMi phone just reject all files. - // type: FileType.custom, - // allowedExtensions: const ["timetable", "json"], - ); - if (result == null) return null; - final content = await _readTimetableFi(result.files.single); - if (content == null) return null; - final json = jsonDecode(content); - final timetable = SitTimetable.fromJson(json); - return timetable; -} - -Future readTimetableFromFile(String path) async { - final file = File(path); - final content = await file.readAsString(); - final json = jsonDecode(content); - final timetable = SitTimetable.fromJson(json); - return timetable; -} - -Future readTimetableFromFileWithPrompt(BuildContext context, String path) async { - try { - final timetable = await readTimetableFromFile(path); - return timetable; - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - if (!context.mounted) return null; - context.showTip( - title: "Format error", - desc: "The file isn't supported. Please select a timetable file.", - primary: i18n.ok, - ); - return null; - } -} - -Future readTimetableFromPickedFileWithPrompt(BuildContext context) async { - try { - final timetable = await readTimetableFromPickedFile(); - return timetable; - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - if (!context.mounted) return null; - if (error is PlatformException) { - await showPermissionDeniedDialog(context: context, permission: Permission.storage); - } else { - context.showTip( - title: "Format error", - desc: "The file isn't supported. Please select a timetable file.", - primary: i18n.ok, - ); - } - return null; - } -} - -Future _readTimetableFi(PlatformFile fi) async { - if (kIsWeb) { - final bytes = fi.bytes; - if (bytes == null) return null; - // timetable file should be encoding in utf-8. - return const Utf8Decoder().convert(bytes.toList()); - } else { - final path = fi.path; - if (path == null) return null; - final file = File(path); - return await file.readAsString(); - } -} - -Future exportTimetableFileAndShare( - SitTimetable timetable, { - required BuildContext context, -}) async { - final content = jsonEncode(timetable.toJson()); - var fileName = "${timetable.name}.timetable"; - if (timetable.signature.isNotEmpty) { - fileName = "${timetable.signature} $fileName"; - } - fileName = sanitizeFilename(fileName, replacement: "-"); - final timetableFi = Files.temp.subFile(fileName); - final sharePositionOrigin = context.getSharePositionOrigin(); - await timetableFi.writeAsString(content); - await Share.shareXFiles( - [XFile(timetableFi.path)], - sharePositionOrigin: sharePositionOrigin, - ); -} - -Future exportTimetableAsICalendarAndOpen( - BuildContext context, { - required SitTimetableEntity timetable, - required TimetableICalConfig config, -}) async { - final name = "${timetable.type.name}, ${context.formatYmdNum(timetable.type.startDate)}"; - final fileName = sanitizeFilename( - UniversalPlatform.isAndroid ? "$name #${DateTime.now().millisecondsSinceEpoch ~/ 1000}.ics" : "$name.ics", - replacement: "-", - ); - final calendarFi = Files.timetable.calendarDir.subFile(fileName); - final data = convertTimetable2ICal(timetable: timetable, config: config); - await calendarFi.writeAsString(data); - await OpenFile.open(calendarFi.path, type: "text/calendar"); -} - -String convertTimetable2ICal({ - required SitTimetableEntity timetable, - required TimetableICalConfig config, -}) { - final calendar = ICal( - company: 'mysit.life', - product: 'SIT Life', - lang: config.locale?.toLanguageTag() ?? "EN", - ); - final alarm = config.alarm; - final merged = config.isLessonMerged; - final added = {}; - for (final week in timetable.weeks) { - for (final day in week.days) { - for (final lessonSlot in day.timeslot2LessonSlot) { - for (final part in lessonSlot.lessons) { - final lesson = part.type; - if (merged && added.contains(lesson)) { - continue; - } else { - added.add(lesson); - } - final course = part.course; - final teachers = course.teachers.join(', '); - final startTime = (merged ? lesson.startTime : part.startTime).toUtc(); - final endTime = (merged ? lesson.endTime : part.endTime).toUtc(); - final uid = merged - ? "${R.appId}.${course.courseCode}.${week.index}.${day.index}.${lesson.startIndex}-${lesson.endIndex}" - : "${R.appId}.${course.courseCode}.${week.index}.${day.index}.${part.index}"; - // Use UTC - final event = calendar.addEvent( - uid: uid, - summary: course.courseName, - location: course.place, - description: teachers, - comment: teachers, - start: startTime, - end: endTime, - ); - if (alarm != null) { - final trigger = startTime.subtract(alarm.alarmBeforeClass).toUtc(); - if (alarm.isDisplayAlarm) { - event.addAlarmDisplay( - triggerDate: trigger, - description: "${course.courseName} ${course.place} $teachers", - repeating: (repeat: 1, duration: alarm.alarmDuration), - ); - } else { - event.addAlarmAudio( - triggerDate: trigger, - repeating: (repeat: 1, duration: alarm.alarmDuration), - ); - } - } - if (merged) { - // skip the `lessonParts` loop - break; - } - } - } - } - } - return calendar.build(); -} - -List parsePostgraduateCourseRawsFromHtml(String timetableHtmlContent) { - List> generateTimetable() { - List> timetable = []; - for (int i = 0; i < 9; i++) { - List timeslots = List.generate(14, (index) => -1); - timetable.add(timeslots); - } - return timetable; - } - - List courseList = []; - List> timetable = generateTimetable(); - const mapOfWeekday = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日']; - final courseCodeRegExp = RegExp(r"(.*?)(学硕\d+班|专硕\d+班|\d+班)$"); - final weekTextRegExp = RegExp(r"([\d-]+周(\([^)]*\))?)([\d-]+节)"); - - int parseWeekdayCodeFromIndex(int index, int row, {bool isFirst = false, int rowspan = 1}) { - if (!isFirst) { - index = index + 1; - } - for (int i = 0; i <= index; i++) { - if (timetable[i][row] != -1 && timetable[i][row] != row) { - index++; - } - } - for (int r = 0; r < rowspan; r++) { - timetable[index][row + r] = row; - } - return index - 2; - } - - void processNodes(List nodes, String weekday) { - if (nodes.length < 5) { - // 如果节点数量小于 5,不足以构成一个完整的 Course,忽略 - return; - } - - final locationWithTeacherStr = mapChinesePunctuations(nodes[4].text); - final locationWithTeacherList = locationWithTeacherStr.split(" "); - final location = locationWithTeacherList[0]; - final teacher = locationWithTeacherList[1]; - - var courseNameWithClassCode = mapChinesePunctuations(nodes[0].text); - final String courseName; - final String classCode; - RegExpMatch? courseNameWithClassCodeMatch = courseCodeRegExp.firstMatch(courseNameWithClassCode); - if (courseNameWithClassCodeMatch != null) { - courseName = courseNameWithClassCodeMatch.group(1) ?? ""; - classCode = courseNameWithClassCodeMatch.group(2) ?? ""; - } else { - courseName = courseNameWithClassCode; - classCode = ""; - } - - var weekTextWithTimeslotsText = mapChinesePunctuations(nodes[2].text); - final String weekText; - final String timeslotsText; - RegExpMatch? weekTextWithTimeslotsTextMatch = weekTextRegExp.firstMatch(weekTextWithTimeslotsText); - if (weekTextWithTimeslotsTextMatch != null) { - weekText = weekTextWithTimeslotsTextMatch.group(1) ?? ""; - timeslotsText = weekTextWithTimeslotsTextMatch.group(3) ?? ""; - } else { - weekText = ""; - timeslotsText = ""; - } - - final course = PostgraduateCourseRaw( - courseName: courseName, - weekDayText: weekday, - weekText: weekText, - timeslotsText: timeslotsText, - teachers: teacher, - place: location, - classCode: classCode, - courseCode: "", - courseCredit: "", - creditHour: "", - ); - - courseList.add(course); - - // 移除处理过的节点,继续处理剩余的节点 - nodes.removeRange(0, 7); - - if (nodes.isNotEmpty) { - processNodes(nodes, weekday); - } - } - - final document = parse(timetableHtmlContent); - final table = document.querySelector('table'); - final trList = table!.querySelectorAll('tr'); - for (var tr in trList) { - final row = trList.indexOf(tr); - final tdList = tr.querySelectorAll('td'); - for (var td in tdList) { - String firstTdContent = tdList[0].text; - bool isFirst = const ["上午", "下午", "晚上"].contains(firstTdContent); - if (td.innerHtml.contains("br")) { - final index = tdList.indexOf(td); - final rowspan = int.parse(td.attributes["rowspan"] ?? "1"); - int weekdayCode = parseWeekdayCodeFromIndex(index, row, isFirst: isFirst, rowspan: rowspan); - String weekday = mapOfWeekday[weekdayCode]; - final nodes = td.nodes; - processNodes(nodes, weekday); - } - } - } - return courseList; -} - -void completePostgraduateCourseRawsFromPostgraduateScoreRaws( - List courseList, List scoreList) { - var name2Score = {}; - - for (var score in scoreList) { - var key = score.courseName.replaceAll(" ", ""); - name2Score[key] = score; - } - - for (var course in courseList) { - var key = course.courseName.replaceAll(" ", ""); - var score = name2Score[key]; - if (score != null) { - course.courseCode = score.courseCode; - course.courseCredit = score.credit; - } - } -} - -SitTimetable parsePostgraduateTimetableFromCourseRaw( - List all, { - required Campus campus, -}) { - final courseKey2Entity = {}; - var counter = 0; - for (final raw in all) { - final courseKey = counter++; - final weekIndices = _parseWeekText2RangedNumbers( - mapChinesePunctuations(raw.weekText), - allSuffix: "周", - oddSuffix: "周(单周)", - evenSuffix: "周(双周)", - ); - final dayIndex = _weekday2Index[raw.weekDayText]; - assert(dayIndex != null && 0 <= dayIndex && dayIndex < 7, "dayIndex isn't in range [0,6] but $dayIndex"); - if (dayIndex == null || !(0 <= dayIndex && dayIndex < 7)) continue; - final timeslotsText = raw.timeslotsText.endsWith("节") - ? raw.timeslotsText.substring(0, raw.timeslotsText.length - 1) - : raw.timeslotsText; - final timeslots = rangeFromString(timeslotsText, number2index: true); - assert(timeslots.start <= timeslots.end, "${timeslots.start} > ${timeslots.end} actually. ${raw.courseName}"); - final course = SitCourse( - courseKey: courseKey, - courseName: mapChinesePunctuations(raw.courseName).trim(), - courseCode: raw.courseCode.trim(), - classCode: raw.classCode.trim(), - campus: campus, - place: reformatPlace(mapChinesePunctuations(raw.place)), - weekIndices: weekIndices, - timeslots: timeslots, - courseCredit: double.tryParse(raw.courseCredit) ?? 0.0, - dayIndex: dayIndex, - teachers: raw.teachers.split(","), - ); - courseKey2Entity["$courseKey"] = course; - } - final res = SitTimetable( - courses: courseKey2Entity, - lastCourseKey: counter, - name: "", - startDate: DateTime.utc(0), - schoolYear: 0, - semester: Semester.term1, - lastModified: DateTime.now(), - ); - return res; -} - -Future selectWeekInTimetable({ - required BuildContext context, - required SitTimetable timetable, - int? initialWeekIndex, - required String submitLabel, -}) async { - final todayPos = timetable.locate(DateTime.now()); - final todayIndex = todayPos.weekIndex; - final controller = FixedExtentScrollController(initialItem: initialWeekIndex ?? todayIndex); - final selectedWeek = await context.showPicker( - count: 20, - controller: controller, - ok: submitLabel, - okEnabled: (curSelected) => curSelected != initialWeekIndex, - actions: [ - (ctx, curSelected) => PlatformTextButton( - onPressed: (curSelected == todayIndex) - ? null - : () { - controller.animateToItem(todayIndex, - duration: const Duration(milliseconds: 500), curve: Curves.fastEaseInToSlowEaseOut); - }, - child: i18n.findToday.text(), - ) - ], - make: (ctx, i) { - return Text(i18n.weekOrderedName(number: i + 1)); - }, - ) ?? - initialWeekIndex; - controller.dispose(); - return selectedWeek; -} - -Future selectDayInTimetable({ - required BuildContext context, - required SitTimetable timetable, - TimetablePos? initialPos, - required String submitLabel, -}) async { - final initialWeekIndex = initialPos?.weekIndex; - final initialDayIndex = initialPos?.weekday.index; - final todayPos = timetable.locate(DateTime.now()); - final todayWeekIndex = todayPos.weekIndex; - final todayDayIndex = todayPos.weekday.index; - final $week = FixedExtentScrollController(initialItem: initialPos?.weekIndex ?? todayWeekIndex); - final $day = FixedExtentScrollController(initialItem: initialDayIndex ?? todayDayIndex); - final (selectedWeek, selectedDay) = await context.showDualPicker( - countA: 20, - countB: 7, - controllerA: $week, - controllerB: $day, - ok: submitLabel, - okEnabled: (weekSelected, daySelected) => weekSelected != initialWeekIndex || daySelected != initialDayIndex, - actions: [ - (ctx, week, day) => PlatformTextButton( - onPressed: (week == todayWeekIndex && day == todayDayIndex) - ? null - : () { - $week.animateToItem(todayWeekIndex, - duration: const Duration(milliseconds: 500), curve: Curves.fastEaseInToSlowEaseOut); - - $day.animateToItem(todayDayIndex, - duration: const Duration(milliseconds: 500), curve: Curves.fastEaseInToSlowEaseOut); - }, - child: i18n.findToday.text(), - ) - ], - makeA: (ctx, i) => i18n.weekOrderedName(number: i + 1).text(), - makeB: (ctx, i) => Weekday.fromIndex(i).l10n().text(), - ) ?? - (initialWeekIndex, initialDayIndex); - $week.dispose(); - $day.dispose(); - return selectedWeek != null && selectedDay != null - ? TimetablePos(weekIndex: selectedWeek, weekday: Weekday.fromIndex(selectedDay)) - : null; -} diff --git a/lib/timetable/widgets/course.dart b/lib/timetable/widgets/course.dart deleted file mode 100644 index 382633aa8..000000000 --- a/lib/timetable/widgets/course.dart +++ /dev/null @@ -1,60 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/design/widgets/expansion_tile.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/widgets/course.dart'; -import 'package:sit/timetable/entity/timetable.dart'; -import '../i18n.dart'; - -class TimetableCourseCard extends StatelessWidget { - final String courseName; - final String courseCode; - final String classCode; - final List courses; - final Color? color; - - const TimetableCourseCard({ - super.key, - required this.courseName, - required this.courseCode, - required this.classCode, - required this.courses, - this.color, - }); - - @override - Widget build(BuildContext context) { - final allHidden = courses.every((c) => c.hidden); - final templateStyle = TextStyle(color: allHidden ? context.theme.disabledColor : null); - return AnimatedExpansionTile( - leading: CourseIcon( - courseName: courseName, - enabled: !allHidden, - ), - title: courseName.text(style: templateStyle), - subtitle: [ - if (courseCode.isNotEmpty) "${i18n.course.courseCode} $courseCode".text(style: templateStyle), - if (classCode.isNotEmpty) "${i18n.course.classCode} $classCode".text(style: templateStyle), - ].column(caa: CrossAxisAlignment.start), - children: courses.map((course) { - final weekNumbers = course.weekIndices.l10n(); - final (:begin, :end) = course.calcBeginEndTimePoint(); - return ListTile( - isThreeLine: true, - enabled: !course.hidden, - title: course.place.text(), - trailing: course.teachers.join(", ").text(), - subtitle: [ - "${Weekday.fromIndex(course.dayIndex).l10n()} ${begin.l10n(context)}–${end.l10n(context)}".text(), - ...weekNumbers.map((n) => n.text()), - ].column(mas: MainAxisSize.min, caa: CrossAxisAlignment.start), - ); - }).toList(), - ).inAnyCard( - clip: Clip.hardEdge, - type: allHidden ? CardVariant.outlined : CardVariant.filled, - color: allHidden ? null : color, - ); - } -} diff --git a/lib/timetable/widgets/focus.dart b/lib/timetable/widgets/focus.dart deleted file mode 100644 index 401ed16cd..000000000 --- a/lib/timetable/widgets/focus.dart +++ /dev/null @@ -1,44 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/school/i18n.dart' as $school; -import 'package:sit/life/i18n.dart' as $life; -import 'package:sit/game/i18n.dart' as $game; -import 'package:sit/me/i18n.dart' as $me; -import 'package:sit/settings/dev.dart'; - -List buildFocusPopupActions(BuildContext context) { - return [ - const PullDownDivider(), - PullDownItem( - icon: context.icons.person, - title: $me.i18n.navigation, - onTap: () async { - await context.push("/me"); - }, - ), - PullDownItem( - icon: Icons.school_outlined, - title: $school.i18n.navigation, - onTap: () async { - await context.push("/school"); - }, - ), - PullDownItem( - icon: Icons.spa_outlined, - title: $life.i18n.navigation, - onTap: () async { - await context.push("/life"); - }, - ), - if (Dev.on) - PullDownItem( - icon: Icons.videogame_asset_outlined, - title: $game.i18n.navigation, - onTap: () async { - await context.push("/game"); - }, - ), - ]; -} diff --git a/lib/timetable/widgets/free.dart b/lib/timetable/widgets/free.dart deleted file mode 100644 index eb13ff277..000000000 --- a/lib/timetable/widgets/free.dart +++ /dev/null @@ -1,149 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:rettulf/rettulf.dart'; -import '../entity/pos.dart'; -import '../entity/timetable_entity.dart'; -import '../events.dart'; -import '../i18n.dart'; - -class FreeDayTip extends StatelessWidget { - final SitTimetableEntity timetable; - final int weekIndex; - final Weekday weekday; - - const FreeDayTip({ - super.key, - required this.timetable, - required this.weekIndex, - required this.weekday, - }); - - @override - Widget build(BuildContext context) { - final todayPos = timetable.type.locate(DateTime.now()); - final isToday = todayPos.weekIndex == weekIndex && todayPos.weekday == weekday; - final String desc; - if (isToday) { - desc = i18n.freeTip.isTodayTip; - } else { - desc = i18n.freeTip.dayTip; - } - return LeavingBlank( - icon: Icons.free_cancellation_rounded, - desc: desc, - subtitle: PlatformTextButton( - onPressed: () async { - await jumpToNearestDayWithClass(context, weekIndex, weekday.index); - }, - child: i18n.freeTip.findNearestDayWithClass.text(), - ), - ); - } - - /// Find the nearest day with class forward. - /// No need to look back to passed days, unless there's no day after [weekIndex] and [dayIndex] that has any class. - Future jumpToNearestDayWithClass( - BuildContext ctx, - int weekIndex, - int dayIndex, - ) async { - for (int i = weekIndex; i < timetable.weeks.length; i++) { - final week = timetable.weeks[i]; - if (!week.isFree) { - final dayIndexStart = weekIndex == i ? dayIndex : 0; - for (int j = dayIndexStart; j < week.days.length; j++) { - final day = week.days[j]; - if (day.hasAnyLesson()) { - eventBus.fire(JumpToPosEvent(TimetablePos(weekIndex: i, weekday: Weekday.fromIndex(j)))); - return; - } - } - } - } - // Now there's no class forward, so let's search backward. - for (int i = weekIndex; 0 <= i; i--) { - final week = timetable.weeks[i]; - if (!week.isFree) { - final dayIndexStart = weekIndex == i ? dayIndex : week.days.length - 1; - for (int j = dayIndexStart; 0 <= j; j--) { - final day = week.days[j]; - if (day.hasAnyLesson()) { - eventBus.fire(JumpToPosEvent(TimetablePos(weekIndex: i, weekday: Weekday.fromIndex(j)))); - return; - } - } - } - } - // WHAT? NO CLASS IN THE WHOLE TERM? - // Alright, let's congratulate them! - if (!ctx.mounted) return; - await ctx.showTip(title: i18n.congratulations, desc: i18n.freeTip.termTip, primary: i18n.ok); - } -} - -class FreeWeekTip extends StatelessWidget { - final SitTimetableEntity timetable; - final int weekIndex; - - const FreeWeekTip({ - super.key, - required this.timetable, - required this.weekIndex, - }); - - @override - Widget build(BuildContext context) { - final String desc; - final todayPos = timetable.type.locate(DateTime.now()); - if (todayPos.weekIndex == weekIndex) { - desc = i18n.freeTip.isThisWeekTip; - } else { - desc = i18n.freeTip.weekTip; - } - return LeavingBlank( - icon: Icons.free_cancellation_rounded, - desc: desc, - subtitle: PlatformTextButton( - onPressed: () async { - await jumpToNearestWeekWithClass( - context, - weekIndex, - defaultWeekday: Weekday.monday, - ); - }, - child: i18n.freeTip.findNearestWeekWithClass.text(), - ), - ); - } - - /// Find the nearest week with class forward. - /// No need to look back to passed weeks, unless there's no week after [weekIndex] that has any class. - Future jumpToNearestWeekWithClass( - BuildContext ctx, - int weekIndex, { - required Weekday defaultWeekday, - }) async { - for (int i = weekIndex; i < timetable.weeks.length; i++) { - final week = timetable.weeks[i]; - if (!week.isFree) { - eventBus.fire(JumpToPosEvent(TimetablePos(weekIndex: i, weekday: defaultWeekday))); - return; - } - } - // Now there's no class forward, so let's search backward. - for (int i = weekIndex; 0 <= i; i--) { - final week = timetable.weeks[i]; - if (!week.isFree) { - eventBus.fire(JumpToPosEvent(TimetablePos(weekIndex: i, weekday: defaultWeekday))); - return; - } - } - // WHAT? NO CLASS IN THE WHOLE TERM? - // Alright, let's congratulate them! - if (!ctx.mounted) return; - await ctx.showTip(title: i18n.congratulations, desc: i18n.freeTip.termTip, primary: i18n.ok); - } -} diff --git a/lib/timetable/widgets/issue.dart b/lib/timetable/widgets/issue.dart deleted file mode 100644 index 4bb425044..000000000 --- a/lib/timetable/widgets/issue.dart +++ /dev/null @@ -1,167 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/widgets/expansion_tile.dart'; -import 'package:sit/l10n/time.dart'; - -import '../entity/timetable.dart'; -import '../entity/issue.dart'; -import '../page/edit/course_editor.dart'; -import '../i18n.dart'; - -extension TimetableIssuesX on List { - List build({ - required BuildContext context, - required SitTimetable timetable, - required ValueChanged onTimetableChanged, - }) { - final emptyIssues = whereType().toList(); - final cbeIssues = whereType().toList(); - final courseOverlapIssues = whereType().toList(); - return [ - if (emptyIssues.isNotEmpty) - TimetableEmptyIssueWidget( - issues: emptyIssues, - ), - if (cbeIssues.isNotEmpty) - TimetableCbeIssueWidget( - issues: cbeIssues, - timetable: timetable, - onTimetableChanged: onTimetableChanged, - ), - if (courseOverlapIssues.isNotEmpty) - TimetableCourseOverlapIssueWidget( - issues: courseOverlapIssues, - timetable: timetable, - onTimetableChanged: onTimetableChanged, - ), - ]; - } -} - -class TimetableEmptyIssueWidget extends StatefulWidget { - final List issues; - - const TimetableEmptyIssueWidget({ - super.key, - required this.issues, - }); - - @override - State createState() => _TimetableEmptyIssueWidgetState(); -} - -class _TimetableEmptyIssueWidgetState extends State { - @override - Widget build(BuildContext context) { - return Card.outlined( - clipBehavior: Clip.hardEdge, - child: ListTile( - title: i18n.issue.emptyIssue.text(), - subtitle: i18n.issue.emptyIssueDesc.text(), - ), - ); - } -} - -class TimetableCbeIssueWidget extends StatefulWidget { - final List issues; - final SitTimetable timetable; - final ValueChanged onTimetableChanged; - - const TimetableCbeIssueWidget({ - super.key, - required this.issues, - required this.timetable, - required this.onTimetableChanged, - }); - - @override - State createState() => _TimetableCbeIssueWidgetState(); -} - -class _TimetableCbeIssueWidgetState extends State { - @override - Widget build(BuildContext context) { - final timetable = widget.timetable; - return Card.outlined( - clipBehavior: Clip.hardEdge, - child: AnimatedExpansionTile( - initiallyExpanded: true, - title: i18n.issue.cbeCourseIssue.text(), - subtitle: i18n.issue.cbeCourseIssueDesc.text(), - children: widget.issues.map((issue) { - final course = timetable.courses["${issue.courseKey}"]!; - return ListTile( - title: course.courseName.text(), - subtitle: [ - course.place.text(), - ].column(caa: CrossAxisAlignment.start), - trailing: PlatformTextButton( - child: i18n.issue.resolve.text(), - onPressed: () async { - final newCourse = await context.showSheet( - (ctx) => SitCourseEditorPage( - title: i18n.editor.editCourse, - course: course, - editable: const SitCourseEditable.only(hidden: true), - ), - ); - if (newCourse == null) return; - final newTimetable = timetable.copyWith( - courses: Map.of(timetable.courses)..["${newCourse.courseKey}"] = newCourse, - ); - widget.onTimetableChanged(newTimetable); - }, - ), - ); - }).toList(), - ), - ); - } -} - -class TimetableCourseOverlapIssueWidget extends StatefulWidget { - final List issues; - final SitTimetable timetable; - final ValueChanged onTimetableChanged; - - const TimetableCourseOverlapIssueWidget({ - super.key, - required this.issues, - required this.timetable, - required this.onTimetableChanged, - }); - - @override - State createState() => _TimetableCourseOverlapIssueWidgetState(); -} - -class _TimetableCourseOverlapIssueWidgetState extends State { - @override - Widget build(BuildContext context) { - final timetable = widget.timetable; - return Card.outlined( - clipBehavior: Clip.hardEdge, - child: AnimatedExpansionTile( - initiallyExpanded: true, - title: i18n.issue.courseOverlapsIssue.text(), - subtitle: i18n.issue.courseOverlapsIssueDesc.text(), - children: widget.issues.map((issue) { - final courses = issue.courseKeys.map((key) => timetable.courses["$key"]).whereType().toList(); - return ListTile( - title: courses.map((course) => course.courseName).join(", ").text(), - subtitle: [ - ...courses.map((course) { - final (:begin, :end) = course.calcBeginEndTimePoint(); - return "${Weekday.fromIndex(course.dayIndex).l10n()} ${begin.l10n(context)}–${end.l10n(context)}" - .text(); - }), - ].column(caa: CrossAxisAlignment.start), - ); - }).toList(), - ), - ); - } -} diff --git a/lib/timetable/widgets/patch/copy_day.dart b/lib/timetable/widgets/patch/copy_day.dart deleted file mode 100644 index 277741403..000000000 --- a/lib/timetable/widgets/patch/copy_day.dart +++ /dev/null @@ -1,185 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/timetable/entity/loc.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/patch.dart'; -import '../../entity/timetable.dart'; -import '../../page/preview.dart'; -import '../../i18n.dart'; -import 'shared.dart'; - -class TimetableCopyDayPatchSheet extends StatefulWidget { - final SitTimetable timetable; - final TimetableCopyDayPatch? patch; - - const TimetableCopyDayPatchSheet({ - super.key, - required this.timetable, - required this.patch, - }); - - @override - State createState() => _TimetableCopyDayPatchSheetState(); -} - -class _TimetableCopyDayPatchSheetState extends State { - TimetableDayLoc? get initialSource => widget.patch?.source; - - TimetableDayLoc? get initialTarget => widget.patch?.target; - late var mode = initialSource?.mode ?? TimetableDayLocMode.date; - late var sourcePos = initialSource?.mode == TimetableDayLocMode.pos ? initialSource?.pos : null; - late var sourceDate = initialSource?.mode == TimetableDayLocMode.date ? initialSource?.date : null; - late var targetPos = initialTarget?.mode == TimetableDayLocMode.pos ? initialTarget?.pos : null; - late var targetDate = initialTarget?.mode == TimetableDayLocMode.date ? initialTarget?.date : null; - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - bool canSave() => buildPatch() != null; - - @override - Widget build(BuildContext context) { - final patch = buildPatch(); - return PromptSaveBeforeQuitScope( - changed: anyChanged && canSave(), - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TimetablePatchType.copyDay.l10n().text(), - actions: [ - PlatformTextButton( - onPressed: onPreview, - child: i18n.preview.text(), - ), - PlatformTextButton( - onPressed: canSave() ? onSave : null, - child: i18n.save.text(), - ), - ], - ), - SliverList.list(children: [ - buildMode().padSymmetric(v: 8, h: 16), - ...switch (mode) { - TimetableDayLocMode.pos => buildPosTab(), - TimetableDayLocMode.date => buildDateTab(), - }, - if (patch != null) - ListTile( - title: patch.l10n().text(), - ) - ]), - ], - ), - ), - ); - } - - Widget buildMode() { - return TimetableDayLocModeSwitcher( - selected: mode, - onSelected: (newMode) async { - setState(() { - mode = newMode; - }); - }, - ); - } - - List buildPosTab() { - return [ - TimetableDayLocPosSelectionTile( - leading: const Icon(Icons.output), - title: i18n.patch.copySource.text(), - timetable: widget.timetable, - pos: sourcePos, - onChanged: (newPos) { - setState(() { - sourcePos = newPos; - }); - markChanged(); - }, - ), - TimetableDayLocPosSelectionTile( - leading: const Icon(Icons.input), - title: i18n.patch.copyTarget.text(), - timetable: widget.timetable, - pos: targetPos, - onChanged: (newPos) { - setState(() { - targetPos = newPos; - }); - markChanged(); - }, - ), - ]; - } - - List buildDateTab() { - return [ - TimetableDayLocDateSelectionTile( - leading: const Icon(Icons.output), - title: i18n.patch.copySource.text(), - timetable: widget.timetable, - date: sourceDate, - onChanged: (newPos) { - setState(() { - sourceDate = newPos; - }); - markChanged(); - }, - ), - TimetableDayLocDateSelectionTile( - leading: const Icon(Icons.input), - title: i18n.patch.copyTarget.text(), - timetable: widget.timetable, - date: targetDate, - onChanged: (newPos) { - setState(() { - targetDate = newPos; - }); - markChanged(); - }, - ), - ]; - } - - Future onPreview() async { - await previewTimetable(context, timetable: buildTimetable()); - } - - void onSave() { - context.pop(buildPatch()); - } - - SitTimetable buildTimetable() { - final patch = buildPatch(); - final newPatches = List.of(widget.timetable.patches); - if (patch != null) { - newPatches.add(patch); - } - return widget.timetable.copyWith( - patches: newPatches, - ); - } - - TimetableCopyDayPatch? buildPatch() { - final sourcePos = this.sourcePos; - final sourceDate = this.sourceDate; - final targetPos = this.targetPos; - final targetDate = this.targetDate; - final source = switch (mode) { - TimetableDayLocMode.pos => sourcePos != null ? TimetableDayLoc.pos(sourcePos) : null, - TimetableDayLocMode.date => sourceDate != null ? TimetableDayLoc.date(sourceDate) : null, - }; - final target = switch (mode) { - TimetableDayLocMode.pos => targetPos != null ? TimetableDayLoc.pos(targetPos) : null, - TimetableDayLocMode.date => targetDate != null ? TimetableDayLoc.date(targetDate) : null, - }; - return source != null && target != null ? TimetableCopyDayPatch(source: source, target: target) : null; - } -} diff --git a/lib/timetable/widgets/patch/move_day.dart b/lib/timetable/widgets/patch/move_day.dart deleted file mode 100644 index 4c5ce40cd..000000000 --- a/lib/timetable/widgets/patch/move_day.dart +++ /dev/null @@ -1,185 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/timetable/entity/loc.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/patch.dart'; -import '../../entity/timetable.dart'; -import '../../page/preview.dart'; -import '../../i18n.dart'; -import 'shared.dart'; - -class TimetableMoveDayPatchSheet extends StatefulWidget { - final SitTimetable timetable; - final TimetableMoveDayPatch? patch; - - const TimetableMoveDayPatchSheet({ - super.key, - required this.timetable, - required this.patch, - }); - - @override - State createState() => _TimetableMoveDayPatchSheetState(); -} - -class _TimetableMoveDayPatchSheetState extends State { - TimetableDayLoc? get initialSource => widget.patch?.source; - - TimetableDayLoc? get initialTarget => widget.patch?.target; - late var mode = initialSource?.mode ?? TimetableDayLocMode.date; - late var sourcePos = initialSource?.mode == TimetableDayLocMode.pos ? initialSource?.pos : null; - late var sourceDate = initialSource?.mode == TimetableDayLocMode.date ? initialSource?.date : null; - late var targetPos = initialTarget?.mode == TimetableDayLocMode.pos ? initialTarget?.pos : null; - late var targetDate = initialTarget?.mode == TimetableDayLocMode.date ? initialTarget?.date : null; - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - bool canSave() => buildPatch() != null; - - @override - Widget build(BuildContext context) { - final patch = buildPatch(); - return PromptSaveBeforeQuitScope( - changed: anyChanged && canSave(), - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TimetablePatchType.moveDay.l10n().text(), - actions: [ - PlatformTextButton( - onPressed: onPreview, - child: i18n.preview.text(), - ), - PlatformTextButton( - onPressed: canSave() ? onSave : null, - child: i18n.save.text(), - ), - ], - ), - SliverList.list(children: [ - buildMode().padSymmetric(v: 8, h: 16), - ...switch (mode) { - TimetableDayLocMode.pos => buildPosTab(), - TimetableDayLocMode.date => buildDateTab(), - }, - if (patch != null) - ListTile( - title: patch.l10n().text(), - ) - ]), - ], - ), - ), - ); - } - - Widget buildMode() { - return TimetableDayLocModeSwitcher( - selected: mode, - onSelected: (newMode) async { - setState(() { - mode = newMode; - }); - }, - ); - } - - List buildPosTab() { - return [ - TimetableDayLocPosSelectionTile( - leading: const Icon(Icons.output), - title: i18n.patch.moveSource.text(), - timetable: widget.timetable, - pos: sourcePos, - onChanged: (newPos) { - setState(() { - sourcePos = newPos; - }); - markChanged(); - }, - ), - TimetableDayLocPosSelectionTile( - leading: const Icon(Icons.input), - title: i18n.patch.moveTarget.text(), - timetable: widget.timetable, - pos: targetPos, - onChanged: (newPos) { - setState(() { - targetPos = newPos; - }); - markChanged(); - }, - ), - ]; - } - - List buildDateTab() { - return [ - TimetableDayLocDateSelectionTile( - leading: const Icon(Icons.output), - title: i18n.patch.moveSource.text(), - timetable: widget.timetable, - date: sourceDate, - onChanged: (newPos) { - setState(() { - sourceDate = newPos; - }); - markChanged(); - }, - ), - TimetableDayLocDateSelectionTile( - leading: const Icon(Icons.input), - title: i18n.patch.moveTarget.text(), - timetable: widget.timetable, - date: targetDate, - onChanged: (newPos) { - setState(() { - targetDate = newPos; - }); - markChanged(); - }, - ), - ]; - } - - Future onPreview() async { - await previewTimetable(context, timetable: buildTimetable()); - } - - void onSave() { - context.pop(buildPatch()); - } - - SitTimetable buildTimetable() { - final patch = buildPatch(); - final newPatches = List.of(widget.timetable.patches); - if (patch != null) { - newPatches.add(patch); - } - return widget.timetable.copyWith( - patches: newPatches, - ); - } - - TimetableMoveDayPatch? buildPatch() { - final sourcePos = this.sourcePos; - final sourceDate = this.sourceDate; - final targetPos = this.targetPos; - final targetDate = this.targetDate; - final source = switch (mode) { - TimetableDayLocMode.pos => sourcePos != null ? TimetableDayLoc.pos(sourcePos) : null, - TimetableDayLocMode.date => sourceDate != null ? TimetableDayLoc.date(sourceDate) : null, - }; - final target = switch (mode) { - TimetableDayLocMode.pos => targetPos != null ? TimetableDayLoc.pos(targetPos) : null, - TimetableDayLocMode.date => targetDate != null ? TimetableDayLoc.date(targetDate) : null, - }; - return source != null && target != null ? TimetableMoveDayPatch(source: source, target: target) : null; - } -} diff --git a/lib/timetable/widgets/patch/patch_set.dart b/lib/timetable/widgets/patch/patch_set.dart deleted file mode 100644 index 03c95af48..000000000 --- a/lib/timetable/widgets/patch/patch_set.dart +++ /dev/null @@ -1,134 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/expansion_tile.dart'; -import 'package:sit/timetable/entity/patch.dart'; -import 'package:sit/timetable/page/patch/patch_set.dart'; -import '../../entity/timetable.dart'; -import '../../i18n.dart'; -import '../../page/preview.dart'; -import 'shared.dart'; - -class TimetablePatchSetCard extends StatelessWidget { - final TimetablePatchSet patchSet; - final bool selected; - final SitTimetable? timetable; - final VoidCallback? onDeleted; - final VoidCallback? onUnpacked; - final ValueChanged? onChanged; - final bool enableQrCode; - final bool optimizedForTouch; - - const TimetablePatchSetCard({ - super.key, - required this.patchSet, - this.timetable, - this.onDeleted, - this.selected = false, - this.optimizedForTouch = false, - this.onUnpacked, - this.onChanged, - this.enableQrCode = true, - }); - - @override - Widget build(BuildContext context) { - final detailsColor = selected ? context.colorScheme.primary : context.colorScheme.onSurfaceVariant; - final detailsStyle = context.textTheme.bodyMedium?.copyWith( - color: detailsColor, - ); - return Card.outlined( - clipBehavior: Clip.hardEdge, - margin: EdgeInsets.zero, - child: AnimatedExpansionTile( - selected: selected, - leading: PatchIcon( - icon: Icons.dashboard_customize, - optimizedForTouch: optimizedForTouch, - inCard: false, - ), - title: patchSet.name.text(), - trailing: buildMoreActions(), - rotateTrailing: false, - children: patchSet.patches - .mapIndexed( - (i, p) => RichText( - text: TextSpan( - style: detailsStyle, - children: [ - WidgetSpan( - child: Icon( - p.type.icon, - color: detailsColor, - size: 16, - ), - ), - TextSpan(text: p.l10n()), - ], - ), - ).padSymmetric(h: 16), - ) - .toList(), - ), - ); - } - - Widget buildMoreActions() { - final onChanged = this.onChanged; - final timetable = this.timetable; - return PullDownMenuButton( - itemBuilder: (context) { - return [ - if (timetable != null) - PullDownItem( - icon: context.icons.edit, - title: i18n.edit, - onTap: onChanged == null - ? null - : () async { - final newPatchSet = await context.showSheet( - (ctx) => TimetablePatchSetEditorPage( - timetable: timetable, - patchSet: patchSet, - ), - ); - if (newPatchSet == null) return; - onChanged(newPatchSet); - }, - ), - PullDownItem( - icon: context.icons.preview, - title: i18n.preview, - onTap: () async { - await previewTimetable(context, timetable: timetable); - }, - ), - if (!kIsWeb && enableQrCode) - PullDownItem( - icon: context.icons.qrcode, - title: i18n.shareQrCode, - onTap: () async { - shareTimetablePatchQrCode(context, patchSet); - }, - ), - if (onUnpacked != null) - PullDownItem( - icon: Icons.outbox, - title: i18n.patch.unpack, - onTap: onUnpacked, - ), - if (onDeleted != null) - PullDownItem.delete( - icon: context.icons.delete, - title: i18n.delete, - onTap: onDeleted, - ), - ]; - }, - ); - } -} diff --git a/lib/timetable/widgets/patch/prefab.dart b/lib/timetable/widgets/patch/prefab.dart deleted file mode 100644 index 52e8232b4..000000000 --- a/lib/timetable/widgets/patch/prefab.dart +++ /dev/null @@ -1,48 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/timetable/entity/patch.dart'; - -class TimetablePatchSetGalleryCard extends StatelessWidget { - final TimetablePatchSet patchSet; - final VoidCallback onAdd; - - const TimetablePatchSetGalleryCard({ - super.key, - required this.patchSet, - required this.onAdd, - }); - - @override - Widget build(BuildContext context) { - final detailsColor = context.colorScheme.onSurfaceVariant; - final detailsStyle = context.textTheme.bodyMedium?.copyWith(color: detailsColor); - return Card.outlined( - clipBehavior: Clip.hardEdge, - child: ListTile( - isThreeLine: true, - title: patchSet.name.text(style: context.textTheme.titleLarge?.copyWith(color: context.colorScheme.onSurface)), - onTap: onAdd, - subtitle: [ - ...patchSet.patches.mapIndexed( - (i, p) => RichText( - text: TextSpan( - style: detailsStyle, - children: [ - WidgetSpan( - child: Icon( - p.type.icon, - color: detailsColor, - size: 16, - ), - ), - TextSpan(text: p.l10n()), - ], - ), - ), - ), - ].column(caa: CrossAxisAlignment.start), - ), - ); - } -} diff --git a/lib/timetable/widgets/patch/remove_day.dart b/lib/timetable/widgets/patch/remove_day.dart deleted file mode 100644 index ebbd99ae7..000000000 --- a/lib/timetable/widgets/patch/remove_day.dart +++ /dev/null @@ -1,220 +0,0 @@ -import 'package:collection/collection.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/adaptive/swipe.dart'; -import 'package:sit/timetable/entity/loc.dart'; -import 'package:sit/timetable/entity/pos.dart'; -import 'package:sit/utils/date.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/patch.dart'; -import '../../entity/timetable.dart'; -import '../../page/preview.dart'; -import '../../i18n.dart'; -import '../../utils.dart'; -import 'shared.dart'; - -class TimetableRemoveDayPatchSheet extends ConsumerStatefulWidget { - final SitTimetable timetable; - final TimetableRemoveDayPatch? patch; - - const TimetableRemoveDayPatchSheet({ - super.key, - required this.timetable, - required this.patch, - }); - - @override - ConsumerState createState() => _TimetableRemoveDayPatchSheetState(); -} - -class _TimetableRemoveDayPatchSheetState extends ConsumerState { - List get initialLoc => widget.patch?.all ?? []; - late var mode = initialLoc.firstOrNull?.mode ?? TimetableDayLocMode.date; - late var pos = mode == TimetableDayLocMode.pos ? initialLoc.map((loc) => loc.pos).toList() : []; - late var date = mode == TimetableDayLocMode.date ? initialLoc.map((loc) => loc.date).toList() : []; - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - bool canSave() => buildPatch() != null; - - @override - Widget build(BuildContext context) { - final patch = buildPatch(); - return PromptSaveBeforeQuitScope( - changed: anyChanged && canSave(), - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TimetablePatchType.removeDay.l10n().text(), - actions: [ - PlatformTextButton( - onPressed: onPreview, - child: i18n.preview.text(), - ), - PlatformTextButton( - onPressed: canSave() ? onSave : null, - child: i18n.save.text(), - ), - ], - ), - SliverList.list(children: [ - buildMode().padSymmetric(v: 8, h: 16), - ...switch (mode) { - TimetableDayLocMode.pos => buildPosTab(), - TimetableDayLocMode.date => buildDateTab(), - }, - buildAddAction(), - if (patch != null) - ListTile( - title: patch.l10n().text(), - ) - ]), - ], - ), - ), - ); - } - - DateTime generateUnselectedDate(DateTime initial) { - DateTime result = initial; - while (date.any((existing) => existing.inTheSameDay(result))) { - result = DateTime(result.year, result.month, result.day - 1); - } - return result; - } - - Widget buildAddAction() { - return FilledButton( - onPressed: () async { - switch (mode) { - case TimetableDayLocMode.pos: - final newPos = await selectDayInTimetable( - context: context, - timetable: widget.timetable, - initialPos: null, - submitLabel: i18n.select, - ); - if (newPos == null) return; - setState(() { - pos.add(newPos); - }); - markChanged(); - case TimetableDayLocMode.date: - final now = DateTime.now(); - final newDate = await showDatePicker( - context: context, - initialDate: generateUnselectedDate(ref.read(lastInitialDate)), - currentDate: now, - firstDate: DateTime(now.year - 4), - lastDate: DateTime(now.year + 2), - selectableDayPredicate: (d) => date.none((existing) => existing.inTheSameDay(d)), - ); - if (newDate == null) return; - ref.read(lastInitialDate.notifier).state = newDate; - setState(() { - date.add(newDate); - }); - markChanged(); - } - }, - child: i18n.add.text(), - ).padSymmetric(h: 32, v: 16); - } - - Widget buildMode() { - return TimetableDayLocModeSwitcher( - selected: mode, - onSelected: (newMode) async { - setState(() { - mode = newMode; - }); - }, - ); - } - - List buildPosTab() { - return [ - ...pos.mapIndexed( - (i, p) => WithSwipeAction( - right: SwipeAction.delete( - icon: context.icons.delete, - action: () { - setState(() { - pos.removeAt(i); - }); - markChanged(); - }, - ), - childKey: ValueKey(p), - child: TimetableDayLocPosSelectionTile( - title: i18n.patch.removedDay.text(), - timetable: widget.timetable, - pos: p, - ), - ), - ) - ]; - } - - List buildDateTab() { - return [ - ...date.mapIndexed( - (i, d) => WithSwipeAction( - right: SwipeAction.delete( - icon: context.icons.delete, - action: () { - setState(() { - date.removeAt(i); - }); - markChanged(); - }, - ), - childKey: ValueKey(d), - child: TimetableDayLocDateSelectionTile( - title: i18n.patch.removedDay.text(), - timetable: widget.timetable, - date: d, - ), - ), - ), - ]; - } - - Future onPreview() async { - await previewTimetable(context, timetable: buildTimetable()); - } - - void onSave() { - context.pop(buildPatch()); - } - - SitTimetable buildTimetable() { - final patch = buildPatch(); - final newPatches = List.of(widget.timetable.patches); - if (patch != null) { - newPatches.add(patch); - } - return widget.timetable.copyWith( - patches: newPatches, - ); - } - - TimetableRemoveDayPatch? buildPatch() { - final pos = this.pos; - final date = this.date; - final loc = switch (mode) { - TimetableDayLocMode.pos => pos.map((p) => TimetableDayLoc.pos(p)), - TimetableDayLocMode.date => date.map((d) => TimetableDayLoc.date(d)), - } - .toList(); - return loc.isNotEmpty ? TimetableRemoveDayPatch(all: loc) : null; - } -} diff --git a/lib/timetable/widgets/patch/shared.dart b/lib/timetable/widgets/patch/shared.dart deleted file mode 100644 index f5d5ed7e3..000000000 --- a/lib/timetable/widgets/patch/shared.dart +++ /dev/null @@ -1,323 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/adaptive/menu.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/l10n/extension.dart'; -import 'package:sit/qrcode/page/view.dart'; -import 'package:sit/timetable/entity/pos.dart'; -import 'package:text_scroll/text_scroll.dart'; - -import '../../entity/loc.dart'; -import '../../entity/patch.dart'; -import '../../entity/timetable.dart'; -import '../../i18n.dart'; -import '../../page/preview.dart'; -import '../../qrcode/patch.dart'; -import '../../utils.dart'; - -class TimetableDayLocModeSwitcher extends StatelessWidget { - final TimetableDayLocMode selected; - final ValueChanged onSelected; - - const TimetableDayLocModeSwitcher({ - super.key, - required this.selected, - required this.onSelected, - }); - - @override - Widget build(BuildContext context) { - return SegmentedButton( - segments: TimetableDayLocMode.values - .map((e) => ButtonSegment( - value: e, - label: e.l10n().text(), - )) - .toList(), - selected: {selected}, - onSelectionChanged: (newSelection) async { - onSelected(newSelection.first); - }, - ); - } -} - -class TimetableDayLocPosSelectionTile extends StatelessWidget { - final Widget title; - final Widget? leading; - final TimetablePos? pos; - final SitTimetable timetable; - final ValueChanged? onChanged; - - const TimetableDayLocPosSelectionTile({ - super.key, - required this.title, - this.leading, - this.pos, - this.onChanged, - required this.timetable, - }); - - @override - Widget build(BuildContext context) { - final pos = this.pos; - final onChanged = this.onChanged; - return ListTile( - leading: leading, - title: title, - subtitle: pos == null ? i18n.unspecified.text() : pos.l10n().text(), - trailing: onChanged == null - ? null - : FilledButton( - child: i18n.select.text(), - onPressed: () async { - final newPos = await selectDayInTimetable( - context: context, - timetable: timetable, - initialPos: pos, - submitLabel: i18n.select, - ); - if (newPos == null) return; - onChanged(newPos); - }, - ), - ); - } -} - -final lastInitialDate = StateProvider((ref) => DateTime.now()); - -class TimetableDayLocDateSelectionTile extends ConsumerWidget { - final Widget title; - final Widget? leading; - final DateTime? date; - final SitTimetable timetable; - final ValueChanged? onChanged; - - const TimetableDayLocDateSelectionTile({ - super.key, - this.leading, - required this.title, - this.date, - this.onChanged, - required this.timetable, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final date = this.date; - final onChanged = this.onChanged; - return ListTile( - leading: leading, - title: title, - subtitle: date == null ? i18n.unspecified.text() : context.formatYmdWeekText(date).text(), - trailing: onChanged == null - ? null - : FilledButton( - child: i18n.select.text(), - onPressed: () async { - final now = DateTime.now(); - final newDate = await showDatePicker( - context: context, - initialDate: date ?? ref.read(lastInitialDate), - currentDate: date, - firstDate: DateTime(now.year - 4), - lastDate: DateTime(now.year + 2), - ); - if (newDate == null) return; - ref.read(lastInitialDate.notifier).state = newDate; - onChanged(newDate); - }, - ), - ); - } -} - -class TimetablePatchMenuAction extends StatelessWidget { - final TPatch patch; - final SitTimetable? timetable; - final ValueChanged? onChanged; - final bool enableQrCode; - final VoidCallback? onDeleted; - - const TimetablePatchMenuAction({ - super.key, - required this.patch, - this.timetable, - this.onChanged, - this.enableQrCode = true, - this.onDeleted, - }); - - @override - Widget build(BuildContext context) { - final onDeleted = this.onDeleted; - final timetable = this.timetable; - return PullDownMenuButton(itemBuilder: (ctx) { - return [ - if (timetable != null) - PullDownItem( - icon: context.icons.preview, - title: i18n.preview, - onTap: () async { - await previewTimetable(context, timetable: timetable); - }, - ), - if (!kIsWeb && enableQrCode) - PullDownItem( - title: i18n.shareQrCode, - icon: context.icons.qrcode, - onTap: () async { - shareTimetablePatchQrCode(context, patch); - }, - ), - if (onDeleted != null) - PullDownItem.delete( - icon: context.icons.delete, - title: i18n.delete, - onTap: onDeleted, - ), - ]; - }); - } -} - -class TimetablePatchWidget extends StatelessWidget { - final Widget Function(BuildContext context, Widget child)? leading; - final TPatch patch; - final bool optimizedForTouch; - final VoidCallback? onDeleted; - final bool selected; - final SitTimetable? timetable; - final ValueChanged? onChanged; - final FutureOr Function(TPatch old)? edit; - final bool enableQrCode; - - const TimetablePatchWidget({ - super.key, - this.leading, - required this.patch, - this.timetable, - this.onChanged, - this.optimizedForTouch = false, - this.edit, - this.selected = false, - this.enableQrCode = true, - this.onDeleted, - }); - - @override - Widget build(BuildContext context) { - final onChanged = this.onChanged; - final edit = this.edit; - return ListTile( - leading: leading?.call( - context, - buildLeading(context), - ) ?? - buildLeading(context), - title: patch.type.l10n().text(), - subtitle: patch.l10n().text(), - selected: selected, - trailing: TimetablePatchMenuAction( - patch: patch, - timetable: timetable, - onChanged: onChanged, - onDeleted: onDeleted, - enableQrCode: enableQrCode, - ), - onTap: onChanged == null || edit == null - ? null - : () async { - final newPath = await edit(patch); - if (newPath == null) return; - onChanged(newPath); - }, - ); - } - - Widget buildLeading(BuildContext context) { - return PatchIcon( - icon: patch.type.icon, - optimizedForTouch: optimizedForTouch, - ); - } -} - -class PatchIcon extends StatelessWidget { - final IconData icon; - final bool optimizedForTouch; - final bool inCard; - - const PatchIcon({ - super.key, - required this.icon, - this.optimizedForTouch = false, - this.inCard = true, - }); - - @override - Widget build(BuildContext context) { - final widget = Icon( - icon, - size: optimizedForTouch ? context.theme.iconTheme.size ?? 24 * 1.25 : null, - ).padAll(8); - if (inCard) { - return Card.filled( - margin: EdgeInsets.zero, - child: widget, - ); - } else { - return widget; - } - } -} - -class AddPatchButtons extends StatelessWidget { - final SitTimetable timetable; - final void Function(TimetablePatch patch) addPatch; - - const AddPatchButtons({ - super.key, - required this.timetable, - required this.addPatch, - }); - - @override - Widget build(BuildContext context) { - return ListView( - scrollDirection: Axis.horizontal, - padding: const EdgeInsets.only(left: 8), - children: TimetablePatchType.creatable - .map((type) => ActionChip( - avatar: Icon(type.icon), - label: type.l10n().text(), - onPressed: () async { - final patch = await type.create(context, timetable, null); - if (patch == null) return; - addPatch(patch); - }, - ).padOnly(r: 8)) - .toList(), - ).sized(h: 40); - } -} - -void shareTimetablePatchQrCode(BuildContext context, TimetablePatchEntry patch) async { - if (kIsWeb) return; - final qrCodeData = const TimetablePatchDeepLink().encode(patch); - await context.showSheet( - (context) => QrCodePage( - title: TextScroll(switch (patch) { - TimetablePatchSet() => patch.name, - TimetablePatch() => patch.l10n(), - }), - data: qrCodeData.toString(), - ), - ); -} diff --git a/lib/timetable/widgets/patch/swap_days.dart b/lib/timetable/widgets/patch/swap_days.dart deleted file mode 100644 index e9b4862a8..000000000 --- a/lib/timetable/widgets/patch/swap_days.dart +++ /dev/null @@ -1,181 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/timetable/entity/loc.dart'; -import 'package:sit/utils/save.dart'; - -import '../../entity/patch.dart'; -import '../../entity/timetable.dart'; -import '../../page/preview.dart'; -import '../../i18n.dart'; -import 'shared.dart'; - -class TimetableSwapDaysPatchSheet extends StatefulWidget { - final SitTimetable timetable; - final TimetableSwapDaysPatch? patch; - - const TimetableSwapDaysPatchSheet({ - super.key, - required this.timetable, - required this.patch, - }); - - @override - State createState() => _TimetableSwapDaysPatchSheetState(); -} - -class _TimetableSwapDaysPatchSheetState extends State { - TimetableDayLoc? get initialA => widget.patch?.a; - - TimetableDayLoc? get initialB => widget.patch?.b; - late var mode = initialA?.mode ?? TimetableDayLocMode.date; - late var aPos = initialA?.mode == TimetableDayLocMode.pos ? initialA?.pos : null; - late var aDate = initialA?.mode == TimetableDayLocMode.date ? initialA?.date : null; - late var bPos = initialB?.mode == TimetableDayLocMode.pos ? initialB?.pos : null; - late var bDate = initialB?.mode == TimetableDayLocMode.date ? initialB?.date : null; - var anyChanged = false; - - void markChanged() => anyChanged |= true; - - bool canSave() => buildPatch() != null; - - @override - Widget build(BuildContext context) { - final patch = buildPatch(); - return PromptSaveBeforeQuitScope( - changed: anyChanged && canSave(), - onSave: onSave, - child: Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TimetablePatchType.swapDays.l10n().text(), - actions: [ - PlatformTextButton( - onPressed: onPreview, - child: i18n.preview.text(), - ), - PlatformTextButton( - onPressed: canSave() ? onSave : null, - child: i18n.save.text(), - ), - ], - ), - SliverList.list(children: [ - buildMode().padSymmetric(v: 8, h: 16), - ...switch (mode) { - TimetableDayLocMode.pos => buildPosTab(), - TimetableDayLocMode.date => buildDateTab(), - }, - if (patch != null) - ListTile( - title: patch.l10n().text(), - ) - ]), - ], - ), - ), - ); - } - - Widget buildMode() { - return TimetableDayLocModeSwitcher( - selected: mode, - onSelected: (newMode) async { - setState(() { - mode = newMode; - }); - }, - ); - } - - List buildPosTab() { - return [ - TimetableDayLocPosSelectionTile( - title: i18n.patch.swappedDay.text(), - timetable: widget.timetable, - pos: aPos, - onChanged: (newPos) { - setState(() { - aPos = newPos; - }); - markChanged(); - }, - ), - TimetableDayLocPosSelectionTile( - title: i18n.patch.swappedDay.text(), - timetable: widget.timetable, - pos: bPos, - onChanged: (newPos) { - setState(() { - bPos = newPos; - }); - markChanged(); - }, - ), - ]; - } - - List buildDateTab() { - return [ - TimetableDayLocDateSelectionTile( - title: i18n.patch.swappedDay.text(), - timetable: widget.timetable, - date: aDate, - onChanged: (newPos) { - setState(() { - aDate = newPos; - }); - markChanged(); - }, - ), - TimetableDayLocDateSelectionTile( - title: i18n.patch.swappedDay.text(), - timetable: widget.timetable, - date: bDate, - onChanged: (newPos) { - setState(() { - bDate = newPos; - }); - markChanged(); - }, - ), - ]; - } - - Future onPreview() async { - await previewTimetable(context, timetable: buildTimetable()); - } - - void onSave() { - context.pop(buildPatch()); - } - - SitTimetable buildTimetable() { - final patch = buildPatch(); - final newPatches = List.of(widget.timetable.patches); - if (patch != null) { - newPatches.add(patch); - } - return widget.timetable.copyWith( - patches: newPatches, - ); - } - - TimetableSwapDaysPatch? buildPatch() { - final aPos = this.aPos; - final aDate = this.aDate; - final bPos = this.bPos; - final bDate = this.bDate; - final a = switch (mode) { - TimetableDayLocMode.pos => aPos != null ? TimetableDayLoc.pos(aPos) : null, - TimetableDayLocMode.date => aDate != null ? TimetableDayLoc.date(aDate) : null, - }; - final b = switch (mode) { - TimetableDayLocMode.pos => bPos != null ? TimetableDayLoc.pos(bPos) : null, - TimetableDayLocMode.date => bDate != null ? TimetableDayLoc.date(bDate) : null, - }; - return a != null && b != null ? TimetableSwapDaysPatch(a: a, b: b) : null; - } -} diff --git a/lib/timetable/widgets/style.dart b/lib/timetable/widgets/style.dart deleted file mode 100644 index a1d422004..000000000 --- a/lib/timetable/widgets/style.dart +++ /dev/null @@ -1,136 +0,0 @@ -import 'package:copy_with_extension/copy_with_extension.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/timetable/entity/background.dart'; -import 'package:sit/timetable/entity/platte.dart'; -import 'package:sit/timetable/palette.dart'; - -import '../entity/cell_style.dart'; -import '../init.dart'; - -part "style.g.dart"; - -@CopyWith(skipFields: true) -class TimetableStyleData { - final TimetablePalette platte; - final CourseCellStyle cellStyle; - final BackgroundImage background; - - const TimetableStyleData({ - this.platte = BuiltinTimetablePalettes.classic, - this.cellStyle = const CourseCellStyle(), - this.background = const BackgroundImage.disabled(), - }); - - @override - // ignore: hash_and_equals - bool operator ==(Object other) { - return other is TimetableStyleData && - runtimeType == other.runtimeType && - platte == other.platte && - background == other.background && - cellStyle == other.cellStyle; - } -} - -class TimetableStyle extends InheritedWidget { - final TimetableStyleData data; - - const TimetableStyle({ - super.key, - required this.data, - required super.child, - }); - - static TimetableStyleData of(BuildContext context) { - final TimetableStyle? result = context.dependOnInheritedWidgetOfExactType(); - assert(result != null, 'No TimetableStyle found in context'); - return result!.data; - } - - static TimetableStyleData? maybeOf(BuildContext context) { - final TimetableStyle? result = context.dependOnInheritedWidgetOfExactType(); - return result?.data; - } - - @override - bool updateShouldNotify(TimetableStyle oldWidget) { - return data != oldWidget.data; - } -} - -class TimetableStyleProv extends ConsumerStatefulWidget { - final Widget? child; - final TimetablePalette? palette; - final CourseCellStyle? cellStyle; - final BackgroundImage? background; - - final Widget Function(BuildContext context, TimetableStyleData style)? builder; - - const TimetableStyleProv({ - super.key, - this.child, - this.builder, - this.palette, - this.cellStyle, - this.background, - }) : assert(builder != null || child != null, "TimetableStyleProv should have at least one child."); - - @override - ConsumerState createState() => TimetableStyleProvState(); -} - -class TimetableStyleProvState extends ConsumerState { - final $palette = TimetableInit.storage.palette.$selected; - var palette = TimetableInit.storage.palette.selectedRow ?? BuiltinTimetablePalettes.classic; - - @override - void initState() { - super.initState(); - $palette.addListener(refreshPalette); - } - - @override - void dispose() { - $palette.removeListener(refreshPalette); - super.dispose(); - } - - void refreshPalette() { - setState(() { - palette = TimetableInit.storage.palette.selectedRow ?? BuiltinTimetablePalettes.classic; - }); - } - - @override - Widget build(BuildContext context) { - final background = ref.watch(Settings.timetable.$backgroundImage) ?? const BackgroundImage.disabled(); - final cellStyle = ref.watch(Settings.timetable.$cellStyle) ?? const CourseCellStyle(); - final data = TimetableStyleData( - platte: palette, - cellStyle: cellStyle, - background: background, - ).copyWith( - platte: widget.palette, - cellStyle: widget.cellStyle, - background: widget.background, - ); - return TimetableStyle( - data: data, - child: buildChild(data), - ); - } - - Widget buildChild(TimetableStyleData data) { - final child = widget.child; - if (child != null) { - return child; - } - final builder = widget.builder; - if (builder != null) { - return Builder(builder: (ctx) => builder(ctx, data)); - } - return const SizedBox(); - } -} diff --git a/lib/timetable/widgets/style.g.dart b/lib/timetable/widgets/style.g.dart deleted file mode 100644 index a7f41dd1b..000000000 --- a/lib/timetable/widgets/style.g.dart +++ /dev/null @@ -1,63 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'style.dart'; - -// ************************************************************************** -// CopyWithGenerator -// ************************************************************************** - -abstract class _$TimetableStyleDataCWProxy { - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// TimetableStyleData(...).copyWith(id: 12, name: "My name") - /// ```` - TimetableStyleData call({ - TimetablePalette? platte, - CourseCellStyle? cellStyle, - BackgroundImage? background, - }); -} - -/// Proxy class for `copyWith` functionality. This is a callable class and can be used as follows: `instanceOfTimetableStyleData.copyWith(...)`. -class _$TimetableStyleDataCWProxyImpl implements _$TimetableStyleDataCWProxy { - const _$TimetableStyleDataCWProxyImpl(this._value); - - final TimetableStyleData _value; - - @override - - /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. - /// - /// Usage - /// ```dart - /// TimetableStyleData(...).copyWith(id: 12, name: "My name") - /// ```` - TimetableStyleData call({ - Object? platte = const $CopyWithPlaceholder(), - Object? cellStyle = const $CopyWithPlaceholder(), - Object? background = const $CopyWithPlaceholder(), - }) { - return TimetableStyleData( - platte: platte == const $CopyWithPlaceholder() || platte == null - ? _value.platte - // ignore: cast_nullable_to_non_nullable - : platte as TimetablePalette, - cellStyle: cellStyle == const $CopyWithPlaceholder() || cellStyle == null - ? _value.cellStyle - // ignore: cast_nullable_to_non_nullable - : cellStyle as CourseCellStyle, - background: background == const $CopyWithPlaceholder() || background == null - ? _value.background - // ignore: cast_nullable_to_non_nullable - : background as BackgroundImage, - ); - } -} - -extension $TimetableStyleDataCopyWith on TimetableStyleData { - /// Returns a callable class that can be used as follows: `instanceOfTimetableStyleData.copyWith(...)`. - // ignore: library_private_types_in_public_api - _$TimetableStyleDataCWProxy get copyWith => _$TimetableStyleDataCWProxyImpl(this); -} diff --git a/lib/timetable/widgets/timetable/background.dart b/lib/timetable/widgets/timetable/background.dart deleted file mode 100644 index f26668b53..000000000 --- a/lib/timetable/widgets/timetable/background.dart +++ /dev/null @@ -1,118 +0,0 @@ -import 'package:cached_network_image/cached_network_image.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/files.dart'; -import 'package:sit/timetable/entity/background.dart'; - -class TimetableBackground extends StatelessWidget { - final BackgroundImage background; - final bool fade; - final Duration fadeDuration; - - const TimetableBackground({ - super.key, - required this.background, - this.fade = true, - this.fadeDuration = Durations.long2, - }); - - @override - Widget build(BuildContext context) { - if (kIsWeb) { - return _TimetableBackgroundWebImpl( - background: background, - ); - } else { - return _TimetableBackgroundImpl( - background: background, - fade: fade, - fadeDuration: kDebugMode ? const Duration(milliseconds: 1000) : Durations.long1, - ); - } - } -} - -class _TimetableBackgroundImpl extends StatefulWidget { - final BackgroundImage background; - final bool fade; - final Duration fadeDuration; - - const _TimetableBackgroundImpl({ - required this.background, - this.fade = true, - this.fadeDuration = Durations.long2, - }); - - @override - State<_TimetableBackgroundImpl> createState() => _TimetableBackgroundImplState(); -} - -class _TimetableBackgroundImplState extends State<_TimetableBackgroundImpl> with SingleTickerProviderStateMixin { - late final AnimationController $opacity; - - @override - void initState() { - super.initState(); - $opacity = AnimationController(vsync: this, value: widget.fade ? 0.0 : widget.background.opacity); - if (widget.fade) { - $opacity.animateTo( - widget.background.opacity, - duration: widget.fadeDuration, - curve: Curves.easeInOut, - ); - } - } - - @override - void dispose() { - $opacity.dispose(); - super.dispose(); - } - - @override - void didUpdateWidget(covariant _TimetableBackgroundImpl oldWidget) { - super.didUpdateWidget(oldWidget); - if (widget.fade && oldWidget.fade) { - if (oldWidget.background != widget.background) { - if (oldWidget.background.path != widget.background.path) { - $opacity.value = 0.0; - } - $opacity.animateTo( - widget.background.opacity, - duration: widget.fadeDuration, - curve: Curves.easeInOut, - ); - } - } else { - $opacity.value = widget.background.opacity; - } - } - - @override - Widget build(BuildContext context) { - final background = widget.background; - return Image.file( - Files.timetable.backgroundFile, - opacity: $opacity, - filterQuality: background.filterQuality, - repeat: background.imageRepeat, - ); - } -} - -class _TimetableBackgroundWebImpl extends StatelessWidget { - final BackgroundImage background; - - const _TimetableBackgroundWebImpl({ - required this.background, - }); - - @override - Widget build(BuildContext context) { - return CachedNetworkImage( - imageUrl: background.path, - filterQuality: background.filterQuality, - repeat: background.imageRepeat, - ); - } -} diff --git a/lib/timetable/widgets/timetable/board.dart b/lib/timetable/widgets/timetable/board.dart deleted file mode 100644 index 011ddfa6a..000000000 --- a/lib/timetable/widgets/timetable/board.dart +++ /dev/null @@ -1,58 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/timetable/widgets/style.dart'; - -import '../../entity/display.dart'; -import '../../entity/pos.dart'; -import '../../entity/timetable_entity.dart'; -import 'background.dart'; -import 'daily.dart'; -import 'weekly.dart'; - -class TimetableBoard extends StatelessWidget { - final SitTimetableEntity timetable; - - final ValueNotifier $displayMode; - - final ValueNotifier $currentPos; - - const TimetableBoard({ - super.key, - required this.timetable, - required this.$displayMode, - required this.$currentPos, - }); - - @override - Widget build(BuildContext context) { - final style = TimetableStyle.of(context); - final background = style.background; - if (background.enabled) { - return [ - Positioned.fill( - child: TimetableBackground( - background: background, - ), - ), - buildBoard(), - ].stack(); - } - return buildBoard(); - } - - Widget buildBoard() { - return $displayMode >> - (ctx, mode) => AnimatedSwitcher( - duration: Durations.short4, - child: mode == DisplayMode.daily - ? DailyTimetable( - $currentPos: $currentPos, - timetable: timetable, - ) - : WeeklyTimetable( - $currentPos: $currentPos, - timetable: timetable, - ), - ); - } -} diff --git a/lib/timetable/widgets/timetable/course_sheet.dart b/lib/timetable/widgets/timetable/course_sheet.dart deleted file mode 100644 index a25788e51..000000000 --- a/lib/timetable/widgets/timetable/course_sheet.dart +++ /dev/null @@ -1,120 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/card.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:text_scroll/text_scroll.dart'; -import '../../entity/timetable_entity.dart'; - -import '../../i18n.dart'; -import '../../entity/timetable.dart'; - -class TimetableCourseSheetPage extends StatelessWidget { - final String courseCode; - final SitTimetableEntity timetable; - final int? highlightedCourseKey; - - /// A course may include both practical and theoretical parts. - /// Since the system doesn't support this kind of setting, - /// the actual teaching system will split them in the processing, - /// but their course names and course codes are stored in the same way. - const TimetableCourseSheetPage({ - super.key, - required this.courseCode, - required this.timetable, - this.highlightedCourseKey, - }); - - @override - Widget build(BuildContext context) { - final courses = timetable.findAndCacheCoursesByCourseCode(courseCode); - return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar.medium( - title: TextScroll( - courses[0].courseName, - ), - ), - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 12), - sliver: SliverToBoxAdapter( - child: buildTable(courses), - ), - ), - const SliverToBoxAdapter( - child: Divider(), - ), - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 12), - sliver: SliverList.builder( - itemCount: courses.length, - itemBuilder: (ctx, i) { - final course = courses[i]; - if (highlightedCourseKey == null) { - return CourseDescTile(course).inFilledCard(); - } else if (course.courseKey == highlightedCourseKey) { - return CourseDescTile(course, selected: true).inFilledCard(); - } else { - return CourseDescTile(course).inOutlinedCard(); - } - }, - ), - ), - ], - ), - ); - } - - Widget buildTable(List courses) { - final teachers = courses.expand((course) => course.teachers).toSet(); - return Table( - columnWidths: const { - 0: FlexColumnWidth(1), - 1: FlexColumnWidth(2), - }, - children: [ - TableRow(children: [ - i18n.course.courseCode.text(), - courseCode.text(), - ]), - TableRow(children: [ - i18n.course.classCode.text(), - courses[0].classCode.text(), - ]), - if (teachers.isNotEmpty) - TableRow(children: [ - i18n.course.teacher(teachers.length).text(), - teachers.join(", ").text(), - ]), - ], - ); - } -} - -class CourseDescTile extends StatelessWidget { - final SitCourse course; - final bool selected; - - const CourseDescTile( - this.course, { - super.key, - this.selected = false, - }); - - @override - Widget build(BuildContext context) { - final weekNumbers = course.weekIndices.l10n(); - final (:begin, :end) = course.calcBeginEndTimePoint(); - return ListTile( - isThreeLine: true, - selected: selected, - title: course.place.text(), - subtitle: [ - "${Weekday.fromIndex(course.dayIndex).l10n()} ${begin.l10n(context)}–${end.l10n(context)}".text(), - if (course.teachers.length > 1) course.teachers.join(", ").text(), - ...weekNumbers.map((n) => n.text()), - ].column(mas: MainAxisSize.min, caa: CrossAxisAlignment.start), - trailing: course.teachers.length == 1 ? course.teachers.first.text() : null, - ); - } -} diff --git a/lib/timetable/widgets/timetable/daily.dart b/lib/timetable/widgets/timetable/daily.dart deleted file mode 100644 index eb3f6d109..000000000 --- a/lib/timetable/widgets/timetable/daily.dart +++ /dev/null @@ -1,447 +0,0 @@ -import 'dart:async'; - -import 'package:auto_size_text/auto_size_text.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/school/entity/timetable.dart'; -import 'package:sit/school/widgets/course.dart'; -import 'package:sit/timetable/widgets/timetable/course_sheet.dart'; -import 'package:sit/timetable/palette.dart'; -import 'package:sit/timetable/widgets/free.dart'; -import 'package:rettulf/rettulf.dart'; - -import '../../entity/timetable.dart'; -import '../../events.dart'; -import '../../entity/timetable_entity.dart'; -import '../../utils.dart'; -import '../../i18n.dart'; -import '../style.dart'; -import '../../entity/pos.dart'; -import 'header.dart'; - -class DailyTimetable extends StatefulWidget { - final SitTimetableEntity timetable; - - final ValueNotifier $currentPos; - - @override - State createState() => DailyTimetableState(); - - const DailyTimetable({ - super.key, - required this.timetable, - required this.$currentPos, - }); -} - -class DailyTimetableState extends State { - SitTimetableEntity get timetable => widget.timetable; - - TimetablePos get currentPos => widget.$currentPos.value; - - set currentPos(TimetablePos newValue) => widget.$currentPos.value = newValue; - - /// 翻页控制 - late PageController _pageController; - - int pos2PageOffset(TimetablePos pos) => pos.weekIndex * 7 + pos.weekday.index; - - TimetablePos page2Pos(int page) => TimetablePos(weekIndex: page ~/ 7, weekday: Weekday.fromIndex(page % 7)); - - late StreamSubscription $jumpToPos; - - @override - void initState() { - super.initState(); - _pageController = PageController(initialPage: pos2PageOffset(widget.$currentPos.value)) - ..addListener(() { - setState(() { - final page = (_pageController.page ?? 0).round(); - final newPos = page2Pos(page); - if (currentPos != newPos) { - currentPos = newPos; - } - }); - }); - $jumpToPos = eventBus.on().listen((event) { - jumpTo(event.where); - }); - } - - @override - void dispose() { - $jumpToPos.cancel(); - _pageController.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return [ - widget.$currentPos >> - (ctx, cur) => TimetableHeader( - selectedWeekday: cur.weekday, - weekIndex: cur.weekIndex, - startDate: timetable.type.startDate, - onDayTap: (dayIndex) { - eventBus.fire(JumpToPosEvent(TimetablePos(weekIndex: cur.weekIndex, weekday: dayIndex))); - }, - ), - PageView.builder( - controller: _pageController, - scrollDirection: Axis.horizontal, - itemCount: 20 * 7, - itemBuilder: (_, int index) { - int weekIndex = index ~/ 7; - int dayIndex = index % 7; - final todayPos = timetable.type.locate(DateTime.now()); - return TimetableOneDayPage( - timetable: timetable, - todayPos: todayPos, - weekIndex: weekIndex, - weekday: Weekday.fromIndex(dayIndex), - ); - }, - ).expanded(), - ].column(); - } - - void jumpTo(TimetablePos pos) { - if (_pageController.hasClients) { - final targetOffset = pos2PageOffset(pos); - final currentPos = _pageController.page ?? targetOffset; - final distance = (targetOffset - currentPos).abs(); - _pageController.animateToPage( - targetOffset, - duration: calcuSwitchAnimationDuration(distance), - curve: Curves.fastEaseInToSlowEaseOut, - ); - } - } -} - -class TimetableOneDayPage extends StatefulWidget { - final SitTimetableEntity timetable; - final TimetablePos todayPos; - final int weekIndex; - final Weekday weekday; - - const TimetableOneDayPage({ - super.key, - required this.timetable, - required this.todayPos, - required this.weekIndex, - required this.weekday, - }); - - @override - State createState() => _TimetableOneDayPageState(); -} - -class _TimetableOneDayPageState extends State with AutomaticKeepAliveClientMixin { - Widget? _cached; - - @override - void didChangeDependencies() { - super.didChangeDependencies(); - _cached = null; - } - - @override - Widget build(BuildContext context) { - super.build(context); - final cache = _cached; - if (cache != null) { - return cache; - } else { - final res = buildPage(context); - _cached = res; - return res; - } - } - - Widget buildPage(BuildContext ctx) { - int weekIndex = widget.weekIndex; - final week = widget.timetable.weeks[weekIndex]; - final day = week[widget.weekday]; - if (!day.hasAnyLesson()) { - return FreeDayTip( - timetable: widget.timetable, - weekIndex: weekIndex, - weekday: widget.weekday, - ).scrolled().center(); - } else { - final slotCount = day.timeslot2LessonSlot.length; - final builder = _LessonRowBuilder( - dividerBuilder: (dividerNumber) { - return BreakDivider(title: dividerNumber == 1 ? i18n.lunchtime : i18n.dinnertime); - }, - ); - for (int timeslot = 0; timeslot < slotCount; timeslot++) { - builder.add( - timeslot, - buildLessonsInTimeslot( - ctx, - day.timeslot2LessonSlot[timeslot].lessons, - timeslot, - ), - ); - } - // Since the course list is small, no need to use [ListView.builder]. - return ListView( - children: builder.build(), - ); - } - } - - Widget? buildLessonsInTimeslot( - BuildContext ctx, - List lessonsInSlot, - int timeslot, - ) { - if (lessonsInSlot.isEmpty) { - return null; - } else if (lessonsInSlot.length == 1) { - final lesson = lessonsInSlot[0]; - return buildSingleLesson( - ctx, - timetable: widget.timetable, - lesson: lesson, - timeslot: timeslot, - ).padH(6); - } else { - return LessonOverlapGroup(lessonsInSlot, timeslot, widget.timetable).padH(6); - } - } - - Widget buildSingleLesson( - BuildContext context, { - required SitTimetableEntity timetable, - required SitTimetableLessonPart lesson, - required int timeslot, - }) { - final course = lesson.course; - final style = TimetableStyle.of(context); - - var color = timetable.resolveColor(style.platte, course).byTheme(context.theme); - color = style.cellStyle.decorateColor( - color, - themeColor: context.colorScheme.primary, - isLessonTaken: lesson.endTime.isBefore(DateTime.now()), - ); - final classTime = course.buildingTimetable[timeslot]; - return [ - ClassTimeCard( - color: color, - classTime: classTime, - ), - LessonCard( - lesson: lesson, - timetable: timetable, - course: course, - color: color, - ).expanded() - ].row(); - } - - @override - bool get wantKeepAlive => true; -} - -class BreakDivider extends StatelessWidget { - final String title; - - const BreakDivider({ - super.key, - required this.title, - }); - - @override - Widget build(BuildContext context) { - return [ - const Divider(thickness: 2).expanded(), - title.text().padH(16), - const Divider(thickness: 2).expanded(), - ].row(); - } -} - -class LessonCard extends StatelessWidget { - final SitTimetableLessonPart lesson; - final SitCourse course; - final SitTimetableEntity timetable; - final Color color; - - const LessonCard({ - super.key, - required this.lesson, - required this.course, - required this.timetable, - required this.color, - }); - - static const iconSize = 45.0; - - @override - Widget build(BuildContext context) { - return Card.filled( - margin: const EdgeInsets.all(8), - color: color, - clipBehavior: Clip.hardEdge, - child: ListTile( - leading: CourseIcon(courseName: course.courseName), - onTap: () async { - if (!context.mounted) return; - await context.showSheet( - (ctx) => TimetableCourseSheetPage( - courseCode: course.courseCode, - timetable: timetable, - highlightedCourseKey: course.courseKey, - ), - ); - }, - title: AutoSizeText( - course.courseName, - maxLines: 1, - ), - subtitle: [ - if (course.place.isNotEmpty) - Text(beautifyPlace(course.place), softWrap: true, overflow: TextOverflow.ellipsis), - course.teachers.join(', ').text(), - ].column(caa: CrossAxisAlignment.start), - ), - ); - } -} - -class ClassTimeCard extends StatelessWidget { - final Color color; - final ClassTime classTime; - - const ClassTimeCard({ - super.key, - required this.color, - required this.classTime, - }); - - @override - Widget build(BuildContext context) { - return ElevatedText( - color: color, - margin: 10, - child: [ - classTime.begin.l10n(context).text(style: const TextStyle(fontWeight: FontWeight.bold)), - const SizedBox(height: 5), - classTime.end.l10n(context).text(), - ].column(), - ); - } -} - -class LessonOverlapGroup extends StatelessWidget { - final List lessonsInSlot; - final int timeslot; - final SitTimetableEntity timetable; - - const LessonOverlapGroup( - this.lessonsInSlot, - this.timeslot, - this.timetable, { - super.key, - }); - - @override - Widget build(BuildContext context) { - if (lessonsInSlot.isEmpty) return const SizedBox(); - final List all = []; - ClassTime? classTime; - for (int lessonIndex = 0; lessonIndex < lessonsInSlot.length; lessonIndex++) { - final lesson = lessonsInSlot[lessonIndex]; - final course = lesson.course; - final color = timetable.resolveColor(TimetableStyle.of(context).platte, course).byTheme(context.theme); - classTime = course.buildingTimetable[timeslot]; - final row = LessonCard( - lesson: lesson, - course: course, - timetable: timetable, - color: color, - ); - all.add(row); - } - // [classTime] must be nonnull. - // TODO: Color for class overlap. - return Card.outlined( - child: [ - ClassTimeCard( - color: TimetableStyle.of(context).platte.colors[0].byTheme(context.theme), - classTime: classTime!, - ), - all.column().expanded(), - ].row().padAll(3), - ); - } -} - -enum _RowBuilderState { - row, - divider, - none; -} - -class _LessonRowBuilder { - final Widget Function(int dividerNumber) dividerBuilder; - - _LessonRowBuilder({required this.dividerBuilder}); - - final List _rows = []; - _RowBuilderState lastAdded = _RowBuilderState.none; - - void add(int index, Widget? row) { - // WOW! MEAL TIME! - // For each four classes, there's a meal. - // Avoid adding two divider in a row - if (index != 0 && index % 4 == 0 && lastAdded != _RowBuilderState.divider) { - _rows.add(dividerBuilder(index ~/ 4)); - lastAdded = _RowBuilderState.divider; - } - if (row != null) { - _rows.add(row); - lastAdded = _RowBuilderState.row; - } - } - - List build() { - // Remove surplus dividers. - for (int i = _rows.length - 1; 0 <= i; i--) { - if (_rows[i] is Divider) { - _rows.removeLast(); - } else { - break; - } - } - return _rows; - } -} - -class ElevatedText extends StatelessWidget { - final Widget child; - final Color color; - final double margin; - - const ElevatedText({ - super.key, - required this.color, - required this.margin, - required this.child, - }); - - @override - Widget build(BuildContext context) { - return Card.filled( - color: color, - child: child.padAll(margin), - ); - } -} diff --git a/lib/timetable/widgets/timetable/header.dart b/lib/timetable/widgets/timetable/header.dart deleted file mode 100644 index 3e4040882..000000000 --- a/lib/timetable/widgets/timetable/header.dart +++ /dev/null @@ -1,134 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/utils.dart'; -import 'package:rettulf/rettulf.dart'; - -BorderSide getTimetableBorderSide(BuildContext ctx) => - BorderSide(color: ctx.colorScheme.primary.withOpacity(0.4), width: 0.8); - -class TimetableHeader extends StatelessWidget { - final int weekIndex; - final Weekday? selectedWeekday; - final Function(Weekday dayIndex)? onDayTap; - final DateTime startDate; - - const TimetableHeader({ - super.key, - required this.weekIndex, - required this.startDate, - this.selectedWeekday, - this.onDayTap, - }); - - @override - Widget build(BuildContext context) { - final onDayTap = this.onDayTap; - - return Weekday.monday - .genSequenceStartWithThis() - .map((weekday) { - return Expanded( - child: InkWell( - onTap: onDayTap != null - ? () { - onDayTap.call(weekday); - } - : null, - child: HeaderCell( - weekIndex: weekIndex, - weekday: weekday, - startDate: startDate, - backgroundColor: weekday == selectedWeekday ? context.colorScheme.secondaryContainer : null, - ), - ), - ); - }) - .toList() - .row(maa: MainAxisAlignment.spaceEvenly); - } -} - -class HeaderCell extends StatelessWidget { - final int weekIndex; - final Weekday weekday; - final DateTime startDate; - final Color? backgroundColor; - - const HeaderCell({ - super.key, - required this.weekIndex, - required this.weekday, - required this.startDate, - this.backgroundColor, - }); - - @override - Widget build(BuildContext context) { - final side = getTimetableBorderSide(context); - return AnimatedContainer( - duration: Durations.short2, - curve: Curves.easeOut, - decoration: BoxDecoration( - color: backgroundColor, - border: Border(bottom: side), - ), - child: HeaderCellTextBox( - weekIndex: weekIndex, - weekday: weekday, - startDate: startDate, - ), - ); - } -} - -class HeaderCellTextBox extends StatelessWidget { - final int weekIndex; - final Weekday weekday; - final DateTime startDate; - - const HeaderCellTextBox({ - super.key, - required this.weekIndex, - required this.weekday, - required this.startDate, - }); - - @override - Widget build(BuildContext context) { - final date = reflectWeekDayIndexToDate( - weekIndex: weekIndex, - weekday: weekday, - startDate: startDate, - ); - return [ - weekday.l10nShort().text( - textAlign: TextAlign.center, - style: context.textTheme.titleSmall, - ), - '${date.month}/${date.day}'.text( - textAlign: TextAlign.center, - style: context.textTheme.labelSmall, - ), - ].column().padOnly(t: 5, b: 5); - } -} - -class EmptyHeaderCellTextBox extends StatelessWidget { - const EmptyHeaderCellTextBox({ - super.key, - }); - - @override - Widget build(BuildContext context) { - return [ - "".text( - textAlign: TextAlign.center, - style: context.textTheme.titleSmall, - ), - "".text( - textAlign: TextAlign.center, - style: context.textTheme.labelSmall, - ), - ].column().padOnly(t: 5, b: 5); - } -} diff --git a/lib/timetable/widgets/timetable/weekly.dart b/lib/timetable/widgets/timetable/weekly.dart deleted file mode 100644 index 6102c5a19..000000000 --- a/lib/timetable/widgets/timetable/weekly.dart +++ /dev/null @@ -1,609 +0,0 @@ -import 'dart:async'; - -import 'package:auto_size_text/auto_size_text.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/design/dash_decoration.dart'; -import 'package:sit/l10n/time.dart'; -import 'package:sit/school/utils.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/timetable/palette.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:universal_platform/universal_platform.dart'; - -import '../../events.dart'; -import '../../entity/timetable.dart'; -import '../../entity/timetable_entity.dart'; -import 'course_sheet.dart'; -import '../../utils.dart'; -import '../free.dart'; -import 'header.dart'; -import '../style.dart'; -import '../../entity/pos.dart'; -import '../../i18n.dart'; - -class WeeklyTimetable extends StatefulWidget { - final SitTimetableEntity timetable; - - final ValueNotifier $currentPos; - - @override - State createState() => WeeklyTimetableState(); - - const WeeklyTimetable({ - super.key, - required this.timetable, - required this.$currentPos, - }); -} - -class WeeklyTimetableState extends State { - late PageController pageController; - final $cellSize = ValueNotifier(Size.zero); - - SitTimetableEntity get timetable => widget.timetable; - - TimetablePos get currentPos => widget.$currentPos.value; - - set currentPos(TimetablePos newValue) => widget.$currentPos.value = newValue; - late StreamSubscription $jumpToPos; - - @override - void initState() { - super.initState(); - pageController = PageController(initialPage: currentPos.weekIndex) - ..addListener(() { - setState(() { - final newWeek = (pageController.page ?? 0).round(); - if (newWeek != currentPos.weekIndex) { - currentPos = currentPos.copyWith(weekIndex: newWeek); - } - }); - }); - $jumpToPos = eventBus.on().listen((event) { - jumpTo(event.where); - }); - } - - @override - void dispose() { - $jumpToPos.cancel(); - pageController.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return PageView.builder( - controller: pageController, - scrollDirection: Axis.horizontal, - itemCount: 20, - itemBuilder: (ctx, weekIndex) { - return TimetableOneWeekCached( - timetable: timetable, - weekIndex: weekIndex, - ); - }, - ); - } - - /// 跳到某一周 - void jumpTo(TimetablePos pos) { - if (pageController.hasClients) { - final targetOffset = pos.weekIndex; - final currentPos = pageController.page ?? targetOffset; - final distance = (targetOffset - currentPos).abs(); - pageController.animateToPage( - targetOffset, - duration: calcuSwitchAnimationDuration(distance), - curve: Curves.fastEaseInToSlowEaseOut, - ); - } - } -} - -class TimetableOneWeekCached extends StatefulWidget { - final SitTimetableEntity timetable; - final int weekIndex; - - const TimetableOneWeekCached({ - super.key, - required this.timetable, - required this.weekIndex, - }); - - @override - State createState() => _TimetableOneWeekCachedState(); -} - -class _TimetableOneWeekCachedState extends State with AutomaticKeepAliveClientMixin { - /// Cache the entire page to avoid expensive rebuilding. - Widget? _cached; - - @override - bool get wantKeepAlive => true; - - @override - void didChangeDependencies() { - _cached = null; - super.didChangeDependencies(); - } - - @override - void didUpdateWidget(covariant TimetableOneWeekCached oldWidget) { - super.didUpdateWidget(oldWidget); - if (widget.timetable != oldWidget.timetable) { - _cached = null; - } - } - - @override - Widget build(BuildContext context) { - super.build(context); - final cache = _cached; - if (cache != null) { - return cache; - } else { - final style = TimetableStyle.of(context); - final now = DateTime.now(); - Widget buildCell({ - required BuildContext context, - required SitTimetableLessonPart lesson, - required SitTimetableEntity timetable, - }) { - final inClassNow = lesson.type.startTime.isBefore(now) && lesson.type.endTime.isAfter(now); - final passed = lesson.type.endTime.isBefore(now); - Widget cell = InteractiveCourseCell( - lesson: lesson, - style: style, - timetable: timetable, - isLessonTaken: passed, - ); - if (inClassNow) { - // cell = Card.outlined( - // margin: const EdgeInsets.all(1), - // child: cell.padAll(1), - // ); - } - return cell; - } - - final res = LayoutBuilder( - builder: (context, box) { - return TimetableOneWeek( - fullSize: Size(box.maxWidth, box.maxHeight * 1.2), - timetable: widget.timetable, - weekIndex: widget.weekIndex, - showFreeTip: true, - cellBuilder: buildCell, - ).scrolled(); - }, - ); - _cached = res; - return res; - } - } -} - -class TimetableOneWeek extends StatelessWidget { - final SitTimetableEntity timetable; - final int weekIndex; - final Size fullSize; - final bool showFreeTip; - final Widget Function({ - required BuildContext context, - required SitTimetableLessonPart lesson, - required SitTimetableEntity timetable, - }) cellBuilder; - - const TimetableOneWeek({ - super.key, - required this.timetable, - required this.weekIndex, - required this.fullSize, - required this.cellBuilder, - this.showFreeTip = false, - }); - - @override - Widget build(BuildContext context) { - final todayPos = timetable.type.locate(DateTime.now()); - final cellSize = Size(fullSize.width / 7.62, fullSize.height / 11); - final timetableWeek = timetable.weeks[weekIndex]; - - final view = buildSingleWeekView( - timetableWeek, - context: context, - cellSize: cellSize, - fullSize: fullSize, - todayPos: todayPos, - ); - if (showFreeTip && timetableWeek.isFree) { - // free week - return [ - view, - FreeWeekTip( - timetable: timetable, - weekIndex: weekIndex, - ).padOnly(t: fullSize.height * 0.2), - ].stack(); - } else { - return view; - } - } - - /// 布局左侧边栏, 显示节次 - Widget buildLeftColumn(BuildContext ctx, Size cellSize) { - final textStyle = ctx.textTheme.bodyMedium; - final side = getTimetableBorderSide(ctx); - final cells = []; - cells.add(SizedBox( - width: cellSize.width * 0.6, - child: const EmptyHeaderCellTextBox(), - )); - for (var i = 0; i < 11; i++) { - cells.add(Container( - decoration: BoxDecoration( - border: Border(right: side), - ), - child: SizedBox.fromSize( - size: Size(cellSize.width * 0.6, cellSize.height), - child: (i + 1).toString().text(style: textStyle).center(), - ), - )); - } - return cells.column(); - } - - Widget buildSingleWeekView( - SitTimetableWeek timetableWeek, { - required BuildContext context, - required Size cellSize, - required Size fullSize, - required TimetablePos todayPos, - }) { - return List.generate(8, (index) { - if (index == 0) { - return buildLeftColumn(context, cellSize); - } else { - return _buildCellsByDay( - context, - timetableWeek.days[index - 1], - cellSize, - todayPos: todayPos, - ); - } - }).row(); - } - - /// 构建某一天的那一列格子. - Widget _buildCellsByDay( - BuildContext context, - SitTimetableDay day, - Size cellSize, { - required TimetablePos todayPos, - }) { - final cells = []; - final weekday = Weekday.fromIndex(day.index); - cells.add(Container( - width: cellSize.width, - decoration: BoxDecoration( - color: todayPos.weekIndex == weekIndex && todayPos.weekday == weekday - ? context.colorScheme.secondaryContainer - : null, - border: Border(bottom: getTimetableBorderSide(context)), - ), - child: HeaderCellTextBox( - weekIndex: weekIndex, - weekday: weekday, - startDate: timetable.type.startDate, - ), - )); - for (int timeslot = 0; timeslot < day.timeslot2LessonSlot.length; timeslot++) { - final lessonSlot = day.timeslot2LessonSlot[timeslot]; - - /// TODO: Multi-layer lesson slot - final lesson = lessonSlot.lessonAt(0); - if (lesson == null) { - cells.add(DashLined( - top: timeslot != 0, - bottom: timeslot != day.timeslot2LessonSlot.length - 1, - child: SizedBox(width: cellSize.width, height: cellSize.height), - )); - } else { - /// TODO: Range checking - final course = lesson.course; - cells.add(SizedBox( - width: cellSize.width, - height: cellSize.height * lesson.type.timeslotDuration, - child: cellBuilder( - context: context, - lesson: lesson, - timetable: timetable, - ), - )); - - /// Skip to the end - timeslot = lesson.type.endIndex; - } - } - - return cells.column(); - } -} - -class InteractiveCourseCell extends ConsumerWidget { - final SitTimetableLessonPart lesson; - final SitTimetableEntity timetable; - final bool isLessonTaken; - final TimetableStyleData style; - - const InteractiveCourseCell({ - super.key, - required this.lesson, - required this.timetable, - this.isLessonTaken = false, - required this.style, - }); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final quickLookLessonOnTap = ref.watch(Settings.timetable.$quickLookLessonOnTap) ?? true; - if (quickLookLessonOnTap) { - return InteractiveCourseCellWithTooltip( - timetable: timetable, - isLessonTaken: isLessonTaken, - style: style, - lesson: lesson, - ); - } - final course = lesson.course; - return StyledCourseCell( - timetable: timetable, - course: course, - isLessonTaken: isLessonTaken, - style: style, - innerBuilder: (ctx, child) => InkWell( - onTap: () async { - if (!context.mounted) return; - await context.showSheet( - (ctx) => TimetableCourseSheetPage( - courseCode: course.courseCode, - timetable: timetable, - highlightedCourseKey: course.courseKey, - ), - ); - }, - child: child, - ), - ); - } -} - -class InteractiveCourseCellWithTooltip extends StatefulWidget { - final SitTimetableLessonPart lesson; - final SitTimetableEntity timetable; - final bool isLessonTaken; - final TimetableStyleData style; - - const InteractiveCourseCellWithTooltip({ - super.key, - required this.lesson, - required this.timetable, - this.isLessonTaken = false, - required this.style, - }); - - @override - State createState() => _InteractiveCourseCellWithTooltipState(); -} - -class _InteractiveCourseCellWithTooltipState extends State { - final $tooltip = GlobalKey(debugLabel: "tooltip"); - - @override - Widget build(BuildContext context) { - return StyledCourseCell( - timetable: widget.timetable, - course: widget.lesson.course, - isLessonTaken: widget.isLessonTaken, - style: widget.style, - innerBuilder: (ctx, child) => Tooltip( - key: $tooltip, - preferBelow: false, - triggerMode: UniversalPlatform.isDesktop ? TooltipTriggerMode.tap : TooltipTriggerMode.manual, - message: buildTooltipMessage(), - textAlign: TextAlign.center, - child: InkWell( - onTap: UniversalPlatform.isDesktop - ? null - : () async { - $tooltip.currentState?.ensureTooltipVisible(); - }, - // onDoubleTap: showDetailsSheet, - onLongPress: showDetailsSheet, - child: child, - ), - ), - ); - } - - Future showDetailsSheet() async { - final course = widget.lesson.course; - await context.showSheet( - (ctx) => TimetableCourseSheetPage( - courseCode: course.courseCode, - timetable: widget.timetable, - highlightedCourseKey: course.courseKey, - ), - ); - } - - String buildTooltipMessage() { - final lessons = widget.lesson.course.calcBeginEndTimePointForEachLesson(); - final lessonTimeTip = lessons.map((time) => "${time.begin.l10n(context)}–${time.end.l10n(context)}").join("\n"); - final course = widget.lesson.course; - var tooltip = "${i18n.course.courseCode} ${course.courseCode}"; - if (course.classCode.isNotEmpty) { - tooltip += "\n${i18n.course.classCode} ${course.classCode}"; - } - tooltip += "\n$lessonTimeTip"; - return tooltip; - } -} - -class CourseCell extends StatelessWidget { - final String courseName; - final String place; - final List? teachers; - final Widget Function(BuildContext context, Widget child)? innerBuilder; - final Color color; - - const CourseCell({ - super.key, - required this.courseName, - required this.color, - required this.place, - this.teachers, - this.innerBuilder, - }); - - @override - Widget build(BuildContext context) { - final innerBuilder = this.innerBuilder; - final info = TimetableSlotInfo( - courseName: courseName, - maxLines: context.isPortrait ? 8 : 5, - place: place, - teachers: teachers, - // textColor: color.resolveTextColorForReadability(), - ).center(); - return Card.filled( - clipBehavior: Clip.hardEdge, - color: color, - margin: const EdgeInsets.all(0.5), - child: innerBuilder != null ? innerBuilder(context, info) : info, - ); - } -} - -class StyledCourseCell extends StatelessWidget { - final SitCourse course; - final SitTimetableEntity timetable; - final bool isLessonTaken; - final Widget Function(BuildContext context, Widget child)? innerBuilder; - final TimetableStyleData style; - - const StyledCourseCell({ - super.key, - required this.timetable, - required this.course, - required this.isLessonTaken, - required this.style, - this.innerBuilder, - }); - - @override - Widget build(BuildContext context) { - var color = timetable.resolveColor(style.platte, course).byTheme(context.theme); - color = style.cellStyle.decorateColor( - color, - themeColor: context.colorScheme.primary, - isLessonTaken: isLessonTaken, - ); - return CourseCell( - courseName: course.courseName, - color: color, - place: course.place, - teachers: style.cellStyle.showTeachers ? course.teachers : null, - innerBuilder: innerBuilder, - ); - } -} - -class DashLined extends StatelessWidget { - final Widget? child; - final bool top; - final bool bottom; - final bool left; - final bool right; - - const DashLined({ - super.key, - this.child, - this.top = false, - this.bottom = false, - this.left = false, - this.right = false, - }); - - @override - Widget build(BuildContext context) { - return Container( - decoration: DashDecoration( - color: context.colorScheme.onBackground.withOpacity(0.3), - strokeWidth: 0.5, - borders: { - if (right) LinePosition.right, - if (bottom) LinePosition.bottom, - if (left) LinePosition.left, - if (top) LinePosition.top, - }, - ), - child: child, - ); - } -} - -class TimetableSlotInfo extends StatelessWidget { - final String courseName; - final String place; - final List? teachers; - final int maxLines; - final Color? textColor; - - const TimetableSlotInfo({ - super.key, - required this.maxLines, - required this.courseName, - required this.place, - this.teachers, - this.textColor, - }); - - @override - Widget build(BuildContext context) { - final teachers = this.teachers; - return AutoSizeText.rich( - TextSpan( - children: [ - TextSpan( - text: courseName, - style: context.textTheme.bodyMedium?.copyWith( - color: textColor, - ), - ), - if (place.isNotEmpty) - TextSpan( - text: "\n${beautifyPlace(place)}", - style: context.textTheme.bodySmall?.copyWith( - color: textColor, - ), - ), - if (teachers != null) - TextSpan( - text: "\n${teachers.join(',')}", - style: context.textTheme.bodySmall?.copyWith( - color: textColor, - ), - ), - ], - ), - minFontSize: 0, - stepGranularity: 0.1, - maxLines: maxLines, - textAlign: TextAlign.center, - ); - } -} diff --git a/lib/update/entity/artifact.dart b/lib/update/entity/artifact.dart deleted file mode 100644 index eace98d6a..000000000 --- a/lib/update/entity/artifact.dart +++ /dev/null @@ -1,71 +0,0 @@ -import 'package:json_annotation/json_annotation.dart'; -import 'package:sit/entity/version.dart'; -import 'package:version/version.dart'; - -part 'artifact.g.dart'; - -@JsonSerializable(createToJson: false) -class ArtifactVersionInfo { - @JsonKey(fromJson: Version.parse) - final Version version; - @JsonKey(name: "release_time") - final DateTime releaseTime; - @JsonKey(name: "release_note") - final String releaseNote; - @JsonKey() - final Map downloads; - - const ArtifactVersionInfo({ - required this.version, - required this.releaseTime, - required this.releaseNote, - required this.downloads, - }); - - ArtifactDownload? downloadOf(AppPlatform platform) => downloads[platform.name]; - - factory ArtifactVersionInfo.fromJson(Map json) => _$ArtifactVersionInfoFromJson(json); - - @override - String toString() { - return { - "version": version, - "releaseTime": releaseTime, - "releaseNote": releaseNote.replaceAll(RegExp(r"[\t\n\r]+"), ""), - "downloads": downloads, - }.toString(); - } -} - -@JsonSerializable(createToJson: false) -class ArtifactDownload { - @JsonKey() - final String name; - @JsonKey(name: "default") - final String defaultUrlName; - @JsonKey() - final String sha256; - @JsonKey(name: "url") - final Map name2Url; - - const ArtifactDownload({ - required this.name, - required this.sha256, - required this.defaultUrlName, - required this.name2Url, - }); - - String? get defaultUrl => name2Url[defaultUrlName]; - - factory ArtifactDownload.fromJson(Map json) => _$ArtifactDownloadFromJson(json); - - @override - String toString() { - return { - "name": name, - "defaultUrlName": defaultUrlName, - "sha256": sha256, - "name2Url": name2Url, - }.toString(); - } -} diff --git a/lib/update/entity/artifact.g.dart b/lib/update/entity/artifact.g.dart deleted file mode 100644 index 5522af589..000000000 --- a/lib/update/entity/artifact.g.dart +++ /dev/null @@ -1,23 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'artifact.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -ArtifactVersionInfo _$ArtifactVersionInfoFromJson(Map json) => ArtifactVersionInfo( - version: Version.parse(json['version'] as String), - releaseTime: DateTime.parse(json['release_time'] as String), - releaseNote: json['release_note'] as String, - downloads: (json['downloads'] as Map).map( - (k, e) => MapEntry(k, ArtifactDownload.fromJson(e as Map)), - ), - ); - -ArtifactDownload _$ArtifactDownloadFromJson(Map json) => ArtifactDownload( - name: json['name'] as String, - sha256: json['sha256'] as String, - defaultUrlName: json['default'] as String, - name2Url: Map.from(json['url'] as Map), - ); diff --git a/lib/update/i18n.dart b/lib/update/i18n.dart deleted file mode 100644 index 84a89fbb6..000000000 --- a/lib/update/i18n.dart +++ /dev/null @@ -1,24 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/l10n/common.dart'; - -const i18n = _I18n(); - -class _I18n with CommonI18nMixin { - const _I18n(); - - static const ns = "update"; - - String get title => "$ns.title".tr(); - - String get newVersionAvailable => "$ns.newVersionAvailable".tr(); - - String get onLatestTip => "$ns.onLatestTip".tr(); - - String get installOnAppStoreInsteadTip => "$ns.installOnAppStoreInsteadTip".tr(); - - String get notNow => "$ns.notNow".tr(); - - String get skipThisVersionFor7Days => "$ns.skipThisVersionFor7Days".tr(); - - String get openAppStore => "$ns.openAppStore".tr(); -} diff --git a/lib/update/init.dart b/lib/update/init.dart deleted file mode 100644 index 7e39a8431..000000000 --- a/lib/update/init.dart +++ /dev/null @@ -1,11 +0,0 @@ -import 'service/update.dart'; - -class UpdateInit { - static late UpdateService service; - - static void init() { - service = const UpdateService(); - } - - static void initStorage() {} -} diff --git a/lib/update/page/update.dart b/lib/update/page/update.dart deleted file mode 100644 index f8d9e3611..000000000 --- a/lib/update/page/update.dart +++ /dev/null @@ -1,116 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:markdown_widget/markdown_widget.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/r.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/update/entity/artifact.dart'; -import 'package:sit/widgets/markdown.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:url_launcher/url_launcher_string.dart'; -import '../i18n.dart'; - -class ArtifactUpdatePage extends StatefulWidget { - final ArtifactVersionInfo info; - - const ArtifactUpdatePage({ - super.key, - required this.info, - }); - - @override - State createState() => _ArtifactUpdatePageState(); -} - -class _ArtifactUpdatePageState extends State { - bool ignore = false; - - @override - Widget build(BuildContext context) { - final info = widget.info; - return Scaffold( - body: [ - [ - const Spacer(), - i18n.newVersionAvailable - .text( - textAlign: TextAlign.center, - style: context.textTheme.headlineLarge?.copyWith( - fontWeight: FontWeight.w700, - letterSpacing: -1, - ), - ) - .expanded(flex: 5), - const Spacer(), - ].row().padV(32), - [ - ListTile( - leading: const Icon(Icons.featured_play_list), - title: info.version.toString().text(), - ), - MarkdownWidget(data: info.releaseNote).expanded(), - ].column().padH(8).expanded(), - buildSkipTile().padH(32), - [ - buildSkipButton().padOnly(r: 8).expanded(), - buildDownloadButton().padOnly(l: 8).expanded(), - ].row(maa: MainAxisAlignment.spaceEvenly).padAll(8), - ].column().safeArea(), - ); - } - - Widget buildSkipButton() { - final info = widget.info; - return OutlinedButton( - onPressed: () { - if (ignore) { - Settings.skippedVersion = info.version.toString(); - Settings.lastSkipUpdateTime = DateTime.now(); - } - context.pop(); - }, - child: i18n.notNow.text(), - ); - } - - Widget buildDownloadButton() { - final info = widget.info; - if (R.debugCupertino || UniversalPlatform.isIOS || UniversalPlatform.isMacOS) { - return FilledButton( - onPressed: ignore - ? null - : () async { - context.pop(); - await launchUrlString(R.iosAppStoreUrl, mode: LaunchMode.externalApplication); - }, - child: i18n.openAppStore.text(), - ); - } - return FilledButton.icon( - onPressed: ignore - ? null - : () async { - final download = info.downloadOf(R.currentVersion.platform); - if (download == null) return; - final url = download.defaultUrl; - if (url == null) return; - context.pop(); - await launchUrlString(url, mode: LaunchMode.externalApplication); - }, - icon: Icon(UniversalPlatform.isDesktop ? Icons.install_desktop : Icons.install_mobile), - label: i18n.download.text(), - ); - } - - Widget buildSkipTile() { - return CheckboxListTile( - value: ignore, - onChanged: (value) { - setState(() { - ignore = value == true; - }); - }, - title: i18n.skipThisVersionFor7Days.text(), - ); - } -} diff --git a/lib/update/service/update.dart b/lib/update/service/update.dart deleted file mode 100644 index 2488c76af..000000000 --- a/lib/update/service/update.dart +++ /dev/null @@ -1,89 +0,0 @@ -import 'dart:convert'; -import 'dart:io'; - -import 'package:dio/dio.dart'; -import 'package:package_info_plus/package_info_plus.dart'; -import 'package:sit/files.dart'; -import 'package:sit/init.dart'; -import 'package:sit/session/backend.dart'; -import 'package:sit/utils/error.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:version/version.dart'; - -import '../entity/artifact.dart'; - -const _itunesURL = 'https://itunes.apple.com'; - -class UpdateService { - BackendSession get _session => Init.backend; - - Dio get _dio => Init.dio; - - const UpdateService(); - - Future getLatestVersionFromOfficial() async { - late Response res; - try { - res = await _session.get( - "https://g.mysit.life/artifact/latest.json", - ); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - res = await _session.get( - "https://get.mysit.life/artifact/latest.json", - ); - } - final json = res.data as Map; - return ArtifactVersionInfo.fromJson(json); - } - - Future getLatestVersionFromAppStore() async { - final official = await getLatestVersionFromOfficial(); - final packageInfo = await PackageInfo.fromPlatform(); - final version = await _getVersionFromItunes( - UniversalPlatform.isIOS || UniversalPlatform.isMacOS ? packageInfo.packageName : "life.mysit.SITLife", - iosAppStoreRegion: "cn", - ); - if (official.version == version) { - return official; - } - return null; - } - - Future _getVersionFromItunes(String bundleId, {String? iosAppStoreRegion}) async { - final Uri uri; - - if (iosAppStoreRegion == null) { - uri = Uri.parse('$_itunesURL/lookup?bundleId=$bundleId'); - } else { - uri = Uri.parse('$_itunesURL/$iosAppStoreRegion/lookup?bundleId=$bundleId'); - } - - final res = await _dio.requestUri(uri); - - final responseBody = await res.data as String; - final json = jsonDecode(responseBody); - final version = _parseVersionFromItunes(json); - return version; - } - - Version? _parseVersionFromItunes(Map json) { - final results = json["results"]; - if (results is! List) return null; - if (results.isEmpty) return null; - final info = results.first; - final versionRaw = info["version"]; - if (versionRaw is! String) return null; - return Version.parse(versionRaw); - } - - Future downloadArtifactFromUrl( - String url, { - required String name, - ProgressCallback? onProgress, - }) async { - final file = Files.artifact.subFile(name); - await Init.dio.download(url, file.path, onReceiveProgress: onProgress); - return file; - } -} diff --git a/lib/update/utils.dart b/lib/update/utils.dart deleted file mode 100644 index 45e28053e..000000000 --- a/lib/update/utils.dart +++ /dev/null @@ -1,163 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/foundation.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/entity/version.dart'; -import 'package:sit/r.dart'; -import 'package:sit/settings/dev.dart'; -import 'package:sit/settings/settings.dart'; -import 'package:sit/utils/error.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:url_launcher/url_launcher_string.dart'; -import 'package:version/version.dart'; - -import 'init.dart'; -import 'i18n.dart'; -import 'page/update.dart'; - -Future checkAppUpdate({ - required BuildContext context, - Duration delayAtLeast = Duration.zero, - required bool manually, -}) async { - if (kIsWeb) return; - try { - if (UniversalPlatform.isIOS || UniversalPlatform.isMacOS) { - await _checkAppUpdateFromApple( - context: context, - delayAtLeast: delayAtLeast, - manually: manually, - ); - } else { - await _checkAppUpdateFromOfficial( - context: context, - delayAtLeast: delayAtLeast, - manually: manually, - ); - } - } catch (error, stackTrace) { - handleRequestError(error, stackTrace); - } -} - -Future _checkAppUpdateFromOfficial({ - required BuildContext context, - Duration delayAtLeast = Duration.zero, - required bool manually, -}) async { - final latest = await UpdateInit.service.getLatestVersionFromOfficial(); - debugPrint(latest.toString()); - if (kDebugMode && manually) { - if (!context.mounted) return; - await context.showSheet((ctx) => ArtifactUpdatePage(info: latest)); - return; - } - final currentVersion = R.currentVersion.version; - if (latest.downloadOf(R.currentVersion.platform) == null) return; - // if update checking was not manually triggered, skip it. - final lastSkipUpdateTime = Settings.lastSkipUpdateTime; - final skipThisVersion = lastSkipUpdateTime != null && - _getSkippedVersion() == latest.version && - lastSkipUpdateTime.difference(DateTime.now()).inDays >= 7; - if (!manually && skipThisVersion) return; - if (!manually) { - await Future.delayed(delayAtLeast); - } - if (!context.mounted) return; - if (latest.version > currentVersion) { - await context.showSheet((ctx) => ArtifactUpdatePage(info: latest)); - } else if (manually) { - await context.showTip(title: i18n.title, desc: i18n.onLatestTip, primary: i18n.ok); - } -} - -Future _checkAppUpdateFromApple({ - required BuildContext context, - Duration delayAtLeast = Duration.zero, - required bool manually, -}) async { - final latest = await UpdateInit.service.getLatestVersionFromAppStore(); - if (latest == null) return; - debugPrint(latest.toString()); - if (kDebugMode && manually) { - if (!context.mounted) return; - await context.showSheet((ctx) => ArtifactUpdatePage(info: latest)); - return; - } - final currentVersion = R.currentVersion.version; - final lastSkipUpdateTime = Settings.lastSkipUpdateTime; - final skipThisVersion = lastSkipUpdateTime != null && - _getSkippedVersion() == latest.version && - lastSkipUpdateTime.difference(DateTime.now()).inDays >= 7; - // if update checking was not manually triggered, skip it. - if (!manually && skipThisVersion) return; - if (!manually) { - await Future.delayed(delayAtLeast); - } - if (Dev.on) return; - if (!context.mounted) return; - final installerStore = R.currentVersion.installerStore; - if (installerStore == InstallerStore.testFlight) { - if (latest.version >= currentVersion) { - final confirm = await _requestInstallOnAppStoreInstead(context: context, latest: latest.version); - if (confirm == true) { - await launchUrlString(R.iosAppStoreUrl, mode: LaunchMode.externalApplication); - } - } - } else if (installerStore == InstallerStore.appStore) { - if (latest.version > currentVersion) { - await context.showSheet((ctx) => ArtifactUpdatePage(info: latest)); - } else if (manually) { - await context.showTip(title: i18n.title, desc: i18n.onLatestTip, primary: i18n.ok); - } - } -} - -Future _requestInstallOnAppStoreInstead({ - required BuildContext context, - required Version latest, -}) async { - return await showCupertinoModalPopup( - context: context, - builder: (ctx) => CupertinoActionSheet( - message: i18n.installOnAppStoreInsteadTip.text(), - actions: [ - CupertinoActionSheetAction( - isDefaultAction: true, - onPressed: () { - ctx.pop(true); - }, - child: i18n.openAppStore.text(), - ), - CupertinoActionSheetAction( - onPressed: () { - Settings.skippedVersion = latest.toString(); - Settings.lastSkipUpdateTime = DateTime.now(); - ctx.pop(false); - }, - child: i18n.skipThisVersionFor7Days.text(), - ), - ], - cancelButton: CupertinoActionSheetAction( - onPressed: () { - ctx.pop(false); - }, - child: i18n.cancel.text(), - ), - ), - ); -} - -Version? _getSkippedVersion() { - final skippedVersionRaw = Settings.skippedVersion; - if (skippedVersionRaw != null) { - try { - return Version.parse(skippedVersionRaw); - } catch (e) { - return null; - } - } - return null; -} diff --git a/lib/utils/async_event.dart b/lib/utils/async_event.dart deleted file mode 100644 index 96a1f84fe..000000000 --- a/lib/utils/async_event.dart +++ /dev/null @@ -1,352 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/foundation.dart'; - -const String _thisLibrary = 'package:sit/utils/event_bus.dart'; - -class AsyncEventEmitter implements Listenable { - int _count = 0; - - // The _listeners is intentionally set to a fixed-length _GrowableList instead - // of const []. - // - // The const [] creates an instance of _ImmutableList which would be - // different from fixed-length _GrowableList used elsewhere in this class. - // keeping runtime type the same during the lifetime of this class lets the - // compiler to infer concrete type for this property, and thus improves - // performance. - static final List Function()?> _emptyListeners = List Function()?>.filled(0, null); - List Function()?> _listeners = _emptyListeners; - int _notificationCallStackDepth = 0; - int _reentrantlyRemovedListeners = 0; - bool _debugDisposed = false; - - /// If true, the event [ObjectCreated] for this instance was dispatched to - /// [FlutterMemoryAllocations]. - /// - /// As [ChangedNotifier] is used as mixin, it does not have constructor, - /// so we use [addListener] to dispatch the event. - bool _creationDispatched = false; - - /// Used by subclasses to assert that the [ChangeNotifier] has not yet been - /// disposed. - /// - /// {@tool snippet} - /// The [debugAssertNotDisposed] function should only be called inside of an - /// assert, as in this example. - /// - /// ```dart - /// class MyNotifier with ChangeNotifier { - /// void doUpdate() { - /// assert(ChangeNotifier.debugAssertNotDisposed(this)); - /// // ... - /// } - /// } - /// ``` - /// {@end-tool} - // This is static and not an instance method because too many people try to - // implement ChangeNotifier instead of extending it (and so it is too breaking - // to add a method, especially for debug). - static bool debugAssertNotDisposed(AsyncEventEmitter notifier) { - assert(() { - if (notifier._debugDisposed) { - throw FlutterError( - 'A ${notifier.runtimeType} was used after being disposed.\n' - 'Once you have called dispose() on a ${notifier.runtimeType}, it ' - 'can no longer be used.', - ); - } - return true; - }()); - return true; - } - - /// Whether any listeners are currently registered. - /// - /// Clients should not depend on this value for their behavior, because having - /// one listener's logic change when another listener happens to start or stop - /// listening will lead to extremely hard-to-track bugs. Subclasses might use - /// this information to determine whether to do any work when there are no - /// listeners, however; for example, resuming a [Stream] when a listener is - /// added and pausing it when a listener is removed. - /// - /// Typically this is used by overriding [addListener], checking if - /// [hasListeners] is false before calling `super.addListener()`, and if so, - /// starting whatever work is needed to determine when to call - /// [notifyListeners]; and similarly, by overriding [removeListener], checking - /// if [hasListeners] is false after calling `super.removeListener()`, and if - /// so, stopping that same work. - /// - /// This method returns false if [dispose] has been called. - @protected - bool get hasListeners => _count > 0; - - /// Register a closure to be called when the object changes. - /// - /// If the given closure is already registered, an additional instance is - /// added, and must be removed the same number of times it is added before it - /// will stop being called. - /// - /// This method must not be called after [dispose] has been called. - /// - /// {@template flutter.foundation.ChangeNotifier.addListener} - /// If a listener is added twice, and is removed once during an iteration - /// (e.g. in response to a notification), it will still be called again. If, - /// on the other hand, it is removed as many times as it was registered, then - /// it will no longer be called. This odd behavior is the result of the - /// [ChangeNotifier] not being able to determine which listener is being - /// removed, since they are identical, therefore it will conservatively still - /// call all the listeners when it knows that any are still registered. - /// - /// This surprising behavior can be unexpectedly observed when registering a - /// listener on two separate objects which are both forwarding all - /// registrations to a common upstream object. - /// {@endtemplate} - /// - /// See also: - /// - /// * [removeListener], which removes a previously registered closure from - /// the list of closures that are notified when the object changes. - @override - EventSubscription addListener(FutureOr Function() listener) { - assert(AsyncEventEmitter.debugAssertNotDisposed(this)); - if (kFlutterMemoryAllocationsEnabled && !_creationDispatched) { - FlutterMemoryAllocations.instance.dispatchObjectCreated( - library: _thisLibrary, - className: '$AsyncEventEmitter', - object: this, - ); - _creationDispatched = true; - } - if (_count == _listeners.length) { - if (_count == 0) { - _listeners = List Function()?>.filled(1, null); - } else { - final List Function()?> newListeners = - List Function()?>.filled(_listeners.length * 2, null); - for (int i = 0; i < _count; i++) { - newListeners[i] = _listeners[i]; - } - _listeners = newListeners; - } - } - _listeners[_count++] = listener; - return EventSubscription(emitter: this, listener: listener); - } - - void _removeAt(int index) { - // The list holding the listeners is not growable for performances reasons. - // We still want to shrink this list if a lot of listeners have been added - // and then removed outside a notifyListeners iteration. - // We do this only when the real number of listeners is half the length - // of our list. - _count -= 1; - if (_count * 2 <= _listeners.length) { - final List Function()?> newListeners = List Function()?>.filled(_count, null); - - // Listeners before the index are at the same place. - for (int i = 0; i < index; i++) { - newListeners[i] = _listeners[i]; - } - - // Listeners after the index move towards the start of the list. - for (int i = index; i < _count; i++) { - newListeners[i] = _listeners[i + 1]; - } - - _listeners = newListeners; - } else { - // When there are more listeners than half the length of the list, we only - // shift our listeners, so that we avoid to reallocate memory for the - // whole list. - for (int i = index; i < _count; i++) { - _listeners[i] = _listeners[i + 1]; - } - _listeners[_count] = null; - } - } - - /// Remove a previously registered closure from the list of closures that are - /// notified when the object changes. - /// - /// If the given listener is not registered, the call is ignored. - /// - /// This method returns immediately if [dispose] has been called. - /// - /// {@macro flutter.foundation.ChangeNotifier.addListener} - /// - /// See also: - /// - /// * [addListener], which registers a closure to be called when the object - /// changes. - @override - void removeListener(FutureOr Function() listener) { - // This method is allowed to be called on disposed instances for usability - // reasons. Due to how our frame scheduling logic between render objects and - // overlays, it is common that the owner of this instance would be disposed a - // frame earlier than the listeners. Allowing calls to this method after it - // is disposed makes it easier for listeners to properly clean up. - for (int i = 0; i < _count; i++) { - final FutureOr Function()? listenerAtIndex = _listeners[i]; - if (listenerAtIndex == listener) { - if (_notificationCallStackDepth > 0) { - // We don't resize the list during notifyListeners iterations - // but we set to null, the listeners we want to remove. We will - // effectively resize the list at the end of all notifyListeners - // iterations. - _listeners[i] = null; - _reentrantlyRemovedListeners++; - } else { - // When we are outside the notifyListeners iterations we can - // effectively shrink the list. - _removeAt(i); - } - break; - } - } - } - - /// Discards any resources used by the object. After this is called, the - /// object is not in a usable state and should be discarded (calls to - /// [addListener] will throw after the object is disposed). - /// - /// This method should only be called by the object's owner. - /// - /// This method does not notify listeners, and clears the listener list once - /// it is called. Consumers of this class must decide on whether to notify - /// listeners or not immediately before disposal. - @mustCallSuper - void dispose() { - assert(AsyncEventEmitter.debugAssertNotDisposed(this)); - assert( - _notificationCallStackDepth == 0, - 'The "dispose()" method on $this was called during the call to ' - '"notifyListeners()". This is likely to cause errors since it modifies ' - 'the list of listeners while the list is being used.', - ); - assert(() { - _debugDisposed = true; - return true; - }()); - if (kFlutterMemoryAllocationsEnabled && _creationDispatched) { - FlutterMemoryAllocations.instance.dispatchObjectDisposed(object: this); - } - _listeners = _emptyListeners; - _count = 0; - } - - /// Call all the registered listeners. - /// - /// Call this method whenever the object changes, to notify any clients the - /// object may have changed. Listeners that are added during this iteration - /// will not be visited. Listeners that are removed during this iteration will - /// not be visited after they are removed. - /// - /// Exceptions thrown by listeners will be caught and reported using - /// [FlutterError.reportError]. - /// - /// This method must not be called after [dispose] has been called. - /// - /// Surprising behavior can result when reentrantly removing a listener (e.g. - /// in response to a notification) that has been registered multiple times. - /// See the discussion at [removeListener]. - @pragma('vm:notify-debugger-on-exception') - Future notifyListeners() async { - assert(AsyncEventEmitter.debugAssertNotDisposed(this)); - if (_count == 0) { - return; - } - - // To make sure that listeners removed during this iteration are not called, - // we set them to null, but we don't shrink the list right away. - // By doing this, we can continue to iterate on our list until it reaches - // the last listener added before the call to this method. - - // To allow potential listeners to recursively call notifyListener, we track - // the number of times this method is called in _notificationCallStackDepth. - // Once every recursive iteration is finished (i.e. when _notificationCallStackDepth == 0), - // we can safely shrink our list so that it will only contain not null - // listeners. - - _notificationCallStackDepth++; - - final int end = _count; - for (int i = 0; i < end; i++) { - try { - final listener = _listeners[i]; - if (listener != null) { - final result = listener.call(); - if (result is Future) { - await result; - } - } - } catch (exception, stack) { - FlutterError.reportError(FlutterErrorDetails( - exception: exception, - stack: stack, - library: 'foundation library', - context: ErrorDescription('while dispatching notifications for $runtimeType'), - informationCollector: () => [ - DiagnosticsProperty( - 'The $runtimeType sending notification was', - this, - style: DiagnosticsTreeStyle.errorProperty, - ), - ], - )); - } - } - - _notificationCallStackDepth--; - - if (_notificationCallStackDepth == 0 && _reentrantlyRemovedListeners > 0) { - // We really remove the listeners when all notifications are done. - final int newLength = _count - _reentrantlyRemovedListeners; - if (newLength * 2 <= _listeners.length) { - // As in _removeAt, we only shrink the list when the real number of - // listeners is half the length of our list. - final List Function()?> newListeners = List Function()?>.filled(newLength, null); - - int newIndex = 0; - for (int i = 0; i < _count; i++) { - final FutureOr Function()? listener = _listeners[i]; - if (listener != null) { - newListeners[newIndex++] = listener; - } - } - - _listeners = newListeners; - } else { - // Otherwise we put all the null references at the end. - for (int i = 0; i < newLength; i += 1) { - if (_listeners[i] == null) { - // We swap this item with the next not null item. - int swapIndex = i + 1; - while (_listeners[swapIndex] == null) { - swapIndex += 1; - } - _listeners[i] = _listeners[swapIndex]; - _listeners[swapIndex] = null; - } - } - } - - _reentrantlyRemovedListeners = 0; - _count = newLength; - } - } -} - -class EventSubscription { - final FutureOr Function() listener; - final AsyncEventEmitter emitter; - - const EventSubscription({ - required this.emitter, - required this.listener, - }); - - void cancel() { - emitter.removeListener(listener); - } -} diff --git a/lib/utils/byte_io/byte.dart b/lib/utils/byte_io/byte.dart deleted file mode 100644 index cb5d973c7..000000000 --- a/lib/utils/byte_io/byte.dart +++ /dev/null @@ -1,17 +0,0 @@ -import 'byte_length_web.dart' if (dart.library.io) 'byte_length.dart'; - -enum ByteLength { - bit8(1, ByteLengths.bit8), - bit16(2, ByteLengths.bit16), - bit32(4, ByteLengths.bit32), - bit64(8, ByteLengths.bit64), - ; - - final int byteLengths; - final int maxValue; - - const ByteLength(this.byteLengths, this.maxValue); - - @override - String toString() => "$byteLengths-byte"; -} diff --git a/lib/utils/byte_io/byte_io.dart b/lib/utils/byte_io/byte_io.dart deleted file mode 100644 index 5746b1f87..000000000 --- a/lib/utils/byte_io/byte_io.dart +++ /dev/null @@ -1,6 +0,0 @@ -library byte_io; - -export 'writer.dart'; -export 'reader.dart'; -export 'byte.dart'; -export 'ex.dart'; diff --git a/lib/utils/byte_io/byte_length.dart b/lib/utils/byte_io/byte_length.dart deleted file mode 100644 index 3de95cd1f..000000000 --- a/lib/utils/byte_io/byte_length.dart +++ /dev/null @@ -1,6 +0,0 @@ -class ByteLengths { - static const bit8 = 0xFF; - static const bit16 = 0xFFFF; - static const bit32 = 0xFFFFFFFF; - static const bit64 = 0xFFFFFFFFFFFFFFFF; -} diff --git a/lib/utils/byte_io/byte_length_web.dart b/lib/utils/byte_io/byte_length_web.dart deleted file mode 100644 index 8419bbb7f..000000000 --- a/lib/utils/byte_io/byte_length_web.dart +++ /dev/null @@ -1,6 +0,0 @@ -class ByteLengths { - static const bit8 = 0xFF; - static const bit16 = 0xFFFF; - static const bit32 = 0xFFFFFFFF; - static const bit64 = 0x100000000000000; -} diff --git a/lib/utils/byte_io/ex.dart b/lib/utils/byte_io/ex.dart deleted file mode 100644 index 885db40cf..000000000 --- a/lib/utils/byte_io/ex.dart +++ /dev/null @@ -1,68 +0,0 @@ -import 'dart:typed_data'; - -import 'reader.dart'; -import 'writer.dart'; - -extension ByteWriterX on ByteWriter { - void b(bool v) { - uint8(v ? 1 : 0); - } - - /// only for year, month, and day. - void datePacked(DateTime date, int base, [Endian endian = Endian.big]) { - uint16(_packDate(date, base), endian); - } - - /// for milliseconds precision - void dateMilli(DateTime date, [Endian endian = Endian.big]) { - uint32(date.millisecondsSinceEpoch, endian); - } - - /// for microseconds precision - void dateMicro(DateTime date, [Endian endian = Endian.big]) { - uint64(date.microsecondsSinceEpoch, endian); - } -} - -/// Assuming valid year (e.g., 2000-2099), month (1-12), and day (1-31) -int _packDate(DateTime date, int base) { - return (date.year - base) << 9 | (date.month << 5) | date.day; -} - -extension ByteReaderX on ByteReader { - bool b() { - return uint8() != 0; - } - - /// only for year, month, and day. - DateTime datePacked(int base) { - final packed = uint16(); - return DateTime( - _unpackYear(packed, base), - _unpackMonth(packed), - _unpackDay(packed), - ); - } - - /// for milliseconds precision - DateTime dateMilli([Endian endian = Endian.big]) { - return DateTime.fromMillisecondsSinceEpoch(uint32(endian)); - } - - /// for microseconds precision - DateTime dateMicro([Endian endian = Endian.big]) { - return DateTime.fromMicrosecondsSinceEpoch(uint64(endian)); - } -} - -int _unpackYear(int packedDate, int base) { - return ((packedDate >> 9) & 0x1FFF) + base; // Mask to get year bits and add base -} - -int _unpackMonth(int packedDate) { - return (packedDate >> 5) & 0x1F; // Mask to get month bits -} - -int _unpackDay(int packedDate) { - return packedDate & 0x1F; // Mask to get day bits -} diff --git a/lib/utils/byte_io/reader.dart b/lib/utils/byte_io/reader.dart deleted file mode 100644 index 6e7b0f3ce..000000000 --- a/lib/utils/byte_io/reader.dart +++ /dev/null @@ -1,100 +0,0 @@ -import 'dart:convert'; -import 'dart:typed_data'; - -import 'byte.dart'; - -class ByteReader { - final Uint8List data; - late final ByteData _view; - int _offset = 0; - - ByteReader(this.data) { - _view = data.buffer.asByteData(); - } - - Uint8List bytes([ByteLength expectedBytes = ByteLength.bit32]) { - final length = _minimalByteLength(expectedBytes); - final bytes = Uint8List.sublistView(data, _offset, _offset + length); - _offset += bytes.length; - return bytes; - } - - int _minimalByteLength(ByteLength expectedBytes) { - return switch (expectedBytes) { - ByteLength.bit8 => uint8(), - ByteLength.bit16 => uint16(), - ByteLength.bit32 => uint32(), - ByteLength.bit64 => uint64(), - }; - } - - int int8() { - final value = _view.getInt8(_offset); - _offset += 1; - return value; - } - - int int16([Endian endian = Endian.big]) { - final value = _view.getInt16(_offset, endian); - _offset += 2; - return value; - } - - int int32([Endian endian = Endian.big]) { - final value = _view.getInt32(_offset, endian); - _offset += 4; - return value; - } - - int int64([Endian endian = Endian.big]) { - final value = _view.getInt64(_offset, endian); - _offset += 8; - return value; - } - - int uint8() { - final value = _view.getUint8(_offset); - _offset += 1; - return value; - } - - int uint16([Endian endian = Endian.big]) { - final value = _view.getUint16(_offset, endian); - _offset += 2; - return value; - } - - int uint32([Endian endian = Endian.big]) { - final value = _view.getUint32(_offset, endian); - _offset += 4; - return value; - } - - int uint64([Endian endian = Endian.big]) { - final value = _view.getUint64(_offset, endian); - _offset += 8; - return value; - } - - double float32([Endian endian = Endian.big]) { - final value = _view.getFloat32(_offset, endian); - _offset += 4; - return value; - } - - double float64([Endian endian = Endian.big]) { - final value = _view.getFloat64(_offset, endian); - _offset += 8; - return value; - } - - String strUtf8([ByteLength expectedBytes = ByteLength.bit32, Endian endian = Endian.big]) { - final length = _minimalByteLength(expectedBytes); - List charCodes = []; - for (int i = 0; i < length; i++) { - final code = uint8(); - charCodes.add(code); - } - return utf8.decode(charCodes); - } -} diff --git a/lib/utils/byte_io/writer.dart b/lib/utils/byte_io/writer.dart deleted file mode 100644 index b2096424f..000000000 --- a/lib/utils/byte_io/writer.dart +++ /dev/null @@ -1,143 +0,0 @@ -import 'dart:convert'; -import 'dart:typed_data'; - -import 'byte.dart'; - -class ByteWriter { - late ByteData _view; - Uint8List _buffer; - int _offset = 0; - - ByteWriter(int initialCapacity) : _buffer = Uint8List(initialCapacity) { - _view = _buffer.buffer.asByteData(); - } - - int get size => _offset + 1; - - int get capacity => _buffer.length; - - void _checkCapacity({required int requireBytes}) { - if (_offset + 1 + requireBytes > _buffer.length) { - _grow(size + requireBytes); - } - } - - void _grow(int required) { - // We will create a list in the range of 2-4 times larger than - // required. - int newSize = required * 2; - if (newSize < _buffer.length) { - newSize = _buffer.length; - } else { - newSize = _pow2roundup(newSize); - } - var newBuffer = Uint8List(newSize); - newBuffer.setRange(0, _buffer.length, _buffer); - _buffer = newBuffer; - _view = newBuffer.buffer.asByteData(); - } - - void bytes(Uint8List bytes, [ByteLength expectedBytes = ByteLength.bit32, Endian endian = Endian.big]) { - _minimalByteLength(bytes.length, expectedBytes); - _buffer.setRange(_offset, _offset + bytes.length, bytes); - _offset += bytes.length; - } - - void _minimalByteLength(int actualBytes, [ByteLength expectedBytes = ByteLength.bit32, Endian endian = Endian.big]) { - assert(expectedBytes.maxValue >= actualBytes, "Expect $expectedBytes"); - _checkCapacity(requireBytes: actualBytes + expectedBytes.byteLengths); - switch (expectedBytes) { - case ByteLength.bit8: - uint8(actualBytes); - case ByteLength.bit16: - uint16(actualBytes, endian); - case ByteLength.bit32: - uint32(actualBytes, endian); - case ByteLength.bit64: - uint64(actualBytes, endian); - } - } - - void int8(int value) { - _checkCapacity(requireBytes: 1); - _view.setInt8(_offset, value); - _offset += 1; - } - - void int16(int value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 2); - _view.setInt16(_offset, value, endian); - _offset += 2; - } - - void int32(int value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 4); - _view.setInt32(_offset, value, endian); - _offset += 4; - } - - void int64(int value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 8); - _view.setInt64(_offset, value, endian); - _offset += 8; - } - - void uint8(int value) { - _checkCapacity(requireBytes: 1); - _view.setUint8(_offset, value); - _offset += 1; - } - - void uint16(int value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 2); - _view.setUint16(_offset, value, endian); - _offset += 2; - } - - void uint32(int value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 4); - _view.setUint32(_offset, value, endian); - _offset += 4; - } - - void uint64(int value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 8); - _view.setUint64(_offset, value, endian); - _offset += 8; - } - - void float32(double value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 4); - _view.setFloat32(_offset, value, endian); - _offset += 4; - } - - void float64(double value, [Endian endian = Endian.big]) { - _checkCapacity(requireBytes: 8); - _view.setFloat64(_offset, value, endian); - _offset += 8; - } - - void strUtf8(String str, [ByteLength expectedBytes = ByteLength.bit32, Endian endian = Endian.big]) { - List nameBytes = utf8.encode(str); - _minimalByteLength(nameBytes.length, expectedBytes); - for (int i = 0; i < nameBytes.length; i++) { - uint8(nameBytes[i]); - } - } - - Uint8List build() { - return _buffer.sublist(0, _offset); - } -} - -int _pow2roundup(int x) { - assert(x > 0); - --x; - x |= x >> 1; - x |= x >> 2; - x |= x >> 4; - x |= x >> 8; - x |= x >> 16; - return x + 1; -} diff --git a/lib/utils/collection.dart b/lib/utils/collection.dart deleted file mode 100644 index a4450db01..000000000 --- a/lib/utils/collection.dart +++ /dev/null @@ -1,56 +0,0 @@ -extension ListX on List { - List distinct({bool inplace = true}) { - final ids = {}; - var list = inplace ? this : List.from(this); - list.retainWhere((x) => ids.add(x)); - return list; - } - - List distinctBy(Id Function(E element) id, {bool inplace = true}) { - final ids = {}; - var list = inplace ? this : List.from(this); - list.retainWhere((x) => ids.add(id(x))); - return list; - } - - /// Accesses elements using a negative index similar to Python. - /// A negative index counts from the end of the list. - /// - /// Throws an [ArgumentError] if the index is out of bounds. - E indexAt(int index) { - if (index < 0) { - final absIndex = index.abs(); - if (absIndex > length) { - throw ArgumentError("List index out of range: $index"); - } - return this[length + index]; - } else { - return this[index]; - } - } -} - -extension IterableX on Iterable { - E? maxByOrNull>(T Function(E) valueOf) { - final it = iterator; - if (it.moveNext()) { - final first = it.current; - var tempMax = valueOf(first); - var tempE = first; - while (it.moveNext()) { - final cur = it.current; - final curValue = valueOf(cur); - if (curValue.compareTo(tempMax) > 0) { - tempMax = curValue; - tempE = cur; - } - } - return tempE; - } - return null; - } - - E maxBy>(T Function(E) valueOf) { - return maxByOrNull(valueOf)!; - } -} diff --git a/lib/utils/color.dart b/lib/utils/color.dart deleted file mode 100644 index 38cc83fd1..000000000 --- a/lib/utils/color.dart +++ /dev/null @@ -1,50 +0,0 @@ -import 'dart:math'; -import 'dart:ui'; -import 'package:collection/collection.dart'; -import 'package:flutter/cupertino.dart'; - -import 'package:flutter/foundation.dart' show defaultTargetPlatform; -import 'package:flutter/material.dart'; -import 'package:system_theme/system_theme.dart'; - -extension ColorX on Color { - Color monochrome({double progress = 1}) { - final gray = 0.21 * red + 0.71 * green + 0.07 * blue; - final iProgress = 1.0 - progress; - return Color.fromARGB( - alpha, - (red * iProgress + gray * progress).toInt(), - (green * iProgress + gray * progress).toInt(), - (blue * iProgress + gray * progress).toInt(), - ); - } - - double get luminance => (0.2126 * red + 0.7152 * green + 0.0722 * blue) / 255.0; - - double get brightness => (0.299 * red + 0.587 * green + 0.114 * blue) / 255.0; -} - -extension SystemAccentColorX on SystemAccentColor { - Color? get maybeAccent => supportsSystemAccentColor ? accent : null; -} - -bool get supportsSystemAccentColor => defaultTargetPlatform.supportsAccentColor; - -Color? findBestTextColor(Color bgColor, List textColors) { - // final sorted = textColors.sortedBy((textColor) => calculateContrastRatio(textColor, bgColor)); - final map = - Map.fromEntries(textColors.map((textColor) => MapEntry(calculateContrastRatio(textColor, bgColor), textColor))); - final sorted = map.entries.sortedBy((e) => e.key).toList(); - final res = sorted.lastOrNull?.value; - return res; -} - -double calculateContrastRatio(Color color1, Color color2) { - final luminance1 = color1.luminance; - final luminance2 = color2.luminance; - final contrast = (luminance1 + 0.05) / (luminance2 + 0.05); - if (contrast < 1) { - return 1 / contrast; - } - return contrast; -} diff --git a/lib/utils/cookies.dart b/lib/utils/cookies.dart deleted file mode 100644 index 7014e14d0..000000000 --- a/lib/utils/cookies.dart +++ /dev/null @@ -1,21 +0,0 @@ -import 'package:cookie_jar/cookie_jar.dart'; -import 'package:webview_flutter/webview_flutter.dart'; - -extension WebViewCookieJarX on CookieJar { - Future> loadAsWebViewCookie(Uri uri) async { - final cookies = await loadForRequest(uri); - return cookies.map((cookie) { - return cookie.toWebviewCooke(uri); - }).toList(); - } -} - -extension WebViewCookieX on Cookie { - WebViewCookie toWebviewCooke(Uri uri) { - return WebViewCookie( - name: name, - value: value, - domain: domain ?? uri.host, - ); - } -} diff --git a/lib/utils/date.dart b/lib/utils/date.dart deleted file mode 100644 index 693a4fc43..000000000 --- a/lib/utils/date.dart +++ /dev/null @@ -1,117 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:sit/lifecycle.dart'; - -bool isLeapYear(int year) { - if (year % 400 == 0) return true; - if (year % 4 == 0 && year % 100 != 0) return true; - return false; -} - -int daysInMonth({ - required int year, - required int month, -}) { - assert(1 <= month && month <= 12, "month must be in [1,12]"); - return switch (month) { - 1 => 31, - 2 => isLeapYear(year) ? 29 : 28, - 3 => 31, - 4 => 30, - 5 => 31, - 6 => 30, - 7 => 31, - 8 => 31, - 9 => 30, - 10 => 31, - 11 => 30, - 12 => 31, - _ => 30, - }; -} - -int daysInYear(int year) { - return isLeapYear(year) ? 366 : 365; -} - -List daysInEachMonth({ - required int year, -}) { - return [31, isLeapYear(year) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; -} - -int daysPastInYear({ - required int year, - required int month, - required int day, -}) { - var totalMonthLength = 0; - for (var count = 1; count < month; count++) { - totalMonthLength += daysInMonth(month: count, year: year); - } - return totalMonthLength + day; -} - -int getWeek({ - required int year, - required int month, - required int day, -}) { - double a = (daysPastInYear(year: year, month: month, day: day) / 7) + 1; - return a.toInt(); -} - -extension DateTimeX on DateTime { - int get week => getWeek(year: year, month: month, day: day); - - int get calendarOrderWeekday { - final w = weekday; - return w == DateTime.sunday ? 0 : w; - } - - bool inTheSameDay(DateTime b) { - return year == b.year && month == b.month && day == b.day; - } -} - -DateTime getDateOfFirstDayInWeek({ - required int year, - required int week, -}) { - final day = (week - 1) * 7; - return DateTime(year, 1, day); -} - -String formatDateSpan({ - required DateTime from, - required DateTime to, - bool showYear = true, -}) { - final local = $key.currentContext?.locale.toString(); - if (from.inTheSameDay(to)) { - final day = DateFormat.yMMMMd(local); - return day.format(from); - } - final year = DateFormat.y(local); - if (from.year == to.year) { - final month = DateFormat.MMMM(local); - if (from.month == to.month) { - final day = DateFormat.d(local); - return showYear - ? "${day.format(from)}–${day.format(to)} ${month.format(from)}, ${year.format(from)}" - : "${day.format(from)}–${day.format(to)} ${month.format(from)}"; - } else { - final monthDay = DateFormat.MMMMd(local); - return showYear - ? "${monthDay.format(from)}–${monthDay.format(to)}, ${year.format(from)}" - : "${monthDay.format(from)}–${monthDay.format(to)}"; - } - } else { - if (showYear) { - final yearMonthDay = DateFormat.yMMMMd(local); - return "${yearMonthDay.format(from)}–${yearMonthDay.format(to)}"; - } else { - final monthDay = DateFormat.MMMMd(local); - return "${monthDay.format(from)}–${monthDay.format(to)}"; - } - } -} diff --git a/lib/utils/dio.dart b/lib/utils/dio.dart deleted file mode 100644 index bd12e128e..000000000 --- a/lib/utils/dio.dart +++ /dev/null @@ -1,48 +0,0 @@ -import 'package:dio/dio.dart'; - -Options disableRedirectFormEncodedOptions({ - Map? headers, - ResponseType? responseType, -}) { - return Options( - headers: headers, - contentType: Headers.formUrlEncodedContentType, - followRedirects: false, - responseType: responseType, - validateStatus: (status) { - return status! < 400; - }, - ); -} - -Future processRedirect( - Dio dio, - Response response, { - Map? headers, - List? debugDepths, -}) async { - debugDepths?.add(response); - // Prevent the redirect being processed by HttpClient, with the 302 response caught manually. - if (response.statusCode == 302 && response.headers['location'] != null && response.headers['location']!.isNotEmpty) { - String location = response.headers['location']![0]; - if (location.isEmpty) return response; - if (!Uri.parse(location).isAbsolute) { - location = '${response.requestOptions.uri.origin}/$location'; - } - final redirectedResponse = await dio.get( - location, - options: disableRedirectFormEncodedOptions( - responseType: response.requestOptions.responseType, - headers: headers, - ), - ); - return processRedirect( - dio, - redirectedResponse, - headers: headers, - debugDepths: debugDepths, - ); - } else { - return response; - } -} diff --git a/lib/utils/error.dart b/lib/utils/error.dart deleted file mode 100644 index fc1f7830c..000000000 --- a/lib/utils/error.dart +++ /dev/null @@ -1,47 +0,0 @@ -import 'dart:async'; - -import 'package:dio/dio.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:sit/credentials/error.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/lifecycle.dart'; -import 'package:sit/login/i18n.dart'; - -void debugPrintError(Object? error, [StackTrace? stackTrace]) { - if (error == null) { - return; - } else if (error is DioException) { - debugPrint(error.toString()); - debugPrintStack(stackTrace: error.stackTrace, maxFrames: 10); - } else if (error is AsyncError) { - debugPrintError(error.error, error.stackTrace); - } else if (error is ParallelWaitError) { - final errors = error.errors; - if (errors is (AsyncError?, AsyncError?)) { - debugPrintError(errors.$1); - debugPrintError(errors.$2); - } else { - debugPrint(errors.toString()); - } - } else { - debugPrint(error.toString()); - debugPrintStack(stackTrace: stackTrace); - } -} - -const _i18n = CommonLoginI18n(); - -Future handleRequestError(Object? error, [StackTrace? stackTrace]) async { - debugPrintError(error, stackTrace); - final context = $key.currentContext; - if (error is CredentialsException) { - if (context == null || context.mounted) return; - await context.showTip( - serious: true, - title: _i18n.failedWarn, - desc: error.type.l10n(), - primary: _i18n.close, - ); - return; - } -} diff --git a/lib/utils/format.dart b/lib/utils/format.dart deleted file mode 100644 index a76c3f76c..000000000 --- a/lib/utils/format.dart +++ /dev/null @@ -1,66 +0,0 @@ -import 'package:collection/collection.dart'; - -String formatWithoutTrailingZeros( - double amount, { - int fractionDigits = 2, -}) { - if (amount == 0) return "0"; - final number = amount.toStringAsFixed(fractionDigits); - if (number.contains('.')) { - int index = number.length - 1; - while (index >= 0 && number[index] == '0') { - index--; - if (index >= 0 && number[index] == '.') { - index--; - break; - } - } - return number.substring(0, index + 1); - } - return number; -} - -final _trailingIntRe = RegExp(r"(.*\s+)(\d+)$"); - -String getDuplicateFileName(String origin, {List? all}) { - assert(all == null || all.contains(origin)); - final (name: originName, number: originNumber) = _extractTrailingNumber(origin); - if (originNumber != null && (all == null || all.length <= 1)) { - return "$originName${originNumber + 1}"; - } - if (all == null || all.length <= 1) return "$origin 2"; - final numbers = []; - for (final file in all) { - final (:name, :number) = _extractTrailingNumber(file); - if (number == null) continue; - if (file == origin || (originNumber == null && name == "$originName ") || name == originName) { - numbers.add(number); - } - } - final maxNumber = numbers.maxOrNull; - if (maxNumber == null) { - return "$origin 2"; - } - if (originNumber == null) { - return "$originName ${maxNumber + 1}"; - } else { - return "$originName${maxNumber + 1}"; - } -} - -({String name, int? number}) _extractTrailingNumber(String s) { - final matched = _trailingIntRe.firstMatch(s); - if (matched == null) return (name: s, number: null); - final prefix = matched.group(1); - final numberRaw = matched.group(2); - if (prefix == null || numberRaw == null) return (name: "", number: null); - final number = int.tryParse(numberRaw, radix: 10); - if (number == null) return (name: prefix, number: null); - return (name: prefix, number: number); -} - -String allocValidFileName(String name, {List? all}) { - if (all == null || all.isEmpty) return name; - if (!all.contains(name)) return name; - return getDuplicateFileName(name, all: all); -} diff --git a/lib/utils/guard_launch.dart b/lib/utils/guard_launch.dart deleted file mode 100644 index a574bf03b..000000000 --- a/lib/utils/guard_launch.dart +++ /dev/null @@ -1,39 +0,0 @@ -import 'package:flutter/foundation.dart'; -import 'package:flutter/widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/utils/error.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:url_launcher/url_launcher.dart'; - -Future guardLaunchUrl(BuildContext ctx, Uri url) async { - if (url.scheme == "http" || url.scheme == "https") { - try { - // guards the http(s) - if (kIsWeb || UniversalPlatform.isDesktop) { - return await launchUrl(url, mode: LaunchMode.externalApplication); - } - final target = Uri( - path: "/browser", - queryParameters: {"url": url.toString()}, - ).toString(); - ctx.push(target); - return true; - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - return false; - } - } - // not http(s) - try { - return await launchUrl(url); - } catch (error, stackTrace) { - debugPrintError(error, stackTrace); - return false; - } -} - -Future guardLaunchUrlString(BuildContext ctx, String url) async { - final uri = Uri.tryParse(url); - if (uri == null) return false; - return await guardLaunchUrl(ctx, uri); -} diff --git a/lib/utils/hive.dart b/lib/utils/hive.dart deleted file mode 100644 index f9de63ffc..000000000 --- a/lib/utils/hive.dart +++ /dev/null @@ -1,264 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:hive_flutter/hive_flutter.dart'; -import 'package:logger/logger.dart'; - -final _log = Logger( - printer: PrettyPrinter( - methodCount: 8, - // Number of method calls to be displayed - errorMethodCount: 8, - // Print an emoji for each log message - printTime: true, // Should each log print contain a timestamp - ), -); - -extension BoxX on Box { - T? safeGet(dynamic key, {T? defaultValue}) { - final value = get(key, defaultValue: defaultValue); - if (value == null) return null; - if (value is! T) { - _log.e("[Box $name] $key is in ${value.runtimeType} but $T is expected."); - return null; - } - return value; - } - - Future safePut(dynamic key, T? value) async { - await put(key, value); - } -} - -class BoxFieldNotifier extends StateNotifier { - final Listenable listenable; - final T? Function() get; - final FutureOr Function(T? v) set; - - BoxFieldNotifier(super._state, this.listenable, this.get, this.set) { - listenable.addListener(_refresh); - } - - void _refresh() { - state = get(); - } - - @override - void dispose() { - listenable.removeListener(_refresh); - super.dispose(); - } -} - -class BoxFieldWithDefaultNotifier extends StateNotifier { - final Listenable listenable; - final T? Function() get; - final T Function() getDefault; - final FutureOr Function(T? v) set; - - BoxFieldWithDefaultNotifier(super._state, this.listenable, this.get, this.set, this.getDefault) { - listenable.addListener(_refresh); - } - - void _refresh() { - state = get() ?? getDefault(); - } - - @override - void dispose() { - listenable.removeListener(_refresh); - super.dispose(); - } -} - -class BoxChangeNotifier extends ChangeNotifier { - final Listenable listenable; - - BoxChangeNotifier(this.listenable) { - listenable.addListener(_refresh); - } - - void _refresh() { - notifyListeners(); - } - - @override - void dispose() { - listenable.removeListener(_refresh); - super.dispose(); - } -} - -class BoxFieldExistsChangeNotifier extends StateNotifier { - final Listenable listenable; - final bool Function() getExists; - - BoxFieldExistsChangeNotifier(super._state, this.listenable, this.getExists) { - listenable.addListener(_refresh); - } - - void _refresh() { - state = getExists(); - } - - @override - void dispose() { - listenable.removeListener(_refresh); - super.dispose(); - } -} - -typedef BoxEventFilter = bool Function(BoxEvent event); - -class BoxChangeStreamNotifier extends ChangeNotifier { - final Stream stream; - final BoxEventFilter? filter; - late StreamSubscription _subscription; - - BoxChangeStreamNotifier(this.stream, this.filter) { - _subscription = (filter != null ? stream.where(filter!) : stream).listen((event) { - _refresh(); - }); - } - - void _refresh() { - notifyListeners(); - } - - @override - void dispose() { - _subscription.cancel(); - super.dispose(); - } -} - -class BoxFieldStreamNotifier extends StateNotifier { - final Stream boxStream; - final BoxEventFilter? filter; - late StreamSubscription _subscription; - - BoxFieldStreamNotifier(super._state, this.boxStream, this.filter) { - _subscription = (filter != null ? boxStream.where(filter!) : boxStream).listen((event) { - final v = event.value; - if (v is T?) { - state = v; - } - }); - } - - @override - void dispose() { - _subscription.cancel(); - super.dispose(); - } -} - -extension BoxProviderX on Box { - /// For generic class, like [List] or [Map], please specify the [get] for type conversion. - StateNotifierProvider, T?> provider( - dynamic key, { - T? Function()? get, - FutureOr Function(T? v)? set, - }) { - return StateNotifierProvider, T?>((ref) { - return BoxFieldNotifier( - get != null ? get.call() : safeGet(key), - listenable(keys: [key]), - () => get != null ? get.call() : safeGet(key), - (v) => set != null ? set.call(v) : safePut(key, v), - ); - }); - } - - /// For generic class, like [List] or [Map], please specify the [get] for type conversion. - StateNotifierProvider, T> providerWithDefault( - dynamic key, - T Function() getDefault, { - T? Function()? get, - FutureOr Function(T? v)? set, - }) { - return StateNotifierProvider, T>((ref) { - return BoxFieldWithDefaultNotifier( - get?.call() ?? safeGet(key) ?? getDefault(), - listenable(keys: [key]), - () => get != null ? get.call() : safeGet(key), - (v) => set != null ? set.call(v) : safePut(key, v), - getDefault, - ); - }); - } - - /// For generic class, like [List] or [Map], please specify the [get] for type conversion. - StateNotifierProviderFamily, T?, Arg> providerFamily( - dynamic Function(Arg arg) keyOf, { - T? Function(Arg arg)? get, - FutureOr Function(Arg arg, T? v)? set, - }) { - return StateNotifierProvider.family, T?, Arg>((ref, arg) { - return BoxFieldNotifier( - get != null ? get.call(arg) : safeGet(arg), - listenable(keys: [keyOf(arg)]), - () => get != null ? get.call(arg) : safeGet(arg), - (v) => set != null ? set.call(arg, v) : safePut(arg, v), - ); - }); - } - - ChangeNotifierProvider changeProvider( - List keys, - ) { - return ChangeNotifierProvider((ref) { - return BoxChangeNotifier(listenable(keys: keys)); - }); - } - - StateNotifierProvider existsChangeProvider( - dynamic key, - ) { - return StateNotifierProvider((ref) { - return BoxFieldExistsChangeNotifier( - containsKey(key), - listenable(keys: [key]), - () => containsKey(key), - ); - }); - } - - StateNotifierProviderFamily existsChangeProviderFamily( - dynamic Function(Arg arg) keyOf, - ) { - return StateNotifierProvider.family((ref, arg) { - return BoxFieldExistsChangeNotifier( - containsKey(keyOf(arg)), - listenable(keys: [keyOf(arg)]), - () => containsKey(keyOf(arg)), - ); - }); - } - - ChangeNotifierProvider streamChangeProvider({ - BoxEventFilter? filter, - }) { - return ChangeNotifierProvider((ref) { - return BoxChangeStreamNotifier(watch(), filter); - }); - } - - StateNotifierProvider, T?> streamProvider({ - required T? Function() initial, - BoxEventFilter? filter, - }) { - return StateNotifierProvider, T?>((ref) { - return BoxFieldStreamNotifier(initial(), watch(), filter); - }); - } - - ChangeNotifierProviderFamily streamChangeProviderFamily( - bool Function(BoxEvent event, Arg arg) argFilter, - ) { - return ChangeNotifierProvider.family((ref, arg) { - return BoxChangeStreamNotifier(watch(), (event) => argFilter(event, arg)); - }); - } -} diff --git a/lib/utils/ical.dart b/lib/utils/ical.dart deleted file mode 100644 index 40918abc3..000000000 --- a/lib/utils/ical.dart +++ /dev/null @@ -1,83 +0,0 @@ -import 'package:enough_icalendar/enough_icalendar.dart'; - -class ICal { - final VCalendar _root; - - ICal({ - required String company, - required String product, - required String lang, - }) : _root = VCalendar() - ..productId = "$company//$product//$lang" - ..version = "2.0"; - - IEvent addEvent({ - required String uid, - required DateTime start, - DateTime? end, - String? summary, - String? description, - String? comment, - String? location, - GeoLocation? geoLocation, - bool? allDayEvent, - }) { - final event = VEvent(parent: _root); - event - ..start = start - ..end = end - ..description = description - ..location = location - ..geoLocation = geoLocation - ..isAllDayEvent = allDayEvent - ..summary = summary - ..uid = uid; - _root.children.add(event); - return IEvent(event); - } - - String build() { - return _root.toString(); - } -} - -class IEvent { - final VEvent _event; - - const IEvent(this._event); - - VAlarm addAlarmAudio({ - required DateTime triggerDate, - ({int repeat, Duration duration})? repeating, - }) { - final alarm = VAlarm(parent: _event); - alarm - ..triggerDate = triggerDate - ..action = AlarmAction.audio; - if (repeating != null) { - alarm - ..repeat = repeating.repeat - ..duration = repeating.duration.toIso(); - } - _event.children.add(alarm); - return alarm; - } - - void addAlarmDisplay({ - required DateTime triggerDate, - required String description, - ({int repeat, Duration duration})? repeating, - }) { - final alarm = VAlarm(parent: _event); - alarm - ..triggerDate = triggerDate - ..action = AlarmAction.display - ..description = description; - if (repeating != null) { - alarm - ..repeat = repeating.repeat - ..duration = repeating.duration.toIso(); - } - _event.children.add(alarm); - } -} diff --git a/lib/utils/iconfont.dart b/lib/utils/iconfont.dart deleted file mode 100644 index a43f16edb..000000000 --- a/lib/utils/iconfont.dart +++ /dev/null @@ -1,773 +0,0 @@ -import 'package:flutter/widgets.dart'; - -class IconFont { - static const String _family = 'ywb_iconfont'; - static const String _defaultIconKey = 'icon-Customermanagement-fill'; - - static final Map _iconMapping = { - 'icon-biaodanzujian-biaoge': const IconData(0xeb96, fontFamily: _family), - 'icon-rmb': const IconData(0xe705, fontFamily: _family), - 'icon-company-fill': const IconData(0xe835, fontFamily: _family), - 'icon-biaodanzujian-xialakuang': const IconData(0xeb97, fontFamily: _family), - 'icon-similar-product': const IconData(0xe707, fontFamily: _family), - 'icon-discount-fill': const IconData(0xe836, fontFamily: _family), - 'icon-tubiao-bingtu': const IconData(0xeb98, fontFamily: _family), - 'icon-Exportservices': const IconData(0xe702, fontFamily: _family), - 'icon-insurance-fill': const IconData(0xe837, fontFamily: _family), - 'icon-biaodanzujian-anniu': const IconData(0xeb99, fontFamily: _family), - 'icon-sendinquiry': const IconData(0xe70d, fontFamily: _family), - 'icon-inquiry-template-fill': const IconData(0xe838, fontFamily: _family), - 'icon-gongyezujian-yibiaopan': const IconData(0xeb9a, fontFamily: _family), - 'icon-all-fill': const IconData(0xe718, fontFamily: _family), - 'icon-leftbutton-fill': const IconData(0xe839, fontFamily: _family), - 'icon-tubiao-qiapian': const IconData(0xeb9b, fontFamily: _family), - 'icon-favorites-fill': const IconData(0xe721, fontFamily: _family), - 'icon-integral-fill1': const IconData(0xe83a, fontFamily: _family), - 'icon-gongyezujian-zhishideng': const IconData(0xeb9c, fontFamily: _family), - 'icon-integral-fill': const IconData(0xe726, fontFamily: _family), - 'icon-help1': const IconData(0xe83b, fontFamily: _family), - 'icon-tubiao-zhexiantu': const IconData(0xeb9d, fontFamily: _family), - 'icon-namecard-fill': const IconData(0xe72a, fontFamily: _family), - 'icon-listing-content-fill': const IconData(0xe83c, fontFamily: _family), - 'icon-xingzhuang-juxing': const IconData(0xeb9e, fontFamily: _family), - 'icon-pic-fill': const IconData(0xe72e, fontFamily: _family), - 'icon-logistic-logo-fill': const IconData(0xe83d, fontFamily: _family), - 'icon-xingzhuang-jianxing': const IconData(0xeb9f, fontFamily: _family), - 'icon-play-fill': const IconData(0xe72f, fontFamily: _family), - 'icon-Moneymanagement-fill': const IconData(0xe83e, fontFamily: _family), - 'icon-gongyezujian-kaiguan': const IconData(0xeba0, fontFamily: _family), - 'icon-prompt-fill': const IconData(0xe730, fontFamily: _family), - 'icon-manage-order-fill': const IconData(0xe83f, fontFamily: _family), - 'icon-tubiao-zhuzhuangtu': const IconData(0xeba1, fontFamily: _family), - 'icon-stop-fill': const IconData(0xe738, fontFamily: _family), - 'icon-multi-language-fill': const IconData(0xe840, fontFamily: _family), - 'icon-xingzhuang-tupian': const IconData(0xeba2, fontFamily: _family), - 'icon-column': const IconData(0xe741, fontFamily: _family), - 'icon-logistics-icon-fill': const IconData(0xe841, fontFamily: _family), - 'icon-xingzhuang-wenzi': const IconData(0xeba3, fontFamily: _family), - 'icon-add-account': const IconData(0xe742, fontFamily: _family), - 'icon-Newuserzone-fill': const IconData(0xe842, fontFamily: _family), - 'icon-xingzhuang-tuoyuanxing': const IconData(0xeba4, fontFamily: _family), - 'icon-column1': const IconData(0xe743, fontFamily: _family), - 'icon-nightmode-fill': const IconData(0xe843, fontFamily: _family), - 'icon-xingzhuang-sanjiaoxing': const IconData(0xeba5, fontFamily: _family), - 'icon-add': const IconData(0xe744, fontFamily: _family), - 'icon-office-supplies-fill': const IconData(0xe844, fontFamily: _family), - 'icon-xingzhuang-xingxing': const IconData(0xeba6, fontFamily: _family), - 'icon-agriculture': const IconData(0xe745, fontFamily: _family), - 'icon-notice-fill': const IconData(0xe845, fontFamily: _family), - 'icon-guize': const IconData(0xebb7, fontFamily: _family), - 'icon-years': const IconData(0xe746, fontFamily: _family), - 'icon-mute': const IconData(0xe846, fontFamily: _family), - 'icon-shebeiguanli': const IconData(0xebb8, fontFamily: _family), - 'icon-add-cart': const IconData(0xe747, fontFamily: _family), - 'icon-order-fill': const IconData(0xe847, fontFamily: _family), - 'icon-gongnengdingyi1': const IconData(0xebb9, fontFamily: _family), - 'icon-arrow-right': const IconData(0xe748, fontFamily: _family), - 'icon-password1': const IconData(0xe848, fontFamily: _family), - 'icon-jishufuwu1': const IconData(0xebce, fontFamily: _family), - 'icon-arrow-left': const IconData(0xe749, fontFamily: _family), - 'icon-map1': const IconData(0xe849, fontFamily: _family), - 'icon-yunyingzhongxin': const IconData(0xebd0, fontFamily: _family), - 'icon-apparel': const IconData(0xe74a, fontFamily: _family), - 'icon-paylater-fill': const IconData(0xe84a, fontFamily: _family), - 'icon-yunyingguanli': const IconData(0xebd1, fontFamily: _family), - 'icon-all1': const IconData(0xe74b, fontFamily: _family), - 'icon-phone-fill': const IconData(0xe84b, fontFamily: _family), - 'icon-zuzhixiaxia': const IconData(0xebd8, fontFamily: _family), - 'icon-arrow-up': const IconData(0xe74c, fontFamily: _family), - 'icon-online-tracking-fill': const IconData(0xe84c, fontFamily: _family), - 'icon-zuzhizhankai': const IconData(0xebd9, fontFamily: _family), - 'icon-ascending': const IconData(0xe74d, fontFamily: _family), - 'icon-play-fill1': const IconData(0xe84d, fontFamily: _family), - 'icon-zuzhiqunzu': const IconData(0xebda, fontFamily: _family), - 'icon-ashbin': const IconData(0xe74e, fontFamily: _family), - 'icon-pdf-fill': const IconData(0xe84e, fontFamily: _family), - 'icon-dakai': const IconData(0xebdf, fontFamily: _family), - 'icon-atm': const IconData(0xe74f, fontFamily: _family), - 'icon-phone1': const IconData(0xe84f, fontFamily: _family), - 'icon-yingwen': const IconData(0xebe0, fontFamily: _family), - 'icon-bad': const IconData(0xe750, fontFamily: _family), - 'icon-pin-fill': const IconData(0xe850, fontFamily: _family), - 'icon-zhongwen': const IconData(0xebe2, fontFamily: _family), - 'icon-attachent': const IconData(0xe751, fontFamily: _family), - 'icon-product-fill': const IconData(0xe851, fontFamily: _family), - 'icon-miwen': const IconData(0xebe3, fontFamily: _family), - 'icon-browse': const IconData(0xe752, fontFamily: _family), - 'icon-rankinglist-fill': const IconData(0xe852, fontFamily: _family), - 'icon-xianhao': const IconData(0xebe4, fontFamily: _family), - 'icon-beauty': const IconData(0xe753, fontFamily: _family), - 'icon-reduce-fill': const IconData(0xe853, fontFamily: _family), - 'icon-kongxinduigou': const IconData(0xebe5, fontFamily: _family), - 'icon-atm-away': const IconData(0xe754, fontFamily: _family), - 'icon-reeor-fill': const IconData(0xe854, fontFamily: _family), - 'icon-huixingzhen': const IconData(0xebe6, fontFamily: _family), - 'icon-assessed-badge': const IconData(0xe755, fontFamily: _family), - 'icon-pic-fill1': const IconData(0xe855, fontFamily: _family), - 'icon-duigou': const IconData(0xebe7, fontFamily: _family), - 'icon-auto1': const IconData(0xe756, fontFamily: _family), - 'icon-rankinglist': const IconData(0xe856, fontFamily: _family), - 'icon-xiayibu': const IconData(0xebef, fontFamily: _family), - 'icon-bags': const IconData(0xe757, fontFamily: _family), - 'icon-product1': const IconData(0xe857, fontFamily: _family), - 'icon-shangyibu': const IconData(0xebf0, fontFamily: _family), - 'icon-calendar': const IconData(0xe758, fontFamily: _family), - 'icon-prompt-fill1': const IconData(0xe858, fontFamily: _family), - 'icon-kongjianxuanzhong': const IconData(0xebf1, fontFamily: _family), - 'icon-cart-full': const IconData(0xe759, fontFamily: _family), - 'icon-resonserate-fill': const IconData(0xe859, fontFamily: _family), - 'icon-kongjianweixuan': const IconData(0xebf2, fontFamily: _family), - 'icon-calculator': const IconData(0xe75a, fontFamily: _family), - 'icon-remind-fill': const IconData(0xe85a, fontFamily: _family), - 'icon-kongjianyixuan': const IconData(0xebf3, fontFamily: _family), - 'icon-cameraswitching': const IconData(0xe75b, fontFamily: _family), - 'icon-Rightbutton-fill': const IconData(0xe85b, fontFamily: _family), - 'icon--diangan': const IconData(0xebfb, fontFamily: _family), - 'icon-cecurity-protection': const IconData(0xe75c, fontFamily: _family), - 'icon-RFQ-logo-fill': const IconData(0xe85c, fontFamily: _family), - 'icon-rongxuejirongjiechi': const IconData(0xebfc, fontFamily: _family), - 'icon-category': const IconData(0xe75d, fontFamily: _family), - 'icon-RFQ-word-fill': const IconData(0xe85d, fontFamily: _family), - 'icon-lubiantingchechang': const IconData(0xebfd, fontFamily: _family), - 'icon-close': const IconData(0xe75e, fontFamily: _family), - 'icon-searchcart-fill': const IconData(0xe85e, fontFamily: _family), - 'icon--lumingpai': const IconData(0xebfe, fontFamily: _family), - 'icon-certified-supplier': const IconData(0xe75f, fontFamily: _family), - 'icon-salescenter-fill': const IconData(0xe85f, fontFamily: _family), - 'icon-jietouzuoyi': const IconData(0xebff, fontFamily: _family), - 'icon-cart-Empty': const IconData(0xe760, fontFamily: _family), - 'icon-save-fill': const IconData(0xe860, fontFamily: _family), - 'icon--zhongdaweixian': const IconData(0xec00, fontFamily: _family), - 'icon-code1': const IconData(0xe761, fontFamily: _family), - 'icon-security-fill': const IconData(0xe861, fontFamily: _family), - 'icon--jiaotongbiaozhipai': const IconData(0xec01, fontFamily: _family), - 'icon-color': const IconData(0xe762, fontFamily: _family), - 'icon-Similarproducts-fill': const IconData(0xe862, fontFamily: _family), - 'icon-gongcezhishipai': const IconData(0xec02, fontFamily: _family), - 'icon-conditions': const IconData(0xe763, fontFamily: _family), - 'icon-signboard-fill': const IconData(0xe863, fontFamily: _family), - 'icon-fangkuai': const IconData(0xec06, fontFamily: _family), - 'icon-confirm': const IconData(0xe764, fontFamily: _family), - 'icon-service-fill': const IconData(0xe864, fontFamily: _family), - 'icon-fangkuai-': const IconData(0xec07, fontFamily: _family), - 'icon-company': const IconData(0xe765, fontFamily: _family), - 'icon-shuffling-banner-fill': const IconData(0xe865, fontFamily: _family), - 'icon-shuaxin': const IconData(0xec08, fontFamily: _family), - 'icon-ali-clould': const IconData(0xe766, fontFamily: _family), - 'icon-supplier-features-fill': const IconData(0xe866, fontFamily: _family), - 'icon-baocun': const IconData(0xec09, fontFamily: _family), - 'icon-copy1': const IconData(0xe767, fontFamily: _family), - 'icon-store-fill': const IconData(0xe867, fontFamily: _family), - 'icon-fabu': const IconData(0xec0a, fontFamily: _family), - 'icon-credit-level': const IconData(0xe768, fontFamily: _family), - 'icon-smile-fill': const IconData(0xe868, fontFamily: _family), - 'icon-xiayibu1': const IconData(0xec0b, fontFamily: _family), - 'icon-coupons': const IconData(0xe769, fontFamily: _family), - 'icon-success-fill': const IconData(0xe869, fontFamily: _family), - 'icon-shangyibu1': const IconData(0xec0c, fontFamily: _family), - 'icon-connections': const IconData(0xe76a, fontFamily: _family), - 'icon-sound-filling-fill': const IconData(0xe86a, fontFamily: _family), - 'icon-xiangxiazhanhang': const IconData(0xec0d, fontFamily: _family), - 'icon-cry': const IconData(0xe76b, fontFamily: _family), - 'icon-sound-Mute1': const IconData(0xe86b, fontFamily: _family), - 'icon-xiangshangzhanhang': const IconData(0xec0e, fontFamily: _family), - 'icon-costoms-alearance': const IconData(0xe76c, fontFamily: _family), - 'icon-suspended-fill': const IconData(0xe86c, fontFamily: _family), - 'icon-tupianjiazaishibai': const IconData(0xec0f, fontFamily: _family), - 'icon-clock': const IconData(0xe76d, fontFamily: _family), - 'icon-tool-fill': const IconData(0xe86d, fontFamily: _family), - 'icon-fuwudiqiu': const IconData(0xec10, fontFamily: _family), - 'icon-CurrencyConverter': const IconData(0xe76e, fontFamily: _family), - 'icon-task-management-fill': const IconData(0xe86e, fontFamily: _family), - 'icon-suoxiao': const IconData(0xec13, fontFamily: _family), - 'icon-cut': const IconData(0xe76f, fontFamily: _family), - 'icon-unlock-fill': const IconData(0xe86f, fontFamily: _family), - 'icon-fangda': const IconData(0xec14, fontFamily: _family), - 'icon-data1': const IconData(0xe770, fontFamily: _family), - 'icon-trust-fill': const IconData(0xe870, fontFamily: _family), - 'icon-huanyuanhuabu': const IconData(0xec15, fontFamily: _family), - 'icon-Customermanagement': const IconData(0xe771, fontFamily: _family), - 'icon-vip-fill': const IconData(0xe871, fontFamily: _family), - 'icon-quanping': const IconData(0xec16, fontFamily: _family), - 'icon-descending': const IconData(0xe772, fontFamily: _family), - 'icon-set1': const IconData(0xe872, fontFamily: _family), - 'icon-biaodanzujian-biaoge1': const IconData(0xec17, fontFamily: _family), - 'icon-double-arro-right': const IconData(0xe773, fontFamily: _family), - 'icon-Top-fill': const IconData(0xe873, fontFamily: _family), - 'icon-APIshuchu': const IconData(0xec18, fontFamily: _family), - 'icon-customization': const IconData(0xe774, fontFamily: _family), - 'icon-viewlarger1': const IconData(0xe874, fontFamily: _family), - 'icon-APIjieru': const IconData(0xec19, fontFamily: _family), - 'icon-double-arrow-left': const IconData(0xe775, fontFamily: _family), - 'icon-voice-fill': const IconData(0xe875, fontFamily: _family), - 'icon-wenjianjia': const IconData(0xec1a, fontFamily: _family), - 'icon-discount': const IconData(0xe776, fontFamily: _family), - 'icon-warning-fill': const IconData(0xe876, fontFamily: _family), - 'icon-DOC': const IconData(0xec1b, fontFamily: _family), - 'icon-download': const IconData(0xe777, fontFamily: _family), - 'icon-warehouse-fill': const IconData(0xe877, fontFamily: _family), - 'icon-BMP': const IconData(0xec1c, fontFamily: _family), - 'icon-dollar1': const IconData(0xe778, fontFamily: _family), - 'icon-zip-fill': const IconData(0xe878, fontFamily: _family), - 'icon-GIF': const IconData(0xec1d, fontFamily: _family), - 'icon-default-template': const IconData(0xe779, fontFamily: _family), - 'icon-trade-assurance-fill': const IconData(0xe879, fontFamily: _family), - 'icon-JPG': const IconData(0xec1e, fontFamily: _family), - 'icon-editor1': const IconData(0xe77a, fontFamily: _family), - 'icon-vs-fill': const IconData(0xe87a, fontFamily: _family), - 'icon-PNG': const IconData(0xec1f, fontFamily: _family), - 'icon-eletrical': const IconData(0xe77b, fontFamily: _family), - 'icon-video1': const IconData(0xe87b, fontFamily: _family), - 'icon-weizhigeshi': const IconData(0xec20, fontFamily: _family), - 'icon-electronics': const IconData(0xe77c, fontFamily: _family), - 'icon-template-fill': const IconData(0xe87c, fontFamily: _family), - 'icon-gengduo': const IconData(0xec21, fontFamily: _family), - 'icon-etrical-equipm': const IconData(0xe77d, fontFamily: _family), - 'icon-wallet1': const IconData(0xe87d, fontFamily: _family), - 'icon-yunduanxiazai': const IconData(0xec22, fontFamily: _family), - 'icon-ellipsis': const IconData(0xe77e, fontFamily: _family), - 'icon-training1': const IconData(0xe87e, fontFamily: _family), - 'icon-yunduanshangchuan': const IconData(0xec23, fontFamily: _family), - 'icon-email': const IconData(0xe77f, fontFamily: _family), - 'icon-packing-labeling-fill': const IconData(0xe87f, fontFamily: _family), - 'icon-dian': const IconData(0xec24, fontFamily: _family), - 'icon-falling': const IconData(0xe780, fontFamily: _family), - 'icon-Exportservices-fill': const IconData(0xe880, fontFamily: _family), - 'icon-mian': const IconData(0xec25, fontFamily: _family), - 'icon-earth': const IconData(0xe781, fontFamily: _family), - 'icon-brand-fill': const IconData(0xe881, fontFamily: _family), - 'icon-xian': const IconData(0xec26, fontFamily: _family), - 'icon-filter': const IconData(0xe782, fontFamily: _family), - 'icon-collection': const IconData(0xe882, fontFamily: _family), - 'icon-shebeizhuangtai': const IconData(0xec27, fontFamily: _family), - 'icon-furniture': const IconData(0xe783, fontFamily: _family), - 'icon-consumption-fill': const IconData(0xe883, fontFamily: _family), - 'icon-fenzuguanli': const IconData(0xec28, fontFamily: _family), - 'icon-folder': const IconData(0xe784, fontFamily: _family), - 'icon-collection-fill': const IconData(0xe884, fontFamily: _family), - 'icon-kuaisubianpai': const IconData(0xec29, fontFamily: _family), - 'icon-feeds': const IconData(0xe785, fontFamily: _family), - 'icon-brand': const IconData(0xe885, fontFamily: _family), - 'icon-APPkaifa': const IconData(0xec2a, fontFamily: _family), - 'icon-history1': const IconData(0xe786, fontFamily: _family), - 'icon-rejected-order-fill': const IconData(0xe886, fontFamily: _family), - 'icon-wentijieda': const IconData(0xec2e, fontFamily: _family), - 'icon-hardware': const IconData(0xe787, fontFamily: _family), - 'icon-homepage-ads-fill': const IconData(0xe887, fontFamily: _family), - 'icon-kefu': const IconData(0xec2f, fontFamily: _family), - 'icon-help': const IconData(0xe788, fontFamily: _family), - 'icon-homepage-ads': const IconData(0xe888, fontFamily: _family), - 'icon-ruanjiankaifabao': const IconData(0xec30, fontFamily: _family), - 'icon-good': const IconData(0xe789, fontFamily: _family), - 'icon-scenes-fill': const IconData(0xe889, fontFamily: _family), - 'icon-sousuobianxiao': const IconData(0xec32, fontFamily: _family), - 'icon-Householdappliances': const IconData(0xe78a, fontFamily: _family), - 'icon-scenes': const IconData(0xe88a, fontFamily: _family), - 'icon-sousuofangda': const IconData(0xec33, fontFamily: _family), - 'icon-gift1': const IconData(0xe78b, fontFamily: _family), - 'icon-similar-product-fill': const IconData(0xe88b, fontFamily: _family), - 'icon-dingwei': const IconData(0xec34, fontFamily: _family), - 'icon-form': const IconData(0xe78c, fontFamily: _family), - 'icon-topraning-fill': const IconData(0xe88c, fontFamily: _family), - 'icon-wumoxing': const IconData(0xec35, fontFamily: _family), - 'icon-image-text': const IconData(0xe78d, fontFamily: _family), - 'icon-consumption': const IconData(0xe88d, fontFamily: _family), - 'icon-gaojing': const IconData(0xec36, fontFamily: _family), - 'icon-hot': const IconData(0xe78e, fontFamily: _family), - 'icon-topraning': const IconData(0xe88e, fontFamily: _family), - 'icon-renwujincheng': const IconData(0xec37, fontFamily: _family), - 'icon-inspection': const IconData(0xe78f, fontFamily: _family), - 'icon-gold-supplier': const IconData(0xe88f, fontFamily: _family), - 'icon-xiaoxitongzhi': const IconData(0xec38, fontFamily: _family), - 'icon-leftbutton': const IconData(0xe790, fontFamily: _family), - 'icon-messagecenter-fill': const IconData(0xe890, fontFamily: _family), - 'icon-youhui': const IconData(0xec39, fontFamily: _family), - 'icon-jewelry': const IconData(0xe791, fontFamily: _family), - 'icon-quick': const IconData(0xe891, fontFamily: _family), - 'icon-gaojing1': const IconData(0xec3a, fontFamily: _family), - 'icon-ipad': const IconData(0xe792, fontFamily: _family), - 'icon-writing': const IconData(0xe892, fontFamily: _family), - 'icon-zhihangfankui': const IconData(0xec3b, fontFamily: _family), - 'icon-leftarrow': const IconData(0xe793, fontFamily: _family), - 'icon-docjpge-fill': const IconData(0xe893, fontFamily: _family), - 'icon-gongdanqueren': const IconData(0xec3c, fontFamily: _family), - 'icon-integral1': const IconData(0xe794, fontFamily: _family), - 'icon-jpge-fill': const IconData(0xe894, fontFamily: _family), - 'icon-guangbo': const IconData(0xec3d, fontFamily: _family), - 'icon-kitchen': const IconData(0xe795, fontFamily: _family), - 'icon-gifjpge-fill': const IconData(0xe895, fontFamily: _family), - 'icon-gongdan': const IconData(0xec3e, fontFamily: _family), - 'icon-inquiry-template': const IconData(0xe796, fontFamily: _family), - 'icon-bmpjpge-fill': const IconData(0xe896, fontFamily: _family), - 'icon-xiaoxi': const IconData(0xec3f, fontFamily: _family), - 'icon-link': const IconData(0xe797, fontFamily: _family), - 'icon-tifjpge-fill': const IconData(0xe897, fontFamily: _family), - 'icon-ditu-qi': const IconData(0xec40, fontFamily: _family), - 'icon-libra': const IconData(0xe798, fontFamily: _family), - 'icon-pngjpge-fill': const IconData(0xe898, fontFamily: _family), - 'icon-ditu-dibiao': const IconData(0xec41, fontFamily: _family), - 'icon-loading': const IconData(0xe799, fontFamily: _family), - 'icon-Hometextile': const IconData(0xe899, fontFamily: _family), - 'icon-ditu-cha': const IconData(0xec42, fontFamily: _family), - 'icon-listing-content': const IconData(0xe79a, fontFamily: _family), - 'icon-home': const IconData(0xe89a, fontFamily: _family), - 'icon-ditu-qipao': const IconData(0xec43, fontFamily: _family), - 'icon-lights': const IconData(0xe79b, fontFamily: _family), - 'icon-sendinquiry-fill': const IconData(0xe89b, fontFamily: _family), - 'icon-ditu-tuding': const IconData(0xec44, fontFamily: _family), - 'icon-logistics-icon': const IconData(0xe79c, fontFamily: _family), - 'icon-comments-fill': const IconData(0xe89c, fontFamily: _family), - 'icon-ditu-huan': const IconData(0xec45, fontFamily: _family), - 'icon-messagecenter': const IconData(0xe79d, fontFamily: _family), - 'icon-account-fill': const IconData(0xe89d, fontFamily: _family), - 'icon-ditu-xing': const IconData(0xec46, fontFamily: _family), - 'icon-mobile-phone': const IconData(0xe79e, fontFamily: _family), - 'icon-feed-logo-fill': const IconData(0xe89e, fontFamily: _family), - 'icon-ditu-yuan': const IconData(0xec47, fontFamily: _family), - 'icon-manage-order': const IconData(0xe79f, fontFamily: _family), - 'icon-feed-logo': const IconData(0xe89f, fontFamily: _family), - 'icon-chehuisekuai': const IconData(0xec48, fontFamily: _family), - 'icon-move': const IconData(0xe7a0, fontFamily: _family), - 'icon-home-fill': const IconData(0xe8a0, fontFamily: _family), - 'icon-shanchusekuai': const IconData(0xec49, fontFamily: _family), - 'icon-Moneymanagement': const IconData(0xe7a1, fontFamily: _family), - 'icon-add-select': const IconData(0xe8a1, fontFamily: _family), - 'icon-fabusekuai': const IconData(0xec4a, fontFamily: _family), - 'icon-namecard': const IconData(0xe7a2, fontFamily: _family), - 'icon-sami-select': const IconData(0xe8a2, fontFamily: _family), - 'icon-xinhao': const IconData(0xec4b, fontFamily: _family), - 'icon-map': const IconData(0xe7a3, fontFamily: _family), - 'icon-camera': const IconData(0xe8a3, fontFamily: _family), - 'icon-lanya': const IconData(0xec4c, fontFamily: _family), - 'icon-Newuserzone': const IconData(0xe7a4, fontFamily: _family), - 'icon-arrow-down': const IconData(0xe8a4, fontFamily: _family), - 'icon-Wi-Fi': const IconData(0xec4d, fontFamily: _family), - 'icon-multi-language': const IconData(0xe7a5, fontFamily: _family), - 'icon-account': const IconData(0xe8a5, fontFamily: _family), - 'icon-chaxun': const IconData(0xec4e, fontFamily: _family), - 'icon-office': const IconData(0xe7a6, fontFamily: _family), - 'icon-comments': const IconData(0xe8a6, fontFamily: _family), - 'icon-dianbiao': const IconData(0xec4f, fontFamily: _family), - 'icon-notice': const IconData(0xe7a7, fontFamily: _family), - 'icon-cart-Empty1': const IconData(0xe8a7, fontFamily: _family), - 'icon-anquan': const IconData(0xec50, fontFamily: _family), - 'icon-ontimeshipment': const IconData(0xe7a8, fontFamily: _family), - 'icon-favorites': const IconData(0xe8a8, fontFamily: _family), - 'icon-daibanshixiang': const IconData(0xec51, fontFamily: _family), - 'icon-office-supplies': const IconData(0xe7a9, fontFamily: _family), - 'icon-order': const IconData(0xe8a9, fontFamily: _family), - 'icon-bingxiang': const IconData(0xec52, fontFamily: _family), - 'icon-password': const IconData(0xe7aa, fontFamily: _family), - 'icon-search': const IconData(0xe8aa, fontFamily: _family), - 'icon-fanshe': const IconData(0xec53, fontFamily: _family), - 'icon-Notvisible1': const IconData(0xe7ab, fontFamily: _family), - 'icon-trade-assurance': const IconData(0xe8ab, fontFamily: _family), - 'icon-fengche': const IconData(0xec54, fontFamily: _family), - 'icon-operation': const IconData(0xe7ac, fontFamily: _family), - 'icon-usercenter1': const IconData(0xe8ac, fontFamily: _family), - 'icon-guandao': const IconData(0xec55, fontFamily: _family), - 'icon-packaging': const IconData(0xe7ad, fontFamily: _family), - 'icon-tradingdata': const IconData(0xe8ad, fontFamily: _family), - 'icon-guize1': const IconData(0xec56, fontFamily: _family), - 'icon-online-tracking': const IconData(0xe7ae, fontFamily: _family), - 'icon-microphone': const IconData(0xe8ae, fontFamily: _family), - 'icon-guizeyinqing': const IconData(0xec57, fontFamily: _family), - 'icon-packing-labeling': const IconData(0xe7af, fontFamily: _family), - 'icon-txt': const IconData(0xe8af, fontFamily: _family), - 'icon-huowudui': const IconData(0xec58, fontFamily: _family), - 'icon-phone': const IconData(0xe7b0, fontFamily: _family), - 'icon-xlsx': const IconData(0xe8b0, fontFamily: _family), - 'icon-jianceqi': const IconData(0xec59, fontFamily: _family), - 'icon-pic1': const IconData(0xe7b1, fontFamily: _family), - 'icon-banzhengfuwu': const IconData(0xe8b1, fontFamily: _family), - 'icon-jinggai': const IconData(0xec5a, fontFamily: _family), - 'icon-pin': const IconData(0xe7b2, fontFamily: _family), - 'icon-cangku': const IconData(0xe8b2, fontFamily: _family), - 'icon-liujisuan': const IconData(0xec5b, fontFamily: _family), - 'icon-play1': const IconData(0xe7b3, fontFamily: _family), - 'icon-daibancaishui': const IconData(0xe8b3, fontFamily: _family), - 'icon-hanshu': const IconData(0xec5c, fontFamily: _family), - 'icon-logistic-logo': const IconData(0xe7b4, fontFamily: _family), - 'icon-jizhuangxiang': const IconData(0xe8b4, fontFamily: _family), - 'icon-lianjieliu': const IconData(0xec5d, fontFamily: _family), - 'icon-print': const IconData(0xe7b5, fontFamily: _family), - 'icon-jiaobiao': const IconData(0xe8b5, fontFamily: _family), - 'icon-ludeng': const IconData(0xec5e, fontFamily: _family), - 'icon-product': const IconData(0xe7b6, fontFamily: _family), - 'icon-kehupandian': const IconData(0xe8b6, fontFamily: _family), - 'icon-shexiangji': const IconData(0xec5f, fontFamily: _family), - 'icon-machinery': const IconData(0xe7b7, fontFamily: _family), - 'icon-dongtai': const IconData(0xe8b7, fontFamily: _family), - 'icon-rentijiance': const IconData(0xec60, fontFamily: _family), - 'icon-process': const IconData(0xe7b8, fontFamily: _family), - 'icon-daikuan': const IconData(0xe8b8, fontFamily: _family), - 'icon-moshubang': const IconData(0xec61, fontFamily: _family), - 'icon-prompt': const IconData(0xe7b9, fontFamily: _family), - 'icon-shengyijing': const IconData(0xe8b9, fontFamily: _family), - 'icon-shujuwajue': const IconData(0xec62, fontFamily: _family), - 'icon-QRcode1': const IconData(0xe7ba, fontFamily: _family), - 'icon-jiehui': const IconData(0xe8ba, fontFamily: _family), - 'icon-wangguan': const IconData(0xec63, fontFamily: _family), - 'icon-reeor': const IconData(0xe7bb, fontFamily: _family), - 'icon-fencengpeizhi': const IconData(0xe8bb, fontFamily: _family), - 'icon-shenjing': const IconData(0xec64, fontFamily: _family), - 'icon-reduce': const IconData(0xe7bc, fontFamily: _family), - 'icon-shenqingjilu': const IconData(0xe8bc, fontFamily: _family), - 'icon-chucun': const IconData(0xec65, fontFamily: _family), - 'icon-Non-staplefood': const IconData(0xe7bd, fontFamily: _family), - 'icon-shangchuanbeiandanzheng': const IconData(0xe8bd, fontFamily: _family), - 'icon-wuguan': const IconData(0xec66, fontFamily: _family), - 'icon-rejected-order': const IconData(0xe7be, fontFamily: _family), - 'icon-shangchuan': const IconData(0xe8be, fontFamily: _family), - 'icon-yunduanshuaxin': const IconData(0xec67, fontFamily: _family), - 'icon-resonserate': const IconData(0xe7bf, fontFamily: _family), - 'icon-kehuquanyi': const IconData(0xe8bf, fontFamily: _family), - 'icon-yunhang': const IconData(0xec68, fontFamily: _family), - 'icon-remind': const IconData(0xe7c0, fontFamily: _family), - 'icon-suoxiao1': const IconData(0xe8c0, fontFamily: _family), - 'icon-luyouqi': const IconData(0xec69, fontFamily: _family), - 'icon-responsetime': const IconData(0xe7c1, fontFamily: _family), - 'icon-quanyipeizhi': const IconData(0xe8c1, fontFamily: _family), - 'icon-bug': const IconData(0xec6a, fontFamily: _family), - 'icon-return': const IconData(0xe7c2, fontFamily: _family), - 'icon-shuangshen': const IconData(0xe8c2, fontFamily: _family), - 'icon-get': const IconData(0xec6b, fontFamily: _family), - 'icon-paylater': const IconData(0xe7c3, fontFamily: _family), - 'icon-tongguan': const IconData(0xe8c3, fontFamily: _family), - 'icon-PIR': const IconData(0xec6c, fontFamily: _family), - 'icon-rising1': const IconData(0xe7c4, fontFamily: _family), - 'icon-tuishui': const IconData(0xe8c4, fontFamily: _family), - 'icon-zhexiantu': const IconData(0xec6d, fontFamily: _family), - 'icon-Rightarrow': const IconData(0xe7c5, fontFamily: _family), - 'icon-tongguanshuju': const IconData(0xe8c5, fontFamily: _family), - 'icon-shuibiao': const IconData(0xec6e, fontFamily: _family), - 'icon-rmb1': const IconData(0xe7c6, fontFamily: _family), - 'icon-kuaidiwuliu': const IconData(0xe8c6, fontFamily: _family), - 'icon-js': const IconData(0xec6f, fontFamily: _family), - 'icon-RFQ-logo': const IconData(0xe7c7, fontFamily: _family), - 'icon-wuliuchanpin': const IconData(0xe8c7, fontFamily: _family), - 'icon-zihangche': const IconData(0xec70, fontFamily: _family), - 'icon-save': const IconData(0xe7c8, fontFamily: _family), - 'icon-waihuishuju': const IconData(0xe8c8, fontFamily: _family), - 'icon-liebiao': const IconData(0xec71, fontFamily: _family), - 'icon-scanning': const IconData(0xe7c9, fontFamily: _family), - 'icon-xinxibar-shouji': const IconData(0xe8c9, fontFamily: _family), - 'icon-qichedingwei': const IconData(0xec72, fontFamily: _family), - 'icon-security': const IconData(0xe7ca, fontFamily: _family), - 'icon-xinwaizongyewu': const IconData(0xe8ca, fontFamily: _family), - 'icon-dici': const IconData(0xec73, fontFamily: _family), - 'icon-salescenter': const IconData(0xe7cb, fontFamily: _family), - 'icon-wuliudingdan': const IconData(0xe8cb, fontFamily: _family), - 'icon-mysql': const IconData(0xec74, fontFamily: _family), - 'icon-seleted': const IconData(0xe7cc, fontFamily: _family), - 'icon-zhongjianren': const IconData(0xe8cc, fontFamily: _family), - 'icon-qiche': const IconData(0xec75, fontFamily: _family), - 'icon-searchcart': const IconData(0xe7cd, fontFamily: _family), - 'icon-xinxibar-zhanghu': const IconData(0xe8cd, fontFamily: _family), - 'icon-shenjing1': const IconData(0xec76, fontFamily: _family), - 'icon-raw': const IconData(0xe7ce, fontFamily: _family), - 'icon-yidatong': const IconData(0xe8ce, fontFamily: _family), - 'icon-chengshi': const IconData(0xec77, fontFamily: _family), - 'icon-service': const IconData(0xe7cf, fontFamily: _family), - 'icon-zhuanyequanwei': const IconData(0xe8cf, fontFamily: _family), - 'icon-tixingshixin': const IconData(0xec78, fontFamily: _family), - 'icon-share': const IconData(0xe7d0, fontFamily: _family), - 'icon-zhanghucaozuo': const IconData(0xe8d0, fontFamily: _family), - 'icon-menci': const IconData(0xec79, fontFamily: _family), - 'icon-signboard': const IconData(0xe7d1, fontFamily: _family), - 'icon-xuanzhuandu': const IconData(0xe8d1, fontFamily: _family), - 'icon-chazuo': const IconData(0xec7a, fontFamily: _family), - 'icon-shuffling-banner': const IconData(0xe7d2, fontFamily: _family), - 'icon-tuishuirongzi': const IconData(0xe8d2, fontFamily: _family), - 'icon-ranqijianceqi': const IconData(0xec7b, fontFamily: _family), - 'icon-Rightbutton': const IconData(0xe7d3, fontFamily: _family), - 'icon-AddProducts': const IconData(0xe8d3, fontFamily: _family), - 'icon-kaiguan': const IconData(0xec7c, fontFamily: _family), - 'icon-sorting': const IconData(0xe7d4, fontFamily: _family), - 'icon-ziyingyewu': const IconData(0xe8d4, fontFamily: _family), - 'icon-chatou': const IconData(0xec7d, fontFamily: _family), - 'icon-sound-Mute': const IconData(0xe7d5, fontFamily: _family), - 'icon-addcell': const IconData(0xe8d5, fontFamily: _family), - 'icon-xiyiji': const IconData(0xec7e, fontFamily: _family), - 'icon-Similarproducts': const IconData(0xe7d6, fontFamily: _family), - 'icon-background-color': const IconData(0xe8d6, fontFamily: _family), - 'icon-yijiankaiguan': const IconData(0xec7f, fontFamily: _family), - 'icon-sound-filling': const IconData(0xe7d7, fontFamily: _family), - 'icon-cascades': const IconData(0xe8d7, fontFamily: _family), - 'icon-yanwubaojingqi': const IconData(0xec80, fontFamily: _family), - 'icon-suggest': const IconData(0xe7d8, fontFamily: _family), - 'icon-beijing': const IconData(0xe8d8, fontFamily: _family), - 'icon-wuxiandianbo': const IconData(0xec81, fontFamily: _family), - 'icon-stop': const IconData(0xe7d9, fontFamily: _family), - 'icon-bold': const IconData(0xe8d9, fontFamily: _family), - 'icon-fuzhi': const IconData(0xec82, fontFamily: _family), - 'icon-success': const IconData(0xe7da, fontFamily: _family), - 'icon-zijin': const IconData(0xe8da, fontFamily: _family), - 'icon-shanchu': const IconData(0xec83, fontFamily: _family), - 'icon-supplier-features': const IconData(0xe7db, fontFamily: _family), - 'icon-eraser': const IconData(0xe8db, fontFamily: _family), - 'icon-bianjisekuai': const IconData(0xec84, fontFamily: _family), - 'icon-switch': const IconData(0xe7dc, fontFamily: _family), - 'icon-centeralignment': const IconData(0xe8dc, fontFamily: _family), - 'icon-ishipinshixiao': const IconData(0xec85, fontFamily: _family), - 'icon-survey': const IconData(0xe7dd, fontFamily: _family), - 'icon-click': const IconData(0xe8dd, fontFamily: _family), - 'icon-iframetianjia': const IconData(0xec86, fontFamily: _family), - 'icon-template': const IconData(0xe7de, fontFamily: _family), - 'icon-aspjiesuan': const IconData(0xe8de, fontFamily: _family), - 'icon-tupiantianjia': const IconData(0xec87, fontFamily: _family), - 'icon-text': const IconData(0xe7df, fontFamily: _family), - 'icon-flag': const IconData(0xe8df, fontFamily: _family), - 'icon-liebiaomoshi-kuai': const IconData(0xec88, fontFamily: _family), - 'icon-suspended': const IconData(0xe7e0, fontFamily: _family), - 'icon-falg-fill': const IconData(0xe8e0, fontFamily: _family), - 'icon-qiapianmoshi-kuai': const IconData(0xec89, fontFamily: _family), - 'icon-task-management': const IconData(0xe7e1, fontFamily: _family), - 'icon-Fee': const IconData(0xe8e1, fontFamily: _family), - 'icon-fenlan': const IconData(0xec8a, fontFamily: _family), - 'icon-tool': const IconData(0xe7e2, fontFamily: _family), - 'icon-filling': const IconData(0xe8e2, fontFamily: _family), - 'icon-fengexian': const IconData(0xec8b, fontFamily: _family), - 'icon-Top': const IconData(0xe7e3, fontFamily: _family), - 'icon-Foreigncurrency': const IconData(0xe8e3, fontFamily: _family), - 'icon-dianzan': const IconData(0xec8c, fontFamily: _family), - 'icon-smile': const IconData(0xe7e4, fontFamily: _family), - 'icon-guanliyuan': const IconData(0xe8e4, fontFamily: _family), - 'icon-charulianjie': const IconData(0xec8d, fontFamily: _family), - 'icon-textile-products': const IconData(0xe7e5, fontFamily: _family), - 'icon-language': const IconData(0xe8e5, fontFamily: _family), - 'icon-charutupian': const IconData(0xec8e, fontFamily: _family), - 'icon-tradealert': const IconData(0xe7e6, fontFamily: _family), - 'icon-leftalignment': const IconData(0xe8e6, fontFamily: _family), - 'icon-quxiaolianjie': const IconData(0xec8f, fontFamily: _family), - 'icon-topsales': const IconData(0xe7e7, fontFamily: _family), - 'icon-extra-inquiries': const IconData(0xe8e7, fontFamily: _family), - 'icon-wuxupailie': const IconData(0xec90, fontFamily: _family), - 'icon-tradingvolume': const IconData(0xe7e8, fontFamily: _family), - 'icon-Italic': const IconData(0xe8e8, fontFamily: _family), - 'icon-juzhongduiqi': const IconData(0xec91, fontFamily: _family), - 'icon-training': const IconData(0xe7e9, fontFamily: _family), - 'icon-pcm': const IconData(0xe8e9, fontFamily: _family), - 'icon-yinyong': const IconData(0xec92, fontFamily: _family), - 'icon-upload': const IconData(0xe7ea, fontFamily: _family), - 'icon-reducecell': const IconData(0xe8ea, fontFamily: _family), - 'icon-youxupailie': const IconData(0xec93, fontFamily: _family), - 'icon-RFQ-word': const IconData(0xe7eb, fontFamily: _family), - 'icon-rightalignment': const IconData(0xe8eb, fontFamily: _family), - 'icon-youduiqi': const IconData(0xec94, fontFamily: _family), - 'icon-viewlarger': const IconData(0xe7ec, fontFamily: _family), - 'icon-pointerleft': const IconData(0xe8ec, fontFamily: _family), - 'icon-zitidaima': const IconData(0xec95, fontFamily: _family), - 'icon-viewgallery': const IconData(0xe7ed, fontFamily: _family), - 'icon-subscript': const IconData(0xe8ed, fontFamily: _family), - 'icon-xiaolian': const IconData(0xec96, fontFamily: _family), - 'icon-vehivles': const IconData(0xe7ee, fontFamily: _family), - 'icon-square': const IconData(0xe8ee, fontFamily: _family), - 'icon-zitijiacu': const IconData(0xec97, fontFamily: _family), - 'icon-trust': const IconData(0xe7ef, fontFamily: _family), - 'icon-superscript': const IconData(0xe8ef, fontFamily: _family), - 'icon-zitishanchuxian': const IconData(0xec98, fontFamily: _family), - 'icon-warning': const IconData(0xe7f0, fontFamily: _family), - 'icon-tag-subscript': const IconData(0xe8f0, fontFamily: _family), - 'icon-zitishangbiao': const IconData(0xec99, fontFamily: _family), - 'icon-warehouse': const IconData(0xe7f1, fontFamily: _family), - 'icon-danjuzhuanhuan': const IconData(0xe8f1, fontFamily: _family), - 'icon-zitibiaoti': const IconData(0xec9a, fontFamily: _family), - 'icon-shoes': const IconData(0xe7f2, fontFamily: _family), - 'icon-Transfermoney': const IconData(0xe8f2, fontFamily: _family), - 'icon-zitixiahuaxian': const IconData(0xec9b, fontFamily: _family), - 'icon-video': const IconData(0xe7f3, fontFamily: _family), - 'icon-under-line': const IconData(0xe8f3, fontFamily: _family), - 'icon-zitixieti': const IconData(0xec9c, fontFamily: _family), - 'icon-viewlist': const IconData(0xe7f4, fontFamily: _family), - 'icon-xiakuangxian': const IconData(0xe8f4, fontFamily: _family), - 'icon-zitiyanse': const IconData(0xec9d, fontFamily: _family), - 'icon-set': const IconData(0xe7f5, fontFamily: _family), - 'icon-shouqi': const IconData(0xe8f5, fontFamily: _family), - 'icon-zuoduiqi': const IconData(0xec9e, fontFamily: _family), - 'icon-store': const IconData(0xe7f6, fontFamily: _family), - 'icon-zhankai': const IconData(0xe8f6, fontFamily: _family), - 'icon-zitiyulan': const IconData(0xec9f, fontFamily: _family), - 'icon-tool-hardware': const IconData(0xe7f7, fontFamily: _family), - 'icon-tongxunlu': const IconData(0xe8f7, fontFamily: _family), - 'icon-zitixiabiao': const IconData(0xeca0, fontFamily: _family), - 'icon-vs': const IconData(0xe7f8, fontFamily: _family), - 'icon-yiguanzhugongyingshang': const IconData(0xe8f8, fontFamily: _family), - 'icon-zuoyouduiqi': const IconData(0xeca1, fontFamily: _family), - 'icon-toy': const IconData(0xe7f9, fontFamily: _family), - 'icon-goumaipianhao': const IconData(0xe8f9, fontFamily: _family), - 'icon-tianxie': const IconData(0xeca2, fontFamily: _family), - 'icon-sport': const IconData(0xe7fa, fontFamily: _family), - 'icon-Subscribe': const IconData(0xe8fa, fontFamily: _family), - 'icon-huowudui1': const IconData(0xeca3, fontFamily: _family), - 'icon-creditcard': const IconData(0xe7fb, fontFamily: _family), - 'icon-becomeagoldsupplier': const IconData(0xe8fb, fontFamily: _family), - 'icon-yingjian': const IconData(0xeca4, fontFamily: _family), - 'icon-contacts': const IconData(0xe7fc, fontFamily: _family), - 'icon-new': const IconData(0xe8fc, fontFamily: _family), - 'icon-shebeikaifa': const IconData(0xeca5, fontFamily: _family), - 'icon-checkstand': const IconData(0xe7fd, fontFamily: _family), - 'icon-free': const IconData(0xe8fd, fontFamily: _family), - 'icon-dianzan-kuai': const IconData(0xeca6, fontFamily: _family), - 'icon-aviation': const IconData(0xe7fe, fontFamily: _family), - 'icon-cad-fill': const IconData(0xe8fe, fontFamily: _family), - 'icon-zhihuan': const IconData(0xeca7, fontFamily: _family), - 'icon-Daytimemode': const IconData(0xe7ff, fontFamily: _family), - 'icon-robot': const IconData(0xe8ff, fontFamily: _family), - 'icon-tuoguan': const IconData(0xeca8, fontFamily: _family), - 'icon-infantmom': const IconData(0xe800, fontFamily: _family), - 'icon-inspection1': const IconData(0xe900, fontFamily: _family), - 'icon-duigoux': const IconData(0xeca9, fontFamily: _family), - 'icon-discounts': const IconData(0xe801, fontFamily: _family), - 'icon-guanbi1': const IconData(0xecaa, fontFamily: _family), - 'icon-invoice': const IconData(0xe802, fontFamily: _family), - 'icon-aixin-shixin': const IconData(0xecab, fontFamily: _family), - 'icon-insurance': const IconData(0xe803, fontFamily: _family), - 'icon-ranqixieloubaojingqi': const IconData(0xecac, fontFamily: _family), - 'icon-nightmode': const IconData(0xe804, fontFamily: _family), - 'icon-dianbiao-shiti': const IconData(0xecad, fontFamily: _family), - 'icon-usercenter': const IconData(0xe805, fontFamily: _family), - 'icon-aixin': const IconData(0xecae, fontFamily: _family), - 'icon-unlock': const IconData(0xe806, fontFamily: _family), - 'icon-shuibiao-shiti': const IconData(0xecaf, fontFamily: _family), - 'icon-vip': const IconData(0xe807, fontFamily: _family), - 'icon-zhinengxiaofangshuan': const IconData(0xecb0, fontFamily: _family), - 'icon-wallet': const IconData(0xe808, fontFamily: _family), - 'icon-shoucangjia': const IconData(0xe600, fontFamily: _family), - 'icon-ranqibiao-shiti': const IconData(0xecb1, fontFamily: _family), - 'icon-landtransportation': const IconData(0xe809, fontFamily: _family), - 'icon-tiaoshi': const IconData(0xeb61, fontFamily: _family), - 'icon-shexiangtou-shiti': const IconData(0xecb2, fontFamily: _family), - 'icon-voice': const IconData(0xe80a, fontFamily: _family), - 'icon-changjingguanli': const IconData(0xeb62, fontFamily: _family), - 'icon-shexiangtou-guanbi': const IconData(0xecb3, fontFamily: _family), - 'icon-exchangerate': const IconData(0xe80b, fontFamily: _family), - 'icon-bianji': const IconData(0xeb63, fontFamily: _family), - 'icon-shexiangtou': const IconData(0xecb4, fontFamily: _family), - 'icon-contacts-fill': const IconData(0xe80c, fontFamily: _family), - 'icon-guanlianshebei': const IconData(0xeb64, fontFamily: _family), - 'icon-shengyin-shiti': const IconData(0xecb5, fontFamily: _family), - 'icon-add-account1': const IconData(0xe80d, fontFamily: _family), - 'icon-guanfangbanben': const IconData(0xeb65, fontFamily: _family), - 'icon-shengyinkai': const IconData(0xecb6, fontFamily: _family), - 'icon-years-fill': const IconData(0xe80e, fontFamily: _family), - 'icon-gongnengdingyi': const IconData(0xeb66, fontFamily: _family), - 'icon-shoucang-shixin': const IconData(0xecb7, fontFamily: _family), - 'icon-add-cart-fill': const IconData(0xe80f, fontFamily: _family), - 'icon-jichuguanli': const IconData(0xeb67, fontFamily: _family), - 'icon-shoucang': const IconData(0xecb8, fontFamily: _family), - 'icon-add-fill': const IconData(0xe810, fontFamily: _family), - 'icon-jishufuwu': const IconData(0xeb68, fontFamily: _family), - 'icon-shengyinwu': const IconData(0xecb9, fontFamily: _family), - 'icon-all-fill1': const IconData(0xe811, fontFamily: _family), - 'icon-hezuohuobanmiyueguanli': const IconData(0xeb69, fontFamily: _family), - 'icon-shengyinjingyin': const IconData(0xecba, fontFamily: _family), - 'icon-ashbin-fill': const IconData(0xe812, fontFamily: _family), - 'icon-ceshishenqing': const IconData(0xeb6a, fontFamily: _family), - 'icon-zhunbeiliangchan': const IconData(0xecbb, fontFamily: _family), - 'icon-calendar-fill': const IconData(0xe813, fontFamily: _family), - 'icon-jiedianguanli': const IconData(0xeb6b, fontFamily: _family), - 'icon-shebeikaifa1': const IconData(0xecbc, fontFamily: _family), - 'icon-bad-fill': const IconData(0xe814, fontFamily: _family), - 'icon-jinggao': const IconData(0xeb6c, fontFamily: _family), - 'icon-kongxinwenhao': const IconData(0xed19, fontFamily: _family), - 'icon-bussiness-man-fill': const IconData(0xe815, fontFamily: _family), - 'icon-peiwangyindao': const IconData(0xeb6d, fontFamily: _family), - 'icon-cuowukongxin': const IconData(0xed1a, fontFamily: _family), - 'icon-atm-fill': const IconData(0xe816, fontFamily: _family), - 'icon-renjijiaohu': const IconData(0xeb6e, fontFamily: _family), - 'icon-fangkuai1': const IconData(0xed1b, fontFamily: _family), - 'icon-cart-full-fill': const IconData(0xe817, fontFamily: _family), - 'icon-shiyongwendang': const IconData(0xeb6f, fontFamily: _family), - 'icon-fangkuai2': const IconData(0xed1c, fontFamily: _family), - 'icon-cart-Empty-fill': const IconData(0xe818, fontFamily: _family), - 'icon-quanxianshenpi': const IconData(0xeb70, fontFamily: _family), - 'icon-kongjianxuanzhong1': const IconData(0xed1d, fontFamily: _family), - 'icon-cameraswitching-fill': const IconData(0xe819, fontFamily: _family), - 'icon-yishouquan': const IconData(0xeb71, fontFamily: _family), - 'icon-kongxinduigou1': const IconData(0xed1e, fontFamily: _family), - 'icon-atm-away-fill': const IconData(0xe81a, fontFamily: _family), - 'icon-tianshenpi': const IconData(0xeb72, fontFamily: _family), - 'icon-xinxikongxin': const IconData(0xed1f, fontFamily: _family), - 'icon-certified-supplier-fill': const IconData(0xe81b, fontFamily: _family), - 'icon-shujukanban': const IconData(0xeb73, fontFamily: _family), - 'icon-kongjian': const IconData(0xed20, fontFamily: _family), - 'icon-calculator-fill': const IconData(0xe81c, fontFamily: _family), - 'icon-yingyongguanli': const IconData(0xeb74, fontFamily: _family), - 'icon-gaojingkongxin': const IconData(0xed21, fontFamily: _family), - 'icon-clock-fill': const IconData(0xe81d, fontFamily: _family), - 'icon-yibiaopan': const IconData(0xeb75, fontFamily: _family), - 'icon-duigou-kuai': const IconData(0xed22, fontFamily: _family), - 'icon-ali-clould-fill': const IconData(0xe81e, fontFamily: _family), - 'icon-zhanghaoquanxianguanli': const IconData(0xeb76, fontFamily: _family), - 'icon-cuocha-kuai': const IconData(0xed23, fontFamily: _family), - 'icon-color-fill': const IconData(0xe81f, fontFamily: _family), - 'icon-yuanquyunwei': const IconData(0xeb77, fontFamily: _family), - 'icon-jia-sekuai': const IconData(0xed24, fontFamily: _family), - 'icon-coupons-fill': const IconData(0xe820, fontFamily: _family), - 'icon-jizhanguanli': const IconData(0xeb78, fontFamily: _family), - 'icon-jian-sekuai': const IconData(0xed25, fontFamily: _family), - 'icon-cecurity-protection-fill': const IconData(0xe821, fontFamily: _family), - 'icon-guanbi': const IconData(0xeb79, fontFamily: _family), - 'icon-fenxiangfangshi': const IconData(0xed2e, fontFamily: _family), - 'icon-credit-level-fill': const IconData(0xe822, fontFamily: _family), - 'icon-zidingyi': const IconData(0xeb7a, fontFamily: _family), - 'icon-auto': const IconData(0xe6eb, fontFamily: _family), - 'icon-default-template-fill': const IconData(0xe823, fontFamily: _family), - 'icon-xiajiantou': const IconData(0xeb7b, fontFamily: _family), - 'icon-all': const IconData(0xe6ef, fontFamily: _family), - 'icon-CurrencyConverter-fill': const IconData(0xe824, fontFamily: _family), - 'icon-shangjiantou': const IconData(0xeb7c, fontFamily: _family), - 'icon-bussiness-man': const IconData(0xe6f0, fontFamily: _family), - 'icon-Customermanagement-fill': const IconData(0xe825, fontFamily: _family), - 'icon-icon-loading': const IconData(0xeb80, fontFamily: _family), - 'icon-widgets': const IconData(0xe6f2, fontFamily: _family), - 'icon-discounts-fill': const IconData(0xe826, fontFamily: _family), - 'icon-icon-renwujincheng': const IconData(0xeb88, fontFamily: _family), - 'icon-code': const IconData(0xe6f3, fontFamily: _family), - 'icon-Daytimemode-fill': const IconData(0xe827, fontFamily: _family), - 'icon-icon-rukou': const IconData(0xeb89, fontFamily: _family), - 'icon-copy': const IconData(0xe6f4, fontFamily: _family), - 'icon-exl-fill': const IconData(0xe828, fontFamily: _family), - 'icon-icon-yiwenkongxin': const IconData(0xeb8a, fontFamily: _family), - 'icon-dollar': const IconData(0xe6f5, fontFamily: _family), - 'icon-cry-fill': const IconData(0xe829, fontFamily: _family), - 'icon-icon-fabu': const IconData(0xeb8b, fontFamily: _family), - 'icon-history': const IconData(0xe6f8, fontFamily: _family), - 'icon-email-fill': const IconData(0xe82a, fontFamily: _family), - 'icon-icon-tianjia': const IconData(0xeb8c, fontFamily: _family), - 'icon-editor': const IconData(0xe6f6, fontFamily: _family), - 'icon-filter-fill': const IconData(0xe82b, fontFamily: _family), - 'icon-icon-yulan': const IconData(0xeb8d, fontFamily: _family), - 'icon-data': const IconData(0xe6f9, fontFamily: _family), - 'icon-folder-fill': const IconData(0xe82c, fontFamily: _family), - 'icon-icon-zhanghao': const IconData(0xeb8e, fontFamily: _family), - 'icon-gift': const IconData(0xe6fa, fontFamily: _family), - 'icon-feeds-fill': const IconData(0xe82d, fontFamily: _family), - 'icon-icon-wangye': const IconData(0xeb8f, fontFamily: _family), - 'icon-integral': const IconData(0xe6fb, fontFamily: _family), - 'icon-gold-supplie-fill': const IconData(0xe82e, fontFamily: _family), - 'icon-icon-shezhi': const IconData(0xeb90, fontFamily: _family), - 'icon-nav-list': const IconData(0xe6fd, fontFamily: _family), - 'icon-form-fill': const IconData(0xe82f, fontFamily: _family), - 'icon-icon-baocun': const IconData(0xeb91, fontFamily: _family), - 'icon-pic': const IconData(0xe6ff, fontFamily: _family), - 'icon-camera-fill': const IconData(0xe830, fontFamily: _family), - 'icon-icon-yingyongguanli': const IconData(0xeb92, fontFamily: _family), - 'icon-Notvisible': const IconData(0xe6fe, fontFamily: _family), - 'icon-good-fill': const IconData(0xe831, fontFamily: _family), - 'icon-icon-shiyongwendang': const IconData(0xeb93, fontFamily: _family), - 'icon-play': const IconData(0xe701, fontFamily: _family), - 'icon-image-text-fill': const IconData(0xe832, fontFamily: _family), - 'icon-icon-bangzhuwendang': const IconData(0xeb94, fontFamily: _family), - 'icon-rising': const IconData(0xe703, fontFamily: _family), - 'icon-inspection-fill': const IconData(0xe833, fontFamily: _family), - 'icon-biaodanzujian-shurukuang': const IconData(0xeb95, fontFamily: _family), - 'icon-QRcode': const IconData(0xe704, fontFamily: _family), - 'icon-hot-fill': const IconData(0xe834, fontFamily: _family), - }; - - static IconData query(String key) { - return _iconMapping[key] ?? _iconMapping[_defaultIconKey]!; - } -} diff --git a/lib/utils/images.dart b/lib/utils/images.dart deleted file mode 100644 index 4776525a5..000000000 --- a/lib/utils/images.dart +++ /dev/null @@ -1,30 +0,0 @@ -import 'dart:io'; - -import 'package:flutter_image_compress/flutter_image_compress.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:path/path.dart' as path; - -Future copyCompressedImageToTarget({ - required File source, - required String target, - bool compressGif = false, -}) async { - if (source.path == target) return; - final supportCompress = UniversalPlatform.isAndroid || UniversalPlatform.isIOS || UniversalPlatform.isMacOS; - if (!supportCompress) { - await source.copy(target); - return; - } - final isGif = path.extension(source.path).toLowerCase() == ".gif"; - if (!isGif || compressGif) { - FlutterImageCompress.validator.ignoreCheckExtName = true; - await FlutterImageCompress.compressAndGetFile( - source.path, - target, - format: UniversalPlatform.isIOS ? CompressFormat.heic : CompressFormat.jpeg, - ); - return; - } else { - await source.copy(target); - } -} diff --git a/lib/utils/json.dart b/lib/utils/json.dart deleted file mode 100644 index c98c6adad..000000000 --- a/lib/utils/json.dart +++ /dev/null @@ -1,58 +0,0 @@ -import 'dart:convert'; - -import 'package:flutter/cupertino.dart'; - -T? decodeJsonObject(dynamic json, T Function(dynamic obj) transform) { - if (json == null) return null; - try { - if (json is String) { - final obj = jsonDecode(json); - return transform(obj); - } else if (json is Map) { - return transform(json.cast()); - } else { - return transform(json); - } - } catch (_) { - debugPrint("Failed to decode $json"); - return null; - } -} - -String? encodeJsonObject(T? obj, [dynamic Function(T obj)? transform]) { - if (obj == null) return null; - try { - final json = transform != null ? transform(obj) : (obj as dynamic).toJson(); - return jsonEncode(json); - } catch (_) { - debugPrint("Failed to encode $json"); - return null; - } -} - -List? decodeJsonList(dynamic json, T Function(dynamic element) transform) { - if (json == null) return null; - try { - if (json is String) { - final list = jsonDecode(json) as List; - return list.map(transform).toList(); - } else { - final list = jsonDecode(json) as List; - return list.map(transform).toList(); - } - } catch (_) { - debugPrint("Failed to decode $json"); - return null; - } -} - -String? encodeJsonList(List? list, [dynamic Function(T element)? transform]) { - if (list == null) return null; - try { - final json = list.map(transform ?? (e) => (e as dynamic).toJson()).toList(); - return jsonEncode(json); - } catch (_) { - debugPrint("Failed to encode $json"); - return null; - } -} diff --git a/lib/utils/permission.dart b/lib/utils/permission.dart deleted file mode 100644 index 1f078956b..000000000 --- a/lib/utils/permission.dart +++ /dev/null @@ -1,50 +0,0 @@ -import 'package:app_settings/app_settings.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:permission_handler/permission_handler.dart'; -import 'package:sit/design/adaptive/dialog.dart'; -import 'package:sit/l10n/common.dart'; - -Future ensurePermission(Permission permission) async { - PermissionStatus status = await permission.status; - - if (status != PermissionStatus.granted) { - status = await Permission.storage.request(); - } - return status == PermissionStatus.granted; -} - -class PermissionI18n with CommonI18nMixin { - const PermissionI18n(); - - static const _ns = "permission"; - - String get permissionDenied => "$_ns.permissionDenied".tr(); - - String permissionDeniedDescOf(Permission permission) => "$_ns.permissionDeniedDescOf".tr(args: [ - permission.l10n(), - ]); - - String get goSettings => "$_ns.goSettings".tr(); -} - -const _i18n = PermissionI18n(); - -Future showPermissionDeniedDialog({ - required BuildContext context, - required Permission permission, -}) async { - final confirm = await context.showDialogRequest( - title: _i18n.permissionDenied, - desc: _i18n.permissionDeniedDescOf(permission), - primary: _i18n.goSettings, - secondary: _i18n.cancel, - ); - if (confirm == true) { - await AppSettings.openAppSettings(type: AppSettingsType.settings); - } -} - -extension PermissionI18nX on Permission { - String l10n() => "${PermissionI18n._ns}.type.${toString().substring(11)}".tr(); -} diff --git a/lib/utils/riverpod.dart b/lib/utils/riverpod.dart deleted file mode 100644 index d063918bd..000000000 --- a/lib/utils/riverpod.dart +++ /dev/null @@ -1,48 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; - -extension BuildContextRiverpodX on BuildContext { - ProviderContainer riverpod({ - bool listen = true, - }) => - ProviderScope.containerOf( - this, - listen: listen, - ); -} - -class ListenableStateNotifier extends StateNotifier { - final Listenable listenable; - final T Function() get; - final void Function(T v)? set; - - ListenableStateNotifier(super._state, this.listenable, this.get, this.set) { - listenable.addListener(_refresh); - } - - void _refresh() { - state = get(); - } - - @override - void dispose() { - listenable.removeListener(_refresh); - super.dispose(); - } -} - -extension ListenableRiverpodX on Listenable { - StateNotifierProvider, T> provider({ - required T Function() get, - void Function(T v)? set, - }) { - return StateNotifierProvider, T>((ref) { - return ListenableStateNotifier( - get(), - this, - get, - set, - ); - }); - } -} diff --git a/lib/utils/save.dart b/lib/utils/save.dart deleted file mode 100644 index 11782e828..000000000 --- a/lib/utils/save.dart +++ /dev/null @@ -1,63 +0,0 @@ -import 'dart:async'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/design/adaptive/dialog.dart'; - -const _i18n = _I18n(); - -class PromptSaveBeforeQuitScope extends StatelessWidget { - final bool changed; - final FutureOr Function() onSave; - final Widget child; - - const PromptSaveBeforeQuitScope({ - super.key, - required this.changed, - required this.onSave, - required this.child, - }); - - @override - Widget build(BuildContext context) { - return PopScope( - canPop: false, - onPopInvoked: (didPop) async { - if (didPop) { - return; - } - if (!changed) { - context.pop(); - return; - } - final confirmSave = await context.showDialogRequest( - desc: _i18n.request, - primary: _i18n.saveAndQuit, - secondary: _i18n.discard, - secondaryDestructive: true, - dismissible: true, - ); - if (confirmSave == true) { - await onSave(); - } else if (confirmSave == false) { - if (!context.mounted) return; - context.pop(); - } - }, - child: child, - ); - } -} - -class _I18n { - const _I18n(); - - static const ns = "saveAndQuitPrompt"; - - String get request => "$ns.request".tr(); - - String get saveAndQuit => "$ns.saveAndQuit".tr(); - - String get discard => "$ns.discard".tr(); -} diff --git a/lib/utils/strings.dart b/lib/utils/strings.dart deleted file mode 100644 index 767162292..000000000 --- a/lib/utils/strings.dart +++ /dev/null @@ -1,5 +0,0 @@ -extension StringEx on String { - String removeSuffix(String suffix) => endsWith(suffix) ? substring(0, length - suffix.length) : this; - - String removePrefix(String prefix) => startsWith(prefix) ? substring(prefix.length) : this; -} diff --git a/lib/utils/timer.dart b/lib/utils/timer.dart deleted file mode 100644 index 68a23bc27..000000000 --- a/lib/utils/timer.dart +++ /dev/null @@ -1,10 +0,0 @@ -import 'dart:async'; - -Timer runPeriodically( - Duration duration, - void Function(Timer timer) callback, -) { - final timer = Timer.periodic(duration, callback); - Timer.run(() => callback(timer)); - return timer; -} diff --git a/lib/utils/vibration.dart b/lib/utils/vibration.dart deleted file mode 100644 index 88df40c6e..000000000 --- a/lib/utils/vibration.dart +++ /dev/null @@ -1,71 +0,0 @@ -import 'package:universal_platform/universal_platform.dart'; -import 'package:vibration/vibration.dart' as vb; - -abstract class VibrationProtocol { - Future emit(); -} - -abstract class TimedProtocol { - int get milliseconds; -} - -class Vibration implements VibrationProtocol, TimedProtocol { - @override - final int milliseconds; - final int amplitude; - - const Vibration({this.milliseconds = 500, this.amplitude = -1}); - - @override - Future emit() async { - if (UniversalPlatform.isAndroid || UniversalPlatform.isIOS) { - if (await vb.Vibration.hasVibrator() ?? false) { - if (await vb.Vibration.hasCustomVibrationsSupport() ?? false) { - vb.Vibration.vibrate(duration: milliseconds, amplitude: amplitude); - } else { - vb.Vibration.vibrate(); - } - } - } - } - - VibrationProtocol operator +(Wait wait) { - return CompoundVibration._(timedList: [this, wait]); - } -} - -class Wait implements TimedProtocol { - @override - final int milliseconds; - - const Wait({this.milliseconds = 500}); -} - -class CompoundVibration implements VibrationProtocol { - final List timedList; - - CompoundVibration._({this.timedList = const []}); - - @override - Future emit() async { - if (UniversalPlatform.isAndroid || UniversalPlatform.isIOS) { - if (await vb.Vibration.hasVibrator() ?? false) { - if (await vb.Vibration.hasCustomVibrationsSupport() ?? false) { - vb.Vibration.vibrate(pattern: timedList.map((e) => e.milliseconds).toList()); - } else { - for (int i = 0; i < timedList.length; i++) { - if (i % 2 == 0) { - vb.Vibration.vibrate(); - } else { - await Future.delayed(Duration(milliseconds: timedList[i].milliseconds)); - } - } - } - } - } - } - - VibrationProtocol operator +(CompoundVibration other) { - return CompoundVibration._(timedList: timedList + other.timedList); - } -} diff --git a/lib/widgets/captcha_box.dart b/lib/widgets/captcha_box.dart deleted file mode 100644 index e22f98b27..000000000 --- a/lib/widgets/captcha_box.dart +++ /dev/null @@ -1,80 +0,0 @@ -import 'dart:typed_data'; - -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/design/adaptive/foundation.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:rettulf/rettulf.dart'; - -class CaptchaDialog extends StatefulWidget { - final Uint8List captchaData; - - const CaptchaDialog({ - super.key, - required this.captchaData, - }); - - @override - State createState() => _CaptchaDialogState(); -} - -class _CaptchaDialogState extends State { - final $captcha = TextEditingController(); - - @override - Widget build(BuildContext context) { - return $Dialog$( - title: _i18n.title, - primary: $Action$( - text: _i18n.submit, - warning: true, - isDefault: true, - onPressed: () { - context.navigator.pop($captcha.text); - }, - ), - secondary: $Action$( - text: _i18n.cancel, - onPressed: () { - context.navigator.pop(null); - }, - ), - make: (ctx) => [ - Image.memory( - widget.captchaData, - scale: 0.5, - ), - $TextField$( - controller: $captcha, - autofocus: true, - placeholder: _i18n.enterHint, - keyboardType: TextInputType.text, - autofillHints: const [AutofillHints.oneTimeCode], - onSubmit: (value) { - context.navigator.pop(value); - }, - ).padOnly(t: 15), - ].column(mas: MainAxisSize.min).padAll(5), - ); - } - - @override - void dispose() { - super.dispose(); - $captcha.dispose(); - } -} - -const _i18n = CaptchaI18n(); - -class CaptchaI18n with CommonI18nMixin { - static const ns = "captcha"; - - const CaptchaI18n(); - - String get title => "$ns.title".tr(); - - String get enterHint => "$ns.enterHint".tr(); - - String get emptyInputError => "$ns.emptyInputError".tr(); -} diff --git a/lib/widgets/html.dart b/lib/widgets/html.dart deleted file mode 100644 index d6e65bf1f..000000000 --- a/lib/widgets/html.dart +++ /dev/null @@ -1,116 +0,0 @@ -import 'package:flutter/gestures.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_widget_from_html/flutter_widget_from_html.dart'; -import 'package:go_router/go_router.dart'; -import 'package:sit/utils/guard_launch.dart'; -import 'package:rettulf/rettulf.dart'; - -class RestyledHtmlWidget extends StatelessWidget { - final String html; - final RenderMode renderMode; - final TextStyle? textStyle; - - const RestyledHtmlWidget( - this.html, { - super.key, - this.renderMode = RenderMode.column, - this.textStyle, - }); - - @override - Widget build(BuildContext context) { - final textStyle = this.textStyle ?? context.textTheme.bodyMedium; - return HtmlWidget( - html, - buildAsync: true, - renderMode: renderMode, - factoryBuilder: () => RestyledWidgetFactory( - textStyle: textStyle, - borderColor: context.colorScheme.surfaceVariant, - ), - textStyle: textStyle, - onTapUrl: (url) async { - return await guardLaunchUrlString(context, url); - }, - onTapImage: (ImageMetadata image) { - final url = image.sources.toList().firstOrNull?.url; - final title = image.title ?? image.alt; - context.push( - Uri(path: "/image", queryParameters: { - if (title != null && title.isNotEmpty) "title": title, - if (url?.startsWith("http") == true) "origin": url, - }).toString(), - extra: url, - ); - }, - ); - } -} - -class RestyledWidgetFactory extends WidgetFactory { - final TextStyle? textStyle; - final Color? borderColor; - - RestyledWidgetFactory({ - this.textStyle, - this.borderColor, - }); - - @override - InlineSpan? buildTextSpan({ - List? children, - GestureRecognizer? recognizer, - TextStyle? style, - String? text, - }) { - return super.buildTextSpan( - children: children, - recognizer: recognizer, - style: textStyle?.copyWith( - color: style?.color, - decoration: style?.decoration, - decorationColor: style?.decorationColor, - decorationStyle: style?.decorationStyle, - decorationThickness: style?.decorationThickness, - fontStyle: style?.fontStyle, - ), - text: text, - ); - } - - @override - Widget? buildDecoration( - BuildTree tree, - Widget child, { - BoxBorder? border, - BorderRadius? borderRadius, - Color? color, - DecorationImage? image, - }) { - return super.buildDecoration( - tree, - child, - border: _restyleBorder(border, borderColor), - borderRadius: borderRadius, - color: Colors.transparent, - image: image, - ); - } -} - -BoxBorder? _restyleBorder(BoxBorder? border, Color? color) { - if (border is Border) { - return Border( - top: _restyleBorderSide(border.top, color), - right: _restyleBorderSide(border.right, color), - bottom: _restyleBorderSide(border.top, color), - left: _restyleBorderSide(border.left, color), - ); - } else { - return border; - } -} - -BorderSide _restyleBorderSide(BorderSide side, Color? color) { - return side.copyWith(color: color); -} diff --git a/lib/widgets/image.dart b/lib/widgets/image.dart deleted file mode 100644 index d01ed1984..000000000 --- a/lib/widgets/image.dart +++ /dev/null @@ -1,166 +0,0 @@ -import 'dart:convert'; -import 'dart:typed_data'; - -import 'package:cached_network_image/cached_network_image.dart'; -import 'package:flutter/material.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/widgets/modal_image_view.dart'; - -const _i18n = CommonI18n(); - -enum _ImageMode { - url, - base64, - error, -} - -class CachedNetworkImageView extends StatelessWidget { - final String imageUrl; - - const CachedNetworkImageView({ - super.key, - required this.imageUrl, - }); - - @override - Widget build(BuildContext context) { - return CachedNetworkImage( - imageUrl: imageUrl, - placeholder: (context, url) => const CircularProgressIndicator.adaptive(), - errorWidget: (context, url, error) => const Icon(Icons.broken_image_rounded), - fit: BoxFit.fitHeight, - ); - } -} - -class ImageView extends StatefulWidget { - /// It could be a url of image, or a base64 string. - final String? data; - - const ImageView( - this.data, { - super.key, - }); - - @override - State createState() => _ImageViewState(); -} - -class _ImageViewState extends State { - var mode = _ImageMode.url; - Uint8List? imageData; - - @override - void initState() { - super.initState(); - refresh(); - } - - @override - void didUpdateWidget(covariant ImageView oldWidget) { - super.didUpdateWidget(oldWidget); - if (widget.data != oldWidget.data) { - refresh(); - } - } - - void refresh() { - final data = widget.data; - setState(() { - imageData = null; - }); - if (data == null) { - setState(() { - mode = _ImageMode.error; - }); - } else if (data.startsWith("data")) { - setState(() { - mode = _ImageMode.base64; - }); - try { - final parts = data.split(","); - final bytes = const Base64Decoder().convert(parts[1]); - setState(() { - imageData = bytes; - }); - } catch (error) { - setState(() { - mode = _ImageMode.error; - }); - } - } else { - setState(() { - mode = _ImageMode.url; - }); - } - } - - @override - Widget build(BuildContext context) { - ImageProvider? provider; - final data = widget.data; - final imageData = this.imageData; - if (mode == _ImageMode.url && data != null) { - provider = CachedNetworkImageProvider(data); - } else if (mode == _ImageMode.base64 && imageData != null) { - provider = MemoryImage(imageData); - } else { - provider = null; - } - return ModalImageViewer( - child: provider == null ? buildBrokenImage() : buildImage(provider), - ); - } - - Widget buildImage(ImageProvider provider) { - return Image( - image: provider, - loadingBuilder: (BuildContext context, Widget child, ImageChunkEvent? loadingProgress) { - if (loadingProgress == null) { - return child; - } else { - final current = loadingProgress.cumulativeBytesLoaded; - final total = loadingProgress.expectedTotalBytes; - if (total == null || total == 0) { - return const CircularProgressIndicator.adaptive(); - } else { - return CircularProgressIndicator(value: current / total); - } - } - }, - errorBuilder: (ctx, error, stacktrace) { - return buildBrokenImage(); - }, - ); - } - - Widget buildBrokenImage() { - return const FittedBox( - fit: BoxFit.fill, - child: Icon(Icons.broken_image_rounded), - ); - } -} - -class ImageViewPage extends StatelessWidget { - final String? data; - final String? title; - - const ImageViewPage( - this.data, { - super.key, - this.title, - }); - - @override - Widget build(BuildContext context) { - // TODO: Save the image. - return Scaffold( - appBar: AppBar( - title: (title ?? _i18n.untitled).text(), - ), - body: ImageView(data).center(), - ); - } -} diff --git a/lib/widgets/lazy_list.dart b/lib/widgets/lazy_list.dart deleted file mode 100644 index edc81bd59..000000000 --- a/lib/widgets/lazy_list.dart +++ /dev/null @@ -1,86 +0,0 @@ -import 'package:flutter/widgets.dart'; -// steal from "https://github.com/QuirijnGB/lazy-load-scrollview" - -// ignore: constant_identifier_names -enum LoadingStatus { LOADING, STABLE } - -/// Signature for EndOfPageListeners -typedef EndOfPageListenerCallback = void Function(); - -/// A widget that wraps a [Widget] and will trigger [onEndOfPage] when it -/// reaches the bottom of the list -class LazyColumn extends StatefulWidget { - /// The [Widget] that this widget watches for changes on - final Widget child; - - /// Called when the [child] reaches the end of the list - final EndOfPageListenerCallback onEndOfPage; - - /// The offset to take into account when triggering [onEndOfPage] in pixels - final int scrollOffset; - - /// Used to determine if loading of new data has finished. You should use set this if you aren't using a FutureBuilder or StreamBuilder - final bool isLoading; - - /// Prevented update nested listview with other axis direction - final Axis scrollDirection; - - @override - State createState() => LazyColumnState(); - - const LazyColumn({ - super.key, - required this.child, - required this.onEndOfPage, - this.scrollDirection = Axis.vertical, - this.isLoading = false, - this.scrollOffset = 100, - }); -} - -class LazyColumnState extends State { - LoadingStatus loadMoreStatus = LoadingStatus.STABLE; - - @override - void didUpdateWidget(LazyColumn oldWidget) { - super.didUpdateWidget(oldWidget); - if (!widget.isLoading) { - loadMoreStatus = LoadingStatus.STABLE; - } - } - - @override - Widget build(BuildContext context) { - return NotificationListener( - child: widget.child, - onNotification: (notification) => _onNotification(notification, context), - ); - } - - bool _onNotification(ScrollNotification notification, BuildContext context) { - if (widget.scrollDirection == notification.metrics.axis) { - if (notification is ScrollUpdateNotification) { - if (notification.metrics.maxScrollExtent > notification.metrics.pixels && - notification.metrics.maxScrollExtent - notification.metrics.pixels <= widget.scrollOffset) { - _loadMore(); - } - return true; - } - - if (notification is OverscrollNotification) { - if (notification.overscroll > 0) { - _loadMore(); - } - return true; - } - } - return false; - } - - void _loadMore() { - if (loadMoreStatus == LoadingStatus.STABLE) { - loadMoreStatus = LoadingStatus.LOADING; - widget.onEndOfPage(); - } - } -} diff --git a/lib/widgets/markdown.dart b/lib/widgets/markdown.dart deleted file mode 100644 index b1e29786b..000000000 --- a/lib/widgets/markdown.dart +++ /dev/null @@ -1,31 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:markdown/markdown.dart'; - -import 'html.dart'; - -class FeaturedMarkdownWidget extends StatelessWidget { - final String data; - - const FeaturedMarkdownWidget({ - super.key, - required this.data, - }); - - @override - Widget build(BuildContext context) { - final html = markdownToHtml( - data, - inlineSyntaxes: [ - InlineHtmlSyntax(), - StrikethroughSyntax(), - AutolinkExtensionSyntax(), - EmojiSyntax(), - ], - blockSyntaxes: const [ - FencedCodeBlockSyntax(), - TableSyntax(), - ], - ); - return RestyledHtmlWidget(html); - } -} diff --git a/lib/widgets/modal_image_view.dart b/lib/widgets/modal_image_view.dart deleted file mode 100644 index 0cf4aa1db..000000000 --- a/lib/widgets/modal_image_view.dart +++ /dev/null @@ -1,95 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; - -class ModalImageViewer extends StatelessWidget { - final Widget child; - final Color backgroundColor; - final Object? hereTag; - - const ModalImageViewer({ - super.key, - required this.child, - this.backgroundColor = Colors.black, - this.hereTag, - }); - - @override - Widget build(BuildContext context) { - final tag = hereTag ?? UniqueKey(); - return Hero( - tag: tag, - child: GestureDetector( - onTap: () { - Navigator.push( - context, - PageRouteBuilder( - opaque: false, - pageBuilder: (BuildContext context, _, __) { - return FullScreenViewer( - heroTag: tag, - backgroundColor: backgroundColor, - child: child, - ); - }, - ), - ); - }, - child: child, - ), - ); - } -} - -class FullScreenViewer extends StatelessWidget { - final Widget child; - final Color backgroundColor; - final Object heroTag; - - const FullScreenViewer({ - super.key, - required this.child, - required this.heroTag, - this.backgroundColor = Colors.black, - }); - - @override - Widget build(BuildContext context) { - return Hero( - tag: heroTag, - child: Scaffold( - backgroundColor: backgroundColor, - body: Stack( - children: [ - Positioned.fill( - child: GestureDetector( - onDoubleTap: () { - context.pop(); - }, - child: InteractiveViewer( - maxScale: 5, - minScale: 0.5, - boundaryMargin: const EdgeInsets.all(double.infinity), - child: child, - ), - ), - ), - Align( - alignment: Alignment.topRight, - child: PlatformIconButton( - icon: Icon( - context.icons.clear, - ), - onPressed: () { - Navigator.of(context).pop(); - }, - ).padAll(16), - ).safeArea(), - ], - ), - ), - ); - } -} diff --git a/lib/widgets/not_found.dart b/lib/widgets/not_found.dart deleted file mode 100644 index ed3c9981e..000000000 --- a/lib/widgets/not_found.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:sit/settings/dev.dart'; - -class NotFoundPage extends StatelessWidget { - final String routeName; - - const NotFoundPage(this.routeName, {super.key}); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: _i18n.title.tr().text(), - ), - body: LeavingBlank( - icon: Icons.browser_not_supported, - desc: Dev.on ? routeName : _i18n.subtitle, - ), - ); - } -} - -const _i18n = _I18n(); - -class _I18n { - const _I18n(); - - static const ns = "404"; - - String get title => "$ns.title"; - - String get subtitle => "$ns.subtitle"; -} diff --git a/lib/widgets/page_grouper.dart b/lib/widgets/page_grouper.dart deleted file mode 100644 index 576b24c1d..000000000 --- a/lib/widgets/page_grouper.dart +++ /dev/null @@ -1,251 +0,0 @@ -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:rettulf/rettulf.dart'; - -// steal from "https://github.com/Akifcan/flutter_pagination" -class PageGrouper extends StatefulWidget { - final SkipBtnStyle preBtnStyles; - final PageBtnStyles paginateButtonStyles; - final bool useSkipButton; - final int currentPageIndex; - final int totalPage; - final int btnPerGroup; - final double? width; - final double? height; - final Function(int number) onPageChange; - - const PageGrouper({ - super.key, - this.width, - this.height, - this.useSkipButton = true, - required this.preBtnStyles, - required this.paginateButtonStyles, - required this.onPageChange, - required this.totalPage, - required this.btnPerGroup, - required this.currentPageIndex, - }); - - @override - State createState() => _PageGrouperState(); -} - -class _PageGrouperState extends State { - late PageController pageController; - List> groupedPages = []; - double defaultHeight = 50; - - void groupPageBtn() { - final btnPerGroup = min(widget.btnPerGroup, widget.totalPage); - List curGroup = []; - setState(() { - groupedPages = []; - - for (int i = 0; i < widget.totalPage; i++) { - curGroup.add(i); - if (curGroup.length >= btnPerGroup) { - groupedPages.add(curGroup); - curGroup = []; - } - } - if (curGroup.isNotEmpty) { - groupedPages.add(curGroup); - } - }); - } - - @override - Widget build(BuildContext context) { - groupPageBtn(); - pageController = PageController(); - return buildGroupedChild(context); - } - - Widget buildGroupedChild(BuildContext ctx) { - return [ - if (widget.useSkipButton) - _SkipBtn( - buttonStyles: widget.preBtnStyles, - height: widget.height ?? defaultHeight, - onTap: () { - pageController.previousPage( - duration: const Duration(milliseconds: 500), curve: Curves.fastEaseInToSlowEaseOut); - }, - isPre: true, - ), - PageView.builder( - controller: pageController, - itemCount: groupedPages.where((element) => element.isNotEmpty).length, - itemBuilder: (_, index) { - return Row( - children: groupedPages[index].map((e) { - return _PageBtn( - active: widget.currentPageIndex == e + 1, - buttonStyles: widget.paginateButtonStyles, - height: widget.height ?? defaultHeight, - page: e + 1, - color: e + 1 == widget.currentPageIndex ? Colors.blueGrey : Colors.blue, - onTap: (number) { - widget.onPageChange(number); - }).expanded(); - }).toList(), - ); - }).expanded(), - if (widget.useSkipButton) - _SkipBtn( - buttonStyles: widget.preBtnStyles.symmetricL2R(), - height: widget.height ?? defaultHeight, - onTap: () { - pageController.nextPage(duration: const Duration(milliseconds: 500), curve: Curves.fastEaseInToSlowEaseOut); - }, - isPre: false, - ), - ].row().sized( - w: widget.width ?? ctx.mediaQuery.size.width, - h: 60, - ); - } -} - -class _SkipBtn extends StatelessWidget { - final SkipBtnStyle buttonStyles; - final double height; - final bool isPre; - final VoidCallback onTap; - - const _SkipBtn({ - super.key, - required this.buttonStyles, - required this.height, - required this.isPre, - required this.onTap, - }); - - final double radius = 20; - - @override - Widget build(BuildContext context) { - return Material( - clipBehavior: Clip.hardEdge, - borderRadius: buttonStyles.borderRadius ?? BorderRadius.circular(0), - color: context.theme.colorScheme.background, - child: InkWell( - onTap: onTap, - child: Padding( - padding: const EdgeInsets.all(8.0), - child: isPre - ? buttonStyles.icon ?? const Icon(Icons.chevron_left, size: 35) - : buttonStyles.icon ?? const Icon(Icons.chevron_right, size: 35), - ), - ), - ).sized(h: height); - } -} - -class _PageBtn extends StatelessWidget { - final bool active; - final double height; - final int page; - final Color color; - final Function(int number) onTap; - final PageBtnStyles buttonStyles; - - const _PageBtn({ - super.key, - required this.active, - required this.buttonStyles, - required this.page, - required this.height, - required this.color, - required this.onTap, - }); - - @override - Widget build(BuildContext context) { - return Material( - clipBehavior: Clip.hardEdge, - borderRadius: buttonStyles.borderRadius ?? BorderRadius.circular(0), - color: active ? context.colorScheme.surfaceVariant : buttonStyles.bgColor ?? context.theme.colorScheme.background, - child: InkWell( - onTap: () { - onTap(page); - }, - child: page - .toString() - .text(style: active ? buttonStyles.activeTextStyle : buttonStyles.textStyle, textAlign: TextAlign.center) - .center(), - ), - ).sized( - h: height, - w: MediaQuery.of(context).size.width, - ); - } -} - -class PageBtnStyles { - final double? fontSize; - final BorderRadius? borderRadius; - final Color? bgColor; - final Color? activeBgColor; - final TextStyle? textStyle; - final TextStyle? activeTextStyle; - - PageBtnStyles({ - this.fontSize, - this.bgColor, - this.activeBgColor, - this.borderRadius, - this.textStyle, - this.activeTextStyle, - }); - - PageBtnStyles copyWith({ - double? fontSize, - BorderRadius? borderRadius, - Color? bgColor, - Color? activeBgColor, - TextStyle? textStyle, - TextStyle? activeTextStyle, - }) => - PageBtnStyles( - fontSize: fontSize ?? this.fontSize, - bgColor: bgColor ?? this.bgColor, - activeBgColor: activeBgColor ?? this.activeBgColor, - borderRadius: borderRadius ?? this.borderRadius, - textStyle: textStyle ?? this.textStyle, - activeTextStyle: activeTextStyle ?? this.activeTextStyle, - ); -} - -class SkipBtnStyle { - final Icon? icon; - final BorderRadius? borderRadius; - final Color? color; - - SkipBtnStyle({ - this.icon, - this.borderRadius, - this.color, - }); - - SkipBtnStyle copyWith({ - Icon? icon, - BorderRadius? borderRadius, - Color? color, - }) => - SkipBtnStyle( - icon: icon ?? this.icon, - borderRadius: borderRadius ?? this.borderRadius, - color: color ?? this.color, - ); - - SkipBtnStyle symmetricL2R() => copyWith(borderRadius: borderRadius?.symmetricL2R()); -} - -extension _BorderRadiusEx on BorderRadius { - BorderRadius symmetricL2R() { - return BorderRadius.only(topRight: topLeft, bottomRight: bottomLeft); - } -} diff --git a/lib/widgets/placeholder_future_builder.dart b/lib/widgets/placeholder_future_builder.dart deleted file mode 100644 index acbb1ab05..000000000 --- a/lib/widgets/placeholder_future_builder.dart +++ /dev/null @@ -1,82 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; - -enum FutureState { loading, failed, end } - -typedef PlaceholderWidgetBuilder = Widget Function(BuildContext context, T? data, FutureState state); - -class PlaceholderBuilderController { - late _PlaceholderFutureBuilderState _state; - - void _bindState(State> state) => _state = state as _PlaceholderFutureBuilderState; - - Future refresh() => _state.refresh(); -} - -class PlaceholderFutureBuilder extends StatefulWidget { - final Future? future; - final PlaceholderWidgetBuilder builder; - final PlaceholderBuilderController? controller; - - final Future Function()? futureGetter; - - const PlaceholderFutureBuilder({ - super.key, - this.future, - required this.builder, - this.controller, - this.futureGetter, - }); - - @override - State> createState() => _PlaceholderFutureBuilderState(); -} - -class _PlaceholderFutureBuilderState extends State> { - Completer completer = Completer(); - - @override - void initState() { - widget.controller?._bindState(this); - super.initState(); - } - - @override - Widget build(BuildContext context) { - return FutureBuilder( - key: UniqueKey(), - future: fetchData(), - builder: (context, snapshot) { - if (snapshot.connectionState == ConnectionState.done) { - if (snapshot.hasData) { - return widget.builder(context, snapshot.data, FutureState.end); - } else if (snapshot.hasError) { - return widget.builder(context, null, FutureState.failed); - } else { - if (!completer.isCompleted) completer.complete(); - throw Exception('snapshot has no data or error'); - } - } - return widget.builder(context, null, FutureState.loading); - }, - ); - } - - Future refresh() { - setState(() {}); - return completer.future; - } - - Future fetchData() async { - var getter = widget.futureGetter; - if (getter != null) { - return await getter(); - } - var future = widget.future; - if (future != null) { - return await future; - } - throw UnsupportedError('PlaceholderFutureBuilder requires a Future or FutureGetter'); - } -} diff --git a/lib/widgets/search.dart b/lib/widgets/search.dart deleted file mode 100644 index 94a4054bc..000000000 --- a/lib/widgets/search.dart +++ /dev/null @@ -1,237 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:rettulf/rettulf.dart'; - -typedef CandidateBuilder = Widget Function( - BuildContext ctx, - List matchedItems, - String query, - void Function(T item) selectIt, -); -typedef HistoryBuilder = Widget Function( - BuildContext ctx, - List items, - void Function(T item) selectIt, -); -typedef Stringifier = String Function(T item); -typedef QueryProcessor = String Function(String raw); -typedef ItemPredicate = bool Function(String query, T item); -typedef HighlightedCandidateBuilder = Widget Function( - BuildContext ctx, - List matchedItems, - (String full, TextRange highlighted) Function(T item) highlight, - void Function(T item) selectIt, -); -typedef HighlightedHistoryBuilder = Widget Function( - BuildContext ctx, - List items, - String Function(T item) stringify, - void Function(T item) selectIt, -); - -class ItemSearchDelegate extends SearchDelegate { - final ({ValueNotifier> history, HistoryBuilder builder})? searchHistory; - final List candidates; - final CandidateBuilder candidateBuilder; - final ItemPredicate predicate; - final QueryProcessor? queryProcessor; - final double maxCrossAxisExtent; - final double childAspectRatio; - final String? invalidSearchTip; - - /// If this is given, it means user can send a empty query without suggestion limitation. - /// If so, this object will be returned. - final Object? emptyIndicator; - - ItemSearchDelegate({ - required this.candidateBuilder, - required this.candidates, - required this.predicate, - this.searchHistory, - this.queryProcessor, - required this.maxCrossAxisExtent, - required this.childAspectRatio, - this.emptyIndicator, - this.invalidSearchTip, - super.keyboardType, - super.searchFieldLabel, - super.searchFieldStyle, - super.searchFieldDecorationTheme, - super.textInputAction, - }); - - factory ItemSearchDelegate.highlight({ - required HighlightedCandidateBuilder candidateBuilder, - required List candidates, - required HighlightedHistoryBuilder historyBuilder, - - /// Using [String.contains] by default. - ItemPredicate? predicate, - ValueNotifier>? searchHistory, - QueryProcessor? queryProcessor, - required double maxCrossAxisExtent, - required double childAspectRatio, - Object? emptyIndicator, - String? invalidSearchTip, - - /// Using [Object.toString] by default. - Stringifier? stringifier, - TextInputType? keyboardType, - String? searchFieldLabel, - TextStyle? searchFieldStyle, - InputDecorationTheme? searchFieldDecorationTheme, - TextInputAction textInputAction = TextInputAction.search, - }) { - return ItemSearchDelegate( - searchFieldLabel: searchFieldLabel, - searchFieldStyle: searchFieldStyle, - searchFieldDecorationTheme: searchFieldDecorationTheme, - keyboardType: keyboardType, - maxCrossAxisExtent: maxCrossAxisExtent, - childAspectRatio: childAspectRatio, - queryProcessor: queryProcessor, - candidates: candidates, - invalidSearchTip: invalidSearchTip, - emptyIndicator: emptyIndicator, - searchHistory: searchHistory == null - ? null - : ( - history: searchHistory, - builder: (ctx, items, selectIt) { - return historyBuilder( - ctx, - items, - (item) => stringifier?.call(item) ?? item.toString(), - selectIt, - ); - } - ), - predicate: (query, item) { - if (query.isEmpty) return false; - final candidate = stringifier?.call(item) ?? item.toString(); - if (predicate == null) return candidate.contains(query); - return predicate(query, candidate); - }, - candidateBuilder: (ctx, items, query, selectIt) { - return candidateBuilder( - ctx, - items, - (item) { - final candidate = stringifier?.call(item) ?? item.toString(); - final highlighted = findSelected(full: candidate, selected: query); - return (candidate, highlighted); - }, - selectIt, - ); - }, - ); - } - - String getRealQuery() => queryProcessor?.call(query) ?? query; - - @override - List? buildActions(BuildContext context) { - return [ - PlatformIconButton( - icon: Icon(context.icons.clear), - onPressed: () => query = "", - ) - ]; - } - - @override - Widget? buildLeading(BuildContext context) { - return PlatformIconButton( - icon: AnimatedIcon(icon: AnimatedIcons.menu_arrow, progress: transitionAnimation), - onPressed: () => close(context, null), - ); - } - - @override - Widget buildResults(BuildContext context) { - final query = getRealQuery(); - if (query.isEmpty && emptyIndicator != null) { - return const SizedBox(); - } - if (T == String && predicate(query, query as T)) { - if (candidates.contains(query)) { - return const SizedBox(); - } else { - return LeavingBlank(icon: Icons.search_off_rounded, desc: invalidSearchTip); - } - } - return LeavingBlank(icon: Icons.search_off_rounded, desc: invalidSearchTip); - } - - @override - void showResults(BuildContext context) { - super.showResults(context); - final query = getRealQuery(); - if (query.isEmpty && emptyIndicator != null) { - close(context, emptyIndicator); - return; - } - if (T == String && predicate(query, query as T) && candidates.contains(query)) { - close(context, query); - return; - } - } - - @override - Widget buildSuggestions(BuildContext context) { - final query = getRealQuery(); - final searchHistory = this.searchHistory; - if (query.isEmpty && searchHistory != null) { - final (:history, :builder) = searchHistory; - return history >> (ctx, value) => builder(context, value, (item) => close(context, item)); - } else { - final query = getRealQuery(); - final matched = candidates.where((candidate) => predicate(query, candidate)).toList(); - return candidateBuilder(context, matched, query, (candidate) => close(context, candidate)); - } - } -} - -TextRange findSelected({ - required String full, - required String selected, -}) { - final start = full.indexOf(selected); - if (start < 0) return TextRange.empty; - return TextRange(start: start, end: start + selected.length); -} - -class HighlightedText extends StatelessWidget { - final String full; - final TextRange highlighted; - final TextStyle? baseStyle; - - const HighlightedText({ - super.key, - required this.full, - this.highlighted = TextRange.empty, - this.baseStyle, - }); - - @override - Widget build(BuildContext context) { - final baseStyle = this.baseStyle ?? const TextStyle(); - final plainStyle = baseStyle.copyWith(color: baseStyle.color?.withOpacity(0.5)); - final highlightedStyle = baseStyle.copyWith(color: context.colorScheme.primary, fontWeight: FontWeight.bold); - return RichText( - text: TextSpan( - children: !highlighted.isValid || !highlighted.isNormalized - ? [ - TextSpan(text: full, style: highlightedStyle), - ] - : [ - TextSpan(text: highlighted.textBefore(full), style: plainStyle), - TextSpan(text: highlighted.textInside(full), style: highlightedStyle), - TextSpan(text: highlighted.textAfter(full), style: plainStyle), - ], - ), - ); - } -} diff --git a/lib/widgets/webview/injectable.dart b/lib/widgets/webview/injectable.dart deleted file mode 100644 index fb3995c46..000000000 --- a/lib/widgets/webview/injectable.dart +++ /dev/null @@ -1,166 +0,0 @@ -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:sit/design/widgets/common.dart'; -import 'package:universal_platform/universal_platform.dart'; -import 'package:url_launcher/url_launcher_string.dart'; -import 'package:webview_flutter/webview_flutter.dart'; - -typedef JavaScriptMessageCallback = void Function(JavaScriptMessage msg); - -class Injection { - /// js注入的url匹配规则 - final bool Function(String url)? matcher; - - /// 若为空,则表示不注入 - final String? js; - - /// 异步js字符串,若为空,则表示不注入 - final Future? asyncJs; - - const Injection({ - this.matcher, - this.js, - this.asyncJs, - }); -} - -class InjectableWebView extends StatefulWidget { - final String initialUrl; - final WebViewController? controller; - - /// JavaScript injection when page started. - final List? pageStartedInjections; - - /// JavaScript injection when page finished. - final List? pageFinishedInjections; - - /// hooks - final void Function(String url)? onPageStarted; - final void Function(String url)? onPageFinished; - final void Function(int progress)? onProgress; - - /// 注入cookies - final List? initialCookies; - - /// 自定义 UA - final String? userAgent; - - final JavaScriptMode mode; - - /// 暴露dart回调到js接口 - final Map? javaScriptChannels; - - const InjectableWebView({ - super.key, - required this.initialUrl, - this.controller, - this.mode = JavaScriptMode.unrestricted, - this.pageStartedInjections, - this.pageFinishedInjections, - this.onPageStarted, - this.onPageFinished, - this.onProgress, - this.userAgent, - this.initialCookies, - this.javaScriptChannels, - }); - - @override - State createState() => _InjectableWebViewState(); -} - -class _InjectableWebViewState extends State { - late WebViewController controller; - final cookieManager = WebViewCookieManager(); - - @override - void initState() { - super.initState(); - controller = (widget.controller ?? WebViewController()) - ..setJavaScriptMode(widget.mode) - ..setUserAgent(widget.userAgent) - ..setNavigationDelegate(NavigationDelegate( - onWebResourceError: onResourceError, - onPageStarted: (String url) async { - debugPrint('"$url" starts loading.'); - await Future.wait(widget.pageStartedInjections.matching(url).map(injectJs)); - widget.onPageStarted?.call(url); - }, - onPageFinished: (String url) async { - debugPrint('"$url" loaded.'); - await Future.wait(widget.pageFinishedInjections.matching(url).map(injectJs)); - widget.onPageFinished?.call(url); - }, - onProgress: widget.onProgress, - )); - final channels = widget.javaScriptChannels; - if (channels != null) { - for (final entry in channels.entries) { - controller.addJavaScriptChannel(entry.key, onMessageReceived: entry.value); - } - } - final cookies = widget.initialCookies; - if (cookies != null) { - for (final cookie in cookies) { - cookieManager.setCookie(cookie); - } - } - controller.loadRequest(Uri.parse(widget.initialUrl)); - } - - @override - Widget build(BuildContext context) { - if (UniversalPlatform.isDesktop) { - return LeavingBlank(icon: Icons.desktop_access_disabled_rounded); - } - return WebViewWidget( - controller: controller, - ); - } - - /// 根据当前url筛选所有符合条件的js脚本,执行js注入 - Future injectJs(Injection injection) async { - var injected = false; - // 同步获取js代码 - if (injection.js != null) { - injected = true; - await controller.runJavaScript(injection.js!); - } - // 异步获取js代码 - if (injection.asyncJs != null) { - injected = true; - String? js = await injection.asyncJs; - if (js != null) { - await controller.runJavaScript(js); - } - } - if (injected) { - debugPrint('JavaScript code was injected.'); - } - } - - void onResourceError(WebResourceError error) { - if (error.description.startsWith('http')) { - launchUrlString( - error.description, - mode: LaunchMode.externalApplication, - ); - controller.goBack(); - } - } -} - -extension _InjectionsX on List? { - /// 获取该url匹配的所有注入项 - Iterable matching(String url) sync* { - final injections = this; - if (injections != null) { - for (final injection in injections) { - if (injection.matcher?.call(url) != false) { - yield injection; - } - } - } - } -} diff --git a/lib/widgets/webview/page.dart b/lib/widgets/webview/page.dart deleted file mode 100644 index 1019e98b1..000000000 --- a/lib/widgets/webview/page.dart +++ /dev/null @@ -1,204 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; -import 'package:sit/design/adaptive/multiplatform.dart'; -import 'package:sit/l10n/common.dart'; -import 'package:sit/utils/error.dart'; -import 'package:sit/widgets/webview/injectable.dart'; -import 'package:rettulf/rettulf.dart'; -import 'package:share_plus/share_plus.dart'; -import 'package:text_scroll/text_scroll.dart'; -import 'package:url_launcher/url_launcher_string.dart'; -import 'package:webview_flutter/webview_flutter.dart'; - -// TODO: remove this -const _kUserAgent = - "Mozilla/5.0 (Linux; Android 10; HMA-AL00 Build/HUAWEIHMA-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.106 Mobile Safari/537.36"; - -// TODO: Support proxy -class WebViewPage extends StatefulWidget { - /// 初始的url - final String initialUrl; - - /// 固定的标题名?若为null则自动获取目标页面标题 - final String? fixedTitle; - - /// JavaScript injection when page started. - final List? pageStartedInjections; - - /// JavaScript injection when page finished. - final List? pageFinishedInjections; - - /// 显示分享按钮(默认不显示) - final bool showSharedButton; - - /// 显示刷新按钮(默认显示) - final bool showRefreshButton; - - /// 显示在浏览器中打开按钮(默认不显示) - final bool showOpenInBrowser; - - /// 浮动按钮控件 - final Widget? floatingActionButton; - - /// 自定义 UA - final String? userAgent; - - final WebViewController? controller; - - /// hooks - final void Function(String url)? onPageStarted; - final void Function(String url)? onPageFinished; - final void Function(int progress)? onProgress; - - final Map? javaScriptChannels; - - /// 自定义Action按钮 - final List? otherActions; - - /// 夜间模式 - final bool followDarkMode; - - /// 注入cookies - final List initialCookies; - final Widget? bottomNavigationBar; - - const WebViewPage({ - super.key, - required this.initialUrl, - this.controller, - this.fixedTitle, - this.pageStartedInjections, - this.pageFinishedInjections, - this.floatingActionButton, - this.showSharedButton = true, - this.showRefreshButton = true, - this.showOpenInBrowser = true, - this.userAgent = _kUserAgent, - this.javaScriptChannels, - this.onPageStarted, - this.onPageFinished, - this.onProgress, - this.otherActions, - this.followDarkMode = false, - this.initialCookies = const [], - this.bottomNavigationBar, - }); - - @override - State createState() => _WebViewPageState(); -} - -class _WebViewPageState extends State { - late WebViewController controller; - late String? title = Uri.tryParse(widget.initialUrl)?.authority; - int progress = 0; - - @override - void initState() { - super.initState(); - controller = widget.controller ?? WebViewController(); - } - - void _onRefresh() async { - await controller.reload(); - } - - void _onShared() async { - final url = await controller.currentUrl(); - final uri = url == null ? Uri.tryParse(widget.initialUrl) : Uri.tryParse(url); - if (uri != null) { - Share.shareUri(uri); - } - } - - PreferredSizeWidget buildTopIndicator() { - return PreferredSize( - preferredSize: const Size.fromHeight(4), - child: LinearProgressIndicator( - value: progress / 100, - ), - ); - } - - @override - Widget build(BuildContext context) { - final actions = [ - if (widget.showRefreshButton) - PlatformIconButton( - onPressed: _onRefresh, - icon: Icon(context.icons.refresh), - ), - if (widget.showSharedButton) - PlatformIconButton( - onPressed: _onShared, - icon: Icon(context.icons.share), - ), - if (widget.showOpenInBrowser) - PlatformIconButton( - onPressed: () => launchUrlString( - widget.initialUrl, - mode: LaunchMode.externalApplication, - ), - icon: const Icon(Icons.open_in_browser), - ), - ...?widget.otherActions, - ]; - final curTitle = widget.fixedTitle ?? title ?? const CommonI18n().untitled; - return WillPopScope( - onWillPop: () async { - try { - final canGoBack = await controller.canGoBack(); - if (canGoBack) await controller.goBack(); - return !canGoBack; - } catch (error, stackTrack) { - debugPrintError(error, stackTrack); - return true; - } - }, - child: Scaffold( - appBar: AppBar( - title: TextScroll(curTitle), - actions: actions, - bottom: buildTopIndicator(), - ), - bottomNavigationBar: widget.bottomNavigationBar, - floatingActionButton: widget.floatingActionButton, - body: InjectableWebView( - initialUrl: widget.initialUrl, - controller: widget.controller, - onPageStarted: widget.onPageFinished, - onPageFinished: (url) async { - if (!mounted) return; - if (widget.fixedTitle == null) { - final newTitle = await controller.getTitle(); - if (newTitle != title && newTitle != null && newTitle.isNotEmpty) { - setState(() { - title = newTitle; - }); - } - } - widget.onPageFinished?.call(url); - }, - onProgress: (value) { - if (!mounted) return; - widget.onProgress?.call(value); - setState(() => progress = value % 100); - }, - pageStartedInjections: widget.pageStartedInjections, - pageFinishedInjections: [ - if (widget.followDarkMode && context.isDarkMode) - Injection( - matcher: (url) => true, - asyncJs: rootBundle.loadString('assets/webview/dark.js'), - ), - if (widget.pageFinishedInjections != null) ...widget.pageFinishedInjections!, - ], - javaScriptChannels: widget.javaScriptChannels, - userAgent: widget.userAgent, - initialCookies: widget.initialCookies, - ), - ), - ); - } -} diff --git a/linux/.gitignore b/linux/.gitignore deleted file mode 100644 index d3896c984..000000000 --- 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 f6c413f91..000000000 --- a/linux/CMakeLists.txt +++ /dev/null @@ -1,116 +0,0 @@ -cmake_minimum_required(VERSION 3.10) -project(runner LANGUAGES CXX) - -set(BINARY_NAME "sit_life") -set(APPLICATION_ID "life.mysit.SITLife") - -cmake_policy(SET CMP0063 NEW) - -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() - -# Configure build 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. -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() - -set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") - -# Flutter library and tool build rules. -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}") - -# Application build -add_executable(${BINARY_NAME} - "main.cc" - "my_application.cc" - "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" -) -apply_standard_settings(${BINARY_NAME}) -target_link_libraries(${BINARY_NAME} PRIVATE flutter) -target_link_libraries(${BINARY_NAME} PRIVATE PkgConfig::GTK) -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) - -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. -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 33fd5801e..000000000 --- a/linux/flutter/CMakeLists.txt +++ /dev/null @@ -1,87 +0,0 @@ -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/main.cc b/linux/main.cc deleted file mode 100644 index e7c5c5437..000000000 --- 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 54ad76287..000000000 --- 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, "SIT Life"); - 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, "SIT Life"); - } - - 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 72271d5e4..000000000 --- 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 746adbb6b..000000000 --- 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 4b81f9b2d..000000000 --- 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 5caa9d157..000000000 --- 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/Podfile b/macos/Podfile deleted file mode 100644 index 6feac427c..000000000 --- a/macos/Podfile +++ /dev/null @@ -1,43 +0,0 @@ -platform :osx, '10.14' - -# 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.14' - end - end -end diff --git a/macos/Podfile.lock b/macos/Podfile.lock deleted file mode 100644 index 827fc43c7..000000000 --- a/macos/Podfile.lock +++ /dev/null @@ -1,153 +0,0 @@ -PODS: - - app_links (1.0.0): - - FlutterMacOS - - audio_session (0.0.1): - - FlutterMacOS - - connectivity_plus (0.0.1): - - Flutter - - FlutterMacOS - - device_info_plus (0.0.1): - - FlutterMacOS - - dynamic_color (0.0.2): - - FlutterMacOS - - file_selector_macos (0.0.1): - - FlutterMacOS - - flutter_image_compress_macos (1.0.0): - - FlutterMacOS - - FlutterMacOS (1.0.0) - - irondash_engine_context (0.0.1): - - FlutterMacOS - - just_audio (0.0.1): - - FlutterMacOS - - mobile_scanner (5.0.0): - - FlutterMacOS - - package_info_plus (0.0.1): - - FlutterMacOS - - path_provider_foundation (0.0.1): - - Flutter - - FlutterMacOS - - screen_retriever (0.0.1): - - FlutterMacOS - - share_plus (0.0.1): - - FlutterMacOS - - shared_preferences_foundation (0.0.1): - - Flutter - - FlutterMacOS - - sqflite (0.0.3): - - Flutter - - FlutterMacOS - - super_native_extensions (0.0.1): - - FlutterMacOS - - system_theme (0.0.1): - - FlutterMacOS - - url_launcher_macos (0.0.1): - - FlutterMacOS - - video_player_avfoundation (0.0.1): - - Flutter - - FlutterMacOS - - wakelock_plus (0.0.1): - - FlutterMacOS - - window_manager (0.2.0): - - FlutterMacOS - -DEPENDENCIES: - - app_links (from `Flutter/ephemeral/.symlinks/plugins/app_links/macos`) - - audio_session (from `Flutter/ephemeral/.symlinks/plugins/audio_session/macos`) - - connectivity_plus (from `Flutter/ephemeral/.symlinks/plugins/connectivity_plus/darwin`) - - device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`) - - dynamic_color (from `Flutter/ephemeral/.symlinks/plugins/dynamic_color/macos`) - - file_selector_macos (from `Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos`) - - flutter_image_compress_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_image_compress_macos/macos`) - - FlutterMacOS (from `Flutter/ephemeral`) - - irondash_engine_context (from `Flutter/ephemeral/.symlinks/plugins/irondash_engine_context/macos`) - - just_audio (from `Flutter/ephemeral/.symlinks/plugins/just_audio/macos`) - - mobile_scanner (from `Flutter/ephemeral/.symlinks/plugins/mobile_scanner/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`) - - screen_retriever (from `Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos`) - - share_plus (from `Flutter/ephemeral/.symlinks/plugins/share_plus/macos`) - - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`) - - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/darwin`) - - super_native_extensions (from `Flutter/ephemeral/.symlinks/plugins/super_native_extensions/macos`) - - system_theme (from `Flutter/ephemeral/.symlinks/plugins/system_theme/macos`) - - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) - - video_player_avfoundation (from `Flutter/ephemeral/.symlinks/plugins/video_player_avfoundation/darwin`) - - wakelock_plus (from `Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos`) - - window_manager (from `Flutter/ephemeral/.symlinks/plugins/window_manager/macos`) - -EXTERNAL SOURCES: - app_links: - :path: Flutter/ephemeral/.symlinks/plugins/app_links/macos - audio_session: - :path: Flutter/ephemeral/.symlinks/plugins/audio_session/macos - connectivity_plus: - :path: Flutter/ephemeral/.symlinks/plugins/connectivity_plus/darwin - device_info_plus: - :path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos - dynamic_color: - :path: Flutter/ephemeral/.symlinks/plugins/dynamic_color/macos - file_selector_macos: - :path: Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos - flutter_image_compress_macos: - :path: Flutter/ephemeral/.symlinks/plugins/flutter_image_compress_macos/macos - FlutterMacOS: - :path: Flutter/ephemeral - irondash_engine_context: - :path: Flutter/ephemeral/.symlinks/plugins/irondash_engine_context/macos - just_audio: - :path: Flutter/ephemeral/.symlinks/plugins/just_audio/macos - mobile_scanner: - :path: Flutter/ephemeral/.symlinks/plugins/mobile_scanner/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 - screen_retriever: - :path: Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos - share_plus: - :path: Flutter/ephemeral/.symlinks/plugins/share_plus/macos - shared_preferences_foundation: - :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin - sqflite: - :path: Flutter/ephemeral/.symlinks/plugins/sqflite/darwin - super_native_extensions: - :path: Flutter/ephemeral/.symlinks/plugins/super_native_extensions/macos - system_theme: - :path: Flutter/ephemeral/.symlinks/plugins/system_theme/macos - url_launcher_macos: - :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos - video_player_avfoundation: - :path: Flutter/ephemeral/.symlinks/plugins/video_player_avfoundation/darwin - wakelock_plus: - :path: Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos - window_manager: - :path: Flutter/ephemeral/.symlinks/plugins/window_manager/macos - -SPEC CHECKSUMS: - app_links: 10e0a0ab602ffaf34d142cd4862f29d34b303b2a - audio_session: dea1f41890dbf1718f04a56f1d6150fd50039b72 - connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db - device_info_plus: ce1b7762849d3ec103d0e0517299f2db7ad60720 - dynamic_color: 2eaa27267de1ca20d879fbd6e01259773fb1670f - file_selector_macos: 468fb6b81fac7c0e88d71317f3eec34c3b008ff9 - flutter_image_compress_macos: c26c3c13ea0f28ae6dea4e139b3292e7729f99f1 - FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 - irondash_engine_context: da62996ee25616d2f01bbeb85dc115d813359478 - just_audio: 9b67ca7b97c61cfc9784ea23cd8cc55eb226d489 - mobile_scanner: 359e3ac2f30c5d7ef8c6d5eb7cc9c285ee842254 - package_info_plus: fa739dd842b393193c5ca93c26798dff6e3d0e0c - path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c - screen_retriever: 59634572a57080243dd1bf715e55b6c54f241a38 - share_plus: 36537c04ce0c3e3f5bd297ce4318b6d5ee5fd6cf - shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695 - sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec - super_native_extensions: 85efee3a7495b46b04befcfc86ed12069264ebf3 - system_theme: c7b9f6659a5caa26c9bc2284da096781e9a6fcbc - url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95 - video_player_avfoundation: 2b4384f3b157206b5e150a0083cdc0c905d260d3 - wakelock_plus: 4783562c9a43d209c458cb9b30692134af456269 - window_manager: 3a1844359a6295ab1e47659b1a777e36773cd6e8 - -PODFILE CHECKSUM: ce7dbe26c78bfc7ba46736094c1e2d25982870fa - -COCOAPODS: 1.15.2 diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index d53b012af..000000000 --- a/macos/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,683 +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 */; }; - BBF5F89762A48F4B78F75560 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 31BC25393ADB1CDF5F664AD1 /* Pods_Runner.framework */; }; - EAB651C928EFC30000296F90 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = EAB651CB28EFC30000296F90 /* InfoPlist.strings */; }; -/* 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 */ - 0E9153046B361D34CB645F76 /* 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 = ""; }; - 31BC25393ADB1CDF5F664AD1 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 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 = ""; }; - 3360E23D23C18C7FCAAC779B /* 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 = ""; }; - 33CC10ED2044A3C60003C045 /* Mimir.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Mimir.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 = ""; }; - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; - 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; - AABBD71A10CD22ABCF03ED29 /* 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 = ""; }; - EAB651CA28EFC30000296F90 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; - EAB651CC28EFC30A00296F90 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/MainMenu.strings"; sourceTree = ""; }; - EAB651CD28EFC30B00296F90 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/InfoPlist.strings"; sourceTree = ""; }; - EAB651CE28EFC30F00296F90 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/MainMenu.strings"; sourceTree = ""; }; - EAB651CF28EFC30F00296F90 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/InfoPlist.strings"; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 33CC10EA2044A3C60003C045 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - BBF5F89762A48F4B78F75560 /* Pods_Runner.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 19EFB498F54B3878F1ED2C62 /* Pods */ = { - isa = PBXGroup; - children = ( - 3360E23D23C18C7FCAAC779B /* Pods-Runner.debug.xcconfig */, - 0E9153046B361D34CB645F76 /* Pods-Runner.release.xcconfig */, - AABBD71A10CD22ABCF03ED29 /* Pods-Runner.profile.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; - 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 */, - 19EFB498F54B3878F1ED2C62 /* Pods */, - ); - sourceTree = ""; - }; - 33CC10EE2044A3C60003C045 /* Products */ = { - isa = PBXGroup; - children = ( - 33CC10ED2044A3C60003C045 /* Mimir.app */, - ); - name = Products; - sourceTree = ""; - }; - 33CC11242044D66E0003C045 /* Resources */ = { - isa = PBXGroup; - children = ( - 33CC10F22044A3C60003C045 /* Assets.xcassets */, - 33CC10F42044A3C60003C045 /* MainMenu.xib */, - 33CC10F72044A3C60003C045 /* Info.plist */, - EAB651CB28EFC30000296F90 /* InfoPlist.strings */, - ); - 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 = ""; - }; - D73912EC22F37F3D000D13A0 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 31BC25393ADB1CDF5F664AD1 /* 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 = ( - A287D1D2D5940EB3BD59DF04 /* [CP] Check Pods Manifest.lock */, - 33CC10E92044A3C60003C045 /* Sources */, - 33CC10EA2044A3C60003C045 /* Frameworks */, - 33CC10EB2044A3C60003C045 /* Resources */, - 33CC110E2044A8840003C045 /* Bundle Framework */, - 3399D490228B24CF009A79C7 /* ShellScript */, - 5931A97FA1938FAA0E9F84A9 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 33CC11202044C79F0003C045 /* PBXTargetDependency */, - ); - name = Runner; - productName = Runner; - productReference = 33CC10ED2044A3C60003C045 /* Mimir.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 33CC10E52044A3C60003C045 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 0920; - LastUpgradeCheck = 1510; - ORGANIZATIONNAME = ""; - TargetAttributes = { - 33CC10EC2044A3C60003C045 = { - CreatedOnToolsVersion = 9.2; - LastSwiftMigration = 1100; - 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, - "zh-Hans", - "zh-Hant", - ); - 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 */, - EAB651C928EFC30000296F90 /* InfoPlist.strings 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"; - }; - 5931A97FA1938FAA0E9F84A9 /* [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; - }; - A287D1D2D5940EB3BD59DF04 /* [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 */, - EAB651CC28EFC30A00296F90 /* zh-Hans */, - EAB651CE28EFC30F00296F90 /* zh-Hant */, - ); - name = MainMenu.xib; - path = Runner; - sourceTree = ""; - }; - EAB651CB28EFC30000296F90 /* InfoPlist.strings */ = { - isa = PBXVariantGroup; - children = ( - EAB651CA28EFC30000296F90 /* en */, - EAB651CD28EFC30B00296F90 /* zh-Hans */, - EAB651CF28EFC30F00296F90 /* zh-Hant */, - ); - name = InfoPlist.strings; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 338D0CE9231458BD00FA5F75 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - 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.14; - 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; - ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 31; - DEVELOPMENT_TEAM = M5APZD5CKA; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "小应生活"; - INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - MARKETING_VERSION = 1.0.0; - PRODUCT_BUNDLE_IDENTIFIER = life.mysit.SITLife; - 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_LOCALIZABILITY_NONLOCALIZED = YES; - 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.14; - 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_LOCALIZABILITY_NONLOCALIZED = YES; - 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.14; - 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; - ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 31; - DEVELOPMENT_TEAM = M5APZD5CKA; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "小应生活"; - INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - MARKETING_VERSION = 1.0.0; - PRODUCT_BUNDLE_IDENTIFIER = life.mysit.SITLife; - 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; - ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 31; - DEVELOPMENT_TEAM = M5APZD5CKA; - INFOPLIST_FILE = Runner/Info.plist; - INFOPLIST_KEY_CFBundleDisplayName = "小应生活"; - INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - MARKETING_VERSION = 1.0.0; - PRODUCT_BUNDLE_IDENTIFIER = life.mysit.SITLife; - 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 18d981003..000000000 --- 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 00f3cc608..000000000 --- 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 21a3cc14c..000000000 --- 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 18d981003..000000000 --- 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 d53ef6437..000000000 --- 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/1024x1024.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/1024x1024.png deleted file mode 100644 index 67c2ee91e..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/1024x1024.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/128x128.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/128x128.png deleted file mode 100644 index 5110d0136..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/128x128.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/16x16.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/16x16.png deleted file mode 100644 index a1bc24035..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/16x16.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/256x256 1.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/256x256 1.png deleted file mode 100644 index be63d6397..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/256x256 1.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/256x256.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/256x256.png deleted file mode 100644 index be63d6397..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/256x256.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/32x32 1.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/32x32 1.png deleted file mode 100644 index 166eb676d..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/32x32 1.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/32x32.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/32x32.png deleted file mode 100644 index 166eb676d..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/32x32.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/512x512 1.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/512x512 1.png deleted file mode 100644 index 24b0b96ec..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/512x512 1.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/512x512.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/512x512.png deleted file mode 100644 index 24b0b96ec..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/512x512.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/64x64.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/64x64.png deleted file mode 100644 index 6471c9842..000000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/64x64.png and /dev/null differ 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 0c7d3fde1..000000000 --- a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "images" : [ - { - "filename" : "16x16.png", - "idiom" : "mac", - "scale" : "1x", - "size" : "16x16" - }, - { - "filename" : "32x32.png", - "idiom" : "mac", - "scale" : "2x", - "size" : "16x16" - }, - { - "filename" : "32x32 1.png", - "idiom" : "mac", - "scale" : "1x", - "size" : "32x32" - }, - { - "filename" : "64x64.png", - "idiom" : "mac", - "scale" : "2x", - "size" : "32x32" - }, - { - "filename" : "128x128.png", - "idiom" : "mac", - "scale" : "1x", - "size" : "128x128" - }, - { - "filename" : "256x256 1.png", - "idiom" : "mac", - "scale" : "2x", - "size" : "128x128" - }, - { - "filename" : "256x256.png", - "idiom" : "mac", - "scale" : "1x", - "size" : "256x256" - }, - { - "filename" : "512x512 1.png", - "idiom" : "mac", - "scale" : "2x", - "size" : "256x256" - }, - { - "filename" : "512x512.png", - "idiom" : "mac", - "scale" : "1x", - "size" : "512x512" - }, - { - "filename" : "1024x1024.png", - "idiom" : "mac", - "scale" : "2x", - "size" : "512x512" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/macos/Runner/Assets.xcassets/Contents.json b/macos/Runner/Assets.xcassets/Contents.json deleted file mode 100644 index 73c00596a..000000000 --- a/macos/Runner/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/macos/Runner/Base.lproj/MainMenu.xib b/macos/Runner/Base.lproj/MainMenu.xib deleted file mode 100644 index cab0afdb8..000000000 --- a/macos/Runner/Base.lproj/MainMenu.xib +++ /dev/null @@ -1,344 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/macos/Runner/Configs/AppInfo.xcconfig b/macos/Runner/Configs/AppInfo.xcconfig deleted file mode 100644 index 8356c8ce0..000000000 --- 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 = Mimir - -// The application's bundle identifier -PRODUCT_BUNDLE_IDENTIFIER = net.liplum.Mimir - -// The copyright displayed in application information -PRODUCT_COPYRIGHT = Copyright (C) 2023 Liplum diff --git a/macos/Runner/Configs/Debug.xcconfig b/macos/Runner/Configs/Debug.xcconfig deleted file mode 100644 index 36b0fd946..000000000 --- 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 dff4f4956..000000000 --- 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 42bcbf478..000000000 --- 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 d3d522562..000000000 --- a/macos/Runner/DebugProfile.entitlements +++ /dev/null @@ -1,18 +0,0 @@ - - - - - com.apple.security.app-sandbox - - com.apple.security.cs.allow-jit - - com.apple.security.device.camera - - com.apple.security.files.user-selected.read-only - - com.apple.security.network.client - - com.apple.security.network.server - - - diff --git a/macos/Runner/Info.plist b/macos/Runner/Info.plist deleted file mode 100644 index 77aa9eca1..000000000 --- a/macos/Runner/Info.plist +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDocumentTypes - - - CFBundleTypeIconSystemGenerated - 1 - CFBundleTypeName - Timetable document - CFBundleTypeRole - Editor - LSHandlerRank - Owner - LSItemContentTypes - - life.mysit.SITLife.timetable - - NSDocumentClass - NSDocument - - - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIconFile - - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - $(FLUTTER_BUILD_NAME) - CFBundleURLTypes - - - CFBundleURLName - SIT Life URL - CFBundleURLSchemes - - life.mysit - - - - CFBundleVersion - $(FLUTTER_BUILD_NUMBER) - LSHasLocalizedDisplayName - - LSMinimumSystemVersion - $(MACOSX_DEPLOYMENT_TARGET) - NSHumanReadableCopyright - $(PRODUCT_COPYRIGHT) - NSMainNibFile - MainMenu - NSPrincipalClass - NSApplication - UILaunchStoryboardName - - UTExportedTypeDeclarations - - - UTTypeConformsTo - - UTTypeDescription - Timetable document - UTTypeIcons - - UTTypeIdentifier - mysit.life.SITLife.timetable - UTTypeTagSpecification - - public.filename-extension - - timetable - - public.mime-type - - application/timetable - - - - - - diff --git a/macos/Runner/MainFlutterWindow.swift b/macos/Runner/MainFlutterWindow.swift deleted file mode 100644 index 2722837ec..000000000 --- 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 b657be125..000000000 --- a/macos/Runner/Release.entitlements +++ /dev/null @@ -1,16 +0,0 @@ - - - - - com.apple.security.app-sandbox - - com.apple.security.device.camera - - com.apple.security.files.user-selected.read-only - - com.apple.security.network.client - - com.apple.security.network.server - - - diff --git a/macos/Runner/zh-Hans.lproj/MainMenu.strings b/macos/Runner/zh-Hans.lproj/MainMenu.strings deleted file mode 100644 index b74fd928e..000000000 --- a/macos/Runner/zh-Hans.lproj/MainMenu.strings +++ /dev/null @@ -1,195 +0,0 @@ - -/* Class = "NSMenuItem"; title = "APP_NAME"; ObjectID = "1Xt-HY-uBw"; */ -"1Xt-HY-uBw.title" = "APP_NAME"; - -/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ -"1b7-l0-nxx.title" = "Find"; - -/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ -"2oI-Rn-ZJC.title" = "Transformations"; - -/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ -"3IN-sU-3Bg.title" = "Spelling"; - -/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ -"3rS-ZA-NoH.title" = "Speech"; - -/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ -"4EN-yA-p0u.title" = "Find"; - -/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "4J7-dP-txa"; */ -"4J7-dP-txa.title" = "Enter Full Screen"; - -/* Class = "NSMenuItem"; title = "Quit APP_NAME"; ObjectID = "4sb-4s-VLi"; */ -"4sb-4s-VLi.title" = "Quit APP_NAME"; - -/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ -"5QF-Oa-p0T.title" = "Edit"; - -/* Class = "NSMenuItem"; title = "About APP_NAME"; ObjectID = "5kV-Vb-QxS"; */ -"5kV-Vb-QxS.title" = "About APP_NAME"; - -/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ -"6dh-zS-Vam.title" = "Redo"; - -/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ -"78Y-hA-62v.title" = "Correct Spelling Automatically"; - -/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ -"9ic-FL-obx.title" = "Substitutions"; - -/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ -"9yt-4B-nSM.title" = "Smart Copy/Paste"; - -/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ -"AYu-sK-qS6.title" = "Main Menu"; - -/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ -"BOF-NM-1cW.title" = "Preferences…"; - -/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ -"Dv1-io-Yv7.title" = "Spelling and Grammar"; - -/* Class = "NSMenuItem"; title = "Help"; ObjectID = "EPT-qC-fAb"; */ -"EPT-qC-fAb.title" = "Help"; - -/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ -"FeM-D8-WVr.title" = "Substitutions"; - -/* Class = "NSMenuItem"; title = "View"; ObjectID = "H8h-7b-M4v"; */ -"H8h-7b-M4v.title" = "View"; - -/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ -"HFQ-gK-NFA.title" = "Text Replacement"; - -/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ -"HFo-cy-zxI.title" = "Show Spelling and Grammar"; - -/* Class = "NSMenu"; title = "View"; ObjectID = "HyV-fh-RgO"; */ -"HyV-fh-RgO.title" = "View"; - -/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ -"Kd2-mp-pUS.title" = "Show All"; - -/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ -"LE2-aR-0XJ.title" = "Bring All to Front"; - -/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ -"NMo-om-nkz.title" = "Services"; - -/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ -"OY7-WF-poV.title" = "Minimize"; - -/* Class = "NSMenuItem"; title = "Hide APP_NAME"; ObjectID = "Olw-nP-bQN"; */ -"Olw-nP-bQN.title" = "Hide APP_NAME"; - -/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ -"OwM-mh-QMV.title" = "Find Previous"; - -/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ -"Oyz-dy-DGm.title" = "Stop Speaking"; - -/* Class = "NSWindow"; title = "APP_NAME"; ObjectID = "QvC-M9-y7g"; */ -"QvC-M9-y7g.title" = "APP_NAME"; - -/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ -"R4o-n2-Eq4.title" = "Zoom"; - -/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ -"Ruw-6m-B2m.title" = "Select All"; - -/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ -"S0p-oC-mLd.title" = "Jump to Selection"; - -/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ -"Td7-aD-5lo.title" = "Window"; - -/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ -"UEZ-Bs-lqG.title" = "Capitalize"; - -/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ -"Vdr-fp-XzO.title" = "Hide Others"; - -/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ -"W48-6f-4Dl.title" = "Edit"; - -/* Class = "NSMenuItem"; title = "Paste and Match Style"; ObjectID = "WeT-3V-zwk"; */ -"WeT-3V-zwk.title" = "Paste and Match Style"; - -/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ -"Xz5-n4-O0W.title" = "Find…"; - -/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ -"YEy-JH-Tfz.title" = "Find and Replace…"; - -/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ -"Ynk-f8-cLZ.title" = "Start Speaking"; - -/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ -"aUF-d1-5bR.title" = "Window"; - -/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ -"buJ-ug-pKt.title" = "Use Selection for Find"; - -/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ -"c8a-y6-VQd.title" = "Transformations"; - -/* Class = "NSMenuItem"; title = "Smart Links"; ObjectID = "cwL-P1-jid"; */ -"cwL-P1-jid.title" = "Smart Links"; - -/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ -"d9M-CD-aMd.title" = "Make Lower Case"; - -/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ -"dRJ-4n-Yzg.title" = "Undo"; - -/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ -"gVA-U4-sdL.title" = "Paste"; - -/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ -"hQb-2v-fYv.title" = "Smart Quotes"; - -/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ -"hz2-CU-CR7.title" = "Check Document Now"; - -/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ -"hz9-B4-Xy5.title" = "Services"; - -/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ -"mK6-2p-4JG.title" = "Check Grammar With Spelling"; - -/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ -"pa3-QI-u2k.title" = "Delete"; - -/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ -"q09-fT-Sye.title" = "Find Next"; - -/* Class = "NSMenu"; title = "Help"; ObjectID = "rJ0-wn-3NY"; */ -"rJ0-wn-3NY.title" = "Help"; - -/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ -"rbD-Rh-wIN.title" = "Check Spelling While Typing"; - -/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ -"rgM-f4-ycn.title" = "Smart Dashes"; - -/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ -"tRr-pd-1PS.title" = "Data Detectors"; - -/* Class = "NSMenu"; title = "APP_NAME"; ObjectID = "uQy-DD-JDr"; */ -"uQy-DD-JDr.title" = "APP_NAME"; - -/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ -"uRl-iY-unG.title" = "Cut"; - -/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ -"vmV-6d-7jI.title" = "Make Upper Case"; - -/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ -"x3v-GG-iWU.title" = "Copy"; - -/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ -"xrE-MZ-jX0.title" = "Speech"; - -/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ -"z6F-FW-3nz.title" = "Show Substitutions"; diff --git a/macos/Runner/zh-Hant.lproj/MainMenu.strings b/macos/Runner/zh-Hant.lproj/MainMenu.strings deleted file mode 100644 index b74fd928e..000000000 --- a/macos/Runner/zh-Hant.lproj/MainMenu.strings +++ /dev/null @@ -1,195 +0,0 @@ - -/* Class = "NSMenuItem"; title = "APP_NAME"; ObjectID = "1Xt-HY-uBw"; */ -"1Xt-HY-uBw.title" = "APP_NAME"; - -/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ -"1b7-l0-nxx.title" = "Find"; - -/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ -"2oI-Rn-ZJC.title" = "Transformations"; - -/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ -"3IN-sU-3Bg.title" = "Spelling"; - -/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ -"3rS-ZA-NoH.title" = "Speech"; - -/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ -"4EN-yA-p0u.title" = "Find"; - -/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "4J7-dP-txa"; */ -"4J7-dP-txa.title" = "Enter Full Screen"; - -/* Class = "NSMenuItem"; title = "Quit APP_NAME"; ObjectID = "4sb-4s-VLi"; */ -"4sb-4s-VLi.title" = "Quit APP_NAME"; - -/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ -"5QF-Oa-p0T.title" = "Edit"; - -/* Class = "NSMenuItem"; title = "About APP_NAME"; ObjectID = "5kV-Vb-QxS"; */ -"5kV-Vb-QxS.title" = "About APP_NAME"; - -/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ -"6dh-zS-Vam.title" = "Redo"; - -/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ -"78Y-hA-62v.title" = "Correct Spelling Automatically"; - -/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ -"9ic-FL-obx.title" = "Substitutions"; - -/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ -"9yt-4B-nSM.title" = "Smart Copy/Paste"; - -/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ -"AYu-sK-qS6.title" = "Main Menu"; - -/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ -"BOF-NM-1cW.title" = "Preferences…"; - -/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ -"Dv1-io-Yv7.title" = "Spelling and Grammar"; - -/* Class = "NSMenuItem"; title = "Help"; ObjectID = "EPT-qC-fAb"; */ -"EPT-qC-fAb.title" = "Help"; - -/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ -"FeM-D8-WVr.title" = "Substitutions"; - -/* Class = "NSMenuItem"; title = "View"; ObjectID = "H8h-7b-M4v"; */ -"H8h-7b-M4v.title" = "View"; - -/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ -"HFQ-gK-NFA.title" = "Text Replacement"; - -/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ -"HFo-cy-zxI.title" = "Show Spelling and Grammar"; - -/* Class = "NSMenu"; title = "View"; ObjectID = "HyV-fh-RgO"; */ -"HyV-fh-RgO.title" = "View"; - -/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ -"Kd2-mp-pUS.title" = "Show All"; - -/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ -"LE2-aR-0XJ.title" = "Bring All to Front"; - -/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ -"NMo-om-nkz.title" = "Services"; - -/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ -"OY7-WF-poV.title" = "Minimize"; - -/* Class = "NSMenuItem"; title = "Hide APP_NAME"; ObjectID = "Olw-nP-bQN"; */ -"Olw-nP-bQN.title" = "Hide APP_NAME"; - -/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ -"OwM-mh-QMV.title" = "Find Previous"; - -/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ -"Oyz-dy-DGm.title" = "Stop Speaking"; - -/* Class = "NSWindow"; title = "APP_NAME"; ObjectID = "QvC-M9-y7g"; */ -"QvC-M9-y7g.title" = "APP_NAME"; - -/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ -"R4o-n2-Eq4.title" = "Zoom"; - -/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ -"Ruw-6m-B2m.title" = "Select All"; - -/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ -"S0p-oC-mLd.title" = "Jump to Selection"; - -/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ -"Td7-aD-5lo.title" = "Window"; - -/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ -"UEZ-Bs-lqG.title" = "Capitalize"; - -/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ -"Vdr-fp-XzO.title" = "Hide Others"; - -/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ -"W48-6f-4Dl.title" = "Edit"; - -/* Class = "NSMenuItem"; title = "Paste and Match Style"; ObjectID = "WeT-3V-zwk"; */ -"WeT-3V-zwk.title" = "Paste and Match Style"; - -/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ -"Xz5-n4-O0W.title" = "Find…"; - -/* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ -"YEy-JH-Tfz.title" = "Find and Replace…"; - -/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ -"Ynk-f8-cLZ.title" = "Start Speaking"; - -/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ -"aUF-d1-5bR.title" = "Window"; - -/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ -"buJ-ug-pKt.title" = "Use Selection for Find"; - -/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ -"c8a-y6-VQd.title" = "Transformations"; - -/* Class = "NSMenuItem"; title = "Smart Links"; ObjectID = "cwL-P1-jid"; */ -"cwL-P1-jid.title" = "Smart Links"; - -/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ -"d9M-CD-aMd.title" = "Make Lower Case"; - -/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ -"dRJ-4n-Yzg.title" = "Undo"; - -/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ -"gVA-U4-sdL.title" = "Paste"; - -/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ -"hQb-2v-fYv.title" = "Smart Quotes"; - -/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ -"hz2-CU-CR7.title" = "Check Document Now"; - -/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ -"hz9-B4-Xy5.title" = "Services"; - -/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ -"mK6-2p-4JG.title" = "Check Grammar With Spelling"; - -/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ -"pa3-QI-u2k.title" = "Delete"; - -/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ -"q09-fT-Sye.title" = "Find Next"; - -/* Class = "NSMenu"; title = "Help"; ObjectID = "rJ0-wn-3NY"; */ -"rJ0-wn-3NY.title" = "Help"; - -/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ -"rbD-Rh-wIN.title" = "Check Spelling While Typing"; - -/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ -"rgM-f4-ycn.title" = "Smart Dashes"; - -/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ -"tRr-pd-1PS.title" = "Data Detectors"; - -/* Class = "NSMenu"; title = "APP_NAME"; ObjectID = "uQy-DD-JDr"; */ -"uQy-DD-JDr.title" = "APP_NAME"; - -/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ -"uRl-iY-unG.title" = "Cut"; - -/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ -"vmV-6d-7jI.title" = "Make Upper Case"; - -/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ -"x3v-GG-iWU.title" = "Copy"; - -/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ -"xrE-MZ-jX0.title" = "Speech"; - -/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ -"z6F-FW-3nz.title" = "Show Substitutions"; diff --git a/macos/RunnerTests/RunnerTests.swift b/macos/RunnerTests/RunnerTests.swift deleted file mode 100644 index 5418c9f53..000000000 --- a/macos/RunnerTests/RunnerTests.swift +++ /dev/null @@ -1,12 +0,0 @@ -import FlutterMacOS -import Cocoa -import XCTest - -class RunnerTests: XCTestCase { - - func testExample() { - // If you add code to the Runner application, consider adding tests here. - // See https://developer.apple.com/documentation/xctest for more information about using XCTest. - } - -} diff --git a/macos/en.lproj/InfoPlist.strings b/macos/en.lproj/InfoPlist.strings deleted file mode 100644 index 92e201e9c..000000000 --- a/macos/en.lproj/InfoPlist.strings +++ /dev/null @@ -1 +0,0 @@ -"CFBundleDisplayName" = "SIT Life"; diff --git a/macos/zh-Hans.lproj/InfoPlist.strings b/macos/zh-Hans.lproj/InfoPlist.strings deleted file mode 100644 index 16e24cf48..000000000 --- a/macos/zh-Hans.lproj/InfoPlist.strings +++ /dev/null @@ -1 +0,0 @@ -"CFBundleDisplayName" = "小应生活"; diff --git a/macos/zh-Hant.lproj/InfoPlist.strings b/macos/zh-Hant.lproj/InfoPlist.strings deleted file mode 100644 index 0b164081a..000000000 --- a/macos/zh-Hant.lproj/InfoPlist.strings +++ /dev/null @@ -1 +0,0 @@ -"CFBundleDisplayName" = "小鷹生活"; diff --git a/main.dart.js b/main.dart.js new file mode 100644 index 000000000..4f9de8cf2 --- /dev/null +++ b/main.dart.js @@ -0,0 +1,237142 @@ +(function dartProgram(){function copyProperties(a,b){var s=Object.keys(a) +for(var r=0;r=0)return true +if(typeof version=="function"&&version.length==0){var q=version() +if(/^\d+\.\d+\.\d+\.\d+$/.test(q))return true}}catch(p){}return false}() +function inherit(a,b){a.prototype.constructor=a +a.prototype["$i"+a.name]=a +if(b!=null){if(z){Object.setPrototypeOf(a.prototype,b.prototype) +return}var s=Object.create(b.prototype) +copyProperties(a.prototype,s) +a.prototype=s}}function inheritMany(a,b){for(var s=0;s4294967295)throw A.d(A.e9(a,0,4294967295,"length",null)) +return J.n8(new Array(a),b)}, +cxD(a,b){if(a<0||a>4294967295)throw A.d(A.e9(a,0,4294967295,"length",null)) +return J.n8(new Array(a),b)}, +RW(a,b){if(a<0)throw A.d(A.aM("Length must be a non-negative integer: "+a,null)) +return A.a(new Array(a),b.h("D<0>"))}, +d1(a,b){if(a<0)throw A.d(A.aM("Length must be a non-negative integer: "+a,null)) +return A.a(new Array(a),b.h("D<0>"))}, +n8(a,b){return J.bnV(A.a(a,b.h("D<0>")))}, +bnV(a){a.fixed$length=Array +return a}, +cJe(a){a.fixed$length=Array +a.immutable$list=Array +return a}, +d8E(a,b){return J.GU(a,b)}, +cJf(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}}, +cJg(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.cJf(r))break}return b}, +lm(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.RX.prototype +return J.a4E.prototype}if(typeof a=="string")return J.we.prototype +if(a==null)return J.RY.prototype +if(typeof a=="boolean")return J.a4C.prototype +if(Array.isArray(a))return J.D.prototype +if(typeof a!="object"){if(typeof a=="function")return J.oc.prototype +if(typeof a=="symbol")return J.JH.prototype +if(typeof a=="bigint")return J.JG.prototype +return a}if(a instanceof A.S)return a +return J.b21(a)}, +dsx(a){if(typeof a=="number")return J.DQ.prototype +if(typeof a=="string")return J.we.prototype +if(a==null)return a +if(Array.isArray(a))return J.D.prototype +if(typeof a!="object"){if(typeof a=="function")return J.oc.prototype +if(typeof a=="symbol")return J.JH.prototype +if(typeof a=="bigint")return J.JG.prototype +return a}if(a instanceof A.S)return a +return J.b21(a)}, +ao(a){if(typeof a=="string")return J.we.prototype +if(a==null)return a +if(Array.isArray(a))return J.D.prototype +if(typeof a!="object"){if(typeof a=="function")return J.oc.prototype +if(typeof a=="symbol")return J.JH.prototype +if(typeof a=="bigint")return J.JG.prototype +return a}if(a instanceof A.S)return a +return J.b21(a)}, +cz(a){if(a==null)return a +if(Array.isArray(a))return J.D.prototype +if(typeof a!="object"){if(typeof a=="function")return J.oc.prototype +if(typeof a=="symbol")return J.JH.prototype +if(typeof a=="bigint")return J.JG.prototype +return a}if(a instanceof A.S)return a +return J.b21(a)}, +cSJ(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.RX.prototype +return J.a4E.prototype}if(a==null)return a +if(!(a instanceof A.S))return J.x3.prototype +return a}, +b20(a){if(typeof a=="number")return J.DQ.prototype +if(a==null)return a +if(!(a instanceof A.S))return J.x3.prototype +return a}, +cSK(a){if(typeof a=="number")return J.DQ.prototype +if(typeof a=="string")return J.we.prototype +if(a==null)return a +if(!(a instanceof A.S))return J.x3.prototype +return a}, +r2(a){if(typeof a=="string")return J.we.prototype +if(a==null)return a +if(!(a instanceof A.S))return J.x3.prototype +return a}, +er(a){if(a==null)return a +if(typeof a!="object"){if(typeof a=="function")return J.oc.prototype +if(typeof a=="symbol")return J.JH.prototype +if(typeof a=="bigint")return J.JG.prototype +return a}if(a instanceof A.S)return a +return J.b21(a)}, +eh(a){if(a==null)return a +if(!(a instanceof A.S))return J.x3.prototype +return a}, +b2S(a,b){if(typeof a=="number"&&typeof b=="number")return a+b +return J.dsx(a).S(a,b)}, +q(a,b){if(a==null)return b==null +if(typeof a!="object")return b!=null&&a===b +return J.lm(a).l(a,b)}, +d0H(a,b){if(typeof a=="number"&&typeof b=="number")return a*b +return J.cSK(a).X(a,b)}, +cEo(a){if(typeof a=="number")return-a +return J.cSJ(a).o1(a)}, +cEp(a,b){if(typeof a=="number"&&typeof b=="number")return a-b +return J.b20(a).W(a,b)}, +aS(a,b){if(typeof b==="number")if(Array.isArray(a)||typeof a=="string"||A.cSZ(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b>>0===b&&b0?1:a<0?-1:a +return J.cSJ(a).gAq(a)}, +ZB(a){return J.cz(a).gcW(a)}, +d11(a){return J.er(a).gu(a)}, +cEz(a){return J.eh(a).gIY(a)}, +d12(a){return J.er(a).gbM(a)}, +cv0(a){return J.eh(a).gDP(a)}, +d13(a){return J.eh(a).gD8(a)}, +xK(a){return J.eh(a).gDb(a)}, +d14(a){return J.er(a).gbl(a)}, +lo(a){return J.er(a).gj(a)}, +GW(a){return J.er(a).gbm(a)}, +d15(a,b,c){return J.cz(a).Dv(a,b,c)}, +cv1(a,b){return J.eh(a).cf(a,b)}, +cEA(a,b){return J.eh(a).jC(a,b)}, +cv2(a,b){return J.ao(a).c2(a,b)}, +cv3(a){return J.eh(a).hy(a)}, +cv4(a,b,c){return J.cz(a).eu(a,b,c)}, +d16(a){return J.eh(a).Nu(a)}, +cEB(a){return J.cz(a).jG(a)}, +xL(a,b){return J.cz(a).bQ(a,b)}, +d17(a,b){return J.eh(a).bA_(a,b)}, +d18(a,b,c){return J.er(a).XP(a,b,c)}, +dP(a,b,c){return J.cz(a).fK(a,b,c)}, +cv5(a,b,c,d){return J.cz(a).qv(a,b,c,d)}, +d19(a,b,c){return J.cz(a).ww(a,b,c)}, +cEC(a,b,c){return J.r2(a).NP(a,b,c)}, +d1a(a,b){return J.lm(a).E(a,b)}, +d1b(a){return J.eh(a).zD(a)}, +d1c(a){return J.er(a).ia(a)}, +d1d(a){return J.eh(a).aco(a)}, +d1e(a){return J.eh(a).acs(a)}, +d1f(a,b,c){return J.eh(a).wE(a,b,c)}, +d1g(a,b){return J.er(a).iH(a,b)}, +d1h(a,b,c,d,e){return J.er(a).uO(a,b,c,d,e)}, +ZC(a,b,c){return J.er(a).cP(a,b,c)}, +d1i(a){return J.eh(a).fn(a)}, +d1j(a,b,c){return J.eh(a).bFn(a,b,c)}, +d1k(a){return J.cz(a).hB(a)}, +xM(a,b){return J.cz(a).F(a,b)}, +cED(a,b){return J.cz(a).fE(a,b)}, +d1l(a){return J.cz(a).hX(a)}, +cEE(a,b){return J.er(a).O(a,b)}, +cEF(a,b){return J.cz(a).wW(a,b)}, +cv6(a){return J.b20(a).aF(a)}, +b2V(a){return J.eh(a).d6(a)}, +cEG(a,b){return J.eh(a).bK(a,b)}, +d1m(a,b){return J.eh(a).kF(a,b)}, +cv7(a,b){return J.eh(a).sja(a,b)}, +d1n(a,b){return J.ao(a).sA(a,b)}, +cv8(a,b){return J.eh(a).slV(a,b)}, +cEH(a,b){return J.er(a).sj(a,b)}, +cv9(a,b,c,d,e){return J.cz(a).dS(a,b,c,d,e)}, +amA(a,b){return J.cz(a).my(a,b)}, +OH(a,b){return J.cz(a).iL(a,b)}, +b2W(a,b){return J.r2(a).pS(a,b)}, +b2X(a,b){return J.r2(a).aC(a,b)}, +cEI(a,b){return J.r2(a).b0(a,b)}, +d1o(a,b,c){return J.r2(a).R(a,b,c)}, +cva(a,b){return J.cz(a).nl(a,b)}, +d1p(a){return J.b20(a).au(a)}, +ra(a){return J.cz(a).eO(a)}, +d1q(a,b){return J.b20(a).k9(a,b)}, +d1r(a){return J.cz(a).jq(a)}, +cw(a){return J.lm(a).k(a)}, +d1s(a){return J.eh(a).aFA(a)}, +d1t(a,b,c,d){return J.eh(a).ZR(a,b,c,d)}, +BL(a){return J.r2(a).du(a)}, +d1u(a){return J.r2(a).Df(a)}, +d1v(a,b){return J.eh(a).Di(a,b)}, +vk(a,b){return J.cz(a).kW(a,b)}, +cEJ(a,b){return J.cz(a).a_a(a,b)}, +RR:function RR(){}, +a4C:function a4C(){}, +RY:function RY(){}, +F:function F(){}, +DU:function DU(){}, +aBs:function aBs(){}, +x3:function x3(){}, +oc:function oc(){}, +JG:function JG(){}, +JH:function JH(){}, +D:function D(a){this.$ti=a}, +bo_:function bo_(a){this.$ti=a}, +cP:function cP(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +DQ:function DQ(){}, +RX:function RX(){}, +a4E:function a4E(){}, +we:function we(){}},A={ +dpt(){var s=$.fv() +return s}, +drI(a,b){if(a==="Google Inc.")return B.fr +else if(a==="Apple Computer, Inc.")return B.aQ +else if(B.c.p(b,"Edg/"))return B.fr +else if(a===""&&B.c.p(b,"firefox"))return B.ew +A.eP("WARNING: failed to detect current browser engine. Assuming this is a Chromium-compatible browser.") +return B.fr}, +drK(){var s,r,q,p=null,o=self.window +o=o.navigator.platform +if(o==null)o=p +o.toString +s=o +o=self.window +r=o.navigator.userAgent +if(B.c.aC(s,"Mac")){o=self.window +o=o.navigator.maxTouchPoints +if(o==null)o=p +o=o==null?p:B.e.au(o) +q=o +if((q==null?0:q)>2)return B.cG +return B.eK}else if(B.c.p(s.toLowerCase(),"iphone")||B.c.p(s.toLowerCase(),"ipad")||B.c.p(s.toLowerCase(),"ipod"))return B.cG +else if(B.c.p(r,"Android"))return B.pp +else if(B.c.aC(s,"Linux"))return B.wH +else if(B.c.aC(s,"Win"))return B.Sw +else return B.bfj}, +dtb(){var s=$.ja() +return B.xf.p(0,s)}, +dtd(){var s=$.ja() +return s===B.cG&&B.c.p(self.window.navigator.userAgent,"OS 15_")}, +dt8(){var s,r=$.cAt +if(r!=null)return r +s=A.b4("Chrom(e|ium)\\/([0-9]+)\\.",!0,!1,!1).im(self.window.navigator.userAgent) +if(s!=null){r=s.b[2] +r.toString +return $.cAt=A.cA(r,null)<=110}return $.cAt=!1}, +pN(){var s,r=A.BA(1,1) +if(A.o3(r,"webgl2",null)!=null){s=$.ja() +if(s===B.cG)return 1 +return 2}if(A.o3(r,"webgl",null)!=null)return 1 +return-1}, +cRM(){return self.Intl.v8BreakIterator!=null&&self.Intl.Segmenter!=null}, +bo(){return $.d5.I()}, +cUh(a){return a===B.hB?$.d5.I().FilterMode.Nearest:$.d5.I().FilterMode.Linear}, +cUj(a){return a===B.Dk?$.d5.I().MipmapMode.Linear:$.d5.I().MipmapMode.None}, +cM9(a){var s=a.encodeToBytes() +return s==null?null:s}, +ddD(a,b){return A.L(a,"setColorInt",[b])}, +cUi(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}, +b2n(a){var s,r,q,p=new Float32Array(9) +for(s=a.length,r=0;r<9;++r){q=B.Gf[r] +if(q>>16&255)/255 +s[1]=(r>>>8&255)/255 +s[2]=(r&255)/255 +s[3]=(r>>>24&255)/255 +return s}, +mQ(a){var s=new Float32Array(4) +s[0]=a.a +s[1]=a.b +s[2]=a.c +s[3]=a.d +return s}, +cBv(a){return new A.W(a[0],a[1],a[2],a[3])}, +Zr(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}, +cUg(a){var s,r,q=a.length,p=t.e.a(self.window.flutterCanvasKit.Malloc(self.Float32Array,q*2)),o=p.toTypedArray() +for(s=0;s"))}, +dpx(a,b){return b+a}, +b1R(){var s=0,r=A.p(t.e),q,p,o +var $async$b1R=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.coN(A.dkn()),$async$b1R) +case 3:p=t.e +s=4 +return A.i(A.kA(self.window.CanvasKitInit(p.a({locateFile:t.g.a(A.cQ(A.dlj()))})),p),$async$b1R) +case 4:o=b +if(A.cMa(o.ParagraphBuilder)&&!A.cRM())throw A.d(A.dA("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.n(q,r)}}) +return A.o($async$b1R,r)}, +coN(a){var s=0,r=A.p(t.H),q,p,o,n +var $async$coN=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=a.$ti,o=new A.bj(a,a.gA(0),p.h("bj")),p=p.h("aa.E") +case 3:if(!o.t()){s=4 +break}n=o.d +s=5 +return A.i(A.dl7(n==null?p.a(n):n),$async$coN) +case 5:if(c){s=1 +break}s=3 +break +case 4:throw A.d(A.dA("Failed to download any of the following CanvasKit URLs: "+a.k(0))) +case 1:return A.n(q,r)}}) +return A.o($async$coN,r)}, +dl7(a){var s,r,q,p,o,n=A.nJ().b +n=n==null?null:A.cxG(n) +s=A.d0(self.document,"script") +if(n!=null)s.nonce=n +s.src=A.drl(a) +n=new A.ak($.at,t.tq) +r=new A.aI(n,t.VY) +q=A.aF("loadCallback") +p=A.aF("errorCallback") +o=t.g +q.se9(o.a(A.cQ(new A.coM(s,r)))) +p.se9(o.a(A.cQ(new A.coL(s,r)))) +A.fS(s,"load",q.aX(),null) +A.fS(s,"error",p.aX(),null) +self.document.head.appendChild(s) +return n}, +brd(a){var s="ColorFilter",r=new A.axj(a),q=new A.jV(s,t.gA) +q.nx(r,a.Ke(),s,t.e) +r.b!==$&&A.ck() +r.b=q +return r}, +dkw(){var s,r=new Float32Array(20) +for(s=0;s<4;++s)r[B.aBQ[s]]=1 +return $.dmg=r}, +drk(a,b){var s +if((a.a>>>24&255)/255===0)return A.L($.d5.I().ColorFilter,"MakeMatrix",[$.cZN()]) +s=A.L($.d5.I().ColorFilter,"MakeBlend",[A.b1E($.ams(),a),$.cuE()[b.a]]) +if(s==null)throw A.d(A.aM("Invalid parameters for blend mode ColorFilter",null)) +return s}, +d2Q(a){return new A.Pw(a)}, +drd(a){var s,r +switch(a.d.a){case 0:s=a.a +if(s==null||a.b==null)return null +s.toString +r=a.b +r.toString +return new A.a0m(s,r) +case 1:s=a.c +if(s==null)return null +return new A.Pw(s) +case 2:return B.a4m +case 3:return B.a4o +default:throw A.d(A.a0("Unknown mode "+a.k(0)+".type for ColorFilter."))}}, +cGT(a,b){var s=b.h("D<0>") +return new A.a1R(a,A.a([],s),A.a([],s),b.h("a1R<0>"))}, +cy4(a){var s=null +return new A.rH(B.b6i,s,s,s,a,s)}, +drN(a,b){var s,r,q,p,o +if(a.length===0||b.length===0)return null +s=new A.crO(a,b) +r=new A.crN(a,b) +q=B.b.c2(a,B.b.ga2(b)) +p=B.b.na(a,B.b.gP(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}, +cLs(a,b,c){var s=new self.window.flutterCanvasKit.Font(c),r=A.a([0],t.t) +A.L(s,"getGlyphBounds",[r,null,null]) +return new A.Ls(b,a,c)}, +dvV(a,b,c){var s="encoded image bytes" +if($.cE6()&&b==null&&c==null)return A.aoY(a,s) +else return A.cFN(a,s,c,b)}, +dvU(a,b,c,d,e,f,g,h,i){A.d3(B.w,new A.ctQ(b,c,d,a,g,i,h,!0,e))}, +dvp(a,b,c){var s,r,q,p,o,n +if(b!=null&&b<=0)b=null +if(c!=null&&c<=0)c=null +s=b==null +if(s&&c!=null)b=B.e.aF(c*(a.width()/a.height())) +else if(c==null&&!s)c=B.d.hf(b,a.width()/a.height()) +r=new A.tE() +q=r.yk(B.lG) +p=A.a0p() +s=A.ap3(a,null) +o=a.width() +n=a.height() +b.toString +c.toString +q.pj(s,new A.W(0,0,0+o,0+n),new A.W(0,0,b,c),p) +n=p.b +n===$&&A.b() +n.m() +return r.uh().uZ(b,c)}, +DC(a){return new A.avM(a)}, +ctR(a,b){var s=0,r=A.p(t.hP),q,p +var $async$ctR=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=3 +return A.i(A.b1X(a,b),$async$ctR) +case 3:p=d +if($.cE6()){q=A.aoY(p,a) +s=1 +break}else{q=A.cFN(p,a,null,null) +s=1 +break}case 1:return A.n(q,r)}}) +return A.o($async$ctR,r)}, +b1X(a,b){return A.ds2(a,b)}, +ds2(a,b){var s=0,r=A.p(t.E),q,p=2,o,n,m,l,k,j +var $async$b1X=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(A.Op(a),$async$b1X) +case 7:n=d +m=n.gbrc() +if(!n.gXk()){l=A.DC(u.e9+a+"\nServer response code: "+J.d12(n)) +throw A.d(l)}s=m!=null?8:10 +break +case 8:l=A.ctn(n.gHn(),m,b) +q=l +s=1 +break +s=9 +break +case 10:s=11 +return A.i(A.bm7(n),$async$b1X) +case 11:l=d +q=l +s=1 +break +case 9:p=2 +s=6 +break +case 4:p=3 +j=o +if(A.ag(j) instanceof A.a42)throw A.d(A.DC(u.e9+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.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$b1X,r)}, +ctn(a,b,c){return A.dv4(a,b,c)}, +dv4(a,b,c){var s=0,r=A.p(t.E),q,p,o,n +var $async$ctn=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:p={} +o=t.u9 +n=o.a(A.oY(self.Uint8Array,[b])) +p.a=p.b=0 +s=3 +return A.i(a.d8(0,new A.cto(p,c,b,n),o),$async$ctn) +case 3:q=n +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$ctn,r)}, +ap3(a,b){var s=new A.HK($,b),r=A.d3D(a,s,"SkImage",t.XY,t.e) +s.b!==$&&A.ck() +s.b=r +s.anG() +return s}, +cFN(a,b,c,d){var s,r,q="MakeAnimatedImageFromEncoded",p=new A.aoX(b,a,d,c),o=A.L($.d5.I(),q,[a]) +if(o==null)A.C(A.DC("Failed to decode image data.\nImage source: "+b)) +if(d!=null||c!=null)if(o.getFrameCount()>1)$.k6().$1("targetWidth and targetHeight for multi-frame images not supported") +else{s=A.dvp(o.makeImageAtCurrentFrame(),d,c).b +s===$&&A.b() +s=s.a +s===$&&A.b() +s=s.a +s.toString +r=A.cM9(s) +if(r==null)A.C(A.DC("Failed to re-size image")) +o=A.L($.d5.I(),q,[r]) +if(o==null)A.C(A.DC("Failed to decode re-sized image data.\nImage source: "+b))}p.d=B.e.au(o.getFrameCount()) +p.e=B.e.au(o.getRepetitionCount()) +s=new A.jV("Codec",t.gA) +s.nx(p,o,"Codec",t.e) +p.a!==$&&A.ck() +p.a=s +return p}, +d2P(a,b,c){return new A.a0n(a,b,c,new A.ZK(new A.b7f()))}, +aoY(a,b){var s=0,r=A.p(t.Lh),q,p,o +var $async$aoY=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=A.drJ(a) +if(o==null)throw A.d(A.DC("Failed to detect image file format using the file header.\nFile header was "+(!B.p.gad(a)?"["+A.dpv(B.p.cK(a,0,Math.min(10,a.length)))+"]":"empty")+".\nImage source: "+b)) +p=A.d2P(o,a,b) +s=3 +return A.i(p.Ew(),$async$aoY) +case 3:q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$aoY,r)}, +b2g(a,b){var s=0,r=A.p(t.V4),q,p,o,n +var $async$b2g=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=b===B.Eh?3:4 +break +case 3:n=A +s=5 +return A.i(A.cBp(a),$async$b2g) +case 5:q=n.fe(d.buffer,0,null) +s=1 +break +case 4:s=6 +return A.i(A.ctp(a),$async$b2g) +case 6:p=d +if(A.dnS(a,b)){q=A.fe(p,0,null) +s=1 +break}o=A.Wo(a)==="BGRA"||A.Wo(a)==="BGRX" +if(b===B.uU&&o){A.dk9(p) +q=A.fe(p,0,null) +s=1 +break}q=A.fe(p,0,null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$b2g,r)}, +dk9(a){var s,r,q,p=B.d.aD(a.byteLength,4),o=A.dF(a,0,null) +for(s=0;s").a1(e).h("apW<1,2>")),r=new A.jV(c,e.h("jV<0>")) +r.nx(s,a,c,e) +s.a!==$&&A.ck() +s.a=r +return s}, +daF(a,b){return new A.KE(b,A.cGT(new A.bv9(),t.vB),a,B.A,new A.apE())}, +a0p(){var s,r=new self.window.flutterCanvasKit.Paint(),q=new A.Px(r,B.cX,B.aH,B.eN,B.lW,B.hB) +A.L(r,"setAntiAlias",[!0]) +A.L(r,"setColorInt",[4278190080]) +s=new A.jV("Paint",t.gA) +s.nx(q,r,"Paint",t.e) +q.b!==$&&A.ck() +q.b=s +return q}, +d2S(){var s=new self.window.flutterCanvasKit.Path() +s.setFillType($.Zw()[0]) +return A.b9h(s,B.e1)}, +b9h(a,b){var s=new A.Py(b),r=new A.jV("Path",t.gA) +r.nx(s,a,"Path",t.e) +s.a!==$&&A.ck() +s.a=r +return s}, +d2v(){var s,r=$.fv() +if(r!==B.aQ)s=r===B.ew +else s=!0 +if(s)return new A.btV(A.N(t.lz,t.Um)) +s=A.d0(self.document,"flt-canvas-container") +if($.cuK())r=r!==B.aQ +else r=!1 +return new A.bv7(new A.t2(r&&!0,!1,s),A.N(t.lz,t.yG))}, +det(a){var s,r=A.d0(self.document,"flt-canvas-container") +if($.cuK()){s=$.fv() +s=s!==B.aQ}else s=!1 +return new A.t2(s&&!a,a,r)}, +d2R(a,b){var s,r,q,p=null +t.S3.a(a) +s=t.e.a({}) +r=A.cAM(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.ag:A.cMb(s,!0) +break +case B.xY:A.cMb(s,!1) +break}r=a.f +if(r!=null||a.r!=null)s.fontStyle=A.cC8(r,a.r) +r=a.w +if(r!=null)s.forceStrutHeight=r +s.strutEnabled=!0 +return s}, +cvC(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.PA(b,c,d,e,f,m,k,a0,g,h,j,q,a1,o,p,r,a,n,s,i,l)}, +cC8(a,b){var s=t.e.a({}) +if(a!=null)s.weight=$.d_N()[a.a] +if(b!=null)s.slant=$.d_M()[b.a] +return s}, +cAM(a,b){var s=A.a([],t.s) +if(a!=null)s.push(a) +if(b!=null&&!B.b.lF(b,new A.cpq(a)))B.b.L(s,b) +B.b.L(s,$.ar().gN3().gaaC().as) +return s}, +dd6(a,b){var s=b.length +if(s<=B.WS.b)return a.c +if(s<=B.WT.b)return a.b +if(s<=B.WU.b)return a.a +return null}, +cSz(a,b){var s,r,q=$.cZQ().i(0,b) +q.toString +s=A.cHw(A.L(q,"segment",[a])) +r=A.a([],t.t) +for(;s.t();){q=s.b +q===$&&A.b() +r.push(B.e.au(q.index))}r.push(a.length) +return new Uint32Array(A.f1(r))}, +dsm(a){var s,r,q,p,o=A.cRL(a,a,$.d0d()),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.gj(a)>>>8&255)/255 +s[2]=(a.gj(a)&255)/255 +s[3]=(a.gj(a)>>>24&255)/255 +return s}, +d2T(a,b,c,d,e){var s,r,q,p,o="Vertices",n=d==null +if(!n&&B.b6k.ef(d,new A.b9k(b)))throw A.d(A.aM('"indices" values must be valid indices in the positions list.',null)) +s=$.d0_()[a.a] +r=new A.apd(s,b,e,null,d) +q=$.d5.I() +p=new A.jV(o,t.gA) +p.nx(r,A.L(q,"MakeVertices",[s,b,null,null,n?null:d]),o,t.e) +r.f!==$&&A.ck() +r.f=p +return r}, +cvT(){return self.window.navigator.clipboard!=null?new A.b9x():new A.bhs()}, +cym(){var s=$.fv() +return s===B.ew||self.window.navigator.clipboard==null?new A.bht():new A.b9y()}, +nJ(){var s=$.cPO +return s==null?$.cPO=A.d78(self.window.flutterConfiguration):s}, +d78(a){var s=new A.bit() +if(a!=null){s.a=!0 +s.b=a}return s}, +cxG(a){var s=a.nonce +return s==null?null:s}, +dcQ(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}}, +cHA(a){var s=a.innerHeight +return s==null?null:s}, +cHB(a,b){return A.L(a,"matchMedia",[b])}, +cwy(a,b){return a.getComputedStyle(b)}, +d4X(a){return new A.bdP(a)}, +d51(a){return a.userAgent}, +d50(a){var s=a.languages +if(s==null)s=null +else{s=B.b.fK(s,new A.bdS(),t.N) +s=A.R(s,!0,s.$ti.h("aa.E"))}return s}, +d0(a,b){var s=A.L(a,"createElement",[b]) +return s}, +fS(a,b,c,d){var s="addEventListener" +if(c!=null)if(d==null)A.L(a,s,[b,c]) +else A.L(a,s,[b,c,d])}, +lv(a,b,c,d){var s="removeEventListener" +if(c!=null)if(d==null)A.L(a,s,[b,c]) +else A.L(a,s,[b,c,d])}, +drg(a){return t.g.a(A.cQ(a))}, +tM(a){var s=a.timeStamp +return s==null?null:s}, +cHq(a,b){a.textContent=b +return b}, +asV(a,b){return A.L(a,"cloneNode",[b])}, +drf(a){return A.d0(self.document,a)}, +d4Z(a){return a.tagName}, +cHd(a,b,c){var s=A.bH(c) +return A.L(a,"setAttribute",[b,s==null?t.K.a(s):s])}, +cHe(a,b){a.tabIndex=b +return b}, +d4Y(a){var s +for(;a.firstChild!=null;){s=a.firstChild +s.toString +a.removeChild(s)}}, +d4T(a,b){return A.a6(a,"width",b)}, +d4O(a,b){return A.a6(a,"height",b)}, +cH8(a,b){return A.a6(a,"position",b)}, +d4R(a,b){return A.a6(a,"top",b)}, +d4P(a,b){return A.a6(a,"left",b)}, +d4S(a,b){return A.a6(a,"visibility",b)}, +d4Q(a,b){return A.a6(a,"overflow",b)}, +a6(a,b,c){A.L(a,"setProperty",[b,c,""])}, +a21(a){var s=a.src +return s==null?null:s}, +cHf(a,b){a.src=b +return b}, +BA(a,b){var s +$.cSe=$.cSe+1 +s=A.d0(self.window.document,"canvas") +if(b!=null)A.Cu(s,b) +if(a!=null)A.Ct(s,a) +return s}, +Cu(a,b){a.width=b +return b}, +Ct(a,b){a.height=b +return b}, +o3(a,b,c){var s,r="getContext" +if(c==null)return A.L(a,r,[b]) +else{s=A.bH(c) +return A.L(a,r,[b,s==null?t.K.a(s):s])}}, +d4V(a){var s=A.o3(a,"2d",null) +s.toString +return t.e.a(s)}, +d4U(a,b){var s +if(b===1){s=A.o3(a,"webgl",null) +s.toString +return t.e.a(s)}s=A.o3(a,"webgl2",null) +s.toString +return t.e.a(s)}, +bdN(a,b){var s=b==null?null:b +a.fillStyle=s +return s}, +cwq(a,b){a.lineWidth=b +return b}, +bdO(a,b){var s=b +a.strokeStyle=s +return s}, +bdL(a,b,c,d,e,f,g,h,i,j){var s="drawImage" +if(e==null)return A.L(a,s,[b,c,d]) +else{f.toString +g.toString +h.toString +i.toString +j.toString +return A.L(a,s,[b,c,d,e,f,g,h,i,j])}}, +bdM(a,b){if(b==null)a.fill() +else A.L(a,"fill",[b])}, +cH9(a,b,c,d){A.L(a,"fillText",[b,c,d])}, +cHa(a,b,c,d,e,f,g){return A.L(a,"setTransform",[b,c,d,e,f,g])}, +cHb(a,b,c,d,e,f,g){return A.L(a,"transform",[b,c,d,e,f,g])}, +bdK(a,b){if(b==null)a.clip() +else A.L(a,"clip",[b])}, +d4W(a,b,c,d,e,f,g){return A.L(a,"arc",[b,c,d,e,f,g])}, +cwp(a,b){a.filter=b +return b}, +cws(a,b){a.shadowOffsetX=b +return b}, +cwt(a,b){a.shadowOffsetY=b +return b}, +cwr(a,b){a.shadowColor=b +return b}, +Op(a){return A.dsQ(a)}, +dsQ(a){var s=0,r=A.p(t.Lk),q,p=2,o,n,m,l,k +var $async$Op=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(A.kA(A.L(self.window,"fetch",[a]),t.e),$async$Op) +case 7:n=c +q=new A.avF(a,n) +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +m=A.ag(k) +throw A.d(new A.a42(a,m)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Op,r)}, +csA(a){var s=0,r=A.p(t.pI),q +var $async$csA=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(A.Op(a),$async$csA) +case 3:q=c.gHn().Bw() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$csA,r)}, +bm7(a){var s=0,r=A.p(t.E),q,p +var $async$bm7=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=A +s=3 +return A.i(a.gHn().Bw(),$async$bm7) +case 3:q=p.dF(c,0,null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bm7,r)}, +drh(a,b,c){var s,r +if(c==null)return A.oY(self.FontFace,[a,b]) +else{s=self.FontFace +r=A.bH(c) +return A.oY(s,[a,b,r==null?t.K.a(r):r])}}, +cHx(a){var s=a.height +return s==null?null:s}, +cHn(a,b){var s=b==null?null:b +a.value=s +return s}, +cHl(a){var s=a.selectionStart +return s==null?null:s}, +cHk(a){var s=a.selectionEnd +return s==null?null:s}, +cHm(a){var s=a.value +return s==null?null:s}, +Im(a){var s=a.code +return s==null?null:s}, +vJ(a){var s=a.key +return s==null?null:s}, +cHo(a){var s=a.state +if(s==null)s=null +else{s=A.cBk(s) +s.toString}return s}, +dre(a){var s=self +return A.oY(s.Blob,[a])}, +cHp(a){var s=a.matches +return s==null?null:s}, +a22(a){var s=a.buttons +return s==null?null:s}, +cHt(a){var s=a.pointerId +return s==null?null:s}, +cwx(a){var s=a.pointerType +return s==null?null:s}, +cHu(a){var s=a.tiltX +return s==null?null:s}, +cHv(a){var s=a.tiltY +return s==null?null:s}, +cHy(a){var s=a.wheelDeltaX +return s==null?null:s}, +cHz(a){var s=a.wheelDeltaY +return s==null?null:s}, +bdQ(a,b){a.type=b +return b}, +cHj(a,b){var s=b==null?null:b +a.value=s +return s}, +cww(a){var s=a.value +return s==null?null:s}, +cwv(a){var s=a.disabled +return s==null?null:s}, +cHi(a,b){a.disabled=b +return b}, +cHh(a){var s=a.selectionStart +return s==null?null:s}, +cHg(a){var s=a.selectionEnd +return s==null?null:s}, +cHr(a,b){a.height=b +return b}, +cHs(a,b){a.width=b +return b}, +bdT(a,b,c){var s,r="getContext" +if(c==null)return A.L(a,r,[b]) +else{s=A.bH(c) +return A.L(a,r,[b,s==null?t.K.a(s):s])}}, +d52(a,b){var s +if(b===1){s=A.bdT(a,"webgl",null) +s.toString +return t.e.a(s)}s=A.bdT(a,"webgl2",null) +s.toString +return t.e.a(s)}, +hF(a,b,c){var s=t.g.a(A.cQ(c)) +A.L(a,"addEventListener",[b,s]) +return new A.asW(b,a,s)}, +dri(a){return A.oY(self.ResizeObserver,[t.g.a(A.cQ(new A.crz(a)))])}, +drl(a){if(self.window.trustedTypes!=null)return A.L($.d0a(),"createScriptURL",[a]) +return a}, +cHw(a){return new A.asU(t.e.a(a[self.Symbol.iterator]()),t.s0)}, +cBj(a){var s,r +if(self.Intl.Segmenter==null)throw A.d(A.bT("Intl.Segmenter() is not supported.")) +s=self.Intl.Segmenter +r=t.N +r=A.bH(A.a1(["granularity",a],r,r)) +if(r==null)r=t.K.a(r) +return A.oY(s,[[],r])}, +cSd(){var s,r +if(self.Intl.v8BreakIterator==null)throw A.d(A.bT("v8BreakIterator is not supported.")) +s=self.Intl.v8BreakIterator +r=A.bH(B.aW5) +if(r==null)r=t.K.a(r) +return A.oY(s,[[],r])}, +d5_(a,b,c){A.L(a,"register",[b,c])}, +b2p(a,b){var s +if(b.l(0,B.h))return a +s=new A.dX(new Float32Array(16)) +s.T(a) +s.ba(0,b.a,b.b) +return s}, +cSh(a,b,c){var s=a.bGS() +if(c!=null)A.cC2(s,A.b2p(c,b).a) +return s}, +cC1(){var s=0,r=A.p(t.H) +var $async$cC1=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if(!$.cAJ){$.cAJ=!0 +A.L(self.window,"requestAnimationFrame",[t.g.a(A.cQ(new A.ctH()))])}return A.n(null,r)}}) +return A.o($async$cC1,r)}, +d7g(a,b){var s=t.S,r=A.dm(null,t.H),q=A.a(["Roboto"],t.s) +s=new A.biV(a,A.b9(s),A.b9(s),b,B.b.DK(b,new A.biW()),B.b.DK(b,new A.biX()),B.b.DK(b,new A.biY()),B.b.DK(b,new A.biZ()),B.b.DK(b,new A.bj_()),B.b.DK(b,new A.bj0()),r,q,A.b9(s)) +q=t.Te +s.b=new A.atN(s,A.b9(q),A.N(t.N,q)) +return s}, +djt(a,b,c){var s,r,q,p,o,n,m,l=A.a([],t.t),k=A.a([],c.h("D<0>")) +for(s=a.length,r=0,q=0,p=1,o=0;o"))}, +b1W(a){return A.ds1(a)}, +ds1(a){var s=0,r=A.p(t.jX),q,p,o,n,m,l +var $async$b1W=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n={} +l=t.Lk +s=3 +return A.i(A.Op(a.Do("FontManifest.json")),$async$b1W) +case 3:m=l.a(c) +if(!m.gXk()){$.k6().$1("Font manifest does not exist at `"+m.a+"` - ignoring.") +q=new A.a3x(A.a([],t.z8)) +s=1 +break}p=B.k_.aO8(B.Ez,t.X) +n.a=null +o=p.lr(new A.aWC(new A.cs4(n),[],t.kV)) +s=4 +return A.i(m.gHn().d8(0,new A.cs5(o),t.u9),$async$b1W) +case 4:o.aO(0) +n=n.a +if(n==null)throw A.d(A.pV(u.a2)) +n=J.dP(t.j.a(n),new A.cs6(),t.VW) +q=new A.a3x(A.R(n,!0,A.z(n).h("aa.E"))) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$b1W,r)}, +d7f(a,b){return new A.a3v()}, +d26(a,b,c){var s,r,q,p,o,n,m,l=A.d0(self.document,"flt-canvas"),k=A.a([],t.J) +$.ec() +s=self.window.devicePixelRatio +if(s===0)s=1 +r=a.a +q=a.c-r +p=A.b6j(q) +o=a.b +n=a.d-o +m=A.b6i(n) +n=new A.b8k(A.b6j(q),A.b6i(n),c,A.a([],t.vj),A.hY()) +s=new A.y2(a,l,n,k,p,m,s,c,b) +A.a6(l.style,"position","absolute") +s.z=B.e.ec(r)-1 +s.Q=B.e.ec(o)-1 +s.atZ() +n.z=l +s.arV() +return s}, +b6j(a){var s +$.ec() +s=self.window.devicePixelRatio +if(s===0)s=1 +return B.e.dO((a+1)*s)+2}, +b6i(a){var s +$.ec() +s=self.window.devicePixelRatio +if(s===0)s=1 +return B.e.dO((a+1)*s)+2}, +d27(a){a.remove()}, +cr7(a){if(a==null)return null +switch(a.a){case 3:return"source-over" +case 5:return"source-in" +case 7:return"source-out" +case 9:return"source-atop" +case 4:return"destination-over" +case 6:return"destination-in" +case 8:return"destination-out" +case 10:return"destination-atop" +case 12:return"lighten" +case 1:return"copy" +case 11:return"xor" +case 24:case 13:return"multiply" +case 14:return"screen" +case 15:return"overlay" +case 16:return"darken" +case 17:return"lighten" +case 18:return"color-dodge" +case 19:return"color-burn" +case 20:return"hard-light" +case 21:return"soft-light" +case 22:return"difference" +case 23:return"exclusion" +case 25:return"hue" +case 26:return"saturation" +case 27:return"color" +case 28:return"luminosity" +default:throw A.d(A.bT("Flutter Web does not support the blend mode: "+a.k(0)))}}, +cRK(a){switch(a.a){case 0:return B.bnl +case 3:return B.bnm +case 5:return B.bnn +case 7:return B.bnp +case 9:return B.bnq +case 4:return B.bnr +case 6:return B.bns +case 8:return B.bnt +case 10:return B.bnu +case 12:return B.bnv +case 1:return B.bnw +case 11:return B.bno +case 24:case 13:return B.bnF +case 14:return B.bnG +case 15:return B.bnJ +case 16:return B.bnH +case 17:return B.bnI +case 18:return B.bnK +case 19:return B.bnL +case 20:return B.bnM +case 21:return B.bny +case 22:return B.bnz +case 23:return B.bnA +case 25:return B.bnB +case 26:return B.bnC +case 27:return B.bnD +case 28:return B.bnE +default:return B.bnx}}, +cU6(a){if(a==null)return null +switch(a.a){case 0:return"butt" +case 1:return"round" +case 2:default:return"square"}}, +dw_(a){switch(a.a){case 1:return"round" +case 2:return"bevel" +case 0:default:return"miter"}}, +cAu(a5,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="transform-origin",a2=t.J,a3=A.a([],a2),a4=a5.length +for(s=null,r=null,q=0;q>>16&255)/255,0,0,0,0,(r>>>8&255)/255,0,0,0,0,(r&255)/255,0,0,0,1,0],t.n),"recolor") +s.Qf("recolor",m,1,0,0,0,6,n) +q=s.dN() +break +case 15:r=A.cRK(B.zL) +r.toString +q=A.cPD(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.cRK(b) +r.toString +q=A.cPD(a,r,!1) +break +case 1:case 2:case 6:case 8:case 4:case 0:case 3:throw A.d(A.bT("Blend mode not supported in HTML renderer: "+b.k(0))) +default:q=null}return q}, +Mv(){var s,r=A.asV($.cuP(),!1),q=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","filter"]),p=$.cMu+1 +$.cMu=p +p="_fcf"+p +q.id=p +s=q.filterUnits +s.toString +A.bCY(s,2) +s=q.x.baseVal +s.toString +A.bD_(s,"0%") +s=q.y.baseVal +s.toString +A.bD_(s,"0%") +s=q.width.baseVal +s.toString +A.bD_(s,"100%") +s=q.height.baseVal +s.toString +A.bD_(s,"100%") +return new A.bJ1(p,r,q)}, +cU8(a){var s=A.Mv() +s.a0a(a,"comp") +return s.dN()}, +cPD(a,b,c){var s="flood",r="SourceGraphic",q=A.Mv(),p=A.hR(a.a) +q.DI(p,"1",s) +p=b.b +if(c)q.afB(r,s,p) +else q.afB(s,r,p) +return q.dN()}, +alQ(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.a7&&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.W(m,j,m+s,j+r) +return a}, +alR(a,b,c,d){var s,r,q,p,o,n,m,l,k,j=A.d0(self.document,c),i=b.b===B.a7,h=b.c +if(h==null)h=0 +if(d.Nu(0)){s=a.a +r=a.b +q="translate("+A.r(s)+"px, "+A.r(r)+"px)"}else{s=new Float32Array(16) +p=new A.dX(s) +p.T(d) +r=a.a +o=a.b +p.ba(0,r,o) +q=A.pP(s) +s=r +r=o}n=j.style +A.a6(n,"position","absolute") +A.a6(n,"transform-origin","0 0 0") +A.a6(n,"transform",q) +m=A.hR(b.r) +o=b.x +if(o!=null){l=o.b +o=$.fv() +if(o===B.aQ&&!i){A.a6(n,"box-shadow","0px 0px "+A.r(l*2)+"px "+m) +o=b.r +m=A.hR(((B.e.aF((1-Math.min(Math.sqrt(l)/6.283185307179586,1))*(o>>>24&255))&255)<<24|o&16777215)>>>0)}else A.a6(n,"filter","blur("+A.r(l)+"px)")}A.a6(n,"width",A.r(a.c-s)+"px") +A.a6(n,"height",A.r(a.d-r)+"px") +if(i)A.a6(n,"border",A.Br(h)+" solid "+m) +else{A.a6(n,"background-color",m) +k=A.dlY(b.w,a) +A.a6(n,"background-image",k!==""?"url('"+k+"'":"")}return j}, +dlY(a,b){var s +if(a!=null){if(a instanceof A.IA){s=A.a21(a.e.a) +return s==null?"":s}if(a instanceof A.QO)return A.ax(a.M7(b,1,!0))}return""}, +cRG(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.a6(a,"border-radius",A.Br(b.z)) +return}A.a6(a,"border-top-left-radius",A.Br(q)+" "+A.Br(b.f)) +A.a6(a,"border-top-right-radius",A.Br(p)+" "+A.Br(b.w)) +A.a6(a,"border-bottom-left-radius",A.Br(b.z)+" "+A.Br(b.Q)) +A.a6(a,"border-bottom-right-radius",A.Br(b.x)+" "+A.Br(b.y))}, +Br(a){return B.e.aZ(a===0?1:a,3)+"px"}, +cvN(a,b,c){var s,r,q,p,o,n,m +if(0===b){c.push(new A.j(a.c,a.d)) +c.push(new A.j(a.e,a.f)) +return}s=new A.aMd() +a.ajE(s) +r=s.a +r.toString +q=s.b +q.toString +p=a.b +o=a.f +if(A.kp(p,a.d,o)){n=r.f +if(!A.kp(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}, +dks(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}, +cSr(a,b,c,d,e){return(((d+3*(b-c)-a)*e+3*(c-b-b+a))*e+3*(b-a))*e+a}, +dpB(b1,b2,b3,b4){var s,r,q,p,o,n,m,l=b1[7],k=b1[0],j=b1[1],i=b1[2],h=b1[3],g=b1[4],f=b1[5],e=b1[6],d=b2===0,c=!d?b2:b3,b=1-c,a=k*b+i*c,a0=j*b+h*c,a1=i*b+g*c,a2=h*b+f*c,a3=g*b+e*c,a4=f*b+l*c,a5=a*b+a1*c,a6=a0*b+a2*c,a7=a1*b+a3*c,a8=a2*b+a4*c,a9=a5*b+a7*c,b0=a6*b+a8*c +if(d){b4[0]=k +b4[1]=j +b4[2]=a +b4[3]=a0 +b4[4]=a5 +b4[5]=a6 +b4[6]=a9 +b4[7]=b0 +return}if(b3===1){b4[0]=a9 +b4[1]=b0 +b4[2]=a7 +b4[3]=a8 +b4[4]=a3 +b4[5]=a4 +b4[6]=e +b4[7]=l +return}s=(b3-b2)/(1-b2) +d=1-s +r=a9*d+a7*s +q=b0*d+a8*s +p=a7*d+a3*s +o=a8*d+a4*s +n=r*d+p*s +m=q*d+o*s +b4[0]=a9 +b4[1]=b0 +b4[2]=r +b4[3]=q +b4[4]=n +b4[5]=m +b4[6]=n*d+(p*d+(a3*d+e*s)*s)*s +b4[7]=m*d+(o*d+(a4*d+l*s)*s)*s}, +cz9(){var s=new A.Fr(A.cyo(),B.e1) +s.aqU() +return s}, +dk2(a,b,c){var s +if(0===c)s=0===b||360===b +else s=!1 +if(s)return new A.j(a.c,a.gc1().b) +return null}, +coy(a,b,c,d){var s=a+b +if(s<=c)return d +return Math.min(c/s,d)}, +cyn(a,b){var s=new A.bwV(a,b,a.w) +if(a.Q)a.a28() +if(!a.as)s.z=a.w +return s}, +diK(a,b,c,d,e,f,g,h){if(Math.abs(a*2/3+g/3-c)>0.5)return!0 +if(Math.abs(b*2/3+h/3-d)>0.5)return!0 +if(Math.abs(a/3+g*2/3-e)>0.5)return!0 +if(Math.abs(b/3+h*2/3-f)>0.5)return!0 +return!1}, +cA9(a,b,c,a0,a1,a2,a3,a4,a5,a6,a7,a8){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d +if(B.d.b2(a7-a6,10)!==0&&A.diK(a,b,c,a0,a1,a2,a3,a4)){s=(a+c)/2 +r=(b+a0)/2 +q=(c+a1)/2 +p=(a0+a2)/2 +o=(a1+a3)/2 +n=(a2+a4)/2 +m=(s+q)/2 +l=(r+p)/2 +k=(q+o)/2 +j=(p+n)/2 +i=(m+k)/2 +h=(l+j)/2 +g=a6+a7>>>1 +a5=A.cA9(i,h,k,j,o,n,a3,a4,A.cA9(a,b,s,r,m,l,i,h,a5,a6,g,a8),g,a7,a8)}else{f=a-a3 +e=b-a4 +d=a5+Math.sqrt(f*f+e*e) +if(d>a5)a8.push(new A.Y4(4,d,A.a([a,b,c,a0,a1,a2,a3,a4],t.n))) +a5=d}return a5}, +diL(a,b,c,d,e,f){if(Math.abs(c/2-(a+e)/4)>0.5)return!0 +if(Math.abs(d/2-(b+f)/4)>0.5)return!0 +return!1}, +b1z(a,b){var s=Math.sqrt(a*a+b*b) +return s<1e-9?B.h:new A.j(a/s,b/s)}, +dkt(a,a0,a1,a2){var s,r,q,p=a[5],o=a[0],n=a[1],m=a[2],l=a[3],k=a[4],j=a0===0,i=!j?a0:a1,h=1-i,g=o*h+m*i,f=n*h+l*i,e=m*h+k*i,d=l*h+p*i,c=g*h+e*i,b=f*h+d*i +if(j){a2[0]=o +a2[1]=n +a2[2]=g +a2[3]=f +a2[4]=c +a2[5]=b +return}if(a1===1){a2[0]=c +a2[1]=b +a2[2]=e +a2[3]=d +a2[4]=k +a2[5]=p +return}s=(a1-a0)/(1-a0) +j=1-s +r=c*j+e*s +q=b*j+d*s +a2[0]=c +a2[1]=b +a2[2]=r +a2[3]=q +a2[4]=r*j+(e*j+k*s)*s +a2[5]=q*j+(d*j+p*s)*s}, +cyo(){var s=new Float32Array(16) +s=new A.Ts(s,new Uint8Array(8)) +s.e=s.c=8 +s.CW=172 +return s}, +cKL(a){var s,r=new A.Ts(a.f,a.r) +r.e=a.e +r.w=a.w +r.c=a.c +r.d=a.d +r.x=a.x +r.z=a.z +r.y=a.y +s=a.Q +r.Q=s +if(!s){r.a=a.a +r.b=a.b +r.as=a.as}r.cx=a.cx +r.at=a.at +r.ax=a.ax +r.ay=a.ay +r.ch=a.ch +r.CW=a.CW +return r}, +daU(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}, +b2r(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}, +dtg(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}, +cz0(a,b,c,d,e,f){return new A.bGp(e-2*c+a,f-2*d+b,2*(c-a),2*(d-b),a,b)}, +bwZ(a,b,c,d,e,f){if(d===f)return A.kp(c,a,e)&&a!==e +else return a===c&&b===d}, +daW(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.b2r(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}, +dw7(a,b,c,d){var s,r,q,p,o=a[1],n=a[3] +if(!A.kp(o,c,n))return +s=a[0] +r=a[2] +if(!A.kp(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.j(q,p))}, +dw8(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.kp(i,c,h)&&!A.kp(h,c,g))return +s=a[0] +r=a[2] +q=a[4] +if(!A.kp(s,b,r)&&!A.kp(r,b,q))return +p=new A.zY() +o=p.zf(i-2*h+g,2*(h-i),i-c) +for(n=q-2*r+s,m=2*(r-s),l=0;l30)B.b.fE($.By,0).d.m()}else a.d.m()}}, +bx4(a,b){if(a<=0)return b*0.1 +else return Math.min(Math.max(b*0.5,a*10),b)}, +dkz(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.dO(a6/2)*2) +s=a8*a9 +if(s*a6*a6>4194304&&a6>2)a6=3355443.2/s}else a6=Math.max(2/B.e.ec(2/a6),0.0001) +return a6}, +Ok(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}, +dkA(a9,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=a9[0],a7=a9[1],a8=a9.length +for(s=a7,r=a6,q=2;q>>16&255)/255 +m[1]=(i.gj(i)>>>8&255)/255 +m[2]=(i.gj(i)&255)/255 +m[3]=(i.gj(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.gj(i)>>>8&255)/255 +e=h+1 +m[h]=(d.gj(i)&255)/255 +h=e+1 +m[e]=(d.gj(i)>>>24&255)/255}for(k=a3.length,f=0;f>>16&255)/255 +h=e+1 +m[e]=(i.gj(i)>>>8&255)/255 +m[h]=(i.gj(i)&255)/255 +m[h+1]=(i.gj(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;a 1.0) {") +m.push(" "+a.gCj().a+" = vec4(0, 0, 0, 0);") +m.push(" return;") +m.push("}")}return o}, +cS9(a){var s,r +if(a==null)return null +switch(a.d.a){case 0:s=a.a +if(s==null||a.b==null)return null +s.toString +r=a.b +r.toString +return new A.SS(s,r) +case 1:s=a.c +if(s==null)return null +return new A.SG(s) +case 2:throw A.d(A.bT("ColorFilter.linearToSrgbGamma not implemented for HTML renderer")) +case 3:throw A.d(A.bT("ColorFilter.srgbToLinearGamma not implemented for HTML renderer.")) +default:throw A.d(A.a0("Unknown mode "+a.k(0)+".type for ColorFilter."))}}, +cM3(a){return new A.aEr(A.a([],t.vU),A.a([],t.fe),a===2,!1,new A.bu(""))}, +aEs(a){return new A.aEr(A.a([],t.vU),A.a([],t.fe),a===2,!0,new A.bu(""))}, +ddk(a){switch(a){case 0:return"bool" +case 1:return"int" +case 2:return"float" +case 3:return"bvec2" +case 4:return"bvec3" +case 5:return"bvec4" +case 6:return"ivec2" +case 7:return"ivec3" +case 8:return"ivec4" +case 9:return"vec2" +case 10:return"vec3" +case 11:return"vec4" +case 12:return"mat2" +case 13:return"mat3" +case 14:return"mat4" +case 15:return"sampler1D" +case 16:return"sampler2D" +case 17:return"sampler3D" +case 18:return"void"}throw A.d(A.aM(null,null))}, +czA(){var s,r=$.cND +if(r==null){r=$.hy +s=A.cM3(r==null?$.hy=A.pN():r) +s.ye(11,"position") +s.ye(11,"color") +s.kr(14,"u_ctransform") +s.kr(11,"u_scale") +s.kr(11,"u_shift") +s.auY(11,"v_color") +r=A.a([],t.s) +s.c.push(new A.wH("main",r)) +r.push(u.y) +r.push("v_color = color.zyxw;") +r=$.cND=s.dN()}return r}, +cNF(){var s,r=$.cNE +if(r==null){r=$.hy +s=A.cM3(r==null?$.hy=A.pN():r) +s.ye(11,"position") +s.kr(14,"u_ctransform") +s.kr(11,"u_scale") +s.kr(11,"u_textransform") +s.kr(11,"u_shift") +s.auY(9,"v_texcoord") +r=A.a([],t.s) +s.c.push(new A.wH("main",r)) +r.push(u.y) +r.push("v_texcoord = vec2((u_textransform.z + position.x) * u_textransform.x, ((u_textransform.w + position.y) * u_textransform.y));") +r=$.cNE=s.dN()}return r}, +cIt(a,b,c){var s,r,q,p="texture2D",o=$.hy,n=A.aEs(o==null?$.hy=A.pN():o) +n.e=1 +n.ye(9,"v_texcoord") +n.kr(16,"u_texture") +o=A.a([],t.s) +s=new A.wH("main",o) +n.c.push(s) +if(!a)r=b===B.bH&&c===B.bH +else r=!0 +if(r){r=n.gCj() +q=n.y?"texture":p +o.push(r.a+" = "+q+"(u_texture, v_texcoord);")}else{s.av9("v_texcoord.x","u",b) +s.av9("v_texcoord.y","v",c) +o.push("vec2 uv = vec2(u, v);") +r=n.gCj() +q=n.y?"texture":p +o.push(r.a+" = "+q+"(u_texture, uv);")}return n.dN()}, +dpI(a){var s,r,q,p=$.ct9,o=p.length +if(o!==0)try{if(o>1)B.b.iL(p,new A.crt()) +for(p=$.ct9,o=p.length,r=0;r=s)return!1 +if(a[n]!==o.charCodeAt(p))continue $label0$0}return!0}return!1}, +dv8(a){$.Bx.push(a)}, +csE(a){return A.dsX(a)}, +dsX(a){var s=0,r=A.p(t.H),q,p,o,n +var $async$csE=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n={} +if($.alL!==B.CF){s=1 +break}$.alL=B.agX +p=A.nJ() +if(a!=null)p.b=a +A.dv7("ext.flutter.disassemble",new A.csG()) +n.a=!1 +$.cTZ=new A.csH(n) +n=A.nJ().b +if(n==null)n=null +else{n=n.assetBase +if(n==null)n=null}o=new A.b4a(n) +A.dnQ(o) +s=3 +return A.i(A.ma(A.a([new A.csI().$0(),A.b1s()],t.mo),!1,t.H),$async$csE) +case 3:$.alL=B.CG +case 1:return A.n(q,r)}}) +return A.o($async$csE,r)}, +cBC(){var s=0,r=A.p(t.H),q,p,o,n,m +var $async$cBC=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if($.alL!==B.CG){s=1 +break}$.alL=B.agY +p=$.ja() +if($.aCt==null)$.aCt=A.dc3(p===B.eK) +if($.cxK==null)$.cxK=A.d8Q() +p=A.nJ().b +if(p==null)p=null +else{p=p.multiViewEnabled +if(p==null)p=null}if(p!==!0){p=A.nJ().b +A.cSn(p==null?null:p.hostElement) +A.cSn(null) +if($.Bw==null){p=new A.biK() +o=$.nI.c +n=$.ar() +m=t.N +o.aAT(0,A.a1(["flt-renderer",n.gadi()+" (auto-selected)","flt-build-mode","release","spellcheck","false"],m,m)) +n.wV(0,p) +$.Bw=p}}$.alL=B.agZ +case 1:return A.n(q,r)}}) +return A.o($async$cBC,r)}, +dnQ(a){if(a===$.GF)return +$.GF=a}, +b1s(){var s=0,r=A.p(t.H),q,p,o +var $async$b1s=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=$.ar() +p.gN3().V(0) +q=$.GF +s=q!=null?2:3 +break +case 2:p=p.gN3() +q=$.GF +q.toString +o=p +s=5 +return A.i(A.b1W(q),$async$b1s) +case 5:s=4 +return A.i(o.wv(b),$async$b1s) +case 4:case 3:return A.n(null,r)}}) +return A.o($async$b1s,r)}, +d77(a,b){var s=t.g +return t.e.a({addView:s.a(A.cQ(new A.bir(a))),removeView:s.a(A.cQ(new A.bis(b)))})}, +d79(a,b){var s=t.g +return t.e.a({initializeEngine:s.a(A.cQ(new A.biu(b))),autoStart:s.a(A.cQ(new A.biv(a)))})}, +d76(a){return t.e.a({runApp:t.g.a(A.cQ(new A.biq(a)))})}, +b2_(a,b){var s=t.g.a(A.cQ(new A.cse(a,b))) +return A.oY(self.Promise,A.a([s],t.jl))}, +cAB(a){var s=B.e.au(a) +return A.cp(0,0,B.e.au((a-s)*1000),s,0,0)}, +dki(a,b){var s={} +s.a=null +return new A.coe(s,a,b)}, +d8Q(){var s=new A.awl(A.N(t.N,t.e)) +s.aUS() +return s}, +d8S(a){switch(a.a){case 0:case 4:return new A.a53(A.cCb("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.a53(A.cCb(';b1{bc1&cf1[fg1]gm2y')) +case 1:case 2:case 5:return new A.a53(A.cCb("8a2@q\u03a9qk1&kq3@q\xc6a\xe6aw2xy2\xa5\xff\u2190\xffz51)s.push(new A.jm(B.b.ga2(o),null,B.b.gP(o))) +else s.push(new A.jm(p,null,null))}return s}, +dma(a,b){var s=a.qg(b),r=A.pO(A.ax(s.b)) +switch(s.a){case"setDevicePixelRatio":$.ec().d=r +$.cf().f.$0() +return!0}return!1}, +BC(a,b){if(a==null)return +if(b===$.at)a.$0() +else b.OL(a)}, +GM(a,b,c,d){if(a==null)return +if(b===$.at)a.$1(c) +else b.D7(a,c,d)}, +dt5(a,b,c,d){if(b===$.at)a.$2(c,d) +else b.OL(new A.csK(a,c,d))}, +ds5(){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.cTn(A.L(A.cwy(self.window,p),"getPropertyValue",["font-size"])) +return(q==null?16:q)/16}, +cPZ(a,b){var s +b.toString +t.pE.a(b) +s=A.d0(self.document,A.ax(J.aS(b,"tagName"))) +A.a6(s.style,"width","100%") +A.a6(s.style,"height","100%") +return s}, +cSa(a){var s,r,q=A.d0(self.document,"flt-platform-view-slot") +A.a6(q.style,"pointer-events","auto") +s=A.d0(self.document,"slot") +r=A.bH("flt-pv-slot-"+a) +A.L(s,"setAttribute",["name",r==null?t.K.a(r):r]) +q.append(s) +return q}, +dpT(a){switch(a){case 0:return 1 +case 1:return 4 +case 2:return 2 +default:return B.d.hN(1,a)}}, +dbj(a){var s,r=$.cxK +r=r==null?null:r.ga2g() +r=new A.bxU(a,new A.bxV(),r) +s=$.fv() +if(s===B.aQ){s=$.ja() +s=s===B.cG}else s=!1 +if(s){s=$.cX7() +r.a=s +s.bIg()}r.f=r.aZg() +return r}, +cOt(a,b,c,d){var s,r,q=t.g.a(A.cQ(b)) +if(c==null)A.fS(d,a,q,null) +else{s=t.K +r=A.bH(A.a1(["passive",c],t.N,s)) +A.L(d,"addEventListener",[a,q,r==null?s.a(r):r])}A.fS(d,a,q,null) +return new A.aR4(a,d,q)}, +acU(a){var s=B.e.au(a) +return A.cp(0,0,B.e.au((a-s)*1000),s,0,0)}, +cRZ(a,b){var s,r,q,p,o=b.gjk().a,n=$.eD +if((n==null?$.eD=A.kU():n).a&&a.offsetX===0&&a.offsetY===0)return A.dky(a,o) +n=b.gjk() +s=a.target +s.toString +if(n.e.contains(s)){n=$.amw() +r=n.goP().w +if(r!=null){a.target.toString +n.goP().c.toString +q=new A.dX(r.c).Oj(a.offsetX,a.offsetY,0) +return new A.j(q.a,q.b)}}if(!J.q(a.target,o)){p=o.getBoundingClientRect() +return new A.j(a.clientX-p.x,a.clientY-p.y)}return new A.j(a.offsetX,a.offsetY)}, +dky(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.j(q,p)}, +cu1(a,b){var s=b.$0() +return s}, +dso(){if($.cf().ch==null)return +$.cB4=A.alP()}, +dsn(){if($.cf().ch==null)return +$.cAs=A.alP()}, +cSA(){if($.cf().ch==null)return +$.cAr=A.alP()}, +cSC(){if($.cf().ch==null)return +$.cAX=A.alP()}, +cSB(){var s,r,q=$.cf() +if(q.ch==null)return +s=$.cR8=A.alP() +$.cAK.push(new A.yS(A.a([$.cB4,$.cAs,$.cAr,$.cAX,s,s,0,0,0,0,1],t.t))) +$.cR8=$.cAX=$.cAr=$.cAs=$.cB4=-1 +if(s-$.cZJ()>1e5){$.dlO=s +r=$.cAK +A.GM(q.ch,q.CW,r,t.Px) +$.cAK=A.a([],t.no)}}, +alP(){return B.e.au(self.window.performance.now()*1000)}, +dc3(a){var s=new A.bzz(A.N(t.N,t.Cf),a) +s.aV4(a) +return s}, +dn9(a){}, +cBx(a,b){return a[b]}, +cTn(a){var s=self.window.parseFloat(a) +if(s==null||isNaN(s))return null +return s}, +dtQ(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.cTn(A.L(A.cwy(self.window,a),"getPropertyValue",["font-size"])):q}, +dwz(a,b){var s,r=self.document.createElement("CANVAS") +if(r==null)return null +try{A.Cu(r,a) +A.Ct(r,b)}catch(s){return null}return r}, +Wo(a){var s=a.format +return s==null?null:s}, +cx5(a){var s,r,q,p="premultipliedAlpha" +if(A.cyh()){s=a.a +s.toString +r=t.N +q=A.bdT(s,"webgl2",A.a1([p,!1],r,t.z)) +q.toString +q=new A.auN(q) +$.bkp.b=A.N(r,t.eS) +q.dy=s +s=q}else{s=a.b +s.toString +r=$.hy +r=(r==null?$.hy=A.pN():r)===1?"webgl":"webgl2" +q=t.N +r=A.o3(s,r,A.a1([p,!1],q,t.z)) +r.toString +r=new A.auN(r) +$.bkp.b=A.N(q,t.eS) +r.dy=s +s=r}return s}, +cU3(a,b,c,d,e,f,g){var s,r="uniform4f",q=b.a,p=a.nZ(0,q,"u_ctransform"),o=new Float32Array(16),n=new A.dX(o) +n.T(g) +n.ba(0,-c,-d) +s=a.a +A.L(s,"uniformMatrix4fv",[p,!1,o]) +A.L(s,r,[a.nZ(0,q,"u_scale"),2/e,-2/f,1,1]) +A.L(s,r,[a.nZ(0,q,"u_shift"),-1,1,0,0])}, +cRN(a,b,c){var s,r,q,p,o="bufferData" +if(c===1){s=a.gCz() +A.L(a.a,o,[a.gpt(),b,s])}else{r=b.length +q=new Float32Array(r) +for(p=0;p=h.length)h.push(r) +else h[o]=r +if(o>s)s=o}m=A.aK(s,0,!1,t.S) +l=h[s] +for(r=s-1;r>=0;--r){m[r]=l +l=i[l]}return m}, +cMH(a,b){var s=new A.aFV(B.bke,a,b) +s.aVe(a,b) +return s}, +dde(a){var s,r=$.a9h +if(r!=null)s=r.a===a +else s=!1 +if(s){r.toString +return r}return $.a9h=new A.bFh(a,A.a([],t.Up),$,$,$,null)}, +czJ(){var s=new Uint8Array(0),r=new DataView(new ArrayBuffer(8)) +return new A.bPv(new A.aH4(s,0),r,A.dF(r.buffer,0,null))}, +cS_(a){if(a===0)return B.h +return new A.j(200*a/600,400*a/600)}, +dpM(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.W(r-o,p-n,s+o,q+n).eD(A.cS_(b)).fH(20)}, +dpO(a,b){if(b===0)return null +return new A.bIW(Math.min(b*((800+(a.c-a.a)*0.5)/600),b*((800+(a.d-a.b)*0.5)/600)),A.cS_(b))}, +cSb(){var s=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","svg"]),r=A.bH("1.1") +A.L(s,"setAttribute",["version",r==null?t.K.a(r):r]) +return s}, +bD_(a,b){a.valueAsString=b +return b}, +bCY(a,b){a.baseVal=b +return b}, +UE(a,b){a.baseVal=b +return b}, +bCZ(a,b){a.baseVal=b +return b}, +cxL(a,b,c,d,e,f,g,h){return new A.rz($,$,$,$,$,$,$,$,$,0,c,d,e,f,g,h,a,b)}, +cJo(a,b,c,d,e,f){var s=new A.boV(d,f,a,b,e,c) +s.KK() +return s}, +cSo(){var s=$.cpH +if(s==null){s=t.jQ +s=$.cpH=new A.AJ(A.cB3(u.K,937,B.FP,s),B.dR,A.N(t.S,s),t.MX)}return s}, +d98(a){if(self.Intl.v8BreakIterator!=null)return new A.bO3(A.cSd(),a) +return new A.bhx(a)}, +cRL(a,b,c){var s,r,q,p,o,n,m,l,k=A.a([],t._f) +A.L(c,"adoptText",[b]) +c.first() +for(s=a.length,r=0;c.next()!==-1;r=q){q=B.e.au(c.current()) +for(p=r,o=0,n=0;p0){k.push(new A.DW(B.hG,o,n,r,p)) +r=p +o=0 +n=0}}if(o>0)l=B.fE +else l=q===s?B.fF:B.hG +k.push(new A.DW(l,o,n,r,q))}if(k.length===0||B.b.gP(k).c===B.fE)k.push(new A.DW(B.fF,0,0,s,s)) +return k}, +dkx(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.alY(a1,0) +r=A.cSo().Gz(s) +a.c=a.d=a.e=a.f=0 +q=new A.cox(a,a1,a0) +q.$2(B.af,2) +p=++a.f +for(o=a1.length,n=t.jQ,m=t.S,l=t.MX,k=B.dR,j=0;p<=o;p=++a.f){a.b=a.a +a.a=r +if(s!=null&&s>65535){q.$2(B.af,-1) +p=++a.f}s=A.alY(a1,p) +p=$.cpH +r=(p==null?$.cpH=new A.AJ(A.cB3(u.K,937,B.FP,n),B.dR,A.N(m,n),l):p).Gz(s) +i=a.a +j=i===B.nX?j+1:0 +if(i===B.l8||i===B.nV){q.$2(B.fE,5) +continue}if(i===B.nZ){if(r===B.l8)q.$2(B.af,5) +else q.$2(B.fE,5) +continue}if(r===B.l8||r===B.nV||r===B.nZ){q.$2(B.af,6) +continue}p=a.f +if(p>=o)break +if(r===B.j6||r===B.v5){q.$2(B.af,7) +continue}if(i===B.j6){q.$2(B.hG,18) +continue}if(i===B.v5){q.$2(B.hG,8) +continue}if(i===B.v6){q.$2(B.af,8) +continue}h=i!==B.v0 +if(h&&!0)k=i==null?B.dR:i +if(r===B.v0||r===B.v6){if(k!==B.j6){if(k===B.nX)--j +q.$2(B.af,9) +r=k +continue}r=B.dR}if(!h||!1){a.a=k +h=k}else h=i +if(r===B.v8||h===B.v8){q.$2(B.af,11) +continue}if(h===B.v3){q.$2(B.af,12) +continue}g=h!==B.j6 +if(!(!g||h===B.nS||h===B.l7)&&r===B.v3){q.$2(B.af,12) +continue}if(g)g=r===B.v2||r===B.l6||r===B.EN||r===B.nT||r===B.v1 +else g=!1 +if(g){q.$2(B.af,13) +continue}if(h===B.l5){q.$2(B.af,14) +continue}g=h===B.vb +if(g&&r===B.l5){q.$2(B.af,15) +continue}f=h!==B.v2 +if((!f||h===B.l6)&&r===B.v4){q.$2(B.af,16) +continue}if(h===B.v7&&r===B.v7){q.$2(B.af,17) +continue}if(g||r===B.vb){q.$2(B.af,19) +continue}if(h===B.va||r===B.va){q.$2(B.hG,20) +continue}if(r===B.nS||r===B.l7||r===B.v4||h===B.EL){q.$2(B.af,21) +continue}if(a.b===B.dQ)g=h===B.l7||h===B.nS +else g=!1 +if(g){q.$2(B.af,21) +continue}g=h===B.v1 +if(g&&r===B.dQ){q.$2(B.af,21) +continue}if(r===B.EM){q.$2(B.af,22) +continue}e=h!==B.dR +if(!((!e||h===B.dQ)&&r===B.fG))if(h===B.fG)d=r===B.dR||r===B.dQ +else d=!1 +else d=!0 +if(d){q.$2(B.af,23) +continue}d=h===B.o_ +if(d)c=r===B.v9||r===B.nW||r===B.nY +else c=!1 +if(c){q.$2(B.af,23) +continue}if((h===B.v9||h===B.nW||h===B.nY)&&r===B.hH){q.$2(B.af,23) +continue}c=!d +if(!c||h===B.hH)b=r===B.dR||r===B.dQ +else b=!1 +if(b){q.$2(B.af,24) +continue}if(!e||h===B.dQ)b=r===B.o_||r===B.hH +else b=!1 +if(b){q.$2(B.af,24) +continue}if(!f||h===B.l6||h===B.fG)f=r===B.hH||r===B.o_ +else f=!1 +if(f){q.$2(B.af,25) +continue}f=h!==B.hH +if((!f||d)&&r===B.l5){q.$2(B.af,25) +continue}if((!f||!c||h===B.l7||h===B.nT||h===B.fG||g)&&r===B.fG){q.$2(B.af,25) +continue}g=h===B.nU +if(g)f=r===B.nU||r===B.l9||r===B.lb||r===B.lc +else f=!1 +if(f){q.$2(B.af,26) +continue}f=h!==B.l9 +if(!f||h===B.lb)c=r===B.l9||r===B.la +else c=!1 +if(c){q.$2(B.af,26) +continue}c=h!==B.la +if((!c||h===B.lc)&&r===B.la){q.$2(B.af,26) +continue}if((g||!f||!c||h===B.lb||h===B.lc)&&r===B.hH){q.$2(B.af,27) +continue}if(d)g=r===B.nU||r===B.l9||r===B.la||r===B.lb||r===B.lc +else g=!1 +if(g){q.$2(B.af,27) +continue}if(!e||h===B.dQ)g=r===B.dR||r===B.dQ +else g=!1 +if(g){q.$2(B.af,28) +continue}if(h===B.nT)g=r===B.dR||r===B.dQ +else g=!1 +if(g){q.$2(B.af,29) +continue}if(!e||h===B.dQ||h===B.fG)if(r===B.l5){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.af,30) +continue}if(h===B.l6){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.dR||r===B.dQ||r===B.fG +else p=!1}else p=!1 +if(p){q.$2(B.af,30) +continue}if(r===B.nX){if((j&1)===1)q.$2(B.af,30) +else q.$2(B.hG,30) +continue}if(h===B.nW&&r===B.nY){q.$2(B.af,30) +continue}q.$2(B.hG,31)}q.$2(B.fF,3) +return a0}, +GN(a,b,c,d,e){var s,r,q +if(c===d)return 0 +s=a.font +if(c===$.cQI&&d===$.cQH&&b===$.cQJ&&s===$.cQG)r=$.cQL +else{q=A.L(a,"measureText",[c===0&&d===b.length?b:B.c.R(b,c,d)]).width +if(q==null)q=null +q.toString +r=q}$.cQI=c +$.cQH=d +$.cQJ=b +$.cQG=s +$.cQL=r +if(e==null)e=0 +return B.e.aF((e!==0?r+e*(d-c):r)*100)/100}, +cI2(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0,a1,a2,a3){var s=g==null,r=s?"":g +return new A.a2G(b,c,d,e,f,m,k,a2,!s,r,h,i,l,j,q,a3,o,p,a0,a,n,a1)}, +cBr(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""}, +dnR(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=$.cDZ().Gz(q) +if(r!=null)return r +return null}, +cAN(a,b){var s=A.alY(a,b) +s.toString +if(s>=48&&s<=57)return B.nB +if(s>=1632&&s<=1641)return B.Dx +switch($.cDZ().Gz(s)){case B.j:return B.Dw +case B.ae:return B.Dx +case null:case void 0:return B.ut}}, +alY(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}, +dg5(a,b,c){return new A.AJ(a,b,A.N(t.S,c),c.h("AJ<0>"))}, +dg6(a,b,c,d,e){return new A.AJ(A.cB3(a,b,c,e),d,A.N(t.S,e),e.h("AJ<0>"))}, +cB3(a,b,c,d){var s,r,q,p,o,n=A.a([],d.h("D>")),m=a.length +for(s=d.h("hx<0>"),r=0;r=0&&q<=r))break +q+=s +if(A.dgW(b,q))break}return A.GK(q,0,r)}, +dgW(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=$.amx().WO(0,a,b) +q=$.amx().WO(0,a,s) +if(q===B.qz&&r===B.qA)return!1 +if(A.lg(q,B.yC,B.qz,B.qA,j,j))return!0 +if(A.lg(r,B.yC,B.qz,B.qA,j,j))return!0 +if(q===B.yB&&r===B.yB)return!1 +if(A.lg(r,B.mf,B.mg,B.me,j,j))return!1 +for(p=0;A.lg(q,B.mf,B.mg,B.me,j,j);){++p +s=b-p-1 +if(s<0)return!0 +o=$.amx() +n=A.alY(a,s) +q=n==null?o.b:o.Gz(n)}if(A.lg(q,B.et,B.cT,j,j,j)&&A.lg(r,B.et,B.cT,j,j,j))return!1 +m=0 +do{++m +l=$.amx().WO(0,a,b+m)}while(A.lg(l,B.mf,B.mg,B.me,j,j)) +do{++p +k=$.amx().WO(0,a,b-p-1)}while(A.lg(k,B.mf,B.mg,B.me,j,j)) +if(A.lg(q,B.et,B.cT,j,j,j)&&A.lg(r,B.yz,B.md,B.k2,j,j)&&A.lg(l,B.et,B.cT,j,j,j))return!1 +if(A.lg(k,B.et,B.cT,j,j,j)&&A.lg(q,B.yz,B.md,B.k2,j,j)&&A.lg(r,B.et,B.cT,j,j,j))return!1 +s=q===B.cT +if(s&&r===B.k2)return!1 +if(s&&r===B.yy&&l===B.cT)return!1 +if(k===B.cT&&q===B.yy&&r===B.cT)return!1 +s=q===B.fl +if(s&&r===B.fl)return!1 +if(A.lg(q,B.et,B.cT,j,j,j)&&r===B.fl)return!1 +if(s&&A.lg(r,B.et,B.cT,j,j,j))return!1 +if(k===B.fl&&A.lg(q,B.yA,B.md,B.k2,j,j)&&r===B.fl)return!1 +if(s&&A.lg(r,B.yA,B.md,B.k2,j,j)&&l===B.fl)return!1 +if(q===B.mh&&r===B.mh)return!1 +if(A.lg(q,B.et,B.cT,B.fl,B.mh,B.qy)&&r===B.qy)return!1 +if(q===B.qy&&A.lg(r,B.et,B.cT,B.fl,B.mh,j))return!1 +return!0}, +lg(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}, +d6o(a){switch(a){case"TextInputAction.continueAction":case"TextInputAction.next":return B.a53 +case"TextInputAction.previous":return B.a5b +case"TextInputAction.done":return B.a4A +case"TextInputAction.go":return B.a4N +case"TextInputAction.newline":return B.a4I +case"TextInputAction.search":return B.a5o +case"TextInputAction.send":return B.a5p +case"TextInputAction.emergencyCall":case"TextInputAction.join":case"TextInputAction.none":case"TextInputAction.route":case"TextInputAction.unspecified":default:return B.a54}}, +cI0(a,b){switch(a){case"TextInputType.number":return b?B.a4u:B.a55 +case"TextInputType.phone":return B.a58 +case"TextInputType.emailAddress":return B.a4D +case"TextInputType.url":return B.a5E +case"TextInputType.multiline":return B.a52 +case"TextInputType.none":return B.Ay +case"TextInputType.text":default:return B.a5x}}, +df_(a){var s +if(a==="TextCapitalization.words")s=B.YS +else if(a==="TextCapitalization.characters")s=B.YU +else s=a==="TextCapitalization.sentences"?B.YT:B.xT +return new A.aaR(s)}, +dl9(a){}, +b1J(a,b,c,d){var s,r="transparent",q="none",p=a.style +A.a6(p,"white-space","pre-wrap") +A.a6(p,"align-content","center") +A.a6(p,"padding","0") +A.a6(p,"opacity","1") +A.a6(p,"color",r) +A.a6(p,"background-color",r) +A.a6(p,"background",r) +A.a6(p,"outline",q) +A.a6(p,"border",q) +A.a6(p,"resize",q) +A.a6(p,"text-shadow",r) +A.a6(p,"transform-origin","0 0 0") +if(b){A.a6(p,"top","-9999px") +A.a6(p,"left","-9999px")}if(d){A.a6(p,"width","0") +A.a6(p,"height","0")}if(c)A.a6(p,"pointer-events",q) +s=$.fv() +if(s!==B.fr)s=s===B.aQ +else s=!0 +if(s)A.L(a.classList,"add",["transparentTextEditing"]) +A.a6(p,"caret-color",r)}, +d6n(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=A.N(s,t.e) +q=A.N(s,t.M1) +p=A.d0(self.document,"form") +o=$.amw().goP() instanceof A.a8H +p.noValidate=!0 +p.method="post" +p.action="#" +A.fS(p,"submit",$.cuV(),a5) +A.b1J(p,!1,o,!0) +n=J.RW(0,s) +m=A.cvl(a6,B.YR) +if(a7!=null)for(s=t.a,l=J.ie(a7,s),k=A.z(l),l=new A.bj(l,l.gA(l),k.h("bj")),j=m.b,k=k.h("a2.E"),i=!o,h=a5,g=!1;l.t();){f=l.d +if(f==null)f=k.a(f) +e=J.ao(f) +d=s.a(e.i(f,"autofill")) +c=A.ax(e.i(f,"textCapitalization")) +if(c==="TextCapitalization.words")c=B.YS +else if(c==="TextCapitalization.characters")c=B.YU +else c=c==="TextCapitalization.sentences"?B.YT:B.xT +b=A.cvl(d,new A.aaR(c)) +c=b.b +n.push(c) +if(c!==j){a=A.cI0(A.ax(J.aS(s.a(e.i(f,"inputType")),"name")),!1).a8Y() +b.a.mX(a) +b.mX(a) +A.b1J(a,!1,o,i) +q.n(0,c,b) +r.n(0,c,a) +p.append(a) +if(g){h=a +g=!1}}else g=!0}else{n.push(m.b) +h=a5}B.b.o3(n) +for(s=n.length,a0=0,l="";a00?l+"*":l)+a1}a2=l.charCodeAt(0)==0?l:l +a3=$.b1Z.i(0,a2) +if(a3!=null)a3.remove() +a4=A.d0(self.document,"input") +A.b1J(a4,!0,!1,!0) +a4.className="submitBtn" +A.bdQ(a4,"submit") +p.append(a4) +return new A.bgz(p,r,q,h==null?a4:h,a2)}, +cvl(a,b){var s,r=J.ao(a),q=A.ax(r.i(a,"uniqueIdentifier")),p=t.kc.a(r.i(a,"hints")),o=p==null||J.h3(p)?null:A.ax(J.jD(p)),n=A.cHR(t.a.a(r.i(a,"editingValue"))) +if(o!=null){s=$.cUE().a.i(0,o) +if(s==null)s=o}else s=null +return new A.ant(n,q,s,A.bw(r.i(a,"hintText")))}, +cAZ(a,b,c){var s=c.a,r=c.b,q=Math.min(s,r) +r=Math.max(s,r) +return B.c.R(a,0,q)+b+B.c.b0(a,r)}, +df1(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.VN(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 +d=a2.c +if(f>d)f=d +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.cAZ(h,g,new A.ea(f,e)) +f=a1.a +f.toString +if(m!==f){l=B.c.p(g,".") +for(e=A.b4(A.b2f(g),!0,!1,!1).kt(0,f),e=new A.oO(e.a,e.b,e.c),d=t.Qz,b=h.length;e.t();){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.cAZ(h,g,new A.ea(r,j))}else{j=l?r+a[0].length-1:r+a[0].length +i=A.cAZ(h,g,new A.ea(r,j))}if(i===f){a0.c=r +a0.d=j +break}}}}a0.e=a1.b +a0.f=a1.c +return a0}, +a2o(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.QG(e,r,Math.max(0,s),b,c)}, +cHR(a){var s=J.ao(a),r=A.bw(s.i(a,"text")),q=B.e.au(A.e6(s.i(a,"selectionBase"))),p=B.e.au(A.e6(s.i(a,"selectionExtent"))),o=A.cxI(a,"composingBase"),n=A.cxI(a,"composingExtent") +s=o==null?-1:o +return A.a2o(q,s,n==null?-1:n,p,r)}, +cHQ(a){var s,r,q,p=null,o=globalThis.HTMLInputElement +if(o!=null&&a instanceof o){s=a.selectionDirection +if((s==null?p:s)==="backward"){s=A.cww(a) +r=A.cHg(a) +r=r==null?p:B.e.au(r) +q=A.cHh(a) +return A.a2o(r,-1,-1,q==null?p:B.e.au(q),s)}else{s=A.cww(a) +r=A.cHh(a) +r=r==null?p:B.e.au(r) +q=A.cHg(a) +return A.a2o(r,-1,-1,q==null?p:B.e.au(q),s)}}else{o=globalThis.HTMLTextAreaElement +if(o!=null&&a instanceof o){s=a.selectionDirection +if((s==null?p:s)==="backward"){s=A.cHm(a) +r=A.cHk(a) +r=r==null?p:B.e.au(r) +q=A.cHl(a) +return A.a2o(r,-1,-1,q==null?p:B.e.au(q),s)}else{s=A.cHm(a) +r=A.cHl(a) +r=r==null?p:B.e.au(r) +q=A.cHk(a) +return A.a2o(r,-1,-1,q==null?p:B.e.au(q),s)}}else throw A.d(A.aq("Initialized with unsupported input type"))}}, +cJ1(a){var s,r,q,p,o,n="inputType",m="autofill",l=J.ao(a),k=t.a,j=A.ax(J.aS(k.a(l.i(a,n)),"name")),i=A.lk(J.aS(k.a(l.i(a,n)),"decimal")) +j=A.cI0(j,i===!0) +i=A.bw(l.i(a,"inputAction")) +if(i==null)i="TextInputAction.done" +s=A.lk(l.i(a,"obscureText")) +r=A.lk(l.i(a,"readOnly")) +q=A.lk(l.i(a,"autocorrect")) +p=A.df_(A.ax(l.i(a,"textCapitalization"))) +k=l.aB(a,m)?A.cvl(k.a(l.i(a,m)),B.YR):null +o=A.d6n(t.nA.a(l.i(a,m)),t.kc.a(l.i(a,"fields"))) +l=A.lk(l.i(a,"enableDeltaModel")) +return new A.bnC(j,i,r===!0,s===!0,q!==!1,l===!0,k,o,p)}, +d7z(a){return new A.auS(a,A.a([],t.Up),$,$,$,null)}, +dvn(){$.b1Z.aE(0,new A.ctv())}, +dpC(){var s,r,q +for(s=$.b1Z.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +if(q==null)q=r.a(q) +q.remove()}$.b1Z.V(0)}, +d5Y(a){var s=J.ao(a),r=A.ew(J.dP(t.j.a(s.i(a,"transform")),new A.bfl(),t.z),!0,t.i) +return new A.bfk(A.e6(s.i(a,"width")),A.e6(s.i(a,"height")),new Float32Array(A.f1(r)))}, +cC2(a,b){var s=a.style +A.a6(s,"transform-origin","0 0 0") +A.a6(s,"transform",A.pP(b))}, +pP(a){var s=A.cu3(a) +if(s===B.Zu)return"matrix("+A.r(a[0])+","+A.r(a[1])+","+A.r(a[4])+","+A.r(a[5])+","+A.r(a[12])+","+A.r(a[13])+")" +else if(s===B.qr)return A.dsa(a) +else return"none"}, +cu3(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.qr +if(a[0]===1&&a[1]===0&&a[4]===0&&a[5]===1&&a[12]===0&&a[13]===0)return B.Zt +else return B.Zu}, +dsa(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.r(a[12])+"px, "+A.r(a[13])+"px, 0px)" +else return"matrix3d("+A.r(s)+","+A.r(a[1])+","+A.r(a[2])+","+A.r(a[3])+","+A.r(a[4])+","+A.r(a[5])+","+A.r(a[6])+","+A.r(a[7])+","+A.r(a[8])+","+A.r(a[9])+","+A.r(a[10])+","+A.r(a[11])+","+A.r(a[12])+","+A.r(a[13])+","+A.r(a[14])+","+A.r(a[15])+")"}, +cu5(a,b){var s=$.d04() +s[0]=b.a +s[1]=b.b +s[2]=b.c +s[3]=b.d +A.cu4(a,s) +return new A.W(s[0],s[1],s[2],s[3])}, +cu4(a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=$.cDY() +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=$.d03().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}, +cTR(a,b){return a.a<=b.a&&a.b<=b.b&&a.c>=b.c&&a.d>=b.d}, +hR(a){var s,r +if(a===4278190080)return"#000000" +if((a&4278190080)>>>0===4278190080){s=B.d.k9(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.d.k(a>>>16&255)+","+B.d.k(a>>>8&255)+","+B.d.k(a&255)+","+B.e.k((a>>>24&255)/255)+")" +return r.charCodeAt(0)==0?r:r}}, +dpH(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)+")"}, +cQn(){if(A.dtd())return"BlinkMacSystemFont" +var s=$.ja() +if(s!==B.cG)s=s===B.eK +else s=!0 +if(s)return"-apple-system, BlinkMacSystemFont" +return"Arial"}, +crn(a){var s +if(B.blt.p(0,a))return a +s=$.ja() +if(s!==B.cG)s=s===B.eK +else s=!0 +if(s)if(a===".SF Pro Text"||a===".SF Pro Display"||a===".SF UI Text"||a===".SF UI Display")return A.cQn() +return'"'+A.r(a)+'", '+A.cQn()+", sans-serif"}, +dtI(a){var s,r,q=a.gA(a),p=q.X(0,2),o=new Float32Array(p) +for(s=0,r=0;B.d.Ai(s,q);++s,r+=2){p=a.i(0,s) +o[r]=p.ga9R(p) +p=a.i(0,s) +o[r+1]=p.gbJy(p)}return o}, +GK(a,b,c){if(ac)return c +else return a}, +pQ(a,b){var s +if(a==null)return b==null +if(b==null||a.length!==b.length)return!1 +for(s=0;s")).bQ(0," ")}, +j9(a,b,c){A.a6(a.style,b,c)}, +cU2(a){var s=A.L(self.document,"querySelector",["#flutterweb-theme"]) +if(a!=null){if(s==null){s=A.d0(self.document,"meta") +s.id="flutterweb-theme" +s.name="theme-color" +self.document.head.append(s)}s.content=A.hR(a.a)}else if(s!=null)s.remove()}, +alW(a,b,c,d,e,f,g,h,i){var s=$.cQ1 +if(s==null?$.cQ1=a.ellipse!=null:s)A.L(a,"ellipse",[b,c,d,e,f,g,h,i]) +else{a.save() +A.L(a,"translate",[b,c]) +A.L(a,"rotate",[f]) +A.L(a,"scale",[d,e]) +A.d4W(a,0,0,1,g,h,i) +a.restore()}}, +cBZ(a){var s +for(;a.lastChild!=null;){s=a.lastChild +if(s.parentNode!=null)s.parentNode.removeChild(s)}}, +cxT(a,b,c){var s=b.h("@<0>").a1(c),r=new A.AZ(s.h("AZ<+key,value(1,2)>")) +r.a=r +r.b=r +return new A.axd(a,new A.yB(r,s.h("yB<+key,value(1,2)>")),A.N(b,s.h("cHC<+key,value(1,2)>")),s.h("axd<1,2>"))}, +hY(){var s=new Float32Array(16) +s[15]=1 +s[0]=1 +s[5]=1 +s[10]=1 +return new A.dX(s)}, +d9W(a){return new A.dX(a)}, +d9Z(a){var s=new A.dX(new Float32Array(16)) +if(s.l7(a)===0)return null +return s}, +Zq(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}, +d3Z(a){var s=new A.arX(a,new A.h1(null,null,t.Qh)) +s.aUy(a) +return s}, +cGL(a){var s,r +if(a!=null)return A.d3Z(a) +else{s=new A.auy(new A.h1(null,null,t.pB)) +r=self.window.visualViewport +if(r==null)r=self.window +s.b=A.hF(r,"resize",s.gbcE()) +return s}}, +cI_(a){if(a!=null){A.d4Y(a) +return new A.bbi(a)}else return new A.bjs()}, +cMq(a,b,c,d){var s=A.d0(self.document,"style") +if(d!=null)s.nonce=d +s.id=c +b.appendChild(s) +A.doJ(s,a,"normal normal 14px sans-serif")}, +doJ(a,b,c){var s,r,q,p="createTextNode" +a.append(A.L(self.document,p,[b+" flt-scene-host { font: "+c+";}"+b+" flt-semantics input[type=range] { appearance: none; -webkit-appearance: none; width: 100%; position: absolute; border: none; top: 0; right: 0; bottom: 0; left: 0;}"+b+" input::selection { background-color: transparent;}"+b+" textarea::selection { background-color: transparent;}"+b+" flt-semantics input,"+b+" flt-semantics textarea,"+b+' flt-semantics [contentEditable="true"] { caret-color: transparent;}'+b+" .flt-text-editing::placeholder { opacity: 0;}"])) +r=$.fv() +if(r===B.aQ)a.append(A.L(self.document,p,[b+" * { -webkit-tap-highlight-color: transparent;}"+b+" flt-semantics input[type=range]::-webkit-slider-thumb { -webkit-appearance: none;}"])) +if(r===B.ew)a.append(A.L(self.document,p,[b+" flt-paragraph,"+b+" flt-span { line-height: 100%;}"])) +if(r!==B.fr)r=r===B.aQ +else r=!0 +if(r)a.append(A.L(self.document,p,[b+" .transparentTextEditing:-webkit-autofill,"+b+" .transparentTextEditing:-webkit-autofill:hover,"+b+" .transparentTextEditing:-webkit-autofill:focus,"+b+" .transparentTextEditing:-webkit-autofill:active { opacity: 0 !important;}"])) +if(B.c.p(self.window.navigator.userAgent,"Edg/"))try{a.append(A.L(self.document,p,[b+" input::-ms-reveal { display: none;}"]))}catch(q){r=A.ag(q) +if(t.e.b(r)){s=r +A.L(self.window.console,"warn",[J.cw(s)])}else throw q}}, +dwJ(){var s=$.nI +s.toString +return s}, +cSn(a){var s,r +if($.nI==null){s=$.cf() +r=new A.QN(A.dm(null,t.H),0,s,A.cI_(a),B.k0,A.cGL(a)) +r.ahS(0,s,a) +$.nI=r +s=s.gis() +r=$.nI +r.toString +s.bFC(r)}s=$.nI +s.toString +return s}, +ZK:function ZK(a){var _=this +_.a=a +_.d=_.c=_.b=null}, +b3R:function b3R(a,b){this.a=a +this.b=b}, +b3V:function b3V(a){this.a=a}, +b3W:function b3W(a){this.a=a}, +b3S:function b3S(a){this.a=a}, +b3T:function b3T(a){this.a=a}, +b3U:function b3U(a){this.a=a}, +a01:function a01(a,b){this.a=a +this.b=b}, +zE:function zE(a,b){this.a=a +this.b=b}, +b8k:function b8k(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}, +baS:function baS(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}, +aVR:function aVR(){}, +rj:function rj(a){this.a=a}, +b9c:function b9c(a,b,c){this.a=a +this.b=b +this.c=c}, +coj:function coj(){}, +coM:function coM(a,b){this.a=a +this.b=b}, +coL:function coL(a,b){this.a=a +this.b=b}, +aox:function aox(a){this.a=a}, +axj:function axj(a){this.a=a +this.b=$}, +aoZ:function aoZ(){}, +a0m:function a0m(a,b){this.a=a +this.b=b}, +Pw:function Pw(a){this.a=a}, +ap7:function ap7(){}, +apb:function apb(){}, +Pv:function Pv(a,b){this.a=a +this.b=b}, +a1R:function a1R(a,b,c,d){var _=this +_.a=a +_.b=$ +_.c=b +_.d=c +_.$ti=d}, +avC:function avC(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=$ +_.Q=0 +_.as=null +_.at=k}, +bm3:function bm3(){}, +bm_:function bm_(a){this.a=a}, +blY:function blY(){}, +blZ:function blZ(){}, +bm4:function bm4(a){this.a=a}, +bm0:function bm0(){}, +bm1:function bm1(a){this.a=a}, +bm2:function bm2(a){this.a=a}, +KH:function KH(a){this.a=a +this.b=0}, +Wp:function Wp(a,b){this.a=a +this.b=b +this.c=-1}, +a2z:function a2z(a,b,c){this.a=a +this.b=b +this.c=c}, +Kv:function Kv(a,b){this.a=a +this.b=b}, +rH:function rH(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +Kw:function Kw(a){this.a=a}, +a2A:function a2A(a,b){this.a=a +this.b=b +this.c=0}, +x6:function x6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +crO:function crO(a,b){this.a=a +this.b=b}, +crN:function crN(a,b){this.a=a +this.b=b}, +aEH:function aEH(a,b,c,d,e){var _=this +_.a=a +_.b=$ +_.c=b +_.d=c +_.e=d +_.f=e +_.w=_.r=null}, +bGr:function bGr(){}, +bGs:function bGs(){}, +bGt:function bGt(){}, +Ls:function Ls(a,b,c){this.a=a +this.b=b +this.c=c}, +abI:function abI(a,b,c){this.a=a +this.b=b +this.c=c}, +IY:function IY(a,b,c){this.a=a +this.b=b +this.c=c}, +bGq:function bGq(a){this.a=a}, +ctQ:function ctQ(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}, +avM:function avM(a){this.a=a}, +cto:function cto(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +HK:function HK(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.d=!1}, +ap4:function ap4(){}, +adp:function adp(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=$}, +adq:function adq(a,b){this.a=a +this.b=b +this.d=$}, +aoX:function aoX(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=0 +_.e=-1 +_.f=c +_.r=d +_.w=!1}, +a0n:function a0n(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=$ +_.f=!1 +_.r=0 +_.w=null +_.x=d}, +lz:function lz(){}, +aBV:function aBV(a,b){this.b=a +this.c=b}, +aAH:function aAH(a,b,c){this.a=a +this.b=b +this.d=c}, +Q1:function Q1(){}, +aDG:function aDG(a,b){this.c=a +this.a=null +this.b=b}, +anB:function anB(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +apk:function apk(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +apn:function apn(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +apm:function apm(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +aAm:function aAm(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +abA:function abA(a,b,c){var _=this +_.f=a +_.c=b +_.a=null +_.b=c}, +aAl:function aAl(a,b,c){var _=this +_.f=a +_.c=b +_.a=null +_.b=c}, +avP:function avP(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +bmB:function bmB(a,b){this.a=a +this.b=b}, +aBk:function aBk(a,b,c){var _=this +_.c=a +_.d=b +_.a=null +_.b=c}, +apv:function apv(a,b,c){var _=this +_.f=a +_.c=b +_.a=null +_.b=c}, +aBB:function aBB(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=null +_.b=e}, +awJ:function awJ(a){this.a=a}, +boC:function boC(a){this.a=a +this.b=$}, +boD:function boD(a){this.a=a}, +bje:function bje(a,b,c){this.a=a +this.b=b +this.c=c}, +bjl:function bjl(a,b,c){this.a=a +this.b=b +this.c=c}, +bjm:function bjm(a,b,c){this.a=a +this.b=b +this.c=c}, +apE:function apE(){}, +b9e:function b9e(a,b){this.a=a +this.b=b +this.c=$}, +btV:function btV(a){this.a=a}, +btW:function btW(a,b){this.a=a +this.b=b}, +btX:function btX(a){this.a=a}, +Ku:function Ku(a,b,c,d){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=$}, +btY:function btY(){}, +a0o:function a0o(a){this.a=a}, +cp9:function cp9(){}, +buf:function buf(){}, +jV:function jV(a,b){this.a=null +this.b=a +this.$ti=b}, +apW:function apW(a,b){var _=this +_.a=$ +_.b=1 +_.c=a +_.$ti=b}, +bv7:function bv7(a,b){this.a=a +this.b=b}, +bv8:function bv8(a,b){this.a=a +this.b=b}, +KE:function KE(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.a=c +_.b=d +_.c=e +_.d=$}, +bv9:function bv9(){}, +Px:function Px(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 +_.cx=0}, +b9f:function b9f(a){this.a=a}, +Py:function Py(a){this.a=$ +this.b=a}, +apa:function apa(a,b){this.a=a +this.b=b +this.c=$}, +b9d:function b9d(a){var _=this +_.a=a +_.b=$ +_.c=0 +_.d=null}, +ap_:function ap_(a){this.a=a +this.b=$}, +b9i:function b9i(){}, +HL:function HL(){this.a=$ +this.b=!1 +this.c=null}, +tE:function tE(){this.b=this.a=null}, +bzw:function bzw(){}, +Wr:function Wr(){}, +Qu:function Qu(){}, +Lu:function Lu(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=0 +_.f=_.e=$ +_.r=-1}, +Po:function Po(a,b){this.a=a +this.b=b}, +a0b:function a0b(a,b,c){var _=this +_.a=null +_.b=$ +_.d=a +_.e=b +_.r=_.f=null +_.w=c}, +b8h:function b8h(a){this.a=a}, +aEz:function aEz(){}, +ap1:function ap1(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=$}, +ap2:function ap2(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=$}, +ap0:function ap0(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.a=$}, +ap5:function ap5(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=null +_.r=$ +_.w=!1}, +t2:function t2(a,b,c){var _=this +_.a=null +_.b=a +_.c=b +_.d=!0 +_.e=!1 +_.Q=_.z=_.y=_.x=_.w=_.r=_.f=null +_.as=c +_.CW=_.ch=_.ay=_.ax=_.at=-1 +_.cy=_.cx=null}, +apc:function apc(a,b){this.a=a +this.b=b +this.c=!1}, +ap9:function ap9(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +PA:function PA(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=$}, +b9j:function b9j(a){this.a=a}, +a0q:function a0q(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}, +ap8:function ap8(a){var _=this +_.a=$ +_.b=-1/0 +_.c=a +_.d=0 +_.e=!1 +_.z=_.y=_.x=_.w=_.r=_.f=0 +_.Q=$ +_.as=!1}, +ap6:function ap6(a){this.a=a}, +b9g:function b9g(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=0 +_.d=c +_.e=d}, +cpq:function cpq(a){this.a=a}, +a4A:function a4A(a,b){this.a=a +this.b=b}, +aoy:function aoy(a){this.a=a}, +apd:function apd(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=$}, +b9k:function b9k(a){this.a=a}, +a0K:function a0K(a,b){this.a=a +this.b=b}, +b9F:function b9F(a,b){this.a=a +this.b=b}, +b9G:function b9G(a,b){this.a=a +this.b=b}, +b9A:function b9A(a){this.a=a}, +b9B:function b9B(a,b){this.a=a +this.b=b}, +b9z:function b9z(a){this.a=a}, +b9D:function b9D(a){this.a=a}, +b9E:function b9E(a){this.a=a}, +b9C:function b9C(a){this.a=a}, +b9x:function b9x(){}, +b9y:function b9y(){}, +bhs:function bhs(){}, +bht:function bht(){}, +apw:function apw(a,b){this.a=a +this.b=b}, +a2D:function a2D(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bit:function bit(){this.a=!1 +this.b=null}, +atq:function atq(a,b){this.a=a +this.b=b +this.d=null}, +bDD:function bDD(){}, +bdP:function bdP(a){this.a=a}, +bdS:function bdS(){}, +avF:function avF(a,b){this.a=a +this.b=b}, +bm6:function bm6(a){this.a=a}, +avE:function avE(a,b){this.a=a +this.b=b}, +a42:function a42(a,b){this.a=a +this.b=b}, +asW:function asW(a,b,c){this.a=a +this.b=b +this.c=c}, +a23:function a23(a,b){this.a=a +this.b=b}, +crz:function crz(a){this.a=a}, +cqV:function cqV(){}, +aNK:function aNK(a,b){this.a=a +this.b=-1 +this.$ti=b}, +AX:function AX(a,b){this.a=a +this.$ti=b}, +aNP:function aNP(a,b){this.a=a +this.b=-1 +this.$ti=b}, +aei:function aei(a,b){this.a=a +this.$ti=b}, +asU:function asU(a,b){this.a=a +this.b=$ +this.$ti=b}, +biK:function biK(){this.a=null}, +bgC:function bgC(){}, +aDW:function aDW(a,b){this.a=a +this.b=b}, +LN:function LN(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aVQ:function aVQ(a,b){this.a=a +this.b=b}, +bD5:function bD5(){}, +ctH:function ctH(){}, +ctG:function ctG(){}, +biV:function biV(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.a=a +_.b=$ +_.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=!1 +_.ch=_.ay=$}, +biW:function biW(){}, +biX:function biX(){}, +biY:function biY(){}, +biZ:function biZ(){}, +bj_:function bj_(){}, +bj0:function bj0(){}, +bj2:function bj2(a){this.a=a}, +bj3:function bj3(){}, +bj1:function bj1(a){this.a=a}, +aZf:function aZf(a,b,c){this.a=a +this.b=b +this.$ti=c}, +atN:function atN(a,b,c){var _=this +_.a=a +_.c=b +_.d=c +_.f=null}, +bhF:function bhF(a,b,c){this.a=a +this.b=b +this.c=c}, +R3:function R3(a,b){this.a=a +this.b=b}, +IZ:function IZ(a,b){this.a=a +this.b=b}, +a3x:function a3x(a){this.a=a}, +cs4:function cs4(a){this.a=a}, +cs5:function cs5(a){this.a=a}, +cs6:function cs6(){}, +cs3:function cs3(){}, +n2:function n2(){}, +aul:function aul(){}, +a3v:function a3v(){}, +a3w:function a3w(){}, +a_h:function a_h(){}, +n3:function n3(a,b){this.a=a +this.$ti=b}, +apZ:function apZ(a){this.b=this.a=null +this.$ti=a}, +X6:function X6(a,b,c){this.a=a +this.b=b +this.$ti=c}, +a6X:function a6X(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}, +y2:function y2(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}, +ha:function ha(a){this.b=a}, +aFC:function aFC(a){this.a=a}, +aeg:function aeg(){}, +a6Z:function a6Z(a,b,c,d,e,f){var _=this +_.CW=a +_.cx=b +_.oq$=c +_.x=d +_.a=e +_.b=-1 +_.c=f +_.w=_.r=_.f=_.e=_.d=null}, +aBe:function aBe(a,b,c,d,e,f){var _=this +_.CW=a +_.cx=b +_.oq$=c +_.x=d +_.a=e +_.b=-1 +_.c=f +_.w=_.r=_.f=_.e=_.d=null}, +a6Y:function a6Y(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}, +a7_:function a7_(a,b,c,d){var _=this +_.CW=null +_.cx=a +_.cy=null +_.x=b +_.a=c +_.b=-1 +_.c=d +_.w=_.r=_.f=_.e=_.d=null}, +bJ1:function bJ1(a,b,c){this.a=a +this.b=b +this.c=c}, +bJ0:function bJ0(a,b){this.a=a +this.b=b}, +bdJ:function bdJ(a,b,c,d){var _=this +_.a=a +_.azx$=b +_.MZ$=c +_.wf$=d}, +a70:function a70(a,b,c,d,e){var _=this +_.CW=a +_.cx=b +_.dx=_.db=_.cy=null +_.x=c +_.a=d +_.b=-1 +_.c=e +_.w=_.r=_.f=_.e=_.d=null}, +a71:function a71(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}, +a72:function a72(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}, +Vs:function Vs(a){this.a=a +this.b=!1}, +aan:function aan(){var _=this +_.e=_.d=_.c=_.b=_.a=null +_.f=!0 +_.r=4278190080 +_.z=_.y=_.x=_.w=null}, +nW:function nW(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bzb:function bzb(){var _=this +_.d=_.c=_.b=_.a=0}, +bas:function bas(){var _=this +_.d=_.c=_.b=_.a=0}, +aMd:function aMd(){this.b=this.a=null}, +bb4:function bb4(){var _=this +_.d=_.c=_.b=_.a=0}, +Fr:function Fr(a,b){var _=this +_.a=a +_.b=b +_.c=0 +_.e=_.d=-1}, +bwV:function bwV(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.e=0 +_.f=-1 +_.Q=_.z=_.y=_.x=_.w=_.r=0}, +aFE:function aFE(a){this.a=a}, +aXs:function aXs(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=-1 +_.f=0}, +aSW:function aSW(a){var _=this +_.b=0 +_.c=a +_.e=0 +_.f=!1}, +c9q:function c9q(a,b){this.a=a +this.b=b}, +bIR:function bIR(a){this.a=null +this.b=a}, +aFD:function aFD(a,b,c){this.a=a +this.c=b +this.d=c}, +aj6:function aj6(a,b){this.c=a +this.a=b}, +Y4:function Y4(a,b,c){this.a=a +this.b=b +this.c=c}, +Ts:function Ts(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}, +ED:function ED(a){var _=this +_.a=a +_.b=-1 +_.e=_.d=_.c=0}, +zY:function zY(){this.b=this.a=null}, +bGp:function bGp(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bwY:function bwY(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=0 +_.f=d}, +Ex:function Ex(a,b){this.a=a +this.b=b}, +aBh:function aBh(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}, +bx3:function bx3(a){this.a=a}, +a73:function a73(a,b,c,d,e,f,g){var _=this +_.ch=a +_.CW=b +_.cx=c +_.cy=d +_.db=e +_.a=f +_.b=-1 +_.c=g +_.w=_.r=_.f=_.e=_.d=null}, +bA_:function bA_(a,b,c){var _=this +_.a=a +_.b=null +_.c=b +_.d=c +_.f=_.e=!1 +_.r=1}, +hJ:function hJ(){}, +a2b:function a2b(){}, +a6I:function a6I(){}, +aAV:function aAV(){}, +aAZ:function aAZ(a,b){this.a=a +this.b=b}, +aAX:function aAX(a,b){this.a=a +this.b=b}, +aAW:function aAW(a){this.a=a}, +aAY:function aAY(a){this.a=a}, +aAG:function aAG(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAF:function aAF(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAE:function aAE(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAL:function aAL(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAN:function aAN(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAU:function aAU(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAQ:function aAQ(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAS:function aAS(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAR:function aAR(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAJ:function aAJ(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.x=null +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAM:function aAM(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAI:function aAI(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAP:function aAP(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAT:function aAT(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAK:function aAK(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +aAO:function aAO(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +c9l:function c9l(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}, +bBE:function bBE(){var _=this +_.d=_.c=_.b=_.a=!1}, +aFF:function aFF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1}, +Oh:function Oh(){}, +blR:function blR(){this.a=$}, +blU:function blU(){}, +blS:function blS(a){this.a=a}, +blT:function blT(a){this.a=a}, +Vt:function Vt(a){this.a=a}, +a74:function a74(a,b,c){var _=this +_.CW=null +_.x=a +_.a=b +_.b=-1 +_.c=c +_.w=_.r=_.f=_.e=_.d=null}, +bIS:function bIS(a){this.a=a}, +bIU:function bIU(a){this.a=a}, +bIV:function bIV(a){this.a=a}, +IA:function IA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.r=_.f=!1}, +buP:function buP(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +buQ:function buQ(){}, +bFF:function bFF(){this.a=null +this.b=!1}, +QO:function QO(){}, +auX:function auX(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f}, +bkB:function bkB(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +Rm:function Rm(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f}, +bkC:function bkC(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +auW:function auW(a,b,c,d,e,f,g,h){var _=this +_.x=a +_.y=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h}, +vR:function vR(){}, +acZ:function acZ(a,b,c){this.a=a +this.b=b +this.c=c}, +afZ:function afZ(a,b){this.a=a +this.b=b}, +atr:function atr(){}, +SS:function SS(a,b){this.b=a +this.c=b +this.a=null}, +SG:function SG(a){this.b=a +this.a=null}, +aEr:function aEr(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.e=null +_.w=_.r=_.f=0 +_.y=c +_.z=d +_.Q=null +_.as=e}, +wH:function wH(a,b){this.b=a +this.c=b +this.d=1}, +M9:function M9(a,b,c){this.a=a +this.b=b +this.c=c}, +crt:function crt(){}, +KW:function KW(a,b){this.a=a +this.b=b}, +iq:function iq(){}, +aBg:function aBg(){}, +jP:function jP(){}, +bx2:function bx2(){}, +Gp:function Gp(a,b,c){this.a=a +this.b=b +this.c=c}, +byd:function byd(){this.b=this.a=0}, +a75:function a75(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}, +a3W:function a3W(a,b){this.a=a +this.b=b}, +blH:function blH(a,b,c){this.a=a +this.b=b +this.c=c}, +blI:function blI(a,b){this.a=a +this.b=b}, +blF:function blF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +blG:function blG(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +avw:function avw(a,b){this.a=a +this.b=b}, +a9H:function a9H(a){this.a=a}, +a3Y:function a3Y(a,b,c){var _=this +_.a=a +_.c=_.b=!1 +_.d=b +_.e=c}, +aoh:function aoh(){}, +b7f:function b7f(){}, +b7g:function b7g(a){this.a=a}, +ZW:function ZW(a,b){this.a=a +this.b=b}, +z5:function z5(a,b){this.a=a +this.b=b}, +Ia:function Ia(a,b){this.a=a +this.b=b}, +csG:function csG(){}, +csH:function csH(a){this.a=a}, +csF:function csF(a){this.a=a}, +csI:function csI(){}, +bir:function bir(a){this.a=a}, +bis:function bis(a){this.a=a}, +biu:function biu(a){this.a=a}, +biv:function biv(a){this.a=a}, +biq:function biq(a){this.a=a}, +cse:function cse(a,b){this.a=a +this.b=b}, +csc:function csc(a,b){this.a=a +this.b=b}, +csd:function csd(a){this.a=a}, +cpu:function cpu(){}, +cpv:function cpv(){}, +cpw:function cpw(){}, +cpx:function cpx(){}, +cpy:function cpy(){}, +cpz:function cpz(){}, +cpA:function cpA(){}, +cpB:function cpB(){}, +coe:function coe(a,b,c){this.a=a +this.b=b +this.c=c}, +awl:function awl(a){this.a=$ +this.b=a}, +boh:function boh(a){this.a=a}, +boi:function boi(a){this.a=a}, +boj:function boj(a){this.a=a}, +bok:function bok(a){this.a=a}, +w_:function w_(a){this.a=a}, +bol:function bol(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.e=!1 +_.f=d +_.r=e}, +bor:function bor(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bos:function bos(a){this.a=a}, +bot:function bot(a,b,c){this.a=a +this.b=b +this.c=c}, +bou:function bou(a,b){this.a=a +this.b=b}, +bon:function bon(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +boo:function boo(a,b,c){this.a=a +this.b=b +this.c=c}, +bop:function bop(a,b){this.a=a +this.b=b}, +boq:function boq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bom:function bom(a,b,c){this.a=a +this.b=b +this.c=c}, +bov:function bov(a,b){this.a=a +this.b=b}, +baN:function baN(a){this.a=a +this.b=!0}, +btv:function btv(){}, +cth:function cth(){}, +b7_:function b7_(){}, +a5Z:function a5Z(a){var _=this +_.d=a +_.a=_.e=$ +_.c=_.b=!1}, +btH:function btH(){}, +a9G:function a9G(a,b){var _=this +_.d=a +_.e=b +_.f=null +_.a=$ +_.c=_.b=!1}, +bG6:function bG6(){}, +bG7:function bG7(){}, +zB:function zB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0 +_.f=e}, +a30:function a30(a){this.a=a +this.b=$ +this.c=0}, +bhE:function bhE(){}, +att:function att(){this.a=null +this.b=$ +this.c=!1}, +ats:function ats(a){this.a=!1 +this.b=a}, +avh:function avh(a,b){this.a=a +this.b=b +this.c=$}, +atu:function atu(a,b,c,d){var _=this +_.a=a +_.d=b +_.e=$ +_.id=_.go=_.fy=_.fx=_.fr=_.dy=_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=null +_.k1=c +_.p4=_.p3=_.p2=_.k4=_.k3=_.k2=null +_.R8=d +_.ry=null}, +bgN:function bgN(a){this.a=a}, +bgO:function bgO(a,b,c){this.a=a +this.b=b +this.c=c}, +bgM:function bgM(a,b){this.a=a +this.b=b}, +bgJ:function bgJ(a,b){this.a=a +this.b=b}, +bgK:function bgK(a,b){this.a=a +this.b=b}, +bgL:function bgL(a,b){this.a=a +this.b=b}, +bgI:function bgI(a){this.a=a}, +bgH:function bgH(a){this.a=a}, +bgG:function bgG(a){this.a=a}, +bgP:function bgP(a,b){this.a=a +this.b=b}, +csK:function csK(a,b,c){this.a=a +this.b=b +this.c=c}, +bOu:function bOu(){}, +aBu:function aBu(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}, +aBC:function aBC(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bxB:function bxB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bxC:function bxC(a){this.b=a}, +bD1:function bD1(){this.a=null}, +bD2:function bD2(){}, +bxU:function bxU(a,b,c){var _=this +_.a=null +_.b=a +_.d=b +_.e=c +_.f=$}, +apg:function apg(){this.b=this.a=null}, +by1:function by1(){}, +aR4:function aR4(a,b,c){this.a=a +this.b=b +this.c=c}, +bSt:function bSt(){}, +bSu:function bSu(a){this.a=a}, +cn2:function cn2(){}, +xq:function xq(a,b){this.a=a +this.b=b}, +X1:function X1(){this.a=0}, +c9L:function c9L(a,b,c){var _=this +_.e=a +_.a=b +_.b=c +_.c=null +_.d=!1}, +c9N:function c9N(){}, +c9M:function c9M(a,b,c){this.a=a +this.b=b +this.c=c}, +c9O:function c9O(a){this.a=a}, +c9P:function c9P(a){this.a=a}, +c9Q:function c9Q(a){this.a=a}, +c9R:function c9R(a){this.a=a}, +c9S:function c9S(a){this.a=a}, +c9T:function c9T(a){this.a=a}, +Ya:function Ya(a,b){this.a=null +this.b=a +this.c=b}, +c15:function c15(a){this.a=a +this.b=0}, +c16:function c16(a,b){this.a=a +this.b=b}, +bxV:function bxV(){}, +cyA:function cyA(){}, +bzz:function bzz(a,b){this.a=a +this.b=0 +this.c=b}, +bzA:function bzA(a){this.a=a}, +bzC:function bzC(a,b,c){this.a=a +this.b=b +this.c=c}, +bzD:function bzD(a){this.a=a}, +auO:function auO(a){this.a=a}, +auN:function auN(a){var _=this +_.a=a +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=null}, +bv5:function bv5(a,b){var _=this +_.b=_.a=null +_.c=a +_.d=b}, +a_g:function a_g(a,b){this.a=a +this.b=b}, +b35:function b35(a,b){this.a=a +this.b=b}, +b36:function b36(a){this.a=a}, +adm:function adm(a,b){this.a=a +this.b=b}, +b93:function b93(a,b,c){var _=this +_.r=a +_.a=$ +_.b=b +_.c=c +_.e=_.d=null}, +asG:function asG(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.e=_.d=null}, +bd0:function bd0(a,b){this.a=a +this.b=b}, +bd_:function bd_(){}, +Uu:function Uu(a,b,c){var _=this +_.e=null +_.a=a +_.b=b +_.c=c +_.d=!1}, +bCD:function bCD(a){this.a=a}, +auh:function auh(a,b,c,d){var _=this +_.e=a +_.a=b +_.b=c +_.c=d +_.d=!1}, +amF:function amF(a){this.a=a +this.c=this.b=null}, +b38:function b38(a){this.a=a}, +b39:function b39(a){this.a=a}, +b37:function b37(a,b){this.a=a +this.b=b}, +bmZ:function bmZ(a,b){var _=this +_.r=null +_.a=$ +_.b=a +_.c=b +_.e=_.d=null}, +bnk:function bnk(a,b,c,d){var _=this +_.r=a +_.w=b +_.x=1 +_.y=$ +_.z=!1 +_.a=$ +_.b=c +_.c=d +_.e=_.d=null}, +bnl:function bnl(a,b){this.a=a +this.b=b}, +bnm:function bnm(a){this.a=a}, +a4O:function a4O(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1}, +boX:function boX(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.e=_.d=null}, +K6:function K6(a,b,c){var _=this +_.e=null +_.a=a +_.b=b +_.c=c +_.d=!1}, +bxD:function bxD(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.e=_.d=null}, +bDU:function bDU(a,b,c){var _=this +_.r=null +_.w=a +_.x=null +_.y=0 +_.a=$ +_.b=b +_.c=c +_.e=_.d=null}, +bE0:function bE0(a){this.a=a}, +bE1:function bE1(a){this.a=a}, +bE2:function bE2(a){this.a=a}, +a2C:function a2C(a){this.a=a}, +aEn:function aEn(a){this.a=a}, +aEm:function aEm(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 +_.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 +_.ok=a9}, +rR:function rR(a,b){this.a=a +this.b=b}, +LK:function LK(a,b){this.a=a +this.b=b}, +aBW:function aBW(){}, +bjZ:function bjZ(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.e=_.d=null}, +A5:function A5(){}, +M5:function M5(a,b){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=-1 +_.p1=_.ok=_.k4=_.k3=null +_.p3=_.p2=0 +_.p4=!1}, +b3a:function b3a(a,b){this.a=a +this.b=b}, +J9:function J9(a,b){this.a=a +this.b=b}, +a9i:function a9i(a,b){this.a=a +this.b=b}, +bgQ:function bgQ(a,b,c,d){var _=this +_.a=!1 +_.b=a +_.c=b +_.e=c +_.f=null +_.r=d}, +bgV:function bgV(){}, +bgU:function bgU(a){this.a=a}, +bgR:function bgR(a,b,c,d,e,f){var _=this +_.a=a +_.b=null +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=!1}, +bgT:function bgT(a){this.a=a}, +bgS:function bgS(a,b){this.a=a +this.b=b}, +a2B:function a2B(a,b){this.a=a +this.b=b}, +bF7:function bF7(a){this.a=a}, +bF3:function bF3(){}, +bcu:function bcu(){this.a=null}, +bcv:function bcv(a){this.a=a}, +bti:function bti(){var _=this +_.b=_.a=null +_.c=0 +_.d=!1}, +btk:function btk(a){this.a=a}, +btj:function btj(a){this.a=a}, +b7n:function b7n(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.e=_.d=null}, +aFV:function aFV(a,b,c){var _=this +_.e=null +_.f=!1 +_.a=a +_.b=b +_.c=c +_.d=!1}, +bKD:function bKD(a,b){this.a=a +this.b=b}, +bFh:function bFh(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}, +bKM:function bKM(a,b){var _=this +_.w=_.r=null +_.a=$ +_.b=a +_.c=b +_.e=_.d=null}, +bKN:function bKN(a){this.a=a}, +bKO:function bKO(a){this.a=a}, +bKP:function bKP(a){this.a=a}, +bKQ:function bKQ(a,b){this.a=a +this.b=b}, +bKR:function bKR(a){this.a=a}, +bKS:function bKS(a){this.a=a}, +bKT:function bKT(a){this.a=a}, +xz:function xz(){}, +aQp:function aQp(){}, +aH4:function aH4(a,b){this.a=a +this.b=b}, +rE:function rE(a,b){this.a=a +this.b=b}, +bnW:function bnW(){}, +bnY:function bnY(){}, +bH3:function bH3(){}, +bH5:function bH5(a,b){this.a=a +this.b=b}, +bH7:function bH7(){}, +bPv:function bPv(a,b,c){var _=this +_.a=!1 +_.b=a +_.c=b +_.d=c}, +aCw:function aCw(a){this.a=a +this.b=0}, +bIW:function bIW(a,b){this.a=a +this.b=b}, +aoz:function aoz(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1 +_.f=null +_.w=_.r=$ +_.x=null +_.y=!1}, +b8j:function b8j(){}, +KR:function KR(a,b,c){this.a=a +this.b=b +this.c=c}, +Ty:function Ty(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.a=d +_.b=e +_.c=f +_.d=g}, +Vq:function Vq(){}, +aoQ:function aoQ(a,b){this.b=a +this.c=b +this.a=null}, +aDI:function aDI(a){this.b=a +this.a=null}, +b8i:function b8i(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=0 +_.r=f +_.w=!0}, +blM:function blM(){}, +blN:function blN(a,b,c){this.a=a +this.b=b +this.c=c}, +bKX:function bKX(){}, +bKW:function bKW(){}, +boG:function boG(a,b){this.b=a +this.a=b}, +bV6:function bV6(){}, +rz:function rz(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.Wy$=a +_.Wz$=b +_.rw$=c +_.iP$=d +_.un$=e +_.z2$=f +_.z3$=g +_.z4$=h +_.iZ$=i +_.j_$=j +_.c=k +_.d=l +_.e=m +_.f=n +_.r=o +_.w=p +_.a=q +_.b=r}, +c0A:function c0A(){}, +c0B:function c0B(){}, +c0z:function c0z(){}, +a2w:function a2w(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.Wy$=a +_.Wz$=b +_.rw$=c +_.iP$=d +_.un$=e +_.z2$=f +_.z3$=g +_.z4$=h +_.iZ$=i +_.j_$=j +_.c=k +_.d=l +_.e=m +_.f=n +_.r=o +_.w=p +_.a=q +_.b=r}, +VP:function VP(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=$}, +boV:function boV(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}, +aFc:function aFc(a){this.a=a +this.c=this.b=null}, +DX:function DX(a,b){this.a=a +this.b=b}, +bhx:function bhx(a){this.a=a}, +bO3:function bO3(a,b){this.b=a +this.a=b}, +DW:function DW(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=e}, +cox:function cox(a,b,c){this.a=a +this.b=b +this.c=c}, +aDS:function aDS(a){this.a=a}, +bLk:function bLk(a){this.a=a}, +vS:function vS(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}, +wv:function wv(a,b,c,d,e,f,g,h,i,j){var _=this +_.a=a +_.b=b +_.c=c +_.d=$ +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.Q=j +_.as=$}, +a2E:function a2E(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}, +a2G:function a2G(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 +_.dy=null +_.fr=$}, +a2F:function a2F(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}, +bwB:function bwB(){}, +aaW:function aaW(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=$}, +bKH:function bKH(a){this.a=a +this.b=null}, +aG5:function aG5(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=$ +_.e=c +_.r=_.f=$}, +R9:function R9(a,b){this.a=a +this.b=b}, +Hp:function Hp(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +adv:function adv(a,b){this.a=a +this.b=b}, +hx:function hx(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +AJ:function AJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +aP1:function aP1(a,b,c){this.c=a +this.a=b +this.b=c}, +b6W:function b6W(a){this.a=a}, +apD:function apD(){}, +bgE:function bgE(){}, +buJ:function buJ(){}, +bgW:function bgW(){}, +bdU:function bdU(){}, +bkq:function bkq(){}, +buH:function buH(){}, +byg:function byg(){}, +bE7:function bE7(){}, +bFj:function bFj(){}, +bgF:function bgF(){}, +buL:function buL(){}, +bLb:function bLb(){}, +buY:function buY(){}, +bbP:function bbP(){}, +bxa:function bxa(){}, +bgq:function bgq(){}, +bNW:function bNW(){}, +azU:function azU(){}, +VK:function VK(a,b){this.a=a +this.b=b}, +aaR:function aaR(a){this.a=a}, +bgz:function bgz(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bgA:function bgA(a,b){this.a=a +this.b=b}, +bgB:function bgB(a,b,c){this.a=a +this.b=b +this.c=c}, +ant:function ant(a,b,c,d){var _=this +_.a=a +_.b=b +_.d=c +_.e=d}, +VN:function VN(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}, +QG:function QG(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bnC:function bnC(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}, +auS:function auS(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}, +a8H:function a8H(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}, +bD0:function bD0(a){this.a=a}, +a1H:function a1H(){}, +bcf:function bcf(a){this.a=a}, +bcg:function bcg(){}, +bch:function bch(){}, +bci:function bci(){}, +bmf:function bmf(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}, +bmi:function bmi(a){this.a=a}, +bmj:function bmj(a,b){this.a=a +this.b=b}, +bmg:function bmg(a){this.a=a}, +bmh:function bmh(a){this.a=a}, +b3E:function b3E(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}, +b3F:function b3F(a){this.a=a}, +bi6:function bi6(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}, +bi8:function bi8(a){this.a=a}, +bi9:function bi9(a){this.a=a}, +bi7:function bi7(a){this.a=a}, +bL_:function bL_(){}, +bL5:function bL5(a,b){this.a=a +this.b=b}, +bLc:function bLc(){}, +bL7:function bL7(a){this.a=a}, +bLa:function bLa(){}, +bL6:function bL6(a){this.a=a}, +bL9:function bL9(a){this.a=a}, +bKY:function bKY(){}, +bL2:function bL2(){}, +bL8:function bL8(){}, +bL4:function bL4(){}, +bL3:function bL3(){}, +bL1:function bL1(a){this.a=a}, +ctv:function ctv(){}, +bKI:function bKI(a){this.a=a}, +bKJ:function bKJ(a){this.a=a}, +bma:function bma(){var _=this +_.a=$ +_.b=null +_.c=!1 +_.d=null +_.f=$}, +bmc:function bmc(a){this.a=a}, +bmb:function bmb(a){this.a=a}, +bg0:function bg0(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bfk:function bfk(a,b,c){this.a=a +this.b=b +this.c=c}, +bfl:function bfl(){}, +abB:function abB(a,b){this.a=a +this.b=b}, +crm:function crm(){}, +axd:function axd(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +dX:function dX(a){this.a=a}, +bhH:function bhH(a){this.a=a +this.c=this.b=0}, +arX:function arX(a,b){this.b=a +this.c=$ +this.d=b}, +bbh:function bbh(a){this.a=a}, +bbg:function bbg(){}, +asK:function asK(){}, +auy:function auy(a){this.b=$ +this.c=a}, +bdR:function bdR(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}, +bbi:function bbi(a){this.a=a +this.b=$}, +bbj:function bbj(a){this.a=a}, +bjs:function bjs(){}, +bjt:function bjt(a){this.a=a}, +a3p:function a3p(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +cps:function cps(){}, +yG:function yG(){}, +aOp:function aOp(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=$ +_.f=!1 +_.Q=_.z=_.y=_.x=_.w=_.r=$ +_.as=null +_.ax=d +_.ay=e}, +QN:function QN(a,b,c,d,e,f){var _=this +_.ch=null +_.CW=a +_.a=b +_.b=c +_.c=d +_.d=$ +_.f=!1 +_.Q=_.z=_.y=_.x=_.w=_.r=$ +_.as=null +_.ax=e +_.ay=f}, +bgD:function bgD(a,b){this.a=a +this.b=b}, +aHB:function aHB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aNn:function aNn(){}, +aNJ:function aNJ(){}, +aQG:function aQG(){}, +aQH:function aQH(){}, +aQI:function aQI(){}, +aSZ:function aSZ(){}, +aT_:function aT_(){}, +b03:function b03(){}, +cxF:function cxF(){}, +cxk(a,b){return new A.a41(a,b)}, +di6(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.r6('"(),/:;<=>?@[]{}',q,0)}else q=!0 +else q=!0 +if(q)return!1}return!0}, +dhC(a){var s,r,q=new A.aMg("","","") +q.aVk("",B.aZl) +q.aVx(a,";",null,!1) +s=q.a +r=B.c.c2(s,"/") +if(r===-1||r===s.length-1)q.d=B.c.du(s).toLowerCase() +else{q.d=B.c.du(B.c.R(s,0,r)).toLowerCase() +q.e=B.c.du(B.c.b0(s,r+1)).toLowerCase()}return q}, +a41:function a41(a,b){this.a=a +this.b=b}, +c1y:function c1y(){}, +c1H:function c1H(a){this.a=a}, +c1z:function c1z(a,b){this.a=a +this.b=b}, +c1G:function c1G(a,b,c){this.a=a +this.b=b +this.c=c}, +c1F:function c1F(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +c1A:function c1A(a,b,c){this.a=a +this.b=b +this.c=c}, +c1B:function c1B(a,b,c){this.a=a +this.b=b +this.c=c}, +c1C:function c1C(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}, +c1D:function c1D(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +c1E:function c1E(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aMg:function aMg(a,b,c){var _=this +_.d=a +_.e=b +_.a=c +_.c=_.b=null}, +bm9:function bm9(){}, +fw(a,b,c){if(b.h("aO<0>").b(a))return new A.aeu(a,b.h("@<0>").a1(c).h("aeu<1,2>")) +return new A.HC(a,b.h("@<0>").a1(c).h("HC<1,2>"))}, +DT(a){return new A.qh("Field '"+a+"' has not been initialized.")}, +h6(a){return new A.qh("Local '"+a+"' has not been initialized.")}, +kY(a){return new A.qh("Local '"+a+"' has already been initialized.")}, +iB(a){return new A.aCv(a)}, +cvG(a){return new A.e0(a)}, +csz(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +cTo(a,b){var s=A.csz(a.charCodeAt(b)),r=A.csz(a.charCodeAt(b+1)) +return s*16+r-(r&256)}, +as(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +lc(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +cMA(a,b,c){return A.lc(A.as(A.as(c,a),b))}, +dex(a,b,c,d,e){return A.lc(A.as(A.as(A.as(A.as(e,a),b),c),d))}, +hz(a,b,c){return a}, +cBI(a){var s,r +for(s=$.Ow.length,r=0;rc)A.C(A.e9(b,0,c,"start",null))}return new A.b3(a,b,c,d.h("b3<0>"))}, +nb(a,b,c,d){if(t.Ee.b(a))return new A.jJ(a,b,c.h("@<0>").a1(d).h("jJ<1,2>")) +return new A.fW(a,b,c.h("@<0>").a1(d).h("fW<1,2>"))}, +bKu(a,b,c){var s="takeCount" +A.a5(b,s) +A.js(b,s) +if(t.Ee.b(a))return new A.a2r(a,b,c.h("a2r<0>")) +return new A.My(a,b,c.h("My<0>"))}, +cz1(a,b,c){var s="count" +if(t.Ee.b(a)){A.a5(b,s) +A.js(b,s) +return new A.QI(a,b,c.h("QI<0>"))}A.a5(b,s) +A.js(b,s) +return new A.Ah(a,b,c.h("Ah<0>"))}, +cIp(a,b,c){if(c.h("aO<0>").b(b))return new A.a2q(a,b,c.h("a2q<0>")) +return new A.yQ(a,b,c.h("yQ<0>"))}, +dB(){return new A.px("No element")}, +DO(){return new A.px("Too many elements")}, +cJb(){return new A.px("Too few elements")}, +aF3(a,b,c,d){if(c-b<=32)A.ddK(a,b,c,d) +else A.ddJ(a,b,c,d)}, +ddK(a,b,c,d){var s,r,q,p,o +for(s=b+1,r=J.ao(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.n(a,p,r.i(a,o)) +p=o}r.n(a,p,q)}}, +ddJ(a3,a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i=B.d.aD(a5-a4+1,6),h=a4+i,g=a5-i,f=B.d.aD(a4+a5,2),e=f-i,d=f+i,c=J.ao(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.n(a3,h,b) +c.n(a3,f,a0) +c.n(a3,g,a2) +c.n(a3,e,c.i(a3,a4)) +c.n(a3,d,c.i(a3,a5)) +r=a4+1 +q=a5-1 +if(J.q(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.n(a3,p,c.i(a3,r)) +c.n(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.n(a3,p,c.i(a3,r)) +l=r+1 +c.n(a3,r,c.i(a3,q)) +c.n(a3,q,o) +q=m +r=l +break}else{c.n(a3,p,c.i(a3,q)) +c.n(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.n(a3,p,c.i(a3,r)) +c.n(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.q(a6.$2(c.i(a3,r),a),0);)++r +for(;J.q(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.n(a3,p,c.i(a3,r)) +c.n(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").a1(c).h("y<1,2>")) +n.$keys=l +return n}return new A.HU(A.rA(a,b,c),b.h("@<0>").a1(c).h("HU<1,2>"))}, +bax(){throw A.d(A.aq("Cannot modify unmodifiable Map"))}, +apI(){throw A.d(A.aq("Cannot modify constant Set"))}, +cBD(a,b){var s=new A.rv(a,b.h("rv<0>")) +s.ahT(a) +return s}, +dsZ(a,b,c){var s=new A.a4v(a,b.h("@<0>").a1(c).h("a4v<1,2>")) +s.ahT(a) +return s}, +cUl(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +cSZ(a,b){var s +if(b!=null){s=b.x +if(s!=null)return s}return t.se.b(a)}, +r(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.cw(a) +return s}, +P(a,b,c,d,e,f){return new A.a4D(a,c,d,e,f)}, +dId(a,b,c,d,e,f){return new A.a4D(a,c,d,e,f)}, +ef(a){var s,r=$.cL5 +if(r==null)r=$.cL5=Symbol("identityHashCode") +s=a[r] +if(s==null){s=Math.random()*0x3fffffff|0 +a[r]=s}return s}, +cY(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.d(A.e9(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)}, +zW(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.du(a) +if(r==="NaN"||r==="+NaN"||r==="-NaN")return s +return null}return s}, +byk(a){return A.dbG(a)}, +dbG(a){var s,r,q,p +if(a instanceof A.S)return A.mM(A.bk(a),null) +s=J.lm(a) +if(s===B.aAi||s===B.aAI||t.kk.b(a)){r=B.Ah(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.mM(A.bk(a),null)}, +cL7(a){if(a==null||typeof a=="number"||A.lY(a))return J.cw(a) +if(typeof a=="string")return JSON.stringify(a) +if(a instanceof A.Ci)return a.k(0) +if(a instanceof A.Be)return a.a6i(!0) +return"Instance of '"+A.byk(a)+"'"}, +dbI(){return Date.now()}, +dbJ(){var s,r +if($.byl!==0)return +$.byl=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 +$.byl=1e6 +$.EN=new A.byj(r)}, +dbH(){if(!!self.location)return self.location.href +return null}, +cL4(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.dbK(a)}return A.cL4(a)}, +dbL(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.d(A.e9(a,0,1114111,null,null))}, +cd(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}, +mp(a){if(a.date===void 0)a.date=new Date(a.a) +return a.date}, +b7(a){return a.b?A.mp(a).getUTCFullYear()+0:A.mp(a).getFullYear()+0}, +bp(a){return a.b?A.mp(a).getUTCMonth()+1:A.mp(a).getMonth()+1}, +cL(a){return a.b?A.mp(a).getUTCDate()+0:A.mp(a).getDate()+0}, +iT(a){return a.b?A.mp(a).getUTCHours()+0:A.mp(a).getHours()+0}, +EM(a){return a.b?A.mp(a).getUTCMinutes()+0:A.mp(a).getMinutes()+0}, +Lh(a){return a.b?A.mp(a).getUTCSeconds()+0:A.mp(a).getSeconds()+0}, +aBY(a){return a.b?A.mp(a).getUTCMilliseconds()+0:A.mp(a).getMilliseconds()+0}, +ug(a){return B.d.M((a.b?A.mp(a).getUTCDay()+0:A.mp(a).getDay()+0)+6,7)+1}, +EL(a,b,c){var s,r,q={} +q.a=0 +s=[] +r=[] +q.a=b.length +B.b.L(s,b) +q.b="" +if(c!=null&&c.a!==0)c.aE(0,new A.byi(q,r,s)) +return J.d1a(a,new A.a4D(B.bnV,0,s,r,0))}, +cL6(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.dbF(a,b,c)}, +dbF(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=Array.isArray(b)?b:A.R(b,!0,t.z),f=g.length,e=a.$R +if(fn)return A.EL(a,g,null) +if(fe)return A.EL(a,g,c) +if(g===b)g=A.R(g,!0,t.z) +l=Object.keys(q) +if(c==null)for(r=l.length,k=0;k=s)return A.ik(b,s,a,null,r) +return A.a7z(b,r,null)}, +drL(a,b,c){if(a<0||a>c)return A.e9(a,0,c,"start",null) +if(b!=null)if(bc)return A.e9(b,a,c,"end",null) +return new A.nN(!0,b,"end",null)}, +bV(a){return new A.nN(!0,a,null,null)}, +fP(a){return a}, +d(a){return A.cSS(new Error(),a)}, +cSS(a,b){var s +if(b==null)b=new A.AG() +a.dartException=b +s=A.dwt +if("defineProperty" in Object){Object.defineProperty(a,"message",{get:s}) +a.name=""}else a.toString=s +return a}, +dwt(){return J.cw(this.dartException)}, +C(a){throw A.d(a)}, +cu_(a,b){throw A.cSS(b,a)}, +Q(a){throw A.d(A.e1(a))}, +AH(a){var s,r,q,p,o,n +a=A.b2f(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.bNC(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)}, +bND(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +cNi(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +cxH(a,b){var s=b==null,r=s?null:b.method +return new A.awd(a,r,s?null:b.receiver)}, +ag(a){if(a==null)return new A.aAe(a) +if(a instanceof A.a2S)return A.GP(a,a.a) +if(typeof a!=="object")return a +if("dartException" in a)return A.GP(a,a.dartException) +return A.doo(a)}, +GP(a,b){if(t.Cr.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +doo(a){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(!("message" in a))return a +s=a.message +if("number" in a&&typeof a.number=="number"){r=a.number +q=r&65535 +if((B.d.b2(r,16)&8191)===10)switch(q){case 438:return A.GP(a,A.cxH(A.r(s)+" (Error "+q+")",null)) +case 445:case 5007:A.r(s) +return A.GP(a,new A.a6l())}}if(a instanceof TypeError){p=$.cYc() +o=$.cYd() +n=$.cYe() +m=$.cYf() +l=$.cYi() +k=$.cYj() +j=$.cYh() +$.cYg() +i=$.cYl() +h=$.cYk() +g=p.uG(s) +if(g!=null)return A.GP(a,A.cxH(s,g)) +else{g=o.uG(s) +if(g!=null){g.method="call" +return A.GP(a,A.cxH(s,g))}else if(n.uG(s)!=null||m.uG(s)!=null||l.uG(s)!=null||k.uG(s)!=null||j.uG(s)!=null||m.uG(s)!=null||i.uG(s)!=null||h.uG(s)!=null)return A.GP(a,new A.a6l())}return A.GP(a,new A.aHa(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.aa2() +s=function(b){try{return String(b)}catch(f){}return null}(a) +return A.GP(a,new A.nN(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.aa2() +return a}, +aD(a){var s +if(a instanceof A.a2S)return a.b +if(a==null)return new A.aiS(a) +s=a.$cachedTrace +if(s!=null)return s +s=new A.aiS(a) +if(typeof a==="object")a.$cachedTrace=s +return s}, +lZ(a){if(a==null)return J.ab(a) +if(typeof a=="object")return A.ef(a) +return J.ab(a)}, +dpQ(a){if(typeof a=="number")return B.e.gv(a) +if(a instanceof A.ajT)return A.ef(a) +if(a instanceof A.Be)return a.gv(a) +if(a instanceof A.uC)return a.gv(0) +return A.lZ(a)}, +cSv(a,b){var s,r,q,p=a.length +for(s=0;s")) +s.c=a.e +return s}, +dIh(a,b,c){Object.defineProperty(a,b,{value:c,enumerable:false,writable:true,configurable:true})}, +dts(a){var s,r,q,p,o,n=$.cSN.$1(a),m=$.crQ[n] +if(m!=null){Object.defineProperty(a,v.dispatchPropertyName,{value:m,enumerable:false,writable:true,configurable:true}) +return m.i}s=$.csJ[n] +if(s!=null)return s +r=v.interceptorsByTag[n] +if(r==null){q=$.cRD.$2(a,n) +if(q!=null){m=$.crQ[q] +if(m!=null){Object.defineProperty(a,v.dispatchPropertyName,{value:m,enumerable:false,writable:true,configurable:true}) +return m.i}s=$.csJ[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.csU(s) +$.crQ[n]=m +Object.defineProperty(a,v.dispatchPropertyName,{value:m,enumerable:false,writable:true,configurable:true}) +return m.i}if(p==="~"){$.csJ[n]=s +return s}if(p==="-"){o=A.csU(s) +Object.defineProperty(Object.getPrototypeOf(a),v.dispatchPropertyName,{value:o,enumerable:false,writable:true,configurable:true}) +return o.i}if(p==="+")return A.cTx(a,s) +if(p==="*")throw A.d(A.bT(n)) +if(v.leafTags[n]===true){o=A.csU(s) +Object.defineProperty(Object.getPrototypeOf(a),v.dispatchPropertyName,{value:o,enumerable:false,writable:true,configurable:true}) +return o.i}else return A.cTx(a,s)}, +cTx(a,b){var s=Object.getPrototypeOf(a) +Object.defineProperty(s,v.dispatchPropertyName,{value:J.cBN(b,s,null,null),enumerable:false,writable:true,configurable:true}) +return b}, +csU(a){return J.cBN(a,!1,null,!!a.$idK)}, +dtu(a,b,c){var s=b.prototype +if(v.leafTags[a]===true)return A.csU(s) +else return J.cBN(s,c,null,null)}, +dsV(){if(!0===$.cBB)return +$.cBB=!0 +A.dsW()}, +dsW(){var s,r,q,p,o,n,m,l +$.crQ=Object.create(null) +$.csJ=Object.create(null) +A.dsU() +s=v.interceptorsByTag +r=Object.getOwnPropertyNames(s) +if(typeof window!="undefined"){window +q=function(){} +for(p=0;p=0 +else if(b instanceof A.u1){s=B.c.b0(a,c) +return b.b.test(s)}else return!J.b2T(b,B.c.b0(a,c)).gad(0)}, +cBq(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") +return a}, +dw3(a,b,c,d){var s=b.a2N(a,d) +if(s==null)return a +return A.cC4(a,s.b.index,s.gdw(0),c)}, +b2f(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +cj(a,b,c){var s +if(typeof b=="string")return A.dw1(a,b,c) +if(b instanceof A.u1){s=b.gap_() +s.lastIndex=0 +return a.replace(s,A.cBq(c))}return A.dw0(a,b,c)}, +dw0(a,b,c){var s,r,q,p +for(s=J.b2T(b,a),s=s.gaz(s),r=0,q="";s.t();){p=s.gK(s) +q=q+a.substring(r,p.gee(p))+c +r=p.gdw(p)}s=q+a.substring(r) +return s.charCodeAt(0)==0?s:s}, +dw1(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.b2f(b),"g"),A.cBq(c))}, +do0(a){return a}, +Zn(a,b,c,d){var s,r,q,p,o,n,m +if(d==null)d=A.dmH() +for(s=b.kt(0,a),s=new A.oO(s.a,s.b,s.c),r=t.Qz,q=0,p="";s.t();){o=s.d +if(o==null)o=r.a(o) +n=o.b +m=n.index +p=p+A.r(d.$1(B.c.R(a,q,m)))+A.r(c.$1(o)) +q=m+n[0].length}s=p+A.r(d.$1(B.c.b0(a,q))) +return s.charCodeAt(0)==0?s:s}, +ctV(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.cC4(a,s,s+b.length,c)}if(b instanceof A.u1)return d===0?a.replace(b.b,A.cBq(c)):A.dw3(a,b,c,d) +r=J.d0N(b,a,d) +q=r.gaz(r) +if(!q.t())return a +p=q.gK(q) +return B.c.nW(a,p.gee(p),p.gdw(p),c)}, +dw2(a,b,c,d){var s,r,q=b.Lu(0,a,d),p=new A.oO(q.a,q.b,q.c) +if(!p.t())return a +s=p.d +if(s==null)s=t.Qz.a(s) +r=A.r(c.$1(s)) +return B.c.nW(a,s.b.index,s.gdw(0),r)}, +cC4(a,b,c,d){return a.substring(0,b)+d+a.substring(c)}, +ah2:function ah2(a){this.a=a}, +dZ:function dZ(a,b){this.a=a +this.b=b}, +lj:function lj(a,b){this.a=a +this.b=b}, +aUi:function aUi(a,b){this.a=a +this.b=b}, +Ye:function Ye(a,b){this.a=a +this.b=b}, +aUj:function aUj(a,b){this.a=a +this.b=b}, +aUk:function aUk(a,b){this.a=a +this.b=b}, +cM:function cM(a,b){this.a=a +this.b=b}, +aUl:function aUl(a,b){this.a=a +this.b=b}, +ah3:function ah3(a,b){this.a=a +this.b=b}, +ia:function ia(a,b){this.a=a +this.b=b}, +ah4:function ah4(a,b){this.a=a +this.b=b}, +aUm:function aUm(a,b){this.a=a +this.b=b}, +ah5:function ah5(a,b){this.a=a +this.b=b}, +aUn:function aUn(a,b){this.a=a +this.b=b}, +O_:function O_(a,b){this.a=a +this.b=b}, +ah6:function ah6(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}, +aUq:function aUq(a,b){this.a=a +this.b=b}, +O0:function O0(a,b){this.a=a +this.b=b}, +ah7:function ah7(a,b){this.a=a +this.b=b}, +O1:function O1(a,b){this.a=a +this.b=b}, +aUr:function aUr(a,b){this.a=a +this.b=b}, +ah8:function ah8(a,b){this.a=a +this.b=b}, +aUs:function aUs(a,b){this.a=a +this.b=b}, +aUt:function aUt(a,b){this.a=a +this.b=b}, +aUu:function aUu(a,b){this.a=a +this.b=b}, +aUv:function aUv(a,b){this.a=a +this.b=b}, +ah9:function ah9(a,b,c){this.a=a +this.b=b +this.c=c}, +aha:function aha(a,b,c){this.a=a +this.b=b +this.c=c}, +aUw:function aUw(a,b,c){this.a=a +this.b=b +this.c=c}, +aUx:function aUx(a,b,c){this.a=a +this.b=b +this.c=c}, +aUy:function aUy(a,b,c){this.a=a +this.b=b +this.c=c}, +ahb:function ahb(a,b,c){this.a=a +this.b=b +this.c=c}, +aUz:function aUz(a,b,c){this.a=a +this.b=b +this.c=c}, +Yf:function Yf(a,b,c){this.a=a +this.b=b +this.c=c}, +aUA:function aUA(a,b,c){this.a=a +this.b=b +this.c=c}, +aUB:function aUB(a,b,c){this.a=a +this.b=b +this.c=c}, +aUC:function aUC(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}, +aUD:function aUD(a){this.a=a}, +ahd:function ahd(a){this.a=a}, +aUE:function aUE(a){this.a=a}, +aUF:function aUF(a){this.a=a}, +HU:function HU(a,b){this.a=a +this.$ti=b}, +PY:function PY(){}, +bay:function bay(a,b,c){this.a=a +this.b=b +this.c=c}, +y:function y(a,b,c){this.a=a +this.b=b +this.$ti=c}, +NO:function NO(a,b){this.a=a +this.$ti=b}, +Gd:function Gd(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +a9:function a9(a,b){this.a=a +this.$ti=b}, +a0X:function a0X(){}, +kd:function kd(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ix:function ix(a,b){this.a=a +this.$ti=b}, +a4u:function a4u(){}, +rv:function rv(a,b){this.a=a +this.$ti=b}, +a4v:function a4v(a,b){this.a=a +this.$ti=b}, +a4D:function a4D(a,b,c,d,e){var _=this +_.a=a +_.c=b +_.d=c +_.e=d +_.f=e}, +byj:function byj(a){this.a=a}, +byi:function byi(a,b,c){this.a=a +this.b=b +this.c=c}, +bNC:function bNC(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +a6l:function a6l(){}, +awd:function awd(a,b,c){this.a=a +this.b=b +this.c=c}, +aHa:function aHa(a){this.a=a}, +aAe:function aAe(a){this.a=a}, +a2S:function a2S(a,b){this.a=a +this.b=b}, +aiS:function aiS(a){this.a=a +this.b=null}, +Ci:function Ci(){}, +apr:function apr(){}, +aps:function aps(){}, +aFX:function aFX(){}, +aFj:function aFj(){}, +Pb:function Pb(a,b){this.a=a +this.b=b}, +aN1:function aN1(a){this.a=a}, +aDT:function aDT(a){this.a=a}, +cdc:function cdc(){}, +me:function me(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +bo4:function bo4(a){this.a=a}, +bo3:function bo3(a,b){this.a=a +this.b=b}, +bo2:function bo2(a){this.a=a}, +boY:function boY(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +bR:function bR(a,b){this.a=a +this.$ti=b}, +Si:function Si(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.$ti=c}, +a4G:function a4G(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +JJ:function JJ(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +csB:function csB(a){this.a=a}, +csC:function csC(a){this.a=a}, +csD:function csD(a){this.a=a}, +Be:function Be(){}, +aUf:function aUf(){}, +aUe:function aUe(){}, +aUg:function aUg(){}, +aUh:function aUh(){}, +u1:function u1(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +XN:function XN(a){this.b=a}, +aKq:function aKq(a,b,c){this.a=a +this.b=b +this.c=c}, +oO:function oO(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +Vm:function Vm(a,b){this.a=a +this.c=b}, +aXh:function aXh(a,b,c){this.a=a +this.b=b +this.c=c}, +cg4:function cg4(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +dwo(a){A.cu_(new A.qh("Field '"+a+u.N),new Error())}, +b(){A.cu_(new A.qh("Field '' has not been initialized."),new Error())}, +ck(){A.cu_(new A.qh("Field '' has already been initialized."),new Error())}, +a_(){A.cu_(new A.qh("Field '' has been assigned during initialization."),new Error())}, +aF(a){var s=new A.bU_(a) +return s.b=s}, +XD(a,b){var s=new A.c2r(a,b) +return s.b=s}, +bU_:function bU_(a){this.a=a +this.b=null}, +c2r:function c2r(a,b){this.a=a +this.b=null +this.c=b}, +Z8(a,b,c){}, +f1(a){var s,r,q +if(t.RP.b(a))return a +s=J.ao(a) +r=A.aK(s.gA(a),null,!1,t.z) +for(q=0;q>>0!==a||a>=c)throw A.d(A.Zi(b,a))}, +nH(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.d(A.drL(a,b,c)) +if(b==null)return c +return b}, +zu:function zu(){}, +kl:function kl(){}, +a63:function a63(){}, +SW:function SW(){}, +Ei:function Ei(){}, +qq:function qq(){}, +a64:function a64(){}, +azX:function azX(){}, +azY:function azY(){}, +a66:function a66(){}, +azZ:function azZ(){}, +a67:function a67(){}, +a68:function a68(){}, +a69:function a69(){}, +zv:function zv(){}, +agk:function agk(){}, +agl:function agl(){}, +agm:function agm(){}, +agn:function agn(){}, +cLT(a,b){var s=b.c +return s==null?b.c=A.cAm(a,b.x,!0):s}, +cyP(a,b){var s=b.c +return s==null?b.c=A.ajY(a,"a8",[b.x]):s}, +cLU(a){var s=a.w +if(s===6||s===7||s===8)return A.cLU(a.x) +return s===12||s===13}, +dcF(a){return a.as}, +cta(a,b){var s,r=b.length +for(s=0;s") +for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, +cQt(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}, +mM(a,b){var s,r,q,p,o,n,m=a.w +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)return A.mM(a.x,b) +if(m===7){s=a.x +r=A.mM(s,b) +q=s.w +return(q===12||q===13?"("+r+")":r)+"?"}if(m===8)return"FutureOr<"+A.mM(a.x,b)+">" +if(m===9){p=A.dom(a.x) +o=a.y +return o.length>0?p+("<"+A.cRg(o,b)+">"):p}if(m===11)return A.dnE(a,b) +if(m===12)return A.cQt(a,b,null) +if(m===13)return A.cQt(a.x,b,a.y) +if(m===14){n=a.x +return b[b.length-1-n]}return"?"}, +dom(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +djD(a,b){var s=a.tR[b] +for(;typeof s=="string";)s=a.tR[s] +return s}, +djC(a,b){var s,r,q,p,o,n=a.eT,m=n[b] +if(m==null)return A.aZj(a,b,!1) +else if(typeof m=="number"){s=m +r=A.ajZ(a,5,"#") +q=A.cmv(s) +for(p=0;p0)p+="<"+A.ajX(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.rX(null,null) +r.w=9 +r.x=b +r.y=c +if(c.length>0)r.c=c[0] +r.as=p +q=A.Bn(a,r) +a.eC.set(p,q) +return q}, +cAk(a,b,c){var s,r,q,p,o,n +if(b.w===10){s=b.x +r=b.y.concat(c)}else{r=c +s=b}q=s.as+(";<"+A.ajX(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.rX(null,null) +o.w=10 +o.x=s +o.y=r +o.as=q +n=A.Bn(a,o) +a.eC.set(q,n) +return n}, +cPc(a,b,c){var s,r,q="+"+(b+"("+A.ajX(c)+")"),p=a.eC.get(q) +if(p!=null)return p +s=new A.rX(null,null) +s.w=11 +s.x=b +s.y=c +s.as=q +r=A.Bn(a,s) +a.eC.set(q,r) +return r}, +cPa(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.ajX(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.ajX(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.dju(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.rX(null,null) +p.w=12 +p.x=b +p.y=c +p.as=r +o=A.Bn(a,p) +a.eC.set(r,o) +return o}, +cAl(a,b,c,d){var s,r=b.as+("<"+A.ajX(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.djw(a,b,c,r,d) +a.eC.set(r,s) +return s}, +djw(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.cmv(s) +for(q=0,p=0;p0){n=A.Bz(a,b,r,0) +m=A.Ze(a,c,r,0) +return A.cAl(a,n,m,c!==m)}}l=new A.rX(null,null) +l.w=13 +l.x=b +l.y=c +l.as=d +return A.Bn(a,l)}, +cOG(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +cOI(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.diF(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.cOH(a,r,l,k,!1) +else if(q===46)r=A.cOH(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.Gn(a.u,a.e,k.pop())) +break +case 94:k.push(A.djz(a.u,k.pop())) +break +case 35:k.push(A.ajZ(a.u,5,"#")) +break +case 64:k.push(A.ajZ(a.u,2,"@")) +break +case 126:k.push(A.ajZ(a.u,3,"~")) +break +case 60:k.push(a.p) +a.p=k.length +break +case 62:A.diH(a,k) +break +case 38:A.diG(a,k) +break +case 42:p=a.u +k.push(A.cPd(p,A.Gn(p,a.e,k.pop()),a.n)) +break +case 63:p=a.u +k.push(A.cAm(p,A.Gn(p,a.e,k.pop()),a.n)) +break +case 47:p=a.u +k.push(A.cPb(p,A.Gn(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.diE(a,k) +break +case 91:k.push(a.p) +a.p=k.length +break +case 93:o=k.splice(a.p) +A.cOJ(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.diJ(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.Gn(a.u,a.e,m)}, +diF(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}, +cOH(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 +for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 +else q=!0 +if(!q)break}}p=c.substring(b,m) +if(e){s=a.u +o=a.e +if(o.w===10)o=o.x +n=A.djD(s,o.x)[p] +if(n==null)A.C('No "'+p+'" in "'+A.dcF(o)+'"') +d.push(A.ak_(s,o,n))}else d.push(p) +return m}, +diH(a,b){var s,r=a.u,q=A.cOF(a,b),p=b.pop() +if(typeof p=="string")b.push(A.ajY(r,p,q)) +else{s=A.Gn(r,a.e,p) +switch(s.w){case 12:b.push(A.cAl(r,s,q,a.n)) +break +default:b.push(A.cAk(r,s,q)) +break}}}, +diE(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.cOF(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.Gn(m,a.e,l) +o=new A.aPu() +o.a=q +o.b=s +o.c=r +b.push(A.cPa(m,p,o)) +return +case-4:b.push(A.cPc(m,b.pop(),q)) +return +default:throw A.d(A.pV("Unexpected state under `()`: "+A.r(l)))}}, +diG(a,b){var s=b.pop() +if(0===s){b.push(A.ajZ(a.u,1,"0&")) +return}if(1===s){b.push(A.ajZ(a.u,4,"1&")) +return}throw A.d(A.pV("Unexpected extended operation "+A.r(s)))}, +cOF(a,b){var s=b.splice(a.p) +A.cOJ(a.u,a.e,s) +a.p=b.pop() +return s}, +Gn(a,b,c){if(typeof c=="string")return A.ajY(a,c,a.sEA) +else if(typeof c=="number"){b.toString +return A.diI(a,b,c)}else return c}, +cOJ(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}, +rX:function rX(a,b){var _=this +_.a=a +_.b=b +_.r=_.f=_.d=_.c=null +_.w=0 +_.as=_.Q=_.z=_.y=_.x=null}, +aPu:function aPu(){this.c=this.b=this.a=null}, +ajT:function ajT(a){this.a=a}, +aOq:function aOq(){}, +ajU:function ajU(a){this.a=a}, +dsP(a,b){var s,r +if(B.c.aC(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.wo.i(0,a) +return r==null?null:r.charCodeAt(0)}if(!(s>=$.d_0()&&s<=$.d_1()))r=s>=$.d_c()&&s<=$.d_d() +else r=!0 +if(r)return b.toLowerCase().charCodeAt(0) +return null}, +dji(a){var s=B.wo.gep(B.wo) +return new A.cg9(a,A.brh(s.fK(s,new A.cga(),t.BQ),t.S,t.N))}, +dol(a){var s,r,q,p,o=a.aEh(),n=A.N(t.N,t.S) +for(s=a.a,r=0;r=2)return null +return a.toLowerCase().charCodeAt(0)}, +cg9:function cg9(a,b){this.a=a +this.b=b +this.c=0}, +cga:function cga(){}, +a53:function a53(a){this.a=a}, +ee:function ee(a,b){this.a=a +this.b=b}, +j0:function j0(a,b){this.a=a +this.b=b}, +dhk(){var s,r,q={} +if(self.scheduleImmediate!=null)return A.doL() +if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") +r=self.document.createElement("span") +q.a=null +new self.MutationObserver(A.vc(new A.bRG(q),1)).observe(s,{childList:true}) +return new A.bRF(q,s,r)}else if(self.setImmediate!=null)return A.doM() +return A.doN()}, +dhl(a){self.scheduleImmediate(A.vc(new A.bRH(a),0))}, +dhm(a){self.setImmediate(A.vc(new A.bRI(a),0))}, +dhn(a){A.cN0(B.w,a)}, +cN0(a,b){var s=B.d.aD(a.a,1000) +return A.djp(s<0?0:s,b)}, +dfo(a,b){var s=B.d.aD(a.a,1000) +return A.djq(s<0?0:s,b)}, +djp(a,b){var s=new A.ajD(!0) +s.aVu(a,b) +return s}, +djq(a,b){var s=new A.ajD(!1) +s.aVv(a,b) +return s}, +p(a){return new A.acH(new A.ak($.at,a.h("ak<0>")),a.h("acH<0>"))}, +o(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +i(a,b){A.cPB(a,b)}, +n(a,b){b.d2(0,a)}, +m(a,b){b.iy(A.ag(a),A.aD(a))}, +cPB(a,b){var s,r,q=new A.co4(b),p=new A.co5(b) +if(a instanceof A.ak)a.asS(q,p,t.z) +else{s=t.z +if(t.L0.b(a))a.ki(q,p,s) +else{r=new A.ak($.at,t.LR) +r.a=8 +r.c=a +r.asS(q,p,s)}}}, +l(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 $.at.Oz(new A.cqZ(s),t.H,t.S,t.z)}, +hm(a,b,c){var s,r,q,p +if(b===0){s=c.c +if(s!=null)s.AF(null) +else{s=c.a +s===$&&A.b() +s.aO(0)}return}else if(b===1){s=c.c +if(s!=null)s.lu(A.ag(a),A.aD(a)) +else{s=A.ag(a) +r=A.aD(a) +q=c.a +q===$&&A.b() +q.h1(s,r) +c.a.aO(0)}return}if(a instanceof A.afx){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.B(0,s) +A.j8(new A.co2(c,b)) +return}else if(s===1){p=a.a +s=c.a +s===$&&A.b() +s.Fj(0,p,!1).bf(new A.co3(c,b),t.P) +return}}A.cPB(a,b)}, +b1I(a){var s=a.a +s===$&&A.b() +return new A.dI(s,A.z(s).h("dI<1>"))}, +dho(a,b){var s=new A.aKT(b.h("aKT<0>")) +s.aVi(a,b) +return s}, +b1y(a,b){return A.dho(a,b)}, +cOr(a){return new A.afx(a,1)}, +aQu(a){return new A.afx(a,0)}, +cP3(a,b,c){return 0}, +b4e(a,b){var s=A.hz(a,"error",t.K) +return new A.a_j(s,b==null?A.xW(a):b)}, +xW(a){var s +if(t.Cr.b(a)){s=a.gJ3() +if(s!=null)return s}return B.a0_}, +Rd(a,b){var s=new A.ak($.at,b.h("ak<0>")) +A.d3(B.w,new A.bjB(s,a)) +return s}, +cx1(a,b){var s=new A.ak($.at,b.h("ak<0>")) +A.j8(new A.bjA(s,a)) +return s}, +dm(a,b){var s=a==null?b.a(a):a,r=new A.ak($.at,b.h("ak<0>")) +r.nz(s) +return r}, +pd(a,b,c){var s,r +A.hz(a,"error",t.K) +s=$.at +if(s!==B.bc){r=s.C7(a,b) +if(r!=null){a=r.a +b=r.b}}if(b==null)b=A.xW(a) +s=new A.ak($.at,c.h("ak<0>")) +s.Jv(a,b) +return s}, +jk(a,b,c){var s,r +if(b==null)s=!c.b(null) +else s=!1 +if(s)throw A.d(A.ey(null,"computation","The type parameter is not nullable")) +r=new A.ak($.at,c.h("ak<0>")) +A.d3(a,new A.bjz(b,r,c)) +return r}, +ma(a,b,c){var s,r,q,p,o,n,m,l,k,j,i={},h=null,g=new A.ak($.at,c.h("ak>")) +i.a=null +i.b=0 +s=A.aF("error") +r=A.aF("stackTrace") +q=new A.bjD(i,h,b,g,s,r) +try{for(l=J.au(a),k=t.P;l.t();){p=l.gK(l) +o=i.b +p.ki(new A.bjC(i,o,g,h,b,s,r,c),q,k);++i.b}l=i.b +if(l===0){l=g +l.AF(A.a([],c.h("D<0>"))) +return l}i.a=A.aK(l,null,!1,c.h("0?"))}catch(j){n=A.ag(j) +m=A.aD(j) +if(i.b===0||b)return A.pd(n,m,c.h("x<0>")) +else{s.b=n +r.b=m}}return g}, +d7t(a,b,c,d){var s,r,q=new A.bjy(d,null,b,c) +if(a instanceof A.ak){s=$.at +r=new A.ak(s,c.h("ak<0>")) +if(s!==B.bc)q=s.Oz(q,c.h("0/"),t.K,t.Km) +a.Ee(new A.th(r,2,null,q,a.$ti.h("@<1>").a1(c).h("th<1,2>"))) +return r}return a.ki(new A.bjx(c),q,c)}, +cvM(a){return new A.aI(new A.ak($.at,a.h("ak<0>")),a.h("aI<0>"))}, +b1q(a,b,c){var s=$.at.C7(b,c) +if(s!=null){b=s.a +c=s.b}else if(c==null)c=A.xW(b) +a.lu(b,c)}, +di3(a,b,c){var s=new A.ak(b,c.h("ak<0>")) +s.a=8 +s.c=a +return s}, +dO(a,b){var s=new A.ak($.at,b.h("ak<0>")) +s.a=8 +s.c=a +return s}, +czY(a,b){var s,r +for(;s=a.a,(s&4)!==0;)a=a.c +if((s&24)!==0){r=b.Tl() +b.Rp(a) +A.Xt(b,r)}else{r=b.c +b.arJ(a) +a.a5a(r)}}, +di4(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.arJ(p) +q.a.a5a(r) +return}if((s&16)===0&&b.c==null){b.Rp(p) +return}b.a^=2 +b.b.vc(new A.c0K(q,b))}, +Xt(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){s=e.c +e.b.qp(s.a,s.b)}return}r.a=b +n=b.a +for(e=b;n!=null;e=n,n=m){e.a=null +A.Xt(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){e=q.b +e=!(e===j||e.gGk()===j.gGk())}else e=!1 +if(e){e=f.a +s=e.c +e.b.qp(s.a,s.b) +return}i=$.at +if(i!==j)$.at=j +else i=null +e=r.a.c +if((e&15)===8)new A.c0R(r,f,o).$0() +else if(p){if((e&1)!==0)new A.c0Q(r,l).$0()}else if((e&2)!==0)new A.c0P(f,r).$0() +if(i!=null)$.at=i +e=r.c +if(s.b(e)){q=r.a.$ti +q=q.h("a8<2>").b(e)||!q.y[1].b(e)}else q=!1 +if(q){h=r.a.b +if(e instanceof A.ak)if((e.a&24)!==0){g=h.c +h.c=null +b=h.Tv(g) +h.a=e.a&30|h.a&1 +h.c=e.c +f.a=e +continue}else A.czY(e,h) +else h.a1L(e) +return}}h=r.a.b +g=h.c +h.c=null +b=h.Tv(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}}, +cRa(a,b){if(t.Hg.b(a))return b.Oz(a,t.z,t.K,t.Km) +if(t.N2.b(a))return b.D2(a,t.z,t.K) +throw A.d(A.ey(a,"onError",u.f_))}, +dn0(){var s,r +for(s=$.Zb;s!=null;s=$.Zb){$.alN=null +r=s.b +$.Zb=r +if(r==null)$.alM=null +s.a.$0()}}, +dnZ(){$.cAT=!0 +try{A.dn0()}finally{$.alN=null +$.cAT=!1 +if($.Zb!=null)$.cD1().$1(A.cRH())}}, +cRl(a){var s=new A.aKS(a),r=$.alM +if(r==null){$.Zb=$.alM=s +if(!$.cAT)$.cD1().$1(A.cRH())}else $.alM=r.b=s}, +dnP(a){var s,r,q,p=$.Zb +if(p==null){A.cRl(a) +$.alN=$.alM +return}s=new A.aKS(a) +r=$.alN +if(r==null){s.b=p +$.Zb=$.alN=s}else{q=r.b +s.b=q +$.alN=r.b=s +if(q==null)$.alM=s}}, +j8(a){var s,r=null,q=$.at +if(B.bc===q){A.cqe(r,r,B.bc,a) +return}if(B.bc===q.gbgO().a)s=B.bc.gGk()===q.gGk() +else s=!1 +if(s){A.cqe(r,r,q,q.Zg(a,t.H)) +return}s=$.at +s.vc(s.a7x(a))}, +aFo(a,b){var s=null,r=b.h("td<0>"),q=new A.td(s,s,s,s,r) +q.l0(0,a) +q.JE() +return new A.dI(q,r.h("dI<1>"))}, +de7(a,b,c){var s,r,q=null +A.hz(a,"error",t.K) +s=c.h("td<0>") +r=new A.td(q,q,q,q,s) +r.lX(a,b==null?A.xW(a):b) +r.JE() +return new A.dI(r,s.h("dI<1>"))}, +de8(a,b){var s=null,r=b.h("Gw<0>"),q=new A.Gw(s,s,s,s,r) +a.ki(new A.bHX(q,b),new A.bHY(q),t.P) +return new A.dI(q,r.h("dI<1>"))}, +de9(a,b){return new A.NS(!1,new A.bI_(a,b),b.h("NS<0>"))}, +dCp(a,b){return new A.qZ(A.hz(a,"stream",t.K),b.h("qZ<0>"))}, +lN(a,b,c,d,e){return d?new A.Gw(b,null,c,a,e.h("Gw<0>")):new A.td(b,null,c,a,e.h("td<0>"))}, +b1G(a){var s,r,q +if(a==null)return +try{a.$0()}catch(q){s=A.ag(q) +r=A.aD(q) +$.at.qp(s,r)}}, +dhD(a,b,c,d,e,f){var s=$.at,r=e?1:0 +return new A.G6(a,A.ad8(s,b,f),A.ad9(s,c),A.aLG(s,d),s,r,f.h("G6<0>"))}, +dhh(a,b,c,d){var s=$.at,r=a.ga1h(a),q=a.ga1j() +return new A.WT(new A.ak(s,t.LR),b.cl(r,!1,a.ga2_(),q),d.h("WT<0>"))}, +dhi(a){return new A.bQV(a)}, +ad8(a,b,c){var s=b==null?A.doO():b +return a.D2(s,t.H,c)}, +ad9(a,b){if(b==null)b=A.doQ() +if(t.hK.b(b))return a.Oz(b,t.z,t.K,t.Km) +if(t.mX.b(b))return a.D2(b,t.z,t.K) +throw A.d(A.aM(u.db,null))}, +aLG(a,b){var s=b==null?A.doP():b +return a.Zg(s,t.H)}, +dnb(a){}, +dnd(a,b){$.at.qp(a,b)}, +dnc(){}, +czW(a,b){var s=$.at,r=new A.Xg(s,b.h("Xg<0>")) +A.j8(r.gapk()) +if(a!=null)r.c=s.Zg(a,t.H) +return r}, +cRh(a,b,c){var s,r,q,p,o,n +try{b.$1(a.$0())}catch(n){s=A.ag(n) +r=A.aD(n) +q=$.at.C7(s,r) +if(q==null)c.$2(s,r) +else{p=q.a +o=q.b +c.$2(p,o)}}}, +dkm(a,b,c,d){var s=a.ao(0),r=$.GQ() +if(s!==r)s.j6(new A.coh(b,c,d)) +else b.lu(c,d)}, +cPH(a,b){return new A.cog(a,b)}, +cPI(a,b,c){var s=a.ao(0),r=$.GQ() +if(s!==r)s.j6(new A.coi(b,c)) +else b.r7(c)}, +di2(a,b,c,d,e,f,g){var s=$.at,r=e?1:0 +r=new A.G9(a,A.ad8(s,b,g),A.ad9(s,c),A.aLG(s,d),s,r,f.h("@<0>").a1(g).h("G9<1,2>")) +r.ahY(a,b,c,d,e,f,g) +return r}, +b1o(a,b,c){var s=$.at.C7(b,c) +if(s!=null){b=s.a +c=s.b}a.lX(b,c)}, +cP0(a,b,c,d,e,f,g,h){var s=$.at,r=e?1:0 +r=new A.Ob(f,a,A.ad8(s,b,h),A.ad9(s,c),A.aLG(s,d),s,r,g.h("@<0>").a1(h).h("Ob<1,2>")) +r.ahY(a,b,c,d,e,h,h) +return r}, +cP1(a,b,c){return new A.aj0(new A.cg2(a,null,null,c,b),b.h("@<0>").a1(c).h("aj0<1,2>"))}, +d3(a,b){var s=$.at +if(s===B.bc)return s.ayc(a,b) +return s.ayc(a,s.a7x(b))}, +MM(a,b){var s,r=$.at +if(r===B.bc)return r.ay3(a,b) +s=r.a7y(b,t.Cf) +return $.at.ay3(a,s)}, +cqc(a,b){A.dnP(new A.cqd(a,b))}, +cRd(a,b,c,d){var s,r=$.at +if(r===c)return d.$0() +$.at=c +s=r +try{r=d.$0() +return r}finally{$.at=s}}, +cRf(a,b,c,d,e){var s,r=$.at +if(r===c)return d.$1(e) +$.at=c +s=r +try{r=d.$1(e) +return r}finally{$.at=s}}, +cRe(a,b,c,d,e,f){var s,r=$.at +if(r===c)return d.$2(e,f) +$.at=c +s=r +try{r=d.$2(e,f) +return r}finally{$.at=s}}, +cqe(a,b,c,d){var s,r +if(B.bc!==c){s=B.bc.gGk() +r=c.gGk() +d=s!==r?c.a7x(d):c.bnu(d,t.H)}A.cRl(d)}, +bRG:function bRG(a){this.a=a}, +bRF:function bRF(a,b,c){this.a=a +this.b=b +this.c=c}, +bRH:function bRH(a){this.a=a}, +bRI:function bRI(a){this.a=a}, +ajD:function ajD(a){this.a=a +this.b=null +this.c=0}, +ciL:function ciL(a,b){this.a=a +this.b=b}, +ciK:function ciK(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +acH:function acH(a,b){this.a=a +this.b=!1 +this.$ti=b}, +co4:function co4(a){this.a=a}, +co5:function co5(a){this.a=a}, +cqZ:function cqZ(a){this.a=a}, +co2:function co2(a,b){this.a=a +this.b=b}, +co3:function co3(a,b){this.a=a +this.b=b}, +aKT:function aKT(a){var _=this +_.a=$ +_.b=!1 +_.c=null +_.$ti=a}, +bRK:function bRK(a){this.a=a}, +bRL:function bRL(a){this.a=a}, +bRN:function bRN(a){this.a=a}, +bRO:function bRO(a,b){this.a=a +this.b=b}, +bRM:function bRM(a,b){this.a=a +this.b=b}, +bRJ:function bRJ(a){this.a=a}, +afx:function afx(a,b){this.a=a +this.b=b}, +dr:function dr(a,b){var _=this +_.a=a +_.e=_.d=_.c=_.b=null +_.$ti=b}, +dz:function dz(a,b){this.a=a +this.$ti=b}, +a_j:function a_j(a,b){this.a=a +this.b=b}, +dw:function dw(a,b){this.a=a +this.$ti=b}, +Nw:function Nw(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}, +AR:function AR(){}, +pK:function pK(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.r=_.f=_.e=_.d=null +_.$ti=c}, +chl:function chl(a,b){this.a=a +this.b=b}, +chn:function chn(a,b,c){this.a=a +this.b=b +this.c=c}, +chm:function chm(a){this.a=a}, +h1:function h1(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.r=_.f=_.e=_.d=null +_.$ti=c}, +bjB:function bjB(a,b){this.a=a +this.b=b}, +bjA:function bjA(a,b){this.a=a +this.b=b}, +bjz:function bjz(a,b,c){this.a=a +this.b=b +this.c=c}, +bjD:function bjD(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bjC:function bjC(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}, +bjy:function bjy(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bjx:function bjx(a){this.a=a}, +Ny:function Ny(){}, +aI:function aI(a,b){this.a=a +this.$ti=b}, +ajc:function ajc(a,b){this.a=a +this.$ti=b}, +th:function th(a,b,c,d,e){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +ak:function ak(a,b){var _=this +_.a=0 +_.b=a +_.c=null +_.$ti=b}, +c0H:function c0H(a,b){this.a=a +this.b=b}, +c0O:function c0O(a,b){this.a=a +this.b=b}, +c0L:function c0L(a){this.a=a}, +c0M:function c0M(a){this.a=a}, +c0N:function c0N(a,b,c){this.a=a +this.b=b +this.c=c}, +c0K:function c0K(a,b){this.a=a +this.b=b}, +c0J:function c0J(a,b){this.a=a +this.b=b}, +c0I:function c0I(a,b,c){this.a=a +this.b=b +this.c=c}, +c0R:function c0R(a,b,c){this.a=a +this.b=b +this.c=c}, +c0S:function c0S(a){this.a=a}, +c0Q:function c0Q(a,b){this.a=a +this.b=b}, +c0P:function c0P(a,b){this.a=a +this.b=b}, +aKS:function aKS(a){this.a=a +this.b=null}, +bg:function bg(){}, +bHX:function bHX(a,b){this.a=a +this.b=b}, +bHY:function bHY(a){this.a=a}, +bI_:function bI_(a,b){this.a=a +this.b=b}, +bI0:function bI0(a,b,c){this.a=a +this.b=b +this.c=c}, +bHZ:function bHZ(a,b,c){this.a=a +this.b=b +this.c=c}, +bIb:function bIb(a){this.a=a}, +bIe:function bIe(a){this.a=a}, +bI9:function bI9(a,b){this.a=a +this.b=b}, +bIa:function bIa(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bI7:function bI7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bI8:function bI8(a,b){this.a=a +this.b=b}, +bIc:function bIc(a,b){this.a=a +this.b=b}, +bId:function bId(a,b){this.a=a +this.b=b}, +bIf:function bIf(a,b){this.a=a +this.b=b}, +bIg:function bIg(a,b){this.a=a +this.b=b}, +bI5:function bI5(a){this.a=a}, +bI6:function bI6(a,b,c){this.a=a +this.b=b +this.c=c}, +bI3:function bI3(a,b){this.a=a +this.b=b}, +bI4:function bI4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bI1:function bI1(a,b){this.a=a +this.b=b}, +bI2:function bI2(a,b,c){this.a=a +this.b=b +this.c=c}, +aad:function aad(){}, +jx:function jx(){}, +Gv:function Gv(){}, +cg1:function cg1(a){this.a=a}, +cg0:function cg0(a){this.a=a}, +aXC:function aXC(){}, +acI:function acI(){}, +td:function td(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +Gw:function Gw(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +dI:function dI(a,b){this.a=a +this.$ti=b}, +G6:function G6(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}, +WT:function WT(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bQV:function bQV(a){this.a=a}, +bQU:function bQU(a){this.a=a}, +aj_:function aj_(a,b,c,d){var _=this +_.c=a +_.a=b +_.b=c +_.$ti=d}, +iG:function iG(){}, +bTh:function bTh(a,b,c){this.a=a +this.b=b +this.c=c}, +bTg:function bTg(a){this.a=a}, +YM:function YM(){}, +aNq:function aNq(){}, +oP:function oP(a,b){this.b=a +this.a=null +this.$ti=b}, +Xc:function Xc(a,b){this.b=a +this.c=b +this.a=null}, +bXy:function bXy(){}, +Go:function Go(a){var _=this +_.a=0 +_.c=_.b=null +_.$ti=a}, +c9t:function c9t(a,b){this.a=a +this.b=b}, +Xg:function Xg(a,b){var _=this +_.a=1 +_.b=a +_.c=null +_.$ti=b}, +qZ:function qZ(a,b){var _=this +_.a=null +_.b=a +_.c=!1 +_.$ti=b}, +B0:function B0(a){this.$ti=a}, +NS:function NS(a,b,c){this.a=a +this.b=b +this.$ti=c}, +c7y:function c7y(a,b){this.a=a +this.b=b}, +agg:function agg(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +coh:function coh(a,b,c){this.a=a +this.b=b +this.c=c}, +cog:function cog(a,b){this.a=a +this.b=b}, +coi:function coi(a,b){this.a=a +this.b=b}, +jY:function jY(){}, +G9:function G9(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}, +oX:function oX(a,b,c){this.b=a +this.a=b +this.$ti=c}, +ft:function ft(a,b,c){this.b=a +this.a=b +this.$ti=c}, +af0:function af0(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +ajm:function ajm(a,b,c){this.b=a +this.a=b +this.$ti=c}, +Ob:function Ob(a,b,c,d,e,f,g,h){var _=this +_.ch=a +_.w=b +_.x=null +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.r=_.f=null +_.$ti=h}, +lW:function lW(a,b,c){this.b=a +this.a=b +this.$ti=c}, +Xn:function Xn(a,b){this.a=a +this.$ti=b}, +YG:function YG(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}, +YN:function YN(){}, +ad6:function ad6(a,b,c){this.a=a +this.b=b +this.$ti=c}, +NK:function NK(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +aj0:function aj0(a,b){this.a=a +this.$ti=b}, +cg2:function cg2(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b_i:function b_i(a,b,c){this.a=a +this.b=b +this.$ti=c}, +b_h:function b_h(){}, +cqd:function cqd(a,b){this.a=a +this.b=b}, +ai0:function ai0(){}, +cdo:function cdo(a,b,c){this.a=a +this.b=b +this.c=c}, +cdm:function cdm(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +cdn:function cdn(a,b){this.a=a +this.b=b}, +cdp:function cdp(a,b,c){this.a=a +this.b=b +this.c=c}, +hg(a,b,c,d,e){if(c==null)if(b==null){if(a==null)return new A.B3(d.h("@<0>").a1(e).h("B3<1,2>")) +b=A.cBf()}else{if(A.cS8()===b&&A.cS7()===a)return new A.Gc(d.h("@<0>").a1(e).h("Gc<1,2>")) +if(a==null)a=A.cBe()}else{if(b==null)b=A.cBf() +if(a==null)a=A.cBe()}return A.dhF(a,b,c,d,e)}, +czZ(a,b){var s=a[b] +return s===a?null:s}, +cA0(a,b,c){if(c==null)a[b]=a +else a[b]=c}, +cA_(){var s=Object.create(null) +A.cA0(s,"",s) +delete s[""] +return s}, +dhF(a,b,c,d,e){var s=c!=null?c:new A.bWE(d) +return new A.ae2(a,b,s,d.h("@<0>").a1(e).h("ae2<1,2>"))}, +e4(a,b,c,d){if(b==null){if(a==null)return new A.me(c.h("@<0>").a1(d).h("me<1,2>")) +b=A.cBf()}else{if(A.cS8()===b&&A.cS7()===a)return new A.a4G(c.h("@<0>").a1(d).h("a4G<1,2>")) +if(a==null)a=A.cBe()}return A.dip(a,b,null,c,d)}, +a1(a,b,c){return A.cSv(a,new A.me(b.h("@<0>").a1(c).h("me<1,2>")))}, +N(a,b){return new A.me(a.h("@<0>").a1(b).h("me<1,2>"))}, +dip(a,b,c,d,e){return new A.afF(a,b,new A.c3R(d),d.h("@<0>").a1(e).h("afF<1,2>"))}, +dV(a){return new A.xi(a.h("xi<0>"))}, +cA1(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +wh(a){return new A.nB(a.h("nB<0>"))}, +b9(a){return new A.nB(a.h("nB<0>"))}, +d9(a,b){return A.ds4(a,new A.nB(b.h("nB<0>")))}, +cA3(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +dy(a,b,c){var s=new A.xj(a,b,c.h("xj<0>")) +s.c=a.e +return s}, +dkX(a,b){return J.q(a,b)}, +dkY(a){return J.ab(a)}, +d7F(a,b,c){var s=A.hg(null,null,null,b,c) +a.aE(0,new A.bkL(s,b,c)) +return s}, +cx8(a,b){var s,r,q=A.dV(b) +for(s=a.length,r=0;r")) +if(!q.t())return null +do s=r.gK(r) +while(q.t()) +return s}, +rA(a,b,c){var s=A.e4(null,null,b,c) +J.iK(a,new A.boZ(s,b,c)) +return s}, +rB(a,b,c){var s=A.e4(null,null,b,c) +s.L(0,a) +return s}, +mf(a,b){var s,r=A.wh(b) +for(s=J.au(a);s.t();)r.B(0,b.a(s.gK(s))) +return r}, +hh(a,b){var s=A.wh(b) +s.L(0,a) +return s}, +cOs(a,b){return new A.XJ(a,a.a,a.c,b.h("XJ<0>"))}, +d9d(a,b){var s=t.b8 +return J.GU(s.a(a),s.a(b))}, +hj(a){var s,r={} +if(A.cBI(a))return"{...}" +s=new A.bu("") +try{$.Ow.push(a) +s.a+="{" +r.a=!0 +J.iK(a,new A.brg(r,s)) +s.a+="}"}finally{$.Ow.pop()}r=s.a +return r.charCodeAt(0)==0?r:r}, +od(a,b){return new A.a4Z(A.aK(A.d9f(a),null,!1,b.h("0?")),b.h("a4Z<0>"))}, +d9f(a){if(a==null||a<8)return 8 +else if((a&a-1)>>>0!==0)return A.cJp(a) +return a}, +cJp(a){var s +a=(a<<1>>>0)-1 +for(;!0;a=s){s=(a&a-1)>>>0 +if(s===0)return a}}, +dl8(a,b){return J.GU(a,b)}, +cPY(a){if(a.h("h(0,0)").b(A.cS4()))return A.cS4() +return A.dpF()}, +bGQ(a,b){var s=A.cPY(a) +return new A.a9Y(s,new A.bGR(a),a.h("@<0>").a1(b).h("a9Y<1,2>"))}, +a9Z(a,b,c){var s=a==null?A.cPY(c):a,r=b==null?new A.bGU(c):b +return new A.Vf(s,r,c.h("Vf<0>"))}, +B3:function B3(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +c1x:function c1x(a){this.a=a}, +c1w:function c1w(a){this.a=a}, +Gc:function Gc(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +ae2:function ae2(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=d}, +bWE:function bWE(a){this.a=a}, +B4:function B4(a,b){this.a=a +this.$ti=b}, +Ga:function Ga(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +afF:function afF(a,b,c,d){var _=this +_.w=a +_.x=b +_.y=c +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=d}, +c3R:function c3R(a){this.a=a}, +xi:function xi(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +nz:function nz(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +nB:function nB(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +B6:function B6(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +c3S:function c3S(a){this.a=a +this.c=this.b=null}, +xj:function xj(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.$ti=c}, +x4:function x4(a,b){this.a=a +this.$ti=b}, +bkL:function bkL(a,b,c){this.a=a +this.b=b +this.c=c}, +boZ:function boZ(a,b,c){this.a=a +this.b=b +this.c=c}, +iz:function iz(a){var _=this +_.b=_.a=0 +_.c=null +_.$ti=a}, +XJ:function XJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.e=!1 +_.$ti=d}, +mg:function mg(){}, +a2:function a2(){}, +c3:function c3(){}, +brf:function brf(a){this.a=a}, +brg:function brg(a,b){this.a=a +this.b=b}, +Wi:function Wi(){}, +afL:function afL(a,b){this.a=a +this.$ti=b}, +aRc:function aRc(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.$ti=c}, +Gy:function Gy(){}, +SA:function SA(){}, +qS:function qS(a,b){this.a=a +this.$ti=b}, +aej:function aej(){}, +AY:function AY(a,b,c){var _=this +_.c=a +_.d=b +_.b=_.a=null +_.$ti=c}, +AZ:function AZ(a){this.b=this.a=null +this.$ti=a}, +yB:function yB(a,b){this.a=a +this.b=0 +this.$ti=b}, +aNR:function aNR(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.$ti=c}, +a4Z:function a4Z(a,b){var _=this +_.a=a +_.d=_.c=_.b=0 +_.$ti=b}, +NP:function NP(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.$ti=e}, +cZ:function cZ(){}, +O7:function O7(){}, +aX9:function aX9(){}, +j1:function j1(a,b){var _=this +_.a=a +_.c=_.b=null +_.$ti=b}, +nD:function nD(a,b,c){var _=this +_.d=a +_.a=b +_.c=_.b=null +_.$ti=c}, +aX8:function aX8(){}, +a9Y:function a9Y(a,b,c){var _=this +_.d=null +_.e=a +_.f=b +_.c=_.b=_.a=0 +_.$ti=c}, +bGR:function bGR(a){this.a=a}, +xr:function xr(){}, +Bj:function Bj(a,b){this.a=a +this.$ti=b}, +O9:function O9(a,b){this.a=a +this.$ti=b}, +aiN:function aiN(a,b){this.a=a +this.$ti=b}, +mJ:function mJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +aiR:function aiR(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +O8:function O8(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +Vf:function Vf(a,b,c){var _=this +_.d=null +_.e=a +_.f=b +_.c=_.b=_.a=0 +_.$ti=c}, +bGU:function bGU(a){this.a=a}, +bGT:function bGT(a,b){this.a=a +this.b=b}, +bGS:function bGS(a,b){this.a=a +this.b=b}, +aiO:function aiO(){}, +aiP:function aiP(){}, +aiQ:function aiQ(){}, +ak0:function ak0(){}, +b1C(a,b){var s,r,q,p=null +try{p=JSON.parse(a)}catch(r){s=A.ag(r) +q=A.bM(String(s),null,null) +throw A.d(q)}if(b==null)return A.coB(p) +else return A.dkD(p,b)}, +dkD(a,b){return b.$2(null,new A.coC(b).$1(a))}, +coB(a){var s +if(a==null)return null +if(typeof a!="object")return a +if(Object.getPrototypeOf(a)!==Array.prototype)return new A.afz(a,Object.create(null)) +for(s=0;s>>2,l=3-(h&3) +for(s=J.ao(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.d(A.ey(b,"Not a byte value at index "+r+": 0x"+J.d1q(s.i(b,r),16),null))}, +dhs(a,b,c,d,e,f){var s,r,q,p,o,n,m="Invalid encoding before padding",l="Invalid character",k=B.d.b2(f,2),j=f&3,i=$.cD2() +for(s=b,r=0;s=0){k=(k<<6|p)&16777215 +j=j+1&3 +if(j===0){o=e+1 +d[e]=k>>>16&255 +e=o+1 +d[o]=k>>>8&255 +o=e+1 +d[e]=k&255 +e=o +k=0}continue}else if(p===-1&&j>1){if(r>127)break +if(j===3){if((k&3)!==0)throw A.d(A.bM(m,a,s)) +d[e]=k>>>10 +d[e+1]=k>>>2}else{if((k&15)!==0)throw A.d(A.bM(m,a,s)) +d[e]=k>>>4}n=(3-j)*3 +if(q===37)n+=2 +return A.cO1(a,s+1,c,-n-1)}throw A.d(A.bM(l,a,s))}if(r>=0&&r<=127)return(k<<2|j)>>>0 +for(s=b;s127)break +throw A.d(A.bM(l,a,s))}, +dhq(a,b,c,d){var s=A.dhr(a,b,c),r=(d&3)+(s-b),q=B.d.b2(r,2)*3,p=r&3 +if(p!==0&&s0)return new Uint8Array(q) +return $.cYK()}, +dhr(a,b,c){var s,r=c,q=r,p=0 +while(!0){if(!(q>b&&p<2))break +c$0:{--q +s=a.charCodeAt(q) +if(s===61){++p +r=q +break c$0}if((s|32)===100){if(q===b)break;--q +s=a.charCodeAt(q)}if(s===51){if(q===b)break;--q +s=a.charCodeAt(q)}if(s===37){++p +r=q +break c$0}break}}return r}, +cO1(a,b,c,d){var s,r +if(b===c)return d +s=-d-1 +for(;s>0;){r=a.charCodeAt(b) +if(s===3){if(r===61){s-=3;++b +break}if(r===37){--s;++b +if(b===c)break +r=a.charCodeAt(b)}else break}if((s>3?s-3:s)===2){if(r!==51)break;++b;--s +if(b===c)break +r=a.charCodeAt(b)}if((r|32)!==100)break;++b;--s +if(b===c)break}if(b!==c)throw A.d(A.bM("Invalid padding character",a,b)) +return-s-1}, +d6l(a){return $.cVX().i(0,a.toLowerCase())}, +cJi(a,b,c){return new A.RZ(a,b)}, +cT2(a,b){return B.aO.yT(a,b)}, +cT1(a,b){return B.aO.pf(0,a,b)}, +d8J(a){var s,r +if(a==null)return null +s=a.length +if(s===0)return new Uint8Array(0) +$label0$0:{for(r=0;r=128)break $label0$0 +return new A.e0(a)}return B.bo.cD(a)}, +dl1(a){return a.eZ()}, +dii(a,b){var s=b==null?A.cry():b +return new A.aQy(a,[],s)}, +c3a(a,b,c){var s,r=new A.bu("") +A.cA2(a,r,b,c) +s=r.a +return s.charCodeAt(0)==0?s:s}, +cA2(a,b,c,d){var s,r +if(d==null)s=A.dii(b,c) +else{r=c==null?A.cry():c +s=new A.c39(d,0,b,[],r)}s.A4(a)}, +dij(a,b,c){var s=new Uint8Array(b),r=a==null?A.cry():a +return new A.aQA(b,c,s,[],r)}, +dik(a,b,c,d,e){var s,r,q +if(b!=null){s=new Uint8Array(d) +r=c==null?A.cry():c +q=new A.c3d(b,0,d,e,s,[],r)}else q=A.dij(c,d,e) +q.A4(a) +s=q.f +if(s>0)q.d.$3(q.e,0,s) +q.e=new Uint8Array(0) +q.f=0}, +dim(a,b,c){var s,r,q +for(s=J.ao(a),r=b,q=0;r>>0 +if(q>=0&&q<=255)return +A.din(a,b,c)}, +din(a,b,c){var s,r,q +for(s=J.ao(a),r=b;r255)throw A.d(A.bM("Source contains non-Latin-1 characters.",a,r))}}, +cPs(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""}}, +coC:function coC(a){this.a=a}, +afz:function afz(a,b){this.a=a +this.b=b +this.c=null}, +c37:function c37(a){this.a=a}, +aQw:function aQw(a){this.a=a}, +afy:function afy(a,b,c){this.b=a +this.c=b +this.a=c}, +cmt:function cmt(){}, +cms:function cms(){}, +He:function He(a){this.a=a}, +aZh:function aZh(){}, +ane:function ane(a){this.a=a}, +aZi:function aZi(a,b){this.a=a +this.b=b}, +aZg:function aZg(){}, +a_f:function a_f(a,b){this.a=a +this.b=b}, +bZf:function bZf(a){this.a=a}, +ceQ:function ceQ(a){this.a=a}, +anJ:function anJ(){}, +anL:function anL(){}, +acT:function acT(a){this.a=0 +this.b=a}, +bTe:function bTe(a){this.c=null +this.a=0 +this.b=a}, +bSs:function bSs(){}, +bRy:function bRy(a,b){this.a=a +this.b=b}, +cmq:function cmq(a,b){this.a=a +this.b=b}, +anK:function anK(){}, +aLj:function aLj(){this.a=0}, +aLk:function aLk(a,b){this.a=a +this.b=b}, +Pl:function Pl(){}, +add:function add(a){this.a=a}, +ade:function ade(a,b){this.a=a +this.b=b +this.c=0}, +aoR:function aoR(){}, +aWC:function aWC(a,b,c){this.a=a +this.b=b +this.$ti=c}, +eS:function eS(){}, +aT:function aT(){}, +aeV:function aeV(a,b,c){this.a=a +this.b=b +this.$ti=c}, +eC:function eC(){}, +RZ:function RZ(a,b){this.a=a +this.b=b}, +awf:function awf(a,b){this.a=a +this.b=b}, +awe:function awe(){}, +awh:function awh(a,b){this.a=a +this.b=b}, +c36:function c36(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1}, +aQz:function aQz(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1}, +awg:function awg(a){this.a=a}, +c3b:function c3b(){}, +c3c:function c3c(a,b){this.a=a +this.b=b}, +aQx:function aQx(){}, +c38:function c38(a,b){this.a=a +this.b=b}, +aQy:function aQy(a,b,c){this.c=a +this.a=b +this.b=c}, +c39:function c39(a,b,c,d,e){var _=this +_.f=a +_.e$=b +_.c=c +_.a=d +_.b=e}, +aQA:function aQA(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=0 +_.a=d +_.b=e}, +c3d:function c3d(a,b,c,d,e,f,g){var _=this +_.x=a +_.e$=b +_.c=c +_.d=d +_.e=e +_.f=0 +_.a=f +_.b=g}, +JQ:function JQ(a){this.a=a}, +awx:function awx(a){this.a=a}, +a4P:function a4P(a,b){this.a=a +this.b=b}, +aQE:function aQE(a){this.a=a}, +c3h:function c3h(a){this.a=a}, +uz:function uz(){}, +bUu:function bUu(a,b){this.a=a +this.b=b}, +cg5:function cg5(a,b){this.a=a +this.b=b}, +YP:function YP(){}, +Bk:function Bk(a){this.a=a}, +cmu:function cmu(a,b,c){this.a=a +this.b=b +this.c=c}, +cmr:function cmr(a,b,c){this.a=a +this.b=b +this.c=c}, +Nh:function Nh(a){this.a=a}, +aHk:function aHk(){}, +aZn:function aZn(a){this.b=this.a=0 +this.c=a}, +ak7:function ak7(a,b){var _=this +_.d=a +_.b=_.a=0 +_.c=b}, +abL:function abL(a){this.a=a}, +iu:function iu(a){this.a=a +this.b=16 +this.c=0}, +b_N:function b_N(){}, +b_O:function b_O(){}, +b1i:function b1i(){}, +ac(a,b){var s=A.dhz(a,b) +if(s==null)throw A.d(A.bM("Could not parse BigInt",a,null)) +return s}, +cO8(a,b){var s,r,q=$.ic(),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 $.ic() +l=A.jX(j,i) +return new A.hO(l===0?!1:c,i,l)}, +dhy(a,b,c){var s,r,q,p=$.ic(),o=A.Nv(b) +for(s=a.length,r=0;r=b)return null +p=p.X(0,o).S(0,A.Nv(q))}if(c)return p.o1(0) +return p}, +dhz(a,b){var s,r,q,p,o,n,m=null +if(a==="")return m +s=$.cYM().im(a) +if(s==null)return m +r=s.b +q=r[1]==="-" +p=r[4] +o=r[3] +n=r[5] +if(b==null){if(p!=null)return A.cO8(p,q) +if(o!=null)return A.cO9(o,2,q) +return m}if(b<2||b>36)throw A.d(A.e9(b,2,36,"radix",m)) +if(b===10&&p!=null)return A.cO8(p,q) +if(b===16)r=p!=null||n!=null +else r=!1 +if(r){if(p==null){n.toString +r=n}else r=p +return A.cO9(r,0,q)}r=p==null?n:p +if(r==null){o.toString +r=o}return A.dhy(r,b,q)}, +jX(a,b){while(!0){if(!(a>0&&b[a-1]===0))break;--a}return a}, +X_(a,b,c,d){var s,r=new Uint16Array(d),q=c-b +for(s=0;s>>0)+(o>>>4)-1075 +m=new Uint16Array(4) +m[0]=(r[1]<<8>>>0)+r[0] +m[1]=(r[3]<<8>>>0)+r[2] +m[2]=(r[5]<<8>>>0)+r[4] +m[3]=o&15|16 +l=new A.hO(!1,m,4) +if(n<0)k=l.kZ(0,-n) +else k=n>0?l.hN(0,n):l +if(s)return k.o1(0) +return k}, +czP(a,b,c,d){var s +if(b===0)return 0 +if(c===0&&d===a)return b +for(s=b-1;s>=0;--s)d[s+c]=a[s] +for(s=c-1;s>=0;--s)d[s]=0 +return b+c}, +cO7(a,b,c,d){var s,r,q,p=B.d.aD(c,16),o=B.d.M(c,16),n=16-o,m=B.d.hN(1,n)-1 +for(s=b-1,r=0;s>=0;--s){q=a[s] +d[s+p+1]=(B.d.mS(q,n)|r)>>>0 +r=B.d.hN(q&m,o)}d[p]=r}, +cO2(a,b,c,d){var s,r,q,p=B.d.aD(c,16) +if(B.d.M(c,16)===0)return A.czP(a,b,p,d) +s=b+p+1 +A.cO7(a,b,c,d) +for(r=p;--r,r>=0;)d[r]=0 +q=s-1 +return d[q]===0?q:s}, +X0(a,b,c,d){var s,r,q=B.d.aD(c,16),p=B.d.M(c,16),o=16-p,n=B.d.hN(1,p)-1,m=B.d.mS(a[q],p),l=b-q-1 +for(s=0;s>>0,o)|m)>>>0 +m=B.d.mS(r,p)}d[l]=m}, +lU(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}, +xb(a,b,c,d,e){var s,r +for(s=0,r=0;r>>16}for(r=d;r>>16}e[b]=s}, +hl(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.d.aD(q,65536)}for(;s!==0;e=p){o=d[e]+s +p=e+1 +d[e]=o&65535 +s=B.d.aD(o,65536)}}, +dhx(a,b,c,d,e){var s,r=b+d +for(s=r;--s,s>=0;)e[s]=0 +for(s=0;s>>0,a) +if(s>65535)return 65535 +return s}, +dhv(a6,a7,a8){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0="Not coprime",a1=a6.c,a2=a7.c,a3=a1>a2?a1:a2,a4=A.X_(a6.b,0,a1,a3),a5=A.X_(a7.b,0,a2,a3) +if(a2===1&&a5[0]===1)return $.jC() +if(a2!==0)s=(a5[0]&1)===0&&(a4[0]&1)===0 +else s=!0 +if(s)throw A.d(A.dA(a0)) +r=A.X_(a4,0,a1,a3) +q=A.X_(a5,0,a2,a3+2) +p=(a4[0]&1)===0 +o=a3+1 +n=o+2 +m=$.cZC() +if(p){m=new Uint16Array(n) +m[0]=1 +l=new Uint16Array(n)}else l=m +k=new Uint16Array(n) +j=new Uint16Array(n) +j[0]=1 +for(i=!1,h=!1,g=!1,f=!1;!0;){for(;(r[0]&1)===0;){A.X0(r,a3,1,r) +if(p){if((m[0]&1)===1||(k[0]&1)===1){if(i)if(m[a3]!==0||A.lU(m,a3,a5,a3)>0){A.hl(m,o,a5,a3,m) +i=!0}else{A.hl(a5,a3,m,a3,m) +i=!1}else A.xb(m,o,a5,a3,m) +if(g)A.xb(k,o,a4,a3,k) +else if(k[a3]!==0||A.lU(k,a3,a4,a3)>0){A.hl(k,o,a4,a3,k) +g=!1}else{A.hl(a4,a3,k,a3,k) +g=!0}}A.X0(m,o,1,m)}else if((k[0]&1)===1)if(g)A.xb(k,o,a4,a3,k) +else if(k[a3]!==0||A.lU(k,a3,a4,a3)>0){A.hl(k,o,a4,a3,k) +g=!1}else{A.hl(a4,a3,k,a3,k) +g=!0}A.X0(k,o,1,k)}for(;(q[0]&1)===0;){A.X0(q,a3,1,q) +if(p){if((l[0]&1)===1||(j[0]&1)===1){if(h)if(l[a3]!==0||A.lU(l,a3,a5,a3)>0){A.hl(l,o,a5,a3,l) +h=!0}else{A.hl(a5,a3,l,a3,l) +h=!1}else A.xb(l,o,a5,a3,l) +if(f)A.xb(j,o,a4,a3,j) +else if(j[a3]!==0||A.lU(j,a3,a4,a3)>0){A.hl(j,o,a4,a3,j) +f=!1}else{A.hl(a4,a3,j,a3,j) +f=!0}}A.X0(l,o,1,l)}else if((j[0]&1)===1)if(f)A.xb(j,o,a4,a3,j) +else if(j[a3]!==0||A.lU(j,a3,a4,a3)>0){A.hl(j,o,a4,a3,j) +f=!1}else{A.hl(a4,a3,j,a3,j) +f=!0}A.X0(j,o,1,j)}if(A.lU(r,a3,q,a3)>=0){A.hl(r,a3,q,a3,r) +if(p)if(i===h){e=A.lU(m,o,l,o) +if(e>0)A.hl(m,o,l,o,m) +else{A.hl(l,o,m,o,m) +i=!i&&e!==0}}else A.xb(m,o,l,o,m) +if(g===f){d=A.lU(k,o,j,o) +if(d>0)A.hl(k,o,j,o,k) +else{A.hl(j,o,k,o,k) +g=!g&&d!==0}}else A.xb(k,o,j,o,k)}else{A.hl(q,a3,r,a3,q) +if(p)if(h===i){c=A.lU(l,o,m,o) +if(c>0)A.hl(l,o,m,o,l) +else{A.hl(m,o,l,o,l) +h=!h&&c!==0}}else A.xb(l,o,m,o,l) +if(f===g){b=A.lU(j,o,k,o) +if(b>0)A.hl(j,o,k,o,j) +else{A.hl(k,o,j,o,j) +f=!f&&b!==0}}else A.xb(j,o,k,o,j)}a=a3 +while(!0){if(!(a>0&&r[a-1]===0))break;--a}if(a===0)break}a=a3-1 +while(!0){if(!(a>0&&q[a]===0))break;--a}if(a!==0||q[0]!==1)throw A.d(A.dA(a0)) +if(f){while(!0){if(!(j[a3]!==0||A.lU(j,a3,a4,a3)>0))break +A.hl(j,o,a4,a3,j)}A.hl(a4,a3,j,a3,j)}else while(!0){if(!(j[a3]!==0||A.lU(j,a3,a4,a3)>=0))break +A.hl(j,o,a4,a3,j)}s=A.jX(a3,j) +return new A.hO(!1,j,s)}, +dsS(a){return A.lZ(a)}, +cIw(a,b,c){return A.cL6(a,b,null)}, +mZ(a,b){return new A.tQ(new WeakMap(),a,b.h("tQ<0>"))}, +fT(a){if(A.lY(a)||typeof a=="number"||typeof a=="string"||a instanceof A.Be)A.atI(a)}, +atI(a){throw A.d(A.ey(a,"object","Expandos are not allowed on strings, numbers, bools, records or null"))}, +djU(){if(typeof WeakRef=="function")return WeakRef +var s=function LeakRef(a){this._=a} +s.prototype={ +deref(){return this._}} +return s}, +cA(a,b){var s=A.cY(a,b) +if(s!=null)return s +throw A.d(A.bM(a,null,null))}, +cST(a,b){return A.cY(a,b)}, +pO(a){var s=A.zW(a) +if(s!=null)return s +throw A.d(A.bM("Invalid double",a,null))}, +d6z(a,b){a=A.d(a) +a.stack=b.k(0) +throw a +throw A.d("unreachable")}, +vF(a,b){var s=new A.am(a,b) +s.R0(a,b) +return s}, +aK(a,b,c,d){var s,r=c?J.RW(a,d):J.JF(a,d) +if(a!==0&&b!=null)for(s=0;s")) +for(s=J.au(a);s.t();)r.push(s.gK(s)) +if(b)return r +return J.bnV(r)}, +R(a,b,c){var s +if(b)return A.cJs(a,c) +s=J.bnV(A.cJs(a,c)) +return s}, +cJs(a,b){var s,r +if(Array.isArray(a))return A.a(a.slice(0),b.h("D<0>")) +s=A.a([],b.h("D<0>")) +for(r=J.au(a);r.t();)s.push(r.gK(r)) +return s}, +wj(a,b,c){var s,r=J.RW(a,c) +for(s=0;s0||c0)a=J.amA(a,b) +return A.cL8(A.R(a,!0,t.S))}, +aFt(a){return A.cm(a)}, +dee(a,b,c){var s=a.length +if(b>=s)return"" +return A.dbL(a,b,c==null||c>s?s:c)}, +b4(a,b,c,d){return new A.u1(a,A.cxE(a,c,b,d,!1,!1))}, +dsR(a,b){return a==null?b==null:a===b}, +deb(a){return new A.bu(A.r(a))}, +aFq(a,b,c){var s=J.au(b) +if(!s.t())return a +if(c.length===0){do a+=A.r(s.gK(s)) +while(s.t())}else{a+=A.r(s.gK(s)) +for(;s.t();)a=a+c+A.r(s.gK(s))}return a}, +cKl(a,b){return new A.zz(a,b.gbB0(),b.gbEb(),b.gbBq())}, +aHh(){var s,r,q=A.dbH() +if(q==null)throw A.d(A.aq("'Uri.base' is not supported")) +s=$.cNo +if(s!=null&&q===$.cNn)return s +r=A.di(q,0,null) +$.cNo=r +$.cNn=q +return r}, +vb(a,b,c,d){var s,r,q,p,o,n="0123456789ABCDEF" +if(c===B.ai){s=$.cZ7() +s=s.b.test(b)}else s=!1 +if(s)return b +r=c.ug(b) +for(s=r.length,q=0,p="";q>>4]&1<<(o&15))!==0)p+=A.cm(o) +else p=d&&o===32?p+"+":p+"%"+n[o>>>4&15]+n[o&15]}return p.charCodeAt(0)==0?p:p}, +djM(a){var s,r,q +if(!$.cZ8())return A.djN(a) +s=new URLSearchParams() +a.aE(0,new A.cmm(s)) +r=s.toString() +q=r.length +if(q>0&&r[q-1]==="=")r=B.c.R(r,0,q-1) +return r.replace(/=&|\*|%7E/g,b=>b==="=&"?"&":b==="*"?"%2A":"~")}, +pw(){return A.aD(new Error())}, +d3n(a,b){return J.GU(a,b)}, +Qk(a,b,c,d,e,f,g,h){var s=A.cd(a,b,c,d,e,f,g+B.e.aF(h/1000),!1) +if(!A.bI(s))A.C(A.bV(s)) +return new A.am(s,!1)}, +Ql(a,b,c,d,e,f,g,h){var s=A.cd(a,b,c,d,e,f,g+B.e.aF(h/1000),!0) +if(!A.bI(s))A.C(A.bV(s)) +return new A.am(s,!0)}, +d4c(){return new A.am(Date.now(),!1)}, +ase(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=null,b=$.cV0().im(a) +if(b!=null){s=new A.bbI() +r=b.b +q=r[1] +q.toString +p=A.cA(q,c) +q=r[2] +q.toString +o=A.cA(q,c) +q=r[3] +q.toString +n=A.cA(q,c) +m=s.$1(r[4]) +l=s.$1(r[5]) +k=s.$1(r[6]) +j=new A.bbJ().$1(r[7]) +i=B.d.aD(j,1000) +if(r[8]!=null){h=r[9] +if(h!=null){g=h==="-"?-1:1 +q=r[10] +q.toString +f=A.cA(q,c) +l-=g*(s.$1(r[11])+60*f)}e=!0}else e=!1 +d=A.cd(p,o,n,m,l,k,i+B.e.aF(j%1000/1000),e) +if(d==null)throw A.d(A.bM("Time out of range",a,c)) +return A.asb(d,e)}else throw A.d(A.bM("Invalid date format",a,c))}, +bbK(a){var s,r +try{s=A.ase(a) +return s}catch(r){if(t.bE.b(A.ag(r)))return null +else throw r}}, +asb(a,b){var s=new A.am(a,b) +s.R0(a,b) +return s}, +cGt(a){var s=Math.abs(a),r=a<0?"-":"" +if(s>=1000)return""+a +if(s>=100)return r+"0"+s +if(s>=10)return r+"00"+s +return r+"000"+s}, +d4d(a){var s=Math.abs(a),r=a<0?"-":"+" +if(s>=1e5)return r+s +return r+"0"+s}, +cGu(a){if(a>=100)return""+a +if(a>=10)return"0"+a +return"00"+a}, +ys(a){if(a>=10)return""+a +return"0"+a}, +a1B(a,b,c,d,e,f,g){var s=a.b?A.dq0():A.dq_(),r=g==null?A.b7(a):g,q=e==null?A.bp(a):e,p=b==null?A.cL(a):b,o=c==null?A.iT(a):c,n=d==null?A.EM(a):d,m=f==null?A.Lh(a):f +return s.$8(r,q,p,o,n,m,A.aBY(a),0)}, +cp(a,b,c,d,e,f){return new A.aU(c+1000*d+1e6*f+6e7*e+36e8*b+864e8*a)}, +d6r(a,b){var s,r +for(s=0;s<3;++s){r=a[s] +if(r.b===b)return r}throw A.d(A.ey(b,"name","No enum value with that name"))}, +IF(a){if(typeof a=="number"||A.lY(a)||a==null)return J.cw(a) +if(typeof a=="string")return JSON.stringify(a) +return A.cL7(a)}, +atA(a,b){A.hz(a,"error",t.K) +A.hz(b,"stackTrace",t.Km) +A.d6z(a,b)}, +pV(a){return new A.Hf(a)}, +aM(a,b){return new A.nN(!1,null,b,a)}, +ey(a,b,c){return new A.nN(!0,a,b,c)}, +d1Q(a){return new A.nN(!1,null,a,"Must not be null")}, +a5(a,b){return a}, +b8(a){var s=null +return new A.TZ(s,s,!1,s,s,a)}, +a7z(a,b,c){return new A.TZ(null,null,!0,a,b,c==null?"Value not in range":c)}, +e9(a,b,c,d,e){return new A.TZ(b,c,!0,a,d,"Invalid value")}, +a7A(a,b,c,d){if(ac)throw A.d(A.e9(a,b,c,d,null)) +return a}, +dc0(a,b,c,d){return A.bnn(a,d==null?J.bn(b):d,b,null,c)}, +dM(a,b,c,d,e){if(0>a||a>c)throw A.d(A.e9(a,0,c,d==null?"start":d,null)) +if(b!=null){if(a>b||b>c)throw A.d(A.e9(b,a,c,e==null?"end":e,null)) +return b}return c}, +js(a,b){if(a<0)throw A.d(A.e9(a,0,null,b,null)) +return a}, +cxu(a,b,c,d,e){var s=e==null?b.gA(b):e +return new A.a4k(s,!0,a,c,"Index out of range")}, +ik(a,b,c,d,e){return new A.a4k(b,!0,a,e,"Index out of range")}, +bnn(a,b,c,d,e){if(0>a||a>=b)throw A.d(A.ik(a,b,c,d,e==null?"index":e)) +return a}, +aq(a){return new A.AK(a)}, +bT(a){return new A.x2(a)}, +a0(a){return new A.px(a)}, +e1(a){return new A.apF(a)}, +dA(a){return new A.aeC(a)}, +bM(a,b,c){return new A.kV(a,b,c)}, +cxB(a,b,c){if(a<=0)return new A.m9(c.h("m9<0>")) +return new A.aeX(a,b,c.h("aeX<0>"))}, +cxC(a,b,c){var s,r +if(A.cBI(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.a([],t.s) +$.Ow.push(a) +try{A.dmF(a,s)}finally{$.Ow.pop()}r=A.aFq(b,s,", ")+c +return r.charCodeAt(0)==0?r:r}, +u0(a,b,c){var s,r +if(A.cBI(a))return b+"..."+c +s=new A.bu(b) +$.Ow.push(a) +try{r=s +r.a=A.aFq(r.a,a,", ")}finally{$.Ow.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +dmF(a,b){var s,r,q,p,o,n,m,l=J.au(a),k=0,j=0 +while(!0){if(!(k<80||j<3))break +if(!l.t())return +s=A.r(l.gK(l)) +b.push(s) +k+=s.length+2;++j}if(!l.t()){if(j<=5)return +r=b.pop() +q=b.pop()}else{p=l.gK(l);++j +if(!l.t()){if(j<=4){b.push(A.r(p)) +return}r=A.r(p) +q=b.pop() +k+=r.length+2}else{o=l.gK(l);++j +for(;l.t();p=o,o=n){n=l.gK(l);++j +if(j>100){while(!0){if(!(k>75&&j>3))break +k-=b.pop().length+2;--j}b.push("...") +return}}q=A.r(p) +r=A.r(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)}, +cJK(a,b,c,d,e){return new A.HD(a,b.h("@<0>").a1(c).a1(d).a1(e).h("HD<1,2,3,4>"))}, +brh(a,b,c){var s=A.N(b,c) +s.auT(s,a) +return s}, +ad(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.cMA(J.ab(a),J.ab(b),$.kC()) +if(B.a===d){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +return A.lc(A.as(A.as(A.as($.kC(),s),b),c))}if(B.a===e)return A.dex(J.ab(a),J.ab(b),J.ab(c),J.ab(d),$.kC()) +if(B.a===f){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +return A.lc(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e))}if(B.a===g){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f))}if(B.a===h){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g))}if(B.a===i){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h))}if(B.a===j){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i))}if(B.a===k){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j))}if(B.a===l){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k))}if(B.a===m){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l))}if(B.a===n){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m))}if(B.a===o){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +n=J.ab(n) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m),n))}if(B.a===p){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +n=J.ab(n) +o=J.ab(o) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o))}if(B.a===q){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +n=J.ab(n) +o=J.ab(o) +p=J.ab(p) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p))}if(B.a===r){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +n=J.ab(n) +o=J.ab(o) +p=J.ab(p) +q=J.ab(q) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q))}if(B.a===a0){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +n=J.ab(n) +o=J.ab(o) +p=J.ab(p) +q=J.ab(q) +r=J.ab(r) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r))}if(B.a===a1){s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +n=J.ab(n) +o=J.ab(o) +p=J.ab(p) +q=J.ab(q) +r=J.ab(r) +a0=J.ab(a0) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r),a0))}s=J.ab(a) +b=J.ab(b) +c=J.ab(c) +d=J.ab(d) +e=J.ab(e) +f=J.ab(f) +g=J.ab(g) +h=J.ab(h) +i=J.ab(i) +j=J.ab(j) +k=J.ab(k) +l=J.ab(l) +m=J.ab(m) +n=J.ab(n) +o=J.ab(o) +p=J.ab(p) +q=J.ab(q) +r=J.ab(r) +a0=J.ab(a0) +a1=J.ab(a1) +return A.lc(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as(A.as($.kC(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r),a0),a1))}, +cs(a){var s,r=$.kC() +for(s=J.au(a);s.t();)r=A.as(r,J.ab(s.gK(s))) +return A.lc(r)}, +cKr(a){var s,r,q,p,o +for(s=a.gaz(a),r=0,q=0;s.t();){p=J.ab(s.gK(s)) +o=((p^B.d.b2(p,16))>>>0)*2146121005>>>0 +o=((o^o>>>15)>>>0)*2221713035>>>0 +r=r+((o^o>>>16)>>>0)&1073741823;++q}return A.cMA(r,q,0)}, +eP(a){var s=A.r(a),r=$.mP +if(r==null)A.mO(s) +else r.$1(s)}, +a9s(a,b,c,d){return new A.yf(a,b,c.h("@<0>").a1(d).h("yf<1,2>"))}, +cMn(){$.r8() +return new A.py()}, +cPN(a,b){return 65536+((a&1023)<<10)+(b&1023)}, +cNm(a){var s,r=null,q=new A.bu(""),p=A.a([-1],t.t) +A.dgb(r,r,r,q,p) +p.push(q.a.length) +q.a+="," +A.dg9(B.lh,B.dj.ug(a),q) +s=q.a +return new A.aHf(s.charCodeAt(0)==0?s:s,p,r).gfh()}, +di(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.bNR(a4>0||a5=14)q[7]=a5 +o=q[1] +if(o>=a4)if(A.cRk(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.i0(a3,"\\",l))if(n>a4)g=B.c.i0(a3,"\\",n-1)||B.c.i0(a3,"\\",n-2) +else g=!1 +else g=!0 +if(g){h=a2 +i=!1}else{if(!(kl+2&&B.c.i0(a3,"/..",k-3) +else g=!0 +if(g){h=a2 +i=!1}else{if(o===a4+4)if(B.c.i0(a3,"file",a4)){if(n<=a4){if(!B.c.i0(a3,"/",l)){f="file:///" +r=3}else{f="file://" +r=2}a3=f+B.c.R(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.nW(a3,l,k,"/");++k;++j;++a5}else{a3=B.c.R(a3,a4,l)+"/"+B.c.R(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.i0(a3,"http",a4)){if(p&&m+3===l&&B.c.i0(a3,"80",m+1))if(a4===0&&!0){a3=B.c.nW(a3,m,l,"") +l-=3 +k-=3 +j-=3 +a5-=3}else{a3=B.c.R(a3,a4,m)+B.c.R(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.i0(a3,"https",a4)){if(p&&m+4===l&&B.c.i0(a3,"443",m+1))if(a4===0&&!0){a3=B.c.nW(a3,m,l,"") +l-=4 +k-=4 +j-=4 +a5-=3}else{a3=B.c.R(a3,a4,m)+B.c.R(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.cmn(a3,a4,o) +else{if(o===a4)A.YZ(a3,a4,"Invalid empty scheme") +h=""}if(n>a4){e=o+3 +d=e9)k.$2("invalid character",s)}else{if(q===3)k.$2(m,s) +o=A.cA(B.c.R(a,r,s),null) +if(o>255)k.$2(l,r) +n=q+1 +j[q]=o +r=s+1 +q=n}}if(q!==3)k.$2(m,c) +o=A.cA(B.c.R(a,r,c),null) +if(o>255)k.$2(l,r) +j[q]=o +return j}, +cNq(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.bNT(a),c=new A.bNU(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.C(A.e9(0,0,p.gA(q),null,null)) +if(A.r6(q,"/",0)){s=A.aq("Illegal path character "+A.r(q)) +throw A.d(s)}}}, +ak5(a,b,c){var s,r,q,p,o,n=null +for(s=A.fB(a,c,n,A.X(a).c),r=s.$ti,s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E");s.t();){q=s.d +if(q==null)q=r.a(q) +p=A.b4('["*/:<>?\\\\|]',!0,!1,!1) +o=q.length +if(A.r6(q,p,0))if(b)throw A.d(A.aM("Illegal character in path",n)) +else throw A.d(A.aq("Illegal character in path: "+q))}}, +cPg(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.d(A.aM(r+A.aFt(a),null)) +else throw A.d(A.aq(r+A.aFt(a)))}, +djL(a,b){var s=null,r=A.a(a.split("/"),t.s) +if(B.c.aC(a,"/"))return A.fi(s,s,s,r,s,s,s,"file") +else return A.fi(s,s,s,r,s,s,s,s)}, +djO(a,b){var s,r,q,p,o="\\",n=null,m="file" +if(B.c.aC(a,"\\\\?\\"))if(B.c.i0(a,"UNC\\",4))a=B.c.nW(a,0,7,o) +else{a=B.c.b0(a,4) +if(a.length<3||a.charCodeAt(1)!==58||a.charCodeAt(2)!==92)throw A.d(A.ey(a,"path","Windows paths with \\\\?\\ prefix must be absolute"))}else a=A.cj(a,"/",o) +s=a.length +if(s>1&&a.charCodeAt(1)===58){A.cPg(a.charCodeAt(0),!0) +if(s===2||a.charCodeAt(2)!==92)throw A.d(A.ey(a,"path","Windows paths with drive letter must be absolute")) +r=A.a(a.split(o),t.s) +A.ak5(r,!0,1) +return A.fi(n,n,n,r,n,n,n,m)}if(B.c.aC(a,o))if(B.c.i0(a,o,1)){q=B.c.hj(a,o,2) +s=q<0 +p=s?B.c.b0(a,2):B.c.R(a,2,q) +r=A.a((s?"":B.c.b0(a,q+1)).split(o),t.s) +A.ak5(r,!0,0) +return A.fi(n,p,n,r,n,n,n,m)}else{r=A.a(a.split(o),t.s) +A.ak5(r,!0,0) +return A.fi(n,n,n,r,n,n,n,m)}else{r=A.a(a.split(o),t.s) +A.ak5(r,!0,0) +return A.fi(n,n,n,r,n,n,n,n)}}, +djI(a){var s +if(a.length===0)return B.wj +s=A.cPp(a) +s.aFV(s,A.cS6()) +return A.baw(s,t.N,t.yp)}, +Z_(a,b){if(a!=null&&a===A.cPh(b))return null +return a}, +cmg(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.YZ(a,b,"Missing end `]` to match `[` in host") +r=b+1 +q=A.djH(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.bu("") +if(r>>4]&1<<(o&15))!==0){if(p&&65<=o&&90>=o){if(q==null)q=new A.bu("") +if(r>>4]&1<<(o&15))!==0)A.YZ(a,s,"Invalid character") +else{if((o&64512)===55296&&s+1>>4]&1<<(q&15))!==0))A.YZ(a,s,"Illegal scheme character") +if(65<=q&&q<=90)r=!0}a=B.c.R(a,b,c) +return A.djF(r?a.toLowerCase():a)}, +djF(a){if(a==="http")return"http" +if(a==="file")return"file" +if(a==="https")return"https" +if(a==="package")return"package" +return a}, +cmo(a,b,c){if(a==null)return"" +return A.ak6(a,b,c,B.aKH,!1,!1)}, +cmh(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.O(d,new A.cmi(),A.X(d).h("O<1,f>")).bQ(0,"/")}else if(d!=null)throw A.d(A.aM("Both path and pathSegments specified",null)) +else s=A.ak6(a,b,c,B.I1,!0,!0) +if(s.length===0){if(r)return"/"}else if(q&&!B.c.aC(s,"/"))s="/"+s +return A.cPn(s,e,f)}, +cPn(a,b,c){var s=b.length===0 +if(s&&!c&&!B.c.aC(a,"/")&&!B.c.aC(a,"\\"))return A.cAp(a,!s||c) +return A.Bo(a)}, +cmj(a,b,c,d){if(a!=null){if(d!=null)throw A.d(A.aM("Both query and queryParameters specified",null)) +return A.ak6(a,b,c,B.lh,!0,!1)}if(d==null)return null +return A.djM(d)}, +djN(a){var s={},r=new A.bu("") +s.a="" +a.aE(0,new A.cmk(new A.cml(s,r))) +s=r.a +return s.charCodeAt(0)==0?s:s}, +cPk(a,b,c){if(a==null)return null +return A.ak6(a,b,c,B.lh,!0,!1)}, +cAo(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.csz(s) +p=A.csz(r) +if(q<0||p<0)return"%" +o=q*16+p +if(o<127&&(B.jb[B.d.b2(o,4)]&1<<(o&15))!==0)return A.cm(c&&65<=o&&90>=o?(o|32)>>>0:o) +if(s>=97||r>=97)return B.c.R(a,b,b+3).toUpperCase() +return null}, +cAn(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.d.mS(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.dp(s,0,null)}, +ak6(a,b,c,d,e,f){var s=A.cPm(a,b,c,d,e,f) +return s==null?B.c.R(a,b,c):s}, +cPm(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.cAo(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.I8[o>>>4]&1<<(o&15))!==0){A.YZ(a,r,"Invalid character") +m=i +n=m}else{if((o&64512)===55296){l=r+1 +if(l=2&&A.cPj(a.charCodeAt(0)))for(s=1;s127||(B.H3[r>>>4]&1<<(r&15))===0)break}return a}, +djQ(a,b){if(a.zt("package")&&a.c==null)return A.cRo(b,0,b.length) +return-1}, +cPq(a){var s,r,q,p=a.gzL(),o=p.length +if(o>0&&J.bn(p[0])===2&&J.cuY(p[0],1)===58){A.cPg(J.cuY(p[0],0),!1) +A.ak5(p,!1,1) +s=!0}else{A.ak5(p,!1,0) +s=!1}r=a.gXi()&&!s?""+"\\":"" +if(a.gCn()){q=a.gla(a) +if(q.length!==0)r=r+"\\"+q+"\\"}r=A.aFq(r,p,"\\") +o=s&&o===1?r+"\\":r +return o.charCodeAt(0)==0?o:o}, +djJ(){return A.a([],t.s)}, +cPp(a){var s,r,q,p,o,n=A.N(t.N,t.yp),m=new A.cmp(a,B.ai,n) +for(s=a.length,r=0,q=0,p=-1;r127)throw A.d(A.aM("Illegal percent encoding in URI",null)) +if(r===37){if(o+3>q)throw A.d(A.aM("Truncated URI",null)) +p.push(A.djK(a,o+1)) +o+=2}else if(e&&r===43)p.push(32) +else p.push(r)}}return d.hF(0,p)}, +cPj(a){var s=a|32 +return 97<=s&&s<=122}, +dg8(a){if(!a.zt("data"))throw A.d(A.ey(a,"uri","Scheme must be 'data'")) +if(a.gCn())throw A.d(A.ey(a,"uri","Data uri must not have authority")) +if(a.gGE())throw A.d(A.ey(a,"uri","Data uri must not have a fragment part")) +if(!a.gwm())return A.bNR(a.geh(a),0,a) +return A.bNR(a.k(0),5,a)}, +dgb(a,b,c,d,e){var s,r +if(!0)d.a=d.a +else{s=A.dga("") +if(s<0)throw A.d(A.ey("","mimeType","Invalid MIME type")) +r=d.a+=A.vb(B.L7,B.c.R("",0,s),B.ai,!1) +d.a=r+"/" +d.a+=A.vb(B.L7,B.c.b0("",s+1),B.ai,!1)}}, +dga(a){var s,r,q +for(s=a.length,r=-1,q=0;qb)throw A.d(A.bM(k,a,r)) +for(;p!==44;){j.push(r);++r +for(o=-1;r=0)j.push(o) +else{n=B.b.gP(j) +if(p!==44||r!==n+7||!B.c.i0(a,"base64",n+1))throw A.d(A.bM("Expecting '='",a,r)) +break}}j.push(r) +m=r+1 +if((j.length&1)===1)a=B.iD.bBw(0,a,m,s) +else{l=A.cPm(a,m,s,B.lh,!0,!1) +if(l!=null)a=B.c.nW(a,m,s,l)}return new A.aHf(a,j,c)}, +dg9(a,b,c){var s,r,q,p,o="0123456789ABCDEF" +for(s=b.length,r=0,q=0;q>>4]&1<<(p&15))!==0)c.a+=A.cm(p) +else{c.a+=A.cm(37) +c.a+=A.cm(o.charCodeAt(p>>>4)) +c.a+=A.cm(o.charCodeAt(p&15))}}if((r&4294967040)!==0)for(q=0;q255)throw A.d(A.ey(p,"non-byte value",null))}}, +dkJ(){var s,r,q,p,o,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~!$&'()*+,;=",m=".",l=":",k="/",j="\\",i="?",h="#",g="/\\",f=J.d1(22,t.E) +for(s=0;s<22;++s)f[s]=new Uint8Array(96) +r=new A.coG(f) +q=new A.coH() +p=new A.coI() +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}, +cRk(a,b,c,d,e){var s,r,q,p,o=$.d_F() +for(s=b;s95?31:q] +d=p&31 +e[p>>>5]=s}return d}, +cOZ(a){if(a.b===7&&B.c.aC(a.a,"package")&&a.c<=0)return A.cRo(a.a,a.e,a.f) +return-1}, +doe(a,b){return A.hi(b,t.N)}, +cRo(a,b,c){var s,r,q +for(s=b,r=0;s")) +s.a6q() +return s}, +dkE(a){if(t._q.b(a))return a +return new A.xa([],[]).yt(a,!0)}, +cRB(a,b){var s=$.at +if(s===B.bc)return a +return s.a7y(a,b)}, +cq:function cq(){}, +amG:function amG(){}, +amX:function amX(){}, +and:function and(){}, +a_l:function a_l(){}, +C2:function C2(){}, +vx:function vx(){}, +aq_:function aq_(){}, +fx:function fx(){}, +Qa:function Qa(){}, +bb3:function bb3(){}, +nY:function nY(){}, +tJ:function tJ(){}, +aq1:function aq1(){}, +aq2:function aq2(){}, +as5:function as5(){}, +yA:function yA(){}, +Il:function Il(){}, +a24:function a24(){}, +a25:function a25(){}, +a26:function a26(){}, +asX:function asX(){}, +cb:function cb(){}, +kf:function kf(){}, +bK:function bK(){}, +bi:function bi(){}, +n_:function n_(){}, +QW:function QW(){}, +atQ:function atQ(){}, +aun:function aun(){}, +o9:function o9(){}, +avi:function avi(){}, +Ji:function Ji(){}, +Jn:function Jn(){}, +Jo:function Jo(){}, +Jp:function Jp(){}, +Rz:function Rz(){}, +ax7:function ax7(){}, +Kn:function Kn(){}, +SH:function SH(){}, +azh:function azh(){}, +SP:function SP(){}, +azz:function azz(){}, +bsV:function bsV(a){this.a=a}, +bsW:function bsW(a){this.a=a}, +azA:function azA(){}, +bsX:function bsX(a){this.a=a}, +bsY:function bsY(a){this.a=a}, +oe:function oe(){}, +azB:function azB(){}, +dh:function dh(){}, +a6i:function a6i(){}, +ol:function ol(){}, +aBH:function aBH(){}, +qy:function qy(){}, +aDQ:function aDQ(){}, +bCG:function bCG(a){this.a=a}, +bCH:function bCH(a){this.a=a}, +aEb:function aEb(){}, +V0:function V0(){}, +oB:function oB(){}, +aF4:function aF4(){}, +oC:function oC(){}, +aFd:function aFd(){}, +oD:function oD(){}, +aFm:function aFm(){}, +bHV:function bHV(a){this.a=a}, +bHW:function bHW(a){this.a=a}, +mA:function mA(){}, +oL:function oL(){}, +mD:function mD(){}, +aGi:function aGi(){}, +aGj:function aGj(){}, +aGr:function aGr(){}, +oM:function oM(){}, +aGU:function aGU(){}, +aGW:function aGW(){}, +aHi:function aHi(){}, +aHz:function aHz(){}, +FX:function FX(){}, +bPe:function bPe(a){this.a=a}, +bPf:function bPf(a){this.a=a}, +x7:function x7(){}, +aMB:function aMB(){}, +aeh:function aeh(){}, +aPB:function aPB(){}, +agj:function agj(){}, +aX7:function aX7(){}, +aXn:function aXn(){}, +cwH:function cwH(a,b){this.a=a +this.$ti=b}, +NE:function NE(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +aeA:function aeA(a,b,c,d,e){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +bZh:function bZh(a){this.a=a}, +bZj:function bZj(a){this.a=a}, +cE:function cE(){}, +atW:function atW(a,b,c){var _=this +_.a=a +_.b=b +_.c=-1 +_.d=null +_.$ti=c}, +aME:function aME(){}, +aNL:function aNL(){}, +aNM:function aNM(){}, +aNN:function aNN(){}, +aNO:function aNO(){}, +aOQ:function aOQ(){}, +aOR:function aOR(){}, +aPW:function aPW(){}, +aPX:function aPX(){}, +aRM:function aRM(){}, +aRN:function aRN(){}, +aRO:function aRO(){}, +aRP:function aRP(){}, +aSf:function aSf(){}, +aSg:function aSg(){}, +aTc:function aTc(){}, +aTd:function aTd(){}, +aVO:function aVO(){}, +aiL:function aiL(){}, +aiM:function aiM(){}, +aX5:function aX5(){}, +aX6:function aX6(){}, +aXf:function aXf(){}, +aYj:function aYj(){}, +aYk:function aYk(){}, +ajz:function ajz(){}, +ajA:function ajA(){}, +aYK:function aYK(){}, +aYL:function aYL(){}, +b_s:function b_s(){}, +b_t:function b_t(){}, +b_I:function b_I(){}, +b_J:function b_J(){}, +b_Y:function b_Y(){}, +b_Z:function b_Z(){}, +b0P:function b0P(){}, +b0Q:function b0Q(){}, +b0R:function b0R(){}, +b0S:function b0S(){}, +cPR(a){var s,r,q +if(a==null)return a +if(typeof a=="string"||typeof a=="number"||A.lY(a))return a +if(A.cSY(a))return A.tl(a) +s=Array.isArray(a) +s.toString +if(s){r=[] +q=0 +while(!0){s=a.length +s.toString +if(!(q")),r=new A.ajc(s,b.h("ajc<0>")),q=t.I3 +A.qW(a,"success",new A.cow(a,r),!1,q) +A.qW(a,"error",r.gVD(),!1,q) +return s}, +daE(a,b,c){var s=A.lN(null,null,null,!0,c),r=t.I3 +A.qW(a,"error",s.gq4(),!1,r) +A.qW(a,"success",new A.bv4(a,s,!0),!1,r) +return new A.dI(s,A.z(s).h("dI<1>"))}, +a1t:function a1t(){}, +vC:function vC(){}, +I7:function I7(){}, +a47:function a47(){}, +cow:function cow(a,b){this.a=a +this.b=b}, +S_:function S_(){}, +a6w:function a6w(){}, +bv4:function bv4(a,b,c){this.a=a +this.b=b +this.c=c}, +FP:function FP(){}, +dhX(a,b){throw A.d(A.aq("File._exists"))}, +dhY(a,b){throw A.d(A.aq("File._lengthFromPath"))}, +cOA(){throw A.d(A.aq("_Namespace"))}, +diu(){throw A.d(A.aq("_Namespace"))}, +diZ(a){throw A.d(A.aq("RandomAccessFile"))}, +diV(){throw A.d(A.aq("Platform._operatingSystem"))}, +dbM(a,b){throw A.d(A.aq("Process.run"))}, +d8v(a,b){throw A.d(A.aq("InternetAddress._cloneWithNewHost"))}, +dc8(a,b,c){throw A.d(A.aq("RawSocket constructor"))}, +dd2(a){throw A.d(A.aq("SecureSocket constructor"))}, +dd5(){throw A.d(A.aq("default SecurityContext getter"))}, +djc(){throw A.d(A.aq("_SecureFilter._SecureFilter"))}, +dc9(a,b,c){throw A.d(A.aq("_newZLibInflateFilter"))}, +dib(a,b){throw A.d(A.aq("_IOService._dispatch"))}, +GG(a,b,c){var s +if(t.Dn.b(a)&&!J.q(J.aS(a,0),0)){s=J.ao(a) +switch(s.i(a,0)){case 1:throw A.d(A.aM(b+": "+c,null)) +case 2:throw A.d(A.d6X(new A.zC(A.ax(s.i(a,2)),A.bZ(s.i(a,1))),b,c)) +case 3:throw A.d(A.cIc("File closed",c,null)) +default:throw A.d(A.pV("Unknown error"))}}}, +cQ4(a,b,c){var s,r +if(t.E.b(a)&&a.buffer.byteLength===a.length)return new A.aLF(a,b) +s=c-b +r=new Uint8Array(s) +B.p.dS(r,0,s,a,b) +return new A.aLF(r,0)}, +dh5(a,b,c){A.cRy(c) +return new A.aK2(c,a,!1)}, +cRy(a){if(8>a||15a||9s)return B.c.R(a,0,r+1) +else if(s>-1)return B.c.R(a,0,s+1) +else return"."}, +cIP(){var s=$.at.i(0,$.cZS()) +return s==null?null:s}, +diW(){return A.diV()}, +dd3(a,b,c){var s=null +return A.dc6(a,b,s,s,c,s,s).bf(new A.bE8(),t.TB)}, +dc6(a,b,c,d,e,f,g){A.cON(a,b,!1,!1) +return A.dc8(a,b,g).bf(new A.bzO(c,e,d,f),t.o2)}, +dc7(a,b,c,d,e,f,g){var s,r,q +a.sad5(!1) +a.saGZ(!1) +if(!(c!=null)){s=a.gbmo() +c=s.gla(s)}s=a.gwH(a) +A.cON(c,s,!1,!1) +r=a.gbmo() +r=A.d8v(r,c) +q=A.dd5() +return A.dj_(r,s,!1,q,a,f,null,!1,!1,e,d,g).b.a}, +dj_(a,b,c,d,e,f,g,h,i,j,k,l){var s=$.at +s=new A.NZ(e,new A.aI(new A.ak(s,t.Zg),t.n0),A.lN(null,null,null,!0,t.TK),g,a,!1,d,!1,!1,j,k,new A.aI(new A.ak(s,t.T2),t.Bg),new A.aP_(),A.djc()) +s.aVq(a,b,!1,d,e,f,g,!1,!1,j,k,l) +return s}, +cON(a,b,c,d){A.a5(b,"requestedPort") +if(b>65535)throw A.d(A.aM("requestedPort is not in the range 0..65535",null)) +A.a5(!1,"requestClientCertificate") +A.a5(!1,"requireClientCertificate")}, +d7E(a){return new A.a3O("HandshakeException",a,null)}, +dd4(a){return new Uint8Array(0)}, +zC:function zC(a,b){this.a=a +this.b=b}, +aLF:function aLF(a,b){this.a=a +this.b=b}, +aK1:function aK1(a){this.b=a}, +aK2:function aK2(a,b,c){this.a=a +this.b=b +this.c=c}, +bTf:function bTf(a){this.a=a}, +cnN:function cnN(a,b){var _=this +_.a=a +_.b=b +_.c=!1 +_.d=!0}, +c0c:function c0c(){}, +Xf:function Xf(a,b){this.a=a +this.b=b}, +bXO:function bXO(a){this.a=a}, +bXM:function bXM(a){this.a=a}, +bXL:function bXL(a){this.a=a}, +bXN:function bXN(a){this.a=a}, +IT:function IT(a){this.a=a}, +n0:function n0(a,b,c){this.a=a +this.b=b +this.c=c}, +a6P:function a6P(a,b,c){this.a=a +this.b=b +this.c=c}, +a6Q:function a6Q(a,b,c){this.a=a +this.b=b +this.c=c}, +a6S:function a6S(a,b,c){this.a=a +this.b=b +this.c=c}, +aOS:function aOS(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=null +_.d=b +_.e=c +_.f=d +_.r=!1 +_.w=!0 +_.y=_.x=!1}, +c_F:function c_F(a){this.a=a}, +c_y:function c_y(a){this.a=a}, +c_z:function c_z(a){this.a=a}, +c_A:function c_A(a){this.a=a}, +c_D:function c_D(a){this.a=a}, +c_B:function c_B(a,b){this.a=a +this.b=b}, +c_C:function c_C(a){this.a=a}, +c_E:function c_E(a){this.a=a}, +aeF:function aeF(a,b){this.a=a +this.b=b}, +c_I:function c_I(a){this.a=a}, +c_H:function c_H(a){this.a=a}, +c_O:function c_O(){}, +c_P:function c_P(a,b,c){this.a=a +this.b=b +this.c=c}, +c_Q:function c_Q(a,b,c){this.a=a +this.b=b +this.c=c}, +c_L:function c_L(){}, +c_M:function c_M(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c_N:function c_N(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c_K:function c_K(a,b){this.a=a +this.b=b}, +c_J:function c_J(a,b,c){this.a=a +this.b=b +this.c=c}, +c_S:function c_S(a,b,c){this.a=a +this.b=b +this.c=c}, +c_R:function c_R(a,b,c){this.a=a +this.b=b +this.c=c}, +NY:function NY(a,b){var _=this +_.a=a +_.b=!1 +_.c=$ +_.d=b +_.e=!1}, +cb9:function cb9(a){this.a=a}, +cbc:function cbc(a){this.a=a}, +cbb:function cbb(a,b,c){this.a=a +this.b=b +this.c=c}, +cbe:function cbe(a,b,c){this.a=a +this.b=b +this.c=c}, +cbd:function cbd(a){this.a=a}, +cba:function cba(a){this.a=a}, +a33:function a33(a){this.a=a}, +bi1:function bi1(){}, +bE8:function bE8(){}, +bzO:function bzO(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aP_:function aP_(){var _=this +_.a=!1 +_.c=_.b=!0 +_.r=_.f=_.e=_.d=!1}, +NZ:function NZ(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.a=a +_.b=b +_.c=c +_.d=$ +_.e=d +_.f=0 +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=null +_.ax=201 +_.ch=_.ay=!0 +_.CW=0 +_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fr=l +_.fx=m +_.fy=!0 +_.id=_.go=!1 +_.k1=n}, +cbr:function cbr(a){this.a=a}, +aGN:function aGN(){}, +a3O:function a3O(a,b,c){this.a=a +this.b=b +this.c=c}, +a9V:function a9V(){}, +rU:function rU(a){this.a=a}, +aFK:function aFK(){}, +dkj(a,b,c,d){var s,r +if(b){s=[c] +B.b.L(s,d) +d=s}r=t.z +return A.cAx(A.cIw(a,A.ew(J.dP(d,A.dtj(),r),!0,r),null))}, +d8I(a,b,c){var s=null +if(a<0||a>c)throw A.d(A.e9(a,0,c,s,s)) +if(bc)throw A.d(A.e9(b,a,c,s,s))}, +cAA(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}, +cQx(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b] +return null}, +cAx(a){if(a==null||typeof a=="string"||typeof a=="number"||A.lY(a))return a +if(a instanceof A.zb)return a.a +if(A.cSW(a))return a +if(t.e2.b(a))return a +if(a instanceof A.am)return A.mp(a) +if(t._8.b(a))return A.cQw(a,"$dart_jsFunction",new A.coD()) +return A.cQw(a,"_$dart_jsObject",new A.coE($.cDp()))}, +cQw(a,b,c){var s=A.cQx(a,b) +if(s==null){s=c.$1(a) +A.cAA(a,b,s)}return s}, +cAw(a){if(a==null||typeof a=="string"||typeof a=="number"||typeof a=="boolean")return a +else if(a instanceof Object&&A.cSW(a))return a +else if(a instanceof Object&&t.e2.b(a))return a +else if(a instanceof Date)return A.vF(a.getTime(),!1) +else if(a.constructor===$.cDp())return a.o +else return A.cRz(a)}, +cRz(a){if(typeof a=="function")return A.cAL(a,$.b2x(),new A.cr_()) +if(a instanceof Array)return A.cAL(a,$.cD9(),new A.cr0()) +return A.cAL(a,$.cD9(),new A.cr1())}, +cAL(a,b,c){var s=A.cQx(a,b) +if(s==null||!(a instanceof Object)){s=c.$1(a) +A.cAA(a,b,s)}return s}, +coD:function coD(){}, +coE:function coE(a){this.a=a}, +cr_:function cr_(){}, +cr0:function cr0(){}, +cr1:function cr1(){}, +zb:function zb(a){this.a=a}, +a4F:function a4F(a){this.a=a}, +JI:function JI(a,b){this.a=a +this.$ti=b}, +XF:function XF(){}, +dkC(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.dkk,a) +s[$.b2x()]=a +a.$dart_jsFunction=s +return s}, +dkk(a,b){return A.cIw(a,b,null)}, +cQ(a){if(typeof a=="function")return a +else return A.dkC(a)}, +cQY(a){return a==null||A.lY(a)||typeof a=="number"||typeof a=="string"||t.pT.b(a)||t.E.b(a)||t.W2.b(a)||t.JZ.b(a)||t.w7.b(a)||t.XO.b(a)||t.Ha.b(a)||t.s4.b(a)||t.OE.b(a)||t.pI.b(a)||t.V4.b(a)}, +bH(a){if(A.cQY(a))return a +return new A.csM(new A.Gc(t.Fy)).$1(a)}, +aj(a,b){return a[b]}, +alK(a,b){return a[b]}, +dvL(a,b,c){return a[b]=c}, +L(a,b,c){return a[b].apply(a,c)}, +dkl(a,b){return a[b]()}, +cof(a,b,c){return a[b](c)}, +oY(a,b){var s,r +if(b instanceof Array)switch(b.length){case 0:return new a() +case 1:return new a(b[0]) +case 2:return new a(b[0],b[1]) +case 3:return new a(b[0],b[1],b[2]) +case 4:return new a(b[0],b[1],b[2],b[3])}s=[null] +B.b.L(s,b) +r=a.bind.apply(a,s) +String(r) +return new r()}, +cPG(a){return new a()}, +kA(a,b){var s=new A.ak($.at,b.h("ak<0>")),r=new A.aI(s,b.h("aI<0>")) +a.then(A.vc(new A.ctk(r),1),A.vc(new A.ctl(r),1)) +return s}, +cQX(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}, +cBk(a){if(A.cQX(a))return a +return new A.crC(new A.Gc(t.Fy)).$1(a)}, +csM:function csM(a){this.a=a}, +ctk:function ctk(a){this.a=a}, +ctl:function ctl(a){this.a=a}, +crC:function crC(a){this.a=a}, +aAd:function aAd(a){this.a=a}, +cTe(a,b){return Math.min(a,b)}, +csW(a,b){return Math.max(a,b)}, +cU5(a){return Math.sqrt(a)}, +cSs(a){return Math.exp(a)}, +am0(a){return Math.log(a)}, +to(a,b){return Math.pow(a,b)}, +dc_(a){var s +if(a==null)s=B.ex +else{s=new A.aU3() +s.ahZ(a)}return s}, +cLh(){return $.cun()}, +c33:function c33(){}, +aU3:function aU3(){this.b=this.a=0}, +c34:function c34(a){this.a=a}, +qj:function qj(){}, +awR:function awR(){}, +qr:function qr(){}, +aAg:function aAg(){}, +aBI:function aBI(){}, +aFr:function aFr(){}, +qQ:function qQ(){}, +aGZ:function aGZ(){}, +aQL:function aQL(){}, +aQM:function aQM(){}, +aSu:function aSu(){}, +aSv:function aSv(){}, +aXj:function aXj(){}, +aXk:function aXk(){}, +aYR:function aYR(){}, +aYS:function aYS(){}, +d2o(a,b,c){return A.fe(a,b,c)}, +b7q(a){var s=a.BYTES_PER_ELEMENT,r=A.dM(0,null,B.d.hf(a.byteLength,s),null,null) +return A.fe(a.buffer,a.byteOffset+0*s,(r-0)*s)}, +abF(a,b,c){var s=J.d0U(a) +c=A.dM(b,c,B.d.hf(a.byteLength,s),null,null) +return A.dF(a.buffer,a.byteOffset+b*s,(c-b)*s)}, +atp:function atp(){}, +og(a,b,c){if(b==null)if(a==null)return null +else return a.X(0,1-c) +else if(a==null)return b.X(0,c) +else return new A.j(A.xA(a.a,b.a,c),A.xA(a.b,b.b,c))}, +ddC(a,b){return new A.V(a,b)}, +a9L(a,b,c){if(b==null)if(a==null)return null +else return a.X(0,1-c) +else if(a==null)return b.X(0,c) +else return new A.V(A.xA(a.a,b.a,c),A.xA(a.b,b.b,c))}, +jQ(a,b){var s=a.a,r=b*2/2,q=a.b +return new A.W(s-r,q-r,s+r,q+r)}, +oq(a,b,c){var s=a.a,r=c/2,q=a.b,p=b/2 +return new A.W(s-r,q-p,s+r,q+p)}, +lG(a,b){var s=a.a,r=b.a,q=a.b,p=b.b +return new A.W(Math.min(s,r),Math.min(q,p),Math.max(s,r),Math.max(q,p))}, +U6(a,b,c){var s,r,q,p,o +if(b==null)if(a==null)return null +else{s=1-c +return new A.W(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.W(r*c,q*c,p*c,o*c) +else return new A.W(A.xA(a.a,r,c),A.xA(a.b,q,c),A.xA(a.c,p,c),A.xA(a.d,o,c))}}, +a7x(a,b,c){var s,r,q +if(b==null)if(a==null)return null +else{s=1-c +return new A.bb(a.a*s,a.b*s)}else{r=b.a +q=b.b +if(a==null)return new A.bb(r*c,q*c) +else return new A.bb(A.xA(a.a,r,c),A.xA(a.b,q,c))}}, +cyD(a,b,c,d,e,f){return new A.qA(a,b,c,d,e,f,e,f,e,f,e,f,e===f)}, +cyC(a,b,c,d,e){var s=e.a,r=e.b +return new A.qA(a,b,c,d,s,r,s,r,s,r,s,r,s===r)}, +jq(a,b){var s=b.a,r=b.b +return new A.qA(a.a,a.b,a.c,a.d,s,r,s,r,s,r,s,r,s===r)}, +qB(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.qA(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)}, +TX(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.qA(a.a,a.b,a.c,a.d,s,r,q,p,m,l,o,n,k)}, +av(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}, +xA(a,b,c){return a*(1-c)+b*c}, +cpC(a,b,c){return a*(1-c)+b*c}, +Z(a,b,c){if(ac)return c +if(isNaN(a))return c +return a}, +cRi(a,b){return A.Y(A.GK(B.e.aF((a.gj(a)>>>24&255)*b),0,255),a.gj(a)>>>16&255,a.gj(a)>>>8&255,a.gj(a)&255)}, +cFU(a){return new A.v(a>>>0)}, +Y(a,b,c,d){return new A.v(((a&255)<<24|(b&255)<<16|(c&255)<<8|d&255)>>>0)}, +b9L(a,b,c,d){return new A.v(((B.e.aD(d*255,1)&255)<<24|(a&255)<<16|(b&255)<<8|c&255)>>>0)}, +cvL(a){if(a<=0.03928)return a/12.92 +return Math.pow((a+0.055)/1.055,2.4)}, +ai(a,b,c){if(b==null)if(a==null)return null +else return A.cRi(a,1-c) +else if(a==null)return A.cRi(b,c) +else return A.Y(A.GK(B.e.au(A.cpC(a.gj(a)>>>24&255,b.gj(b)>>>24&255,c)),0,255),A.GK(B.e.au(A.cpC(a.gj(a)>>>16&255,b.gj(b)>>>16&255,c)),0,255),A.GK(B.e.au(A.cpC(a.gj(a)>>>8&255,b.gj(b)>>>8&255,c)),0,255),A.GK(B.e.au(A.cpC(a.gj(a)&255,b.gj(b)&255,c)),0,255))}, +PO(a,b){var s,r,q,p=a.gj(a)>>>24&255 +if(p===0)return b +s=255-p +r=b.gj(b)>>>24&255 +if(r===255)return A.Y(255,B.d.aD(p*(a.gj(a)>>>16&255)+s*(b.gj(b)>>>16&255),255),B.d.aD(p*(a.gj(a)>>>8&255)+s*(b.gj(b)>>>8&255),255),B.d.aD(p*(a.gj(a)&255)+s*(b.gj(b)&255),255)) +else{r=B.d.aD(r*s,255) +q=p+r +return A.Y(q,B.d.hf((a.gj(a)>>>16&255)*p+(b.gj(b)>>>16&255)*r,q),B.d.hf((a.gj(a)>>>8&255)*p+(b.gj(b)>>>8&255)*r,q),B.d.hf((a.gj(a)&255)*p+(b.gj(b)&255)*r,q))}}, +cKB(){return $.ar().aP()}, +auY(a,b,c,d,e,f){return $.ar().ay_(0,a,b,c,d,e,null)}, +d7C(a,b,c,d,e,f,g){var s,r +if(c.length!==d.length)A.C(A.aM('"colors" and "colorStops" arguments must have equal length.',null)) +s=f!=null?A.Zq(f):null +if(g!=null)r=g.l(0,a)&&!0 +else r=!0 +if(r)return $.ar().ay4(0,a,b,c,d,e,s) +else return $.ar().axV(g,0,a,b,c,d,e,s)}, +cIS(a,b){return $.ar().ay0(a,b)}, +alZ(a,b){return A.dt_(a,b)}, +dt_(a,b){var s=0,r=A.p(t.hP),q,p=2,o,n=[],m,l,k,j,i,h,g,f +var $async$alZ=A.l(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=$.ar() +g=a.a +g.toString +q=h.abh(g) +s=1 +break +s=4 +break +case 5:h=$.ar() +g=a.a +g.toString +s=6 +return A.i(h.abh(g),$async$alZ) +case 6:m=d +p=7 +s=10 +return A.i(m.nY(),$async$alZ) +case 10:l=d +try{g=J.b2U(l) +k=g.geP(g) +g=J.b2U(l) +j=g.gdK(g) +i=b.$2(k,j) +g=a.a +g.toString +f=i.a +f=h.rG(g,!1,i.b,f) +q=f +n=[1] +s=8 +break}finally{J.b2U(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.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$alZ,r)}, +drc(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i=null,h=A.aF("swapRedBlue") +switch(e.a){case 1:h.b=!0 +break +case 0:h.b=!1 +break +case 2:throw A.d(A.bT("RGB conversion from rgbaFloat32 data is not implemented"))}s=b*c +r=122+s*4 +q=new DataView(new ArrayBuffer(r)) +q.setUint16(0,16973,!1) +q.setUint32(2,r,!0) +q.setUint32(10,122,!0) +q.setUint32(14,108,!0) +q.setUint32(18,b,!0) +q.setUint32(22,c,!0) +q.setUint16(26,1,!0) +q.setUint16(28,32,!0) +q.setUint32(30,3,!0) +q.setUint32(34,s,!0) +q.setUint32(38,b,!0) +q.setUint32(42,c,!0) +q.setUint32(46,0,!0) +q.setUint32(50,0,!0) +q.setUint32(54,h.aX()?16711680:255,!0) +q.setUint32(58,65280,!0) +q.setUint32(62,h.aX()?255:16711680,!0) +q.setUint32(66,4278190080,!0) +p=a.BYTES_PER_ELEMENT +o=(A.dM(0,i,B.d.hf(a.byteLength,p),i,i)-0)*p +if(B.d.M(o,4)!==0)A.C(A.aM("The number of bytes to view must be a multiple of 4",i)) +n=A.daq(a.buffer,a.byteOffset+0*p,B.d.aD(o,4)) +for(m=c-1,l=122;m>=0;--m){k=m*d +for(j=0;j0?a*0.57735+0.5:0}, +ddm(a,b,c){var s,r,q=A.ai(a.a,b.a,c) +q.toString +s=A.og(a.b,b.b,c) +s.toString +r=A.xA(a.c,b.c,c) +return new A.Fg(q,s,r)}, +ddn(a,b,c){var s,r,q,p=a==null +if(p&&b==null)return null +if(p)a=A.a([],t.b6) +if(b==null)b=A.a([],t.b6) +s=A.a([],t.b6) +r=Math.min(a.length,b.length) +for(q=0;q") +r=A.R(new A.b1(q,new A.cp7(b),p),!0,p.h("B.E"))}if(!o){o=A.R(r,!0,s) +s=A.X(o).h("b1<1>") +r=A.R(new A.b1(o,new A.cp8(c),s),!0,s.h("B.E"))}return r}, +cQN(a,b){return a}, +bFz:function bFz(){}, +bFL:function bFL(){}, +bFM:function bFM(){}, +cp7:function cp7(a){this.a=a}, +cp8:function cp8(a){this.a=a}, +bKs:function bKs(){}, +cFz(a,b,c,d,e,f,g){var s=null +return new A.a09(new A.yc(s,e,s,a,s,s,s,B.Em),e,f,b,d,g,c,s)}, +a09:function a09(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.e=b +_.w=c +_.y=d +_.CW=e +_.cy=f +_.fy=g +_.a=h}, +b80:function b80(){}, +yc:function yc(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h}, +b7V:function b7V(a,b){this.a=a +this.b=b}, +b7W:function b7W(){}, +b7X:function b7X(a){this.a=a}, +b7T:function b7T(a){this.a=a}, +b7Y:function b7Y(a,b){this.a=a +this.b=b}, +b7Z:function b7Z(){}, +b8_:function b8_(a){this.a=a}, +b7U:function b7U(a){this.a=a}, +cKa(a,b,c,d){var s=new A.azQ(d,c,A.a([],t.XZ),A.a([],t.SM),A.a([],t.qj)) +s.aUY(a,b,c,d) +return s}, +azQ:function azQ(a,b,c,d,e){var _=this +_.Q=_.z=null +_.as=a +_.at=b +_.ch=_.ay=_.ax=null +_.CW=0 +_.cy=_.cx=null +_.dy=_.dx=_.db=!1 +_.fr=0 +_.a=c +_.b=d +_.e=_.d=_.c=null +_.r=_.f=!1 +_.w=0 +_.x=!1 +_.y=e}, +btL:function btL(a){this.a=a}, +btM:function btM(a,b){this.a=a +this.b=b}, +btN:function btN(a,b){this.a=a +this.b=b}, +c7x:function c7x(a,b){this.a=a +this.b=b}, +bmU:function bmU(a,b){this.a=a +this.b=b}, +avR:function avR(){}, +bmE:function bmE(a){this.a=a}, +bmF:function bmF(a){this.a=a}, +bmD:function bmD(a){this.a=a}, +bmC:function bmC(a){this.a=a}, +b8n:function b8n(a){this.a=a}, +d2z(a,b,c,d,e,f,g){return new A.b8o(e,g,d,a,c,b,!1)}, +a0e:function a0e(a,b){this.a=a +this.b=b}, +b8K:function b8K(a,b){this.a=a +this.b=b}, +b8o:function b8o(a,b,c,d,e,f,g){var _=this +_.a=a +_.c=b +_.e=c +_.w=d +_.x=e +_.z=f +_.fx=g}, +d2A(a,b,c){var s=$.at +return new A.a0f(c,a,new A.b8n(new A.aI(new A.ak(s,t.wC),t.Ye)),b,null)}, +a0f:function a0f(a,b,c,d,e){var _=this +_.c=a +_.f=b +_.r=c +_.w=d +_.a=e}, +aoD:function aoD(a,b,c,d,e){var _=this +_.d=a +_.r=_.f=_.e=null +_.w=b +_.eH$=c +_.b5$=d +_.a=null +_.b=e +_.c=null}, +b8A:function b8A(a){this.a=a}, +b8z:function b8z(a,b){this.a=a +this.b=b}, +b8x:function b8x(){}, +b8y:function b8y(a){this.a=a}, +b8s:function b8s(a){this.a=a}, +b8t:function b8t(a){this.a=a}, +b8u:function b8u(a){this.a=a}, +b8v:function b8v(a){this.a=a}, +b8w:function b8w(a){this.a=a}, +b8r:function b8r(a){this.a=a}, +b8q:function b8q(a){this.a=a}, +b8p:function b8p(a,b){this.a=a +this.b=b}, +xm:function xm(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.id=_.go=$ +_.k3=_.k2=_.k1=null +_.k4=$ +_.ok=!1 +_.p1=e +_.p2=f +_.f=g +_.r=h +_.w=null +_.a=i +_.b=null +_.c=j +_.d=k +_.e=l}, +adj:function adj(){}, +b8B:function b8B(){this.b=null +this.c=1e4 +this.d=0}, +bIh(a,b){var s,r=a.length +A.dM(b,null,r,"startIndex","endIndex") +s=A.duW(a,0,r,b) +return new A.Vl(a,s,b!==s?A.dtG(a,0,r,b):b)}, +dlr(a,b,c,d,e){var s,r,q,p +if(b===c)return B.c.nW(a,b,b,e) +s=B.c.R(a,0,b) +r=new A.tz(a,c,b,176) +for(q=e;p=r.pw(),p>=0;q=d,b=p)s=s+q+B.c.R(a,b,p) +s=s+e+B.c.b0(a,c) +return s.charCodeAt(0)==0?s:s}, +dmk(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.cBF(a,c,d,r)&&A.cBF(a,c,d,r+p))return r +c=r+1}return-1}return A.dlR(a,b,c,d)}, +dlR(a,b,c,d){var s,r,q,p=new A.tz(a,d,c,0) +for(s=b.length;r=p.pw(),r>=0;){q=r+s +if(q>d)break +if(B.c.i0(a,b,r)&&A.cBF(a,c,d,q))return r}return-1}, +iY:function iY(a){this.a=a}, +Vl:function Vl(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +csQ(a,b,c,d){if(d===208)return A.cT8(a,b,c) +if(d===224){if(A.cT7(a,b,c)>=0)return 145 +return 64}throw A.d(A.a0("Unexpected state: "+B.d.k9(d,16)))}, +cT8(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.xE(o,p)!==6)break +r^=1}if(r===0)return 193 +else return 144}, +cT7(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.Or(r) +else{if(s>b){--s +p=a.charCodeAt(s) +o=(p&64512)===55296}else{p=0 +o=!1}if(o)q=A.xE(p,r) +else break}if(q===7)return s +if(q!==4)break}return-1}, +cBF(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.xE(s,n)}else return(q&64512)!==55296 +if((q&64512)!==56320){m=A.Or(q) +d=r}else{d-=2 +if(b<=d){l=a.charCodeAt(d) +if((l&64512)!==55296)return!0 +m=A.xE(l,q)}else return!0}k=j.charCodeAt(j.charCodeAt(p|176)&240|m) +return((k>=208?A.csQ(a,b,d,k):k)&1)===0}return b!==c}, +duW(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.Or(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.xE(n,r) +s=o}else q=2}else q=2 +if(q===6)m=A.cT8(a,b,s)!==144?160:48 +else{l=q===1 +if(l||q===4)if(A.cT7(a,b,s)>=0)m=l?144:128 +else m=48 +else m=u.S.charCodeAt(q|176)}return new A.tz(a,a.length,d,m).pw()}, +tz:function tz(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a_u:function a_u(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cvi(a,b){return new A.a__(b,a,null)}, +a__:function a__(a,b,c){this.d=a +this.e=b +this.a=c}, +an3:function an3(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +acC:function acC(){}, +cvA(a,b,c,d,e,f){return new A.aoJ(a,b,f,d,c,e,null)}, +aoJ:function aoJ(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +cFG(a,b){return new A.a0j(b,a,null)}, +a0i:function a0i(a,b){this.c=a +this.a=b}, +a0k:function a0k(a){var _=this +_.d=!1 +_.e=$ +_.a=null +_.b=a +_.c=null}, +b9b:function b9b(){}, +b98:function b98(a,b,c){this.a=a +this.b=b +this.c=c}, +b99:function b99(){}, +b9a:function b9a(a,b){this.a=a +this.b=b}, +Cf:function Cf(a,b,c,d,e,f){var _=this +_.r=a +_.x=b +_.Q=c +_.at=d +_.dy=e +_.ry=!1 +_.k2$=0 +_.k3$=f +_.ok$=_.k4$=0 +_.p1$=!1}, +a0j:function a0j(a,b,c){this.f=a +this.b=b +this.a=c}, +cvB(a,b,c,d){var s,r,q=$.ar(),p=q.aP() +p.sa6(0,d) +s=q.aP() +s.sa6(0,b) +r=q.aP() +r.sa6(0,c) +q=q.aP() +q.sa6(0,a) +return new A.b97(p,s,r,q)}, +b97:function b97(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a1c:function a1c(a){this.a=a}, +adP:function adP(a,b,c){var _=this +_.e=_.d=$ +_.y=_.x=_.r=_.f=null +_.z=!1 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=1 +_.ch=$ +_.CW=null +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bWj:function bWj(a){this.a=a}, +bWi:function bWi(a){this.a=a}, +bVX:function bVX(a){this.a=a}, +bVW:function bVW(a){this.a=a}, +bVY:function bVY(a,b){this.a=a +this.b=b}, +bW4:function bW4(a,b){this.a=a +this.b=b}, +bW3:function bW3(a){this.a=a}, +bW5:function bW5(a){this.a=a}, +bW7:function bW7(a){this.a=a}, +bW6:function bW6(a){this.a=a}, +bWa:function bWa(a){this.a=a}, +bW9:function bW9(a){this.a=a}, +bW8:function bW8(a){this.a=a}, +bW0:function bW0(a){this.a=a}, +bW_:function bW_(a){this.a=a}, +bW2:function bW2(a){this.a=a}, +bW1:function bW1(a){this.a=a}, +bVZ:function bVZ(a){this.a=a}, +bWc:function bWc(a,b){this.a=a +this.b=b}, +bWb:function bWb(a){this.a=a}, +bWd:function bWd(a){this.a=a}, +bWe:function bWe(a){this.a=a}, +bWg:function bWg(a){this.a=a}, +bWf:function bWf(a){this.a=a}, +bWh:function bWh(a){this.a=a}, +Y9:function Y9(a,b,c){this.c=a +this.d=b +this.a=c}, +c9K:function c9K(a,b,c){this.a=a +this.b=b +this.c=c}, +c9J:function c9J(a,b){this.a=a +this.b=b}, +akO:function akO(){}, +arW:function arW(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +amN:function amN(a){this.a=a}, +a5p:function a5p(a){this.a=a}, +afR:function afR(a,b,c){var _=this +_.e=_.d=$ +_.w=_.r=_.f=null +_.x=$ +_.y=!1 +_.z=null +_.as=_.Q=!1 +_.at=null +_.ax=!1 +_.CW=$ +_.cx=null +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +c58:function c58(a){this.a=a}, +c57:function c57(a){this.a=a}, +c4P:function c4P(a){this.a=a}, +c4Q:function c4Q(a,b){this.a=a +this.b=b}, +c4O:function c4O(a,b){this.a=a +this.b=b}, +c4N:function c4N(a,b){this.a=a +this.b=b}, +c4M:function c4M(a){this.a=a}, +c4K:function c4K(a){this.a=a}, +c4L:function c4L(a){this.a=a}, +c51:function c51(a){this.a=a}, +c4W:function c4W(a){this.a=a}, +c4Y:function c4Y(a){this.a=a}, +c4X:function c4X(a){this.a=a}, +c50:function c50(a){this.a=a}, +c5_:function c5_(a){this.a=a}, +c4Z:function c4Z(a){this.a=a}, +c53:function c53(a,b){this.a=a +this.b=b}, +c52:function c52(a){this.a=a}, +c55:function c55(a){this.a=a}, +c54:function c54(a){this.a=a}, +c56:function c56(a){this.a=a}, +c4U:function c4U(a){this.a=a}, +c4R:function c4R(a){this.a=a}, +c4V:function c4V(a){this.a=a}, +c4T:function c4T(a){this.a=a}, +c4S:function c4S(a){this.a=a}, +al5:function al5(){}, +a5q:function a5q(a){this.a=a}, +afS:function afS(a,b,c){var _=this +_.e=_.d=$ +_.w=_.r=_.f=null +_.x=$ +_.y=!1 +_.z=null +_.as=_.Q=!1 +_.at=null +_.ax=!1 +_.CW=$ +_.cx=null +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +c5y:function c5y(a){this.a=a}, +c5x:function c5x(a){this.a=a}, +c5e:function c5e(a){this.a=a}, +c5f:function c5f(a,b){this.a=a +this.b=b}, +c5d:function c5d(a,b){this.a=a +this.b=b}, +c5b:function c5b(a){this.a=a}, +c59:function c59(a){this.a=a}, +c5a:function c5a(a){this.a=a}, +c5r:function c5r(a){this.a=a}, +c5c:function c5c(a,b){this.a=a +this.b=b}, +c5l:function c5l(a){this.a=a}, +c5n:function c5n(a){this.a=a}, +c5m:function c5m(a){this.a=a}, +c5p:function c5p(a){this.a=a}, +c5q:function c5q(a){this.a=a}, +c5o:function c5o(a){this.a=a}, +c5s:function c5s(a){this.a=a}, +c5t:function c5t(a){this.a=a}, +c5v:function c5v(a){this.a=a}, +c5u:function c5u(a){this.a=a}, +c5w:function c5w(a){this.a=a}, +c5j:function c5j(a){this.a=a}, +c5g:function c5g(a){this.a=a}, +c5k:function c5k(a){this.a=a}, +c5i:function c5i(a){this.a=a}, +c5h:function c5h(a){this.a=a}, +al6:function al6(){}, +cJP(a,b,c,d,e){return new A.aza(a,b,d,c,e,null)}, +aza:function aza(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.a=f}, +Ep:function Ep(a,b,c){this.c=a +this.d=b +this.a=c}, +aSF:function aSF(a){this.a=null +this.b=a +this.c=null}, +c8J:function c8J(a){this.a=a}, +c8K:function c8K(a){this.a=a}, +L3:function L3(a,b,c){this.c=a +this.d=b +this.a=c}, +bxM:function bxM(a,b){this.a=a +this.b=b}, +bxL:function bxL(a,b){this.a=a +this.b=b}, +KG:function KG(a,b,c){this.a=a +this.b=b +this.c=c}, +EG:function EG(a,b){var _=this +_.a=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +TA:function TA(a){this.a=a}, +bxQ:function bxQ(){}, +bxN:function bxN(){}, +bxO:function bxO(a){this.a=a}, +bxP:function bxP(){}, +bxR:function bxR(a,b,c){this.a=a +this.b=b +this.c=c}, +cNG(a,b,c,d,e,f,g,h){return new A.ac_(a,c,g,f,h,b,e,!0,null)}, +cLv(a,b,c){var s=a.gai() +s.toString +t.x.a(s) +return new A.aU(B.e.aF(b.a*B.e.dV(s.hZ(c).a/s.gu(0).a,0,1)))}, +ac_:function ac_(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}, +akc:function akc(a){var _=this +_.d=!1 +_.a=_.e=null +_.b=a +_.c=null}, +cmX:function cmX(){}, +cmU:function cmU(a){this.a=a}, +cmV:function cmV(a){this.a=a}, +cmT:function cmT(a){this.a=a}, +cmW:function cmW(a){this.a=a}, +aFl:function aFl(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aTR:function aTR(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +apq:function apq(){}, +e7:function e7(){}, +b89:function b89(a){this.a=a}, +b8a:function b8a(a){this.a=a}, +b8b:function b8b(a,b){this.a=a +this.b=b}, +b8c:function b8c(a){this.a=a}, +b8d:function b8d(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b8e:function b8e(a,b,c){this.a=a +this.b=b +this.c=c}, +b8f:function b8f(a){this.a=a}, +a1E:function a1E(a){this.$ti=a}, +RV:function RV(a,b){this.a=a +this.$ti=b}, +kk:function kk(a,b){this.a=a +this.$ti=b}, +Gz:function Gz(){}, +Ng:function Ng(a,b){this.a=a +this.$ti=b}, +Ff:function Ff(a,b){this.a=a +this.$ti=b}, +XM:function XM(a,b,c){this.a=a +this.b=b +this.c=c}, +Kc:function Kc(a,b,c){this.a=a +this.b=b +this.$ti=c}, +asj:function asj(a){this.b=a}, +ave:function ave(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=0 +_.$ti=c}, +dbV(a){return 8}, +dbW(a){var s +a=(a<<1>>>0)-1 +for(;!0;a=s){s=(a&a-1)>>>0 +if(s===0)return a}}, +mt:function mt(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +adl:function adl(a,b,c,d,e){var _=this +_.d=a +_.a=b +_.b=c +_.c=d +_.$ti=e}, +agY:function agY(){}, +bNO(){throw A.d(A.aq("Cannot modify an unmodifiable Set"))}, +bNN(){throw A.d(A.aq("Cannot modify an unmodifiable Map"))}, +Nf:function Nf(a,b){this.a=a +this.$ti=b}, +aHd:function aHd(){}, +aHc:function aHc(){}, +ak1:function ak1(){}, +NB:function NB(){}, +Ic:function Ic(a,b){this.a=a +this.$ti=b}, +apG:function apG(){}, +bau:function bau(){}, +bbs:function bbs(){}, +bat:function bat(){}, +bsw:function bsw(){}, +bsx:function bsx(){}, +lt:function lt(a,b){this.a=a +this.b=b}, +dtP(a){var s=J.dP(a,new A.ctb(),t.nF) +return A.R(s,!0,A.z(s).h("aa.E"))}, +ctb:function ctb(){}, +bOE:function bOE(){}, +b2s:function b2s(){}, +aJP:function aJP(){}, +bPy(a,b,c,d,e){var s +if(b==null)A.vF(0,!1) +s=e==null?"":e +return new A.jB(d,s,a,c)}, +jB:function jB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=null}, +bPz:function bPz(a,b){this.a=a +this.b=b}, +bPA:function bPA(a){this.a=a}, +coF(a,b){var s,r +if(a==null)a=A.a([],t.n_) +b=A.dbD("memory",!1) +s=A.a([],t.n_) +r=b +$.eg.b=new A.bsq(B.b.gl4(a),r,s)}, +cBS(a){var s=A.cAR(a) +A.coF(null,null) +return A.cA8(A.aF6(s,null),s).kA(0)}, +cTs(a,b){var s,r=A.cAR(a) +A.coF(b,null) +s=A.cA8(A.aF6(r,null),r) +s.a.e=!0 +return s.YZ()}, +cAR(a){return a}, +cA8(a,b){var s=new A.bN6(85,117,43,63,new A.e0("CDATA"),a,b,!0,0),r=new A.c9n(s) +r.d=s.zB(0) +return r}, +diD(a){if(a>=48&&a<=57)return a-48 +else if(a>=97&&a<=102)return a-87 +else if(a>=65&&a<=70)return a-55 +else return-1}, +coU(a,b){var s,r,q,p,o,n,m=null +for(s=a.length,r=!b,q=m,p=0;p=65&&i<=90&&i+32===k +m=h}else m=!0 +else m=!1 +if(!m)break}if(m)return A.bZ(q.i(0,b))}}return-1}, +dfL(a){var s,r +if(a===24)return"%" +else for(s=0;s<28;++s){r=B.I9[s] +if(A.bZ(r.i(0,"unit"))===a)return A.bw(r.i(0,"value"))}return""}, +dfK(a){var s,r,q=a.toLowerCase() +for(s=0;s<147;++s){r=B.aHB[s] +if(r.i(0,"name")===q)return r}return null}, +dfJ(a,b){var s,r,q,p,o,n,m="0123456789abcdef",l=A.a([],t.s),k=B.d.b2(a,4) +l.push(m[B.d.M(a,16)]) +for(;k!==0;k=s){s=k>>>4 +l.push(m[B.d.M(k,16)])}r=l.length +q=b-r +for(p="";o=q-1,q>0;q=o)p+="0" +for(n=r-1,r=p;n>=0;--n)r+=l[n] +return r.charCodeAt(0)==0?r:r}, +aGP(a){switch(a){case 0:return"ERROR" +case 1:return"end of file" +case 2:return"(" +case 3:return")" +case 4:return"[" +case 5:return"]" +case 6:return"{" +case 7:return"}" +case 8:return"." +case 9:return";" +case 10:return"@" +case 11:return"#" +case 12:return"+" +case 13:return">" +case 14:return"~" +case 15:return"*" +case 16:return"|" +case 17:return":" +case 18:return"_" +case 19:return"," +case 20:return" " +case 21:return"\t" +case 22:return"\n" +case 23:return"\r" +case 24:return"%" +case 25:return"'" +case 26:return'"' +case 27:return"/" +case 28:return"=" +case 30:return"^" +case 31:return"$" +case 32:return"<" +case 33:return"!" +case 34:return"-" +case 35:return"\\" +default:throw A.d(A.a0("Unknown TOKEN"))}}, +czt(a){switch(a){case 641:case 642:case 643:case 644:case 645:case 646:case 647:case 648:case 649:case 650:case 651:case 652:case 653:case 654:case 655:case 656:case 600:case 601:case 602:case 603:case 604:case 605:case 606:case 607:case 608:case 609:case 610:case 612:case 613:case 614:case 615:case 617:case 627:case 628:return!0 +default:return!1}}, +dfM(a){var s +if(!(a>=48&&a<=57))if(!(a>=97&&a<=102))s=a>=65&&a<=70 +else s=!0 +else s=!0 +return s}, +aGR(a){var s +if(!(a>=97&&a<=122))s=a>=65&&a<=90||a===95||a>=160||a===92 +else s=!0 +return s}, +a0G:function a0G(a,b){this.a=a +this.b=b}, +c9n:function c9n(a){this.a=a +this.c=null +this.d=$}, +c9o:function c9o(){}, +c9p:function c9p(a,b,c){this.a=a +this.b=b +this.c=c}, +a3_:function a3_(a){this.a=a +this.b=0}, +a4X:function a4X(a){this.a=a}, +a3u:function a3u(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +m2:function m2(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +x_:function x_(a,b){this.a=a +this.b=b}, +bpf:function bpf(a,b,c){this.c=a +this.a=b +this.b=c}, +bmr:function bmr(a,b,c){this.c=a +this.a=b +this.b=c}, +bN6:function bN6(a,b,c,d,e,f,g,h,i){var _=this +_.w=a +_.x=b +_.y=c +_.z=d +_.Q=e +_.a=f +_.b=g +_.c=h +_.e=_.d=!1 +_.f=i +_.r=0}, +bN7:function bN7(){}, +SO:function SO(a,b){this.a=a +this.b=b}, +rD:function rD(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bsq:function bsq(a,b,c){this.a=a +this.b=b +this.c=c}, +bsr:function bsr(a){this.a=a}, +dbD(a,b){return new A.byc(b)}, +byc:function byc(a){this.w=a}, +czz(a,b,c){return new A.abO(a,b,null,!1,c)}, +d8j(a,b){return new A.DF(a,null,null,null,!1,b)}, +R5(a,b,c,d,e){return new A.R4(new A.a3u(A.GE(d instanceof A.DV?d.c:d),b,e,null,null,c),1,a)}, +wa:function wa(a,b){this.b=a +this.a=b}, +FW:function FW(a){this.a=a}, +aGo:function aGo(a){this.a=a}, +aA2:function aA2(a){this.a=a}, +aop:function aop(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +aEh:function aEh(a,b){this.b=a +this.a=b}, +M2:function M2(a,b){this.b=a +this.a=b}, +a9B:function a9B(a,b,c){this.b=a +this.c=b +this.a=c}, +oy:function oy(){}, +Ix:function Ix(a,b){this.b=a +this.a=b}, +azW:function azW(a,b,c){this.d=a +this.b=b +this.a=c}, +anj:function anj(a,b,c,d){var _=this +_.d=a +_.e=b +_.b=c +_.a=d}, +avK:function avK(a,b){this.b=a +this.a=b}, +ape:function ape(a,b){this.b=a +this.a=b}, +TN:function TN(a,b){this.b=a +this.a=b}, +TO:function TO(a,b,c){this.d=a +this.b=b +this.a=c}, +a7m:function a7m(a,b,c){this.f=a +this.b=b +this.a=c}, +aC9:function aC9(a,b,c){this.d=a +this.b=b +this.a=c}, +UR:function UR(a,b){this.b=a +this.a=b}, +aA3:function aA3(a,b,c){this.d=a +this.b=b +this.a=c}, +aFv:function aFv(a,b){this.b=a +this.a=b}, +aGT:function aGT(){}, +aDR:function aDR(a,b,c){this.c=a +this.d=b +this.a=c}, +asM:function asM(){}, +asS:function asS(a,b,c){this.c=a +this.d=b +this.a=c}, +aFz:function aFz(a,b,c){this.c=a +this.d=b +this.a=c}, +aFx:function aFx(){}, +Vr:function Vr(a,b){this.c=a +this.a=b}, +aFB:function aFB(a,b){this.c=a +this.a=b}, +aFy:function aFy(a,b){this.c=a +this.a=b}, +aFA:function aFA(a,b){this.c=a +this.a=b}, +aHF:function aHF(a,b,c){this.c=a +this.d=b +this.a=c}, +avY:function avY(a,b){this.d=a +this.a=b}, +a5C:function a5C(a,b){this.d=a +this.a=b}, +a5D:function a5D(a,b){this.d=a +this.a=b}, +azg:function azg(a,b,c){this.c=a +this.d=b +this.a=c}, +avu:function avu(a,b){this.c=a +this.a=b}, +aAC:function aAC(a,b){this.e=a +this.a=b}, +aoO:function aoO(a){this.a=a}, +awk:function awk(a,b,c){this.d=a +this.e=b +this.a=c}, +a4L:function a4L(a,b,c){this.c=a +this.d=b +this.a=c}, +auk:function auk(a,b){this.c=a +this.a=b}, +aFw:function aFw(a,b){this.d=a +this.a=b}, +azV:function azV(a){this.a=a}, +Wm:function Wm(a,b){this.c=a +this.a=b}, +azH:function azH(){}, +a5R:function a5R(a,b,c){this.r=a +this.c=b +this.a=c}, +azG:function azG(a,b,c){this.r=a +this.c=b +this.a=c}, +a4j:function a4j(a,b,c){this.c=a +this.d=b +this.a=c}, +o0:function o0(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.f=d +_.a=e}, +abO:function abO(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.f=d +_.a=e}, +DF:function DF(a,b,c,d,e,f){var _=this +_.w=a +_.b=b +_.c=c +_.d=d +_.f=e +_.a=f}, +atL:function atL(a,b,c,d,e,f){var _=this +_.w=a +_.b=b +_.c=c +_.d=d +_.f=e +_.a=f}, +Cp:function Cp(a,b){this.b=a +this.a=b}, +a5j:function a5j(a,b){this.b=a +this.a=b}, +abP:function abP(a,b,c){this.c=a +this.d=b +this.a=c}, +KF:function KF(a){this.a=a}, +T6:function T6(a){this.a=a}, +aAt:function aAt(a){this.a=a}, +aAs:function aAs(a){this.a=a}, +aH9:function aH9(a){this.a=a}, +cx:function cx(a,b,c){this.c=a +this.d=b +this.a=c}, +nd:function nd(a,b,c){this.c=a +this.d=b +this.a=c}, +Wg:function Wg(){}, +DV:function DV(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +zI:function zI(a,b,c){this.c=a +this.d=b +this.a=c}, +a2x:function a2x(a,b,c){this.c=a +this.d=b +this.a=c}, +atC:function atC(a,b,c){this.c=a +this.d=b +this.a=c}, +ZT:function ZT(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +aGt:function aGt(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +auv:function auv(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +auo:function auo(a,b,c){this.c=a +this.d=b +this.a=c}, +Wk:function Wk(a,b,c){this.c=a +this.d=b +this.a=c}, +aDs:function aDs(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +aoK:function aoK(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +aCD:function aCD(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +awY:function awY(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +aHI:function aHI(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +b5o:function b5o(){}, +Rq:function Rq(a,b,c){this.c=a +this.d=b +this.a=c}, +Rb:function Rb(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +a43:function a43(a,b,c){this.c=a +this.d=b +this.a=c}, +av2:function av2(a,b){this.c=a +this.a=b}, +awb:function awb(a,b,c){this.c=a +this.d=b +this.a=c}, +IQ:function IQ(a,b){this.c=a +this.a=b}, +rm:function rm(){}, +R4:function R4(a,b,c){this.e=a +this.b=b +this.a=c}, +aoc:function aoc(){}, +E8:function E8(a,b,c){this.e=a +this.b=b +this.a=c}, +y4:function y4(a,b,c){this.e=a +this.b=b +this.a=c}, +avf:function avf(a,b,c){this.e=a +this.b=b +this.a=c}, +aJC:function aJC(a,b,c){this.e=a +this.b=b +this.a=c}, +Ev:function Ev(a,b,c){this.e=a +this.b=b +this.a=c}, +bA:function bA(){}, +dR:function dR(){}, +bOA:function bOA(){}, +bcE:function bcE(){this.d=null}, +bcF:function bcF(a){this.a=a}, +ac2:function ac2(){}, +bcD:function bcD(){}, +bsy:function bsy(){}, +OY:function OY(a){this.a=a}, +LG:function LG(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +aog:function aog(a){this.a=a}, +b71:function b71(a){this.a=a}, +b72:function b72(a,b,c){this.a=a +this.b=b +this.c=c}, +b70:function b70(){}, +b73:function b73(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b74:function b74(a){this.a=a}, +b75:function b75(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b7c:function b7c(a,b){this.a=a +this.b=b}, +b7d:function b7d(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +b7e:function b7e(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b76:function b76(a,b,c){this.a=a +this.b=b +this.c=c}, +b77:function b77(a,b,c){this.a=a +this.b=b +this.c=c}, +b78:function b78(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b79:function b79(a){this.a=a}, +b7a:function b7a(a){this.a=a}, +b7b:function b7b(a,b){this.a=a +this.b=b}, +d4x(a){var s=new A.a1N($,new A.a4z(A.a([B.Af],t.i6)),$,new A.anD(A.cRI()),!1),r=A.b5U(null,null,null) +s.z5$=r +s.aan$=new A.aog(A.b9(t.Gf)) +return s}, +a1N:function a1N(a,b,c,d,e){var _=this +_.z5$=a +_.bvX$=b +_.aan$=c +_.azn$=d +_.bJH$=e}, +aNy:function aNy(){}, +dhK(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"}}, +a1M(a,b,c,d,e,f){var s=c.ch +if(s==null)s=A.pw() +return new A.p9(f,a,s,b)}, +cGN(a,b){return A.a1M(null,"The request connection took longer than "+b.k(0)+" and it was aborted. To get rid of this exception, try raising the RequestOptions.connectTimeout above the duration of "+b.k(0)+u.v,a,null,null,B.ahe)}, +cwe(a,b){return A.a1M(null,"The request took longer than "+b.k(0)+" to receive data. It was aborted. To get rid of this exception, try raising the RequestOptions.receiveTimeout above the duration of "+b.k(0)+u.v,a,null,null,B.ahg)}, +d4w(a,b){return A.a1M(null,"The connection errored: "+a+" This indicates an error which most likely cannot be solved by the library.",b,null,null,B.ahj)}, +yz:function yz(a,b){this.a=a +this.b=b}, +p9:function p9(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.f=d}, +cwg(a,b,c){return b}, +cGQ(a,b){var s=null +if(b==null)b=A.mk(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s) +b.a=a +return b}, +cwf(a,b){if(a instanceof A.p9)return a +return A.a1M(a,null,b,null,null,B.ahk)}, +cGP(a,b,c){var s,r,q,p,o=null +if(!(a instanceof A.nj))return A.cyL(c.a(a),o,o,!1,B.aN5,b,o,o,c) +else if(!c.h("nj<0>").b(a)){s=c.h("0?").a(a.a) +if(s instanceof A.LG){r=s.f +q=b.c +q===$&&A.b() +p=A.cIz(r,q)}else p=a.e +return A.cyL(s,a.w,p,a.f,a.r,a.b,a.c,a.d,c)}return a}, +bd3:function bd3(){}, +bd9:function bd9(a){this.a=a}, +bdb:function bdb(a,b){this.a=a +this.b=b}, +bda:function bda(a,b){this.a=a +this.b=b}, +bdc:function bdc(a){this.a=a}, +bde:function bde(a,b){this.a=a +this.b=b}, +bdd:function bdd(a,b){this.a=a +this.b=b}, +bd6:function bd6(a){this.a=a}, +bd7:function bd7(a,b){this.a=a +this.b=b}, +bd8:function bd8(a,b){this.a=a +this.b=b}, +bd4:function bd4(a){this.a=a}, +bd5:function bd5(a,b,c){this.a=a +this.b=b +this.c=c}, +RS:function RS(a,b){this.a=a +this.b=b}, +jl:function jl(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bSv:function bSv(){}, +A4:function A4(a){this.a=a}, +LH:function LH(a){this.a=a}, +IE:function IE(a){this.a=a}, +ph:function ph(){}, +a4z:function a4z(a){this.a=a}, +bnK:function bnK(){}, +cIz(a,b){var s=t.yp +return new A.avd(A.b1L(a.qv(a,new A.bkU(),t.N,s),s))}, +avd:function avd(a){this.b=a}, +bkU:function bkU(){}, +bkV:function bkV(a){this.a=a}, +RG:function RG(){}, +b5U(a,b,c){var s=null,r=t.N,q=t.z,p=new A.b5T($,$,s,"GET",!1,c,b,B.lH,A.dtL(),!0,A.N(r,q),!0,5,!0,s,s,B.EQ) +p.ai_(s,s,s,s,s,s,s,s,!1,s,b,s,s,B.lH,c,s) +p.savR("") +p.MR$=A.N(r,q) +p.saxj(a) +return p}, +mk(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.bvj(g,d,i,o,k,a,n,p,j,b,c,f,h,l,m,e)}, +dl2(a){return a>=200&&a<300}, +Up:function Up(a,b){this.a=a +this.b=b}, +ax2:function ax2(a,b){this.a=a +this.b=b}, +aAu:function aAu(){}, +b5T:function b5T(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.WA$=a +_.MR$=b +_.WB$=c +_.a=d +_.b=$ +_.c=e +_.d=f +_.e=g +_.f=null +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q}, +bvj:function bvj(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p}, +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){var _=this +_.ch=null +_.CW=a +_.cx=b +_.cy=c +_.db=d +_.dx=e +_.WA$=f +_.MR$=g +_.WB$=h +_.a=i +_.b=$ +_.c=j +_.d=k +_.e=l +_.f=null +_.r=m +_.w=n +_.x=o +_.y=p +_.z=q +_.Q=r +_.as=s +_.at=a0 +_.ax=a1 +_.ay=a2}, +cdb:function cdb(){}, +aLm:function aLm(){}, +aVv:function aVv(){}, +doC(a,b,c){if(t.Oa.b(a))return a +return A.dof(a,b,c,t.Cm).u3(a)}, +dof(a,b,c,d){return A.cP1(new A.cqP(c,d),d,t.E)}, +cqP:function cqP(a,b){this.a=a +this.b=b}, +cyL(a,b,c,d,e,f,g,h,i){var s,r +if(c==null){f.c===$&&A.b() +s=new A.avd(A.b1L(null,t.yp))}else s=c +r=b==null?A.N(t.N,t.z):b +return new A.nj(a,f,g,h,s,d,e,r,i.h("nj<0>"))}, +nj:function nj(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}, +dsO(a,b){var s,r,q,p=null,o={},n=b.b,m=A.lN(p,p,p,!1,t.E),l=A.aF("responseSubscription"),k=A.aF("totalLength") +o.a=0 +s=a.e +if(s==null)s=B.w +r=new A.py() +$.r8() +o.b=null +q=new A.csw(o,p,r) +l.b=n.cl(new A.cst(o,new A.csx(o,s,r,q,b,l,m,a),r,s,m,a,k),!0,new A.csu(q,l,m),new A.csv(q,m)) +return new A.dI(m,A.z(m).h("dI<1>"))}, +cQ7(a,b,c){if((a.b&4)===0){a.h1(b,c) +a.aO(0)}}, +csw:function csw(a,b,c){this.a=a +this.b=b +this.c=c}, +csx:function csx(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}, +csy:function csy(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +cst:function cst(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +csv:function csv(a,b){this.a=a +this.b=b}, +csu:function csu(a,b,c){this.a=a +this.b=b +this.c=c}, +dg1(a,b){return A.cSm(a,new A.bNs(),!1,b)}, +dg2(a,b){return A.cSm(a,new A.bNt(),!0,b)}, +cNe(a){var s,r,q +if(a==null)return!1 +s=A.cK0(a) +r=s.b +q=s.a+"/"+r +return q==="application/json"||q==="text/json"||B.c.eV(r,"+json")}, +bNr:function bNr(){}, +bNs:function bNs(){}, +bNt:function bNt(){}, +dkS(a){if(a.length<51200)return B.aO.pf(0,a,null) +return A.dpP().$2$2(A.dpY(),a,t.N,t.z)}, +anD:function anD(a){this.a=a}, +bJI:function bJI(){}, +bJJ:function bJJ(){}, +cSm(a,b,c,d){var s,r,q,p={},o=new A.bu("") +p.a=!0 +s=!c +r=!s||!1?"[":"%5B" +q=!s||!1?"]":"%5D" +new A.crV(p,d,c,new A.crU(c,A.cS5()),r,q,A.cS5(),b,o).$2(a,"") +p=o.a +return p.charCodeAt(0)==0?p:p}, +dm6(a,b){switch(a.a){case 0:return"," +case 1:return b?"%20":" " +case 2:return"\\t" +case 3:return"|" +default:return""}}, +b1L(a,b){var s=A.e4(new A.cro(),new A.crp(),t.N,b) +if(a!=null&&a.gcU(a))s.L(0,a) +return s}, +crU:function crU(a,b){this.a=a +this.b=b}, +crV:function crV(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}, +crW:function crW(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +cro:function cro(){}, +crp:function crp(){}, +ani:function ani(){}, +bff(){var s=0,r=A.p(t.H),q +var $async$bff=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.ata(),$async$bff) +case 3:q=b +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bff,r)}, +cMp(a){var s=null,r=a.split("_") +switch(r.length){case 2:return J.bn(B.b.gP(r))===4?new A.jm(B.b.ga2(r),B.b.gP(r),s):new A.jm(B.b.ga2(r),s,B.b.gP(r)) +case 3:return new A.jm(B.b.ga2(r),r[1],B.b.gP(r)) +default:return new A.jm(B.b.ga2(r),s,s)}}, +cJI(a,b,c){var s,r,q,p,o,n,m +for(s=J.BK(b),s=s.gaz(s),r=J.ao(a),q=c.h("aN<0,@>");s.t();){p=s.gK(s) +o=p.a +n=r.i(a,o) +m=p.b +if(q.b(n)&&q.b(m)){A.cJI(n,m,c) +continue}r.n(a,o,m)}}, +a2m:function a2m(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.y=e +_.z=f +_.a=g}, +aO4:function aO4(a){var _=this +_.a=_.f=_.e=null +_.b=a +_.c=null}, +bYF:function bYF(a){this.a=a}, +bYE:function bYE(a,b){this.a=a +this.b=b}, +bYG:function bYG(a){this.a=a}, +bYD:function bYD(){}, +aep:function aep(a,b,c,d,e,f){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.b=e +_.a=f}, +aO3:function aO3(a,b,c){this.a=a +this.b=b +this.c=c}, +cHO(a,b,c){return B.b.WW(a,new A.bfd(b),new A.bfe(a,c))}, +d5W(a,b){return b}, +ata(){var s=0,r=A.p(t.H),q,p,o,n +var $async$ata=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=A +n=J +s=2 +return A.i(A.a9w(),$async$ata) +case 2:p=o.bw(n.aS(b.a,"locale")) +$.cwB=p==null?null:A.cMp(p) +q=window.navigator +q.toString +q=q.language||q.userLanguage +q.toString +q=A.Zh(q) +$.cC5=q +o=$.cHN +n=A +s=3 +return A.i(A.dm(q,t.N),$async$ata) +case 3:o.b=n.cMp(b) +$.pS().$3$level$stackTrace("Localization initialized",B.fD,null) +return A.n(null,r)}}) +return A.o($async$ata,r)}, +d9m(a,b){var s +if(a.l(0,b))return!0 +if(a.gi4(0)!==b.gi4(0))return!1 +if(a.gi2()!=null&&a.gi2().length!==0&&a.gi2()!=b.gi2())return!1 +s=a.b +if(s!=null&&s!==b.b)return!1 +return!0}, +at9:function at9(a,b,c,d,e,f,g,h){var _=this +_.a=$ +_.b=null +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.z=_.y=null +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +bfd:function bfd(a){this.a=a}, +bfe:function bfe(a,b){this.a=a +this.b=b}, +bfc:function bfc(a){this.a=a}, +cxR(){return new A.Sn(A.b4("{}",!0,!1,!1),A.b4("(?:@(?:\\.[a-z]+)?:(?:[\\w\\-_|.]+|\\([\\w\\-_|.]+\\)))",!0,!1,!1),A.b4("^@(?:\\.([a-z]+))?:",!0,!1,!1),A.b4("[()]",!0,!1,!1),A.a1(["upper",new A.bpi(),"lower",new A.bpj(),"capitalize",new A.bpk()],t.N,t.YS))}, +d9n(a){switch(a){case 0:return B.pz +case 1:return B.b8 +case 2:return B.i0 +default:return B.b3}}, +Sn:function Sn(a,b,c,d,e){var _=this +_.b=_.a=null +_.c=$ +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=!1}, +bpi:function bpi(){}, +bpj:function bpj(){}, +bpk:function bpk(){}, +bpl:function bpl(a){this.a=a}, +dl4(){return B.b3}, +dop(a,b){if(b===0){$.cqw=0 +return}for(;B.d.M(b,10)===0;){b=B.e.ec(b/10);--a}$.cqw=b}, +dlH(){var s,r=$.ky===0 +if(r){s=$.j3 +s=s===1||s===2||s===3}else s=!1 +if(!s){if(r){s=B.d.M($.j3,10) +s=s!==4&&s!==6&&s!==9}else s=!1 +if(!s)if(!r){r=B.d.M($.Bt,10) +r=r!==4&&r!==6&&r!==9}else r=!1 +else r=!0}else r=!0 +if(r)return B.b8 +return B.b3}, +dnz(){if($.mL===1&&$.ky===0)return B.b8 +return B.b3}, +dka(){var s,r=$.mL,q=B.d.M(r,10) +if(q===1){s=B.d.M(r,100) +s=s!==11&&s!==71&&s!==91}else s=!1 +if(s)return B.b8 +if(q===2){s=B.d.M(r,100) +s=s!==12&&s!==72&&s!==92}else s=!1 +if(s)return B.i0 +if(q>=3&&q<=4||q===9){q=B.d.M(r,100) +if(q<10||q>19)if(q<70||q>79)q=q<90||!1 +else q=!1 +else q=!1}else q=!1 +if(q)return B.dy +if(r!==0&&B.d.M(r,1e6)===0)return B.en +return B.b3}, +dnY(){var s,r=$.ky===0 +if(r){s=$.j3 +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!1 +if(!s){s=$.Bt +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!0 +if(s)return B.b8 +if(r){r=$.j3 +s=B.d.M(r,10) +if(s>=2)if(s<=4){r=B.d.M(r,100) +r=r<12||r>14}else r=!1 +else r=!1}else r=!1 +if(!r){r=$.Bt +s=B.d.M(r,10) +if(s>=2)if(s<=4){r=B.d.M(r,100) +r=r<12||r>14}else r=!1 +else r=!1}else r=!0 +if(r)return B.dy +return B.b3}, +dnI(){if($.j3===1&&$.ky===0)return B.b8 +if($.ky===0){var s=$.mL +if(s!==0)if(s!==1){s=B.d.M(s,100) +s=s>=1&&s<=19}else s=!1 +else s=!0}else s=!0 +if(s)return B.dy +return B.b3}, +dmd(){if($.j3===0||$.mL===1)return B.b8 +return B.b3}, +dlM(){var s=$.j3 +if(s===0||s===1)return B.b8 +return B.b3}, +dkK(){var s=$.j3 +if(s===1&&$.ky===0)return B.b8 +if(s>=2&&s<=4&&$.ky===0)return B.dy +if($.ky!==0)return B.en +return B.b3}, +dnu(){var s,r,q=$.j3,p=q===1 +if(p&&$.ky===0)return B.b8 +s=$.ky===0 +if(s){r=B.d.M(q,10) +if(r>=2)if(r<=4){r=B.d.M(q,100) +r=r<12||r>14}else r=!1 +else r=!1}else r=!1 +if(r)return B.dy +if(s)if(!p)p=B.d.M(q,10)<=1 +else p=!1 +else p=!1 +if(!p)if(!(s&&B.d.M(q,10)>=5&&!0))if(s){q=B.d.M(q,100) +q=q>=12&&q<=14}else q=!1 +else q=!0 +else q=!0 +if(q)return B.en +return B.b3}, +dmU(){var s,r=$.mL,q=B.d.M(r,10) +if(q!==0){s=B.d.M(r,100) +if(!(s>=11&&s<=19))if($.ky===2){s=B.d.M($.Bt,100) +s=s>=11&&s<=19}else s=!1 +else s=!0}else s=!0 +if(s)return B.pz +if(!(q===1&&B.d.M(r,100)!==11)){r=$.ky===2 +if(r){q=$.Bt +q=B.d.M(q,10)===1&&B.d.M(q,100)!==11}else q=!1 +if(!q)r=!r&&B.d.M($.Bt,10)===1 +else r=!0}else r=!0 +if(r)return B.b8 +return B.b3}, +dmb(){var s=$.j3 +if(s===1&&$.ky===0)return B.b8 +if(s===2&&$.ky===0)return B.i0 +if($.ky===0){s=$.mL +s=(s<0||s>10)&&B.d.M(s,10)===0}else s=!1 +if(s)return B.en +return B.b3}, +dn5(){var s,r=$.mL +if(r===1)return B.b8 +if(r!==0){s=B.d.M(r,100) +s=s>=2&&s<=10}else s=!0 +if(s)return B.dy +r=B.d.M(r,100) +if(r>=11&&r<=19)return B.en +return B.b3}, +dnT(){var s=$.mL +if(s!==0)if(s!==1)s=$.j3===0&&$.Bt===1 +else s=!0 +else s=!0 +if(s)return B.b8 +return B.b3}, +dkM(){var s=$.mL +if(s===0)return B.pz +if(s===1)return B.b8 +if(s===2)return B.i0 +if(s===3)return B.dy +if(s===6)return B.en +return B.b3}, +dkO(){if($.mL!==1)if($.cqw!==0){var s=$.j3 +s=s===0||s===1}else s=!1 +else s=!0 +if(s)return B.b8 +return B.b3}, +dnJ(){var s,r,q=$.ky===0 +if(q){s=$.j3 +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!1 +if(s)return B.b8 +if(q){s=$.j3 +r=B.d.M(s,10) +if(r>=2)if(r<=4){s=B.d.M(s,100) +s=s<12||s>14}else s=!1 +else s=!1}else s=!1 +if(s)return B.dy +if(!(q&&B.d.M($.j3,10)===0))if(!(q&&B.d.M($.j3,10)>=5&&!0))if(q){q=B.d.M($.j3,100) +q=q>=11&&q<=14}else q=!1 +else q=!0 +else q=!0 +if(q)return B.en +return B.b3}, +dk7(){var s,r=$.mL,q=B.d.M(r,10) +if(q===1&&B.d.M(r,100)!==11)return B.b8 +if(q>=2)if(q<=4){s=B.d.M(r,100) +s=s<12||s>14}else s=!1 +else s=!1 +if(s)return B.dy +if(q!==0)if(!(q>=5&&!0)){r=B.d.M(r,100) +r=r>=11&&r<=14}else r=!0 +else r=!0 +if(r)return B.en +return B.b3}, +dn1(){if($.ky===0&&B.d.M($.j3,10)===1||B.d.M($.Bt,10)===1)return B.b8 +return B.b3}, +dlP(){var s=$.mL +if(s===1)return B.b8 +if(s===2)return B.i0 +if(s>=3&&s<=6)return B.dy +if(s>=7&&s<=10)return B.en +return B.b3}, +dnA(){var s=$.mL +if(s>=0&&s<=2&&s!==2)return B.b8 +return B.b3}, +dlm(){if($.mL===1)return B.b8 +return B.b3}, +dmD(){var s,r=$.cqw===0 +if(r){s=$.j3 +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!1 +if(s||!r)return B.b8 +return B.b3}, +dk0(){var s=$.mL +if(s===0)return B.pz +if(s===1)return B.b8 +if(s===2)return B.i0 +s=B.d.M(s,100) +if(s>=3&&s<=10)return B.dy +if(s>=11&&!0)return B.en +return B.b3}, +dnW(){var s,r=$.ky===0 +if(r&&B.d.M($.j3,100)===1)return B.b8 +if(r&&B.d.M($.j3,100)===2)return B.i0 +if(r){s=B.d.M($.j3,100) +s=s>=3&&s<=4}else s=!1 +if(s||!r)return B.dy +return B.b3}, +dmS(){var s,r=$.mL,q=B.d.M(r,10) +if(q===1){s=B.d.M(r,100) +s=s<11||s>19}else s=!1 +if(s)return B.b8 +if(q>=2){r=B.d.M(r,100) +r=r<11||r>19}else r=!1 +if(r)return B.dy +if($.Bt!==0)return B.en +return B.b3}, +dld(){if($.j3===1&&$.ky===0)return B.b8 +return B.b3}, +djY(){var s=$.mL +if(s>=0&&s<=1)return B.b8 +return B.b3}, +uc:function uc(a,b){this.a=a +this.b=b}, +aH2:function aH2(a,b){this.a=a +this.b=b}, +Pi:function Pi(a,b){this.a=a +this.b=b}, +zd:function zd(a,b){this.a=a +this.b=b}, +bfg:function bfg(a){this.a=null +this.b=a +this.f=null}, +crR:function crR(){}, +crS:function crS(a){this.a=a}, +crT:function crT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cHV(a){return a.charCodeAt(0)>=48&&a.charCodeAt(0)<=57}, +cwF(a){var s +if(!(a.charCodeAt(0)>=65&&a.charCodeAt(0)<=90))s=a.charCodeAt(0)>=97&&a.charCodeAt(0)<=122 +else s=!0 +return s}, +d6e(a,b){if(a.charCodeAt(0)<128){if(A.cwF(a)||a==="-"){$.Iz=B.qc +return!0}if(A.cHV(a)){$.Iz=B.xz +return!0}return!1}$.Iz=B.qc +return!0}, +d6f(a,b){if(a.charCodeAt(0)<128){if(A.cwF(a)){$.Iz=B.qc +return!0}if(A.cHV(a)){$.Iz=B.xz +return!0}$.Iz=B.YI +return!1}$.Iz=B.qc +return!0}, +cHW(a,b){var s,r=$.fc,q=a.length,p=r +while(!0){if(p=48&&p.charCodeAt(0)<=57 +else s=!0 +if(!s)p=A.r6("!#$%&'*+-/=?^_`{|}~",p,0) +else p=!0}else p=!0}else p=!1 +if(!p)break +p=$.fc+1 +$.fc=p}return $.fc>r}, +cHY(a,b){var s,r,q=$.fc +if(!A.d6f(a[q],!0))return!1 +s=$.fc=$.fc+1 +r=a.length +while(!0){if(!(s=s||a[p]!=='"')return!1 +$.fc=p+1 +return!0}, +cHX(a){var s,r,q,p,o,n=a.length,m=0 +while(!0){s=$.fc +if(!(s=48&&o.charCodeAt(0)<=57}else o=!1 +if(!o)break +q=q*10+(a[r].charCodeAt(0)-48);++r +$.fc=r}if(r===s||r-s>3||q>255)return!1;++m +if(m<4&&p&&a[r]===".")$.fc=r+1}return m===4}, +d6h(a){var s,r,q,p,o,n,m,l +for(s=a.length,r=!1,q=0;p=$.fc,p=65&&n<=70))if(!(n>=97&&n<=102))m=n>=48&&n<=57 +else m=!0 +else m=!0}else m=!1 +if(!m)break;++o +$.fc=o}if(o>=s)break +if(o>p&&q>2&&a[o]==="."){$.fc=p +if(!A.cHX(a))return!1 +return r?q<6:q===6}if(o-p>4)return!1 +if(a[o]!==":")break +p=o +while(!0){if(!(p2)return!1 +if(l===2){if(r)return!1 +q+=2 +r=!0}else ++q}if(q<2)return!1 +return r?q<7:q===7}, +d6j(a){var s,r,q +$.fc=0 +s=a.length +if(s===0||s>=255)return!1 +if(a[0]==='"'){if(!A.d6i(a,!0)||$.fc>=s)return!1}else{if(!A.cHW(a,!0)||$.fc>=s)return!1 +for(;r=$.fc,a[r]===".";){++r +$.fc=r +if(r>=s)return!1 +if(!A.cHW(a,!0))return!1 +if($.fc>=s)return!1}}r=$.fc +q=r+1 +if(q=s)return!1 +if(B.c.p(B.c.b0(a,r-1).toLowerCase(),"ipv6:")){$.fc=r+5 +if(!A.d6h(a))return!1}else if(!A.cHX(a))return!1 +r=$.fc +if(re){o=B.c.R(a,e,f) +n=A.R(new A.ou(o),!0,t.Dc.h("B.E")) +for(m=0;!0;){l=A.dbP(n,m) +e=l==null +s=e?B.c.b0(o,m):B.c.R(o,m,l) +try{r=A.daO(s) +J.id(h,r.a,r)}catch(k){e=A.ag(k) +if(t.bE.b(e)){q=e +p=A.aD(k) +j=J.amz(q) +i=$.mP +if(i==null)A.mO(j) +else i.$1(j) +j=A.r(p) +i=$.mP +if(i==null)A.mO(j) +else i.$1(j) +throw A.d(A.bM(J.amz(q)+" in property "+a,null,null))}else throw k}if(e)break +m=l+1}}return h}, +dbQ(a,b){var s,r,q,p=null,o="Invalid UTC-OFFSET ",n=a.e,m=t.P1.a(n.i(0,A.bhv(B.SU))),l=m==null?p:m.c +if(l==null)l=b +s=a.d +switch(l.a){case 0:n.i(0,A.bhv(B.bgQ)) +n.i(0,A.bhv(B.bgP)) +return new A.b6c(s) +case 1:return s==="TRUE"||s==="YES" +case 2:return A.Wj(s) +case 3:return A.cw7(s) +case 4:return A.as8(s) +case 5:return A.cJ9(s) +case 6:return A.pO(s) +case 7:return A.cA(s,p) +case 8:return A.cKN(s) +case 9:n=t.j2 +return A.R(new A.O(A.a(s.split(","),t.s),A.dwC(),n),!0,n.h("aa.E")) +case 10:return new A.aCx(A.dcc(s),A.dcd(s),A.cLq(s,"COUNT"),A.cLq(s,"INTERVAL"),A.Lr(s,"BYSECOND",0,60,p),A.Lr(s,"BYMINUTE",0,59,p),A.Lr(s,"BYHOUR",0,23,p),A.dcb(s),A.Lr(s,"BYMONTHDAY",-31,31,0),A.Lr(s,"BYYEARDAY",-366,366,0),A.Lr(s,"BYWEEKNO",-53,53,0),A.Lr(s,"BYMONTH",1,12,p),A.Lr(s,"BYSETPOS",-366,366,0),A.dce(s)) +case 11:s=A.cj(s,"\\,",",") +return A.cj(s,"\\n","\n") +case 12:return A.cMV(s) +case 13:return A.Wj(s) +case 14:n=s.length +if(n<5)A.C(A.bM(o+s,p,p)) +r=A.cY(B.c.R(s,0,3),p) +if(r==null)A.C(A.bM(o+s,p,p)) +q=A.cY(n>5?B.c.R(s,3,5):B.c.b0(s,3),p) +if(q==null)A.C(A.bM(o+s,p,p)) +return new A.aHj(r,q) +case 17:return A.cNl(s) +case 16:return A.d2Z(s) +case 15:return a.ne(0,s) +case 19:case 20:case 21:case 22:case 23:case 24:case 25:throw A.d(A.bM("Unable to parse "+a.c+" with value "+s+" and invalid valueType of "+l.k(0),p,p)) +case 18:n=t.Dl +return A.R(new A.O(A.a(s.split(","),t.s),new A.byp(),n),!0,n.h("aa.E"))}}, +d7w(a){return null}, +dgg(a){var s="VERSION:"+a,r=new A.aHu(s,B.c.R(s,0,A.om(s,!0)),B.c.b0(s,A.om(s,!1)+1),A.TM(s)) +r.Ax(s,B.qx,null) +return r}, +df7(a){var s=new A.ab_(a,B.c.R(a,0,A.om(a,!0)),B.c.b0(a,A.om(a,!1)+1),A.TM(a)) +s.Ax(a,B.qx,null) +return s}, +ab0(a,b){var s +b=A.cj(b,",","\\,") +s=A.df7(a+":"+A.cj(b,"\n","\\n")) +return s}, +cJ3(a,b){var s=a+":"+b,r=new A.aw6(s,B.c.R(s,0,A.om(s,!0)),B.c.b0(s,A.om(s,!1)+1),A.TM(s)) +r.Ax(s,B.ZZ,null) +return r}, +d2a(a,b){return null}, +cGs(a,b){var s=a+":"+A.cw8(b),r=new A.asc(s,B.c.R(s,0,A.om(s,!0)),B.c.b0(s,A.om(s,!1)+1),A.TM(s)) +r.Ax(s,B.mb,null) +return r}, +cHK(a){var s="DURATION:"+a.k(0),r=new A.at6(s,B.c.R(s,0,A.om(s,!0)),B.c.b0(s,A.om(s,!1)+1),A.TM(s)) +r.Ax(s,B.ZY,null) +return r}, +cNg(a){var s="TRIGGER:"+A.cw8(a),r=new A.aH3(s,B.c.R(s,0,A.om(s,!0)),B.c.b0(s,A.om(s,!1)+1),A.TM(s)) +r.Ax(s,B.mb,null) +s=A.d6R(B.mb) +r.n(0,B.SU,new A.Wl("VALUE",s==null?"":s,B.mb)) +return r}, +cEL(a){var s,r +if(a===B.a0y)return null +s="ACTION:"+A.r(A.d6O(a)) +r=new A.amK(s,B.c.R(s,0,A.om(s,!0)),B.c.b0(s,A.om(s,!1)+1),A.TM(s)) +r.Ax(s,B.qx,null) +return r}, +qz:function qz(){}, +byp:function byp(){}, +aHu:function aHu(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=d}, +ab_:function ab_(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=d}, +aw6:function aw6(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=d}, +asc:function asc(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=d}, +at6:function at6(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=d}, +aH3:function aH3(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=d}, +amK:function amK(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=d}, +d6R(a){switch(a.a){case 0:return"BINARY" +case 1:return"BOOLEAN" +case 2:return"CAL-ADDRESS" +case 3:return"DATE" +case 4:return"DATE-TIME" +case 5:return"DURATION" +case 6:return"FLOAT" +case 7:return"INTEGER" +case 8:return"PERIOD" +case 10:return"RECUR" +case 11:return"TEXT" +case 12:return"TIME" +case 13:return"URI" +case 14:return"UTC-OFFSET" +case 15:case 19:case 9:case 18:case 20:case 21:case 22:case 23:case 24:case 17:case 25:case 16:return null}}, +d6Q(a){switch(a.a){case 0:return"SECONDLY" +case 1:return"MINUTELY" +case 2:return"HOURLY" +case 3:return"DAILY" +case 4:return"WEEKLY" +case 5:return"MONTHLY" +case 6:return"YEARLY"}}, +aCy(a){var s,r,q,p,o,n,m,l=$.cLp +if(a===$.cLo&&l!=null)return l +s=t.N +r=A.N(s,s) +q=a.split(";") +for(s=q.length,p=0;pd||o===e)throw A.d(A.bM("Invalid "+b+": part "+p+" invalid in RECUR "+a,n,n)) +s.push(o)}if(s.length===0)throw A.d(A.bM("Invalid "+b+": empty in RECUR "+a,n,n)) +return s}, +dcb(a){var s,r,q,p,o,n,m,l,k,j,i=null,h=A.cLr(a,"BYDAY") +if(h==null)return i +s=A.a([],t.LA) +for(r=h.length,q=0;q53||l<-53)throw A.d(A.bM('Invalid week "'+m+'" in BYDAY rule part "'+A.r(p)+'" in RECUR "'+a+'"',i,i)) +k=n.b0(p,n.gA(p)-2) +j=$.cyH.i(0,k) +if(j==null)throw A.d(A.bM("Invalid weekday "+k+" in BYDAY rule part "+A.r(p)+" in RECUR "+a,i,i)) +s.push(new A.Pk(j,l))}}return s}, +dce(a){var s,r=A.aCy(a).i(0,"WKST") +if(r==null)return null +s=$.cyH.i(0,r) +if(s==null)throw A.d(A.bM("Invalid weekday "+r+" in WKST part of RECUR "+a,null,null)) +return s}, +cMV(a){var s=null,r=A.cY(B.c.R(a,0,2),s),q=A.cY(B.c.R(a,2,4),s),p=A.cY(B.c.R(a,4,6),s) +if(r==null||q==null||p==null)throw A.d(A.bM("Invalid time definition: "+a,s,s)) +return new A.aGq(r,q,p)}, +cw7(a){var s,r,q,p,o="Invalid date definition: ",n=null +if(a.length!==8)throw A.d(A.bM(o+a,n,n)) +s=A.cY(B.c.R(a,0,4),n) +r=A.cY(B.c.R(a,4,6),n) +q=A.cY(B.c.b0(a,6),n) +if(s==null||r==null||q==null)throw A.d(A.bM(o+a,n,n)) +p=A.cd(s,r,q,0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +return new A.am(p,!1)}, +as8(a){var s,r,q,p=B.c.c2(a,"T") +if(a.length<15||p!==8)throw A.d(A.bM("Invalid datetime definition: "+a,null,null)) +s=A.cw7(B.c.R(a,0,8)) +r=A.cMV(B.c.b0(a,p+1)) +if(B.c.eV(a,"Z")){q=A.cd(A.b7(s),A.bp(s),A.cL(s),r.a,r.b,r.c,0,!0) +if(!A.bI(q))A.C(A.bV(q)) +return new A.am(q,!0)}q=A.cd(A.b7(s),A.bp(s),A.cL(s),r.a,r.b,r.c,0,!1) +if(!A.bI(q))A.C(A.bV(q)) +return new A.am(q,!1)}, +cGr(a,b){var s +if(A.b7(a)<10)b.a+="000" +else if(A.b7(a)<100)b.a+="00" +else if(A.b7(a)<1000)b.a+="0" +s=b.a+=""+A.b7(a) +if(A.bp(a)<10)s=b.a=s+"0" +s=b.a=s+A.bp(a) +if(A.cL(a)<10)s=b.a=s+"0" +b.a=s+A.cL(a)}, +cw8(a){var s,r=new A.bu("") +A.cGr(a,r) +s=r.a+="T" +if(A.iT(a)<10)s=r.a=s+"0" +s=r.a=s+A.iT(a) +if(A.EM(a)<10)s=r.a=s+"0" +s=r.a=s+A.EM(a) +if(A.Lh(a)<10)s=r.a=s+"0" +s=r.a=s+A.Lh(a) +if(a.b)s=r.a=s+"Z" +return s.charCodeAt(0)==0?s:s}, +cyp(a){var s=B.c.c2(a,"/") +if(s===-1)throw A.d(A.bM("Invalid period definition, no / separator found in "+a,null,null)) +return s}, +daY(a){var s=B.c.b0(a,A.cyp(a)+1) +if(B.c.aC(s,"P"))return null +return A.as8(s)}, +daX(a){var s=B.c.b0(a,A.cyp(a)+1) +if(!B.c.aC(s,"P"))return null +return A.cJ9(s)}, +cKN(a){var s +A.as8(B.c.R(a,0,A.cyp(a))) +s=A.daX(a) +A.daY(a) +return new A.Tu(s)}, +RU(a,b,c,d){var s,r,q,p=B.c.hj(a,c,b) +if(p!==-1)s=d!==-1&&p>d +else s=!0 +if(s)return new A.aO2(0,b) +r=B.c.R(a,b,p) +if(B.c.p(r,","))r=A.cj(r,",",".") +q=A.cY(r,null) +if(q==null)throw A.d(A.bM("Invalid duration: "+a+" (for part ["+r+"])",null,null)) +return new A.aO2(q,p+1)}, +cJ9(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d +if(!(B.c.aC(a,"P")||B.c.aC(a,"-P")))throw A.d(A.bM("duration content needs to start with P, "+a+" is invalid",null,null)) +s=B.c.aC(a,"-") +if(s)a=B.c.b0(a,1) +if(!B.c.aC(a,"PT")){r=B.c.c2(a,"T") +q=A.RU(a,1,"Y",-1) +p=q.a +o=A.RU(a,q.b,"M",r) +n=o.a +m=A.RU(a,o.b,"W",-1) +l=m.a +k=A.RU(a,m.b,"D",-1) +j=k.b +i=k.a}else{p=0 +n=0 +l=0 +i=0 +j=1}if(j0)b.a+=B.c.R(s,0,l) +b.a+=h.$3$isHeader(B.c.R(p,o+3,p.length-2),k,!0) +s=B.c.b0(s,l+q[0].length)}if(b.a.length===0)if(B.c.aC(s,"=?")){q=$.cWM() +q=q.b.test(s)}else q=!1 +else q=!1 +if(q)return +b.a+=s}, +d9C(a){var s,r,q,p=$.cuk().im(a) +if(p==null)return B.akl +s=p.b[0] +r=s==null +q=r?null:B.c.p(s,"?B?") +if(q==null)r=r?null:B.c.p(s,"?b?") +else r=q +return r===!0?B.akk:B.akj}, +cJF(a,b){var s=b==null?"none":b,r=$.cWL().i(0,s.toLowerCase()) +if(r==null){A.eP("Error: no binary decoder found for ["+s+"].") +return new Uint8Array(A.f1(new A.e0(a)))}return r.$1(a)}, +d9A(a,b,c){var s,r,q,p,o,n=null,m=b==null +if(m&&c==null){s=B.qw.yF(0,a,!0) +if(B.c.p(s,"\ufffd")){r=A.dp(a,0,n) +if(!B.c.p(r,"\ufffd"))return r}return s}q=m?n:b.toLowerCase() +if(q==null)q="8bit" +if(q==="8bit"||q==="7bit"||q==="binary"){p=c==null?"utf8":c +m=$.cuj().i(0,p.toLowerCase()) +o=m==null?n:m.$0() +if(o==null){A.eP("Error: no encoding found for charset ["+p+"].") +return B.qw.yF(0,a,!0)}return o.hF(0,a)}return A.cJE(A.dp(a,0,n),b,c)}, +cJE(a,b,c){var s,r,q,p=b==null?"none":b,o=$.cCC().i(0,p.toLowerCase()) +if(o==null){A.eP("Error: no decoder found for content-transfer-encoding ["+p+"].") +return a}s=c==null?"utf8":c +r=$.cuj().i(0,s.toLowerCase()) +q=r==null?null:r.$0() +if(q==null){A.eP("Error: no encoding found for charset ["+s+"].") +return a}return o.$3$isHeader(a,q,!1)}, +d9B(a){return new Uint8Array(A.f1(new A.e0(a)))}, +d9z(a){return new Uint8Array(A.f1(new A.e0(A.cj(a,"\r\n",""))))}, +cJG(a,b,c){return a}, +a3T:function a3T(a,b){this.a=a +this.b=b}, +bq3:function bq3(){}, +bq4:function bq4(){}, +bq5:function bq5(){}, +bq6:function bq6(){}, +bqh:function bqh(){}, +bqs:function bqs(){}, +bqD:function bqD(){}, +bqO:function bqO(){}, +bqZ:function bqZ(){}, +br7:function br7(){}, +br8:function br8(){}, +br9:function br9(){}, +bq7:function bq7(){}, +bq8:function bq8(){}, +bq9:function bq9(){}, +bqa:function bqa(){}, +bqb:function bqb(){}, +bqc:function bqc(){}, +bqd:function bqd(){}, +bqe:function bqe(){}, +bqf:function bqf(){}, +bqg:function bqg(){}, +bqi:function bqi(){}, +bqj:function bqj(){}, +bqk:function bqk(){}, +bql:function bql(){}, +bqm:function bqm(){}, +bqn:function bqn(){}, +bqo:function bqo(){}, +bqp:function bqp(){}, +bqq:function bqq(){}, +bqr:function bqr(){}, +bqt:function bqt(){}, +bqu:function bqu(){}, +bqv:function bqv(){}, +bqw:function bqw(){}, +bqx:function bqx(){}, +bqy:function bqy(){}, +bqz:function bqz(){}, +bqA:function bqA(){}, +bqB:function bqB(){}, +bqC:function bqC(){}, +bqE:function bqE(){}, +bqF:function bqF(){}, +bqG:function bqG(){}, +bqH:function bqH(){}, +bqI:function bqI(){}, +bqJ:function bqJ(){}, +bqK:function bqK(){}, +bqL:function bqL(){}, +bqM:function bqM(){}, +bqN:function bqN(){}, +bqP:function bqP(){}, +bqQ:function bqQ(){}, +bqR:function bqR(){}, +bqS:function bqS(){}, +bqT:function bqT(){}, +bqU:function bqU(){}, +bqV:function bqV(){}, +bqW:function bqW(){}, +bqX:function bqX(){}, +bqY:function bqY(){}, +br_:function br_(){}, +br0:function br0(){}, +br1:function br1(){}, +br2:function br2(){}, +br3:function br3(){}, +br4:function br4(){}, +br5:function br5(){}, +br6:function br6(){}, +btu:function btu(){}, +aCk:function aCk(){}, +za(a){return new A.awa(a)}, +anW:function anW(){}, +awa:function awa(a){this.a=a}, +d2x(a){return new A.tB(a)}, +tB:function tB(a){this.a=a}, +bn9:function bn9(a){this.f=this.d=null +this.r=a}, +bna:function bna(a){this.a=a}, +avW:function avW(a,b,c,d,e,f){var _=this +_.as=$ +_.at=a +_.ax=0 +_.ay=null +_.ch=b +_.CW=null +_.cx=$ +_.cy=!1 +_.dx=c +_.a=d +_.b=e +_.c=$ +_.f=_.d=!1 +_.w=_.r=$ +_.x=!1 +_.y=f +_.z=$ +_.Q=null}, +bn6:function bn6(){}, +bnc:function bnc(){}, +bn7:function bn7(){}, +bn5:function bn5(){}, +RD:function RD(a){this.b=a}, +cJH(a,b,c,d,e){var s=B.mC.ayp(a),r=B.mC.ayp(b) +if(!B.b.p(d,B.wa)&&s.toLowerCase()==="inbox")d.push(B.wa) +return new A.Ka(b,r,s,d)}, +d9E(a,b){var s=B.c.na(a,b) +if(s===-1)return B.mC.az2(a) +else return B.c.R(a,0,s)+b+B.mC.az2(B.c.b0(a,s+b.length))}, +jM:function jM(a,b){this.a=a +this.b=b}, +Ka:function Ka(a,b,c,d){var _=this +_.b=a +_.c=b +_.e=c +_.r=0 +_.as=null +_.at=d}, +a5O:function a5O(a,b){var _=this +_.a=a +_.b=b +_.c=!1 +_.e=null +_.f=!1}, +a8t:function a8t(a,b){this.a=a +this.b=b}, +Un:function Un(a){var _=this +_.c=_.b=_.a=null +_.$ti=a}, +a31:function a31(a){this.c=a}, +d9x(a,b,c){if(b.length===0)return new A.E5(c,a) +if(a.length===0)return new A.E5(c,b) +return new A.E5(c,b+"@"+a)}, +E5:function E5(a,b){this.a=a +this.b=b}, +cK_(a){var s,r,q=a.toLowerCase(),p=B.c.c2(q,"/") +if(p!==-1){s=B.QK.i(0,B.c.R(q,0,p)) +if(s==null)s=B.Ru +r=B.aZo.i(0,q) +return new A.a5G(q,s,r==null?B.Rs:r)}else{s=B.QK.i(0,q) +return new A.a5G(q,s==null?B.Ru:s,B.Rs)}}, +ql:function ql(a,b){this.a=a +this.b=b}, +cl:function cl(a,b){this.a=a +this.b=b}, +a5G:function a5G(a,b,c){this.a=a +this.b=b +this.c=c}, +SQ:function SQ(){}, +bt4:function bt4(a){this.a=a}, +ME:function ME(a,b){var _=this +_.x=a +_.y=$ +_.a=b +_.c=_.b=null +_.e=!1 +_.f=null +_.r=0}, +y1:function y1(a,b){var _=this +_.x=a +_.y=null +_.z=$ +_.a=b +_.c=_.b=null +_.e=!1 +_.f=null +_.r=0}, +cy1(a,b){var s,r,q,p +if(!a.d)a.kA(0) +if(a.gbB_().c===b){s=a.e +if(s==null){s=a.b +s=a.e=s==null?null:s.BU(a.td(),a.r9("content-transfer-encoding"))}return s}s=a.c +if(s!=null)for(r=s.length,q=0;q3&&a[s-1]==="}"){r=B.c.wt(a,"{",s-2) +q=s-1 +p=q-1 +if(a[p]==="+")q=p +s=A.cY(B.c.R(a,r+1,q),null) +o.c=s +if(s!=null)o.b=B.c.R(a,0,r>0&&a[r-1]===" "?r-1:r)}return o}, +RE:function RE(a,b){var _=this +_.a=a +_.c=_.b=null +_.d=b}, +bn8:function bn8(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +bp_:function bp_(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bp0:function bp0(){}, +KT(a,b,c){var s=B.c.hj(a,c,b) +if(s===-1)return-1 +return A.cY(B.c.R(a,b,s),null)}, +bwH(a,b,c,d){var s,r,q,p,o,n=A.R(new A.ou(a),!0,t.Dc.h("B.E")),m=new A.ou(d).ga2(0),l=new A.ou(c).ga2(0),k=A.a([],t.s) +for(s=b,r=s,q=!1,p=!1;s>>0}return(p.a^J.bn(p.b))>>>0}a=p.a=a+J.ab(s)&536870911 +a=p.a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +cTa(a,b){return a.k(0)+"("+new A.O(b,new A.csV(),A.X(b).h("O<1,f>")).bQ(0,", ")+")"}, +cos:function cos(){}, +cot:function cot(a){this.a=a}, +cou:function cou(){}, +csV:function csV(){}, +d6A(){return new A.atB(new A.h1(null,null,t.zr))}, +atB:function atB(a){this.a=a}, +bhh:function bhh(a){this.a=a}, +b9H:function b9H(){}, +cbz:function cbz(){}, +a5H:function a5H(a,b){this.a=a +this.b=b}, +brF:function brF(a){this.a=a}, +brG:function brG(a){this.a=a}, +brH:function brH(a){this.a=a}, +brI:function brI(a,b){this.a=a +this.b=b}, +aRp:function aRp(){}, +dhW(a,b,c){var s,r,q,p,o={},n=A.aF("node") +o.a=null +try{n.b=a.gbg5()}catch(r){q=A.ag(r) +if(t.VI.b(q)){s=q +o.a=s}else throw r}p=A.cx1(new A.c_r(o,a,n,b),t.jL) +return new A.aeG(new A.aI(new A.ak($.at,t.W),t.gR),p,c)}, +a5I:function a5I(a,b){this.a=a +this.b=b}, +brQ:function brQ(a){this.a=a}, +brR:function brR(a){this.a=a}, +brP:function brP(a){this.a=a}, +aeG:function aeG(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.d=!1 +_.e=c}, +c_r:function c_r(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c_t:function c_t(a){this.a=a}, +c_v:function c_v(a){this.a=a}, +c_u:function c_u(a){this.a=a}, +c_w:function c_w(a){this.a=a}, +c_x:function c_x(a){this.a=a}, +c_s:function c_s(a){this.a=a}, +brJ:function brJ(a,b){this.d=a +this.f=b}, +dkZ(a,b){}, +c5Z:function c5Z(a,b,c,d){var _=this +_.b=_.a=null +_.c=a +_.d=b +_.e=c +_.f=d}, +c60:function c60(a,b,c){this.a=a +this.b=b +this.c=c}, +c6_:function c6_(a,b,c){this.a=a +this.b=b +this.c=c}, +a5J:function a5J(){}, +brK:function brK(a){this.a=a}, +brN:function brN(a){this.a=a}, +brO:function brO(a){this.a=a}, +brL:function brL(a){this.a=a}, +brM:function brM(a){this.a=a}, +cGR(a){var s,r=new A.kT(A.N(t.N,t.S5),a) +if(a==null){r.gabq() +s=!0}else s=!1 +if(s)A.C(B.Di) +r.a1c(a) +return r}, +d6S(a){var s=new A.q7(new Uint8Array(0),a) +s.a1c(a) +return s}, +l0:function l0(){}, +U5:function U5(){}, +kT:function kT(a,b){var _=this +_.r=a +_.d=_.c=_.b=$ +_.e=1911 +_.a=b}, +aDH:function aDH(a,b,c){var _=this +_.as=a +_.r=b +_.d=_.c=_.b=$ +_.e=1911 +_.a=c}, +q7:function q7(a,b){var _=this +_.r=a +_.d=_.c=_.b=$ +_.e=1911 +_.a=b}, +yL:function yL(a){this.a=a}, +bi2:function bi2(){}, +ca3:function ca3(){}, +dpy(a,b){var s=a.gbl(a) +if(s!==B.hA)throw A.d(A.csZ(A.ax(b.$0())))}, +cBc(a,b,c){if(a!==b)switch(a){case B.hA:throw A.d(A.csZ(A.ax(c.$0()))) +case B.iW:throw A.d(A.cSU(A.ax(c.$0()))) +case B.ns:throw A.d(A.dt4(A.ax(c.$0()))) +default:throw A.d(A.pV(null))}}, +dtc(a){return a.length===0}, +ctr(a,b,c,d){var s,r,q=A.b9(t.C5),p=c!=null,o=a +while(!0){o.gbl(o) +if(!!1)break +if(!q.B(0,o))throw A.d(A.cQs(A.ax(b.$0()),"Too many levels of symbolic links",A.d6u())) +if(p){s=o.gbwP() +if(s.geh(s).bJQ(o.gbGF(o)))B.b.V(c) +else if(c.length!==0)c.pop() +s=o.gbGF(o) +r=o.gbwP() +B.b.L(c,s.pS(0,r.geh(r).gxi()))}o=o.bIV(new A.cts(d))}return o}, +cts:function cts(a){this.a=a}, +cBP(a){var s="No such file or directory" +return new A.n0(s,a,new A.zC(s,A.d6v()))}, +csZ(a){var s="Not a directory" +return new A.n0(s,a,new A.zC(s,A.d6w()))}, +cSU(a){var s="Is a directory" +return new A.n0(s,a,new A.zC(s,A.d6t()))}, +dt4(a){var s="Invalid argument" +return new A.n0(s,a,new A.zC(s,A.d6s()))}, +cQs(a,b,c){return new A.n0(b,a,new A.zC(b,c))}, +bdw:function bdw(){}, +d6s(){return A.a2J(new A.bh9())}, +d6t(){return A.a2J(new A.bha())}, +d6u(){return A.a2J(new A.bhb())}, +d6v(){return A.a2J(new A.bhc())}, +d6w(){return A.a2J(new A.bhd())}, +d6x(){return A.a2J(new A.bhe())}, +a2J(a){return a.$1(B.a5X)}, +bh9:function bh9(){}, +bha:function bha(){}, +bhb:function bhb(){}, +bhc:function bhc(){}, +bhd:function bhd(){}, +bhe:function bhe(){}, +aR_:function aR_(){}, +bi0:function bi0(){}, +d6U(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.l8(0,"",new A.bhT(),t.N)}}, +bhS:function bhS(){this.a=$}, +bhW:function bhW(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}, +bhX:function bhX(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bhY:function bhY(a,b,c){this.a=a +this.b=b +this.c=c}, +bhZ:function bhZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bhU:function bhU(a,b){this.a=a +this.b=b}, +bhV:function bhV(a,b){this.a=a +this.b=b}, +bhT:function bhT(){}, +d6V(){var s,r +if($.Oz()||$.cX6()){s=$.amh() +r=new A.bhL() +$.GR().n(0,r,s) +return r}else if($.cCJ()){s=$.amh() +r=new A.bhM() +$.GR().n(0,r,s) +return r}else if($.ami())return A.ds3() +else if($.cCK()){s=$.amh() +r=new A.bhN() +$.GR().n(0,r,s) +return r}else throw A.d(A.bT('The current platform "'+A.r($.OA())+'" is not supported by this plugin.'))}, +bi3:function bi3(a,b){this.a=a +this.b=b}, +bhK:function bhK(){}, +bhL:function bhL(){}, +bhN:function bhN(){}, +bhP:function bhP(){}, +bhQ:function bhQ(){}, +bhR:function bhR(){}, +bhO:function bhO(){}, +Dl:function Dl(a){this.a=a}, +d4t(a){a=a.toLowerCase() +if(B.c.eV(a,"kdialog"))return new A.bo8() +else if(B.c.eV(a,"qarma")||B.c.eV(a,"zenity"))return new A.bz3() +throw A.d(A.bT("DialogHandler for executable "+a+" has not been implemented"))}, +yy(a){return new A.O(A.a(a.split(""),t.s),new A.bcW(),t.a4).jG(0)}, +bcW:function bcW(){}, +bhM:function bhM(){}, +bo8:function bo8(){}, +bo9:function bo9(){}, +boa:function boa(){}, +bz3:function bz3(){}, +bz4:function bz4(){}, +qx:function qx(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +cSu(a,b,c){var s=A.X(a),r=s.h("fW<1,a8>") +return A.ma(A.R(new A.fW(new A.b1(a,new A.cs7(),s.h("b1<1>")),new A.cs8(!1,!1),r),!0,r.h("B.E")),!1,t.hD)}, +crA(a,b,c){var s=0,r=A.p(t.hD),q,p,o +var $async$crA=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:p=a.a +o=A.ub(p,$.GS().a).ga7t() +q=new A.qx(p,o,b,c,a.Wm()?a.bzV():0,null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$crA,r)}, +am9(a,b){var s=0,r=A.p(t.R) +var $async$am9=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=2 +return A.i(A.dbM(a,b),$async$am9) +case 2:return A.n(null,r)}}) +return A.o($async$am9,r)}, +Zj(a){var s=0,r=A.p(t.N),q,p +var $async$Zj=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(A.am9("which",A.a([a],t.s)),$async$Zj) +case 3:p=c +if(p==null)throw A.d(A.dA("Couldn't find the executable "+a+" in the path.")) +q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Zj,r)}, +cs7:function cs7(){}, +cs8:function cs8(a,b){this.a=a +this.b=b}, +c0d:function c0d(){}, +c0e:function c0e(){}, +c0f:function c0f(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +c0g:function c0g(a,b,c){this.a=a +this.b=b +this.c=c}, +c0h:function c0h(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +c0i:function c0i(a,b,c){this.a=a +this.b=b +this.c=c}, +d2_(a){return new A.a_y(a,B.H,B.cC,null,null)}, +a_y:function a_y(a,b,c,d,e){var _=this +_.r=a +_.c=b +_.d=c +_.e=d +_.a=e}, +acS:function acS(a,b,c,d,e){var _=this +_.cx=_.CW=null +_.cy=a +_.db=b +_.e=_.d=$ +_.fz$=c +_.ca$=d +_.a=null +_.b=e +_.c=null}, +bSq:function bSq(a,b){this.a=a +this.b=b}, +bSr:function bSr(a){this.a=a}, +cvm(a,b,c,d,e,f,g,h,i,a0,a1,a2,a3){var s=c==null?B.aNr:c,r=i==null?16:i,q=a==null?B.a1D:a,p=a2==null?B.big:a2,o=g==null?B.ajy:g,n=a0==null?0/0:a0,m=a1==null?0/0:a1,l=h,k=e==null?0:e,j=b==null?B.D:b +return new A.vo(s,r,q,d,l,a3,p,0,1,0,m,n,k,B.a4J,j,o,f,d)}, +cvo(a,b,c,d,e){var s=a==null?B.aNq:a,r=b==null?2:b,q=d==null?B.eE:d +return new A.hD(e,c===!0,s,r,q)}, +d20(a,b,c){var s=a.a +s=B.e.aF(s+(b.a-s)*c) +return A.cvo(A.ve(a.c,b.c,c,A.dp_(),t.vs),A.av(a.d,b.d,c),!1,A.ve(a.e,b.e,c,A.csO(),t.S),s)}, +cF4(a,b,c,d,e,f,g,h,i,j){var s,r,q,p,o,n=null,m=f==null?0:f +if(e==null)s=B.lo +else s=e +r=j==null +q=r?8:j +p=$.kB() +p=p.bBx(c,r?8:j) +o=$.kB() +o=o.bBy(d,r?8:j) +r=a==null?A.cF2(n,n,n,n,n):a +return new A.k8(m,i,s,g,q,p,b,o,r,h==null?B.aNp:h)}, +d21(a,b,c){var s,r,q,p,o=A.ai(a.c,b.c,c),n=A.av(a.e,b.e,c),m=A.rf(a.f,b.f,c),l=A.ve(a.r,b.r,c,A.csO(),t.S),k=A.c8(a.w,b.w,c),j=A.av(a.a,b.a,c),i=A.av(a.b,b.b,c) +i.toString +s=a.x +r=b.x +q=A.av(s.b,r.b,c) +p=A.av(s.c,r.c,c) +r=A.ai(s.d,r.d,c) +return A.cF4(A.cF2(r,q,null,!1,p),l,m,k,o,j,null,A.ve(a.y,b.y,c,A.dp0(),t.Gu),i,n)}, +d22(a,b,c){var s,r,q=A.av(a.a,b.a,c) +q.toString +s=A.av(a.b,b.b,c) +s.toString +r=A.ai(a.c,b.c,c) +r.toString +return new A.nQ(q,s,r,A.c8(a.d,b.d,c))}, +cF2(a,b,c,d,e){var s,r=b==null?0:b,q=e==null?0:e +if(a==null)s=B.js +else s=a +return new A.anC(d===!0,r,q,s,c)}, +cF5(a,b,c,d,e,f,g,h){var s=h==null?A.cF6(null,null):h,r=g==null?B.iV:g +return new A.anG(s,r,a===!0,c!==!1,b!==!1,f,e,d)}, +cF6(a,b){var s=b==null?A.dp2():b,r=a==null?A.dp1():a +return new A.anH(4,B.u5,16,B.ajz,0,120,s,!1,!1,B.Zq,0,B.G,r)}, +drw(a,b,c,d){var s=null,r=A.dH(s,s,c.c,s,s,s,s,s,s,s,s,14,s,s,B.cc,s,s,!0,s,s,s,s,s,s,s,s) +return new A.y0(B.e.k(c.b),r)}, +drv(a){return A.Y(255,82,106,118)}, +vo:function vo(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.ch=a +_.CW=b +_.cx=c +_.cy=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 +_.a=q +_.b=r}, +anE:function anE(a,b){this.a=a +this.b=b}, +hD:function hD(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b5F:function b5F(){}, +b5G:function b5G(){}, +k8:function k8(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}, +nQ:function nQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +anC:function anC(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +anG:function anG(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.a=e +_.b=f +_.c=g +_.d=h}, +aGS:function aGS(a,b){this.a=a +this.b=b}, +anH:function anH(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}, +y0:function y0(a,b){this.a=a +this.b=b}, +a_z:function a_z(a){this.a=a}, +anI:function anI(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g +_.b=h}, +Ho:function Ho(a,b){this.a=a +this.b=b}, +aL7:function aL7(){}, +aLa:function aLa(){}, +aLb:function aLb(){}, +aLd:function aLd(){}, +aLe:function aLe(){}, +aLf:function aLf(){}, +aLg:function aLg(){}, +aLh:function aLh(){}, +aLi:function aLi(){}, +b5H:function b5H(a){this.a=a}, +b5I:function b5I(){}, +BY:function BY(a,b,c){this.a=a +this.b=b +this.c=c}, +aLc:function aLc(){}, +b5J:function b5J(){var _=this +_.x=_.w=_.r=_.f=$ +_.y=null +_.e=_.d=_.c=_.b=_.a=$}, +b5K:function b5K(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b5L:function b5L(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +av_:function av_(a){this.b=a}, +anF:function anF(a,b,c){this.d=a +this.e=b +this.a=c}, +aCH:function aCH(a,b,c,d,e,f,g){var _=this +_.hT=a +_.jm=b +_.ha=c +_.jn=d +_.D=e +_.ag=_.a4=_.N=null +_.aq=f +_.aT=_.aW=_.U=_.aJ=$ +_.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}, +dry(a,b){var s=null +return A.a9A(b.w,A.bv(b.r,s,s,s,s,s,s,s,s,s,s,s,s,s,s))}, +b5n(a,b,c){var s,r,q,p=A.av(a.a,b.a,c) +p.toString +s=a.c +r=b.c +q=A.av(s.c,r.c,c) +q.toString +return new A.Hn(p,b.b,new A.Mf(r.a,r.b,q,A.av(s.d,r.d,c)),!0)}, +dvO(a){return!0}, +drz(a){return B.ajK}, +d71(a,b,c,d){var s +if(a==null)s=B.B +else s=a +return new A.Do(s,c,d,b)}, +d82(a,b,c){var s,r,q,p=A.av(a.a,b.a,c) +p.toString +s=A.av(a.b,b.b,c) +s.toString +r=A.ai(a.c,b.c,c) +q=A.Rn(a.d,b.d,c) +if(r==null)r=B.r +return new A.ru(p,s,r,q)}, +dgk(a,b,c){var s,r,q,p=A.av(a.a,b.a,c) +p.toString +s=A.av(a.b,b.b,c) +s.toString +r=A.ai(a.c,b.c,c) +q=A.Rn(a.d,b.d,c) +if(r==null)r=B.r +return new A.ta(p,s,r,q)}, +cIK(a,b,c,d,e,f,g,h,i){var s +if(a==null)s=B.B +else s=a +return new A.pe(i,d,f,e,g,s,c,h,b)}, +d81(a,b,c){var s,r,q,p,o=A.av(a.e,b.e,c) +o.toString +s=a.w +r=b.w +q=A.vO(s.b,r.b,c) +q.toString +p=A.d_(s.c,r.c,c) +s=A.b3r(s.d,r.d,c) +s.toString +p=A.cIL(s,r.e,r.f,q,r.a,p) +r=A.ai(a.a,b.a,c) +q=A.Rn(a.b,b.b,c) +s=A.av(a.c,b.c,c) +s.toString +return A.cIK(r,A.ve(a.d,b.d,c,A.csO(),t.S),q,b.f,p,b.r,b.x,s,o)}, +dgj(a,b,c){var s,r,q,p,o,n=A.av(a.e,b.e,c) +n.toString +s=a.w +r=b.w +q=A.vO(s.b,r.b,c) +q.toString +p=A.d_(s.c,r.c,c) +s=A.b3r(s.d,r.d,c) +s.toString +p=A.dgh(s,r.e,r.f,q,r.a,p) +r=A.ai(a.a,b.a,c) +q=A.Rn(a.b,b.b,c) +s=A.av(a.c,b.c,c) +s.toString +o=A.ve(a.d,b.d,c,A.csO(),t.S) +if(r==null)r=B.B +return new A.pE(n,b.f,b.r,p,b.x,r,q,s,o)}, +cIL(a,b,c,d,e,f){return new A.avr(c,e,d,f,a,b)}, +d80(a){return B.e.aZ(a.e,1)}, +dgh(a,b,c,d,e,f){return new A.aHx(c,e,d,f,a,b)}, +dgi(a){return B.e.aZ(a.e,1)}, +anv:function anv(){}, +OV:function OV(a,b){this.a=a +this.b=b}, +AC:function AC(a,b){this.r=a +this.w=b}, +Mf:function Mf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aEx:function aEx(){}, +Hn:function Hn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a3g:function a3g(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +au7:function au7(a,b){this.a=a +this.b=b}, +a39:function a39(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}, +Do:function Do(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aGV:function aGV(){}, +a7y:function a7y(a,b){this.a=a +this.b=b}, +ru:function ru(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ta:function ta(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +pe:function pe(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.a=f +_.b=g +_.c=h +_.d=i}, +pE:function pE(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.a=f +_.b=g +_.c=h +_.d=i}, +avr:function avr(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +aHx:function aHx(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +QV:function QV(a,b,c){this.a=a +this.b=b +this.c=c}, +aL1:function aL1(){}, +aL5:function aL5(){}, +aOL:function aOL(){}, +aP6:function aP6(){}, +aP8:function aP8(){}, +aP9:function aP9(){}, +aPa:function aPa(){}, +aPT:function aPT(){}, +aPS:function aPS(){}, +aPV:function aPV(){}, +aU4:function aU4(){}, +aWA:function aWA(){}, +aWB:function aWB(){}, +aYM:function aYM(){}, +aZy:function aZy(){}, +aZx:function aZx(){}, +aZA:function aZA(){}, +b5j:function b5j(){}, +a_t:function a_t(){}, +anw:function anw(a,b,c){this.c=a +this.d=b +this.a=c}, +b5l:function b5l(a){this.a=a}, +b5k:function b5k(a){this.a=a}, +a9A(a,b){return new A.Me(a,b,null)}, +Me:function Me(a,b,c){this.c=a +this.e=b +this.a=c}, +aiD:function aiD(a,b){var _=this +_.d=a +_.a=_.e=null +_.b=b +_.c=null}, +dds(a,b,c){var s=A.X(c),r=s.h("O<1,nO>") +s=s.h("O<1,c>") +return new A.aEy(b,a,A.R(new A.O(c,new A.bFS(),r),!0,r.h("aa.E")),A.R(new A.O(c,new A.bFT(),s),!0,s.h("aa.E")),null)}, +aEy:function aEy(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +bFS:function bFS(){}, +bFT:function bFT(){}, +anx:function anx(a,b,c,d,e,f,g,h,i,j){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.wc$=e +_.MQ$=f +_.cT$=g +_.Y$=h +_.d7$=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}, +c3n:function c3n(a,b){this.a=a +this.b=b}, +b5m:function b5m(){}, +nO:function nO(a,b){this.a=a +this.b=b}, +tv:function tv(a,b){this.a=a +this.b=b}, +aL2:function aL2(){}, +aL3:function aL3(){}, +aL4:function aL4(){}, +acP:function acP(){}, +Mg:function Mg(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +bFU:function bFU(a){this.a=a}, +bFV:function bFV(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bFW:function bFW(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bic(a,b){var s=a==null?A.P7(B.B,1):a +return new A.atY(b!==!1,s)}, +anP:function anP(){}, +atY:function atY(a,b){this.a=a +this.b=b}, +a3h:function a3h(){}, +atZ:function atZ(){}, +b67:function b67(){}, +bhw:function bhw(a,b){this.a=a +this.b=b}, +aLl:function aLl(){}, +aP4:function aP4(){}, +aP5:function aP5(){}, +aPb:function aPb(){}, +a_B:function a_B(){}, +zH:function zH(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +jK:function jK(){}, +au2:function au2(a){this.a=a}, +au3:function au3(a){this.a=a}, +au4:function au4(a){this.a=a}, +a3b:function a3b(){}, +a3c:function a3c(){}, +au8:function au8(a){this.a=a}, +a3e:function a3e(){}, +a3f:function a3f(a){this.a=a}, +au1:function au1(a){this.a=a}, +au0:function au0(a){this.a=a}, +a3a:function a3a(a){this.a=a}, +au5:function au5(a){this.a=a}, +au6:function au6(a){this.a=a}, +a3d:function a3d(a){this.a=a}, +Ua:function Ua(){}, +bAd:function bAd(a){this.a=a}, +bAe:function bAe(a){this.a=a}, +bAf:function bAf(a){this.a=a}, +bAg:function bAg(a){this.a=a}, +bAh:function bAh(a){this.a=a}, +bAi:function bAi(a){this.a=a}, +bAj:function bAj(a){this.a=a}, +bAk:function bAk(a){this.a=a}, +bAl:function bAl(a){this.a=a}, +bAm:function bAm(a){this.a=a}, +bAn:function bAn(a){this.a=a}, +bAo:function bAo(a){this.a=a}, +bAp:function bAp(a){this.a=a}, +awW:function awW(a,b){this.a=a +this.b=b}, +boA:function boA(a,b){this.a=a +this.b=b}, +au_:function au_(){}, +aP7:function aP7(){}, +a76:function a76(a,b,c,d,e){var _=this +_.r=a +_.c=b +_.d=c +_.e=d +_.a=e}, +aT2:function aT2(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +c9w:function c9w(a){this.a=a}, +c9v:function c9v(){}, +c9u:function c9u(a){this.a=a}, +cKQ(a,b,c,d,e,f,g){var s,r,q,p +if(e==null)s=null +else{s=A.X(e).h("b1<1>") +s=A.R(new A.b1(e,new A.bxb(),s),!0,s.h("B.E"))}if(s==null)s=B.aNo +r=b==null?B.D:b +q=f==null?2:f +p=g==null?0:g +return new A.ww(s,c,r,q,p,d,a,d)}, +cKR(a,b,c,d,e,f,g,h,i,j,k){var s=k==null?10:k,r=d==null?B.lo:d,q=f==null?40:f,p=c==null?B.ru:c,o=i==null?0.5:i,n=a==null?0.5:a +return new A.ir(s,r,e,q,g!==!1,j,h,p,b,o,n)}, +db2(a,b,c){var s=A.av(a.a,b.a,c),r=A.ai(a.b,b.b,c),q=A.Rn(a.c,b.c,c),p=A.av(a.d,b.d,c),o=A.d_(a.f,b.f,c),n=A.c8(a.w,b.w,c),m=A.av(a.y,b.y,c) +return A.cKR(A.av(a.z,b.z,c),b.x,n,r,q,p,!0,b.r,m,o,s)}, +db3(a){return new A.aBn(!0,a,null,null)}, +ww:function ww(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g +_.b=h}, +bxb:function bxb(){}, +bxc:function bxc(){}, +bxd:function bxd(){}, +ir:function ir(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}, +aBn:function aBn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aBo:function aBo(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a77:function a77(a){this.a=a}, +KY:function KY(a,b){this.a=a +this.b=b}, +aT1:function aT1(){}, +aT4:function aT4(){}, +aT5:function aT5(){}, +db1(a){var s,r=null,q={},p=t.C,o=A.aK(a.length,A.bB(r,r,B.i,r,r,r,r,r,r,r,r,r,r,r),!1,p) +q.a=!0 +s=new A.l_(a,A.X(a).h("l_<1>")) +s.gep(s).aE(0,new A.bxj(q,o)) +if(q.a){q=J.JF(0,p) +return q}return o}, +bxj:function bxj(a,b){this.a=a +this.b=b}, +bxe:function bxe(){var _=this +_.d=_.c=_.b=_.a=$}, +bxg:function bxg(a){this.a=a}, +bxh:function bxh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bxf:function bxf(){}, +bxi:function bxi(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aBm:function aBm(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aD0:function aD0(a,b,c,d,e,f,g,h,i,j){var _=this +_.hT=a +_.jm=b +_.ha=c +_.jn=d +_.cT$=e +_.Y$=f +_.d7$=g +_.D=h +_.ag=_.a4=_.N=null +_.aq=i +_.aT=_.aW=_.U=_.aJ=$ +_.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}, +aV5:function aV5(){}, +aV6:function aV6(){}, +cvn(a,b){var s,r,q,p,o,n,m,l={},k=a.ch,j=A.aK(k.length,0,!1,t.i),i=A.X(k),h=new A.O(k,new A.b5z(),i.h("O<1,U>")).i6(0,new A.b5A()),g=b-h,f=new A.b5D(g,a,j) +switch(a.cx.a){case 0:for(s=a.CW,r=0,q=0;qb)f.$0() +break +case 1:s=a.CW +n=b-(h+s*(k.length-1)) +for(r=0,q=0;qb)f.$0() +break +case 2:s=a.CW +n=(b-(h+s*(k.length-1)))/2 +for(r=0,q=0;qb)f.$0() +break +case 5:m=k.length +l.a=0 +new A.l_(k,i.h("l_<1>")).aE(0,new A.b5B(l,g/(m-1),j)) +break +case 4:m=k.length +l.b=0 +new A.l_(k,i.h("l_<1>")).aE(0,new A.b5C(l,g/(m*2),j)) +break +case 3:f.$0() +break}return j}, +b5z:function b5z(){}, +b5A:function b5A(){}, +b5D:function b5D(a,b,c){this.a=a +this.b=b +this.c=c}, +b5E:function b5E(a,b,c){this.a=a +this.b=b +this.c=c}, +b5B:function b5B(a,b,c){this.a=a +this.b=b +this.c=c}, +b5C:function b5C(a,b,c){this.a=a +this.b=b +this.c=c}, +cGo(a,b){var s +if(b!=null){s=A.X(b).h("O<1,U>") +return A.dro(a,new A.aoW(A.R(new A.O(b,new A.bbu(),s),!0,s.h("aa.E")),t.me))}else return a}, +bbu:function bbu(){}, +aoA:function aoA(a,b){this.a=a +this.b=b}, +a51:function a51(a,b){this.a=a +this.$ti=b}, +aR3:function aR3(){}, +dro(a,b){var s,r,q,p,o,n,m,l=$.ar().dc() +for(s=a.axg(),s=s.gaz(s),r=b.a;s.t();){q=s.gK(s) +q.gA(q) +for(p=0,o=!0;p=r.length)n=b.b=0 +b.b=n+1 +m=r[n] +if(o)l.Lr(0,q.azi(p,p+m),B.h) +p+=m +o=!o}}return l}, +aoW:function aoW(a,b){this.a=a +this.b=0 +this.$ti=b}, +bO0:function bO0(){}, +pU:function pU(a,b){this.a=a +this.b=b}, +cER(a){$.cCw() +return new A.b4d(A.N(t.N,t.vq))}, +b4d:function b4d(a){this.c=a}, +cIW(a){var s=$.cCw() +return new A.bn4(A.N(t.N,t.qZ),s,a)}, +did(a){var s=new A.aQ5(a) +s.aVm(a) +return s}, +bn4:function bn4(a,b,c){this.a=a +this.b=b +this.c=c}, +aQ5:function aQ5(a){this.a=null +this.b=a}, +c1Y:function c1Y(a){this.a=a}, +azj:function azj(a,b){this.a=a +this.$ti=b}, +fN:function fN(a,b){this.a=null +this.b=a +this.$ti=b}, +d2t(){var s,r,q,p,o,n=null,m=new Float64Array(2),l=A.W8(),k=new Float64Array(2) +m=new A.azf(new A.ah(m),l,new A.ah(k),0,n,new A.fN([],t.pr),new A.fN([],t.Pk)) +l=t.SJ +k=A.a([],l) +m.L(0,k) +k=A.W8() +s=new Float64Array(2) +r=new Float64Array(2) +q=new Float64Array(2) +p=new Float64Array(2) +o=new Float64Array(2) +k=new A.aHD(k,new A.ah(s),new A.ah(r),new A.ah(q),new A.ah(p),new A.ah(o),0,n,new A.fN([],t.pr),new A.fN([],t.Pk)) +s=A.d3p(n,n,n) +r=new A.Pn(m,k,s,2147483647,n,new A.fN([],t.pr),new A.fN([],t.Pk)) +r.L(0,A.a([s,m,k],l)) +return r}, +Pn:function Pn(a,b,c,d,e,f,g){var _=this +_.at=a +_.ax=b +_.ay=null +_.ch=c +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=d +_.w=!1 +_.y=e +_.Q=f +_.as=g}, +aHD:function aHD(a,b,c,d,e,f,g,h,i,j){var _=this +_.at=a +_.ch=b +_.CW=c +_.cx=d +_.cy=e +_.db=f +_.dx=null +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=g +_.w=!1 +_.y=h +_.Q=i +_.as=j}, +aHE:function aHE(){}, +bOy:function bOy(a){this.a=a}, +azf:function azf(a,b,c,d,e,f,g){var _=this +_.at=a +_.ax=!1 +_.ay=b +_.ch=c +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=d +_.w=!1 +_.y=e +_.Q=f +_.as=g}, +WG:function WG(){}, +d3p(a,b,c){var s=c==null?0:c +return new A.df(s,b,new A.fN([],t.pr),new A.fN([],t.Pk))}, +df:function df(a,b,c,d){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=a +_.w=!1 +_.y=b +_.Q=c +_.as=d}, +ban:function ban(a){this.a=a}, +bam:function bam(a){this.a=a}, +baj:function baj(){}, +bak:function bak(){}, +bal:function bal(a){this.a=a}, +bai:function bai(a){this.a=a}, +bah:function bah(){}, +d3q(a,b){var s=t.cA,r=A.d3o(new A.baf(),s),q=new A.PT(A.N(t.u,t.Oe),B.a4G) +q.aV0(r,s) +return q}, +cG4(a,b){return A.d3q(a,b)}, +PT:function PT(a,b){var _=this +_.f=a +_.b=_.a=$ +_.c=!0 +_.d=b}, +baf:function baf(){}, +dio(){return new A.Ge(B.qJ)}, +apC:function apC(){}, +bag:function bag(a){this.a=a}, +awT:function awT(a,b){this.a=a +this.b=b}, +XH:function XH(a,b){this.a=a +this.b=b}, +Ge:function Ge(a){this.a=a +this.c=this.b=null}, +dcf(a,b){var s,r=A.a([],t.t),q=J.d1(8,b) +for(s=0;s<8;++s)q[s]=a.$0() +return new A.a7K(a,q,r,b.h("a7K<0>"))}, +a7K:function a7K(a,b,c,d){var _=this +_.a=a +_.d=_.c=_.b=-1 +_.e=b +_.f=c +_.$ti=d}, +bA2:function bA2(a){this.a=a}, +av7:function av7(){}, +yZ:function yZ(){}, +a3P:function a3P(){}, +TE:function TE(){}, +aa0:function aa0(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.k4=a +_.ok=b +_.azB$=c +_.zb$=d +_.azC$=e +_.at=f +_.ax=g +_.ay=h +_.CW=$ +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=i +_.w=!1 +_.y=j +_.Q=k +_.as=l}, +aXa:function aXa(){}, +VL:function VL(){}, +t3:function t3(){}, +a3i:function a3i(a){this.a=a +this.b=$}, +a61:function a61(){}, +a60:function a60(a,b,c,d,e){var _=this +_.at=a +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=b +_.w=!1 +_.y=c +_.Q=d +_.as=e}, +bu1:function bu1(a,b){this.a=a +this.b=b}, +bu_:function bu_(a,b){this.a=a +this.b=b}, +bu2:function bu2(a,b){this.a=a +this.b=b}, +btZ:function btZ(a){this.a=a}, +bu0:function bu0(a){this.a=a}, +azT:function azT(){}, +bhg:function bhg(){}, +So:function So(){}, +aBP:function aBP(){}, +bKw:function bKw(a){this.c=a +this.b=!1}, +cMF(a,b,c){var s,r,q=c.b +if(q==null)q=B.dd +s=c.a +r=new A.ah(new Float64Array(2)) +r.dm(s.a,s.b) +return new A.aFS(a,q,b,r,A.a([],t.Gt))}, +aFS:function aFS(a,b,c,d,e){var _=this +_.Q=a +_.as=b +_.f=c +_.r=d +_.w=$ +_.c=e +_.b=!1}, +aFU:function aFU(a,b,c,d,e){var _=this +_.Q=a +_.as=b +_.f=c +_.r=d +_.w=$ +_.c=e +_.b=!1}, +Fx:function Fx(a,b,c){this.a=a +this.b=b +this.$ti=c}, +Dp:function Dp(){}, +bid:function bid(a){this.a=a}, +aPc:function aPc(){}, +yT:function yT(){}, +bjY:function bjY(){}, +auB:function auB(a,b){this.a=a +this.b=b +this.c=$}, +aCR:function aCR(a,b,c){this.d=a +this.e=b +this.a=c}, +a3E:function a3E(a,b,c,d){var _=this +_.D=null +_.N=a +_.a4=b +_.ag=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}, +aPz:function aPz(){}, +Re:function Re(a,b,c){this.c=a +this.a=b +this.$ti=c}, +Rf:function Rf(a,b){var _=this +_.d=$ +_.e=null +_.f=$ +_.r=0 +_.w=!1 +_.a=null +_.b=a +_.c=null +_.$ti=b}, +bjX:function bjX(a){this.a=a}, +bjS:function bjS(a){this.a=a}, +bjW:function bjW(a,b){this.a=a +this.b=b}, +bjV:function bjV(a,b,c){this.a=a +this.b=b +this.c=c}, +bjU:function bjU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bjT:function bjT(a,b,c){this.a=a +this.b=b +this.c=c}, +bk5:function bk5(a,b,c){this.a=a +this.b=b +this.c=c}, +zA:function zA(a,b){var _=this +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1 +_.a=b}, +aSm:function aSm(){}, +bvt:function bvt(a,b,c){this.a=a +this.b=b +this.c=c}, +W8(){var s,r,q,p,o=new A.c5(new Float64Array(16)) +o.fO() +s=$.ae() +r=new A.zA(s,new Float64Array(2)) +q=new A.zA(s,new Float64Array(2)) +q.aRb(1) +q.ab() +p=new A.zA(s,new Float64Array(2)) +s=new A.abz(o,r,q,p,s) +o=s.gb9h() +r.a3(0,o) +q.a3(0,o) +p.a3(0,o) +return s}, +abz:function abz(a,b,c,d,e){var _=this +_.a=a +_.b=!0 +_.c=0 +_.d=b +_.e=c +_.f=d +_.k2$=0 +_.k3$=e +_.ok$=_.k4$=0 +_.p1$=!1}, +bhl:function bhl(a){this.b=a +this.c=$}, +anU:function anU(){}, +aBQ:function aBQ(){}, +bec:function bec(a,b,c){var _=this +_.bw3$=a +_.b=b +_.c=c +_.d=$}, +bdX:function bdX(a){this.bw3$=a}, +aPO:function aPO(){}, +aNS:function aNS(){}, +aNV:function aNV(){}, +pl:function pl(a){this.a=a}, +bbR:function bbR(){}, +bNo:function bNo(a){this.b=a}, +bGV(a,b){var s=0,r=A.p(t.bW),q,p,o,n,m,l,k,j,i,h +var $async$bGV=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:i=b.a +h=i.i(0,a) +if(h==null){h=A.did(b.RM(a)) +i.n(0,a,h) +i=h}else i=h +h=i.b +s=3 +return A.i(h==null?A.dm(i.a,t.lu):h,$async$bGV) +case 3:p=d +i=new A.aFf(B.pu.Hj(),p,B.a8) +h=p.geP(p) +o=p.gdK(p) +n=new A.ah(new Float64Array(2)) +n.dm(h,o) +h=new Float64Array(2) +new A.ah(h).dm(0,0) +o=h[0] +h=h[1] +m=n.a +l=o+m[0] +m=h+m[1] +i.c=new A.W(o,h,l,m) +k=new A.ah(new Float64Array(2)) +j=new Float64Array(2) +new A.ah(j).dm(l-o,m-h) +k=k.a +h=k[0] +k=k[1] +i.c=new A.W(h,k,h+j[0],k+j[1]) +q=i +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bGV,r)}, +aFf:function aFf(a,b,c){this.a=a +this.b=b +this.c=c}, +boW:function boW(a,b,c,d){var _=this +_.b=_.a=0 +_.c=a +_.d=b +_.e=c +_.f=d}, +bnB:function bnB(){}, +bKL:function bKL(){}, +czk(a){var s,r=a.b.a.tc(B.Q),q=a.b,p=q.b +q=q.a.a +q=q.gdK(q) +s=new A.ah(new Float64Array(2)) +q-=r +s.dm(p,r+q) +return new A.bLl(a,new A.boW(p,r,q,s))}, +bLl:function bLl(a,b){this.a=a +this.b=b}, +cMO(a,b){var s=A.e4(null,null,t.N,t.mi),r=a==null?B.bsh:a +return new A.FA(r,b,new A.azj(s,t.PP))}, +czj(a,b){return A.cMO(a,b)}, +FA:function FA(a,b,c){this.a=a +this.b=b +this.c=c}, +Ax:function Ax(){}, +P4:function P4(){}, +b6z:function b6z(a,b){this.a=a +this.b=b}, +b6w:function b6w(){}, +b6x:function b6x(){}, +b6y:function b6y(a){this.a=a}, +ad0:function ad0(){}, +ad1:function ad1(){}, +w1:function w1(){}, +tW:function tW(a,b,c,d,e){var _=this +_.go=a +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=b +_.w=!1 +_.y=c +_.Q=d +_.as=e}, +bPm:function bPm(){}, +bPn:function bPn(a){this.a=a}, +bPo:function bPo(a){this.a=a}, +bPq:function bPq(a,b){this.a=a +this.b=b}, +bPp:function bPp(a,b){this.a=a +this.b=b}, +HP:function HP(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.as=j +_.at=k +_.a=l}, +aM5:function aM5(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +bUA:function bUA(a){this.a=a}, +b2i(a,b,c,d,e,f,g){return A.dvP(a,b,!0,!0,!0,f,!0)}, +dvP(a,b,c,d,e,f,g){var s=0,r=A.p(t.G),q,p +var $async$b2i=A.l(function(h,i){if(h===1)return A.m(i,r) +while(true)switch(s){case 0:p={} +p.a=b +s=3 +return A.i(new A.a0P(b,new A.ctK(p),f,!0,!1,!0,B.t,B.nj,8,null,null,!0,36,null,16,B.a4q,B.a4r,B.cd,40,40,!1,4,4,0,!1,null,null,190,16,0,4,!1,null,null,null,null,null,null,null,!1,null,!1,null,!0,!1,null,null,!1,!1,!1,5,B.aNB,!0,null,null,B.aVk,B.QB,B.QB,null).Qx(a,null,null,null,B.tn,!0,null,null,B.i,null,B.L,null,B.kP,null,null,null,null,null,null,B.L,null,null,B.K,!0),$async$b2i) +case 3:if(!i)p.a=b +q=p.a +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$b2i,r)}, +a0P:function a0P(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){var _=this +_.c=a +_.d=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 +_.x1=b9 +_.x2=c0 +_.xr=c1 +_.y1=c2 +_.y2=c3 +_.c_=c4 +_.bO=c5 +_.be=c6 +_.bU=c7 +_.e7=c8 +_.dd=c9 +_.D=d0 +_.N=d1 +_.a4=d2 +_.aq=d3 +_.aJ=d4 +_.U=d5 +_.aW=d6 +_.aT=d7 +_.aU=d8 +_.a=d9}, +b9Q:function b9Q(a,b){this.a=a +this.b=b}, +b9R:function b9R(a,b){this.a=a +this.b=b}, +b9S:function b9S(a){this.a=a}, +b9T:function b9T(a){this.a=a}, +adu:function adu(a){var _=this +_.r=_.f=_.e=_.d=$ +_.w=null +_.Q=_.z=_.y=_.x=$ +_.as=!0 +_.at=!1 +_.ch=_.ay=_.ax=!0 +_.dx=_.db=_.cy=_.cx=_.CW=!1 +_.fy=_.fx=_.fr=_.dy=$ +_.a=null +_.b=a +_.c=null}, +bUB:function bUB(){}, +bUS:function bUS(a){this.a=a}, +bUE:function bUE(a){this.a=a}, +bUN:function bUN(a){this.a=a}, +bUM:function bUM(a,b){this.a=a +this.b=b}, +bUO:function bUO(a){this.a=a}, +bUT:function bUT(a){this.a=a}, +bUP:function bUP(a){this.a=a}, +bUL:function bUL(a,b){this.a=a +this.b=b}, +bUU:function bUU(a){this.a=a}, +bUV:function bUV(a){this.a=a}, +bUK:function bUK(a,b){this.a=a +this.b=b}, +bUW:function bUW(a){this.a=a}, +bUJ:function bUJ(a){this.a=a}, +bUX:function bUX(a){this.a=a}, +bUI:function bUI(a){this.a=a}, +bUZ:function bUZ(a){this.a=a}, +bUY:function bUY(a){this.a=a}, +bUH:function bUH(a,b){this.a=a +this.b=b}, +bV_:function bV_(a){this.a=a}, +bUQ:function bUQ(a){this.a=a}, +bUG:function bUG(a,b){this.a=a +this.b=b}, +bUR:function bUR(a){this.a=a}, +bUF:function bUF(a,b){this.a=a +this.b=b}, +bUD:function bUD(a,b,c){this.a=a +this.b=b +this.c=c}, +bUC:function bUC(a,b){this.a=a +this.b=b}, +ctK:function ctK(a){this.a=a}, +d3c(a){var s,r,q,p,o +for(s=0;s<19;++s)for(r=B.on[s].b,q=0;q<11;++q){p=B.vk[q] +if(!J.q(r.i(0,p),a)){o=r.i(0,p) +o=o==null?null:o.gj(o) +o=o===a.gj(a)}else o=!0 +if(o)return!0}return!1}, +d3d(a,b){var s,r,q,p +for(s=a.b,r=0;r<11;++r){q=B.vk[r] +if(!J.q(s.i(0,q),b)){p=s.i(0,q) +p=p==null?null:p.gj(p) +p=p===b.gj(b)}else p=!0 +if(p)return!0}return!1}, +cvI(a){var s,r,q,p,o,n +for(s=0;s<19;++s){r=B.on[s] +for(q=r.b,p=0;p<11;++p){o=B.vk[p] +if(!J.q(q.i(0,o),a)){n=q.i(0,o) +n=n==null?null:n.gj(n) +n=n===a.gj(a)}else n=!0 +if(n)return r}}return A.a0Q(a)}, +a0Q(a){var s,r,q,p,o,n,m,l,k,j=A.N(t.S,t.G),i=a.gj(a)>>>24&255,h=a.gj(a)>>>16&255,g=a.gj(a)>>>8&255,f=a.gj(a)&255 +for(s=255-f,r=255-g,q=255-h,p=0;p<10;++p){o=B.lf[p] +n=0.5-o/1000 +m=n<0 +l=B.e.aF((m?h:q)*n) +k=B.e.aF((m?g:r)*n) +j.n(0,o,A.Y(i,h+l,g+k,f+B.e.aF((m?f:s)*n)))}s=j.i(0,50) +s.toString +j.n(0,50,A.R_(s,18)) +s=j.i(0,100) +s.toString +j.n(0,100,A.R_(s,16)) +s=j.i(0,200) +s.toString +j.n(0,200,A.R_(s,14)) +s=j.i(0,300) +s.toString +j.n(0,300,A.R_(s,10)) +s=j.i(0,400) +s.toString +j.n(0,400,A.R_(s,6)) +s=j.i(0,700) +s.toString +j.n(0,700,A.cwQ(s,2)) +s=j.i(0,800) +s.toString +j.n(0,800,A.cwQ(s,3)) +s=j.i(0,900) +s.toString +j.n(0,900,A.cwQ(s,4)) +return new A.im(j,a.gj(a))}, +d3a(a){var s,r,q,p,o +for(s=0;s<16;++s)for(r=B.oh[s].b,q=0;q<4;++q){p=B.vd[q] +if(!J.q(r.i(0,p),a)){o=r.i(0,p) +o=o==null?null:o.gj(o) +o=o===a.gj(a)}else o=!0 +if(o)return!0}return!1}, +d37(a){var s,r,q,p,o,n +for(s=0;s<16;++s){r=B.oh[s] +for(q=r.b,p=0;p<4;++p){o=B.vd[p] +if(!J.q(q.i(0,o),a)){n=q.i(0,o) +n=n==null?null:n.gj(n) +n=n===a.gj(a)}else n=!0 +if(n)return r}}return A.d39(a)}, +d39(a){var s,r,q,p,o,n,m,l,k,j=A.N(t.S,t.G),i=a.gj(a)>>>24&255,h=a.gj(a)>>>16&255,g=a.gj(a)>>>8&255,f=a.gj(a)&255 +for(s=255-f,r=255-g,q=255-h,p=0;p<4;++p){o=B.vd[p] +n=0.2-o/1000 +m=n<0 +l=B.e.aF((m?h:q)*n) +k=B.e.aF((m?g:r)*n) +j.n(0,o,A.Y(i,h+l,g+k,f+B.e.aF((m?f:s)*n)))}s=j.i(0,100) +s.toString +j.n(0,100,A.R_(s,14)) +s=j.i(0,700) +s.toString +j.n(0,700,A.R_(s,2)) +return new A.jN(j,a.gj(a))}, +d3b(a){var s,r,q,p,o +for(s=0;s<2;++s)for(r=B.oO[s].b,q=0;q<10;++q){p=B.lf[q] +if(!J.q(r.i(0,p),a)){o=r.i(0,p) +o=o==null?null:o.gj(o) +o=o===a.gj(a)}else o=!0 +if(o)return!0}return!1}, +d38(a){var s,r,q,p,o,n +for(s=0;s<2;++s){r=B.oO[s] +for(q=r.b,p=0;p<10;++p){o=B.lf[p] +if(!J.q(q.i(0,o),a)){n=q.i(0,o) +n=n==null?null:n.gj(n) +n=n===a.gj(a)}else n=!0 +if(n)return r}}return A.a0Q(a)}, +cFX(a,b){var s,r,q,p,o +for(s=J.au(b.gek(b));s.t();)for(r=s.gK(s).b,q=0;q<10;++q){p=B.lf[q] +if(!J.q(r.i(0,p),a)){o=r.i(0,p) +o=o==null?null:o.gj(o) +o=o===a.gj(a)}else o=!0 +if(o)return!0}return!1}, +cvH(a,b){var s,r,q,p,o,n +for(s=J.au(b.gek(b));s.t();){r=s.gK(s) +for(q=r.b,p=0;p<10;++p){o=B.lf[p] +if(!J.q(q.i(0,o),a)){n=q.i(0,o) +n=n==null?null:n.gj(n) +n=n===a.gj(a)}else n=!0 +if(n)return r}}return A.a0Q(a)}, +czU:function czU(a,b){this.a=a +this.b=b}, +cPv(a){return B.e.M(Math.atan2(a.b,a.a)*180/3.141592653589793+360,360)}, +a0R:function a0R(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}, +aM9:function aM9(a,b){var _=this +_.d=a +_.f=_.e=!1 +_.z=_.y=_.x=_.w=_.r=$ +_.a=null +_.b=b +_.c=null}, +bV3:function bV3(a){this.a=a}, +bV5:function bV5(a){this.a=a}, +bV1:function bV1(a){this.a=a}, +bV4:function bV4(a){this.a=a}, +bV0:function bV0(a){this.a=a}, +bV2:function bV2(a){this.a=a}, +aWp:function aWp(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}, +aZK:function aZK(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.a=e}, +aWq:function aWq(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.a=e}, +aZL:function aZL(a,b,c){this.b=a +this.c=b +this.a=c}, +R_(a,b){var s,r +if(b<=0)return a +if(b>100)return B.r +if(a.l(0,B.B)){s=A.av4(a) +r=new A.w3(s.a,s.b,0,s.d)}else r=A.av4(a) +return new A.w3(r.a,r.b,r.c,Math.min(1,Math.max(0,r.d+b/100))).qJ()}, +cwQ(a,b){var s +if(b<=0)return a +if(b>100)return B.B +s=A.av4(a) +return new A.w3(s.a,s.b,s.c,Math.min(1,Math.max(0,s.d-b/100))).qJ()}, +cBT(a,b){switch(a.a){case 0:case 2:case 1:return"" +case 3:case 5:return" (CTRL-"+b+")" +case 4:return" (CMD-"+b+")"}}, +ds6(a,b,c,d,e){var s,r,q,p,o,n,m +for(s=A.z(e).c,r=A.jL(e,e.r,s);r.t();){q=r.d +p=d.i(0,q) +p.toString +if(p)for(p=e.i(0,q),o=p.length,n=0;n>>16&255,a.gj(a)>>>8&255,a.gj(a)&255),!1))return q}}for(s=A.jL(e,e.r,s);s.t();){r=s.d +q=d.i(0,r) +q.toString +if(q)return r}return B.bu}, +ds7(a,b,c){var s,r,q +for(s=b.length,r=0;r") +return A.R(new A.O(q,new A.csj(),s),!0,s.h("aa.E"))}, +csj:function csj(){}, +b9O:function b9O(a,b){this.a=a +this.b=b}, +b9N:function b9N(a,b){this.a=a +this.b=b}, +apy:function apy(){}, +aM6:function aM6(){}, +b9P:function b9P(a,b){this.a=a +this.b=b}, +apz:function apz(){}, +aM7:function aM7(){}, +m6:function m6(a,b){this.a=a +this.b=b}, +Q5:function Q5(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}, +adF:function adF(a,b,c){var _=this +_.d=a +_.a=null +_.b=b +_.c=null +_.$ti=c}, +bVB:function bVB(a){this.a=a}, +bVC:function bVC(a){this.a=a}, +at5:function at5(a,b){this.c=a +this.a=b}, +aCN:function aCN(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +avL:function avL(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +a0O:function a0O(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 +_.z=h +_.Q=i +_.as=j +_.a=k}, +ads:function ads(a){var _=this +_.r=_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +bUx:function bUx(){}, +bUy:function bUy(a){this.a=a}, +bUw:function bUw(a,b){this.a=a +this.b=b}, +bUz:function bUz(a){this.a=a}, +bUv:function bUv(a){this.a=a}, +aZm:function aZm(){}, +apA:function apA(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}, +yn:function yn(a,b){this.a=a +this.b=b}, +Q3:function Q3(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.ax=e +_.ay=f +_.ch=g +_.a=h}, +apU:function apU(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}, +baX:function baX(a){this.a=a}, +baW:function baW(a){this.a=a}, +baV:function baV(a){this.a=a}, +KU:function KU(){}, +aB9:function aB9(a,b){this.c=a +this.a=b +this.b=null}, +HX:function HX(){}, +apT:function apT(a,b){this.c=a +this.a=b +this.b=null}, +axi:function axi(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 +_.y=g +_.z=h +_.Q=i +_.as=j +_.at=k +_.ax=l +_.ay=m +_.ch=n +_.a=o}, +brc:function brc(a,b){this.a=a +this.b=b}, +dsB(){var s=$.cB2 +if(s!=null)return A.dm(s,t.lu) +s=new A.ak($.at,t.NT) +B.a1i.a5(B.azZ).a3(0,new A.kh(new A.csk(new A.aI(s,t.Zf)),null,null)) +return s}, +aAn:function aAn(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}, +bvf:function bvf(a){this.a=a}, +csk:function csk(a){this.a=a}, +bvd:function bvd(a,b,c,d,e){var _=this +_.e=a +_.a=b +_.b=c +_.c=d +_.d=e}, +bve:function bve(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aEc:function aEc(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}, +bEv:function bEv(a){this.a=a}, +aEq:function aEq(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 +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.a=p}, +bFt:function bFt(a,b){this.a=a +this.b=b}, +abs:function abs(a,b,c,d,e,f,g,h,i,j,k,l,m,n){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 +_.a=n}, +aYH:function aYH(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cm5:function cm5(a,b){this.a=a +this.b=b}, +bik:function bik(a,b){this.a=a +this.b=b}, +a3j:function a3j(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bil:function bil(a,b,c){this.a=a +this.b=b +this.c=c}, +cFA(a6,a7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=A.cG0(a6),a=b[0],a0=b[1],a1=b[2],a2=a7.as,a3=a2[0]*(0.401288*a+0.650173*a0-0.051461*a1),a4=a2[1]*(-0.250268*a+1.204414*a0+0.045854*a1),a5=a2[2]*(-0.002079*a+0.048952*a0+0.953127*a1) +a2=a7.at +s=Math.pow(a2*Math.abs(a3)/100,0.42) +r=Math.pow(a2*Math.abs(a4)/100,0.42) +q=Math.pow(a2*Math.abs(a5)/100,0.42) +p=A.azb(a3)*400*s/(s+27.13) +o=A.azb(a4)*400*r/(r+27.13) +n=A.azb(a5)*400*q/(q+27.13) +m=(11*p+-12*o+n)/11 +l=(p+o-2*n)/9 +a2=20*o +k=Math.atan2(l,m)*180/3.141592653589793 +if(k<0)j=k+360 +else j=k>=360?k-360:k +i=j*3.141592653589793/180 +h=a7.r +g=a7.y +f=100*Math.pow((40*p+a2+n)/20*a7.w/h,g*a7.ay) +e=f/100 +Math.sqrt(e) +d=Math.pow(3846.153846153846*(0.25*(Math.cos((j<20.14?j+360:j)*3.141592653589793/180+2)+3.8))*a7.z*a7.x*Math.sqrt(m*m+l*l)/((20*p+a2+21*n)/20+0.305),0.9)*Math.pow(1.64-Math.pow(0.29,a7.f),0.73) +c=d*Math.sqrt(e) +Math.sqrt(d*g/(h+4)) +Math.log(1+0.0228*(c*a7.ax)) +Math.cos(i) +Math.sin(i) +return new A.b86(j,c,f,A.a([0,0,0],t.n))}, +b86:function b86(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.y=d}, +bkQ:function bkQ(){var _=this +_.d=_.c=_.b=_.a=$}, +bOx:function bOx(a,b,c,d,e,f,g,h,i,j){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.as=g +_.at=h +_.ax=i +_.ay=j}, +rc:function rc(a,b){this.a=a +this.b=b}, +cR:function cR(){}, +bQ(a,b,c,d,e,f){var s=new A.xU(0,d,a,B.a15,b,c,B.b_,B.a6,new A.bN(A.a([],t.x8),t.jc),new A.bN(A.a([],t.qj),t.fy)) +s.r=f.Md(s.ga1u()) +s.a40(e==null?0:e) +return s}, +b3O(a,b,c){var s=new A.xU(-1/0,1/0,a,B.a16,null,null,B.b_,B.a6,new A.bN(A.a([],t.x8),t.jc),new A.bN(A.a([],t.qj),t.fy)) +s.r=c.Md(s.ga1u()) +s.a40(b) +return s}, +WV:function WV(a,b){this.a=a +this.b=b}, +an4:function an4(a,b){this.a=a +this.b=b}, +xU:function xU(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 +_.f0$=i +_.em$=j}, +c32:function c32(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.a=e}, +cda:function cda(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +aKI:function aKI(){}, +aKJ:function aKJ(){}, +aKK:function aKK(){}, +an6:function an6(a,b){this.b=a +this.d=b}, +aKL:function aKL(){}, +ms(a){var s=new A.a7j(new A.bN(A.a([],t.x8),t.jc),new A.bN(A.a([],t.qj),t.fy),0) +s.c=a +if(a==null){s.a=B.a6 +s.b=0}return s}, +cI(a,b,c){var s,r=new A.I6(b,a,c) +r.Ul(b.gbM(b)) +b.cY() +s=b.f0$ +s.b=!0 +s.a.push(r.gUk()) +return r}, +czu(a,b,c){var s,r,q=new A.Nb(a,b,c,new A.bN(A.a([],t.x8),t.jc),new A.bN(A.a([],t.qj),t.fy)) +if(J.q(a.gj(a),b.gj(b))){q.a=b +q.b=null +s=b}else{if(a.gj(a)>b.gj(b))q.c=B.bAP +else q.c=B.bAO +s=a}s.je(q.gF8()) +s=q.ga6P() +q.a.a3(0,s) +r=q.b +if(r!=null)r.a3(0,s) +return q}, +cEO(a,b,c){return new A.a_9(a,b,new A.bN(A.a([],t.x8),t.jc),new A.bN(A.a([],t.qj),t.fy),0,c.h("a_9<0>"))}, +aKr:function aKr(){}, +aKs:function aKs(){}, +ZQ:function ZQ(a,b){this.a=a +this.$ti=b}, +BU:function BU(){}, +a7j:function a7j(a,b,c){var _=this +_.c=_.b=_.a=null +_.f0$=a +_.em$=b +_.z0$=c}, +or:function or(a,b,c){this.a=a +this.f0$=b +this.z0$=c}, +I6:function I6(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +aYQ:function aYQ(a,b){this.a=a +this.b=b}, +Nb:function Nb(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.f=_.e=null +_.f0$=d +_.em$=e}, +PW:function PW(){}, +a_9:function a_9(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.f0$=c +_.em$=d +_.z0$=e +_.$ti=f}, +adw:function adw(){}, +adx:function adx(){}, +ady:function ady(){}, +aN0:function aN0(){}, +aTU:function aTU(){}, +aTV:function aTV(){}, +aTW:function aTW(){}, +aVD:function aVD(){}, +aVE:function aVE(){}, +aYN:function aYN(){}, +aYO:function aYO(){}, +aYP:function aYP(){}, +a6O:function a6O(){}, +kQ:function kQ(){}, +afE:function afE(){}, +a8K:function a8K(a){this.a=a}, +eG:function eG(a,b,c){this.a=a +this.b=b +this.c=c}, +ab8:function ab8(a){this.a=a}, +fR:function fR(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ab7:function ab7(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +o7:function o7(a){this.a=a}, +aNe:function aNe(){}, +a_8:function a_8(){}, +a_7:function a_7(){}, +Hc:function Hc(){}, +BT:function BT(){}, +iD(a,b,c){return new A.aP(a,b,c.h("aP<0>"))}, +d3e(a,b){return new A.fp(a,b)}, +iw(a){return new A.eA(a)}, +aJ:function aJ(){}, +aB:function aB(a,b,c){this.a=a +this.b=b +this.$ti=c}, +eb:function eb(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aP:function aP(a,b,c){this.a=a +this.b=b +this.$ti=c}, +a8z:function a8z(a,b,c,d){var _=this +_.c=a +_.a=b +_.b=c +_.$ti=d}, +fp:function fp(a,b){this.a=a +this.b=b}, +aEG:function aEG(a,b){this.a=a +this.b=b}, +ui:function ui(a,b){this.a=a +this.b=b}, +DL:function DL(a,b){this.a=a +this.b=b}, +PZ:function PZ(a,b,c){this.a=a +this.b=b +this.$ti=c}, +eA:function eA(a){this.a=a}, +akD:function akD(){}, +bNB(a,b){var s=new A.abD(A.a([],b.h("D>")),A.a([],t.mz),b.h("abD<0>")) +s.aVf(a,b) +return s}, +cNh(a,b,c){return new A.ld(a,b,c.h("ld<0>"))}, +abD:function abD(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ld:function ld(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aQt:function aQt(a,b){this.a=a +this.b=b}, +cGf(a,b){return new A.a1a(a,b)}, +a1a:function a1a(a,b){this.c=a +this.a=b}, +aMG:function aMG(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +aMF:function aMF(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.a=f}, +akL:function akL(){}, +I4(a,b,c,d,e,f,g,h,i,j){return new A.Cm(c,i,d,e,h,g,j,b,a,!1,f)}, +d3H(a,b,c,d,e,f,g,h,i){return new A.Cm(c,h,null,d,g,f,i,b,a,!0,e)}, +Cm:function Cm(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 +_.Q=j +_.a=k}, +adN:function adN(a,b,c,d){var _=this +_.d=a +_.f=_.e=$ +_.r=!1 +_.fz$=b +_.ca$=c +_.a=null +_.b=d +_.c=null}, +bVV:function bVV(a,b){this.a=a +this.b=b}, +akM:function akM(){}, +a1b:function a1b(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}, +adO:function adO(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=null +_.f=!1 +_.WH$=b +_.azy$=c +_.aat$=d +_.eH$=e +_.b5$=f +_.a=null +_.b=g +_.c=null}, +aLU:function aLU(a){var _=this +_.f=_.e=_.d=_.c=_.b=_.a=_.ch=_.ay=_.ax=_.at=_.as=null +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +akN:function akN(){}, +b_u:function b_u(){}, +yp(a,b){if(a==null)return null +return a instanceof A.ez?a.f3(b):a}, +ez:function ez(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}, +bb8:function bb8(a){this.a=a}, +aMN:function aMN(){}, +aMK:function aMK(){}, +bb6:function bb6(){}, +b_v:function b_v(){}, +aq3:function aq3(a,b,c){this.c=a +this.d=b +this.a=c}, +d3I(a,b){return new A.I5(a,b,null)}, +I5:function I5(a,b,c){this.c=a +this.f=b +this.a=c}, +adQ:function adQ(a){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null}, +bWk:function bWk(a){this.a=a}, +bWl:function bWl(a){this.a=a}, +cQB(a){var s,r=A.cG(a,B.bn) +r=r==null?null:r.gdZ() +s=r==null?null:r.gir() +return s!=null&&s>1.4}, +cvW(a,b,c){return new A.a19(c,a,b,null)}, +d3F(a,b,c){return new A.I3(c,b,a,null)}, +a19:function a19(a,b,c,d){var _=this +_.d=a +_.e=b +_.w=c +_.a=d}, +adL:function adL(a){var _=this +_.a=_.e=_.d=null +_.b=a +_.c=null}, +I3:function I3(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +adJ:function adJ(a,b){this.c=a +this.a=b}, +adK:function adK(a){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null}, +bVR:function bVR(a){this.a=a}, +bVS:function bVS(a){this.a=a}, +bVQ:function bVQ(a){this.a=a}, +adR:function adR(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aMM:function aMM(a,b,c){var _=this +_.k4=a +_.c=_.b=_.a=_.ch=_.ax=_.p1=_.ok=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +Yh:function Yh(a,b,c,d,e){var _=this +_.N=_.D=null +_.a4=a +_.ag=b +_.aq=c +_.aJ=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}, +cbN:function cbN(a,b,c){this.a=a +this.b=b +this.c=c}, +cbO:function cbO(a,b,c){this.a=a +this.b=b +this.c=c}, +aKp:function aKp(a,b,c){this.a=a +this.b=b +this.c=c}, +aKo:function aKo(a,b){this.a=a +this.b=b}, +aMI:function aMI(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}, +aMH:function aMH(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +agP:function agP(a,b){this.c=a +this.a=b}, +aTO:function aTO(a){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null}, +caa:function caa(a){this.a=a}, +ca7:function ca7(a){this.a=a}, +cab:function cab(a){this.a=a}, +ca6:function ca6(a){this.a=a}, +ca9:function ca9(a){this.a=a}, +ca8:function ca8(a){this.a=a}, +aKe:function aKe(a,b,c){this.f=a +this.b=b +this.a=c}, +G1:function G1(a,b,c){var _=this +_.x=!1 +_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +aML:function aML(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +ahl:function ahl(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.cT$=h +_.Y$=i +_.d7$=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}, +b08:function b08(){}, +b09:function b09(){}, +cGg(a,b,c,d,e,f,g,h,i){return new A.aq4(h,c,i,d,f,b,e,g,a)}, +aq4:function aq4(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}, +aMP:function aMP(){}, +cGm(a,b){return new A.a1s(b,a,null)}, +d3Y(a){var s=a.a0(t.H5) +if(s!=null)return s.f +return null}, +arV:function arV(a,b){this.a=a +this.b=b}, +a1s:function a1s(a,b,c){this.f=a +this.b=b +this.a=c}, +aMQ:function aMQ(){}, +ask:function ask(){}, +a1r:function a1r(a,b,c){this.d=a +this.w=b +this.a=c}, +adW:function adW(a,b,c,d){var _=this +_.d=a +_.e=0 +_.r=_.f=$ +_.fz$=b +_.ca$=c +_.a=null +_.b=d +_.c=null}, +bWu:function bWu(a){this.a=a}, +bWt:function bWt(){}, +bWs:function bWs(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +arN:function arN(a,b,c){this.r=a +this.w=b +this.a=c}, +akP:function akP(){}, +cOl(a,b,c,d){return new A.aP3(b,d,c,a,c,null)}, +cRA(a,b,c,d,e){var s,r,q,p,o,n=null +if(e){s=a.axd() +r=s<0.179?B.aN:B.ak +switch(r.a){case 0:q=B.xN +break +case 1:q=B.xO +break +default:q=n}p=A.cEP(d,new A.wM(n,n,n,n,q.e,q.f,q.r,q.w),t.ev)}else p=d +o=A.o1(p,new A.c_(a,n,b,n,n,n,n,B.U),B.cB) +if((a.gj(a)>>>24&255)===255)return o +return A.p3(A.OW(o,$.ar().yz(10,10,B.bH)),B.k,n)}, +diy(a,b,c,d,e){var s,r +if(d instanceof A.oi){if(!d.gGD()){s=d.kO$ +s=s!=null&&s.length!==0}else s=!0 +if(s)d.grD()}r=null +return null +return new A.hI(new A.aA(new A.eB(16,0,0,0),A.qd(r,B.ayI),null),b)}, +div(a,b,c,d){var s +if(c!=null){if(!c.gGD()){s=c.kO$ +s=s!=null&&s.length!==0}else s=!0 +if(s){if(c instanceof A.oi)c.grD() +s=!1}else s=!0}else s=!0 +if(s)return null +return new A.hI(B.byy,b)}, +diw(a,b,c,d,e){var s +if(d!=null){if(!d.gGD()){s=d.kO$ +s=s!=null&&s.length!==0}else s=!0 +if(s){if(d instanceof A.oi)d.grD() +s=!1}else s=!0}else s=!0 +if(s)return null +return new A.hI(new A.acQ(c,d,null),b)}, +diz(a,b,c,d,e,f){var s=f +return new A.hI(s,c)}, +diA(a,b,c){return null}, +dix(a,b,c,d,e){return null}, +cOB(a,b,c){return new A.aS6(a,c,b,new A.aP(b.gHD().gu(0).b,c.gHD().gu(0).b,t.Y),new A.fp(b.d,c.d),new A.ao9(b.w,c.w),null)}, +dmN(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.ui(new A.W(r,p,r+o,p+m),new A.W(n,l,n+o,l+m))}, +dn8(a,b,c){return A.cNJ(c,!0,!0,!0,!1)}, +dn7(a,b,c,d,e){var s,r,q=t.rA,p=q.a(d.gb7()),o=q.a(e.gb7()) +q=t.yW +s=q.a(p.e) +r=q.a(o.e) +switch(c.a){case 0:return A.cOB(b,s,r) +case 1:return A.cOB(b,r,s)}}, +af4:function af4(a){this.a=a}, +aP3:function aP3(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +Qc:function Qc(a){this.a=a}, +aMR:function aMR(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +bWp:function bWp(a,b,c){this.a=a +this.b=b +this.c=c}, +aT0:function aT0(a,b,c){this.c=a +this.d=b +this.a=c}, +c7T:function c7T(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +c7S:function c7S(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +arO:function arO(a,b,c){this.f=a +this.r=b +this.a=c}, +bba:function bba(a,b){this.a=a +this.b=b}, +aL6:function aL6(a){this.a=a}, +acQ:function acQ(a,b,c){this.c=a +this.d=b +this.a=c}, +ajR:function ajR(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}, +aS6:function aS6(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +c7U:function c7U(a){this.a=a}, +c7M:function c7M(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}, +a1n:function a1n(a,b,c){this.c=a +this.d=b +this.a=c}, +adS:function adS(a){this.a=null +this.b=a +this.c=null}, +cvY(a,b,c,d,e,f,g){return new A.a1o(!0,c,e,b,f,d,new A.bp7(a),null)}, +a1o:function a1o(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}, +adT:function adT(a){var _=this +_.a=_.e=_.d=null +_.b=a +_.c=null}, +arR:function arR(a){this.a=a}, +aMS:function aMS(a,b,c){this.e=a +this.c=b +this.a=c}, +ahm:function ahm(a,b,c){var _=this +_.G=$ +_.ac=a +_.aS=0 +_.k1$=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}, +cbP:function cbP(a){this.a=a}, +d3S(a){var s +if(a.gXD())return!1 +s=a.kO$ +if(s!=null&&s.length!==0)return!1 +if(a.k4.length!==0||a.gzN()===B.jG)return!1 +a.grD() +if(a.k2.gbM(0)!==B.a9)return!1 +if(a.k3.gbM(0)!==B.a6)return!1 +if(a.a.cx.a)return!1 +return!0}, +cGj(a,b,c,d,e,f){var s,r,q,p,o,n,m=a.a.cx.a +a.grD() +s=m?c:A.cI(B.cl,c,new A.o7(B.cl)) +r=$.d_b() +q=t.o +q.a(s) +p=m?d:A.cI(B.iQ,d,B.n7) +o=$.d_4() +q.a(p) +m=m?c:A.cI(B.iQ,c,null) +n=$.cYO() +return new A.arP(new A.aB(s,r,r.$ti.h("aB")),new A.aB(p,o,o.$ti.h("aB")),new A.aB(q.a(m),n,A.z(n).h("aB")),new A.X7(e,new A.bbb(a),new A.bbc(a,f),null,f.h("X7<0>")),null)}, +bWm(a,b,c){var s,r,q,p,o +if(a==b)return a +if(a==null){s=b.a +if(s==null)s=b +else{r=A.X(s).h("O<1,v>") +r=new A.v3(A.R(new A.O(s,new A.bWn(c),r),!0,r.h("aa.E"))) +s=r}return s}if(b==null){s=a.a +if(s==null)s=a +else{r=A.X(s).h("O<1,v>") +r=new A.v3(A.R(new A.O(s,new A.bWo(c),r),!0,r.h("aa.E"))) +s=r}return s}s=A.a([],t.t_) +for(r=b.a,q=a.a,p=0;p"),k=h.h("aI<0?>") +return new A.a1m(d,!0,f,b,a,e,s,r,A.b9(t.kj),new A.aR(s,h.h("aR>")),new A.aR(s,t.A),new A.qt(),s,0,new A.aI(new A.ak(q,h.h("ak<0?>")),h.h("aI<0?>")),p,o,B.ff,new A.bm(s,n,t.XR),new A.aI(new A.ak(m,l),k),new A.aI(new A.ak(m,l),k),h.h("a1m<0>"))}, +dvQ(a,b,c,d,e){var s=A.cN(b,!0),r=B.n8.f3(b) +return s.pF(A.cvX(null,r,!0,a,null,!0,null,e),e)}, +dkd(a,b,c,d){var s,r=null,q=A.cI(B.cN,b,r) +if(b.gbM(0)===B.bs)return new A.dg(q,!1,d,r) +s=$.cZz() +return new A.dg(q,!1,A.Aa(B.C,d,r,new A.aB(t.o.a(b),s,s.$ti.h("aB"))),r)}, +d3J(a,b,c,d,e,f,g,h){var s,r,q,p,o,n,m,l,k=null,j=A.dS(f,B.ZD,t.ho) +j.toString +j=j.gal() +s=A.a([],t.Zt) +r=$.at +q=A.ms(B.bO) +p=A.a([],t.wi) +o=$.ae() +n=$.at +m=h.h("ak<0?>") +l=h.h("aI<0?>") +return new A.a1d(new A.bb7(e),c,j,b,B.dM,A.dvf(),a,k,k,s,A.b9(t.kj),new A.aR(k,h.h("aR>")),new A.aR(k,t.A),new A.qt(),k,0,new A.aI(new A.ak(r,h.h("ak<0?>")),h.h("aI<0?>")),q,p,B.ff,new A.bm(k,o,t.XR),new A.aI(new A.ak(n,m),l),new A.aI(new A.ak(n,m),l),h.h("a1d<0>"))}, +a1p:function a1p(){}, +bbb:function bbb(a){this.a=a}, +bbc:function bbc(a,b){this.a=a +this.b=b}, +Bb:function Bb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.WJ$=a +_.a4=b +_.ag=c +_.aq=d +_.go=e +_.id=f +_.k1=!1 +_.k3=_.k2=null +_.k4=g +_.ok=h +_.p1=i +_.p2=j +_.p3=k +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=l +_.pk$=m +_.Q=n +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=o +_.CW=!0 +_.cy=_.cx=null +_.f=p +_.a=null +_.b=q +_.c=r +_.d=s +_.e=a0 +_.$ti=a1}, +nZ:function nZ(a,b,c,d,e,f){var _=this +_.r=a +_.c=b +_.d=c +_.a=d +_.b=e +_.$ti=f}, +arP:function arP(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +X7:function X7(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.$ti=e}, +X8:function X8(a,b){var _=this +_.d=null +_.e=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +bVU:function bVU(a){this.a=a}, +adM:function adM(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bVT:function bVT(a,b){this.a=a +this.b=b}, +v3:function v3(a){this.a=a}, +bWn:function bWn(a){this.a=a}, +bWo:function bWo(a){this.a=a}, +aMO:function aMO(a,b){this.b=a +this.a=b}, +a1m:function a1m(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){var _=this +_.ac=a +_.aS=b +_.cZ=c +_.eY=d +_.i9=null +_.jY=$ +_.hT=e +_.go=f +_.id=g +_.k1=!1 +_.k3=_.k2=null +_.k4=h +_.ok=i +_.p1=j +_.p2=k +_.p3=l +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=m +_.pk$=n +_.Q=o +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=p +_.CW=!0 +_.cy=_.cx=null +_.f=q +_.a=null +_.b=r +_.c=s +_.d=a0 +_.e=a1 +_.$ti=a2}, +a1d:function a1d(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 +_.ac=a +_.aS=b +_.cZ=c +_.en=d +_.eY=e +_.i9=f +_.jY=g +_.go=h +_.id=i +_.k1=!1 +_.k3=_.k2=null +_.k4=j +_.ok=k +_.p1=l +_.p2=m +_.p3=n +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=o +_.pk$=p +_.Q=q +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=r +_.CW=!0 +_.cy=_.cx=null +_.f=s +_.a=null +_.b=a0 +_.c=a1 +_.d=a2 +_.e=a3 +_.$ti=a4}, +bb7:function bb7(a){this.a=a}, +ald:function ald(){}, +cvZ(a,b,c,d,e,f,g,h,i){return new A.Qd(h,e,a,b,i===!0,d,g,null,B.dM,B.ahH,B.b1,A.Zm(),null,f,null)}, +Qd:function Qd(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.fy=a +_.go=b +_.c=c +_.d=d +_.e=e +_.r=f +_.w=g +_.Q=h +_.ay=i +_.ch=j +_.CW=k +_.cx=l +_.cy=m +_.db=n +_.a=o}, +adU:function adU(a,b,c,d){var _=this +_.cy=$ +_.db=0 +_.w=_.r=_.f=_.e=_.d=null +_.y=_.x=$ +_.z=a +_.as=_.Q=!1 +_.at=$ +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +bWr:function bWr(a){this.a=a}, +bWq:function bWq(){}, +a1q:function a1q(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}, +adV:function adV(a,b,c){var _=this +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +aMT:function aMT(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}, +ahn:function ahn(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.eK=a +_.iB=b +_.eF=c +_.eQ=d +_.eR=e +_.eG=f +_.eS=g +_.h9=h +_.jA=i +_.ul=_.n2=$ +_.n3=0 +_.azl=j +_.G=k +_.k1$=l +_.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=m +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b_w:function b_w(){}, +Yx:function Yx(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e +_.$ti=f}, +aip:function aip(a,b,c,d){var _=this +_.e=_.d=$ +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null +_.$ti=d}, +aio:function aio(a,b){this.c=a +this.a=b}, +aW6:function aW6(a,b,c){var _=this +_.d=$ +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +cea:function cea(a){this.a=a}, +Qe:function Qe(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.a=e +_.$ti=f}, +YB:function YB(a,b,c,d,e,f,g){var _=this +_.d=$ +_.e=null +_.r=_.f=$ +_.w=a +_.x=b +_.y=c +_.as=_.Q=_.z=null +_.eH$=d +_.b5$=e +_.a=null +_.b=f +_.c=null +_.$ti=g}, +cei:function cei(){}, +cej:function cej(a,b){this.a=a +this.b=b}, +cek:function cek(a,b){this.a=a +this.b=b}, +ceg:function ceg(a,b){this.a=a +this.b=b}, +ceh:function ceh(a,b){this.a=a +this.b=b}, +YA:function YA(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f +_.$ti=g}, +Yz:function Yz(a,b,c){this.dJ$=a +this.a7$=b +this.a=c}, +Ym:function Ym(a,b,c,d,e,f,g,h,i,j){var _=this +_.D=a +_.N=null +_.a4=b +_.ag=c +_.aq=d +_.aJ=e +_.cT$=f +_.Y$=g +_.d7$=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 +_.$ti=j}, +cco:function cco(a,b,c){this.a=a +this.b=b +this.c=c}, +all:function all(){}, +b0s:function b0s(){}, +alt:function alt(){}, +Z6:function Z6(){}, +Z7:function Z7(){}, +aY7:function aY7(a,b){this.b=a +this.a=b}, +arS:function arS(){}, +bbd:function bbd(){}, +aMU:function aMU(){}, +d3U(a,b,c){return new A.arT(a,b,c,null)}, +d3W(a,b,c,d){var s=null,r=a.a0(t.WD),q=r==null?s:r.f.c.gyl() +if(q==null){q=A.cG(a,B.e6) +q=q==null?s:q.e +if(q==null)q=B.ak}q=q===B.ak?A.Y(51,0,0,0):s +return new A.aMW(b,c,q,new A.m7(B.agJ.f3(a),d,s),s)}, +dj3(a,b,c){var s,r,q,p,o,n,m=null,l=b.a,k=b.b,j=b.c,i=b.d,h=[new A.dZ(new A.j(j,i),new A.bb(-b.x,-b.y)),new A.dZ(new A.j(l,i),new A.bb(b.z,-b.Q)),new A.dZ(new A.j(l,k),new A.bb(b.e,b.f)),new A.dZ(new A.j(j,k),new A.bb(-b.r,b.w))],g=B.e.hf(c,1.5707963267948966) +for(l=4+g,s=g;s"))) +return new A.tT(r)}, +Dr(a){return new A.tT(a)}, +d7b(a){return a}, +cIm(a,b){if(a.r&&!0)return +if($.biy===0||!1)A.crE(J.cw(a.a),100,a.b) +else A.fk().$1("Another exception was thrown: "+a.gaNB().k(0)) +$.biy=$.biy+1}, +d7c(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=A.a1(["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.ddQ(J.xL(a,"\n")) +for(s=0,r=0;q=d.length,r0)q.push(h.a)}B.b.o3(q) +if(s===1)j.push("(elided one frame from "+B.b.gcW(q)+")") +else if(s>1){l=q.length +if(l>1)q[l-1]="and "+B.b.gP(q) +l="(elided "+s +if(q.length>2)j.push(l+" frames from "+B.b.bQ(q,", ")+")") +else j.push(l+" frames from "+B.b.bQ(q," ")+")")}return j}, +fs(a){var s=$.r7() +if(s!=null)s.$1(a)}, +crE(a,b,c){var s,r +if(a!=null)A.fk().$1(a) +s=A.a(B.c.ZU(J.cw(c==null?A.pw():A.d7b(c))).split("\n"),t.s) +r=s.length +if(r!==0)s=new A.Mj(s,new A.crF(),t.Ws) +A.fk().$1(B.b.bQ(A.d7c(b!=null?J.cva(s,b):s),"\n"))}, +di_(a,b,c){return new A.aPh(c,a,!0,!0,null,b)}, +G8:function G8(){}, +QP:function QP(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=i +_.ay=null +_.ch=j +_.CW=k +_.cx=l +_.a=m +_.b=n +_.c=o +_.d=p +_.e=q}, +atz:function atz(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=i +_.ay=null +_.ch=j +_.CW=k +_.cx=l +_.a=m +_.b=n +_.c=o +_.d=p +_.e=q}, +atx:function atx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=i +_.ay=null +_.ch=j +_.CW=k +_.cx=l +_.a=m +_.b=n +_.c=o +_.d=p +_.e=q}, +dl:function dl(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +biw:function biw(a){this.a=a}, +tT:function tT(a){this.a=a}, +bix:function bix(){}, +biz:function biz(){}, +biA:function biA(){}, +crF:function crF(){}, +aPh:function aPh(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +aPj:function aPj(){}, +aPi:function aPi(){}, +ao3:function ao3(){}, +b6h:function b6h(a){this.a=a}, +cNy(a,b){return new A.bm(a,$.ae(),b.h("bm<0>"))}, +aC:function aC(){}, +dq:function dq(){}, +ka:function ka(a){var _=this +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +b9_:function b9_(a){this.a=a}, +B9:function B9(a){this.a=a}, +bm:function bm(a,b,c){var _=this +_.a=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1 +_.$ti=c}, +d4r(a,b,c){var s=null +return A.p8("",s,b,B.cM,a,!1,s,s,B.c0,s,!1,!1,!0,c,s,t.H)}, +p8(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.p7(e,!1,c,s,g,o,k,b,!0,d,i,null,a,m,l,j,n,p.h("p7<0>"))}, +cwc(a,b,c){return new A.asC(c,a,!0,!0,null,b)}, +bq(a){return B.c.fm(B.d.k9(J.ab(a)&1048575,16),5,"0")}, +d4q(a,b,c,d,e,f,g){return new A.asD(b,d,"",g,a,c,!0,!0,null,f)}, +Qs:function Qs(a,b){this.a=a +this.b=b}, +vG:function vG(a,b){this.a=a +this.b=b}, +c8o:function c8o(){}, +jI:function jI(){}, +p7:function p7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=i +_.ay=null +_.ch=j +_.CW=k +_.cx=l +_.a=m +_.b=n +_.c=o +_.d=p +_.e=q +_.$ti=r}, +Ii:function Ii(){}, +asC:function asC(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +bh:function bh(){}, +asB:function asB(){}, +tL:function tL(){}, +asD:function asD(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}, +aNw:function aNw(){}, +dg7(){return new A.qR()}, +il:function il(){}, +na:function na(){}, +qR:function qR(){}, +ca:function ca(a,b){this.a=a +this.$ti=b}, +cAj:function cAj(a){this.$ti=a}, +d97(){if($.boS==null)return B.a5S +var s=A.aF("controller") +s.se9(A.lN(null,new A.boT(s),null,!1,t.LV)) +return J.cv0(s.aX())}, +ze:function ze(a,b){this.a=a +this.b=b}, +kZ:function kZ(){}, +aQU:function aQU(a,b){this.a=a +this.b=b}, +a4V:function a4V(a,b){this.a=a +this.b=b}, +boQ:function boQ(a,b,c){this.a=a +this.b=b +this.c=c}, +boR:function boR(a,b){this.a=a +this.b=b}, +boT:function boT(a){this.a=a}, +cyg(a){return new A.bN(A.a([],a.h("D<0>")),a.h("bN<0>"))}, +bN:function bN(a,b){var _=this +_.a=a +_.b=!1 +_.c=$ +_.$ti=b}, +z_:function z_(a,b){this.a=a +this.$ti=b}, +dmX(a){return A.aK(a,null,!1,t.X)}, +Tv:function Tv(a,b){this.a=a +this.$ti=b}, +cma:function cma(){}, +aPt:function aPt(a){this.a=a}, +G5:function G5(a,b){this.a=a +this.b=b}, +af1:function af1(a,b){this.a=a +this.b=b}, +jS:function jS(a,b){this.a=a +this.b=b}, +cSf(a,b){var s=a==null?null:A.a(a.split("\n"),t.s) +if(s==null)s=A.a(["null"],t.s) +if(b!=null)$.amq().L(0,new A.eE(s,new A.crG(b),A.X(s).h("eE<1,f>"))) +else $.amq().L(0,s) +if(!$.cAy)A.cPX()}, +cPX(){var s,r,q=$.cAy=!1,p=$.cDq() +if(A.cp(0,0,p.gMF(),0,0,0).a>1e6){if(p.b==null)p.b=$.EN.$0() +p.b6(0) +$.b1r=0}while(!0){if(!($.b1r<12288?!$.amq().gad(0):q))break +s=$.amq().qC() +$.b1r=$.b1r+s.length +r=$.mP +if(r==null)A.mO(s) +else r.$1(s)}if(!$.amq().gad(0)){$.cAy=!0 +$.b1r=0 +A.d3(B.aW,A.dv3()) +if($.coK==null)$.coK=new A.aI(new A.ak($.at,t.W),t.gR)}else{$.cDq().j9(0) +q=$.coK +if(q!=null)q.fw(0) +$.coK=null}}, +drr(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=a.length +if(gb||n===g){if(h<=b||i==null)i=n +if(k)s.push(r+B.c.R(a,m,i)) +else{s.push(B.c.R(a,m,i)) +k=!0}if(i>=g)return s +if(i===n){while(!0){if(!(n1?B.b.ga2(s):q +return new A.ux(a,-1,q,q,q,-1,-1,r,s.length>1?A.fB(s,1,null,t.N).bQ(0,"."):B.b.gcW(s))}, +ddR(a){var s,r,q,p,o,n,m,l,k,j,i=null,h="" +if(a==="")return B.bnb +else if(a==="...")return B.bna +if(!B.c.aC(a,"#"))return A.ddP(a) +s=A.b4("^#(\\d+) +(.+) \\((.+?):?(\\d+){0,1}:?(\\d+){0,1}\\)$",!0,!1,!1).im(a).b +r=s[2] +r.toString +q=A.cj(r,".","") +if(B.c.aC(q,"new")){p=q.split(" ").length>1?q.split(" ")[1]:h +if(B.c.p(p,".")){o=p.split(".") +p=o[0] +q=o[1]}else q=""}else if(B.c.p(q,".")){o=q.split(".") +p=o[0] +q=o[1]}else p="" +r=s[3] +r.toString +n=A.di(r,0,i) +m=n.geh(n) +if(n.gfX()==="dart"||n.gfX()==="package"){l=n.gzL()[0] +m=B.c.jL(n.geh(n),A.r(n.gzL()[0])+"/","")}else l=h +r=s[1] +r.toString +r=A.cA(r,i) +k=n.gfX() +j=s[4] +if(j==null)j=-1 +else{j=j +j.toString +j=A.cA(j,i)}s=s[5] +if(s==null)s=-1 +else{s=s +s.toString +s=A.cA(s,i)}return new A.ux(a,r,k,l,m,j,s,p,q)}, +ux:function ux(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}, +bH1:function bH1(){}, +dc:function dc(a,b){this.a=a +this.$ti=b}, +bJK:function bJK(a){this.a=a}, +auL:function auL(a,b){this.a=a +this.b=b}, +eT:function eT(){}, +Rh:function Rh(a,b,c){this.a=a +this.b=b +this.c=c}, +Xu:function Xu(a){var _=this +_.a=a +_.b=!0 +_.d=_.c=!1 +_.e=null}, +c10:function c10(a){this.a=a}, +bk_:function bk_(a){this.a=a}, +bk1:function bk1(a,b){this.a=a +this.b=b}, +bk0:function bk0(a,b,c){this.a=a +this.b=b +this.c=c}, +d7x(){var s=$.ii +s.toString +return s}, +d7a(a,b,c,d,e,f,g){return new A.a3o(c,g,f,a,e,!1)}, +cdd:function cdd(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}, +Rj:function Rj(){}, +bk3:function bk3(a){this.a=a}, +bk4:function bk4(a,b){this.a=a +this.b=b}, +a3o:function a3o(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +cRs(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}}, +dbm(a,b){var s=A.X(a) +return new A.cv(new A.fW(new A.b1(a,new A.bxW(),s.h("b1<1>")),new A.bxX(b),s.h("fW<1,cX?>")),t.FI)}, +bxW:function bxW(){}, +bxX:function bxX(a){this.a=a}, +In:function In(){}, +yC:function yC(a,b){this.a=a +this.b=b}, +vL:function vL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ro:function ro(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +mY:function mY(a,b){this.a=a +this.b=b}, +a7c(a,b){var s,r +if(a==null)return b +s=new A.dD(new Float64Array(3)) +s.j7(b.a,b.b,0) +r=a.YR(s).a +return new A.j(r[0],r[1])}, +L7(a,b,c,d){if(a==null)return c +if(b==null)b=A.a7c(a,d) +return b.W(0,A.a7c(a,d.W(0,c)))}, +cyw(a){var s,r,q=new Float64Array(4),p=new A.qT(q) +p.Qs(0,0,1,0) +s=new Float64Array(16) +r=new A.c5(s) +r.T(a) +s[11]=q[3] +s[10]=q[2] +s[9]=q[1] +s[8]=q[0] +r.a0g(2,p) +return r}, +dbi(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.L6(o,d,n,0,e,a,h,B.h,0,!1,!1,0,j,i,b,c,0,0,0,l,k,g,m,0,!1,null,null)}, +dbt(a,b,c,d,e,f,g,h,i,j,k,l){return new A.Lb(l,c,k,0,d,a,f,B.h,0,!1,!1,0,h,g,0,b,0,0,0,j,i,0,0,0,!1,null,null)}, +dbo(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.zQ(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)}, +dbl(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.EH(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)}, +dbn(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.EI(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)}, +dbk(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return new A.zP(a0,d,s,h,e,b,i,B.h,a,!0,!1,j,l,k,0,c,q,m,p,o,n,g,r,0,!1,null,null)}, +dbp(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.L8(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)}, +dbx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.zS(a1,e,a0,i,f,b,j,B.h,a,!1,!1,k,m,l,c,d,r,n,q,p,o,h,s,0,!1,null,null)}, +dbv(a,b,c,d,e,f,g){return new A.Ld(e,g,b,f,0,c,a,d,B.h,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +dbw(a,b,c,d,e,f){return new A.Le(f,b,e,0,c,a,d,B.h,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +dbu(a,b,c,d,e,f,g){return new A.Lc(e,g,b,f,0,c,a,d,B.h,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +dbr(a,b,c,d,e,f,g){return new A.zR(g,b,f,c,B.cH,a,d,B.h,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,e,null,null)}, +dbs(a,b,c,d,e,f,g,h,i,j,k){return new A.La(c,d,h,g,k,b,j,e,B.cH,a,f,B.h,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,i,null,null)}, +dbq(a,b,c,d,e,f,g){return new A.L9(g,b,f,c,B.cH,a,d,B.h,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,e,null,null)}, +cKW(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return new A.zM(a0,e,s,i,f,b,j,B.h,a,!1,!1,0,l,k,c,d,q,m,p,o,n,h,r,0,!1,null,null)}, +r_(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}}, +crw(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}}, +dpN(a){switch(a.a){case 1:return 1 +case 2:case 3:case 5:case 0:case 4:return 18}}, +cX:function cX(){}, +jZ:function jZ(){}, +aKc:function aKc(){}, +aYX:function aYX(){}, +aMi:function aMi(){}, +L6:function L6(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}, +aYT:function aYT(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMs:function aMs(){}, +Lb:function Lb(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}, +aZ3:function aZ3(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMn:function aMn(){}, +zQ:function zQ(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}, +aYZ:function aYZ(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMl:function aMl(){}, +EH:function EH(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}, +aYW:function aYW(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMm:function aMm(){}, +EI:function EI(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}, +aYY:function aYY(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMk:function aMk(){}, +zP:function zP(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}, +aYV:function aYV(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMo:function aMo(){}, +L8:function L8(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}, +aZ_:function aZ_(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMw:function aMw(){}, +zS:function zS(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}, +aZ7:function aZ7(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +ng:function ng(){}, +aMu:function aMu(){}, +Ld:function Ld(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 +_.D=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}, +aZ5:function aZ5(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMv:function aMv(){}, +Le:function Le(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}, +aZ6:function aZ6(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMt:function aMt(){}, +Lc:function Lc(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 +_.D=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}, +aZ4:function aZ4(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMq:function aMq(){}, +zR:function zR(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}, +aZ1:function aZ1(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMr:function aMr(){}, +La:function La(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}, +aZ2:function aZ2(a,b){var _=this +_.d=_.c=$ +_.e=a +_.f=b +_.b=_.a=$}, +aMp:function aMp(){}, +L9:function L9(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}, +aZ0:function aZ0(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aMj:function aMj(){}, +zM:function zM(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}, +aYU:function aYU(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aTe:function aTe(){}, +aTf:function aTf(){}, +aTg:function aTg(){}, +aTh:function aTh(){}, +aTi:function aTi(){}, +aTj:function aTj(){}, +aTk:function aTk(){}, +aTl:function aTl(){}, +aTm:function aTm(){}, +aTn:function aTn(){}, +aTo:function aTo(){}, +aTp:function aTp(){}, +aTq:function aTq(){}, +aTr:function aTr(){}, +aTs:function aTs(){}, +aTt:function aTt(){}, +aTu:function aTu(){}, +aTv:function aTv(){}, +aTw:function aTw(){}, +aTx:function aTx(){}, +aTy:function aTy(){}, +aTz:function aTz(){}, +aTA:function aTA(){}, +aTB:function aTB(){}, +aTC:function aTC(){}, +aTD:function aTD(){}, +aTE:function aTE(){}, +aTF:function aTF(){}, +aTG:function aTG(){}, +aTH:function aTH(){}, +aTI:function aTI(){}, +b11:function b11(){}, +b12:function b12(){}, +b13:function b13(){}, +b14:function b14(){}, +b15:function b15(){}, +b16:function b16(){}, +b17:function b17(){}, +b18:function b18(){}, +b19:function b19(){}, +b1a:function b1a(){}, +b1b:function b1b(){}, +b1c:function b1c(){}, +b1d:function b1d(){}, +b1e:function b1e(){}, +b1f:function b1f(){}, +b1g:function b1g(){}, +b1h:function b1h(){}, +cIs(a,b,c,d,e,f){var s=t.S,r=A.dV(s),q=a==null?A.GO():a +return new A.tV(e,d,c,B.yM,A.N(s,t.SP),r,b,f,q,A.N(s,t.F))}, +d7i(a,b,c){var s=(c-a)/(b-a) +return!isNaN(s)?A.Z(s,0,1):s}, +NJ:function NJ(a,b){this.a=a +this.b=b}, +J0:function J0(a){this.a=a}, +tV:function tV(a,b,c,d,e,f,g,h,i,j){var _=this +_.ch=_.ay=_.ax=_.at=null +_.CW=a +_.cx=b +_.cy=c +_.dx=_.db=$ +_.dy=d +_.f=e +_.r=f +_.w=null +_.a=g +_.b=null +_.c=h +_.d=i +_.e=j}, +bj6:function bj6(a,b){this.a=a +this.b=b}, +bj4:function bj4(a){this.a=a}, +bj5:function bj5(a){this.a=a}, +a1K:function a1K(a){this.a=a}, +Rr(){var s=A.a([],t.om),r=new A.c5(new Float64Array(16)) +r.fO() +return new A.z1(s,A.a([r],t.rE),A.a([],t.cR))}, +oa:function oa(a,b){this.a=a +this.b=null +this.$ti=b}, +YX:function YX(){}, +ag_:function ag_(a){this.a=a}, +XZ:function XZ(a){this.a=a}, +z1:function z1(a,b,c){this.a=a +this.b=b +this.c=c}, +St(a,b,c,d,e){var s=c==null?B.bd:c,r=a==null?A.cBL():a,q=t.S,p=A.dV(q) +return new A.mh(s,d,B.f2,A.N(q,t.SP),p,b,e,r,A.N(q,t.F))}, +d9q(a){return a===1||a===2||a===4}, +Sr:function Sr(a){this.a=a}, +E4:function E4(a,b){this.a=a +this.b=b}, +a5a:function a5a(a,b,c){this.a=a +this.b=b +this.c=c}, +Ss:function Ss(a,b){this.b=a +this.c=b}, +mh:function mh(a,b,c,d,e,f,g,h,i){var _=this +_.k2=!1 +_.dd=_.e7=_.bU=_.bj=_.be=_.bO=_.c_=_.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}, +bpA:function bpA(a,b){this.a=a +this.b=b}, +bpD:function bpD(a,b){this.a=a +this.b=b}, +bpC:function bpC(a,b){this.a=a +this.b=b}, +bpB:function bpB(a,b){this.a=a +this.b=b}, +Bq:function Bq(a,b,c){this.a=a +this.b=b +this.c=c}, +cA5:function cA5(a,b){this.a=a +this.b=b}, +by6:function by6(a){this.a=a +this.b=$}, +by7:function by7(){}, +awO:function awO(a,b,c){this.a=a +this.b=b +this.c=c}, +d56(a){return new A.le(a.gel(a),A.aK(20,null,!1,t.av))}, +d57(a){return a===1}, +czB(a,b,c){var s=t.S,r=A.a([],t.t),q=a==null?A.am2():a,p=A.dV(s) +return new A.uS(B.m,B.h_,A.am1(),B.eS,A.N(s,t.GY),r,A.N(s,t.SP),p,b,c,q,A.N(s,t.F))}, +Rt(a,b,c){var s=t.S,r=A.a([],t.t),q=a==null?A.am2():a,p=A.dV(s) +return new A.qc(B.m,B.h_,A.am1(),B.eS,A.N(s,t.GY),r,A.N(s,t.SP),p,b,c,q,A.N(s,t.F))}, +cyk(a,b,c){var s=t.S,r=A.a([],t.t),q=a==null?A.am2():a,p=A.dV(s) +return new A.pm(B.m,B.h_,A.am1(),B.eS,A.N(s,t.GY),r,A.N(s,t.SP),p,b,c,q,A.N(s,t.F))}, +aek:function aek(a,b){this.a=a +this.b=b}, +Qy:function Qy(){}, +bdY:function bdY(a,b){this.a=a +this.b=b}, +be2:function be2(a,b){this.a=a +this.b=b}, +be3:function be3(a,b){this.a=a +this.b=b}, +bdZ:function bdZ(){}, +be_:function be_(a,b){this.a=a +this.b=b}, +be0:function be0(a){this.a=a}, +be1:function be1(a,b){this.a=a +this.b=b}, +uS:function uS(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.id=_.go=$ +_.k3=_.k2=_.k1=null +_.k4=$ +_.ok=!1 +_.p1=e +_.p2=f +_.f=g +_.r=h +_.w=null +_.a=i +_.b=null +_.c=j +_.d=k +_.e=l}, +qc:function qc(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.id=_.go=$ +_.k3=_.k2=_.k1=null +_.k4=$ +_.ok=!1 +_.p1=e +_.p2=f +_.f=g +_.r=h +_.w=null +_.a=i +_.b=null +_.c=j +_.d=k +_.e=l}, +pm:function pm(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.id=_.go=$ +_.k3=_.k2=_.k1=null +_.k4=$ +_.ok=!1 +_.p1=e +_.p2=f +_.f=g +_.r=h +_.w=null +_.a=i +_.b=null +_.c=j +_.d=k +_.e=l}, +dag(a){return a===1}, +cIX(a,b,c){var s=t.S,r=a==null?A.csX():a +return new A.z6(A.N(s,t.s9),b,c,r,A.N(s,t.F))}, +cIY(a,b,c){return A.cIX(a,b,c)}, +zs:function zs(){}, +a5Y:function a5Y(){}, +btG:function btG(a,b){this.a=a +this.b=b}, +btF:function btF(a,b){this.a=a +this.b=b}, +aQa:function aQa(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.f=e +_.w=_.r=null}, +z6:function z6(a,b,c,d,e){var _=this +_.f=null +_.r=a +_.a=b +_.b=null +_.c=c +_.d=d +_.e=e}, +aPU:function aPU(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.f=e +_.w=_.r=null}, +avt:function avt(a,b,c,d,e){var _=this +_.f=null +_.r=a +_.a=b +_.b=null +_.c=c +_.d=d +_.e=e}, +aZz:function aZz(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.f=e +_.w=_.r=null}, +aHy:function aHy(a,b,c,d,e){var _=this +_.f=null +_.r=a +_.a=b +_.b=null +_.c=c +_.d=d +_.e=e}, +aea:function aea(a,b,c,d,e){var _=this +_.y=_.x=null +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.f=e +_.w=_.r=null}, +asu:function asu(a,b,c,d,e,f){var _=this +_.as=a +_.f=null +_.r=b +_.a=c +_.b=null +_.c=d +_.d=e +_.e=f}, +djm(a,b,c,d){var s=c.gcG(),r=c.gb8(c),q=c.gjf(c),p=new A.adG() +A.d3(a,p.gapo()) +return new A.Bl(d,s,b,r,q,p)}, +d53(a,b,c){var s=t.S,r=a==null?A.dtB():a +return new A.q4(A.N(s,t.HE),b,c,r,A.N(s,t.F))}, +d54(a){return a===1}, +djl(a,b,c,d){var s=a.gev(),r=a.gb8(a),q=$.ii.e8$.rh(0,a.gcG(),b),p=a.gcG(),o=a.gb8(a),n=a.gjf(a),m=new A.adG() +A.d3(B.CP,m.gapo()) +m=new A.YS(b,new A.l2(s,r),c,p,q,o,n,m) +m.aVt(a,b,c,d) +return m}, +cKb(a,b,c,d){var s=t.S,r=a==null?A.GO():a +return new A.zt(c,A.N(s,t.Oz),b,d,r,A.N(s,t.F))}, +adG:function adG(){this.a=!1}, +Bl:function Bl(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=!1}, +q4:function q4(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}, +YS:function YS(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.x=!1 +_.y=null +_.z=b +_.Q=null +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=!1}, +chO:function chO(a,b){this.a=a +this.b=b}, +zt:function zt(a,b,c,d,e,f){var _=this +_.x=_.w=_.r=_.f=null +_.y=a +_.z=null +_.Q=b +_.a=c +_.b=null +_.c=d +_.d=e +_.e=f}, +bu7:function bu7(a,b){this.a=a +this.b=b}, +bu3:function bu3(a,b){this.a=a +this.b=b}, +bu5:function bu5(a,b,c){this.a=a +this.b=b +this.c=c}, +bu6:function bu6(a,b){this.a=a +this.b=b}, +bu4:function bu4(a,b,c){this.a=a +this.b=b +this.c=c}, +bxY:function bxY(a,b){this.a=a +this.b=b}, +by_:function by_(){}, +bxZ:function bxZ(a,b,c){this.a=a +this.b=b +this.c=c}, +by0:function by0(){this.b=this.a=null}, +d7y(a){return!0}, +at0:function at0(a,b){this.a=a +this.b=b}, +bud:function bud(a,b){this.a=a +this.b=b}, +em:function em(){}, +fg:function fg(){}, +a3G:function a3G(a,b){this.a=a +this.b=b}, +TI:function TI(){}, +byh:function byh(a,b){this.a=a +this.b=b}, +l2:function l2(a,b){this.a=a +this.b=b}, +aPD:function aPD(){}, +dcO(a,b,c,d,e,f,g,h,i){return new A.a8Q(b,a,d,g,c,i,f,e,h)}, +dcM(a,b,c,d,e,f){var s=t.S,r=A.a([],t.t),q=A.dV(s),p=a==null?A.GO():a +return new A.ul(c,B.mp,e,f,A.N(s,t.EP),r,A.N(s,t.GY),A.N(s,t.y2),A.N(s,t.SP),q,b,d,p,A.N(s,t.F))}, +Ys:function Ys(a,b){this.a=a +this.b=b}, +NW:function NW(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a8P:function a8P(a,b,c){this.a=a +this.b=b +this.c=c}, +a8Q:function a8Q(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}, +UI:function UI(a,b,c){this.a=a +this.b=b +this.c=c}, +aQX:function aQX(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ul:function ul(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.at=a +_.ch=_.ay=_.ax=null +_.CW=b +_.cx=null +_.cy=c +_.db=d +_.dx=$ +_.dy=null +_.k2=_.k1=_.id=_.go=_.fy=_.fx=_.fr=$ +_.k4=_.k3=null +_.ok=e +_.p1=f +_.p2=g +_.p3=null +_.p4=$ +_.R8=h +_.RG=1 +_.rx=0 +_.ry=null +_.f=i +_.r=j +_.w=null +_.a=k +_.b=null +_.c=l +_.d=m +_.e=n}, +bDk:function bDk(){}, +bDl:function bDl(){}, +bDm:function bDm(a,b){this.a=a +this.b=b}, +bDn:function bDn(a){this.a=a}, +bDi:function bDi(a,b){this.a=a +this.b=b}, +bDj:function bDj(a){this.a=a}, +bDo:function bDo(){}, +bDp:function bDp(){}, +t5(a,b,c){var s=t.S,r=A.dV(s),q=a==null?A.GO():a +return new A.mB(B.b1,18,B.f2,A.N(s,t.SP),r,b,c,q,A.N(s,t.F))}, +t4:function t4(a,b,c){this.a=a +this.b=b +this.c=c}, +uD:function uD(a,b,c){this.a=a +this.b=b +this.c=c}, +anZ:function anZ(){}, +mB:function mB(a,b,c,d,e,f,g,h,i){var _=this +_.aJ=_.aq=_.ag=_.a4=_.N=_.D=_.dd=_.e7=_.bU=_.bj=_.be=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}, +bKx:function bKx(a,b){this.a=a +this.b=b}, +bKy:function bKy(a,b){this.a=a +this.b=b}, +bKz:function bKz(a,b){this.a=a +this.b=b}, +bKA:function bKA(a,b){this.a=a +this.b=b}, +bKB:function bKB(a){this.a=a}, +cME(a,b){var s=null,r=t.S,q=A.dV(r) +return new A.wP(B.m,B.mk,A.b9(r),s,s,0,s,s,s,s,s,s,A.N(r,t.SP),q,a,b,A.GO(),A.N(r,t.F))}, +ael:function ael(a,b){this.a=a +this.b=b}, +aaH:function aaH(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aaK:function aaK(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aaJ:function aaJ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aaL:function aaL(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}, +aaI:function aaI(a,b){this.b=a +this.c=b}, +ajn:function ajn(){}, +a_C:function a_C(){}, +b65:function b65(a){this.a=a}, +b66:function b66(a,b){this.a=a +this.b=b}, +b63:function b63(a,b){this.a=a +this.b=b}, +b64:function b64(a,b){this.a=a +this.b=b}, +b61:function b61(a,b){this.a=a +this.b=b}, +b62:function b62(a,b){this.a=a +this.b=b}, +b60:function b60(a,b){this.a=a +this.b=b}, +wO:function wO(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.at=a +_.dx=_.db=_.cy=_.cx=_.CW=_.ch=null +_.fx=_.fr=_.dy=!1 +_.go=_.fy=null +_.k1=b +_.k2=null +_.ok=_.k4=_.k3=$ +_.p3=_.p2=_.p1=null +_.p4=c +_.we$=d +_.Gu$=e +_.uo$=f +_.WD$=g +_.MU$=h +_.Cg$=i +_.MV$=j +_.WE$=k +_.WF$=l +_.f=m +_.r=n +_.w=null +_.a=o +_.b=null +_.c=p +_.d=q +_.e=r}, +wP:function wP(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.at=a +_.dx=_.db=_.cy=_.cx=_.CW=_.ch=null +_.fx=_.fr=_.dy=!1 +_.go=_.fy=null +_.k1=b +_.k2=null +_.ok=_.k4=_.k3=$ +_.p3=_.p2=_.p1=null +_.p4=c +_.we$=d +_.Gu$=e +_.uo$=f +_.WD$=g +_.MU$=h +_.Cg$=i +_.MV$=j +_.WE$=k +_.WF$=l +_.f=m +_.r=n +_.w=null +_.a=o +_.b=null +_.c=p +_.d=q +_.e=r}, +acV:function acV(){}, +aXQ:function aXQ(){}, +aXR:function aXR(){}, +aXS:function aXS(){}, +aXT:function aXT(){}, +aXU:function aXU(){}, +aMa:function aMa(a,b){this.a=a +this.b=b}, +Nx:function Nx(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.f=_.e=null}, +Ri:function Ri(a){this.a=a +this.b=null}, +bk2:function bk2(a,b){this.a=a +this.b=b}, +d8e(a){var s=t.av +return new A.Jq(A.aK(20,null,!1,s),a,A.aK(20,null,!1,s))}, +ks:function ks(a){this.a=a}, +FN:function FN(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +agL:function agL(a,b){this.a=a +this.b=b}, +le:function le(a,b){var _=this +_.a=a +_.b=null +_.c=b +_.d=0}, +Jq:function Jq(a,b,c){var _=this +_.e=a +_.a=b +_.b=null +_.c=c +_.d=0}, +Sz:function Sz(a,b,c){var _=this +_.e=a +_.a=b +_.b=null +_.c=c +_.d=0}, +dvN(a,b,c,d,e,f){var s=null +A.amd(s,s,!0,s,new A.ctJ(c,d,a,b,e),f,s,s,!0,!0,t.H)}, +dvS(a,b,c,d,e){var s=t.H +A.cN(e,!1).pF(A.brl(new A.ctO(c,d,a,b),null,s),s)}, +diC(){var s=t.GT +return new A.aSQ(A.d97().l8(0,new A.pG(A.a([],t.Y4),A.N(t.N,t.Cm),A.a([],t.s)),new A.c99(),s).bf(new A.c9a(),s),B.f)}, +c4D(a){var s=a.wh(t.WO),r=s==null?a.wh(t.cz):s +r.toString +return new A.c4r(r)}, +amD:function amD(a,b,c,d){var _=this +_.e=a +_.f=b +_.w=c +_.a=d}, +b33:function b33(a,b){this.a=a +this.b=b}, +ctJ:function ctJ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ctO:function ctO(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +OJ:function OJ(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +b31:function b31(a,b){this.a=a +this.b=b}, +b32:function b32(a){this.a=a}, +JY:function JY(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +afD:function afD(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +aK9:function aK9(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +agD:function agD(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aSQ:function aSQ(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +c99:function c99(){}, +c9a:function c9a(){}, +c98:function c98(a){this.a=a}, +c97:function c97(a,b){this.a=a +this.b=b}, +c96:function c96(a,b){this.a=a +this.b=b}, +c92:function c92(a){this.a=a}, +c95:function c95(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c94:function c94(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +c93:function c93(a){this.a=a}, +aSP:function aSP(a,b,c,d,e){var _=this +_.c=a +_.e=b +_.f=c +_.r=d +_.a=e}, +pG:function pG(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +c3F:function c3F(a){this.a=a}, +Xd:function Xd(a,b){this.a=a +this.b=b}, +agB:function agB(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aSO:function aSO(a,b){var _=this +_.d=a +_.e=!1 +_.a=null +_.b=b +_.c=null}, +c9_:function c9_(a,b){this.a=a +this.b=b}, +c90:function c90(a){this.a=a}, +c91:function c91(a){this.a=a}, +agC:function agC(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +WR:function WR(a,b){this.a=a +this.b=b}, +aQJ:function aQJ(a,b){this.a=a +this.b=b}, +aPk:function aPk(a,b){this.a=a +this.b=b}, +afM:function afM(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +c4r:function c4r(a){this.a=a}, +afN:function afN(a,b,c){var _=this +_.d=a +_.f=_.e=null +_.r=b +_.a=null +_.b=c +_.c=null}, +c4C:function c4C(a){this.a=a}, +c4B:function c4B(a){this.a=a}, +c4z:function c4z(a,b){this.a=a +this.b=b}, +c4A:function c4A(a,b){this.a=a +this.b=b}, +c4y:function c4y(a,b){this.a=a +this.b=b}, +c4x:function c4x(a){this.a=a}, +c4t:function c4t(a,b){this.a=a +this.b=b}, +c4s:function c4s(a){this.a=a}, +c4w:function c4w(){}, +c4v:function c4v(a){this.a=a}, +c4u:function c4u(a){this.a=a}, +aRd:function aRd(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +afO:function afO(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +afP:function afP(a,b){var _=this +_.r=_.f=_.d=$ +_.w=a +_.a=null +_.b=b +_.c=null}, +c4G:function c4G(a,b){this.a=a +this.b=b}, +c4H:function c4H(a,b){this.a=a +this.b=b}, +c4F:function c4F(a){this.a=a}, +c4E:function c4E(){}, +aNu:function aNu(a,b,c){this.c=a +this.d=b +this.a=c}, +bXA:function bXA(a){this.a=a}, +aKd:function aKd(){}, +bQz:function bQz(a,b){this.a=a +this.b=b}, +WQ:function WQ(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +anz:function anz(a){this.a=a}, +b5q:function b5q(){}, +b5r:function b5r(){}, +b5s:function b5s(){}, +a_v:function a_v(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +at3:function at3(a){this.a=a}, +bef:function bef(){}, +beg:function beg(){}, +beh:function beh(){}, +at2:function at2(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +ato:function ato(a){this.a=a}, +bgw:function bgw(){}, +bgx:function bgx(){}, +bgy:function bgy(){}, +atn:function atn(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +amJ(a,b,c){return new A.amI(a,b,c,null)}, +bUc:function bUc(a,b){this.a=a +this.b=b}, +amI:function amI(a,b,c,d){var _=this +_.c=a +_.d=b +_.r=c +_.a=d}, +bQA:function 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){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}, +bQB:function bQB(a){this.a=a}, +d1y(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.OK(r,q,p,n)}, +OK:function OK(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aKg:function aKg(){}, +ZG(a){return new A.H3(a.ga8q(),a.ga8p(),null)}, +cve(a,b){var s=b.c +if(s!=null)return s +switch(A.G(a).w.a){case 2:case 4:return A.cGl(a,b) +case 0:case 1:case 3:case 5:s=A.dS(a,B.an,t.v) +s.toString +switch(b.b.a){case 0:return s.gaN() +case 1:return s.gaK() +case 2:return s.gaM() +case 3:return s.gaH() +case 4:return s.gbD().toUpperCase() +case 5:return s.gaa() +case 6:return s.gaL() +case 7:return s.gak() +case 8:return s.gbz() +case 9:return""}break}}, +d1A(a,b){var s,r,q,p,o,n,m,l=null +switch(A.G(a).w.a){case 2:return new A.O(b,new A.b3l(),A.X(b).h("O<1,c>")) +case 1:case 0:s=A.a([],t.p) +for(r=0;q=b.length,r")) +case 4:return new A.O(b,new A.b3n(a),A.X(b).h("O<1,c>"))}}, +H3:function H3(a,b,c){this.c=a +this.e=b +this.a=c}, +b3l:function b3l(){}, +b3m:function b3m(a){this.a=a}, +b3n:function b3n(a){this.a=a}, +d1J(a,b,c,d){return new A.an1(c,a,d,b,null)}, +d1K(){return $.ar().dc()}, +b1x(a,b,c){var s,r,q=a.length +if(q===1)return a[0] +q=A.av(0,q-1,b) +q.toString +s=B.e.ec(q) +r=B.e.dO(q) +return c.$3(a[s],a[r],q-s)}, +an1:function an1(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aKw:function aKw(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +Y2:function Y2(a,b){this.a=a +this.b=b}, +NV:function NV(){}, +Y3:function Y3(a){this.a=a}, +oV:function oV(a,b,c){this.a=a +this.b=b +this.c=c}, +aSV:function aSV(){}, +b3L:function b3L(){}, +bR6:function bR6(a,b){this.b=a +this.c=b}, +cJL(){return new A.Jf(new A.brj(),A.N(t.K,t.Qu))}, +qN:function qN(a,b){this.a=a +this.b=b}, +SC:function SC(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.ch=a +_.CW=b +_.cx=c +_.cy=d +_.db=e +_.dx=f +_.fx=g +_.k1=h +_.k2=i +_.ok=j +_.R8=k +_.to=l +_.a=m}, +brj:function brj(){}, +bro:function bro(){}, +afQ:function afQ(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +c4I:function c4I(a,b){this.a=a +this.b=b}, +c4J:function c4J(){}, +jb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0){var s=e==null?null:e.gqy().b,r=a8==null?56:a8 +return new A.a_c(o,c,a5,a,k,e,i,a0,a1,a3,a2,d,m,n,b,!0,g,!1,a6,a9,f,new A.aTN(a8,s,1/0,r+(s==null?0:s)),a8,p,b0,a7,a4,!1,h,null)}, +d1O(a,b){var s,r +if(b.e==null){s=A.G(a).RG.Q +if(s==null)s=56 +r=b.f +return s+(r==null?0:r)}return b.b}, +ju(a,b,c,d,e,f,g,h,i){return new A.Ai(b,h,a,null,d,f,c,null,e,g,!1,!1,56,i,B.a_J,null)}, +i4(a,b,c,d,e,f){return new A.Ai(!0,f,a,d,b,!1,null,c,!1,!0,!1,e,64,null,B.a_K,null)}, +uu(a,b,c,d,e){var s=null +return new A.Ai(!0,e,a,s,s,!1,s,s,!1,!0,!1,!1,64,s,B.a_L,s)}, +cO0(a){var s=null +return new A.bRw(a,s,s,0,3,s,s,s,s,s,s,16,64,s,s,s)}, +dis(a){return new A.ag1(a)}, +dil(a){return new A.afB(a)}, +aiH:function aiH(a,b){this.a=a +this.b=b}, +cm6:function cm6(a){this.b=a}, +aTN:function aTN(a,b,c,d){var _=this +_.e=a +_.f=b +_.a=c +_.b=d}, +a_c:function a_c(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){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.Q=i +_.as=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 +_.a=b0}, +b3Q:function b3Q(a,b){this.a=a +this.b=b}, +acG:function acG(a){var _=this +_.d=null +_.e=!1 +_.a=null +_.b=a +_.c=null}, +bRx:function bRx(){}, +cfq:function cfq(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){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}, +Ai:function Ai(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 +_.as=f +_.at=g +_.dy=h +_.fr=i +_.fx=j +_.go=k +_.id=l +_.k3=m +_.p1=n +_.R8=o +_.a=p}, +aWO:function aWO(a,b,c){var _=this +_.f=_.e=_.d=null +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +aKP:function aKP(a,b){this.c=a +this.a=b}, +aUJ:function aUJ(a,b,c,d){var _=this +_.G=null +_.ac=a +_.aS=b +_.k1$=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}, +aih:function aih(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +ce1:function ce1(a){this.a=a}, +ce2:function ce2(a){this.a=a}, +aOC:function aOC(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aht:function aht(a,b,c,d,e){var _=this +_.G=a +_.ac=b +_.aS=c +_.k1$=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}, +aW1:function aW1(){}, +bRw:function bRw(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}, +ag1:function ag1(a){var _=this +_.a=a +_.d=_.c=_.b=$}, +afB:function afB(a){var _=this +_.a=a +_.d=_.c=_.b=$}, +b_P:function b_P(){}, +b_V:function b_V(){}, +b0O:function b0O(){}, +cEQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.BV(b==null?null:b,e,d,g,h,j,i,f,a,c,l,n,o,m,k)}, +d1N(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.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.av(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +m=A.iC(a.r,b.r,c) +l=A.z2(a.w,b.w,c) +k=A.z2(a.x,b.x,c) +j=c<0.5 +if(j)i=a.y +else i=b.y +h=A.av(a.z,b.z,c) +g=A.av(a.Q,b.Q,c) +f=A.d_(a.as,b.as,c) +e=A.d_(a.at,b.at,c) +if(j)j=a.ax +else j=b.ax +return A.cEQ(k,s,i,q,r,l,p,o,m,n,j,h,e,g,f)}, +BV:function BV(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}, +aKO:function aKO(){}, +dn_(a,b){var s,r,q,p,o=A.aF("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.aX()}, +a5z:function a5z(a,b){var _=this +_.c=!0 +_.r=_.f=_.e=_.d=null +_.a=a +_.b=b}, +brm:function brm(a,b){this.a=a +this.b=b}, +X5:function X5(a,b){this.a=a +this.b=b}, +AW:function AW(a,b){this.a=a +this.b=b}, +SE:function SE(a,b){var _=this +_.e=!0 +_.r=_.f=$ +_.a=a +_.b=b}, +brn:function brn(a,b){this.a=a +this.b=b}, +d1Z(a,b,c){var s,r,q,p,o,n,m +if(a===b&&!0)return a +s=A.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.av(a.d,b.d,c) +o=A.d_(a.e,b.e,c) +n=A.ji(a.f,b.f,c) +m=A.ZN(a.r,b.r,c) +return new A.a_x(s,r,q,p,o,n,m,A.og(a.w,b.w,c))}, +a_x:function a_x(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}, +aL9:function aL9(){}, +a5n:function a5n(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}, +aRe:function aRe(){}, +aoa(a,b,c,d,e){return new A.a_W(a,d,b,e,c,null)}, +a_W:function a_W(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.y=d +_.Q=e +_.a=f}, +aLv:function aLv(a,b){var _=this +_.d=$ +_.e=a +_.a=null +_.b=b +_.c=null}, +aLu:function aLu(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.a=e}, +bSQ:function bSQ(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}, +d2c(a,b,c){var s,r,q,p,o,n +if(a===b&&!0)return a +s=A.ai(a.a,b.a,c) +r=A.av(a.b,b.b,c) +if(c<0.5)q=a.c +else q=b.c +p=A.av(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +return new A.P9(s,r,q,p,o,n,A.ji(a.r,b.r,c))}, +P9:function P9(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aLw:function aLw(){}, +d2d(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.ai(a.a,b.a,c) +r=A.av(a.b,b.b,c) +q=A.z2(a.c,b.c,c) +p=A.z2(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +m=A.d_(a.r,b.r,c) +l=A.d_(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.a_X(s,r,q,p,o,n,m,l,j,i,h,g,f,k)}, +a_X:function a_X(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}, +aLx:function aLx(){}, +d2e(a,b,c,d,e,f,g,h,i,j,k,l){return new A.a_Y(a,h,c,g,l,j,i,b,f,k,d,e,null)}, +b2j(a,b,c,d,e,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h=null,g=A.cN(b,a0),f=A.dS(b,B.an,t.v) +f.toString +s=g.c +s.toString +s=A.RM(b,s) +r=f.gbA() +f=f.afk(f.gbV()) +q=A.G(b) +p=$.ae() +o=A.a([],t.Zt) +n=$.at +m=A.ms(B.bO) +l=A.a([],t.wi) +k=$.at +j=a2.h("ak<0?>") +i=a2.h("aI<0?>") +return g.pF(new A.a5X(a,s,!0,0.5625,h,h,h,h,h,q.x2.e,c,!0,e,h,h,a1,f,new A.bm(B.L,p,t.Tt),r,h,h,o,A.b9(t.kj),new A.aR(h,a2.h("aR>")),new A.aR(h,t.A),new A.qt(),h,0,new A.aI(new A.ak(n,a2.h("ak<0?>")),a2.h("aI<0?>")),m,l,B.ff,new A.bm(h,p,t.XR),new A.aI(new A.ak(k,j),i),new A.aI(new A.ak(k,j),i),a2.h("a5X<0>")),a2)}, +czR(a){var s=null +return new A.bSR(a,s,s,1,s,s,s,1,B.bkk,s,s,s,s,B.zY)}, +a_Y:function a_Y(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}, +ad5:function ad5(a,b,c){var _=this +_.d=a +_.e=b +_.a=null +_.b=c +_.c=null}, +bSW:function bSW(a){this.a=a}, +bSU:function bSU(a){this.a=a}, +bSV:function bSV(a,b){this.a=a +this.b=b}, +aNU:function aNU(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +bXX:function bXX(a){this.a=a}, +bXY:function bXY(a){this.a=a}, +aLy:function aLy(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +ahf:function ahf(a,b,c,d,e,f,g){var _=this +_.G=a +_.ac=b +_.aS=c +_.cZ=d +_.en=e +_.k1$=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}, +NQ:function NQ(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}, +XS:function XS(a,b,c){var _=this +_.d=a +_.a=null +_.b=b +_.c=null +_.$ti=c}, +c7n:function c7n(a,b){this.a=a +this.b=b}, +c7m:function c7m(a,b){this.a=a +this.b=b}, +c7l:function c7l(a){this.a=a}, +a5X:function a5X(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 +_.ac=a +_.aS=b +_.cZ=c +_.en=d +_.eY=e +_.i9=f +_.jY=g +_.hT=h +_.jm=i +_.ha=j +_.hw=k +_.jn=l +_.os=m +_.mg=n +_.z_=o +_.kv=p +_.lG=q +_.Gn=r +_.rv=s +_.Go=null +_.go=a0 +_.id=a1 +_.k1=!1 +_.k3=_.k2=null +_.k4=a2 +_.ok=a3 +_.p1=a4 +_.p2=a5 +_.p3=a6 +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=a7 +_.pk$=a8 +_.Q=a9 +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=b0 +_.CW=!0 +_.cy=_.cx=null +_.f=b1 +_.a=null +_.b=b2 +_.c=b3 +_.d=b4 +_.e=b5 +_.$ti=b6}, +btn:function btn(a){this.a=a}, +bSX:function bSX(a,b){this.a=a +this.b=b}, +ad4:function ad4(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bSS:function bSS(a){this.a=a}, +bST:function bST(a){this.a=a}, +bSR:function bSR(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}, +d2f(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +m=A.av(a.r,b.r,c) +l=A.iC(a.w,b.w,c) +k=c<0.5 +if(k)j=a.x +else j=b.x +i=A.ai(a.y,b.y,c) +h=A.a9L(a.z,b.z,c) +if(k)k=a.Q +else k=b.Q +return new A.Pa(s,r,q,p,o,n,m,l,j,i,h,k,A.C6(a.as,b.as,c))}, +Pa:function Pa(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}, +aLz:function aLz(){}, +cLj(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){return new A.a7H(a1,a0,s,r,a5,i,j,o,m,a4,g,p,k,n,f,a2,a6,e,a3,a,c,q,l,!1,d,!0,null)}, +a7H:function a7H(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 +_.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 +_.a=a7}, +aU8:function aU8(a,b){var _=this +_.uq$=a +_.a=null +_.b=b +_.c=null}, +aQn:function aQn(a,b,c){this.e=a +this.c=b +this.a=c}, +ahy:function ahy(a,b,c){var _=this +_.G=a +_.k1$=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}, +cc5:function cc5(a,b){this.a=a +this.b=b}, +b05:function b05(){}, +aoi:function aoi(a,b){this.as=a +this.a=b}, +b7p:function b7p(a){this.a=a}, +aLJ:function aLJ(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}, +aUK:function aUK(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.mg=!1 +_.z_=a +_.D=b +_.N=c +_.a4=d +_.ag=e +_.aq=f +_.aJ=g +_.U=h +_.aW=0 +_.aT=i +_.aU=j +_.wc$=k +_.MQ$=l +_.cT$=m +_.Y$=n +_.d7$=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}, +d2m(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.av(a.d,b.d,c) +n=A.av(a.e,b.e,c) +m=A.ji(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.a05(r,q,p,o,n,m,l,k,s)}, +cFq(a){var s=a.a0(t.v0),r=s==null?null:s.f +return r==null?A.G(a).xr:r}, +a05:function a05(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}, +a04:function a04(a,b,c){this.f=a +this.b=b +this.a=c}, +aLK:function aLK(){}, +C8(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.d6(a1,c,g,m,o,s,d,n,k,f,j,h,i,q,p,l,a2,a0,b,e,a,r)}, +vw(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.ghp() +q=a7==null +p=q?a5:a7.ghp() +p=A.cF(r,p,a8,A.amf(),t.p8) +r=s?a5:a6.gcv(a6) +o=q?a5:a7.gcv(a7) +n=t._ +o=A.cF(r,o,a8,A.f2(),n) +r=s?a5:a6.ghx() +r=A.cF(r,q?a5:a7.ghx(),a8,A.f2(),n) +m=s?a5:a6.gew() +m=A.cF(m,q?a5:a7.gew(),a8,A.f2(),n) +l=s?a5:a6.gc0(a6) +l=A.cF(l,q?a5:a7.gc0(a7),a8,A.f2(),n) +k=s?a5:a6.gc9() +k=A.cF(k,q?a5:a7.gc9(),a8,A.f2(),n) +j=s?a5:a6.gft(a6) +i=q?a5:a7.gft(a7) +h=t.PM +i=A.cF(j,i,a8,A.Zs(),h) +j=s?a5:a6.gdX(a6) +g=q?a5:a7.gdX(a7) +g=A.cF(j,g,a8,A.cBn(),t.pc) +j=s?a5:a6.glg() +f=q?a5:a7.glg() +e=t.tW +f=A.cF(j,f,a8,A.amg(),e) +j=s?a5:a6.y +j=A.cF(j,q?a5:a7.y,a8,A.amg(),e) +d=s?a5:a6.gle() +e=A.cF(d,q?a5:a7.gle(),a8,A.amg(),e) +d=s?a5:a6.ghU() +n=A.cF(d,q?a5:a7.ghU(),a8,A.f2(),n) +d=s?a5:a6.gkP() +h=A.cF(d,q?a5:a7.gkP(),a8,A.Zs(),h) +d=s?a5:a6.ghr() +d=A.d2n(d,q?a5:a7.ghr(),a8) +c=s?a5:a6.gdg(a6) +b=q?a5:a7.gdg(a7) +b=A.cF(c,b,a8,A.cB9(),t.KX) +c=a8<0.5 +if(c)a=s?a5:a6.giS() +else a=q?a5:a7.giS() +if(c)a0=s?a5:a6.gh6() +else a0=q?a5:a7.gh6() +if(c)a1=s?a5:a6.gkU() +else a1=q?a5:a7.gkU() +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.ZN(a4,q?a5:a7.db,a8) +if(c)s=s?a5:a6.giV() +else s=q?a5:a7.giV() +return A.C8(a4,a2,o,i,a3,j,r,n,h,e,f,a,m,g,l,b,d,s,k,a1,p,a0)}, +d2n(a,b,c){if(a==null&&b==null)return null +return new A.aQN(a,b,c)}, +d6:function d6(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}, +aQN:function aQN(a,b,c){this.a=a +this.b=b +this.c=c}, +aLM:function aLM(){}, +Hw(a,b,c,d){var s +$label0$0:{if(d<=1){s=a +break $label0$0}if(d<2){s=A.ji(a,b,d-1) +s.toString +break $label0$0}if(d<3){s=A.ji(b,c,d-2) +s.toString +break $label0$0}s=c +break $label0$0}return s}, +p1:function p1(){}, +adc:function adc(a,b,c){var _=this +_.r=_.f=_.e=_.d=null +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +bTL:function bTL(){}, +bTI:function bTI(a,b,c){this.a=a +this.b=b +this.c=c}, +bTJ:function bTJ(a,b){this.a=a +this.b=b}, +bTK:function bTK(a,b,c){this.a=a +this.b=b +this.c=c}, +bTl:function bTl(){}, +bTm:function bTm(){}, +bTn:function bTn(){}, +bTy:function bTy(){}, +bTB:function bTB(){}, +bTC:function bTC(){}, +bTD:function bTD(){}, +bTE:function bTE(){}, +bTF:function bTF(){}, +bTG:function bTG(){}, +bTH:function bTH(){}, +bTo:function bTo(){}, +bTp:function bTp(){}, +bTq:function bTq(){}, +bTz:function bTz(a){this.a=a}, +bTj:function bTj(a){this.a=a}, +bTA:function bTA(a){this.a=a}, +bTi:function bTi(a){this.a=a}, +bTr:function bTr(){}, +bTs:function bTs(){}, +bTt:function bTt(){}, +bTu:function bTu(){}, +bTv:function bTv(){}, +bTw:function bTw(){}, +bTx:function bTx(a){this.a=a}, +bTk:function bTk(){}, +aRV:function aRV(a){this.a=a}, +aQo:function aQo(a,b,c){this.e=a +this.c=b +this.a=c}, +ahz:function ahz(a,b,c){var _=this +_.G=a +_.k1$=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}, +cc6:function cc6(a,b){this.a=a +this.b=b}, +akG:function akG(){}, +cFr(a,b){return new A.a06(b,a,null)}, +cFt(a){var s,r=a.a0(t.Xj),q=r==null?null:r.w,p=q==null +if((p?null:q.at)==null){s=A.G(a) +if(p)q=s.y1 +if(q.at==null){p=s.y1.at +q=q.a8u(p==null?s.ay:p)}}q.toString +return q}, +cFs(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.aok(k,f,o,i,l,m,!1,b,d,e,h,g,n,c,j)}, +aoj:function aoj(a,b){this.a=a +this.b=b}, +b7o:function b7o(a,b){this.a=a +this.b=b}, +a06:function a06(a,b,c){this.w=a +this.b=b +this.a=c}, +aok:function aok(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}, +aLN:function aLN(){}, +Hy:function Hy(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.x=f +_.y=g +_.a=h}, +adg:function adg(a,b,c){var _=this +_.d=!1 +_.f=_.e=$ +_.r=null +_.w=a +_.x=b +_.z=_.y=$ +_.a=null +_.b=c +_.c=null}, +bTO:function bTO(a,b){this.a=a +this.b=b}, +bTP:function bTP(a,b){this.a=a +this.b=b}, +bTQ:function bTQ(a,b){this.a=a +this.b=b}, +bTN:function bTN(a,b){this.a=a +this.b=b}, +bTR:function bTR(a){this.a=a}, +ae6:function ae6(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aN8:function aN8(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +age:function age(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}, +agf:function agf(a,b){var _=this +_.d=a +_.w=_.r=_.f=_.e=$ +_.y=_.x=null +_.z=$ +_.a=_.Q=null +_.b=b +_.c=null}, +c7w:function c7w(a,b){this.a=a +this.b=b}, +c7v:function c7v(a,b){this.a=a +this.b=b}, +c7u:function c7u(a,b){this.a=a +this.b=b}, +aeR:function aeR(a,b,c){this.f=a +this.b=b +this.a=c}, +ae8:function ae8(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}, +aNb:function aNb(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +ae7:function ae7(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aNc:function aNc(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +bXb:function bXb(a,b){this.a=a +this.b=b}, +bXc:function bXc(a){this.a=a}, +bXd:function bXd(a,b,c){this.a=a +this.b=b +this.c=c}, +bX7:function bX7(a){this.a=a}, +bX8:function bX8(a){this.a=a}, +bXa:function bXa(a){this.a=a}, +bX6:function bX6(a){this.a=a}, +bX9:function bX9(a){this.a=a}, +bX5:function bX5(){}, +ack:function ack(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aku:function aku(a,b){var _=this +_.d=null +_.e=a +_.a=null +_.b=b +_.c=null}, +cnl:function cnl(a,b){this.a=a +this.b=b}, +cnm:function cnm(a){this.a=a}, +cnn:function cnn(a,b,c){this.a=a +this.b=b +this.c=c}, +cnh:function cnh(a){this.a=a}, +cni:function cni(a){this.a=a}, +cnk:function cnk(a){this.a=a}, +cng:function cng(a){this.a=a}, +cnj:function cnj(a,b){this.a=a +this.b=b}, +cnf:function cnf(){}, +akS:function akS(){}, +a0c(a,b,c,d,e,f,g,h,i,j){return new A.pZ(d,h,j,e,i,!0,c,g,b,B.byA,f)}, +jG(a,b,c,d){var s=null +return new A.pZ(c,s,s,s,s,!0,b,d,a,B.byB,s)}, +m4(a,b,c,d){var s=null +return new A.pZ(c,s,s,s,s,!0,b,d,a,B.byC,s)}, +adh:function adh(a,b){this.a=a +this.b=b}, +pZ:function pZ(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 +_.Q=i +_.as=j +_.a=k}, +bTX:function bTX(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}, +c_Z:function c_Z(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}, +c8P:function c8P(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}, +d2y(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.ai(a.b,b.b,c) +q=A.ai(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.av(a.e,b.e,c) +n=A.ji(a.f,b.f,c) +return new A.HA(s,r,q,p,o,n,A.iC(a.r,b.r,c))}, +HA:function HA(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aLR:function aLR(){}, +bU8:function bU8(a,b){this.a=a +this.b=b}, +HI:function HI(a,b,c){this.c=a +this.d=b +this.a=c}, +aLV:function aLV(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.e=null +_.ur$=b +_.rz$=c +_.us$=d +_.MW$=e +_.MX$=f +_.Gv$=g +_.MY$=h +_.Gw$=i +_.WG$=j +_.Ch$=k +_.z7$=l +_.z8$=m +_.eH$=n +_.b5$=o +_.a=null +_.b=p +_.c=null}, +bU6:function bU6(a){this.a=a}, +bU7:function bU7(a,b){this.a=a +this.b=b}, +aLT:function aLT(a){var _=this +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=_.fy=_.fx=_.fr=_.dy=_.dx=_.db=null +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +bU1:function bU1(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}, +bU5:function bU5(a){this.a=a}, +bU3:function bU3(a){this.a=a}, +bU2:function bU2(a){this.a=a}, +bU4:function bU4(a){this.a=a}, +akI:function akI(){}, +akJ:function akJ(){}, +d2G(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._ +p=A.cF(a.b,b.b,c,A.f2(),q) +o=A.cF(a.c,b.c,c,A.f2(),q) +q=A.cF(a.d,b.d,c,A.f2(),q) +n=A.av(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.iC(a.w,b.w,c)) +return new A.Ps(r,p,o,q,n,m,s,l,A.d2F(a.x,b.x,c))}, +d2F(a,b,c){if(a==null||b==null)return null +if(a===b)return a +return A.c8(a,b,c)}, +Ps:function Ps(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}, +aLW:function aLW(){}, +cFJ(a,b,c,d,e){return new A.vy(a,c,d,e,b,null)}, +bzx(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.a7E(h,b,q,s,r,j==null?B.azm:j,a1,k,i,a3,a2,a5,a6,p,l,a7,b5,b2,b0,f,n,!1,g,d,a4,b6,a0,m,a9,b3,o,a8,b1,e,c,b4,null)}, +cAa(a){var s,r,q +if(a==null)s=B.a8 +else{s=a.b +s.toString +s=t.r.a(s).a +r=a.gu(0) +q=s.a +s=s.b +r=new A.W(q,s,q+r.a,s+r.b) +s=r}return s}, +dme(a,b,c,d,e,f){var s,r,q,p=a.a-d.geL() +d.gdM(0) +d.gdT(0) +s=e.W(0,new A.j(d.a,d.b)) +r=b.a +q=Math.min(p*0.499,Math.min(c.c+r,24+r/2)) +switch(f.a){case 1:return s.a>=p-q +case 0:return s.a<=q}}, +vy:function vy(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.at=d +_.db=e +_.a=f}, +a7E:function a7E(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 +_.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 +_.a=b7}, +ah_:function ah_(a,b,c,d){var _=this +_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=$ +_.as=!1 +_.eH$=a +_.b5$=b +_.uq$=c +_.a=null +_.b=d +_.c=null}, +cbk:function cbk(a){this.a=a}, +cbj:function cbj(a){this.a=a}, +cbl:function cbl(a){this.a=a}, +cbn:function cbn(a){this.a=a}, +cbo:function cbo(a){this.a=a}, +cbp:function cbp(a){this.a=a}, +cbq:function cbq(a){this.a=a}, +cbm:function cbm(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aQf:function aQf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aLY:function aLY(a,b,c){this.e=a +this.c=b +this.a=c}, +aUL:function aUL(a,b,c){var _=this +_.G=a +_.k1$=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}, +cbH:function cbH(a,b){this.a=a +this.b=b}, +aM_:function aM_(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}, +xd:function xd(a,b){this.a=a +this.b=b}, +aLZ:function aLZ(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}, +ahh:function ahh(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.D=a +_.ag=_.a4=$ +_.aq=b +_.aJ=c +_.U=d +_.aW=e +_.aT=f +_.aU=g +_.ck=h +_.eA=i +_.eq=j +_.f1=k +_.fa$=l +_.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=m +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +cbL:function cbL(a,b){this.a=a +this.b=b}, +cbM:function cbM(a,b){this.a=a +this.b=b}, +cbI:function cbI(a){this.a=a}, +cbJ:function cbJ(a){this.a=a}, +cbK:function cbK(a){this.a=a}, +bUb:function bUb(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aZc:function aZc(a){this.a=a}, +bUa:function bUa(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}, +b04:function b04(){}, +alh:function alh(){}, +ali:function ali(){}, +cFK(a){var s +a.a0(t.aL) +s=A.G(a) +return s.bO}, +d2J(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.Pu(d,a,e,f,o,n,q,a1,p,!0,c,i,k,a0,r,j,m,b,g,l,h)}, +d2M(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.cF(a3.a,a4.a,a5,A.f2(),t._) +r=A.ai(a3.b,a4.b,a5) +q=A.ai(a3.c,a4.c,a5) +p=A.ai(a3.d,a4.d,a5) +o=A.ai(a3.e,a4.e,a5) +n=A.ai(a3.f,a4.f,a5) +m=A.ai(a3.r,a4.r,a5) +l=A.ai(a3.w,a4.w,a5) +k=A.ai(a3.x,a4.x,a5) +j=a5<0.5 +if(j)i=a3.y!==!1 +else i=a4.y!==!1 +h=A.ai(a3.z,a4.z,a5) +g=A.ji(a3.Q,a4.Q,a5) +f=A.ji(a3.as,a4.as,a5) +e=A.d2L(a3.at,a4.at,a5) +d=A.d2K(a3.ax,a4.ax,a5) +c=A.d_(a3.ay,a4.ay,a5) +b=A.d_(a3.ch,a4.ch,a5) +if(j){j=a3.CW +if(j==null)j=B.ak}else{j=a4.CW +if(j==null)j=B.ak}a=A.av(a3.cx,a4.cx,a5) +a0=A.av(a3.cy,a4.cy,a5) +a1=a3.db +if(a1==null)a2=a4.db!=null +else a2=!0 +if(a2)a1=A.z2(a1,a4.db,a5) +else a1=null +return A.d2J(r,j,h,s,q,p,a,a1,g,c,f,a0,b,n,o,k,m,d,i,e,l)}, +d2L(a,b,c){var s=a==null +if(s&&b==null)return null +if(s){s=b.a +return A.c8(new A.bx(A.Y(0,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),0,B.O,-1),b,c)}if(b==null){s=a.a +return A.c8(new A.bx(A.Y(0,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),0,B.O,-1),a,c)}return A.c8(a,b,c)}, +d2K(a,b,c){if(a==null&&b==null)return null +return t.KX.a(A.iC(a,b,c))}, +Pu:function Pu(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}, +aM0:function aM0(){}, +ri(a,b,c,d){return new A.jH(a,b,c,d,null)}, +bUd:function bUd(a,b){this.a=a +this.b=b}, +jH:function jH(a,b,c,d,e){var _=this +_.d=a +_.r=b +_.x=c +_.go=d +_.a=e}, +bUe:function bUe(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}, +bUf:function bUf(a){this.a=a}, +aoS:function aoS(a,b,c,d){var _=this +_.c=a +_.d=b +_.y=c +_.a=d}, +b9U(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.PL(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)}, +cFW(b2,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 +switch(b2.a){case 1:s=A.cvz(b3.gj(b3),$.amm()) +r=A.cG9(s.a,s.b) +q=r.a +p=q.d3(0,40) +o=q.d3(0,100) +n=q.d3(0,90) +m=q.d3(0,10) +l=r.b +k=l.d3(0,40) +j=l.d3(0,100) +i=l.d3(0,90) +l=l.d3(0,10) +h=r.c +g=h.d3(0,40) +f=h.d3(0,100) +e=h.d3(0,90) +h=h.d3(0,10) +d=r.f +c=d.d3(0,40) +b=d.d3(0,100) +a=d.d3(0,90) +d=d.d3(0,10) +a0=r.d +a1=a0.d3(0,99) +a2=a0.d3(0,10) +a3=a0.d3(0,99) +a4=a0.d3(0,10) +r=r.e +a5=r.d3(0,90) +a6=r.d3(0,30) +a7=r.d3(0,50) +r=r.d3(0,80) +a8=a0.d3(0,0) +a9=a0.d3(0,0) +b0=a0.d3(0,20) +b1=A.cLW(a1,c,a,a0.d3(0,95),q.d3(0,80),b0,a2,b,d,o,m,j,l,a4,a6,f,h,a7,r,p,n,a9,k,i,a8,a3,a5,g,e) +break +case 0:s=A.cvz(b3.gj(b3),$.amm()) +r=A.cG9(s.a,s.b) +q=r.a +p=q.d3(0,80) +o=q.d3(0,20) +n=q.d3(0,30) +m=q.d3(0,90) +l=r.b +k=l.d3(0,80) +j=l.d3(0,20) +i=l.d3(0,30) +l=l.d3(0,90) +h=r.c +g=h.d3(0,80) +f=h.d3(0,20) +e=h.d3(0,30) +h=h.d3(0,90) +d=r.f +c=d.d3(0,80) +b=d.d3(0,20) +a=d.d3(0,30) +d=d.d3(0,80) +a0=r.d +a1=a0.d3(0,10) +a2=a0.d3(0,90) +a3=a0.d3(0,10) +a4=a0.d3(0,90) +r=r.e +a5=r.d3(0,30) +a6=r.d3(0,80) +a7=r.d3(0,60) +r=r.d3(0,30) +a8=a0.d3(0,0) +a9=a0.d3(0,0) +b0=a0.d3(0,90) +b1=A.cLW(a1,c,a,a0.d3(0,20),q.d3(0,40),b0,a2,b,d,o,m,j,l,a4,a6,f,h,a7,r,p,n,a9,k,i,a8,a3,a5,g,e) +break +default:b1=null}r=b1.a>>>0 +q=b1.b +p=b1.c +o=b1.d +n=b1.e +m=b1.f +l=b1.r +k=b1.w +j=b1.x +i=b1.y +h=b1.z +g=b1.Q +f=b1.as +e=b1.at +d=b1.ax +c=b1.ay +b=b1.dy +a=b1.fr +a0=b1.ch +a1=b1.CW +a2=b1.cx +a3=b1.cy +a4=b1.db +a5=b1.dx +a6=b1.go +a7=b1.id +a8=b1.k1 +a9=b1.fx +b0=b1.fy +return A.b9U(new A.v(a0>>>0),b2,new A.v(f>>>0),new A.v(d>>>0),new A.v(a8>>>0),new A.v(a6>>>0),new A.v(a1>>>0),new A.v(e>>>0),new A.v(c>>>0),new A.v(a7>>>0),new A.v(q>>>0),new A.v(o>>>0),new A.v(m>>>0),new A.v(k>>>0),new A.v(a3>>>0),new A.v(a5>>>0),new A.v(i>>>0),new A.v(g>>>0),new A.v(b>>>0),new A.v(a>>>0),new A.v(r),new A.v(p>>>0),new A.v(b0>>>0),new A.v(n>>>0),new A.v(l>>>0),new A.v(a9>>>0),new A.v(a2>>>0),new A.v(r),new A.v(a4>>>0),new A.v(j>>>0),new A.v(h>>>0))}, +d36(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.ai(r,q,b9) +p.toString +o=b7.c +n=b8.c +m=A.ai(o,n,b9) +m.toString +l=b7.d +if(l==null)l=r +k=b8.d +l=A.ai(l,k==null?q:k,b9) +k=b7.e +if(k==null)k=o +j=b8.e +k=A.ai(k,j==null?n:j,b9) +j=b7.f +i=b8.f +h=A.ai(j,i,b9) +h.toString +g=b7.r +f=b8.r +e=A.ai(g,f,b9) +e.toString +d=b7.w +if(d==null)d=j +c=b8.w +d=A.ai(d,c==null?i:c,b9) +c=b7.x +if(c==null)c=g +b=b8.x +c=A.ai(c,b==null?f:b,b9) +b=b7.y +a=b==null +a0=a?j:b +a1=b8.y +a2=a1==null +a0=A.ai(a0,a2?i:a1,b9) +a3=b7.z +a4=a3==null +a5=a4?g:a3 +a6=b8.z +a7=a6==null +a5=A.ai(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.ai(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.ai(j,g,b9) +j=b7.at +f=b8.at +b=A.ai(j,f,b9) +b.toString +a=b7.ax +a1=b8.ax +a2=A.ai(a,a1,b9) +a2.toString +a3=b7.ay +j=a3==null?j:a3 +a3=b8.ay +j=A.ai(j,a3==null?f:a3,b9) +f=b7.ch +if(f==null)f=a +a=b8.ch +f=A.ai(f,a==null?a1:a,b9) +a=A.ai(b7.CW,b8.CW,b9) +a.toString +a1=b7.cx +a3=b8.cx +a4=A.ai(a1,a3,b9) +a4.toString +a6=b7.cy +a7=b8.cy +a8=A.ai(a6,a7,b9) +a8.toString +a9=b7.db +b0=b8.db +b1=A.ai(a9,b0,b9) +b1.toString +b2=b7.dx +if(b2==null)b2=a6 +b3=b8.dx +b2=A.ai(b2,b3==null?a7:b3,b9) +b3=b7.dy +if(b3==null)b3=a9 +b4=b8.dy +b3=A.ai(b3,b4==null?b0:b4,b9) +b4=b7.fr +if(b4==null)b4=a1 +b5=b8.fr +b4=A.ai(b4,b5==null?a3:b5,b9) +b5=b7.fx +a1=b5==null?a1:b5 +b5=b8.fx +a1=A.ai(a1,b5==null?a3:b5,b9) +a3=b7.fy +if(a3==null)a3=B.B +b5=b8.fy +a3=A.ai(a3,b5==null?B.B:b5,b9) +b5=b7.go +if(b5==null)b5=B.B +b6=b8.go +b5=A.ai(b5,b6==null?B.B:b6,b9) +b6=b7.id +a9=b6==null?a9:b6 +b6=b8.id +a9=A.ai(a9,b6==null?b0:b6,b9) +b0=b7.k1 +a6=b0==null?a6:b0 +b0=b8.k1 +a6=A.ai(a6,b0==null?a7:b0,b9) +a7=b7.k2 +o=a7==null?o:a7 +a7=b8.k2 +o=A.ai(o,a7==null?n:a7,b9) +n=b7.k3 +r=n==null?r:n +n=b8.k3 +return A.b9U(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.ai(r,n==null?q:n,b9),b2,a0,i)}, +PL:function PL(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}, +aM8:function aM8(){}, +im:function im(a,b){this.b=a +this.a=b}, +jN:function jN(a,b){this.b=a +this.a=b}, +d40(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.bbQ(a.a,b.a,c) +r=t._ +q=A.cF(a.b,b.b,c,A.f2(),r) +p=A.av(a.c,b.c,c) +o=A.av(a.d,b.d,c) +n=A.d_(a.e,b.e,c) +r=A.cF(a.f,b.f,c,A.f2(),r) +m=A.av(a.r,b.r,c) +l=A.d_(a.w,b.w,c) +k=A.av(a.x,b.x,c) +j=A.av(a.y,b.y,c) +i=A.av(a.z,b.z,c) +h=A.av(a.Q,b.Q,c) +g=c<0.5 +f=g?a.as:b.as +g=g?a.at:b.at +return new A.a1x(s,q,p,o,n,r,m,l,k,j,i,h,f,g)}, +a1x:function a1x(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}, +aN3:function aN3(){}, +bbM(a,b){var s=null,r=a==null,q=r?s:A.b7(a),p=b==null +if(q==(p?s:A.b7(b))){q=r?s:A.bp(a) +if(q==(p?s:A.bp(b))){r=r?s:A.cL(a) +r=r==(p?s:A.cL(b))}else r=!1}else r=!1 +return r}, +a1C(a,b){var s=a==null,r=s?null:A.b7(a) +if(r===A.b7(b)){s=s?null:A.bp(a) +s=s===A.bp(b)}else s=!1 +return s}, +cw9(a,b){return(A.b7(b)-A.b7(a))*12+A.bp(b)-A.bp(a)}, +bbL(a,b){if(b===2)return B.d.M(a,4)===0&&B.d.M(a,100)!==0||B.d.M(a,400)===0?29:28 +return B.FM[b-1]}, +vE:function vE(a,b){this.a=a +this.b=b}, +as9:function as9(a,b){this.a=a +this.b=b}, +amc(a,b,c,d,e,f){return A.dvR(a,b,c,d,e,f)}, +dvR(a,b,c,d,e,f){var s=0,r=A.p(t.Q0),q,p,o,n,m,l +var $async$amc=A.l(function(g,h){if(g===1)return A.m(h,r) +while(true)switch(s){case 0:l={} +if(d==null)d=null +else{p=A.cd(A.b7(d),A.bp(d),A.cL(d),0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +d=new A.am(p,!1)}p=A.cd(A.b7(c),A.bp(c),A.cL(c),0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +c=new A.am(p,!1) +p=A.cd(A.b7(e),A.bp(e),A.cL(e),0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +e=new A.am(p,!1) +if(d==null)p=null +else{p=A.cd(A.b7(d),A.bp(d),A.cL(d),0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +p=new A.am(p,!1)}o=A.cd(A.b7(c),A.bp(c),A.cL(c),0,0,0,0,!1) +if(!A.bI(o))A.C(A.bV(o)) +n=A.cd(A.b7(e),A.bp(e),A.cL(e),0,0,0,0,!1) +if(!A.bI(n))A.C(A.bV(n)) +m=b==null?new A.am(Date.now(),!1):b +m=A.cd(A.b7(m),A.bp(m),A.cL(m),0,0,0,0,!1) +if(!A.bI(m))A.C(A.bV(m)) +l.a=new A.a1z(p,new A.am(o,!1),new A.am(n,!1),new A.am(m,!1),B.hu,f,null,null,null,B.iT,null,null,null,null,null,null,null,null,null) +q=A.amd(null,null,!0,null,new A.ctL(l,null),a,null,null,!0,!0,t.d) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$amc,r)}, +ctL:function ctL(a,b){this.a=a +this.b=b}, +a1z:function a1z(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 +_.cx=p +_.cy=q +_.db=r +_.a=s}, +ae5:function ae5(a,b,c,d,e,f,g,h,i){var _=this +_.e=_.d=$ +_.f=a +_.r=b +_.w=c +_.eb$=d +_.jX$=e +_.um$=f +_.hH$=g +_.ke$=h +_.a=null +_.b=i +_.c=null}, +bWX:function bWX(a){this.a=a}, +bWW:function bWW(a){this.a=a}, +bWV:function bWV(a,b){this.a=a +this.b=b}, +bWY:function bWY(a){this.a=a}, +bX_:function bX_(a,b){this.a=a +this.b=b}, +bWZ:function bWZ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aVy:function aVy(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +aVx:function aVx(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +aN7:function aN7(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.x=f +_.a=g}, +cnU:function cnU(){}, +akR:function akR(){}, +d49(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.m8(a,i,a6,a8,a7,j,k,l,m,b2,g,e,d,f,b1,a9,b0,b6,b4,b3,b5,o,p,a1,a3,a2,q,r,s,a0,a4,a5,h,n,b,c)}, +d4b(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,b4,b5 +if(b6===b7&&!0)return b6 +s=A.ai(b6.a,b7.a,b8) +r=A.av(b6.b,b7.b,b8) +q=A.ai(b6.c,b7.c,b8) +p=A.ai(b6.d,b7.d,b8) +o=A.iC(b6.e,b7.e,b8) +n=A.ai(b6.f,b7.f,b8) +m=A.ai(b6.r,b7.r,b8) +l=A.d_(b6.w,b7.w,b8) +k=A.d_(b6.x,b7.x,b8) +j=A.d_(b6.y,b7.y,b8) +i=A.d_(b6.z,b7.z,b8) +h=t._ +g=A.cF(b6.Q,b7.Q,b8,A.f2(),h) +f=A.cF(b6.as,b7.as,b8,A.f2(),h) +e=A.cF(b6.at,b7.at,b8,A.f2(),h) +d=A.cF(b6.ax,b7.ax,b8,A.f2(),h) +c=A.cF(b6.ay,b7.ay,b8,A.f2(),h) +b=A.d4a(b6.ch,b7.ch,b8) +a=A.d_(b6.CW,b7.CW,b8) +a0=A.cF(b6.cx,b7.cx,b8,A.f2(),h) +a1=A.cF(b6.cy,b7.cy,b8,A.f2(),h) +a2=A.cF(b6.db,b7.db,b8,A.f2(),h) +a3=A.ai(b6.dx,b7.dx,b8) +a4=A.av(b6.dy,b7.dy,b8) +a5=A.ai(b6.fr,b7.fr,b8) +a6=A.ai(b6.fx,b7.fx,b8) +a7=A.iC(b6.fy,b7.fy,b8) +a8=A.ai(b6.go,b7.go,b8) +a9=A.ai(b6.id,b7.id,b8) +b0=A.d_(b6.k1,b7.k1,b8) +b1=A.d_(b6.k2,b7.k2,b8) +b2=A.ai(b6.k3,b7.k3,b8) +h=A.cF(b6.k4,b7.k4,b8,A.f2(),h) +b3=A.ai(b6.ok,b7.ok,b8) +if(b8<0.5)b4=b6.p1 +else b4=b7.p1 +b5=A.vw(b6.p2,b7.p2,b8) +return A.d49(s,b5,A.vw(b6.p3,b7.p3,b8),f,g,e,i,b3,r,n,m,l,k,b4,a3,a4,a8,a9,b0,b1,a5,a7,a6,b2,h,q,o,p,c,b,d,j,a1,a0,a2,a)}, +d4a(a,b,c){var s +if(a==b)return a +if(a==null){s=b.a +return A.c8(new A.bx(A.Y(0,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),0,B.O,-1),b,c)}s=a.a +return A.c8(a,new A.bx(A.Y(0,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),0,B.O,-1),c)}, +asa(a){var s=a.a0(t.ej) +if(s!=null)s.gi3(s) +s=A.G(a) +return s.bj}, +aN6(a){var s=null +return new A.aN5(a,s,6,s,s,B.x7,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,0,s,s,B.ep,s,s,s,s,s,s,s,s,s,s)}, +m8:function m8(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 +_.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}, +aN5:function aN5(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 +_.p4=a +_.rx=_.RG=_.R8=$ +_.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 +_.k4=b3 +_.ok=b4 +_.p1=b5 +_.p2=b6 +_.p3=b7}, +bWO:function bWO(a){this.a=a}, +bWN:function bWN(a){this.a=a}, +bWP:function bWP(a){this.a=a}, +bWR:function bWR(a){this.a=a}, +bWT:function bWT(a){this.a=a}, +bWS:function bWS(a){this.a=a}, +bWU:function bWU(a){this.a=a}, +bWQ:function bWQ(a){this.a=a}, +aN9:function aN9(){}, +aNs:function aNs(){}, +bcw:function bcw(){}, +b_x:function b_x(){}, +asy:function asy(a,b,c){this.c=a +this.d=b +this.a=c}, +d4o(a,b,c){var s=null +return new A.Qr(b,A.bv(c,s,s,s,B.bf,s,s,s,s,B.Zd.bu(A.G(a).ay.a===B.aN?B.r:B.aL),s,s,s,s,s),s)}, +Qr:function Qr(a,b,c){this.c=a +this.d=b +this.a=c}, +cwd(a,b,c,d,e,f,g,h,i){return new A.asF(b,e,g,i,f,d,h,a,c,null)}, +b3q(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){return new A.OM(p,q,r,g,h,a,c,b,e,d,i,m,o,l,j,f,n,k,null)}, +dke(a,b,c,d){return new A.dg(A.cI(B.eb,b,null),!1,d,null)}, +amd(a,b,c,d,e,f,g,h,i,j,k){var s,r,q=A.cN(f,!0).c +q.toString +s=A.RM(f,q) +q=A.cN(f,!0) +r=b==null?B.aC:b +return q.pF(A.d4u(a,r,c,d,e,f,g,s,B.yb,!0,k),k)}, +BI(a,b,c,d){var s,r,q=null +switch(A.G(c).w.a){case 0:case 1:case 3:case 5:return A.amd(q,q,a!==!1,q,b,c,q,q,!0,!0,d) +case 2:case 4:s=A.cN(c,!0) +r=B.n8.f3(c) +return s.pF(A.d3J(q,r,a===!0,q,b,c,q,d),d)}}, +d4u(a,b,c,d,e,f,g,h,i,a0,a1){var s,r,q,p,o,n,m,l,k=null,j=A.dS(f,B.an,t.v) +j.toString +j=j.gal() +s=A.a([],t.Zt) +r=$.at +q=A.ms(B.bO) +p=A.a([],t.wi) +o=$.ae() +n=$.at +m=a1.h("ak<0?>") +l=a1.h("aI<0?>") +return new A.a1L(new A.bcZ(e,h,!0),c,j,b,B.cC,A.drM(),a,k,i,s,A.b9(t.kj),new A.aR(k,a1.h("aR>")),new A.aR(k,t.A),new A.qt(),k,0,new A.aI(new A.ak(r,a1.h("ak<0?>")),a1.h("aI<0?>")),q,p,B.ff,new A.bm(k,o,t.XR),new A.aI(new A.ak(n,m),l),new A.aI(new A.ak(n,m),l),a1.h("a1L<0>"))}, +cOe(a){var s=null +return new A.bXK(a,s,6,s,s,B.x7,B.C,s,s,s,s)}, +asF:function asF(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}, +OM:function OM(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.Q=f +_.as=g +_.at=h +_.CW=i +_.cx=j +_.cy=k +_.db=l +_.dx=m +_.dy=n +_.fr=o +_.fx=p +_.fy=q +_.id=r +_.a=s}, +a1L:function a1L(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 +_.ac=a +_.aS=b +_.cZ=c +_.en=d +_.eY=e +_.i9=f +_.jY=g +_.go=h +_.id=i +_.k1=!1 +_.k3=_.k2=null +_.k4=j +_.ok=k +_.p1=l +_.p2=m +_.p3=n +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=o +_.pk$=p +_.Q=q +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=r +_.CW=!0 +_.cy=_.cx=null +_.f=s +_.a=null +_.b=a0 +_.c=a1 +_.d=a2 +_.e=a3 +_.$ti=a4}, +bcZ:function bcZ(a,b,c){this.a=a +this.b=b +this.c=c}, +bXK:function bXK(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}, +d4v(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b&&!0)return a +s=A.ai(a.a,b.a,c) +r=A.av(a.b,b.b,c) +q=A.ai(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.iC(a.e,b.e,c) +n=A.ZN(a.f,b.f,c) +m=A.ai(a.y,b.y,c) +l=A.d_(a.r,b.r,c) +k=A.d_(a.w,b.w,c) +return new A.Qt(s,r,q,p,o,n,l,k,A.ji(a.x,b.x,c),m)}, +Qt:function Qt(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}, +aNx:function aNx(){}, +cH1(a,b){var s=null +return new A.q3(b,s,s,s,a,s)}, +cH2(a,b,c){var s,r,q,p,o=A.cwo(a) +A.G(a) +s=A.czV(a) +if(b==null){r=o.a +q=r}else q=b +if(q==null)q=s==null?null:s.ga6(0) +p=c +if(q==null)return new A.bx(B.B,p,B.O,-1) +return new A.bx(q,p,B.O,-1)}, +czV(a){return new A.bXU(a,null,16,1,0,0)}, +q3:function q3(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +Wn:function Wn(a,b,c,d){var _=this +_.c=a +_.d=b +_.r=c +_.a=d}, +bXU:function bXU(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +d4L(a,b,c){var s,r,q,p +if(a===b&&!0)return a +s=A.ai(a.a,b.a,c) +r=A.av(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.av(a.d,b.d,c) +return new A.Qw(s,r,q,p,A.av(a.e,b.e,c))}, +cwo(a){var s +a.a0(t.Jj) +s=A.G(a) +return s.e7}, +Qw:function Qw(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aND:function aND(){}, +d5c(a,b,c){var s,r,q,p,o,n,m +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.iC(a.f,b.f,c) +m=A.iC(a.r,b.r,c) +return new A.a2c(s,r,q,p,o,n,m,A.av(a.w,b.w,c))}, +a2c:function a2c(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}, +aNY:function aNY(){}, +cHI(a,b,c){return new A.o4(b,a,c.h("o4<0>"))}, +cHH(a,b,c,d,e){return new A.QC(c,b,d,a,null,e.h("QC<0>"))}, +o4:function o4(a,b,c){this.a=a +this.b=b +this.$ti=c}, +QC:function QC(a,b,c,d,e,f){var _=this +_.w=a +_.cx=b +_.cy=c +_.dx=d +_.a=e +_.$ti=f}, +Xj:function Xj(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.f=$ +_.r=c +_.x=_.w=$ +_.Q=_.z=_.y=null +_.as=!1 +_.a=_.at=null +_.b=d +_.c=null +_.$ti=e}, +bYp:function bYp(a){this.a=a}, +bYq:function bYq(a){this.a=a}, +bYk:function bYk(a){this.a=a}, +bYl:function bYl(a){this.a=a}, +bYs:function bYs(a){this.a=a}, +bYr:function bYr(a){this.a=a}, +bYt:function bYt(a){this.a=a}, +bYu:function bYu(a,b){this.a=a +this.b=b}, +bYd:function bYd(a,b,c){this.a=a +this.b=b +this.c=c}, +bYo:function bYo(a){this.a=a}, +bYm:function bYm(a){this.a=a}, +bYn:function bYn(){}, +bYj:function bYj(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bYf:function bYf(a,b){this.a=a +this.b=b}, +bYh:function bYh(a,b){this.a=a +this.b=b}, +bYi:function bYi(a,b){this.a=a +this.b=b}, +bYg:function bYg(a,b){this.a=a +this.b=b}, +bYe:function bYe(a){this.a=a}, +WY:function WY(){}, +WX:function WX(){}, +aNZ:function aNZ(a,b,c){this.e=a +this.c=b +this.a=c}, +xh:function xh(a,b,c){this.dJ$=a +this.a7$=b +this.a=c}, +ahq:function ahq(a,b,c,d,e){var _=this +_.D=a +_.cT$=b +_.Y$=c +_.d7$=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}, +cc3:function cc3(a,b,c){this.a=a +this.b=b +this.c=c}, +bYc:function bYc(a,b,c,d){var _=this +_.d=a +_.e=$ +_.a=b +_.b=c +_.c=d}, +b0e:function b0e(){}, +b0f:function b0f(){}, +d5e(a,b,c){var s,r +if(a===b&&!0)return a +s=A.d_(a.a,b.a,c) +if(c<0.5)r=a.b +else r=b.b +return new A.QD(s,r,A.cy_(a.c,b.c,c))}, +QD:function QD(a,b,c){this.a=a +this.b=b +this.c=c}, +aO_:function aO_(){}, +cHU(a,b,c,d,e,f,g,h,i,j,k){return new A.ati(i,h,g,f,k,c,d,!1,j,!0,b,e)}, +d6b(a,b,c,d,e,f,g,h,i,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){var s,r,q,p,o=null,n=c==null&&d==null?o:new A.aew(c,d),m=a0==null,l=m&&e==null?o:new A.aew(a0,e),k=m?o:new A.aOk(a0),j=g==null?o:new A.aOi(g) +m=a4==null?o:new A.bS(a4,t.h9) +s=a3==null?o:new A.bS(a3,t.Ak) +r=a2==null?o:new A.bS(a2,t.iL) +q=a1==null?o:new A.bS(a1,t.iL) +p=a5==null?o:new A.bS(a5,t.kU) +return A.C8(a,b,n,j,h,o,l,o,o,q,r,new A.aOj(i,f),k,s,m,p,o,a6,o,a7,new A.bS(a8,t.wG),a9)}, +dnL(a){var s=A.G(a),r=s.p3.as,q=r==null?null:r.r +if(q==null)q=14 +r=A.cG(a,B.bn) +r=r==null?null:r.gdZ() +return A.Hw(new A.af(24,0,24,0),new A.af(12,0,12,0),new A.af(6,0,6,0),(r==null?B.Y:r).bK(0,q)/14)}, +ati:function ati(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}, +aew:function aew(a,b){this.a=a +this.b=b}, +aOk:function aOk(a){this.a=a}, +aOi:function aOi(a){this.a=a}, +aOj:function aOj(a,b){this.a=a +this.b=b}, +aOl:function aOl(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}, +bYY:function bYY(a){this.a=a}, +bZ_:function bZ_(a){this.a=a}, +bZ1:function bZ1(a){this.a=a}, +bYZ:function bYZ(){}, +bZ0:function bZ0(){}, +b_z:function b_z(){}, +b_A:function b_A(){}, +b_B:function b_B(){}, +b_C:function b_C(){}, +d6a(a,b,c){if(a===b)return a +return new A.a2v(A.vw(a.a,b.a,c))}, +a2v:function a2v(a){this.a=a}, +aOm:function aOm(){}, +cwE(a,b,c){if(b!=null&&!b.l(0,B.D))return A.PO(A.Y(B.e.aF(255*A.d6c(c)),b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(b)&255),a) +return a}, +d6c(a){var s,r,q,p,o,n +if(a<0)return 0 +for(s=0;r=B.H8[s],q=r.a,a>=q;){if(a===q||s+1===6)return r.b;++s}p=B.H8[s-1] +o=p.a +n=p.b +return n+(a-o)/(q-o)*(r.b-n)}, +B_:function B_(a,b){this.a=a +this.b=b}, +d6L(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.ji(a.c,b.c,c) +p=A.ZN(a.d,b.d,c) +o=A.ji(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +m=A.ai(a.r,b.r,c) +l=A.ai(a.w,b.w,c) +k=A.ai(a.x,b.x,c) +j=A.iC(a.y,b.y,c) +i=A.iC(a.z,b.z,c) +h=c<0.5 +if(h)g=a.Q +else g=b.Q +if(h)h=a.as +else h=b.as +return new A.a2U(s,r,q,p,o,n,m,l,k,j,i,g,h)}, +a2U:function a2U(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}, +aOD:function aOD(){}, +tR(a,b,c,d,e,f,g,h,i,j,k){return new A.Dm(B.a_p,i,h,g,f,k,c,d,!1,j,!0,b,e)}, +cRj(a){var s=A.G(a).p3.as,r=s==null?null:s.r +if(r==null)r=14 +s=A.cG(a,B.bn) +s=s==null?null:s.gdZ() +s=(s==null?B.Y:s).bK(0,r) +return A.Hw(new A.af(24,0,24,0),new A.af(12,0,12,0),new A.af(6,0,6,0),s/14)}, +NH(a,b,c){var s=null +return new A.aOV(B.a_p,c,s,s,s,s,B.i,s,!1,s,!0,new A.aOW(b,a,s),s)}, +c_Y:function c_Y(a,b){this.a=a +this.b=b}, +Dm:function Dm(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.ax=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}, +aOV:function aOV(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.ax=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}, +aOW:function aOW(a,b,c){this.c=a +this.d=b +this.a=c}, +aOT:function aOT(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}, +c_T:function c_T(a){this.a=a}, +c_V:function c_V(a){this.a=a}, +c_X:function c_X(a){this.a=a}, +c_U:function c_U(){}, +c_W:function c_W(){}, +aOY:function aOY(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}, +c03:function c03(a){this.a=a}, +c05:function c05(a){this.a=a}, +c07:function c07(a){this.a=a}, +c04:function c04(){}, +c06:function c06(){}, +d70(a,b,c){if(a===b)return a +return new A.a34(A.vw(a.a,b.a,c))}, +a34:function a34(a){this.a=a}, +aOU:function aOU(){}, +cIj(a,b,c,d,e,f,g){var s=g==null?1:g,r=f==null?b:f +return new A.a3l(s,r,e==null?b:e,b,d,c,a,null)}, +b9I:function b9I(a,b){this.a=a +this.b=b}, +aae:function aae(a,b){this.a=a +this.b=b}, +a3k:function a3k(a,b){this.d=a +this.a=b}, +aPd:function aPd(a){this.a=null +this.b=a +this.c=null}, +c0j:function c0j(a){this.a=a}, +a3l:function a3l(a,b,c,d,e,f,g,h){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.b=g +_.a=h}, +aPe:function aPe(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aUW:function aUW(a,b,c,d,e){var _=this +_.G=a +_.ac=b +_.aS=c +_.k1$=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}, +cIk(a,b,c){return new A.yM(a,c,null,!1,b?B.a_q:B.bz9,null,null)}, +cIl(a,b,c){return new A.yM(a,c,B.bG,!0,B.a_r,b,null)}, +bXn:function bXn(){}, +Xo:function Xo(a,b){this.a=a +this.b=b}, +yM:function yM(a,b,c,d,e,f,g){var _=this +_.c=a +_.z=b +_.Q=c +_.db=d +_.k1=e +_.k2=f +_.a=g}, +aOc:function aOc(a,b){this.a=a +this.b=b}, +aLX:function aLX(a,b){this.c=a +this.a=b}, +ahg:function ahg(a,b,c,d){var _=this +_.G=null +_.ac=a +_.aS=b +_.k1$=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}, +c_p:function c_p(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}, +ddS(a,b){return a.r.a-16-a.e.c-a.a.a+b}, +cO_(a,b,c,d,e){return new A.acF(c,d,a,b,new A.bN(A.a([],t.x8),t.jc),new A.bN(A.a([],t.qj),t.fy),0,e.h("acF<0>"))}, +bip:function bip(){}, +bH2:function bH2(){}, +bhz:function bhz(){}, +bhy:function bhy(){}, +atM:function atM(){}, +bZ4:function bZ4(){}, +bZ3:function bZ3(){}, +bio:function bio(){}, +cdJ:function cdJ(){}, +acF:function acF(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.x=b +_.a=c +_.b=d +_.d=_.c=null +_.f0$=e +_.em$=f +_.z0$=g +_.$ti=h}, +b_D:function b_D(){}, +b_E:function b_E(){}, +b_F:function b_F(){}, +b_G:function b_G(){}, +d73(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.R1(k,a,i,m,a1,c,j,n,b,l,r,d,o,s,a0,p,g,e,f,h,q)}, +d74(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.ai(a2.a,a3.a,a4) +r=A.ai(a2.b,a3.b,a4) +q=A.ai(a2.c,a3.c,a4) +p=A.ai(a2.d,a3.d,a4) +o=A.ai(a2.e,a3.e,a4) +n=A.av(a2.f,a3.f,a4) +m=A.av(a2.r,a3.r,a4) +l=A.av(a2.w,a3.w,a4) +k=A.av(a2.x,a3.x,a4) +j=A.av(a2.y,a3.y,a4) +i=A.iC(a2.z,a3.z,a4) +h=a4<0.5 +if(h)g=a2.Q +else g=a3.Q +f=A.av(a2.as,a3.as,a4) +e=A.C6(a2.at,a3.at,a4) +d=A.C6(a2.ax,a3.ax,a4) +c=A.C6(a2.ay,a3.ay,a4) +b=A.C6(a2.ch,a3.ch,a4) +a=A.av(a2.CW,a3.CW,a4) +a0=A.ji(a2.cx,a3.cx,a4) +a1=A.d_(a2.cy,a3.cy,a4) +if(h)h=a2.db +else h=a3.db +return A.d73(r,k,n,g,a,a0,b,a1,q,m,s,j,p,l,f,c,h,i,e,d,o)}, +R1:function R1(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}, +aPg:function aPg(){}, +lx(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.w8(l,a3,q,a,a0,k,g,j,c,s,i,e,p,o,h,!1,a2,f,d,a1,m,r,n)}, +Dz(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.aPZ(g,b) +if(n)n=!0 +else n=!1 +s=n?o:new A.aQ0(g,f,i,h) +n=a0==null?o:new A.bS(a0,t.Ak) +r=l==null?o:new A.bS(l,t.iL) +q=k==null?o:new A.bS(k,t.iL) +p=j==null?o:new A.bS(j,t.QL) +return A.C8(a,o,o,o,d,o,m,o,p,q,r,new A.aQ_(e,c),s,n,o,o,o,o,o,o,o,a1)}, +c1W:function c1W(a,b){this.a=a +this.b=b}, +w8:function w8(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 +_.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 +_.a=a3}, +air:function air(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}, +aWb:function aWb(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +aQ2:function aQ2(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}, +c1V:function c1V(a){this.a=a}, +aPZ:function aPZ(a,b){this.a=a +this.b=b}, +aQ0:function aQ0(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aQ_:function aQ_(a,b){this.a=a +this.b=b}, +aQ1:function aQ1(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}, +c1S:function c1S(a){this.a=a}, +c1U:function c1U(a){this.a=a}, +c1T:function c1T(){}, +aOX:function aOX(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}, +c0_:function c0_(a){this.a=a}, +c00:function c00(a){this.a=a}, +c02:function c02(a){this.a=a}, +c01:function c01(){}, +aOZ:function aOZ(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}, +c08:function c08(a){this.a=a}, +c09:function c09(a){this.a=a}, +c0b:function c0b(a){this.a=a}, +c0a:function c0a(){}, +aSK:function aSK(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}, +c8Q:function c8Q(a){this.a=a}, +c8R:function c8R(a){this.a=a}, +c8T:function c8T(a){this.a=a}, +c8U:function c8U(a){this.a=a}, +c8S:function c8S(){}, +b_L:function b_L(){}, +d8f(a,b,c){if(a===b)return a +return new A.w9(A.vw(a.a,b.a,c))}, +a45(a,b){return new A.a44(b,a,null)}, +cIQ(a){var s=a.a0(t.g5),r=s==null?null:s.w +return r==null?A.G(a).aJ:r}, +w9:function w9(a){this.a=a}, +a44:function a44(a,b,c){this.w=a +this.b=b +this.a=c}, +aQ3:function aQ3(){}, +cxx(a,b,c){var s,r=null +if(c==null)s=b!=null?new A.c_(b,r,r,r,r,r,r,B.U):r +else s=c +return new A.JA(a,s,r)}, +JA:function JA(a,b,c){this.c=a +this.e=b +this.a=c}, +afo:function afo(a,b){var _=this +_.d=a +_.a=_.e=null +_.b=b +_.c=null}, +a4p:function a4p(a,b,c,d){var _=this +_.f=_.e=null +_.r=!0 +_.w=a +_.a=b +_.b=c +_.c=d +_.d=!1}, +DJ:function DJ(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}, +dm0(a,b,c){if(c!=null)return c +if(b)return new A.cpp(a) +return null}, +cpp:function cpp(a){this.a=a}, +aQj:function aQj(){}, +a4q:function a4q(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}, +dm_(a,b,c){if(c!=null)return c +if(b)return new A.cpo(a) +return null}, +dm7(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.gu(0) +q=d.W(0,B.h).gfT() +p=d.W(0,new A.j(0+r.a,0)).gfT() +o=d.W(0,new A.j(0,0+r.b)).gfT() +n=d.W(0,r.Vb(0,B.h)).gfT() +return Math.ceil(Math.max(Math.max(q,p),Math.max(o,n)))}return 35}, +cpo:function cpo(a){this.a=a}, +aQk:function aQk(){}, +a4r:function a4r(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}, +d8t(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){return new A.RO(d,a6,a8,a9,a7,q,a1,a2,a4,a5,a3,s,a0,p,e,l,b1,b,f,i,m,k,b0,b2,b3,g,!1,r,!1,j,c,b4,n,o)}, +ly(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1,a2,a3,a4,a5,a6,a7){var s=null +return new A.RP(d,a0,a2,s,a1,m,q,r,s,s,s,o,p,l,!0,B.U,a4,b,e,g,j,i,a3,a5,a6,f!==!1,!1,n,!1,h,c,a7,s,k)}, +DM:function DM(){}, +z9:function z9(){}, +agF:function agF(a,b,c){this.f=a +this.b=b +this.a=c}, +RO:function RO(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 +_.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 +_.a=b4}, +afn:function afn(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 +_.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 +_.a=b7}, +Gb:function Gb(a,b){this.a=a +this.b=b}, +afm:function afm(a,b,c,d){var _=this +_.e=_.d=null +_.f=!1 +_.r=a +_.w=$ +_.x=null +_.y=b +_.z=null +_.Q=!1 +_.eW$=c +_.a=null +_.b=d +_.c=null}, +c2x:function c2x(){}, +c2t:function c2t(a){this.a=a}, +c2w:function c2w(){}, +c2y:function c2y(a,b){this.a=a +this.b=b}, +c2s:function c2s(a,b){this.a=a +this.b=b}, +c2v:function c2v(a){this.a=a}, +c2u:function c2u(a,b){this.a=a +this.b=b}, +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,a7,a8,a9,b0,b1,b2,b3,b4){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 +_.a=b4}, +al1:function al1(){}, +qe:function qe(){}, +aSe:function aSe(a){this.a=a}, +uQ:function uQ(a,b){this.b=a +this.a=b}, +ml:function ml(a,b,c){this.b=a +this.c=b +this.a=c}, +DK:function DK(a,b,c){this.d=a +this.z=b +this.a=c}, +c2z:function c2z(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}, +c2A:function c2A(a){this.a=a}, +a4s:function a4s(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}, +afr:function afr(a,b){var _=this +_.d=a +_.f=_.e=null +_.r=!1 +_.a=null +_.b=b +_.c=null}, +c2C:function c2C(a){this.a=a}, +c2B:function c2B(a){this.a=a}, +d75(a){if(a===-1)return"FloatingLabelAlignment.start" +if(a===0)return"FloatingLabelAlignment.center" +return"FloatingLabelAlignment(x: "+B.d.aZ(a,1)+")"}, +md(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){return new A.RQ(b3,b4,b7,b9,b8,a0,a6,a5,a4,b0,a9,b1,a8,a7,k,o,n,m,s,r,b6,d,b5,c1,c3,c0,c5,c4,c2,c8,c7,d2,d1,c9,d0,g,e,f,q,p,a1,b2,l,a2,a3,h,j,b,i,c6,a,c)}, +cJ2(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.JB(a8,p,a1,a0,a3,a2,k,j,o,n,!1,e,!1,a5,b1,b0,b3,b2,f,!1,l,a9,a,q,a4,i,r,s,g,h,c,!1,d)}, +afp:function afp(a){var _=this +_.a=null +_.k2$=_.b=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +afq:function afq(a,b){this.a=a +this.b=b}, +aQl:function aQl(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}, +ad3:function ad3(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aLs:function aLs(a,b,c){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +aWs:function aWs(a,b,c){this.e=a +this.c=b +this.a=c}, +af2:function af2(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}, +af3:function af3(a,b,c){var _=this +_.d=$ +_.f=_.e=null +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +c1I:function c1I(){}, +a3n:function a3n(a,b){this.a=a +this.b=b}, +aub:function aub(){}, +lV:function lV(a,b){this.a=a +this.b=b}, +aNf:function aNf(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}, +cbX:function cbX(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +ahp:function ahp(a,b,c,d,e,f,g,h,i){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.aW=null +_.fa$=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}, +cc0:function cc0(a){this.a=a}, +cc_:function cc_(a,b){this.a=a +this.b=b}, +cbZ:function cbZ(a,b){this.a=a +this.b=b}, +cbY:function cbY(a,b,c){this.a=a +this.b=b +this.c=c}, +aNj:function aNj(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.a=g}, +acz:function acz(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +JC:function JC(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}, +afs:function afs(a,b,c,d){var _=this +_.f=_.e=_.d=$ +_.r=a +_.w=null +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +c2O:function c2O(){}, +RQ:function RQ(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){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 +_.c_=c8 +_.bO=c9 +_.be=d0 +_.bj=d1 +_.bU=d2}, +JB:function JB(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 +_.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}, +c2D:function c2D(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 +_.p1=a +_.p3=_.p2=$ +_.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 +_.k4=b3 +_.ok=b4}, +c2J:function c2J(a){this.a=a}, +c2G:function c2G(a){this.a=a}, +c2E:function c2E(a){this.a=a}, +c2L:function c2L(a){this.a=a}, +c2M:function c2M(a){this.a=a}, +c2N:function c2N(a){this.a=a}, +c2K:function c2K(a){this.a=a}, +c2H:function c2H(a){this.a=a}, +c2I:function c2I(a){this.a=a}, +c2F:function c2F(a){this.a=a}, +aQm:function aQm(){}, +akF:function akF(){}, +al0:function al0(){}, +al2:function al2(){}, +b0b:function b0b(){}, +aX(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){return new A.hX(l,a5,a2,a7,j,c,a8,a1,a6,a3,m,b,e,r,q,p,s,f,i,g,!1,a4,a0,d,h,o,n,k)}, +cc7(a,b){if(a==null)return B.A +a.d_(b,!0) +return a.gu(0)}, +bp2:function bp2(a,b){this.a=a +this.b=b}, +hX:function hX(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 +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.at=i +_.ax=j +_.ay=k +_.CW=l +_.cx=m +_.cy=n +_.db=o +_.dy=p +_.fr=q +_.fx=r +_.fy=s +_.id=a0 +_.k1=a1 +_.k2=a2 +_.k3=a3 +_.k4=a4 +_.ok=a5 +_.p1=a6 +_.p2=a7 +_.a=a8}, +bp3:function bp3(a){this.a=a}, +aQe:function aQe(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +v7:function v7(a,b){this.a=a +this.b=b}, +aR1:function aR1(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}, +ahC:function ahC(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.aW=h +_.aT=i +_.aU=j +_.fa$=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}, +cc9:function cc9(a,b){this.a=a +this.b=b}, +cc8:function cc8(a,b,c){this.a=a +this.b=b +this.c=c}, +c3T:function c3T(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}, +b0i:function b0i(){}, +cxQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){return new A.Sk(b,l,m,j,e,o,r,n,f,a,p,k,d,h,g,c,i,s,q)}, +d9g(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.iC(a0.b,a1.b,a2) +if(s)p=a0.c +else p=a1.c +o=A.ai(a0.d,a1.d,a2) +n=A.ai(a0.e,a1.e,a2) +m=A.ai(a0.f,a1.f,a2) +l=A.d_(a0.r,a1.r,a2) +k=A.d_(a0.w,a1.w,a2) +j=A.d_(a0.x,a1.x,a2) +i=A.ji(a0.y,a1.y,a2) +h=A.ai(a0.z,a1.z,a2) +g=A.ai(a0.Q,a1.Q,a2) +f=A.av(a0.as,a1.as,a2) +e=A.av(a0.at,a1.at,a2) +d=A.av(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.cxQ(i,r,c,f,n,j,d,e,b,o,g,q,p,k,m,h,s,l,a)}, +cJq(a,b,c){return new A.K3(b,a,c)}, +cJr(a){var s=a.a0(t.NJ),r=s==null?null:s.gi3(0) +return r==null?A.G(a).U:r}, +d9h(a,b,c,d){var s=null +return new A.e_(new A.bp1(s,s,s,c,s,s,s,d,s,s,b,s,s,s,s,s,s,s,s,s,a),s)}, +Sk:function Sk(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}, +K3:function K3(a,b,c){this.w=a +this.b=b +this.a=c}, +bp1:function bp1(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}, +aR2:function aR2(){}, +aaY:function aaY(a,b){this.c=a +this.a=b}, +bLj:function bLj(){}, +ajt:function ajt(a,b){var _=this +_.e=_.d=null +_.f=a +_.a=null +_.b=b +_.c=null}, +cik:function cik(a){this.a=a}, +cij:function cij(a){this.a=a}, +cil:function cil(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +axf:function axf(a,b){this.c=a +this.a=b}, +fX(a,b,c,d,e,f,g,h,i,j,k,l,m){return new A.a5m(d,m,g,f,i,k,l,j,!0,e,a,c,h)}, +d8s(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.gbR(r) +if(!(o instanceof A.H)||!o.zK(r))return null +h.push(o) +r=o}if(q<=p){n=s.gbR(s) +if(!(n instanceof A.H)||!n.zK(s))return null +g.push(n) +s=n}}m=new A.c5(new Float64Array(16)) +m.fO() +l=new A.c5(new Float64Array(16)) +l.fO() +for(k=g.length-1;k>0;k=j){j=k-1 +g[k].hh(g[j],m)}for(k=h.length-1;k>0;k=j){j=k-1 +h[k].hh(h[j],l)}if(l.l7(l)!==0){l.hc(0,m) +i=l}else i=null +return i}, +Ea:function Ea(a,b){this.a=a +this.b=b}, +a5m:function a5m(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}, +aRj:function aRj(a,b,c,d){var _=this +_.d=a +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +c5P:function c5P(a){this.a=a}, +ahx:function ahx(a,b,c,d,e){var _=this +_.G=a +_.ac=b +_.aS=c +_.cZ=null +_.k1$=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}, +aQi:function aQi(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +wd:function wd(){}, +Mb:function Mb(a,b){this.a=a +this.b=b}, +afT:function afT(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}, +aRf:function aRf(a,b,c){var _=this +_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +c5z:function c5z(){}, +c5A:function c5A(){}, +c5B:function c5B(){}, +c5C:function c5C(){}, +aiz:function aiz(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aWt:function aWt(a,b,c){this.b=a +this.c=b +this.a=c}, +b_S:function b_S(){}, +cJM(a,b){return new A.a5o(b,a,null)}, +a5o:function a5o(a,b,c){this.c=a +this.dx=b +this.a=c}, +aRg:function aRg(){}, +asm:function asm(){}, +XQ(a){return new A.XP(a,J.lo(a.$1(B.er)))}, +cA4(a){return new A.afV(a,B.B,1,B.O,-1)}, +afW(a){var s=null +return new A.aRk(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)}, +d2(a,b,c){if(c.h("c9<0>").b(a))return a.a5(b) +return a}, +cF(a,b,c,d,e){if(a==null&&b==null)return null +return new A.afC(a,b,c,d,e.h("afC<0>"))}, +Kf(a){var s=A.b9(t.ui) +if(a!=null)s.L(0,a) +return new A.E9(s,$.ae())}, +en:function en(a,b){this.a=a +this.b=b}, +az6:function az6(){}, +XP:function XP(a,b){this.c=a +this.a=b}, +az7:function az7(){}, +aey:function aey(a,b){this.a=a +this.c=b}, +az5:function az5(){}, +afV:function afV(a,b,c,d,e){var _=this +_.x=a +_.a=b +_.b=c +_.c=d +_.d=e}, +az8:function az8(){}, +aRk:function aRk(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 +_.e7=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}, +c9:function c9(){}, +afC:function afC(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +by:function by(a,b){this.a=a +this.$ti=b}, +bS:function bS(a,b){this.a=a +this.$ti=b}, +E9:function E9(a,b){var _=this +_.a=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +a5A:function a5A(){}, +brr:function brr(a,b,c){this.a=a +this.b=b +this.c=c}, +brp:function brp(){}, +brq:function brq(){}, +cK2(a,b,c,d,e,f,g,h){return new A.a5K(e,b,h,c,d,f,g,a,null)}, +ag3(a){var s=a.a0(t.Of) +return s==null?null:s.r}, +cK4(a,b,c,d,e,f,g){return new A.SI(d,e,f,c,g,a,b)}, +cK5(a){var s=null +return A.VJ(s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s)}, +cOx(){return new A.aRw(!1,new A.bN(A.a([],t.h),t.b))}, +dms(){switch(A.bL().a){case 2:case 4:return!0 +case 0:case 1:case 3:case 5:return!1}}, +cOu(a){var s=null +return new A.aRq(a,s,s,s,B.Rf,s,s,s,s,s,B.Rg,s,s,B.ms)}, +cOv(a){var s=null +return new A.aRr(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.K,!0,B.fn,s)}, +cOw(a){var s=null +return new A.aRv(a,s,s,s,B.Rf,s,s,s,s,s,B.Rg,s,s,B.zl)}, +a5K:function a5K(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.x=e +_.Q=f +_.as=g +_.at=h +_.a=i}, +xl:function xl(a,b,c,d){var _=this +_.d=a +_.e=null +_.f=$ +_.r=null +_.w=b +_.y=_.x=null +_.z=c +_.a=_.Q=null +_.b=d +_.c=null}, +c68:function c68(a){this.a=a}, +c69:function c69(a){this.a=a}, +c61:function c61(a){this.a=a}, +c67:function c67(){}, +c63:function c63(){}, +c64:function c64(a){this.a=a}, +c62:function c62(){}, +c65:function c65(a){this.a=a}, +c66:function c66(){}, +zm:function zm(){this.a=null}, +SI:function SI(a,b,c,d,e,f,g){var _=this +_.c=a +_.e=b +_.x=c +_.Q=d +_.as=e +_.ax=f +_.a=g}, +ag5:function ag5(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +c6B:function c6B(a){this.a=a}, +a1Q:function a1Q(a,b){this.e=a +this.a=b +this.b=null}, +ag2:function ag2(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +aRI:function aRI(a){this.a=a +this.b=null}, +aRF:function aRF(a){this.a=a +this.b=null}, +aRw:function aRw(a,b){this.c=a +this.a=b +this.b=null}, +azk:function azk(a,b,c){this.f=a +this.b=b +this.a=c}, +aRB:function aRB(a,b,c,d,e,f){var _=this +_.c=a +_.e=b +_.f=c +_.r=d +_.w=e +_.a=f}, +c6I:function c6I(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 +_.y=i}, +c6N:function c6N(a){this.a=a}, +c6O:function c6O(a,b){this.a=a +this.b=b}, +c6P:function c6P(a){this.a=a}, +c6M:function c6M(a,b){this.a=a +this.b=b}, +ag7:function ag7(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aRG:function aRG(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +c78:function c78(a,b){this.a=a +this.b=b}, +c79:function c79(a){this.a=a}, +c7a:function c7a(a,b){this.a=a +this.b=b}, +c6Y:function c6Y(){}, +c6Z:function c6Z(){}, +c7_:function c7_(){}, +c70:function c70(){}, +c71:function c71(){}, +c72:function c72(){}, +c73:function c73(){}, +c74:function c74(){}, +c75:function c75(){}, +c76:function c76(){}, +c77:function c77(){}, +YQ:function YQ(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}, +cgr:function cgr(a,b){this.a=a +this.b=b}, +cgs:function cgs(a){this.a=a}, +cgt:function cgt(a,b){this.a=a +this.b=b}, +cgp:function cgp(a){this.a=a}, +cgl:function cgl(a){this.a=a}, +cgm:function cgm(){}, +cgn:function cgn(){}, +cgo:function cgo(){}, +cgq:function cgq(a){this.a=a}, +aRU:function aRU(a){this.a=a}, +aRq:function aRq(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}, +aRr:function aRr(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=_.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}, +c6a:function c6a(a){this.a=a}, +c6b:function c6b(a){this.a=a}, +c6c:function c6c(){}, +c6d:function c6d(a){this.a=a}, +aRv:function aRv(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}, +da1(a,b,c){if(a===b)return a +return new A.azm(A.cy_(a.a,b.a,c))}, +cK3(a){var s +a.a0(t.P3) +s=A.G(a) +return s.aW}, +azm:function azm(a){this.a=a}, +da3(a,b,c){if(a===b)return a +return new A.a5L(A.vw(a.a,b.a,c))}, +a5L:function a5L(a){this.a=a}, +aRt:function aRt(){}, +cy_(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._ +p=A.cF(r,p,c,A.f2(),o) +r=s?d:a.b +r=A.cF(r,q?d:b.b,c,A.f2(),o) +n=s?d:a.c +o=A.cF(n,q?d:b.c,c,A.f2(),o) +n=s?d:a.d +m=q?d:b.d +m=A.cF(n,m,c,A.Zs(),t.PM) +n=s?d:a.e +l=q?d:b.e +l=A.cF(n,l,c,A.cBn(),t.pc) +n=s?d:a.f +k=q?d:b.f +j=t.tW +k=A.cF(n,k,c,A.amg(),j) +n=s?d:a.r +n=A.cF(n,q?d:b.r,c,A.amg(),j) +i=s?d:a.w +j=A.cF(i,q?d:b.w,c,A.amg(),j) +i=s?d:a.x +h=q?d:b.x +g=s?d:a.y +f=q?d:b.y +f=A.cF(g,f,c,A.cB9(),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.fz(p,r,o,m,l,k,n,j,new A.aQP(i,h,c),f,e,g,A.ZN(s,q?d:b.as,c))}, +fz:function fz(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}, +aQP:function aQP(a,b,c){this.a=a +this.b=b +this.c=c}, +aRK:function aRK(){}, +da6(a,b,c){if(a===b)return a +return new A.SK(A.cy_(a.a,b.a,c))}, +cK6(a){var s +a.a0(t.Hu) +s=A.G(a) +return s.aU}, +SK:function SK(a){this.a=a}, +aRL:function aRL(){}, +cKh(a,b,c){return new A.aA_(c,a,b,null)}, +cy9(a,b,c){return new A.Kz(a,c,b,null)}, +cya(a,b,c,d,e,f){return new A.aA0(a,c,f,d,b,e,null)}, +cA6(a){var s=null +return new A.c7N(a,80,s,3,s,s,s,s,s,s,B.b6q,s)}, +aA_:function aA_(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d}, +bug:function bug(a,b){this.a=a +this.b=b}, +buh:function buh(a,b,c){this.a=a +this.b=b +this.c=c}, +bui:function bui(a,b){this.a=a +this.b=b}, +Kz:function Kz(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +buk:function buk(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +buj:function buj(a,b,c){this.a=a +this.b=b +this.c=c}, +bul:function bul(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ago:function ago(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aS7:function aS7(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +afe:function afe(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){var _=this +_.p4=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 +_.p2=b4 +_.a=b5}, +c2o:function c2o(a,b){this.a=a +this.b=b}, +NT:function NT(a,b,c,d,e,f,g,h,i,j){var _=this +_.f=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.b=i +_.a=j}, +aA0:function aA0(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +bun:function bun(a){this.a=a}, +buo:function buo(a){this.a=a}, +bum:function bum(a){this.a=a}, +aS2:function aS2(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +c7Q:function c7Q(a){this.a=a}, +aNt:function aNt(a,b){this.c=a +this.a=b}, +bXz:function bXz(a){this.a=a}, +aS3:function aS3(a,b){this.c=a +this.a=b}, +c7R:function c7R(a){this.a=a}, +aS4:function aS4(a,b,c){this.c=a +this.d=b +this.a=c}, +c7V:function c7V(a,b){var _=this +_.d=a +_.a=b +_.c=_.b=null}, +c7X:function c7X(){}, +c7W:function c7W(){}, +YL:function YL(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +Gt:function Gt(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aWa:function aWa(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +ae0:function ae0(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +ae1:function ae1(a){var _=this +_.d=$ +_.a=_.e=null +_.b=a +_.c=null}, +bWB:function bWB(a,b){this.a=a +this.b=b}, +bWC:function bWC(a){this.a=a}, +bWD:function bWD(a,b){this.a=a +this.b=b}, +c7N:function c7N(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.Q=a +_.at=_.as=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l}, +c7O:function c7O(a){this.a=a}, +c7P:function c7P(a){this.a=a}, +alu:function alu(){}, +das(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a===b)return a +s=A.av(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +m=A.iC(a.r,b.r,c) +l=A.cF(a.w,b.w,c,A.amf(),t.p8) +k=A.cF(a.x,b.x,c,A.cSR(),t.lF) +if(c<0.5)j=a.y +else j=b.y +return new A.Ky(s,r,q,p,o,n,m,l,k,j,A.cF(a.z,b.z,c,A.f2(),t._))}, +cy8(a){var s +a.a0(t.Kd) +s=A.G(a) +return s.ck}, +Ky:function Ky(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}, +aS5:function aS5(){}, +dat(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b)return a +s=A.av(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +m=A.iC(a.r,b.r,c) +l=a.w +l=A.a9L(l,l,c) +k=A.cF(a.x,b.x,c,A.amf(),t.p8) +return new A.a6a(s,r,q,p,o,n,m,l,k,A.cF(a.y,b.y,c,A.cSR(),t.lF))}, +a6a:function a6a(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}, +aS8:function aS8(){}, +cOC(a){var s=null +return new A.c7Y(A.G(a),A.G(a).ay,s,0,s,s,s,s,-1,B.RT,!1,s,s,72,256)}, +a6b:function a6b(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.x=c +_.Q=d +_.a=e}, +agp:function agp(a,b,c){var _=this +_.r=_.f=_.e=_.d=$ +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +c82:function c82(a,b){this.a=a +this.b=b}, +c8_:function c8_(){}, +c80:function c80(a){this.a=a}, +c81:function c81(){}, +aU2:function aU2(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}, +afd:function afd(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){var _=this +_.p4=a +_.R8=b +_.RG=c +_.rx=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 +_.k4=b4 +_.ok=b5 +_.p1=b6 +_.p2=b7 +_.a=b8}, +c2n:function c2n(a,b){this.a=a +this.b=b}, +WS:function WS(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aA1:function aA1(a,b){this.a=a +this.b=b}, +SY:function SY(a,b,c){this.a=a +this.b=b +this.e=c}, +aOK:function aOK(a,b,c){this.f=a +this.b=b +this.a=c}, +c7Y:function c7Y(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}, +c7Z:function c7Z(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}, +al9:function al9(){}, +dav(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.av(a.b,b.b,c) +q=A.d_(a.c,b.c,c) +p=A.d_(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.z2(o,b.e,c) +n=a.f +if(n==null)m=b.f==null +else m=!1 +if(m)n=null +else n=A.z2(n,b.f,c) +m=A.av(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.ai(a.y,b.y,c) +i=A.iC(a.z,b.z,c) +h=A.av(a.Q,b.Q,c) +return new A.SZ(s,r,q,p,o,n,m,k,l,j,i,h,A.av(a.as,b.as,c))}, +SZ:function SZ(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}, +aS9:function aS9(){}, +T8(a,b,c,d,e,f,g,h,i){return new A.Er(g,f,null,null,i,c,d,!1,h,!0,b,e)}, +dnM(a){var s=A.G(a),r=s.p3.as,q=r==null?null:r.r +if(q==null)q=14 +r=A.cG(a,B.bn) +r=r==null?null:r.gdZ() +return A.Hw(new A.af(24,0,24,0),new A.af(12,0,12,0),new A.af(6,0,6,0),(r==null?B.Y:r).bK(0,q)/14)}, +cOE(a,b,c){var s=null +return new A.aSI(c,s,s,s,s,B.i,s,!1,s,!0,new A.aSJ(b,a,s),s)}, +Er:function Er(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}, +aSI:function aSI(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}, +aSJ:function aSJ(a,b,c){this.c=a +this.d=b +this.a=c}, +aSG:function aSG(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}, +c8L:function c8L(a){this.a=a}, +c8N:function c8N(a){this.a=a}, +c8O:function c8O(a){this.a=a}, +c8M:function c8M(){}, +daK(a,b,c){if(a===b)return a +return new A.a6A(A.vw(a.a,b.a,c))}, +a6A:function a6A(a){this.a=a}, +aSH:function aSH(){}, +brl(a,b,c){var s=null,r=A.a([],t.Zt),q=$.at,p=A.ms(B.bO),o=A.a([],t.wi),n=$.ae(),m=$.at,l=c.h("ak<0?>"),k=c.h("aI<0?>"),j=b==null?B.ff:b +return new A.Kd(a,!1,!0,!1,s,s,r,A.b9(t.kj),new A.aR(s,c.h("aR>")),new A.aR(s,t.A),new A.qt(),s,0,new A.aI(new A.ak(q,c.h("ak<0?>")),c.h("aI<0?>")),p,o,j,new A.bm(s,n,t.XR),new A.aI(new A.ak(m,l),k),new A.aI(new A.ak(m,l),k),c.h("Kd<0>"))}, +Kd:function Kd(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.en=a +_.a4=b +_.ag=c +_.aq=d +_.go=e +_.id=f +_.k1=!1 +_.k3=_.k2=null +_.k4=g +_.ok=h +_.p1=i +_.p2=j +_.p3=k +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=l +_.pk$=m +_.Q=n +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=o +_.CW=!0 +_.cy=_.cx=null +_.f=p +_.a=null +_.b=q +_.c=r +_.d=s +_.e=a0 +_.$ti=a1}, +Ke:function Ke(){}, +u6:function u6(a,b,c,d,e,f){var _=this +_.r=a +_.c=b +_.d=c +_.a=d +_.b=e +_.$ti=f}, +agE:function agE(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.a4=a +_.ag=b +_.aq=c +_.go=d +_.id=e +_.k1=!1 +_.k3=_.k2=null +_.k4=f +_.ok=g +_.p1=h +_.p2=i +_.p3=j +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=k +_.pk$=l +_.Q=m +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=n +_.CW=!0 +_.cy=_.cx=null +_.f=o +_.a=null +_.b=p +_.c=q +_.d=r +_.e=s +_.$ti=a0}, +afU:function afU(){}, +ale:function ale(){}, +cRv(a,b,c){var s,r +a.fO() +if(b===1)return +a.jt(0,b,b) +s=c.a +r=c.b +a.ba(0,-((s*b-s)/2),-((r*b-r)/2))}, +cPx(a,b,c,d){var s=new A.akx(c,a,d,b,new A.c5(new Float64Array(16)),A.aw(t.o0),A.aw(t.bq),$.ae()),r=s.gip() +a.a3(0,r) +a.je(s.gKB()) +d.a.a3(0,r) +b.a3(0,r) +return s}, +cPy(a,b,c,d){var s=new A.aky(c,d,b,a,new A.c5(new Float64Array(16)),A.aw(t.o0),A.aw(t.bq),$.ae()),r=s.gip() +d.a.a3(0,r) +b.a3(0,r) +a.je(s.gKB()) +return s}, +aON:function aON(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +b_l:function b_l(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +cnQ:function cnQ(a){this.a=a}, +cnR:function cnR(a){this.a=a}, +cnS:function cnS(a){this.a=a}, +cnT:function cnT(a){this.a=a}, +GC:function GC(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +b_j:function b_j(a,b,c,d){var _=this +_.d=$ +_.zc$=a +_.wg$=b +_.zd$=c +_.a=null +_.b=d +_.c=null}, +GD:function GD(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +b_k:function b_k(a,b,c,d){var _=this +_.d=$ +_.zc$=a +_.wg$=b +_.zd$=c +_.a=null +_.b=d +_.c=null}, +wt:function wt(){}, +aK3:function aK3(){}, +arQ:function arQ(){}, +a6H:function a6H(a){this.a=a}, +bwc:function bwc(a){this.a=a}, +Z4:function Z4(){}, +akx:function akx(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +cnO:function cnO(a,b){this.a=a +this.b=b}, +aky:function aky(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +cnP:function cnP(a,b){this.a=a +this.b=b}, +aST:function aST(){}, +alH:function alH(){}, +alI:function alI(){}, +cKZ(a,b,c,d){return new A.a7d(c,b,a,null,d.h("a7d<0>"))}, +dvT(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=null +switch(A.G(a).w.a){case 2:case 4:s=f +break +case 0:case 1:case 3:case 5:r=A.dS(a,B.an,t.v) +r.toString +s=r.gc4() +break +default:s=f}q=A.cN(a,!1) +r=A.dS(a,B.an,t.v) +r.toString +r=r.gbx() +p=q.c +p.toString +p=A.RM(a,p) +o=A.aK(2,f,!1,t.tW) +n=A.a([],t.Zt) +m=$.at +l=A.ms(B.bO) +k=A.a([],t.wi) +j=$.ae() +i=$.at +h=d.h("ak<0?>") +g=d.h("aI<0?>") +return q.pF(new A.agN(c,b,o,f,f,f,f,s,f,f,p,f,B.i,f,r,f,B.yb,n,A.b9(t.kj),new A.aR(f,d.h("aR>")),new A.aR(f,t.A),new A.qt(),f,0,new A.aI(new A.ak(m,d.h("ak<0?>")),d.h("aI<0?>")),l,k,B.ff,new A.bm(f,j,t.XR),new A.aI(new A.ak(i,h),g),new A.aI(new A.ak(i,h),g),d.h("agN<0>")),d)}, +cOM(a){var s=null +return new A.c9U(a,s,s,3,s,s,s,s,s,s,s,s,s)}, +TC:function TC(){}, +aRA:function aRA(a,b,c){this.e=a +this.c=b +this.a=c}, +aV_:function aV_(a,b,c){var _=this +_.G=a +_.k1$=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){var _=this +_.d=a +_.r=b +_.Q=c +_.a=d +_.$ti=e}, +TD:function TD(a,b){var _=this +_.a=null +_.b=a +_.c=null +_.$ti=b}, +agM:function agM(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e +_.$ti=f}, +c9Y:function c9Y(a,b){this.a=a +this.b=b}, +c9Z:function c9Z(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +c9W:function c9W(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f}, +agN:function agN(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 +_.ac=a +_.aS=b +_.cZ=c +_.en=d +_.eY=e +_.i9=f +_.jY=g +_.hT=h +_.jm=i +_.ha=j +_.hw=k +_.jn=l +_.os=m +_.mg=n +_.z_=o +_.go=p +_.id=q +_.k1=!1 +_.k3=_.k2=null +_.k4=r +_.ok=s +_.p1=a0 +_.p2=a1 +_.p3=a2 +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=a3 +_.pk$=a4 +_.Q=a5 +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=a6 +_.CW=!0 +_.cy=_.cx=null +_.f=a7 +_.a=null +_.b=a8 +_.c=a9 +_.d=b0 +_.e=b1 +_.$ti=b2}, +c9X:function c9X(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aOd:function aOd(a,b){this.a=a +this.b=b}, +c9U:function c9U(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.as=a +_.ay=_.ax=_.at=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m}, +c9V:function c9V(a){this.a=a}, +dbz(a,b,c){var s,r,q,p,o,n,m,l,k,j,i +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.iC(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.d_(a.f,b.f,c) +m=A.cF(a.r,b.r,c,A.amf(),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 +i=A.ai(a.z,b.z,c) +return new A.Lf(s,r,q,p,o,n,m,k,j,l,i,A.av(a.Q,b.Q,c))}, +cL_(a){var s +a.a0(t.mn) +s=A.G(a) +return s.ez}, +Lf:function Lf(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}, +aTK:function aTK(){}, +cxO(a){var s=null +return new A.E_(a,s,s,s,s,s,s)}, +dhB(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.X2(a,j,i,b,h,c,d,g,e,r,s?A.Z(i,0,1)*6.282185307179586:Math.max(b*3/2*3.141592653589793-h*3/2*3.141592653589793,0.001),f,null)}, +d2O(a,b,c,d,e,f,g,h,i,j){return new A.p2(B.mi,h,f,g,i,a,b,j,d,e,c)}, +aKl:function aKl(a,b){this.a=a +this.b=b}, +aC_:function aC_(){}, +aQY:function aQY(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +c3P:function c3P(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +E_:function E_(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aQZ:function aQZ(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +c3Q:function c3Q(a,b){this.a=a +this.b=b}, +X2:function X2(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}, +p2:function p2(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.y=a +_.z=b +_.Q=c +_.as=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.a=k}, +ado:function ado(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bUi:function bUi(a){this.a=a}, +aUG:function aUG(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}, +a7N:function a7N(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.y=a +_.z=b +_.Q=c +_.as=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.a=k}, +aUH:function aUH(a,b,c){var _=this +_.z=_.y=$ +_.Q=null +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +cbD:function cbD(a){this.a=a}, +bUh:function bUh(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +c3O:function c3O(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +akK:function akK(){}, +al4:function al4(){}, +dbO(a,b,c){var s,r,q,p +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.av(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +return new A.TL(s,r,q,p,A.ai(a.e,b.e,c))}, +byn(a){var s +a.a0(t.C0) +s=A.G(a) +return s.dA}, +TL:function TL(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aTS:function aTS(){}, +dbY(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._ +p=A.cF(a.b,b.b,c,A.f2(),q) +if(s)o=a.e +else o=b.e +q=A.cF(a.c,b.c,c,A.f2(),q) +n=A.av(a.d,b.d,c) +if(s)s=a.f +else s=b.f +return new A.a7w(r,p,q,n,o,s)}, +a7w:function a7w(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aU1:function aU1(){}, +cLi(a,b,c,d,e){return new A.a7C(e,d,c,a,b,null)}, +dj4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var s=null,r=new A.ahM(l,A.jT(s,s,s,s,s,B.ah,s,s,1,B.Y,B.a0),A.jT(s,s,s,s,s,B.ah,s,s,1,B.Y,B.a0),B.h,B.h,p,h,j,a,d,k,o,n,i,g,f,e,m,c,A.M4(s,s),A.M4(s,s),!1,A.aw(t.T)) +r.aQ() +r.aVr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) +return r}, +a7C:function a7C(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.w=c +_.x=d +_.y=e +_.a=f}, +agZ:function agZ(a,b,c,d){var _=this +_.w=_.r=_.f=_.e=_.d=$ +_.z=_.y=_.x=null +_.as=_.Q=!1 +_.at=a +_.ax=null +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +cbf:function cbf(a,b){this.a=a +this.b=b}, +cbg:function cbg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cbh:function cbh(a){this.a=a}, +cbi:function cbi(a){this.a=a}, +aU5:function aU5(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}, +ahM:function ahM(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 +_.D=null +_.N=a +_.aq=_.ag=_.a4=$ +_.aJ=b +_.U=c +_.aT=_.aW=$ +_.aU=!1 +_.ck=$ +_.eA=d +_.eq=e +_.ez=_.f1=null +_.dA=f +_.e8=g +_.hS=h +_.bk=i +_.er=j +_.dP=k +_.eX=l +_.dr=m +_.dQ=n +_.fA=o +_.iQ=p +_.eT=q +_.fG=r +_.mf=s +_.hi=_.dF=!1 +_.G=a0 +_.ac=a1 +_.wd$=a2 +_.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=a3 +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +cci:function cci(a){this.a=a}, +ccg:function ccg(){}, +ccf:function ccf(){}, +cch:function cch(a){this.a=a}, +ccj:function ccj(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +cck:function cck(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}, +aZt:function aZt(a,b){this.d=a +this.a=b}, +aVp:function aVp(a,b,c){var _=this +_.D=$ +_.N=a +_.wd$=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}, +alg:function alg(){}, +alk:function alk(){}, +alp:function alp(){}, +cyI(a,b,c){return new A.a7L(a,b,c,null)}, +Gq:function Gq(a,b){this.a=a +this.b=b}, +aCz:function aCz(a,b){this.a=a +this.b=b}, +c2p:function c2p(a,b){this.a=a +this.b=b}, +a7L:function a7L(a,b,c,d){var _=this +_.c=a +_.f=b +_.at=c +_.a=d}, +a7M:function a7M(a,b,c){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.as=_.Q=_.y=null +_.at=$ +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +bA5:function bA5(a){this.a=a}, +bA3:function bA3(a,b){this.a=a +this.b=b}, +bA4:function bA4(a){this.a=a}, +bA8:function bA8(a,b){this.a=a +this.b=b}, +bA6:function bA6(a){this.a=a}, +bA7:function bA7(a,b){this.a=a +this.b=b}, +bA9:function bA9(a,b){this.a=a +this.b=b}, +ahe:function ahe(){}, +bW(a,b,c,d,e,f,g){return new A.a8L(a,c,e,f,b,d,g,null)}, +UH(a){var s=a.wh(t.Np) +if(s!=null)return s +throw A.d(A.Dr(A.a([A.vT("Scaffold.of() called with a context that does not contain a Scaffold."),A.cJ("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.ID(u.aM),A.ID("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.ayv("The context used was")],t.qe)))}, +pI:function pI(a,b){this.a=a +this.b=b}, +a8N:function a8N(a,b){this.c=a +this.a=b}, +a8O:function a8O(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.r=c +_.y=_.x=_.w=null +_.eH$=d +_.b5$=e +_.a=null +_.b=f +_.c=null}, +bDb:function bDb(a,b){this.a=a +this.b=b}, +bDc:function bDc(a,b){this.a=a +this.b=b}, +bD7:function bD7(a){this.a=a}, +bD8:function bD8(a){this.a=a}, +bDa:function bDa(a,b,c){this.a=a +this.b=b +this.c=c}, +bD9:function bD9(a,b,c){this.a=a +this.b=b +this.c=c}, +ai7:function ai7(a,b,c){this.f=a +this.b=b +this.a=c}, +bDd:function bDd(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 +_.y=i}, +cm9:function cm9(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +UF:function UF(a,b){this.a=a +this.b=b}, +aVS:function aVS(a,b,c){var _=this +_.a=a +_.b=null +_.c=b +_.k2$=0 +_.k3$=c +_.ok$=_.k4$=0 +_.p1$=!1}, +ad_:function ad_(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.a=d +_.b=e +_.c=f +_.d=g}, +aLn:function aLn(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +cdG:function cdG(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}, +aeK:function aeK(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aeL:function aeL(a,b,c){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.y=null +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +c0k:function c0k(a,b){this.a=a +this.b=b}, +a8L:function a8L(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.ch=e +_.CW=f +_.cy=g +_.a=h}, +UG:function UG(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 +_.eb$=i +_.jX$=j +_.um$=k +_.hH$=l +_.ke$=m +_.eH$=n +_.b5$=o +_.a=null +_.b=p +_.c=null}, +bDg:function bDg(a,b){this.a=a +this.b=b}, +bDf:function bDf(a,b){this.a=a +this.b=b}, +bDe:function bDe(a,b,c){this.a=a +this.b=b +this.c=c}, +bDh:function bDh(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aNA:function aNA(a,b){this.e=a +this.a=b +this.b=null}, +a8M:function a8M(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +ai9:function ai9(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +cdH:function cdH(){}, +ai8:function ai8(){}, +aia:function aia(){}, +aib:function aib(){}, +akY:function akY(){}, +bE3(a,b,c){return new A.aE8(a,b,c,null)}, +aE8:function aE8(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +XO:function XO(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}, +aRi:function aRi(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=$ +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +c5I:function c5I(a){this.a=a}, +c5F:function c5F(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c5H:function c5H(a,b,c){this.a=a +this.b=b +this.c=c}, +c5G:function c5G(a,b,c){this.a=a +this.b=b +this.c=c}, +c5E:function c5E(a){this.a=a}, +c5O:function c5O(a){this.a=a}, +c5N:function c5N(a){this.a=a}, +c5M:function c5M(a){this.a=a}, +c5K:function c5K(a){this.a=a}, +c5L:function c5L(a){this.a=a}, +c5J:function c5J(a){this.a=a}, +dcY(a,b,c){var s,r,q,p,o,n,m,l,k,j,i +if(a===b&&!0)return a +s=t.X7 +r=A.cF(a.a,b.a,c,A.cU_(),s) +q=A.cF(a.b,b.b,c,A.Zs(),t.PM) +s=A.cF(a.c,b.c,c,A.cU_(),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.a7x(a.f,b.f,c) +m=t._ +l=A.cF(a.r,b.r,c,A.f2(),m) +k=A.cF(a.w,b.w,c,A.f2(),m) +m=A.cF(a.x,b.x,c,A.f2(),m) +j=A.av(a.y,b.y,c) +i=A.av(a.z,b.z,c) +return new A.a90(r,q,s,p,o,n,l,k,m,j,i,A.av(a.Q,b.Q,c))}, +dmK(a,b,c){return c<0.5?a:b}, +a90:function a90(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}, +aW3:function aW3(){}, +ctP(a,b,c,d){var s,r,q,p,o,n,m,l,k,j=null +b.slK(0,c==null?b.x.a.a:c) +b.z.sj(0,B.k9) +s=A.cN(a,!1) +r=A.a([],t.Zt) +q=$.at +p=A.ms(B.bO) +o=A.a([],t.wi) +n=$.ae() +m=$.at +l=d.h("ak<0?>") +k=d.h("aI<0?>") +r=new A.ain(b,!1,!0,!1,j,j,r,A.b9(t.kj),new A.aR(j,d.h("aR>")),new A.aR(j,t.A),new A.qt(),j,0,new A.aI(new A.ak(q,d.h("ak<0?>")),d.h("aI<0?>")),p,o,B.ff,new A.bm(j,n,t.XR),new A.aI(new A.ak(m,l),k),new A.aI(new A.ak(m,l),k),d.h("ain<0>")) +b.Q=r +return s.pF(r,d)}, +a93:function a93(){}, +bE6:function bE6(a){this.a=a}, +Yu:function Yu(a,b){this.a=a +this.b=b}, +ain:function ain(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.en=a +_.a4=b +_.ag=c +_.aq=d +_.go=e +_.id=f +_.k1=!1 +_.k3=_.k2=null +_.k4=g +_.ok=h +_.p1=i +_.p2=j +_.p3=k +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=l +_.pk$=m +_.Q=n +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=o +_.CW=!0 +_.cy=_.cx=null +_.f=p +_.a=null +_.b=q +_.c=r +_.d=s +_.e=a0 +_.$ti=a1}, +Yv:function Yv(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.$ti=d}, +Yw:function Yw(a,b,c){var _=this +_.d=a +_.a=null +_.b=b +_.c=null +_.$ti=c}, +ce7:function ce7(){}, +ce8:function ce8(){}, +ce9:function ce9(a,b){this.a=a +this.b=b}, +dd_(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.cF(a.a,b.a,c,A.Zs(),t.PM) +r=t._ +q=A.cF(a.b,b.b,c,A.f2(),r) +p=A.cF(a.c,b.c,c,A.f2(),r) +o=A.cF(a.d,b.d,c,A.f2(),r) +r=A.cF(a.e,b.e,c,A.f2(),r) +n=A.dcZ(a.f,b.f,c) +m=A.cF(a.r,b.r,c,A.cB9(),t.KX) +l=A.cF(a.w,b.w,c,A.cBn(),t.pc) +k=t.p8 +j=A.cF(a.x,b.x,c,A.amf(),k) +k=A.cF(a.y,b.y,c,A.amf(),k) +i=A.C6(a.z,b.z,c) +if(c<0.5)h=a.Q +else h=b.Q +return new A.a92(s,q,p,o,r,n,m,l,j,k,i,h)}, +dcZ(a,b,c){if(a==b)return a +return new A.aQO(a,b,c)}, +a92:function a92(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}, +aQO:function aQO(a,b,c){this.a=a +this.b=b +this.c=c}, +aW4:function aW4(){}, +dd1(a,b,c){var s,r,q,p,o,n,m,l +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.av(a.b,b.b,c) +q=A.ai(a.c,b.c,c) +p=A.dd0(a.d,b.d,c) +o=A.cKu(a.e,b.e,c) +n=a.f +m=b.f +l=A.d_(n,m,c) +n=A.d_(n,m,c) +m=A.C6(a.w,b.w,c) +return new A.a95(s,r,q,p,o,l,n,m,A.ai(a.x,b.x,c))}, +dd0(a,b,c){if(a==null||b==null)return null +if(a===b)return a +return A.c8(a,b,c)}, +a95:function a95(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}, +aW5:function aW5(){}, +bEa(a,b,c,d,e,f){return new A.Fa(b,c,a,e,d,null,f.h("Fa<0>"))}, +ig:function ig(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +Fa:function Fa(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.x=e +_.a=f +_.$ti=g}, +a96:function a96(a,b,c){var _=this +_.d=a +_.a=null +_.b=b +_.c=null +_.$ti=c}, +bEt:function bEt(a){this.a=a}, +bEm:function bEm(a,b,c){this.a=a +this.b=b +this.c=c}, +bEn:function bEn(a,b,c){this.a=a +this.b=b +this.c=c}, +bEo:function bEo(a,b,c){this.a=a +this.b=b +this.c=c}, +bEp:function bEp(a,b,c){this.a=a +this.b=b +this.c=c}, +bEq:function bEq(a,b){this.a=a +this.b=b}, +bEr:function bEr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bEs:function bEs(){}, +bEb:function bEb(a,b,c){this.a=a +this.b=b +this.c=c}, +bEc:function bEc(){}, +bEd:function bEd(a,b){this.a=a +this.b=b}, +bEe:function bEe(a,b){this.a=a +this.b=b}, +bEf:function bEf(){}, +bEg:function bEg(){}, +bEh:function bEh(){}, +bEi:function bEi(){}, +bEj:function bEj(){}, +bEk:function bEk(){}, +bEl:function bEl(){}, +aiq:function aiq(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f +_.$ti=g}, +Yy:function Yy(a,b,c){var _=this +_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +Yl:function Yl(a,b,c,d,e,f,g,h,i){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.cT$=e +_.Y$=f +_.d7$=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 +_.$ti=i}, +ccn:function ccn(a,b,c){this.a=a +this.b=b +this.c=c}, +ceb:function ceb(a,b,c){var _=this +_.c=a +_.e=_.d=$ +_.a=b +_.b=c}, +cec:function cec(a){this.a=a}, +ced:function ced(a){this.a=a}, +cee:function cee(a){this.a=a}, +cef:function cef(a){this.a=a}, +b0q:function b0q(){}, +b0r:function b0r(){}, +dd8(a,b,c){var s,r +if(a===b&&!0)return a +s=A.vw(a.a,b.a,c) +if(c<0.5)r=a.b +else r=b.b +return new A.UM(s,r)}, +UM:function UM(a,b){this.a=a +this.b=b}, +aW7:function aW7(){}, +cP8(a){var s=a.OZ(!1) +return new A.aYg(a,new A.cu(s,B.bz,B.aw),$.ae())}, +bEK(a,b,c){return new A.LZ(a,b,c,null)}, +dda(a,b){return A.ZG(b)}, +aYg:function aYg(a,b,c){var _=this +_.ax=a +_.a=b +_.k2$=0 +_.k3$=c +_.ok$=_.k4$=0 +_.p1$=!1}, +aWd:function aWd(a,b){var _=this +_.x=a +_.a=b +_.b=!0 +_.c=!1 +_.e=_.d=0 +_.r=_.f=null +_.w=!1}, +LZ:function LZ(a,b,c,d){var _=this +_.c=a +_.f=b +_.w=c +_.a=d}, +ait:function ait(a,b){var _=this +_.d=$ +_.e=null +_.f=!1 +_.w=_.r=$ +_.x=a +_.a=null +_.b=b +_.c=null}, +ceq:function ceq(a,b){this.a=a +this.b=b}, +cep:function cep(a,b){this.a=a +this.b=b}, +cer:function cer(a){this.a=a}, +UN(a){return new A.a9a(a,null)}, +ddb(a,b){return new A.H3(b.ga8q(),b.ga8p(),null)}, +a9a:function a9a(a,b){this.w=a +this.a=b}, +aWe:function aWe(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +bGu(a,b,c,d,e,f,g,h,i){return new A.Fk(i,h,g,f,e,d,a,c,b,B.bAv,null)}, +dj5(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0){var s=null,r=new A.Yn(o,A.jT(s,s,s,s,s,B.ah,s,s,1,B.Y,B.a0),a0,l,j,m,b,f,n,q,k,i,h,g,p,d,e,a,!1,A.aw(t.T)) +r.aQ() +r.aVs(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0) +return r}, +aWL:function aWL(a,b){this.a=a +this.b=b}, +aEN:function aEN(a,b){this.a=a +this.b=b}, +Fk:function Fk(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.cx=i +_.dx=j +_.a=k}, +aiG:function aiG(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 +_.eH$=c +_.b5$=d +_.a=null +_.b=e +_.c=null}, +cfn:function cfn(a,b){this.a=a +this.b=b}, +cfo:function cfo(a,b){this.a=a +this.b=b}, +cfl:function cfl(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cfm:function cfm(a){this.a=a}, +cfk:function cfk(a){this.a=a}, +cfp:function cfp(a){this.a=a}, +aWJ:function aWJ(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}, +Yn:function Yn(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.D=a +_.ag=_.a4=_.N=$ +_.aq=b +_.U=_.aJ=$ +_.aW=!1 +_.aT=0 +_.aU=null +_.ck=c +_.eA=d +_.eq=e +_.f1=f +_.ez=g +_.dA=h +_.e8=i +_.hS=j +_.bk=k +_.er=l +_.dP=m +_.eX=n +_.dr=o +_.dQ=p +_.fA=q +_.iQ=!1 +_.eT=r +_.wd$=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}, +ccu:function ccu(a){this.a=a}, +ccs:function ccs(){}, +ccr:function ccr(){}, +cct:function cct(a){this.a=a}, +ccv:function ccv(a,b){this.a=a +this.b=b}, +v_:function v_(a){this.a=a}, +YH:function YH(a,b){this.a=a +this.b=b}, +aZs:function aZs(a,b){this.d=a +this.a=b}, +aVo:function aVo(a,b,c){var _=this +_.D=$ +_.N=a +_.wd$=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}, +cfi:function cfi(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 +_.ok=a +_.p1=$ +_.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 +_.k4=b3}, +cfj:function cfj(a){this.a=a}, +aln:function aln(){}, +alq:function alq(){}, +aly:function aly(){}, +cMh(a,b){return new A.a9N(b,a,null)}, +cz3(a){var s=a.a0(t.Dj) +return s!=null?s.w:A.G(a).dP}, +cz2(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.V7(a7,b,k,a1,e,h,g,a,j,d,f,a3,n,i,o,a9,b1,p,a6,a5,a8,b0,r,q,s,a0,a2,b2,l,a4,m,c)}, +ddE(b3,b4,b5){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 +if(b3===b4)return b3 +s=A.av(b3.a,b4.a,b5) +r=A.ai(b3.b,b4.b,b5) +q=A.ai(b3.c,b4.c,b5) +p=A.ai(b3.d,b4.d,b5) +o=A.ai(b3.e,b4.e,b5) +n=A.ai(b3.r,b4.r,b5) +m=A.ai(b3.f,b4.f,b5) +l=A.ai(b3.w,b4.w,b5) +k=A.ai(b3.x,b4.x,b5) +j=A.ai(b3.y,b4.y,b5) +i=A.ai(b3.z,b4.z,b5) +h=A.ai(b3.Q,b4.Q,b5) +g=A.ai(b3.as,b4.as,b5) +f=A.ai(b3.at,b4.at,b5) +e=A.ai(b3.ax,b4.ax,b5) +d=A.ai(b3.ay,b4.ay,b5) +c=A.ai(b3.ch,b4.ch,b5) +b=b5<0.5 +a=b?b3.CW:b4.CW +a0=b?b3.cx:b4.cx +a1=b?b3.cy:b4.cy +a2=b?b3.db:b4.db +a3=b?b3.dx:b4.dx +a4=b?b3.dy:b4.dy +a5=b?b3.fr:b4.fr +a6=b?b3.fx:b4.fx +a7=b?b3.fy:b4.fy +a8=b?b3.go:b4.go +a9=A.d_(b3.id,b4.id,b5) +b0=A.av(b3.k1,b4.k1,b5) +b1=b?b3.k2:b4.k2 +b2=b?b3.k3:b4.k3 +return A.cz2(l,r,b?b3.k4:b4.k4,j,o,i,n,m,f,k,q,b0,b2,g,e,a,a5,a4,a6,a7,p,a8,h,b1,a1,a0,s,a2,d,a3,c,a9)}, +a9N:function a9N(a,b,c){this.w=a +this.b=b +this.a=c}, +bFQ:function bFQ(a,b){this.a=a +this.b=b}, +VT:function VT(a,b){this.a=a +this.b=b}, +V7:function V7(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 +_.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}, +bGv:function bGv(){}, +bGw:function bGw(){}, +bGx:function bGx(){}, +bzs:function bzs(){}, +bzv:function bzv(){}, +bzt:function bzt(){}, +bzu:function bzu(){}, +b5Z:function b5Z(){}, +bCm:function bCm(){}, +b5V:function b5V(){}, +bCl:function bCl(){}, +bCk:function bCk(){}, +bCi:function bCi(){}, +a8D:function a8D(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bCh:function bCh(){}, +bCj:function bCj(){}, +bA1:function bA1(){}, +bA0:function bA0(){}, +cbB:function cbB(){}, +kn:function kn(a,b){this.a=a +this.b=b}, +a7B:function a7B(a,b){this.a=a +this.b=b}, +bei:function bei(){}, +bYb:function bYb(){}, +aVI:function aVI(){}, +aVJ:function aVJ(){}, +aWK:function aWK(){}, +cMj(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){return new A.Vb(h,d,k,n,p,s,q,l,e,a,b,r,g,j,c,o,i,f,m)}, +djg(a){var s=null +return new A.cfw(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +wJ:function wJ(a,b){this.a=a +this.b=b}, +Vb:function Vb(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}, +aiJ:function aiJ(a){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null}, +cft:function cft(a){this.a=a}, +cfs:function cfs(a){this.a=a}, +cfu:function cfu(a){this.a=a}, +cfv:function cfv(a){this.a=a}, +cfw:function cfw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.ay=a +_.CW=_.ch=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o}, +cfx:function cfx(a){this.a=a}, +ddH(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return new A.Vc(d,c,i,g,k,m,e,n,l,f,b,a,h,j)}, +ddI(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.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=A.ai(a.c,b.c,c) +p=A.d_(a.d,b.d,c) +o=A.av(a.e,b.e,c) +n=A.iC(a.f,b.f,c) +m=c<0.5 +if(m)l=a.r +else l=b.r +k=A.av(a.w,b.w,c) +j=A.vO(a.x,b.x,c) +i=A.ai(a.z,b.z,c) +h=A.av(a.Q,b.Q,c) +g=A.ai(a.as,b.as,c) +f=A.ai(a.at,b.at,c) +if(m)m=a.ax +else m=b.ax +return A.ddH(g,h,r,s,l,i,p,f,q,m,o,j,n,k)}, +aF_:function aF_(a,b){this.a=a +this.b=b}, +Vc:function Vc(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 +_.z=j +_.Q=k +_.as=l +_.at=m +_.ax=n}, +aX1:function aX1(){}, +jy(a,b){return new A.VA(b,a,null)}, +cP2(a){var s=null +return new A.aXy(a,s,s,s,s,s,s,s,s,s)}, +chk:function chk(a,b){this.a=a +this.b=b}, +VA:function VA(a,b,c){this.c=a +this.d=b +this.a=c}, +afX:function afX(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 +_.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 +_.k1=a6 +_.k2=a7 +_.a=a8}, +afY:function afY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.f=_.e=!1 +_.ur$=b +_.rz$=c +_.us$=d +_.MW$=e +_.MX$=f +_.Gv$=g +_.MY$=h +_.Gw$=i +_.WG$=j +_.Ch$=k +_.z7$=l +_.z8$=m +_.eH$=n +_.b5$=o +_.a=null +_.b=p +_.c=null}, +c5R:function c5R(a){this.a=a}, +c5S:function c5S(a){this.a=a}, +c5Q:function c5Q(a){this.a=a}, +c5T:function c5T(a,b){this.a=a +this.b=b}, +ajb:function ajb(a,b){var _=this +_.be=_.bO=_.c_=_.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 +_.bU=_.bj=null +_.e7=a +_.a4=_.N=_.D=_.dd=null +_.aq=_.ag=!1 +_.U=_.aJ=null +_.aW=$ +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=null +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +chj:function chj(a,b,c){this.a=a +this.b=b +this.c=c}, +aXz:function aXz(){}, +aXw:function aXw(){}, +aXx:function aXx(a,b,c,d,e,f,g,h,i,j){var _=this +_.y=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j}, +ch3:function ch3(){}, +ch5:function ch5(a){this.a=a}, +ch4:function ch4(a){this.a=a}, +ch0:function ch0(a,b){this.a=a +this.b=b}, +ch1:function ch1(a){this.a=a}, +aXy:function aXy(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}, +ch8:function ch8(a){this.a=a}, +ch9:function ch9(a){this.a=a}, +cha:function cha(a){this.a=a}, +ch7:function ch7(a){this.a=a}, +ch6:function ch6(){}, +aj9:function aj9(a,b){this.a=a +this.b=b}, +ch2:function ch2(a){this.a=a}, +al7:function al7(){}, +al8:function al8(){}, +b0T:function b0T(){}, +b0U:function b0U(){}, +dew(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b&&!0)return a +s=t._ +r=A.cF(a.a,b.a,c,A.f2(),s) +q=A.cF(a.b,b.b,c,A.f2(),s) +p=A.cF(a.c,b.c,c,A.f2(),s) +o=A.cF(a.d,b.d,c,A.Zs(),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.cF(a.r,b.r,c,A.f2(),s) +k=A.av(a.w,b.w,c) +if(n)n=a.x +else n=b.x +return new A.uB(r,q,p,o,m,l,s,k,n)}, +cMy(a){var s +a.a0(t.OJ) +s=A.G(a) +return s.dr}, +uB:function uB(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}, +aXA:function aXA(){}, +dez(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.bbQ(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +q=c<0.5 +p=q?a.c:b.c +o=A.ai(a.d,b.d,c) +n=q?a.e:b.e +m=A.ai(a.f,b.f,c) +l=A.ji(a.r,b.r,c) +k=A.d_(a.w,b.w,c) +j=A.ai(a.x,b.x,c) +i=A.d_(a.y,b.y,c) +h=A.cF(a.z,b.z,c,A.f2(),t._) +g=q?a.Q:b.Q +f=q?a.as:b.as +return new A.VE(s,r,p,o,n,m,l,k,j,i,h,g,f,q?a.at:b.at)}, +VE:function VE(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}, +aXG:function aXG(){}, +cMC(a,b,c,d){return new A.VG(A.b3O(null,b,d),B.aA,c,b,b,$.ae())}, +a1G(a,b){return new A.a1F(b,a,null)}, +cGx(a){var s=a.a0(t.oq) +return s==null?null:s.f}, +VG:function VG(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.k2$=_.f=0 +_.k3$=f +_.ok$=_.k4$=0 +_.p1$=!1}, +bJT:function bJT(a){this.a=a}, +ajg:function ajg(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +a1F:function a1F(a,b,c){this.c=a +this.f=b +this.a=c}, +aNm:function aNm(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +akT:function akT(){}, +FK:function FK(a,b,c){this.a=a +this.b=b +this.c=c}, +aZd:function aZd(a,b,c){this.b=a +this.c=b +this.a=c}, +wN(a){return new A.qL(a,null)}, +cP4(a,b,c,d,e,f,g,h,i){return new A.aXJ(g,i,e,f,h,c,b,a,null)}, +dmj(a){var s,r,q=a.gi1(0).x +q===$&&A.b() +s=a.e +r=a.d +if(a.f===0)return A.Z(Math.abs(r-q),0,1) +return Math.abs(q-r)/Math.abs(r-s)}, +VD(a,b,c){return new A.aaB(c,a,!0,null)}, +VF(a,b){return new A.aaC(b,a,null)}, +bJS:function bJS(a,b){this.a=a +this.b=b}, +VC:function VC(a,b){this.a=a +this.b=b}, +qL:function qL(a,b){this.d=a +this.a=b}, +aXJ:function aXJ(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}, +chw:function chw(a,b){this.a=a +this.b=b}, +aXI:function aXI(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.mg=a +_.D=b +_.N=c +_.a4=d +_.ag=e +_.aq=f +_.aJ=g +_.U=h +_.aW=0 +_.aT=i +_.aU=j +_.wc$=k +_.MQ$=l +_.cT$=m +_.Y$=n +_.d7$=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}, +aXH:function aXH(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}, +aNC:function aNC(a,b,c){this.b=a +this.c=b +this.a=c}, +aff:function aff(a,b,c,d,e,f,g,h,i,j){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.at=_.as=_.Q=_.z=null +_.ax=!1 +_.a=j}, +aLS:function aLS(a){this.a=a}, +Xh:function Xh(a,b){this.a=a +this.b=b}, +ajd:function ajd(a,b,c,d,e,f,g,h){var _=this +_.ag=a +_.aq=!1 +_.aJ=!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 +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +aXF:function aXF(a,b,c,d,e,f,g,h){var _=this +_.as=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +aaB:function aaB(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aje:function aje(a){var _=this +_.r=_.f=_.e=_.d=null +_.y=_.x=_.w=$ +_.z=!1 +_.a=null +_.b=a +_.c=null}, +chs:function chs(){}, +cho:function cho(){}, +chp:function chp(a,b){this.a=a +this.b=b}, +chq:function chq(a,b){this.a=a +this.b=b}, +chr:function chr(a,b){this.a=a +this.b=b}, +aaC:function aaC(a,b,c){this.c=a +this.d=b +this.a=c}, +ajf:function ajf(a){var _=this +_.e=_.d=null +_.f=$ +_.r=null +_.x=_.w=0 +_.y=!1 +_.a=null +_.b=a +_.c=null}, +cht:function cht(a){this.a=a}, +chu:function chu(a,b,c){this.a=a +this.b=b +this.c=c}, +chv:function chv(a){this.a=a}, +chM:function chM(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.ax=a +_.ch=_.ay=$ +_.CW=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}, +chN:function chN(a){this.a=a}, +b_r:function b_r(){}, +b_y:function b_y(){}, +nq(a,b,c,d,e,f,g,h,i,j,k,l){return new A.VI(j,i,h,g,l,c,d,!1,k,e,b,f)}, +VJ(a,b,c,d,e,f,g,h,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4){var s,r,q,p,o,n,m,l=null,k=a2==null,j=k&&e==null?l:new A.ajq(a2,e),i=c==null +if(i&&d==null)s=l +else if(d==null){i=i?l:new A.bS(c,t.Il) +s=i}else{i=new A.ajq(c,d) +s=i}r=k?l:new A.aXY(a2) +k=b3==null?l:new A.bS(b3,t.XL) +i=a7==null?l:new A.bS(a7,t.h9) +q=g==null?l:new A.bS(g,t.QL) +p=a6==null?l:new A.bS(a6,t.Ak) +o=a5==null?l:new A.bS(a5,t.iL) +n=a4==null?l:new A.bS(a4,t.iL) +m=a8==null?l:new A.bS(a8,t.kU) +return A.C8(a,b,s,q,h,l,j,l,l,n,o,new A.aXX(a0,f),r,p,i,m,l,b0,l,b2,k,b4)}, +dnN(a){var s=A.G(a).p3.as,r=s==null?null:s.r +if(r==null)r=14 +s=A.cG(a,B.bn) +s=s==null?null:s.gdZ() +s=(s==null?B.Y:s).bK(0,r) +return A.Hw(B.D0,B.cp,B.ed,s/14)}, +djn(a,b,c,d,e,f,g,h,i,j,k,l){var s=b==null?B.i:b +return new A.aY0(j,i,h,g,l,s,c,a===!0,k,!0,new A.aY1(f,d,null),e)}, +VI:function VI(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}, +ajq:function ajq(a,b){this.a=a +this.b=b}, +aXY:function aXY(a){this.a=a}, +aXX:function aXX(a,b){this.a=a +this.b=b}, +aY0:function aY0(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}, +aY1:function aY1(a,b,c){this.c=a +this.d=b +this.a=c}, +aXZ:function aXZ(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}, +ci_:function ci_(a){this.a=a}, +ci1:function ci1(a){this.a=a}, +ci0:function ci0(){}, +b0Y:function b0Y(){}, +deZ(a,b,c){if(a===b)return a +return new A.MB(A.vw(a.a,b.a,c))}, +czg(a,b){return new A.aaQ(b,a,null)}, +MB:function MB(a){this.a=a}, +aaQ:function aaQ(a,b,c){this.w=a +this.b=b +this.a=c}, +aY_:function aY_(){}, +Fz(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,e6,e7,e8,e9){var s,r,q,p +if(d7==null)s=b8?B.xu:B.xv +else s=d7 +if(d8==null)r=b8?B.xw:B.xx +else r=d8 +if(b1==null)q=b5===1?B.xW:B.ql +else q=b1 +if(a3==null)p=!c7||!b8 +else p=a3 +return new A.aaT(b2,i,a7,a0,q,e7,e5,e2,e1,e3,e4,e6,c,e0,b9,b8,a,s,r,a4,b5,b6,!1,c7,e8,d6,b3,b4,c1,c2,c3,c0,a8,a5,o,l,n,m,j,k,d4,d5,b0,d1,p,d3,a1,c4,!1,c6,b7,d,d2,d0,b,f,c8,!0,!0,g,h,e,e9,d9,a9)}, +df3(a,b){return A.ZG(b)}, +df4(a){return B.lU}, +dmW(a){return A.afW(new A.cpR(a))}, +aY4:function aY4(a,b){var _=this +_.x=a +_.a=b +_.b=!0 +_.c=!1 +_.e=_.d=0 +_.r=_.f=null +_.w=!1}, +aaT:function aaT(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){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 +_.c_=c6 +_.bO=c7 +_.be=c8 +_.bj=c9 +_.bU=d0 +_.e7=d1 +_.dd=d2 +_.D=d3 +_.N=d4 +_.a4=d5 +_.ag=d6 +_.aq=d7 +_.aJ=d8 +_.U=d9 +_.aW=e0 +_.aT=e1 +_.aU=e2 +_.ck=e3 +_.eA=e4 +_.a=e5}, +ajr:function ajr(a,b,c,d,e,f,g){var _=this +_.e=_.d=null +_.r=_.f=!1 +_.x=_.w=$ +_.y=a +_.z=null +_.eb$=b +_.jX$=c +_.um$=d +_.hH$=e +_.ke$=f +_.a=null +_.b=g +_.c=null}, +ci3:function ci3(){}, +ci5:function ci5(a,b){this.a=a +this.b=b}, +ci4:function ci4(a,b){this.a=a +this.b=b}, +ci6:function ci6(){}, +ci8:function ci8(a){this.a=a}, +ci9:function ci9(a){this.a=a}, +cia:function cia(a){this.a=a}, +cib:function cib(a){this.a=a}, +cic:function cic(a){this.a=a}, +cid:function cid(a){this.a=a}, +cie:function cie(a,b,c){this.a=a +this.b=b +this.c=c}, +cig:function cig(a){this.a=a}, +cih:function cih(a){this.a=a}, +cif:function cif(a,b){this.a=a +this.b=b}, +ci7:function ci7(a){this.a=a}, +cpR:function cpR(a){this.a=a}, +cnY:function cnY(){}, +alD:function alD(){}, +Av(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,a0,a1){var s=null,r=e.a.a,q=f.bO +return new A.aaU(e,o,a1,new A.bKU(f,m,s,h,j,a0,s,s,B.ah,s,s,B.fk,c,s,s,p,s,"\u2022",l,a,s,s,g,s,k,s,!1,s,s,!1,s,s,n,i,s,2,s,s,s,s,B.ec,s,s,s,s,s,b,s,!0,s,d,s,s,s,s,s,B.cY,B.cA,B.m,s,B.k,!0,!0),r,q!==!1,B.kg,s,s)}, +df5(a,b){return A.ZG(b)}, +aaU:function aaU(a,b,c,d,e,f,g,h,i){var _=this +_.z=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.a=i}, +bKU:function bKU(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){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 +_.c_=c8 +_.bO=c9 +_.be=d0 +_.bj=d1 +_.bU=d2 +_.e7=d3 +_.dd=d4 +_.D=d5 +_.N=d6 +_.a4=d7 +_.ag=d8 +_.aq=d9 +_.aJ=e0 +_.U=e1 +_.aW=e2 +_.aT=e3}, +bKV:function bKV(a,b){this.a=a +this.b=b}, +YT:function YT(a,b,c,d,e,f,g,h){var _=this +_.ax=null +_.d=$ +_.e=a +_.f=b +_.eb$=c +_.jX$=d +_.um$=e +_.hH$=f +_.ke$=g +_.a=null +_.b=h +_.c=null}, +az9:function az9(){}, +brs:function brs(){}, +aY6:function aY6(a,b){this.b=a +this.a=b}, +aRl:function aRl(){}, +df9(a,b,c){var s,r +if(a===b)return a +s=A.ai(a.a,b.a,c) +r=A.ai(a.b,b.b,c) +return new A.ab5(s,r,A.ai(a.c,b.c,c))}, +ab5:function ab5(a,b,c){this.a=a +this.b=b +this.c=c}, +aY8:function aY8(){}, +dfa(a,b,c){return new A.aGf(a,b,c,null)}, +dfg(a,b){return new A.aY9(b,null)}, +djo(a){var s,r=null,q=a.a.a +switch(q){case 1:s=A.MJ(r,r).ay.cy===a.cy +break +case 0:s=A.MJ(B.aN,r).ay.cy===a.cy +break +default:s=r}if(!s)return a.cy +switch(q){case 1:q=B.r +break +case 0:q=B.ey +break +default:q=r}return q}, +aGf:function aGf(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +ajx:function ajx(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aYd:function aYd(a,b,c,d){var _=this +_.d=!1 +_.e=a +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +ciC:function ciC(a){this.a=a}, +ciB:function ciB(a){this.a=a}, +aYe:function aYe(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aYf:function aYf(a,b,c,d){var _=this +_.G=null +_.ac=a +_.aS=b +_.k1$=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}, +ciD:function ciD(a,b,c){this.a=a +this.b=b +this.c=c}, +aYa:function aYa(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aYb:function aYb(a,b,c){var _=this +_.k4=$ +_.ok=a +_.c=_.b=_.a=_.ch=_.ax=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +aVn:function aVn(a,b,c,d,e,f){var _=this +_.D=-1 +_.N=a +_.a4=b +_.cT$=c +_.Y$=d +_.d7$=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}, +ccw:function ccw(a,b,c){this.a=a +this.b=b +this.c=c}, +ccx:function ccx(a,b,c){this.a=a +this.b=b +this.c=c}, +ccz:function ccz(a,b){this.a=a +this.b=b}, +ccy:function ccy(a,b,c){this.a=a +this.b=b +this.c=c}, +ccA:function ccA(a){this.a=a}, +aY9:function aY9(a,b){this.c=a +this.a=b}, +aYc:function aYc(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +b0z:function b0z(){}, +b0Z:function b0Z(){}, +dfd(a){if(a===B.a02||a===B.ze)return 14.5 +return 9.5}, +dff(a){if(a===B.a03||a===B.ze)return 14.5 +return 9.5}, +dfe(a,b){if(a===0)return b===1?B.ze:B.a02 +if(a===b-1)return B.a03 +return B.bAM}, +dfc(a){var s,r=null,q=a.a.a +switch(q){case 1:s=A.MJ(r,r).ay.db===a.db +break +case 0:s=A.MJ(B.aN,r).ay.db===a.db +break +default:s=r}if(!s)return a.db +switch(q){case 1:q=B.B +break +case 0:q=B.r +break +default:q=r}return q}, +YV:function YV(a,b){this.a=a +this.b=b}, +aGh:function aGh(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +czm(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.jU(r,q,p,a0,o,n,m,l,k,j,i,h,g,a4,a5==null?s:a5)}, +VS(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.d_(a.a,b.a,c) +r=A.d_(a.b,b.b,c) +q=A.d_(a.c,b.c,c) +p=A.d_(a.d,b.d,c) +o=A.d_(a.e,b.e,c) +n=A.d_(a.f,b.f,c) +m=A.d_(a.r,b.r,c) +l=A.d_(a.w,b.w,c) +k=A.d_(a.x,b.x,c) +j=A.d_(a.y,b.y,c) +i=A.d_(a.z,b.z,c) +h=A.d_(a.Q,b.Q,c) +g=A.d_(a.as,b.as,c) +f=A.d_(a.at,b.at,c) +return A.czm(j,i,h,s,r,q,p,o,n,g,f,A.d_(a.ax,b.ax,c),m,l,k)}, +jU:function jU(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}, +aYi:function aYi(){}, +G(a){var s,r=a.a0(t.Nr),q=A.dS(a,B.an,t.v),p=q==null?null:q.gcJ() +if(p==null)p=B.a3 +s=r==null?null:r.w.c +if(s==null)s=$.cY5() +return A.dfm(s,s.p4.aIc(p))}, +pC:function pC(a,b,c){this.c=a +this.d=b +this.a=c}, +afl:function afl(a,b,c){this.w=a +this.b=b +this.a=c}, +MI:function MI(a,b){this.a=a +this.b=b}, +a_5:function a_5(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +aKH:function aKH(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bRt:function bRt(){}, +MJ(d5,d6){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=null,d2=A.a([],t.a8),d3=A.a([],t.lY),d4=A.bL() +switch(d4.a){case 0:case 1:case 2:s=B.b4y +break +case 3:case 4:case 5:s=B.b4z +break +default:s=d1}r=A.dgn(d4) +d6=d6!==!1 +if(d6)q=B.a5V +else q=B.a5W +if(d5==null)p=d1 +else p=d5 +if(p==null)p=B.ak +o=p===B.aN +if(d6){n=o?B.a6P:B.a6O +m=o?n.cy:n.b +l=o?n.db:n.c +k=n.CW +j=n.cy +i=n.fr +if(i==null)i=n.cx +h=n.at +g=d5===B.aN +f=k +e=m +d=l +c=f +b=j +a=c}else{f=d1 +e=f +d=e +h=d +i=h +c=i +n=c +b=n +k=b +j=k +a=j +g=a}if(e==null)e=o?B.mV:B.du +a0=A.FC(e) +a1=o?B.BJ:B.BM +a2=o?B.B:B.Bw +a3=a0===B.aN +if(o)a4=B.tb +else{a5=n==null?d1:n.f +a4=a5==null?B.mU:a5}a6=o?A.Y(31,255,255,255):A.Y(31,0,0,0) +a7=o?A.Y(10,255,255,255):A.Y(10,0,0,0) +if(k==null)k=o?B.t7:B.BY +if(f==null)f=k +if(b==null)b=o?B.ey:B.r +if(i==null)i=o?B.afX:B.tn +if(n==null){a8=o?B.tb:B.mW +a5=o?B.ky:B.te +a9=A.FC(B.du)===B.aN +b0=A.FC(a8) +b1=a9?B.r:B.B +b0=b0===B.aN?B.r:B.B +b2=o?B.r:B.B +b3=a9?B.r:B.B +n=A.b9U(a5,p,B.tg,d1,d1,d1,b3,o?B.B:B.r,d1,d1,b1,d1,b0,d1,b2,d1,d1,d1,d1,d1,B.du,d1,d1,a8,d1,d1,b,d1,d1,d1,d1)}b4=o?B.aP:B.aC +b5=o?B.ky:B.BQ +if(c==null)c=o?B.ey:B.r +if(d==null){d=n.f +if(d.l(0,e))d=B.r}b6=o?B.a73:A.Y(153,0,0,0) +b7=A.cFs(!1,o?B.mU:B.iM,n,d1,a6,36,d1,a7,B.A6,s,88,d1,d1,d1,B.a4b) +b8=o?B.a6Z:B.a6Y +b9=o?B.Be:B.t1 +c0=o?B.Be:B.a70 +if(d6){c1=A.cNj(d4,d1,d1,B.bsT,B.bsL,B.bsO) +a5=n.a===B.ak +c2=a5?n.db:n.cy +c3=a5?n.cy:n.db +a5=c1.a.avn(c2,c2,c2) +b0=c1.b.avn(c3,c3,c3) +c4=new A.W9(a5,b0,c1.c,c1.d,c1.e)}else c4=A.dg3(d4) +c5=o?c4.b:c4.a +c6=a3?c4.b:c4.a +c7=c5.dt(d1) +c8=c6.dt(d1) +c9=o?new A.dW(d1,d1,d1,d1,d1,$.cE9(),d1,d1,d1):new A.dW(d1,d1,d1,d1,d1,$.cE8(),d1,d1,d1) +d0=a3?B.ayG:B.ayH +if(h==null)h=B.tg +if(a==null)a=o?B.ky:B.te +if(j==null)j=o?B.ey:B.r +return A.czn(d1,A.dfi(d3),B.a17,g===!0,a,B.a1B,B.b4n,j,B.a2N,B.a2O,B.a2P,B.a4a,b7,k,b,B.a6g,B.a6o,B.a6p,n,d1,B.agV,B.agW,c,B.ahd,b8,i,B.ahn,B.ahB,B.ahD,B.aiT,h,B.ajm,A.dfk(d2),B.ajH,B.ajN,a6,b9,b6,a7,B.aks,c9,d,B.aAf,B.aBx,s,B.b5H,B.b5I,B.b5J,B.b6o,B.b6r,B.b6u,B.bfq,B.bfz,d4,B.bi0,e,a2,a1,d0,c8,B.bi4,B.bic,f,B.bkE,B.bkF,B.bkJ,b5,B.bkK,B.B,B.bmM,B.bn5,c0,q,B.YM,B.bo3,B.bo5,B.bov,c7,B.btb,B.btP,a4,B.btZ,c4,b4,d6,r)}, +czn(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){return new A.nr(d,a0,b3,b,c3,c5,d3,d4,e4,f3,!0,g6,h,n,o,s,a3,a5,a6,b6,b7,b8,b9,c2,d6,d7,d8,e3,e7,e9,f2,g4,c1,d9,e0,f8,g3,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,f0,f1,f4,f5,f6,f7,f9,g0,g2,b1,e,g1)}, +dfh(){return A.MJ(B.ak,null)}, +dfi(a){var s,r,q=A.N(t.u,t.gj) +for(s=0;!1;++s){r=a[s] +q.n(0,A.c6(A.X(r).h("xP.T")),r)}return q}, +dfm(a,b){return $.cY4().cP(0,new A.Xz(a,b),new A.bLA(a,b))}, +FC(a){var s=a.axd()+0.05 +if(s*s>0.15)return B.ak +return B.aN}, +dfj(a,b,c){var s=a.c,r=s.qv(s,new A.bLy(b,c),t.K,t.Ag) +s=b.c +s=s.gep(s) +r.auT(r,s.kW(s,new A.bLz(a))) +return r}, +dfk(a){var s,r,q=t.K,p=t.ZF,o=A.N(q,p) +for(s=0;!1;++s){r=a[s] +o.n(0,r.gbl(r),p.a(r))}return A.baw(o,q,t.Ag)}, +dfl(h4,h5,h6){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 +if(h4===h5)return h4 +s=h6<0.5 +r=s?h4.d:h5.d +q=s?h4.a:h5.a +p=s?h4.b:h5.b +o=A.dfj(h4,h5,h6) +n=s?h4.e:h5.e +m=s?h4.f:h5.f +l=s?h4.r:h5.r +k=s?h4.w:h5.w +j=A.dcY(h4.x,h5.x,h6) +i=s?h4.y:h5.y +h=A.dgo(h4.Q,h5.Q,h6) +g=A.ai(h4.at,h5.at,h6) +g.toString +f=A.ai(h4.ax,h5.ax,h6) +f.toString +e=A.d36(h4.ay,h5.ay,h6) +d=A.ai(h4.ch,h5.ch,h6) +d.toString +c=A.ai(h4.CW,h5.CW,h6) +c.toString +b=A.ai(h4.cx,h5.cx,h6) +b.toString +a=A.ai(h4.cy,h5.cy,h6) +a.toString +a0=A.ai(h4.db,h5.db,h6) +a0.toString +a1=A.ai(h4.dx,h5.dx,h6) +a1.toString +a2=A.ai(h4.dy,h5.dy,h6) +a2.toString +a3=A.ai(h4.fr,h5.fr,h6) +a3.toString +a4=A.ai(h4.fx,h5.fx,h6) +a4.toString +a5=A.ai(h4.fy,h5.fy,h6) +a5.toString +a6=A.ai(h4.go,h5.go,h6) +a6.toString +a7=A.ai(h4.id,h5.id,h6) +a7.toString +a8=A.ai(h4.k1,h5.k1,h6) +a8.toString +a9=A.ai(h4.k2,h5.k2,h6) +a9.toString +b0=A.ai(h4.k3,h5.k3,h6) +b0.toString +b1=A.ai(h4.k4,h5.k4,h6) +b1.toString +b2=A.z2(h4.ok,h5.ok,h6) +b3=A.z2(h4.p1,h5.p1,h6) +b4=A.VS(h4.p2,h5.p2,h6) +b5=A.VS(h4.p3,h5.p3,h6) +b6=A.dg4(h4.p4,h5.p4,h6) +b7=A.d1y(h4.R8,h5.R8,h6) +b8=A.d1N(h4.RG,h5.RG,h6) +b9=A.d1Z(h4.rx,h5.rx,h6) +c0=h4.ry +c1=h5.ry +c2=A.ai(c0.a,c1.a,h6) +c3=A.ai(c0.b,c1.b,h6) +c4=A.ai(c0.c,c1.c,h6) +c5=A.ai(c0.d,c1.d,h6) +c6=A.d_(c0.e,c1.e,h6) +c7=A.av(c0.f,c1.f,h6) +c8=A.ji(c0.r,c1.r,h6) +c0=A.ji(c0.w,c1.w,h6) +c1=A.d2c(h4.to,h5.to,h6) +c9=A.d2d(h4.x1,h5.x1,h6) +d0=A.d2f(h4.x2,h5.x2,h6) +d1=A.d2m(h4.xr,h5.xr,h6) +s=s?h4.y1:h5.y1 +d2=A.d2y(h4.y2,h5.y2,h6) +d3=A.d2G(h4.c_,h5.c_,h6) +d4=A.d2M(h4.bO,h5.bO,h6) +d5=A.d40(h4.be,h5.be,h6) +d6=A.d4b(h4.bj,h5.bj,h6) +d7=A.d4v(h4.bU,h5.bU,h6) +d8=A.d4L(h4.e7,h5.e7,h6) +d9=A.d5c(h4.dd,h5.dd,h6) +e0=A.d5e(h4.D,h5.D,h6) +e1=A.d6a(h4.N,h5.N,h6) +e2=A.d6L(h4.a4,h5.a4,h6) +e3=A.d70(h4.ag,h5.ag,h6) +e4=A.d74(h4.aq,h5.aq,h6) +e5=A.d8f(h4.aJ,h5.aJ,h6) +e6=A.d9g(h4.U,h5.U,h6) +e7=A.da1(h4.aW,h5.aW,h6) +e8=A.da3(h4.aT,h5.aT,h6) +e9=A.da6(h4.aU,h5.aU,h6) +f0=A.das(h4.ck,h5.ck,h6) +f1=A.dat(h4.eA,h5.eA,h6) +f2=A.dav(h4.eq,h5.eq,h6) +f3=A.daK(h4.f1,h5.f1,h6) +f4=A.dbz(h4.ez,h5.ez,h6) +f5=A.dbO(h4.dA,h5.dA,h6) +f6=A.dbY(h4.e8,h5.e8,h6) +f7=A.dd_(h4.hS,h5.hS,h6) +f8=A.dd1(h4.bk,h5.bk,h6) +f9=A.dd8(h4.er,h5.er,h6) +g0=A.ddE(h4.dP,h5.dP,h6) +g1=A.ddI(h4.eX,h5.eX,h6) +g2=A.dew(h4.dr,h5.dr,h6) +g3=A.dez(h4.dQ,h5.dQ,h6) +g4=A.deZ(h4.fA,h5.fA,h6) +g5=A.df9(h4.iQ,h5.iQ,h6) +g6=A.dfn(h4.eT,h5.eT,h6) +g7=A.dfI(h4.fG,h5.fG,h6) +g8=A.dfO(h4.mf,h5.mf,h6) +g9=h4.G +g9.toString +h0=h5.G +h0.toString +h0=A.ai(g9,h0,h6) +g9=h4.dF +g9.toString +h1=h5.dF +h1.toString +h1=A.ai(g9,h1,h6) +g9=h4.hi +g9.toString +h2=h5.hi +h2.toString +h2=A.ai(g9,h2,h6) +g9=h4.as +g9.toString +h3=h5.as +h3.toString +return A.czn(b7,r,b8,q,h2,b9,new A.a5n(c2,c3,c4,c5,c6,c7,c8,c0),A.ai(g9,h3,h6),c1,c9,d0,d1,s,g,f,d2,d3,d4,e,p,d5,d6,d,d7,c,b,d8,d9,e0,e1,h1,e2,o,e3,e4,a,a0,a1,a2,e5,b2,a3,n,e6,m,e7,e8,e9,f0,f1,f2,f3,l,k,f4,a4,a5,a6,b3,b4,f5,f6,a7,j,f7,f8,a8,f9,a9,g0,g1,b0,i,g2,g3,g4,g5,b5,g6,g7,h0,g8,b6,b1,!0,h)}, +d9J(a,b){return new A.axm(a,b,B.yI,b.a,b.b,b.c,b.d,b.e,b.f,b.r)}, +dgn(a){switch(a.a){case 0:case 2:case 1:break +case 3:case 4:case 5:return B.ip}return B.hi}, +dgo(a,b,c){var s,r +if(a===b)return a +s=A.av(a.a,b.a,c) +s.toString +r=A.av(a.b,b.b,c) +r.toString +return new A.qU(s,r)}, +xP:function xP(){}, +Kg:function Kg(a,b){this.a=a +this.b=b}, +nr:function nr(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){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 +_.c_=c8 +_.bO=c9 +_.be=d0 +_.bj=d1 +_.bU=d2 +_.e7=d3 +_.dd=d4 +_.D=d5 +_.N=d6 +_.a4=d7 +_.ag=d8 +_.aq=d9 +_.aJ=e0 +_.U=e1 +_.aW=e2 +_.aT=e3 +_.aU=e4 +_.ck=e5 +_.eA=e6 +_.eq=e7 +_.f1=e8 +_.ez=e9 +_.dA=f0 +_.e8=f1 +_.hS=f2 +_.bk=f3 +_.er=f4 +_.dP=f5 +_.eX=f6 +_.dr=f7 +_.dQ=f8 +_.fA=f9 +_.iQ=g0 +_.eT=g1 +_.fG=g2 +_.mf=g3 +_.dF=g4 +_.hi=g5 +_.G=g6}, +bLA:function bLA(a,b){this.a=a +this.b=b}, +bLy:function bLy(a,b){this.a=a +this.b=b}, +bLz:function bLz(a){this.a=a}, +axm:function axm(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}, +Xz:function Xz(a,b){this.a=a +this.b=b}, +aOP:function aOP(a,b,c){this.a=a +this.b=b +this.$ti=c}, +qU:function qU(a,b){this.a=a +this.b=b}, +aYm:function aYm(){}, +aZI:function aZI(){}, +dfn(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.c8(s,r,a4)}}r=A.ai(a2.a,a3.a,a4) +q=A.vw(a2.b,a3.b,a4) +p=A.vw(a2.c,a3.c,a4) +o=a2.gMi() +n=a3.gMi() +o=A.ai(o,n,a4) +n=t.KX.a(A.iC(a2.f,a3.f,a4)) +m=A.ai(a2.r,a3.r,a4) +l=A.d_(a2.w,a3.w,a4) +k=A.ai(a2.x,a3.x,a4) +j=A.ai(a2.y,a3.y,a4) +i=A.ai(a2.z,a3.z,a4) +h=A.d_(a2.Q,a3.Q,a4) +g=A.av(a2.as,a3.as,a4) +f=A.ai(a2.at,a3.at,a4) +e=A.d_(a2.ax,a3.ax,a4) +d=A.ai(a2.ay,a3.ay,a4) +c=A.iC(a2.ch,a3.ch,a4) +b=A.ai(a2.CW,a3.CW,a4) +a=A.d_(a2.cx,a3.cx,a4) +if(a4<0.5)a0=a2.cy +else a0=a3.cy +a1=A.ji(a2.db,a3.db,a4) +return new A.abb(r,q,p,s,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,A.iC(a2.dx,a3.dx,a4))}, +abb:function abb(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}, +bLH:function bLH(a){this.a=a}, +aYo:function aYo(){}, +dfI(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.d_(a.a,b.a,c) +r=A.C6(a.b,b.b,c) +q=A.ai(a.c,b.c,c) +p=A.ai(a.d,b.d,c) +o=A.ai(a.e,b.e,c) +n=A.ai(a.f,b.f,c) +m=A.ai(a.r,b.r,c) +l=A.ai(a.w,b.w,c) +k=A.ai(a.y,b.y,c) +j=A.ai(a.x,b.x,c) +i=A.ai(a.z,b.z,c) +h=A.ai(a.Q,b.Q,c) +g=A.ai(a.as,b.as,c) +f=A.rf(a.ax,b.ax,c) +return new A.abp(s,r,q,p,o,n,m,l,j,k,i,h,g,A.av(a.at,b.at,c),f)}, +abp:function abp(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}, +aYG:function aYG(){}, +W4:function W4(){}, +bN2:function bN2(a,b){this.a=a +this.b=b}, +bN4:function bN4(a){this.a=a}, +bN_:function bN_(a,b){this.a=a +this.b=b}, +bN1:function bN1(a,b){this.a=a +this.b=b}, +W3:function W3(){}, +cOi(a,b,c){return new A.aOB(b,null,c,B.bt,null,a,null)}, +FH(a,b,c,d,e,f,g,h,i){return new A.N8(d,f,i,e,b,a,g,h,c)}, +dfP(){var s,r,q +if($.Na.length!==0){s=A.a($.Na.slice(0),A.X($.Na)) +for(r=s.length,q=0;q>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +break +default:p=null}switch(q.a){case 1:o=b.a +break +case 0:r=b.a +o=A.Y(0,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +break +default:o=null}r=a.d +q=b.d +if(r!==q){n=A.ai(p,o,c) +n.toString +q=A.av(r,q,c) +q.toString +return new A.bx(n,s,B.O,q)}q=A.ai(p,o,c) +q.toString +return new A.bx(q,s,B.O,r)}, +iC(a,b,c){var s,r +if(a==b)return a +s=b!=null?b.j3(a,c):null +if(s==null&&a!=null)s=a.j4(b,c) +if(s==null)r=c<0.5?a:b +else r=s +return r}, +cKu(a,b,c){var s,r +if(a==b)return a +s=b!=null?b.j3(a,c):null +if(s==null&&a!=null)s=a.j4(b,c) +if(s==null)r=c<0.5?a:b +else r=s +return r}, +cOa(a,b,c){var s,r,q,p,o,n,m=a instanceof A.tg?a.a:A.a([a],t.Fi),l=b instanceof A.tg?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.atT(r,s)}, +Pc:function Pc(a,b){this.a=a +this.b=b}, +atT:function atT(a,b){this.a=a +this.b=b}, +d2k(a,b,c){var s,r,q,p,o +if(a===b)return a +s=A.ai(a.a,b.a,c) +s.toString +r=A.og(a.b,b.b,c) +r.toString +q=A.av(a.c,b.c,c) +q.toString +p=A.av(a.d,b.d,c) +p.toString +o=a.e +return new A.f5(p,o===B.bY?b.e:o,s,r,q)}, +cvu(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.sq) +if(b==null)b=A.a([],t.sq) +s=Math.min(a.length,b.length) +r=A.a([],t.sq) +for(q=0;q>>16&255)/255,r=(a.gj(a)>>>8&255)/255,q=(a.gj(a)&255)/255,p=Math.max(s,Math.max(r,q)),o=p-Math.min(s,Math.min(r,q)),n=a.gj(a),m=A.cQv(s,r,q,p,o),l=p===0?0:o/p +return new A.w4((n>>>24&255)/255,m,l,p)}, +av4(a){var s=(a.gj(a)>>>16&255)/255,r=(a.gj(a)>>>8&255)/255,q=(a.gj(a)&255)/255,p=Math.max(s,Math.max(r,q)),o=Math.min(s,Math.min(r,q)),n=p-o,m=a.gj(a),l=A.cQv(s,r,q,p,n),k=(p+o)/2,j=k===1?0:A.Z(n/(1-Math.abs(2*k-1)),0,1) +return new A.w3((m>>>24&255)/255,l,j,k)}, +w4:function w4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +w3:function w3(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +kI:function kI(a,b,c){this.b=a +this.a=b +this.$ti=c}, +bbQ(a,b,c){var s,r=null +if(a==b)return a +if(a==null){s=b.j3(r,c) +return s==null?b:s}if(b==null){s=a.j4(r,c) +return s==null?a:s}if(c===0)return a +if(c===1)return b +s=b.j3(a,c) +if(s==null)s=a.j4(b,c) +if(s==null)if(c<0.5){s=a.j4(r,c*2) +if(s==null)s=a}else{s=b.j3(r,(c-0.5)*2) +if(s==null)s=b}return s}, +lu:function lu(){}, +vv:function vv(){}, +aNi:function aNi(){}, +d4e(a,b,c,d,e){return new A.Qn(c,d,b,a,e)}, +cwa(a,b,c){if(a==b||c===0)return a +if(c===1)return b +return new A.acY(a,b,c)}, +cTm(a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +if(b4.gad(0))return +s=b4.a +r=b4.c-s +q=b4.b +p=b4.d-q +o=new A.V(r,p) +n=b0.geP(b0) +m=b0.gdK(b0) +if(a8==null)a8=B.mx +l=A.cRE(a8,new A.V(n,m).iI(0,b6),o) +k=l.a.X(0,b6) +j=l.b +if(b5!==B.ce&&j.l(0,o))b5=B.ce +i=$.ar().aP() +i.srK(!1) +if(a5!=null)i.snH(a5) +i.sa6(0,A.b9L(0,0,0,A.Z(b3,0,1))) +i.sot(a7) +i.swp(b1) +i.sp6(a2) +h=j.a +g=(r-h)/2 +f=j.b +e=(p-f)/2 +p=a1.a +p=s+(g+(a9?-p:p)*g) +q+=e+a1.b*e +d=new A.W(p,q,p+h,q+f) +c=b5!==B.ce||a9 +if(c)a3.d6(0) +q=b5===B.ce +if(!q)a3.qd(b4) +if(a9){b=-(s+r/2) +a3.ba(0,-b,0) +a3.jt(0,-1,1) +a3.ba(0,b,0)}a=a1.Nm(k,new A.W(0,0,n,m)) +if(q)a3.pj(b0,a,d,i) +else for(s=A.dlW(b4,d,b5),r=s.length,a0=0;a0k?l:k)){o=t.N +j=A.dV(o) +n=t.c4 +i=A.hg(d,d,d,o,n) +for(h=p;h")),o=o.c;n.t();){m=n.d +if(m==null)m=o.a(m) +e=A.cIr(i.i(0,m),g.i(0,m),c) +if(e!=null)s.push(e)}}return s}, +a4:function a4(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 +_.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}, +bLt:function bLt(a){this.a=a}, +aYh:function aYh(){}, +cQU(a,b,c,d,e){var s,r +for(s=c,r=0;r0){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.c8V(r,q,b-p,p)}o=Math.sqrt(k-m)/(2*l) +s=-(n/2*l) +return new A.cmf(o,s,b,(c-s*b)/o)}, +aFe:function aFe(a,b,c){this.a=a +this.b=b +this.c=c}, +aa_:function aa_(a,b){this.a=a +this.b=b}, +Mo:function Mo(a,b,c){this.b=a +this.c=b +this.a=c}, +F8:function F8(a,b,c){this.b=a +this.c=b +this.a=c}, +bVO:function bVO(a,b,c){this.a=a +this.b=b +this.c=c}, +c8V:function c8V(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cmf:function cmf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +W6:function W6(a,b){this.a=a +this.c=b}, +dcj(a,b,c,d,e,f,g,h){var s=null,r=new A.a7U(new A.aEG(s,s),B.X2,b,h,A.aw(t.O5),a,g,s,A.aw(t.T)) +r.aQ() +r.sbq(s) +r.aV5(a,s,b,c,d,e,f,g,h) +return r}, +U9:function U9(a,b){this.a=a +this.b=b}, +a7U:function a7U(a,b,c,d,e,f,g,h,i){var _=this +_.eQ=_.eF=$ +_.eR=a +_.eG=$ +_.eS=null +_.h9=b +_.jA=c +_.n2=d +_.ul=null +_.n3=e +_.G=null +_.ac=f +_.aS=g +_.k1$=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}, +bAc:function bAc(a){this.a=a}, +dhH(a){}, +Ul:function Ul(){}, +bBO:function bBO(a){this.a=a}, +bBQ:function bBQ(a){this.a=a}, +bBP:function bBP(a){this.a=a}, +bBN:function bBN(a){this.a=a}, +bBM:function bBM(a){this.a=a}, +acX:function acX(a,b){var _=this +_.a=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +aNl:function aNl(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=null +_.f=!1 +_.r=d +_.y=_.x=_.w=!1 +_.z=e +_.Q=f +_.as=!1 +_.at=null +_.ax=0 +_.ay=!1 +_.ch=g +_.CW=h +_.cx=null}, +aVC:function aVC(a,b,c,d,e){var _=this +_.D=!1 +_.fx=a +_.fy=b +_.go=c +_.k1=null +_.k1$=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}, +y6(a){var s=a.a,r=a.b +return new A.aG(s,s,r,r)}, +fH(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.aG(p,q,r,s?1/0:a)}, +mT(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.aG(p,q,r,s?a:1/0)}, +nT(a){return new A.aG(0,a.a,0,a.b)}, +C6(a,b,c){var s,r,q,p +if(a==b)return a +if(a==null)return b.X(0,c) +if(b==null)return a.X(0,1-c) +s=a.a +if(isFinite(s)){s=A.av(s,b.a,c) +s.toString}else s=1/0 +r=a.b +if(isFinite(r)){r=A.av(r,b.b,c) +r.toString}else r=1/0 +q=a.c +if(isFinite(q)){q=A.av(q,b.c,c) +q.toString}else q=1/0 +p=a.d +if(isFinite(p)){p=A.av(p,b.d,c) +p.toString}else p=1/0 +return new A.aG(s,r,q,p)}, +b6I(a){return new A.ty(a.a,a.b,a.c)}, +aG:function aG(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6H:function b6H(){}, +ty:function ty(a,b,c){this.a=a +this.b=b +this.c=c}, +y7:function y7(a,b){this.c=a +this.a=b +this.b=null}, +hf:function hf(a){this.a=a}, +fa:function fa(){}, +XE:function XE(a,b){this.a=a +this.b=b}, +afw:function afw(a,b){this.a=a +this.b=b}, +J:function J(){}, +bAr:function bAr(a,b){this.a=a +this.b=b}, +bAt:function bAt(a,b){this.a=a +this.b=b}, +bAs:function bAs(a,b){this.a=a +this.b=b}, +bD:function bD(){}, +bAq:function bAq(a,b,c){this.a=a +this.b=b +this.c=c}, +adB:function adB(){}, +i_:function i_(a,b,c){var _=this +_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +btD:function btD(){}, +a7Y:function a7Y(a,b,c,d,e){var _=this +_.D=a +_.cT$=b +_.Y$=c +_.d7$=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}, +aho:function aho(){}, +aUO:function aUO(){}, +cLA(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.vB +s=J.ao(a) +r=s.gA(a)-1 +q=A.aK(0,e,!1,t.Ej) +p=0<=r +while(!0){if(!!1)break +s.i(a,0) +o=b[0] +o.gNz(o) +break}while(!0){if(!!1)break +s.i(a,r) +n=b[-1] +n.gNz(n) +break}m=A.aF("oldKeyedChildren") +if(p){m.se9(A.N(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.C(A.h6(l)) +J.id(h,i,j)}++k}p=!0}else k=0 +for(l=m.a,g=0;!1;){o=d.a[g] +if(p){f=o.gNz(o) +i=m.b +if(i===m)A.C(A.h6(l)) +j=J.aS(i,f) +if(j!=null){o.gNz(o) +j=e}}else j=e +q[g]=A.cLz(j,o);++g}s.gA(a) +while(!0){if(!!1)break +q[g]=A.cLz(s.i(a,k),d.a[g]);++g;++k}return new A.ek(q,A.X(q).h("ek<1,fZ>"))}, +cLz(a,b){var s,r=a==null?A.M4(b.gNz(b),null):a,q=b.gaDN(),p=A.uo() +q.gaMQ() +p.k2=q.gaMQ() +p.e=!0 +q.gbq3(q) +s=q.gbq3(q) +p.dn(B.q0,!0) +p.dn(B.Xz,s) +q.gbBc() +s=q.gbBc() +p.dn(B.q0,!0) +p.dn(B.XB,s) +q.gAl(q) +p.dn(B.XD,q.gAl(q)) +q.gbpB(q) +p.dn(B.XH,q.gbpB(q)) +q.gGl(q) +s=q.gGl(q) +p.dn(B.bl7,!0) +p.dn(B.bl4,s) +q.gCB() +p.dn(B.lQ,q.gCB()) +q.gbGJ() +p.dn(B.Xv,q.gbGJ()) +q.gaMu() +p.dn(B.q3,q.gaMu()) +q.gbzI() +p.dn(B.bl5,q.gbzI()) +q.gad7(q) +p.dn(B.Xs,q.gad7(q)) +q.gN2() +p.dn(B.Xx,q.gN2()) +q.gbwy(q) +p.dn(B.xd,q.gbwy(q)) +q.gw9(q) +s=q.gw9(q) +p.dn(B.q1,!0) +p.dn(B.q_,s) +q.gbyt() +p.dn(B.Xy,q.gbyt()) +q.gO1() +p.dn(B.Xr,q.gO1()) +q.gbBi(q) +p.dn(B.XF,q.gbBi(q)) +q.gXm(q) +p.dn(B.q2,q.gXm(q)) +q.gby2() +p.dn(B.XE,q.gby2()) +q.gaJK() +p.dn(B.Xw,q.gaJK()) +q.gbBs() +p.dn(B.XC,q.gbBs()) +q.gbA1() +p.dn(B.XA,q.gbA1()) +q.gY4() +p.sY4(q.gY4()) +q.gVX() +p.sVX(q.gVX()) +q.gbH6() +s=q.gbH6() +p.dn(B.XG,!0) +p.dn(B.Xt,s) +q.giR(q) +p.dn(B.Xu,q.giR(q)) +q.gNA(q) +p.rx=new A.et(q.gNA(q),B.aS) +p.e=!0 +q.gj(q) +p.ry=new A.et(q.gj(q),B.aS) +p.e=!0 +q.gbyC() +p.to=new A.et(q.gbyC(),B.aS) +p.e=!0 +q.gbto() +p.x1=new A.et(q.gbto(),B.aS) +p.e=!0 +q.gbyc(q) +p.x2=new A.et(q.gbyc(q),B.aS) +p.e=!0 +q.gd5() +p.bO=q.gd5() +p.e=!0 +q.gzH() +p.szH(q.gzH()) +q.gwC() +p.swC(q.gwC()) +q.gYC() +p.sYC(q.gYC()) +q.gYD() +p.sYD(q.gYD()) +q.gYE() +p.sYE(q.gYE()) +q.gYB() +p.sYB(q.gYB()) +q.gCM() +p.sCM(q.gCM()) +q.gCK() +p.sCK(q.gCK()) +q.gYj(q) +p.sYj(0,q.gYj(q)) +q.gYk(q) +p.sYk(0,q.gYk(q)) +q.gYz(q) +p.sYz(0,q.gYz(q)) +q.gYx() +p.sYx(q.gYx()) +q.gYv() +p.sYv(q.gYv()) +q.gYy() +p.sYy(q.gYy()) +q.gYw() +p.sYw(q.gYw()) +q.gYF() +p.sYF(q.gYF()) +q.gYG() +p.sYG(q.gYG()) +q.gYm() +p.sYm(q.gYm()) +q.gYn() +p.sYn(q.gYn()) +q.gYo() +p.sYo(q.gYo()) +r.v3(0,B.vB,p) +r.sdR(0,b.gdR(b)) +r.seJ(0,b.geJ(b)) +r.dy=b.gbKf() +return r}, +arY:function arY(){}, +a7Z:function a7Z(a,b,c,d,e,f,g){var _=this +_.G=a +_.ac=b +_.aS=c +_.cZ=d +_.en=e +_.hT=_.jY=_.i9=_.eY=null +_.k1$=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}, +Qm:function Qm(){}, +cLB(a,b){return new A.j(A.Z(a.a,b.a,b.c),A.Z(a.b,b.b,b.d))}, +cOQ(a){var s=new A.aUP(a,A.aw(t.T)) +s.aQ() +return s}, +cP6(){return new A.ajs($.ar().aP(),B.cY,B.cA,$.ae())}, +uK:function uK(a,b){this.a=a +this.b=b}, +bOd:function bOd(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=!0 +_.r=f}, +Lw:function Lw(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){var _=this +_.ag=_.a4=_.N=_.D=null +_.aq=$ +_.aJ=a +_.U=b +_.ck=_.aU=_.aT=_.aW=null +_.eA=c +_.eq=d +_.f1=e +_.ez=f +_.dA=g +_.e8=h +_.hS=i +_.bk=j +_.dP=_.er=null +_.eX=k +_.dr=l +_.dQ=m +_.fA=n +_.iQ=o +_.eT=p +_.fG=q +_.mf=r +_.dF=s +_.hi=a0 +_.G=a1 +_.ac=a2 +_.aS=a3 +_.cZ=a4 +_.en=a5 +_.i9=!1 +_.jY=$ +_.hT=a6 +_.jm=0 +_.ha=a7 +_.os=_.jn=_.hw=null +_.z_=_.mg=$ +_.Gn=_.lG=_.kv=null +_.rv=$ +_.Go=null +_.uk=a8 +_.aaf=null +_.aag=!0 +_.Wv=_.Wu=_.Wt=_.aah=!1 +_.azj=null +_.Gp=a9 +_.azk=b0 +_.cT$=b1 +_.Y$=b2 +_.d7$=b3 +_.wd$=b4 +_.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=b5 +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bAz:function bAz(a){this.a=a}, +bAy:function bAy(){}, +bAv:function bAv(a,b){this.a=a +this.b=b}, +bAA:function bAA(){}, +bAx:function bAx(){}, +bAw:function bAw(){}, +bAu:function bAu(){}, +aUP:function aUP(a,b){var _=this +_.D=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}, +EW:function EW(){}, +ajs:function ajs(a,b,c,d){var _=this +_.r=a +_.x=_.w=null +_.y=b +_.z=c +_.k2$=0 +_.k3$=d +_.ok$=_.k4$=0 +_.p1$=!1}, +adi:function adi(a,b,c){var _=this +_.r=!0 +_.w=!1 +_.x=a +_.y=$ +_.Q=_.z=null +_.as=b +_.ax=_.at=null +_.k2$=0 +_.k3$=c +_.ok$=_.k4$=0 +_.p1$=!1}, +X3:function X3(a,b){var _=this +_.r=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +ahr:function ahr(){}, +ahs:function ahs(){}, +aUQ:function aUQ(){}, +a80:function a80(a,b){var _=this +_.D=a +_.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=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +cRq(a,b,c){switch(a.a){case 0:switch(b){case B.j:return!0 +case B.ae:return!1 +case null:case void 0:return null}break +case 1:switch(c){case B.x:return!0 +case B.mc:return!1 +case null:case void 0:return null}break}}, +dck(a,b,c,d,e,f,g,h){var s=null,r=new A.Lx(c,d,e,b,g,h,f,a,A.aw(t.O5),A.aK(4,A.jT(s,s,s,s,s,B.ah,B.j,s,1,B.Y,B.a0),!1,t.mi),!0,0,s,s,A.aw(t.T)) +r.aQ() +r.L(0,s) +return r}, +aua:function aua(a,b){this.a=a +this.b=b}, +fr:function fr(a,b,c){var _=this +_.f=_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +axh:function axh(a,b){this.a=a +this.b=b}, +E6:function E6(a,b){this.a=a +this.b=b}, +I0:function I0(a,b){this.a=a +this.b=b}, +Lx:function Lx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.aW=0 +_.aT=h +_.aU=i +_.wc$=j +_.MQ$=k +_.cT$=l +_.Y$=m +_.d7$=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}, +bAJ:function bAJ(){}, +bAF:function bAF(){}, +bAH:function bAH(){}, +bAD:function bAD(){}, +c3m:function c3m(a,b,c){this.a=a +this.b=b +this.c=c}, +aUS:function aUS(){}, +aUU:function aUU(){}, +ahu:function ahu(){}, +a85:function a85(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.N=_.D=null +_.a4=a +_.ag=b +_.aq=c +_.aJ=d +_.U=e +_.aW=null +_.aT=f +_.aU=g +_.ck=h +_.eA=i +_.eq=j +_.f1=k +_.ez=l +_.dA=m +_.e8=n +_.hS=o +_.bk=p +_.er=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}, +aw(a){return new A.awI(a.h("awI<0>"))}, +db0(a){return new A.aBl(a,A.N(t.S,t.O),A.aw(t.kd))}, +daG(a){return new A.u8(a,A.N(t.S,t.O),A.aw(t.kd))}, +cNb(a){return new A.x1(a,B.h,A.N(t.S,t.O),A.aw(t.kd))}, +cyi(){return new A.T5(B.h,A.N(t.S,t.O),A.aw(t.kd))}, +cF1(a){return new A.a_w(a,B.cX,A.N(t.S,t.O),A.aw(t.kd))}, +awL(a,b){return new A.a4S(a,b,A.N(t.S,t.O),A.aw(t.kd))}, +cIq(a){var s,r,q=new A.c5(new Float64Array(16)) +q.fO() +for(s=a.length-1;s>0;--s){r=a[s] +if(r!=null)r.Ft(a[s-1],q)}return q}, +biU(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.biU(a.r,b,c,d)}c.push(a.r) +d.push(b.r) +return A.biU(a.r,b.r,c,d)}, +a_b:function a_b(a,b,c){this.a=a +this.b=b +this.$ti=c}, +an7:function an7(a,b){this.a=a +this.$ti=b}, +iP:function iP(){}, +boE:function boE(a,b){this.a=a +this.b=b}, +boF:function boF(a,b){this.a=a +this.b=b}, +awI:function awI(a){this.a=null +this.$ti=a}, +aBl:function aBl(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}, +aGm:function aGm(a,b,c,d,e,f){var _=this +_.ax=a +_.ay=b +_.ch=c +_.CW=d +_.a=e +_.b=0 +_.d=_.c=!1 +_.e=f +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +aBA:function aBA(a,b,c,d){var _=this +_.ax=a +_.ay=b +_.a=c +_.b=0 +_.d=_.c=!1 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +kJ:function kJ(){}, +u8:function u8(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}, +HO:function HO(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}, +a0J:function a0J(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}, +PG:function PG(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}, +PK:function PK(a,b){var _=this +_.ay=_.ax=_.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}, +a49:function a49(a,b,c,d){var _=this +_.c_=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}, +x1:function x1(a,b,c,d){var _=this +_.c_=a +_.be=_.bO=null +_.bj=!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}, +T5:function T5(a,b,c){var _=this +_.c_=null +_.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}, +a_w:function a_w(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}, +wf:function wf(){var _=this +_.b=_.a=null +_.c=!1 +_.d=null}, +a4S:function a4S(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}, +a3t:function a3t(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}, +OQ:function OQ(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}, +aQF:function aQF(){}, +wi:function wi(a,b,c){this.dJ$=a +this.a7$=b +this.a=c}, +a88:function a88(a,b,c,d,e){var _=this +_.D=a +_.cT$=b +_.Y$=c +_.d7$=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}, +bAV:function bAV(a){this.a=a}, +bAW:function bAW(a){this.a=a}, +bAR:function bAR(a){this.a=a}, +bAS:function bAS(a){this.a=a}, +bAT:function bAT(a){this.a=a}, +bAU:function bAU(a){this.a=a}, +bAP:function bAP(a){this.a=a}, +bAQ:function bAQ(a){this.a=a}, +aUX:function aUX(){}, +aUY:function aUY(){}, +zf:function zf(a,b,c){var _=this +_.f=_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +Ue:function Ue(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.aW=h +_.aT=i +_.aU=j +_.ck=k +_.eA=l +_.eq=m +_.f1=n +_.cT$=o +_.Y$=p +_.d7$=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}, +bB4:function bB4(a){this.a=a}, +bB3:function bB3(a){this.a=a}, +bAX:function bAX(a,b,c){this.a=a +this.b=b +this.c=c}, +bAY:function bAY(a,b){this.a=a +this.b=b}, +bB2:function bB2(a){this.a=a}, +bB0:function bB0(a,b,c){this.a=a +this.b=b +this.c=c}, +bB_:function bB_(a,b){this.a=a +this.b=b}, +bB1:function bB1(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bAZ:function bAZ(a,b){this.a=a +this.b=b}, +bB5:function bB5(a,b,c){this.a=a +this.b=b +this.c=c}, +ahD:function ahD(){}, +dae(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.gb8(s).l(0,b.gb8(b))}, +dad(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.gI6() +p=a4.gk7(a4) +o=a4.gcG() +n=a4.gel(a4) +m=a4.gqh(a4) +l=a4.gb8(a4) +k=a4.gw2() +j=a4.gjf(a4) +a4.gO1() +i=a4.gYW() +h=a4.gOp() +g=a4.gfT() +f=a4.ga9F() +e=a4.gu(a4) +d=a4.gad_() +c=a4.gad2() +b=a4.gad1() +a=a4.gad0() +a0=a4.gnU(a4) +a1=a4.gady() +s.aE(0,new A.btx(r,A.dbn(j,k,m,g,f,a4.gWd(),0,n,!1,a0,o,l,h,i,d,a,b,c,e,a4.gxx(),a1,p,q).e_(a4.geJ(a4)),s)) +q=A.z(r).h("bR<1>") +p=q.h("b1") +a2=A.R(new A.b1(new A.bR(r,q),new A.bty(s),p),!0,p.h("B.E")) +p=a4.gI6() +q=a4.gk7(a4) +a1=a4.gcG() +e=a4.gel(a4) +c=a4.gqh(a4) +b=a4.gb8(a4) +a=a4.gw2() +d=a4.gjf(a4) +a4.gO1() +i=a4.gYW() +h=a4.gOp() +l=a4.gfT() +o=a4.ga9F() +a0=a4.gu(a4) +n=a4.gad_() +f=a4.gad2() +g=a4.gad1() +m=a4.gad0() +k=a4.gnU(a4) +j=a4.gady() +a3=A.dbl(d,a,c,l,o,a4.gWd(),0,e,!1,k,a1,b,h,i,n,m,g,f,a0,a4.gxx(),j,q,p).e_(a4.geJ(a4)) +for(q=A.X(a2).h("bE<1>"),p=new A.bE(a2,q),p=new A.bj(p,p.gA(0),q.h("bj")),q=q.h("aa.E");p.t();){o=p.d +if(o==null)o=q.a(o) +if(o.gI3()){n=o.gO3(o) +if(n!=null)n.$1(a3.e_(r.i(0,o)))}}}, +aRX:function aRX(a,b){this.a=a +this.b=b}, +aRY:function aRY(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +azO:function azO(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.k2$=0 +_.k3$=d +_.ok$=_.k4$=0 +_.p1$=!1}, +btz:function btz(){}, +btC:function btC(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +btB:function btB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +btA:function btA(a){this.a=a}, +btx:function btx(a,b,c){this.a=a +this.b=b +this.c=c}, +bty:function bty(a){this.a=a}, +b_X:function b_X(){}, +cKC(a,b,c){var s,r,q=a.ch,p=t.dJ.a(q.a) +if(p==null){s=a.I2(null) +q.sb9(0,s) +q=s}else{p.adb() +a.I2(p) +q=p}a.db=!1 +r=new A.Ey(q,a.gpA()) +b=r +a.a50(b,B.h) +b.DO()}, +daM(a){var s=a.ch.a +s.toString +a.I2(t.gY.a(s)) +a.db=!1}, +cyr(a,b,c){var s=t.TT +return new A.zJ(a,c,b,A.a([],s),A.a([],s),A.a([],s),A.b9(t.I9),A.b9(t.sv))}, +dcp(a){a.ajF()}, +dcq(a){a.beE()}, +cOY(a,b){if(a==null)return null +if(a.gad(0)||b.aBz())return B.a8 +return A.cJX(b,a)}, +djd(a,b,c){var s,r,q,p,o,n,m,l +for(s=a,r=b,q=null;r!==s;){p=r.c +o=s.c +if(p>=o){n=r.gbR(r) +n.hh(r,c) +r=n}if(p<=o){m=s.gbR(s) +m.toString +if(q==null){q=new A.c5(new Float64Array(16)) +q.fO() +l=q}else l=q +m.hh(s,l) +s=m}}if(q!=null)if(q.l7(q)!==0)c.hc(0,q) +else c.j8()}, +cOX(a,b){var s +if(b==null)return a +s=a==null?null:a.jZ(b) +return s==null?b:s}, +dT:function dT(){}, +Ey:function Ey(a,b){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null}, +bwg:function bwg(a,b,c){this.a=a +this.b=b +this.c=c}, +bwf:function bwf(a,b,c){this.a=a +this.b=b +this.c=c}, +bwe:function bwe(a,b,c){this.a=a +this.b=b +this.c=c}, +baz:function baz(){}, +zJ:function zJ(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=null +_.f=!1 +_.r=d +_.y=_.x=_.w=!1 +_.z=e +_.Q=f +_.as=!1 +_.at=null +_.ax=0 +_.ay=!1 +_.ch=g +_.CW=h +_.cx=null}, +bxl:function bxl(){}, +bxk:function bxk(){}, +bxm:function bxm(){}, +bxn:function bxn(){}, +H:function H(){}, +bBh:function bBh(){}, +bBd:function bBd(a){this.a=a}, +bBg:function bBg(a,b,c){this.a=a +this.b=b +this.c=c}, +bBe:function bBe(a){this.a=a}, +bBf:function bBf(){}, +bBa:function bBa(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}, +bBb:function bBb(a,b,c){this.a=a +this.b=b +this.c=c}, +bBc:function bBc(a,b){this.a=a +this.b=b}, +aZ:function aZ(){}, +f6:function f6(){}, +ap:function ap(){}, +wC:function wC(){}, +bAb:function bAb(a){this.a=a}, +cev:function cev(){}, +aMf:function aMf(a,b,c){this.b=a +this.c=b +this.a=c}, +oS:function oS(){}, +aVH:function aVH(a,b,c){var _=this +_.e=a +_.b=b +_.c=null +_.a=c}, +afc:function afc(a,b,c){var _=this +_.e=a +_.b=b +_.c=null +_.a=c}, +Of:function Of(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}, +aWk:function aWk(){var _=this +_.b=_.a=null +_.d=_.c=$ +_.e=!1}, +aT6:function aT6(){}, +aV2:function aV2(){}, +dcl(a,b,c){var s,r,q,p,o=a.b +o.toString +s=t.ot.a(o).b +if(s==null)o=B.bhR +else{o=c.$2(a,new A.aG(0,b,0,1/0)) +r=s.b +q=s.c +$label0$0:{if(B.px===r||B.py===r||B.cj===r||B.i_===r||B.lE===r){p=null +break $label0$0}if(B.fd===r){q.toString +p=a.tc(q) +break $label0$0}throw A.d(A.iB(u.P))}q=new A.Tx(o,r,p,q) +o=q}return o}, +dcs(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var s=null,r=m.l(0,B.Y)?new A.li(l):m +r=new A.LB(A.jT(d===B.bf?"\u2026":s,b,c,h,a,i,j,k,1,r,n),g,d,f,!1,0,s,s,A.aw(t.T)) +r.aQ() +r.L(0,s) +r.swQ(e) +return r}, +cAf(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.by?1:-1}}, +zK:function zK(a,b){this.b=a +this.a=b}, +pB:function pB(a,b){var _=this +_.b=_.a=null +_.dJ$=a +_.a7$=b}, +aCT:function aCT(){}, +bAN:function bAN(a){this.a=a}, +LB:function LB(a,b,c,d,e,f,g,h,i){var _=this +_.D=a +_.aq=_.ag=_.a4=_.N=null +_.aJ=b +_.U=c +_.aW=d +_.aT=null +_.aU=!1 +_.f1=_.eq=_.eA=_.ck=null +_.wd$=e +_.cT$=f +_.Y$=g +_.d7$=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}, +bBm:function bBm(){}, +bBn:function bBn(){}, +bBl:function bBl(){}, +bBk:function bBk(){}, +bBi:function bBi(){}, +bBj:function bBj(a,b){this.a=a +this.b=b}, +Bg:function Bg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=null +_.f=!1 +_.w=_.r=null +_.x=$ +_.z=_.y=null +_.k2$=0 +_.k3$=d +_.ok$=_.k4$=0 +_.p1$=!1}, +cel:function cel(){}, +cem:function cem(){}, +ahI:function ahI(){}, +aV3:function aV3(){}, +aV4:function aV4(){}, +aju:function aju(){}, +b0G:function b0G(){}, +b0H:function b0H(){}, +b0I:function b0I(){}, +dlF(a,b,c){if(a===b)return!0 +if(b==null)return!1 +return A.BH(A.cQl(a,c),A.cQl(b,c))}, +cQl(a,b){var s=A.z(a).h("jJ") +return A.hh(new A.jJ(a,new A.cp6(b),s),s.h("B.E"))}, +diU(a,b){var s=t.S,r=A.dV(s) +s=new A.agJ(A.N(s,t.d_),A.b9(s),b,A.N(s,t.SP),r,null,null,A.GO(),A.N(s,t.F)) +s.aVp(a,b) +return s}, +aBz:function aBz(a,b){this.a=a +this.b=b}, +cp6:function cp6(a){this.a=a}, +agJ:function agJ(a,b,c,d,e,f,g,h,i){var _=this +_.at=$ +_.ax=a +_.ay=b +_.ch=c +_.CW=$ +_.f=d +_.r=e +_.w=null +_.a=f +_.b=null +_.c=g +_.d=h +_.e=i}, +c9D:function c9D(a){this.a=a}, +aBE:function aBE(a,b,c,d,e){var _=this +_.D=a +_.MT$=b +_.azv$=c +_.Gt$=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}, +c9C:function c9C(){}, +aTa:function aTa(){}, +cLy(a){var s=new A.Lv(a,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +dcm(a,b){var s=new A.Ud(b,a,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +bAO(a,b){if(b==null)return a +return B.e.dO(a/b)*b}, +dcr(a,b){var s=new A.LA(B.e.aF(A.Z(b,0,1)*255),b,a,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +dcn(a,b,c,d,e,f){var s=b==null?B.be:b +s=new A.a89(!0,c,e,d,a,s,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +cLD(){var s=new A.aD3(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +aD2:function aD2(){}, +l4:function l4(){}, +a3U:function a3U(a,b){this.a=a +this.b=b}, +a8f:function a8f(){}, +Lv:function Lv(a,b,c){var _=this +_.G=a +_.k1$=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}, +aCV:function aCV(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +a7W:function a7W(a,b,c){var _=this +_.G=a +_.k1$=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}, +Ud:function Ud(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +a87:function a87(a,b){var _=this +_.k1$=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}, +LA:function LA(a,b,c,d,e){var _=this +_.G=a +_.ac=b +_.aS=c +_.k1$=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}, +a7T:function a7T(){}, +a7S:function a7S(a,b,c,d,e,f){var _=this +_.Gr$=a +_.aai$=b +_.z1$=c +_.aaj$=d +_.k1$=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}, +aCG:function aCG(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +yq:function yq(){}, +Ad:function Ad(a,b,c){this.b=a +this.c=b +this.a=c}, +Yi:function Yi(){}, +aCL:function aCL(a,b,c,d){var _=this +_.G=a +_.ac=null +_.aS=b +_.en=_.cZ=null +_.k1$=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}, +aCK:function aCK(a,b,c,d,e,f){var _=this +_.eR=a +_.eG=b +_.G=c +_.ac=null +_.aS=d +_.en=_.cZ=null +_.k1$=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}, +aCJ:function aCJ(a,b,c,d){var _=this +_.G=a +_.ac=null +_.aS=b +_.en=_.cZ=null +_.k1$=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}, +ahJ:function ahJ(){}, +aCY:function aCY(a,b,c,d,e,f,g,h,i){var _=this +_.aak=a +_.aal=b +_.eR=c +_.eG=d +_.eS=e +_.G=f +_.ac=null +_.aS=g +_.en=_.cZ=null +_.k1$=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}, +bBo:function bBo(a,b){this.a=a +this.b=b}, +aCZ:function aCZ(a,b,c,d,e,f,g){var _=this +_.eR=a +_.eG=b +_.eS=c +_.G=d +_.ac=null +_.aS=e +_.en=_.cZ=null +_.k1$=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}, +bBp:function bBp(a,b){this.a=a +this.b=b}, +asi:function asi(a,b){this.a=a +this.b=b}, +aCM:function aCM(a,b,c,d,e){var _=this +_.G=null +_.ac=a +_.aS=b +_.cZ=c +_.k1$=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}, +aDj:function aDj(a,b,c){var _=this +_.aS=_.ac=_.G=null +_.cZ=a +_.eY=_.en=null +_.k1$=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}, +bBH:function bBH(a){this.a=a}, +a81:function a81(a,b,c,d,e,f){var _=this +_.G=null +_.ac=a +_.aS=b +_.cZ=c +_.eY=_.en=null +_.i9=d +_.k1$=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}, +bAB:function bAB(a){this.a=a}, +aCQ:function aCQ(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +bAL:function bAL(a){this.a=a}, +aD1:function aD1(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.eK=a +_.iB=b +_.eF=c +_.eQ=d +_.eR=e +_.eG=f +_.eS=g +_.h9=h +_.jA=i +_.G=j +_.k1$=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}, +a89:function a89(a,b,c,d,e,f,g,h){var _=this +_.eK=a +_.iB=b +_.eF=c +_.eQ=d +_.eR=e +_.eG=!0 +_.G=f +_.k1$=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}, +aD3:function aD3(a,b){var _=this +_.ac=_.G=0 +_.k1$=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}, +a84:function a84(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +a8b:function a8b(a,b,c){var _=this +_.G=a +_.k1$=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}, +a7R:function a7R(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +Uf:function Uf(a,b,c,d){var _=this +_.eK=a +_.G=b +_.k1$=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}, +A0:function A0(a,b,c){var _=this +_.eR=_.eQ=_.eF=_.iB=_.eK=null +_.G=a +_.k1$=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}, +a8h:function a8h(a,b,c,d,e,f,g,h){var _=this +_.G=a +_.ac=b +_.aS=c +_.cZ=d +_.en=e +_.jm=_.hT=_.jY=_.i9=_.eY=null +_.ha=f +_.k1$=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}, +aCI:function aCI(a,b,c){var _=this +_.G=a +_.k1$=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}, +aCW:function aCW(a,b){var _=this +_.k1$=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}, +aCO:function aCO(a,b,c){var _=this +_.G=a +_.k1$=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}, +aCS:function aCS(a,b,c){var _=this +_.G=a +_.k1$=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}, +aCU:function aCU(a,b,c){var _=this +_.G=a +_.ac=null +_.k1$=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}, +aCP:function aCP(a,b,c,d,e,f,g){var _=this +_.G=a +_.ac=b +_.aS=c +_.cZ=d +_.en=e +_.k1$=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}, +bAK:function bAK(a){this.a=a}, +a7V:function a7V(a,b,c,d,e,f){var _=this +_.G=a +_.ac=b +_.aS=c +_.k1$=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 +_.$ti=f}, +aUI:function aUI(){}, +ahK:function ahK(){}, +ahL:function ahL(){}, +a8g:function a8g(){}, +aV7:function aV7(){}, +bER(a,b){var s +if(a.p(0,b))return B.cK +s=b.b +if(sa.d)return B.cJ +return b.a>=a.c?B.cJ:B.dg}, +cM1(a,b,c){var s,r +if(a.p(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.j(a.a,r):new A.j(a.c,r) +else{s=a.d +return c===B.j?new A.j(a.c,s):new A.j(a.a,s)}}, +a9d(a,b){return new A.a9b(a,b==null?B.xV:b,B.bkM)}, +a9c(a,b){return new A.a9b(a,b==null?B.xV:b,B.jI)}, +Fc:function Fc(a,b){this.a=a +this.b=b}, +a99:function a99(a){this.a=a}, +l9:function l9(){}, +aEg:function aEg(){}, +Ac:function Ac(a,b){this.a=a +this.b=b}, +VO:function VO(a,b){this.a=a +this.b=b}, +bEL:function bEL(){}, +aEa:function aEa(a){this.a=a}, +a0H:function a0H(a){this.a=a}, +a97:function a97(a,b){this.b=a +this.a=b}, +a9b:function a9b(a,b,c){this.b=a +this.c=b +this.a=c}, +auZ:function auZ(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +UP:function UP(a,b){this.a=a +this.b=b}, +a1P:function a1P(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +a9e:function a9e(a,b){this.a=a +this.b=b}, +ox:function ox(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +M0:function M0(a,b,c){this.a=a +this.b=b +this.c=c}, +ab4:function ab4(a,b){this.a=a +this.b=b}, +aWg:function aWg(){}, +cLC(a,b,c,d,e){var s=new A.a8e(e,c,a,d,null,A.aw(t.T)) +s.aQ() +s.sbq(b) +return s}, +EX:function EX(){}, +bBq:function bBq(a,b,c){this.a=a +this.b=b +this.c=c}, +a8c:function a8c(a,b,c,d){var _=this +_.G=null +_.ac=a +_.aS=b +_.k1$=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}, +aCF:function aCF(){}, +a8e:function a8e(a,b,c,d,e,f){var _=this +_.eF=a +_.eQ=b +_.G=null +_.ac=c +_.aS=d +_.k1$=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}, +a7X:function a7X(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.eF=a +_.eQ=b +_.eR=c +_.eG=d +_.eS=!1 +_.h9=null +_.jA=e +_.wc$=f +_.MQ$=g +_.G=null +_.ac=h +_.aS=i +_.k1$=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}, +a83:function a83(a,b,c,d,e,f){var _=this +_.eF=a +_.eQ=b +_.G=null +_.ac=c +_.aS=d +_.k1$=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}, +bG1:function bG1(){}, +a8_:function a8_(a,b,c){var _=this +_.G=a +_.k1$=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}, +ahj:function ahj(){}, +ahO:function ahO(){}, +mN(a,b){switch(b.a){case 0:return a +case 1:return A.ds8(a)}}, +cRF(a,b){switch(b.a){case 0:return a +case 1:return A.ds9(a)}}, +i5(a,b,c,d,e,f,g,h,i,j,k,l){var s=e==null?h:e,r=d==null?h:d,q=a==null?e:a +if(q==null)q=h +return new A.aEQ(j,i,h,s,f,g,r,l==null?h>0:l,c,k,q,b)}, +aES:function aES(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +av3:function av3(a,b){this.a=a +this.b=b}, +Aj:function Aj(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}, +aEQ:function aEQ(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}, +V9:function V9(a,b,c){this.a=a +this.b=b +this.c=c}, +aER:function aER(a,b,c){var _=this +_.c=a +_.d=b +_.a=c +_.b=null}, +Al:function Al(){}, +Ak:function Ak(a,b){this.dJ$=a +this.a7$=b +this.a=null}, +qJ:function qJ(a){this.a=a}, +qI:function qI(a,b,c){this.dJ$=a +this.a7$=b +this.a=c}, +da:function da(){}, +Ug:function Ug(){}, +bBt:function bBt(a,b){this.a=a +this.b=b}, +aDh:function aDh(){}, +aDi:function aDi(a,b){var _=this +_.k1$=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}, +aVj:function aVj(){}, +aVk:function aVk(){}, +aWU:function aWU(){}, +aWV:function aWV(){}, +aWZ:function aWZ(){}, +aD6:function aD6(a,b,c,d,e,f,g){var _=this +_.Gp=a +_.fG=$ +_.be=b +_.bj=c +_.bU=$ +_.e7=!0 +_.cT$=d +_.Y$=e +_.d7$=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}, +aD5:function aD5(a,b){var _=this +_.k1$=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}, +aD7:function aD7(){}, +bGA:function bGA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bGB:function bGB(){}, +a9R:function a9R(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bGy:function bGy(){}, +bGz:function bGz(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +V8:function V8(a,b,c){var _=this +_.b=_.w=null +_.c=!1 +_.Gq$=a +_.dJ$=b +_.a7$=c +_.a=null}, +aD9:function aD9(a,b,c,d,e,f,g){var _=this +_.fG=a +_.be=b +_.bj=c +_.bU=$ +_.e7=!0 +_.cT$=d +_.Y$=e +_.d7$=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}, +aDa:function aDa(a,b,c,d,e,f){var _=this +_.be=a +_.bj=b +_.bU=$ +_.e7=!0 +_.cT$=c +_.Y$=d +_.d7$=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}, +bBu:function bBu(a,b,c){this.a=a +this.b=b +this.c=c}, +u2:function u2(){}, +bBz:function bBz(){}, +lL:function lL(a,b,c){var _=this +_.b=null +_.c=!1 +_.Gq$=a +_.dJ$=b +_.a7$=c +_.a=null}, +A2:function A2(){}, +bBv:function bBv(a,b,c){this.a=a +this.b=b +this.c=c}, +bBx:function bBx(a,b){this.a=a +this.b=b}, +bBw:function bBw(){}, +ahQ:function ahQ(){}, +aVe:function aVe(){}, +aVf:function aVf(){}, +aWW:function aWW(){}, +aWX:function aWX(){}, +a8k:function a8k(){}, +aDd:function aDd(a,b,c,d){var _=this +_.eX=null +_.dr=a +_.dQ=b +_.k1$=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}, +aVa:function aVa(){}, +On(a,b,c,d,e){return a==null?null:a.jZ(new A.W(c,e,d,b))}, +bvo:function bvo(a,b){this.a=a +this.b=b}, +bx5:function bx5(a){this.a=a}, +aDe:function aDe(){}, +bBy:function bBy(a,b,c){this.a=a +this.b=b +this.c=c}, +aDg:function aDg(){}, +a8l:function a8l(){}, +A1:function A1(){}, +bBs:function bBs(a){this.a=a}, +aD8:function aD8(){}, +ahS:function ahS(){}, +aVg:function aVg(){}, +cLw(a,b){return new A.pq(a.a-b.a,a.b-b.b,b.c-a.c,b.d-a.d)}, +dch(a,b,c){var s,r,q,p,o +if(a==b)return a +if(a==null)return new A.pq(b.a*c,b.b*c,b.c*c,b.d*c) +if(b==null){s=1-c +return new A.pq(b.a.X(0,s),b.b.X(0,s),b.c.X(0,s),b.d.X(0,s))}r=A.av(a.a,b.a,c) +r.toString +q=A.av(a.b,b.b,c) +q.toString +p=A.av(a.c,b.c,c) +p.toString +o=A.av(a.d,b.d,c) +o.toString +return new A.pq(r,q,p,o)}, +dct(a,b,c,d,e){var s=new A.Uh(a,e,d,c,A.aw(t.O5),0,null,null,A.aw(t.T)) +s.aQ() +s.L(0,b) +return s}, +LC(a,b){var s,r,q,p +for(s=t.aA,r=a,q=0;r!=null;){p=r.b +p.toString +s.a(p) +if(!p.gNw())q=Math.max(q,A.fP(b.$1(r))) +r=p.a7$}return q}, +cLE(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.e9.OU(c.a-s-n)}else{n=b.x +r=n!=null?B.e9.OU(n):B.e9}n=b.e +if(n!=null&&b.r!=null){s=b.r +s.toString +n.toString +r=r.OT(c.b-s-n)}else{n=b.y +if(n!=null)r=r.OT(n)}a.d_(r,!0) +q=b.w +if(!(q!=null)){n=b.f +q=n!=null?c.a-n-a.gu(0).a:d.Fm(t.EP.a(c.W(0,a.gu(0)))).a}p=(q<0||q+a.gu(0).a>c.a)&&!0 +o=b.e +if(!(o!=null)){n=b.r +o=n!=null?c.b-n-a.gu(0).b:d.Fm(t.EP.a(c.W(0,a.gu(0)))).b}if(o<0||o+a.gu(0).b>c.b)p=!0 +b.a=new A.j(q,o) +return p}, +pq:function pq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +jv:function jv(a,b,c){var _=this +_.y=_.x=_.w=_.r=_.f=_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +aa1:function aa1(a,b){this.a=a +this.b=b}, +Uh:function Uh(a,b,c,d,e,f,g,h,i){var _=this +_.D=!1 +_.N=null +_.a4=a +_.ag=b +_.aq=c +_.aJ=d +_.U=e +_.cT$=f +_.Y$=g +_.d7$=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}, +bBD:function bBD(a){this.a=a}, +bBB:function bBB(a){this.a=a}, +bBC:function bBC(a){this.a=a}, +bBA:function bBA(a){this.a=a}, +a86:function a86(a,b,c,d,e,f,g,h,i,j){var _=this +_.jm=a +_.D=!1 +_.N=null +_.a4=b +_.ag=c +_.aq=d +_.aJ=e +_.U=f +_.cT$=g +_.Y$=h +_.d7$=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}, +bAM:function bAM(a,b,c){this.a=a +this.b=b +this.c=c}, +aVl:function aVl(){}, +aVm:function aVm(){}, +Fu:function Fu(a){this.a=a}, +VH:function VH(){}, +QZ:function QZ(a){this.a=a}, +bJU:function bJU(a,b){this.a=a +this.b=b}, +Ui:function Ui(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.aT=_.aW=null +_.aU=h +_.ck=i +_.eA=j +_.eq=null +_.f1=k +_.ez=null +_.dA=$ +_.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}, +bBF:function bBF(){}, +bBG:function bBG(a,b,c){this.a=a +this.b=b +this.c=c}, +aGl:function aGl(a,b,c,d){var _=this +_.D=a +_.N=b +_.a4=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}, +ON:function ON(a,b){this.a=a +this.b=b}, +BN:function BN(a,b){this.a=a +this.b=b}, +dcu(a,b,c){var s=new A.A3(B.A,b,c,null,A.aw(t.T)) +s.aQ() +s.sbq(a) +return s}, +Wq:function Wq(a,b){this.a=a +this.b=b}, +A3:function A3(a,b,c,d,e){var _=this +_.fx=a +_.fy=b +_.go=c +_.k1=null +_.k1$=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}, +aVq:function aVq(){}, +cLx(a){var s +for(s=t.NW;a!=null;){if(s.b(a))return a +a=a.gbR(a)}return null}, +dcy(a,b,c){var s=b.aq.a)return q +else if(a0)return a>=1e5 +return!0}, +xw:function xw(a,b,c,d){var _=this +_.a=a +_.b=b +_.e=$ +_.f=c +_.$ti=d}, +Xs:function Xs(a){this.a=a +this.b=null}, +LQ:function LQ(a,b){this.a=a +this.b=b}, +bx0:function bx0(a){this.a=a}, +lH:function lH(){}, +bDt:function bDt(a){this.a=a}, +bDv:function bDv(a){this.a=a}, +bDw:function bDw(a,b){this.a=a +this.b=b}, +bDx:function bDx(a){this.a=a}, +bDs:function bDs(a){this.a=a}, +bDu:function bDu(a){this.a=a}, +czo(){var s=new A.MK(new A.aI(new A.ak($.at,t.W),t.gR)) +s.asY() +return s}, +Az:function Az(a,b){var _=this +_.a=null +_.b=!1 +_.c=null +_.d=a +_.e=null +_.f=b +_.r=$}, +MK:function MK(a){this.a=a +this.c=this.b=null}, +bLB:function bLB(a){this.a=a}, +ab9:function ab9(a){this.a=a}, +aEi:function aEi(){}, +bF6:function bF6(a){this.a=a}, +bbk(a){var s=$.cw0.i(0,a) +if(s==null){s=$.cGn +$.cGn=s+1 +$.cw0.n(0,a,s) +$.cw_.n(0,s,a)}return s}, +ddd(a,b){var s +if(a.length!==b.length)return!1 +for(s=0;s=0)m.push(new A.a4V(A.a(p.R(q,0,o).split("\n"),s),p.b0(q,o+2))) +else m.push(new A.a4V(B.bF,q))}return m}, +ddi(a){switch(a){case"AppLifecycleState.resumed":return B.ix +case"AppLifecycleState.inactive":return B.ke +case"AppLifecycleState.hidden":return B.r9 +case"AppLifecycleState.paused":return B.iy +case"AppLifecycleState.detached":return B.kd}return null}, +UV:function UV(){}, +bFn:function bFn(a){this.a=a}, +bFm:function bFm(a){this.a=a}, +bXj:function bXj(){}, +bXk:function bXk(a){this.a=a}, +bXl:function bXl(a){this.a=a}, +b6Z:function b6Z(){}, +p4(a){var s=0,r=A.p(t.H) +var $async$p4=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(B.c4.fJ("Clipboard.setData",A.a1(["text",a.a],t.N,t.z),t.H),$async$p4) +case 2:return A.n(null,r)}}) +return A.o($async$p4,r)}, +app(a){var s=0,r=A.p(t.VL),q,p +var $async$app=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(B.c4.fJ("Clipboard.getData",a,t.a),$async$app) +case 3:p=c +if(p==null){q=null +s=1 +break}q=new A.mV(A.ax(J.aS(p,"text"))) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$app,r)}, +mV:function mV(a){this.a=a}, +cJk(a,b,c,d,e){return new A.JN(c,b,null,e,d)}, +cJj(a,b,c,d,e){return new A.DS(d,c,a,e,!1)}, +d8M(a){var s,r,q=a.d,p=B.aUB.i(0,q) +if(p==null)p=new A.a7(q) +q=a.e +s=B.aX2.i(0,q) +if(s==null)s=new A.K(q) +r=a.a +switch(a.b.a){case 0:return new A.rx(p,s,a.f,r,a.r) +case 1:return A.cJk(B.uX,s,p,a.r,r) +case 2:return A.cJj(a.f,B.uX,s,p,r)}}, +S0:function S0(a,b,c){this.c=a +this.a=b +this.b=c}, +n9:function n9(){}, +rx:function rx(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e}, +JN:function JN(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e}, +DS:function DS(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e}, +bkK:function bkK(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.e=null}, +awi:function awi(a,b){this.a=a +this.b=b}, +a4M:function a4M(a,b){this.a=a +this.b=b}, +awj:function awj(a,b,c,d){var _=this +_.a=null +_.b=a +_.c=b +_.d=null +_.e=c +_.f=d}, +aQB:function aQB(){}, +bow:function bow(a,b,c){this.a=a +this.b=b +this.c=c}, +d9p(a){if((B.e.ec(a/4294967296)&1048575)===0)return A.cm(a).toUpperCase() +return null}, +cJx(a){var s=A.z(a).h("eE") +return A.hh(new A.eE(a,new A.bpw(),s),s.h("B.E"))}, +bpx(a){var s=A.z(a).h("eE") +return A.hh(new A.eE(a,new A.bpy(),s),s.h("B.E"))}, +box:function box(){}, +K:function K(a){this.a=a}, +bpw:function bpw(){}, +bpy:function bpy(){}, +a7:function a7(a){this.a=a}, +aQD:function aQD(){}, +EF(a,b,c,d){return new A.ok(a,c,b,d)}, +cy2(a){return new A.SR(a)}, +rF:function rF(a,b){this.a=a +this.b=b}, +ok:function ok(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +SR:function SR(a){this.a=a}, +bIi:function bIi(){}, +bnX:function bnX(){}, +bnZ:function bnZ(){}, +bH4:function bH4(){}, +bH6:function bH6(a,b){this.a=a +this.b=b}, +bH8:function bH8(){}, +dhI(a){var s,r,q +for(s=A.z(a),s=s.h("@<1>").a1(s.y[1]),r=new A.c4(J.au(a.a),a.b,s.h("c4<1,2>")),s=s.y[1];r.t();){q=r.a +if(q==null)q=s.a(q) +if(!q.l(0,B.bt))return q}return null}, +btw:function btw(a,b){this.a=a +this.b=b}, +ST:function ST(){}, +fm:function fm(){}, +aNp:function aNp(){}, +aSj:function aSj(a,b){this.a=a +this.b=b}, +aSi:function aSi(){}, +aXE:function aXE(a,b){this.a=a +this.b=b}, +wL:function wL(a){this.a=a}, +aRW:function aRW(){}, +da7(a,b,c){return new A.hZ(a,b,c)}, +C0:function C0(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +b69:function b69(a,b){this.a=a +this.b=b}, +hZ:function hZ(a,b,c){this.a=a +this.b=b +this.c=c}, +bsU:function bsU(a,b){this.a=a +this.b=b}, +rJ:function rJ(a,b,c){this.a=a +this.b=b +this.c=c}, +QS:function QS(a){this.a=a}, +bhj:function bhj(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bhi:function bhi(a,b){this.a=a +this.b=b}, +bhk:function bhk(a,b,c){this.a=a +this.b=b +this.c=c}, +bxE:function bxE(){this.a=0}, +L1:function L1(){}, +TK:function TK(a,b){this.a=a +this.b=b}, +bcb:function bcb(){this.a=$}, +dc2(a){var s,r,q,p,o={} +o.a=null +s=new A.bzy(o,a).$0() +r=$.cCP().d +q=A.z(r).h("bR<1>") +p=A.hh(new A.bR(r,q),q.h("B.E")).p(0,s.grW()) +q=J.aS(a,"type") +q.toString +A.ax(q) +switch(q){case"keydown":return new A.ES(o.a,p,s) +case"keyup":return new A.U2(null,!1,s) +default:throw A.d(A.Ds("Unknown key event type: "+q))}}, +JO:function JO(a,b){this.a=a +this.b=b}, +qn:function qn(a,b){this.a=a +this.b=b}, +a7F:function a7F(){}, +zZ:function zZ(){}, +bzy:function bzy(a,b){this.a=a +this.b=b}, +ES:function ES(a,b,c){this.a=a +this.b=b +this.c=c}, +U2:function U2(a,b,c){this.a=a +this.b=b +this.c=c}, +bzB:function bzB(a,b){this.a=a +this.d=b}, +i9:function i9(a,b){this.a=a +this.b=b}, +aU7:function aU7(){}, +aU6:function aU6(){}, +aCs:function aCs(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a8w:function a8w(a,b){var _=this +_.b=_.a=null +_.f=_.e=_.d=_.c=!1 +_.r=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +bC5:function bC5(a){this.a=a}, +bC6:function bC6(a){this.a=a}, +iV:function iV(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}, +bC2:function bC2(){}, +bC3:function bC3(){}, +bC1:function bC1(){}, +bC4:function bC4(){}, +d4j(a,b){var s,r,q,p,o=A.a([],t.bt),n=J.ao(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.VM(c,p,r) +else if((!h||i)&&s)return new A.aG0(new A.ea(!n?a-1:b,a),c,p,r) +else if((b===a||j)&&s)return new A.aG1(B.c.R(a0,d,d+(a1-d)),a,c,p,r) +else if(e)return new A.aG2(a0,new A.ea(b,a),c,p,r) +return new A.VM(c,p,r)}, +Fy:function Fy(){}, +aG1:function aG1(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +aG0:function aG0(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.c=d}, +aG2:function aG2(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +VM:function VM(a,b,c){this.a=a +this.b=b +this.c=c}, +aY3:function aY3(){}, +cJm(a,b){var s,r,q,p,o=a.a,n=new A.Vl(o,0,0) +if((o.length===0?B.dh:new A.iY(o)).gA(0)>b)n.R6(b,0) +s=n.gK(0) +o=a.b +r=s.length +o=o.M_(Math.min(o.a,r),Math.min(o.b,r)) +q=a.c +p=q.a +q=q.b +return new A.cu(s,o,p!==q&&r>p?new A.ea(p,Math.min(q,r)):B.aw)}, +a5B:function a5B(a,b){this.a=a +this.b=b}, +wR:function wR(){}, +aS0:function aS0(a,b){this.a=a +this.b=b}, +ci2:function ci2(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1}, +QX:function QX(a,b,c){this.a=a +this.b=b +this.c=c}, +bi5:function bi5(a,b,c){this.a=a +this.b=b +this.c=c}, +awQ:function awQ(a,b){this.a=a +this.b=b}, +cMK(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.uG(j,m,l,c,d,n,o,h,g,a,i,p,k,!0,b,!1)}, +dob(a){switch(a){case"TextAffinity.downstream":return B.E +case"TextAffinity.upstream":return B.by}return null}, +cMJ(a){var s,r,q,p,o=J.ao(a),n=A.ax(o.i(a,"text")),m=A.fO(o.i(a,"selectionBase")) +if(m==null)m=-1 +s=A.fO(o.i(a,"selectionExtent")) +if(s==null)s=-1 +r=A.dob(A.bw(o.i(a,"selectionAffinity"))) +if(r==null)r=B.E +q=A.lk(o.i(a,"selectionIsDirectional")) +p=A.eJ(r,m,s,q===!0) +m=A.fO(o.i(a,"composingBase")) +if(m==null)m=-1 +o=A.fO(o.i(a,"composingExtent")) +return new A.cu(n,p,new A.ea(m,o==null?-1:o))}, +czh(a){var s=A.a([],t.u1),r=$.cML +$.cML=r+1 +return new A.bL0(s,r,a)}, +dod(a){switch(a){case"TextInputAction.none":return B.bok +case"TextInputAction.unspecified":return B.bol +case"TextInputAction.go":return B.Z6 +case"TextInputAction.search":return B.qj +case"TextInputAction.send":return B.qk +case"TextInputAction.next":return B.lZ +case"TextInputAction.previous":return B.boo +case"TextInputAction.continueAction":return B.bop +case"TextInputAction.join":return B.boq +case"TextInputAction.route":return B.bom +case"TextInputAction.emergencyCall":return B.bon +case"TextInputAction.done":return B.Z5 +case"TextInputAction.newline":return B.Z4}throw A.d(A.Dr(A.a([A.vT("Unknown text input action: "+a)],t.qe)))}, +doc(a){switch(a){case"FloatingCursorDragState.start":return B.Do +case"FloatingCursorDragState.update":return B.nv +case"FloatingCursorDragState.end":return B.nw}throw A.d(A.Dr(A.a([A.vT("Unknown text cursor action: "+a)],t.qe)))}, +df6(a){var s,r,q,p,o +for(s=$.f3(),r=s.b,r=A.dy(r,r.r,A.z(r).c),q=t.H,p=r.$ti.c;r.t();){o=r.d +if(o==null)p.a(o) +o=s.c +o===$&&A.b() +o.fJ("TextInput.finishAutofillContext",a,q)}}, +aEY:function aEY(a,b){this.a=a +this.b=b}, +aEZ:function aEZ(a,b){this.a=a +this.b=b}, +Aw:function Aw(a,b,c){this.a=a +this.b=b +this.c=c}, +oJ:function oJ(a,b){this.a=a +this.b=b}, +aG_:function aG_(a,b){this.a=a +this.b=b}, +uG:function uG(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p}, +a3m:function a3m(a,b){this.a=a +this.b=b}, +U0:function U0(a,b,c){this.a=a +this.b=b +this.c=c}, +cu:function cu(a,b,c){this.a=a +this.b=b +this.c=c}, +bKK:function bKK(a,b){this.a=a +this.b=b}, +rY:function rY(a,b){this.a=a +this.b=b}, +aGd:function aGd(){}, +bKZ:function bKZ(){}, +M1:function M1(a,b,c){this.a=a +this.b=b +this.c=c}, +bL0:function bL0(a,b,c){var _=this +_.d=_.c=_.b=_.a=null +_.e=a +_.f=b +_.r=c}, +aG6:function aG6(a,b,c){var _=this +_.a=a +_.b=b +_.c=$ +_.d=null +_.e=$ +_.f=c +_.w=_.r=!1}, +bLg:function bLg(a){this.a=a}, +bLe:function bLe(){}, +bLd:function bLd(a,b){this.a=a +this.b=b}, +bLf:function bLf(a){this.a=a}, +bLh:function bLh(a){this.a=a}, +aaX:function aaX(){}, +aT7:function aT7(){}, +c9B:function c9B(){}, +b02:function b02(){}, +aH6:function aH6(a,b){this.a=a +this.b=b}, +aH7:function aH7(){this.a=$ +this.b=null}, +bNM:function bNM(){}, +d86(a,b){return new A.a7a(new A.blK(),A.d87(a),a.c,null)}, +d85(a,b){var s=new A.NL(b.a,a.c,null) +s.R1().bf(new A.blJ(b,a),t.P) +return s}, +d87(a){return new A.blL(a)}, +blK:function blK(){}, +blL:function blL(a){this.a=a}, +blJ:function blJ(a,b){this.a=a +this.b=b}, +NL:function NL(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1}, +dbb(){$.cKU=A.dbc(new A.bxz())}, +dbc(a){var s="Browser__WebContextMenuViewType__",r=$.amv() +r.gbFD().$3$isVisible(s,new A.bxy(a),!1) +return s}, +aBx:function aBx(a,b){this.c=a +this.a=b}, +bxz:function bxz(){}, +bxy:function bxy(a){this.a=a}, +bxx:function bxx(a,b){this.a=a +this.b=b}, +dm4(a){var s=A.aF("parent") +a.t8(new A.cpr(s)) +return s.aX()}, +ts(a,b){return new A.xO(a,b,null)}, +amL(a,b){var s,r,q +if(a.e==null)return!1 +s=t.L1 +r=a.kX(s) +for(;q=r!=null,q;){if(b.$1(r))break +r=A.dm4(r).kX(s)}return q}, +cvb(a){var s={} +s.a=null +A.amL(a,new A.b3d(s)) +return B.a4h}, +cvd(a,b,c){var s={} +s.a=null +if((b==null?null:A.I(b))==null)A.c6(c) +A.amL(a,new A.b3g(s,b,a,c)) +return s.a}, +cvc(a,b){var s={} +s.a=null +A.c6(b) +A.amL(a,new A.b3e(s,null,b)) +return s.a}, +b3c(a,b,c){var s,r=b==null?null:A.I(b) +if(r==null)r=A.c6(c) +s=a.r.i(0,r) +if(c.h("cg<0>?").b(s))return s +else return null}, +H_(a,b,c){var s={} +s.a=null +A.amL(a,new A.b3f(s,b,a,c)) +return s.a}, +d1z(a,b,c){var s={} +s.a=null +A.amL(a,new A.b3h(s,b,a,c)) +return s.a}, +aui(a,b,c,d,e,f,g,h,i,j,k){return new A.IX(d,e,!1,a,k,i,j,h,g,f,c,null)}, +cH3(a){return new A.a1W(a,new A.bN(A.a([],t.h),t.b))}, +cpr:function cpr(a){this.a=a}, +cB:function cB(){}, +cg:function cg(){}, +fb:function fb(){}, +ej:function ej(a,b,c){var _=this +_.c=a +_.a=b +_.b=null +_.$ti=c}, +b3b:function b3b(){}, +xO:function xO(a,b,c){this.d=a +this.e=b +this.a=c}, +b3d:function b3d(a){this.a=a}, +b3g:function b3g(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b3e:function b3e(a,b,c){this.a=a +this.b=b +this.c=c}, +b3f:function b3f(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b3h:function b3h(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +acx:function acx(a,b,c){var _=this +_.d=a +_.e=b +_.a=null +_.b=c +_.c=null}, +bQC:function bQC(a){this.a=a}, +acw:function acw(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +IX:function IX(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.as=i +_.at=j +_.ax=k +_.a=l}, +aeQ:function aeQ(a,b){var _=this +_.f=_.e=_.d=!1 +_.r=a +_.a=null +_.b=b +_.c=null}, +c0x:function c0x(a){this.a=a}, +c0v:function c0v(a){this.a=a}, +c0q:function c0q(a){this.a=a}, +c0r:function c0r(a){this.a=a}, +c0p:function c0p(a,b){this.a=a +this.b=b}, +c0u:function c0u(a){this.a=a}, +c0s:function c0s(a){this.a=a}, +c0t:function c0t(a,b){this.a=a +this.b=b}, +c0w:function c0w(a,b){this.a=a +this.b=b}, +aHK:function aHK(a){this.a=a +this.b=null}, +a1W:function a1W(a,b){this.c=a +this.a=b +this.b=null}, +OL:function OL(){}, +Pj:function Pj(){}, +mX:function mX(){}, +asP:function asP(){}, +zX:function zX(){}, +aBZ:function aBZ(a){var _=this +_.f=_.e=$ +_.a=a +_.b=null}, +Y1:function Y1(){}, +agy:function agy(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.bvY$=c +_.bvZ$=d +_.bw_$=e +_.bw0$=f +_.a=g +_.b=null +_.$ti=h}, +agz:function agz(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.bvY$=c +_.bvZ$=d +_.bw_$=e +_.bw0$=f +_.a=g +_.b=null +_.$ti=h}, +adC:function adC(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=null +_.$ti=d}, +aKh:function aKh(){}, +aKf:function aKf(){}, +aQr:function aQr(){}, +alb:function alb(){}, +alc:function alc(){}, +cyJ(a,b,c,d){return new A.Ly(a,b,c,new A.yW(b,t.bT),d.h("Ly<0>"))}, +dco(a,b){return new A.Lz(a,B.aD,b.h("Lz<0>"))}, +Ly:function Ly(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.$ti=e}, +bB8:function bB8(a,b,c){this.a=a +this.b=b +this.c=c}, +bB9:function bB9(a){this.a=a}, +Lz:function Lz(a,b,c){var _=this +_.c=_.b=_.a=_.ch=_.ax=_.be=_.bO=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1 +_.$ti=c}, +ahH:function ahH(){}, +d1I(a,b,c,d){var s=null +return new A.d4(B.ar,s,B.am,B.i,A.a([A.mo(s,c,s,d,0,0,0,s),A.mo(s,a,s,b,s,s,s,s)],t.p),s)}, +a17:function a17(a,b){this.a=a +this.b=b}, +H7:function H7(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.w=e +_.y=f +_.a=g}, +aKu:function aKu(a,b,c){var _=this +_.f=_.e=_.d=$ +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +bR4:function bR4(a){this.a=a}, +bR3:function bR3(){}, +akC:function akC(){}, +xS(a,b,c,d,e){return new A.a_3(b,a,c,d,e,null)}, +a_3:function a_3(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aKF:function aKF(a,b,c){var _=this +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +aKE:function aKE(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.c=h +_.a=i}, +b_p:function b_p(){}, +BS(a,b,c,d,e){return new A.xT(a,b,c,d,e,null)}, +d1M(a,b){return new A.dg(b,!1,a,new A.ca(a.a,t.BN))}, +d1L(a,b){var s=A.R(b,!0,t.C) +if(a!=null)s.push(a) +return new A.d4(B.C,null,B.am,B.k,s,null)}, +G4:function G4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +xT:function xT(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.a=f}, +acE:function acE(a,b,c,d,e){var _=this +_.d=null +_.e=a +_.f=b +_.r=0 +_.eH$=c +_.b5$=d +_.a=null +_.b=e +_.c=null}, +bRq:function bRq(a,b,c){this.a=a +this.b=b +this.c=c}, +bRp:function bRp(a,b){this.a=a +this.b=b}, +bRr:function bRr(){}, +bRs:function bRs(a){this.a=a}, +akE:function akE(){}, +cEP(a,b,c){return new A.a_a(b,a,null,c.h("a_a<0>"))}, +a_a:function a_a(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +dp4(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.ga2(a2) +s=t.N +r=t.da +q=A.hg(a0,a0,a0,s,r) +p=A.hg(a0,a0,a0,s,r) +o=A.hg(a0,a0,a0,s,r) +n=A.hg(a0,a0,a0,s,r) +m=A.hg(a0,a0,a0,t.R,r) +for(l=0;l<3;++l){k=a2[l] +s=k.a +r=B.el.i(0,s) +if(r==null)r=s +j=A.r(k.b) +i=k.c +h=B.fb.i(0,i) +if(h==null)h=i +h=r+"_"+j+"_"+A.r(h) +if(q.i(0,h)==null)q.n(0,h,k) +r=B.el.i(0,s) +r=(r==null?s:r)+"_"+j +if(o.i(0,r)==null)o.n(0,r,k) +r=B.el.i(0,s) +if(r==null)r=s +j=B.fb.i(0,i) +if(j==null)j=i +j=r+"_"+A.r(j) +if(p.i(0,j)==null)p.n(0,j,k) +r=B.el.i(0,s) +s=r==null?s:r +if(n.i(0,s)==null)n.n(0,s,k) +s=B.fb.i(0,i) +if(s==null)s=i +if(m.i(0,s)==null)m.n(0,s,k)}for(g=a0,f=g,e=0;e"))}, +aac(a,b,c){return new A.Mq(a,b,null,c.h("Mq<0>"))}, +bjw(a,b,c){return new A.Rc(b,a,null,c.h("Rc<0>"))}, +wK:function wK(){}, +aiZ:function aiZ(a,b){var _=this +_.d=null +_.e=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +cfY:function cfY(a){this.a=a}, +cfX:function cfX(a,b){this.a=a +this.b=b}, +cg_:function cg_(a){this.a=a}, +cfV:function cfV(a,b,c){this.a=a +this.b=b +this.c=c}, +cfZ:function cfZ(a){this.a=a}, +cfW:function cfW(a){this.a=a}, +HS:function HS(a,b){this.a=a +this.b=b}, +f4:function f4(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +Mq:function Mq(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +Rc:function Rc(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.$ti=d}, +aeW:function aeW(a,b){var _=this +_.d=null +_.e=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +c0F:function c0F(a,b){this.a=a +this.b=b}, +c0E:function c0E(a,b){this.a=a +this.b=b}, +c0G:function c0G(a,b){this.a=a +this.b=b}, +c0D:function c0D(a,b,c){this.a=a +this.b=b +this.c=c}, +cF0(a){var s=a.a0(t.HU) +return s==null?null:s.f}, +b5d:function b5d(a,b){this.a=a +this.b=b}, +Hl:function Hl(a,b){this.c=a +this.a=b}, +ans:function ans(a,b){var _=this +_.d=a +_.e=!1 +_.a=null +_.b=b +_.c=null}, +b5e:function b5e(){}, +b5f:function b5f(a){this.a=a}, +acN:function acN(a,b,c){this.f=a +this.b=b +this.a=c}, +aKZ:function aKZ(){}, +Hm:function Hm(a,b){this.c=a +this.a=b}, +acO:function acO(a){var _=this +_.d=null +_.e=$ +_.f=!1 +_.a=null +_.b=a +_.c=null}, +bSh:function bSh(a){this.a=a}, +bSm:function bSm(a){this.a=a}, +bSl:function bSl(a,b,c){this.a=a +this.b=b +this.c=c}, +bSj:function bSj(a){this.a=a}, +bSk:function bSk(a){this.a=a}, +bSi:function bSi(a){this.a=a}, +JL:function JL(a){this.a=a}, +a4J:function a4J(a){var _=this +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +lq:function lq(){}, +aSq:function aSq(a){this.a=a}, +cP9(a,b){a.d0(new A.cmc(b)) +b.$1(a)}, +a1O(a,b){return new A.rn(b,a,null)}, +fq(a){var s=a.a0(t.I) +return s==null?null:s.w}, +mj(a,b){return new A.T4(b,a,null)}, +OW(a,b){return new A.anA(b,a,null)}, +ih(a,b,c,d,e){return new A.a1u(d,b,e,a,c)}, +p3(a,b,c){return new A.yg(c,b,a,null)}, +PH(a,b){return new A.apl(a,b,null)}, +b9s(a,b,c){return new A.PF(c,b,a,null)}, +d30(a,b){return new A.e_(new A.b9u(b,B.dL,a),null)}, +cKP(a,b,c,d,e,f){return new A.aBj(c,b,e,d,f,a,null)}, +x0(a,b,c,d,e){return new A.t7(d,a,e,c,b,null)}, +aGX(a,b){return new A.t7(A.cNd(a),B.C,!0,null,b,null)}, +uP(a,b,c){return new A.t7(A.wn(b.a,b.b,0),null,c,null,a,null)}, +bNn(a,b,c,d,e){var s=c==null,r=s?d:c +if(r==null)r=1 +s=s?e:c +return new A.t7(A.zj(r,s==null?1:s,1),a,!0,null,b,null)}, +cNd(a){var s,r,q +if(a===0){s=new A.c5(new Float64Array(16)) +s.fO() +return s}r=Math.sin(a) +if(r===1)return A.bNq(1,0) +if(r===-1)return A.bNq(-1,0) +q=Math.cos(a) +if(q===-1)return A.bNq(0,-1) +return A.bNq(r,q)}, +bNq(a,b){var s=new Float64Array(16) +s[0]=b +s[1]=a +s[4]=-a +s[5]=b +s[10]=1 +s[15]=1 +return new A.c5(s)}, +bao(a,b,c,d){return new A.PV(b,d,c,a,null)}, +cIe(a,b,c,d){return new A.a35(d,a,c,b,null)}, +cx_(a,b,c){return new A.aup(c,b,a,null)}, +eu(a,b,c,d){return new A.k9(B.C,d,b,a,c)}, +zc(a,b,c){return new A.JS(b,a,c==null?new A.ca(b,t.xi):c)}, +cyY(a,b){return new A.ba(0,0,a,b)}, +Mi(a,b){return new A.ba(b.a,b.b,a,null)}, +d3u(a,b,c,d,e){return new A.a0Y(e,a,d,c,b,null)}, +d3w(a){return B.e9}, +d3x(a){return new A.aG(0,1/0,a.c,a.d)}, +d3v(a){return new A.aG(a.a,a.b,0,1/0)}, +czw(a,b,c,d){return new A.aH5(a,d,c,b,null)}, +bnN(a,b){return new A.aw9(b,a,null)}, +csf(a,b,c){var s,r +switch(b.a){case 0:s=a.a0(t.I) +s.toString +r=A.ctY(s.w) +return r +case 1:return B.aJ}}, +cxP(a){return new A.ax0(a,null)}, +cIZ(a,b,c){return new A.aw2(a,c,b,null)}, +mo(a,b,c,d,e,f,g,h){return new A.uf(e,g,f,a,h,c,b,d)}, +TG(a,b){return new A.uf(b.a,b.b,b.c,b.d,null,null,a,null)}, +po(a,b){return new A.uf(0,0,0,a,null,null,b,null)}, +dbA(a,b,c,d,e,f,g,h){var s,r +switch(f.a){case 0:s=e +r=c +break +case 1:s=c +r=e +break +default:r=null +s=null}return A.mo(a,b,d,null,r,s,g,h)}, +cwP(a,b,c,d,e,f,g,h,i){return new A.Dq(c,e,f,b,h,i,g,a,d)}, +eq(a,b,c,d,e,f,g,h){return new A.F0(B.a_,d,e,b,g,h,f,a,c)}, +cS(a,b,c,d,e,f,g,h){return new A.yi(B.v,d,e,b,g,h,f,a,c)}, +f7(a,b,c){return new A.rq(b,B.nu,a,c)}, +acf(a,b,c,d,e,f,g,h,i,j,k){return new A.aJM(e,a,i,g,h,d,j,k,c,b,f)}, +EZ(a,b,c,d,e,f,g,h,i,j,k,l,m){return new A.LJ(h,i,j,f,c,A.cLN(l,1),b,a,g,m,k,e,d,A.czI(h,A.cLN(l,1)),null)}, +cLN(a,b){var s,r,q,p,o +$label0$0:{s=1===b +r=b +q=a +p=q +o=!0 +if(s){s=q +break $label0$0}if(B.Y.l(0,p)){if(o)s=r +else{s=b +r=s +o=!0}s=typeof s=="number"}else s=!1 +if(s){s=new A.li(o?r:b) +break $label0$0}s=p +break $label0$0 +throw A.d(A.iB(u.P))}return s}, +aCr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.aCq(i,e,p,h,o,c,m,f,d,g,a,n,b,!1,j,!1,null)}, +cGv(a){var s +a.a0(t.l4) +s=$.xI() +return s}, +wk(a,b,c,d,e,f,g,h){return new A.ax4(e,h,d,f,g,a,b,c)}, +ip(a,b,c,d,e,f,g){return new A.Ef(e,g,f,b,c,a,d)}, +n6(a,b,c){return new A.Rx(b,a,c)}, +b34(a,b){return new A.amE(a,b,null)}, +cy0(a,b,c){return new A.a5P(c,a,b,null)}, +cvp(a){return new A.P2(a,null)}, +d8T(a,b){var s=a.a +return new A.hI(a,s!=null?new A.ca(s,t.gz):new A.ca(b,t.zm))}, +boz(a){var s,r,q,p,o,n,m,l +if(a.length===0)return a +s=A.a([],t.p) +for(r=a.length,q=t.zm,p=t.gz,o=0,n=0;n")),new A.bdA(),r.h("fW<1,W>"))}, +d4G(a,b){var s,r,q,p,o=B.b.ga2(a),n=A.cGU(b,o) +for(s=a.length,r=0;rr)return a.W(0,new A.j(p,r)).gfT() +else return p-q}}else{p=b.c +if(q>p){s=a.b +r=b.b +if(sr)return a.W(0,new A.j(p,r)).gfT() +else return q-p}}else{q=a.b +p=b.b +if(qp)return q-p +else return 0}}}}, +cwn(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.gaz(b);s.t();g=q){r=s.gK(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.W(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.W(i,m,i+(k.c-i),m+(j-m)))}else q.push(k)}}}return g}, +d4F(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.j(Math.min(Math.max(0,r),b.a),Math.min(Math.max(0,a.b),b.b))}, +Qv:function Qv(a,b,c){this.c=a +this.d=b +this.a=c}, +bdz:function bdz(){}, +bdA:function bdA(){}, +asQ:function asQ(a,b){this.a=a +this.$ti=b}, +dpA(a,b,c){var s=b.gai() +s.toString +return t.x.a(s).hZ(c)}, +d59(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){return new A.vN(e,b,c,d,g,h,f,j,!0,l,o,p,q,m,n,a,k,r.h("vN<0>"))}, +cHF(a,b,c,d,e,f,g){return new A.QA(a,e,f,b,c,d,null,g.h("QA<0>"))}, +cQP(a,b){var s=A.X(a).h("@<1>").a1(b.h("0?")).h("O<1,2>") +return A.R(new A.O(a,new A.cpS(b),s),!0,s.h("aa.E"))}, +vN:function vN(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 +_.as=j +_.at=k +_.ax=l +_.ay=m +_.ch=n +_.CW=o +_.db=p +_.a=q +_.$ti=r}, +a59:function a59(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 +_.as=j +_.at=k +_.ax=l +_.ay=m +_.ch=n +_.CW=o +_.db=p +_.a=q +_.$ti=r}, +bpz:function bpz(a,b){this.a=a +this.b=b}, +Xi:function Xi(a,b){var _=this +_.d=null +_.e=0 +_.a=null +_.b=a +_.c=null +_.$ti=b}, +bY8:function bY8(a){this.a=a}, +bY9:function bY9(a){this.a=a}, +bYa:function bYa(a){this.a=a}, +bY7:function bY7(a){this.a=a}, +a29:function a29(a){this.c=a}, +vM:function vM(a,b,c){this.a=a +this.b=b +this.$ti=c}, +QA:function QA(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}, +cpS:function cpS(a){this.a=a}, +xg:function xg(a,b,c,d){var _=this +_.d=a +_.e=b +_.a=null +_.b=c +_.c=null +_.$ti=d}, +bY_:function bY_(a,b){this.a=a +this.b=b}, +bY0:function bY0(a,b){this.a=a +this.b=b}, +bY1:function bY1(a,b){this.a=a +this.b=b}, +bXZ:function bXZ(a,b){this.a=a +this.b=b}, +aNT:function aNT(a,b){this.a=a +this.b=b}, +G7:function G7(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=null +_.as=l +_.at=m +_.ay=_.ax=null +_.$ti=n}, +bXV:function bXV(a){this.a=a}, +bXW:function bXW(){}, +cOf(a,b,c,d,e,f,g,h,i,j){var s=a==null?new A.bm(d,$.ae(),t.bm):a +return new A.aen(f,e,!1,j,i,d,!0,s,c===!0,b===!0)}, +dih(a){var s,r,q=a.a0(t.tP) +if(q==null)return!1 +s=q.f +r=s.a +s.a=!1 +return r}, +a2a:function a2a(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.f=c +_.Q=d +_.a=e}, +Ip:function Ip(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.kN$=g}, +aen:function aen(a,b,c,d,e,f,g,h,i,j){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=1/0 +_.z=i +_.Q=j}, +aNX:function aNX(a){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +bY6:function bY6(a){this.a=a}, +bY5:function bY5(a,b,c){this.a=a +this.b=b +this.c=c}, +aNW:function aNW(a,b,c,d,e,f,g,h){var _=this +_.as=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +bY2:function bY2(a){this.a=a}, +NC:function NC(a,b,c,d,e,f,g,h,i){var _=this +_.ag=null +_.aq=a +_.aJ=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 +_.k2$=0 +_.k3$=i +_.ok$=_.k4$=0 +_.p1$=!1}, +bY4:function bY4(a,b,c){this.a=a +this.b=b +this.c=c}, +bY3:function bY3(a,b){this.a=a +this.b=b}, +aem:function aem(){}, +Cw:function Cw(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aeo:function aeo(a,b,c){var _=this +_.d=$ +_.e=a +_.f=b +_.a=null +_.b=c +_.c=null}, +cHP(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.xu:B.xv +else s=e0 +if(e1==null)r=b7?B.xw:B.xx +else r=e1 +if(t.qY.b(d5)&&!0)q=B.y8 +else if(b7)q=c7?B.y8:B.btV +else q=c7?B.btW:B.btX +p=b2==null?A.d6_(d,b4):b2 +if(b4===1){o=A.a([$.cW2()],t.VS) +B.b.L(o,a9==null?B.a4F:a9)}else o=a9 +return new A.QF(j,a7,b8,b7,e8,f1,c7,a8,q,d9,d8==null?!c7:d8,a,s,r,a5,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)}, +d6_(a,b){return b===1?B.xW:B.ql}, +d5Z(a){var s,r=a==null,q=r?null:a.a,p=r||a.l(0,B.lU) +r=q==null +if(r){$.an.toString +$.cf() +s=!1}else s=!0 +if(p||!s)return B.lU +if(r){r=new A.bce() +r.b=B.bfo}else r=q +return a.brU(r)}, +GA(a,b,c,d,e,f,g){return new A.ak2(a,e,f,d,b,c,new A.bN(A.a([],t.h),t.b),g.h("ak2<0>"))}, +aMc:function aMc(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aUM:function aUM(a,b,c,d){var _=this +_.G=a +_.ac=null +_.aS=b +_.k1$=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}, +eZ:function eZ(a,b){var _=this +_.a=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +W7:function W7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +pF:function pF(a,b){this.a=a +this.b=b}, +bXP:function bXP(a,b,c){var _=this +_.b=a +_.c=b +_.d=0 +_.a=c}, +QF:function QF(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 +_.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 +_.x1=b9 +_.x2=c0 +_.xr=c1 +_.y1=c2 +_.y2=c3 +_.c_=c4 +_.bO=c5 +_.be=c6 +_.bj=c7 +_.bU=c8 +_.e7=c9 +_.dd=d0 +_.D=d1 +_.N=d2 +_.a4=d3 +_.ag=d4 +_.aq=d5 +_.aJ=d6 +_.U=d7 +_.aW=d8 +_.aT=d9 +_.aU=e0 +_.ck=e1 +_.eA=e2 +_.f1=e3 +_.ez=e4 +_.dA=e5 +_.e8=e6 +_.hS=e7 +_.a=e8}, +vP:function vP(a,b,c,d,e,f,g,h,i,j,k,l,m){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=$ +_.dx=null +_.dy=h +_.fr=i +_.fy=_.fx=null +_.go=!0 +_.k4=_.k3=_.k2=_.k1=_.id=null +_.ok=0 +_.p3=_.p2=_.p1=!1 +_.p4=$ +_.R8=0 +_.rx=_.RG=null +_.ry=$ +_.to=-1 +_.x1=null +_.c_=_.y2=_.y1=_.xr=_.x2=$ +_.eH$=j +_.b5$=k +_.eW$=l +_.a=null +_.b=m +_.c=null}, +bfr:function bfr(){}, +bfT:function bfT(a){this.a=a}, +bfv:function bfv(a){this.a=a}, +bfH:function bfH(a){this.a=a}, +bfI:function bfI(a){this.a=a}, +bfJ:function bfJ(a){this.a=a}, +bfK:function bfK(a){this.a=a}, +bfL:function bfL(a){this.a=a}, +bfM:function bfM(a){this.a=a}, +bfN:function bfN(a){this.a=a}, +bfO:function bfO(a){this.a=a}, +bfP:function bfP(a){this.a=a}, +bfQ:function bfQ(a){this.a=a}, +bfR:function bfR(a){this.a=a}, +bfS:function bfS(a){this.a=a}, +bfB:function bfB(a,b,c){this.a=a +this.b=b +this.c=c}, +bfU:function bfU(a){this.a=a}, +bfW:function bfW(a){this.a=a}, +bfn:function bfn(a,b){this.a=a +this.b=b}, +bfw:function bfw(a,b){this.a=a +this.b=b}, +bfV:function bfV(a){this.a=a}, +bfp:function bfp(a){this.a=a}, +bfA:function bfA(a){this.a=a}, +bfs:function bfs(){}, +bft:function bft(a){this.a=a}, +bfu:function bfu(a){this.a=a}, +bfo:function bfo(){}, +bfq:function bfq(a){this.a=a}, +bg_:function bg_(a){this.a=a}, +bfX:function bfX(a){this.a=a}, +bfY:function bfY(a){this.a=a}, +bfZ:function bfZ(a,b,c){this.a=a +this.b=b +this.c=c}, +bfx:function bfx(a,b){this.a=a +this.b=b}, +bfy:function bfy(a,b){this.a=a +this.b=b}, +bfz:function bfz(a,b){this.a=a +this.b=b}, +bfm:function bfm(a){this.a=a}, +bfF:function bfF(a){this.a=a}, +bfD:function bfD(a){this.a=a}, +bfE:function bfE(){}, +bfG:function bfG(a,b,c){this.a=a +this.b=b +this.c=c}, +bfC:function bfC(a){this.a=a}, +aeq:function aeq(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}, +ce_:function ce_(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}, +aid:function aid(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aVZ:function aVZ(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +ce0:function ce0(a){this.a=a}, +O6:function O6(a,b,c,d,e){var _=this +_.x=a +_.e=b +_.b=c +_.c=d +_.a=e}, +aM4:function aM4(a){this.a=a}, +AV:function AV(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.a=d +_.b=null +_.$ti=e}, +ak2:function ak2(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}, +ak3:function ak3(a,b,c){var _=this +_.e=a +_.r=_.f=null +_.a=b +_.b=null +_.$ti=c}, +aW9:function aW9(a,b){this.e=a +this.a=b +this.b=null}, +aMy:function aMy(a,b){this.e=a +this.a=b +this.b=null}, +aPH:function aPH(a,b){this.a=a +this.b=b}, +aZJ:function aZJ(a,b,c){var _=this +_.ay=a +_.w=!1 +_.a=b +_.k2$=0 +_.k3$=c +_.ok$=_.k4$=0 +_.p1$=!1}, +aer:function aer(){}, +aO5:function aO5(){}, +aes:function aes(){}, +aO6:function aO6(){}, +aO7:function aO7(){}, +cBg(a){var s,r,q +for(s=a.length,r=!1,q=0;q>"),n=new A.O(a,new A.cbv(),o) +for(s=new A.bj(n,n.gA(0),o.h("bj")),o=o.h("aa.E"),r=null;s.t();){q=s.d +p=q==null?o.a(q):q +r=(r==null?p:r).pq(0,p)}if(r.gad(r))return B.b.ga2(a).a +return B.b.WV(B.b.ga2(a).gayG(),r.grl(r)).w}, +cOO(a,b){A.BE(a,new A.cbx(b),t.zP)}, +dj0(a,b){A.BE(a,new A.cbu(b),t.JJ)}, +bzQ(){return new A.bzP(A.N(t.l5,t.UJ),A.dsb())}, +cwT(a,b){return new A.a3r(b==null?A.bzQ():b,a,null)}, +biQ(a){var s +for(;s=a.Q,s!=null;a=s){if(a.e==null)return null +if(a instanceof A.aeP)return a}return null}, +q8(a){var s,r=A.cwV(a,!1,!0) +if(r==null)return null +s=A.biQ(r) +return s==null?null:s.dy}, +dax(){return new A.T1(new A.bN(A.a([],t.h),t.b))}, +dbE(){return new A.TH(new A.bN(A.a([],t.h),t.b))}, +d4A(){return new A.Ij(!1,new A.bN(A.a([],t.h),t.b))}, +cpn:function cpn(a){this.a=a}, +Xq:function Xq(a,b){this.b=a +this.c=b}, +AF:function AF(a,b){this.a=a +this.b=b}, +abC:function abC(a,b){this.a=a +this.b=b}, +aug:function aug(){}, +biR:function biR(){}, +biT:function biT(a,b){this.a=a +this.b=b}, +biS:function biS(a){this.a=a}, +Xe:function Xe(a,b){this.a=a +this.b=b}, +aNz:function aNz(a){this.a=a}, +bdf:function bdf(){}, +cby:function cby(a){this.a=a}, +bdn:function bdn(a,b){this.a=a +this.b=b}, +bdp:function bdp(a){this.a=a}, +bdo:function bdo(a){this.a=a}, +bdq:function bdq(a){this.a=a}, +bdr:function bdr(a){this.a=a}, +bdh:function bdh(a){this.a=a}, +bdi:function bdi(a){this.a=a}, +bdj:function bdj(){}, +bdk:function bdk(a){this.a=a}, +bdl:function bdl(a){this.a=a}, +bdm:function bdm(){}, +bdg:function bdg(a,b,c){this.a=a +this.b=b +this.c=c}, +bds:function bds(a){this.a=a}, +bdt:function bdt(a){this.a=a}, +bdu:function bdu(a){this.a=a}, +bdv:function bdv(a){this.a=a}, +k_:function k_(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +cbv:function cbv(){}, +cbx:function cbx(a){this.a=a}, +cbw:function cbw(){}, +xo:function xo(a){this.a=a +this.b=null}, +cbt:function cbt(){}, +cbu:function cbu(a){this.a=a}, +bzP:function bzP(a,b){this.Ca$=a +this.a=b}, +bzR:function bzR(){}, +bzS:function bzS(){}, +bzT:function bzT(a){this.a=a}, +a3r:function a3r(a,b,c){this.c=a +this.f=b +this.a=c}, +aeP:function aeP(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 +_.k2$=0 +_.k3$=i +_.ok$=_.k4$=0 +_.p1$=!1}, +aPq:function aPq(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +aDr:function aDr(a){this.a=a +this.b=null}, +rI:function rI(){}, +T1:function T1(a){this.a=a +this.b=null}, +rQ:function rQ(){}, +TH:function TH(a){this.a=a +this.b=null}, +o2:function o2(a){this.a=a}, +Ij:function Ij(a,b){this.c=a +this.a=b +this.b=null}, +aPr:function aPr(){}, +aUd:function aUd(){}, +b06:function b06(){}, +b07:function b07(){}, +aum(a,b,c){return new A.J1(b,a==null?B.kg:a,c)}, +cwY(a){var s=a.a0(t.Jp) +return s==null?null:s.f}, +di1(a,b,c){return new A.aeT(b,c,a,null)}, +d7j(a){var s=null,r=$.ae() +return new A.q9(new A.a8v(s,r),new A.LI(!1,r),s,A.N(t.yb,t.O),s,!0,s,B.f,a.h("q9<0>"))}, +J1:function J1(a,b,c){this.c=a +this.w=b +this.a=c}, +R7:function R7(a,b){var _=this +_.d=0 +_.e=!1 +_.f=a +_.a=null +_.b=b +_.c=null}, +bja:function bja(){}, +bjb:function bjb(a){this.a=a}, +bjc:function bjc(a,b){this.a=a +this.b=b}, +aeT:function aeT(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +yR:function yR(){}, +q9:function q9(a,b,c,d,e,f,g,h,i){var _=this +_.d=$ +_.e=a +_.f=b +_.eb$=c +_.jX$=d +_.um$=e +_.hH$=f +_.ke$=g +_.a=null +_.b=h +_.c=null +_.$ti=i}, +bj9:function bj9(a){this.a=a}, +bj8:function bj8(a,b){this.a=a +this.b=b}, +y_:function y_(a,b){this.a=a +this.b=b}, +c0y:function c0y(){}, +Xr:function Xr(){}, +cx6(a,b){return new A.aR(a,b.h("aR<0>"))}, +die(a){a.fS() +a.d0(A.csb())}, +cvw(a,b){var s,r,q,p=t.lU,o=A.dV(p),n=A.a([],t.lX) +if(a==null){s=A.cwS() +r=s.a +q=$.i2.jA$ +q===$&&A.b() +q.a=r.gaAg() +$.ii.dA$.b.n(0,r.gaAj(),null)}else s=a +return new A.b7k(b,new A.aQb(o),n,s,A.N(t.yi,p))}, +d67(a,b){var s,r,q,p=a.d +p===$&&A.b() +s=b.d +s===$&&A.b() +r=p-s +if(r!==0)return r +q=b.Q +if(a.Q!==q)return q?-1:1 +return 0}, +d68(a,b){var s=A.X(b).h("O<1,jI>") +return A.d4q(!0,A.R(new A.O(b,new A.bgi(),s),!0,s.h("aa.E")),a,B.aNk,!0,B.ahc,null)}, +d65(a){a.cL() +a.d0(A.cSE())}, +QR(a){var s=a.a,r=s instanceof A.tT?s:null +return new A.a2K("",r,new A.qR())}, +d6y(a){var s,a +try{s=a.k(0) +return s}catch(a){}return"Error"}, +ddU(a){var s=a.J(),r=new A.mz(s,a,B.aD) +s.c=r +s.a=a +return r}, +d8l(a){return new A.mc(A.hg(null,null,null,t.lU,t.X),a,B.aD)}, +daf(a){return new A.qp(A.dV(t.lU),a,B.aD)}, +cB_(a,b,c,d){var s=new A.dl(b,c,"widgets library",a,d,!1) +A.fs(s) +return s}, +KD:function KD(a){this.a=a}, +kW:function kW(){}, +aR:function aR(a,b){this.a=a +this.$ti=b}, +yW:function yW(a,b){this.a=a +this.$ti=b}, +c:function c(){}, +a3:function a3(){}, +M:function M(){}, +cfE:function cfE(a,b){this.a=a +this.b=b}, +T:function T(){}, +bl:function bl(){}, +h7:function h7(){}, +bG:function bG(){}, +aE:function aE(){}, +awN:function awN(){}, +bt:function bt(){}, +eH:function eH(){}, +Xk:function Xk(a,b){this.a=a +this.b=b}, +aQb:function aQb(a){this.a=!1 +this.b=a}, +c2l:function c2l(a,b){this.a=a +this.b=b}, +b7k:function b7k(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.e=null +_.f=d +_.r=0 +_.w=!1 +_.y=_.x=null +_.z=e}, +b7l:function b7l(a,b,c){this.a=a +this.b=b +this.c=c}, +a6j:function a6j(){}, +c8p:function c8p(a,b){this.a=a +this.b=b}, +bJ:function bJ(){}, +bgl:function bgl(){}, +bgm:function bgm(a){this.a=a}, +bgj:function bgj(a){this.a=a}, +bgi:function bgi(){}, +bgn:function bgn(a){this.a=a}, +bgo:function bgo(a){this.a=a}, +bgp:function bgp(a){this.a=a}, +bgg:function bgg(a){this.a=a}, +bgk:function bgk(){}, +bgh:function bgh(a){this.a=a}, +a2K:function a2K(a,b,c){this.d=a +this.e=b +this.a=c}, +a0U:function a0U(){}, +bad:function bad(){}, +bae:function bae(){}, +Vj:function Vj(a,b){var _=this +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +mz:function mz(a,b,c){var _=this +_.k3=a +_.k4=!1 +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +a7k:function a7k(){}, +EA:function EA(a,b,c){var _=this +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1 +_.$ti=c}, +bwD:function bwD(a){this.a=a}, +mc:function mc(a,b,c){var _=this +_.y2=a +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +bO:function bO(){}, +aDF:function aDF(){}, +awM:function awM(a,b){var _=this +_.c=_.b=_.a=_.ch=_.ax=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +a9D:function a9D(a,b){var _=this +_.c=_.b=_.a=_.ch=_.ax=_.k4=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +qp:function qp(a,b,c){var _=this +_.k4=$ +_.ok=a +_.c=_.b=_.a=_.ch=_.ax=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +btE:function btE(a){this.a=a}, +aDk:function aDk(){}, +DG:function DG(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aSn:function aSn(a,b){var _=this +_.c=_.b=_.a=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +aSs:function aSs(a){this.a=a}, +aXb:function aXb(){}, +dn(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){return new A.auK(b,a8,a9,a6,a7,a2,a4,a5,a3,f,l,m,a1,b0,b2,b3,b1,h,j,k,i,g,n,p,q,o,s,a0,r,a,d,c,!1,b5,e)}, +Ja:function Ja(){}, +dE:function dE(a,b,c){this.a=a +this.b=b +this.$ti=c}, +auK:function auK(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){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 +_.go=m +_.RG=n +_.rx=o +_.ry=p +_.to=q +_.x2=r +_.xr=s +_.y1=a0 +_.y2=a1 +_.c_=a2 +_.bO=a3 +_.be=a4 +_.bj=a5 +_.bU=a6 +_.dd=a7 +_.D=a8 +_.N=a9 +_.U=b0 +_.aW=b1 +_.aT=b2 +_.ck=b3 +_.eA=b4 +_.a=b5}, +bk6:function bk6(a){this.a=a}, +bk7:function bk7(a,b){this.a=a +this.b=b}, +bk8:function bk8(a){this.a=a}, +bke:function bke(a,b){this.a=a +this.b=b}, +bkf:function bkf(a){this.a=a}, +bkg:function bkg(a,b){this.a=a +this.b=b}, +bkh:function bkh(a){this.a=a}, +bki:function bki(a,b){this.a=a +this.b=b}, +bkj:function bkj(a){this.a=a}, +bkk:function bkk(a,b){this.a=a +this.b=b}, +bkl:function bkl(a){this.a=a}, +bk9:function bk9(a,b){this.a=a +this.b=b}, +bka:function bka(a){this.a=a}, +bkb:function bkb(a,b){this.a=a +this.b=b}, +bkc:function bkc(a){this.a=a}, +bkd:function bkd(a,b){this.a=a +this.b=b}, +mu:function mu(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +U1:function U1(a,b){var _=this +_.d=a +_.a=_.e=null +_.b=b +_.c=null}, +aPE:function aPE(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +bF5:function bF5(){}, +bXp:function bXp(a){this.a=a}, +bXu:function bXu(a){this.a=a}, +bXt:function bXt(a){this.a=a}, +bXq:function bXq(a){this.a=a}, +bXr:function bXr(a){this.a=a}, +bXs:function bXs(a,b){this.a=a +this.b=b}, +bXv:function bXv(a){this.a=a}, +bXw:function bXw(a){this.a=a}, +bXx:function bXx(a,b){this.a=a +this.b=b}, +avg(a,b,c,d,e,f){return new A.z0(e,b,a,c,d,f,null)}, +cIC(a,b,c){var s=A.N(t.K,t.so) +a.d0(new A.bl1(c,new A.bl0(s,b))) +return s}, +cOp(a,b){var s,r=a.gai() +r.toString +t.x.a(r) +s=r.cf(0,b==null?null:b.gai()) +r=r.gu(0) +return A.io(s,new A.W(0,0,0+r.a,0+r.b))}, +Rp:function Rp(a,b){this.a=a +this.b=b}, +z0:function z0(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +bl0:function bl0(a,b){this.a=a +this.b=b}, +bl1:function bl1(a,b){this.a=a +this.b=b}, +Xw:function Xw(a,b){var _=this +_.d=a +_.e=null +_.f=!0 +_.a=null +_.b=b +_.c=null}, +c1N:function c1N(a,b){this.a=a +this.b=b}, +c1M:function c1M(){}, +c1J:function c1J(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=$}, +B5:function B5(a,b){var _=this +_.a=a +_.b=$ +_.c=null +_.d=b +_.f=_.e=$ +_.r=null +_.x=_.w=!1}, +c1K:function c1K(a){this.a=a}, +c1L:function c1L(a,b){this.a=a +this.b=b}, +Jf:function Jf(a,b){this.a=a +this.b=b}, +bl_:function bl_(){}, +bkZ:function bkZ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bkY:function bkY(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b2(a,b,c,d,e,f,g,h,i,j,k){return new A.b_(a,i,c,k,d,f,b,h,g,j,e)}, +b_:function b_(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 +_.Q=j +_.a=k}, +k:function k(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +DA(a,b,c){return new A.Jr(b,a,c)}, +qd(a,b){return new A.e_(new A.bmm(null,b,a),null)}, +bmn(a){var s,r,q,p,o,n,m=A.cIR(a).a5(a),l=m.a,k=l==null +if(!k&&m.b!=null&&m.c!=null&&m.d!=null&&m.e!=null&&m.f!=null&&m.ghn(0)!=null&&m.x!=null)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.B +o=m.ghn(0) +if(o==null)o=B.j0.ghn(0) +n=m.w +if(n==null)n=null +l=m.rn(m.x===!0,p,k,r,o,q,n,l,s)}return l}, +cIR(a){var s=a.a0(t.Oh),r=s==null?null:s.w +return r==null?B.j0:r}, +Jr:function Jr(a,b,c){this.w=a +this.b=b +this.a=c}, +bmm:function bmm(a,b,c){this.a=a +this.b=b +this.c=c}, +z2(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.av(r,q?i:b.a,c) +p=s?i:a.b +p=A.av(p,q?i:b.b,c) +o=s?i:a.c +o=A.av(o,q?i:b.c,c) +n=s?i:a.d +n=A.av(n,q?i:b.d,c) +m=s?i:a.e +m=A.av(m,q?i:b.e,c) +l=s?i:a.f +l=A.ai(l,q?i:b.f,c) +k=s?i:a.ghn(0) +k=A.av(k,q?i:b.ghn(0),c) +j=s?i:a.w +j=A.ddn(j,q?i:b.w,c) +if(c<0.5)s=s?i:a.x +else s=q?i:b.x +return new A.dW(r,p,o,n,m,l,k,j,s)}, +dW:function dW(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}, +aQ4:function aQ4(){}, +GL(a,b){var s=A.cGv(a),r=A.cG(a,B.ev) +r=r==null?null:r.b +if(r==null)r=1 +return new A.Js(s,r,A.E3(a),A.fq(a),b,A.bL())}, +cTP(a,b){var s,r={},q=A.GL(b,null),p=new A.ak($.at,t.W),o=new A.aI(p,t.gR),n=a.a5(q) +r.a=null +s=new A.kh(new A.ctf(r,o,n),null,new A.ctg(r,o,n,null)) +r.a=s +n.a3(0,s) +return p}, +cxn(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.z4(j,h,l,d,p,i,b,null,f,c,g,a,n,!1,o,e,k)}, +ctf:function ctf(a,b,c){this.a=a +this.b=b +this.c=c}, +cte:function cte(a,b){this.a=a +this.b=b}, +ctg:function ctg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +z4:function z4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){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 +_.cx=o +_.cy=p +_.a=q}, +afa:function afa(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}, +c2_:function c2_(a){this.a=a}, +c1Z:function c1Z(a,b,c){this.a=a +this.b=b +this.c=c}, +c21:function c21(a,b,c){this.a=a +this.b=b +this.c=c}, +c20:function c20(a,b){this.a=a +this.b=b}, +c22:function c22(a){this.a=a}, +c23:function c23(a){this.a=a}, +c24:function c24(a){this.a=a}, +b_M:function b_M(){}, +d4f(a,b){return new A.yt(a,b)}, +amZ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var s,r +if(f==null)s=null +else s=f +if(o!=null||i!=null){r=d==null?null:d.ZG(i,o) +if(r==null)r=A.fH(i,o)}else r=d +return new A.ZU(b,a,l,s,h,r,j,m,n,c,e,g,k,null)}, +cvj(a,b,c,d,e){return new A.a_0(a,d,e,b,c,null,null)}, +cEN(a,b,c,d,e){return new A.a_2(b,e,a,c,d,null,null)}, +cvk(a,b,c,d){return new A.a_4(a,d,b,c,null,null)}, +jF(a,b,c,d){return new A.ZX(a,d,b,c,null,null)}, +BQ(a,b,c,d){return new A.H8(a,d,b,c,null,null)}, +Hu:function Hu(a,b){this.a=a +this.b=b}, +yt:function yt(a,b){this.a=a +this.b=b}, +a2n:function a2n(a,b){this.a=a +this.b=b}, +yE:function yE(a,b){this.a=a +this.b=b}, +Hs:function Hs(a,b){this.a=a +this.b=b}, +ao9:function ao9(a,b){this.a=a +this.b=b}, +Kk:function Kk(a,b){this.a=a +this.b=b}, +wT:function wT(a,b){this.a=a +this.b=b}, +avX:function avX(){}, +RF:function RF(){}, +bng:function bng(a){this.a=a}, +bnf:function bnf(a){this.a=a}, +bne:function bne(a,b){this.a=a +this.b=b}, +Hb:function Hb(){}, +b3N:function b3N(){}, +ZU:function ZU(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=i +_.ay=j +_.c=k +_.d=l +_.e=m +_.a=n}, +aKt:function aKt(a,b,c){var _=this +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bQW:function bQW(){}, +bQX:function bQX(){}, +bQY:function bQY(){}, +bQZ:function bQZ(){}, +bR_:function bR_(){}, +bR0:function bR0(){}, +bR1:function bR1(){}, +bR2:function bR2(){}, +ZY:function ZY(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +aKz:function aKz(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bRa:function bRa(){}, +a_0:function a_0(a,b,c,d,e,f,g){var _=this +_.r=a +_.w=b +_.x=c +_.c=d +_.d=e +_.e=f +_.a=g}, +aKB:function aKB(a,b,c){var _=this +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bRf:function bRf(){}, +bRg:function bRg(){}, +bRh:function bRh(){}, +bRi:function bRi(){}, +bRj:function bRj(){}, +bRk:function bRk(){}, +a_2:function a_2(a,b,c,d,e,f,g){var _=this +_.r=a +_.w=b +_.x=c +_.c=d +_.d=e +_.e=f +_.a=g}, +aKD:function aKD(a,b,c){var _=this +_.z=null +_.e=_.d=_.Q=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bRm:function bRm(){}, +a_1:function a_1(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +aKC:function aKC(a,b,c){var _=this +_.z=null +_.e=_.d=_.Q=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bRl:function bRl(){}, +a_4:function a_4(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +aKG:function aKG(a,b,c){var _=this +_.z=null +_.e=_.d=_.Q=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bRn:function bRn(){}, +ZX:function ZX(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +aKy:function aKy(a,b,c){var _=this +_.z=null +_.e=_.d=_.Q=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bR9:function bR9(){}, +H8:function H8(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +aKv:function aKv(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bR5:function bR5(){}, +ZZ:function ZZ(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}, +aKA:function aKA(a,b,c){var _=this +_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bRb:function bRb(){}, +bRc:function bRc(){}, +bRd:function bRd(){}, +bRe:function bRe(){}, +XB:function XB(){}, +d8m(a,b,c,d){var s=a.kX(d) +if(s==null)return +c.push(s) +d.a(s.gb7()) +return}, +bC(a,b,c){var s,r,q,p,o,n +if(b==null)return a.a0(c) +s=A.a([],t.Fa) +A.d8m(a,b,s,c) +if(s.length===0)return null +r=B.b.gP(s) +for(q=s.length,p=0;pMath.abs(s.a))s=new A.j(n,s.b) +if(Math.abs(o)>Math.abs(s.b))s=new A.j(s.a,o)}return A.cB0(s)}, +cB0(a){return new A.j(A.pO(B.e.aZ(a.a,9)),A.pO(B.e.aZ(a.b,9)))}, +dm3(a,b){if(a.l(0,b))return null +return Math.abs(b.a-a.a)>Math.abs(b.b-a.b)?B.a_:B.v}, +a4y:function a4y(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.x=b +_.z=c +_.Q=d +_.ax=e +_.ay=f +_.db=g +_.a=h}, +afu:function afu(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 +_.eH$=c +_.b5$=d +_.a=null +_.b=e +_.c=null}, +c31:function c31(){}, +aQs:function aQs(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aH0:function aH0(a,b){var _=this +_.a=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +aeY:function aeY(a,b){this.a=a +this.b=b}, +bwA:function bwA(a,b){this.a=a +this.b=b}, +al3:function al3(){}, +awm:function awm(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.a=e}, +boy:function boy(a){this.a=a}, +cRb(a,b,c,d){var s=new A.dl(b,c,"widgets library",a,d,!1) +A.fs(s) +return s}, +yk:function yk(){}, +XG:function XG(a,b,c){var _=this +_.c=_.b=_.a=_.ch=_.ax=_.k4=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1 +_.$ti=c}, +c3i:function c3i(a,b){this.a=a +this.b=b}, +c3j:function c3j(){}, +c3k:function c3k(){}, +qD:function qD(){}, +fV:function fV(a,b){this.c=a +this.a=b}, +ahA:function ahA(a,b,c,d,e){var _=this +_.aao$=a +_.WC$=b +_.azp$=c +_.k1$=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}, +b0g:function b0g(){}, +b0h:function b0h(){}, +atU(a){return new A.a36(a,0,!0,null,null,null,A.a([],t.ZP),$.ae())}, +bp6:function bp6(){}, +bp7:function bp7(a){this.a=a}, +a36:function a36(a,b,c,d,e,f,g,h){var _=this +_.as=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +IW:function IW(a,b,c,d,e,f,g){var _=this +_.r=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g}, +NI:function NI(a,b,c,d,e,f,g){var _=this +_.k3=0 +_.k4=a +_.ok=null +_.r=b +_.w=c +_.x=d +_.y=e +_.Q=_.z=null +_.as=0 +_.ax=_.at=null +_.ay=!1 +_.ch=!0 +_.CW=!1 +_.cx=null +_.cy=!1 +_.dx=_.db=null +_.dy=f +_.fr=null +_.k2$=0 +_.k3$=g +_.ok$=_.k4$=0 +_.p1$=!1}, +aeH:function aeH(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.ax=a +_.c=b +_.d=c +_.e=d +_.f=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.a=l}, +aeI:function aeI(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.e=_.d=null +_.f=$ +_.r=a +_.w=$ +_.y=_.x=null +_.z=b +_.Q=c +_.as=d +_.at=e +_.ax=!1 +_.cx=_.CW=_.ch=_.ay=null +_.eb$=f +_.jX$=g +_.um$=h +_.hH$=i +_.ke$=j +_.eH$=k +_.b5$=l +_.a=null +_.b=m +_.c=null}, +atV:function atV(a){this.a=a}, +a50:function a50(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.as=j +_.ax=k +_.a=l}, +afH:function afH(a){var _=this +_.d=0 +_.a=_.e=null +_.b=a +_.c=null}, +c3U:function c3U(a){this.a=a}, +a5_:function a5_(a,b,c,d){var _=this +_.k4=a +_.ok=b +_.c=_.b=_.a=_.ch=_.ax=null +_.d=$ +_.e=c +_.f=null +_.r=d +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +bpa:function bpa(a,b){this.a=a +this.b=b}, +bp8:function bp8(a,b,c){this.a=a +this.b=b +this.c=c}, +bp9:function bp9(a,b){this.a=a +this.b=b}, +bpb:function bpb(a){this.a=a}, +K5:function K5(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}, +dmP(a,b){var s,r,q,p,o,n,m,l,k={},j=t.u,i=t.z,h=A.N(j,i) +k.a=null +s=A.b9(j) +r=A.a([],t.aQ) +for(j=b.length,q=0;q>")),!1,i).bf(new A.cpK(k,h),t.e3)}, +cJt(a,b,c){var s=A.R(b.a0(t.Gk).r.a.d,!0,t.gu) +return new A.E2(c,s,a,null)}, +E3(a){var s=a.a0(t.Gk) +return s==null?null:s.r.f}, +dS(a,b,c){var s=a.a0(t.Gk) +return s==null?null:c.h("0?").a(J.aS(s.r.e,b))}, +Y5:function Y5(a,b){this.a=a +this.b=b}, +cpI:function cpI(a){this.a=a}, +cpJ:function cpJ(){}, +cpK:function cpK(a,b){this.a=a +this.b=b}, +iQ:function iQ(){}, +aZT:function aZT(){}, +ass:function ass(){}, +afI:function afI(a,b,c,d){var _=this +_.r=a +_.w=b +_.b=c +_.a=d}, +E2:function E2(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aR7:function aR7(a,b,c){var _=this +_.d=a +_.e=b +_.a=_.f=null +_.b=c +_.c=null}, +c3Z:function c3Z(a){this.a=a}, +c4_:function c4_(a,b){this.a=a +this.b=b}, +c3Y:function c3Y(a,b,c){this.a=a +this.b=b +this.c=c}, +d9t(a,b){var s +a.a0(t.bS) +s=A.d9u(a,b) +if(s==null)return null +a.QN(s,null) +return b.a(s.gb7())}, +d9u(a,b){var s,r,q,p=a.kX(b) +if(p==null)return null +s=a.kX(t.bS) +if(s!=null){r=s.d +r===$&&A.b() +q=p.d +q===$&&A.b() +q=r>q +r=q}else r=!1 +if(r)return null +return p}, +a5d(a,b){var s={} +s.a=null +a.t8(new A.bpY(s,b)) +s=s.a +if(s==null)s=null +else{s=s.k3 +s.toString}return b.h("0?").a(s)}, +a5e(a,b){var s={} +s.a=null +a.t8(new A.bpZ(s,b)) +s=s.a +if(s==null)s=null +else{s=s.k3 +s.toString}return b.h("0?").a(s)}, +bpW(a,b){var s={} +s.a=null +a.t8(new A.bpX(s,b)) +s=s.a +s=s==null?null:s.gai() +return b.h("0?").a(s)}, +bpY:function bpY(a,b){this.a=a +this.b=b}, +bpZ:function bpZ(a,b){this.a=a +this.b=b}, +bpX:function bpX(a,b){this.a=a +this.b=b}, +cJC(a,b){var s,r=b.a,q=a.a +if(rq?B.h.S(0,new A.j(q-r,0)):B.h}r=b.b +q=a.b +if(rq)s=s.S(0,new A.j(0,q-r))}return b.eD(s)}, +cJD(a,b,c){return new A.a5f(a,null,null,null,b,c)}, +u5:function u5(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aG8:function aG8(a,b){this.a=a +this.b=b}, +bLi:function bLi(){}, +K9:function K9(){this.b=this.a=null}, +bq2:function bq2(a,b){this.a=a +this.b=b}, +a5f:function a5f(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +a7G:function a7G(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aRb:function aRb(a,b,c){this.c=a +this.d=b +this.a=c}, +aNQ:function aNQ(a,b,c){this.b=a +this.c=b +this.a=c}, +aRa:function aRa(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +aUZ:function aUZ(a,b,c,d,e){var _=this +_.G=a +_.ac=b +_.aS=c +_.k1$=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}, +cJY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){return new A.a5E(n,d,p,m,q,l,r,o,!1,a,i,h,k,e,c,j,g,f)}, +rC(a,b,c){return new A.zk(b,a,c)}, +azi(a,b,c,d,e,f){return A.rC(a,A.bC(b,null,t.l).w.ade(c,d,e,f),null)}, +cxY(a){return new A.e_(new A.brz(a),null)}, +brx(a,b){return new A.e_(new A.bry(0,b,a),null)}, +cG(a,b){var s=A.bC(a,b,t.l) +return s==null?null:s.w}, +T7:function T7(a,b){this.a=a +this.b=b}, +kw:function kw(a,b){this.a=a +this.b=b}, +a5E:function a5E(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.a=a +_.b=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}, +brw:function brw(a){this.a=a}, +zk:function zk(a,b,c){this.w=a +this.b=b +this.a=c}, +brz:function brz(a){this.a=a}, +bry:function bry(a,b,c){this.a=a +this.b=b +this.c=c}, +bup:function bup(a,b){this.a=a +this.b=b}, +ag0:function ag0(a,b,c){this.c=a +this.e=b +this.a=c}, +aRo:function aRo(a){var _=this +_.a=_.e=_.d=null +_.b=a +_.c=null}, +c5Y:function c5Y(a,b){this.a=a +this.b=b}, +aZk:function aZk(){}, +b_U:function b_U(){}, +btl(a,b,c,d,e,f,g){return new A.azM(c,d,e,a,f,b,g,null)}, +cEM(a,b,c,d,e,f){return new A.an2(d,e,a,b,f,c,null)}, +aWh:function aWh(a,b,c){this.e=a +this.c=b +this.a=c}, +aV9:function aV9(a,b,c){var _=this +_.G=a +_.k1$=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}, +azM:function azM(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}, +btm:function btm(a,b){this.a=a +this.b=b}, +an2:function an2(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.x=d +_.y=e +_.c=f +_.a=g}, +WW:function WW(a,b,c,d,e,f,g,h,i){var _=this +_.be=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}, +aKN:function aKN(a){this.a=a}, +aRT:function aRT(a,b,c){this.c=a +this.d=b +this.a=c}, +a6c:function a6c(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +ajP:function ajP(a,b){this.a=a +this.b=b}, +cm7:function cm7(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d +_.c=_.b=null}, +cIB(a,b){return new A.Jg(b,a,null)}, +cyb(a,b,c,d,e,f,g,h,i,j,k,l){return new A.a6d(i,g,b,f,h,d,k,l,e,j,a,c)}, +cyc(a){return A.cN(a,!1).bAW(null)}, +cN(a,b){var s,r,q +if(a instanceof A.mz){s=a.k3 +s.toString +s=s instanceof A.nc}else s=!1 +if(s){s=a.k3 +s.toString +t.uK.a(s) +r=s}else r=null +if(b){q=a.bwl(t.uK) +r=q==null?r:q +s=r}else{if(r==null)r=a.wh(t.uK) +s=r}s.toString +return s}, +cKj(a){var s,r=a.k3 +r.toString +if(r instanceof A.nc)s=r +else s=null +if(s==null)s=a.wh(t.uK) +return s}, +daw(a,b){var s,r,q,p,o,n,m,l=null,k=A.a([],t.oP) +if(B.c.aC(b,"/")&&b.length>1){b=B.c.b0(b,1) +s=t.z +k.push(a.Tw("/",!0,l,s)) +r=b.split("/") +if(b.length!==0)for(q=r.length,p=0,o="";p=3}, +djb(a){return a.gaGR()}, +cOT(a){return new A.cdv(a)}, +cKi(a,b){var s,r,q,p +for(s=a.a,r=s.gYK(),q=r.length,p=0;p2?s[2]:null,B.yX) +case 1:s=s.hs(a,1)[1] +s.toString +t.pO.a(A.dbg(new A.b85(A.bZ(s)))) +return null}}, +Uv:function Uv(a,b){this.a=a +this.b=b}, +dG:function dG(){}, +bCF:function bCF(a){this.a=a}, +bCE:function bCE(a){this.a=a}, +nm:function nm(a,b){this.a=a +this.b=b}, +ne:function ne(){}, +wq:function wq(){}, +Jg:function Jg(a,b,c){this.f=a +this.b=b +this.a=c}, +A7:function A7(){}, +aH1:function aH1(){}, +asr:function asr(a){this.$ti=a}, +bcl:function bcl(a,b,c){this.a=a +this.b=b +this.c=c}, +a6d:function a6d(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 +_.z=h +_.Q=i +_.as=j +_.at=k +_.a=l}, +buz:function buz(){}, +lX:function lX(a,b){this.a=a +this.b=b}, +aSk:function aSk(a,b,c,d){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d}, +kx:function kx(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.x=_.w=null +_.y=!0 +_.z=!1}, +cdu:function cdu(a,b){this.a=a +this.b=b}, +cdt:function cdt(a){this.a=a}, +cdr:function cdr(){}, +cds:function cds(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +cdq:function cdq(a,b){this.a=a +this.b=b}, +cdv:function cdv(a){this.a=a}, +Gj:function Gj(){}, +XX:function XX(a,b){this.a=a +this.b=b}, +XW:function XW(a,b){this.a=a +this.b=b}, +agq:function agq(a,b){this.a=a +this.b=b}, +agr:function agr(a,b){this.a=a +this.b=b}, +aPQ:function aPQ(a,b){var _=this +_.a=a +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +nc:function nc(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 +_.eb$=j +_.jX$=k +_.um$=l +_.hH$=m +_.ke$=n +_.eH$=o +_.b5$=p +_.a=null +_.b=q +_.c=null}, +bus:function bus(a,b){this.a=a +this.b=b}, +buy:function buy(a){this.a=a}, +bur:function bur(){}, +but:function but(){}, +buu:function buu(a){this.a=a}, +buv:function buv(){}, +buw:function buw(){}, +buq:function buq(a){this.a=a}, +bux:function bux(a,b){this.a=a +this.b=b}, +ai3:function ai3(a,b){this.a=a +this.b=b}, +aVA:function aVA(){}, +aS1:function aS1(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=null}, +czK:function czK(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=null}, +aPR:function aPR(a){var _=this +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +c1P:function c1P(){}, +zx:function zx(a){this.a=a}, +c86:function c86(){}, +ags:function ags(){}, +agt:function agt(){}, +b_K:function b_K(){}, +a6e:function a6e(a,b,c){this.c=a +this.e=b +this.a=c}, +aSa:function aSa(a){var _=this +_.d=!0 +_.a=null +_.b=a +_.c=null}, +c85:function c85(a){this.a=a}, +c84:function c84(a){this.a=a}, +c83:function c83(a,b){this.a=a +this.b=b}, +wr(a,b,c){return new A.a6f(c,a,!0,null)}, +diB(a){return new A.n5(a)}, +cOD(a,b,c){return new A.agv(a,c,!0,null,null,b,A.a([],t.ZP),$.ae())}, +cz4(a){return new A.aEU(a,null,null)}, +a6f:function a6f(a,b,c,d){var _=this +_.r=a +_.w=b +_.y=c +_.a=d}, +T_:function T_(a,b){var _=this +_.d=a +_.a=_.f=_.e=null +_.b=b +_.c=null}, +buA:function buA(){}, +buB:function buB(a,b){this.a=a +this.b=b}, +XY:function XY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.p3=a +_.cx=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 +_.a=r}, +afj:function afj(a,b,c){this.f=a +this.b=b +this.a=c}, +aSb:function aSb(a,b,c,d,e,f,g,h,i){var _=this +_.r=a +_.w=b +_.x=c +_.a=d +_.b=e +_.c=f +_.d=g +_.e=h +_.f=i}, +c8a:function c8a(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=_.e=$ +_.r=e +_.w=null}, +c8d:function c8d(a,b){this.a=a +this.b=b}, +c8b:function c8b(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +c8e:function c8e(){}, +c8c:function c8c(a){this.a=a}, +agv:function agv(a,b,c,d,e,f,g,h){var _=this +_.as=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +c89:function c89(a){this.a=a}, +oU:function oU(a,b,c,d,e,f,g){var _=this +_.k3=a +_.k4=null +_.r=b +_.w=c +_.x=d +_.y=e +_.Q=_.z=null +_.as=0 +_.ax=_.at=null +_.ay=!1 +_.ch=!0 +_.CW=!1 +_.cx=null +_.cy=!1 +_.dx=_.db=null +_.dy=f +_.fr=null +_.k2$=0 +_.k3$=g +_.ok$=_.k4$=0 +_.p1$=!1}, +agu:function agu(a,b){this.a=a +this.b=b}, +c87:function c87(a,b,c){var _=this +_.r=a +_.c=$ +_.d=b +_.a=c +_.b=!1}, +c88:function c88(a,b,c,d){var _=this +_.r=a +_.w=b +_.c=$ +_.d=c +_.a=d +_.b=!1}, +aET:function aET(a){var _=this +_.a=0 +_.c=_.b=null +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +pv:function pv(a,b,c){this.e=a +this.c=b +this.a=c}, +aDb:function aDb(a,b,c){var _=this +_.be=a +_.k1$=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}, +aEU:function aEU(a,b,c){this.e=a +this.c=b +this.a=c}, +aDc:function aDc(a,b){var _=this +_.bj=_.be=null +_.bU=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}, +aA4:function aA4(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}, +a8a:function a8a(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.hH=a +_.ha=b +_.hw=c +_.os=_.jn=$ +_.mg=!1 +_.D=d +_.N=e +_.a4=f +_.ag=g +_.aq=null +_.aJ=h +_.U=i +_.aW=j +_.cT$=k +_.Y$=l +_.d7$=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}, +ahR:function ahR(){}, +l1:function l1(){}, +ff:function ff(a,b,c,d){var _=this +_.d=a +_.b=b +_.a=c +_.$ti=d}, +agx:function agx(a,b,c){var _=this +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1 +_.$ti=c}, +qi:function qi(){}, +b0_:function b0_(){}, +a6z:function a6z(a,b){this.c=a +this.a=b}, +a6B(a,b,c,d,e,f){return new A.aAw(f,a,e,c,d,b,null)}, +aAx:function aAx(a,b){this.a=a +this.b=b}, +aAw:function aAw(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.c=f +_.a=g}, +xn:function xn(a,b,c){this.dJ$=a +this.a7$=b +this.a=c}, +Yk:function Yk(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.cT$=h +_.Y$=i +_.d7$=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}, +cce:function cce(a,b){this.a=a +this.b=b}, +b0n:function b0n(){}, +b0o:function b0o(){}, +rK(a,b,c,d){return new A.zF(a,!1,c,b,new A.bm(null,$.ae(),t.fu),new A.aR(null,t.af))}, +dj7(a){return a.ar(0)}, +cKv(a,b,c){return new A.a6C(b,c,a,null)}, +dj6(a,b){var s,r=a.a0(t.Ar) +if(r!=null)return r +s=A.a([A.vT("No Overlay widget found."),A.cJ(A.I(a.gb7()).k(0)+" widgets require an Overlay widget ancestor.\nAn overlay lets widgets float on top of other widget children."),A.ID("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.qe) +B.b.L(s,a.btE(B.buw)) +throw A.d(A.Dr(s))}, +zF:function zF(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=null +_.r=f +_.w=!1}, +bvp:function bvp(a){this.a=a}, +Ba:function Ba(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +Y_:function Y_(a){var _=this +_.d=$ +_.e=null +_.r=_.f=$ +_.a=null +_.b=a +_.c=null}, +c8W:function c8W(){}, +T9:function T9(a,b,c){this.c=a +this.d=b +this.a=c}, +Tb:function Tb(a,b,c,d){var _=this +_.d=a +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +bvx:function bvx(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bvw:function bvw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bvy:function bvy(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bvv:function bvv(){}, +bvu:function bvu(){}, +ajB:function ajB(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aYl:function aYl(a,b,c){var _=this +_.k4=$ +_.ok=a +_.c=_.b=_.a=_.ch=_.ax=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +O5:function O5(){}, +ccB:function ccB(a){this.a=a}, +YW:function YW(a,b,c){var _=this +_.y=_.x=_.w=_.r=_.f=_.e=_.at=null +_.dJ$=a +_.a7$=b +_.a=c}, +Gs:function Gs(a,b,c,d,e,f,g,h){var _=this +_.D=null +_.N=a +_.a4=b +_.ag=c +_.aq=!1 +_.aJ=d +_.cT$=e +_.Y$=f +_.d7$=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}, +ccF:function ccF(a){this.a=a}, +ccD:function ccD(a){this.a=a}, +ccE:function ccE(a){this.a=a}, +ccC:function ccC(a){this.a=a}, +aAy:function aAy(a){this.b=this.a=null +this.c=a}, +a6C:function a6C(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aSM:function aSM(a){var _=this +_.d=null +_.e=!0 +_.a=_.f=null +_.b=a +_.c=null}, +c8X:function c8X(a,b){this.a=a +this.b=b}, +c8Z:function c8Z(a,b){this.a=a +this.b=b}, +c8Y:function c8Y(a){this.a=a}, +Gl:function Gl(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.op$=_.n5$=_.n4$=_.e=_.d=null}, +O4:function O4(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +Y0:function Y0(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aSL:function aSL(a,b){var _=this +_.c=_.b=_.a=_.ch=_.ax=_.ok=_.k4=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +aNo:function aNo(a,b){this.c=a +this.a=b}, +Gr:function Gr(a,b,c){var _=this +_.G=a +_.ac=!1 +_.aS=!0 +_.en=_.cZ=!1 +_.op$=_.n5$=_.n4$=null +_.k1$=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}, +cc1:function cc1(a){this.a=a}, +cc2:function cc2(a){this.a=a}, +ahB:function ahB(a,b){var _=this +_.G=null +_.k1$=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}, +aSN:function aSN(){}, +b0c:function b0c(){}, +b0d:function b0d(){}, +alo:function alo(){}, +b0A:function b0A(){}, +cIy(a,b,c){return new A.a3H(a,c,b,null)}, +cOo(a,b,c){var s,r,q=null,p=t.Y,o=new A.aP(0,0,p),n=new A.aP(0,0,p),m=new A.aeZ(B.qH,o,n,b,a,$.ae()),l=A.bQ(q,q,q,1,q,c) +l.cY() +s=l.f0$ +s.b=!0 +s.a.push(m.ga1M()) +m.b!==$&&A.ck() +m.b=l +r=A.cI(B.ft,l,q) +r.a.a3(0,m.gip()) +t.o.a(r) +p=p.h("aB") +m.r!==$&&A.ck() +m.r=new A.aB(r,o,p) +m.x!==$&&A.ck() +m.x=new A.aB(r,n,p) +p=c.Md(m.gbjJ()) +m.y!==$&&A.ck() +m.y=p +return m}, +a3H:function a3H(a,b,c,d){var _=this +_.e=a +_.f=b +_.w=c +_.a=d}, +af_:function af_(a,b,c,d){var _=this +_.r=_.f=_.e=_.d=null +_.w=a +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null}, +Xv:function Xv(a,b){this.a=a +this.b=b}, +aeZ:function aeZ(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 +_.k2$=0 +_.k3$=f +_.ok$=_.k4$=0 +_.p1$=!1}, +c17:function c17(a){this.a=a}, +aPG:function aPG(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +aXg:function aXg(a,b){this.a=a +this.b=b}, +aaf:function aaf(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +aj2:function aj2(a,b,c){var _=this +_.d=$ +_.f=_.e=null +_.r=0 +_.w=!0 +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +cg3:function cg3(a,b,c){this.a=a +this.b=b +this.c=c}, +YO:function YO(a,b){this.a=a +this.b=b}, +aj1:function aj1(a,b,c,d){var _=this +_.b=_.a=$ +_.c=a +_.d=b +_.e=0 +_.f=c +_.k2$=0 +_.k3$=d +_.ok$=_.k4$=0 +_.p1$=!1}, +Es:function Es(a,b){this.a=a +this.c=!0 +this.kN$=b}, +agA:function agA(){}, +al_:function al_(){}, +alA:function alA(){}, +cKz(a,b){var s=a.gb7() +return!(s instanceof A.Tf)}, +bwb(a){var s=a.Ci(t.Mf) +return s==null?null:s.d}, +aiX:function aiX(a){this.a=a}, +qt:function qt(){this.a=null}, +bwa:function bwa(a){this.a=a}, +Tf:function Tf(a,b,c){this.c=a +this.d=b +this.a=c}, +KO(a,b){return new A.aAB(a,b,0,!0,null,null,null,A.a([],t.ZP),$.ae())}, +aAD(a,b,c,d,e,f,g,h,i,j,k,l){var s=b==null?$.cDr():b +return new A.Tg(l,!1,s,i,!0,f,new A.pu(c,d,!0,!0,!0,0,A.Ou(),null),B.m,a,k,g,e)}, +aAB:function aAB(a,b,c,d,e,f,g,h,i){var _=this +_.as=a +_.ax=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.k2$=0 +_.k3$=i +_.ok$=_.k4$=0 +_.p1$=!1}, +KP:function KP(a,b,c,d,e,f,g){var _=this +_.r=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g}, +Gm:function Gm(a,b,c,d,e,f,g,h,i){var _=this +_.aq=a +_.aJ=null +_.U=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 +_.k2$=0 +_.k3$=i +_.ok$=_.k4$=0 +_.p1$=!1}, +aeS:function aeS(a,b){this.b=a +this.a=b}, +Te:function Te(a){this.a=a}, +Tg:function Tg(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.as=i +_.at=j +_.ax=k +_.a=l}, +aSU:function aSU(a){var _=this +_.d=0 +_.a=null +_.b=a +_.c=null}, +c9j:function c9j(a){this.a=a}, +c9k:function c9k(a,b){this.a=a +this.b=b}, +cQ_(a,b,c,d){return d}, +cKy(a,b,c){var s=null,r=A.a([],t.Zt),q=$.at,p=A.ms(B.bO),o=A.a([],t.wi),n=$.ae(),m=$.at,l=c.h("ak<0?>"),k=c.h("aI<0?>") +return new A.a6G(b,a,!1,!0,!1,s,s,r,A.b9(t.kj),new A.aR(s,c.h("aR>")),new A.aR(s,t.A),new A.qt(),s,0,new A.aI(new A.ak(q,c.h("ak<0?>")),c.h("aI<0?>")),p,o,B.ff,new A.bm(s,n,t.XR),new A.aI(new A.ak(m,l),k),new A.aI(new A.ak(m,l),k),c.h("a6G<0>"))}, +oi:function oi(){}, +a6G:function a6G(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){var _=this +_.en=a +_.hT=b +_.a4=c +_.ag=d +_.aq=e +_.go=f +_.id=g +_.k1=!1 +_.k3=_.k2=null +_.k4=h +_.ok=i +_.p1=j +_.p2=k +_.p3=l +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=m +_.pk$=n +_.Q=o +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=p +_.CW=!0 +_.cy=_.cx=null +_.f=q +_.a=null +_.b=r +_.c=s +_.d=a0 +_.e=a1 +_.$ti=a2}, +bs_:function bs_(){}, +bxv:function bxv(){}, +aso:function aso(a,b){this.a=a +this.d=b}, +cxj(a){return new A.a3X(a,null)}, +dlt(a){$.cW.xr$.push(new A.cp0(a))}, +a3X:function a3X(a,b){this.c=a +this.a=b}, +a79:function a79(a,b){this.a=a +this.c=b}, +a7a:function a7a(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +agK:function agK(a){var _=this +_.e=_.d=null +_.f=!1 +_.a=_.w=_.r=null +_.b=a +_.c=null}, +c9F:function c9F(a){this.a=a}, +c9E:function c9E(a){this.a=a}, +Tz:function Tz(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d}, +aT9:function aT9(a,b,c,d){var _=this +_.eK=a +_.G=b +_.k1$=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}, +c9G:function c9G(a){this.a=a}, +aT8:function aT8(a,b,c){this.e=a +this.c=b +this.a=c}, +cp0:function cp0(a){this.a=a}, +zT:function zT(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aTJ:function aTJ(a){var _=this +_.d=null +_.e=$ +_.a=null +_.b=a +_.c=null}, +rP:function rP(a,b,c){this.c=a +this.d=b +this.a=c}, +cyz(a,b,c){return new A.TJ(c,B.v,a,b,null)}, +cL2(a){return new A.TJ(null,null,B.blp,a,null)}, +cL3(a,b){var s,r=a.Ci(t.bb) +if(r==null)return!1 +s=A.um(a).v9(a) +if(r.w.p(0,s))return r.r===b +return!1}, +EK(a){var s=a.a0(t.bb) +return s==null?null:s.f}, +TJ:function TJ(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +wD(a){var s=a.a0(t.lQ) +return s==null?null:s.f}, +abH(a,b){return new A.Ne(a,b,null)}, +EY:function EY(a,b,c){this.c=a +this.d=b +this.a=c}, +aVB:function aVB(a,b,c,d,e,f){var _=this +_.eb$=a +_.jX$=b +_.um$=c +_.hH$=d +_.ke$=e +_.a=null +_.b=f +_.c=null}, +Ne:function Ne(a,b,c){this.f=a +this.b=b +this.a=c}, +a8B:function a8B(a,b,c){this.c=a +this.d=b +this.a=c}, +ai_:function ai_(a){var _=this +_.d=null +_.e=!1 +_.r=_.f=null +_.w=!1 +_.a=null +_.b=a +_.c=null}, +cdl:function cdl(a){this.a=a}, +cdk:function cdk(a,b){this.a=a +this.b=b}, +it:function it(){}, +pr:function pr(){}, +bC7:function bC7(a,b){this.a=a +this.b=b}, +cnW:function cnW(){}, +b0C:function b0C(){}, +cV:function cV(){}, +qY:function qY(){}, +ahX:function ahX(){}, +a8u:function a8u(a,b,c){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1 +_.$ti=c}, +LI:function LI(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +a8v:function a8v(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +aDy:function aDy(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=b +_.ok$=_.k4$=0 +_.p1$=!1}, +dcB(a,b){return new A.ot(b,a)}, +dcz(){return new A.aDE(new A.bN(A.a([],t.Zt),t.Mv))}, +cnX:function cnX(){}, +ot:function ot(a,b){this.b=a +this.c=b}, +Uw:function Uw(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f +_.$ti=g}, +bCv:function bCv(a,b){this.a=a +this.b=b}, +Yq:function Yq(a,b,c,d,e,f,g,h){var _=this +_.e=_.d=null +_.f=a +_.r=$ +_.w=!1 +_.eb$=b +_.jX$=c +_.um$=d +_.hH$=e +_.ke$=f +_.a=null +_.b=g +_.c=null +_.$ti=h}, +cdE:function cdE(a){this.a=a}, +cdF:function cdF(a){this.a=a}, +cdD:function cdD(a){this.a=a}, +cdB:function cdB(a,b,c){this.a=a +this.b=b +this.c=c}, +cdy:function cdy(a){this.a=a}, +cdz:function cdz(a,b){this.a=a +this.b=b}, +cdC:function cdC(){}, +cdA:function cdA(){}, +aVN:function aVN(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.b=f +_.a=g}, +tf:function tf(){}, +bTS:function bTS(a){this.a=a}, +any:function any(){}, +b5p:function b5p(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aDE:function aDE(a){this.b=$ +this.a=a}, +aDM:function aDM(){}, +Ux:function Ux(){}, +aDN:function aDN(){}, +aVz:function aVz(a){var _=this +_.y=null +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +aVG:function aVG(){}, +Z5:function Z5(){}, +wp(a,b){var s=a.a0(t.Yf),r=s==null?null:s.x +return b.h("iA<0>?").a(r)}, +Ta:function Ta(){}, +hw:function hw(){}, +bNx:function bNx(a,b,c){this.a=a +this.b=b +this.c=c}, +bNv:function bNv(a,b,c){this.a=a +this.b=b +this.c=c}, +bNw:function bNw(a,b,c){this.a=a +this.b=b +this.c=c}, +bNu:function bNu(a,b){this.a=a +this.b=b}, +ax5:function ax5(){}, +aNB:function aNB(a,b){this.e=a +this.a=b +this.b=null}, +agd:function agd(a,b,c,d,e,f){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.b=e +_.a=f}, +XT:function XT(a,b,c){this.c=a +this.a=b +this.$ti=c}, +mI:function mI(a,b,c,d){var _=this +_.d=null +_.e=$ +_.f=a +_.r=b +_.a=null +_.b=c +_.c=null +_.$ti=d}, +c7o:function c7o(a){this.a=a}, +c7s:function c7s(a){this.a=a}, +c7t:function c7t(a){this.a=a}, +c7r:function c7r(a){this.a=a}, +c7p:function c7p(a){this.a=a}, +c7q:function c7q(a){this.a=a}, +iA:function iA(){}, +bts:function bts(a,b){this.a=a +this.b=b}, +btt:function btt(){}, +btq:function btq(a,b){this.a=a +this.b=b}, +btr:function btr(){}, +a7e:function a7e(){}, +U_:function U_(){}, +NR:function NR(){}, +iX:function iX(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}, +cLY(a,b,c,d,e){var s=a!=null&&a!==0,r=d==null?null:0 +return new A.bDM(b,e,a,d,c.a,s,r,c.d,c)}, +cF3(a,b,c,d){var s=new A.OX(d,a) +s.a18(a,b,c,d) +return s}, +cHG(a,b,c,d,e,f){var s,r,q=new A.QB(a) +q.c=new A.aI(new A.ak($.at,t.W),t.gR) +s=A.b3O("DrivenScrollActivity",d,f) +s.cY() +r=s.em$ +r.b=!0 +r.a.push(q.ga6e()) +s.z=B.b_ +s.kn(e,b,c).a.a.j6(q.ga5K()) +q.d!==$&&A.ck() +q.d=s +return q}, +ov:function ov(){}, +n5:function n5(a){this.a=a +this.b=!1}, +Jh:function Jh(a,b){this.c=a +this.a=b +this.b=!1}, +bDM:function bDM(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}, +Io:function Io(a,b){this.c=a +this.a=b +this.b=!1}, +OX:function OX(a,b){var _=this +_.c=$ +_.d=a +_.a=b +_.b=!1}, +QB:function QB(a){var _=this +_.d=_.c=$ +_.a=a +_.b=!1}, +a8V:function a8V(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bDI:function bDI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bDH:function bDH(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aE2(a,b){return new A.a8W(a,b,null)}, +um(a){var s=a.a0(t.Cy),r=s==null?null:s.f +return r==null?B.a5n:r}, +aE1:function aE1(){}, +bDJ:function bDJ(){}, +bDK:function bDK(){}, +bDL:function bDL(){}, +cne:function cne(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}, +a8W:function a8W(a,b,c){this.f=a +this.b=b +this.a=c}, +fh:function fh(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.k2$=0 +_.k3$=g +_.ok$=_.k4$=0 +_.p1$=!1}, +cQD(a,b){return b}, +Mk(a,b,c,d){return new A.a9P(!0,c,!0,a,A.a1([null,0],t.LO,t.S))}, +Fl:function Fl(){}, +Yr:function Yr(a){this.a=a}, +pu:function pu(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}, +a9P:function a9P(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.f=d +_.r=e}, +YC:function YC(a,b){this.c=a +this.a=b}, +aiw:function aiw(a,b){var _=this +_.f=_.e=_.d=null +_.r=!1 +_.eW$=a +_.a=null +_.b=b +_.c=null}, +ceu:function ceu(a,b){this.a=a +this.b=b}, +b0K:function b0K(){}, +l8:function l8(){}, +a38:function a38(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aP2:function aP2(){}, +cyS(a,b,c,d,e){var s=new A.no(c,e,d,a,0) +if(b!=null)s.kN$=b +return s}, +drC(a){return a.kN$===0}, +nv:function nv(){}, +aHG:function aHG(){}, +ow:function ow(){}, +UJ:function UJ(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.kN$=d}, +no:function no(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.kN$=e}, +u9:function u9(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.f=c +_.a=d +_.b=e +_.kN$=f}, +wG:function wG(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.kN$=d}, +abK:function abK(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.kN$=d}, +aig:function aig(){}, +aif:function aif(a,b,c){this.f=a +this.b=b +this.a=c}, +Gf:function Gf(a){var _=this +_.a=a +_.op$=_.n5$=_.n4$=null}, +a8Y:function a8Y(a,b){this.c=a +this.a=b}, +a8Z:function a8Z(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +bDN:function bDN(a){this.a=a}, +bDO:function bDO(a){this.a=a}, +bDP:function bDP(a){this.a=a}, +d2g(a,b,c){var s,r +if(a>0){s=a/c +if(b"))}, +cAO(a,b){var s=$.an.U$.z.i(0,a).gai() +s.toString +return t.x.a(s).hZ(b)}, +a9_:function a9_(a,b){this.a=a +this.b=b}, +UK:function UK(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 +_.k2$=0 +_.k3$=o +_.ok$=_.k4$=0 +_.p1$=!1}, +bE4:function bE4(){}, +U3:function U3(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}, +wA:function wA(a,b,c,d,e){var _=this +_.w=_.r=_.f=_.e=_.d=null +_.y=_.x=$ +_.z=a +_.as=_.Q=!1 +_.at=$ +_.eH$=b +_.b5$=c +_.a=null +_.b=d +_.c=null +_.$ti=e}, +bzL:function bzL(a){this.a=a}, +bzH:function bzH(a){this.a=a}, +bzI:function bzI(a){this.a=a}, +bzE:function bzE(a){this.a=a}, +bzF:function bzF(a){this.a=a}, +bzG:function bzG(a){this.a=a}, +bzJ:function bzJ(a){this.a=a}, +bzK:function bzK(a){this.a=a}, +bzM:function bzM(a){this.a=a}, +bzN:function bzN(a){this.a=a}, +xx:function xx(a,b,c,d,e,f,g,h,i,j){var _=this +_.e8=a +_.k2=!1 +_.dd=_.e7=_.bU=_.bj=_.be=_.bO=_.c_=_.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}, +xy:function xy(a,b,c,d,e,f,g,h,i,j){var _=this +_.eT=a +_.aJ=_.aq=_.ag=_.a4=_.N=_.D=_.dd=_.e7=_.bU=_.bj=_.be=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}, +Yd:function Yd(){}, +bEx(a){var s +switch(A.bL().a){case 0:case 1:case 3:if(a<=2)s=a +else{s=B.d.M(a,2) +if(s===0)s=2}return s +case 2:case 4:case 5:return Math.min(a,2)}}, +dai(a,b){var s,r=a.b,q=b.b,p=r-q +if(!(p<3&&a.d-b.d>-3))s=q-r<3&&b.d-a.d>-3 +else s=!0 +if(s)return 0 +if(Math.abs(p)>3)return r>q?1:-1 +return a.d>b.d?1:-1}, +dah(a,b){var s=a.a,r=b.a,q=s-r +if(q<1e-10&&a.c-b.c>-1e-10)return-1 +if(r-s<1e-10&&b.c-a.c>-1e-10)return 1 +if(Math.abs(q)>1e-10)return s>r?1:-1 +return a.c>b.c?1:-1}, +a98:function a98(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +LY:function LY(a,b,c,d,e,f,g){var _=this +_.d=$ +_.e=a +_.f=null +_.r=b +_.w=c +_.x=d +_.y=e +_.ax=_.at=_.as=_.Q=_.z=null +_.ay=!1 +_.ch=null +_.CW=!1 +_.cy=_.cx=$ +_.dx=_.db=null +_.dy=f +_.a=null +_.b=g +_.c=null}, +bEI:function bEI(a){this.a=a}, +bEJ:function bEJ(a){this.a=a}, +bEH:function bEH(a){this.a=a}, +bEy:function bEy(a){this.a=a}, +bEz:function bEz(a){this.a=a}, +bEA:function bEA(a){this.a=a}, +bEB:function bEB(a){this.a=a}, +bED:function bED(a,b){this.a=a +this.b=b}, +bEC:function bEC(a){this.a=a}, +bEE:function bEE(a,b){this.a=a +this.b=b}, +bEF:function bEF(a){this.a=a}, +bEG:function bEG(a){this.a=a}, +agw:function agw(){}, +aW8:function aW8(a,b){this.r=a +this.a=b +this.b=null}, +aMx:function aMx(a,b){this.r=a +this.a=b +this.b=null}, +B2:function B2(a,b,c,d){var _=this +_.r=a +_.w=b +_.a=c +_.b=null +_.$ti=d}, +v5:function v5(a,b,c,d){var _=this +_.r=a +_.w=b +_.a=c +_.b=null +_.$ti=d}, +aee:function aee(a,b,c){var _=this +_.r=a +_.a=b +_.b=null +_.$ti=c}, +ais:function ais(a,b,c,d,e,f){var _=this +_.dx=a +_.dy=b +_.fx=_.fr=null +_.b=c +_.d=_.c=-1 +_.w=_.r=_.f=_.e=null +_.z=_.y=_.x=!1 +_.Q=d +_.as=!1 +_.at=e +_.k2$=0 +_.k3$=f +_.ok$=_.k4$=0 +_.p1$=!1 +_.a=null}, +cen:function cen(a){this.a=a}, +ceo:function ceo(a){this.a=a}, +SU:function SU(){}, +btQ:function btQ(a){this.a=a}, +btR:function btR(a,b,c){this.a=a +this.b=b +this.c=c}, +btS:function btS(){}, +btO:function btO(a,b){this.a=a +this.b=b}, +btP:function btP(a){this.a=a}, +btT:function btT(a,b){this.a=a +this.b=b}, +btU:function btU(a){this.a=a}, +aRZ:function aRZ(){}, +aWc:function aWc(){}, +UO(a){var s=a.a0(t.Wu) +return s==null?null:s.f}, +cM0(a,b){return new A.UQ(b,a,null)}, +M_:function M_(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aWf:function aWf(a,b,c,d){var _=this +_.d=a +_.Gs$=b +_.Cb$=c +_.a=null +_.b=d +_.c=null}, +UQ:function UQ(a,b,c){this.f=a +this.b=b +this.a=c}, +aEe:function aEe(){}, +b0J:function b0J(){}, +alv:function alv(){}, +a9v:function a9v(a,b){this.c=a +this.a=b}, +aWu:function aWu(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +aWv:function aWv(a,b,c){this.x=a +this.b=b +this.a=c}, +d8N(a){var s,r,q,p,o=a.a,n=A.z(a),m=new A.nz(a,a.AG(),n.h("nz<1>")) +m.t() +s=m.d +r=J.ab(s==null?n.c.a(s):s) +if(o===1)return r +m.t() +s=m.d +q=J.ab(s==null?n.c.a(s):s) +if(o===2)return r=0){g=p+k +f=g+(n-m) +p=f+1 +q=g-m +e.push(new A.Fq(new A.ea(g,f),o.b))}++r}return e}, +dpu(a,b,c,d,e){var s=null,r=e.b,q=e.a,p=a.a +if(q!==p)r=A.dkF(p,q,r) +if(A.bL()===B.b4)return A.cy(A.dkf(r,a,c,d,b),s,s,c,s) +return A.cy(A.dkg(r,a,c,d,a.b.c),s,s,c,s)}, +dkg(a,b,c,d,e){var s,r,q,p,o=null,n=A.a([],t.Ne),m=b.a,l=c.dt(d),k=m.length,j=J.ao(a),i=0,h=0 +while(!0){if(!(ii){r=r=e?c:l +n.push(A.cy(o,o,o,s,B.c.R(m,r,p)));++h +i=p}}j=m.length +if(ie){r=r=e&&g<=r&&f){o.push(A.cy(p,p,p,c,B.c.R(n,e,j))) +o.push(A.cy(p,p,p,l,B.c.R(n,j,g))) +o.push(A.cy(p,p,p,c,B.c.R(n,g,r)))}else o.push(A.cy(p,p,p,c,B.c.R(n,e,r))) +e=r}else{q=s.b +q=q=j&&q<=g&&f?l:k +o.push(A.cy(p,p,p,s,B.c.R(n,r,q)));++d +e=q}}j=n.length +if(e") +s=A.R(new A.O(a,new A.bJW(),s),!1,s.h("aa.E"))}else s=null +return new A.aaD(a,b,s,null)}, +kq:function kq(a){this.c=a}, +pL:function pL(a,b){this.a=a +this.b=b}, +aaD:function aaD(a,b,c,d){var _=this +_.c=a +_.d=b +_.y=c +_.a=d}, +bJV:function bJV(){}, +bJW:function bJW(){}, +aXL:function aXL(a,b,c,d){var _=this +_.k4=a +_.ok=!1 +_.p1=b +_.c=_.b=_.a=_.ch=_.ax=null +_.d=$ +_.e=c +_.f=null +_.r=d +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +chD:function chD(a,b){this.a=a +this.b=b}, +chC:function chC(a,b,c){this.a=a +this.b=b +this.c=c}, +chE:function chE(){}, +chF:function chF(a){this.a=a}, +chB:function chB(){}, +chA:function chA(){}, +chG:function chG(){}, +YR:function YR(a,b){this.a=a +this.b=b}, +b0X:function b0X(){}, +cMG(a,b,c,d,e,f,g,h){return new A.aaM(!0,h,g,e,b,a,f)}, +aG4(a,b,c){return new A.aG3(!0,c,null,B.buj,!1,a,null)}, +aFT:function aFT(a,b){this.c=a +this.a=b}, +a8m:function a8m(a,b,c,d,e,f){var _=this +_.eK=a +_.iB=b +_.eF=c +_.G=d +_.k1$=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}, +aO1:function aO1(){}, +aaM:function aaM(a,b,c,d,e,f,g){var _=this +_.e=a +_.r=b +_.w=c +_.x=d +_.y=e +_.c=f +_.a=g}, +Uj:function Uj(a,b,c,d,e,f,g,h,i){var _=this +_.eK=!1 +_.iB=a +_.eF=b +_.eR=c +_.eG=d +_.eS=e +_.h9=f +_.G=g +_.k1$=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}, +aG3:function aG3(a,b,c,d,e,f,g){var _=this +_.e=a +_.r=b +_.w=c +_.x=d +_.y=e +_.c=f +_.a=g}, +h4(a,b,c,d,e,f,g,h,i){return new A.Cr(f,g,e,d,c,i,h,a,b)}, +cGz(a,b){var s=null +return new A.e_(new A.bck(s,b,s,s,s,s,s,a),s)}, +bcj(a){var s=a.a0(t.uy) +return s==null?null:s.gOR()}, +bv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.eY(a,null,j,i,k,l,c,h,e,n,d,g,o,m,f,b)}, +czf(a,b,c,d,e,f,g,h,i,j,k,l){var s=null +return new A.eY(s,a,i,h,j,k,c,g,e,l,d,f,s,s,s,b)}, +Cr:function Cr(a,b,c,d,e,f,g,h,i){var _=this +_.w=a +_.x=b +_.y=c +_.z=d +_.Q=e +_.as=f +_.at=g +_.b=h +_.a=i}, +bck:function bck(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}, +aSt:function aSt(a){this.a=a}, +eY:function eY(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 +_.z=i +_.Q=j +_.at=k +_.ax=l +_.ay=m +_.ch=n +_.CW=o +_.a=p}, +a1X:function a1X(){}, +asL:function asL(){}, +Id:function Id(a){this.a=a}, +If:function If(a){this.a=a}, +Ie:function Ie(a){this.a=a}, +mW:function mW(){}, +vW:function vW(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +vY:function vY(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +Dh:function Dh(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +Df:function Df(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +Dg:function Dg(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +pb:function pb(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +yH:function yH(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +yI:function yI(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +IR:function IR(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +IS:function IS(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +vX:function vX(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +Ab:function Ab(a){this.a=a}, +qG:function qG(){}, +p6:function p6(a){this.b=a}, +EB:function EB(){}, +EU:function EU(){}, +uj:function uj(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +FL:function FL(){}, +t8:function t8(a,b,c){this.a=a +this.b=b +this.c=c}, +FI:function FI(){}, +cM_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1,a2,a3,a4,a5,a6,a7){var s=$.ae() +return new A.aEf(b,new A.bm(B.aSZ,s,t.kr),new A.K9(),j,a3,i,a4,p,q,o,f,h,g,l,m,k,a7,a1,c,a5,a2,e,r,a0,d,n,a,a6,new A.apQ(),new A.apQ())}, +cOW(a,b,c,d,e,f,g,h,i,j){return new A.aiu(b,f,d,e,c,h,j,g,i,a,null)}, +YU(a){var s +switch(A.bL().a){case 0:case 1:case 3:if(a<=3)s=a +else{s=B.d.M(a,3) +if(s===0)s=3}return s +case 2:case 4:return Math.min(a,3) +case 5:return a<2?a:2+B.d.M(a,2)}}, +nu:function nu(a,b,c){var _=this +_.e=!1 +_.dJ$=a +_.a7$=b +_.a=c}, +bLs:function bLs(){}, +aGe:function aGe(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=$ +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=!1 +_.ax=_.at=_.as=_.Q=$}, +aEf:function aEf(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){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=!1 +_.w=g +_.x=h +_.y=i +_.z=j +_.Q=k +_.as=l +_.at=!1 +_.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=_.k3=null +_.ok=a9 +_.p1=b0 +_.p2=!1}, +bEO:function bEO(a){this.a=a}, +bEQ:function bEQ(a,b,c){this.a=a +this.b=b +this.c=c}, +bEP:function bEP(a,b,c){this.a=a +this.b=b +this.c=c}, +bEN:function bEN(a){this.a=a}, +bEM:function bEM(a,b,c){this.a=a +this.b=b +this.c=c}, +Bh:function Bh(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aix:function aix(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +aiu:function aiu(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 +_.Q=j +_.a=k}, +aiv:function aiv(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +ces:function ces(a){this.a=a}, +cet:function cet(a){this.a=a}, +ab3:function ab3(){}, +ab2:function ab2(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 +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.a=a2}, +ajw:function ajw(a){this.a=null +this.b=a +this.c=null}, +cir:function cir(a){this.a=a}, +cis:function cis(a){this.a=a}, +cit:function cit(a){this.a=a}, +ciu:function ciu(a){this.a=a}, +civ:function civ(a){this.a=a}, +ciw:function ciw(a){this.a=a}, +cix:function cix(a){this.a=a}, +ciy:function ciy(a){this.a=a}, +ciz:function ciz(a){this.a=a}, +ciA:function ciA(a){this.a=a}, +a0L:function a0L(){}, +Ch:function Ch(a,b){this.a=a +this.b=b}, +uJ:function uJ(){}, +aM3:function aM3(){}, +alw:function alw(){}, +alx:function alx(){}, +cMT(a,b,c,d){var s,r,q,p,o=A.cK(b.cf(0,null),B.h),n=b.gu(0).Vb(0,B.h),m=A.lG(o,A.cK(b.cf(0,null),n)) +o=m.a +if(isNaN(o)||isNaN(m.b)||isNaN(m.c)||isNaN(m.d))return B.bow +n=J.cz(c) +s=n.gP(c).a.b-n.ga2(c).a.b>a/2 +r=s?o:o+n.ga2(c).a.a +q=m.b +p=n.ga2(c).a +o=s?m.c:o+n.gP(c).a.a +n=n.gP(c).a +r+=(o-r)/2 +o=m.d +return new A.VR(new A.j(r,A.Z(q+p.b-d,q,o)),new A.j(r,A.Z(q+n.b,q,o)))}, +VR:function VR(a,b){this.a=a +this.b=b}, +dfb(a,b,c){var s=b/2,r=a-s +if(r<0)return 0 +if(a+s>c)return c-b +return r}, +aGg:function aGg(a,b,c){this.b=a +this.c=b +this.d=c}, +aGk:function aGk(a,b){this.d=a +this.a=b}, +bLC(a){var s=a.a0(t.l3),r=s==null?null:s.f +return r!==!1}, +cMU(a){var s=a.a_B(t.l3),r=s==null?null:s.r +return r==null?B.a5J:r}, +wV:function wV(a,b,c){this.c=a +this.d=b +this.a=c}, +aYn:function aYn(a,b){var _=this +_.d=!0 +_.e=a +_.a=null +_.b=b +_.c=null}, +aet:function aet(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +hM:function hM(){}, +e5:function e5(){}, +aZS:function aZS(a,b,c){var _=this +_.w=a +_.a=null +_.b=!1 +_.c=null +_.d=b +_.e=null +_.f=c +_.r=$}, +adA:function adA(a){this.$ti=a}, +W2:function W2(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aEM(a,b,c,d){return new A.aEL(c,d,a,b,null)}, +Aa(a,b,c,d){return new A.aDX(A.dwy(),a,c,b,d,null)}, +dcN(a){return A.zj(a,a,1)}, +aDK(a,b,c,d){return new A.aDJ(A.dwx(),a,c,b,d,null)}, +dcA(a){return A.cJR(a*3.141592653589793*2)}, +a9K(a,b,c,d){return new A.aEE(a,b,c,d,null)}, +cGy(a,b,c,d){return new A.asq(c,b,a,d,null)}, +hC(a,b,c){return new A.OO(b,c,a,null)}, +a_6:function a_6(){}, +acD:function acD(a){this.a=null +this.b=a +this.c=null}, +bRo:function bRo(){}, +aEL:function aEL(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +azc:function azc(){}, +aDX:function aDX(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +aDJ:function aDJ(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +aEE:function aEE(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.w=c +_.c=d +_.a=e}, +dg:function dg(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +U8:function U8(a,b){this.a=a +this.b=b}, +a7f:function a7f(a,b,c){this.e=a +this.c=b +this.a=c}, +ash:function ash(a,b,c,d){var _=this +_.e=a +_.r=b +_.c=c +_.a=d}, +asq:function asq(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.x=c +_.c=d +_.a=e}, +Sm:function Sm(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +OO:function OO(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +bNA(a,b,c,d,e){return new A.FJ(d,a,b,c,null,null,e.h("FJ<0>"))}, +FJ:function FJ(a,b,c,d,e,f,g){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f +_.$ti=g}, +ajS:function ajS(a,b,c,d){var _=this +_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null +_.$ti=d}, +cmb:function cmb(){}, +do6(a,b,c){var s={} +s.a=null +return new A.cqB(s,A.aF("arg"),a,b,c)}, +Wd:function Wd(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}, +We:function We(a,b,c){var _=this +_.d=a +_.e=$ +_.f=null +_.r=!1 +_.a=_.x=_.w=null +_.b=b +_.c=null +_.$ti=c}, +bNL:function bNL(a){this.a=a}, +Nd:function Nd(a,b){this.a=a +this.b=b}, +abG:function abG(a,b,c,d){var _=this +_.w=a +_.x=b +_.a=c +_.k2$=0 +_.k3$=d +_.ok$=_.k4$=0 +_.p1$=!1}, +aZe:function aZe(a,b){this.a=a +this.b=-1 +this.$ti=b}, +cqB:function cqB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +cqA:function cqA(a,b,c){this.a=a +this.b=b +this.c=c}, +ajW:function ajW(){}, +hc:function hc(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.$ti=e}, +Z1:function Z1(a,b){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +cmA:function cmA(a){this.a=a}, +Nj(a){var s=A.d9t(a,t._l) +return s==null?null:s.f}, +cNH(a){var s=a.a0(t.Ls) +s=s==null?null:s.f +if(s==null){s=$.LE.fr$ +s===$&&A.b()}return s}, +aHA:function aHA(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bOv:function bOv(a){this.a=a}, +ah1:function ah1(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aUb:function aUb(a,b){var _=this +_.bO=$ +_.c=_.b=_.a=_.ch=_.ax=_.bj=_.be=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +Og:function Og(a,b,c){this.f=a +this.b=b +this.a=c}, +agH:function agH(a,b,c){this.f=a +this.b=b +this.a=c}, +aeb:function aeb(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +cNI(a,b,c,d,e,f,g,h,i,j){return new A.AN(b,g,a,i,e,c,d,f,j,h)}, +ac0(a,b){var s +switch(b.a){case 0:s=a.a0(t.I) +s.toString +return A.ctY(s.w) +case 1:return B.aJ +case 2:s=a.a0(t.I) +s.toString +return A.ctY(s.w) +case 3:return B.aJ}}, +AN:function AN(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}, +aZG:function aZG(a,b,c){var _=this +_.bj=!1 +_.bU=null +_.k4=$ +_.ok=a +_.c=_.b=_.a=_.ch=_.ax=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +aEw:function aEw(a,b,c,d,e){var _=this +_.e=a +_.r=b +_.w=c +_.c=d +_.a=e}, +b1k:function b1k(){}, +b1l:function b1l(){}, +cNJ(a,b,c,d,e){return new A.FS(a,e,d,b,c,!1,!1,null)}, +dgm(a,b){return new A.FS(a,b,!0,!0,!0,!0,!0,null)}, +cNK(a){var s,r,q,p={} +p.a=a +s=t.ps +r=a.kX(s) +q=!0 +while(!0){if(!(q&&r!=null))break +q=s.a(a.W4(r)).f +r.t8(new A.bOz(p)) +r=p.a.kX(s)}return q}, +FS:function FS(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}, +bOz:function bOz(a){this.a=a}, +akd:function akd(a,b,c){this.f=a +this.b=b +this.a=c}, +aZH:function aZH(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aVr:function aVr(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +czI(a,b){var s={},r=A.a([],t.p),q=A.a([14],t.n) +s.a=0 +new A.bPc(s,q,b,r).$1(a) +return r}, +kt:function kt(a,b,c,d){var _=this +_.e=a +_.b=b +_.c=c +_.a=d}, +bPc:function bPc(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aZR:function aZR(a,b,c){this.f=a +this.b=b +this.a=c}, +aKX:function aKX(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +ahN:function ahN(a,b,c,d,e){var _=this +_.D=a +_.N=b +_.a4=c +_.k1$=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}, +ccm:function ccm(a){this.a=a}, +ccl:function ccl(a){this.a=a}, +b0p:function b0p(){}, +Wx:function Wx(a,b,c){this.c=a +this.d=b +this.a=c}, +aZV:function aZV(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +b7M:function b7M(){}, +bbT:function bbT(a,b,c){var _=this +_.bJK$=a +_.a=b +_.b=c +_.c=$}, +aNk:function aNk(){}, +bmt:function bmt(){}, +d2r(a){var s=t.N,r=Date.now() +return new A.b7N(A.N(s,t.f8),A.N(s,t.LE),a.b,a,a.a.CO(0).bf(new A.b7P(a),t.Pt),new A.am(r,!1))}, +b7N:function b7N(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=null}, +b7P:function b7P(a){this.a=a}, +b7Q:function b7Q(a,b,c){this.a=a +this.b=b +this.c=c}, +b7O:function b7O(a){this.a=a}, +bar:function bar(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.d=c +_.e=d +_.f=e}, +b7L:function b7L(){}, +Qx:function Qx(a,b){this.b=a +this.c=b}, +Dk:function Dk(a,b){this.b=a +this.d=b}, +yK:function yK(){}, +aA9:function aA9(){}, +cFy(a,b,c,d,e,f,g,h){return new A.rg(c,a,d,f,h,b,e,g)}, +rg:function rg(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}, +brE:function brE(a){this.a=a}, +d8b(){var s=A.cCf() +if(s==null)s=new A.Ph(A.b9(t.lZ)) +return new A.bm8(s)}, +bi_:function bi_(){}, +bm8:function bm8(a){this.b=a}, +avG:function avG(a,b){this.a=a +this.b=b}, +aCi:function aCi(a,b,c){this.a=a +this.b=b +this.c=c}, +bOF:function bOF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0}, +bOG:function bOG(a,b,c){this.a=a +this.b=b +this.c=c}, +bOH:function bOH(a,b){this.a=a +this.b=b}, +avD:function avD(a,b){this.a=a +this.b=b}, +biB:function biB(){}, +biC:function biC(){}, +auP:function auP(){}, +aPF:function aPF(){}, +c13:function c13(a){this.a=a}, +c14:function c14(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}, +d3K(a,b,c,d,e,f,g,h,i){return new A.a1e()}, +d3L(a,b,c,d,e,f,g,h,i){return new A.a1f()}, +d3M(a,b,c,d,e,f,g,h,i){return new A.a1g()}, +d3N(a,b,c,d,e,f,g,h,i){return new A.a1h()}, +d3O(a,b,c,d,e,f,g,h,i){return new A.a1i()}, +d3P(a,b,c,d,e,f,g,h,i){return new A.a1j()}, +d3Q(a,b,c,d,e,f,g,h,i){return new A.a1k()}, +d3R(a,b,c,d,e,f,g,h,i){return new A.a1l()}, +cGh(a,b,c,d,e,f,g,h){return new A.arK()}, +cGi(a,b,c,d,e,f,g,h){return new A.arL()}, +dsw(a,b,c,d,e,f,g,h,i){switch(a.gi4(0)){case"af":return new A.aq5() +case"am":return new A.aq6() +case"ar":return new A.aq7() +case"as":return new A.aq8() +case"az":return new A.aq9() +case"be":return new A.aqa() +case"bg":return new A.aqb() +case"bn":return new A.aqc() +case"bs":return new A.aqd() +case"ca":return new A.aqe() +case"cs":return new A.aqf() +case"cy":return new A.aqg() +case"da":return new A.aqh() +case"de":switch(a.gi2()){case"CH":return new A.aqi()}return A.d3K(c,i,g,b,"de",d,e,f,h) +case"el":return new A.aqj() +case"en":switch(a.gi2()){case"AU":return new A.aqk() +case"CA":return new A.aql() +case"GB":return new A.aqm() +case"IE":return new A.aqn() +case"IN":return new A.aqo() +case"NZ":return new A.aqp() +case"SG":return new A.aqq() +case"ZA":return new A.aqr()}return A.d3L(c,i,g,b,"en",d,e,f,h) +case"es":switch(a.gi2()){case"419":return new A.aqs() +case"AR":return new A.aqt() +case"BO":return new A.aqu() +case"CL":return new A.aqv() +case"CO":return new A.aqw() +case"CR":return new A.aqx() +case"DO":return new A.aqy() +case"EC":return new A.aqz() +case"GT":return new A.aqA() +case"HN":return new A.aqB() +case"MX":return new A.aqC() +case"NI":return new A.aqD() +case"PA":return new A.aqE() +case"PE":return new A.aqF() +case"PR":return new A.aqG() +case"PY":return new A.aqH() +case"SV":return new A.aqI() +case"US":return new A.aqJ() +case"UY":return new A.aqK() +case"VE":return new A.aqL()}return A.d3M(c,i,g,b,"es",d,e,f,h) +case"et":return new A.aqM() +case"eu":return new A.aqN() +case"fa":return new A.aqO() +case"fi":return new A.aqP() +case"fil":return new A.aqQ() +case"fr":switch(a.gi2()){case"CA":return new A.aqR()}return A.d3N(c,i,g,b,"fr",d,e,f,h) +case"gl":return new A.aqS() +case"gsw":return new A.aqT() +case"gu":return new A.aqU() +case"he":return new A.aqV() +case"hi":return new A.aqW() +case"hr":return new A.aqX() +case"hu":return new A.aqY() +case"hy":return new A.aqZ() +case"id":return new A.ar_() +case"is":return new A.ar0() +case"it":return new A.ar1() +case"ja":return new A.ar2() +case"ka":return new A.ar3() +case"kk":return new A.ar4() +case"km":return new A.ar5() +case"kn":return new A.ar6() +case"ko":return new A.ar7() +case"ky":return new A.ar8() +case"lo":return new A.ar9() +case"lt":return new A.ara() +case"lv":return new A.arb() +case"mk":return new A.arc() +case"ml":return new A.ard() +case"mn":return new A.are() +case"mr":return new A.arf() +case"ms":return new A.arg() +case"my":return new A.arh() +case"nb":return new A.ari() +case"ne":return new A.arj() +case"nl":return new A.ark() +case"no":return new A.arl() +case"or":return new A.arm() +case"pa":return new A.arn() +case"pl":return new A.aro() +case"pt":switch(a.gi2()){case"PT":return new A.arp()}return A.d3O(c,i,g,b,"pt",d,e,f,h) +case"ro":return new A.arq() +case"ru":return new A.arr() +case"si":return new A.ars() +case"sk":return new A.art() +case"sl":return new A.aru() +case"sq":return new A.arv() +case"sr":switch(a.b){case"Cyrl":return new A.arw() +case"Latn":return new A.arx()}return A.d3P(c,i,g,b,"sr",d,e,f,h) +case"sv":return new A.ary() +case"sw":return new A.arz() +case"ta":return new A.arA() +case"te":return new A.arB() +case"th":return new A.arC() +case"tl":return new A.arD() +case"tr":return new A.arE() +case"uk":return new A.arF() +case"ur":return new A.arG() +case"uz":return new A.arH() +case"vi":return new A.arI() +case"zh":switch(a.b){case"Hans":return new A.arJ() +case"Hant":switch(a.gi2()){case"HK":return A.cGh(c,i,g,b,d,e,f,h) +case"TW":return A.cGi(c,i,g,b,d,e,f,h)}return A.d3R(c,i,g,b,"zh_Hant",d,e,f,h)}switch(a.gi2()){case"HK":return A.cGh(c,i,g,b,d,e,f,h) +case"TW":return A.cGi(c,i,g,b,d,e,f,h)}return A.d3Q(c,i,g,b,"zh",d,e,f,h) +case"zu":return new A.arM()}return null}, +aq5:function aq5(){}, +aq6:function aq6(){}, +aq7:function aq7(){}, +aq8:function aq8(){}, +aq9:function aq9(){}, +aqa:function aqa(){}, +aqb:function aqb(){}, +aqc:function aqc(){}, +aqd:function aqd(){}, +aqe:function aqe(){}, +aqf:function aqf(){}, +aqg:function aqg(){}, +aqh:function aqh(){}, +a1e:function a1e(){}, +aqi:function aqi(){}, +aqj:function aqj(){}, +a1f:function a1f(){}, +aqk:function aqk(){}, +aql:function aql(){}, +aqm:function aqm(){}, +aqn:function aqn(){}, +aqo:function aqo(){}, +aqp:function aqp(){}, +aqq:function aqq(){}, +aqr:function aqr(){}, +a1g:function a1g(){}, +aqs:function aqs(){}, +aqt:function aqt(){}, +aqu:function aqu(){}, +aqv:function aqv(){}, +aqw:function aqw(){}, +aqx:function aqx(){}, +aqy:function aqy(){}, +aqz:function aqz(){}, +aqA:function aqA(){}, +aqB:function aqB(){}, +aqC:function aqC(){}, +aqD:function aqD(){}, +aqE:function aqE(){}, +aqF:function aqF(){}, +aqG:function aqG(){}, +aqH:function aqH(){}, +aqI:function aqI(){}, +aqJ:function aqJ(){}, +aqK:function aqK(){}, +aqL:function aqL(){}, +aqM:function aqM(){}, +aqN:function aqN(){}, +aqO:function aqO(){}, +aqP:function aqP(){}, +aqQ:function aqQ(){}, +a1h:function a1h(){}, +aqR:function aqR(){}, +aqS:function aqS(){}, +aqT:function aqT(){}, +aqU:function aqU(){}, +aqV:function aqV(){}, +aqW:function aqW(){}, +aqX:function aqX(){}, +aqY:function aqY(){}, +aqZ:function aqZ(){}, +ar_:function ar_(){}, +ar0:function ar0(){}, +ar1:function ar1(){}, +ar2:function ar2(){}, +ar3:function ar3(){}, +ar4:function ar4(){}, +ar5:function ar5(){}, +ar6:function ar6(){}, +ar7:function ar7(){}, +ar8:function ar8(){}, +ar9:function ar9(){}, +ara:function ara(){}, +arb:function arb(){}, +arc:function arc(){}, +ard:function ard(){}, +are:function are(){}, +arf:function arf(){}, +arg:function arg(){}, +arh:function arh(){}, +ari:function ari(){}, +arj:function arj(){}, +ark:function ark(){}, +arl:function arl(){}, +arm:function arm(){}, +arn:function arn(){}, +aro:function aro(){}, +a1i:function a1i(){}, +arp:function arp(){}, +arq:function arq(){}, +arr:function arr(){}, +ars:function ars(){}, +art:function art(){}, +aru:function aru(){}, +arv:function arv(){}, +a1j:function a1j(){}, +arw:function arw(){}, +arx:function arx(){}, +ary:function ary(){}, +arz:function arz(){}, +arA:function arA(){}, +arB:function arB(){}, +arC:function arC(){}, +arD:function arD(){}, +arE:function arE(){}, +arF:function arF(){}, +arG:function arG(){}, +arH:function arH(){}, +arI:function arI(){}, +a1k:function a1k(){}, +arJ:function arJ(){}, +a1l:function a1l(){}, +arK:function arK(){}, +arL:function arL(){}, +arM:function arM(){}, +d9K(a,b,c,d,e,f,g,h,i,j){return new A.a5r(d,c,a,f,e,j,b)}, +d9L(a,b,c,d,e,f,g,h,i,j){return new A.a5s(d,c,a,f,e,j,b)}, +d9M(a,b,c,d,e,f,g,h,i,j){return new A.a5t(d,c,a,f,e,j,b)}, +d9N(a,b,c,d,e,f,g,h,i,j){return new A.a5u(d,c,a,f,e,j,b)}, +d9O(a,b,c,d,e,f,g,h,i,j){return new A.a5v(d,c,a,f,e,j,b)}, +d9P(a,b,c,d,e,f,g,h,i,j){return new A.a5w(d,c,a,f,e,j,b)}, +d9Q(a,b,c,d,e,f,g,h,i,j){return new A.a5x(d,c,a,f,e,j,b)}, +d9R(a,b,c,d,e,f,g,h,i,j){return new A.a5y(d,c,a,f,e,j,b)}, +cJN(a,b,c,d,e,f,g,h,i){return new A.az2("zh_Hant_HK",c,a,e,d,i,b)}, +cJO(a,b,c,d,e,f,g,h,i){return new A.az3("zh_Hant_TW",c,a,e,d,i,b)}, +dsy(a,b,c,d,e,f,g,h,i,j){switch(a.gi4(0)){case"af":return new A.axn("af",b,c,e,f,g,i) +case"am":return new A.axo("am",b,c,e,f,g,i) +case"ar":return new A.axp("ar",b,c,e,f,g,i) +case"as":return new A.axq("as",b,c,e,f,g,i) +case"az":return new A.axr("az",b,c,e,f,g,i) +case"be":return new A.axs("be",b,c,e,f,g,i) +case"bg":return new A.axt("bg",b,c,e,f,g,i) +case"bn":return new A.axu("bn",b,c,e,f,g,i) +case"bs":return new A.axv("bs",b,c,e,f,g,i) +case"ca":return new A.axw("ca",b,c,e,f,g,i) +case"cs":return new A.axx("cs",b,c,e,f,g,i) +case"cy":return new A.axy("cy",b,c,e,f,g,i) +case"da":return new A.axz("da",b,c,e,f,g,i) +case"de":switch(a.gi2()){case"CH":return new A.axA("de_CH",b,c,e,f,g,i)}return A.d9K(c,i,b,"de",f,e,d,h,j,g) +case"el":return new A.axB("el",b,c,e,f,g,i) +case"en":switch(a.gi2()){case"AU":return new A.axC("en_AU",b,c,e,f,g,i) +case"CA":return new A.axD("en_CA",b,c,e,f,g,i) +case"GB":return new A.axE("en_GB",b,c,e,f,g,i) +case"IE":return new A.axF("en_IE",b,c,e,f,g,i) +case"IN":return new A.axG("en_IN",b,c,e,f,g,i) +case"NZ":return new A.axH("en_NZ",b,c,e,f,g,i) +case"SG":return new A.axI("en_SG",b,c,e,f,g,i) +case"ZA":return new A.axJ("en_ZA",b,c,e,f,g,i)}return A.d9L(c,i,b,"en",f,e,d,h,j,g) +case"es":switch(a.gi2()){case"419":return new A.axK("es_419",b,c,e,f,g,i) +case"AR":return new A.axL("es_AR",b,c,e,f,g,i) +case"BO":return new A.axM("es_BO",b,c,e,f,g,i) +case"CL":return new A.axN("es_CL",b,c,e,f,g,i) +case"CO":return new A.axO("es_CO",b,c,e,f,g,i) +case"CR":return new A.axP("es_CR",b,c,e,f,g,i) +case"DO":return new A.axQ("es_DO",b,c,e,f,g,i) +case"EC":return new A.axR("es_EC",b,c,e,f,g,i) +case"GT":return new A.axS("es_GT",b,c,e,f,g,i) +case"HN":return new A.axT("es_HN",b,c,e,f,g,i) +case"MX":return new A.axU("es_MX",b,c,e,f,g,i) +case"NI":return new A.axV("es_NI",b,c,e,f,g,i) +case"PA":return new A.axW("es_PA",b,c,e,f,g,i) +case"PE":return new A.axX("es_PE",b,c,e,f,g,i) +case"PR":return new A.axY("es_PR",b,c,e,f,g,i) +case"PY":return new A.axZ("es_PY",b,c,e,f,g,i) +case"SV":return new A.ay_("es_SV",b,c,e,f,g,i) +case"US":return new A.ay0("es_US",b,c,e,f,g,i) +case"UY":return new A.ay1("es_UY",b,c,e,f,g,i) +case"VE":return new A.ay2("es_VE",b,c,e,f,g,i)}return A.d9M(c,i,b,"es",f,e,d,h,j,g) +case"et":return new A.ay3("et",b,c,e,f,g,i) +case"eu":return new A.ay4("eu",b,c,e,f,g,i) +case"fa":return new A.ay5("fa",b,c,e,f,g,i) +case"fi":return new A.ay6("fi",b,c,e,f,g,i) +case"fil":return new A.ay7("fil",b,c,e,f,g,i) +case"fr":switch(a.gi2()){case"CA":return new A.ay8("fr_CA",b,c,e,f,g,i)}return A.d9N(c,i,b,"fr",f,e,d,h,j,g) +case"gl":return new A.ay9("gl",b,c,e,f,g,i) +case"gsw":return new A.aya("gsw",b,c,e,f,g,i) +case"gu":return new A.ayb("gu",b,c,e,f,g,i) +case"he":return new A.ayc("he",b,c,e,f,g,i) +case"hi":return new A.ayd("hi",b,c,e,f,g,i) +case"hr":return new A.aye("hr",b,c,e,f,g,i) +case"hu":return new A.ayf("hu",b,c,e,f,g,i) +case"hy":return new A.ayg("hy",b,c,e,f,g,i) +case"id":return new A.ayh("id",b,c,e,f,g,i) +case"is":return new A.ayi("is",b,c,e,f,g,i) +case"it":return new A.ayj("it",b,c,e,f,g,i) +case"ja":return new A.ayk("ja",b,c,e,f,g,i) +case"ka":return new A.ayl("ka",b,c,e,f,g,i) +case"kk":return new A.aym("kk",b,c,e,f,g,i) +case"km":return new A.ayn("km",b,c,e,f,g,i) +case"kn":return new A.ayo("kn",b,c,e,f,g,i) +case"ko":return new A.ayp("ko",b,c,e,f,g,i) +case"ky":return new A.ayq("ky",b,c,e,f,g,i) +case"lo":return new A.ayr("lo",b,c,e,f,g,i) +case"lt":return new A.ays("lt",b,c,e,f,g,i) +case"lv":return new A.ayt("lv",b,c,e,f,g,i) +case"mk":return new A.ayu("mk",b,c,e,f,g,i) +case"ml":return new A.ayv("ml",b,c,e,f,g,i) +case"mn":return new A.ayw("mn",b,c,e,f,g,i) +case"mr":return new A.ayx("mr",b,c,e,f,g,i) +case"ms":return new A.ayy("ms",b,c,e,f,g,i) +case"my":return new A.ayz("my",b,c,e,f,g,i) +case"nb":return new A.ayA("nb",b,c,e,f,g,i) +case"ne":return new A.ayB("ne",b,c,e,f,g,i) +case"nl":return new A.ayC("nl",b,c,e,f,g,i) +case"no":return new A.ayD("no",b,c,e,f,g,i) +case"or":return new A.ayE("or",b,c,e,f,g,i) +case"pa":return new A.ayF("pa",b,c,e,f,g,i) +case"pl":return new A.ayG("pl",b,c,e,f,g,i) +case"ps":return new A.ayH("ps",b,c,e,f,g,i) +case"pt":switch(a.gi2()){case"PT":return new A.ayI("pt_PT",b,c,e,f,g,i)}return A.d9O(c,i,b,"pt",f,e,d,h,j,g) +case"ro":return new A.ayJ("ro",b,c,e,f,g,i) +case"ru":return new A.ayK("ru",b,c,e,f,g,i) +case"si":return new A.ayL("si",b,c,e,f,g,i) +case"sk":return new A.ayM("sk",b,c,e,f,g,i) +case"sl":return new A.ayN("sl",b,c,e,f,g,i) +case"sq":return new A.ayO("sq",b,c,e,f,g,i) +case"sr":switch(a.b){case"Cyrl":return new A.ayP("sr_Cyrl",b,c,e,f,g,i) +case"Latn":return new A.ayQ("sr_Latn",b,c,e,f,g,i)}return A.d9P(c,i,b,"sr",f,e,d,h,j,g) +case"sv":return new A.ayR("sv",b,c,e,f,g,i) +case"sw":return new A.ayS("sw",b,c,e,f,g,i) +case"ta":return new A.ayT("ta",b,c,e,f,g,i) +case"te":return new A.ayU("te",b,c,e,f,g,i) +case"th":return new A.ayV("th",b,c,e,f,g,i) +case"tl":return new A.ayW("tl",b,c,e,f,g,i) +case"tr":return new A.ayX("tr",b,c,e,f,g,i) +case"uk":return new A.ayY("uk",b,c,e,f,g,i) +case"ur":return new A.ayZ("ur",b,c,e,f,g,i) +case"uz":return new A.az_("uz",b,c,e,f,g,i) +case"vi":return new A.az0("vi",b,c,e,f,g,i) +case"zh":switch(a.b){case"Hans":return new A.az1("zh_Hans",b,c,e,f,g,i) +case"Hant":switch(a.gi2()){case"HK":return A.cJN(c,i,b,f,e,d,h,j,g) +case"TW":return A.cJO(c,i,b,f,e,d,h,j,g)}return A.d9R(c,i,b,"zh_Hant",f,e,d,h,j,g)}switch(a.gi2()){case"HK":return A.cJN(c,i,b,f,e,d,h,j,g) +case"TW":return A.cJO(c,i,b,f,e,d,h,j,g)}return A.d9Q(c,i,b,"zh",f,e,d,h,j,g) +case"zu":return new A.az4("zu",b,c,e,f,g,i)}return null}, +axn:function axn(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axo:function axo(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axp:function axp(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axq:function axq(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axr:function axr(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axs:function axs(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axt:function axt(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axu:function axu(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axv:function axv(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axw:function axw(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axx:function axx(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axy:function axy(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axz:function axz(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5r:function a5r(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axA:function axA(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axB:function axB(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5s:function a5s(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axC:function axC(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axD:function axD(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axE:function axE(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axF:function axF(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axG:function axG(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axH:function axH(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axI:function axI(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axJ:function axJ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5t:function a5t(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axK:function axK(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axL:function axL(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axM:function axM(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axN:function axN(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axO:function axO(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axP:function axP(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axQ:function axQ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axR:function axR(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axS:function axS(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axT:function axT(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axU:function axU(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axV:function axV(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axW:function axW(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axX:function axX(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axY:function axY(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +axZ:function axZ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay_:function ay_(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay0:function ay0(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay1:function ay1(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay2:function ay2(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay3:function ay3(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay4:function ay4(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay5:function ay5(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay6:function ay6(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay7:function ay7(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5u:function a5u(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay8:function ay8(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ay9:function ay9(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +aya:function aya(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayb:function ayb(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayc:function ayc(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayd:function ayd(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +aye:function aye(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayf:function ayf(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayg:function ayg(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayh:function ayh(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayi:function ayi(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayj:function ayj(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayk:function ayk(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayl:function ayl(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +aym:function aym(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayn:function ayn(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayo:function ayo(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayp:function ayp(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayq:function ayq(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayr:function ayr(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ays:function ays(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayt:function ayt(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayu:function ayu(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayv:function ayv(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayw:function ayw(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayx:function ayx(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayy:function ayy(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayz:function ayz(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayA:function ayA(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayB:function ayB(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayC:function ayC(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayD:function ayD(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayE:function ayE(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayF:function ayF(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayG:function ayG(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayH:function ayH(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5v:function a5v(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayI:function ayI(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayJ:function ayJ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayK:function ayK(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayL:function ayL(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayM:function ayM(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayN:function ayN(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayO:function ayO(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5w:function a5w(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayP:function ayP(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayQ:function ayQ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayR:function ayR(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayS:function ayS(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayT:function ayT(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayU:function ayU(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayV:function ayV(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayW:function ayW(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayX:function ayX(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayY:function ayY(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +ayZ:function ayZ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +az_:function az_(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +az0:function az0(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5x:function a5x(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +az1:function az1(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +a5y:function a5y(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +az2:function az2(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +az3:function az3(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +az4:function az4(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.x=g}, +dsD(a){switch(a.gi4(0)){case"af":return B.bwf +case"am":return B.bwg +case"ar":return B.bwh +case"as":return B.bwi +case"az":return B.bwj +case"be":return B.bwk +case"bg":return B.bwl +case"bn":return B.bwm +case"bs":return B.bwn +case"ca":return B.bwo +case"cs":return B.bwp +case"cy":return B.bwq +case"da":return B.bwr +case"de":switch(a.gi2()){case"CH":return B.bws}return B.bwt +case"el":return B.bwu +case"en":switch(a.gi2()){case"AU":return B.bwv +case"CA":return B.bww +case"GB":return B.bwx +case"IE":return B.bwy +case"IN":return B.bwz +case"NZ":return B.bwA +case"SG":return B.bwB +case"ZA":return B.bwC}return B.bwD +case"es":switch(a.gi2()){case"419":return B.bwE +case"AR":return B.bwF +case"BO":return B.bwG +case"CL":return B.bwH +case"CO":return B.bwI +case"CR":return B.bwJ +case"DO":return B.bwK +case"EC":return B.bwL +case"GT":return B.bwM +case"HN":return B.bwN +case"MX":return B.bwO +case"NI":return B.bwP +case"PA":return B.bwQ +case"PE":return B.bwR +case"PR":return B.bwS +case"PY":return B.bwT +case"SV":return B.bwU +case"US":return B.bwV +case"UY":return B.bwW +case"VE":return B.bwX}return B.bwY +case"et":return B.bwZ +case"eu":return B.bx_ +case"fa":return B.bx0 +case"fi":return B.bx1 +case"fil":return B.bx2 +case"fr":switch(a.gi2()){case"CA":return B.bx3}return B.bx4 +case"gl":return B.bx5 +case"gsw":return B.bx6 +case"gu":return B.bx7 +case"he":return B.bx8 +case"hi":return B.bx9 +case"hr":return B.bxa +case"hu":return B.bxb +case"hy":return B.bxc +case"id":return B.bxd +case"is":return B.bxe +case"it":return B.bxf +case"ja":return B.bxg +case"ka":return B.bxh +case"kk":return B.bxi +case"km":return B.bxj +case"kn":return B.bxk +case"ko":return B.bxl +case"ky":return B.bxm +case"lo":return B.bxn +case"lt":return B.bxo +case"lv":return B.bxp +case"mk":return B.bxq +case"ml":return B.bxr +case"mn":return B.bxs +case"mr":return B.bxt +case"ms":return B.bxu +case"my":return B.bxv +case"nb":return B.bxw +case"ne":return B.bxx +case"nl":return B.bxy +case"no":return B.bxz +case"or":return B.bxA +case"pa":return B.bxB +case"pl":return B.bxC +case"ps":return B.bxD +case"pt":switch(a.gi2()){case"PT":return B.bxE}return B.bxF +case"ro":return B.bxG +case"ru":return B.bxH +case"si":return B.bxI +case"sk":return B.bxJ +case"sl":return B.bxK +case"sq":return B.bxL +case"sr":switch(a.b){case"Cyrl":return B.bxM +case"Latn":return B.bxN}return B.bxO +case"sv":return B.bxP +case"sw":return B.bxQ +case"ta":return B.bxR +case"te":return B.bxS +case"th":return B.bxT +case"tl":return B.bxU +case"tr":return B.bxV +case"uk":return B.bxW +case"ur":return B.bxX +case"uz":return B.bxY +case"vi":return B.bxZ +case"zh":switch(a.b){case"Hans":return B.by_ +case"Hant":switch(a.gi2()){case"HK":return B.a_2 +case"TW":return B.a_3}return B.by0}switch(a.gi2()){case"HK":return B.a_2 +case"TW":return B.a_3}return B.by1 +case"zu":return B.by2}return null}, +aHU:function aHU(a){this.a=a}, +aHV:function aHV(a){this.a=a}, +aHW:function aHW(a){this.a=a}, +aHX:function aHX(a){this.a=a}, +aHY:function aHY(a){this.a=a}, +aHZ:function aHZ(a){this.a=a}, +aI_:function aI_(a){this.a=a}, +aI0:function aI0(a){this.a=a}, +aI1:function aI1(a){this.a=a}, +aI2:function aI2(a){this.a=a}, +aI3:function aI3(a){this.a=a}, +aI4:function aI4(a){this.a=a}, +aI5:function aI5(a){this.a=a}, +ac6:function ac6(a){this.a=a}, +aI6:function aI6(a){this.a=a}, +aI7:function aI7(a){this.a=a}, +ac7:function ac7(a){this.a=a}, +aI8:function aI8(a){this.a=a}, +aI9:function aI9(a){this.a=a}, +aIa:function aIa(a){this.a=a}, +aIb:function aIb(a){this.a=a}, +aIc:function aIc(a){this.a=a}, +aId:function aId(a){this.a=a}, +aIe:function aIe(a){this.a=a}, +aIf:function aIf(a){this.a=a}, +ac8:function ac8(a){this.a=a}, +aIg:function aIg(a){this.a=a}, +aIh:function aIh(a){this.a=a}, +aIi:function aIi(a){this.a=a}, +aIj:function aIj(a){this.a=a}, +aIk:function aIk(a){this.a=a}, +aIl:function aIl(a){this.a=a}, +aIm:function aIm(a){this.a=a}, +aIn:function aIn(a){this.a=a}, +aIo:function aIo(a){this.a=a}, +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){this.a=a}, +aIt:function aIt(a){this.a=a}, +aIu:function aIu(a){this.a=a}, +aIv:function aIv(a){this.a=a}, +aIw:function aIw(a){this.a=a}, +aIx:function aIx(a){this.a=a}, +aIy:function aIy(a){this.a=a}, +aIz:function aIz(a){this.a=a}, +aIA:function aIA(a){this.a=a}, +aIB:function aIB(a){this.a=a}, +aIC:function aIC(a){this.a=a}, +aID:function aID(a){this.a=a}, +aIE:function aIE(a){this.a=a}, +ac9:function ac9(a){this.a=a}, +aIF:function aIF(a){this.a=a}, +aIG:function aIG(a){this.a=a}, +aIH:function aIH(a){this.a=a}, +aII:function aII(a){this.a=a}, +aIJ:function aIJ(a){this.a=a}, +aIK:function aIK(a){this.a=a}, +aIL:function aIL(a){this.a=a}, +aIM:function aIM(a){this.a=a}, +aIN:function aIN(a){this.a=a}, +aIO:function aIO(a){this.a=a}, +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){this.a=a}, +aIT:function aIT(a){this.a=a}, +aIU:function aIU(a){this.a=a}, +aIV:function aIV(a){this.a=a}, +aIW:function aIW(a){this.a=a}, +aIX:function aIX(a){this.a=a}, +aIY:function aIY(a){this.a=a}, +aIZ:function aIZ(a){this.a=a}, +aJ_:function aJ_(a){this.a=a}, +aJ0:function aJ0(a){this.a=a}, +aJ1:function aJ1(a){this.a=a}, +aJ2:function aJ2(a){this.a=a}, +aJ3:function aJ3(a){this.a=a}, +aJ4:function aJ4(a){this.a=a}, +aJ5:function aJ5(a){this.a=a}, +aJ6:function aJ6(a){this.a=a}, +aJ7:function aJ7(a){this.a=a}, +aJ8:function aJ8(a){this.a=a}, +aJ9:function aJ9(a){this.a=a}, +aJa:function aJa(a){this.a=a}, +aJb:function aJb(a){this.a=a}, +aJc:function aJc(a){this.a=a}, +aJd:function aJd(a){this.a=a}, +aca:function aca(a){this.a=a}, +aJe:function aJe(a){this.a=a}, +aJf:function aJf(a){this.a=a}, +aJg:function aJg(a){this.a=a}, +aJh:function aJh(a){this.a=a}, +aJi:function aJi(a){this.a=a}, +aJj:function aJj(a){this.a=a}, +aJk:function aJk(a){this.a=a}, +acb:function acb(a){this.a=a}, +aJl:function aJl(a){this.a=a}, +aJm:function aJm(a){this.a=a}, +aJn:function aJn(a){this.a=a}, +aJo:function aJo(a){this.a=a}, +aJp:function aJp(a){this.a=a}, +aJq:function aJq(a){this.a=a}, +aJr:function aJr(a){this.a=a}, +aJs:function aJs(a){this.a=a}, +aJt:function aJt(a){this.a=a}, +aJu:function aJu(a){this.a=a}, +aJv:function aJv(a){this.a=a}, +aJw:function aJw(a){this.a=a}, +aJx:function aJx(a){this.a=a}, +acc:function acc(a){this.a=a}, +aJy:function aJy(a){this.a=a}, +acd:function acd(a){this.a=a}, +aJz:function aJz(a){this.a=a}, +aJA:function aJA(a){this.a=a}, +aJB:function aJB(a){this.a=a}, +auQ:function auQ(){}, +aRh:function aRh(){}, +c5D:function c5D(a){this.a=a}, +cT4(){if(!$.cPW){$.d0k().aE(0,new A.csP()) +$.cPW=!0}}, +csP:function csP(){}, +auR:function auR(){}, +aZU:function aZU(){}, +cnd:function cnd(a){this.a=a}, +bc(a){A.cyv(a) +A.cyv(a) +return B.y}, +duo(a){return B.bhT}, +bxA:function bxA(a,b){this.a=a +this.b=b}, +aBv:function aBv(a,b,c){this.e=a +this.f=b +this.a=c}, +du(a,b,c,d,e){return new A.zL(b,d,a,e,c,null)}, +zL:function zL(a,b,c,d,e,f){var _=this +_.e=a +_.w=b +_.x=c +_.y=d +_.Q=e +_.a=f}, +cyv(a){a.wh(t.LG) +return null}, +aBy:function aBy(a,b){this.a=a +this.b=b}, +e8(a,b){return new A.wx(b,a,null)}, +wx:function wx(a,b,c){this.e=a +this.f=b +this.a=c}, +a7b:function a7b(){}, +d3y(a){var s=A.a([],t.ha),r=a.J() +s=new A.apK(A.N(t.o8,t.I0),s,r,a,B.aD) +r.c=s +r.a=a +return s}, +a10:function a10(){}, +aMe:function aMe(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +apL:function apL(){}, +a1_:function a1_(){}, +apK:function apK(a,b,c,d,e){var _=this +_.bO=$ +_.be=a +_.bj=null +_.bU=b +_.e7=null +_.k3=c +_.k4=!1 +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=d +_.f=null +_.r=e +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +baB:function baB(a,b,c){this.a=a +this.b=b +this.c=c}, +baA:function baA(a,b){this.a=a +this.b=b}, +byX(a){return new A.a7i(a,null)}, +Lj(a,b){var s,r=t.F9 +if(b)s=a.a0(r) +else{r=a.kX(r) +r=r==null?null:r.gb7() +t.MQ.a(r) +s=r}if(s==null)throw A.d(A.a0("No ProviderScope found")) +return s.f}, +a7i:function a7i(a,b){this.d=a +this.a=b}, +aC6:function aC6(a){var _=this +_.d=$ +_.e=null +_.f=!1 +_.a=null +_.b=a +_.c=null}, +Wb:function Wb(a,b,c){this.f=a +this.b=b +this.a=c}, +ajV:function ajV(a,b,c){var _=this +_.aU=null +_.ck=!0 +_.y2=a +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +cme:function cme(a){this.a=a}, +b7J:function b7J(a,b){this.a=a +this.b=b}, +b7R:function b7R(a,b,c){this.a=a +this.b=b +this.c=c}, +aFH:function aFH(){}, +np:function np(){}, +bJ3:function bJ3(a,b){this.a=a +this.b=b}, +bJ2:function bJ2(a,b){this.a=a +this.b=b}, +bJ4:function bJ4(a,b){this.a=a +this.b=b}, +aaq:function aaq(a,b,c){this.a=a +this.b=b +this.c=c}, +aas:function aas(a,b,c){this.c=a +this.a=b +this.b=c}, +aap:function aap(a,b,c){this.c=a +this.a=b +this.b=c}, +aKQ:function aKQ(a,b,c){this.a=a +this.b=b +this.c=c}, +aao:function aao(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +aar:function aar(a,b,c){this.c=a +this.a=b +this.b=c}, +bIX:function bIX(a){this.b=a}, +aFG:function aFG(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.y=f +_.z=g +_.Q=h +_.a=i}, +bJg:function bJg(a){this.a=a}, +bJh:function bJh(a){this.a=a}, +aau:function aau(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.as=d +_.a=e}, +aav:function aav(a,b,c){var _=this +_.d=0 +_.r=_.f=_.e=$ +_.x=_.w=!1 +_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=_.y=$ +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.fx=_.fr=!1 +_.k1=_.id=_.go=_.fy=$ +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +bJm:function bJm(a){this.a=a}, +bJl:function bJl(){}, +bJn:function bJn(a){this.a=a}, +bJo:function bJo(a){this.a=a}, +bJp:function bJp(a){this.a=a}, +bJk:function bJk(){}, +bJt:function bJt(){}, +bJu:function bJu(){}, +bJq:function bJq(a){this.a=a}, +bJs:function bJs(a){this.a=a}, +bJr:function bJr(){}, +bJx:function bJx(a){this.a=a}, +bJw:function bJw(){}, +bJy:function bJy(a){this.a=a}, +bJz:function bJz(a){this.a=a}, +bJA:function bJA(){}, +bJC:function bJC(){}, +bJD:function bJD(a,b){this.a=a +this.b=b}, +bJB:function bJB(a){this.a=a}, +bJE:function bJE(){}, +bJF:function bJF(a,b){this.a=a +this.b=b}, +bJv:function bJv(a,b,c){this.a=a +this.b=b +this.c=c}, +bJi:function bJi(a){this.a=a}, +bJj:function bJj(a){this.a=a}, +aFJ:function aFJ(a,b,c,d,e,f){var _=this +_.a=a +_.e=b +_.f=c +_.r=d +_.w=e +_.Q=f}, +v4:function v4(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.eX=_.dP=_.er=$ +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.id=_.go=$ +_.k3=_.k2=_.k1=null +_.k4=$ +_.ok=!1 +_.p1=e +_.p2=f +_.f=g +_.r=h +_.w=null +_.a=i +_.b=null +_.c=j +_.d=k +_.e=l}, +aj8:function aj8(){}, +Pq:function Pq(a){this.a=a}, +EP:function EP(a,b){this.a=a +this.b=b}, +TP:function TP(a){this.a=a}, +z3:function z3(a){this.a=a}, +lO(){var s=$.cMw +if(s==null){s=$.cMw=new A.bJG() +s.a=new A.bJg(new A.h1(null,null,t.zr))}return s}, +bJG:function bJG(){this.a=$}, +cMx(a,b,c,d,e,f,g,h,i,j){return new A.Vx(a,b,d,!0,g,!0,c,i,j,h,b,null)}, +Vx:function Vx(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.b=k +_.a=l}, +Vy:function Vy(a,b,c){this.c=a +this.d=b +this.a=c}, +aXu:function aXu(a,b,c){var _=this +_.f=_.e=_.d=$ +_.x=_.w=_.r=null +_.Q=_.z=_.y=!1 +_.at=_.as=$ +_.ch=_.ay=_.ax=null +_.db=_.cy=_.cx=_.CW=$ +_.dx=!1 +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +cgL:function cgL(a){this.a=a}, +cgH:function cgH(a,b){this.a=a +this.b=b}, +cgG:function cgG(){}, +cgI:function cgI(a,b){this.a=a +this.b=b}, +cgF:function cgF(){}, +cgC:function cgC(a){this.a=a}, +cgD:function cgD(a){this.a=a}, +cgE:function cgE(a){this.a=a}, +cgJ:function cgJ(){}, +cgB:function cgB(a){this.a=a}, +cgA:function cgA(a){this.a=a}, +cgz:function cgz(){}, +cgK:function cgK(a){this.a=a}, +alB:function alB(){}, +Vz:function Vz(a,b,c){this.c=a +this.d=b +this.a=c}, +aXv:function aXv(a,b,c){var _=this +_.f=_.d=$ +_.x=_.w=_.r=null +_.y=!0 +_.at=_.Q=_.z=!1 +_.ay=_.ax=$ +_.CW=_.ch=null +_.db=_.cy=_.cx=$ +_.dx=!1 +_.eH$=a +_.b5$=b +_.a=null +_.b=c +_.c=null}, +ch_:function ch_(a){this.a=a}, +cgU:function cgU(a){this.a=a}, +cgT:function cgT(){}, +cgV:function cgV(a){this.a=a}, +cgW:function cgW(a){this.a=a}, +cgS:function cgS(){}, +cgX:function cgX(a){this.a=a}, +cgP:function cgP(a){this.a=a}, +cgQ:function cgQ(a){this.a=a}, +cgR:function cgR(a){this.a=a}, +cgY:function cgY(){}, +cgO:function cgO(a){this.a=a}, +cgN:function cgN(a){this.a=a}, +cgM:function cgM(){}, +cgZ:function cgZ(a){this.a=a}, +alC:function alC(){}, +aaw:function aaw(a,b,c){this.d=a +this.e=b +this.a=c}, +aXt:function aXt(a){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +cgx:function cgx(a){this.a=a}, +cgy:function cgy(a){this.a=a}, +cgw:function cgw(a){this.a=a}, +pz:function pz(a,b){this.a=a +this.b=b}, +aCB:function aCB(){}, +bAa:function bAa(a){this.a=a}, +bxS:function bxS(a){this.a=a}, +a3Z:function a3Z(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 +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.a=o}, +bOX:function bOX(){}, +cn5:function cn5(){}, +cn6:function cn6(a){this.a=a}, +cn3:function cn3(){}, +cn4:function cn4(a){this.a=a}, +aZM:function aZM(){}, +aki:function aki(){}, +akj:function akj(){}, +akk:function akk(){}, +aZN:function aZN(){}, +aZO:function aZO(){}, +AO(a,b,c,d){return new A.Z2(c,d,t.QU.b(b)?b:A.qV(null,b,A.r(a.a.x)+"--WidgetBit.inline",null),a)}, +je(a,b,c,d,e,f,g,h,i,j,k){var s,r,q,p,o,n=null +if(e==null)s=j!=null?new A.b7j(j):n +else s=e +if(a==null)r=s!=null +else r=a +if(d==null)q=n +else q=d +if(f==null)p=n +else p=f +if(i==null)o=n +else o=i +return new A.dQ(r,b,c,q,s,p,g,h,o,k)}, +vB(a,b){var s,r,q,p +if(a==null||b===B.tx)s=b +else if(b==null)s=a +else{r=b.a +if(r==null)r=a.a +q=b.b +if(q==null)q=a.b +p=b.c +r=new A.a18(r,q,p==null?a.c:p) +s=r}if((s==null?null:s.grL())===!0)return B.tx +return s}, +cIU(a,b,c){var s=new A.RA(a,b,c) +s.aUM(a,b,c) +return s}, +cxv(a,b){var s=B.b.gaz(a) +if(new A.jW(s,b.h("jW<0>")).t())return b.a(s.gK(0)) +return null}, +p0:function p0(){}, +ho:function ho(){}, +uE:function uE(a,b){this.a=a +this.b=b}, +FU:function FU(){}, +akg:function akg(a,b){this.a=a +this.b=b}, +Z2:function Z2(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +uT:function uT(a,b){this.a=a +this.b=b}, +dQ:function dQ(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}, +b7j:function b7j(a){this.a=a}, +Q8:function Q8(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}, +yo:function yo(a,b){this.a=a +this.b=b}, +a18:function a18(a,b,c){this.a=a +this.b=b +this.c=c}, +kN:function kN(a,b){this.a=a +this.b=b}, +I1:function I1(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bb1:function bb1(){}, +I2:function I2(a,b){this.a=a +this.b=b}, +Cl:function Cl(a,b){this.a=a +this.b=b}, +RA:function RA(a,b,c){this.a=a +this.b=b +this.c=c}, +Jt:function Jt(a,b,c){this.a=a +this.b=b +this.c=c}, +d8:function d8(a,b,c){this.a=a +this.b=b +this.c=c}, +bnp:function bnp(a){this.a=a}, +RK:function RK(a,b){var _=this +_.a=a +_.c=_.b=null +_.d=b}, +afg:function afg(a,b,c){this.a=a +this.b=b +this.$ti=c}, +Q9:function Q9(a){this.a=a}, +aAa:function aAa(a){this.a=a}, +a55:function a55(){}, +buN:function buN(){}, +buO:function buO(a){this.a=a}, +aGc:function aGc(a){this.a=a}, +aLI:function aLI(){}, +qV(a,b,c,d){var s=t.C3 +return new A.hd(c,a!=null?A.a([a],s):A.a([],s),b,d)}, +cRR(a){var s,r,q,p,o,n=null,m=$.cZx().abZ(0,a) +if(m==null)return n +s=m.b +r=s[0] +q=s[1] +p=B.c.b0(a,r.length) +if(q==="base64")o=B.eX.cD(p) +else o=q==="utf8"?new Uint8Array(A.f1(new A.e0(p))):n +return(o==null?n:!B.p.gad(o))===!0?o:n}, +BJ(a,b){var s=a.i(0,b) +if(s==null)return null +return A.zW(s)}, +cCa(a,b){var s=a.i(0,b) +if(s==null)return null +return A.cY(s,null)}, +hd:function hd(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +cPE(a,b){var s,r,q,p,o=null,n=$.d_j() +n.lc(B.j5,"Building body...",o,o) +s=a.e +s===$&&A.b() +s.wV(0,a) +r=a.d +r===$&&A.b() +q=new A.nX(s,o,B.lg,new A.Gg(),$.b2M(),r,o) +q.auS(b) +r=q.dN() +p=r==null?o:r.kB(s.gaw5()) +if(p==null)p=B.ap +n.lc(B.j5,"Built body successfuly.",o,o) +return p}, +dni(a){return A.blQ(a,null,!1,!1,null).aD3().gfC(0)}, +a4_:function a4_(){}, +a40:function a40(a){var _=this +_.e=_.d=$ +_.a=_.w=_.r=_.f=null +_.b=a +_.c=null}, +bm5:function bm5(a){this.a=a}, +cdj:function cdj(a,b,c){var _=this +_.e=a +_.a=b +_.c=_.b=null +_.d=c}, +Yp:function Yp(a,b,c){this.f=a +this.b=b +this.a=c}, +dgt(a){var s,r=a.b.i(0,"dir") +if(r!=null){s=t.N +s=A.a1(["direction",r],s,s)}else s=B.ek +return s}, +dgu(a){var s=t.N +return A.a1(["display","block"],s,s)}, +dgv(a){var s=t.N +return A.a1(["display","none"],s,s)}, +dgw(a){var s=t.N +return A.a1(["display","table"],s,s)}, +dgx(a){var s=t.N +return A.a1(["text-align","center"],s,s)}, +dgy(a){var s,r=a.b.i(0,"align") +if(r==="center"){s=t.N +return A.a1(["display","block","text-align","-webkit-center","width","100%"],s,s)}if(r!=null){s=t.N +s=A.a1(["text-align",r],s,s)}else s=B.ek +return s}, +dgz(a){var s=t.N +return A.a1(["text-decoration-line","line-through"],s,s)}, +dgA(a){var s=t.N +return A.a1(["text-decoration-line","underline"],s,s)}, +dgB(a){var s=t.N +return A.a1(["vertical-align","middle"],s,s)}, +dgC(a){var s=t.N +return A.a1(["text-decoration-line","underline","text-decoration-style","dotted"],s,s)}, +dgD(a){var s=t.N +return A.a1(["display","block","font-style","italic"],s,s)}, +dgE(a){var s=t.N +return A.a1(["display","block","text-align","-webkit-center","width","100%"],s,s)}, +dgF(a){var s=t.N +return A.a1(["display","block","margin","0 0 1em 40px"],s,s)}, +dgG(a){var s=t.N +return A.a1(["display","block","font-weight","bold"],s,s)}, +dgH(a){var s=t.N +return A.a1(["display","block","margin","1em 40px"],s,s)}, +dgI(a){var s=t.N +return A.a1(["display","block","font-size","2em","font-weight","bold","margin","0.67em 0"],s,s)}, +dgJ(a){var s=t.N +return A.a1(["display","block","font-size","1.5em","font-weight","bold","margin","0.83em 0"],s,s)}, +dgK(a){var s=t.N +return A.a1(["display","block","font-size","1.17em","font-weight","bold","margin","1em 0"],s,s)}, +dgL(a){var s=t.N +return A.a1(["display","block","font-weight","bold","margin","1.33em 0"],s,s)}, +dgM(a){var s=t.N +return A.a1(["display","block","font-size","0.83em","font-weight","bold","margin","1.67em 0"],s,s)}, +dgN(a){var s=t.N +return A.a1(["display","block","font-size","0.67em","font-weight","bold","margin","2.33em 0"],s,s)}, +dgO(a){var s=t.N +return A.a1(["display","block","margin","0.5em 0","border-top","1px solid"],s,s)}, +dgP(a,b){return b.kB(new A.bOY())}, +dgQ(a){var s=t.N +return A.a1(["background-color","#ff0","color","#000"],s,s)}, +dgR(a){var s=t.N +return A.a1(["display","block","margin","1em 0"],s,s)}, +dgS(a){var s=t.N +return A.a1(["vertical-align","sub","font-size","smaller"],s,s)}, +dgT(a){var s=t.N +return A.a1(["vertical-align","super","font-size","smaller"],s,s)}, +dgU(a){var s=t.N +return A.a1(["font-weight","bold","vertical-align","middle"],s,s)}, +Wt:function Wt(a,b){var _=this +_.a=a +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=null +_.Cc$=b}, +bP0:function bP0(a,b){this.a=a +this.b=b}, +bOZ:function bOZ(a,b,c){this.a=a +this.b=b +this.c=c}, +bP_:function bP_(a,b,c){this.a=a +this.b=b +this.c=c}, +bOY:function bOY(){}, +aHR:function aHR(){}, +akh:function akh(){}, +cwu(a){var s,r,q=$.cHc +if(q==null)q=$.cHc=new A.tQ(new WeakMap(),null,t.mR) +A.fT(a) +s=q.a.get(a) +if(s!=null)return s +if(!a.b.aB(0,"style")){q.n(0,a,B.vA) +return B.vA}r=A.cvV(A.cBS("*{"+A.r(a.b.i(0,"style"))+"}")) +q.n(0,a,r) +return r}, +tI(a){var s,r,q=$.cGa +if(q==null)q=$.cGa=new A.tQ(new WeakMap(),null,t.XT) +A.fT(a) +s=q.a.get(a) +if(s!=null)return s +r=A.cOk(a) +q.n(0,a,r) +return r}, +kM(a){var s=A.tI(a),r=J.ao(s) +return r.gA(s)===1?r.ga2(s):null}, +cGc(a){var s,r,q,p=$.cGb +if(p==null)p=$.cGb=new A.tQ(new WeakMap(),null,t.XT) +A.fT(a) +s=p.a.get(a) +if(s!=null)return s +r=A.cOk(a) +q=A.X(r).h("b1<1>") +q=A.R(new A.b1(r,new A.bb0(),q),!1,q.h("B.E")) +p.n(0,a,q) +return q}, +hU(a){var s,r,q,p=a.c +if(p instanceof A.wa)return p.b +if(typeof p=="string"){s=p.charCodeAt(0) +r=p.length-1 +if(s===p.charCodeAt(r)){q=B.c.R(p,1,r) +switch(s){case 34:return A.cj(q,'\\"','"') +case 39:return A.cj(q,"\\'","'")}}}return""}, +cvV(a){var s,r=$.cGd +if(r==null)r=$.cGd=new A.bXh(A.a([],t.Ek)) +s=r.a +B.b.V(s) +r.ij(a.b) +s=J.n8(s.slice(0),A.X(s).c) +return s}, +cOk(a){var s,r=$.cOj +if(r==null)r=$.cOj=new A.c_o(A.a([],t.zZ)) +s=r.a +B.b.V(s) +a.bg(r) +s=J.n8(s.slice(0),A.X(s).c) +return s}, +bb0:function bb0(){}, +bXh:function bXh(a){this.a=a}, +c_o:function c_o(a){this.a=a}, +dny(a,b){var s,r,q=b.x +if(q==null)s=null +else{r=q.$ti.h("b1") +s=A.R(new A.b1(q,new A.cq6(),r),!1,r.h("B.E"))}if(s!=null&&s.length!==0){q=A.R(a,!0,t.z) +B.b.L(q,s) +q=A.hi(q,t.X9)}else q=a +return q}, +dnG(a){var s=a.a,r=s.a +return r==null?s.e!=null:r}, +dhE(a,b){var s,r=a.a,q=b.a +if(r===q)return 0 +s=B.d.bn(r.y,q.y) +if(s===0)return B.d.bn(A.ef(r),A.ef(q)) +else return s}, +nX:function nX(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.y=_.x=null +_.a=e +_.b=f +_.c=null +_.MS$=g}, +cq6:function cq6(){}, +v2:function v2(a,b){this.a=a +this.b=b}, +bVD:function bVD(){}, +Gg:function Gg(){this.a=!1 +this.b=null}, +aZP:function aZP(a){this.a=a}, +d1G(a,b){var s=A.cQc(a) +if((s==null?null:s.length!==0)===!0)b.kB(new A.b3D(s))}, +cQc(a){var s=a.te(t.sZ) +return s==null?null:s.a}, +cQb(a,b){var s,r=A.cQc(a);(r==null?a.ns(new A.aLH(A.a([],t.WX)),t.sZ).a:r).push(b) +s=a.f +if(s!=null)A.cQb(s,b)}, +cQd(a){var s=J.q(a.d9(0,t.Fu),B.ae),r=a.d9(0,t.Pn) +switch((r==null?B.ah:r).a){case 2:return B.t +case 5:return B.iP +case 3:return B.a4 +case 0:return s?B.iP:B.a4 +case 1:return s?B.a4:B.iP +case 4:return B.a4}}, +def(a,b){var s=null,r=$.ar().aP() +r.sa6(0,b) +return a.pb(A.dH(r,s,s,"fwfh: background-color",s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +cQe(a){var s=t.c3,r=a.te(s) +return r==null?a.ns(A.dly(a),s):r}, +dly(a){var s,r,q,p,o,n,m,l +for(s=a.w.gaz(0),r=s.$ti.c,q=B.bAD;s.t();){p=s.d +if(p==null)p=r.a(p) +o=p.f +n=p.b +o=o?"*"+n.b:n.b +p=A.tI(p) +m=new A.cgk(o,p) +switch(o){case"background":for(o=J.ao(p);m.c0?new A.ba(a,null,null,null):B.ap}, +den(a,b){var s,r=b.a.a,q=r instanceof A.dk?r:null +if(q!=null){s=$.b2B() +A.fT(q) +s=s.a.get(q)==null}else s=!0 +if(s)return +b.av(0,B.a3B)}, +dek(a,b){var s,r,q,p,o=A.cp4(a) +if((o==null?null:o.r)===B.tB)return b +s=a.a.a +r=s instanceof A.dk?s:null +if(r==null)return b +o=$.b2B() +A.fT(r) +q=o.a.get(r) +if(q==null)return b +p=A.cp4(q) +if(p!=null)o=p.d==null&&p.r==null +else o=!0 +if(o)return b +return b.kB(new A.bII(a))}, +del(a,b){var s,r=$.b2C() +A.fT(a) +if(J.q(r.a.get(a),!0)||b.gad(b))return b +s=A.cp4(a) +if(s==null)return b +return b.kB(new A.bIJ(s,a))}, +dem(a){var s,r,q,p=$.b2C() +A.fT(a) +if(J.q(p.a.get(a),!0))return +s=A.cp4(a) +if(s==null)return +for(p=a.gFy(),p=new A.dr(p.a(),p.$ti.h("dr<1>")),r=null;p.t();){q=p.b +if(q instanceof A.FU){if(r!=null)return +r=q.a}else return}if(r==null||r.gad(r))return +r.kB(new A.bIK(s,a))}, +cMr(a,b,c,d){var s,r,q,p,o,n=null,m=c.a,l=m==null +if(l&&c.b==null&&c.c==null&&c.d==null&&c.f==null&&c.r===B.tB){if(b instanceof A.Q7)return b +return new A.Q7(b,n)}s=d.a5(a) +m=l?n:A.Z9(m,s) +l=c.b +l=l==null?n:A.Z9(l,s) +r=c.c +r=r==null?n:A.Z9(r,s) +q=c.d +q=q==null?n:A.Z9(q,s) +p=c.f +p=p==null?n:A.Z9(p,s) +o=c.r +o=o==null?n:A.Z9(o,s) +return new A.aq0(m,l,r,q,c.e,p,o,b,n)}, +cp4(a){var s=t.X2,r=a.te(s) +if(r==null)r=a.ns(A.dlz(a),s) +if(r.a==null&&r.b==null&&r.c==null&&r.d==null&&r.f==null&&r.r==null)return null +return r}, +dlz(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=null +for(s=a1.w.gaz(0),r=s.$ti.c,q=a0,p=q,o=p,n=o,m=n,l=m,k=l;s.t();){j=s.d +if(j==null)j=r.a(j) +i=A.tI(j) +h=J.ao(i) +h=h.gA(i)===1?h.ga2(i):a0 +if(h==null)continue +g=j.f +j=j.b +switch(g?"*"+j.b:j.b){case"height":f=A.iv(h) +if(f!=null){p=f +o=B.v}break +case"max-height":e=A.iv(h) +k=e==null?k:e +break +case"max-width":d=A.iv(h) +l=d==null?l:d +break +case"min-height":c=A.iv(h) +m=c==null?m:c +break +case"min-width":b=A.iv(h) +n=b==null?n:b +break +case"width":a=A.iv(h) +if(a!=null){q=a +o=B.a_}break}}if(q==null){s=$.cCV() +A.fT(a1) +s=J.q(s.a.get(a1),!0)}else s=!1 +if(s){if(o==null)o=B.a_ +q=B.tB}return new A.aXo(k,l,m,n,o,p,q)}, +Z9(a,b){var s=a.o_(b) +if(s!=null)return new A.aMD(s) +switch(a.b.a){case 0:return B.a5K +case 2:return new A.adI(a.a) +default:return null}}, +dit(a){return a.a8D(0)}, +deo(a,b){return A.eu(b,1,null,null)}, +dep(a){var s=A.cQg(a).b +if(s!=null)a.b.jW(A.dqy(),s,t.Pn) +return a}, +deq(a,b){if(b.gad(b)||A.cQg(a).a!=="-webkit-center")return b +return b.kB(A.dqv())}, +der(a,b){return a.FP(b,t.Pn)}, +cQg(a){var s=t.MJ,r=a.te(s) +return r==null?a.ns(A.dlA(a),s):r}, +dlA(a){var s,r,q,p=a.qT("text-align") +if(p==null)s=null +else{r=A.kM(p) +s=r instanceof A.cx?A.hU(r):null}if(s==null)return B.bAJ +switch(s){case"center":case"-moz-center":case"-webkit-center":q=B.at +break +case"end":q=B.jP +break +case"justify":q=B.lY +break +case"left":q=B.jO +break +case"right":q=B.qg +break +case"start":q=B.ah +break +default:q=null}return new A.aj5(s,q)}, +dwa(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d +for(s=J.au(A.tI(b)),r=b.b,q=b.f,p=t.i,o=a.b,n=t.G,m=t.M5,l=t.UB;s.t();){k=s.gK(s) +if(q){j=r.b +i="*"+j +h=i +i=j +j=h}else{j=r.b +i=j}if(j!=="text-decoration"){if(q){r.toString +j="*"+i}else{r.toString +j=i}j=j==="text-decoration-line"}else j=!0 +if(j){g=A.df0(k) +if(g!=null){o.jW(A.dqH(),g,l) +continue}}if(q){r.toString +j="*"+i}else{r.toString +j=i}if(j!=="text-decoration"){if(q){r.toString +j="*"+i}else{r.toString +j=i}j=j==="text-decoration-style"}else j=!0 +if(j){f=A.cUk(k) +if(f!=null){o.jW(A.dqI(),f,m) +continue}}if(q){r.toString +j="*"+i}else{r.toString +j=i}if(j!=="text-decoration"){if(q){r.toString +j="*"+i}else{r.toString +j=i}j=j==="text-decoration-color"}else j=!0 +if(j){e=A.cu6(k) +if(e!=null){o.jW(A.dqG(),e,n) +continue}}if(q){r.toString +j="*"+i}else{r.toString +j=i}if(j!=="text-decoration"){if(q){r.toString +j="*"+i}else{r.toString +j=i}if(j!=="text-decoration-thickness"){if(q){r.toString +j="*"+i}else{r.toString +j=i}j=j==="text-decoration-width"}else j=!0}else j=!0 +if(j){d=A.iv(k) +if(d!=null&&d.b===B.kI){o.jW(A.dqJ(),d.a/100,p) +continue}}}}, +dwb(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: text-decoration-color",s,b,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dwc(a,b){var s,r,q,p,o,n,m,l,k,j,i=null,h=a.a +if(h==null)s=i +else{h=h.d9(0,t.em) +s=h==null?i:h.CW}h=s==null +if(h)r=i +else{r=s.a +r=(r|2)===r}if(h)q=i +else{q=s.a +q=(q|4)===q}if(h)h=i +else{h=s.a +h=(h|1)===h}p=a.d9(0,t.em) +o=p==null?i:p.CW +p=o==null +if(p)n=i +else{n=o.a +n=(n|2)===n}m=n===!0 +if(p)n=i +else{n=o.a +n=(n|4)===n}l=n===!0 +if(p)p=i +else{p=o.a +p=(p|1)===p}k=p===!0 +j=A.a([],t.J9) +if(r!==!0){r=b.a +if(r==null)r=m}else r=!0 +if(r)j.push(B.Z_) +if(q!==!0){r=b.b +if(r==null)r=l}else r=!0 +if(r)j.push(B.Z0) +if(h!==!0){h=b.c +if(h==null)h=k}else h=!0 +if(h)j.push(B.qh) +return a.pb(A.dH(i,i,i,"fwfh: text-decoration-line",A.cMI(j),i,i,i,i,i,i,i,i,i,i,i,i,!0,i,i,i,i,i,i,i,i),t.z)}, +dwd(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: text-decoration-style",s,s,b,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dwe(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: text-decoration-thickness",s,s,s,b,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +df0(a){if(a instanceof A.cx)switch(A.hU(a)){case"line-through":return B.bo9 +case"none":return B.bo7 +case"overline":return B.boa +case"underline":return B.bo8}return null}, +doh(a,b){var s=a!==B.ae +switch(b){case"top":case"super":return s?B.ca:B.eU +case"middle":return s?B.c9:B.cy +case"bottom":case"sub":return s?B.kb:B.hk}return null}, +dok(a){switch(a){case"top":case"sub":return B.lE +case"super":case"bottom":return B.cj +case"middle":return B.i_}return null}, +deC(a,b){var s=null +return b==null?a:a.pb(A.dH(s,s,A.G(b).ay.b,"fwfh: a[href] default color",s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +deB(a){return B.b3O}, +deA(a,b){return a.FP(b,t.nd)}, +deD(a){a.iw(0,new A.aaE(a)) +return a}, +deF(a){if(a.gad(0))return a +a.Hw(A.AO(a,A.qV(new A.bK5(a),null,"summary--inlineMarker",null),B.i_,B.Q)) +return a}, +deE(a,b){$.cDy().n(0,b,!0) +return!0}, +deG(a){var s=a.b,r=s.i(0,"color"),q=s.i(0,"face"),p=s.i(0,"size"),o=B.aZM.i(0,p==null?"":p) +p=t.N +p=A.N(p,p) +if(r!=null)p.n(0,"color",r) +if(q!=null)p.n(0,"font-family",q) +if(o!=null)p.n(0,"font-size",o) +return p}, +deH(a){var s="height",r="width",q=a.b,p=q.i(0,s),o=q.i(0,r),n=t.N +n=A.N(n,n) +n.n(0,s,"auto") +n.n(0,"min-width","0px") +n.n(0,"min-height","0px") +n.n(0,r,"auto") +if(p!=null)n.n(0,s,p+"px") +if(o!=null)n.n(0,r,o+"px") +return n}, +deI(a,b){var s=$.cuq() +A.fT(a) +s=s.a.get(a) +return s==null?b:s}, +deJ(a){var s,r=$.cuq() +A.fT(a) +s=r.a.get(a) +if(s==null)return +a.iw(0,A.AO(a,s,B.fd,B.Q))}, +deK(a){var s,r,q=a.b,p=$.cDz() +A.fT(a) +p=p.a.get(a) +if(p==null)p=0 +if(a.x==="ol"){s=q.i(0,"type") +s=A.cQO(s==null?"":s) +r=s==null?"decimal":s}else if(p===0)r="disc" +else{s=p===1?"circle":"square" +r=s}s=t.N +s=A.N(s,s) +s.n(0,"display","block") +s.n(0,"list-style-type",r) +s.n(0,"padding-inline-start","40px") +if(p===0)s.n(0,"margin","1em 0") +return s}, +cQO(a){switch(a){case"a":return"lower-alpha" +case"A":return"upper-alpha" +case"1":return"decimal" +case"i":return"lower-roman" +case"I":return"upper-roman"}return null}, +b1u(a){var s,r=t.XD,q=a.te(r) +if(q==null){s=a.a.b +r=a.ns(new A.ajj(s.aB(0,"reversed"),A.cCa(s,"start"),0,0),r)}else r=q +return r}, +deL(a){return B.aXE}, +deM(a){var s,r=a.ga2(0),q=r==null?null:r.gbR(r) +r=a.gP(0) +s=r==null?null:r.gbR(r) +if(q==null||s==null){a.Hw(new A.uE("\u201c",a)) +a.iw(0,new A.uE("\u201d",a)) +return a}q.Hw(new A.uE("\u201c",q)) +s.iw(0,new A.uE("\u201d",s)) +return a}, +deN(a){var s=t.N +return A.a1(["display","none"],s,s)}, +deO(a){var s,r,q,p,o,n,m,l,k,j,i=null,h=a.f.DR(0),g=A.a([],t.o1) +for(s=a.geg(0),r=s.length,q=t.C3,p=t.FN,o=a.b,n=0;n0)r.n(0,"border",A.r(p)+"px solid") +r.n(0,"border-collapse","separate") +r.n(0,"border-spacing",A.r(s==null?2:s)+"px") +return r}, +deR(a){var s=t.N +return A.a1(["border","inherit"],s,s)}, +czd(a){var s,r,q,p,o,n,m,l +for(s=a.a,r=J.cEy(A.cwu(s)),q=r.$ti,r=new A.bj(r,r.gA(0),q.h("bj")),q=q.h("aa.E");r.t();){p=r.d +if(p==null)p=q.a(p) +o=p.f +n=p.b +if((o?"*"+n.b:n.b)==="display"){m=A.tI(p) +p=J.ao(m) +p=p.gA(m)===1?p.ga2(m):null +l=p instanceof A.cx?A.hU(p):null +if(l!=null)return l}}switch(s.x){case"tr":return"table-row" +case"thead":return"table-header-group" +case"tbody":return"table-row-group" +case"tfoot":return"table-footer-group" +case"th":case"td":return"table-cell" +case"caption":return"table-caption"}return null}, +deS(a){return a!=null}, +deT(a,b){var s=A.BJ(a.a.b,"border") +if((s==null?0:s)>0)switch(b.a.x){case"td":case"th":b.av(0,B.a3E) +break}}, +deU(a,b){var s=null,r=b.a.x +if(r==="td"||r==="th")b.av(0,A.je(s,"table--cellpadding--child",new A.bKj(A.BJ(a.a.b,"cellpadding")),s,s,s,s,s,s,s,-2999974e9))}, +deV(a,b){var s,r,q,p,o=null,n="table-header-group",m=b.a.a,l=m instanceof A.dk?m:o +if(l!==a.a)return +s=A.cAG(a) +r=A.czd(b) +switch(r){case"table-caption":b.av(0,A.je(!0,"caption",o,o,o,o,new A.bKk(s),o,o,o,10)) +break +case"table-header-group":case"table-row-group":case"table-footer-group":if(r===n)q=s.d +else q=r==="table-row-group"?s.ac9():s.c +l=q.b +l===$&&A.b() +b.av(0,l) +break +case"table-row":l=s.ac9() +p=A.cAh() +l.a.push(p) +l=p.b +l===$&&A.b() +b.av(0,l) +break +case"table-cell":l=s.a;(l.length!==0?B.b.gP(l):s.ac9()).gbzM().aqB(b) +break}}, +deW(a){A.bIu(a) +$.b2C().n(0,a,!0) +return a}, +cAG(a){var s=t.JQ,r=a.te(s) +return r==null?a.ns(new A.aXN(A.a([],t.mC),A.a([],t.p),A.cAi("table-footer-group"),A.cAi("table-header-group"),A.a([],t.Ft),A.N(t.S,t.UQ)),s):r}, +cAh(){var s=null,r=new A.ajk(A.a([],t.pW)) +r.b=A.je(!0,"tr",s,s,s,s,s,s,r.gbc_(),s,1000014e9) +r.c=A.je(!0,"td",s,s,s,s,r.gbaQ(),s,s,s,10) +return r}, +djk(a){var s,r=a.b.i(0,"valign") +if(r!=null){s=t.N +s=A.a1(["vertical-align",r],s,s)}else s=B.ek +return s}, +cAi(a){var s=null,r=new A.ajl(A.a([],t.kQ)) +r.b=A.je(s,a,s,s,s,s,s,s,r.gbbq(),s,1000015e9) +return r}, +amW:function amW(a,b,c){this.a=a +this.b=b +this.c=c}, +b3A:function b3A(a){this.a=a}, +b3C:function b3C(a){this.a=a}, +b3y:function b3y(a,b){this.a=a +this.b=b}, +b3B:function b3B(a){this.a=a}, +b3z:function b3z(a){this.a=a}, +b3D:function b3D(a){this.a=a}, +amY:function amY(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b3t:function b3t(a){this.a=a}, +b3u:function b3u(a){this.a=a}, +b3v:function b3v(a){this.a=a}, +b3w:function b3w(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}, +b3x:function b3x(){}, +acA:function acA(a,b,c){this.a=a +this.b=b +this.c=c}, +ad2:function ad2(a,b,c,d){var _=this +_.d=a +_.e=b +_.b=c +_.a=d}, +aLo:function aLo(a,b){var _=this +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=a +_.f=null +_.r=b +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +aLH:function aLH(a){this.a=a}, +a0S:function a0S(a,b,c,d,e,f,g){var _=this +_.r=a +_.w=b +_.x=c +_.c=d +_.d=e +_.e=f +_.a=g}, +ba_:function ba_(a){this.a=a}, +ba0:function ba0(){}, +bIl:function bIl(a){this.a=a}, +bIn:function bIn(a){this.a=a}, +bIm:function bIm(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bIo:function bIo(){}, +aj4:function aj4(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +cgk:function cgk(a,b){this.a=a +this.b=b +this.c=0}, +Oe:function Oe(a,b){this.a=a +this.b=b}, +bIp:function bIp(a){this.a=a}, +bIs:function bIs(a){this.a=a}, +bIr:function bIr(a,b,c){this.a=a +this.b=b +this.c=c}, +bIt:function bIt(a){this.a=a}, +bIq:function bIq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bIv:function bIv(a){this.a=a}, +bIz:function bIz(a){this.a=a}, +bIy:function bIy(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bIw:function bIw(a){this.a=a}, +bIx:function bIx(){}, +ada:function ada(a,b){this.a=a +this.b=b}, +bIA:function bIA(a){this.a=a}, +bIC:function bIC(a){this.a=a}, +bIB:function bIB(a,b){this.a=a +this.b=b}, +bID:function bID(){}, +cq_:function cq_(a,b){this.a=a +this.b=b}, +cq0:function cq0(a,b){this.a=a +this.b=b}, +bIE:function bIE(a){this.a=a}, +bIG:function bIG(a){this.a=a}, +bIF:function bIF(a,b,c){this.a=a +this.b=b +this.c=c}, +bIH:function bIH(){}, +cz8:function cz8(){}, +bII:function bII(a){this.a=a}, +bIJ:function bIJ(a,b){this.a=a +this.b=b}, +bIK:function bIK(a,b){this.a=a +this.b=b}, +XR:function XR(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +aXo:function aXo(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aj5:function aj5(a,b){this.a=a +this.b=b}, +Au:function Au(a,b,c){this.a=a +this.b=b +this.c=c}, +bIL:function bIL(a){this.a=a}, +bIO:function bIO(a){this.a=a}, +bIN:function bIN(a,b,c){this.a=a +this.b=b +this.c=c}, +bIP:function bIP(a){this.a=a}, +bIM:function bIM(a,b,c){this.a=a +this.b=b +this.c=c}, +bJX:function bJX(a){this.a=a}, +bK0:function bK0(a){this.a=a}, +bJZ:function bJZ(a,b){this.a=a +this.b=b}, +bK_:function bK_(a,b,c){this.a=a +this.b=b +this.c=c}, +bK1:function bK1(a){this.a=a}, +bJY:function bJY(a,b,c){this.a=a +this.b=b +this.c=c}, +aaE:function aaE(a){this.a=a}, +bK4:function bK4(a){this.a=a}, +bK7:function bK7(a){this.a=a}, +bK6:function bK6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bK8:function bK8(){}, +bK5:function bK5(a){this.a=a}, +bK9:function bK9(a){this.a=a}, +bKa:function bKa(a){this.a=a}, +bKb:function bKb(a){this.a=a}, +bKe:function bKe(a){this.a=a}, +bKd:function bKd(a,b){this.a=a +this.b=b}, +bKc:function bKc(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ajj:function ajj(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bKf:function bKf(a){this.a=a}, +bKh:function bKh(a){this.a=a}, +bKg:function bKg(a,b){this.a=a +this.b=b}, +bKi:function bKi(a,b){this.a=a +this.b=b}, +aFP:function aFP(a){var _=this +_.a=a +_.d=_.c=_.b=$}, +bKm:function bKm(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bKl:function bKl(a){this.a=a}, +bKn:function bKn(a,b,c){this.a=a +this.b=b +this.c=c}, +bKo:function bKo(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}, +bKj:function bKj(a){this.a=a}, +bKk:function bKk(a){this.a=a}, +ajk:function ajk(a){this.a=a +this.c=this.b=$}, +ajl:function ajl(a){this.a=a +this.b=$}, +aXN:function aXN(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.w=_.r=0}, +aXO:function aXO(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +dwA(a){if(a instanceof A.cx){if(a instanceof A.nd)return B.e.dO(A.e6(a.c)) +switch(A.hU(a)){case"none":return-1}}return null}, +cUk(a){switch(a instanceof A.cx?A.hU(a):null){case"dotted":return B.YX +case"dashed":return B.YY +case"double":return B.xU +case"solid":return B.YV}return null}, +dwB(a){if(a instanceof A.cx)switch(A.hU(a)){case"clip":return B.aG +case"ellipsis":return B.bf}return null}, +b2q(a){var s,r,q,p,o,n,m,l=t.oV,k=a.te(l) +if(k!=null)return k +for(s=a.w.gaz(0),r=s.$ti.c,q=B.agm;s.t();){p=s.d +if(p==null)p=r.a(p) +o=p.f +n=p.b +m=o?"*"+n.b:n.b +if(!B.c.aC(m,"border"))continue +q=B.c.eV(m,"radius")?A.doi(q,p):A.doj(q,p)}a.ns(q,l) +return q}, +doj(a,b){var s,r,q,p,o,n,m,l,k,j,i=null,h=B.c.b0(b.gacW(),6),g=h.length===0 +if(g){s=A.kM(b) +r=(s instanceof A.cx?A.hU(s):i)==="inherit"}else r=!1 +if(r)return B.agn +for(r=J.au(A.tI(b)),q=i,p=q,o=B.agr;r.t();){n=r.gK(r) +if((n instanceof A.cx?A.hU(n):i)==="none"){q=i +p=q +o=B.bB +break}m=A.cUk(n) +if(m!=null){p=m +continue}l=A.iv(n) +if(l!=null){o=l +continue}k=A.cu6(n) +if(k!=null){q=k +continue}}j=new A.a18(q,p,o) +if(g)return a.brp(j) +switch(h){case"-bottom":case"-block-end":return a.u9(j) +case"-inline-end":return a.a8y(j) +case"-inline-start":return a.a8z(j) +case"-left":return a.a8B(j) +case"-right":return a.a8G(j) +case"-top":case"-block-start":return a.LZ(j)}return a}, +doi(a,b){var s,r,q,p,o,n,m,l,k,j,i,h +switch(b.gacW()){case"border-radius":s=A.tI(b) +r=J.cz(s) +q=r.rE(s,new A.cqQ()) +p=t.YW +o=A.aK(8,B.bB,!1,p) +if(q===-1){r=r.fK(s,new A.cqR(),p) +n=A.R(r,!1,A.z(r).h("aa.E")) +r=n.length +if(r!==0)for(m=0;m<8;++m)o[m]=n[0] +if(r>1){p=n[1] +o[2]=p +o[3]=p +o[6]=p +o[7]=p}if(r>2){p=n[2] +o[4]=p +o[5]=p}if(r>3){r=n[3] +o[6]=r +o[7]=r}}else{p=r.nl(s,q) +l=A.z(p).h("O") +k=A.R(new A.O(p,new A.cqS(),l),!1,l.h("aa.E")) +p=k.length +if(p!==0)for(m=0;m<4;++m)o[m*2]=k[0] +if(p>1){l=k[1] +o[2]=l +o[6]=l}if(p>2)o[4]=k[2] +if(p>3)o[6]=k[3] +r=r.my(s,q+1) +p=A.z(r).h("O") +j=A.R(new A.O(r,new A.cqT(),p),!1,p.h("aa.E")) +r=j.length +if(r!==0)for(m=0;m<4;++m)o[m*2+1]=j[0] +if(r>1){p=j[1] +o[3]=p +o[7]=p}if(r>2)o[5]=j[2] +if(r>3)o[7]=j[3]}r=o[0] +p=o[1] +r=r===B.bB&&p===B.bB?B.bS:new A.yo(r,p) +p=o[2] +l=o[3] +p=p===B.bB&&l===B.bB?B.bS:new A.yo(p,l) +l=o[4] +i=o[5] +l=l===B.bB&&i===B.bB?B.bS:new A.yo(l,i) +i=o[6] +h=o[7] +return a.bsA(i===B.bB&&h===B.bB?B.bS:new A.yo(i,h),l,r,p) +case"border-bottom-left-radius":return a.brO(A.cqU(b)) +case"border-bottom-right-radius":return a.brP(A.cqU(b)) +case"border-top-left-radius":return a.brQ(A.cqU(b)) +case"border-top-right-radius":return a.brR(A.cqU(b))}return a}, +cqU(a){var s,r,q,p=A.tI(a),o=J.ao(p) +if(o.gA(p)===2){s=A.iv(o.i(p,0)) +if(s==null)s=B.bB +r=A.iv(o.i(p,1)) +if(r==null)r=B.bB +if(s===B.bB&&r===B.bB)return B.bS +return new A.yo(s,r)}else if(o.gA(p)===1){q=A.iv(o.ga2(p)) +if(q==null)q=B.bB +if(q===B.bB)return B.bS +return new A.yo(q,q)}return B.bS}, +cu6(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=null +if(a==null)return c +if(a instanceof A.Rb)switch(a.d){case"hsl":case"hsla":s=A.cGc(a) +r=J.ao(s) +if(r.gA(s)>=3){q=r.i(s,0) +if(q instanceof A.nd)p=A.cR3(A.e6(q.c),c) +else p=q instanceof A.ZT?A.cR3(A.e6(q.c),q.f):c +o=r.i(s,1) +n=o instanceof A.zI?B.e.dV(A.e6(o.c)/100,0,1):c +m=r.i(s,2) +l=m instanceof A.zI?B.e.dV(A.e6(m.c)/100,0,1):c +k=r.gA(s)>=4?A.cR2(r.i(s,3)):1 +if(p!=null&&n!=null&&l!=null&&k!=null)return new A.w3(k,p,n,l).qJ()}break +case"rgb":case"rgba":s=A.cGc(a) +r=J.ao(s) +if(r.gA(s)>=3){j=A.cAV(r.i(s,0)) +i=A.cAV(r.i(s,1)) +h=A.cAV(r.i(s,2)) +g=r.gA(s)>=4?A.cR2(r.i(s,3)):1 +if(j!=null&&i!=null&&h!=null&&g!=null)return A.Y(B.e.dO(g*255),j,i,h)}break}else if(a instanceof A.Rq){f=a.d.toUpperCase() +switch(f.length){case 3:return new A.v(A.cA("0xFF"+A.cB6(f),c)>>>0) +case 4:e=f[3] +d=B.c.R(f,0,3) +return new A.v(A.cA("0x"+A.cB6(e)+A.cB6(d),c)>>>0) +case 6:return new A.v(A.cA("0xFF"+f,c)>>>0) +case 8:return new A.v(A.cA("0x"+B.c.R(f,6,8)+B.c.R(f,0,6),c)>>>0)}}else if(a instanceof A.cx)switch(A.hU(a)){case"transparent":return B.D}return c}, +cR2(a){var s +if(a instanceof A.nd)s=A.e6(a.c) +else s=a instanceof A.zI?A.e6(a.c)/100:null +return s==null?null:B.e.dV(s,0,1)}, +cR3(a,b){var s +switch(b){case 609:s=a*57.29577951308232 +break +case 610:s=a*0.9 +break +case 611:s=a*360 +break +default:s=a}for(;s<0;)s+=360 +return B.e.M(s,360)}, +cAV(a){var s +if(a instanceof A.nd)s=B.e.dO(A.e6(a.c)) +else s=a instanceof A.zI?B.e.dO(A.e6(a.c)/100*255):null +return s==null?null:B.d.dV(s,0,255)}, +cB6(a){var s,r,q +for(s=a.length,r=0,q="";r=q;--r)if(!a[r].b)break}else q=0 +for(p=b.a,o=q;o<=r;++o){n=a[o] +if(n.c)continue +if(n.b)switch(p){case 0:s.a+=" " +break +case 1:s.a+="\xa0" +break +case 2:s.a+=n.a +break}else switch(p){case 0:s.a+=n.a +break +case 1:s.a+=A.cj(n.a," ","\xa0") +break +case 2:s.a+=n.a +break}}p=s.a +m=p.charCodeAt(0)==0?p:p +if(l)return m +if(d)return B.c.jL(m,A.b4("\\n$",!0,!1,!1),"") +return m}, +bie:function bie(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.w=_.r=_.f=_.e=$ +_.x=!1 +_.y=$}, +bii:function bii(a,b,c){this.a=a +this.b=b +this.c=c}, +bij:function bij(a,b,c){this.a=a +this.b=b +this.c=c}, +bih:function bih(a,b,c){this.a=a +this.b=b +this.c=c}, +big:function big(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bif:function bif(){}, +Od:function Od(a,b,c){this.a=a +this.b=b +this.c=c}, +cxf(a,b,c){var s=A.a([],t.Pa),r=A.a([new A.bkW(a,b)],t.C3) +s.push(a) +return new A.w6(b,s,c,r,null,null)}, +cIA(a,b,c,d){var s,r=null,q=b instanceof A.ba?b.f:r +if(q==null)q=0 +s=c.o_(d.a5(a)) +if(s!=null&&s>q)return new A.ba(r,s,r,r) +return b}, +cMg(a,b){var s,r=$.cCT() +A.fT(a) +s=r.a.get(a) +if(s==null)s=0 +if(b)++s +else s=s>0?s-1:0 +r.n(0,a,s)}, +w6:function w6(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +bkW:function bkW(a,b){this.a=a +this.b=b}, +bkX:function bkX(a,b){this.a=a +this.b=b}, +b9Z:function b9Z(){}, +bB6:function bB6(){}, +bGE:function bGE(){}, +bGF:function bGF(a,b){this.a=a +this.b=b}, +cOP(a,b,c,d,e,f,g){var s=new A.ahk(a,b,c,d,e,f,g,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +Q7:function Q7(a,b){this.c=a +this.a=b}, +aq0:function aq0(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.c=h +_.a=i}, +ahk:function ahk(a,b,c,d,e,f,g,h,i){var _=this +_.G=a +_.ac=b +_.aS=c +_.cZ=d +_.en=e +_.eY=f +_.i9=g +_.k1$=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}, +bb2:function bb2(){}, +aMC:function aMC(){}, +adI:function adI(a){this.a=a}, +aMD:function aMD(a){this.a=a}, +avs:function avs(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +Xy:function Xy(a,b,c,d){var _=this +_.G=a +_.ac=b +_.k1$=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}, +Jj:function Jj(a,b,c){this.c=a +this.d=b +this.a=c}, +aPY:function aPY(a){var _=this +_.d=!1 +_.e=$ +_.a=null +_.b=a +_.c=null}, +c1R:function c1R(a){this.a=a}, +c1Q:function c1Q(a,b){this.a=a +this.b=b}, +avx:function avx(a,b){this.c=a +this.a=b}, +Jk:function Jk(a,b){this.c=a +this.a=b}, +avz:function avz(a,b){this.c=a +this.a=b}, +blV:function blV(a){this.a=a}, +af8:function af8(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +avy:function avy(a,b,c){this.e=a +this.c=b +this.a=c}, +xk:function xk(a,b,c){this.dJ$=a +this.a7$=b +this.a=c}, +XK:function XK(a,b,c,d,e){var _=this +_.D=a +_.cT$=b +_.Y$=c +_.d7$=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}, +b_Q:function b_Q(){}, +b_R:function b_R(){}, +Jl:function Jl(a,b,c){this.d=a +this.e=b +this.a=c}, +afG:function afG(a,b,c,d){var _=this +_.D=a +_.N=null +_.a4=b +_.ag=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}, +Jm:function Jm(a,b){this.a=a +this.b=b}, +cOU(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a==null)return new A.V(A.Z(0,b.a,b.b),A.Z(0,b.c,b.d)) +s=b.d +r=new A.aG(0,b.b,0,s) +q=a.b +q.toString +p=t.gf +p.a(q) +o=c.$2(a,r) +n=q.a7$ +m=o.b +l=r.a8C(s-m) +if(n!=null){s=n.b +s.toString +p.a(s) +k=c.$2(n,l) +j=s}else{j=null +k=B.A}s=k.b +p=o.a +i=k.a +h=Math.max(p,i) +if(a.id!=null){q.a=new A.j((h-p)/2,s) +if(j!=null)j.a=new A.j((h-i)/2,0)}return b.bd(new A.V(h,m+s))}, +Ru:function Ru(a,b){this.c=a +this.a=b}, +xp:function xp(a,b,c){this.dJ$=a +this.a7$=b +this.a=c}, +ai5:function ai5(a,b,c,d){var _=this +_.cT$=a +_.Y$=b +_.d7$=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}, +b0D:function b0D(){}, +b0E:function b0E(){}, +d89(a,b,c,d,e,f,g,h,i){return new A.n4(a,c,d,g,h,i,e,b,f)}, +dlx(a){return new A.b1(a,new A.cp2(),A.X(a).h("b1<1>"))}, +dls(a,b){return a+b}, +cAH(a,b,c,d){var s,r,q,p,o,n=isNaN(d)?0/0:(d-(c.f-1)*b.ga8f(0))/c.f +for(s=c.f,r=isNaN(n),q=c.r,p=0;p"),i=A.R(new A.O(b,new A.chH(k),j),!1,j.h("aa.E")) +j=new A.l_(c,A.X(c).h("l_<1>")) +s=t.i +r=j.gep(j).fK(0,new A.chI(k,i),s).ib(0,!1) +q=Math.max(0,a-(B.b.gad(r)?0:B.b.i6(r,A.vd()))) +if(q<=0.01)return r +j=r.length +p=A.aK(j,0,!1,s) +for(s=r.length,o=0;o0||s[1]-r[1]>0)return!1 +s=a.a.a +r=b.b.a +if(s[0]-r[0]>0||s[1]-r[1]>0)return!1 +return!0}, +pT:function pT(a,b){this.a=a +this.b=b}, +bbS:function bbS(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=-1}, +d5f(){var s,r,q,p,o,n,m,l,k=A.wj(16,A.cSj(),t.Ys),j=J.d1(4,t.yw) +for(s=0;s<4;++s)j[s]=new A.ah(new Float64Array(2)) +r=A.wj(20,A.cSj(),t.il) +q=new Float64Array(2) +p=new Float64Array(2) +o=new Float64Array(2) +n=new Float64Array(2) +m=new Float64Array(2) +l=new Float64Array(2) +k=new A.bel(k,j,r,new A.ah(q),new A.pT(new A.ah(p),new A.ah(o)),new A.a7I(new A.ah(n),new A.ah(m)),new A.pT(new A.ah(l),new A.ah(new Float64Array(2))),new A.a0N(0,0,0)) +k.aUC() +return k}, +bel:function bel(a,b,c,d,e,f,g,h){var _=this +_.a=null +_.b=a +_.c=0 +_.d=16 +_.e=0 +_.f=b +_.r=c +_.w=0 +_.x=d +_.y=e +_.z=f +_.Q=g +_.as=h}, +d5g(a){var s=new Float64Array(2) +return new A.tP(a,new A.pT(new A.ah(s),new A.ah(new Float64Array(2))))}, +tP:function tP(a,b){var _=this +_.a=a +_.b=b +_.f=_.e=_.d=_.c=null +_.r=0}, +Th:function Th(a,b){this.a=a +this.b=b}, +tF(){var s=new Float64Array(2) +return new A.apo(new A.ah(s),new A.HV(new Int8Array(4)))}, +cHM(){return new A.bfa(B.ng)}, +deY(){var s,r,q=t.yw,p=J.d1(8,q) +for(s=0;s<8;++s)p[s]=new A.ah(new Float64Array(2)) +r=J.d1(8,q) +for(s=0;s<8;++s)r[s]=new A.ah(new Float64Array(2)) +return new A.bKF(p,r)}, +b9K(a,b,c,d,e){var s,r,q,p,o,n,m,l,k=b[0],j=b[1],i=k.a,h=j.a,g=c.ei(i)-d,f=c.ei(h)-d +if(g<=0){a[0].ci(0,k) +s=1}else s=0 +if(f<=0){r=s+1 +a[s].ci(0,j) +s=r}if(g*f<0){q=g/(g-f) +p=a[s] +o=p.a +n=i.a +m=n[0] +l=h.a +o.saf(0,m+q*(l[0]-m)) +n=n[1] +o.saj(0,n+q*(l[1]-n)) +n=p.b.a +n[0]=e&255 +n[1]=k.b.a[1] +n[2]=0 +n[3]=1;++s}return s}, +atd:function atd(){this.b=this.a=0}, +apo:function apo(a,b){this.a=a +this.b=b}, +a2l:function a2l(a,b){this.a=a +this.b=b}, +bfa:function bfa(a){this.a=a +this.c=this.b=0}, +bKF:function bKF(a,b){this.a=a +this.b=b +this.c=0}, +cbC:function cbC(a,b,c,d,e){var _=this +_.b=_.a=0 +_.c=a +_.d=b +_.e=c +_.f=d +_.r=0 +_.w=e +_.x=0}, +b9J:function b9J(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}, +bfj:function bfj(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 +_.at=l +_.ax=m +_.ay=0 +_.ch=!1 +_.CW=n +_.cx=o +_.cy=p +_.db=q +_.dx=r +_.dy=s +_.fr=a0 +_.fx=a1 +_.fy=a2 +_.go=a3 +_.id=a4 +_.k1=a5}, +d3z(){return new A.HV(new Int8Array(4))}, +HV:function HV(a){this.a=a}, +cM5(){var s=t.S,r=A.aK(3,0,!1,s) +s=A.aK(3,0,!1,s) +r[0]=1073741823 +r[1]=1073741823 +r[2]=1073741823 +s[0]=1073741823 +s[1]=1073741823 +s[2]=1073741823 +return new A.bG_(r,s)}, +djf(){var s,r,q,p,o,n,m,l,k,j,i=J.d1(3,t.wU) +for(s=0;s<3;++s){r=new Float64Array(2) +q=new Float64Array(2) +i[s]=new A.aWD(new A.ah(r),new A.ah(q),new A.ah(new Float64Array(2)))}r=new Float64Array(2) +q=new Float64Array(2) +p=new Float64Array(2) +o=new Float64Array(2) +n=new Float64Array(2) +m=new Float64Array(2) +l=new Float64Array(2) +k=new Float64Array(2) +j=new Float64Array(2) +return new A.ceR(i,new A.ah(r),new A.ah(q),new A.ah(p),new A.ah(o),new A.ah(n),new A.ah(m),new A.ah(l),new A.ah(k),new A.ah(j),new A.ah(new Float64Array(2)))}, +bdI(){var s,r,q=t.yw,p=J.d1(8,q) +for(s=0;s<8;++s)p[s]=new A.ah(new Float64Array(2)) +r=J.d1(2,q) +for(s=0;s<2;++s)r[s]=new A.ah(new Float64Array(2)) +return new A.bdH(p,r)}, +aWD:function aWD(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.f=_.e=_.d=0}, +bG_:function bG_(a,b){var _=this +_.b=_.a=0 +_.c=a +_.d=b}, +ceR:function ceR(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j +_.Q=k}, +bdH:function bdH(a,b){var _=this +_.a=a +_.c=_.b=0 +_.d=b}, +bdE:function bdE(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +cGX(){var s=A.bdI(),r=A.bdI(),q=new Float64Array(2) +return new A.bdF(s,r,new A.lR(new A.ah(q),new A.l5(0,1)),new A.lR(new A.ah(new Float64Array(2)),new A.l5(0,1)))}, +bdF:function bdF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1}, +cGY(){var s=new Float64Array(2) +return new A.bdG(new A.ah(s),new A.ah(new Float64Array(2)))}, +bdG:function bdG(a,b){this.a=a +this.b=b +this.c=0}, +qk(){var s,r,q=J.d1(2,t.Kz) +for(s=0;s<2;++s){r=new Float64Array(2) +q[s]=new A.axk(new A.ah(r),new A.HV(new Int8Array(4)))}r=new Float64Array(2) +return new A.bre(q,new A.ah(r),new A.ah(new Float64Array(2)),B.p3)}, +a5h:function a5h(a,b){this.a=a +this.b=b}, +bre:function bre(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0}, +axk:function axk(a,b){var _=this +_.a=a +_.c=_.b=0 +_.d=b}, +a7I:function a7I(a,b){this.a=a +this.b=b +this.c=0}, +aCu:function aCu(a){this.a=a +this.b=0}, +cFM(){return new A.aoU(new A.ah(new Float64Array(2)),B.xg)}, +aoU:function aoU(a,b){this.c=a +this.a=b +this.b=0}, +bri:function bri(a){this.a=0 +this.b=a +this.c=0}, +cKY(){var s=t.Gt +s=new A.aBO(new A.ah(new Float64Array(2)),A.a([],s),A.a([],s),B.lR) +s.b=$.cEj() +return s}, +aBO:function aBO(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=0}, +by4:function by4(a){this.a=a}, +by5:function by5(a){this.a=a}, +bFu:function bFu(){}, +V_:function V_(a,b){this.a=a +this.b=b}, +bJQ:function bJQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0}, +Mx:function Mx(a,b){this.a=a +this.b=b}, +bJR:function bJR(a){this.a=a +this.b=0}, +bLG:function bLG(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}, +a9m:function a9m(a,b){this.a=a +this.b=b}, +bFl:function bFl(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.c=_.b=_.a=$ +_.d=a +_.e=b +_.r=_.f=$ +_.w=c +_.x=d +_.y=e +_.z=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.ay=k +_.ch=l +_.CW=m +_.cx=n +_.cy=o +_.db=p}, +dgX(){var s,r,q,p=new Float64Array(2),o=J.d1(2,t.yw) +for(s=0;s<2;++s)o[s]=new A.ah(new Float64Array(2)) +r=new Float64Array(2) +q=new Float64Array(2) +return new A.bPr(new A.ah(p),o,r,new A.ah(q),new A.ah(new Float64Array(2)))}, +bPr:function bPr(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a0N:function a0N(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=1}, +qF(a,b){var s,r=a.b,q=b.a,p=q[0],o=a.a +q=q[1] +s=new A.ah(new Float64Array(2)) +s.dm(r*p-o*q,o*p+r*q) +return s}, +Us(a,b){var s,r=a.b,q=b.a,p=q[0],o=a.a +q=q[1] +s=new A.ah(new Float64Array(2)) +s.dm(r*p+o*q,-o*p+r*q) +return s}, +l5:function l5(a,b){this.a=a +this.b=b}, +cMv(){var s=new Float64Array(2),r=new Float64Array(2) +return new A.Fs(new A.ah(s),new A.ah(r),new A.ah(new Float64Array(2)))}, +Fs:function Fs(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.f=_.e=_.d=0}, +abc:function abc(a){this.a=a}, +aby(){return new A.lR(new A.ah(new Float64Array(2)),new A.l5(0,1))}, +f_(a,b){var s,r,q,p=a.b,o=p.b,n=b.a,m=n[0] +p=p.a +n=n[1] +s=a.a.a +r=s[0] +s=s[1] +q=new A.ah(new Float64Array(2)) +q.dm(o*m-p*n+r,p*m+o*n+s) +return q}, +czv(a,b){var s,r=b.a,q=a.a.a,p=r[0]-q[0],o=r[1]-q[1] +q=a.b +r=q.b +q=q.a +s=new A.ah(new Float64Array(2)) +s.dm(r*p+q*o,-q*p+r*o) +return s}, +cNc(a,b){var s,r=a.b,q=A.Us(r,b.a.W(0,a.a)),p=b.b,o=r.b,n=p.a +r=r.a +p=p.b +s=new A.ah(new Float64Array(2)) +s.T(q) +return new A.lR(s,new A.l5(o*n-r*p,o*p+r*n))}, +lR:function lR(a,b){this.a=a +this.b=b}, +P3:function P3(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.a=a +_.c=_.b=0 +_.d=b +_.e=c +_.f=d +_.r=e +_.w=0 +_.x=f +_.y=0 +_.z=g +_.Q=h +_.as=i +_.at=j +_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=0 +_.dx=_.db=null +_.dy=0 +_.fr=null +_.fx=k +_.fy=l}, +cFd(a,b,c){var s,r +if(a==null)s=new A.ah(new Float64Array(2)) +else s=a +r=new A.ah(new Float64Array(2)) +return new A.b6A(b,c,s,r)}, +b6A:function b6A(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=d}, +a_I:function a_I(a,b){this.a=a +this.b=b}, +apM:function apM(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +aoL:function aoL(a,b,c,d,e,f,g,h){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.Q=_.z=_.y=_.x=0 +_.at=h}, +aoM:function aoM(a,b,c,d,e,f,g,h){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.Q=_.z=_.y=_.x=0 +_.at=h}, +cFL(a,b){var s=new A.aoT(a,b,0,0,A.Q_(),A.Q0(),A.qk(),A.qk()) +s.Aw(a,0,b,0) +return s}, +aoT:function aoT(a,b,c,d,e,f,g,h){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.Q=_.z=_.y=_.x=0 +_.at=h}, +d3A(a,b,c,d){var s,r,q,p,o,n,m,l,k=a.c +k===$&&A.b() +s=k.a +k=c.c +k===$&&A.b() +r=k.a +q=s.a>>0).S(0,b<<7>>>0)}, +cKH(a,b){return A.cKG(a,b,new A.bwL())}, +cKI(a,b){return A.cKG(a,b,new A.bwU())}, +cKG(a,b,c){var s,r,q,p=a.length,o=J.n8(a.slice(0),A.X(a).c) +for(s=0;p>0;){r=B.d.aD(p,2) +q=s+r +if(c.$2(J.d13(o[q]),b)){s=q+1 +p-=r+1}else p=r}return s}, +bwK:function bwK(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.c=_.b=_.a=0 +_.y=a +_.z=b +_.Q=c +_.as=d +_.at=e +_.ax=f +_.ay=g +_.go=h +_.id=i +_.k1=j +_.k2=k +_.k3=l +_.k4=m +_.ok=n +_.p1=o +_.p2=p +_.p3=q}, +bwT:function bwT(){}, +bwM:function bwM(a,b){this.a=a +this.b=b}, +bwN:function bwN(a){this.a=a}, +bwO:function bwO(a){this.a=a}, +bwP:function bwP(a){this.a=a}, +bwQ:function bwQ(a){this.a=a}, +bwR:function bwR(a){this.a=a}, +bwS:function bwS(a,b){this.a=a +this.b=b}, +bwL:function bwL(){}, +bwU:function bwU(){}, +b7S:function b7S(){}, +b94:function b94(){}, +b95:function b95(a,b,c){this.a=a +this.b=b +this.c=c}, +b96:function b96(a,b,c){this.a=a +this.b=b +this.c=c}, +cAC(a){var s=t.ZO,r=a.te(s) +return r==null?a.ns(new A.aXP(A.a([],t.s)),s):r}, +bKp:function bKp(a){this.a=a}, +bKq:function bKq(a){this.a=a}, +bKr:function bKr(a){this.a=a}, +aXP:function aXP(a){this.a=a}, +abW:function abW(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}, +aZC:function aZC(a){var _=this +_.a=_.f=_.e=_.d=null +_.b=a +_.c=null}, +cmR:function cmR(a,b,c){this.a=a +this.b=b +this.c=c}, +a_m:function a_m(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aKW:function aKW(a){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +bSc:function bSc(a){this.a=a}, +bSb:function bSb(a,b){this.a=a +this.b=b}, +aTb:function aTb(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +c9H:function c9H(a){this.a=a}, +aTL:function aTL(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +ca2:function ca2(a){this.a=a}, +ca1:function ca1(a,b){this.a=a +this.b=b}, +agO:function agO(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +ca0:function ca0(a,b){this.a=a +this.b=b}, +ca_:function ca_(a,b,c){this.a=a +this.b=b +this.c=c}, +agh:function agh(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +c7C:function c7C(a){this.a=a}, +bK2:function bK2(a){this.a=a}, +bK3:function bK3(a){this.a=a}, +bo5:function bo5(){}, +bIZ:function bIZ(){}, +bJ_:function bJ_(a,b,c){this.a=a +this.b=b +this.c=c}, +bNX:function bNX(){}, +aHM:function aHM(a,b){var _=this +_.d=a +_.e=$ +_.a=null +_.b=b +_.c=null}, +bOQ:function bOQ(a){this.a=a}, +ac3:function ac3(a,b,c,d){var _=this +_.c=a +_.d=b +_.y=c +_.a=d}, +bOP:function bOP(){}, +ceH:function ceH(a,b){this.a=a +this.b=b}, +pJ:function pJ(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.f=_.e=$ +_.r=c +_.x=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ay=_.ax=$ +_.ch=null +_.CW=i +_.cx=j +_.$ti=k}, +Gx:function Gx(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aVY:function aVY(a,b){this.a=a +this.d=b}, +cdZ:function cdZ(){}, +c11:function c11(a,b){this.a=a +this.c=b}, +c12:function c12(a){this.a=a}, +cOb(a,b,c,d,e,f,g,h,i,j){return new A.NA(g,i,f,e,a,j,h,b,c,d)}, +bCo:function bCo(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.r=f +_.w=g}, +NA:function NA(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}, +ae3:function ae3(a,b){var _=this +_.d=null +_.e=$ +_.f=a +_.a=_.x=_.w=_.r=null +_.b=b +_.c=null}, +bWF:function bWF(a,b){this.a=a +this.b=b}, +bWG:function bWG(a,b,c){this.a=a +this.b=b +this.c=c}, +bWH:function bWH(a,b,c){this.a=a +this.b=b +this.c=c}, +bWI:function bWI(){}, +bWJ:function bWJ(){}, +bWK:function bWK(){}, +bWL:function bWL(){}, +aDL:function aDL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bCr:function bCr(a,b,c){this.a=a +this.b=b +this.c=c}, +bCs:function bCs(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bCu:function bCu(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bCt:function bCt(a){this.a=a}, +bCq:function bCq(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bCp:function bCp(){}, +a3J:function a3J(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.k2$=0 +_.k3$=d +_.ok$=_.k4$=0 +_.p1$=!1}, +bkv:function bkv(a){this.a=a}, +bkw:function bkw(a){this.a=a}, +bkx:function bkx(a,b){this.a=a +this.b=b}, +aPK:function aPK(){}, +SX:function SX(a,b){this.a=a +this.b=b}, +rW:function rW(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +a3I:function a3I(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.k2$=0 +_.k3$=d +_.ok$=_.k4$=0 +_.p1$=!1}, +aPI:function aPI(){}, +aPJ:function aPJ(){}, +cyN(a,b,c,d,e,f,g){var s,r +if(e instanceof A.Mp)s=A.dcD(a,b,c,d,e,f,g) +else if(e instanceof A.w2)s=A.dcC(a,b,c,d,e,f,g) +else return B.p7 +if(s.aB(0,f)){r=s.F(0,f) +r.toString +J.ZA(s.cP(0,null,new A.bCz()),r)}return s}, +dcD(a,b,c,d,e,f,g){var s,r,q,p,o,n,m,l=null,k=e.b +if(k===f)k=l +s=A.aF("navigatorKeyUsed") +for(r=e.a,q=r.length,p=l,o=0;o")),q=!1;s.t();){p=r.gK(r) +if(q)n.a+="/" +if(p instanceof A.l6)o=p.a.d +else if(p instanceof A.lK)o=A.Ut(p.d) +else continue +n.a+=o +if(o.length!==0)q=q||o!=="/" +else q=!1}s=n.a +return s.charCodeAt(0)==0?s:s}, +cLR(a,b,c){var s,r,q=J.ra(a),p=J.cz(b) +if(p.gP(b) instanceof A.lK&&q.length!==0&&p.gP(b).gZz()===B.b.gP(q).gZz()){s=t.UD +r=s.a(B.b.hX(q)) +B.b.B(q,r.vY(A.cLR(r.d,s.a(p.gP(b)).d,c))) +return q}B.b.B(q,A.cLQ(p.gP(b),c)) +return q}, +cLQ(a,b){if(a instanceof A.lK)return a.vY(A.a([A.cLQ(J.kD(a.d),b)],t.K1)) +return b}, +cLS(a,b){var s,r,q,p,o,n,m,l +for(s=J.ao(a),r=s.gA(a)-1;r>=0;--r){q=s.i(a,r) +if(q.l(0,b)){for(;r>0;r=p){p=r-1 +o=s.i(a,p) +if(o instanceof A.l6){n=o.a +n=n.f!=null}else n=!0 +if(n)break}return s.cK(a,0,r)}if(q instanceof A.lK){n=q.d +m=A.cLS(n,b) +l=J.lm(m) +if(l.l(m,n))continue +n=A.R(s.cK(a,0,r),!0,t._W) +if(l.gcU(m))n.push(q.vY(m)) +return n}}return a}, +aDO(a,b){var s,r +for(s=J.au(a);s.t();){r=s.gK(s) +if(!b.$1(r))return!1 +if(r instanceof A.lK&&!A.aDO(r.d,b))return!1}return!0}, +mv:function mv(){}, +bCz:function bCz(){}, +bCy:function bCy(){}, +bCw:function bCw(){}, +bCx:function bCx(){}, +l6:function l6(a,b,c){this.a=a +this.b=b +this.c=c}, +lK:function lK(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +mb:function mb(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +bnd:function bnd(){}, +h8:function h8(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bCA:function bCA(){}, +bCC:function bCC(a){this.a=a}, +bCB:function bCB(){}, +a8E:function a8E(a,b){this.a=a +this.b=b}, +ai2:function ai2(a){this.a=a}, +cdw:function cdw(a){this.a=a}, +cdx:function cdx(a){this.a=a}, +ai1:function ai1(a){this.a=a}, +aVL:function aVL(){}, +aVM:function aVM(){}, +QQ:function QQ(a,b){this.c=a +this.a=b}, +bhf:function bhf(a){this.a=a}, +adb:function adb(a,b,c){this.c=a +this.d=b +this.a=c}, +aLL:function aLL(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +auU(a){return new A.auT(a)}, +cx7(a){return new A.Rk(a)}, +auT:function auT(a){this.a=a}, +Rk:function Rk(a){this.a=a}, +DH:function DH(a,b,c){this.f=a +this.b=b +this.a=c}, +dtN(a,b,c,d,e){return new A.nZ(b,c,e,d,a,t.Hn)}, +Qb:function Qb(a,b){this.c=a +this.a=b}, +bb9:function bb9(a){this.a=a}, +day(a,b,c,d){return d}, +o_:function o_(){}, +ae4:function ae4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.a4=a +_.ag=b +_.aq=c +_.go=d +_.id=e +_.k1=!1 +_.k3=_.k2=null +_.k4=f +_.ok=g +_.p1=h +_.p2=i +_.p3=j +_.p4=$ +_.R8=null +_.RG=$ +_.kO$=k +_.pk$=l +_.Q=m +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=n +_.CW=!0 +_.cy=_.cx=null +_.f=o +_.a=null +_.b=p +_.c=q +_.d=r +_.e=s +_.$ti=a0}, +KB:function KB(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}, +dtO(a,b,c,d,e){return new A.u6(b,c,e,d,a,t.sS)}, +SD:function SD(a,b){this.c=a +this.a=b}, +brk:function brk(a){this.a=a}, +bkr:function bkr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bks:function bks(a,b){this.a=a +this.b=b}, +bkt:function bkt(a,b,c){this.a=a +this.b=b +this.c=c}, +cTB(a,b){var s,r,q,p,o,n,m,l,k +for(s=$.cDR().kt(0,a),s=new A.oO(s.a,s.b,s.c),r=t.Qz,q=0,p="^";s.t();){o=s.d +n=(o==null?r.a(o):o).b +m=n.index +if(m>q)p+=A.b2f(B.c.R(a,q,m)) +l=n[1] +l.toString +k=n[2] +p+=k!=null?A.dlo(k,l):"(?<"+l+">[^/]+)" +b.push(l) +q=m+n[0].length}s=q"+s+")"}, +cTA(a,b){var s,r,q,p,o,n,m,l +for(s=$.cDR().kt(0,a),s=new A.oO(s.a,s.b,s.c),r=t.Qz,q=0,p="";s.t();p=l){o=s.d +n=(o==null?r.a(o):o).b +m=n.index +if(m>q)p+=B.c.R(a,q,m) +l=n[1] +l.toString +l=p+A.r(b.i(0,l)) +q=m+n[0].length}s=q"))}, +cU(a,b,c,d,e){var s=A.a([],t.s),r=new A.w2(c,a,d,s,e,b) +r.y=A.cTB(c,s) +return r}, +ddX(a,b,c){return new A.aQd(b.f,c,null)}, +ddY(a){var s=A.X(a).h("eE<1,os>") +return A.R(new A.eE(a,new A.bHl(),s),!0,s.h("B.E"))}, +cMm(a,b){return new A.oG(a,b)}, +ddV(a,b,c){var s=c.a +return new A.Aq(c,b,a,A.ddW(s,c.c),s.y)}, +ddW(a,b){return B.b.rE(a.x,new A.bHk(b))}, +os:function os(){}, +bCn:function bCn(){}, +w2:function w2(a,b,c,d,e,f){var _=this +_.d=a +_.f=b +_.r=c +_.x=d +_.y=$ +_.a=e +_.b=f}, +aEv:function aEv(){}, +bFN:function bFN(a,b,c,d){var _=this +_.a=a +_.c=b +_.d=c +_.e=d}, +Mp:function Mp(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=h}, +bHm:function bHm(a){this.a=a}, +bHl:function bHl(){}, +oG:function oG(a,b){this.a=a +this.b=b}, +Aq:function Aq(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bHk:function bHk(a){this.a=a}, +Vi:function Vi(a,b,c,d,e,f,g,h){var _=this +_.d=a +_.e=b +_.eb$=c +_.jX$=d +_.um$=e +_.hH$=f +_.ke$=g +_.a=null +_.b=h +_.c=null}, +bHh:function bHh(a,b,c){this.a=a +this.b=b +this.c=c}, +bHj:function bHj(a){this.a=a}, +bHi:function bHi(a){this.a=a}, +Bf:function Bf(a,b,c){var _=this +_.y=a +_.z=b +_.a=!1 +_.c=_.b=null +_.k2$=0 +_.k3$=c +_.ok$=_.k4$=0 +_.p1$=!1}, +G3:function G3(a,b,c){this.c=a +this.d=b +this.a=c}, +aLE:function aLE(a,b){var _=this +_.eW$=a +_.a=null +_.b=b +_.c=null}, +aQd:function aQd(a,b,c){this.c=a +this.d=b +this.a=c}, +c2m:function c2m(a,b){this.a=a +this.b=b}, +cfH:function cfH(){}, +aVK:function aVK(){}, +aiV:function aiV(){}, +b_q:function b_q(){}, +d7A(a,b,c,d,e){var s=null,r=new A.auV(A.dcz(),e) +r.aUK(!1,b,s,s,s,c,d,s,s,!1,s,!0,s,!1,e) +return r}, +cc(a){var s=a.kX(t.q0) +s=s==null?null:s.gb7() +t.ET.a(s) +return s==null?null:s.f}, +a8F:function a8F(a,b){this.a=a +this.b=b}, +auV:function auV(a,b){var _=this +_.a=$ +_.b=a +_.e=_.d=_.c=$ +_.r=b}, +bku:function bku(a){this.a=a}, +aW:function aW(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 +_.y=i}, +a3K:function a3K(a,b,c){this.f=a +this.b=b +this.a=c}, +Rl:function Rl(a,b,c){var _=this +_.a=a +_.b=b +_.k2$=0 +_.k3$=c +_.ok$=_.k4$=0 +_.p1$=!1}, +bky:function bky(a,b){this.a=a +this.b=b}, +bkz:function bkz(a,b,c){this.a=a +this.b=b +this.c=c}, +cPK(a,b){if(b)return B.a1Q +else return B.a1R}, +dwq(a,b,c){var s,r,q,p={} +p.a=s +p.a=null +s=p.a=A.cPK(!1,!0) +r=s.a.cD(a) +q=B.bll.p(0,s) +return A.dp(q?new A.aaG(r,new A.cu2(p),r.$ti.h("aaG")):r,0,null)}, +cu2:function cu2(a){this.a=a}, +BZ:function BZ(a,b){this.a=a +this.b=b}, +H5:function H5(a,b){this.b=a +this.d=b}, +ZO:function ZO(a){this.d=a}, +b3s:function b3s(a,b){this.a=a +this.b=b}, +av8:function av8(){}, +av9:function av9(){}, +a_F:function a_F(){}, +a_G:function a_G(){}, +ij(a){return new A.avk(a)}, +b6e:function b6e(){}, +b6g:function b6g(){}, +vs:function vs(a,b){this.a=a +this.b=b}, +avk:function avk(a){this.a=a}, +dN:function dN(){}, +ao1:function ao1(){}, +a1A:function a1A(a){this.$ti=a}, +Qj:function Qj(a,b){this.a=a +this.b=b}, +asd:function asd(){}, +b5u:function b5u(){}, +b5v:function b5v(a){this.a=a}, +b5w:function b5w(a){this.a=a}, +aa9:function aa9(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bHP:function bHP(a,b){this.a=a +this.b=b}, +bHQ:function bHQ(a,b){this.a=a +this.b=b}, +bHR:function bHR(){}, +bHS:function bHS(a,b,c){this.a=a +this.b=b +this.c=c}, +bHT:function bHT(a,b){this.a=a +this.b=b}, +bHU:function bHU(){}, +aa8:function aa8(){}, +cFb(a,b,c){var s=A.fe(a.buffer,a.byteOffset,null),r=c==null,q=r?a.length:c +return new A.b6f(a,s,q,b,r?a.length:c)}, +b6f:function b6f(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=0}, +ao2:function ao2(a,b){var _=this +_.a=a +_.b=b +_.c=null +_.d=0}, +qa:function qa(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +Ht:function Ht(){}, +Pd:function Pd(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=$ +_.f=!0 +_.$ti=e}, +b8Z:function b8Z(a){this.a=a}, +d8V(a,b,c,d){var s=null,r=A.od(s,d.h("a4N<0>")),q=A.aK(12,s,!1,t.HI),p=A.aK(12,0,!1,t.S) +return new A.awn(a,b,new A.aw1(new A.Gk(s,s,q,p,t.Lo),B.ex,c,t.nT),r,d.h("awn<0>"))}, +a4N:function a4N(a,b,c){this.a=a +this.b=b +this.$ti=c}, +awn:function awn(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0 +_.f=-1 +_.$ti=e}, +awK:function awK(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=$ +_.f=!0 +_.$ti=e}, +cxg(){var s=null,r=t.N +r=new A.blo(A.hg(s,s,s,r,t.Dy),A.hg(s,s,s,r,t.L0),$.cun(),A.N(t.S,t.jV)) +r.Zf(new A.asd(),!0,t.d) +r.Zf(new A.a1A(t.C9),!0,t.je) +r.Zf(new A.ao1(),!0,t.sP) +return r}, +blo:function blo(a,b,c,d){var _=this +_.b=a +_.c=b +_.e=c +_.a=d}, +avj:function avj(){}, +Rs:function Rs(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=null +_.r=_.f=!1 +_.$ti=d}, +af5:function af5(){}, +af6:function af6(){}, +af7:function af7(){}, +a8q:function a8q(a,b,c){this.a=a +this.b=b +this.$ti=c}, +c8q:function c8q(){}, +bNE:function bNE(){}, +asv:function asv(){}, +aw1:function aw1(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=1 +_.e=0 +_.$ti=d}, +Gk:function Gk(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +aQv:function aQv(){}, +aQC:function aQC(a,b){this.a=a +this.$ti=b}, +NN:function NN(a,b){this.a=a +this.$ti=b}, +aZu:function aZu(a,b){this.a=a +this.$ti=b}, +aka:function aka(a,b){this.a=a +this.$ti=b}, +Pe(a,b,c){var s=b==null?null:A.mf(b,A.X(b).c) +return new A.ad7(a,s,A.a([],t.qj),t.cu.a1(c.h("kG<0>")).h("ad7<1,2>"))}, +ad7:function ad7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.$ti=d}, +bT9:function bT9(a){this.a=a}, +bTa:function bTa(a){this.a=a}, +cH4(){return new A.a1Z(A.e4(null,null,t.K,t.N))}, +cH5(){return new A.vI(A.e4(null,null,t.K,t.N))}, +cH7(a,b,c){return new A.a20(a,b,c,A.e4(null,null,t.K,t.N))}, +cze(a){return new A.wQ(a,A.e4(null,null,t.K,t.N))}, +cwD(a,b){return new A.dk(b,a,A.e4(null,null,t.K,t.N))}, +Iy(a){var s,r,q,p,o,n,m,l,k=null,j=$.cVW().im(a) +if(j!=null){s=j.b[1].toLowerCase() +if(B.QR.aB(0,s)){r=B.QR.i(0,s) +r.toString +q=r}else q="div"}else{s=k +q="div"}p=A.blQ(a,k,!1,!0,k).aD4(q) +r=t.h7 +o=r.h("B.E") +if(A.R(new A.cv(p.geg(0).a,r),!1,o).length===1)n=A.R(new A.cv(p.geg(0).a,r),!1,o)[0] +else if(q==="html"&&A.R(new A.cv(p.geg(0).a,r),!1,o).length===2){m=p.geg(0) +l=s==="head"?0:1 +n=A.R(new A.cv(m.a,r),!1,o)[l]}else throw A.d(A.aM("HTML had "+p.geg(0).gA(0)+" top level elements but 1 expected",k)) +n.hB(0) +return n}, +d66(a){var s +if(a==null||a==="http://www.w3.org/1999/xhtml"||a==="http://www.w3.org/1998/Math/MathML"||a==="http://www.w3.org/2000/svg")return"" +s=A.cKc(a) +return s==null?"":s+":"}, +cG2(a){return new A.a0T(a,A.e4(null,null,t.K,t.N))}, +dm8(a){var s=new A.bu("") +new A.bVb(s).bg(a) +s=s.a +return s.charCodeAt(0)==0?s:s}, +lp:function lp(a,b,c){this.a=a +this.b=b +this.c=c}, +agG:function agG(){}, +aSh:function aSh(){}, +aOf:function aOf(){}, +iR:function iR(){}, +a1Z:function a1Z(a){var _=this +_.a=null +_.b=a +_.d=_.c=$ +_.e=null}, +vI:function vI(a){var _=this +_.a=null +_.b=a +_.d=_.c=$ +_.e=null}, +a20:function a20(a,b,c,d){var _=this +_.w=a +_.x=b +_.y=c +_.a=null +_.b=d +_.d=_.c=$ +_.e=null}, +wQ:function wQ(a,b){var _=this +_.w=a +_.a=null +_.b=b +_.d=_.c=$ +_.e=null}, +dk:function dk(a,b,c){var _=this +_.w=a +_.x=b +_.a=null +_.b=c +_.d=_.c=$ +_.e=null}, +bgf:function bgf(a){this.a=a}, +a0T:function a0T(a,b){var _=this +_.w=a +_.a=null +_.b=b +_.d=_.c=$ +_.e=null}, +eV:function eV(a,b){this.b=a +this.a=b}, +buM:function buM(a){this.a=a}, +atS:function atS(a){this.a=a}, +bi4:function bi4(){}, +bVb:function bVb(a){this.a=a}, +aNG:function aNG(){}, +aNH:function aNH(){}, +aNI:function aNI(){}, +aNE:function aNE(){}, +aNF:function aNF(){}, +aOg:function aOg(){}, +aOh:function aOh(){}, +aP0:function aP0(){}, +dti(a){switch(a){case"area":case"base":case"br":case"col":case"command":case"embed":case"hr":case"img":case"input":case"keygen":case"link":case"meta":case"param":case"source":case"track":case"wbr":return!0}return!1}, +dwL(a,b){var s,r,q=b.a +if(q instanceof A.dk){s=q.x +if(B.b.p(B.JT,s)||s==="plaintext"){r=J.cw(b.w) +b.w=r +a.a+=r +return}}r=J.cw(b.w) +b.w=r +a.a+=A.cSQ(r,!1)}, +bNz:function bNz(){}, +b2b(a){var s,r=A.blQ(a,null,!1,!0,null) +r.w=null +r.apF() +s=r.d.b +s===$&&A.b() +return s}, +blQ(a,b,c,d,e){var s,r=A.a([],t.eo),q=A.a([],t.Li),p=A.a([],t.gP) +q=new A.bNy("http://www.w3.org/1999/xhtml",q,new A.amM(p)) +q.b6(0) +p=A.od(null,t.N) +s=A.a([],t.t) +s=new A.blO(A.dpD(b),e,p,s) +s.f=new A.e0(a) +s.a="utf-8" +s.b6(0) +p=new A.avB(s,!0,!0,!1,A.od(null,t.cB),new A.bu(""),new A.bu(""),new A.bu("")) +p.b6(0) +return p.f=new A.blP(!1,p,q,r)}, +blP:function blP(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=!1 +_.r="no quirks" +_.w=null +_.x=$ +_.y=null +_.z=!0 +_.ok=_.k4=_.k3=_.k2=_.k1=_.id=_.go=_.fy=_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=$}, +hK:function hK(){}, +bx9:function bx9(a){this.a=a}, +bx8:function bx8(a){this.a=a}, +tZ:function tZ(a,b){this.a=a +this.b=b}, +ao_:function ao_(a,b){this.a=a +this.b=b}, +a_E:function a_E(a,b){this.a=a +this.b=b}, +aw_:function aw_(a,b){this.a=a +this.b=b}, +amS:function amS(a,b){this.a=a +this.b=b}, +RH:function RH(a,b){this.c=!1 +this.a=a +this.b=b}, +bni:function bni(a){this.a=a}, +bnh:function bnh(a){this.a=a}, +aGa:function aGa(a,b){this.a=a +this.b=b}, +a4i:function a4i(a,b){this.a=a +this.b=b}, +RJ:function RJ(a,b,c){var _=this +_.c=null +_.d=a +_.a=b +_.b=c}, +bnj:function bnj(){}, +a4d:function a4d(a,b){this.a=a +this.b=b}, +a4e:function a4e(a,b){this.a=a +this.b=b}, +Jx:function Jx(a,b){this.a=a +this.b=b}, +a4g:function a4g(a,b){this.a=a +this.b=b}, +RI:function RI(a,b){this.a=a +this.b=b}, +a4h:function a4h(a,b){this.a=a +this.b=b}, +aw0:function aw0(a,b){this.a=a +this.b=b}, +avZ:function avZ(a,b){this.a=a +this.b=b}, +amQ:function amQ(a,b){this.a=a +this.b=b}, +a4f:function a4f(a,b){this.a=a +this.b=b}, +amR:function amR(a,b){this.a=a +this.b=b}, +amO:function amO(a,b){this.a=a +this.b=b}, +amP:function amP(a,b){this.a=a +this.b=b}, +oj:function oj(a,b,c){this.a=a +this.b=b +this.c=c}, +cKc(a){switch(a){case"http://www.w3.org/1999/xhtml":return"html" +case"http://www.w3.org/1998/Math/MathML":return"math" +case"http://www.w3.org/2000/svg":return"svg" +case"http://www.w3.org/1999/xlink":return"xlink" +case"http://www.w3.org/XML/1998/namespace":return"xml" +case"http://www.w3.org/2000/xmlns/":return"xmlns" +default:return null}}, +hA(a){if(a==null)return!1 +return A.cBJ(a.charCodeAt(0))}, +cBJ(a){switch(a){case 9:case 10:case 12:case 13:case 32:return!0}return!1}, +nL(a){var s,r +if(a==null)return!1 +s=a.charCodeAt(0) +if(!(s>=97&&s<=122))r=s>=65&&s<=90 +else r=!0 +return r}, +csL(a){var s +if(a==null)return!1 +s=a.charCodeAt(0) +return s>=48&&s<58}, +cSX(a){if(a==null)return!1 +switch(a.charCodeAt(0)){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:return!0}return!1}, +d1R(a){return a>=65&&a<=90?a+97-65:a}, +bBS:function bBS(){}, +ath:function ath(a){this.a=a}, +adH:function adH(){}, +bVP:function bVP(a){this.a=a}, +czX(a){return new A.Xm()}, +bgu:function bgu(a){this.a=a +this.b=-1}, +baL:function baL(a){this.a=a}, +Xm:function Xm(){}, +dmq(a){if(1<=a&&a<=8)return!0 +if(14<=a&&a<=31)return!0 +if(127<=a&&a<=159)return!0 +if(55296<=a&&a<=57343)return!0 +if(64976<=a&&a<=65007)return!0 +switch(a){case 11:case 65534:case 65535:case 131070:case 131071:case 196606:case 196607:case 262142:case 262143:case 327678:case 327679:case 393214:case 393215:case 458750:case 458751:case 524286:case 524287:case 589822:case 589823:case 655358:case 655359:case 720894:case 720895:case 786430:case 786431:case 851966:case 851967:case 917502:case 917503:case 983038:case 983039:case 1048574:case 1048575:case 1114110:case 1114111:return!0}return!1}, +dpD(a){var s=A.b4("[\t-\r -/:-@[-`{-~]",!0,!1,!1) +if(a==null)return null +return B.aZr.i(0,A.cj(a,s,"").toLowerCase())}, +dkR(a,b){switch(a){case"ascii":return new A.e0(B.dj.hF(0,b)) +case"utf-8":return new A.e0(B.ai.hF(0,b)) +default:throw A.d(A.aM("Encoding "+a+" not supported",null))}}, +blO:function blO(a,b,c,d){var _=this +_.a=a +_.b=!0 +_.d=b +_.f=_.e=null +_.r=c +_.w=null +_.x=d +_.y=0}, +K2:function K2(){}, +am7(a,b){var s=A.a([],t.Li) +new A.ps().aEa(0,a,A.GH(b),s) +return s}, +GH(a){var s,r,q,p=null,o=A.a([],t.n_),n=A.cAR(a) +A.coF(o,p) +s=A.cA8(A.aF6(n,p),n) +r=s.a.e=!0 +q=s.YZ() +if(q!=null?o.length!==0:r)throw A.d(A.bM("'"+a+"' is not a valid selector: "+A.r(o),p,p)) +return q}, +cM2(a){switch(a){case"before":case"after":case"first-line":case"first-letter":return!0 +default:return!1}}, +ddc(a){var s,r +for(;a!=null;){s=a.b.i(0,"lang") +if(s!=null)return s +r=a.a +a=r instanceof A.dk?r:null}return null}, +ps:function ps(){this.a=null}, +bEU:function bEU(){}, +bEV:function bEV(){}, +bET:function bET(){}, +bES:function bES(a){this.a=a}, +my(a,b,c,d){return new A.Fn(b==null?A.e4(null,null,t.K,t.N):b,c,a,d)}, +qO:function qO(){}, +Ar:function Ar(){}, +Fn:function Fn(a,b,c,d){var _=this +_.e=a +_.r=!1 +_.w=b +_.b=c +_.c=d +_.a=null}, +d7:function d7(a,b){this.b=a +this.c=b +this.a=null}, +t0:function t0(){}, +be:function be(a,b,c){var _=this +_.e=a +_.b=b +_.c=c +_.a=null}, +cH:function cH(a,b){this.b=a +this.c=b +this.a=null}, +Mn:function Mn(a,b){this.b=a +this.c=b +this.a=null}, +PR:function PR(a,b){this.b=a +this.c=b +this.a=null}, +a1Y:function a1Y(a){var _=this +_.c=_.b=null +_.d="" +_.e=a +_.a=null}, +aFO:function aFO(){this.a=null +this.b=$}, +crY:function crY(){}, +crX:function crX(){}, +avB:function avB(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=null +_.r=e +_.w=null +_.x=$ +_.y=f +_.z=$ +_.at=_.as=_.Q=null +_.ax=g +_.ay=h}, +blW:function blW(a){this.a=a}, +blX:function blX(a){this.a=a}, +dmY(a,b){var s,r,q=a.a +if(q!==b.a)return!1 +if(q===0)return!0 +for(q=A.jL(a,a.r,A.z(a).c);q.t();){s=q.d +r=b.i(0,s) +if(r==null&&!b.aB(0,s))return!1 +if(!J.q(a.i(0,s),r))return!1}return!0}, +cNf(a,b,c,d){var s,r,q,p,o=a.gfC(0) +if(d==null)if(!o.gad(o)&&o.gP(o) instanceof A.wQ){s=t.As.a(o.gP(o)) +s.avm(0,b) +if(c!=null){r=c.a +q=s.e +s.e=r.xp(0,A.eF(q.a,q.b).b,A.eF(r,c.c).b)}}else{r=A.cze(b) +r.e=c +o.B(0,r)}else{p=o.c2(o,d) +if(p>0&&o.a[p-1] instanceof A.wQ)t.As.a(o.a[p-1]).avm(0,b) +else{r=A.cze(b) +r.e=c +o.eu(0,p,r)}}}, +amM:function amM(a){this.a=a}, +bNy:function bNy(a,b,c){var _=this +_.a=a +_.b=$ +_.c=b +_.d=c +_.f=_.e=null +_.r=!1}, +cC3(a,b,c){var s +if(c==null)c=a.length +if(cs?s:c)}, +cB7(a){var s,r +for(s=a.length,r=0;r")),b.h("a0g<0>")) +s.L(0,a) +return s}, +a0g:function a0g(a,b,c){this.a=a +this.c=b +this.$ti=c}, +b8C:function b8C(){}, +cK0(a){return A.dwK("media type",a,new A.brB(a))}, +cJZ(a,b,c){var s=t.N +s=c==null?A.N(s,s):A.d2B(c,s) +return new A.a5F(a.toLowerCase(),b.toLowerCase(),new A.qS(s,t.G5))}, +a5F:function a5F(a,b,c){this.a=a +this.b=b +this.c=c}, +brB:function brB(a){this.a=a}, +brD:function brD(a){this.a=a}, +brC:function brC(){}, +drW(a){var s +a.azg($.d_u(),"quoted string") +s=a.gGY().i(0,0) +return A.Zn(B.c.R(s,1,s.length-1),$.d_t(),new A.cs_(),null)}, +cs_:function cs_(){}, +bmI:function bmI(){this.c=this.b=$}, +bmN:function bmN(a){this.a=a}, +bmK:function bmK(a,b){this.a=a +this.b=b}, +bmJ:function bmJ(){}, +bmL:function bmL(a){this.a=a}, +bmM:function bmM(a){this.a=a}, +bmV:function bmV(){}, +bmW:function bmW(a,b){this.a=a +this.b=b}, +bmX:function bmX(a,b){this.a=a +this.b=b}, +bmY:function bmY(a,b){this.a=a +this.b=b}, +bsz:function bsz(){}, +bmH:function bmH(){}, +aos:function aos(a,b){this.a=a +this.b=b}, +avT:function avT(a,b,c,d,e){var _=this +_.e=a +_.a=b +_.b=c +_.c=d +_.d=e}, +bmG:function bmG(){}, +avU:function avU(a,b){this.a=a +this.b=b}, +bF(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.Qh(i,e,d,j,q,h,p,m,s,a3,a1,o,a0,k,r,n,l,a,f,a5)}, +Qh:function Qh(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=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q +_.CW=r +_.dy=s +_.fy=a0}, +cJ7(a,b,c,d,e,f,g,h){var s,r +A.a5(f,"other") +A.a5(a,"howMany") +s=B.d.au(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.d8w(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.d(A.ey(a,"howMany","Invalid plural argument"))}}, +d8w(a,b,c){var s,r,q,p,o +$.hn=b +s=$.dnx=c +$.hQ=B.d.aF(b) +r=""+b +q=B.c.c2(r,".") +s=q===-1?0:r.length-q-1 +s=Math.min(s,3) +$.iI=s +p=A.bZ(Math.pow(10,s)) +s=B.d.M(B.d.ec(b*p),p) +$.Bu=s +A.doq($.iI,s) +o=A.ln(a,A.duF(),new A.bnM()) +if($.cJ5==o){s=$.cJ6 +s.toString +return s}else{s=$.cEi().i(0,o) +$.cJ6=s +$.cJ5=o +s.toString +return s}}, +bnM:function bnM(){}, +bf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.Ek(i,c,f,k,p,n,h,e,m,g,j,b,d)}, +Ek:function Ek(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}, +as6:function as6(a,b){var _=this +_.a=1970 +_.c=_.b=1 +_.w=_.r=_.f=_.e=_.d=0 +_.z=_.y=_.x=!1 +_.Q=a +_.as=null +_.at=0 +_.ax=!1 +_.ay=b}, +bbx:function bbx(a){this.a=a}, +fy(a,b){var s=A.ln(b,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq(a) +return s}, +cGp(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("d") +return s}, +d41(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("MMM") +return s}, +cw2(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("MMMd") +return s}, +bby(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("MMMEd") +return s}, +cw1(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("MMMM") +return s}, +bbz(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("MMMMd") +return s}, +a1y(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("y") +return s}, +cw6(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("yMd") +return s}, +cw5(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("yMMMd") +return s}, +bbA(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("yMMMM") +return s}, +cw4(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("yMMMMd") +return s}, +cw3(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("yMMMMEEEEd") +return s}, +d42(){var s=A.ln(null,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("jm") +return s}, +d43(){var s=A.ln(null,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("jms") +return s}, +d44(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("m") +return s}, +d45(a){var s=A.ln(a,A.nK(),null) +s.toString +s=new A.hE(new A.kR(),s) +s.kq("s") +return s}, +as7(a){return J.vj($.amp(),a)}, +d47(){return A.a([new A.bbC(),new A.bbD(),new A.bbE()],t.xf)}, +dhG(a){var s,r +if(a==="''")return"'" +else{s=B.c.R(a,1,a.length-1) +r=$.cYP() +return A.cj(s,r,"'")}}, +hE:function hE(a,b){var _=this +_.a=a +_.b=null +_.c=b +_.x=_.w=_.r=_.f=_.e=_.d=null}, +kR:function kR(){}, +bbB:function bbB(){}, +bbF:function bbF(){}, +bbG:function bbG(a){this.a=a}, +bbC:function bbC(){}, +bbD:function bbD(){}, +bbE:function bbE(){}, +xf:function xf(){}, +X9:function X9(a,b){this.a=a +this.b=b}, +Xb:function Xb(a,b,c){this.d=a +this.a=b +this.b=c}, +Xa:function Xa(a,b){this.d=null +this.a=a +this.b=b}, +bWM:function bWM(){}, +cye(a,b){return A.cKo(b,new A.buW(a))}, +buU(a){return A.cKo(a,new A.buV())}, +cKo(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.ln(a2,A.dtH(),null) +a1.toString +s=t.vg.a($.cEh().i(0,a1)) +r=$.amt() +q=s.ay +p=a3.$1(s) +o=s.r +if(p==null)o=new A.aAf(o,null) +else{o=new A.aAf(o,null) +new A.buT(s,new A.aFs(p),!1,q,q,o).baE()}n=o.b +m=o.a +l=o.d +k=o.c +j=o.e +i=B.e.aF(Math.log(j)/$.d_g()) +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.buS(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.bu(""),s.e.charCodeAt(0)-r)}, +cyf(a){return $.cEh().aB(0,a)}, +cKp(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}, +buS:function buS(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}, +buW:function buW(a){this.a=a}, +buV:function buV(){}, +buX:function buX(a,b,c){this.a=a +this.b=b +this.c=c}, +aAf:function aAf(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}, +buT:function buT(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}, +aFs:function aFs(a){this.a=a +this.b=0}, +cNk(a,b,c){return new A.Wf(a,b,A.a([],t.s),c.h("Wf<0>"))}, +cRn(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}, +Zh(a){var s,r,q,p +if(a==null){if(A.crL()==null)$.cAz=$.cC5 +s=A.crL() +s.toString +return s}if(a==="C")return"en_ISO" +if(a.length<5)return a +r=A.cRn(a) +if(r===-1)return a +q=B.c.R(a,0,r) +p=B.c.b0(a,r+1) +if(p.length<=3)p=p.toUpperCase() +return q+"_"+p}, +ln(a,b,c){var s,r,q,p +if(a==null){if(A.crL()==null)$.cAz=$.cC5 +s=A.crL() +s.toString +return A.ln(s,b,c)}if(b.$1(a))return a +r=[A.dt1(),A.dt3(),A.dt2(),new A.cu9(),new A.cua(),new A.cub()] +for(q=0;q<6;++q){p=r[q].$1(a) +if(b.$1(p))return p}return(c==null?A.dt0():c).$1(a)}, +do7(a){throw A.d(A.aM('Invalid locale "'+a+'"',null))}, +cBm(a){switch(a){case"iw":return"he" +case"he":return"iw" +case"fil":return"tl" +case"tl":return"fil" +case"id":return"in" +case"in":return"id" +case"no":return"nb" +case"nb":return"no"}return a}, +cU4(a){var s,r +if(a==="invalid")return"in" +s=a.length +if(s<2)return a +r=A.cRn(a) +if(r===-1)if(s<4)return a.toLowerCase() +else return a +return B.c.R(a,0,r).toLowerCase()}, +Wf:function Wf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +ax6:function ax6(a){this.a=a}, +cu9:function cu9(){}, +cua:function cua(){}, +cub:function cub(){}, +dl5(){return B.aY}, +doq(a,b){if(b===0){$.cqx=0 +return}for(;B.d.M(b,10)===0;){b=B.e.ec(b/10);--a}$.cqx=b}, +dk6(){if($.hQ===1&&$.iI===0)return B.b2 +return B.aY}, +djX(){if($.hn===1)return B.b2 +return B.aY}, +dk_(){if($.hQ===0||$.hn===1)return B.b2 +return B.aY}, +dk1(){var s,r,q=$.hn +if(q===0)return B.wR +if(q===1)return B.b2 +if(q===2)return B.i1 +if(B.b.p(A.a([3,4,5,6,7,8,9,10],t.t),B.d.M($.hn,100)))return B.dz +s=J.d1(89,t.S) +for(r=0;r<89;++r)s[r]=r+11 +if(B.b.p(s,B.d.M($.hn,100)))return B.db +return B.aY}, +dk8(){var s,r=$.hn,q=B.d.M(r,10) +if(q===1&&B.d.M(r,100)!==11)return B.b2 +if(q===2||q===3||q===4){s=B.d.M(r,100) +s=!(s===12||s===13||s===14)}else s=!1 +if(s)return B.dz +if(q!==0)if(q!==5)if(q!==6)if(q!==7)if(q!==8)if(q!==9){r=B.d.M(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.db +return B.aY}, +dkb(){var s,r=$.hn,q=B.d.M(r,10) +if(q===1){s=B.d.M(r,100) +s=!(s===11||s===71||s===91)}else s=!1 +if(s)return B.b2 +if(q===2){r=B.d.M(r,100) +r=!(r===12||r===72||r===92)}else r=!1 +if(r)return B.i1 +if(q===3||q===4||q===9){r=t.t +r=!(B.b.p(A.a([10,11,12,13,14,15,16,17,18,19],r),B.d.M($.hn,100))||B.b.p(A.a([70,71,72,73,74,75,76,77,78,79],r),B.d.M($.hn,100))||B.b.p(A.a([90,91,92,93,94,95,96,97,98,99],r),B.d.M($.hn,100)))}else r=!1 +if(r)return B.dz +r=$.hn +if(r!==0&&B.d.M(r,1e6)===0)return B.db +return B.aY}, +dkc(){var s,r=$.iI===0 +if(r){s=$.hQ +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!1 +if(!s){s=$.Bu +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!0 +if(s)return B.b2 +if(r){r=$.hQ +s=B.d.M(r,10) +if(s===2||s===3||s===4){r=B.d.M(r,100) +r=!(r===12||r===13||r===14)}else r=!1}else r=!1 +if(!r){r=$.Bu +s=B.d.M(r,10) +if(s===2||s===3||s===4){r=B.d.M(r,100) +r=!(r===12||r===13||r===14)}else r=!1}else r=!0 +if(r)return B.dz +return B.aY}, +dkh(){var s=$.hQ +if(s===1&&$.iI===0)return B.b2 +if(s!==0&&B.d.M(s,1e6)===0&&$.iI===0)return B.db +return B.aY}, +dkL(){var s=$.hQ +if(s===1&&$.iI===0)return B.b2 +if((s===2||s===3||s===4)&&$.iI===0)return B.dz +if($.iI!==0)return B.db +return B.aY}, +dkN(){var s=$.hn +if(s===0)return B.wR +if(s===1)return B.b2 +if(s===2)return B.i1 +if(s===3)return B.dz +if(s===6)return B.db +return B.aY}, +dkP(){if($.hn!==1)if($.cqx!==0){var s=$.hQ +s=s===0||s===1}else s=!1 +else s=!0 +if(s)return B.b2 +return B.aY}, +dln(){if($.hn===1)return B.b2 +var s=$.hQ +if(s!==0&&B.d.M(s,1e6)===0&&$.iI===0)return B.db +return B.aY}, +dko(){var s,r=$.iI===0 +if(r){s=$.hQ +s=s===1||s===2||s===3}else s=!1 +if(!s){if(r){s=B.d.M($.hQ,10) +s=!(s===4||s===6||s===9)}else s=!1 +if(!s)if(!r){r=B.d.M($.Bu,10) +r=!(r===4||r===6||r===9)}else r=!1 +else r=!0}else r=!0 +if(r)return B.b2 +return B.aY}, +dlN(){var s=$.hQ,r=s!==0 +if(!r||s===1)return B.b2 +if(r&&B.d.M(s,1e6)===0&&$.iI===0)return B.db +return B.aY}, +dlQ(){var s=$.hn +if(s===1)return B.b2 +if(s===2)return B.i1 +if(s===3||s===4||s===5||s===6)return B.dz +if(s===7||s===8||s===9||s===10)return B.db +return B.aY}, +dmc(){var s,r=$.hQ +if(!(r===1&&$.iI===0))s=r===0&&$.iI!==0 +else s=!0 +if(s)return B.b2 +if(r===2&&$.iI===0)return B.i1 +return B.aY}, +dlG(){var s=$.hQ +if(s===0||s===1)return B.b2 +return B.aY}, +dmE(){var s,r=$.cqx +if(r===0){s=$.hQ +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!1 +if(!s)r=B.d.M(r,10)===1&&B.d.M(r,100)!==11 +else r=!0 +if(r)return B.b2 +return B.aY}, +djZ(){var s=$.hn +if(s===0||s===1)return B.b2 +return B.aY}, +dmT(){if(B.d.M($.hn,10)===1&&!B.b.p(A.a([11,12,13,14,15,16,17,18,19],t.t),B.d.M($.hn,100)))return B.b2 +var s=t.t +if(B.b.p(A.a([2,3,4,5,6,7,8,9],s),B.d.M($.hn,10))&&!B.b.p(A.a([11,12,13,14,15,16,17,18,19],s),B.d.M($.hn,100)))return B.dz +if($.Bu!==0)return B.db +return B.aY}, +dmV(){var s,r +if(B.d.M($.hn,10)!==0){s=t.t +if(!B.b.p(A.a([11,12,13,14,15,16,17,18,19],s),B.d.M($.hn,100)))s=$.iI===2&&B.b.p(A.a([11,12,13,14,15,16,17,18,19],s),B.d.M($.Bu,100)) +else s=!0}else s=!0 +if(s)return B.wR +s=$.hn +if(!(B.d.M(s,10)===1&&B.d.M(s,100)!==11)){s=$.iI===2 +if(s){r=$.Bu +r=B.d.M(r,10)===1&&B.d.M(r,100)!==11}else r=!1 +if(!r)s=!s&&B.d.M($.Bu,10)===1 +else s=!0}else s=!0 +if(s)return B.b2 +return B.aY}, +dn2(){if($.iI===0){var s=$.hQ +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!1 +if(!s){s=$.Bu +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!0 +if(s)return B.b2 +return B.aY}, +dn6(){var s=$.hn +if(s===1)return B.b2 +if(s===2)return B.i1 +if(s===0||B.b.p(A.a([3,4,5,6,7,8,9,10],t.t),B.d.M($.hn,100)))return B.dz +if(B.b.p(A.a([11,12,13,14,15,16,17,18,19],t.t),B.d.M($.hn,100)))return B.db +return B.aY}, +dnv(){var s,r,q=$.hQ,p=q===1 +if(p&&$.iI===0)return B.b2 +s=$.iI===0 +if(s){r=B.d.M(q,10) +if(r===2||r===3||r===4){r=B.d.M(q,100) +r=!(r===12||r===13||r===14)}else r=!1}else r=!1 +if(r)return B.dz +if(s)if(!p){p=B.d.M(q,10) +p=p===0||p===1}else p=!1 +else p=!1 +if(!p){if(s){p=B.d.M(q,10) +p=p===5||p===6||p===7||p===8||p===9}else p=!1 +if(!p)if(s){q=B.d.M(q,100) +q=q===12||q===13||q===14}else q=!1 +else q=!0}else q=!0 +if(q)return B.db +return B.aY}, +dnB(){var s=$.hQ,r=s!==0 +if(!r||s===1)return B.b2 +if(r&&B.d.M(s,1e6)===0&&$.iI===0)return B.db +return B.aY}, +dn3(){var s,r,q,p +if($.hQ===1&&$.iI===0)return B.b2 +if($.iI===0){s=$.hn +if(s!==0)if(s!==1){r=J.d1(19,t.S) +for(q=0;q<19;q=p){p=q+1 +r[q]=p}s=B.b.p(r,B.d.M($.hn,100))}else s=!1 +else s=!0}else s=!0 +if(s)return B.dz +return B.aY}, +dnK(){var s,r,q=$.iI===0 +if(q){s=$.hQ +s=B.d.M(s,10)===1&&B.d.M(s,100)!==11}else s=!1 +if(s)return B.b2 +if(q){s=$.hQ +r=B.d.M(s,10) +if(r===2||r===3||r===4){s=B.d.M(s,100) +s=!(s===12||s===13||s===14)}else s=!1}else s=!1 +if(s)return B.dz +if(!(q&&B.d.M($.hQ,10)===0)){if(q){s=B.d.M($.hQ,10) +s=s===5||s===6||s===7||s===8||s===9}else s=!1 +if(!s)if(q){q=B.d.M($.hQ,100) +q=q===11||q===12||q===13||q===14}else q=!1 +else q=!0}else q=!0 +if(q)return B.db +return B.aY}, +dnU(){var s=$.hn +if(s!==0)if(s!==1)s=$.hQ===0&&$.Bu===1 +else s=!0 +else s=!0 +if(s)return B.b2 +return B.aY}, +dnX(){var s,r=$.iI===0 +if(r&&B.d.M($.hQ,100)===1)return B.b2 +if(r&&B.d.M($.hQ,100)===2)return B.i1 +if(r){s=B.d.M($.hQ,100) +s=s===3||s===4}else s=!1 +if(s||!r)return B.dz +return B.aY}, +dtr(a){return $.cEi().aB(0,a)}, +ud:function ud(a,b){this.a=a +this.b=b}, +cR4(){var s,r=$.cWu() +if($.cR5==null){try{r.yN(new A.bdC())}catch(s){}$.cR5=r}return r}, +d1V(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=t.N,c=A.bxK(e,B.w,e,e,e,B.pE,B.w,e),b=A.nS(e,!0,t.zI),a=A.nS(e,!1,t.z2),a0=A.nS(e,!1,t.Ib),a1=t.y,a2=A.OZ(!1,a1),a3=t.i,a4=A.OZ(1,a3),a5=A.OZ(1,a3) +a3=A.OZ(1,a3) +s=A.OZ(!1,a1) +r=A.nS(e,!1,t.Tu) +q=A.nS(e,!1,t.Zq) +p=A.nS(e,!1,t.w2) +o=A.nS(e,!1,t.jv) +n=A.nS(e,!1,t.z7) +m=A.a([],t.t) +l=t.bo +k=A.nS(e,!0,l) +j=A.nS(e,!1,t.qO) +i=A.OZ(B.p2,t.ls) +a1=A.OZ(!1,a1) +l=A.nS(e,!1,l) +h=A.bz2(!0,t.Ub) +g=B.dJ.v4() +f=new A.b4l(B.aNh,B.aNi) +h=new A.anm(g,new A.aTX(A.N(d,t.FM)),A.N(d,t.IN),f,c,b,a,a0,a2,a4,a5,a3,s,r,q,p,o,n,m,k,j,i,a1,l,h) +h.aUq(!0,!1,e,e,!0,!0,!0,e) +return h}, +cKV(a,b,c){return new A.aBF(a,b)}, +bxK(a,b,c,d,e,f,g,h){return new A.l3(f,h==null?new A.am(Date.now(),!1):h,g,b,d,e,c,a)}, +d1X(a,b){var s=null,r=new A.b53() +if(r.$2(a,"mpd"))return new A.as0(a,b,s,s,B.dJ.v4()) +else if(r.$2(a,"m3u8"))return new A.avo(a,b,s,s,B.dJ.v4()) +else return new A.aC0(a,b,s,s,B.dJ.v4())}, +dic(a,b){var s=new A.XA(A.nS(null,!1,t.lH),a) +s.aVl(a,b) +return s}, +anm:function anm(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 +_.e=!1 +_.f=$ +_.z=_.y=_.x=_.w=_.r=null +_.Q=a +_.as=b +_.at=null +_.ax=c +_.ay=!1 +_.ch=null +_.CW=d +_.cx=e +_.cy=f +_.db=null +_.dx=g +_.dy=h +_.fr=i +_.fx=j +_.fy=k +_.go=l +_.id=m +_.k1=n +_.k2=o +_.k3=p +_.k4=q +_.ok=r +_.p1=s +_.p2=a0 +_.p3=a1 +_.p4=a2 +_.R8=a3 +_.RG=a4 +_.rx=a5 +_.ry=!1 +_.to=null +_.x1=!0 +_.c_=_.y2=!1 +_.bO=null +_.bU=0}, +b4z:function b4z(){}, +b4A:function b4A(){}, +b4B:function b4B(){}, +b4J:function b4J(){}, +b4K:function b4K(){}, +b4L:function b4L(){}, +b4M:function b4M(a){this.a=a}, +b4N:function b4N(){}, +b4O:function b4O(){}, +b4P:function b4P(){}, +b4Q:function b4Q(){}, +b4C:function b4C(){}, +b4D:function b4D(){}, +b4E:function b4E(){}, +b4F:function b4F(){}, +b4G:function b4G(){}, +b4H:function b4H(){}, +b4I:function b4I(a){this.a=a}, +b4m:function b4m(a){this.a=a}, +b4n:function b4n(a,b){this.a=a +this.b=b}, +b4V:function b4V(a){this.a=a}, +b4W:function b4W(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b4X:function b4X(a,b,c){this.a=a +this.b=b +this.c=c}, +b4R:function b4R(a,b,c){this.a=a +this.b=b +this.c=c}, +b4S:function b4S(){}, +b4T:function b4T(a,b){this.a=a +this.b=b}, +b4U:function b4U(){}, +b4Z:function b4Z(){}, +b4o:function b4o(a,b){this.a=a +this.b=b}, +b4p:function b4p(){}, +b4q:function b4q(){}, +b4Y:function b4Y(){}, +b4y:function b4y(a,b){this.a=a +this.b=b}, +b4r:function b4r(a,b,c){this.a=a +this.b=b +this.c=c}, +b4u:function b4u(a,b){this.a=a +this.b=b}, +b4w:function b4w(a){this.a=a}, +b4x:function b4x(a,b){this.a=a +this.b=b}, +b4v:function b4v(){}, +b4s:function b4s(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}, +b4t:function b4t(){}, +aBF:function aBF(a,b){this.a=a +this.b=b}, +aBG:function aBG(a){this.a=a}, +l3:function l3(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}, +nh:function nh(a,b){this.a=a +this.b=b}, +L4:function L4(a,b){this.a=a +this.b=b}, +avJ:function avJ(a,b){this.a=a +this.b=b}, +avI:function avI(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +DB:function DB(a,b){this.a=a +this.b=b}, +UU:function UU(){}, +aTX:function aTX(a){this.a=$ +this.b=!1 +this.c=a}, +vn:function vn(){}, +b53:function b53(){}, +pg:function pg(){}, +abJ:function abJ(){}, +aC0:function aC0(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.x=null +_.c=c +_.d=d +_.a=e +_.b=null}, +as0:function as0(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.x=null +_.c=c +_.d=d +_.a=e +_.b=null}, +avo:function avo(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.x=null +_.c=c +_.d=d +_.a=e +_.b=null}, +zh:function zh(a,b){this.a=a +this.b=b}, +XA:function XA(a,b){var _=this +_.b=a +_.c=$ +_.e=_.d=null +_.a=b}, +c1X:function c1X(a){this.a=a}, +aQg:function aQg(a,b){this.a=a +this.b=b}, +b4l:function b4l(a,b){this.a=a +this.b=b}, +TF:function TF(){}, +bo6:function bo6(){}, +re:function re(){}, +wy:function wy(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +rO:function rO(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}, +EO:function EO(a,b){this.a=a +this.b=b}, +bmq:function bmq(a,b){this.a=a +this.b=b}, +bmp:function bmp(a,b){this.a=a +this.b=b}, +bmo:function bmo(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bns:function bns(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bnt:function bnt(){}, +bnu:function bnu(){}, +bdD:function bdD(a){this.a=a}, +a1U:function a1U(){}, +bdC:function bdC(){}, +a1T:function a1T(){}, +bpg:function bpg(a,b,c){this.a=a +this.b=b +this.c=c}, +E1:function E1(a){this.a=a}, +bxJ:function bxJ(){}, +L2:function L2(){}, +bx_:function bx_(){}, +KV:function KV(){}, +aEp:function aEp(a){this.a=a}, +UZ:function UZ(){}, +bFr:function bFr(a){this.a=a}, +UY:function UY(){}, +bFo:function bFo(a){this.a=a}, +a9q:function a9q(){}, +bFq:function bFq(a){this.a=a}, +a9r:function a9r(){}, +aEo:function aEo(a){this.a=a}, +UW:function UW(){}, +Su:function Su(a,b){this.a=a +this.b=b}, +bFp:function bFp(a){this.a=a}, +UX:function UX(){}, +a9z:function a9z(a,b){this.a=a +this.b=b}, +bE9:function bE9(a,b){this.a=a +this.b=b}, +UL:function UL(){}, +asR:function asR(){}, +a1V:function a1V(){}, +b52:function b52(){}, +bno:function bno(){}, +bNQ:function bNQ(){}, +aC1:function aC1(a,b,c,d){var _=this +_.w=a +_.d=b +_.e=c +_.a=d}, +as1:function as1(a,b,c){this.d=a +this.e=b +this.a=c}, +avp:function avp(a,b,c){this.d=a +this.e=b +this.a=c}, +bsA:function bsA(){}, +azy:function azy(a,b){this.b=a +this.a=b}, +bsu:function bsu(){}, +bsv:function bsv(){}, +d84(a){var s=null,r=A.d1U(s) +r=new A.avv(r,B.Q6,A.N(t.N,t.CT),new A.h1(s,s,t.rt),new A.h1(s,s,t.EY),B.lF,a) +r.aUL(a) +return r}, +bo7:function bo7(a){this.a=a}, +JK:function JK(){}, +avv:function avv(a,b,c,d,e,f,g){var _=this +_.x=a +_.y=$ +_.Q=_.z=null +_.as=b +_.at=!1 +_.ax=c +_.b=d +_.c=e +_.d=f +_.e=!1 +_.f=null +_.r=1 +_.a=g}, +blw:function blw(a){this.a=a}, +blx:function blx(a){this.a=a}, +bly:function bly(a){this.a=a}, +blz:function blz(a){this.a=a}, +blA:function blA(a){this.a=a}, +blB:function blB(a){this.a=a}, +blC:function blC(a){this.a=a}, +blD:function blD(a){this.a=a}, +blE:function blE(a){this.a=a}, +xX:function xX(){}, +z7:function z7(){}, +aHe:function aHe(){}, +aC2:function aC2(a,b,c,d){var _=this +_.e=a +_.f=b +_.y=_.x=_.w=_.r=null +_.a=c +_.b=d}, +as2:function as2(a,b,c,d){var _=this +_.e=a +_.f=b +_.y=_.x=_.w=_.r=null +_.a=c +_.b=d}, +avq:function avq(a,b,c,d){var _=this +_.e=a +_.f=b +_.y=_.x=_.w=_.r=null +_.a=c +_.b=d}, +Y8:function Y8(a,b){this.a=a +this.b=b}, +c9I:function c9I(a,b){this.a=a +this.b=b}, +a1J:function a1J(){this.a=null}, +ax8:function ax8(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bpn:function bpn(){}, +lA:function lA(a,b,c){this.c=a +this.a=b +this.b=c}, +bpo:function bpo(){}, +bpp:function bpp(){}, +cJw(a){var s=$.cWB().$0(),r=$.cWC().$0(),q=new A.bpr(s,a,r),p=s.kQ() +q.a=A.ma(A.a([p,a.kQ(),r.kQ()],t.mo),!1,t.H) +return q}, +bpr:function bpr(a,b,c){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c}, +bpt:function bpt(){}, +bpu:function bpu(){}, +a0W:function a0W(){}, +cL0(a,b,c){var s=new A.bye(b,a,c) +s.aV2(!0,a,B.QE,B.bF,null,null,120,b,!1,!0,c,0) +return s}, +bye:function bye(a,b,c){var _=this +_.b=a +_.c=b +_.r=c +_.z=$ +_.at=_.as=_.Q=""}, +byf:function byf(a){this.a=a}, +wg:function wg(a,b){this.a=a +this.b=b}, +bpq:function bpq(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}, +zg(a){return $.d9o.cP(0,a,new A.bps(a))}, +Sp:function Sp(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.f=null}, +bps:function bps(a){this.a=a}, +cvz(a6,a7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=A.cG_(a6),a=b[0],a0=b[1],a1=b[2],a2=a7.as,a3=a2[0]*(0.401288*a+0.650173*a0-0.051461*a1),a4=a2[1]*(-0.250268*a+1.204414*a0+0.045854*a1),a5=a2[2]*(-0.002079*a+0.048952*a0+0.953127*a1) +a2=a7.at +s=Math.pow(a2*Math.abs(a3)/100,0.42) +r=Math.pow(a2*Math.abs(a4)/100,0.42) +q=Math.pow(a2*Math.abs(a5)/100,0.42) +p=A.Kh(a3)*400*s/(s+27.13) +o=A.Kh(a4)*400*r/(r+27.13) +n=A.Kh(a5)*400*q/(q+27.13) +m=(11*p+-12*o+n)/11 +l=(p+o-2*n)/9 +a2=20*o +k=Math.atan2(l,m)*180/3.141592653589793 +if(k<0)j=k+360 +else j=k>=360?k-360:k +i=j*3.141592653589793/180 +h=a7.r +g=a7.y +f=100*Math.pow((40*p+a2+n)/20*a7.w/h,g*a7.ay) +e=f/100 +Math.sqrt(e) +d=Math.pow(3846.153846153846*(0.25*(Math.cos((j<20.14?j+360:j)*3.141592653589793/180+2)+3.8))*a7.z*a7.x*Math.sqrt(m*m+l*l)/((20*p+a2+21*n)/20+0.305),0.9)*Math.pow(1.64-Math.pow(0.29,a7.f),0.73) +c=d*Math.sqrt(e) +Math.sqrt(d*g/(h+4)) +Math.log(1+0.0228*(c*a7.ax)) +Math.cos(i) +Math.sin(i) +return new A.aor(j,c,f,A.a([0,0,0],t.n))}, +cFB(a2,a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=a5.as,a=b[0]*(0.401288*a2+0.650173*a3-0.051461*a4),a0=b[1]*(-0.250268*a2+1.204414*a3+0.045854*a4),a1=b[2]*(-0.002079*a2+0.048952*a3+0.953127*a4) +b=a5.at +s=Math.pow(b*Math.abs(a)/100,0.42) +r=Math.pow(b*Math.abs(a0)/100,0.42) +q=Math.pow(b*Math.abs(a1)/100,0.42) +p=A.Kh(a)*400*s/(s+27.13) +o=A.Kh(a0)*400*r/(r+27.13) +n=A.Kh(a1)*400*q/(q+27.13) +m=(11*p+-12*o+n)/11 +l=(p+o-2*n)/9 +b=20*o +k=Math.atan2(l,m)*180/3.141592653589793 +if(k<0)j=k+360 +else j=k>=360?k-360:k +i=j*3.141592653589793/180 +h=a5.r +g=a5.y +f=100*Math.pow((40*p+b+n)/20*a5.w/h,g*a5.ay) +e=f/100 +Math.sqrt(e) +d=Math.pow(3846.153846153846*(0.25*(Math.cos((j<20.14?j+360:j)*3.141592653589793/180+2)+3.8))*a5.z*a5.x*Math.sqrt(m*m+l*l)/((20*p+b+21*n)/20+0.305),0.9)*Math.pow(1.64-Math.pow(0.29,a5.f),0.73) +c=d*Math.sqrt(e) +Math.sqrt(d*g/(h+4)) +Math.log(1+0.0228*(c*a5.ax)) +Math.cos(i) +Math.sin(i) +return new A.aor(j,c,f,A.a([0,0,0],t.n))}, +aor:function aor(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.y=d}, +ava(a){var s,r=new A.Ro() +r.d=a +s=A.cvz(a,$.amm()) +r.a=s.a +r.b=s.b +r.c=116*A.cvJ(A.cG_(a)[1]/100)-16 +return r}, +Ro:function Ro(){var _=this +_.d=_.c=_.b=_.a=$}, +bOw:function bOw(a,b,c,d,e,f,g,h,i,j){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.as=g +_.at=h +_.ax=i +_.ay=j}, +cG9(a,b){var s,r,q=t.S +A.abt(25,84) +s=Math.max(48,b) +A.abt(a,s) +A.abt(a,16) +r=a+60 +A.abt(r,24) +A.abt(a,4) +A.abt(a,8) +return new A.apV(new A.AE(a,s,A.N(q,q)),new A.AE(a,16,A.N(q,q)),new A.AE(r,24,A.N(q,q)),new A.AE(a,4,A.N(q,q)),new A.AE(a,8,A.N(q,q)),new A.AE(25,84,A.N(q,q)))}, +apV:function apV(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +abt(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=A.ava(A.avb(a,b,50)),d=e.b +d===$&&A.b() +s=Math.abs(d-b) +for(d=t.n,r=1;r<50;++r){q=B.e.aF(b) +p=e.b +p===$&&A.b() +if(q===B.e.aF(p))return e +o=A.avb(a,b,50+r) +n=new A.Ro() +n.d=o +q=$.amm() +p=o>>>16&255 +m=o>>>8&255 +l=o&255 +k=A.SF(A.a([A.p5(p),A.p5(m),A.p5(l)],d),$.apB) +j=A.cFB(k[0],k[1],k[2],q) +n.a=j.a +i=j.b +n.b=i +n.c=116*A.cvJ(A.SF(A.a([A.p5(p),A.p5(m),A.p5(l)],d),$.apB)[1]/100)-16 +h=Math.abs(i-b) +if(h>>16&255 +m=o>>>8&255 +l=o&255 +k=A.SF(A.a([A.p5(p),A.p5(m),A.p5(l)],d),$.apB) +j=A.cFB(k[0],k[1],k[2],q) +g.a=j.a +q=j.b +g.b=q +g.c=116*A.cvJ(A.SF(A.a([A.p5(p),A.p5(m),A.p5(l)],d),$.apB)[1]/100)-16 +f=Math.abs(q-b) +if(f=a.length)return a +return B.c.b0(a,s+1).toLowerCase()}, +bt7:function bt7(a,b){this.a=a +this.b=b}, +d1B(a){switch(a){case 0:return B.a0t +case 1:return B.a0u +case 2:return B.a0v +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +ZI:function ZI(a,b){this.a=a +this.b=b}, +cF7(a){switch(a){case-1:return B.fp +case 0:return B.zH +case 1:return B.rf +case 2:return B.rh +case 4:return B.rk +case 8:return B.rn +case 16:return B.re +case 32:return B.ri +case 64:return B.rm +case 128:return B.rd +case 256:return B.mv +case 512:return B.rl +case 1024:return B.rc +case 2048:return B.rg +case 4096:return B.rj +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +jc:function jc(a,b,c){this.c=a +this.a=b +this.b=c}, +d23(a){switch(a){case 0:return B.zI +case 1:return B.a1I +case 2:return B.a1J +case 3:return B.a1K +case 4:return B.a1L +case 5:return B.a1M +case 6:return B.a1N +case 7:return B.zJ +case 8:return B.a1O +case 9:return B.a1P +case 10:return B.a1F +case 11:return B.a1G +case 12:return B.a1H +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +nR:function nR(a,b){this.a=a +this.b=b}, +aot:function aot(a,b,c){this.c=a +this.a=b +this.b=c}, +bcy:function bcy(a,b){this.a=a +this.b=b}, +d6d(a){switch(a){case 0:return B.aiU +case 1:return B.aiV +case 2:return B.aiW +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +a2y:function a2y(a,b){this.a=a +this.b=b}, +d6m(a){switch(a){case 0:return B.aj0 +case 1:return B.aj1 +case 2:return B.aj2 +case 3:return B.aj3 +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +QM:function QM(a,b){this.a=a +this.b=b}, +dab(a){switch(a){case 0:return B.RE +case 1:return B.RF +case 2:return B.RG +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +a5U:function a5U(a,b){this.a=a +this.b=b}, +Ee:function Ee(a,b){this.a=a +this.b=b}, +daZ(a){switch(a){case 0:return B.bh8 +case 1:return B.bh9 +case 2:return B.bha +case 3:return B.bhb +case 4:return B.bhc +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +KX:function KX(a,b){this.a=a +this.b=b}, +dfQ(a){switch(a){case 0:return B.qp +case 1:return B.Zr +case 2:return B.im +default:throw A.d(A.ey(a,"value","Invalid raw value."))}}, +qP:function qP(a,b,c){this.c=a +this.a=b +this.b=c}, +bsB:function bsB(){this.d=this.c=null}, +bsC:function bsC(){}, +bsE:function bsE(){}, +bsD:function bsD(a){this.a=a}, +bsG:function bsG(){}, +bsF:function bsF(){}, +bsI:function bsI(){}, +bsH:function bsH(){}, +a5T:function a5T(a,b,c){this.c=a +this.e=b +this.a=c}, +aRS:function aRS(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +c7k:function c7k(a){this.a=a}, +c7j:function c7j(a,b){this.a=a +this.b=b}, +a5V:function a5V(a,b,c,d,e,f,g){var _=this +_.y=a +_.z=b +_.Q=c +_.at=d +_.ay=e +_.cx=_.CW=_.ch=null +_.cy=!1 +_.a=f +_.k2$=0 +_.k3$=g +_.ok$=_.k4$=0 +_.p1$=!1}, +bta:function bta(a){this.a=a}, +btb:function btb(a){this.a=a}, +btc:function btc(a){this.a=a}, +azK(a,b){return new A.of(a,b)}, +azJ(a,b,c){return new A.u7(c)}, +of:function of(a,b){this.a=a +this.b=b}, +u7:function u7(a){this.c=a}, +a6W:function a6W(){}, +btd:function btd(){}, +a5W:function a5W(a,b,c){this.a=a +this.b=b +this.c=c}, +d1D(a){return A.d1C(a)}, +d1C(a){var s,r=J.ao(a),q=t.wh.a(r.i(a,"addressLines")) +r=A.fO(r.i(a,"type")) +s=A.d1B(r==null?0:r) +if(q==null)return new A.H4(s) +r=t.N +A.hi(J.ie(q,r),r) +return new A.H4(s)}, +H4:function H4(a){this.b=a}, +d25(a){return A.d24(a)}, +d24(a1){var s,r,q,p,o,n,m,l=J.ao(a1),k=t.J1,j=k.a(l.i(a1,"calendarEvent")),i=t.wh,h=i.a(l.i(a1,"corners")),g=k.a(l.i(a1,"contactInfo")),f=k.a(l.i(a1,"driverLicense")),e=k.a(l.i(a1,"email")),d=k.a(l.i(a1,"geoPoint")),c=k.a(l.i(a1,"phone")),b=k.a(l.i(a1,"sms")),a=k.a(l.i(a1,"url")),a0=k.a(l.i(a1,"wifi")) +if(j!=null){s=J.ao(j) +A.bw(s.i(j,"description")) +r=A.bw(s.i(j,"start")) +A.bbK(r==null?"":r) +r=A.bw(s.i(j,"end")) +A.bbK(r==null?"":r) +A.bw(s.i(j,"location")) +A.bw(s.i(j,"organizer")) +A.bw(s.i(j,"status")) +A.bw(s.i(j,"summary"))}if(g!=null){s=J.ao(g) +q=i.a(s.i(g,"addresses")) +p=i.a(s.i(g,"emails")) +o=i.a(s.i(g,"phones")) +n=i.a(s.i(g,"urls")) +m=k.a(s.i(g,"name")) +if(q!=null){k=J.ie(q,t.pE) +A.hi(new A.O(k,A.doD(),A.z(k).h("O")),t.F2)}if(p!=null){k=J.ie(p,t.pE) +A.hi(new A.O(k,A.drQ(),A.z(k).h("O")),t.wl)}if(m!=null){k=J.ao(m) +A.bw(k.i(m,"first")) +A.bw(k.i(m,"middle")) +A.bw(k.i(m,"last")) +A.bw(k.i(m,"prefix")) +A.bw(k.i(m,"suffix")) +A.bw(k.i(m,"formattedName")) +A.bw(k.i(m,"pronunciation"))}A.bw(s.i(g,"organization")) +if(o!=null){k=J.ie(o,t.pE) +A.hi(new A.O(k,A.dul(),A.z(k).h("O")),t.xD)}A.bw(s.i(g,"title")) +if(n!=null){k=t.N +A.hi(J.ie(n,k),k)}}if(h!=null){k=J.ie(h,t.pE) +A.hi(new A.O(k,new A.b5P(),A.z(k).h("O")),t.EP)}A.bw(l.i(a1,"displayValue")) +if(f!=null){k=J.ao(f) +A.bw(k.i(f,"addressCity")) +A.bw(k.i(f,"addressState")) +A.bw(k.i(f,"addressStreet")) +A.bw(k.i(f,"addressZip")) +A.bw(k.i(f,"birthDate")) +A.bw(k.i(f,"documentType")) +A.bw(k.i(f,"expiryDate")) +A.bw(k.i(f,"firstName")) +A.bw(k.i(f,"gender")) +A.bw(k.i(f,"issueDate")) +A.bw(k.i(f,"issuingCountry")) +A.bw(k.i(f,"lastName")) +A.bw(k.i(f,"licenseNumber")) +A.bw(k.i(f,"middleName"))}if(e!=null)A.cHZ(e) +k=A.fO(l.i(a1,"format")) +k=A.cF7(k==null?-1:k) +if(d!=null)A.d7v(d) +if(c!=null)A.cKO(c) +t.nc.a(l.i(a1,"rawBytes")) +i=A.bw(l.i(a1,"rawValue")) +if(b!=null){s=J.ao(b) +A.bw(s.i(b,"message")) +A.bw(s.i(b,"phoneNumber"))}l=A.fO(l.i(a1,"type")) +l=A.d23(l==null?0:l) +if(a!=null){s=J.ao(a) +A.bw(s.i(a,"title")) +A.bw(s.i(a,"url"))}if(a0!=null){s=J.ao(a0) +r=A.fO(s.i(a0,"encryptionType")) +A.d6m(r==null?0:r) +A.bw(s.i(a0,"ssid")) +A.bw(s.i(a0,"password"))}return new A.vp(k,i,l)}, +vp:function vp(a,b,c){this.r=a +this.z=b +this.as=c}, +b5P:function b5P(){}, +lr:function lr(a,b,c){this.a=a +this.b=b +this.d=c}, +cvy:function cvy(){}, +cvP:function cvP(a){this.c=a}, +cwA:function cwA(){}, +d6k(a){return A.cHZ(a)}, +cHZ(a){var s=J.ao(a) +A.bw(s.i(a,"address")) +A.bw(s.i(a,"body")) +A.bw(s.i(a,"subject")) +s=A.fO(s.i(a,"type")) +return new A.QJ(A.d6d(s==null?0:s))}, +QJ:function QJ(a){this.d=a}, +d7v(a){var s=J.ao(a),r=A.nG(s.i(a,"latitude")),q=A.nG(s.i(a,"longitude")) +if(r==null||q==null)return B.a4M +return new A.auJ()}, +auJ:function auJ(){}, +rG:function rG(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}, +cyq:function cyq(){}, +db_(a){return A.cKO(a)}, +cKO(a){var s=J.ao(a) +A.bw(s.i(a,"number")) +s=A.fO(s.i(a,"type")) +return new A.Tw(A.daZ(s==null?0:s))}, +Tw:function Tw(a){this.b=a}, +cyR:function cyR(){}, +bH9:function bH9(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bHa:function bHa(){}, +czx:function czx(){}, +czG:function czG(){}, +b5M:function b5M(){}, +b5N:function b5N(a){this.a=a}, +b5O:function b5O(a,b){this.a=a +this.b=b}, +brA:function brA(){}, +azL:function azL(a,b){var _=this +_.b=null +_.c=a +_.d=null +_.e=$ +_.f=!1 +_.r=b +_.w=1 +_.x=$}, +btg:function btg(){}, +bth:function bth(){}, +bte:function bte(a){this.a=a}, +btf:function btf(a){this.a=a}, +dcw(a){var s,r=a.barcodeFormat +$label0$0:{if(0===r){s=B.rj +break $label0$0}if(1===r){s=B.rn +break $label0$0}if(2===r){s=B.rh +break $label0$0}if(3===r){s=B.rk +break $label0$0}if(4===r){s=B.rf +break $label0$0}if(5===r){s=B.re +break $label0$0}if(6===r){s=B.rm +break $label0$0}if(7===r){s=B.ri +break $label0$0}if(8===r){s=B.rd +break $label0$0}if(9===r){s=B.fp +break $label0$0}if(10===r){s=B.rg +break $label0$0}if(11===r){s=B.mv +break $label0$0}if(12===r){s=B.fp +break $label0$0}if(13===r){s=B.fp +break $label0$0}if(14===r){s=B.rl +break $label0$0}if(15===r){s=B.rc +break $label0$0}if(16===r){s=B.fp +break $label0$0}s=B.fp +break $label0$0}return s}, +dcx(a){var s,r=a.resultPoints +if(r==null)return B.aNu +s=t.Lc.b(r)?r:new A.ek(r,A.X(r).h("ek<1,aL>")) +s=J.dP(s,new A.bCc(),t.EP) +return A.R(s,!0,s.$ti.h("aa.E"))}, +bCc:function bCc(){}, +dlw(a){var s +$label0$0:{if(B.rj===a){s=0 +break $label0$0}if(B.rn===a){s=1 +break $label0$0}if(B.rh===a){s=2 +break $label0$0}if(B.rk===a){s=3 +break $label0$0}if(B.rf===a){s=4 +break $label0$0}if(B.re===a){s=5 +break $label0$0}if(B.rm===a){s=6 +break $label0$0}if(B.ri===a){s=7 +break $label0$0}if(B.rd===a){s=8 +break $label0$0}if(B.rg===a){s=10 +break $label0$0}if(B.mv===a){s=11 +break $label0$0}if(B.rl===a){s=14 +break $label0$0}if(B.rc===a){s=15 +break $label0$0}s=-1 +break $label0$0}return s}, +bQ9:function bQ9(){this.c=this.a=null}, +bQb:function bQb(a,b){this.a=a +this.b=b}, +bQa:function bQa(a){this.a=a}, +bQc:function bQc(a,b){this.a=a +this.b=b}, +bQd:function bQd(){}, +ddu(a){return new A.a9E(null,a,B.aD)}, +bG4:function bG4(){}, +ceS:function ceS(a){this.a=a}, +Af:function Af(){}, +a9E:function a9E(a,b,c){var _=this +_.bw4$=a +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1}, +aWG:function aWG(){}, +an5:function an5(a,b){this.a=a +this.b=b}, +Di:function Di(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aeD:function aeD(a,b,c){var _=this +_.f=_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +c_q:function c_q(a,b){this.a=a +this.b=b}, +akX:function akX(){}, +a6x:function a6x(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}, +aSC:function aSC(a){var _=this +_.d=null +_.e=$ +_.a=null +_.b=a +_.c=null}, +cIT(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1){var s=new A.avQ(m,a1,l,k,a,a0,!1,c,d,j,n,p,r,e,q,i,h,g,f,b) +s.z=s.b_7() +return s}, +agI:function agI(a,b){this.a=a +this.b=b}, +avQ:function avQ(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}, +aAq:function aAq(a){this.a=a}, +aDB:function aDB(a,b){this.a=a +this.b=b}, +cBR(a){var s=0,r=A.p(t.y),q,p +var $async$cBR=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=window +p.toString +q=B.by5.bGi(p,a).bf(new A.ct5(),t.y).mY(new A.ct6()) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cBR,r)}, +ct5:function ct5(){}, +ct6:function ct6(){}, +d3o(a,b){return new A.bac(a,b)}, +bac:function bac(a,b){this.a=a +this.b=b}, +oh:function oh(){}, +bvk:function bvk(a,b){this.a=a +this.b=b}, +bvl:function bvl(a){this.a=a}, +bvn:function bvn(a,b){this.a=a +this.b=b}, +bvm:function bvm(a,b){this.a=a +this.b=b}, +op:function op(){}, +bzc:function bzc(a,b){this.a=a +this.b=b}, +bze:function bze(a,b){this.a=a +this.b=b}, +bzd:function bzd(a){this.a=a}, +bw4(){var s=0,r=A.p(t.A9),q,p,o +var $async$bw4=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=$.cKx +if(o!=null){q=o +s=1 +break}s=3 +return A.i($.cWY().ta(0,null),$async$bw4) +case 3:p=b +q=$.cKx=new A.a6D(p.a,p.b,p.c,p.d,p.e,p.f) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bw4,r)}, +a6D:function a6D(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +djE(a){if(a.zt("chrome-extension"))return a.gfX()+"://"+a.gla(a) +return a.gCP(a)}, +bw2:function bw2(a){this.b=a}, +bw3:function bw3(){}, +bsJ:function bsJ(){}, +a6E:function a6E(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bw1:function bw1(){}, +cvR(a,b){if(a==null)a="." +return new A.apP(b,a)}, +cAW(a){return a}, +cRw(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.bu("") +o=""+(a+"(") +p.a=o +n=A.X(b) +m=n.h("b3<1>") +l=new A.b3(b,0,s,m) +l.dD(b,0,s,n.c) +m=o+new A.O(l,new A.cqW(),m.h("O")).bQ(0,", ") +p.a=m +p.a=m+("): part "+(r-1)+" was null, but part "+r+" was not.") +throw A.d(A.aM(p.k(0),null))}}, +apP:function apP(a,b){this.a=a +this.b=b}, +baT:function baT(){}, +baU:function baU(){}, +cqW:function cqW(){}, +bnL:function bnL(){}, +ub(a,b){var s,r,q,p,o,n=b.aJd(a),m=b.zs(a) +if(n!=null)a=B.c.b0(a,n.length) +s=t.s +r=A.a([],s) +q=A.a([],s) +s=a.length +if(s!==0&&b.uC(a.charCodeAt(0))){q.push(a[0]) +p=1}else{q.push("") +p=0}for(o=p;o").a1(e).h("a5i<1,2>"))}, +a5i:function a5i(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +abr:function abr(a,b){this.a=a +this.$ti=b}, +cBb(a,b){var s=new A.O(new A.e0(a),A.cRV(),t.Hz.h("O")).jG(0) +return new A.Mh(new A.a9C(a.charCodeAt(0)),'"'+s+'" expected')}, +a9C:function a9C(a){this.a=a}, +HT:function HT(a){this.a=a}, +axc:function axc(a,b,c){this.a=a +this.b=b +this.c=c}, +aAb:function aAb(a){this.a=a}, +dtK(a){var s,r,q,p,o,n,m,l,k=A.R(a,!1,t.eg) +B.b.iL(k,new A.ct7()) +s=A.a([],t.zT) +for(r=k.length,q=0;q=p.a){n=p.b +s[s.length-1]=new A.jr(o.a,n)}else s.push(p)}}m=B.b.l8(s,0,new A.ct8(),t.S) +if(m===0)return B.ag3 +else if(m-1===65535)return B.ag4 +else if(s.length===1){r=s[0] +n=r.a +return n===r.b?new A.a9C(n):r}else{r=B.b.ga2(s) +n=B.b.gP(s) +l=B.d.b2(B.b.gP(s).b-B.b.ga2(s).a+1+31,5) +r=new A.axc(r.a,n.b,new Uint32Array(l)) +r.aUT(s) +return r}}, +ct7:function ct7(){}, +ct8:function ct8(){}, +cTz(a,b){var s=$.d_r().dY(new A.Q2(a,0)) +s=s.gj(s) +return new A.Mh(s,b==null?"["+new A.O(new A.e0(a),A.cRV(),t.Hz.h("O")).jG(0)+"] expected":b)}, +cqt:function cqt(){}, +cq9:function cq9(){}, +cq3:function cq3(){}, +kb:function kb(){}, +jr:function jr(a,b){this.a=a +this.b=b}, +aHP:function aHP(){}, +d2N(a,b,c){var s=b==null?A.cSt():b +return new A.HJ(s,A.R(a,!1,c.h("bz<0>")),c.h("HJ<0>"))}, +Cg(a,b,c){var s=b==null?A.cSt():b +return new A.HJ(s,A.R(a,!1,c.h("bz<0>")),c.h("HJ<0>"))}, +HJ:function HJ(a,b,c){this.b=a +this.a=b +this.$ti=c}, +jf:function jf(){}, +cU0(a,b,c,d){return new A.M6(a,b,c.h("@<0>").a1(d).h("M6<1,2>"))}, +ddf(a,b,c,d){return new A.M6(a,b,c.h("@<0>").a1(d).h("M6<1,2>"))}, +cLk(a,b,c,d,e){return A.E7(a,new A.bzU(b,c,d,e),!1,c.h("@<0>").a1(d).h("+(1,2)"),e)}, +M6:function M6(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bzU:function bzU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +vg(a,b,c,d,e,f){return new A.M7(a,b,c,d.h("@<0>").a1(e).a1(f).h("M7<1,2,3>"))}, +ddg(a,b,c,d,e,f){return new A.M7(a,b,c,d.h("@<0>").a1(e).a1(f).h("M7<1,2,3>"))}, +Lq(a,b,c,d,e,f){return A.E7(a,new A.bzV(b,c,d,e,f),!1,c.h("@<0>").a1(d).a1(e).h("+(1,2,3)"),f)}, +M7:function M7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +bzV:function bzV(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ctI(a,b,c,d,e,f,g,h){return new A.a9n(a,b,c,d,e.h("@<0>").a1(f).a1(g).a1(h).h("a9n<1,2,3,4>"))}, +bzW(a,b,c,d,e,f,g){return A.E7(a,new A.bzX(b,c,d,e,f,g),!1,c.h("@<0>").a1(d).a1(e).a1(f).h("+(1,2,3,4)"),g)}, +a9n:function a9n(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +bzX:function bzX(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +cU1(a,b,c,d,e,f,g,h,i,j){return new A.a9o(a,b,c,d,e,f.h("@<0>").a1(g).a1(h).a1(i).a1(j).h("a9o<1,2,3,4,5>"))}, +cLl(a,b,c,d,e,f,g,h){return A.E7(a,new A.bzY(b,c,d,e,f,g,h),!1,c.h("@<0>").a1(d).a1(e).a1(f).a1(g).h("+(1,2,3,4,5)"),h)}, +a9o:function a9o(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.$ti=f}, +bzY:function bzY(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +dca(a,b,c,d,e,f,g,h,i,j,k){return A.E7(a,new A.bzZ(b,c,d,e,f,g,h,i,j,k),!1,c.h("@<0>").a1(d).a1(e).a1(f).a1(g).a1(h).a1(i).a1(j).h("+(1,2,3,4,5,6,7,8)"),k)}, +a9p:function a9p(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}, +bzZ:function bzZ(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}, +K1:function K1(){}, +daI(a,b){return new A.qs(null,a,b.h("qs<0?>"))}, +qs:function qs(a,b,c){this.b=a +this.a=b +this.$ti=c}, +a9M:function a9M(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +IC:function IC(a,b){this.a=a +this.$ti=b}, +aA6:function aA6(a){this.a=a}, +cB8(){return new A.rd("input expected")}, +rd:function rd(a){this.a=a}, +Mh:function Mh(a,b){this.a=a +this.b=b}, +aBS:function aBS(a,b,c){this.a=a +this.b=b +this.c=c}, +ep(a){var s=a.length +if(s===0)return new A.IC(a,t.oy) +else if(s===1){s=A.cBb(a,null) +return s}else{s=A.dvZ(a,null) +return s}}, +dvZ(a,b){return new A.aBS(a.length,new A.ctW(a),'"'+a+'" expected')}, +ctW:function ctW(a){this.a=a}, +cLI(a,b,c,d){return new A.aDq(a.a,d,b,c)}, +aDq:function aDq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +pj:function pj(a,b,c,d,e){var _=this +_.e=a +_.b=b +_.c=c +_.a=d +_.$ti=e}, +a4W:function a4W(){}, +dbB(a,b){return A.cyx(a,0,9007199254740991,b)}, +cyx(a,b,c,d){return new A.a7g(b,c,a,d.h("a7g<0>"))}, +a7g:function a7g(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +a8p:function a8p(){}, +cRp(a,b,c){switch(a.a){case 0:switch(b){case B.j:return!0 +case B.ae:return!1 +case null:case void 0:return null}break +case 1:switch(c){case B.x:return!0 +case B.mc:return!1 +case null:case void 0:return null}break}}, +a82:function a82(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.D=a +_.N=b +_.a4=c +_.ag=d +_.aq=e +_.aJ=f +_.U=g +_.aW=h +_.aT=0 +_.aU=i +_.ck=j +_.wc$=k +_.MQ$=l +_.cT$=m +_.Y$=n +_.d7$=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}, +bAI:function bAI(){}, +bAE:function bAE(){}, +bAG:function bAG(){}, +bAC:function bAC(){}, +c3l:function c3l(a,b,c){this.a=a +this.b=b +this.c=c}, +aUT:function aUT(){}, +aUV:function aUV(){}, +ahv:function ahv(){}, +a8d:function a8d(a,b,c,d,e,f,g,h,i,j){var _=this +_.lG=a +_.D=b +_.aq=_.ag=_.a4=_.N=null +_.aJ=c +_.U=d +_.aW=e +_.aT=null +_.aU=!1 +_.f1=_.eq=_.eA=_.ck=null +_.wd$=f +_.cT$=g +_.Y$=h +_.d7$=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}, +Ck(a,b,c,d,e,f,g){var s +if(d!=null)s=A.fH(d,null) +else s=null +return new A.apN(a,g,b,c,s,f,e)}, +cxm(a,b,c){return new A.avH(a,c,b,null)}, +b3G(a,b,c,d,e,f){var s,r,q=null +if(d==null)s=b!=null?new A.c_(b,q,q,q,q,q,q,B.U):q +else s=d +if(f!=null||!1)r=A.fH(q,f) +else r=q +return new A.an_(a,s,r,c,e,q)}, +cyO(a,b,c){return new A.aDP(B.a_,b,c,B.t,null,B.x,null,a,null)}, +bKG(a,b,c,d){return new A.aFY(a,d,c,b,null)}, +cLO(a,b){var s,r,q,p,o +$label0$0:{s=1===b +r=b +q=a +p=q +o=!0 +if(s){s=q +break $label0$0}if(B.Y.l(0,p)){if(o)s=r +else{s=b +r=s +o=!0}s=typeof s=="number"}else s=!1 +if(s){s=new A.li(o?r:b) +break $label0$0}s=p +break $label0$0 +throw A.d(A.iB(u.P))}return s}, +apJ:function apJ(a,b,c){this.c=a +this.d=b +this.a=c}, +apN:function apN(a,b,c,d,e,f,g){var _=this +_.c=a +_.e=b +_.f=c +_.r=d +_.x=e +_.y=f +_.a=g}, +zG:function zG(a,b,c){this.c=a +this.d=b +this.a=c}, +V6:function V6(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +avH:function avH(a,b,c,d){var _=this +_.c=a +_.d=b +_.x=c +_.a=d}, +an_:function an_(a,b,c,d,e,f){var _=this +_.c=a +_.f=b +_.w=c +_.as=d +_.at=e +_.a=f}, +au9:function au9(){}, +aDP:function aDP(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.c=h +_.a=i}, +aFY:function aFY(a,b,c,d,e){var _=this +_.c=a +_.e=b +_.z=c +_.at=d +_.a=e}, +aDD:function aDD(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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 +_.c=n +_.a=o}, +lD(a){var s +a.a0(t.IG) +s=A.bC(a,B.ev,t.l).w +return new A.aBp(s.b,A.dun())}, +dl_(a,b,c){if(!isFinite(a))return a +switch(c.a){case 0:return B.e.aF(a*b-0.05)/b +case 1:return B.e.dO(a*b)/b +case 2:return B.e.ec(a*b)/b}}, +L0:function L0(a,b){this.a=a +this.b=b}, +aBp:function aBp(a,b){this.a=a +this.b=b}, +cyu(a,b,c){return new A.j(b.$2(a.a,c),b.$2(a.b,c))}, +cKT(a,b,c){return new A.V(b.$2(a.a,c),b.$2(a.b,c))}, +cQh(a){switch(a.a){case 0:return B.av +case 1:return B.bhQ +case 2:return B.hZ}}, +cyt(a,b){if(a instanceof A.af)return new A.af(b.$2(a.a,B.av),b.$2(a.b,B.av),b.$2(a.c,B.av),b.$2(a.d,B.av)) +else if(a instanceof A.eB)return new A.eB(b.$2(a.a,B.av),b.$2(a.b,B.av),b.$2(a.c,B.av),b.$2(a.d,B.av)) +else return a}, +cys(a,b){return new A.aG(b.$2(a.a,B.av),b.$2(a.b,B.av),b.$2(a.c,B.av),b.$2(a.d,B.av))}, +KZ(a,b,c){return new A.bx(a.a,b.$2(a.b,c),a.c,a.d)}, +L_(a,b,c){return new A.bb(b.$2(a.a,c),b.$2(a.b,c))}, +db5(a,b,c){if(a instanceof A.eR)return new A.eR(A.KZ(a.a,b,c),A.KZ(a.b,b,c),A.KZ(a.c,b,c),A.KZ(a.d,b,c)) +else if(a instanceof A.ls)return new A.ls(A.KZ(a.a,b,c),A.KZ(a.b,b,c),A.KZ(a.c,b,c),A.KZ(a.d,b,c)) +else return a}, +db6(a,b,c){var s,r,q,p=a.c +p=p==null?null:A.db5(p,b,c) +s=a.d +s=s==null?null:A.db4(s,b,c) +r=a.e +if(r==null)r=null +else{q=A.X(r).h("O<1,f5>") +q=A.R(new A.O(r,new A.bxp(b,c),q),!1,q.h("aa.E")) +r=q}return new A.c_(a.a,a.b,p,s,r,a.f,a.r,a.w)}, +cKS(a,b){var s=A.db6(a,b,B.av) +return s}, +db4(a,b,c){if(a instanceof A.dJ)return new A.dJ(A.L_(a.a,b,c),A.L_(a.b,b,c),A.L_(a.c,b,c),A.L_(a.d,b,c)) +else if(a instanceof A.vq)return new A.vq(A.L_(a.a,b,c),A.L_(a.b,b,c),A.L_(a.c,b,c),A.L_(a.d,b,c)) +else return a}, +bxp:function bxp(a,b){this.a=a +this.b=b}, +db8(a,b,c,d,e,f){var s=$.ae() +s=new A.a78(B.dB,f,a,!0,b,new A.bm(!1,s,t.uh),s) +s.xz(a,b,!0,e,f) +s.Ay(a,b,c,!0,e,f) +return s}, +aBq:function aBq(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.k2$=0 +_.k3$=g +_.ok$=_.k4$=0 +_.p1$=!1}, +a78:function a78(a,b,c,d,e,f,g){var _=this +_.k3=0 +_.k4=a +_.ok=null +_.r=b +_.w=c +_.x=d +_.y=e +_.Q=_.z=null +_.as=0 +_.ax=_.at=null +_.ay=!1 +_.ch=!0 +_.CW=!1 +_.cx=null +_.cy=!1 +_.dx=_.db=null +_.dy=f +_.fr=null +_.k2$=0 +_.k3$=g +_.ok$=_.k4$=0 +_.p1$=!1}, +nf(a,b,c){var s +if(c){s=$.GR() +A.fT(a) +s=s.a.get(a)===B.dk}else s=!1 +if(s)throw A.d(A.pV("`const Object()` cannot be used as the token.")) +s=$.GR() +A.fT(a) +if(b!==s.a.get(a))throw A.d(A.pV("Platform interfaces must not be implemented with `implements`"))}, +bxu:function bxu(){}, +aFn:function aFn(){}, +cLt(a){return new A.U7(a)}, +cLu(a){return new A.U7("Algorithm name "+a+" is invalid")}, +OI:function OI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +a0l:function a0l(){}, +qg:function qg(a){this.a=a}, +KN:function KN(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ua:function ua(a,b,c){this.a=a +this.b=b +this.$ti=c}, +U7:function U7(a){this.a=a}, +daz(a,b){var s,r=new A.buZ() +r.$0() +s=r.$0().gjz() +s=new Uint8Array(s) +r.$0().mc(s,0) +return new A.El(s)}, +El:function El(a){this.c=a}, +bv0:function bv0(){}, +bv_:function bv_(a){this.a=a}, +buZ:function buZ(){}, +cKw(a){return new A.Et()}, +Et:function Et(){}, +bvW:function bvW(){}, +bvV:function bvV(a){this.a=a}, +cyE(){return new A.TY()}, +TY:function TY(){}, +bzn:function bzn(){}, +GX:function GX(a){var _=this +_.a=0 +_.b=$ +_.c=!1 +_.d=a}, +b30:function b30(){}, +bcm:function bcm(){}, +Qg:function Qg(){var _=this +_.c=_.b=_.a=null +_.d=!1}, +bbl:function bbl(){}, +aon(a){var s=new A.C9(a),r=a.gb3() +s.b=new Uint8Array(r) +r=a.gb3() +s.c=new Uint8Array(r) +r=a.gb3() +s.d=new Uint8Array(r) +return s}, +C9:function C9(a){var _=this +_.a=a +_.b=$ +_.d=_.c=null +_.e=$}, +b7w:function b7w(){}, +b7v:function b7v(a){this.a=a}, +Ca:function Ca(a,b,c){var _=this +_.Q=_.z=$ +_.as=null +_.ax=_.at=$ +_.ay=a +_.ch=b +_.CW=$ +_.a=c +_.c=_.b=$ +_.d=null +_.f=_.e=$ +_.x=_.w=_.r=null +_.y=$}, +b7y:function b7y(){}, +b7x:function b7x(a){this.a=a}, +Cb:function Cb(a,b){var _=this +_.a=a +_.b=b +_.c=$ +_.e=_.d=null +_.f=$}, +b7A:function b7A(){}, +b7z:function b7z(a){this.a=a}, +Cd:function Cd(a,b){this.a=a +this.b=b}, +b7G:function b7G(){}, +b7F:function b7F(a){this.a=a}, +Cx:function Cx(a){this.a=a}, +bep:function bep(){}, +beo:function beo(a){this.a=a}, +d7u(a){var s=new Uint8Array(16) +s[0]=225 +return new A.Dw(s,a)}, +Dw:function Dw(a,b){var _=this +_.ay=_.ax=_.at=_.as=_.Q=_.z=$ +_.ch=0 +_.CW=a +_.a=b +_.c=_.b=$ +_.d=null +_.f=_.e=$ +_.x=_.w=_.r=null +_.y=$}, +bjF:function bjF(){}, +bjE:function bjE(a){this.a=a}, +Dx:function Dx(a){var _=this +_.a=a +_.b=$ +_.d=_.c=null +_.e=!0 +_.r=_.f=$}, +bjH:function bjH(){}, +bjG:function bjG(a){this.a=a}, +Dy:function Dy(a){var _=this +_.a=a +_.f=_.e=_.d=_.c=_.b=$}, +bme:function bme(){}, +bmd:function bmd(a){this.a=a}, +Em:function Em(a,b){var _=this +_.a=a +_.b=b +_.c=$ +_.e=_.d=null}, +bv2:function bv2(){}, +bv1:function bv1(a){this.a=a}, +F3:function F3(a,b){this.a=a +this.b=b}, +bCU:function bCU(){}, +bCT:function bCT(a){this.a=a}, +TS:function TS(){this.a=!1 +this.b=null}, +bzg:function bzg(){}, +P1:function P1(a,b,c,d,e){var _=this +_.a=64 +_.b=0 +_.f=_.e=_.d=_.c=null +_.r=0 +_.w=a +_.x=null +_.y=b +_.z=c +_.Q=d +_.as=e}, +b6k:function b6k(){}, +Cc:function Cc(a,b,c){var _=this +_.as=null +_.at=a +_.a=b +_.b=c +_.f=_.e=_.d=_.c=$}, +b7E:function b7E(){}, +b7D:function b7D(a){this.a=a}, +DR:function DR(a,b){var _=this +_.a=a +_.b=b +_.f=_.e=_.d=_.c=$}, +boc:function boc(){}, +bob:function bob(a){this.a=a}, +Sv:function Sv(a,b,c){var _=this +_.a=a +_.b=0 +_.c=b +_.d=0 +_.e=c}, +bq_:function bq_(){}, +Sw:function Sw(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bq0:function bq0(){}, +Sx:function Sx(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bq1:function bq1(){}, +TT:function TT(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bzi:function bzi(){}, +TU:function TU(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bzj:function bzj(){}, +TV:function TV(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bzk:function bzk(){}, +TW:function TW(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bzl:function bzl(){}, +cLV(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.Uy(s,r,B.aF,5,A.aK(5,0,!1,q),A.aK(80,0,!1,q)) +q.b6(0) +return q}, +Uy:function Uy(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bCI:function bCI(){}, +Uz:function Uz(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bCJ:function bCJ(){}, +UA:function UA(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +bCK:function bCK(){}, +F1:function F1(a,b){var _=this +_.a=a +_.b=b +_.f=_.e=_.d=_.c=$}, +bCN:function bCN(){}, +bCM:function bCM(a){this.a=a}, +UB:function UB(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=0 +_.z=j +_.Q=0 +_.as=k +_.at=l}, +bCL:function bCL(){}, +UC:function UC(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=0 +_.z=j +_.Q=0 +_.as=k +_.at=l}, +bCO:function bCO(){}, +F2:function F2(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.ax=a +_.ay=b +_.ch=c +_.CW=d +_.cx=e +_.cy=f +_.db=g +_.dx=h +_.dy=i +_.a=j +_.b=k +_.c=l +_.d=m +_.e=n +_.f=o +_.r=p +_.w=q +_.x=r +_.y=0 +_.z=s +_.Q=0 +_.as=a0 +_.at=a1}, +bCQ:function bCQ(){}, +bCP:function bCP(a){this.a=a}, +dcG(a){var s=new Uint8Array(200) +s=new A.wF(s,new Uint8Array(192)) +s.ahV(a) +return s}, +wF:function wF(a,b){var _=this +_.a=a +_.b=b +_.f=_.e=_.d=_.c=$}, +bCS:function bCS(){}, +bCR:function bCR(a){this.a=a}, +dcH(a,b,c){return(a^b^c)>>>0}, +UD:function UD(a,b,c,d,e,f,g){var _=this +_.x=a +_.a=b +_.b=c +_.c=$ +_.d=d +_.e=e +_.f=f +_.r=g +_.w=$}, +bCX:function bCX(){}, +VU:function VU(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=0 +_.r=f +_.w=0}, +bLD:function bLD(){}, +Ws:function Ws(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g}, +bOW:function bOW(){}, +d5h(a,b,c,d,e,f){return new A.Cy(b,e)}, +Cy:function Cy(a,b){this.b=a +this.f=b}, +beq:function beq(){}, +d5i(a,b,c,d,e,f){return new A.Cz(b,e)}, +Cz:function Cz(a,b){this.b=a +this.f=b}, +ber:function ber(){}, +d5j(a,b,c,d,e,f){return new A.CA(b,e)}, +CA:function CA(a,b){this.b=a +this.f=b}, +bes:function bes(){}, +d5k(a,b,c,d,e,f){return new A.CB(b,e)}, +CB:function CB(a,b){this.b=a +this.f=b}, +bet:function bet(){}, +d5l(a,b,c,d,e,f){return new A.CC(b,e)}, +CC:function CC(a,b){this.b=a +this.f=b}, +beu:function beu(){}, +d5m(a,b,c,d,e,f){return new A.CD(b,e)}, +CD:function CD(a,b){this.b=a +this.f=b}, +bev:function bev(){}, +d5n(a,b,c,d,e,f){return new A.CE(b,e)}, +CE:function CE(a,b){this.b=a +this.f=b}, +bew:function bew(){}, +d5o(a,b,c,d,e,f){return new A.CF(b,e)}, +CF:function CF(a,b){this.b=a +this.f=b}, +bex:function bex(){}, +d5p(a,b,c,d,e,f){return new A.CG(b,e)}, +CG:function CG(a,b){this.b=a +this.f=b}, +bey:function bey(){}, +d5q(a,b,c,d,e,f){return new A.CH(b,e)}, +CH:function CH(a,b){this.b=a +this.f=b}, +bez:function bez(){}, +d5r(a,b,c,d,e,f){return new A.CI(b,e)}, +CI:function CI(a,b){this.b=a +this.f=b}, +beA:function beA(){}, +d5s(a,b,c,d,e,f){return new A.CJ(b,e)}, +CJ:function CJ(a,b){this.b=a +this.f=b}, +beB:function beB(){}, +d5t(a,b,c,d,e,f){return new A.CK(b,e)}, +CK:function CK(a,b){this.b=a +this.f=b}, +beC:function beC(){}, +d5u(a,b,c,d,e,f){return new A.CL(b,e)}, +CL:function CL(a,b){this.b=a +this.f=b}, +beD:function beD(){}, +d5v(a,b,c,d,e,f){return new A.CM(b,e)}, +CM:function CM(a,b){this.b=a +this.f=b}, +beE:function beE(){}, +d5w(a,b,c,d,e,f){return new A.CN(b,e)}, +CN:function CN(a,b){this.b=a +this.f=b}, +beF:function beF(){}, +d5x(a,b,c,d,e,f){return new A.CO(b,e)}, +CO:function CO(a,b){this.b=a +this.f=b}, +beG:function beG(){}, +d5y(a,b,c,d,e,f){return new A.CP(b,e)}, +CP:function CP(a,b){this.b=a +this.f=b}, +beH:function beH(){}, +d5z(a,b,c,d,e,f){return new A.CQ(b,e)}, +CQ:function CQ(a,b){this.b=a +this.f=b}, +beI:function beI(){}, +d5A(a,b,c,d,e,f){return new A.CR(b,e)}, +CR:function CR(a,b){this.b=a +this.f=b}, +beJ:function beJ(){}, +d5B(a,b,c,d,e,f){return new A.CS(b,e)}, +CS:function CS(a,b){this.b=a +this.f=b}, +beK:function beK(){}, +d5C(a,b,c,d,e,f){return new A.CT(b,e)}, +CT:function CT(a,b){this.b=a +this.f=b}, +beL:function beL(){}, +d5D(a,b,c,d,e,f){return new A.CU(b,e)}, +CU:function CU(a,b){this.b=a +this.f=b}, +beM:function beM(){}, +d5E(a,b,c,d,e,f){return new A.CV(b,e)}, +CV:function CV(a,b){this.b=a +this.f=b}, +beN:function beN(){}, +d5F(a,b,c,d,e,f){return new A.CW(b,e)}, +CW:function CW(a,b){this.b=a +this.f=b}, +beO:function beO(){}, +d5G(a,b,c,d,e,f){return new A.CX(b,e)}, +CX:function CX(a,b){this.b=a +this.f=b}, +beP:function beP(){}, +d5H(a,b,c,d,e,f){return new A.CY(b,e)}, +CY:function CY(a,b){this.b=a +this.f=b}, +beQ:function beQ(){}, +d5I(a,b,c,d,e,f){return new A.CZ(b,e)}, +CZ:function CZ(a,b){this.b=a +this.f=b}, +beR:function beR(){}, +d5J(a,b,c,d,e,f){return new A.D_(b,e)}, +D_:function D_(a,b){this.b=a +this.f=b}, +beS:function beS(){}, +d5K(a,b,c,d,e,f){return new A.D0(b,e)}, +D0:function D0(a,b){this.b=a +this.f=b}, +beT:function beT(){}, +d5L(a,b,c,d,e,f){return new A.D1(b,e)}, +D1:function D1(a,b){this.b=a +this.f=b}, +beU:function beU(){}, +d5M(a,b,c,d,e,f){return new A.D2(b,e)}, +D2:function D2(a,b){this.b=a +this.f=b}, +beV:function beV(){}, +d5N(a,b,c,d,e,f){return new A.D3(b,e)}, +D3:function D3(a,b){this.b=a +this.f=b}, +beW:function beW(){}, +d5O(a,b,c,d,e,f){return new A.D4(b,e)}, +D4:function D4(a,b){this.b=a +this.f=b}, +beX:function beX(){}, +d5P(a,b,c,d,e,f){return new A.D5(b,e)}, +D5:function D5(a,b){this.b=a +this.f=b}, +beY:function beY(){}, +d5Q(a,b,c,d,e,f){return new A.D6(b,e)}, +D6:function D6(a,b){this.b=a +this.f=b}, +beZ:function beZ(){}, +d5R(a,b,c,d,e,f){return new A.D7(b,e)}, +D7:function D7(a,b){this.b=a +this.f=b}, +bf_:function bf_(){}, +d5S(a,b,c,d,e,f){return new A.D8(b,e)}, +D8:function D8(a,b){this.b=a +this.f=b}, +bf0:function bf0(){}, +d5T(a,b,c,d,e,f){return new A.D9(b,e)}, +D9:function D9(a,b){this.b=a +this.f=b}, +bf1:function bf1(){}, +d5U(a,b,c,d,e,f){return new A.Da(b,e)}, +Da:function Da(a,b){this.b=a +this.f=b}, +bf2:function bf2(){}, +d5V(a,b,c,d,e,f){return new A.Db(b,e)}, +Db:function Db(a,b){this.b=a +this.f=b}, +bf3:function bf3(){}, +bf7:function bf7(){}, +bf8:function bf8(){}, +yD:function yD(){}, +at8:function at8(){}, +dmJ(a){var s,r=$.ic(),q=a.bn(0,r) +if(q===0)return-1 +s=0 +while(!0){q=a.hM(0,A.te(4294967295)).bn(0,r) +if(!(q===0))break +a=a.kZ(0,32) +s+=32}q=a.hM(0,A.te(65535)).bn(0,r) +if(q===0){a=a.kZ(0,16) +s+=16}q=a.hM(0,A.te(255)).bn(0,r) +if(q===0){a=a.kZ(0,8) +s+=8}q=a.hM(0,A.te(15)).bn(0,r) +if(q===0){a=a.kZ(0,4) +s+=4}q=a.hM(0,A.te(3)).bn(0,r) +if(q===0){a=a.kZ(0,2) +s+=2}r=a.hM(0,$.jC()).bn(0,r) +return r===0?s+1:s}, +o5(a,b){if(b.bn(0,a)>=0)A.C(A.aM("Value x must be smaller than q",null)) +return new A.a2i(a,b)}, +a2k(a,b,c,d){var s=b==null +if(!(!s&&c==null))s=s&&c!=null +else s=!0 +if(s)A.C(A.aM("Exactly one of the field elements is null",null)) +return new A.q6(a,b,c,d,A.drP())}, +dov(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=!(c instanceof A.ake)?new A.ake():c,h=b.goh(0) +if(h<13){s=2 +r=1}else if(h<41){s=3 +r=2}else if(h<121){s=4 +r=4}else if(h<337){s=5 +r=8}else if(h<897){s=6 +r=16}else if(h<2305){s=7 +r=32}else{s=8 +r=127}q=i.a +p=i.b +if(q==null){q=A.aK(1,a,!1,t.Wc) +o=1}else o=q.length +if(p==null)p=a.adN() +if(o=0;--m){k=k.adN() +if(!J.q(l[m],0)){j=l[m] +j.toString +if(j>0){k.toString +k=k.S(0,q[B.e.aD(j-1,2)])}else{k.toString +j=q[B.e.aD(-j-1,2)] +j.toString +k=k.W(0,j)}}}j=A.X(q).h("O<1,q6>") +i.a=A.R(new A.O(q,new A.cqX(),j),!0,j.h("aa.E")) +i.b=p +a.f=i +return k}, +dox(a,b){var s,r,q,p,o,n,m,l,k=t.bo,j=A.aK(b.goh(0)+1,null,!1,k),i=B.d.TO(1,a),h=A.te(i) +for(s=a-1,r=0,q=0;b.gAq(0)>0;){p=$.jC() +o=b.hM(0,p.hN(0,0)) +n=$.ic() +o=o.bn(0,n) +if(o!==0){m=b.M(0,h) +p=m.hM(0,p.hN(0,s)).bn(0,n) +if(p!==0){p=m.au(0)-i +j[r]=p}else{p=m.au(0) +j[r]=p}p=B.d.M(p,256) +j[r]=p +if((p&128)!==0){p-=256 +j[r]=p}b=b.W(0,A.te(p)) +q=r}else j[r]=0 +b=b.kZ(0,1);++r}++q +l=A.aK(q,null,!1,k) +B.b.iK(l,0,B.b.cK(j,0,q)) +return l}, +a2i:function a2i(a,b){this.a=a +this.b=b}, +q6:function q6(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=null}, +a2g:function a2g(a){var _=this +_.c=a +_.b=_.a=_.d=null}, +ake:function ake(){this.b=this.a=null}, +cqX:function cqX(){}, +a_e:function a_e(a){this.e=a}, +b47:function b47(){}, +HR:function HR(){}, +baq:function baq(){}, +bap:function bap(a){this.a=a}, +a2h:function a2h(){}, +bf4:function bf4(){}, +d7D(a){var s,r=$.cWd() +r=A.rw(r.gep(r),new A.bkD(a)) +s=r==null?null:r.b +s.toString +return s}, +Jd:function Jd(){this.b=$}, +bkF:function bkF(){}, +bkE:function bkE(a){this.a=a}, +bkD:function bkD(a){this.a=a}, +KJ:function KJ(a){this.b=a}, +bvS:function bvS(){}, +bvR:function bvR(a){this.a=a}, +KK:function KK(a){this.a=a}, +bvU:function bvU(){}, +bvT:function bvT(a){this.a=a}, +KL:function KL(){}, +bvY:function bvY(){}, +bvX:function bvX(a){this.a=a}, +a91:function a91(a,b){this.c=a +this.d=b}, +bE5:function bE5(){}, +a2j:function a2j(){}, +bf9:function bf9(){}, +a7v:function a7v(){}, +bzo:function bzo(){}, +d2p(a,b,c){var s,r=new A.ya(A.aon(a),c,B.d.aD(b,8)) +if(B.d.M(b,8)!==0)A.C(A.aM("MAC size must be multiple of 8",null)) +s=a.gb3() +r.a=new Uint8Array(s) +s=a.gb3() +r.b=new Uint8Array(s) +r.c=0 +return r}, +ya:function ya(a,b,c){var _=this +_.c=_.b=_.a=$ +_.d=a +_.e=b +_.f=c +_.r=null}, +b7u:function b7u(){}, +b7t:function b7t(a){this.a=a}, +d2q(a,b){var s,r=B.d.aD(b,8),q=A.aon(a) +if(B.d.M(b,8)!==0)A.C(A.aM("MAC size must be multiple of 8",null)) +if(b>q.a.gb3()*8)A.C(A.aM("MAC size must be less or equal to "+q.gb3()*8,null)) +A.cFw(a.gb3()) +s=a.gb3() +new Uint8Array(s) +s=a.gb3() +new Uint8Array(s) +s=a.gb3() +new Uint8Array(s) +return new A.yb(q,r)}, +cFw(a){var s,r,q=a*8 +switch(q){case 64:s=27 +break +case 128:s=135 +break +case 160:s=45 +break +case 192:s=135 +break +case 224:s=777 +break +case 256:s=1061 +break +case 320:s=27 +break +case 384:s=4109 +break +case 448:s=2129 +break +case 512:s=293 +break +case 768:s=655377 +break +case 1024:s=524355 +break +case 2048:s=548865 +break +default:throw A.d(A.aM("Unknown block size for CMAC: "+q,null))}r=new Uint8Array(4) +r[3]=s +r[2]=s>>>8 +r[1]=s>>>16 +r[0]=s>>>24 +return r}, +yb:function yb(a,b){this.f=a +this.r=b}, +b7C:function b7C(){}, +b7B:function b7B(a){this.a=a}, +yX:function yX(a,b){this.a=a +this.b=$ +this.c=b}, +bkH:function bkH(){}, +bkG:function bkG(a){this.a=a}, +EJ:function EJ(a,b,c){this.a=a +this.b=b +this.ay=c}, +by3:function by3(){}, +by2:function by2(a){this.a=a}, +Eu:function Eu(a,b){this.a=a +this.b=b +this.c=null}, +bw7:function bw7(){}, +bw6:function bw6(a){this.a=a}, +Rw:function Rw(){}, +bmk:function bmk(){}, +Td:function Td(){}, +bvZ:function bvZ(){}, +cEZ(a,b){var s=new A.BX(b) +s.a=A.cFc(a) +return s}, +BX:function BX(a){this.a=$ +this.b=a +this.c=!1}, +b59:function b59(){}, +b58:function b58(a){this.a=a}, +b5a:function b5a(a,b){this.a=a +this.b=b}, +b5b:function b5b(a,b){this.a=a +this.b=b}, +cFc(a){var s=new A.C3(a),r=a.gb3() +s.b=new Uint8Array(r) +r=a.gb3() +s.c=new Uint8Array(r) +s.d=r +return s}, +C3:function C3(a){var _=this +_.a=a +_.d=_.c=_.b=$}, +b6m:function b6m(){}, +b6l:function b6l(a){this.a=a}, +R8:function R8(a){this.a=a +this.b=$}, +bjd:function bjd(){}, +It:function It(){}, +bf6:function bf6(){}, +bf5:function bf5(a,b){this.a=a +this.b=b}, +KM:function KM(){}, +bw0:function bw0(){}, +bw_:function bw_(a){this.a=a}, +Lo:function Lo(a){this.a=a}, +bzq:function bzq(){}, +bzp:function bzp(a,b){this.a=a +this.b=b}, +a_A:function a_A(){}, +b5Q:function b5Q(){}, +anN:function anN(){}, +anO:function anO(){}, +anT:function anT(){}, +b5S:function b5S(){}, +anV:function anV(){}, +anX:function anX(){}, +b6_:function b6_(){}, +a4H:function a4H(){}, +a5c:function a5c(){}, +axe:function axe(){}, +aE9:function aE9(){}, +bxq:function bxq(){}, +aBw:function aBw(a){this.a=a}, +bxF:function bxF(){}, +ct(a,b,c){return new A.aFk(b,c,a)}, +cQ5(a){return A.Zn(a,$.d01(),new A.coS(),new A.coT())}, +at7(a,b,c){return new A.tO(b,c,a)}, +QE(a,b,c){return new A.tO(A.b4(b,!0,!1,!1),c,a)}, +cHL(a,b,c){return new A.tO(A.b4("^"+A.cQ5(b)+"(.+)$",!0,!1,!1),c,a)}, +jh(a,b,c){return new A.tO(A.b4("^(.+)"+A.cQ5(b)+"$",!0,!1,!1),c,a)}, +bhB:function bhB(){}, +aFk:function aFk(a,b,c){this.b=a +this.c=b +this.a=c}, +coS:function coS(){}, +coT:function coT(){}, +tO:function tO(a,b,c){this.b=a +this.c=b +this.a=c}, +cbE:function cbE(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1}, +cbG:function cbG(){}, +cbF:function cbF(){}, +iJ(a,b){b&=31 +return(a&$.co[b])<>>0}, +t(a,b){b&=31 +return(A.iJ(a,b)|B.d.kZ(a,32-b))>>>0}, +j7(a,b){b&=31 +return(B.d.b2(a,b)|A.iJ(a,32-b))>>>0}, +r5(a,b,c,d){if(!t.V4.b(b))b=A.fe(b.buffer,b.byteOffset,J.bn(b)) +b.setUint32(c,a,B.z===d)}, +cr(a,b,c){a=A.fe(a.buffer,a.byteOffset,a.length) +return a.getUint32(b,B.z===c)}, +e(a,b){var s=new A.fY() +s.df(0,a,b) +return s}, +wB(a){var s,r,q,p=a.length,o=J.d1(p,t.ae) +for(s=0;s")),a,null,null,c.h("a0h<0>"))}, +a0h:function a0h(a,b,c,d,e){var _=this +_.e=a +_.r=b +_.c=c +_.a=d +_.$ti=e}, +a0Z:function a0Z(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +d9l(a,b){b.a3(0,a.gaC5()) +return new A.bpd(b,a)}, +a52:function a52(){}, +bpd:function bpd(a,b){this.a=a +this.b=b}, +byY(a,b,c){var s,r=c.h("NM<0?>?").a(a.kX(c.h("oR<0?>"))),q=r==null +if(q&&!c.b(null))A.C(new A.aC3(A.c6(c),A.I(a.gb7()))) +if(b)a.a0(c.h("oR<0?>")) +s=q?null:r.gAL().gj(0) +if($.cZT()){if(!c.b(s))throw A.d(new A.aC4(A.c6(c),A.I(a.gb7()))) +return s}return s==null?c.a(s):s}, +RL:function RL(){}, +bnq:function bnq(a,b){this.a=a +this.b=b}, +afk:function afk(a,b,c,d){var _=this +_.bw4$=a +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1 +_.$ti=d}, +oR:function oR(a,b,c,d){var _=this +_.f=a +_.b=b +_.a=c +_.$ti=d}, +NM:function NM(a,b,c,d){var _=this +_.aU=!1 +_.eA=!0 +_.f1=_.eq=!1 +_.ez=$ +_.y2=a +_.ax=null +_.ay=!1 +_.c=_.b=_.a=null +_.d=$ +_.e=b +_.f=null +_.r=c +_.y=_.x=null +_.z=!1 +_.Q=!0 +_.at=_.as=!1 +_.$ti=d}, +c2q:function c2q(a,b){this.a=a +this.b=b}, +aNr:function aNr(){}, +AU:function AU(){}, +Z0:function Z0(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +ak9:function ak9(a){this.a=this.b=null +this.$ti=a}, +aC4:function aC4(a,b){this.a=a +this.b=b}, +aC3:function aC3(a,b){this.a=a +this.b=b}, +a7p:function a7p(a){this.a=a +this.b=0}, +aU_:function aU_(){}, +TQ:function TQ(a){this.b=a}, +a4t:function a4t(a){this.c=a}, +aCf(a,b){var s,r,q=a.length,p=0 +while(!0){if(!(po)throw A.d(new A.a4t("Input too long. "+q+" > "+o)) +if(q+4<=o)k.t0(0,0,4) +for(;B.d.M(k.b,8)!==0;)k.aE6(!1) +for(n=0;!0;n=m){if(k.b>=o)break +m=n+1 +k.t0(0,(n&1)===0?236:17,8)}return A.dkG(k,l)}, +dkG(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=t.z7,b=A.aK(a1.length,null,!1,c),a=A.aK(a1.length,null,!1,c) +for(c=a0.a,s=0,r=0,q=0,p=0;p=0?g[e]:0}}d=A.a([],t.t) +for(k=0;ki){m=k +n=i}}o=m.d +s=new A.aCe(r,q,p,o,A.a([],s)) +s.aor(o,a.gbt4(),!1) +return s}, +dmZ(a,b,c){var s +switch(a){case 0:return(b+c&1)===0 +case 1:return(b&1)===0 +case 2:return B.d.M(c,3)===0 +case 3:return B.d.M(b+c,3)===0 +case 4:return(B.d.aD(b,2)+B.d.aD(c,3)&1)===0 +case 5:s=b*c +return B.d.M(s,2)+B.d.M(s,3)===0 +case 6:s=b*c +return(B.d.M(s,2)+B.d.M(s,3)&1)===0 +case 7:return(B.d.M(b*c,3)+B.d.M(b+c,2)&1)===0 +default:throw A.d(A.aM("bad maskPattern:"+a,null))}}, +dmR(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=a.a +for(s=0,r=0;r5)s+=3+o-5}for(m=f-1,r=0;r"))}, +bCe:function bCe(a,b){this.a=a +this.b=b}, +bHe:function bHe(){}, +b57:function b57(){}, +b56:function b56(){}, +dbR(a,b,c){var s,r,q=null,p=A.a([],t.NK),o=t.WK,n=A.hg(q,q,q,o,o),m=A.hg(q,q,q,t.gw,t.pz),l=c==null,k=l?0:c.d+1,j=A.a([],t.Go),i=!l +if(i)B.b.L(j,c.z) +o=A.N(o,t.w4) +if(i)for(i=c.y,i=i.gep(i),i=i.gaz(i);i.t();){s=i.gK(i) +r=s.b +if(!r.d)o.n(0,s.a,r)}l=l?q:c.e +p=new A.lE(0,k,l==null?c:l,c,p,n,m,o,j) +p.aV3(a,b,c) +return p}, +b1N(a){var s +if(a==null)return null +s=A.b9(t.nB) +J.iK(a,new A.crv(s)) +return new A.Nf(s,t.Eb)}, +dl3(a){A.Rd(a,t.H)}, +ZP:function ZP(){}, +xR:function xR(){}, +xY:function xY(){}, +xt:function xt(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null}, +cfF:function cfF(a){this.a=a}, +cfG:function cfG(a){this.a=a}, +lE:function lE(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}, +byr:function byr(a,b){this.a=a +this.b=b}, +bys:function bys(a,b){this.a=a +this.b=b}, +byx:function byx(a){this.a=a}, +byt:function byt(a){this.a=a}, +byu:function byu(){}, +byv:function byv(){}, +byw:function byw(a,b){this.a=a +this.b=b}, +byz:function byz(a,b){this.a=a +this.b=b}, +byA:function byA(a,b,c){this.a=a +this.b=b +this.c=c}, +byy:function byy(a,b,c){this.a=a +this.b=b +this.c=c}, +byB:function byB(){}, +aoV:function aoV(){}, +dL:function dL(){}, +byP:function byP(a){this.a=a}, +byN:function byN(a){this.a=a}, +byO:function byO(a){this.a=a}, +byL:function byL(){}, +byM:function byM(){}, +byE:function byE(){}, +byF:function byF(a,b){this.a=a +this.b=b}, +byG:function byG(a){this.a=a}, +byH:function byH(a,b,c){this.a=a +this.b=b +this.c=c}, +byI:function byI(a,b){this.a=a +this.b=b}, +byJ:function byJ(a){this.a=a}, +byK:function byK(a,b){this.a=a +this.b=b}, +byC:function byC(){}, +byD:function byD(){}, +byQ:function byQ(a,b){this.a=a +this.b=b}, +byR:function byR(a){this.a=a}, +byS:function byS(a,b){this.a=a +this.b=b}, +vZ:function vZ(){}, +NG:function NG(){}, +yJ:function yJ(){}, +bhG:function bhG(a,b){this.a=a +this.b=b}, +is:function is(){}, +crv:function crv(a){this.a=a}, +mr:function mr(){}, +rT:function rT(){}, +hq:function hq(){}, +byq:function byq(a,b){this.a=a +this.b=b}, +Bd:function Bd(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=!1 +_.$ti=e}, +aAz:function aAz(){}, +Yc:function Yc(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=!1 +_.$ti=e}, +Li:function Li(a,b,c){this.a=a +this.b=b +this.$ti=c}, +byT:function byT(){}, +byU:function byU(a,b){this.a=a +this.b=b}, +aC5:function aC5(a,b,c){var _=this +_.a=!1 +_.b=a +_.c=b +_.d=c +_.e=null}, +byV:function byV(a){this.a=a}, +byW:function byW(a,b){this.a=a +this.b=b}, +agU:function agU(){}, +cai:function cai(a){this.a=a}, +caj:function caj(a){this.a=a}, +cag:function cag(a,b,c){this.a=a +this.b=b +this.c=c}, +cah:function cah(a,b){this.a=a +this.b=b}, +can:function can(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cam:function cam(a,b){this.a=a +this.b=b}, +cao:function cao(a,b){this.a=a +this.b=b}, +cak:function cak(a){this.a=a}, +cal:function cal(a){this.a=a}, +YD:function YD(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=!1 +_.$ti=d}, +WU:function WU(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aeE:function aeE(){}, +agR:function agR(){}, +agS:function agS(){}, +agT:function agT(){}, +akB:function akB(){}, +alf:function alf(){}, +qX:function qX(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +on:function on(a,b){var _=this +_.f=null +_.a=0 +_.b=a +_.d=_.c=0 +_.e=!1 +_.$ti=b}, +byZ:function byZ(a,b){this.a=a +this.b=b}, +akb:function akb(){}, +cmD:function cmD(a,b){this.a=a +this.b=b}, +cmC:function cmC(a,b,c){this.a=a +this.b=b +this.c=c}, +cmB:function cmB(a,b,c){this.a=a +this.b=b +this.c=c}, +cmE:function cmE(a){this.a=a}, +RT:function RT(){}, +a_o:function a_o(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}, +a_p:function a_p(a,b,c,d,e,f){var _=this +_.bw5$=a +_.bw6$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.x=_.w=_.r=null +_.y=e +_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=!1 +_.fx=null +_.$ti=f}, +a7h:function a7h(){}, +acK:function acK(){}, +afv:function afv(){}, +cLK(a,b){var s,r,q,p +try{q=a.$0() +return new A.jt(q,b.h("jt<0>"))}catch(p){s=A.ag(p) +r=A.aD(p) +return new A.ko(s,r,b.h("ko<0>"))}}, +jt:function jt(a,b){this.a=a +this.$ti=b}, +ko:function ko(a,b,c){this.a=a +this.b=b +this.$ti=c}, +cUf(a,b){var s=A.a([A.dfV()],t.ch) +B.b.L(s,A.d2D(b).gadK()) +A.atA(a,new A.aHn(new A.m5(A.hi(s,t.f3)).bwz(new A.ctZ()).HS().a))}, +ctZ:function ctZ(){}, +oF:function oF(a,b,c){var _=this +_.a=a +_.e=_.c=!0 +_.f=b +_.$ti=c}, +dna(a,b,c){return new A.Li(a,new A.cpX(b,c),c.h("@<0>").a1(b).h("Li<1,2>"))}, +Vg(a,b,c){var s=null +return new A.uy(a,s,s,s,s,s,A.b1N(s),b.h("@<0>").a1(c).h("uy<1,2>"))}, +cz6(a,b,c,d,e,f,g,h,i){return new A.uy(a,d,f,c,g,e,b,h.h("@<0>").a1(i).h("uy<1,2>"))}, +cpX:function cpX(a,b){this.a=a +this.b=b}, +YK:function YK(){}, +uy:function uy(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}, +Vh:function Vh(a,b,c,d,e){var _=this +_.fy=a +_.a=_.go=null +_.b=!1 +_.c=$ +_.d=b +_.e=$ +_.f=c +_.x=_.w=_.r=null +_.y=d +_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=!1 +_.fx=null +_.$ti=e}, +bHd:function bHd(a,b){this.a=a +this.b=b}, +aa5:function aa5(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.$ti=g}, +aiT:function aiT(){}, +cQZ(a,b){return new A.Li(a,new A.cpW(b),b.h("@<0>").a1(b.h("oF<0>")).h("Li<1,2>"))}, +cz7(a,b){var s=null +return new A.aa6(a,s,s,s,s,s,A.b1N(s),b.h("aa6<0>"))}, +ddT(a,b){var s=null,r=b.h("qX>?"),q=b.h("on>") +return new A.Ao(new A.on(A.aK(0,s,!1,r),q),new A.on(A.aK(0,s,!1,r),q),a,A.hg(s,s,s,t.qB,t.K),A.a([],t.HO),b.h("Ao<0>"))}, +cpW:function cpW(a){this.a=a}, +Oa:function Oa(){}, +a_q:function a_q(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}, +a_r:function a_r(a,b,c,d,e,f,g,h){var _=this +_.bw5$=a +_.bw6$=b +_.fy=c +_.go=d +_.a=_.id=null +_.b=!1 +_.c=$ +_.d=e +_.e=$ +_.f=f +_.x=_.w=_.r=null +_.y=g +_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=!1 +_.fx=null +_.$ti=h}, +aa6:function aa6(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}, +Ao:function Ao(a,b,c,d,e,f){var _=this +_.fy=a +_.go=b +_.a=_.id=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.x=_.w=_.r=null +_.y=e +_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=!1 +_.fx=null +_.$ti=f}, +bHg:function bHg(a){this.a=a}, +acL:function acL(){}, +aiU:function aiU(){}, +d3l(a,b,c,d,e,f){var s=A.cG1(A.a([a,b],t.aa),new A.ba8(c,d,e,f),t.z,f) +return new A.HQ(new A.dI(s,A.z(s).h("dI<1>")),t.cu.a1(f).h("HQ<1,2>"))}, +d3m(a,b,c,d,e,f,g,h,i,j,k,l){var s=A.cG1(A.a([a,b,c,d,e],t.aa),new A.ba9(f,g,h,i,j,k,l),t.z,l) +return new A.HQ(new A.dI(s,A.z(s).h("dI<1>")),t.cu.a1(l).h("HQ<1,2>"))}, +cG1(a,b,c,d){var s={},r=A.lN(null,null,null,!0,d),q=A.aF("subscriptions") +s.a=null +r.d=new A.ba3(s,q,r,a,b,c) +r.e=new A.ba4(q) +r.f=new A.ba5(q) +r.r=new A.ba6(s,q) +return r}, +HQ:function HQ(a,b){this.a=a +this.$ti=b}, +ba8:function ba8(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ba9:function ba9(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +ba3:function ba3(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +ba7:function ba7(a,b,c){this.a=a +this.b=b +this.c=c}, +ba2:function ba2(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,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}, +ba4:function ba4(a){this.a=a}, +ba5:function ba5(a){this.a=a}, +ba6:function ba6(a,b){this.a=a +this.b=b}, +cGA(a,b,c){return new A.a1I(a,!0,c.h("a1I<0>"))}, +a1I:function a1I(a,b,c){this.a=a +this.b=b +this.$ti=c}, +T0:function T0(a,b){this.a=a +this.$ti=b}, +c7i:function c7i(a,b){this.a=a +this.b=b}, +aHp:function aHp(a){this.a=a}, +nS(a,b,c){var s=b?new A.pK(a,null,c.h("pK<0>")):new A.h1(a,null,c.h("h1<0>")),r=new A.Z3(!1,B.aV,c.h("Z3<0>")) +return new A.C1(r,s,A.cGA(A.cFa(r,s,b,c),!0,c),c.h("C1<0>"))}, +OZ(a,b){var s=new A.h1(null,null,b.h("h1<0>")),r=new A.Z3(!0,a,b.h("Z3<0>")) +return new A.C1(r,s,A.cGA(A.cFa(r,s,!1,b),!0,b),b.h("C1<0>"))}, +cFa(a,b,c,d){return new A.b6a(a,b,d)}, +C1:function C1(a,b,c,d){var _=this +_.e=a +_.b=b +_.c=!1 +_.a=c +_.$ti=d}, +b6a:function b6a(a,b,c){this.a=a +this.b=b +this.c=c}, +Z3:function Z3(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.$ti=c}, +dx:function dx(a,b){this.a=a +this.$ti=b}, +bz2(a,b){var s=null,r=a?new A.pK(s,s,b.h("pK<0>")):new A.h1(s,s,b.h("h1<0>")) +return new A.a7n(r,new A.dw(r,A.z(r).h("dw<1>")),b.h("a7n<0>"))}, +a7n:function a7n(a,b,c){var _=this +_.b=a +_.c=!1 +_.a=b +_.$ti=c}, +Mt:function Mt(){}, +bIQ:function bIQ(a,b){this.a=a +this.b=b}, +xv:function xv(a,b){this.a=a +this.$ti=b}, +ace:function ace(a,b){this.a=a +this.b=b}, +WZ:function WZ(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j +_.Q=0 +_.at=_.as=!1 +_.a=_.ax=null +_.$ti=k}, +bSp:function bSp(a,b){this.a=a +this.b=b}, +bSn:function bSn(a,b){this.a=a +this.b=b}, +bSo:function bSo(a,b){this.a=a +this.b=b}, +nP:function nP(){}, +b5y:function b5y(a){this.a=a}, +daN(a){return new A.a6K(B.by4,new A.bwh(a),new A.bwi(a),1,new A.bwj(a),!1,a.h("a6K<0>"))}, +a6K:function a6K(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.d=c +_.f=d +_.r=e +_.x=f +_.$ti=g}, +bwh:function bwh(a){this.a=a}, +bwi:function bwi(a){this.a=a}, +bwj:function bwj(a){this.a=a}, +YJ:function YJ(a,b){this.b=a +this.a=null +this.$ti=b}, +aa4:function aa4(a,b){this.a=a +this.$ti=b}, +bHc:function bHc(a){this.a=a}, +YI:function YI(a,b,c){var _=this +_.b=a +_.c=b +_.a=null +_.$ti=c}, +aa3:function aa3(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bHb:function bHb(a){this.a=a}, +bZ2:function bZ2(){}, +atw:function atw(a,b){this.a=a +this.b=b}, +a3y:function a3y(){}, +cBt(a,b,c,d){var s +if(a.glb())s=A.dlL(a,b,c,d) +else s=A.dlK(a,b,c,d) +return s}, +dlL(a,b,c,d){return new A.NS(!0,new A.cpb(b,a,d),d.h("NS<0>"))}, +dlK(a,b,c,d){var s,r,q=null,p={} +if(a.glb())s=new A.pK(q,q,d.h("pK<0>")) +else s=A.lN(q,q,q,!0,d) +p.a=null +p.b=!1 +r=A.XD("sink",new A.cpf(b,c,d)) +s.saCE(new A.cpg(p,a,r,s)) +s.sYi(0,new A.cph(p,r)) +return s.gDP(s)}, +cpb:function cpb(a,b,c){this.a=a +this.b=b +this.c=c}, +cpc:function cpc(a,b,c){this.a=a +this.b=b +this.c=c}, +cpa:function cpa(a,b){this.a=a +this.b=b}, +cpf:function cpf(a,b,c){this.a=a +this.b=b +this.c=c}, +cpg:function cpg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cpi:function cpi(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cpd:function cpd(a,b){this.a=a +this.b=b}, +cpe:function cpe(a,b){this.a=a +this.b=b}, +cph:function cph(a,b){this.a=a +this.b=b}, +XU:function XU(a,b){this.a=a +this.$ti=b}, +aE0(a,b,c,d,e){return A.dcR(a,b,c,d,e)}, +dcR(a1,a2,a3,a4,a5){var s=0,r=A.p(t.lu),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +var $async$aE0=A.l(function(a7,a8){if(a7===1)return A.m(a8,r) +while(true)switch(s){case 0:a0={} +a0.a=!1 +o=A.bC(a2,null,t.l).w +o=A.rC(A.fX(B.K,!0,null,a1,B.i,B.D,0,null,null,null,null,null,B.bT),o,null) +n=A.RM(a2,null) +m=A.cLD() +$.an.toString +l=$.cf().gis().b.gbm(0) +k=l.b.$1(J.jD(l.a)) +l=A.Nj(a2) +j=l==null?k:l +l=A.cLC(B.C,m,null,null,null) +i=A.dcu(l,new A.Wq(a5,a4),j) +h=A.cyr(null,null,null) +p=A.cvw(A.cwS(),new A.bDF(a0)) +h.sOJ(i) +i.a_Z() +i.aJI(i.a6A()) +g=A.cyJ(A.a1O(new A.xc(n.a,o,null),B.j),m,null,t.x).avD(p) +p.a7R(g) +p.N_() +h.N1() +h.WZ() +h.X_() +o=m.ch +n=t.gY +l=t.z +f=3 +case 3:a0.a=!1 +e=a4 +d=o.a +d.toString +n.a(d) +c=m.gu(0) +s=6 +return A.i(d.ZI(new A.W(0,0,0+c.a,0+c.b),e),$async$aE0) +case 6:b=a8 +s=7 +return A.i(A.jk(a3,null,l),$async$aE0) +case 7:if(a0.a){p.a7R(g) +p.N_() +h.N1() +h.WZ() +h.X_()}--f +case 4:if(a0.a&&f>=0){s=3 +break}case 5:try{p.N_()}catch(a6){}q=b +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$aE0,r)}, +bDE:function bDE(){}, +bDF:function bDF(a){this.a=a}, +aRn:function aRn(a,b,c){var _=this +_.D=a +_.k1$=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}, +b_T:function b_T(){}, +bFy(a){var s=0,r=A.p(t.lZ),q,p,o,n,m,l,k +var $async$bFy=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(a.wN(),$async$bFy) +case 3:p=c +o=self.File +n=A.a([p.buffer],t.qg) +m=a.b +l={} +k=a.a +if(k==null){k=$.cDD().aC_(m,p) +if(k==null)k="application/octet-stream"}l.type=k +q=A.oY(o,[n,m,l]) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bFy,r)}, +bFx:function bFx(a,b){this.a=a +this.b=b}, +da8(a){switch(a){case"":return B.XU +case u.a:return B.XV +default:return B.blz}}, +bsL:function bsL(){}, +bsN:function bsN(){}, +bsO:function bsO(){}, +bsM:function bsM(a){this.a=a}, +bFw:function bFw(){}, +Mc:function Mc(a,b){this.a=a +this.b=b}, +a9u:function a9u(a,b){this.a=a +this.b=b}, +a9w(){var s=0,r=A.p(t.cZ),q,p=2,o,n,m,l,k,j,i +var $async$a9w=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:s=$.bFJ==null?3:4 +break +case 3:n=new A.aI(new A.ak($.at,t.cO),t.Iy) +$.bFJ=n +p=6 +s=9 +return A.i(A.bFK(),$async$a9w) +case 9:m=b +J.d0O(n,new A.V1(m)) +p=2 +s=8 +break +case 6:p=5 +i=o +l=A.ag(i) +n.jh(l) +k=n.a +$.bFJ=null +q=k +s=1 +break +s=8 +break +case 5:s=2 +break +case 8:case 4:q=$.bFJ.a +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$a9w,r)}, +bFK(){var s=0,r=A.p(t.nf),q,p,o,n,m,l,k,j +var $async$bFK=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=t.N +m=t.K +l=A.N(n,m) +k=J +j=l +s=3 +return A.i($.cCR().A7(0),$async$bFK) +case 3:k.ZA(j,b) +p=A.N(n,m) +for(n=l,n=A.jL(n,n.r,A.bk(n).c);n.t();){m=n.d +o=B.c.b0(m,8) +m=J.aS(l,m) +m.toString +p.n(0,o,m)}q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bFK,r)}, +V1:function V1(a){this.a=a}, +bsP:function bsP(){}, +bFI:function bFI(){}, +byb:function byb(a,b){this.a=a +this.b=b}, +bkm:function bkm(a){this.a=a}, +bFG:function bFG(){}, +bFH:function bFH(a,b){this.a=a +this.b=b}, +pt:function pt(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b2w:function b2w(){}, +a5Q:function a5Q(a){this.a=a}, +aRQ:function aRQ(a,b){var _=this +_.w=a +_.d=_.x=$ +_.a=null +_.b=b +_.c=null}, +c7c:function c7c(a){this.a=a}, +c7b:function c7b(a){this.a=a}, +c7e:function c7e(){}, +c7d:function c7d(){}, +NX:function NX(a,b){this.d=a +this.a=b}, +aTM:function aTM(a){var _=this +_.w=null +_.d=$ +_.a=null +_.b=a +_.c=null}, +ca5:function ca5(a){this.a=a}, +ca4:function ca4(a){this.a=a}, +fJ:function fJ(a,b){this.a=a +this.b=b}, +aK4:function aK4(a){this.a=a}, +a16:function a16(){}, +u4:function u4(a,b){this.a=a +this.b=b}, +a58:function a58(){}, +zD:function zD(a,b,c){this.c=a +this.a=b +this.b=c}, +a6v:function a6v(){}, +cvU(a,b){return new A.Q6(b,a)}, +HZ:function HZ(a){this.a=a}, +Q6:function Q6(a,b){this.a=a +this.b=b}, +baZ:function baZ(){var _=this +_.f=_.e=_.d=_.c=_.a=$}, +bb_:function bb_(){}, +kS(a,b,c,d,e){var s=0,r=A.p(t.y),q +var $async$kS=A.l(function(f,g){if(f===1)return A.m(g,r) +while(true)switch(s){case 0:q=A.bcO(a,!1,new A.bcV(b),c,d,e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$kS,r)}, +bcO(a,b,c,d,e,f){var s=0,r=A.p(t.y),q,p +var $async$bcO=A.l(function(g,h){if(g===1)return A.m(h,r) +while(true)switch(s){case 0:p=J +s=3 +return A.i(A.BI(null,new A.bcQ(f,e,c,!1,d),a,t.z),$async$bcO) +case 3:q=p.q(h,!0) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bcO,r)}, +yx(a,b,c,d,e,f,g,h){var s=0,r=A.p(t.X7),q +var $async$yx=A.l(function(i,j){if(i===1)return A.m(j,r) +while(true)switch(s){case 0:s=3 +return A.i(A.asH(a,c,new A.bcR(b),d,e,f,g,!1,h),$async$yx) +case 3:q=j +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$yx,r)}, +yw(a,b,c,d,e){var s=0,r=A.p(t.X7),q +var $async$yw=A.l(function(f,g){if(f===1)return A.m(g,r) +while(true)switch(s){case 0:s=3 +return A.i(A.asH(a,!1,new A.bcK(d),b,e,c,!1,e,b),$async$yw) +case 3:q=g +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$yw,r)}, +asH(a,b,c,d,e,f,g,h,i){var s=0,r=A.p(t.X7),q +var $async$asH=A.l(function(j,k){if(j===1)return A.m(k,r) +while(true)switch(s){case 0:s=3 +return A.i(A.BI(b,new A.bcN(i,h,c,e,d,f,g),a,t.y),$async$asH) +case 3:q=k +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$asH,r)}, +asI(a,b,c,d,e,f,g){var s=0,r=A.p(t.bo),q,p,o +var $async$asI=A.l(function(h,i){if(h===1)return A.m(i,r) +while(true)switch(s){case 0:p=t.z +s=3 +return A.i(A.cN(a,!1).pF(A.cvX(null,B.n8,!0,new A.bcU(e,d,c,f,g,240,!1,b),null,!1,null,p),p),$async$asI) +case 3:o=i +if(A.bI(o)){q=o +s=1 +break}else{q=null +s=1 +break}case 1:return A.n(q,r)}}) +return A.o($async$asI,r)}, +bcS(a,b,c,d,e,f,g,h,i,j){var s=0,r=A.p(t.D7),q,p,o +var $async$bcS=A.l(function(k,l){if(k===1)return A.m(l,r) +while(true)switch(s){case 0:p=t.z +s=3 +return A.i(A.cN(a,!1).pF(A.cvX(null,B.n8,!0,new A.bcT(g,e,f,h,c,d,i,j,240,!1,b),null,!1,null,p),p),$async$bcS) +case 3:o=l +if(t.BC.b(o)){q=o +s=1 +break}else{q=null +s=1 +break}case 1:return A.n(q,r)}}) +return A.o($async$bcS,r)}, +qK(a,b,c,d){var s=null,r=A.cMj(b,s,s,s,s,B.k,s,c,B.tW,d,s,s,s,s,s,s,s,s,s),q=a.a0(t.Pu) +q.toString +return q.f.aMd(r)}, +bcV:function bcV(a){this.a=a}, +bcQ:function bcQ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bcP:function bcP(a){this.a=a}, +bcR:function bcR(a){this.a=a}, +bcK:function bcK(a){this.a=a}, +bcN:function bcN(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bcL:function bcL(a){this.a=a}, +bcM:function bcM(a){this.a=a}, +bcU:function bcU(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}, +bcT:function bcT(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}, +Mm:function Mm(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}, +aX4:function aX4(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cfB:function cfB(a){this.a=a}, +cfC:function cfC(a){this.a=a}, +cfA:function cfA(a){this.a=a}, +cfD:function cfD(a,b){this.a=a +this.b=b}, +cfz:function cfz(a,b){this.a=a +this.b=b}, +Iq:function Iq(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}, +aO0:function aO0(a){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +bYz:function bYz(a){this.a=a}, +bYA:function bYA(a){this.a=a}, +bYB:function bYB(a){this.a=a}, +bYy:function bYy(a,b){this.a=a +this.b=b}, +bYw:function bYw(a,b){this.a=a +this.b=b}, +bYC:function bYC(a,b){this.a=a +this.b=b}, +bYx:function bYx(a,b,c){this.a=a +this.b=b +this.c=c}, +bYv:function bYv(a,b){this.a=a +this.b=b}, +cHT(a,b){$.cwC.n(0,A.c6(b),new A.bg2(a))}, +cHS(a){return A.bI(a)||typeof a=="string"||A.lY(a)||a instanceof A.am||$.cwC.aB(0,J.az(a))}, +yF(a,b,c){var s=0,r=A.p(t.z),q,p,o,n +var $async$yF=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=A.bI(c)?3:5 +break +case 3:s=6 +return A.i(A.atf(a,b,c),$async$yF) +case 6:q=e +s=1 +break +s=4 +break +case 5:s=typeof c=="string"?7:9 +break +case 7:s=10 +return A.i(A.vQ(a,b,c),$async$yF) +case 10:q=e +s=1 +break +s=8 +break +case 9:s=A.lY(c)?11:13 +break +case 11:s=14 +return A.i(A.bg4(a,b,c),$async$yF) +case 14:q=e +s=1 +break +s=12 +break +case 13:s=c instanceof A.am?15:17 +break +case 15:p=A.cd(0,1,1,0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +o=A.cd(9999,1,1,0,0,0,0,!1) +if(!A.bI(o))A.C(A.bV(o)) +s=18 +return A.i(A.bg6(a,b,new A.am(p,!1),c,new A.am(o,!1)),$async$yF) +case 18:q=e +s=1 +break +s=16 +break +case 17:n=$.cwC.i(0,J.az(c)) +s=n!=null?19:21 +break +case 19:s=22 +return A.i(A.BI(null,new A.bg3(n,b,c),a,t.z),$async$yF) +case 22:q=e +s=1 +break +s=20 +break +case 21:s=23 +return A.i(A.atg(a,b,c),$async$yF) +case 23:p=e +q=p +s=1 +break +case 20:case 16:case 12:case 8:case 4:case 1:return A.n(q,r)}}) +return A.o($async$yF,r)}, +bg6(a,b,c,d,e){var s=0,r=A.p(t.Q0),q,p +var $async$bg6=A.l(function(f,g){if(f===1)return A.m(g,r) +while(true)switch(s){case 0:s=3 +return A.i(A.BI(null,new A.bg7(d,b,c,e),a,t.z),$async$bg6) +case 3:p=g +if(p==null){q=null +s=1 +break}q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bg6,r)}, +bg4(a,b,c){var s=0,r=A.p(t.X7),q,p +var $async$bg4=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=3 +return A.i(A.BI(null,new A.bg5(c,b),a,t.z),$async$bg4) +case 3:p=e +if(p==null){q=null +s=1 +break}q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bg4,r)}, +vQ(a,b,c){var s=0,r=A.p(t.R),q,p +var $async$vQ=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=3 +return A.i(A.BI(null,new A.bgb(c,b),a,t.z),$async$vQ) +case 3:p=e +if(p==null){q=null +s=1 +break}q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$vQ,r)}, +atg(a,b,c){var s=0,r=A.p(t.H) +var $async$atg=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=2 +return A.i(A.amd(null,null,!0,null,new A.bga(c,b),a,null,null,!0,!0,t.z),$async$atg) +case 2:return A.n(null,r)}}) +return A.o($async$atg,r)}, +atf(a,b,c){var s=0,r=A.p(t.bo),q,p +var $async$atf=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=3 +return A.i(A.BI(null,new A.bg8(c,b),a,t.z),$async$atf) +case 3:p=e +if(p==null){q=null +s=1 +break}q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$atf,r)}, +ate(a,b){A.cHT(new A.bg1(a,b),b)}, +dnD(a,b,c){var s=null +return new A.nM(c,new A.k4(A.w("close",s,s),!1,!1,new A.cqa(a)),s,!1,new A.cqb(b),s)}, +bg2:function bg2(a){this.a=a}, +bg3:function bg3(a,b,c){this.a=a +this.b=b +this.c=c}, +bg7:function bg7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bg5:function bg5(a,b){this.a=a +this.b=b}, +bgb:function bgb(a,b){this.a=a +this.b=b}, +bga:function bga(a,b){this.a=a +this.b=b}, +bg9:function bg9(a){this.a=a}, +bg8:function bg8(a,b){this.a=a +this.b=b}, +bg1:function bg1(a,b){this.a=a +this.b=b}, +cqa:function cqa(a){this.a=a}, +cqb:function cqb(a){this.a=a}, +IB:function IB(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.$ti=e}, +aez:function aez(a,b){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +bZc:function bZc(a,b){this.a=a +this.b=b}, +bZd:function bZd(a){this.a=a}, +bZe:function bZe(a){this.a=a}, +bZb:function bZb(a,b){this.a=a +this.b=b}, +bZ9:function bZ9(a,b){this.a=a +this.b=b}, +bZ8:function bZ8(a,b){this.a=a +this.b=b}, +bZa:function bZa(a){this.a=a}, +I9:function I9(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aNa:function aNa(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +bX2:function bX2(a,b){this.a=a +this.b=b}, +bX3:function bX3(a){this.a=a}, +bX4:function bX4(a,b){this.a=a +this.b=b}, +bX1:function bX1(a,b){this.a=a +this.b=b}, +bX0:function bX0(a,b){this.a=a +this.b=b}, +JD:function JD(a,b,c){this.c=a +this.d=b +this.a=c}, +aQq:function aQq(a){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +c2V:function c2V(a,b){this.a=a +this.b=b}, +c2W:function c2W(a){this.a=a}, +c2X:function c2X(a){this.a=a}, +c2S:function c2S(a){this.a=a}, +c2R:function c2R(a){this.a=a}, +c2T:function c2T(a){this.a=a}, +c2Q:function c2Q(a,b){this.a=a +this.b=b}, +c2U:function c2U(a){this.a=a}, +c2P:function c2P(a){this.a=a}, +Hr:function Hr(a,b,c){this.c=a +this.d=b +this.a=c}, +aLr:function aLr(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +bSN:function bSN(a,b){this.a=a +this.b=b}, +bSO:function bSO(a){this.a=a}, +bSP:function bSP(a){this.a=a}, +bSM:function bSM(a){this.a=a}, +bSL:function bSL(a,b){this.a=a +this.b=b}, +Ms:function Ms(a,b,c){this.c=a +this.d=b +this.a=c}, +aXi:function aXi(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cg6:function cg6(a,b){this.a=a +this.b=b}, +cg7:function cg7(a){this.a=a}, +cg8:function cg8(a,b){this.a=a +this.b=b}, +t1:function t1(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.$ti=e}, +aXl:function aXl(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cgg:function cgg(){}, +cgf:function cgf(a){this.a=a}, +cgb:function cgb(a){this.a=a}, +cgd:function cgd(a,b){this.a=a +this.b=b}, +cgc:function cgc(){}, +cge:function cge(a){this.a=a}, +fo(a,b,c,d,e){return A.cUo(a,b,c,d,e,e.h("0?"))}, +cUo(a,b,c,d,e,f){var s=0,r=A.p(f),q +var $async$fo=A.l(function(g,h){if(g===1)return A.m(h,r) +while(true)switch(s){case 0:s=3 +return A.i(A.b2j(b,a,c,!0,!0,d,!0,e),$async$fo) +case 3:q=h +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fo,r)}, +b2v(a,b,c,d,e,f,g,h,i,j,k){return new A.Oy(c,j,b,f,k,i,e,g,d,h,null)}, +k4:function k4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +nM:function nM(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +b2t:function b2t(a){this.a=a}, +b2u:function b2u(a){this.a=a}, +Ox:function Ox(a,b,c){this.c=a +this.f=b +this.a=c}, +Oy:function Oy(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.r=c +_.w=d +_.x=e +_.y=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.a=k}, +aCa:function aCa(){}, +eW:function eW(a,b,c){this.a=a +this.b=b +this.c=c}, +aEd:function aEd(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bEw:function bEw(a){this.a=a}, +a7o:function a7o(a,b,c){this.a=a +this.b=b +this.c=c}, +oo:function oo(a,b){this.c=a +this.a=b}, +aTZ:function aTZ(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +cb6:function cb6(a){this.a=a}, +cb7:function cb7(a){this.a=a}, +cb5:function cb5(a){this.a=a}, +Vw(a,b){return new A.bJf(a,b)}, +WE(a,b,c){return new A.uV(a,c,b,null)}, +bJf:function bJf(a,b){this.a=a +this.b=b}, +bJH:function bJH(a){this.a=a}, +uV:function uV(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +BR:function BR(a,b){this.c=a +this.a=b}, +b3M:function b3M(){}, +as3:function as3(a,b,c){this.a=a +this.c=b +this.f=c}, +aN2:function aN2(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +K0:function K0(a,b){this.a=a +this.b=b}, +a9t:function a9t(a,b){this.a=a +this.b=b}, +b3X(a,b,c,d,e){return new A.an9(e,d,c,a,b,null)}, +an9:function an9(a,b,c,d,e,f){var _=this +_.c=a +_.e=b +_.f=c +_.w=d +_.y=e +_.a=f}, +aHQ(a,b,c,d){var s,r=null +switch(d.a){case 0:s=A.a0c(!0,a,b,c,r,r,r,r,r,r) +break +case 1:s=A.jG(a,b,c,r) +break +case 2:s=A.m4(a,b,c,r) +break +default:s=r}return s}, +a0d:function a0d(a,b){this.a=a +this.b=b}, +kj(a,b,c,d,e){return new A.awP(new A.boI(b,120),a,d,e,null)}, +awP:function awP(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +boI:function boI(a,b){this.a=a +this.b=b}, +cOd(a,b,c){return Math.abs(a-b)")),$.ae(),a.h("Eh<0>"))}, +dif(a,b){return new A.afi(b,b,a,null)}, +Eh:function Eh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=$ +_.k2$=0 +_.k3$=c +_.ok$=_.k4$=0 +_.p1$=!1 +_.$ti=d}, +buc:function buc(a){this.a=a}, +bub:function bub(){}, +SV:function SV(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e +_.$ti=f}, +XV:function XV(a,b){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +c7z:function c7z(){}, +c7A:function c7A(a){this.a=a}, +c7B:function c7B(a,b){this.a=a +this.b=b}, +afi:function afi(a,b,c,d){var _=this +_.x=a +_.f=b +_.b=c +_.a=d}, +rM:function rM(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bw9:function bw9(a,b){this.a=a +this.b=b}, +As:function As(a,b){this.c=a +this.a=b}, +bKt:function bKt(a){this.a=a}, +kH:function kH(a,b,c){this.c=a +this.a=b +this.b=c}, +a0a:function a0a(){}, +csg(){var s=0,r=A.p(t.jx),q,p,o,n +var $async$csg=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.bw4(),$async$csg) +case 3:p=b +o=p.c +n=p.d +n=n.length!==0?n:null +q=new A.anb(B.zx,A.cNC(n!=null?o+"+"+n:o),p.f) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$csg,r)}, +xV:function xV(a,b,c){this.c=a +this.a=b +this.b=c}, +anb:function anb(a,b,c){this.a=a +this.b=b +this.f=c}, +a3B:function a3B(a){this.a=a}, +aPw:function aPw(a){this.a=null +this.b=a +this.c=null}, +d28(a){var s,r,q,p=A.a([],t.hp) +for(s=a.b,r=0;r0)p.push(new A.uL(B.dJ.v4(),q,r,null,!1))}s=a.a +return new A.p_(s,s,p,!1,!1)}, +p_:function p_(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +acv:function acv(a){this.a=a}, +uL:function uL(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +Ns:function Ns(a){this.a=a}, +a3A:function a3A(a,b){this.d=a +this.a=b}, +aPA:function aPA(a,b,c,d){var _=this +_.z=_.y=_.x=_.w=$ +_.Q=a +_.eH$=b +_.b5$=c +_.d=$ +_.a=null +_.b=d +_.c=null}, +c0U:function c0U(a){this.a=a}, +c0V:function c0V(a){this.a=a}, +c0Z:function c0Z(a){this.a=a}, +c0W:function c0W(a){this.a=a}, +c0X:function c0X(a){this.a=a}, +c0Y:function c0Y(a){this.a=a}, +akZ:function akZ(){}, +b_H:function b_H(){}, +J4:function J4(a,b){this.c=a +this.a=b}, +aPv:function aPv(a){this.a=null +this.b=a +this.c=null}, +y3:function y3(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.x=c +_.a=d +_.e=_.c=!0 +_.f=e}, +b6q:function b6q(a,b,c){this.a=a +this.b=b +this.c=c}, +b6r:function b6r(){}, +b6s:function b6s(a){this.a=a}, +b6p:function b6p(){}, +cra:function cra(){}, +zy:function zy(a,b){var _=this +_.a=a +_.e=_.c=!0 +_.f=b}, +csY:function csY(){}, +A6:function A6(a,b){var _=this +_.a=a +_.e=_.c=!0 +_.f=b}, +ctt:function ctt(){}, +dl0(){var s,r=J.d1(16,t.S) +for(s=0;s<16;++s)r[s]=-1 +return r}, +dcJ(a){return A.dh7(a)}, +dh7(a){var s=J.ao(a),r=A.GE(s.i(a,"score")) +r=r==null?null:B.e.au(r) +if(r==null)r=0 +s=t.kc.a(s.i(a,"tiles")) +if(s==null)s=null +else{s=J.dP(s,new A.bQg(),t.S) +s=A.R(s,!0,A.z(s).h("aa.E"))}return new A.A8(r,s==null?A.dl0():s)}, +A8:function A8(a,b){this.a=a +this.b=b}, +bD4:function bD4(){}, +bQg:function bQg(){}, +OP:function OP(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.ay=_.ax=_.at=_.as=_.Q=_.z=_.y=$ +_.c=f +_.a=g}, +aol:function aol(a,b,c){this.e=a +this.r=b +this.a=c}, +atk:function atk(a){this.a=a}, +bgt:function bgt(a){this.a=a}, +aDY:function aDY(a){this.a=a}, +bDA:function bDA(){}, +bDB:function bDB(){}, +a8S:function a8S(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +a_H:function a_H(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aGp:function aGp(a,b,c){this.e=a +this.f=b +this.a=c}, +bLE:function bLE(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bLF:function bLF(a){this.a=a}, +J6:function J6(a){this.a=a}, +aPy:function aPy(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +c0T:function c0T(){}, +a3C:function a3C(a){this.a=a}, +aPx:function aPx(a){this.a=null +this.b=a +this.c=null}, +d29(a){var s=A.pk(a.c,new A.b6t(a),t.JD,t.Lp),r=A.R(s,!0,s.$ti.h("B.E")) +return new A.ao4(new A.b1(r,new A.b6u(),A.X(r).h("b1<1>")).gA(0),a.a,a.b,r)}, +ao4:function ao4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6t:function b6t(a){this.a=a}, +b6u:function b6u(){}, +b6v:function b6v(){}, +HF:function HF(a,b){this.a=a +this.b=b}, +rh:function rh(a,b,c){var _=this +_.a=a +_.b=b +_.c=!1 +_.d=c +_.e=0}, +bjJ:function bjJ(){}, +bGn:function bGn(a,b){this.a=a +this.b=b}, +bDC:function bDC(a,b,c){this.a=a +this.b=b +this.c=c}, +a3D:function a3D(a,b){this.d=a +this.a=b}, +aga:function aga(a){var _=this +_.d=_.x=_.w=$ +_.a=null +_.b=a +_.c=null}, +c7g:function c7g(a){this.a=a}, +c7h:function c7h(){}, +c7f:function c7f(a){this.a=a}, +azD:function azD(a,b,c){this.c=a +this.d=b +this.a=c}, +auA:function auA(a,b,c){this.e=a +this.f=b +this.a=c}, +b_W:function b_W(){}, +J5:function J5(a,b){this.c=a +this.a=b}, +aRR:function aRR(a){this.a=null +this.b=a +this.c=null}, +yU:function yU(a,b){var _=this +_.w=!0 +_.x=-1 +_.a=a +_.e=_.c=!0 +_.f=b}, +yV:function yV(){var _=this +_.e=_.d=_.c=_.b=_.a=$}, +crb:function crb(){}, +auI:function auI(a){this.a=a +this.b=null +this.c=0}, +bjR:function bjR(a){this.a=a}, +dkV(){var s,r=J.d1(120,t.JD) +for(s=0;s<120;++s)r[s]=B.a6k +return r}, +dcL(a){return A.dh8(a)}, +dh8(a){var s,r=J.ao(a),q=A.GE(r.i(a,"rows")) +q=q==null?null:B.e.au(q) +if(q==null)q=15 +s=A.GE(r.i(a,"columns")) +s=s==null?null:B.e.au(s) +if(s==null)s=8 +r=t.kc.a(r.i(a,"cells")) +if(r==null)r=null +else{r=J.dP(r,new A.bQh(),t.JD) +r=A.R(r,!0,A.z(r).h("aa.E"))}return new A.A9(q,s,r==null?A.dkV():r)}, +dh9(a){return A.a1(["rows",a.a,"columns",a.b,"cells",a.c],t.N,t.z)}, +q_:function q_(a,b){this.a=a +this.b=b}, +A9:function A9(a,b,c){this.a=a +this.b=b +this.c=c}, +bD6:function bD6(){}, +bQh:function bQh(){}, +auz:function auz(a,b){this.e=a +this.a=b}, +bjI:function bjI(a,b,c){this.a=a +this.b=b +this.c=c}, +aoI:function aoI(a,b,c,d){var _=this +_.e=a +_.f=b +_.r=c +_.a=d}, +aoF:function aoF(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.a=e}, +b8G:function b8G(a,b){this.a=a +this.b=b}, +b8H:function b8H(a,b){this.a=a +this.b=b}, +b8I:function b8I(a,b){this.a=a +this.b=b}, +b8J:function b8J(a,b){this.a=a +this.b=b}, +aoG:function aoG(a,b){this.r=a +this.a=b}, +aoH:function aoH(a,b){this.r=a +this.a=b}, +azC:function azC(a){this.a=a}, +azE:function azE(a,b){this.e=a +this.a=b}, +auD:function auD(a,b,c){this.e=a +this.f=b +this.a=c}, +bjK:function bjK(a){this.a=a}, +bjL:function bjL(a){this.a=a}, +J7:function J7(a){this.a=a}, +aVW:function aVW(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +av5:function av5(a){this.a=a}, +bkI:function bkI(a){this.a=a}, +bjN:function bjN(a){this.a=a +this.c=$}, +cIx(a,b,c,d,e){return new A.auH(b,d,a,c,e.h("auH<0>"))}, +auH:function auH(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=$ +_.$ti=e}, +bjQ:function bjQ(a){this.a=a}, +auG:function auG(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.r=_.f=_.e=null +_.w=!1 +_.x=0 +_.y=!1}, +bjO:function bjO(){}, +bjP:function bjP(){}, +a3z(a,b,c){var s=null,r=B.bgK.Hj(),q=A.W8(),p=B.pu.Hj() +q=new A.pc(a,b,c,q,$,p,s,s,0,s,new A.fN([],t.pr),new A.fN([],t.Pk)) +q.ahR(s,s,s,s,r,s,!0) +return q}, +pc:function pc(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.RG=a +_.rx=b +_.ry=c +_.at=_.to=$ +_.CW=d +_.cx=null +_.db=_.cy=$ +_.azB$=e +_.zb$=f +_.azC$=g +_.WI$=h +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=i +_.w=!1 +_.y=j +_.Q=k +_.as=l}, +auC:function auC(a,b,c,d,e,f){var _=this +_.at=a +_.ax=b +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=c +_.w=!1 +_.y=d +_.Q=e +_.as=f}, +aBT:function aBT(a,b,c,d){var _=this +_.ax=_.at=null +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=a +_.w=!1 +_.y=b +_.Q=c +_.as=d}, +aDZ:function aDZ(a,b,c,d,e,f,g,h,i){var _=this +_.k4=a +_.ok=b +_.p1=$ +_.at=c +_.ax=d +_.ay=e +_.CW=$ +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=f +_.w=!1 +_.y=g +_.Q=h +_.as=i}, +czE(a){var s=null,r=B.pt.Hj(),q=A.W8(),p=B.pu.Hj() +q=new A.aHL(a,q,$,p,s,s,0,s,new A.fN([],t.pr),new A.fN([],t.Pk)) +q.ahR(s,s,s,s,r,s,!0) +return q}, +aHL:function aHL(a,b,c,d,e,f,g,h,i,j){var _=this +_.RG=a +_.at=$ +_.CW=b +_.cx=null +_.db=_.cy=$ +_.azB$=c +_.zb$=d +_.azC$=e +_.WI$=f +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=g +_.w=!1 +_.y=h +_.Q=i +_.as=j}, +J8:function J8(a){this.a=a}, +aXp:function aXp(a){this.a=null +this.b=a +this.c=null}, +cNY(a){return a}, +Dv:function Dv(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=e}, +bjq:function bjq(){}, +bQf:function bQf(){}, +WN:function WN(){}, +akz:function akz(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ku:function ku(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +c0C:function c0C(){}, +aPs:function aPs(){}, +ac1:function ac1(a,b){this.a=a +this.b=b}, +asJ:function asJ(){}, +bcY:function bcY(a){this.a=a}, +bcX:function bcX(a){this.a=a}, +auE:function auE(){}, +aA8:function aA8(a){this.a=a}, +aBU:function aBU(a){this.a=a}, +aE_:function aE_(a){this.a=0 +this.b=a}, +aJL:function aJL(a){this.a=a}, +auF:function auF(a){this.a=a}, +bjM:function bjM(a,b){this.a=a +this.b=b}, +PI:function PI(a,b){this.a=a +this.b=b}, +cgv:function cgv(a){this.a=a}, +cgu:function cgu(a){this.a=a}, +aA7:function aA7(a,b,c,d,e,f,g,h,i,j){var _=this +_.bJL$=a +_.k4=b +_.ok=c +_.p1=$ +_.at=d +_.ax=e +_.ay=f +_.CW=$ +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=g +_.w=!1 +_.y=h +_.Q=i +_.as=j}, +Mu:function Mu(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){var _=this +_.k3=a +_.k4=b +_.p2=!1 +_.azz$=c +_.bw1$=d +_.aau$=e +_.bJI$=f +_.z9$=g +_.za$=h +_.aav$=i +_.bJJ$=j +_.Gx$=k +_.aaw$=l +_.bw2$=m +_.aax$=n +_.azA$=o +_.at=p +_.ax=q +_.ay=r +_.ch=$ +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=s +_.w=!1 +_.y=a0 +_.Q=a1 +_.as=a2}, +bjr:function bjr(){}, +aSd:function aSd(){}, +aXq:function aXq(){}, +aXr:function aXr(){}, +cKt(a,b,c){return new A.T3(b,a,c,null)}, +T3:function T3(a,b,c,d){var _=this +_.d=a +_.e=b +_.w=c +_.a=d}, +aSD:function aSD(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +c8F:function c8F(a,b){this.a=a +this.b=b}, +c8G:function c8G(a,b){this.a=a +this.b=b}, +c8H:function c8H(a,b){this.a=a +this.b=b}, +Kb:function Kb(a,b){this.c=a +this.a=b}, +afK:function afK(a){var _=this +_.e=$ +_.a=null +_.b=a +_.c=null}, +c4o:function c4o(){}, +c4p:function c4p(){}, +c4q:function c4q(a){this.a=a}, +a4n(){var s=0,r=A.p(t.H),q,p +var $async$a4n=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fk().$1("Initializing network") +$.aw4.b=new A.bOE() +q=$.aw4.I() +p=$.a4m +s=2 +return A.i(A.bd1(A.b5U(B.nf,B.nf,B.nf),q),$async$a4n) +case 2:p.b=b +$.a4m.I() +$.d8n.b=new A.b5x() +$.DI.b=new A.aFg($.a4m.I(),$.aw4.I(),new A.bnw()) +$.RN.b=new A.bNF($.DI.I()) +$.a4m.I() +$.d8q.b=new A.bQ8() +$.a4m.I() +$.d8p.b=new A.boP() +$.DI.I() +$.d8o.b=new A.b9m() +$.cJ_.b=new A.bx6($.DI.I()) +return A.n(null,r)}}) +return A.o($async$a4n,r)}, +Jz(){var s=0,r=A.p(t.H),q +var $async$Jz=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fk().$1("Initializing modules") +q=$.eN.I().gW3()?B.a4z:B.a5D +$.aGA.b=q +$.bgc.b=A.d9D() +$.cJy.b=B.a4i +return A.n(null,r)}}) +return A.o($async$Jz,r)}, +cxw(){var s=0,r=A.p(t.H) +var $async$cxw=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fk().$1("Initializing module storage") +$.e2.b=new A.baZ() +$.eL.b=A.dfC() +$.G_.b=B.a5G +$.d60.b=B.a4C +return A.n(null,r)}}) +return A.o($async$cxw,r)}, +d8r(){A.ate(B.vM,t.lD) +A.ate(B.vN,t.jm) +A.ate(B.os,t.uX) +A.cHT(new A.bny(),t.W8) +A.ate(B.aL7,t.xk) +A.ate(B.aI9,t.pL)}, +bnw:function bnw(){}, +bnv:function bnv(a){this.a=a}, +bny:function bny(){}, +bnx:function bnx(){}, +cPw(){var s="zh_Hans",r="yyyy/M/d H:mm:ss" +return new A.b_f(A.fy("H:mm:ss",null),A.fy("H:mm",null),A.fy("yyyy\u5e74M\u6708d\u65e5",s),A.fy("yyyy\u5e74M\u6708d\u65e5 EEEE",s),A.fy("M\u6708d\u65e5 EEEE",s),A.fy("yyyy\u5e74M\u6708",s),A.fy("yyyy/M/d",s),A.fy(r,s),A.fy(r,s),A.fy("M/d H:mm",s),A.fy("M/d",s))}, +b_f:function b_f(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}, +b_g:function b_g(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}, +aOo:function aOo(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}, +dgs(a){var s,r,q=J.d1(7,t.T5) +for(s=a.a,r=0;r<7;++r)q[r]=B.cf[B.d.M(s+r,7)] +return q}, +lf:function lf(a,b){this.a=a +this.b=b}, +dfR(a,b){var s=t.N +return A.dvc(b,A.w(a,null,b.qv(b,new A.bNc(),s,s)))}, +dvc(a,b){var s,r,q,p,o,n,m,l,k=null,j=A.a([],t.VO),i=A.b4("{(.*?)}",!0,!1,!1).kt(0,b) +for(s=new A.oO(i.a,i.b,i.c),r=t.Qz,q=0;s.t();){p=s.d +o=(p==null?r.a(p):p).b +n=o.index +j.push(A.cy(k,k,k,k,B.c.R(b,q,n))) +m=o[1] +if(m==null)j.push(B.boA) +else{l=a.i(0,m) +if(l==null)j.push(A.cy(k,k,k,k,m)) +else j.push(l)}q=n+o[0].length}if(q0){s=-1 +break $label0$0}if(q<0){s=1 +break $label0$0}r=a.a-b.a +$label1$1:{if(r>0){s=-1 +break $label1$1}if(r<0){s=1 +break $label1$1}s=0 +break $label1$1}break $label0$0}return s}, +dsM(a){var s=A.u_(a,new A.csq(),t.uj,t.oH),r=s.gep(s).fK(0,new A.csr(),t.wR).eO(0) +B.b.iL(r,new A.css()) +return r}, +dwF(a){if(a.c===B.qq)return!1 +return!0}, +doB(a){var s,r,q,p,o +for(s=J.au(a),r=0,q=0;s.t();){p=s.gK(s) +if(!A.dwF(p))continue +if(p.e-p.d<0){o=p.c +o=o!==B.qq&&o!==B.y9}else o=!1 +p=p.f +if(o)q+=p +else r+=p}return new A.aUn(r,q)}, +doA(a){var s,r +for(s=J.au(a),r=0;s.t();)r+=s.gK(s).f +return r}, +b2l(a){var s=t.Nk,r=A.u_(a,new A.ctS(),t.uj,s),q=r.qv(r,new A.ctT(),s,t.i),p=A.d8x(q.gbm(0)) +return new A.aUs(p,r.qv(r,new A.ctU(q,p),s,t.ZY))}, +dve(a,b,c){var s,r,q,p,o,n,m=null,l=Date.now(),k=new A.am(l,!1) +switch(c.a){case 0:s=B.d.aD(A.cp(0,0,0,l-b.a,0,0).a,864e8) +if(s===0)return A.w("expenseRecords.stats.today",m,m) +else if(s===1)return A.w("expenseRecords.stats.yesterday",m,m) +return A.b1Y(b,B.hg.a_p(b)) +case 1:if(A.b7(b)===A.b7(k)){r=A.b23(A.cL(k),A.bp(k),A.b7(k)) +q=A.b23(A.cL(b),A.bp(b),A.b7(b)) +if(q===r)return A.w("expenseRecords.stats.thisWeek",m,m) +else if(q===r-1)return A.w("expenseRecords.stats.lastWeek",m,m)}return A.b1Y(b,B.jL.a_p(b)) +case 2:p=A.bbA(m) +o=A.cw1(m) +if(A.b7(b)===A.b7(k))if(A.bp(b)===A.bp(k))return A.w("expenseRecords.stats.thisMonth",m,m) +else if(A.bp(b)===A.bp(k)-1)return A.w("expenseRecords.stats.lastMonth",m,m) +else return o.d4(b) +else return p.d4(b) +case 3:n=A.a1y(m) +if(A.b7(b)===A.b7(k))return A.w("expenseRecords.stats.thisYear",m,m) +else if(A.b7(b)===A.b7(k)-1)return A.w("expenseRecords.stats.lastYear",m,m) +else return n.d4(b)}}, +csq:function csq(){}, +csr:function csr(){}, +csp:function csp(){}, +css:function css(){}, +ctS:function ctS(){}, +ctT:function ctT(){}, +ctU:function ctU(a,b){this.a=a +this.b=b}, +a2V:function a2V(a,b){this.c=a +this.a=b}, +aOE:function aOE(a){this.a=null +this.b=a +this.c=null}, +a2W:function a2W(a,b){this.c=a +this.a=b}, +aOF:function aOF(a){var _=this +_.d=-1 +_.a=null +_.b=a +_.c=null}, +bZU:function bZU(a,b){this.a=a +this.b=b}, +bZT:function bZT(a){this.a=a}, +bZS:function bZS(a){this.a=a}, +bZR:function bZR(a,b,c){this.a=a +this.b=b +this.c=c}, +c__:function c__(a,b){this.a=a +this.b=b}, +bZZ:function bZZ(a,b){this.a=a +this.b=b}, +bZV:function bZV(){}, +bZY:function bZY(){}, +bZX:function bZX(a){this.a=a}, +bZW:function bZW(a,b){this.a=a +this.b=b}, +bZQ:function bZQ(a){this.a=a}, +ddZ(a,b,c){switch(a.a){case 0:return A.de_(b,c) +case 1:return A.de1(b,c) +case 2:return A.de0(b,c) +case 3:return A.de2(b,c)}}, +de_(a,b){var s,r,q,p,o,n=new A.am(Date.now(),!1),m=A.bbH(n,b)?A.iT(n)+1:24,l=J.d1(m,t.c6) +for(s=t.j_,r=0;r") +o=A.R(new A.O(l,new A.bHo(),s),!0,s.h("aa.E")) +B.hg.HL(a) +s=o.length===0?0:A.DN(o)/o.length +return new A.Vk(B.hg,l,p.b,s,p.a,b,A.crM(),new A.bHp(l))}, +de1(a,b){var s,r,q,p,o,n,m,l,k=new A.am(Date.now(),!1) +if(A.b7(b)===A.b7(k)&&A.b23(A.cL(b),A.bp(b),A.b7(b))===A.b23(A.cL(k),A.bp(k),A.b7(k))){s=A.ug(k) +r=(s===7?0:s)+1}else r=7 +q=J.d1(r,t.c6) +for(p=t.j_,o=0;o")).r2(0,new A.bHw()) +l=A.R(p,!0,p.$ti.h("B.E")) +B.jL.HL(a) +p=l.length===0?0:A.DN(l)/l.length +return new A.Vk(B.jL,q,m.b,p,m.a,b,A.crM(),new A.bHx())}, +de0(a,b){var s,r,q,p,o,n=new A.am(Date.now(),!1),m=A.b7(b)===A.b7(n)&&A.bp(b)===A.bp(n)?A.cL(n):A.crD(A.bp(b),A.b7(b)),l=J.d1(m,t.c6) +for(s=t.j_,r=0;r")).r2(0,new A.bHs()) +o=A.R(s,!0,s.$ti.h("B.E")) +s=l.length +B.q9.HL(a) +q=o.length===0?0:A.DN(o)/o.length +return new A.Vk(B.q9,l,p.b,q,p.a,b,A.crM(),new A.bHt(l,s/5|0))}, +de2(a,b){var s,r,q,p,o,n,m,l,k=$.vh() +k=$.an.U$.z.i(0,k).a0(t.L).r.a +k===$&&A.b() +s=A.d41(k.pY("_")) +r=new A.am(Date.now(),!1) +q=A.b7(b)===A.b7(r)?A.bp(r):12 +p=J.d1(q,t.c6) +for(k=t.j_,o=0;o")).r2(0,new A.bHA()) +l=A.R(k,!0,k.$ti.h("B.E")) +B.qa.HL(a) +k=l.length===0?0:A.DN(l)/l.length +return new A.Vk(B.qa,p,m.b,k,m.a,b,A.crM(),new A.bHB(s))}, +de3(a,b,c){var s=null +return A.a9A(c.w,A.bv("\xa5"+A.cBs(b),s,s,s,s,s,s,s,s,A.G(a).p3.at,s,s,s,s,s))}, +Vk:function Vk(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h}, +bHo:function bHo(){}, +bHn:function bHn(){}, +bHp:function bHp(a){this.a=a}, +bHv:function bHv(){}, +bHu:function bHu(){}, +bHw:function bHw(){}, +bHx:function bHx(){}, +bHr:function bHr(){}, +bHq:function bHq(){}, +bHs:function bHs(){}, +bHt:function bHt(a,b){this.a=a +this.b=b}, +bHz:function bHz(){}, +bHy:function bHy(){}, +bHA:function bHA(){}, +bHB:function bHB(a){this.a=a}, +IM:function IM(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +IN:function IN(a,b){this.c=a +this.a=b}, +a2X:function a2X(a,b){this.c=a +this.a=b}, +aOG:function aOG(a){this.a=null +this.b=a +this.c=null}, +c_0:function c_0(){}, +c_1:function c_1(a){this.a=a}, +atJ:function atJ(a,b){this.c=a +this.a=b}, +a2Y:function a2Y(a,b){this.d=a +this.a=b}, +aT3:function aT3(a){var _=this +_.w=-1 +_.d=$ +_.a=null +_.b=a +_.c=null}, +c9y:function c9y(a){this.a=a}, +c9x:function c9x(a,b,c){this.a=a +this.b=b +this.c=c}, +c9z:function c9z(a,b){this.a=a +this.b=b}, +QU:function QU(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +Nc:function Nc(a,b){this.c=a +this.a=b}, +JZ:function JZ(a){this.a=a}, +aQV:function aQV(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +c3H:function c3H(){}, +c3G:function c3G(){}, +K_:function K_(a){this.a=a}, +aQW:function aQW(a){this.a=null +this.b=a +this.c=null}, +c3K:function c3K(a){this.a=a}, +c3J:function c3J(a){this.a=a}, +c3I:function c3I(a){this.a=a}, +c3N:function c3N(a){this.a=a}, +c3M:function c3M(a){this.a=a}, +c3L:function c3L(a){this.a=a}, +boU:function boU(a){this.a=a +this.c=this.b=$}, +bYW:function bYW(a){this.a=a +this.b=$}, +c_2:function c_2(a){this.a=a}, +b2Y:function b2Y(){}, +dw4(a,b){if(a.length!==0)if(A.b1T(a)==null)return b.$0() +return null}, +K8:function K8(a,b){this.d=a +this.a=b}, +afJ:function afJ(a,b,c,d){var _=this +_.w=a +_.x=b +_.y=c +_.Q=_.z=!1 +_.d=$ +_.a=null +_.b=d +_.c=null}, +c4f:function c4f(a){this.a=a}, +c4g:function c4g(a){this.a=a}, +c4h:function c4h(a){this.a=a}, +c4i:function c4i(a){this.a=a}, +c4j:function c4j(a){this.a=a}, +c4k:function c4k(a){this.a=a}, +c4c:function c4c(a){this.a=a}, +c4e:function c4e(a){this.a=a}, +c4d:function c4d(a){this.a=a}, +c48:function c48(){}, +c47:function c47(){}, +c49:function c49(){}, +c4b:function c4b(a){this.a=a}, +c4a:function c4a(a){this.a=a}, +c46:function c46(a){this.a=a}, +c44:function c44(a){this.a=a}, +c43:function c43(a){this.a=a}, +c45:function c45(a){this.a=a}, +c42:function c42(a,b){this.a=a +this.b=b}, +c41:function c41(a){this.a=a}, +b54:function b54(){}, +R6:function R6(a,b){this.c=a +this.a=b}, +bj7:function bj7(a,b){this.a=a +this.b=b}, +k2(){var s=0,r=A.p(t.H),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$k2=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if($.an==null)A.FV() +$.an.toString +$.d7B=!1 +s=2 +return A.i(A.a9w(),$async$k2) +case 2:q=b +p=q.a +o=J.ao(p) +s=3 +return A.i(A.cwb(A.do_(A.bw(o.i(p,"life.mysit.SITLife.lastWindowSize")))),$async$k2) +case 3:s=4 +return A.i(A.bPg("life.mysit"),$async$k2) +case 4:n=A.dbC(q) +A.fk().$1("First installation time: "+A.r(n)) +s=n==null?5:6 +break +case 5:s=7 +return A.i(q.a5R("String","life.mysit.SITLife.installTime",new A.am(Date.now(),!1).k(0)),$async$k2) +case 7:case 6:s=8 +return A.i($.aml().hk(0),$async$k2) +case 8:s=9 +return A.i(A.bff(),$async$k2) +case 9:A.da9() +s=10 +return A.i(A.cwM(),$async$k2) +case 10:c=$.aCl +s=11 +return A.i(A.csg(),$async$k2) +case 11:c.b=b +m=$.aCl.I().b +l=A.bw(o.i(p,"life.mysit.SITLife.lastVersion")) +k=l!=null?A.cNC(l):m +A.fk().$1("Last version: "+k.k(0)) +s=12 +return A.i(q.a5R("String","life.mysit.SITLife.lastVersion",m.k(0)),$async$k2) +case 12:j=A.a([],t.vA) +B.b.L(j,$.cCE().bqs(k,m)) +i=new A.bt1(j) +s=13 +return A.i(i.kT(B.b5W),$async$k2) +case 13:c=$.dbX +s=14 +return A.i(A.cpL(),$async$k2) +case 14:c.b=b +c=$.cyF +s=15 +return A.i(A.cpN(),$async$k2) +case 15:c.b=b +c=$.bzr +s=16 +return A.i(A.cpO(),$async$k2) +case 16:c.b=b +A.cxi() +s=17 +return A.i(A.w7(),$async$k2) +case 17:p=$.cnV.I() +o=A.dU($.cnV.I().a,"/thisLaunchTime",t.d) +A.ds(p.a,"/lastLaunchTime",o) +o=$.cnV.I() +p=Date.now() +A.ds(o.a,"/thisLaunchTime",new A.am(p,!1)) +A.d8r() +s=18 +return A.i(i.kT(B.RD),$async$k2) +case 18:$.d8c=new A.bG9() +s=19 +return A.i(A.a4n(),$async$k2) +case 19:s=20 +return A.i(A.Jz(),$async$k2) +case 20:s=21 +return A.i(A.cxw(),$async$k2) +case 21:s=22 +return A.i(i.kT(B.b5X),$async$k2) +case 22:p=$.d0i() +$.pS().$3$level$stackTrace("Start",B.fD,null) +p=A.byX(new A.a2m(B.b5Y,B.Ia,B.vP,!0,"assets/l10n",p,null)) +if($.an==null)A.FV() +o=$.an +o.toString +h=$.cf() +g=t.e8 +f=g.a(h.gis().b.i(0,0)) +f.toString +e=o.gYS() +d=o.dy$ +if(d===$){h=g.a(h.gis().b.i(0,0)) +h.toString +j=new A.aVC(B.A,null,h,null,A.aw(t.T)) +j.aQ() +j.sbq(null) +o.dy$!==$&&A.a_() +o.dy$=j +d=j}o.aJG(new A.aHA(f,p,e,d,null)) +o.a0_() +return A.n(null,r)}}) +return A.o($async$k2,r)}, +cpL(){var s=0,r=A.p(t.yp),q,p,o,n +var $async$cpL=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=J +n=B.aO +s=3 +return A.i($.xI().XT("assets/room_list.json"),$async$cpL) +case 3:p=o.dP(n.pf(0,b,null),new A.cpM(),t.N) +q=A.R(p,!0,A.z(p).h("aa.E")) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cpL,r)}, +cpN(){var s=0,r=A.p(t.yp),q,p,o +var $async$cpN=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=J +o=B.aO +s=3 +return A.i($.xI().XT("assets/user_agent.json"),$async$cpN) +case 3:q=p.ie(o.pf(0,b,null),t.N) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cpN,r)}, +cpO(){var s=0,r=A.p(t.l6),q,p,o,n +var $async$cpO=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=J +n=B.aO +s=3 +return A.i($.xI().XT("assets/yellow_pages.json"),$async$cpO) +case 3:p=o.dP(n.pf(0,b,null),new A.cpP(),t.Q4) +p=A.R(p,!0,A.z(p).h("aa.E")) +q=new A.ek(p,A.X(p).h("ek<1,jR>")) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cpO,r)}, +cpM:function cpM(){}, +cpP:function cpP(){}, +a2p:function a2p(a){this.a=a}, +aO8:function aO8(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +bYH:function bYH(){}, +QH:function QH(a,b){this.c=a +this.a=b}, +axg:function axg(a,b){this.c=a +this.a=b}, +Iu:function Iu(a){this.a=a}, +aO9:function aO9(a){var _=this +_.w=null +_.d=$ +_.a=null +_.b=a +_.c=null}, +bYJ:function bYJ(){}, +bYK:function bYK(a,b){this.a=a +this.b=b}, +bYI:function bYI(a){this.a=a}, +Iv:function Iv(a){this.a=a}, +aOa:function aOa(a,b,c,d){var _=this +_.d=a +_.e=$ +_.f=b +_.r=c +_.x=_.w=!1 +_.a=null +_.b=d +_.c=null}, +bYS:function bYS(a){this.a=a}, +bYM:function bYM(){}, +bYN:function bYN(){}, +bYP:function bYP(a){this.a=a}, +bYO:function bYO(a){this.a=a}, +bYL:function bYL(a){this.a=a}, +bYR:function bYR(a){this.a=a}, +bYQ:function bYQ(a){this.a=a}, +bYT:function bYT(a){this.a=a}, +bYU:function bYU(a){this.a=a}, +bYV:function bYV(a){this.a=a}, +Iw:function Iw(a){this.a=a}, +aOb:function aOb(a){this.a=null +this.b=a +this.c=null}, +d9D(){var s=null,r=A.a([],t._V),q=new A.atB(new A.h1(s,s,t.zr)) +r=new A.avW(q,A.N(t.N,t.R4),r,s,!0,new A.brb()) +r.cx=new A.bn8(r.gbCN(),new A.bNK(new A.bvi(A.a([],t.XE)))) +return new A.bra(r)}, +bra:function bra(a){this.a=a}, +brb:function brb(){}, +bgd:function bgd(){}, +QK:function QK(a,b){this.c=a +this.a=b}, +bgs:function bgs(a,b){this.a=a +this.b=b}, +bgr:function bgr(a){this.a=a}, +Km:function Km(a){this.a=a}, +aRm:function aRm(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +c5X:function c5X(a){this.a=a}, +c5U:function c5U(a){this.a=a}, +c5W:function c5W(){}, +c5V:function c5V(a){this.a=a}, +a3M:function a3M(a){this.a=a}, +aPM:function aPM(a){var _=this +_.x=_.w=null +_.d=$ +_.a=null +_.b=a +_.c=null}, +c1t:function c1t(a){this.a=a}, +c1s:function c1s(){}, +Kr:function Kr(a,b){this.a=a +this.b=b}, +zp:function zp(){}, +aeU:function aeU(a){this.a=a}, +aoN:function aoN(a){this.a=a}, +v8:function v8(a,b){this.a=a +this.b=b}, +bsZ:function bsZ(a){this.a=a}, +bt_:function bt_(a,b){this.a=a +this.b=b}, +bt0:function bt0(){}, +da9(){var s=A.abR(1,0,0,"",B.bF),r=$.cCE().a +r.push(new A.v8(s,new A.aeU(new A.bt2()))) +r.push(new A.v8(A.abR(2,4,0,"",B.bF),new A.aeU(new A.bt3())))}, +bt2:function bt2(){}, +bt3:function bt3(){}, +bt1:function bt1(a){this.a=a}, +dnj(a){var s,r=null +switch(a){case B.C8:s=B.Cb +break +case B.tr:s=B.Cc +break +case B.C9:s=B.Cd +break +case B.Ca:s=B.Ce +break +case B.kF:s=r +break +case B.n3:s=r +break +case B.n4:s=B.Cf +break +case null:case void 0:s=r +break +default:s=r}return s}, +crq(){var s=0,r=A.p(t.HA),q,p,o,n +var $async$crq=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if($.bav==null)$.bav=new A.apG() +s=3 +return A.i($.cCp().lD(),$async$crq) +case 3:p=b +o=J.ao(p) +if(o.gad(p)||o.ga2(p)===B.kF){q=B.ag2 +s=1 +break}n=o.p(p,B.n3) +if(o.p(p,B.n4)){q=new A.tG(B.Cf,n) +s=1 +break}q=new A.tG(A.dnj(A.awc(o.kW(p,new A.crr()))),n) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$crq,r)}, +GJ(a,b,c){return A.dpz(a,b,c,c)}, +dpz(a,b,c,d){var $async$GJ=A.l(function(e,f){switch(e){case 2:n=q +s=n.pop() +break +case 1:o=f +s=p}while(true)switch(s){case 0:m=t.z,l=c.h("ak<0>"),k=c.h("a8<0>") +case 3:if(!!0){s=4 +break}j=a.$0() +if(!k.b(j)){i=new A.ak($.at,l) +i.a=8 +i.c=j +j=i}s=5 +return A.hm(j,$async$GJ,r) +case 5:h=f +A.fk().$1(J.cw(h)) +s=6 +q=[1] +return A.hm(A.aQu(h),$async$GJ,r) +case 6:s=7 +return A.hm(A.jk(b,null,m),$async$GJ,r) +case 7:s=3 +break +case 4:case 1:return A.hm(null,0,r) +case 2:return A.hm(o,1,r)}}) +var s=0,r=A.b1y($async$GJ,d),q,p=2,o,n=[],m,l,k,j,i,h +return A.b1I(r)}, +cSH(a,b){var s +if(a==null)return B.aym +if(!b&&a.b)return B.uD +s=a.a +if(s==null)return B.DN +s=B.aWl.i(0,s) +if(s==null)s=null +return s==null?B.axX:s}, +Cj:function Cj(a,b){this.a=a +this.b=b}, +tG:function tG(a,b){this.a=a +this.b=b}, +crr:function crr(){}, +bQe:function bQe(a){this.a=a}, +KA:function KA(a){this.a=a}, +aSc:function aSc(a){var _=this +_.f=_.e=_.d=null +_.x=_.w=_.r=$ +_.a=null +_.b=a +_.c=null}, +c8i:function c8i(){}, +c8j:function c8j(a){this.a=a}, +c8h:function c8h(a,b){this.a=a +this.b=b}, +c8k:function c8k(){}, +c8l:function c8l(a){this.a=a}, +c8g:function c8g(a,b){this.a=a +this.b=b}, +c8m:function c8m(){}, +c8n:function c8n(a){this.a=a}, +c8f:function c8f(a,b){this.a=a +this.b=b}, +apH:function apH(a,b){this.c=a +this.a=b}, +aFu:function aFu(a,b){this.e=a +this.a=b}, +bIj:function bIj(a){this.a=a}, +aou:function aou(a,b){this.c=a +this.a=b}, +bG9:function bG9(){}, +buF(a,b){var s=0,r=A.p(t.a),q,p,o,n +var $async$buF=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=B.c +n=J +s=3 +return A.i($.cWO().a_o(0,a,A.mk(null,null,null,null,null,null,null,null,null,null,null,null,null,B.X4,null,null),b,t.z),$async$buF) +case 3:p=o.du(n.cw(d.a)) +q=B.aO.pf(0,B.c.R(p,7,p.length-1),null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$buF,r)}, +buG(){var s=0,r=A.p(t.Wn),q,p=2,o,n,m,l,k,j,i,h +var $async$buG=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(A.buF("http://172.16.8.70/drcom/chkstatus",A.a1(["callback","dr1002","lang","zh","jsVersion","4.X"],t.N,t.z)),$async$buG) +case 7:n=b +m=n +l=J.ao(m) +k=B.e.au(A.e6(l.i(m,"result"))) +j=A.ax(l.i(m,"v46ip")) +m=A.bw(l.i(m,"uid")) +q=new A.Ce(k!==0,j,m) +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +q=null +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$buG,r)}, +Ce:function Ce(a,b,c){this.a=a +this.b=b +this.c=c}, +awH:function awH(a){this.a=a}, +boB:function boB(a){this.a=a}, +aAr:function aAr(a){this.a=a}, +bvh:function bvh(){}, +aAp:function aAp(a){this.a=a}, +bvg:function bvg(a){this.a=a}, +Oc:function Oc(a,b){this.a=a +this.b=b}, +bOV:function bOV(a,b){this.a=a +this.b=b}, +a0V:function a0V(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.a=f}, +adz:function adz(a,b){var _=this +_.d=a +_.e=$ +_.a=_.f=null +_.b=b +_.c=null}, +bVe:function bVe(){}, +bVf:function bVf(a){this.a=a}, +bVd:function bVd(a,b){this.a=a +this.b=b}, +bVc:function bVc(a){this.a=a}, +bVg:function bVg(a){this.a=a}, +bVh:function bVh(a,b){this.a=a +this.b=b}, +bVi:function bVi(a){this.a=a}, +aaN:function aaN(a,b,c){this.c=a +this.d=b +this.a=c}, +aXV:function aXV(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +chV:function chV(a){this.a=a}, +chS:function chS(a){this.a=a}, +chT:function chT(a,b){this.a=a +this.b=b}, +chU:function chU(a){this.a=a}, +cBQ(a,b){var s=0,r=A.p(t.un),q,p +var $async$cBQ=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=A.x5(b) +if(p==null){q=B.WM +s=1 +break}q=A.b27(a,p) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cBQ,r)}, +b27(a,b){var s=0,r=A.p(t.un),q,p,o +var $async$b27=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:if(b.gfX()!=="life.mysit"&&b.gfX()!=="sitlife"){q=B.WL +s=1 +break}p=0 +case 3:if(!(p<4)){s=5 +break}o=$.d4g[p] +s=o.Y0(0,b)?6:7 +break +case 6:s=8 +return A.i(o.nc(a,b),$async$b27) +case 8:q=B.WJ +s=1 +break +case 7:case 4:++p +s=3 +break +case 5:q=B.WK +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$b27,r)}, +Ln:function Ln(a,b){this.a=a +this.b=b}, +LP:function LP(a){this.a=a}, +aic:function aic(a,b){var _=this +_.d=a +_.a=_.e=null +_.b=b +_.c=null}, +cdK:function cdK(a){this.a=a}, +cdL:function cdL(a){this.a=a}, +b0F:function b0F(){}, +TR:function TR(a,b,c){this.c=a +this.e=b +this.a=c}, +bz6:function bz6(a,b){this.a=a +this.b=b}, +bz7:function bz7(a,b){this.a=a +this.b=b}, +aBt:function aBt(a,b,c){this.c=a +this.d=b +this.a=c}, +tK:function tK(){}, +aCb:function aCb(a){this.a=a}, +ao7:function ao7(a){this.a=a}, +cBG(a){var s,r,q +if($.eN.I().gW3())return!1 +s=A.Lj(a,!0) +r=$.e2.I().gIj().dL(0,s) +s=A.Lj(a,!0) +q=$.e2.I().gt9().dL(0,s) +return r!==B.jo&&q==null}, +dmQ(a,b){if(A.cBG(a))return"/login?guard=true" +return null}, +dnF(a,b){var s=null,r=A.Lj(a,!0) +if($.e2.I().gIj().dL(0,r)===B.fU){r=b.c +if(B.c.aC(r,"/tools"))return s +if(B.c.aC(r,"/settings"))return s +if(r==="/browser")return s +return"/login"}return s}, +dne(a,b){return new A.aAc(b.b.k(0),null)}, +cRO(){var s=null,r=A.cU(s,s,"/",new A.crf(),B.ab),q=t.yo,p=A.a([A.cMm($.cUq(),A.a([$.cE0()],q))],t.uP) +p.push(A.cMm($.cUp(),A.a([$.cDP()],q))) +q=A.a([r,new A.Mp(s,new A.crg(),s,A.dvg(),p,new A.aR(s,t.al),A.ddY(p),s)],q) +B.b.L(q,$.cE_()) +q.push($.cDf()) +q.push($.cDw()) +q.push($.cDS()) +q.push($.cE3()) +B.b.L(q,$.cE1()) +q.push($.cDo()) +q.push($.cDQ()) +B.b.L(q,$.cDs()) +q.push($.cE4()) +q.push($.cDu()) +q.push($.cDt()) +B.b.L(q,$.cDL()) +q.push($.cDX()) +q.push($.cDO()) +q.push($.cDE()) +B.b.L(q,$.cDC()) +return new A.a8F(q,A.cTW())}, +cRQ(){var s=A.a([A.cU(null,null,"/",new A.crl(),B.ab),$.cE0()],t.yo) +B.b.L(s,$.cE_()) +s.push($.d_G()) +s.push($.cZM()) +s.push($.d_f()) +s.push($.cDP()) +s.push($.cDf()) +s.push($.cDw()) +s.push($.cDS()) +s.push($.cE3()) +B.b.L(s,$.cE1()) +s.push($.cDo()) +s.push($.cDQ()) +B.b.L(s,$.cDs()) +s.push($.cE4()) +s.push($.cDu()) +s.push($.cDt()) +B.b.L(s,$.cDL()) +s.push($.cDX()) +s.push($.cDO()) +s.push($.cDE()) +B.b.L(s,$.cDC()) +return new A.a8F(s,A.cTW())}, +cqM:function cqM(){}, +cqC:function cqC(){}, +cqD:function cqD(){}, +cqE:function cqE(){}, +cqF:function cqF(){}, +cqG:function cqG(){}, +cqH:function cqH(){}, +cqI:function cqI(){}, +cqJ:function cqJ(){}, +cqK:function cqK(){}, +cqL:function cqL(){}, +cqf:function cqf(){}, +cpG:function cpG(){}, +cpm:function cpm(){}, +cpT:function cpT(){}, +cqN:function cqN(){}, +cqO:function cqO(){}, +cqg:function cqg(){}, +cqh:function cqh(){}, +cqi:function cqi(){}, +cqk:function cqk(){}, +cql:function cql(){}, +cqm:function cqm(){}, +cqn:function cqn(){}, +cqo:function cqo(){}, +cqp:function cqp(){}, +cqq:function cqq(){}, +cqr:function cqr(){}, +cqj:function cqj(){}, +coZ:function coZ(){}, +cp_:function cp_(){}, +col:function col(){}, +com:function com(){}, +con:function con(){}, +coo:function coo(){}, +cpY:function cpY(){}, +cpZ:function cpZ(){}, +cr2:function cr2(){}, +coO:function coO(){}, +coP:function coP(){}, +coQ:function coQ(){}, +cr3:function cr3(){}, +cr4:function cr4(){}, +cr5:function cr5(){}, +cpt:function cpt(){}, +cpQ:function cpQ(){}, +cqy:function cqy(){}, +cpD:function cpD(){}, +cpE:function cpE(){}, +cpF:function cpF(){}, +coV:function coV(){}, +coW:function coW(){}, +coX:function coX(){}, +coY:function coY(){}, +cob:function cob(){}, +cpj:function cpj(){}, +cpk:function cpk(){}, +cpl:function cpl(){}, +crf:function crf(){}, +crg:function crg(){}, +crl:function crl(){}, +hp:function hp(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +a0s:function a0s(a,b,c){this.a=a +this.b=b +this.c=c}, +a0t:function a0t(){}, +a0x:function a0x(){}, +vz:function vz(a,b){this.a=a +this.b=b}, +a0u:function a0u(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +a0v:function a0v(){}, +a0w:function a0w(){}, +a0D:function a0D(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}, +HN:function HN(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +nU:function nU(a,b){this.a=a +this.b=b}, +rk:function rk(){}, +cvD:function cvD(){}, +a0E:function a0E(){}, +a0B:function a0B(){}, +a0C:function a0C(){}, +a0y:function a0y(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}, +a0z:function a0z(){}, +a0A:function a0A(a){this.a=a}, +aM2:function aM2(a){var _=this +_.d=_.w=$ +_.a=null +_.b=a +_.c=null}, +bUq:function bUq(a){this.a=a}, +dhg(){var s=t.zD +return new A.aKm(new A.bm(A.R(new A.O(B.vu,new A.bQG(),s),!0,s.h("aa.E")),$.ae(),t.AI),B.f)}, +H2:function H2(a){this.a=a}, +aKm:function aKm(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +bQG:function bQG(){}, +bQL:function bQL(){}, +bQK:function bQK(){}, +bQN:function bQN(){}, +bQH:function bQH(a){this.a=a}, +bQI:function bQI(){}, +bQM:function bQM(a){this.a=a}, +bQJ:function bQJ(a,b){this.a=a +this.b=b}, +BM:function BM(a,b,c){this.c=a +this.d=b +this.a=c}, +aKn:function aKn(a,b){var _=this +_.d=1 +_.e=!1 +_.f=$ +_.eW$=a +_.a=null +_.b=b +_.c=null}, +bQR:function bQR(a){this.a=a}, +bQQ:function bQQ(a){this.a=a}, +bQP:function bQP(a,b){this.a=a +this.b=b}, +bQO:function bQO(a,b){this.a=a +this.b=b}, +bQS:function bQS(a){this.a=a}, +bQT:function bQT(a){this.a=a}, +akA:function akA(){}, +dhp(){return new A.aKU(new A.bRP().$0(),new A.bm(0,$.ae(),t.bm),B.f)}, +Zd(a){if(a>0)return"+"+B.e.aZ(a,2) +else if(a===0)return"+0" +else return B.e.aZ(a,2)}, +b1D(a,b){if(b>0)return B.dZ +else if(b===0)return null +else return B.d8}, +dnC(a,b){var s=J.vk(a,new A.cq7(b)) +return A.R(s,!0,s.$ti.h("B.E"))}, +Hj:function Hj(a){this.a=a}, +aKU:function aKU(a,b,c){var _=this +_.w=a +_.x=$ +_.y=b +_.Q=_.z=null +_.d=$ +_.a=null +_.b=c +_.c=null}, +bRP:function bRP(){}, +bS9:function bS9(a){this.a=a}, +bSa:function bSa(a){this.a=a}, +bS4:function bS4(a){this.a=a}, +bS5:function bS5(a){this.a=a}, +bS8:function bS8(a,b){this.a=a +this.b=b}, +bS1:function bS1(a,b){this.a=a +this.b=b}, +bS2:function bS2(){}, +bS7:function bS7(a){this.a=a}, +bS6:function bS6(a,b){this.a=a +this.b=b}, +bS3:function bS3(a){this.a=a}, +bRT:function bRT(a){this.a=a}, +bRS:function bRS(a){this.a=a}, +bRU:function bRU(){}, +bRV:function bRV(a){this.a=a}, +bRR:function bRR(a,b){this.a=a +this.b=b}, +bRQ:function bRQ(a,b){this.a=a +this.b=b}, +bRZ:function bRZ(a){this.a=a}, +bRY:function bRY(a){this.a=a}, +bS_:function bS_(){}, +bS0:function bS0(a){this.a=a}, +bRX:function bRX(a,b){this.a=a +this.b=b}, +bRW:function bRW(a,b){this.a=a +this.b=b}, +H0:function H0(a,b,c){this.c=a +this.d=b +this.a=c}, +b3i:function b3i(a,b){this.a=a +this.b=b}, +HM:function HM(a,b){this.c=a +this.a=b}, +adr:function adr(a){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null}, +bUr:function bUr(a,b){this.a=a +this.b=b}, +bUs:function bUs(a){this.a=a}, +bUt:function bUt(a){this.a=a}, +PB:function PB(a,b){this.c=a +this.a=b}, +b4g:function b4g(a,b,c,d,e,f,g,h,i){var _=this +_.as=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=null +_.x=g +_.y=h +_.z=i +_.Q=null}, +b4h:function b4h(a){this.a=a}, +b4i:function b4i(a){this.a=a}, +cq7:function cq7(a){this.a=a}, +vA:function vA(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aM1:function aM1(a){var _=this +_.d=$ +_.e=!1 +_.a=null +_.b=a +_.c=null}, +bUp:function bUp(a){this.a=a}, +bUo:function bUo(a){this.a=a}, +bUn:function bUn(a){this.a=a}, +bUk:function bUk(a){this.a=a}, +bUl:function bUl(a){this.a=a}, +bUm:function bUm(a){this.a=a}, +ZF:function ZF(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aKk:function aKk(a,b){var _=this +_.eW$=a +_.a=null +_.b=b +_.c=null}, +ZE:function ZE(a,b){this.c=a +this.a=b}, +aKj:function aKj(a,b){var _=this +_.eW$=a +_.a=null +_.b=b +_.c=null}, +b_n:function b_n(){}, +b_o:function b_o(){}, +H1:function H1(a,b,c){this.c=a +this.d=b +this.a=c}, +b3j:function b3j(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=null +_.x=f +_.y=g +_.z=h +_.Q=null}, +b3k:function b3k(a){this.a=a}, +acy:function acy(a,b){this.c=a +this.a=b}, +aKi:function aKi(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +bQF:function bQF(a,b){this.a=a +this.b=b}, +bQE:function bQE(a,b){this.a=a +this.b=b}, +bQD:function bQD(a){this.a=a}, +la:function la(a,b){this.a=a +this.b=b}, +h_:function h_(a,b){this.a=a +this.b=b}, +rl:function rl(a,b){this.a=a +this.b=b}, +a9k:function a9k(){}, +a9j:function a9j(){}, +a14:function a14(){}, +b22(a,b){if(a===B.ko)return B.aD1 +if(a===B.cm)return B.Fg +return B.Fg}, +eK:function eK(a,b){this.a=a +this.b=b}, +a2L:function a2L(a){this.a=a}, +aOs:function aOs(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +IG:function IG(a){this.a=a}, +aOt:function aOt(a){var _=this +_.w=null +_.x=!1 +_.d=_.z=_.y=$ +_.a=null +_.b=a +_.c=null}, +bZo:function bZo(a,b){this.a=a +this.b=b}, +bZp:function bZp(a){this.a=a}, +bZn:function bZn(a,b){this.a=a +this.b=b}, +bZm:function bZm(a){this.a=a}, +bZl:function bZl(a,b){this.a=a +this.b=b}, +atD:function atD(a,b,c){this.c=a +this.d=b +this.a=c}, +atE:function atE(a,b){this.c=a +this.a=b}, +fd:function fd(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bho:function bho(){}, +bhp:function bhp(){}, +a2N:function a2N(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}, +a2O:function a2O(){}, +AI:function AI(a,b){this.a=a +this.b=b}, +o6:function o6(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}, +vV:function vV(a,b,c){this.a=a +this.b=b +this.c=c}, +a2Q:function a2Q(){}, +a2M:function a2M(){}, +abE:function abE(){}, +a2P:function a2P(a){this.a=a}, +aOx:function aOx(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +a2R:function a2R(a){this.a=a}, +aOz:function aOz(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +IH:function IH(a,b){this.c=a +this.a=b}, +aOv:function aOv(a){this.a=null +this.b=a +this.c=null}, +bZt:function bZt(a){this.a=a}, +bZu:function bZu(a){this.a=a}, +IK:function IK(a,b){this.c=a +this.a=b}, +aOu:function aOu(a){this.a=null +this.b=a +this.c=null}, +bZr:function bZr(){}, +bZs:function bZs(){}, +Mz:function Mz(a){this.a=a}, +ajo:function ajo(a,b,c){var _=this +_.d=a +_.e=b +_.a=_.f=null +_.b=c +_.c=null}, +chR:function chR(a,b){this.a=a +this.b=b}, +chQ:function chQ(a){this.a=a}, +chP:function chP(a){this.a=a}, +cPF(a,b){var s,r,q,p=null,o="examResult.gpa.lessonSelected",n=J.ao(a) +if(n.gad(a))return A.w(o,A.a([B.d.k(n.gA(a))],t.s),p) +s=A.dpw(A.bnU(n.fK(a,new A.coc(),t.wK),t.tb)) +r=t.s +q=A.w("examResult.gpa.credit",A.a([B.e.k(s.a)],r),p)+" "+A.w("examResult.gpa.gpaResult",A.a([B.e.adH(s.b,2)],r),p) +return b?A.w(o,A.a([B.d.k(n.gA(a))],r),p)+" "+q:q}, +Jc:function Jc(a){this.a=a}, +aPL:function aPL(a,b,c,d){var _=this +_.d=$ +_.e=a +_.f=!1 +_.r=b +_.w=c +_.a=null +_.b=d +_.c=null}, +c1o:function c1o(a){this.a=a}, +c1p:function c1p(a){this.a=a}, +c1q:function c1q(a,b){this.a=a +this.b=b}, +c1r:function c1r(a){this.a=a}, +c1n:function c1n(a){this.a=a}, +c1k:function c1k(a){this.a=a}, +c1l:function c1l(){}, +c1m:function c1m(){}, +c1j:function c1j(){}, +c1i:function c1i(a){this.a=a}, +c1c:function c1c(a){this.a=a}, +c1d:function c1d(a){this.a=a}, +c1e:function c1e(){}, +c1f:function c1f(a,b){this.a=a +this.b=b}, +c1a:function c1a(){}, +c1b:function c1b(){}, +c1g:function c1g(){}, +c1h:function c1h(a,b){this.a=a +this.b=b}, +c18:function c18(){}, +c19:function c19(){}, +II:function II(a,b,c){this.c=a +this.d=b +this.a=c}, +aOw:function aOw(a){this.a=null +this.b=a +this.c=null}, +bZz:function bZz(){}, +bZA:function bZA(a){this.a=a}, +bZB:function bZB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bZy:function bZy(a,b,c){this.a=a +this.b=b +this.c=c}, +bZC:function bZC(a,b){this.a=a +this.b=b}, +bZw:function bZw(a,b){this.a=a +this.b=b}, +bZx:function bZx(a,b){this.a=a +this.b=b}, +bZv:function bZv(a){this.a=a}, +atG:function atG(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +coc:function coc(){}, +IJ:function IJ(a){this.a=a}, +aOy:function aOy(a,b,c){var _=this +_.d=null +_.e=!1 +_.r=null +_.w=a +_.x=b +_.a=null +_.b=c +_.c=null}, +bZE:function bZE(a){this.a=a}, +bZF:function bZF(a){this.a=a}, +bZD:function bZD(a){this.a=a}, +IL:function IL(a){this.a=a}, +aOA:function aOA(a,b){var _=this +_.x=_.w=$ +_.y=!1 +_.z=a +_.d=_.Q=$ +_.a=null +_.b=b +_.c=null}, +bZK:function bZK(a){this.a=a}, +bZL:function bZL(a){this.a=a}, +bZM:function bZM(a,b){this.a=a +this.b=b}, +bZN:function bZN(a){this.a=a}, +bZH:function bZH(a){this.a=a}, +bZI:function bZI(a){this.a=a}, +bZJ:function bZJ(){}, +bZG:function bZG(a){this.a=a}, +dpw(a){var s,r,q,p,o,n,m +for(s=new A.dr(a.a(),a.$ti.h("dr<1>")),r=0,q=0;s.t();){p=s.b +o=p.b +n=p.a +r+=n +q+=n*o}m=q/r/10-5 +return new A.aUj(r,isNaN(m)?0:m)}, +drY(a){var s,r,q,p,o,n,m,l,k,j,i=A.u_(a,new A.cs0(),t.RG,t.C8),h=i.i(0,B.ym) +if(h==null)h=A.a([],t.wg) +s=i.i(0,B.ZT) +if(s==null)s=A.a([],t.wg) +r=i.i(0,B.ZU) +if(r==null)r=A.a([],t.wg) +q=A.a([],t.KY) +for(p=J.au(h),o=J.cz(s),n=J.cz(r),m=0;p.t();){l=p.gK(p) +k=o.kW(s,new A.cs1(l)) +j=A.R(k,!0,k.$ti.h("B.E")) +k=n.kW(r,new A.cs2(l)) +q.push(new A.fd(m,l,j,A.R(k,!0,k.$ti.h("B.E"))));++m}return q}, +dsL(a){var s=t.is,r=A.u_(a,new A.csm(),t.fw,s),q=t.b3,p=r.gep(r).fK(0,new A.csn(),q).eO(0) +A.Sj(p,new A.cso(),q,s) +return p}, +cs0:function cs0(){}, +cs1:function cs1(a){this.a=a}, +cs2:function cs2(a){this.a=a}, +csm:function csm(){}, +csn:function csn(){}, +cso:function cso(){}, +QT:function QT(a,b,c){this.c=a +this.d=b +this.a=c}, +Dd:function Dd(a,b){this.c=a +this.a=b}, +bhr:function bhr(a,b){this.a=a +this.b=b}, +bhq:function bhq(a){this.a=a}, +LS:function LS(a){this.a=a}, +aVV:function aVV(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cdS:function cdS(){}, +cdR:function cdR(){}, +a_J:function a_J(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +a_P:function a_P(a){this.a=a}, +a_K:function a_K(){}, +a_Q:function a_Q(){}, +a_U:function a_U(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}, +P6:function P6(a,b){this.a=a +this.b=b}, +a_L:function a_L(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}, +a_V:function a_V(){}, +a_M:function a_M(){}, +a_N:function a_N(){}, +Hq:function Hq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a_R:function a_R(){}, +a94:function a94(a,b){this.a=a +this.b=b}, +a4U:function a4U(a){this.a=a}, +aQQ:function aQQ(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +JV:function JV(a){this.a=a}, +aQR:function aQR(a,b){var _=this +_.d=!1 +_.e=a +_.a=null +_.b=b +_.c=null}, +c3r:function c3r(a){this.a=a}, +c3s:function c3s(a){this.a=a}, +c3p:function c3p(a){this.a=a}, +c3q:function c3q(a){this.a=a}, +P8:function P8(a,b,c){this.c=a +this.d=b +this.a=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,b){this.a=a +this.b=b}, +C5:function C5(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aLq:function aLq(a,b){var _=this +_.d=$ +_.e=!1 +_.f=a +_.a=null +_.b=b +_.c=null}, +bSH:function bSH(a,b){this.a=a +this.b=b}, +bSG:function bSG(a,b){this.a=a +this.b=b}, +bSF:function bSF(a){this.a=a}, +bSI:function bSI(a,b){this.a=a +this.b=b}, +bSJ:function bSJ(a,b){this.a=a +this.b=b}, +bSK:function bSK(a,b){this.a=a +this.b=b}, +bSE:function bSE(){}, +a_O:function a_O(a,b){this.c=a +this.a=b}, +aLp:function aLp(a){var _=this +_.d=null +_.e=!1 +_.a=null +_.b=a +_.c=null}, +bSB:function bSB(a){this.a=a}, +bSC:function bSC(a,b){this.a=a +this.b=b}, +bSD:function bSD(a){this.a=a}, +bSA:function bSA(){}, +ao5:function ao5(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +JX:function JX(a){this.a=a}, +aQT:function aQT(a,b){var _=this +_.d=!1 +_.e=a +_.a=null +_.b=b +_.c=null}, +c3D:function c3D(a){this.a=a}, +c3E:function c3E(a){this.a=a}, +c3C:function c3C(a){this.a=a}, +P5:function P5(a,b){this.c=a +this.a=b}, +b6C:function b6C(a,b){this.a=a +this.b=b}, +b6B:function b6B(a){this.a=a}, +JW:function JW(a){this.a=a}, +aQS:function aQS(a,b,c,d){var _=this +_.d=a +_.e=$ +_.f=b +_.r=c +_.x=_.w=!1 +_.a=null +_.b=d +_.c=null}, +c3z:function c3z(a){this.a=a}, +c3u:function c3u(){}, +c3w:function c3w(a){this.a=a}, +c3v:function c3v(a){this.a=a}, +c3t:function c3t(a){this.a=a}, +c3y:function c3y(a){this.a=a}, +c3x:function c3x(a){this.a=a}, +c3A:function c3A(a){this.a=a}, +c3B:function c3B(a){this.a=a}, +Hh:function Hh(a,b,c){this.c=a +this.d=b +this.a=c}, +aKR:function aKR(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +bRE:function bRE(a){this.a=a}, +bRD:function bRD(a,b){this.a=a +this.b=b}, +bRC:function bRC(){}, +bRB:function bRB(){}, +bRA:function bRA(a){this.a=a}, +daA(a){var s +$label0$0:{if(B.e0===a){s=B.aH3 +break $label0$0}if(B.h1===a){s=B.aNT +break $label0$0}s=B.aPc +break $label0$0}return s}, +km:function km(a,b){this.a=a +this.b=b}, +T2:function T2(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a6p:function a6p(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +a6n:function a6n(a,b){this.a=a +this.b=b}, +a6u:function a6u(){}, +a6q:function a6q(){}, +a6o:function a6o(){}, +a6m:function a6m(a){this.a=a}, +aSw:function aSw(a){this.a=null +this.b=a +this.c=null}, +c8r:function c8r(a){this.a=a}, +Hd:function Hd(a,b){this.c=a +this.a=b}, +aKM:function aKM(a){var _=this +_.d=$ +_.e=!1 +_.a=null +_.b=a +_.c=null}, +bRv:function bRv(a){this.a=a}, +bRu:function bRu(a){this.a=a}, +a6s:function a6s(a,b,c){this.c=a +this.d=b +this.a=c}, +aSy:function aSy(a,b){var _=this +_.eW$=a +_.a=null +_.b=b +_.c=null}, +c8s:function c8s(a,b){this.a=a +this.b=b}, +a6r:function a6r(a,b){this.c=a +this.a=b}, +aSx:function aSx(a,b){var _=this +_.eW$=a +_.a=null +_.b=b +_.c=null}, +b00:function b00(){}, +b01:function b01(){}, +KC:function KC(a){this.a=a}, +aSA:function aSA(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +a6t:function a6t(a,b){this.c=a +this.a=b}, +aSz:function aSz(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +c8t:function c8t(){}, +c8x:function c8x(){}, +c8w:function c8w(){}, +c8z:function c8z(a){this.a=a}, +c8u:function c8u(){}, +c8y:function c8y(a){this.a=a}, +c8v:function c8v(a,b){this.a=a +this.b=b}, +En:function En(a,b,c){this.c=a +this.d=b +this.a=c}, +aSB:function aSB(a,b){var _=this +_.d=1 +_.e=!1 +_.f=$ +_.eW$=a +_.a=null +_.b=b +_.c=null}, +c8C:function c8C(a){this.a=a}, +c8B:function c8B(a){this.a=a}, +c8A:function c8A(a){this.a=a}, +c8D:function c8D(a){this.a=a}, +c8E:function c8E(a){this.a=a}, +ala:function ala(){}, +dmO(a){var s,r,q,p,o,n +for(s=$.d_s().kt(0,a),s=new A.oO(s.a,s.b,s.c),r=t.Qz,q=a;s.t();){p=s.d +o=J.cw((p==null?r.a(p):p).b[0]) +q=A.cj(q,o,''+o+"")}for(s=$.d_o().kt(0,a),s=new A.oO(s.a,s.b,s.c);s.t();){n=s.d +o=J.cw((n==null?r.a(n):n).b[0]) +q=A.cj(q,o,''+o+"")}return q}, +an8:function an8(a,b){this.c=a +this.a=b}, +Hi:function Hi(a,b,c){this.c=a +this.d=b +this.a=c}, +acJ:function acJ(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +aAh:function aAh(a,b){this.c=a +this.a=b}, +bv3:function bv3(a,b){this.a=a +this.b=b}, +LT:function LT(a){this.a=a}, +aVX:function aVX(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cdV:function cdV(a){this.a=a}, +cdU:function cdU(a){this.a=a}, +cdT:function cdT(a){this.a=a}, +cdY:function cdY(){}, +cdX:function cdX(a){this.a=a}, +cdW:function cdW(a){this.a=a}, +bDz:function bDz(a){this.a=a +this.c=this.b=$}, +bUj:function bUj(a){this.a=a}, +bZq:function bZq(a){this.a=a +this.b=$}, +aov:function aov(a){this.a=a}, +b87:function b87(a){this.a=a}, +b88:function b88(a){this.a=a}, +apY(a,b){return new A.apX(a,b,null)}, +apX:function apX(a,b,c){this.c=a +this.e=b +this.a=c}, +cyV(a,b,c){return new A.a9l(a,b,c,null)}, +a9l:function a9l(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +aWn:function aWn(a){var _=this +_.f=_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +ceG:function ceG(a){this.a=a}, +ceE:function ceE(a,b){this.a=a +this.b=b}, +ceF:function ceF(){}, +ceD:function ceD(a){this.a=a}, +ceB:function ceB(a,b){this.a=a +this.b=b}, +ceC:function ceC(){}, +jR:function jR(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a8R:function a8R(){}, +acl:function acl(a){this.a=a}, +akv:function akv(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +cns:function cns(){}, +cnq:function cnq(a){this.a=a}, +cnr:function cnr(a){this.a=a}, +cnp:function cnp(a){this.a=a}, +cno:function cno(a,b){this.a=a +this.b=b}, +Nl:function Nl(a){this.a=a}, +b_7:function b_7(a){this.a=null +this.b=a +this.c=null}, +cnt:function cnt(a){this.a=a}, +bQ3(a,b){var s,r=a.gGO() +if(r==null)r=A.a([],t.HV) +s=J.cz(r) +if(s.ef(r,new A.bQ4(b)))return +s.eu(r,0,b) +a.sGO(r)}, +bQ2:function bQ2(){}, +bQ4:function bQ4(a){this.a=a}, +a11:function a11(a,b,c){this.c=a +this.d=b +this.a=c}, +baI:function baI(a,b,c){this.a=a +this.b=b +this.c=c}, +baJ:function baJ(a,b){this.a=a +this.b=b}, +LR:function LR(a,b){this.c=a +this.a=b}, +aVU:function aVU(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cdQ:function cdQ(){}, +cdP:function cdP(a,b){this.a=a +this.b=b}, +cdN:function cdN(a){this.a=a}, +cdO:function cdO(a,b){this.a=a +this.b=b}, +cdM:function cdM(a){this.a=a}, +cNQ(a){var s=null,r=$.ae() +return new A.bPY(a,s,s,s,s,B.qj,new A.eZ(B.bU,r),A.ms(B.bO),new A.bm(s,r,t.M8))}, +bPY:function bPY(a,b,c,d,e,f,g,h,i){var _=this +_.as=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=null +_.x=g +_.y=h +_.z=i +_.Q=null}, +bPZ:function bPZ(a){this.a=a}, +bQ_:function bQ_(a){this.a=a}, +bQ1:function bQ1(a){this.a=a}, +bQ0:function bQ0(a){this.a=a}, +oN:function oN(a,b){this.a=a +this.b=b}, +acn:function acn(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +Nm:function Nm(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}, +aco:function aco(){}, +acp:function acp(){}, +WK:function WK(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +act:function act(a,b){this.a=a +this.b=b}, +acr:function acr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +acq:function acq(){}, +acu:function acu(){}, +acs:function acs(){}, +acm:function acm(a){this.a=a}, +b_8:function b_8(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +No:function No(a){this.a=a}, +b_a:function b_a(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +cny:function cny(){}, +cnC:function cnC(){}, +cnB:function cnB(){}, +cnE:function cnE(){}, +cnz:function cnz(){}, +cnD:function cnD(a){this.a=a}, +cnA:function cnA(a,b){this.a=a +this.b=b}, +G0:function G0(a,b,c){this.c=a +this.d=b +this.a=c}, +b_9:function b_9(a,b){var _=this +_.d=!1 +_.e=$ +_.eW$=a +_.a=null +_.b=b +_.c=null}, +cnx:function cnx(a){this.a=a}, +cnu:function cnu(a){this.a=a}, +cnv:function cnv(a){this.a=a}, +cnw:function cnw(a){this.a=a}, +alG:function alG(){}, +Np:function Np(a,b){this.c=a +this.a=b}, +b_b:function b_b(a,b){var _=this +_.d=$ +_.e=a +_.f=!1 +_.a=null +_.b=b +_.c=null}, +cnI:function cnI(a){this.a=a}, +cnJ:function cnJ(a){this.a=a}, +cnF:function cnF(a){this.a=a}, +cnG:function cnG(){}, +cnH:function cnH(a){this.a=a}, +Nq:function Nq(a){this.a=a}, +b_c:function b_c(a,b,c){var _=this +_.d=null +_.e=a +_.f=b +_.r=null +_.w=!1 +_.a=null +_.b=c +_.c=null}, +cnL:function cnL(a){this.a=a}, +cnM:function cnM(a){this.a=a}, +cnK:function cnK(a){this.a=a}, +WJ:function WJ(a,b){this.c=a +this.a=b}, +bQ6:function bQ6(){}, +Nn:function Nn(a,b){this.c=a +this.a=b}, +WI:function WI(a,b){this.c=a +this.a=b}, +bQ5:function bQ5(a){this.a=a}, +WL:function WL(a,b,c){this.c=a +this.d=b +this.a=c}, +bQ7:function bQ7(a,b){this.a=a +this.b=b}, +b5x:function b5x(){}, +b9m:function b9m(){}, +boP:function boP(){}, +bx6:function bx6(a){this.a=a}, +bx7:function bx7(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +ddO(a){if(B.c.p(a,"\u9a8c\u8bc1\u7801"))return B.agj +else if(B.c.p(a,"\u51bb\u7ed3"))return B.agi +else if(B.c.p(a,"\u9501\u5b9a"))return B.agg +return B.Co}, +cR9(a){var s,r +for(s=0,r="";s"))}, +a6k:function a6k(a){var _=this +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +a3V:function a3V(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j +_.ax=_.at=_.as=_.Q=$ +_.$ti=k}, +blr:function blr(a){this.a=a}, +bls:function bls(a){this.a=a}, +blt:function blt(a){this.a=a}, +blu:function blu(a){this.a=a}, +blv:function blv(a){this.a=a}, +aSl:function aSl(){}, +cNV(a){return A.a1(["path",a.a,"opacity",a.b,"repeat",a.c,"antialias",a.d],t.N,t.z)}, +mS:function mS(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +dh6(a){return A.a1(["showTeachers",a.a,"grayOutTakenLessons",a.b,"harmonizeWithThemeColor",a.c,"alpha",a.d],t.N,t.z)}, +kL:function kL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +WM:function WM(a){this.a=a}, +Wc:function Wc(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 +_.y=i +_.z=j}, +d4I(a){if(a==null)return null +else if(0<=a&&a<2)return B.vm[a] +return null}, +jg:function jg(a,b){this.a=a +this.b=b}, +dfp(a){var s=a.b +if(B.c.p(s,"\u81ea\u4fee")||B.c.p(s,"\u514d\u542c"))return!0 +return!1}, +ddx(a){var s,r,q,p,o,n,m,l,k=A.a([],t.h6),j=a.r,i=J.ao(j) +if(i.gad(j))k.push(B.a5A) +for(j=J.au(i.gbm(j));j.t();){i=j.gK(j) +if(!i.Q&&A.dfp(i))k.push(new A.MO(i.a))}if($.eN.I().gnS(0)){s=A.a([],t.fl) +for(j=A.aEB(a).b,r=0;r<20;++r)for(i=j[r].c,q=0;q<7;++q)for(p=i[q].c,o=0;o=2){m=A.X(n).h("O<1,h>") +l=new A.wW(A.R(new A.O(n,new A.bGb(),m),!0,m.h("aa.E"))) +if(B.b.lF(s,new A.bGc(l)))s.push(l)}}B.b.L(k,s)}return k}, +abh:function abh(){}, +MO:function MO(a){this.a=a}, +wW:function wW(a){this.a=a}, +bGb:function bGb(){}, +bGc:function bGc(a){this.a=a}, +fC(a,b,c){var s=A.cd(a,b,c,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +return new A.f9(B.bI,null,new A.am(s,!1))}, +VY(a){switch(B.FE[a.iU()].a){case 0:return new A.f9(B.cw,new A.fD(a.iU(),B.cf[B.d.M(a.iU(),7)]),null) +case 1:return new A.f9(B.bI,null,A.cFu(a,2000))}}, +WO(a){var s,r,q=null,p=J.ao(a),o=A.Zt(B.Qh,p.i(a,"mode"),q) +if(p.i(a,"pos")==null)s=q +else{s=t.a.a(p.i(a,"pos")) +r=J.ao(s) +s=new A.fD(B.e.au(A.e6(r.i(s,"weekIndex"))),A.Zt(B.aXF,r.i(s,"weekday"),q))}return new A.f9(o,s,p.i(a,"date")==null?q:A.ase(A.ax(p.i(a,"date"))))}, +dhb(a){var s,r,q=B.Qh.i(0,a.a) +q.toString +s=A.a1(["mode",q],t.N,t.z) +q=new A.bQn(s) +q.$2("pos",a.b) +r=a.c +q.$2("date",r==null?null:r.wX()) +return s}, +lP:function lP(a,b){this.a=a +this.b=b}, +f9:function f9(a,b,c){this.a=a +this.b=b +this.c=c}, +bQn:function bQn(a){this.a=a}, +dfw(a){var s,r,q,p +if(J.q(J.aS(a,"type"),"patchSet"))try{q=A.dhc(a) +return q}catch(p){s=A.ag(p) +r=A.aD(p) +A.ll(s,r) +return new A.pD(a)}else return A.cN3(a)}, +czr(a){var s +a.iU() +s=a.iU() +if(s===255)return A.dfx(a) +else if(0<=s&&s<5)return B.aJc[s].e.$1(a) +return B.y1}, +cN3(a){var s,r,q,p,o,n=J.ao(a),m=A.Zt(B.aVA,n.i(a,"type"),B.jT) +try{s=null +switch(m){case B.jT:s=new A.pD(a) +break +case B.m4:s=A.dhd(a) +break +case B.m2:p=t.a +s=new A.nt(A.WO(p.a(n.i(a,"a"))),A.WO(p.a(n.i(a,"b")))) +break +case B.m5:p=t.a +s=new A.mE(A.WO(p.a(n.i(a,"source"))),A.WO(p.a(n.i(a,"target")))) +break +case B.m3:p=t.a +s=new A.ns(A.WO(p.a(n.i(a,"source"))),A.WO(p.a(n.i(a,"target")))) +break}s=s +return s}catch(o){r=A.ag(o) +q=A.aD(o) +A.ll(r,q) +return B.y1}}, +dfx(a){var s,r,q=a.aNv(),p=a.iU(),o=A.a([],t._t) +for(s=t.qC,r=0;r=0)if(1<=q)if(q<=20)s=!0 +else s=!1 +else s=!1 +else s=!1 +if(s)return new A.fD(q-1,B.cf[B.d.M(p+1-1,7)]) +else return B.btL}, +cOc(a){var s=A.cd(A.b7(a),A.bp(a),A.cL(a),0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +return new A.am(s,!1)}, +fD:function fD(a,b){this.a=a +this.b=b}, +aK7:function aK7(a){this.a=a}, +dns(a){var s +if(a==null)s=null +else{s=J.dP(a,new A.cq1(),t.kO).r2(0,new A.cq2()) +s=A.R(s,!0,s.$ti.h("B.E"))}return s==null?B.oG:s}, +ddA(a){return A.cNW(a)}, +ddB(a){var s,r,q,p,o,n,m,l,k,j +a.iU() +s=a.r1(B.eW) +r=a.r1(B.eW) +q=a.iU() +p=B.aOv[a.iU()] +o=a.iU() +n=A.cFu(a,2000) +m=A.brh(A.wj(a.iU(),new A.bGl(a),t.l1),t.N,t.Ct) +l=a.iU() +k=J.d1(l,t.kO) +for(j=0;j")),l.c=n.e,m=m.c,k=o.b,n=o.a,j=p.y;l.t();){i=l.d +if(i==null)i=m.a(i) +if(0<=i&&i<20){h=a[i].c[j] +g=A.a([],q) +f=new A.a9I(p,g) +for(i=h.c,e=k;e<=n;++e){d=new A.i3(f,e) +g.push(d) +if(0<=e&&e"),j=o!=null,i=l.h("a2.E"),h=0;h<20;++h){g=c7[h] +for(f=g.c,e=""+g.b,d=0;d<7;++d){c=f[d] +for(b=new A.x4(c.c,l),b=new A.bj(b,b.gA(0),k),a=""+c.b;b.t();){a0=b.d +for(a0=(a0==null?i.a(a0):a0).b,a1=a0.length,a2=0;a2"))}, +MR:function MR(a,b,c){this.c=a +this.d=b +this.a=c}, +bM6:function bM6(){}, +bM5:function bM5(a){this.a=a}, +wX:function wX(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +bM7:function bM7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +csN:function csN(){}, +aGx:function aGx(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.x=d +_.a=e}, +bM4:function bM4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +abl:function abl(a,b,c,d){var _=this +_.d=a +_.r=b +_.a=c +_.$ti=d}, +bMv:function bMv(a,b,c){this.a=a +this.b=b +this.c=c}, +bMu:function bMu(a,b){this.a=a +this.b=b}, +N3:function N3(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}, +bMD:function bMD(a,b,c){this.a=a +this.b=b +this.c=c}, +To:function To(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +ZH:function ZH(a,b,c){this.c=a +this.d=b +this.a=c}, +b3p:function b3p(a,b){this.a=a +this.b=b}, +b3o:function b3o(a,b,c){this.a=a +this.b=b +this.c=c}, +N7:function N7(a,b,c){this.c=a +this.d=b +this.a=c}, +ajO:function ajO(a){var _=this +_.w=_.r=_.f=_.e=_.d=$ +_.x=!1 +_.a=null +_.b=a +_.c=null}, +cm0:function cm0(a){this.a=a}, +cm_:function cm_(a,b){this.a=a +this.b=b}, +cm3:function cm3(a){this.a=a}, +cm2:function cm2(a,b){this.a=a +this.b=b}, +cm4:function cm4(a){this.a=a}, +cm1:function cm1(a,b){this.a=a +this.b=b}, +clY:function clY(a){this.a=a}, +clX:function clX(a,b){this.a=a +this.b=b}, +clZ:function clZ(a){this.a=a}, +clW:function clW(a,b){this.a=a +this.b=b}, +FG(a,b,c){return new A.AB(b,c,a,null)}, +abn:function abn(a,b,c){this.a=a +this.b=b +this.c=c}, +abm:function abm(a,b,c){this.f=a +this.b=b +this.a=c}, +AB:function AB(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d}, +abo:function abo(a,b,c){var _=this +_.w=a +_.x=b +_.d=$ +_.a=null +_.b=c +_.c=null}, +bMV:function bMV(a){this.a=a}, +bQr:function bQr(a){this.a=a}, +cN1(a,b){return new A.aGu(a,null)}, +aGu:function aGu(a,b){this.c=a +this.a=b}, +aYp:function aYp(a,b){this.c=a +this.a=b}, +abd:function abd(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +bLJ:function bLJ(a){this.a=a}, +FD:function FD(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +bM3:function bM3(a,b){this.a=a +this.b=b}, +bM2:function bM2(){}, +a15:function a15(a,b,c){this.c=a +this.d=b +this.a=c}, +baY:function baY(){}, +a1w:function a1w(a,b,c){this.c=a +this.d=b +this.a=c}, +arZ:function arZ(a){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null}, +bbq:function bbq(a){this.a=a}, +bbp:function bbp(a){this.a=a}, +bbr:function bbr(a){this.a=a}, +bbn:function bbn(a){this.a=a}, +bbm:function bbm(a){this.a=a}, +bbo:function bbo(a){this.a=a}, +MV:function MV(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +aYv:function aYv(a,b){var _=this +_.d=null +_.eW$=a +_.a=null +_.b=b +_.c=null}, +ckg:function ckg(){}, +Pf:function Pf(a,b){this.c=a +this.a=b}, +a4T:function a4T(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d}, +boK:function boK(a,b){this.a=a +this.b=b}, +boJ:function boJ(a){this.a=a}, +a0F:function a0F(a,b,c){this.c=a +this.d=b +this.a=c}, +awS:function awS(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +ai4:function ai4(a,b){this.a=a +this.b=b}, +c3o:function c3o(a,b,c){this.a=a +this.b=b +this.c=c}, +atj:function atj(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +b1_:function b1_(){}, +W_:function W_(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bMl:function bMl(a,b,c){this.a=a +this.b=b +this.c=c}, +bMk:function bMk(a,b){this.a=a +this.b=b}, +avc:function avc(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a3S:function a3S(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +atl:function atl(a){this.a=a}, +ac4:function ac4(a,b,c){this.c=a +this.d=b +this.a=c}, +aHO:function aHO(a,b){var _=this +_.d=$ +_.e=a +_.f=$ +_.a=null +_.b=b +_.c=null}, +bOT:function bOT(a){this.a=a}, +bOS:function bOS(a){this.a=a}, +bOU:function bOU(a){this.a=a}, +bOR:function bOR(a){this.a=a}, +MW:function MW(a,b,c){this.c=a +this.d=b +this.a=c}, +aYw:function aYw(a,b){var _=this +_.d=null +_.eW$=a +_.a=null +_.b=b +_.c=null}, +ckh:function ckh(a,b){this.a=a +this.b=b}, +cki:function cki(a,b){this.a=a +this.b=b}, +abk:function abk(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +bMn:function bMn(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aw7:function aw7(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.a=e}, +bnI:function bnI(a,b,c){this.a=a +this.b=b +this.c=c}, +bnH:function bnH(a,b,c){this.a=a +this.b=b +this.c=c}, +bnG:function bnG(a,b){this.a=a +this.b=b}, +a4x:function a4x(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aft:function aft(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +c3_:function c3_(a){this.a=a}, +c2Z:function c2Z(a){this.a=a}, +c30:function c30(a,b){this.a=a +this.b=b}, +c2Y:function c2Y(a){this.a=a}, +HY:function HY(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +Fp:function Fp(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +as4:function as4(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aGK:function aGK(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +b10:function b10(){}, +cES(){return new A.a_k($.cUy())}, +a_k:function a_k(a){var _=this +_.a=0 +_.b=a +_.d=_.c=0 +_.e=!1}, +b4f:function b4f(a){this.a=a}, +bhm:function bhm(a,b){this.a=a +this.b=b}, +a07:function a07(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +a08(a){var s=new A.pY(a) +s.b=A.fe(a.buffer,0,null) +return s}, +pY:function pY(a){this.a=a +this.b=$ +this.c=0}, +b7s:function b7s(a){this.a=$ +this.b=a +this.c=0}, +d9j(a,b,c,d){J.cEF(a,new A.bpc(A.b9(d),b,c)) +return a}, +d9k(a,b){var s +if(b<0){s=J.ao(a) +if(Math.abs(b)>s.gA(a))throw A.d(A.aM("List index out of range: "+b,null)) +return s.i(a,s.gA(a)+b)}else return J.aS(a,b)}, +bpc:function bpc(a,b,c){this.a=a +this.b=b +this.c=c}, +bOM(a,b){var s=0,r=A.p(t.Ax),q,p,o +var $async$bOM=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=J +s=3 +return A.i(a.abN(b),$async$bOM) +case 3:p=o.dP(d,new A.bON(b),t.oR) +q=A.R(p,!0,A.z(p).h("aa.E")) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bOM,r)}, +bON:function bON(a){this.a=a}, +drO(a,b){var s=null +return A.mk("application/x-www-form-urlencoded",s,!1,a,s,s,s,s,s,s,s,s,s,b,s,new A.crP())}, +am6(a,b,c,d){var s=0,r=A.p(t.k8),q,p,o,n,m,l +var $async$am6=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:c.push(b) +if(b.c===302){p=b.e.b +o=B.c.du("location") +if(p.i(0,o)!=null){p=p.i(0,o) +p.toString +p=J.iL(p)}else p=!1}else p=!1 +s=p?3:5 +break +case 3:p=b.e.b.i(0,B.c.du("location")) +p.toString +n=J.aS(p,0) +if(n.length===0){q=b +s=1 +break}if(!A.di(n,0,null).gabm()){p=b.b.gfh() +n=p.gCP(p)+"/"+n}p=b.b.r +p===$&&A.b() +m=A +l=a +s=6 +return A.i(a.a_n(0,n,A.drO(d,p),t.z),$async$am6) +case 6:q=m.am6(l,f,c,d) +s=1 +break +s=4 +break +case 5:q=b +s=1 +break +case 4:case 1:return A.n(q,r)}}) +return A.o($async$am6,r)}, +crP:function crP(){}, +dU(a,b,c){var s=null,r=a.aeq(0,b,s) +if(r==null)return s +if(!c.b(r)){$.d_h().aBX(B.EI,"[Box "+a.a+"] "+A.r(b)+" is in "+J.az(r).k(0)+" but "+A.c6(c).k(0)+" is expected.",s,s,s) +return s}return r}, +ds(a,b,c){var s=0,r=A.p(t.H) +var $async$ds=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=2 +return A.i(a.aE5(A.a1([b,c],t.z,a.$ti.c)),$async$ds) +case 2:return A.n(null,r)}}) +return A.o($async$ds,r)}, +cFn(a,b,c,d,e){var s=new A.m3(b,c,d,new A.iz(e.h("iz>")),a,e.h("m3<0>")) +b.a3(0,s.gxN()) +return s}, +pX(a,b,c,d,e){return A.Vg(new A.b6T(c,a,b,d,e),e.h("m3<0>"),e.h("0?"))}, +cvt(a,b,c,d){return A.Vg(new A.b6Q(null,a,b,c,null,d),d.h("vt<0>"),d)}, +cFp(a,b,c,d,e,f){return B.AH.$3$1(new A.b6N(c,a,b,d,e,f),e.h("m3<0>"),e.h("0?"),f)}, +d2j(a,b,c){return B.AH.$3$1(new A.b6K(a,b,c),t.cb,t.y,c)}, +m3:function m3(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.x=c +_.a=d +_.e=_.c=!0 +_.f=e +_.$ti=f}, +vt:function vt(a,b,c,d,e,f,g){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.a=e +_.e=_.c=!0 +_.f=f +_.$ti=g}, +C7:function C7(a,b,c,d){var _=this +_.r=a +_.w=b +_.a=c +_.e=_.c=!0 +_.f=d}, +b6T:function b6T(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b6R:function b6R(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6S:function b6S(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6Q:function b6Q(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b6O:function b6O(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6P:function b6P(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6N:function b6N(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b6L:function b6L(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6M:function b6M(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}, +cxl:function cxl(a){this.a=a}, +ax3(a,b,c,d){return A.Vg(new A.bpe(b,a,c,d),d.h("u3<0>"),d)}, +u3:function u3(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.x=c +_.a=d +_.e=_.c=!0 +_.f=e +_.$ti=f}, +bpe:function bpe(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +mq:function mq(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +byo:function byo(a,b){this.a=a +this.b=b}, +dvk(a,b){var s=A.MM(a,b) +A.d3(B.w,new A.ctu(b,s)) +return s}, +ctu:function ctu(a,b){this.a=a +this.b=b}, +Hz:function Hz(a,b){this.c=a +this.a=b}, +aLQ:function aLQ(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +bTU:function bTU(a,b){this.a=a +this.b=b}, +bTV:function bTV(a){this.a=a}, +bTW:function bTW(a,b){this.a=a +this.b=b}, +bTT:function bTT(a){this.a=a}, +bC8(a,b){return new A.aDz(a,b,null)}, +dnH(a,b){var s +if(a instanceof A.eR){s=a.a +return new A.eR(s.bu(b),a.b.bu(b),s.bu(b),a.d.bu(b))}else return a}, +aDz:function aDz(a,b,c){this.c=a +this.d=b +this.a=c}, +bC9:function bC9(a,b){this.a=a +this.b=b}, +bCb:function bCb(a){this.a=a}, +bCa:function bCa(a){this.a=a}, +a8x:function a8x(a,b,c,d,e,f,g,h){var _=this +_.p2=a +_.p3=b +_.azu$=c +_.azt$=d +_.azs$=e +_.azr$=f +_.a=g +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=null +_.Cc$=h}, +af9:function af9(a,b){this.a=a +this.b=b}, +a4a:function a4a(a,b){this.c=a +this.a=b}, +aQ9:function aQ9(a,b){var _=this +_.d=a +_.a=_.e=null +_.b=b +_.c=null}, +c27:function c27(a){this.a=a}, +c28:function c28(a){this.a=a}, +c29:function c29(a){this.a=a}, +c2a:function c2a(a,b){this.a=a +this.b=b}, +c2b:function c2b(a){this.a=a}, +c2c:function c2c(a){this.a=a}, +c26:function c26(){}, +c25:function c25(a){this.a=a}, +RC:function RC(a,b,c){this.c=a +this.d=b +this.a=c}, +cK8(a,b){return new A.azN(a,b,null)}, +azN:function azN(a,b,c){this.c=a +this.e=b +this.a=c}, +btp:function btp(a,b,c){this.a=a +this.b=b +this.c=c}, +bto:function bto(a,b){this.a=a +this.b=b}, +Ra:function Ra(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +bju:function bju(a){this.a=a}, +bjv:function bjv(a){this.a=a}, +aAc:function aAc(a,b){this.c=a +this.a=b}, +a6F:function a6F(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.z=f +_.a=g}, +aSS:function aSS(a,b){var _=this +_.d=$ +_.e=a +_.a=null +_.b=b +_.c=null}, +c9i:function c9i(a,b,c){this.a=a +this.b=b +this.c=c}, +c9e:function c9e(a){this.a=a}, +c9g:function c9g(){}, +c9f:function c9f(a){this.a=a}, +c9d:function c9d(a){this.a=a}, +c9c:function c9c(a){this.a=a}, +c9h:function c9h(a){this.a=a}, +aiF:function aiF(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aSR:function aSR(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +c9b:function c9b(a){this.a=a}, +bw8:function bw8(){}, +aEI:function aEI(a,b,c){this.a=a +this.b=b +this.c=c}, +aw5:function aw5(a,b,c){this.a=a +this.b=b +this.c=c}, +a4o:function a4o(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 +_.as=j +_.a=k}, +aQh:function aQh(a,b){var _=this +_.d=$ +_.e=a +_.a=null +_.b=b +_.c=null}, +cNL(a,b,c,d,e,f){return new A.Nk(e,c,f,b,d,a,null)}, +Nk:function Nk(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.f=c +_.Q=d +_.cx=e +_.cy=f +_.a=g}, +akf:function akf(a){var _=this +_.e=_.d=$ +_.f=0 +_.a=null +_.b=a +_.c=null}, +cmZ:function cmZ(a){this.a=a}, +cn1:function cn1(a){this.a=a}, +cn_:function cn_(a){this.a=a}, +cn0:function cn0(a){this.a=a}, +cmY:function cmY(a,b){this.a=a +this.b=b}, +azR:function azR(a,b,c){this.e=a +this.c=b +this.a=c}, +Eg:function Eg(a,b,c){var _=this +_.e=_.d=_.c=$ +_.f=null +_.dJ$=a +_.a7$=b +_.a=c}, +aCX:function aCX(a,b,c,d,e){var _=this +_.be=a +_.cT$=b +_.Y$=c +_.d7$=d +_.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=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bB7:function bB7(){}, +aS_:function aS_(){}, +aV0:function aV0(){}, +aV1:function aV1(){}, +a8j:function a8j(a,b){var _=this +_.dr=_.eX=$ +_.iQ=_.fA=_.dQ=null +_.eT=0 +_.k1$=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}, +bBr:function bBr(a){this.a=a}, +aDf:function aDf(a,b){var _=this +_.k1$=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}, +a9O:function a9O(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aWN:function aWN(a,b,c){var _=this +_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +aWM:function aWM(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +alz:function alz(){}, +aEW:function aEW(a,b){this.c=a +this.a=b}, +aF6(a,b){var s=new A.e0(a),r=A.a([0],t.t) +r=new A.aF5(b,r,new Uint32Array(A.f1(s.eO(s)))) +r.ahX(s,b) +return r}, +ddL(a,b){var s=A.a([0],t.t) +s=new A.aF5(b,s,new Uint32Array(A.f1(J.ra(a)))) +s.ahX(a,b) +return s}, +eF(a,b){if(b<0)A.C(A.b8("Offset may not be negative, was "+b+".")) +else if(b>a.c.length)A.C(A.b8("Offset "+b+u.D+a.gA(0)+".")) +return new A.lw(a,b)}, +hP(a,b,c){if(ca.c.length)A.C(A.b8("End "+c+u.D+a.gA(0)+".")) +else if(b<0)A.C(A.b8("Start may not be negative, was "+b+".")) +return new A.i8(a,b,c)}, +aF5:function aF5(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +lw:function lw(a,b){this.a=a +this.b=b}, +i8:function i8(a,b,c){this.a=a +this.b=b +this.c=c}, +d7V(a,b){var s=A.d7W(A.a([A.di7(a,!0)],t._Y)),r=new A.blm(b).$0(),q=B.d.k(B.b.gP(s).b+1),p=A.d7X(s)?0:3,o=A.X(s) +return new A.bl2(s,r,null,1+Math.max(q.length,p),new A.O(s,new A.bl4(),o.h("O<1,h>")).i6(0,B.kj),!A.dt6(new A.O(s,new A.bl5(),o.h("O<1,S?>"))),new A.bu(""))}, +d7X(a){var s,r,q +for(s=0;s").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +if(q==null)q=r.a(q) +J.OH(q,new A.bl8())}s=p.gep(p) +r=A.z(s).h("eE") +return A.R(new A.eE(s,new A.bl9(),r),!0,r.h("B.E"))}, +di7(a,b){var s=new A.c1O(a).$0() +return new A.nA(s,!0,null)}, +di9(a){var s,r,q,p,o,n,m=a.gce(a) +if(!B.c.p(m,"\r\n"))return a +s=a.gdw(a) +r=s.gfl(s) +for(s=m.length-1,q=0;q")),A.dww(),r.h("fW<1,fM>")),t.f3))}if(!B.c.p(a,q))return new A.m5(A.hi(A.a([A.cN9(a)],t.ch),t.f3)) +return new A.m5(A.hi(new A.O(A.a(a.split(q),t.s),A.dwv(),t.B5),t.f3))}, +m5:function m5(a){this.a=a}, +b8Q:function b8Q(a){this.a=a}, +b8R:function b8R(){}, +b8S:function b8S(a,b){this.a=a +this.b=b}, +b8T:function b8T(a){this.a=a}, +b8Y:function b8Y(){}, +b8X:function b8X(){}, +b8V:function b8V(){}, +b8W:function b8W(a){this.a=a}, +b8U:function b8U(a){this.a=a}, +d7r(a){return A.cIu(a)}, +cIu(a){return A.aur(a,new A.bjk(a))}, +d7q(a){return A.d7n(a)}, +d7n(a){return A.aur(a,new A.bji(a))}, +d7k(a){return A.aur(a,new A.bjf(a))}, +d7o(a){return A.d7l(a)}, +d7l(a){return A.aur(a,new A.bjg(a))}, +d7p(a){return A.d7m(a)}, +d7m(a){return A.aur(a,new A.bjh(a))}, +cx0(a){if(B.c.p(a,$.cW8()))return A.di(a,0,null) +else if(B.c.p(a,$.cW9()))return A.cPf(a,!0) +else if(B.c.aC(a,"/"))return A.cPf(a,!1) +if(B.c.p(a,"\\"))return $.d0G().aFz(a) +return A.di(a,0,null)}, +aur(a,b){var s,r,q=null +try{s=b.$0() +return s}catch(r){if(t.bE.b(A.ag(r)))return new A.uR(A.fi(q,q,"unparsed",q,q,q,q,q),a) +else throw r}}, +fU:function fU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bjk:function bjk(a){this.a=a}, +bji:function bji(a){this.a=a}, +bjj:function bjj(a){this.a=a}, +bjf:function bjf(a){this.a=a}, +bjg:function bjg(a){this.a=a}, +bjh:function bjh(a){this.a=a}, +a4R:function a4R(a){this.a=a +this.b=$}, +JU:function JU(a){this.a=a +this.b=$}, +boH:function boH(a,b,c){this.a=a +this.b=b +this.c=c}, +dfV(){return new A.JU(new A.bNi(A.dfW(A.pw()),0))}, +dfW(a){if(t.f3.b(a))return a +if(t.Uc.b(a))return a.HS() +return new A.JU(new A.bNj(a))}, +cN9(a){var s,r,q +try{if(a.length===0){r=A.bNd(A.a([],t.sR),null) +return r}if(B.c.p(a,$.d0e())){r=A.dfU(a) +return r}if(B.c.p(a,"\tat ")){r=A.dfT(a) +return r}if(B.c.p(a,$.cZH())||B.c.p(a,$.cZF())){r=A.dfS(a) +return r}if(B.c.p(a,u.C)){r=A.cFE(a).HS() +return r}if(B.c.p(a,$.cZL())){r=A.cN7(a) +return r}r=A.cN8(a) +return r}catch(q){r=A.ag(q) +if(t.bE.b(r)){s=r +throw A.d(A.bM(J.amz(s)+"\nStack trace:\n"+a,null,null))}else throw q}}, +dfY(a){return A.cN8(a)}, +cN8(a){var s=A.hi(A.dfZ(a),t.OL) +return new A.fM(s,new A.xu(a))}, +dfZ(a){var s,r=B.c.du(a),q=$.cEm(),p=t.gD,o=new A.b1(A.a(A.cj(r,q,"").split("\n"),t.s),new A.bNk(),p) +if(!o.gaz(0).t())return A.a([],t.sR) +r=A.bKu(o,o.gA(0)-1,p.h("B.E")) +r=A.nb(r,A.dsr(),A.z(r).h("B.E"),t.OL) +s=A.R(r,!0,A.z(r).h("B.E")) +if(!J.cuZ(o.gP(0),".da"))B.b.B(s,A.cIu(o.gP(0))) +return s}, +dfU(a){var s=A.fB(A.a(a.split("\n"),t.s),1,null,t.N).aOJ(0,new A.bNh()),r=t.OL +r=A.hi(A.nb(s,A.cSD(),s.$ti.h("B.E"),r),r) +return new A.fM(r,new A.xu(a))}, +dfT(a){var s=A.hi(new A.fW(new A.b1(A.a(a.split("\n"),t.s),new A.bNg(),t.gD),A.cSD(),t.tN),t.OL) +return new A.fM(s,new A.xu(a))}, +dfS(a){var s=A.hi(new A.fW(new A.b1(A.a(B.c.du(a).split("\n"),t.s),new A.bNe(),t.gD),A.dsp(),t.tN),t.OL) +return new A.fM(s,new A.xu(a))}, +dfX(a){return A.cN7(a)}, +cN7(a){var s=a.length===0?A.a([],t.sR):new A.fW(new A.b1(A.a(B.c.du(a).split("\n"),t.s),new A.bNf(),t.gD),A.dsq(),t.tN) +s=A.hi(s,t.OL) +return new A.fM(s,new A.xu(a))}, +bNd(a,b){var s=A.hi(a,t.OL) +return new A.fM(s,new A.xu(b==null?"":b))}, +fM:function fM(a,b){this.a=a +this.b=b}, +bNi:function bNi(a,b){this.a=a +this.b=b}, +bNj:function bNj(a){this.a=a}, +bNk:function bNk(){}, +bNh:function bNh(){}, +bNg:function bNg(){}, +bNe:function bNe(){}, +bNf:function bNf(){}, +bNm:function bNm(){}, +bNl:function bNl(a){this.a=a}, +uR:function uR(a,b){this.a=a +this.w=b}, +aHn:function aHn(a){this.a=a}, +bO9:function bO9(a){this.a=a}, +bO8:function bO8(){}, +aFi:function aFi(a,b,c){this.a=a +this.b=b +this.c=c}, +hu:function hu(){}, +bHf:function bHf(a){this.a=a}, +oT:function oT(a,b){var _=this +_.a=a +_.op$=_.n5$=_.n4$=null +_.$ti=b}, +cJc(a,b,c){var s={},r=s.a=!1,q=B.b.ef(a,new A.bnS(s,b,c)) +return s.a?!q:r}, +d9F(a,b,c){var s,r,q,p +for(s=J.au(b),r=J.ao(a),q=J.ao(c);s.t();){p=s.gK(s) +if(!J.q(r.i(a,p),q.i(c,p)))return!1}return!0}, +bnS:function bnS(a,b,c){this.a=a +this.b=b +this.c=c}, +bfb:function bfb(a,b,c){var _=this +_.at=_.as=0 +_.f=a +_.a=b +_.b=c +_.c=0 +_.e=_.d=null}, +oQ:function oQ(a){this.b=a}, +cMo(a,b,c){return new A.aah(c,a,b)}, +aah:function aah(a,b,c){this.c=a +this.a=b +this.b=c}, +bGP:function bGP(){}, +dec(a,b,c){return new A.aag(null,a)}, +aag:function aag(a,b){var _=this +_.a=a +_.b=b +_.c=0 +_.e=_.d=null}, +cGw(a){var s=null +switch(a.a){case 0:return new A.asl(new A.c_(B.mV,s,s,s,A.a([new A.f5(0,B.bY,A.Y(B.e.aF(127.5),0,0,0),B.h,10)],t.sq),s,s,B.U),new A.c_(B.ey,s,A.P7(B.ky,1),A.ed(6),s,s,s,B.U),B.iK,new A.bbU(),new A.bbV(),new A.bbW()) +case 1:return new A.asl(new A.c_(A.Y(51,0,0,0),s,s,s,A.a([new A.f5(0,B.bY,A.Y(64,0,0,0),B.h,12)],t.sq),s,s,B.U),new A.c_(B.r,s,s,A.ed(6),s,s,s,B.U),B.iM,new A.bbX(),new A.bbY(),new A.bbZ())}}, +dlC(a){return B.b.ef(a.c,new A.cp5())}, +yv:function yv(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +asl:function asl(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bbU:function bbU(){}, +bbV:function bbV(){}, +bbW:function bbW(){}, +bbX:function bbX(){}, +bbY:function bbY(){}, +bbZ:function bbZ(){}, +bc_:function bc_(){}, +cp5:function cp5(){}, +av1:function av1(a,b){this.c=a +this.a=b}, +ahw:function ahw(a,b,c){var _=this +_.G=a +_.ac=null +_.k1$=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}, +cc4:function cc4(a,b){this.a=a +this.b=b}, +av0:function av0(a,b){this.c=a +this.a=b}, +Yj:function Yj(a,b){var _=this +_.G=null +_.k1$=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}, +Qo(a){var s,r=null +switch(a.a){case 1:return new A.asn(new A.bc0(),new A.c_(B.BV,r,r,r,r,r,r,B.U),new A.c_(r,r,r,A.ed(8),A.a([new A.f5(0,B.bY,A.Y(B.e.aF(76.5),0,0,0),B.h,12)],t.sq),r,r,B.U),new A.c_(A.Y(B.e.aF(127.5),255,255,255),r,r,r,r,r,r,B.U),new A.bc1(),new A.bc2(),B.iM,new A.bc3(),new A.bc4()) +case 0:s=A.ed(8) +return new A.asn(new A.bc5(),new A.c_(B.a8E,r,A.P7(A.Y(B.e.aF(25.5),255,255,255),1),s,r,r,r,B.U),new A.c_(r,r,r,A.ed(8),A.a([new A.f5(0,B.bY,A.Y(B.e.aF(127.5),0,0,0),B.h,12)],t.sq),r,r,B.U),new A.c_(A.Y(204,91,94,117),r,r,r,r,r,r,B.U),new A.bc6(),new A.bc7(),B.ta,new A.bc8(),new A.bc9())}}, +cAD(a){return B.b.ef(a.e,new A.cp3())}, +cOy(a,b,c,d,e,f,g){return new A.aRC(e,f,d,b,g,c,a,null)}, +Ed:function Ed(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +asn:function asn(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}, +bc0:function bc0(){}, +bc1:function bc1(){}, +bc2:function bc2(){}, +bc3:function bc3(){}, +bc4:function bc4(){}, +bc5:function bc5(){}, +bc6:function bc6(){}, +bc7:function bc7(){}, +bc8:function bc8(){}, +bc9:function bc9(){}, +bca:function bca(){this.b=!1}, +cp3:function cp3(){}, +aRz:function aRz(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +c6H:function c6H(a){this.a=a}, +aRy:function aRy(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +c6A:function c6A(a){this.a=a}, +c6z:function c6z(a){this.a=a}, +aRC:function aRC(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}, +Nt:function Nt(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +adD:function adD(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aMh:function aMh(a,b){var _=this +_.e=_.d=null +_.f=a +_.a=null +_.b=b +_.c=null}, +bVq:function bVq(a){this.a=a}, +bVj:function bVj(a){this.a=a}, +bVo:function bVo(a){this.a=a}, +bVn:function bVn(a,b){this.a=a +this.b=b}, +bVl:function bVl(a){this.a=a}, +bVm:function bVm(a){this.a=a}, +bVk:function bVk(a){this.a=a}, +bVp:function bVp(a){this.a=a}, +asx:function asx(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +bcr:function bcr(a,b){this.a=a +this.b=b}, +bcq:function bcq(){}, +bcp:function bcp(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bco:function bco(a){this.a=a}, +d3C(a,b){var s=$.cV1() +return new A.Q4(b,a,s,new A.bc_(),null)}, +dkW(a){return!0}, +SJ:function SJ(){}, +Q4:function Q4(a,b,c,d,e){var _=this +_.r=a +_.x=b +_.y=c +_.z=d +_.a=e}, +baR:function baR(a,b){this.a=a +this.b=b}, +cF9(a,b,c,d){return new A.anR(d,c,b,a,null)}, +b1w(){var s=0,r=A.p(t.H),q,p +var $async$b1w=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=!$.cQz?2:3 +break +case 2:$.cQz=!0 +s=4 +return A.i(A.brV(),$async$b1w) +case 4:q=b +p=$ +s=5 +return A.i(A.axb(),$async$b1w) +case 5:p.cT5=b +q.a=$.cCD() +case 3:return A.n(null,r)}}) +return A.o($async$b1w,r)}, +brT:function brT(a,b,c){this.a=a +this.b=b +this.c=c}, +anR:function anR(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +O2:function O2(a,b,c,d,e){var _=this +_.eK=a +_.iB=b +_.G=c +_.k1$=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}, +cP_(a){return new A.cfy(a)}, +a5S:function a5S(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}, +adE:function adE(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +bVA:function bVA(a,b,c){this.a=a +this.b=b +this.c=c}, +bVv:function bVv(a){this.a=a}, +bVw:function bVw(a,b,c){this.a=a +this.b=b +this.c=c}, +bVx:function bVx(a){this.a=a}, +bVu:function bVu(a,b){this.a=a +this.b=b}, +bVy:function bVy(a){this.a=a}, +bVz:function bVz(a){this.a=a}, +bVs:function bVs(a,b){this.a=a +this.b=b}, +bVr:function bVr(a){this.a=a}, +bVt:function bVt(a){this.a=a}, +aR9:function aR9(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +c4m:function c4m(){}, +c4n:function c4n(a,b){this.a=a +this.b=b}, +c4l:function c4l(a,b){this.a=a +this.b=b}, +cfy:function cfy(a){this.a=a}, +ast:function ast(a){this.a=a}, +yu:function yu(){}, +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}, +B7:function B7(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +ag4:function ag4(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.r=0 +_.a=_.w=null +_.b=d +_.c=null}, +c6k:function c6k(a){this.a=a}, +c6p:function c6p(a){this.a=a}, +c6l:function c6l(a){this.a=a}, +c6n:function c6n(a){this.a=a}, +c6m:function c6m(a){this.a=a}, +c6o:function c6o(a){this.a=a}, +c6t:function c6t(a){this.a=a}, +c6s:function c6s(a,b){this.a=a +this.b=b}, +c6u:function c6u(a,b){this.a=a +this.b=b}, +c6v:function c6v(a){this.a=a}, +c6w:function c6w(){}, +c6q:function c6q(a){this.a=a}, +c6r:function c6r(a){this.a=a}, +c6x:function c6x(){}, +aRJ:function aRJ(a,b,c){this.e=a +this.c=b +this.a=c}, +c8I:function c8I(a,b){this.a=a +this.b=b}, +ahG:function ahG(a,b){var _=this +_.aS=_.ac=null +_.k1$=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}, +ccb:function ccb(){}, +ccd:function ccd(){}, +ccc:function ccc(a){this.a=a}, +cQ8(a,b){return b.a>=a.a&&b.c<=a.c&&b.b>=a.b&&b.d<=a.d}, +cAF(a,b){var s=a.b,r=b.b +if(sr)return a.ba(0,0,r-s) +else return a}}, +cAE(a,b){var s=a.a,r=b.a +if(sr)return a.ba(0,r-s,0) +else return a}}, +cAe(a,b,c){var s,r,q +switch(c.a){case 0:s=b.a +r=b.b +return new A.W(s,r,s+a.a,r+a.b) +case 1:s=a.a +r=b.a-s +q=b.b +return new A.W(r,q,r+s,q+a.b)}}, +azt:function azt(a,b){this.a=a +this.b=b}, +ti:function ti(a,b,c){var _=this +_.y=_.x=_.w=_.r=_.f=_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +azr:function azr(a,b,c,d,e,f){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.b=e +_.a=f}, +azo:function azo(a,b,c){this.e=a +this.c=b +this.a=c}, +ahE:function ahE(a,b,c,d,e,f){var _=this +_.D=a +_.N=b +_.cT$=c +_.Y$=d +_.d7$=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}, +b0j:function b0j(){}, +b0l:function b0l(){}, +d3B(a,b,c,d,e,f,g){var s=new A.baP(e) +s.aUx(a,b,c,d,e,f,g) +return s}, +baP:function baP(a){this.a=a +this.b=$}, +baQ:function baQ(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +dhA(a,b){var s=null,r=t.A +r=new A.v1(b,a,new A.aR(s,r),new A.aR(s,r),A.hH(!0,s,!0,!0,s,s,!1)) +r.aVj(a,b) +return r}, +dlv(a){var s,r +if(a.ge2())return!0 +s=a.gjl() +if(s==null)r=null +else{s=s.fr +r=s.length!==0?B.b.gP(s):null}if(r!=null)s=r===a||B.b.p(r.gq6(),a) +else s=!1 +return s}, +a5N:function a5N(a,b){this.a=a +this.b=b}, +azw:function azw(a){this.a=a}, +SL:function SL(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}, +v1:function v1(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bU9:function bU9(a){this.a=a}, +Ec:function Ec(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=!0 +_.r=c +_.aas$=d +_.pl$=e +_.azw$=f +_.a=null +_.b=g +_.c=null}, +bso:function bso(a){this.a=a}, +bsd:function bsd(a){this.a=a}, +bse:function bse(){}, +bsc:function bsc(){}, +bsp:function bsp(){}, +bsl:function bsl(a){this.a=a}, +bsh:function bsh(){}, +bsk:function bsk(a,b){this.a=a +this.b=b}, +bsb:function bsb(){}, +ag6:function ag6(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aRD:function aRD(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +c6C:function c6C(a){this.a=a}, +c6G:function c6G(a){this.a=a}, +c6F:function c6F(a){this.a=a}, +c6D:function c6D(a){this.a=a}, +c6E:function c6E(a){this.a=a}, +ag8:function ag8(){}, +bcs:function bcs(a,b,c){this.c=a +this.d=b +this.e=c}, +bct:function bct(){}, +asO:function asO(a,b,c,d,e,f,g,h){var _=this +_.as=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +Yt:function Yt(a,b,c,d,e,f,g,h){var _=this +_.hi=a +_.G=!1 +_.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 +_.k2$=0 +_.k3$=h +_.ok$=_.k4$=0 +_.p1$=!1}, +Ha:function Ha(a,b,c,d,e,f,g,h,i){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.c=f +_.d=g +_.e=h +_.a=i}, +aKx:function aKx(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.fz$=a +_.ca$=b +_.a=null +_.b=c +_.c=null}, +bR8:function bR8(a){this.a=a}, +bR7:function bR7(){}, +azs:function azs(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +tj:function tj(a,b,c){var _=this +_.r=_.f=_.e=null +_.dJ$=a +_.a7$=b +_.a=c}, +azp:function azp(a,b){this.c=a +this.a=b}, +ahF:function ahF(a,b,c,d,e){var _=this +_.D=a +_.cT$=b +_.Y$=c +_.d7$=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}, +cca:function cca(a,b,c){this.a=a +this.b=b +this.c=c}, +b0k:function b0k(){}, +b0m:function b0m(){}, +Kp:function Kp(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aRH:function aRH(a){this.a=null +this.b=a +this.c=null}, +aVT:function aVT(a,b,c){this.c=a +this.d=b +this.a=c}, +cdI:function cdI(a){this.a=a}, +cOz(a,b,c,d){return new A.B8(b,c,a,d,new A.aR(null,t.A),new A.aR(null,t.LS))}, +Kq:function Kq(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +B8:function B8(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.f=e +_.r=f}, +azv:function azv(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=null +_.b=d +_.c=null}, +bs7:function bs7(a){this.a=a}, +bs8:function bs8(a,b){this.a=a +this.b=b}, +bs9:function bs9(a,b){this.a=a +this.b=b}, +bsa:function bsa(a,b){this.a=a +this.b=b}, +bs6:function bs6(a){this.a=a}, +bs0:function bs0(a){this.a=a}, +bs5:function bs5(a){this.a=a}, +bs4:function bs4(a,b){this.a=a +this.b=b}, +bs3:function bs3(a,b){this.a=a +this.b=b}, +bs2:function bs2(a){this.a=a}, +bs1:function bs1(a){this.a=a}, +aRu:function aRu(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +SM:function SM(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +SN:function SN(a,b,c,d,e){var _=this +_.d=$ +_.e=a +_.aas$=b +_.pl$=c +_.azw$=d +_.a=null +_.b=e +_.c=null}, +bsm:function bsm(a){this.a=a}, +bsn:function bsn(a){this.a=a}, +bsi:function bsi(){}, +bsj:function bsj(a,b,c){this.a=a +this.b=b +this.c=c}, +bsf:function bsf(a,b,c){this.a=a +this.b=b +this.c=c}, +bsg:function bsg(a,b,c){this.a=a +this.b=b +this.c=c}, +b_e:function b_e(a,b){this.c=a +this.a=b}, +akw:function akw(a,b){var _=this +_.k1$=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}, +Gh:function Gh(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aRs:function aRs(a){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null}, +c6i:function c6i(a){this.a=a}, +c6f:function c6f(a){this.a=a}, +c6j:function c6j(a){this.a=a}, +c6e:function c6e(a){this.a=a}, +c6h:function c6h(a){this.a=a}, +c6g:function c6g(a){this.a=a}, +ag9:function ag9(){}, +bt8:function bt8(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +azI:function azI(a){this.a=a}, +bt9:function bt9(){}, +Ae:function Ae(a){var _=this +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +d55(){return $.cVb().wK(new A.bdW(),t.wV)}, +beb:function beb(){}, +Cv:function Cv(){}, +bdW:function bdW(){}, +Qq:function Qq(){var _=this +_.a=null +_.b=!1 +_.c=null +_.d=!1}, +cHE(a,b,c,d,e){var s=new A.py() +$.r8() +s.j9(0) +s=new A.asZ(e,d,b,c,c,a,B.h,B.a_M,s) +s.aUA(a,b,c,d,e) +return s}, +Qz:function Qz(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +xs:function xs(a,b){this.a=a +this.b=b}, +asZ:function asZ(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=$ +_.w=f +_.x=$ +_.y=g +_.z=null +_.Q=h +_.ay=_.ax=_.at=_.as=null +_.CW=_.ch=0 +_.cx=i +_.db=_.cy=!1}, +be5:function be5(a){this.a=a}, +d58(a,b){var s=new A.at_(b,new A.aR(null,t.CH)) +s.aUB(a,b) +return s}, +JE:function JE(a,b){this.a=a +this.b=b}, +be6:function be6(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}, +be4:function be4(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +at_:function at_(a,b){var _=this +_.a=!1 +_.b=a +_.c=b +_.d=$ +_.r=_.f=_.e=!1}, +bea:function bea(a){this.a=a}, +be7:function be7(a){this.a=a}, +be9:function be9(a,b,c){this.a=a +this.b=b +this.c=c}, +be8:function be8(a){this.a=a}, +axb(){var s=0,r=A.p(t.Fe),q,p,o +var $async$axb=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=A +s=3 +return A.i(A.d55(),$async$axb) +case 3:o=b +s=4 +return A.i(A.brV(),$async$axb) +case 4:q=new p.axa(o,b) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$axb,r)}, +zn:function zn(a,b){this.a=a +this.b=b}, +axa:function axa(a,b){this.a=a +this.b=b}, +bpU:function bpU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bpS:function bpS(a){this.a=a}, +bpT:function bpT(a){this.a=a}, +bpF:function bpF(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}, +bpE:function bpE(a,b){this.a=a +this.b=b}, +bpG:function bpG(a,b){this.a=a +this.b=b}, +bpH:function bpH(a){this.a=a}, +bpP:function bpP(a){this.a=a}, +bpQ:function bpQ(a,b,c){this.a=a +this.b=b +this.c=c}, +bpR:function bpR(a){this.a=a}, +bpI:function bpI(a,b){this.a=a +this.b=b}, +bpJ:function bpJ(a,b){this.a=a +this.b=b}, +bpK:function bpK(a,b){this.a=a +this.b=b}, +bpL:function bpL(a,b){this.a=a +this.b=b}, +bpM:function bpM(a){this.a=a}, +bpN:function bpN(a){this.a=a}, +bpO:function bpO(a){this.a=a}, +aOO:function aOO(a,b,c){var _=this +_.a=null +_.b=a +_.c=b +_.d=c}, +JT:function JT(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bvs:function bvs(){this.a=null}, +bvq:function bvq(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}, +bvr:function bvr(a,b){this.a=a +this.b=b}, +cPC(a,b,c){var s,r,q,p +if(c!=null){s=A.rw(b,new A.co6(c)) +if(s!=null)return s.WX(a)}r=A.rw(b,new A.co7(a)) +if(r!=null)return r +q=A.X(b).h("b1<1>") +p=A.R(new A.b1(b,new A.co8(a),q),!1,q.h("B.E")) +if(p.length===0)return B.b.ga2(b) +return B.b.i6(p,new A.co9(a)).WX(a)}, +da4(a){if(a.giu()<550)if(a.b>a.a)return new A.c6J() +else return new A.aRE(!1) +else return new A.aRE(!0)}, +brY:function brY(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +azq:function azq(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +iH:function iH(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +c6y:function c6y(a,b){this.a=a +this.b=b}, +co6:function co6(a){this.a=a}, +co7:function co7(a){this.a=a}, +co8:function co8(a){this.a=a}, +co9:function co9(a){this.a=a}, +brZ:function brZ(){}, +aRE:function aRE(a){this.a=a}, +c6Q:function c6Q(){}, +c6R:function c6R(a){this.a=a}, +c6S:function c6S(a){this.a=a}, +c6T:function c6T(a){this.a=a}, +c6U:function c6U(){}, +c6V:function c6V(a){this.a=a}, +c6W:function c6W(a){this.a=a}, +c6X:function c6X(a){this.a=a}, +c6J:function c6J(){}, +c6K:function c6K(){}, +c6L:function c6L(a){this.a=a}, +KI:function KI(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +Tc:function Tc(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.d=0 +_.e=a +_.f=b +_.r=c +_.w=null +_.x=d +_.y=e +_.z=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.ay=k +_.ch=l +_.CW=0 +_.db=_.cy=_.cx=null +_.dx=m +_.a=null +_.b=n +_.c=null}, +bvI:function bvI(a){this.a=a}, +bvH:function bvH(a,b){this.a=a +this.b=b}, +bvG:function bvG(a){this.a=a}, +bvF:function bvF(a){this.a=a}, +bvB:function bvB(a){this.a=a}, +bvC:function bvC(a){this.a=a}, +bvA:function bvA(a,b){this.a=a +this.b=b}, +bvD:function bvD(a){this.a=a}, +bvE:function bvE(a){this.a=a}, +bvz:function bvz(a,b){this.a=a +this.b=b}, +bvM:function bvM(a,b,c){this.a=a +this.b=b +this.c=c}, +bvL:function bvL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bvN:function bvN(a){this.a=a}, +bvP:function bvP(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bvO:function bvO(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bvQ:function bvQ(a,b){this.a=a +this.b=b}, +bvK:function bvK(a,b){this.a=a +this.b=b}, +bvJ:function bvJ(a,b,c){this.a=a +this.b=b +this.c=c}, +acR:function acR(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aL8:function aL8(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +Ma:function Ma(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aiy:function aiy(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aWr:function aWr(a){var _=this +_.d=!1 +_.a=_.e=null +_.b=a +_.c=null}, +ceL:function ceL(a,b){this.a=a +this.b=b}, +ceM:function ceM(a){this.a=a}, +bFY(a,b,c){var s=new A.bFX(),r=new A.Az(new A.bFZ(a,b,s,c),null) +r.j9(0) +s.a=r +return s}, +bGo(a,b){var s=a.a,r=a.b,q=B.e.dV(Math.min(b.a/s,b.b/r),0,1) +return new A.V(s*q,r*q)}, +cLn(a,b){return A.oq(a.gc1(),(a.d-a.b)*b,(a.c-a.a)*b)}, +cyG(a,b,c,d){var s=c==null?a.a:c,r=a.b,q=d==null?a.c-a.a:d,p=b==null?a.d-r:b +return new A.W(s,r,s+q,r+p)}, +cLm(a,b){var s=b.c,r=b.a,q=a.c,p=a.a,o=q-p,n=b.d,m=b.b,l=a.d,k=a.b,j=l-k,i=new A.V(o,j).X(0,B.e.dV(Math.min((s-r)/o,(n-m)/j),0,1)) +if(!(ps?s-i.a:p +if(!(kn?n-i.b:k +return new A.W(r,m,r+i.a,m+i.b)}, +bFX:function bFX(){this.a=$}, +bFZ:function bFZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +at4:function at4(a,b){this.a=a +this.b=b}, +a62:function a62(a,b){this.c=a +this.a=b}, +bu9:function bu9(){}, +bua:function bua(){}, +bu8:function bu8(){}, +aBL:function aBL(a){this.a=a}, +aEA:function aEA(a){this.a=a}, +a9F:function a9F(a){this.a=a}, +us:function us(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.dr=_.eX=_.er=null +_.dQ=!1 +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.id=_.go=$ +_.k3=_.k2=_.k1=null +_.k4=$ +_.ok=!1 +_.p1=e +_.p2=f +_.f=g +_.r=h +_.w=null +_.a=i +_.b=null +_.c=j +_.d=k +_.e=l}, +ur:function ur(a,b,c,d,e,f,g,h,i,j){var _=this +_.e8=a +_.eX=_.dP=_.er=_.bk=_.hS=null +_.k2=_.dr=!1 +_.dd=_.e7=_.bU=_.bj=_.be=_.bO=_.c_=_.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}, +bG5:function bG5(a,b){this.a=a +this.b=b}, +bmx(a){var s=0,r=A.p(t.gH),q,p,o,n,m,l,k +var $async$bmx=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(a.adB(B.Eg),$async$bmx) +case 3:l=c +k=a.b +k===$&&A.b() +k=k.a +k===$&&A.b() +k=B.e.au(k.a.width()) +p=a.b.a +p===$&&A.b() +p=B.e.au(p.a.height()) +o=a.b.a +o===$&&A.b() +o=B.e.au(o.a.width()) +n=A.dF(l.buffer,0,null) +m=$.Zu() +A.fT(a) +q=new A.a48(k,p,o*4,n,A.nG(m.a.get(a))) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bmx,r)}, +bKE(a){var s=0,r=A.p(t.MH),q,p,o +var $async$bKE=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=a.a.f +p.toString +o=A +s=3 +return A.i(A.bmx(p),$async$bKE) +case 3:q=new o.aFW(c,a.b) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$bKE,r)}, +a48:function a48(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bmy:function bmy(a){this.a=a}, +bmz:function bmz(a){this.a=a}, +aFW:function aFW(a,b){this.a=a +this.b=b}, +brV(){return $.cWN().wK(new A.brW(),t.Et)}, +Ks:function Ks(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}, +Kt:function Kt(a,b,c){this.a=a +this.b=b +this.c=c}, +a5M:function a5M(){}, +azu:function azu(a){this.a=a}, +bcn:function bcn(a){this.d=a}, +zl:function zl(){}, +brW:function brW(){}, +aRx:function aRx(a){this.a=a}, +aud:function aud(){}, +a46:function a46(a){this.a=a}, +da_(a){$.alO=$.alO+1 +return new A.jO(a,null,null)}, +cK1(a,b,c,d,e){$.alO=$.alO+1 +return new A.qm(c,b,a,e,d)}, +brX:function brX(){}, +jn:function jn(){}, +jO:function jO(a,b,c){this.e=a +this.a=b +this.c=c}, +azl:function azl(a){this.b=a}, +brS:function brS(a,b){this.a=a +this.b=b}, +qm:function qm(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.w=c +_.a=d +_.c=e}, +mi:function mi(){}, +cy5(){return new A.bue(A.a([],t.Mb))}, +bue:function bue(a){this.a=!1 +this.b=a}, +P_:function P_(a,b){this.c=a +this.a=b}, +Ub:function Ub(a,b){var _=this +_.k1$=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}, +Fj:function Fj(a){var _=this +_.k2$=0 +_.k3$=a +_.ok$=_.k4$=0 +_.p1$=!1}, +dpe(a5,a6,a7,a8,a9,b0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a={},a0=a8-1,a1=a9-1,a2=b0+1,a3=B.d.aD(a2*(a2+1),2),a4=new Uint8Array(2*b0+1) +a.a=a.b=0 +s=new A.cr8(a,a4) +r=new A.cr9(a,a4) +q=B.aKK[b0] +p=B.aOg[b0] +for(o=0,n=0,m=0;mb?a:b,r=c>d?c:d +return s>r?s:r}, +tt:function tt(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +cGe(a,b,c,d,e){var s=A.L5(a,b,e),r=A.L5(b,c,e),q=A.L5(c,d,e),p=A.L5(s,r,e),o=A.L5(r,q,e) +return A.a([a,s,p,A.L5(p,o,e),o,q,d],t.Id)}, +aBa(a,b){var s=A.a([],t.H9) +B.b.L(s,a) +return new A.mn(s,b)}, +cTt(a,b){var s,r,q,p +if(a==="")return A.aBa(B.aNe,b==null?B.em:b) +s=new A.bJe(a,B.ie,a.length) +s.L0() +r=A.a([],t.H9) +q=new A.qv(r,b==null?B.em:b) +p=new A.bJd(B.k6,B.k6,B.k6,B.ie) +for(r=s.aD7(),r=new A.dr(r.a(),r.$ti.h("dr<1>"));r.t();)p.bv1(r.b,q) +return q.Dd()}, +aBc:function aBc(a,b){this.a=a +this.b=b}, +Tp:function Tp(a,b){this.a=a +this.b=b}, +EC:function EC(){}, +lB:function lB(a,b,c){this.b=a +this.c=b +this.a=c}, +qo:function qo(a,b,c){this.b=a +this.c=b +this.a=c}, +kO:function kO(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +bb5:function bb5(){}, +a0M:function a0M(a){this.a=a}, +qv:function qv(a,b){this.a=a +this.b=b}, +mn:function mn(a,b){this.a=a +this.b=b}, +bUg:function bUg(a){this.a=a +this.b=0}, +c9r:function c9r(a,b,c,d){var _=this +_.a=a +_.b=$ +_.c=b +_.d=c +_.e=$ +_.f=d}, +a6T:function a6T(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +d8h(a){var s,r,q=null +if(a.length===0)throw A.d(A.aM("bytes was empty",q)) +s=a.byteLength +if(s>20&&a[0]===137&&a[1]===80&&a[2]===78&&a[3]===71&&a[4]===13&&a[5]===10&&a[6]===26&&a[7]===10){s=A.fe(a.buffer,0,q) +return new A.bxT(B.Ei,s.getUint32(16,!1),s.getUint32(20,!1))}if(s>8)if(a[0]===71)if(a[1]===73)if(a[2]===70)if(a[3]===56){r=a[4] +r=(r===55||r===57)&&a[5]===97}else r=!1 +else r=!1 +else r=!1 +else r=!1 +else r=!1 +if(r){s=A.fe(a.buffer,0,q) +return new A.bkn(B.Ek,s.getUint16(6,!0),s.getUint16(8,!0))}if(s>12&&a[0]===255&&a[1]===216&&a[2]===255)return A.d8H(A.fe(a.buffer,0,q)) +if(s>28&&a[0]===82&&a[1]===73&&a[2]===70&&a[3]===70&&a[8]===87&&a[9]===69&&a[10]===66&&a[11]===80){s=A.fe(a.buffer,0,q) +return new A.bOI(B.Ej,s.getUint16(26,!0),s.getUint16(28,!0))}if(s>22&&a[0]===66&&a[1]===77){s=A.fe(a.buffer,0,q) +return new A.b6o(B.El,s.getInt32(18,!0),s.getInt32(22,!0))}throw A.d(A.aM("unknown image type",q))}, +d8H(a){var s,r=4+a.getUint16(4,!1) +for(;r>>0)}, +cFV(a,b,c,d){return new A.aQ(((a&255)<<24|(b&255)<<16|(c&255)<<8|d&255)>>>0)}, +aQ:function aQ(a){this.a=a}, +tX:function tX(){}, +DZ:function DZ(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.w=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h}, +a3L:function a3L(a,b){this.a=a +this.b=b}, +ER:function ER(a,b,c,d,e,f,g,h,i){var _=this +_.r=a +_.w=b +_.x=c +_.a=d +_.b=e +_.c=f +_.d=g +_.e=h +_.f=i}, +wu:function wu(a,b,c){this.a=a +this.b=b +this.c=c}, +aaj:function aaj(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +IU:function IU(a,b){this.a=a +this.b=b}, +kF:function kF(a,b){this.a=a +this.b=b}, +aB0:function aB0(a,b){this.a=a +this.b=b}, +aak:function aak(a,b){this.a=a +this.b=b}, +aal:function aal(a,b){this.a=a +this.b=b}, +aba:function aba(a,b){this.a=a +this.b=b}, +aaZ:function aaZ(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aaS:function aaS(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}, +tU:function tU(a,b){this.a=a +this.b=b}, +MD:function MD(a,b){this.a=a +this.b=b}, +MC:function MC(a){this.a=a}, +czC(a,b,c,d,e){var s=b==null?A.a([],t.wP):b +return new A.aHH(e,c,s,a,d)}, +KS(a,b,c){var s=b==null?A.a([],t.wP):b +return new A.Tl(s,a,c==null?a.r:c)}, +cMR(a,b){var s=A.a([],t.wP) +return new A.aGb(b,s,a,a.r)}, +dcK(a,b,c){return new A.aDV(c,b,a,B.cx)}, +cKK(a,b){return new A.Tr(a,b,b.r)}, +cGB(a,b,c){return new A.Qp(b,c,a,a.r)}, +cMN(a,b){return new A.aG9(a,b,b.r)}, +cIV(a,b,c){return new A.avS(a,b,c,c.r)}, +fL:function fL(){}, +aOn:function aOn(){}, +aH_:function aH_(){}, +m1:function m1(){}, +aHH:function aHH(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.d=c +_.b=d +_.a=e}, +Tl:function Tl(a,b,c){this.d=a +this.b=b +this.a=c}, +aGb:function aGb(a,b,c,d){var _=this +_.r=a +_.d=b +_.b=c +_.a=d}, +aDV:function aDV(a,b,c,d){var _=this +_.r=a +_.d=b +_.b=c +_.a=d}, +a0I:function a0I(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +a5k:function a5k(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.a=e}, +Tr:function Tr(a,b,c){this.d=a +this.b=b +this.a=c}, +Qp:function Qp(a,b,c,d){var _=this +_.d=a +_.e=b +_.b=c +_.a=d}, +aG9:function aG9(a,b,c){this.d=a +this.b=b +this.a=c}, +avS:function avS(a,b,c,d){var _=this +_.d=a +_.e=b +_.b=c +_.a=d}, +a6U:function a6U(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +dhR(a,b){var s,r,q=a.apU() +if(a.Q!=null){a.r.iW(0,new A.aj7("svg",A.czC(a.as,null,q.b,q.c,q.a))) +return}s=A.czC(a.as,null,q.b,q.c,q.a) +a.Q=s +r=a.at +r.toString +a.Fh(r,s) +return}, +dhM(a,b){var s,r,q,p,o=a.at +if((o==null?null:o.r)===!0)return +s=a.r.gP(0).b +o=a.as +r=A.KS(o,null,null) +q=a.f +p=q.gA9() +s.Lm(r,o.y,q.gDq(),a.ku("mask"),p,q.PL(a),p) +p=a.at +p.toString +a.Fh(p,r) +return}, +dhT(a,b){var s,r,q,p,o=a.at +if((o==null?null:o.r)===!0)return +s=a.r.gP(0).b +r=a.at +q=A.cMR(a.as,r.gabO(0)==="text") +o=a.f +p=o.gA9() +s.Lm(q,a.as.y,o.gDq(),a.ku("mask"),p,o.PL(a),p) +a.Fh(r,q) +return}, +dhS(a,b){var s=A.KS(a.as,null,null),r=a.at +r.toString +a.Fh(r,s) +return}, +dhP(a,b){var s,r,q,p,o,n,m,l,k=null,j=a.as,i=a.ku("width") +if(i==null)i="" +s=a.ku("height") +if(s==null)s="" +r=A.cTp(i,"width",a.Q) +q=A.cTp(s,"height",a.Q) +if(r==null||q==null){p=a.apU() +r=p.a +q=p.b}o=j.a +n=o.i(0,"x") +m=o.i(0,"y") +a.z.B(0,"url(#"+A.r(a.as.b)+")") +l=A.KS(A.cMt(j.z,j.y,j.x,j.d,k,k,j.f,j.w,j.Q,j.at,j.as,q,j.c,j.b,o,j.e,k,k,k,k,j.r,r,A.a28(n),A.a28(m)),k,k) +o=a.at +o.toString +a.Fh(o,l) +return}, +dhU(a,b){var s,r,q,p,o=a.r.gP(0).b,n=a.as.c +if(n==null||n.length===0)return +s=A.b2c(a.ku("transform")) +if(s==null)s=B.cx +r=a.a +q=A.j6(a.ik("x","0"),r,!1) +q.toString +r=A.j6(a.ik("y","0"),r,!1) +r.toString +p=A.KS(B.id,null,s.P3(q,r)) +r=a.f +q=r.gA9() +s=r.gDq() +p.a74(A.cGB(a.as,"url("+A.r(n)+")",q),s,q,q) +if("#"+A.r(a.as.b)!==n)a.Vs(p) +o.Lm(p,a.as.y,s,a.ku("mask"),q,r.PL(a),q) +return}, +cOg(a,b,c){var s,r,q,p,o="stop-color" +for(s=a.Tf(),s=new A.dr(s.a(),s.$ti.h("dr<1>"));s.t();){r=s.b +if(r instanceof A.nw)continue +if(r instanceof A.mH){r=a.as.a.i(0,"stop-opacity") +if(r==null)r="1" +q=a.as.a.i(0,o) +if(q==null)q=null +p=a.Oh(q,o,a.as.b) +if(p==null)p=B.hq +r=A.m_(r,!1) +r.toString +q=p.a +b.push(A.PJ(q>>>16&255,q>>>8&255,q&255,r)) +r=a.as.a.i(0,"offset") +c.push(A.BF(r==null?"0%":r))}}return}, +dhQ(a,b){var s,r,q,p,o,n,m,l,k=a.aD5(),j=a.ik("cx","50%"),i=a.ik("cy","50%"),h=a.ik("r","50%"),g=a.ik("fx",j),f=a.ik("fy",i),e=a.aD8(),d=a.as,c=A.b2c(a.ku("gradientTransform")) +if(!a.at.r){s=A.a([],t.n) +r=A.a([],t.Ai) +A.cOg(a,r,s)}else{s=null +r=null}j.toString +q=A.BF(j) +i.toString +p=A.BF(i) +h.toString +o=A.BF(h) +g.toString +n=A.BF(g) +f.toString +m=A.BF(f) +l=n!==q||m!==p?new A.eo(n,m):null +a.f.auV(new A.ER(new A.eo(q,p),o,l,"url(#"+A.r(d.b)+")",r,s,e,k,c),a.as.c) +return}, +dhO(a,b){var s,r,q,p,o,n,m,l,k=a.aD5(),j=a.ik("x1","0%") +j.toString +s=a.ik("x2","100%") +s.toString +r=a.ik("y1","0%") +r.toString +q=a.ik("y2","0%") +q.toString +p=a.as +o=A.b2c(a.ku("gradientTransform")) +n=a.aD8() +if(!a.at.r){m=A.a([],t.n) +l=A.a([],t.Ai) +A.cOg(a,l,m)}else{m=null +l=null}a.f.auV(new A.DZ(new A.eo(A.BF(j),A.BF(r)),new A.eo(A.BF(s),A.BF(q)),"url(#"+A.r(p.b)+")",l,m,n,k,o),a.as.c) +return}, +dhL(a,b){var s,r,q,p,o,n,m,l,k,j=a.as,i=A.a([],t.wP) +for(s=a.Tf(),s=new A.dr(s.a(),s.$ti.h("dr<1>")),r=a.f,q=r.gA9(),p=t.H9,o=a.r;s.t();){n=s.b +if(n instanceof A.nw)continue +if(n instanceof A.mH){n=n.e +m=B.Qs.i(0,n) +if(m!=null){n=m.$1(a) +n.toString +l=o.gP(0).b +n=a.bmU(n,l.a).a +n=A.a(n.slice(0),A.X(n)) +l=a.as.x +if(l==null)l=B.em +k=A.a([],p) +B.b.L(k,n) +n=a.as +i.push(new A.Tr(new A.mn(k,l),n,n.r))}else if(n==="use"){n=a.as +i.push(new A.Qp("url("+A.r(n.c)+")",q,n,n.r))}}}r.bm2("url(#"+A.r(j.b)+")",i) +return}, +dhN(a,b){var s,r,q,p,o,n,m,l=a.as.c +if(l==null)return +if(B.c.aC(l,"data:")){s=B.c.c2(l,";")+1 +r=B.c.hj(l,",",s) +q=B.c.R(l,B.c.c2(l,"/")+1,s-1) +p=$.cE2() +o=A.cj(q,p,"").toLowerCase() +n=B.b3Y.i(0,o) +if(n==null){A.eP("Warning: Unsupported image format "+o) +return}r=B.c.b0(l,r+1) +m=A.cIV(B.eX.cD(A.cj(r,p,"")),n,a.as) +r=a.f +q=r.gA9() +a.r.gP(0).b.a74(m,r.gDq(),q,q) +a.Vs(m) +return}return}, +diM(a){var s,r,q,p=a.a,o=A.j6(a.ik("cx","0"),p,!1) +o.toString +s=A.j6(a.ik("cy","0"),p,!1) +s.toString +p=A.j6(a.ik("r","0"),p,!1) +p.toString +r=a.as.w +q=A.a([],t.H9) +return new A.qv(q,r==null?B.em:r).q5(new A.pp(o-p,s-p,o+p,s+p)).Dd()}, +diP(a){var s=a.ik("d","") +s.toString +return A.cTt(s,a.as.w)}, +diS(a){var s,r,q,p,o,n,m,l,k=a.a,j=A.j6(a.ik("x","0"),k,!1) +j.toString +s=A.j6(a.ik("y","0"),k,!1) +s.toString +r=A.j6(a.ik("width","0"),k,!1) +r.toString +q=A.j6(a.ik("height","0"),k,!1) +q.toString +p=a.ku("rx") +o=a.ku("ry") +if(p==null)p=o +if(o==null)o=p +if(p!=null&&p!==""){n=A.j6(p,k,!1) +n.toString +k=A.j6(o,k,!1) +k.toString +m=a.as.w +l=A.a([],t.H9) +return new A.qv(l,m==null?B.em:m).bmg(new A.pp(j,s,j+r,s+q),n,k).Dd()}k=a.as.w +n=A.a([],t.H9) +return new A.qv(n,k==null?B.em:k).jd(new A.pp(j,s,j+r,s+q)).Dd()}, +diQ(a){return A.cOK(a,!0)}, +diR(a){return A.cOK(a,!1)}, +cOK(a,b){var s,r=a.ik("points","") +r.toString +if(r==="")return null +s=b?"z":"" +return A.cTt("M"+r+s,a.as.w)}, +diN(a){var s,r,q,p,o=a.a,n=A.j6(a.ik("cx","0"),o,!1) +n.toString +s=A.j6(a.ik("cy","0"),o,!1) +s.toString +r=A.j6(a.ik("rx","0"),o,!1) +r.toString +o=A.j6(a.ik("ry","0"),o,!1) +o.toString +n-=r +s-=o +q=a.as.w +p=A.a([],t.H9) +return new A.qv(p,q==null?B.em:q).q5(new A.pp(n,s,n+r*2,s+o*2)).Dd()}, +diO(a){var s,r,q,p,o=a.a,n=A.j6(a.ik("x1","0"),o,!1) +n.toString +s=A.j6(a.ik("x2","0"),o,!1) +s.toString +r=A.j6(a.ik("y1","0"),o,!1) +r.toString +o=A.j6(a.ik("y2","0"),o,!1) +o.toString +q=a.as.w +p=A.a([],t.H9) +if(q==null)q=B.em +p.push(new A.qo(n,r,B.h2)) +p.push(new A.lB(s,o,B.dx)) +return new A.qv(p,q).Dd()}, +cMt(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4){return new A.Vu(o,n,m,d,p,g,a1,h,c,b,a,i,k,j,r,a0,s,a2,l,a3,q,a4,e,f)}, +a28(a){var s +if(a==null||a==="")return null +if(A.cT_(a))return new A.a27(A.cTq(a,1),!0) +s=A.m_(a,!1) +s.toString +return new A.a27(s,!1)}, +aj7:function aj7(a,b){this.a=a +this.b=b}, +uA:function uA(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 +_.y=_.x=_.w=!0 +_.z=h +_.Q=null +_.as=i +_.at=null +_.ax=0 +_.ay=null +_.ch=!1}, +bJ5:function bJ5(){}, +bJ6:function bJ6(){}, +bJ7:function bJ7(){}, +bJ8:function bJ8(a){this.a=a}, +bJ9:function bJ9(a){this.a=a}, +bJa:function bJa(a){this.a=a}, +bJb:function bJb(){}, +bJc:function bJc(){}, +aVw:function aVw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.e=d}, +cdi:function cdi(a,b){this.a=a +this.b=b}, +cdh:function cdh(){}, +cdf:function cdf(){}, +cde:function cde(a){this.a=a}, +cdg:function cdg(a){this.a=a}, +aZF:function aZF(a,b,c){this.a=a +this.b=b +this.c=c}, +Vu:function Vu(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 +_.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}, +bIY:function bIY(){}, +a27:function a27(a,b){this.a=a +this.b=b}, +aat:function aat(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}, +Vv:function Vv(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +yh:function yh(a,b){this.a=a +this.b=b}, +bC_:function bC_(){this.a=$}, +aDx:function aDx(a,b){this.a=a +this.b=b}, +aDw:function aDw(a,b){this.a=a +this.b=b}, +Um:function Um(a,b,c){this.a=a +this.b=b +this.c=c}, +aDt:function aDt(a,b){this.a=a +this.b=b}, +aDu:function aDu(a,b,c){this.a=a +this.b=b +this.c=c}, +a8r:function a8r(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aDv:function aDv(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}, +aFI:function aFI(a,b,c){this.a=a +this.b=b +this.c=c}, +aHJ:function aHJ(){}, +aty:function aty(){}, +baa:function baa(a){var _=this +_.a=a +_.c=_.b=$ +_.d=null}, +bab:function bab(a,b){this.a=a +this.b=b}, +aMb:function aMb(){}, +aHr:function aHr(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}, +tN:function tN(a,b){this.a=a +this.b=b}, +q5:function q5(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +Kj:function Kj(a){this.a=a}, +Ni:function Ni(a){this.a=a}, +Kl(a){var s=new A.c5(new Float64Array(16)) +if(s.l7(a)===0)return null +return s}, +d9X(){return new A.c5(new Float64Array(16))}, +d9Y(){var s=new A.c5(new Float64Array(16)) +s.fO() +return s}, +cJR(a){var s,r,q=new Float64Array(16) +q[15]=1 +s=Math.cos(a) +r=Math.sin(a) +q[0]=s +q[1]=r +q[2]=0 +q[4]=-r +q[5]=s +q[6]=0 +q[8]=0 +q[9]=0 +q[10]=1 +q[3]=0 +q[7]=0 +q[11]=0 +return new A.c5(q)}, +wn(a,b,c){var s=new Float64Array(16),r=new A.c5(s) +r.fO() +s[14]=c +s[13]=b +s[12]=a +return r}, +zj(a,b,c){var s=new Float64Array(16) +s[15]=1 +s[10]=c +s[5]=b +s[0]=a +return new A.c5(s)}, +cLg(){var s=new Float64Array(4) +s[3]=1 +return new A.EQ(s)}, +cNA(a,b){var s=new A.ah(new Float64Array(2)) +s.dm(a,b) +return s}, +de(){return new A.ah(new Float64Array(2))}, +Eb:function Eb(a){this.a=a}, +Ki:function Ki(a){this.a=a}, +c5:function c5(a){this.a=a}, +aCh:function aCh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +EQ:function EQ(a){this.a=a}, +ah:function ah(a){this.a=a}, +dD:function dD(a){this.a=a}, +qT:function qT(a){this.a=a}, +abR(a,b,c,d,e){var s=new A.FO(a,b,c,d,e) +s.aVg(a,b,c,d,e) +return s}, +cNC(a){var s,r,q,p,o,n,m,l,k,j=null +if(B.c.du(a).length===0)throw A.d(A.bM("Cannot parse empty string into version",j,j)) +s=$.cYt() +if(!s.b.test(a))throw A.d(A.bM("Not a properly formatted version string",j,j)) +s=s.im(a).b +r=s[1].split(".") +q=A.cA(r[0],j) +p=r.length +if(p>1){o=A.cA(r[1],j) +n=p>2?A.cA(r[2],j):j}else{n=j +o=n}m=s[3] +if(m==null)m="" +p=t.s +l=A.a([],p) +if(B.c.du(m).length!==0)l=A.a(m.split("."),p) +k=s[5] +if(k==null)k="" +s=o==null?0:o +return A.abR(q,s,n==null?0:n,k,l)}, +abV(a,b){var s,r,q,p,o,n=a.a,m=b.a +if(n>m)return 1 +if(nm)return 1 +if(nm)return 1 +if(nA.ew(n,!0,m).length)r=A.ew(s,!0,m).length +for(q=0;qA.pO(A.ew(s,!0,m)[q]))return 1 +else return-1 +else if(o)return 1 +else if(p)return-1 +else{n=A.ew(n,!0,m)[q] +m=A.ew(s,!0,m)[q] +if(J.q(n,m))n=0 +else n=n")) +s.a65() +return s}, +cRC(a,b){var s=$.at +if(s===B.bc)return a +return s.a7y(a,b)}, +cwI:function cwI(a,b){this.a=a +this.$ti=b}, +B1:function B1(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +aev:function aev(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +aeB:function aeB(a,b,c,d,e){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +bZi:function bZi(a){this.a=a}, +bZk:function bZk(a){this.a=a}, +d2l(){var s,r,q,p,o +try{s=new A.b6V() +window.navigator.appVersion.toString +r=window.navigator.appVersion +r.toString +q=window.navigator.userAgent +q.toString +p=window.navigator.vendor +p.toString +s.b_b(r,q,p) +return s}catch(o){A.aD(o) +return null}}, +y8:function y8(a,b){this.a=a +this.b=b}, +b6V:function b6V(){this.a=null +this.b="Unknown version"}, +AS:function AS(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +czF(){var s=A.dbd(B.a59),r=new A.bOL(s) +r.aVh(s,null) +return r}, +bOL:function bOL(a){this.a=a}, +bOO:function bOO(a){this.a=a}, +aHN:function aHN(a,b){this.c=a +this.a=b}, +bo0:function bo0(a,b){this.a=a +this.b=b}, +bxG:function bxG(){}, +bxH:function bxH(){}, +bxI:function bxI(a){this.b=a}, +FT:function FT(a,b){this.a=a +this.b=b}, +ke:function ke(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +do5(a){var s=a.ex(0) +s.toString +switch(s){case"<":return"<" +case"&":return"&" +case"]]>":return"]]>" +default:return A.cAq(s)}}, +dnV(a){var s=a.ex(0) +s.toString +switch(s){case"'":return"'" +case"&":return"&" +case"<":return"<" +default:return A.cAq(s)}}, +dl6(a){var s=a.ex(0) +s.toString +switch(s){case'"':return""" +case"&":return"&" +case"<":return"<" +default:return A.cAq(s)}}, +cAq(a){return A.nb(new A.ou(a),new A.co1(),t.Dc.h("B.E"),t.N).jG(0)}, +aJR:function aJR(){}, +co1:function co1(){}, +FY:function FY(){}, +i7:function i7(a,b,c){this.c=a +this.a=b +this.b=c}, +AP:function AP(a,b){this.a=a +this.b=b}, +aJW:function aJW(){}, +bPU:function bPU(){}, +dgZ(a,b,c){return new A.aJY(b,c,$,$,$,a)}, +aJY:function aJY(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.aap$=c +_.aaq$=d +_.aar$=e +_.a=f}, +b_2:function b_2(){}, +aJQ:function aJQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +WH:function WH(a,b){this.a=a +this.b=b}, +bPB:function bPB(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bPV:function bPV(){}, +bPW:function bPW(){}, +aJX:function aJX(){}, +aJS:function aJS(a){this.a=a}, +aZZ:function aZZ(a,b){this.a=a +this.b=b}, +b1n:function b1n(){}, +hk:function hk(){}, +b__:function b__(){}, +b_0:function b_0(){}, +b_1:function b_1(){}, +tc:function tc(a,b,c,d,e){var _=this +_.e=a +_.Cf$=b +_.Cd$=c +_.Ce$=d +_.z6$=e}, +uW:function uW(a,b,c,d,e){var _=this +_.e=a +_.Cf$=b +_.Cd$=c +_.Ce$=d +_.z6$=e}, +uX:function uX(a,b,c,d,e){var _=this +_.e=a +_.Cf$=b +_.Cd$=c +_.Ce$=d +_.z6$=e}, +uY:function uY(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.Cf$=d +_.Cd$=e +_.Ce$=f +_.z6$=g}, +nw:function nw(a,b,c,d,e){var _=this +_.e=a +_.Cf$=b +_.Cd$=c +_.Ce$=d +_.z6$=e}, +aZW:function aZW(){}, +uZ:function uZ(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.Cf$=c +_.Cd$=d +_.Ce$=e +_.z6$=f}, +mH:function mH(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.Cf$=d +_.Cd$=e +_.Ce$=f +_.z6$=g}, +b_3:function b_3(){}, +FZ:function FZ(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=$ +_.Cf$=c +_.Cd$=d +_.Ce$=e +_.z6$=f}, +aJT:function aJT(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bPC:function bPC(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +aJU:function aJU(a){this.a=a}, +bPJ:function bPJ(a){this.a=a}, +bPT:function bPT(){}, +bPH:function bPH(a){this.a=a}, +bPD:function bPD(){}, +bPE:function bPE(){}, +bPG:function bPG(){}, +bPF:function bPF(){}, +bPQ:function bPQ(){}, +bPK:function bPK(){}, +bPI:function bPI(){}, +bPL:function bPL(){}, +bPR:function bPR(){}, +bPS:function bPS(){}, +bPP:function bPP(){}, +bPN:function bPN(){}, +bPM:function bPM(){}, +bPO:function bPO(){}, +crZ:function crZ(){}, +apR:function apR(a,b){this.a=a +this.$ti=b}, +lh:function lh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.z6$=d}, +aZX:function aZX(){}, +aZY:function aZY(){}, +acg:function acg(){}, +aJV:function aJV(){}, +drt(a,b){return new A.bXi([],[]).h4(a,b)}, +dru(a){return new A.crJ([]).$1(a)}, +bXi:function bXi(a,b){this.a=a +this.b=b}, +crJ:function crJ(a){this.a=a}, +crK:function crK(a){this.a=a}, +cH6(a,b,c,d){return new A.asT(a,d,c==null?A.a([],t.vG):c,b)}, +vU:function vU(a,b){this.a=a +this.b=b}, +asT:function asT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a2_:function a2_(a,b){this.a=a +this.b=b}, +amU:function amU(a,b){this.a=a +this.b=b}, +aZr:function aZr(){}, +mw:function mw(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +UT:function UT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +SB:function SB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +rp:function rp(a,b){this.a=a +this.b=b}, +bph:function bph(a,b,c){this.a=a +this.b=b +this.c=c}, +bwG:function bwG(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bwI:function bwI(a,b){this.a=a +this.b=b}, +bwJ:function bwJ(a,b){this.a=a +this.b=b}, +ib:function ib(a){this.a=a}, +bDq:function bDq(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=!1 +_.f=d +_.r=0 +_.w=!1 +_.x=e +_.y=!0 +_.z=f}, +bDr:function bDr(a){this.a=a}, +YE:function YE(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +adn:function adn(a,b){this.a=a +this.b=b}, +LO:function LO(a){this.a=a}, +apt:function apt(a){this.a=a}, +hv:function hv(a,b){this.a=a +this.b=b}, +abT:function abT(a,b,c){this.a=a +this.b=b +this.c=c}, +aaF:function aaF(a,b,c){this.a=a +this.b=b +this.c=c}, +BO:function BO(a,b){this.a=a +this.b=b}, +ZM:function ZM(a,b){this.a=a +this.b=b}, +Fw:function Fw(a,b,c){this.a=a +this.b=b +this.c=c}, +F5:function F5(a,b,c){this.a=a +this.b=b +this.c=c}, +j_:function j_(a,b){this.a=a +this.b=b}, +Ti:function Ti(a,b,c){this.a=a +this.b=b +this.$ti=c}, +cuc:function cuc(){}, +aK_:function aK_(a,b){this.a=a +this.b=b}, +aHt:function aHt(a,b){this.a=a +this.b=b}, +Fv:function Fv(a,b){this.a=a +this.b=b}, +eM(a,b){return new A.aci(null,a,b)}, +aci:function aci(a,b,c){this.c=a +this.a=b +this.b=c}, +x9:function x9(){}, +acj:function acj(a,b){this.b=a +this.a=b}, +bPX:function bPX(){}, +aK0:function aK0(a,b){this.b=a +this.a=b}, +nx:function nx(a,b){this.b=a +this.a=b}, +b_4:function b_4(){}, +b_5:function b_5(){}, +b_6:function b_6(){}, +csR(){var s=0,r=A.p(t.H) +var $async$csR=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.crc(new A.csS(),new A.csT()),$async$csR) +case 2:return A.n(null,r)}}) +return A.o($async$csR,r)}, +csT:function csT(){}, +csS:function csS(){}, +d4z(){var s=new A.a1N($,new A.a4z(A.a([B.Af],t.i6)),$,new A.anD(A.cRI()),!1),r=A.b5U(null,null,null) +s.z5$=r +s.aan$=new A.aog(A.b9(t.Gf)) +return s}, +cIH(a,b){var s,r +a.aqQ() +s=a.gvy() +r=a.gvy().i(0,b) +s.n(0,b,r+1)}, +cII(a,b){var s=a.gvy().i(0,b),r=a.gvy(),q=s.W(0,1) +r.n(0,b,q) +if(q.pO(0,0))a.gvy().F(0,b)}, +d8_(a,b){return a.gvy().aB(0,b)}, +cCf(){var s=$.at.i(0,B.bnU) +return s==null?null:t.Kb.a(s).$0()}, +d9c(a){return $.d9b.i(0,a).gbJ8()}, +cSW(a){return t.UE.b(a)||t.I3.b(a)||t.M3.b(a)||t.J2.b(a)||t.EE.b(a)||t.BJ.b(a)||t.oL.b(a)}, +mO(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)}, +dsE(){return t.lZ.a(self)}, +cIv(a){return t.g.a(A.cQ(a))}, +cHD(a){return a}, +d8G(a){return a}, +ded(a){return a}, +d8D(a,b){return a+b}, +d8F(a,b){return a[b]}, +cTU(a,b){var s +if(b===0)return 0 +s=B.d.M(a,b) +return s<0?b+s:s}, +Or(a){var s=u.ca.charCodeAt(a>>>6)+(a&63),r=s&1,q=u.d3.charCodeAt(s>>>1) +return q>>>4&-r|q&15&r-1}, +xE(a,b){var s=(a&1023)<<10|b&1023,r=u.ca.charCodeAt(1024+(s>>>9))+(s&511),q=r&1,p=u.d3.charCodeAt(r>>>1) +return p>>>4&-q|p&15&q-1}, +alX(a){var s,r,q,p,o=B.d.aD(B.d.aD(a.a,1000),1000),n=B.d.aD(o,3600) +o=B.d.M(o,3600) +s=B.d.aD(o,60) +o=B.d.M(o,60) +if(n>=10)r=""+n +else r=n===0?"00":"0"+n +if(s>=10)q=""+s +else q=s===0?"00":"0"+s +if(o>=10)p=""+o +else p=o===0?"00":"0"+o +return(r==="00"?"":r+":")+q+":"+p}, +b2m(){return new A.am(Date.now(),!1)}, +crs(){var s=t.SH.a($.at.i(0,$.cZt())) +return s==null?B.a4p:s}, +dtz(a,b,c,d,e){var s,r,q,p,o=A.dM(0,null,a.length,null,null),n=o-0 +if(n<2)return +if(n<32){A.cAU(a,b,c,0,o,a,0) +return}s=B.d.b2(n,1) +r=o-s +q=A.aK(r,a[0],!1,d) +A.cpV(a,b,c,s,o,q,0) +p=o-(s-0) +A.cpV(a,b,c,0,s,a,p) +A.cQS(b,c,a,p,o,q,0,r,a,0)}, +cAU(a,b,c,d,e,f,g){var s,r,q,p,o,n,m,l,k,j=e-d +if(j===0)return +s=J.ao(a) +r=J.cz(f) +r.n(f,g,s.i(a,d)) +for(q=1;q=24;){r=d.px(i)+e +q=s.i(a,r) +p=b.$1(q) +o=f-1 +s.n(a,r,s.i(a,o)) +s.n(a,o,q) +for(n=f,m=e;m0){--n +s.n(a,o,s.i(a,n)) +j=n}else j=o +s.n(a,j,l)}}if(m-e")) +for(s=c.h("D<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.n(0,p,o) +p=o}else p=o +J.eQ(p,q)}return n}, +cxz(a,b,c){var s=A.R(a,!0,c) +B.b.iL(s,b) +return s}, +cxy(a,b,c,d){return new A.dz(A.d8y(a,b,c,d),d.h("dz<0>"))}, +d8y(a,b,c,d){return function(){var s=a,r=b,q=c,p=d +var o=0,n=1,m,l,k,j +return function $async$cxy(e,f,g){if(f===1){m=g +o=n}while(true)switch(o){case 0:l=s.gaz(s),k=0 +case 2:if(!l.t()){o=4 +break}j=k+1 +o=5 +return e.b=r.$2(k,l.gK(l)),1 +case 5:case 3:k=j +o=2 +break +case 4:return 0 +case 1:return e.c=m,3}}}}, +rw(a,b){var s,r +for(s=J.au(a);s.t();){r=s.gK(s) +if(b.$1(r))return r}return null}, +DP(a){var s=J.au(a) +if(s.t())return s.gK(s) +return null}, +cJd(a){var s=J.ao(a) +if(s.gad(a))return null +return s.gP(a)}, +u_(a,b,c,d){var s,r,q,p,o,n=A.N(d,c.h("x<0>")) +for(s=J.au(a),r=c.h("D<0>");s.t();){q=s.gK(s) +p=b.$1(q) +o=n.i(0,p) +if(o==null){o=A.a([],r) +n.n(0,p,o) +p=o}else p=o +J.eQ(p,q)}return n}, +bnT(a,b){var s +for(s=J.au(a);s.t();)if(b.$1(s.gK(s)))return!1 +return!0}, +bnU(a,b){return new A.dz(A.d8C(a,b),b.h("dz<0>"))}, +d8C(a,b){return function(){var s=a,r=b +var q=0,p=1,o,n,m +return function $async$bnU(c,d,e){if(d===1){o=e +q=p}while(true)switch(q){case 0:n=J.au(s) +case 2:if(!n.t()){q=3 +break}m=n.gK(n) +q=m!=null?4:5 +break +case 4:q=6 +return c.b=m,1 +case 6:case 5:q=2 +break +case 3:return 0 +case 1:return c.c=o,3}}}}, +d8A(a){var s,r,q=A.X(a),p=new J.cP(a,a.length,q.h("cP<1>")) +if(p.t()){s=p.d +if(s==null)s=q.c.a(s) +for(q=q.c;p.t();){r=p.d +if(r==null)r=q.a(r) +if(r>s)s=r}return s}return null}, +cJa(a){var s,r,q=J.au(a) +if(q.t()){s=q.gK(q) +if(isNaN(s))return s +for(;q.t();){r=q.gK(q) +if(isNaN(r))return r +if(r>s)s=r}return s}return null}, +d8x(a){var s,r,q,p +for(s=A.z(a),s=s.h("@<1>").a1(s.y[1]),r=new A.c4(J.au(a.a),a.b,s.h("c4<1,2>")),s=s.y[1],q=0;r.t();){p=r.a +q+=p==null?s.a(p):p}return q}, +cxA(a,b){return new A.dz(A.d8B(a,b),b.h("dz<0>"))}, +d8B(a,b){return function(){var s=a,r=b +var q=0,p=1,o,n,m,l +return function $async$cxA(c,d,e){if(d===1){o=e +q=p}while(true)switch(q){case 0:n=s.$ti,m=new A.bj(s,s.gA(0),n.h("bj")),n=n.h("aa.E") +case 2:if(!m.t()){q=3 +break}l=m.d +q=4 +return c.vL(l==null?n.a(l):l) +case 4:q=2 +break +case 3:return 0 +case 1:return c.c=o,3}}}}, +pk(a,b,c,d){return new A.dz(A.d9e(a,b,c,d),d.h("dz<0>"))}, +d9e(a,b,c,d){return function(){var s=a,r=b,q=c,p=d +var o=0,n=1,m,l,k +return function $async$pk(e,f,g){if(f===1){m=g +o=n}while(true)switch(o){case 0:l=J.ao(s),k=0 +case 2:if(!(kq){r=B.c.du(B.c.b0(r,q+1)) +q=B.c.c2(r," ") +l=q===-1?r:B.c.R(r,0,q)}else l=a4}else{l=a4 +m=r}k=A.cY(p,a3) +if(k==null||k<1||k>31){A.eP("Invalid day "+p+" in date "+a5) +return a3}j=B.b43.i(0,o.toLowerCase()) +if(j==null){A.eP("Invalid month "+o+" in date "+a5) +return a3}i=A.cY(n.length===2?"20"+n:n,a3) +if(i==null){A.eP("Invalid year "+n+" in date "+a5) +return a3}h=m.split(":") +g=h.length +if(g<2){A.eP("Invalid time "+m+" in date "+a5) +return a3}f=A.cY(h[0],a3) +e=A.cY(h[1],a3) +d=g>2?A.cY(h[2],a3):0 +if(f==null||e==null||d==null){A.eP("Invalid time "+m+" in date "+a5) +return a3}g=l.length +if(g!==5){if(g===4)g=!(B.c.aC(l,"+")||B.c.aC(l,"-")) +else g=!1 +if(g)l="+"+l +else{c=B.b3G.i(0,l) +g=c==null +if(g)A.eP("warning: invalid time zone ["+l+"] in "+a5) +l=g?a4:c}}b=A.cY(B.c.R(l,1,3),a3) +a=A.cY(B.c.b0(l,3),a3) +if(b==null||a==null){A.eP("invalid time zone "+l+" in "+a5) +return a3}g=A.cd(i,j,k,f,e,d,0,!0) +if(!A.bI(g))A.C(A.bV(g)) +a0=new A.am(g,!0) +a1=B.c.aC(l,"+") +a2=A.cp(0,b,0,0,a,0) +return(a1?a0.DT(a2):a0.B(0,a2)).bH1()}, +cFv(a,b){var s,r,q,p=b.a,o=p.length,n=a.length-o,m=0 +while(!0){if(!(mf)A.C(A.e9(0,0,g.gA(h),null,null)) +if(A.r6(h,"=?",0))try{s=A.a5g(s)}catch(e){r=A.ag(e) +j='Unable to decode personal name "'+A.r(s)+'": '+A.r(r) +i=$.mP +if(i==null)A.mO(j) +else i.$1(j) +s=""}}q.push(new A.E5(s,k.a))}return q}, +d9w(a){var s,r,q,p,o,n,m,l=a.length +if(l===0)return A.a([],t.s) +s=A.a([],t.s) +r=A.R(new A.ou(a),!0,t.Dc.h("B.E")) +for(q=!1,p=0,o=32,n=0;n=0)){q=0 +break}l=r[p] +if(o)o=l!==n||!1 +else if(l===64){o=!1 +m=!0}else if(!m){if(l===62||l===32)s=p +o=!1}else if(l===60||l===32){q=p+1 +break}else if(l===34){o=!0 +n=34}else o=!1}return new A.bPk(B.c.R(a,q,s),q)}, +d8a(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=$.cWm().kt(0,a),d=A.R(e,!0,A.z(e).h("B.E")),c=new A.bu("") +for(s=0,r=0,q=0,p=!1,o=!1,n=0;e=d.length,ns)A.cIN(B.c.R(a,s,k),c) +j=l[0].toLowerCase() +if(B.c.aC(j,"" +c.a=e}}else if(B.c.aC(j,"q)b.a+=B.c.R(a,q,n) +m=o[0] +m.toString +l=B.b_8.i(0,m) +if(l!=null)b.a+=l +else{if(B.c.aC(m,"&#x"))k=A.cY(B.c.R(m,3,m.length-1),16) +else k=B.c.aC(m,"&#")?A.cY(B.c.R(m,2,m.length-1),null):null +if(k!=null)b.a+=A.cm(k) +else{j='Warning: unable to decode HTML entity "'+m+'"' +i=$.mP +if(i==null)A.mO(j) +else i.$1(j) +b.a+=m}}q=n+o[0].length}if(q>>24&255)/255===0){s=a.a.a +if((s.gj(s)>>>24&255)/255===0){s=a.b.a +if((s.gj(s)>>>24&255)/255===0){s=a.c.a +s=(s.gj(s)>>>24&255)/255===0}else s=!1}else s=!1}else s=!1 +if(s)return!1 +return!0}, +cIg(a){var s=a.a,r=s?a.b.d.b:0,q=s?a.b.a.b:0,p=s?a.b.b.b:0 +return new A.af(r,q,p,s?a.b.c.b:0)}, +cwO(a){var s=A.bFR(a.b),r=A.bFR(a.c),q=A.bFR(a.d),p=A.bFR(a.e) +return new A.af(s,r,q,p)}, +bFR(a){var s=a.c +return s.a&&s.c!==0?0+s.c:0}, +ve(a,b,c,d,e){var s,r,q,p=a!=null +if(p&&b!=null&&a.length===b.length){s=a.length +r=J.d1(s,e) +for(q=0;q=a.length?b[q]:a[q] +r[q]=d.$3(p,b[q],c)}return r}else return b}, +dtl(a,b,c){var s +if(a!==b)if(isNaN(a))s=isNaN(b) +else s=!1 +else s=!0 +if(s)return a +if(a==1/0||a==-1/0||b==1/0||b==-1/0)return b +return a*(1-c)+b*c}, +dtm(a,b,c){return B.e.aF(a+(b-a)*c)}, +cNz(a,b){var s=Math.pow(10,b),r=a.a +return"Vector2("+A.r(B.e.au(r[0]*s)/s)+", "+A.r(B.e.au(r[1]*s)/s)+")"}, +cMS(a){var s=$.cY3().i(0,A.c6(a)) +if(s!=null)return a.a(s.$0()) +else throw A.d("Unknown implementation of TextRenderer: "+A.c6(a).k(0)+". Please register it under [TextRendererFactory.defaultRegistry].")}, +R0(a){return B.c.fm(B.d.k9(a.gj(a),16).toUpperCase(),8,"0")}, +cwR(a){return B.c.b0(B.c.fm(B.d.k9(a.gj(a),16).toUpperCase(),8,"0"),2)}, +cIi(a,b){var s,r,q +if(a==="")return B.B +if(a.length>200)return B.B +s=A.cj(a,"#","") +if(s==="")return B.B +s=A.cj(s," ","") +if(s==="")return B.B +s=A.cj(s,"0x","") +if(s==="")return B.B +s=B.c.fm(B.c.fm(s,6,"0"),8,"F") +r=s.length +q=A.cY("0x"+B.c.R(s,r-8,r),null) +return new A.v((q==null?4278190080:q)>>>0)}, +d72(a,b){var s,r,q,p,o=null +if(a==="")return o +s=a.length +if(s>200)return o +s=A.cj(a,"#","") +r=s +if(r==null)r="" +if(r==="")return o +r=A.cj(r," ","") +if(r==="")return o +r=A.cj(r,"0x","") +if(r==="")return o +r=B.c.fm(B.c.fm(r,6,"0"),8,"F") +q=r.length +p=A.cY("0x"+B.c.R(r,q-8,q),o) +return p!=null?new A.v(p>>>0):o}, +bkS(a){var s=a/100 +return(s<=0.0031308?s*12.92:1.055*Math.pow(s,0.4166666666666667)-0.055)*255}, +cxa(a){var s=Math.pow(Math.abs(a),0.42) +return A.azb(a)*400*s/(s+27.13)}, +cxc(a){var s=A.cxV(a,$.d7T),r=A.cxa(s[0]),q=A.cxa(s[1]),p=A.cxa(s[2]) +return Math.atan2((r+q-2*p)/9,(11*r+-12*q+p)/11)}, +d7R(a,b){var s,r,q,p,o,n=$.a3R[0],m=$.a3R[1],l=$.a3R[2],k=B.d.M(b,4)<=1?0:100,j=B.d.M(b,2)===0?0:100 +if(b<4){s=(a-k*m-j*l)/n +r=0<=s&&s<=100 +q=t.n +if(r)return A.a([s,k,j],q) +else return A.a([-1,-1,-1],q)}else if(b<8){p=(a-j*n-k*l)/m +r=0<=p&&p<=100 +q=t.n +if(r)return A.a([j,p,k],q) +else return A.a([-1,-1,-1],q)}else{o=(a-k*n-j*m)/l +r=0<=o&&o<=100 +q=t.n +if(r)return A.a([k,j,o],q) +else return A.a([-1,-1,-1],q)}}, +d7J(a,b){var s,r,q,p,o,n,m,l,k=A.a([-1,-1,-1],t.n) +for(s=k,r=0,q=0,p=!1,o=!0,n=0;n<12;++n){m=A.d7R(a,n) +if(m[0]<0)continue +l=A.cxc(m) +if(!p){q=l +r=q +s=m +k=s +p=!0 +continue}if(o||B.e.M(l-r+25.132741228718345,6.283185307179586)100.01||b>100.01||a>100.01)return 0 +return((A.PN(g)&255)<<16|(A.PN(f[1])&255)<<8|A.PN(f[2])&255|4278190080)>>>0}a1-=(a0-a9)*a1/(2*a0)}return 0}, +d7U(a,b,c){var s,r,q,p,o +if(b<0.0001||c<0.0001||c>99.9999){s=A.PN(A.b9Y(c)) +return A.cFZ(s,s,s)}r=B.e.M(a,360) +q=(r<0?r+360:r)/180*3.141592653589793 +p=A.b9Y(c) +o=A.d7N(q,b,p) +if(o!==0)return o +return A.d3k(A.d7H(p,q))}, +cFZ(a,b,c){return((a&255)<<16|(b&255)<<8|c&255|4278190080)>>>0}, +d3k(a){return A.cFZ(A.PN(a[0]),A.PN(a[1]),A.PN(a[2]))}, +cG0(a){return A.cxV(A.a([A.cvK(a>>>16&255),A.cvK(a>>>8&255),A.cvK(a&255)],t.n),$.d3i)}, +b9Y(a){return 100*A.d3h((a+16)/116)}, +cvK(a){var s=a/255 +if(s<=0.040449936)return s/12.92*100 +else return Math.pow((s+0.055)/1.055,2.4)*100}, +PN(a){var s=a/100 +return A.d9T(0,255,B.e.aF((s<=0.0031308?s*12.92:1.055*Math.pow(s,0.4166666666666667)-0.055)*255))}, +d3f(a){if(a>0.008856451679035631)return Math.pow(a,0.3333333333333333) +else return(903.2962962962963*a+16)/116}, +d3h(a){var s=a*a*a +if(s>0.008856451679035631)return s +else return(116*a-16)/903.2962962962963}, +azb(a){if(a<0)return-1 +else if(a===0)return 0 +else return 1}, +d9V(a,b,c){return(1-c)*a+c*b}, +d9T(a,b,c){if(cb)return b +return c}, +cxV(a,b){var s,r,q,p,o=a[0],n=b[0],m=n[0],l=a[1],k=n[1],j=a[2] +n=n[2] +s=b[1] +r=s[0] +q=s[1] +s=s[2] +p=b[2] +return A.a([o*m+l*k+j*n,o*r+l*q+j*s,o*p[0]+l*p[1]+j*p[2]],t.n)}, +d3T(a){return B.lU}, +cru(a,b,c,d,e){return A.dpK(a,b,c,d,e,e)}, +dpK(a,b,c,d,e,f){var s=0,r=A.p(f),q,p +var $async$cru=A.l(function(g,h){if(g===1)return A.m(h,r) +while(true)switch(s){case 0:p=A.dO(null,t.P) +s=3 +return A.i(p,$async$cru) +case 3:q=a.$1(b) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cru,r)}, +BH(a,b){var s +if(a==null)return b==null +if(b==null||a.gA(a)!==b.gA(b))return!1 +if(a===b)return!0 +for(s=a.gaz(a);s.t();)if(!b.p(0,s.gK(s)))return!1 +return!0}, +fj(a,b){var s,r,q +if(a==null)return b==null +if(b==null||J.bn(a)!==J.bn(b))return!1 +if(a===b)return!0 +for(s=J.ao(a),r=J.ao(b),q=0;q=10===m?b:m)?Math.min(p,n):Math.max(o,10) +q=a.a +r=c.a-q +return new A.j(r<=20?r/2:A.Z(d.a-q/2,10,r-10),s)}, +alV(a){var s=0,r=A.p(t.lu),q,p,o +var $async$alV=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(A.DE(a),$async$alV) +case 3:o=c +$.jo.toString +s=5 +return A.i(A.alZ(o,null),$async$alV) +case 5:s=4 +return A.i(c.nY(),$async$alV) +case 4:p=c +q=p.giR(p) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$alV,r)}, +azd(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.j(s[12],s[13]) +return null}, +cxX(a,b){var s,r,q +if(a==b)return!0 +if(a==null){b.toString +return A.aze(b)}if(b==null)return A.aze(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]}, +aze(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}, +cK(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.j(p,o) +else return new A.j(p/n,o/n)}, +bru(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=$.cul() +s[2]=q +s[0]=q +s[3]=p +s[1]=p}else{s=$.cul() +if(qs[2])s[2]=q +if(p>s[3])s[3]=p}}, +io(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.bru(a4,a5,a6,!0,s) +A.bru(a4,a7,a6,!1,s) +A.bru(a4,a5,a9,!1,s) +A.bru(a4,a7,a9,!1,s) +a7=$.cul() +return new A.W(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.W(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.W(A.cJW(f,d,a0,a2),A.cJW(e,b,a1,a3),A.cJV(f,d,a0,a2),A.cJV(e,b,a1,a3))}}, +cJW(a,b,c,d){var s=ab?a:b,r=c>d?c:d +return s>r?s:r}, +cJX(a,b){var s +if(A.aze(a))return b +s=new A.c5(new Float64Array(16)) +s.T(a) +s.l7(s) +return A.io(s,b)}, +brv(a){var s,r=new A.c5(new Float64Array(16)) +r.fO() +s=new A.qT(new Float64Array(4)) +s.Qs(0,0,0,a.a) +r.a0g(0,s) +s=new A.qT(new Float64Array(4)) +s.Qs(0,0,0,a.b) +r.a0g(1,s) +return r}, +am4(a,b,c){if(a==null||!1)return a===b +return a>b-c&&a").b(s))return s +return new A.dc(s,e.h("dc<0>"))}, +dpG(a,b){var s=null +return a.pb(A.dH(s,s,b,"fwfh: color",s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dsc(a,b){var s=null,r=J.ao(b),q=r.gcU(b)?r.ga2(b):s +return a.pb(A.dH(s,s,s,"fwfh: font-family",s,s,s,s,q,r.my(b,1).ib(0,!1),s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dse(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: font-size",s,s,s,s,s,s,s,A.dlI(a,b),s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dsf(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: font-size "+A.r(b)+"em",s,s,s,s,s,s,s,A.cQp(a,new A.kN(b,B.tz)),s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dsg(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: font-size "+b,s,s,s,s,s,s,s,A.cQq(a,b),s,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dlI(a,b){var s,r=A.iv(b) +if(r!=null){s=A.cQp(a,r) +if(s!=null)return s}if(b instanceof A.cx)return A.cQq(a,A.hU(b)) +return null}, +cQp(a,b){var s,r=a.a +if(r==null)r=null +else{r=r.d9(0,t.em) +r=r==null?null:r.r}s=a.d9(0,t.GN) +return b.a_T(a,r,s==null?null:s.a)}, +cQq(a,b){var s,r,q=null +switch(b){case"xx-large":return A.Za(a,2) +case"x-large":return A.Za(a,1.5) +case"large":return A.Za(a,1.125) +case"medium":return A.Za(a,1) +case"small":return A.Za(a,0.8125) +case"x-small":return A.Za(a,0.625) +case"xx-small":return A.Za(a,0.5625) +case"larger":s=a.a +if(s==null)r=q +else{s=s.d9(0,t.em) +r=s==null?q:s.r}return r!=null?r*1.2:q +case"smaller":s=a.a +if(s==null)r=q +else{s=s.d9(0,t.em) +r=s==null?q:s.r}return r!=null?r*0.8333333333333334:q}return q}, +Za(a,b){var s,r,q,p +for(s=a,r=s;s!=null;q=s.a,r=s,s=q);p=r.d9(0,t.em) +p=p==null?null:p.r +return p!=null?p*b:null}, +dsh(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: font-style",s,s,s,s,s,s,s,s,b,s,s,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dsj(a,b){var s=null +return a.pb(A.dH(s,s,s,"fwfh: font-weight",s,s,s,s,s,s,s,s,s,s,b,s,s,!0,s,s,s,s,s,s,s,s),t.z)}, +dtn(a,b){var s=A.dmM(b) +if(s==null)return a +return a.FP(s,t.SO)}, +dmM(a){var s,r +if(a instanceof A.cx){if(a instanceof A.nd){s=A.e6(a.c) +if(s>0)return new A.Q9(new A.kN(s*100,B.kI))}switch(A.hU(a)){case"normal":return B.ags}}r=A.iv(a) +if(r==null)return null +return new A.Q9(r)}, +dwf(a,b){switch(b){case"ltr":return a.FP(B.j,t.Fu) +case"rtl":return a.FP(B.ae,t.Fu)}return a}, +dsd(a){var s,r,q,p=A.a([],t.s) +for(s=J.au(a);s.t();){r=s.gK(s) +if(r instanceof A.cx){q=A.hU(r) +if(q.length!==0)p.push(q)}}return p}, +dsi(a){switch(a){case"italic":return B.ur +case"normal":return B.uq}return null}, +dsk(a){if(a instanceof A.cx){if(a instanceof A.nd)switch(A.e6(a.c)){case 100:return B.nz +case 200:return B.Dq +case 300:return B.Dr +case 400:return B.T +case 500:return B.b5 +case 600:return B.f1 +case 700:return B.cc +case 800:return B.Dt +case 900:return B.nA}switch(A.hU(a)){case"bold":return B.cc}}return null}, +dwH(a,b){return a.FP(b,t.wB)}, +dwI(a){switch(a){case"normal":return B.n6 +case"nowrap":return B.tC +case"pre":return B.Cr}return null}, +dvK(a){var s=$.do1 +if(s!=null)s.ao(0) +$.dle=!1 +return}, +drx(a,b){return b>60&&b/a>0.15}, +drA(a,b){if(A.bI(a))if(A.bI(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}, +dx1(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.a1[f&255] +j=B.dT[s>>>8&255] +i=B.dV[r>>>16&255] +h=B.dW[q>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.a1[s&255]^B.dT[r>>>8&255]^B.dV[q>>>16&255]^B.dW[f>>>24&255]^g[1] +m=B.a1[r&255]^B.dT[q>>>8&255]^B.dV[f>>>16&255]^B.dW[s>>>24&255]^g[2] +l=B.a1[q&255]^B.dT[f>>>8&255]^B.dV[s>>>16&255]^B.dW[r>>>24&255]^g[3];++p +g=B.a1[o&255] +h=B.dT[n>>>8&255] +i=B.dV[m>>>16&255] +j=B.dW[l>>>24&255] +k=a[p] +f=g^h^i^j^k[0] +s=B.a1[n&255]^B.dT[m>>>8&255]^B.dV[l>>>16&255]^B.dW[o>>>24&255]^k[1] +r=B.a1[m&255]^B.dT[l>>>8&255]^B.dV[o>>>16&255]^B.dW[n>>>24&255]^k[2] +q=B.a1[l&255]^B.dT[o>>>8&255]^B.dV[n>>>16&255]^B.dW[m>>>24&255]^k[3];++p}k=B.a1[f&255] +j=B.dT[s>>>8&255] +i=B.dV[r>>>16&255] +h=B.dW[q>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.a1[s&255]^B.dT[r>>>8&255]^B.dV[q>>>16&255]^B.dW[f>>>24&255]^g[1] +m=B.a1[r&255]^B.dT[q>>>8&255]^B.dV[f>>>16&255]^B.dW[s>>>24&255]^g[2] +l=B.a1[q&255]^B.dT[f>>>8&255]^B.dV[s>>>16&255]^B.dW[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}, +dx0(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.a2[f&255] +j=B.dX[q>>>8&255] +i=B.dS[r>>>16&255] +h=B.dU[s>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.a2[s&255]^B.dX[f>>>8&255]^B.dS[q>>>16&255]^B.dU[r>>>24&255]^g[1] +m=B.a2[r&255]^B.dX[s>>>8&255]^B.dS[f>>>16&255]^B.dU[q>>>24&255]^g[2] +l=B.a2[q&255]^B.dX[r>>>8&255]^B.dS[s>>>16&255]^B.dU[f>>>24&255]^g[3];--p +g=B.a2[o&255] +h=B.dX[l>>>8&255] +i=B.dS[m>>>16&255] +j=B.dU[n>>>24&255] +k=a[p] +f=g^h^i^j^k[0] +s=B.a2[n&255]^B.dX[o>>>8&255]^B.dS[l>>>16&255]^B.dU[m>>>24&255]^k[1] +r=B.a2[m&255]^B.dX[n>>>8&255]^B.dS[o>>>16&255]^B.dU[l>>>24&255]^k[2] +q=B.a2[l&255]^B.dX[m>>>8&255]^B.dS[n>>>16&255]^B.dU[o>>>24&255]^k[3];--p}k=B.a2[f&255] +j=B.dX[q>>>8&255] +i=B.dS[r>>>16&255] +h=B.dU[s>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.a2[s&255]^B.dX[f>>>8&255]^B.dS[q>>>16&255]^B.dU[r>>>24&255]^g[1] +m=B.a2[r&255]^B.dX[s>>>8&255]^B.dS[f>>>16&255]^B.dU[q>>>24&255]^g[2] +l=B.a2[q&255]^B.dX[r>>>8&255]^B.dS[s>>>16&255]^B.dU[f>>>24&255]^g[3] +g=B.bv[o&255] +h=B.bv[l>>>8&255] +i=B.bv[m>>>16&255] +j=B.bv[n>>>24&255] +k=a[0] +f=(g^h<<8^i<<16^j<<24^k[0])>>>0 +s=(B.bv[n&255]&255^B.bv[o>>>8&255]<<8^B.bv[l>>>16&255]<<16^B.bv[m>>>24&255]<<24^k[1])>>>0 +r=(B.bv[m&255]&255^B.bv[n>>>8&255]<<8^B.bv[o>>>16&255]<<16^B.bv[l>>>24&255]<<24^k[2])>>>0 +q=(B.bv[l&255]&255^B.bv[m>>>8&255]<<8^B.bv[n>>>16&255]<<16^B.bv[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}, +dbZ(a,b){var s,r=new Uint8Array(b) +for(s=0;s":n=r?">":m +break +default:n=m}if(n!=null){if(q==null)q=new A.bu(B.c.R(a,0,p)) +q.a+=n}else if(q!=null)q.a+=o}if(q!=null){s=q.a +s=s.charCodeAt(0)==0?s:s}else s=a +return s}, +drR(a){var s +if(a==null)return B.ef +s=A.d6l(a) +return s==null?B.ef:s}, +dwu(a){return a}, +dwr(a){return a}, +dwK(a,b,c){var s,r,q,p +try{q=c.$0() +return q}catch(p){q=A.ag(p) +if(q instanceof A.Vd){s=q +throw A.d(A.ddM("Invalid "+a+": "+s.a,s.b,J.cEz(s)))}else if(t.bE.b(q)){r=q +throw A.d(A.bM("Invalid "+a+' "'+b+'": '+J.amz(r),J.cEz(r),J.d0Z(r)))}else throw p}}, +dgr(a){var s,r,q=A.a([],t.E5) +for(s=0;s1)q=A.cGV(a,B.b.bQ(B.b.cK(p,0,r-1),"_")) +s=$.cVa().i(0,b) +if(s!=null)q.L(0,t.GU.a(s)) +return q}, +bkR(a){var s=a/100 +return(s<=0.0031308?s*12.92:1.055*Math.pow(s,0.4166666666666667)-0.055)*255}, +cx9(a){var s=Math.pow(Math.abs(a),0.42) +return A.Kh(a)*400*s/(s+27.13)}, +cxb(a){var s=A.SF(a,$.d7S),r=A.cx9(s[0]),q=A.cx9(s[1]),p=A.cx9(s[2]) +return Math.atan2((r+q-2*p)/9,(11*r+-12*q+p)/11)}, +d7Q(a,b){var s,r,q,p,o,n=$.a3Q[0],m=$.a3Q[1],l=$.a3Q[2],k=B.d.M(b,4)<=1?0:100,j=B.d.M(b,2)===0?0:100 +if(b<4){s=(a-k*m-j*l)/n +r=0<=s&&s<=100 +q=t.n +if(r)return A.a([s,k,j],q) +else return A.a([-1,-1,-1],q)}else if(b<8){p=(a-j*n-k*l)/m +r=0<=p&&p<=100 +q=t.n +if(r)return A.a([j,p,k],q) +else return A.a([-1,-1,-1],q)}else{o=(a-k*n-j*m)/l +r=0<=o&&o<=100 +q=t.n +if(r)return A.a([k,j,o],q) +else return A.a([-1,-1,-1],q)}}, +d7I(a,b){var s,r,q,p,o,n,m,l,k=A.a([-1,-1,-1],t.n) +for(s=k,r=0,q=0,p=!1,o=!0,n=0;n<12;++n){m=A.d7Q(a,n) +if(m[0]<0)continue +l=A.cxb(m) +if(!p){q=l +r=q +s=m +k=s +p=!0 +continue}if(o||B.e.M(l-r+25.132741228718345,6.283185307179586)100.01||b>100.01||a>100.01)return 0 +return((A.PM(g)&255)<<16|(A.PM(f[1])&255)<<8|A.PM(f[2])&255|4278190080)>>>0}a1-=(a0-a9)*a1/(2*a0)}return 0}, +avb(a,b,c){var s,r,q,p +if(b<0.0001||c<0.0001||c>99.9999){s=A.PM(A.b9X(c)) +return A.cFY(s,s,s)}r=A.cxW(a)/180*3.141592653589793 +q=A.b9X(c) +p=A.d7M(r,b,q) +if(p!==0)return p +return A.d3j(A.d7G(q,r))}, +cFY(a,b,c){return((a&255)<<16|(b&255)<<8|c&255|4278190080)>>>0}, +d3j(a){return A.cFY(A.PM(a[0]),A.PM(a[1]),A.PM(a[2]))}, +cG_(a){return A.SF(A.a([A.p5(a>>>16&255),A.p5(a>>>8&255),A.p5(a&255)],t.n),$.apB)}, +b9X(a){return 100*A.d3g((a+16)/116)}, +p5(a){var s=a/255 +if(s<=0.040449936)return s/12.92*100 +else return Math.pow((s+0.055)/1.055,2.4)*100}, +PM(a){var s=a/100 +return A.d9S(0,255,B.e.aF((s<=0.0031308?s*12.92:1.055*Math.pow(s,0.4166666666666667)-0.055)*255))}, +cvJ(a){if(a>0.008856451679035631)return Math.pow(a,0.3333333333333333) +else return(903.2962962962963*a+16)/116}, +d3g(a){var s=a*a*a +if(s>0.008856451679035631)return s +else return(116*a-16)/903.2962962962963}, +Kh(a){if(a<0)return-1 +else if(a===0)return 0 +else return 1}, +d9U(a,b,c){return(1-c)*a+c*b}, +d9S(a,b,c){if(cb)return b +return c}, +cxW(a){a=B.e.M(a,360) +return a<0?a+360:a}, +SF(a,b){var s,r,q,p,o=a[0],n=b[0],m=n[0],l=a[1],k=n[1],j=a[2] +n=n[2] +s=b[1] +r=s[0] +q=s[1] +s=s[2] +p=b[2] +return A.a([o*m+l*k+j*n,o*r+l*q+j*s,o*p[0]+l*p[1]+j*p[2]],t.n)}, +aAo(a,b,c){var s=0,r=A.p(t.Xc),q,p +var $async$aAo=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=3 +return A.i(A.cBR("file://"+a),$async$aAo) +case 3:p=e?B.bk9:B.bka +q=new A.aAq(p) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$aAo,r)}, +crB(){var s,r,q,p,o=null +try{o=A.aHh()}catch(s){if(t.VI.b(A.ag(s))){r=$.coJ +if(r!=null)return r +throw s}else throw s}if(J.q(o,$.cPV)){r=$.coJ +r.toString +return r}$.cPV=o +if($.cCX()===$.amj())r=$.coJ=o.a5(".").k(0) +else{q=o.OY() +p=q.length-1 +r=$.coJ=p===0?q:B.c.R(q,0,p)}return r}, +doz(a){var s=null +return $.GS().auJ(0,a,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +cT0(a,b,c,d,e){var s=null +return $.GS().abx(0,a,b,c,d,e,s,s,s,s,s,s,s,s,s,s,s)}, +cSV(a){var s +if(!(a>=65&&a<=90))s=a>=97&&a<=122 +else s=!0 +return s}, +cSi(a,b){var s,r,q=null,p=a.length,o=b+2 +if(p"),p=A.b9(q) +for(;q.b(a);){if(b.aB(0,a))return c.h("bz<0>").a(b.i(0,a)) +else if(!p.B(0,a))throw A.d(A.a0("Recursive references detected: "+p.k(0))) +a=a.$ti.h("bz<1>").a(A.cL6(a.a,a.b,null))}for(q=A.dy(p,p.r,p.$ti.c),s=q.$ti.c;q.t();){r=q.d +b.n(0,r==null?s.a(r):r,a)}return a}, +do9(a){switch(a){case 8:return"\\b" +case 9:return"\\t" +case 10:return"\\n" +case 11:return"\\v" +case 12:return"\\f" +case 13:return"\\r" +case 34:return'\\"' +case 39:return"\\'" +case 92:return"\\\\"}if(a<32)return"\\x"+B.c.fm(B.d.k9(a,16),2,"0") +return A.cm(a)}, +dvG(a,b){return a}, +dvH(a,b){return b}, +dvF(a,b){return a.b<=b.b?b:a}, +cFx(a,b,c){var s,r,q=c?255:0 +for(s=a.length,r=0;r0){s=B.d.b2(a.goh(0)+7,3) +n=a.kZ(0,(s-1)*8) +m=$.d0t() +n=n.hM(0,m).bn(0,m) +r=n===0?1:0}else{s=B.d.b2(a.goh(0)+8,3) +r=0}q=s+r +p=new Uint8Array(q) +for(o=0;o=256;)a-=255 +return $.cDv()[a]}, +dkH(){var s,r=new Uint8Array(256) +for(s=0;s<8;++s)r[s]=B.d.TO(1,s) +for(s=8;s<256;++s)r[s]=r[s-4]^r[s-5]^r[s-6]^r[s-8] +return r}, +dkI(){var s,r=new Uint8Array(256) +for(s=0;s<255;++s)r[$.cDv()[s]]=s +return r}, +dp8(a){var s,r=a<<10>>>0 +for(s=r;A.Oi(s)-A.Oi(1335)>=0;)s=(s^B.d.hN(1335,A.Oi(s)-A.Oi(1335)))>>>0 +return((r|s)^21522)>>>0}, +dp9(a){var s,r=a<<12>>>0 +for(s=r;A.Oi(s)-A.Oi(7973)>=0;)s=(s^B.d.hN(7973,A.Oi(s)-A.Oi(7973)))>>>0 +return(r|s)>>>0}, +Oi(a){var s +for(s=0;a!==0;){++s +a=a>>>1}return s}, +cLL(a,b,c){var s=null +return A.b2(a,b,s,s,s,s,s,s,c,s,s)}, +E(a,b,c,d,e,f){var s=null +return A.bv(a,b,s,c,d,s,s,s,s,e,f,s,s,s,s)}, +bCd(a,b){return new A.fl(b,null,null,a,null)}, +nk(a){return A.eu(a,null,null,null)}, +cyM(a,b){var s=null +return A.dn(s,a,B.m,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,b,s,s,s,s,s,s,s,!1,B.ac)}, +Ur(a,b,c,d){var s=null +return A.a0c(!0,a,b,c,d,s,s,s,s,s)}, +iW(a,b,c){return new A.aA(new A.af(b,c,b,c),a,null)}, +wE(a,b,c,d,e){return new A.aA(new A.af(c,e,d,b),a,null)}, +cLM(a,b){return new A.iX(!0,b,!0,!0,B.L,!1,a,null)}, +aDC(a,b){var s=null +return A.uq(a,B.k,s,B.m,s,B.c5,s,b,s,s,!1,B.v)}, +i1(a,b,c,d){return A.eq(a,b,null,c,d,null,null,B.x)}, +dd(a,b,c,d,e){return A.cS(a,b,c,d,e,null,null,B.x)}, +a8y(a){return new A.d4(B.ar,null,B.am,B.k,a,null)}, +nl(a,b,c,d){return A.acf(B.eQ,a,B.i,b,B.a_,null,B.eQ,c,d,null,B.x)}, +dvj(a){var s,r,q +try{a.$0()}catch(q){s=A.ag(q) +r=A.aD(q) +$.at.qp(s,r)}}, +dvl(a,b){var s,r,q +try{a.$1(b)}catch(q){s=A.ag(q) +r=A.aD(q) +$.at.qp(s,r)}}, +dvi(a,b,c){var s,r,q +try{a.$2(b,c)}catch(q){s=A.ag(q) +r=A.aD(q) +$.at.qp(s,r)}}, +cTX(a,b,c,d){var s,r,q +try{a.$3(b,c,d)}catch(q){s=A.ag(q) +r=A.aD(q) +$.at.qp(s,r)}}, +cC0(a,b,c,d,e){var s,r,q +try{a.$4(b,c,d,e)}catch(q){s=A.ag(q) +r=A.aD(q) +$.at.qp(s,r)}}, +cJJ(a,b,c,d){return new A.dz(A.d9G(a,b,c,d),d.h("dz<0>"))}, +d9G(a,b,c,d){return function(){var s=a,r=b,q=c,p=d +var o=0,n=1,m,l,k,j,i +return function $async$cJJ(e,f,g){if(f===1){m=g +o=n}while(true)switch(o){case 0:l=s.length,k=0,j=0 +case 2:if(!(j\\\\:\\*\\|"]',!0,!1,!1) +q=A.cj(a,q,b) +s=A.b4("[\\x00-\\x1f\\x80-\\x9f]",!0,!1,!1) +r=B.c.jL(B.c.jL(B.c.jL(A.cj(q,s,b),A.b4("^\\.+$",!0,!1,!1),b),A.b4("^(con|prn|aux|nul|com[0-9]|lpt[0-9])(\\..*)?$",!1,!1,!1),b),A.b4("[\\. ]+$",!0,!1,!1),b) +return r.length>255?B.c.R(r,0,255):r}, +cyW(a,b){var s=0,r=A.p(t.vS),q +var $async$cyW=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q=$.cXW().tn(a,b,null,null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cyW,r)}, +d8U(a){var s,r,q=A.a([],t.s) +for(s=0;s=9?A.b7(s):A.b7(s)-1 +return new A.h_(r,A.bp(s)>=3&&A.bp(s)<=7?B.jJ:B.eM)}, +cNS(){return $.dh2.I()}, +cNT(){return $.dh3.I()}, +dh4(){return $.dh0.I()}, +cNR(){return $.dh1.I()}, +b55(a){return A.d1Y(a)}, +d1Y(a){var s=0,r=A.p(t.R),q,p=2,o,n,m,l,k,j,i,h +var $async$b55=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i($.a4m.I().bEc($.cUz(),B.iD.gyU().cD(a),t.z),$async$b55) +case 7:n=c +m=n.a +j=J.q(J.aS(m,"code"),0)?A.bw(J.aS(m,"data")):null +q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +l=A.ag(h) +k=A.aD(h) +A.ll(l,k) +q=null +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$b55,r)}, +cxi(){var s=0,r=A.p(t.H),q +var $async$cxi=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fk().$1("Initializing hive adapters") +q=$.cCy() +A.fk().$1("Register core Hive type") +A.ev(q,new A.a9J(),t.FW) +A.ev(q,new A.abS(),t.A4) +A.ev(q,new A.ab6(),t.jm) +A.ev(q,new A.a0a(),t.lD) +A.ev(q,new A.a16(),t.W8) +A.ev(q,new A.a58(),t.xk) +A.ev(q,new A.a6v(),t.pL) +A.ev(q,new A.a7l(),t.uX) +q=$.cCx() +A.fk().$1("Register cache Hive type") +A.ev(q,new A.a2t(),t.JK) +A.ev(q,new A.a0z(),t.pb) +A.ev(q,new A.a0t(),t.wI) +A.ev(q,new A.a0E(),t.wS) +A.ev(q,new A.a0v(),t.o6) +A.ev(q,new A.a0w(),t.mZ) +A.ev(q,new A.a0B(),t.mv) +A.ev(q,new A.a0x(),t.pf) +A.ev(q,new A.a0C(),t.id) +A.ev(q,new A.a6q(),t.mV) +A.ev(q,new A.a6u(),t.Jq) +A.ev(q,new A.a6o(),t.vr) +A.ev(q,new A.acs(),t.bl) +A.ev(q,new A.acu(),t.sB) +A.ev(q,new A.acq(),t.Rd) +A.ev(q,new A.aco(),t.Ba) +A.ev(q,new A.acp(),t.sn) +A.ev(q,new A.a2Q(),t.RG) +A.ev(q,new A.a2M(),t.y8) +A.ev(q,new A.abE(),t.C8) +A.ev(q,new A.a2O(),t.K3) +A.ev(q,new A.abw(),t.uj) +A.ev(q,new A.abx(),t.Nk) +A.ev(q,new A.a8R(),t.Q4) +A.ev(q,new A.a_K(),t.fk) +A.ev(q,new A.a_Q(),t.qt) +A.ev(q,new A.a_V(),t.Au) +A.ev(q,new A.a_M(),t.Ma) +A.ev(q,new A.a_N(),t.Ef) +A.ev(q,new A.a_R(),t.WZ) +A.ev(q,new A.a9j(),t.mK) +A.ev(q,new A.a9k(),t.is) +A.ev(q,new A.a14(),t.wj) +return A.n(null,r)}}) +return A.o($async$cxi,r)}, +w7(){var s=0,r=A.p(t.H),q,p,o,n,m,l,k,j +var $async$w7=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fk().$1("Initializing hive box") +q=$.cCy() +p=t.z +s=2 +return A.i(q.rT("credentials",p),$async$w7) +case 2:o=b +$.iy.b=o +s=3 +return A.i(q.rT("settings",p),$async$w7) +case 3:n=b +$.cIG.b=n +s=4 +return A.i(q.rT("meta",p),$async$w7) +case 4:m=b +$.cIF.b=m +s=5 +return A.i(q.rT("timetable",p),$async$w7) +case 5:l=b +$.avm.b=l +s=6 +return A.i(q.rT("dev",p),$async$w7) +case 6:k=b +$.cIE.b=k +j=t.iZ +k=A.a([o,n,m,l,k],j) +l=$.cCx() +s=7 +return A.i(l.rT("yellow-pages",p),$async$w7) +case 7:m=b +$.blp.b=m +s=8 +return A.i(l.rT("edu-email",p),$async$w7) +case 8:l=b +$.d7Y.b=l +s=9 +return A.i(q.rT("game",p),$async$w7) +case 9:p=b +$.avl.b=p +j=A.a([m,l,p],j) +$.cID.b=j +B.b.L(k,j) +$.cxh.b=A.d7Z(k) +$.cn.b=new A.bFs($.cIG.I()) +$.eN.b=new A.bcz($.cIE.I()) +$.cnV.b=new A.bss($.cIF.I()) +return A.n(null,r)}}) +return A.o($async$w7,r)}, +d7Z(a){var s,r,q,p=A.N(t.N,t.PG) +for(s=a.length,r=0;r223)A.C(A.ij("TypeId "+s+" not allowed.")) +s+=32 +if(a.a.i(0,s)==null){a.bFz(b,c) +A.fk().$1("Register type adapter of "+A.c6(c).k(0)+" at "+b.gf_())}}, +dbC(a){var s=A.bw(J.aS(a.a,"life.mysit.SITLife.installTime")) +if(s==null)return null +return A.bbK(s)}, +do_(a){var s,r,q,p=null +if(a==null)return p +s=a.split(",") +if(s.length!==2)return p +r=A.cY(s[0],p) +q=A.cY(s[1],p) +if(r==null||q==null)return p +return new A.V(r,q)}, +dfy(a,b){if(J.h3(a.ghQ()))return B.x3 +return J.aS(a.ghQ(),B.d.M(b,J.bn(a.ghQ())))}, +apu(a,b){return b.ay.a===B.aN?a.a:a.b}, +cFu(a,b){var s=a.adO(),r=A.cd((s>>>9&8191)+b,s>>>5&31,s&31,0,0,0,0,!1) +if(!A.bI(r))A.C(A.bV(r)) +return new A.am(r,!1)}, +dte(a){if(B.d.M(a,400)===0)return!0 +if(B.d.M(a,4)===0&&B.d.M(a,100)!==0)return!0 +return!1}, +crD(a,b){var s +$label0$0:{if(1===a){s=31 +break $label0$0}if(2===a){s=A.dte(b)?29:28 +break $label0$0}if(3===a){s=31 +break $label0$0}if(4===a){s=30 +break $label0$0}if(5===a){s=31 +break $label0$0}if(6===a){s=30 +break $label0$0}if(7===a){s=31 +break $label0$0}if(8===a){s=31 +break $label0$0}if(9===a){s=30 +break $label0$0}if(10===a){s=31 +break $label0$0}if(11===a){s=30 +break $label0$0}if(12===a){s=31 +break $label0$0}s=30 +break $label0$0}return s}, +drq(a,b,c){var s,r +for(s=0,r=1;r=0&&s[r]==="0"))break;--r +if(r>=0&&s[r]==="."){--r +break}}return B.c.R(s,0,r+1)}return s}, +cSI(a,b){var s,r,q,p,o,n,m,l,k,j,i=A.cQk(a),h=i.a,g=i.b,f=g==null +if(!f)s=b.length<=1 +else s=!1 +if(s)return h+(g+1) +s=b.length +if(s<=1)return a+" 2" +r=A.a([],t.t) +for(s=b.length,q=h+" ",p=0;p")),q=q.h("aa.E");r.t();){p=r.d +if(!J.q(p==null?q.a(p):p,s))return!1}return!0}, +dvb(a,b){var s=B.b.c2(a,null) +if(s<0)throw A.d(A.aM(A.r(a)+" contains no null elements.",null)) +a[s]=b}, +cTV(a,b){var s=B.b.c2(a,b) +if(s<0)throw A.d(A.aM(A.r(a)+" contains no elements matching "+b.k(0)+".",null)) +a[s]=null}, +drb(a,b){var s,r,q,p +for(s=new A.e0(a),r=t.Hz,s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("a2.E"),q=0;s.t();){p=s.d +if((p==null?r.a(p):p)===b)++q}return q}, +cs9(a,b,c){var s,r,q +if(b.length===0)for(s=0;!0;){r=B.c.hj(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.c2(a,b) +for(;r!==-1;){q=r===0?0:B.c.wt(a,"\n",r-1)+1 +if(c===r-q)return q +r=B.c.hj(a,b,r+1)}return null}, +DN(a){var s,r=J.au(a) +if(!r.t())return 0 +s=r.gK(r) +for(;r.t();)s+=r.gK(r) +return s}, +cUm(a,b,c,d){var s=c!=null +if(s)if(c<0)throw A.d(A.b8("position must be greater than or equal to 0.")) +else if(c>a.length)throw A.d(A.b8("position must be less than or equal to the string length.")) +if(s&&d!=null&&c+d>a.length)throw A.d(A.b8("position plus length must not go beyond the end of the string."))}, +d9s(a){var s +$.wm=$.wm+1 +try{s=a.$0() +return s}finally{s=$.wm-1 +$.wm=s +if(s===0)A.cJz()}}, +a5b(a,b){return A.d9r(a,b,b)}, +d9r(a,b,c){var s=0,r=A.p(c),q,p=2,o,n=[],m +var $async$a5b=A.l(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:$.wm=$.wm+1 +p=3 +s=6 +return A.i(a.$0(),$async$a5b) +case 6:m=e +q=m +n=[1] +s=4 +break +n.push(5) +s=4 +break +case 3:n=[2] +case 4:p=2 +m=$.wm-1 +$.wm=m +if(m===0)A.cJz() +s=n.pop() +break +case 5:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$a5b,r)}, +cJz(){var s,r +for(s=$.wl.length,r=0;r<$.wl.length;$.wl.length===s||(0,A.Q)($.wl),++r)$.wl[r].$0() +B.b.V($.wl)}, +dlD(a,b){var s,r,q,p,o,n,m,l=a.a,k=2*b,j=l+k,i=a.b +k=i+k +s=j*4 +r=new Uint8Array(j*k*4) +for(q=b*4,l=(b+l)*4,p=a.d,o=a.c,n=0;n>>10&31,m=p&1023 +if(n===0){if(m!==0){a.setUint32(0,1056964608+m,!1) +s=a.getFloat32(0,!1)-$.cVY().getFloat32(0,!1) +return o===0?s:-s}r=0 +q=0}else{q=m<<13 +if(n===31){if(q!==0)q|=4194304 +r=255}else r=n-15+127}a.setUint32(0,(o<<16|r<<23|q)>>>0,!1) +return a.getFloat32(0,!1)}, +m_(a,b){if(a==null)return null +a=B.c.du(B.c.jL(B.c.jL(B.c.jL(B.c.jL(B.c.jL(a,"rem",""),"em",""),"ex",""),"px",""),"pt","")) +if(b)return A.zW(a) +return A.pO(a)}, +j6(a,b,c){var s,r,q=null,p=a==null,o=p?q:B.c.p(a,"pt") +if(o===!0)s=1.3333333333333333 +else{o=p?q:B.c.p(a,"rem") +if(o===!0)s=b.b +else{o=p?q:B.c.p(a,"em") +if(o===!0)s=b.b +else{p=p?q:B.c.p(a,"ex") +s=p===!0?b.c:1}}}r=A.m_(a,c) +return r!=null?r*s:q}, +dnq(a){var s,r,q,p,o,n,m,l=A.a([],t.n) +for(s=a.length,r="",q=0;q0&&a[q-1].toLowerCase()==="e" +if(o&&!n){if(r!==""){m=A.m_(r,!1) +m.toString +l.push(m)}r=p==="-"?"-":""}else{if(p===".")if(A.r6(r,".",0)){m=A.m_(r,!1) +m.toString +l.push(m) +r=""}r+=p}}if(r.length!==0){s=A.m_(r,!1) +s.toString +l.push(s)}return l}, +b2c(a){var s,r,q,p,o,n,m,l,k +if(a==null||a==="")return null +s=$.d09() +if(!s.b.test(a))throw A.d(A.a0("illegal or unsupported transform: "+a)) +s=$.d08().kt(0,a) +s=A.R(s,!0,A.z(s).h("B.E")) +r=A.X(s).h("bE<1>") +q=new A.bE(s,r) +for(s=new A.bj(q,q.gA(0),r.h("bj")),r=r.h("aa.E"),p=B.cx;s.t();){o=s.d +if(o==null)o=r.a(o) +n=o.ex(1) +n.toString +m=B.c.du(n) +o=o.ex(2) +o.toString +l=A.dnq(B.c.du(o)) +k=B.aXY.i(0,m) +if(k==null)throw A.d(A.a0("Unsupported transform: "+m)) +p=k.$2(l,p)}return p}, +dnk(a,b){return A.xQ(a[0],a[1],a[2],a[3],a[4],a[5],null).ky(b)}, +dnn(a,b){return A.xQ(1,0,Math.tan(B.b.ga2(a)),1,0,0,null).ky(b)}, +dno(a,b){return A.xQ(1,Math.tan(B.b.ga2(a)),0,1,0,0,null).ky(b)}, +dnp(a,b){var s=a.length<2?0:a[1] +return A.xQ(1,0,0,1,B.b.ga2(a),s,null).ky(b)}, +dnm(a,b){var s=a[0] +return A.xQ(s,0,0,a.length<2?s:a[1],0,0,null).ky(b)}, +dnl(a,b){var s,r,q=B.cx.bGu(a[0]*3.141592653589793/180),p=a.length +if(p>1){s=a[1] +r=p===3?a[2]:s +return A.xQ(1,0,0,1,s,r,null).ky(q).P3(-s,-r).ky(b)}else return q.ky(b)}, +cTr(a){if(a==="inherit"||a==null)return null +return a!=="evenodd"?B.em:B.bh2}, +BF(a){var s +if(A.cT_(a))return A.cTq(a,1) +else{s=A.m_(a,!1) +s.toString +return s}}, +cTq(a,b){var s=A.m_(B.c.R(a,0,a.length-1),!1) +s.toString +return s/100*b}, +cT_(a){var s=B.c.eV(a,"%") +return s}, +cTp(a,b,c){var s,r,q +if(c!=null)if(b==="width")s=c.r +else s=b==="height"?c.w:null +else s=null +if(B.c.p(a,"%")){r=A.pO(B.c.R(a,0,a.length-1)) +s.toString +q=r/100*s}else if(B.c.aC(a,"0.")){r=A.pO(a) +s.toString +q=r*s}else q=a.length!==0?A.pO(a):null +return q}, +r4(a,b){var s +if(a==null)return b==null +if(b==null||a.length!==b.length)return!1 +if(a===b)return!0 +for(s=0;s")) +g.dD(i,0,2,h.h("a2.E")) +B.b.L(j,g) +c4.a.push(l) +l=k.length +c3.setUint32(0,l,!0) +g=c4.a +j=c4.d +i=A.bk(j) +h=new A.b3(j,0,4,i.h("b3")) +h.dD(j,0,4,i.h("a2.E")) +B.b.L(g,h) +h=c4.a +g=k.buffer +k=k.byteOffset +l=new Uint8Array(g,k,l) +B.b.L(h,l)}for(p=c5.c,o=p.length,n=0;l=p.length,n")) +g.dD(i,0,4,h.h("a2.E")) +B.b.L(o,g) +c4.a.push(k.a) +c3.setUint16(0,j,!0) +k=c4.a +g=c4.d +o=A.bk(g) +i=new A.b3(g,0,2,o.h("b3")) +i.dD(g,0,2,o.h("a2.E")) +B.b.L(k,i) +c3.setUint16(0,b==null?c0:b,!0) +o=c4.a +k=c4.d +i=A.bk(k) +h=new A.b3(k,0,2,i.h("b3")) +h.dD(k,0,2,i.h("a2.E")) +B.b.L(o,h) +s.n(0,e,j)}if(c!=null){b=q.i(0,c.b) +o=c.a +k=c.c +k=k==null?b9:k.a +if(k==null)k=0 +j=c.d +j=j==null?b9:j.a +if(j==null)j=0 +i=f.a +h=c.e +if(h==null)h=4 +g=c.f +if(g==null)g=1 +c4.lt(B.a_l) +a=c4.e++ +c4.a.push(29) +c3.setUint32(0,o.a,!0) +o=c4.a +a0=c4.d +a1=A.bk(a0) +a2=new A.b3(a0,0,4,a1.h("b3")) +a2.dD(a0,0,4,a1.h("a2.E")) +B.b.L(o,a2) +c4.a.push(k) +c4.a.push(j) +c4.a.push(i.a) +c3.setFloat32(0,h,!0) +h=c4.a +i=c4.d +o=A.bk(i) +k=new A.b3(i,0,4,o.h("b3")) +k.dD(i,0,4,o.h("a2.E")) +B.b.L(h,k) +c3.setFloat32(0,g,!0) +g=c4.a +k=c4.d +o=A.bk(k) +j=new A.b3(k,0,4,o.h("b3")) +j.dD(k,0,4,o.h("a2.E")) +B.b.L(g,j) +c3.setUint16(0,a,!0) +j=c4.a +g=c4.d +o=A.bk(g) +k=new A.b3(g,0,2,o.h("b3")) +k.dD(g,0,2,o.h("a2.E")) +B.b.L(j,k) +c3.setUint16(0,b==null?c0:b,!0) +o=c4.a +k=c4.d +j=A.bk(k) +i=new A.b3(k,0,2,j.h("b3")) +i.dD(k,0,2,j.h("a2.E")) +B.b.L(o,i) +r.n(0,e,a)}++e}a3=A.N(c2,c2) +for(c2=c5.d,p=c2.length,o=t.ZC,l=t.n,k=t.JO,j=t.wd,a4=0,n=0;n")) +a2.dD(a0,0,2,a1.h("a2.E")) +B.b.L(g,a2) +a2=i.length +c3.setUint32(0,a2,!0) +g=c4.a +a1=c4.d +a0=A.bk(a1) +b0=new A.b3(a1,0,4,a0.h("b3")) +b0.dD(a1,0,4,a0.h("a2.E")) +B.b.L(g,b0) +b0=c4.a +g=i.buffer +i=i.byteOffset +i=new Uint8Array(g,i,a2) +B.b.L(b0,i) +i=h.length +c3.setUint32(0,i,!0) +g=c4.a +a0=c4.d +a1=A.bk(a0) +a2=new A.b3(a0,0,4,a1.h("b3")) +a2.dD(a0,0,4,a1.h("a2.E")) +B.b.L(g,a2) +g=c4.a +b1=B.d.M(g.length,4) +if(b1!==0){a0=$.OB() +a1=4-b1 +a2=A.bk(a0) +b0=new A.b3(a0,0,a1,a2.h("b3")) +b0.dD(a0,0,a1,a2.h("a2.E")) +B.b.L(g,b0)}g=c4.a +a0=h.buffer +h=h.byteOffset +i=new Uint8Array(a0,h,4*i) +B.b.L(g,i) +a3.n(0,a4,a);++a4}for(c2=c5.y,p=c2.length,n=0;n")) +a1.dD(a,0,2,a0.h("a2.E")) +B.b.L(g,a1) +c3.setFloat32(0,o==null?0/0:o,!0) +o=c4.a +g=c4.d +a=A.bk(g) +a0=new A.b3(g,0,4,a.h("b3")) +a0.dD(g,0,4,a.h("a2.E")) +B.b.L(o,a0) +c3.setFloat32(0,l==null?0/0:l,!0) +o=c4.a +l=c4.d +g=A.bk(l) +a=new A.b3(l,0,4,g.h("b3")) +a.dD(l,0,4,g.h("a2.E")) +B.b.L(o,a) +c3.setFloat32(0,k==null?0/0:k,!0) +o=c4.a +l=c4.d +k=A.bk(l) +g=new A.b3(l,0,4,k.h("b3")) +g.dD(l,0,4,k.h("a2.E")) +B.b.L(o,g) +c3.setFloat32(0,j==null?0/0:j,!0) +o=c4.a +l=c4.d +k=A.bk(l) +j=new A.b3(l,0,4,k.h("b3")) +j.dD(l,0,4,k.h("a2.E")) +B.b.L(o,j) +o=i?1:0 +c4.a.push(o) +o=c4.a +if(h!=null){l=h.length +o.push(l) +o=c4.a +b1=B.d.M(o.length,8) +if(b1!==0){k=$.OB() +j=8-b1 +i=A.bk(k) +g=new A.b3(k,0,j,i.h("b3")) +g.dD(k,0,j,i.h("a2.E")) +B.b.L(o,g)}o=c4.a +k=h.buffer +h=h.byteOffset +l=new Uint8Array(k,h,8*l) +B.b.L(o,l)}else o.push(0)}for(c2=c5.f,p=c2.length,n=0;n")) +b0.dD(a1,0,2,a2.h("a2.E")) +B.b.L(a0,b0) +c3.setFloat32(0,k,!0) +k=c4.a +b0=c4.d +a0=A.bk(b0) +a1=new A.b3(b0,0,4,a0.h("b3")) +a1.dD(b0,0,4,a0.h("a2.E")) +B.b.L(k,a1) +c3.setFloat32(0,i,!0) +i=c4.a +a1=c4.d +k=A.bk(a1) +a0=new A.b3(a1,0,4,k.h("b3")) +a0.dD(a1,0,4,k.h("a2.E")) +B.b.L(i,a0) +c4.a.push(j.a) +c4.a.push(h.a) +c4.a.push(g.a) +c3.setUint32(0,a.a,!0) +a=c4.a +g=c4.d +k=A.bk(g) +j=new A.b3(g,0,4,k.h("b3")) +j.dD(g,0,4,k.h("a2.E")) +B.b.L(a,j) +if(l!=null){b4=B.bo.cD(l) +l=b4.length +c3.setUint16(0,l,!0) +k=c4.a +j=c4.d +i=A.bk(j) +h=new A.b3(j,0,2,i.h("b3")) +h.dD(j,0,2,i.h("a2.E")) +B.b.L(k,h) +h=c4.a +k=b4.buffer +i=b4.byteOffset +l=new Uint8Array(k,i,l) +B.b.L(h,l)}else{c3.setUint16(0,0,!0) +l=c4.a +k=c4.d +j=A.bk(k) +i=new A.b3(k,0,2,j.h("b3")) +i.dD(k,0,2,j.h("a2.E")) +B.b.L(l,i)}b4=B.bo.cD(o) +o=b4.length +c3.setUint16(0,o,!0) +l=c4.a +k=c4.d +j=A.bk(k) +i=new A.b3(k,0,2,j.h("b3")) +i.dD(k,0,2,j.h("a2.E")) +B.b.L(l,i) +i=c4.a +l=b4.buffer +j=b4.byteOffset +o=new Uint8Array(l,j,o) +B.b.L(i,o)}for(c2=c5.z,p=c2.length,o=c5.w,l=c5.x,k=c5.e,n=0;n")) +a0.dD(g,0,2,a.h("a2.E")) +B.b.L(j,a0) +c3.setUint16(0,i.gA(i),!0) +a0=c4.a +j=c4.d +g=A.bk(j) +a=new A.b3(j,0,2,g.h("b3")) +a.dD(j,0,2,g.h("a2.E")) +B.b.L(a0,a) +a=c4.a +b1=B.d.M(a.length,4) +if(b1!==0){j=$.OB() +g=4-b1 +a0=A.bk(j) +a1=new A.b3(j,0,g,a0.h("b3")) +a1.dD(j,0,g,a0.h("a2.E")) +B.b.L(a,a1)}j=c4.a +g=i.buffer +a=i.byteOffset +i=i.gA(i) +i=new Uint8Array(g,a,4*i) +B.b.L(j,i) +c3.setUint16(0,h.gA(h),!0) +j=c4.a +i=c4.d +g=A.bk(i) +a=new A.b3(i,0,2,g.h("b3")) +a.dD(i,0,2,g.h("a2.E")) +B.b.L(j,a) +a=c4.a +b1=B.d.M(a.length,2) +if(b1!==0){j=$.OB() +i=2-b1 +g=A.bk(j) +a0=new A.b3(j,0,i,g.h("b3")) +a0.dD(j,0,i,g.h("a2.E")) +B.b.L(a,a0)}j=c4.a +i=h.buffer +g=h.byteOffset +h=h.gA(h) +i=new Uint8Array(i,g,2*h) +B.b.L(j,i) +break +case 2:j=s.i(0,a9.d) +j.toString +c4.lt(B.eR) +c4.vn() +c4.a.push(37) +c3.setUint16(0,j,!0) +j=c4.a +i=c4.d +h=A.bk(i) +g=new A.b3(i,0,2,h.h("b3")) +g.dD(i,0,2,h.h("a2.E")) +B.b.L(j,g) +break +case 3:c4.lt(B.eR) +c4.vn() +c4.a.push(38) +break +case 4:j=a3.i(0,a9.c) +j.toString +c4.lt(B.eR) +c4.vn() +c4.a.push(42) +c3.setUint16(0,j,!0) +j=c4.a +i=c4.d +h=A.bk(i) +g=new A.b3(i,0,2,h.h("b3")) +g.dD(i,0,2,h.h("a2.E")) +B.b.L(j,g) +break +case 5:c4.lt(B.eR) +c4.vn() +c4.a.push(43) +break +case 8:j=a9.f +j.toString +b6=l[j] +j=b6.a +i=b6.b +h=b6.c +g=b6.d +a=b6.e.Dc() +c4.lt(B.eR) +a0=c4.z++ +c4.a.push(49) +c3.setUint16(0,a0,!0) +a0=c4.a +a1=c4.d +a2=A.bk(a1) +b0=new A.b3(a1,0,2,a2.h("b3")) +b0.dD(a1,0,2,a2.h("a2.E")) +B.b.L(a0,b0) +c3.setFloat32(0,j,!0) +j=c4.a +b0=c4.d +a0=A.bk(b0) +a1=new A.b3(b0,0,4,a0.h("b3")) +a1.dD(b0,0,4,a0.h("a2.E")) +B.b.L(j,a1) +c3.setFloat32(0,i,!0) +i=c4.a +a1=c4.d +j=A.bk(a1) +a0=new A.b3(a1,0,4,j.h("b3")) +a0.dD(a1,0,4,j.h("a2.E")) +B.b.L(i,a0) +c3.setFloat32(0,h,!0) +h=c4.a +a0=c4.d +j=A.bk(a0) +i=new A.b3(a0,0,4,j.h("b3")) +i.dD(a0,0,4,j.h("a2.E")) +B.b.L(h,i) +c3.setFloat32(0,g,!0) +g=c4.a +i=c4.d +j=A.bk(i) +h=new A.b3(i,0,4,j.h("b3")) +h.dD(i,0,4,j.h("a2.E")) +B.b.L(g,h) +j=a.length +c4.a.push(j) +i=c4.a +b1=B.d.M(i.length,8) +if(b1!==0){h=$.OB() +g=8-b1 +a0=A.bk(h) +a1=new A.b3(h,0,g,a0.h("b3")) +a1.dD(h,0,g,a0.h("a2.E")) +B.b.L(i,a1)}i=c4.a +h=a.buffer +a=a.byteOffset +j=new Uint8Array(h,a,8*j) +B.b.L(i,j) +break +case 9:j=a9.c +j.toString +c4.lt(B.eR) +c4.vn() +c4.a.push(51) +c3.setUint16(0,j,!0) +j=c4.a +i=c4.d +h=A.bk(i) +g=new A.b3(i,0,2,h.h("b3")) +g.dD(i,0,2,h.h("a2.E")) +B.b.L(j,g) +break +case 6:j=a9.c +j.toString +i=a9.d +h=s.i(0,i) +i=r.i(0,i) +g=a9.e +c4.lt(B.eR) +c4.vn() +c4.a.push(44) +c3.setUint16(0,j,!0) +j=c4.a +a=c4.d +a0=A.bk(a) +a1=new A.b3(a,0,2,a0.h("b3")) +a1.dD(a,0,2,a0.h("a2.E")) +B.b.L(j,a1) +c3.setUint16(0,h==null?c0:h,!0) +j=c4.a +h=c4.d +a=A.bk(h) +a0=new A.b3(h,0,2,a.h("b3")) +a0.dD(h,0,2,a.h("a2.E")) +B.b.L(j,a0) +c3.setUint16(0,i==null?c0:i,!0) +j=c4.a +i=c4.d +h=A.bk(i) +a=new A.b3(i,0,2,h.h("b3")) +a.dD(i,0,2,h.h("a2.E")) +B.b.L(j,a) +c3.setUint16(0,g==null?c0:g,!0) +j=c4.a +i=c4.d +h=A.bk(i) +g=new A.b3(i,0,2,h.h("b3")) +g.dD(i,0,2,h.h("a2.E")) +B.b.L(j,g) +break +case 7:j=a9.c +j.toString +b7=o[j] +j=b7.a +i=b7.b +h=i.a +g=i.b +a=b7.c +a=a==null?b9:a.Dc() +c4.lt(B.eR) +c4.vn() +c4.a.push(47) +c3.setUint16(0,j,!0) +j=c4.a +a0=c4.d +a1=A.bk(a0) +a2=new A.b3(a0,0,2,a1.h("b3")) +a2.dD(a0,0,2,a1.h("a2.E")) +B.b.L(j,a2) +c3.setFloat32(0,h,!0) +a2=c4.a +j=c4.d +a0=A.bk(j) +a1=new A.b3(j,0,4,a0.h("b3")) +a1.dD(j,0,4,a0.h("a2.E")) +B.b.L(a2,a1) +c3.setFloat32(0,g,!0) +a1=c4.a +a2=c4.d +j=A.bk(a2) +a0=new A.b3(a2,0,4,j.h("b3")) +a0.dD(a2,0,4,j.h("a2.E")) +B.b.L(a1,a0) +c3.setFloat32(0,i.c-h,!0) +h=c4.a +a0=c4.d +j=A.bk(a0) +a1=new A.b3(a0,0,4,j.h("b3")) +a1.dD(a0,0,4,j.h("a2.E")) +B.b.L(h,a1) +c3.setFloat32(0,i.d-g,!0) +g=c4.a +i=c4.d +j=A.bk(i) +h=new A.b3(i,0,4,j.h("b3")) +h.dD(i,0,4,j.h("a2.E")) +B.b.L(g,h) +j=c4.a +if(a!=null){i=a.length +j.push(i) +j=c4.a +b1=B.d.M(j.length,8) +if(b1!==0){h=$.OB() +g=8-b1 +a0=A.bk(h) +a1=new A.b3(h,0,g,a0.h("b3")) +a1.dD(h,0,g,a0.h("a2.E")) +B.b.L(j,a1)}j=c4.a +h=a.buffer +a=a.byteOffset +i=new Uint8Array(h,a,8*i) +B.b.L(j,i)}else j.push(0) +break}}if(c4.b)A.C(A.a0("done() must not be called more than once on the same VectorGraphicsBuffer.")) +b8=A.fe(new Uint8Array(A.f1(c4.a)).buffer,0,b9) +c4.a=A.a([],c1) +c4.b=!0 +return A.dF(b8.buffer,0,b9)}, +dpV(a){if(isFinite(a))return A.cp(0,0,0,B.e.aF(a*1000),0,0) +else if(a==1/0||a==-1/0)return B.ahZ +return null}, +cBA(a,b){var s=0,r=A.p(t.H),q,p +var $async$cBA=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=A.dmi(A.a([A.dmL(b,a)],t.s)) +q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$cBA,r)}, +dmL(a,b){var s="./assets/packages/" +if(B.c.aC(a,"./"))return s+b+"/"+B.c.jL(a,"./","") +if(B.c.aC(a,"assets/"))return s+b+"/"+a +else return a}, +dmi(a){var s,r,q,p,o,n=A.a([],t.mo),m=self,l=m.document.head +for(s=t.Ds,r=0;r<1;++r){q=a[r] +p=m.document.head +p.toString +if(!A.dmw(p,q)){o=m.document.createElement("script") +o.type="text/javascript" +o.charset="utf-8" +o.async=!0 +o.src=q +l.toString +l.appendChild.apply(l,[o]) +n.push(new A.aev(o,"load",!1,s).ga2(0))}}return A.ma(n,!1,t.H)}, +dmw(a,b){var s,r,q,p,o +if(B.c.aC(b,"./"))b=B.c.jL(b,"./","") +for(s=t.lZ,r=t.Dm,q=0;qr){p.a1J() +p.b=A.d3(A.cp(0,0,0,r-q,0,0),p.ga6g())}p.c=a}, +a1J(){var s=this.b +if(s!=null)s.ao(0) +this.b=null}, +bjM(){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.d3(A.cp(0,0,0,q-p,0,0),s.ga6g())}} +A.b3R.prototype={ +Fw(){var s=0,r=A.p(t.H),q=this,p +var $async$Fw=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.$0(),$async$Fw) +case 2:p=q.b.$0() +s=3 +return A.i(t.L0.b(p)?p:A.dO(p,t.z),$async$Fw) +case 3:return A.n(null,r)}}) +return A.o($async$Fw,r)}, +bEd(){return A.d79(new A.b3V(this),new A.b3W(this))}, +bes(){return A.d76(new A.b3S(this))}, +aqb(){return A.d77(new A.b3T(this),new A.b3U(this))}} +A.b3V.prototype={ +$0(){var s=0,r=A.p(t.e),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.i(o.Fw(),$async$$0) +case 3:q=o.aqb() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:955} +A.b3W.prototype={ +$1(a){return this.aHf(a)}, +$0(){return this.$1(null)}, +aHf(a){var s=0,r=A.p(t.e),q,p=this,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.i(o.a.$1(a),$async$$1) +case 3:q=o.bes() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:434} +A.b3S.prototype={ +$1(a){return this.aHc(a)}, +$0(){return this.$1(null)}, +aHc(a){var s=0,r=A.p(t.e),q,p=this,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a +n=o.b.$0() +s=3 +return A.i(t.L0.b(n)?n:A.dO(n,t.z),$async$$1) +case 3:q=o.aqb() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:434} +A.b3T.prototype={ +$1(a){return this.aHe(a)}, +aHe(a){var s=0,r=A.p(t.S),q,p,o,n,m,l +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=$.cf().gis() +m=n.a +l=a.hostElement +l.toString +p=$.cQW +$.cQW=p+1 +o=new A.aOp(p,m,A.cI_(l),B.k0,A.cGL(l)) +o.ahS(p,m,l) +n.aEw(o,a) +q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:1027} +A.b3U.prototype={ +$1(a){return this.aHd(a)}, +aHd(a){var s=0,r=A.p(t.kC),q +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=$.cf().gis().ayK(a) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:1448} +A.a01.prototype={ +H(){return"BrowserEngine."+this.b}} +A.zE.prototype={ +H(){return"OperatingSystem."+this.b}} +A.b8k.prototype={ +gdz(a){var s=this.d +if(s==null){this.akf() +s=this.d}s.toString +return s}, +ghu(){if(this.y==null)this.akf() +var s=this.e +s.toString +return s}, +akf(){var s,r,q,p,o,n,m,l,k=this,j=!1,i=null,h=k.y +if(h!=null){A.Cu(h,0) +h=k.y +h.toString +A.Ct(h,0) +k.y=null}h=k.x +if(h!=null&&h.length!==0){h.toString +s=B.b.fE(h,0) +k.y=s +i=s +j=!0 +r=!0}else{h=k.f +$.ec() +q=self.window.devicePixelRatio +if(q===0)q=1 +p=k.r +o=self.window.devicePixelRatio +if(o===0)o=1 +i=k.aip(h,p) +n=i +k.y=n +if(n==null){A.cTS() +i=k.aip(h,p)}n=i.style +A.a6(n,"position","absolute") +A.a6(n,"width",A.r(h/q)+"px") +A.a6(n,"height",A.r(p/o)+"px") +r=!1}if(!J.q(k.z.lastChild,i))k.z.append(i) +try{if(j)A.L(i.style,"removeProperty",["z-index"]) +h=A.o3(i,"2d",null) +h.toString +k.d=t.e.a(h)}catch(m){}h=k.d +if(h==null){A.cTS() +h=A.o3(i,"2d",null) +h.toString +h=k.d=t.e.a(h)}q=k.as +k.e=new A.baS(h,k,q,B.cX,B.eN,B.lW) +l=k.gdz(0) +l.save();++k.Q +A.cHa(l,1,0,0,1,0,0) +if(r)A.L(l,"clearRect",[0,0,k.f*q,k.r*q]) +$.ec() +h=self.window.devicePixelRatio +if(h===0)h=1 +p=self.window.devicePixelRatio +if(p===0)p=1 +A.L(l,"scale",[h*q,p*q]) +k.bfO()}, +aip(a,b){var s=this.as +return A.dwz(B.e.dO(a*s),B.e.dO(b*s))}, +V(a){var s,r,q,p,o,n=this +n.aSk(0) +if(n.y!=null){s=n.d +if(s!=null)try{s.font=""}catch(q){r=A.ag(q) +if(!J.q(r.name,"NS_ERROR_FAILURE"))throw q}}if(n.y!=null){n.a5A() +n.e.b6(0) +p=n.w +if(p==null)p=n.w=A.a([],t.J) +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}, +aqN(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.gdz(0) +if(d!=null)for(s=d.length,r=i.as,q=t.Ci;a>>16&255,m>>>8&255,m&255).a)) +A.L(s,h,[-5e4,0]) +l=new Float32Array(2) +m=$.ec().d +if(m==null){m=self.window.devicePixelRatio +if(m===0)m=1}l[0]=5e4*m +m=i.b +m.c.aFO(l) +k=l[0] +j=l[1] +l[1]=0 +l[0]=0 +m.c.aFO(l) +A.cws(s,k-l[0]) +A.cwt(s,j-l[1])}}, +uY(){var s=this,r=s.z +if((r==null?null:r.x)!=null){r=$.fv() +r=r===B.aQ||!1}else r=!1 +if(r)s.a.restore() +r=s.Q +if(r!=null){A.L(s.a,"translate",[-r.a,-r.b]) +s.Q=null}}, +nd(a){var s=this.a +if(a===B.a7)s.stroke() +else A.bdM(s,null)}, +b6(a){var s,r=this,q=r.a +A.bdN(q,"") +s=q.fillStyle +r.r=s==null?null:s +A.bdO(q,"") +s=q.strokeStyle +r.w=s==null?null:s +q.shadowBlur=0 +A.cwr(q,"none") +A.cws(q,0) +A.cwt(q,0) +q.globalCompositeOperation="source-over" +r.d=B.cX +A.cwq(q,1) +r.x=1 +q.lineCap="butt" +r.e=B.eN +q.lineJoin="miter" +r.f=B.lW +r.Q=null}} +A.aVR.prototype={ +V(a){B.b.V(this.a) +this.b=null +this.c=A.hY()}, +d6(a){var s=this.c,r=new A.dX(new Float32Array(16)) +r.T(s) +s=this.b +s=s==null?null:A.ew(s,!0,t.Sv) +this.a.push(new A.aDW(r,s))}, +de(a){var s,r=this.a +if(r.length===0)return +s=r.pop() +this.c=s.a +this.b=s.b}, +ba(a,b,c){this.c.ba(0,b,c)}, +jt(a,b,c){this.c.jt(0,b,c)}, +qE(a,b){this.c.aFc(0,B.X1,b)}, +ah(a,b){this.c.hc(0,new A.dX(b))}, +qd(a){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.dX(new Float32Array(16)) +r.T(s) +q.push(new A.LN(a,null,null,r))}, +yq(a){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.dX(new Float32Array(16)) +r.T(s) +q.push(new A.LN(null,a,null,r))}, +nG(a,b){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.dX(new Float32Array(16)) +r.T(s) +q.push(new A.LN(null,null,b,r))}} +A.rj.prototype={ +pj(a,b,c,d){var s=d.ay,r=this.a,q=a.b,p=d.a +if(s===B.kU){q===$&&A.b() +q=q.a +q===$&&A.b() +q=q.a +q.toString +A.L(r,"drawImageRectCubic",[q,A.mQ(b),A.mQ(c),0.3333333333333333,0.3333333333333333,p])}else{q===$&&A.b() +q=q.a +q===$&&A.b() +q=q.a +q.toString +A.L(r,"drawImageRectOptions",[q,A.mQ(b),A.mQ(c),A.cUh(s),A.cUj(s),p])}}, +yS(a){var s=a.a +s===$&&A.b() +s=s.a +s.toString +this.a.drawPicture(s)}, +kD(a,b){var s=b==null?null:b.a +A.cyZ(this.a,s,A.mQ(a),null,null)}, +a_W(a,b,c){t.p1.a(b) +b.aba(new A.b9c(this,c,a))}} +A.b9c.prototype={ +$1(a){A.cyZ(this.a.a,this.b.a,A.mQ(this.c),a,0)}, +$S:6} +A.coj.prototype={ +$1(a){var s=A.nJ().b +if(s==null)s=null +else{s=s.canvasKitBaseUrl +if(s==null)s=null}return(s==null?"https://www.gstatic.com/flutter-canvaskit/c4cd48e186460b32d44585ce3c103271ab676355/":s)+a}, +$S:28} +A.coM.prototype={ +$1(a){this.a.remove() +this.b.d2(0,!0)}, +$S:6} +A.coL.prototype={ +$1(a){this.a.remove() +this.b.d2(0,!1)}, +$S:6} +A.aox.prototype={ +d6(a){B.e.au(this.a.a.save())}, +kD(a,b){var s=t.qo,r=this.a +if(a==null){s.a(b) +A.cyZ(r.a,b.a,null,null,null)}else r.kD(a,s.a(b))}, +de(a){this.a.a.restore()}, +Zt(a){A.L(this.a.a,"restoreToCount",[a])}, +af_(){return B.e.au(this.a.a.getSaveCount())}, +ba(a,b,c){A.L(this.a.a,"translate",[b,c])}, +jt(a,b,c){var s=c==null?b:c +A.L(this.a.a,"scale",[b,s]) +return null}, +bK(a,b){return this.jt(0,b,null)}, +qE(a,b){A.L(this.a.a,"rotate",[b*180/3.141592653589793,0,0])}, +ah(a,b){if(b.length!==16)throw A.d(A.aM('"matrix4" must have 16 entries.',null)) +A.L(this.a.a,"concat",[A.cUi(A.Zq(b))])}, +FG(a,b,c){A.L(this.a.a,"clipRect",[A.mQ(a),$.cDT()[b.a],c])}, +qd(a){return this.FG(a,B.hp,!0)}, +awX(a,b){return this.FG(a,B.hp,b)}, +Vz(a,b){A.L(this.a.a,"clipRRect",[A.Zr(a),$.b2H(),b])}, +yq(a){return this.Vz(a,!0)}, +LP(a,b,c){var s=t.E_.a(b).a +s===$&&A.b() +s=s.a +s.toString +A.L(this.a.a,"clipPath",[s,$.b2H(),c])}, +nG(a,b){return this.LP(0,b,!0)}, +jV(a,b,c){A.L(this.a.a,"drawLine",[a.a,a.b,b.a,b.b,t.qo.a(c).a])}, +Gg(a){this.a.a.drawPaint(t.qo.a(a).a)}, +fs(a,b){t.qo.a(b) +A.L(this.a.a,"drawRect",[A.mQ(a),b.a])}, +dh(a,b){t.qo.a(b) +A.L(this.a.a,"drawRRect",[A.Zr(a),b.a])}, +Ge(a,b,c){t.qo.a(c) +A.L(this.a.a,"drawDRRect",[A.Zr(a),A.Zr(b),c.a])}, +Gf(a,b){t.qo.a(b) +A.L(this.a.a,"drawOval",[A.mQ(a),b.a])}, +h3(a,b,c){A.L(this.a.a,"drawCircle",[a.a,a.b,b,t.qo.a(c).a])}, +MC(a,b,c,d,e){t.qo.a(e) +A.L(this.a.a,"drawArc",[A.mQ(a),b*57.29577951308232,c*57.29577951308232,!1,e.a])}, +ey(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)}, +pj(a,b,c,d){this.a.pj(t.XY.a(a),b,c,t.qo.a(d))}, +yS(a){var s=t.Bn.a(a).a +s===$&&A.b() +s=s.a +s.toString +this.a.a.drawPicture(s)}, +w8(a,b){var s=t.tG.a(a).a +s===$&&A.b() +s=s.a +s.toString +A.L(this.a.a,"drawParagraph",[s,b.a,b.b])}, +C1(a,b,c){var s,r=A.cUg(b) +t.qo.a(c) +s=r.toTypedArray() +A.L(this.a.a,"drawPoints",[$.d_R()[a.a],s,c.a]) +self.window.flutterCanvasKit.Free(r)}, +MD(a,b,c){var s +t.V1.a(a) +t.qo.a(c) +s=a.f +s===$&&A.b() +s=s.a +s.toString +this.a.a.drawVertices(s,$.cuE()[b.a],c.a)}, +uf(a,b,c,d){var s,r,q,p,o,n,m,l +t.E_.a(a) +s=$.ec().d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}r=d?5:4 +q=A.Y(B.e.aF((b.gj(b)>>>24&255)*0.039),b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(b)&255) +p=A.Y(B.e.aF((b.gj(b)>>>24&255)*0.25),b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(b)&255) +o=t.e.a({ambient:A.Zk(q),spot:A.Zk(p)}) +n=$.d5.I().computeTonalColors(o) +m=a.a +m===$&&A.b() +m=m.a +m.toString +l=new Float32Array(3) +l[2]=s*c +s=new Float32Array(3) +s[0]=0 +s[1]=-1 +s[2]=1 +A.L(this.a.a,"drawShadow",[m,l,s,1.3333333333333333,n.ambient,n.spot,r|4])}, +$iaow:1} +A.axj.prototype={ +gv(a){var s=this.a +return s.gv(s)}, +l(a,b){if(b==null)return!1 +if(A.I(this)!==J.az(b))return!1 +return b instanceof A.axj&&b.a.l(0,this.a)}, +k(a){return this.a.k(0)}} +A.aoZ.prototype={$itD:1} +A.a0m.prototype={ +Ke(){return A.drk(this.a,this.b)}, +gv(a){return A.ad(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.I(this)!==J.az(b))return!1 +return b instanceof A.a0m&&b.a.l(0,this.a)&&b.b===this.b}, +k(a){return"ColorFilter.mode("+this.a.k(0)+", "+this.b.k(0)+")"}} +A.Pw.prototype={ +gbaz(){var s,r,q=new Float32Array(20) +for(s=this.a,r=0;r<20;++r)if(B.b.p(B.aFV,r))q[r]=s[r]/255 +else q[r]=s[r] +return q}, +Ke(){return A.L($.d5.I().ColorFilter,"MakeMatrix",[this.gbaz()])}, +gv(a){return A.cs(this.a)}, +l(a,b){if(b==null)return!1 +return A.I(this)===J.az(b)&&b instanceof A.Pw&&A.pQ(this.a,b.a)}, +k(a){return"ColorFilter.matrix("+A.r(this.a)+")"}} +A.ap7.prototype={ +Ke(){return $.d5.I().ColorFilter.MakeLinearToSRGBGamma()}, +l(a,b){if(b==null)return!1 +return A.I(this)===J.az(b)}, +gv(a){return A.ef(A.I(this))}, +k(a){return"ColorFilter.linearToSrgbGamma()"}} +A.apb.prototype={ +Ke(){return $.d5.I().ColorFilter.MakeSRGBToLinearGamma()}, +l(a,b){if(b==null)return!1 +return A.I(this)===J.az(b)}, +gv(a){return A.ef(A.I(this))}, +k(a){return"ColorFilter.srgbToLinearGamma()"}} +A.Pv.prototype={ +Ke(){var s,r=$.d5.I().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.Pv))return!1 +return b.a.l(0,this.a)&&b.b.l(0,this.b)}, +gv(a){return A.ad(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)}, +k(a){return"ColorFilter.compose("+this.a.k(0)+", "+this.b.k(0)+")"}} +A.a1R.prototype={ +gLF(){var s,r=this,q=r.b +if(q===$){s=r.a.$0() +J.cv3(s) +r.b!==$&&A.a_() +r.b=s +q=s}return q}, +aIs(){var s,r=this.d,q=this.c +if(r.length!==0){s=r.pop() +q.push(s) +return s}else{s=this.a.$0() +J.cv3(s) +q.push(s) +return s}}, +bfC(a){a.gzl().remove()}, +m(){var s,r,q,p +for(s=this.d,r=s.length,q=0;q"))}, +bEh(a,b){var s,r,q=this +if(!$.tq().Nv(a)){s=new A.tE() +r=q.z +r===$&&A.b() +s.yk(new A.W(0,0,0+r.a,0+r.b)) +q.c.a.push(s)}r=q.d +if(J.q(r.i(0,a),b)){if(!B.b.p(q.x,a))q.r.B(0,a) +return}r.n(0,a,b) +q.r.B(0,a)}, +aYI(a,b){var s,r=this,q=r.e.cP(0,a,new A.bm_(a)),p=q.b,o=p.style,n=b.b +A.a6(o,"width",A.r(n.a)+"px") +A.a6(o,"height",A.r(n.b)+"px") +A.a6(o,"position","absolute") +s=r.aZc(b.c) +if(s!==q.c){q.a=r.bfk(s,p,q.a) +q.c=s}r.aWb(b,p,a)}, +aZc(a){var s,r,q,p +for(s=a.a,r=A.X(s).h("bE<1>"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E"),q=0;s.t();){p=s.d +p=(p==null?r.a(p):p).a +if(p===B.RO||p===B.RP||p===B.RQ)++q}return q}, +bfk(a,b,c){var s,r,q,p,o,n +if(c.parentNode!=null){s=c.nextSibling +c.remove() +r=!0}else{s=null +r=!1}q=b +p=0 +while(!0){if(!(!J.q(q,c)&&p").a1(p.y[1]).y[1];s.t();){o=p.a(s.gK(s)) +if(q.p(0,o.id))r.push(o)}for(s=r.length,n=0;n"),a2=new A.bE(a2,r),a2=new A.bj(a2,a2.gA(0),r.h("bj")),r=r.h("aa.E"),q=a0.at,p=t.K,o=t.gA,n=a4,m=1;a2.t();){l=a2.d +if(l==null)l=r.a(l) +switch(l.a.a){case 3:l=l.e +l.toString +k=new Float32Array(16) +j=new A.dX(k) +j.T(l) +j.hc(0,s) +l=n.style +k=A.pP(k) +l.setProperty.apply(l,["transform",k,""]) +s=j +break +case 0:case 1:case 2:n=n.parentElement +k=n.style +k.setProperty.apply(k,["clip","",""]) +k=n.style +k.setProperty.apply(k,["clip-path","",""]) +s=new A.dX(new Float32Array(16)) +s.aUU() +k=n.style +k.setProperty.apply(k,["transform","",""]) +k=n.style +k.setProperty.apply(k,["width","100%",""]) +k=n.style +k.setProperty.apply(k,["height","100%",""]) +k=l.b +if(k!=null){l=n.style +i=k.b +h=k.c +g=k.d +k=k.a +l.setProperty.apply(l,["clip","rect("+A.r(i)+"px, "+A.r(h)+"px, "+A.r(g)+"px, "+A.r(k)+"px)",""])}else{k=l.c +if(k!=null){f=new self.window.flutterCanvasKit.Path() +f.setFillType($.Zw()[0]) +e=new A.Py(B.e1) +l=new A.jV("Path",o) +l.a=f +$.cEg() +if($.cE5()){i=$.cDB() +d={} +d[$.cuB()]=l +A.d5_(i,e,d)}e.a!==$&&A.ck() +e.a=l +i=l.a +i.toString +i.addRRect.apply(i,[A.Zr(k),!1]) +a0.alf() +k=a0.as +k.toString +k=k.querySelector.apply(k,["#sk_path_defs"]) +k.toString +c="svgClip"+ ++a0.Q +i=self.document +i=i.createElementNS.apply(i,[a1,"clipPath"]) +i.id=c +h=self.document +h=h.createElementNS.apply(h,[a1,"path"]) +l=A.bH(l.a.toSVGString()) +h.setAttribute.apply(h,["d",l==null?p.a(l):l]) +i.append(h) +k.append(i) +J.eQ(q.cP(0,a5,new A.blY()),c) +l=n.style +l.setProperty.apply(l,["clip-path","url(#"+c+")",""])}else{l=l.d +if(l!=null){a0.alf() +k=a0.as +k.toString +k=k.querySelector.apply(k,["#sk_path_defs"]) +k.toString +c="svgClip"+ ++a0.Q +i=self.document +i=i.createElementNS.apply(i,[a1,"clipPath"]) +i.id=c +h=self.document +h=h.createElementNS.apply(h,[a1,"path"]) +l=l.a +l===$&&A.b() +l=A.bH(l.a.toSVGString()) +h.setAttribute.apply(h,["d",l==null?p.a(l):l]) +i.append(h) +k.append(i) +J.eQ(q.cP(0,a5,new A.blZ()),c) +l=n.style +l.setProperty.apply(l,["clip-path","url(#"+c+")",""])}}}l=n.style +l.setProperty.apply(l,["transform-origin","0 0 0",""]) +l=n.style +l.setProperty.apply(l,["position","absolute",""]) +break +case 4:l=l.f +l.toString +m*=l/255 +break}}A.a6(a4.style,"opacity",B.e.k(m)) +b=$.ec().d +if(b==null){a2=self.window.devicePixelRatio +b=a2===0?1:a2}a=1/b +a2=new Float32Array(16) +a2[15]=1 +a2[10]=1 +a2[5]=a +a2[0]=a +s=new A.dX(a2).ky(s) +A.a6(n.style,"transform",A.pP(s.a))}, +bfW(a){A.a6(a.style,"transform-origin","0 0 0") +A.a6(a.style,"position","absolute")}, +alf(){var s,r,q=this +if(q.as!=null)return +s=A.asV($.cuP(),!1) +q.as=s +r=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","defs"]) +r.id="sk_path_defs" +s.append(r) +r=q.as +r.toString +q.a.append(r)}, +QG(a){return this.aNz(0)}, +aNz(a7){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6 +var $async$QG=A.l(function(a8,a9){if(a8===1)return A.m(a9,r) +while(true)switch(s){case 0:a4=p.x +a5=a4.length===0||p.w.length===0?null:A.drN(a4,p.w) +a6=p.bkN(a5) +if(a6!=null)p.y=a6 +o=p.y,n=o.length,m=p.b,l=p.f,k=t.H0,j=0,i=0 +case 3:if(!(i") +p.a9D(A.hh(new A.b1(n,new A.bm4(a5),m),m.h("B.E"))) +B.b.L(a4,o) +c.OA(o) +a4=a5.c +if(a4){n=a5.d +n.toString +b=p.e.i(0,n).a}else b=null +for(n=a5.b,m=n.length,k=p.e,g=p.a,i=0;i") +q=A.R(new A.O(s,new A.bm0(),r),!0,r.h("aa.E")) +r=m.gb7N() +p=m.f +if(l){l=m.b.gyM() +o=l.c +B.b.L(l.d,o) +B.b.V(o) +p.V(0) +B.b.aE(q,r)}else{l=A.z(p).h("bR<1>") +n=A.R(new A.bR(p,l),!0,l.h("B.E")) +new A.b1(n,new A.bm1(q),A.X(n).h("b1<1>")).aE(0,m.gbfw()) +new A.b1(q,new A.bm2(m),A.X(q).h("b1<1>")).aE(0,r)}return s}, +aJ4(a){var s,r,q,p,o=A.a([],t.jT),n=t.t,m=new A.KH(A.a([],n)) +for(s=0;s0 +if(!q||o.length+1>=7){m.a.push(r);++m.b}else{if(q)o.push(m) +q=A.a([],n) +m=new A.KH(q) +q.push(r) +m.b=1}}}if(m.b>0)o.push(m) +return o}, +b7O(a){this.f.n(0,a,this.b.gyM().aIs())}, +bt9(){var s,r,q,p=this.as +if(p==null)s=null +else{r=t.qr +r=A.fw(new A.AX(p.children,r),r.h("B.E"),t.e) +s=A.z(r).y[1].a(J.ZB(r.a))}if(s!=null)for(q=s.lastChild;q!=null;q=s.lastChild)s.removeChild(q) +this.at.V(0)}, +m(){var s=this,r=$.tq(),q=r.b,p=A.z(q).h("bR<1>"),o=A.hh(new A.bR(q,p),p.h("B.E")) +o.aE(0,r.gbqd()) +r.a.V(0) +q.V(0) +r.c.V(0) +r.d.V(0) +s.a9D(o) +r=t.qN +s.c=new A.a2A(A.a([],r),A.a([],r)) +r=s.d +r.V(0) +s.bt9() +r.V(0) +s.e.V(0) +s.f.V(0) +s.r.V(0) +B.b.V(s.x) +B.b.V(s.w)}} +A.bm3.prototype={ +$1(a){var s=a.b +s.toString +return s}, +$S:1639} +A.bm_.prototype={ +$0(){var s=A.cSa(this.a) +return new A.Wp(s,s)}, +$S:602} +A.blY.prototype={ +$0(){return A.b9(t.N)}, +$S:510} +A.blZ.prototype={ +$0(){return A.b9(t.N)}, +$S:510} +A.bm4.prototype={ +$1(a){return!B.b.p(this.a.b,a)}, +$S:42} +A.bm0.prototype={ +$1(a){return B.b.gP(a.a)}, +$S:1421} +A.bm1.prototype={ +$1(a){return!B.b.p(this.a,a)}, +$S:42} +A.bm2.prototype={ +$1(a){return!this.a.f.aB(0,a)}, +$S:42} +A.KH.prototype={} +A.Wp.prototype={} +A.a2z.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.a2z&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c.l(0,s.c)}, +gv(a){return A.ad(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.Kv.prototype={ +H(){return"MutatorType."+this.b}} +A.rH.prototype={ +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(!(b instanceof A.rH))return!1 +s=r.a +if(s!==b.a)return!1 +switch(s.a){case 0:return J.q(r.b,b.b) +case 1:return J.q(r.c,b.c) +case 2:return r.d==b.d +case 3:return r.e==b.e +case 4:return r.f==b.f +default:return!1}}, +gv(a){var s=this +return A.ad(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,B.a)}} +A.Kw.prototype={ +l(a,b){if(b==null)return!1 +if(b===this)return!0 +return b instanceof A.Kw&&A.pQ(b.a,this.a)}, +gv(a){return A.cs(this.a)}, +gaz(a){var s=this.a,r=A.X(s).h("bE<1>") +s=new A.bE(s,r) +return new A.bj(s,s.gA(0),r.h("bj"))}} +A.a2A.prototype={} +A.x6.prototype={} +A.crO.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.q(r[p],s[s.length-1-q]))return o +if(q===s.length-1){s=r.length +if(a===s-1)return new A.x6(B.b.cK(r,0,s-q-1),B.eE,!1,o) +else if(a===q)return new A.x6(B.b.hs(r,a+1),B.eE,!1,o) +else return o}}return new A.x6(B.b.hs(r,a+1),B.b.cK(s,0,s.length-1-a),!0,B.b.ga2(r))}, +$S:322} +A.aEH.prototype={ +gaaC(){var s,r=this.b +if(r===$){s=A.nJ().b +if(s==null)s=null +else{s=s.useColorEmoji +if(s==null)s=null}s=s===!0 +r=this.b=A.d7g(new A.bGq(this),A.a([A.aV("Noto Sans","notosans/v32/o-0IIpQlx3QUlC5A4PNb4j5Ba_2c7A.ttf",!0),A.aV("Noto Color Emoji","notocoloremoji/v25/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFab5s79iz64w.ttf",s),A.aV("Noto Emoji","notoemoji/v47/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0jwvS-FGJCMY.ttf",!s),A.aV("Noto Music","notomusic/v20/pe0rMIiSN5pO63htf1sxIteQB9Zra1U.ttf",!0),A.aV("Noto Sans Symbols","notosanssymbols/v41/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8gavVFRkzrbQ.ttf",!0),A.aV("Noto Sans Symbols 2","notosanssymbols2/v22/I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI.ttf",!0),A.aV("Noto Sans Adlam","notosansadlam/v22/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0TGnBZLwhuvk.ttf",!0),A.aV("Noto Sans Anatolian Hieroglyphs","notosansanatolianhieroglyphs/v16/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo.ttf",!0),A.aV("Noto Sans Arabic","notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyvu3CBFQLaig.ttf",!0),A.aV("Noto Sans Armenian","notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb60iYy6zF3Eg.ttf",!0),A.aV("Noto Sans Avestan","notosansavestan/v21/bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U.ttf",!0),A.aV("Noto Sans Balinese","notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdhE5Vd222PPY.ttf",!0),A.aV("Noto Sans Bamum","notosansbamum/v27/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddO-_gLykxEkxA.ttf",!0),A.aV("Noto Sans Bassa Vah","notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAc6p34gH-GD7.ttf",!0),A.aV("Noto Sans Batak","notosansbatak/v19/gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A.ttf",!0),A.aV("Noto Sans Bengali","notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLudCk8izI0lc.ttf",!0),A.aV("Noto Sans Bhaiksuki","notosansbhaiksuki/v17/UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U.ttf",!0),A.aV("Noto Sans Brahmi","notosansbrahmi/v18/vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo.ttf",!0),A.aV("Noto Sans Buginese","notosansbuginese/v18/esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw.ttf",!0),A.aV("Noto Sans Buhid","notosansbuhid/v22/Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA.ttf",!0),A.aV("Noto Sans Canadian Aboriginal","notosanscanadianaboriginal/v22/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLn_yAsg0q0uhQ.ttf",!0),A.aV("Noto Sans Carian","notosanscarian/v16/LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI.ttf",!0),A.aV("Noto Sans Caucasian Albanian","notosanscaucasianalbanian/v16/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo.ttf",!0),A.aV("Noto Sans Chakma","notosanschakma/v17/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo.ttf",!0),A.aV("Noto Sans Cham","notosanscham/v29/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwcv7GykboaLg.ttf",!0),A.aV("Noto Sans Cherokee","notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PDkm5rAffjl0.ttf",!0),A.aV("Noto Sans Coptic","notosanscoptic/v20/iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y.ttf",!0),A.aV("Noto Sans Cuneiform","notosanscuneiform/v17/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ.ttf",!0),A.aV("Noto Sans Cypriot","notosanscypriot/v15/8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF.ttf",!0),A.aV("Noto Sans Deseret","notosansdeseret/v17/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG.ttf",!0),A.aV("Noto Sans Devanagari","notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQly-AzoFoW4Ow.ttf",!0),A.aV("Noto Sans Duployan","notosansduployan/v17/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA.ttf",!0),A.aV("Noto Sans Egyptian Hieroglyphs","notosansegyptianhieroglyphs/v28/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw.ttf",!0),A.aV("Noto Sans Elbasan","notosanselbasan/v16/-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh.ttf",!0),A.aV("Noto Sans Elymaic","notosanselymaic/v15/UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V.ttf",!0),A.aV("Noto Sans Georgian","notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzFj-f5WK0OQV.ttf",!0),A.aV("Noto Sans Glagolitic","notosansglagolitic/v17/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1.ttf",!0),A.aV("Noto Sans Gothic","notosansgothic/v16/TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0.ttf",!0),A.aV("Noto Sans Grantha","notosansgrantha/v17/3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N.ttf",!0),A.aV("Noto Sans Gujarati","notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFwPM_OdiEH0s.ttf",!0),A.aV("Noto Sans Gunjala Gondi","notosansgunjalagondi/v19/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYL4YDE4J4vCTxEJQ.ttf",!0),A.aV("Noto Sans Gurmukhi","notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1OenbxZ_trdp7h.ttf",!0),A.aV("Noto Sans HK","notosanshk/v31/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qHB--oWTiYjNvVA.ttf",!0),A.aV("Noto Sans Hanunoo","notosanshanunoo/v20/f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2.ttf",!0),A.aV("Noto Sans Hatran","notosanshatran/v16/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs.ttf",!0),A.aV("Noto Sans Hebrew","notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qtoiJltutR2g.ttf",!0),A.aV("Noto Sans Imperial Aramaic","notosansimperialaramaic/v16/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno.ttf",!0),A.aV("Noto Sans Indic Siyaq Numbers","notosansindicsiyaqnumbers/v16/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu.ttf",!0),A.aV("Noto Sans Inscriptional Pahlavi","notosansinscriptionalpahlavi/v16/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA.ttf",!0),A.aV("Noto Sans Inscriptional Parthian","notosansinscriptionalparthian/v16/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr.ttf",!0),A.aV("Noto Sans JP","notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75vY0rw-oME.ttf",!0),A.aV("Noto Sans Javanese","notosansjavanese/v23/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkFFliZYWj4O8.ttf",!0),A.aV("Noto Sans KR","notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzuoyeLTq8H4hfeE.ttf",!0),A.aV("Noto Sans Kaithi","notosanskaithi/v20/buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo.ttf",!0),A.aV("Noto Sans Kannada","notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvNzSIMLsPKrkY.ttf",!0),A.aV("Noto Sans Kayah Li","notosanskayahli/v21/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3CZH4EXLuKVM.ttf",!0),A.aV("Noto Sans Kharoshthi","notosanskharoshthi/v16/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1.ttf",!0),A.aV("Noto Sans Khmer","notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAJz4kAbrddiA.ttf",!0),A.aV("Noto Sans Khojki","notosanskhojki/v18/-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k.ttf",!0),A.aV("Noto Sans Khudawadi","notosanskhudawadi/v21/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY.ttf",!0),A.aV("Noto Sans Lao","notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbdf5MK3riB2w.ttf",!0),A.aV("Noto Sans Lepcha","notosanslepcha/v19/0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4.ttf",!0),A.aV("Noto Sans Limbu","notosanslimbu/v22/3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA.ttf",!0),A.aV("Noto Sans Linear A","notosanslineara/v18/oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw.ttf",!0),A.aV("Noto Sans Linear B","notosanslinearb/v17/HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw.ttf",!0),A.aV("Noto Sans Lisu","notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwt29IlxkVdig.ttf",!0),A.aV("Noto Sans Lycian","notosanslycian/v15/QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E.ttf",!0),A.aV("Noto Sans Lydian","notosanslydian/v17/c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI.ttf",!0),A.aV("Noto Sans Mahajani","notosansmahajani/v19/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg.ttf",!0),A.aV("Noto Sans Malayalam","notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuD9BFzEr6HxEA.ttf",!0),A.aV("Noto Sans Mandaic","notosansmandaic/v16/cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH.ttf",!0),A.aV("Noto Sans Manichaean","notosansmanichaean/v17/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX.ttf",!0),A.aV("Noto Sans Marchen","notosansmarchen/v19/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk.ttf",!0),A.aV("Noto Sans Masaram Gondi","notosansmasaramgondi/v17/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX.ttf",!0),A.aV("Noto Sans Math","notosansmath/v15/7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0.ttf",!0),A.aV("Noto Sans Mayan Numerals","notosansmayannumerals/v16/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ.ttf",!0),A.aV("Noto Sans Medefaidrin","notosansmedefaidrin/v23/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWlT318e5A3rw.ttf",!0),A.aV("Noto Sans Meetei Mayek","notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_vTW5PgeFYVa.ttf",!0),A.aV("Noto Sans Meroitic","notosansmeroitic/v17/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ.ttf",!0),A.aV("Noto Sans Miao","notosansmiao/v17/Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx.ttf",!0),A.aV("Noto Sans Modi","notosansmodi/v23/pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-.ttf",!0),A.aV("Noto Sans Mongolian","notosansmongolian/v17/VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0.ttf",!0),A.aV("Noto Sans Mro","notosansmro/v18/qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M.ttf",!0),A.aV("Noto Sans Multani","notosansmultani/v20/9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos.ttf",!0),A.aV("Noto Sans Myanmar","notosansmyanmar/v20/AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC.ttf",!0),A.aV("Noto Sans NKo","notosansnko/v6/esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA.ttf",!0),A.aV("Noto Sans Nabataean","notosansnabataean/v16/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4.ttf",!0),A.aV("Noto Sans New Tai Lue","notosansnewtailue/v22/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAYUbghFPKzeY.ttf",!0),A.aV("Noto Sans Newa","notosansnewa/v16/7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU.ttf",!0),A.aV("Noto Sans Nushu","notosansnushu/v19/rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ.ttf",!0),A.aV("Noto Sans Ogham","notosansogham/v17/kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA.ttf",!0),A.aV("Noto Sans Ol Chiki","notosansolchiki/v29/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk267I6gVrz5gQ.ttf",!0),A.aV("Noto Sans Old Hungarian","notosansoldhungarian/v18/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt.ttf",!0),A.aV("Noto Sans Old Italic","notosansolditalic/v16/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d.ttf",!0),A.aV("Noto Sans Old North Arabian","notosansoldnortharabian/v16/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw.ttf",!0),A.aV("Noto Sans Old Permic","notosansoldpermic/v17/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5.ttf",!0),A.aV("Noto Sans Old Persian","notosansoldpersian/v16/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA.ttf",!0),A.aV("Noto Sans Old Sogdian","notosansoldsogdian/v16/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg.ttf",!0),A.aV("Noto Sans Old South Arabian","notosansoldsoutharabian/v16/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA.ttf",!0),A.aV("Noto Sans Old Turkic","notosansoldturkic/v17/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws.ttf",!0),A.aV("Noto Sans Oriya","notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f6_c6LhHBRe-.ttf",!0),A.aV("Noto Sans Osage","notosansosage/v18/oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ.ttf",!0),A.aV("Noto Sans Osmanya","notosansosmanya/v18/8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z.ttf",!0),A.aV("Noto Sans Pahawh Hmong","notosanspahawhhmong/v18/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM.ttf",!0),A.aV("Noto Sans Palmyrene","notosanspalmyrene/v16/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA.ttf",!0),A.aV("Noto Sans Pau Cin Hau","notosanspaucinhau/v20/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw.ttf",!0),A.aV("Noto Sans Phags Pa","notosansphagspa/v15/pxiZyoo6v8ZYyWh5WuPeJzMkd4SrGChkqkSsrvNXiA.ttf",!0),A.aV("Noto Sans Phoenician","notosansphoenician/v17/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561.ttf",!0),A.aV("Noto Sans Psalter Pahlavi","notosanspsalterpahlavi/v16/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4.ttf",!0),A.aV("Noto Sans Rejang","notosansrejang/v21/Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU.ttf",!0),A.aV("Noto Sans Runic","notosansrunic/v17/H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg.ttf",!0),A.aV("Noto Sans SC","notosanssc/v36/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG9_FnYxNbPzS5HE.ttf",!0),A.aV("Noto Sans Saurashtra","notosanssaurashtra/v23/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9.ttf",!0),A.aV("Noto Sans Sharada","notosanssharada/v16/gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a.ttf",!0),A.aV("Noto Sans Shavian","notosansshavian/v17/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg.ttf",!0),A.aV("Noto Sans Siddham","notosanssiddham/v20/OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH.ttf",!0),A.aV("Noto Sans Sinhala","notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a5lgLpJwbQRM.ttf",!0),A.aV("Noto Sans Sogdian","notosanssogdian/v16/taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM.ttf",!0),A.aV("Noto Sans Sora Sompeng","notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR818DpZXJQd4Mu.ttf",!0),A.aV("Noto Sans Soyombo","notosanssoyombo/v17/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W.ttf",!0),A.aV("Noto Sans Sundanese","notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNNHCizv7fQES.ttf",!0),A.aV("Noto Sans Syloti Nagri","notosanssylotinagri/v20/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0.ttf",!0),A.aV("Noto Sans Syriac","notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9MaJyZfUL_FC.ttf",!0),A.aV("Noto Sans TC","notosanstc/v35/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz76Cy_CpOtma3uNQ.ttf",!0),A.aV("Noto Sans Tagalog","notosanstagalog/v22/J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL.ttf",!0),A.aV("Noto Sans Tagbanwa","notosanstagbanwa/v18/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ.ttf",!0),A.aV("Noto Sans Tai Le","notosanstaile/v17/vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo.ttf",!0),A.aV("Noto Sans Tai Tham","notosanstaitham/v20/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbPgquyaRGKMw.ttf",!0),A.aV("Noto Sans Tai Viet","notosanstaiviet/v19/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w.ttf",!0),A.aV("Noto Sans Takri","notosanstakri/v23/TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg.ttf",!0),A.aV("Noto Sans Tamil","notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo70RqKDt_EvT.ttf",!0),A.aV("Noto Sans Tamil Supplement","notosanstamilsupplement/v21/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x.ttf",!0),A.aV("Noto Sans Telugu","notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbqQUbf-3v37w.ttf",!0),A.aV("Noto Sans Thaana","notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbhLhnu4-tbNu.ttf",!0),A.aV("Noto Sans Thai","notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtpzF-QRvzzXg.ttf",!0),A.aV("Noto Sans Tifinagh","notosanstifinagh/v20/I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q.ttf",!0),A.aV("Noto Sans Tirhuta","notosanstirhuta/v16/t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P.ttf",!0),A.aV("Noto Sans Ugaritic","notosansugaritic/v16/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg.ttf",!0),A.aV("Noto Sans Vai","notosansvai/v17/NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0.ttf",!0),A.aV("Noto Sans Wancho","notosanswancho/v17/zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8.ttf",!0),A.aV("Noto Sans Warang Citi","notosanswarangciti/v17/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA.ttf",!0),A.aV("Noto Sans Yi","notosansyi/v19/sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg.ttf",!0),A.aV("Noto Sans Zanabazar Square","notosanszanabazarsquare/v19/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc.ttf",!0)],t.Qg))}return r}, +bfu(){var s,r,q,p,o,n,m=this,l=m.r +if(l!=null){l.delete() +m.r=null +l=m.w +if(l!=null)l.delete() +m.w=null}m.r=$.d5.I().TypefaceFontProvider.Make() +l=$.d5.I().FontCollection.Make() +m.w=l +l.enableFontFallback() +m.w.setDefaultFontManager(m.r) +l=m.f +l.V(0) +for(s=m.d,r=s.length,q=0;q"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E"),q=B.lG;s.t();){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.W(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.W(p[0],p[1],p[2],p[3]) +break +default:continue $label0$1}q=q.jZ(o)}return q}} +A.aAH.prototype={} +A.Q1.prototype={ +rZ(a,b){this.b=this.wJ(a,b)}, +wJ(a,b){var s,r,q,p,o,n +for(s=this.c,r=s.length,q=B.a8,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.n1(n)}}return q}, +rU(a){var s,r,q,p,o +for(s=this.c,r=s.length,q=0;q=o.c||o.b>=o.d))p.nd(a)}}} +A.aDG.prototype={ +nd(a){this.rU(a)}} +A.anB.prototype={ +rZ(a,b){this.b=this.wJ(a,b).n1(a.gbsZ())}, +nd(a){var s,r,q=this,p=A.a0p() +p.sp6(q.r) +s=a.a +s.a_W(q.b,q.f,p) +r=p.b +r===$&&A.b() +r.m() +q.rU(a) +s.de(0)}, +$ib5t:1} +A.apk.prototype={ +rZ(a,b){var s,r,q=null,p=this.f,o=a.c.a +o.push(new A.rH(B.RQ,q,q,p,q,q)) +s=this.wJ(a,b) +p=p.a +p===$&&A.b() +r=A.cBv(p.a.getBounds()) +if(s.Oc(r))this.b=s.jZ(r) +o.pop()}, +nd(a){var s,r=this,q=a.a +q.d6(0) +s=r.r +q.bqg(0,r.f,s!==B.k) +s=s===B.iJ +if(s)q.kD(r.b,null) +r.rU(a) +if(s)q.de(0) +q.de(0)}, +$ib9t:1} +A.apn.prototype={ +rZ(a,b){var s,r=null,q=this.f,p=a.c.a +p.push(new A.rH(B.RO,q,r,r,r,r)) +s=this.wJ(a,b) +if(s.Oc(q))this.b=s.jZ(q) +p.pop()}, +nd(a){var s,r,q=a.a +q.d6(0) +s=this.f +r=this.r +q.bqk(s,B.hp,r!==B.k) +r=r===B.iJ +if(r)q.kD(s,null) +this.rU(a) +if(r)q.de(0) +q.de(0)}, +$ib9w:1} +A.apm.prototype={ +rZ(a,b){var s,r,q,p,o=null,n=this.f,m=a.c.a +m.push(new A.rH(B.RP,o,n,o,o,o)) +s=this.wJ(a,b) +r=n.a +q=n.b +p=n.c +n=n.d +if(s.Oc(new A.W(r,q,p,n)))this.b=s.jZ(new A.W(r,q,p,n)) +m.pop()}, +nd(a){var s,r=this,q=a.a +q.d6(0) +s=r.r +q.bqi(r.f,s!==B.k) +s=s===B.iJ +if(s)q.kD(r.b,null) +r.rU(a) +if(s)q.de(0) +q.de(0)}, +$ib9v:1} +A.aAm.prototype={ +rZ(a,b){var s,r,q,p,o=this,n=null,m=new A.dX(new Float32Array(16)) +m.T(b) +s=o.r +r=s.a +s=s.b +m.ba(0,r,s) +q=A.hY() +q.tl(r,s,0) +p=a.c.a +p.push(A.cy4(q)) +p.push(new A.rH(B.b6j,n,n,n,n,o.f)) +o.aO5(a,m) +p.pop() +p.pop() +o.b=o.b.ba(0,r,s)}, +nd(a){var s,r,q,p=this,o=A.a0p() +o.sa6(0,A.Y(p.f,0,0,0)) +s=a.a +s.d6(0) +r=p.r +q=r.a +r=r.b +s.ba(0,q,r) +s.kD(p.b.eD(new A.j(-q,-r)),o) +r=o.b +r===$&&A.b() +r.m() +p.rU(a) +s.de(0) +s.de(0)}, +$ibvc:1} +A.abA.prototype={ +rZ(a,b){var s=this.f,r=b.ky(s),q=a.c.a +q.push(A.cy4(s)) +this.b=A.cu5(s,this.wJ(a,r)) +q.pop()}, +nd(a){var s=a.a +s.d6(0) +s.ah(0,this.f.a) +this.rU(a) +s.de(0)}, +$iaGY:1} +A.aAl.prototype={$ibva:1} +A.avP.prototype={ +rZ(a,b){var s,r,q,p,o=this,n=new A.dX(new Float32Array(16)) +n.T(b) +s=o.f +r=s.a +s=s.b +n.ba(0,r,s) +q=A.hY() +q.tl(r,s,0) +s=a.c.a +s.push(A.cy4(q)) +p=o.wJ(a,n) +q=t.p1.a(o.r).d +q===$&&A.b() +q=q.a +q.toString +new A.bmB(o,p).$1(q) +s.pop()}, +nd(a){var s,r,q=this,p=a.a +p.d6(0) +s=q.f +p.ba(0,s.a,s.b) +r=A.a0p() +r.sbyj(q.r) +p.kD(q.b,r) +s=r.b +s===$&&A.b() +s.m() +q.rU(a) +p.de(0) +p.de(0)}, +$ibmA:1} +A.bmB.prototype={ +$1(a){var s=A.L(a,"getOutputBounds",[A.mQ(this.b)]) +this.a.b=new A.W(s[0],s[1],s[2],s[3])}, +$S:6} +A.aBk.prototype={ +rZ(a,b){var s=this.c.a +s===$&&A.b() +this.b=A.cBv(s.a.cullRect()).eD(this.d)}, +nd(a){var s,r +B.e.au(a.b.a.save()) +s=this.d +A.L(a.b.a,"translate",[s.a,s.b]) +s=a.b +r=this.c.a +r===$&&A.b() +r=r.a +r.toString +s.a.drawPicture(r) +a.b.a.restore()}} +A.apv.prototype={ +nd(a){var s,r,q=A.a0p() +q.snH(this.f) +s=a.a +s.kD(this.b,q) +r=q.b +r===$&&A.b() +r.m() +this.rU(a) +s.de(0)}, +$ib9M:1} +A.aBB.prototype={ +rZ(a,b){var s=this,r=s.d,q=r.a,p=r.b,o=s.e,n=s.f +s.b=new A.W(q,p,q+o,p+n) +p=a.b +if(p!=null)p.bEh(s.c,new A.a2z(r,new A.V(o,n),new A.Kw(A.ew(a.c.a,!0,t.CW))))}, +nd(a){var s,r,q,p,o,n,m=null,l=a.d +if(l==null)s=m +else{r=this.c +l.b.a.gjk().aAX(r) +q=l.c.c +l.w.push(r) +if(!$.tq().Nv(r))++l.c.c +if(!$.tq().Nv(r)){p=l.c +o=p.a +if(q").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +q=(q==null?r.a(q):q).f +p=new A.btX(a) +p.$1(q.gLF()) +B.b.aE(q.d,p) +B.b.aE(q.c,p)}}} +A.btW.prototype={ +$0(){return A.daj(this.b,this.a)}, +$S:1693} +A.btX.prototype={ +$1(a){a.y=this.a +a.a6a()}, +$S:538} +A.Ku.prototype={ +aDn(){this.f.gLF().M8(this.b)}, +Hz(a,b){var s,r,q +t.NU.a(a) +a.M8(this.b) +s=this.b +r=$.ec().d +if(r==null){q=self.window.devicePixelRatio +r=q===0?1:q}q=a.ax +A.a6(a.Q.style,"transform","translate(0px, "+A.r(s.b/r-q/r)+"px)") +q=a.a.a.getCanvas() +A.L(q,"clear",[A.b1E($.ams(),B.D)]) +B.b.aE(b,new A.rj(q).gayP()) +a.a.a.flush() +return A.dm(null,t.H)}, +gyM(){return this.f}} +A.btY.prototype={ +$0(){var s=A.d0(self.document,"flt-canvas-container") +if($.cuK())$.fv() +return new A.t2(!1,!0,s)}, +$S:596} +A.a0o.prototype={ +bm0(a){this.a.push(a)}, +d6(a){var s,r,q +for(s=this.a,r=0,q=0;q0))p.ax=null +else{r=a.a +q=new A.b9e(r,s) +s=A.L($.d5.I().MaskFilter,"MakeBlur",[$.d_L()[r.a],s,!0]) +s.toString +r=new A.jV(o,t.gA) +r.nx(q,s,o,t.e) +q.c!==$&&A.ck() +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)}, +sot(a){var s,r=this +if(r.ay===a)return +r.ay=a +s=r.as +s=s==null?null:s.a_K(a) +r.a.setShader(s)}, +snH(a){var s,r=this +if(r.ch===a)return +r.ch=a +r.Q=null +s=A.drd(a) +s.toString +s=r.CW=A.brd(s) +if(r.z){r.Q=s +s=r.CW=A.brd(new A.Pv($.cuA(),s))}s=s.b +s===$&&A.b() +s=s.a +s.toString +r.a.setColorFilter(s)}, +sagg(a){if(this.cx===a)return +this.cx=a +A.L(this.a,"setStrokeMiter",[a])}, +sbyj(a){if(J.q(this.c,a))return +t.fD.a(a) +a.aba(new A.b9f(this)) +this.c=a}, +$iEw:1} +A.b9f.prototype={ +$1(a){this.a.a.setImageFilter(a)}, +$S:6} +A.Py.prototype={ +gze(){return this.b}, +sze(a){var s +if(this.b===a)return +this.b=a +s=this.a +s===$&&A.b() +s=s.a +s.toString +s.setFillType($.Zw()[a.a])}, +vM(a,b,c){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"addArc",[A.mQ(a),b*57.29577951308232,c*57.29577951308232])}, +q5(a){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"addOval",[A.mQ(a),!1,1])}, +Lr(a,b,c){var s,r,q=A.hY() +q.tl(c.a,c.b,0) +s=A.b2n(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.L(q,"addPath",[r,s[0],s[1],s[2],s[3],s[4],s[5],s[6],s[7],s[8],!1])}, +av2(a,b){var s=A.cUg(a),r=this.a +r===$&&A.b() +r=r.a +r.toString +A.L(r,"addPoly",[s.toTypedArray(),!0]) +self.window.flutterCanvasKit.Free(s)}, +iM(a){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"addRRect",[A.Zr(a),!1])}, +jd(a){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"addRect",[A.mQ(a)])}, +tY(a,b,c,d,e){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"arcToOval",[A.mQ(b),c*57.29577951308232,d*57.29577951308232,e])}, +avs(a,b){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"arcToRotated",[b.a,b.b,0,!0,!1,a.a,a.b])}, +aO(a){var s=this.a +s===$&&A.b() +s.a.close()}, +VF(a){return new A.apa(this,!1)}, +axg(){return this.VF(!1)}, +p(a,b){var s=this.a +s===$&&A.b() +s=s.a +s.toString +return A.L(s,"contains",[b.a,b.b])}, +Me(a,b,c,d,e,f){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"cubicTo",[a,b,c,d,e,f])}, +np(a){var s=this.a +s===$&&A.b() +return A.cBv(s.a.getBounds())}, +ds(a,b,c){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"lineTo",[b,c])}, +fV(a,b,c){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"moveTo",[b,c])}, +aE7(a,b,c,d){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.L(s,"quadTo",[a,b,c,d])}, +b6(a){var s +this.b=B.e1 +s=this.a +s===$&&A.b() +s.a.reset()}, +eD(a){var s,r=this.a +r===$&&A.b() +s=r.a.copy() +A.L(s,"transform",[1,0,a.a,0,1,a.b,0,0,1]) +r=this.b +s.setFillType($.Zw()[r.a]) +return A.b9h(s,r)}, +$iqu:1} +A.apa.prototype={ +gaz(a){var s,r,q,p=this,o="Iterator",n=p.c +if(n===$){s=p.a.a +s===$&&A.b() +if(s.a.isEmpty())r=B.a4n +else{r=new A.b9d(p) +s=s.a +s.toString +q=new A.jV(o,t.gA) +q.nx(r,A.oY(self.window.flutterCanvasKit.ContourMeasureIter,[s,!1,1]),o,t.e) +r.b!==$&&A.ck() +r.b=q}p.c!==$&&A.a_() +n=p.c=r}return n}} +A.b9d.prototype={ +gK(a){var s=this.d +if(s==null)throw A.d(A.b8(u.gL)) +return s}, +t(){var s,r,q=this,p="PathMetric",o=q.b +o===$&&A.b() +s=o.a.next() +if(s==null){q.d=null +return!1}o=new A.ap_(q.a) +r=new A.jV(p,t.gA) +r.nx(o,s,p,t.e) +o.b!==$&&A.ck() +o.b=r +q.d=o;++q.c +return!0}} +A.ap_.prototype={ +Wn(a,b,c){var s,r=this.b +r===$&&A.b() +r=r.a +r.toString +r=A.L(r,"getSegment",[a,b,!0]) +s=this.a.a.b +r.setFillType($.Zw()[s.a]) +return A.b9h(r,s)}, +azi(a,b){return this.Wn(a,b,!0)}, +gA(a){var s=this.b +s===$&&A.b() +return s.a.length()}, +$iTq:1} +A.b9i.prototype={ +gK(a){throw A.d(A.b8("PathMetric iterator is empty."))}, +t(){return!1}} +A.HL.prototype={ +m(){this.b=!0 +var s=this.a +s===$&&A.b() +s.m()}, +HR(a,b){return this.bGV(a,b)}, +bGV(a,b){var s=0,r=A.p(t.lu),q,p=this +var $async$HR=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q=p.uZ(a,b) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$HR,r)}, +uZ(a,b){var s,r,q,p=$.b8g.I().e.M8(new A.V(a,b)).a,o=p.getCanvas() +A.L(o,"clear",[A.b1E($.ams(),B.D)]) +s=this.a +s===$&&A.b() +s=s.a +s.toString +o.drawPicture(s) +r=p.makeImageSnapshot() +p=$.d5.I().AlphaType.Premul +s=$.d5.I().ColorType.RGBA_8888 +q=A.cz_(p,self.window.flutterCanvasKit.ColorSpace.SRGB,s,b,a) +s=A.L(r,"readPixels",[0,0,q]) +s=A.L($.d5.I(),"MakeImage",[q,s,4*a]) +if(s==null)throw A.d(A.a0("Unable to convert image pixels into SkImage.")) +return A.ap3(s,null)}} +A.tE.prototype={ +yk(a){var s=new self.window.flutterCanvasKit.PictureRecorder() +this.a=s +return this.b=new A.rj(A.L(s,"beginRecording",[A.mQ(a),!0]))}, +uh(){var s,r,q,p=this.a +if(p==null)throw A.d(A.a0("PictureRecorder is not recording")) +s=p.finishRecordingAsPicture() +p.delete() +this.a=null +r=new A.HL() +q=new A.jV("Picture",t.gA) +q.nx(r,s,"Picture",t.e) +r.a!==$&&A.ck() +r.a=q +return r}, +gaBq(){return this.a!=null}} +A.bzw.prototype={} +A.Wr.prototype={ +ga_7(){var s,r,q,p,o,n,m,l=this,k=l.d +if(k===$){s=l.a.gjk() +r=t.qN +q=A.a([],r) +r=A.a([],r) +p=t.S +o=t.t +n=A.a([],o) +o=A.a([],o) +m=A.a([],t.jT) +l.d!==$&&A.a_() +k=l.d=new A.avC(s.d,l,new A.a2A(q,r),A.N(p,t.GB),A.N(p,t.JH),A.N(p,t.Xq),A.b9(p),n,o,m,A.N(p,t.c8))}return k}, +yR(a){return this.buM(a)}, +buM(a){var s=0,r=A.p(t.H),q,p=this,o,n,m,l +var $async$yR=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:m=p.a +l=m.grX() +if(l.gad(0)){s=1 +break}p.b=l +p.aDn() +o=p.ga_7().z=p.b +n=new A.tE() +n.yk(new A.W(0,0,0+o.a,0+o.b)) +A.L(n.b.a,"clear",[A.b1E($.ams(),B.D)]) +o=n.b +o.toString +new A.bje(o,null,p.ga_7()).bEO(a,!0) +m.gjk().d.prepend(p.gyM().gLF().gzl()) +s=3 +return A.i(p.Hz(p.gyM().gLF(),A.a([n.uh()],t.H0)),$async$yR) +case 3:s=4 +return A.i(p.ga_7().QG(0),$async$yR) +case 4:case 1:return A.n(q,r)}}) +return A.o($async$yR,r)}} +A.Qu.prototype={} +A.Lu.prototype={ +Bl(){var s,r,q,p=this,o=$.ec().d +if(o==null){s=self.window.devicePixelRatio +o=s===0?1:s}s=p.c +r=p.d +q=p.b.style +A.a6(q,"width",A.r(s/o)+"px") +A.a6(q,"height",A.r(r/o)+"px") +p.r=o}, +ale(a){var s=this,r=a.a +if(B.e.dO(r)===s.c&&B.e.dO(a.b)===s.d){r=$.ec().d +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}if(r!==s.r)s.Bl() +return}s.c=B.e.dO(r) +s.d=B.e.dO(a.b) +r=s.b +A.Cu(r,s.c) +A.Ct(r,s.d) +s.Bl()}, +hy(a){}, +m(){this.a.remove()}, +gzl(){return this.a}} +A.Po.prototype={ +H(){return"CanvasKitVariant."+this.b}} +A.a0b.prototype={ +gadi(){return"canvaskit"}, +gb1j(){var s,r,q,p,o=this.b +if(o===$){s=t.N +r=A.a([],t.LX) +q=t.Pc +p=A.a([],q) +q=A.a([],q) +this.b!==$&&A.a_() +o=this.b=new A.aEH(A.b9(s),r,p,q,A.N(s,t.Iq))}return o}, +gN3(){var s,r,q,p,o=this.b +if(o===$){s=t.N +r=A.a([],t.LX) +q=t.Pc +p=A.a([],q) +q=A.a([],q) +this.b!==$&&A.a_() +o=this.b=new A.aEH(A.b9(s),r,p,q,A.N(s,t.Iq))}return o}, +hy(a){var s=0,r=A.p(t.H),q,p=this,o +var $async$hy=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a +q=o==null?p.a=new A.b8h(p).$0():o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$hy,r)}, +wV(a,b){}, +aP(){return A.a0p()}, +ayd(a,b,c,d,e){return A.d2T(a,b,c,d,e)}, +FX(a,b){if(a.gaBq())A.C(A.aM(u.X,null)) +if(b==null)b=B.lG +return new A.aox(t.wW.a(a).yk(b))}, +ay_(a,b,c,d,e,f,g){var s=new A.ap1(b,c,d,e,f,g) +s.a1d() +return s}, +ay4(a,b,c,d,e,f,g){var s=new A.ap2(b,c,d,e,f,g) +s.a1d() +return s}, +axV(a,b,c,d,e,f,g,h){var s=new A.ap0(a,b,c,d,e,f,g,h) +s.a1d() +return s}, +FY(){return new A.tE()}, +a92(){var s=new A.aDG(A.a([],t.k5),B.a8),r=new A.boC(s) +r.b=s +return r}, +yz(a,b,c){var s,r,q,p="ImageFilter.blur",o=new A.adp(a,b,c),n=a===0&&b===0 +if(n){n=$.d5.I().ImageFilter +s=A.b2n(A.hY().a) +r=$.cDA().i(0,B.hB) +r.toString +q=A.L(n,"MakeMatrixTransform",[s,r,null])}else q=A.L($.d5.I().ImageFilter,"MakeBlur",[a,b,$.Zx()[c.a],null]) +n=new A.jV(p,t.gA) +n.nx(o,q,p,t.e) +o.d!==$&&A.ck() +o.d=n +return o}, +ay0(a,b){var s,r,q,p,o="ImageFilter.matrix",n=new Float64Array(A.f1(a)) +A.Zq(a) +n=new A.adq(n,b) +s=$.d5.I().ImageFilter +r=A.cC9(a) +q=$.cDA().i(0,b) +q.toString +p=new A.jV(o,t.gA) +p.nx(n,A.L(s,"MakeMatrixTransform",[r,q,null]),o,t.e) +n.d!==$&&A.ck() +n.d=p +return n}, +rG(a,b,c,d){return this.byR(a,b,c,d)}, +abh(a){return this.rG(a,!0,null,null)}, +byR(a,b,c,d){var s=0,r=A.p(t.hP),q +var $async$rG=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:q=A.dvV(a,d,c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$rG,r)}, +Np(a,b){return A.ctR(a.k(0),b)}, +ayn(a,b,c,d,e,f,g,h,i){return A.dvU(a,b,c,d,e,!0,g,h,i)}, +a8Z(a,b,c,d,e){var s=new A.ap5(b,c,d,e,t.XY.a(a)) +s.anM(B.hB) +return s}, +dc(){return A.d2S()}, +a8g(a,b,c){var s,r,q,p=t.E_ +p.a(b) +p.a(c) +p=$.d5.I().Path +s=b.a +s===$&&A.b() +s=s.a +s.toString +r=c.a +r===$&&A.b() +r=r.a +r.toString +q=p.MakeFromOp(s,r,$.d_P()[a.a]) +r=b.b +q.setFillType($.Zw()[r.a]) +return A.b9h(q,r)}, +ayb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1,a2){var s=t.eQ +return A.cvC(s.a(a),b,c,d,e,f,g,h,i,j,k,l,m,s.a(n),o,p,q,r,a0,a1,a2)}, +ay2(a,b,c,d,e,f,g,h,i,j,k,l){var s,r,q,p=t.e,o=p.a({}) +if(j!=null)o.textAlign=$.d_W()[j.a] +if(k!=null)o.textDirection=$.d_Y()[k.a] +if(h!=null)o.maxLines=h +s=f!=null +if(s)o.heightMultiplier=f +r=l==null +if(!r)o.textHeightBehavior=$.d_Z()[0] +if(a!=null)o.ellipsis=a +if(i!=null)o.strutStyle=A.d2R(i,l) +o.replaceTabCharacters=!0 +q=p.a({}) +if(e!=null||d!=null)q.fontStyle=A.cC8(e,d) +if(c!=null)A.cMd(q,c) +if(s)A.cMf(q,f) +A.cMc(q,A.cAM(b,null)) +o.textStyle=q +o.applyRoundingHack=!1 +p=$.d5.I().ParagraphStyle(o) +return new A.ap9(p,b,c,f,e,d,r?null:l.c)}, +ay8(a,b,c,d,e,f,g,h,i){return new A.a0q(a,b,c,g,h,e,d,f,i)}, +Mb(a){var s,r,q,p=null +t.m6.a(a) +s=A.a([],t.n) +r=A.a([],t.Cu) +q=$.d5.I().ParagraphBuilder.MakeFromFontCollection(a.a,$.b8g.I().gb1j().w) +r.push(A.cvC(p,p,p,p,p,p,a.b,p,p,a.c,a.f,p,a.e,p,a.d,a.r,p,p,p,p,p)) +return new A.b9g(q,a,s,r)}, +D3(a,b){return this.bFQ(a,b)}, +bFQ(a,b){var s=0,r=A.p(t.H),q=this,p +var $async$D3=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:A.cSA() +A.cSC() +p=q.w.i(0,b.a) +p.toString +s=2 +return A.i(p.yR(t.O2.a(a).a),$async$D3) +case 2:A.cSB() +return A.n(null,r)}}) +return A.o($async$D3,r)}, +bcB(a){var s=$.cf().gis().b.i(0,a) +this.w.n(0,s.a,this.d.a95(s))}, +bcD(a){var s=this.w +if(!s.aB(0,a))return +s=s.F(0,a) +s.toString +s.ga_7().m() +s.gyM().m()}, +awU(){$.d2w.V(0)}, +axZ(a,b,c,d,e,f,g,h,i){return new A.vS(d,a,c,h,e,i,f,b,g)}} +A.b8h.prototype={ +$0(){var s=0,r=A.p(t.P),q=this,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b +var $async$$0=A.l(function(a,a0){if(a===1)return A.m(a0,r) +while(true)switch(s){case 0:s=self.window.flutterCanvasKit!=null?2:4 +break +case 2:p=self.window.flutterCanvasKit +p.toString +$.d5.b=p +s=3 +break +case 4:b=$.d5 +s=5 +return A.i(A.b1R(),$async$$0) +case 5:b.b=a0 +self.window.flutterCanvasKit=$.d5.I() +case 3:p=$.cf() +o=p.gis() +n=q.a +if(n.f==null)for(m=o.b.gbm(0),l=A.z(m),l=l.h("@<1>").a1(l.y[1]),m=new A.c4(J.au(m.a),m.b,l.h("c4<1,2>")),l=l.y[1],k=t.mm,j=t.S,i=t.lz,h=t.e,g=n.w,f=n.d;m.t();){e=m.a +e=(e==null?l.a(e):e).a +d=p.e +if(d===$){d!==$&&A.a_() +d=p.e=new A.a3p(p,A.N(j,i),A.N(j,h),new A.pK(null,null,k),new A.pK(null,null,k))}c=d.b.i(0,e) +g.n(0,c.a,f.a95(c))}if(n.f==null){p=o.d +n.f=new A.dw(p,A.z(p).h("dw<1>")).eB(n.gbcA())}if(n.r==null){p=o.e +n.r=new A.dw(p,A.z(p).h("dw<1>")).eB(n.gbcC())}$.b8g.b=n +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.aEz.prototype={ +a1d(){var s=this,r=s.a93(),q=s.ga9a(),p=new A.jV(q,t.gA) +p.nx(s,r,q,t.e) +s.a!==$&&A.ck() +s.a=p}, +a_K(a){var s=this.a +s===$&&A.b() +s=s.a +s.toString +return s}, +$iPz:1, +$iqH:1} +A.ap1.prototype={ +ga9a(){return"Gradient.linear"}, +a93(){var s=this,r=$.d5.I().Shader,q=A.b2o(s.b),p=A.b2o(s.c),o=A.cC6(s.d),n=A.cC7(s.e),m=$.Zx()[s.f.a],l=s.r +l=l!=null?A.b2n(l):null +return A.L(r,"MakeLinearGradient",[q,p,o,n,m,l==null?null:l])}} +A.ap2.prototype={ +ga9a(){return"Gradient.radial"}, +a93(){var s=this,r=$.d5.I().Shader,q=A.b2o(s.b),p=A.cC6(s.d),o=A.cC7(s.e),n=$.Zx()[s.f.a],m=s.r +m=m!=null?A.b2n(m):null +if(m==null)m=null +return A.L(r,"MakeRadialGradient",[q,s.c,p,o,n,m,0])}} +A.ap0.prototype={ +ga9a(){return"Gradient.radial(conical)"}, +a93(){var s=this,r=$.d5.I().Shader,q=A.b2o(s.b),p=A.b2o(s.d),o=A.cC6(s.f),n=A.cC7(s.r),m=$.Zx()[s.w.a],l=s.x +l=l!=null?A.b2n(l):null +if(l==null)l=null +return A.L(r,"MakeTwoPointConicalGradient",[q,s.c,p,s.e,o,n,m,l,0])}} +A.ap5.prototype={ +a_K(a){var s=this.r +s===$&&A.b() +if(s!==a)this.anM(a) +s=this.f.a +s.toString +return s}, +anM(a){var s,r,q,p=this,o="ImageShader",n=p.c,m=p.e.b,l=p.a.a,k=p.b.a +if(a===B.kU){m===$&&A.b() +m=m.a +m===$&&A.b() +m=m.a +m.toString +s=$.Zx() +l=s[l] +k=s[k] +n=A.cC9(n) +r=A.L(m,"makeShaderCubic",[l,k,0.3333333333333333,0.3333333333333333,n])}else{m===$&&A.b() +m=m.a +m===$&&A.b() +m=m.a +m.toString +s=$.Zx() +l=s[l] +k=s[k] +s=A.cUh(a) +q=A.cUj(a) +n=A.cC9(n) +r=A.L(m,"makeShaderOptions",[l,k,s,q,n])}p.r=a +n=p.f +if(n!=null)n.m() +n=new A.jV(o,t.gA) +n.nx(p,r,o,t.e) +p.f=n}, +m(){var s,r=this +r.w=!0 +r.e.m() +s=r.f +if(s!=null)s.m() +r.f=null}, +$iPz:1, +$iqH:1} +A.t2.prototype={ +a6a(){var s,r=this.y +if(r!=null){s=this.w +if(s!=null)A.L(s,"setResourceCacheLimitBytes",[r])}}, +Zc(a,b,c){return this.bEQ(a,b,c)}, +bEQ(a,b,c){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k,j,i +var $async$Zc=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:i=q.a.a.getCanvas() +A.L(i,"clear",[A.b1E($.ams(),B.D)]) +B.b.aE(c,new A.rj(i).gayP()) +q.a.a.flush() +s=self.window.createImageBitmap!=null&&!A.dt8()&&!0?2:4 +break +case 2:if(q.b){i=q.z +i.toString +p=i}else{i=q.Q +i.toString +p=i}i=q.ax +o=B.e.au(a.b) +o=[o,B.e.au(a.a),0,i-o] +n=self.createImageBitmap(p,o[2],o[3],o[1],o[0]) +n=n +i=t.e +s=5 +return A.i(A.kA(n,i),$async$Zc) +case 5:m=e +b.ale(new A.V(m.width,m.height)) +l=b.e +if(l===$){o=A.o3(b.b,"bitmaprenderer",null) +o.toString +i.a(o) +b.e!==$&&A.a_() +b.e=o +l=o}l.transferFromImageBitmap(m) +s=3 +break +case 4:if(q.b){i=q.z +i.toString +k=i}else{i=q.Q +i.toString +k=i}i=q.ax +b.ale(a) +l=b.f +if(l===$){o=A.o3(b.b,"2d",null) +o.toString +t.e.a(o) +b.f!==$&&A.a_() +b.f=o +l=o}o=a.b +j=a.a +A.bdL(l,k,0,i-o,j,o,0,0,j,o) +case 3:return A.n(null,r)}}) +return A.o($async$Zc,r)}, +Bl(){var s,r,q,p=this,o=$.ec().d +if(o==null){s=self.window.devicePixelRatio +o=s===0?1:s}s=p.at +r=p.ax +q=p.Q.style +A.a6(q,"width",A.r(s/o)+"px") +A.a6(q,"height",A.r(r/o)+"px") +p.ay=o}, +bvn(){if(this.a!=null)return +this.M8(B.bmg)}, +M8(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f="webglcontextrestored",e="webglcontextlost",d="getParameter" +if(a.gad(0))throw A.d(A.d2u("Cannot create surfaces of empty size.")) +if(!g.d){s=g.cy +if(s!=null&&a.a===s.a&&a.b===s.b){r=$.ec().d +if(r==null){q=self.window.devicePixelRatio +r=q===0?1:q}if(g.c&&r!==g.ay)g.Bl() +q=g.a +q.toString +return q}p=g.cx +if(p!=null)q=a.a>p.a||a.b>p.b +else q=!1 +if(q){o=a.X(0,1.4) +q=g.a +if(q!=null)q.m() +g.a=null +g.at=B.e.dO(o.a) +g.ax=B.e.dO(o.b) +q=g.at +if(g.b){n=g.z +n.toString +A.cHs(n,q) +q=g.z +q.toString +A.cHr(q,g.ax)}else{n=g.Q +n.toString +A.Cu(n,q) +q=g.Q +q.toString +A.Ct(q,g.ax)}g.cx=new A.V(g.at,g.ax) +if(g.c)g.Bl()}}if(g.d||g.cx==null){q=g.a +if(q!=null)q.m() +g.a=null +q=g.w +if(q!=null)q.releaseResourcesAndAbandonContext() +q=g.w +if(q!=null)q.delete() +g.w=null +q=g.z +if(q!=null){A.lv(q,f,g.r,!1) +q=g.z +q.toString +A.lv(q,e,g.f,!1) +g.f=g.r=g.z=null}else{q=g.Q +if(q!=null){A.lv(q,f,g.r,!1) +q=g.Q +q.toString +A.lv(q,e,g.f,!1) +g.Q.remove() +g.f=g.r=g.Q=null}}g.at=B.e.dO(a.a) +q=g.ax=B.e.dO(a.b) +n=g.b +m=g.at +if(n){l=g.z=A.oY(self.OffscreenCanvas,[m,q]) +g.Q=null}else{k=g.Q=A.BA(q,m) +g.z=null +if(g.c){q=A.bH("true") +A.L(k,"setAttribute",["aria-hidden",q==null?t.K.a(q):q]) +A.a6(g.Q.style,"position","absolute") +q=g.Q +q.toString +g.as.append(q) +g.Bl()}l=k}q=t.g +g.r=q.a(A.cQ(g.gaZ1())) +q=q.a(A.cQ(g.gaZ_())) +g.f=q +A.fS(l,e,q,!1) +A.fS(l,f,g.r,!1) +g.e=g.d=!1 +q=$.hy +if((q==null?$.hy=A.pN():q)!==-1&&!A.nJ().gawI()){q=$.hy +if(q==null)q=$.hy=A.pN() +j=t.e.a({antialias:0,majorVersion:q}) +if(n){q=$.d5.I() +m=g.z +m.toString +i=B.e.au(q.GetWebGLContext(m,j))}else{q=$.d5.I() +m=g.Q +m.toString +i=B.e.au(q.GetWebGLContext(m,j))}g.x=i +if(i!==0){g.w=A.L($.d5.I(),"MakeGrContext",[i]) +if(g.ch===-1||g.CW===-1){q=$.hy +if(n){n=g.z +n.toString +h=A.d52(n,q==null?$.hy=A.pN():q)}else{n=g.Q +n.toString +h=A.d4U(n,q==null?$.hy=A.pN():q)}g.ch=B.e.au(A.L(h,d,[B.e.au(h.SAMPLES)])) +g.CW=B.e.au(A.L(h,d,[B.e.au(h.STENCIL_BITS)]))}g.a6a()}}g.cx=a}g.cy=a +q=g.a +if(q!=null)q.m() +return g.a=g.aZr(a)}, +aZ2(a){this.e=!1 +$.cf().abl() +a.stopPropagation() +a.preventDefault()}, +aZ0(a){this.d=this.e=!0 +a.preventDefault()}, +aZr(a){var s,r=this,q=$.hy +if((q==null?$.hy=A.pN():q)===-1)return r.SB("WebGL support not detected") +else if(A.nJ().gawI())return r.SB("CPU rendering forced by application") +else if(r.x===0)return r.SB("Failed to initialize WebGL context") +else{q=$.d5.I() +s=r.w +s.toString +s=A.L(q,"MakeOnScreenGLSurface",[s,Math.ceil(a.a),Math.ceil(a.b),self.window.flutterCanvasKit.ColorSpace.SRGB,r.ch,r.CW]) +if(s==null)return r.SB("Failed to initialize WebGL surface") +return new A.apc(s,r.x)}}, +SB(a){var s,r,q +if(!$.cMs){$.k6().$1("WARNING: Falling back to CPU-only rendering. "+a+".") +$.cMs=!0}if(this.b){s=$.d5.I() +r=this.z +r.toString +q=s.MakeSWCanvasSurface(r)}else{s=$.d5.I() +r=this.Q +r.toString +q=s.MakeSWCanvasSurface(r)}return new A.apc(q,null)}, +hy(a){this.bvn()}, +m(){var s=this,r=s.z +if(r!=null)A.lv(r,"webglcontextlost",s.f,!1) +r=s.z +if(r!=null)A.lv(r,"webglcontextrestored",s.r,!1) +s.r=s.f=null +r=s.a +if(r!=null)r.m()}, +gzl(){return this.as}} +A.apc.prototype={ +m(){if(this.c)return +this.a.dispose() +this.c=!0}} +A.ap9.prototype={} +A.PA.prototype={ +gag_(){var s,r=this,q=r.dy +if(q===$){s=new A.b9j(r).$0() +r.dy!==$&&A.a_() +r.dy=s +q=s}return q}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.PA&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&J.q(b.c,s.c)&&b.d==s.d&&b.f==s.f&&b.r==s.r&&b.w==s.w&&b.ax==s.ax&&b.x==s.x&&b.z==s.z&&b.Q==s.Q&&b.as==s.as&&b.at==s.at&&b.e==s.e&&J.q(b.ay,s.ay)&&b.ch==s.ch&&b.CW==s.CW&&A.pQ(b.cx,s.cx)&&A.pQ(b.y,s.y)&&A.pQ(b.cy,s.cy)&&A.pQ(b.db,s.db)}, +gv(a){var s=this,r=null,q=s.cx,p=s.db,o=s.y,n=o==null?r:A.cs(o),m=q==null?r:A.cs(q) +return A.ad(s.a,s.b,s.c,s.d,s.f,s.r,s.w,s.ax,s.x,n,s.z,s.Q,s.as,s.at,s.ay,s.ch,s.CW,m,s.e,A.ad(r,p==null?r:A.cs(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,B.a,B.a,B.a,B.a,B.a,B.a))}, +k(a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1="unspecified",a2=a0.y,a3=a0.x,a4=a0.a +a4=A.r(a4==null?a1:a4) +s=a0.b +s=A.r(s==null?a1:s) +r=a0.c +r=A.r(r==null?a1:r) +q=a0.d +q=A.r(q==null?a1:q) +p=a0.e +p=A.r(p==null?a1:p) +o=a0.f +o=A.r(o==null?a1:o) +n=a0.r +n=A.r(n==null?a1:n) +m=a0.w +m=A.r(m==null?a1:m) +l=a3!=null&&a3.length!==0?a3:a1 +k=A.r(a2!=null&&a2.length!==0?a2:a1) +j=a0.z +j=A.r(j==null?a1:j) +i=a0.Q +i=i!=null?A.r(i)+"x":a1 +h=a0.as +h=h!=null?A.r(h)+"x":a1 +g=a0.at +g=g!=null?A.r(g)+"x":a1 +f=a0.ax +f=A.r(f==null?a1:f) +e=a0.ay +e=A.r(e==null?a1:e) +d=a0.ch +d=A.r(d==null?a1:d) +c=a0.CW +c=A.r(c==null?a1:c) +b=a0.cx +b=A.r(b==null?a1:b) +a=a0.db +return"TextStyle(color: "+a4+", decoration: "+s+", decorationColor: "+r+", decorationStyle: "+q+", decorationThickness: "+p+", fontWeight: "+o+", fontStyle: "+n+", textBaseline: "+m+", fontFamily: "+A.r(l)+", fontFamilyFallback: "+k+", fontSize: "+j+", letterSpacing: "+i+", wordSpacing: "+h+", height: "+g+", leadingDistribution: "+f+", locale: "+e+", background: "+d+", foreground: "+c+", shadows: "+b+", fontFeatures: unspecified, fontVariations: "+A.r(a==null?a1:a)+")"}} +A.b9j.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this.a,f=g.a,e=g.b,d=g.c,c=g.d,b=g.e,a=g.f,a0=g.r,a1=g.w,a2=g.z,a3=g.Q,a4=g.as,a5=g.at,a6=g.ay,a7=g.ch,a8=g.CW,a9=g.cx,b0=g.db,b1=t.e,b2=b1.a({}) +if(a7!=null){s=A.Zk(new A.v(a7.y)) +b2.backgroundColor=s}if(f!=null){s=A.Zk(f) +b2.color=s}if(e!=null){r=B.e.au($.d5.I().NoDecoration) +s=e.a +if((s|1)===s)r=(r|B.e.au($.d5.I().UnderlineDecoration))>>>0 +if((s|2)===s)r=(r|B.e.au($.d5.I().OverlineDecoration))>>>0 +if((s|4)===s)r=(r|B.e.au($.d5.I().LineThroughDecoration))>>>0 +b2.decoration=r}if(b!=null)b2.decorationThickness=b +if(d!=null){s=A.Zk(d) +b2.decorationColor=s}if(c!=null)b2.decorationStyle=$.d_X()[c.a] +if(a1!=null)b2.textBaseline=$.cDU()[a1.a] +if(a2!=null)A.cMd(b2,a2) +if(a3!=null)b2.letterSpacing=a3 +if(a4!=null)b2.wordSpacing=a4 +if(a5!=null)A.cMf(b2,a5) +switch(g.ax){case null:case void 0:break +case B.ag:A.cMe(b2,!0) +break +case B.xY:A.cMe(b2,!1) +break}if(a6!=null){s=a6.pY("-") +b2.locale=s}q=g.dx +if(q===$){p=A.cAM(g.x,g.y) +g.dx!==$&&A.a_() +g.dx=p +q=p}A.cMc(b2,q) +if(a!=null||a0!=null)b2.fontStyle=A.cC8(a,a0) +if(a8!=null){g=A.Zk(new A.v(a8.y)) +b2.foregroundColor=g}if(a9!=null){o=A.a([],t.J) +for(g=a9.length,n=0;n")),o=o.h("a2.E");q.t();){p=q.d +if(p==null)p=o.a(p) +if(r>=p.startIndex&&r<=p.endIndex)return new A.ea(B.e.au(p.startIndex),B.e.au(p.endIndex))}return B.aw}, +BK(){var s,r,q,p,o=this.a +o===$&&A.b() +o=o.a.getLineMetrics() +s=B.b.jx(o,t.e) +r=A.a([],t.ER) +for(o=s.$ti,q=new A.bj(s,s.gA(0),o.h("bj")),o=o.h("a2.E");q.t();){p=q.d +r.push(new A.ap6(p==null?o.a(p):p))}return r}, +m(){var s=this.a +s===$&&A.b() +s.m() +this.as=!0}} +A.ap6.prototype={ +gavy(){return this.a.ascent}, +gMr(){return this.a.descent}, +gP6(){return this.a.ascent}, +gaAr(){return this.a.isHardBreak}, +gu2(){return this.a.baseline}, +gdK(a){var s=this.a +return B.e.aF(s.ascent+s.descent)}, +goy(a){return this.a.left}, +geP(a){return this.a.width}, +gabM(a){return B.e.au(this.a.lineNumber)}, +$iDY:1} +A.b9g.prototype={ +UR(a,b,c,d,e){var s,r;++this.c +this.d.push(1) +s=e==null?b:e +r=d==null?B.Q:d +A.L(this.a,"addPlaceholder",[a,b,$.d_Q()[c.a],$.cDU()[r.a],s])}, +av0(a,b,c){return this.UR(a,b,c,null,null)}, +Fk(a){var s=A.a([],t.s),r=B.b.gP(this.e),q=r.x +if(q!=null)s.push(q) +q=r.y +if(q!=null)B.b.L(s,q) +$.ar().gN3().gaaC().bvm(a,s) +A.L(this.a,"addText",[a])}, +dN(){var s,r,q,p,o,n,m,l,k,j="Paragraph" +if($.cZs()){s=this.a +r=B.ai.hF(0,new A.e0(s.getText())) +q=A.dd6($.d0B(),r) +p=q==null +o=p?null:q.i(0,r) +if(o!=null)n=o +else{m=A.cSz(r,B.Ey) +l=A.cSz(r,B.Ex) +n=new A.aUy(A.dsm(r),l,m)}if(!p){p=q.c +k=p.i(0,r) +if(k==null)q.ai0(0,r,n) +else{m=k.d +if(!J.q(m.b,n)){k.hB(0) +q.ai0(0,r,n)}else{k.hB(0) +l=q.b +l.UL(m) +l=l.a.b.Jt() +l.toString +p.n(0,r,l)}}}A.L(s,"setWordsUtf16",[n.c]) +A.L(s,"setGraphemeBreaksUtf16",[n.b]) +A.L(s,"setLineBreaksUtf16",[n.a])}s=this.a +n=s.build() +s.delete() +s=new A.ap8(this.b) +r=new A.jV(j,t.gA) +r.nx(s,n,j,t.e) +s.a!==$&&A.ck() +s.a=r +return s}, +gaDc(){return this.c}, +fD(){var s=this.e +if(s.length<=1)return +s.pop() +this.a.pop()}, +CX(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.e,a5=B.b.gP(a4) +t.Hh.a(a6) +s=a6.a +if(s==null)s=a5.a +r=a6.b +if(r==null)r=a5.b +q=a6.c +if(q==null)q=a5.c +p=a6.d +if(p==null)p=a5.d +o=a6.e +if(o==null)o=a5.e +n=a6.f +if(n==null)n=a5.f +m=a6.r +if(m==null)m=a5.r +l=a6.w +if(l==null)l=a5.w +k=a6.x +if(k==null)k=a5.x +j=a6.y +if(j==null)j=a5.y +i=a6.z +if(i==null)i=a5.z +h=a6.Q +if(h==null)h=a5.Q +g=a6.as +if(g==null)g=a5.as +f=a6.at +if(f==null)f=a5.at +e=a6.ax +if(e==null)e=a5.ax +d=a6.ay +if(d==null)d=a5.ay +c=a6.ch +if(c==null)c=a5.ch +b=a6.CW +if(b==null)b=a5.CW +a=a6.cx +if(a==null)a=a5.cx +a0=a6.db +if(a0==null)a0=a5.db +a1=A.cvC(c,s,r,q,p,o,k,j,a5.cy,i,m,a0,n,b,f,e,h,d,a,l,g) +a4.push(a1) +a4=a1.CW +s=a4==null +if(!s||a1.ch!=null){a2=s?null:a4.a +if(a2==null){a2=$.cUX() +a4=a1.a +a4=a4==null?null:a4.gj(a4) +A.L(a2,"setColorInt",[a4==null?4278190080:a4])}a4=a1.ch +a3=a4==null?null:a4.a +if(a3==null)a3=$.cUW() +this.a.pushPaintStyle(a1.gag_(),a2,a3)}else this.a.pushStyle(a1.gag_())}} +A.cpq.prototype={ +$1(a){return this.a===a}, +$S:20} +A.a4A.prototype={ +H(){return"IntlSegmenterGranularity."+this.b}} +A.aoy.prototype={ +k(a){return"CanvasKitError: "+this.a}} +A.apd.prototype={ +m(){var s=this.f +s===$&&A.b() +s.m()}} +A.b9k.prototype={ +$1(a){return a<0||a>=this.a.length}, +$S:42} +A.a0K.prototype={ +aKQ(a,b){var s={} +s.a=!1 +this.a.IM(0,A.bw(J.aS(a.b,"text"))).bf(new A.b9F(s,b),t.P).mY(new A.b9G(s,b))}, +aIy(a){this.b.Iq(0).bf(new A.b9A(a),t.P).mY(new A.b9B(this,a))}, +by_(a){this.b.Iq(0).bf(new A.b9D(a),t.P).mY(new A.b9E(a))}} +A.b9F.prototype={ +$1(a){var s=this.b +if(a){s.toString +s.$1(B.bb.h8([!0]))}else{s.toString +s.$1(B.bb.h8(["copy_fail","Clipboard.setData failed",null])) +this.a.a=!0}}, +$S:132} +A.b9G.prototype={ +$1(a){var s +if(!this.a.a){s=this.b +s.toString +s.$1(B.bb.h8(["copy_fail","Clipboard.setData failed",null]))}}, +$S:49} +A.b9A.prototype={ +$1(a){var s=A.a1(["text",a],t.N,t.z),r=this.a +r.toString +r.$1(B.bb.h8([s]))}, +$S:439} +A.b9B.prototype={ +$1(a){var s +if(a instanceof A.x2){A.jk(B.w,null,t.H).bf(new A.b9z(this.b),t.P) +return}s=this.b +A.eP("Could not get text from clipboard: "+A.r(a)) +s.toString +s.$1(B.bb.h8(["paste_fail","Clipboard.getData failed",null]))}, +$S:49} +A.b9z.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(null)}, +$S:33} +A.b9D.prototype={ +$1(a){var s=A.a1(["value",a.length!==0],t.N,t.z),r=this.a +r.toString +r.$1(B.bb.h8([s]))}, +$S:439} +A.b9E.prototype={ +$1(a){var s,r +if(a instanceof A.x2){A.jk(B.w,null,t.H).bf(new A.b9C(this.a),t.P) +return}s=A.a1(["value",!1],t.N,t.z) +r=this.a +r.toString +r.$1(B.bb.h8([s]))}, +$S:49} +A.b9C.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(null)}, +$S:33} +A.b9x.prototype={ +IM(a,b){return this.aKP(0,b)}, +aKP(a,b){var s=0,r=A.p(t.y),q,p=2,o,n,m,l,k +var $async$IM=A.l(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.i(A.kA(A.L(m,"writeText",[b]),t.z),$async$IM) +case 7:p=2 +s=6 +break +case 4:p=3 +k=o +n=A.ag(k) +A.eP("copy is not successful "+A.r(n)) +m=A.dm(!1,t.y) +q=m +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:q=A.dm(!0,t.y) +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$IM,r)}} +A.b9y.prototype={ +Iq(a){var s=0,r=A.p(t.N),q +var $async$Iq=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=A.kA(self.window.navigator.clipboard.readText(),t.N) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Iq,r)}} +A.bhs.prototype={ +IM(a,b){return A.dm(this.bhG(b),t.y)}, +bhG(a){var s,r,q,p,o="-99999px",n="transparent",m=A.d0(self.document,"textarea"),l=m.style +A.a6(l,"position","absolute") +A.a6(l,"top",o) +A.a6(l,"left",o) +A.a6(l,"opacity","0") +A.a6(l,"color",n) +A.a6(l,"background-color",n) +A.a6(l,"background",n) +self.document.body.append(m) +s=m +A.cHn(s,a) +s.focus() +s.select() +r=!1 +try{r=A.L(self.document,"execCommand",["copy"]) +if(!r)A.eP("copy is not successful")}catch(p){q=A.ag(p) +A.eP("copy is not successful "+A.r(q))}finally{s.remove()}return r}} +A.bht.prototype={ +Iq(a){return A.pd(new A.x2("Paste is not implemented for this browser."),null,t.N)}} +A.apw.prototype={ +H(){return"ColorFilterType."+this.b}} +A.a2D.prototype={ +k(a){var s=this +switch(s.d.a){case 0:return"ColorFilter.mode("+A.r(s.a)+", "+A.r(s.b)+")" +case 1:return"ColorFilter.matrix("+A.r(s.c)+")" +case 2:return"ColorFilter.linearToSrgbGamma()" +case 3:return"ColorFilter.srgbToLinearGamma()"}}} +A.bit.prototype={ +gawI(){var s=this.b +if(s==null)s=null +else{s=s.canvasKitForceCpuOnly +if(s==null)s=null}return s===!0}, +ga9c(){var s=this.b +if(s==null)s=null +else{s=s.debugShowSemanticsNodes +if(s==null)s=null}return s===!0}, +gaEZ(){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.atq.prototype={} +A.bDD.prototype={ +Qp(a){return this.aLm(a)}, +aLm(a){var s=0,r=A.p(t.y),q,p=2,o,n,m,l,k,j,i +var $async$Qp=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:j=self.window.screen +s=j!=null?3:4 +break +case 3:n=j.orientation +s=n!=null?5:6 +break +case 5:l=J.ao(a) +s=l.gad(a)?7:9 +break +case 7:n.unlock() +q=!0 +s=1 +break +s=8 +break +case 9:m=A.dcQ(A.bw(l.ga2(a))) +s=m!=null?10:11 +break +case 10:p=13 +s=16 +return A.i(A.kA(A.L(n,"lock",[m]),t.z),$async$Qp) +case 16:q=!0 +s=1 +break +p=2 +s=15 +break +case 13:p=12 +i=o +l=A.dm(!1,t.y) +q=l +s=1 +break +s=15 +break +case 12:s=2 +break +case 15:case 11:case 8:case 6:case 4:q=!1 +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Qp,r)}} +A.bdP.prototype={ +$1(a){return A.L(this.a,"warn",[a])}, +$S:11} +A.bdS.prototype={ +$1(a){a.toString +return A.ax(a)}, +$S:499} +A.avF.prototype={ +gbM(a){return A.bZ(this.b.status)}, +gbrc(){var s=this.b.headers,r=A.L(s,"get",["Content-Length"]) +if(r==null)r=null +if(r==null)return null +return A.cY(r,null)}, +gXk(){var s=this.b,r=A.bZ(s.status)>=200&&A.bZ(s.status)<300,q=A.bZ(s.status),p=A.bZ(s.status),o=A.bZ(s.status)>307&&A.bZ(s.status)<400 +return r||q===0||p===304||o}, +gHn(){var s=this +if(!s.gXk())throw A.d(new A.avE(s.a,s.gbM(0))) +return new A.bm6(s.b)}, +$icIO:1} +A.bm6.prototype={ +d8(a,b,c){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$d8=A.l(function(d,e){if(d===1)return A.m(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.i(A.kA(n.read(),p),$async$d8) +case 4:o=e +if(o.done){s=3 +break}b.$1(c.a(o.value)) +s=2 +break +case 3:return A.n(null,r)}}) +return A.o($async$d8,r)}, +Bw(){var s=0,r=A.p(t.pI),q,p=this,o +var $async$Bw=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.kA(p.a.arrayBuffer(),t.X),$async$Bw) +case 3:o=b +o.toString +q=t.pI.a(o) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Bw,r)}} +A.avE.prototype={ +k(a){return'Flutter Web engine failed to fetch "'+this.a+'". HTTP request succeeded, but the server responded with HTTP status '+this.b+"."}, +$ibP:1} +A.a42.prototype={ +k(a){return'Flutter Web engine failed to complete HTTP request to fetch "'+this.a+'": '+A.r(this.b)}, +$ibP:1} +A.asW.prototype={ +ao(a){return A.L(this.b,"removeEventListener",[this.a,this.c])}} +A.a23.prototype={} +A.crz.prototype={ +$2(a,b){this.a.$2(B.b.jx(a,t.e),b)}, +$S:1789} +A.cqV.prototype={ +$1(a){var s=A.di(a,0,null) +if(B.bln.p(0,B.b.gP(s.gzL())))return s.k(0) +A.L(self.window.console,"error",["URL rejected by TrustedTypes policy flutter-engine: "+a+"(download prevented)"]) +return null}, +$S:1856} +A.aNK.prototype={ +t(){var s=++this.b,r=this.a +if(s>r.length)throw A.d(A.a0("Iterator out of bounds")) +return s"))}, +gA(a){return B.e.au(this.a.length)}} +A.aNP.prototype={ +t(){var s=++this.b,r=this.a +if(s>r.length)throw A.d(A.a0("Iterator out of bounds")) +return s"))}, +gA(a){return B.e.au(this.a.length)}} +A.asU.prototype={ +gK(a){var s=this.b +s===$&&A.b() +return s}, +t(){var s=this.a.next() +if(s.done)return!1 +this.b=this.$ti.c.a(s.value) +return!0}} +A.biK.prototype={ +av4(a){var s,r=$.fv(),q=this.a +if(q==null){s=A.d0(self.document,"flt-svg-filters") +A.a6(s.style,"visibility","hidden") +q=$.nI +if(r===B.aQ)q.c.avB(s,q.gjk().a) +else q.gjk().c.insertBefore(s,$.nI.gjk().c.firstChild) +this.a=s +r=s}else r=q +r.append(a)}, +HB(a){if(a==null)return +a.remove()}} +A.bgC.prototype={} +A.aDW.prototype={} +A.LN.prototype={} +A.aVQ.prototype={} +A.bD5.prototype={ +d6(a){var s,r,q=this,p=q.MZ$ +p=p.length===0?q.a:B.b.gP(p) +s=q.wf$ +r=new A.dX(new Float32Array(16)) +r.T(s) +q.azx$.push(new A.aVQ(p,r))}, +de(a){var s,r,q,p=this,o=p.azx$ +if(o.length===0)return +s=o.pop() +p.wf$=s.b +o=p.MZ$ +r=s.a +q=p.a +while(!0){if(!!J.q(o.length===0?q:B.b.gP(o),r))break +o.pop()}}, +ba(a,b,c){this.wf$.ba(0,b,c)}, +jt(a,b,c){this.wf$.jt(0,b,c)}, +qE(a,b){this.wf$.aFc(0,B.X1,b)}, +ah(a,b){this.wf$.hc(0,new A.dX(b))}} +A.ctH.prototype={ +$1(a){$.cAJ=!1 +$.cf().rI("flutter/system",$.cZI(),new A.ctG())}, +$S:26} +A.ctG.prototype={ +$1(a){}, +$S:63} +A.biV.prototype={ +bvm(a,b){var s,r,q,p,o,n=this,m=A.b9(t.S) +for(s=new A.a8G(a),r=n.d,q=n.c;s.t();){p=s.d +if(!(p<160||r.p(0,p)||q.p(0,p)))m.B(0,p)}if(m.a===0)return +o=A.R(m,!0,m.$ti.h("cZ.E")) +if(n.a.aIX(o,b).length!==0)n.bmb(o)}, +bmb(a){var s=this +s.at.L(0,a) +if(!s.ax){s.ax=!0 +s.Q=A.jk(B.w,new A.bj2(s),t.H)}}, +b0y(){var s,r +this.ax=!1 +s=this.at +if(s.a===0)return +r=A.R(s,!0,A.z(s).h("cZ.E")) +s.V(0) +this.bwg(r)}, +bwg(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=A.a([],t.t),d=A.a([],t.XS),c=t.Qg,b=A.a([],c) +for(s=a.length,r=t.mh,q=0;qr){B.b.V(k) +k.push(o) +r=o.e +q=o}else if(n===r){k.push(o) +if(o.d1)if(B.b.lF(k,new A.bj1(l))){s=self.window.navigator.language +if(s==="zh-Hans"||s==="zh-CN"||s==="zh-SG"||s==="zh-MY"){m=l.f +if(B.b.p(k,m))q=m}else if(s==="zh-Hant"||s==="zh-TW"||s==="zh-MO"){m=l.r +if(B.b.p(k,m))q=m}else if(s==="zh-HK"){m=l.w +if(B.b.p(k,m))q=m}else if(s==="ja"){m=l.x +if(B.b.p(k,m))q=m}else if(s==="ko"){m=l.y +if(B.b.p(k,m))q=m}else{m=l.f +if(B.b.p(k,m))q=m}}else{m=l.z +if(B.b.p(k,m))q=m +else{m=l.f +if(B.b.p(k,m))q=m}}q.toString +return q}, +aZJ(a){var s,r,q,p=A.a([],t.XS) +for(s=a.split(","),r=s.length,q=0;q=q[r])s=r+1 +else p=r}}} +A.atN.prototype={ +bIa(){var s=this.f +if(s==null)return A.dm(null,t.H) +else return s.a}, +B(a,b){var s,r,q=this +if(q.c.p(0,b)||q.d.aB(0,b.b))return +s=q.d +r=s.a +s.n(0,b.b,b) +if(q.f==null)q.f=new A.aI(new A.ak($.at,t.W),t.gR) +if(r===0)A.d3(B.w,q.gaN4())}, +DM(){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k,j,i +var $async$DM=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:j=A.N(t.N,t.uz) +i=A.a([],t.s) +for(p=q.d,o=p.gbm(0),n=A.z(o),n=n.h("@<1>").a1(n.y[1]),o=new A.c4(J.au(o.a),o.b,n.h("c4<1,2>")),m=t.H,n=n.y[1];o.t();){l=o.a +if(l==null)l=n.a(l) +j.n(0,l.b,A.Rd(new A.bhF(q,l,i),m))}s=2 +return A.i(A.ma(j.gbm(0),!1,m),$async$DM) +case 2:B.b.o3(i) +for(o=i.length,n=q.a,m=n.as,k=0;k").a1(s.y[1]),o=new A.c4(J.au(o.a),o.b,s.h("c4<1,2>")),s=s.y[1];o.t();){r=o.a +for(r=J.au(r==null?s.a(r):r);r.t();){q=r.gK(r) +q.b.$1(q.a)}}p.b=p.a +p.a=null}, +aif(a,b){var s,r=this,q=r.a +if(q==null)q=r.a=A.N(t.N,r.$ti.h("x>")) +s=q.i(0,a) +if(s==null){s=A.a([],r.$ti.h("D>")) +q.n(0,a,s) +q=s}else q=s +q.push(b)}, +bGo(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).fE(s,0) +this.aif(a,r) +return r.a}} +A.X6.prototype={} +A.a6X.prototype={ +gnE(){return this.cx}, +Bp(a){var s=this +s.Jb(a) +s.cx=a.cx +s.cy=a.cy +s.db=a.db +a.cx=null}, +dv(a){var s,r=this,q="transform-origin",p=r.w1("flt-backdrop") +A.a6(p.style,q,"0 0 0") +s=A.d0(self.document,"flt-backdrop-interior") +r.cx=s +A.a6(s.style,"position","absolute") +s=r.w1("flt-backdrop-filter") +r.cy=s +A.a6(s.style,q,"0 0 0") +s=r.cy +s.toString +p.append(s) +s=r.cx +s.toString +p.append(s) +return p}, +qj(){var s=this +s.E4() +$.Bw.HB(s.db) +s.cy=s.cx=s.db=null}, +jS(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=t.m1.a(g.CW) +$.Bw.HB(g.db) +g.db=null +s=g.fr +r=g.f +if(s!=r){r.toString +q=new A.dX(new Float32Array(16)) +if(q.l7(r)===0)A.C(A.ey(r,"other","Matrix cannot be inverted")) +g.dy=q +g.fr=g.f}$.nI.toString +p=$.ec().d +if(p==null){s=self.window.devicePixelRatio +p=s===0?1:s}s=g.dy +s===$&&A.b() +o=A.cu5(s,new A.W(0,0,$.nI.grX().a*p,$.nI.grX().b*p)) +n=o.a +m=o.b +l=o.c-n +k=o.d-m +j=g.e +for(;j!=null;){if(j.gNs()){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.a6(h,"position","absolute") +A.a6(h,"left",A.r(n)+"px") +A.a6(h,"top",A.r(m)+"px") +A.a6(h,"width",A.r(l)+"px") +A.a6(h,"height",A.r(k)+"px") +s=$.fv() +if(s===B.ew){A.a6(h,"background-color","#000") +A.a6(h,"opacity","0.2")}else{if(s===B.aQ){s=g.cy +s.toString +A.j9(s,"-webkit-backdrop-filter",f.gWN())}s=g.cy +s.toString +A.j9(s,"backdrop-filter",f.gWN())}}, +cI(a,b){var s=this +s.vk(0,b) +if(!s.CW.l(0,b.CW))s.jS() +else s.ajs()}, +ajs(){var s=this.e +for(;s!=null;){if(s.gNs()){if(!J.q(s.w,this.dx))this.jS() +break}s=s.e}}, +uT(){this.aPu() +this.ajs()}, +$ib5t:1} +A.y2.prototype={ +svT(a,b){var s,r,q=this +q.a=b +s=B.e.ec(b.a)-1 +r=B.e.ec(q.a.b)-1 +if(q.z!==s||q.Q!==r){q.z=s +q.Q=r +q.atZ()}}, +atZ(){A.a6(this.c.style,"transform","translate("+this.z+"px, "+this.Q+"px)")}, +arV(){var s=this,r=s.a,q=r.a +r=r.b +s.d.ba(0,-q+(q-1-s.z)+1,-r+(r-1-s.Q)+1)}, +ayM(a,b){return this.r>=A.b6j(a.c-a.a)&&this.w>=A.b6i(a.d-a.b)&&this.ay===b}, +V(a){var s,r,q,p,o,n=this +n.at=!1 +n.d.V(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(a3.r) +j=Math.abs(a3.e) +i=Math.abs(a3.w) +h=Math.abs(a3.f) +g=Math.abs(a3.z) +f=Math.abs(a3.x) +e=Math.abs(a3.Q) +d=Math.abs(a3.y) +a.beginPath() +A.L(a,"moveTo",[p+k,n]) +a0=o-k +A.L(a,c,[a0,n]) +A.alW(a,a0,n+i,k,i,0,4.71238898038469,6.283185307179586,!1) +a0=m-d +A.L(a,c,[o,a0]) +A.alW(a,o-f,a0,f,d,0,0,1.5707963267948966,!1) +a0=p+g +A.L(a,c,[a0,m]) +A.alW(a,a0,m-e,g,e,0,1.5707963267948966,3.141592653589793,!1) +a0=n+h +A.L(a,c,[p,a0]) +A.alW(a,p+j,a0,j,h,0,3.141592653589793,4.71238898038469,!1) +a2.ghu().nd(b) +a2.ghu().uY()}}, +Gf(a,b){var s,r,q,p,o,n,m=this.d +if(this.Uq(b)){a=A.alQ(a,b) +s=A.alR(a,b,"draw-oval",m.c) +m=a.a +r=a.b +this.JP(s,new A.j(m,r),b) +A.a6(s.style,"border-radius",A.r((a.c-m)/2)+"px / "+A.r((a.d-r)/2)+"px")}else{m.ghu().tm(b,a) +r=b.b +m.gdz(0).beginPath() +q=m.ghu().Q +p=q==null +o=p?a.gc1().a:a.gc1().a-q.a +n=p?a.gc1().b:a.gc1().b-q.b +A.alW(m.gdz(0),o,n,(a.c-a.a)/2,(a.d-a.b)/2,0,0,6.283185307179586,!1) +m.ghu().nd(r) +m.ghu().uY()}}, +h3(a,b,c){var s,r,q,p,o,n,m,l,k=this +if(k.a6N(c)){s=A.alQ(A.jQ(a,b),c) +r=A.alR(s,c,"draw-circle",k.d.c) +k.JP(r,new A.j(s.a,s.b),c) +A.a6(r.style,"border-radius","50%")}else{q=c.w!=null?A.jQ(a,b):null +p=k.d +p.ghu().tm(c,q) +q=c.b +p.gdz(0).beginPath() +o=p.ghu().Q +n=o==null +m=a.a +m=n?m:m-o.a +l=a.b +l=n?l:l-o.b +A.alW(p.gdz(0),m,l,b,b,0,0,6.283185307179586,!1) +p.ghu().nd(q) +p.ghu().uY()}}, +ey(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g="setAttribute" +if(h.Uq(b)){s=h.d +r=s.c +t.Ci.a(a) +q=a.a.aeY() +if(q!=null){h.fs(q,b) +return}p=a.a +o=p.ax?p.amt():null +if(o!=null){h.dh(o,b) +return}n=A.cSb() +p=A.bH("visible") +A.L(n,g,["overflow",p==null?t.K.a(p):p]) +p=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","path"]) +n.append(p) +m=b.b +if(m!==B.a7)if(m!==B.aH){m=b.c +m=m!==0&&m!=null}else m=!1 +else m=!0 +l=b.r +if(m){m=A.bH(A.hR(l)) +A.L(p,g,["stroke",m==null?t.K.a(m):m]) +m=b.c +m=A.bH(A.r(m==null?1:m)) +A.L(p,g,["stroke-width",m==null?t.K.a(m):m]) +m=b.d +if(m!=null){m=A.bH(A.r(A.cU6(m))) +A.L(p,g,["stroke-linecap",m==null?t.K.a(m):m])}m=A.bH("none") +A.L(p,g,["fill",m==null?t.K.a(m):m])}else{m=A.bH(A.hR(l)) +A.L(p,g,["fill",m==null?t.K.a(m):m])}if(a.b===B.h3){m=A.bH("evenodd") +A.L(p,g,["fill-rule",m==null?t.K.a(m):m])}m=A.bH(A.cTy(a.a,0,0)) +A.L(p,g,["d",m==null?t.K.a(m):m]) +if(s.b==null){k=n.style +A.a6(k,"position","absolute") +if(!r.Nu(0)){A.a6(k,"transform",A.pP(r.a)) +A.a6(k,"transform-origin","0 0 0")}}if(b.x!=null){s=b.b +j=A.hR(b.r) +i=b.x.b +p=$.fv() +if(p===B.aQ&&s!==B.a7)A.a6(n.style,"box-shadow","0px 0px "+A.r(i*2)+"px "+j) +else A.a6(n.style,"filter","blur("+A.r(i)+"px)")}h.JP(n,B.h,b)}else{s=b.w!=null?a.np(0):null +p=h.d +p.ghu().tm(b,s) +s=b.b +if(s==null&&b.c!=null)p.ey(a,B.a7) +else p.ey(a,s) +p.ghu().uY()}}, +uf(a,b,c,d){var s,r,q,p,o,n=this.d,m=A.dpO(a.np(0),c) +if(m!=null){s=(B.e.aF(0.3*(b.gj(b)>>>24&255))&255)<<24|b.gj(b)&16777215 +r=A.dpH(s>>>16&255,s>>>8&255,s&255,255) +n.gdz(0).save() +q=n.gdz(0) +q.globalAlpha=(s>>>24&255)/255 +if(d){s=$.fv() +s=s!==B.aQ}else s=!1 +q=m.b +p=m.a +o=q.a +q=q.b +if(s){A.L(n.gdz(0),"translate",[o,q]) +A.cwp(n.gdz(0),A.cTb(new A.zi(B.bY,p))) +A.bdO(n.gdz(0),"") +A.bdN(n.gdz(0),r)}else{A.cwp(n.gdz(0),"none") +A.bdO(n.gdz(0),"") +A.bdN(n.gdz(0),r) +n.gdz(0).shadowBlur=p +A.cwr(n.gdz(0),r) +A.cws(n.gdz(0),o) +A.cwt(n.gdz(0),q)}n.EZ(n.gdz(0),a) +A.bdM(n.gdz(0),null) +n.gdz(0).restore()}}, +a5B(a){var s,r,q,p=a.a,o=A.a21(p) +o.toString +s=this.b +if(s!=null){r=s.bGo(o) +if(r!=null)return r}if(!a.b){a.b=!0 +A.a6(p.style,"position","absolute")}q=A.asV(p,!0) +p=this.b +if(p!=null)p.aif(o,new A.X6(q,A.dlh(),p.$ti.h("X6<1>"))) +return q}, +al0(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f="removeProperty" +t.gc.a(a) +s=c.a +r=A.cS9(c.z) +if(r instanceof A.SS)q=h.aZq(a,r.b,r.c,c) +else if(r instanceof A.SG){p=A.cU8(r.b) +o=p.b +h.c.append(o) +h.f.push(o) +q=h.a5B(a) +A.a6(q.style,"filter","url(#"+p.a+")")}else q=h.a5B(a) +o=q.style +n=A.cr7(s) +A.a6(o,"mix-blend-mode",n==null?"":n) +if(h.ax&&!0){o=h.d +o.ghu().tm(c,g) +A.bdL(o.gdz(0),q,b.a,b.b,g,g,g,g,g,g) +o.ghu().uY()}else{o=h.d +if(o.b!=null){n=q.style +A.L(n,f,["width"]) +A.L(n,f,["height"]) +n=o.b +n.toString +m=A.cAu(n,q,b,o.c) +for(o=m.length,n=h.c,l=h.f,k=0;k=6.283185307179586;s=!1){r.tY(0,a,b,3.141592653589793,s) +b+=3.141592653589793 +r.tY(0,a,b,3.141592653589793,!1) +b+=3.141592653589793 +c-=6.283185307179586}r.tY(0,a,b,c,s) +this.a.ey(r,t.Vh.a(e))}, +ey(a,b){this.a.ey(a,t.Vh.a(b))}, +pj(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.aAK(a,b,c,d.a) +q.a.xe(c,r) +q.c.push(r)}, +yS(a){this.a.yS(a)}, +w8(a,b){this.a.w8(a,b)}, +C1(a,b,c){var s,r,q,p=A.dtI(b) +if(B.d.M(p.length,2)!==0)A.C(A.aM('"points" must have an even number of values.',null)) +s=this.a +t.Vh.a(c) +c.b=s.e=s.d.c=!0 +r=c.a +q=new A.aAQ(p,a,r) +r=r.c +s.amN(p,r==null?0:r,c,q) +s.c.push(q)}, +MD(a,b,c){var s,r=this.a +t.Yu.a(a) +t.Vh.a(c) +c.b=r.e=r.d.c=!0 +s=new A.aAU(a,b,c.a) +r.amN(a.b,0,c,s) +r.c.push(s)}, +uf(a,b,c,d){var s,r,q=this.a +q.e=q.d.c=!0 +s=A.dpM(a.np(0),c) +r=new A.aAT(t.Ci.a(a),b,c,d) +q.a.xe(s,r) +q.c.push(r)}, +$iaow:1} +A.aeg.prototype={ +gnE(){return this.oq$}, +dv(a){var s=this.w1("flt-clip"),r=A.d0(self.document,"flt-clip-interior") +this.oq$=r +A.a6(r.style,"position","absolute") +r=this.oq$ +r.toString +s.append(r) +return s}, +avp(a,b){var s +if(b!==B.i){s=a.style +A.a6(s,"overflow","hidden") +A.a6(s,"z-index","0")}}} +A.a6Z.prototype={ +qA(){var s=this +s.f=s.e.f +if(s.CW!==B.i)s.w=s.cx +else s.w=null +s.r=null}, +dv(a){var s=this.ahE(0),r=A.bH("rect") +A.L(s,"setAttribute",["clip-type",r==null?t.K.a(r):r]) +return s}, +jS(){var s,r=this,q=r.d.style,p=r.cx,o=p.a +A.a6(q,"left",A.r(o)+"px") +s=p.b +A.a6(q,"top",A.r(s)+"px") +A.a6(q,"width",A.r(p.c-o)+"px") +A.a6(q,"height",A.r(p.d-s)+"px") +p=r.d +p.toString +r.avp(p,r.CW) +p=r.oq$.style +A.a6(p,"left",A.r(-o)+"px") +A.a6(p,"top",A.r(-s)+"px")}, +cI(a,b){var s=this +s.vk(0,b) +if(!s.cx.l(0,b.cx)||s.CW!==b.CW){s.w=null +s.jS()}}, +gNs(){return!0}, +$ib9w:1} +A.aBe.prototype={ +qA(){var s,r=this +r.f=r.e.f +if(r.cx!==B.i){s=r.CW +r.w=new A.W(s.a,s.b,s.c,s.d)}else r.w=null +r.r=null}, +dv(a){var s=this.ahE(0),r=A.bH("rrect") +A.L(s,"setAttribute",["clip-type",r==null?t.K.a(r):r]) +return s}, +jS(){var s,r=this,q=r.d.style,p=r.CW,o=p.a +A.a6(q,"left",A.r(o)+"px") +s=p.b +A.a6(q,"top",A.r(s)+"px") +A.a6(q,"width",A.r(p.c-o)+"px") +A.a6(q,"height",A.r(p.d-s)+"px") +A.a6(q,"border-top-left-radius",A.r(p.e)+"px") +A.a6(q,"border-top-right-radius",A.r(p.r)+"px") +A.a6(q,"border-bottom-right-radius",A.r(p.x)+"px") +A.a6(q,"border-bottom-left-radius",A.r(p.z)+"px") +p=r.d +p.toString +r.avp(p,r.cx) +p=r.oq$.style +A.a6(p,"left",A.r(-o)+"px") +A.a6(p,"top",A.r(-s)+"px")}, +cI(a,b){var s=this +s.vk(0,b) +if(!s.CW.l(0,b.CW)||s.cx!==b.cx){s.w=null +s.jS()}}, +gNs(){return!0}, +$ib9v:1} +A.a6Y.prototype={ +dv(a){return this.w1("flt-clippath")}, +qA(){var s=this +s.aPt() +if(s.cx!==B.i){if(s.w==null)s.w=s.CW.np(0)}else s.w=null}, +jS(){var s=this,r=s.cy +if(r!=null)r.remove() +r=s.d +r.toString +r=A.cSc(r,s.CW) +s.cy=r +s.d.append(r)}, +cI(a,b){var s,r=this +r.vk(0,b) +if(b.CW!==r.CW){r.w=null +s=b.cy +if(s!=null)s.remove() +r.jS()}else r.cy=b.cy +b.cy=null}, +qj(){var s=this.cy +if(s!=null)s.remove() +this.cy=null +this.E4()}, +gNs(){return!0}, +$ib9t:1} +A.a7_.prototype={ +gnE(){return this.CW}, +Bp(a){this.Jb(a) +this.CW=a.CW +this.cy=a.cy +a.CW=null}, +CT(a){++a.a +this.aPs(a);--a.a}, +qj(){var s=this +s.E4() +$.Bw.HB(s.cy) +s.CW=s.cy=null}, +dv(a){var s=this.w1("flt-color-filter"),r=A.d0(self.document,"flt-filter-interior") +A.a6(r.style,"position","absolute") +this.CW=r +s.append(r) +return s}, +jS(){var s,r,q,p=this,o="visibility" +$.Bw.HB(p.cy) +p.cy=null +s=A.cS9(p.cx) +if(s==null){A.a6(p.d.style,"background-color","") +r=p.CW +if(r!=null)A.a6(r.style,o,"visible") +return}if(s instanceof A.SS)p.aWa(s) +else{r=p.CW +if(s instanceof A.SG){p.cy=s.abV(r) +r=p.CW.style +q=s.a +A.a6(r,"filter",q!=null?"url(#"+q+")":"")}else if(r!=null)A.a6(r.style,o,"visible")}}, +aWa(a){var s,r=a.abV(this.CW) +this.cy=r +if(r==null)return +r=this.CW.style +s=a.a +A.a6(r,"filter",s!=null?"url(#"+s+")":"")}, +cI(a,b){this.vk(0,b) +if(b.cx!==this.cx)this.jS()}, +$ib9M:1} +A.bJ1.prototype={ +a0a(a,b){var s,r,q,p,o=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","feColorMatrix"]),n=o.type +n.toString +A.bCY(n,1) +n=o.result +n.toString +A.UE(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)}, +DI(a,b,c){var s="setAttribute",r=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","feFlood"]),q=A.bH(a) +A.L(r,s,["flood-color",q==null?t.K.a(q):q]) +q=A.bH(b) +A.L(r,s,["flood-opacity",q==null?t.K.a(q):q]) +q=r.result +q.toString +A.UE(q,c) +this.c.append(r)}, +afB(a,b,c){var s=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","feBlend"]),r=s.in1 +r.toString +A.UE(r,a) +r=s.in2 +r.toString +A.UE(r,b) +r=s.mode +r.toString +A.bCY(r,c) +this.c.append(s)}, +Qf(a,b,c,d,e,f,g,h){var s=A.L(self.document,"createElementNS",["http://www.w3.org/2000/svg","feComposite"]),r=s.in1 +r.toString +A.UE(r,a) +r=s.in2 +r.toString +A.UE(r,b) +r=s.operator +r.toString +A.bCY(r,g) +if(c!=null){r=s.k1 +r.toString +A.bCZ(r,c)}if(d!=null){r=s.k2 +r.toString +A.bCZ(r,d)}if(e!=null){r=s.k3 +r.toString +A.bCZ(r,e)}if(f!=null){r=s.k4 +r.toString +A.bCZ(r,f)}r=s.result +r.toString +A.UE(r,h) +this.c.append(s)}, +a0b(a,b,c,d){var s=null +return this.Qf(a,b,s,s,s,s,c,d)}, +dN(){var s=this.b +s.append(this.c) +return new A.bJ0(this.a,s)}} +A.bJ0.prototype={} +A.bdJ.prototype={ +vX(a,b){throw A.d(A.bT(null))}, +yq(a){throw A.d(A.bT(null))}, +nG(a,b){throw A.d(A.bT(null))}, +jV(a,b,c){throw A.d(A.bT(null))}, +Gg(a){throw A.d(A.bT(null))}, +fs(a,b){var s +a=A.alQ(a,b) +s=this.MZ$ +s=s.length===0?this.a:B.b.gP(s) +s.append(A.alR(a,b,"draw-rect",this.wf$))}, +dh(a,b){var s,r=A.alR(A.alQ(new A.W(a.a,a.b,a.c,a.d),b),b,"draw-rrect",this.wf$) +A.cRG(r.style,a) +s=this.MZ$ +s=s.length===0?this.a:B.b.gP(s) +s.append(r)}, +Gf(a,b){throw A.d(A.bT(null))}, +h3(a,b,c){throw A.d(A.bT(null))}, +ey(a,b){throw A.d(A.bT(null))}, +uf(a,b,c,d){throw A.d(A.bT(null))}, +pj(a,b,c,d){throw A.d(A.bT(null))}, +w8(a,b){var s=A.cSh(a,b,this.wf$),r=this.MZ$ +r=r.length===0?this.a:B.b.gP(r) +r.append(s)}, +MD(a,b,c){throw A.d(A.bT(null))}, +C1(a,b,c){throw A.d(A.bT(null))}, +Gi(){}} +A.a70.prototype={ +qA(){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.dX(new Float32Array(16)) +s.T(o) +p.f=s +s.ba(0,r,q)}p.r=null}, +gH1(){var s,r=this.cy +if(r==null){r=this.cx +s=A.hY() +s.tl(-r.a,-r.b,0) +this.cy=s +r=s}return r}, +gnE(){return this.dx}, +Bp(a){this.Jb(a) +this.db=a.db +this.dx=a.dx +a.dx=a.db=null}, +qj(){var s=this +s.E4() +$.Bw.HB(s.db) +s.dx=s.db=null}, +dv(a){var s="position",r="absolute",q="transform-origin",p=this.w1("flt-image-filter"),o=this.w1("flt-image-filter-interior") +A.j9(o,s,r) +A.j9(o,q,"0 0 0") +A.j9(p,s,r) +A.j9(p,q,"0 0 0") +this.dx=o +p.appendChild(o) +return p}, +jS(){var s,r,q=this,p=t.m1.a(q.CW) +$.Bw.HB(q.db) +q.db=null +A.a6(q.dx.style,"filter",p.gWN()) +A.a6(q.dx.style,"transform",p.gbHf()) +s=q.d.style +r=q.cx +A.a6(s,"left",A.r(r.a)+"px") +A.a6(s,"top",A.r(r.b)+"px")}, +cI(a,b){var s=this +s.vk(0,b) +if(!b.CW.l(0,s.CW)||!b.cx.l(0,s.cx))s.jS()}, +$ibmA:1} +A.a71.prototype={ +qA(){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.dX(new Float32Array(16)) +r.T(p) +q.f=r +r.ba(0,s,q.cx)}q.r=null}, +gH1(){var s=this,r=s.cy +if(r==null){r=A.hY() +r.tl(-s.CW,-s.cx,0) +s.cy=r}return r}, +dv(a){var s=A.d0(self.document,"flt-offset") +A.j9(s,"position","absolute") +A.j9(s,"transform-origin","0 0 0") +return s}, +jS(){A.a6(this.d.style,"transform","translate("+A.r(this.CW)+"px, "+A.r(this.cx)+"px)")}, +cI(a,b){var s=this +s.vk(0,b) +if(b.CW!==s.CW||b.cx!==s.cx)s.jS()}, +$ibva:1} +A.a72.prototype={ +qA(){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.dX(new Float32Array(16)) +s.T(o) +p.f=s +s.ba(0,r,q)}p.r=null}, +gH1(){var s,r=this.cy +if(r==null){r=this.cx +s=A.hY() +s.tl(-r.a,-r.b,0) +this.cy=s +r=s}return r}, +dv(a){var s=A.d0(self.document,"flt-opacity") +A.j9(s,"position","absolute") +A.j9(s,"transform-origin","0 0 0") +return s}, +jS(){var s,r=this.d +r.toString +A.j9(r,"opacity",A.r(this.CW/255)) +s=this.cx +A.a6(r.style,"transform","translate("+A.r(s.a)+"px, "+A.r(s.b)+"px)")}, +cI(a,b){var s=this +s.vk(0,b) +if(s.CW!==b.CW||!s.cx.l(0,b.cx))s.jS()}, +$ibvc:1} +A.Vs.prototype={ +sp6(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.a=a}, +gbN(a){var s=this.a.b +return s==null?B.aH:s}, +sbN(a,b){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.b=b}, +ge4(){var s=this.a.c +return s==null?0:s}, +se4(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.c=a}, +str(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.d=a}, +sQE(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.e=a}, +srK(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.f=a}, +ga6(a){return new A.v(this.a.r)}, +sa6(a,b){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.r=b.gj(b)}, +swp(a){}, +skG(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.w=a}, +sH6(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.x=a}, +sot(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.y=a}, +snH(a){var s=this +if(s.b){s.a=s.a.jy(0) +s.b=!1}s.a.z=a}, +sagg(a){}, +k(a){var s,r,q=""+"Paint(",p=this.a.b,o=p==null +if((o?B.aH:p)===B.a7){q+=(o?B.aH:p).k(0) +p=this.a +o=p.c +s=o==null +if((s?0:o)!==0)q+=" "+A.r(s?0:o) +else q+=" hairline" +p=p.d +o=p==null +if((o?B.eN:p)!==B.eN)q+=" "+(o?B.eN:p).k(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.v(p).k(0)):q)+")" +return q.charCodeAt(0)==0?q:q}, +$iEw:1} +A.aan.prototype={ +jy(a){var s=this,r=new A.aan() +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}, +k(a){return this.fP(0)}} +A.nW.prototype={ +ZK(){var s,r,q,p,o,n,m,l,k,j=this,i=A.a([],t.yv),h=j.aYV(0.25),g=B.d.TO(1,h) +i.push(new A.j(j.a,j.b)) +if(h===5){s=new A.aMd() +j.ajE(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.j(p,r.d) +i.push(o) +i.push(o) +i.push(o) +i.push(new A.j(q.e,q.f)) +g=2 +n=!0}else n=!1}else n=!1 +if(!n)A.cvN(j,h,i) +m=2*g+1 +k=0 +while(!0){if(!(k=0)s.c=-r +s.e=s.d=-1}, +jd(a){this.US(a,0,0)}, +Sb(){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.gc1().a+g*Math.cos(p) +d=c2.gc1().b+f*Math.sin(p) +if(o===m&&n===l){if(c5)b9.fV(0,e,d) +else b9.a4a(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.fV(0,e,d) +else b9.a4a(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.ds(0,n,m) +return}a8=B.e.dO(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.ec(l)===l&&B.e.ec(k)===k&&B.e.ec(n)===n&&B.e.ec(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.a1n(a,p,B.e.au(q)) +return}}this.tY(0,a,b,c,!0)}, +av2(a,b){var s,r,q,p,o,n,m=this,l=a.length +if(l<=0)return +s=m.a.o0(0,0) +m.c=s+1 +r=m.a +q=a[0] +r.lq(s,q.a,q.b) +m.a.aJB(1,l-1) +for(r=m.a.f,p=1;p=c||d>=b)g.US(a,0,3) +else if(A.dtg(a1))g.a1n(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.coy(j,i,q,A.coy(l,k,q,A.coy(n,m,r,A.coy(p,o,r,1)))) +a0=b-h*j +g.fV(0,e,a0) +g.ds(0,e,d+h*l) +g.nI(e,d,e+h*p,d,0.707106781) +g.ds(0,c-h*o,d) +g.nI(c,d,c,d+h*k,0.707106781) +g.ds(0,c,b-h*i) +g.nI(c,b,c-h*m,b,0.707106781) +g.ds(0,e+h*n,b) +g.nI(e,b,e,a0,0.707106781) +g.aO(0) +g.e=f?0:-1 +e=g.a +e.ax=f +e.ch=!1 +e.CW=6}}, +Lr(a,b,c){this.bmf(b,c.a,c.b,null,0)}, +bmf(b2,b3,b4,b5,b6){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 +t.Ci.a(b2) +s=b2.a +if(s.w===0)return +if(s.l(0,b1.a)){s=A.cyo() +r=b1.a +q=r.w +p=r.d +o=r.z +s.Q=!0 +s.cx=0 +s.J6() +s.Tr(p) +s.Ts(q) +s.Tq(o) +B.p.iK(s.r,0,r.r) +B.lv.iK(s.f,0,r.f) +n=r.y +if(n==null)s.y=null +else{m=s.y +m.toString +B.lv.iK(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.Fr(s,B.e1) +l.a2h(b1)}else l=b2 +s=b1.a +k=s.d +if(b6===0)if(b5!=null)r=b5[15]===1&&b5[14]===0&&b5[11]===0&&b5[10]===1&&b5[9]===0&&b5[8]===0&&b5[7]===0&&b5[6]===0&&b5[3]===0&&b5[2]===0 +else r=!0 +else r=!1 +n=l.a +if(r)s.iw(0,n) +else{j=new A.ED(n) +j.Eb(n) +i=new Float32Array(8) +for(s=b5==null,h=2*(k-1),g=h+1,r=k===0,f=!0;e=j.uH(0,i),e!==6;f=!1)switch(e){case 0:if(s){m=i[0] +d=m+b3}else{m=b5[0] +c=i[0] +d=m*(c+b3)+b5[4]*(i[1]+b4)+b5[12] +m=c}if(s){c=i[1] +b=c+b4}else{c=b5[1] +a=b5[5] +a0=i[1] +b=c*(m+b3)+a*(a0+b4)+b5[13]+b4 +c=a0}if(f&&b1.a.w!==0){b1.EB() +if(r){a1=0 +a2=0}else{m=b1.a.f +a1=m[h] +a2=m[g]}if(b1.c<=0||!r||a1!==d||a2!==b)b1.ds(0,i[0],i[1])}else{a3=b1.a.o0(0,0) +b1.c=a3+1 +a4=a3*2 +a=b1.a.f +a[a4]=m +a[a4+1]=c +b1.e=b1.d=-1}break +case 1:b1.ds(0,i[2],i[3]) +break +case 2:m=i[2] +c=i[3] +a=i[4] +a0=i[5] +a3=b1.a.o0(2,0) +a4=a3*2 +a5=b1.a.f +a5[a4]=m +a5[a4+1]=c +a4=(a3+1)*2 +a5[a4]=a +a5[a4+1]=a0 +b1.e=b1.d=-1 +break +case 3:b1.nI(i[2],i[3],i[4],i[5],n.y[j.b]) +break +case 4:b1.Me(i[2],i[3],i[4],i[5],i[6],i[7]) +break +case 5:b1.aO(0) +break}}s=l.c +if(s>=0)b1.c=k+s +s=b1.a +a6=s.d +a7=s.f +for(a8=k*2,s=a6*2,r=b5==null;a8s.c||q>s.d)return!1 +p=a3.a +o=new A.bwY(p,r,q,new Float32Array(18)) +o.blr() +n=B.h3===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.cyn(a3.a,!0) +j=new Float32Array(18) +i=A.a([],t.yv) +p=k.a +h=!1 +do{g=i.length +switch(k.uH(0,j)){case 0:case 5:break +case 1:A.dw7(j,r,q,i) +break +case 2:A.dw8(j,r,q,i) +break +case 3:f=k.f +A.dw5(j,r,q,p.y[f],i) +break +case 4:A.dw6(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.fE(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.fE(i,e) +if(a!==i.length)i[a]=a2 +break}}}}while(!h) +return i.length!==0}, +eD(a){var s,r=a.a,q=a.b,p=this.a,o=A.daU(p,r,q),n=p.e,m=new Uint8Array(n) +B.p.iK(m,0,p.r) +o=new A.Ts(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.lv.iK(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.ba(0,r,q) +n=p.b +o.b=n==null?null:n.ba(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.Fr(o,B.e1) +r.a2h(this) +return r}, +np(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.np(0) +if(!e1.Q&&e1.b!=null){e1=e1.b +e1.toString +return e1}r=new A.ED(e1) +r.Eb(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.bBv(),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.bzb() +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.bas() +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.zY() +c1=a4-a +c2=s*(a2-a) +if(c0.zf(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.zf(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.bb4() +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.W(o,n,m,l):B.a8 +e0.a.np(0) +return e0.a.b=d9}, +VF(a){var s=A.cKL(this.a),r=A.a([],t._k) +return new A.aFE(new A.bIR(new A.aXs(s,A.cyn(s,!1),r,!1)))}, +axg(){return this.VF(!1)}, +k(a){return this.fP(0)}, +$iqu:1} +A.bwV.prototype={ +a1B(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}}, +Rv(){var s,r,q=this +if(q.e===1){q.e=2 +return new A.j(q.x,q.y)}s=q.a.f +r=q.Q +return new A.j(s[r-2],s[r-1])}, +hd(){var s=this,r=s.z,q=s.a +if(rs)a=s}r=this.c +q=r.length +if(q===0)return-1 +p=q-1 +for(o=0;os)b=s +r=$.ar().dc() +if(a>b||h.c.length===0)return r +q=h.arx(a) +p=h.arx(b) +if(q===-1||p===-1)return r +o=h.c +n=o[q] +m=h.amq(q,a) +l=m.a +r.fV(0,l.a,l.b) +k=m.c +j=h.amq(p,b).c +if(q===p)h.a4U(n,k,j,r) +else{i=q +do{h.a4U(n,k,1,r);++i +n=o[i] +if(i!==p){k=0 +continue}else break}while(!0) +h.a4U(n,0,j,r)}return r}, +a4U(a,b,c,d){var s,r=a.c +switch(a.a){case 1:s=1-c +d.ds(0,r[2]*c+r[0]*s,r[3]*c+r[1]*s) +break +case 4:s=$.cDc() +A.dpB(r,b,c,s) +d.Me(s[2],s[3],s[4],s[5],s[6],s[7]) +break +case 2:s=$.cDc() +A.dkt(r,b,c,s) +d.aE7(s[2],s[3],s[4],s[5]) +break +case 3:throw A.d(A.bT(null)) +default:throw A.d(A.aq("Invalid segment type"))}}, +aXb(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=1073741823,a={} +c.f=!1 +a.a=0 +s=new A.c9q(a,c) +r=new Float32Array(8) +q=a0.a +p=c.c +o=!1 +do{if(a0.hd()===0&&o)break +n=a0.uH(0,r) +switch(n){case 0:o=!0 +break +case 1:s.$4(r[0],r[1],r[2],r[3]) +break +case 4:a.a=A.cA9(r[0],r[1],r[2],r[3],r[4],r[5],r[6],r[7],a.a,0,b,p) +break +case 3:m=a0.f +l=q.y[m] +k=new A.nW(r[0],r[1],r[2],r[3],r[4],r[5],l).ZK() +j=k.length +m=k[0] +i=m.a +h=m.b +for(g=1;g>>1 +g=this.Rt(o,n,q,p,e,f,this.Rt(a,b,s,r,o,n,g,h,m),h,m)}else{l=a-e +k=b-f +j=g+Math.sqrt(l*l+k*k) +if(j>g)this.c.push(new A.Y4(2,j,A.a([a,b,c,d,e,f],t.n))) +g=j}return g}} +A.c9q.prototype={ +$4(a,b,c,d){var s=a-c,r=b-d,q=this.a,p=q.a,o=q.a=p+Math.sqrt(s*s+r*r) +if(o>p)this.b.c.push(new A.Y4(1,o,A.a([a,b,c,d],t.n)))}, +$S:864} +A.bIR.prototype={ +gK(a){var s=this.a +if(s==null)throw A.d(A.b8(u.gL)) +return s}, +t(){var s,r=this.b,q=r.bak() +if(q)++r.e +if(q){s=r.e +this.a=new A.aFD(r.c[s].e,s,r) +return!0}this.a=null +return!1}} +A.aFD.prototype={ +Wn(a,b,c){return this.d.c[this.c].bvK(a,b,!0)}, +azi(a,b){return this.Wn(a,b,!0)}, +k(a){return"PathMetric"}, +$iTq:1, +gA(a){return this.a}} +A.aj6.prototype={} +A.Y4.prototype={ +br1(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this +switch(a0.a){case 1:s=a0.c +r=s[2] +q=s[0] +p=1-a1 +o=s[3] +s=s[1] +A.b1z(r-q,o-s) +return new A.aj6(a1,new A.j(r*a1+q*p,o*a1+s*p)) +case 4:s=a0.c +r=s[0] +q=s[1] +p=s[2] +o=s[3] +n=s[4] +m=s[5] +l=s[6] +s=s[7] +k=n-2*p+r +j=m-2*o+q +i=p-r +h=o-q +g=(l+3*(p-n)-r)*a1 +f=(s+3*(o-m)-q)*a1 +e=a1===0 +if(!(e&&r===p&&q===o))d=a1===1&&n===l&&m===s +else d=!0 +if(d){c=e?n-r:l-p +b=e?m-q:s-o +if(c===0&&b===0){c=l-r +b=s-q}A.b1z(c,b)}else A.b1z((g+2*k)*a1+i,(f+2*j)*a1+h) +return new A.aj6(a1,new A.j(((g+3*k)*a1+3*i)*a1+r,((f+3*j)*a1+3*h)*a1+q)) +case 2:s=a0.c +r=s[0] +q=s[1] +p=s[2] +o=s[3] +n=s[4] +s=s[5] +a=A.cz0(r,q,p,o,n,s) +m=a.aa6(a1) +l=a.aa7(a1) +if(!(a1===0&&r===p&&q===o))k=a1===1&&p===n&&o===s +else k=!0 +n-=r +s-=q +if(k)A.b1z(n,s) +else A.b1z(2*(n*a1+(p-r)),2*(s*a1+(o-q))) +return new A.aj6(a1,new A.j(m,l)) +default:throw A.d(A.aq("Invalid segment type"))}}} +A.Ts.prototype={ +lq(a,b,c){var s=a*2,r=this.f +r[s]=b +r[s+1]=c}, +p5(a){var s=this.f,r=a*2 +return new A.j(s[r],s[r+1])}, +aeY(){var s=this +if(s.ay)return new A.W(s.p5(0).a,s.p5(0).b,s.p5(1).a,s.p5(2).b) +else return s.w===4?s.b_c():null}, +np(a){var s +if(this.Q)this.a28() +s=this.a +s.toString +return s}, +b_c(){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.p5(0).a,h=k.p5(0).b,g=k.p5(1).a,f=k.p5(1).b +if(k.r[1]!==1||f!==h)return j +s=g-i +r=k.p5(2).a +q=k.p5(2).b +if(k.r[2]!==1||r!==g)return j +p=q-f +o=k.p5(3) +n=k.p5(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.W(m,l,m+Math.abs(s),l+Math.abs(p))}, +aJo(){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.W(r,q,p,o) +return null}, +amt(){var s,r,q,p,o,n,m,l,k,j,i,h={},g=this.np(0),f=A.a([],t.kG),e=new A.ED(this) +e.Eb(this) +s=new Float32Array(8) +h.a=e.uH(0,s) +h.b=0 +for(;r=h.a=e.uH(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.bb(k,j));++h.b}m=f[0] +l=f[1] +i=f[2] +return A.TX(g,f[3],i,m,l)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.Ts&&this.bvv(b)}, +gv(a){var s=this +return A.ad(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)}, +bvv(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.lv.iK(r,0,q.f) +q.f=r}q.d=a}, +Ts(a){var s,r,q=this +if(a>q.e){s=a+8 +q.e=s +r=new Uint8Array(s) +B.p.iK(r,0,q.r) +q.r=r}q.w=a}, +Tq(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.lv.iK(r,0,s) +q.y=r}q.z=a}, +iw(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=b.d,g=i.d+h +i.J6() +i.Tr(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.Ts(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.bGp.prototype={ +aa6(a){return(this.a*a+this.c)*a+this.e}, +aa7(a){return(this.b*a+this.d)*a+this.f}} +A.bwY.prototype={ +blr(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=e.a,c=A.cyn(d,!0) +for(s=e.f,r=t.td;q=c.uH(0,s),q!==6;)switch(q){case 0:case 5:break +case 1:e.aYO() +break +case 2:p=!A.cKM(s)?A.daW(s):0 +o=e.ak2(s[0],s[1],s[2],s[3],s[4],s[5]) +e.d+=p>0?o+e.ak2(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.cKM(s) +f=A.a([],r) +new A.nW(m,l,k,j,i,h,n).bq8(f) +e.ak1(f[0]) +if(!g&&f.length===2)e.ak1(f[1]) +break +case 4:e.aYL() +break}}, +aYO(){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.bwZ(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.dcI(o)===q)q=0 +n.d+=q}, +ak2(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.bwZ(o,p,a,b,e,f)){++k.e +return 0}if(p===s)return 0 +n=new A.zY() +if(0===n.zf(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.bwZ(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.zY() +if(0===l.zf(g+(h-2*m),2*(m-h),h-p))k=q===1?a.a:a.e +else{j=l.a +j.toString +k=A.d3s(a.a,a.c,a.e,n,j)/A.d3r(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.bwZ(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.cRU(f,a0,m) +if(i==null)return +h=A.cSr(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<$.By.length;++m){l=$.By[m] +$.ec() +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.dO(s*(g===0?1:g))+2){g=self.window.devicePixelRatio +f=l.w>=B.e.dO(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($.By,o) +o.svT(0,a0) +o.b=c.fx +return o}d=A.d26(a0,c.cy.b.d,c.dy) +d.b=c.fx +return d}, +aiF(){A.a6(this.d.style,"transform","translate("+A.r(this.CW)+"px, "+A.r(this.cx)+"px)")}, +jS(){this.aiF() +this.Ra(null)}, +dN(){this.a2a(null) +this.fr=!0 +this.agZ()}, +cI(a,b){var s,r,q=this +q.a0N(0,b) +q.fx=b.fx +if(b!==q)b.fx=null +if(q.CW!==b.CW||q.cx!==b.cx)q.aiF() +q.a2a(b) +if(q.cy===b.cy){s=q.ch +r=s instanceof A.y2&&q.dy!==s.ay +if(q.fr||r)q.Ra(b) +else q.ch=b.ch}else q.Ra(b)}, +uT(){var s=this +s.ah1() +s.a2a(s) +if(s.fr)s.Ra(s)}, +qj(){A.b1F(this.ch) +this.ch=null +this.ah_()}} +A.bx3.prototype={ +$0(){var s,r=this.a,q=r.fy +q.toString +s=r.ch=r.b19(q) +s.b=r.fx +q=r.d +q.toString +A.cBZ(q) +r.d.append(s.c) +s.V(0) +q=r.cy.b +q.toString +r=r.fy +r.toString +q.a7k(s,r) +s.Gi()}, +$S:0} +A.a73.prototype={ +dv(a){return A.cSa(this.ch)}, +jS(){var s=this,r=s.d.style +A.a6(r,"transform","translate("+A.r(s.CW)+"px, "+A.r(s.cx)+"px)") +A.a6(r,"width",A.r(s.cy)+"px") +A.a6(r,"height",A.r(s.db)+"px") +A.a6(r,"position","absolute")}, +Vq(a){if(this.aPv(a))return this.ch===t.p0.a(a).ch +return!1}, +Y1(a){return a.ch===this.ch?0:1}, +cI(a,b){var s=this +s.a0N(0,b) +if(s.CW!==b.CW||s.cx!==b.cx||s.cy!==b.cy||s.db!==b.db)s.jS()}} +A.bA_.prototype={ +a7k(a,b){var s,r,q,p,o,n,m,l,k,j +try{m=this.b +m.toString +m=A.cTR(b,m) +l=this.c +k=l.length +if(m){s=k +for(r=0;r1){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.gP(s) instanceof A.a6I)s.pop() +else s.push(B.a57);--q.r}, +Zt(a){var s +while(!0){s=this.r +if(!(a1))break +this.de(0)}}, +vX(a,b){var s=new A.aAG(a,b) +switch(b.a){case 1:this.a.vX(a,s) +break +case 0:break}this.d.c=!0 +this.c.push(s)}, +fs(a,b){var s,r,q=this,p=b.a +if(p.w!=null)q.d.c=!0 +q.e=!0 +s=A.Ok(b) +b.b=!0 +r=new A.aAS(a,p) +p=q.a +if(s!==0)p.xe(a.fH(s),r) +else p.xe(a,r) +q.c.push(r)}, +dh(a,b){var s,r,q,p,o,n,m,l,k=this,j=b.a +if(j.w!=null||!a.as)k.d.c=!0 +k.e=!0 +s=A.Ok(b) +r=a.a +q=a.c +p=Math.min(r,q) +o=a.b +n=a.d +m=Math.min(o,n) +q=Math.max(r,q) +n=Math.max(o,n) +b.b=!0 +l=new A.aAR(a,j) +k.a.Ah(p-s,m-s,q+s,n+s,l) +k.c.push(l)}, +Ge(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=this,a4=new A.W(b1.a,b1.b,b1.c,b1.d),a5=b0.a,a6=b0.b,a7=b0.c,a8=b0.d,a9=new A.W(a5,a6,a7,a8) +if(a9.l(0,a4)||!a9.jZ(a4).l(0,a4))return +s=b0.Dy() +r=b1.Dy() +q=s.e +p=s.f +o=s.r +n=s.w +m=s.z +l=s.Q +k=s.x +j=s.y +i=r.e +h=r.f +g=r.r +f=r.w +e=r.z +d=r.Q +c=r.x +b=r.y +if(i*i+h*h>q*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.Ok(b2) +b2.b=!0 +a0=new A.aAJ(b0,b1,b2.a) +q=$.ar().dc() +q.sze(B.h3) +q.iM(b0) +q.iM(b1) +q.aO(0) +a0.x=q +a1=Math.min(a5,a7) +a2=Math.max(a5,a7) +a3.a.Ah(a1-a,Math.min(a6,a8)-a,a2+a,Math.max(a6,a8)+a,a0) +a3.c.push(a0)}, +ey(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.aeY() +if(s!=null){b.fs(s,a0) +return}r=a.a +q=r.ax?r.amt():null +if(q!=null){b.dh(q,a0) +return}p=a.a.aJo() +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.sbN(0,B.aH) +b.fs(new A.W(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.np(0) +e=A.Ok(a0) +if(e!==0)f=f.fH(e) +d=new A.Fr(A.cKL(a.a),B.e1) +d.a2h(a) +a0.b=!0 +c=new A.aAP(d,a0.a) +b.a.xe(f,c) +d.b=a.b +b.c.push(c)}}, +yS(a){var s,r,q=this,p=t.S9.a(a).b +if(p==null)return +if(p.e)q.e=!0 +s=q.d +r=p.d +s.a=B.V.da(s.a,r.a) +s.b=B.V.da(s.b,r.b) +s.c=B.V.da(s.c,r.c) +q.d6(0) +B.b.L(q.c,p.c) +q.de(0) +p=p.b +if(p!=null)q.a.aJA(p)}, +w8(a,b){var s,r,q,p,o=this +t.zJ.a(a) +if(!a.e)return +o.e=!0 +s=o.d +s.c=!0 +s.b=!0 +r=new A.aAO(a,b) +q=a.gju().z +s=b.a +p=b.b +o.a.Ah(s+q.a,p+q.b,s+q.c,p+q.d,r) +o.c.push(r)}, +amN(a,b,c,d){var s,r,q,p,o,n,m,l=a[0],k=a[1],j=a.length +for(s=k,r=l,q=2;qa.d||s.da.c}} +A.a6I.prototype={ +jw(a){a.d6(0)}, +k(a){return this.fP(0)}} +A.aAV.prototype={ +jw(a){a.de(0)}, +k(a){return this.fP(0)}} +A.aAZ.prototype={ +jw(a){a.ba(0,this.a,this.b)}, +k(a){return this.fP(0)}} +A.aAX.prototype={ +jw(a){a.jt(0,this.a,this.b)}, +k(a){return this.fP(0)}} +A.aAW.prototype={ +jw(a){a.qE(0,this.a)}, +k(a){return this.fP(0)}} +A.aAY.prototype={ +jw(a){a.ah(0,this.a)}, +k(a){return this.fP(0)}} +A.aAG.prototype={ +jw(a){a.vX(this.f,this.r)}, +k(a){return this.fP(0)}} +A.aAF.prototype={ +jw(a){a.yq(this.f)}, +k(a){return this.fP(0)}} +A.aAE.prototype={ +jw(a){a.nG(0,this.f)}, +k(a){return this.fP(0)}} +A.aAL.prototype={ +jw(a){a.jV(this.f,this.r,this.w)}, +k(a){return this.fP(0)}} +A.aAN.prototype={ +jw(a){a.Gg(this.f)}, +k(a){return this.fP(0)}} +A.aAU.prototype={ +jw(a){a.MD(this.f,this.r,this.w)}, +k(a){return this.fP(0)}} +A.aAQ.prototype={ +jw(a){a.C1(this.r,this.f,this.w)}, +k(a){return this.fP(0)}} +A.aAS.prototype={ +jw(a){a.fs(this.f,this.r)}, +k(a){return this.fP(0)}} +A.aAR.prototype={ +jw(a){a.dh(this.f,this.r)}, +k(a){return this.fP(0)}} +A.aAJ.prototype={ +jw(a){var s=this.w +if(s.b==null)s.b=B.aH +a.ey(this.x,s)}, +k(a){return this.fP(0)}} +A.aAM.prototype={ +jw(a){a.Gf(this.f,this.r)}, +k(a){return this.fP(0)}} +A.aAI.prototype={ +jw(a){a.h3(this.f,this.r,this.w)}, +k(a){return this.fP(0)}} +A.aAP.prototype={ +jw(a){a.ey(this.f,this.r)}, +k(a){return this.fP(0)}} +A.aAT.prototype={ +jw(a){var s=this +a.uf(s.f,s.r,s.w,s.x)}, +k(a){return this.fP(0)}} +A.aAK.prototype={ +jw(a){var s=this +a.pj(s.f,s.r,s.w,s.x)}, +k(a){return this.fP(0)}} +A.aAO.prototype={ +jw(a){a.w8(this.f,this.r)}, +k(a){return this.fP(0)}} +A.c9l.prototype={ +vX(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=$.cuy() +s[0]=n +s[1]=m +s[2]=l +s[3]=k +A.cu4(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}}, +xe(a,b){this.Ah(a.a,a.b,a.c,a.d,b)}, +Ah(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=$.cuy() +s[0]=a +s[1]=b +s[2]=c +s[3]=d +A.cu4(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}, +aJA(a){var s,r,q,p,o,n=this,m=a.a,l=a.b,k=a.c,j=a.d +if(m===k||l===j)return +if(!n.x){s=$.cuy() +s[0]=m +s[1]=l +s[2]=k +s[3]=j +A.cu4(n.y,s) +r=s[0] +q=s[1] +p=s[2] +o=s[3]}else{o=j +p=k +q=l +r=m}if(n.b){n.c=Math.min(Math.min(n.c,r),p) +n.e=Math.max(Math.max(n.e,r),p) +n.d=Math.min(Math.min(n.d,q),o) +n.f=Math.max(Math.max(n.f,q),o)}else{n.c=Math.min(r,p) +n.e=Math.max(r,p) +n.d=Math.min(q,o) +n.f=Math.max(q,o)}n.b=!0}, +a_Y(){var s=this,r=s.y,q=new A.dX(new Float32Array(16)) +q.T(r) +s.r.push(q) +r=s.z?new A.W(s.Q,s.as,s.at,s.ax):null +s.w.push(r)}, +bqX(){var s,r,q,p,o,n,m,l,k,j,i=this +if(!i.b)return B.a8 +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(lc0||b6>c1)return +if(b7-b5$.cx3||r>$.cx2){k=$.bko +if(k!=null){h=k.a.getExtension("WEBGL_lose_context") +if(h!=null)h.loseContext()}$.cx4=$.bko=null +$.cx3=Math.max($.cx3,s) +$.cx2=Math.max($.cx2,s)}k=$.cx4 +if(k==null)k=$.cx4=A.bv6(s,r) +g=$.bko +k=g==null?$.bko=A.cx5(k):g +k.fr=s +k.fx=r +f=k.Vn(l,i) +g=k.a +e=f.a +A.L(g,"useProgram",[e]) +d=k.a_r(e,"position") +A.cU3(k,f,q,p,s,r,c2) +c=!o +if(c){b=m.e +A.L(g,"uniform4f",[k.nZ(0,e,"u_textransform"),1/b.d,1/b.e,0,0])}b=g.createBuffer() +b.toString +if(c)if(n){a=g.createVertexArray() +a.toString +A.L(g,"bindVertexArray",[a])}else a=null +else a=null +A.L(g,a8,[d]) +A.L(g,a9,[k.gpt(),b]) +A.cRN(k,b3,1) +A.L(g,b0,[d,2,k.gabz(),!1,0,0]) +a0=b3.length/2|0 +if(o){a1=g.createBuffer() +A.L(g,a9,[k.gpt(),a1]) +a2=new Uint32Array(a0) +for(o=c5.r,a3=0;a31;)s.pop() +t.IF.a(B.b.ga2(s)).CT(new A.byd())}, +$S:0} +A.bIV.prototype={ +$0(){var s,r,q=t.IF,p=this.a.a +if($.bIT==null)q.a(B.b.ga2(p)).dN() +else{s=q.a(B.b.ga2(p)) +r=$.bIT +r.toString +s.cI(0,r)}A.dpI(q.a(B.b.ga2(p))) +$.bIT=q.a(B.b.ga2(p)) +return new A.Vt(q.a(B.b.ga2(p)).d)}, +$S:943} +A.IA.prototype={ +M9(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=this,a7="createPattern",a8="bindBuffer",a9="texParameteri",b0=a6.a,b1=a6.b +if(b0!==B.bH&&b1!==B.bH){s=a6.bg3(a6.e,b0,b1) +s.toString +r=b0===B.ig||b0===B.m1 +q=b1===B.ig||b1===B.m1 +if(r)p=q?"repeat":"repeat-x" +else p=q?"repeat-y":"no-repeat" +p=A.L(b2,a7,[s,p]) +p.toString +return p}else{if($.r3==null)$.r3=new A.Oh() +b3.toString +$.nI.toString +s=$.ec() +o=s.d +if(o==null){p=self.window.devicePixelRatio +o=p===0?1:p}p=b3.a +n=B.e.dO((b3.c-p)*o) +m=b3.b +l=B.e.dO((b3.d-m)*o) +k=$.hy +j=(k==null?$.hy=A.pN():k)===2 +i=A.cNF() +h=A.cIt(j,b0,b1) +g=A.cx5(A.bv6(n,l)) +g.fr=n +g.fx=l +f=g.Vn(i,h) +k=g.a +e=f.a +A.L(k,"useProgram",[e]) +d=new Float32Array(12) +c=b3.ba(0,-p,-m) +b=c.a +d[0]=b +a=c.b +d[1]=a +a0=c.c +d[2]=a0 +d[3]=a +d[4]=a0 +a1=c.d +d[5]=a1 +d[6]=a0 +d[7]=a1 +d[8]=b +d[9]=a1 +d[10]=b +d[11]=a +a2=g.a_r(e,"position") +A.cU3(g,f,0,0,n,l,new A.dX(a6.c)) +a6.f=p!==0||m!==0 +b=a6.e +A.L(k,"uniform4f",[g.nZ(0,e,"u_textransform"),1/b.d,1/b.e,p,m]) +m=k.createBuffer() +m.toString +if(j){a3=k.createVertexArray() +a3.toString +A.L(k,"bindVertexArray",[a3])}else a3=null +A.L(k,"enableVertexAttribArray",[a2]) +A.L(k,a8,[g.gpt(),m]) +$.nI.toString +s=s.d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}A.cRN(g,d,s) +A.L(k,"vertexAttribPointer",[a2,2,g.gabz(),!1,0,0]) +a4=k.createTexture() +k.activeTexture(g.gaBG()) +A.L(k,"bindTexture",[g.gn9(),a4]) +g.aFl(0,g.gn9(),0,g.gXK(),g.gXK(),g.gXN(),b.a) +if(j){A.L(k,a9,[g.gn9(),g.gXL(),A.cu0(g,b0)]) +A.L(k,a9,[g.gn9(),g.gXM(),A.cu0(g,b1)]) +A.L(k,"generateMipmap",[g.gn9()])}else{A.L(k,a9,[g.gn9(),g.gXL(),g.gGV()]) +A.L(k,a9,[g.gn9(),g.gXM(),g.gGV()]) +A.L(k,a9,[g.gn9(),g.gaBH(),g.gaBF()])}A.L(k,"clear",[g.gaby()]) +g.ayT(6,B.yq) +if(a3!=null)k.bindVertexArray(null) +a5=g.aEi(!1) +A.L(k,a8,[g.gpt(),null]) +A.L(k,a8,[g.gCy(),null]) +a5.toString +s=A.L(b2,a7,[a5,"no-repeat"]) +s.toString +return s}}, +bg3(a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=a2===B.m1?2:1,a0=a3===B.m1?2:1 +if(a===1&&a0===1)return a1.a +s=a1.d +r=a1.e +q=s*a +p=r*a0 +o=A.bv6(q,p) +n=o.a +if(n!=null)n=A.bdT(n,"2d",null) +else{n=o.b +n.toString +n=A.o3(n,"2d",null)}n.toString +for(m=-2*r,l=-2*s,k=a1.a,j=0;j>>24&255)<1}, +$S:952} +A.bFF.prototype={ +awM(a,b){var s,r,q=this +q.b=!0 +s=q.a +if(s==null)q.a=A.bv6(a,b) +else if(a!==s.c&&b!==s.d){s.c=a +s.d=b +r=s.a +if(r!=null){A.cHs(r,a) +s=s.a +s.toString +A.cHr(s,b)}else{r=s.b +if(r!=null){A.Cu(r,a) +r=s.b +r.toString +A.Ct(r,b) +r=s.b +r.toString +s.ats(r)}}}s=q.a +s.toString +return A.cx5(s)}} +A.QO.prototype={$iqH:1} +A.auX.prototype={ +M9(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=this,h="createLinearGradient",g=i.f +if(g===B.bH||g===B.ih){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.aFN(0,n-l,p-k) +p=s.b +n=s.c +s.aFN(0,m-l,o-k) +j=A.L(a,h,[p+l-r,n+k-q,s.b+l-r,s.c+k-q])}else j=A.L(a,h,[n-r,p-q,m-r,o-q]) +A.cPz(j,i.d,i.e,g===B.ih) +return j}else{g=A.L(a,"createPattern",[i.M7(b,c,!1),"no-repeat"]) +g.toString +return g}}, +M7(b9,c0,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=this,b5="u_resolution",b6="m_gradient",b7=b9.c,b8=b9.a +b7-=b8 +s=B.e.dO(b7) +r=b9.d +q=b9.b +r-=q +p=B.e.dO(r) +if($.r3==null)$.r3=new A.Oh() +o=$.b2N().awM(s,p) +o.fr=s +o.fx=p +n=A.cKm(b4.d,b4.e) +m=A.czA() +l=b4.f +k=$.hy +j=A.aEs(k==null?$.hy=A.pN():k) +j.e=1 +j.ye(11,"v_color") +j.kr(9,b5) +j.kr(14,b6) +i=j.gCj() +k=A.a([],t.s) +h=new A.wH("main",k) +j.c.push(h) +k.push("vec4 localCoord = m_gradient * vec4(gl_FragCoord.x, u_resolution.y - gl_FragCoord.y, 0, 1);") +k.push("float st = localCoord.x;") +k.push(i.a+" = "+A.cB5(j,h,n,l)+" * scale + bias;") +g=o.Vn(m,j.dN()) +m=o.a +k=g.a +A.L(m,"useProgram",[k]) +f=b4.b +e=f.a +d=f.b +f=b4.c +c=f.a +b=f.b +a=c-e +a0=b-d +a1=Math.sqrt(a*a+a0*a0) +f=a1<11920929e-14 +a2=f?0:-a0/a1 +a3=f?1:a/a1 +a4=l!==B.bH +a5=a4?b7/2:(e+c)/2-b8 +a6=a4?r/2:(d+b)/2-q +a7=A.hY() +a7.tl(-a5,-a6,0) +a8=A.hY() +a9=a8.a +a9[0]=a3 +a9[1]=a2 +a9[4]=-a2 +a9[5]=a3 +b0=A.hY() +b0.bHl(0,0.5) +if(a1>11920929e-14)b0.bK(0,1/a1) +b7=b4.r +if(b7!=null){b1=new A.dX(new Float32Array(16)) +b1.l7(new A.dX(b7.a)) +b2=b9.gc1() +b7=b2.a +b8=b2.b +b0.ba(0,-b7,-b8) +b0.hc(0,b1) +b0.ba(0,b7,b8)}b0.hc(0,a8) +b0.hc(0,a7) +n.afQ(o,g) +A.L(m,"uniformMatrix4fv",[o.nZ(0,k,b6),!1,b0.a]) +A.L(m,"uniform2f",[o.nZ(0,k,b5),s,p]) +b3=new A.bkB(c1,b9,o,g,n,s,p).$0() +$.b2N().b=!1 +return b3}} +A.bkB.prototype={ +$0(){var s=this,r=$.r3,q=s.b,p=s.c,o=s.d,n=s.e,m=s.f,l=s.r,k=q.c,j=q.a,i=q.d +q=q.b +if(s.a)return r.ayS(new A.W(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +else{r=r.ayQ(new A.W(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +r.toString +return r}}, +$S:215} +A.Rm.prototype={ +M9(a,b,c){var s,r=this +if(r.r==null){s=r.f +s=s===B.bH||s===B.ih}else s=!1 +if(s)return r.akg(a,b,c) +else{s=A.L(a,"createPattern",[r.M7(b,c,!1),"no-repeat"]) +s.toString +return s}}, +akg(a,b,c){var s=this,r=s.b,q=r.a-b.a +r=r.b-b.b +r=A.L(a,"createRadialGradient",[q,r,0,q,r,s.c]) +A.cPz(r,s.d,s.e,s.f===B.ih) +return r}, +M7(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=a.c,b=a.a +c-=b +s=B.e.dO(c) +r=a.d +q=a.b +r-=q +p=B.e.dO(r) +if($.r3==null)$.r3=new A.Oh() +o=$.b2N().awM(s,p) +o.fr=s +o.fx=p +n=A.cKm(d.d,d.e) +m=o.Vn(A.czA(),d.a2l(n,a,d.f)) +l=o.a +k=m.a +A.L(l,"useProgram",[k]) +j=d.b +i=j.a +j=j.b +A.L(l,"uniform2f",[o.nZ(0,k,"u_tile_offset"),2*(c*((i-b)/c-0.5)),2*(r*(0.5-(j-q)/r))]) +A.L(l,"uniform1f",[o.nZ(0,k,"u_radius"),d.c]) +n.afQ(o,m) +h=o.nZ(0,k,"m_gradient") +g=A.hY() +c=d.r +if(c!=null){f=new A.dX(new Float32Array(16)) +f.l7(new A.dX(c)) +g.ba(0,-i,-j) +g.hc(0,f) +g.ba(0,i,j)}A.L(l,"uniformMatrix4fv",[h,!1,g.a]) +e=new A.bkC(a1,a,o,m,n,s,p).$0() +$.b2N().b=!1 +return e}, +a2l(a,b,c){var s,r,q=$.hy,p=A.aEs(q==null?$.hy=A.pN():q) +p.e=1 +p.ye(11,"v_color") +p.kr(9,"u_resolution") +p.kr(9,"u_tile_offset") +p.kr(2,"u_radius") +p.kr(14,"m_gradient") +s=p.gCj() +q=A.a([],t.s) +r=new A.wH("main",q) +p.c.push(r) +q.push(u.J) +q.push(u.h7) +q.push("float dist = length(localCoord);") +q.push("float st = abs(dist / u_radius);") +q.push(s.a+" = "+A.cB5(p,r,a,c)+" * scale + bias;") +return p.dN()}} +A.bkC.prototype={ +$0(){var s=this,r=$.r3,q=s.b,p=s.c,o=s.d,n=s.e,m=s.f,l=s.r,k=q.c,j=q.a,i=q.d +q=q.b +if(s.a)return r.ayS(new A.W(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +else{r=r.ayQ(new A.W(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +r.toString +return r}}, +$S:215} +A.auW.prototype={ +M9(a,b,c){var s=this,r=s.f +if((r===B.bH||r===B.ih)&&s.y===0&&s.x.l(0,B.h))return s.akg(a,b,c) +else{if($.r3==null)$.r3=new A.Oh() +r=A.L(a,"createPattern",[s.M7(b,c,!1),"no-repeat"]) +r.toString +return r}}, +a2l(a,b,c){var s,r,q,p,o=this,n=o.b,m=o.x,l=n.a-m.a,k=n.b-m.b,j=l*l+k*k +if(j<14210854822304103e-30)return o.aOC(a,b,c) +Math.sqrt(j) +n=$.hy +s=A.aEs(n==null?$.hy=A.pN():n) +s.e=1 +s.ye(11,"v_color") +s.kr(9,"u_resolution") +s.kr(9,"u_tile_offset") +s.kr(2,"u_radius") +s.kr(14,"m_gradient") +r=s.gCj() +n=A.a([],t.s) +q=new A.wH("main",n) +s.c.push(q) +n.push(u.J) +n.push(u.h7) +n.push("float dist = length(localCoord);") +m=o.y +p=B.e.adH(m/(Math.min(b.c-b.a,b.d-b.b)/2),8) +n.push(m===0?"float st = dist / u_radius;":"float st = ((dist / u_radius) - "+p+") / (1.0 - "+p+");") +if(c===B.bH)n.push("if (st < 0.0) { st = -1.0; }") +n.push(r.a+" = "+A.cB5(s,q,a,c)+" * scale + bias;") +return s.dN()}} +A.vR.prototype={ +gWN(){return""}} +A.acZ.prototype={ +gWN(){return"blur("+A.r((this.a+this.b)*0.5)+"px)"}, +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.acZ&&b.c===s.c&&b.a===s.a&&b.b===s.b}, +gv(a){return A.ad(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)}, +k(a){return"ImageFilter.blur("+A.r(this.a)+", "+A.r(this.b)+", "+this.c.k(0)+")"}} +A.afZ.prototype={ +gbHf(){return A.pP(this.a)}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.afZ&&b.b===this.b&&A.pQ(b.a,this.a)}, +gv(a){return A.ad(A.cs(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)}, +k(a){return"ImageFilter.matrix("+A.r(this.a)+", "+this.b.k(0)+")"}} +A.atr.prototype={$ivR:1} +A.SS.prototype={ +abV(a){var s,r,q,p=this,o=p.c +switch(o.a){case 0:case 8:case 7:A.a6(a.style,"visibility","hidden") +return null +case 2:case 6:return null +case 1:case 3:o=p.c=B.rq +break +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}s=p.b +r=A.cU7(s,o) +o=r.b +$.Bw.av4(o) +p.a=r.a +q=p.c +if(q===B.rp||q===B.zM||q===B.ro)A.a6(a.style,"background-color",A.hR(s.a)) +return o}} +A.SG.prototype={ +abV(a){var s=A.cU8(this.b),r=s.b +$.Bw.av4(r) +this.a=s.a +return r}} +A.aEr.prototype={ +gCj(){var s=this.Q +if(s==null)s=this.Q=new A.M9(this.y?"gFragColor":"gl_FragColor",11,3) +return s}, +ye(a,b){var s=new A.M9(b,a,1) +this.b.push(s) +return s}, +kr(a,b){var s=new A.M9(b,a,2) +this.b.push(s) +return s}, +auY(a,b){var s=new A.M9(b,a,3) +this.b.push(s) +return s}, +auF(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.ddk(b.b)+" "+b.a +if(o===0)o=s.a=r+" = " +else o=r +s.a=o+";\n"}, +dN(){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.auF(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.c2(a,r)!==-1&&B.b.p(m,r) +n=s[r].d +n.toString +if(!o)if(p==null)q.append(n) +else q.insertBefore(n,p)}}, +b9n(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;s1&&e.charCodeAt(0)<127&&e.charCodeAt(1)<127) +o=A.dki(new A.bon(h,e,a,p,q),t.S) +if(f.type!=="keydown")if(h.b){r=A.Im(f) +r.toString +r=r==="CapsLock" +n=r}else n=!1 +else n=!0 +if(h.b){r=A.Im(f) +r.toString +r=r==="CapsLock"}else r=!1 +if(r){h.ard(B.w,new A.boo(s,q,o),new A.bop(h,q)) +m=B.eB}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.aAN +else{l=h.d +l.toString +l.$1(new A.pi(s,B.dP,q,o.$0(),g,!0)) +r.F(0,q) +m=B.eB}}else m=B.eB}else{if(h.f.i(0,q)==null){f.preventDefault() +return}m=B.dP}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.n(0,q,j) +$.cZY().aE(0,new A.boq(h,o,a,s)) +if(p)if(!l)h.biN(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.dP?g:i +if(h.d.$1(new A.pi(s,m,q,e,r,!1)))f.preventDefault()}, +jB(a){var s=this,r={} +r.a=!1 +s.d=new A.bov(r,s) +try{s.b3R(a)}finally{if(!r.a)s.d.$1(B.aAM) +s.d=null}}, +U4(a,b,c,d,e){var s,r=this,q=r.f,p=q.aB(0,a),o=q.aB(0,b),n=p||o,m=d===B.eB&&!n,l=d===B.dP&&n +if(m){r.a.$1(new A.pi(A.cAB(e),B.eB,a,c,null,!0)) +q.n(0,a,c)}if(l&&p){s=q.i(0,a) +s.toString +r.asu(e,a,s)}if(l&&o){q=q.i(0,b) +q.toString +r.asu(e,b,q)}}, +asu(a,b,c){this.a.$1(new A.pi(A.cAB(a),B.dP,b,c,null,!0)) +this.f.F(0,b)}} +A.bor.prototype={ +$1(a){var s=this +if(!s.a.a&&!s.b.e){s.c.$0() +s.b.a.$1(s.d.$0())}}, +$S:33} +A.bos.prototype={ +$0(){this.a.a=!0}, +$S:0} +A.bot.prototype={ +$0(){return new A.pi(new A.aU(this.a.a+2e6),B.dP,this.b,this.c,null,!0)}, +$S:370} +A.bou.prototype={ +$0(){this.a.f.F(0,this.b)}, +$S:0} +A.bon.prototype={ +$0(){var s,r,q,p,o,n=this,m=n.b,l=B.aWo.i(0,m) +if(l!=null)return l +s=n.c.a +if(B.QS.aB(0,A.vJ(s))){m=A.vJ(s) +m.toString +m=B.QS.i(0,m) +r=m==null?null:m[B.e.au(s.location)] +r.toString +return r}if(n.d){q=n.a.c.aIQ(A.Im(s),A.vJ(s),B.e.au(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:90} +A.boo.prototype={ +$0(){return new A.pi(this.a,B.dP,this.b,this.c.$0(),null,!0)}, +$S:370} +A.bop.prototype={ +$0(){this.a.f.F(0,this.b)}, +$S:0} +A.boq.prototype={ +$2(a,b){var s,r,q=this +if(J.q(q.b.$0(),a))return +s=q.a +r=s.f +if(r.bra(0,a)&&!b.$1(q.c))r.HC(r,new A.bom(s,a,q.d))}, +$S:527} +A.bom.prototype={ +$2(a,b){var s=this.b +if(b!==s)return!1 +this.a.d.$1(new A.pi(this.c,B.dP,a,s,null,!0)) +return!0}, +$S:163} +A.bov.prototype={ +$1(a){this.a.a=!0 +return this.b.a.$1(a)}, +$S:196} +A.baN.prototype={ +ph(a){if(!this.b)return +this.b=!1 +A.fS(this.a,"contextmenu",$.cuV(),null)}, +bv2(a){if(this.b)return +this.b=!0 +A.lv(this.a,"contextmenu",$.cuV(),null)}} +A.btv.prototype={} +A.cth.prototype={ +$1(a){a.preventDefault()}, +$S:6} +A.b7_.prototype={ +gbkx(){var s=this.a +s===$&&A.b() +return s}, +m(){var s=this +if(s.c||s.gA1()==null)return +s.c=!0 +s.bky()}, +ML(){var s=0,r=A.p(t.H),q=this +var $async$ML=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=q.gA1()!=null?2:3 +break +case 2:s=4 +return A.i(q.uX(),$async$ML) +case 4:s=5 +return A.i(q.gA1().th(0,-1),$async$ML) +case 5:case 3:return A.n(null,r)}}) +return A.o($async$ML,r)}, +gw0(){var s=this.gA1() +s=s==null?null:s.aJ7() +return s==null?"/":s}, +gam(){var s=this.gA1() +return s==null?null:s.af3(0)}, +bky(){return this.gbkx().$0()}} +A.a5Z.prototype={ +aUW(a){var s,r=this,q=r.d +if(q==null)return +r.a=q.a7b(r.gacq(r)) +if(!r.a3O(r.gam())){s=t.z +q.D4(0,A.a1(["serialCount",0,"state",r.gam()],s,s),"flutter",r.gw0())}r.e=r.ga2o()}, +ga2o(){if(this.a3O(this.gam())){var s=this.gam() +s.toString +return B.e.au(A.f0(J.aS(t.f.a(s),"serialCount")))}return 0}, +a3O(a){return t.f.b(a)&&J.aS(a,"serialCount")!=null}, +Qq(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.a1(["serialCount",r,"state",c],s,s) +a.toString +q.D4(0,s,"flutter",a)}else{r===$&&A.b();++r +this.e=r +s=A.a1(["serialCount",r,"state",c],s,s) +a.toString +q.aE2(0,s,"flutter",a)}}}, +afO(a){return this.Qq(a,!1,null)}, +acr(a,b){var s,r,q,p,o=this +if(!o.a3O(b)){s=o.d +s.toString +r=o.e +r===$&&A.b() +q=t.z +s.D4(0,A.a1(["serialCount",r+1,"state",b],q,q),"flutter",o.gw0())}o.e=o.ga2o() +s=$.cf() +r=o.gw0() +t.Xw.a(b) +q=b==null?null:J.aS(b,"state") +p=t.z +s.rI("flutter/navigation",B.d_.ru(new A.rE("pushRouteInformation",A.a1(["location",r,"state",q],p,p))),new A.btH())}, +uX(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$uX=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.m() +if(p.b||p.d==null){s=1 +break}p.b=!0 +o=p.ga2o() +s=o>0?3:4 +break +case 3:s=5 +return A.i(p.d.th(0,-o),$async$uX) +case 5:case 4:n=p.gam() +n.toString +t.f.a(n) +m=p.d +m.toString +m.D4(0,J.aS(n,"state"),"flutter",p.gw0()) +case 1:return A.n(q,r)}}) +return A.o($async$uX,r)}, +gA1(){return this.d}} +A.btH.prototype={ +$1(a){}, +$S:63} +A.a9G.prototype={ +aV8(a){var s,r=this,q=r.d +if(q==null)return +r.a=q.a7b(r.gacq(r)) +s=r.gw0() +if(!A.cyX(A.cHo(self.window.history))){q.D4(0,A.a1(["origin",!0,"state",r.gam()],t.N,t.z),"origin","") +r.bhV(q,s)}}, +Qq(a,b,c){var s=this.d +if(s!=null)this.a5S(s,a,!0)}, +afO(a){return this.Qq(a,!1,null)}, +acr(a,b){var s,r=this,q="flutter/navigation" +if(A.cM7(b)){s=r.d +s.toString +r.bhU(s) +$.cf().rI(q,B.d_.ru(B.b5K),new A.bG6())}else if(A.cyX(b)){s=r.f +s.toString +r.f=null +$.cf().rI(q,B.d_.ru(new A.rE("pushRoute",s)),new A.bG7())}else{r.f=r.gw0() +r.d.th(0,-1)}}, +a5S(a,b,c){var s +if(b==null)b=this.gw0() +s=this.e +if(c)a.D4(0,s,"flutter",b) +else a.aE2(0,s,"flutter",b)}, +bhV(a,b){return this.a5S(a,b,!1)}, +bhU(a){return this.a5S(a,null,!1)}, +uX(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$uX=A.l(function(a,b){if(a===1)return A.m(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.i(o.th(0,-1),$async$uX) +case 3:n=p.gam() +n.toString +o.D4(0,J.aS(t.f.a(n),"state"),"flutter",p.gw0()) +case 1:return A.n(q,r)}}) +return A.o($async$uX,r)}, +gA1(){return this.d}} +A.bG6.prototype={ +$1(a){}, +$S:63} +A.bG7.prototype={ +$1(a){}, +$S:63} +A.zB.prototype={} +A.a30.prototype={ +ga1g(){var s,r,q=this,p=q.b +if(p===$){s=q.a +r=A.hi(new A.b1(s,new A.bhE(),A.X(s).h("b1<1>")),t.Te) +q.b!==$&&A.a_() +q.b=r +p=r}return p}} +A.bhE.prototype={ +$1(a){return a.c}, +$S:72} +A.att.prototype={ +yk(a){var s +this.b=a +this.c=!0 +s=A.a([],t.W5) +return this.a=new A.bA_(new A.c9l(a,A.a([],t.Xr),A.a([],t.cC),A.hY()),s,new A.bBE())}, +gaBq(){return this.c}, +uh(){var s,r=this +if(!r.c)r.yk(B.lG) +r.c=!1 +s=r.a +s.b=s.a.bqX() +s.f=!0 +s=r.a +r.b===$&&A.b() +return new A.ats(s)}} +A.ats.prototype={ +uZ(a,b){throw A.d(A.aq("toImageSync is not supported on the HTML backend. Use drawPicture instead, or toImage."))}, +m(){this.a=!0}} +A.avh.prototype={ +gapg(){var s,r=this,q=r.c +if(q===$){s=t.g.a(A.cQ(r.gbbu())) +r.c!==$&&A.a_() +r.c=s +q=s}return q}, +bbv(a){var s,r,q,p=A.cHp(a) +p.toString +for(s=this.a,r=s.length,q=0;q")).eB(new A.bgN(q))}, +m(){var s,r,q,p=this +p.k1.removeListener(p.k2) +p.k2=null +s=p.fy +if(s!=null)s.disconnect() +p.fy=null +s=p.dy +if(s!=null)s.ao(0) +p.dy=null +s=$.cui() +r=s.a +B.b.F(r,p.gatN()) +if(r.length===0)s.b.removeListener(s.gapg()) +s=p.gis() +r=s.b +q=A.z(r).h("bR<1>") +B.b.aE(A.R(new A.bR(r,q),!0,q.h("B.E")),s.gbua()) +s.d.aO(0) +s.e.aO(0)}, +gis(){var s,r,q=null,p=this.e +if(p===$){s=t.S +r=t.mm +p!==$&&A.a_() +p=this.e=new A.a3p(this,A.N(s,t.lz),A.N(s,t.e),new A.pK(q,q,r),new A.pK(q,q,r))}return p}, +gbyp(){return t.e8.a(this.gis().b.i(0,0))}, +abl(){var s=this.f +if(s!=null)A.BC(s,this.r)}, +bzc(a,b){var s=this.ax +if(s!=null)A.BC(new A.bgO(b,s,a),this.ay) +else b.$1(!1)}, +rI(a,b,c){var s +if(a==="dev.flutter/channel-buffers")try{s=$.amu() +b.toString +s.bxi(b)}finally{c.$1(null)}else $.amu().aDQ(a,b,c)}, +arH(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=null +switch(a){case"flutter/skia":s=B.d_.qg(b) +switch(s.a){case"Skia.setResourceCacheMaxBytes":if($.ar() instanceof A.a0b){r=A.bZ(s.b) +$.b8g.I().d.afN(r)}d.lO(a0,B.bb.h8([A.a([!0],t.HZ)])) +break}return +case"flutter/assets":d.Ka(B.ai.hF(0,A.dF(b.buffer,0,c)),a0) +return +case"flutter/platform":s=B.d_.qg(b) +switch(s.a){case"SystemNavigator.pop":q=t.e8 +if(q.a(d.gis().b.i(0,0))!=null)q.a(d.gis().b.i(0,0)).gVc().ML().bf(new A.bgJ(d,a0),t.P) +else d.lO(a0,B.bb.h8([!0])) +return +case"HapticFeedback.vibrate":q=d.b2a(A.bw(s.b)) +p=self.window.navigator +if("vibrate" in p)p.vibrate(q) +d.lO(a0,B.bb.h8([!0])) +return +case u.p:o=t.xE.a(s.b) +q=J.ao(o) +n=A.bw(q.i(o,"label")) +if(n==null)n="" +m=A.fO(q.i(o,"primaryColor")) +if(m==null)m=4278190080 +q=self.document +q.title=n +A.cU2(new A.v(m>>>0)) +d.lO(a0,B.bb.h8([!0])) +return +case"SystemChrome.setSystemUIOverlayStyle":l=A.fO(J.aS(t.xE.a(s.b),"statusBarColor")) +A.cU2(l==null?c:new A.v(l>>>0)) +d.lO(a0,B.bb.h8([!0])) +return +case"SystemChrome.setPreferredOrientations":B.a5m.Qp(t.j.a(s.b)).bf(new A.bgK(d,a0),t.P) +return +case"SystemSound.play":d.lO(a0,B.bb.h8([!0])) +return +case"Clipboard.setData":new A.a0K(A.cvT(),A.cym()).aKQ(s,a0) +return +case"Clipboard.getData":new A.a0K(A.cvT(),A.cym()).aIy(a0) +return +case"Clipboard.hasStrings":new A.a0K(A.cvT(),A.cym()).by_(a0) +return}break +case"flutter/service_worker":q=self.window +k=A.L(self.document,"createEvent",["Event"]) +A.L(k,"initEvent",["flutter-first-frame",!0,!0]) +q.dispatchEvent(k) +return +case"flutter/textinput":$.amw().gLO(0).bxS(b,a0) +return +case"flutter/contextmenu":switch(B.d_.qg(b).a){case"enableContextMenu":t.e8.a(d.gis().b.i(0,0)).gaxm().bv2(0) +d.lO(a0,B.bb.h8([!0])) +return +case"disableContextMenu":t.e8.a(d.gis().b.i(0,0)).gaxm().ph(0) +d.lO(a0,B.bb.h8([!0])) +return}return +case"flutter/mousecursor":s=B.iE.qg(b) +o=t.f.a(s.b) +switch(s.a){case"activateSystemCursor":q=A.awc(d.gis().b.gbm(0)) +if(q!=null){if(q.w===$){q.gjk() +q.w!==$&&A.a_() +q.w=new A.btv()}j=B.aW3.i(0,A.bw(J.aS(o,"kind"))) +if(j==null)j="default" +if(j==="default")A.L(self.document.body.style,"removeProperty",["cursor"]) +else A.a6(self.document.body.style,"cursor",j)}break}return +case"flutter/web_test_e2e":d.lO(a0,B.bb.h8([A.dma(B.d_,b)])) +return +case"flutter/platform_views":i=B.iE.qg(b) +h=i.b +o=h +if(!!0)throw A.d(A.a0("Pattern matching error")) +q=$.cX2() +a0.toString +q.bxu(i.a,o,a0) +return +case"flutter/accessibility":q=t.e8.a(d.gis().b.i(0,0)) +if(q!=null){q=q.gauN() +k=t.f +g=k.a(J.aS(k.a(B.fs.nK(b)),"data")) +f=A.bw(J.aS(g,"message")) +if(f!=null&&f.length!==0){e=A.cxI(g,"assertiveness") +q.avl(f,B.aHJ[e==null?0:e])}}d.lO(a0,B.fs.h8(!0)) +return +case"flutter/navigation":q=t.e8 +if(q.a(d.gis().b.i(0,0))!=null)q.a(d.gis().b.i(0,0)).aaP(b).bf(new A.bgL(d,a0),t.P) +else if(a0!=null)a0.$1(c) +d.ry="/" +return}q=$.cTC +if(q!=null){q.$3(a,b,a0) +return}d.lO(a0,c)}, +Ka(a,b){return this.b3U(a,b)}, +b3U(a,b){var s=0,r=A.p(t.H),q=1,p,o=this,n,m,l,k,j,i,h +var $async$Ka=A.l(function(c,d){if(c===1){p=d +s=q}while(true)switch(s){case 0:q=3 +k=$.GF +h=t.Lk +s=6 +return A.i(A.Op(k.Do(a)),$async$Ka) +case 6:n=h.a(d) +s=7 +return A.i(n.gHn().Bw(),$async$Ka) +case 7:m=d +o.lO(b,A.fe(m,0,null)) +q=1 +s=5 +break +case 3:q=2 +i=p +l=A.ag(i) +$.k6().$1("Error while trying to load an asset: "+A.r(l)) +o.lO(b,null) +s=5 +break +case 2:s=1 +break +case 5:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$Ka,r)}, +b2a(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}}, +vb(){var s=$.cTZ +if(s==null)throw A.d(A.dA("scheduleFrameCallback must be initialized first.")) +s.$0()}, +Zl(a,b){return this.bFN(a,b)}, +bFN(a,b){var s=0,r=A.p(t.H),q=this,p +var $async$Zl=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=q.w +p=p==null?null:p.B(0,b) +s=p===!0||$.ar().gadi()==="html"?2:3 +break +case 2:s=4 +return A.i($.ar().D3(a,b),$async$Zl) +case 4:case 3:return A.n(null,r)}}) +return A.o($async$Zl,r)}, +aVP(){var s=this +if(s.dy!=null)return +s.a=s.a.axt(A.cwG()) +s.dy=A.hF(self.window,"languagechange",new A.bgI(s))}, +aVL(){var s,r,q,p=A.oY(self.MutationObserver,[t.g.a(A.cQ(new A.bgH(this)))]) +this.fy=p +s=self.document.documentElement +s.toString +r=A.a(["style"],t.s) +q=A.N(t.N,t.z) +q.n(0,"attributes",!0) +q.n(0,"attributeFilter",r) +r=A.bH(q) +A.L(p,"observe",[s,r==null?t.K.a(r):r])}, +atV(a){var s=this,r=s.a +if(r.d!==a){s.a=r.brM(a) +A.BC(null,null) +A.BC(s.k3,s.k4)}}, +bkG(a){var s=this.a,r=s.a +if((r.a&32)!==0!==a){this.a=s.axn(r.brD(a)) +A.BC(null,null)}}, +aVF(){var s,r=this,q=r.k1 +r.atV(q.matches?B.aN:B.ak) +s=t.g.a(A.cQ(new A.bgG(r))) +r.k2=s +q.addListener(s)}, +qs(a,b,c){A.GM(this.p4,this.R8,new A.M3(b,0,a,c),t.yR)}, +gW2(){var s=this.ry +if(s==null){s=t.e8.a(this.gis().b.i(0,0)) +s=s==null?null:s.gVc().gw0() +s=this.ry=s==null?"/":s}return s}, +lO(a,b){A.jk(B.w,null,t.H).bf(new A.bgP(a,b),t.P)}} +A.bgN.prototype={ +$1(a){this.a.abl()}, +$S:12} +A.bgO.prototype={ +$0(){return this.a.$1(this.b.$1(this.c))}, +$S:0} +A.bgM.prototype={ +$1(a){this.a.D7(this.b,a,t.CD)}, +$S:63} +A.bgJ.prototype={ +$1(a){this.a.lO(this.b,B.bb.h8([!0]))}, +$S:33} +A.bgK.prototype={ +$1(a){this.a.lO(this.b,B.bb.h8([a]))}, +$S:132} +A.bgL.prototype={ +$1(a){var s=this.b +if(a)this.a.lO(s,B.bb.h8([!0])) +else if(s!=null)s.$1(null)}, +$S:132} +A.bgI.prototype={ +$1(a){var s=this.a +s.a=s.a.axt(A.cwG()) +A.BC(s.fr,s.fx)}, +$S:6} +A.bgH.prototype={ +$2(a,b){var s,r,q,p,o=null,n=B.b.gaz(a),m=t.e,l=this.a +for(;n.t();){s=n.gK(0) +s.toString +m.a(s) +r=s.type +if((r==null?o:r)==="attributes"){r=s.attributeName +r=(r==null?o:r)==="style"}else r=!1 +if(r){r=self.document.documentElement +r.toString +q=A.dtQ(r) +p=(q==null?16:q)/16 +r=l.a +if(r.e!==p){l.a=r.brW(p) +A.BC(o,o) +A.BC(l.go,l.id)}}}}, +$S:554} +A.bgG.prototype={ +$1(a){var s=A.cHp(a) +s.toString +s=s?B.aN:B.ak +this.a.atV(s)}, +$S:6} +A.bgP.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(this.b)}, +$S:33} +A.csK.prototype={ +$0(){this.a.$2(this.b,this.c)}, +$S:0} +A.bOu.prototype={ +k(a){return A.I(this).k(0)+"[view: null]"}} +A.aBu.prototype={ +M1(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.aBu(r,!1,q,p,o,n,s.r,s.w)}, +axn(a){var s=null +return this.M1(a,s,s,s,s)}, +brS(a){var s=null +return this.M1(s,s,s,a,s)}, +axt(a){var s=null +return this.M1(s,a,s,s,s)}, +brW(a){var s=null +return this.M1(s,s,s,s,a)}, +brM(a){var s=null +return this.M1(s,s,a,s,s)}} +A.aBC.prototype={ +D1(a,b,c){var s=this.a +if(s.aB(0,a))return!1 +s.n(0,a,b) +if(!c)this.c.B(0,a) +return!0}, +bFA(a,b){return this.D1(a,b,!0)}, +bFP(a,b,c){this.d.n(0,b,a) +return this.b.cP(0,b,new A.bxB(this,b,"flt-pv-slot-"+b,a,c))}, +awV(a){var s=this.b.F(0,a) +if(s!=null)s.remove()}, +Nv(a){var s=this.d.i(0,a) +return s!=null&&this.c.p(0,s)}} +A.bxB.prototype={ +$0(){var s,r,q,p,o=this,n="getPropertyValue",m=A.d0(self.document,"flt-platform-view"),l=o.b +m.id="flt-pv-"+l +s=A.bH(o.c) +A.L(m,"setAttribute",["slot",s==null?t.K.a(s):s]) +s=o.d +r=o.a.a.i(0,s) +r.toString +q=t.e +if(t._a.b(r))p=q.a(r.$2$params(l,o.e)) +else{t.xA.a(r) +p=q.a(r.$1(l))}if(A.L(p.style,n,["height"]).length===0){$.k6().$1("Height of Platform View type: ["+s+"] may not be set. Defaulting to `height: 100%`.\nSet `style.height` to any appropriate value to stop this message.") +A.a6(p.style,"height","100%")}if(A.L(p.style,n,["width"]).length===0){$.k6().$1("Width of Platform View type: ["+s+"] may not be set. Defaulting to `width: 100%`.\nSet `style.width` to any appropriate value to stop this message.") +A.a6(p.style,"width","100%")}m.append(p) +return m}, +$S:188} +A.bxC.prototype={ +aZv(a,b,c,d){var s=this.b +if(!s.a.aB(0,d)){a.$1(B.iE.C4("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: <"+d+">.")) +return}if(s.b.aB(0,c)){a.$1(B.iE.C4("recreating_view","view id: "+c,"trying to create an already created view")) +return}s.bFP(d,c,b) +a.$1(B.iE.MH(null))}, +bxu(a,b,c){var s,r,q +switch(a){case"create":t.f.a(b) +s=J.ao(b) +r=B.e.au(A.e6(s.i(b,"id"))) +q=A.ax(s.i(b,"viewType")) +this.aZv(c,s.i(b,"params"),r,q) +return +case"dispose":this.b.awV(A.bZ(b)) +c.$1(B.iE.MH(null)) +return}c.$1(null)}} +A.bD1.prototype={ +bIg(){if(this.a==null){this.a=t.g.a(A.cQ(new A.bD2())) +A.fS(self.document,"touchstart",this.a,null)}}} +A.bD2.prototype={ +$1(a){}, +$S:6} +A.bxU.prototype={ +aZg(){if("PointerEvent" in self.window){var s=new A.c9L(A.N(t.S,t.ZW),this,A.a([],t.he)) +s.aLV() +return s}throw A.d(A.aq("This browser does not support pointer events which are necessary to handle interactions with Flutter Web apps."))}} +A.apg.prototype={ +bCw(a,b){var s,r,q,p=this,o=$.cf() +if(!o.a.c){s=A.a(b.slice(0),A.X(b)) +A.GM(o.as,o.at,new A.zO(s),t.kf) +return}s=p.a +if(s!=null){o=s.a +r=A.tM(a) +r.toString +o.push(new A.ahb(b,a,A.acU(r))) +if(a.type==="pointerup")if(!J.q(a.target,s.b))p.a2U()}else if(a.type==="pointerdown"){q=a.target +if(t.e.b(q)&&A.L(q,"hasAttribute",["flt-tappable"])){o=A.d3(B.K,p.gbcr()) +s=A.tM(a) +s.toString +p.a=new A.aUC(A.a([new A.ahb(b,a,A.acU(s))],t.U7),q,o)}else{s=A.a(b.slice(0),A.X(b)) +A.GM(o.as,o.at,new A.zO(s),t.kf)}}else{s=A.a(b.slice(0),A.X(b)) +A.GM(o.as,o.at,new A.zO(s),t.kf)}}, +bBJ(a,b,c,d){var s=this,r=s.a +if(r==null){if(d&&s.bi3(b)){b.stopPropagation() +$.cf().qs(c,B.eq,null)}return}if(d){s.a=null +r.c.ao(0) +b.stopPropagation() +$.cf().qs(c,B.eq,null)}else s.a2U()}, +bcs(){if(this.a==null)return +this.a2U()}, +bi3(a){var s,r=this.b +if(r==null)return!0 +s=A.tM(a) +s.toString +return A.acU(s).a-r.a>=5e4}, +a2U(){var s,r,q,p,o,n,m=this.a +m.c.ao(0) +s=t.D9 +r=A.a([],s) +for(q=m.a,p=q.length,o=0;o1}, +b8h(a){var s,r,q,p,o,n=this,m=$.fv() +if(m===B.ew)return!1 +if(n.anV(a.deltaX,A.cHy(a))||n.anV(a.deltaY,A.cHz(a)))return!1 +if(!(B.e.M(a.deltaX,120)===0&&B.e.M(a.deltaY,120)===0)){m=A.cHy(a) +if(B.e.M(m==null?1:m,120)===0){m=A.cHz(a) +m=B.e.M(m==null?1:m,120)===0}else m=!1}else m=!0 +if(m){m=a.deltaX +s=n.c +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.tM(a)!=null)m=(r?null:A.tM(s))!=null +else m=!1 +if(m){m=A.tM(a) +m.toString +s.toString +s=A.tM(s) +s.toString +if(m-s<50&&n.d)return!0}return!1}}return!0}, +aZ7(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this +if(c.b8h(a)){s=B.cH +r=-2}else{s=B.cv +r=-1}q=a.deltaX +p=a.deltaY +switch(B.e.au(a.deltaMode)){case 1:o=$.cPu +if(o==null){n=A.d0(self.document,"div") +o=n.style +A.a6(o,"font-size","initial") +A.a6(o,"display","none") +self.document.body.append(n) +o=A.L(A.cwy(self.window,n),"getPropertyValue",["font-size"]) +if(B.c.p(o,"px"))m=A.zW(A.cj(o,"px","")) +else m=null +n.remove() +o=$.cPu=m==null?16:m/4}q*=o +p*=o +break +case 2:o=c.a.b +q*=o.grX().a +p*=o.grX().b +break +case 0:o=$.ja() +if(o===B.eK){o=$.ec() +l=o.d +if(l==null){l=self.window.devicePixelRatio +if(l===0)l=1}q*=l +o=o.d +if(o==null){o=self.window.devicePixelRatio +if(o===0)o=1}p*=o}break +default:break}k=A.a([],t.D9) +o=c.a +l=o.b +j=A.cRZ(a,l) +i=$.ja() +if(i===B.eK){i=o.e +h=i==null +if(h)g=null +else{g=$.cEb() +g=i.f.aB(0,g)}if(g!==!0){if(h)i=null +else{h=$.cEc() +h=i.f.aB(0,h) +i=h}f=i===!0}else f=!0}else f=!1 +i=a.ctrlKey&&!f +o=o.d +l=l.a +h=j.a +if(i){i=A.tM(a) +i.toString +i=A.acU(i) +g=$.ec() +e=g.d +if(e==null){e=self.window.devicePixelRatio +if(e===0)e=1}g=g.d +if(g==null){g=self.window.devicePixelRatio +if(g===0)g=1}d=A.a22(a) +d.toString +o.brd(k,B.e.au(d),B.i2,r,s,h*e,j.b*g,1,1,Math.exp(-p/200),B.bhZ,i,l)}else{i=A.tM(a) +i.toString +i=A.acU(i) +g=$.ec() +e=g.d +if(e==null){e=self.window.devicePixelRatio +if(e===0)e=1}g=g.d +if(g==null){g=self.window.devicePixelRatio +if(g===0)g=1}d=A.a22(a) +d.toString +o.brf(k,B.e.au(d),B.i2,r,s,h*e,j.b*g,1,1,q,p,B.bhY,i,l)}c.c=a +c.d=s===B.cH +return k}} +A.xq.prototype={ +k(a){return A.I(this).k(0)+"(change: "+this.a.k(0)+", buttons: "+this.b+")"}} +A.X1.prototype={ +aJC(a,b){var s +if(this.a!==0)return this.afh(b) +s=(b===0&&a>-1?A.dpT(a):b)&1073741823 +this.a=s +return new A.xq(B.bhX,s)}, +afh(a){var s=a&1073741823,r=this.a +if(r===0&&s!==0)return new A.xq(B.i2,r) +this.a=s +return new A.xq(s===0?B.i2:B.pA,s)}, +afg(a){if(this.a!==0&&(a&1073741823)===0){this.a=0 +return new A.xq(B.Wv,0)}return null}, +aJD(a){if((a&1073741823)===0){this.a=0 +return new A.xq(B.i2,0)}return null}, +aJE(a){var s +if(this.a===0)return null +s=this.a=(a==null?0:a)&1073741823 +if(s===0)return new A.xq(B.Wv,s) +else return new A.xq(B.pA,s)}} +A.c9L.prototype={ +a2K(a){return this.e.cP(0,a,new A.c9N())}, +aqH(a){if(A.cwx(a)==="touch")this.e.F(0,A.cHt(a))}, +a1p(a,b,c,d){this.UK(0,a,b,new A.c9M(this,d,c))}, +a1o(a,b,c){return this.a1p(a,b,c,!0)}, +aLV(){var s,r=this,q=r.a.b +r.a1o(q.gjk().a,"pointerdown",new A.c9O(r)) +s=q.c +r.a1o(s.ga_U(),"pointermove",new A.c9P(r)) +r.a1p(q.gjk().a,"pointerleave",new A.c9Q(r),!1) +r.a1o(s.ga_U(),"pointerup",new A.c9R(r)) +r.a1p(q.gjk().a,"pointercancel",new A.c9S(r),!1) +r.b.push(A.cOt("wheel",new A.c9T(r),!1,q.gjk().a))}, +AJ(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=A.cwx(c) +i.toString +s=this.aq8(i) +i=A.cHu(c) +i.toString +r=A.cHv(c) +r.toString +i=Math.abs(i)>Math.abs(r)?A.cHu(c):A.cHv(c) +i.toString +r=A.tM(c) +r.toString +q=A.acU(r) +p=c.pressure +if(p==null)p=null +r=this.a +o=r.b +n=A.cRZ(c,o) +m=this.Ey(c) +l=$.ec() +k=l.d +if(k==null){k=self.window.devicePixelRatio +if(k===0)k=1}l=l.d +if(l==null){l=self.window.devicePixelRatio +if(l===0)l=1}j=p==null?0:p +r.d.bre(a,b.b,b.a,m,s,n.a*k,n.b*l,j,1,B.pB,i/180*3.141592653589793,q,o.a)}, +b0O(a){var s,r +if("getCoalescedEvents" in a){s=a.getCoalescedEvents() +s=B.b.jx(s,t.e) +r=new A.ek(s.a,s.$ti.h("ek<1,F>")) +if(!r.gad(r))return r}return A.a([a],t.J)}, +aq8(a){switch(a){case"mouse":return B.cv +case"pen":return B.dc +case"touch":return B.bi +default:return B.dd}}, +Ey(a){var s=A.cwx(a) +s.toString +if(this.aq8(s)===B.cv)s=-1 +else{s=A.cHt(a) +s.toString +s=B.e.au(s)}return s}} +A.c9N.prototype={ +$0(){return new A.X1()}, +$S:578} +A.c9M.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j="getModifierState" +if(this.b){s=this.a.a.e +if(s!=null){r=A.L(a,j,["Alt"]) +q=A.L(a,j,["Control"]) +p=A.L(a,j,["Meta"]) +o=A.L(a,j,["Shift"]) +n=A.tM(a) +n.toString +m=$.d_5() +l=$.d_6() +k=$.cDG() +s.U4(m,l,k,r?B.eB:B.dP,n) +m=$.cEb() +l=$.cEc() +k=$.cDH() +s.U4(m,l,k,q?B.eB:B.dP,n) +r=$.d_7() +m=$.d_8() +l=$.cDI() +s.U4(r,m,l,p?B.eB:B.dP,n) +r=$.d_9() +q=$.d_a() +m=$.cDJ() +s.U4(r,q,m,o?B.eB:B.dP,n)}}this.c.$1(a)}, +$S:6} +A.c9O.prototype={ +$1(a){var s,r,q=this.a,p=q.Ey(a),o=A.a([],t.D9),n=q.a2K(p),m=A.a22(a) +m.toString +s=n.afg(B.e.au(m)) +if(s!=null)q.AJ(o,s,a) +m=B.e.au(a.button) +r=A.a22(a) +r.toString +q.AJ(o,n.aJC(m,B.e.au(r)),a) +q.Ef(a,o)}, +$S:100} +A.c9P.prototype={ +$1(a){var s,r,q,p,o=this.a,n=o.a2K(o.Ey(a)),m=A.a([],t.D9) +for(s=J.au(o.b0O(a));s.t();){r=s.gK(s) +q=r.buttons +if(q==null)q=null +q.toString +p=n.afg(B.e.au(q)) +if(p!=null)o.AJ(m,p,r) +q=r.buttons +if(q==null)q=null +q.toString +o.AJ(m,n.afh(B.e.au(q)),r)}o.Ef(a,m)}, +$S:100} +A.c9Q.prototype={ +$1(a){var s,r=this.a,q=r.a2K(r.Ey(a)),p=A.a([],t.D9),o=A.a22(a) +o.toString +s=q.aJD(B.e.au(o)) +if(s!=null){r.AJ(p,s,a) +r.Ef(a,p)}}, +$S:100} +A.c9R.prototype={ +$1(a){var s,r,q,p=this.a,o=p.Ey(a),n=p.e +if(n.aB(0,o)){s=A.a([],t.D9) +n=n.i(0,o) +n.toString +r=A.a22(a) +q=n.aJE(r==null?null:B.e.au(r)) +p.aqH(a) +if(q!=null){p.AJ(s,q,a) +p.Ef(a,s)}}}, +$S:100} +A.c9S.prototype={ +$1(a){var s,r=this.a,q=r.Ey(a),p=r.e +if(p.aB(0,q)){s=A.a([],t.D9) +p=p.i(0,q) +p.toString +p.a=0 +r.aqH(a) +r.AJ(s,new A.xq(B.Wu,0),a) +r.Ef(a,s)}}, +$S:100} +A.c9T.prototype={ +$1(a){var s=this.a +s.Ef(a,s.aZ7(a)) +a.preventDefault()}, +$S:6} +A.Ya.prototype={} +A.c15.prototype={ +Wk(a,b,c){return this.a.cP(0,a,new A.c16(b,c))}} +A.c16.prototype={ +$0(){return new A.Ya(this.a,this.b)}, +$S:597} +A.bxV.prototype={ +AO(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,a9){var s,r,q=$.xG().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.cKX(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,a9)}, +a4i(a,b,c){var s=$.xG().a.i(0,a) +s.toString +return s.b!==b||s.c!==c}, +y9(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=$.xG().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.cKX(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.pB,a5,!0,a6,a7,a8)}, +a8r(a,b,c,d,e,f,g,h,i,j,k,l,m,n,a0,a1){var s,r,q,p,o=this +if(m===B.pB)switch(c.a){case 1:$.xG().Wk(d,f,g) +a.push(o.AO(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,a0,a1)) +break +case 3:s=$.xG() +r=s.a.aB(0,d) +s.Wk(d,f,g) +if(!r)a.push(o.y9(b,B.wS,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +a.push(o.AO(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,a0,a1)) +s.b=b +break +case 4:s=$.xG() +r=s.a.aB(0,d) +s.Wk(d,f,g).a=$.cOL=$.cOL+1 +if(!r)a.push(o.y9(b,B.wS,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +if(o.a4i(d,f,g))a.push(o.y9(0,B.i2,d,0,0,e,!1,0,f,g,0,0,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +a.push(o.AO(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,a0,a1)) +s.b=b +break +case 5:a.push(o.AO(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,a0,a1)) +$.xG().b=b +break +case 6:case 0:s=$.xG() +q=s.a +p=q.i(0,d) +p.toString +if(c===B.Wu){f=p.b +g=p.c}if(o.a4i(d,f,g))a.push(o.y9(s.b,B.pA,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +a.push(o.AO(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,a0,a1)) +if(e===B.bi){a.push(o.y9(0,B.bhW,d,0,0,e,!1,0,f,g,0,0,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +q.F(0,d)}break +case 2:s=$.xG().a +q=s.i(0,d) +q.toString +a.push(o.AO(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,a0,a1)) +s.F(0,d) +break +case 7:case 8:case 9:break}else switch(m.a){case 1:case 2:case 3:s=$.xG() +r=s.a.aB(0,d) +s.Wk(d,f,g) +if(!r)a.push(o.y9(b,B.wS,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +if(o.a4i(d,f,g))if(b!==0)a.push(o.y9(b,B.pA,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +else a.push(o.y9(b,B.i2,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,a0,a1)) +a.push(o.AO(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,a0,a1)) +break +case 0:break +case 4:break}}, +brd(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.a8r(a,b,c,d,e,f,g,h,i,j,0,0,k,0,l,m)}, +brf(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return this.a8r(a,b,c,d,e,f,g,h,i,1,j,k,l,0,m,n)}, +bre(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.a8r(a,b,c,d,e,f,g,h,i,1,0,0,j,k,l,m)}} +A.cyA.prototype={} +A.bzz.prototype={ +aV4(a){$.Bx.push(new A.bzA(this))}, +m(){var s,r +for(s=this.a,r=A.jL(s,s.r,A.z(s).c);r.t();)s.i(0,r.d).ao(0) +s.V(0) +$.aCt=null}, +aAe(a){var s,r,q,p,o,n,m=this,l="getModifierState",k=globalThis.KeyboardEvent +if(!(k!=null&&a instanceof k))return +s=new A.w_(a) +r=A.Im(a) +r.toString +if(a.type==="keydown"&&A.vJ(a)==="Tab"&&a.isComposing)return +q=A.vJ(a) +q.toString +if(!(q==="Meta"||q==="Shift"||q==="Alt"||q==="Control")&&m.c){q=m.a +p=q.i(0,r) +if(p!=null)p.ao(0) +if(a.type==="keydown")p=a.ctrlKey||a.shiftKey||a.altKey||a.metaKey +else p=!1 +if(p)q.n(0,r,A.d3(B.u0,new A.bzC(m,r,s))) +else q.F(0,r)}o=A.L(a,l,["Shift"])?1:0 +if(A.L(a,l,["Alt"])||A.L(a,l,["AltGraph"]))o|=2 +if(A.L(a,l,["Control"]))o|=4 +if(A.L(a,l,["Meta"]))o|=8 +m.b=o +if(a.type==="keydown")if(A.vJ(a)==="CapsLock"){r=o|32 +m.b=r}else if(A.Im(a)==="NumLock"){r=o|16 +m.b=r}else if(A.vJ(a)==="ScrollLock"){r=o|64 +m.b=r}else{if(A.vJ(a)==="Meta"){r=$.ja() +r=r===B.wH}else r=!1 +if(r){r=o|8 +m.b=r}else r=o}else r=o +n=A.a1(["type",a.type,"keymap","web","code",A.Im(a),"key",A.vJ(a),"location",B.e.au(a.location),"metaState",r,"keyCode",B.e.au(a.keyCode)],t.N,t.z) +$.cf().rI("flutter/keyevent",B.bb.h8(n),new A.bzD(s))}} +A.bzA.prototype={ +$0(){this.a.m()}, +$S:0} +A.bzC.prototype={ +$0(){var s,r,q=this.a +q.a.F(0,this.b) +s=this.c.a +r=A.a1(["type","keyup","keymap","web","code",A.Im(s),"key",A.vJ(s),"location",B.e.au(s.location),"metaState",q.b,"keyCode",B.e.au(s.keyCode)],t.N,t.z) +$.cf().rI("flutter/keyevent",B.bb.h8(r),A.dli())}, +$S:0} +A.bzD.prototype={ +$1(a){var s +if(a==null)return +if(A.j2(J.aS(t.a.a(B.bb.nK(a)),"handled"))){s=this.a.a +s.preventDefault() +s.stopPropagation()}}, +$S:63} +A.auO.prototype={} +A.auN.prototype={ +a9P(a,b,c,d){var s=this.dy,r=this.fr,q=this.fx +A.L(b,"drawImage",[s,0,0,r,q,c,d,r,q])}, +Vn(a,b){var s,r,q,p,o,n=this,m="attachShader",l=a+"||"+b,k=J.aS($.bkp.I(),l) +if(k==null){s=n.ax6(0,"VERTEX_SHADER",a) +r=n.ax6(0,"FRAGMENT_SHADER",b) +q=n.a +p=q.createProgram() +A.L(q,m,[p,s]) +A.L(q,m,[p,r]) +A.L(q,"linkProgram",[p]) +o=n.ay +if(!A.L(q,"getProgramParameter",[p,o==null?n.ay=q.LINK_STATUS:o]))A.C(A.dA(A.L(q,"getProgramInfoLog",[p]))) +k=new A.auO(p) +J.id($.bkp.I(),l,k)}return k}, +ax6(a,b,c){var s,r=this.a,q=r.createShader(r[b]) +if(q==null)throw A.d(A.dA(A.dkl(r,"getError"))) +A.L(r,"shaderSource",[q,c]) +A.L(r,"compileShader",[q]) +s=this.c +if(!A.L(r,"getShaderParameter",[q,s==null?this.c=r.COMPILE_STATUS:s]))throw A.d(A.dA("Shader compilation failed: "+A.r(A.L(r,"getShaderInfoLog",[q])))) +return q}, +aFl(a,b,c,d,e,f,g){A.L(this.a,"texImage2D",[b,c,d,e,f,g])}, +ayT(a,b){A.L(this.a,"drawArrays",[this.bkk(b),0,a])}, +bkk(a){var s,r=this +switch(a.a){case 0:return r.gabA() +case 2:s=r.ax +return s==null?r.ax=r.a.TRIANGLE_FAN:s +case 1:s=r.ax +return s==null?r.ax=r.a.TRIANGLE_STRIP:s}}, +gpt(){var s=this.d +return s==null?this.d=this.a.ARRAY_BUFFER:s}, +gCy(){var s=this.e +return s==null?this.e=this.a.ELEMENT_ARRAY_BUFFER:s}, +gabz(){var s=this.r +return s==null?this.r=this.a.FLOAT:s}, +gXK(){var s=this.cx +return s==null?this.cx=this.a.RGBA:s}, +gXN(){var s=this.ch +return s==null?this.ch=this.a.UNSIGNED_BYTE:s}, +gaBI(){var s=this.CW +return s==null?this.CW=this.a.UNSIGNED_SHORT:s}, +gCz(){var s=this.f +return s==null?this.f=this.a.STATIC_DRAW:s}, +gabA(){var s=this.ax +return s==null?this.ax=this.a.TRIANGLES:s}, +gaby(){var s=this.w +return s==null?this.w=this.a.COLOR_BUFFER_BIT:s}, +gn9(){var s=this.x +return s==null?this.x=this.a.TEXTURE_2D:s}, +gaBG(){var s=this.dx +return s==null?this.dx=this.a.TEXTURE0:s}, +gXL(){var s=this.y +return s==null?this.y=this.a.TEXTURE_WRAP_S:s}, +gXM(){var s=this.z +return s==null?this.z=this.a.TEXTURE_WRAP_T:s}, +gGV(){var s=this.as +return s==null?this.as=this.a.CLAMP_TO_EDGE:s}, +gaBF(){var s=this.cy +return s==null?this.cy=this.a.LINEAR:s}, +gaBH(){var s=this.db +return s==null?this.db=this.a.TEXTURE_MIN_FILTER:s}, +nZ(a,b,c){var s=A.L(this.a,"getUniformLocation",[b,c]) +if(s==null)throw A.d(A.dA(c+" not found")) +else return s}, +a_r(a,b){var s=A.L(this.a,"getAttribLocation",[a,b]) +if(s==null)throw A.d(A.dA(b+" not found")) +else return s}, +aEi(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.BA(q.fx,s) +s=A.o3(r,"2d",null) +s.toString +q.a9P(0,t.e.a(s),0,0) +return r}}} +A.bv5.prototype={ +ats(a){var s,r,q,p,o=this.c +$.ec() +s=self.window.devicePixelRatio +if(s===0)s=1 +r=this.d +q=self.window.devicePixelRatio +if(q===0)q=1 +p=a.style +A.a6(p,"position","absolute") +A.a6(p,"width",A.r(o/s)+"px") +A.a6(p,"height",A.r(r/q)+"px")}} +A.a_g.prototype={ +H(){return"Assertiveness."+this.b}} +A.b35.prototype={ +bmV(a){switch(a.a){case 0:return this.a +case 1:return this.b}}, +avl(a,b){var s=this.bmV(b),r=A.d0(self.document,"div") +A.cHq(r,a) +s.append(r) +A.d3(B.aA,new A.b36(r))}} +A.b36.prototype={ +$0(){return this.a.remove()}, +$S:0} +A.adm.prototype={ +H(){return"_CheckableKind."+this.b}} +A.b93.prototype={ +ll(a){var s,r,q,p=this,o="setAttribute",n="true",m="removeAttribute" +p.vl(0) +s=p.c +if((s.k2&1)!==0){switch(p.r.a){case 0:r=p.a +r===$&&A.b() +q=A.bH("checkbox") +A.L(r,o,["role",q==null?t.K.a(q):q]) +break +case 1:r=p.a +r===$&&A.b() +q=A.bH("radio") +A.L(r,o,["role",q==null?t.K.a(q):q]) +break +case 2:r=p.a +r===$&&A.b() +q=A.bH("switch") +A.L(r,o,["role",q==null?t.K.a(q):q]) +break}r=s.a9U() +q=p.a +if(r===B.nl){q===$&&A.b() +r=A.bH(n) +A.L(q,o,["aria-disabled",r==null?t.K.a(r):r]) +r=A.bH(n) +A.L(q,o,["disabled",r==null?t.K.a(r):r])}else{q===$&&A.b() +A.L(q,m,["aria-disabled"]) +A.L(q,m,["disabled"])}s=s.a +s=(s&2)!==0||(s&131072)!==0?n:"false" +r=p.a +r===$&&A.b() +s=A.bH(s) +A.L(r,o,["aria-checked",s==null?t.K.a(s):s])}}, +m(){var s,r="removeAttribute" +this.Jc() +s=this.a +s===$&&A.b() +A.L(s,r,["aria-disabled"]) +A.L(s,r,["disabled"])}, +uu(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +s.focus() +s=!0}return s===!0}} +A.asG.prototype={ +aUz(a){var s=this,r=s.c,q=A.cwW(r,s) +s.e=q +s.of(q) +s.of(new A.K6(B.pQ,r,s)) +a.k1.r.push(new A.bd0(s,a))}, +bhH(){this.c.a6U(new A.bd_())}, +ll(a){var s,r,q,p="setAttribute" +this.vl(0) +s=this.c +if((s.a&4096)!==0){r=s.z +s=r==null?"":r +q=this.a +q===$&&A.b() +s=A.bH(s) +A.L(q,p,["aria-label",s==null?t.K.a(s):s]) +s=A.bH("dialog") +A.L(q,p,["role",s==null?t.K.a(s):s])}}, +ayu(a){var s,r,q="setAttribute" +if((this.c.a&4096)!==0)return +s=this.a +s===$&&A.b() +r=A.bH("dialog") +A.L(s,q,["role",r==null?t.K.a(r):r]) +r=a.b.p1.a +r===$&&A.b() +r=A.bH(r.id) +A.L(s,q,["aria-describedby",r==null?t.K.a(r):r])}, +uu(){return!1}} +A.bd0.prototype={ +$0(){if(this.b.k1.w)return +this.a.bhH()}, +$S:0} +A.bd_.prototype={ +$1(a){var s=a.p1 +if(s==null)return!0 +return!s.uu()}, +$S:359} +A.Uu.prototype={ +ll(a){var s,r=this,q=r.b +if((q.a&4096)===0)return +if((q.k2&1024)!==0){s=r.e +if(s!=null)s.ayu(r) +else q.k1.r.push(new A.bCD(r))}}, +b98(){var s,r,q=this.b.k4 +while(!0){s=q!=null +if(s){r=q.p1 +r=(r==null?null:r.b)!==B.pC}else r=!1 +if(!r)break +q=q.k4}if(s){s=q.p1 +s=(s==null?null:s.b)===B.pC}else s=!1 +if(s){s=q.p1 +s.toString +this.e=t.JX.a(s)}}} +A.bCD.prototype={ +$0(){var s,r=this.a +if(!r.d){r.b98() +s=r.e +if(s!=null)s.ayu(r)}}, +$S:0} +A.auh.prototype={ +ll(a){var s,r,q=this,p=q.b +if((p.a&2097152)!==0){s=q.e +if(s.b==null){r=q.c.a +r===$&&A.b() +s.aC2(p.id,r)}p=p.a +if((p&32)!==0)p=(p&64)===0||(p&128)!==0 +else p=!1 +s.awK(p)}else q.e.a0A()}} +A.amF.prototype={ +aC2(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.ahd([o[0],r,s,a]) +return}if(!o)q.a0A() +o=t.g +s=o.a(A.cQ(new A.b38(q))) +s=[o.a(A.cQ(new A.b39(q))),s,b,a] +q.b=new A.ahd(s) +A.cHe(b,0) +A.fS(b,"focus",s[1],null) +A.fS(b,"blur",s[0],null)}, +a0A(){var s,r=this.b +this.c=this.b=null +if(r==null)return +s=r.a +A.lv(s[2],"focus",s[1],null) +A.lv(s[2],"blur",s[0],null)}, +arL(a){var s,r,q=this.b +if(q==null)return +s=$.cf() +r=q.a[3] +s.qs(r,a?B.xb:B.xc,null)}, +awK(a){var s,r=this,q=r.b +if(q==null){r.c=null +return}if(a===r.c)return +r.c=a +if(a){s=r.a +s.w=!0}else return +s.r.push(new A.b37(r,q))}} +A.b38.prototype={ +$1(a){return this.a.arL(!0)}, +$S:6} +A.b39.prototype={ +$1(a){return this.a.arL(!1)}, +$S:6} +A.b37.prototype={ +$0(){var s=this.b +if(!J.q(this.a.b,s))return +s.a[2].focus()}, +$S:0} +A.bmZ.prototype={ +uu(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +s.focus() +s=!0}return s===!0}, +ll(a){var s,r,q,p=this,o="setAttribute" +p.vl(0) +s=p.c +if(s.gabt()){r=s.dy +r=r!=null&&!B.jw.gad(r)}else r=!1 +if(r){if(p.r==null){p.r=A.d0(self.document,"flt-semantics-img") +r=s.dy +if(r!=null&&!B.jw.gad(r)){r=p.r.style +A.a6(r,"position","absolute") +A.a6(r,"top","0") +A.a6(r,"left","0") +q=s.y +A.a6(r,"width",A.r(q.c-q.a)+"px") +s=s.y +A.a6(r,"height",A.r(s.d-s.b)+"px")}A.a6(p.r.style,"font-size","6px") +s=p.r +s.toString +r=p.a +r===$&&A.b() +r.append(s)}s=p.r +s.toString +r=A.bH("img") +A.L(s,o,["role",r==null?t.K.a(r):r]) +p.arO(p.r)}else if(s.gabt()){s=p.a +s===$&&A.b() +r=A.bH("img") +A.L(s,o,["role",r==null?t.K.a(r):r]) +p.arO(s) +p.a1X()}else{p.a1X() +s=p.a +s===$&&A.b() +A.L(s,"removeAttribute",["aria-label"])}}, +arO(a){var s=this.c.z +if(s!=null&&s.length!==0){a.toString +s.toString +s=A.bH(s) +A.L(a,"setAttribute",["aria-label",s==null?t.K.a(s):s])}}, +a1X(){var s=this.r +if(s!=null){s.remove() +this.r=null}}, +m(){this.Jc() +this.a1X() +var s=this.a +s===$&&A.b() +A.L(s,"removeAttribute",["aria-label"])}} +A.bnk.prototype={ +aUP(a){var s,r,q=this,p=q.c +q.of(new A.K6(B.pQ,p,q)) +q.of(new A.Uu(B.x6,p,q)) +q.of(new A.a4O(B.X5,p,q)) +p=q.r +s=q.a +s===$&&A.b() +s.append(p) +A.bdQ(p,"range") +s=A.bH("slider") +A.L(p,"setAttribute",["role",s==null?t.K.a(s):s]) +A.fS(p,"change",t.g.a(A.cQ(new A.bnl(q,a))),null) +s=new A.bnm(q) +q.y!==$&&A.ck() +q.y=s +r=$.eD;(r==null?$.eD=A.kU():r).r.push(s) +q.w.aC2(a.id,p)}, +uu(){this.r.focus() +return!0}, +ll(a){var s,r=this +r.vl(0) +s=$.eD +switch((s==null?$.eD=A.kU():s).e.a){case 1:r.b0r() +r.bkI() +break +case 0:r.akL() +break}r.w.awK((r.c.a&32)!==0)}, +b0r(){var s=this.r,r=A.cwv(s) +r.toString +if(!r)return +A.cHi(s,!1)}, +bkI(){var s,r,q,p,o,n,m,l=this,k="setAttribute" +if(!l.z){s=l.c.k2 +r=(s&4096)!==0||(s&8192)!==0||(s&16384)!==0}else r=!0 +if(!r)return +l.z=!1 +q=""+l.x +s=l.r +A.cHj(s,q) +p=A.bH(q) +A.L(s,k,["aria-valuenow",p==null?t.K.a(p):p]) +p=l.c +o=p.ax +o.toString +o=A.bH(o) +A.L(s,k,["aria-valuetext",o==null?t.K.a(o):o]) +n=p.ch.length!==0?""+(l.x+1):q +s.max=n +o=A.bH(n) +A.L(s,k,["aria-valuemax",o==null?t.K.a(o):o]) +m=p.cx.length!==0?""+(l.x-1):q +s.min=m +p=A.bH(m) +A.L(s,k,["aria-valuemin",p==null?t.K.a(p):p])}, +akL(){var s=this.r,r=A.cwv(s) +r.toString +if(r)return +A.cHi(s,!0)}, +m(){var s,r,q=this +q.Jc() +q.w.a0A() +s=$.eD +if(s==null)s=$.eD=A.kU() +r=q.y +r===$&&A.b() +B.b.F(s.r,r) +q.akL() +q.r.remove()}} +A.bnl.prototype={ +$1(a){var s,r=this.a,q=r.r,p=A.cwv(q) +p.toString +if(p)return +r.z=!0 +q=A.cww(q) +q.toString +s=A.cA(q,null) +q=r.x +if(s>q){r.x=q+1 +$.cf().qs(this.b.id,B.Xq,null)}else if(sr){s=q.b +s.toString +if((s&32)!==0||(s&16)!==0)$.cf().qs(p,B.lM,n) +else $.cf().qs(p,B.lO,n)}else{s=q.b +s.toString +if((s&32)!==0||(s&16)!==0)$.cf().qs(p,B.lN,n) +else $.cf().qs(p,B.lP,n)}}}, +ll(a){var s,r,q,p=this +p.vl(0) +p.c.k1.r.push(new A.bE0(p)) +if(p.x==null){s=p.a +s===$&&A.b() +A.a6(s.style,"touch-action","none") +p.alV() +r=new A.bE1(p) +p.r=r +q=$.eD;(q==null?$.eD=A.kU():q).r.push(r) +r=t.g.a(A.cQ(new A.bE2(p))) +p.x=r +A.fS(s,"scroll",r,null)}}, +gakZ(){var s,r=this.c.b +r.toString +r=(r&32)!==0||(r&16)!==0 +s=this.a +if(r){s===$&&A.b() +return B.e.au(s.scrollTop)}else{s===$&&A.b() +return B.e.au(s.scrollLeft)}}, +ap4(){var s,r,q,p,o=this,n="transform",m=o.c,l=m.y +if(l==null){$.k6().$1("Warning! the rect attribute of semanticsObject is null") +return}s=m.b +s.toString +s=(s&32)!==0||(s&16)!==0 +r=o.w +q=l.d-l.b +p=l.c-l.a +if(s){s=B.e.dO(q) +r=r.style +A.a6(r,n,"translate(0px,"+(s+10)+"px)") +A.a6(r,"width",""+B.e.aF(p)+"px") +A.a6(r,"height","10px") +r=o.a +r===$&&A.b() +r.scrollTop=10 +m.p2=o.y=B.e.au(r.scrollTop) +m.p3=0}else{s=B.e.dO(p) +r=r.style +A.a6(r,n,"translate("+(s+10)+"px,0px)") +A.a6(r,"width","10px") +A.a6(r,"height",""+B.e.aF(q)+"px") +q=o.a +q===$&&A.b() +q.scrollLeft=10 +q=B.e.au(q.scrollLeft) +o.y=q +m.p2=0 +m.p3=q}}, +alV(){var s,r=this,q="overflow-y",p="overflow-x",o=$.eD +switch((o==null?$.eD=A.kU():o).e.a){case 1:o=r.c.b +o.toString +o=(o&32)!==0||(o&16)!==0 +s=r.a +if(o){s===$&&A.b() +A.a6(s.style,q,"scroll")}else{s===$&&A.b() +A.a6(s.style,p,"scroll")}break +case 0:o=r.c.b +o.toString +o=(o&32)!==0||(o&16)!==0 +s=r.a +if(o){s===$&&A.b() +A.a6(s.style,q,"hidden")}else{s===$&&A.b() +A.a6(s.style,p,"hidden")}break}}, +m(){var s,r,q,p=this,o="removeProperty" +p.Jc() +s=p.a +s===$&&A.b() +r=s.style +A.L(r,o,["overflowY"]) +A.L(r,o,["overflowX"]) +A.L(r,o,["touch-action"]) +q=p.x +if(q!=null){A.lv(s,"scroll",q,null) +p.x=null}s=p.r +if(s!=null){q=$.eD +B.b.F((q==null?$.eD=A.kU():q).r,s) +p.r=null}}, +uu(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +s.focus() +s=!0}return s===!0}} +A.bE0.prototype={ +$0(){var s=this.a +s.ap4() +s.c.ad8()}, +$S:0} +A.bE1.prototype={ +$1(a){this.a.alV()}, +$S:390} +A.bE2.prototype={ +$1(a){this.a.bfi()}, +$S:6} +A.a2C.prototype={ +k(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.r(s)}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.a2C&&b.a===this.a}, +gv(a){return B.d.gv(this.a)}, +axy(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.a2C((r&64)!==0?s|64:s&4294967231)}, +brD(a){return this.axy(null,a)}, +brn(a){return this.axy(a,null)}} +A.aEn.prototype={$icyU:1} +A.aEm.prototype={} +A.rR.prototype={ +H(){return"PrimaryRole."+this.b}} +A.LK.prototype={ +H(){return"Role."+this.b}} +A.aBW.prototype={ +Ec(a,b){var s=this,r=s.c,q=A.aBX(s.dv(0),r) +s.a!==$&&A.ck() +s.a=q +q=A.cwW(r,s) +s.e=q +s.of(q) +s.of(new A.K6(B.pQ,r,s)) +s.of(new A.Uu(B.x6,r,s)) +s.of(new A.a4O(B.X5,r,s)) +s.of(A.cMH(r,s))}, +dv(a){return A.d0(self.document,"flt-semantics")}, +of(a){var s=this.d;(s==null?this.d=A.a([],t.VM):s).push(a)}, +ll(a){var s,r,q=this.d +if(q==null)return +for(s=q.length,r=0;r1)for(p=0;p=0;--p,a1=s){g=l[p] +s=g.id +if(!B.b.p(a0,s)){k=g.p1 +if(a1==null){m.toString +k=k.a +k===$&&A.b() +m.append(k)}else{m.toString +k=k.a +k===$&&A.b() +m.insertBefore(k,a1)}g.k4=a2 +q.e.n(0,s,a2)}s=g.p1.a +s===$&&A.b()}a2.ok=l}, +b2t(){var s,r,q=this +if(q.go!==-1)return B.wX +else if((q.a&16)!==0)return B.WA +else{s=q.b +s.toString +if((s&64)!==0||(s&128)!==0)return B.Wz +else if(q.gabt())return B.WB +else{s=q.a +if((s&1)!==0||(s&65536)!==0)return B.wW +else if((s&8)!==0)return B.wV +else{r=q.b +r.toString +if((r&32)!==0||(r&16)!==0||(r&4)!==0||(r&8)!==0)return B.wU +else if((s&2048)!==0)return B.pC +else if((s&4194304)!==0)return B.wZ +else return B.wY}}}}, +aZw(a){var s,r,q,p=this +switch(a.a){case 3:s=new A.bKM(B.WA,p) +r=A.aBX(s.dv(0),p) +s.a!==$&&A.ck() +s.a=r +s.bhT() +break +case 1:s=A.d0(self.document,"flt-semantics-scroll-overflow") +r=new A.bDU(s,B.wU,p) +r.Ec(B.wU,p) +q=s.style +A.a6(q,"position","absolute") +A.a6(q,"transform-origin","0 0 0") +A.a6(q,"pointer-events","none") +q=r.a +q===$&&A.b() +q.append(s) +s=r +break +case 0:s=A.d8k(p) +break +case 2:s=new A.b7n(B.wV,p) +s.Ec(B.wV,p) +r=s.a +r===$&&A.b() +q=A.bH("button") +A.L(r,"setAttribute",["role",q==null?t.K.a(q):q]) +break +case 4:s=new A.b93(A.dkq(p),B.wW,p) +s.Ec(B.wW,p) +break +case 6:s=A.d4s(p) +break +case 5:s=new A.bmZ(B.WB,p) +r=A.aBX(s.dv(0),p) +s.a!==$&&A.ck() +s.a=r +r=A.cwW(p,s) +s.e=r +s.of(r) +s.of(new A.K6(B.pQ,p,s)) +s.of(new A.Uu(B.x6,p,s)) +s.of(A.cMH(p,s)) +break +case 7:s=new A.bxD(B.wX,p) +s.Ec(B.wX,p) +break +case 9:s=new A.boX(B.wZ,p) +s.Ec(B.wZ,p) +break +case 8:s=new A.bjZ(B.wY,p) +s.Ec(B.wY,p) +break +default:s=null}return s}, +bkR(){var s,r,q,p=this,o=p.p1,n=p.b2t(),m=p.p1 +if(m==null)s=null +else{m=m.a +m===$&&A.b() +s=m}if(o!=null)if(o.b===n){o.ll(0) +return}else{o.m() +o=p.p1=null}if(o==null){o=p.aZw(n) +p.p1=o +o.ll(0)}m=p.p1.a +m===$&&A.b() +if(!J.q(s,m)){r=p.k3 +if(r!=null){m=p.p1.a +m===$&&A.b() +m.append(r)}q=s==null?null:s.parentElement +if(q!=null){m=p.p1.a +m===$&&A.b() +q.insertBefore(m,s) +s.remove()}}}, +ad8(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.p1.a +f===$&&A.b() +f=f.style +s=g.y +A.a6(f,"width",A.r(s.c-s.a)+"px") +s=g.y +A.a6(f,"height",A.r(s.d-s.b)+"px") +f=g.dy +r=f!=null&&!B.jw.gad(f)?g.aeS():null +f=g.y +q=f.b===0&&f.a===0 +p=g.dx +f=p==null +o=f||A.cu3(p)===B.Zt +if(q&&o&&g.p2===0&&g.p3===0){f=g.p1.a +f===$&&A.b() +A.bFb(f) +if(r!=null)A.bFb(r) +return}n=A.aF("effectiveTransform") +if(!q)if(f){f=g.y +m=f.a +l=f.b +f=A.hY() +f.tl(m,l,0) +n.b=f +k=m===0&&l===0}else{f=new A.dX(new Float32Array(16)) +f.T(new A.dX(p)) +s=g.y +f.ba(0,s.a,s.b) +n.b=f +k=J.d16(n.aX())}else if(!o){n.b=new A.dX(p) +k=!1}else k=!0 +f=g.p1 +if(!k){f=f.a +f===$&&A.b() +f=f.style +A.a6(f,"transform-origin","0 0 0") +A.a6(f,"transform",A.pP(n.aX().a))}else{f=f.a +f===$&&A.b() +A.bFb(f)}if(r!=null)if(!q||g.p2!==0||g.p3!==0){f=g.y +s=f.a +j=g.p3 +f=f.b +i=g.p2 +h=r.style +A.a6(h,"top",A.r(-f+i)+"px") +A.a6(h,"left",A.r(-s+j)+"px")}else A.bFb(r)}, +a6U(a){var s,r,q,p +if(!a.$1(this))return!1 +s=this.dy +if(s==null)return!0 +for(r=s.length,q=this.k1.d,p=0;p>>0}p=o.cy +if(n.ax!==p){n.ax=p +n.k2=(n.k2|4096)>>>0}p=o.db +if(n.ay!==p){n.ay=p +n.k2=(n.k2|4096)>>>0}p=o.ay +if(n.z!==p){n.z=p +n.k2=(n.k2|1024)>>>0}p=o.ch +if(n.Q!==p){n.Q=p +n.k2=(n.k2|1024)>>>0}p=o.at +if(!J.q(n.y,p)){n.y=p +n.k2=(n.k2|512)>>>0}p=o.id +if(n.dx!==p){n.dx=p +n.k2=(n.k2|65536)>>>0}p=o.z +if(n.r!==p){n.r=p +n.k2=(n.k2|64)>>>0}p=o.c +if(n.b!==p){n.b=p +n.k2=(n.k2|2)>>>0}p=o.f +if(n.c!==p){n.c=p +n.k2=(n.k2|4)>>>0}p=o.r +if(n.d!==p){n.d=p +n.k2=(n.k2|8)>>>0}p=o.x +if(n.e!==p){n.e=p +n.k2=(n.k2|16)>>>0}p=o.y +if(n.f!==p){n.f=p +n.k2=(n.k2|32)>>>0}p=o.Q +if(n.w!==p){n.w=p +n.k2=(n.k2|128)>>>0}p=o.as +if(n.x!==p){n.x=p +n.k2=(n.k2|256)>>>0}p=o.CW +if(n.as!==p){n.as=p +n.k2=(n.k2|2048)>>>0}p=o.cx +if(n.at!==p){n.at=p +n.k2=(n.k2|2048)>>>0}p=o.dx +if(n.ch!==p){n.ch=p +n.k2=(n.k2|8192)>>>0}p=o.dy +if(n.CW!==p){n.CW=p +n.k2=(n.k2|8192)>>>0}p=o.fr +if(n.cx!==p){n.cx=p +n.k2=(n.k2|16384)>>>0}p=o.fx +if(n.cy!==p){n.cy=p +n.k2=(n.k2|16384)>>>0}p=o.fy +if(n.fy!==p){n.fy=p +n.k2=(n.k2|4194304)>>>0}p=o.go +if(n.db!=p){n.db=p +n.k2=(n.k2|32768)>>>0}p=o.k2 +if(n.fr!==p){n.fr=p +n.k2=(n.k2|1048576)>>>0}p=o.k1 +if(n.dy!==p){n.dy=p +n.k2=(n.k2|524288)>>>0}p=o.k3 +if(n.fx!==p){n.fx=p +n.k2=(n.k2|2097152)>>>0}p=o.w +if(n.go!==p){n.go=p +n.k2=(n.k2|8388608)>>>0}n.bkR() +p=n.k2 +if((p&512)!==0||(p&65536)!==0||(p&64)!==0)n.ad8() +p=n.dy +p=!(p!=null&&!B.jw.gad(p))&&n.go===-1 +m=n.p1 +if(p){p=m.a +p===$&&A.b() +p=p.style +p.setProperty.apply(p,["pointer-events","all",""])}else{p=m.a +p===$&&A.b() +p=p.style +p.setProperty.apply(p,["pointer-events","none",""])}}for(q=0;q"),n=A.R(new A.bR(p,o),!0,o.h("B.E")),m=n.length +for(s=0;s=20)return i.d=!0 +if(!B.blh.p(0,a.type))return!0 +if(i.a!=null)return!1 +r=A.aF("activationPoint") +switch(a.type){case"click":r.se9(new A.a23(a.offsetX,a.offsetY)) +break +case"touchstart":case"touchend":s=t.A1 +s=A.fw(new A.aei(a.changedTouches,s),s.h("B.E"),t.e) +s=A.z(s).y[1].a(J.jD(s.a)) +r.se9(new A.a23(s.clientX,s.clientY)) +break +case"pointerdown":case"pointerup":r.se9(new A.a23(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.aX().a-(s+(p-o)/2) +j=r.aX().b-(n+(m-l)/2) +if(k*k+j*j<1&&!0){i.d=!0 +i.a=A.d3(B.aA,new A.btk(i)) +return!1}return!0}, +aDl(){var s,r="setAttribute",q=this.b=A.d0(self.document,"flt-semantics-placeholder") +A.fS(q,"click",t.g.a(A.cQ(new A.btj(this))),!0) +s=A.bH("button") +A.L(q,r,["role",s==null?t.K.a(s):s]) +s=A.bH("Enable accessibility") +A.L(q,r,["aria-label",s==null?t.K.a(s):s]) +s=q.style +A.a6(s,"position","absolute") +A.a6(s,"left","0") +A.a6(s,"top","0") +A.a6(s,"right","0") +A.a6(s,"bottom","0") +return q}, +m(){var s=this.b +if(s!=null)s.remove() +this.a=this.b=null}} +A.btk.prototype={ +$0(){this.a.m() +var s=$.eD;(s==null?$.eD=A.kU():s).sa08(!0)}, +$S:0} +A.btj.prototype={ +$1(a){this.a.ZV(a)}, +$S:6} +A.b7n.prototype={ +uu(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +s.focus() +s=!0}return s===!0}, +ll(a){var s,r +this.vl(0) +s=this.c.a9U() +r=this.a +if(s===B.nl){r===$&&A.b() +s=A.bH("true") +A.L(r,"setAttribute",["aria-disabled",s==null?t.K.a(s):s])}else{r===$&&A.b() +A.L(r,"removeAttribute",["aria-disabled"])}}} +A.aFV.prototype={ +aVe(a,b){var s,r=t.g.a(A.cQ(new A.bKD(this,a))) +this.e=r +s=b.a +s===$&&A.b() +A.fS(s,"click",r,null)}, +ll(a){var s,r=this,q=r.f,p=r.b +if(p.a9U()!==B.nl){p=p.b +p.toString +p=(p&1)!==0}else p=!1 +r.f=p +if(q!==p){s=r.c.a +if(p){s===$&&A.b() +p=A.bH("") +A.L(s,"setAttribute",["flt-tappable",p==null?t.K.a(p):p])}else{s===$&&A.b() +A.L(s,"removeAttribute",["flt-tappable"])}}}} +A.bKD.prototype={ +$1(a){$.cCL().bBJ(0,a,this.b.id,this.a.f)}, +$S:6} +A.bFh.prototype={ +a9S(a,b,c,d){this.CW=b +this.x=d +this.y=c}, +blP(a){var s,r,q=this,p=q.ch +if(p===a)return +else if(p!=null)q.ph(0) +q.ch=a +q.c=a.r +q.ast() +p=q.CW +p.toString +s=q.x +s.toString +r=q.y +r.toString +q.aOb(0,p,r,s)}, +ph(a){var s,r,q,p,o=this +if(!o.b)return +o.b=!1 +o.w=o.r=null +for(s=o.z,r=0;r=this.b)throw A.d(A.cxu(b,this,null,null,null)) +return this.a[b]}, +n(a,b,c){if(b>=this.b)throw A.d(A.cxu(b,this,null,null,null)) +this.a[b]=c}, +sA(a,b){var s,r,q,p=this,o=p.b +if(bo){if(o===0)q=new Uint8Array(b) +else q=p.Rx(b) +B.p.cV(q,0,p.b,p.a) +p.a=q}}p.b=b}, +ls(a,b){var s=this,r=s.b +if(r===s.a.length)s.ai1(r) +s.a[s.b++]=b}, +B(a,b){var s=this,r=s.b +if(r===s.a.length)s.ai1(r) +s.a[s.b++]=b}, +UG(a,b,c,d){A.js(c,"start") +if(d!=null&&c>d)throw A.d(A.e9(d,c,null,"end",null)) +this.aVC(b,c,d)}, +L(a,b){return this.UG(0,b,0,null)}, +aVC(a,b,c){var s,r,q,p=this +if(A.z(p).h("x").b(a))c=c==null?J.bn(a):c +if(c!=null){p.b7X(p.b,a,b,c) +return}for(s=J.au(a),r=0;s.t();){q=s.gK(s) +if(r>=b)p.ls(0,q);++r}if(ro.gA(b)||d>o.gA(b))throw A.d(A.a0("Too few elements")) +s=d-c +r=p.b+s +p.b0x(r) +o=p.a +q=a+s +B.p.dS(o,q,p.b+s,o,a) +B.p.dS(p.a,a,q,b,c) +p.b=r}, +eu(a,b,c){var s,r,q=this,p=q.b +if(b>p)throw A.d(A.e9(b,0,p,null,null)) +s=q.a +if(ps)throw A.d(A.e9(c,0,s,null,null)) +s=this.a +if(A.z(this).h("xz").b(d))B.p.dS(s,b,c,d.a,e) +else B.p.dS(s,b,c,d,e)}, +cV(a,b,c,d){return this.dS(0,b,c,d,0)}} +A.aQp.prototype={} +A.aH4.prototype={} +A.rE.prototype={ +k(a){return A.I(this).k(0)+"("+this.a+", "+A.r(this.b)+")"}} +A.bnW.prototype={ +h8(a){return A.fe(B.bo.cD(B.aO.ug(a)).buffer,0,null)}, +nK(a){if(a==null)return a +return B.aO.hF(0,new A.iu(!1).jP(A.dF(a.buffer,0,null),0,null,!0))}} +A.bnY.prototype={ +ru(a){return B.bb.h8(A.a1(["method",a.a,"args",a.b],t.N,t.z))}, +qg(a){var s,r,q,p=null,o=B.bb.nK(a) +if(!t.f.b(o))throw A.d(A.bM("Expected method call Map, got "+A.r(o),p,p)) +s=J.ao(o) +r=s.i(o,"method") +q=s.i(o,"args") +if(typeof r=="string")return new A.rE(r,q) +throw A.d(A.bM("Invalid method call: "+A.r(o),p,p))}} +A.bH3.prototype={ +h8(a){var s=A.czJ() +this.ln(0,s,!0) +return s.yP()}, +nK(a){var s,r +if(a==null)return null +s=new A.aCw(a) +r=this.qz(0,s) +if(s.b=b.a.byteLength)throw A.d(B.dN) +return this.wP(b.tg(0),b)}, +wP(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.z===$.k5()) +b.b+=4 +s=r +break +case 4:s=b.a_C(0) +break +case 5:q=k.ms(b) +s=A.cA(new A.iu(!1).jP(b.xd(q),0,null,!0),16) +break +case 6:b.xC(8) +r=b.a.getFloat64(b.b,B.z===$.k5()) +b.b+=8 +s=r +break +case 7:q=k.ms(b) +s=new A.iu(!1).jP(b.xd(q),0,null,!0) +break +case 8:s=b.xd(k.ms(b)) +break +case 9:q=k.ms(b) +b.xC(4) +p=b.a +o=A.cy7(p.buffer,p.byteOffset+b.b,q) +b.b=b.b+4*q +s=o +break +case 10:s=b.a_D(k.ms(b)) +break +case 11:q=k.ms(b) +b.xC(8) +p=b.a +o=A.cy6(p.buffer,p.byteOffset+b.b,q) +b.b=b.b+8*q +s=o +break +case 12:q=k.ms(b) +s=[] +for(p=b.a,n=0;n=p.byteLength)A.C(B.dN) +b.b=m+1 +s.push(k.wP(p.getUint8(m),b))}break +case 13:q=k.ms(b) +p=t.z +s=A.N(p,p) +for(p=b.a,n=0;n=p.byteLength)A.C(B.dN) +b.b=m+1 +m=k.wP(p.getUint8(m),b) +l=b.b +if(l>=p.byteLength)A.C(B.dN) +b.b=l+1 +s.n(0,m,k.wP(p.getUint8(l),b))}break +default:throw A.d(B.dN)}return s}, +nX(a,b){var s,r,q +if(b<254)a.b.ls(0,b) +else{s=a.b +r=a.c +q=a.d +if(b<=65535){s.ls(0,254) +r.setUint16(0,b,B.z===$.k5()) +s.UG(0,q,0,2)}else{s.ls(0,255) +r.setUint32(0,b,B.z===$.k5()) +s.UG(0,q,0,4)}}}, +ms(a){var s=a.tg(0) +switch(s){case 254:s=a.a.getUint16(a.b,B.z===$.k5()) +a.b+=2 +return s +case 255:s=a.a.getUint32(a.b,B.z===$.k5()) +a.b+=4 +return s +default:return s}}} +A.bH5.prototype={ +$2(a,b){var s=this.a,r=this.b +s.ln(0,r,a) +s.ln(0,r,b)}, +$S:88} +A.bH7.prototype={ +qg(a){var s,r,q +a.toString +s=new A.aCw(a) +r=B.fs.qz(0,s) +q=B.fs.qz(0,s) +if(typeof r=="string"&&s.b>=a.byteLength)return new A.rE(r,q) +else throw A.d(B.Du)}, +MH(a){var s=A.czJ() +s.b.ls(0,0) +B.fs.ln(0,s,a) +return s.yP()}, +C4(a,b,c){var s=A.czJ() +s.b.ls(0,1) +B.fs.ln(0,s,a) +B.fs.ln(0,s,c) +B.fs.ln(0,s,b) +return s.yP()}} +A.bPv.prototype={ +xC(a){var s,r,q=this.b,p=B.d.M(q.b,a) +if(p!==0)for(s=a-p,r=0;r0)b=c +else{$.nI.toString +f=$.ec().d +if(f==null){f=self.window.devicePixelRatio +if(f===0)f=1}b=1/f}f=d==null?a8:A.hR(d.gj(d)) +b0.setProperty.apply(b0,["-webkit-text-stroke",A.r(b)+"px "+A.r(f),""])}else if(d!=null){f=A.hR(d.gj(d)) +b0.setProperty.apply(b0,["color",f,""])}f=g.cy +a=f==null?a8:f.ga6(f) +if(a!=null){f=A.hR(a.a) +b0.setProperty.apply(b0,["background-color",f,""])}a0=g.at +if(a0!=null){f=B.e.ec(a0) +b0.setProperty.apply(b0,["font-size",""+f+"px",""])}f=g.f +if(f!=null){f=A.cBr(f.a) +b0.setProperty.apply(b0,["font-weight",f,""])}f=g.r +if(f!=null){f=f===B.uq?"normal":"italic" +b0.setProperty.apply(b0,["font-style",f,""])}f=A.crn(g.y) +f.toString +b0.setProperty.apply(b0,["font-family",f,""]) +f=g.ax +if(f!=null)b0.setProperty.apply(b0,["letter-spacing",A.r(f)+"px",""]) +f=g.ay +if(f!=null)b0.setProperty.apply(b0,["word-spacing",A.r(f)+"px",""]) +f=g.b +e=f!=null +a1=e&&!0 +a2=g.dx +if(a2!=null){a3=A.dnR(a2) +b0.setProperty.apply(b0,["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.r(A.dkT(e)) +a4=f.length===0?a8:f.charCodeAt(0)==0?f:f +if(a4!=null){f=$.fv() +if(f===B.aQ){f=h.style +f.setProperty.apply(f,["-webkit-text-decoration",a4,""])}else b0.setProperty.apply(b0,["text-decoration",a4,""]) +a5=g.c +if(a5!=null){f=A.hR(a5.gj(a5)) +b0.setProperty.apply(b0,["text-decoration-color",f,""])}}}a6=g.as +if(a6!=null&&a6.length!==0){g=A.dlJ(a6) +b0.setProperty.apply(b0,["font-variation-settings",g,""])}g=j.aFt() +f=g.a +e=g.b +a3=h.style +a3.setProperty.apply(a3,["position","absolute",""]) +a3.setProperty.apply(a3,["top",A.r(e)+"px",""]) +a3.setProperty.apply(a3,["left",A.r(f)+"px",""]) +a3.setProperty.apply(a3,["width",A.r(g.c-f)+"px",""]) +a3.setProperty.apply(a3,["line-height",A.r(g.d-e)+"px",""]) +g=self.document +h.append(g.createTextNode.apply(g,[i])) +a9.append(h)}++q}return a9}, +Pz(){return this.gju().Pz()}, +PA(a,b,c,d){return this.gju().aIr(a,b,c,d)}, +a_t(a,b,c){return this.PA(a,b,c,B.cA)}, +kY(a){return this.gju().kY(a)}, +aez(a){return this.gju().aIw(a)}, +va(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 +return new A.ea(A.cNP(B.bz6,r,s+1),A.cNP(B.bz5,r,s))}, +a_F(a){var s,r,q=this +if(q.gju().y.length===0)return B.aw +s=q.a2S(a.a,0,q.gju().y.length) +r=s!=null?q.gju().y[s]:B.b.gP(q.gju().y) +return new A.ea(r.b,r.c-r.e)}, +BK(){var s=this.gju().y,r=A.X(s).h("O<1,vS>") +return A.R(new A.O(s,new A.b8j(),r),!0,r.h("aa.E"))}, +a2S(a,b,c){var s,r,q,p=this +if(c>b)if(a>=p.gju().y[b].b){s=c=p.gju().y[b].gI7()?null:b +q=B.d.aD(b+c,2) +s=p.a2S(a,q,c) +return s==null?p.a2S(a,b,q):s}, +m(){this.y=!0}} +A.b8j.prototype={ +$1(a){return a.a}, +$S:610} +A.KR.prototype={ +gbN(a){return this.a}, +gdw(a){return this.c}} +A.Ty.prototype={$iKR:1, +gbN(a){return this.f}, +gdw(a){return this.w}} +A.Vq.prototype={ +adp(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0=a.a +if(a0==null){s=a.ga24(a) +r=a.ga2s() +q=a.ga2t() +p=a.ga2u() +o=a.ga2v() +n=a.ga34(a) +m=a.ga32(a) +l=a.ga6c() +k=a.ga2Z(a) +j=a.ga3_() +i=a.ga30() +h=a.ga33() +g=a.ga31(a) +f=a.ga49(a) +e=a.ga6X(a) +d=a.ga1e(a) +c=a.ga47() +b=a.ga4h() +e=a.a=A.cI2(a.ga1C(a),s,r,q,p,o,k,j,i,g,m,h,n,a.gRS(),d,c,f,b,a.ga5U(),l,e) +return e}return a0}} +A.aoQ.prototype={ +ga24(a){var s=this.c.a +if(s==null)if(this.gRS()==null){s=this.b +s=s.ga24(s)}else s=null +return s}, +ga2s(){var s=this.c.b +return s==null?this.b.ga2s():s}, +ga2t(){var s=this.c.c +return s==null?this.b.ga2t():s}, +ga2u(){var s=this.c.d +return s==null?this.b.ga2u():s}, +ga2v(){var s=this.c.e +return s==null?this.b.ga2v():s}, +ga34(a){var s=this.c.f +if(s==null){s=this.b +s=s.ga34(s)}return s}, +ga32(a){var s=this.c.r +if(s==null){s=this.b +s=s.ga32(s)}return s}, +ga6c(){var s=this.c.w +return s==null?this.b.ga6c():s}, +ga3_(){var s=this.c.z +return s==null?this.b.ga3_():s}, +ga30(){var s=this.b.ga30() +return s}, +ga33(){var s=this.c.as +return s==null?this.b.ga33():s}, +ga31(a){var s=this.c.at +if(s==null){s=this.b +s=s.ga31(s)}return s}, +ga49(a){var s=this.c.ax +if(s==null){s=this.b +s=s.ga49(s)}return s}, +ga6X(a){var s=this.c.ay +if(s==null){s=this.b +s=s.ga6X(s)}return s}, +ga1e(a){var s=this.c.ch +if(s==null){s=this.b +s=s.ga1e(s)}return s}, +ga47(){var s=this.c.CW +return s==null?this.b.ga47():s}, +ga4h(){var s=this.c.cx +return s==null?this.b.ga4h():s}, +ga1C(a){var s=this.c.cy +if(s==null){s=this.b +s=s.ga1C(s)}return s}, +gRS(){var s=this.c.db +return s==null?this.b.gRS():s}, +ga5U(){var s=this.c.dx +return s==null?this.b.ga5U():s}, +ga2Z(a){var s=this.c +if(s.x)s=s.y +else{s=this.b +s=s.ga2Z(s)}return s}} +A.aDI.prototype={ +ga24(a){return null}, +ga2s(){return null}, +ga2t(){return null}, +ga2u(){return null}, +ga2v(){return null}, +ga34(a){return this.b.c}, +ga32(a){return this.b.d}, +ga6c(){return null}, +ga2Z(a){var s=this.b.f +return s==null?"sans-serif":s}, +ga3_(){return null}, +ga30(){return null}, +ga33(){return null}, +ga31(a){var s=this.b.r +return s==null?14:s}, +ga49(a){return null}, +ga6X(a){return null}, +ga1e(a){return this.b.w}, +ga47(){return null}, +ga4h(){return this.b.Q}, +ga1C(a){return null}, +gRS(){return null}, +ga5U(){return null}} +A.b8i.prototype={ +ga2p(){var s=this.d,r=s.length +return r===0?this.e:s[r-1]}, +gaDc(){return this.f}, +UR(a,b,c,d,e){var s,r=this,q=r.a,p=q.a,o=p+$.d0w() +q.a=o +s=r.ga2p().adp() +r.atr(s);++r.f +r.r.push(1) +q=e==null?b:e +r.c.push(new A.Ty(s,p.length,o.length,a,b,c,q))}, +av0(a,b,c){return this.UR(a,b,c,null,null)}, +CX(a){this.d.push(new A.aoQ(this.ga2p(),t.Zs.a(a)))}, +fD(){var s=this.d +if(s.length!==0)s.pop()}, +Fk(a){var s,r=this,q=r.a,p=q.a,o=p+a +q.a=o +s=r.ga2p().adp() +r.atr(s) +r.c.push(new A.KR(s,p.length,o.length))}, +atr(a){var s,r,q,p,o=this +if(!o.w)return +s=a.ax +if(s!=null&&s!==0){o.w=!1 +return}r=a.b +if(r!=null){q=r.a +q=B.n.a!==q}else q=!1 +if(q){o.w=!1 +return}p=a.as +if(p!=null&&p.length!==0){o.w=!1 +return}}, +dN(){var s,r=this,q=r.c +if(q.length===0)q.push(new A.KR(r.e.adp(),0,0)) +s=r.a.a +return new A.aoz(q,r.b,s.charCodeAt(0)==0?s:s,r.w)}} +A.blM.prototype={ +wv(a){return this.bA8(a)}, +bA8(a0){var s=0,r=A.p(t.S7),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$wv=A.l(function(a1,a2){if(a1===1)return A.m(a2,r) +while(true)switch(s){case 0:b=A.a([],t.Rh) +for(o=a0.a,n=o.length,m=0;m")) +b.t() +e=A.dkv(e) +d=A.X(e) +s=new J.cP(e,e.length,d.h("cP<1>")) +s.t() +e=this.b +r=A.X(e) +q=new J.cP(e,e.length,r.h("cP<1>")) +q.t() +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.gdw(n))) +j=c-k +i=j===0?p.c:B.af +h=k-m +f.push(A.cxL(m,k,i,o.c,o.d,n,A.GK(p.d-j,0,h),A.GK(p.e-j,0,h))) +if(c===k)if(b.t()){p=b.d +if(p==null)p=e.a(p) +g=!0}else g=!1 +else g=!1 +if(l===k)if(s.t()){o=s.d +if(o==null)o=d.a(o) +g=!0}if(n.gdw(n)===k)if(q.t()){n=q.d +if(n==null)n=r.a(n) +g=!0}if(!g)break}return f}} +A.bV6.prototype={ +gv(a){var s=this +return A.ad(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.rz&&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.rz.prototype={ +gA(a){return this.b-this.a}, +gabr(){return this.b-this.a===this.w}, +gws(){return this.f instanceof A.Ty}, +a_N(a){return B.c.R(a.c,this.a,this.b-this.r)}, +pS(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.cxL(i,b,B.af,m,l,k,q-p,o-n),A.cxL(b,s,j.c,m,l,k,p,n)],t.cN)}, +k(a){var s=this +return B.but.k(0)+"("+s.a+", "+s.b+", "+s.c.k(0)+", "+A.r(s.d)+")"}} +A.c0A.prototype={ +Qm(a,b,c,d,e){var s=this +s.un$=a +s.z2$=b +s.z3$=c +s.z4$=d +s.iZ$=e}} +A.c0B.prototype={ +goy(a){var s,r,q=this,p=q.iP$ +p===$&&A.b() +s=q.rw$ +if(p.y===B.j){s===$&&A.b() +p=s}else{s===$&&A.b() +r=q.iZ$ +r===$&&A.b() +r=p.a.f-(s+(r+q.j_$)) +p=r}return p}, +gzX(a){var s,r=this,q=r.iP$ +q===$&&A.b() +s=r.rw$ +if(q.y===B.j){s===$&&A.b() +q=r.iZ$ +q===$&&A.b() +q=s+(q+r.j_$)}else{s===$&&A.b() +q=q.a.f-s}return q}, +bzG(a){var s,r,q=this,p=q.iP$ +p===$&&A.b() +s=p.f +if(q.b>p.c-s)return +r=q.w +if(r===0)return +q.j_$=(a-p.a.f)/(p.r-s)*r}} +A.c0z.prototype={ +gasE(){var s,r,q,p,o,n,m,l,k=this,j=k.Wy$ +if(j===$){s=k.iP$ +s===$&&A.b() +r=k.goy(0) +q=k.iP$.a +p=k.z2$ +p===$&&A.b() +o=k.gzX(0) +n=k.iP$ +m=k.z3$ +m===$&&A.b() +l=k.d +l.toString +k.Wy$!==$&&A.a_() +j=k.Wy$=new A.kr(s.a.r+r,q.w-p,q.r+o,n.a.w+m,l)}return j}, +aFt(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.iP$ +h===$&&A.b() +if(i.b>h.c-h.f){s=i.d +s.toString +h=h.a.r +if(s===B.j){s=i.goy(0) +r=i.iP$.a +q=i.z2$ +q===$&&A.b() +p=i.gzX(0) +o=i.iZ$ +o===$&&A.b() +n=i.j_$ +m=i.z4$ +m===$&&A.b() +l=i.iP$ +k=i.z3$ +k===$&&A.b() +j=i.d +j.toString +j=new A.kr(h+s,r.w-q,r.r+p-(o+n-m),l.a.w+k,j) +h=j}else{s=i.goy(0) +r=i.iZ$ +r===$&&A.b() +q=i.j_$ +p=i.z4$ +p===$&&A.b() +o=i.iP$.a +n=i.z2$ +n===$&&A.b() +m=i.gzX(0) +l=i.iP$ +k=i.z3$ +k===$&&A.b() +j=i.d +j.toString +j=new A.kr(h+s+(r+q-p),o.w-n,o.r+m,l.a.w+k,j) +h=j}return h}return i.gasE()}, +ZL(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.gasE() +if(r)q=0 +else{r=j.un$ +r===$&&A.b() +r.sBT(j.f) +r=j.un$ +p=$.OF() +o=r.c +q=A.GN(p,r.a.c,s,b,o.gbN(o).ax)}s=j.b-j.r +if(a>=s)n=0 +else{r=j.un$ +r===$&&A.b() +r.sBT(j.f) +r=j.un$ +p=$.OF() +o=r.c +n=A.GN(p,r.a.c,a,s,o.gbN(o).ax)}s=j.d +s.toString +if(s===B.j){m=j.goy(0)+q +l=j.gzX(0)-n}else{m=j.goy(0)+n +l=j.gzX(0)-q}s=j.iP$ +s===$&&A.b() +s=s.a +r=s.r +s=s.w +p=j.z2$ +p===$&&A.b() +o=j.z3$ +o===$&&A.b() +k=j.d +k.toString +return new A.kr(r+m,s-p,r+l,s+o,k)}, +bH4(){return this.ZL(null,null)}, +aJ9(a){var s,r,q,p,o,n,m,l,k,j=this +a=j.b9d(a) +s=j.a +r=j.b-j.r +q=r-s +if(q===0)return new A.cC(s,B.E) +if(q===1){p=j.iZ$ +p===$&&A.b() +return am){n=q+1 +n=p===n?null:new A.dZ(n,p)}else n=new A.dZ(q,p) +return n}, +a3a(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=this,a8=null,a9=a7.iP$ +a9===$&&A.b() +s=a9.gAg() +a9=s[b1] +r=s[b2] +q=a7.ZL(r,a9) +p=b1+1 +if(p===b2)return new A.Jb(new A.W(q.a,q.b,q.c,q.d),new A.ea(a9,r),q.e) +o=q.a +n=q.c +m=n +a9=!0 +l=o +if(!a9)throw A.d(A.a0("Pattern matching error")) +if(lMath.abs(b0-B.e.dV(b0,h,p.c))?j:i}g=q.e +f=b0<=l +$label0$0:{e=B.j===g +a9=e +d=g +if(a9){a9=f +c=a9 +b=c +a=!0 +a0=!0}else{c=a8 +b=c +a=!1 +a0=!1 +a9=!1}if(!a9){a9=d +a1=!0 +a2=B.ae===a9 +a9=a2 +if(a9){if(a0)a9=c +else{a9=f +c=a9 +a0=!0}a3=!1===a9 +a9=a3 +a4=!0}else{a3=a8 +a4=!1 +a9=!1}a5=!0}else{a3=a8 +a2=a3 +a1=!0 +a5=!1 +a4=!1 +a9=!0}if(a9){a9=new A.ea(s[b1],s[p]) +break $label0$0}if(e)if(a4)a9=a3 +else{if(a0)a9=c +else{a9=f +c=a9 +a0=!0}a3=!1===a9 +a9=a3}else a9=!1 +if(!a9){if(a5)a9=a2 +else{a2=B.ae===(a1?d:g) +a9=a2}if(a9)if(a)a9=b +else{b=!0===(a0?c:f) +a9=b}else a9=!1}else a9=!0 +if(a9){a9=new A.ea(s[b2-1],s[b2]) +break $label0$0}a9=a8}r=a9.a +a6=a7.ZL(a9.b,r) +return new A.Jb(new A.W(a6.a,a6.b,a6.c,a6.d),a9,a6.e)}, +aex(a){var s=null,r=this.ga_V(),q=r.a,p=r.b,o=p,n=!0,m=q +if(!n)throw A.d(A.a0("Pattern matching error")) +return this.a3a(a,m,o)}} +A.a2w.prototype={ +gabr(){return!1}, +gws(){return!1}, +a_N(a){var s=a.b.z +s.toString +return s}, +pS(a,b){throw A.d(A.dA("Cannot split an EllipsisFragment"))}} +A.VP.prototype={ +gag3(){var s=this.Q +if(s===$){s!==$&&A.a_() +s=this.Q=new A.aFc(this.a)}return s}, +Ho(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1=a2.a +a0.b=a1 +a0.c=0 +a0.d=null +a0.f=a0.e=0 +a0.x=!1 +s=a0.y +B.b.V(s) +r=a0.a +q=A.cJo(r,a0.gag3(),0,A.a([],t.cN),0,a1) +p=a0.as +if(p===$){p!==$&&A.a_() +p=a0.as=new A.boG(r.a,r.c)}o=p.X3() +B.b.aE(o,a0.gag3().gbAZ()) +$label0$0:for(n=0;nq.c;){if(q.gbpK()){q.byP() +s.push(q.dN()) +a0.x=!0 +break $label0$0}if(q.gbzf())q.bGr() +else q.bwD() +n+=q.bmQ(o,n+1) +s.push(q.dN()) +q=q.aCo()}a1=q.a +if(a1.length!==0){a1=B.b.gP(a1).c +a1=a1===B.fE||a1===B.fF}else a1=!1 +if(a1){s.push(q.dN()) +q=q.aCo()}}a1=r.b +l=a1.e +if(l!=null&&s.length>l){a0.x=!0 +B.b.t3(s,l,s.length)}for(r=s.length,k=1/0,j=-1/0,i=0;ij)j=c}a0.z=new A.W(k,0,j,a0.c) +if(r!==0)if(isFinite(a0.b)&&a1.a===B.lY)for(n=0;n=d;--s){q=o[s] +q.rw$=e+r +if(q.d==null)q.d=a +p=q.iZ$ +p===$&&A.b() +r+=p+q.j_$}return r}, +Pz(){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.length +if(a>s||b>s)return A.a([],t.Lx) +r=A.a([],t.Lx) +for(q=this.y,p=q.length,o=0;o=r+j.w)return new A.cC(j.c-j.e,B.by) +q=s-r +for(s=j.x,r=s.length,p=0;p=r+(q.goy(0)+q.gzX(0))/2 +break +case 0:r=s<=r+(q.goy(0)+q.gzX(0))/2 +break +default:r=i}else r=!0 +m=r}else m=!0}else m=!0 +l=q.aex(s) +if(m)return l +switch(q.d.a){case 1:r=!0 +break +case 0:r=!1 +break +default:r=i}p=q.iP$ +p===$&&A.b() +r=p.bqq(q,r) +k=r==null?i:r.aex(s) +if(k==null)return l +r=l.a +j=Math.min(Math.abs(r.a-s),Math.abs(r.c-s)) +r=k.a +return Math.min(Math.abs(r.a-s),Math.abs(r.c-s))>j?l:k}, +alB(a){var s,r,q,p=this.y,o=p.length +if(o===0)return null +for(s=0;s1 +return this.as>0}, +gcU(a){return this.a.length!==0}, +gbmB(){var s=this.c-this.w,r=this.d.b,q=r.a +switch((q==null?B.ah:q).a){case 2:return s/2 +case 1:return s +case 4:r=r.b +return(r==null?B.j:r)===B.ae?s:0 +case 5:r=r.b +return(r==null?B.j:r)===B.ae?0:s +default:return 0}}, +gbpK(){var s,r=this.d.b +if(r.z==null)return!1 +s=r.e +return s==null||s===this.f+1}, +gaXN(){var s=this.a +if(s.length!==0){s=B.b.gP(s).c +s=s===B.fE||s===B.fF}else s=!1 +if(s)return!1 +s=this.b +s=s==null?null:s.length!==0 +if(s===!0)return!1 +return!0}, +auU(a){var s=this +s.Un(a) +if(a.c!==B.af)s.Q=s.a.length +B.b.B(s.a,a)}, +Un(a){var s,r=this,q=a.w +r.at=r.at+q +if(a.gabr())r.ax+=q +else{r.ax=q +q=r.x +s=a.z4$ +s===$&&A.b() +r.w=q+s}q=r.x +s=a.iZ$ +s===$&&A.b() +r.x=q+(s+a.j_$) +if(a.gws())r.aVZ(a) +if(a.c!==B.af)++r.as +q=r.y +s=a.z2$ +s===$&&A.b() +r.y=Math.max(q,s) +s=r.z +q=a.z3$ +q===$&&A.b() +r.z=Math.max(s,q)}, +aVZ(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.z4$ +q===$&&A.b() +p=a.iZ$ +p===$&&A.b() +a.Qm(n.e,s,r,q,p+a.j_$)}, +KK(){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.gP(s) +if(q.gws()){if(r){p=g.b +p.toString +B.b.eu(p,0,B.b.hX(s)) +g.KK()}return}p=g.e +p.sBT(q.f) +o=g.x +n=q.iZ$ +n===$&&A.b() +m=q.j_$ +l=q.b-q.r +k=p.azW(q.a,l,r,b-(o-(n+m))) +if(k===l)return +B.b.hX(s) +g.KK() +j=q.pS(0,k) +i=B.b.ga2(j) +if(i!=null){p.ac1(i) +g.auU(i)}h=B.b.gP(j) +if(h!=null){p.ac1(h) +s=g.b +s.toString +B.b.eu(s,0,h)}}, +bwD(){return this.azX(!1,null)}, +byP(){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.sBT(B.b.gP(r).f) +q=$.OF() +p=f.length +o=A.GN(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.gP(r) +j=k.iZ$ +j===$&&A.b() +k=l-(j+k.j_$) +l=k}else l=0 +if(!(l>m))break +l=g.b +l.toString +B.b.eu(l,0,B.b.hX(r)) +g.KK() +s.sBT(B.b.gP(r).f) +o=A.GN(q,f,0,p,null) +m=n-o}i=B.b.gP(r) +g.azX(!0,m) +f=g.gaz5() +h=new A.a2w($,$,$,$,$,$,$,$,$,0,B.fF,null,B.ut,i.f,0,0,f,f) +f=i.z2$ +f===$&&A.b() +r=i.z3$ +r===$&&A.b() +h.Qm(s,f,r,o,o) +g.auU(h)}, +bGr(){var s,r=this.a,q=r.length,p=q-2 +for(;r[p].c===B.af;)--p +s=p+1 +A.dM(s,q,q,null,null) +this.b=A.fB(r,s,q,A.X(r).c).eO(0) +B.b.t3(r,s,r.length) +this.KK()}, +bmQ(a,b){var s,r=this,q=r.a,p=b +while(!0){if(r.gaXN())if(p1;){p=B.d.aD(q+r,2) +o=$.OF() +n=this.c +m=A.GN(o,s,a,p,n.gbN(n).ax) +if(md?q:p +r=p}}return q===a&&!c?q+1:q}} +A.DX.prototype={ +H(){return"LineBreakType."+this.b}} +A.bhx.prototype={ +X3(){return A.dkx(this.a)}} +A.bO3.prototype={ +X3(){var s=this.a +return A.cRL(s,s,this.b)}} +A.DW.prototype={ +gv(a){var s=this +return A.ad(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.DW&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +k(a){return"LineBreakFragment("+this.a+", "+this.b+", "+this.c.k(0)+")"}} +A.cox.prototype={ +$2(a,b){var s=this,r=a===B.fF?s.b.length:s.a.f,q=s.a,p=q.a +if(p===B.j6)++q.d +else if(p===B.l8||p===B.nV||p===B.nZ){++q.e;++q.d}if(a===B.af)return +p=q.c +s.c.push(new A.DW(a,q.e,q.d,p,r)) +q.c=q.f +q.d=q.e=0 +q.a=q.b=null}, +$S:751} +A.aDS.prototype={ +m(){this.a.remove()}} +A.bLk.prototype={ +aI(a,b){var s,r,q,p,o,n,m,l=this.a.gju().y +for(s=l.length,r=0;r=1){p=B.b.cK(s,0,r-1) +q=p +if(t.EO.b(q)){q=s[r-1] instanceof A.a2w +o=p}else{o=m +q=!1}}else{o=m +q=!1}if(!q)if(t.EO.b(s)){o=s +q=!0}else q=!1 +else q=!0 +if(q){q=(o&&B.b).gP(o).b +break $label0$0}q=m}n.d!==$&&A.a_() +l=n.d=q}return l}, +b0S(a){var s,r,q,p,o,n=A.a([],t.t) +for(s=a.length,r=this.b,q=!1,p=0;p0){s=q +continue}if(p<0){r=q +continue}return q}return r}, +bqq(a,b){var s,r,q,p,o,n,m,l,k,j +for(s=this.x,r=s.length,q=null,p=0;p=this.gI7())break +if(o.ga_V()==null)continue +if(b){n=a.iP$ +n===$&&A.b() +m=a.rw$ +if(n.y===B.j){m===$&&A.b() +n=m}else{m===$&&A.b() +l=a.iZ$ +l===$&&A.b() +l=n.a.f-(m+(l+a.j_$)) +n=l}m=o.iP$ +m===$&&A.b() +l=o.rw$ +if(m.y===B.j){l===$&&A.b() +m=o.iZ$ +m===$&&A.b() +m=l+(m+o.j_$)}else{l===$&&A.b() +m=m.a.f-l}k=n-m}else{n=o.iP$ +n===$&&A.b() +m=o.rw$ +if(n.y===B.j){m===$&&A.b() +n=m}else{m===$&&A.b() +l=o.iZ$ +l===$&&A.b() +l=n.a.f-(m+(l+o.j_$)) +n=l}m=a.iP$ +m===$&&A.b() +l=a.rw$ +if(m.y===B.j){l===$&&A.b() +m=a.iZ$ +m===$&&A.b() +m=l+(m+a.j_$)}else{l===$&&A.b() +m=m.a.f-l}k=n-m}j=q==null?null:q.a +$label0$1:{if(k>0)n=j==null||j>k +else n=!1 +if(n){q=new A.ah3(k,o) +break $label0$1}if(k===0)return o +continue}}return q==null?null:q.b}, +bqp(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null +if(g.gAg().length===0)return f +for(s=g.x,r=s.length,q=f,p=0,o=0;o=g.gI7())break +l=n.b +if(l-m===0)continue +for(;m>g.gAg()[p];)++p +if(g.gAg()[p]>=l)continue +m=n.iP$ +m===$&&A.b() +l=m.y===B.j +k=n.rw$ +if(l){k===$&&A.b() +j=k}else{k===$&&A.b() +j=n.iZ$ +j===$&&A.b() +j=m.a.f-(k+(j+n.j_$))}if(aj){if(l){k===$&&A.b() +m=n.iZ$ +m===$&&A.b() +m=k+(m+n.j_$)}else{k===$&&A.b() +m=m.a.f-k}i=a-m}else return n}h=q==null?f:q.a +if(h==null||h>i)q=new A.ah3(i,n)}return q==null?f:q.b}, +gv(a){var s=this +return A.ad(s.a,s.b,s.c,s.e,s.f,s.r,s.w,s.x,s.y,null,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.az(b)!==A.I(s))return!1 +return b instanceof A.wv&&b.a.l(0,s.a)&&b.b===s.b&&b.c===s.c&&b.e===s.e&&b.f===s.f&&b.r===s.r&&b.w===s.w&&b.x===s.x&&b.y===s.y&&!0}, +k(a){return B.buy.k(0)+"("+this.b+", "+this.c+", "+this.a.k(0)+")"}} +A.a2E.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.a2E&&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&&J.q(b.x,s.x)&&b.z==s.z&&J.q(b.Q,s.Q)}, +gv(a){var s=this +return A.ad(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.z,s.Q,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +k(a){return this.fP(0)}} +A.a2G.prototype={ +gayX(){var s=this.y +return s.length===0?"sans-serif":s}, +gaye(){var s,r,q,p,o,n,m=this,l="normal",k=m.dy +if(k==null){k=m.r +s=m.f +r=m.at +q=m.gayX() +if(k==null)p=null +else{k=k===B.uq?l:"italic" +p=k}if(p==null)p=l +o=s==null?null:A.cBr(s.a) +if(o==null)o=l +n=B.e.ec(r==null?14:r) +k=A.crn(q) +k.toString +k=m.dy=p+" "+o+" "+n+"px "+k}return k}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.a2G&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&J.q(b.c,s.c)&&b.d==s.d&&b.f==s.f&&b.r==s.r&&b.w==s.w&&b.CW==s.CW&&b.y===s.y&&b.at==s.at&&b.ax==s.ax&&b.ay==s.ay&&b.ch==s.ch&&b.e==s.e&&J.q(b.cx,s.cx)&&b.cy==s.cy&&b.db==s.db&&A.pQ(b.dx,s.dx)&&A.pQ(b.z,s.z)&&A.pQ(b.Q,s.Q)&&A.pQ(b.as,s.as)}, +gv(a){var s=this,r=null,q=s.dx,p=s.as,o=s.z,n=o==null?r:A.cs(o),m=q==null?r:A.cs(q) +return A.ad(s.a,s.b,s.c,s.d,s.f,s.r,s.w,s.CW,s.y,n,s.at,s.ax,s.ay,s.ch,s.cx,s.cy,s.db,m,s.e,A.ad(r,p==null?r:A.cs(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,B.a,B.a,B.a,B.a,B.a,B.a))}, +k(a){return this.fP(0)}} +A.a2F.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.a2F&&b.a==s.a&&b.c==s.c&&b.d==s.d&&b.f==s.f&&b.r==s.r&&b.w==s.w&&A.pQ(b.b,s.b)}, +gv(a){var s=this +return A.ad(s.a,s.b,s.c,s.d,s.e,s.x,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)}} +A.bwB.prototype={} +A.aaW.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.aaW&&b.gv(0)===this.gv(0)}, +gv(a){var s,r=this,q=r.f +if(q===$){s=A.ad(r.a,r.b,r.c,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) +r.f!==$&&A.a_() +r.f=s +q=s}return q}} +A.bKH.prototype={} +A.aG5.prototype={ +gb7g(){var s,r,q,p,o,n,m,l,k,j=this,i=j.d +if(i===$){s=A.d0(self.document,"div") +r=s.style +A.a6(r,"visibility","hidden") +A.a6(r,"position","absolute") +A.a6(r,"top","0") +A.a6(r,"left","0") +A.a6(r,"display","flex") +A.a6(r,"flex-direction","row") +A.a6(r,"align-items","baseline") +A.a6(r,"margin","0") +A.a6(r,"border","0") +A.a6(r,"padding","0") +r=j.e +q=j.a +p=q.a +o=r.a +n=o.style +A.a6(n,"font-size",""+B.e.ec(q.b)+"px") +m=A.crn(p) +m.toString +A.a6(n,"font-family",m) +l=q.c +if(l==null)k=p==="FlutterTest"?1:null +else k=l +if(k!=null)A.a6(n,"line-height",B.e.k(k)) +r.b=null +A.a6(o.style,"white-space","pre") +r.b=null +A.cHq(o," ") +s.append(o) +r.b=null +j.b.a.append(s) +j.d!==$&&A.a_() +j.d=s +i=s}return i}, +gFn(a){var s,r=this,q=r.f +if(q===$){q=r.c +if(q===$){s=A.d0(self.document,"div") +r.gb7g().append(s) +r.c!==$&&A.a_() +r.c=s +q=s}q=q.getBoundingClientRect().bottom +r.f!==$&&A.a_() +r.f=q}return q}} +A.R9.prototype={ +H(){return"FragmentFlow."+this.b}} +A.Hp.prototype={ +gv(a){var s=this +return A.ad(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)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.Hp&&b.a===s.a&&b.b===s.b&&b.c==s.c&&b.d===s.d}, +k(a){return"BidiFragment("+this.a+", "+this.b+", "+A.r(this.c)+")"}} +A.adv.prototype={ +H(){return"_ComparisonResult."+this.b}} +A.hx.prototype={ +a8i(a){if(athis.b)return B.byH +return B.byG}} +A.AJ.prototype={ +WO(a,b,c){var s=A.alY(b,c) +return s==null?this.b:this.Gz(s)}, +Gz(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.aWm(a) +p=q===-1?o.b:o.a[q].c +s.n(0,a,p) +return p}, +aWm(a){var s,r,q=this.a,p=q.length +for(s=0;s")).aE(0,new A.bgA(this,r)) +return r}} +A.bgA.prototype={ +$1(a){var s=this.a,r=s.b.i(0,a) +r.toString +this.b.push(A.hF(r,"input",new A.bgB(s,a,r)))}, +$S:46} +A.bgB.prototype={ +$1(a){var s,r=this.a.c,q=this.b +if(r.i(0,q)==null)throw A.d(A.a0("AutofillInfo must have a valid uniqueIdentifier.")) +else{r=r.i(0,q) +r.toString +s=A.cHQ(this.c) +$.cf().rI("flutter/textinput",B.d_.ru(new A.rE(u.gP,[0,A.a1([r.b,s.aFr()],t.R,t.z)])),A.b1t())}}, +$S:6} +A.ant.prototype={ +avr(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.p(p,q))A.bdQ(a,q) +else A.bdQ(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.bH(s?"on":p) +A.L(a,"setAttribute",["autocomplete",r==null?t.K.a(r):r])}}}, +mX(a){return this.avr(a,!1)}} +A.VN.prototype={} +A.QG.prototype={ +gYc(){return Math.min(this.b,this.c)}, +gY2(){return Math.max(this.b,this.c)}, +aFr(){var s=this +return A.a1(["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.ad(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.I(s)!==J.az(b))return!1 +return b instanceof A.QG&&b.a==s.a&&b.gYc()===s.gYc()&&b.gY2()===s.gY2()&&b.d===s.d&&b.e===s.e}, +k(a){return this.fP(0)}, +mX(a){var s,r=this,q="setSelectionRange",p=globalThis.HTMLInputElement +if(p!=null&&a instanceof p){a.toString +A.cHj(a,r.a) +A.L(a,q,[r.gYc(),r.gY2()])}else{p=globalThis.HTMLTextAreaElement +if(p!=null&&a instanceof p){a.toString +A.cHn(a,r.a) +A.L(a,q,[r.gYc(),r.gY2()])}else{s=a==null?null:A.d4Z(a) +throw A.d(A.aq("Unsupported DOM element type: <"+A.r(s)+"> ("+J.az(a).k(0)+")"))}}}} +A.bnC.prototype={} +A.auS.prototype={ +rY(){var s,r=this,q=r.w +if(q!=null){s=r.c +s.toString +q.mX(s)}q=r.d +q===$&&A.b() +if(q.w!=null){r.Ol() +q=r.e +if(q!=null)q.mX(r.c) +r.gazU().focus() +r.c.focus()}}} +A.a8H.prototype={ +rY(){var s,r=this,q=r.w +if(q!=null){s=r.c +s.toString +q.mX(s)}q=r.d +q===$&&A.b() +if(q.w!=null)A.d3(B.w,new A.bD0(r))}, +Nk(){if(this.w!=null)this.rY() +this.c.focus()}} +A.bD0.prototype={ +$0(){var s,r=this.a +r.Ol() +r.gazU().focus() +r.c.focus() +s=r.e +if(s!=null){r=r.c +r.toString +s.mX(r)}}, +$S:0} +A.a1H.prototype={ +grs(){var s=null,r=this.f +if(r==null){r=this.e.a +r.toString +r=this.f=new A.VN(r,"",-1,-1,s,s,s,s)}return r}, +gazU(){var s=this.d +s===$&&A.b() +s=s.w +return s==null?null:s.a}, +GM(a,b,c){var s,r,q,p=this,o="none",n="transparent" +p.c=a.a.a8Y() +p.a7l(a) +s=p.c +A.L(s.classList,"add",["flt-text-editing"]) +r=s.style +A.a6(r,"forced-color-adjust",o) +A.a6(r,"white-space","pre-wrap") +A.a6(r,"align-content","center") +A.a6(r,"position","absolute") +A.a6(r,"top","0") +A.a6(r,"left","0") +A.a6(r,"padding","0") +A.a6(r,"opacity","1") +A.a6(r,"color",n) +A.a6(r,"background-color",n) +A.a6(r,"background",n) +A.a6(r,"caret-color",n) +A.a6(r,"outline",o) +A.a6(r,"border",o) +A.a6(r,"resize",o) +A.a6(r,"text-shadow",o) +A.a6(r,"overflow","hidden") +A.a6(r,"transform-origin","0 0 0") +q=$.fv() +if(q!==B.fr)q=q===B.aQ +else q=!0 +if(q)A.L(s.classList,"add",["transparentTextEditing"]) +s=p.r +if(s!=null){q=p.c +q.toString +s.mX(q)}s=p.d +s===$&&A.b() +if(s.w==null){s=t.e8.a($.cf().gis().b.i(0,0)).gjk() +q=p.c +q.toString +s.e.append(q) +p.Q=!1}p.Nk() +p.b=!0 +p.x=c +p.y=b}, +a7l(a){var s,r,q,p,o,n=this,m="setAttribute" +n.d=a +s=n.c +if(a.c){s.toString +r=A.bH("readonly") +A.L(s,m,["readonly",r==null?t.K.a(r):r])}else{s.toString +A.L(s,"removeAttribute",["readonly"])}if(a.d){s=n.c +s.toString +r=A.bH("password") +A.L(s,m,["type",r==null?t.K.a(r):r])}if(a.a===B.Ay){s=n.c +s.toString +r=A.bH("none") +A.L(s,m,["inputmode",r==null?t.K.a(r):r])}q=A.d6o(a.b) +s=n.c +s.toString +q.br3(s) +p=a.r +s=n.c +if(p!=null){s.toString +p.avr(s,!0)}else{s.toString +r=A.bH("off") +A.L(s,m,["autocomplete",r==null?t.K.a(r):r])}o=a.e?"on":"off" +s=n.c +s.toString +r=A.bH(o) +A.L(s,m,["autocorrect",r==null?t.K.a(r):r])}, +Nk(){this.rY()}, +Ln(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.w +if(p!=null)B.b.L(q.z,p.Lp()) +p=q.z +s=q.c +s.toString +r=q.gN5() +p.push(A.hF(s,"input",r)) +s=q.c +s.toString +p.push(A.hF(s,"keydown",q.gNT())) +p.push(A.hF(self.document,"selectionchange",r)) +r=q.c +r.toString +A.fS(r,"beforeinput",t.g.a(A.cQ(q.gX4())),null) +r=q.c +r.toString +q.UJ(r) +r=q.c +r.toString +p.push(A.hF(r,"blur",new A.bcf(q))) +q.YX()}, +adX(a){this.w=a +if(this.b)this.rY()}, +adY(a){var s +this.r=a +if(this.b){s=this.c +s.toString +a.mX(s)}}, +ph(a){var s,r,q,p,o=this,n=null +o.b=!1 +o.w=o.r=o.f=o.e=null +for(s=o.z,r=0;r=0&&a.c>=0) +else s=!0 +if(s)return +a.mX(this.c)}, +rY(){this.c.focus()}, +Ol(){var s,r,q=this.d +q===$&&A.b() +q=q.w +q.toString +s=this.c +s.toString +if($.amw().goP() instanceof A.a8H)A.a6(s.style,"pointer-events","all") +r=q.a +r.insertBefore(s,q.d) +t.e8.a($.cf().gis().b.i(0,0)).gjk().e.append(r) +this.Q=!0}, +aAa(a){var s,r,q=this,p=q.c +p.toString +s=q.btL(A.cHQ(p)) +p=q.d +p===$&&A.b() +if(p.f){q.grs().r=s.d +q.grs().w=s.e +r=A.df1(s,q.e,q.grs())}else r=null +if(!s.l(0,q.e)){q.e=s +q.f=r +q.x.$2(s,r)}q.f=null}, +bwS(a){var s,r,q,p=this,o=A.bw(a.data),n=A.bw(a.inputType) +if(n!=null){s=p.e +r=s.b +q=s.c +r=r>q?r:q +if(B.c.p(n,"delete")){p.grs().b="" +p.grs().d=r}else if(n==="insertLineBreak"){p.grs().b="\n" +p.grs().c=r +p.grs().d=r}else if(o!=null){p.grs().b=o +p.grs().c=r +p.grs().d=r}}}, +bAX(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.azU))a.preventDefault()}}, +a9S(a,b,c,d){var s,r=this +r.GM(b,c,d) +r.Ln() +s=r.e +if(s!=null)r.afA(s) +r.c.focus()}, +YX(){var s=this,r=s.z,q=s.c +q.toString +r.push(A.hF(q,"mousedown",new A.bcg())) +q=s.c +q.toString +r.push(A.hF(q,"mouseup",new A.bch())) +q=s.c +q.toString +r.push(A.hF(q,"mousemove",new A.bci()))}} +A.bcf.prototype={ +$1(a){this.a.c.focus()}, +$S:6} +A.bcg.prototype={ +$1(a){a.preventDefault()}, +$S:6} +A.bch.prototype={ +$1(a){a.preventDefault()}, +$S:6} +A.bci.prototype={ +$1(a){a.preventDefault()}, +$S:6} +A.bmf.prototype={ +GM(a,b,c){var s,r=this +r.a0G(a,b,c) +s=r.c +s.toString +a.a.axi(s) +s=r.d +s===$&&A.b() +if(s.w!=null)r.Ol() +s=r.c +s.toString +a.x.afv(s)}, +Nk(){A.a6(this.c.style,"transform","translate(-9999px, -9999px)") +this.p1=!1}, +Ln(){var s,r,q,p=this,o=p.d +o===$&&A.b() +o=o.w +if(o!=null)B.b.L(p.z,o.Lp()) +o=p.z +s=p.c +s.toString +r=p.gN5() +o.push(A.hF(s,"input",r)) +s=p.c +s.toString +o.push(A.hF(s,"keydown",p.gNT())) +o.push(A.hF(self.document,"selectionchange",r)) +r=p.c +r.toString +A.fS(r,"beforeinput",t.g.a(A.cQ(p.gX4())),null) +r=p.c +r.toString +p.UJ(r) +r=p.c +r.toString +o.push(A.hF(r,"focus",new A.bmi(p))) +p.aVU() +q=new A.py() +$.r8() +q.j9(0) +r=p.c +r.toString +o.push(A.hF(r,"blur",new A.bmj(p,q)))}, +adX(a){var s=this +s.w=a +if(s.b&&s.p1)s.rY()}, +ph(a){var s +this.aOa(0) +s=this.ok +if(s!=null)s.ao(0) +this.ok=null}, +aVU(){var s=this.c +s.toString +this.z.push(A.hF(s,"click",new A.bmg(this)))}, +arh(){var s=this.ok +if(s!=null)s.ao(0) +this.ok=A.d3(B.b1,new A.bmh(this))}, +rY(){var s,r +this.c.focus() +s=this.w +if(s!=null){r=this.c +r.toString +s.mX(r)}}} +A.bmi.prototype={ +$1(a){this.a.arh()}, +$S:6} +A.bmj.prototype={ +$1(a){var s=A.cp(0,0,this.b.gMF(),0,0,0).a<2e5,r=self.document.hasFocus()&&s,q=this.a +if(r)q.c.focus() +else q.a.a09()}, +$S:6} +A.bmg.prototype={ +$1(a){var s=this.a +if(s.p1){s.Nk() +s.arh()}}, +$S:6} +A.bmh.prototype={ +$0(){var s=this.a +s.p1=!0 +s.rY()}, +$S:0} +A.b3E.prototype={ +GM(a,b,c){var s,r,q=this +q.a0G(a,b,c) +s=q.c +s.toString +a.a.axi(s) +s=q.d +s===$&&A.b() +if(s.w!=null)q.Ol() +else{s=t.e8.a($.cf().gis().b.i(0,0)).gjk() +r=q.c +r.toString +s.e.append(r)}s=q.c +s.toString +a.x.afv(s)}, +Ln(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.w +if(p!=null)B.b.L(q.z,p.Lp()) +p=q.z +s=q.c +s.toString +r=q.gN5() +p.push(A.hF(s,"input",r)) +s=q.c +s.toString +p.push(A.hF(s,"keydown",q.gNT())) +p.push(A.hF(self.document,"selectionchange",r)) +r=q.c +r.toString +A.fS(r,"beforeinput",t.g.a(A.cQ(q.gX4())),null) +r=q.c +r.toString +q.UJ(r) +r=q.c +r.toString +p.push(A.hF(r,"blur",new A.b3F(q))) +q.YX()}, +rY(){var s,r +this.c.focus() +s=this.w +if(s!=null){r=this.c +r.toString +s.mX(r)}}} +A.b3F.prototype={ +$1(a){var s=this.a +if(self.document.hasFocus())s.c.focus() +else s.a.a09()}, +$S:6} +A.bi6.prototype={ +GM(a,b,c){var s +this.a0G(a,b,c) +s=this.d +s===$&&A.b() +if(s.w!=null)this.Ol()}, +Ln(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.w +if(p!=null)B.b.L(q.z,p.Lp()) +p=q.z +s=q.c +s.toString +r=q.gN5() +p.push(A.hF(s,"input",r)) +s=q.c +s.toString +p.push(A.hF(s,"keydown",q.gNT())) +s=q.c +s.toString +A.fS(s,"beforeinput",t.g.a(A.cQ(q.gX4())),null) +s=q.c +s.toString +q.UJ(s) +s=q.c +s.toString +p.push(A.hF(s,"keyup",new A.bi8(q))) +s=q.c +s.toString +p.push(A.hF(s,"select",r)) +r=q.c +r.toString +p.push(A.hF(r,"blur",new A.bi9(q))) +q.YX()}, +beo(){A.d3(B.w,new A.bi7(this))}, +rY(){var s,r,q=this +q.c.focus() +s=q.w +if(s!=null){r=q.c +r.toString +s.mX(r)}s=q.e +if(s!=null){r=q.c +r.toString +s.mX(r)}}} +A.bi8.prototype={ +$1(a){this.a.aAa(a)}, +$S:6} +A.bi9.prototype={ +$1(a){this.a.beo()}, +$S:6} +A.bi7.prototype={ +$0(){this.a.c.focus()}, +$S:0} +A.bL_.prototype={} +A.bL5.prototype={ +qF(a){var s=a.b +if(s!=null&&s!==this.a&&a.c){a.c=!1 +a.goP().ph(0)}a.b=this.a +a.d=this.b}} +A.bLc.prototype={ +qF(a){var s=a.goP(),r=a.d +r.toString +s.a7l(r)}} +A.bL7.prototype={ +qF(a){a.goP().afA(this.a)}} +A.bLa.prototype={ +qF(a){if(!a.c)a.biM()}} +A.bL6.prototype={ +qF(a){a.goP().adX(this.a)}} +A.bL9.prototype={ +qF(a){a.goP().adY(this.a)}} +A.bKY.prototype={ +qF(a){if(a.c){a.c=!1 +a.goP().ph(0)}}} +A.bL2.prototype={ +qF(a){if(a.c){a.c=!1 +a.goP().ph(0)}}} +A.bL8.prototype={ +qF(a){}} +A.bL4.prototype={ +qF(a){}} +A.bL3.prototype={ +qF(a){}} +A.bL1.prototype={ +qF(a){a.a09() +if(this.a)A.dvn() +A.dpC()}} +A.ctv.prototype={ +$2(a,b){var s=t.qr +s=A.fw(new A.AX(A.L(b,"getElementsByClassName",["submitBtn"]),s),s.h("B.E"),t.e) +A.z(s).y[1].a(J.jD(s.a)).click()}, +$S:766} +A.bKI.prototype={ +bxS(a,b){var s,r,q,p,o,n,m,l,k=B.d_.qg(a) +switch(k.a){case"TextInput.setClient":s=k.b +r=J.ao(s) +q=new A.bL5(A.bZ(r.i(s,0)),A.cJ1(t.a.a(r.i(s,1)))) +break +case"TextInput.updateConfig":this.a.d=A.cJ1(t.a.a(k.b)) +q=B.a5y +break +case"TextInput.setEditingState":q=new A.bL7(A.cHR(t.a.a(k.b))) +break +case"TextInput.show":q=B.a5w +break +case"TextInput.setEditableSizeAndTransform":q=new A.bL6(A.d5Y(t.a.a(k.b))) +break +case"TextInput.setStyle":s=t.a.a(k.b) +r=J.ao(s) +p=A.bZ(r.i(s,"textAlignIndex")) +o=A.bZ(r.i(s,"textDirectionIndex")) +n=A.fO(r.i(s,"fontWeightIndex")) +m=n!=null?A.cBr(n):"normal" +l=A.GE(r.i(s,"fontSize")) +if(l==null)l=null +q=new A.bL9(new A.bg0(l,m,A.bw(r.i(s,"fontFamily")),B.aOt[p],B.vs[o])) +break +case"TextInput.clearClient":q=B.a5r +break +case"TextInput.hide":q=B.a5s +break +case"TextInput.requestAutofill":q=B.a5t +break +case"TextInput.finishAutofillContext":q=new A.bL1(A.j2(k.b)) +break +case"TextInput.setMarkedTextRect":q=B.a5v +break +case"TextInput.setCaretRect":q=B.a5u +break +default:$.cf().lO(b,null) +return}q.qF(this.a) +new A.bKJ(b).$0()}} +A.bKJ.prototype={ +$0(){$.cf().lO(this.a,B.bb.h8([!0]))}, +$S:0} +A.bma.prototype={ +gLO(a){var s=this.a +if(s===$){s!==$&&A.a_() +s=this.a=new A.bKI(this)}return s}, +goP(){var s,r,q,p,o=this,n=null,m=o.f +if(m===$){s=$.eD +if((s==null?$.eD=A.kU():s).a){s=A.dde(o) +r=s}else{s=$.fv() +if(s===B.aQ){q=$.ja() +q=q===B.cG}else q=!1 +if(q)p=new A.bmf(o,A.a([],t.Up),$,$,$,n) +else if(s===B.aQ)p=new A.a8H(o,A.a([],t.Up),$,$,$,n) +else{if(s===B.fr){q=$.ja() +q=q===B.pp}else q=!1 +if(q)p=new A.b3E(o,A.a([],t.Up),$,$,$,n) +else p=s===B.ew?new A.bi6(o,A.a([],t.Up),$,$,$,n):A.d7z(o)}r=p}o.f!==$&&A.a_() +m=o.f=r}return m}, +biM(){var s,r,q=this +q.c=!0 +s=q.goP() +r=q.d +r.toString +s.a9S(0,r,new A.bmb(q),new A.bmc(q))}, +a09(){var s,r=this +if(r.c){r.c=!1 +r.goP().ph(0) +r.gLO(0) +s=r.b +$.cf().rI("flutter/textinput",B.d_.ru(new A.rE("TextInputClient.onConnectionClosed",[s])),A.b1t())}}} +A.bmc.prototype={ +$2(a,b){var s,r,q="flutter/textinput",p=this.a +if(p.d.f){p.gLO(0) +p=p.b +s=t.N +r=t.z +$.cf().rI(q,B.d_.ru(new A.rE(u.au,[p,A.a1(["deltas",A.a([A.a1(["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.b1t())}else{p.gLO(0) +p=p.b +$.cf().rI(q,B.d_.ru(new A.rE("TextInputClient.updateEditingState",[p,a.aFr()])),A.b1t())}}, +$S:792} +A.bmb.prototype={ +$1(a){var s=this.a +s.gLO(0) +s=s.b +$.cf().rI("flutter/textinput",B.d_.ru(new A.rE("TextInputClient.performAction",[s,a])),A.b1t())}, +$S:229} +A.bg0.prototype={ +mX(a){var s=this,r=a.style +A.a6(r,"text-align",A.dw9(s.d,s.e)) +A.a6(r,"font",s.b+" "+A.r(s.a)+"px "+A.r(A.crn(s.c)))}} +A.bfk.prototype={ +mX(a){var s=A.pP(this.c),r=a.style +A.a6(r,"width",A.r(this.a)+"px") +A.a6(r,"height",A.r(this.b)+"px") +A.a6(r,"transform",s)}} +A.bfl.prototype={ +$1(a){return A.e6(a)}, +$S:796} +A.abB.prototype={ +H(){return"TransformKind."+this.b}} +A.crm.prototype={ +$1(a){return"0x"+B.c.fm(B.d.k9(a,16),2,"0")}, +$S:104} +A.axd.prototype={ +gA(a){return this.b.b}, +i(a,b){var s=this.c.i(0,b) +return s==null?null:s.d.b}, +ai0(a,b,c){var s,r,q,p=this.b +p.UL(new A.aUp(b,c)) +s=this.c +r=p.a +q=r.b.Jt() +q.toString +s.n(0,b,q) +if(p.b>this.a){s.F(0,r.a.gMG().a) +p.hX(0)}}} +A.dX.prototype={ +aUU(){var s=this.a +s[15]=1 +s[0]=1 +s[5]=1 +s[10]=1}, +T(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]}, +n(a,b,c){this.a[b]=c}, +ba(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}, +bHl(a,b){return this.ba(0,b,0)}, +o2(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]}, +bK(a,b){return this.o2(0,b,null,null)}, +jt(a,b,c){return this.o2(0,b,c,null)}, +Oj(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.ahc((r*a+q*b+p*c+o)*f,(n*a+m*b+l*c+k)*f,(j*a+i*b+h*c+g)*f)}, +Nu(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}, +aFc(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}, +tl(a,b,c){var s=this.a +s[14]=c +s[13]=b +s[12]=a}, +l7(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.T(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}, +hc(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}, +ky(a){var s=new A.dX(new Float32Array(16)) +s.T(this) +s.hc(0,a) +return s}, +aFO(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]}, +k(a){return this.fP(0)}} +A.bhH.prototype={ +aFN(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.arX.prototype={ +aUy(a){var s=A.dri(new A.bbh(this)) +this.c=s +s.observe(this.b)}, +aWw(a){this.d.B(0,a)}, +aO(a){var s +this.agw(0) +s=this.c +s===$&&A.b() +s.disconnect() +this.d.aO(0)}, +gaCI(a){var s=this.d +return new A.dw(s,A.z(s).h("dw<1>"))}, +a8k(){var s,r=$.ec().d +if(r==null){s=self.window.devicePixelRatio +r=s===0?1:s}s=this.b +return new A.V(s.clientWidth*r,s.clientHeight*r)}, +axb(a,b){return B.k0}} +A.bbh.prototype={ +$2(a,b){new A.O(a,new A.bbg(),a.$ti.h("O")).aE(0,this.a.gaWv())}, +$S:857} +A.bbg.prototype={ +$1(a){return new A.V(a.contentRect.width,a.contentRect.height)}, +$S:862} +A.asK.prototype={ +aO(a){}} +A.auy.prototype={ +bcF(a){this.c.B(0,null)}, +aO(a){var s +this.agw(0) +s=this.b +s===$&&A.b() +s.ao(0) +this.c.aO(0)}, +gaCI(a){var s=this.c +return new A.dw(s,A.z(s).h("dw<1>"))}, +a8k(){var s,r,q=A.aF("windowInnerWidth"),p=A.aF("windowInnerHeight"),o=self.window.visualViewport,n=$.ec().d +if(n==null){s=self.window.devicePixelRatio +n=s===0?1:s}if(o!=null){s=$.ja() +if(s===B.cG){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.cHx(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.cHA(self.window) +s.toString +p.b=s*n}return new A.V(q.aX(),p.aX())}, +axb(a,b){var s,r,q,p=$.ec().d +if(p==null){s=self.window.devicePixelRatio +p=s===0?1:s}r=self.window.visualViewport +q=A.aF("windowInnerHeight") +if(r!=null){s=$.ja() +if(s===B.cG&&!b)q.b=self.document.documentElement.clientHeight*p +else{s=A.cHx(r) +s.toString +q.b=s*p}}else{s=A.cHA(self.window) +s.toString +q.b=s*p}return new A.aHB(0,0,0,a-q.aX())}} +A.bdR.prototype={ +aAX(a){var s,r=$.tq().b.i(0,a) +if(r==null){A.L(self.window.console,"debug",["Failed to inject Platform View Id: "+a+". Render seems to be happening before a `flutter/platform_views:create` platform message!"]) +return}s=this.b +if(J.q(r.parentElement,s))return +s.append(r)}} +A.bbi.prototype={ +ga_U(){var s=this.b +s===$&&A.b() +return s}, +aAT(a,b){var s +b.gep(b).aE(0,new A.bbj(this)) +s=A.bH("custom-element") +if(s==null)s=t.K.a(s) +A.L(this.a,"setAttribute",["flt-embedding",s])}, +avE(a){var s +A.a6(a.style,"width","100%") +A.a6(a.style,"height","100%") +A.a6(a.style,"display","block") +A.a6(a.style,"overflow","hidden") +A.a6(a.style,"position","relative") +this.a.appendChild(a) +if($.amr()!=null){s=self.window.__flutterState +s.toString +A.L(s,"push",[a])}this.b!==$&&A.ck() +this.b=a}, +avB(a,b){var s +this.a.insertBefore(a,b) +if($.amr()!=null){s=self.window.__flutterState +s.toString +A.L(s,"push",[a])}}} +A.bbj.prototype={ +$1(a){var s=A.bH(a.b) +if(s==null)s=t.K.a(s) +A.L(this.a.a,"setAttribute",[a.a,s])}, +$S:304} +A.bjs.prototype={ +ga_U(){return self.window}, +aAT(a,b){var s,r,q="0",p="none" +b.gep(b).aE(0,new A.bjt(this)) +s=self.document.body +s.toString +r=A.bH("full-page") +A.L(s,"setAttribute",["flt-embedding",r==null?t.K.a(r):r]) +this.aWd() +s=self.document.body +s.toString +A.j9(s,"position","fixed") +A.j9(s,"top",q) +A.j9(s,"right",q) +A.j9(s,"bottom",q) +A.j9(s,"left",q) +A.j9(s,"overflow","hidden") +A.j9(s,"padding",q) +A.j9(s,"margin",q) +A.j9(s,"user-select",p) +A.j9(s,"-webkit-user-select",p) +A.j9(s,"touch-action",p)}, +avE(a){var s=a.style +A.a6(s,"position","absolute") +A.a6(s,"top","0") +A.a6(s,"right","0") +A.a6(s,"bottom","0") +A.a6(s,"left","0") +self.document.body.append(a) +if($.amr()!=null){s=self.window.__flutterState +s.toString +A.L(s,"push",[a])}}, +avB(a,b){var s +self.document.body.insertBefore(a,b) +if($.amr()!=null){s=self.window.__flutterState +s.toString +A.L(s,"push",[a])}}, +aWd(){var s,r,q=self.document.head +q.toString +s=t.qr +s=A.fw(new A.AX(A.L(q,"querySelectorAll",['meta[name="viewport"]']),s),s.h("B.E"),t.e) +q=J.au(s.a) +s=A.z(s) +s=s.h("@<1>").a1(s.y[1]).y[1] +for(;q.t();)s.a(q.gK(q)).remove() +r=A.d0(self.document,"meta") +q=A.bH("") +A.L(r,"setAttribute",["flt-viewport",q==null?t.K.a(q):q]) +r.name="viewport" +r.content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" +self.document.head.append(r) +if($.amr()!=null){q=self.window.__flutterState +q.toString +A.L(q,"push",[r])}}} +A.bjt.prototype={ +$1(a){var s,r=self.document.body +r.toString +s=A.bH(a.b) +if(s==null)s=t.K.a(s) +A.L(r,"setAttribute",[a.a,s])}, +$S:304} +A.a3p.prototype={ +i(a,b){return this.b.i(0,b)}, +aEw(a,b){var s=a.a +this.b.n(0,s,a) +if(b!=null)this.c.n(0,s,b) +this.d.B(0,s) +return a}, +bFC(a){return this.aEw(a,null)}, +ayK(a){var s,r=this.b,q=r.i(0,a) +if(q==null)return null +r.F(0,a) +s=this.c.F(0,a) +this.e.B(0,a) +q.m() +return s}} +A.cps.prototype={ +$0(){return null}, +$S:872} +A.yG.prototype={ +ahS(a,b,c){var s,r=this +r.c.avE(r.gjk().a) +s=A.dbj(r) +r.z!==$&&A.ck() +r.z=s +s=r.ay +s=s.gaCI(s).eB(r.gb_q()) +r.d!==$&&A.ck() +r.d=s +$.Bx.push(r.gf7())}, +m(){var s,r,q=this +if(q.f)return +q.f=!0 +s=q.d +s===$&&A.b() +s.ao(0) +q.ay.aO(0) +s=q.z +s===$&&A.b() +r=s.f +r===$&&A.b() +r.m() +s=s.a +if(s!=null)if(s.a!=null){A.lv(self.document,"touchstart",s.a,null) +s.a=null}q.gjk().a.remove() +$.ar().awU() +q.gaft().b6(0)}, +gauN(){var s,r,q,p=this,o=p.r +if(o===$){s=p.gjk().r +r=A.cEK(B.ra) +q=A.cEK(B.rb) +s.append(r) +s.append(q) +p.r!==$&&A.a_() +o=p.r=new A.b35(r,q)}return o}, +gaxm(){var s,r=this,q=r.x +if(q===$){s=r.gjk() +r.x!==$&&A.a_() +q=r.x=new A.baN(s.a)}return q}, +gjk(){var s,r,q,p,o,n,m,l,k,j=this,i="flutter-view",h=j.y +if(h===$){s=$.ec().d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}r=A.d0(self.document,i) +q=A.d0(self.document,"flt-glass-pane") +p=A.bH(A.a1(["mode","open","delegatesFocus",!1],t.N,t.z)) +p=A.L(q,"attachShadow",[p==null?t.K.a(p):p]) +o=A.d0(self.document,"flt-scene-host") +n=A.d0(self.document,"flt-text-editing-host") +m=A.d0(self.document,"flt-semantics-host") +l=A.d0(self.document,"flt-announcement-host") +k=A.bH(j.a) +A.L(r,"setAttribute",["flt-view-id",k==null?t.K.a(k):k]) +r.appendChild(q) +r.appendChild(n) +r.appendChild(m) +k=$.eD +p.append((k==null?$.eD=A.kU():k).c.a.aDl()) +p.append(o) +p.append(l) +k=A.nJ().b +A.cMq(i,r,"flt-text-editing-stylesheet",k==null?null:A.cxG(k)) +k=A.nJ().b +A.cMq("",p,"flt-internals-stylesheet",k==null?null:A.cxG(k)) +k=A.nJ().ga9c() +A.a6(o.style,"pointer-events","none") +if(k)A.a6(o.style,"opacity","0.3") +k=m.style +A.a6(k,"position","absolute") +A.a6(k,"transform-origin","0 0 0") +A.a6(m.style,"transform","scale("+A.r(1/s)+")") +j.y!==$&&A.a_() +h=j.y=new A.bdR(r,q,p,o,n,m,l)}return h}, +gaft(){var s,r=this,q=r.Q +if(q===$){s=A.d6q(r.gjk().f) +r.Q!==$&&A.a_() +r.Q=s +q=s}return q}, +grX(){var s=this.as +return s==null?this.as=this.ak5():s}, +ak5(){var s=this.ay.a8k() +return s}, +gqi(a){var s=$.ec().d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}return s}, +b_r(a){var s,r=this,q=r.gjk(),p=$.ec().d +if(p==null){p=self.window.devicePixelRatio +if(p===0)p=1}A.a6(q.f.style,"transform","scale("+A.r(1/p)+")") +s=r.ak5() +q=$.ja() +if(!B.xf.p(0,q)&&!r.b8d(s)&&$.amw().c)r.ak3(!0) +else{r.as=s +r.ak3(!1)}r.b.abl()}, +b8d(a){var s,r,q=this.as +if(q!=null){s=q.b +r=a.b +if(s!==r&&q.a!==a.a){q=q.a +if(!(s>q&&rs&&a.a").a1(b).h("ek<1,2>"))}, +B(a,b){if(!!a.fixed$length)A.C(A.aq("add")) +a.push(b)}, +fE(a,b){if(!!a.fixed$length)A.C(A.aq("removeAt")) +if(b<0||b>=a.length)throw A.d(A.a7z(b,null,null)) +return a.splice(b,1)[0]}, +eu(a,b,c){if(!!a.fixed$length)A.C(A.aq("insert")) +if(b<0||b>a.length)throw A.d(A.a7z(b,null,null)) +a.splice(b,0,c)}, +ox(a,b,c){var s,r +if(!!a.fixed$length)A.C(A.aq("insertAll")) +A.a7A(b,0,a.length,"index") +if(!t.Ee.b(c))c=J.ra(c) +s=J.bn(c) +a.length=a.length+s +r=b+s +this.dS(a,r,a.length,a,b) +this.cV(a,b,r,c)}, +iK(a,b,c){var s,r +if(!!a.immutable$list)A.C(A.aq("setAll")) +A.a7A(b,0,a.length,"index") +for(s=J.au(c);s.t();b=r){r=b+1 +this.n(a,b,s.gK(s))}}, +hX(a){if(!!a.fixed$length)A.C(A.aq("removeLast")) +if(a.length===0)throw A.d(A.Zi(a,-1)) +return a.pop()}, +F(a,b){var s +if(!!a.fixed$length)A.C(A.aq("remove")) +for(s=0;s"))}, +MM(a,b,c){return new A.eE(a,b,A.X(a).h("@<1>").a1(c).h("eE<1,2>"))}, +L(a,b){var s +if(!!a.fixed$length)A.C(A.aq("addAll")) +if(Array.isArray(b)){this.aVD(a,b) +return}for(s=J.au(b);s.t();)a.push(s.gK(s))}, +aVD(a,b){var s,r=b.length +if(r===0)return +if(a===b)throw A.d(A.e1(a)) +for(s=0;s").a1(c).h("O<1,2>"))}, +bQ(a,b){var s,r=A.aK(a.length,"",!1,t.N) +for(s=0;sa.length)throw A.d(A.e9(b,0,a.length,"start",null)) +if(c==null)c=a.length +else if(ca.length)throw A.d(A.e9(c,b,a.length,"end",null)) +if(b===c)return A.a([],A.X(a)) +return A.a(a.slice(b,c),A.X(a))}, +hs(a,b){return this.cK(a,b,null)}, +Dv(a,b,c){A.dM(b,c,a.length,null,null) +return A.fB(a,b,c,A.X(a).c)}, +ga2(a){if(a.length>0)return a[0] +throw A.d(A.dB())}, +gP(a){var s=a.length +if(s>0)return a[s-1] +throw A.d(A.dB())}, +gcW(a){var s=a.length +if(s===1)return a[0] +if(s===0)throw A.d(A.dB()) +throw A.d(A.DO())}, +t3(a,b,c){if(!!a.fixed$length)A.C(A.aq("removeRange")) +A.dM(b,c,a.length,null,null) +a.splice(b,c-b)}, +dS(a,b,c,d,e){var s,r,q,p,o +if(!!a.immutable$list)A.C(A.aq("setRange")) +A.dM(b,c,a.length,null,null) +s=c-b +if(s===0)return +A.js(e,"skipCount") +if(t.j.b(d)){r=d +q=e}else{p=J.amA(d,e) +r=p.ib(p,!1) +q=0}p=J.ao(r) +if(q+s>p.gA(r))throw A.d(A.cJb()) +if(q=0;--o)a[b+o]=p.i(r,q+o) +else for(o=0;o"))}, +iL(a,b){var s,r,q,p,o +if(!!a.immutable$list)A.C(A.aq("sort")) +s=a.length +if(s<2)return +if(b==null)b=J.dmp() +if(s===2){r=a[0] +q=a[1] +if(b.$2(r,q)>0){a[0]=q +a[1]=r}return}if(A.X(a).c.b(null)){for(p=0,o=0;o0)this.bfL(a,p)}, +o3(a){return this.iL(a,null)}, +bfL(a,b){var s,r=a.length +for(;s=r-1,r>0;r=s)if(a[s]===null){a[s]=void 0;--b +if(b===0)break}}, +aMh(a,b){var s,r,q +if(!!a.immutable$list)A.C(A.aq("shuffle")) +s=a.length +for(;s>1;){r=b.px(s);--s +q=a[s] +this.n(a,s,a[r]) +this.n(a,r,q)}}, +hj(a,b,c){var s,r=a.length +if(c>=r)return-1 +if(c<0)c=0 +for(s=c;s=s)q=s-1 +for(r=q;r>=0;--r)if(J.q(a[r],b))return r +return-1}, +na(a,b){return this.wt(a,b,null)}, +p(a,b){var s +for(s=0;s"))}, +gv(a){return A.ef(a)}, +gA(a){return a.length}, +sA(a,b){if(!!a.fixed$length)A.C(A.aq("set length")) +if(b<0)throw A.d(A.e9(b,0,null,"newLength",null)) +if(b>a.length)A.X(a).c.a(null) +a.length=b}, +i(a,b){if(!(b>=0&&b=0&&b"))}, +S(a,b){var s=A.R(a,!0,A.X(a).c) +this.L(s,b) +return s}, +Cq(a,b,c){var s +if(c>=a.length)return-1 +for(s=c;s=p){r.d=null +return!1}r.d=q[s] +r.c=s+1 +return!0}} +J.DQ.prototype={ +bn(a,b){var s +if(ab)return 1 +else if(a===b){if(a===0){s=this.guB(b) +if(this.guB(a)===s)return 0 +if(this.guB(a))return-1 +return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 +return 1}else return-1}, +guB(a){return a===0?1/a<0:a<0}, +gAq(a){var s +if(a>0)s=1 +else s=a<0?-1:a +return s}, +au(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.d(A.aq(""+a+".toInt()"))}, +dO(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.d(A.aq(""+a+".ceil()"))}, +ec(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.d(A.aq(""+a+".floor()"))}, +aF(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.d(A.aq(""+a+".round()"))}, +OK(a){if(a<0)return-Math.round(-a) +else return Math.round(a)}, +dV(a,b,c){if(this.bn(b,c)>0)throw A.d(A.bV(b)) +if(this.bn(a,b)<0)return b +if(this.bn(a,c)>0)return c +return a}, +aZ(a,b){var s +if(b>20)throw A.d(A.e9(b,0,20,"fractionDigits",null)) +s=a.toFixed(b) +if(a===0&&this.guB(a))return"-"+s +return s}, +adH(a,b){var s +if(b<1||b>21)throw A.d(A.e9(b,1,21,"precision",null)) +s=a.toPrecision(b) +if(a===0&&this.guB(a))return"-"+s +return s}, +k9(a,b){var s,r,q,p +if(b<2||b>36)throw A.d(A.e9(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.C(A.aq("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.X("0",q)}, +k(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}, +o1(a){return-a}, +S(a,b){return a+b}, +W(a,b){return a-b}, +iI(a,b){return a/b}, +X(a,b){return a*b}, +M(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}, +hf(a,b){if((a|0)===a)if(b>=1||b<-1)return a/b|0 +return this.asC(a,b)}, +aD(a,b){return(a|0)===a?a/b|0:this.asC(a,b)}, +asC(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.d(A.aq("Result of truncating division is "+A.r(s)+": "+A.r(a)+" ~/ "+A.r(b)))}, +hN(a,b){if(b<0)throw A.d(A.bV(b)) +return b>31?0:a<>>0}, +TO(a,b){return b>31?0:a<>>0}, +kZ(a,b){var s +if(b<0)throw A.d(A.bV(b)) +if(a>0)s=this.tO(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +b2(a,b){var s +if(a>0)s=this.tO(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +mS(a,b){if(0>b)throw A.d(A.bV(b)) +return this.tO(a,b)}, +tO(a,b){return b>31?0:a>>>b}, +afW(a,b){if(b<0)throw A.d(A.bV(b)) +return this.Bg(a,b)}, +Bg(a,b){if(b>31)return 0 +return a>>>b}, +da(a,b){return(a|b)>>>0}, +Ai(a,b){return ab}, +pO(a,b){return a<=b}, +gjp(a){return A.c6(t.Jy)}, +$icT:1, +$iU:1, +$ieO:1} +J.RX.prototype={ +gAq(a){var s +if(a>0)s=1 +else s=a<0?-1:a +return s}, +o1(a){return-a}, +goh(a){var s,r=a<0?-a-1:a,q=r +for(s=32;q>=4294967296;){q=this.aD(q,4294967296) +s+=32}return s-Math.clz32(q)}, +gjp(a){return A.c6(t.S)}, +$ih0:1, +$ih:1} +J.a4E.prototype={ +gjp(a){return A.c6(t.i)}, +$ih0:1} +J.we.prototype={ +p9(a,b){if(b<0)throw A.d(A.Zi(a,b)) +if(b>=a.length)A.C(A.Zi(a,b)) +return a.charCodeAt(b)}, +Lu(a,b,c){if(0>c||c>b.length)throw A.d(A.e9(c,0,b.length,null,null)) +return new A.aXh(b,a,c)}, +kt(a,b){return this.Lu(a,b,0)}, +NP(a,b,c){var s,r,q=null +if(c<0||c>b.length)throw A.d(A.e9(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.b0(a,r-s)}, +aET(a,b,c,d){A.a7A(d,0,a.length,"startIndex") +return A.ctV(a,b,c,d)}, +jL(a,b,c){return this.aET(a,b,c,0)}, +pS(a,b){if(typeof b=="string")return A.a(a.split(b),t.s) +else if(b instanceof A.u1&&b.gaoZ().exec("").length-2===0)return A.a(a.split(b.b),t.s) +else return this.b_6(a,b)}, +nW(a,b,c,d){var s=A.dM(b,c,a.length,null,null) +return A.cC4(a,b,s,d)}, +b_6(a,b){var s,r,q,p,o,n,m=A.a([],t.s) +for(s=J.b2T(b,a),s=s.gaz(s),r=0,q=1;s.t();){p=s.gK(s) +o=p.gee(p) +n=p.gdw(p) +q=n-o +if(q===0&&r===o)continue +m.push(this.R(a,r,o)) +r=n}if(r0)m.push(this.b0(a,r)) +return m}, +i0(a,b,c){var s +if(c<0||c>a.length)throw A.d(A.e9(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.cEC(b,a,c)!=null}, +aC(a,b){return this.i0(a,b,0)}, +R(a,b,c){return a.substring(b,A.dM(b,c,a.length,null,null))}, +b0(a,b){return this.R(a,b,null)}, +bH2(a){return a.toLowerCase()}, +aFy(a){return a.toUpperCase()}, +du(a){var s,r,q,p=a.trim(),o=p.length +if(o===0)return p +if(p.charCodeAt(0)===133){s=J.cJg(p,1) +if(s===o)return""}else s=0 +r=o-1 +q=p.charCodeAt(r)===133?J.cJh(p,r):o +if(s===0&&q===o)return p +return p.substring(s,q)}, +Df(a){var s=a.trimStart() +if(s.length===0)return s +if(s.charCodeAt(0)!==133)return s +return s.substring(J.cJg(s,1))}, +ZU(a){var s,r=a.trimEnd(),q=r.length +if(q===0)return r +s=q-1 +if(r.charCodeAt(s)!==133)return r +return r.substring(0,J.cJh(r,s))}, +X(a,b){var s,r +if(0>=b)return"" +if(b===1||a.length===0)return a +if(b!==b>>>0)throw A.d(B.a56) +for(s=a,r="";!0;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +fm(a,b,c){var s=b-a.length +if(s<=0)return a +return this.X(c,s)+a}, +bDl(a,b){return this.fm(a,b," ")}, +YL(a,b){var s=b-a.length +if(s<=0)return a +return a+this.X(" ",s)}, +hj(a,b,c){var s,r,q,p +if(c<0||c>a.length)throw A.d(A.e9(c,0,a.length,null,null)) +if(typeof b=="string")return a.indexOf(b,c) +if(b instanceof A.u1){s=b.a2N(a,c) +return s==null?-1:s.b.index}for(r=a.length,q=J.r2(b),p=c;p<=r;++p)if(q.NP(b,a,p)!=null)return p +return-1}, +c2(a,b){return this.hj(a,b,0)}, +wt(a,b,c){var s,r,q +if(c==null)c=a.length +else if(c<0||c>a.length)throw A.d(A.e9(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.r2(b),q=c;q>=0;--q)if(s.NP(b,a,q)!=null)return q +return-1}, +na(a,b){return this.wt(a,b,null)}, +br9(a,b,c){var s=a.length +if(c>s)throw A.d(A.e9(c,0,s,null,null)) +return A.r6(a,b,c)}, +p(a,b){return this.br9(a,b,0)}, +gcU(a){return a.length!==0}, +bn(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}, +gjp(a){return A.c6(t.N)}, +gA(a){return a.length}, +i(a,b){if(!(b>=0&&b").a1(r.y[1]).h("Pp<1,2>")) +s.lh(r.gbb0()) +r.lh(a) +r.Hd(0,d) +return r}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.Pp.prototype={ +ao(a){return this.a.ao(0)}, +lh(a){this.c=a==null?null:this.b.D2(a,t.z,this.$ti.y[1])}, +Hd(a,b){var s=this +s.a.Hd(0,b) +if(b==null)s.d=null +else if(t.hK.b(b))s.d=s.b.Oz(b,t.z,t.K,t.Km) +else if(t.mX.b(b))s.d=s.b.D2(b,t.z,t.K) +else throw A.d(A.aM(u.db,null))}, +bb1(a){var s,r,q,p,o,n,m=this,l=m.c +if(l==null)return +s=null +try{s=m.$ti.y[1].a(a)}catch(o){r=A.ag(o) +q=A.aD(o) +p=m.d +if(p==null)m.b.qp(r,q) +else{l=t.K +n=m.b +if(t.hK.b(p))n.ZA(p,r,q,l,t.Km) +else n.D7(t.mX.a(p),r,l)}return}m.b.D7(l,s,m.$ti.y[1])}, +iH(a,b){this.a.iH(0,b)}, +f2(a){return this.iH(0,null)}, +nj(a){this.a.nj(0)}, +$ioH:1} +A.HE.prototype={ +p8(a,b,c){var s=this.$ti +return new A.HE(this.a,s.h("@<1>").a1(s.y[1]).a1(b).a1(c).h("HE<1,2,3,4>"))}} +A.HB.prototype={ +cD(a){var s=this.$ti +return s.y[3].a(this.a.cD(s.c.a(a)))}, +p8(a,b,c){var s=this.$ti +return new A.HB(this.a,s.h("@<1>").a1(s.y[1]).a1(b).a1(c).h("HB<1,2,3,4>"))}} +A.aMz.prototype={ +B(a,b){var s,r,q=this,p=J.ao(b),o=p.gA(b) +if(o===0)return +s=q.a+o +if(q.b.length>>2 +s|=s>>>4 +s|=s>>>8 +p=((s|s>>>16)>>>0)+1}r=new Uint8Array(p) +q=this.b +B.p.cV(r,0,q.length,q) +this.b=r}, +ON(){var s,r,q=this,p=q.a +if(p===0)return $.OD() +s=q.b +r=A.dF(s.buffer,s.byteOffset,p) +q.a=0 +q.b=$.OD() +return r}, +HQ(){var s,r=this.a +if(r===0)return $.OD() +s=this.b +return new Uint8Array(A.f1(A.dF(s.buffer,s.byteOffset,r)))}, +gA(a){return this.a}, +gcU(a){return this.a!==0}, +V(a){this.a=0 +this.b=$.OD()}} +A.aLO.prototype={ +B(a,b){var s=t.E.b(b)?b:new Uint8Array(A.f1(b)) +this.b.push(s) +this.a=this.a+s.length}, +ON(){var s,r,q,p,o,n,m,l=this,k=l.a +if(k===0)return $.OD() +s=l.b +r=s.length +if(r===1){q=s[0] +l.a=0 +B.b.V(s) +return q}q=new Uint8Array(k) +for(p=0,o=0;o").a1(s.y[1]).h("aoE<1,2>"))}, +gA(a){return J.bn(this.gnB())}, +gad(a){return J.h3(this.gnB())}, +gcU(a){return J.iL(this.gnB())}, +my(a,b){var s=A.z(this) +return A.fw(J.amA(this.gnB(),b),s.c,s.y[1])}, +nl(a,b){var s=A.z(this) +return A.fw(J.cva(this.gnB(),b),s.c,s.y[1])}, +dE(a,b){return A.z(this).y[1].a(J.OG(this.gnB(),b))}, +ga2(a){return A.z(this).y[1].a(J.jD(this.gnB()))}, +gP(a){return A.z(this).y[1].a(J.kD(this.gnB()))}, +gcW(a){return A.z(this).y[1].a(J.ZB(this.gnB()))}, +p(a,b){return J.tr(this.gnB(),b)}, +k(a){return J.cw(this.gnB())}} +A.aoE.prototype={ +t(){return this.a.t()}, +gK(a){var s=this.a +return this.$ti.y[1].a(s.gK(s))}} +A.HC.prototype={ +jx(a,b){return A.fw(this.a,A.z(this).c,b)}, +gnB(){return this.a}} +A.aeu.prototype={$iaO:1} +A.adk.prototype={ +i(a,b){return this.$ti.y[1].a(J.aS(this.a,b))}, +n(a,b,c){J.id(this.a,b,this.$ti.c.a(c))}, +sA(a,b){J.d1n(this.a,b)}, +B(a,b){J.eQ(this.a,this.$ti.c.a(b))}, +L(a,b){var s=this.$ti +J.ZA(this.a,A.fw(b,s.y[1],s.c))}, +iL(a,b){var s=b==null?null:new A.bTZ(this,b) +J.OH(this.a,s)}, +eu(a,b,c){J.cv4(this.a,b,this.$ti.c.a(c))}, +F(a,b){return J.xM(this.a,b)}, +fE(a,b){return this.$ti.y[1].a(J.cED(this.a,b))}, +hX(a){return this.$ti.y[1].a(J.d1l(this.a))}, +wW(a,b){J.cEF(this.a,new A.bTY(this,b))}, +Dv(a,b,c){var s=this.$ti +return A.fw(J.d15(this.a,b,c),s.c,s.y[1])}, +dS(a,b,c,d,e){var s=this.$ti +J.cv9(this.a,b,c,A.fw(d,s.y[1],s.c),e)}, +cV(a,b,c,d){return this.dS(0,b,c,d,0)}, +fb(a,b,c,d){J.cv_(this.a,b,c,this.$ti.c.a(d))}, +$iaO:1, +$ix:1} +A.bTZ.prototype={ +$2(a,b){var s=this.a.$ti.y[1] +return this.b.$2(s.a(a),s.a(b))}, +$S(){return this.a.$ti.h("h(1,1)")}} +A.bTY.prototype={ +$1(a){return this.b.$1(this.a.$ti.y[1].a(a))}, +$S(){return this.a.$ti.h("A(1)")}} +A.ek.prototype={ +jx(a,b){return new A.ek(this.a,this.$ti.h("@<1>").a1(b).h("ek<1,2>"))}, +gnB(){return this.a}} +A.yf.prototype={ +jx(a,b){return new A.yf(this.a,this.b,this.$ti.h("@<1>").a1(b).h("yf<1,2>"))}, +B(a,b){return this.a.B(0,this.$ti.c.a(b))}, +L(a,b){var s=this.$ti +this.a.L(0,A.fw(b,s.y[1],s.c))}, +F(a,b){return this.a.F(0,b)}, +pq(a,b){var s,r=this +if(r.b!=null)return r.aYW(b,!0) +s=r.$ti +return new A.yf(r.a.pq(0,b),null,s.h("@<1>").a1(s.y[1]).h("yf<1,2>"))}, +aYW(a,b){var s,r=this.b,q=this.$ti,p=q.y[1],o=r==null?A.wh(p):r.$1$0(p) +for(p=this.a,p=p.gaz(p),q=q.y[1];p.t();){s=q.a(p.gK(p)) +if(b===a.p(0,s))o.B(0,s)}return o}, +V(a){this.a.V(0)}, +ai2(){var s=this.b,r=this.$ti.y[1],q=s==null?A.wh(r):s.$1$0(r) +q.L(0,this) +return q}, +jq(a){return this.ai2()}, +$iaO:1, +$ibU:1, +gnB(){return this.a}} +A.HD.prototype={ +p8(a,b,c){var s=this.$ti +return new A.HD(this.a,s.h("@<1>").a1(s.y[1]).a1(b).a1(c).h("HD<1,2,3,4>"))}, +aB(a,b){return J.vj(this.a,b)}, +i(a,b){return this.$ti.h("4?").a(J.aS(this.a,b))}, +n(a,b,c){var s=this.$ti +J.id(this.a,s.c.a(b),s.y[1].a(c))}, +cP(a,b,c){var s=this.$ti +return s.y[3].a(J.ZC(this.a,s.c.a(b),new A.b8F(this,c)))}, +F(a,b){return this.$ti.h("4?").a(J.xM(this.a,b))}, +V(a){J.amy(this.a)}, +aE(a,b){J.iK(this.a,new A.b8E(this,b))}, +gek(a){var s=this.$ti +return A.fw(J.GV(this.a),s.c,s.y[2])}, +gbm(a){var s=this.$ti +return A.fw(J.GW(this.a),s.y[1],s.y[3])}, +gA(a){return J.bn(this.a)}, +gad(a){return J.h3(this.a)}, +gcU(a){return J.iL(this.a)}, +gep(a){var s=J.BK(this.a) +return s.fK(s,new A.b8D(this),this.$ti.h("aY<3,4>"))}} +A.b8F.prototype={ +$0(){return this.a.$ti.y[1].a(this.b.$0())}, +$S(){return this.a.$ti.h("2()")}} +A.b8E.prototype={ +$2(a,b){var s=this.a.$ti +this.b.$2(s.y[2].a(a),s.y[3].a(b))}, +$S(){return this.a.$ti.h("~(1,2)")}} +A.b8D.prototype={ +$1(a){var s=this.a.$ti,r=s.y[3] +return new A.aY(s.y[2].a(a.a),r.a(a.b),s.h("@<3>").a1(r).h("aY<1,2>"))}, +$S(){return this.a.$ti.h("aY<3,4>(aY<1,2>)")}} +A.ye.prototype={ +jx(a,b){return new A.ye(this.a,this.$ti.h("@<1>").a1(b).h("ye<1,2>"))}, +$iaO:1, +gnB(){return this.a}} +A.qh.prototype={ +k(a){return"LateInitializationError: "+this.a}} +A.aCv.prototype={ +k(a){return"ReachabilityError: "+this.a}} +A.e0.prototype={ +gA(a){return this.a.length}, +i(a,b){return this.a.charCodeAt(b)}} +A.ct_.prototype={ +$0(){return A.dm(null,t.P)}, +$S:74} +A.bFk.prototype={} +A.aO.prototype={} +A.aa.prototype={ +gaz(a){var s=this +return new A.bj(s,s.gA(s),A.z(s).h("bj"))}, +aE(a,b){var s,r=this,q=r.gA(r) +for(s=0;s1)throw A.d(A.DO()) +return s.dE(0,0)}, +p(a,b){var s,r=this,q=r.gA(r) +for(s=0;s").a1(c).h("O<1,2>"))}, +i6(a,b){var s,r,q=this,p=q.gA(q) +if(p===0)throw A.d(A.dB()) +s=q.dE(0,0) +for(r=1;rs)throw A.d(A.e9(r,0,s,"start",null))}}, +gb0u(){var s=J.bn(this.a),r=this.c +if(r==null||r>s)return s +return r}, +gbiO(){var s=J.bn(this.a),r=this.b +if(r>s)return s +return r}, +gA(a){var s,r=J.bn(this.a),q=this.b +if(q>=r)return 0 +s=this.c +if(s==null||s>=r)return r-q +return s-q}, +dE(a,b){var s=this,r=s.gbiO()+b +if(b<0||r>=s.gb0u())throw A.d(A.ik(b,s.gA(0),s,null,"index")) +return J.OG(s.a,r)}, +my(a,b){var s,r,q=this +A.js(b,"count") +s=q.b+b +r=q.c +if(r!=null&&s>=r)return new A.m9(q.$ti.h("m9<1>")) +return A.fB(q.a,s,r,q.$ti.c)}, +nl(a,b){var s,r,q,p=this +A.js(b,"count") +s=p.c +r=p.b +q=r+b +if(s==null)return A.fB(p.a,r,q,p.$ti.c) +else{if(s=o){r.d=null +return!1}r.d=p.dE(q,s);++r.c +return!0}} +A.fW.prototype={ +gaz(a){var s=A.z(this) +return new A.c4(J.au(this.a),this.b,s.h("@<1>").a1(s.y[1]).h("c4<1,2>"))}, +gA(a){return J.bn(this.a)}, +gad(a){return J.h3(this.a)}, +ga2(a){return this.b.$1(J.jD(this.a))}, +gP(a){return this.b.$1(J.kD(this.a))}, +gcW(a){return this.b.$1(J.ZB(this.a))}, +dE(a,b){return this.b.$1(J.OG(this.a,b))}} +A.jJ.prototype={$iaO:1} +A.c4.prototype={ +t(){var s=this,r=s.b +if(r.t()){s.a=s.c.$1(r.gK(r)) +return!0}s.a=null +return!1}, +gK(a){var s=this.a +return s==null?this.$ti.y[1].a(s):s}} +A.O.prototype={ +gA(a){return J.bn(this.a)}, +dE(a,b){return this.b.$1(J.OG(this.a,b))}} +A.b1.prototype={ +gaz(a){return new A.i6(J.au(this.a),this.b,this.$ti.h("i6<1>"))}, +fK(a,b,c){return new A.fW(this,b,this.$ti.h("@<1>").a1(c).h("fW<1,2>"))}} +A.i6.prototype={ +t(){var s,r +for(s=this.a,r=this.b;s.t();)if(r.$1(s.gK(s)))return!0 +return!1}, +gK(a){var s=this.a +return s.gK(s)}} +A.eE.prototype={ +gaz(a){var s=this.$ti +return new A.De(J.au(this.a),this.b,B.mA,s.h("@<1>").a1(s.y[1]).h("De<1,2>"))}} +A.De.prototype={ +gK(a){var s=this.d +return s==null?this.$ti.y[1].a(s):s}, +t(){var s,r,q=this,p=q.c +if(p==null)return!1 +for(s=q.a,r=q.b;!p.t();){q.d=null +if(s.t()){q.c=null +p=J.au(r.$1(s.gK(s))) +q.c=p}else return!1}p=q.c +q.d=p.gK(p) +return!0}} +A.My.prototype={ +gaz(a){return new A.aFQ(J.au(this.a),this.b,A.z(this).h("aFQ<1>"))}} +A.a2r.prototype={ +gA(a){var s=J.bn(this.a),r=this.b +if(s>r)return r +return s}, +$iaO:1} +A.aFQ.prototype={ +t(){if(--this.b>=0)return this.a.t() +this.b=-1 +return!1}, +gK(a){var s +if(this.b<0){this.$ti.c.a(null) +return null}s=this.a +return s.gK(s)}} +A.aaG.prototype={ +gaz(a){return new A.aFR(J.au(this.a),this.b,this.$ti.h("aFR<1>"))}} +A.aFR.prototype={ +t(){var s,r=this +if(r.c)return!1 +s=r.a +if(!s.t()||!r.b.$1(s.gK(s))){r.c=!0 +return!1}return!0}, +gK(a){var s +if(this.c){this.$ti.c.a(null) +return null}s=this.a +return s.gK(s)}} +A.Ah.prototype={ +my(a,b){A.a5(b,"count") +A.js(b,"count") +return new A.Ah(this.a,this.b+b,A.z(this).h("Ah<1>"))}, +gaz(a){return new A.aEJ(J.au(this.a),this.b,A.z(this).h("aEJ<1>"))}} +A.QI.prototype={ +gA(a){var s=J.bn(this.a)-this.b +if(s>=0)return s +return 0}, +my(a,b){A.a5(b,"count") +A.js(b,"count") +return new A.QI(this.a,this.b+b,this.$ti)}, +$iaO:1} +A.aEJ.prototype={ +t(){var s,r +for(s=this.a,r=0;r"))}} +A.aEK.prototype={ +t(){var s,r,q=this +if(!q.c){q.c=!0 +for(s=q.a,r=q.b;s.t();)if(!r.$1(s.gK(s)))return!0}return q.a.t()}, +gK(a){var s=this.a +return s.gK(s)}} +A.m9.prototype={ +gaz(a){return B.mA}, +aE(a,b){}, +gad(a){return!0}, +gA(a){return 0}, +ga2(a){throw A.d(A.dB())}, +gP(a){throw A.d(A.dB())}, +gcW(a){throw A.d(A.dB())}, +dE(a,b){throw A.d(A.e9(b,0,0,"index",null))}, +p(a,b){return!1}, +bQ(a,b){return""}, +kW(a,b){return this}, +fK(a,b,c){return new A.m9(c.h("m9<0>"))}, +my(a,b){A.js(b,"count") +return this}, +nl(a,b){A.js(b,"count") +return this}, +ib(a,b){var s=this.$ti.c +return b?J.RW(0,s):J.JF(0,s)}, +eO(a){return this.ib(0,!0)}, +jq(a){return A.wh(this.$ti.c)}} +A.atm.prototype={ +t(){return!1}, +gK(a){throw A.d(A.dB())}} +A.yQ.prototype={ +gaz(a){return new A.auj(J.au(this.a),this.b,A.z(this).h("auj<1>"))}, +gA(a){return J.bn(this.a)+J.bn(this.b)}, +gad(a){return J.h3(this.a)&&J.h3(this.b)}, +gcU(a){return J.iL(this.a)||J.iL(this.b)}, +p(a,b){return J.tr(this.a,b)||J.tr(this.b,b)}, +ga2(a){var s=J.au(this.a) +if(s.t())return s.gK(s) +return J.jD(this.b)}, +gP(a){var s,r=J.au(this.b) +if(r.t()){s=r.gK(r) +for(;r.t();)s=r.gK(r) +return s}return J.kD(this.a)}} +A.a2q.prototype={ +dE(a,b){var s=this.a,r=J.ao(s),q=r.gA(s) +if(b"))}} +A.jW.prototype={ +t(){var s,r +for(s=this.a,r=this.$ti.c;s.t();)if(r.b(s.gK(s)))return!0 +return!1}, +gK(a){var s=this.a +return this.$ti.c.a(s.gK(s))}} +A.a37.prototype={ +sA(a,b){throw A.d(A.aq("Cannot change the length of a fixed-length list"))}, +B(a,b){throw A.d(A.aq("Cannot add to a fixed-length list"))}, +eu(a,b,c){throw A.d(A.aq("Cannot add to a fixed-length list"))}, +L(a,b){throw A.d(A.aq("Cannot add to a fixed-length list"))}, +F(a,b){throw A.d(A.aq("Cannot remove from a fixed-length list"))}, +wW(a,b){throw A.d(A.aq("Cannot remove from a fixed-length list"))}, +V(a){throw A.d(A.aq("Cannot clear a fixed-length list"))}, +fE(a,b){throw A.d(A.aq("Cannot remove from a fixed-length list"))}, +hX(a){throw A.d(A.aq("Cannot remove from a fixed-length list"))}} +A.aHb.prototype={ +n(a,b,c){throw A.d(A.aq("Cannot modify an unmodifiable list"))}, +sA(a,b){throw A.d(A.aq("Cannot change the length of an unmodifiable list"))}, +B(a,b){throw A.d(A.aq("Cannot add to an unmodifiable list"))}, +eu(a,b,c){throw A.d(A.aq("Cannot add to an unmodifiable list"))}, +L(a,b){throw A.d(A.aq("Cannot add to an unmodifiable list"))}, +F(a,b){throw A.d(A.aq("Cannot remove from an unmodifiable list"))}, +wW(a,b){throw A.d(A.aq("Cannot remove from an unmodifiable list"))}, +iL(a,b){throw A.d(A.aq("Cannot modify an unmodifiable list"))}, +V(a){throw A.d(A.aq("Cannot clear an unmodifiable list"))}, +fE(a,b){throw A.d(A.aq("Cannot remove from an unmodifiable list"))}, +hX(a){throw A.d(A.aq("Cannot remove from an unmodifiable list"))}, +dS(a,b,c,d,e){throw A.d(A.aq("Cannot modify an unmodifiable list"))}, +cV(a,b,c,d){return this.dS(0,b,c,d,0)}, +fb(a,b,c,d){throw A.d(A.aq("Cannot modify an unmodifiable list"))}} +A.Wh.prototype={} +A.aR0.prototype={ +gA(a){return J.bn(this.a)}, +dE(a,b){A.bnn(b,J.bn(this.a),this,null,null) +return b}} +A.l_.prototype={ +i(a,b){return this.aB(0,b)?J.aS(this.a,A.bZ(b)):null}, +gA(a){return J.bn(this.a)}, +gbm(a){return A.fB(this.a,0,null,this.$ti.c)}, +gek(a){return new A.aR0(this.a)}, +gad(a){return J.h3(this.a)}, +gcU(a){return J.iL(this.a)}, +aB(a,b){return A.bI(b)&&b>=0&&b>"))}, +bvu(a){var s=this +return function(){var r=a +var q=0,p=1,o,n,m,l +return function $async$gep(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:n=s.gek(s),n=n.gaz(n),m=A.z(s),m=m.h("@<1>").a1(m.y[1]).h("aY<1,2>") +case 2:if(!n.t()){q=3 +break}l=n.gK(n) +q=4 +return b.b=new A.aY(l,s.i(0,l),m),1 +case 4:q=2 +break +case 3:return 0 +case 1:return b.c=o,3}}}}, +qv(a,b,c,d){var s=A.N(c,d) +this.aE(0,new A.bay(this,b,s)) +return s}, +$iaN:1} +A.bay.prototype={ +$2(a,b){var s=this.b.$2(a,b) +this.c.n(0,s.a,s.b)}, +$S(){return A.z(this.a).h("~(1,2)")}} +A.y.prototype={ +gA(a){return this.b.length}, +gaoa(){var s=this.$keys +if(s==null){s=Object.keys(this.a) +this.$keys=s}return s}, +aB(a,b){if(typeof b!="string")return!1 +if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}, +i(a,b){if(!this.aB(0,b))return null +return this.b[this.a[b]]}, +aE(a,b){var s,r,q=this.gaoa(),p=this.b +for(s=q.length,r=0;r"))}, +gbm(a){return new A.NO(this.b,this.$ti.h("NO<2>"))}} +A.NO.prototype={ +gA(a){return this.a.length}, +gad(a){return 0===this.a.length}, +gcU(a){return 0!==this.a.length}, +gaz(a){var s=this.a +return new A.Gd(s,s.length,this.$ti.h("Gd<1>"))}} +A.Gd.prototype={ +gK(a){var s=this.d +return s==null?this.$ti.c.a(s):s}, +t(){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.a9.prototype={ +xM(){var s,r=this,q=r.$map +if(q==null){s=r.$ti +q=new A.JJ(s.h("@<1>").a1(s.y[1]).h("JJ<1,2>")) +A.cSv(r.a,q) +r.$map=q}return q}, +aB(a,b){return this.xM().aB(0,b)}, +i(a,b){return this.xM().i(0,b)}, +aE(a,b){this.xM().aE(0,b)}, +gek(a){var s=this.xM() +return new A.bR(s,A.z(s).h("bR<1>"))}, +gbm(a){return this.xM().gbm(0)}, +gA(a){return this.xM().a}} +A.a0X.prototype={ +V(a){A.apI()}, +B(a,b){A.apI()}, +L(a,b){A.apI()}, +F(a,b){A.apI()}, +OA(a){A.apI()}} +A.kd.prototype={ +gA(a){return this.b}, +gad(a){return this.b===0}, +gcU(a){return this.b!==0}, +gaz(a){var s,r=this,q=r.$keys +if(q==null){q=Object.keys(r.a) +r.$keys=q}s=q +return new A.Gd(s,s.length,r.$ti.h("Gd<1>"))}, +p(a,b){if(typeof b!="string")return!1 +if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}, +jq(a){return A.hh(this,this.$ti.c)}} +A.ix.prototype={ +gA(a){return this.a.length}, +gad(a){return this.a.length===0}, +gcU(a){return this.a.length!==0}, +gaz(a){var s=this.a +return new A.Gd(s,s.length,this.$ti.h("Gd<1>"))}, +xM(){var s,r,q,p,o=this,n=o.$map +if(n==null){s=o.$ti +n=new A.JJ(s.h("@<1>").a1(s.c).h("JJ<1,2>")) +for(s=o.a,r=s.length,q=0;q")}} +A.rv.prototype={ +gatj(){return[A.c6(this.$ti.c)]}, +$0(){return this.a.$1$0(this.$ti.y[0])}, +$1(a){return this.a.$1$1(a,this.$ti.y[0])}, +$2(a,b){return this.a.$1$2(a,b,this.$ti.y[0])}, +$S(){return A.cBE(A.alS(this.a),this.$ti)}} +A.a4v.prototype={ +gatj(){var s=this.$ti +return[A.c6(s.c),A.c6(s.y[1])]}, +$2(a,b){return this.a.$2$2(a,b,this.$ti.y[0],this.$ti.y[1])}, +$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name(a,b,c,d,e,f,g){return this.a.$2$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name(a,b,c,d,e,f,g,this.$ti.y[0],this.$ti.y[1])}, +$S(){return A.cBE(A.alS(this.a),this.$ti)}} +A.a4D.prototype={ +gbB0(){var s=this.a +if(s instanceof A.uC)return s +return this.a=new A.uC(s)}, +gbEb(){var s,r,q,p,o,n=this +if(n.c===1)return B.W +s=n.d +r=J.ao(s) +q=r.gA(s)-J.bn(n.e)-n.f +if(q===0)return B.W +p=[] +for(o=0;o>>0}, +k(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.byk(this.a)+"'")}} +A.aN1.prototype={ +k(a){return"Reading static variable '"+this.a+"' during its initialization"}} +A.aDT.prototype={ +k(a){return"RuntimeError: "+this.a}} +A.cdc.prototype={} +A.me.prototype={ +gA(a){return this.a}, +gad(a){return this.a===0}, +gcU(a){return this.a!==0}, +gek(a){return new A.bR(this,A.z(this).h("bR<1>"))}, +gbm(a){var s=A.z(this) +return A.nb(new A.bR(this,s.h("bR<1>")),new A.bo4(this),s.c,s.y[1])}, +aB(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.aB8(b)}, +aB8(a){var s=this.d +if(s==null)return!1 +return this.Ct(s[this.Cs(a)],a)>=0}, +bra(a,b){return new A.bR(this,A.z(this).h("bR<1>")).ef(0,new A.bo3(this,b))}, +L(a,b){J.iK(b,new A.bo2(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.aBa(b)}, +aBa(a){var s,r,q=this.d +if(q==null)return null +s=q[this.Cs(a)] +r=this.Ct(s,a) +if(r<0)return null +return s[r].b}, +n(a,b,c){var s,r,q=this +if(typeof b=="string"){s=q.b +q.aib(s==null?q.b=q.a4C():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c +q.aib(r==null?q.c=q.a4C():r,b,c)}else q.aBc(b,c)}, +aBc(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=p.a4C() +s=p.Cs(a) +r=o[s] +if(r==null)o[s]=[p.a4D(a,b)] +else{q=p.Ct(r,a) +if(q>=0)r[q].b=b +else r.push(p.a4D(a,b))}}, +cP(a,b,c){var s,r,q=this +if(q.aB(0,b)){s=q.i(0,b) +return s==null?A.z(q).y[1].a(s):s}r=c.$0() +q.n(0,b,r) +return r}, +F(a,b){var s=this +if(typeof b=="string")return s.aqE(s.b,b) +else if(typeof b=="number"&&(b&0x3fffffff)===b)return s.aqE(s.c,b) +else return s.aBb(b)}, +aBb(a){var s,r,q,p,o=this,n=o.d +if(n==null)return null +s=o.Cs(a) +r=n[s] +q=o.Ct(r,a) +if(q<0)return null +p=r.splice(q,1)[0] +o.atk(p) +if(r.length===0)delete n[s] +return p.b}, +V(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.a4y()}}, +aE(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.d(A.e1(s)) +r=r.c}}, +aib(a,b,c){var s=a[b] +if(s==null)a[b]=this.a4D(b,c) +else s.b=c}, +aqE(a,b){var s +if(a==null)return null +s=a[b] +if(s==null)return null +this.atk(s) +delete a[b] +return s.b}, +a4y(){this.r=this.r+1&1073741823}, +a4D(a,b){var s,r=this,q=new A.boY(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.a4y() +return q}, +atk(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.a4y()}, +Cs(a){return J.ab(a)&1073741823}, +Ct(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}} +A.bo4.prototype={ +$1(a){var s=this.a,r=s.i(0,a) +return r==null?A.z(s).y[1].a(r):r}, +$S(){return A.z(this.a).h("2(1)")}} +A.bo3.prototype={ +$1(a){return J.q(this.a.i(0,a),this.b)}, +$S(){return A.z(this.a).h("A(1)")}} +A.bo2.prototype={ +$2(a,b){this.a.n(0,a,b)}, +$S(){return A.z(this.a).h("~(1,2)")}} +A.boY.prototype={} +A.bR.prototype={ +gA(a){return this.a.a}, +gad(a){return this.a.a===0}, +gaz(a){var s=this.a,r=new A.Si(s,s.r,this.$ti.h("Si<1>")) +r.c=s.e +return r}, +p(a,b){return this.a.aB(0,b)}, +aE(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.d(A.e1(s)) +r=r.c}}} +A.Si.prototype={ +gK(a){return this.d}, +t(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.d(A.e1(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}} +A.a4G.prototype={ +Cs(a){return A.lZ(a)&1073741823}, +Ct(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.hi(j,k)}} +A.aUf.prototype={ +K3(){return[this.a,this.b]}, +l(a,b){if(b==null)return!1 +return b instanceof A.aUf&&this.$s===b.$s&&J.q(this.a,b.a)&&J.q(this.b,b.b)}, +gv(a){return A.ad(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.aUe.prototype={ +K3(){return[this.a]}, +l(a,b){if(b==null)return!1 +return b instanceof A.aUe&&this.$s===b.$s&&J.q(this.a,b.a)}, +gv(a){return A.ad(this.$s,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.aUg.prototype={ +K3(){return[this.a,this.b,this.c]}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.aUg&&s.$s===b.$s&&J.q(s.a,b.a)&&J.q(s.b,b.b)&&J.q(s.c,b.c)}, +gv(a){var s=this +return A.ad(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.aUh.prototype={ +K3(){return this.a}, +l(a,b){if(b==null)return!1 +return b instanceof A.aUh&&this.$s===b.$s&&A.dj2(this.a,b.a)}, +gv(a){return A.ad(this.$s,A.cs(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.u1.prototype={ +k(a){return"RegExp/"+this.a+"/"+this.b.flags}, +gap_(){var s=this,r=s.c +if(r!=null)return r +r=s.b +return s.c=A.cxE(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +gaoZ(){var s=this,r=s.d +if(r!=null)return r +r=s.b +return s.d=A.cxE(s.a+"|()",r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +im(a){var s=this.b.exec(a) +if(s==null)return null +return new A.XN(s)}, +agf(a){var s=this.im(a) +if(s!=null)return s.b[0] +return null}, +Lu(a,b,c){if(c<0||c>b.length)throw A.d(A.e9(c,0,b.length,null,null)) +return new A.aKq(this,b,c)}, +kt(a,b){return this.Lu(0,b,0)}, +a2N(a,b){var s,r=this.gap_() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.XN(s)}, +b0L(a,b){var s,r=this.gaoZ() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +if(s.pop()!=null)return null +return new A.XN(s)}, +NP(a,b,c){if(c<0||c>b.length)throw A.d(A.e9(c,0,b.length,null,null)) +return this.b0L(b,c)}, +abZ(a,b){return this.NP(0,b,0)}, +$iTt:1, +$ia7O:1} +A.XN.prototype={ +gee(a){return this.b.index}, +gdw(a){var s=this.b +return s.index+s[0].length}, +ex(a){return this.b[a]}, +i(a,b){return this.b[b]}, +gafe(){return this.b.length-1}, +bBr(a){var s,r=this.b.groups +if(r!=null){s=r[a] +if(s!=null||a in r)return s}throw A.d(A.ey(a,"name","Not a capture group name"))}, +$ic7:1, +$ia7P:1} +A.aKq.prototype={ +gaz(a){return new A.oO(this.a,this.b,this.c)}} +A.oO.prototype={ +gK(a){var s=this.d +return s==null?t.Qz.a(s):s}, +t(){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.a2N(m,s) +if(p!=null){n.d=p +o=p.gdw(0) +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.Vm.prototype={ +gdw(a){return this.a+this.c.length}, +i(a,b){if(b!==0)A.C(A.a7z(b,null,null)) +return this.c}, +gafe(){return 0}, +ex(a){if(a!==0)throw A.d(A.a7z(a,null,null)) +return this.c}, +$ic7:1, +gee(a){return this.a}} +A.aXh.prototype={ +gaz(a){return new A.cg4(this.a,this.b,this.c)}, +ga2(a){var s=this.b,r=this.a.indexOf(s,this.c) +if(r>=0)return new A.Vm(r,s) +throw A.d(A.dB())}} +A.cg4.prototype={ +t(){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.Vm(s,o) +q.c=r===q.c?r+1:r +return!0}, +gK(a){var s=this.d +s.toString +return s}} +A.bU_.prototype={ +aX(){var s=this.b +if(s===this)throw A.d(new A.qh("Local '"+this.a+"' has not been initialized.")) +return s}, +I(){var s=this.b +if(s===this)throw A.d(A.DT(this.a)) +return s}, +se9(a){var s=this +if(s.b!==s)throw A.d(new A.qh("Local '"+s.a+"' has already been initialized.")) +s.b=a}} +A.c2r.prototype={ +m0(){var s,r=this,q=r.b +if(q===r){s=r.c.$0() +if(r.b!==r)throw A.d(new A.qh("Local '"+r.a+u.N)) +r.b=s +q=s}return q}} +A.zu.prototype={ +gjp(a){return B.buc}, +avv(a,b,c){throw A.d(A.aq("Int64List not supported by dart2js."))}, +$ih0:1, +$izu:1, +$iaom:1} +A.kl.prototype={ +gaz_(a){return a.BYTES_PER_ELEMENT}, +b81(a,b,c,d){var s=A.e9(b,0,c,d,null) +throw A.d(s)}, +aju(a,b,c,d){if(b>>>0!==b||b>c)this.b81(a,b,c,d)}, +$ikl:1, +$iiE:1} +A.a63.prototype={ +gjp(a){return B.bud}, +gaz_(a){return 1}, +aeK(a,b,c){throw A.d(A.aq("Int64 accessor not supported by dart2js."))}, +b2G(a,b,c){return a.getUint32(b,c)}, +aJs(a,b,c){throw A.d(A.aq(u.u))}, +afE(a,b,c,d){throw A.d(A.aq("Int64 accessor not supported by dart2js."))}, +aLH(a,b,c,d){return a.setUint32(b,c,B.z===d)}, +aLG(a,b,c){return this.aLH(a,b,c,B.aF)}, +aLI(a,b,c,d){throw A.d(A.aq(u.u))}, +$ih0:1, +$iei:1} +A.SW.prototype={ +gA(a){return a.length}, +arQ(a,b,c,d,e){var s,r,q=a.length +this.aju(a,b,q,"start") +this.aju(a,c,q,"end") +if(b>c)throw A.d(A.e9(b,0,c,null,null)) +s=c-b +if(e<0)throw A.d(A.aM(e,null)) +r=d.length +if(r-e0){s=Date.now()-r.c +if(s>(p+1)*o)p=B.d.hf(s,o)}q.c=p +r.d.$1(q)}, +$S:13} +A.acH.prototype={ +d2(a,b){var s,r=this +if(b==null)b=r.$ti.c.a(b) +if(!r.b)r.a.nz(b) +else{s=r.a +if(r.$ti.h("a8<1>").b(b))s.ajh(b) +else s.AF(b)}}, +fw(a){return this.d2(0,null)}, +iy(a,b){var s +if(b==null)b=A.xW(a) +s=this.a +if(this.b)s.lu(a,b) +else s.Jv(a,b)}, +$iPS:1} +A.co4.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:25} +A.co5.prototype={ +$2(a,b){this.a.$2(1,new A.a2S(a,b))}, +$S:1331} +A.cqZ.prototype={ +$2(a,b){this.a(a,b)}, +$S:1345} +A.co2.prototype={ +$0(){var s,r=this.a,q=r.a +q===$&&A.b() +s=q.b +if((s&1)!==0?(q.gmU().e&4)!==0:(s&2)===0){r.b=!0 +return}this.b.$2(0,null)}, +$S:0} +A.co3.prototype={ +$1(a){var s=this.a.c!=null?2:0 +this.b.$2(s,null)}, +$S:49} +A.aKT.prototype={ +aVi(a,b){var s=new A.bRK(a) +this.a=A.lN(new A.bRM(this,a),new A.bRN(s),new A.bRO(this,s),!1,b)}} +A.bRK.prototype={ +$0(){A.j8(new A.bRL(this.a))}, +$S:13} +A.bRL.prototype={ +$0(){this.a.$2(0,null)}, +$S:0} +A.bRN.prototype={ +$0(){this.a.$0()}, +$S:0} +A.bRO.prototype={ +$0(){var s=this.a +if(s.b){s.b=!1 +this.b.$0()}}, +$S:0} +A.bRM.prototype={ +$0(){var s=this.a,r=s.a +r===$&&A.b() +if((r.b&4)===0){s.c=new A.ak($.at,t.LR) +if(s.b){s.b=!1 +A.j8(new A.bRJ(this.b))}return s.c}}, +$S:1347} +A.bRJ.prototype={ +$0(){this.a.$2(2,null)}, +$S:0} +A.afx.prototype={ +k(a){return"IterationMarker("+this.b+", "+A.r(this.a)+")"}} +A.dr.prototype={ +gK(a){return this.b}, +bgb(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}}, +t(){var s,r,q,p,o=this,n=null,m=0 +for(;!0;){s=o.d +if(s!=null)try{if(s.t()){o.b=J.d0T(s) +return!0}else o.d=null}catch(r){n=r +m=1 +o.d=null}q=o.bgb(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.cP3 +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.cP3 +throw n +return!1}o.a=p.pop() +m=1 +continue}throw A.d(A.a0("sync*"))}return!1}, +vL(a){var s,r,q=this +if(a instanceof A.dz){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.au(a) +return 2}}} +A.dz.prototype={ +gaz(a){return new A.dr(this.a(),this.$ti.h("dr<1>"))}} +A.a_j.prototype={ +k(a){return A.r(this.a)}, +$ie3:1, +gJ3(){return this.b}} +A.dw.prototype={ +glb(){return!0}} +A.Nw.prototype={ +tH(){}, +tI(){}} +A.AR.prototype={ +saCH(a,b){throw A.d(A.aq(u.t))}, +saCJ(a,b){throw A.d(A.aq(u.t))}, +gDP(a){return new A.dw(this,A.z(this).h("dw<1>"))}, +gob(){return this.c<4}, +aqG(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}, +a68(a,b,c,d){var s,r,q,p,o,n=this +if((n.c&4)!==0)return A.czW(c,A.z(n).c) +s=A.z(n) +r=$.at +q=d?1:0 +p=new A.Nw(n,A.ad8(r,a,s.c),A.ad9(r,b),A.aLG(r,c),r,q,s.h("Nw<1>")) +p.CW=p +p.ch=p +p.ay=n.c&1 +o=n.e +n.e=p +p.ch=null +p.CW=o +if(o==null)n.d=p +else o.ch=p +if(n.d===p)A.b1G(n.a) +return p}, +aqq(a){var s,r=this +A.z(r).h("Nw<1>").a(a) +if(a.ch===a)return null +s=a.ay +if((s&2)!==0)a.ay=s|4 +else{r.aqG(a) +if((r.c&2)===0&&r.d==null)r.a1H()}return null}, +aqs(a){}, +aqt(a){}, +o8(){if((this.c&4)!==0)return new A.px("Cannot add new events after calling close") +return new A.px("Cannot add new events while doing an addStream")}, +B(a,b){if(!this.gob())throw A.d(this.o8()) +this.kL(b)}, +h1(a,b){var s +A.hz(a,"error",t.K) +if(!this.gob())throw A.d(this.o8()) +s=$.at.C7(a,b) +if(s!=null){a=s.a +b=s.b}else if(b==null)b=A.xW(a) +this.vG(a,b)}, +m8(a){return this.h1(a,null)}, +aO(a){var s,r,q=this +if((q.c&4)!==0){s=q.r +s.toString +return s}if(!q.gob())throw A.d(q.o8()) +q.c|=4 +r=q.r +if(r==null)r=q.r=new A.ak($.at,t.W) +q.y4() +return r}, +Fj(a,b,c){var s,r=this +if(!r.gob())throw A.d(r.o8()) +r.c|=8 +s=A.dhh(r,b,!1,A.z(r).c) +r.f=s +return s.a}, +p_(a,b){return this.Fj(0,b,null)}, +l0(a,b){this.kL(b)}, +lX(a,b){this.vG(a,b)}, +r6(){var s=this.f +s.toString +this.f=null +this.c&=4294967287 +s.a.nz(null)}, +a35(a){var s,r,q,p=this,o=p.c +if((o&2)!==0)throw A.d(A.a0(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.aqG(s) +s.ay&=4294967293 +s=q}else s=s.ch}p.c&=4294967293 +if(p.d==null)p.a1H()}, +a1H(){if((this.c&4)!==0){var s=this.r +if((s.a&30)===0)s.nz(null)}A.b1G(this.b)}, +$ihW:1, +saCE(a){return this.a=a}, +sYi(a,b){return this.b=b}} +A.pK.prototype={ +gob(){return A.AR.prototype.gob.call(this)&&(this.c&2)===0}, +o8(){if((this.c&2)!==0)return new A.px(u.c) +return this.aRu()}, +kL(a){var s=this,r=s.d +if(r==null)return +if(r===s.e){s.c|=2 +r.l0(0,a) +s.c&=4294967293 +if(s.d==null)s.a1H() +return}s.a35(new A.chl(s,a))}, +vG(a,b){if(this.d==null)return +this.a35(new A.chn(this,a,b))}, +y4(){var s=this +if(s.d!=null)s.a35(new A.chm(s)) +else s.r.nz(null)}} +A.chl.prototype={ +$1(a){a.l0(0,this.b)}, +$S(){return this.a.$ti.h("~(iG<1>)")}} +A.chn.prototype={ +$1(a){a.lX(this.b,this.c)}, +$S(){return this.a.$ti.h("~(iG<1>)")}} +A.chm.prototype={ +$1(a){a.r6()}, +$S(){return this.a.$ti.h("~(iG<1>)")}} +A.h1.prototype={ +kL(a){var s,r +for(s=this.d,r=this.$ti.h("oP<1>");s!=null;s=s.ch)s.vo(new A.oP(a,r))}, +vG(a,b){var s +for(s=this.d;s!=null;s=s.ch)s.vo(new A.Xc(a,b))}, +y4(){var s=this.d +if(s!=null)for(;s!=null;s=s.ch)s.vo(B.mE) +else this.r.nz(null)}} +A.bjB.prototype={ +$0(){var s,r,q +try{this.a.r7(this.b.$0())}catch(q){s=A.ag(q) +r=A.aD(q) +A.b1q(this.a,s,r)}}, +$S:0} +A.bjA.prototype={ +$0(){var s,r,q +try{this.a.r7(this.b.$0())}catch(q){s=A.ag(q) +r=A.aD(q) +A.b1q(this.a,s,r)}}, +$S:0} +A.bjz.prototype={ +$0(){var s,r,q,p=this,o=p.a +if(o==null){p.c.a(null) +p.b.r7(null)}else try{p.b.r7(o.$0())}catch(q){s=A.ag(q) +r=A.aD(q) +A.b1q(p.b,s,r)}}, +$S:0} +A.bjD.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.lu(a,b) +else{s.e.b=a +s.f.b=b}}else if(q===0&&!s.c)s.d.lu(s.e.aX(),s.f.aX())}, +$S:32} +A.bjC.prototype={ +$1(a){var s,r=this,q=r.a;--q.b +s=q.a +if(s!=null){J.id(s,r.b,a) +if(q.b===0)r.c.AF(A.ew(s,!0,r.w))}else if(q.b===0&&!r.e)r.c.lu(r.f.aX(),r.r.aX())}, +$S(){return this.w.h("bd(0)")}} +A.bjy.prototype={ +$2(a,b){var s +if(this.a.b(a))s=!1 +else s=!0 +if(s)throw A.d(a) +return this.c.$2(a,b)}, +$S(){return this.d.h("0/(S,dC)")}} +A.bjx.prototype={ +$1(a){return a}, +$S(){return this.a.h("0(0)")}} +A.Ny.prototype={ +iy(a,b){var s +A.hz(a,"error",t.K) +if((this.a.a&30)!==0)throw A.d(A.a0("Future already completed")) +s=$.at.C7(a,b) +if(s!=null){a=s.a +b=s.b}else if(b==null)b=A.xW(a) +this.lu(a,b)}, +jh(a){return this.iy(a,null)}, +$iPS:1} +A.aI.prototype={ +d2(a,b){var s=this.a +if((s.a&30)!==0)throw A.d(A.a0("Future already completed")) +s.nz(b)}, +fw(a){return this.d2(0,null)}, +lu(a,b){this.a.Jv(a,b)}} +A.ajc.prototype={ +d2(a,b){var s=this.a +if((s.a&30)!==0)throw A.d(A.a0("Future already completed")) +s.r7(b)}, +fw(a){return this.d2(0,null)}, +lu(a,b){this.a.lu(a,b)}} +A.th.prototype={ +bAP(a){if((this.c&15)!==6)return!0 +return this.b.b.adu(this.d,a.a,t.y,t.K)}, +wl(a){var s,r=this.e,q=null,p=t.z,o=t.K,n=a.a,m=this.b.b +if(t.Hg.b(r))q=m.aFg(r,n,a.b,p,o,t.Km) +else q=m.adu(r,n,p,o) +try{p=q +return p}catch(s){if(t.os.b(A.ag(s))){if((this.c&1)!==0)throw A.d(A.aM("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.d(A.aM("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.ak.prototype={ +arJ(a){this.a=this.a&1|4 +this.c=a}, +ki(a,b,c){var s,r,q=$.at +if(q===B.bc){if(b!=null&&!t.Hg.b(b)&&!t.N2.b(b))throw A.d(A.ey(b,"onError",u.f_))}else{a=q.D2(a,c.h("0/"),this.$ti.c) +if(b!=null)b=A.cRa(b,q)}s=new A.ak($.at,c.h("ak<0>")) +r=b==null?1:3 +this.Ee(new A.th(s,r,a,b,this.$ti.h("@<1>").a1(c).h("th<1,2>"))) +return s}, +bf(a,b){return this.ki(a,null,b)}, +asS(a,b,c){var s=new A.ak($.at,c.h("ak<0>")) +this.Ee(new A.th(s,19,a,b,this.$ti.h("@<1>").a1(c).h("th<1,2>"))) +return s}, +BF(a,b){var s=this.$ti,r=$.at,q=new A.ak(r,s) +if(r!==B.bc){a=A.cRa(a,r) +if(b!=null)b=r.D2(b,t.y,t.K)}r=b==null?2:6 +this.Ee(new A.th(q,r,b,a,s.h("@<1>").a1(s.c).h("th<1,2>"))) +return q}, +mY(a){return this.BF(a,null)}, +j6(a){var s=this.$ti,r=$.at,q=new A.ak(r,s) +if(r!==B.bc)a=r.Zg(a,t.z) +this.Ee(new A.th(q,8,a,null,s.h("@<1>").a1(s.c).h("th<1,2>"))) +return q}, +bhJ(a){this.a=this.a&1|16 +this.c=a}, +Rp(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +Ee(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.Ee(a) +return}s.Rp(r)}s.b.vc(new A.c0H(s,a))}}, +a5a(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.a5a(a) +return}n.Rp(s)}m.a=n.Tv(a) +n.b.vc(new A.c0O(m,n))}}, +Tl(){var s=this.c +this.c=null +return this.Tv(s)}, +Tv(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +a1L(a){var s,r,q,p=this +p.a^=2 +try{a.ki(new A.c0L(p),new A.c0M(p),t.P)}catch(q){s=A.ag(q) +r=A.aD(q) +A.j8(new A.c0N(p,s,r))}}, +r7(a){var s,r=this,q=r.$ti +if(q.h("a8<1>").b(a))if(q.b(a))A.czY(a,r) +else r.a1L(a) +else{s=r.Tl() +r.a=8 +r.c=a +A.Xt(r,s)}}, +AF(a){var s=this,r=s.Tl() +s.a=8 +s.c=a +A.Xt(s,r)}, +lu(a,b){var s=this.Tl() +this.bhJ(A.b4e(a,b)) +A.Xt(this,s)}, +nz(a){if(this.$ti.h("a8<1>").b(a)){this.ajh(a) +return}this.aiH(a)}, +aiH(a){this.a^=2 +this.b.vc(new A.c0J(this,a))}, +ajh(a){if(this.$ti.b(a)){A.di4(a,this) +return}this.a1L(a)}, +Jv(a,b){this.a^=2 +this.b.vc(new A.c0I(this,a,b))}, +$ia8:1} +A.c0H.prototype={ +$0(){A.Xt(this.a,this.b)}, +$S:0} +A.c0O.prototype={ +$0(){A.Xt(this.b,this.a.a)}, +$S:0} +A.c0L.prototype={ +$1(a){var s,r,q,p=this.a +p.a^=2 +try{p.AF(p.$ti.c.a(a))}catch(q){s=A.ag(q) +r=A.aD(q) +p.lu(s,r)}}, +$S:49} +A.c0M.prototype={ +$2(a,b){this.a.lu(a,b)}, +$S:23} +A.c0N.prototype={ +$0(){this.a.lu(this.b,this.c)}, +$S:0} +A.c0K.prototype={ +$0(){A.czY(this.a.a,this.b)}, +$S:0} +A.c0J.prototype={ +$0(){this.a.AF(this.b)}, +$S:0} +A.c0I.prototype={ +$0(){this.a.lu(this.b,this.c)}, +$S:0} +A.c0R.prototype={ +$0(){var s,r,q,p,o,n,m=this,l=null +try{q=m.a.a +l=q.b.b.uW(q.d,t.z)}catch(p){s=A.ag(p) +r=A.aD(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.b4e(s,r) +o.b=!0 +return}if(l instanceof A.ak&&(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.bf(new A.c0S(n),t.z) +q.b=!1}}, +$S:0} +A.c0S.prototype={ +$1(a){return this.a}, +$S:1483} +A.c0Q.prototype={ +$0(){var s,r,q,p,o,n +try{q=this.a +p=q.a +o=p.$ti +q.c=p.b.b.adu(p.d,this.b,o.h("2/"),o.c)}catch(n){s=A.ag(n) +r=A.aD(n) +q=this.a +q.c=A.b4e(s,r) +q.b=!0}}, +$S:0} +A.c0P.prototype={ +$0(){var s,r,q,p,o,n,m=this +try{s=m.a.a.c +p=m.b +if(p.a.bAP(s)&&p.a.e!=null){p.c=p.a.wl(s) +p.b=!1}}catch(o){r=A.ag(o) +q=A.aD(o) +p=m.a.a.c +n=m.b +if(p.a===r)n.c=p +else n.c=A.b4e(r,q) +n.b=!0}}, +$S:0} +A.aKS.prototype={} +A.bg.prototype={ +glb(){return!1}, +bx1(a,b){var s +if(t.hK.b(a))s=a +else if(t.mX.b(a))s=new A.bIb(a) +else throw A.d(A.ey(a,"onError","Error handler must accept one Object or one Object and a StackTrace as arguments.")) +return new A.af0(s,b,this,A.z(this).h("af0"))}, +wl(a){return this.bx1(a,null)}, +bE1(a){return a.p_(0,this).bf(new A.bIe(a),t.z)}, +l8(a,b,c,d){var s,r={},q=new A.ak($.at,d.h("ak<0>")) +r.a=b +s=this.cl(null,!0,new A.bI9(r,q),q.gJH()) +s.lh(new A.bIa(r,this,c,s,q,d)) +return q}, +gA(a){var s={},r=new A.ak($.at,t.wJ) +s.a=0 +this.cl(new A.bIc(s,this),!0,new A.bId(s,r),r.gJH()) +return r}, +eO(a){var s=A.z(this),r=A.a([],s.h("D")),q=new A.ak($.at,s.h("ak>")) +this.cl(new A.bIf(this,r),!0,new A.bIg(q,r),q.gJH()) +return q}, +ga2(a){var s=new A.ak($.at,A.z(this).h("ak")),r=this.cl(null,!0,new A.bI5(s),s.gJH()) +r.lh(new A.bI6(this,r,s)) +return s}, +WV(a,b){var s=new A.ak($.at,A.z(this).h("ak")),r=this.cl(null,!0,new A.bI3(null,s),s.gJH()) +r.lh(new A.bI4(this,b,r,s)) +return s}} +A.bHX.prototype={ +$1(a){var s=this.a +s.l0(0,a) +s.JE()}, +$S(){return this.b.h("bd(0)")}} +A.bHY.prototype={ +$2(a,b){var s=this.a +s.lX(a,b) +s.JE()}, +$S:126} +A.bI_.prototype={ +$1(a){var s,r,q,p,o,n={} +n.a=null +try{q=this.a +n.a=new J.cP(q,q.length,A.X(q).h("cP<1>"))}catch(p){s=A.ag(p) +r=A.aD(p) +a.h1(s,r) +a.aO(0) +return}o=$.at +n.b=!0 +q=new A.bI0(n,a,o) +a.f=new A.bHZ(n,o,q) +o.vc(q)}, +$S(){return this.b.h("~(azS<0>)")}} +A.bI0.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this,j=k.b +if((j.b&1)!==0)n=(j.gmU().e&4)!==0 +else n=!0 +if(n){k.a.b=!1 +return}s=null +try{s=k.a.a.t()}catch(m){r=A.ag(m) +q=A.aD(m) +j.a75(r,q) +j.a8e() +return}if(s){try{n=k.a.a +l=n.d +j.av7(l==null?n.$ti.c.a(l):l)}catch(m){p=A.ag(m) +o=A.aD(m) +j.a75(p,o)}if((j.b&1)!==0){j=j.gmU().e +j=(j&4)===0}else j=!1 +if(j)k.c.vc(k) +else k.a.b=!1}else j.a8e()}, +$S:0} +A.bHZ.prototype={ +$0(){var s=this.a +if(!s.b){s.b=!0 +this.b.vc(this.c)}}, +$S:0} +A.bIb.prototype={ +$2(a,b){this.a.$1(a)}, +$S:32} +A.bIe.prototype={ +$1(a){return this.a.aO(0)}, +$S:463} +A.bI9.prototype={ +$0(){this.b.r7(this.a.a)}, +$S:0} +A.bIa.prototype={ +$1(a){var s=this,r=s.a,q=s.f +A.cRh(new A.bI7(r,s.c,a,q),new A.bI8(r,q),A.cPH(s.d,s.e))}, +$S(){return A.z(this.b).h("~(bg.T)")}} +A.bI7.prototype={ +$0(){return this.b.$2(this.a.a,this.c)}, +$S(){return this.d.h("0()")}} +A.bI8.prototype={ +$1(a){this.a.a=a}, +$S(){return this.b.h("bd(0)")}} +A.bIc.prototype={ +$1(a){++this.a.a}, +$S(){return A.z(this.b).h("~(bg.T)")}} +A.bId.prototype={ +$0(){this.b.r7(this.a.a)}, +$S:0} +A.bIf.prototype={ +$1(a){this.b.push(a)}, +$S(){return A.z(this.a).h("~(bg.T)")}} +A.bIg.prototype={ +$0(){this.a.r7(this.b)}, +$S:0} +A.bI5.prototype={ +$0(){var s,r,q,p +try{q=A.dB() +throw A.d(q)}catch(p){s=A.ag(p) +r=A.aD(p) +A.b1q(this.a,s,r)}}, +$S:0} +A.bI6.prototype={ +$1(a){A.cPI(this.b,this.c,a)}, +$S(){return A.z(this.a).h("~(bg.T)")}} +A.bI3.prototype={ +$0(){var s,r,q,p +try{q=A.dB() +throw A.d(q)}catch(p){s=A.ag(p) +r=A.aD(p) +A.b1q(this.b,s,r)}}, +$S:0} +A.bI4.prototype={ +$1(a){var s=this.c,r=this.d +A.cRh(new A.bI1(this.b,a),new A.bI2(s,r,a),A.cPH(s,r))}, +$S(){return A.z(this.a).h("~(bg.T)")}} +A.bI1.prototype={ +$0(){return this.a.$1(this.b)}, +$S:3} +A.bI2.prototype={ +$1(a){if(a)A.cPI(this.a,this.b,this.c)}, +$S:132} +A.aad.prototype={ +glb(){return this.a.glb()}, +cl(a,b,c,d){return this.a.cl(a,b,c,d)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.jx.prototype={ +p8(a,b,c){var s=A.z(this) +return new A.HE(this,s.h("@").a1(s.h("jx.T")).a1(b).a1(c).h("HE<1,2,3,4>"))}} +A.Gv.prototype={ +gDP(a){return new A.dI(this,A.z(this).h("dI<1>"))}, +gbdI(){if((this.b&8)===0)return this.a +return this.a.c}, +Er(){var s,r,q=this +if((q.b&8)===0){s=q.a +return s==null?q.a=new A.Go(A.z(q).h("Go<1>")):s}r=q.a +s=r.c +return s==null?r.c=new A.Go(A.z(q).h("Go<1>")):s}, +gmU(){var s=this.a +return(this.b&8)!==0?s.c:s}, +tz(){if((this.b&4)!==0)return new A.px("Cannot add event after closing") +return new A.px("Cannot add event while adding a stream")}, +Fj(a,b,c){var s,r,q,p=this,o=p.b +if(o>=4)throw A.d(p.tz()) +if((o&2)!==0){o=new A.ak($.at,t.LR) +o.nz(null) +return o}o=p.a +s=c===!0 +r=new A.ak($.at,t.LR) +q=s?A.dhi(p):p.ga1j() +q=b.cl(p.ga1h(p),s,p.ga2_(),q) +s=p.b +if((s&1)!==0?(p.gmU().e&4)!==0:(s&2)===0)q.f2(0) +p.a=new A.aj_(o,r,q,A.z(p).h("aj_<1>")) +p.b|=8 +return r}, +p_(a,b){return this.Fj(0,b,null)}, +ald(){var s=this.c +if(s==null)s=this.c=(this.b&2)!==0?$.GQ():new A.ak($.at,t.W) +return s}, +B(a,b){if(this.b>=4)throw A.d(this.tz()) +this.l0(0,b)}, +h1(a,b){var s +A.hz(a,"error",t.K) +if(this.b>=4)throw A.d(this.tz()) +s=$.at.C7(a,b) +if(s!=null){a=s.a +b=s.b}else if(b==null)b=A.xW(a) +this.lX(a,b)}, +m8(a){return this.h1(a,null)}, +aO(a){var s=this,r=s.b +if((r&4)!==0)return s.ald() +if(r>=4)throw A.d(s.tz()) +s.JE() +return s.ald()}, +JE(){var s=this.b|=4 +if((s&1)!==0)this.y4() +else if((s&3)===0)this.Er().B(0,B.mE)}, +l0(a,b){var s=this,r=s.b +if((r&1)!==0)s.kL(b) +else if((r&3)===0)s.Er().B(0,new A.oP(b,A.z(s).h("oP<1>")))}, +lX(a,b){var s=this.b +if((s&1)!==0)this.vG(a,b) +else if((s&3)===0)this.Er().B(0,new A.Xc(a,b))}, +r6(){var s=this.a +this.a=s.c +this.b&=4294967287 +s.a.nz(null)}, +a68(a,b,c,d){var s,r,q,p,o=this +if((o.b&3)!==0)throw A.d(A.a0("Stream has already been listened to.")) +s=A.dhD(o,a,b,c,d,A.z(o).c) +r=o.gbdI() +q=o.b|=1 +if((q&8)!==0){p=o.a +p.c=s +p.b.nj(0)}else o.a=s +s.bhK(r) +s.a3l(new A.cg1(o)) +return s}, +aqq(a){var s,r,q,p,o,n,m,l=this,k=null +if((l.b&8)!==0)k=l.a.ao(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.ag(o) +p=A.aD(o) +n=new A.ak($.at,t.W) +n.Jv(q,p) +k=n}else k=k.j6(s) +m=new A.cg0(l) +if(k!=null)k=k.j6(m) +else m.$0() +return k}, +aqs(a){if((this.b&8)!==0)this.a.b.f2(0) +A.b1G(this.e)}, +aqt(a){if((this.b&8)!==0)this.a.b.nj(0) +A.b1G(this.f)}, +$ihW:1, +saCE(a){return this.d=a}, +saCH(a,b){return this.e=b}, +saCJ(a,b){return this.f=b}, +sYi(a,b){return this.r=b}} +A.cg1.prototype={ +$0(){A.b1G(this.a.d)}, +$S:0} +A.cg0.prototype={ +$0(){var s=this.a.c +if(s!=null&&(s.a&30)===0)s.nz(null)}, +$S:0} +A.aXC.prototype={ +kL(a){this.gmU().l0(0,a)}, +vG(a,b){this.gmU().lX(a,b)}, +y4(){this.gmU().r6()}} +A.acI.prototype={ +kL(a){this.gmU().vo(new A.oP(a,A.z(this).h("oP<1>")))}, +vG(a,b){this.gmU().vo(new A.Xc(a,b))}, +y4(){this.gmU().vo(B.mE)}} +A.td.prototype={} +A.Gw.prototype={} +A.dI.prototype={ +gv(a){return(A.ef(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.dI&&b.a===this.a}} +A.G6.prototype={ +ST(){return this.w.aqq(this)}, +tH(){this.w.aqs(this)}, +tI(){this.w.aqt(this)}} +A.WT.prototype={ +ao(a){var s=this.b.ao(0) +return s.j6(new A.bQU(this))}} +A.bQV.prototype={ +$2(a,b){var s=this.a +s.lX(a,b) +s.r6()}, +$S:23} +A.bQU.prototype={ +$0(){this.a.a.nz(null)}, +$S:13} +A.aj_.prototype={} +A.iG.prototype={ +bhK(a){var s=this +if(a==null)return +s.r=a +if(a.c!=null){s.e=(s.e|64)>>>0 +a.PX(s)}}, +lh(a){this.a=A.ad8(this.d,a,A.z(this).h("iG.T"))}, +Hd(a,b){this.b=A.ad9(this.d,b)}, +iH(a,b){var s,r=this,q=r.e +if((q&8)!==0)return +r.e=(q+128|4)>>>0 +if(b!=null)b.j6(r.gadt(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.a3l(r.gKz())}, +f2(a){return this.iH(0,null)}, +nj(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.PX(s) +else{r=(r&4294967291)>>>0 +s.e=r +if((r&32)===0)s.a3l(s.gKA())}}}, +ao(a){var s=this,r=(s.e&4294967279)>>>0 +s.e=r +if((r&8)===0)s.a1I() +r=s.f +return r==null?$.GQ():r}, +a1I(){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.ST()}, +l0(a,b){var s=this,r=s.e +if((r&8)!==0)return +if(r<32)s.kL(b) +else s.vo(new A.oP(b,A.z(s).h("oP")))}, +lX(a,b){var s=this.e +if((s&8)!==0)return +if(s<32)this.vG(a,b) +else this.vo(new A.Xc(a,b))}, +r6(){var s=this,r=s.e +if((r&8)!==0)return +r=(r|2)>>>0 +s.e=r +if(r<32)s.y4() +else s.vo(B.mE)}, +tH(){}, +tI(){}, +ST(){return null}, +vo(a){var s,r=this,q=r.r +if(q==null)q=r.r=new A.Go(A.z(r).h("Go")) +q.B(0,a) +s=r.e +if((s&64)===0){s=(s|64)>>>0 +r.e=s +if(s<128)q.PX(r)}}, +kL(a){var s=this,r=s.e +s.e=(r|32)>>>0 +s.d.D7(s.a,a,A.z(s).h("iG.T")) +s.e=(s.e&4294967263)>>>0 +s.a1R((r&4)!==0)}, +vG(a,b){var s,r=this,q=r.e,p=new A.bTh(r,a,b) +if((q&1)!==0){r.e=(q|16)>>>0 +r.a1I() +s=r.f +if(s!=null&&s!==$.GQ())s.j6(p) +else p.$0()}else{p.$0() +r.a1R((q&4)!==0)}}, +y4(){var s,r=this,q=new A.bTg(r) +r.a1I() +r.e=(r.e|16)>>>0 +s=r.f +if(s!=null&&s!==$.GQ())s.j6(q) +else q.$0()}, +a3l(a){var s=this,r=s.e +s.e=(r|32)>>>0 +a.$0() +s.e=(s.e&4294967263)>>>0 +s.a1R((r&4)!==0)}, +a1R(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.tH() +else q.tI() +p=(q.e&4294967263)>>>0 +q.e=p}if((p&64)!==0&&p<128)q.r.PX(q)}, +$ioH:1} +A.bTh.prototype={ +$0(){var s,r,q,p=this.a,o=p.e +if((o&8)!==0&&(o&16)===0)return +p.e=(o|32)>>>0 +s=p.b +o=this.b +r=t.K +q=p.d +if(t.hK.b(s))q.ZA(s,o,this.c,r,t.Km) +else q.D7(s,o,r) +p.e=(p.e&4294967263)>>>0}, +$S:0} +A.bTg.prototype={ +$0(){var s=this.a,r=s.e +if((r&16)===0)return +s.e=(r|42)>>>0 +s.d.OL(s.c) +s.e=(s.e&4294967263)>>>0}, +$S:0} +A.YM.prototype={ +cl(a,b,c,d){return this.a.a68(a,d,c,b===!0)}, +eB(a){return this.cl(a,null,null,null)}, +rN(a,b){return this.cl(a,null,null,b)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.aNq.prototype={ +gmo(a){return this.a}, +smo(a,b){return this.a=b}} +A.oP.prototype={ +kT(a){a.kL(this.b)}} +A.Xc.prototype={ +kT(a){a.vG(this.b,this.c)}} +A.bXy.prototype={ +kT(a){a.y4()}, +gmo(a){return null}, +smo(a,b){throw A.d(A.a0("No events after a done."))}} +A.Go.prototype={ +PX(a){var s=this,r=s.a +if(r===1)return +if(r>=1){s.a=1 +return}A.j8(new A.c9t(s,a)) +s.a=1}, +B(a,b){var s=this,r=s.c +if(r==null)s.b=s.c=b +else{r.smo(0,b) +s.c=b}}} +A.c9t.prototype={ +$0(){var s,r,q=this.a,p=q.a +q.a=0 +if(p===3)return +s=q.b +r=s.gmo(s) +q.b=r +if(r==null)q.c=null +s.kT(this.b)}, +$S:0} +A.Xg.prototype={ +lh(a){}, +Hd(a,b){}, +iH(a,b){var s=this,r=s.a +if(r>=0){s.a=r+2 +if(b!=null)b.j6(s.gadt(s))}}, +f2(a){return this.iH(0,null)}, +nj(a){var s=this,r=s.a-2 +if(r<0)return +if(r===0){s.a=1 +A.j8(s.gapk())}else s.a=r}, +ao(a){this.a=-1 +this.c=null +return $.GQ()}, +bbO(){var s,r=this,q=r.a-1 +if(q===0){r.a=-1 +s=r.c +if(s!=null){r.c=null +r.b.OL(s)}}else r.a=q}, +$ioH:1} +A.qZ.prototype={ +gK(a){if(this.c)return this.b +return null}, +t(){var s,r=this,q=r.a +if(q!=null){if(r.c){s=new A.ak($.at,t.tq) +r.b=s +r.c=!1 +q.nj(0) +return s}throw A.d(A.a0("Already waiting for next."))}return r.b7M()}, +b7M(){var s,r,q=this,p=q.b +if(p!=null){s=new A.ak($.at,t.tq) +q.b=s +r=p.cl(q.gaWg(),!0,q.gbb4(),q.gbbe()) +if(q.b!=null)q.a=r +return s}return $.cWa()}, +ao(a){var s=this,r=s.a,q=s.b +s.b=null +if(r!=null){s.a=null +if(!s.c)q.nz(!1) +else s.c=!1 +return r.ao(0)}return $.GQ()}, +aWh(a){var s,r,q=this +if(q.a==null)return +s=q.b +q.b=a +q.c=!0 +s.r7(!0) +if(q.c){r=q.a +if(r!=null)r.f2(0)}}, +bbf(a,b){var s=this,r=s.a,q=s.b +s.b=s.a=null +if(r!=null)q.lu(a,b) +else q.Jv(a,b)}, +bb5(){var s=this,r=s.a,q=s.b +s.b=s.a=null +if(r!=null)q.AF(!1) +else q.aiH(!1)}} +A.B0.prototype={ +cl(a,b,c,d){return A.czW(c,this.$ti.c)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}, +glb(){return!0}} +A.NS.prototype={ +cl(a,b,c,d){var s=null,r=new A.agg(s,s,s,s,this.$ti.h("agg<1>")) +r.d=new A.c7y(this,r) +return r.a68(a,d,c,b===!0)}, +eB(a){return this.cl(a,null,null,null)}, +rN(a,b){return this.cl(a,null,null,b)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}, +glb(){return this.a}} +A.c7y.prototype={ +$0(){this.a.b.$1(this.b)}, +$S:0} +A.agg.prototype={ +av7(a){var s=this.b +if(s>=4)throw A.d(this.tz()) +if((s&1)!==0)this.gmU().l0(0,a)}, +a75(a,b){var s=this.b +if(s>=4)throw A.d(this.tz()) +if((s&1)!==0){s=this.gmU() +s.lX(a,b==null?B.a0_:b)}}, +a8e(){var s=this,r=s.b +if((r&4)!==0)return +if(r>=4)throw A.d(s.tz()) +r|=4 +s.b=r +if((r&1)!==0)s.gmU().r6()}, +gDP(a){throw A.d(A.aq("Not available"))}, +$iazS:1} +A.coh.prototype={ +$0(){return this.a.lu(this.b,this.c)}, +$S:0} +A.cog.prototype={ +$2(a,b){A.dkm(this.a,this.b,a,b)}, +$S:32} +A.coi.prototype={ +$0(){return this.a.r7(this.b)}, +$S:0} +A.jY.prototype={ +glb(){return this.a.glb()}, +cl(a,b,c,d){return this.a2n(a,d,c,b===!0)}, +eB(a){return this.cl(a,null,null,null)}, +rN(a,b){return this.cl(a,null,null,b)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}, +a2n(a,b,c,d){var s=A.z(this) +return A.di2(this,a,b,c,d,s.h("jY.S"),s.h("jY.T"))}, +amZ(a,b,c){c.lX(a,b)}} +A.G9.prototype={ +ahY(a,b,c,d,e,f,g){var s=this +s.x=s.w.a.jH(s.ga3q(),s.ga3s(),s.ga3y())}, +l0(a,b){if((this.e&2)!==0)return +this.Ji(0,b)}, +lX(a,b){if((this.e&2)!==0)return +this.E8(a,b)}, +tH(){var s=this.x +if(s!=null)s.f2(0)}, +tI(){var s=this.x +if(s!=null)s.nj(0)}, +ST(){var s=this.x +if(s!=null){this.x=null +return s.ao(0)}return null}, +a3r(a){this.w.K9(a,this)}, +a3z(a,b){this.w.amZ(a,b,this)}, +a3t(){this.r6()}} +A.oX.prototype={ +K9(a,b){var s,r,q,p=null +try{p=this.b.$1(a)}catch(q){s=A.ag(q) +r=A.aD(q) +A.b1o(b,s,r) +return}if(p)b.l0(0,a)}} +A.ft.prototype={ +K9(a,b){var s,r,q,p=null +try{p=this.b.$1(a)}catch(q){s=A.ag(q) +r=A.aD(q) +A.b1o(b,s,r) +return}b.l0(0,p)}} +A.af0.prototype={ +K9(a,b){b.l0(0,a)}, +amZ(a,b,c){var s,r,q,p,o,n=!0,m=this.c +if(m!=null)try{n=m.$1(a)}catch(o){s=A.ag(o) +r=A.aD(o) +A.b1o(c,s,r) +return}if(n)try{this.b.$2(a,b)}catch(o){q=A.ag(o) +p=A.aD(o) +if(q===a)c.lX(a,b) +else A.b1o(c,q,p) +return}else c.lX(a,b)}} +A.ajm.prototype={ +a2n(a,b,c,d){var s=this,r=s.b +if(r===0){s.a.eB(null).ao(0) +return A.czW(c,s.$ti.c)}return A.cP0(s,a,b,c,d,r,t.S,s.$ti.c)}, +K9(a,b){var s +this.$ti.h("Ob").a(b) +s=b.ch +if(s>0){b.l0(0,a);--s +b.ch=s +if(s===0)b.r6()}}} +A.Ob.prototype={} +A.lW.prototype={ +a2n(a,b,c,d){return A.cP0(this,a,b,c,d,$.cDa(),t.X,this.$ti.c)}, +K9(a,b){var s,r,q,p,o,n,m,l=this.$ti +l.h("Ob").a(b) +n=b.ch +if(n===$.cDa()){b.ch=a +b.l0(0,a)}else{s=l.c.a(n) +r=this.b +q=null +try{if(r==null)q=J.q(s,a) +else q=r.$2(s,a)}catch(m){p=A.ag(m) +o=A.aD(m) +A.b1o(b,p,o) +return}if(!q){b.l0(0,a) +b.ch=a}}}} +A.Xn.prototype={ +B(a,b){var s=this.a +if((s.e&2)!==0)A.C(A.a0("Stream is already closed")) +s.Ji(0,b)}, +h1(a,b){var s=this.a,r=b==null?A.xW(a):b +if((s.e&2)!==0)A.C(A.a0("Stream is already closed")) +s.E8(a,r)}, +m8(a){return this.h1(a,null)}, +aO(a){var s=this.a +if((s.e&2)!==0)A.C(A.a0("Stream is already closed")) +s.ahB()}, +$ihW:1} +A.YG.prototype={ +tH(){var s=this.x +if(s!=null)s.f2(0)}, +tI(){var s=this.x +if(s!=null)s.nj(0)}, +ST(){var s=this.x +if(s!=null){this.x=null +return s.ao(0)}return null}, +a3r(a){var s,r,q,p +try{q=this.w +q===$&&A.b() +q.B(0,a)}catch(p){s=A.ag(p) +r=A.aD(p) +if((this.e&2)!==0)A.C(A.a0("Stream is already closed")) +this.E8(s,r)}}, +a3z(a,b){var s,r,q,p,o=this,n="Stream is already closed" +try{q=o.w +q===$&&A.b() +q.h1(a,b)}catch(p){s=A.ag(p) +r=A.aD(p) +if(s===a){if((o.e&2)!==0)A.C(A.a0(n)) +o.E8(a,b)}else{if((o.e&2)!==0)A.C(A.a0(n)) +o.E8(s,r)}}}, +a3t(){var s,r,q,p,o=this +try{o.x=null +q=o.w +q===$&&A.b() +q.aO(0)}catch(p){s=A.ag(p) +r=A.aD(p) +if((o.e&2)!==0)A.C(A.a0("Stream is already closed")) +o.E8(s,r)}}} +A.YN.prototype={ +u3(a){var s=this.$ti +return new A.ad6(this.a,a,s.h("@<1>").a1(s.y[1]).h("ad6<1,2>"))}} +A.ad6.prototype={ +glb(){return this.b.glb()}, +cl(a,b,c,d){var s=this.$ti,r=s.y[1],q=$.at,p=b===!0?1:0,o=new A.YG(A.ad8(q,a,r),A.ad9(q,d),A.aLG(q,c),q,p,s.h("@<1>").a1(r).h("YG<1,2>")) +o.w=this.a.$1(new A.Xn(o,s.h("Xn<2>"))) +o.x=this.b.jH(o.ga3q(),o.ga3s(),o.ga3y()) +return o}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.NK.prototype={ +B(a,b){var s=this.d +if(s==null)throw A.d(A.a0("Sink is closed")) +this.a.$2(b,s)}, +h1(a,b){var s +A.hz(a,"error",t.K) +s=this.d +if(s==null)throw A.d(A.a0("Sink is closed")) +s.h1(a,b==null?A.xW(a):b)}, +m8(a){return this.h1(a,null)}, +aO(a){var s,r=this.d +if(r==null)return +this.d=null +s=r.a +if((s.e&2)!==0)A.C(A.a0("Stream is already closed")) +s.ahB()}, +$ihW:1} +A.aj0.prototype={ +u3(a){return this.aSH(a)}} +A.cg2.prototype={ +$1(a){var s=this +return new A.NK(s.a,s.b,s.c,a,s.e.h("@<0>").a1(s.d).h("NK<1,2>"))}, +$S(){return this.e.h("@<0>").a1(this.d).h("NK<1,2>(hW<2>)")}} +A.b_i.prototype={} +A.b_h.prototype={$iNr:1} +A.cqd.prototype={ +$0(){A.atA(this.a,this.b)}, +$S:0} +A.ai0.prototype={ +gbgO(){return B.bAS}, +gGk(){return this}, +OL(a){var s,r,q +try{if(B.bc===$.at){a.$0() +return}A.cRd(null,null,this,a)}catch(q){s=A.ag(q) +r=A.aD(q) +A.cqc(s,r)}}, +D7(a,b){var s,r,q +try{if(B.bc===$.at){a.$1(b) +return}A.cRf(null,null,this,a,b)}catch(q){s=A.ag(q) +r=A.aD(q) +A.cqc(s,r)}}, +ZA(a,b,c){var s,r,q +try{if(B.bc===$.at){a.$2(b,c) +return}A.cRe(null,null,this,a,b,c)}catch(q){s=A.ag(q) +r=A.aD(q) +A.cqc(s,r)}}, +bnu(a,b){return new A.cdo(this,a,b)}, +bnt(a,b,c,d){return new A.cdm(this,a,c,d,b)}, +a7x(a){return new A.cdn(this,a)}, +a7y(a,b){return new A.cdp(this,a,b)}, +i(a,b){return null}, +qp(a,b){A.cqc(a,b)}, +uW(a){if($.at===B.bc)return a.$0() +return A.cRd(null,null,this,a)}, +adu(a,b){if($.at===B.bc)return a.$1(b) +return A.cRf(null,null,this,a,b)}, +aFg(a,b,c){if($.at===B.bc)return a.$2(b,c) +return A.cRe(null,null,this,a,b,c)}, +Zg(a){return a}, +D2(a){return a}, +Oz(a){return a}, +C7(a,b){return null}, +vc(a){A.cqe(null,null,this,a)}, +ayc(a,b){return A.cN0(a,b)}, +ay3(a,b){return A.dfo(a,b)}} +A.cdo.prototype={ +$0(){return this.a.uW(this.b,this.c)}, +$S(){return this.c.h("0()")}} +A.cdm.prototype={ +$2(a,b){var s=this +return s.a.aFg(s.b,a,b,s.e,s.c,s.d)}, +$S(){return this.e.h("@<0>").a1(this.c).a1(this.d).h("1(2,3)")}} +A.cdn.prototype={ +$0(){return this.a.OL(this.b)}, +$S:0} +A.cdp.prototype={ +$1(a){return this.a.D7(this.b,a,this.c)}, +$S(){return this.c.h("~(0)")}} +A.B3.prototype={ +gA(a){return this.a}, +gad(a){return this.a===0}, +gcU(a){return this.a!==0}, +gek(a){return new A.B4(this,A.z(this).h("B4<1>"))}, +gbm(a){var s=A.z(this) +return A.nb(new A.B4(this,s.h("B4<1>")),new A.c1x(this),s.c,s.y[1])}, +aB(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.Ek(b)}, +Ek(a){var s=this.d +if(s==null)return!1 +return this.nA(this.alZ(s,a),a)>=0}, +L(a,b){b.aE(0,new A.c1w(this))}, +i(a,b){var s,r,q +if(typeof b=="string"&&b!=="__proto__"){s=this.b +r=s==null?null:A.czZ(s,b) +return r}else if(typeof b=="number"&&(b&1073741823)===b){q=this.c +r=q==null?null:A.czZ(q,b) +return r}else return this.alW(0,b)}, +alW(a,b){var s,r,q=this.d +if(q==null)return null +s=this.alZ(q,b) +r=this.nA(s,b) +return r<0?null:s[r+1]}, +n(a,b,c){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +q.ajO(s==null?q.b=A.cA_():s,b,c)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +q.ajO(r==null?q.c=A.cA_():r,b,c)}else q.arI(b,c)}, +arI(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=A.cA_() +s=p.o9(a) +r=o[s] +if(r==null){A.cA0(o,s,[a,b]);++p.a +p.e=null}else{q=p.nA(r,a) +if(q>=0)r[q+1]=b +else{r.push(a,b);++p.a +p.e=null}}}, +cP(a,b,c){var s,r,q=this +if(q.aB(0,b)){s=q.i(0,b) +return s==null?A.z(q).y[1].a(s):s}r=c.$0() +q.n(0,b,r) +return r}, +F(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.xH(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.xH(s.c,b) +else return s.tM(0,b)}, +tM(a,b){var s,r,q,p,o=this,n=o.d +if(n==null)return null +s=o.o9(b) +r=n[s] +q=o.nA(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}, +V(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=null +s.a=0}}, +aE(a,b){var s,r,q,p,o,n=this,m=n.JJ() +for(s=m.length,r=A.z(n).y[1],q=0;q"))}, +p(a,b){return this.a.aB(0,b)}, +aE(a,b){var s,r,q=this.a,p=q.JJ() +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.afF.prototype={ +i(a,b){if(!this.y.$1(b))return null +return this.aOM(b)}, +n(a,b,c){this.aOO(b,c)}, +aB(a,b){if(!this.y.$1(b))return!1 +return this.aOL(b)}, +F(a,b){if(!this.y.$1(b))return null +return this.aON(b)}, +Cs(a){return this.x.$1(a)&1073741823}, +Ct(a,b){var s,r,q +if(a==null)return-1 +s=a.length +for(r=this.w,q=0;q"))}, +xS(a){return new A.xi(a.h("xi<0>"))}, +Kx(){return this.xS(t.z)}, +gaz(a){return new A.nz(this,this.AG(),A.z(this).h("nz<1>"))}, +gA(a){return this.a}, +gad(a){return this.a===0}, +gcU(a){return this.a!==0}, +p(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.a2e(b)}, +a2e(a){var s=this.d +if(s==null)return!1 +return this.nA(s[this.o9(a)],a)>=0}, +B(a,b){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.JF(s==null?q.b=A.cA1():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.JF(r==null?q.c=A.cA1():r,b)}else return q.iW(0,b)}, +iW(a,b){var s,r,q=this,p=q.d +if(p==null)p=q.d=A.cA1() +s=q.o9(b) +r=p[s] +if(r==null)p[s]=[b] +else{if(q.nA(r,b)>=0)return!1 +r.push(b)}++q.a +q.e=null +return!0}, +L(a,b){var s +for(s=J.au(b);s.t();)this.B(0,s.gK(s))}, +F(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.xH(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.xH(s.c,b) +else return s.tM(0,b)}, +tM(a,b){var s,r,q,p=this,o=p.d +if(o==null)return!1 +s=p.o9(b) +r=o[s] +q=p.nA(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}, +V(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=null +s.a=0}}, +AG(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.e +if(h!=null)return h +h=A.aK(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.nB.prototype={ +B1(){return new A.nB(A.z(this).h("nB<1>"))}, +xS(a){return new A.nB(a.h("nB<0>"))}, +Kx(){return this.xS(t.z)}, +gaz(a){var s=this,r=new A.xj(s,s.r,A.z(s).h("xj<1>")) +r.c=s.e +return r}, +gA(a){return this.a}, +gad(a){return this.a===0}, +gcU(a){return this.a!==0}, +p(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.a2e(b)}, +a2e(a){var s=this.d +if(s==null)return!1 +return this.nA(s[this.o9(a)],a)>=0}, +aE(a,b){var s=this,r=s.e,q=s.r +for(;r!=null;){b.$1(r.a) +if(q!==s.r)throw A.d(A.e1(s)) +r=r.b}}, +ga2(a){var s=this.e +if(s==null)throw A.d(A.a0("No elements")) +return s.a}, +gP(a){var s=this.f +if(s==null)throw A.d(A.a0("No elements")) +return s.a}, +B(a,b){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.JF(s==null?q.b=A.cA3():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.JF(r==null?q.c=A.cA3():r,b)}else return q.iW(0,b)}, +iW(a,b){var s,r,q=this,p=q.d +if(p==null)p=q.d=A.cA3() +s=q.o9(b) +r=p[s] +if(r==null)p[s]=[q.a23(b)] +else{if(q.nA(r,b)>=0)return!1 +r.push(q.a23(b))}return!0}, +F(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.xH(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.xH(s.c,b) +else return s.tM(0,b)}, +tM(a,b){var s,r,q,p,o=this,n=o.d +if(n==null)return!1 +s=o.o9(b) +r=n[s] +q=o.nA(r,b) +if(q<0)return!1 +p=r.splice(q,1)[0] +if(0===r.length)delete n[s] +o.ajP(p) +return!0}, +JV(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.d(A.e1(o)) +if(!0===p)o.F(0,s)}}, +V(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.a22()}}, +JF(a,b){if(a[b]!=null)return!1 +a[b]=this.a23(b) +return!0}, +xH(a,b){var s +if(a==null)return!1 +s=a[b] +if(s==null)return!1 +this.ajP(s) +delete a[b] +return!0}, +a22(){this.r=this.r+1&1073741823}, +a23(a){var s,r=this,q=new A.c3S(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.a22() +return q}, +ajP(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.a22()}, +o9(a){return J.ab(a)&1073741823}, +nA(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"))}, +Kx(){return this.xS(t.z)}, +o9(a){return A.lZ(a)&1073741823}, +nA(a,b){var s,r,q +if(a==null)return-1 +s=a.length +for(r=0;r"))}, +gA(a){return J.bn(this.a)}, +i(a,b){return J.OG(this.a,b)}} +A.bkL.prototype={ +$2(a,b){this.a.n(0,this.b.a(a),this.c.a(b))}, +$S:88} +A.boZ.prototype={ +$2(a,b){this.a.n(0,this.b.a(a),this.c.a(b))}, +$S:88} +A.iz.prototype={ +F(a,b){if(b.n4$!==this)return!1 +this.Ui(b) +return!0}, +p(a,b){return t.cS.b(b)&&this===b.n4$}, +gaz(a){var s=this +return new A.XJ(s,s.a,s.c,s.$ti.h("XJ<1>"))}, +gA(a){return this.b}, +V(a){var s,r,q,p=this;++p.a +if(p.b===0)return +s=p.c +s.toString +r=s +do{q=r.n5$ +q.toString +r.n5$=r.op$=r.n4$=null +if(q!==s){r=q +continue}else break}while(!0) +p.c=null +p.b=0}, +ga2(a){var s +if(this.b===0)throw A.d(A.a0("No such element")) +s=this.c +s.toString +return s}, +gP(a){var s +if(this.b===0)throw A.d(A.a0("No such element")) +s=this.c.op$ +s.toString +return s}, +gcW(a){var s=this.b +if(s===0)throw A.d(A.a0("No such element")) +if(s>1)throw A.d(A.a0("Too many elements")) +s=this.c +s.toString +return s}, +aE(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.d(A.e1(q)) +s=r.n5$ +s.toString +if(s!==q.c){r=s +continue}else break}while(!0)}, +gad(a){return this.b===0}, +Sn(a,b,c){var s,r,q=this +if(b.n4$!=null)throw A.d(A.a0("LinkedListEntry is already in a LinkedList"));++q.a +b.n4$=q +s=q.b +if(s===0){b.n5$=b +q.c=b.op$=b +q.b=s+1 +return}r=a.op$ +r.toString +b.op$=r +b.n5$=a +a.op$=r.n5$=b +if(c&&a==q.c)q.c=b +q.b=s+1}, +Ui(a){var s,r,q=this;++q.a +s=a.n5$ +s.op$=a.op$ +a.op$.n5$=s +r=--q.b +a.n4$=a.n5$=a.op$=null +if(r===0)q.c=null +else if(a===q.c)q.c=s}} +A.XJ.prototype={ +gK(a){var s=this.c +return s==null?this.$ti.c.a(s):s}, +t(){var s=this,r=s.a +if(s.b!==r.a)throw A.d(A.e1(s)) +if(r.b!==0)r=s.e&&s.d===r.ga2(0) +else r=!0 +if(r){s.c=null +return!1}s.e=!0 +r=s.d +s.c=r +s.d=r.n5$ +return!0}} +A.mg.prototype={ +gmo(a){var s=this.n4$ +if(s==null||s.ga2(0)===this.n5$)return null +return this.n5$}, +gaDp(){var s=this.n4$ +if(s==null||this===s.ga2(0))return null +return this.op$}} +A.a2.prototype={ +gaz(a){return new A.bj(a,this.gA(a),A.bk(a).h("bj"))}, +dE(a,b){return this.i(a,b)}, +aE(a,b){var s,r=this.gA(a) +for(s=0;s1)throw A.d(A.DO()) +return this.i(a,0)}, +p(a,b){var s,r=this.gA(a) +for(s=0;s=0;--s){r=this.i(a,s) +if(b.$1(r))return r +if(q!==this.gA(a))throw A.d(A.e1(a))}if(c!=null)return c.$0() +throw A.d(A.dB())}, +bQ(a,b){var s +if(this.gA(a)===0)return"" +s=A.aFq("",a,b) +return s.charCodeAt(0)==0?s:s}, +jG(a){return this.bQ(a,"")}, +kW(a,b){return new A.b1(a,b,A.bk(a).h("b1"))}, +a_a(a,b){return new A.cv(a,b.h("cv<0>"))}, +fK(a,b,c){return new A.O(a,b,A.bk(a).h("@").a1(c).h("O<1,2>"))}, +MM(a,b,c){return new A.eE(a,b,A.bk(a).h("@").a1(c).h("eE<1,2>"))}, +my(a,b){return A.fB(a,b,null,A.bk(a).h("a2.E"))}, +nl(a,b){return A.fB(a,0,A.hz(b,"count",t.S),A.bk(a).h("a2.E"))}, +ib(a,b){var s,r,q,p,o=this +if(o.gad(a)){s=A.bk(a).h("a2.E") +return b?J.RW(0,s):J.JF(0,s)}r=o.i(a,0) +q=A.aK(o.gA(a),r,b,A.bk(a).h("a2.E")) +for(p=1;p")),o=q.gA(a) +for(s=0;s").a1(b).h("ek<1,2>"))}, +hX(a){var s,r=this +if(r.gA(a)===0)throw A.d(A.dB()) +s=r.i(a,r.gA(a)-1) +r.sA(a,r.gA(a)-1) +return s}, +iL(a,b){var s=b==null?A.dpE():b +A.aF3(a,0,this.gA(a)-1,s)}, +S(a,b){var s=A.R(a,!0,A.bk(a).h("a2.E")) +B.b.L(s,b) +return s}, +cK(a,b,c){var s=this.gA(a) +if(c==null)c=s +A.dM(b,c,s,null,null) +return A.ew(this.Dv(a,b,c),!0,A.bk(a).h("a2.E"))}, +hs(a,b){return this.cK(a,b,null)}, +Dv(a,b,c){A.dM(b,c,this.gA(a),null,null) +return A.fB(a,b,c,A.bk(a).h("a2.E"))}, +fb(a,b,c,d){var s,r=d==null?A.bk(a).h("a2.E").a(d):d +A.dM(b,c,this.gA(a),null,null) +for(s=b;s").b(d)){r=e +q=d}else{p=J.amA(d,e) +q=p.ib(p,!1) +r=0}p=J.ao(q) +if(r+s>p.gA(q))throw A.d(A.cJb()) +if(r=0;--o)this.n(a,b+o,p.i(q,r+o)) +else for(o=0;o"))}, +k(a){return A.u0(a,"[","]")}, +$iaO:1, +$iB:1, +$ix:1} +A.c3.prototype={ +p8(a,b,c){var s=A.bk(a) +return A.cJK(a,s.h("c3.K"),s.h("c3.V"),b,c)}, +aE(a,b){var s,r,q,p +for(s=J.au(this.gek(a)),r=A.bk(a).h("c3.V");s.t();){q=s.gK(s) +p=this.i(a,q) +b.$2(q,p==null?r.a(p):p)}}, +cP(a,b,c){var s +if(this.aB(a,b)){s=this.i(a,b) +return s==null?A.bk(a).h("c3.V").a(s):s}s=c.$0() +this.n(a,b,s) +return s}, +bHw(a,b,c,d){var s,r=this +if(r.aB(a,b)){s=r.i(a,b) +s=c.$1(s==null?A.bk(a).h("c3.V").a(s):s) +r.n(a,b,s) +return s}if(d!=null){s=d.$0() +r.n(a,b,s) +return s}throw A.d(A.ey(b,"key","Key not in map."))}, +ic(a,b,c){return this.bHw(a,b,c,null)}, +aFV(a,b){var s,r,q,p +for(s=J.au(this.gek(a)),r=A.bk(a).h("c3.V");s.t();){q=s.gK(s) +p=this.i(a,q) +this.n(a,q,b.$2(q,p==null?r.a(p):p))}}, +gep(a){return J.dP(this.gek(a),new A.brf(a),A.bk(a).h("aY"))}, +qv(a,b,c,d){var s,r,q,p,o,n=A.N(c,d) +for(s=J.au(this.gek(a)),r=A.bk(a).h("c3.V");s.t();){q=s.gK(s) +p=this.i(a,q) +o=b.$2(q,p==null?r.a(p):p) +n.n(0,o.a,o.b)}return n}, +auT(a,b){var s,r +for(s=J.au(b);s.t();){r=s.gK(s) +this.n(a,r.a,r.b)}}, +HC(a,b){var s,r,q,p,o=A.bk(a),n=A.a([],o.h("D")) +for(s=J.au(this.gek(a)),o=o.h("c3.V");s.t();){r=s.gK(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").a1(s.h("c3.V")).h("afL<1,2>"))}, +k(a){return A.hj(a)}, +$iaN:1} +A.brf.prototype={ +$1(a){var s=this.a,r=J.aS(s,a) +if(r==null)r=A.bk(s).h("c3.V").a(r) +s=A.bk(s) +return new A.aY(a,r,s.h("@").a1(s.h("c3.V")).h("aY<1,2>"))}, +$S(){return A.bk(this.a).h("aY(c3.K)")}} +A.brg.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.r(a) +r.a=s+": " +r.a+=A.r(b)}, +$S:109} +A.Wi.prototype={} +A.afL.prototype={ +gA(a){return J.bn(this.a)}, +gad(a){return J.h3(this.a)}, +gcU(a){return J.iL(this.a)}, +ga2(a){var s=this.a,r=J.er(s) +s=r.i(s,J.jD(r.gek(s))) +return s==null?this.$ti.y[1].a(s):s}, +gcW(a){var s=this.a,r=J.er(s) +s=r.i(s,J.ZB(r.gek(s))) +return s==null?this.$ti.y[1].a(s):s}, +gP(a){var s=this.a,r=J.er(s) +s=r.i(s,J.kD(r.gek(s))) +return s==null?this.$ti.y[1].a(s):s}, +gaz(a){var s=this.a,r=this.$ti +return new A.aRc(J.au(J.GV(s)),s,r.h("@<1>").a1(r.y[1]).h("aRc<1,2>"))}} +A.aRc.prototype={ +t(){var s=this,r=s.a +if(r.t()){s.c=J.aS(s.b,r.gK(r)) +return!0}s.c=null +return!1}, +gK(a){var s=this.c +return s==null?this.$ti.y[1].a(s):s}} +A.Gy.prototype={ +n(a,b,c){throw A.d(A.aq("Cannot modify unmodifiable map"))}, +V(a){throw A.d(A.aq("Cannot modify unmodifiable map"))}, +F(a,b){throw A.d(A.aq("Cannot modify unmodifiable map"))}, +cP(a,b,c){throw A.d(A.aq("Cannot modify unmodifiable map"))}} +A.SA.prototype={ +p8(a,b,c){return J.xJ(this.a,b,c)}, +i(a,b){return J.aS(this.a,b)}, +n(a,b,c){J.id(this.a,b,c)}, +V(a){J.amy(this.a)}, +cP(a,b,c){return J.ZC(this.a,b,c)}, +aB(a,b){return J.vj(this.a,b)}, +aE(a,b){J.iK(this.a,b)}, +gad(a){return J.h3(this.a)}, +gcU(a){return J.iL(this.a)}, +gA(a){return J.bn(this.a)}, +gek(a){return J.GV(this.a)}, +F(a,b){return J.xM(this.a,b)}, +k(a){return J.cw(this.a)}, +gbm(a){return J.GW(this.a)}, +gep(a){return J.BK(this.a)}, +qv(a,b,c,d){return J.cv5(this.a,b,c,d)}, +$iaN:1} +A.qS.prototype={ +p8(a,b,c){return new A.qS(J.xJ(this.a,b,c),b.h("@<0>").a1(c).h("qS<1,2>"))}} +A.aej.prototype={ +a4b(a,b){var s=this +s.b=b +s.a=a +if(a!=null)a.b=s +if(b!=null)b.a=s}, +bks(){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.AY.prototype={ +Ti(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}, +hB(a){var s=this,r=s.c +if(r!=null)--r.b +s.c=null +s.bks() +return s.d}, +Jt(){return this}, +$icHC:1, +gMG(){return this.d}} +A.AZ.prototype={ +Jt(){return null}, +Ti(a){throw A.d(A.dB())}, +gMG(){throw A.d(A.dB())}} +A.yB.prototype={ +jx(a,b){return new A.ye(this,this.$ti.h("@<1>").a1(b).h("ye<1,2>"))}, +gA(a){return this.b}, +UL(a){var s=this.a +new A.AY(this,a,s.$ti.h("AY<1>")).a4b(s,s.b);++this.b}, +B(a,b){var s=this.a +new A.AY(this,b,s.$ti.h("AY<1>")).a4b(s.a,s);++this.b}, +hX(a){var s=this.a.a.Ti(0);--this.b +return s}, +ga2(a){return this.a.b.gMG()}, +gP(a){return this.a.a.gMG()}, +gcW(a){var s=this.a,r=s.b +if(r==s.a)return r.gMG() +throw A.d(A.DO())}, +gad(a){var s=this.a +return s.b===s}, +V(a){var s,r,q=this.a,p=q.b +p.toString +for(s=p;!0;s=p){r=s.Jt() +if(r==null)break +p=s.b +p.toString +r.c=r.a=r.b=null}q.b=q +q.a=q +this.b=0}, +gaz(a){return new A.aNR(this,this.a.b,this.$ti.h("aNR<1>"))}, +k(a){return A.u0(this,"{","}")}, +$iaO:1} +A.aNR.prototype={ +t(){var s=this,r=s.b,q=r==null?null:r.Jt() +if(q==null){s.a=s.b=s.c=null +return!1}r=s.a +if(r!=q.c)throw A.d(A.e1(r)) +s.c=q.d +s.b=q.b +return!0}, +gK(a){var s=this.c +return s==null?this.$ti.c.a(s):s}} +A.a4Z.prototype={ +jx(a,b){return new A.ye(this,this.$ti.h("@<1>").a1(b).h("ye<1,2>"))}, +gaz(a){var s=this +return new A.NP(s,s.c,s.d,s.b,s.$ti.h("NP<1>"))}, +aE(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.C(A.e1(p))}}, +gad(a){return this.b===this.c}, +gA(a){return(this.c-this.b&this.a.length-1)>>>0}, +ga2(a){var s=this,r=s.b +if(r===s.c)throw A.d(A.dB()) +r=s.a[r] +return r==null?s.$ti.c.a(r):r}, +gP(a){var s=this,r=s.b,q=s.c +if(r===q)throw A.d(A.dB()) +r=s.a +r=r[(q-1&r.length-1)>>>0] +return r==null?s.$ti.c.a(r):r}, +gcW(a){var s,r=this +if(r.b===r.c)throw A.d(A.dB()) +if(r.gA(0)>1)throw A.d(A.DO()) +s=r.a[r.b] +return s==null?r.$ti.c.a(s):s}, +dE(a,b){var s,r=this +A.bnn(b,r.gA(0),r,null,null) +s=r.a +s=s[(r.b+b&s.length-1)>>>0] +return s==null?r.$ti.c.a(s):s}, +ib(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.RW(0,s):J.JF(0,s)}s=m.$ti.c +r=A.aK(k,m.ga2(0),b,s) +for(q=m.a,p=m.b,o=0;o>>0] +r[o]=n==null?s.a(n):n}return r}, +eO(a){return this.ib(0,!0)}, +L(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.$ti +if(j.h("x<1>").b(b)){s=b.length +r=k.gA(0) +q=r+s +p=k.a +o=p.length +if(q>=o){n=A.aK(A.cJp(q+(q>>>1)),null,!1,j.h("1?")) +k.c=k.blJ(n) +k.a=n +k.b=0 +B.b.dS(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}}, +k(a){return A.u0(this,"{","}")}, +UL(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.amM();++s.d}, +qC(){var s,r,q=this,p=q.b +if(p===q.c)throw A.d(A.dB());++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}, +hX(a){var s,r=this,q=r.b,p=r.c +if(q===p)throw A.d(A.dB());++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}, +iW(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.amM();++s.d}, +amM(){var s=this,r=A.aK(s.a.length*2,null,!1,s.$ti.h("1?")),q=s.a,p=s.b,o=q.length-p +B.b.dS(r,0,o,q,p) +B.b.dS(r,o,o+s.b,s.a,0) +s.b=0 +s.c=s.a.length +s.a=r}, +blJ(a){var s,r,q=this,p=q.b,o=q.c,n=q.a +if(p<=o){s=o-p +B.b.dS(a,0,s,n,p) +return s}else{r=n.length-p +B.b.dS(a,0,r,n,p) +B.b.dS(a,r,r+q.c,q.a,0) +return q.c+r}}} +A.NP.prototype={ +gK(a){var s=this.e +return s==null?this.$ti.c.a(s):s}, +t(){var s,r=this,q=r.a +if(r.c!==q.d)A.C(A.e1(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.cZ.prototype={ +gad(a){return this.gA(this)===0}, +gcU(a){return this.gA(this)!==0}, +jx(a,b){return A.a9s(this,null,A.z(this).h("cZ.E"),b)}, +V(a){this.OA(this.eO(0))}, +L(a,b){var s +for(s=J.au(b);s.t();)this.B(0,s.gK(s))}, +OA(a){var s,r +for(s=a.length,r=0;r").a1(c).h("jJ<1,2>"))}, +gcW(a){var s,r=this +if(r.gA(r)>1)throw A.d(A.DO()) +s=r.gaz(r) +if(!s.t())throw A.d(A.dB()) +return s.gK(s)}, +k(a){return A.u0(this,"{","}")}, +aE(a,b){var s +for(s=this.gaz(this);s.t();)b.$1(s.gK(s))}, +lF(a,b){var s +for(s=this.gaz(this);s.t();)if(!b.$1(s.gK(s)))return!1 +return!0}, +bQ(a,b){var s,r,q=this.gaz(this) +if(!q.t())return"" +s=J.cw(q.gK(q)) +if(!q.t())return s +if(b.length===0){r=s +do r+=A.r(q.gK(q)) +while(q.t())}else{r=s +do r=r+b+A.r(q.gK(q)) +while(q.t())}return r.charCodeAt(0)==0?r:r}, +ef(a,b){var s +for(s=this.gaz(this);s.t();)if(b.$1(s.gK(s)))return!0 +return!1}, +nl(a,b){return A.bKu(this,b,A.z(this).h("cZ.E"))}, +my(a,b){return A.cz1(this,b,A.z(this).h("cZ.E"))}, +ga2(a){var s=this.gaz(this) +if(!s.t())throw A.d(A.dB()) +return s.gK(s)}, +gP(a){var s,r=this.gaz(this) +if(!r.t())throw A.d(A.dB()) +do s=r.gK(r) +while(r.t()) +return s}, +dE(a,b){var s,r +A.js(b,"index") +s=this.gaz(this) +for(r=b;s.t();){if(r===0)return s.gK(s);--r}throw A.d(A.ik(b,b-r,this,null,"index"))}, +$iaO:1, +$iB:1, +$ibU:1} +A.O7.prototype={ +jx(a,b){return A.a9s(this,this.gEN(),A.z(this).c,b)}, +w6(a){var s,r,q=this.B1() +for(s=this.gaz(this);s.t();){r=s.gK(s) +if(!a.p(0,r))q.B(0,r)}return q}, +pq(a,b){var s,r,q=this.B1() +for(s=this.gaz(this);s.t();){r=s.gK(s) +if(b.p(0,r))q.B(0,r)}return q}, +jq(a){var s=this.B1() +s.L(0,this) +return s}} +A.aX9.prototype={} +A.j1.prototype={} +A.nD.prototype={ +bfN(a){var s=this,r=s.$ti +r=new A.nD(a,s.a,r.h("@<1>").a1(r.y[1]).h("nD<1,2>")) +r.b=s.b +r.c=s.c +return r}} +A.aX8.prototype={ +q0(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.gkb() +if(f==null){h.a26(a,a) +return-1}s=h.ga25() +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.gkb()!==q){h.skb(q);++h.c}return r}, +biF(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}, +asd(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}, +tM(a,b){var s,r,q,p,o=this +if(o.gkb()==null)return null +if(o.q0(b)!==0)return null +s=o.gkb() +r=s.b;--o.a +q=s.c +if(r==null)o.skb(q) +else{p=o.asd(r) +p.c=q +o.skb(p)}++o.b +return s}, +a1m(a,b){var s,r=this;++r.a;++r.b +s=r.gkb() +if(s==null){r.skb(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.skb(a)}, +galE(){var s=this,r=s.gkb() +if(r==null)return null +s.skb(s.biF(r)) +return s.gkb()}, +gaob(){var s=this,r=s.gkb() +if(r==null)return null +s.skb(s.asd(r)) +return s.gkb()}, +a1Y(a){this.skb(null) +this.a=0;++this.b}, +Ek(a){return this.a6O(a)&&this.q0(a)===0}, +a26(a,b){return this.ga25().$2(a,b)}, +a6O(a){return this.gbJb().$1(a)}} +A.a9Y.prototype={ +i(a,b){var s=this +if(!s.f.$1(b))return null +if(s.d!=null)if(s.q0(b)===0)return s.d.d +return null}, +F(a,b){var s +if(!this.f.$1(b))return null +s=this.tM(0,b) +if(s!=null)return s.d +return null}, +n(a,b,c){var s,r=this,q=r.q0(b) +if(q===0){r.d=r.d.bfN(c);++r.c +return}s=r.$ti +r.a1m(new A.nD(c,b,s.h("@<1>").a1(s.y[1]).h("nD<1,2>")),q)}, +cP(a,b,c){var s,r,q,p,o=this,n=o.q0(b) +if(n===0)return o.d.d +s=o.b +r=o.c +q=c.$0() +if(s!==o.b)throw A.d(A.e1(o)) +if(r!==o.c)n=o.q0(b) +p=o.$ti +o.a1m(new A.nD(q,b,p.h("@<1>").a1(p.y[1]).h("nD<1,2>")),n) +return q}, +gad(a){return this.d==null}, +gcU(a){return this.d!=null}, +aE(a,b){var s,r,q=this.$ti +q=q.h("@<1>").a1(q.y[1]) +s=new A.O8(this,A.a([],q.h("D>")),this.c,q.h("O8<1,2>")) +for(;s.t();){r=s.gK(0) +b.$2(r.a,r.b)}}, +gA(a){return this.a}, +V(a){this.a1Y(0)}, +aB(a,b){return this.Ek(b)}, +gek(a){var s=this.$ti +return new A.Bj(this,s.h("@<1>").a1(s.h("nD<1,2>")).h("Bj<1,2>"))}, +gbm(a){var s=this.$ti +return new A.O9(this,s.h("@<1>").a1(s.y[1]).h("O9<1,2>"))}, +gep(a){var s=this.$ti +return new A.aiN(this,s.h("@<1>").a1(s.y[1]).h("aiN<1,2>"))}, +azO(){if(this.d==null)return null +return this.galE().a}, +abB(){if(this.d==null)return null +return this.gaob().a}, +bzK(a){var s,r,q,p=this +if(p.d==null)return null +if(p.q0(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}, +bwt(a){var s,r,q,p=this +if(p.d==null)return null +if(p.q0(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}, +$iaN:1, +a26(a,b){return this.e.$2(a,b)}, +a6O(a){return this.f.$1(a)}, +gkb(){return this.d}, +ga25(){return this.e}, +skb(a){return this.d=a}} +A.bGR.prototype={ +$1(a){return this.a.b(a)}, +$S:60} +A.xr.prototype={ +gK(a){var s=this.b +if(s.length===0){A.z(this).h("xr.T").a(null) +return null}return this.a3i(B.b.gP(s))}, +bff(a){var s,r,q=this.b +B.b.V(q) +s=this.a +s.q0(a) +r=s.gkb() +r.toString +q.push(r) +this.d=s.c}, +t(){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.gkb() +for(p=q.b;s!=null;){p.push(s) +s=s.b}return p.length!==0}throw A.d(A.e1(o))}p=q.b +if(p.length===0)return!1 +if(q.d!==o.c)q.bff(B.b.gP(p).a) +s=B.b.gP(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.gP(p).c===s))break +s=p.pop()}return p.length!==0}} +A.Bj.prototype={ +gA(a){return this.a.a}, +gad(a){return this.a.a===0}, +gaz(a){var s=this.a,r=this.$ti +return new A.mJ(s,A.a([],r.h("D<2>")),s.c,r.h("@<1>").a1(r.y[1]).h("mJ<1,2>"))}, +p(a,b){return this.a.Ek(b)}, +jq(a){var s=this.a,r=this.$ti,q=A.a9Z(s.e,s.f,r.c) +q.a=s.a +q.d=q.akd(s.d,r.y[1]) +return q}} +A.O9.prototype={ +gA(a){return this.a.a}, +gad(a){return this.a.a===0}, +gaz(a){var s=this.a,r=this.$ti +r=r.h("@<1>").a1(r.y[1]) +return new A.aiR(s,A.a([],r.h("D>")),s.c,r.h("aiR<1,2>"))}} +A.aiN.prototype={ +gA(a){return this.a.a}, +gad(a){return this.a.a===0}, +gaz(a){var s=this.a,r=this.$ti +r=r.h("@<1>").a1(r.y[1]) +return new A.O8(s,A.a([],r.h("D>")),s.c,r.h("O8<1,2>"))}} +A.mJ.prototype={ +a3i(a){return a.a}} +A.aiR.prototype={ +a3i(a){return a.d}} +A.O8.prototype={ +a3i(a){var s=this.$ti +return new A.aY(a.a,a.d,s.h("@<1>").a1(s.y[1]).h("aY<1,2>"))}} +A.Vf.prototype={ +ap5(a){return A.a9Z(new A.bGT(this,a),this.f,a)}, +B1(){return this.ap5(t.z)}, +jx(a,b){return A.a9s(this,this.gbat(),this.$ti.c,b)}, +gaz(a){var s=this.$ti +return new A.mJ(this,A.a([],s.h("D>")),this.c,s.h("@<1>").a1(s.h("j1<1>")).h("mJ<1,2>"))}, +gA(a){return this.a}, +gad(a){return this.d==null}, +gcU(a){return this.d!=null}, +ga2(a){if(this.a===0)throw A.d(A.dB()) +return this.galE().a}, +gP(a){if(this.a===0)throw A.d(A.dB()) +return this.gaob().a}, +gcW(a){var s=this.a +if(s===0)throw A.d(A.dB()) +if(s>1)throw A.d(A.DO()) +return this.d.a}, +p(a,b){return this.f.$1(b)&&this.q0(this.$ti.c.a(b))===0}, +B(a,b){return this.iW(0,b)}, +iW(a,b){var s=this.q0(b) +if(s===0)return!1 +this.a1m(new A.j1(b,this.$ti.h("j1<1>")),s) +return!0}, +F(a,b){if(!this.f.$1(b))return!1 +return this.tM(0,this.$ti.c.a(b))!=null}, +L(a,b){var s +for(s=J.au(b);s.t();)this.iW(0,s.gK(s))}, +OA(a){var s,r,q,p +for(s=a.length,r=this.$ti.c,q=0;q>")),r.c,q.h("@<1>").a1(q.h("j1<1>")).h("mJ<1,2>"));q.t();){s=q.gK(0) +if(b.p(0,s))p.iW(0,s)}return p}, +aYv(){var s=this,r=s.$ti,q=A.a9Z(s.e,s.f,r.c) +q.a=s.a +q.d=s.akd(s.d,r.h("j1<1>")) +return q}, +akd(a,b){var s +if(a==null)return null +s=new A.j1(a.a,this.$ti.h("j1<1>")) +new A.bGS(this,b).$2(a,s) +return s}, +V(a){this.a1Y(0)}, +jq(a){return this.aYv()}, +k(a){return A.u0(this,"{","}")}, +$iaO:1, +$ibU:1, +a26(a,b){return this.e.$2(a,b)}, +a6O(a){return this.f.$1(a)}, +gkb(){return this.d}, +ga25(){return this.e}, +skb(a){return this.d=a}} +A.bGU.prototype={ +$1(a){return this.a.b(a)}, +$S:60} +A.bGT.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("h(0,0)")}} +A.bGS.prototype={ +$2(a,b){var s,r,q,p,o,n=this.a.$ti.h("j1<1>") +do{s=a.b +r=a.c +if(s!=null){q=new A.j1(s.a,n) +b.b=q +this.$2(s,q)}p=r!=null +if(p){o=new A.j1(r.a,n) +b.c=o +b=o +a=r}}while(p)}, +$S(){return this.a.$ti.a1(this.b).h("~(1,j1<2>)")}} +A.aiO.prototype={} +A.aiP.prototype={} +A.aiQ.prototype={} +A.ak0.prototype={} +A.coC.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}, +gek(a){var s +if(this.b==null){s=this.c +return new A.bR(s,A.z(s).h("bR<1>"))}return new A.aQw(this)}, +gbm(a){var s=this +if(s.b==null)return s.c.gbm(0) +return A.nb(s.xI(),new A.c37(s),t.N,t.z)}, +n(a,b,c){var s,r,q=this +if(q.b==null)q.c.n(0,b,c) +else if(q.aB(0,b)){s=q.b +s[b]=c +r=q.a +if(r==null?s!=null:r!==s)r[b]=null}else q.aui().n(0,b,c)}, +aB(a,b){if(this.b==null)return this.c.aB(0,b) +if(typeof b!="string")return!1 +return Object.prototype.hasOwnProperty.call(this.a,b)}, +cP(a,b,c){var s +if(this.aB(0,b))return this.i(0,b) +s=c.$0() +this.n(0,b,s) +return s}, +F(a,b){if(this.b!=null&&!this.aB(0,b))return null +return this.aui().F(0,b)}, +V(a){var s,r=this +if(r.b==null)r.c.V(0) +else{if(r.c!=null)B.b.V(r.xI()) +r.a=r.b=null +s=t.z +r.c=A.N(s,s)}}, +aE(a,b){var s,r,q,p,o=this +if(o.b==null)return o.c.aE(0,b) +s=o.xI() +for(r=0;r"))}return s}, +p(a,b){return this.a.aB(0,b)}} +A.afy.prototype={ +aO(a){var s,r,q=this +q.aSI(0) +s=q.a +r=s.a +s.a="" +s=q.c +s.B(0,A.b1C(r.charCodeAt(0)==0?r:r,q.b)) +s.aO(0)}} +A.cmt.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:true}) +return s}catch(r){}return null}, +$S:257} +A.cms.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:false}) +return s}catch(r){}return null}, +$S:257} +A.He.prototype={ +ug(a){return B.a1h.cD(a)}, +hF(a,b){if(this.a)return B.zA.cD(b) +else return B.zz.cD(b)}, +gh2(){return this.a?B.zA:B.zz}} +A.aZh.prototype={ +cD(a){var s,r,q,p=A.dM(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.d(A.bM("Invalid value in input: "+A.r(q),p,p)) +return this.aZ4(a,0,n)}}return A.dp(a,0,n)}, +aZ4(a,b,c){var s,r,q,p,o +for(s=~this.b,r=J.ao(a),q=b,p="";q>>0!==0?65533:o)}return p.charCodeAt(0)==0?p:p}} +A.a_f.prototype={ +lr(a){var s=t.NC.b(a)?a:new A.Bk(a) +if(this.a)return new A.bZf(s.V5(!1)) +else return new A.ceQ(s)}} +A.bZf.prototype={ +aO(a){this.a.aO(0)}, +B(a,b){this.hg(b,0,J.bn(b),!1)}, +hg(a,b,c,d){var s,r,q=J.ao(a) +A.dM(b,c,q.gA(a),null,null) +for(s=this.a,r=b;r>>0!==0){if(r>b)s.hg(a,b,r,!1) +s.B(0,B.aCl) +b=r+1}if(b>>0!==0)throw A.d(A.bM("Source contains non-ASCII bytes.",null,null)) +this.a.B(0,A.dp(b,0,null))}, +hg(a,b,c,d){var s=a.length +A.dM(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.bu("") +g=p}else g=p +g.a+=B.c.R(a0,q,r) +g.a+=A.cm(k) +q=l +continue}}throw A.d(A.bM("Invalid base64 data",a0,r))}if(p!=null){g=p.a+=B.c.R(a0,q,a2) +f=g.length +if(o>=0)A.cF8(a0,n,a2,o,m,f) +else{e=B.d.M(f-1,4)+1 +if(e===1)throw A.d(A.bM(b,a0,a2)) +for(;e<4;){g+="=" +p.a=g;++e}}g=p.a +return B.c.nW(a0,a1,a2,g.charCodeAt(0)==0?g:g)}d=a2-a1 +if(o>=0)A.cF8(a0,n,a2,o,m,d) +else{e=B.d.M(d,4) +if(e===1)throw A.d(A.bM(b,a0,a2)) +if(e>1)a0=B.c.nW(a0,a2,a2,e===2?"==":"=")}return a0}} +A.anL.prototype={ +cD(a){var s=J.ao(a) +if(s.gad(a))return"" +s=new A.acT(u.U).a9V(a,0,s.gA(a),!0) +s.toString +return A.dp(s,0,null)}, +lr(a){var s,r=u.U +if(t.NC.b(a)){s=a.V5(!1) +return new A.cmq(s,new A.acT(r))}return new A.bRy(a,new A.bTe(r))}} +A.acT.prototype={ +axU(a,b){return new Uint8Array(b)}, +a9V(a,b,c,d){var s,r=this,q=(r.a&3)+(c-b),p=B.d.aD(q,3),o=p*4 +if(d&&q-p*3>0)o+=4 +s=r.axU(0,o) +r.a=A.dht(r.b,a,b,c,d,s,0,r.a) +if(o>0)return s +return null}} +A.bTe.prototype={ +axU(a,b){var s=this.c +if(s==null||s.length0)throw A.d(A.bM("Invalid length, must be multiple of four",b,c)) +this.a=-1}} +A.aLk.prototype={ +B(a,b){var s,r=b.length +if(r===0)return +s=this.b.a9d(0,b,0,r) +if(s!=null)this.a.B(0,s)}, +aO(a){this.b.LQ(0,null,null) +this.a.aO(0)}, +hg(a,b,c,d){var s,r +A.dM(b,c,a.length,null,null) +if(b===c)return +s=this.b +r=s.a9d(0,a,b,c) +if(r!=null)this.a.B(0,r) +if(d){s.LQ(0,a,c) +this.a.aO(0)}}} +A.Pl.prototype={ +hg(a,b,c,d){this.B(0,B.p.cK(a,b,c)) +if(d)this.aO(0)}} +A.add.prototype={ +B(a,b){this.a.B(0,b)}, +aO(a){this.a.aO(0)}} +A.ade.prototype={ +B(a,b){var s,r,q=this,p=q.b,o=q.c,n=J.ao(b) +if(n.gA(b)>p.length-o){p=q.b +s=n.gA(b)+p.length-1 +s|=B.d.b2(s,1) +s|=s>>>2 +s|=s>>>4 +s|=s>>>8 +r=new Uint8Array((((s|s>>>16)>>>0)+1)*2) +p=q.b +B.p.cV(r,0,p.length,p) +q.b=r}p=q.b +o=q.c +B.p.cV(p,o,o+n.gA(b),b) +q.c=q.c+n.gA(b)}, +aO(a){this.a.$1(B.p.cK(this.b,0,this.c))}} +A.aoR.prototype={} +A.aWC.prototype={ +B(a,b){this.b.push(b)}, +aO(a){this.a.$1(this.b)}} +A.eS.prototype={ +hF(a,b){return this.gh2().cD(b)}} +A.aT.prototype={ +bwQ(a,b){var s=A.z(this) +return new A.aeV(this,a,s.h("@").a1(s.h("aT.T")).a1(b).h("aeV<1,2,3>"))}, +lr(a){throw A.d(A.aq("This converter does not support chunked conversions: "+this.k(0)))}, +p8(a,b,c){var s=A.z(this) +return new A.HB(this,s.h("@").a1(s.h("aT.T")).a1(b).a1(c).h("HB<1,2,3,4>"))}} +A.aeV.prototype={ +cD(a){return this.b.cD(this.a.cD(a))}, +lr(a){return this.a.lr(this.b.lr(a))}} +A.eC.prototype={} +A.RZ.prototype={ +k(a){var s=A.IF(this.a) +return(this.b!=null?"Converting object to an encodable object failed:":"Converting object did not return an encodable object:")+" "+s}} +A.awf.prototype={ +k(a){return"Cyclic error in JSON stringify"}} +A.awe.prototype={ +pf(a,b,c){if(c==null)c=null +if(c==null)return A.b1C(b,this.gh2().a) +return A.b1C(b,c)}, +hF(a,b){return this.pf(0,b,null)}, +yT(a,b){var s +if(b==null)b=null +if(b==null){s=this.gyU() +return A.c3a(a,s.b,s.a)}return A.c3a(a,b,null)}, +ug(a){return this.yT(a,null)}, +gyU(){return B.aAJ}, +gh2(){return B.Ez}} +A.awh.prototype={ +cD(a){var s,r=new A.bu("") +A.cA2(a,r,this.b,this.a) +s=r.a +return s.charCodeAt(0)==0?s:s}, +lr(a){var s,r=this +if(a instanceof A.ak7)return new A.aQz(a.d,A.d8J(r.a),r.b,256) +s=t.NC.b(a)?a:new A.Bk(a) +return new A.c36(r.a,r.b,s)}} +A.c36.prototype={ +B(a,b){var s,r=this +if(r.d)throw A.d(A.a0("Only one call to add allowed")) +r.d=!0 +s=r.c.avx() +A.cA2(b,s,r.b,r.a) +s.aO(0)}, +aO(a){}} +A.aQz.prototype={ +aVH(a,b,c){this.a.hg(a,b,c,!1)}, +B(a,b){var s=this +if(s.e)throw A.d(A.a0("Only one call to add allowed")) +s.e=!0 +A.dik(b,s.b,s.c,s.d,s.gaVG()) +s.a.aO(0)}, +aO(a){if(!this.e){this.e=!0 +this.a.aO(0)}}} +A.awg.prototype={ +lr(a){return new A.afy(this.a,a,new A.bu(""))}, +cD(a){return A.b1C(a,this.a)}} +A.c3b.prototype={ +aeg(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.Ib(a,s,r) +s=r+1 +n.jM(92) +n.jM(117) +n.jM(100) +p=q>>>8&15 +n.jM(p<10?48+p:87+p) +p=q>>>4&15 +n.jM(p<10?48+p:87+p) +p=q&15 +n.jM(p<10?48+p:87+p)}}continue}if(q<32){if(r>s)n.Ib(a,s,r) +s=r+1 +n.jM(92) +switch(q){case 8:n.jM(98) +break +case 9:n.jM(116) +break +case 10:n.jM(110) +break +case 12:n.jM(102) +break +case 13:n.jM(114) +break +default:n.jM(117) +n.jM(48) +n.jM(48) +p=q>>>4&15 +n.jM(p<10?48+p:87+p) +p=q&15 +n.jM(p<10?48+p:87+p) +break}}else if(q===34||q===92){if(r>s)n.Ib(a,s,r) +s=r+1 +n.jM(92) +n.jM(q)}}if(s===0)n.ie(a) +else if(s>>6|192)>>>0) +s.oI(a&63|128) +return}if(a<=65535){s.oI((a>>>12|224)>>>0) +s.oI(a>>>6&63|128) +s.oI(a&63|128) +return}s.aH_(a)}, +aH_(a){var s=this +s.oI((a>>>18|240)>>>0) +s.oI(a>>>12&63|128) +s.oI(a>>>6&63|128) +s.oI(a&63|128)}, +oI(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.c3d.prototype={ +Ia(a){var s,r,q,p,o,n=this,m=n.x,l=J.ao(m),k=l.gA(m) +if(k===1){s=l.i(m,0) +for(;a>0;){n.oI(s);--a}return}for(;a>0;){--a +r=n.f +q=r+k +p=n.e +if(q<=p.length){B.p.cV(p,r,q,m) +n.f=q}else for(o=0;o255||r<0){if(s>b){q=p.a +q.toString +q.B(0,A.dp(a,b,s))}q=p.a +q.toString +q.B(0,A.dp(B.aGe,0,1)) +b=s+1}}if(b16)this.a2f()}, +aG(a,b){if(this.a.a.length!==0)this.a2f() +this.b.B(0,b)}, +a2f(){var s=this.a,r=s.a +s.a="" +this.b.B(0,r.charCodeAt(0)==0?r:r)}} +A.YP.prototype={ +aO(a){}, +hg(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.Ux() +return!1}}, +alu(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.auE(p,a.charCodeAt(n)))q=n}else if(o===56320){if(l.b+3>r)break +l.Ux()}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.ak7.prototype={ +aO(a){if(this.a!==0){this.hg("",0,0,!0) +return}this.d.aO(0)}, +hg(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.auE(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.alu(a,b,c) +o=d&&b===c +if(b===q&&(a.charCodeAt(b)&64512)===55296){if(d&&n.b=15){p=m.a +o=A.djR(p,r,b,l) +if(o!=null){if(!p)return o +if(o.indexOf("\ufffd")<0)return o}}o=m.a2r(r,b,l,d) +p=m.b +if((p&1)!==0){n=A.cPs(p) +m.b=0 +throw A.d(A.bM(n,a,q+m.c))}return o}, +a2r(a,b,c,d){var s,r,q=this +if(c-b>1000){s=B.d.aD(b+c,2) +r=q.a2r(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.a2r(a,s,c,d)}return q.bth(a,b,c,d)}, +azQ(a,b){var s=this.b +this.b=0 +if(s<=32)return +if(this.a)b.a+=A.cm(65533) +else throw A.d(A.bM(A.cPs(77),null,null))}, +bth(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.bu(""),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.cm(i) +if(g===c)break $label0$0 +break}else if((j&1)!==0){if(s)switch(j){case 69:case 67:h.a+=A.cm(k) +break +case 65:h.a+=A.cm(k);--g +break +default:q=h.a+=A.cm(k) +h.a=q+A.cm(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.cm(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.b_N.prototype={} +A.b_O.prototype={} +A.b1i.prototype={} +A.hO.prototype={ +o1(a){var s,r,q=this,p=q.c +if(p===0)return q +s=!q.a +r=q.b +p=A.jX(p,r) +return new A.hO(p===0?!1:s,r,p)}, +b_Q(a){var s,r,q,p,o,n,m=this.c +if(m===0)return $.ic() +s=m+a +r=this.b +q=new Uint16Array(s) +for(p=m-1;p>=0;--p)q[p+a]=r[p] +o=this.a +n=A.jX(s,q) +return new A.hO(n===0?!1:o,q,n)}, +b0_(a){var s,r,q,p,o,n,m,l=this,k=l.c +if(k===0)return $.ic() +s=k-a +if(s<=0)return l.a?$.cD4():$.ic() +r=l.b +q=new Uint16Array(s) +for(p=a;pm?n:m,k=this.b,j=a.b,i=new Uint16Array(l) +if(n=0)return q.tx(b,r) +return b.tx(q,!r)}, +W(a,b){var s,r,q=this,p=q.c +if(p===0)return b.o1(0) +s=b.c +if(s===0)return q +r=q.a +if(r!==b.a)return q.Ed(b,r) +if(A.lU(q.b,p,b.b,s)>=0)return q.tx(b,r) +return b.tx(q,!r)}, +X(a,b){var s,r,q,p,o,n,m,l=this.c,k=b.c +if(l===0||k===0)return $.ic() +s=l+k +r=this.b +q=b.b +p=new Uint16Array(s) +for(o=0;o0?p.o1(0):p}, +Th(a){var s,r,q,p=this +if(p.c0)q=q.kZ(0,$.czN.I()) +return p.a&&q.c>0?q.o1(0):q}, +akX(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=d.c +if(c===$.cO4&&a.c===$.cO6&&d.b===$.cO3&&a.b===$.cO5)return +s=a.b +r=a.c +q=16-B.d.goh(s[r-1]) +if(q>0){p=new Uint16Array(r+5) +o=A.cO2(s,r,q,p) +n=new Uint16Array(c+5) +m=A.cO2(d.b,c,q,n)}else{n=A.X_(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.czP(p,o,k,j) +h=m+1 +if(A.lU(n,m,j,i)>=0){n[m]=1 +A.hl(n,h,j,i,n)}else n[m]=0 +g=new Uint16Array(o+2) +g[o]=1 +A.hl(g,o+1,p,o,g) +f=m-1 +for(;k>0;){e=A.dhw(l,n,f);--k +A.czQ(e,g,0,n,k,o) +if(n[f]=0;--o)if(s[o]!==0)return p +return p-1}, +M(a,b){var s +if(b.c===0)throw A.d(B.Ag) +s=this.Th(b) +if(s.a)s=b.a?s.W(0,b):s.S(0,b) +return s}, +gAq(a){if(this.c===0)return 0 +return this.a?-1:1}, +Yd(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f +if(b.a)throw A.d(A.aM("exponent must be positive: "+b.k(0),null)) +if(c.bn(0,$.ic())<=0)throw A.d(A.aM("modulus must be strictly positive: "+c.k(0),null)) +if(b.c===0)return $.jC() +s=c.c +r=2*s+4 +q=b.goh(0) +if(q<=0)return $.jC() +p=new A.bSw(c,c.hN(0,16-B.d.goh(c.b[s-1]))) +o=new Uint16Array(r) +n=new Uint16Array(r) +m=new Uint16Array(s) +l=p.LY(this,m) +for(k=l-1;k>=0;--k)o[k]=m[k] +for(j=q-2,i=l;j>=0;--j){h=p.aMW(o,i,n) +if(b.hM(0,$.jC().hN(0,j)).c!==0)i=p.aqy(o,A.dhx(n,h,m,l,o)) +else{i=h +g=n +n=o +o=g}}f=A.jX(i,o) +return new A.hO(!1,o,f)}, +bBd(a,b){var s,r=this,q=$.ic() +if(b.bn(0,q)<=0)throw A.d(A.aM("Modulus must be strictly positive: "+b.k(0),null)) +s=b.bn(0,$.jC()) +if(s===0)return q +return A.dhv(b,r.a||A.lU(r.b,r.c,b.b,b.c)>=0?r.M(0,b):r,!0)}, +au(a){var s,r,q +for(s=this.c-1,r=this.b,q=0;s>=0;--s)q=q*65536+r[s] +return this.a?-q:q}, +k(a){var s,r,q,p,o,n=this,m=n.c +if(m===0)return"0" +if(m===1){if(n.a)return B.d.k(-n.b[0]) +return B.d.k(n.b[0])}s=A.a([],t.s) +m=n.a +r=m?n.o1(0):n +for(;r.c>1;){q=$.cD3() +if(q.c===0)A.C(B.Ag) +p=r.Th(q).k(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.b_P(q)}s.push(B.d.k(r.b[0])) +if(m)s.push("-") +return new A.bE(s,t.fh).jG(0)}, +$iaH:1, +$icT:1} +A.bSx.prototype={ +$2(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +$S:299} +A.bSy.prototype={ +$1(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +$S:36} +A.bSw.prototype={ +LY(a,b){var s,r,q,p,o,n=a.a +if(!n){s=this.a +s=A.lU(a.b,a.c,s.b,s.c)>=0}else s=!0 +if(s){s=this.a +r=a.Th(s) +if(n&&r.c>0)r=r.S(0,s) +q=r.c +p=r.b}else{q=a.c +p=a.b}for(o=q;--o,o>=0;)b[o]=p[o] +return q}, +aqy(a,b){var s +if(b=-9999&&A.b7(s)<=9999?A.cGt(A.b7(s)):A.d4d(A.b7(s)),q=A.ys(A.bp(s)),p=A.ys(A.cL(s)),o=A.ys(A.iT(s)),n=A.ys(A.EM(s)),m=A.ys(A.Lh(s)),l=A.cGu(A.aBY(s)),k=r+"-"+q +if(s.b)return k+"-"+p+"T"+o+":"+n+":"+m+"."+l+"Z" +else return k+"-"+p+"T"+o+":"+n+":"+m+"."+l}, +$icT:1} +A.bbI.prototype={ +$1(a){if(a==null)return 0 +return A.cA(a,null)}, +$S:335} +A.bbJ.prototype={ +$1(a){var s,r,q +if(a==null)return 0 +for(s=a.length,r=0,q=0;q<6;++q){r*=10 +if(qr)s=": Not in inclusive range "+A.r(r)+".."+A.r(q) +else s=qe.length +else s=!1 +if(s)f=null +if(f==null){if(e.length>78)e=B.c.R(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.R(e,k,l)+i+"\n"+B.c.X(" ",f-k+j.length)+"^\n"}else return f!=null?g+(" (at offset "+A.r(f)+")"):g}, +$ibP:1, +grR(a){return this.a}, +gIY(a){return this.b}, +gfl(a){return this.c}} +A.a4w.prototype={ +gJ3(){return null}, +k(a){return"IntegerDivisionByZeroException"}, +$ie3:1, +$iAK:1, +$ibP:1} +A.B.prototype={ +jx(a,b){return A.fw(this,A.bk(this).h("B.E"),b)}, +aaB(a,b){var s=this,r=A.bk(s) +if(r.h("aO").b(s))return A.cIp(s,b,r.h("B.E")) +return new A.yQ(s,b,r.h("yQ"))}, +fK(a,b,c){return A.nb(this,b,A.bk(this).h("B.E"),c)}, +kW(a,b){return new A.b1(this,b,A.bk(this).h("b1"))}, +a_a(a,b){return new A.cv(this,b.h("cv<0>"))}, +MM(a,b,c){return new A.eE(this,b,A.bk(this).h("@").a1(c).h("eE<1,2>"))}, +p(a,b){var s +for(s=this.gaz(this);s.t();)if(J.q(s.gK(s),b))return!0 +return!1}, +aE(a,b){var s +for(s=this.gaz(this);s.t();)b.$1(s.gK(s))}, +i6(a,b){var s,r=this.gaz(this) +if(!r.t())throw A.d(A.dB()) +s=r.gK(r) +for(;r.t();)s=b.$2(s,r.gK(r)) +return s}, +l8(a,b,c){var s,r +for(s=this.gaz(this),r=b;s.t();)r=c.$2(r,s.gK(s)) +return r}, +lF(a,b){var s +for(s=this.gaz(this);s.t();)if(!b.$1(s.gK(s)))return!1 +return!0}, +bQ(a,b){var s,r,q=this.gaz(this) +if(!q.t())return"" +s=J.cw(q.gK(q)) +if(!q.t())return s +if(b.length===0){r=s +do r+=J.cw(q.gK(q)) +while(q.t())}else{r=s +do r=r+b+J.cw(q.gK(q)) +while(q.t())}return r.charCodeAt(0)==0?r:r}, +jG(a){return this.bQ(0,"")}, +ef(a,b){var s +for(s=this.gaz(this);s.t();)if(b.$1(s.gK(s)))return!0 +return!1}, +ib(a,b){return A.R(this,b,A.bk(this).h("B.E"))}, +eO(a){return this.ib(0,!0)}, +jq(a){return A.hh(this,A.bk(this).h("B.E"))}, +gA(a){var s,r=this.gaz(this) +for(s=0;r.t();)++s +return s}, +gad(a){return!this.gaz(this).t()}, +gcU(a){return!this.gad(this)}, +nl(a,b){return A.bKu(this,b,A.bk(this).h("B.E"))}, +my(a,b){return A.cz1(this,b,A.bk(this).h("B.E"))}, +aMt(a,b){return new A.Mj(this,b,A.bk(this).h("Mj"))}, +ga2(a){var s=this.gaz(this) +if(!s.t())throw A.d(A.dB()) +return s.gK(s)}, +gP(a){var s,r=this.gaz(this) +if(!r.t())throw A.d(A.dB()) +do s=r.gK(r) +while(r.t()) +return s}, +gcW(a){var s,r=this.gaz(this) +if(!r.t())throw A.d(A.dB()) +s=r.gK(r) +if(r.t())throw A.d(A.DO()) +return s}, +abE(a,b,c){var s,r,q=this.gaz(this) +do{if(!q.t()){if(c!=null)return c.$0() +throw A.d(A.dB())}s=q.gK(q)}while(!b.$1(s)) +for(;q.t();){r=q.gK(q) +if(b.$1(r))s=r}return s}, +bzL(a,b){return this.abE(0,b,null)}, +dE(a,b){var s,r +A.js(b,"index") +s=this.gaz(this) +for(r=b;s.t();){if(r===0)return s.gK(s);--r}throw A.d(A.ik(b,b-r,this,null,"index"))}, +k(a){return A.cxC(this,"(",")")}, +aMq(a){return this.gcW(this).$0()}} +A.aeX.prototype={ +dE(a,b){A.bnn(b,this.a,this,null,null) +return this.b.$1(b)}, +gA(a){return this.a}} +A.aY.prototype={ +k(a){return"MapEntry("+A.r(this.a)+": "+A.r(this.b)+")"}} +A.bd.prototype={ +gv(a){return A.S.prototype.gv.call(this,0)}, +k(a){return"null"}} +A.S.prototype={$iS:1, +l(a,b){return this===b}, +gv(a){return A.ef(this)}, +k(a){return"Instance of '"+A.byk(this)+"'"}, +E(a,b){throw A.d(A.cKl(this,b))}, +gjp(a){return A.I(this)}, +toString(){return this.k(this)}, +$0(){return this.E(this,A.P("call","$0",0,[],[],0))}, +$1(a){return this.E(this,A.P("call","$1",0,[a],[],0))}, +$2(a,b){return this.E(this,A.P("call","$2",0,[a,b],[],0))}, +$3$1(a,b,c,d){return this.E(this,A.P("call","$3$1",0,[a,b,c,d],[],3))}, +$1$2$onError(a,b,c){return this.E(this,A.P("call","$1$2$onError",0,[a,b,c],["onError"],1))}, +$2$1(a,b,c){return this.E(this,A.P("call","$2$1",0,[a,b,c],[],2))}, +$1$1(a,b){return this.E(this,A.P("call","$1$1",0,[a,b],[],1))}, +$3(a,b,c){return this.E(this,A.P("call","$3",0,[a,b,c],[],0))}, +$4(a,b,c,d){return this.E(this,A.P("call","$4",0,[a,b,c,d],[],0))}, +$3$3(a,b,c,d,e,f){return this.E(this,A.P("call","$3$3",0,[a,b,c,d,e,f],[],3))}, +$2$2(a,b,c,d){return this.E(this,A.P("call","$2$2",0,[a,b,c,d],[],2))}, +$1$2(a,b,c){return this.E(this,A.P("call","$1$2",0,[a,b,c],[],1))}, +$4$cancelOnError$onDone$onError(a,b,c,d){return this.E(this,A.P("call","$4$cancelOnError$onDone$onError",0,[a,b,c,d],["cancelOnError","onDone","onError"],0))}, +$1$highContrast(a){return this.E(this,A.P("call","$1$highContrast",0,[a],["highContrast"],0))}, +$1$accessibilityFeatures(a){return this.E(this,A.P("call","$1$accessibilityFeatures",0,[a],["accessibilityFeatures"],0))}, +$3$replace$state(a,b,c){return this.E(this,A.P("call","$3$replace$state",0,[a,b,c],["replace","state"],0))}, +$2$path(a,b){return this.E(this,A.P("call","$2$path",0,[a,b],["path"],0))}, +$1$growable(a){return this.E(this,A.P("call","$1$growable",0,[a],["growable"],0))}, +$2$params(a,b){return this.E(this,A.P("call","$2$params",0,[a,b],["params"],0))}, +$1$accessibleNavigation(a){return this.E(this,A.P("call","$1$accessibleNavigation",0,[a],["accessibleNavigation"],0))}, +$1$semanticsEnabled(a){return this.E(this,A.P("call","$1$semanticsEnabled",0,[a],["semanticsEnabled"],0))}, +$3$onAction$onChange(a,b,c){return this.E(this,A.P("call","$3$onAction$onChange",0,[a,b,c],["onAction","onChange"],0))}, +$1$0(a){return this.E(this,A.P("call","$1$0",0,[a],[],1))}, +$1$locales(a){return this.E(this,A.P("call","$1$locales",0,[a],["locales"],0))}, +$1$textScaleFactor(a){return this.E(this,A.P("call","$1$textScaleFactor",0,[a],["textScaleFactor"],0))}, +$1$platformBrightness(a){return this.E(this,A.P("call","$1$platformBrightness",0,[a],["platformBrightness"],0))}, +$13$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scale$signalKind$timeStamp$viewId(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.E(this,A.P("call","$13$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scale$signalKind$timeStamp$viewId",0,[a,b,c,d,e,f,g,h,i,j,k,l,m],["buttons","change","device","kind","physicalX","physicalY","pressure","pressureMax","scale","signalKind","timeStamp","viewId"],0))}, +$14$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scrollDeltaX$scrollDeltaY$signalKind$timeStamp$viewId(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return this.E(this,A.P("call","$14$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scrollDeltaX$scrollDeltaY$signalKind$timeStamp$viewId",0,[a,b,c,d,e,f,g,h,i,j,k,l,m,n],["buttons","change","device","kind","physicalX","physicalY","pressure","pressureMax","scrollDeltaX","scrollDeltaY","signalKind","timeStamp","viewId"],0))}, +$13$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$tilt$timeStamp$viewId(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.E(this,A.P("call","$13$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$tilt$timeStamp$viewId",0,[a,b,c,d,e,f,g,h,i,j,k,l,m],["buttons","change","device","kind","physicalX","physicalY","pressure","pressureMax","signalKind","tilt","timeStamp","viewId"],0))}, +$1$hostElementAttributes(a){return this.E(this,A.P("call","$1$hostElementAttributes",0,[a],["hostElementAttributes"],0))}, +$3$level$stackTrace(a,b,c){return this.E(this,A.P("call","$3$level$stackTrace",0,[a,b,c],["level","stackTrace"],0))}, +$1$style(a){return this.E(this,A.P("call","$1$style",0,[a],["style"],0))}, +$2$priority$scheduler(a,b){return this.E(this,A.P("call","$2$priority$scheduler",0,[a,b],["priority","scheduler"],0))}, +$2$position(a,b){return this.E(this,A.P("call","$2$position",0,[a,b],["position"],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.E(this,A.P("call","$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.E(this,A.P("call","$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))}, +$1$dragDevices(a){return this.E(this,A.P("call","$1$dragDevices",0,[a],["dragDevices"],0))}, +$2$aspect(a,b){return this.E(this,A.P("call","$2$aspect",0,[a,b],["aspect"],0))}, +$3$onError(a,b,c){return this.E(this,A.P("call","$3$onError",0,[a,b,c],["onError"],0))}, +$3$bodyColor$decorationColor$displayColor(a,b,c){return this.E(this,A.P("call","$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.E(this,A.P("call","$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))}, +$4$level$name$stackTrace(a,b,c,d){return this.E(this,A.P("call","$4$level$name$stackTrace",0,[a,b,c,d],["level","name","stackTrace"],0))}, +$3$context$exception$stack(a,b,c){return this.E(this,A.P("call","$3$context$exception$stack",0,[a,b,c],["context","exception","stack"],0))}, +$2$onError(a,b){return this.E(this,A.P("call","$2$onError",0,[a,b],["onError"],0))}, +$2$chunkCallback(a,b){return this.E(this,A.P("call","$2$chunkCallback",0,[a,b],["chunkCallback"],0))}, +$4$allowUpscaling$targetHeight$targetWidth(a,b,c,d){return this.E(this,A.P("call","$4$allowUpscaling$targetHeight$targetWidth",0,[a,b,c,d],["allowUpscaling","targetHeight","targetWidth"],0))}, +$2$context$qrCodeData(a,b){return this.E(this,A.P("call","$2$context$qrCodeData",0,[a,b],["context","qrCodeData"],0))}, +$2$primaryTextTheme$textTheme(a,b){return this.E(this,A.P("call","$2$primaryTextTheme$textTheme",0,[a,b],["primaryTextTheme","textTheme"],0))}, +$1$patches(a){return this.E(this,A.P("call","$1$patches",0,[a],["patches"],0))}, +$3$background$cellStyle$platte(a,b,c){return this.E(this,A.P("call","$3$background$cellStyle$platte",0,[a,b,c],["background","cellStyle","platte"],0))}, +$1$end(a){return this.E(this,A.P("call","$1$end",0,[a],["end"],0))}, +$1$flush(a){return this.E(this,A.P("call","$1$flush",0,[a],["flush"],0))}, +$1$lastModified(a){return this.E(this,A.P("call","$1$lastModified",0,[a],["lastModified"],0))}, +$3$forgottenChildren(a,b,c){return this.E(this,A.P("call","$3$forgottenChildren",0,[a,b,c],["forgottenChildren"],0))}, +$2$after(a,b){return this.E(this,A.P("call","$2$after",0,[a,b],["after"],0))}, +$1$paragraphWidth(a){return this.E(this,A.P("call","$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.E(this,A.P("call","$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))}, +$3$boxHeightStyle(a,b,c){return this.E(this,A.P("call","$3$boxHeightStyle",0,[a,b,c],["boxHeightStyle"],0))}, +$2$end$start(a,b){return this.E(this,A.P("call","$2$end$start",0,[a,b],["end","start"],0))}, +$3$includePlaceholders$includeSemanticsLabels(a,b,c){return this.E(this,A.P("call","$3$includePlaceholders$includeSemanticsLabels",0,[a,b,c],["includePlaceholders","includeSemanticsLabels"],0))}, +$4$boxHeightStyle$boxWidthStyle(a,b,c,d){return this.E(this,A.P("call","$4$boxHeightStyle$boxWidthStyle",0,[a,b,c,d],["boxHeightStyle","boxWidthStyle"],0))}, +$3$dimensions$textScaler(a,b,c){return this.E(this,A.P("call","$3$dimensions$textScaler",0,[a,b,c],["dimensions","textScaler"],0))}, +$1$selection(a){return this.E(this,A.P("call","$1$selection",0,[a],["selection"],0))}, +$1$rect(a){return this.E(this,A.P("call","$1$rect",0,[a],["rect"],0))}, +$4$curve$descendant$duration$rect(a,b,c,d){return this.E(this,A.P("call","$4$curve$descendant$duration$rect",0,[a,b,c,d],["curve","descendant","duration","rect"],0))}, +$2$cause$from(a,b){return this.E(this,A.P("call","$2$cause$from",0,[a,b],["cause","from"],0))}, +$1$composing(a){return this.E(this,A.P("call","$1$composing",0,[a],["composing"],0))}, +$2$ignoreCurrentFocus(a,b){return this.E(this,A.P("call","$2$ignoreCurrentFocus",0,[a,b],["ignoreCurrentFocus"],0))}, +$3$alignmentPolicy$forward(a,b,c){return this.E(this,A.P("call","$3$alignmentPolicy$forward",0,[a,b,c],["alignmentPolicy","forward"],0))}, +$5$alignment$alignmentPolicy$curve$duration(a,b,c,d,e){return this.E(this,A.P("call","$5$alignment$alignmentPolicy$curve$duration",0,[a,b,c,d,e],["alignment","alignmentPolicy","curve","duration"],0))}, +$6$alignment$alignmentPolicy$curve$duration$targetRenderObject(a,b,c,d,e,f){return this.E(this,A.P("call","$6$alignment$alignmentPolicy$curve$duration$targetRenderObject",0,[a,b,c,d,e,f],["alignment","alignmentPolicy","curve","duration","targetRenderObject"],0))}, +$1$affinity(a){return this.E(this,A.P("call","$1$affinity",0,[a],["affinity"],0))}, +$3$code$details$message(a,b,c){return this.E(this,A.P("call","$3$code$details$message",0,[a,b,c],["code","details","message"],0))}, +$2$code$message(a,b){return this.E(this,A.P("call","$2$code$message",0,[a,b],["code","message"],0))}, +$3$context$style$withComposing(a,b,c){return this.E(this,A.P("call","$3$context$style$withComposing",0,[a,b,c],["context","style","withComposing"],0))}, +$5$baseline$baselineOffset(a,b,c,d,e){return this.E(this,A.P("call","$5$baseline$baselineOffset",0,[a,b,c,d,e],["baseline","baselineOffset"],0))}, +$1$bottom(a){return this.E(this,A.P("call","$1$bottom",0,[a],["bottom"],0))}, +$3$curve$duration$rect(a,b,c){return this.E(this,A.P("call","$3$curve$duration$rect",0,[a,b,c],["curve","duration","rect"],0))}, +$3$curve$duration(a,b,c){return this.E(this,A.P("call","$3$curve$duration",0,[a,b,c],["curve","duration"],0))}, +$1$text(a){return this.E(this,A.P("call","$1$text",0,[a],["text"],0))}, +$2$composing$selection(a,b){return this.E(this,A.P("call","$2$composing$selection",0,[a,b],["composing","selection"],0))}, +$2$reversed(a,b){return this.E(this,A.P("call","$2$reversed",0,[a,b],["reversed"],0))}, +$1$range(a){return this.E(this,A.P("call","$1$range",0,[a],["range"],0))}, +$2$data$error(a,b){return this.E(this,A.P("call","$2$data$error",0,[a,b],["data","error"],0))}, +$2$terse(a,b){return this.E(this,A.P("call","$2$terse",0,[a,b],["terse"],0))}, +$2$withDrive(a,b){return this.E(this,A.P("call","$2$withDrive",0,[a,b],["withDrive"],0))}, +$2$elementVisitor$notifierVisitor(a,b){return this.E(this,A.P("call","$2$elementVisitor$notifierVisitor",0,[a,b],["elementVisitor","notifierVisitor"],0))}, +$2$3(a,b,c,d,e){return this.E(this,A.P("call","$2$3",0,[a,b,c,d,e],[],2))}, +$1$didChangeDependency(a){return this.E(this,A.P("call","$1$didChangeDependency",0,[a],["didChangeDependency"],0))}, +$2$fireImmediately(a,b){return this.E(this,A.P("call","$2$fireImmediately",0,[a,b],["fireImmediately"],0))}, +$2$origin$override(a,b){return this.E(this,A.P("call","$2$origin$override",0,[a,b],["origin","override"],0))}, +$3$onDone$onError(a,b,c){return this.E(this,A.P("call","$3$onDone$onError",0,[a,b,c],["onDone","onError"],0))}, +$1$findFirstFocus(a){return this.E(this,A.P("call","$1$findFirstFocus",0,[a],["findFirstFocus"],0))}, +$5(a,b,c,d,e){return this.E(this,A.P("call","$5",0,[a,b,c,d,e],[],0))}, +$1$matches(a){return this.E(this,A.P("call","$1$matches",0,[a],["matches"],0))}, +$1$path(a){return this.E(this,A.P("call","$1$path",0,[a],["path"],0))}, +$6$colorScheme$navigationBarTheme$pageTransitionsTheme$platform$splashFactory$visualDensity(a,b,c,d,e,f){return this.E(this,A.P("call","$6$colorScheme$navigationBarTheme$pageTransitionsTheme$platform$splashFactory$visualDensity",0,[a,b,c,d,e,f],["colorScheme","navigationBarTheme","pageTransitionsTheme","platform","splashFactory","visualDensity"],0))}, +$1$fontWeight(a){return this.E(this,A.P("call","$1$fontWeight",0,[a],["fontWeight"],0))}, +$1$account(a){return this.E(this,A.P("call","$1$account",0,[a],["account"],0))}, +$2$options(a,b){return this.E(this,A.P("call","$2$options",0,[a,b],["options"],0))}, +$2$class_(a,b){return this.E(this,A.P("call","$2$class_",0,[a,b],["class_"],0))}, +$1$line(a){return this.E(this,A.P("call","$1$line",0,[a],["line"],0))}, +$2$color(a,b){return this.E(this,A.P("call","$2$color",0,[a,b],["color"],0))}, +$3$class_$id(a,b,c){return this.E(this,A.P("call","$3$class_$id",0,[a,b,c],["class_","id"],0))}, +$2$id(a,b){return this.E(this,A.P("call","$2$id",0,[a,b],["id"],0))}, +$1$2$options(a,b,c){return this.E(this,A.P("call","$1$2$options",0,[a,b,c],["options"],1))}, +$3$length$position(a,b,c){return this.E(this,A.P("call","$3$length$position",0,[a,b,c],["length","position"],0))}, +$6(a,b,c,d,e,f){return this.E(this,A.P("call","$6",0,[a,b,c,d,e,f],[],0))}, +$1$6$cancelToken$data$onReceiveProgress$options$queryParameters(a,b,c,d,e,f,g){return this.E(this,A.P("call","$1$6$cancelToken$data$onReceiveProgress$options$queryParameters",0,[a,b,c,d,e,f,g],["cancelToken","data","onReceiveProgress","options","queryParameters"],1))}, +$1$2$data(a,b,c){return this.E(this,A.P("call","$1$2$data",0,[a,b,c],["data"],1))}, +$1$errorText(a){return this.E(this,A.P("call","$1$errorText",0,[a],["errorText"],0))}, +$31$alignLabelWithHint$border$constraints$contentPadding$counterStyle$disabledBorder$enabledBorder$errorBorder$errorMaxLines$errorStyle$fillColor$filled$floatingLabelAlignment$floatingLabelBehavior$floatingLabelStyle$focusColor$focusedBorder$focusedErrorBorder$helperMaxLines$helperStyle$hintFadeDuration$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,b1){return this.E(this,A.P("call","$31$alignLabelWithHint$border$constraints$contentPadding$counterStyle$disabledBorder$enabledBorder$errorBorder$errorMaxLines$errorStyle$fillColor$filled$floatingLabelAlignment$floatingLabelBehavior$floatingLabelStyle$focusColor$focusedBorder$focusedErrorBorder$helperMaxLines$helperStyle$hintFadeDuration$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,b1],["alignLabelWithHint","border","constraints","contentPadding","counterStyle","disabledBorder","enabledBorder","errorBorder","errorMaxLines","errorStyle","fillColor","filled","floatingLabelAlignment","floatingLabelBehavior","floatingLabelStyle","focusColor","focusedBorder","focusedErrorBorder","helperMaxLines","helperStyle","hintFadeDuration","hintStyle","hoverColor","iconColor","isCollapsed","isDense","labelStyle","prefixIconColor","prefixStyle","suffixIconColor","suffixStyle"],0))}, +$3$composing$selection$text(a,b,c){return this.E(this,A.P("call","$3$composing$selection$text",0,[a,b,c],["composing","selection","text"],0))}, +$2$onProgress(a,b){return this.E(this,A.P("call","$2$onProgress",0,[a,b],["onProgress"],0))}, +$2$initial(a,b){return this.E(this,A.P("call","$2$initial",0,[a,b],["initial"],0))}, +$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name(a,b,c,d,e,f,g){return this.E(this,A.P("call","$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name",0,[a,b,c,d,e,f,g],["allTransitiveDependencies","argument","debugGetCreateSourceHash","dependencies","from","name"],0))}, +$1$userInfo(a){return this.E(this,A.P("call","$1$userInfo",0,[a],["userInfo"],0))}, +$1$port(a){return this.E(this,A.P("call","$1$port",0,[a],["port"],0))}, +$1$host(a){return this.E(this,A.P("call","$1$host",0,[a],["host"],0))}, +$1$scheme(a){return this.E(this,A.P("call","$1$scheme",0,[a],["scheme"],0))}, +$1$mode(a){return this.E(this,A.P("call","$1$mode",0,[a],["mode"],0))}, +$1$enabled(a){return this.E(this,A.P("call","$1$enabled",0,[a],["enabled"],0))}, +$1$password(a){return this.E(this,A.P("call","$1$password",0,[a],["password"],0))}, +$1$start(a){return this.E(this,A.P("call","$1$start",0,[a],["start"],0))}, +$8(a,b,c,d,e,f,g,h){return this.E(this,A.P("call","$8",0,[a,b,c,d,e,f,g,h],[],0))}, +$5$fileFilter$initialDirectory$multipleFiles$pickDirectory(a,b,c,d,e){return this.E(this,A.P("call","$5$fileFilter$initialDirectory$multipleFiles$pickDirectory",0,[a,b,c,d,e],["fileFilter","initialDirectory","multipleFiles","pickDirectory"],0))}, +$5$name$schoolYear$semester$signature$startDate(a,b,c,d,e){return this.E(this,A.P("call","$5$name$schoolYear$semester$signature$startDate",0,[a,b,c,d,e],["name","schoolYear","semester","signature","startDate"],0))}, +$8$enableDomStorage$enableJavaScript$headers$universalLinksOnly$useSafariVC$useWebView$webOnlyWindowName(a,b,c,d,e,f,g,h){return this.E(this,A.P("call","$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))}, +$1$parts(a){return this.E(this,A.P("call","$1$parts",0,[a],["parts"],0))}, +$1$type(a){return this.E(this,A.P("call","$1$type",0,[a],["type"],0))}, +$1$cardTheme(a){return this.E(this,A.P("call","$1$cardTheme",0,[a],["cardTheme"],0))}, +$1$color(a){return this.E(this,A.P("call","$1$color",0,[a],["color"],0))}, +$2$themeColor(a,b){return this.E(this,A.P("call","$2$themeColor",0,[a,b],["themeColor"],0))}, +$2$lastModified$name(a,b){return this.E(this,A.P("call","$2$lastModified$name",0,[a,b],["lastModified","name"],0))}, +$4$sharePositionOrigin$subject$text(a,b,c,d){return this.E(this,A.P("call","$4$sharePositionOrigin$subject$text",0,[a,b,c,d],["sharePositionOrigin","subject","text"],0))}, +$1$name(a){return this.E(this,A.P("call","$1$name",0,[a],["name"],0))}, +$3$colorId$grayOut(a,b,c){return this.E(this,A.P("call","$3$colorId$grayOut",0,[a,b,c],["colorId","grayOut"],0))}, +$5$colorId$grayOut$name$place$teachers(a,b,c,d,e){return this.E(this,A.P("call","$5$colorId$grayOut$name$place$teachers",0,[a,b,c,d,e],["colorId","grayOut","name","place","teachers"],0))}, +$3$author$colors$name(a,b,c){return this.E(this,A.P("call","$3$author$colors$name",0,[a,b,c],["author","colors","name"],0))}, +$2$colors$name(a,b){return this.E(this,A.P("call","$2$colors$name",0,[a,b],["colors","name"],0))}, +$9$applyTextScaling$color$fill$grade$opacity$opticalSize$shadows$size$weight(a,b,c,d,e,f,g,h,i){return this.E(this,A.P("call","$9$applyTextScaling$color$fill$grade$opacity$opticalSize$shadows$size$weight",0,[a,b,c,d,e,f,g,h,i],["applyTextScaling","color","fill","grade","opacity","opticalSize","shadows","size","weight"],0))}, +$3$cancel$down$reason(a,b,c){return this.E(this,A.P("call","$3$cancel$down$reason",0,[a,b,c],["cancel","down","reason"],0))}, +$2$down$up(a,b){return this.E(this,A.P("call","$2$down$up",0,[a,b],["down","up"],0))}, +$1$down(a){return this.E(this,A.P("call","$1$down",0,[a],["down"],0))}, +$9$ascent$baseline$descent$hardBreak$height$left$lineNumber$unscaledAscent$width(a,b,c,d,e,f,g,h,i){return this.E(this,A.P("call","$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))}, +$3$isHeader(a,b,c){return this.E(this,A.P("call","$3$isHeader",0,[a,b,c],["isHeader"],0))}, +$3$imperativeMatches(a,b,c){return this.E(this,A.P("call","$3$imperativeMatches",0,[a,b,c],["imperativeMatches"],0))}, +$3$pageKey(a,b,c){return this.E(this,A.P("call","$3$pageKey",0,[a,b,c],["pageKey"],0))}, +$4$complete$withCleanParts(a,b,c,d){return this.E(this,A.P("call","$4$complete$withCleanParts",0,[a,b,c,d],["complete","withCleanParts"],0))}, +$4$complete(a,b,c,d){return this.E(this,A.P("call","$4$complete",0,[a,b,c,d],["complete"],0))}, +$2$color$fontSize(a,b){return this.E(this,A.P("call","$2$color$fontSize",0,[a,b],["color","fontSize"],0))}, +$3$textDirection(a,b,c){return this.E(this,A.P("call","$3$textDirection",0,[a,b,c],["textDirection"],0))}, +$3$rect(a,b,c){return this.E(this,A.P("call","$3$rect",0,[a,b,c],["rect"],0))}, +$3$debugReport(a,b,c){return this.E(this,A.P("call","$3$debugReport",0,[a,b,c],["debugReport"],0))}, +$2$viewInsets$viewPadding(a,b){return this.E(this,A.P("call","$2$viewInsets$viewPadding",0,[a,b],["viewInsets","viewPadding"],0))}, +$3$sigmaX$sigmaY$tileMode(a,b,c){return this.E(this,A.P("call","$3$sigmaX$sigmaY$tileMode",0,[a,b,c],["sigmaX","sigmaY","tileMode"],0))}, +$1$minimum(a){return this.E(this,A.P("call","$1$minimum",0,[a],["minimum"],0))}, +$2$padding$viewPadding(a,b){return this.E(this,A.P("call","$2$padding$viewPadding",0,[a,b],["padding","viewPadding"],0))}, +$2$bottom$top(a,b){return this.E(this,A.P("call","$2$bottom$top",0,[a,b],["bottom","top"],0))}, +$2$left$right(a,b){return this.E(this,A.P("call","$2$left$right",0,[a,b],["left","right"],0))}, +$1$padding(a){return this.E(this,A.P("call","$1$padding",0,[a],["padding"],0))}, +$2$hitTest$paintTransform(a,b){return this.E(this,A.P("call","$2$hitTest$paintTransform",0,[a,b],["hitTest","paintTransform"],0))}, +$3$crossAxisPosition$mainAxisPosition(a,b,c){return this.E(this,A.P("call","$3$crossAxisPosition$mainAxisPosition",0,[a,b,c],["crossAxisPosition","mainAxisPosition"],0))}, +$2$hitTest$paintOffset(a,b){return this.E(this,A.P("call","$2$hitTest$paintOffset",0,[a,b],["hitTest","paintOffset"],0))}, +$2$textDirection(a,b){return this.E(this,A.P("call","$2$textDirection",0,[a,b],["textDirection"],0))}, +$1$includeChildren(a){return this.E(this,A.P("call","$1$includeChildren",0,[a],["includeChildren"],0))}, +$3$cancelOnError$onDone(a,b,c){return this.E(this,A.P("call","$3$cancelOnError$onDone",0,[a,b,c],["cancelOnError","onDone"],0))}, +$1$trailing(a){return this.E(this,A.P("call","$1$trailing",0,[a],["trailing"],0))}, +$1$floatingActionButtonArea(a){return this.E(this,A.P("call","$1$floatingActionButtonArea",0,[a],["floatingActionButtonArea"],0))}, +$1$url(a){return this.E(this,A.P("call","$1$url",0,[a],["url"],0))}, +$3$eTag$relativePath$validTill(a,b,c){return this.E(this,A.P("call","$3$eTag$relativePath$validTill",0,[a,b,c],["eTag","relativePath","validTill"],0))}, +$1$length(a){return this.E(this,A.P("call","$1$length",0,[a],["length"],0))}, +$1$tailVisitor(a){return this.E(this,A.P("call","$1$tailVisitor",0,[a],["tailVisitor"],0))}, +$2$createChild$followTailLink(a,b){return this.E(this,A.P("call","$2$createChild$followTailLink",0,[a,b],["createChild","followTailLink"],0))}, +$1$recursive(a){return this.E(this,A.P("call","$1$recursive",0,[a],["recursive"],0))}, +$2$defaultColor(a,b){return this.E(this,A.P("call","$2$defaultColor",0,[a,b],["defaultColor"],0))}, +$2$child$context(a,b){return this.E(this,A.P("call","$2$child$context",0,[a,b],["child","context"],0))}, +$2$initialRestore(a,b){return this.E(this,A.P("call","$2$initialRestore",0,[a,b],["initialRestore"],0))}, +$4$axis$rect(a,b,c,d){return this.E(this,A.P("call","$4$axis$rect",0,[a,b,c,d],["axis","rect"],0))}, +$2$isLast(a,b){return this.E(this,A.P("call","$2$isLast",0,[a,b],["isLast"],0))}, +$4$children$recognizer$style$text(a,b,c,d){return this.E(this,A.P("call","$4$children$recognizer$style$text",0,[a,b,c,d],["children","recognizer","style","text"],0))}, +$6$color$decoration$decorationColor$decorationStyle$decorationThickness$fontStyle(a,b,c,d,e,f){return this.E(this,A.P("call","$6$color$decoration$decorationColor$decorationStyle$decorationThickness$fontStyle",0,[a,b,c,d,e,f],["color","decoration","decorationColor","decorationStyle","decorationThickness","fontStyle"],0))}, +$2$debugLabel$height(a,b){return this.E(this,A.P("call","$2$debugLabel$height",0,[a,b],["debugLabel","height"],0))}, +$3$recognizer$style$text(a,b,c){return this.E(this,A.P("call","$3$recognizer$style$text",0,[a,b,c],["recognizer","style","text"],0))}, +$1$parent(a){return this.E(this,A.P("call","$1$parent",0,[a],["parent"],0))}, +$1$1$parent(a,b){return this.E(this,A.P("call","$1$1$parent",0,[a,b],["parent"],1))}, +$1$1$style(a,b){return this.E(this,A.P("call","$1$1$style",0,[a,b],["style"],1))}, +$1$all(a){return this.E(this,A.P("call","$1$all",0,[a],["all"],0))}, +$1$inlineEnd(a){return this.E(this,A.P("call","$1$inlineEnd",0,[a],["inlineEnd"],0))}, +$1$inlineStart(a){return this.E(this,A.P("call","$1$inlineStart",0,[a],["inlineStart"],0))}, +$1$left(a){return this.E(this,A.P("call","$1$left",0,[a],["left"],0))}, +$1$right(a){return this.E(this,A.P("call","$1$right",0,[a],["right"],0))}, +$1$top(a){return this.E(this,A.P("call","$1$top",0,[a],["top"],0))}, +$4$radiusBottomLeft$radiusBottomRight$radiusTopLeft$radiusTopRight(a,b,c,d){return this.E(this,A.P("call","$4$radiusBottomLeft$radiusBottomRight$radiusTopLeft$radiusTopRight",0,[a,b,c,d],["radiusBottomLeft","radiusBottomRight","radiusTopLeft","radiusTopRight"],0))}, +$1$radiusBottomLeft(a){return this.E(this,A.P("call","$1$radiusBottomLeft",0,[a],["radiusBottomLeft"],0))}, +$1$radiusBottomRight(a){return this.E(this,A.P("call","$1$radiusBottomRight",0,[a],["radiusBottomRight"],0))}, +$1$radiusTopLeft(a){return this.E(this,A.P("call","$1$radiusTopLeft",0,[a],["radiusTopLeft"],0))}, +$1$radiusTopRight(a){return this.E(this,A.P("call","$1$radiusTopRight",0,[a],["radiusTopRight"],0))}, +$1$dataDepth(a){return this.E(this,A.P("call","$1$dataDepth",0,[a],["dataDepth"],0))}, +$1$items(a){return this.E(this,A.P("call","$1$items",0,[a],["items"],0))}, +$1$maxLines(a){return this.E(this,A.P("call","$1$maxLines",0,[a],["maxLines"],0))}, +$1$1$value(a,b){return this.E(this,A.P("call","$1$1$value",0,[a,b],["value"],1))}, +$5$colors$indices$textureCoordinates(a,b,c,d,e){return this.E(this,A.P("call","$5$colors$indices$textureCoordinates",0,[a,b,c,d,e],["colors","indices","textureCoordinates"],0))}, +$2$replace(a,b){return this.E(this,A.P("call","$2$replace",0,[a,b],["replace"],0))}, +$4$clipResolver$maskResolver$patternResolver(a,b,c,d){return this.E(this,A.P("call","$4$clipResolver$maskResolver$patternResolver",0,[a,b,c,d],["clipResolver","maskResolver","patternResolver"],0))}, +$3$dir(a,b,c){return this.E(this,A.P("call","$3$dir",0,[a,b,c],["dir"],0))}, +$1$playbackSpeed(a){return this.E(this,A.P("call","$1$playbackSpeed",0,[a],["playbackSpeed"],0))}, +$3$caption$isCompleted$position(a,b,c){return this.E(this,A.P("call","$3$caption$isCompleted$position",0,[a,b,c],["caption","isCompleted","position"],0))}, +$1$scrollbars(a){return this.E(this,A.P("call","$1$scrollbars",0,[a],["scrollbars"],0))}, +$1$isPlaying(a){return this.E(this,A.P("call","$1$isPlaying",0,[a],["isPlaying"],0))}, +$6$duration$errorDescription$isCompleted$isInitialized$rotationCorrection$size(a,b,c,d,e,f){return this.E(this,A.P("call","$6$duration$errorDescription$isCompleted$isInitialized$rotationCorrection$size",0,[a,b,c,d,e,f],["duration","errorDescription","isCompleted","isInitialized","rotationCorrection","size"],0))}, +$1$isCompleted(a){return this.E(this,A.P("call","$1$isCompleted",0,[a],["isCompleted"],0))}, +$1$buffered(a){return this.E(this,A.P("call","$1$buffered",0,[a],["buffered"],0))}, +$1$isBuffering(a){return this.E(this,A.P("call","$1$isBuffering",0,[a],["isBuffering"],0))}, +$2$isCompleted$isPlaying(a,b){return this.E(this,A.P("call","$2$isCompleted$isPlaying",0,[a,b],["isCompleted","isPlaying"],0))}, +$1$volume(a){return this.E(this,A.P("call","$1$volume",0,[a],["volume"],0))}, +$1$isLooping(a){return this.E(this,A.P("call","$1$isLooping",0,[a],["isLooping"],0))}, +$1$thumbShape(a){return this.E(this,A.P("call","$1$thumbShape",0,[a],["thumbShape"],0))}, +$22$activeTickMarkColor$activeTrackColor$disabledActiveTickMarkColor$disabledActiveTrackColor$disabledInactiveTickMarkColor$disabledInactiveTrackColor$disabledSecondaryActiveTrackColor$disabledThumbColor$inactiveTickMarkColor$inactiveTrackColor$overlayColor$overlayShape$secondaryActiveTrackColor$showValueIndicator$thumbColor$thumbShape$tickMarkShape$trackHeight$trackShape$valueIndicatorColor$valueIndicatorShape$valueIndicatorTextStyle(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){return this.E(this,A.P("call","$22$activeTickMarkColor$activeTrackColor$disabledActiveTickMarkColor$disabledActiveTrackColor$disabledInactiveTickMarkColor$disabledInactiveTrackColor$disabledSecondaryActiveTrackColor$disabledThumbColor$inactiveTickMarkColor$inactiveTrackColor$overlayColor$overlayShape$secondaryActiveTrackColor$showValueIndicator$thumbColor$thumbShape$tickMarkShape$trackHeight$trackShape$valueIndicatorColor$valueIndicatorShape$valueIndicatorTextStyle",0,[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2],["activeTickMarkColor","activeTrackColor","disabledActiveTickMarkColor","disabledActiveTrackColor","disabledInactiveTickMarkColor","disabledInactiveTrackColor","disabledSecondaryActiveTrackColor","disabledThumbColor","inactiveTickMarkColor","inactiveTrackColor","overlayColor","overlayShape","secondaryActiveTrackColor","showValueIndicator","thumbColor","thumbShape","tickMarkShape","trackHeight","trackShape","valueIndicatorColor","valueIndicatorShape","valueIndicatorTextStyle"],0))}, +$1$maxScaleFactor(a){return this.E(this,A.P("call","$1$maxScaleFactor",0,[a],["maxScaleFactor"],0))}, +$3$isDiscrete$parentBox$sliderTheme(a,b,c){return this.E(this,A.P("call","$3$isDiscrete$parentBox$sliderTheme",0,[a,b,c],["isDiscrete","parentBox","sliderTheme"],0))}, +$2$affinity$extentOffset(a,b){return this.E(this,A.P("call","$2$affinity$extentOffset",0,[a,b],["affinity","extentOffset"],0))}, +$1$task(a){return this.E(this,A.P("call","$1$task",0,[a],["task"],0))}, +$1$oldWidget(a){return this.E(this,A.P("call","$1$oldWidget",0,[a],["oldWidget"],0))}, +$2$updatePosition$updateTime(a,b){return this.E(this,A.P("call","$2$updatePosition$updateTime",0,[a,b],["updatePosition","updateTime"],0))}, +$2$playCompleter(a,b){return this.E(this,A.P("call","$2$playCompleter",0,[a,b],["playCompleter"],0))}, +$2$processingState$updatePosition(a,b){return this.E(this,A.P("call","$2$processingState$updatePosition",0,[a,b],["processingState","updatePosition"],0))}, +$2$0(a,b){return this.E(this,A.P("call","$2$0",0,[a,b],[],2))}, +$2$force(a,b){return this.E(this,A.P("call","$2$force",0,[a,b],["force"],0))}, +$1$minWidth(a){return this.E(this,A.P("call","$1$minWidth",0,[a],["minWidth"],0))}, +$1$overflow(a){return this.E(this,A.P("call","$1$overflow",0,[a],["overflow"],0))}, +$4$border$borderRadius(a,b,c,d){return this.E(this,A.P("call","$4$border$borderRadius",0,[a,b,c,d],["border","borderRadius"],0))}, +$3$border$color$image(a,b,c){return this.E(this,A.P("call","$3$border$color$image",0,[a,b,c],["border","color","image"],0))}, +$1$borderRadius(a){return this.E(this,A.P("call","$1$borderRadius",0,[a],["borderRadius"],0))}, +$1$repeat(a){return this.E(this,A.P("call","$1$repeat",0,[a],["repeat"],0))}, +$1$size(a){return this.E(this,A.P("call","$1$size",0,[a],["size"],0))}, +$1$alignment(a){return this.E(this,A.P("call","$1$alignment",0,[a],["alignment"],0))}, +$1$imageUrl(a){return this.E(this,A.P("call","$1$imageUrl",0,[a],["imageUrl"],0))}, +$4$color$image(a,b,c,d){return this.E(this,A.P("call","$4$color$image",0,[a,b,c,d],["color","image"],0))}, +$1$whitespace(a){return this.E(this,A.P("call","$1$whitespace",0,[a],["whitespace"],0))}, +$4$alignment$curve$duration(a,b,c,d){return this.E(this,A.P("call","$4$alignment$curve$duration",0,[a,b,c,d],["alignment","curve","duration"],0))}, +$2$debugLabel$fontSize(a,b){return this.E(this,A.P("call","$2$debugLabel$fontSize",0,[a,b],["debugLabel","fontSize"],0))}, +$3$isVisible(a,b,c){return this.E(this,A.P("call","$3$isVisible",0,[a,b,c],["isVisible"],0))}, +$1$offset(a){return this.E(this,A.P("call","$1$offset",0,[a],["offset"],0))}, +$2$offset$textGranularity(a,b){return this.E(this,A.P("call","$2$offset$textGranularity",0,[a,b],["offset","textGranularity"],0))}, +$2$continuous$offset(a,b){return this.E(this,A.P("call","$2$continuous$offset",0,[a,b],["continuous","offset"],0))}, +$3$color$defaultColor$disabledColor(a,b,c){return this.E(this,A.P("call","$3$color$defaultColor$disabledColor",0,[a,b,c],["color","defaultColor","disabledColor"],0))}, +$3$backgroundColor$color$defaultColor(a,b,c){return this.E(this,A.P("call","$3$backgroundColor$color$defaultColor",0,[a,b,c],["backgroundColor","color","defaultColor"],0))}, +$3$color$defaultColor$selectedColor(a,b,c){return this.E(this,A.P("call","$3$color$defaultColor$selectedColor",0,[a,b,c],["color","defaultColor","selectedColor"],0))}, +$1$side(a){return this.E(this,A.P("call","$1$side",0,[a],["side"],0))}, +$1$withDelay(a){return this.E(this,A.P("call","$1$withDelay",0,[a],["withDelay"],0))}, +$2$minHeight$minWidth(a,b){return this.E(this,A.P("call","$2$minHeight$minWidth",0,[a,b],["minHeight","minWidth"],0))}, +$1$fontSize(a){return this.E(this,A.P("call","$1$fontSize",0,[a],["fontSize"],0))}, +$1$maxWidth(a){return this.E(this,A.P("call","$1$maxWidth",0,[a],["maxWidth"],0))}, +$3$dragDevices$overscroll$scrollbars(a,b,c){return this.E(this,A.P("call","$3$dragDevices$overscroll$scrollbars",0,[a,b,c],["dragDevices","overscroll","scrollbars"],0))}, +$4$height$itemOffset$scale(a,b,c,d){return this.E(this,A.P("call","$4$height$itemOffset$scale",0,[a,b,c,d],["height","itemOffset","scale"],0))}, +$1$dialogBackgroundColor(a){return this.E(this,A.P("call","$1$dialogBackgroundColor",0,[a],["dialogBackgroundColor"],0))}, +$6$alignedDropdown$height$layoutBehavior$minWidth$padding$textTheme(a,b,c,d,e,f){return this.E(this,A.P("call","$6$alignedDropdown$height$layoutBehavior$minWidth$padding$textTheme",0,[a,b,c,d,e,f],["alignedDropdown","height","layoutBehavior","minWidth","padding","textTheme"],0))}, +$1$colorScheme(a){return this.E(this,A.P("call","$1$colorScheme",0,[a],["colorScheme"],0))}, +$2$value(a,b){return this.E(this,A.P("call","$2$value",0,[a,b],["value"],0))}, +$1$details(a){return this.E(this,A.P("call","$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.E(this,A.P("call","$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))}, +$10$borderRadius$color$controller$customBorder$onRemoved$position$radius$rectCallback$referenceBox$textDirection(a,b,c,d,e,f,g,h,i,j){return this.E(this,A.P("call","$10$borderRadius$color$controller$customBorder$onRemoved$position$radius$rectCallback$referenceBox$textDirection",0,[a,b,c,d,e,f,g,h,i,j],["borderRadius","color","controller","customBorder","onRemoved","position","radius","rectCallback","referenceBox","textDirection"],0))}, +$1$context(a){return this.E(this,A.P("call","$1$context",0,[a],["context"],0))}, +$2$color$size(a,b){return this.E(this,A.P("call","$2$color$size",0,[a,b],["color","size"],0))}, +$1$liftFactor(a){return this.E(this,A.P("call","$1$liftFactor",0,[a],["liftFactor"],0))}, +$2$liftFactor$menuFactor(a,b){return this.E(this,A.P("call","$2$liftFactor$menuFactor",0,[a,b],["liftFactor","menuFactor"],0))}, +$2$menuDragOffset$menuOverdrag(a,b){return this.E(this,A.P("call","$2$menuDragOffset$menuOverdrag",0,[a,b],["menuDragOffset","menuOverdrag"],0))}, +$2$menuFactor$menuOverdrag(a,b){return this.E(this,A.P("call","$2$menuFactor$menuOverdrag",0,[a,b],["menuFactor","menuOverdrag"],0))}, +$1$globalPosition(a){return this.E(this,A.P("call","$1$globalPosition",0,[a],["globalPosition"],0))}, +$9$allowUpscaling$rowBytes$targetHeight$targetWidth(a,b,c,d,e,f,g,h,i){return this.E(this,A.P("call","$9$allowUpscaling$rowBytes$targetHeight$targetWidth",0,[a,b,c,d,e,f,g,h,i],["allowUpscaling","rowBytes","targetHeight","targetWidth"],0))}, +$3$oldLayer(a,b,c){return this.E(this,A.P("call","$3$oldLayer",0,[a,b,c],["oldLayer"],0))}, +$2$oldLayer(a,b){return this.E(this,A.P("call","$2$oldLayer",0,[a,b],["oldLayer"],0))}, +$1$menuDragOffset(a){return this.E(this,A.P("call","$1$menuDragOffset",0,[a],["menuDragOffset"],0))}, +$1$pixelRatio(a){return this.E(this,A.P("call","$1$pixelRatio",0,[a],["pixelRatio"],0))}, +$1$textScaler(a){return this.E(this,A.P("call","$1$textScaler",0,[a],["textScaler"],0))}, +$3$context$lesson$timetable(a,b,c){return this.E(this,A.P("call","$3$context$lesson$timetable",0,[a,b,c],["context","lesson","timetable"],0))}, +$1$weekIndex(a){return this.E(this,A.P("call","$1$weekIndex",0,[a],["weekIndex"],0))}, +$1$format(a){return this.E(this,A.P("call","$1$format",0,[a],["format"],0))}, +$2$parentUsesSize(a,b){return this.E(this,A.P("call","$2$parentUsesSize",0,[a,b],["parentUsesSize"],0))}, +$2$maxHeight$minHeight(a,b){return this.E(this,A.P("call","$2$maxHeight$minHeight",0,[a,b],["maxHeight","minHeight"],0))}, +$1$maxHeight(a){return this.E(this,A.P("call","$1$maxHeight",0,[a],["maxHeight"],0))}, +$1$width(a){return this.E(this,A.P("call","$1$width",0,[a],["width"],0))}, +$3$maxHeight$minHeight$minWidth(a,b,c){return this.E(this,A.P("call","$3$maxHeight$minHeight$minWidth",0,[a,b,c],["maxHeight","minHeight","minWidth"],0))}, +$4$isScrolling$newPosition$oldPosition$velocity(a,b,c,d){return this.E(this,A.P("call","$4$isScrolling$newPosition$oldPosition$velocity",0,[a,b,c,d],["isScrolling","newPosition","oldPosition","velocity"],0))}, +$2$maxExtent$minExtent(a,b){return this.E(this,A.P("call","$2$maxExtent$minExtent",0,[a,b],["maxExtent","minExtent"],0))}, +$1$height(a){return this.E(this,A.P("call","$1$height",0,[a],["height"],0))}, +$1$constraints(a){return this.E(this,A.P("call","$1$constraints",0,[a],["constraints"],0))}, +$1$oldLayer(a){return this.E(this,A.P("call","$1$oldLayer",0,[a],["oldLayer"],0))}, +$3$offset$oldLayer(a,b,c){return this.E(this,A.P("call","$3$offset$oldLayer",0,[a,b,c],["offset","oldLayer"],0))}, +$4$isComplexHint$willChangeHint(a,b,c,d){return this.E(this,A.P("call","$4$isComplexHint$willChangeHint",0,[a,b,c,d],["isComplexHint","willChangeHint"],0))}, +$4$in1$in2$operator$result(a,b,c,d){return this.E(this,A.P("call","$4$in1$in2$operator$result",0,[a,b,c,d],["in1","in2","operator","result"],0))}, +$3$clipBehavior$oldLayer(a,b,c){return this.E(this,A.P("call","$3$clipBehavior$oldLayer",0,[a,b,c],["clipBehavior","oldLayer"],0))}, +$2$doAntiAlias(a,b){return this.E(this,A.P("call","$2$doAntiAlias",0,[a,b],["doAntiAlias"],0))}, +$3$blendMode$oldLayer(a,b,c){return this.E(this,A.P("call","$3$blendMode$oldLayer",0,[a,b,c],["blendMode","oldLayer"],0))}, +$2$filterQuality(a,b){return this.E(this,A.P("call","$2$filterQuality",0,[a,b],["filterQuality"],0))}, +$4$height$offset$width(a,b,c,d){return this.E(this,A.P("call","$4$height$offset$width",0,[a,b,c,d],["height","offset","width"],0))}, +$4$isDiscrete$offset$parentBox$sliderTheme(a,b,c,d){return this.E(this,A.P("call","$4$isDiscrete$offset$parentBox$sliderTheme",0,[a,b,c,d],["isDiscrete","offset","parentBox","sliderTheme"],0))}, +$10$enableAnimation$isDiscrete$isEnabled$parentBox$secondaryOffset$sliderTheme$textDirection$thumbCenter(a,b,c,d,e,f,g,h,i,j){return this.E(this,A.P("call","$10$enableAnimation$isDiscrete$isEnabled$parentBox$secondaryOffset$sliderTheme$textDirection$thumbCenter",0,[a,b,c,d,e,f,g,h,i,j],["enableAnimation","isDiscrete","isEnabled","parentBox","secondaryOffset","sliderTheme","textDirection","thumbCenter"],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.E(this,A.P("call","$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))}, +$5$borderRadius$shape$textDirection(a,b,c,d,e){return this.E(this,A.P("call","$5$borderRadius$shape$textDirection",0,[a,b,c,d,e],["borderRadius","shape","textDirection"],0))}, +$6$blend$blendMode(a,b,c,d,e,f){return this.E(this,A.P("call","$6$blend$blendMode",0,[a,b,c,d,e,f],["blend","blendMode"],0))}, +$4$textDirection(a,b,c,d){return this.E(this,A.P("call","$4$textDirection",0,[a,b,c,d],["textDirection"],0))}, +$2$radius(a,b){return this.E(this,A.P("call","$2$radius",0,[a,b],["radius"],0))}, +$6$oldLayer(a,b,c,d,e,f){return this.E(this,A.P("call","$6$oldLayer",0,[a,b,c,d,e,f],["oldLayer"],0))}, +$1$forceClosed(a){return this.E(this,A.P("call","$1$forceClosed",0,[a],["forceClosed"],0))}, +$3$startWithMoveTo(a,b,c){return this.E(this,A.P("call","$3$startWithMoveTo",0,[a,b,c],["startWithMoveTo"],0))}, +$2$overscroll$scrollbars(a,b){return this.E(this,A.P("call","$2$overscroll$scrollbars",0,[a,b],["overscroll","scrollbars"],0))}, +$2$baseOffset$extentOffset(a,b){return this.E(this,A.P("call","$2$baseOffset$extentOffset",0,[a,b],["baseOffset","extentOffset"],0))}, +$2$alignmentPolicy(a,b){return this.E(this,A.P("call","$2$alignmentPolicy",0,[a,b],["alignmentPolicy"],0))}, +$1$extentOffset(a){return this.E(this,A.P("call","$1$extentOffset",0,[a],["extentOffset"],0))}, +$1$spellCheckService(a){return this.E(this,A.P("call","$1$spellCheckService",0,[a],["spellCheckService"],0))}, +$2$tabCount$tabIndex(a,b){return this.E(this,A.P("call","$2$tabCount$tabIndex",0,[a,b],["tabCount","tabIndex"],0))}, +$2$maxScaleFactor$minScaleFactor(a,b){return this.E(this,A.P("call","$2$maxScaleFactor$minScaleFactor",0,[a,b],["maxScaleFactor","minScaleFactor"],0))}, +$1$vpnEnabled(a){return this.E(this,A.P("call","$1$vpnEnabled",0,[a],["vpnEnabled"],0))}, +$1$inDispose(a){return this.E(this,A.P("call","$1$inDispose",0,[a],["inDispose"],0))}, +$1$visualDensity(a){return this.E(this,A.P("call","$1$visualDensity",0,[a],["visualDensity"],0))}, +$2$maxWidth$minWidth(a,b){return this.E(this,A.P("call","$2$maxWidth$minWidth",0,[a,b],["maxWidth","minWidth"],0))}, +$3$overscroll$physics$scrollbars(a,b,c){return this.E(this,A.P("call","$3$overscroll$physics$scrollbars",0,[a,b,c],["overscroll","physics","scrollbars"],0))}, +$1$alpha(a){return this.E(this,A.P("call","$1$alpha",0,[a],["alpha"],0))}, +$1$harmonizeWithThemeColor(a){return this.E(this,A.P("call","$1$harmonizeWithThemeColor",0,[a],["harmonizeWithThemeColor"],0))}, +$1$grayOutTakenLessons(a){return this.E(this,A.P("call","$1$grayOutTakenLessons",0,[a],["grayOutTakenLessons"],0))}, +$1$showTeachers(a){return this.E(this,A.P("call","$1$showTeachers",0,[a],["showTeachers"],0))}, +$5$oldLayer(a,b,c,d,e){return this.E(this,A.P("call","$5$oldLayer",0,[a,b,c,d,e],["oldLayer"],0))}, +$2$maxY$minY(a,b){return this.E(this,A.P("call","$2$maxY$minY",0,[a,b],["maxY","minY"],0))}, +$1$barTouchData(a){return this.E(this,A.P("call","$1$barTouchData",0,[a],["barTouchData"],0))}, +$4$baseLine$interval$max$min(a,b,c,d){return this.E(this,A.P("call","$4$baseLine$interval$max$min",0,[a,b,c,d],["baseLine","interval","max","min"],0))}, +$3$clipOp$doAntiAlias(a,b,c){return this.E(this,A.P("call","$3$clipOp$doAntiAlias",0,[a,b,c],["clipOp","doAntiAlias"],0))}, +$1$barGroups(a){return this.E(this,A.P("call","$1$barGroups",0,[a],["barGroups"],0))}, +$5$autofocus$focusNode$mouseCursor$painter$size(a,b,c,d,e){return this.E(this,A.P("call","$5$autofocus$focusNode$mouseCursor$painter$size",0,[a,b,c,d,e],["autofocus","focusNode","mouseCursor","painter","size"],0))}, +$1$2$arguments(a,b,c){return this.E(this,A.P("call","$1$2$arguments",0,[a,b,c],["arguments"],1))}, +$1$reversed(a){return this.E(this,A.P("call","$1$reversed",0,[a],["reversed"],0))}, +$2$nextTo(a,b){return this.E(this,A.P("call","$2$nextTo",0,[a,b],["nextTo"],0))}, +$6$filterQuality$freeze$height$offset$width(a,b,c,d,e,f){return this.E(this,A.P("call","$6$filterQuality$freeze$height$offset$width",0,[a,b,c,d,e,f],["filterQuality","freeze","height","offset","width"],0))}, +$2$options$source(a,b){return this.E(this,A.P("call","$2$options$source",0,[a,b],["options","source"],0))}, +$6$availableCameras$cameraDirection$isInitialized$isRunning$size$torchState(a,b,c,d,e,f){return this.E(this,A.P("call","$6$availableCameras$cameraDirection$isInitialized$isRunning$size$torchState",0,[a,b,c,d,e,f],["availableCameras","cameraDirection","isInitialized","isRunning","size","torchState"],0))}, +$7$cameraDirection$error$isInitialized$isRunning$size$torchState$zoomScale(a,b,c,d,e,f,g){return this.E(this,A.P("call","$7$cameraDirection$error$isInitialized$isRunning$size$torchState$zoomScale",0,[a,b,c,d,e,f,g],["cameraDirection","error","isInitialized","isRunning","size","torchState","zoomScale"],0))}, +$1$zoomScale(a){return this.E(this,A.P("call","$1$zoomScale",0,[a],["zoomScale"],0))}, +$1$torchState(a){return this.E(this,A.P("call","$1$torchState",0,[a],["torchState"],0))}, +$2$isRunning$torchState(a,b){return this.E(this,A.P("call","$2$isRunning$torchState",0,[a,b],["isRunning","torchState"],0))}, +$3$enableScrollToHighlight(a,b,c){return this.E(this,A.P("call","$3$enableScrollToHighlight",0,[a,b,c],["enableScrollToHighlight"],0))}, +$3$focusedIndex(a,b,c){return this.E(this,A.P("call","$3$focusedIndex",0,[a,b,c],["focusedIndex"],0))}, +$1$minimumSize(a){return this.E(this,A.P("call","$1$minimumSize",0,[a],["minimumSize"],0))}, +$1$backgroundColor(a){return this.E(this,A.P("call","$1$backgroundColor",0,[a],["backgroundColor"],0))}, +$1$barcodeList(a){return this.E(this,A.P("call","$1$barcodeList",0,[a],["barcodeList"],0))}, +$1$strokeAlign(a){return this.E(this,A.P("call","$1$strokeAlign",0,[a],["strokeAlign"],0))}, +$1$opacity(a){return this.E(this,A.P("call","$1$opacity",0,[a],["opacity"],0))}, +$3$foregroundColor$iconSize$overlayColor(a,b,c){return this.E(this,A.P("call","$3$foregroundColor$iconSize$overlayColor",0,[a,b,c],["foregroundColor","iconSize","overlayColor"],0))}, +$1$nextIndex(a){return this.E(this,A.P("call","$1$nextIndex",0,[a],["nextIndex"],0))}, +$1$tiles(a){return this.E(this,A.P("call","$1$tiles",0,[a],["tiles"],0))}, +$4$index$merged$nextIndex$value(a,b,c,d){return this.E(this,A.P("call","$4$index$merged$nextIndex$value",0,[a,b,c,d],["index","merged","nextIndex","value"],0))}, +$3$best$score$tiles(a,b,c){return this.E(this,A.P("call","$3$best$score$tiles",0,[a,b,c],["best","score","tiles"],0))}, +$1$merged(a){return this.E(this,A.P("call","$1$merged",0,[a],["merged"],0))}, +$3$over$tiles$won(a,b,c){return this.E(this,A.P("call","$3$over$tiles$won",0,[a,b,c],["over","tiles","won"],0))}, +$1$gameMode(a){return this.E(this,A.P("call","$1$gameMode",0,[a],["gameMode"],0))}, +$1$pos(a){return this.E(this,A.P("call","$1$pos",0,[a],["pos"],0))}, +$5$color$id$image$pos$radius(a,b,c,d,e){return this.E(this,A.P("call","$5$color$id$image$pos$radius",0,[a,b,c,d,e],["color","id","image","pos","radius"],0))}, +$1$2$type(a,b,c){return this.E(this,A.P("call","$1$2$type",0,[a,b,c],["type"],1))}, +$1$2$eventHandler$rootComponent(a,b,c){return this.E(this,A.P("call","$1$2$eventHandler$rootComponent",0,[a,b,c],["eventHandler","rootComponent"],1))}, +$1$5(a,b,c,d,e,f){return this.E(this,A.P("call","$1$5",0,[a,b,c,d,e,f],[],1))}, +$2$appBarTheme$inputDecorationTheme(a,b){return this.E(this,A.P("call","$2$appBarTheme$inputDecorationTheme",0,[a,b],["appBarTheme","inputDecorationTheme"],0))}, +$4$displayFeatures$padding$viewInsets$viewPadding(a,b,c,d){return this.E(this,A.P("call","$4$displayFeatures$padding$viewInsets$viewPadding",0,[a,b,c,d],["displayFeatures","padding","viewInsets","viewPadding"],0))}, +$2$isClosing(a,b){return this.E(this,A.P("call","$2$isClosing",0,[a,b],["isClosing"],0))}, +$1$overscroll(a){return this.E(this,A.P("call","$1$overscroll",0,[a],["overscroll"],0))}, +$1$inherit(a){return this.E(this,A.P("call","$1$inherit",0,[a],["inherit"],0))}, +$3$color$opacity$size(a,b,c){return this.E(this,A.P("call","$3$color$opacity$size",0,[a,b,c],["color","opacity","size"],0))}, +$2$iconTheme$popupMenuTheme(a,b){return this.E(this,A.P("call","$2$iconTheme$popupMenuTheme",0,[a,b],["iconTheme","popupMenuTheme"],0))}, +$1$sliderTheme(a){return this.E(this,A.P("call","$1$sliderTheme",0,[a],["sliderTheme"],0))}, +$1$iconTheme(a){return this.E(this,A.P("call","$1$iconTheme",0,[a],["iconTheme"],0))}, +$2$mode(a,b){return this.E(this,A.P("call","$2$mode",0,[a,b],["mode"],0))}, +$6$gapExtent$gapPercentage$gapStart$textDirection(a,b,c,d,e,f){return this.E(this,A.P("call","$6$gapExtent$gapPercentage$gapStart$textDirection",0,[a,b,c,d,e,f],["gapExtent","gapPercentage","gapStart","textDirection"],0))}, +$1$borderSide(a){return this.E(this,A.P("call","$1$borderSide",0,[a],["borderSide"],0))}, +$1$maximum(a){return this.E(this,A.P("call","$1$maximum",0,[a],["maximum"],0))}, +$2$enabled$hintMaxLines(a,b){return this.E(this,A.P("call","$2$enabled$hintMaxLines",0,[a,b],["enabled","hintMaxLines"],0))}, +$4$currentLength$isFocused$maxLength(a,b,c,d){return this.E(this,A.P("call","$4$currentLength$isFocused$maxLength",0,[a,b,c,d],["currentLength","isFocused","maxLength"],0))}, +$1$counter(a){return this.E(this,A.P("call","$1$counter",0,[a],["counter"],0))}, +$4$counterStyle$counterText$errorText$semanticCounterText(a,b,c,d){return this.E(this,A.P("call","$4$counterStyle$counterText$errorText$semanticCounterText",0,[a,b,c,d],["counterStyle","counterText","errorText","semanticCounterText"],0))}, +$2$counterText$semanticCounterText(a,b){return this.E(this,A.P("call","$2$counterText$semanticCounterText",0,[a,b],["counterText","semanticCounterText"],0))}, +$1$border(a){return this.E(this,A.P("call","$1$border",0,[a],["border"],0))}, +$8$removeBottomInset$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding(a,b,c,d,e,f,g,h){return this.E(this,A.P("call","$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.E(this,A.P("call","$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.E(this,A.P("call","$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.E(this,A.P("call","$1$floatingActionButtonScale",0,[a],["floatingActionButtonScale"],0))}, +$1$removeBottom(a){return this.E(this,A.P("call","$1$removeBottom",0,[a],["removeBottom"],0))}, +$2$bottomNavigationBarTop$floatingActionButtonArea(a,b){return this.E(this,A.P("call","$2$bottomNavigationBarTop$floatingActionButtonArea",0,[a,b],["bottomNavigationBarTop","floatingActionButtonArea"],0))}, +$1$maxExtent(a){return this.E(this,A.P("call","$1$maxExtent",0,[a],["maxExtent"],0))}, +$6$courses$lastCourseKey$lastModified$name$signature$startDate(a,b,c,d,e,f){return this.E(this,A.P("call","$6$courses$lastCourseKey$lastModified$name$signature$startDate",0,[a,b,c,d,e,f],["courses","lastCourseKey","lastModified","name","signature","startDate"],0))}, +$2$controller$title(a,b){return this.E(this,A.P("call","$2$controller$title",0,[a,b],["controller","title"],0))}, +$23$activeTickMarkColor$activeTrackColor$disabledActiveTickMarkColor$disabledActiveTrackColor$disabledInactiveTickMarkColor$disabledInactiveTrackColor$disabledThumbColor$inactiveTickMarkColor$inactiveTrackColor$minThumbSeparation$overlappingShapeStrokeColor$overlayColor$overlayShape$rangeThumbShape$rangeTickMarkShape$rangeTrackShape$rangeValueIndicatorShape$showValueIndicator$thumbColor$thumbSelector$trackHeight$valueIndicatorColor$valueIndicatorTextStyle(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){return this.E(this,A.P("call","$23$activeTickMarkColor$activeTrackColor$disabledActiveTickMarkColor$disabledActiveTrackColor$disabledInactiveTickMarkColor$disabledInactiveTrackColor$disabledThumbColor$inactiveTickMarkColor$inactiveTrackColor$minThumbSeparation$overlappingShapeStrokeColor$overlayColor$overlayShape$rangeThumbShape$rangeTickMarkShape$rangeTrackShape$rangeValueIndicatorShape$showValueIndicator$thumbColor$thumbSelector$trackHeight$valueIndicatorColor$valueIndicatorTextStyle",0,[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3],["activeTickMarkColor","activeTrackColor","disabledActiveTickMarkColor","disabledActiveTrackColor","disabledInactiveTickMarkColor","disabledInactiveTrackColor","disabledThumbColor","inactiveTickMarkColor","inactiveTrackColor","minThumbSeparation","overlappingShapeStrokeColor","overlayColor","overlayShape","rangeThumbShape","rangeTickMarkShape","rangeTrackShape","rangeValueIndicatorShape","showValueIndicator","thumbColor","thumbSelector","trackHeight","valueIndicatorColor","valueIndicatorTextStyle"],0))}, +$2$range$type(a,b){return this.E(this,A.P("call","$2$range$type",0,[a,b],["range","type"],0))}, +$1$courseKey(a){return this.E(this,A.P("call","$1$courseKey",0,[a],["courseKey"],0))}, +$4$classCode$courseCode$courseName$hidden(a,b,c,d){return this.E(this,A.P("call","$4$classCode$courseCode$courseName$hidden",0,[a,b,c,d],["classCode","courseCode","courseName","hidden"],0))}, +$1$courses(a){return this.E(this,A.P("call","$1$courses",0,[a],["courses"],0))}, +$2$type(a,b){return this.E(this,A.P("call","$2$type",0,[a,b],["type"],0))}, +$5$arguments$child$key$name$restorationId(a,b,c,d,e){return this.E(this,A.P("call","$5$arguments$child$key$name$restorationId",0,[a,b,c,d,e],["arguments","child","key","name","restorationId"],0))}, +$1$removeTop(a){return this.E(this,A.P("call","$1$removeTop",0,[a],["removeTop"],0))}, +$1$viewInsets(a){return this.E(this,A.P("call","$1$viewInsets",0,[a],["viewInsets"],0))}, +$2$padding$viewInsets(a,b){return this.E(this,A.P("call","$2$padding$viewInsets",0,[a,b],["padding","viewInsets"],0))}, +$5$fireImmediately$onDependencyMayHaveChanged$onError(a,b,c,d,e){return this.E(this,A.P("call","$5$fireImmediately$onDependencyMayHaveChanged$onError",0,[a,b,c,d,e],["fireImmediately","onDependencyMayHaveChanged","onError"],0))}, +$2$allowFloat(a,b){return this.E(this,A.P("call","$2$allowFloat",0,[a,b],["allowFloat"],0))}, +$2$allowInt(a,b){return this.E(this,A.P("call","$2$allowInt",0,[a,b],["allowInt"],0))}, +$1$block(a){return this.E(this,A.P("call","$1$block",0,[a],["block"],0))}, +$1$flowSeparators(a){return this.E(this,A.P("call","$1$flowSeparators",0,[a],["flowSeparators"],0))}, +$2$length(a,b){return this.E(this,A.P("call","$2$length",0,[a,b],["length"],0))}, +$2$attrs(a,b){return this.E(this,A.P("call","$2$attrs",0,[a,b],["attrs"],0))}, +$1$6$data$onReceiveProgress$onSendProgress$options$queryParameters(a,b,c,d,e,f,g){return this.E(this,A.P("call","$1$6$data$onReceiveProgress$onSendProgress$options$queryParameters",0,[a,b,c,d,e,f,g],["data","onReceiveProgress","onSendProgress","options","queryParameters"],1))}, +$2$isClient(a,b){return this.E(this,A.P("call","$2$isClient",0,[a,b],["isClient"],0))}, +$2$writeTypeId(a,b){return this.E(this,A.P("call","$2$writeTypeId",0,[a,b],["writeTypeId"],0))}, +$2$notify(a,b){return this.E(this,A.P("call","$2$notify",0,[a,b],["notify"],0))}, +$1$baseUrl(a){return this.E(this,A.P("call","$1$baseUrl",0,[a],["baseUrl"],0))}, +$5$elevationAdjustment$parentPaintClipRect$parentSemanticsClipRect$result$siblingNodes(a,b,c,d,e){return this.E(this,A.P("call","$5$elevationAdjustment$parentPaintClipRect$parentSemanticsClipRect$result$siblingNodes",0,[a,b,c,d,e],["elevationAdjustment","parentPaintClipRect","parentSemanticsClipRect","result","siblingNodes"],0))}, +$1$config(a){return this.E(this,A.P("call","$1$config",0,[a],["config"],0))}, +$2$descendant$rect(a,b){return this.E(this,A.P("call","$2$descendant$rect",0,[a,b],["descendant","rect"],0))}, +$1$3$onlyFirst(a,b,c,d){return this.E(this,A.P("call","$1$3$onlyFirst",0,[a,b,c,d],["onlyFirst"],1))}, +$1$query(a){return this.E(this,A.P("call","$1$query",0,[a],["query"],0))}, +$2$pathSegments$query(a,b){return this.E(this,A.P("call","$2$pathSegments$query",0,[a,b],["pathSegments","query"],0))}, +i(a,b){return this.E(a,A.P("[]","i",0,[b],[],0))}, +n(a,b,c){return this.E(a,A.P("[]=","n",0,[b,c],[],0))}, +aB(a,b){return this.E(a,A.P("containsKey","aB",0,[b],[],0))}, +p8(a,b,c){return this.E(a,A.P("cast","p8",0,[b,c],[],2))}, +eZ(){return this.E(this,A.P("toJson","eZ",0,[],[],0))}, +vL(a){return this.E(this,A.P("_yieldStar","vL",0,[a],[],0))}, +yL(){return this.E(this,A.P("didUnregisterListener","yL",0,[],[],0))}, +cY(){return this.E(this,A.P("didRegisterListener","cY",0,[],[],0))}, +a5p(a){return this.E(this,A.P("_removeAt","a5p",0,[a],[],0))}, +W(a,b){return this.E(a,A.P("-","W",0,[b],[],0))}, +X(a,b){return this.E(a,A.P("*","X",0,[b],[],0))}, +S(a,b){return this.E(a,A.P("+","S",0,[b],[],0))}, +gA(a){return this.E(a,A.P("length","gA",1,[],[],0))}, +gcU(a){return this.E(a,A.P("isNotEmpty","gcU",1,[],[],0))}, +gja(a){return this.E(a,A.P("_count","gja",1,[],[],0))}, +grd(){return this.E(this,A.P("_notificationCallStackDepth","grd",1,[],[],0))}, +ghE(){return this.E(this,A.P("_listeners","ghE",1,[],[],0))}, +gtL(){return this.E(this,A.P("_reentrantlyRemovedListeners","gtL",1,[],[],0))}, +gdI(a){return this.E(a,A.P("name","gdI",1,[],[],0))}, +ga4e(){return this.E(this,A.P("_lo32","ga4e",1,[],[],0))}, +ga3Q(){return this.E(this,A.P("_hi32","ga3Q",1,[],[],0))}, +srd(a){return this.E(this,A.P("_notificationCallStackDepth=","srd",2,[a],[],0))}, +shE(a){return this.E(this,A.P("_listeners=","shE",2,[a],[],0))}, +stL(a){return this.E(this,A.P("_reentrantlyRemovedListeners=","stL",2,[a],[],0))}, +sja(a,b){return this.E(a,A.P("_count=","sja",2,[b],[],0))}} +A.xu.prototype={ +k(a){return this.a}, +$idC:1} +A.py.prototype={ +gMF(){var s=this.gayY() +if($.r8()===1e6)return s +return s*1000}, +grt(){var s=this.gayY() +if($.r8()===1000)return s +return B.d.aD(s,1000)}, +j9(a){var s=this,r=s.b +if(r!=null){s.a=s.a+($.EN.$0()-r) +s.b=null}}, +b6(a){var s=this.b +this.a=s==null?$.EN.$0():s}, +gayY(){var s=this.b +if(s==null)s=$.EN.$0() +return s-this.a}} +A.ou.prototype={ +gaz(a){return new A.a8G(this.a)}, +gP(a){var s,r,q=this.a,p=q.length +if(p===0)throw A.d(A.a0("No elements.")) +s=q.charCodeAt(p-1) +if((s&64512)===56320&&p>1){r=q.charCodeAt(p-2) +if((r&64512)===55296)return A.cPN(r,s)}return s}} +A.a8G.prototype={ +gK(a){return this.d}, +t(){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.cA(B.c.R(this.b,a,b),16) +if(s<0||s>65535)this.a.$2("each part must be in the range of `0x0..0xFFFF`",a) +return s}, +$S:299} +A.ak4.prototype={ +grg(){var s,r,q,p=this,o=p.w +if(o===$){s=new A.bu("") +r=p.a +if(r.length!==0){q=""+r +s.a=q +q=s.a=q+":"}else q="" +if(p.c!=null||r==="file"){s.a=q+"//" +p.auB(s)}r=s.a+=p.e +q=p.f +if(q!=null){r+="?" +s.a=r +r+=q +s.a=r}q=p.r +if(q!=null){r+="#" +s.a=r +r=s.a=r+q}p.w!==$&&A.a_() +o=p.w=r.charCodeAt(0)==0?r:r}return o}, +gzL(){var s,r,q=this,p=q.x +if(p===$){s=q.e +if(s.length!==0&&s.charCodeAt(0)===47)s=B.c.b0(s,1) +r=s.length===0?B.bF:A.hi(new A.O(A.a(s.split("/"),t.s),A.dq1(),t.ck),t.N) +q.x!==$&&A.a_() +p=q.x=r}return p}, +gv(a){var s,r=this,q=r.y +if(q===$){s=B.c.gv(r.grg()) +r.y!==$&&A.a_() +r.y=s +q=s}return q}, +glL(){var s,r=this,q=r.z +if(q===$){s=r.f +s=A.cNr(s==null?"":s) +r.z!==$&&A.a_() +q=r.z=new A.qS(s,t.G5)}return q}, +gCZ(){var s,r,q=this,p=q.Q +if(p===$){s=q.f +r=A.djI(s==null?"":s) +q.Q!==$&&A.a_() +q.Q=r +p=r}return p}, +gavG(){var s,r +if(this.c==null)return"" +s=new A.bu("") +this.auB(s) +r=s.a +return r.charCodeAt(0)==0?r:r}, +gA2(){return this.b}, +gla(a){var s=this.c +if(s==null)return"" +if(B.c.aC(s,"["))return B.c.R(s,1,s.length-1) +return s}, +gwH(a){var s=this.d +return s==null?A.cPh(this.a):s}, +glK(a){var s=this.f +return s==null?"":s}, +gov(){var s=this.r +return s==null?"":s}, +zt(a){var s=this.a +if(a.length!==s.length)return!1 +return A.cPJ(a,s,0)>=0}, +oE(a,b,c,d,e,f,g,h,i){var s,r,q,p,o,n,m=this,l=m.a +if(h!=null){h=A.cmn(h,0,h.length) +s=h!==l}else{h=l +s=!1}r=h==="file" +i=i!=null?A.cmo(i,0,i.length):m.b +if(e!=null)e=A.Z_(e,h) +else{e=m.d +if(s)e=A.Z_(e,h)}if(b!=null)b=A.cmg(b,0,b.length,!1) +else{q=m.c +if(q!=null)b=q +else if(i.length!==0||e!=null||r)b=""}p=b!=null +o=c==null +if(!o||d!=null)c=A.cmh(c,0,o?0:c.length,d,h,p) +else{n=m.e +if(!r)o=p&&n.length!==0 +else o=!0 +if(o&&!B.c.aC(n,"/"))n="/"+n +c=n}o=f==null +if(!o||g!=null)f=A.cmj(f,0,o?0:f.length,g) +else f=m.f +return A.YY(h,i,b,e,c,f,m.r)}, +Zo(a,b){var s=null +return this.oE(0,s,b,s,s,s,s,s,s)}, +adk(a,b){var s=null +return this.oE(0,s,s,s,s,s,s,s,b)}, +aEQ(a,b){var s=null +return this.oE(0,s,s,s,b,s,s,s,s)}, +aEP(a,b){var s=null +return this.oE(0,b,s,s,s,s,s,s,s)}, +aES(a,b){var s=null +return this.oE(0,s,s,s,s,s,s,b,s)}, +aER(a,b){var s=null +return this.oE(0,s,s,s,s,b,s,s,s)}, +bFW(a,b,c){var s=null +return this.oE(0,s,s,b,s,c,s,s,s)}, +adc(){var s=this +if(s.r==null)return s +return A.YY(s.a,s.b,s.c,s.d,s.e,s.f,null)}, +aCr(){var s=this,r=s.e,q=A.cPn(r,s.a,s.c!=null) +if(q===r)return s +return s.Zo(0,q)}, +gabm(){if(this.a!==""){var s=this.r +s=(s==null?"":s)===""}else s=!1 +return s}, +aoO(a,b){var s,r,q,p,o,n +for(s=0,r=0;B.c.i0(b,"../",r);){r+=3;++s}q=B.c.na(a,"/") +while(!0){if(!(q>0&&s>0))break +p=B.c.wt(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.nW(a,q+1,null,B.c.b0(b,r-3*s))}, +a5(a){return this.HK(A.di(a,0,null))}, +HK(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null +if(a.gfX().length!==0){s=a.gfX() +if(a.gCn()){r=a.gA2() +q=a.gla(a) +p=a.gGF()?a.gwH(a):h}else{p=h +q=p +r=""}o=A.Bo(a.geh(a)) +n=a.gwm()?a.glK(a):h}else{s=i.a +if(a.gCn()){r=a.gA2() +q=a.gla(a) +p=A.Z_(a.gGF()?a.gwH(a):h,s) +o=A.Bo(a.geh(a)) +n=a.gwm()?a.glK(a):h}else{r=i.b +q=i.c +p=i.d +o=i.e +if(a.geh(a)==="")n=a.gwm()?a.glK(a):i.f +else{m=A.djQ(i,o) +if(m>0){l=B.c.R(o,0,m) +o=a.gXi()?l+A.Bo(a.geh(a)):l+A.Bo(i.aoO(B.c.b0(o,l.length),a.geh(a)))}else if(a.gXi())o=A.Bo(a.geh(a)) +else if(o.length===0)if(q==null)o=s.length===0?a.geh(a):A.Bo(a.geh(a)) +else o=A.Bo("/"+a.geh(a)) +else{k=i.aoO(o,a.geh(a)) +j=s.length===0 +if(!j||q!=null||B.c.aC(o,"/"))o=A.Bo(k) +else o=A.cAp(k,!j||q!=null)}n=a.gwm()?a.glK(a):h}}}return A.YY(s,r,q,p,o,n,a.gGE()?a.gov():h)}, +gXl(){return this.a.length!==0}, +gCn(){return this.c!=null}, +gGF(){return this.d!=null}, +gwm(){return this.f!=null}, +gGE(){return this.r!=null}, +gab1(){return this.e.length===0}, +gXi(){return B.c.aC(this.e,"/")}, +gCP(a){var s,r,q=this,p=q.a +if(p==="")throw A.d(A.a0("Cannot use origin without a scheme: "+q.k(0))) +if(p!=="http"&&p!=="https")throw A.d(A.a0("Origin is only applicable schemes http and https: "+q.k(0))) +s=q.c +if(s==null||s==="")throw A.d(A.a0("A "+p+u.fq+q.k(0))) +r=q.d +if(r==null)return p+"://"+A.r(s) +return p+"://"+A.r(s)+":"+A.r(r)}, +OY(){var s,r=this,q=r.a +if(q!==""&&q!=="file")throw A.d(A.aq("Cannot extract a file path from a "+q+" URI")) +q=r.f +if((q==null?"":q)!=="")throw A.d(A.aq(u.z)) +q=r.r +if((q==null?"":q)!=="")throw A.d(A.aq(u.h8)) +q=$.cDd() +if(q)q=A.cPq(r) +else{if(r.c!=null&&r.gla(0)!=="")A.C(A.aq(u.Q)) +s=r.gzL() +A.djG(s,!1) +q=A.aFq(B.c.aC(r.e,"/")?""+"/":"",s,"/") +q=q.charCodeAt(0)==0?q:q}return q}, +auB(a){var s,r=this.b +if(r.length!==0){r=a.a+=r +a.a=r+"@"}r=this.c +if(r!=null)a.a+=r +r=this.d +if(r!=null){s=a.a+=":" +a.a=s+A.r(r)}}, +k(a){return this.grg()}, +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.gfX())if(q.c!=null===b.gCn())if(q.b===b.gA2())if(q.gla(0)===b.gla(b))if(q.gwH(0)===b.gwH(b))if(q.e===b.geh(b)){s=q.f +r=s==null +if(!r===b.gwm()){if(r)s="" +if(s===b.glK(b)){s=q.r +r=s==null +if(!r===b.gGE()){if(r)s="" +s=s===b.gov()}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}, +$ihN:1, +gfX(){return this.a}, +geh(a){return this.e}} +A.cmi.prototype={ +$1(a){return A.vb(B.aM3,a,B.ai,!1)}, +$S:28} +A.cml.prototype={ +$2(a,b){var s=this.b,r=this.a +s.a+=r.a +r.a="&" +r=s.a+=A.vb(B.jb,a,B.ai,!0) +if(b!=null&&b.length!==0){s.a=r+"=" +s.a+=A.vb(B.jb,b,B.ai,!0)}}, +$S:473} +A.cmk.prototype={ +$2(a,b){var s,r +if(b==null||typeof b=="string")this.a.$2(a,b) +else for(s=J.au(b),r=this.a;s.t();)r.$2(a,s.gK(s))}, +$S:41} +A.cmp.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.pM(s,a,c,r,!0) +p=""}else{q=A.pM(s,a,b,r,!0) +p=A.pM(s,b+1,c,r,!0)}J.eQ(this.c.cP(0,q,A.dq2()),p)}, +$S:550} +A.aHf.prototype={ +gfh(){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.hj(m,"?",s) +q=m.length +if(r>=0){p=A.ak6(m,r+1,q,B.lh,!1,!1) +q=r}else p=n +m=o.c=new A.aN4("data","",n,n,A.ak6(m,s,q,B.I1,!1,!1),p,n)}return m}, +brb(){var s,r,q,p,o,n,m,l,k=this.a,j=this.b,i=B.b.gP(j)+1 +if((j.length&1)===1)return B.eX.LY(k,i) +j=k.length +s=j-i +for(r=i;r=0){n=p+1 +q[p]=l +r=m +p=n +continue}}throw A.d(A.bM("Invalid percent escape",k,r))}p=n}return q}, +k(a){var s=this.a +return this.b[0]===-1?"data:"+s:s}} +A.coG.prototype={ +$2(a,b){var s=this.a[a] +B.p.fb(s,0,96,b) +return s}, +$S:551} +A.coH.prototype={ +$3(a,b,c){var s,r +for(s=b.length,r=0;r>>0]=c}, +$S:348} +A.tk.prototype={ +gXl(){return this.b>0}, +gCn(){return this.c>0}, +gGF(){return this.c>0&&this.d+10&&this.r>=this.a.length}, +zt(a){var s=a.length +if(s===0)return this.b<0 +if(s!==this.b)return!1 +return A.cPJ(a,this.a,0)>=0}, +gfX(){var s=this.w +return s==null?this.w=this.aYT():s}, +aYT(){var s,r=this,q=r.b +if(q<=0)return"" +s=q===4 +if(s&&B.c.aC(r.a,"http"))return"http" +if(q===5&&B.c.aC(r.a,"https"))return"https" +if(s&&B.c.aC(r.a,"file"))return"file" +if(q===7&&B.c.aC(r.a,"package"))return"package" +return B.c.R(r.a,0,q)}, +gavG(){var s=this +return s.c>0?B.c.R(s.a,s.b+3,s.e):""}, +gA2(){var s=this.c,r=this.b+3 +return s>r?B.c.R(this.a,r,s-1):""}, +gla(a){var s=this.c +return s>0?B.c.R(this.a,s,this.d):""}, +gwH(a){var s,r=this +if(r.gGF())return A.cA(B.c.R(r.a,r.d+1,r.e),null) +s=r.b +if(s===4&&B.c.aC(r.a,"http"))return 80 +if(s===5&&B.c.aC(r.a,"https"))return 443 +return 0}, +geh(a){return B.c.R(this.a,this.e,this.f)}, +glK(a){var s=this.f,r=this.r +return s=this.r)return B.ek +return new A.qS(A.cNr(this.glK(0)),t.G5)}, +gCZ(){if(this.f>=this.r)return B.wj +var s=A.cPp(this.glK(0)) +s.aFV(s,A.cS6()) +return A.baw(s,t.N,t.yp)}, +ao0(a){var s=this.d+1 +return s+a.length===this.e&&B.c.i0(this.a,a,s)}, +aCr(){return this}, +adc(){var s=this,r=s.r,q=s.a +if(r>=q.length)return s +return new A.tk(B.c.R(q,0,r),s.b,s.c,s.d,s.e,s.f,r,s.w)}, +oE(a,b,c,d,e,f,g,h,i){var s,r,q,p,o,n,m=this +if(h!=null){h=A.cmn(h,0,h.length) +s=!(m.b===h.length&&B.c.aC(m.a,h))}else{h=m.gfX() +s=!1}r=h==="file" +if(i!=null)i=A.cmo(i,0,i.length) +else{q=m.c +i=q>0?B.c.R(m.a,m.b+3,q):""}if(e!=null)e=A.Z_(e,h) +else{e=m.gGF()?m.gwH(0):null +if(s)e=A.Z_(e,h)}if(b!=null)b=A.cmg(b,0,b.length,!1) +else{q=m.c +if(q>0)b=B.c.R(m.a,q,m.d) +else if(i.length!==0||e!=null||r)b=""}p=b!=null +q=c==null +if(!q||!1)c=A.cmh(c,0,q?0:c.length,d,h,p) +else{c=B.c.R(m.a,m.e,m.f) +if(!r)q=p&&c.length!==0 +else q=!0 +if(q&&!B.c.aC(c,"/"))c="/"+c}q=f==null +if(!q||g!=null)f=A.cmj(f,0,q?0:f.length,g) +else{q=m.f +o=m.r +if(q0)return b +s=b.c +if(s>0){r=a.b +if(r<=0)return b +q=r===4 +if(q&&B.c.aC(a.a,"file"))p=b.e!==b.f +else if(q&&B.c.aC(a.a,"http"))p=!b.ao0("80") +else p=!(r===5&&B.c.aC(a.a,"https"))||!b.ao0("443") +if(p){o=r+1 +return new A.tk(B.c.R(a.a,0,o)+B.c.b0(b.a,c+1),r,s+o,b.d+o,b.e+o,b.f+o,b.r+o,a.w)}else return this.at0().HK(b)}n=b.e +c=b.f +if(n===c){s=b.r +if(c0?l:m +o=k-n +return new A.tk(B.c.R(a.a,0,k)+B.c.b0(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.i0(s,"../",n);)n+=3 +o=j-n+1 +return new A.tk(B.c.R(a.a,0,j)+"/"+B.c.b0(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}h=a.a +l=A.cOZ(this) +if(l>=0)g=l +else for(g=j;B.c.i0(h,"../",g);)g+=3 +f=0 +while(!0){e=n+3 +if(!(e<=c&&B.c.i0(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.i0(h,"/",j)){n-=f*3 +d=""}o=i-n+d.length +return new A.tk(B.c.R(h,0,i)+d+B.c.b0(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}, +OY(){var s,r,q=this,p=q.b +if(p>=0){s=!(p===4&&B.c.aC(q.a,"file")) +p=s}else p=!1 +if(p)throw A.d(A.aq("Cannot extract a file path from a "+q.gfX()+" URI")) +p=q.f +s=q.a +if(p0?s.gla(0):r,n=s.gGF()?s.gwH(0):r,m=s.a,l=s.f,k=B.c.R(m,s.e,l),j=s.r +l=l>>0!==b||b>=s +r.toString +if(r)throw A.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.a25.prototype={ +k(a){var s,r=a.left +r.toString +s=a.top +s.toString +return"Rectangle ("+A.r(r)+", "+A.r(s)+") "+A.r(this.geP(a))+" x "+A.r(this.gdK(a))}, +l(a,b){var s,r +if(b==null)return!1 +if(t.Bb.b(b)){s=a.left +s.toString +r=J.er(b) +if(s===r.goy(b)){s=a.top +s.toString +s=s===r.gHX(b)&&this.geP(a)===r.geP(b)&&this.gdK(a)===r.gdK(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.ad(r,s,this.geP(a),this.gdK(a),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +ganp(a){return a.height}, +gdK(a){var s=this.ganp(a) +s.toString +return s}, +goy(a){var s=a.left +s.toString +return s}, +gHX(a){var s=a.top +s.toString +return s}, +gauw(a){return a.width}, +geP(a){var s=this.gauw(a) +s.toString +return s}, +$iqC:1} +A.a26.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.asX.prototype={ +gA(a){var s=a.length +s.toString +return s}} +A.cb.prototype={ +k(a){var s=a.localName +s.toString +return s}} +A.kf.prototype={$ikf:1} +A.bK.prototype={$ibK:1} +A.bi.prototype={ +UK(a,b,c,d){if(c!=null)this.b7h(a,b,c,d)}, +vN(a,b,c){return this.UK(a,b,c,null)}, +b7h(a,b,c,d){return a.addEventListener(b,A.vc(c,1),d)}, +bfA(a,b,c,d){return a.removeEventListener(b,A.vc(c,1),!1)}} +A.n_.prototype={$in_:1} +A.QW.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1, +$iQW:1} +A.atQ.prototype={ +gA(a){return a.length}} +A.aun.prototype={ +gA(a){return a.length}} +A.o9.prototype={$io9:1} +A.avi.prototype={ +gA(a){var s=a.length +s.toString +return s}} +A.Ji.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.Jn.prototype={ +gbGj(a){var s,r,q,p,o,n,m=t.N,l=A.N(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.dh.prototype={ +k(a){var s=a.nodeValue +return s==null?this.aOI(a):s}, +$idh:1} +A.a6i.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.ol.prototype={ +gA(a){return a.length}, +$iol:1} +A.aBH.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.qy.prototype={$iqy:1} +A.aDQ.prototype={ +aB(a,b){return A.tl(a.get(b))!=null}, +i(a,b){return A.tl(a.get(b))}, +aE(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.tl(s.value[1]))}}, +gek(a){var s=A.a([],t.s) +this.aE(a,new A.bCG(s)) +return s}, +gbm(a){var s=A.a([],t.n4) +this.aE(a,new A.bCH(s)) +return s}, +gA(a){var s=a.size +s.toString +return s}, +gad(a){var s=a.size +s.toString +return s===0}, +gcU(a){var s=a.size +s.toString +return s!==0}, +n(a,b,c){throw A.d(A.aq("Not supported"))}, +cP(a,b,c){throw A.d(A.aq("Not supported"))}, +F(a,b){throw A.d(A.aq("Not supported"))}, +V(a){throw A.d(A.aq("Not supported"))}, +$iaN:1} +A.bCG.prototype={ +$2(a,b){return this.a.push(a)}, +$S:41} +A.bCH.prototype={ +$2(a,b){return this.a.push(b)}, +$S:41} +A.aEb.prototype={ +gA(a){return a.length}} +A.V0.prototype={$iV0:1} +A.oB.prototype={$ioB:1} +A.aF4.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.oC.prototype={$ioC:1} +A.aFd.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.oD.prototype={ +gA(a){return a.length}, +$ioD:1} +A.aFm.prototype={ +aB(a,b){return a.getItem(A.ax(b))!=null}, +i(a,b){return a.getItem(A.ax(b))}, +n(a,b,c){a.setItem(b,c)}, +cP(a,b,c){var s +if(a.getItem(b)==null)a.setItem(b,c.$0()) +s=a.getItem(b) +return s==null?A.ax(s):s}, +F(a,b){var s +A.ax(b) +s=a.getItem(b) +a.removeItem(b) +return s}, +V(a){return a.clear()}, +aE(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)}}, +gek(a){var s=A.a([],t.s) +this.aE(a,new A.bHV(s)) +return s}, +gbm(a){var s=A.a([],t.s) +this.aE(a,new A.bHW(s)) +return s}, +gA(a){var s=a.length +s.toString +return s}, +gad(a){return a.key(0)==null}, +gcU(a){return a.key(0)!=null}, +$iaN:1} +A.bHV.prototype={ +$2(a,b){return this.a.push(a)}, +$S:152} +A.bHW.prototype={ +$2(a,b){return this.a.push(b)}, +$S:152} +A.mA.prototype={$imA:1} +A.oL.prototype={$ioL:1} +A.mD.prototype={$imD:1} +A.aGi.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.aGj.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.aGr.prototype={ +gA(a){var s=a.length +s.toString +return s}} +A.oM.prototype={$ioM:1} +A.aGU.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.aGW.prototype={ +gA(a){return a.length}} +A.aHi.prototype={ +k(a){var s=String(a) +s.toString +return s}} +A.aHz.prototype={ +gA(a){return a.length}} +A.FX.prototype={ +bg2(a,b,c,d){return a.webkitResolveLocalFileSystemURL(b,A.vc(c,1),A.vc(d,1))}, +bGi(a,b){var s=new A.ak($.at,t.aI),r=new A.aI(s,t.SF) +this.bg2(a,b,new A.bPe(r),new A.bPf(r)) +return s}, +$iFX:1} +A.bPe.prototype={ +$1(a){this.a.d2(0,a)}, +$S:573} +A.bPf.prototype={ +$1(a){this.a.jh(a)}, +$S:575} +A.x7.prototype={$ix7:1} +A.aMB.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.aeh.prototype={ +k(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.r(p)+", "+A.r(s)+") "+A.r(r)+" x "+A.r(q)}, +l(a,b){var s,r +if(b==null)return!1 +if(t.Bb.b(b)){s=a.left +s.toString +r=J.er(b) +if(s===r.goy(b)){s=a.top +s.toString +if(s===r.gHX(b)){s=a.width +s.toString +if(s===r.geP(b)){s=a.height +s.toString +r=s===r.gdK(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.ad(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)}, +ganp(a){return a.height}, +gdK(a){var s=a.height +s.toString +return s}, +gauw(a){return a.width}, +geP(a){var s=a.width +s.toString +return s}} +A.aPB.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +return a[b]}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){if(a.length>0)return a[0] +throw A.d(A.a0("No elements"))}, +gP(a){var s=a.length +if(s>0)return a[s-1] +throw A.d(A.a0("No elements"))}, +gcW(a){var s=a.length +if(s===1)return a[0] +if(s===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.agj.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.aX7.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.aXn.prototype={ +gA(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.d(A.ik(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return a[b]}, +$idt:1, +$iaO:1, +$idK:1, +$iB:1, +$ix:1} +A.cwH.prototype={} +A.NE.prototype={ +glb(){return!0}, +cl(a,b,c,d){return A.qW(this.a,this.b,a,!1,this.$ti.c)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.aeA.prototype={ +ao(a){var s=this +if(s.b==null)return $.cuU() +s.a6s() +s.d=s.b=null +return $.cuU()}, +lh(a){var s,r=this +if(r.b==null)throw A.d(A.a0("Subscription has been canceled.")) +r.a6s() +s=A.cRB(new A.bZj(a),t.I3) +r.d=s +r.a6q()}, +Hd(a,b){}, +iH(a,b){if(this.b==null)return;++this.a +this.a6s()}, +f2(a){return this.iH(0,null)}, +nj(a){var s=this +if(s.b==null||s.a<=0)return;--s.a +s.a6q()}, +a6q(){var s,r=this,q=r.d +if(q!=null&&r.a<=0){s=r.b +s.toString +J.d0K(s,r.c,q,!1)}}, +a6s(){var s,r=this.d +if(r!=null){s=this.b +s.toString +J.d0J(s,this.c,r,!1)}}, +$ioH:1} +A.bZh.prototype={ +$1(a){return this.a.$1(a)}, +$S:80} +A.bZj.prototype={ +$1(a){return this.a.$1(a)}, +$S:80} +A.cE.prototype={ +gaz(a){return new A.atW(a,this.gA(a),A.bk(a).h("atW"))}, +B(a,b){throw A.d(A.aq("Cannot add to immutable List."))}, +L(a,b){throw A.d(A.aq("Cannot add to immutable List."))}, +iL(a,b){throw A.d(A.aq("Cannot sort immutable List."))}, +eu(a,b,c){throw A.d(A.aq("Cannot add to immutable List."))}, +fE(a,b){throw A.d(A.aq("Cannot remove from immutable List."))}, +hX(a){throw A.d(A.aq("Cannot remove from immutable List."))}, +F(a,b){throw A.d(A.aq("Cannot remove from immutable List."))}, +wW(a,b){throw A.d(A.aq("Cannot remove from immutable List."))}, +dS(a,b,c,d,e){throw A.d(A.aq("Cannot setRange on immutable List."))}, +cV(a,b,c,d){return this.dS(a,b,c,d,0)}, +fb(a,b,c,d){throw A.d(A.aq("Cannot modify an immutable List."))}} +A.atW.prototype={ +t(){var s=this,r=s.c+1,q=s.b +if(r")).cl(a,b,c,d)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}, +Ei(){var s,r,q=this +if(q.w||q.x)return q.f.a +q.x=!0 +s=q.c.aO(0) +r=q.a +r===$&&A.b() +s.mY(r.gq4()).j6(new A.c_y(q)) +return q.f.a}, +a5m(){var s=this +if(s.w)return +if(s.y){s.Ei() +return}s.w=!0 +s.c.dL(0,65536).bf(new A.c_z(s),t.P).mY(new A.c_A(s))}, +b85(a){var s=this,r=new A.c_B(s,new A.c_D(s)),q=new A.c_E(s),p=s.c +if(p!=null)r.$1(p) +else A.cwL(s.b).acB(0,B.ui).ki(r,q,t.H)}} +A.c_F.prototype={ +$0(){var s=this.a +s.r=!0 +return s.Ei()}, +$S:377} +A.c_y.prototype={ +$0(){var s=this.a +s.f.fw(0) +s=s.a +s===$&&A.b() +s.aO(0)}, +$S:0} +A.c_z.prototype={ +$1(a){var s,r,q,p=this.a +p.w=!1 +if(p.r){p.Ei() +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.gmU().e&4)!==0:(q&2)===0)}else r=!1 +if(r)p.a5m() +if(s>0){s=p.a +s===$&&A.b() +s.B(0,a)}if(p.y)p.Ei()}, +$S:392} +A.c_A.prototype={ +$2(a,b){var s,r=this.a +if(!r.r){s=r.a +s===$&&A.b() +s.h1(a,b) +r.Ei() +r.r=!0}}, +$S:126} +A.c_D.prototype={ +$1(a){var s=this.a +s.c=a +s.w=!1 +s.a5m()}, +$S:396} +A.c_B.prototype={ +$1(a){var s=this.a,r=s.d,q=this.b +if(r>0)a.aLl(0,r).ki(q,new A.c_C(s),t.H) +else q.$1(a)}, +$S:396} +A.c_C.prototype={ +$2(a,b){var s=this.a,r=s.a +r===$&&A.b() +r.h1(a,b) +s.w=!1 +s.Ei()}, +$S:126} +A.c_E.prototype={ +$2(a,b){var s=this.a,r=s.a +r===$&&A.b() +r.h1(a,b) +s.a.aO(0) +s.f.fw(0)}, +$S:88} +A.aeF.prototype={ +Wm(){A.dhX(A.cOA(),this.b)}, +acB(a,b){if(b!==B.ui&&b!==B.kT&&b!==B.ajA&&b!==B.Dh&&b!==B.ajB)return A.pd(new A.nN(!1,null,null,"Invalid file mode for this operation"),null,t.YK) +return A.c_G(5,[null,this.b,b.a]).bf(new A.c_I(this),t.YK)}, +CO(a){return this.acB(0,B.ui)}, +nQ(a){return A.c_G(12,[null,this.b]).bf(new A.c_H(this),t.S)}, +bzV(){A.dhY(A.cOA(),this.b)}, +wN(){return this.CO(0).bf(new A.c_K(new A.c_O(),new A.c_L()),t.E)}, +aGV(a,b,c){return this.acB(0,c).bf(new A.c_S(this,a,!1),t.hS)}, +bIm(a){return this.aGV(a,!1,B.kT)}, +aGW(a){var s,r,q,p=B.ai,o=!1,n=B.kT +try{r=this.aGV(B.bo.cD(a),o,n) +return r}catch(q){s=A.ag(q) +r=A.pd(s,null,t.hS) +return r}}, +k(a){return"File: '"+this.a+"'"}, +$iDj:1} +A.c_I.prototype={ +$1(a){var s=this.a.a +A.GG(a,"Cannot open file",s) +return A.diY(a,s)}, +$S:270} +A.c_H.prototype={ +$1(a){A.GG(a,"Cannot retrieve length of file",this.a.a) +return a}, +$S:78} +A.c_O.prototype={ +$1(a){var s=A.a([],t.XE),r=new A.ak($.at,t.Qy) +new A.c_P(a,new A.aLO(s),new A.aI(r,t.gI)).$0() +return r}, +$S:440} +A.c_P.prototype={ +$0(){var s=this,r=s.c +s.a.dL(0,65536).ki(new A.c_Q(s.b,s,r),r.gVD(),t.P)}, +$S:0} +A.c_Q.prototype={ +$1(a){var s=this.a +if(a.length>0){s.B(0,a) +this.b.$0()}else this.c.d2(0,s.ON())}, +$S:392} +A.c_L.prototype={ +$2(a,b){var s,r={} +r.a=new Uint8Array(b) +r.b=0 +s=new A.ak($.at,t.Qy) +new A.c_M(r,a,b,new A.aI(s,t.gI)).$0() +return s}, +$S:614} +A.c_M.prototype={ +$0(){var s=this,r=s.a,q=r.a,p=r.b,o=s.c,n=s.d +s.b.bFe(q,p,Math.min(p+16777216,o)).ki(new A.c_N(r,s,o,n),n.gVD(),t.P)}, +$S:0} +A.c_N.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")).cl(a,b,c,d)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}, +ajR(a){var s=this.fr +if((s.a.a&30)===0)s.d2(0,this)}, +aYE(){return this.ajR(null)}, +Kg(){var s=this +s.dx=s.dy=!0 +s.a.aO(0).bf(s.gaYD(),t.H) +s.cy=s.db=!0 +s.gTW() +s.gTW().ao(0) +s.c.aO(0) +s.ax=203}, +a0q(a){var s=this +if(a===B.rD||a===B.AF){s.dy=!0 +if(s.fx.c){s.a.a0q(B.rD) +s.db=!0 +if(s.dx)s.Kg()}}if(a===B.AG||a===B.AF){s.cy=s.dx=!0 +s.a.a0q(B.AG) +if(s.db)s.Kg()}}, +baP(a){return this.Q.$1(a)}, +b0K(a){var s,r,q,p=this +try{if(a===B.bii){p.a5n() +p.go=!0 +p.ya()}else if(a===B.bij){p.a6Z() +p.go=!0 +p.ya()}else if(a===B.WR)p.Ej()}catch(q){s=A.ag(q) +r=A.aD(q) +p.B8(s,r)}}, +b_X(){if(this.fx.b)this.Kg()}, +B8(a,b){var s=this +if(s.ax===203)return +else if(s.fy)s.b.iy(a,b) +else s.c.h1(a,b) +s.Kg()}, +bfQ(a){return this.B8(a,null)}, +Ej(){var s=0,r=A.p(t.H),q,p=this,o +var $async$Ej=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.ax +s=o===202?3:5 +break +case 3:if(p.dx){s=1 +break}p.cy=!0 +s=p.fx.b?6:8 +break +case 6:p.dx=!0 +p.c.B(0,B.WR) +if(p.db)p.Kg() +s=7 +break +case 8:p.go=!0 +s=9 +return A.i(p.ya(),$async$Ej) +case 9:case 7:s=4 +break +case 5:s=o===201?10:11 +break +case 10:p.cy=!0 +s=p.fx.b?12:14 +break +case 12:p.B8(new A.a3O("HandshakeException","Connection terminated during handshake",null),null) +s=13 +break +case 14:s=15 +return A.i(p.vF(),$async$Ej) +case 15:case 13:case 11:case 4:case 1:return A.n(q,r)}}) +return A.o($async$Ej,r)}, +vF(){var s=0,r=A.p(t.H),q=1,p,o=this,n,m,l,k,j +var $async$vF=A.l(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +s=6 +return A.i(o.k1.bxY(),$async$vF) +case 6:n=b +s=n?7:9 +break +case 7:s=10 +return A.i(o.vF(),$async$vF) +case 10:s=8 +break +case 9:o.fx.c=!1 +o.a5n() +o.a6Z() +o.go=!0 +s=11 +return A.i(o.ya(),$async$vF) +case 11:case 8:q=1 +s=5 +break +case 3:q=2 +j=p +m=A.ag(j) +l=A.aD(j) +o.B8(m,l) +s=5 +break +case 2:s=1 +break +case 5:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$vF,r)}, +bha(){var s,r,q,p=this +p.ax=202 +if(p.fy){p.fy=!1 +try{p.k1.bIZ() +A.d3(B.w,new A.cbr(p))}catch(q){s=A.ag(q) +r=A.aD(q) +p.b.iy(s,r)}}}, +bbR(){var s,r=this,q=r.c,p=q.b +p=(p&1)!==0?(q.gmU().e&4)!==0:(p&2)===0 +s=r.CW +if(p)r.CW=s+1 +else{p=s-1 +r.CW=p +if(p===0){r.ari() +r.a5P()}}if(!r.cy||!r.db){p=q.b +if((p&1)!==0?(q.gmU().e&4)!==0:(p&2)===0)r.gTW().f2(0) +else r.gTW().nj(0)}}, +bcg(){}, +ya(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$ya=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +k=n.a +case 7:if(!!0){s=8 +break}if(n.ax===203){s=1 +break}if(!n.go||n.id){s=1 +break}n.id=!0 +n.go=!1 +s=9 +return A.i(n.Tc(),$async$ya) +case 9:n.fx=b +n.id=!1 +if(n.ax===203){n.k1.bJt() +n.k1=null +s=1 +break}k.sad5(!0) +if(n.fx.c&&n.dy&&!n.db){n.a0q(B.rD) +if(n.ax===203){s=1 +break}}if(n.fx.b&&n.cy&&!n.dx){if(n.ax===201){n.k1.bxY() +if(n.ax===201){k=A.d7E("Connection terminated during handshake") +throw A.d(k)}}n.Ej()}if(n.ax===203){s=1 +break}j=n.fx +s=j.a?10:11 +break +case 10:n.go=!0 +if(j.r)n.a6Z() +if(n.fx.e)n.a5P() +if(n.fx.f)n.a5n() +if(n.fx.d)n.ari() +s=n.ax===201?12:13 +break +case 12:s=14 +return A.i(n.vF(),$async$ya) +case 14:case 13:case 11:s=7 +break +case 8:p=2 +s=6 +break +case 4:p=3 +h=o +m=A.ag(h) +l=A.aD(h) +n.B8(m,l) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$ya,r)}, +bfc(a){if(!this.cy)return this.a.dL(0,a) +else return null}, +a5n(){var s=this +if(s.ax===203)return +if(s.k1.gaw1().i(0,2).bKo(s.gbfb()).pN(0,0))s.fx.b=!1 +else s.a.sad5(!1)}, +a6Z(){if(this.db)return +var s=this.a +if(this.k1.gaw1().i(0,3).bKa(s))s.saGZ(!0)}, +ari(){}, +a5P(){}, +Tc(){var s=0,r=A.p(t.fa),q=this,p,o,n,m,l,k +var $async$Tc=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=q.ax +l=A.aK(10,null,!1,t.z) +l[0]=q.k1.aq6() +l[1]=m!==202 +p=q.k1.gaw1() +for(o=0;o<4;++o){m=2*o +n=p.i(0,o) +l[m+2]=n.gee(n) +n=p.i(0,o) +l[m+3]=n.gdw(n)}k=t.Dn +s=2 +return A.i(A.dib(43,l),$async$Tc) +case 2:k.a(b) +return A.n(null,r)}}) +return A.o($async$Tc,r)}, +$iET:1, +$iU4:1} +A.cbr.prototype={ +$0(){var s=this.a +return s.b.d2(0,s)}, +$S:0} +A.aGN.prototype={ +k(a){var s=""+this.a,r=this.b +if(r.length!==0)s+=": "+r +return s.charCodeAt(0)==0?s:s}, +$ibP:1} +A.a3O.prototype={} +A.a9V.prototype={} +A.rU.prototype={ +k(a){return B.aGa[this.a]}} +A.aFK.prototype={ +hF(a,b){return this.gh2().cD(b)}, +gh2(){$.OA() +return B.k_}} +A.coD.prototype={ +$1(a){var s=function(b,c,d){return function(){return b(c,d,this,Array.prototype.slice.apply(arguments))}}(A.dkj,a,!1) +A.cAA(s,$.b2x(),a) +return s}, +$S:83} +A.coE.prototype={ +$1(a){return new this.a(a)}, +$S:83} +A.cr_.prototype={ +$1(a){return new A.a4F(a)}, +$S:739} +A.cr0.prototype={ +$1(a){return new A.JI(a,t.sW)}, +$S:740} +A.cr1.prototype={ +$1(a){return new A.zb(a)}, +$S:749} +A.zb.prototype={ +i(a,b){if(typeof b!="string"&&typeof b!="number")throw A.d(A.aM("property is not a String or num",null)) +return A.cAw(this.a[b])}, +n(a,b,c){if(typeof b!="string"&&typeof b!="number")throw A.d(A.aM("property is not a String or num",null)) +this.a[b]=A.cAx(c)}, +l(a,b){if(b==null)return!1 +return b instanceof A.zb&&this.a===b.a}, +aAw(a){return a in this.a}, +k(a){var s,r +try{s=String(this.a) +return s}catch(r){s=this.fP(0) +return s}}, +BE(a,b){var s=this.a,r=b==null?null:A.ew(new A.O(b,A.dtk(),A.X(b).h("O<1,@>")),!0,t.z) +return A.cAw(s[a].apply(s,r))}, +bpI(a){return this.BE(a,null)}, +gv(a){return 0}} +A.a4F.prototype={} +A.JI.prototype={ +a1Q(a){var s=a<0||a>=this.gA(0) +if(s)throw A.d(A.e9(a,0,this.gA(0),null,null))}, +i(a,b){if(A.bI(b))this.a1Q(b) +return this.aOP(0,b)}, +n(a,b,c){if(A.bI(b))this.a1Q(b) +this.ahF(0,b,c)}, +gA(a){var s=this.a.length +if(typeof s==="number"&&s>>>0===s)return s +throw A.d(A.a0("Bad JsArray length"))}, +sA(a,b){this.ahF(0,"length",b)}, +B(a,b){this.BE("push",[b])}, +L(a,b){this.BE("push",b instanceof Array?b:A.ew(b,!0,t.z))}, +eu(a,b,c){var s=b>=this.gA(0)+1 +if(s)A.C(A.e9(b,0,this.gA(0),null,null)) +this.BE("splice",[b,0,c])}, +fE(a,b){this.a1Q(b) +return J.aS(this.BE("splice",[b,1]),0)}, +hX(a){if(this.gA(0)===0)throw A.d(A.b8(-1)) +return this.bpI("pop")}, +dS(a,b,c,d,e){var s,r +A.d8I(b,c,this.gA(0)) +s=c-b +if(s===0)return +if(e<0)throw A.d(A.aM(e,null)) +r=[b,s] +B.b.L(r,J.amA(d,e).nl(0,s)) +this.BE("splice",r)}, +cV(a,b,c,d){return this.dS(0,b,c,d,0)}, +iL(a,b){this.BE("sort",b==null?[]:[b])}, +$iaO:1, +$iB:1, +$ix:1} +A.XF.prototype={ +n(a,b,c){return this.aOQ(0,b,c)}} +A.csM.prototype={ +$1(a){var s,r,q,p,o +if(A.cQY(a))return a +s=this.a +if(s.aB(0,a))return s.i(0,a) +if(t.pE.b(a)){r={} +s.n(0,a,r) +for(s=J.er(a),q=J.au(s.gek(a));q.t();){p=q.gK(q) +r[p]=this.$1(s.i(a,p))}return r}else if(t.VG.b(a)){o=[] +s.n(0,a,o) +B.b.L(o,J.dP(a,this,t.z)) +return o}else return a}, +$S:157} +A.ctk.prototype={ +$1(a){return this.a.d2(0,a)}, +$S:25} +A.ctl.prototype={ +$1(a){if(a==null)return this.a.jh(new A.aAd(a===undefined)) +return this.a.jh(a)}, +$S:25} +A.crC.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i +if(A.cQX(a))return a +s=this.a +a.toString +if(s.aB(0,a))return s.i(0,a) +if(a instanceof Date)return A.vF(a.getTime(),!0) +if(a instanceof RegExp)throw A.d(A.aM("structured clone of RegExp",null)) +if(typeof Promise!="undefined"&&a instanceof Promise)return A.kA(a,t.X) +r=Object.getPrototypeOf(a) +if(r===Object.prototype||r===null){q=t.X +p=A.N(q,q) +s.n(0,a,p) +o=Object.keys(a) +n=[] +for(s=J.cz(o),q=s.gaz(o);q.t();)n.push(A.cBk(q.gK(q))) +for(m=0;m4294967296)throw A.d(A.b8(u.E+a)) +return Math.random()*a>>>0}, +aCm(){return Math.random()<0.5}} +A.aU3.prototype={ +ahZ(a){var s,r,q,p,o,n,m,l=this,k=4294967296 +do{s=a>>>0 +a=B.d.aD(a-s,k) +r=a>>>0 +a=B.d.aD(a-r,k) +q=(~s>>>0)+(s<<21>>>0) +p=q>>>0 +r=(~r>>>0)+((r<<21|s>>>11)>>>0)+B.d.aD(q-p,k)>>>0 +q=((p^(p>>>24|r<<8))>>>0)*265 +s=q>>>0 +r=((r^r>>>24)>>>0)*265+B.d.aD(q-s,k)>>>0 +q=((s^(s>>>14|r<<18))>>>0)*21 +s=q>>>0 +r=((r^r>>>14)>>>0)*21+B.d.aD(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.d.aD(q-p,k) +q=l.a*1037 +n=l.a=q>>>0 +m=l.b*1037+B.d.aD(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!==0) +if(o===0&&n===0)l.a=23063 +l.B2() +l.B2() +l.B2() +l.B2()}, +B2(){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.d.aD(o-n+(q-p)+(m-r),4294967296)>>>0}, +px(a){var s,r,q,p=this +if(a<=0||a>4294967296)throw A.d(A.b8(u.E+a)) +s=a-1 +if((a&s)>>>0===0){p.B2() +return(p.a&s)>>>0}do{p.B2() +r=p.a +q=r%a}while(r-q+a>=4294967296) +return q}, +aCm(){this.B2() +return(this.a&1)===0}} +A.c34.prototype={ +aVn(){var s=self.crypto +if(s!=null)if(s.getRandomValues!=null)return +throw A.d(A.aq("No source of cryptographically secure random numbers available."))}, +px(a){var s,r,q,p,o,n,m,l,k +if(a<=0||a>4294967296)throw A.d(A.b8(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.bZ(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.d(A.ik(b,this.gA(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return this.i(a,b)}, +V(a){return a.clear()}, +$iaO:1, +$iB:1, +$ix:1} +A.qr.prototype={$iqr:1} +A.aAg.prototype={ +gA(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.d(A.ik(b,this.gA(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return this.i(a,b)}, +V(a){return a.clear()}, +$iaO:1, +$iB:1, +$ix:1} +A.aBI.prototype={ +gA(a){return a.length}} +A.aFr.prototype={ +gA(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.d(A.ik(b,this.gA(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return this.i(a,b)}, +V(a){return a.clear()}, +$iaO:1, +$iB:1, +$ix:1} +A.qQ.prototype={$iqQ:1} +A.aGZ.prototype={ +gA(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.d(A.ik(b,this.gA(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.aq("Cannot assign element of immutable List."))}, +sA(a,b){throw A.d(A.aq("Cannot resize immutable List."))}, +ga2(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gP(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a0("No elements"))}, +gcW(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.d(A.a0("No elements")) +throw A.d(A.a0("More than one element"))}, +dE(a,b){return this.i(a,b)}, +V(a){return a.clear()}, +$iaO:1, +$iB:1, +$ix:1} +A.aQL.prototype={} +A.aQM.prototype={} +A.aSu.prototype={} +A.aSv.prototype={} +A.aXj.prototype={} +A.aXk.prototype={} +A.aYR.prototype={} +A.aYS.prototype={} +A.atp.prototype={} +A.aBJ.prototype={ +H(){return"PointMode."+this.b}} +A.apj.prototype={ +H(){return"ClipOp."+this.b}} +A.aHv.prototype={ +H(){return"VertexMode."+this.b}} +A.a6R.prototype={ +H(){return"PathFillType."+this.b}} +A.bwW.prototype={ +H(){return"PathOperation."+this.b}} +A.bU0.prototype={ +jE(a,b){A.dt5(this.a,this.b,a,b)}} +A.aiY.prototype={ +fI(a){A.GM(this.b,this.c,a,t.CD)}} +A.AT.prototype={ +gA(a){return this.a.gA(0)}, +wL(a){var s,r,q=this +if(!q.d&&q.e!=null){q.e.jE(a.a,a.gaBd()) +return!1}s=q.c +if(s<=0)return!0 +r=q.al4(s-1) +q.a.iW(0,a) +return r}, +al4(a){var s,r,q,p +for(s=this.a,r=t.CD,q=!1;(s.c-s.b&s.a.length-1)>>>0>a;q=!0){p=s.qC() +A.GM(p.b,p.c,null,r)}return q}, +b04(){var s=this,r=s.a +if(!r.gad(0)&&s.e!=null){r=r.qC() +s.e.jE(r.a,r.gaBd()) +A.j8(s.gal_())}else s.d=!1}} +A.b90.prototype={ +aDQ(a,b,c){this.a.cP(0,a,new A.b91()).wL(new A.aiY(b,c,$.at))}, +aL2(a,b){var s=this.a.cP(0,a,new A.b92()),r=s.e +s.e=new A.bU0(b,$.at) +if(r==null&&!s.d){s.d=!0 +A.j8(s.gal_())}}, +bxi(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.d(A.dA("Unrecognized message sent to dev.flutter/channel-buffers (method name too long)")) +r=2+s +q=B.ai.hF(0,B.p.cK(j,2,r)) +switch(q){case"resize":if(j[r]!==12)throw A.d(A.dA(l)) +p=r+1 +if(j[p]<2)throw A.d(A.dA(l));++p +if(j[p]!==7)throw A.d(A.dA("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.d(A.dA("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.ai.hF(0,B.p.cK(j,p,r)) +if(j[r]!==3)throw A.d(A.dA("Invalid arguments for 'resize' method sent to dev.flutter/channel-buffers (second argument must be an integer in the range 0 to 2147483647)")) +this.aF1(0,n,a.getUint32(r+1,B.z===$.k5())) +break +case"overflow":if(j[r]!==12)throw A.d(A.dA(k)) +p=r+1 +if(j[p]<2)throw A.d(A.dA(k));++p +if(j[p]!==7)throw A.d(A.dA("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.d(A.dA("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.ai.hF(0,B.p.cK(j,p,r)) +r=j[r] +if(r!==1&&r!==2)throw A.d(A.dA("Invalid arguments for 'overflow' method sent to dev.flutter/channel-buffers (second argument must be a boolean)")) +break +default:throw A.d(A.dA("Unrecognized method '"+q+"' sent to dev.flutter/channel-buffers"))}}else{m=A.a(B.ai.hF(0,j).split("\r"),t.s) +if(m.length===3&&J.q(m[0],"resize"))this.aF1(0,m[1],A.cA(m[2],null)) +else throw A.d(A.dA("Unrecognized message "+A.r(m)+" sent to dev.flutter/channel-buffers."))}}, +aF1(a,b,c){var s=this.a,r=s.i(0,b) +if(r==null)s.n(0,b,new A.AT(A.od(c,t.S8),c)) +else{r.c=c +r.al4(c)}}} +A.b91.prototype={ +$0(){return new A.AT(A.od(1,t.S8),1)}, +$S:519} +A.b92.prototype={ +$0(){return new A.AT(A.od(1,t.S8),1)}, +$S:519} +A.aAk.prototype={ +pO(a,b){return this.a<=b.a&&this.b<=b.b}, +pN(a,b){return this.a>b.a&&this.b>b.b}, +l(a,b){if(b==null)return!1 +return b instanceof A.aAk&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return"OffsetBase("+B.e.aZ(this.a,1)+", "+B.e.aZ(this.b,1)+")"}} +A.j.prototype={ +gfT(){var s=this.a,r=this.b +return Math.sqrt(s*s+r*r)}, +gw7(){var s=this.a,r=this.b +return s*s+r*r}, +W(a,b){return new A.j(this.a-b.a,this.b-b.b)}, +S(a,b){return new A.j(this.a+b.a,this.b+b.b)}, +X(a,b){return new A.j(this.a*b,this.b*b)}, +iI(a,b){return new A.j(this.a/b,this.b/b)}, +l(a,b){if(b==null)return!1 +return b instanceof A.j&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return"Offset("+B.e.aZ(this.a,1)+", "+B.e.aZ(this.b,1)+")"}} +A.V.prototype={ +gad(a){return this.a<=0||this.b<=0}, +W(a,b){var s=this +if(b instanceof A.V)return new A.j(s.a-b.a,s.b-b.b) +if(b instanceof A.j)return new A.V(s.a-b.a,s.b-b.b) +throw A.d(A.aM(b,null))}, +S(a,b){return new A.V(this.a+b.a,this.b+b.b)}, +X(a,b){return new A.V(this.a*b,this.b*b)}, +iI(a,b){return new A.V(this.a/b,this.b/b)}, +giu(){return Math.min(Math.abs(this.a),Math.abs(this.b))}, +gaBZ(){return Math.max(Math.abs(this.a),Math.abs(this.b))}, +nD(a){return new A.j(a.a+this.a/2,a.b+this.b/2)}, +Vb(a,b){return new A.j(b.a+this.a,b.b+this.b)}, +p(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}, +gNt(a){var s=this +return isFinite(s.a)&&isFinite(s.b)&&isFinite(s.c)&&isFinite(s.d)}, +gad(a){var s=this +return s.a>=s.c||s.b>=s.d}, +eD(a){var s=this,r=a.a,q=a.b +return new A.W(s.a+r,s.b+q,s.c+r,s.d+q)}, +ba(a,b,c){var s=this +return new A.W(s.a+b,s.b+c,s.c+b,s.d+c)}, +fH(a){var s=this +return new A.W(s.a-a,s.b-a,s.c+a,s.d+a)}, +jZ(a){var s=this +return new A.W(Math.max(s.a,a.a),Math.max(s.b,a.b),Math.min(s.c,a.c),Math.min(s.d,a.d))}, +n1(a){var s=this +return new A.W(Math.min(s.a,a.a),Math.min(s.b,a.b),Math.max(s.c,a.c),Math.max(s.d,a.d))}, +Oc(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}, +giu(){var s=this +return Math.min(Math.abs(s.c-s.a),Math.abs(s.d-s.b))}, +gaFG(){var s=this.a +return new A.j(s+(this.c-s)/2,this.b)}, +gbpW(){var s=this.b +return new A.j(this.a,s+(this.d-s)/2)}, +gc1(){var s=this,r=s.a,q=s.b +return new A.j(r+(s.c-r)/2,q+(s.d-q)/2)}, +gbnC(){var s=this.a +return new A.j(s+(this.c-s)/2,this.d)}, +p(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}, +Dy(){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.S_(s.S_(s.S_(s.S_(1,l,k,m),j,i,p),h,g,m),f,e,p) +if(d<1)return new A.qA(q,n,r,o,j*d,k*d,i*d,h*d,f*d,g*d,e*d,l*d,!1) +return new A.qA(q,n,r,o,j,k,i,h,f,g,e,l,!1)}, +p(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.Dy() +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.I(s)!==J.az(b))return!1 +return b instanceof A.qA&&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.ad(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)}, +k(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.bb(o,n).l(0,new A.bb(m,l))){s=q.x +r=q.y +s=new A.bb(m,l).l(0,new A.bb(s,r))&&new A.bb(s,r).l(0,new A.bb(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.bb(o,n).k(0)+", topRight: "+new A.bb(m,l).k(0)+", bottomRight: "+new A.bb(q.x,q.y).k(0)+", bottomLeft: "+new A.bb(q.z,q.Q).k(0)+")"}} +A.a4K.prototype={ +H(){return"KeyEventType."+this.b}, +gNA(a){var s +switch(this.a){case 0:s="Key Down" +break +case 1:s="Key Up" +break +case 2:s="Key Repeat" +break +default:s=null}return s}} +A.bog.prototype={ +H(){return"KeyEventDeviceType."+this.b}} +A.pi.prototype={ +b94(){var s=this.e +return"0x"+B.d.k9(s,16)+new A.boe(B.e.ec(s/4294967296)).$0()}, +b0G(){var s=this.f +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+'"'}}, +beR(){var s=this.f +if(s==null)return"" +return" (0x"+new A.O(new A.e0(s),new A.bof(),t.Hz.h("O")).bQ(0," ")+")"}, +k(a){var s=this,r=s.b.gNA(0),q=B.d.k9(s.d,16),p=s.b94(),o=s.b0G(),n=s.beR(),m=s.r?", synthesized":"" +return"KeyData("+r+", physical: 0x"+q+", logical: "+p+", character: "+o+n+m+")"}} +A.boe.prototype={ +$0(){switch(this.a){case 0:return" (Unicode)" +case 1:return" (Unprintable)" +case 2:return" (Flutter)" +case 17:return" (Android)" +case 18:return" (Fuchsia)" +case 19:return" (iOS)" +case 20:return" (macOS)" +case 21:return" (GTK)" +case 22:return" (Windows)" +case 23:return" (Web)" +case 24:return" (GLFW)"}return""}, +$S:18} +A.bof.prototype={ +$1(a){return B.c.fm(B.d.k9(a,16),2,"0")}, +$S:104} +A.v.prototype={ +axd(){var s=this +return 0.2126*A.cvL((s.gj(s)>>>16&255)/255)+0.7152*A.cvL((s.gj(s)>>>8&255)/255)+0.0722*A.cvL((s.gj(s)&255)/255)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.v&&b.gj(b)===s.gj(s)}, +gv(a){return B.d.gv(this.gj(this))}, +k(a){return"Color(0x"+B.c.fm(B.d.k9(this.gj(this),16),8,"0")+")"}, +gj(a){return this.a}} +A.Vn.prototype={ +H(){return"StrokeCap."+this.b}} +A.Vo.prototype={ +H(){return"StrokeJoin."+this.b}} +A.aB_.prototype={ +H(){return"PaintingStyle."+this.b}} +A.fG.prototype={ +H(){return"BlendMode."+this.b}} +A.PE.prototype={ +H(){return"Clip."+this.b}} +A.b6n.prototype={ +H(){return"BlurStyle."+this.b}} +A.zi.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.zi&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return"MaskFilter.blur("+this.a.k(0)+", "+B.e.aZ(this.b,1)+")"}} +A.IV.prototype={ +H(){return"FilterQuality."+this.b}} +A.cxp.prototype={} +A.Ry.prototype={ +H(){return"ImageByteFormat."+this.b}} +A.bxo.prototype={ +H(){return"PixelFormat."+this.b}} +A.Fg.prototype={ +bK(a,b){return new A.Fg(this.a,this.b.X(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.Fg&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c===s.c}, +gv(a){return A.ad(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)}, +k(a){return"TextShadow("+this.a.k(0)+", "+this.b.k(0)+", "+A.r(this.c)+")"}} +A.wb.prototype={ +gA(a){return this.b}} +A.avO.prototype={ +abg(){var s=0,r=A.p(t.hP),q,p=this,o +var $async$abg=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +if(o==null)throw A.d(A.a0("Object is disposed")) +o=$.ar().rG(o,!1,null,null) +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$abg,r)}} +A.bKv.prototype={} +A.bxt.prototype={} +A.yS.prototype={ +k(a){var s,r=A.I(this).k(0),q=this.a,p=A.cp(0,0,q[2],0,0,0),o=q[1],n=A.cp(0,0,o,0,0,0),m=q[4],l=A.cp(0,0,m,0,0,0),k=A.cp(0,0,q[3],0,0,0) +o=A.cp(0,0,o,0,0,0) +s=q[0] +return r+"(buildDuration: "+(A.r((p.a-n.a)*0.001)+"ms")+", rasterDuration: "+(A.r((l.a-k.a)*0.001)+"ms")+", vsyncOverhead: "+(A.r((o.a-A.cp(0,0,s,0,0,0).a)*0.001)+"ms")+", totalSpan: "+(A.r((A.cp(0,0,m,0,0,0).a-A.cp(0,0,s,0,0,0).a)*0.001)+"ms")+", layerCacheCount: "+q[6]+", layerCacheBytes: "+q[7]+", pictureCacheCount: "+q[8]+", pictureCacheBytes: "+q[9]+", frameNumber: "+B.b.gP(q)+")"}} +A.vl.prototype={ +H(){return"AppLifecycleState."+this.b}} +A.a_d.prototype={ +H(){return"AppExitResponse."+this.b}} +A.jm.prototype={ +gi4(a){var s=this.a,r=B.el.i(0,s) +return r==null?s:r}, +gi2(){var s=this.c,r=B.fb.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.jm&&b.gi4(0)===s.gi4(0)&&b.b==s.b&&b.gi2()==s.gi2()}, +gv(a){return A.ad(this.gi4(0),this.b,this.gi2(),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +k(a){return this.pY("_")}, +pY(a){var s=this,r=s.gi4(0),q=s.b +if(q!=null)r+=a+q +if(s.c!=null)r+=a+A.r(s.gi2()) +return r.charCodeAt(0)==0?r:r}} +A.bbt.prototype={ +H(){return"DartPerformanceMode."+this.b}} +A.M3.prototype={ +k(a){return"SemanticsActionEvent("+this.a.k(0)+", view: "+this.b+", node: "+this.c+")"}} +A.zN.prototype={ +H(){return"PointerChange."+this.b}} +A.pn.prototype={ +H(){return"PointerDeviceKind."+this.b}} +A.TB.prototype={ +H(){return"PointerSignalKind."+this.b}} +A.ue.prototype={ +k(a){return"PointerData(x: "+A.r(this.x)+", y: "+A.r(this.y)+")"}} +A.zO.prototype={} +A.hL.prototype={ +k(a){return"SemanticsAction."+this.b}} +A.h9.prototype={ +k(a){return"SemanticsFlag."+this.b}} +A.bFi.prototype={} +A.J_.prototype={ +H(){return"FontStyle."+this.b}} +A.EE.prototype={ +H(){return"PlaceholderAlignment."+this.b}} +A.o8.prototype={ +k(a){var s=B.aVe.i(0,this.a) +s.toString +return s}} +A.w0.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.w0&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return"FontVariation('"+this.a+"', "+A.r(this.b)+")"}} +A.Jb.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.Jb&&s.a.l(0,b.a)&&s.b.l(0,b.b)&&s.c===b.c}, +gv(a){return A.ad(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)}, +k(a){return"Glyph("+this.a.k(0)+", textRange: "+this.b.k(0)+", direction: "+this.c.k(0)+")"}} +A.t6.prototype={ +H(){return"TextAlign."+this.b}} +A.aaP.prototype={ +H(){return"TextBaseline."+this.b}} +A.At.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.At&&b.a===this.a}, +gv(a){return B.d.gv(this.a)}, +k(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.bQ(s,", ")+"])"}} +A.uF.prototype={ +H(){return"TextDecorationStyle."+this.b}} +A.aG7.prototype={ +H(){return"TextLeadingDistribution."+this.b}} +A.aaV.prototype={ +l(a,b){var s +if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +if(b instanceof A.aaV)s=b.c===this.c +else s=!1 +return s}, +gv(a){return A.ad(!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)}, +k(a){return"TextHeightBehavior(applyHeightToFirstAscent: true, applyHeightToLastDescent: true, leadingDistribution: "+this.c.k(0)+")"}} +A.oI.prototype={ +H(){return"TextDirection."+this.b}} +A.kr.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.kr&&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.ad(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)}, +k(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.k(0)+")"}} +A.aaO.prototype={ +H(){return"TextAffinity."+this.b}} +A.cC.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.cC&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return A.I(this).k(0)+"(offset: "+this.a+", affinity: "+this.b.k(0)+")"}} +A.ea.prototype={ +gfc(){return this.a>=0&&this.b>=0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.ea&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(B.d.gv(this.a),B.d.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)}, +k(a){return"TextRange(start: "+this.a+", end: "+this.b+")"}} +A.Ez.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.Ez&&b.a===this.a}, +gv(a){return B.e.gv(this.a)}, +k(a){return A.I(this).k(0)+"(width: "+A.r(this.a)+")"}} +A.aod.prototype={ +H(){return"BoxHeightStyle."+this.b}} +A.b6U.prototype={ +H(){return"BoxWidthStyle."+this.b}} +A.ML.prototype={ +H(){return"TileMode."+this.b}} +A.bdx.prototype={} +A.Pg.prototype={ +H(){return"Brightness."+this.b}} +A.b85.prototype={ +l(a,b){if(b==null)return!1 +return this===b}, +gv(a){return A.S.prototype.gv.call(this,0)}} +A.auM.prototype={ +l(a,b){var s +if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +if(b instanceof A.auM)s=!0 +else s=!1 +return s}, +gv(a){return A.ad(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)}, +k(a){return"GestureSettings(physicalTouchSlop: null, physicalDoubleTapSlop: null)"}} +A.b4a.prototype={ +Do(a){var s,r,q +if(A.di(a,0,null).gXl())return A.vb(B.vh,a,B.ai,!1) +s=this.b +if(s==null){s=A.L(self.window.document,"querySelector",["meta[name=assetBase]"]) +r=s==null?null:s.content +s=r==null +if(!s)A.L(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.vb(B.vh,s+"assets/"+a,B.ai,!1)}} +A.crd.prototype={ +$1(a){return this.aI5(a)}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +aI5(a){var s=0,r=A.p(t.H) +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(A.csE(a),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:761} +A.cre.prototype={ +$0(){var s=0,r=A.p(t.P),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.a.$0() +s=2 +return A.i(A.cBC(),$async$$0) +case 2:q.b.$0() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.b7h.prototype={ +aeT(a){return $.cR6.cP(0,a,new A.b7i(a))}} +A.b7i.prototype={ +$0(){return t.g.a(A.cQ(this.a))}, +$S:188} +A.bkM.prototype={ +a7b(a){var s=new A.bkP(a) +A.fS(self.window,"popstate",B.Ab.aeT(s),null) +return new A.bkO(this,s)}, +aJ7(){var s=self.window.location.hash +if(s.length===0||s==="#")return"/" +return B.c.b0(s,1)}, +af3(a){return A.cHo(self.window.history)}, +aDm(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}, +aE2(a,b,c,d){var s=this.aDm(d),r=self.window.history,q=A.bH(b) +if(q==null)q=t.K.a(q) +A.L(r,"pushState",[q,c,s])}, +D4(a,b,c,d){var s,r=this.aDm(d),q=self.window.history +if(b==null)s=null +else{s=A.bH(b) +if(s==null)s=t.K.a(s)}A.L(q,"replaceState",[s,c,r])}, +th(a,b){A.L(self.window.history,"go",[b]) +return this.blp()}, +blp(){var s=new A.ak($.at,t.W),r=A.aF("unsubscribe") +r.b=this.a7b(new A.bkN(r,new A.aI(s,t.gR))) +return s}} +A.bkP.prototype={ +$1(a){var s=t.e.a(a).state +if(s==null)s=null +else{s=A.cBk(s) +s.toString}this.a.$1(s)}, +$S:202} +A.bkO.prototype={ +$0(){var s=this.b +A.lv(self.window,"popstate",B.Ab.aeT(s),null) +$.cR6.F(0,s) +return null}, +$S:0} +A.bkN.prototype={ +$1(a){this.a.aX().$0() +this.b.fw(0)}, +$S:11} +A.aBD.prototype={ +aEx(a,b,c){return $.tq().D1(a,b,c)}, +bFE(a,b){return this.aEx(a,b,!0)}} +A.ank.prototype={ +gA(a){return a.length}} +A.anl.prototype={ +aB(a,b){return A.tl(a.get(b))!=null}, +i(a,b){return A.tl(a.get(b))}, +aE(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.tl(s.value[1]))}}, +gek(a){var s=A.a([],t.s) +this.aE(a,new A.b4j(s)) +return s}, +gbm(a){var s=A.a([],t.n4) +this.aE(a,new A.b4k(s)) +return s}, +gA(a){var s=a.size +s.toString +return s}, +gad(a){var s=a.size +s.toString +return s===0}, +gcU(a){var s=a.size +s.toString +return s!==0}, +n(a,b,c){throw A.d(A.aq("Not supported"))}, +cP(a,b,c){throw A.d(A.aq("Not supported"))}, +F(a,b){throw A.d(A.aq("Not supported"))}, +V(a){throw A.d(A.aq("Not supported"))}, +$iaN:1} +A.b4j.prototype={ +$2(a,b){return this.a.push(a)}, +$S:41} +A.b4k.prototype={ +$2(a,b){return this.a.push(b)}, +$S:41} +A.anp.prototype={ +gA(a){return a.length}} +A.C_.prototype={} +A.aAj.prototype={ +gA(a){return a.length}} +A.aKV.prototype={} +A.bFA.prototype={ +H(){return"SharedAxisTransitionType."+this.b}} +A.aEt.prototype={ +a7W(a,b,c,d,e){return new A.aEu(c,d,B.blC,null,e,null)}} +A.aEu.prototype={ +q(a){var s=this,r=A.G(a).at +return new A.Cw(s.c,new A.bFB(s),new A.bFC(s,r),new A.Cw(new A.or(s.d,new A.bN(A.a([],t.x8),t.jc),0),new A.bFD(s),new A.bFE(s,r),s.r,null),null)}} +A.bFB.prototype={ +$3(a,b,c){return new A.ND(b,this.a.e,c,!1,null)}, +$C:"$3", +$R:3, +$S:300} +A.bFC.prototype={ +$3(a,b,c){return new A.NF(b,this.a.e,!0,this.b,c,null)}, +$C:"$3", +$R:3, +$S:320} +A.bFD.prototype={ +$3(a,b,c){return new A.ND(b,this.a.e,c,!0,null)}, +$C:"$3", +$R:3, +$S:300} +A.bFE.prototype={ +$3(a,b,c){return new A.NF(b,this.a.e,!1,this.b,c,null)}, +$C:"$3", +$R:3, +$S:320} +A.ND.prototype={ +q(a){var s,r,q,p,o=this,n=null +switch(o.d.a){case 1:s=!o.f?30:-30 +r=t.Ni +q=$.cuw() +p=o.c +return new A.dg(new A.aB(p,q,q.$ti.h("aB")),!1,A.hC(p,new A.bZ5(o,new A.eb(new A.eA(B.aa),new A.aP(new A.j(s,0),B.h,r),r.h("eb"))),o.e),n) +case 0:s=!o.f?30:-30 +r=t.Ni +q=$.cuw() +p=o.c +return new A.dg(new A.aB(p,q,q.$ti.h("aB")),!1,A.hC(p,new A.bZ6(o,new A.eb(new A.eA(B.aa),new A.aP(new A.j(0,s),B.h,r),r.h("eb"))),o.e),n) +case 2:s=$.cuw() +r=o.c +q=!o.f?$.cYR():$.cYQ() +return new A.dg(new A.aB(r,s,s.$ti.h("aB")),!1,A.Aa(B.C,o.e,n,new A.aB(r,q,q.$ti.h("aB"))),n)}}} +A.bZ5.prototype={ +$2(a,b){var s=this.a.c +return A.uP(b,this.b.ah(0,s.gj(s)),!0)}, +$S:130} +A.bZ6.prototype={ +$2(a,b){var s=this.a.c +return A.uP(b,this.b.ah(0,s.gj(s)),!0)}, +$S:130} +A.NF.prototype={ +q(a){var s,r,q,p,o=this,n=null +switch(o.d.a){case 1:s=!o.e?-30:30 +r=t.Ni +q=$.cux() +p=o.c +return new A.dg(new A.aB(p,q,q.$ti.h("aB")),!1,new A.m7(o.f,A.hC(p,new A.bZO(o,new A.eb(new A.eA(B.aa),new A.aP(B.h,new A.j(s,0),r),r.h("eb"))),o.r),n),n) +case 0:s=!o.e?-30:30 +r=t.Ni +q=$.cux() +p=o.c +return new A.dg(new A.aB(p,q,q.$ti.h("aB")),!1,new A.m7(o.f,A.hC(p,new A.bZP(o,new A.eb(new A.eA(B.aa),new A.aP(B.h,new A.j(0,s),r),r.h("eb"))),o.r),n),n) +case 2:s=$.cux() +r=o.c +q=!o.e?$.cYT():$.cYS() +return new A.dg(new A.aB(r,s,s.$ti.h("aB")),!1,new A.m7(o.f,A.Aa(B.C,o.r,n,new A.aB(r,q,q.$ti.h("aB"))),n),n)}}} +A.bZO.prototype={ +$2(a,b){var s=this.a.c +return A.uP(b,this.b.ah(0,s.gj(s)),!0)}, +$S:130} +A.bZP.prototype={ +$2(a,b){var s=this.a.c +return A.uP(b,this.b.ah(0,s.gj(s)),!0)}, +$S:130} +A.aPf.prototype={ +ah(a,b){return 1-this.aO9(0,b)}} +A.b3Y.prototype={} +A.b3Z.prototype={ +PF(){var s=0,r=A.p(t.yK),q,p=this,o +var $async$PF=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(p.PG(),$async$PF) +case 3:o=b +q=o!=null?A.x5(o):null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$PF,r)}, +PG(){var s=0,r=A.p(t.R),q,p +var $async$PG=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(B.b5T.fi("getInitialAppLink",null,!1,t.R),$async$PG) +case 3:p=b +q=p!=null&&p.length!==0?p:null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$PG,r)}, +gaNy(){var s=B.aj7.Ze(),r=A.z(s).h("oX") +return new A.ft(new A.b4_(),new A.oX(new A.b40(),s,r),r.h("ft"))}, +gbHL(){var s=this.gaNy() +return A.cP1(new A.b41(),t.N,t.Xu).u3(s)}, +gBr(){var $async$gBr=A.l(function(a,b){switch(a){case 2:n=q +s=n.pop() +break +case 1:o=b +s=p}while(true)switch(s){case 0:s=3 +return A.hm(m.PF(),$async$gBr,r) +case 3:l=b +s=l!=null?4:5 +break +case 4:s=6 +q=[1] +return A.hm(A.aQu(l),$async$gBr,r) +case 6:case 5:s=7 +q=[1] +return A.hm(A.cOr(m.gbHL()),$async$gBr,r) +case 7:case 1:return A.hm(null,0,r) +case 2:return A.hm(o,1,r)}}) +var s=0,r=A.b1y($async$gBr,t.Xu),q,p=2,o,n=[],m=this,l +return A.b1I(r)}} +A.b40.prototype={ +$1(a){return a!=null&&J.iL(a)}, +$S:60} +A.b4_.prototype={ +$1(a){return A.ax(a)}, +$S:118} +A.b41.prototype={ +$2(a,b){var s=A.di(a,0,null),r=b.a +if((r.e&2)!==0)A.C(A.a0("Stream is already closed")) +r.Ji(0,s)}, +$S:810} +A.b42.prototype={} +A.b43.prototype={ +gBr(){return A.aFo(A.di(this.a,0,null),t.Xu)}} +A.bst.prototype={ +aCQ(a,b){return B.b5S.fi("openSettings",A.a1(["asAnotherTask",!1,"type",b.b],t.N,t.K),!1,t.H)}} +A.b45.prototype={} +A.anc.prototype={ +H(){return"AppSettingsType."+this.b}} +A.c40.prototype={ +a72(){var s=0,r=A.p(t.H),q,p=this,o +var $async$a72=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if(!p.b){o=p.a +o=o.b===o.c}else o=!1 +if(o){p.b=!0 +s=1 +break}o=new A.ak($.at,t.W) +p.a.iW(0,new A.aI(o,t.gR)) +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a72,r)}, +uW(a,b){return this.bGy(a,b,b)}, +bGy(a,b,c){var s=0,r=A.p(c),q,p=2,o,n=[],m=this,l,k +var $async$uW=A.l(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:s=3 +return A.i(m.a72(),$async$uW) +case 3:p=4 +s=7 +return A.i(a.$0(),$async$uW) +case 7:l=e +q=l +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:n=[2] +case 5:p=2 +if(m.b){k=m.a +if(k.b===k.c)m.b=!1 +else k.qC().fw(0)}s=n.pop() +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$uW,r)}} +A.bpm.prototype={} +A.ann.prototype={ +Ck(a){return this.bxj(a)}, +bxj(a){var s=0,r=A.p(t.z),q,p=this,o +var $async$Ck=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)$async$outer:switch(s){case 0:o=a.a +switch(o){case"setConfiguration":o=J.aS(a.b,0) +p.b=o +p.a.fi("onConfigurationChanged",[o],!1,t.z) +break +case"getConfiguration":q=p.b +s=1 +break $async$outer +default:throw A.d(A.EF("Unimplemented","audio_session for web doesn't implement '"+o+"'",null,null))}case 1:return A.n(q,r)}}) +return A.o($async$Ck,r)}} +A.ZR.prototype={ +eZ(){return A.a1(["contentType",this.a.a,"flags",this.b.a,"usage",this.c.a],t.N,t.z)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.ZR)if(this.a===b.a){s=b.b +if(this.b.a===s.a)s=this.c.a===b.c.a +else s=!1}else s=!1 +else s=!1 +return s}, +gv(a){return B.c.gv(""+this.a.a+"-"+this.b.a+"-"+this.c.a)}} +A.ZS.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.ZS&&this.a===b.a}, +gv(a){return B.d.gv(this.a)}} +A.BP.prototype={ +H(){return"AndroidAudioContentType."+this.b}} +A.k7.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.k7&&this.a===b.a}, +gv(a){return B.d.gv(this.a)}} +A.H6.prototype={} +A.OR.prototype={ +aUr(){var s=this,r=A.nS(new A.b5_(s),!1,t.X0) +s.w!==$&&A.ck() +s.w=r +B.wA.vg(new A.b50(s))}, +LT(a){return this.br2(a)}, +br2(a){var s=0,r=A.p(t.H),q=1,p,o=this,n,m,l +var $async$LT=A.l(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:m=A.dO(null,t.H) +s=2 +return A.i(m,$async$LT) +case 2:o.c=a +q=4 +s=7 +return A.i(B.wA.fi("setConfiguration",A.a([a.eZ()],t.H7),!1,t.z),$async$LT) +case 7:q=1 +s=6 +break +case 4:q=3 +l=p +s=6 +break +case 3:s=1 +break +case 6:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$LT,r)}, +Qc(a){return this.aKI(!0)}, +aKI(a){var s=0,r=A.p(t.y),q,p=this +var $async$Qc=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=p.c==null?3:4 +break +case 3:s=5 +return A.i(p.LT(B.a1w),$async$Qc) +case 5:case 4:q=!0 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Qc,r)}, +a_x(a){var s=0,r=A.p(t.X0),q +var $async$a_x=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=A.b9(t.fN) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a_x,r)}} +A.b5_.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.w +o===$&&A.b() +n=o +s=2 +return A.i(p.a_x(0),$async$$0) +case 2:n.B(0,b) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.b50.prototype={ +$1(a){return this.aHh(a)}, +aHh(a){var s=0,r=A.p(t.P),q=this,p,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=t.kc.a(a.b) +switch(a.a){case"onConfigurationChanged":p=q.a +n.toString +o=A.cEX(J.xJ(t.f.a(J.aS(n,0)),t.N,t.z)) +p.c=o +p.d.B(0,o) +break}return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:855} +A.a_n.prototype={ +eZ(){var s,r,q,p,o,n=this,m=null,l=n.a +l=l==null?m:l.a +s=n.b +s=s==null?m:s.a +r=n.c +r=r==null?m:r.a +q=n.d +q=q==null?m:q.a +p=n.e +p=p==null?m:p.a +o=n.f +o=o==null?m:o.eZ() +return A.a1(["avAudioSessionCategory",l,"avAudioSessionCategoryOptions",s,"avAudioSessionMode",r,"avAudioSessionRouteSharingPolicy",q,"avAudioSessionSetActiveOptions",p,"androidAudioAttributes",o,"androidAudioFocusGainType",n.r.a,"androidWillPauseWhenDucked",n.w],t.N,t.z)}} +A.xN.prototype={ +H(){return"AVAudioSessionCategory."+this.b}} +A.amB.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.amB&&this.a===b.a}, +gv(a){return B.d.gv(this.a)}} +A.rb.prototype={ +H(){return"AVAudioSessionMode."+this.b}} +A.GY.prototype={ +H(){return"AVAudioSessionRouteSharingPolicy."+this.b}} +A.amC.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.amC&&this.a===b.a}, +gv(a){return B.d.gv(this.a)}} +A.OT.prototype={ +J(){return new A.aKY(B.f)}} +A.aKY.prototype={ +a8(){this.an() +this.a.toString}, +b1(a){this.bc(a) +this.a.toString}, +q(a){return new A.fV(new A.bSf(this),null)}, +aXG(a,b,c){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.a,h=i.e,g=h==null,f=g?j:h.a +if(f==null)f=b +s=g?j:h.b +i=s==null?i.d:s +s=g?j:h.c +r=A.cy(s,j,g?j:h.d,f,i) +i=k.c +i.toString +i=A.cG(i,B.qL) +i=i==null?j:i.gdZ().gir() +q=i==null?1:i +i=k.a +i.toString +h=b.r +h.toString +p=B.e.dV(h,i.w,1/0) +i=p*q +if(k.ajy(r,i/h,c,a))return A.a([i,!0],t.jl) +i=k.a +o=B.e.ec(i.w/i.y) +n=B.e.dO(p/k.a.y) +for(m=!1;o<=n;){l=B.e.ec(o+(n-o)/2) +i=k.a.y +if(k.ajy(r,l*q*i/h,c,a)){o=l+1 +m=!0}else n=l-1}if(!m)++n +i=k.a.y +return A.a([n*q*i,m],t.jl)}, +ajy(a,b,c,d){var s,r,q=null,p=this.a +p=p.as +if(p==null)p=B.jO +s=A.jT(q,q,c,q,a,p,B.j,q,b,B.Y,B.a0) +p=d.b +s.aBK(p) +if(!s.b.a.a.ga9w()){r=s.b.a.a +p=r.gdK(r)>d.d||s.b.b>p}else p=!0 +return!p}, +aXi(a,b,c){var s,r=null,q=this.a,p=q.d +if(p!=null)return A.bv(p,r,r,c,r,r,r,r,r,b.a8x(a),this.a.as,r,r,1,r) +else{p=q.e +p.toString +q=q.as +s=b.r +s.toString +return A.czf(p,r,r,c,r,r,r,r,b,q,r,a/s)}}, +m(){this.a.toString +this.ap()}} +A.bSf.prototype={ +$2(a,b){var s,r,q,p,o,n,m=a.a0(t.sp) +if(m==null)m=B.dm +s=this.a +r=s.a.f +if(r==null||r.a)r=m.w.dt(r) +if(r.r==null)r=r.a8x(14) +q=s.a.db +p=s.aXG(b,r,q) +o=A.f0(p[0]) +A.j2(p[1]) +s.a.toString +n=s.aXi(o,r,q) +s.a.toString +return n}, +$S:52} +A.mU.prototype={ +i(a,b){return this.a.b.i(0,b)}, +n(a,b,c){this.a.b.n(0,b,c) +return c}, +k(a){return this.a.gT1()}} +A.a_D.prototype={ +k(a){var s=this.b +return(s==null?this.c:s).gT1()}} +A.bFz.prototype={ +WP(a,b,c,d,e){var s,r,q,p,o,n=this,m=null +if(e==null)if(d==null)s=!0 +else s=!1 +else s=!1 +if(s){r=b==="*" +q=b!=="" +s=c==null +if(s&&!r&&q){s=n.a +if(s==null){s=n.b +if(s==null)s=n.c}s.toString +s=new A.ps().t1(0,s,A.GH(b)) +if(s==null)s=m +else{p=new A.mU() +p.a=s +s=p}return s}if((!q||r)&&s)o="*" +else{s=q?b:"*" +c.toString +o=A.cRm(c,s)}s=n.a +if(s==null){s=n.b +if(s==null)s=n.c}s.toString +s=new A.ps().t1(0,s,A.GH(o)) +if(s==null)s=m +else{p=new A.mU() +p.a=s +s=p}return s}s=n.bwd(b,c,d,e,m,m,m) +return s.length===0?m:B.b.ga2(s)}, +bwa(a,b,c){return this.WP(0,b,null,c,null)}, +bwc(a,b,c,d){return this.WP(0,b,null,c,d)}, +bwb(a,b,c){return this.WP(0,b,null,null,c)}, +bw9(a,b,c){return this.WP(0,b,c,null,null)}, +bwd(a,b,c,d,e,f,g){var s,r,q,p=this,o=a==="*",n=a!=="",m=b==null +if(m&&!o&&n){m=p.a +if(m==null){m=p.b +if(m==null)m=p.c}m.toString +m=t.pN.a(A.am7(m,a)) +s=A.X(m).h("O<1,mU>") +r=A.R(new A.O(m,new A.bFL(),s),!0,s.h("aa.E")) +m=A.a(r.slice(0),A.X(r)) +return A.cQN(A.cQo(m,c,d,e,g),null)}if((!n||o)&&m)q="*" +else{m=n?a:"*" +b.toString +q=A.cRm(b,m)}m=p.a +if(m==null){m=p.b +if(m==null)m=p.c}m.toString +m=t.pN.a(A.am7(m,q)) +s=A.X(m).h("O<1,mU>") +return A.cQN(A.cQo(A.R(new A.O(m,new A.bFM(),s),!0,s.h("aa.E")),c,d,e,g),null)}, +Dx(){var s=this.a +s=s==null?null:A.dm8(s) +return s==null?this.gaWx().Dx():s}, +gaWx(){var s,r=this,q=r.a +if(q!=null){s=new A.mU() +s.a=q +q=s}else{q=r.b +if(q==null)q=r.c +q.toString +q=new A.ps().t1(0,q,A.GH("html")) +if(q==null)q=null +else{s=new A.mU() +s.a=q +q=s}if(q==null){q=r.a +if(q==null){q=r.b +if(q==null)q=r.c}q.toString +q=new A.ps().t1(0,q,A.GH("*")) +if(q==null)q=null +else{s=new A.mU() +s.a=q +q=s}}q.toString}return q}} +A.bFL.prototype={ +$1(a){var s=new A.mU() +s.a=a +return s}, +$S:352} +A.bFM.prototype={ +$1(a){var s=new A.mU() +s.a=a +return s}, +$S:352} +A.cp7.prototype={ +$1(a){return B.c.p(a.a.gawT(0),this.a)}, +$S:356} +A.cp8.prototype={ +$1(a){return a.a.gqq(0)===this.a}, +$S:356} +A.bKs.prototype={ +sa9I(a){this.b=a +this.c=null}} +A.a09.prototype={ +q(a){var s,r,q=this,p=null,o=q.w!=null?q.gbaH():p +if(o==null&&!0)o=new A.b80() +s=q.y!=null?q.gbaF():p +r=A.bBY(p,p,q.c) +return new A.a6x(r,p,o,p,s,B.w,B.aW,B.eb,B.bd,B.dl,p,p,q.CW,B.C,q.cy,!1,p,p,q.fy,!1,p)}, +baI(a){return this.w.$2(a,this.e)}, +baG(a,b,c){return this.y.$3(a,this.e,b)}} +A.b80.prototype={ +$1(a){var s=null +return A.bB(s,s,B.i,s,s,s,s,s,s,s,s,s,s,s)}, +$S:873} +A.yc.prototype={ +H9(a){return new A.dc(this,t._4)}, +CD(a,b){var s=this,r=null,q=A.lN(r,r,r,!1,t.oA),p=A.cKa(new A.dI(q,A.z(q).h("dI<1>")),s.b8R(a,q,b),new A.b7V(s,a),1) +if(s.e!=null)p.a3(0,new A.kh(new A.b7W(),r,new A.b7X(s))) +return p}, +b8R(a,b,c){var s=this,r=$.cCr() +return new A.avR().bAc(s.b,s.c,b,c,r,s.r,s.w,s.f,s.x,new A.b7T(a))}, +CE(a,b){var s=this,r=null,q=A.lN(r,r,r,!1,t.oA),p=A.cKa(new A.dI(q,A.z(q).h("dI<1>")),s.b8V(a,q,b),new A.b7Y(s,a),1) +if(s.e!=null)p.a3(0,new A.kh(new A.b7Z(),r,new A.b8_(s))) +return p}, +b8V(a,b,c){var s=this,r=$.cCr() +return new A.avR().bAh(s.b,s.c,b,c,r,s.r,s.w,s.f,s.x,new A.b7U(a))}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.yc){s=b.b +if(this.b===s)s=!0 +else s=!1 +return s}return!1}, +gv(a){return A.ad(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)}, +k(a){return'CachedNetworkImageProvider("'+this.b+'", scale: 1)'}} +A.b7V.prototype={ +$0(){return new A.dz(this.aHk(),t.Ua)}, +aHk(){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.p8("Image provider: "+o.k(0)+" \n Image key: "+s.b.k(0),o,!0,B.cM,null,!1,null,null,B.c0,null,!1,!0,!0,B.dn,null,t.bi),1 +case 2:return 0 +case 1:return a.c=p,3}}}}, +$S:362} +A.b7W.prototype={ +$2(a,b){}, +$S:112} +A.b7X.prototype={ +$2(a,b){var s=this.a.e +if(s!=null)s.$1(a)}, +$S:108} +A.b7T.prototype={ +$0(){var s=$.jo.eG$ +s===$&&A.b() +return s.aa9(this.a)}, +$S:0} +A.b7Y.prototype={ +$0(){return new A.dz(this.aHl(),t.Ua)}, +aHl(){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.p8("Image provider: "+o.k(0)+" \n Image key: "+s.b.k(0),o,!0,B.cM,null,!1,null,null,B.c0,null,!1,!0,!0,B.dn,null,t.bi),1 +case 2:return 0 +case 1:return a.c=p,3}}}}, +$S:362} +A.b7Z.prototype={ +$2(a,b){}, +$S:112} +A.b8_.prototype={ +$2(a,b){var s=this.a.e +if(s!=null)s.$1(a)}, +$S:108} +A.b7U.prototype={ +$0(){var s=$.jo.eG$ +s===$&&A.b() +return s.aa9(this.a)}, +$S:0} +A.azQ.prototype={ +aUY(a,b,c,d){var s=this +b.rN(new A.btL(s),new A.btM(s,c)) +s.cy=a.rN(s.gaEX(),new A.btN(s,c))}, +bad(a){var s,r,q=this,p=q.db=!1,o=q.a +if(o.length===0)return +s=q.ch +if(s==null||a.a-q.ay.a>=s.a){s=q.ax +q.aoV(new A.kX(s.giR(s),q.as,null)) +q.ay=a +s=q.ax +q.ch=s.gC2(s) +q.ax=null +if(B.d.M(q.CW,q.z.gzg())===0?q.Q!=null:p){q.CW=0 +q.cx=null +p=q.Q +p.toString +q.z=p +if(o.length!==0)q.B_() +q.Q=null}else{r=B.d.hf(q.CW,q.z.gzg()) +if(q.z.gHG()===-1||r<=q.z.gHG())q.B_()}return}s.toString +q.cx=A.d3(new A.aU(B.d.aF(s.a-(a.a-q.ay.a))),q.gbae())}, +B_(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$B_=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(n.z.nY(),$async$B_) +case 7:n.ax=b +p=2 +s=6 +break +case 4:p=3 +i=o +m=A.ag(i) +l=A.aD(i) +n.wT(A.cJ("resolving an image frame"),m,n.at,!0,l) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:if(n.z.gzg()===1){if(n.a.length===0){s=1 +break}j=n.ax +n.aoV(new A.kX(j.giR(j),n.as,null)) +s=1 +break}n.aoW() +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$B_,r)}, +aoW(){if(this.db)return +this.db=!0 +$.cW.IF(this.gbac())}, +aoV(a){this.a0d(a);++this.CW}, +a3(a,b){var s=this +s.dx=!0 +if(s.a.length===0&&s.z!=null)s.B_() +s.agC(0,b)}, +O(a,b){var s,r=this +r.agD(0,b) +if(r.a.length===0){s=r.cx +if(s!=null)s.ao(0) +r.cx=null +r.ai3()}}, +GW(){var s=this.aOE();++this.fr +return new A.c7x(this,s)}, +ai3(){var s,r=this +if(!r.dx||r.dy||r.a.length!==0||r.fr!==0)return +r.dy=!0 +s=r.cy +if(s!=null)s.lh(null) +s=r.cy +if(s!=null)s.ao(0) +r.cy=null}} +A.btL.prototype={ +$1(a){var s=this.a +if(s.cx!=null)s.Q=a +else{s.z=a +if(s.a.length!==0)s.B_()}}, +$S:213} +A.btM.prototype={ +$2(a,b){this.a.wT(A.cJ("resolving an image codec"),a,this.b,!0,b)}, +$S:23} +A.btN.prototype={ +$2(a,b){this.a.wT(A.cJ("loading an image"),a,this.b,!0,b)}, +$S:23} +A.c7x.prototype={ +m(){this.b.m() +var s=this.a;--s.fr +s.ai3() +this.a=null}} +A.bmU.prototype={ +H(){return"ImageRenderMethodForWeb."+this.b}} +A.avR.prototype={ +bAc(a,b,c,d,e,f,g,h,i,j){return this.aol(a,b,c,new A.bmE(d),e,f,g,h,i,j)}, +bAh(a,b,c,d,e,f,g,h,i,j){return this.aol(a,b,c,new A.bmF(d),e,f,g,h,i,j)}, +aol(a,b,c,d,e,f,g,h,i,j){var s +switch(i.a){case 1:return this.vz(a,b,c,d,e,f,g,h,j) +case 0:s=this.b8P(a,c) +return A.de8(s,s.$ti.c)}}, +vz(a,b,c,d,e,f,g,h,i){return this.b8Q(a,b,c,d,e,f,g,h,i)}, +b8Q(a,a0,a1,a2,a3,a4,a5,a6,a7){var $async$vz=A.l(function(a8,a9){switch(a8){case 2:n=q +s=n.pop() +break +case 1:o=a9 +s=p}while(true)switch(s){case 0:p=4 +i=A.lN(null,null,null,!1,t.cL) +a3.EU(i,a,a,a6,!0) +h=new A.qZ(A.hz(new A.dI(i,A.z(i).h("dI<1>")),"stream",t.K),t.r2) +p=7 +g=A.z(a1).h("oP<1>") +case 10:s=12 +return A.hm(h.t(),$async$vz,r) +case 12:if(!a9){s=11 +break}m=h.gK(0) +if(m instanceof A.Qx){f=new A.pf(m.c,m.b) +e=a1.b +if(e>=4)A.C(a1.tz()) +if((e&1)!==0)a1.kL(f) +else if((e&3)===0){e=a1.Er() +f=new A.oP(f,g) +d=e.c +if(d==null)e.b=e.c=f +else{d.smo(0,f) +e.c=f}}}s=m instanceof A.Dk?13:14 +break +case 13:l=m.b +s=15 +return A.hm(l.wN(),$async$vz,r) +case 15:k=a9 +s=16 +return A.hm(a2.$1(k),$async$vz,r) +case 16:j=a9 +s=17 +q=[1,8] +return A.hm(A.aQu(j),$async$vz,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.hm(h.ao(0),$async$vz,r) +case 18:s=n.pop() +break +case 9:p=2 +s=6 +break +case 4:p=3 +b=o +A.j8(new A.bmD(a7)) +throw b +s=6 +break +case 3:s=2 +break +case 6:s=19 +return A.hm(a1.aO(0),$async$vz,r) +case 19:case 1:return A.hm(null,0,r) +case 2:return A.hm(o,1,r)}}) +var s=0,r=A.b1y($async$vz,t.hP),q,p=2,o,n=[],m,l,k,j,i,h,g,f,e,d,c,b +return A.b1I(r)}, +b8P(a,b){var s=A.aHh().a5(a) +return $.ar().Np(s,new A.bmC(b))}} +A.bmE.prototype={ +$1(a){return this.aHu(a)}, +aHu(a){var s=0,r=A.p(t.hP),q,p=this,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.i(A.DE(a),$async$$1) +case 3:q=o.$1(c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:408} +A.bmF.prototype={ +$1(a){return this.aHv(a)}, +aHv(a){var s=0,r=A.p(t.hP),q,p=this,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.i(A.DE(a),$async$$1) +case 3:q=o.$1(c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:408} +A.bmD.prototype={ +$0(){this.a.$0()}, +$S:0} +A.bmC.prototype={ +$2(a,b){this.a.B(0,new A.pf(a,b))}, +$S:98} +A.b8n.prototype={} +A.a0e.prototype={ +H(){return"CarouselPageChangedReason."+this.b}} +A.b8K.prototype={ +H(){return"CenterPageEnlargeStrategy."+this.b}} +A.b8o.prototype={} +A.a0f.prototype={ +J(){return new A.aoD(this.r,B.a6j,null,null,B.f)}} +A.aoD.prototype={ +b1(a){var s,r=this,q=r.f +q.toString +s=r.a.c +q.b=r.r=A.KO(q.c,s.c) +r.aA8() +r.bc(a)}, +a8(){var s,r,q,p=this +p.an() +p.a.toString +p.f=new A.b8B() +s=p.d.a +if((s.a.a&30)===0)s.fw(0) +s=p.f +s.toString +r=p.a +r.toString +q=s.d=0 +s.c=r.c.e?s.c:q +p.aA8() +s=p.a.c +q=p.f +q.b=p.r=A.KO(q.c,s.c)}, +a_R(){var s=this.a.c +return s.w?A.MM(s.x,new A.b8A(this)):null}, +Vy(){var s=this.e +if(s!=null){s.ao(0) +this.e=null}}, +aA8(){var s=this,r=s.a.c.w +if(r&&s.e!=null)return +s.Vy() +if(r)if(s.e==null)s.e=s.a_R()}, +aIH(a){var s=null,r=A.bB(s,a,B.i,s,s,s,s,this.a.c.a,s,s,s,s,s,s) +return new A.mu(new A.ff(new A.b8w(this),r,s,t.xU),A.a1([B.bv_,new A.dE(new A.b8x(),new A.b8y(this),t.aJ)],t.u,t.xR),B.be,!1,s)}, +aIt(a){this.a.toString +return A.eu(a,null,null,null)}, +aIC(a,b,c,d,e){var s=null +this.a.toString +return A.bNn(B.C,A.bB(s,a,B.i,s,s,s,s,b,s,s,s,s,s,e),d,s,s)}, +aIB(a,b,c,d){return this.aIC(a,b,c,d,null)}, +m(){this.aRx() +this.Vy()}, +q(a){var s,r,q,p=this +p.a.toString +s=A.um(a).axF(A.d9([B.bi,B.cv],t.F),!1,!1) +r=p.a +r.toString +q=p.f.b +r=r.c.e?null:r.w +return p.aIH(A.aAD(B.k,q,new A.b8q(p),r,null,new A.b8r(p),!1,!0,null,!1,s,B.a_))}} +A.b8A.prototype={ +$1(a){var s,r,q,p,o,n=this.a,m=n.c +if(m==null){n.Vy() +return}s=A.wp(m,t.X) +if((s==null?null:s.guA())===!1)return +r=n.w +n.w=B.a6i +m=t.gQ.a(B.b.gcW(n.f.b.f)).goA(0) +m.toString +q=B.e.aF(m)+1 +m=n.a +p=m.w +if(q>=p&&!m.c.e)q=0 +o=n.f.b +o.toString +o.Bt(q,m.c.z,B.ahW).bf(new A.b8z(n,r),t.H)}, +$S:97} +A.b8z.prototype={ +$1(a){this.a.w=this.b +return null}, +$S:518} +A.b8x.prototype={ +$0(){var s=t.S,r=A.a([],t.t),q=A.dV(s),p=A.am2() +return new A.xm(B.m,B.h_,A.am1(),B.eS,A.N(s,t.GY),r,A.N(s,t.SP),q,null,null,p,A.N(s,t.F))}, +$S:998} +A.b8y.prototype={ +$1(a){var s=this.a +a.ch=new A.b8s(s) +a.ay=new A.b8t(s) +a.cx=new A.b8u(s) +a.cy=new A.b8v(s)}, +$S:1001} +A.b8s.prototype={ +$1(a){this.a.w=B.AU}, +$S:24} +A.b8t.prototype={ +$1(a){var s=this.a +s.a.toString +s.Vy() +s.w=B.AU}, +$S:120} +A.b8u.prototype={ +$1(a){var s=this.a +s.a.toString +if(s.e==null)s.e=s.a_R()}, +$S:22} +A.b8v.prototype={ +$0(){var s=this.a +s.a.toString +if(s.e==null)s.e=s.a_R()}, +$S:0} +A.b8w.prototype={ +$1(a){this.a.a.toString +return!1}, +$S:1224} +A.b8r.prototype={ +$1(a){var s=this.a,r=s.f +A.cTU(a+r.d-r.c,s.a.w)}, +$S:12} +A.b8q.prototype={ +$2(a,b){var s=this.a,r=s.f,q=r.d,p=r.c,o=s.a,n=A.cTU(b+q-p,o.w) +r=r.b +r.toString +q=o.f.$3(a,n,b) +return A.hC(r,new A.b8p(s,b),q)}, +$S:1256} +A.b8p.prototype={ +$2(a,b){var s=this.a,r=s.a +r=r.c +s=s.aIt(s.aIB(b,r.a,0,1)) +return s}, +$S:55} +A.xm.prototype={} +A.adj.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.b8B.prototype={} +A.iY.prototype={ +gaz(a){return new A.Vl(this.a,0,0)}, +ga2(a){var s=this.a,r=s.length +return r===0?A.C(A.a0("No element")):B.c.R(s,0,new A.tz(s,r,0,176).pw())}, +gP(a){var s=this.a,r=s.length +return r===0?A.C(A.a0("No element")):B.c.b0(s,new A.a_u(s,0,r,176).pw())}, +gcW(a){var s=this.a,r=s.length +if(r===0)throw A.d(A.a0("No element")) +if(new A.tz(s,r,0,176).pw()===r)return s +throw A.d(A.a0("Too many elements"))}, +gad(a){return this.a.length===0}, +gcU(a){return this.a.length!==0}, +gA(a){var s,r,q=this.a,p=q.length +if(p===0)return 0 +s=new A.tz(q,p,0,176) +for(r=0;s.pw()>=0;)++r +return r}, +bQ(a,b){var s +if(b==="")return this.a +s=this.a +return A.dlr(s,0,s.length,b,"")}, +dE(a,b){var s,r,q,p,o,n +A.js(b,"index") +s=this.a +r=s.length +if(r!==0){q=new A.tz(s,r,0,176) +for(p=0,o=0;n=q.pw(),n>=0;o=n){if(p===b)return B.c.R(s,o,n);++p}}else p=0 +throw A.d(A.cxu(b,this,"index",null,p))}, +p(a,b){var s +if(typeof b!="string")return!1 +s=b.length +if(s===0)return!1 +if(new A.tz(b,s,0,176).pw()!==s)return!1 +s=this.a +return A.dmk(s,b,0,s.length)>=0}, +as6(a,b,c){var s,r +if(a===0||b===this.a.length)return b +s=this.a +c=new A.tz(s,s.length,b,176) +do{r=c.pw() +if(r<0)break +if(--a,a>0){b=r +continue}else{b=r +break}}while(!0) +return b}, +my(a,b){A.js(b,"count") +return this.bif(b)}, +bif(a){var s=this.as6(a,0,null),r=this.a +if(s===r.length)return B.dh +return new A.iY(B.c.b0(r,s))}, +nl(a,b){A.js(b,"count") +return this.bjk(b)}, +bjk(a){var s=this.as6(a,0,null),r=this.a +if(s===r.length)return this +return new A.iY(B.c.R(r,0,s))}, +kW(a,b){var s=this.r2(0,b).jG(0) +if(s.length===0)return B.dh +return new A.iY(s)}, +S(a,b){return new A.iY(this.a+b.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.iY&&this.a===b.a}, +gv(a){return B.c.gv(this.a)}, +k(a){return this.a}} +A.Vl.prototype={ +gK(a){var s=this,r=s.d +return r==null?s.d=B.c.R(s.a,s.b,s.c):r}, +t(){return this.R6(1,this.c)}, +R6(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.pw() +if(q<0)break;--a}p.b=s +p.c=b +p.d=null +return a===0}, +gcU(a){return this.b!==this.c}} +A.tz.prototype={ +pw(){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.Or(o)) +if(((p>=208?k.d=A.csQ(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.xE(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.csQ(r,s,p,l):l)&1)===0)return q}p=k.d=j.charCodeAt(k.d&240|15) +if(((p>=208?k.d=A.csQ(r,s,q,p):p)&1)===0)return k.c +return-1}} +A.a__.prototype={ +J(){return new A.an3(null,null,B.f)}} +A.an3.prototype={ +gUZ(){var s,r=this,q=r.d +if(q===$){s=A.bQ(null,B.ez,null,1,r.a.d?1:0,r) +r.d!==$&&A.a_() +r.d=s +q=s}return q}, +b1(a){var s,r=this +r.bc(a) +s=r.a.d +if(s!==a.d)if(s)r.gUZ().cM(0) +else r.gUZ().eI(0)}, +m(){this.gUZ().m() +this.aRq()}, +q(a){var s=null +return A.eu(A.d1J(this.a.e,B.byx,this.gUZ(),s),s,s,s)}} +A.acC.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.aoJ.prototype={ +q(a){var s=this,r=null,q=s.e?1:0,p=s.d +p=s.r?A.b2(B.alm,p,r,r,r,r,r,r,r,r,r):A.cvi(p,s.f) +return new A.m7(B.D,A.eu(A.czw(B.C,A.jF(A.o1(A.lx(r,!1,r,r,r,r,r,r,r,r,p,32,r,r,r,s.w,B.u4,r,r,r,r,r,r),new A.c_(s.c,r,r,r,r,r,r,B.fq),B.cB),B.H,B.aA,q),B.i,r),r,r,r),r)}} +A.a0i.prototype={ +J(){return new A.a0k(B.f)}} +A.a0k.prototype={ +a8(){var s=this +s.an() +s.a.c.a3(0,s.gH0(s)) +s.e=new A.EG(!0,$.ae())}, +m(){var s,r=this +r.a.c.O(0,r.gH0(r)) +s=r.e +s===$&&A.b() +s.k3$=$.ae() +s.k2$=0 +r.ap()}, +b1(a){var s,r=this,q=r.a.c +if(a.c!==q)q.a3(0,r.gH0(r)) +r.bc(a) +q=r.d +s=r.a.c +if(q!==s.ry)s.ry=q}, +CC(a){var s=0,r=A.p(t.H),q=this,p +var $async$CC=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a.c.ry +s=p&&!q.d?2:4 +break +case 2:q.d=p +p=q.c +p.toString +s=5 +return A.i(q.Td(p),$async$CC) +case 5:s=3 +break +case 4:if(q.d){p=q.c +p.toString +A.cN(p,!0).fD() +q.d=!1}case 3:return A.n(null,r)}}) +return A.o($async$CC,r)}, +q(a){var s=this.a.c,r=this.e +r===$&&A.b() +return A.cFG(A.cFF(new A.b9b(),r,t.ze),s)}, +b_5(a,b,c,d){return A.hC(b,new A.b98(this,b,d),null)}, +b1w(a,b,c){var s,r=this,q=r.a.c,p=r.e +p===$&&A.b() +s=A.cFG(A.cFF(new A.b99(),p,t.ze),q) +r.a.toString +q=r.b_5(a,b,c,s) +return q}, +Td(a){return this.beI(a)}, +beI(a){var s=0,r=A.p(t.z),q=this,p,o,n,m,l +var $async$Td=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=t.H +o=A.cKy(!0,q.gb1v(),p) +n=q.a.c.r.a.as +m=n.a +l=n.b +A.aaz(B.xM,A.a([],t.BG)) +q.a.toString +if(m>l)A.Ft(A.a([B.tP,B.tQ],t.UW)) +else if(m=n.a.a,q.a.f,p.gaq4(),s),B.m,!1,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,r,o,o,o,o,o,o,o,!1,B.ac)}, +aWY(a,b,c,d,e){var s,r,q,p=null,o=this.d +o===$&&A.b() +o=o.a?0:1 +s=A.ed(10) +r=$.ar().yz(10,0,B.bH) +q=this.e +q===$&&A.b() +return A.dn(p,A.jF(A.PH(s,A.OW(new A.m7(b,A.bB(p,A.b2(q.x>0?B.nG:B.uC,c,p,p,p,p,p,p,16,p,p),B.i,p,p,p,p,d,p,p,new A.af(e,0,e,0),p,p,p),p),r)),B.H,B.aA,o),B.m,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,new A.bVY(this,a),p,p,p,p,p,p,p,!1,B.ac)}, +aX6(a,b,c){var s=null +this.a.toString +return A.dn(s,A.bB(s,A.cvi(B.ea,a.a.f),B.i,B.D,s,s,s,c,s,s,B.u6,s,s,s),B.m,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,this.gaq4(),s,s,s,s,s,s,s,!1,B.ac)}, +aXf(a,b){this.CW.toString +return B.al}, +aXc(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=null,g=new Float64Array(16),f=new A.c5(g) +f.fO() +g[1]=Math.tan(0) +s=Math.cos(3.141592653589793) +r=Math.sin(3.141592653589793) +q=g[4] +p=g[8] +o=g[5] +n=g[9] +m=g[6] +l=g[10] +k=g[7] +j=g[11] +i=-r +g[4]=q*s+p*r +g[5]=o*s+n*r +g[6]=m*s+l*r +g[7]=k*s+j*r +g[8]=q*i+p*s +g[9]=o*i+n*s +g[10]=m*i+l*s +g[11]=k*i+j*s +f.uU(2.5132741228718345) +return A.dn(h,A.bB(h,A.x0(B.C,A.b2(B.uB,b,h,h,h,h,h,h,18,h,h),h,f,!0),B.i,B.D,h,h,h,c,h,B.CY,B.D2,h,h,h),B.m,!1,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,new A.bW4(this,a),h,h,h,h,h,h,h,!1,B.ac)}, +xG(){var s=this.r +if(s!=null)s.ao(0) +this.C(new A.bW5(this))}, +a3X(){var s=0,r=A.p(t.H),q=this,p +var $async$a3X=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.CW.toString +q.as=!1 +p=q.ch +p===$&&A.b() +p.a3(0,q.gau8()) +q.au9() +if(q.ch.a.f||q.CW.x)q.TZ() +q.CW.toString +q.y=A.d3(B.K,new A.bW7(q)) +return A.n(null,r)}}) +return A.o($async$a3X,r)}, +bbj(){this.C(new A.bWa(this))}, +aXa(){var s,r=this,q=r.ch +q===$&&A.b() +r.CW.toString +s=A.cvB(B.a76,B.a6T,B.r,B.a71) +return A.f7(new A.aA(B.kO,new A.arW(q,s,new A.bW0(r),new A.bW1(r),new A.bW2(r),null),null),1,null)}, +bee(){var s=this.e +s===$&&A.b() +this.C(new A.bWc(this,s.b.a>=s.a.a))}, +TS(){var s=0,r=A.p(t.H),q=this,p,o +var $async$TS=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.xG() +p=q.e +p===$&&A.b() +o=B.d.aD(p.b.a-15e6,1000) +p=q.ch +p===$&&A.b() +s=2 +return A.i(p.oK(A.cp(0,0,0,Math.max(o,0),0,0)),$async$TS) +case 2:A.jk(B.aW,new A.bWd(q),t.P) +return A.n(null,r)}}) +return A.o($async$TS,r)}, +TT(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$TT=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.xG() +p=q.e +p===$&&A.b() +o=B.d.aD(p.a.a,1000) +n=B.d.aD(p.b.a+15e6,1000) +p=q.ch +p===$&&A.b() +s=2 +return A.i(p.oK(A.cp(0,0,0,Math.min(n,o),0,0)),$async$TT) +case 2:A.jk(B.aW,new A.bWe(q),t.P) +return A.n(null,r)}}) +return A.o($async$TT,r)}, +TZ(){this.CW.toString +this.r=A.d3(B.fx,new A.bWg(this))}, +au9(){var s,r=this +if(r.c==null)return +r.CW.toString +s=r.ch +s===$&&A.b() +r.ax=s.a.w +r.C(new A.bWh(r))}} +A.bWj.prototype={ +$1(a){return this.a.xG()}, +$S:143} +A.bWi.prototype={ +$0(){return this.a.xG()}, +$S:0} +A.bVX.prototype={ +$0(){var s=this.a,r=s.r +if(r!=null)r.ao(0) +s.C(new A.bVW(s))}, +$S:0} +A.bVW.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!1 +s.ab()}, +$S:0} +A.bVY.prototype={ +$0(){var s,r,q=this.a +q.xG() +s=q.e +s===$&&A.b() +r=this.b +if(s.x===0){q=q.f +r.i_(q==null?0.5:q)}else{q.f=r.a.x +r.i_(0)}}, +$S:0} +A.bW4.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.a +n=o.r +if(n!=null)n.ao(0) +n=o.c +n.toString +o.CW.toString +s=2 +return A.i(A.dvQ(new A.bW3(o),n,!0,!0,t.i),$async$$0) +case 2:p=b +if(p!=null){q.b.xk(p) +o.ay=p}n=o.e +n===$&&A.b() +if(n.f)o.TZ() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bW3.prototype={ +$1(a){var s=this.a +s.CW.toString +s=s.e +s===$&&A.b() +return new A.Y9(B.vr,s.y,null)}, +$S:1335} +A.bW5.prototype={ +$0(){var s=this.a,r=s.d +r===$&&A.b() +r.a=!1 +r.ab() +s.TZ()}, +$S:0} +A.bW7.prototype={ +$0(){var s=this.a +s.C(new A.bW6(s))}, +$S:0} +A.bW6.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!1 +s.ab()}, +$S:0} +A.bWa.prototype={ +$0(){var s=this.a,r=s.d +r===$&&A.b() +r.a=!0 +r.ab() +r=s.CW +r.ry=!r.ry +r.ab() +s.x=A.d3(B.aA,new A.bW9(s))}, +$S:0} +A.bW9.prototype={ +$0(){var s=this.a +s.C(new A.bW8(s))}, +$S:0} +A.bW8.prototype={ +$0(){this.a.xG()}, +$S:0} +A.bW0.prototype={ +$0(){var s=this.a +s.C(new A.bW_(s)) +s=s.r +if(s!=null)s.ao(0)}, +$S:13} +A.bW_.prototype={ +$0(){this.a.z=!0}, +$S:0} +A.bW2.prototype={ +$0(){var s=this.a.r +if(s!=null)s.ao(0)}, +$S:13} +A.bW1.prototype={ +$0(){var s=this.a +s.C(new A.bVZ(s)) +s.TZ()}, +$S:13} +A.bVZ.prototype={ +$0(){this.a.z=!1}, +$S:0} +A.bWc.prototype={ +$0(){var s=this.a,r=s.ch +r===$&&A.b() +if(r.a.f){r=s.d +r===$&&A.b() +r.a=!1 +r.ab() +r=s.r +if(r!=null)r.ao(0) +s.ch.f2(0)}else{s.xG() +r=s.ch +if(!r.a.ax)r.hy(0).bf(new A.bWb(s),t.P) +else{if(this.b)r.oK(B.w) +s.ch.fM(0)}}}, +$S:0} +A.bWb.prototype={ +$1(a){var s=this.a.ch +s===$&&A.b() +s.fM(0)}, +$S:33} +A.bWd.prototype={ +$0(){var s=this.a,r=s.ch +r===$&&A.b() +r.xk(s.ay)}, +$S:13} +A.bWe.prototype={ +$0(){var s=this.a,r=s.ch +r===$&&A.b() +r.xk(s.ay)}, +$S:13} +A.bWg.prototype={ +$0(){var s=this.a +s.C(new A.bWf(s))}, +$S:0} +A.bWf.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.bWh.prototype={ +$0(){var s=this.a,r=s.ch +r===$&&A.b() +r=r.a +s.e=r +s.Q=r.b}, +$S:0} +A.Y9.prototype={ +q(a){var s=this.c,r=A.X(s).h("O<1,I3>") +return A.cvW(A.R(new A.O(s,new A.c9K(this,a,A.kP(a).gkf()),r),!0,r.h("aa.E")),null,null)}} +A.c9K.prototype={ +$1(a){var s=null,r=A.a([],t.p) +if(a===this.a.d)r.push(A.b2(B.cd,this.c,s,s,s,s,s,s,20,s,s)) +r.push(A.bv(B.e.k(a),s,s,s,s,s,s,s,s,s,s,s,s,s,s)) +return A.d3F(A.eq(r,B.t,s,B.cu,B.u,s,s,B.x),!1,new A.c9J(this.b,a))}, +$S:1336} +A.c9J.prototype={ +$0(){A.cN(this.a,!1).dB(this.b)}, +$S:0} +A.akO.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.arW.prototype={ +q(a){var s=this +return A.cNG(s.c,5,s.d,!0,6,s.f,s.e,s.r)}} +A.amN.prototype={ +q(a){switch(A.G(a).w.a){case 0:case 1:return B.Re +case 4:case 5:case 3:return B.b4o +case 2:return B.agC +default:return B.Re}}} +A.a5p.prototype={ +J(){return new A.afR(null,null,B.f)}} +A.afR.prototype={ +a8(){this.an() +var s=this.c +s.toString +this.d=A.byY(s,!1,t.ze)}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.e +f===$&&A.b() +if(f.z!=null){h.cx.toString +return B.AV}f=h.d +f===$&&A.b() +f=f.a +s=t.p +r=A.a([],s) +if(h.ax)r.push(B.kr) +else r.push(h.b9q()) +q=h.d.a?0:1 +p=A.a([h.b9u()],s) +h.cx.toString +p.push(h.b9s()) +r.push(A.mo(g,new A.iX(!0,!0,!0,!0,B.L,!1,A.jF(A.eq(p,B.t,g,B.o,B.u,g,g,B.x),B.H,B.dM,q),g),g,g,g,0,0,g)) +q=A.a([],s) +if(h.y){p=h.d.a?57.6:0 +h.cx.toString +null.toString +q.push(A.uP(h.b9v(a,null),new A.j(0,p),!0))}A.G(a).p3.as.toString +p=h.d.a?0:1 +o=h.cx.ry +n=o?10:0 +m=!o?10:0 +l=A.a([],s) +h.cx.toString +k=h.e +j=A.alX(k.b) +k=A.alX(k.a) +l.push(A.EZ(g,g,B.aG,g,g,!0,g,A.cy(A.a([A.cy(g,g,g,A.dH(g,g,A.Y(191,255,255,255),g,g,g,g,g,g,g,g,14,g,g,B.T,g,g,!0,g,g,g,g,g,g,g,g),"/ "+k)],t.VO),g,g,B.boH,j+" "),B.ah,g,g,B.Y,B.a0)) +h.cx.toString +k=h.CW +k===$&&A.b() +l.push(h.b9r(k)) +l.push(B.hf) +k=h.cx +k.toString +j=h.d.a?0:1 +k=k.ry +i=k?15:0 +l.push(A.dn(g,A.jF(A.bB(g,A.eu(A.b2(k?B.DJ:B.DI,B.r,g,g,g,g,g,g,g,g,g),g,g,g),B.i,g,g,g,g,72+i,g,B.kO,B.cp,g,g,g),B.H,B.aA,j),B.m,!1,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,h.gb9w(),g,g,g,g,g,g,g,!1,B.ac)) +l=A.eq(l,B.t,g,B.d7,B.u,g,g,B.x) +k=h.cx.ry?15:0 +k=A.a([new A.iO(1,B.c1,l,g),new A.ba(g,k,g,g)],s) +h.cx.toString +k.push(A.f7(A.bB(g,A.eq(A.a([h.b9t()],s),B.t,g,B.o,B.u,g,g,B.x),B.i,g,g,g,g,g,g,g,B.aic,g,g,g),1,g)) +q.push(A.jF(A.bB(g,new A.iX(!0,!1,!0,o,B.L,!1,A.cS(k,B.t,g,B.cu,B.Z,g,g,B.x),g),B.i,g,g,g,g,72+n,g,g,new A.af(20,0,0,m),g,g,g),B.H,B.aA,p)) +r.push(A.cS(q,B.t,g,B.fa,B.u,g,g,B.x)) +return A.ip(A.dn(g,A.b34(f,new A.d4(B.ar,g,B.am,B.k,r,g)),B.m,!1,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,new A.c57(h),g,g,g,g,g,g,g,!1,B.ac),B.bt,g,g,g,g,new A.c58(h))}, +m(){this.aox() +this.aTz()}, +aox(){var s=this,r=s.CW +r===$&&A.b() +if(!r.ch)r.vi(0,s.gaoz()) +r=s.r +if(r!=null)r.ao(0) +r=s.w +if(r!=null)r.ao(0) +r=s.z +if(r!=null)r.ao(0)}, +c5(){var s=this,r=s.cx,q=s.c.a0(t.Lt) +q.toString +q=s.cx=q.f +s.CW=q.r +if(r!==q){s.aox() +s.a4n()}s.dH()}, +b9s(){var s,r,q=this,p=null +q.cx.toString +s=A.a([new A.KG(new A.c4P(q),B.uB,"Playback speed")],t.NF) +q.cx.toString +r=q.d +r===$&&A.b() +r=r.a?0:1 +return A.jF(A.lx(p,!1,p,p,p,p,p,p,p,p,B.azq,p,p,p,p,new A.c4Q(q,s),p,p,p,p,p,p,p),B.H,B.dM,r)}, +b9v(a,b){var s,r,q,p,o=this,n=null +if(!o.y)return B.al +s=o.x +r=b.aev(s===$?o.x=B.w:s) +if(r.gad(r))return B.al +o.cx.toString +q=A.ed(10) +p=r.ga2(r) +return new A.aA(new A.af(5,5,5,5),A.bB(n,A.bv(p.gce(p).k(0),n,n,n,n,n,n,n,n,B.xZ,B.at,n,n,n,n),B.i,n,n,new A.c_(B.t3,n,n,q,n,n,n,B.U),n,n,n,n,B.ee,n,n,n),n)}, +b9r(a){var s,r=null,q=this.d +q===$&&A.b() +q=q.a?0:1 +s=this.e +s===$&&A.b() +return A.dn(r,A.jF(A.p3(A.bB(r,A.b2(s.x>0?B.nG:B.uC,B.r,r,r,r,r,r,r,r,r,r),B.i,r,r,r,r,72,r,r,B.aiG,r,r,r),B.k,r),B.H,B.aA,q),B.m,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,new A.c4N(this,a),r,r,r,r,r,r,r,!1,B.ac)}, +b9q(){var s,r,q=this,p=null,o=q.e +o===$&&A.b() +q.a.toString +if(!q.Q){s=q.d +s===$&&A.b() +s=!s.a +r=s}else r=!1 +s=q.CW +s===$&&A.b() +return A.dn(p,A.cvA(B.aC,B.r,o.b.a>=o.a.a,s.a.f,q.gb9y(),r),B.m,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,new A.c4M(q),p,p,p,p,p,p,p,!1,B.ac)}, +SF(){var s=0,r=A.p(t.H),q=this,p,o +var $async$SF=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.r +if(o!=null)o.ao(0) +o=q.c +o.toString +q.cx.toString +s=2 +return A.i(A.b2j(new A.c51(q),o,!0,!0,null,!0,!1,t.i),$async$SF) +case 2:p=b +if(p!=null){o=q.CW +o===$&&A.b() +o.xk(p)}o=q.e +o===$&&A.b() +if(o.f)q.Kt() +return A.n(null,r)}}) +return A.o($async$SF,r)}, +b9u(){this.cx.toString +return B.al}, +EI(){var s=this,r=s.r +if(r!=null)r.ao(0) +s.Kt() +s.C(new A.c4W(s))}, +a4n(){var s=0,r=A.p(t.H),q=this,p +var $async$a4n=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.cx.toString +q.y=!1 +p=q.CW +p===$&&A.b() +p.a3(0,q.gaoz()) +q.aoA() +if(q.CW.a.f||q.cx.x)q.Kt() +q.cx.toString +q.w=A.d3(B.K,new A.c4Y(q)) +return A.n(null,r)}}) +return A.o($async$a4n,r)}, +b9x(){this.C(new A.c50(this))}, +aoy(){var s=this.e +s===$&&A.b() +this.C(new A.c53(this,s.b.a>=s.a.a))}, +Kt(){this.cx.toString +this.r=A.d3(B.fx,new A.c55(this))}, +aoA(){var s,r=this +if(r.c==null)return +r.cx.toString +s=r.CW +s===$&&A.b() +r.ax=s.a.w +r.C(new A.c56(r))}, +b9t(){var s,r,q,p,o,n=this,m=n.CW +m===$&&A.b() +n.cx.toString +s=n.c +s.toString +s=A.G(s) +r=n.c +r.toString +r=A.G(r) +q=n.c +q.toString +q=A.G(q).ay.CW +p=B.e.aF(127.5) +q=A.Y(p,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255) +o=n.c +o.toString +o=A.G(o).CW.a +s=A.cvB(A.Y(p,o>>>16&255,o>>>8&255,o&255),q,r.ay.f,s.ay.f) +return A.f7(A.cJP(m,s,new A.c4T(n),new A.c4U(n),new A.c4V(n)),1,null)}} +A.c58.prototype={ +$1(a){this.a.EI()}, +$S:143} +A.c57.prototype={ +$0(){return this.a.EI()}, +$S:0} +A.c4P.prototype={ +$0(){var s=0,r=A.p(t.P),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.c +o.toString +A.cN(o,!1).dB(null) +p.SF() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.c4Q.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.r +if(o!=null)o.ao(0) +p.cx.toString +o=p.c +o.toString +s=2 +return A.i(A.b2j(new A.c4O(p,q.b),o,!0,!0,null,!0,!1,t.gF),$async$$0) +case 2:o=p.e +o===$&&A.b() +if(o.f)p.Kt() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c4O.prototype={ +$1(a){this.a.cx.toString +return new A.Ep(this.b,null,null)}, +$S:469} +A.c4N.prototype={ +$0(){var s,r,q=this.a +q.EI() +s=q.e +s===$&&A.b() +r=this.b +if(s.x===0){q=q.f +r.i_(q==null?0.5:q)}else{q.f=r.a.x +r.i_(0)}}, +$S:0} +A.c4M.prototype={ +$0(){var s=this.a,r=s.e +r===$&&A.b() +if(r.f)if(s.as)s.C(new A.c4K(s)) +else s.EI() +else{s.aoy() +s.C(new A.c4L(s))}}, +$S:0} +A.c4K.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.c4L.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.c51.prototype={ +$1(a){var s=this.a +s.cx.toString +s=s.e +s===$&&A.b() +return new A.L3(B.vr,s.y,null)}, +$S:474} +A.c4W.prototype={ +$0(){var s=this.a,r=s.d +r===$&&A.b() +r.a=!1 +r.ab() +s.as=!0}, +$S:0} +A.c4Y.prototype={ +$0(){var s=this.a +s.C(new A.c4X(s))}, +$S:0} +A.c4X.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!1 +s.ab()}, +$S:0} +A.c50.prototype={ +$0(){var s=this.a,r=s.d +r===$&&A.b() +r.a=!0 +r.ab() +r=s.cx +r.ry=!r.ry +r.ab() +s.z=A.d3(B.aA,new A.c5_(s))}, +$S:0} +A.c5_.prototype={ +$0(){var s=this.a +s.C(new A.c4Z(s))}, +$S:0} +A.c4Z.prototype={ +$0(){this.a.EI()}, +$S:0} +A.c53.prototype={ +$0(){var s=this.a,r=s.CW +r===$&&A.b() +if(r.a.f){r=s.d +r===$&&A.b() +r.a=!1 +r.ab() +r=s.r +if(r!=null)r.ao(0) +s.CW.f2(0)}else{s.EI() +r=s.CW +if(!r.a.ax)r.hy(0).bf(new A.c52(s),t.P) +else{if(this.b)r.oK(B.w) +s.CW.fM(0)}}}, +$S:0} +A.c52.prototype={ +$1(a){var s=this.a.CW +s===$&&A.b() +s.fM(0)}, +$S:33} +A.c55.prototype={ +$0(){var s=this.a +s.C(new A.c54(s))}, +$S:0} +A.c54.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.c56.prototype={ +$0(){var s=this.a,r=s.CW +r===$&&A.b() +r=r.a +s.e=r +s.x=r.b}, +$S:0} +A.c4U.prototype={ +$0(){var s=this.a +s.C(new A.c4R(s)) +s=s.r +if(s!=null)s.ao(0)}, +$S:13} +A.c4R.prototype={ +$0(){this.a.Q=!0}, +$S:0} +A.c4V.prototype={ +$0(){var s=this.a.r +if(s!=null)s.ao(0)}, +$S:13} +A.c4T.prototype={ +$0(){var s=this.a +s.C(new A.c4S(s)) +s.Kt()}, +$S:13} +A.c4S.prototype={ +$0(){this.a.Q=!1}, +$S:0} +A.al5.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.a5q.prototype={ +J(){return new A.afS(null,null,B.f)}} +A.afS.prototype={ +a8(){this.an() +var s=this.c +s.toString +this.d=A.byY(s,!1,t.ze)}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.e +f===$&&A.b() +if(f.z!=null){h.cx.toString +return B.AV}f=h.d +f===$&&A.b() +f=f.a +s=t.p +r=A.a([],s) +if(h.ax)r.push(B.kr) +else r.push(h.b9z()) +q=A.a([],s) +if(h.y){p=h.d.a?57.6:0 +h.cx.toString +null.toString +q.push(A.uP(h.b9C(a,null),new A.j(0,p),!0))}A.G(a).p3.as.toString +p=h.d.a?0:1 +o=h.cx.ry +n=o?20:0 +m=o?10:15 +l=h.CW +l===$&&A.b() +l=A.a([A.dn(g,A.bB(g,A.cvi(B.r,l.a.f),B.i,B.D,g,g,g,72,g,B.aiI,B.ni,g,g,g),B.m,!1,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,h.gaoC(),g,g,g,g,g,g,g,!1,B.ac),h.b9A(l)],s) +h.cx.toString +k=h.e +l.push(A.bv(A.alX(k.b)+" / "+A.alX(k.a),g,g,g,g,g,g,g,g,B.bre,g,g,g,g,g)) +l.push(B.hf) +h.cx.toString +l.push(h.aWZ(B.uz)) +k=h.cx +k.toString +j=h.d.a?0:1 +k=k.ry +i=k?15:0 +l.push(A.dn(g,A.jF(A.bB(g,A.eu(A.b2(k?B.DJ:B.DI,B.r,g,g,g,g,g,g,g,g,g),g,g,g),B.i,g,g,g,g,72+i,g,B.kO,B.cp,g,g,g),B.H,B.aA,j),B.m,!1,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,h.gb9D(),g,g,g,g,g,g,g,!1,B.ac)) +l=A.a([new A.iO(1,B.c1,A.eq(l,B.t,g,B.o,B.u,g,g,B.x),g)],s) +k=h.cx +k=k.ry?5:0 +l.push(A.f7(A.bB(g,A.eq(A.a([h.b9B()],s),B.t,g,B.o,B.u,g,g,B.x),B.i,g,g,g,g,g,g,g,new A.af(20,0,20,k),g,g,g),1,g)) +q.push(A.jF(A.bB(g,new A.iX(!0,!0,!0,o,B.L,!1,A.cS(l,B.t,g,B.cu,B.Z,g,g,B.mc),g),B.i,g,g,g,g,72+n,g,g,new A.af(0,0,0,m),g,g,g),B.H,B.aA,p)) +r.push(A.cS(q,B.t,g,B.fa,B.u,g,g,B.x)) +return A.ip(A.dn(g,A.b34(f,new A.d4(B.ar,g,B.am,B.k,r,g)),B.m,!1,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,new A.c5x(h),g,g,g,g,g,g,g,!1,B.ac),B.bt,g,g,g,g,new A.c5y(h))}, +m(){this.aoB() +this.aTA()}, +aoB(){var s=this,r=s.CW +r===$&&A.b() +if(!r.ch)r.vi(0,s.gaoE()) +r=s.r +if(r!=null)r.ao(0) +r=s.w +if(r!=null)r.ao(0) +r=s.z +if(r!=null)r.ao(0)}, +c5(){var s=this,r=s.cx,q=s.c.a0(t.Lt) +q.toString +q=s.cx=q.f +s.CW=q.r +if(r!==q){s.aoB() +s.a4o()}s.dH()}, +aWZ(a){var s,r,q=this,p=null +q.cx.toString +s=A.a([new A.KG(new A.c5e(q),B.uB,"Playback speed")],t.NF) +q.cx.toString +r=q.d +r===$&&A.b() +r=r.a?0:1 +return A.jF(A.lx(p,!1,p,p,p,p,p,p,p,p,A.b2(a,B.r,p,p,p,p,p,p,p,p,p),p,p,p,p,new A.c5f(q,s),B.L,p,p,p,p,p,p),B.H,B.dM,r)}, +b9C(a,b){var s,r,q,p,o=this,n=null +if(!o.y)return B.al +s=o.x +r=b.aev(s===$?o.x=B.w:s) +if(r.gad(r))return B.al +o.cx.toString +q=A.ed(10) +p=r.ga2(r) +return new A.aA(new A.af(5,5,5,5),A.bB(n,A.bv(p.gce(p).k(0),n,n,n,n,n,n,n,n,B.xZ,B.at,n,n,n,n),B.i,n,n,new A.c_(B.t3,n,n,q,n,n,n,B.U),n,n,n,n,B.ee,n,n,n),n)}, +b9z(){var s,r,q=this,p=null,o=q.e +o===$&&A.b() +q.a.toString +if(!q.Q){s=q.d +s===$&&A.b() +s=!s.a +r=s}else r=!1 +s=q.CW +s===$&&A.b() +return A.dn(p,A.cvA(B.aC,B.r,o.b.a>=o.a.a,s.a.f,q.gaoC(),r),B.m,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,new A.c5b(q),p,p,p,p,p,p,p,!1,B.ac)}, +SZ(){var s=0,r=A.p(t.H),q=this,p,o +var $async$SZ=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.r +if(o!=null)o.ao(0) +o=q.c +o.toString +q.cx.toString +s=2 +return A.i(A.b2j(new A.c5r(q),o,!0,!0,null,!0,!1,t.i),$async$SZ) +case 2:p=b +if(p!=null){o=q.CW +o===$&&A.b() +o.xk(p)}o=q.e +o===$&&A.b() +if(o.f)q.Ku() +return A.n(null,r)}}) +return A.o($async$SZ,r)}, +b9A(a){var s,r=null,q=this.d +q===$&&A.b() +q=q.a?0:1 +s=this.e +s===$&&A.b() +return A.dn(r,A.jF(A.p3(A.bB(r,A.b2(s.x>0?B.nG:B.uC,B.r,r,r,r,r,r,r,r,r,r),B.i,r,r,r,r,72,r,r,B.aib,r,r,r),B.k,r),B.H,B.aA,q),B.m,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,new A.c5c(this,a),r,r,r,r,r,r,r,!1,B.ac)}, +EJ(){var s=this,r=s.r +if(r!=null)r.ao(0) +s.Ku() +s.C(new A.c5l(s))}, +a4o(){var s=0,r=A.p(t.H),q=this,p +var $async$a4o=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.cx.toString +q.y=!1 +p=q.CW +p===$&&A.b() +p.a3(0,q.gaoE()) +q.aoF() +if(q.CW.a.f||q.cx.x)q.Ku() +q.cx.toString +q.w=A.d3(B.K,new A.c5n(q)) +return A.n(null,r)}}) +return A.o($async$a4o,r)}, +b9E(){var s,r=this +r.C(new A.c5p(r)) +s=r.cx +s.ry=!s.ry +s.ab() +r.z=A.d3(B.aA,new A.c5q(r))}, +aoD(){var s=this,r=s.CW +r===$&&A.b() +if(r.a.f){s.C(new A.c5s(s)) +r=s.r +if(r!=null)r.ao(0) +s.CW.f2(0)}else{s.EJ() +r=s.CW +if(!r.a.ax)r.hy(0).bf(new A.c5t(s),t.P) +else r.fM(0)}}, +Ku(){this.cx.toString +this.r=A.d3(B.fx,new A.c5v(this))}, +aoF(){var s,r=this +if(r.c==null)return +r.cx.toString +s=r.CW +s===$&&A.b() +r.ax=s.a.w +r.C(new A.c5w(r))}, +b9B(){var s,r,q,p,o,n=this,m=n.CW +m===$&&A.b() +n.cx.toString +s=n.c +s.toString +s=A.G(s) +r=n.c +r.toString +r=A.G(r) +q=n.c +q.toString +q=A.G(q).ay.CW +p=B.e.aF(127.5) +q=A.Y(p,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255) +o=n.c +o.toString +o=A.G(o).CW.a +s=A.cvB(A.Y(p,o>>>16&255,o>>>8&255,o&255),q,r.ay.f,s.ay.f) +return A.f7(A.cJP(m,s,new A.c5i(n),new A.c5j(n),new A.c5k(n)),1,null)}} +A.c5y.prototype={ +$1(a){this.a.EJ()}, +$S:143} +A.c5x.prototype={ +$0(){return this.a.EJ()}, +$S:0} +A.c5e.prototype={ +$0(){var s=0,r=A.p(t.P),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.c +o.toString +A.cN(o,!1).dB(null) +p.SZ() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.c5f.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.r +if(o!=null)o.ao(0) +p.cx.toString +o=p.c +o.toString +s=2 +return A.i(A.b2j(new A.c5d(p,q.b),o,!0,!0,null,!0,!1,t.gF),$async$$0) +case 2:o=p.e +o===$&&A.b() +if(o.f)p.Ku() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c5d.prototype={ +$1(a){this.a.cx.toString +return new A.Ep(this.b,null,null)}, +$S:469} +A.c5b.prototype={ +$0(){var s=this.a,r=s.e +r===$&&A.b() +if(r.f)if(s.as)s.C(new A.c59(s)) +else s.EJ() +else{s.aoD() +s.C(new A.c5a(s))}}, +$S:0} +A.c59.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.c5a.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.c5r.prototype={ +$1(a){var s=this.a +s.cx.toString +s=s.e +s===$&&A.b() +return new A.L3(B.vr,s.y,null)}, +$S:474} +A.c5c.prototype={ +$0(){var s,r,q=this.a +q.EJ() +s=q.e +s===$&&A.b() +r=this.b +if(s.x===0){q=q.f +r.i_(q==null?0.5:q)}else{q.f=r.a.x +r.i_(0)}}, +$S:0} +A.c5l.prototype={ +$0(){var s=this.a,r=s.d +r===$&&A.b() +r.a=!1 +r.ab() +s.as=!0}, +$S:0} +A.c5n.prototype={ +$0(){var s=this.a +s.C(new A.c5m(s))}, +$S:0} +A.c5m.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!1 +s.ab()}, +$S:0} +A.c5p.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.c5q.prototype={ +$0(){var s=this.a +s.C(new A.c5o(s))}, +$S:0} +A.c5o.prototype={ +$0(){this.a.EJ()}, +$S:0} +A.c5s.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!1 +s.ab()}, +$S:0} +A.c5t.prototype={ +$1(a){var s=this.a.CW +s===$&&A.b() +s.fM(0)}, +$S:33} +A.c5v.prototype={ +$0(){var s=this.a +s.C(new A.c5u(s))}, +$S:0} +A.c5u.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.a=!0 +s.ab()}, +$S:0} +A.c5w.prototype={ +$0(){var s=this.a,r=s.CW +r===$&&A.b() +r=r.a +s.e=r +s.x=r.b}, +$S:0} +A.c5j.prototype={ +$0(){var s=this.a +s.C(new A.c5g(s)) +s=s.r +if(s!=null)s.ao(0)}, +$S:13} +A.c5g.prototype={ +$0(){this.a.Q=!0}, +$S:0} +A.c5k.prototype={ +$0(){var s=this.a.r +if(s!=null)s.ao(0)}, +$S:13} +A.c5i.prototype={ +$0(){var s=this.a +s.C(new A.c5h(s)) +s.Ku()}, +$S:13} +A.c5h.prototype={ +$0(){this.a.Q=!1}, +$S:0} +A.al6.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.aza.prototype={ +q(a){var s=this +return A.cNG(s.d,10,s.e,!0,6,s.r,s.f,s.w)}} +A.Ep.prototype={ +J(){return new A.aSF(B.f)}} +A.aSF.prototype={ +q(a){var s=null,r=A.K4(s,new A.c8J(this),this.a.c.length,s,s,B.v,!0) +return new A.iX(!0,!0,!0,!0,B.L,!1,A.cS(A.a([r,B.bfv,A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.ayO,s,s,s,s,s,new A.c8K(a),!1,s,s,s,s,s,A.bv("Cancel",s,s,s,s,s,s,s,s,s,s,s,s,s,s),s,s,s)],t.p),B.t,s,B.o,B.Z,s,s,B.x),s)}} +A.c8J.prototype={ +$2(a,b){var s=null,r=this.a.a.c[b],q=r.a,p=A.b2(r.b,s,s,s,s,s,s,s,s,s,s) +r=A.bv(r.c,s,s,s,s,s,s,s,s,s,s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,p,s,s,s,s,s,q,!1,s,s,s,s,s,r,s,s,s)}, +$S:277} +A.c8K.prototype={ +$0(){A.cN(this.a,!1).dB(null) +return null}, +$S:0} +A.L3.prototype={ +q(a){return A.K4(null,new A.bxM(this,A.G(a).fx),8,null,B.bkA,B.v,!0)}} +A.bxM.prototype={ +$2(a,b){var s=null,r=this.a,q=r.c[b],p=A.a([],t.p) +r=q===r.d +if(r)p.push(A.b2(B.cd,this.b,s,s,s,s,s,s,20,s,s)) +else p.push(A.bB(s,s,B.i,s,s,s,s,s,s,s,s,s,s,20)) +p.push(B.bmz) +p.push(A.bv(B.e.k(q),s,s,s,s,s,s,s,s,s,s,s,s,s,s)) +return A.aX(!1,s,!0,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,new A.bxL(a,q),r,s,s,s,s,s,A.eq(p,B.t,s,B.o,B.u,s,s,B.x),s,s,s)}, +$S:277} +A.bxL.prototype={ +$0(){A.cN(this.a,!1).dB(this.b)}, +$S:0} +A.KG.prototype={ +k(a){return"OptionItem(onTap: "+A.r(this.a)+", iconData: "+this.b.k(0)+", title: "+this.c+", subtitle: null)"}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.KG&&J.q(b.a,s.a)&&b.b.l(0,s.b)&&b.c===s.c&&!0}, +gv(a){return(J.ab(this.a)^this.b.gv(0)^B.c.gv(this.c)^B.aAF.gv(null))>>>0}} +A.EG.prototype={} +A.TA.prototype={ +q(a){var s=a.a0(t.Lt) +s.toString +return new A.fV(new A.bxR(new A.bxQ(),new A.bxO(new A.bxN()),s.f),null)}} +A.bxQ.prototype={ +$1(a){var s=A.bC(a,null,t.l).w.a,r=s.a,q=s.b +return r>q?r/q:q/r}, +$S:1422} +A.bxN.prototype={ +$2(a,b){var s +if(b.at)s=B.a0s +else s=B.al +return s}, +$S:1432} +A.bxO.prototype={ +$2(a,b){var s,r=null,q=A.a([],t.p),p=a.dy +if(p!=null)q.push(p) +p=a.r +s=J.cEv(p.a) +q.push(A.cJ4(B.L,A.eu(new A.tu(s,new A.abX(p,r),r),r,r,r),2.5,0.8,!1,!1,r)) +if(A.G(b).w!==B.aM)q.push(new A.a0Z(new A.bxP(),r,r,t.Sh)) +p=this.a +if(!a.ry)q.push(p.$2(b,a)) +else q.push(new A.iX(!0,!0,!0,!1,B.L,!1,p.$2(b,a),r)) +return new A.d4(B.ar,r,B.am,B.k,q,r)}, +$S:1433} +A.bxP.prototype={ +$3(a,b,c){var s=b.a +return A.cNJ(A.jF(B.ah3,B.H,B.dM,s?0:0.8),!1,!1,!1,!s)}, +$C:"$3", +$R:3, +$S:1441} +A.bxR.prototype={ +$2(a,b){var s=null +return A.eu(new A.ba(b.b,b.d,new A.tu(this.a.$1(a),this.b.$2(this.c,a),s),s),s,s,s)}, +$S:1442} +A.ac_.prototype={ +J(){return new A.akc(B.f)}} +A.akc.prototype={ +CC(a){if(this.c==null)return +this.C(new A.cmX())}, +a8(){var s=this +s.an() +s.a.c.a3(0,s.gH0(s))}, +fS(){var s=this,r=s.a.c +if(!r.ch)r.vi(0,s.gH0(s)) +s.jO()}, +arw(a){var s=this.a.c,r=this.c +r.toString +s.oK(A.cLv(r,s.a.a,a))}, +q(a){var s,r,q,p,o=this,n=null +a.a0(t.Lt).toString +s=o.a +r=s.c.a +q=s.d +p=s.w +s=s.x +s=A.dn(n,A.eu(new A.aFl(o.e,r,q,p,s,!0,n),n,n,n),B.m,!1,n,n,n,n,new A.cmT(o),new A.cmU(o),new A.cmV(o),n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,new A.cmW(o),n,n,n,n,n,!1,B.ac) +return s}} +A.cmX.prototype={ +$0(){}, +$S:0} +A.cmU.prototype={ +$1(a){var s=this.a,r=s.a.c,q=r.a +if(!q.ax)return +q=q.f +s.d=q +if(q)r.f2(0) +s.a.e.$0()}, +$S:24} +A.cmV.prototype={ +$1(a){var s=this.a +if(!s.a.c.a.ax)return +s.e=a.d +s.CC(0) +s.a.r.$0()}, +$S:15} +A.cmT.prototype={ +$1(a){var s,r=this.a +if(r.d)r.a.c.fM(0) +s=r.e +if(s!=null){r.arw(s) +r.e=null}r.a.f.$0()}, +$S:22} +A.cmW.prototype={ +$1(a){var s=this.a +if(!s.a.c.a.ax)return +s.arw(a.a)}, +$S:27} +A.aFl.prototype={ +q(a){var s,r,q=this,p=null,o=t.l,n=A.bC(a,p,o).w +o=A.bC(a,p,o).w +s=q.d +r=q.c +r=r!=null?A.cLv(a,s.a,r):p +return A.bB(p,A.ih(p,p,p,new A.aTR(s,q.e,q.f,q.r,!0,r,p),B.A),B.i,B.D,p,p,p,n.a.b,p,p,p,p,p,o.a.a)}} +A.aTR.prototype={ +hC(a){return!0}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=1000,g=i.d,f=g/2,e=b.b/2-f,d=b.a +g=e+g +s=i.c +a.dh(A.jq(A.lG(new A.j(0,e),new A.j(d,g)),B.dA),s.d) +r=i.b +if(!r.ax)return +q=i.r +q=q!=null?B.d.aD(q.a,h):B.d.aD(r.b.a,h) +p=B.d.aD(r.a.a,h) +o=q/p +n=o>1?d:o*d +for(r=r.e,q=r.length,m=s.b,l=0;l").a1(s.h("e7.V")).h("aY<1,2>")))}, +L(a,b){b.aE(0,new A.b89(this))}, +p8(a,b,c){var s=this.c +return s.p8(s,b,c)}, +V(a){this.c.V(0)}, +aB(a,b){var s=this +if(!s.Sr(b))return!1 +return s.c.aB(0,s.a.$1(s.$ti.h("e7.K").a(b)))}, +gep(a){var s=this.c +return s.gep(s).fK(0,new A.b8a(this),this.$ti.h("aY"))}, +aE(a,b){this.c.aE(0,new A.b8b(this,b))}, +gad(a){return this.c.a===0}, +gcU(a){return this.c.a!==0}, +gek(a){var s=this.c.gbm(0) +return A.nb(s,new A.b8c(this),A.z(s).h("B.E"),this.$ti.h("e7.K"))}, +gA(a){return this.c.a}, +qv(a,b,c,d){var s=this.c +return s.qv(s,new A.b8d(this,b,c,d),c,d)}, +cP(a,b,c){return this.c.cP(0,this.a.$1(b),new A.b8e(this,b,c)).b}, +F(a,b){var s,r=this +if(!r.Sr(b))return null +s=r.c.F(0,r.a.$1(r.$ti.h("e7.K").a(b))) +return s==null?null:s.b}, +gbm(a){var s=this.c.gbm(0) +return A.nb(s,new A.b8f(this),A.z(s).h("B.E"),this.$ti.h("e7.V"))}, +k(a){return A.hj(this)}, +Sr(a){var s +if(this.$ti.h("e7.K").b(a))s=!0 +else s=!1 +return s}, +$iaN:1} +A.b89.prototype={ +$2(a,b){this.a.n(0,a,b) +return b}, +$S(){return this.a.$ti.h("~(e7.K,e7.V)")}} +A.b8a.prototype={ +$1(a){var s=a.b,r=this.a.$ti +return new A.aY(s.a,s.b,r.h("@").a1(r.h("e7.V")).h("aY<1,2>"))}, +$S(){return this.a.$ti.h("aY(aY>)")}} +A.b8b.prototype={ +$2(a,b){return this.b.$2(b.a,b.b)}, +$S(){return this.a.$ti.h("~(e7.C,aY)")}} +A.b8c.prototype={ +$1(a){return a.a}, +$S(){return this.a.$ti.h("e7.K(aY)")}} +A.b8d.prototype={ +$2(a,b){return this.b.$2(b.a,b.b)}, +$S(){return this.a.$ti.a1(this.c).a1(this.d).h("aY<1,2>(e7.C,aY)")}} +A.b8e.prototype={ +$0(){var s=this.a.$ti +return new A.aY(this.b,this.c.$0(),s.h("@").a1(s.h("e7.V")).h("aY<1,2>"))}, +$S(){return this.a.$ti.h("aY()")}} +A.b8f.prototype={ +$1(a){return a.b}, +$S(){return this.a.$ti.h("e7.V(aY)")}} +A.a1E.prototype={ +h4(a,b){return J.q(a,b)}, +jC(a,b){return J.ab(b)}, +abs(a){return!0}} +A.RV.prototype={ +h4(a,b){var s,r,q,p +if(a===b)return!0 +s=J.au(a) +r=J.au(b) +for(q=this.a;!0;){p=s.t() +if(p!==r.t())return!1 +if(!p)return!0 +if(!q.h4(s.gK(s),r.gK(r)))return!1}}, +jC(a,b){var s,r,q +for(s=J.au(b),r=this.a,q=0;s.t();){q=q+r.jC(0,s.gK(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.kk.prototype={ +h4(a,b){var s,r,q,p,o +if(a===b)return!0 +s=J.ao(a) +r=s.gA(a) +q=J.ao(b) +if(r!==q.gA(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.Gz.prototype={ +h4(a,b){var s,r,q,p,o +if(a===b)return!0 +s=this.a +r=A.hg(s.gazc(),s.gaAB(s),s.gaBw(),A.z(this).h("Gz.E"),t.S) +for(s=J.au(a),q=0;s.t();){p=s.gK(s) +o=r.i(0,p) +r.n(0,p,(o==null?0:o)+1);++q}for(s=J.au(b);s.t();){p=s.gK(s) +o=r.i(0,p) +if(o==null||o===0)return!1 +r.n(0,p,o-1);--q}return q===0}, +jC(a,b){var s,r,q +for(s=J.au(b),r=this.a,q=0;s.t();)q=q+r.jC(0,s.gK(s))&2147483647 +q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}} +A.Ng.prototype={} +A.Ff.prototype={} +A.XM.prototype={ +gv(a){var s=this.a +return 3*s.a.jC(0,this.b)+7*s.b.jC(0,this.c)&2147483647}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.XM){s=this.a +s=s.a.h4(this.b,b.b)&&s.b.h4(this.c,b.c)}else s=!1 +return s}} +A.Kc.prototype={ +h4(a,b){var s,r,q,p,o,n,m +if(a===b)return!0 +s=J.ao(a) +r=J.ao(b) +if(s.gA(a)!==r.gA(b))return!1 +q=A.hg(null,null,null,t.PJ,t.S) +for(p=J.au(s.gek(a));p.t();){o=p.gK(p) +n=new A.XM(this,o,s.i(a,o)) +m=q.i(0,n) +q.n(0,n,(m==null?0:m)+1)}for(s=J.au(r.gek(b));s.t();){o=s.gK(s) +n=new A.XM(this,o,r.i(b,o)) +m=q.i(0,n) +if(m==null||m===0)return!1 +q.n(0,n,m-1)}return!0}, +jC(a,b){var s,r,q,p,o,n,m,l,k +for(s=J.er(b),r=J.au(s.gek(b)),q=this.a,p=this.b,o=this.$ti.y[1],n=0;r.t();){m=r.gK(r) +l=q.jC(0,m) +k=s.i(b,m) +n=n+3*l+7*p.jC(0,k==null?o.a(k):k)&2147483647}n=n+(n<<3>>>0)&2147483647 +n^=n>>>11 +return n+(n<<15>>>0)&2147483647}} +A.asj.prototype={ +h4(a,b){var s,r=this,q=t.Ro +if(q.b(a))return q.b(b)&&new A.Ff(r,t.n5).h4(a,b) +q=t.f +if(q.b(a))return q.b(b)&&new A.Kc(r,r,t.Dx).h4(a,b) +if(!r.b){q=t.j +if(q.b(a))return q.b(b)&&new A.kk(r,t.wO).h4(a,b) +q=t.JY +if(q.b(a))return q.b(b)&&new A.RV(r,t.vQ).h4(a,b)}else{q=t.JY +if(q.b(a)){s=t.j +if(s.b(a)!==s.b(b))return!1 +return q.b(b)&&new A.Ng(r,t.C_).h4(a,b)}}return J.q(a,b)}, +jC(a,b){var s=this +if(t.Ro.b(b))return new A.Ff(s,t.n5).jC(0,b) +if(t.f.b(b))return new A.Kc(s,s,t.Dx).jC(0,b) +if(!s.b){if(t.j.b(b))return new A.kk(s,t.wO).jC(0,b) +if(t.JY.b(b))return new A.RV(s,t.vQ).jC(0,b)}else if(t.JY.b(b))return new A.Ng(s,t.C_).jC(0,b) +return J.ab(b)}, +abs(a){return!0}} +A.ave.prototype={ +RI(a){var s=this.b[a] +if(s==null){this.$ti.c.a(null) +s=null}return s}, +gcU(a){return this.c!==0}, +gA(a){return this.c}, +k(a){var s=this.b +return A.cxC(A.fB(s,0,A.hz(this.c,"count",t.S),A.X(s).c),"(",")")}, +aWz(a,b){var s,r,q,p,o=this +for(s=o.a,r=o.$ti.c;b>0;b=q){q=B.d.aD(b-1,2) +p=o.b[q] +if(p==null){r.a(null) +p=null}if(s.$2(a,p)>0)break +o.b[b]=p}o.b[b]=a}, +aWy(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.mt.prototype={ +B(a,b){this.od(0,b)}, +L(a,b){var s,r,q,p,o,n,m=this +if(t.j.b(b)){s=J.bn(b) +r=m.gA(0) +q=r+s +if(q>=J.bn(m.a)){m.aqa(q) +J.cv9(m.a,r,q,b,0) +m.sh_(m.gh_()+s)}else{p=J.bn(m.a)-m.gh_() +q=m.a +o=J.cz(q) +if(s").a1(b).h("adl<1,2>"))}, +k(a){return A.u0(this,"{","}")}, +hX(a){var s,r=this +if(r.gkK(r)===r.gh_())throw A.d(A.a0("No element")) +r.sh_((r.gh_()-1&J.bn(r.a)-1)>>>0) +s=J.aS(r.a,r.gh_()) +if(s==null)s=A.z(r).h("mt.E").a(s) +J.id(r.a,r.gh_(),null) +return s}, +gA(a){var s=this +return(s.gh_()-s.gkK(s)&J.bn(s.a)-1)>>>0}, +sA(a,b){var s,r,q,p,o=this +if(b<0)throw A.d(A.b8("Length "+b+" may not be negative.")) +if(b>o.gA(0)&&!A.z(o).h("mt.E").b(null))throw A.d(A.aq("The length can only be increased when the element type is nullable, but the current element type is `"+A.c6(A.z(o).h("mt.E")).k(0)+"`.")) +s=b-o.gA(0) +if(s>=0){if(J.bn(o.a)<=b)o.aqa(b) +o.sh_((o.gh_()+s&J.bn(o.a)-1)>>>0) +return}r=o.gh_()+s +q=o.a +if(r>=0)J.cv_(q,r,o.gh_(),null) +else{r+=J.bn(q) +J.cv_(o.a,0,o.gh_(),null) +q=o.a +p=J.ao(q) +p.fb(q,r,p.gA(q),null)}o.sh_(r)}, +i(a,b){var s,r=this +if(b<0||b>=r.gA(0))throw A.d(A.b8("Index "+b+" must be in the range [0.."+r.gA(0)+").")) +s=J.aS(r.a,(r.gkK(r)+b&J.bn(r.a)-1)>>>0) +return s==null?A.z(r).h("mt.E").a(s):s}, +n(a,b,c){var s=this +if(b<0||b>=s.gA(0))throw A.d(A.b8("Index "+b+" must be in the range [0.."+s.gA(0)+").")) +J.id(s.a,(s.gkK(s)+b&J.bn(s.a)-1)>>>0,c)}, +od(a,b){var s=this +J.id(s.a,s.gh_(),b) +s.sh_((s.gh_()+1&J.bn(s.a)-1)>>>0) +if(s.gkK(s)===s.gh_())s.beP()}, +beP(){var s=this,r=A.aK(J.bn(s.a)*2,null,!1,A.z(s).h("mt.E?")),q=J.bn(s.a)-s.gkK(s) +B.b.dS(r,0,q,s.a,s.gkK(s)) +B.b.dS(r,q,q+s.gkK(s),s.a,0) +s.skK(0,0) +s.sh_(J.bn(s.a)) +s.a=r}, +beQ(a){var s,r,q=this +if(q.gkK(q)<=q.gh_()){s=q.gh_()-q.gkK(q) +B.b.dS(a,0,s,q.a,q.gkK(q)) +return s}else{r=J.bn(q.a)-q.gkK(q) +B.b.dS(a,0,r,q.a,q.gkK(q)) +B.b.dS(a,r,r+q.gh_(),q.a,0) +return q.gh_()+r}}, +aqa(a){var s=this,r=A.aK(A.dbW(a+B.d.b2(a,1)),null,!1,A.z(s).h("mt.E?")) +s.sh_(s.beQ(r)) +s.a=r +s.skK(0,0)}, +$iaO:1, +$iB:1, +$ix:1, +gkK(a){return this.b}, +gh_(){return this.c}, +skK(a,b){return this.b=b}, +sh_(a){return this.c=a}} +A.adl.prototype={ +gkK(a){var s=this.d +return s.gkK(s)}, +skK(a,b){this.d.skK(0,b)}, +gh_(){return this.d.gh_()}, +sh_(a){this.d.sh_(a)}} +A.agY.prototype={} +A.Nf.prototype={} +A.aHd.prototype={ +B(a,b){return A.bNO()}, +L(a,b){return A.bNO()}, +F(a,b){return A.bNO()}, +V(a){return A.bNO()}} +A.aHc.prototype={ +n(a,b,c){return A.bNN()}, +cP(a,b,c){return A.bNN()}, +F(a,b){return A.bNN()}, +V(a){return A.bNN()}} +A.ak1.prototype={} +A.NB.prototype={ +ef(a,b){return this.a.ef(0,b)}, +jx(a,b){var s=this.a +return A.a9s(s,s.gEN(),A.z(s).c,b)}, +p(a,b){return this.a.p(0,b)}, +dE(a,b){return this.a.dE(0,b)}, +ga2(a){var s=this.a +return s.ga2(s)}, +aE(a,b){return this.a.aE(0,b)}, +gad(a){var s=this.a +return s.gad(s)}, +gcU(a){var s=this.a +return s.gcU(s)}, +gaz(a){var s=this.a +return s.gaz(s)}, +bQ(a,b){return this.a.bQ(0,b)}, +gP(a){var s=this.a +return s.gP(s)}, +gA(a){var s=this.a +return s.gA(s)}, +fK(a,b,c){var s=this.a +return new A.jJ(s,b,A.z(s).h("@").a1(c).h("jJ<1,2>"))}, +gcW(a){return this.a.gcW(0)}, +my(a,b){var s=this.a +return A.cz1(s,b,A.z(s).h("cZ.E"))}, +nl(a,b){var s=this.a +return A.bKu(s,b,A.z(s).h("cZ.E"))}, +ib(a,b){var s=this.a +return A.R(s,b,A.z(s).h("cZ.E"))}, +eO(a){return this.ib(0,!0)}, +jq(a){return this.a.jq(0)}, +k(a){return A.u0(this.a,"{","}")}, +$iB:1} +A.Ic.prototype={ +B(a,b){return this.a.B(0,b)}, +L(a,b){this.a.L(0,b)}, +jx(a,b){var s=this.a +return A.a9s(s,s.gEN(),A.z(s).c,b)}, +V(a){this.a.V(0)}, +pq(a,b){return this.a.pq(0,b)}, +F(a,b){return this.a.F(0,b)}, +jq(a){return new A.Ic(this.a.jq(0),A.z(this).h("Ic<1>"))}, +$iaO:1, +$ibU:1} +A.apG.prototype={} +A.bau.prototype={} +A.bbs.prototype={ +lD(){var s=0,r=A.p(t.DM),q,p +var $async$lD=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=t.wo +q=self.window.navigator.onLine?A.a([B.tr],p):A.a([B.kF],p) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$lD,r)}} +A.bat.prototype={} +A.bsw.prototype={ +lD(){return B.b5M.bz8("check",t.N).bf(new A.bsx(),t.DM)}} +A.bsx.prototype={ +$1(a){return A.dtP(a==null?A.a([],t.s):a)}, +$S:1496} +A.lt.prototype={ +H(){return"ConnectivityResult."+this.b}} +A.ctb.prototype={ +$1(a){switch(B.c.du(a)){case"bluetooth":return B.C8 +case"wifi":return B.tr +case"ethernet":return B.C9 +case"mobile":return B.Ca +case"vpn":return B.n3 +case"other":return B.n4 +default:return B.kF}}, +$S:1499} +A.bOE.prototype={ +Mn(a,b,c){return this.bty(0,b,!0)}, +bty(a,b,c){var s=0,r=A.p(t.H) +var $async$Mn=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$Mn,r)}, +a9l(){var s=0,r=A.p(t.H) +var $async$a9l=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$a9l,r)}, +abN(a){return this.bAf(a)}, +bAf(a){var s=0,r=A.p(t.L2),q +var $async$abN=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=A.a([],t.xn) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$abN,r)}} +A.b2s.prototype={} +A.aJP.prototype={ +nQ(a){throw A.d(A.bT(".length() has not been implemented."))}} +A.jB.prototype={ +gRe(){var s=0,r=A.p(t.lZ),q,p=this,o,n,m,l,k +var $async$gRe=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:k=p.f +if(k!=null){q=k +s=1 +break}k=self +if(J.q(k.window.navigator.vendor,"Apple Computer, Inc.")){o=p.d +if(o!=null)o=o>=4294967296 +else o=!1}else o=!1 +if(o)throw A.d(A.dA("Safari cannot handle XFiles larger than 4GB.")) +o=new A.ak($.at,t.XC) +n=new A.aI(o,t.m_) +m=A.aF("request") +k=new k.XMLHttpRequest() +l=p.c +l===$&&A.b() +k.open("get",l,!0) +k.responseType="blob" +l=t.lZ +A.ny(k,"load",new A.bPz(m,n),!1,l) +A.ny(k,"error",new A.bPA(n),!1,l) +k.send() +m.b=k +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$gRe,r)}, +wN(){var s=0,r=A.p(t.E),q,p=this +var $async$wN=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q=p.gRe().bf(p.gaWn(),t.E) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$wN,r)}, +nQ(a){var s=0,r=A.p(t.S),q,p=this,o +var $async$nQ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.d +s=o==null?3:5 +break +case 3:s=6 +return A.i(p.gRe(),$async$nQ) +case 6:c=c.size +s=4 +break +case 5:c=o +case 4:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$nQ,r)}, +Rf(a){return this.aWo(a)}, +aWo(a){var s=0,r=A.p(t.E),q,p,o,n +var $async$Rf=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=new self.FileReader() +A.L(n,"readAsArrayBuffer",[a]) +s=3 +return A.i(new A.B1(n,"loadend",!1,t.Sc).ga2(0),$async$Rf) +case 3:p=t.CM.a(n.result) +o=p==null?null:A.dF(p,0,null) +if(o==null)throw A.d(A.dA("Cannot read bytes from Blob. Is it still available?")) +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Rf,r)}} +A.bPz.prototype={ +$1(a){var s=this.a.aX().response +s.toString +this.b.d2(0,t.lZ.a(s))}, +$S:40} +A.bPA.prototype={ +$1(a){if(J.q(a.type,"error"))this.a.jh(new A.aeC("Could not load Blob from its URL. Has it been revoked?"))}, +$S:40} +A.a0G.prototype={ +H(){return"ClauseType."+this.b}} +A.c9n.prototype={ +kA(a){var s,r,q,p=this,o=A.a([],t.Jv),n=p.d +n===$&&A.b() +while(!0){if(!(!p.fp(1)&&p.d.a!==7))break +s=p.Os() +if(s!=null)o.push(s) +else break}r=p.d +q=r.a +if(!(q===1||q===67))p.jQ("premature end of file unknown CSS",r.b) +n=p.bS(n.b) +r=new A.aFv(o,n) +r.aVd(o,n) +return r}, +abp(){if(this.fp(1)){var s=this.d +s===$&&A.b() +this.jQ("unexpected end of file",s.b) +return!0}else return!1}, +eo(){var s=this,r=s.d +r===$&&A.b() +s.c=r +s.d=s.a.oz(0,!1) +return r}, +vA(a,b){var s=this,r=s.d +r===$&&A.b() +if(r.a===a){s.c=r +s.d=s.a.oz(0,b) +return!0}else return!1}, +fp(a){return this.vA(a,!1)}, +al5(a,b){if(!this.vA(a,b))this.Et(A.aGP(a))}, +fZ(a){return this.al5(a,!1)}, +Et(a){var s,r=this.eo(),q=null +try{q="expected "+a+", but found "+A.r(r)}catch(s){q="parsing error expected "+a}this.jQ(q,r.b)}, +jQ(a,b){$.eg.I().bvx(0,a,b)}, +a6W(a,b){$.eg.I().bIc(a,b)}, +bS(a){var s=this.c +if(s==null||s.b.bn(0,a)<0)return a +return a.iz(0,this.c.b)}, +aDC(){var s,r=A.a([],t.HC) +do{s=this.bEs() +if(s!=null)r.push(s) +else break}while(this.fp(19)) +return r}, +bEs(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.d +h===$&&A.b() +s=h.b +r=h.gce(h) +h=A.W5(B.HR,"type",r,0,r.length)===-1 +if(!h){$.eg.I() +i.eo() +s=i.d.b}q=i.d.a===511?i.iC(0):null +p=A.a([],t.M2) +for(o=q==null,n=!o,m=i.a;!0;){l=p.length!==0||n +if(l){k=i.d +r=k.gce(k) +if(A.W5(B.HR,"type",r,0,r.length)!==667)break +i.c=i.d +i.d=m.oz(0,!1)}j=i.bEr(l) +if(j==null)break +p.push(j)}if(!h||!o||p.length!==0)return new A.a5D(p,i.bS(s)) +return null}, +bEr(a){var s,r,q=this,p=q.d +p===$&&A.b() +if(q.fp(2))if(q.d.a===511){q.iC(0) +if(q.fp(17))s=q.zQ() +else{r=q.bS(q.d.b) +s=new A.IQ(A.a([],t.zZ),r)}if(q.fp(3))return new A.a5C(s,q.bS(p.b)) +else $.eg.I()}else $.eg.I() +return null}, +aDt(){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.d +a1===$&&A.b() +s=a1.b +r=a.bEz() +if(r instanceof A.Wm)return r +A.bZ(r) +switch(r){case 641:a.eo() +if(a.d.a===511){q=a.Or(a.iC(0)) +p=q instanceof A.Wk?q.d:a0}else p=a.uN(!1) +o=a.aDC() +if(p==null)a.jQ("missing import string",a.d.b) +p.toString +B.c.du(p) +return new A.avY(o,a.bS(s)) +case 642:a.eo() +n=a.aDC() +m=A.a([],t.Jv) +if(a.fp(6)){for(;!a.fp(1);){l=a.Os() +if(l==null)break +m.push(l)}if(!a.fp(7))a.jQ("expected } after ruleset for @media",a.d.b)}else a.jQ("expected { after media before ruleset",a.d.b) +return new A.azg(n,m,a.bS(s)) +case 653:a.eo() +m=A.a([],t.Jv) +if(a.fp(6)){for(;!a.fp(1);){l=a.Os() +if(l==null)break +m.push(l)}if(!a.fp(7))a.jQ("expected } after ruleset for @host",a.d.b)}else a.jQ("expected { after host before ruleset",a.d.b) +return new A.avu(m,a.bS(s)) +case 643:a.eo() +if(a.d.a===511)a.iC(0) +if(a.fp(17))if(a.d.a===511){a.iC(0) +$.eg.I()}return new A.aAC(a.bEq(),a.bS(s)) +case 644:a.eo() +a.uN(!1) +return new A.aoO(a.bS(s)) +case 646:case 647:case 648:case 650:case 649:if(r===649)$.eg.I() +a.eo() +k=a.d.a===511?a.iC(0):a0 +a.fZ(6) +a1=a.bS(s) +j=A.a([],t.Rr) +i=t.zZ +h=t.q_ +do{g=a.bS(s) +f=A.a([],i) +do f.push(h.a(a.Ot())) +while(a.fp(19)) +j.push(new A.a4L(new A.IQ(f,g),a.Oq(),a.bS(s)))}while(!a.fp(7)&&!a.abp()) +return new A.awk(k,j,a1) +case 651:a.eo() +return new A.auk(a.Oq(),a.bS(s)) +case 645:a.eo() +k=a.d.a===511?a.iC(0):a0 +a.fZ(6) +e=A.a([],t.Jv) +a1=a.d +for(;!a.fp(1);){l=a.Os() +if(l==null)break +e.push(l)}a.fZ(7) +A.ax(k) +return new A.aFw(e,a.bS(a1.b)) +case 652:a.eo() +d=a.d.a===511?a.iC(0):a0 +if(a.d.a===511)a.Or(a.iC(0)) +else if(d!=null&&d.b==="url")a.Or(d) +else a.uN(!1) +return new A.azV(a.bS(s)) +case 654:return a.bEt() +case 655:return a.bEo(a.bS(s)) +case 656:a.a6W("@content not implemented.",a.bS(s)) +return a0 +case 658:return a.bEm() +case 659:a1=a.d +a.eo() +c=a.aDG() +a.fZ(6) +b=a.aDz() +a.fZ(7) +return new A.aFz(c,b,a.bS(a1.b)) +case 660:case 661:a1=a.d +j=a.eo() +return new A.aHF(j.gce(j),a.Oq(),a.bS(a1.b))}return a0}, +bEt(){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 +a3.eo() +s=a3.iC(0) +r=t.Jv +q=A.a([],r) +if(a3.fp(2))for(p=$.eg.a,o=t.qV,n=!1,m=!0;m;){l=a3.aDJ(!0) +if(l instanceof A.Wm||l instanceof A.abO)q.push(o.a(l)) +else if(n){k=a3.d +k===$&&A.b() +j=a3.bS(k.b) +k=$.eg.b +if(k===$.eg)A.C(A.DT(p)) +i=k.b +k.c.push(new A.rD(B.ju,"Expecting parameter",j,i.w)) +m=!1}if(a3.fp(19)){n=!0 +continue}m=!a3.fp(3)}a3.fZ(6) +h=A.a([],r) +p=a3.d +p===$&&A.b() +g=p.b +p=$.eg.a +o=t.Ek +while(!0){if(!!a3.fp(1)){f=a4 +break}c$1:{e=a3.aDt() +if(e!=null){h.push(e) +break c$1}d=a3.aDs(!1) +k=d.b +if(B.b.ef(k,new A.c9o())){c=A.a([],o) +for(i=h.length,b=0;b1114111)g.jQ(e,g.bS(s)) +if(g.vA(34,!0))if(g.vA(61,!0)){d=g.c +i=A.cA("0x"+d.gce(d),f) +if(i>1114111)g.jQ(e,g.bS(s)) +if(j>i)g.jQ("unicode first range can not be greater than last",g.bS(s))}}else if(g.vA(509,!0)){d=g.c +d.gce(d)}return new A.aH9(g.bS(s)) +case 10:$.eg.I() +g.eo() +h=g.zQ() +$.eg.I() +d=h.c +d[0]=new A.abP(t.wk.a(d[0]).d,A.a([],t.zZ),g.bS(s)) +return d +default:if(A.czt(d))return r.$0() +else return f}}, +Ot(){return this.aDI(!1)}, +acV(a,b,c){var s,r,q=this,p=q.d +p===$&&A.b() +s=p.a +switch(s){case 600:c=c.iz(0,q.eo().b) +r=new A.a2x(b,a.gce(a),c) +break +case 601:c=c.iz(0,q.eo().b) +r=new A.atC(b,a.gce(a),c) +break +case 602:case 603:case 604:case 605:case 606:case 607:c=c.iz(0,q.eo().b) +r=new A.DV(s,b,a.gce(a),c) +break +case 608:case 609:case 610:case 611:c=c.iz(0,q.eo().b) +r=new A.ZT(s,b,a.gce(a),c) +break +case 612:case 613:c=c.iz(0,q.eo().b) +r=new A.aGt(s,b,a.gce(a),c) +break +case 614:case 615:c=c.iz(0,q.eo().b) +r=new A.auv(s,b,a.gce(a),c) +break +case 24:c=c.iz(0,q.eo().b) +r=new A.zI(b,a.gce(a),c) +break +case 617:c=c.iz(0,q.eo().b) +r=new A.auo(b,a.gce(a),c) +break +case 618:case 619:case 620:c=c.iz(0,q.eo().b) +r=new A.aDs(s,b,a.gce(a),c) +break +case 621:c=c.iz(0,q.eo().b) +r=new A.aoK(s,b,a.gce(a),c) +break +case 622:c=c.iz(0,q.eo().b) +r=new A.aCD(s,b,a.gce(a),c) +break +case 623:case 624:case 625:case 626:c=c.iz(0,q.eo().b) +r=new A.aHI(s,b,a.gce(a),c) +break +case 627:case 628:c=c.iz(0,q.eo().b) +r=new A.awY(s,b,a.gce(a),c) +break +default:r=b instanceof A.wa?new A.cx(b,b.b,c):new A.nd(b,a.gce(a),c)}return r}, +uN(a){var s,r,q,p,o,n=this,m=n.d +m===$&&A.b() +s=a?3:-1 +r=n.a +q=r.c +r.c=!1 +p=m.a +switch(p){case 25:n.eo() +s=25 +break +case 26:n.eo() +s=26 +break +default:if(a){if(p===2)n.eo() +s=3}else n.jQ("unexpected string",n.bS(m.b)) +break}m="" +while(!0){p=n.d +o=p.a +if(!(o!==s&&o!==1))break +n.c=p +n.d=r.oz(0,!1) +m+=p.gce(p)}r.c=q +if(s!==3)n.eo() +return m.charCodeAt(0)==0?m:m}, +aDA(a){var s,r,q,p,o,n,m=this,l=null,k=m.d +k===$&&A.b() +s=k.a +if(s===9||s===7){k=A.eF(a.a,a.b) +r=m.d.b +r=m.a.bAI(k.b,A.eF(r.a,r.b).b).b +k=r.b +q=r.c +p=r.a.c +return new A.cx(A.dp(B.h0.cK(p,k,q),0,l),A.dp(B.h0.cK(p,k,q),0,l),r)}for(o=0;k=m.d.a,k!==1;)switch(k){case 2:if(!m.vA(2,!1))m.Et(A.aGP(2));++o +break +case 3:if(!m.vA(3,!1))m.Et(A.aGP(3));--o +if(o===0){k=m.a +r=a.a +q=a.b +new A.lw(r,q).o7(r,q) +r=m.d.b +p=r.a +r=r.b +new A.lw(p,r).o7(p,r) +B.c.R(k.b,q,r) +k=k.a +p=new A.i8(k,q,r) +p.kI(k,q,r) +k=k.c +n=k.length +return new A.cx(A.dp(new Uint32Array(k.subarray(q,A.nH(q,r,n))),0,l),A.dp(new Uint32Array(k.subarray(q,A.nH(q,r,n))),0,l),p)}break +default:if(!m.vA(k,!1))m.Et(A.aGP(k))}}, +bEk(){var s,r,q,p,o,n=this,m=n.a,l=m.c +m.c=!1 +s=new A.bu("") +r=1 +q=!1 +while(!0){p=n.d +p===$&&A.b() +o=p.a +if(!(o!==1&&!q))break +if(o===2)++r +else if(o===3)--r +q=r===0 +if(!q){n.c=p +n.d=m.oz(0,!1) +s.a+=p.gce(p)}}if(!q)n.jQ("problem parsing function expected ), ",p.b) +m.c=l +m=s.a +return m.charCodeAt(0)==0?m:m}, +bEj(a){var s,r,q,p=this,o=p.d +o===$&&A.b() +s=o.b +r=a.b +if(B.bld.p(0,r)){q=p.bEk() +o=p.bS(s) +if(!p.fp(3))p.jQ("problem parsing function expected ), ",p.d.b) +return new A.aop(new A.cx(q,q,o),r,r,p.bS(s))}return null}, +Or(a){var s,r,q,p,o,n,m=this,l=m.d +l===$&&A.b() +s=l.b +r=a.b +switch(r){case"url":q=m.uN(!0) +l=m.d +if(l.a===1)m.jQ("problem parsing URI",l.b) +if(m.d.a===3)m.eo() +return new A.Wk(q,q,m.bS(s)) +case"var":p=m.zQ() +if(!m.fp(3))m.jQ("problem parsing var expected ), ",m.d.b) +$.eg.I() +l=p.c +o=t.wk.a(l[0]) +n=l.length>=3?B.b.hs(l,2):A.a([],t.zZ) +return new A.abP(o.d,n,m.bS(s)) +default:p=m.zQ() +if(!m.fp(3))m.jQ("problem parsing function expected ), ",m.d.b) +return new A.Rb(p,r,r,m.bS(s))}}, +iC(a){var s=this.eo(),r=s.a +if(r!==511&&!A.czt(r)){$.eg.I() +return new A.wa("",this.bS(s.b))}return new A.wa(s.gce(s),this.bS(s.b))}, +a52(a,b){var s,r,q,p,o +for(s=a.length,r=0,q=0;q>>0)+p}if(s===6&&a[0]===a[1]&&a[2]===a[3]&&a[4]===a[5])a=a[0]+a[2]+a[4] +else if(s===4&&a[0]===a[1]&&a[2]===a[3])a=a[0]+a[2] +else if(s===2&&a[0]===a[1])a=a[0] +return new A.Rq(r,a,b)}} +A.c9o.prototype={ +$1(a){return a instanceof A.o0&&!(a instanceof A.DF)}, +$S:1566} +A.c9p.prototype={ +$0(){var s,r,q,p=this,o=p.a,n=o.iC(0),m=p.b +if(!m&&o.fp(2)){s=o.bEj(n) +if(s!=null)return s +return o.Or(n)}if(m){m=o.fp(17)&&n.b.toLowerCase()==="progid" +r=p.c +if(m)return o.aDA(r) +else return o.aDA(r)}m=n.b +if(m==="from")return new A.cx(n,m,o.bS(p.c)) +q=A.dfK(m) +if(q==null){$.eg.I() +return new A.cx(n,m,o.bS(p.c))}return o.a52(A.dfJ(A.bZ(J.aS(q,"value")),6),o.bS(p.c))}, +$S:257} +A.a3_.prototype={ +aDx(){var s,r,q,p,o=this,n=null,m=o.a,l=m.c,k=n,j=!1 +while(!0){r=o.b +if(!(r10)r=B.c.R(r,0,8)+"..." +return s+"("+r+")"}else return s}} +A.bpf.prototype={} +A.bmr.prototype={ +gce(a){return this.c}} +A.bN6.prototype={ +oz(a,b){var s,r,q,p,o,n,m,l,k,j=this +j.r=j.f +s=j.EO() +switch(s){case 10:case 13:case 32:case 9:return j.bwr() +case 0:return j.eE(1) +case 64:r=j.ES() +if(A.aGR(r)||r===45){q=j.f +p=j.r +j.r=q +j.EO() +j.WS() +o=j.b +n=j.r +m=A.W5(B.Kl,"type",o,n,j.f-n) +if(m===-1){n=j.r +m=A.W5(B.KP,"type",o,n,j.f-n)}if(m!==-1)return j.eE(m) +else{j.r=p +j.f=q}}return j.eE(10) +case 46:l=j.r +if(j.bAT())if(j.WT().a===60){j.r=l +return j.eE(62)}else return j.eE(65) +return j.eE(8) +case 40:return j.eE(2) +case 41:return j.eE(3) +case 123:return j.eE(6) +case 125:return j.eE(7) +case 91:return j.eE(4) +case 93:if(j.iX(93)&&j.iX(62))return j.zB(0) +return j.eE(5) +case 35:return j.eE(11) +case 43:if(j.ap6(s))return j.WT() +return j.eE(12) +case 45:if(j.d||b)return j.eE(34) +else if(j.ap6(s))return j.WT() +else if(A.aGR(s)||s===45)return j.WS() +return j.eE(34) +case 62:return j.eE(13) +case 126:if(j.iX(61))return j.eE(530) +return j.eE(14) +case 42:if(j.iX(61))return j.eE(534) +return j.eE(15) +case 38:return j.eE(36) +case 124:if(j.iX(61))return j.eE(531) +return j.eE(16) +case 58:return j.eE(17) +case 44:return j.eE(19) +case 59:return j.eE(9) +case 37:return j.eE(24) +case 39:return j.eE(25) +case 34:return j.eE(26) +case 47:if(j.iX(42))return j.bwq() +return j.eE(27) +case 60:if(j.iX(33))if(j.iX(45)&&j.iX(45))return j.bwp() +else{if(j.iX(91)){o=j.Q.a +o=j.iX(o.charCodeAt(0))&&j.iX(o.charCodeAt(1))&&j.iX(o.charCodeAt(2))&&j.iX(o.charCodeAt(3))&&j.iX(o.charCodeAt(4))&&j.iX(91)}else o=!1 +if(o)return j.zB(0)}return j.eE(32) +case 61:return j.eE(28) +case 94:if(j.iX(61))return j.eE(532) +return j.eE(30) +case 36:if(j.iX(61))return j.eE(533) +return j.eE(31) +case 33:return j.WS() +default:if(!j.e&&s===92)return j.eE(35) +if(b)if(j.bAU()){j.ayV(j.b.length) +k=j.eE(61) +if(j.aC8()){j.ayW() +j.eE(509)}return k}else if(j.aC8()){j.ayW() +return j.eE(509)}else return j.eE(65) +else{if(j.c)o=(s===j.w||s===j.x)&&j.ES()===j.y +else o=!1 +if(o){j.EO() +j.r=j.f +return j.eE(508)}else{o=s===118 +if(o&&j.iX(97)&&j.iX(114)&&j.iX(45))return j.eE(400) +else if(o&&j.iX(97)&&j.iX(114)&&j.ES()===45)return j.eE(401) +else if(A.aGR(s)||s===45)return j.WS() +else if(s>=48&&s<=57)return j.WT()}}return j.eE(65)}}, +zB(a){return this.oz(0,!1)}, +WS(){var s,r,q,p,o,n,m,l,k,j=this,i=A.a([],t.t),h=j.f +j.f=j.r +r=j.b +s=r.length +while(!0){q=j.f +if(!(q=h)if(j.d)if(!A.aGR(p))n=p>=48&&p<=57 +else n=!0 +else{if(!A.aGR(p))n=p>=48&&p<=57 +else n=!0 +n=n||p===45}else n=!0 +if(n){i.push(p);++j.f}else{s=q +break}}}m=j.a.xp(0,j.r,s) +l=A.dp(i,0,null) +if(!j.d&&!j.e){s=j.r +k=A.W5(B.I9,"unit",r,s,j.f-s)}else k=-1 +if(k===-1)k=B.c.R(r,j.r,j.f)==="!important"?505:-1 +return new A.bmr(l,k>=0?k:511,m)}, +WT(){var s,r=this +r.ayU() +if(r.ES()===46){r.EO() +s=r.ES() +if(s>=48&&s<=57){r.ayU() +return r.eE(62)}else --r.f}return r.eE(60)}, +bAT(){var s=this.f,r=this.b +if(s=48&&r<=57}else r=!1 +if(r){this.f=s+1 +return!0}return!1}, +ayV(a){var s,r,q=this.b +a=Math.min(a,q.length) +for(;s=this.f,s=48&&r<=57))if(!(r>=97&&r<=102))r=r>=65&&r<=70 +else r=!0 +else r=!0 +if(r)this.f=s+1 +else return}}, +bAU(){var s=this.f,r=this.b +if(s=48&&a<=57)return!0 +s=this.ES() +if(a===46)return s>=48&&s<=57 +if(a===43||a===45){if(!(s>=48&&s<=57))if(s===46){r=this.apW(1) +r=r>=48&&r<=57}else r=!1 +else r=!0 +return r}return!1}, +eE(a){return new A.x_(a,this.a.xp(0,this.r,this.f))}, +bwr(){var s,r,q,p,o=this,n=--o.f +for(s=o.b,r=s.length;n=48&&p<=57)this.f=q+1 +else return}}, +bAI(a,b){return new A.bpf(B.c.R(this.b,a,b),500,this.a.xp(0,a,b))}} +A.SO.prototype={ +H(){return"MessageLevel."+this.b}} +A.rD.prototype={ +k(a){var s=this,r=s.d&&B.QP.aB(0,s.a),q=r?B.QP.i(0,s.a):null,p=r?""+A.r(q):"" +p=p+A.r(B.b3V.i(0,s.a))+" " +if(r)p+="\x1b[0m" +p=p+"on "+s.c.Ya(0,s.b,q) +return p.charCodeAt(0)==0?p:p}} +A.bsq.prototype={ +bvx(a,b,c){var s=new A.rD(B.jv,b,c,this.b.w) +this.c.push(s) +this.a.$1(s)}, +bIc(a,b){this.c.push(new A.rD(B.ju,a,b,this.b.w))}, +bB5(a){var s=a.c +B.b.L(this.c,s) +new A.b1(s,new A.bsr(this),A.X(s).h("b1<1>")).aE(0,this.a)}} +A.bsr.prototype={ +$1(a){return a.a===B.jv||!1}, +$S:1575} +A.byc.prototype={} +A.wa.prototype={ +bg(a){return null}, +k(a){var s=this.a +s=A.dp(B.h0.cK(s.a.c,s.b,s.c),0,null) +return s}, +gdI(a){return this.b}} +A.FW.prototype={ +bg(a){return null}, +gdI(a){return"*"}} +A.aGo.prototype={ +bg(a){return null}, +gdI(a){return"&"}} +A.aA2.prototype={ +bg(a){return null}, +gdI(a){return"not"}} +A.aop.prototype={ +bg(a){return null}, +k(a){return this.d+"("+this.f.k(0)+")"}} +A.aEh.prototype={ +bg(a){return a.aea(this)}} +A.M2.prototype={ +gA(a){return this.b.length}, +bg(a){return a.ae9(this)}} +A.a9B.prototype={ +bg(a){this.c.bg(a) +return null}, +k(a){var s=this.c.b +return A.ax(s.gdI(s))}} +A.oy.prototype={ +gdI(a){var s=this.b +return A.ax(s.gdI(s))}, +bg(a){return t.qV.a(this.b).bg(a)}} +A.Ix.prototype={ +bg(a){return a.aGn(this)}, +k(a){var s=this.b +return A.ax(s.gdI(s))}} +A.azW.prototype={ +gaCi(){var s=this.d +if(s instanceof A.FW)s="*" +else s=s==null?"":t.IR.a(s).b +return s}, +bg(a){return a.aGu(this)}, +k(a){var s=this.gaCi(),r=t.yJ.a(this.b).b +return s+"|"+A.ax(r.gdI(r))}} +A.anj.prototype={ +bAO(){switch(this.d){case 28:return"=" +case 530:return"~=" +case 531:return"|=" +case 532:return"^=" +case 533:return"$=" +case 534:return"*=" +case 535:return""}return null}, +bHT(){var s=this.e +if(s!=null)if(s instanceof A.wa)return s.k(0) +else return'"'+A.r(s)+'"' +else return""}, +bg(a){return a.aGh(this)}, +k(a){var s=this.b +return"["+A.ax(s.gdI(s))+A.r(this.bAO())+this.bHT()+"]"}} +A.avK.prototype={ +bg(a){return a.aGp(this)}, +k(a){return"#"+A.r(this.b)}} +A.ape.prototype={ +bg(a){return a.aGi(this)}, +k(a){return"."+A.r(this.b)}} +A.TN.prototype={ +bg(a){return a.aGB(this)}, +k(a){var s=this.b +return":"+A.ax(s.gdI(s))}} +A.TO.prototype={ +bg(a){return a.aGD(this)}, +k(a){var s=this.d?":":"::",r=this.b +return s+A.ax(r.gdI(r))}} +A.a7m.prototype={ +bg(a){return a.aGA(this)}} +A.aC9.prototype={ +bg(a){return a.aGC(this)}} +A.UR.prototype={ +gdi(a){var s=this.a +s.toString +return s}, +bg(a){a.ij(this.b) +return null}} +A.aA3.prototype={ +bg(a){return a.aGv(this)}} +A.aFv.prototype={ +aVd(a,b){var s,r +for(s=this.b.length,r=0;r0?a.a=A.d3(k,new A.b73(a,g,a0,a3,k)):null +d=a4!=null +if(d){if(n!=null){n=a0.upload +n.toString +A.qW(n,"progress",new A.b74(a),!1,t._p)}if(l.a>0){$.r8() +n=a0.upload +n.toString +A.qW(n,"progress",new A.b75(new A.py(),l,g,a3,a0),!1,t._p)}}else if(l.a>0)A.pw() +c=new A.py() +$.r8() +a.b=null +A.qW(a0,"progress",new A.b76(a,new A.b7d(a,j,c,g,a0,a3,new A.b7c(a,c)),a3),!1,t._p) +new A.NE(a0,"error",!1,f).ga2(0).bf(new A.b77(a,g,a3),e) +new A.NE(a0,"timeout",!1,f).ga2(0).bf(new A.b78(a,g,k,a3,i),e) +s=d?3:5 +break +case 3:if(o==="GET")A.pw() +a=new A.ak($.at,t.Qy) +g=new A.aI(a,t.gI) +b=new A.ade(new A.b79(g),new Uint8Array(1024)) +a4.cl(b.gl4(b),!0,b.gBI(b),new A.b7a(g)) +a1=a0 +s=6 +return A.i(a,$async$Wp) +case 6:a1.send(a7) +s=4 +break +case 5:a0.send() +case 4:q=h.j6(new A.b7b(p,a0)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Wp,r)}} +A.b71.prototype={ +$2(a,b){var s=this.a +if(t.JY.b(b))s.setRequestHeader(a,J.xL(b,", ")) +else s.setRequestHeader(a,J.cw(b))}, +$S:41} +A.b72.prototype={ +$1(a){var s,r,q,p,o=this.a,n=A.dF(t.pI.a(A.dkE(o.response)),0,null),m=o.status +m.toString +s=B.DD.gbGj(o) +r=t.N +s=s.qv(s,new A.b70(),r,t.yp) +q=o.statusText +p=o.status +o=p===302||p===301||this.c.gfh().k(0)!==o.responseURL +p=A.aFo(n,t.E) +this.b.d2(0,new A.LG(o,p,m,q,s,A.N(r,t.z)))}, +$S:195} +A.b70.prototype={ +$2(a,b){return new A.aY(a,A.a(b.split(","),t.s),t.Kc)}, +$S:1577} +A.b73.prototype={ +$0(){var s,r=this +r.a.a=null +s=r.b +if((s.a.a&30)!==0)return +r.c.abort() +s.iy(A.cGN(r.d,r.e),A.pw())}, +$S:0} +A.b74.prototype={ +$1(a){var s=this.a,r=s.a +if(r!=null)r.ao(0) +s.a=null}, +$S:220} +A.b75.prototype={ +$1(a){var s,r=this,q=r.a +if(q.b!=null)q.j9(0) +s=r.b +if(A.cp(0,0,q.gMF(),0,0,0).a>s.a){if(q.b==null)q.b=$.EN.$0() +r.c.iy(A.a1M(null,"The request took longer than "+s.k(0)+" to send data. It was aborted. To get rid of this exception, try raising the RequestOptions.sendTimeout above the duration of "+s.k(0)+u.v,r.d,null,null,B.ahf),A.pw()) +r.e.abort()}}, +$S:220} +A.b7c.prototype={ +$0(){var s=this.a,r=s.b +if(r!=null)r.ao(0) +s.b=null +s=this.b +if(s.b==null)s.b=$.EN.$0()}, +$S:0} +A.b7d.prototype={ +$0(){var s,r,q=this,p=q.b +if(p.a<=0)return +s=q.c +s.b6(0) +if(s.b!=null)s.j9(0) +s=q.a +r=s.b +if(r!=null)r.ao(0) +s.b=A.d3(p,new A.b7e(q.d,q.e,p,q.f,q.r))}, +$S:0} +A.b7e.prototype={ +$0(){var s=this,r=s.a +if((r.a.a&30)===0){s.b.abort() +r.iy(A.cwe(s.d,s.c),A.pw())}s.e.$0()}, +$S:0} +A.b76.prototype={ +$1(a){var s=this.a,r=s.a +if(r!=null){r.ao(0) +s.a=null}this.b.$0()}, +$S:220} +A.b77.prototype={ +$1(a){var s=this.a.a +if(s!=null)s.ao(0) +this.b.iy(A.d4w("The XMLHttpRequest onError callback was called. This typically indicates an error on the network layer.",this.c),A.pw())}, +$S:195} +A.b78.prototype={ +$1(a){var s,r=this,q=r.a.a,p=q!=null +if(p)q.ao(0) +q=r.b +if((q.a.a&30)===0){s=r.d +if(p)q.jh(A.cGN(s,r.c)) +else q.iy(A.cwe(s,A.cp(0,0,0,r.e,0,0)),A.pw())}}, +$S:195} +A.b79.prototype={ +$1(a){return this.a.d2(0,a)}, +$S:228} +A.b7a.prototype={ +$2(a,b){return this.a.iy(a,b)}, +$S:32} +A.b7b.prototype={ +$0(){this.a.a.F(0,this.b)}, +$S:13} +A.a1N.prototype={$icGM:1} +A.aNy.prototype={} +A.yz.prototype={ +H(){return"DioExceptionType."+this.b}} +A.p9.prototype={ +k(a){var s="DioException ["+A.dhK(this.c)+"]: "+A.r(this.f),r=this.d +return r!=null?s+("\nError: "+A.r(r)):s}, +$ibP:1} +A.bd3.prototype={ +a_o(a,b,c,d,e){return this.bG0(0,b,null,null,null,A.cGQ("GET",c),d,e)}, +a_n(a,b,c,d){return this.a_o(0,b,c,null,d)}, +aDh(a,b,c,d){var s=null +return this.adl(0,a,s,b,s,s,A.cGQ("POST",c),s,d)}, +bEc(a,b,c){return this.aDh(a,b,null,c)}, +adl(a8,a9,b0,b1,b2,b3,b4,b5,b6){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=null,a5="content-type",a6=b4==null?A.mk(a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4):b4,a7=this.z5$ +a7===$&&A.b() +s=A.pw() +r=t.N +q=t.z +p=A.N(r,q) +o=a7.MR$ +o===$&&A.b() +p.L(0,o) +if(b5!=null)p.L(0,b5) +o=a7.b +o===$&&A.b() +n=A.b1L(o,q) +o=a6.b +if(o!=null)n.L(0,o) +o=a6.f +if(o!=null)n.n(0,a5,o) +m=n.i(0,a5) +o=a7.y +o===$&&A.b() +l=A.rA(o,r,q) +r=a6.y +if(r!=null)l.L(0,r) +r=a6.a +if(r==null){r=a7.a +r===$&&A.b()}k=r.toUpperCase() +r=a7.WA$ +r===$&&A.b() +q=a7.c +q===$&&A.b() +o=a7.WB$ +j=a7.d +i=a7.e +h=a6.r +if(h==null){h=a7.r +h===$&&A.b()}g=a6.w +if(g==null){g=a7.w +g===$&&A.b()}f=a7.x +f===$&&A.b() +e=a6.z +if(e==null){e=a7.z +e===$&&A.b()}d=a7.Q +d===$&&A.b() +c=a7.as +c===$&&A.b() +b=a7.at +a=a7.ax +a0=a7.ay +a0===$&&A.b() +a6=m==null?a6.f:m +if(a6==null)a6=A.bw(a7.b.i(0,a5)) +a7=a0 +a1=d +a2=g +a3=new A.qE(b1,a9,b0,b2,b3,$,$,a4,k,q,j,i,h,a2,f,l,e,a1,c,b,a,a7) +a3.ai_(a6,l,e,n,a0,d,k,c,q,f,i,b,a,h,j,g) +a3.ch=s +a3.MR$=p +a3.savR(r) +a3.saxj(o) +return this.Wo(0,a3,b6)}, +bG0(a,b,c,d,e,f,g,h){return this.adl(0,b,c,d,e,null,f,g,h)}, +bG1(a,b,c,d,e,f,g,h){return this.adl(0,b,null,c,d,e,f,g,h)}, +Wo(a,b,c){return this.bvO(0,b,c,c.h("nj<0>"))}, +bvO(a4,a5,a6,a7){var s=0,r=A.p(a7),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3 +var $async$Wo=A.l(function(a8,a9){if(a8===1){o=a9 +s=p}while(true)switch(s){case 0:a2={} +a2.a=a5 +if(A.c6(a6)!==B.ma){i=a5.r +i===$&&A.b() +i=!(i===B.x5||i===B.X3)}else i=!1 +if(i)if(A.c6(a6)===B.yk)a5.r=B.X4 +else a5.r=B.lH +h=new A.bd9(a2) +g=new A.bdc(a2) +f=new A.bd6(a2) +i=t.z +m=A.Rd(new A.bd4(a2),i) +for(e=n.bvX$,d=A.z(e),c=d.h("bj"),b=new A.bj(e,e.gA(0),c),d=d.h("a2.E");b.t();){a=b.d +a0=(a==null?d.a(a):a).gbCC() +m=m.bf(h.$1(a0),i)}m=m.bf(h.$1(new A.bd5(a2,n,a6)),i) +for(b=new A.bj(e,e.gA(0),c);b.t();){a=b.d +a0=(a==null?d.a(a):a).gbCE() +m=m.bf(g.$1(a0),i)}for(i=new A.bj(e,e.gA(0),c);i.t();){e=i.d +if(e==null)e=d.a(e) +a0=e.gHc(e) +m=m.mY(f.$1(a0))}p=4 +s=7 +return A.i(m,$async$Wo) +case 7:l=a9 +i=l instanceof A.jl?l.a:l +i=A.cGP(i,a2.a,a6) +q=i +s=1 +break +p=2 +s=6 +break +case 4:p=3 +a3=o +k=A.ag(a3) +j=k instanceof A.jl +if(j)if(k.b===B.aAh){q=A.cGP(k.a,a2.a,a6) +s=1 +break}i=j?k.a:k +throw A.d(A.cwf(i,a2.a)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Wo,r)}, +Eo(a,b){return this.b_D(a,b)}, +b_D(a3,a4){var s=0,r=A.p(t.k8),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +var $async$Eo=A.l(function(a5,a6){if(a5===1){o=a6 +s=p}while(true)switch(s){case 0:a1=a3.cy +p=4 +s=7 +return A.i(n.Ue(a3),$async$Eo) +case 7:m=a6 +f=n.aan$ +f===$&&A.b() +e=a1 +e=e==null?null:e.gbKm() +s=8 +return A.i(f.Wp(0,a3,m,e),$async$Eo) +case 8:l=a6 +e=l.f +f=a3.c +f===$&&A.b() +k=A.cIz(e,f) +l.f=k.b +l.toString +f=A.a([],t.Bw) +e=l.a +d=l.c +c=l.d +j=A.cyL(null,l.r,k,e,f,a3,d,c,t.z) +i=a3.bHR(l.c) +if(!i){f=a3.x +f===$&&A.b()}else f=!0 +s=f?9:11 +break +case 9:l.b=A.dsO(a3,l) +s=12 +return A.i(n.azn$.ZS(a3,l),$async$Eo) +case 12:h=a6 +if(typeof h=="string")if(J.bn(h)===0)if(A.c6(a4)!==B.ma)if(A.c6(a4)!==B.yk){f=a3.r +f===$&&A.b() +f=f===B.lH}else f=!1 +else f=!1 +else f=!1 +else f=!1 +if(f)h=null +j.a=h +s=10 +break +case 11:J.GT(l) +case 10:if(i){q=j +s=1 +break}else{f=l.c +if(f>=100&&f<200)b="This is an informational response - the request was received, continuing processing" +else if(f>=200&&f<300)b="The request was successfully received, understood, and accepted" +else if(f>=300&&f<400)b="Redirection: further action needs to be taken in order to complete the request" +else if(f>=400&&f<500)b="Client error - the request contains bad syntax or cannot be fulfilled" +else b=f>=500&&f<600?"Server error - the server failed to fulfil an apparently valid request":"A response with a status code that is not within the range of inclusive 100 to exclusive 600is a non-standard response, possibly due to the server's software" +a=A.deb("") +f=""+f +a.Ic("This exception was thrown because the response has a status code of "+f+" and RequestOptions.validateStatus was configured to throw for this status code.") +a.Ic("The status code of "+f+' has the following meaning: "'+b+'"') +a.Ic("Read more about status codes at https://developer.mozilla.org/en-US/docs/Web/HTTP/Status") +a.Ic("In order to resolve this exception you typically have either to verify and fix your request code or you have to fix the server code.") +f=A.a1M(null,a.k(0),a3,j,null,B.ahh) +throw A.d(f)}p=2 +s=6 +break +case 4:p=3 +a2=o +g=A.ag(a2) +f=A.cwf(g,a3) +throw A.d(f) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Eo,r)}, +b8i(a){var s,r,q +for(s=new A.e0(a),r=t.Hz,s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("a2.E");s.t();){q=s.d +if(q==null)q=r.a(q) +if(q>=128||" ! #$%&' *+ -. 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ ^_`abcdefghijklmnopqrstuvwxyz | ~ ".charCodeAt(q)===32)return!1}return!0}, +Ue(a){return this.bkh(a)}, +bkh(a){var s=0,r=A.p(t.Dt),q,p=this,o,n,m,l,k,j,i,h,g,f +var $async$Ue=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:g={} +f=a.a +f===$&&A.b() +if(!p.b8i(f))throw A.d(A.ey(a.gbB7(0),"method",null)) +s=a.CW!=null?3:4 +break +case 3:g.a=null +s=5 +return A.i(p.azn$.adL(a),$async$Ue) +case 5:o=c +n=B.bo.cD(o) +m=n.length +g.a=m +f=a.b +f===$&&A.b() +f.n(0,"content-length",B.d.k(m)) +l=A.a([],t.Zb) +k=B.e.dO(n.length/1024) +for(j=0;j)")}} +A.nj.prototype={ +gOw(){var s=this.b.gfh() +return s}, +k(a){var s=this.a +if(t.f.b(s))return B.aO.ug(s) +return J.cw(s)}} +A.csw.prototype={ +$0(){var s=this.a,r=s.b +if(r!=null)r.ao(0) +s.b=null +s=this.c +if(s.b==null)s.b=$.EN.$0() +s.b6(0)}, +$S:0} +A.csx.prototype={ +$0(){var s,r,q=this,p=q.b +if(p.a<=0)return +s=q.a +r=s.b +if(r!=null)r.ao(0) +r=q.c +r.b6(0) +r.j9(0) +s.b=A.d3(p,new A.csy(q.d,q.e,q.f,q.r,p,q.w))}, +$S:0} +A.csy.prototype={ +$0(){var s=this +s.a.$0() +s.b.aO(0) +J.cEq(s.c.aX()) +A.cQ7(s.d,A.cwe(s.f,s.e),null)}, +$S:0} +A.cst.prototype={ +$1(a){var s=this +s.b.$0() +if(A.cp(0,0,s.c.gMF(),0,0,0).a<=s.d.a)s.e.B(0,a)}, +$S:1764} +A.csv.prototype={ +$2(a,b){this.a.$0() +A.cQ7(this.b,a,b)}, +$S:126} +A.csu.prototype={ +$0(){this.a.$0() +J.cEq(this.b.aX()) +this.c.aO(0)}, +$S:0} +A.bNr.prototype={} +A.bNs.prototype={ +$2(a,b){if(b==null)return a +return a+"="+A.vb(B.jb,J.cw(b),B.ai,!0)}, +$S:443} +A.bNt.prototype={ +$2(a,b){if(b==null)return a +return a+"="+A.r(b)}, +$S:443} +A.anD.prototype={} +A.bJI.prototype={ +adL(a){return this.bHi(a)}, +bHi(a){var s=0,r=A.p(t.N),q,p,o +var $async$adL=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=a.CW +if(o==null)o="" +if(typeof o!="string"){p=a.b +p===$&&A.b() +p=A.cNe(A.bw(p.i(0,"content-type")))}else p=!1 +if(p){q=A.dpZ().$1(o) +s=1 +break}else if(t.f.b(o)){if(t.a.b(o)){p=a.ay +p===$&&A.b() +q=A.dg1(o,p) +s=1 +break}A.I(o).k(0) +A.pw() +q=A.hj(o) +s=1 +break}else{q=J.cw(o) +s=1 +break}case 1:return A.n(q,r)}}) +return A.o($async$adL,r)}, +ZS(a,b){return this.bHj(a,b)}, +bHj(a,b){var s=0,r=A.p(t.z),q,p=this,o,n,m,l,k,j +var $async$ZS=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:k=a.r +k===$&&A.b() +if(k===B.X3){q=b +s=1 +break}j=J +s=3 +return A.i(b.b.eO(0),$async$ZS) +case 3:o=j.d0Q(d,new A.bJJ(),t.S) +n=new Uint8Array(A.f1(A.R(o,!0,o.$ti.h("B.E")))) +if(k===B.x5){q=n +s=1 +break}o=b.f.i(0,"content-type") +m=A.cNe(o==null?null:J.jD(o)) +l=!m||!B.p.gad(n)?B.ai.yF(0,n,!0):null +if(l!=null&&l.length!==0&&k===B.lH&&m){q=p.a.$1(l) +s=1 +break}q=l +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$ZS,r)}} +A.bJJ.prototype={ +$1(a){return a}, +$S:1827} +A.crU.prototype={ +$1(a){if(!this.a||a==null||typeof a!="string")return a +return this.b.$1(a)}, +$S:157} +A.crV.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.b,e=A.dm6(f,g.c),d=t.j +if(d.b(a)){s=f===B.EQ +if(s||f===B.aBw)for(r=J.ao(a),q=g.f,p=g.d,o=g.e,n=b+o,m=t.f,l=0;l"),m=a;s.t();){l=s.d +k=(l==null?p.a(l):l).b[0] +k.toString +j=q.kt(0,k) +i=j.gaz(0) +if(!i.t())A.C(A.dB()) +h=i.gK(0).b[0] +h.toString +i=j.gaz(0) +if(!i.t())A.C(A.dB()) +g=i.gK(0).b[1] +h=A.cj(k,h,"") +f=d.Tt(A.cj(h,r,"")) +if(g!=null)if(o.aB(0,g))f=o.i(0,g).$1(f) +else{h=$.pS() +e=A.cxC(new A.bR(o,n),"(",")") +if(h.pr(0,B.j4))h.f.$4$level$name$stackTrace("Undefined modifier "+g+", available modifiers: "+e,B.j4,h.b,null)}if(!(f.length===0))m=A.cj(m,k,f)}return m}, +aqK(a,b){var s,r,q +if(b==null||!1)return a +for(s=this.d,r=0;b.length,r<1;b.length,++r){q=b[r] +a=A.ctV(a,s,q,0)}return a}, +aqL(a,b){var s={} +s.a=a +if(b==null||b.a===0)return a +b.aE(0,new A.bpl(s)) +return s.a}, +bE9(a,b,c,d,e,f){var s,r,q,p=this,o=A.aF("res"),n=p.c +n===$&&A.b() +n=n.gi4(0) +$.mL=b +$.dnw=0 +$.j3=B.d.aF(b) +$.ky=0 +s=A.bZ(Math.pow(10,0)) +r=B.d.M(B.d.ec(b*s),s) +$.Bt=r +A.dop(r,$.ky) +q=$.d0y().i(0,n) +switch((q!=null?q.$0():A.d9n(b)).a){case 0:o.b=p.EX(a,"zero") +break +case 1:o.b=p.EX(a,"one") +break +case 2:o.b=p.EX(a,"two") +break +case 3:o.b=p.EX(a,"few") +break +case 4:o.b=p.EX(a,"many") +break +case 5:o.b=p.EX(a,"other") +break +default:throw A.d(A.ey(b,"howMany","Invalid plural argument"))}o.b=p.aqL(o.aX(),f) +n=o.aX() +return p.aqK(n,c==null?A.a([""+b],t.s):c)}, +EX(a,b){var s,r,q=this +if(b==="other")return q.Tt(a+".other") +s=a+"."+b +r=q.aqW(s,q.b!=null,!1) +return r===s?q.Tt(a+".other"):r}, +aqW(a,b,c){var s,r=null,q=this.a,p=q==null?r:q.d3(0,a) +if(p!=null)q=!1 +else q=!0 +if(q){if(c)$.pS().$3$level$stackTrace("Localization key ["+a+"] not found",B.j4,r) +q=this.b +s=q==null +if(s||!b)return a +else{p=s?r:q.d3(0,a) +if(p!=null)q=!1 +else q=!0 +if(q){if(c)$.pS().$3$level$stackTrace("Fallback localization key ["+a+"] not found",B.j4,r) +return a}}}return p}, +Tt(a){return this.aqW(a,!0,!0)}} +A.bpi.prototype={ +$1(a){return a.toUpperCase()}, +$S:136} +A.bpj.prototype={ +$1(a){return a.toLowerCase()}, +$S:136} +A.bpk.prototype={ +$1(a){return a[0].toUpperCase()+B.c.b0(a,1)}, +$S:136} +A.bpl.prototype={ +$2(a,b){var s=this.a,r=s.a,q=A.b4("{"+a+"}",!0,!1,!1) +return s.a=A.cj(r,q,b)}, +$S:152} +A.uc.prototype={ +H(){return"PluralCase."+this.b}} +A.aH2.prototype={ +d3(a,b){var s=this.a,r=!s.aB(0,b)&&B.c.p(b,".")?this.aIY(b):null +if(r==null)r=s.i(0,b) +return r}, +aIY(a){var s,r,q,p,o,n=this.b +if(n.aB(0,a))return n.i(0,a) +s=a.split(".") +r=this.a +q=r.i(0,B.b.ga2(s)) +for(p=t.a,o=1;o>>0!==0)if(o)throw A.d(A.bM("Invalid value in input: "+A.r(l)+" at position "+n+' in "'+A.dp(a,b,i)+'"',k,k)) +else{if(m==null)m=A.ew(a,!0,r) +m[n]=65533}else if(l>s){if(m==null)m=A.ew(a,!0,r) +m[n]=q.charCodeAt(l-p)}else if(l<=0){if(m==null)m=A.ew(a,!0,r) +m[n]=k.p9(0,l-1)}}return A.dp(m==null?a:m,b,c)}, +cD(a){return this.BN(a,0,null)}, +lr(a){var s=t.NC.b(a)?a:new A.Bk(a) +return new A.b5R(s,this.d,this)}} +A.b5R.prototype={ +aO(a){this.a.aO(0)}, +B(a,b){this.hg(b,0,J.bn(b),!1)}, +hg(a,b,c,d){var s,r=this +A.dM(b,c,J.bn(a),null,null) +if(b===c)return +if(!r.b&&!t.E.b(a))r.aY7(a,b,c) +s=r.a +s.B(0,r.c.BN(a,b,c)) +if(d)s.aO(0)}, +aY7(a,b,c){var s,r,q +for(s=J.ao(a),r=b;r255)throw A.d(A.bM("Source contains non-8-bit character code 0x"+B.d.k9(q,16)+" at "+r+".",a,r))}}} +A.P0.prototype={ +gh2(){return B.a1Z}} +A.ao0.prototype={ +cD(a){var s,r,q,p,o,n,m,l=null,k=J.ao(a),j=A.dM(0,l,k.gA(a),l,l),i=new A.bu(""),h=new A.b6b(i) +for(s=this.a,r=0;r=k.gA(a)){h.$1(65533) +o=1 +continue}m=B.b3n.i(0,q*16*16+k.i(a,n)) +if(m!=null){h.$1(m) +o=2 +continue}o=2}else{if(!s)throw A.d(A.bM("Encountered invalid rune "+A.r(q)+" at position "+r,l,l)) +o=1}p=65533}h.$1(p) +continue}k=i.a +return k.charCodeAt(0)==0?k:k}} +A.b6b.prototype={ +$1(a){this.a.a+=A.cm(a) +return null}, +$S:12} +A.Rg.prototype={ +hF(a,b){return new A.a3F(!0).cD(b)}, +gh2(){return B.akd}} +A.a3F.prototype={ +cD(a){var s,r,q,p,o=A.dM(0,null,J.bn(a),null,null),n=A.dnO(a,0,o) +if(n>0){s=A.dp(a,0,n) +if(n===o)return s +r=new A.bu(s) +q=n}else{r=new A.bu("") +q=0}p=new A.aPC(this.a,r) +p.BN(a,q,o) +p.azR(0,a,o) +p=r.a +return p.charCodeAt(0)==0?p:p}, +lr(a){var s=t.NC.b(a)?a:new A.Bk(a),r=new A.bu("") +return new A.c1_(new A.aPC(this.a,r),s,r)}} +A.c1_.prototype={ +aO(a){var s,r,q,p +this.a.wi(0) +s=this.c +r=s.a +q=this.b +if(r.length!==0){p=r.charCodeAt(0)==0?r:r +s.a="" +q.hg(p,0,p.length,!0)}else q.aO(0)}, +B(a,b){this.hg(b,0,J.bn(b),!1)}, +hg(a,b,c,d){var s,r,q,p=this +p.a.BN(a,b,c) +s=p.c +r=s.a +if(r.length!==0){q=r.charCodeAt(0)==0?r:r +p.b.hg(q,0,q.length,d) +s.a="" +return}if(d)p.aO(0)}} +A.aPC.prototype={ +azR(a,b,c){var s=this +if(s.c>-1){if(!s.a)throw A.d(A.bM("Unfinished GBK octet sequence",b,c)) +s.b.a+=A.cm(65533) +s.c=-1}}, +wi(a){return this.azR(0,null,null)}, +BN(a,b,c){var s,r,q,p,o,n,m,l=this,k="Bad GBK encoding 0x",j=l.c +if(j>-1){s=(j<<8>>>0)+(J.aS(a,0)&255) +r=B.Qp.i(0,s) +j=r==null +if(j&&!l.a)throw A.d(A.bM(k+B.d.k9(s,16),s,null)) +q=l.b +if(!j)q.a+=A.cm(r) +else q.a+=A.cm(65533) +l.c=-1 +p=b+1}else p=b +for(j=l.b,q=J.ao(a),o=!l.a,n=p;n>>0)+(q.i(a,n)&255) +if(s===65279)continue +r=B.Qp.i(0,s) +m=r==null +if(m&&o)throw A.d(A.bM(k+B.d.k9(s,16),s,null)) +if(!m)j.a+=A.cm(r) +else j.a+=A.cm(65533)}}}} +A.awq.prototype={} +A.S1.prototype={ +gh2(){return B.aAR}} +A.awo.prototype={} +A.S2.prototype={ +gh2(){return B.aAS}} +A.awp.prototype={} +A.awG.prototype={} +A.S3.prototype={ +gh2(){return B.aAV}} +A.awr.prototype={} +A.S4.prototype={ +gh2(){return B.aAW}} +A.aws.prototype={} +A.S5.prototype={ +gh2(){return B.aAX}} +A.awt.prototype={} +A.S6.prototype={ +gh2(){return B.aAY}} +A.awu.prototype={} +A.S7.prototype={ +gh2(){return B.aAZ}} +A.awv.prototype={} +A.S8.prototype={ +gh2(){return B.aB_}} +A.aww.prototype={} +A.S9.prototype={ +gh2(){return B.aB1}} +A.awy.prototype={} +A.Sa.prototype={ +gh2(){return B.aB2}} +A.awz.prototype={} +A.Sb.prototype={ +gh2(){return B.aB3}} +A.awA.prototype={} +A.Sc.prototype={ +gh2(){return B.aB4}} +A.awB.prototype={} +A.Sd.prototype={ +gh2(){return B.aB5}} +A.awC.prototype={} +A.Se.prototype={ +gh2(){return B.aB6}} +A.awD.prototype={} +A.Sf.prototype={ +gh2(){return B.aB7}} +A.awE.prototype={} +A.Sg.prototype={ +gh2(){return B.aB8}} +A.awF.prototype={} +A.aJJ.prototype={} +A.Wy.prototype={ +gh2(){return B.by6}} +A.aJD.prototype={} +A.Wz.prototype={ +gh2(){return B.by7}} +A.aJE.prototype={} +A.WA.prototype={ +gh2(){return B.by8}} +A.aJF.prototype={} +A.WB.prototype={ +gh2(){return B.by9}} +A.aJG.prototype={} +A.WC.prototype={ +gh2(){return B.bya}} +A.aJH.prototype={} +A.WD.prototype={ +gh2(){return B.byb}} +A.aJI.prototype={} +A.t9.prototype={ +H(){return"VComponentType."+this.b}} +A.AL.prototype={ +i(a,b){return A.rw(this.c,new A.bO6(b))}, +n(a,b,c){var s=this.c +if(!!s.fixed$length)A.C(A.aq("removeWhere")) +B.b.kp(s,new A.bO5(b),!0) +s.push(c)}, +aLp(a,b){this.n(0,b.c,b) +return b}, +afK(a,b){if(b!=null)this.aLp(0,b) +else this.mu(0,a)}, +mu(a,b){var s=this.c +if(!!s.fixed$length)A.C(A.aq("removeWhere")) +B.b.kp(s,new A.bO7(b),!0) +return null}, +k6(a){var s,r,q=a.a+="BEGIN:",p=this.b +q+=p +a.a=q +a.a=q+"\r\n" +for(q=this.c,s=q.length,r=0;r").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +if(q==null)q=r.a(q) +p=a.a+=";" +p+=q.a +a.a=p +p+="=" +a.a=p +a.a=p+q.b}s=a.a+=":" +a.a=s+this.d}, +k(a){var s,r,q,p,o,n,m,l=new A.bu("") +this.k6(l) +s=l.a +if(s.length>72){r=s.charCodeAt(0)==0?s:s +q=new A.bu("") +s=""+B.c.R(r,0,72) +q.a=s +s=q.a=s+"\r\n" +for(p=r.length,o=p-73,n=72;n0&&B.c.eV(r,"=")){r=B.c.R(r,0,q-1) +q=B.d.M(r.length,4) +o=q===0?0:4-q}if(o>0){for(q=r,s=!0;s;){q+="=";--o +s=o>0}r=q.charCodeAt(0)==0?q:q}return B.eX.cD(r)}, +Ml(a,b,c){return b.hF(0,this.aym(a))}, +BU(a,b){return this.Ml(a,b,!1)}} +A.a3T.prototype={ +H(){return"HeaderEncoding."+this.b}} +A.bq3.prototype={} +A.bq4.prototype={ +$0(){return B.qw}, +$S:305} +A.bq5.prototype={ +$0(){return B.qw}, +$S:305} +A.bq6.prototype={ +$0(){return B.uY}, +$S:244} +A.bqh.prototype={ +$0(){return B.uY}, +$S:244} +A.bqs.prototype={ +$0(){return B.uY}, +$S:244} +A.bqD.prototype={ +$0(){return B.Aq}, +$S:334} +A.bqO.prototype={ +$0(){return B.Aq}, +$S:334} +A.bqZ.prototype={ +$0(){return B.Ar}, +$S:336} +A.br7.prototype={ +$0(){return B.Ar}, +$S:336} +A.br8.prototype={ +$0(){return B.As}, +$S:337} +A.br9.prototype={ +$0(){return B.As}, +$S:337} +A.bq7.prototype={ +$0(){return B.At}, +$S:340} +A.bq8.prototype={ +$0(){return B.At}, +$S:340} +A.bq9.prototype={ +$0(){return B.Au}, +$S:357} +A.bqa.prototype={ +$0(){return B.Au}, +$S:357} +A.bqb.prototype={ +$0(){return B.Av}, +$S:369} +A.bqc.prototype={ +$0(){return B.Av}, +$S:369} +A.bqd.prototype={ +$0(){return B.Aw}, +$S:373} +A.bqe.prototype={ +$0(){return B.Aw}, +$S:373} +A.bqf.prototype={ +$0(){return B.Ax}, +$S:378} +A.bqg.prototype={ +$0(){return B.Ax}, +$S:378} +A.bqi.prototype={ +$0(){return B.Ak}, +$S:385} +A.bqj.prototype={ +$0(){return B.Ak}, +$S:385} +A.bqk.prototype={ +$0(){return B.Al}, +$S:387} +A.bql.prototype={ +$0(){return B.Al}, +$S:387} +A.bqm.prototype={ +$0(){return B.Am}, +$S:401} +A.bqn.prototype={ +$0(){return B.Am}, +$S:401} +A.bqo.prototype={ +$0(){return B.An}, +$S:403} +A.bqp.prototype={ +$0(){return B.An}, +$S:403} +A.bqq.prototype={ +$0(){return B.Ao}, +$S:421} +A.bqr.prototype={ +$0(){return B.Ao}, +$S:421} +A.bqt.prototype={ +$0(){return B.Ap}, +$S:433} +A.bqu.prototype={ +$0(){return B.Ap}, +$S:433} +A.bqv.prototype={ +$0(){return B.rF}, +$S:267} +A.bqw.prototype={ +$0(){return B.rF}, +$S:267} +A.bqx.prototype={ +$0(){return B.rF}, +$S:267} +A.bqy.prototype={ +$0(){return B.AL}, +$S:436} +A.bqz.prototype={ +$0(){return B.AL}, +$S:436} +A.bqA.prototype={ +$0(){return B.rG}, +$S:271} +A.bqB.prototype={ +$0(){return B.rG}, +$S:271} +A.bqC.prototype={ +$0(){return B.rG}, +$S:271} +A.bqE.prototype={ +$0(){return B.rH}, +$S:288} +A.bqF.prototype={ +$0(){return B.rH}, +$S:288} +A.bqG.prototype={ +$0(){return B.rH}, +$S:288} +A.bqH.prototype={ +$0(){return B.rI}, +$S:185} +A.bqI.prototype={ +$0(){return B.rI}, +$S:185} +A.bqJ.prototype={ +$0(){return B.rI}, +$S:185} +A.bqK.prototype={ +$0(){return B.rJ}, +$S:186} +A.bqL.prototype={ +$0(){return B.rJ}, +$S:186} +A.bqM.prototype={ +$0(){return B.rJ}, +$S:186} +A.bqN.prototype={ +$0(){return B.dI}, +$S:47} +A.bqP.prototype={ +$0(){return B.dI}, +$S:47} +A.bqQ.prototype={ +$0(){return B.dI}, +$S:47} +A.bqR.prototype={ +$0(){return B.dI}, +$S:47} +A.bqS.prototype={ +$0(){return B.dI}, +$S:47} +A.bqT.prototype={ +$0(){return B.dI}, +$S:47} +A.bqU.prototype={ +$0(){return B.dI}, +$S:47} +A.bqV.prototype={ +$0(){return B.dI}, +$S:47} +A.bqW.prototype={ +$0(){return B.dI}, +$S:47} +A.bqX.prototype={ +$0(){return B.dI}, +$S:47} +A.bqY.prototype={ +$0(){return B.dI}, +$S:47} +A.br_.prototype={ +$0(){return B.dI}, +$S:47} +A.br0.prototype={ +$0(){return B.Aa}, +$S:476} +A.br1.prototype={ +$0(){return B.Aa}, +$S:476} +A.br2.prototype={ +$0(){return B.Aj}, +$S:480} +A.br3.prototype={ +$0(){return B.Aj}, +$S:480} +A.br4.prototype={ +$0(){return B.a4W}, +$S:636} +A.br5.prototype={ +$0(){return B.zy}, +$S:506} +A.br6.prototype={ +$0(){return B.zy}, +$S:506} +A.btu.prototype={ +ble(a,b,c){if(c>0)a.a+=u.et[B.d.hN(b,6-c)&63] +a.a+="-"}, +az2(a){var s,r,q,p,o,n,m,l,k=u.et,j=new A.bu("") +for(s=a.length,r=!1,q=0,p=0,o=0;o=32&&m<127){if(r){if(q>0)j.a+=k[B.d.hN(p,6-q)&63] +j.a+="-" +r=!1 +q=0}l=j.a +if(m===38)j.a=l+"&-" +else j.a=l+n}else{if(!r){j.a+="&" +r=!0}p=(p<<16|m&65535)>>>0 +q+=16 +for(;q>=6;){q-=6 +j.a+=k[B.d.mS(p,q)&63]}}}if(r)this.ble(j,p,q) +s=j.a +return s.charCodeAt(0)==0?s:s}, +ayp(a){var s,r,q,p,o,n,m,l,k,j=new A.bu("") +for(s=a.length,r=!1,q=0,p=0,o=0;o127)return a +else{k=B.aJs[l] +if(k===255)return a +p=(p<<6|k)>>>0 +q+=6 +if(q>=16){q-=16 +j.a+=A.cm(B.d.mS(p,q)&65535)}}r=!0}o=n}else if(m==="&"&&nl+4&&c[l+3]==="="))break +l+=3 +J.eQ(s,A.cA(B.c.R(c,l+1,l+3),16))}try{r=b.hF(0,s) +d.a+=A.r(r)}catch(f){e=A.ag(f) +if(o.b(e)){q=e +h="unable to decode quotedPrintable buffer: "+J.amz(q) +g=$.mP +if(g==null)A.mO(h) +else g.$1(h) +d.a+=A.dp(s,0,null)}else throw f}}l+=2}else if(a0&&k==="_")d.a+=" " +else d.a+=k}p=d.a +return p.charCodeAt(0)==0?p:p}, +BU(a,b){return this.Ml(a,b,!1)}} +A.anW.prototype={ +k(a){return A.I(this).k(0)+": "+this.a}, +$ibP:1} +A.awa.prototype={} +A.tB.prototype={ +eZ(){return A.a1(["name",this.a],t.N,t.z)}, +k(a){return this.a}, +l(a,b){if(b==null)return!1 +return b instanceof A.tB&&b.a===this.a}, +gv(a){return B.c.gv(this.a)}} +A.bn9.prototype={ +ahL(a,b){var s=this.f +return(s==null?null:A.rw(s,new A.bna(b)))!=null}} +A.bna.prototype={ +$1(a){return a.a===this.a}, +$S:640} +A.avW.prototype={ +acf(a,b){return this.bBN(a,b)}, +bBN(a,b){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k,j,i,h,g +var $async$acf=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q.cy=!1 +m=new A.bn9(A.a([],t.or)) +q.as=m +l=B.c.c2(b,"[CAPABILITY ") +if(l!==-1)A.b8m(b,l+12,m) +m=q.dx +k=m.length +if(k!==0){for(j=0;j")),q=new A.PQ(a,s,b,new A.Un(c.h("Un<0>")),new A.aI(r,c.h("aI<0>")),c.h("PQ<0>")) +this.ch.n(0,s,q) +this.bEM(q) +return r}, +bEM(a){var s=this.dx +s.push(a) +if(s.length===1)this.Ta()}, +Ta(){var s=0,r=A.p(t.z),q=this,p +var $async$Ta=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.dx +case 2:if(!(p.length!==0)){s=3 +break}s=4 +return A.i(q.KI(p[0]),$async$Ta) +case 4:if(p.length!==0)B.b.fE(p,0) +s=2 +break +case 3:return A.n(null,r)}}) +return A.o($async$Ta,r)}, +KI(a){return this.beD(a)}, +beD(a){var s=0,r=A.p(t.z),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$KI=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:n.ay=a +p=4 +h=a.a +s=7 +return A.i(n.Pl(0,a.b+" "+h.a,a,h.e),$async$KI) +case 7:p=2 +s=6 +break +case 4:p=3 +f=o +m=A.ag(f) +l=A.aD(f) +n.NK("unable to process task "+a.k(0)+": "+A.r(m)+" "+A.r(l)) +h=a.e +if((h.a.a&30)===0)h.iy(m,l) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:p=9 +k=a.a.f +h=a.e +A.d6P(h,k,n) +s=12 +return A.i(h.a,$async$KI) +case 12:p=2 +s=11 +break +case 9:p=8 +e=o +j=A.ag(e) +i=A.aD(e) +h=a.e +if((h.a.a&30)===0){n.zw("ImapClient._processTask: forward error to completer: "+A.r(j),"A") +h.iy(j,i)}s=11 +break +case 8:s=2 +break +case 11:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$KI,r)}, +bCO(a){var s,r,q=this +q.aBW(a,!1) +s=a.gkS() +if(B.c.aC(s,"* ")){a.b=B.c.b0(s,2) +r=q.ay +if(r==null||!r.c.wF(a,r.d))q.NK("untagged not handled: ["+a.k(0)+"] by task "+A.r(r))}else if(B.c.aC(s,"+ ")){a.b=B.c.b0(s,2) +q.acg(a)}else q.bBK(a)}, +bBK(a){var s,r,q,p,o,n,m,l,k=this,j=a.gkS(),i=B.c.c2(j," ") +if(i!==-1){o=B.c.R(j,0,i) +s=k.ch.i(0,o) +if(s!=null){if(J.q(s,k.ay))k.ay=null +a.b=B.c.b0(j,i+1) +n=s +if(B.c.aC(a.gkS(),"OK ")){m=n.d +m.a=B.i7}else if(B.c.aC(a.gkS(),"NO ")){m=n.d +m.a=B.bk7 +m.b=a.gkS().length>3?B.c.b0(a.gkS(),3):a.gkS()}else{m=n.d +m.a=B.bk8 +m.b=a.gkS()}m.c=n.c.wE(0,a,m) +r=m +try{if((s.e.a.a&30)===0)if(r.a===B.i7)s.e.d2(0,r.c) +else s.e.jh(new A.RD(r.b))}catch(l){q=A.ag(l) +p=A.aD(l) +A.eP("Unable to complete task "+A.r(s.a.b)+": "+A.r(q)+" "+A.r(p)) +A.eP("response: "+a.gkS()) +A.eP("result: "+A.r(r.c)) +try{s.e.jh(new A.RD(r.b))}catch(l){if(!t.VI.b(A.ag(l)))throw l}}}else k.NK("ERROR: no task found for command ["+o+"]")}else k.NK("unexpected SERVER response: ["+a.k(0)+"]")}, +acg(a){return this.bBO(a)}, +bBO(a){var s=0,r=A.p(t.z),q=this,p,o +var $async$acg=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.ay +o=p==null?null:p.a +if(o!=null)o.aIx(a) +q.zw("continuation not handled: ["+a.k(0)+"], current cmd: "+A.r(o),"A") +return A.n(null,r)}}) +return A.o($async$acg,r)}} +A.bn6.prototype={} +A.bnc.prototype={} +A.bn7.prototype={} +A.bn5.prototype={} +A.RD.prototype={ +k(a){var s=""+A.r(this.b) +return s.charCodeAt(0)==0?s:s}, +$ibP:1} +A.jM.prototype={ +H(){return"MailboxFlag."+this.b}} +A.Ka.prototype={ +k(a){var s=this,r=""+'"'+s.c+'" exists: '+s.r+", highestModeSequence: "+A.r(s.as)+", flags: "+A.r(s.at) +return r.charCodeAt(0)==0?r:r}, +gv(a){return B.c.gv(this.b)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.Ka&&this.b===b.b +else s=!0 +return s}} +A.a5O.prototype={ +aUV(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=a.split(",") +if(J.q(f[0],"NIL")){h.f=!0 +h.e=null}else for(s=f.length,r=h.b,q=t.t,p=0;p in "+a))}else{k=B.c.c2(o,":") +if(k===-1)throw A.d(A.za("expect colon in <"+o+"> / "+a)) +j=A.cY(B.c.R(o,0,k),g) +i=A.cY(B.c.b0(o,k+1),g) +if(j==null||i==null)throw A.d(A.za("expect range in <"+o+"> / "+a)) +h.av3(0,j,i)}}}, +eZ(){return A.a1(["isUidSequence",this.a],t.N,t.z)}, +gA(a){return this.eO(0).length}, +gad(a){var s +if(!this.c)s=this.b.length===0 +else s=!1 +return s}, +gcU(a){var s +if(!this.c)s=this.b.length!==0 +else s=!0 +return s}, +av3(a,b,c){var s,r,q,p,o=this +if(b===c){o.b.push(b) +o.e=null +return}s=o.gad(0) +r=t.t +q=o.b +if(b0;){s.L(0,B.b.cK(r,o,q)) +n=A.a([],p) +m=s.f +if(m==null)A.C(A.a0("No elements")) +l=m.a+1 +null.toString +for(;B.d.pO(l,null);++l)n.push(l) +s.L(0,n) +o=q+1 +q=B.b.hj(r,-1,o)}if(o>=0&&q===-1)s.L(0,B.b.hs(r,o)) +s.F(0,0) +return A.R(s,!0,k.h("cZ.E"))}, +k(a){var s,r=this.e +if(r!=null)return r +s=new A.bu("") +this.k6(s) +r=s.a +return r.charCodeAt(0)==0?r:r}, +k6(a){var s,r,q,p,o,n=this +if(n.f){a.a+="NIL" +return}s=n.e +if(s!=null){a.a+=s +return}if(n.gad(0))throw A.d(A.za("no ID added to sequence")) +s=n.b +if(s.length===1)a.a+=A.r(s[0]) +else{for(r=0,q=0;q0){p=a.a+=":" +a.a=p+r +r=0}p=J.q(s[q],-1) +o=a.a +if(p){p=o+":" +a.a=p +a.a=p+"*"}else{a.a=o+"," +a.a+=A.r(J.q(s[q],0)?"*":s[q])}}if(r>0){s=a.a+=":" +a.a=s+r}}}} +A.a8t.prototype={ +H(){return"ResponseStatus."+this.b}} +A.Un.prototype={} +A.a31.prototype={} +A.E5.prototype={ +eZ(){return A.a1(["personalName",this.a,"email",this.b],t.N,t.z)}, +k(a){var s,r=this.a +if(r==null)return this.b +s=B.c.du(r) +r=(s.length!==0===!0?""+'"'+r+'" ':"")+"<"+this.b+">" +return r.charCodeAt(0)==0?r:r}, +gv(a){var s=B.c.gv(this.b),r=this.a +r=r==null?null:B.c.gv(r) +return s+(r==null?0:r)}, +l(a,b){if(b==null)return!1 +return b instanceof A.E5&&b.b===this.b&&b.a==this.a}} +A.ql.prototype={ +H(){return"MediaToptype."+this.b}} +A.cl.prototype={ +H(){return"MediaSubtype."+this.b}} +A.a5G.prototype={ +k(a){return this.a}} +A.SQ.prototype={ +gLW(a){var s=this.b2b("content-type"),r=s==null?null:s.b,q=r!=null?A.cvQ(r):null +return q}, +ne(a,b){var s=this +if(s.e&&!0)return +s.e=!0 +s.f=b +s.apM(b)}, +b2b(a){var s=this.b +return s==null?null:A.rw(s,new A.bt4(a))}, +k(a){var s,r=new A.bu("") +this.k6(r) +s=r.a +return s.charCodeAt(0)==0?s:s}} +A.bt4.prototype={ +$1(a){return a.d===this.a}, +$S:511} +A.ME.prototype={ +apM(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.x +if(g.a){if(B.c.aC(e,"\r\n"))e=B.c.b0(e,2) +else{s=A.aB6(A.a(e.split("\r\n"),t.s)) +r=s.b +if(r!=null)e=r>=e.length?"":B.c.b0(e,r) +g.b=s.a}a=g.gLW(0)}g.y=e +r=a==null +if(r)q=f +else{q=a.d +q===$&&A.b() +q=q.b===B.jt}if(q===!0){p=B.c.c2(e,"\r\n\r\n") +r=A.b4('boundary="(.+)"',!0,!1,!1).im(B.c.R(g.y,0,p)) +o=r==null?f:r.b[1]}else o=r?f:a.f +if(o!=null){g.c=A.a([],t.Gw) +r="--"+o +n=r+"\r\n" +m=A.a(e.split(n),t.s) +if(!B.c.aC(e,n))B.b.fE(m,0) +if(m.length!==0){l=B.b.gP(m) +k=B.c.na(l,r+"--") +if(k!==-1){m.pop() +m.push(B.c.R(l,0,k))}for(r=m.length,j=0;j0){p=A.cFv(A.abF(n.z,0,q),new A.e0('boundary="')) +if(p>0){s=n.z +r=p+10 +o=A.dp(B.p.cK(s,r,B.p.hj(s,34,r+1)),0,m)}else o=m}else o=m}else o=s?m:a.f +if(o!=null)n.c=n.biG(o,n.z)}n.z===$&&A.b()}, +biG(a,b){var s,r,q,p,o,n,m,l="--"+a,k=l+"\r\n",j=A.a([],t.Pf),i=b.length,h=k.length,g=i-3*h +for(s=null,r=0;rs;--r){p=0 +while(!0){if(!(p1&&q[0]===13&&q[1]===10){this.y=2 +return A.a([],t.YZ)}for(p-=4,s=0;s"))}, +Lo(a,b){var s,r=this.a +if(r==null)r=this.a=A.a([],t.YZ) +if(b!=null)s=b +else s=b +r.push(new A.Je(a,s,a.toLowerCase()))}, +td(){var s,r=this.r +if(r==null){s=this.r9("content-type") +if(s==null)return null +r=this.r=A.cvQ(s)}return r}, +aeG(){var s,r=this.w +if(r!=null)return r +s=this.r9("content-disposition") +if(s==null)return null +return this.w=A.cG7(s)}, +ax_(a,b,c,d,e){var s,r,q,p,o,n,m,l,k=this,j=null +e=e===!0 +s=d===!1 +d=!s +r=k.aeG() +q=k.td() +if(q==null)q=j +else{q=q.d +q===$&&A.b() +q=q.b===B.jt}if(!e){if(r==null)p=j +else{p=r.e +p===$&&A.b()}p=p===a}else p=!1 +if(!p)if(e){if(r==null)p=j +else{p=r.e +p===$&&A.b()}p=p!==a}else p=!1 +else p=!0 +if(p){o=new A.a13(c==null?"":c) +o.b=r +o.c=k.td() +o.d=k.r9("content-id") +b.push(o)}if(!s||q!==!0){s=k.c +s=s==null?j:s.length!==0 +if(s===!0)for(s=c!=null,n=0;q=k.c,n")),q=q.h("aa.E"),n="Warning: unable to retrieve individual parts from fetchId ["+a+"] (in MimeMessage.getPart(fetchId)).",m=this,l=!1;o.t();){k=o.d +if(k==null)k=q.a(k) +if(k==null){if(!l){j=$.mP +if(j==null)A.mO(n) +else j.$1(n) +l=!0}continue}i=m.c +if(i==null||i.length0;r=n){q=76-k +p=r+q +if(p>=l){l=a.a+=B.c.du(B.c.b0(m,r)) +a.a=l+"\r\n" +break}for(;p>r;--p){o=s[p] +if(o===59||o===32||o===41||o===93||o===62){q=p-r+1 +break}}n=r+q +j=a.a+=B.c.du(B.c.R(m,r,n)) +a.a=j+"\r\n" +h-=q +if(h>0){a.a+=A.cm(9) +k=1}}}}} +A.C4.prototype={ +gyX(){var s=this.z +return s==null?this.z=this.b22():s}, +a79(a){var s=this.a;(s==null?this.a=A.a([],t.V7):s).push(a) +a.Q=this +return a}, +k(a){var s,r=new A.bu("") +this.aG(0,r) +s=r.a +return s.charCodeAt(0)==0?s:s}, +eU(a,b,c){var s,r,q,p,o,n,m=this,l="modification-date",k=b.a+=c +b.a=k+"[" +k=b.a+=A.r(m.gyX()) +k=b.a=k+"]\n" +s=m.r +if(s!=null){k+=c +b.a=k +r=s.b +r===$&&A.b() +b.a=k+r +s.HE("charset",s.e,b,!0) +s.HE("boundary",s.f,b,!0) +if(s.r===!0)s.aEL("format","flowed",b) +s.aEN(b,A.a(["charset","boundary","format"],t.s)) +k=b.a+="\n"}s=m.w +if(s!=null){k+=c +b.a=k +r=s.d +r===$&&A.b() +b.a=k+r +s.HE("filename",s.f,b,!0) +s.adh("creation-date",s.r,b) +s.adh(l,s.w,b) +s.adh("read-date",s.x,b) +k=s.y +if(k!=null)s.aEL("size",B.d.k(k),b) +s.aEN(b,A.a(["filename","creation-date",l,"read-date","size"],t.s)) +k=b.a+="\n"}q=m.a +if(q!=null&&q.length!==0){k+=c +b.a=k +b.a=k+"[\n" +for(k=q.length,s=c+" ",p=!1,o=0;o0?s+"+":s+"-" +r=B.d.aD(b.gOW().a,p) +if(r<10&&r>-10)s+="0" +s+=Math.abs(r) +q=B.d.aD(b.gOW().a,6e7)-B.d.aD(b.gOW().a,p)*60 +if(q===0)s+="00" +else{if(q<10&&q>-10)s+="0" +s+=q}this.HE(a,s.charCodeAt(0)==0?s:s,c,!0)}, +aEN(a,b){var s,r,q +for(s=this.c,r=A.jL(s,s.r,A.z(s).c);r.t();){q=r.d +if(!B.b.p(b,q.toLowerCase()))this.HE(q,s.i(0,q),a,!1)}}, +Qn(a,b,c){this.c.n(0,b,c)}} +A.apO.prototype={ +Qn(a,b,c){var s,r=this,q=b.toLowerCase() +if(q==="charset")s=r.e=r.zV(c).toLowerCase() +else if(q==="boundary"){s=r.zV(c) +r.f=s}else if(q==="format"){s=r.zV(c).toLowerCase() +r.r=s==="flowed"}else s=c +r.agY(0,q,s)}} +A.a12.prototype={ +H(){return"ContentDisposition."+this.b}} +A.baM.prototype={ +aUw(a){var s,r=this,q=r.b +q===$&&A.b() +r.d=q +switch(q.toLowerCase()){case"inline":r.e=B.kG +break +case"attachment":r.e=B.kH +break +default:r.e=B.ag5 +break}q=r.c +r.f=A.a5g(q.i(0,"filename")) +r.r=A.I8(q.i(0,"creation-date")) +r.w=A.I8(q.i(0,"modification-date")) +r.x=A.I8(q.i(0,"read-date")) +s=q.i(0,"size") +if(s!=null)r.y=A.cY(s,null)}} +A.a13.prototype={} +A.b8l.prototype={ +wE(a,b,c){var s,r +if(c.a===B.i7){if(B.c.aC(b.gkS(),"OK [CAPABILITY ")){s=B.b.ga2(b.a).gh5(0) +s.toString +r=this.a +A.b8m(s,15,r) +this.b=r.f}s=this.b +return s==null?A.a([],t.or):s}return null}, +wF(a,b){var s,r=this,q=a.gkS() +if(B.c.aC(q,"OK [CAPABILITY ")){s=r.a +A.b8m(q,15,s) +r.b=s.f +return!0}else if(B.c.aC(q,"CAPABILITY ")){s=r.a +A.b8m(q,11,s) +r.b=s.f +return!0}r.Jg(a,b) +return!1}} +A.PP.prototype={ +k(a){var s=this.b +return s==null?this.a:s}, +aIx(a){return null}} +A.PQ.prototype={ +k(a){return this.b+" "+this.a.k(0)}} +A.atP.prototype={ +wE(a,b,c){var s,r,q=this,p=b.gkS(),o=B.c.c2(p,"[MODIFIED ") +if(o!==-1){s=A.daQ(p,o+10,"]",",") +if(s!=null){r=A.a([],t.t) +B.b.L(r,s) +q.d=new A.a5O(!1,r)}}if(c.a!==B.i7)if(q.a.length===0){r=q.c +if(r!=null)if(!r.c)r=r.b.length!==0 +else r=!0 +else r=!1}else r=!0 +else r=!0 +if(r)return new A.a31(q.a) +return null}, +wF(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=B.b.ga2(a.a).gh5(0) +if(i==null)return!1 +s=B.c.c2(i," FETCH ") +j.b=null +if(s!==-1){r=A.KT(i,2," ") +q=j.a +if(q.length!==0&&B.b.gP(q).x==r)p=B.b.gP(q) +else{p=new A.zq() +p.x=r +q.push(p)}j.b=p +for(q=a.bzx().a,o=q.length,n=0;n")),!0,s) +break +case"INTERNALDATE":if(m){++p +d[p].toString}break +case"RFC822.SIZE":if(m){++p +o=d[p].b +o.toString +a.ax=A.cA(o,e)}break +case"ENVELOPE":this.apN(a,n) +break +case"BODY":l=new A.C4() +this.T5(l,n) +a.fr=l +break +case"BODYSTRUCTURE":l=new A.C4() +this.T5(l,n) +a.fr=l +break +case"BODY[HEADER]":case"RFC822.HEADER":if(m){++p +o=d[p] +k=o.b +if(k==null){o=o.c +if(o==null)o=e +else o=new A.iu(!0).jP(o,0,e,!0)}else o=k +a.a=A.aB6(A.a(o.split("\r\n"),q)).a}break +case"BODY[TEXT]":case"RFC822.TEXT":if(m){++p +o=d[p] +k=o.c +if(k!=null){o=new A.y1(k,!1) +o.r=k.length}else{o=o.b +k=new A.ME(o,!1) +k.r=o.length +o=k}a.b=o}break +case"BODY[]":case"RFC822":if(m){++p +o=d[p] +k=o.c +if(k!=null){o=new A.y1(k,!0) +o.r=k.length +a.b=o}else{o=o.b +k=new A.ME(o,!0) +k.r=o.length +a.b=k}a.kA(0)}break +default:if(m){o.toString +k=B.c.aC(o,"BODY[")&&B.c.eV(o,"]")}else k=!1 +if(k){++p +o.toString +k=d[p] +if(B.c.aC(o,"BODY[HEADER.FIELDS")){o=k.b +if(o==null){o=k.c +if(o==null)o=e +else o=new A.iu(!0).jP(o,0,e,!0)}a.a=A.aB6(A.a(o.split("\r\n"),q)).a}else{j=B.c.R(o,5,o.length-1) +i=new A.zr() +o=k.b +if(o!=null){k=new A.ME(o,!1) +k.r=o.length +i.b=k}else{o=k.c +if(o!=null){k=new A.y1(o,!1) +k.r=o.length +i.b=k}}i.kA(0) +o=A.ctV(j,".HEADER","",0) +if(a.dy==null)a.dy=A.N(s,r) +k=a.fr +h=k==null?e:k.aew(o) +if(h!=null){i.r=h.r +i.w=h.w +i.Lo("Content-Transfer-Encoding",h.d)}a.dy.n(0,o,i)}}else{g="fetch: encountered unexpected/unsupported element "+A.r(o)+" at "+p+" in "+c.gkS() +f=$.mP +if(f==null)A.mO(g) +else f.$1(g)}}}}, +T5(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=b.d +if(g.length>=7&&g[0].d==null){s=this.apL(g) +a.x=s.x +a.w=s.w +a.r=s.r +a.c=s.c +a.d=s.d +a.y=s.y +a.b=s.b +a.f=s.f +a.e=s.e +return}for(r=!1,q=-1,p=0;p=7}else j=!1 +if(j){n=o.d +n.toString +a.a79(this.apL(n))}else if(l){a.r=A.cvQ("multipart/"+A.r(m?null:n.toLowerCase())) +q=p +r=!0}else{if(p===q+1){n=o.d +n=n!=null&&n.length>1}else n=!1 +if(n){i=o.d +for(h=0;h1)for(n=0;n7&&a[7].b!=null){c=a[7].b +c.toString +q.f=A.cY(c,d) +k=8}else if(c===B.jt&&r.c===B.ph){if(a.length>9){q.y=e.apN(d,a[7]) +j=new A.C4() +q.a79(j) +e.T5(j,a[8]) +c=a[9].b +c.toString +q.f=A.cY(c,d)}k=10}else k=7 +c=k+1 +if(a.length>c){p=a[c].d +p=p==null?d:p.length!==0 +p=p===!0}else p=!1 +if(p){i=a[c].d +c=i[0].b +if(c!=null){h=A.cG7(c.toLowerCase()) +g=i[1].d +if(g!=null&&g.length>1)for(n=0;n=10){s=l.tA(k[0].b) +r=l.tA(k[1].gbHS()) +q=new A.bh8() +p=s!=null +if(p)A.I8(s) +o=r!=null +if(o)A.a5g(r) +q.c=l.ER(k[2]) +q.d=l.bdj(k[3]) +q.e=l.ER(k[4]) +q.f=l.ER(k[5]) +q.r=l.ER(k[6]) +q.w=l.ER(k[7]) +n=l.tA(k[8].b) +q.x=n +m=l.tA(k[9].b) +q.y=m +if(a!=null){if(p)a.Lo("Date",s) +if(o)a.Lo("Subject",r) +a.Lo("In-Reply-To",n) +a.Lo("Message-ID",m)}}else q=null +return q}, +bdj(a){var s=this.ER(a) +if(s==null||s.length===0)return null +return(s&&B.b).ga2(s)}, +ER(a){var s,r,q,p,o +if(a.b==="NIL")return null +s=A.a([],t.la) +r=a.d +if(r!=null)for(q=r.length,p=0;p=0}if(s.length!==0){A.eP("Warning - some parentheses have not been closed: "+r.k(0)) +A.eP(A.u0(q,"[","]"))}b3=b2.d +b3.toString +return new A.bnb(b3)}, +k(a){var s,r,q,p,o,n +for(s=this.a,r=s.length,q=0,p="";q"}n=p+n+"\n"}return p.charCodeAt(0)==0?p:p}} +A.bnb.prototype={} +A.Tm.prototype={ +H(){return"ParenthesizedListType."+this.b}} +A.tY.prototype={ +gbHS(){var s=this.b +if(s==null){s=this.c +s=s==null?null:B.ai.yF(0,s,!0)}return s}, +k(a){var s,r=this.b +if(r==null){r=this.c +r=r!=null?"<"+r.length+" bytes>":""}s=this.d +return r+(s!=null?B.b.k(s):"")}} +A.RE.prototype={ +aUO(a){var s,r,q,p +this.b=a +s=a.length +if(s>3&&a[s-1]==="}"){r=B.c.wt(a,"{",s-2) +q=s-1 +p=q-1 +if(a[p]==="+")q=p +s=A.cY(B.c.R(a,r+1,q),null) +this.c=s +if(s!=null)this.b=B.c.R(a,0,r>0&&a[r-1]===" "?r-1:r)}}, +gh5(a){var s,r=this.b +if(r==null){s=this.d +if(s!=null){r=new A.iu(!0).jP(s,0,null,!0) +this.b=r}}return r}, +gabu(){var s=this.c +return s!=null&&s>=0}, +k(a){var s=this.a +if(s==null)s=this.gh5(0) +return s==null?"":s}} +A.bn8.prototype={ +lh(a){var s,r,q,p,o,n,m=this,l=m.b,k=l.a +k.b.push(a) +k.a=k.a+a.length +k=m.c +if(k!=null){s=m.d +s.toString +m.Rm(k,s)}if(m.c==null){r=l.ad6() +for(k=m.a,s=t.ci;r!=null;){q=A.a([],s) +p=new A.a4b(q) +o=new A.RE(r,null) +o.aUO(r) +q.push(o) +n=o.c +if(n!=null&&n>=0){m.d=o +m.c=p +m.Rm(p,o)}else k.$1(p) +q=m.d +if(q==null)q=null +else{n=q.c +q=n!=null&&n>=0}if(q===!0)break +r=l.ad6()}}}, +Rm(a,b){var s,r,q,p,o,n=this +if(b.gabu()){s=b.c +s.toString +r=n.b +if(s<=r.a.a){q=new A.RE(null,r.bF5(s)) +a.a.push(q) +n.d=q +n.Rm(a,q)}}else{p=n.b.ad6() +if(p!=null){o=A.d8i(p) +if(o.gabu()&&o.gh5(0).length===0)b.c=o.c +else{if(o.gh5(0).length!==0)a.a.push(o) +if(!o.gabu()){n.a.$1(a) +n.d=n.c=null}else{n.d=o +n.Rm(a,o)}}}}}} +A.bp_.prototype={ +wE(a,b,c){return c.a===B.i7?this.b:null}, +wF(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="CHILDINFO",a3=a5.gkS(),a4=a1.c +if(B.c.aC(a3,a4)){s=A.a([],t.fR) +r=B.c.b0(a3,a4.length) +q=B.c.c2(r,"(") +p=B.c.c2(r,")") +if(q!==-1&&q2&&a1.a.d!=null){n=a1.a.d +n.toString +a=B.c.wt(r,n,a4-2) +a0=a!==-1?B.c.b0(r,a+1):r}else a0=r +a4=a1.a.d +a1.b.push(A.cJH(a0,r,i,s,a4==null?"/":a4)) +return!0}else if(a1.e){if(B.c.aC(a3,"NO"))return!0 +if(B.c.aC(a3,"STATUS")){new A.bHO(B.b.gP(a1.b),A.b4('(STATUS "[^"]+?" )(.*)',!0,!1,!1)).wF(a5,null) +return!0}}a1.Jg(a5,a6) +return!1}} +A.bp0.prototype={ +$1(a){return B.c.R(a,1,a.length-1)}, +$S:28} +A.bkT.prototype={ +rh(a,b,c){A.d9C(c) +this.a.push(new A.Je(b,c,b.toLowerCase()))}} +A.a8s.prototype={ +wF(a,b){return!1}} +A.bEu.prototype={ +wE(a,b,c){var s +B.c.aC(b.gkS(),"OK [READ-WRITE]") +s=B.c.c2(b.gkS(),"[HIGHESTMODSEQ ") +if(s!==-1)this.a.as=A.KT(b.gkS(),s+15,"]") +return c.a===B.i7?this.a:null}, +wF(a,b){var s,r=this +if(A.dd9(r.a,a))return!0 +else{s=r.c +if(s.wF(a,r.d)){if(s.b!=null)r.b.at.a.B(0,new A.bn7()) +else if(s.c!=null)r.b.at.a.B(0,new A.bnc()) +return!0}else{r.Jg(a,b) +return!1}}}} +A.bHO.prototype={ +wE(a,b,c){return c.a===B.i7?this.a:null}, +wF(a,b){var s,r,q,p,o,n,m,l,k,j=a.gkS() +if(B.c.aC(j,"STATUS ")){s=this.b1a(j) +if(s===-1)return!1 +r=A.bwH(j,s+1,")"," ") +if(r==null)return!1 +for(q=this.a,p=0;ps.a)return null +return s.aFj(a)}} +A.bvi.prototype={ +ON(){var s,r,q,p,o,n,m,l=this,k=l.a +if(k===0)return $.cCG() +s=l.b +r=s.length +if(r===1){q=s[0] +l.a=0 +B.b.V(s) +return q}q=new Uint8Array(k) +for(p=0,o=0;o=h.a)return h.ON() +s=h.b +r=B.b.ga2(s) +if(r.length===a){B.b.fE(s,0) +h.a-=a +return r}q=new Uint8Array(a) +for(p=s.length,o=0,n=0,m=0;ma){B.p.cV(q,o,a,l) +i=k-(j-a) +s[n]=new Uint8Array(l.subarray(i,A.nH(i,null,k))) +break}else B.p.cV(q,o,j,l);++n +if(j>=a)break}B.b.t3(s,0,n) +h.a-=a +return q}, +gA(a){return this.a}, +gcU(a){return this.a!==0}, +bwi(){var s,r,q,p,o,n,m,l,k,j +if(this.a===0)return null +for(s=this.b,r=s.length,q=0,p=!1,o=0;obody {color: #FFFFFF; margin: 4px;}') +a.gNa(0).gfC(0).B(0,s)}}} +A.avV.prototype={ +CU(a5,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=null,a3=A.am7(a5,"img"),a4=A.a([],t.s) +for(s=a3.length,r=t.f2,q=0;q" +m=a6.aeV(n) +if(m!=null){a4.push(n) +l=m.td().d +l===$&&A.b() +k=A.cxq(m,l,a7) +p.b.n(0,"src",k) +j=p.a +l=j instanceof A.dk?j:a2 +if((l==null?a2:l.x)!=="a"){i=A.Iy('') +h=new A.bu("") +p.xB(h) +l=h.a +l=A.Iy(l.charCodeAt(0)==0?l:l) +g=i.c +if(g===$){f=A.a([],r) +i.c!==$&&A.a_() +g=i.c=new A.eV(i,f)}f=l.a +if(f!=null){e=f.c +if(e===$){d=A.a([],r) +f.c!==$&&A.a_() +e=f.c=new A.eV(f,d)}B.b.F(e.a,l)}l.a=g.b +g.tu(0,l) +l=p.a +if(l==null)A.C(A.aq("Node must have a parent to replace it.")) +g=l.c +if(g===$){f=A.a([],r) +l.c!==$&&A.a_() +g=l.c=new A.eV(l,f)}l=p.a +e=l.c +if(e===$){f=A.a([],r) +l.c!==$&&A.a_() +e=l.c=new A.eV(l,f)}g.n(0,e.c2(e,p),i)}}}else if(B.c.aC(o,"http"))if(B.c.aC(o,"http:")){c=B.c.b0(o,5) +p.b.n(0,"src","https:"+c)}}b=a6.azH(B.kG) +for(s=b.length,l=t.n_,q=0;q'+A.r(d)+'') +a0=A.a([],l) +a1=A.cTs("html",a0) +if(a1==null||a0.length!==0)A.C(A.bM("'html' is not a valid selector: "+A.r(a0),a2,a2)) +f=new A.ps().t1(0,a5,a1) +if(f==null)f=a2 +else{a0=A.a([],l) +a1=A.cTs("body",a0) +if(a1==null||a0.length!==0)A.C(A.bM("'body' is not a valid selector: "+A.r(a0),a2,a2)) +f=new A.ps().t1(0,f,a1)}g=f.c +if(g===$){d=A.a([],r) +f.c!==$&&A.a_() +g=f.c=new A.eV(f,d)}f=p.a +if(f!=null){e=f.c +if(e===$){d=A.a([],r) +f.c!==$&&A.a_() +e=f.c=new A.eV(f,d)}B.b.F(e.a,p)}p.a=g.b +g.tu(0,p)}}}}}} +A.atv.prototype={ +CU(a,b,c){var s,r,q=A.am7(a,"a") +for(s=q.length,r=0;r"))}} +A.bt5.prototype={ +bHh(a,b){var s,r,q,p,o +for(s=this.a,r=s.w,q=r.length,p=a,o=0;o",">")}, +$iAy:1} +A.awX.prototype={ +ZR(a,b,c,d){var s=A.cj(b,"\r\n","
") +return A.cj(s,"\n","
")}} +A.ax_.prototype={ +ZR(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=$.cWz().kt(0,b) +if(!f.gaz(0).t())return b +s=new A.bu("") +for(r=new A.oO(f.a,f.b,f.c),q=b.length,p=t.Qz,o=0;r.t();){n=r.d +m=(n==null?p.a(n):n).b +l=m.index +k=l+m[0].length +if(k" +o=h?k-1:k}if(o" +q=c.aeV(r) +if(q!=null){p=q.td() +if(p==null)o=null +else{n=p.d +n===$&&A.b() +o=n}m=A.cxq(q,o,d) +l=A.vb(B.K8,B.c.R(r,1,r.length-1),B.ai,!1) +n=q.aeG() +n=n==null?null:n.f +b=A.ctV(b,s,''+A.r(n)+'',0)}}return b}} +A.bLr.prototype={ +zB(a){var s,r,q,p=this,o=p.a +if(o===-1)return null +s=p.c +r=B.c.hj(s,p.b,o) +if(r===-1){p.a=-1 +return null}q=B.c.hj(s,p.d,r+1) +if(q===-1){p.a=-1 +return null}p.a=q+1 +return B.c.R(s,r,q)}} +A.ch.prototype={ +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=t.T4.b(b)&&A.I(this)===A.I(b)&&A.drT(this.gfv(),b.gfv()) +else s=!0 +return s}, +gv(a){var s=A.ef(A.I(this)),r=B.b.l8(this.gfv(),0,A.drU(),t.S),q=r+((r&67108863)<<3)&536870911 +q^=q>>>11 +return(s^q+((q&16383)<<15)&536870911)>>>0}, +k(a){var s,r=this +switch(null){case!0:return A.cTa(A.I(r),r.gfv()) +case!1:return A.I(r).k(0) +default:s=$.cI5 +return(s==null?$.cI5=!1:s)?A.cTa(A.I(r),r.gfv()):A.I(r).k(0)}}} +A.cos.prototype={ +$2(a,b){return J.ab(a)-J.ab(b)}, +$S:105} +A.cot.prototype={ +$1(a){var s=this.a,r=s.a +s.a=(r^A.cAv(r,[a,J.aS(s.b,a)]))>>>0}, +$S:25} +A.cou.prototype={ +$2(a,b){return J.ab(a)-J.ab(b)}, +$S:105} +A.csV.prototype={ +$1(a){return J.cw(a)}, +$S:499} +A.atB.prototype={ +py(a,b){var s,r=this.a,q=A.z(r) +if(A.c6(b)===B.ma)return b.h("bg<0>").a(new A.dw(r,q.h("dw<1>"))) +else{q=q.h("dw<1>") +s=q.h("oX") +return new A.tC(new A.oX(new A.bhh(b),new A.dw(r,q),s),s.h("@").a1(b).h("tC<1,2>"))}}} +A.bhh.prototype={ +$1(a){return this.a.b(a)}, +$S:60} +A.b9H.prototype={} +A.cbz.prototype={} +A.a5H.prototype={ +gaab(){return B.hA}, +Wm(){this.a.d.$2(this.b,B.Dj) +var s=this.ga7s() +return(s==null?null:s.ga0z(0).d)===B.hA}, +bsU(a){var s,r=this.b +this.a.d.$2(r,B.ajE) +s=this.aB9(new A.brF(!1),!0,!0) +if((s==null?null:s.gbl(s))!==B.hA)throw A.d(A.csZ(r))}, +ay9(){return this.bsU(!1)}, +a94(a){return this.bsV(a)}, +bsV(a){var s=0,r=A.p(t.m4),q,p=this +var $async$a94=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=p.aya(a) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a94,r)}, +aya(a){var s,r,q,p,o={},n=this.a,m=n.c,l=m.XH(0,this.b,a+"rand"),k=m.bu0(l),j=A.ub(l,m.a).ga7t(),i=t.y9.a(n.WQ(k)) +if(i==null)A.C(A.cBP(A.ax(new A.brG(k).$0()))) +i.toString +A.dpy(i,new A.brH(k)) +s=$.cDV() +A.fT(n) +r=s.a.get(n) +o.a=r==null?0:r +q=new A.brI(o,j) +for(s=i.r;s.aB(0,q.$0());)++o.a +$.cDV().n(0,n,o.a) +p=A.cGR(i) +s.n(0,q.$0(),p) +n=new A.a5H(n,m.XH(0,k,q.$0())) +n.ay9() +return n}, +k(a){return"MemoryDirectory: '"+this.b+"'"}, +$ivH:1, +$icwj:1} +A.brF.prototype={ +$2(a,b){if(this.a||b)return A.cGR(a) +return null}, +$S:660} +A.brG.prototype={ +$0(){return this.a}, +$S:18} +A.brH.prototype={ +$0(){return this.a}, +$S:18} +A.brI.prototype={ +$0(){return this.b+this.a.a}, +$S:18} +A.aRp.prototype={} +A.a5I.prototype={ +gbg5(){var s,r=this,q=r.ga7s() +if(q==null)q=r.b_R() +else{s=q.gbl(q) +if(s===B.ns)q=A.ctr(t.C5.a(q),new A.brQ(r),null,null) +A.cBc(B.iW,q.gbl(q),new A.brR(r))}return t.jL.a(q)}, +gaab(){return B.iW}, +Wm(){this.a.d.$2(this.b,B.Dj) +var s=this.ga7s() +return(s==null?null:s.ga0z(0).d)===B.iW}, +b_S(a){var s=this.byY(new A.brP(!1),!0) +if((s==null?null:s.gbl(s))!==B.iW)throw A.d(A.cSU(this.b)) +return s}, +b_R(){return this.b_S(!1)}, +nQ(a){var s=0,r=A.p(t.S),q,p=this +var $async$nQ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=t.jL.a(p.gaF2()).r.length +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$nQ,r)}, +wN(){var s=0,r=A.p(t.E),q,p=this +var $async$wN=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.a.d.$2(p.b,B.ajC) +q=new Uint8Array(A.f1(t.jL.a(p.gaF2()).r)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$wN,r)}, +k(a){return"MemoryFile: '"+this.b+"'"}, +$iDj:1, +$icwK:1} +A.brQ.prototype={ +$0(){return this.a.b}, +$S:18} +A.brR.prototype={ +$0(){return this.a.b}, +$S:18} +A.brP.prototype={ +$2(a,b){if(b)return A.d6S(a) +return null}, +$S:662} +A.aeG.prototype={ +gXE(){var s=this.c +s=s==null?null:(s.a.a&30)!==0 +return s===!1}, +B(a,b){if(this.gXE())A.C(A.a0("StreamSink is bound to a stream")) +if(this.d)throw A.d(A.a0("StreamSink is closed")) +this.ai8(b)}, +h1(a,b){if(this.gXE())A.C(A.a0("StreamSink is bound to a stream")) +this.a.iy(a,b)}, +m8(a){return this.h1(a,null)}, +p_(a,b){var s=this +if(s.gXE())A.C(A.a0("StreamSink is bound to a stream")) +s.c=new A.aI(new A.ak($.at,t.W),t.gR) +b.cl(new A.c_t(s),!0,new A.c_u(s),new A.c_v(s)) +return s.c.a}, +aO(a){var s=this +if(s.gXE())A.C(A.a0("StreamSink is bound to a stream")) +if(!s.d){s.d=!0 +s.b.ki(new A.c_w(s),new A.c_x(s),t.H)}return s.a.a}, +ai8(a){this.b=this.b.bf(new A.c_s(a),t.jL)}, +$ihW:1} +A.c_r.prototype={ +$0(){var s,r,q=this.a.a +if(q!=null)throw A.d(q) +q=this.c +s=q.aX() +r=this.d +if(r===B.kT||r===B.Dh)s.r=new Uint8Array(0) +return q.aX()}, +$S:667} +A.c_t.prototype={ +$1(a){return this.a.ai8(a)}, +$S:228} +A.c_v.prototype={ +$2(a,b){var s=this.a +s.c.iy(a,b) +s.c=null}, +$S:23} +A.c_u.prototype={ +$0(){var s=this.a +s.c.fw(0) +s.c=null}, +$S:0} +A.c_w.prototype={ +$1(a){return this.a.a.fw(0)}, +$S:669} +A.c_x.prototype={ +$2(a,b){return this.a.a.iy(a,b)}, +$S:32} +A.c_s.prototype={ +$1(a){a.aG(0,this.a) +return a}, +$S:672} +A.brJ.prototype={} +A.c5Z.prototype={ +ayH(a,b){return new A.a5H(this,this.aeW(b))}, +azM(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.nk(a)>0){r=e.a +a=B.c.b0(a,0)}else{s=s.b +r=t.y9.a(e.WQ(s==null?A.crB():s))}}$.b2D() +q=A.a(a.split("/"),t.s) +if(!!q.fixed$length)A.C(A.aq("removeWhere")) +B.b.kp(q,A.dwE(),!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.gbR(p) +p=g?d:p.gbR(p) +break +default:j=p==null?d:p.r.i(0,h)}g=new A.c60(e,q,i) +if((j==null?d:j.gbl(j))===B.ns)f=i=this.b.length)this.d.d2(0,s)}, +$S:697} +A.bhY.prototype={ +$1(a){var s=A.bw(this.a.result) +if(s==null)s=null +this.b.$4(this.c,null,s,null)}, +$S:40} +A.bhZ.prototype={ +$1(a){var s,r=this,q=null,p=t.CM.a(r.a.result) +if(p==null)p=q +s=p==null?q:A.dF(p,0,q) +r.b.$4(r.c,s,q,q) +r.d.fw(0)}, +$S:40} +A.bhU.prototype={ +$1(a){A.L(self.window,"removeEventListener",["focus",t.g.a(A.cQ(this))]) +A.jk(A.cp(0,0,0,0,0,1),null,t.z).bf(new A.bhV(this.a,this.b),t.P)}, +$S:40} +A.bhV.prototype={ +$1(a){var s=this.a +if(!s.a){s.a=!0 +this.b.d2(0,null)}}, +$S:49} +A.bhT.prototype={ +$2(a,b){var s=a.gad(a)?"":A.r(a)+"," +return s+" ."+A.r(b)}, +$S:201} +A.bi3.prototype={ +H(){return"FileType."+this.b}} +A.bhK.prototype={} +A.bhL.prototype={ +mq(){return this.S0(B.nt,!1,!0,null,null,!1,!1,30)}, +S0(a,b,c,d,e,f,g,h){return this.b2r(a,!1,!0,d,e,!1,!1,h)}, +b2r(a,b,a0,a1,a2,a3,a4,a5){var s=0,r=A.p(t.fW),q,p=2,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$S0=A.l(function(a6,a7){if(a6===1){o=a7 +s=p}while(true)switch(s){case 0:d=a.b +J.q(d,"custom") +p=4 +i=$.d6T +if(i!=null)i.ao(0) +s=7 +return A.i($.cZr().Nr(d,A.a1(["allowMultipleSelection",!1,"allowedExtensions",a1,"allowCompression",!0,"withData",!1,"compressionQuality",a5],t.N,t.X),t.f),$async$S0) +case 7:n=a7 +if(n==null){q=null +s=1 +break}m=A.a([],t.M6) +for(i=J.au(n);i.t();){l=i.gK(i) +h=l +g=J.ao(h) +f=g.i(h,"name") +J.eQ(m,new A.qx(g.i(h,"path"),f,g.i(h,"bytes"),null,g.i(h,"size"),g.i(h,"identifier")))}q=new A.Dl(m) +s=1 +break +p=2 +s=6 +break +case 4:p=3 +c=o +i=A.ag(c) +if(i instanceof A.ok){k=i +A.eP("[MethodChannelFilePicker] Platform exception: "+A.r(k)) +throw c}else{j=i +A.eP("[MethodChannelFilePicker] Unsupported operation. Method not found. The exception thrown was: "+A.r(j)) +throw c}s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$S0,r)}} +A.bhN.prototype={ +mq(){var s=0,r=A.p(t.fW),q,p=this,o,n,m,l,k,j,i +var $async$mq=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.Zj("osascript"),$async$mq) +case 3:l=b +k=p.WK(B.nt,null) +j=A.cj("","\\","\\\\") +j=A.cj(j,'"','\\"') +j=A.cj(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.i(A.am9(l,o),$async$mq) +case 4:m=b +if(m==null){q=null +s=1 +break}i=A +s=5 +return A.i(A.cSu(p.Zu(m),!1,!1),$async$mq) +case 5:q=new i.Dl(b) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$mq,r)}, +WK(a,b){switch(a.a){case 0:return"" +case 4:return'"aac", "midi", "mp3", "ogg", "wav"' +case 5:return'"", "'+A.r(b.bQ(0,'", "'))+'"' +case 2:return'"bmp", "gif", "jpeg", "jpg", "png"' +case 1:return'"avi", "flv", "m4v", "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.d(A.dA("unknown file type"))}}, +Zu(a){var s,r=B.c.du(a) +if(r.length===0)return A.a([],t.s) +r=new A.O(A.a(r.split(", alias "),t.s),new A.bhP(),t.a4).r2(0,new A.bhQ()) +s=A.R(r,!0,r.$ti.h("B.E")) +if(s.length===1&&J.b2X(B.b.ga2(s),"file "))s[0]=J.cEI(s[0],5) +else if(s.length!==0&&J.b2X(B.b.ga2(s),"alias "))s[0]=J.cEI(s[0],6) +r=A.X(s).h("O<1,f>") +return A.R(new A.O(s,new A.bhR(),r),!0,r.h("aa.E"))}} +A.bhP.prototype={ +$1(a){return B.c.du(a)}, +$S:28} +A.bhQ.prototype={ +$1(a){return a.length!==0}, +$S:20} +A.bhR.prototype={ +$1(a){var s=t.s,r=t.gD,q=A.R(new A.b1(A.a(a.split(":"),s),new A.bhO(),r),!0,r.h("B.E")) +s=A.a(["/Volumes",q[0]],s) +B.b.L(s,B.b.hs(q,1)) +return B.b.bQ(s,"/")}, +$S:28} +A.bhO.prototype={ +$1(a){return a.length!==0}, +$S:20} +A.Dl.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.Dl&&A.fj(b.a,this.a)}, +gv(a){return J.ab(this.a)}, +k(a){return"FilePickerResult(files: "+A.r(this.a)+")"}} +A.bcW.prototype={ +$1(a){var s,r=a.charCodeAt(0) +if(!(97<=r&&r<=122))s=65<=r&&r<=90 +else s=!0 +return s?"["+a.toLowerCase()+a.toUpperCase()+"]":a}, +$S:28} +A.bhM.prototype={ +mq(){var s=0,r=A.p(t.fW),q,p=this,o,n,m,l,k +var $async$mq=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(p.Ex(),$async$mq) +case 3:o=b +n=A.d4t(o) +m=n.WK(B.nt,null) +s=4 +return A.i(A.am9(o,n.aeo("",m,"",!1,!1)),$async$mq) +case 4:l=b +if(l==null){q=null +s=1 +break}k=A +s=5 +return A.i(A.cSu(n.Zu(l),!1,!1),$async$mq) +case 5:q=new k.Dl(b) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$mq,r)}, +Ex(){var s=0,r=A.p(t.N),q,p=2,o,n,m,l,k +var $async$Ex=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +p=8 +s=11 +return A.i(A.Zj("qarma"),$async$Ex) +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.ag(l))?12:14 +break +case 12:s=15 +return A.i(A.Zj("kdialog"),$async$Ex) +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.ag(k))?16:18 +break +case 16:s=19 +return A.i(A.Zj("zenity"),$async$Ex) +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.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Ex,r)}} +A.bo8.prototype={ +aeo(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}, +WK(a,b){switch(a.a){case 0:return"" +case 4:return"Audio File ("+A.yy("*.aac *.midi *.mp3 *.ogg *.wav")+")" +case 5:return A.r(b.fK(0,new A.bo9(),t.N).bQ(0," File, "))+" File ("+A.yy("*."+A.r(b.bQ(0," *.")))+")" +case 2:return"Image File ("+A.yy("*.bmp *.gif *.jpeg *.jpg *.png")+")" +case 1:return"Media File ("+A.yy(u.f5)+")" +case 3:return"Video File ("+A.yy(u.g)+")" +default:throw A.d(A.dA("unknown file type"))}}, +Zu(a){var s +if(B.c.du(a).length===0)return A.a([],t.s) +s=t.a4 +return A.R(new A.O(A.a(a.split("\n"),t.s),new A.boa(),s),!0,s.h("aa.E"))}} +A.bo9.prototype={ +$1(a){return a.aFy(0)}, +$S:28} +A.boa.prototype={ +$1(a){return B.c.aC(a,"/")?a:"/"+a}, +$S:28} +A.bz3.prototype={ +aeo(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}, +WK(a,b){switch(a.a){case 0:return"" +case 4:return"Audio Files | "+A.yy("*.aac *.midi *.mp3 *.ogg *.wav") +case 5:return"Custom Files | "+A.yy("*."+A.r(b.bQ(0," *."))) +case 2:return"Image Files | "+A.yy("*.bmp *.gif *.jpeg *.jpg *.png") +case 1:return"Media Files | "+A.yy(u.f5) +case 3:return"Video Files | "+A.yy(u.g) +default:throw A.d(A.dA("unknown file type"))}}, +Zu(a){var s +if(B.c.du(a).length===0)return A.a([],t.s) +s=t.a4 +return A.R(new A.O(A.a(a.split("|/"),t.s),new A.bz4(),s),!0,s.h("aa.E"))}} +A.bz4.prototype={ +$1(a){return B.c.aC(a,"/")?a:"/"+a}, +$S:28} +A.qx.prototype={ +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q===b)return!0 +if(b instanceof A.qx)if(b.b===q.b){s=b.c +r=q.c +s=(s==null?r==null:s===r)&&J.q(b.d,q.d)&&b.f==q.f&&b.e===q.e}else s=!1 +else s=!1 +return s}, +gv(a){return 0}, +k(a){var s=this +return"PlatformFile(, name: "+s.b+", bytes: "+A.r(s.c)+", readStream: "+A.r(s.d)+", size: "+s.e+")"}} +A.cs7.prototype={ +$1(a){return a.length!==0}, +$S:20} +A.cs8.prototype={ +$1(a){return this.aI6(a)}, +aI6(a){var s=0,r=A.p(t.hD),q,p=this,o,n,m +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=A.cwL(a) +if(!p.b){q=A.crA(o,null,null) +s=1 +break}n=A +m=o +s=3 +return A.i(o.wN(),$async$$1) +case 3:q=n.crA(m,c,null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:704} +A.c0d.prototype={ +t2(a){if(!$.Oz())return}, +avC(a,b,c,d){var s,r,q,p=this,o={} +if(!$.Oz())return new A.c0e() +s=A.mM(A.c6(d).a,null) +o.a=0 +r=new A.c0f(o,p,s==="NestedScrollViewState",a,b) +q=new A.c0g(p,r,b) +$.cW.xr$.push(new A.c0h(p,c,a,r,b,q)) +return new A.c0i(p,b,q)}, +bHG(a){var s,r,q,p,o,n +if(!$.Oz())return +s=$.an.U$.z.i(0,a) +if(s==null)return +r=s.gai() +if(r==null)return +t.x.a(r) +q=r.gu(0) +p=A.cK(r.cf(0,null),B.h) +o=p.a +n=p.b +this.bHF(new A.W(o,n,o+q.a,n+q.b))}, +bHF(a){var s,r,q +if(!$.Oz())return +s=a.b +r=$.d0z() +B.e.au(s*r) +q=a.a +B.e.au(q*r) +B.e.au((a.c-q)*r) +B.e.au((a.d-s)*r)}, +bHH(a){if(!$.Oz())return}, +aG8(a){if(!$.Oz())return}} +A.c0e.prototype={ +$0(){}, +$S:0} +A.c0f.prototype={ +$0(){var s,r,q,p,o,n=this +if(n.c){s=t.CX.a(n.d.gam()) +if(s==null)return +r=s.e.f +r===$&&A.b() +r=B.b.gcW(r.f) +q=r.ax +q.toString +r=r.Q +r.toString +p=s.e.e +p===$&&A.b() +p=B.b.gcW(p.f).Q +p.toString +o=0+(q+r)+p}else{r=B.b.gcW(n.e.f) +q=r.ax +q.toString +r=r.Q +r.toString +o=q+r}r=n.a +if(r.a===o)return +r.a=o +n.b.bHH(o)}, +$S:13} +A.c0g.prototype={ +$0(){this.b.$0() +var s=this.c.gb8(0).at +s.toString +this.a.aG8(s)}, +$S:13} +A.c0h.prototype={ +$1(a){var s,r,q=this,p=q.a +p.bHG(q.c) +q.d.$0() +s=q.e +r=s.gb8(0).at +r.toString +p.aG8(r) +B.b.gcW(s.f).a3(0,q.f)}, +$S:5} +A.c0i.prototype={ +$0(){var s=this.b.f +if(s.length!==0)B.b.gcW(s).O(0,this.c)}, +$S:0} +A.a_y.prototype={ +J(){return new A.acS(A.N(t.S,t.Cm),new A.b5H(A.N(t.ol,t.PX)),null,null,B.f)}} +A.acS.prototype={ +q(a){var s,r=this,q=r.am2(),p=r.CW +p.toString +p=r.auy(p.ah(0,r.gih().gj(0))) +s=r.auy(q) +r.a.toString +return new A.anw(new A.anF(p,s,null),q,null)}, +auy(a){var s,r,q,p,o,n,m,l,k +if(!a.cy.a||!1)return a +s=A.a([],t.hn) +for(r=a.ch,q=this.cy,p=0;p")).i6(0,new A.b5G()) +return s+(r.length-1)*this.d}, +gfv(){var s=this +return[s.a,!1,s.c,s.d,s.e]}} +A.b5F.prototype={ +$1(a){return a.e}, +$S:718} +A.b5G.prototype={ +$2(a,b){return a+b}, +$S:87} +A.k8.prototype={ +gfv(){var s=this +return[s.a,s.b,s.e,s.f,s.r,s.w,s.x,s.y,s.c,s.d]}} +A.nQ.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.anC.prototype={ +gfv(){var s=this +return[!1,s.b,s.c,s.d,s.e]}} +A.anG.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d,s.e,s.f,!1,!0]}} +A.aGS.prototype={ +H(){return"TooltipDirection."+this.b}} +A.anH.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d,s.e,s.f,s.r,!1,!1,s.z,s.Q,s.as]}} +A.y0.prototype={ +gfv(){return[this.a,this.b,B.at,B.j,null]}} +A.a_z.prototype={} +A.anI.prototype={ +gfv(){var s=this +return[s.c,s.d,s.e,s.f,s.r,s.w,s.a,s.b]}} +A.Ho.prototype={ +iE(a){var s,r=this.a +r.toString +s=this.b +s.toString +return r.abI(r,s,a)}} +A.aL7.prototype={} +A.aLa.prototype={} +A.aLb.prototype={} +A.aLd.prototype={} +A.aLe.prototype={} +A.aLf.prototype={} +A.aLg.prototype={} +A.aLh.prototype={} +A.aLi.prototype={} +A.b5H.prototype={ +bpH(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f +if(a.length===0)return new A.BY(0,0,!1) +r=new A.a51(a,t.ol) +q=this.a +if(q.aB(0,r)){q=q.i(0,r) +p=q.a +q=q.b +return new A.BY(p,q,!0)}s=null +try{s=B.b.WV(a,new A.b5I())}catch(o){return new A.BY(0,0,!1)}n=Math.max(s.c[0].a,s.c[0].b) +m=Math.min(s.c[0].a,s.c[0].b) +for(p=a.length,l=0;l")).aE(0,new A.b5K(p,m,n,o)) +s.push(new A.av_(m))}return s}, +buO(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=this,b3=b7.a,b4=b5.b +for(s=b3.ch,r=b5.a,q=b3.y,p=b3.x,o=0;oa2){a3=b2.iJ(Math.max(p,a2),b4,b7) +a4=A.qB(e,Math.min(b2.iJ(a1,b4,b7),a3-a0),d,a3,b,a,h,c)}else{a5=b2.iJ(Math.min(q,a2),b4,b7) +a4=A.qB(e,a5,d,Math.max(b2.iJ(a1,b4,b7),a5+a0),b,a,h,c)}h=b2.f +h===$&&A.b() +c=l.c +h.sa6(0,c==null?B.D:c) +h.skG(null) +r.dh(a4,b2.f) +h=l.y +if(h.length!==0)for(a6=0;a60){h=g.a +h=(h.gj(h)>>>24&255)/255>0}else h=!1 +if(h){h=b2.r +h===$&&A.b() +h.sa6(0,g.a) +h.se4(k) +b1=$.ar().dc() +b1.iM(a4) +r.ey(A.cGo(b1,l.r),b2.r)}}}}, +buY(a8,a9,b0,b1,b2,b3,b4,b5,b6){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,a5=null,a6=a9.b,a7=b1.r.$4(b2,b3,b4,b5) +if(a7==null)return +s=A.jT(a5,a5,a5,a5,A.cy(a5,a5,a5,$.kB().a_Q(a8,a7.b),a7.a),B.at,B.j,a5,1,b6.c,B.a0) +s.aBK(b1.f) +r=s.b +q=r.b +r=r.a.a +r=r.gdK(r) +p=b0[b3].b[b5] +o=b4.b +n=a4.iJ(o,a6,b6) +m=b4.a +l=a4.iJ(m,a6,b6) +k=b1.b +j=q+k.geL() +i=r+4+(k.gdM(0)+k.gdT(0)) +h=Math.min(n,l) +g=Math.max(n,l) +r=b1.y +if(r!==B.btY)f=r===B.Zq&&o>=m +else f=!0 +r=b1.c +e=f?h-i-r:g+r +d=a4.aJp(p,j,b1.d,b1.e) +r=d+j +p=e+i +c=new A.W(d,e,r,p) +o=b1.a +b=new A.bb(o,o) +a=A.TX(c,b,b,b,b) +o=a4.w +o===$&&A.b() +o.sa6(0,b1.as.$1(b2)) +a0=b1.z +r-=d +p-=e +o=$.kB().awC(new A.V(r,p),a0).b +n=$.kB() +m=s.b +l=m.b +m=m.a.a +a1=n.awC(new A.V(l,m.gdK(m)),a0) +m=c.gc1() +l=s.b.b +n=c.gaFG() +a2=b1.Q +if(!a2.l(0,B.G)){a3=a4.x +a3===$&&A.b() +a3.sa6(0,a2.a) +a3.se4(a2.b)}a9.buT(a0,new A.b5L(a4,a9,a,s,new A.j(m.a-l/2,n.b+k.b-a1.b+o)),new A.j(a.a,a.b),new A.j(0,o),new A.V(r,p))}, +buV(a,b,c,d,e,f,g,a0){var s,r,q,p,o,n,m,l,k,j=this,i=b.d,h=i.b +if(h!==0){s=i.a +s=(s.gj(s)>>>24&255)/255===0}else s=!0 +if(s)return +if(c===0){s=b.b +r=j.iJ(s,g,a0) +q=b.a +p=j.iJ(q,g,a0) +s=q=f +if(e){d=a8.iJ(g,b3,b4) +i=b1[m].c[k] +c=a8.iJ(i.a+i.x.b,b3,b4)}else{d=a8.iJ(f+i.x.b,b3,b4) +c=a8.iJ(b1[m].c[k].b,b3,b4)}a8.iJ(b1[m].c[k].x.c,b3,b4) +b=r<=j+h+q.c&&r>=j-h-p +if(e)a=s<=c+o&&s>=d-n +else a=s>=d-n&&s<=c+o +if(b&&a){a0=b1[m] +a1=a0.c[k] +r=a0.a +p=a1.b +o=a8.iJ(p,b3,b4) +b1=a1.y +a4=0 +while(!0){if(!(a4=a7){a3=a5 +a2=a4 +break}++a4}return new A.anI(a0,m,a1,k,a3,a2,new A.au7(r,p),new A.j(j,o))}}return null}} +A.b5K.prototype={ +$2(a,b){var s=this,r=b.e,q=s.d,p=s.a +s.b.push(s.c-q.geP(0)/2+p.a+r/2) +p.a=p.a+(r+q.d)}, +$S:721} +A.b5L.prototype={ +$0(){var s,r=this,q=r.b,p=r.c,o=r.a,n=o.w +n===$&&A.b() +s=q.a +s.dh(p,n) +o=o.x +o===$&&A.b() +s.dh(p,o) +q.a9Q(r.d,r.e)}, +$S:0} +A.av_.prototype={} +A.anF.prototype={ +aR(a){var s,r,q=this.e,p=A.bC(a,null,t.l).w.gdZ(),o=new A.b5J() +o.aUs() +s=$.ar() +r=s.aP() +r.sbN(0,B.aH) +o.f=r +r=s.aP() +r.sbN(0,B.a7) +o.r=r +r=s.aP() +r.sbN(0,B.aH) +r.sa6(0,B.r) +o.w=r +s=s.aP() +s.sbN(0,B.a7) +s.sa6(0,B.D) +s.se4(1) +o.x=s +o=new A.aCH(this.d,q,p,o,a,B.bt,A.aw(t.T)) +o.aQ() +o.adS(q.cy) +o.aAS() +return o}, +b_(a,b){b.si3(0,this.d) +b.sadv(this.e) +b.sdZ(A.bC(a,null,t.l).w.gdZ()) +b.D=a +b.aV()}} +A.aCH.prototype={ +si3(a,b){if(this.hT.l(0,b))return +this.hT=b +this.aV()}, +sadv(a){var s=this +if(s.jm.l(0,a))return +s.jm=a +s.ahc(a.cy) +s.aV()}, +sdZ(a){if(this.ha.l(0,a))return +this.ha=a +this.aV()}, +aI(a,b){var s,r,q=this,p=a.gbY(a) +p.d6(0) +p.ba(0,b.a,b.b) +s=q.D +r=q.gu(0) +q.jn.jJ(s,new A.aoA(p,r),new A.zH(q.hT,q.jm,q.ha,t.xo)) +p.de(0)}, +aeZ(a){var s=this,r=s.gu(0) +return new A.a_z(s.jn.aaZ(a,r,new A.zH(s.hT,s.jm,s.ha,t.xo)))}} +A.anv.prototype={ +gfv(){var s=this +return[s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.a,s.b,s.at]}} +A.OV.prototype={ +H(){return"AxisSide."+this.b}} +A.AC.prototype={} +A.Mf.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.aEx.prototype={ +gfv(){return[!1,0,0,0]}} +A.Hn.prototype={ +gfv(){return[this.b,this.a,this.c,!0]}} +A.a3g.prototype={ +gfv(){var s=this +return[!0,s.b,s.c,s.d,s.e]}} +A.au7.prototype={ +k(a){return"("+A.r(this.a)+", "+A.r(this.b)+")"}, +gfv(){return[this.a,this.b]}} +A.a39.prototype={ +gfv(){var s=this +return[s.a,!0,s.c,s.d,s.e,s.f,s.r,s.w,s.x]}} +A.Do.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.aGV.prototype={ +gfv(){return[this.a,this.b]}} +A.a7y.prototype={ +gfv(){return[this.a,this.b]}} +A.ru.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.ta.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.pe.prototype={ +gfv(){var s=this +return[s.e,s.w,s.a,s.c,s.d,s.f,s.r,s.x]}} +A.pE.prototype={ +gfv(){var s=this +return[s.e,s.w,s.a,s.c,s.d,s.f,s.r,s.x]}} +A.avr.prototype={ +gfv(){var s=this +return[s.f,s.a,s.b,s.c,s.d,s.e]}} +A.aHx.prototype={ +gfv(){var s=this +return[s.f,s.a,s.b,s.c,s.d,s.e]}} +A.QV.prototype={ +gfv(){return[this.a,this.b,!0]}} +A.aL1.prototype={} +A.aL5.prototype={} +A.aOL.prototype={} +A.aP6.prototype={} +A.aP8.prototype={} +A.aP9.prototype={} +A.aPa.prototype={} +A.aPT.prototype={} +A.aPS.prototype={} +A.aPV.prototype={} +A.aU4.prototype={} +A.aWA.prototype={} +A.aWB.prototype={} +A.aYM.prototype={} +A.aZy.prototype={} +A.aZx.prototype={} +A.aZA.prototype={} +A.b5j.prototype={ +XG(a,b,c,d,e,f){return new A.dz(this.bzB(a,b,c,d,e,f),t.fi)}, +bzA(a,b,c,d){return this.XG(a,b,c,!0,d,!0)}, +bzB(a,b,c,d,e,f){return function(){var s=a,r=b,q=c,p=d,o=e,n=f +var m=0,l=1,k,j,i,h,g,a0,a1 +return function $async$XG(a2,a3,a4){if(a3===1){k=a4 +m=l}while(true)switch(m){case 0:i=$.kB().aIo(o,q,r,s) +h=i===o +g=!n&&h?i+r:i +a0=i+B.e.hf(q-o,r)*r===q +a1=!p&&a0?q-r:q +m=n&&!h?2:3 +break +case 2:m=4 +return a2.b=o,1 +case 4:case 3:j=a1+r/1e5 +case 5:if(!(g<=j)){m=6 +break}m=7 +return a2.b=g,1 +case 7:g+=r +m=5 +break +case 6:m=p&&!a0?8:9 +break +case 8:m=10 +return a2.b=q,1 +case 10:case 9:return 0 +case 1:return a2.c=k,3}}}}} +A.a_t.prototype={ +aUs(){var s=this,r=$.ar(),q=r.aP() +q.sbN(0,B.a7) +s.a=q +q=r.aP() +q.sbN(0,B.aH) +s.b=q +q=r.aP() +q.sbN(0,B.aH) +s.e=q +q=r.aP() +q.sbN(0,B.a7) +s.c=q +s.d=r.aP()}, +jJ(a,b,c){var s=this +s.agn(a,b,c) +s.buN(b,c) +s.buS(b,c) +s.buP(b,c)}, +buP(a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=null,a0=a3.a,a1=a0.c +if(!a1.a)return +s=a2.b +if(a1.f){r=a1.r +if(r==null)r=$.kB().a_y(s.a,a0.r-a0.f) +q=$.cud().XG(a0.w,r,a0.r,!1,a0.f,!1) +for(p=new A.dr(q.a(),q.$ti.h("dr<1>")),o=s.b,n=a1.w,m=a1.x;p.t();){l=p.b +if(!m.$1(l))continue +k=b.a_H(l,s,a3) +j=new A.j(k,0) +i=new A.j(k,o) +h=n.$1(l) +l=b.a +l===$&&A.b() +g=h.a +A.lG(j,i) +l.sa6(0,g==null?B.D:g) +l.skG(a) +l.se4(h.c) +if(l.ge4()===0){l.skG(a) +g=l.ga6(l).a +l.sa6(0,A.Y(0,g>>>16&255,g>>>8&255,g&255))}a2.a9N(j,i,b.a,h.d)}}f=a1.c +if(f==null)f=$.kB().a_y(s.b,a0.y-a0.x) +q=$.cud().XG(a0.z,f,a0.y,!1,a0.x,!1) +for(p=new A.dr(q.a(),q.$ti.h("dr<1>")),n=a1.d,e=s.a,a1=a1.e;p.t();){m=p.b +if(!a1.$1(m))continue +d=n.$1(m) +c=b.iJ(m,s,a3) +j=new A.j(0,c) +i=new A.j(e,c) +m=b.a +m===$&&A.b() +l=d.a +A.lG(j,i) +m.sa6(0,l==null?B.D:l) +m.skG(a) +m.se4(d.c) +if(m.ge4()===0){m.skG(a) +l=m.ga6(m).a +m.sa6(0,A.Y(0,l>>>16&255,l>>>8&255,l&255))}a2.a9N(j,i,b.a,d.d)}}, +buN(a,b){var s,r,q=b.a.as +if((q.a>>>24&255)/255===0)return +s=a.b +r=this.b +r===$&&A.b() +r.sa6(0,q) +a.a.fs(new A.W(0,0,0+s.a,0+s.b),this.b)}, +buS(a,b){var s,r,q,p,o,n,m,l=this,k=a.b,j=b.a.e,i=j.b,h=i.length +if(h!==0)for(s=a.a,r=k.b,q=0;qp||l>p)){h=a.c +h===$&&A.b() +g=m.a +A.lG(j,i) +h.sa6(0,g==null?B.D:g) +h.skG(a0) +h.se4(m.c) +if(h.ge4()===0){h.skG(a0) +f=h.ga6(h).a +h.sa6(0,A.Y(0,f>>>16&255,f>>>8&255,f&255))}h.str(m.x) +a2.a9N(j,i,a.c,m.d) +h=m.w +if(h.a){e=new A.a4(!0,g,a0,a0,a0,a0,11,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0).dt(h.c) +d=h.b +g=h.f.$1(m) +c=A.cy(a0,a0,a0,$.kB().a_Q(a1,e),g) +b=new A.uH(c,B.ah,B.j,B.Y.l(0,B.Y)?new A.li(1):B.Y,a0,a0,a0,a0,B.a0,a0) +b.qt() +switch(h.e.a){case 0:g=b.b.a.a +a2.a9Q(b,h.d.Pi(new A.W(0+d.a,k-d.d-g.gdK(g),q-d.c-b.b.b,l+d.b))) +break +case 1:g=b.b.a.a +l=h.d.Pi(new A.W(0+d.a+g.gdK(g),k-d.d-b.b.b,q-d.c,l+d.b)) +o.d6(0) +k=l.a +g=l.b +o.ba(0,k,g) +$.kB() +o.qE(0,1.5707963267948966) +o.ba(0,-k,-g) +b.aI(o,l) +o.de(0) +break}}}}}, +a_H(a,b,c){var s=c.a,r=s.f,q=s.r-r +if(q===0)return 0 +return(a-r)/q*b.a}, +iJ(a,b,c){var s,r=c.a,q=r.x,p=r.y-q +if(p===0)return b.b +s=b.b +return s-(a-q)/p*s}, +aJp(a,b,c,d){switch(c.a){case 0:return a-b/2+d +case 2:return a+d +case 1:return a-b+d}}} +A.anw.prototype={ +gaMa(){var s=this.d.d.b.c,r=s.a&&s.c!==0 +return r}, +gaMc(){var s=this.d.d.d.c,r=s.a&&s.c!==0 +return r}, +gaMf(){var s=this.d.d.c.c,r=s.a&&s.c!==0 +return r}, +gaM4(){var s=this.d.d.e.c,r=s.a&&s.c!==0 +return r}, +aMZ(a){var s,r=this,q=null,p=r.d,o=A.cwO(p.d),n=p.a +n=n.a&&A.d2b(n.b)?n.b:q +s=A.a([A.bB(q,r.c,B.i,q,q,new A.c_(q,q,n,q,q,q,q,B.U),q,q,q,o,q,q,q,q)],t.p) +o=new A.b5l(s) +if(r.gaMa())B.b.eu(s,o.$1(!0),new A.Mg(B.zD,p,new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d)),q)) +if(r.gaMf())B.b.eu(s,o.$1(!0),new A.Mg(B.mu,p,new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d)),q)) +if(r.gaMc())B.b.eu(s,o.$1(!0),new A.Mg(B.zE,p,new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d)),q)) +if(r.gaM4())B.b.eu(s,o.$1(!0),new A.Mg(B.dH,p,new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d)),q)) +return s}, +q(a){return new A.fV(new A.b5k(this),null)}} +A.b5l.prototype={ +$1(a){return 0}, +$S:722} +A.b5k.prototype={ +$2(a,b){return new A.d4(B.ar,null,B.am,B.k,this.a.aMZ(b),null)}, +$S:209} +A.Me.prototype={ +J(){return new A.aiD(new A.aR(null,t.A),B.f)}} +A.aiD.prototype={ +b1F(){switch(this.a.c.a){case 0:return B.cy +case 1:return B.dG +case 2:return B.c9 +case 3:return B.cW}}, +b2j(){switch(this.a.c.a){case 0:return new A.af(0,0,8,0) +case 1:return new A.af(0,0,0,8) +case 2:return new A.af(8,0,0,0) +case 3:return new A.af(0,8,0,0)}}, +b1N(a){this.a.toString +return}, +a8(){this.an() +$.cW.xr$.push(this.gam1())}, +b1(a){this.bc(a) +$.cW.xr$.push(this.gam1())}, +q(a){var s,r=this,q=null +r.a.toString +s=r.b2j() +return A.uP(A.aGX(0,A.bB(r.b1F(),r.a.e,B.i,q,q,q,q,q,r.d,s,q,q,q,q)),B.h,!0)}} +A.aEy.prototype={ +aR(a){var s=null,r=new A.anx(this.e,this.f,this.r,A.aw(t.O5),A.aK(4,A.jT(s,s,s,s,s,B.ah,B.j,s,1,B.Y,B.a0),!1,t.mi),!0,0,s,s,A.aw(t.T)) +r.aQ() +return r}, +b_(a,b){var s=this.e +if(b.D!==s){b.D=s +b.a9()}s=this.f +if(b.N!==s){b.N=s +b.a9()}s=this.r +if(b.a4!==s){b.a4=s +b.a9()}}} +A.bFS.prototype={ +$1(a){return a.a}, +$S:726} +A.bFT.prototype={ +$1(a){return a.b}, +$S:727} +A.anx.prototype={ +fo(a){if(!(a.b instanceof A.fr))a.b=new A.fr(null,null,B.h)}, +il(a){if(this.D===B.a_)return this.yH(a) +return this.Mm(a)}, +bic(a){switch(this.D.a){case 0:return a.b +case 1:return a.a}}, +as4(a){switch(this.D.a){case 0:return a.a +case 1:return a.b}}, +cX(a){var s=this.as3(a,A.k0()) +switch(this.D.a){case 0:return a.bd(new A.V(s.a,s.b)) +case 1:return a.bd(new A.V(s.b,s.a))}}, +as3(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.D===B.a_?a.b:a.d,i=k.Y$ +for(s=t.US,r=a.b,q=a.d,p=0,o=0;i!=null;){n=i.b +n.toString +s.a(n) +switch(k.D.a){case 0:m=A.fH(q,null) +break +case 1:m=A.fH(null,r) +break +default:m=null}l=b.$2(i,m) +o+=k.as4(l) +p=Math.max(p,k.bic(l)) +i=n.a7$}return new A.c3n(j<1/0?j:o,p)}, +bJ(){var s,r,q,p,o,n,m,l=this,k=t.k.a(A.H.prototype.gZ.call(l)),j=l.as3(k,A.k1()),i=j.a,h=j.b +switch(l.D.a){case 0:l.id=k.bd(new A.V(i,h)) +l.gu(0) +l.gu(0) +break +case 1:l.id=k.bd(new A.V(h,i)) +l.gu(0) +l.gu(0) +break}s=l.Y$ +for(r=t.US,q=0;s!=null;){p=s.b +p.toString +r.a(p) +o=l.a4[q].b +n=s.id +m=o-l.as4(n==null?A.C(A.a0("RenderBox was not laid out: "+A.I(s).k(0)+"#"+A.bq(s))):n)/2 +switch(l.D.a){case 0:o=new A.j(m,0) +break +case 1:o=new A.j(0,m) +break +default:o=null}p.a=o +s=p.a7$;++q}}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){if(this.gu(0).gad(0))return +this.ag.sb9(0,null) +this.nL(a,b)}, +m(){this.ag.sb9(0,null) +this.aRr()}} +A.c3n.prototype={} +A.b5m.prototype={} +A.nO.prototype={ +gfv(){return[this.a,this.b]}} +A.tv.prototype={} +A.aL2.prototype={} +A.aL3.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.US;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.US;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aL4.prototype={} +A.acP.prototype={ +m(){var s,r,q +for(s=this.wc$,r=s.length,q=0;q")) +o=s.gep(s).fK(0,new A.bFU(q),t.sE).eO(0)}else{n=$.cud() +s=!r||s===B.dH +r=l.d +m=n.bzA(s?r.w:r.z,k,c,b) +r=A.nb(m,new A.bFV(l,c,b,a),m.$ti.h("B.E"),t.sE) +o=A.R(r,!0,A.z(r).h("B.E"))}s=A.X(o).h("O<1,tv>") +return A.R(new A.O(o,new A.bFW(l,b,c,k,d,a),s),!0,s.h("aa.E"))}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null +f.gu_() +s=f.gu_() +s=s.c +s=!(s.a&&s.c!==0) +if(s)return A.bB(e,e,B.i,e,e,e,e,e,e,e,e,e,e,e) +s=f.c +r=s===B.mu +q=!r +p=!q||s===B.dH +o=f.e +n=p?o.a:o.b +p=f.giN() +o=!q||s===B.dH?B.v:B.a_ +m=A.a([],t.p) +if(s===B.zD||r)f.gu_() +if(f.gu_().c.a){r=!q||s===B.dH?n:f.gu_().c.c +l=!q||s===B.dH?f.gu_().c.c:n +k=f.gbGL() +j=!q||s===B.dH?B.a_:B.v +f.gaFo() +i=f.gaFo() +h=!q||s===B.dH +g=f.d +h=h?g.f:g.x +q=!q||s===B.dH?g.r:g.y +m.push(A.bB(e,A.dds(new A.b5m(),j,f.bAJ(n-i,h,q,s)),B.i,e,e,e,e,l,e,k,e,e,e,r))}if(s===B.zE||s===B.dH)f.gu_() +return new A.fl(p,e,e,A.cwP(m,B.t,o,e,B.o,B.Z,e,e,B.x),e)}} +A.bFU.prototype={ +$1(a){return new A.nO(this.a.ch[a.a].a,a.b)}, +$S:733} +A.bFV.prototype={ +$1(a){var s=this,r=s.c,q=s.b-r,p=q>0?(a-r)/q:0 +r=s.a.c +if(!(r===B.mu||r===B.dH))p=1-p +return new A.nO(a,p*s.d)}, +$S:737} +A.bFW.prototype={ +$1(a){var s,r,q,p,o=this,n=o.a,m=n.gu_(),l=a.a +n.gu_() +n=$.kB() +s=l<0 +r=s?Math.abs(l):l +if(r>=1e9){q=B.e.aZ(r/1e9,1) +p="B"}else if(r>=1e6){q=B.e.aZ(r/1e6,1) +p="M"}else if(r>=1000){q=B.e.aZ(r/1000,1) +p="K"}else{q=B.e.aZ(r,n.aIG(Math.abs(o.b-o.c))) +p=""}if(B.c.eV(q,".0"))q=B.c.R(q,0,q.length-2) +if(s)q="-"+q +if(q==="-0")q="0" +return new A.tv(a,m.c.b.$2(l,new A.AC(q+p,o.e)))}, +$S:738} +A.anP.prototype={ +gfv(){return[this.a,this.b]}} +A.atY.prototype={ +gfv(){return[this.a,this.b]}} +A.a3h.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.atZ.prototype={ +gfv(){return[!1,!1,!1,!1]}} +A.b67.prototype={} +A.bhw.prototype={ +H(){return"FLHorizontalAlignment."+this.b}} +A.aLl.prototype={} +A.aP4.prototype={} +A.aP5.prototype={} +A.aPb.prototype={} +A.a_B.prototype={ +jJ(a,b,c){}} +A.zH.prototype={} +A.jK.prototype={ +gev(){return null}, +gabo(){var s,r=this +A.bL() +A.bL() +A.bL() +s=r instanceof A.a3f +if(s)return!0 +return!(r instanceof A.a3c)&&!(r instanceof A.a3b)&&!(r instanceof A.a3d)&&!(r instanceof A.a3a)&&!s&&!(r instanceof A.a3e)}} +A.au2.prototype={ +gev(){return this.a.b}} +A.au3.prototype={ +gev(){return this.a.c}} +A.au4.prototype={ +gev(){return this.a.e}} +A.a3b.prototype={} +A.a3c.prototype={} +A.au8.prototype={ +gev(){return this.a.c}} +A.a3e.prototype={} +A.a3f.prototype={ +gev(){return this.a.b}} +A.au1.prototype={ +gev(){return this.a.b}} +A.au0.prototype={ +gev(){return this.a.b}} +A.a3a.prototype={ +gev(){return this.a.b}} +A.au5.prototype={ +gev(){return this.a.gev()}} +A.au6.prototype={ +gev(){return this.a.gev()}} +A.a3d.prototype={ +gev(){return this.a.gev()}} +A.Ua.prototype={ +adS(a){this.N=a.b +this.a4=a.c +this.ag=a.d}, +aAS(){var s=this,r=null,q=s.U=A.cyk(r,r,r) +q.ay=new A.bAd(s) +q.ch=new A.bAe(s) +q.CW=new A.bAf(s) +q.cy=new A.bAg(s) +q.cx=new A.bAh(s) +q=s.aW=A.t5(r,r,r) +q.be=new A.bAi(s) +q.e7=new A.bAj(s) +q.bj=new A.bAk(s) +q=s.aT=A.St(r,r,s.ag,r,r) +q.p3=new A.bAl(s) +q.p4=new A.bAm(s) +q.RG=new A.bAn(s)}, +bJ(){var s=t.k.a(A.H.prototype.gZ.call(this)) +this.id=new A.V(s.b,s.d)}, +cX(a){return new A.V(a.b,a.d)}, +kw(a){return!0}, +n8(a,b){var s,r=this +if(r.N==null)return +if(t.pY.b(a)){s=r.aT +s===$&&A.b() +s.m9(a) +s=r.aW +s===$&&A.b() +s.m9(a) +s=r.U +s===$&&A.b() +s.m9(a)}else if(t.XA.b(a))r.oc(new A.au6(a))}, +gO3(a){return new A.bAo(this)}, +gO4(a){return new A.bAp(this)}, +oc(a){var s,r,q=this +if(q.N==null)return +s=a.gev() +r=s!=null?q.aeZ(s):null +q.N.$2(a,r) +q.aq=B.bt}, +gyD(a){return this.aq}, +gI3(){var s=this.aJ +s===$&&A.b() +return s}, +aA(a){this.ea(a) +this.aJ=!0}, +ar(a){this.aJ=!1 +this.e5(0)}, +$ilC:1} +A.bAd.prototype={ +$1(a){this.a.oc(new A.au2(a))}, +$S:120} +A.bAe.prototype={ +$1(a){this.a.oc(new A.au3(a))}, +$S:24} +A.bAf.prototype={ +$1(a){this.a.oc(new A.au4(a))}, +$S:15} +A.bAg.prototype={ +$0(){this.a.oc(B.a4K)}, +$S:0} +A.bAh.prototype={ +$1(a){this.a.oc(new A.a3c())}, +$S:22} +A.bAi.prototype={ +$1(a){this.a.oc(new A.au8(a))}, +$S:27} +A.bAj.prototype={ +$0(){this.a.oc(B.a4L)}, +$S:0} +A.bAk.prototype={ +$1(a){this.a.oc(new A.a3f(a))}, +$S:35} +A.bAl.prototype={ +$1(a){this.a.oc(new A.au1(a))}, +$S:86} +A.bAm.prototype={ +$1(a){this.a.oc(new A.au0(a))}, +$S:95} +A.bAn.prototype={ +$1(a){return this.a.oc(new A.a3a(a))}, +$S:107} +A.bAo.prototype={ +$1(a){return this.a.oc(new A.au5(a))}, +$S:69} +A.bAp.prototype={ +$1(a){return this.a.oc(new A.a3d(a))}, +$S:70} +A.awW.prototype={} +A.boA.prototype={ +H(){return"LabelDirection."+this.b}} +A.au_.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d,s.e]}} +A.aP7.prototype={} +A.a76.prototype={ +J(){return new A.aT2(null,null,B.f)}} +A.aT2.prototype={ +a8(){$.an.xr$.push(new A.c9w(this)) +this.a0B()}, +q(a){var s=this.a.r,r=this.CW +r.toString +return new A.aBm(r.ah(0,this.gih().gj(0)),s,A.db1(s.c),null)}, +n6(a){var s=this +s.CW=t.tL.a(a.$3(s.CW,s.a.r,new A.c9u(s)))}} +A.c9w.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.C(new A.c9v())}, +$S:5} +A.c9v.prototype={ +$0(){}, +$S:0} +A.c9u.prototype={ +$1(a){return new A.KY(t.NV.a(a),this.a.a.r)}, +$S:763} +A.ww.prototype={ +gQH(){var s=this.c +return new A.O(s,new A.bxc(),A.X(s).h("O<1,U>")).i6(0,new A.bxd())}, +abI(a,b,c){var s,r,q,p,o=b.a +o=A.bic(A.a_T(a.a.b,o.b,c),o.a) +s=A.ai(a.e,b.e,c) +r=A.dtl(a.d,b.d,c) +q=A.av(a.f,b.f,c) +p=A.av(a.r,b.r,c) +p=A.cKQ(o,s,r,b.w,A.ve(a.c,b.c,c,A.dum(),t.Ka),q,p) +return p}, +gfv(){var s=this +return[s.c,s.d,s.e,s.w,s.f,s.r,s.a]}} +A.bxb.prototype={ +$1(a){return a.a!==0}, +$S:764} +A.bxc.prototype={ +$1(a){return a.a}, +$S:363} +A.bxd.prototype={ +$2(a,b){return a+b}, +$S:87} +A.ir.prototype={} +A.aBn.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.aBo.prototype={ +gfv(){var s=this +return[s.a,s.b,s.c,s.d]}} +A.a77.prototype={} +A.KY.prototype={ +iE(a){var s,r=this.a +r.toString +s=this.b +s.toString +return r.abI(r,s,a)}} +A.aT1.prototype={} +A.aT4.prototype={} +A.aT5.prototype={} +A.bxj.prototype={ +$1(a){this.b[a.a]=a.b.x +this.a.a=!1}, +$S:773} +A.bxe.prototype={ +jJ(a,b,c){var s,r,q,p,o,n=this +n.agn(a,b,c) +s=c.a +r=s.c +if(r.length===0)return +q=n.a7Z(r,s.gQH()) +r=b.b +p=n.a7Y(r,c) +o=n.d +o===$&&A.b() +o.sa6(0,s.e) +b.a.h3(new A.j(r.a/2,r.b/2),p,n.d) +n.buU(b,q,p,c) +n.buX(a,b,c,p)}, +a7Z(a,b){var s=A.X(a).h("O<1,U>") +return A.R(new A.O(a,new A.bxg(b),s),!0,s.h("aa.E"))}, +buU(a,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=a2.a,f=a.b,e=f.a,d=f.b,c=new A.j(e/2,d/2),b=g.r +for(s=g.c,r=a.a,q=g.f,e=0+e,d=0+d,p=0;p>>24&255)/255!==0}else q=!1 +if(q){q=h.c +q===$&&A.b() +q.se4(s) +q.sa6(0,d.a) +s/=2 +r.h3(c,e-s,h.c) +r.h3(c,a1+s,h.c)}return}l=h.aIa(o,q,b,n,c,a1) +k=h.a +k===$&&A.b() +j=o.b +l.np(0) +k.sa6(0,j) +k.skG(null) +k.sbN(0,B.aH) +r.ey(l,h.a) +k=o.w +j=k.b +if(j!==0){i=k.a +i=(i.gj(i)>>>24&255)/255!==0}else i=!1 +if(i){r.kD(new A.W(0,0,e,d),$.ar().aP()) +r.LP(0,l,!0) +i=h.c +i===$&&A.b() +i.se4(j*2) +i.sa6(0,k.a) +r.ey(l,h.c) +r.de(0)}b+=n}}, +aIa(a0,a1,a2,a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=a0.d,b=A.jQ(a4,a5+c),a=A.jQ(a4,a5) +$.kB() +p=a2*0.017453292519943295 +o=a3*0.017453292519943295 +n=p+o +m=new A.j(Math.cos(p),Math.sin(p)) +l=a4.S(0,m.X(0,a5)) +k=l.S(0,m.X(0,c)) +j=new A.j(Math.cos(n),Math.sin(n)) +i=a4.S(0,j.X(0,a5)) +h=i.S(0,j.X(0,c)) +c=$.ar() +g=c.dc() +f=l.a +e=l.b +g.fV(0,f,e) +g.ds(0,k.a,k.b) +g.tY(0,b,p,o,!1) +g.ds(0,i.a,i.b) +g.tY(0,a,n,-o,!1) +g.fV(0,f,e) +g.aO(0) +s=g +if(a1!==0){r=this.ay6(new A.awW(l,k),a1) +try{s=c.a8g(B.SV,s,r)}catch(d){}q=this.ay6(new A.awW(i,h),a1) +try{c=s +s=$.ar().a8g(B.SV,c,q)}catch(d){}}return s}, +ay6(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d +b/=2 +s=a.b +r=a.a +q=s.W(0,r) +p=s.W(0,r) +o=p.a +n=p.b +m=q.X(0,1/Math.sqrt(o*o+n*n)) +p=s.W(0,r) +l=Math.atan(p.b/p.a)+1.5707963267948966 +k=new A.j(Math.cos(l),Math.sin(l)) +j=b/2 +i=r.a-m.X(0,j).a-k.X(0,b).a +r=r.b-m.X(0,j).b-k.X(0,b).b +h=s.a+m.X(0,j).a-k.X(0,b).a +j=s.b+m.X(0,j).b-k.X(0,b).b +s=b*2 +g=k.X(0,s) +f=k.X(0,s) +e=k.X(0,s) +s=k.X(0,s) +d=$.ar().dc() +d.fV(0,i,r) +d.ds(0,h,j) +d.ds(0,h+g.a,j+f.b) +d.ds(0,i+e.a,r+s.b) +d.ds(0,i,r) +return d}, +buX(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i=null,h=c.a,g=b.b,f=new A.j(g.a/2,g.b/2),e=h.r +for(s=h.c,r=c.c,q=0;q=n+o&&r<=j+n-o +h=this.a7Y(a2,a3) +l=k.d +g=a0>h&&a0<=h+l +if(i&&g){p=m +q=k +break}n+=j;++m}return new A.aBo(q,p,s,a0)}, +aIn(a,b){var s,r,q,p,o,n=b.a,m=a.nD(B.h),l=A.N(t.S,t.EP),k=n.c +if(k.length===0)return l +s=n.r +r=this.a7Z(k,n.gQH()) +for(q=0;qb.d?a:b}, +$S:790} +A.bxi.prototype={ +$1(a){var s,r,q,p=this +$.kB() +s=p.b*0.017453292519943295 +r=Math.cos(s) +q=p.c+p.d.d*a +$.kB() +return p.a.S(0,new A.j(r*q,Math.sin(s)*q))}, +$S:364} +A.aBm.prototype={ +aR(a){var s=this.f,r=A.bC(a,null,t.l).w.gdZ(),q=new A.bxe(),p=$.ar(),o=p.aP() +o.sbN(0,B.a7) +q.a=o +q.b=p.aP() +o=p.aP() +o.sbN(0,B.a7) +q.c=o +p=p.aP() +p.sbN(0,B.aH) +q.d=p +q=new A.aD0(this.e,s,r,q,0,null,null,a,B.bt,A.aw(t.T)) +q.aQ() +q.adS(s.w) +q.aAS() +return q}, +b_(a,b){b.si3(0,this.e) +b.sadv(this.f) +b.sdZ(A.bC(a,null,t.l).w.gdZ()) +b.D=a +b.aV()}} +A.aD0.prototype={ +si3(a,b){if(this.hT.l(0,b))return +this.hT=b +this.a9()}, +sadv(a){var s=this +if(s.jm.l(0,a))return +s.jm=a +s.ahc(a.w) +s.a9()}, +sdZ(a){if(this.ha.l(0,a))return +this.ha=a +this.aV()}, +fo(a){if(!(a.b instanceof A.i_))a.b=new A.i_(null,null,B.h)}, +bJ(){var s,r,q,p,o,n,m=this,l=m.Y$,k=t.k,j=k.a(A.H.prototype.gZ.call(m)) +m.id=new A.V(j.b,j.d) +k=k.a(A.H.prototype.gZ.call(m)) +s=new A.aG(0,k.b,0,k.d) +k=m.gu(0) +r=m.jn.aIn(k,new A.zH(m.hT,m.jm,m.ha,t.wy)) +for(k=t.Wz,q=0;l!=null;){if(q>=r.a)break +l.d_(s,!0) +j=l.b +j.toString +k.a(j) +p=l.id +o=p==null?A.C(A.a0("RenderBox was not laid out: "+A.I(l).k(0)+"#"+A.bq(l))):p +n=r.i(0,q) +j.a=new A.j(n.a-o.a/2,n.b-p.b/2) +l=j.a7$;++q}}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){var s,r,q=this,p=a.gbY(a) +p.d6(0) +p.ba(0,b.a,b.b) +s=q.D +r=q.gu(0) +q.jn.jJ(s,new A.aoA(p,r),new A.zH(q.hT,q.jm,q.ha,t.wy)) +p.de(0) +q.nL(a,b)}, +aeZ(a){var s=this,r=s.gu(0) +return new A.a77(s.jn.aaZ(a,r,new A.zH(s.hT,s.jm,s.ha,t.wy)))}, +lm(a){}} +A.aV5.prototype={ +aA(a){var s,r,q +this.aPF(a) +s=this.Y$ +for(r=t.Wz;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.aPG(0) +s=this.Y$ +for(r=t.Wz;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aV6.prototype={} +A.b5z.prototype={ +$1(a){return a.geP(0)}, +$S:791} +A.b5A.prototype={ +$2(a,b){return a+b}, +$S:87} +A.b5D.prototype={ +$0(){var s={},r=this.b.ch,q=r.length +s.a=0 +new A.l_(r,A.X(r).h("l_<1>")).aE(0,new A.b5E(s,this.a/(q+1),this.c))}, +$S:0} +A.b5E.prototype={ +$2(a,b){var s=this.a,r=s.a+this.b +s.a=r +r=s.a=r+b.geP(0)/2 +this.c[a]=r +s.a=r+b.geP(0)/2}, +$S:230} +A.b5B.prototype={ +$2(a,b){var s=this.a,r=s.a=s.a+b.geP(0)/2,q=a!==0?s.a=r+this.b:r +this.c[a]=q +s.a=q+b.geP(0)/2}, +$S:230} +A.b5C.prototype={ +$2(a,b){var s=this.a,r=this.b,q=s.b+r +s.b=q +q=s.b=q+b.geP(0)/2 +this.c[a]=q +q+=b.geP(0)/2 +s.b=q +s.b=q+r}, +$S:230} +A.bbu.prototype={ +$1(a){return a}, +$S:325} +A.aoA.prototype={ +a9Q(a,b){a.aI(this.a,b)}, +buT(a,b,c,d,e){var s,r,q,p,o=this.a +o.d6(0) +s=c.a +r=e.a/2 +q=c.b +p=e.b/2 +o.ba(0,d.a+s+r,d.b+q+p) +$.kB() +o.qE(0,a*0.017453292519943295) +o.ba(0,-s-r,-q-p) +b.$0() +o.de(0)}, +a9N(a,b,c,d){var s=$.ar().dc() +s.fV(0,a.a,a.b) +s.ds(0,b.a,b.b) +this.a.ey(A.cGo(s,d),c)}} +A.a51.prototype={ +gfv(){return[this.a]}} +A.aR3.prototype={} +A.aoW.prototype={} +A.bO0.prototype={ +awC(a,b){var s=a.a,r=b*0.017453292519943295,q=Math.sin(r),p=a.b,o=Math.cos(r) +return new A.j((s-(Math.abs(s*Math.cos(r))+Math.abs(p*Math.sin(r))))/2,(p-(Math.abs(s*q)+Math.abs(p*o)))/2)}, +bBx(a,b){var s,r,q,p,o +if(a==null)return null +s=a.a +r=b/2 +if(s.a>r||s.b>r)s=new A.bb(r,r) +q=a.b +if(q.a>r||q.b>r)q=new A.bb(r,r) +p=a.c +if(p.a>r||p.b>r)p=new A.bb(r,r) +o=a.d +return new A.dJ(s,q,p,o.a>r||o.b>r?new A.bb(r,r):o)}, +bBy(a,b){var s,r +if(a==null)return B.ru +s=a.b +r=b/2 +return a.bs2(s>r?r:s)}, +a_y(a,b){var s,r=Math.max(B.e.aD(a,40),1) +if(b===0)return 1 +s=b/r +if(r<=2)return s +return this.bGv(s)}, +bGv(a){if(a<1)return this.bgg(a) +return this.ar2(a)}, +bgg(a){var s,r,q,p,o,n,m +if(a<0.000001)return a +s=B.e.k(a) +r=s.length +q=r-2 +for(p=0,o=2;o<=r;++o){if(s[o]!=="0")break;++p}n=q-p +if(n>2)q-=n-2 +m=Math.pow(10,q) +return this.ar2(a*m)/m}, +ar2(a){var s,r=B.d.k(B.e.au(a)).length-1 +a/=Math.pow(10,r) +s=a>=10?B.e.aF(a)/10:a +if(s>=7.6)return 10*B.e.au(Math.pow(10,r)) +else if(s>=2.6)return 5*B.e.au(Math.pow(10,r)) +else if(s>=1.6)return 2*B.e.au(Math.pow(10,r)) +else return B.e.au(Math.pow(10,r))}, +aIG(a){if(a>=1)return 1 +else if(a>=0.1)return 2 +else if(a>=0.01)return 3 +else if(a>=0.001)return 4 +else if(a>=0.0001)return 5 +else if(a>=0.00001)return 6 +else if(a>=0.000001)return 7 +else if(a>=1e-7)return 8 +else if(a>=1e-8)return 9 +else if(a>=1e-9)return 10 +return 1}, +a_Q(a,b){var s,r=a.a0(t.sp) +if(r==null)r=B.dm +s=b==null||b.a?r.w.dt(b):b +r=A.cG(a,B.mn) +r=r==null?null:r.ay +if(r===!0)s=s.dt(B.hh) +s.toString +return s}, +aIo(a,b,c,d){var s=B.e.M(d-a,c) +if(Math.abs(b-a)<=s)return a +if(s===0)return a +return a+s}} +A.pU.prototype={ +k(a){var s=$.cUt().i(0,this) +return s==null?"Anchor("+A.r(this.a)+", "+A.r(this.b)+")":s}, +l(a,b){if(b==null)return!1 +return b instanceof A.pU&&this.a===b.a&&this.b===b.b}, +gv(a){return B.e.gv(this.a)*31+B.e.gv(this.b)}} +A.b4d.prototype={} +A.bn4.prototype={ +aB(a,b){return this.a.aB(0,b)}, +RM(a){return this.b0X(a)}, +b0X(a){var s=0,r=A.p(t.lu),q,p=this,o,n,m +var $async$RM=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.c +o===$&&A.b() +n=A +m=A +s=3 +return A.i(p.b.fB(0,o+a),$async$RM) +case 3:q=n.alV(m.dF(c.buffer,0,null)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$RM,r)}} +A.aQ5.prototype={ +aVm(a){this.b.bf(new A.c1Y(this),t.P)}} +A.c1Y.prototype={ +$1(a){var s=this.a +s.a=a +s.b=null}, +$S:794} +A.azj.prototype={ +aLJ(a,b){var s,r,q=this.a,p=q.aB(0,a) +q.n(0,a,b) +if(!p)for(s=A.z(q).h("bR<1>");q.a>10;){r=new A.bR(q,s).gaz(0) +if(!r.t())A.C(A.dB()) +q.F(0,r.gK(0))}}, +aB(a,b){return this.a.aB(0,b)}} +A.fN.prototype={ +bzg(a){var s,r +if(this.a==null)return!1 +for(s=0;r=this.b,s=0}, +gA(a){var s,r=this.b +if(r<0)r=0 +else{s=this.c +r=s>=r?s-r+1:this.e.length-r+s+1}return r}, +ga2(a){return this.e[this.b]}, +gP(a){return this.e[this.c]}, +UN(){var s,r,q,p,o,n=this,m=n.b +if(m<0){n.c=n.b=0 +m=n.e +if(m.length===0)m.push(n.a.$0())}else{s=n.c +if(s>=m){++s +n.c=s +r=n.e +if(s===r.length)if(m===0)r.push(n.a.$0()) +else n.c=0}else if(s===m-1){m=n.e +q=Math.min(m.length,32) +p=J.d1(q,n.$ti.c) +for(s=n.a,o=0;on.c)n.d=m+q +for(o=0;m=n.f,on.c)B.b.n(m,o,s+q)}++n.c}else n.c=s+1}return n.e[n.c]}, +gaz(a){this.JZ() +this.d=-2 +return this}, +gK(a){return this.e[this.d]}, +t(){var s,r=this,q=r.b +if(q<0||r.d===-1){r.d=-1 +return!1}s=r.d +if(s<0)r.d=q +else if(s===r.c){r.d=-1 +r.JZ() +return!1}else{q=s+1 +r.d=q +if(q===r.e.length)r.d=0}return!0}, +JZ(){var s,r,q,p,o,n,m,l,k,j=this,i=j.f,h=i.length +if(h===0)return +s=A.X(i) +r=new J.cP(i,h,s.h("cP<1>")) +r.t() +q=r.d +if(q==null)q=s.c.a(q) +p=j.b +o=new A.bA2(j) +for(i=j.e,s=s.c,n=p,m=-1;p!==-1;)if(p===q){if(r.t()){q=r.d +if(q==null)q=s.a(q)}else q=-1 +p=o.$1(p)}else{if(p!==n){l=i[p] +i[p]=i[n] +i[n]=l}p=o.$1(p) +k=o.$1(n) +m=n +n=k}j.c=m +B.b.V(j.f)}, +k(a){var s,r=this,q=r.f,p=r.d +r.d=-1 +r.f=B.eE +s=r.aOK(0) +r.d=p +r.f=q +return"RecycledQueue"+s}} +A.bA2.prototype={ +$1(a){var s=this.a +if(a===s.c)s=-1 +else s=a===s.e.length-1?0:a+1 +return s}, +$S:36} +A.av7.prototype={} +A.yZ.prototype={ +gqO(){var s,r=this,q=r.WI$ +if(q==null){s=r.pn() +s.toString +q=r.WI$=A.z(r).h("yZ.T").a(s)}return q}} +A.a3P.prototype={} +A.TE.prototype={ +a1a(a,b,c,d,e,f,g,h,i){var s=this,r=s.at +s.CW=new A.bNo(r) +r.c=0 +r.b=!0 +r.ab() +s.ax.a3(0,s.gbbP()) +s.apl()}, +gu(a){return this.ax}, +FN(a){var s,r=a.a,q=r[0] +if(q>=0){r=r[1] +if(r>=0){s=this.ax.a +r=q"));r.t();){q=d.a(s.gK(0)) +p.b=a +b.$1(q) +if(!p.b){B.b.V($.tA) +break}}}, +btA(a,b,c){return this.a9n(!1,a,b,c)}} +A.aBP.prototype={ +ga81(){var s,r=this,q=r.w +if(q===$){s=r.f.brj(r.r) +r.w!==$&&A.a_() +r.w=s +q=s}return q}} +A.bKw.prototype={ +k(a){return"TapCancelEvent(pointerId: "+this.c+")"}} +A.aFS.prototype={ +k(a){var s=this +return"TapDownEvent(canvasPosition: "+s.ga81().k(0)+", devicePosition: "+s.r.k(0)+", pointerId: "+s.Q+", deviceKind: "+s.as.k(0)+")"}} +A.aFU.prototype={ +k(a){var s=this +return"TapUpEvent(canvasPosition: "+s.ga81().k(0)+", devicePosition: "+s.r.k(0)+", pointerId: "+s.Q+", deviceKind: "+s.as.k(0)+")"}} +A.Fx.prototype={ +gv(a){return A.ad(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 +return this.$ti.b(b)&&b.a===this.a&&b.b===this.b}} +A.Dp.prototype={ +aUH(a,b,c,d){var s=this,r=s.k4,q=s.k3 +r.ay=q +s.km(r) +s.km(q)}, +gu(a){return this.k4.at.gu(0)}, +hk(a){var s=0,r=A.p(t.H),q=this,p +var $async$hk=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.aOt(0) +s=2 +return A.i(p,$async$hk) +case 2:q.a|=2 +q.b=null +return A.n(null,r)}}) +return A.o($async$hk,r)}, +CJ(){var s,r=this +r.aOu() +r.a|=4 +s=r.c +if(s!=null)s.fw(0) +r.c=null +r.aqo()}, +k6(a){if(this.e==null)this.oD(a)}, +oD(a){var s,r,q +for(s=this.geg(0).gaz(0),r=s.$ti.y[1];s.t();){q=s.d;(q==null?r.a(q):q).oD(a)}}, +cI(a,b){if(this.e==null)this.a_3(b)}, +a_3(a){var s,r,q,p=this +p.bEp() +if(p.e!=null){p.Ja(0,a) +$.m0().d9(0,t.nS).Oa()}for(s=p.geg(0).gaz(0),r=s.$ti.y[1];s.t();){q=s.d;(q==null?r.a(q):q).a_3(a)}p.bEv()}, +uJ(a){var s,r=this +r.aOv(a) +s=r.k4.at +s.su(0,a) +s.QJ(a) +r.Xa(a) +r.geg(0).aE(0,new A.bid(a))}, +FN(a){var s,r=a.a,q=r[0] +if(q>=0){r=r[1] +if(r>=0){s=this.za$.a +r=q"))}, +b7L(a){}} +A.Rf.prototype={ +gbAm(){var s=this.e +return s==null?this.e=new A.bjX(this).$0():s}, +aqf(a){var s=this,r=A.aF("result") +try{++s.r +r.se9(a.$0())}finally{--s.r}if(s.w&&s.r===0)A.cx1(s.ga4K(),t.H) +return r.aX()}, +bbn(){var s=this +if(s.r>0)s.w=!0 +else s.C(new A.bjS(s))}, +aAQ(){var s=this,r=s.d=s.a.c +r.aax$.push(s.ga4K()) +r.abL(B.ix) +s.e=null}, +ayL(a){var s=this,r=s.d +r===$&&A.b() +B.b.F(r.aax$,s.ga4K()) +s.d.abL(B.iy) +r=s.d +r.aOs() +r.a|=16 +r.d=null}, +bub(){return this.ayL(!1)}, +a8(){var s,r=this +r.an() +r.aAQ() +r.a.toString +s=A.hH(!0,null,!0,!0,null,null,!1) +r.f=s +s.ho()}, +b1(a){var s=this +s.bc(a) +if(a.c!==s.a.c){s.bub() +s.aAQ()}}, +m(){var s,r=this +r.ap() +r.ayL(!0) +r.a.toString +s=r.f +s===$&&A.b() +s.m()}, +b4s(a,b){var s +this.d===$&&A.b() +s=this.f +s===$&&A.b() +if(!s.gnO())return B.eA +return B.d3}, +q(a){return this.aqf(new A.bjW(this,a))}} +A.bjX.prototype={ +$0(){var s=0,r=A.p(t.P),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.a.d +o===$&&A.b() +p=o.hk(0) +s=2 +return A.i(p,$async$$0) +case 2:o.CJ() +if(!o.Gx$){o.Ja(0,0) +$.m0().d9(0,t.nS).Oa()}return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.bjS.prototype={ +$0(){return this.a.w=!1}, +$S:0} +A.bjW.prototype={ +$0(){var s,r,q,p,o=null,n=this.a,m=n.d +m===$&&A.b() +n.a.toString +s=m.gPx().q(new A.aCR(m,!0,o)) +m=n.d +r=A.a([s],t.p) +n.a.toString +m=this.b +B.b.L(r,n.d.gbDk().bob(m)) +n.a.toString +q=n.f +q===$&&A.b() +p=n.d.bw2$ +return A.aue(!1,A.n1(!0,o,A.ip(A.a1O(new A.m7(B.ad2,new A.fV(new A.bjV(n,m,r),o),o),B.j),p,o,o,o,o,o),o,!0,o,q,!0,o,o,o,n.gb4r(),o,o),o,o,o,o,o)}, +$S:856} +A.bjV.prototype={ +$2(a,b){var s=this.a +return s.aqf(new A.bjU(s,b,this.b,this.c))}, +$S:52} +A.bjU.prototype={ +$0(){var s,r,q=this,p=null,o=q.b,n=A.Z(1/0,o.a,o.b) +o=A.Z(1/0,o.c,o.d) +s=new Float64Array(2) +r=new A.ah(s) +r.dm(n,o) +if(s[0]===0&&s[1]===0){q.a.a.toString +o=A.bB(p,p,B.i,p,p,p,p,p,p,p,p,p,p,p) +return o}o=q.a +n=o.d +n===$&&A.b() +n.uJ(r) +n=o.d +if(!n.Gx$){s=n.z9$ +s=(s==null?p:s.N)!=null}else s=!1 +if(s){n.Ja(0,0) +$.m0().d9(0,t.nS).Oa()}return A.bjw(new A.bjT(o,q.c,q.d),o.gbAm(),t.H)}, +$S:410} +A.bjT.prototype={ +$2(a,b){var s,r=b.c +if(r!=null){this.a.a.toString +s=b.d +s.toString +s=A.atA(r,s) +throw A.d(s)}if(b.a===B.kE)return new A.d4(B.ar,null,B.am,B.k,this.c,null) +this.a.a.toString +return B.xt}, +$S:858} +A.bk5.prototype={ +auQ(a,b,c,d){var s,r=this.b,q=r.i(0,A.c6(d)),p=q==null +if(p){this.a.n(0,A.c6(d),new A.dE(b,c,d.h("dE<0>"))) +this.c.$0()}s=A.c6(d) +r.n(0,s,(p?0:q)+1)}, +q(a){var s=this.a +if(s.a===0)return a +return new A.mu(a,s,B.be,!1,null)}, +byL(a){}} +A.zA.prototype={ +T(a){this.tw(a) +this.ab()}, +n(a,b,c){this.aR9(0,b,c) +this.ab()}, +$iaC:1} +A.aSm.prototype={} +A.bvt.prototype={ +bob(a){var s,r,q,p,o,n,m,l=A.a([],t.p) +for(s=this.b,r=s.length,q=this.c,p=t.kK,o=this.a,n=0;n") +s=A.R(new A.O(o,new A.b6x(),s),!1,s.h("aa.E")) +r=p.cy +if(r===$){q=$.ar().dc() +p.cy!==$&&A.a_() +p.cy=q +r=q}r.b6(0) +r.av2(s,!0) +a.ey(r,p.zb$)}, +Og(a){return this.CW.hZ(a)}, +gans(){var s,r=this.db +if(r===$){s=new Float64Array(2) +r!==$&&A.a_() +r=this.db=new A.ah(s)}return r}, +FN(a){var s,r=this +r.CW.XV(a,r.gans()) +s=r.at +s===$&&A.b() +return B.b.ef(s.Q,new A.b6y(r))}, +O7(){var s=this.gqO(),r=this.at +r===$&&A.b() +s.k3.go.btG(r) +this.aO_()}, +$ikK:1} +A.b6z.prototype={ +$1(a){return this.a.aEM(this.b,a)}, +$S:860} +A.b6w.prototype={ +$1(a){var s=a.a +return new A.j(s[0],s[1])}, +$S:414} +A.b6x.prototype={ +$1(a){var s=a.a +return new A.j(s[0],s[1])}, +$S:414} +A.b6y.prototype={ +$1(a){var s=this.a.gans(),r=a.c +r===$&&A.b() +return r.aFk(a.b.d,s)}, +$S:863} +A.ad0.prototype={ +pn(){var s=this.WI$ +return s==null?this.ags():s}} +A.ad1.prototype={} +A.w1.prototype={ +bIi(a){var s,r,q,p,o,n=this.k4,m=n.at +n=n.ax.at.XV(a,null).a +s=n[0] +r=m.ch.a +q=r[0] +p=m.gu(0).a[0] +n=n[1] +r=r[1] +m=m.gu(0).a[1] +o=new A.ah(new Float64Array(2)) +o.dm(s+q-0*p,n+r-0*m) +n=o +return n}, +aJM(a){var s=this.k4 +return s.ax.at.qU(s.at.qU(a,null),null)}} +A.tW.prototype={ +cI(a,b){var s,r,q,p=this.go,o=p.CW.a +o.b6(0) +s=p.cx.a +s.b6(0) +r=p.a +if((r&1)===1){r=p.b +r===$&&A.b() +r.a.ae1(r) +r=p.a&=4294967294}p.a=r|2 +r=p.ch +r.a=b +r.e=r.d=10 +if(b>0)r.b=1/b +else r.b=0 +r.c=p.y*b +r.f=p.z +q=p.ax +q===$&&A.b() +q.b.uP(s.grt()) +s.b6(0) +q=p.b +q===$&&A.b() +q.bqv() +p.ax.c.uP(s.grt()) +if(p.at&&r.a>0){s.b6(0) +q=p.ay +q===$&&A.b() +q.DL(r) +p.ax.d.uP(s.grt()) +s.b6(0) +p.DL(r) +p.ax.e.uP(s.grt())}if(p.Q&&r.a>0){s.b6(0) +p.aMI(r) +p.ax.y.uP(s.grt())}if(r.a>0)p.y=r.b +if((p.a&4)===4)p.bqc() +p.a&=4294967293 +p.ax.a.uP(o.grt())}} +A.bPm.prototype={ +Uv(a,b){var s,r,q,p,o,n,m,l,k=a.b,j=a.c +j=A.d9([k.b.fr,k.y,j.b.fr,j.y],t.X) +for(k=new A.cv(j,t.sQ).gaz(0),s=new A.jW(k,t.Ux),r=t.Fs,q=t.K,p=t._D;s.t();){o=p.a(k.gK(0)) +for(n=j.gaz(0),m=new A.jW(n,r);m.t();){l=q.a(n.gK(0)) +if(!J.q(l,o))b.$2(o,l)}}}, +avU(a){this.Uv(a,new A.bPn(a))}, +a9X(a){this.Uv(a,new A.bPo(a))}, +aDj(a,b){this.Uv(a,new A.bPq(a,b))}, +aDi(a,b){this.Uv(a,new A.bPp(a,b))}} +A.bPn.prototype={ +$2(a,b){return a.bJe(b,this.a)}, +$S:177} +A.bPo.prototype={ +$2(a,b){return a.bJA(b,this.a)}, +$S:177} +A.bPq.prototype={ +$2(a,b){return a.bK5(b,this.a,this.b)}, +$S:177} +A.bPp.prototype={ +$2(a,b){return a.bK4(b,this.a,this.b)}, +$S:177} +A.HP.prototype={ +J(){return new A.aM5(B.f)}} +A.aM5.prototype={ +a8(){this.d=A.hH(!0,null,!0,!0,null,null,!1) +this.an()}, +b1(a){var s=this.a +if(s.e&&s.f&&!a.e){s=this.d +s===$&&A.b() +s.ho()}this.bc(a)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.ap()}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=A.FC(g.a.x)===B.ak,d=e?B.B:B.r +g.a.toString +A.G(a) +s=g.a +r=s.x +q=s.r +p=A.ed(s.Q) +o=s.y +n=s.z +m=g.d +m===$&&A.b() +s=s.e +if(s)l=B.D +else l=e?B.t_:B.Bi +s=s?B.D:A.G(a).db +k=e?B.t_:B.Bi +j=g.a +if(j.e){i=j.w +h=j.y +j=j.z +j=A.b2(i,d,f,f,f,f,f,f,h>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +s=k.z=k.a.c +s=s.gj(s) +k.Q=(s>>>24&255)/255 +s=k.a.aW.i(0,B.bP) +if(s==null)s="Primary & Accent" +r=k.a.aW.i(0,B.bu) +if(r==null)r="Primary" +q=k.a.aW.i(0,B.bQ) +if(q==null)q="Accent" +p=k.a.aW.i(0,B.c_) +if(p==null)p="Black & White" +o=k.a.aW.i(0,B.bR) +if(o==null)o="Custom" +n=k.a.aW.i(0,B.cn) +if(n==null)n="Option" +m=k.a.aW.i(0,B.aR) +if(m==null)m="Wheel" +l=t.U_ +k.fy=A.a1([B.bP,s,B.bu,r,B.bQ,q,B.c_,p,B.bR,o,B.cn,n,B.aR,m],l,t.N) +m=k.a.aT +m=J.ra(m.gek(m)) +n=k.a.aU +k.fx=A.a1([B.bP,B.Kg,B.bu,B.on,B.bQ,B.oh,B.c_,B.oO,B.bR,m,B.cn,J.ra(n.gek(n)),B.aR,A.a([A.cvI(k.y)],t.ql)],l,t.iV) +n=k.a.r.i(0,B.bP) +s=k.a.r.i(0,B.bu) +r=k.a.r.i(0,B.bQ) +q=k.a.r.i(0,B.c_) +p=k.a.r.i(0,B.bR) +if(p===!0){p=k.a.aT +p=p.gcU(p)}else p=!1 +o=k.a.r.i(0,B.cn) +if(o===!0){o=k.a.aU +o=o.gcU(o)}else o=!1 +m=k.a.r.i(0,B.aR) +k.dy=A.a1([B.bP,n===!0,B.bu,s!==!1,B.bQ,r!==!1,B.c_,q===!0,B.bR,p,B.cn,o,B.aR,m===!0],l,t.y) +k.d=A.hH(!0,j,!0,!0,j,j,!1) +k.e=A.hH(!0,j,!0,!0,j,j,!1) +k.f=A.hH(!0,j,!0,!0,j,j,!1) +k.ch=k.ax=k.ay=!0 +k.cx=k.CW=!1 +s=k.a +s.toString +k.cy=!1 +k.fr=A.R(s.a4,!0,t.G) +k.RN() +s=k.gF9() +r=k.x +r===$&&A.b() +r=s.i(0,r) +r.toString +k.r=r +k.Bk()}, +b1(a){var s,r,q,p,o,n,m,l,k,j=this +j.bc(a) +s=j.a +s=s.c +r=j.y +r===$&&A.b() +if(s.l(0,r)){s=j.a.c +r=j.z +r===$&&A.b() +r=!s.l(0,r) +s=r}else s=!0 +if(s){s=j.a.c +j.y=A.Y(255,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +s=j.a.c +s=s.gj(s) +j.Q=(s>>>24&255)/255 +j.gF9().n(0,B.aR,A.a([A.a0Q(j.y)],t.ql)) +if(!j.cx){j.z=j.y +j.ch=j.ax=j.ay=!0 +j.CW=!1 +q=!0}else q=!1}else q=!1 +if(!A.Zl(j.a.aW,a.aW)){s=j.a.aW.i(0,B.bP) +if(s==null)s="Primary & Accent" +r=j.a.aW.i(0,B.bu) +if(r==null)r="Primary" +p=j.a.aW.i(0,B.bQ) +if(p==null)p="Accent" +o=j.a.aW.i(0,B.c_) +if(o==null)o="Black & White" +n=j.a.aW.i(0,B.bR) +if(n==null)n="Custom" +m=j.a.aW.i(0,B.cn) +if(m==null)m="Option" +l=j.a.aW.i(0,B.aR) +j.fy=A.a1([B.bP,s,B.bu,r,B.bQ,p,B.c_,o,B.bR,n,B.cn,m,B.aR,l==null?"Wheel":l],t.U_,t.N)}if(j.a.aT.k(0)!==a.aT.k(0)||!A.Zl(j.a.r,a.r)){s=j.a.aT +s=J.ra(s.gek(s)) +r=j.a.aU +p=t.U_ +j.fx=A.a1([B.bP,B.Kg,B.bu,B.on,B.bQ,B.oh,B.c_,B.oO,B.bR,s,B.cn,J.ra(r.gek(r)),B.aR,A.a([A.cvI(j.y)],t.ql)],p,t.iV) +r=j.a.r.i(0,B.bP) +s=j.a.r.i(0,B.bu) +o=j.a.r.i(0,B.bQ) +n=j.a.r.i(0,B.c_) +m=j.a.r.i(0,B.bR) +if(m===!0){m=j.a.aT +m=m.gcU(m)}else m=!1 +l=j.a.r.i(0,B.cn) +if(l===!0){l=j.a.aU +l=l.gcU(l)}else l=!1 +k=j.a.r.i(0,B.aR) +j.dy=A.a1([B.bP,r===!0,B.bu,s!==!1,B.bQ,o!==!1,B.c_,n===!0,B.bR,m,B.cn,l,B.aR,k===!0],p,t.y) +q=!0}s=j.a.a4 +r=j.fr +r===$&&A.b() +if(!A.fj(s,r))j.fr=A.R(j.a.a4,!0,t.G) +if(q){j.RN() +j.Bk()}j.cx=!1}, +RN(){var s,r,q,p=this +p.as=!0 +s=p.dy +s===$&&A.b() +s=s.gbm(0).l8(0,0,new A.bUB(),t.S)>1 +p.dx=s +if(s){s=p.z +s===$&&A.b() +r=p.gF9() +q=p.dy +p.a.toString +r=p.x=A.ds6(s,!1,!0,q,r) +s=r}else{s=p.dy.i(0,B.bP) +s.toString +if(s){p.x=B.bP +s=B.bP}else{s=p.dy.i(0,B.bu) +s.toString +if(s){p.x=B.bu +s=B.bu}else{s=p.dy.i(0,B.bQ) +s.toString +if(s){p.x=B.bQ +s=B.bQ}else{s=p.dy.i(0,B.c_) +s.toString +if(s){p.x=B.c_ +s=B.c_}else{s=p.dy.i(0,B.bR) +s.toString +if(s){p.x=B.bR +s=B.bR}else{s=p.dy.i(0,B.cn) +s.toString +if(s){p.x=B.cn +s=B.cn}else{s=p.dy.i(0,B.aR) +s.toString +if(s){p.x=B.aR +s=B.aR}else{p.x=B.bu +s=B.bu}}}}}}}}if(s===B.aR)p.a.toString}, +Bk(){var s,r,q=this,p=q.x +p===$&&A.b() +if(p!==B.aR&&!q.CW){p=q.gF9().i(0,q.x) +p.toString +q.r=p +s=q.z +s===$&&A.b() +q.a.toString +p=q.w=t.w0.a(A.ds7(s,p,!1))}else{p=q.z +p===$&&A.b() +if(A.d3a(p)){p=A.d37(q.z) +q.w=p}else if(A.d3c(q.z)){p=A.cvI(q.z) +q.w=p}else if(A.d3b(q.z)){p=A.d38(q.z) +q.w=p}else if(A.cFX(q.z,q.a.aT)){p=A.cvH(q.z,q.a.aT) +q.w=p}else{p=A.cFX(q.z,q.a.aU) +s=q.z +r=q.a +if(p){p=A.cvH(s,r.aU) +q.w=p}else{p=A.cvH(s,r.aU) +q.w=p}}}if(p==null){p=q.r +p===$&&A.b() +q.w=p[0]}}, +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() +s.ap()}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +h.a.toString +A.G(a) +h.a.toString +A.G(a) +h.a.toString +A.G(a) +s=h.a +s.toString +r=h.d +r===$&&A.b() +q=t.p +p=A.a([],q) +o=h.a +o.toString +n=!1 +if(n)p.push(new A.aA(new A.af(0,0,0,o.as),new A.apA(o.p4,g,g,g,g,o.cy,o.db,!0,g),g)) +o=h.a +o.toString +if(h.dx){n=h.e +n===$&&A.b() +m=h.dy +m===$&&A.b() +l=h.fy +l===$&&A.b() +k=h.x +k===$&&A.b() +p.push(A.n1(!1,g,new A.aEc(m,l,k,new A.bUN(h),o.aJ,o.U,o.as,g),g,g,g,n,!0,g,g,g,g,g,g))}if(h.dx)p.push(B.bmH) +o=h.x +o===$&&A.b() +if(o!==B.aR){o=h.a +n=o.fy +m=o.go +l=o.as +k=h.r +k===$&&A.b() +j=h.y +j===$&&A.b() +p.push(new A.axi(n,m,l,k,j,new A.bUO(h),o.dy,o.fr,o.k2,!1,o.k3,o.id,o.dx,h.as,g))}if(h.x===B.aR){o=h.a +n=o.as +m=o.k4 +l=h.y +l===$&&A.b() +p.push(new A.aA(new A.af(0,0,0,n),new A.ba(m,m,new A.a0R(l,new A.bUP(h),new A.bUT(h),new A.bUU(h),new A.bUV(h),o.ok,o.p1,o.p2,!1,o.k3,h.ay,h.cy,g),g),g))}o=h.a +n=o.fy +m=o.go +l=o.as +k=h.w +k.toString +j=h.y +j===$&&A.b() +p.push(new A.aEq(n,m,l,k,j,new A.bUW(h),!1,o.dy,o.fr,o.k2,!1,o.k3,o.id,o.dx,h.as,g)) +o=h.a +n=o.fy +m=o.go +l=h.z +l===$&&A.b() +k=h.ch +j=(o.dy+n)*10/15-n +B.b.L(p,A.a([new A.abs(n,m,l,new A.bUX(h),k,j,j,o.k2,!1,o.k3,o.id,o.dx,h.as,g),new A.ba(g,o.as,g,g)],q)) +o=h.a +o=o.as +n=h.y +n===$&&A.b() +n=A.Y(255,n.gj(n)>>>16&255,n.gj(n)>>>8&255,n.gj(n)&255) +m=h.Q +m===$&&A.b() +l=h.a +k=l.ch +l=l.cx +j=h.f +j===$&&A.b() +p.push(new A.aA(new A.af(0,0,0,o),new A.ba(1/0,g,new A.iU(new A.aAn(m,n,new A.bUY(h),new A.bUZ(h),new A.bV_(h),l,k,j,g),g),g),g)) +o=h.a +o=o.as +q=A.a([],q) +h.a.toString +n=h.y +n===$&&A.b() +m=h.Q +m===$&&A.b() +n=A.Y(B.e.aF(255*m),n.gj(n)>>>16&255,n.gj(n)>>>8&255,n.gj(n)&255) +if(h.x===B.aR){h.a.toString +m=!1}else m=!0 +l=h.a +k=l.be +j=l.bU +i=h.ax +q.push(new A.a0O(n,m,new A.bUQ(h),new A.bUR(h),k,j,!1,l.db,!0,i,g)) +h.a.toString +p.push(new A.aA(new A.af(0,0,0,o),A.acf(B.a_5,q,B.i,B.a_6,B.a_,g,B.a_5,0,0,g,B.x),g)) +h.a.toString +return new A.apU(h.gb1O(),h.gbhE(),new A.aA(s.Q,A.cS(p,s.z,g,B.o,B.u,g,g,B.x),g),!1,!1,!1,!1,!1,new A.bUS(h),r,!0,g)}, +bc9(a,b){var s,r,q,p=this +p.cx=!0 +if(b)p.Q=(a.gj(a)>>>24&255)/255 +p.a.toString +s=p.y +s===$&&A.b() +r=p.Q +r===$&&A.b() +p.Jm(A.Y(B.e.aF(255*r),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)) +p.C(new A.bUD(p,a,b)) +s=p.a +s.toString +r=p.y +r===$&&A.b() +q=p.Q +q===$&&A.b() +s.zE(A.Y(B.e.aF(255*q),r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255)) +p.a.toString}, +a4S(a){return this.bc9(a,!1)}, +Jm(a){this.a.toString +return}, +K1(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$K1=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.app("text/plain"),$async$K1) +case 3:m=b +if(m==null){s=1 +break}o=m.a +p.a.toString +n=A.d72(o,!1) +s=n!=null?4:6 +break +case 4:p.a.toString +o=p.y +o===$&&A.b() +p.Jm(o) +s=7 +return A.i(A.jk(B.b1,null,t.H),$async$K1) +case 7:p.C(new A.bUC(p,n)) +p.a.zE(p.y) +p.a.toString +s=5 +break +case 6:p.a.toString +case 5:case 1:return A.n(q,r)}}) +return A.o($async$K1,r)}, +TI(){var s=0,r=A.p(t.H),q=this,p,o +var $async$TI=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.a.toString +switch(0){case 0:p=q.y +p===$&&A.b() +o="0x"+A.R0(p) +break}s=2 +return A.i(A.p4(new A.mV(o)),$async$TI) +case 2:return A.n(null,r)}}) +return A.o($async$TI,r)}} +A.bUB.prototype={ +$2(a,b){return a+(b?1:0)}, +$S:869} +A.bUS.prototype={ +$0(){var s=this.a +if(s.db){s.a.toString +s.C(new A.bUE(s))}}, +$S:0} +A.bUE.prototype={ +$0(){this.a.db=!1}, +$S:0} +A.bUN.prototype={ +$1(a){var s=this.a,r=s.e +r===$&&A.b() +r.ho() +s.C(new A.bUM(s,a))}, +$S:870} +A.bUM.prototype={ +$0(){var s=this.a,r=this.b +s.x=r +s.as=!0 +if(r===B.aR)s.a.toString +s.CW=!1 +s.Bk()}, +$S:0} +A.bUO.prototype={ +$1(a){var s=this.a +s.CW=!1 +s.a4S(a)}, +$S:84} +A.bUT.prototype={ +$1(a){var s,r=this.a +r.a.toString +s=r.Q +s===$&&A.b() +r.Jm(A.Y(B.e.aF(255*s),a.gj(a)>>>16&255,a.gj(a)>>>8&255,a.gj(a)&255))}, +$S:84} +A.bUP.prototype={ +$1(a){var s,r,q=this.a +q.C(new A.bUL(q,a)) +s=q.a +s.toString +r=q.y +r===$&&A.b() +q=q.Q +q===$&&A.b() +s.zE(A.Y(B.e.aF(255*q),r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255))}, +$S:84} +A.bUL.prototype={ +$0(){var s=this.a +s.y=s.z=this.b +s.ay=!1 +s.ch=s.ax=!0 +s.CW=!1 +s.as=!0 +s.cy=!1 +s.Bk()}, +$S:0} +A.bUU.prototype={ +$1(a){this.a.a.toString}, +$S:84} +A.bUV.prototype={ +$1(a){var s=this.a +s.C(new A.bUK(s,a))}, +$S:4} +A.bUK.prototype={ +$0(){this.a.db=this.b}, +$S:0} +A.bUW.prototype={ +$1(a){var s,r=this.a +r.CW=!1 +r.a4S(a) +s=r.x +s===$&&A.b() +if(s===B.aR)r.C(new A.bUJ(r))}, +$S:84} +A.bUJ.prototype={ +$0(){var s=this.a +s.ch=s.as=!0}, +$S:0} +A.bUX.prototype={ +$1(a){var s=this.a +s.CW=!0 +s.a4S(a) +s.C(new A.bUI(s))}, +$S:84} +A.bUI.prototype={ +$0(){var s=this.a +s.as=!0 +s.ch=!1}, +$S:0} +A.bUZ.prototype={ +$1(a){this.a.a.toString}, +$S:26} +A.bUY.prototype={ +$1(a){var s,r,q=this.a +q.C(new A.bUH(q,a)) +s=q.a +s.toString +r=q.y +r===$&&A.b() +q=q.Q +q===$&&A.b() +s.zE(A.Y(B.e.aF(255*q),r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255))}, +$S:26} +A.bUH.prototype={ +$0(){var s=this.a +s.cx=!0 +s.Q=this.b +s.ay=!1 +s.as=s.ax=!0 +s.cy=!1}, +$S:0} +A.bV_.prototype={ +$1(a){this.a.a.toString}, +$S:26} +A.bUQ.prototype={ +$1(a){var s,r,q,p=this.a +p.a.toString +p.C(new A.bUG(p,a)) +s=p.a +s.toString +r=p.y +r===$&&A.b() +q=p.Q +q===$&&A.b() +s.zE(A.Y(B.e.aF(255*q),r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255)) +p.a.toString +s=p.y +p.Jm(A.Y(B.e.aF(255*p.Q),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255))}, +$S:84} +A.bUG.prototype={ +$0(){var s=this.a +s.y=s.z=this.b +s.ay=!0 +s.CW=s.ax=!1 +s.Bk()}, +$S:0} +A.bUR.prototype={ +$1(a){var s=this.a +s.C(new A.bUF(s,a))}, +$S:4} +A.bUF.prototype={ +$0(){var s=this.a,r=this.b +s.at=r +if(r)s.cy=s.as=!1}, +$S:0} +A.bUD.prototype={ +$0(){var s,r,q=this.a,p=q.z=this.b +q.y=A.Y(255,p.gj(p)>>>16&255,p.gj(p)>>>8&255,p.gj(p)&255) +p=q.cy=q.as=!1 +s=q.ch=q.ax=q.ay=!0 +if(this.c){q.gF9().n(0,B.aR,A.a([A.a0Q(q.y)],t.ql)) +q.RN()}r=q.x +r===$&&A.b() +if(r===B.aR){s=q.w +s.toString +s=!A.d3d(s,q.y)}if(s?!q.CW:p)q.Bk()}, +$S:0} +A.bUC.prototype={ +$0(){var s=this.a,r=this.b.a,q=s.y=A.Y(255,r>>>16&255,r>>>8&255,r&255) +s.a.toString +r=(r>>>24&255)/255 +s.Q=r +s.Jm(A.Y(B.e.aF(255*r),q.a>>>16&255,q.a>>>8&255,q.a&255)) +s.ax=s.ay=!0 +s.gF9().n(0,B.aR,A.a([A.a0Q(s.y)],t.ql)) +s.RN() +s.Bk()}, +$S:0} +A.ctK.prototype={ +$1(a){this.a.a=a}, +$S:84} +A.czU.prototype={} +A.a0R.prototype={ +J(){return new A.aM9(new A.aR(null,t.A),B.f)}, +nT(a){return this.d.$1(a)}, +CN(a,b){return this.r.$1(b)}} +A.aM9.prototype={ +a8(){var s,r=this +r.an() +r.r=A.rt(r.a.c).b +s=r.a.c +r.y=s +r.w=A.rt(s).c +r.x=A.rt(r.a.c).d +r.z=A.hH(!0,null,!0,!0,null,null,!1)}, +m(){var s=this.z +s===$&&A.b() +s.m() +this.ap()}, +b1(a){var s,r,q=this +q.bc(a) +if(q.a.at&&!a.at){s=q.z +s===$&&A.b() +s.ho()}s=q.a +if(s.as){s=A.rt(s.c) +r=q.r +r===$&&A.b() +if(s.b!==r)q.r=A.rt(q.a.c).b +s=A.rt(q.a.c) +r=q.w +r===$&&A.b() +if(s.c!==r)q.w=A.rt(q.a.c).c +s=A.rt(q.a.c) +r=q.x +r===$&&A.b() +if(s.d!==r)q.x=A.rt(q.a.c).d}if(!a.c.l(0,q.a.c))q.y=q.a.c}, +aGQ(a,b){return Math.min(a.a,a.b)/2-b}, +YH(a){var s,r,q,p,o,n,m,l=this,k=$.an.U$.z.i(0,l.d).gai() +k.toString +t.x.a(k) +s=k.gu(0) +r=(l.aGQ(s,l.a.w)-l.a.x)/Math.sqrt(2) +q=a.W(0,A.cK(k.cf(0,null),B.h)).W(0,new A.j(s.a/2,s.b/2)) +if(l.e){l.a.CN(0,!0) +l.f=!1 +l.w=B.e.dV(q.a*0.5/r+0.5,0,1) +l.x=B.e.dV(0.5-q.b*0.5/r,0,1) +k=l.a +p=A.rt(k.c) +o=l.r +o===$&&A.b() +k.nT(new A.w4(p.a,o,l.w,l.x).qJ())}else{k=l.f +p=l.a +if(k){p.CN(0,!0) +l.e=!1 +l.r=A.cPv(q) +k=l.a +p=A.rt(k.c) +o=l.r +n=l.w +n===$&&A.b() +m=l.x +m===$&&A.b() +k.nT(new A.w4(p.a,o,n,m).qJ())}else{p.CN(0,!1) +l.e=l.f=!1}}}, +ack(a){var s,r,q=this +q.a.CN(0,!1) +q.e=q.f=!1 +s=q.a +s.f.$1(s.c) +s=q.a.c +r=q.y +r===$&&A.b() +if(!s.l(0,r)){s=q.a +s.nT(s.c)}}, +q(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.z +j===$&&A.b() +s=l.r +s===$&&A.b() +r=l.w +r===$&&A.b() +q=l.x +q===$&&A.b() +l.a.toString +p=A.G(a) +o=l.a +n=o.w +m=o.x +o=A.ih(k,k,k,new A.aWp(s,r,q,!1,p.cx,n,m,o.y,k),B.A) +m=A.ih(k,k,k,new A.aWq(l.w,l.x,n,m,k),B.A) +s=A.G(a) +r=l.a.w +return A.dn(k,new A.ba(k,k,A.n1(!1,k,A.ip(new A.d4(B.ar,k,B.YG,B.k,A.a([new A.iU(o,k),m,new A.iU(A.ih(k,k,k,new A.aZK(!1,s.cx,360,r,k),B.A),k),A.ih(k,k,k,new A.aZL(l.r,r,k),B.A)],t.p),k),B.eu,k,k,k,k,k),k,k,k,j,!0,k,k,k,k,k,k),l.d),B.kM,!1,k,k,k,k,new A.bV0(l),k,new A.bV1(l),k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,new A.bV2(l),new A.bV3(l),new A.bV4(l),k,new A.bV5(l),!1,B.ac)}} +A.bV3.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k=this.a,j=$.an.U$.z.i(0,k.d).gai() +j.toString +t.x.a(j) +s=j.gu(0) +r=k.aGQ(s,k.a.w) +q=k.a +p=q.w +o=(r-q.x)/Math.sqrt(2) +n=a.a.W(0,A.cK(j.cf(0,null),B.h)).W(0,new A.j(s.a/2,s.b/2)) +j=n.a +q=n.b +m=Math.sqrt(j*j+q*q) +l=Math.abs(j)=r&&m<=r+p +k.f=p +if(l){k.a.CN(0,!0) +k.w=B.e.dV(j*0.5/o+0.5,0,1) +k.x=B.e.dV(0.5-q*0.5/o,0,1) +j=k.a +j.e.$1(j.c) +j=k.a +q=A.rt(j.c) +p=k.r +p===$&&A.b() +j.nT(new A.w4(q.a,p,k.w,k.x).qJ())}else{j=k.a +if(p){j.CN(0,!0) +j=k.a +j.e.$1(j.c) +k.r=A.cPv(n) +j=k.a +q=A.rt(j.c) +p=k.r +l=k.w +l===$&&A.b() +k=k.x +k===$&&A.b() +j.nT(new A.w4(q.a,p,l,k).qJ())}else{j.CN(0,!1) +k.e=k.f=!1}}return null}, +$S:120} +A.bV5.prototype={ +$1(a){return this.a.YH(a.d)}, +$S:15} +A.bV1.prototype={ +$1(a){return this.a.YH(a.d)}, +$S:15} +A.bV4.prototype={ +$1(a){return this.a.ack(0)}, +$S:22} +A.bV0.prototype={ +$1(a){return this.a.ack(0)}, +$S:22} +A.bV2.prototype={ +$1(a){return this.a.ack(0)}, +$S:35} +A.aWp.prototype={ +aI(a,b){var s,r,q,p,o=this,n=b.a,m=b.b,l=o.r/2,k=(Math.min(n,m)/2-l-l-o.w)/Math.sqrt(2) +n=n/2-k +m=m/2-k +l=k*2 +s=new A.W(n,m,n+l,m+l) +l=o.x +r=A.jq(s,new A.bb(l,l)) +q=new A.a4Y(B.c9,B.cy,B.bH,A.a([B.r,new A.w4(1,o.b,1,1).qJ()],t.t_),null,null).ay7(0,s) +l=$.ar() +m=l.aP() +m.sbN(0,B.aH) +m.skG(q) +a.dh(r,m) +p=B.aBt.ay7(0,s) +l=l.aP() +l.sbN(0,B.aH) +l.skG(p) +a.dh(r,l)}, +hC(a){var s=this +return!a.f.l(0,s.f)||a.r!==s.r||a.w!==s.w||a.x!==s.x||a.b!==s.b||a.c!==s.c||a.d!==s.d}} +A.aZK.prototype={ +aI(a,b){var s,r,q,p,o=b.a,n=b.b,m=this.e,l=Math.min(o,n)-m,k=A.oq(new A.j(o/2,n/2),l,l) +for(o=this.d,s=0;s>>0)}, +$S:272} +A.b9O.prototype={ +H(){return"ColorPickerActionButtonType."+this.b}} +A.b9N.prototype={ +H(){return"ColorPickerActionButtonOrder."+this.b}} +A.apy.prototype={ +l(a,b){var s +if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +if(b instanceof A.apy)if(A.I(this)===A.I(b))if(B.cd.l(0,B.cd))if(B.kV.l(0,B.kV))if(B.L.l(0,B.L))if(B.C.l(0,B.C))if(B.hm.l(0,B.hm))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){return A.cs([!1,!1,B.cd,B.kV,!0,null,null,!0,null,null,B.L,B.C,24,B.hm,!0,!1,B.a6M,!1,null,B.Bb,null,B.Bb,!0])}} +A.aM6.prototype={} +A.b9P.prototype={ +H(){return"ColorPickerCopyFormat."+this.b}} +A.apz.prototype={ +l(a,b){var s +if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +if(b instanceof A.apz)if(B.dO.l(0,B.dO))if(B.kW.l(0,B.kW))if(18e5===B.u_.a)s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){return A.cs([!0,!0,!0,!1,!1,B.dO,B.kW,null,null,B.a6N,!1,!1,!1,!1,!0,null,null,80,30,!1,null,B.u_,!1,!1,!1])}} +A.aM7.prototype={} +A.m6.prototype={ +H(){return"ColorPickerType."+this.b}} +A.Q5.prototype={ +J(){return new A.adF(B.h,B.f,this.$ti.h("adF<1>"))}} +A.adF.prototype={ +q(a){var s,r,q,p,o,n=null +A.G(a) +s=this.a +s.toString +r=!1 +q=!1 +p=r?new A.bVB(this):n +o=q?new A.bVC(this):n +return A.dn(B.cr,s.f,B.m,!1,n,n,n,n,n,n,n,n,p,n,n,n,n,n,n,n,n,n,n,o,n,n,n,n,n,n,n,n,n,!1,B.ac)}, +KZ(a){return this.bib(a)}, +bib(a){var s=0,r=A.p(t.H),q=this,p,o,n,m,l +var $async$KZ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.a.e.$0() +p=q.c +p.toString +p=A.a5d(p,t.N1) +p=p==null?null:p.c.gai() +t.Qv.a(p) +s=p!=null?2:3 +break +case 2:o=q.c +o.toString +n=a.a +m=a.b +s=4 +return A.i(A.dvT(o,q.a.c,new A.pq(n,m,p.gu(0).a-n,p.gu(0).b-m),q.$ti.c),$async$KZ) +case 4:l=c +q.a.d.$1(l) +case 3:return A.n(null,r)}}) +return A.o($async$KZ,r)}} +A.bVB.prototype={ +$1(a){return this.aHH(a)}, +aHH(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=q.a +o.a.e.$0() +p=a.a +o.d=p +s=2 +return A.i(o.KZ(p),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:874} +A.bVC.prototype={ +$1(a){return this.aHG(a)}, +aHG(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=q.a +o.a.e.$0() +p=a.a +o.d=p +s=2 +return A.i(o.KZ(p),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:875} +A.at5.prototype={ +aR(a){var s=null,r=new A.aCN(s,s,s,A.aw(t.T)) +r.aQ() +r.sbq(s) +return r}} +A.aCN.prototype={ +cX(a){var s,r,q=this.k1$ +if(q!=null){s=q.bo(a.d) +q=this.k1$ +if(q==null)r=null +else r=q.bh(s==null?0:s) +q=s==null?0:s +return new A.V(q,r==null?0:r)}else return B.A}} +A.avL.prototype={ +q(a){var s=this +if(s.c)return s.d.$2(a,s.f) +else return s.f}} +A.a0O.prototype={ +J(){return new A.ads(B.f)}, +zE(a){return this.e.$1(a)}} +A.ads.prototype={ +a8(){var s,r,q=this +q.an() +s=new A.eZ(B.bU,$.ae()) +q.d=s +q.e=A.hH(!0,null,!0,!0,null,null,!1) +r=q.a.c +q.r=r +s.sce(0,A.cwR(r))}, +m(){var s=this.d +s===$&&A.b() +s.k3$=$.ae() +s.k2$=0 +s=this.e +s===$&&A.b() +s.m() +this.ap()}, +b1(a){var s,r,q=this +q.bc(a) +if(!a.c.l(0,q.a.c)&&q.a.as){s=q.a.c +q.r=s +r=q.d +r===$&&A.b() +r.sce(0,A.cwR(s))}}, +q(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1=null +a0.a.toString +s=A.G(a2) +r=A.dS(a2,B.an,t.v) +r.toString +a0.a.toString +q=A.cBT(s.w,"C") +a0.a.toString +s=r.gaK() +p=s+q +o=A.G(a2).ay.a===B.ak +a0.a.toString +n=o?A.Y(11,0,0,0):A.Y(33,255,255,255) +A.FC(n) +m=o?A.Y(33,0,0,0):A.Y(55,255,255,255) +a0.a.toString +l=A.G(a2).p3.z +if(l==null)l=B.Zc +s=a0.a +s.toString +k=l.r +if(k==null)k=14 +j=k*1.2 +r=s.d +i=a0.d +i===$&&A.b() +h=a0.e +h===$&&A.b() +g=A.a([new A.QX(A.b4("[a-fA-F0-9]",!0,!1,!1),!0,""),new A.aZm()],t.VS) +a0.a.toString +f=A.lx(a1,!1,l.b,B.e9,a1,a1,a1,a1,a1,a1,A.b2(B.dO,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1),k*1.1,a1,a1,a1,a0.gaYz(),B.L,a1,a1,j,a1,p,a1) +e=j*2 +d=a0.gb0c() +c=A.ed(j) +b=A.ed(j) +a=A.ed(j) +return new A.ba(k*10,a1,new A.at5(A.n1(!1,a1,A.Fz(!0,B.bF,!1,new A.bUx(),!0,B.k,a1,A.Ov(),i,a1,a1,a1,a1,a1,2,A.md(a1,new A.ml(4,c,B.G),a1,new A.eB(k,0,0,0),a1,a1,a1,new A.ml(4,A.ed(j),new A.bx(m,1,B.O,-1)),!0,new A.ml(4,a,new A.bx(m,1,B.O,-1)),a1,new A.ml(4,A.ed(j),new A.bx(m,1,B.O,-1)),a1,a1,a1,n,!0,a1,a1,a1,a1,new A.ml(4,b,new A.bx(m,1,B.O,-1)),new A.ml(4,A.ed(j),new A.bx(m,1,B.O,-1)),a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,!0,a1,a1,a1,a1,a1,a1,a1,l,d,a1,a1,f,a1,new A.aG(e,1/0,e,1/0),a1,a1),B.m,!0,!r,!0,!0,!1,h,g,a1,a1,a1,a1,6,B.b4B,1,a1,a1,!1,"\u2022",a1,new A.bUy(a0),new A.bUz(a0),a1,a1,!1,a1,r,a1,!0,a1,B.ec,a1,a1,B.cY,B.cA,a1,a1,a1,a1,a1,a1,l,B.ah,a1,B.bo6,a1,a1,a1,a1),a1,a1,a1,a1,!0,a1,s.f,a1,a1,a1,a1),a1),a1)}, +Rq(){var s=0,r=A.p(t.H),q=this,p,o +var $async$Rq=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.a.toString +switch(0){case 0:p=q.r +p===$&&A.b() +o="0x"+A.R0(p) +break}s=2 +return A.i(A.p4(new A.mV(o)),$async$Rq) +case 2:return A.n(null,r)}}) +return A.o($async$Rq,r)}, +gb0c(){var s,r=this.r +r===$&&A.b() +s=B.c.R(A.R0(r),0,2) +this.a.toString +switch(0){case 0:return"0x"+s}}} +A.bUx.prototype={ +$4$currentLength$isFocused$maxLength(a,b,c,d){return null}, +$S:877} +A.bUy.prototype={ +$1(a){var s,r=this.a +r.C(new A.bUw(r,a)) +s=r.a +s.toString +r=r.r +r===$&&A.b() +s.zE(r)}, +$S:46} +A.bUw.prototype={ +$0(){var s,r,q=this.a +q.a.toString +s=A.cIi(this.b,!1) +r=q.r +r===$&&A.b() +s=s.a +q.r=A.Y(B.e.aF(255*((r.gj(r)>>>24&255)/255)),s>>>16&255,s>>>8&255,s&255)}, +$S:0} +A.bUz.prototype={ +$0(){var s,r,q=this.a +q.C(new A.bUv(q)) +s=q.d +s===$&&A.b() +r=q.r +r===$&&A.b() +s.sce(0,A.cwR(r)) +q.a.zE(q.r) +q=q.e +q===$&&A.b() +q.lR()}, +$S:0} +A.bUv.prototype={ +$0(){var s,r=this.a,q=r.d +q===$&&A.b() +q=q.a.a +r.a.toString +q=A.cIi(q,!1) +s=r.r +s===$&&A.b() +q=q.a +r.r=A.Y(B.e.aF(255*((s.gj(s)>>>24&255)/255)),q>>>16&255,q>>>8&255,q&255)}, +$S:0} +A.aZm.prototype={ +aaF(a,b){return new A.cu(b.a.toUpperCase(),b.b,B.aw)}} +A.apA.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=A.G(a).w,g=A.dS(a,B.an,t.v) +g.toString +s=A.cBT(h,"C") +r=A.cBT(h,"V") +q=g.gaK() +p=q+s +q=g.gaM() +o=q+r +n=g.gcc() +m=g.gcr() +l=A.G(a) +g=l.brE(l.ok.a8L(i,0.9,22)) +q=A.a([],t.p) +if(j.d!=null||j.e!=null||j.f!=null||j.r!=null)q.push(B.hf) +k=j.d +if(k!=null)q.push(A.lx(B.C,!1,i,B.hm,i,i,i,i,i,i,A.b2(B.dO,i,i,i,i,i,i,i,i,i,i),22,i,i,i,k,B.L,i,i,24,i,p,i)) +k=j.e +if(k!=null)q.push(A.lx(B.C,!1,i,B.hm,i,i,i,i,i,i,A.b2(B.kW,i,i,i,i,i,i,i,i,i,i),22,i,i,i,k,B.L,i,i,24,i,o,i)) +k=j.f +if(k!=null)q.push(A.lx(B.C,!1,i,B.hm,i,i,i,i,i,i,A.b2(B.cd,i,i,i,i,i,i,i,i,i,i),22,i,i,i,k,B.L,i,i,24,i,n,i)) +k=j.r +if(k!=null&&!0)q.push(A.lx(B.C,!1,i,B.hm,i,i,i,i,i,i,A.b2(B.kV,i,i,i,i,i,i,i,i,i,i),22,i,i,i,k,B.L,i,i,24,i,m,i)) +return new A.pC(g,A.eq(q,B.t,i,B.o,B.u,i,i,B.x),i)}} +A.yn.prototype={ +H(){return"CopyPasteCommands."+this.b}} +A.Q3.prototype={ +q(a){var s,r,q,p,o,n,m,l=null,k=A.G(a),j=k.ez,i=j.a +if(i==null){i=k.ax +i=A.Y(B.e.aF(229.5),i.gj(i)>>>16&255,i.gj(i)>>>8&255,i.gj(i)&255)}s=j.b +if(s==null)s=new A.fn(A.ed(8),new A.bx(k.cx,1,B.O,-1)) +r=j.c +if(r==null)r=3 +q=j.f +if(q==null)q=k.p3.z +if(q==null)q=B.Zc +p=k.ok +o=p.a +if(o==null)o=16 +n=p.ghn(0) +if(n==null)n=0.9 +m=p.a8L(p.f,n,o) +o=A.dS(a,B.an,t.v) +o.toString +j=k.bsb(m,new A.Lf(i,s,r,j.d,j.e,q,j.r,j.w!==!1,j.x,j.y,j.z,j.Q)) +i=o.gaK() +s=t.p +r=t.dz +i=A.cKZ(new A.ba(80,l,A.eq(A.a([A.bv(i,l,l,l,l,l,l,l,l,l,l,l,l,l,l),A.b2(B.dO,l,l,l,l,l,l,l,l,l,l)],s),B.t,l,B.d7,B.u,l,l,B.x),l),30,B.Cj,r) +q=o.gaM() +return new A.pC(j,new A.Q5(A.a([i,A.cKZ(new A.ba(80,l,A.eq(A.a([A.bv(q,l,l,l,l,l,l,l,l,l,l,l,l,l,l),A.b2(B.kW,l,l,l,l,l,l,l,l,l,l)],s),B.t,l,B.d7,B.u,l,l,B.x),l),30,B.Ck,r)],t.VT),this.ax,this.ay,this.ch,!1,!1,!1,!1,l,t.Kl),l)}} +A.apU.prototype={ +q(a){var s,r,q=A.G(a).w,p=q===B.aM||q===B.cL,o=A.N(t.zU,t.vz) +if(p)o.n(0,A.a56(B.fT,B.jn),B.Ad) +else o.n(0,A.a56(B.fS,B.jn),B.Ad) +if(p)o.n(0,A.a56(B.fT,B.oY),B.Az) +else o.n(0,A.a56(B.fS,B.jn),B.Az) +s=t.h +r=t.b +return A.Fi(A.ts(A.a1([B.buz,new A.aB9(this.c,new A.bN(A.a([],s),r)),B.bue,new A.apT(this.d,new A.bN(A.a([],s),r))],t.u,t.od),new A.e_(new A.baX(this),null)),null,o)}} +A.baX.prototype={ +$1(a){var s=null,r=this.a,q=r.Q +return A.n1(r.as,!0,A.dn(B.cr,new A.avL(r.f,new A.baW(r),r.e,s),B.m,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,q.gbG5(),s,s,s,s,s,s,s,!1,B.ac),s,s,s,q,!0,s,s,s,s,s,s)}, +$S:878} +A.baW.prototype={ +$2(a,b){var s=this.a +return new A.Q3(!1,!1,!1,!1,new A.baV(s),s.z,b,null)}, +$S:882} +A.baV.prototype={ +$1(a){if(a===B.Cj)this.a.d.$0() +if(a===B.Ck)this.a.c.$0()}, +$S:888} +A.KU.prototype={} +A.aB9.prototype={ +fI(a){return this.bz5(a)}, +bz5(a){var s=0,r=A.p(t.X),q,p=this +var $async$fI=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(p.c.$0(),$async$fI) +case 3:q=B.d3 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fI,r)}} +A.HX.prototype={} +A.apT.prototype={ +fI(a){return this.bz4(a)}, +bz4(a){var s=0,r=A.p(t.X),q,p=this +var $async$fI=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(p.c.$0(),$async$fI) +case 3:q=B.d3 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fI,r)}} +A.axi.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.y,e=f/4,d=A.a([],t.p) +for(s=h.f,r=s.length,q=h.z,p=h.at,o=h.ax,n=h.ay,m=h.ch,l=h.r,k=0;k>>16&255 +i=k>>>8&255 +k&=255 +m.skG(A.auY(B.h,new A.j(q-l,0),A.a([A.Y(0,j,i,k),A.Y(255,j,i,k)],t.t_),A.a([0.05,0.95],t.n),B.bH,null)) +switch(a7.a){case 1:h=m +g=n +break +case 0:h=n +g=m +break +default:g=null +h=null}k=c.b +j=a7===B.j +if(j)--r +if(j)++b +i=j?o:p +f=j?o:p +e=j?o:p +j=j?o:p +d=A.qB(l-k,r,q+k,b,f,j,i,e) +a.gbY(a).dh(d,g) +a.gbY(a).dh(d,c.d) +a.gbY(a).dh(d,h)}} +A.aEc.prototype={ +q(a){var s,r,q,p=this,o=null,n=A.G(a).p3.Q +if(n==null)n=B.bqz +s=A.N(t.U_,t.C) +r=p.c +q=r.i(0,B.bP) +q.toString +if(q){q=p.d.i(0,B.bP) +if(q==null)q="" +s.n(0,B.bP,new A.aA(B.ee,A.bv(q,o,o,o,o,o,o,o,o,p.e===B.bP?n.bu(o):n,B.at,o,o,o,o),o))}q=r.i(0,B.bu) +q.toString +if(q){q=p.d.i(0,B.bu) +if(q==null)q="" +s.n(0,B.bu,new A.aA(B.ee,A.bv(q,o,o,o,o,o,o,o,o,p.e===B.bu?n.bu(o):n,B.at,o,o,o,o),o))}q=r.i(0,B.bQ) +q.toString +if(q){q=p.d.i(0,B.bQ) +if(q==null)q="" +s.n(0,B.bQ,new A.aA(B.ee,A.bv(q,o,o,o,o,o,o,o,o,p.e===B.bQ?n.bu(o):n,B.at,o,o,o,o),o))}q=r.i(0,B.c_) +q.toString +if(q){q=p.d.i(0,B.c_) +if(q==null)q="" +s.n(0,B.c_,new A.aA(B.ee,A.bv(q,o,o,o,o,o,o,o,o,p.e===B.c_?n.bu(o):n,B.at,o,o,o,o),o))}q=r.i(0,B.bR) +q.toString +if(q){q=p.d.i(0,B.bR) +if(q==null)q="" +s.n(0,B.bR,new A.aA(B.ee,A.bv(q,o,o,o,o,o,o,o,o,p.e===B.bR?n.bu(o):n,B.at,o,o,o,o),o))}q=r.i(0,B.cn) +q.toString +if(q){q=p.d.i(0,B.cn) +if(q==null)q="" +s.n(0,B.cn,new A.aA(B.ee,A.bv(q,o,o,o,o,o,o,o,o,p.e===B.cn?n.bu(o):n,B.at,o,o,o,o),o))}r=r.i(0,B.aR) +r.toString +if(r){r=p.d.i(0,B.aR) +if(r==null)r="" +s.n(0,B.aR,new A.aA(B.ee,A.bv(r,o,o,o,o,o,o,o,o,p.e===B.aR?n.bu(o):n,B.at,o,o,o,o),o))}return new A.ba(1/0,o,new A.aA(new A.af(0,0,0,p.x),new A.Qe(s,p.e,new A.bEv(p),B.agD,o,t.At),o),o)}} +A.bEv.prototype={ +$1(a){if(a!=null)this.a.f.$1(a)}, +$S:898} +A.aEq.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.y,e=f/4,d=A.a([],t.p) +for(s=A.cSM(h.f,!1),r=s.length,q=h.z,p=h.at,o=h.ax,n=h.ay,m=h.ch,l=h.r,k=0;k=90&&s.c===B.um,q=s.b +if(r)q=Math.min(q,40) +return s.d.cP(0,b,new A.bil(s,q,b))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(b instanceof A.a3j){s=!0 +if(s)return r.a===b.a&&r.b===b.b&&r.c===b.c +else return B.aBv.h4(r.gFv(),b.gFv())}return!1}, +gv(a){var s=A.ad(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) +return s}, +k(a){var s=this.c.k(0) +return"FlexTonalPalette.of("+A.r(this.a)+", "+A.r(this.b)+", "+s+")"}} +A.bil.prototype={ +$0(){var s=A.d7U(this.a.a,this.b,this.c) +A.cFA(s,$.cuu()) +A.d3f(A.cG0(s)[1]/100) +return s}, +$S:90} +A.b86.prototype={} +A.bkQ.prototype={ +l(a,b){var s,r +if(b==null)return!1 +if(!(b instanceof A.bkQ))return!1 +s=b.d +s===$&&A.b() +r=this.d +r===$&&A.b() +return s===r}, +gv(a){var s=this.d +s===$&&A.b() +return B.d.gv(s)}, +k(a){var s,r,q=this.a +q===$&&A.b() +q=B.e.aF(q) +s=this.b +s===$&&A.b() +s=B.e.aF(s) +r=this.c +r===$&&A.b() +return"H"+q+" C"+s+" T"+B.e.aF(r)}} +A.bOx.prototype={} +A.rc.prototype={ +H(){return"AnimationStatus."+this.b}} +A.cR.prototype={ +k(a){return"#"+A.bq(this)+"("+this.P0()+")"}, +P0(){switch(this.gbM(this).a){case 1:var s="\u25b6" +break +case 2:s="\u25c0" +break +case 3:s="\u23ed" +break +case 0:s="\u23ee" +break +default:s=null}return s}, +$idq:1} +A.WV.prototype={ +H(){return"_AnimationDirection."+this.b}} +A.an4.prototype={ +H(){return"AnimationBehavior."+this.b}} +A.xU.prototype={ +aF8(a){var s,r,q=this.r +q.toString +s=this.r=a.Md(this.ga1u()) +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=$.cW.IG(s.gU8(),!1) +q.a=null +q.ZY()}q.m()}, +gj(a){var s=this.x +s===$&&A.b() +return s}, +sj(a,b){var s=this +s.e3(0) +s.a40(b) +s.ab() +s.JA()}, +geC(){var s=this.r +if(!(s!=null&&s.a!=null))return 0 +s=this.w +s.toString +return s.md(0,this.y.a/1e6)}, +a40(a){var s=this,r=s.a,q=s.b,p=s.x=A.Z(a,r,q) +if(p===r)s.Q=B.a6 +else if(p===q)s.Q=B.a9 +else s.Q=s.z===B.b_?B.bg:B.bs}, +gbM(a){var s=this.Q +s===$&&A.b() +return s}, +l9(a,b){var s=this +s.z=B.b_ +if(b!=null)s.sj(0,b) +return s.ait(s.b)}, +cM(a){return this.l9(0,null)}, +HN(a,b){var s=this +s.z=B.qB +if(b!=null)s.sj(0,b) +return s.ait(s.a)}, +eI(a){return this.HN(0,null)}, +kn(a,b,c){var s,r,q,p,o,n,m=this,l=$.aEj.Wx$ +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.qB&&m.f!=null){l=m.f +l.toString +p=l}else{l=m.e +l.toString +p=l}o=new A.aU(B.e.aF(p.a*q))}else{l=m.x +l===$&&A.b() +o=a===l?B.w:c}m.e3(0) +l=o.a +if(l===B.w.a){l=m.x +l===$&&A.b() +if(l!==a){m.x=A.Z(a,m.a,m.b) +m.ab()}m.Q=m.z===B.b_?B.a9:B.a6 +m.JA() +return A.czo()}n=m.x +n===$&&A.b() +return m.U_(new A.c32(l*s/1e6,n,a,b,B.dC))}, +ait(a){return this.kn(a,B.H,null)}, +OC(a){var s,r,q=this,p=q.a,o=q.b,n=q.e +q.e3(0) +s=q.x +s===$&&A.b() +r=n.a/1e6 +s=o===p?0:s/(o-p)*r +return q.U_(new A.cda(p,o,!1,q.gb_t(),r,s,B.dC))}, +b_u(a){this.z=a +this.Q=a===B.b_?B.bg:B.bs +this.JA()}, +WY(a){var s,r,q,p=this,o=$.cZV(),n=a<0 +p.z=n?B.qB:B.b_ +s=n?p.a-0.01:p.b+0.01 +n=$.aEj.Wx$ +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.Mo(s,A.Gu(o,n-s,a*r),B.dC) +q.a=B.btU +p.e3(0) +return p.U_(q)}, +yf(a){this.e3(0) +this.z=B.b_ +return this.U_(a)}, +U_(a){var s,r=this +r.w=a +r.y=B.w +r.x=A.Z(a.jN(0,0),r.a,r.b) +s=r.r.j9(0) +r.Q=r.z===B.b_?B.bg:B.bs +r.JA() +return s}, +DN(a,b){this.y=this.w=null +this.r.DN(0,b)}, +e3(a){return this.DN(0,!0)}, +m(){var s=this +s.r.m() +s.r=null +s.f0$.V(0) +s.em$.V(0) +s.DW()}, +JA(){var s=this,r=s.Q +r===$&&A.b() +if(s.as!==r){s.as=r +s.O0(r)}}, +aW4(a){var s,r=this +r.y=a +s=a.a/1e6 +r.x=A.Z(r.w.jN(0,s),r.a,r.b) +if(r.w.wq(s)){r.Q=r.z===B.b_?B.a9:B.a6 +r.DN(0,!1)}r.ab() +r.JA()}, +P0(){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.QI() +q=this.x +q===$&&A.b() +return r+" "+B.e.aZ(q,3)+p+s}} +A.c32.prototype={ +jN(a,b){var s,r,q=this,p=A.Z(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.ah(0,p)}}}, +md(a,b){return(this.jN(0,b+0.001)-this.jN(0,b-0.001))/0.002}, +wq(a){return a>this.b}} +A.cda.prototype={ +jN(a,b){var s=this,r=b+s.r,q=s.f,p=B.e.M(r/q,1) +B.e.hf(r,q) +s.e.$1(B.b_) +q=A.av(s.b,s.c,p) +q.toString +return q}, +md(a,b){return(this.c-this.b)/this.f}, +wq(a){return!1}} +A.aKI.prototype={} +A.aKJ.prototype={} +A.aKK.prototype={} +A.an6.prototype={ +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.az(b)!==A.I(r))return!1 +if(b instanceof A.an6){s=b.b +if(s.a===r.b.a){s=b.d +s=s.a===r.d.a}else s=!1}else s=!1 +return s}, +gv(a){return A.ad(null,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)}} +A.aKL.prototype={} +A.aKr.prototype={ +a3(a,b){}, +O(a,b){}, +je(a){}, +fW(a){}, +gbM(a){return B.a9}, +gj(a){return 1}, +k(a){return"kAlwaysCompleteAnimation"}} +A.aKs.prototype={ +a3(a,b){}, +O(a,b){}, +je(a){}, +fW(a){}, +gbM(a){return B.a6}, +gj(a){return 0}, +k(a){return"kAlwaysDismissedAnimation"}} +A.ZQ.prototype={ +a3(a,b){}, +O(a,b){}, +je(a){}, +fW(a){}, +gbM(a){return B.bg}, +P0(){return this.QI()+" "+this.a.k(0)+"; paused"}, +gj(a){return this.a}} +A.BU.prototype={ +a3(a,b){return this.gbR(this).a3(0,b)}, +O(a,b){return this.gbR(this).O(0,b)}, +je(a){return this.gbR(this).je(a)}, +fW(a){return this.gbR(this).fW(a)}, +gbM(a){var s=this.gbR(this) +return s.gbM(s)}} +A.a7j.prototype={ +sbR(a,b){var s,r=this,q=r.c +if(b==q)return +if(q!=null){r.a=q.gbM(q) +q=r.c +r.b=q.gj(q) +if(r.z0$>0)r.W9()}r.c=b +if(b!=null){if(r.z0$>0)r.W8() +q=r.b +s=r.c +s=s.gj(s) +if(q==null?s!=null:q!==s)r.ab() +q=r.a +s=r.c +if(q!==s.gbM(s)){q=r.c +r.O0(q.gbM(q))}r.b=r.a=null}}, +W8(){var s=this,r=s.c +if(r!=null){r.a3(0,s.gip()) +s.c.je(s.gaCt())}}, +W9(){var s=this,r=s.c +if(r!=null){r.O(0,s.gip()) +s.c.fW(s.gaCt())}}, +gbM(a){var s=this.c +if(s!=null)s=s.gbM(s) +else{s=this.a +s.toString}return s}, +gj(a){var s=this.c +if(s!=null)s=s.gj(s) +else{s=this.b +s.toString}return s}, +k(a){var s=this.c +if(s==null)return"ProxyAnimation(null; "+this.QI()+" "+B.e.aZ(this.gj(0),3)+")" +return s.k(0)+"\u27a9ProxyAnimation"}} +A.or.prototype={ +a3(a,b){this.cY() +this.a.a3(0,b)}, +O(a,b){this.a.O(0,b) +this.yL()}, +W8(){this.a.je(this.gF8())}, +W9(){this.a.fW(this.gF8())}, +U0(a){this.O0(this.ar0(a))}, +gbM(a){var s=this.a +return this.ar0(s.gbM(s))}, +gj(a){var s=this.a +return 1-s.gj(s)}, +ar0(a){var s +switch(a.a){case 1:s=B.bs +break +case 2:s=B.bg +break +case 3:s=B.a6 +break +case 0:s=B.a9 +break +default:s=null}return s}, +k(a){return this.a.k(0)+"\u27aaReverseAnimation"}} +A.I6.prototype={ +Ul(a){var s=this +switch(a.a){case 0:case 3:s.d=null +break +case 1:if(s.d==null)s.d=B.bg +break +case 2:if(s.d==null)s.d=B.bs +break}}, +gauk(){if(this.c!=null){var s=this.d +if(s==null){s=this.a +s=s.gbM(s)}s=s!==B.bs}else s=!0 +return s}, +m(){this.a.fW(this.gUk())}, +gj(a){var s=this,r=s.gauk()?s.b:s.c,q=s.a,p=q.gj(q) +if(r==null)return p +if(p===0||p===1)return p +return r.ah(0,p)}, +k(a){var s=this +if(s.c==null)return s.a.k(0)+"\u27a9"+s.b.k(0) +if(s.gauk())return s.a.k(0)+"\u27a9"+s.b.k(0)+"\u2092\u2099/"+A.r(s.c) +return s.a.k(0)+"\u27a9"+s.b.k(0)+"/"+A.r(s.c)+"\u2092\u2099"}, +gbR(a){return this.a}} +A.aYQ.prototype={ +H(){return"_TrainHoppingMode."+this.b}} +A.Nb.prototype={ +U0(a){if(a!==this.e){this.ab() +this.e=a}}, +gbM(a){var s=this.a +return s.gbM(s)}, +blk(){var s,r,q=this,p=q.b +if(p!=null){switch(q.c.a){case 0:p=p.gj(p) +s=q.a +r=p<=s.gj(s) +break +case 1:p=p.gj(p) +s=q.a +r=p>=s.gj(s) +break +default:r=!1}if(r){p=q.a +s=q.gF8() +p.fW(s) +p.O(0,q.ga6P()) +p=q.b +q.a=p +q.b=null +p.je(s) +s=q.a +q.U0(s.gbM(s))}}else r=!1 +p=q.a +p=p.gj(p) +if(p!==q.f){q.ab() +q.f=p}if(r&&q.d!=null)q.d.$0()}, +gj(a){var s=this.a +return s.gj(s)}, +m(){var s,r,q=this +q.a.fW(q.gF8()) +s=q.ga6P() +q.a.O(0,s) +q.a=null +r=q.b +if(r!=null)r.O(0,s) +q.b=null +q.em$.V(0) +q.f0$.V(0) +q.DW()}, +k(a){var s=this +if(s.b!=null)return A.r(s.a)+"\u27a9TrainHoppingAnimation(next: "+A.r(s.b)+")" +return A.r(s.a)+"\u27a9TrainHoppingAnimation(no next)"}} +A.PW.prototype={ +W8(){var s,r=this,q=r.a,p=r.gaoH() +q.a3(0,p) +s=r.gaoI() +q.je(s) +q=r.b +q.a3(0,p) +q.je(s)}, +W9(){var s,r=this,q=r.a,p=r.gaoH() +q.O(0,p) +s=r.gaoI() +q.fW(s) +q=r.b +q.O(0,p) +q.fW(s)}, +gbM(a){var s=this.b +if(s.gbM(s)===B.bg||s.gbM(s)===B.bs)return s.gbM(s) +s=this.a +return s.gbM(s)}, +k(a){return"CompoundAnimation("+this.a.k(0)+", "+this.b.k(0)+")"}, +b9P(a){var s=this +if(s.gbM(0)!==s.c){s.c=s.gbM(0) +s.O0(s.gbM(0))}}, +b9O(){var s=this +if(!J.q(s.gj(s),s.d)){s.d=s.gj(s) +s.ab()}}} +A.a_9.prototype={ +gj(a){var s,r=this.a +r=r.gj(r) +s=this.b +s=s.gj(s) +return Math.min(A.fP(r),A.fP(s))}} +A.adw.prototype={} +A.adx.prototype={} +A.ady.prototype={} +A.aN0.prototype={} +A.aTU.prototype={} +A.aTV.prototype={} +A.aTW.prototype={} +A.aVD.prototype={} +A.aVE.prototype={} +A.aYN.prototype={} +A.aYO.prototype={} +A.aYP.prototype={} +A.a6O.prototype={ +ah(a,b){return this.wY(b)}, +wY(a){throw A.d(A.bT(null))}, +k(a){return"ParametricCurve"}} +A.kQ.prototype={ +ah(a,b){if(b===0||b===1)return b +return this.aPr(0,b)}} +A.afE.prototype={ +wY(a){return a}} +A.a8K.prototype={ +wY(a){a*=this.a +return a-(a<0?Math.ceil(a):Math.floor(a))}, +k(a){return"SawTooth("+this.a+")"}} +A.eG.prototype={ +wY(a){var s=this.a +a=A.Z((a-s)/(this.b-s),0,1) +if(a===0||a===1)return a +return this.c.ah(0,a)}, +k(a){var s=this,r=s.c +if(!(r instanceof A.afE))return"Interval("+A.r(s.a)+"\u22ef"+A.r(s.b)+")\u27a9"+r.k(0) +return"Interval("+A.r(s.a)+"\u22ef"+A.r(s.b)+")"}} +A.ab8.prototype={ +wY(a){return a"))}} +A.aB.prototype={ +gj(a){var s=this.a +return this.b.ah(0,s.gj(s))}, +k(a){var s=this.a,r=this.b +return s.k(0)+"\u27a9"+r.k(0)+"\u27a9"+A.r(r.ah(0,s.gj(s)))}, +P0(){return this.QI()+" "+this.b.k(0)}, +gbR(a){return this.a}} +A.eb.prototype={ +ah(a,b){return this.b.ah(0,this.a.ah(0,b))}, +k(a){return this.a.k(0)+"\u27a9"+this.b.k(0)}} +A.aP.prototype={ +iE(a){var s=this.a +return A.z(this).h("aP.T").a(J.b2S(s,J.d0H(J.cEp(this.b,s),a)))}, +ah(a,b){var s,r=this +if(b===0){s=r.a +return s==null?A.z(r).h("aP.T").a(s):s}if(b===1){s=r.b +return s==null?A.z(r).h("aP.T").a(s):s}return r.iE(b)}, +k(a){return"Animatable("+A.r(this.a)+" \u2192 "+A.r(this.b)+")"}, +sVa(a){return this.a=a}, +sdw(a,b){return this.b=b}} +A.a8z.prototype={ +iE(a){return this.c.iE(1-a)}} +A.fp.prototype={ +iE(a){return A.ai(this.a,this.b,a)}} +A.aEG.prototype={ +iE(a){return A.a9L(this.a,this.b,a)}} +A.ui.prototype={ +iE(a){return A.U6(this.a,this.b,a)}} +A.DL.prototype={ +iE(a){var s,r=this.a +r.toString +s=this.b +s.toString +return B.e.aF(r+(s-r)*a)}} +A.PZ.prototype={ +iE(a){var s=this.a +return s==null?this.$ti.c.a(s):s}, +k(a){return"ConstantTween(value: "+A.r(this.a)+")"}} +A.eA.prototype={ +ah(a,b){if(b===0||b===1)return b +return this.a.ah(0,b)}, +k(a){return"CurveTween(curve: "+this.a.k(0)+")"}} +A.akD.prototype={} +A.abD.prototype={ +aVf(a,b){var s,r,q,p,o,n,m,l=this.a +B.b.L(l,a) +for(s=l.length,r=0,q=0;q=n&&b"}} +A.a1a.prototype={ +J(){return new A.aMG(null,null,B.f)}} +A.aMG.prototype={ +a8(){var s,r=this +r.an() +s=A.bQ(null,B.aW,null,1,null,r) +r.d=s +r.a.toString +s.OC(0)}, +b1(a){this.bc(a) +this.a.toString}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aTd()}, +q(a){var s,r=null,q=this.a +q.toString +s=this.d +s===$&&A.b() +q=q.c +q=B.agK.f3(a) +this.a.toString +return new A.ba(20,20,A.ih(r,r,r,new A.aMF(s,q,10,1,A.cyD(-1,-3.3333333333333335,1,-10,1,1),s),B.A),r)}} +A.aMF.prototype={ +aI(a,b){var s,r,q,p,o,n,m,l,k=this,j=$.ar().aP() +a.d6(0) +a.ba(0,b.a/2,b.b/2) +s=k.b.x +s===$&&A.b() +r=B.e.ec(8*s) +for(s=k.e,q=8*s,p=k.f,s=s<1,o=k.c,n=0;n>>16&255,o.gj(o)>>>8&255,o.gj(o)&255)) +a.dh(p,j) +a.qE(0,0.7853981633974483)}a.de(0)}, +hC(a){return a.b!==this.b||!a.c.l(0,this.c)||a.e!==this.e}} +A.akL.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.Cm.prototype={ +J(){return new A.adN(new A.aP(1,null,t.Y),null,null,B.f)}} +A.adN.prototype={ +a8(){var s,r,q,p=this +p.an() +s=A.bQ(null,B.K,null,1,0,p) +p.e=s +r=t.o +q=p.d +p.f=new A.aB(r.a(new A.aB(r.a(s),new A.eA(B.ft),t.HY.h("aB"))),q,q.$ti.h("aB")) +p.arT()}, +b1(a){this.bc(a) +this.arT()}, +arT(){var s=this.a.x +this.d.b=s}, +m(){var s=this.e +s===$&&A.b() +s.m() +this.aTe()}, +aXA(a){if(!this.r){this.r=!0 +this.R7(0)}}, +aXC(a){if(this.r){this.r=!1 +this.R7(0)}}, +aXy(){if(this.r){this.r=!1 +this.R7(0)}}, +R7(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.b_ +q=p.kn(1,B.qm,B.ahG)}else{p.z=B.b_ +q=p.kn(0,B.kJ,B.ahM)}q.bf(new A.bVV(this,r),t.H)}, +q(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.a.r==null,d=!e,c=A.kP(a1),b=c.gkf(),a=g.a,a0=a.e +if(a0==null)s=a.Q?b:f +else s=A.yp(a0,a1) +a=s!=null +if(a)r=c.gzO() +else if(d)r=b +else{a0=B.agO.f3(a1) +r=a0}q=c.gqH().ghp().bu(r) +a0=d&&!0?B.bG:B.bt +p=d?g.gaXz():f +o=d?g.gaXB():f +n=d?g.gaXx():f +m=g.a +l=m.r +k=m.w +j=g.f +j===$&&A.b() +i=m.y +if(a&&e){e=m.f +if(e instanceof A.ez)e=e.f3(a1)}else e=s +m=g.a +h=m.d +if(h==null)a=a?B.aiF:B.nj +else a=h +i=A.o1(new A.aA(a,new A.fl(m.z,1,1,A.h4(A.DA(m.c,new A.dW(f,f,f,f,f,r,f,f,f),f),f,f,B.aG,!0,q,f,f,B.a0),f),f),new A.c_(e,f,f,i,f,f,f,B.U),B.cB) +return A.ip(A.dn(B.be,new A.bX(A.ci(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,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f),!1,!1,!1,!1,new A.fI(new A.aG(k,1/0,k,1/0),new A.dg(j,!1,i,f),f),f),B.m,!1,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,l,n,p,o,f,f,f,f,!1,B.ac),a0,f,f,f,f,f)}} +A.bVV.prototype={ +$1(a){var s=this.a +if(s.c!=null&&this.b!==s.r)s.R7(0)}, +$S:33} +A.akM.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.a1b.prototype={ +J(){return new A.adO(new A.aLU($.ae()),null,!1,$,null,null,B.f)}} +A.adO.prototype={ +a8(){this.an() +this.e=this.a.c}, +b1(a){var s +this.bc(a) +s=a.c +if(s!==this.a.c)this.e=s}, +m(){var s=this.d +s.k3$=$.ae() +s.k2$=0 +this.aTf()}, +bCc(a){if(this.f!==a)this.f=a}, +q(a){var s,r,q,p,o,n,m,l=this,k=null +l.a.toString +s=A.av4(A.Y(204,B.iR.gj(0)>>>16&255,B.iR.gj(0)>>>8&255,B.iR.gj(0)&255)) +r=new A.w3(s.a,s.b,0.835,0.69).qJ() +s=l.a +q=s.c +s=s.y +p=l.d +p.suv(r) +p.sGR(l.f) +p.sWe(l.WH$) +p.sFe(B.iR) +p.sXt(B.ht) +p.svW(B.r) +p.sj(0,l.a.c) +p.sacT(l.e) +l.a.toString +p.sXA(!0) +l.a.toString +o=A.ed(4) +p.sdg(0,new A.fn(o,B.G)) +p.shr(l.a.Q) +l.a.toString +n=l.aat$ +if(n===$){m=A.a1([B.yc,new A.ej(l.gat4(),new A.bN(A.a([],t.h),t.b),t.wY)],t.u,t.od) +l.aat$!==$&&A.a_() +l.aat$=m +n=m}l.a.toString +o=l.gbk3() +p=A.ih(k,k,k,p,B.bmm) +s=A.aui(n,!1,A.dn(k,new A.bX(A.ci(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,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k),!1,!1,!1,!1,p,k),B.m,!1,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,l.gat4(),o,l.gbk1(),o,k,k,k,k,!1,B.ac),!0,s,!0,B.bt,l.gbCb(),l.gbjZ(),k,k) +return new A.bX(A.ci(k,k,k,k,k,k,q,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,!1,!1,!1,s,k)}} +A.aLU.prototype={ +svW(a){if(J.q(this.as,a))return +this.as=a +this.ab()}, +sj(a,b){if(this.at===b)return +this.at=b +this.ab()}, +sacT(a){if(this.ax==a)return +this.ax=a +this.ab()}, +sdg(a,b){if(J.q(this.ay,b))return +this.ay=b +this.ab()}, +shr(a){return}, +a1S(a,b,c,d,e){if(e)a.ey(this.ay.nq(b),c) +if(d!=null)this.ay.n0(d).aI(a,b)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=$.ar(),h=i.aP(),g=j.as +g.toString +h.sa6(0,g) +h.sbN(0,B.a7) +h.se4(2.5) +h.str(B.jM) +s=t.EP.a(b.iI(0,2).W(0,B.Yu.iI(0,2))) +g=s.a +r=s.b +q=new A.W(g,r,g+18,r+18) +p=i.aP() +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.sa6(0,o) +o=j.at +n=j.ch +if(o===!1){g=p.ga6(p) +j.a1S(a,q,p,new A.bx(g,1,B.O,-1),!1)}else{j.a1S(a,q,p,n,!0) +o=j.at +if(o===!0){m=i.dc() +m.fV(0,g+4.5,r+9.36) +o=g+8.280000000000001 +n=r+13.5 +m.ds(0,o,n) +a.ey(m,h) +m.fV(0,o,n) +m.ds(0,g+12.959999999999999,r+5.22) +a.ey(m,h)}else a.jV(s.S(0,B.bbz),s.S(0,B.bdU),h)}g=j.e +g.toString +if(g){l=q.fH(1) +k=i.aP() +i=j.c +i.toString +k.sa6(0,i) +k.sbN(0,B.a7) +k.se4(3.5) +j.a1S(a,l,k,j.ch,!0)}}} +A.akN.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.b_u.prototype={} +A.ez.prototype={ +gj(a){return this.b.a}, +gKn(){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)}, +gKj(){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)}, +gKk(){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)}, +f3(a){var s,r,q,p,o,n,m=this,l=null +if(m.gKn()){s=a.a0(t.WD) +r=s==null?l:s.f.c.gyl() +if(r==null){r=A.cG(a,B.e6) +r=r==null?l:r.e +q=r}else q=r +if(q==null)q=B.ak}else q=B.ak +if(m.gKj()){r=A.cG(a,B.a_A) +r=r==null?l:r.as +p=r===!0}else p=!1 +if(m.gKk()){r=A.d3Y(a) +o=r==null?B.CC:r}else o=B.CC +switch(q.a){case 1:switch(o.a){case 0:n=p?m.r:m.e +break +case 1:n=p?m.z:m.x +break +default:n=l}break +case 0:switch(o.a){case 0:n=p?m.w:m.f +break +case 1:n=p?m.Q:m.y +break +default:n=l}break +default:n=l}return new A.ez(n,m.c,l,m.e,m.f,m.r,m.w,m.x,m.y,m.z,m.Q,0)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.ez&&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.ad(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)}, +k(a){var s=this,r=new A.bb8(s),q=A.a([r.$2("color",s.e)],t.s) +if(s.gKn())q.push(r.$2("darkColor",s.f)) +if(s.gKj())q.push(r.$2("highContrastColor",s.r)) +if(s.gKn()&&s.gKj())q.push(r.$2("darkHighContrastColor",s.w)) +if(s.gKk())q.push(r.$2("elevatedColor",s.x)) +if(s.gKn()&&s.gKk())q.push(r.$2("darkElevatedColor",s.y)) +if(s.gKj()&&s.gKk())q.push(r.$2("highContrastElevatedColor",s.z)) +if(s.gKn()&&s.gKj()&&s.gKk())q.push(r.$2("darkHighContrastElevatedColor",s.Q)) +r=s.c +if(r==null)r="CupertinoDynamicColor" +q=B.b.bQ(q,", ") +return r+"("+q+", resolved by: UNRESOLVED)"}} +A.bb8.prototype={ +$2(a,b){var s=b.l(0,this.a.b)?"*":"" +return s+a+" = "+b.k(0)+s}, +$S:930} +A.aMN.prototype={} +A.aMK.prototype={} +A.bb6.prototype={ +It(a){return B.A}, +Vi(a,b,c,d){return B.ap}, +Is(a,b){return B.h}} +A.b_v.prototype={} +A.aq3.prototype={ +q(a){var s=null,r=A.bC(a,B.cV,t.l).w.r.b+8,q=this.c.W(0,new A.j(8,r)),p=A.cS(this.d,B.t,s,B.o,B.Z,s,s,B.x),o=$.ar().yz(20,20,B.bH) +return new A.aA(new A.af(8,r,8,8),new A.q1(new A.asz(q),A.bB(s,A.OW(A.o1(new A.aA(B.u7,p,s),new A.c_(B.agM.f3(a),s,A.P7(B.agH.f3(a),1),B.e8,s,s,s,B.U),B.cB),o),B.k,s,s,B.a33,s,s,s,s,s,s,s,222),s),s)}} +A.I5.prototype={ +J(){return new A.adQ(B.f)}} +A.adQ.prototype={ +bbb(a){this.C(new A.bWk(this))}, +bbh(a){this.C(new A.bWl(this))}, +q(a){var s=this,r=null,q=s.a.f,p=A.bv(q,r,r,r,B.bf,r,r,r,r,B.Zd.bu(s.d?A.kP(a).gzO():B.n9.f3(a)),r,r,r,r,r) +q=s.d?A.kP(a).gkf():r +return new A.ba(1/0,r,A.ip(A.I4(B.c9,B.kh,p,q,B.fv,r,0,s.a.c,B.aiK,0.7),B.bt,r,r,s.gbba(),s.gbbg(),r),r)}} +A.bWk.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.bWl.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.a19.prototype={ +J(){return new A.adL(B.f)}} +A.adL.prototype={ +m(){var s=this.d +if(s!=null)s.m() +s=this.e +if(s!=null)s.m() +this.ap()}, +aWJ(a){var s,r,q,p,o=this,n=null,m=A.a([],t.p),l=o.a.d +if(l!=null){s=o.d +if(s==null){s=new A.fh(0,!0,n,n,n,A.a([],t.ZP),$.ae()) +o.d=s}r=o.a.d==null +q=r?12:0 +r=r?B.y_:B.y_.VO(B.f1) +o.a.toString +p=B.y_.VO(B.f1) +m.push(new A.iO(1,B.c1,new A.aMI(n,l,s,new A.af(16,12,16,q),new A.af(16,12,16,12),B.CZ,r,p,n),n))}l=B.tG.f3(a) +return new A.m7(l,A.cS(m,B.co,n,B.o,B.Z,n,n,B.x),n)}, +aWC(){var s,r,q=this,p=null,o=q.a.e +if(o==null||o.length===0)return A.bB(p,p,B.i,p,p,p,p,0,p,p,p,p,p,p) +o=q.e +if(o==null){o=new A.fh(0,!0,p,p,p,A.a([],t.ZP),$.ae()) +q.e=o}s=q.a +r=s.w +s=s.e +s.toString +return new A.aMH(s,o,r!=null,!0,p)}, +q(a){var s,r,q,p=null,o=$.ar().yz(20,20,B.bH) +o=A.a([new A.iO(1,B.c1,A.PH(B.zS,A.OW(new A.adR(new A.e_(this.gaWI(),p),this.aWC(),B.n1,!0,p),o)),p)],t.p) +s=this.a +r=s.w +if(r!=null)o.push(new A.aA(new A.af(0,s.e!=null||s.d!=null||!1?8:0,0,0),new A.adJ(r,p),p)) +s=t.l +q=A.bC(a,B.mm,s).w.gnU(0)===B.dw?A.bC(a,B.di,s).w.a.a-16:A.bC(a,B.di,s).w.a.b-16 +s=A.um(a).FQ(!1) +o=A.cGm(A.bB(p,A.cS(o,B.co,p,B.o,B.Z,p,p,B.x),B.i,p,p,p,p,p,p,B.aiJ,p,p,p,q),B.CD) +return new A.iX(!0,!0,!0,!0,B.L,!1,A.aE2(s,new A.bX(A.ci(p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,"Alert",p,p,p,p,p,!0,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,!0,p,p,p,p,p,p,p,p,p),!1,!0,!1,!1,o,p)),p)}} +A.I3.prototype={ +q(a){var s,r,q=null +if(this.e)s=B.agE.f3(a) +else s=A.kP(a).gkf() +r=B.bsF.bu(s) +s=A.bB(B.C,A.h4(this.f,q,q,B.aG,!0,r,B.at,q,B.a0),B.i,q,q,q,q,q,q,q,B.ain,q,q,q) +return A.ip(A.dn(B.be,new A.fI(B.a30,new A.bX(A.ci(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,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,s,q),q),B.m,!1,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,this.c,q,q,q,q,q,q,q,!1,B.ac),B.bG,q,q,q,q,q)}} +A.adJ.prototype={ +J(){return new A.adK(B.f)}} +A.adK.prototype={ +b_i(a){this.C(new A.bVR(this))}, +b_k(a){this.C(new A.bVS(this))}, +b_g(){this.C(new A.bVQ(this))}, +q(a){var s=this,r=null,q=(s.d?B.agL:B.agG).f3(a) +return A.dn(r,A.bB(r,s.a.c,B.i,r,r,new A.c_(q,r,r,B.a2E,r,r,r,B.U),r,r,r,r,r,r,r,r),B.m,!0,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,s.gb_f(),s.gb_h(),s.gb_j(),r,r,r,r,!1,B.ac)}} +A.bVR.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.bVS.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.bVQ.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.adR.prototype={ +aR(a){var s +A.cQB(a) +s=$.ar().aP() +s.sa6(0,this.e) +s.sbN(0,B.aH) +s=new A.Yh(!1,!0,0.3,s,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){A.cQB(a) +if(b.a4){b.a4=!1 +b.a9()}b.spi(this.e)}, +dv(a){return new A.aMM(!0,this,B.aD)}} +A.aMM.prototype={ +gai(){return t.WL.a(A.bO.prototype.gai.call(this))}, +d0(a){var s=this.ok +if(s!=null)a.$1(s) +s=this.p1 +if(s!=null)a.$1(s)}, +iF(a,b){var s,r=this +r.r4(a,b) +s=r.e +s.toString +t.Wt.a(s) +r.ok=r.he(r.ok,s.c,B.a_b) +r.p1=r.he(r.p1,s.d,B.a_c)}, +mj(a,b){this.aq2(a,b)}, +mn(a,b,c){this.aq2(a,c)}, +cI(a,b){var s,r=this +r.nw(0,b) +s=r.e +s.toString +t.Wt.a(s) +r.ok=r.he(r.ok,s.c,B.a_b) +r.p1=r.he(r.p1,s.d,B.a_c)}, +lH(a){var s=this +if(J.q(s.ok,a))s.ok=null +else s.p1=null +s.mA(a)}, +ni(a,b){var s=t.WL +if(s.a(A.bO.prototype.gai.call(this)).D===a)s.a(A.bO.prototype.gai.call(this)).saxl(null) +else s.a(A.bO.prototype.gai.call(this)).sauO(null)}, +aq2(a,b){switch(b.a){case 0:t.WL.a(A.bO.prototype.gai.call(this)).saxl(t.x.a(a)) +break +case 1:t.WL.a(A.bO.prototype.gai.call(this)).sauO(t.x.a(a)) +break}}} +A.Yh.prototype={ +saxl(a){var s=this,r=s.D +if(a!=r){if(r!=null)s.oo(r) +s.D=a +if(a!=null)s.lB(a)}}, +sauO(a){var s=this,r=s.N +if(a!=r){if(r!=null)s.oo(r) +s.N=a +if(a!=null)s.lB(a)}}, +spi(a){var s=this.aJ +if(s.ga6(s).l(0,a))return +s.sa6(0,a) +this.aV()}, +aA(a){var s +this.ea(a) +s=this.D +if(s!=null)s.aA(a) +s=this.N +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.D +if(s!=null)s.ar(0) +s=this.N +if(s!=null)s.ar(0)}, +lN(){var s=this,r=s.D +if(r!=null)s.qB(r) +r=s.N +if(r!=null)s.qB(r)}, +fo(a){if(!(a.b instanceof A.i_))a.b=new A.i_(null,null,B.h)}, +d0(a){var s=this.D +if(s!=null)a.$1(s) +s=this.N +if(s!=null)a.$1(s)}, +bo(a){var s=t.k.a(A.H.prototype.gZ.call(this)) +return s.a}, +bb(a){var s=t.k.a(A.H.prototype.gZ.call(this)) +return s.b}, +bh(a){var s,r,q=this.D,p=q.aw(B.ao,a,q.gbP()) +q=this.N +s=q.aw(B.ao,a,q.gbP()) +q=p>0 +r=p+(q&&s>0?this.aq:0)+s +q=s>0||q +if(q)r-=20 +if(isFinite(r))return r +return 0}, +bi(a){var s,r,q=this.D,p=q.aw(B.ay,a,q.gbZ()) +q=this.N +s=q.aw(B.ay,a,q.gbZ()) +q=p>0 +r=p+(q&&s>0?this.aq:0)+s +q=s>0||q +if(q)r-=20 +if(isFinite(r))return r +return 0}, +cX(a){return this.aq_(a,A.k0()).a}, +bJ(){var s,r=this,q=r.aq_(t.k.a(A.H.prototype.gZ.call(r)),A.k1()) +r.id=q.a +s=r.N.b +s.toString +t.Wz.a(s).a=new A.j(0,q.b+q.c)}, +aq_(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(j.a4){s=j.D +if(s.aw(B.ay,310,s.gbZ())>0){s=j.N +s.toString +r=j.a4?310:270 +q=s.aw(B.ay,r,s.gbZ())>0}else q=!1 +p=q?j.aq:0 +s=j.D +s.toString +r=j.a4?310:270 +o=s.aw(B.ay,r,s.gbZ()) +s=j.N +s.toString +r=j.a4?310:270 +n=a.d +if(o+p+s.aw(B.ay,r,s.gbZ())>n){s=j.N +s.toString +m=b.$2(s,a.om(new A.af(0,n/2,0,0))) +n=j.D +n.toString +l=b.$2(n,a.om(new A.af(0,0,0,m.b+p)))}else{s=j.D +s.toString +l=b.$2(s,a) +s=j.N +s.toString +m=b.$2(s,a.om(new A.af(0,l.b,0,0)))}s=l.b +r=j.a4?310:270 +s=new A.aKp(a.bd(new A.V(r,s+p+m.b)),s,p)}else{s=j.D +s.toString +r=t.k +n=r.a(A.H.prototype.gZ.call(j)) +if(s.aw(B.ay,n.b,s.gbZ())>0){s=j.N +s.toString +n=r.a(A.H.prototype.gZ.call(j)) +q=s.aw(B.ay,n.b,s.gbZ())>0}else q=!1 +p=q?j.aq:0 +s=j.N +s.toString +r=r.a(A.H.prototype.gZ.call(j)) +k=s.aw(B.ao,r.b,s.gbP()) +s=j.D +s.toString +l=b.$2(s,a.om(new A.af(0,0,0,k+p))) +s=j.N +s.toString +r=l.b +n=r+p +s=b.$2(s,a.om(new A.af(0,n,0,0))).b +s=new A.aKp(new A.V(a.b,n+s),r,p)}return s}, +aI(a,b){var s,r,q=this,p=q.D,o=p.b +o.toString +s=t.Wz +p.aI(a,b.S(0,s.a(o).a)) +if(q.D.gu(0).b>0&&q.N.gu(0).b>0){p=a.gbY(a) +o=b.a +r=b.b+q.D.gu(0).b +p.fs(new A.W(o,r,o+q.gu(0).a,r+q.aq),q.aJ)}p=q.N +o=p.b +o.toString +p.aI(a,b.S(0,s.a(o).a))}, +ej(a,b){var s,r,q=this,p=q.D.b +p.toString +s=t.Wz +s.a(p) +r=q.N.b +r.toString +s.a(r) +return a.l5(new A.cbN(q,b,p),p.a,b)||a.l5(new A.cbO(q,b,r),r.a,b)}} +A.cbN.prototype={ +$2(a,b){return this.a.D.es(a,b)}, +$S:19} +A.cbO.prototype={ +$2(a,b){return this.a.N.es(a,b)}, +$S:19} +A.aKp.prototype={} +A.aKo.prototype={ +H(){return"_AlertDialogSections."+this.b}} +A.aMI.prototype={ +q(a){var s,r=this,q=null,p=r.d +if(p==null)return A.uq(B.ap,B.k,r.e,B.m,q,B.c5,q,q,q,q,!1,B.v) +s=A.a([],t.p) +s.push(new A.aA(r.r,A.h4(p,q,q,B.aG,!0,r.y,B.at,q,B.a0),q)) +p=s.length +if(p>1)B.b.eu(s,1,new A.aA(r.w,q,q)) +p=r.e +return A.cvZ(A.uq(A.cS(s,B.co,q,B.o,B.u,q,q,B.x),B.k,p,B.m,q,B.c5,q,q,q,q,!1,B.v),p,q,B.x2,B.dA,q,3,8,q)}} +A.aMH.prototype={ +q(a){var s,r,q=null,p=A.a([],t.p) +for(s=this.c,r=0;r"))}, +m(){var s,r=this +r.a.d.a=null +s=r.f +s===$&&A.b() +s.m() +r.a.w.O(0,r.ga4k()) +r.aTh()}, +b1(a){var s,r=this,q=a.w +if(q!==r.a.w){s=r.ga4k() +q.O(0,s) +r.a.w.a3(0,s)}r.bc(a)}, +c5(){this.aoq() +this.dH()}, +aoq(){var s,r,q,p=this,o=p.a.w,n=o.gj(o),m=n.c.gc1().b +o=n.a +s=m-o.b +r=p.a +r.toString +if(s<-48){if(r.d.gQy())p.a.d.Nf(!1) +return}if(!r.d.gQy()){r=p.f +r===$&&A.b() +r.cM(0)}p.a.toString +q=Math.max(m,m-s/10) +o=o.a-40 +s=q-73.5 +r=p.c +r.toString +r=A.bC(r,B.di,t.l).w.a +p.a.toString +s=A.cJC(new A.W(10,-21.5,0+r.a-10,0+r.b+21.5),new A.W(o,s,o+80,s+47.5)) +p.C(new A.bWs(p,new A.j(s.a,s.b),m,q))}, +q(a){var s,r,q=this +q.a.toString +s=q.d +r=q.r +r===$&&A.b() +return A.cvj(new A.arN(r,new A.j(0,q.e),null),B.eb,B.ahU,s.a,s.b)}} +A.bWu.prototype={ +$0(){return this.a.C(new A.bWt())}, +$S:0} +A.bWt.prototype={ +$0(){}, +$S:0} +A.bWs.prototype={ +$0(){var s=this,r=s.a +r.d=s.b +r.e=s.c-s.d}, +$S:0} +A.arN.prototype={ +q(a){var s,r,q=this.r,p=q.b +q=q.a +p.ah(0,q.gj(q)) +s=new A.j(0,49.75).S(0,this.w) +r=p.ah(0,q.gj(q)) +r=A.og(B.bba,B.h,r==null?1:r) +r.toString +q=p.ah(0,q.gj(q)) +if(q==null)q=1 +return A.uP(new A.a7G(null,A.cJD(q,B.aMQ,new A.fn(B.a2G,B.a2I)),s,1,B.bms,null),r,!0)}} +A.akP.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.af4.prototype={ +k(a){return"Default Hero tag for Cupertino navigation bars with navigator "+A.r(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.af4&&b.a==this.a}, +gv(a){return A.lZ(this.a)}} +A.aP3.prototype={ +q(a){var s,r,q,p=this,o=null,n=p.r,m=n.b +n=n.a +s=m.ah(0,n.gj(n)).b +r=p.e +q=r?m.ah(0,n.gj(n)).a:o +n=r?o:m.ah(0,n.gj(n)).a +m=p.f +return A.mo(o,p.w,m.b,o,q,n,s,m.a)}} +A.Qc.prototype={ +gqy(){return B.bmv}, +J(){return new A.aMR(B.f)}, +$izV:1} +A.aMR.prototype={ +a8(){this.an() +var s=t.A +this.d=new A.c7T(new A.aR("Navigation bar render box",s),new A.aR("Leading",s),new A.aR("Back chevron",s),new A.aR("Back label",s),new A.aR("Middle",s),new A.aR("Trailing",s),new A.aR("Large title",s))}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +h.a.toString +s=A.yp(g,a) +if(s==null)s=A.kP(a).gBy() +r=h.d +r===$&&A.b() +q=t.X +p=A.wp(a,q) +h.a.toString +o=A.diy(!0,r.b,g,p,g) +n=A.div(!0,r.c,p,g) +m=A.diw(!0,r.d,g,p,g) +l=A.diz(!0,!1,r.e,p,g,B.Zg) +k=A.diA(g,r.f,g) +A.dix(!0,!1,r.r,p,g) +h.a.toString +p=A.kP(a).gqH().ghp() +h.a.toString +j=A.cRA(s,B.zX,g,A.h4(new A.aT0(new A.c7S(o,n,m,l,k),g,g),g,g,B.aG,!0,p,g,g,B.a0),!0) +h.a.toString +i=A.wp(a,q) +if(i instanceof A.oi){i.grD() +r=!0}else r=!1 +r=!r +if(r)return j +return new A.e_(new A.bWp(h,s,j),g)}} +A.bWp.prototype={ +$1(a){var s,r,q,p,o=this.a +o.a.toString +if(B.yN.l(0,B.yN))s=new A.af4(A.cN(a,!1)) +else{o.a.toString +s=B.yN}r=o.d +r===$&&A.b() +q=A.kP(a).gqH().gaCk() +p=A.kP(a).gqH().gYe() +o.a.toString +return A.avg(new A.ajR(r,this.b,q,p,null,B.zX,!0,!1,this.c,r.a),A.dtD(),A.dtE(),A.dtF(),s,!0)}, +$S:940} +A.aT0.prototype={ +q(a){var s,r,q,p,o=null,n=this.c,m=n.d +if(m!=null){s=A.kP(a).gqH().gYe() +m=A.h4(new A.bX(A.ci(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,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.aG,!0,s,o,o,B.a0)}r=n.a +q=n.b +p=n.c +if(r==null&&q!=null&&p!=null)r=new A.arO(q,p,o) +return new A.ba(o,44+A.bC(a,B.cV,t.l).w.r.b,new A.iX(!0,!0,!0,!1,B.L,!1,new A.a6c(r,m,n.e,!0,6,o),o),o)}} +A.c7T.prototype={} +A.c7S.prototype={} +A.arO.prototype={ +q(a){var s,r,q=null +A.wp(a,t.X) +s=A.kP(a).gqH().gaCk() +r=A.h4(new A.fI(B.a31,A.eq(A.a([B.bfx,this.f,B.bfy,new A.iO(1,B.c1,this.r,q)],t.p),B.t,q,B.o,B.Z,q,q,B.x),q),q,q,B.aG,!0,s,q,q,B.a0) +return A.I4(B.C,B.e8,new A.bX(A.ci(q,q,q,q,q,!0,q,q,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.fv,q,44,new A.bba(this,a),B.L,0.4)}} +A.bba.prototype={ +$0(){A.cyc(this.b)}, +$S:0} +A.aL6.prototype={ +q(a){var s,r,q,p=null,o=a.a0(t.I) +o.toString +s=a.a0(t.sp) +if(s==null)s=B.dm +r=A.cm(62415) +q=new A.aA(B.ai7,A.czf(A.cy(p,p,p,A.dH(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,p,p,p,p,p,p,p,p),p) +switch(o.w.a){case 0:o=new A.c5(new Float64Array(16)) +o.fO() +o.o2(0,-1,1,1) +q=A.x0(B.C,q,p,o,!1) +break +case 1:break}return q}} +A.acQ.prototype={ +aX9(a,b,c){var s,r=null +if(b==null)return B.ap +s=A.bv(b,r,r,1,B.bf,r,r,r,r,r,r,r,r,r,r) +return new A.fl(B.fn,1,r,b.length>12?B.bt0:s,r)}, +q(a){var s=this.d +if(s instanceof A.Bb&&!s.gXD()){s.toString +s=t.My.a(s).WJ$ +s.toString +return new A.hc(s,this.gaX8(),null,null,t.Sj)}else return B.ap}} +A.ajR.prototype={ +gHD(){var s=$.an.U$.z.i(0,this.c.a).gai() +s.toString +return t.x.a(s)}, +q(a){return this.z}} +A.aS6.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=n.c,k=n.e,j=n.d,i=a.a0(t.I) +i.toString +s=k.gHD() +r=j.gHD() +q=k.gHD().gu(0) +p=j.gHD().gu(0) +p=new A.W(0,0,0+q.a,0+q.b).n1(new A.W(0,0,0+p.a,0+p.b)) +i=i.w===B.j?1:-1 +o=new A.c7M(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.hC(l,new A.c7U(n),m)],t.p) +if(o.gavV()!=null){k=o.gavV() +k.toString +l.push(k)}if(o.gavW()!=null){k=o.gavW() +k.toString +l.push(k)}if(o.gavY()!=null){k=o.gavY() +k.toString +l.push(k)}if(o.gavZ()!=null){k=o.gavZ() +k.toString +l.push(k)}if(o.gavX()!=null){k=o.gavX() +k.toString +l.push(k)}if(o.gaw_()!=null){k=o.gaw_() +k.toString +l.push(k)}if(o.gaFI()!=null){k=o.gaFI() +k.toString +l.push(k)}if(o.gaFE()!=null){k=o.gaFE() +k.toString +l.push(k)}if(o.gaFF()!=null){k=o.gaFF() +k.toString +l.push(k)}if(o.gaFJ()!=null){k=o.gaFJ() +k.toString +l.push(k)}if(o.gaFH()!=null){k=o.gaFH() +k.toString +l.push(k)}if(o.gaFK()!=null){k=o.gaFK() +k.toString +l.push(k)}k=n.f +j=k.a +j.toString +k=k.b +k.toString +return A.cxY(new A.ba(1/0,Math.max(A.fP(j),A.fP(k))+A.bC(a,B.cV,t.l).w.r.b,new A.d4(B.ar,m,B.am,B.k,l,m),m))}} +A.c7U.prototype={ +$2(a,b){var s=this.a,r=s.c,q=s.r.ah(0,r.gj(r)) +q.toString +return A.cRA(q,s.w.ah(0,r.gj(r)),null,new A.ba(1/0,s.f.ah(0,r.gj(r)),null,null),!1)}, +$S:55} +A.c7M.prototype={ +uL(a,b){var s,r,q=$.an.U$.z.i(0,a).gai() +q.toString +t.x.a(q) +s=A.cK(q.cf(0,b),B.h) +q=q.gu(0) +r=s.a +s=s.b +return A.cLw(new A.W(r,s,r+q.a,s+q.b),this.ay)}, +ag0(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h=$.an.U$.z.i(0,b).gai() +h.toString +s=t.x +s.a(h) +r=$.an.U$.z.i(0,d).gai() +r.toString +s.a(r) +q=this.ch>0 +s=q?0:h.gu(0).a +p=h.gu(0) +o=q?0:r.gu(0).a +n=r.gu(0) +m=A.cK(h.cf(0,c),new A.j(s,p.b/2)) +l=A.cK(r.cf(0,e),new A.j(o,n.b/2)) +k=q?l.W(0,m):new A.j(e.gu(0).a-l.a,l.b).W(0,new A.j(c.gu(0).a-m.a,m.b)) +j=this.uL(b,c) +s=q?j.a:j.c +i=new A.j(s,j.b) +s=i.S(0,k) +r=t.Ni +return A.cOl(a,q,new A.aB(t.o.a(this.a),new A.aP(i,s,r),r.h("aB")),h.gu(0))}, +MP(a){var s=$.cZ_(),r=s.$ti.h("eb") +return new A.aB(t.o.a(this.a),new A.eb(new A.eA(new A.eG(a,1,B.dl)),s,r),r.h("aB"))}, +Gm(a){var s=$.cZ0(),r=s.$ti.h("eb") +return new A.aB(t.o.a(this.a),new A.eb(new A.eA(new A.eG(0,a,B.eb)),s,r),r.h("aB"))}, +gavY(){var s=this,r=s.b.b,q=$.an.U$.z.i(0,r) +q=q==null?null:q.gb7() +t.SC.a(q) +if(q==null)return null +r=s.uL(r,s.d) +return A.TG(new A.dg(s.Gm(0.4),!1,q.c,null),r)}, +gavV(){var s=this,r=null,q=s.b.c,p=$.an.U$.z.i(0,q) +p=p==null?r:p.gb7() +t.SC.a(p) +if(p==null)return r +q=s.uL(q,s.d) +return A.TG(new A.dg(s.Gm(0.6),!1,A.h4(p.c,r,r,B.aG,!0,s.f,r,r,B.a0),r),q)}, +gavW(){var s,r,q=this,p=null,o=q.b.d,n=$.an.U$.z.i(0,o) +n=n==null?p:n.gb7() +t.SC.a(n) +if(n==null)return p +s=q.d +r=q.uL(o,s) +s=r.eD(new A.j(q.ch*(-s.gu(0).a/2),0)) +o=t.o.a(q.a) +return new A.a7f(new A.dg(q.Gm(0.2),!1,A.h4(n.c,p,p,B.aG,!0,q.f,p,p,B.a0),p),new A.aB(o,new A.U8(r,s),t.MD.h("aB")),p)}, +gavZ(){var s,r,q,p,o,n,m=this,l=null,k=m.b.e,j=$.an.U$.z.i(0,k) +j=j==null?l:j.gb7() +s=t.SC +s.a(j) +r=m.c +q=r.d +p=$.an.U$.z.i(0,q) +o=s.a(p==null?l:p.gb7()) +r=$.an.U$.z.i(0,r.b) +n=s.a(r==null?l:r.gb7()) +s=j!=null +if(s&&o!=null){s=m.Gm(m.Q?0.4:0.7) +r=t.o.a(m.a) +return m.ag0(new A.dg(s,!1,new A.fl(B.fn,l,l,A.cGy(j.c,l,B.aG,new A.aB(r,new A.wT(m.w,m.r),t.ta.h("aB"))),l),l),k,m.d,q,m.e)}if(s&&n!=null){k=m.uL(k,m.d) +return A.TG(new A.dg(m.Gm(m.Q?0.4:0.7),!1,A.h4(j.c,l,l,B.aG,!0,m.w,l,l,B.a0),l),k)}return l}, +gavX(){var s,r,q=null,p=$.an.U$.z.i(0,this.b.r) +p=p==null?q:p.gb7() +s=t.SC +s.a(p) +p=this.c +r=$.an.U$.z.i(0,p.d) +s.a(r==null?q:r.gb7()) +p=$.an.U$.z.i(0,p.b) +s.a(p==null?q:p.gb7()) +return q}, +gaw_(){var s=this,r=s.b.f,q=$.an.U$.z.i(0,r) +q=q==null?null:q.gb7() +t.SC.a(q) +if(q==null)return null +r=s.uL(r,s.d) +return A.TG(new A.dg(s.Gm(0.6),!1,q.c,null),r)}, +gaFI(){var s=this,r=s.c.b,q=$.an.U$.z.i(0,r) +q=q==null?null:q.gb7() +t.SC.a(q) +if(q==null)return null +r=s.uL(r,s.e) +return A.TG(new A.dg(s.MP(0.6),!1,q.c,null),r)}, +gaFE(){var s,r,q,p,o,n=this,m=null,l=n.c.c,k=$.an.U$.z.i(0,l) +k=k==null?m:k.gb7() +s=t.SC +s.a(k) +r=$.an.U$.z.i(0,n.b.c) +q=s.a(r==null?m:r.gb7()) +if(k==null)return m +p=n.uL(l,n.e) +s=q==null +if(s){l=$.an.U$.z.i(0,l).gai() +l.toString +o=p.eD(new A.j(n.ch*t.x.a(l).gu(0).a*2,0))}else o=p +l=t.o.a(n.a) +return new A.a7f(new A.dg(n.MP(s?0.7:0.4),!1,A.h4(k.c,m,m,B.aG,!0,n.r,m,m,B.a0),m),new A.aB(l,new A.U8(o,p),t.MD.h("aB")),m)}, +gaFF(){var s,r,q,p,o,n=this,m=null,l=n.b,k=l.e,j=$.an.U$.z.i(0,k) +j=j==null?m:j.gb7() +s=t.SC +s.a(j) +l=$.an.U$.z.i(0,l.r) +s.a(l==null?m:l.gb7()) +l=n.c.d +r=$.an.U$.z.i(0,l) +q=s.a(r==null?m:r.gb7()) +if(q==null)return m +s=$.an.U$.z.i(0,l) +p=s==null?m:s.rA(t.re) +if(p!=null){s=p.z1$ +s=s.gj(s)<1}else s=!1 +if(s){s=p.z1$ +s=s.gj(s) +r=t.Y +o=new A.aB(t.o.a(n.a),new A.aP(0,s,r),r.h("aB"))}else o=m +if(j!=null){j=o==null?n.MP(0.3):o +s=t.o.a(n.a) +return n.ag0(new A.dg(j,!1,A.cGy(q.c,m,B.aG,new A.aB(s,new A.wT(n.w,n.r),t.ta.h("aB"))),m),k,n.d,l,n.e)}return m}, +gaFJ(){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.c.e,h=$.an.U$.z.i(0,i) +h=h==null?j:h.gb7() +t.SC.a(h) +if(h==null)return j +s=k.e +r=k.uL(i,s) +i=$.an.U$.z.i(0,i).gai() +i.toString +t.x.a(i) +q=k.ch>0 +p=q?r.a:r.c +o=r.b +s=s.gu(0) +n=i.gu(0) +m=t.Ni +l=t.o.a(k.a) +i=i.gu(0) +return A.cOl(new A.dg(k.MP(0.25),!1,A.h4(h.c,j,j,B.aG,!0,k.x,j,j,B.a0),j),q,new A.aB(l,new A.aP(new A.j(s.a-n.a/2,o),new A.j(p,o),m),m.h("aB")),i)}, +gaFK(){var s=this,r=s.c.f,q=$.an.U$.z.i(0,r) +q=q==null?null:q.gb7() +t.SC.a(q) +if(q==null)return null +r=s.uL(r,s.e) +return A.TG(new A.dg(s.MP(0.4),!1,q.c,null),r)}, +gaFH(){var s=$.an.U$.z.i(0,this.c.r) +s=s==null?null:s.gb7() +t.SC.a(s) +return null}} +A.a1n.prototype={ +J(){return new A.adS(B.f)}} +A.adS.prototype={ +bcV(){var s,r=this.c +r.toString +s=A.EK(r) +if(s!=null&&s.f.length!==0)s.jv(0,B.iQ,B.bd)}, +q(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.a.d,i=A.bC(a,k,t.l).w +l.a.toString +s=i.r +r=s.b +q=44+r +p=i.f +o=p.d +n=p.u9(0) +l.a.toString +m=A.yp(k,a) +if(m==null)m=A.kP(a).gBy() +j=(m.gj(m)>>>24&255)===255?A.rC(new A.aA(new A.af(0,q,0,o),j,k),i.bFK(!0).bs_(n),k):A.rC(new A.aA(new A.af(0,0,0,o),j,k),i.bsj(s.LZ(q),n),k) +l.a.toString +s=A.yp(k,a) +if(s==null)s=A.kP(a).gAj() +p=A.a([j],t.p) +p.push(A.mo(k,A.cxY(l.a.c),k,k,0,0,0,k)) +p.push(A.mo(k,A.dn(k,k,B.m,!0,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,l.gbcU(),k,k,k,k,k,k,k,!1,B.ac),r,k,0,0,0,k)) +return A.o1(new A.d4(B.ar,k,B.am,B.k,p,k),new A.c_(s,k,k,k,k,k,k,B.U),B.cB)}} +A.a1o.prototype={ +J(){return new A.adT(B.f)}} +A.adT.prototype={ +a8(){this.an() +this.a.toString}, +b1(a){this.bc(a) +this.a.toString}, +m(){var s=this.e +if(s!=null)s.m() +this.ap()}, +b67(a){var s +switch(A.bL().a){case 2:s=!0 +break +case 0:case 1:case 3:case 4:case 5:s=!1 +break +default:s=null}if(s&&a!==this.d){this.d=a +A.w5()}this.a.z.$1(a)}, +q(a){var s,r,q,p,o,n=this,m=null,l=A.kP(a).gqH().gacM() +n.a.toString +s=A.yp(m,a) +r=l.bu(A.yp(l.b,a)) +q=n.a +p=q.w +q=A.a([A.po(0,new A.aMS(p,new A.a50(p,B.ajJ,1.07,0,!0,q.r,0.447,q.x,q.y,n.gb66(),q.Q,m),m))],t.p) +p=n.a +o=p.x*p.r +q.push(A.n6(A.eu(new A.fI(new A.aG(1/0,1/0,o,o),B.agS,m),m,m,m),!0,m)) +return A.o1(A.h4(new A.d4(B.ar,m,B.am,B.k,q,m),m,m,B.aG,!0,r,m,m,B.a0),new A.c_(s,m,m,m,m,m,m,B.U),B.cB)}} +A.arR.prototype={ +q(a){var s=null,r=B.Cy.f3(a) +return A.bB(s,s,B.i,s,s,new A.c_(r,s,s,new A.vq(B.eo,B.eo,B.eo,B.eo),s,s,s,B.U),s,s,s,new A.eB(9,0,9,0),s,s,s,s)}} +A.aMS.prototype={ +aR(a){var s=a.a0(t.I) +s.toString +s=new A.ahm(s.w,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +s.atA(null,this.e) +return s}, +b_(a,b){var s=a.a0(t.I) +s.toString +b.sd5(s.w) +s=b.G +s===$&&A.b() +b.atA(s,this.e)}} +A.ahm.prototype={ +atA(a,b){var s=this +if(b===a)return +if(a!=null)a.O(0,s.ga3F()) +else s.aS=b.as +b.a3(0,s.ga3F()) +s.G=b}, +sd5(a){if(this.ac===a)return +this.ac=a +this.cs()}, +b4o(){var s=this.G +s===$&&A.b() +s.aBD(this.aS+1)}, +b3u(){var s=this.G +s===$&&A.b() +s.aBD(this.aS-1)}, +b62(){var s,r=this,q=r.G +q===$&&A.b() +s=t.JP +if(s.a(B.b.gcW(q.f)).gNy()===r.aS)return +r.aS=s.a(B.b.gcW(r.G.f)).gNy() +r.cs()}, +ji(a){this.kH(a) +a.a=!0 +a.bO=this.ac +a.e=!0}, +yh(a,b,c){var s,r,q,p=this +if(c.length===0)return p.a0U(a,b,c) +s=A.N(t.S,t.bu) +B.b.ga2(c).d0(new A.cbP(s)) +if(s.i(0,p.aS)==null)return a.Di(0,b) +b.ry=new A.et(s.i(0,p.aS).fy.a,B.aS) +b.e=!0 +r=s.i(0,p.aS-1) +q=s.i(0,p.aS+1) +if(q!=null){b.to=new A.et(q.fy.a,B.aS) +b.e=!0 +b.sCM(p.gb4n())}if(r!=null){b.x1=new A.et(r.fy.a,B.aS) +b.e=!0 +b.sCK(p.gb3t())}a.Di(0,b)}, +m(){this.ig() +var s=this.G +s===$&&A.b() +s.O(0,this.ga3F())}} +A.cbP.prototype={ +$1(a){var s=a.x +s.toString +this.a.n(0,s,a) +return!0}, +$S:180} +A.a1p.prototype={ +gv0(a){return B.bd}, +gq9(){this.$ti.h("nZ<1>").a(this.b) +return B.a7w}, +gu1(){return null}, +Vo(a){var s +if(a instanceof A.Bb){a.$ti.h("nZ<1>").a(a.b) +s=!0}else s=!1 +return s}, +rj(a,b,c){var s=null,r=this.$ti.h("nZ<1>").a(this.b) +return new A.bX(A.ci(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,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r.r,s)}, +ym(a,b,c,d){return A.cGj(this,a,b,c,d,this.$ti.c)}} +A.bbb.prototype={ +$0(){return A.d3S(this.a)}, +$S:3} +A.bbc.prototype={ +$0(){var s=this.a,r=s.a +r.toString +s=s.ay +s.toString +r.btW() +return new A.adM(s,r,this.b.h("adM<0>"))}, +$S(){return this.b.h("adM<0>()")}} +A.Bb.prototype={ +grP(){this.$ti.h("nZ<1>").a(this.b) +return!0}, +grD(){this.$ti.h("nZ<1>").a(this.b) +return!1}, +gpe(){return A.hw.prototype.gpe.call(this)+"("+A.r(this.$ti.h("nZ<1>").a(this.b).a)+")"}} +A.nZ.prototype={ +BS(a){var s=null,r=this.$ti,q=A.a([],t.Zt),p=$.at,o=r.h("ak<1?>"),n=r.h("aI<1?>"),m=A.ms(B.bO),l=A.a([],t.wi),k=$.ae(),j=$.at +return new A.Bb(s,!1,!0,!1,s,s,q,A.b9(t.kj),new A.aR(s,r.h("aR>")),new A.aR(s,t.A),new A.qt(),s,0,new A.aI(new A.ak(p,o),n),m,l,this,new A.bm(s,k,t.XR),new A.aI(new A.ak(j,o),n),new A.aI(new A.ak(j,o),n),r.h("Bb<1>"))}} +A.arP.prototype={ +q(a){var s,r=this,q=a.a0(t.I) +q.toString +s=q.w +q=r.e +return A.aEM(A.aEM(new A.ash(q,r.f,q,null),r.c,s,!0),r.d,s,!1)}} +A.X7.prototype={ +J(){return new A.X8(B.f,this.$ti.h("X8<1>"))}, +bv5(){return this.d.$0()}, +bCV(){return this.e.$0()}} +A.X8.prototype={ +a8(){var s,r=this +r.an() +s=A.Rt(null,r,null) +s.ch=r.gbgl() +s.CW=r.gbgn() +s.cx=r.gbgj() +s.cy=r.gbgh() +r.e=s}, +m(){var s=this,r=s.e +r===$&&A.b() +r.p1.V(0) +r.lW() +if(s.d!=null)$.an.xr$.push(new A.bVU(s)) +s.ap()}, +bgm(a){this.d=this.a.bCV()}, +bgo(a){var s,r,q=this.d +q.toString +s=a.c +s.toString +s=this.akc(s/this.c.gu(0).a) +q=q.a +r=q.x +r===$&&A.b() +q.sj(0,r-s)}, +bgk(a){var s=this,r=s.d +r.toString +r.ayO(s.akc(a.a.a.a/s.c.gu(0).a)) +s.d=null}, +bgi(){var s=this.d +if(s!=null)s.ayO(0) +this.d=null}, +bgq(a){var s +if(this.a.bv5()){s=this.e +s===$&&A.b() +s.m9(a)}}, +akc(a){var s=this.c.a0(t.I) +s.toString +switch(s.w.a){case 0:return-a +case 1:return a}}, +q(a){var s,r,q=null,p=a.a0(t.I) +p.toString +s=t.l +r=p.w===B.j?A.bC(a,B.cV,s).w.r.a:A.bC(a,B.cV,s).w.r.c +r=Math.max(r,20) +return new A.d4(B.ar,q,B.q8,B.k,A.a([this.a.c,new A.aBR(0,0,0,r,A.wk(B.cr,q,q,q,this.gbgp(),q,q,q),q)],t.p),q)}} +A.bVU.prototype={ +$1(a){var s=this.a,r=s.d,q=r==null,p=q?null:r.b.c!=null +if(p===!0)if(!q)r.b.Mz() +s.d=null}, +$S:5} +A.adM.prototype={ +ayO(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.av(800,0,q) +q.toString +q=A.cp(0,0,0,Math.min(B.e.ec(q),300),0,0) +r.z=B.b_ +r.kn(1,B.Cs,q)}else{o.b.fD() +r=o.a +q=r.r +if(q!=null&&q.a!=null){q=r.x +q===$&&A.b() +q=A.av(0,800,q) +q.toString +q=A.cp(0,0,0,B.e.ec(q),0,0) +r.z=B.qB +r.kn(0,B.Cs,q)}}q=r.r +if(q!=null&&q.a!=null){p=A.aF("animationStatusCallback") +p.b=new A.bVT(o,p) +q=p.aX() +r.cY() +r=r.f0$ +r.b=!0 +r.a.push(q)}else o.b.Mz()}} +A.bVT.prototype={ +$1(a){var s=this.a +s.b.Mz() +s.a.fW(this.b.aX())}, +$S:10} +A.v3.prototype={ +j3(a,b){var s +if(a instanceof A.v3){s=A.bWm(a,this,b) +s.toString +return s}s=A.bWm(null,this,b) +s.toString +return s}, +j4(a,b){var s +if(a instanceof A.v3){s=A.bWm(this,a,b) +s.toString +return s}s=A.bWm(this,null,b) +s.toString +return s}, +yA(a){return new A.aMO(this,a)}, +l(a,b){var s,r +if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +if(b instanceof A.v3){s=b.a +r=this.a +r=s==null?r==null:s===r +s=r}else s=!1 +return s}, +gv(a){return J.ab(this.a)}} +A.bWn.prototype={ +$1(a){var s=A.ai(null,a,this.a) +s.toString +return s}, +$S:287} +A.bWo.prototype={ +$1(a){var s=A.ai(null,a,1-this.a) +s.toString +return s}, +$S:287} +A.aMO.prototype={ +jJ(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.WJ$ +if(s==null)this.WJ$=new A.bm(null,$.ae(),t.XR) +else s.sj(0,null) +this.aP8(a)}} +A.Qd.prototype={ +J(){return new A.adU(new A.aR(null,t.A),null,null,B.f)}} +A.adU.prototype={ +a8(){var s,r=this +r.ahb() +s=r.cy=A.bQ(null,B.b1,null,1,null,r) +s.cY() +s=s.em$ +s.b=!0 +s.a.push(new A.bWr(r))}, +P9(){var s,r,q,p=this,o=p.at +o===$&&A.b() +s=p.c +s.toString +s=B.agQ.f3(s) +o.sa6(0,s) +s=p.c.a0(t.I) +s.toString +o.sd5(s.w) +s=p.a +r=s.w +r.toString +q=p.cy +q===$&&A.b() +q=q.x +q===$&&A.b() +o.sadw(r+q*(s.fy-r)) +o.sabU(3) +o.sa97(3) +r=p.a +s=r.r +r=r.go +q=p.cy.x +q===$&&A.b() +q=A.a7x(s,r,q) +q.toString +o.slj(q) +q=p.c +q.toString +o.sdX(0,A.bC(q,B.cV,t.l).w.r) +o.sac4(0,36) +o.saCb(8) +o.sa03(p.a.db)}, +Xh(a){var s,r=this +r.aha(a) +s=r.Ad() +if(s==null)return +switch(s.a){case 1:r.db=a.b +break +case 0:r.db=a.a +break}}, +Xf(){if(this.Ad()==null)return +this.aPE() +var s=this.cy +s===$&&A.b() +s.cM(0).bf(new A.bWq(),t.H)}, +Xg(a,b){var s,r=this,q=r.Ad() +if(q==null)return +s=r.cy +s===$&&A.b() +s.eI(0) +r.ah9(a,b) +switch(q.a){case 1:if(Math.abs(b.a.b)<10&&Math.abs(a.b-r.db)>0)A.qb() +break +case 0:if(Math.abs(b.a.a)<10&&Math.abs(a.a-r.db)>0)A.qb() +break}}, +m(){var s=this.cy +s===$&&A.b() +s.m() +this.ah8()}} +A.bWr.prototype={ +$0(){this.a.P9()}, +$S:0} +A.bWq.prototype={ +$1(a){return A.qb()}, +$S:471} +A.a1q.prototype={ +J(){return new A.adV(null,null,B.f)}} +A.adV.prototype={ +biq(a){var s=this.a,r=A.av(s.r,s.w,a) +r.toString +if(r!==s.c)s.d.$1(r)}, +a3x(a){var s=this.a,r=s.e +r.toString +s=A.av(s.r,s.w,a) +s.toString +r.$1(s)}, +a3v(a){var s=this.a,r=s.f +r.toString +s=A.av(s.r,s.w,a) +s.toString +r.$1(s)}, +q(a){var s,r,q,p,o=this,n=o.a,m=n.c,l=n.r,k=n.w +n=n.x +s=A.kP(a).gkf() +if(s instanceof A.ez)s=s.f3(a) +r=o.a +q=r.z +p=r.e!=null?o.ga3w():null +r=r.f!=null?o.ga3u():null +return new A.aMT((m-l)/(k-l),n,s,q,o.gbip(),p,r,o,null)}} +A.aMT.prototype={ +aR(a){var s=this,r=null,q=s.d,p=B.Cx.f3(a),o=a.a0(t.I) +o.toString +o=new A.ahn(q,s.e,s.f,s.r,p,s.w,s.x,s.y,o.w,B.bG,B.a2S,r,A.aw(t.T)) +o.aQ() +o.sbq(r) +p=A.Rt(r,r,r) +p.ch=o.ga3w() +p.CW=o.gb3F() +p.cx=o.ga3u() +o.ul=p +q=A.bQ(r,B.bd,r,1,q,s.z) +q.cY() +p=q.em$ +p.b=!0 +p.a.push(o.gfk()) +o.n2=q +return o}, +b_(a,b){var s,r=this +b.sj(0,r.d) +b.sMB(r.e) +b.sFe(r.f) +b.skV(r.r) +s=B.Cx.f3(a) +b.sqL(s) +b.sjo(r.w) +b.eS=r.x +b.h9=r.y +s=a.a0(t.I) +s.toString +b.sd5(s.w)}} +A.ahn.prototype={ +sj(a,b){var s,r,q=this +if(b===q.eK)return +q.eK=b +s=q.iB +r=q.n2 +if(s!=null){r===$&&A.b() +r.z=B.b_ +r.kn(b,B.aa,null)}else{r===$&&A.b() +r.sj(0,b)}q.cs()}, +sMB(a){if(a==this.iB)return +this.iB=a +this.aV()}, +sFe(a){if(a.l(0,this.eF))return +this.eF=a +this.aV()}, +skV(a){if(a.l(0,this.eQ))return +this.eQ=a +this.aV()}, +sqL(a){if(a.l(0,this.eR))return +this.eR=a +this.aV()}, +sjo(a){var s,r=this +if(J.q(a,r.eG))return +s=r.eG +r.eG=a +if(s!=null!==(a!=null))r.cs()}, +sd5(a){if(this.jA===a)return +this.jA=a +this.aV()}, +gRB(){var s=A.Z(this.n3,0,1),r=this.iB +return r!=null?B.e.aF(s*r)/r:s}, +gasV(){var s,r,q=this +switch(q.jA.a){case 0:s=1-q.eK +break +case 1:s=q.eK +break +default:s=null}r=A.av(22,q.gu(0).a-8-14,s) +r.toString +return r}, +a3x(a){var s,r=this +if(r.eG!=null){s=r.eS +if(s!=null)s.$1(r.gRB()) +r.n3=r.eK +s=r.eG +s.toString +s.$1(r.gRB())}return null}, +b3G(a){var s,r,q,p=this +if(p.eG!=null){s=Math.max(8,p.gu(0).a-44) +r=a.c +r.toString +q=r/s +switch(p.jA.a){case 0:p.n3-=q +break +case 1:p.n3+=q +break}r=p.eG +r.toString +r.$1(p.gRB())}}, +a3v(a){var s=this.h9 +if(s!=null)s.$1(this.gRB()) +this.n3=0 +return null}, +kw(a){return Math.abs(a.a-this.gasV())<22}, +n8(a,b){var s +if(t.pY.b(a)&&this.eG!=null){s=this.ul +s===$&&A.b() +s.m9(a)}}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this +switch(h.jA.a){case 0:s=h.n2 +s===$&&A.b() +s=s.x +s===$&&A.b() +r=1-s +q=h.eF +p=h.eR +break +case 1:s=h.n2 +s===$&&A.b() +s=s.x +s===$&&A.b() +q=h.eR +p=h.eF +r=s +break +default:r=null +q=null +p=null}o=b.b+h.gu(0).b/2 +s=b.a +n=o-1 +m=o+1 +l=h.gu(0) +k=s+h.gasV() +j=a.gbY(a) +if(r>0){i=$.ar().aP() +i.sa6(0,p) +j.dh(A.cyD(s+8,n,k,m,1,1),i)}if(r<1){i=$.ar().aP() +i.sa6(0,q) +j.dh(A.cyD(k,n,s+(l.a-8),m,1,1),i)}new A.bbf(h.eQ).aI(j,A.jQ(new A.j(k,o),14))}, +ji(a){var s,r=this +r.kH(a) +a.a=r.eG!=null +a.dn(B.q3,!0) +if(r.eG!=null){a.bO=r.jA +a.e=!0 +a.sCM(r.gb7n()) +a.sCK(r.gaZQ()) +s=r.eK +a.ry=new A.et(""+B.e.aF(s*100)+"%",B.aS) +a.e=!0 +a.to=new A.et(""+B.e.aF(A.Z(s+r.gTF(),0,1)*100)+"%",B.aS) +a.e=!0 +a.x1=new A.et(""+B.e.aF(A.Z(r.eK-r.gTF(),0,1)*100)+"%",B.aS) +a.e=!0}}, +gTF(){var s=this.iB +return s!=null?1/s:0.1}, +b7o(){var s=this.eG +if(s!=null)s.$1(A.Z(this.eK+this.gTF(),0,1))}, +aZR(){var s=this.eG +if(s!=null)s.$1(A.Z(this.eK-this.gTF(),0,1))}, +gyD(a){return this.azl}, +gI3(){return!1}, +m(){var s=this.ul +s===$&&A.b() +s.p1.V(0) +s.lW() +s=this.n2 +s===$&&A.b() +s.m() +this.ig()}, +$ilC:1, +gO3(){return null}, +gO4(){return null}} +A.b_w.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.Yx.prototype={ +J(){return new A.aip(null,null,B.f,this.$ti.h("aip<1>"))}} +A.aip.prototype={ +a8(){var s,r,q,p=this +p.an() +s=p.a +r=A.bQ(null,B.CQ,null,1,s.d&&s.e&&s.f?1:0,p) +p.d!==$&&A.ck() +p.d=r +q=t.Y +p.e=new A.aB(t.o.a(r),new A.aP(1,0.95,q),q.h("aB"))}, +b1(a){var s,r,q,p,o=this +o.bc(a) +s=a.d&&a.e&&a.f +r=o.a +if(s!==(r.d&&r.e&&r.f)){s=o.d +s===$&&A.b() +r=o.e +r===$&&A.b() +q=r.a +q=r.b.ah(0,q.gj(q)) +r=o.a +r=r.d&&r.e&&r.f?0.95:1 +p=t.Y +o.e=new A.aB(t.o.a(s),new A.aP(q,r,p),p.h("aB")) +s.yf($.b2J())}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aU3()}, +q(a){var s,r,q=this,p=null,o=q.a +o=o.d&&!o.e?0.2:1 +s=a.a0(t.sp) +if(s==null)s=B.dm +s=s.w.dt(A.dH(p,p,p,p,p,p,p,p,p,p,p,p,p,p,q.a.e?B.b5:B.T,p,p,!0,p,p,p,p,p,p,p,p)) +r=q.e +r===$&&A.b() +return A.cy0(B.be,A.cIZ(B.C,A.a([A.jF(A.BQ(A.Aa(B.C,q.a.c,p,r),B.az,B.K,s),B.az,B.CQ,o),new A.Eo(!0,A.cGz(q.a.c,B.bqc),p)],t.p),0),p)}} +A.aio.prototype={ +J(){return new A.aW6(null,null,B.f)}} +A.aW6.prototype={ +a8(){var s,r=this +r.an() +s=A.bQ(null,B.ne,null,1,r.a.c?0:1,r) +r.d!==$&&A.ck() +r.d=s}, +b1(a){var s,r +this.bc(a) +s=this.a.c +if(a.c!==s){r=this.d +r===$&&A.b() +s=s?0:1 +r.z=B.b_ +r.kn(s,B.az,B.ne)}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aU2()}, +q(a){var s=this.d +s===$&&A.b() +return A.hC(s,new A.cea(this),B.bmB)}} +A.cea.prototype={ +$2(a,b){var s=null,r=this.a.d +r===$&&A.b() +r=r.x +r===$&&A.b() +return new A.aA(B.u2,A.o1(b,new A.c_(A.Y(B.e.aF(255*(0.30196078431372547*r)),142,142,147),s,s,B.a2A,s,s,s,B.U),B.cB),s)}, +$S:957} +A.Qe.prototype={ +J(){var s=null +return new A.YB(A.t5(s,s,s),A.Rt(s,s,s),A.St(s,s,s,s,s),s,s,B.f,this.$ti.h("YB<1>"))}} +A.YB.prototype={ +gzZ(){var s,r=this,q=r.d +if(q===$){s=A.bQ(null,B.ne,null,1,0,r) +r.d!==$&&A.a_() +r.d=s +q=s}return q}, +gZE(){var s,r=this,q=r.f +if(q===$){s=A.bQ(null,B.ne,null,1,0,r) +r.f!==$&&A.a_() +r.f=s +q=s}return q}, +gadx(){var s,r=this.r +if(r===$){s=t.Y +r=this.r=new A.aB(t.o.a(this.gZE()),new A.aP(1,0.95,s),s.h("aB"))}return r}, +a8(){var s,r,q,p=this +p.an() +s=p.y +r=s.w=new A.Ri(A.N(t.S,t.EG)) +q=p.x +q.w=r +r.b=q +q.ay=p.gbBX() +q.CW=p.gbDa() +q.cx=p.gacj(p) +q.cy=p.gYi(p) +p.w.bj=p.gbD2() +s.p2=new A.cei() +p.Q=p.a.d}, +b1(a){var s,r=this +r.bc(a) +s=r.z +if(s!==!0&&!J.q(r.Q,r.a.d)){r.gzZ().yf($.b2J()) +r.e=null +r.Q=r.a.d}}, +m(){var s,r=this +r.gZE().m() +r.gzZ().m() +s=r.x +s.p1.V(0) +s.lW() +s=r.w +s.q1() +s.lW() +s=r.y +s.q1() +s.lW() +r.aU4()}, +Q1(a){var s,r,q,p=this,o=p.c.gai() +o.toString +t.x.a(o) +s=p.a.c.a +r=s-1 +q=B.d.dV(B.e.hf(a,o.gu(0).a/s),0,r) +o=p.c.a0(t.I) +o.toString +switch(o.w.a){case 1:break +case 0:q=r-q +break}o=p.a.c +return new A.bR(o,A.z(o).h("bR<1>")).dE(0,q)}, +a55(a){var s,r=this,q=r.gZE(),p=r.gadx(),o=p.a +o=p.b.ah(0,o.gj(o)) +p=a?1:0.95 +s=t.Y +r.r=new A.aB(t.o.a(q),new A.aP(o,p,s),s.h("aB")) +r.gZE().yf($.b2J())}, +aCA(a){var s=this +if(J.q(s.Q,a))return +s.C(new A.cej(s,a)) +s.gzZ().yf($.b2J()) +s.e=null}, +Hf(a){if(!J.q(this.as,a))this.C(new A.cek(this,a))}, +O9(a){var s,r=this,q=r.z +if(q===!0)return +s=r.Q1(a.b.a) +r.Hf(null) +if(!J.q(s,r.a.d))r.a.e.$1(s)}, +bBY(a){var s,r=this,q=r.Q1(a.b.a) +r.z=J.q(q,r.Q) +r.Hf(q) +s=r.z +if(s===!0)r.a55(!1)}, +YH(a){var s,r,q,p,o,n=this,m=n.z +if(m===!0){s=n.Q1(a.e.a) +n.Hf(s) +n.aCA(s)}else{m=n.c.gai() +m.toString +r=t.x.a(m).gu(0) +m=a.e +q=r.a/2 +p=r.b/2 +o=m.W(0,new A.j(q,p)) +n.Hf(Math.pow(Math.max(0,Math.abs(o.a)-q),2)+Math.pow(Math.max(0,Math.abs(o.b)-p),2)>2500?null:n.Q1(m.a))}}, +bC9(a,b){var s,r=this,q=r.as,p=r.z +if(p===!0){r.a55(!0) +if(!J.q(r.Q,r.a.d)){p=r.a +s=r.Q +p.e.$1(s)}}else if(q!=null){r.aCA(q) +if(!J.q(r.Q,r.a.d)){p=r.a +s=r.Q +p.e.$1(s)}}r.Hf(null) +r.z=null}, +zD(a){var s=this,r=s.z +if(r===!0)s.a55(!0) +s.Hf(null) +s.z=null}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c={} +c.a=A.a([],t.p) +c.b=null +for(s=e.a.c,s=s.gep(s),s=s.gaz(s),r=e.$ti,q=r.h("Yx<1>"),r=r.h("ca<1>"),p=t.zm,o=!1,n=0;s.t();o=j){m=s.gK(s) +l=e.Q +k=m.a +j=J.q(l,k) +if(j)c.b=n +if(n!==0){l=c.a +i=o||j +B.b.B(l,new A.aio(i,new A.ca(n,p)))}l=c.a +i=e.a.d +h=J.q(e.as,k) +g=e.z +f=m.b +B.b.B(l,new A.bX(new A.a9g(d,d,d,d,d,i===k,!0,d,d,d,d,d,d,d,d,!0,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.ceg(e,m),d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d),!1,!1,!1,!1,new A.Ef(d,d,d,B.bG,d,new A.Yx(f,h,j,g===!0,new A.ca(k,r),q),d),d));++n}s=t.I +r=a.a0(s) +r.toString +switch(r.w.a){case 1:break +case 0:r=c.a +q=A.X(r).h("bE<1>") +c.a=A.R(new A.bE(r,q),!1,q.h("aa.E")) +r=c.b +if(r!=null)c.b=n-1-r +break}e.a.toString +a.a0(s).toString +e.a.toString +s=B.Cy.f3(a) +return A.czw(B.C,A.bB(d,A.hC(e.gadx(),new A.ceh(c,e),d),B.i,d,d,new A.c_(s,d,d,B.e8,d,d,d,B.U),d,d,d,d,B.aiE,d,d,d),B.i,B.a_)}} +A.cei.prototype={ +$0(){}, +$S:0} +A.cej.prototype={ +$0(){this.a.Q=this.b}, +$S:0} +A.cek.prototype={ +$0(){this.a.as=this.b}, +$S:0} +A.ceg.prototype={ +$0(){this.a.a.e.$1(this.b.a)}, +$S:0} +A.ceh.prototype={ +$2(a,b){var s=this.a,r=s.b,q=this.b,p=q.a.r.f3(a),o=q.gadx(),n=o.a +return new A.YA(r,p,o.b.ah(0,n.gj(n)),q,s.a,null,q.$ti.h("YA<1>"))}, +$S(){return this.b.$ti.h("YA<1>(u,c?)")}} +A.YA.prototype={ +aR(a){var s=this,r=new A.Ym(s.w,s.r,s.e,s.f,$.ar().aP(),0,null,null,A.aw(t.T),s.$ti.h("Ym<1>")) +r.aQ() +return r}, +b_(a,b){b.skV(this.f) +b.sbGM(this.r) +b.sbya(this.e)}} +A.Yz.prototype={} +A.Ym.prototype={ +aA(a){var s +this.aTN(a) +s=this.D.gzZ() +s.cY() +s=s.em$ +s.b=!0 +s.a.push(this.gfk())}, +ar(a){this.D.gzZ().O(0,this.gfk()) +this.aTO(0)}, +sbGM(a){var s=this +if(s.a4===a)return +s.a4=a +if(s.D.Q!=null)s.aV()}, +sbya(a){if(this.ag==a)return +this.ag=a +this.aV()}, +skV(a){if(this.aq.l(0,a))return +this.aq=a +this.aV()}, +n8(a,b){var s +if(t.pY.b(a)){s=this.D.z +s=s!==!0}else s=!1 +if(s){s=this.D +s.w.m9(a) +s.y.m9(a) +s.x.m9(a)}}, +gP2(){return(B.u2.geL()+1)*B.d.aD(this.cT$,2)}, +bo(a){var s,r,q,p,o=this,n=B.d.aD(o.cT$,2),m=o.Y$ +for(s=o.$ti.h("ap.1"),r=0;m!=null;){r=Math.max(r,m.aw(B.ad,a,m.gbG())) +q=m.b +q.toString +p=s.a(q).a7$ +if(p==null)m=null +else{q=p.b +q.toString +q=s.a(q).a7$ +m=q}}return(r+18.5)*(n+1)+o.gP2()}, +bb(a){var s,r,q,p,o=this,n=B.d.aD(o.cT$,2),m=o.Y$ +for(s=o.$ti.h("ap.1"),r=0;m!=null;){r=Math.max(r,m.aw(B.aj,a,m.gbL())) +q=m.b +q.toString +p=s.a(q).a7$ +if(p==null)m=null +else{q=p.b +q.toString +q=s.a(q).a7$ +m=q}}return(r+18.5)*(n+1)+o.gP2()}, +bh(a){var s,r,q,p,o=this.Y$ +for(s=this.$ti.h("ap.1"),r=28;o!=null;){r=Math.max(r,o.aw(B.ao,a,o.gbP())) +q=o.b +q.toString +p=s.a(q).a7$ +if(p==null)o=null +else{q=p.b +q.toString +q=s.a(q).a7$ +o=q}}return r}, +bi(a){var s,r,q,p,o=this.Y$ +for(s=this.$ti.h("ap.1"),r=28;o!=null;){r=Math.max(r,o.aw(B.ay,a,o.gbZ())) +q=o.b +q.toString +p=s.a(q).a7$ +if(p==null)o=null +else{q=p.b +q.toString +q=s.a(q).a7$ +o=q}}return r}, +il(a){return this.yH(a)}, +fo(a){if(!(a.b instanceof A.Yz))a.b=new A.Yz(null,null,B.h)}, +as9(a){var s,r,q,p,o=this,n=B.d.aD(o.cT$,2)+1,m=(a.a-o.gP2())/n,l=o.Y$ +for(s=o.$ti.h("ap.1");l!=null;){m=Math.max(m,l.aw(B.aj,1/0,l.gbL())+18.5) +r=l.b +r.toString +q=s.a(r).a7$ +if(q==null)l=null +else{r=q.b +r.toString +r=s.a(r).a7$ +l=r}}m=Math.min(m,(a.b-o.gP2())/n) +l=o.Y$ +for(p=28;l!=null;){p=Math.max(p,l.aw(B.ay,m,l.gbZ())) +r=l.b +r.toString +q=s.a(r).a7$ +if(q==null)l=null +else{r=q.b +r.toString +r=s.a(r).a7$ +l=r}}return new A.V(m,p)}, +asa(a,b){return b.bd(new A.V(a.a*(B.d.aD(this.cT$,2)+1)+this.gP2(),a.b))}, +cX(a){return this.asa(this.as9(a),a)}, +bJ(){var s,r,q,p,o,n,m=this,l=t.k.a(A.H.prototype.gZ.call(m)),k=m.as9(l),j=A.y6(k),i=new A.aG(0,1/0,j.c,j.d),h=m.Y$ +for(s=m.$ti.h("ap.1"),r=t.hz,q=0,p=0;h!=null;){h.d_((q&1)===0?j:i,!0) +o=h.b +o.toString +r.a(o) +o.a=new A.j(p,0) +n=h.id +p+=(n==null?A.C(A.a0("RenderBox was not laid out: "+A.I(h).k(0)+"#"+A.bq(h))):n).a +h=s.a(o).a7$;++q}m.id=m.asa(k,l)}, +aCh(a,b){var s,r,q,p +if(a==null)return null +s=B.b.ga2(b).b +s.toString +r=t.hz +q=r.a(s).a +s=B.b.gP(b).b +s.toString +s=r.a(s).a +r=B.b.gP(b).gu(0) +p=q.b +return new A.W(Math.max(a.a,q.a-1),p-0,Math.min(a.c,s.a+r.a+1),p+B.b.ga2(b).gu(0).b+0)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=f.aIu() +for(s=t.hz,r=b.a,q=b.b,p=1;p"))}}else o.e=null +n=o.e +g=n==null?null:n.ah(0,o.gzZ().gj(0)) +if(g==null)g=j +f.N=g +o=g.gc1() +n=f.a4 +f.biv(a,b,A.oq(o,(g.d-g.b)*n,(g.c-g.a)*n))}else f.N=null +for(p=0;p0?n*0.57735+0.5:0 +o.sH6(new A.zi(r.e,n)) +q.dh(p,o)}q=a.gbY(a) +p=l.fH(0.5) +n=$.ar() +m=n.aP() +m.sa6(0,B.mL) +q.dh(p,m) +m=a.gbY(a) +n=n.aP() +n.sa6(0,this.aq) +m.dh(l,n)}, +ej(a,b){var s,r,q,p,o,n={},m=n.a=this.d7$ +for(s=t.hz;m!=null;m=o){r=m.b +r.toString +s.a(r) +q=r.a +p=m.id +m=p==null?A.C(A.a0("RenderBox was not laid out: "+A.I(m).k(0)+"#"+A.bq(m))):p +p=q.a +q=q.b +if(new A.W(p,q,p+m.a,q+m.b).p(0,b))return a.l5(new A.cco(n,b,r),r.a,b) +o=r.dJ$ +n.a=o}return!1}} +A.cco.prototype={ +$2(a,b){return this.a.a.es(a,b)}, +$S:19} +A.all.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.a9;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.a9;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0s.prototype={} +A.alt.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.Z6.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.Z7.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aY7.prototype={ +aI(a,b){var s,r,q,p=$.ar(),o=p.aP() +o.sa6(0,this.b) +s=A.jQ(B.bbH,6) +r=A.lG(B.bbI,new A.j(7,b.b)) +q=p.dc() +q.q5(s) +q.jd(r) +a.ey(q,o)}, +hC(a){return!this.b.l(0,a.b)}} +A.arS.prototype={} +A.bbd.prototype={ +It(a){return new A.V(12,a+12-1.5)}, +Vi(a,b,c,d){var s,r,q,p=null,o=A.ih(p,p,p,new A.aY7(A.kP(a).gkf(),p),B.A) +switch(b.a){case 0:return A.Mi(o,new A.V(12,c+12-1.5)) +case 1:s=c+12-1.5 +r=A.Mi(o,new A.V(12,s)) +q=new A.c5(new Float64Array(16)) +q.fO() +q.ba(0,6,s/2) +q.uU(3.141592653589793) +q.ba(0,-6,-s/2) +return A.x0(p,r,p,q,!0) +case 2:return B.ap}}, +Is(a,b){switch(a.a){case 0:return new A.j(6,b+12-1.5) +case 1:return new A.j(6,b+12-1.5-12+1.5) +case 2:return new A.j(6,b+(b+12-1.5-b)/2)}}} +A.aMU.prototype={} +A.arT.prototype={ +q(a){var s,r,q=null,p=t.l,o=A.bC(a,B.cV,p).w.r,n=o.b+8,m=26+o.a,l=A.bC(a,B.di,p).w.a.a-o.c-26 +p=this.c +s=new A.j(A.Z(p.a,m,l),p.b-8-n) +p=this.d +r=new A.j(A.Z(p.a,m,l),p.b+8-n) +return new A.aA(new A.af(8,n,8,8),new A.q1(new A.aGg(s,r,q),new A.adY(s,r,this.e,A.dwl(),q),q),q)}} +A.aMW.prototype={ +aR(a){var s=new A.aUN(this.e,this.f,this.r,A.aw(t.xG),null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sbmG(this.e) +b.sbmH(this.f) +b.sc0(0,this.r)}} +A.aUN.prototype={ +giD(){return!0}, +sbmG(a){if(a.l(0,this.G))return +this.G=a +this.a9()}, +sbmH(a){if(a.l(0,this.ac))return +this.ac=a +this.a9()}, +sc0(a,b){if(J.q(b,this.aS))return +this.aS=b +this.aV()}, +gGQ(){var s=this.G,r=this.k1$ +r=r==null?null:r.gu(0).b +if(r==null)r=0 +return s.b>=r-14}, +bJ(){var s,r=this,q=r.k1$ +if(q==null)return +s=t.k.a(A.H.prototype.gZ.call(r)) +q.d_(new A.aG(30,1/0,0,1/0).C5(new A.aG(0,s.b,0,s.d)),!0) +s=q.b +s.toString +t.r.a(s) +s.a=new A.j(0,r.gGQ()?-7:0) +r.id=new A.V(q.gu(0).a,q.gu(0).b-7)}, +aYs(a,b){var s,r,q,p,o,n=this,m=$.ar().dc() +if(30>n.gu(0).a){m.iM(b) +return m}s=A.Z(n.hZ(n.gGQ()?n.G:n.ac).a,15,n.gu(0).a-7-8) +r=s-7 +q=s+7 +if(n.gGQ()){p=a.gu(0).b-7 +o=a.gu(0) +m.fV(0,q,p) +m.ds(0,s,o.b) +m.ds(0,r,p)}else{m.fV(0,r,7) +m.ds(0,s,0) +m.ds(0,q,7)}r=A.dj3(m,b,n.gGQ()?1.5707963267948966:-1.5707963267948966) +r.aO(0) +return r}, +aI(a,b){var s,r,q,p,o,n,m,l=this,k=l.k1$ +if(k==null)return +s=k.b +s.toString +t.r.a(s) +r=A.jq(new A.W(0,7,0+k.gu(0).a,7+(k.gu(0).b-14)),B.eo).Dy() +q=l.aYs(k,r) +p=l.aS +if(p!=null){o=A.cyC(r.a,r.b,r.c,r.d+7,B.eo).eD(b.S(0,s.a).S(0,B.h)) +a.gbY(a).dh(o,new A.f5(0,B.bY,p,B.h,15).nn())}p=l.cZ +n=l.cx +n===$&&A.b() +s=b.S(0,s.a) +m=k.gu(0) +p.sb9(0,a.bEF(n,s,new A.W(0,0,0+m.a,0+m.b),q,new A.cbW(k),p.a))}, +m(){this.cZ.sb9(0,null) +this.ig()}, +ej(a,b){var s,r,q=this.k1$ +if(q==null)return!1 +s=q.b +s.toString +s=t.r.a(s).a +r=s.a +s=s.b+7 +if(!new A.W(r,s,r+q.gu(0).a,s+(q.gu(0).b-14)).p(0,b))return!1 +return this.aPY(a,b)}} +A.cbW.prototype={ +$2(a,b){return a.eM(this.a,b)}, +$S:14} +A.adY.prototype={ +J(){return new A.adZ(new A.aR(null,t.A),null,null,B.f)}, +bH8(a,b,c,d){return this.f.$4(a,b,c,d)}} +A.adZ.prototype={ +bjE(a){var s=a.b +if(s!=null&&s!==0)if(s>0)this.an9() +else this.an4()}, +an4(){var s=this,r=$.an.U$.z.i(0,s.r) +r=r==null?null:r.gai() +t.Qv.a(r) +if(r instanceof A.O3){r=r.N +r===$&&A.b()}else r=!1 +if(r){r=s.d +r===$&&A.b() +r.eI(0) +r=s.d +r.cY() +r=r.f0$ +r.b=!0 +r.a.push(s.gU1()) +s.e=s.f+1}}, +an9(){var s=this,r=$.an.U$.z.i(0,s.r) +r=r==null?null:r.gai() +t.Qv.a(r) +if(r instanceof A.O3){r=r.a4 +r===$&&A.b()}else r=!1 +if(r){r=s.d +r===$&&A.b() +r.eI(0) +r=s.d +r.cY() +r=r.f0$ +r.b=!0 +r.a.push(s.gU1()) +s.e=s.f-1}}, +biX(a){var s,r=this +if(a!==B.a6)return +r.C(new A.bWy(r)) +s=r.d +s===$&&A.b() +s.cM(0) +r.d.fW(r.gU1())}, +a8(){this.an() +this.d=A.bQ(null,B.tZ,null,1,1,this)}, +b1(a){var s,r=this +r.bc(a) +if(r.a.e!==a.e){r.f=0 +r.e=null +s=r.d +s===$&&A.b() +s.cM(0) +r.d.fW(r.gU1())}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aTi()}, +q(a){var s,r,q,p=this,o=null,n=B.n9.f3(a),m=A.eu(A.cGk(A.n6(A.ih(o,o,o,new A.aQK(n,!0,o),B.Yt),!0,o),p.gb5I()),1,o,1),l=A.eu(A.cGk(A.n6(A.ih(o,o,o,new A.aVF(n,!1,o),B.Yt),!0,o),p.gb56()),1,o,1),k=p.a.e,j=A.X(k).h("O<1,k9>"),i=A.R(new A.O(k,new A.bWz(),j),!0,j.h("aa.E")) +j=p.a +k=j.c +s=j.d +r=p.d +r===$&&A.b() +q=p.f +return j.bH8(a,k,s,new A.dg(r,!1,A.xS(B.C,A.dn(o,new A.ae_(m,i,B.agN.f3(a),1/A.bC(a,B.ev,t.l).w.b,l,q,p.r),B.m,!1,o,o,o,o,p.gbjD(),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,B.ac),B.ft,B.tZ,o),o))}} +A.bWy.prototype={ +$0(){var s=this.a,r=s.e +r.toString +s.f=r +s.e=null}, +$S:0} +A.bWz.prototype={ +$1(a){return A.eu(a,1,null,1)}, +$S:982} +A.aQK.prototype={} +A.aVF.prototype={} +A.aMJ.prototype={ +aI(a,b){var s,r,q,p,o=b.b,n=this.c,m=n?1:-1,l=new A.j(o/4*m,0) +m=o/2 +s=new A.j(m,0).S(0,l) +r=new A.j(n?0:o,m).S(0,l) +q=new A.j(m,o).S(0,l) +p=$.ar().aP() +p.sa6(0,this.b) +p.sbN(0,B.a7) +p.se4(2) +p.str(B.jM) +p.sQE(B.qb) +a.jV(s,r,p) +a.jV(r,q,p)}, +hC(a){return!a.b.l(0,this.b)||a.c!==this.c}} +A.ae_.prototype={ +aR(a){var s=new A.O3(A.N(t.TC,t.x),this.w,this.e,this.f,0,null,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){b.soA(0,this.w) +b.spi(this.e) +b.sbue(this.f)}, +dv(a){var s=t.lU +return new A.aMV(A.N(t.TC,s),A.dV(s),this,B.aD)}} +A.aMV.prototype={ +gai(){return t.l0.a(A.bO.prototype.gai.call(this))}, +atX(a,b){var s +switch(b.a){case 0:s=t.l0.a(A.bO.prototype.gai.call(this)) +s.U=s.asQ(s.U,a,B.yG) +break +case 1:s=t.l0.a(A.bO.prototype.gai.call(this)) +s.aW=s.asQ(s.aW,a,B.yH) +break}}, +mj(a,b){var s,r +if(b instanceof A.Nz){this.atX(t.x.a(a),b) +return}if(b instanceof A.DG){s=t.l0.a(A.bO.prototype.gai.call(this)) +t.x.a(a) +r=b.a +r=r==null?null:r.gai() +t.Qv.a(r) +s.lB(a) +s.So(a,r) +return}}, +mn(a,b,c){t.l0.a(A.bO.prototype.gai.call(this)).NW(t.x.a(a),t.Qv.a(c.a.gai()))}, +ni(a,b){var s +if(b instanceof A.Nz){this.atX(null,b) +return}s=t.l0.a(A.bO.prototype.gai.call(this)) +t.x.a(a) +s.Tk(a) +s.oo(a)}, +d0(a){var s,r,q,p,o +this.ok.gbm(0).aE(0,a) +s=this.k4 +s===$&&A.b() +r=s.length +q=this.p1 +p=0 +for(;p0){q=k.aW.b +q.toString +m=t.yS +m.a(q) +l=k.U.b +l.toString +m.a(l) +if(k.ag!==r){q.a=new A.j(o.aX(),0) +q.e=!0 +o.b=o.aX()+k.aW.gu(0).a}if(k.ag>0){l.a=B.h +l.e=!0}}else o.b=o.aX()-k.aJ +r=k.ag +k.N=r!==j.c +k.a4=r>0 +k.id=s.a(A.H.prototype.gZ.call(k)).bd(new A.V(o.aX(),j.a))}, +aI(a,b){this.d0(new A.cbR(this,b,a))}, +fo(a){if(!(a.b instanceof A.nu))a.b=new A.nu(null,null,B.h)}, +ej(a,b){var s,r,q=this.d7$ +for(s=t.yS;q!=null;){r=q.b +r.toString +s.a(r) +if(!r.e){q=r.dJ$ +continue}if(A.cAb(q,a,b))return!0 +q=r.dJ$}if(A.cAb(this.U,a,b))return!0 +if(A.cAb(this.aW,a,b))return!0 +return!1}, +aA(a){var s,r,q +this.aTJ(a) +for(s=this.D.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a;(q==null?r.a(q):q).aA(a)}}, +ar(a){var s,r,q +this.aTK(0) +for(s=this.D.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a;(q==null?r.a(q):q).ar(0)}}, +lN(){this.d0(new A.cbU(this))}, +d0(a){var s=this.U +if(s!=null)a.$1(s) +s=this.aW +if(s!=null)a.$1(s) +this.QL(a)}, +lm(a){this.d0(new A.cbV(a))}} +A.cbS.prototype={ +$1(a){var s,r +t.x.a(a) +s=this.b +r=a.aw(B.ay,t.k.a(A.H.prototype.gZ.call(s)).b,a.gbZ()) +s=this.a +if(r>s.a)s.a=r}, +$S:30} +A.cbT.prototype={ +$1(a){var s,r,q,p,o,n,m,l=this,k=l.a,j=++k.d +t.x.a(a) +s=a.b +s.toString +t.yS.a(s) +s.e=!1 +r=l.b +if(a===r.U||a===r.aW||k.c>r.ag)return +if(k.c===0)q=j===r.cT$+1?0:r.aW.gu(0).a +else q=l.c +j=k.c===0?t.k.a(A.H.prototype.gZ.call(r)).b:l.d.aX() +p=k.a +a.d_(new A.aG(0,j-q,p,p),!0) +if(k.b+q+a.gu(0).a>t.k.a(A.H.prototype.gZ.call(r)).b){++k.c +k.b=r.U.gu(0).a+r.aJ +j=r.U.gu(0) +p=r.aW.gu(0) +o=l.d.aX() +n=k.a +a.d_(new A.aG(0,o-(j.a+p.a),n,n),!0)}j=k.b +s.a=new A.j(j,0) +m=j+(a.gu(0).a+r.aJ) +k.b=m +j=k.c +s.e=j===r.ag +if(j===0)l.d.b=m+r.aW.gu(0).a +if(k.c===r.ag)l.e.b=k.b}, +$S:30} +A.cbR.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.S(0,n.b) +q=n.c +q.eM(a,r) +if(s.a7$!=null||a===n.a.U){s=q.gbY(q) +q=new A.j(a.gu(0).a,0).S(0,r) +p=new A.j(a.gu(0).a,a.gu(0).b).S(0,r) +o=$.ar().aP() +o.sa6(0,n.a.aq) +s.jV(q,p,o)}}}, +$S:30} +A.cbQ.prototype={ +$2(a,b){return this.c.es(a,b)}, +$S:19} +A.cbU.prototype={ +$1(a){this.a.qB(t.x.a(a))}, +$S:30} +A.cbV.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:30} +A.Nz.prototype={ +H(){return"_CupertinoTextSelectionToolbarItemsSlot."+this.b}} +A.aSo.prototype={} +A.aSp.prototype={ +dv(a){return A.C(A.bT(null))}} +A.akQ.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.alj.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.yS;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.yS;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0a.prototype={} +A.Cn.prototype={ +J(){return new A.adX(B.f)}} +A.adX.prototype={ +bcm(a){this.C(new A.bWw(this))}, +bco(a){var s +this.C(new A.bWx(this)) +s=this.a.d +if(s!=null)s.$0()}, +bck(){this.C(new A.bWv(this))}, +q(a){var s=this,r=null,q=s.b1Q(a),p=s.d?B.agF.f3(a):B.D,o=s.a.d,n=A.I4(B.C,r,q,p,B.D,r,44,o,B.aix,1) +if(o!=null)return A.dn(r,n,B.m,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,s.gbcj(),s.gbcl(),s.gbcn(),r,r,r,r,!1,B.ac) +else return n}, +b1Q(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.cGl(a,q)}else q=p +s=A.bv(q,r,r,r,B.bf,r,r,r,r,B.brN.bu(this.a.d!=null?B.n9.f3(a):B.ht),r,r,r,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 5:case 6:case 7:case 9:return s +case 8:q=B.n9.f3(a) +p=$.ar().aP() +p.str(B.jM) +p.sQE(B.qb) +p.se4(1) +p.sbN(0,B.a7) +return new A.ba(13,13,A.ih(r,r,r,new A.aR5(q,p,r),B.A),r)}}} +A.bWw.prototype={ +$0(){return this.a.d=!0}, +$S:0} +A.bWx.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.bWv.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.aR5.prototype={ +aI(a,b){var s,r,q,p,o,n=this.c +n.sa6(0,this.b) +a.d6(0) +s=b.a +r=b.b +a.ba(0,s/2,r/2) +s=-s/2 +r=-r/2 +q=$.ar().dc() +q.fV(0,s,r+3.5) +q.ds(0,s,r+1) +q.avs(new A.j(s+1,r),B.WP) +q.ds(0,s+3.5,r) +s=new Float64Array(16) +p=new A.c5(s) +p.fO() +p.uU(1.5707963267948966) +for(o=0;o<4;++o){a.ey(q,n) +a.ah(0,s)}a.jV(B.ber,B.bbx,n) +a.jV(B.bep,B.bbw,n) +a.jV(B.beq,B.bbk,n) +a.de(0)}, +hC(a){return!a.b.l(0,this.b)}} +A.Co.prototype={ +ghp(){var s=this.c,r=this.a.a +s=B.fu.l(0,r)?B.Za:B.Za.bu(r) +return s}, +gYe(){var s=this.f,r=this.a.a +s=B.fu.l(0,r)?B.Z9:B.Z9.bu(r) +return s}, +gaCk(){var s=B.bq2.bu(this.b) +return s}, +gacM(){var s=this.x,r=this.a.a +s=B.fu.l(0,r)?B.Ze:B.Ze.bu(r) +return s}, +f3(a){var s=this,r=s.a,q=r.a,p=q instanceof A.ez?q.f3(a):q,o=r.b +if(o instanceof A.ez)o=o.f3(a) +r=p.l(0,q)&&o.l(0,B.ht)?r:new A.ajy(p,o) +return new A.Co(r,A.yp(s.b,a),A.Om(s.c,a),A.Om(s.d,a),A.Om(s.e,a),A.Om(s.f,a),A.Om(s.r,a),A.Om(s.w,a),A.Om(s.x,a),A.Om(s.y,a))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.az(b)!==A.I(r))return!1 +if(b instanceof A.Co)if(b.a.l(0,r.a))if(J.q(b.b,r.b))s=!0 +else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){var s=this +return A.ad(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.ajy.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.ajy&&b.a.l(0,s.a)&&b.b.l(0,s.b)}, +gv(a){return A.ad(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.aMX.prototype={} +A.arU.prototype={ +q(a){var s=null +return new A.afh(this,A.DA(this.d,A.cGg(s,this.c.gkf(),s,s,s,s,s,s,s),s),s)}} +A.afh.prototype={ +ed(a){return!this.f.c.l(0,a.f.c)}} +A.Qf.prototype={ +gkf(){var s=this.b +return s==null?this.w.b:s}, +gzO(){var s=this.c +return s==null?this.w.c:s}, +gqH(){var s=null,r=this.d +if(r==null){r=this.w.r +r=new A.bXm(r.a,r.b,B.bAN,this.gkf(),s,s,s,s,s,s,s,s)}return r}, +gBy(){var s=this.e +return s==null?this.w.d:s}, +gAj(){var s=this.f +return s==null?this.w.e:s}, +gFs(){var s=this.r +return s==null?!1:s}, +f3(a){var s,r=this,q=new A.bbe(a),p=r.gyl(),o=q.$1(r.b),n=q.$1(r.c),m=r.d +m=m==null?null:m.f3(a) +s=q.$1(r.e) +q=q.$1(r.f) +r.gFs() +return A.d3X(p,o,n,m,s,q,!1,r.w.bGh(a,r.d==null))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.az(b)!==A.I(r))return!1 +if(b instanceof A.Qf)if(b.gyl()==r.gyl())if(b.gkf().l(0,r.gkf()))if(b.gzO().l(0,r.gzO()))if(b.gqH().l(0,r.gqH()))if(b.gBy().l(0,r.gBy()))if(b.gAj().l(0,r.gAj())){b.gFs() +r.gFs() +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.gyl(),q=s.gkf(),p=s.gzO(),o=s.gqH(),n=s.gBy(),m=s.gAj() +s.gFs() +return A.ad(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.bbe.prototype={ +$1(a){return A.yp(a,this.a)}, +$S:269} +A.a6h.prototype={ +f3(a){var s=this,r=new A.buI(a),q=s.gyl(),p=r.$1(s.gkf()),o=r.$1(s.gzO()),n=s.gqH() +n=n==null?null:n.f3(a) +return new A.a6h(q,p,o,n,r.$1(s.gBy()),r.$1(s.gAj()),s.gFs())}, +gyl(){return this.a}, +gkf(){return this.b}, +gzO(){return this.c}, +gqH(){return this.d}, +gBy(){return this.e}, +gAj(){return this.f}, +gFs(){return this.r}} +A.buI.prototype={ +$1(a){return A.yp(a,this.a)}, +$S:269} +A.aN_.prototype={ +bGh(a,b){var s,r,q=this,p=new A.bWA(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.ez)r=r.f3(a) +s=s.b +s=new A.aMY(r,s instanceof A.ez?s.f3(a):s)}return new A.aN_(q.a,o,n,m,p,!1,s)}} +A.bWA.prototype={ +$1(a){return a instanceof A.ez?a.f3(this.a):a}, +$S:287} +A.aMY.prototype={} +A.bXm.prototype={ +ghp(){return A.Co.prototype.ghp.call(this).bu(this.z)}, +gYe(){return A.Co.prototype.gYe.call(this).bu(this.z)}, +gacM(){return A.Co.prototype.gacM.call(this).bu(this.z)}} +A.aMZ.prototype={} +A.bbf.prototype={ +aI(a,b){var s,r,q,p,o,n=b.giu()/2,m=A.jq(b,new A.bb(n,n)) +for(s=0;s<3;++s){r=B.aGV[s] +n=m.eD(r.b) +q=$.ar().aP() +q.sa6(0,r.a) +p=r.c +p=p>0?p*0.57735+0.5:0 +q.sH6(new A.zi(r.e,p)) +a.dh(n,q)}n=m.fH(0.5) +p=$.ar() +o=p.aP() +o.sa6(0,B.mL) +a.dh(n,o) +p=p.aP() +p.sa6(0,this.a) +a.dh(m,p)}} +A.abq.prototype={ +bk2(a){this.a.toString +this.C(new A.bN3(this,a))}, +at5(a){var s=this.a +switch(s.c){case!1:s.d.$1(!0) +break +case!0:s=s.d +s.$1(!1) +break +case null:case void 0:s.d.$1(!1) +break}this.c.gai().IJ(B.xS)}, +bk0(){return this.at5(null)}, +at6(a){if(this.WH$!=null)this.C(new A.bN5(this))}, +bk4(){return this.at6(null)}, +bk_(a){if(a!==this.azy$)this.C(new A.bN0(this,a))}} +A.bN3.prototype={ +$0(){this.a.WH$=this.b.c}, +$S:0} +A.bN5.prototype={ +$0(){this.a.WH$=null}, +$S:0} +A.bN0.prototype={ +$0(){this.a.azy$=this.b}, +$S:0} +A.aGO.prototype={ +sFe(a){if(J.q(this.a,a))return +this.a=a +this.ab()}, +sXt(a){if(J.q(this.b,a))return +this.b=a +this.ab()}, +suv(a){if(a.l(0,this.c))return +this.c=a +this.ab()}, +sWe(a){if(J.q(a,this.d))return +this.d=a +this.ab()}, +sGR(a){if(a===this.e)return +this.e=a +this.ab()}, +sXA(a){if(a===this.f)return +this.f=a +this.ab()}, +hC(a){return!0}, +Cp(a){return null}, +gDH(){return null}, +IS(a){return!1}, +k(a){return"#"+A.bq(this)}} +A.cqz.prototype={ +$0(){return null}, +$S:1008} +A.coa.prototype={ +$0(){var s=self,r=s.window.navigator.platform.toLowerCase() +if(B.c.aC(r,"mac"))return B.cL +if(B.c.aC(r,"win"))return B.fj +if(B.c.p(r,"iphone")||B.c.p(r,"ipad")||B.c.p(r,"ipod"))return B.aM +if(B.c.p(r,"android"))return B.b4 +if(s.window.matchMedia("only screen and (pointer: fine)").matches)return B.fi +return B.b4}, +$S:1017} +A.G8.prototype={ +P_(a,b){var s=A.p7.prototype.gj.call(this,0) +s.toString +return J.cEB(s)}, +k(a){return this.P_(0,B.c0)}} +A.QP.prototype={} +A.atz.prototype={} +A.atx.prototype={} +A.dl.prototype={ +bvC(){var s,r,q,p,o,n,m,l=this.a +if(t.vp.b(l)){s=l.grR(l) +r=l.k(0) +if(typeof s=="string"&&s!==r){q=r.length +p=J.ao(s) +if(q>p.gA(s)){o=B.c.na(r,s) +if(o===q-p.gA(s)&&o>2&&B.c.R(r,o-2,o)===": "){n=B.c.R(r,0,o-2) +m=B.c.c2(n," Failed assertion:") +if(m>=0)n=B.c.R(n,0,m)+"\n"+B.c.b0(n,m+1) +l=p.ZU(s)+"\n"+n}else l=null}else l=null}else l=null +if(l==null)l=r}else if(!(typeof l=="string"))l=t.Cr.b(l)||t.VI.b(l)?J.cw(l):" "+A.r(l) +l=B.c.ZU(l) +return l.length===0?" ":l}, +gaNB(){return A.d4r(new A.biw(this).$0(),!0,B.tS)}, +hL(){return"Exception caught by "+this.c}, +k(a){A.di_(null,B.ahb,this) +return""}} +A.biw.prototype={ +$0(){return J.d1u(this.a.bvC().split("\n")[0])}, +$S:18} +A.tT.prototype={ +grR(a){return this.k(0)}, +hL(){return"FlutterError"}, +k(a){var s,r,q=new A.cv(this.a,t.ow) +if(!q.gad(0)){s=q.ga2(0) +r=J.er(s) +s=A.p7.prototype.gj.call(r,s) +s.toString +s=J.cEB(s)}else s="FlutterError" +return s}, +$iHf:1} +A.bix.prototype={ +$1(a){return A.cJ(a)}, +$S:1025} +A.biz.prototype={ +$1(a){return a+1}, +$S:36} +A.biA.prototype={ +$1(a){return a+1}, +$S:36} +A.crF.prototype={ +$1(a){return B.c.p(a,"StackTrace.current")||B.c.p(a,"dart-sdk/lib/_internal")||B.c.p(a,"dart:sdk_internal")}, +$S:20} +A.aPh.prototype={} +A.aPj.prototype={} +A.aPi.prototype={} +A.ao3.prototype={ +nP(){}, +Cr(){}, +bAo(a){var s;++this.c +s=a.$0() +s.j6(new A.b6h(this)) +return s}, +adR(){}, +rV(){$.biy=0 +return A.dm(null,t.H)}, +k(a){return""}} +A.b6h.prototype={ +$0(){var s,r,q,p=this.a +if(--p.c<=0)try{p.aSU() +if(p.RG$.c!==0)p.a2J()}catch(q){s=A.ag(q) +r=A.aD(q) +p=A.cJ("while handling pending events") +A.fs(new A.dl(s,r,"foundation",p,null,!1))}}, +$S:13} +A.aC.prototype={} +A.dq.prototype={} +A.ka.prototype={ +a3(a,b){var s,r,q,p,o=this +if(o.gja(o)===o.ghE().length){s=t.Nw +if(o.gja(o)===0)o.shE(A.aK(1,null,!1,s)) +else{r=A.aK(o.ghE().length*2,null,!1,s) +for(q=0;q0){r.ghE()[s]=null +r.stL(r.gtL()+1)}else r.a5p(s) +break}}, +m(){this.shE($.ae()) +this.sja(0,0)}, +ab(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +if(f.gja(f)===0)return +f.srd(f.grd()+1) +p=f.gja(f) +for(s=0;s0){l=f.gja(f)-f.gtL() +if(l*2<=f.ghE().length){k=A.aK(l,null,!1,t.Nw) +for(j=0,s=0;s#"+A.bq(this)+"("+A.r(this.gj(this))+")"}, +$idq:1} +A.Qs.prototype={ +H(){return"DiagnosticLevel."+this.b}} +A.vG.prototype={ +H(){return"DiagnosticsTreeStyle."+this.b}} +A.c8o.prototype={} +A.jI.prototype={ +P_(a,b){return this.fP(0)}, +k(a){return this.P_(0,B.c0)}} +A.p7.prototype={ +gj(a){this.b9K() +return this.at}, +b9K(){var s,r,q=this +if(q.ax)return +q.ax=!0 +try{q.at=q.cx.$0()}catch(r){s=A.ag(r) +q.ay=s +q.at=null}}} +A.Ii.prototype={} +A.asC.prototype={} +A.bh.prototype={ +hL(){return"#"+A.bq(this)}, +P_(a,b){var s=this.hL() +return s}, +k(a){return this.P_(0,B.c0)}} +A.asB.prototype={ +hL(){return"#"+A.bq(this)}} +A.tL.prototype={ +k(a){return this.aFq(B.tS).fP(0)}, +hL(){return"#"+A.bq(this)}, +bGQ(a,b){return A.cwc(a,b,this)}, +aFq(a){return this.bGQ(null,a)}} +A.asD.prototype={} +A.aNw.prototype={} +A.il.prototype={} +A.na.prototype={} +A.qR.prototype={ +k(a){return"[#"+A.bq(this)+"]"}} +A.ca.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return A.z(this).h("ca").b(b)&&J.q(b.a,this.a)}, +gv(a){return A.ad(A.I(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)}, +k(a){var s=A.z(this),r=s.h("ca.T"),q=this.a,p=A.c6(r)===B.yk?"<'"+A.r(q)+"'>":"<"+A.r(q)+">" +if(A.I(this)===A.c6(s.h("ca")))return"["+p+"]" +return"["+A.c6(r).k(0)+" "+p+"]"}} +A.cAj.prototype={} +A.ze.prototype={} +A.kZ.prototype={} +A.aQU.prototype={ +H(){return"_LicenseEntryWithLineBreaksParserState."+this.b}} +A.a4V.prototype={ +gbDs(){var s,r,q,p,o,n,m,l,k,j,i,h,g={} +g.a=g.b=0 +g.c=null +s=A.a([],t.s) +r=A.a([],t.lt) +q=new A.boQ(g,this,s) +p=new A.boR(g,s) +for(o=this.b,n=o.length,m=n-1,l=0,k=0,j=B.k4,i=0;il){r.push(p.$0()) +g.c=null}if(g.c==null)if(k>10)g.c=-1 +else g.c=B.d.aD(k,3) +j=B.a_z +break c$1}break c$0 +case 2:switch(o[i]){case"\n":q.$0() +g.b=g.a+1 +l=k +k=0 +j=B.k4 +break +case"\f":q.$0() +r.push(p.$0()) +g.c=null +g.b=g.a+1 +l=0 +k=0 +j=B.k4 +break +default:j=B.a_z}break c$0}i=++g.a}switch(j.a){case 0:if(s.length!==0)r.push(p.$0()) +break +case 1:q.$0() +r.push(p.$0()) +break}return r}} +A.boQ.prototype={ +$0(){var s=this.a +this.c.push(B.c.R(this.b.b,s.b,s.a))}, +$S:0} +A.boR.prototype={ +$0(){var s=this.b,r=B.b.bQ(s," "),q=this.a.c +q.toString +B.b.V(s) +return new A.ze(r,q)}, +$S:1036} +A.boT.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k,j +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=$.boS,o=p.length,n=q.a,m=n.a,l=0 +case 2:if(!(l"))}, +gad(a){return this.a.length===0}, +gcU(a){return this.a.length!==0}, +ib(a,b){var s=this.a,r=A.X(s) +return b?A.a(s.slice(0),r):J.n8(s.slice(0),r.c)}, +eO(a){return this.ib(0,!0)}} +A.z_.prototype={ +B(a,b){var s=this.a,r=s.i(0,b) +s.n(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.n(0,b,r-1) +return!0}, +p(a,b){return this.a.aB(0,b)}, +gaz(a){var s=this.a +return A.jL(s,s.r,A.z(s).c)}, +gad(a){return this.a.a===0}, +gcU(a){return this.a.a!==0}} +A.Tv.prototype={ +t0(a,b,c){var s=this.a,r=s==null?$.amn():s,q=r.uO(0,0,b,A.ef(b),c) +if(q===s)return this +s=this.$ti +return new A.Tv(q,s.h("@<1>").a1(s.y[1]).h("Tv<1,2>"))}, +i(a,b){var s=this.a +if(s==null)return null +return s.Io(0,0,b,J.ab(b))}} +A.cma.prototype={} +A.aPt.prototype={ +uO(a,b,c,d,e){var s,r,q,p,o=B.d.Bg(d,b)&31,n=this.a,m=n[o] +if(m==null)m=$.amn() +s=m.uO(0,b+5,c,d,e) +if(s===m)n=this +else{r=n.length +q=A.aK(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.d1h(p,a5+5,a6,a7,a8) +if(o===p)return c +a2=a.length +n=A.aK(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.b7w(a5) +a1.a[a]=$.amn().uO(0,a5+5,a6,a7,a8) +return a1}else{h=2*s +g=2*i +f=A.aK(g+2,b,!1,t.X) +for(a=c.b,e=0;e>>0,f)}}}, +Io(a,b,c,d){var s,r,q,p,o=1<<(B.d.Bg(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.Io(0,b+5,c,d) +if(J.q(c,q))return p +return null}, +b7w(a){var s,r,q,p,o,n,m,l=A.aK(32,null,!1,t.X) +for(s=this.a,r=a+5,q=this.b,p=0,o=0;o<32;++o)if((B.d.Bg(s,o)&1)!==0){n=q[p] +m=p+1 +if(n==null)l[o]=q[m] +else l[o]=$.amn().uO(0,r,n,J.ab(n),q[m]) +p+=2}return new A.aPt(l)}} +A.af1.prototype={ +uO(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.anD(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.aK(q,null,!1,t.X) +for(o=0;o>>0,k).uO(0,b,c,d,e)}, +Io(a,b,c,d){var s=this.anD(c) +return s<0?null:this.b[s+1]}, +anD(a){var s,r,q=this.b,p=q.length +for(s=J.lm(a),r=0;r=s.a.length)s.a5w(q) +B.p.cV(s.a,s.b,q,a) +s.b+=r}, +KY(a,b,c){var s=this,r=c==null?s.e.length:c,q=s.b+(r-b) +if(q>=s.a.length)s.a5w(q) +B.p.cV(s.a,s.b,q,a) +s.b=q}, +bhz(a){return this.KY(a,0,null)}, +a5w(a){var s=this.a,r=s.length,q=a==null?0:a,p=Math.max(q,r*2),o=new Uint8Array(p) +B.p.cV(o,0,r,s) +this.a=o}, +bg_(){return this.a5w(null)}, +tN(a){var s=B.d.M(this.b,a) +if(s!==0)this.KY($.cYJ(),0,a-s)}, +yP(){var s,r=this +if(r.c)throw A.d(A.a0("done() must not be called more than once on the same "+A.I(r).k(0)+".")) +s=A.fe(r.a.buffer,0,r.b) +r.a=new Uint8Array(0) +r.c=!0 +return s}} +A.a7J.prototype={ +tg(a){return this.a.getUint8(this.b++)}, +a_C(a){var s=this.b,r=$.k5() +B.hV.aeK(this.a,s,r)}, +xd(a){var s=this.a,r=A.dF(s.buffer,s.byteOffset+this.b,a) +this.b+=a +return r}, +a_D(a){var s +this.tN(8) +s=this.a +B.RS.avv(s.buffer,s.byteOffset+this.b,a)}, +tN(a){var s=this.b,r=B.d.M(s,a) +if(r!==0)this.b=s+(a-r)}} +A.ux.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.ux&&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}, +k(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.bH1.prototype={ +$1(a){return a.length!==0}, +$S:20} +A.dc.prototype={ +BF(a,b){return new A.ak($.at,this.$ti.h("ak<1>"))}, +mY(a){return this.BF(a,null)}, +ki(a,b,c){var s=a.$1(this.a) +if(c.h("a8<0>").b(s))return s +return new A.dc(s,c.h("dc<0>"))}, +bf(a,b){return this.ki(a,null,b)}, +j6(a){var s,r,q,p,o,n=this +try{s=a.$0() +if(t.L0.b(s)){p=s.bf(new A.bJK(n),n.$ti.c) +return p}return n}catch(o){r=A.ag(o) +q=A.aD(o) +p=A.pd(r,q,n.$ti.c) +return p}}, +$ia8:1} +A.bJK.prototype={ +$1(a){return this.a.a}, +$S(){return this.a.$ti.h("1(@)")}} +A.auL.prototype={ +H(){return"GestureDisposition."+this.b}} +A.eT.prototype={} +A.Rh.prototype={ +a5(a){this.a.ny(this.b,this.c,a)}} +A.Xu.prototype={ +k(a){var s=this,r=s.a +r=r.length===0?""+"":""+new A.O(r,new A.c10(s),A.X(r).h("O<1,f>")).bQ(0,", ") +if(s.b)r+=" [open]" +if(s.c)r+=" [held]" +if(s.d)r+=" [hasPendingSweep]" +return r.charCodeAt(0)==0?r:r}} +A.c10.prototype={ +$1(a){if(a===this.a.e)return a.k(0)+" (eager winner)" +return a.k(0)}, +$S:1195} +A.bk_.prototype={ +rh(a,b,c){this.a.cP(0,b,new A.bk1(this,b)).a.push(c) +return new A.Rh(this,b,c)}, +bqm(a,b){var s=this.a.i(0,b) +if(s==null)return +s.b=!1 +this.ati(b,s)}, +ahM(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.ga2(r).kM(a) +for(s=1;s").a1(q.y[1]),r=new A.c4(J.au(r.a),r.b,q.h("c4<1,2>")),p=n.r,q=q.y[1];r.t();){o=r.a;(o==null?q.a(o):o).bJ4(0,p)}s.V(0) +n.c=B.w +s=n.y +if(s!=null)s.ao(0)}} +A.Rj.prototype={ +b5m(a){var s,r,q,p,o=this +try{o.ez$.L(0,A.dbm(a.a,o.gb_d())) +if(o.c<=0)o.a2W()}catch(q){s=A.ag(q) +r=A.aD(q) +p=A.cJ("while handling a pointer data packet") +A.fs(new A.dl(s,r,"gestures library",p,null,!1))}}, +b_e(a){var s +if($.cf().gis().b.i(0,a)==null)s=null +else{s=$.ec().d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}}return s}, +bpP(a){var s=this.ez$ +if(s.b===s.c&&this.c<=0)A.j8(this.gb1g()) +s.UL(A.cKW(0,0,0,0,0,B.bi,!1,0,a,B.h,1,1,0,0,0,0,0,0,B.w,0))}, +a2W(){for(var s=this.ez$;!s.gad(0);)this.aaS(s.qC())}, +aaS(a){this.gaqR().e3(0) +this.an7(a)}, +an7(a){var s,r,q=this,p=!t.pY.b(a) +if(!p||t.ks.b(a)||t.XA.b(a)||t.w5.b(a)){s=A.Rr() +q.zk(s,a.gb8(a),a.gI6()) +if(!p||t.w5.b(a))q.bk$.n(0,a.gcG(),s) +p=s}else if(t.oN.b(a)||t.Ko.b(a)||t.WQ.b(a)){s=q.bk$.F(0,a.gcG()) +p=s}else p=a.gWd()||t.DB.b(a)?q.bk$.i(0,a.gcG()):null +if(p!=null||t.ge.b(a)||t.PB.b(a)){r=q.db$ +r.toString +r.bHK(a,t.n2.b(a)?null:p) +q.aOA(0,a,p)}}, +zk(a,b,c){a.B(0,new A.oa(this,t.AL))}, +bu2(a,b,c){var s,r,q,p,o,n,m,l,k,j,i="gesture library" +if(c==null){try{this.dA$.aFe(b)}catch(p){s=A.ag(p) +r=A.aD(p) +A.fs(A.d7a(A.cJ("while dispatching a non-hit-tested pointer event"),b,s,null,new A.bk3(b),i,r))}return}for(n=c.a,m=n.length,l=0;lr.CW){r.dy=B.qF +r.a5(B.cD)}else if(a.gw2().gw7()>A.r_(a.gel(a),r.b))r.a5(B.b6) +if(s>r.CW&&r.dy===B.a_t){r.dy=B.qF +if(r.at!=null)r.fu("onStart",new A.bj6(r,s))}}r.J8(a)}, +kM(a){var s=this,r=s.dy +if(r===B.qE)r=s.dy=B.a_t +if(s.at!=null&&r===B.qF)s.fu("onStart",new A.bj4(s))}, +BZ(a){var s=this,r=s.dy,q=r===B.qF||r===B.bzb +if(r===B.qE){s.a5(B.b6) +return}if(q&&s.ch!=null)if(s.ch!=null)s.fu("onEnd",new A.bj5(s)) +s.dy=B.yM}, +kg(a){this.l_(a) +this.BZ(a)}} +A.bj6.prototype={ +$0(){var s=this.a,r=s.at +r.toString +s=s.db +s===$&&A.b() +return r.$1(new A.J0(s.b))}, +$S:0} +A.bj4.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.J0(s.b))}, +$S:0} +A.bj5.prototype={ +$0(){var s=this.a,r=s.ch +r.toString +s=s.db +s===$&&A.b() +return r.$1(new A.J0(s.b))}, +$S:0} +A.a1K.prototype={ +gv(a){return A.ad(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.az(b)!==A.I(this))return!1 +return b instanceof A.a1K&&b.a==this.a}, +k(a){return"DeviceGestureSettings(touchSlop: "+A.r(this.a)+")"}} +A.oa.prototype={ +k(a){return"#"+A.bq(this)+"("+this.a.k(0)+")"}} +A.YX.prototype={} +A.ag_.prototype={ +hc(a,b){return this.a.ky(b)}} +A.XZ.prototype={ +hc(a,b){var s,r,q,p,o=new Float64Array(16),n=new A.c5(o) +n.T(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.z1.prototype={ +b2K(){var s,r,q,p,o=this.c +if(o.length===0)return +s=this.b +r=B.b.gP(s) +for(q=o.length,p=0;p":B.b.bQ(s,", "))+")"}} +A.Sr.prototype={} +A.E4.prototype={} +A.a5a.prototype={} +A.Ss.prototype={} +A.mh.prototype={ +mk(a){var s,r=this +switch(a.gjf(a)){case 1:if(r.ok==null&&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.E_(a)}, +a9v(){var s,r=this +r.a5(B.cD) +r.k2=!0 +s=r.CW +s.toString +r.ah3(s) +r.aY4()}, +aAl(a){var s,r=this +if(!a.gxx()){if(t.pY.b(a)){s=new A.le(a.gel(a),A.aK(20,null,!1,t.av)) +r.dd=s +s.tW(a.gk7(a),a.gev())}if(t.n2.b(a)){s=r.dd +s.toString +s.tW(a.gk7(a),a.gev())}}if(t.oN.b(a)){if(r.k2)r.aY2(a) +else r.a5(B.b6) +r.a4j()}else if(t.Ko.b(a)){r.ajt() +r.a4j()}else if(t.pY.b(a)){r.k3=new A.l2(a.gev(),a.gb8(a)) +r.k4=a.gjf(a) +r.aY1(a)}else if(t.n2.b(a))if(a.gjf(a)!==r.k4&&!r.k2){r.a5(B.b6) +s=r.CW +s.toString +r.l_(s)}else if(r.k2)r.aY3(a)}, +aY1(a){var s=this,r=s.k3.b +s.e.i(0,a.gcG()).toString +switch(s.k4){case 1:if(s.ok!=null)s.fu("onLongPressDown",new A.bpA(s,new A.Sr(r))) +break +case 2:break +case 4:break}}, +ajt(){var s,r=this +if(r.ch===B.nC)switch(r.k4){case 1:s=r.p1 +if(s!=null)r.fu("onLongPressCancel",s) +break +case 2:break +case 4:break}}, +aY4(){var s,r,q=this +switch(q.k4){case 1:if(q.p3!=null){s=q.k3 +r=s.b +s=s.a +q.fu("onLongPressStart",new A.bpD(q,new A.E4(r,s)))}s=q.p2 +if(s!=null)q.fu("onLongPress",s) +break +case 2:break +case 4:break}}, +aY3(a){var s=this,r=a.gb8(a),q=a.gev(),p=a.gb8(a).W(0,s.k3.b) +a.gev().W(0,s.k3.a) +switch(s.k4){case 1:if(s.p4!=null)s.fu("onLongPressMoveUpdate",new A.bpC(s,new A.a5a(r,q,p))) +break +case 2:break +case 4:break}}, +aY2(a){var s,r=this,q=r.dd.IB(),p=q==null?B.es:new A.ks(q.a) +a.gb8(a) +s=a.gev() +r.dd=null +switch(r.k4){case 1:if(r.RG!=null)r.fu("onLongPressEnd",new A.bpB(r,new A.Ss(s,p))) +s=r.R8 +if(s!=null)r.fu("onLongPressUp",s) +break +case 2:break +case 4:break}}, +a4j(){var s=this +s.k2=!1 +s.dd=s.k4=s.k3=null}, +a5(a){var s=this +if(a===B.b6)if(s.k2)s.a4j() +else s.ajt() +s.agW(a)}, +kM(a){}} +A.bpA.prototype={ +$0(){return this.a.ok.$1(this.b)}, +$S:0} +A.bpD.prototype={ +$0(){return this.a.p3.$1(this.b)}, +$S:0} +A.bpC.prototype={ +$0(){return this.a.p4.$1(this.b)}, +$S:0} +A.bpB.prototype={ +$0(){return this.a.RG.$1(this.b)}, +$S:0} +A.Bq.prototype={ +i(a,b){return this.c[b+this.a]}, +n(a,b,c){this.c[b+this.a]=c}, +X(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.u0(A.R(new A.O(s,new A.by7(),r),!0,r.h("aa.E")),"[","]") +r=this.b +r===$&&A.b() +return"PolynomialFit("+q+", confidence: "+B.e.aZ(r,3)+")"}} +A.by7.prototype={ +$1(a){return B.e.adH(a,3)}, +$S:1222} +A.awO.prototype={ +DL(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.by6(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.Bq(c*a5,a5,q).X(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.dy +if(q==null)q=8000 +p=A.Z(r,-q,q) +return new A.mY(new A.ks(new A.j(0,p)),p)}, +a3P(a,b){var s=this.k4 +s===$&&A.b() +return Math.abs(s)>A.r_(a,this.b)}, +K2(a){return new A.j(0,a.b)}, +K7(a){return a.b}} +A.qc.prototype={ +a2c(a,b){var s,r,q,p,o=this,n=o.dx +if(n==null)n=50 +s=o.db +if(s==null)s=A.r_(b,o.b) +r=a.a.a +if(!(Math.abs(r)>n&&Math.abs(a.d.a)>s))return null +q=o.dy +if(q==null)q=8000 +p=A.Z(r,-q,q) +return new A.mY(new A.ks(new A.j(p,0)),p)}, +a3P(a,b){var s=this.k4 +s===$&&A.b() +return Math.abs(s)>A.r_(a,this.b)}, +K2(a){return new A.j(a.a,0)}, +K7(a){return a.a}} +A.pm.prototype={ +a2c(a,b){var s,r,q,p,o=this,n=o.dx +if(n==null)n=50 +s=o.db +if(s==null)s=A.r_(b,o.b) +r=a.a +if(!(r.gw7()>n*n&&a.d.gw7()>s*s))return null +q=o.dx +if(q==null)q=50 +p=o.dy +if(p==null)p=8000 +return new A.mY(new A.ks(r).bqa(q,p),null)}, +a3P(a,b){var s=this.k4 +s===$&&A.b() +return Math.abs(s)>A.crw(a,this.b)}, +K2(a){return a}, +K7(a){return null}} +A.zs.prototype={ +m(){var s=this.w +if(s!=null)s.a.ny(s.b,s.c,B.b6) +this.w=null}} +A.a5Y.prototype={ +lA(a){var s=this,r=s.VV(a),q=s.r +q.toString +q.n(0,a.gcG(),r) +$.ii.dA$.bmi(a.gcG(),s.gaoY()) +r.w=$.ii.e8$.rh(0,a.gcG(),s)}, +bag(a){var s,r,q,p=this.r +p.toString +p=p.i(0,a.gcG()) +p.toString +if(t.n2.b(a)){if(!a.gxx())p.c.tW(a.gk7(a),a.gb8(a)) +s=p.e +if(s!=null){p=a.gk7(a) +r=a.gw2() +q=a.gb8(a) +s.cI(0,new A.ro(p,r,null,q,q))}else{s=p.f +s.toString +p.f=s.S(0,a.gw2()) +p.r=a.gk7(a) +p.Vt()}}else if(t.oN.b(a)){if(p.e!=null){s=p.c.PU() +r=p.e +r.toString +p.e=null +r.qn(0,new A.mY(s,null))}else p.r=p.f=null +this.KM(a.gcG())}else if(t.Ko.b(a)){s=p.e +if(s!=null){p.e=null +s.ao(0)}else p.r=p.f=null +this.KM(a.gcG())}}, +kM(a){var s=this.r.i(0,a) +if(s==null)return +s.UB(new A.btG(this,a))}, +bah(a,b){var s,r,q,p,o=this,n=o.r.i(0,b) +n.toString +s=o.f!=null?o.fu("onStart",new A.btF(o,a)):null +if(s!=null){n.e=s +r=n.r +q=n.f +q.toString +p=n.b +n.r=n.f=null +s.cI(0,new A.ro(r,q,null,p,p))}else o.KM(b) +return s}, +kg(a){var s +if(this.r.aB(0,a)){s=this.r.i(0,a) +s.w=s.r=s.f=null +this.KM(a)}}, +KM(a){if(this.r==null)return +$.ii.dA$.adf(a,this.gaoY()) +this.r.F(0,a).m()}, +m(){var s,r=this,q=r.r +q.toString +s=A.z(q).h("bR<1>") +B.b.aE(A.R(new A.bR(q,s),!0,s.h("B.E")),r.gbfE()) +r.r=null +r.QO()}} +A.btG.prototype={ +$1(a){return this.a.bah(a,this.b)}, +$S:512} +A.btF.prototype={ +$0(){return this.a.f.$1(this.b)}, +$S:1232} +A.aQa.prototype={ +Vt(){var s,r=this +if(r.f.gfT()>A.r_(r.d,r.a)){s=r.w +s.a.ny(s.b,s.c,B.cD)}}, +UB(a){a.$1(this.b)}} +A.z6.prototype={ +VV(a){var s=a.gb8(a),r=a.gel(a) +return new A.aQa(this.b,s,new A.le(r,A.aK(20,null,!1,t.av)),r,B.h)}} +A.aPU.prototype={ +Vt(){var s,r=this +if(Math.abs(r.f.a)>A.r_(r.d,r.a)){s=r.w +s.a.ny(s.b,s.c,B.cD)}}, +UB(a){a.$1(this.b)}} +A.avt.prototype={ +VV(a){var s=a.gb8(a),r=a.gel(a) +return new A.aPU(this.b,s,new A.le(r,A.aK(20,null,!1,t.av)),r,B.h)}} +A.aZz.prototype={ +Vt(){var s,r=this +if(Math.abs(r.f.b)>A.r_(r.d,r.a)){s=r.w +s.a.ny(s.b,s.c,B.cD)}}, +UB(a){a.$1(this.b)}} +A.aHy.prototype={ +VV(a){var s=a.gb8(a),r=a.gel(a) +return new A.aZz(this.b,s,new A.le(r,A.aK(20,null,!1,t.av)),r,B.h)}} +A.aea.prototype={ +b_9(){var s,r=this +r.x=null +s=r.y +if(s!=null){s.$1(r.b) +r.y=null}else{s=r.w +s.a.ny(s.b,s.c,B.cD)}}, +alg(){var s=this.x +if(s!=null)s.ao(0) +this.x=null}, +UB(a){if(this.x==null)a.$1(this.b) +else this.y=a}, +Vt(){var s,r=this +if(r.x==null)return +if(r.f.gfT()>A.r_(r.d,r.a)){s=r.w +s.a.ny(s.b,s.c,B.b6) +r.alg()}}, +m(){this.alg() +this.aPc()}} +A.asu.prototype={ +VV(a){var s=a.gb8(a),r=a.gel(a) +r=new A.aea(this.b,s,new A.le(r,A.aK(20,null,!1,t.av)),r,B.h) +r.x=A.d3(this.as,r.gb_8()) +return r}} +A.adG.prototype={ +bcq(){this.a=!0}} +A.Bl.prototype={ +xq(a,b){if(!this.r){this.r=!0 +$.ii.dA$.a7c(this.b,a,b)}}, +l_(a){if(this.r){this.r=!1 +$.ii.dA$.adf(this.b,a)}}, +abv(a,b){return a.gb8(a).W(0,this.d).gfT()<=b}} +A.q4.prototype={ +mk(a){var s,r=this +if(r.y==null)if(r.r==null&&!0)return!1 +s=r.E_(a) +if(!s)r.B0() +return s}, +lA(a){var s=this,r=s.y +if(r!=null)if(!r.abv(a,100))return +else{r=s.y +if(!r.f.a||a.gjf(a)!==r.e){s.B0() +return s.ate(a)}}s.ate(a)}, +ate(a){var s,r=this +r.aso() +s=A.djm(B.CP,$.ii.e8$.rh(0,a.gcG(),r),a,r.b) +r.z.n(0,a.gcG(),s) +s.xq(r.gSQ(),a.geJ(a))}, +bai(a){var s,r=this,q=r.z,p=q.i(0,a.gcG()) +p.toString +if(t.oN.b(a)){s=r.y +if(s==null){if(r.x==null)r.x=A.d3(B.aA,r.gbaj()) +s=p.b +$.ii.e8$.GJ(s) +p.l_(r.gSQ()) +q.F(0,s) +r.ajJ() +r.y=p}else{s=s.c +s.a.ny(s.b,s.c,B.cD) +s=p.c +s.a.ny(s.b,s.c,B.cD) +p.l_(r.gSQ()) +q.F(0,p.b) +q=r.r +if(q!=null)r.fu("onDoubleTap",q) +r.B0()}}else if(t.n2.b(a)){if(!p.abv(a,18))r.KL(p)}else if(t.Ko.b(a))r.KL(p)}, +kM(a){}, +kg(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.KL(q)}, +KL(a){var s,r=this,q=r.z +q.F(0,a.b) +s=a.c +s.a.ny(s.b,s.c,B.b6) +a.l_(r.gSQ()) +s=r.y +if(s!=null)if(a===s)r.B0() +else{r.ajl() +if(q.a===0)r.B0()}}, +m(){this.B0() +this.QO()}, +B0(){var s,r=this +r.aso() +if(r.y!=null){if(r.z.a!==0)r.ajl() +s=r.y +s.toString +r.y=null +r.KL(s) +$.ii.e8$.bFG(0,s.b)}r.ajJ()}, +ajJ(){var s=this.z.gbm(0) +B.b.aE(A.R(s,!0,A.z(s).h("B.E")),this.gbfv())}, +aso(){var s=this.x +if(s!=null){s.ao(0) +this.x=null}}, +ajl(){}} +A.YS.prototype={ +aVt(a,b,c,d){var s=this +s.xq(s.gn7(),a.geJ(a)) +if(d.a>0)s.y=A.d3(d,new A.chO(s,a))}, +jB(a){var s=this +if(t.n2.b(a))if(!s.abv(a,A.r_(a.gel(a),s.a)))s.ao(0) +else s.z=new A.l2(a.gev(),a.gb8(a)) +else if(t.Ko.b(a))s.ao(0) +else if(t.oN.b(a)){s.l_(s.gn7()) +s.Q=new A.l2(a.gev(),a.gb8(a)) +s.ajk()}}, +l_(a){var s=this.y +if(s!=null)s.ao(0) +this.y=null +this.ahK(a)}, +aEz(){var s=this +s.l_(s.gn7()) +s.w.akQ(s.b)}, +ao(a){var s +if(this.x)this.aEz() +else{s=this.c +s.a.ny(s.b,s.c,B.b6)}}, +ajk(){var s,r=this +if(r.x&&r.Q!=null){s=r.Q +s.toString +r.w.b_E(r.b,s)}}} +A.chO.prototype={ +$0(){var s=this.a +s.y=null +s.w.b_C(this.b.gcG(),s.z)}, +$S:0} +A.zt.prototype={ +lA(a){var s=this,r=a.gcG(),q=s.y +s.Q.n(0,r,A.djl(a,s,s.b,q)) +if(s.f!=null)s.fu("onTapDown",new A.bu7(s,a))}, +kM(a){var s=this.Q.i(0,a) +s.x=!0 +s.ajk()}, +kg(a){this.Q.i(0,a).aEz()}, +akQ(a){var s=this +s.Q.F(0,a) +if(s.x!=null)s.fu("onTapCancel",new A.bu3(s,a))}, +b_E(a,b){var s=this +s.Q.F(0,a) +if(s.r!=null)s.fu("onTapUp",new A.bu5(s,a,b)) +if(s.w!=null)s.fu("onTap",new A.bu6(s,a))}, +b_C(a,b){if(this.z!=null)this.fu("onLongTapDown",new A.bu4(this,a,b))}, +m(){var s,r,q,p,o,n=A.R(this.Q.gbm(0),!0,t.Oz) +for(s=n.length,r=0;r")),r=r.c;q.t();){p=q.d +if(p==null)p=r.a(p) +o=$.ii.dA$ +n=k.gn7() +o=o.a +m=o.i(0,p) +m.toString +l=J.cz(m) +l.F(m,n) +if(l.gad(m))o.F(0,p)}s.V(0) +k.QO()}, +aVQ(a){var s=this.w +if(s!=null)return s.rh(0,a,this) +return $.ii.e8$.rh(0,a,this)}, +xq(a,b){var s=this +$.ii.dA$.a7c(a,s.gn7(),b) +s.r.B(0,a) +s.f.n(0,a,s.aVQ(a))}, +l_(a){var s=this.r +if(s.p(0,a)){$.ii.dA$.adf(a,this.gn7()) +s.F(0,a) +if(s.a===0)this.BZ(a)}}, +J8(a){if(t.oN.b(a)||t.Ko.b(a)||t.WQ.b(a))this.l_(a.gcG())}} +A.a3G.prototype={ +H(){return"GestureRecognizerState."+this.b}} +A.TI.prototype={ +lA(a){var s=this +s.E0(a) +if(s.ch===B.f2){s.ch=B.nC +s.CW=a.gcG() +s.cx=new A.l2(a.gev(),a.gb8(a)) +s.db=A.d3(s.at,new A.byh(s,a))}}, +Cl(a){if(!this.cy)this.agV(a)}, +jB(a){var s,r,q,p=this +if(p.ch===B.nC&&a.gcG()===p.CW){if(!p.cy)s=p.am7(a)>18 +else s=!1 +if(p.cy){r=p.ay +q=r!=null&&p.am7(a)>r}else q=!1 +if(t.n2.b(a))r=s||q +else r=!1 +if(r){p.a5(B.b6) +r=p.CW +r.toString +p.l_(r)}else p.aAl(a)}p.J8(a)}, +a9v(){}, +kM(a){if(a===this.CW){this.q1() +this.cy=!0}}, +kg(a){var s=this +if(a===s.CW&&s.ch===B.nC){s.q1() +s.ch=B.ake}}, +BZ(a){var s=this +s.q1() +s.ch=B.f2 +s.cx=null +s.cy=!1}, +m(){this.q1() +this.lW()}, +q1(){var s=this.db +if(s!=null){s.ao(0) +this.db=null}}, +am7(a){return a.gb8(a).W(0,this.cx.b).gfT()}} +A.byh.prototype={ +$0(){this.a.a9v() +return null}, +$S:0} +A.l2.prototype={ +S(a,b){return new A.l2(this.a.S(0,b.a),this.b.S(0,b.b))}, +W(a,b){return new A.l2(this.a.W(0,b.a),this.b.W(0,b.b))}, +k(a){return"OffsetPair(local: "+this.a.k(0)+", global: "+this.b.k(0)+")"}} +A.aPD.prototype={} +A.Ys.prototype={ +H(){return"_ScaleState."+this.b}} +A.NW.prototype={ +gbww(){var s=this +if(s.a.cy)return s.b +return s.b.S(0,s.c)}, +gkE(a){var s,r=this,q=r.a +if(q.cy){s=r.c +q=q.db +return r.d*Math.exp(s.a*q.a+s.b*q.b)}return r.d}, +k(a){var s=this +return"_PointerPanZoomData(parent: "+s.a.k(0)+", _position: "+s.b.k(0)+", _pan: "+s.c.k(0)+", _scale: "+A.r(s.d)+", _rotation: "+s.e+")"}} +A.a8P.prototype={ +k(a){return"ScaleStartDetails(focalPoint: "+this.a.k(0)+", localFocalPoint: "+this.b.k(0)+", pointersCount: "+this.c+")"}} +A.a8Q.prototype={ +k(a){var s=this +return"ScaleUpdateDetails(focalPoint: "+s.b.k(0)+", localFocalPoint: "+s.c.k(0)+", scale: "+A.r(s.d)+", horizontalScale: "+A.r(s.e)+", verticalScale: "+A.r(s.f)+", rotation: "+A.r(s.r)+", pointerCount: "+s.w+", focalPointDelta: "+s.a.k(0)+", sourceTimeStamp: "+A.r(s.x)+")"}} +A.UI.prototype={ +k(a){return"ScaleEndDetails(velocity: "+this.a.k(0)+", scaleVelocity: "+A.r(this.b)+", pointerCount: "+this.c+")"}} +A.aQX.prototype={} +A.ul.prototype={ +gKF(){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}, +gF0(){var s,r,q,p=this.gKF() +for(s=this.R8.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +p*=(q==null?r.a(q):q).gkE(0)/this.RG}return p}, +gb7f(){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.gbm(0),s=A.z(o),s=s.h("@<1>").a1(s.y[1]),o=new A.c4(J.au(o.a),o.b,s.h("c4<1,2>")),s=s.y[1];o.t();){q=o.a +r*=(q==null?s.a(q):q).gkE(0)/p.RG}return r}, +gbln(){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.gbm(0),s=A.z(o),s=s.h("@<1>").a1(s.y[1]),o=new A.c4(J.au(o.a),o.b,s.h("c4<1,2>")),s=s.y[1];o.t();){q=o.a +r*=(q==null?s.a(q):q).gkE(0)/p.RG}return r}, +aYS(){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.gbm(0),s=A.z(m),s=s.h("@<1>").a1(s.y[1]),m=new A.c4(J.au(m.a),m.b,s.h("c4<1,2>")),s=s.y[1];m.t();){r=m.a +o+=(r==null?s.a(r):r).e}return o-n.rx}, +lA(a){var s=this +s.E0(a) +s.p2.n(0,a.gcG(),new A.le(a.gel(a),A.aK(20,null,!1,t.av))) +s.ry=a.gk7(a) +if(s.CW===B.mp){s.CW=B.mq +s.k1=s.id=s.go=s.fy=s.fx=s.fr=0}}, +aBo(a){return!0}, +UH(a){var s=this +s.agB(a) +s.xq(a.gcG(),a.geJ(a)) +s.p2.n(0,a.gcG(),new A.le(a.gel(a),A.aK(20,null,!1,t.av))) +s.ry=a.gk7(a) +if(s.CW===B.mp){s.CW=B.mq +s.RG=1 +s.rx=0}}, +jB(a){var s,r,q,p,o,n,m=this +if(t.n2.b(a)){s=m.p2.i(0,a.gcG()) +s.toString +if(!a.gxx())s.tW(a.gk7(a),a.gb8(a)) +m.ok.n(0,a.gcG(),a.gb8(a)) +m.cx=a.geJ(a) +r=!1 +q=!0}else if(t.pY.b(a)){m.ok.n(0,a.gcG(),a.gb8(a)) +m.p1.push(a.gcG()) +m.cx=a.geJ(a) +r=!0 +q=!0}else if(t.oN.b(a)||t.Ko.b(a)){m.ok.F(0,a.gcG()) +B.b.F(m.p1,a.gcG()) +m.cx=a.geJ(a) +r=!0 +q=!1}else if(t.w5.b(a)){m.R8.n(0,a.gcG(),new A.NW(m,a.gb8(a),B.h,1,0)) +m.cx=a.geJ(a) +r=!0 +q=!0}else if(t.DB.b(a)){if(!a.gxx()&&!m.cy){s=m.p2.i(0,a.gcG()) +s.toString +s.tW(a.gk7(a),a.gOf(a))}m.R8.n(0,a.gcG(),new A.NW(m,a.gb8(a),a.gOf(a),a.gkE(a),a.gaFd())) +m.cx=a.geJ(a) +r=!1 +q=!0}else{if(t.WQ.b(a)){m.R8.F(0,a.gcG()) +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.aQX(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.aQX(n,p,s,o)}}m.bkz(0) +if(!r||m.bfj(a.gcG()))m.aW0(q,a) +m.J8(a)}, +bkz(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.z(s).c,q=A.jL(s,s.r,r),p=B.h;q.t();){o=s.i(0,q.d) +p=new A.j(p.a+o.a,p.b+o.b)}for(q=e.R8,o=q.gbm(0),n=A.z(o),n=n.h("@<1>").a1(n.y[1]),o=new A.c4(J.au(o.a),o.b,n.h("c4<1,2>")),n=n.y[1];o.t();){m=o.a +m=(m==null?n.a(m):m).gbww() +p=new A.j(p.a+m.a,p.b+m.b)}q=q.a+e.p1.length +q=q>0?p.iI(0,q):B.h +e.dy=q +o=e.cx +if(d==null){e.k2=A.a7c(o,q) +e.p4=B.h}else{n=e.k2 +n===$&&A.b() +q=A.a7c(o,q) +e.k2=q +e.p4=q.W(0,n)}l=s.a +for(q=A.jL(s,s.r,r),k=B.h;q.t();){o=s.i(0,q.d) +k=new A.j(k.a+o.a,k.b+o.b)}q=l>0 +if(q)k=k.iI(0,l) +for(r=A.jL(s,s.r,r),o=k.a,n=k.b,j=0,i=0,h=0;r.t();){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}, +bfj(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.gF0()/r.gKF() +p=p.gbm(0) +r.rx=A.nb(p,new A.bDk(),A.z(p).h("B.E"),t.i).i6(0,new A.bDl())}if(r.CW===B.qZ){if(r.ch!=null){s=r.p2.i(0,a).PU() +q.a=s +p=s.a +if(p.gw7()>2500){if(p.gw7()>64e6)q.a=new A.ks(p.iI(0,p.gfT()).X(0,8000)) +r.fu("onEnd",new A.bDm(q,r))}else r.fu("onEnd",new A.bDn(r))}r.CW=B.a_H +r.p3=new A.le(B.bi,A.aK(20,null,!1,t.av)) +return!1}r.p3=new A.le(B.bi,A.aK(20,null,!1,t.av)) +return!0}, +aW0(a,b){var s,r,q,p,o=this,n=o.CW +if(n===B.mp)n=o.CW=B.mq +if(n===B.mq){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.W(0,q).gfT() +if(Math.abs(n-s)>A.dpN(b.gel(b))||p>A.crw(b.gel(b),o.b)||Math.max(o.gF0()/o.gKF(),o.gKF()/o.gF0())>1.05)o.a5(B.cD)}else if(n.a>=2)o.a5(B.cD) +if(o.CW===B.a_H&&a){o.ry=b.gk7(b) +o.CW=B.qZ +o.akT()}if(o.CW===B.qZ){n=o.p3 +if(n!=null)n.tW(b.gk7(b),new A.j(o.gF0(),0)) +if(o.ay!=null)o.fu("onUpdate",new A.bDi(o,b))}}, +akT(){var s=this +if(s.ax!=null)s.fu("onStart",new A.bDj(s)) +s.ry=null}, +kM(a){var s,r=this +if(r.CW===B.mq){r.CW=B.qZ +r.akT() +if(r.at===B.m){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.gF0()/r.gKF() +s=s.gbm(0) +r.rx=A.nb(s,new A.bDo(),A.z(s).h("B.E"),t.i).i6(0,new A.bDp())}}}}, +kg(a){var s=this +s.R8.F(0,a) +s.ok.F(0,a) +B.b.F(s.p1,a) +s.l_(a)}, +BZ(a){switch(this.CW.a){case 1:this.a5(B.b6) +break +case 0:break +case 2:break +case 3:break}this.CW=B.mp}, +m(){this.p2.V(0) +this.lW()}} +A.bDk.prototype={ +$1(a){return a.e}, +$S:513} +A.bDl.prototype={ +$2(a,b){return a+b}, +$S:87} +A.bDm.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.PU().a.a +if(r==null)r=-1 +return p.$1(new A.UI(s,r,q.R8.a+q.p1.length))}, +$S:0} +A.bDn.prototype={ +$0(){var s,r=this.a,q=r.ch +q.toString +s=r.p3 +s=s==null?null:s.PU().a.a +if(s==null)s=-1 +return q.$1(new A.UI(B.es,s,r.R8.a+r.p1.length))}, +$S:0} +A.bDi.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j=this.a,i=j.ay +i.toString +s=j.gF0() +r=j.gb7f() +q=j.gbln() +p=j.dy +p.toString +o=j.k2 +o===$&&A.b() +n=j.aYS() +m=j.R8.a +l=j.p1.length +j=j.p4 +j===$&&A.b() +k=this.b +i.$1(A.dcO(p,j,r,o,m+l,n,s,k.gk7(k),q))}, +$S:0} +A.bDj.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.a8P(s,r,q+p))}, +$S:0} +A.bDo.prototype={ +$1(a){return a.e}, +$S:513} +A.bDp.prototype={ +$2(a,b){return a+b}, +$S:87} +A.t4.prototype={} +A.uD.prototype={} +A.anZ.prototype={ +lA(a){var s=this +if(s.ch===B.f2){if(s.k4!=null&&s.ok!=null)s.KP() +s.k4=a}if(s.k4!=null)s.aPy(a)}, +xq(a,b){this.aPj(a,b)}, +aAl(a){var s,r,q=this +if(t.oN.b(a)){q.ok=a +q.ajz()}else if(t.Ko.b(a)){q.a5(B.b6) +if(q.k2){s=q.k4 +s.toString +q.Xe(a,s,"")}q.KP()}else{s=a.gjf(a) +r=q.k4 +if(s!==r.gjf(r)){q.a5(B.b6) +s=q.CW +s.toString +q.l_(s)}}}, +a5(a){var s,r=this +if(r.k3&&a===B.b6){s=r.k4 +s.toString +r.Xe(null,s,"spontaneous") +r.KP()}r.agW(a)}, +a9v(){this.ajm()}, +kM(a){var s=this +s.ah3(a) +if(a===s.CW){s.ajm() +s.k3=!0 +s.ajz()}}, +kg(a){var s,r=this +r.ah4(a) +if(a===r.CW){if(r.k2){s=r.k4 +s.toString +r.Xe(null,s,"forced")}r.KP()}}, +ajm(){var s,r=this +if(r.k2)return +s=r.k4 +s.toString +r.aAm(s) +r.k2=!0}, +ajz(){var s,r,q=this +if(!q.k3||q.ok==null)return +s=q.k4 +s.toString +r=q.ok +r.toString +q.aAn(s,r) +q.KP()}, +KP(){var s=this +s.k3=s.k2=!1 +s.k4=s.ok=null}} +A.mB.prototype={ +mk(a){var s=this +switch(a.gjf(a)){case 1:if(s.be==null&&s.bU==null&&s.bj==null&&s.e7==null)return!1 +break +case 2:if(s.dd==null&&s.D==null&&s.N==null&&s.a4==null)return!1 +break +case 4:return!1 +break +default:return!1}return s.E_(a)}, +aAm(a){var s,r=this,q=a.gb8(a),p=a.gev(),o=r.e.i(0,a.gcG()) +o.toString +s=new A.t4(q,o,p) +switch(a.gjf(a)){case 1:if(r.be!=null)r.fu("onTapDown",new A.bKx(r,s)) +break +case 2:if(r.D!=null)r.fu("onSecondaryTapDown",new A.bKy(r,s)) +break +case 4:break}}, +aAn(a,b){var s=this,r=b.gel(b),q=b.gb8(b),p=b.gev(),o=new A.uD(q,p,r) +switch(a.gjf(a)){case 1:if(s.bj!=null)s.fu("onTapUp",new A.bKz(s,o)) +r=s.bU +if(r!=null)s.fu("onTap",r) +break +case 2:if(s.N!=null)s.fu("onSecondaryTapUp",new A.bKA(s,o)) +if(s.dd!=null)s.fu("onSecondaryTap",new A.bKB(s)) +break +case 4:break}}, +Xe(a,b,c){var s,r=this,q=c===""?c:c+" " +switch(b.gjf(b)){case 1:s=r.e7 +if(s!=null)r.fu(q+"onTapCancel",s) +break +case 2:s=r.a4 +if(s!=null)r.fu(q+"onSecondaryTapCancel",s) +break +case 4:break}}} +A.bKx.prototype={ +$0(){return this.a.be.$1(this.b)}, +$S:0} +A.bKy.prototype={ +$0(){return this.a.D.$1(this.b)}, +$S:0} +A.bKz.prototype={ +$0(){return this.a.bj.$1(this.b)}, +$S:0} +A.bKA.prototype={ +$0(){return this.a.N.$1(this.b)}, +$S:0} +A.bKB.prototype={ +$0(){return this.a.dd.$0()}, +$S:0} +A.ael.prototype={ +H(){return"_DragState."+this.b}} +A.aaH.prototype={} +A.aaK.prototype={} +A.aaJ.prototype={} +A.aaL.prototype={} +A.aaI.prototype={} +A.ajn.prototype={ +jB(a){var s,r,q=this +if(t.n2.b(a)){s=A.r_(a.gel(a),q.b) +r=q.WD$ +if(a.gb8(a).W(0,r.b).gfT()>s){q.Ru() +q.MV$=q.MU$=null}}else if(t.oN.b(a)){q.Gu$=a +if(q.we$!=null){q.Ru() +if(q.Cg$==null)q.Cg$=A.d3(B.aA,q.gaYX())}}else if(t.Ko.b(a))q.U6()}, +kg(a){this.U6()}, +b79(a){var s=this.MU$ +s.toString +if(a===s)return!0 +else return!1}, +b8j(a){var s=this.MV$ +if(s==null)return!1 +return a.W(0,s).gfT()<=100}, +Ru(){var s=this.Cg$ +if(s!=null){s.ao(0) +this.Cg$=null}}, +aYY(){}, +U6(){var s,r=this +r.Ru() +r.MV$=r.WD$=r.MU$=null +r.uo$=0 +r.Gu$=r.we$=null +s=r.WF$ +if(s!=null)s.$0()}} +A.a_C.prototype={ +b3H(){var s=this +if(s.cy!=null)s.fu("onDragUpdate",new A.b65(s)) +s.p2=s.p3=null}, +mk(a){var s=this +if(s.fy==null)switch(a.gjf(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.gcG()!==s.fy)return!1 +return s.E_(a)}, +lA(a){var s,r=this +if(r.k1===B.mk){r.aRs(a) +r.fy=a.gcG() +r.ok=r.k4=0 +r.k1=B.yJ +s=a.gb8(a) +r.k3=new A.l2(a.gev(),s) +r.go=A.d3(B.b1,new A.b66(r,a))}}, +Cl(a){if(a.gjf(a)!==1)if(!this.fx)this.agV(a)}, +kM(a){var s,r=this +if(a!==r.fy)return +r.U3() +r.p4.B(0,a) +s=r.we$ +if(s!=null)r.ajw(s) +r.fx=!0 +s=r.k2 +if(s!=null)r.a1f(s) +s=r.Gu$ +if(s!=null)r.ajx(s)}, +BZ(a){var s,r=this +switch(r.k1.a){case 0:r.asx() +r.a5(B.b6) +break +case 1:if(r.dy)if(r.fx){if(r.we$!=null){if(!r.p4.F(0,a))r.Zr(a,B.b6) +r.k1=B.qD +s=r.we$ +s.toString +r.a1f(s) +r.ajo()}}else{r.asx() +r.a5(B.b6)}else{s=r.Gu$ +if(s!=null)r.ajx(s)}break +case 2:r.ajo() +break}r.U3() +r.k1=B.mk +r.dy=!1}, +jB(a){var s,r,q,p,o,n,m=this +if(a.gcG()!==m.fy)return +m.aSK(a) +if(t.n2.b(a)){s=A.r_(a.gel(a),m.b) +if(!m.dy){r=m.k3 +r===$&&A.b() +r=a.gb8(a).W(0,r.b).gfT()>s}else r=!0 +m.dy=r +r=m.k1 +if(r===B.qD)m.ajq(a) +else if(r===B.yJ){if(m.k2==null){if(a.geJ(a)==null)q=null +else{r=a.geJ(a) +r.toString +q=A.Kl(r)}p=m.asy(a.guE()) +r=m.k4 +r===$&&A.b() +o=A.L7(q,null,p,a.gev()).gfT() +n=m.asz(p) +m.k4=r+o*J.iM(n==null?1:n) +r=m.ok +r===$&&A.b() +m.ok=r+A.L7(q,null,a.guE(),a.gev()).gfT()*B.d.gAq(1) +if(!m.asA(a.gel(a)))r=m.fx&&Math.abs(m.ok)>A.crw(a.gel(a),m.b) +else r=!0 +if(r){m.k2=a +m.k1=B.qD +if(!m.fx)m.a5(B.cD)}}r=m.k2 +if(r!=null)m.a1f(r)}}else if(t.oN.b(a)){r=m.k1 +if(r===B.yJ)m.J8(a) +else if(r===B.qD)m.a6b(a.gcG())}else if(t.Ko.b(a)){m.k1=B.mk +m.a6b(a.gcG())}}, +kg(a){var s=this +if(a!==s.fy)return +s.aSL(a) +s.U3() +s.a6b(a) +s.Tp() +s.To()}, +m(){this.U3() +this.To() +this.aRt()}, +a1f(a){var s,r,q,p,o,n=this +if(!n.fx)return +if(n.at===B.m){s=n.k3 +s===$&&A.b() +r=a.gw2() +n.k3=s.S(0,new A.l2(a.guE(),r))}n.aXY(a) +if(!a.guE().l(0,B.h)){if(a.geJ(a)!=null){s=a.geJ(a) +s.toString +q=A.Kl(s)}else q=null +s=n.k3 +s===$&&A.b() +p=s.a.S(0,a.guE()) +o=A.L7(q,null,a.guE(),p) +s=a.guE() +n.p1=n.k3.S(0,new A.l2(s,o)) +n.ajq(a) +n.p1=null}}, +ajw(a){var s,r,q,p,o=this +if(o.fr)return +s=a.gb8(a) +r=a.gev() +q=o.e.i(0,a.gcG()) +q.toString +p=o.uo$ +if(o.ch!=null)o.fu("onTapDown",new A.b63(o,new A.aaH(s,r,q,p))) +o.fr=!0}, +ajx(a){var s,r,q,p,o=this +if(!o.fx)return +s=a.gel(a) +r=a.gb8(a) +q=a.gev() +p=o.uo$ +if(o.CW!=null)o.fu("onTapUp",new A.b64(o,new A.aaK(r,q,s,p))) +o.Tp() +if(!o.p4.F(0,a.gcG()))o.Zr(a.gcG(),B.b6)}, +aXY(a){var s,r,q,p=this +if(p.cx!=null){s=a.gk7(a) +r=p.k3 +r===$&&A.b() +q=p.e.i(0,a.gcG()) +q.toString +p.fu("onDragStart",new A.b61(p,new A.aaJ(s,r.b,r.a,q,p.uo$)))}p.k2=null}, +ajq(a){var s,r,q,p,o,n,m=this,l=m.p1,k=l!=null?l.b:a.gb8(a) +l=m.p1 +s=l!=null?l.a:a.gev() +l=a.gk7(a) +r=a.guE() +q=m.e.i(0,a.gcG()) +q.toString +p=m.k3 +p===$&&A.b() +p=k.W(0,p.b) +o=s.W(0,m.k3.a) +n=m.uo$ +if(m.cy!=null)m.fu("onDragUpdate",new A.b62(m,new A.aaL(l,r,k,s,q,p,o,n)))}, +ajo(){var s=this,r=s.p3 +if(r!=null){r.ao(0) +s.b3H()}r=s.uo$ +if(s.db!=null)s.fu("onDragEnd",new A.b60(s,new A.aaI(0,r))) +s.Tp() +s.To()}, +asx(){var s,r=this +if(!r.fr)return +s=r.dx +if(s!=null)r.fu("onCancel",s) +r.To() +r.Tp()}, +a6b(a){this.l_(a) +if(!this.p4.F(0,a))this.Zr(a,B.b6)}, +Tp(){this.fx=this.fr=!1 +this.fy=null}, +To(){return}, +U3(){var s=this.go +if(s!=null){s.ao(0) +this.go=null}}} +A.b65.prototype={ +$0(){var s=this.a,r=s.cy +r.toString +s=s.p2 +s.toString +return r.$1(s)}, +$S:0} +A.b66.prototype={ +$0(){var s=this.a,r=s.we$ +if(r!=null){s.ajw(r) +if(s.uo$>1)s.a5(B.cD)}return null}, +$S:0} +A.b63.prototype={ +$0(){return this.a.ch.$1(this.b)}, +$S:0} +A.b64.prototype={ +$0(){return this.a.CW.$1(this.b)}, +$S:0} +A.b61.prototype={ +$0(){return this.a.cx.$1(this.b)}, +$S:0} +A.b62.prototype={ +$0(){return this.a.cy.$1(this.b)}, +$S:0} +A.b60.prototype={ +$0(){return this.a.db.$1(this.b)}, +$S:0} +A.wO.prototype={ +asA(a){var s=this.k4 +s===$&&A.b() +return Math.abs(s)>A.r_(a,this.b)}, +asy(a){return new A.j(a.a,0)}, +asz(a){return a.a}} +A.wP.prototype={ +asA(a){var s=this.k4 +s===$&&A.b() +return Math.abs(s)>A.crw(a,this.b)}, +asy(a){return a}, +asz(a){return null}} +A.acV.prototype={ +lA(a){var s,r=this +r.E0(a) +s=r.Cg$ +if(s!=null&&s.b==null)r.U6() +r.Gu$=null +if(r.we$!=null)s=!(r.Cg$!=null&&r.b8j(a.gb8(a))&&r.b79(a.gjf(a))) +else s=!1 +if(s)r.uo$=1 +else ++r.uo$ +r.Ru() +r.we$=a +r.MU$=a.gjf(a) +r.MV$=a.gb8(a) +r.WD$=new A.l2(a.gev(),a.gb8(a)) +s=r.WE$ +if(s!=null)s.$0()}, +m(){this.U6() +this.lW()}} +A.aXQ.prototype={} +A.aXR.prototype={} +A.aXS.prototype={} +A.aXT.prototype={} +A.aXU.prototype={} +A.aMa.prototype={ +a5(a){this.a.bjo(this.b,a)}, +$iRh:1} +A.Nx.prototype={ +kM(a){var s,r,q,p,o=this +o.asD() +if(o.e==null){s=o.a.b +o.e=s==null?o.b[0]:s}for(s=o.b,r=s.length,q=0;qb*b)return new A.ks(s.iI(0,s.gfT()).X(0,b)) +if(r40)return B.yp +s=t.n +r=A.a([],s) +q=A.a([],s) +p=A.a([],s) +o=A.a([],s) +n=this.d +s=this.c +m=s[n] +if(m==null)return null +l=m.a.a +k=m +j=k +i=0 +do{h=s[n] +if(h==null)break +g=h.a.a +f=(l-g)/1000 +if(f>100||Math.abs(g-j.a.a)/1000>40)break +e=h.b +r.push(e.a) +q.push(e.b) +p.push(1) +o.push(-f) +n=(n===0?20:n)-1;++i +if(i<20){k=h +j=k +continue}else{k=h +break}}while(!0) +if(i>=3){d=new A.awO(o,r,p).DL(2) +if(d!=null){c=new A.awO(o,q,p).DL(2) +if(c!=null){s=d.a[1] +g=c.a[1] +b=d.b +b===$&&A.b() +a=c.b +a===$&&A.b() +return new A.FN(new A.j(s*1000,g*1000),b*a,new A.aU(l-k.a.a),m.b.W(0,k.b))}}}return new A.FN(B.h,1,new A.aU(l-k.a.a),m.b.W(0,k.b))}, +PU(){var s=this.IB() +if(s==null||s.a.l(0,B.h))return B.es +return new A.ks(s.a)}} +A.Jq.prototype={ +tW(a,b){var s,r=this +r.gBh().j9(0) +r.gBh().b6(0) +s=(r.d+1)%20 +r.d=s +r.e[s]=new A.agL(a,b)}, +ET(a){var s,r,q=this.d+a,p=B.d.M(q,20),o=B.d.M(q-1,20) +q=this.e +s=q[p] +r=q[o] +if(s==null||r==null)return B.h +q=s.a.a-r.a.a +return q>0?s.b.W(0,r.b).X(0,1000).iI(0,q/1000):B.h}, +IB(){var s,r,q,p,o,n,m=this +if(m.gBh().grt()>40)return B.yp +s=m.ET(-2).X(0,0.6).S(0,m.ET(-1).X(0,0.35)).S(0,m.ET(0).X(0,0.05)) +r=m.e +q=m.d +p=r[q] +for(o=null,n=1;n<=20;++n){o=r[B.d.M(q+n,20)] +if(o!=null)break}if(o==null||p==null)return B.a__ +else return new A.FN(s,1,new A.aU(p.a.a-o.a.a),p.b.W(0,o.b))}} +A.Sz.prototype={ +IB(){var s,r,q,p,o,n,m=this +if(m.gBh().grt()>40)return B.yp +s=m.ET(-2).X(0,0.15).S(0,m.ET(-1).X(0,0.65)).S(0,m.ET(0).X(0,0.2)) +r=m.e +q=m.d +p=r[q] +for(o=null,n=1;n<=20;++n){o=r[B.d.M(q+n,20)] +if(o!=null)break}if(o==null||p==null)return B.a__ +else return new A.FN(s,1,new A.aU(p.a.a-o.a.a),p.b.W(0,o.b))}} +A.amD.prototype={ +q(a){var s=null,r=A.dS(a,B.an,t.v) +r.toString +r=A.bv(r.auI(this.e),s,s,s,s,s,s,s,s,s,s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,new A.b33(this,a),!1,s,s,s,s,s,r,s,s,s)}} +A.b33.prototype={ +$0(){var s=this.a +A.dvN(null,s.w,s.e,s.f,null,this.b)}, +$S:0} +A.ctJ.prototype={ +$1(a){var s=this +return new A.OJ(s.a,s.b,s.c,s.d,s.e,null)}, +$S:1265} +A.ctO.prototype={ +$1(a){var s=this +return new A.JY(s.a,s.b,s.c,s.d,null)}, +$S:1266} +A.OJ.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=A.G(a),k=A.dS(a,B.an,t.v) +k.toString +s=t.p +r=A.a([],s) +q=l.p3 +p=A.bv(n.c,m,m,m,m,m,m,m,m,q.f,m,m,m,m,m) +o=A.bv(n.d,m,m,m,m,m,m,m,m,q.z,m,m,m,m,m) +r.push(A.f7(new A.aA(B.nk,A.cxP(A.a([p,o,B.YC,A.bv(n.f,m,m,m,m,m,m,m,m,q.Q,m,m,m,m,m)],s)),m),1,m)) +r=A.a([A.eq(r,B.a4,m,B.o,B.u,m,m,B.x)],s) +r=A.cxP(r) +q=k.gbX() +q=A.nq(!1,A.bv(q,m,m,m,m,m,m,m,m,m,m,m,m,m,m),B.i,m,!0,m,m,m,m,new A.b31(n,a),m,m) +k=k.gcj() +return A.b3q(A.a([q,A.nq(!1,A.bv(k,m,m,m,m,m,m,m,m,m,m,m,m,m,m),B.i,m,!0,m,m,m,m,new A.b32(a),m,m)],s),m,m,m,m,B.i,r,m,m,B.kP,!0,m,m,m,m,m,m,m)}} +A.b31.prototype={ +$0(){var s=this.a +A.dvS(s.e,s.f,s.c,s.d,this.b)}, +$S:0} +A.b32.prototype={ +$0(){A.cN(this.a,!1).dB(null)}, +$S:0} +A.JY.prototype={ +J(){return new A.afD(new A.bm(null,$.ae(),t.Yv),B.f)}} +A.afD.prototype={ +m(){var s=this.d +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s=null,r=A.bC(a,B.di,t.l).w.a.a>=720?24:12,q=A.dS(a,B.an,t.v) +q.toString +return new A.afM(this.gbcP(),this.gbcM(),r,A.bv(q.gc3(),s,s,s,s,s,s,s,s,s,s,s,s,s,s),s)}, +bcN(a,b,c){b.toString +t.pu.a(b) +return new A.agB(b.a,b.b,c,null)}, +bcQ(a,b){var s,r=this.a,q=r.c +this.c.toString +s=r.d +return new A.agD(new A.aK9(q,s,null,r.f,null),b,this.d,null)}} +A.aK9.prototype={ +q(a){var s=null,r=A.bC(a,B.di,t.l).w.a.a>=720?24:12,q=A.a([A.bv(this.c,s,s,s,s,s,s,s,s,A.G(a).p3.f,B.at,s,s,s,s)],t.p),p=this.d +if(p!=="")q.push(new A.aA(B.aia,A.bv(p,s,s,s,s,s,s,s,s,A.G(a).p3.z,B.at,s,s,s,s),s)) +p=this.f +if(p!=="")q.push(A.bv(p,s,s,s,s,s,s,s,s,A.G(a).p3.Q,B.at,s,s,s,s)) +q.push(B.YC) +q.push(A.bv("Powered by Flutter",s,s,s,s,s,s,s,s,A.G(a).p3.z,B.at,s,s,s,s)) +return new A.aA(new A.af(r,24,r,24),A.cS(q,B.t,s,B.o,B.u,s,s,B.x),s)}} +A.agD.prototype={ +J(){return A.diC()}} +A.aSQ.prototype={ +q(a){return A.bjw(new A.c98(this),this.d,t.GT)}, +b7z(a,b){var s,r,q=a.c +if(q.length===0)return +s=this.a.e.a +r=q[s==null?0:s] +q=a.b.i(0,r) +q.toString +s=A.X(q).h("O<1,kZ>") +A.c4D(b).a.a0e(new A.Xd(r,A.R(new A.O(q,new A.c92(a),s),!1,s.h("aa.E"))))}, +bcO(a,b,c,d){return A.K4(null,new A.c95(this,c,d,b),c.c.length+1,null,null,B.v,!1)}} +A.c99.prototype={ +$2(a,b){a.bm9(b) +return a}, +$S:1292} +A.c9a.prototype={ +$1(a){a.aMR() +return a}, +$S:1293} +A.c98.prototype={ +$2(a,b){return new A.fV(new A.c97(this.a,b),new A.ca(b.a,t.OF))}, +$S:1294} +A.c97.prototype={ +$2(a,b){var s,r,q=null,p=this.b +switch(p.a.a){case 3:s=p.c +if(s!=null)return A.eu(A.bv(J.cw(s),q,q,q,q,q,q,q,q,q,q,q,q,q,q),q,q,q) +s=this.a +r=p.b +r.toString +s.b7z(r,a) +return new A.hc(s.a.e,new A.c96(s,p),q,q,t.er) +case 0:case 2:case 1:p=A.G(a) +return A.fX(B.K,!0,q,A.cS(A.a([this.a.a.c,B.kr],t.p),B.t,q,B.o,B.u,q,q,B.x),B.i,p.ax,0,q,q,q,q,q,B.bT)}}, +$S:52} +A.c96.prototype={ +$3(a,b,c){var s=null,r=A.G(a),q=A.nT(B.Yy),p=this.a,o=this.b.b +o.toString +return A.eu(A.fX(B.K,!0,s,A.bB(s,p.bcO(a,b,o,p.a.d),B.i,s,q,s,s,s,s,s,s,s,s,s),B.i,r.ax,4,s,s,s,s,s,B.bT),s,s,s)}, +$S:1302} +A.c92.prototype={ +$1(a){return this.a.a[a]}, +$S:297} +A.c95.prototype={ +$2(a,b){var s,r,q,p,o,n=this +if(b===0)return n.a.a.c +s=b-1 +r=n.b +q=r.c[s] +p=r.b.i(0,q) +p.toString +if(n.c){o=n.d +o=s===(o==null?0:o)}else o=!1 +return new A.aSP(q,o,p.length,new A.c94(n.a,s,a,q,p,r),null)}, +$S:43} +A.c94.prototype={ +$0(){var s,r,q=this +q.a.a.e.sj(0,q.b) +s=q.e +r=A.X(s).h("O<1,kZ>") +A.c4D(q.c).a.acC(new A.Xd(q.d,A.R(new A.O(s,new A.c93(q.f),r),!1,r.h("aa.E"))))}, +$S:0} +A.c93.prototype={ +$1(a){return this.a.a[a]}, +$S:297} +A.aSP.prototype={ +q(a){var s=this,r=null,q=s.e,p=q?A.G(a).db:A.G(a).ax,o=A.bv(s.c,r,r,r,r,r,r,r,r,r,r,r,r,r,r),n=A.dS(a,B.an,t.v) +n.toString +return A.cxx(A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,s.r,q,r,r,A.bv(n.abK(s.f),r,r,r,r,r,r,r,r,r,r,r,r,r,r),r,r,o,r,r,r),p,r)}} +A.pG.prototype={ +bm9(a){var s,r,q,p,o,n,m,l,k=this +for(s=a.a,r=s.length,q=k.b,p=k.a,o=k.c,n=t.t,m=0;m=720?24:12 +n=new A.af(o,0,o,o) +h=A.R(j.d,!0,t.C) +if(!j.e)h.push(B.bfs) +r=j.a.e +if(r==null){r=s.p3 +m=s.RG +m=A.jb(i,i,!0,i,i,1,i,i,i,!1,i,!1,i,i,i,i,!0,i,i,i,i,i,new A.agC(q,p,r,m.at,m.b,i),i,i,i,1,i) +l=A.nT(B.Yy) +k=A.bW(m,i,A.eu(A.fX(B.K,!0,i,A.bB(i,A.cJt(A.aE2(A.um(a).FQ(!1),A.bE3(A.Sl(h,n,i,!0,B.v),i,i)),a,B.vO),B.i,i,l,i,i,i,i,i,i,i,i,i),B.i,s.ax,4,i,i,i,i,i,B.bT),i,i,i),i,i,i,i) +h=r}else{m=s.p3 +k=A.cD(B.k,r,B.m,i,i,i,!1,i,B.v,A.a([A.ju(i,!1,s.ax,i,!1,!1,!0,new A.agC(q,p,m,m.r,i,i),i),new A.wI(n,A.Fm(new A.pu(new A.c91(h),h.length,!0,!0,!0,0,A.Ou(),i)),i)],t.p)) +h=m}h=h.Q +h.toString +return A.h4(k,i,i,B.aG,!0,h,i,i,B.a0)}} +A.c9_.prototype={ +$0(){var s,r,q,p=null,o=this.a.d +o.push(B.bfw) +for(s=J.au(this.b);s.t();){r=s.gK(s) +q=r.b +r=r.a +if(q===-1)o.push(new A.aA(B.aig,new A.eY(r,p,B.hh,p,B.at,p,p,p,p,p,p,p,p,p,p,p),p)) +else o.push(new A.aA(new A.eB(16*q,8,0,0),new A.eY(r,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p),p))}}, +$S:0} +A.c90.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.c91.prototype={ +$2(a,b){return A.cJt(this.a[b],a,B.vO)}, +$S:1318} +A.agC.prototype={ +q(a){var s,r,q=this,p=null,o=q.f +if(o==null)o=q.e.r +s=o==null?p:o.bu(q.r) +s=A.bv(q.c,p,p,p,p,p,p,p,p,s,p,p,p,p,p) +r=q.e.x +r=r==null?p:r.bu(q.r) +return A.cS(A.a([s,A.bv(q.d,p,p,p,p,p,p,p,p,r,p,p,p,p,p)],t.p),B.a4,p,B.cu,B.u,p,p,B.x)}} +A.WR.prototype={ +H(){return"_ActionLevel."+this.b}} +A.aQJ.prototype={ +H(){return"_LayoutMode."+this.b}} +A.aPk.prototype={ +H(){return"_Focus."+this.b}} +A.afM.prototype={ +J(){return new A.afN(B.yL,new A.aR(null,t.b7),B.f)}, +abY(a,b){return this.c.$2(a,b)}, +ayx(a,b,c){return this.d.$3(a,b,c)}} +A.c4r.prototype={} +A.afN.prototype={ +acC(a){var s=this +s.e=a +if(s.f===B.a_y)s.r.gam().aE0("detail",a,t.X) +else s.d=B.a_s}, +a0e(a){this.e=a}, +q(a){return new A.fV(new A.c4C(this),null)}, +bar(a){var s,r=this,q=null +r.f=B.a_y +s=r.b9l(a) +return new A.a6e(A.cyb(B.k,"initial",r.r,B.IQ,new A.c4z(r,s),new A.c4A(r,s),q,q,B.IR,!1,q,B.Zw),new A.c4B(r),q)}, +b9l(a){return A.brl(new A.c4y(this,a),null,t.z)}, +akE(a){return A.brl(new A.c4t(this,a),null,t.z)}, +b8n(a){var s,r,q=this +q.f=B.bzq +s=q.a +r=s.e +return new A.afO(new A.c4u(q),new A.c4v(q),new A.c4w(),q.e,s.f,r,null)}} +A.c4C.prototype={ +$2(a,b){if(b.b>=840)return this.a.b8n(a) +return this.a.bar(a)}, +$S:52} +A.c4B.prototype={ +$0(){this.a.r.gam().Y6()}, +$S:0} +A.c4z.prototype={ +$2(a,b){var s=this.a +switch(s.d.a){case 0:return A.a([this.b],t.k7) +case 1:return A.a([this.b,s.akE(s.e)],t.k7)}}, +$S:1319} +A.c4A.prototype={ +$1(a){var s,r=a.a +switch(r){case"master":this.a.d=B.yL +return this.b +case"detail":r=this.a +r.d=B.a_s +s=a.b +r.e=s +return r.akE(s) +default:throw A.d(A.dA("Unknown route "+A.r(r)))}}, +$S:1320} +A.c4y.prototype={ +$1(a){var s,r,q=null,p=this.b +p=A.cN(p,!1).yn()?new A.a_v(B.zG,new A.c4x(p),q,q,q):q +s=this.a.a +r=s.f +return A.cvp(new A.aRd(s.c,r,p,q))}, +$S:1321} +A.c4x.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.c4t.prototype={ +$1(a){var s=this.a +return new A.zT(A.cvp(s.a.ayx(a,this.b,null)),new A.c4s(s),!0,null)}, +$S:1324} +A.c4s.prototype={ +$1(a){this.a.d=B.yL}, +$S:4} +A.c4w.prototype={ +$2(a,b){return B.hK}, +$S:1325} +A.c4v.prototype={ +$3(a,b,c){var s=this.a,r=s.a +r.toString +return r.ayx(a,b==null?s.e:b,c)}, +$C:"$3", +$R:3, +$S:516} +A.c4u.prototype={ +$2(a,b){return this.a.a.abY(a,b)}, +$S:151} +A.aRd.prototype={ +q(a){var s=null +return A.bW(A.jb(B.hK,s,!0,s,s,1,s,s,s,!1,s,!1,s,s,this.e,s,!0,s,s,s,s,s,this.d,s,s,s,1,s),s,this.c.$2(a,!1),s,s,s,s)}} +A.afO.prototype={ +J(){return new A.afP(new A.bm(null,$.ae(),t._x),B.f)}, +abY(a,b){return this.c.$2(a,b)}} +A.afP.prototype={ +a8(){var s,r=this +r.an() +s=r.a.w +r.f=s +r.r=320 +r.d=B.AN}, +m(){var s=this.w +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +acC(a){var s +$.cW.xr$.push(new A.c4G(this,a)) +s=this.c +s.toString +A.c4D(s).a.acC(a)}, +a0e(a){var s +$.cW.xr$.push(new A.c4H(this,a)) +s=this.c +s.toString +A.c4D(s).a.a0e(a)}, +q(a){var s,r,q,p,o,n=this,m=null,l=n.d +l===$&&A.b() +s=n.a +r=s.r +s=s.e.$2(a,B.byt) +q=n.r +q===$&&A.b() +q=A.fH(m,q) +p=A.G(a) +o=t.p +r=A.jb(s,m,!0,m,new A.rP(A.eq(A.a([new A.fI(q,A.DA(A.bB(B.zk,A.a6B(m,n.a.e.$2(a,B.byu),B.Sy,B.x,0,8),B.i,m,m,m,m,m,m,m,B.cq,m,m,m),p.p1,m),m)],o),B.t,m,B.o,B.u,m,m,B.x),B.bmu,m),1,m,m,m,!1,m,!1,m,m,m,m,!0,m,m,m,m,m,r,m,m,m,1,m) +p=n.r +s=n.a.abY(a,!0) +l=A.bW(r,m,new A.fl(B.fn,m,m,new A.fI(new A.aG(0,p,0,1/0),s,m),m),m,m,l,m) +s=n.r +r=n.f +r===$&&A.b() +return new A.d4(B.ar,m,B.am,B.k,A.a([l,new A.iX(!0,!0,!0,!0,B.L,!1,new A.aA(new A.eB(s-4,0,r,0),new A.hc(n.w,new A.c4F(n),m,m,t.Jl),m),m)],o),m)}} +A.c4G.prototype={ +$1(a){var s=this.b +this.a.w.sj(0,s) +return s}, +$S:5} +A.c4H.prototype={ +$1(a){var s=this.b +this.a.w.sj(0,s) +return s}, +$S:5} +A.c4F.prototype={ +$3(a,b,c){var s=null,r=b==null,q=r?this.a.a.f:b,p=this.a.a,o=p.d +return A.BS(A.bB(s,new A.aNu(o,r?p.f:b,s),B.i,s,B.ki,s,s,s,new A.ca(q,t.Xm),s,s,s,s,s),B.bd,B.H,B.H,new A.c4E())}, +$S:1326} +A.c4E.prototype={ +$2(a,b){var s,r=$.cYU(),q=$.cYW(),p=r.$ti.h("eb") +t.o.a(b) +s=$.cYV() +return new A.aON(new A.aB(b,new A.eb(q,r,p),p.h("aB")),new A.aB(b,s,A.z(s).h("aB")),a,null)}, +$S:302} +A.aNu.prototype={ +q(a){var s,r +if(this.d==null)return B.ap +s=A.bC(a,B.di,t.l).w.a.b +r=(s-56)/s +return new A.a2a(r,r,!1,new A.bXA(this),null)}} +A.bXA.prototype={ +$2(a,b){var s=null,r=A.G(a),q=this.a,p=q.d +if(p==null)p=t.K.a(p) +return A.ip(A.a0c(!0,q.c.$3(a,p,b),B.dL,r.ax,4,s,B.ed,s,B.bkj,s),B.bt,s,s,s,s,s)}, +$S:1334} +A.aKd.prototype={ +q(a){var s=this,r=null +return A.lx(r,!1,s.e,r,r,r,r,r,r,r,s.c,r,r,r,r,new A.bQz(s,a),r,r,r,r,s.f,s.a3h(a),r)}} +A.bQz.prototype={ +$0(){var s=this.a,r=s.d +if(r!=null)r.$0() +else s.a4O(this.b)}, +$S:0} +A.WQ.prototype={ +q(a){var s,r,q,p,o=null +a.a0(t.vH) +s=A.G(a) +r=this.c.$1(s.R8) +if(r!=null)return r.$1(a) +q=this.d.$1(a) +switch(A.bL().a){case 0:s=A.dS(a,B.an,t.v) +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.b2(q,o,o,o,o,o,p,o,o,o,o)}} +A.anz.prototype={ +q(a){return new A.WQ(new A.b5q(),new A.b5r(),new A.b5s(),null)}} +A.b5q.prototype={ +$1(a){return a==null?null:a.a}, +$S:192} +A.b5r.prototype={ +$1(a){return B.DE}, +$S:199} +A.b5s.prototype={ +$1(a){return a.gcq()}, +$S:203} +A.a_v.prototype={ +a4O(a){return A.cyc(a)}, +a3h(a){var s=A.dS(a,B.an,t.v) +s.toString +return s.gcq()}} +A.at3.prototype={ +q(a){return new A.WQ(new A.bef(),new A.beg(),new A.beh(),null)}} +A.bef.prototype={ +$1(a){return a==null?null:a.c}, +$S:192} +A.beg.prototype={ +$1(a){return B.DL}, +$S:199} +A.beh.prototype={ +$1(a){return a.gby()}, +$S:203} +A.at2.prototype={ +a4O(a){var s,r,q=A.UH(a),p=q.e +if(p.gam()!=null){s=q.x +r=s.y +s=r==null?A.z(s).h("cV.T").a(r):r}else s=!1 +if(s)p.gam().aO(0) +q=q.d.gam() +if(q!=null)q.CO(0) +return null}, +a3h(a){var s=A.dS(a,B.an,t.v) +s.toString +return s.gby()}} +A.ato.prototype={ +q(a){return new A.WQ(new A.bgw(),new A.bgx(),new A.bgy(),null)}} +A.bgw.prototype={ +$1(a){return a==null?null:a.d}, +$S:192} +A.bgx.prototype={ +$1(a){return B.DL}, +$S:199} +A.bgy.prototype={ +$1(a){return a.gby()}, +$S:203} +A.atn.prototype={ +a4O(a){var s,r,q=A.UH(a),p=q.d +if(p.gam()!=null){s=q.w +r=s.y +s=r==null?A.z(s).h("cV.T").a(r):r}else s=!1 +if(s)p.gam().aO(0) +q=q.e.gam() +if(q!=null)q.CO(0) +return null}, +a3h(a){var s=A.dS(a,B.an,t.v) +s.toString +return s.gby()}} +A.bUc.prototype={ +H(){return"_ChipVariant."+this.b}} +A.amI.prototype={ +q(a){var s,r,q=null +A.G(a) +s=this.r +r=s!=null +return A.bzx(!1,this.c,B.iH,q,q,B.i,q,new A.bQA(a,r,B.mj,q,q,q,q,q,q,q,q,q,!0,q,q,q,q,B.pT,q,q,q,q,q,q),q,q,q,q,q,q,q,r,this.d,q,q,q,q,s,q,q,q,!1,q,q,q,q,q,q,q,!0,q,q)}} +A.bQA.prototype={ +gAz(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dx) +r.fx!==$&&A.a_() +q=r.fx=s.ay}return q}, +gft(a){var s +if(this.fr===B.mj)s=0 +else s=this.dy?1:0 +return s}, +gHx(){return 1}, +gkx(){var s,r=this,q=r.fy +if(q===$){s=A.G(r.dx) +r.fy!==$&&A.a_() +q=r.fy=s.p3}return q.as}, +ga6(a){return new A.by(new A.bQB(this),t.U)}, +gc0(a){var s +if(this.fr===B.mj)s=B.D +else{s=this.gAz().fy +if(s==null)s=B.B}return s}, +gc9(){var s=this.gAz(),r=s.k3 +return r==null?s.b:r}, +gyo(){return null}, +gyJ(){return null}, +ghr(){var s,r,q=this +if(q.fr===B.mj)if(q.dy){s=q.gAz() +r=s.fr +s=new A.bx(r==null?s.cx:r,1,B.O,-1)}else{s=q.gAz().db +s=new A.bx(A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}else s=B.zT +return s}, +gj0(){var s=null +return new A.dW(18,s,s,s,s,this.dy?this.gAz().b:this.gAz().db,s,s,s)}, +gdX(a){return B.cq}, +gzu(){var s=A.cG(this.dx,B.bn) +s=s==null?null:s.gdZ() +s=A.vO(B.cp,B.ed,A.Z((s==null?B.Y:s).gir()-1,0,1)) +s.toString +return s}} +A.bQB.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a +if(s.fr===B.mj)s=null +else{s=s.gAz().db +s=A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return s}return null}, +$S:21} +A.OK.prototype={ +gv(a){var s=this +return A.cs([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.az(b)!==A.I(this))return!1 +if(b instanceof A.OK)s=!0 +else s=!1 +return s}} +A.aKg.prototype={} +A.H3.prototype={ +q(a){var s,r,q=this,p=q.c.length===0 +if(p)return B.ap +s=J.ra(A.d1A(a,q.c)) +switch(A.G(a).w.a){case 2:p=q.e +r=p.a +p=p.b +return A.d3U(r,p==null?r:p,s) +case 0:p=q.e +r=p.a +p=p.b +return A.dfa(r,p==null?r:p,s) +case 1:case 3:case 5:return new A.asy(q.e.a,s,null) +case 4:return new A.aq3(q.e.a,s,null)}}} +A.b3l.prototype={ +$1(a){return A.d3V(a)}, +$S:1348} +A.b3m.prototype={ +$1(a){var s=this.a +return A.d4o(s,a.a,A.cve(s,a))}, +$S:1358} +A.b3n.prototype={ +$1(a){return A.d3I(a.a,A.cve(this.a,a))}, +$S:1411} +A.an1.prototype={ +q(a){var s,r,q,p,o=null,n=this.f,m=A.bmn(a),l=m.a +l.toString +s=a.a0(t.I) +s.toString +r=s.w +s=m.ghn(0) +s.toString +q=this.d +if(q==null){p=m.f +p.toString +q=p}if(s!==1)q=A.Y(B.e.aF(255*((q.gj(q)>>>24&255)/255*s)),q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255) +s=this.c +p=r===B.ae&&n.c +l=A.ih(o,o,o,new A.aKw(n.b,s,q,l/48,p,A.doF(),s),new A.V(l,l)) +return new A.bX(A.ci(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,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o),!1,!1,!1,!1,l,o)}} +A.aKw.prototype={ +aI(a,b){var s,r,q,p,o,n=this +if(n.f){a.qE(0,3.141592653589793) +a.ba(0,-b.a,-b.b)}s=n.e +a.jt(0,s,s) +s=n.c +r=A.Z(s.gj(s),0,1) +for(s=n.b,q=n.d,p=n.r,o=0;o<3;++o)s[o].zJ(a,q,p,r)}, +hC(a){var s=this,r=a.c,q=s.c +return r.gj(r)!==q.gj(q)||!a.d.l(0,s.d)||a.b!==s.b||a.e!==s.e||!J.q(a.r,s.r)}, +Cp(a){return null}, +IS(a){return!1}, +gDH(){return null}} +A.Y2.prototype={ +zJ(a,b,c,d){var s,r,q,p=A.b1x(this.b,d,A.Zs()) +p.toString +s=$.ar().aP() +s.sbN(0,B.aH) +s.sa6(0,A.Y(B.e.aF(255*((b.gj(b)>>>24&255)/255*p)),b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(b)&255)) +r=c.$0() +for(p=this.a,q=0;q<6;++q)p[q].a7i(r,d) +a.ey(r,s)}} +A.NV.prototype={} +A.Y3.prototype={ +a7i(a,b){var s=A.b1x(this.a,b,A.cu8()) +s.toString +a.fV(0,s.a,s.b)}} +A.oV.prototype={ +a7i(a,b){var s,r,q=A.b1x(this.b,b,A.cu8()) +q.toString +s=A.b1x(this.a,b,A.cu8()) +s.toString +r=A.b1x(this.c,b,A.cu8()) +r.toString +a.Me(q.a,q.b,s.a,s.b,r.a,r.b)}} +A.aSV.prototype={ +a7i(a,b){a.aO(0)}} +A.b3L.prototype={} +A.bR6.prototype={} +A.qN.prototype={ +H(){return"ThemeMode."+this.b}} +A.SC.prototype={ +J(){return new A.afQ(B.f)}} +A.brj.prototype={ +$2(a,b){return new A.SE(a,b)}, +$S:1415} +A.bro.prototype={ +v9(a){return A.G(a).w}, +Vk(a,b,c){switch(A.cO(c.a).a){case 0:return b +case 1:switch(A.G(a).w.a){case 3:case 4:case 5:return A.bE3(b,c.b,null) +case 0:case 1:case 2:return b}break}}, +Vj(a,b,c){A.G(a) +switch(A.G(a).w.a){case 2:case 3:case 4:case 5:return b +case 0:switch(0){case 0:return new A.aaf(c.a,c.d,b,null)}case 1:break}return A.cIy(c.a,b,A.G(a).ay.f)}} +A.afQ.prototype={ +a8(){this.an() +this.d=A.cJL()}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.ap()}, +gb93(){var s=A.a([],t.aQ) +B.b.L(s,this.a.k2) +s.push(B.a5Z) +s.push(B.a5L) +return s}, +b7Z(a,b){return A.cIk(B.E_,!0,b)}, +b9p(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.a.fx +if(h==null)h=B.m0 +s=A.cG(a,B.e6) +r=s==null?i:s.e +if(r==null)r=B.ak +if(h!==B.Zh)q=h===B.m0&&r===B.aN +else q=!0 +s=A.cG(a,B.a_A) +s=s==null?i:s.as +p=s===!0 +if(q)if(p)j.a.toString +if(q){j.a.toString +s=!0}else s=!1 +if(s)o=j.a.dx +else{if(p)j.a.toString +o=i}if(o==null)o=j.a.db +s=o.iQ +n=s.b +if(n==null){m=o.ay.b +n=A.Y(102,m.gj(m)>>>16&255,m.gj(m)>>>8&255,m.gj(m)&255)}l=s.a +if(l==null)l=o.ay.b +j.a.toString +$.cCj() +k=new A.a_5(o,new A.e_(new A.c4I(j,b),i),B.H,B.K,i,i) +return new A.a8N(A.bcc(k,l,i,i,n),i)}, +aXp(a){var s,r,q,p,o,n=this,m=null,l=n.a,k=l.db +k=k.fx +s=k +if(s==null)s=B.du +k=l.ch +r=l.cx +q=l.cy +l=l.k1 +p=n.gb93() +o=n.a +return new A.Ww(m,m,m,m,m,m,m,m,k,m,m,m,m,m,m,n.gb9o(),r,q,B.bst,s,l,p,m,m,o.ok,!1,!1,!1,!1,n.gb7Y(),o.R8,m,m,m,new A.yW(n,t.bT))}, +q(a){var s=null,r=A.n1(!1,!1,this.aXp(a),s,s,s,s,!0,s,s,s,new A.c4J(),s,s),q=this.a.to,p=this.d +p===$&&A.b() +return A.aE2(q,A.cIB(r,p))}} +A.c4I.prototype={ +$1(a){return this.a.a.CW.$2(a,this.b)}, +$S:8} +A.c4J.prototype={ +$2(a,b){if(!(b instanceof A.rx)&&!(b instanceof A.DS)||!b.b.l(0,B.hM))return B.eA +return A.dfP()?B.d3:B.eA}, +$S:133} +A.aiH.prototype={ +H(){return"_SliverAppVariant."+this.b}} +A.cm6.prototype={ +A8(a){return a.OT(this.b)}, +Ae(a){return new A.V(a.b,this.b)}, +Aa(a,b){return new A.j(0,a.b-b.b)}, +nt(a){return this.b!==a.b}} +A.aTN.prototype={} +A.a_c.prototype={ +b20(a){var s=this.cy +if(s==null)s=a.RG.y +return s==null?new A.b3Q(this,a).$0():s}, +J(){return new A.acG(B.f)}, +$izV:1, +uI(a){return A.Zm().$1(a)}, +gqy(){return this.fx}} +A.b3Q.prototype={ +$0(){switch(this.b.w.a){case 0:case 1:case 3:case 5:return!1 +case 2:case 4:var s=this.a.f +return s==null||J.bn(s)<2}}, +$S:3} +A.acG.prototype={ +c5(){var s,r=this +r.dH() +s=r.d +if(s!=null)s.O(0,r.ga1w()) +s=r.c.a0(t.yd) +s=s==null?null:s.f +r.d=s +if(s!=null){s=s.d +s.Sn(s.c,new A.Gf(r.ga1w()),!1)}}, +m(){var s=this,r=s.d +if(r!=null){r.O(0,s.ga1w()) +s.d=null}s.ap()}, +aW6(a){var s,r,q,p=this +if(a instanceof A.no&&p.a.uI(a)){s=p.e +r=a.a +switch(r.e.a){case 0:q=p.e=Math.max(r.gkR()-r.gfL(),0)>0 +break +case 2:q=p.e=Math.max(r.gfL()-r.glf(),0)>0 +break +case 1:case 3:q=s +break +default:q=s}if(q!==s)p.C(new A.bRx())}}, +q(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=this,a7=null,a8=A.G(b7),a9=A.cIQ(b7),b0=A.G(b7).RG,b1=A.cO0(b7),b2=b7.wh(t.Np),b3=A.wp(b7,t.X),b4=b7.a0(t.N8),b5=A.b9(t.ui),b6=b4==null?a7:b4.y +if(b6==null?a6.e:b6)b5.B(0,B.Rh) +b6=b2==null +if(b6)s=a7 +else{b2.a.toString +s=!1}if(b6)b2=a7 +else{b2.a.toString +b2=!1}if(b3 instanceof A.oi)b3.grD() +b6=a6.a +r=b6.fy +q=r==null?b0.Q:r +if(q==null)q=56 +b6=b6.ax +r=b1.gcv(0) +p=t._ +b6=A.d2(b6,b5,p) +if(b6==null)b6=A.d2(b0.a,b5,p) +if(b6==null)b6=A.d2(r,b5,t.G) +a6.a.toString +o=b0.b +n=o==null?b1.ghx():o +r=a6.a.x +m=r==null?b0.c:r +if(m==null){r=b1.c +r.toString +m=r}if(b5.p(0,B.Rh)){a6.a.toString +b5=b0.d +if(b5==null)b5=b1.d +l=b5==null?m:b5}else l=m +a6.a.toString +k=b0.w +j=k==null?b1.gj0().bu(n):k +b5=a6.a +b5.toString +r=b0.x +b5=r==null?b5.ch:r +if(b5==null)b5=k +if(b5==null){b5=b1.gFd().bu(o) +i=b5}else i=b5 +if(i==null)i=j +a6.a.toString +h=b0.as +if(h==null){b5=b1.gP1() +h=b5==null?a7:b5.bu(n)}b5=a6.a.k1 +g=b5==null?b0.at:b5 +if(g==null){b5=b1.glP() +g=b5==null?a7:b5.bu(n)}b5=a6.a.dy +if(b5!==1){f=B.Ew.ah(0,b5) +if((g==null?a7:g.b)!=null){b5=g.b +b5.toString +g=g.bu(A.Y(B.e.aF(255*f),b5.gj(b5)>>>16&255,b5.gj(b5)>>>8&255,b5.gj(b5)&255))}if((h==null?a7:h.b)!=null){b5=h.b +b5.toString +h=h.bu(A.Y(B.e.aF(255*f),b5.gj(b5)>>>16&255,b5.gj(b5)>>>8&255,b5.gj(b5)&255))}b5=j.ghn(0) +k=j.a8E(f*(b5==null?1:b5)) +b5=i.ghn(0) +i=i.a8E(f*(b5==null?1:b5))}else k=j +b5=a6.a +e=b5.c +if(e==null&&b5.d)if(s===!0){b5=k.a +e=new A.at2(B.ahA,a7,a7,A.Dz(a7,a7,a7,a7,a7,a7,a7,a7,a7,b5==null?24:b5,a7,a7,a7,a7),a7)}else{if(b3==null)b5=a7 +else b5=b3.gGD()||b3.pk$>0 +if(b5===!0)e=B.a1z}if(e!=null){if(k.l(0,b1.gj0()))d=a9 +else{c=A.Dz(a7,a7,a7,a7,a7,a7,k.f,a7,a7,k.a,a7,a7,a7,a7) +b5=a9.a +d=new A.w9(b5==null?a7:b5.axG(c.c,c.as,c.d))}e=A.a45(e,d) +a6.a.toString +e=new A.fI(A.fH(a7,56),e,a7)}b5=a6.a +b=b5.e +if(b!=null){b=new A.aKP(b,a7) +a=a8.w +$label0$0:{if(B.b4===a||B.fh===a||B.fi===a||B.fj===a){s=!0 +break $label0$0}if(B.aM===a||B.cL===a){s=a7 +break $label0$0}throw A.d(A.iB(u.P))}b=new A.bX(A.ci(a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,!0,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,s,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7),!1,!1,!1,!1,b,a7) +g.toString +b=A.brx(A.h4(b,a7,a7,B.bf,!1,g,a7,a7,B.a0),1.34)}b5=b5.f +if(b5!=null&&J.iL(b5)){b2=a6.a.f +b2.toString +a0=A.eq(b2,B.t,a7,B.o,B.Z,a7,a7,B.x)}else if(b2===!0){b2=k.a +a0=new A.atn(B.aj4,a7,a7,A.Dz(a7,a7,a7,a7,a7,a7,a7,a7,a7,b2==null?24:b2,a7,a7,a7,a7),a7)}else a0=a7 +if(a0!=null){if(i.l(0,b1.gFd()))a1=a9 +else{a2=A.Dz(a7,a7,a7,a7,a7,a7,i.f,a7,a7,i.a,a7,a7,a7,a7) +b2=a9.a +a1=new A.w9(b2==null?a7:b2.axG(a2.c,a2.as,a2.d))}a0=A.a45(A.qd(a0,i),a1)}b2=a6.a.b20(a8) +b5=a6.a +b5.toString +s=b0.z +if(s==null)s=16 +h.toString +a3=A.p3(new A.q1(new A.cm6(q),A.qd(A.h4(new A.a6c(e,b,a0,b2,s,a7),a7,a7,B.aG,!0,h,a7,a7,B.a0),k),a7),B.k,a7) +if(b5.w!=null){b2=A.a([new A.iO(1,B.c1,new A.fI(new A.aG(0,1/0,0,q),a3,a7),a7)],t.p) +b5=a6.a +s=b5.fr +if(s===1){b5=b5.w +b5.toString +b2.push(b5)}else{b5=B.Ew.ah(0,s) +b2.push(A.mj(a6.a.w,b5))}a3=A.cS(b2,B.t,a7,B.d7,B.u,a7,a7,B.x)}b2=a6.a +a3=new A.fl(B.cW,a7,a7,new A.iX(!0,!0,!0,!1,B.L,!1,a3,a7),a7) +b2=b2.r +if(b2!=null){b5=A.ci(a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,B.wL,a7,a7,a7,a7,a7,a7) +s=A.fX(B.K,!0,a7,a3,B.i,a7,0,a7,a7,a7,a7,a7,B.eI) +a3=new A.d4(B.ar,a7,B.q8,B.k,A.a([new A.bX(b5,!1,!0,!1,!1,b2,a7),new A.bX(A.ci(a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,B.wK,a7,a7,a7,a7,a7,a7),!1,!0,!1,!1,s,a7)],t.p),a7)}a6.a.toString +b2=b0.ax +a4=b2==null?b1.ax:b2 +if(a4==null){b2=A.FC(b6) +a5=b2===B.aN?B.xN:B.xO +a4=new A.wM(a7,a7,a7,a7,B.D,a5.f,a5.r,a5.w)}a6.a.toString +b2=b0.e +if(b2==null)b2=b1.gc0(0) +a6.a.toString +b5=b0.f +if(b5==null)b5=b1.gc9() +a6.a.toString +s=b0.r +if(s==null)s=b1.r +b2=A.cEP(A.fX(B.K,!0,a7,new A.bX(A.ci(a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7),!1,!0,!1,!1,a3,a7),B.i,b6,l,a7,b2,s,b5,a7,B.bT),a4,t.ev) +return new A.bX(A.ci(a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7,a7),!0,!1,!1,!1,b2,a7)}} +A.bRx.prototype={ +$0(){}, +$S:0} +A.cfq.prototype={ +glI(){var s=this,r=s.cy +if(r==null)r=s.fy+s.k3 +return Math.max(s.dx+r,s.db)}, +Ve(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.dx,f=i.glI()-a0-g,e=i.db,d=i.k3,c=i.fy,b=Math.max(e-d-g-c,0) +if(!a1)if(!i.z){g=i.fr&&a0>i.glI()-e +s=g}else s=!0 +else s=!0 +g=i.fr +r=g&&i.dy&&i.f!=null&&b===0 +if(!g||r)q=A.Z((f-d-b)/c,0,1) +else q=1 +p=i.p1 +$label0$0:{if(B.a_J===p){o=i.c +n=o +break $label0$0}if(B.a_K===p||B.a_L===p){o=s?1:0 +n=i.c +o=A.jF(n,B.tD,B.bd,o) +break $label0$0}throw A.d(A.iB(u.P))}m=i.glI() +l=Math.max(e,i.glI()-a0) +k=i.b +n=n==null&&i.e!=null&&!0 +j=i.e +if(n)n=new A.bX(A.ci(h,h,h,h,h,h,h,h,h,h,h,h,h,h,!0,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) +else n=j +j=s?i.r:0 +g=g?1:A.Z(f/d,0,1) +return A.cIj(A.jb(i.d,i.ax,k,i.Q,i.f,g,i.ch,i.ok,j,!1,n,!1,i.as,i.at,i.a,i.go,!0,i.w,i.x,i.fx,i.y,i.k2,o,i.cx,i.k1,c,q,i.id),l,k,s,m,e,q)}, +k(a){return"#"+A.bq(this)+"(topPadding: "+B.e.aZ(this.dx,1)+", bottomHeight: "+B.e.aZ(this.k3,1)+", ...)"}} +A.Ai.prototype={ +J(){return new A.aWO(null,null,B.f)}} +A.aWO.prototype={ +au7(){var s,r=this.a +r.toString +s=this.d=null +this.f=B.V.hM(r.fr,!1)?B.bh7:s}, +auc(){if(this.a.id)this.e=new A.bvo(100,null) +else this.e=null}, +a8(){this.an() +this.au7() +this.auc()}, +b1(a){var s,r=this +r.bc(a) +s=r.a.fr +if(s!==a.fr)r.au7() +if(r.a.id!==a.id)r.auc()}, +q(a4){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=a0.a.w,a3=a2==null?a1:a2.gqy().b +if(a3==null)a3=0 +a0.a.toString +s=A.bC(a4,B.cV,t.l).w.r.b +a2=a0.a +r=a2.fx +if(r&&a2.fr&&a2.w!=null)q=0+a3+s +else{p=a2.k3 +q=p+a3+s}p=a2.R8 +switch(p.a){case 0:o=a2.dy +n=a2.r +m=q +break +case 1:o=a2.dy +if(o==null)o=112+a3 +m=s+64+a3 +n=a2.r +if(n==null)n=new A.aih(a2.e,a1,A.doI(),a2.p1,a3,a1) +break +case 2:o=a2.dy +if(o==null)o=152+a3 +m=s+64+a3 +n=a2.r +if(n==null)n=new A.aih(a2.e,a1,A.doH(),a2.p1,a3,a1) +break +default:n=a1 +m=n +o=m}l=a2.fr +k=a2.d +j=a2.e +i=a2.f +h=a2.w +g=a2.as +f=a2.at +e=a0.d +d=a0.e +c=a0.f +b=a2.k3 +a2=a2.p1 +a=h==null?a1:h.gqy().b +return A.azi(new A.aEV(new A.cfq(a1,k,j,i,n,h,a1,a1,a1,a1,g,f,a1,a1,a1,!0,a1,!1,a1,o,m,s,l,r,a1,b,a1,a1,a2,a1,a==null?0:a,!1,a1,p,a0,e,d,c),r,l,a1),a4,!0,!1,!1,!1)}} +A.aKP.prototype={ +aR(a){var s=a.a0(t.I) +s.toString +s=new A.aUJ(B.C,s.w,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s=a.a0(t.I) +s.toString +b.sd5(s.w)}} +A.aUJ.prototype={ +cX(a){var s=a.a8C(1/0) +return a.bd(this.k1$.jr(s))}, +bJ(){var s=this,r=t.k,q=r.a(A.H.prototype.gZ.call(s)).a8C(1/0) +s.k1$.d_(q,!0) +s.id=r.a(A.H.prototype.gZ.call(s)).bd(s.k1$.gu(0)) +s.Fl()}} +A.aih.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=A.XD("appBarTheme",new A.ce1(a)),c=A.XD("defaults",new A.ce2(a)),b=a.a0(t.N8) +b.toString +s=f.e.$1(a) +r=f.f +q=r==null?d.m0().glP():r +if(q==null){r=s.gaze() +if(r==null)q=e +else{p=d.m0().ghx() +r=r.bu(p==null?c.m0().ghx():p) +q=r}}o=f.c +$label0$0:{if(o==null){r=e +break $label0$0}if(o instanceof A.c){n=o==null?t.C.a(o):o +r=q==null +m=q +l=!0}else{n=e +m=n +l=!1 +r=!1}if(r){r=n +break $label0$0}if(o instanceof A.c){n=o==null?t.C.a(o):o +if(l)r=m +else{r=q +m=r +l=!0}r=r instanceof A.a4}else{n=e +r=!1}if(r){k=l?m:q +r=A.h4(n,e,e,B.aG,!0,k==null?t.em.a(k):k,e,e,B.a0) +break $label0$0}throw A.d(A.iB(u.P))}j=s.gazf() +a.a0(t.I).toString +p=f.r +i=p>0 +h=i?j.u9(0):j +g=b.r +r=A.a([new A.aA(new A.af(0,g-p,0,0),e,e),new A.iO(1,B.c1,A.p3(new A.aOC(h,b.w-g,r,e),B.k,e),e)],t.p) +if(i)r.push(new A.aA(new A.af(0,0,0,p),e,e)) +return A.brx(A.cS(r,B.t,e,B.o,B.u,e,e,B.x),1.34)}} +A.ce1.prototype={ +$0(){return A.G(this.a).RG}, +$S:317} +A.ce2.prototype={ +$0(){var s=this.a +A.G(s) +s=A.cO0(s) +return s}, +$S:317} +A.aOC.prototype={ +aR(a){var s=a.a0(t.I) +s.toString +s=new A.aht(this.e,B.ms.a5(s.w),this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s=a.a0(t.I) +s.toString +b.sdX(0,this.e) +b.sadA(B.ms.a5(s.w)) +b.slI(this.f)}} +A.aht.prototype={ +sdX(a,b){if(this.G.l(0,b))return +this.G=b +this.a9()}, +sadA(a){if(this.ac.l(0,a))return +this.ac=a +this.a9()}, +slI(a){if(this.aS===a)return +this.aS=a +this.a9()}, +bi(a){var s,r,q=this.k1$ +if(q==null)s=0 +else{s=q.aw(B.ay,Math.max(0,a-this.G.geL()),q.gbZ()) +r=this.G +r=s+(r.gdM(0)+r.gdT(0)) +s=r}return s}, +bb(a){var s=this.k1$ +return s==null?0:s.aw(B.aj,1/0,s.gbL())+this.G.geL()}, +bh(a){var s,r,q=this.k1$ +if(q==null)s=0 +else{s=q.aw(B.ao,Math.max(0,a-this.G.geL()),q.gbP()) +r=this.G +r=s+(r.gdM(0)+r.gdT(0)) +s=r}return s}, +bo(a){var s=this.k1$ +return s==null?0:s.aw(B.ad,1/0,s.gbG())+this.G.geL()}, +aiy(a,b){var s,r,q=this.k1$ +if(q==null)return B.A +s=a.a +r=a.b +b.$2(q,new A.aG(s,r,0,1/0).om(this.G)) +return new A.V(A.Z(1/0,s,r),A.Z(1/0,a.c,a.d))}, +cX(a){return this.aiy(a,A.k0())}, +bJ(){var s,r,q,p,o,n,m,l,k,j=this,i=j.k1$ +if(i==null){s=t.k.a(A.H.prototype.gZ.call(j)) +j.id=new A.V(A.Z(0,s.a,s.b),A.Z(0,s.c,s.d)) +return}r=j.id=j.aiy(t.k.a(A.H.prototype.gZ.call(j)),A.k1()) +q=i.gu(0) +s=q.b +p=j.G +o=p.d +n=A.Z(s+o-j.aS,0,o) +m=j.ac +p=p.geL() +l=j.G +k=i.b +k.toString +t.r.a(k).a=new A.j((m.a+1)/2*(r.a-p-q.a)+l.a,r.b-s-o+n)}} +A.aW1.prototype={} +A.bRw.prototype={ +gxD(){var s,r=this,q=r.ch +if(q===$){s=A.G(r.ay) +r.ch!==$&&A.a_() +r.ch=s +q=s}return q}, +gJp(){var s,r=this,q=r.CW +if(q===$){s=r.gxD() +r.CW!==$&&A.a_() +q=r.CW=s.ay}return q}, +gaiz(){var s,r=this,q=r.cx +if(q===$){s=r.gxD() +r.cx!==$&&A.a_() +q=r.cx=s.p3}return q}, +gcv(a){return this.gJp().cy}, +ghx(){return this.gJp().db}, +gc0(a){return B.D}, +gc9(){var s=this.gJp(),r=s.k3 +return r==null?s.b:r}, +gj0(){var s=null +return new A.dW(24,s,s,s,s,this.gJp().db,s,s,s)}, +gFd(){var s=null,r=this.gJp(),q=r.dy +return new A.dW(24,s,s,s,s,q==null?r.db:q,s,s,s)}, +gP1(){return this.gaiz().z}, +glP(){return this.gaiz().r}} +A.ag1.prototype={ +gxD(){var s,r=this,q=r.b +if(q===$){s=A.G(r.a) +r.b!==$&&A.a_() +r.b=s +q=s}return q}, +gaze(){var s,r,q=this,p=q.d +if(p===$){s=q.gxD() +q.d!==$&&A.a_() +p=q.d=s.p3}s=p.f +if(s==null)s=null +else{p=q.c +if(p===$){r=q.gxD() +q.c!==$&&A.a_() +p=q.c=r.ay}s=s.yg(p.db)}return s}, +gazf(){return B.ait}} +A.afB.prototype={ +gxD(){var s,r=this,q=r.b +if(q===$){s=A.G(r.a) +r.b!==$&&A.a_() +r.b=s +q=s}return q}, +gaze(){var s,r,q=this,p=q.d +if(p===$){s=q.gxD() +q.d!==$&&A.a_() +p=q.d=s.p3}s=p.e +if(s==null)s=null +else{p=q.c +if(p===$){r=q.gxD() +q.c!==$&&A.a_() +p=q.c=r.ay}s=s.yg(p.db)}return s}, +gazf(){return B.aiu}} +A.b_P.prototype={} +A.b_V.prototype={} +A.b0O.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.BV.prototype={ +gv(a){var s=this +return A.ad(s.gcv(s),s.ghx(),s.c,s.d,s.gc0(s),s.gc9(),s.r,s.gj0(),s.gFd(),s.y,s.z,s.Q,s.gP1(),s.glP(),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.az(b)!==A.I(s))return!1 +return b instanceof A.BV&&J.q(b.gcv(b),s.gcv(s))&&J.q(b.ghx(),s.ghx())&&b.c==s.c&&b.d==s.d&&J.q(b.gc0(b),s.gc0(s))&&J.q(b.gc9(),s.gc9())&&J.q(b.r,s.r)&&J.q(b.gj0(),s.gj0())&&J.q(b.gFd(),s.gFd())&&b.z==s.z&&b.Q==s.Q&&J.q(b.gP1(),s.gP1())&&J.q(b.glP(),s.glP())&&J.q(b.ax,s.ax)}, +gcv(a){return this.a}, +ghx(){return this.b}, +gc0(a){return this.e}, +gc9(){return this.f}, +gj0(){return this.w}, +gFd(){return this.x}, +gP1(){return this.as}, +glP(){return this.at}} +A.aKO.prototype={} +A.a5z.prototype={ +vp(){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.W(0,f) +q=Math.abs(r.a) +p=Math.abs(r.b) +o=r.gfT() +n=s.a +m=f.b +l=new A.j(n,m) +k=new A.brm(g,o) +if(q>2&&p>2){j=o*o +i=f.a +h=s.b +if(q700){s=-o/p.gajB() +o=p.a.c +r=o.x +r===$&&A.b() +if(r>0)o.WY(s) +q=s<0&&!0}else{o=p.a.c +r=o.x +r===$&&A.b() +if(r<0.5){if(r>0)o.WY(-1) +q=!0}else{o.cM(0) +q=!1}}p.a.z.$2$isClosing(a,q) +if(q)p.a.aCw()}, +bvJ(a){if(a.a===a.b&&!0)this.a.aCw() +return!1}, +b3E(a){if(a!==this.e.p(0,B.P))this.C(new A.bSV(this,a))}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=A.G(a).x2 +A.G(a) +s=A.czR(a) +g.a.toString +r=e.as +if(r==null)r=s.gZ() +q=g.a.Q +p=q==null?e.a:q +if(p==null)p=s.gcv(0) +o=e.b +if(o==null)o=s.gc9() +g.a.toString +n=e.f +if(n==null)n=s.gc0(0) +q=g.a +m=q.at +if(m==null)m=e.c +l=m==null?s.c:m +if(l==null)l=0 +k=e.w +if(k==null)k=s.w +j=q.r +if(j==null)j=!1 +if(j){i=new A.aNU(q.d,g.gb3D(),g.e,f,f,f) +if(!q.f)i=new A.ad4(i,g.gaiT(),g.gaiU(),g.gaiS(),f)}else i=f +if(!j)q=q.Vm(a) +else{i.toString +q=new A.d4(B.cW,f,B.am,B.k,A.a([i,new A.aA(B.aij,q.Vm(a),f)],t.p),f)}h=A.fX(B.K,!0,f,new A.ff(g.gbvI(),q,f,t.vu),B.i,p,l,g.d,n,k,o,f,B.bT) +h=new A.fl(B.dG,f,1,new A.fI(r,h,f),f) +return!g.a.f?h:new A.ad4(h,g.gaiT(),g.gaiU(),g.gaiS(),f)}} +A.bSW.prototype={ +$0(){this.a.e.B(0,B.hT)}, +$S:0} +A.bSU.prototype={ +$0(){this.a.e.F(0,B.hT)}, +$S:0} +A.bSV.prototype={ +$0(){var s=this.a.e +if(this.b)s.B(0,B.P) +else s.F(0,B.P)}, +$S:0} +A.aNU.prototype={ +q(a){var s,r,q,p,o,n,m=this,l=null,k=A.G(a).x2,j=A.czR(a),i=k.z +if(i==null)i=B.Yv +s=A.dS(a,B.an,t.v) +s.toString +s=s.gal() +r=i.b +q=A.ed(r/2) +p=m.e +o=t._ +n=A.d2(m.f,p,o) +p=n==null?A.d2(k.y,p,o):n +if(p==null){p=j.gRg() +o=p.dy +p=o==null?p.db:o +p=A.Y(102,p.gj(p)>>>16&255,p.gj(p)>>>8&255,p.gj(p)&255)}r=A.eu(A.bB(l,l,B.i,l,l,new A.c_(p,l,l,q,l,l,l,B.U),l,r,l,l,l,l,l,i.a),l,l,l) +return A.ip(new A.bX(A.ci(l,l,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,new A.ba(48,48,r,l),l),B.bt,l,l,new A.bXX(m),new A.bXY(m),l)}} +A.bXX.prototype={ +$1(a){return this.a.d.$1(!0)}, +$S:69} +A.bXY.prototype={ +$1(a){return this.a.d.$1(!1)}, +$S:70} +A.aLy.prototype={ +aR(a){var s=new A.ahf(B.A,this.e,this.f,!0,this.w,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sbBI(this.e) +b.sbmM(this.f) +b.sbzt(!0) +b.saKh(this.w)}} +A.ahf.prototype={ +sbBI(a){if(J.q(this.ac,a))return +this.ac=a +this.a9()}, +sbmM(a){if(this.aS===a)return +this.aS=a +this.a9()}, +sbzt(a){return}, +saKh(a){if(this.en===a)return +this.en=a +this.a9()}, +bo(a){var s=A.mT(a,1/0),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bb(a){var s=A.mT(a,1/0),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bh(a){var s=A.mT(1/0,a),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +bi(a){var s=A.mT(1/0,a),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +cX(a){return a.bd(new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d)))}, +bJ(){var s,r,q,p,o,n=this,m=t.k,l=m.a(A.H.prototype.gZ.call(n)) +n.id=l.bd(new A.V(A.Z(1/0,l.a,l.b),A.Z(1/0,l.c,l.d))) +if(n.k1$!=null){m=m.a(A.H.prototype.gZ.call(n)) +l=m.b +m=m.d +s=n.k1$ +s.toString +r=l>=l +q=r&&0>=m +s.d_(new A.aG(l,l,0,m),!q) +q=n.k1$.b +q.toString +t.r.a(q) +s=n.gu(0) +p=r&&0>=m?new A.V(A.Z(0,l,l),A.Z(0,0,m)):n.k1$.gu(0) +q.a=new A.j(0,s.b-p.b*n.aS) +o=r&&0>=m?new A.V(A.Z(0,l,l),A.Z(0,0,m)):n.k1$.gu(0) +if(!n.G.l(0,o)){n.G=o +n.ac.$1(o)}}}} +A.NQ.prototype={ +J(){return new A.XS(B.tE,B.f,this.$ti.h("XS<1>"))}} +A.XS.prototype={ +b2x(a){var s=this.c +s.toString +switch(A.G(s).w.a){case 2:case 4:return"" +case 0:case 1:case 3:case 5:return a.gbs()}}, +bx0(a){this.d=B.H}, +aAb(a,b){this.d=new A.bSX(this.a.c.k2.gj(0),B.tE)}, +bwZ(a){return this.aAb(a,null)}, +q(a){var s,r,q,p,o,n,m,l=this,k=A.dS(a,B.an,t.v) +k.toString +s=l.b2x(k) +k=l.a +r=k.c +q=r.k2 +q.toString +p=r.Go +o=k.f +n=k.r +m=k.w +return A.hC(q,new A.c7m(l,s),A.d2e(p,o,r.ac,k.x,k.y,n,!0,new A.c7n(l,a),l.gbwY(),l.gbx_(),m,k.Q))}} +A.c7n.prototype={ +$0(){if(this.a.a.c.guA())A.cN(this.b,!1).dB(null)}, +$S:0} +A.c7m.prototype={ +$2(a,b){var s=null,r=this.a +r=A.p3(new A.aLy(new A.c7l(r),r.d.ah(0,r.a.c.k2.gj(0)),!0,r.a.e,b,s),B.k,s) +return new A.bX(A.ci(s,s,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:210} +A.c7l.prototype={ +$1(a){this.a.a.c.b_m(new A.af(0,0,0,a.b))}, +$S:266} +A.a5X.prototype={ +m(){var s=this.Gn +s.k3$=$.ae() +s.k2$=0 +this.ahz()}, +b_m(a){var s=this.Gn +if(J.q(s.a,a))return!1 +s.sj(0,a) +return!0}, +gv0(a){return B.dM}, +gZv(){return B.K}, +gu0(){return this.hw}, +gq9(){var s=this.ha +return s==null?B.aC:s}, +axS(){var s=this.a +s.toString +s=A.bQ("BottomSheet",B.dM,B.K,1,null,s) +this.Go=s +return s}, +rj(a,b,c){var s=this,r=null,q=new A.Qv(s.z_,new A.e_(new A.btn(s),r),r),p=s.kv?new A.iX(!0,!0,!0,!1,B.L,!1,q,r):A.azi(q,a,!1,!1,!1,!0),o=new A.xc(s.aS.a,p,r) +return o}, +awj(){var s,r,q=this,p=q.ha,o=p==null +if(((o?B.aC:p).a>>>24&255)!==0&&!q.k1){s=q.k2 +s.toString +r=(o?B.aC:p).a +r=A.Y(0,r>>>16&255,r>>>8&255,r&255) +if(o)p=B.aC +o=t.IC.h("eb") +return A.cEM(!0,q.Gn,new A.aB(t.o.a(s),new A.eb(new A.eA(B.az),new A.fp(r,p),o),o.h("aB")),q.hw,q.rv,q.lG)}else return A.btl(!0,q.Gn,null,q.hw,null,q.rv,q.lG)}, +gu1(){return this.rv}} +A.btn.prototype={ +$1(a){var s,r,q,p,o,n=A.G(a).x2 +A.G(a) +s=A.czR(a) +r=this.a +q=n.d +if(q==null)q=n.a +if(q==null)q=s.gcv(0) +p=n.r +if(p==null)p=n.c +if(p==null)p=s.r +o=r.os +if(o==null)o=!1 +return new A.NQ(r,!0,r.en,q,p,r.jY,r.hT,r.jm,!0,o,null,r.$ti.h("NQ<1>"))}, +$S(){return this.a.$ti.h("NQ<1>(u)")}} +A.bSX.prototype={ +ah(a,b){var s=this.a +if(b#"+A.bq(this)+"("+A.r(this.a)+", "+this.b.k(0)+")"}} +A.ad4.prototype={ +q(a){return new A.mu(this.c,A.a1([B.qv,new A.dE(new A.bSS(this),new A.bST(this),t.ok)],t.u,t.xR),null,!0,null)}} +A.bSS.prototype={ +$0(){return A.czB(null,this.a,null)}, +$S:211} +A.bST.prototype={ +$1(a){var s=this.a +a.ch=s.d +a.CW=s.e +a.cx=s.f +a.fr=!0}, +$S:219} +A.bSR.prototype={ +gRg(){var s,r=this,q=r.ax +if(q===$){s=A.G(r.at) +r.ax!==$&&A.a_() +q=r.ax=s.ay}return q}, +gcv(a){return this.gRg().cy}, +gc9(){var s=this.gRg(),r=s.k3 +return r==null?s.b:r}, +gc0(a){return B.D}, +gWf(){var s=this.gRg(),r=s.dy +s=r==null?s.db:r +return A.Y(102,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gWg(){return B.Yv}, +gZ(){return B.zY}} +A.Pa.prototype={ +gv(a){var s=this +return A.ad(s.gcv(s),s.gc9(),s.c,s.d,s.e,s.gc0(s),s.r,s.w,s.x,s.gWf(),s.gWg(),s.Q,s.gZ(),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.az(b)!==A.I(r))return!1 +if(b instanceof A.Pa)if(J.q(b.gcv(b),r.gcv(r)))if(J.q(b.gc9(),r.gc9()))if(b.c==r.c)if(J.q(b.d,r.d))if(J.q(b.gc0(b),r.gc0(r)))if(J.q(b.e,r.e))if(b.r==r.r)if(J.q(b.w,r.w))if(J.q(b.gWf(),r.gWf()))if(J.q(b.gWg(),r.gWg()))s=J.q(b.gZ(),r.gZ()) +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}, +gcv(a){return this.a}, +gc9(){return this.b}, +gc0(a){return this.f}, +gWf(){return this.y}, +gWg(){return this.z}, +gZ(){return this.as}} +A.aLz.prototype={} +A.a7H.prototype={ +J(){return new A.aU8(A.b9(t.ui),B.f)}} +A.aU8.prototype={ +a8(){this.an() +this.a.toString +this.uR(B.F)}, +b1(a){var s,r=this +r.bc(a) +r.a.toString +r.uR(B.F) +s=r.uq$ +if(s.p(0,B.F)&&s.p(0,B.X))r.uR(B.X)}, +gb0p(){var s=this,r=s.uq$ +if(r.p(0,B.F))return s.a.ch +if(r.p(0,B.X))return s.a.ay +if(r.p(0,B.P))return s.a.at +if(r.p(0,B.R))return s.a.ax +return s.a.as}, +q(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=this,a5=null,a6=a4.a.r,a7=a4.uq$,a8=A.d2(a6.b,a7,t._),a9=A.d2(a4.a.db,a7,t.Zi) +a6=a4.a.cx +s=new A.j(a6.a,a6.b).X(0,4) +a6=a4.a +r=a6.cx.ME(a6.cy) +a6=a4.a.f +if(a6==null)a6=B.eu +q=A.d2(a6,a7,t.GE) +a7=s.a +a6=s.b +p=a4.a.CW.B(0,new A.af(a7,a6,a7,a6)).dV(0,B.L,B.mo) +o=a4.gb0p() +n=a4.a.r.bu(a8) +m=a4.a.w +A.G(b0) +l=A.G(b0) +k=a4.a +j=k.w==null?B.eI:B.ww +i=k.dx +h=k.go +k=k.fx +g=a4.a_1(B.R) +f=a4.aG4(B.X,a4.a.e) +e=a4.a +d=e.Q +c=e.z +b=e.x +e=e.y +a=a4.a_1(B.P) +a0=a4.a +a1=a0.c +a2=a0.d +j=A.fX(i,!0,a5,A.ly(!1,a5,!0,A.qd(A.bB(a5,A.eu(a0.dy,1,a5,1),B.i,a5,a5,a5,a5,a5,a5,a5,p,a5,a5,a5),new A.dW(a5,a5,a5,a5,a5,a8,a5,a5,a5)),a9,!0,b,k,c,e,a5,q,a5,g,f,a,a2,a5,a1,a5,a5,a5,a5,d,a5,a5),h,m,o,a5,l.k2,a9,a5,n,j) +switch(a0.fr.a){case 0:a3=new A.V(48+a7,48+a6) +break +case 1:a3=B.A +break +default:a3=a5}return new A.bX(A.ci(a5,a5,a5,a5,a5,!0,a5,a5,a5,a5,!0,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5,a5),!0,!1,!1,!1,new A.aQn(a3,new A.fI(r,j,a5),a5),a5)}} +A.aQn.prototype={ +aR(a){var s=new A.ahy(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sac5(this.e)}} +A.ahy.prototype={ +sac5(a){if(this.G.l(0,a))return +this.G=a +this.a9()}, +bo(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.ad,a,s.gbG()),this.G.a) +return 0}, +bh(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.ao,a,s.gbP()),this.G.b) +return 0}, +bb(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.aj,a,s.gbL()),this.G.a) +return 0}, +bi(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.ay,a,s.gbZ()),this.G.b) +return 0}, +ak6(a,b){var s,r,q=this.k1$ +if(q!=null){s=b.$2(q,a) +q=s.a +r=this.G +return a.bd(new A.V(Math.max(q,r.a),Math.max(s.b,r.b)))}return B.A}, +cX(a){return this.ak6(a,A.k0())}, +bJ(){var s,r=this +r.id=r.ak6(t.k.a(A.H.prototype.gZ.call(r)),A.k1()) +s=r.k1$ +if(s!=null){s=s.b +s.toString +t.r.a(s).a=B.C.Fm(t.EP.a(r.gu(0).W(0,r.k1$.gu(0))))}}, +es(a,b){var s +if(this.tv(a,b))return!0 +s=this.k1$.gu(0).nD(B.h) +return a.Lt(new A.cc5(this,s),s,A.brv(s))}} +A.cc5.prototype={ +$2(a,b){return this.a.k1$.es(a,this.b)}, +$S:19} +A.b05.prototype={} +A.aoi.prototype={ +q(a){var s,r,q,p,o,n=null,m=A.cFt(a),l=A.cFq(a),k=l.d +if(k==null)k=64 +s=l.e +if(s==null)s=36 +r=l.f +if(r==null)r=B.cp +q=m.bsC(!1,s,B.A6,k,r,B.a4c) +p=q.gdX(0).geL()/4 +k=this.as +s=A.X(k).h("O<1,c>") +o=A.cFr(new A.aLJ(n,B.a_,B.fa,B.u,B.t,n,B.x,n,A.R(new A.O(k,new A.b7p(p),s),!0,s.h("aa.E")),n),q) +switch(q.d.a){case 1:k=2*p +return new A.aA(new A.af(p,k,p,k),o,n) +case 0:return A.bB(B.C,o,B.i,n,B.zZ,n,n,n,n,n,new A.af(p,0,p,0),n,n,n)}}} +A.b7p.prototype={ +$1(a){var s=this.a +return new A.aA(new A.af(s,0,s,0),a,null)}, +$S:327} +A.aLJ.prototype={ +aR(a){var s=this,r=null,q=s.x9(a) +q.toString +q=new A.aUK(s.ax,s.e,s.f,s.r,s.w,q,s.y,s.z,B.i,A.aw(t.O5),A.aK(4,A.jT(r,r,r,r,r,B.ah,B.j,r,1,B.Y,B.a0),!1,t.mi),!0,0,r,r,A.aw(t.T)) +q.aQ() +q.L(0,r) +return q}, +b_(a,b){var s=this +b.sWa(0,s.e) +b.saC0(s.f) +b.saC1(s.r) +b.sVW(s.w) +b.sd5(s.x9(a)) +b.saGd(s.y) +b.sHP(0,s.z) +b.z_=s.ax}} +A.aUK.prototype={ +gZ(){if(this.mg)return A.J.prototype.gZ.call(this) +return A.J.prototype.gZ.call(this).BO(1/0)}, +cX(a){var s,r,q,p,o=this,n=a.b +if(o.ahh(a.BO(1/0)).a<=n)return o.ahh(a) +s=o.Y$ +for(r=A.z(o).h("ap.1"),q=0;s!=null;){q+=s.jr(a.a8D(0)).b +p=s.b +p.toString +s=r.a(p).a7$}return a.bd(new A.V(n,q))}, +bJ(){var s,r,q,p,o,n,m,l=this,k="RenderBox was not laid out: " +l.mg=!1 +l.a0T() +l.mg=!0 +if(l.gu(0).a<=l.gZ().b)l.a0T() +else{s=l.gZ().a8D(0) +switch(l.aJ.a){case 1:r=l.Y$ +break +case 0:r=l.d7$ +break +default:r=null}for(q=t.US,p=0;r!=null;){o=r.b +o.toString +q.a(o) +r.d_(s,!0) +switch(l.aq.a){case 1:switch(l.N.a){case 2:n=l.gZ() +m=r.id +if(m==null)m=A.C(A.a0(k+A.I(r).k(0)+"#"+A.bq(r))) +o.a=new A.j((n.b-m.a)/2,p) +break +case 1:n=l.gZ() +m=r.id +if(m==null)m=A.C(A.a0(k+A.I(r).k(0)+"#"+A.bq(r))) +o.a=new A.j(n.b-m.a,p) +break +case 4:case 3:case 5:case 0:o.a=new A.j(0,p) +break}break +case 0:switch(l.N.a){case 2:n=l.gZ() +m=r.id +if(m==null)m=A.C(A.a0(k+A.I(r).k(0)+"#"+A.bq(r))) +o.a=new A.j(n.b/2-m.a/2,p) +break +case 1:o.a=new A.j(0,p) +break +case 4:case 3:case 5:case 0:n=l.gZ() +m=r.id +if(m==null)m=A.C(A.a0(k+A.I(r).k(0)+"#"+A.bq(r))) +o.a=new A.j(n.b-m.a,p) +break}break}n=r.id +p+=(n==null?A.C(A.a0(k+A.I(r).k(0)+"#"+A.bq(r))):n).b +switch(l.aJ.a){case 1:r=o.a7$ +break +case 0:r=o.dJ$ +break}}l.id=l.gZ().bd(new A.V(l.gZ().b,p))}}} +A.a05.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(r))return!1 +if(b instanceof A.a05)if(b.d==r.d)if(b.e==r.e)if(J.q(b.f,r.f))s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}} +A.a04.prototype={ +ed(a){return!this.f.l(0,a.f)}} +A.aLK.prototype={} +A.d6.prototype={ +VR(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.ghp():c3,q=a5==null?s.gcv(s):a5,p=a9==null?s.ghx():a9,o=b5==null?s.gew():b5,n=b7==null?s.gc0(s):b7,m=c1==null?s.gc9():c1,l=a6==null?s.gft(s):a6,k=b6==null?s.gdX(s):b6,j=b3==null?s.glg():b3,i=a8==null?s.y:a8,h=b2==null?s.gle():b2,g=b0==null?s.ghU():b0,f=b1==null?s.gkP():b1,e=b9==null?s.ghr():b9,d=b8==null?s.gdg(s):b8,c=b4==null?s.giS():b4,b=c4==null?s.gh6():c4,a=c2==null?s.gkU():c2,a0=a4==null?s.cx:a4,a1=a7==null?s.cy:a7,a2=a3==null?s.db:a3 +return A.C8(a2,a0,q,l,a1,i,p,g,f,h,j,c,o,k,n,d,e,c0==null?s.giV():c0,m,a,r,b)}, +BP(a){var s=null +return this.VR(s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s)}, +brq(a){var s=null +return this.VR(s,s,a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +axG(a,b,c){var s=null +return this.VR(s,s,s,s,s,s,a,s,b,s,s,s,c,s,s,s,s,s,s,s,s,s)}, +dt(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.ghp() +if(a3==null)a3=a4.ghp() +s=a2.gcv(a2) +if(s==null)s=a4.gcv(a4) +r=a2.ghx() +if(r==null)r=a4.ghx() +q=a2.gew() +if(q==null)q=a4.gew() +p=a2.gc0(a2) +if(p==null)p=a4.gc0(a4) +o=a2.gc9() +if(o==null)o=a4.gc9() +n=a2.gft(a2) +if(n==null)n=a4.gft(a4) +m=a2.gdX(a2) +if(m==null)m=a4.gdX(a4) +l=a2.glg() +if(l==null)l=a4.glg() +k=a2.y +if(k==null)k=a4.y +j=a2.gle() +if(j==null)j=a4.gle() +i=a2.ghU() +if(i==null)i=a4.ghU() +h=a2.gkP() +if(h==null)h=a4.gkP() +g=a2.ghr() +if(g==null)g=a4.ghr() +f=a2.gdg(a2) +if(f==null)f=a4.gdg(a4) +e=a2.giS() +if(e==null)e=a4.giS() +d=a2.gh6() +if(d==null)d=a4.gh6() +c=a2.gkU() +if(c==null)c=a4.gkU() +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.giV() +return a2.VR(a0,b,s,n,a,k,r,i,h,j,l,e,q,m,p,f,g,a1==null?a4.giV():a1,o,c,a3,d)}, +gv(a){var s=this +return A.cs([s.ghp(),s.gcv(s),s.ghx(),s.gew(),s.gc0(s),s.gc9(),s.gft(s),s.gdX(s),s.glg(),s.y,s.gle(),s.ghU(),s.gkP(),s.ghr(),s.gdg(s),s.giS(),s.gh6(),s.gkU(),s.cx,s.cy,s.db,s.giV()])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.d6&&b.ghp()==s.ghp()&&J.q(b.gcv(b),s.gcv(s))&&J.q(b.ghx(),s.ghx())&&J.q(b.gew(),s.gew())&&b.gc0(b)==s.gc0(s)&&b.gc9()==s.gc9()&&b.gft(b)==s.gft(s)&&b.gdX(b)==s.gdX(s)&&b.glg()==s.glg()&&b.y==s.y&&b.gle()==s.gle()&&b.ghU()==s.ghU()&&b.gkP()==s.gkP()&&b.ghr()==s.ghr()&&b.gdg(b)==s.gdg(s)&&J.q(b.giS(),s.giS())&&J.q(b.gh6(),s.gh6())&&b.gkU()==s.gkU()&&J.q(b.cx,s.cx)&&b.cy==s.cy&&J.q(b.db,s.db)&&b.giV()==s.giV()}, +ghp(){return this.a}, +gcv(a){return this.b}, +ghx(){return this.c}, +gew(){return this.d}, +gc0(a){return this.e}, +gc9(){return this.f}, +gft(a){return this.r}, +gdX(a){return this.w}, +glg(){return this.x}, +gle(){return this.z}, +ghU(){return this.Q}, +gkP(){return this.as}, +ghr(){return this.at}, +gdg(a){return this.ax}, +giS(){return this.ay}, +gh6(){return this.ch}, +gkU(){return this.CW}, +giV(){return this.dx}} +A.aQN.prototype={ +a5(a){var s,r=this,q=r.a,p=q==null?null:q.a5(a) +q=r.b +s=q==null?null:q.a5(a) +q=p==null +if(q&&s==null)return null +if(q){q=s.a +return A.c8(new A.bx(A.Y(0,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),0,B.O,-1),s,r.c)}if(s==null){q=p.a +return A.c8(p,new A.bx(A.Y(0,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),0,B.O,-1),r.c)}return A.c8(p,s,r.c)}, +$ic9:1} +A.aLM.prototype={} +A.p1.prototype={ +J(){return new A.adc(null,null,B.f)}} +A.adc.prototype={ +aaU(){this.C(new A.bTL())}, +gkk(){var s=this.a.z +if(s==null){s=this.r +s.toString}return s}, +Nh(){var s,r=this +if(r.a.z==null)r.r=A.Kf(null) +s=r.gkk() +s.ic(0,B.F,!(r.a.c!=null||!1)) +r.gkk().a3(0,r.gCm())}, +a8(){this.an() +this.Nh()}, +b1(a){var s,r=this +r.bc(a) +s=a.z +if(r.a.z!=s){if(s!=null)s.O(0,r.gCm()) +if(r.a.z!=null){s=r.r +if(s!=null){s.k3$=$.ae() +s.k2$=0}r.r=null}r.Nh()}s=r.a.c!=null||!1 +if(s!==(a.c!=null||!1)){s=r.gkk() +s.ic(0,B.F,!(r.a.c!=null||!1)) +if(!(r.a.c!=null||!1))r.gkk().ic(0,B.X,!1)}}, +m(){var s,r=this +r.gkk().O(0,r.gCm()) +s=r.r +if(s!=null){s.k3$=$.ae() +s.k2$=0}s=r.d +if(s!=null)s.m() +r.aT8()}, +q(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.bTI(c4.r,c4.OS(c7),c2.a.rp(c7)),c6=new A.bTJ(c2,c5) +c4=t.PM +s=c6.$1$1(new A.bTl(),c4) +r=c6.$1$1(new A.bTm(),t.p8) +q=t._ +p=c6.$1$1(new A.bTn(),q) +o=c6.$1$1(new A.bTy(),q) +n=c6.$1$1(new A.bTB(),q) +m=c6.$1$1(new A.bTC(),q) +l=c6.$1$1(new A.bTD(),t.pc) +k=t.tW +j=c6.$1$1(new A.bTE(),k) +i=c6.$1$1(new A.bTF(),k) +h=c6.$1$1(new A.bTG(),k) +g=c6.$1$1(new A.bTH(),q) +f=c6.$1$1(new A.bTo(),c4) +e=c6.$1$1(new A.bTp(),t.oI) +d=c6.$1$1(new A.bTq(),t.KX) +c=c5.$1$1(new A.bTr(),t.X3) +b=c5.$1$1(new A.bTs(),t.Od) +a=c5.$1$1(new A.bTt(),t.Tu) +a0=c5.$1$1(new A.bTu(),t.y) +a1=c5.$1$1(new A.bTv(),t.pC) +a2=new A.j(c.a,c.b).X(0,4) +a3=c5.$1$1(new A.bTw(),t.Ya) +c4=j.a +q=j.b +a4=c.ME(new A.aG(c4,h.a,q,h.b)) +if(i!=null){a5=a4.bd(i) +c4=a5.a +if(isFinite(c4))a4=a4.VQ(c4,c4) +c4=a5.b +if(isFinite(c4))a4=a4.a8I(c4,c4)}a6=a2.b +c4=a2.a +a7=Math.max(0,c4) +a8=l.B(0,new A.af(a7,a6,a7,a6)).dV(0,B.L,B.mo) +if(a.a>0){q=c2.e +if(q!=null){k=c2.f +if(k!=null)if(q!==s)if(k.gj(k)!==p.gj(p)){q=c2.f +q=(q.gj(q)>>>24&255)/255===1&&(p.gj(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.q(q==null?c3:q.e,a)){q=c2.d +if(q!=null)q.m() +q=A.bQ(c3,a,c3,1,c3,c2) +q.cY() +k=q.f0$ +k.b=!0 +k.a.push(new A.bTx(c2)) +c2.d=q}p=c2.f +c2.d.sj(0,0) +c2.d.cM(0)}c2.e=s +c2.f=p +s.toString +q=r==null?c3:r.bu(o) +k=d.n0(e) +a9=p==null?B.eI:B.ww +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.n0(e) +b8=c2.gkk() +b9=g==null?o:g +a1.toString +c0=c2.a +a9=A.fX(a,!0,c3,A.ly(!1,c3,b6,A.qd(new A.aA(a8,new A.fl(a1,1,1,c0.as,c3),c3),new A.dW(f,c3,c3,c3,c3,b9,c3,c3,c3)),b7,a0,c3,b5,B.D,c3,c3,new A.aRV(new A.bTz(c5)),c3,b0,c3,b4,b3,c3,b2,c3,c3,new A.by(new A.bTA(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.A +break +default:c1=c3}c4=c0.Q +q=c0.c!=null||!1 +return new A.bX(A.ci(c3,c3,c3,c3,c3,c4,c3,c3,c3,c3,q,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,c3,c3),!0,!1,!1,!1,new A.aQo(c1,new A.fI(a4,a9,c3),c3),c3)}} +A.bTL.prototype={ +$0(){}, +$S:0} +A.bTI.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:328} +A.bTJ.prototype={ +$1$1(a,b){return this.b.$1$1(new A.bTK(this.a,a,b),b)}, +$1(a){return this.$1$1(a,t.z)}, +$S:1454} +A.bTK.prototype={ +$1(a){var s=this.b.$1(a) +return s==null?null:s.a5(this.a.gkk().a)}, +$S(){return this.c.h("0?(d6?)")}} +A.bTl.prototype={ +$1(a){return a==null?null:a.gft(a)}, +$S:221} +A.bTm.prototype={ +$1(a){return a==null?null:a.ghp()}, +$S:1475} +A.bTn.prototype={ +$1(a){return a==null?null:a.gcv(a)}, +$S:92} +A.bTy.prototype={ +$1(a){return a==null?null:a.ghx()}, +$S:92} +A.bTB.prototype={ +$1(a){return a==null?null:a.gc0(a)}, +$S:92} +A.bTC.prototype={ +$1(a){return a==null?null:a.gc9()}, +$S:92} +A.bTD.prototype={ +$1(a){return a==null?null:a.gdX(a)}, +$S:1486} +A.bTE.prototype={ +$1(a){return a==null?null:a.glg()}, +$S:222} +A.bTF.prototype={ +$1(a){return a==null?null:a.y}, +$S:222} +A.bTG.prototype={ +$1(a){return a==null?null:a.gle()}, +$S:222} +A.bTH.prototype={ +$1(a){return a==null?null:a.ghU()}, +$S:92} +A.bTo.prototype={ +$1(a){return a==null?null:a.gkP()}, +$S:221} +A.bTp.prototype={ +$1(a){return a==null?null:a.ghr()}, +$S:225} +A.bTq.prototype={ +$1(a){return a==null?null:a.gdg(a)}, +$S:237} +A.bTz.prototype={ +$1(a){return this.a.$1$1(new A.bTj(a),t.Pb)}, +$S:343} +A.bTj.prototype={ +$1(a){var s +if(a==null)s=null +else{s=a.giS() +s=s==null?null:s.a5(this.a)}return s}, +$S:1526} +A.bTA.prototype={ +$1(a){return this.a.$1$1(new A.bTi(a),t.G)}, +$S:21} +A.bTi.prototype={ +$1(a){var s +if(a==null)s=null +else{s=a.gew() +s=s==null?null:s.a5(this.a)}return s}, +$S:1528} +A.bTr.prototype={ +$1(a){return a==null?null:a.gh6()}, +$S:1543} +A.bTs.prototype={ +$1(a){return a==null?null:a.gkU()}, +$S:1546} +A.bTt.prototype={ +$1(a){return a==null?null:a.cx}, +$S:1552} +A.bTu.prototype={ +$1(a){return a==null?null:a.cy}, +$S:1559} +A.bTv.prototype={ +$1(a){return a==null?null:a.db}, +$S:1561} +A.bTw.prototype={ +$1(a){return a==null?null:a.giV()}, +$S:1564} +A.bTx.prototype={ +$1(a){if(a===B.a9)this.a.C(new A.bTk())}, +$S:10} +A.bTk.prototype={ +$0(){}, +$S:0} +A.aRV.prototype={ +a5(a){var s=this.a.$1(a) +s.toString +return s}, +gyE(){return"ButtonStyleButton_MouseCursor"}} +A.aQo.prototype={ +aR(a){var s=new A.ahz(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sac5(this.e)}} +A.ahz.prototype={ +sac5(a){if(this.G.l(0,a))return +this.G=a +this.a9()}, +bo(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.ad,a,s.gbG()),this.G.a) +return 0}, +bh(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.ao,a,s.gbP()),this.G.b) +return 0}, +bb(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.aj,a,s.gbL()),this.G.a) +return 0}, +bi(a){var s=this.k1$ +if(s!=null)return Math.max(s.aw(B.ay,a,s.gbZ()),this.G.b) +return 0}, +aj7(a,b){var s,r,q=this.k1$ +if(q!=null){s=b.$2(q,a) +q=s.a +r=this.G +return a.bd(new A.V(Math.max(q,r.a),Math.max(s.b,r.b)))}return B.A}, +cX(a){return this.aj7(a,A.k0())}, +bJ(){var s,r=this +r.id=r.aj7(t.k.a(A.H.prototype.gZ.call(r)),A.k1()) +s=r.k1$ +if(s!=null){s=s.b +s.toString +t.r.a(s).a=B.C.Fm(t.EP.a(r.gu(0).W(0,r.k1$.gu(0))))}}, +es(a,b){var s +if(this.tv(a,b))return!0 +s=this.k1$.gu(0).nD(B.h) +return a.Lt(new A.cc6(this,s),s,A.brv(s))}} +A.cc6.prototype={ +$2(a,b){return this.a.k1$.es(a,this.b)}, +$S:19} +A.akG.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aoj.prototype={ +H(){return"ButtonTextTheme."+this.b}} +A.b7o.prototype={ +H(){return"ButtonBarLayoutBehavior."+this.b}} +A.a06.prototype={ +x0(a,b,c){return A.cFr(c,this.w)}, +ed(a){return!this.w.l(0,a.w)}} +A.aok.prototype={ +gdX(a){var s=this.e +if(s!=null)return s +switch(this.c.a){case 0:case 1:return B.f0 +case 2:return B.nk}}, +gdg(a){var s=this.f +if(s!=null)return s +switch(this.c.a){case 0:case 1:return B.X6 +case 2:return B.pR}}, +aeu(a){var s=this.at.a +return s}, +aeD(a){var s,r,q=this +if(A.I(a)===B.buu)return null +s=q.w +r=s==null +if(!r)return r?t.G.a(s):s +switch(q.c.a){case 0:case 1:s=q.at.b +return s +case 2:if(r)s=q.at.b +return s}}, +a_O(a){var s,r=this +switch(r.c.a){case 0:return r.aeu(a)===B.aN?B.r:B.aL +case 1:return r.at.f +case 2:s=r.aeD(a) +return(s!=null?A.FC(s)===B.aN:r.aeu(a)===B.aN)?B.r:B.B}}, +aJ5(a){var s=this.e +if(s!=null)return s +switch(this.c.a){case 0:case 1:return B.f0 +case 2:return B.nk}}, +axL(a,b,c,d,e,f,g){var s=this,r=g==null?s.c:g,q=d==null?s.d:d,p=e==null?s.a:e,o=c==null?s.b:c,n=f==null?s.gdX(0):f,m=s.gdg(0),l=b==null?s.at:b +return A.cFs(a===!0,s.w,l,s.x,s.y,o,s.Q,s.z,q,s.ax,p,n,m,s.as,r)}, +bsC(a,b,c,d,e,f){return this.axL(a,null,b,c,d,e,f)}, +a8u(a){var s=null +return this.axL(s,a,s,s,s,s,s)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.aok&&b.c===s.c&&b.a===s.a&&b.b===s.b&&b.gdX(0).l(0,s.gdX(0))&&b.gdg(0).l(0,s.gdg(0))&&J.q(b.w,s.w)&&J.q(b.y,s.y)&&J.q(b.z,s.z)&&J.q(b.at,s.at)&&b.ax==s.ax}, +gv(a){var s=this +return A.ad(s.c,s.a,s.b,s.gdX(0),s.gdg(0),!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.aLN.prototype={} +A.Hy.prototype={ +J(){var s=t.A +return new A.adg(new A.aR(null,s),new A.aR(null,s),B.f)}, +aCz(a){return this.r.$1(a)}} +A.adg.prototype={ +a8(){var s,r,q=this +q.an() +s=q.a +q.e=s.x +r=s.c +if(r==null)r=s.f +s=A.cd(A.b7(r),A.bp(r),1,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +q.f=new A.am(s,!1) +s=q.a.c +if(s!=null)q.r=s}, +c5(){var s,r,q,p=this +p.dH() +s=p.c +s.toString +s=A.dS(s,B.an,t.v) +s.toString +p.y=s +s=p.c.a0(t.I) +s.toString +p.z=s.w +if(!p.d&&p.a.c!=null){p.d=!0 +r=A.bbM(p.a.f,p.r)?", "+p.y.gcw():"" +s=p.y +q=p.r +q.toString +A.Fd(s.aaG(q)+r,p.z,B.kf)}}, +a6T(){var s=this.c +s.toString +switch(A.G(s).w.a){case 0:case 1:case 3:case 5:A.av6() +break +case 2:case 4:break}}, +b4F(a){this.a6T() +this.C(new A.bTO(this,a))}, +an3(a){this.C(new A.bTP(this,a))}, +b76(a){var s,r,q,p,o=this,n=null,m={} +m.a=a +o.a6T() +s=A.bbL(A.b7(a),A.bp(a)) +r=o.r +r=r==null?n:A.cL(r) +if(r==null)r=1 +a=A.a1B(a,Math.min(r,s),n,n,n,n,n) +m.a=a +r=o.a +q=r.d +p=a.a +if(pr.a)m.a=r}o.C(new A.bTQ(m,o))}, +b3q(a){this.a6T() +this.C(new A.bTN(this,a))}, +aX5(){var s,r,q,p=this,o=p.e +o===$&&A.b() +switch(o.a){case 0:o=p.f +o===$&&A.b() +s=p.a +return new A.age(o,s.f,s.d,s.e,p.r,p.gb3p(),p.gb4G(),s.y,p.w) +case 1:o=p.a +s=o.f +r=o.d +o=o.e +q=p.f +q===$&&A.b() +s=A.cd(A.b7(s),A.bp(s),A.cL(s),0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +return new A.aA(B.aik,new A.ack(new A.am(s,!1),r,o,q,p.gb75(),p.x),null)}}, +q(a){var s,r,q=this,p=null,o=q.aX5(),n=q.e +n===$&&A.b() +s=q.y +s===$&&A.b() +r=q.f +r===$&&A.b() +return new A.d4(B.ar,p,B.am,B.k,A.a([new A.ba(p,346,o,p),new A.ae6(n,s.X2(r),new A.bTR(q),p)],t.p),p)}} +A.bTO.prototype={ +$0(){var s,r,q=this.a,p=this.b +q.e=p +s=q.r +if(s!=null){r=q.y +if(p===B.iT){r===$&&A.b() +p=r.X2(s) +q=q.z +q===$&&A.b() +A.Fd(p,q,B.kf)}else{r===$&&A.b() +p=r.aA0(s) +q=q.z +q===$&&A.b() +A.Fd(p,q,B.kf)}}}, +$S:0} +A.bTP.prototype={ +$0(){var s,r=this.a,q=r.f +q===$&&A.b() +s=this.b +if(A.b7(q)!==A.b7(s)||A.bp(q)!==A.bp(s)){q=A.cd(A.b7(s),A.bp(s),1,0,0,0,0,!1) +if(!A.bI(q))A.C(A.bV(q)) +r.f=new A.am(q,!1) +r.a.toString}}, +$S:0} +A.bTQ.prototype={ +$0(){var s,r,q,p=this.b +p.e=B.iT +s=this.a +p.an3(s.a) +r=s.a +q=p.a.y +if(q==null||q.$1(r)){s=s.a +p.r=s +p.a.aCz(s)}}, +$S:0} +A.bTN.prototype={ +$0(){var s=this.a,r=this.b +s.r=r +s.a.aCz(r)}, +$S:0} +A.bTR.prototype={ +$0(){var s=this.a,r=s.e +r===$&&A.b() +s.b4F(r===B.iT?B.tH:B.iT)}, +$S:0} +A.ae6.prototype={ +J(){return new A.aN8(null,null,B.f)}} +A.aN8.prototype={ +a8(){var s=this +s.an() +s.d=A.bQ(null,B.K,null,0.5,s.a.c===B.tH?0.5:0,s)}, +b1(a){var s,r +this.bc(a) +s=this.a.c +if(a.c===s)return +r=this.d +if(s===B.tH){r===$&&A.b() +r.cM(0)}else{r===$&&A.b() +r.eI(0)}}, +q(a){var s,r,q,p,o=null,n=A.G(a),m=A.G(a) +n=n.ay.db +s=A.Y(153,n.gj(n)>>>16&255,n.gj(n)>>>8&255,n.gj(n)&255) +n=A.dS(a,B.an,t.v) +n.toString +n=n.gcg() +r=this.a +q=r.e +r=r.d +m=m.p3.x +m=A.bv(r,o,o,o,B.bf,o,o,o,o,m==null?o:m.bu(s),o,o,o,o,o) +r=this.d +r===$&&A.b() +p=t.p +q=A.ly(!1,o,!0,new A.aA(B.cp,A.eq(A.a([new A.iO(1,B.c1,m,o),A.aDK(B.C,A.b2(B.DF,s,o,o,o,o,o,o,o,o,o),o,r)],p),B.t,o,B.o,B.u,o,o,B.x),o),o,!0,o,o,o,o,o,o,o,o,o,o,o,o,q,o,o,o,o,o,o,o) +n=A.a([new A.iO(1,B.c1,new A.bX(A.ci(o,o,o,o,o,!0,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,n,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,!0,!1,new A.ba(o,52,q,o),o),o)],p) +if(this.a.c===B.iT)n.push(B.bmy) +return A.bB(o,A.eq(n,B.t,o,B.o,B.u,o,o,B.x),B.i,o,o,o,o,52,o,o,B.CV,o,o,o)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aTk()}} +A.age.prototype={ +J(){return new A.agf(new A.aR(null,t.A),B.f)}, +nT(a){return this.w.$1(a)}, +bBU(a){return this.x.$1(a)}} +A.agf.prototype={ +a8(){var s,r,q=this +q.an() +s=q.a +r=s.c +q.e=r +q.f=A.KO(A.cw9(s.e,r),1) +q.x=B.aZC +r=t.h +s=t.b +q.y=A.a1([B.yf,new A.ej(q.gb47(),new A.bN(A.a([],r),s),t._M),B.yg,new A.ej(q.gb49(),new A.bN(A.a([],r),s),t.Dd),B.m7,new A.ej(q.gb3v(),new A.bN(A.a([],r),s),t.Nv)],t.u,t.od) +q.z=A.hH(!0,"Day Grid",!0,!0,null,null,!1)}, +c5(){var s,r=this +r.dH() +s=r.c +s.toString +s=A.dS(s,B.an,t.v) +s.toString +r.r=s +s=r.c.a0(t.I) +s.toString +r.w=s.w}, +m(){var s=this.f +s===$&&A.b() +s.m() +s=this.z +s===$&&A.b() +s.m() +this.ap()}, +b3o(a){this.Q=a +this.a.nT(a)}, +b4I(a){this.C(new A.c7w(this,a))}, +a2Y(a,b){var s,r,q,p=A.bbL(A.b7(a),A.bp(a)) +if(b<=p){s=A.cd(A.b7(a),A.bp(a),b,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +r=new A.am(s,!1) +if(this.b8f(r))return r}for(q=1;q<=p;++q){s=A.cd(A.b7(a),A.bp(a),q,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +r=new A.am(s,!1) +s=this.a.y +if(s==null||s.$1(r))return r}return null}, +b55(){if(!this.ga43()){var s=this.f +s===$&&A.b() +s.aCp(B.az,B.K)}}, +b5H(){if(!this.ga42()){var s=this.f +s===$&&A.b() +s.aDq(B.az,B.K)}}, +ga42(){var s,r=this.e +r===$&&A.b() +s=this.a.e +s=A.cd(A.b7(s),A.bp(s),1,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +return!(r.a>s)}, +ga43(){var s,r=this.e +r===$&&A.b() +s=this.a.f +s=A.cd(A.b7(s),A.bp(s),1,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +return!(r.a=o.e.a&&n<=o.f.a))break +o=o.y +if(o==null||o.$1(r))return r +if(l)if(p)m=B.jX +else m=q?B.io:b +else m=b +o=B.QJ.i(0,m) +o.toString +o=A.cd(A.b7(r),A.bp(r),A.cL(r)+o,0,0,0,0,!1) +if(!A.bI(o))A.C(A.bV(o)) +r=new A.am(o,!1)}return null}, +b8f(a){var s=this.a.y +return s==null||s.$1(a)}, +aWR(a,b){var s,r=this.a.e +r=A.cd(A.b7(r),A.bp(r)+b,1,0,0,0,0,!1) +if(!A.bI(r))A.C(A.bV(r)) +s=new A.am(r,!1) +r=this.a +return new A.ae8(r.r,r.d,this.gb3n(),r.e,r.f,s,r.y,new A.ca(s,t.tJ))}, +q(a){var s,r,q,p,o,n,m,l=this,k=null,j=A.G(a).ay.db,i=A.Y(153,j.gj(j)>>>16&255,j.gj(j)>>>8&255,j.gj(j)&255) +if(l.ga42())j=k +else{j=l.r +j===$&&A.b() +j=j.gcz()}j=A.lx(k,!1,i,k,k,k,k,k,k,k,B.azW,k,k,k,k,l.ga42()?k:l.gb5G(),k,k,k,k,k,j,k) +if(l.ga43())s=k +else{s=l.r +s===$&&A.b() +s=s.gbI()}r=t.p +s=A.bB(k,A.eq(A.a([B.hf,j,A.lx(k,!1,i,k,k,k,k,k,k,k,B.azg,k,k,k,k,l.ga43()?k:l.gb54(),k,k,k,k,k,s,k)],r),B.t,k,B.o,B.u,k,k,B.x),B.i,k,k,k,k,52,k,k,B.CV,k,k,k) +j=l.x +q=l.y +p=l.z +p===$&&A.b() +o=p.ge2()?l.Q:k +n=l.f +n===$&&A.b() +m=l.a +r=A.cS(A.a([s,A.f7(A.aui(q,!1,new A.aeR(o,A.aAD(B.k,n,l.gaWQ(),A.cw9(m.e,m.f)+1,l.d,l.gb4H(),!0,!0,k,!1,k,B.a_),k),!0,p,!0,B.bt,l.gb45(),k,k,j),1,k)],r),B.t,k,B.o,B.u,k,k,B.x) +return new A.bX(A.ci(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,k,k),!1,!1,!1,!1,r,k)}} +A.c7w.prototype={ +$0(){var s,r,q=this.a,p=q.a.e +p=A.cd(A.b7(p),A.bp(p)+this.b,1,0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +s=new A.am(p,!1) +p=q.e +p===$&&A.b() +if(!A.a1C(p,s)){p=A.cd(A.b7(s),A.bp(s),1,0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +p=new A.am(p,!1) +q.e=p +q.a.bBU(p) +p=q.Q +if(p!=null&&!A.a1C(p,q.e)){r=q.e +p.toString +q.Q=q.a2Y(r,A.cL(p))}p=q.r +p===$&&A.b() +p=p.X2(q.e) +q=q.w +q===$&&A.b() +A.Fd(p,q,B.kf)}}, +$S:0} +A.c7v.prototype={ +$0(){var s,r,q,p +if(this.b&&this.a.Q==null){s=this.a +r=s.a +q=r.r +p=s.e +p===$&&A.b() +if(A.a1C(q,p))s.Q=q +else{r=r.d +if(A.a1C(r,p))s.Q=s.a2Y(p,A.cL(r)) +else s.Q=s.a2Y(p,1)}}}, +$S:0} +A.c7u.prototype={ +$0(){var s,r,q=this.a,p=q.Q +p.toString +s=q.bav(p,this.b.a) +if(s!=null){q.Q=s +p=q.e +p===$&&A.b() +if(!A.a1C(s,p)){r=A.cw9(q.a.e,s) +q=q.f +q===$&&A.b() +q.Bt(r,B.az,B.K)}}}, +$S:0} +A.aeR.prototype={ +ed(a){return!A.bbM(this.f,a.f)}} +A.ae8.prototype={ +J(){return new A.aNb(B.f)}} +A.aNb.prototype={ +a8(){var s,r,q,p,o +this.an() +s=this.a.w +r=A.bbL(A.b7(s),A.bp(s)) +q=J.d1(r,t.mx) +for(p=0;ph.r.a))if(!(pA.b7(o.e) +o=A.b9(t.ui) +if(i)o.B(0,B.F) +if(k)o.B(0,B.S) +n=t._ +h=q.$1$2(new A.cnh(j),o,n) +g=q.$1$2(new A.cni(j),o,n) +if(j){f=a1.ch +q=(f==null?s.gHU():f).bu(h) +e=new A.eR(q,q,q,q)}else e=a +q=A.ed(18) +n=a1.CW +if(n==null)n=s.gPp() +d=n==null?a:n.yg(h) +n=A.bv(B.d.k(m),a,a,a,a,a,a,a,a,d,a,a,a,a,a) +c=A.eu(A.bB(a,A.eu(new A.bX(A.ci(a,a,a,a,a,!0,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,k,a,a,a,a,a,a,a,a),!1,!1,!1,!1,n,a),a,a,a),B.i,a,a,new A.c_(g,a,e,q,a,a,a,B.U),a,36,a,a,a,a,a,72),a,a,a) +if(i)c=new A.pa(!0,c,a) +else{q=A.bp(b.a.f) +q=A.cd(m,q,1,0,0,0,0,!1) +if(!A.bI(q))A.C(A.bV(q)) +a0.a=new A.am(q,!1) +n=b.a.d +n=A.cd(A.b7(n),A.bp(n),1,0,0,0,0,!1) +if(!A.bI(n))A.C(A.bV(n)) +if(qn.a){q=A.cd(m,A.bp(n),1,0,0,0,0,!1) +if(!A.bI(q))A.C(A.bV(q)) +a0.a=new A.am(q,!1)}}q=b.e +q.sj(0,o) +c=A.ly(!1,a,!0,c,a,!0,a,a,a,a,new A.ca(m,t.zm),a,a,a,a,a,a,a,new A.cnj(a0,b),a,a,new A.by(new A.cnk(r),t.U),a,a,a,q)}return c}, +gSs(){var s=this.a +return A.b7(s.e)-A.b7(s.d)+1}, +q(a){var s,r,q=this,p=null,o=q.d +q.a.toString +s=Math.max(q.gSs(),18) +r=o==null&&!0 +r=r?B.hl:p +return A.cS(A.a([B.bp,A.f7(new A.a3N(B.a64,new A.pu(q.gaXs(),s,!0,!0,!0,0,A.Ou(),p),B.f0,B.v,!1,o,p,r,p,!1,p,0,p,s,B.m,B.c5,p,B.k,p),1,p),B.bp],t.p),B.t,p,B.o,B.u,p,p,B.x)}} +A.cnl.prototype={ +$1$1(a,b){var s=a.$1(this.a) +return s==null?a.$1(this.b):s}, +$1(a){return this.$1$1(a,t.z)}, +$S:351} +A.cnm.prototype={ +$1$2(a,b,c){return this.a.$1$1(new A.cnn(a,b,c),c)}, +$2(a,b){return this.$1$2(a,b,t.z)}, +$S:353} +A.cnn.prototype={ +$1(a){var s=this.a.$1(a) +return s==null?null:s.a5(this.b)}, +$S(){return this.c.h("0?(m8?)")}} +A.cnh.prototype={ +$1(a){var s +if(this.a)s=a.gHV() +else s=a.gPn() +return s}, +$S:148} +A.cni.prototype={ +$1(a){var s +if(this.a)s=a.gHT() +else s=a.gPm() +return s}, +$S:148} +A.cnk.prototype={ +$1(a){return this.a.$1$1(new A.cng(a),t.G)}, +$S:21} +A.cng.prototype={ +$1(a){var s=a.gPo() +s=s==null?null:s.a5(this.a) +return s}, +$S:360} +A.cnj.prototype={ +$0(){return this.b.a.nT(this.a.a)}, +$S:0} +A.cnf.prototype={ +PI(a){var s=(a.w-16)/3 +return new A.a9R(3,52,s+8,52,s,A.Zg(a.x))}, +nt(a){return!1}} +A.akS.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.adh.prototype={ +H(){return"_CardVariant."+this.b}} +A.pZ.prototype={ +q(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=A.G(a).y2 +A.G(a) +switch(k.as.a){case 0:s=new A.bTX(a,B.i,j,j,j,1,B.iV,j) +break +case 1:s=new A.c_Z(a,B.i,j,j,j,0,B.iV,j) +break +case 2:s=new A.c8P(a,B.i,j,j,j,0,B.iV,j) +break +default:s=j}r=k.y +if(r==null)r=i.f +if(r==null){r=s.f +r.toString}q=k.c +if(q==null)q=i.b +if(q==null)q=s.ga6(s) +p=i.c +if(p==null)p=s.gc0(s) +o=i.d +if(o==null)o=s.gc9() +n=k.f +if(n==null)n=i.e +if(n==null){n=s.e +n.toString}m=k.r +if(m==null)m=i.r +if(m==null)m=s.gdg(s) +l=k.x +if(l==null)l=i.a +if(l==null){l=s.a +l.toString}r=A.bB(j,A.fX(B.K,!0,j,new A.bX(A.ci(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,j,j,j,j,j,j,j,j,j,j,j,j,j),!1,!1,!1,!1,k.Q,j),l,q,n,j,p,m,o,j,B.fZ),B.i,j,j,j,j,j,j,r,j,j,j,j) +return new A.bX(A.ci(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,j,j,j,j,j,j,j,j,j,j,j,j,j),!0,!1,!1,!1,r,j)}} +A.bTX.prototype={ +gr5(){var s,r=this,q=r.x +if(q===$){s=A.G(r.w) +r.x!==$&&A.a_() +q=r.x=s.ay}return q}, +ga6(a){return this.gr5().cy}, +gc0(a){var s=this.gr5().fy +return s==null?B.B:s}, +gc9(){var s=this.gr5(),r=s.k3 +return r==null?s.b:r}, +gdg(a){return B.pS}} +A.c_Z.prototype={ +gr5(){var s,r=this,q=r.x +if(q===$){s=A.G(r.w) +r.x!==$&&A.a_() +q=r.x=s.ay}return q}, +ga6(a){var s=this.gr5(),r=s.dx +return r==null?s.cy:r}, +gc0(a){var s=this.gr5().fy +return s==null?B.B:s}, +gc9(){return B.D}, +gdg(a){return B.pS}} +A.c8P.prototype={ +gr5(){var s,r=this,q=r.x +if(q===$){s=A.G(r.w) +r.x!==$&&A.a_() +q=r.x=s.ay}return q}, +ga6(a){return this.gr5().cy}, +gc0(a){var s=this.gr5().fy +return s==null?B.B:s}, +gc9(){var s=this.gr5(),r=s.k3 +return r==null?s.b:r}, +gdg(a){var s=this.gr5(),r=s.fx +return B.pS.n0(new A.bx(r==null?s.cx:r,1,B.O,-1))}} +A.HA.prototype={ +gv(a){var s=this +return A.ad(s.a,s.ga6(s),s.gc0(s),s.gc9(),s.e,s.f,s.gdg(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)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.HA&&b.a==s.a&&J.q(b.ga6(b),s.ga6(s))&&J.q(b.gc0(b),s.gc0(s))&&J.q(b.gc9(),s.gc9())&&b.e==s.e&&J.q(b.f,s.f)&&J.q(b.gdg(b),s.gdg(s))}, +ga6(a){return this.b}, +gc0(a){return this.c}, +gc9(){return this.d}, +gdg(a){return this.r}} +A.aLR.prototype={} +A.bU8.prototype={ +H(){return"_CheckboxType."+this.b}} +A.HI.prototype={ +J(){return new A.aLV(new A.aLT($.ae()),$,$,$,$,$,$,$,$,$,null,!1,!1,null,null,B.f)}} +A.aLV.prototype={ +a8(){this.aTb() +this.e=this.a.c}, +b1(a){var s,r=this +r.bc(a) +s=a.c +if(s!==r.a.c){r.e=s +r.UY()}}, +m(){this.d.m() +this.aTa()}, +gjo(){return this.a.d}, +gadM(){this.a.toString +return!1}, +gj(a){return this.a.c}, +gauu(){return new A.by(new A.bU6(this),t.U)}, +EY(a,b){if(a instanceof A.afV)return A.d2(a,b,t.oI) +if(!b.p(0,B.S))return a +return null}, +q(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,a7=this,a8=null +a7.a.toString +switch(1){case 1:switch(A.G(a9).w.a){case 0:case 1:case 3:case 5:break +case 2:case 4:s=a7.a +return new A.a1b(s.c,s.d,a8,a8,!1,a8,a8,!1,a8,a8,a8)}break}a9.a0(t.ES) +r=A.G(a9).c_ +A.G(a9) +q=new A.bU1(A.G(a9),A.G(a9).ay,a8,a8,a8,a8,a8,a8,a8,a8,a8) +a7.a.toString +p=q.gwx() +a7.a.toString +o=q.gh6() +switch(p.a){case 0:n=B.Yx +break +case 1:n=B.Yw +break +default:n=a8}n=n.S(0,new A.j(o.a,o.b).X(0,4)) +m=a7.gmz() +m.B(0,B.S) +l=a7.gmz() +l.F(0,B.S) +a7.a.toString +k=a7.gauu().a.$1(m) +if(k==null){s=r.b +k=s==null?a8:s.a5(m)}s=k==null +if(s){j=q.gpm().a.$1(m) +j.toString +i=j}else i=k +a7.a.toString +h=a7.gauu().a.$1(l) +if(h==null){j=r.b +h=j==null?a8:j.a5(l)}j=h==null +if(j){g=q.gpm().a.$1(l) +g.toString +f=g}else f=h +a7.a.toString +g=a7.EY(a8,m) +e=g==null?a7.EY(r.x,m):g +if(e==null){g=a7.EY(q.ghr(),m) +g.toString +e=g}a7.a.toString +g=a7.EY(a8,l) +d=g==null?a7.EY(r.x,l):g +if(d==null){g=a7.EY(q.ghr(),l) +g.toString +d=g}c=a7.gmz() +c.B(0,B.R) +a7.a.toString +g=r.d +b=g==null?a8:g.a5(c) +a=b +if(a==null){b=q.gew().a.$1(c) +b.toString +a=b}a0=a7.gmz() +a0.B(0,B.P) +a7.a.toString +b=g==null?a8:g.a5(a0) +a1=b +if(a1==null){b=q.gew().a.$1(a0) +b.toString +a1=b}m.B(0,B.X) +a7.a.toString +b=g==null?a8:g.a5(m) +if(b==null){s=s?a8:A.Y(31,k.gj(k)>>>16&255,k.gj(k)>>>8&255,k.gj(k)&255) +a2=s}else a2=b +if(a2==null){s=q.gew().a.$1(m) +s.toString +a2=s}l.B(0,B.X) +a7.a.toString +s=g==null?a8:g.a5(l) +if(s==null){s=j?a8:A.Y(31,h.gj(h)>>>16&255,h.gj(h)>>>8&255,h.gj(h)&255) +a3=s}else a3=s +if(a3==null){s=q.gew().a.$1(l) +s.toString +a3=s}if(a7.Ch$!=null){a1=a7.gmz().p(0,B.S)?a2:a3 +a=a7.gmz().p(0,B.S)?a2:a3}a7.a.toString +a4=a7.gmz() +a7.a.toString +s=r.c +s=s==null?a8:s.a5(a4) +a5=s +if(a5==null){s=q.gvW().a5(a4) +s.toString +a5=s}a7.a.toString +a6=r.e +if(a6==null)a6=q.gnv() +s=a7.a.c +j=a7.d +g=a7.rz$ +g===$&&A.b() +j.sb8(0,g) +g=a7.MW$ +g===$&&A.b() +j.saEd(g) +g=a7.MY$ +g===$&&A.b() +j.saEf(g) +g=a7.MX$ +g===$&&A.b() +j.saEg(g) +j.saAO(a3) +j.saEe(a2) +j.szm(a1) +j.suv(a) +j.snv(a6) +j.sWe(a7.Ch$) +j.sGR(a7.gmz().p(0,B.R)) +j.saBl(a7.gmz().p(0,B.P)) +j.sFe(i) +j.sXt(f) +j.svW(a5) +j.sj(0,a7.a.c) +j.sacT(a7.e) +a7.a.toString +g=r.w +j.sdg(0,g==null?q.gdg(0):g) +j.sblV(e) +j.sbyx(d) +j=a7.bpm(!1,a8,new A.by(new A.bU7(a7,r),t.bN),j,n) +return new A.bX(A.ci(a8,a8,a8,a8,a8,a8,s,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8),!1,!1,!1,!1,j,a8)}} +A.bU6.prototype={ +$1(a){if(a.p(0,B.F))return null +if(a.p(0,B.S)){this.a.a.toString +return null}return null}, +$S:21} +A.bU7.prototype={ +$1(a){var s +this.a.a.toString +s=A.d2(null,a,t.GE) +if(s==null)s=null +return s==null?B.eu.a5(a):s}, +$S:242} +A.aLT.prototype={ +svW(a){if(J.q(this.db,a))return +this.db=a +this.ab()}, +sj(a,b){if(this.dx===b)return +this.dx=b +this.ab()}, +sacT(a){if(this.dy==a)return +this.dy=a +this.ab()}, +sdg(a,b){if(J.q(this.fr,b))return +this.fr=b +this.ab()}, +sblV(a){if(J.q(this.fx,a))return +this.fx=a +this.ab()}, +sbyx(a){if(J.q(this.fy,a))return +this.fy=a +this.ab()}, +apr(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.W(q,p,q+r,p+r)}, +ajQ(a){var s,r=this.e +if(a>=0.25)r.toString +else{s=this.f +s.toString +r.toString +r=A.ai(s,r,a*4) +r.toString}return r}, +a2C(a,b,c,d){a.ey(this.fr.nq(b),c) +this.fr.n0(d).aI(a,b)}, +a2D(a,b,c,d){var s,r=$.ar().dc(),q=b.a,p=b.b,o=q+2.6999999999999997,n=p+8.1 +if(c<0.5){s=A.og(B.bdh,B.So,c*2) +s.toString +r.fV(0,o,n) +r.ds(0,q+s.a,p+s.b)}else{s=A.og(B.So,B.bey,(c-0.5)*2) +s.toString +r.fV(0,o,n) +r.ds(0,q+7.2,p+12.6) +r.ds(0,q+s.a,p+s.b)}a.ey(r,d)}, +a2E(a,b,c,d){var s,r=A.og(B.bdr,B.S9,1-c) +r.toString +s=A.og(B.S9,B.bco,c) +s.toString +a.jV(b.S(0,r),b.S(0,s),d)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +g.aD0(a,b.nD(B.h)) +s=$.ar() +r=s.aP() +q=g.db +q.toString +r.sa6(0,q) +r.sbN(0,B.a7) +r.se4(2) +p=t.EP.a(b.iI(0,2).W(0,B.Yu.iI(0,2))) +q=g.a.a +o=q.gbM(q) +q=o===B.bg||o===B.a9 +n=g.a +m=q?n.gj(0):1-n.gj(0) +if(g.dy===!1||g.dx===!1){l=g.dx===!1?1-m:m +k=g.apr(p,l) +j=s.aP() +j.sa6(0,g.ajQ(l)) +s=g.fx +if(l<=0.5){q=g.fy +q.toString +s.toString +g.a2C(a,k,j,A.c8(q,s,l))}else{s.toString +g.a2C(a,k,j,s) +i=(l-0.5)*2 +if(g.dy==null||g.dx==null)g.a2E(a,p,i,r) +else g.a2D(a,p,i,r)}}else{k=g.apr(p,1) +j=s.aP() +j.sa6(0,g.ajQ(1)) +s=g.fx +s.toString +g.a2C(a,k,j,s) +if(m<=0.5){i=1-m*2 +s=g.dy +if(s===!0)g.a2D(a,p,i,r) +else g.a2E(a,p,i,r)}else{h=(m-0.5)*2 +s=g.dx +if(s===!0)g.a2D(a,p,h,r) +else g.a2E(a,p,h,r)}}}} +A.bU1.prototype={ +ghr(){return A.cA4(new A.bU5(this))}, +gpm(){return new A.by(new A.bU3(this),t.h2)}, +gvW(){return new A.by(new A.bU2(this),t.h2)}, +gew(){return new A.by(new A.bU4(this),t.h2)}, +gnv(){return 20}, +gwx(){return this.y.f}, +gh6(){return this.y.Q}, +gdg(a){return B.X6}} +A.bU5.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){if(a.p(0,B.S))return B.a2K +s=q.a.z.db +return new A.bx(A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),2,B.O,-1)}if(a.p(0,B.S))return B.zU +if(a.p(0,B.e_))return new A.bx(q.a.z.at,2,B.O,-1) +if(a.p(0,B.X))return new A.bx(q.a.z.db,2,B.O,-1) +if(a.p(0,B.P))return new A.bx(q.a.z.db,2,B.O,-1) +if(a.p(0,B.R))return new A.bx(q.a.z.db,2,B.O,-1) +s=q.a.z +r=s.dy +return new A.bx(r==null?s.db:r,2,B.O,-1)}, +$S:122} +A.bU3.prototype={ +$1(a){var s +if(a.p(0,B.F)){if(a.p(0,B.S)){s=this.a.z.db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}if(a.p(0,B.S)){if(a.p(0,B.e_))return this.a.z.at +return this.a.z.b}return B.D}, +$S:7} +A.bU2.prototype={ +$1(a){if(a.p(0,B.F)){if(a.p(0,B.S))return this.a.z.cy +return B.D}if(a.p(0,B.S)){if(a.p(0,B.e_))return this.a.z.ax +return this.a.z.c}return B.D}, +$S:7} +A.bU4.prototype={ +$1(a){var s,r=this +if(a.p(0,B.e_)){if(a.p(0,B.X)){s=r.a.z.at +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.z.at +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.z.at +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}if(a.p(0,B.S)){if(a.p(0,B.X)){s=r.a.z.db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.z.b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.z.b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}if(a.p(0,B.X)){s=r.a.z.b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.z.db +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.z.db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}, +$S:7} +A.akI.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.akJ.prototype={ +a8(){var s,r=this,q=null +r.an() +s=A.bQ(q,B.K,q,1,!r.a.c?0:1,r) +r.ur$=s +r.rz$=A.cI(B.dl,s,B.eb) +s=A.bQ(q,B.b1,q,1,q,r) +r.us$=s +r.MW$=A.cI(B.aa,s,q) +s=A.bQ(q,B.iU,q,1,r.z8$||r.z7$?1:0,r) +r.Gv$=s +r.MX$=A.cI(B.aa,s,q) +s=A.bQ(q,B.iU,q,1,r.z8$||r.z7$?1:0,r) +r.Gw$=s +r.MY$=A.cI(B.aa,s,q)}, +m(){var s=this,r=s.ur$ +r===$&&A.b() +r.m() +r=s.us$ +r===$&&A.b() +r.m() +r=s.Gv$ +r===$&&A.b() +r.m() +r=s.Gw$ +r===$&&A.b() +r.m() +s.aT9()}} +A.Ps.prototype={ +gv(a){var s=this +return A.ad(s.a,s.gpm(),s.gvW(),s.gew(),s.gnv(),s.gwx(),s.gh6(),s.gdg(s),s.ghr(),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.az(b)!==A.I(s))return!1 +return b instanceof A.Ps&&b.gpm()==s.gpm()&&b.gvW()==s.gvW()&&b.gew()==s.gew()&&b.gnv()==s.gnv()&&b.gwx()==s.gwx()&&J.q(b.gh6(),s.gh6())&&J.q(b.gdg(b),s.gdg(s))&&J.q(b.ghr(),s.ghr())}, +gpm(){return this.b}, +gvW(){return this.c}, +gew(){return this.d}, +gnv(){return this.e}, +gwx(){return this.f}, +gh6(){return this.r}, +gdg(a){return this.w}, +ghr(){return this.x}} +A.aLW.prototype={} +A.vy.prototype={ +q(a){var s=this,r=null +return A.bzx(!1,s.c,B.iH,r,r,B.i,r,r,r,r,r,r,s.db,r,r,!0,s.d,r,s.e,r,r,r,r,s.at,r,!1,r,r,r,r,r,r,r,!1,r,r)}} +A.a7E.prototype={ +J(){return new A.ah_(null,null,A.b9(t.ui),B.f)}} +A.ah_.prototype={ +gu5(){var s=this.a +if(s.ay)if(s.R8)s=s.as!=null||s.Q!=null +else s=!1 +else s=!1 +return s}, +a8(){var s,r=this,q=null +r.an() +if(!r.a.ay)r.Fi(B.F) +else r.uR(B.F) +if(r.a.ax)r.Fi(B.S) +else r.uR(B.S) +s=A.bQ(q,B.ahN,q,1,r.a.ax?1:0,r) +r.d=s +r.Q=A.cI(B.aa,s,q) +s=r.a +r.e=A.bQ(q,B.cC,q,1,s.d!=null||s.ax?1:0,r) +r.f=A.bQ(q,B.cC,q,1,r.a.x!=null?1:0,r) +r.r=A.bQ(q,B.hw,q,1,r.a.ay?1:0,r) +r.w=A.cI(new A.eG(0.23076923076923073,1,B.aa),r.d,new A.eG(0.7435897435897436,1,B.aa)) +r.y=A.cI(B.aa,r.f,q) +r.x=A.cI(B.aa,r.e,new A.eG(0.4871794871794872,1,B.aa)) +r.z=A.cI(B.aa,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.aTG()}, +aYk(a){var s=this +if(!s.gu5())return +s.Fi(B.X) +s.C(new A.cbk(s))}, +b6H(){var s=this +if(!s.gu5())return +s.uR(B.X) +s.C(new A.cbj(s))}, +b6F(){var s,r,q=this +if(!q.gu5())return +q.uR(B.X) +q.C(new A.cbl(q)) +s=q.a +r=s.Q +if(r!=null)r.$1(!s.ax) +s=q.a.as +if(s!=null)s.$0()}, +aYi(a,b,c){var s,r,q=this.uq$,p=t.oI,o=A.d2(this.a.cy,q,p) +if(o==null)o=A.d2(b.at,q,p) +p=t.KX +s=A.d2(this.a.db,q,p) +if(s==null)s=A.d2(b.ax,q,p) +r=s==null?A.d2(c.ax,q,p):s +if(r==null)r=B.lV +if(o!=null)return r.n0(o) +return!r.a.l(0,B.G)?r:r.n0(c.ghr())}, +ado(a,b,c,d,e){var s=this.uq$,r=new A.aQf(b,a,e,d).a5(s) +if(r==null)s=c==null?null:c.a5(s) +else s=r +return s}, +bGf(a,b,c){return this.ado(null,a,b,c,null)}, +bGe(a,b,c){return this.ado(a,b,c,null,null)}, +bGg(a,b,c){return this.ado(null,a,b,null,c)}, +aYh(a,b,c){var s,r,q,p,o,n=this +n.a.toString +s=b.a +r=n.bGf(s,c.ga6(c),b.d) +n.a.toString +q=n.bGe(b.b,s,c.ga6(c)) +p=n.a +p=p.CW +if(p==null)p=b.e +o=n.bGg(s,c.ga6(c),p) +p=n.r +p===$&&A.b() +p=new A.fp(r,q).ah(0,p.gj(0)) +s=n.Q +s===$&&A.b() +return new A.fp(p,o).ah(0,s.gj(0))}, +b1(a){var s=this +s.bc(a) +if(a.ay!==s.a.ay)s.C(new A.cbn(s)) +if(!J.q(a.d,s.a.d)||a.ax!==s.a.ax)s.C(new A.cbo(s)) +if(a.ax!==s.a.ax)s.C(new A.cbp(s)) +if(!J.q(a.x,s.a.x))s.C(new A.cbq(s))}, +auz(a,b,c){var s=null +if(!b||c==null)return a +return A.FH(a,s,s,c,s,s,s,s,s)}, +aWL(a,b,c,d){var s,r,q,p,o,n=this,m=null,l=n.a +if(l.x==null)return m +l=l.z +s=A.dS(a,B.an,t.v) +s.toString +l=s.gbD() +s=n.a +r=s.x +s=s.go +s=s==null?m:s.gdM(0)+s.gdT(0) +if(s==null)s=0 +q=A.G(a) +p=n.a +p=p.ay?p.x:m +o=c.c +if(o==null)o=b.bO.c +if(o==null)o=d.gyJ() +o=b.ok.bu(o) +l=n.auz(A.ly(!1,m,!0,A.DA(n.a.w,o,m),m,!0,m,m,m,m,m,m,m,m,m,m,m,m,p,m,m,m,(32+s)*0.45,m,new A.aZc(q.y),m),r!=null,l) +return new A.bX(A.ci(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,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m),!0,!1,!1,!1,l,m)}, +q(d3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,d0=this,d1=null,d2=A.cG(d3,B.bn) +d2=d2==null?d1:d2.gdZ() +d2=A.vO(B.cp,B.ed,A.Z((d2==null?B.Y:d2).gir()-1,0,1)) +d2.toString +s=A.G(d3) +r=A.cFK(d3) +q=r.CW +if(q==null)q=s.ay.a +p=d0.a +o=p.c +if(o==null)o=new A.bUa(d3,p.ay,d1,d1,d1,d1,d1,d1,d1,d1,d1,!0,d1,d1,d1,d1,B.pT,d1,d1,d1,0,d1,d1) +n=A.fq(d3) +m=d0.aYi(s,r,o) +p=d0.a.k2 +if(p==null)p=r.cx +l=p==null?o.gft(o):p +if(l==null)l=0 +d0.a.toString +p=r.cy +k=p==null?o.gHx():p +if(k==null)k=0 +d0.a.toString +j=r.r +if(j==null)j=o.gc0(o) +d0.a.toString +i=r.w +if(i==null)i=o.gc9() +d0.a.toString +h=r.x +if(h==null)h=o.x +g=r.z +if(g==null)g=o.gyo() +p=d0.a +f=p.p2 +e=f==null?r.y:f +if(e==null){f=o.y +f.toString +e=f}p=p.go +d=p==null?r.as:p +if(d==null)d=o.gdX(o) +c=r.ay +if(c==null){p=o.gkx() +p.toString +c=p}d0.a.toString +p=r.Q +b=p==null?o.gzu():p +d0.a.toString +a=r.db +if(a==null)a=o.gj0() +a0=c.dt(d0.a.f) +a1=a0.bu(A.d2(a0.b,d0.uq$,t._)) +a2=d0.a.d +if(a2!=null){d2=o.gj0().dt(a) +p=d0.a.d +p.toString +a2=A.qd(p,d2)}d2=d0.gu5()&&d0.as?k:l +p=d0.a +f=p.ax?h:j +p=p.dx +a3=d0.a_1(B.R) +a4=d0.a +a5=a4.dy +a4=a4.ay +a6=d0.gu5()?d0.gb6E():d1 +a7=d0.gu5()?d0.gaYj():d1 +a8=d0.gu5()?d0.gb6G():d1 +a9=d0.gu5()?d0.a_1(B.P):d1 +b0=d0.d +b0===$&&A.b() +b1=d0.r +b1===$&&A.b() +b1=A.a([b0,b1],t.Eo) +b0=d0.a +b2=b0.cx +b3=b0.as!=null||b0.Q!=null +b0=A.h4(b0.e,d1,1,B.Z7,!1,a1,B.ah,d1,B.a0) +b4=A.BS(a2,B.cC,B.aa,B.H,A.Oo()) +b5=A.BS(d0.aWL(d3,s,r,o),B.cC,B.aa,B.H,A.Oo()) +b6=d.a5(n) +d0.a.toString +b7=s.Q +b8=b.a5(n) +b9=d0.a.d +c0=d0.gu5() +c1=d0.a +c2=c1.ax +c3=d0.w +c3===$&&A.b() +c4=d0.z +c4===$&&A.b() +c5=d0.x +c5===$&&A.b() +c6=d0.y +c6===$&&A.b() +c7=A.fX(B.hw,!0,d1,A.ly(!1,d1,a4,A.hC(new A.B9(b1),new A.cbm(d0,m,s,r,o),d0.auz(new A.aM_(new A.aLZ(b4,b0,b5,q,b6,b7,b8,b9!=null,e,g,c0),c2,c1.ay,c3,c5,c6,c4,c1.p4,d1),b3,b2)),m,!0,d1,a5,d1,d1,d1,d1,d1,a3,d1,a9,d1,d1,a6,a8,a7,d1,d1,d1,d1,d1),p,d1,d2,d1,f,m,i,d1,B.bT) +d0.a.toString +c8=new A.j(b7.a,b7.b).X(0,4) +d2=d0.a +d2.toString +switch(s.f.a){case 0:c9=new A.aG(48+c8.a,1/0,48+c8.b,1/0) +break +case 1:c9=B.e9 +break +default:c9=d1}p=A.eu(c7,1,d1,1) +f=d2.R8 +a3=f?d0.gu5():d1 +return new A.bX(A.ci(d1,d1,d1,d1,d1,f,d1,d1,d1,d1,a3,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d1,d2.ax,d1,d1,d1,d1,d1,d1,d1,d1),!0,!1,!1,!1,new A.aLY(c9,p,d1),d1)}} +A.cbk.prototype={ +$0(){this.a.as=!0}, +$S:0} +A.cbj.prototype={ +$0(){this.a.as=!1}, +$S:0} +A.cbl.prototype={ +$0(){this.a.as=!1}, +$S:0} +A.cbn.prototype={ +$0(){var s,r=this.a +if(!r.a.ay)r.Fi(B.F) +else r.uR(B.F) +s=r.a.ay +r=r.r +if(s){r===$&&A.b() +r.cM(0)}else{r===$&&A.b() +r.eI(0)}}, +$S:0} +A.cbo.prototype={ +$0(){var s=this.a,r=s.a +r=r.d!=null||r.ax +s=s.e +if(r){s===$&&A.b() +s.cM(0)}else{s===$&&A.b() +s.eI(0)}}, +$S:0} +A.cbp.prototype={ +$0(){var s,r=this.a +if(r.a.ax)r.Fi(B.S) +else r.uR(B.S) +s=r.a.ax +r=r.d +if(s){r===$&&A.b() +r.cM(0)}else{r===$&&A.b() +r.eI(0)}}, +$S:0} +A.cbq.prototype={ +$0(){var s=this.a,r=s.a.x +s=s.f +if(r!=null){s===$&&A.b() +s.cM(0)}else{s===$&&A.b() +s.eI(0)}}, +$S:0} +A.cbm.prototype={ +$2(a,b){var s=this,r=null +return A.cxx(b,r,new A.lJ(s.a.aYh(s.c,s.d,s.e),r,r,r,s.b))}, +$S:1640} +A.aQf.prototype={ +a5(a){var s=this,r=s.a +if(r!=null)return r.a5(a) +if(a.p(0,B.S)&&a.p(0,B.F))return s.c +if(a.p(0,B.F))return s.d +if(a.p(0,B.S))return s.c +return s.b}} +A.aLY.prototype={ +aR(a){var s=new A.aUL(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sa7d(this.e)}} +A.aUL.prototype={ +es(a,b){var s +if(!this.gu(0).p(0,b))return!1 +s=new A.j(b.a,this.gu(0).b/2) +return a.Lt(new A.cbH(this,s),b,A.brv(s))}} +A.cbH.prototype={ +$2(a,b){return this.a.k1$.es(a,this.b)}, +$S:19} +A.aM_.prototype={ +ga0t(){return B.aGn}, +a86(a){switch(a.a){case 0:return this.d.b +case 1:return this.d.a +case 2:return this.d.c}}, +b_(a,b){var s,r=this +b.snm(r.d) +s=a.a0(t.I) +s.toString +b.sd5(s.w) +b.D=r.e +b.aq=r.r +b.aJ=r.w +b.U=r.x +b.aW=r.y +b.aT=r.z}, +aR(a){var s,r=this,q=a.a0(t.I) +q.toString +s=t.o0 +s=new A.ahh(r.e,r.r,r.w,r.x,r.y,r.z,r.d,q.w,A.aw(s),A.aw(s),A.aw(s),A.N(t.Wb,t.x),A.aw(t.T)) +s.aQ() +return s}} +A.xd.prototype={ +H(){return"_ChipSlot."+this.b}} +A.aLZ.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.aLZ&&b.a.r3(0,s.a)&&b.b.r3(0,s.b)&&b.c.r3(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.q(b.y,s.y)&&b.z===s.z}, +gv(a){var s=this +return A.ad(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.ahh.prototype={ +snm(a){if(this.aU.l(0,a))return +this.aU=a +this.a9()}, +sd5(a){if(this.ck===a)return +this.ck=a +this.a9()}, +geg(a){var s,r=A.a([],t.Ik),q=this.fa$ +if(q.i(0,B.bW)!=null){s=q.i(0,B.bW) +s.toString +r.push(s)}if(q.i(0,B.cU)!=null){s=q.i(0,B.cU) +s.toString +r.push(s)}if(q.i(0,B.e4)!=null){q=q.i(0,B.e4) +q.toString +r.push(q)}return r}, +gka(){return!1}, +bo(a){var s,r=this.aU.e.geL(),q=this.aU.r.geL(),p=this.fa$,o=p.i(0,B.bW) +o=o==null?0:o.aw(B.ad,a,o.gbG()) +s=p.i(0,B.cU) +s=s==null?0:s.aw(B.ad,a,s.gbG()) +p=p.i(0,B.e4) +p=p==null?0:p.aw(B.ad,a,p.gbG()) +return r+q+o+s+p}, +bb(a){var s,r=this.aU.e.geL(),q=this.aU.r.geL(),p=this.fa$,o=p.i(0,B.bW) +o=o==null?0:o.aw(B.aj,a,o.gbL()) +s=p.i(0,B.cU) +s=s==null?0:s.aw(B.aj,a,s.gbL()) +p=p.i(0,B.e4) +p=p==null?0:p.aw(B.aj,a,p.gbL()) +return r+q+o+s+p}, +bh(a){var s,r,q,p=this.aU.e,o=p.gdM(0) +p=p.gdT(0) +s=this.aU.r +r=s.gdM(0) +s=s.gdT(0) +q=this.fa$.i(0,B.cU) +q=q==null?0:q.aw(B.ao,a,q.gbP()) +return Math.max(32,o+p+(r+s)+q)}, +bi(a){return this.bh(a)}, +il(a){return this.fa$.i(0,B.cU).pK(a)}, +b8t(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.aU.r.geL()-n.aU.e.geL()) +m=n.fa$.i(0,B.cU) +m.toString +r=e.$2(m,new A.aG(0,s,d.b,c.b)) +m=r.a +q=n.aU.r.geL() +p=r.b +o=n.aU.r +return new A.V(m+q,p+(o.gdM(0)+o.gdT(0)))}m=n.fa$.i(0,B.cU) +m.toString +r=e.$2(m,new A.aG(0,c.a,d.b,c.b)) +m=r.a +q=n.aU.r.geL() +p=r.b +o=n.aU.r +return new A.V(m+q,p+(o.gdM(0)+o.gdT(0)))}, +b8p(a,b,c){var s,r,q,p=Math.max(0,b),o=A.fH(p,p),n=this.fa$.i(0,B.bW) +n.toString +s=c.$2(n,o) +n=this.aU +if(!n.x&&!n.w)return new A.V(0,b) +r=this.aJ +q=n.w?0+r.gj(0)*s.a:0+r.gj(0)*b +return new A.V(q,0+s.b)}, +b8s(a,b,c){var s,r=Math.max(0,b),q=A.fH(r,r),p=this.fa$.i(0,B.e4) +p.toString +s=c.$2(p,q) +if(this.U.gbM(0)===B.a6)return new A.V(0,b) +return new A.V(0+this.U.gj(0)*s.a,0+s.b)}, +es(a,b){var s,r,q,p,o,n=this +if(!n.gu(0).p(0,b))return!1 +s=n.fa$ +if(s.i(0,B.e4)!=null){r=n.aU +q=A.dme(n.gu(0),s.i(0,B.e4).gu(0),r.r,r.e,b,n.ck)}else q=!1 +if(q){r=s.i(0,B.e4) +if(r==null)r=s.i(0,B.cU) +p=r==null?s.i(0,B.bW):r}else{r=s.i(0,B.cU) +p=r==null?s.i(0,B.bW):r}if(p!=null){o=p.gu(0).nD(B.h) +return a.Lt(new A.cbL(o,p),b,A.brv(o))}return!1}, +cX(a){return this.ajC(a,A.k0()).a}, +ajC(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=new A.aG(0,a.b,0,a.d),f=h.aU.f,e=new A.j(0,new A.j(f.a,f.b).X(0,4).b/2) +f=h.fa$.i(0,B.cU) +f.toString +s=b.$2(f,g) +f=h.aU.e +r=f.gdM(0) +f=f.gdT(0) +q=h.aU.r +p=q.gdM(0) +q=q.gdT(0) +o=s.b +n=h.aU.r +m=Math.max(32-(r+f)+(p+q),o+(n.gdM(0)+n.gdT(0))) +l=h.b8p(g,m,b) +k=h.b8s(g,m,b) +n=l.a +o=k.a +j=h.b8t(g,n+o,new A.V(s.a,m),s,b) +i=new A.V(n+j.a+o,m).S(0,e) +o=h.aU.e.geL() +n=h.aU.e +return new A.bUb(a.bd(new A.V(i.a+o,i.b+(n.gdM(0)+n.gdT(0)))),i,m,l,j,k,e)}, +bJ(){var s,r,q,p,o,n,m,l,k,j=this,i=t.k,h=j.ajC(i.a(A.H.prototype.gZ.call(j)),A.k1()),g=h.b,f=g.a,e=new A.cbM(j,h) +switch(j.ck.a){case 0:s=j.aU +if(s.x||s.w){s=h.d +r=e.$2(s,f) +q=f-s.a}else{q=f +r=B.h}s=h.e +p=e.$2(s,q) +if(j.U.gbM(0)!==B.a6){o=h.f +n=j.aU.e +j.a4=new A.W(0,0,0+(o.a+n.c),0+(g.b+(n.gdM(0)+n.gdT(0)))) +m=e.$2(o,q-s.a)}else{j.a4=B.a8 +m=B.h}s=j.aU +if(s.z){o=j.a4 +o===$&&A.b() +o=o.c-o.a +s=s.e.geL() +n=j.aU.e +j.ag=new A.W(o,0,o+(f-o+s),0+(g.b+(n.gdM(0)+n.gdT(0))))}else j.ag=B.a8 +break +case 1:s=j.aU +if(s.x||s.w){s=h.d +o=j.fa$.i(0,B.bW) +o=o==null?B.A:o.gu(0) +n=s.a +r=e.$2(s,0-o.a+n) +q=0+n}else{r=B.h +q=0}s=h.e +p=e.$2(s,q) +q+=s.a +if(j.aU.z){s=j.U.gbM(0) +o=j.aU.e +s=s!==B.a6?q+o.a:f+o.geL() +o=j.aU.e +j.ag=new A.W(0,0,0+s,0+(g.b+(o.gdM(0)+o.gdT(0))))}else j.ag=B.a8 +s=j.fa$.i(0,B.e4) +s=s==null?B.A:s.gu(0) +o=h.f +n=o.a +q-=s.a-n +if(j.U.gbM(0)!==B.a6){m=e.$2(o,q) +s=j.aU.e +o=q+s.a +j.a4=new A.W(o,0,o+(n+s.c),0+(g.b+(s.gdM(0)+s.gdT(0))))}else{j.a4=B.a8 +m=B.h}break +default:r=B.h +p=B.h +m=B.h}s=j.aU.r +o=s.gdM(0) +s=s.gdT(0) +n=j.fa$ +l=n.i(0,B.cU) +l=l==null?B.A:l.gu(0) +p=p.S(0,new A.j(0,(h.e.b-(o+s)-l.b)/2)) +l=n.i(0,B.bW).b +l.toString +s=t.r +s.a(l) +o=j.aU.e +l.a=new A.j(o.a,o.b).S(0,r) +o=n.i(0,B.cU).b +o.toString +s.a(o) +l=j.aU.e +l=new A.j(l.a,l.b).S(0,p) +k=j.aU.r +o.a=l.S(0,new A.j(k.a,k.b)) +n=n.i(0,B.e4).b +n.toString +s.a(n) +s=j.aU.e +n.a=new A.j(s.a,s.b).S(0,m) +s=j.aU.e.geL() +n=j.aU.e +k=n.gdM(0) +n=n.gdT(0) +j.id=i.a(A.H.prototype.gZ.call(j)).bd(new A.V(f+s,g.b+(k+n)))}, +ga2z(){var s,r +if(this.aW.gbM(0)===B.a9)return B.r +switch(this.aU.d.a){case 1:s=new A.fp(A.Y(97,255,255,255),B.r) +break +case 0:s=new A.fp(A.Y(97,0,0,0),B.B) +break +default:s=null}r=s.ah(0,this.aW.gj(0)) +r.toString +return r}, +bd_(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.aU,f=g.y +if(!(f!=null))switch(g.d.a){case 1:f=g.w?B.r:A.Y(222,0,0,0) +break +case 0:f=g.w?B.B:A.Y(222,255,255,255) +break +default:f=null}g=h.aq.a +if(g.gbM(g)===B.bs)f=new A.fp(B.D,f).ah(0,h.aq.gj(0)) +g=$.ar() +s=g.aP() +f.toString +s.sa6(0,f) +s.sbN(0,B.a7) +r=h.fa$ +s.se4(2*(r.i(0,B.bW)!=null?r.i(0,B.bW).gu(0).b/24:1)) +r=h.aq.a +q=r.gbM(r)===B.bs?1:h.aq.gj(0) +if(q===0)return +p=g.dc() +g=c*0.15 +r=c*0.45 +o=c*0.4 +n=c*0.7 +m=new A.j(o,n) +l=b.a +k=b.b +j=l+g +i=k+r +if(q<0.5){g=A.og(new A.j(g,r),m,q*2) +g.toString +p.fV(0,j,i) +p.ds(0,l+g.a,k+g.b)}else{g=A.og(m,new A.j(c*0.85,c*0.25),(q-0.5)*2) +g.toString +p.fV(0,j,i) +p.ds(0,l+o,k+n) +p.ds(0,l+g.a,k+g.b)}a.ey(p,s)}, +bcX(a,b){var s,r,q,p,o,n,m=this,l=new A.cbI(m) +if(!m.aU.w&&m.aJ.gbM(0)===B.a6){m.eA.sb9(0,null) +return}s=m.ga2z() +r=s.gj(s)>>>24&255 +q=m.cx +q===$&&A.b() +p=m.eA +if(q)p.sb9(0,a.zR(b,r,l,p.a)) +else{p.sb9(0,null) +q=r!==255 +if(q){p=a.gbY(a) +o=A.cAa(m.fa$.i(0,B.bW)).eD(b).fH(20) +n=$.ar().aP() +n.sa6(0,s) +p.kD(o,n)}l.$2(a,b) +if(q)a.gbY(a).de(0)}}, +apv(a,b,c,d){var s,r,q,p,o,n=this,m=null +if(c==null){n.eq.sb9(0,m) +n.f1.sb9(0,m) +return}s=n.ga2z() +r=s.gj(s)>>>24&255 +if(n.aW.gbM(0)!==B.a9){s=n.cx +s===$&&A.b() +q=n.eq +if(s){q.sb9(0,a.zR(b,r,new A.cbJ(c),q.a)) +if(d){s=n.f1 +s.sb9(0,a.zR(b,r,new A.cbK(c),s.a))}}else{q.sb9(0,m) +n.f1.sb9(0,m) +p=A.cAa(c).eD(b) +s=a.gbY(a) +q=p.fH(20) +o=$.ar().aP() +o.sa6(0,n.ga2z()) +s.kD(q,o) +o=c.b +o.toString +a.eM(c,t.r.a(o).a.S(0,b)) +a.gbY(a).de(0)}}else{s=c.b +s.toString +a.eM(c,t.r.a(s).a.S(0,b))}}, +aA(a){var s,r,q=this +q.aTH(a) +s=q.gfk() +q.aq.a.a3(0,s) +r=q.gnb() +q.aJ.a.a3(0,r) +q.U.a.a3(0,r) +q.aW.a.a3(0,s)}, +ar(a){var s,r=this,q=r.gfk() +r.aq.a.O(0,q) +s=r.gnb() +r.aJ.a.O(0,s) +r.U.a.O(0,s) +r.aW.a.O(0,q) +r.aTI(0)}, +m(){var s=this +s.eq.sb9(0,null) +s.f1.sb9(0,null) +s.eA.sb9(0,null) +s.ig()}, +aI(a,b){var s=this +s.bcX(a,b) +if(s.U.gbM(0)!==B.a6)s.apv(a,b,s.fa$.i(0,B.e4),!0) +s.apv(a,b,s.fa$.i(0,B.cU),!1)}, +kw(a){var s=this.a4 +s===$&&A.b() +if(!s.p(0,a)){s=this.ag +s===$&&A.b() +s=s.p(0,a)}else s=!0 +return s}} +A.cbL.prototype={ +$2(a,b){return this.b.es(a,this.a)}, +$S:19} +A.cbM.prototype={ +$2(a,b){var s +switch(this.a.ck.a){case 0:s=this.b +return new A.j(b-a.a,(s.c-a.b+s.r.b)/2) +case 1:s=this.b +return new A.j(b,(s.c-a.b+s.r.b)/2)}}, +$S:1656} +A.cbI.prototype={ +$2(a,b){var s,r,q,p,o,n,m=this.a,l=m.fa$,k=l.i(0,B.bW) +k.toString +s=l.i(0,B.bW).b +s.toString +r=t.r +a.eM(k,r.a(s).a.S(0,b)) +if(m.aU.x&&m.aq.gbM(0)!==B.a6){if(m.aU.w){q=A.cAa(l.i(0,B.bW)).eD(b) +p=$.ar().aP() +k=$.cZ3().ah(0,m.aq.gj(0)) +k.toString +p.sa6(0,k) +p.sp6(B.zP) +o=m.aT.nq(q) +a.gbY(a).ey(o,p)}k=l.i(0,B.bW).gu(0) +s=l.i(0,B.bW).b +s.toString +n=r.a(s).a.S(0,new A.j(l.i(0,B.bW).gu(0).b*0.125,l.i(0,B.bW).gu(0).b*0.125)) +m.bd_(a.gbY(a),b.S(0,n),k.b*0.75)}}, +$S:14} +A.cbJ.prototype={ +$2(a,b){var s=this.a,r=s.b +r.toString +a.eM(s,t.r.a(r).a.S(0,b))}, +$S:14} +A.cbK.prototype={ +$2(a,b){var s=this.a,r=s.b +r.toString +a.eM(s,t.r.a(r).a.S(0,b))}, +$S:14} +A.bUb.prototype={} +A.aZc.prototype={ +M4(a,b,c,d,e,f,g,h,i,j,k,l){return this.a.axR(0,b,c,e,f,g,h,i,j,k,l)}} +A.bUa.prototype={ +gJC(){var s,r=this,q=r.fr +if(q===$){s=A.G(r.dx) +r.fr!==$&&A.a_() +q=r.fr=s.ay}return q}, +gkx(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dx) +r.fx!==$&&A.a_() +q=r.fx=s.p3}return q.as}, +ga6(a){return null}, +gc0(a){return B.D}, +gc9(){var s=this.gJC(),r=s.k3 +return r==null?s.b:r}, +gyo(){return null}, +gyJ(){return null}, +ghr(){var s,r +if(this.dy){s=this.gJC() +r=s.fr +s=new A.bx(r==null?s.cx:r,1,B.O,-1)}else{s=this.gJC().db +s=new A.bx(A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}return s}, +gj0(){var s=null +return new A.dW(18,s,s,s,s,this.dy?this.gJC().b:this.gJC().db,s,s,s)}, +gdX(a){return B.cq}, +gzu(){var s=A.cG(this.dx,B.bn) +s=s==null?null:s.gdZ() +s=A.vO(B.cp,B.ed,A.Z((s==null?B.Y:s).gir()-1,0,1)) +s.toString +return s}} +A.b04.prototype={} +A.alh.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.ali.prototype={ +aA(a){var s,r,q +this.ea(a) +for(s=this.geg(0),r=s.length,q=0;q>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}else s=B.zT +return s}, +gj0(){var s=null +return new A.dW(18,s,s,s,s,this.dy?s:this.gpV().db,s,s,s)}, +gdX(a){return B.cq}, +gzu(){var s=A.cG(this.dx,B.bn) +s=s==null?null:s.gdZ() +s=A.vO(B.cp,B.ed,A.Z((s==null?B.Y:s).gir()-1,0,1)) +s.toString +return s}} +A.bUf.prototype={ +$1(a){var s,r +if(a.p(0,B.S)&&a.p(0,B.F)){s=this.a +if(s.fx===B.iq){s=s.gpV().db +s=A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}else{s=s.gpV().db +s=A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return s}if(a.p(0,B.F)){s=this.a +if(s.fx===B.iq)s=null +else{s=s.gpV().db +s=A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return s}if(a.p(0,B.S)){s=this.a +if(s.fx===B.iq){s=s.gpV() +r=s.w +s=r==null?s.f:r}else{s=s.gpV() +r=s.w +s=r==null?s.f:r}return s}return null}, +$S:21} +A.aoS.prototype={ +gba0(){var s=this.y +return 2*s}, +gb9G(){var s=this.y +return 2*s}, +q(a){var s,r,q,p,o,n=this,m=null,l=A.G(a),k=l.ay,j=k.e +k=j==null?k.c:j +s=k +r=l.p3.w.bu(s) +q=n.d +if(s==null)switch(A.FC(q).a){case 0:r=r.bu(l.go) +break +case 1:r=r.bu(l.fy) +break}p=n.gba0() +o=n.gb9G() +k=l.ok.bu(r.b) +k=A.eu(A.cxY(A.DA(A.h4(n.c,m,m,B.aG,!0,r,m,m,B.a0),k,m)),m,m,m) +return A.amZ(m,k,B.i,new A.aG(p,o,p,o),B.H,new A.c_(q,m,m,m,m,m,m,B.fq),B.K,m,m,m,m,m,m,m,m)}} +A.PL.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.az(a0)!==A.I(b))return!1 +if(a0 instanceof A.PL)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.B +n=b.fy +if(o.l(0,n==null?B.B:n)){o=a0.go +if(o==null)o=B.B +n=b.go +if(o.l(0,n==null?B.B: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.B +a2=a7.go +if(a2==null)a2=B.B +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.ad(a7.a,a8,a9,b0,s,r,q,p,o,l,i,n,m,k,j,h,g,a7.CW,f,A.ad(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.aM8.prototype={} +A.im.prototype={} +A.jN.prototype={} +A.a1x.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(r))return!1 +if(b instanceof A.a1x)if(J.q(b.a,r.a))if(b.b==r.b)if(b.c==r.c)if(b.d==r.d)if(J.q(b.e,r.e))if(b.f==r.f)if(b.r==r.r)if(J.q(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.aN3.prototype={} +A.vE.prototype={ +H(){return"DatePickerEntryMode."+this.b}} +A.as9.prototype={ +H(){return"DatePickerMode."+this.b}} +A.ctL.prototype={ +$1(a){var s=this.a.a +return s}, +$S:8} +A.a1z.prototype={ +J(){var s=null +return new A.ae5(new A.aVx(B.kg,$.ae()),new A.aR(s,t.A),new A.aR(s,t.am),s,A.N(t.yb,t.O),s,!0,s,B.f)}} +A.ae5.prototype={ +gy3(){var s,r,q=this.d +if(q===$){s=this.a.c +r=$.ae() +q!==$&&A.a_() +q=this.d=new A.aDy(s,r)}return q}, +gtC(){var s,r,q=this.e +if(q===$){s=this.a.r +r=$.ae() +q!==$&&A.a_() +q=this.e=new A.aVy(s,r)}return q}, +m(){var s=this +s.gy3().m() +s.gtC().m() +s.f.m() +s.aTj()}, +gkh(){this.a.toString +return null}, +lk(a,b){var s=this +s.oC(s.gy3(),"selected_date") +s.oC(s.f,"autovalidateMode") +s.oC(s.gtC(),"calendar_entry_mode")}, +aZG(){var s,r=this,q=r.gtC(),p=q.y +if((p==null?A.z(q).h("cV.T").a(p):p)!==B.hv){q=r.gtC() +p=q.y +q=(p==null?A.z(q).h("cV.T").a(p):p)===B.iS}else q=!0 +if(q){q=r.w.gam() +q.toString +if(!q.a_4()){r.C(new A.bWX(r)) +return}q.d6(0)}q=r.c +q.toString +p=r.gy3() +s=p.y +p=s==null?A.z(p).h("cV.T").a(s):s +A.cN(q,!1).dB(p)}, +aZE(){var s=this.c +s.toString +A.cN(s,!1).dB(null)}, +an5(){this.a.toString}, +b3Q(){this.C(new A.bWW(this))}, +b3m(a){this.C(new A.bWV(this,a))}, +b_l(a){var s,r,q +A.G(a) +s=A.bC(a,B.mm,t.l).w.gnU(0) +r=this.gtC() +q=r.y +switch(q==null?A.z(r).h("cV.T").a(q):q){case B.hu:case B.kK:switch(s.a){case 0:return B.bmk +case 1:return B.bmp}break +case B.hv:case B.iS:switch(s.a){case 0:return B.bmj +case 1:return B.bmo}break}}, +q(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null,a={},a0=A.G(a2),a1=A.dS(a2,B.an,t.v) +a1.toString +s=A.bC(a2,B.mm,t.l).w.gnU(0) +r=A.asa(a2) +A.G(a2) +q=A.aN6(a2) +p=r.w +if(p==null)p=q.gNc() +o=c.gtC() +n=o.y +switch(n==null?A.z(o).h("cV.T").a(n):n){case B.hv:case B.iS:if(s===B.jy)p=a0.p3.f +break +case B.hu:case B.kK:break}m=r.r +if(m==null)m=q.gGG() +p=p==null?b:p.bu(m) +o=r.p2 +if(o==null)o=q.gLM() +n=c.a.x +n=a1.gcb() +o=A.nq(!1,A.bv(n,b,b,b,b,b,b,b,b,b,b,b,b,b,b),B.i,b,!0,b,b,b,b,c.gaZD(),b,o) +n=r.p3 +if(n==null)n=q.gLU() +c.a.toString +l=a1.gcc() +k=A.bB(B.zk,A.a6B(b,A.a([o,A.nq(!1,A.bv(l,b,b,b,b,b,b,b,b,b,b,b,b,b,b),B.i,b,!0,b,b,b,b,c.gaZF(),b,n)],t.p),B.ps,B.x,0,8),B.i,b,B.zZ,b,b,b,b,b,B.cp,b,b,b) +j=new A.bWY(c) +i=new A.bX_(c,s) +a.a=null +o=c.gtC() +n=o.y +switch(n==null?A.z(o).h("cV.T").a(n):n){case B.hu:a.a=j.$0() +o=c.a.cy +o=A.b2(B.axN,b,b,b,b,b,b,b,b,b,b) +h=A.lx(b,!1,m,b,b,b,b,b,b,b,o,b,b,b,b,c.gamY(),b,b,b,b,b,a1.gbw(),b) +break +case B.kK:a.a=j.$0() +h=b +break +case B.hv:a.a=i.$0() +c.a.toString +h=A.lx(b,!1,m,b,b,b,b,b,b,b,B.azP,b,b,b,b,c.gamY(),b,b,b,b,b,a1.gbB(),b) +break +case B.iS:a.a=i.$0() +h=b +break +default:h=b}o=c.a.z +o=a1.gbv() +n=c.gy3() +l=n.y +if((l==null?A.z(n).h("cV.T").a(l):l)==null)a1="" +else{n=c.gy3() +l=n.y +n=l==null?A.z(n).h("cV.T").a(l):l +n.toString +n=a1.aA_(n) +a1=n}n=A.cG(a2,B.bn) +n=n==null?b:n.gdZ() +n=(n==null?B.Y:n).a88(0,1.3) +g=c.b_l(a2).X(0,n.a) +n=r.a +if(n==null)n=q.gcv(0) +l=r.b +if(l==null){l=q.b +l.toString}f=r.c +if(f==null)f=q.gc0(0) +e=r.d +if(e==null)e=q.gc9() +d=r.e +if(d==null)d=q.e +return A.cwd(b,n,A.amZ(b,A.brx(new A.fV(new A.bWZ(a,!0,g,s,new A.aN7(o,a1,p,s,s===B.jy,h,b),r,k),b),1.3),B.i,b,B.dl,b,B.K,b,g.b,b,b,b,b,b,g.a),B.dL,l,B.aiy,f,d,e)}} +A.bWX.prototype={ +$0(){this.a.f.sj(0,B.iz) +return B.iz}, +$S:0} +A.bWW.prototype={ +$0(){var s=this.a,r=s.gtC(),q=r.y +switch(q==null?A.z(r).h("cV.T").a(q):q){case B.hu:s.f.sj(0,B.kg) +s.gtC().sj(0,B.hv) +s.an5() +break +case B.hv:s.w.gam().d6(0) +s.gtC().sj(0,B.hu) +s.an5() +break +case B.kK:case B.iS:break}}, +$S:0} +A.bWV.prototype={ +$0(){this.a.gy3().sj(0,this.b)}, +$S:0} +A.bWY.prototype={ +$0(){var s,r,q,p,o=this.a,n=o.gy3(),m=n.y +n=m==null?A.z(n).h("cV.T").a(m):m +m=o.a +s=m.d +r=m.e +q=m.f +p=m.w +m=m.Q +if(n==null)n=null +else{n=A.cd(A.b7(n),A.bp(n),A.cL(n),0,0,0,0,!1) +if(!A.bI(n))A.C(A.bV(n)) +n=new A.am(n,!1)}s=A.cd(A.b7(s),A.bp(s),A.cL(s),0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +r=A.cd(A.b7(r),A.bp(r),A.cL(r),0,0,0,0,!1) +if(!A.bI(r))A.C(A.bV(r)) +q=A.cd(A.b7(q),A.bp(q),A.cL(q),0,0,0,0,!1) +if(!A.bI(q))A.C(A.bV(q)) +return new A.Hy(n,new A.am(s,!1),new A.am(r,!1),new A.am(q,!1),o.gamT(),m,p,o.r)}, +$S:1661} +A.bX_.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i=null,h=this.a,g=h.f,f=g.y +g=f==null?A.z(g).h("cV.T").a(f):f +f=this.b===B.dw?98:108 +s=h.gy3() +r=s.y +s=r==null?A.z(s).h("cV.T").a(r):r +r=h.a +q=r.d +p=r.e +o=h.gamT() +n=r.w +m=r.as +l=r.at +k=r.ax +j=r.ay +r=r.ch +if(s!=null){s=A.cd(A.b7(s),A.bp(s),A.cL(s),0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +s=new A.am(s,!1)}else s=i +q=A.cd(A.b7(q),A.bp(q),A.cL(q),0,0,0,0,!1) +if(!A.bI(q))A.C(A.bV(q)) +p=A.cd(A.b7(p),A.bp(p),A.cL(p),0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +return A.aum(g,A.bB(i,A.Fi(A.cS(A.a([B.hf,new A.a4s(s,new A.am(q,!1),new A.am(p,!1),o,o,n,m,l,k,j,r,!0,i),B.hf],t.p),B.t,i,B.o,B.u,i,i,B.x),i,B.aZt),B.i,i,i,i,i,f,i,i,B.nk,i,i,i),h.w)}, +$S:1681} +A.bWZ.prototype={ +$2(a,b){var s,r,q=this,p=null,o=Math.min(q.c.b,270) +switch(q.d.a){case 0:s=t.p +r=A.a([q.e],s) +r.push(A.cH1(q.f.ok,0)) +if(b.d>=o)B.b.L(r,A.a([A.f7(q.a.a,1,p),q.r],s)) +return A.cS(r,B.co,p,B.o,B.Z,p,p,B.x) +case 1:o=t.p +s=A.a([q.e],o) +s.push(new A.Wn(0,p,q.f.ok,p)) +s.push(new A.iO(1,B.c1,A.cS(A.a([A.f7(q.a.a,1,p),q.r],o),B.co,p,B.o,B.Z,p,p,B.x),p)) +return A.eq(s,B.co,p,B.o,B.Z,p,p,B.x)}}, +$S:1687} +A.aVy.prototype={ +yB(){return this.cy}, +G6(a){this.ab()}, +uw(a){a.toString +return B.aLQ[A.bZ(a)]}, +v_(){var s=this.y +return(s==null?A.z(this).h("cV.T").a(s):s).a}} +A.aVx.prototype={ +yB(){return this.cy}, +G6(a){this.ab()}, +uw(a){a.toString +return B.aHE[A.bZ(a)]}, +v_(){var s=this.y +return(s==null?A.z(this).h("cV.T").a(s):s).a}} +A.aN7.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=A.asa(a) +A.G(a) +s=A.aN6(a) +r=h.f +if(r==null)r=s.gNb() +q=h.r +if(q==null)q=s.gGG() +p=h.x +if(p==null)p=s.gNd() +o=p==null?i:p.bu(q) +n=A.bv(j.c,i,i,1,B.bf,i,i,i,i,o,i,i,i,i,i) +p=j.d +m=j.r +l=m===B.dw?1:2 +k=A.bv(p,i,i,l,B.bf,i,p,i,i,j.f,i,i,i,i,i) +switch(m.a){case 0:p=t.p +m=A.a([A.f7(k,1,i)],p) +l=j.x +if(l!=null)m.push(l) +return new A.ba(i,120,A.fX(B.K,!0,i,new A.aA(B.ai3,A.cS(A.a([B.q7,n,B.ajM,A.eq(m,B.t,i,B.o,B.u,i,i,B.x)],p),B.a4,i,B.o,B.u,i,i,B.x),i),B.i,r,0,i,i,i,i,i,B.bT),i) +case 1:p=j.w?16:56 +p=A.a([B.q7,new A.aA(B.f0,n,i),new A.ba(i,p,i,i),A.f7(new A.aA(B.f0,k,i),1,i)],t.p) +m=j.x +if(m!=null)p.push(new A.aA(B.ed,m,i)) +return new A.ba(152,i,A.fX(B.K,!0,i,A.cS(p,B.a4,i,B.o,B.u,i,i,B.x),B.i,r,0,i,i,i,i,i,B.bT),i)}}} +A.cnU.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.akR.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.cnU()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.ap()}} +A.m8.prototype={ +gv(a){var s=this +return A.cs([s.gcv(s),s.b,s.gc0(s),s.gc9(),s.e,s.gNb(),s.gGG(),s.gNc(),s.gNd(),s.gPe(),s.gMj(),s.gMg(),s.gFZ(),s.gMh(),s.gHV(),s.gHT(),s.gHU(),s.gPp(),s.gPn(),s.gPm(),s.gPo(),s.gad3(),s.dy,s.gZ8(),s.gZ9(),s.fy,s.gZ4(),s.gZ5(),s.gZ6(),s.gZ7(),s.gZa(),s.gZb(),s.ok,s.p1,s.gLM(),s.gLU()])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.m8&&J.q(b.gcv(b),s.gcv(s))&&b.b==s.b&&J.q(b.gc0(b),s.gc0(s))&&J.q(b.gc9(),s.gc9())&&J.q(b.e,s.e)&&J.q(b.gNb(),s.gNb())&&J.q(b.gGG(),s.gGG())&&J.q(b.gNc(),s.gNc())&&J.q(b.gNd(),s.gNd())&&J.q(b.gPe(),s.gPe())&&J.q(b.gMj(),s.gMj())&&b.gMg()==s.gMg()&&b.gFZ()==s.gFZ()&&b.gMh()==s.gMh()&&b.gHV()==s.gHV()&&b.gHT()==s.gHT()&&J.q(b.gHU(),s.gHU())&&J.q(b.gPp(),s.gPp())&&b.gPn()==s.gPn()&&b.gPm()==s.gPm()&&b.gPo()==s.gPo()&&J.q(b.gad3(),s.gad3())&&b.dy==s.dy&&J.q(b.gZ8(),s.gZ8())&&J.q(b.gZ9(),s.gZ9())&&J.q(b.fy,s.fy)&&J.q(b.gZ4(),s.gZ4())&&J.q(b.gZ5(),s.gZ5())&&J.q(b.gZ6(),s.gZ6())&&J.q(b.gZ7(),s.gZ7())&&J.q(b.gZa(),s.gZa())&&b.gZb()==s.gZb()&&J.q(b.ok,s.ok)&&J.q(b.gLM(),s.gLM())&&J.q(b.gLU(),s.gLU())}, +gcv(a){return this.a}, +gc0(a){return this.c}, +gc9(){return this.d}, +gNb(){return this.f}, +gGG(){return this.r}, +gNc(){return this.w}, +gNd(){return this.x}, +gPe(){return this.y}, +gMj(){return this.z}, +gMg(){return this.Q}, +gFZ(){return this.as}, +gMh(){return this.at}, +gHV(){return this.ax}, +gHT(){return this.ay}, +gHU(){return this.ch}, +gPp(){return this.CW}, +gPn(){return this.cx}, +gPm(){return this.cy}, +gPo(){return this.db}, +gad3(){return this.dx}, +gZ8(){return this.fr}, +gZ9(){return this.fx}, +gZ4(){return this.go}, +gZ5(){return this.id}, +gZ6(){return this.k1}, +gZ7(){return this.k2}, +gZa(){return this.k3}, +gZb(){return this.k4}, +gLM(){return this.p2}, +gLU(){return this.p3}} +A.aN5.prototype={ +gaku(){var s,r=this,q=r.R8 +if(q===$){s=A.G(r.p4) +r.R8!==$&&A.a_() +r.R8=s +q=s}return q}, +ghD(){var s,r=this,q=r.RG +if(q===$){s=r.gaku() +r.RG!==$&&A.a_() +q=r.RG=s.ay}return q}, +gAK(){var s,r=this,q=r.rx +if(q===$){s=r.gaku() +r.rx!==$&&A.a_() +q=r.rx=s.p3}return q}, +gcv(a){return this.ghD().cy}, +gLM(){var s=null +return A.VJ(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +gLU(){var s=null +return A.VJ(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +gc0(a){return B.D}, +gc9(){var s=this.ghD(),r=s.k3 +return r==null?s.b:r}, +gNb(){return B.D}, +gGG(){var s=this.ghD(),r=s.dy +return r==null?s.db:r}, +gNc(){return this.gAK().d}, +gNd(){return this.gAK().as}, +gPe(){var s=this.gAK().y +return s==null?null:s.yg(this.ghD().db)}, +gMj(){return this.gAK().y}, +gMg(){return new A.by(new A.bWO(this),t.U)}, +gFZ(){return new A.by(new A.bWN(this),t.U)}, +gMh(){return new A.by(new A.bWP(this),t.U)}, +gHV(){return new A.by(new A.bWR(this),t.U)}, +gHT(){return this.gFZ()}, +gHU(){return new A.bx(this.ghD().b,1,B.O,-1)}, +gPp(){return this.gAK().y}, +gPn(){return new A.by(new A.bWT(this),t.U)}, +gPm(){return new A.by(new A.bWS(this),t.U)}, +gPo(){return new A.by(new A.bWU(this),t.U)}, +gZ8(){return B.D}, +gZ9(){return B.D}, +gZa(){var s=this.ghD(),r=s.w +return r==null?s.f:r}, +gZb(){return new A.by(new A.bWQ(this),t.U)}, +gZ4(){return B.D}, +gZ5(){var s=this.ghD(),r=s.dy +return r==null?s.db:r}, +gZ6(){return this.gAK().r}, +gZ7(){return this.gAK().x}} +A.bWO.prototype={ +$1(a){var s +if(a.p(0,B.S))return this.a.ghD().c +else if(a.p(0,B.F)){s=this.a.ghD().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.ghD().db}, +$S:7} +A.bWN.prototype={ +$1(a){if(a.p(0,B.S))return this.a.ghD().b +return null}, +$S:21} +A.bWP.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.ghD().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.ghD().c +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.ghD().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}else{if(a.p(0,B.X)){s=q.a.ghD() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.ghD() +r=s.dy +s=r==null?s.db:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.ghD() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}return null}, +$S:21} +A.bWR.prototype={ +$1(a){var s +if(a.p(0,B.S))return this.a.ghD().c +else if(a.p(0,B.F)){s=this.a.ghD().b +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.ghD().b}, +$S:7} +A.bWT.prototype={ +$1(a){var s,r +if(a.p(0,B.S))return this.a.ghD().c +else if(a.p(0,B.F)){s=this.a.ghD() +r=s.dy +s=r==null?s.db:r +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=this.a.ghD() +r=s.dy +return r==null?s.db:r}, +$S:7} +A.bWS.prototype={ +$1(a){if(a.p(0,B.S))return this.a.ghD().b +return null}, +$S:21} +A.bWU.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.ghD().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.ghD().c +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.ghD().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}else{if(a.p(0,B.X)){s=q.a.ghD() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.ghD() +r=s.dy +s=r==null?s.db:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.ghD() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}return null}, +$S:21} +A.bWQ.prototype={ +$1(a){var s,r +if(a.p(0,B.X)){s=this.a.ghD() +r=s.e +s=r==null?s.c:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.ghD() +r=s.e +s=r==null?s.c:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.ghD() +r=s.e +s=r==null?s.c:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.aN9.prototype={} +A.aNs.prototype={} +A.bcw.prototype={ +It(a){return B.A}, +Vi(a,b,c,d){return B.ap}, +Is(a,b){return B.h}} +A.b_x.prototype={} +A.asy.prototype={ +q(a){var s=null,r=A.bC(a,B.cV,t.l).w.r.b+8 +return new A.aA(new A.af(8,r,8,8),new A.q1(new A.asz(this.c.W(0,new A.j(8,r))),new A.ba(222,s,A.fX(B.K,!0,B.a2y,A.cS(this.d,B.t,s,B.o,B.Z,s,s,B.x),B.dL,s,1,s,s,s,s,s,B.fZ),s),s),s)}} +A.Qr.prototype={ +q(a){var s=null +return new A.ba(1/0,s,A.nq(!1,this.d,B.i,s,!0,s,s,s,s,this.c,s,A.VJ(B.c9,s,s,s,s,B.c6,s,s,B.c6,s,A.G(a).ay.a===B.aN?B.r:B.aL,s,s,B.bmn,B.aiC,s,B.ep,s,s,s,s,s,s)),s)}} +A.asF.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +A.G(a) +s=A.G(a).bU +r=t.l +q=A.bC(a,B.qM,r).w +p=q.f.S(0,h.x) +o=A.cOe(a) +q=s.f +if(q==null){q=o.f +q.toString}n=h.c +if(n==null)n=s.a +if(n==null)n=A.G(a).ch +m=h.d +if(m==null)m=s.b +if(m==null){m=o.b +m.toString}l=h.e +if(l==null)l=s.c +if(l==null)l=o.gc0(0) +k=h.f +if(k==null)k=s.d +if(k==null)k=o.gc9() +j=h.z +if(j==null)j=s.e +if(j==null){j=o.e +j.toString}i=new A.fl(q,g,g,new A.fI(B.a2Z,A.fX(B.K,!0,g,h.as,h.y,n,m,g,l,j,k,g,B.fZ),g),g) +return new A.ZY(p,A.rC(i,A.bC(a,g,r).w.aEI(!0,!0,!0,!0),g),B.ft,B.b1,g,g)}} +A.OM.prototype={ +q(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=A.G(a2),b=A.G(a2).bU,a=A.cOe(a2),a0=e.dy,a1=c.w +switch(a1.a){case 2:case 4:break +case 0:case 1:case 3:case 5:s=A.dS(a2,B.an,t.v) +s.toString +a0=s.gcp() +break}s=A.cG(a2,B.bn) +s=s==null?d:s.gdZ() +s=A.av(1,0.3333333333333333,A.Z((s==null?B.Y:s).gir(),1,2)-1) +s.toString +A.fq(a2) +r=e.f +q=r==null +p=!q +if(p){o=new A.af(24,24,24,0) +n=e.r +m=n==null?d:n +if(m==null)m=o +n=b.r +if(n==null){n=a.glP() +n.toString}a1=a0==null&&a1!==B.aM +l=new A.aA(new A.af(m.a*s,m.b*s,m.c*s,m.d),A.h4(new A.bX(A.ci(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,a1,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),!0,!1,!1,!1,r,d),d,d,B.aG,!0,n,B.ah,d,B.a0),d)}else l=d +k=new A.af(24,16,24,24) +a1=e.y +j=a1==null?d:a1 +if(j==null)j=k +a1=q&&!0 +r=j.b +a1=a1?r*s:r +r=b.w +if(r==null){r=a.gu8() +r.toString}i=new A.aA(new A.af(j.a*s,a1,j.c*s,j.d),A.h4(new A.bX(A.ci(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,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d),!0,!1,!1,!1,e.x,d),d,d,B.aG,!0,r,d,d,B.a0),d) +a1=e.Q +s=a1!=null +if(s){r=b.x +if(r==null)r=a.gUE() +q=e.at +if(q==null)q=B.fa +h=new A.aA(r,A.a6B(q,a1,B.Sy,B.x,0,8),d)}else h=d +a1=t.p +if(e.id){r=A.a([],a1) +a1=A.a([],a1) +if(p){l.toString +a1.push(l)}i.toString +a1.push(i) +r.push(new A.iO(1,B.c1,A.uq(A.cS(a1,B.co,d,B.o,B.Z,d,d,B.x),B.k,d,B.m,d,B.c5,d,d,d,d,!1,B.v),d)) +if(s){h.toString +r.push(h)}g=r}else{a1=A.a([],a1) +if(p){l.toString +a1.push(l)}i.toString +a1.push(new A.iO(1,B.c1,i,d)) +if(s){h.toString +a1.push(h)}g=a1}f=A.bnN(A.cS(g,B.co,d,B.o,B.Z,d,d,B.x),d) +if(a0!=null)f=new A.bX(A.ci(d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,a0,d,d,d,d,d,!0,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,!0,d,d,d,d,d,d,d,d,d),!1,!0,!1,!1,f,d) +return A.cwd(d,e.cx,f,e.fx,e.cy,e.fr,e.db,e.fy,e.dx)}} +A.a1L.prototype={} +A.bcZ.prototype={ +$3(a,b,c){var s=new A.e_(this.a,null),r=new A.xc(this.b.a,s,null) +return new A.iX(!0,!0,!0,!0,B.L,!1,r,null)}, +$C:"$3", +$R:3, +$S:190} +A.bXK.prototype={ +ga2y(){var s,r=this,q=r.Q +if(q===$){s=A.G(r.z) +r.Q!==$&&A.a_() +q=r.Q=s.ay}return q}, +gasG(){var s,r=this,q=r.as +if(q===$){s=A.G(r.z) +r.as!==$&&A.a_() +q=r.as=s.p3}return q}, +ghU(){return this.ga2y().f}, +gcv(a){return this.ga2y().cy}, +gc0(a){return B.D}, +gc9(){var s=this.ga2y(),r=s.k3 +return r==null?s.b:r}, +glP(){return this.gasG().f}, +gu8(){return this.gasG().z}, +gUE(){return B.aiD}} +A.Qt.prototype={ +gv(a){return J.ab(this.e)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.Qt&&J.q(b.gcv(b),s.gcv(s))&&b.b==s.b&&J.q(b.gc0(b),s.gc0(s))&&J.q(b.gc9(),s.gc9())&&J.q(b.e,s.e)&&J.q(b.f,s.f)&&J.q(b.ghU(),s.ghU())&&J.q(b.glP(),s.glP())&&J.q(b.gu8(),s.gu8())&&J.q(b.gUE(),s.gUE())}, +gcv(a){return this.a}, +gc0(a){return this.c}, +gc9(){return this.d}, +glP(){return this.r}, +gu8(){return this.w}, +gUE(){return this.x}, +ghU(){return this.y}} +A.aNx.prototype={} +A.q3.prototype={ +q(a){var s,r,q,p,o,n,m,l=this,k=null +A.G(a) +s=A.cwo(a) +r=A.czV(a) +q=l.c +p=q==null?s.b:q +if(p==null){q=r.b +q.toString +p=q}q=l.d +o=q==null?s.c:q +if(o==null){q=r.c +q.toString +o=q}q=l.e +n=q==null?s.d:q +if(n==null){q=r.d +q.toString +n=q}q=l.f +m=q==null?s.e:q +if(m==null){q=r.e +q.toString +m=q}return new A.ba(k,p,A.eu(A.bB(k,k,B.i,k,k,new A.c_(k,k,new A.eR(B.G,B.G,A.cH2(a,l.r,o),B.G),k,k,k,k,B.U),k,o,k,new A.eB(n,0,m,0),k,k,k,k),k,k,k),k)}} +A.Wn.prototype={ +q(a){var s,r,q,p,o,n,m,l=null +A.G(a) +s=A.cwo(a) +r=A.czV(a) +q=this.c +p=q==null?s.b:q +if(p==null){q=r.b +q.toString +p=q}q=this.d +o=q==null?s.c:q +if(o==null){q=r.c +q.toString +o=q}n=s.d +if(n==null){q=r.d +q.toString +n=q}m=s.e +if(m==null){q=r.e +q.toString +m=q}return new A.ba(p,l,A.eu(A.bB(l,l,B.i,l,l,new A.c_(l,l,new A.eR(B.G,B.G,B.G,A.cH2(a,this.r,o)),l,l,l,l,B.U),l,l,l,new A.eB(0,n,0,m),l,l,l,o),l,l,l),l)}} +A.bXU.prototype={ +ga6(a){var s=A.G(this.f).ay,r=s.fx +return r==null?s.cx:r}} +A.Qw.prototype={ +gv(a){var s=this +return A.ad(s.ga6(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.az(b)!==A.I(s))return!1 +return b instanceof A.Qw&&J.q(b.ga6(b),s.ga6(s))&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e}, +ga6(a){return this.a}} +A.aND.prototype={} +A.a2c.prototype={ +gv(a){var s=this +return A.ad(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 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.a2c&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&b.c==s.c&&J.q(b.d,s.d)&&J.q(b.e,s.e)&&J.q(b.f,s.f)&&J.q(b.r,s.r)&&b.w==s.w}} +A.aNY.prototype={} +A.o4.prototype={} +A.QC.prototype={ +J(){var s=t.A +return new A.Xj(new A.aR(null,s),new A.aR(null,s),new A.zm(),B.f,this.$ti.h("Xj<1>"))}} +A.Xj.prototype={ +gvJ(){this.a.toString +var s=this.at +if(s==null){s=new A.eZ(B.bU,$.ae()) +this.at=s}return s}, +a8(){var s,r,q,p,o,n=this +n.an() +s=n.a +s.toString +n.w=!1 +s=s.dx +n.x=s +r=s.length +q=J.d1(r,t.yi) +for(s=t.A,p=0;p>>16&255,k.gj(k)>>>8&255,k.gj(k)&255),q)):l +if(c){i=h.f +i===$&&A.b() +i=i[p]}else i=g +f.push(new A.SI(new A.bYd(h,o,p),!1,j,g,g,new A.eY(n,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g),i))}return f}, +aWF(a,b,c){return this.aiZ(a,b,c,null)}, +aWG(a,b,c){return this.aiZ(a,b,!0,c)}, +bxX(a){this.C(new A.bYo(this))}, +bwX(a){this.C(new A.bYm(this))}, +aAk(a){var s=this +if(a.a.z.gml()){s.z=null +a.a.vB()}else{if(s.gvJ().a.a.length!==0)s.w=!1 +a.a.SN(0,null)}s.C(new A.bYn())}, +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=a.a0(t.I) +h.toString +s=h.w +if(j.y==null)j.y=j.aWF(j.a.dx,s,!1) +h=a.a0(t.cs) +if(h!=null)h.gi3(h) +r=A.G(a).D +j.w===$&&A.b() +j.a.toString +h=j.x +h===$&&A.b() +h=j.aKk(0,h,j.gvJ()) +j.z=h +if(h!=null)j.aKj() +h=j.x +h===$&&A.b() +q=j.aWG(h,s,j.z) +j.a.toString +p=r.a +if(p==null)p=new A.bYc(a,i,i,i).gb08().p3.y +j.a.toString +o=r.c +if(o==null)o=B.Rx +n=j.af8(j.d) +j.a.toString +if(n!=null)o=o.brL(new A.bS(new A.V(n,0),t.BT)) +j.a.toString +m=A.cK2(new A.bYj(j,j.a8_()?B.jN:B.bG,p,B.Eq),i,B.k,!1,j.r,!1,q,o) +j.a.toString +h=$.d_3() +l=t.h +k=t.b +return A.Fi(A.ts(A.a1([B.buY,new A.ej(j.gbxW(),new A.bN(A.a([],l),k),t.vE),B.buX,new A.ej(j.gbwW(),new A.bN(A.a([],l),k),t.jU)],t.u,t.od),m),i,h)}} +A.bYp.prototype={ +$1(a){return!0}, +$S(){return this.a.$ti.h("A(o4<1>)")}} +A.bYq.prototype={ +$1(a){return a.a===this.a.a.cx}, +$S(){return this.a.$ti.h("A(o4<1>)")}} +A.bYk.prototype={ +$1(a){return!0}, +$S(){return this.a.$ti.h("A(o4<1>)")}} +A.bYl.prototype={ +$1(a){return a.a===this.a.a.cx}, +$S(){return this.a.$ti.h("A(o4<1>)")}} +A.bYs.prototype={ +$1(a){var s=this.a +s.C(new A.bYr(s))}, +$S:5} +A.bYr.prototype={ +$0(){var s=this.a +s.Q=s.af8(s.e)}, +$S:0} +A.bYt.prototype={ +$1(a){var s,r=this.a,q=r.f +q===$&&A.b() +r=r.z +r.toString +r=q[r] +s=$.an.U$.z.i(0,r) +if(s!=null)A.cLZ(s,0,B.xa,B.az,B.w)}, +$S:5} +A.bYu.prototype={ +$1(a){return B.c.p(a.b.toLowerCase(),this.b)}, +$S(){return this.a.$ti.h("A(o4<1>)")}} +A.bYd.prototype={ +$0(){var s=this.a,r=this.b,q=r.b +s.gvJ().oQ(0,new A.cu(q,A.oK(B.E,q.length),B.aw)) +q=s.a +q.toString +s.z=this.c +q.cy.$1(r.a)}, +$S:0} +A.bYo.prototype={ +$0(){var s,r,q,p,o=this.a +if(!o.as||!o.r.a.z.gml())return +o.w=!1 +s=o.z +if(s==null)s=o.z=0 +r=o.x +r===$&&A.b() +s=o.z=B.d.M(s-1,r.length) +while(!0){q=r[s] +q.toString +if(!!1)break +s=B.d.M(s-1,r.length) +o.z=s}p=q.b +o.gvJ().oQ(0,new A.cu(p,A.oK(B.E,p.length),B.aw))}, +$S:0} +A.bYm.prototype={ +$0(){var s,r,q,p,o=this.a +if(!o.as||!o.r.a.z.gml())return +o.w=!1 +s=o.z +if(s==null)s=o.z=-1 +r=o.x +r===$&&A.b() +s=o.z=B.d.M(s+1,r.length) +while(!0){q=r[s] +q.toString +if(!!1)break +s=B.d.M(s+1,r.length) +o.z=s}p=q.b +o.gvJ().oQ(0,new A.cu(p,A.oK(B.E,p.length),B.aw))}, +$S:0} +A.bYn.prototype={ +$0(){}, +$S:0} +A.bYj.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m=this,l=null,k=b.a.z.gml(),j=m.a +j.a.toString +s=new A.aA(B.iV,A.lx(l,!1,l,l,l,l,l,l,l,l,B.azK,l,k,l,l,new A.bYf(j,b),l,B.azD,l,l,l,l,l),l) +k=j.a8_() +r=j.a8_() +q=j.gvJ() +p=j.a.w +o=A.Fz(!0,B.bF,!1,l,k,B.k,l,A.Ov(),q,l,l,l,l,l,2,A.md(l,l,l,l,l,l,l,l,!0,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,p,l,l,l,l,l,l,l,l,l,l,s,l,l,l,l).Lz(m.d),B.m,!0,r,!0,l,!1,l,l,j.d,l,l,l,l,l,1,l,m.b,!1,"\u2022",l,new A.bYg(j,b),new A.bYh(j,b),l,new A.bYi(j,b),!1,l,!1,l,!0,l,B.ec,l,l,B.cY,B.cA,l,l,l,l,l,l,m.c,B.ah,B.lX,B.fk,l,l,l,l) +j.a.toString +k=A.a([o],t.p) +for(j=j.y,r=j.length,n=0;n>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a +return A.Y(61,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}} +A.aOi.prototype={ +a5(a){var s=this +if(a.p(0,B.F))return 0 +if(a.p(0,B.X))return s.a+6 +if(a.p(0,B.P))return s.a+2 +if(a.p(0,B.R))return s.a+2 +return s.a}} +A.aOj.prototype={ +a5(a){if(a.p(0,B.F))return this.b +return this.a}} +A.aOl.prototype={ +gvw(){var s,r=this,q=r.fr +if(q===$){s=A.G(r.dy) +r.fr!==$&&A.a_() +q=r.fr=s.ay}return q}, +ghp(){return new A.bS(A.G(this.dy).p3.as,t.wG)}, +gcv(a){return new A.by(new A.bYY(this),t.U)}, +ghx(){return new A.by(new A.bZ_(this),t.U)}, +gew(){return new A.by(new A.bZ1(this),t.U)}, +gc0(a){var s=this.gvw().fy +if(s==null)s=B.B +return new A.bS(s,t.h9)}, +gc9(){var s=this.gvw(),r=s.k3 +s=r==null?s.b:r +return new A.bS(s,t.h9)}, +gft(a){return new A.by(new A.bYZ(),t.pj)}, +gdX(a){return new A.bS(A.dnL(this.dy),t.Ak)}, +glg(){return B.lq}, +gle(){return B.eH}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.bZ0(),t.Y6)}, +gh6(){return A.G(this.dy).Q}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.bYY.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a.gvw().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.gvw().cy}, +$S:7} +A.bZ_.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a.gvw().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.gvw().b}, +$S:7} +A.bZ1.prototype={ +$1(a){var s +if(a.p(0,B.X)){s=this.a.gvw().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.gvw().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.gvw().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.bYZ.prototype={ +$1(a){if(a.p(0,B.F))return 0 +if(a.p(0,B.X))return 1 +if(a.p(0,B.P))return 3 +if(a.p(0,B.R))return 1 +return 1}, +$S:153} +A.bZ0.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.b_z.prototype={} +A.b_A.prototype={} +A.b_B.prototype={} +A.b_C.prototype={} +A.a2v.prototype={ +gv(a){return J.ab(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.a2v&&J.q(b.a,this.a)}} +A.aOm.prototype={} +A.B_.prototype={} +A.a2U.prototype={ +gv(a){var s=this +return A.ad(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,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.az(b)!==A.I(r))return!1 +if(b instanceof A.a2U)if(J.q(b.a,r.a))if(J.q(b.b,r.b))if(J.q(b.c,r.c))if(J.q(b.d,r.d))if(J.q(b.e,r.e))if(J.q(b.f,r.f))if(J.q(b.r,r.r))if(J.q(b.w,r.w))if(J.q(b.x,r.x))if(J.q(b.y,r.y))if(J.q(b.z,r.z))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 +return s}} +A.aOD.prototype={} +A.c_Y.prototype={ +H(){return"_FilledButtonVariant."+this.b}} +A.Dm.prototype={ +rp(a){var s=null +switch(this.ax.a){case 0:return new A.aOT(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.K,!0,B.C,s) +case 1:return new A.aOY(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.K,!0,B.C,s)}}, +OS(a){var s +a.a0(t.Q9) +s=A.G(a) +return s.ag.a}} +A.aOV.prototype={ +rp(a){var s,r,q,p +A.G(a) +s=this.aOl(a) +r=s.ghp().a +r=r==null?null:r.r +q=r +if(q==null)q=14 +r=A.cG(a,B.bn) +r=r==null?null:r.gdZ() +p=A.Hw(B.u1,B.CX,B.CW,(r==null?B.Y:r).bK(0,q)/14) +return s.BP(new A.bS(p,t.Ak))}} +A.aOW.prototype={ +q(a){var s,r,q=null,p=A.cG(a,B.bn) +p=p==null?q:p.gdZ() +s=(p==null?B.Y:p).gir() +if(s<=1)r=8 +else{p=A.av(8,4,Math.min(s-1,1)) +p.toString +r=p}return A.eq(A.a([this.d,new A.ba(r,q,q,q),new A.iO(1,B.c1,this.c,q)],t.p),B.t,q,B.o,B.Z,q,q,B.x)}} +A.aOT.prototype={ +glY(){var s,r=this,q=r.fr +if(q===$){s=A.G(r.dy) +r.fr!==$&&A.a_() +q=r.fr=s.ay}return q}, +ghp(){return new A.bS(A.G(this.dy).p3.as,t.wG)}, +gcv(a){return new A.by(new A.c_T(this),t.U)}, +ghx(){return new A.by(new A.c_V(this),t.U)}, +gew(){return new A.by(new A.c_X(this),t.U)}, +gc0(a){var s=this.glY().fy +if(s==null)s=B.B +return new A.bS(s,t.h9)}, +gc9(){return B.cg}, +gft(a){return new A.by(new A.c_U(),t.pj)}, +gdX(a){return new A.bS(A.cRj(this.dy),t.Ak)}, +glg(){return B.lq}, +gle(){return B.eH}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.c_W(),t.Y6)}, +gh6(){return A.G(this.dy).Q}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.c_T.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a.glY().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.glY().b}, +$S:7} +A.c_V.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a.glY().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.glY().c}, +$S:7} +A.c_X.prototype={ +$1(a){var s +if(a.p(0,B.X)){s=this.a.glY().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.glY().c +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.glY().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.c_U.prototype={ +$1(a){if(a.p(0,B.F))return 0 +if(a.p(0,B.X))return 0 +if(a.p(0,B.P))return 1 +if(a.p(0,B.R))return 0 +return 0}, +$S:153} +A.c_W.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.aOY.prototype={ +glY(){var s,r=this,q=r.fr +if(q===$){s=A.G(r.dy) +r.fr!==$&&A.a_() +q=r.fr=s.ay}return q}, +ghp(){return new A.bS(A.G(this.dy).p3.as,t.wG)}, +gcv(a){return new A.by(new A.c03(this),t.U)}, +ghx(){return new A.by(new A.c05(this),t.U)}, +gew(){return new A.by(new A.c07(this),t.U)}, +gc0(a){var s=this.glY().fy +if(s==null)s=B.B +return new A.bS(s,t.h9)}, +gc9(){return B.cg}, +gft(a){return new A.by(new A.c04(),t.pj)}, +gdX(a){return new A.bS(A.cRj(this.dy),t.Ak)}, +glg(){return B.lq}, +gle(){return B.eH}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.c06(),t.Y6)}, +gh6(){return A.G(this.dy).Q}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.c03.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.glY().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=this.a.glY() +r=s.w +return r==null?s.f:r}, +$S:7} +A.c05.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.glY().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=this.a.glY() +r=s.x +return r==null?s.r:r}, +$S:7} +A.c07.prototype={ +$1(a){var s,r +if(a.p(0,B.X)){s=this.a.glY() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.glY() +r=s.x +s=r==null?s.r:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.glY() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.c04.prototype={ +$1(a){if(a.p(0,B.F))return 0 +if(a.p(0,B.X))return 0 +if(a.p(0,B.P))return 1 +if(a.p(0,B.R))return 0 +return 0}, +$S:153} +A.c06.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.a34.prototype={ +gv(a){return J.ab(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.a34&&J.q(b.a,this.a)}} +A.aOU.prototype={} +A.b9I.prototype={ +H(){return"CollapseMode."+this.b}} +A.aae.prototype={ +H(){return"StretchMode."+this.b}} +A.a3k.prototype={ +J(){return new A.aPd(B.f)}} +A.aPd.prototype={ +b1P(a,b){this.a.toString +switch(0){case 0:return J.cEo(new A.aP(0,(b.w-b.r)/4,t.Y).ah(0,a))}}, +q(a){return new A.fV(new A.c0j(this),null)}} +A.c0j.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=null,g=a.a0(t.N8) +g.toString +s=A.a([],t.p) +r=g.w +q=g.r +p=r-q +o=A.Z(1-(g.x-q)/p,0,1) +n=this.a +n.a.toString +m=Math.max(0,1-56/p) +l=r===q?1:1-new A.eG(m,1,B.H).ah(0,o) +n.a.toString +k=B.b.p(B.HF,B.YH)&&b.d>r?b.d:r +j=n.b1P(o,g) +s.push(A.mo(h,new A.aPe(l,!0,n.a.d,h),k,h,0,0,j,h)) +n.a.toString +if(B.b.p(B.HF,B.bnc)&&b.d>r){i=(b.d-r)/10 +g=$.ar().yz(i,i,B.bH) +s.push(A.po(0,A.OW(A.bB(h,h,B.i,B.D,h,h,h,h,h,h,h,h,h,h),g)))}n.a.toString +return A.p3(new A.d4(B.ar,h,B.am,B.k,s,h),B.k,h)}, +$S:1699} +A.a3l.prototype={ +ed(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||s.z!=a.z}} +A.aPe.prototype={ +aR(a){var s=this.e +s=new A.aUW(B.e.aF(A.Z(s,0,1)*255),s,!0,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sLw(!0) +b.shn(0,this.e)}} +A.aUW.prototype={ +giD(){return!1}, +aI(a,b){var s,r=this +if(r.k1$==null)return +if(B.e.OK(r.ac*255)<=0){r.ch.sb9(0,null) +return}s=r.ch +s.sb9(0,a.zR(b,B.e.aF(r.ac*255),A.LA.prototype.gk0.call(r),t.sh.a(s.a)))}} +A.bXn.prototype={ +k(a){return""}} +A.Xo.prototype={ +H(){return"_FloatingActionButtonType."+this.b}} +A.yM.prototype={ +q(a7){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.G(a7),a3=a2.aq,a4=a0.k1,a5=new A.c_p(a7,a4,!0,a1,a1,a1,a1,a1,6,6,8,a1,6,a1,!0,a1,B.a2U,B.a2T,B.a2V,B.a2W,8,a1,a1,a1),a6=a3.a +if(a6==null)a6=a5.ghx() +s=a3.b +if(s==null)s=a5.gcv(0) +r=a3.c +if(r==null)r=a5.guv() +q=a3.d +if(q==null)q=a5.gzm() +p=a3.e +if(p==null)p=a5.gJ2() +o=a3.f +if(o==null){n=a5.f +n.toString +o=n}m=a3.r +if(m==null){n=a5.r +n.toString +m=n}l=a3.w +if(l==null){n=a5.w +n.toString +l=n}n=a3.x +k=n==null?a5.x:n +if(k==null)k=o +j=a3.y +if(j==null){n=a5.y +n.toString +j=n}i=a3.Q +if(i==null){n=a5.Q +n.toString +i=n}h=a3.as +if(h==null){n=a5.gkP() +n.toString +h=n}n=a3.cy +if(n==null){n=a5.gMO() +n.toString}g=n.bu(a6) +f=a3.z +if(f==null){n=a5.gdg(0) +n.toString +f=n}n=a0.c +e=A.qd(n,new A.dW(h,a1,a1,a1,a1,a1,a1,a1,a1)) +switch(a4.a){case 0:d=a3.at +if(d==null){a4=a5.at +a4.toString +d=a4}break +case 1:d=a3.ax +if(d==null){a4=a5.ax +a4.toString +d=a4}break +case 2:d=a3.ay +if(d==null){a4=a5.ay +a4.toString +d=a4}break +case 3:d=a3.ch +if(d==null){a4=a5.ch +a4.toString +d=a4}c=a3.CW +if(c==null)c=8 +b=a3.cx +if(b==null)b=a5.gMN() +a4=A.a([],t.p) +a4.push(n) +n=a0.db +if(n)a4.push(new A.ba(c,a1,a1,a1)) +if(n){n=a0.k2 +n.toString +a4.push(n)}e=new A.aLX(new A.aA(b,A.eq(a4,B.t,a1,B.o,B.Z,a1,a1,B.x),a1),a1) +break +default:d=a1}a=A.cLj(B.K,!1,e,B.i,d,k,o,i,s,r,m,a1,a1,j,q,l,a2.f,new A.aOc(a0.Q,a3.db),a1,a1,a0.z,B.L,f,p,g,B.hi) +a=A.avg(a,a1,a1,a1,B.a5O,!1) +return new A.zo(a,a1)}} +A.aOc.prototype={ +a5(a){var s=A.d2(this.a,a,t.GE) +if(s==null)s=null +return s==null?B.eu.a5(a):s}, +gyE(){return"MaterialStateMouseCursor(FloatActionButton)"}} +A.aLX.prototype={ +aR(a){var s=a.a0(t.I) +s.toString +s=new A.ahg(B.C,s.w,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s=a.a0(t.I) +s.toString +b.sd5(s.w)}} +A.ahg.prototype={ +bo(a){return 0}, +bh(a){return 0}, +cX(a){var s,r=this.k1$,q=a.a,p=a.b,o=a.c,n=a.d +if(r!=null){s=r.jr(B.e9) +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.Z(1/0,q,p),A.Z(1/0,o,n))}, +bJ(){var s=this,r=t.k.a(A.H.prototype.gZ.call(s)),q=s.k1$,p=r.a,o=r.b,n=r.c,m=r.d +if(q!=null){q.d_(B.e9,!0) +s.id=new A.V(Math.max(p,Math.min(o,s.k1$.gu(0).a)),Math.max(n,Math.min(m,s.k1$.gu(0).b))) +s.Fl()}else s.id=new A.V(A.Z(1/0,p,o),A.Z(1/0,n,m))}} +A.c_p.prototype={ +gJG(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dx) +r.fx!==$&&A.a_() +q=r.fx=s.ay}return q}, +ghx(){var s=this.gJG(),r=s.e +return r==null?s.c:r}, +gcv(a){var s=this.gJG(),r=s.d +return r==null?s.b:r}, +gJ2(){var s=this.gJG(),r=s.e +s=r==null?s.c:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +guv(){var s=this.gJG(),r=s.e +s=r==null?s.c:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gzm(){var s=this.gJG(),r=s.e +s=r==null?s.c:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gdg(a){switch(this.dy.a){case 0:return B.X7 +case 1:return B.pS +case 2:return B.x7 +case 3:return B.X7}}, +gkP(){switch(this.dy.a){case 0:return 24 +case 1:return 24 +case 2:return 36 +case 3:return 24}}, +gMN(){return new A.eB(this.fr&&this.dy===B.a_r?16:20,0,20,0)}, +gMO(){var s,r=this,q=r.fy +if(q===$){s=A.G(r.dx) +r.fy!==$&&A.a_() +q=r.fy=s.p3}return q.as}} +A.bip.prototype={ +k(a){return"FloatingActionButtonLocation"}} +A.bH2.prototype={ +bzp(){return!1}, +tf(a){var s=this.bzp()?4:0 +return new A.j(this.aJ1(a,s),this.aeR(a,s))}} +A.bhz.prototype={ +aeR(a,b){var s=a.d,r=a.f.b +if(s>r)return s-a.a.b/2 +return r}} +A.bhy.prototype={ +aeR(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.atM.prototype={ +aJ1(a,b){switch(a.y.a){case 0:return 16+a.e.a-b +case 1:return A.ddS(a,b)}}} +A.bZ4.prototype={ +k(a){return"FloatingActionButtonLocation.endTop"}} +A.bZ3.prototype={ +k(a){return"FloatingActionButtonLocation.endFloat"}} +A.bio.prototype={ +k(a){return"FloatingActionButtonAnimator"}} +A.cdJ.prototype={ +aeO(a,b,c){if(c<0.5)return a +else return b}} +A.acF.prototype={ +gj(a){var s=this,r=s.w.x +r===$&&A.b() +if(r>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +return s}if(a.p(0,B.P)){s=q.c +r=q.a +s=r==null?p:A.Y(20,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +return s}if(a.p(0,B.R)){s=q.b +r=q.a +s=r==null?p:A.Y(31,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +return s}}if(a.p(0,B.X)){s=q.d +r=q.a +s=r==null?p:A.Y(31,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +return s}if(a.p(0,B.P)){s=q.c +r=q.a +s=r==null?p:A.Y(20,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +return s}if(a.p(0,B.R)){s=q.b +r=q.a +s=r==null?p:A.Y(20,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +return s}return p}, +k(a){return"{hovered: "+A.r(this.c)+", focused: "+A.r(this.b)+", pressed: "+A.r(this.d)+", otherwise: null}"}} +A.aQ_.prototype={ +a5(a){if(a.p(0,B.F))return this.b +return this.a}} +A.aQ1.prototype={ +gdU(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dy) +r.fx!==$&&A.a_() +q=r.fx=s.ay}return q}, +gcv(a){return B.b4s}, +ghx(){return new A.by(new A.c1S(this),t.U)}, +gew(){return new A.by(new A.c1U(this),t.U)}, +gft(a){return B.hS}, +gc0(a){return B.cg}, +gc9(){return B.cg}, +gdX(a){return B.pf}, +glg(){return B.pe}, +gle(){return B.eH}, +gkP(){return B.pd}, +ghr(){return null}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.c1T(),t.Y6)}, +gh6(){return B.hi}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.c1S.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gdU().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S))return this.a.gdU().b +s=this.a.gdU() +r=s.dy +return r==null?s.db:r}, +$S:7} +A.c1U.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.gdU().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.gdU().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.gdU().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}if(a.p(0,B.X)){s=q.a.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}, +$S:7} +A.c1T.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.aOX.prototype={ +gdU(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dy) +r.fx!==$&&A.a_() +q=r.fx=s.ay}return q}, +gcv(a){return new A.by(new A.c0_(this),t.U)}, +ghx(){return new A.by(new A.c00(this),t.U)}, +gew(){return new A.by(new A.c02(this),t.U)}, +gft(a){return B.hS}, +gc0(a){return B.cg}, +gc9(){return B.cg}, +gdX(a){return B.pf}, +glg(){return B.pe}, +gle(){return B.eH}, +gkP(){return B.pd}, +ghr(){return null}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.c01(),t.Y6)}, +gh6(){return B.hi}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.c0_.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gdU().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S))return this.a.gdU().b +s=this.a +if(s.fr){s=s.gdU() +r=s.dx +return r==null?s.cy:r}return s.gdU().b}, +$S:7} +A.c00.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a.gdU().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S))return this.a.gdU().c +s=this.a +if(s.fr)return s.gdU().b +return s.gdU().c}, +$S:7} +A.c02.prototype={ +$1(a){var s,r=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=r.a.gdU().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.gdU().c +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.gdU().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}s=r.a +if(s.fr){if(a.p(0,B.X)){s=s.gdU().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=s.gdU().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=s.gdU().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}if(a.p(0,B.X)){s=s.gdU().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=s.gdU().c +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=s.gdU().c +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}, +$S:7} +A.c01.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.aOZ.prototype={ +gdU(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dy) +r.fx!==$&&A.a_() +q=r.fx=s.ay}return q}, +gcv(a){return new A.by(new A.c08(this),t.U)}, +ghx(){return new A.by(new A.c09(this),t.U)}, +gew(){return new A.by(new A.c0b(this),t.U)}, +gft(a){return B.hS}, +gc0(a){return B.cg}, +gc9(){return B.cg}, +gdX(a){return B.pf}, +glg(){return B.pe}, +gle(){return B.eH}, +gkP(){return B.pd}, +ghr(){return null}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.c0a(),t.Y6)}, +gh6(){return B.hi}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.c08.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gdU().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S)){s=this.a.gdU() +r=s.w +return r==null?s.f:r}s=this.a +if(s.fr){s=s.gdU() +r=s.dx +return r==null?s.cy:r}s=s.gdU() +r=s.w +return r==null?s.f:r}, +$S:7} +A.c09.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gdU().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S)){s=this.a.gdU() +r=s.x +return r==null?s.r:r}s=this.a +if(s.fr){s=s.gdU() +r=s.dy +return r==null?s.db:r}s=s.gdU() +r=s.x +return r==null?s.r:r}, +$S:7} +A.c0b.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.gdU() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.gdU() +r=s.x +s=r==null?s.r:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.gdU() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}s=q.a +if(s.fr){if(a.p(0,B.X)){s=s.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=s.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=s.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}if(a.p(0,B.X)){s=s.gdU() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=s.gdU() +r=s.x +s=r==null?s.r:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=s.gdU() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}, +$S:7} +A.c0a.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.aSK.prototype={ +gdU(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dy) +r.fx!==$&&A.a_() +q=r.fx=s.ay}return q}, +gcv(a){return new A.by(new A.c8Q(this),t.U)}, +ghx(){return new A.by(new A.c8R(this),t.U)}, +gew(){return new A.by(new A.c8T(this),t.U)}, +gft(a){return B.hS}, +gc0(a){return B.cg}, +gc9(){return B.cg}, +gdX(a){return B.pf}, +glg(){return B.pe}, +gle(){return B.eH}, +gkP(){return B.pd}, +ghr(){return new A.by(new A.c8U(this),t.Sq)}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.c8S(),t.Y6)}, +gh6(){return B.hi}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.c8Q.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){if(a.p(0,B.S)){s=this.a.gdU().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}if(a.p(0,B.S)){s=this.a.gdU() +r=s.id +return r==null?s.db:r}return B.D}, +$S:7} +A.c8R.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gdU().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S)){s=this.a.gdU() +r=s.k1 +return r==null?s.cy:r}s=this.a.gdU() +r=s.dy +return r==null?s.db:r}, +$S:7} +A.c8T.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.gdU() +r=s.k1 +s=r==null?s.cy:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.gdU() +r=s.k1 +s=r==null?s.cy:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.gdU() +r=s.k1 +s=r==null?s.cy:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}if(a.p(0,B.X)){s=q.a.gdU().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.gdU() +r=s.dy +s=r==null?s.db:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}, +$S:7} +A.c8U.prototype={ +$1(a){var s,r +if(a.p(0,B.S))return null +else{if(a.p(0,B.F)){s=this.a.gdU().db +return new A.bx(A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}s=this.a.gdU() +r=s.fr +return new A.bx(r==null?s.cx:r,1,B.O,-1)}}, +$S:1701} +A.c8S.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.b_L.prototype={} +A.w9.prototype={ +gv(a){return J.ab(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.w9&&J.q(b.a,this.a)}} +A.a44.prototype={ +x0(a,b,c){return A.a45(c,this.w)}, +ed(a){return!this.w.l(0,a.w)}} +A.aQ3.prototype={} +A.JA.prototype={ +gb7P(){var s,r=this.e +if(r==null)return B.L +s=r.gdX(r) +return s}, +J(){return new A.afo(new A.aR(null,t.A),B.f)}} +A.afo.prototype={ +b5L(){this.e=null}, +fS(){var s=this.e +if(s!=null)s.m() +this.jO()}, +aWB(a){var s,r,q,p=this,o=null,n=p.e,m=p.a +if(n==null){n=m.e +m=A.cNK(a) +s=A.GL(a,o) +r=A.bpW(a,t.zd) +r.toString +q=$.an.U$.z.i(0,p.d).gai() +q.toString +q=new A.a4p(s,r,t.x.a(q),p.gb5K()) +q.sbT(n) +q.saBx(m) +r.UM(q) +p.e=q}else{n.sbT(m.e) +n=p.e +n.toString +n.saBx(A.cNK(a)) +n=p.e +n.toString +n.su7(A.GL(a,o))}n=p.a.c +return n==null?new A.fI(B.ki,o,o):n}, +q(a){var s=this,r=s.a.gb7P() +s.a.toString +return new A.aA(r,new A.e_(s.gaWA(),null),s.d)}} +A.a4p.prototype={ +sbT(a){var s,r=this +if(J.q(a,r.f))return +r.f=a +s=r.e +if(s!=null)s.m() +s=r.f +r.e=s==null?null:s.yA(r.gb3a()) +r.a.aV()}, +saBx(a){if(a===this.r)return +this.r=a +this.a.aV()}, +su7(a){if(a.l(0,this.w))return +this.w=a +this.a.aV()}, +b3b(){this.a.aV()}, +m(){var s=this.e +if(s!=null)s.m() +this.vj()}, +YM(a,b){var s,r,q=this +if(q.e==null||!q.r)return +s=A.azd(b) +r=q.w.yw(q.b.gu(0)) +if(s==null){a.d6(0) +a.ah(0,b.a) +q.e.jJ(a,B.h,r) +a.de(0)}else q.e.jJ(a,s,r)}} +A.DJ.prototype={ +b2Q(a){var s +if(a===B.a6&&!this.CW){s=this.ch +s===$&&A.b() +s.m() +this.vj()}}, +m(){var s=this.ch +s===$&&A.b() +s.m() +this.vj()}, +apy(a,b,c){var s,r,q=this +a.d6(0) +s=q.f +if(s!=null)a.nG(0,s.i7(b,q.ax)) +switch(q.z.a){case 1:s=b.gc1() +r=q.Q +a.h3(s,r==null?35:r,c) +break +case 0:s=q.as +if(!s.l(0,B.bh))a.dh(A.TX(b,s.c,s.d,s.a,s.b),c) +else a.fs(b,c) +break}a.de(0)}, +YM(a,b){var s,r,q,p=this,o=$.ar().aP(),n=p.e,m=p.ay +m===$&&A.b() +s=m.a +o.sa6(0,A.Y(m.b.ah(0,s.gj(s)),n.gj(n)>>>16&255,n.gj(n)>>>8&255,n.gj(n)&255)) +r=A.azd(b) +n=p.at +if(n!=null)q=n.$0() +else{n=p.b.gu(0) +q=new A.W(0,0,0+n.a,0+n.b)}if(r==null){a.d6(0) +a.ah(0,b.a) +p.apy(a,q,o) +a.de(0)}else p.apy(a,q.eD(r),o)}} +A.cpp.prototype={ +$0(){var s=this.a.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}, +$S:154} +A.aQj.prototype={ +M4(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.bh: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.gu(0) +s=Math.max(r.Vb(0,B.h).gfT(),new A.j(0+r.a,0).W(0,new A.j(0,0+r.b)).gfT())/2}else s=a1 +h=new A.a4q(a0,h,s,A.dm0(a3,d,a2),a4,c,f,e,a3,g) +q=e.G +p=A.bQ(i,B.hw,i,1,i,q) +o=e.gfk() +p.cY() +n=p.em$ +n.b=!0 +n.a.push(o) +p.cM(0) +h.cx=p +n=c.gj(c) +m=t.o +l=t.Hd +h.CW=new A.aB(m.a(p),new A.DL(0,n>>>24&255),l.h("aB")) +n=A.bQ(i,B.aW,i,1,i,q) +n.cY() +p=n.em$ +p.b=!0 +p.a.push(o) +n.cM(0) +h.ch=n +p=t.Y +k=$.cWs() +j=p.h("eb") +h.ay=new A.aB(m.a(n),new A.eb(k,new A.aP(s*0.3,s+5,p),j),j.h("aB")) +q=A.bQ(i,B.CO,i,1,i,q) +q.cY() +j=q.em$ +j.b=!0 +j.a.push(o) +q.cY() +o=q.f0$ +o.b=!0 +o.a.push(h.gb7Q()) +h.db=q +o=c.gj(c) +j=$.cWt() +l=l.h("eb") +h.cy=new A.aB(m.a(q),new A.eb(j,new A.DL(o>>>24&255,0),l),l.h("aB")) +e.UM(h) +return h}, +axR(a,b,c,d,e,f,g,h,i,j,k){return this.M4(0,b,c,!1,d,e,f,g,h,i,j,k)}} +A.a4q.prototype={ +BL(a){var s=this.ch +s===$&&A.b() +s.e=B.ahP +s.cM(0) +s=this.cx +s===$&&A.b() +s.cM(0) +s=this.db +s===$&&A.b() +s.z=B.b_ +s.kn(1,B.H,B.CO)}, +ao(a){var s,r=this,q=r.cx +q===$&&A.b() +q.e3(0) +q=r.cx.x +q===$&&A.b() +s=1-q +q=r.db +q===$&&A.b() +q.sj(0,s) +if(s<1){q=r.db +q.z=B.b_ +q.kn(1,B.H,B.hw)}}, +b7R(a){if(a===B.a9)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.vj()}, +YM(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.ah(0,s.gj(s))}else{l=m.cy +l===$&&A.b() +s=l.a +r=l.b.ah(0,s.gj(s))}q=$.ar().aP() +l=m.e +q.sa6(0,A.Y(r,l.gj(l)>>>16&255,l.gj(l)>>>8&255,l.gj(l)&255)) +l=m.at +if(l!=null)p=l.$0() +else p=null +s=p!=null?p.gc1():m.b.gu(0).nD(B.h) +o=m.ch +o===$&&A.b() +o=o.x +o===$&&A.b() +o=A.og(m.z,s,B.az.ah(0,o)) +o.toString +s=m.ay +s===$&&A.b() +n=s.a +n=s.b.ah(0,n.gj(n)) +m.aCZ(m.Q,a,o,l,m.f,q,n,m.ax,b)}} +A.cpo.prototype={ +$0(){var s=this.a.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}, +$S:154} +A.aQk.prototype={ +M4(a,b,c,d,e,f,g,h,i,j,k,a0){var s,r,q,p,o,n=null,m=b==null?B.bh:b,l=i==null?A.dm7(k,d,j,h):i +m=new A.a4r(h,m,l,A.dm_(k,d,j),!d,a0,c,f,e,k,g) +s=e.G +r=A.bQ(n,B.aW,n,1,n,s) +q=e.gfk() +r.cY() +p=r.em$ +p.b=!0 +p.a.push(q) +r.cM(0) +m.CW=r +p=t.Y +o=t.o +m.ch=new A.aB(o.a(r),new A.aP(0,l,p),p.h("aB")) +s=A.bQ(n,B.K,n,1,n,s) +s.cY() +p=s.em$ +p.b=!0 +p.a.push(q) +s.cY() +q=s.f0$ +q.b=!0 +q.a.push(m.gb7S()) +m.cy=s +q=c.gj(c) +m.cx=new A.aB(o.a(s),new A.DL(q>>>24&255,0),t.Hd.h("aB")) +e.UM(m) +return m}, +axR(a,b,c,d,e,f,g,h,i,j,k){return this.M4(0,b,c,!1,d,e,f,g,h,i,j,k)}} +A.a4r.prototype={ +BL(a){var s=B.e.ec(this.as/1),r=this.CW +r===$&&A.b() +r.e=A.cp(0,0,0,s,0,0) +r.cM(0) +this.cy.cM(0)}, +ao(a){var s=this.cy +if(s!=null)s.cM(0)}, +b7T(a){if(a===B.a9)this.m()}, +m(){var s=this,r=s.CW +r===$&&A.b() +r.m() +s.cy.m() +s.cy=null +s.vj()}, +YM(a,b){var s,r,q=this,p=$.ar().aP(),o=q.e,n=q.cx +n===$&&A.b() +s=n.a +p.sa6(0,A.Y(n.b.ah(0,s.gj(s)),o.gj(o)>>>16&255,o.gj(o)>>>8&255,o.gj(o)&255)) +r=q.z +if(q.ax){o=q.b.gu(0).nD(B.h) +n=q.CW +n===$&&A.b() +n=n.x +n===$&&A.b() +r=A.og(r,o,n)}r.toString +o=q.ch +o===$&&A.b() +n=o.a +n=o.b.ah(0,n.gj(n)) +q.aCZ(q.Q,a,r,q.at,q.f,p,n,q.ay,b)}} +A.DM.prototype={ +BL(a){}, +ao(a){}, +sa6(a,b){if(b.l(0,this.e))return +this.e=b +this.a.aV()}, +sa98(a){if(J.q(a,this.f))return +this.f=a +this.a.aV()}, +aCZ(a,b,c,d,e,f,g,h,i){var s,r=A.azd(i) +b.d6(0) +if(r==null)b.ah(0,i.a) +else b.ba(0,r.a,r.b) +if(d!=null){s=d.$0() +if(e!=null)b.nG(0,e.i7(s,h)) +else if(!a.l(0,B.bh))b.yq(A.TX(s,a.c,a.d,a.a,a.b)) +else b.qd(s)}b.h3(c,g,f) +b.de(0)}} +A.z9.prototype={} +A.agF.prototype={ +ed(a){return this.f!==a.f}} +A.RO.prototype={ +Ix(a){return null}, +q(a){var s=this,r=a.a0(t.PY),q=r==null?null:r.f +return new A.afn(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,!1,s.k4,s.ok,q,s.ga_I(),s.gbt7(),s.p1,s.p2,null)}, +bt8(a){return!0}} +A.afn.prototype={ +J(){return new A.afm(A.N(t.R9,t.Pr),new A.bN(A.a([],t.IV),t.qG),null,B.f)}} +A.Gb.prototype={ +H(){return"_HighlightType."+this.b}} +A.afm.prototype={ +gbyb(){var s=this.r.gbm(0) +return!new A.b1(s,new A.c2x(),A.z(s).h("b1")).gad(0)}, +abX(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.abX(this,s)}}, +blR(a){var s=this,r=s.z +if(r!=null)r.ao(0) +s.z=null +r=s.c +r.toString +s.a63(r) +r=s.e +if(r!=null)r.BL(0) +s.e=null +r=s.a +if(r.d!=null){if(r.id){r=s.c +r.toString +A.atO(r)}r=s.a.d +if(r!=null)r.$0()}s.z=A.d3(B.b1,new A.c2t(s))}, +afX(a){var s=this.c +s.toString +this.a63(s) +this.Xd()}, +aMo(){return this.afX(null)}, +aMm(){var s=this.c +s.toString +this.a63(s) +this.aAh()}, +aaU(){this.C(new A.c2w())}, +gkk(){var s=this.a.p4 +if(s==null){s=this.x +s.toString}return s}, +Nh(){var s,r,q=this +if(q.a.p4==null)q.x=A.Kf(null) +s=q.gkk() +r=q.a +r.toString +s.ic(0,B.F,!(q.oU(r)||q.oV(r))) +q.gkk().a3(0,q.gCm())}, +a8(){this.aTv() +this.Nh() +$.an.U$.f.a.f.B(0,this.gaAd())}, +b1(a){var s,r,q,p,o=this +o.bc(a) +s=a.p4 +if(o.a.p4!=s){if(s!=null)s.O(0,o.gCm()) +if(o.a.p4!=null){s=o.x +if(s!=null){s.k3$=$.ae() +s.k2$=0}o.x=null}o.Nh()}s=o.a +if(s.cx!=a.cx||s.CW!==a.CW||!J.q(s.cy,a.cy)){s=o.r +r=s.i(0,B.k3) +if(r!=null){q=r.ch +q===$&&A.b() +q.m() +r.vj() +o.ae0(B.k3,!1,o.f)}p=s.i(0,B.a_v) +if(p!=null){s=p.ch +s===$&&A.b() +s.m() +p.vj()}}if(!J.q(o.a.db,a.db))o.bkH() +s=o.a +s.toString +s=o.oU(s)||o.oV(s) +if(s!==(o.oU(a)||o.oV(a))){s=o.gkk() +q=o.a +q.toString +s.ic(0,B.F,!(o.oU(q)||o.oV(q))) +s=o.a +s.toString +if(!(o.oU(s)||o.oV(s))){o.gkk().ic(0,B.X,!1) +r=o.r.i(0,B.k3) +if(r!=null){s=r.ch +s===$&&A.b() +s.m() +r.vj()}}o.ae0(B.k3,!1,o.f)}o.adZ()}, +m(){var s,r=this +$.an.U$.f.a.f.F(0,r.gaAd()) +r.gkk().O(0,r.gCm()) +s=r.x +if(s!=null){s.k3$=$.ae() +s.k2$=0}s=r.z +if(s!=null)s.ao(0) +r.z=null +r.ap()}, +gmv(){if(!this.gbyb()){var s=this.d +s=s!=null&&s.a!==0}else s=!0 +return s}, +aID(a){switch(a.a){case 0:return B.K +case 1:case 2:this.a.toString +return B.iU}}, +ae0(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.gkk().ic(0,B.X,a0) +break +case 1:if(b)g.gkk().ic(0,B.P,a0) +break +case 2:break}if(a===B.hj){s=g.a.p1 +if(s!=null)s.abX(g,a0)}s=d==null +if(a0===(!s&&d.CW))return +if(a0)if(s){s=g.a.fx +r=s==null?f:s.a5(g.gkk().a) +if(r==null){s=g.c +s.toString +q=A.G(s) +switch(c){case 0:r=g.a.fr +if(r==null)r=q.db +break +case 2:r=g.a.dx +if(r==null)r=q.cy +break +case 1:r=g.a.dy +if(r==null)r=q.dy +break}}s=g.c.gai() +s.toString +t.x.a(s) +p=g.c +p.toString +p=A.bpW(p,t.zd) +p.toString +o=g.a +o.toString +o=g.oU(o)||g.oV(o)?r:A.Y(0,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(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.a0(t.I) +i.toString +h=g.aID(a) +if(k==null)k=B.bh +s=new A.DJ(m,l,k,n,i.w,o,j,p,s,new A.c2y(g,a)) +h=A.bQ(f,h,f,1,f,p.G) +h.cY() +j=h.em$ +j.b=!0 +j.a.push(p.gfk()) +h.cY() +j=h.f0$ +j.b=!0 +j.a.push(s.gb2P()) +h.cM(0) +s.ch=h +j=s.e +j=j.gj(j) +s.ay=new A.aB(t.o.a(h),new A.DL(0,j>>>24&255),t.Hd.h("aB")) +p.UM(s) +e.n(0,a,s) +g.x_()}else{d.CW=!0 +e=d.ch +e===$&&A.b() +e.cM(0)}else{d.CW=!1 +e=d.ch +e===$&&A.b() +e.eI(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}}, +v1(a,b){return this.ae0(a,!0,b)}, +bkH(){var s,r,q,p=this +for(s=p.r.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +if(q==null)q=r.a(q) +if(q!=null)q.sa98(p.a.db)}s=p.e +if(s!=null)s.sa98(p.a.db) +s=p.d +if(s!=null&&s.a!==0)for(r=A.z(s),s=new A.nz(s,s.AG(),r.h("nz<1>")),r=r.c;s.t();){q=s.d +if(q==null)q=r.a(q) +q.sa98(p.a.db)}}, +aZz(a){var s,r,q,p,o,n,m,l,k,j,i=this,h={},g=i.c +g.toString +g=A.bpW(g,t.zd) +g.toString +s=i.c.gai() +s.toString +t.x.a(s) +r=s.hZ(a) +q=i.a.fx +q=q==null?null:q.a5(i.gkk().a) +p=q==null?i.a.fy:q +if(p==null){q=i.c +q.toString +p=A.G(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.G(q).y}l=i.a +k=l.ch +l=l.cx +j=i.c.a0(t.I) +j.toString +return h.a=q.M4(0,n,p,k,g,m,new A.c2s(h,i),r,l,o,s,j.w)}, +bx3(a){if(this.c==null)return +this.C(new A.c2v(this))}, +gbi4(){var s,r=this,q=r.c +q.toString +q=A.cG(q,B.k5) +s=q==null?null:q.ch +switch((s==null?B.hW:s).a){case 0:q=r.a +q.toString +return(r.oU(q)||r.oV(q))&&r.Q +case 1:return r.Q}}, +adZ(){var s,r=$.an.U$.f.a.b +switch((r==null?A.Xx():r).a){case 0:s=!1 +break +case 1:s=this.gbi4() +break +default:s=null}this.v1(B.a_v,s)}, +bx5(a){var s,r=this +r.Q=a +r.gkk().ic(0,B.R,a) +r.adZ() +s=r.a.k2 +if(s!=null)s.$1(a)}, +aA7(a){if(this.y.a.length!==0)return +this.biS(a)}, +bxO(a){var s +this.aA7(a) +s=this.a.e +if(s!=null)s.$1(a)}, +bxQ(a){this.a.toString}, +bxG(a){this.aA7(a) +this.a.toString}, +bxI(a){this.a.toString}, +ask(a,b){var s,r,q,p,o=this +if(a!=null){s=a.gai() +s.toString +t.x.a(s) +r=s.gu(0) +r=new A.W(0,0,0+r.a,0+r.b).gc1() +q=A.cK(s.cf(0,null),r)}else q=b.a +o.gkk().ic(0,B.X,!0) +p=o.aZz(q) +s=o.d;(s==null?o.d=A.dV(t.nQ):s).B(0,p) +s=o.e +if(s!=null)s.ao(0) +o.e=p +o.x_() +o.v1(B.hj,!0)}, +biS(a){return this.ask(null,a)}, +a63(a){return this.ask(a,null)}, +Xd(){var s=this,r=s.e +if(r!=null)r.BL(0) +s.e=null +s.v1(B.hj,!1) +r=s.a +if(r.d!=null){if(r.id){r=s.c +r.toString +A.atO(r)}r=s.a.d +if(r!=null)r.$0()}}, +bxM(){var s=this,r=s.e +if(r!=null)r.ao(0) +s.e=null +r=s.a.r +if(r!=null)r.$0() +s.v1(B.hj,!1)}, +bwV(){var s=this,r=s.e +if(r!=null)r.BL(0) +s.e=null +s.v1(B.hj,!1) +r=s.a.w +if(r!=null)r.$0()}, +aAh(){var s=this,r=s.e +if(r!=null)r.BL(0) +s.e=null +r=s.a +if(r.x!=null){if(r.id){r=s.c +r.toString +A.bhI(r)}s.a.x.$0()}}, +bxC(){var s=this,r=s.e +if(r!=null)r.BL(0) +s.e=null +s.v1(B.hj,!1) +r=s.a.y +if(r!=null)r.$0()}, +bxE(){var s=this,r=s.e +if(r!=null)r.ao(0) +s.e=null +s.a.toString +s.v1(B.hj,!1)}, +fS(){var s,r,q,p,o,n,m,l=this,k=l.d +if(k!=null){l.d=null +for(s=A.z(k),k=new A.nz(k,k.AG(),s.h("nz<1>")),s=s.c;k.t();){r=k.d;(r==null?s.a(r):r).m()}l.e=null}for(k=l.r,s=A.jL(k,k.r,A.z(k).c);s.t();){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.f0$ +o.b=!1 +B.b.V(o.a) +n=o.c +if(n===$){m=A.dV(o.$ti.c) +o.c!==$&&A.a_() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}o=p.em$ +o.b=!1 +B.b.V(o.a) +n=o.c +if(n===$){m=A.dV(o.$ti.c) +o.c!==$&&A.a_() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}p.DW() +q.vj()}k.n(0,r,null)}k=l.a.p1 +if(k!=null)k.abX(l,!1) +l.aTu()}, +oU(a){var s +if(a.d==null)if(a.w==null)if(a.x==null)s=a.e!=null +else s=!0 +else s=!0 +else s=!0 +return s}, +oV(a){var s +if(a.y==null)s=!1 +else s=!0 +return s}, +bxn(a){var s=this,r=s.f=!0,q=s.a +q.toString +if(!s.oU(q)?s.oV(q):r)s.v1(B.k3,s.f)}, +bxp(a){this.f=!1 +this.v1(B.k3,!1)}, +gb7U(){var s,r=this,q=r.c +q.toString +q=A.cG(q,B.k5) +s=q==null?null:q.ch +switch((s==null?B.hW:s).a){case 0:q=r.a +q.toString +return(r.oU(q)||r.oV(q))&&r.a.ok +case 1:return!0}}, +q(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.o5(a1) +s=new A.c2u(a,a1) +for(r=a.r,q=A.jL(r,r.r,A.z(r).c);q.t();){p=q.d +o=r.i(0,p) +if(o!=null)o.sa6(0,s.$1(p))}r=a.e +if(r!=null){q=a.a.fx +q=q==null?a0:q.a5(a.gkk().a) +if(q==null)q=a.a.fy +r.sa6(0,q==null?A.G(a1).k3:q)}r=a.a.ay +if(r==null)r=B.eu +n=A.d2(r,a.gkk().a,t.Pb) +m=a.w +if(m===$){r=a.gblQ() +q=t.h +p=t.b +l=A.a1([B.yc,new A.ej(r,new A.bN(A.a([],q),p),t.wY),B.bub,new A.ej(r,new A.bN(A.a([],q),p),t.nz)],t.u,t.od) +a.w!==$&&A.a_() +a.w=l +m=l}r=a.a.k4 +q=a.gb7U() +p=a.a +o=p.d +o=o==null?a0:a.gaMn() +k=p.x +k=k==null?a0:a.gaMl() +p=a.oU(p)?a.gaaW():a0 +j=a.a +j.toString +j=a.oU(j)?a.gaaX():a0 +i=a.a +i.toString +i=a.oU(i)?a.gN7():a0 +h=a.a +h.toString +h=a.oU(h)?a.gaaV():a0 +g=a.a +f=g.w!=null?a.gbwU():a0 +e=g.x!=null?a.gbxf():a0 +g=a.oV(g)?a.gbxF():a0 +d=a.a +d.toString +d=a.oV(d)?a.gbxH():a0 +c=a.a +c.toString +c=a.oV(c)?a.gbxB():a0 +b=a.a +b.toString +b=a.oV(b)?a.gbxD():a0 +j=A.dn(B.be,a.a.c,B.m,!0,a0,f,a0,a0,a0,a0,a0,e,a0,a0,a0,a0,a0,a0,a0,a0,a0,c,b,g,d,i,h,p,j,a0,a0,a0,a0,!1,B.ac) +return new A.agF(a,A.ts(m,A.n1(!1,q,A.ip(A.d4i(new A.bX(A.ci(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,a0,a0,k,a0,a0,a0,a0,a0,a0,a0,a0,a0,o,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0),!1,!1,!1,!1,j,a0),n),n,a0,a0,a.gbxm(),a.gbxo(),a0),a0,a0,a0,r,!0,a0,a.gbx4(),a0,a0,a0,a0)),a0)}, +$icA7:1} +A.c2x.prototype={ +$1(a){return a!=null}, +$S:1708} +A.c2t.prototype={ +$0(){this.a.v1(B.hj,!1)}, +$S:0} +A.c2w.prototype={ +$0(){}, +$S:0} +A.c2y.prototype={ +$0(){var s=this.a +s.r.n(0,this.b,null) +s.x_()}, +$S:0} +A.c2s.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.x_()}}, +$S:0} +A.c2v.prototype={ +$0(){this.a.adZ()}, +$S:0} +A.c2u.prototype={ +$1(a){var s,r,q=this,p=A.G(q.b) +switch(a.a){case 0:s=q.a +r=s.a.fx +r=r==null?null:r.a5(B.bls) +s=r==null?s.a.fr:r +return s==null?p.db:s +case 2:s=q.a +r=s.a.fx +r=r==null?null:r.a5(B.blm) +s=r==null?s.a.dx:r +return s==null?p.cy:s +case 1:s=q.a +r=s.a.fx +r=r==null?null:r.a5(B.ble) +s=r==null?s.a.dy:r +return s==null?p.dy:s}}, +$S:1712} +A.RP.prototype={} +A.al1.prototype={ +a8(){this.an() +if(this.gmv())this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.qe.prototype={} +A.aSe.prototype={ +VN(a){return B.yR}, +gCw(){return!1}, +gpg(){return B.L}, +bK(a,b){return B.yR}, +js(a,b){var s=$.ar().dc() +s.jd(a) +return s}, +qP(a){return this.js(a,null)}, +i7(a,b){var s=$.ar().dc() +s.jd(a) +return s}, +nq(a){return this.i7(a,null)}, +oB(a,b,c,d){a.fs(b,c)}, +gng(){return!0}, +Hk(a,b,c,d,e,f){}, +kz(a,b,c){return this.Hk(a,b,0,0,null,c)}} +A.uQ.prototype={ +gCw(){return!1}, +VN(a){var s=a==null?this.a:a +return new A.uQ(this.b,s)}, +gpg(){return new A.af(0,0,0,this.a.b)}, +bK(a,b){return new A.uQ(B.zR,this.a.bK(0,b))}, +js(a,b){var s=$.ar().dc(),r=a.a,q=a.b +s.jd(new A.W(r,q,r+(a.c-r),q+Math.max(0,a.d-q-this.a.b))) +return s}, +qP(a){return this.js(a,null)}, +i7(a,b){var s=$.ar().dc() +s.iM(this.b.hq(a)) +return s}, +nq(a){return this.i7(a,null)}, +oB(a,b,c,d){a.dh(this.b.hq(b),c)}, +gng(){return!0}, +j3(a,b){var s,r +if(a instanceof A.uQ){s=A.c8(a.a,this.a,b) +r=A.rf(a.b,this.b,b) +r.toString +return new A.uQ(r,s)}return this.QW(a,b)}, +j4(a,b){var s,r +if(a instanceof A.uQ){s=A.c8(this.a,a.a,b) +r=A.rf(this.b,a.b,b) +r.toString +return new A.uQ(r,s)}return this.QX(a,b)}, +Hk(a,b,c,d,e,f){var s=this.b,r=s.c,q=!r.l(0,B.J)||!s.d.l(0,B.J),p=b.d,o=this.a +if(q){q=(p-b.b)/2 +A.cvs(a,b,new A.dJ(B.J,B.J,r.awQ(0,new A.bb(q,q)),s.d.awQ(0,new A.bb(q,q))),o.axw(0),o.a,B.G,B.G,B.U,f,B.G)}else a.jV(new A.j(b.a,p),new A.j(b.c,p),o.nn())}, +kz(a,b,c){return this.Hk(a,b,0,0,null,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.uQ&&b.a.l(0,s.a)&&b.b.l(0,s.b)}, +gv(a){return A.ad(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.ml.prototype={ +gCw(){return!0}, +VN(a){var s=a==null?this.a:a +return new A.ml(this.b,this.c,s)}, +gpg(){var s=this.a.b +return new A.af(s,s,s,s)}, +bK(a,b){var s=this.a.bK(0,b) +return new A.ml(this.b*b,this.c.X(0,b),s)}, +j3(a,b){var s,r +if(a instanceof A.ml){s=A.rf(a.c,this.c,b) +s.toString +r=A.c8(a.a,this.a,b) +return new A.ml(a.b,s,r)}return this.QW(a,b)}, +j4(a,b){var s,r +if(a instanceof A.ml){s=A.rf(this.c,a.c,b) +s.toString +r=A.c8(this.a,a.a,b) +return new A.ml(a.b,s,r)}return this.QX(a,b)}, +js(a,b){var s=$.ar().dc() +s.iM(this.c.hq(a).fH(-this.a.b)) +return s}, +qP(a){return this.js(a,null)}, +i7(a,b){var s=$.ar().dc() +s.iM(this.c.hq(a)) +return s}, +nq(a){return this.i7(a,null)}, +oB(a,b,c,d){a.dh(this.c.hq(b),c)}, +gng(){return!0}, +alU(a4,a5,a6,a7){var s,r,q,p,o,n,m,l,k,j,i,h,g=a5.Dy(),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.W(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=$.ar().dc() +if(!new A.bb(d,c).l(0,B.J))j.vM(new A.W(f,e,f+d*2,e+c*2),3.141592653589793,Math.acos(A.Z(1-a6/d,0,1))) +else j.fV(0,f-this.a.b/2,e) +if(a6>d)j.ds(0,f+a6,e) +d=a6+a7 +i=b-f +if(d>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.F))return null +if(a.p(0,B.S)){s=this.a.gSl() +r=s.w +return r==null?s.f:r}return null}, +$S:21} +A.a4s.prototype={ +J(){return new A.afr(new A.eZ(B.bU,$.ae()),B.f)}} +A.afr.prototype={ +a8(){this.an() +this.e=this.a.c}, +m(){var s=this.d +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +c5(){this.dH() +this.auf()}, +b1(a){this.bc(a) +if(!J.q(this.a.c,a.c))$.an.xr$.push(new A.c2C(this))}, +auf(){var s,r,q,p=this +if(p.e!=null){s=p.c +s.toString +s=A.dS(s,B.an,t.v) +s.toString +r=p.e +r.toString +r=p.f=s.azZ(r) +q=new A.cu(r,B.bz,B.aw) +p.a.toString +s=p.r +if(!s){q=q.oj(A.eJ(B.E,0,r.length,!1)) +p.r=!0}p.d.oQ(0,q)}else{p.f="" +p.d.oQ(0,new A.cu("",B.bz,B.aw))}}, +ao3(a){var s,r,q +if(a!=null){s=this.a +r=s.d +q=a.a +if(q>=r.a)if(q<=s.e.a){s=s.w +s=s==null||s.$1(a)}else s=!1 +else s=!1}else s=!1 +return s}, +blh(a){var s,r,q,p,o=this +if(a.length===0)o.a.toString +s=o.c +s.toString +r=t.v +s=A.dS(s,B.an,r) +s.toString +q=s.acG(a) +if(q==null){s=o.a.x +p=o.c +p.toString +r=A.dS(p,B.an,r) +r.toString +return r.gbH()}else if(!o.ao3(q)){s=o.a.y +p=o.c +p.toString +r=A.dS(p,B.an,r) +r.toString +return r.gbC()}return null}, +atC(a,b){var s,r=this,q=r.c +q.toString +q=A.dS(q,B.an,t.v) +q.toString +s=q.acG(a) +if(r.ao3(s)){r.e=s +r.f=a +s.toString +b.$1(s)}}, +b5X(a){this.atC(a,this.a.r)}, +b6C(a){this.atC(a,this.a.f)}, +q(a){var s,r,q,p=this,o=null,n=A.G(a),m=A.dS(a,B.an,t.v) +m.toString +s=n.e +r=s.k3 +if(r==null)r=B.pr +p.a.toString +q=m.gbW() +p.a.toString +m=m.gbp() +m=A.md(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,q,o,o,o,o,o,o,o,o,m,o,o,o,o,o,o,o,o,o,o,o,o,o).Lz(s.dt(n.bj.p1).brt(r)) +p.a.toString +return A.Av(!0,o,!0,A.Zp(),p.d,m,!0,o,o,B.bot,1,!1,o,p.gb6B(),p.gb5W(),!1,o,p.gblg())}} +A.c2C.prototype={ +$1(a){var s=this.a +s.C(new A.c2B(s))}, +$S:5} +A.c2B.prototype={ +$0(){var s=this.a +s.e=s.a.c +s.auf()}, +$S:0} +A.afp.prototype={ +see(a,b){if(b!=this.a){this.a=b +this.ab()}}, +siY(a){if(a!==this.b){this.b=a +this.ab()}}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.afp&&b.a==s.a&&b.b===s.b}, +gv(a){return A.ad(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)}, +k(a){return"#"+A.bq(this)}} +A.afq.prototype={ +iE(a){var s=A.iC(this.a,this.b,a) +s.toString +return t.U6.a(s)}} +A.aQl.prototype={ +aI(a,b){var s,r,q=this,p=q.c.ah(0,q.b.gj(0)),o=new A.W(0,0,0+b.a,0+b.b),n=q.w.ah(0,q.x.gj(0)) +n.toString +s=A.PO(n,q.r) +if((s.gj(s)>>>24&255)>0){n=p.i7(o,q.f) +r=$.ar().aP() +r.sa6(0,s) +r.sbN(0,B.aH) +a.ey(n,r)}n=q.e +r=n.a +p.Hk(a,o,n.b,q.d.gj(0),r,q.f)}, +hC(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}, +k(a){return"#"+A.bq(this)}} +A.ad3.prototype={ +J(){return new A.aLs(null,null,B.f)}} +A.aLs.prototype={ +a8(){var s,r=this,q=null +r.an() +r.e=A.bQ(q,B.ahJ,q,1,r.a.w?1:0,r) +s=A.bQ(q,B.f_,q,1,q,r) +r.d=s +r.f=A.cI(B.aa,s,new A.o7(B.aa)) +s=r.a.c +r.r=new A.afq(s,s) +r.w=A.cI(B.H,r.e,q) +r.x=new A.fp(B.D,r.a.r)}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.e +s===$&&A.b() +s.m() +this.aT7()}, +b1(a){var s,r,q=this +q.bc(a) +s=a.c +if(!q.a.c.l(0,s)){q.r=new A.afq(s,q.a.c) +s=q.d +s===$&&A.b() +s.sj(0,0) +s.cM(0)}if(!q.a.r.l(0,a.r))q.x=new A.fp(B.D,q.a.r) +s=q.a.w +if(s!==a.w){r=q.e +if(s){r===$&&A.b() +r.cM(0)}else{r===$&&A.b() +r.eI(0)}}}, +q(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.a0(t.I) +o.toString +n=k.a.f +m=k.x +m===$&&A.b() +l=k.w +l===$&&A.b() +return A.ih(null,new A.aQl(s,j,p,q,o.w,n,m,l,new A.B9(r)),null,null,B.A)}} +A.aWs.prototype={ +gbHm(){var s=t.o.a(this.c),r=s.gj(s) +if(r<=0.25)return-r*4 +else if(r<0.75)return(r-0.5)*4 +else return(1-r)*4*4}, +q(a){return A.x0(null,this.e,null,A.wn(this.gbHm(),0,0),!0)}} +A.af2.prototype={ +J(){return new A.af3(null,null,B.f)}} +A.af3.prototype={ +gtD(){return this.a.w!=null||!1}, +a8(){var s,r=this +r.an() +r.d=A.bQ(null,B.f_,null,1,null,r) +if(r.gtD()){r.f=r.Jx() +r.d.sj(0,1)}else r.a.toString +s=r.d +s.cY() +s=s.em$ +s.b=!0 +s.a.push(r.ga3Y())}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aTt()}, +a3Z(){this.C(new A.c1I())}, +b1(a){var s,r=this +r.bc(a) +s=r.a.w!=null +if(s!==(a.w!=null)||!1)if(s){r.f=r.Jx() +s=r.d +s===$&&A.b() +s.cM(0)}else{s=r.d +s===$&&A.b() +s.eI(0)}}, +Jx(){var s,r,q,p,o,n=null,m=this.d +m===$&&A.b() +s=new A.aP(B.bcP,B.h,t.Ni).ah(0,m.gj(0)) +r=this.a +q=r.w +q.toString +p=r.x +o=r.c +o=A.bv(q,n,n,r.y,B.bf,n,n,n,n,p,o,n,n,n,n) +s=A.cx_(o,!0,s) +return new A.bX(A.ci(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,n,n),!0,!1,!1,!1,new A.dg(m,!1,s,n),n)}, +q(a){var s=this,r=s.d +r===$&&A.b() +if(r.gbM(0)===B.a6){s.f=null +s.a.toString +s.e=null +return B.ap}if(s.d.gbM(0)===B.a9){s.e=null +if(s.gtD())return s.f=s.Jx() +else{s.f=null +return B.ap}}if(s.e==null&&s.gtD())return s.Jx() +if(s.f==null)s.a.toString +if(s.gtD()){r=t.Y +return new A.d4(B.ar,null,B.am,B.k,A.a([new A.dg(new A.aB(s.d,new A.aP(1,0,r),r.h("aB")),!1,s.e,null),s.Jx()],t.p),null)}s.a.toString +return B.ap}} +A.c1I.prototype={ +$0(){}, +$S:0} +A.a3n.prototype={ +H(){return"FloatingLabelBehavior."+this.b}} +A.aub.prototype={ +gv(a){return B.d.gv(-1)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.aub&&!0}, +k(a){return A.d75(-1)}} +A.lV.prototype={ +H(){return"_DecorationSlot."+this.b}} +A.aNf.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.aNf&&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.q(b.z,s.z)&&J.q(b.Q,s.Q)&&J.q(b.as,s.as)&&J.q(b.at,s.at)&&J.q(b.ax,s.ax)&&J.q(b.ay,s.ay)&&J.q(b.ch,s.ch)&&J.q(b.CW,s.CW)&&b.cx.r3(0,s.cx)&&J.q(b.cy,s.cy)&&b.db.r3(0,s.db)}, +gv(a){var s=this +return A.ad(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)}} +A.cbX.prototype={} +A.ahp.prototype={ +geg(a){var s,r=A.a([],t.Ik),q=this.fa$ +if(q.i(0,B.bm)!=null){s=q.i(0,B.bm) +s.toString +r.push(s)}if(q.i(0,B.bX)!=null){s=q.i(0,B.bX) +s.toString +r.push(s)}if(q.i(0,B.aT)!=null){s=q.i(0,B.aT) +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.bM)!=null){s=q.i(0,B.bM) +s.toString +r.push(s)}if(q.i(0,B.bN)!=null){s=q.i(0,B.bN) +s.toString +r.push(s)}if(q.i(0,B.b9)!=null){s=q.i(0,B.b9) +s.toString +r.push(s)}if(q.i(0,B.c7)!=null){s=q.i(0,B.c7) +s.toString +r.push(s)}if(q.i(0,B.c8)!=null){s=q.i(0,B.c8) +s.toString +r.push(s)}if(q.i(0,B.bJ)!=null){s=q.i(0,B.bJ) +s.toString +r.push(s)}if(q.i(0,B.fm)!=null){q=q.i(0,B.fm) +q.toString +r.push(q)}return r}, +sbT(a){if(this.D.l(0,a))return +this.D=a +this.a9()}, +sd5(a){if(this.N===a)return +this.N=a +this.a9()}, +sHP(a,b){if(this.a4===b)return +this.a4=b +this.a9()}, +sbGI(a){var s,r=this,q=r.ag +if(q==a)return +if(q==null)q=r.gKl()?B.lX:B.qf +s=a==null?null:a.a +if(s==null)s=(r.gKl()?B.lX:B.qf).a +if(q.a===s){r.ag=a +return}r.ag=a +r.a9()}, +sGR(a){if(this.aq===a)return +this.aq=a +this.cs()}, +saaa(a){return}, +gKl(){var s=this.D.f.gCw() +return s}, +lm(a){var s,r=this.fa$ +if(r.i(0,B.bm)!=null){s=r.i(0,B.bm) +s.toString +a.$1(s)}if(r.i(0,B.bM)!=null){s=r.i(0,B.bM) +s.toString +a.$1(s)}if(r.i(0,B.aT)!=null){s=r.i(0,B.aT) +s.toString +a.$1(s)}if(r.i(0,B.b9)!=null){s=r.i(0,B.b9) +s.toString +a.$1(s)}if(r.i(0,B.c7)!=null)if(this.aq){s=r.i(0,B.c7) +s.toString +a.$1(s)}else if(r.i(0,B.b9)==null){s=r.i(0,B.c7) +s.toString +a.$1(s)}if(r.i(0,B.bX)!=null){s=r.i(0,B.bX) +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.bN)!=null){s=r.i(0,B.bN) +s.toString +a.$1(s)}if(r.i(0,B.fm)!=null){s=r.i(0,B.fm) +s.toString +a.$1(s)}if(r.i(0,B.c8)!=null){s=r.i(0,B.c8) +s.toString +a.$1(s)}if(r.i(0,B.bJ)!=null){r=r.i(0,B.bJ) +r.toString +a.$1(r)}}, +gka(){return!1}, +tE(a,b){var s +if(a==null)return 0 +a.d_(b,!0) +s=a.tc(B.Q) +s.toString +return s}, +b8_(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}, +bo(a){var s,r,q,p,o,n,m,l=this,k=l.fa$,j=k.i(0,B.bm) +j=j==null?0:j.aw(B.ad,a,j.gbG()) +if(k.i(0,B.aT)!=null)s=0 +else{s=l.N +r=l.D.a +s=s===B.j?r.a:r.c}r=k.i(0,B.aT) +r=r==null?0:r.aw(B.ad,a,r.gbG()) +q=k.i(0,B.bM) +q=q==null?0:q.aw(B.ad,a,q.gbG()) +p=k.i(0,B.bX) +p=p==null?0:p.aw(B.ad,a,p.gbG()) +o=k.i(0,B.c7) +o=o==null?0:o.aw(B.ad,a,o.gbG()) +o=Math.max(p,o) +p=k.i(0,B.bN) +p=p==null?0:p.aw(B.ad,a,p.gbG()) +n=k.i(0,B.bA) +n=n==null?0:n.aw(B.ad,a,n.gbG()) +if(k.i(0,B.bA)!=null)k=0 +else{k=l.N +m=l.D.a +k=k===B.j?m.c:m.a}return j+s+r+q+o+p+n+k}, +bb(a){var s,r,q,p,o,n,m,l=this,k=l.fa$,j=k.i(0,B.bm) +j=j==null?0:j.aw(B.aj,a,j.gbL()) +if(k.i(0,B.aT)!=null)s=0 +else{s=l.N +r=l.D.a +s=s===B.j?r.a:r.c}r=k.i(0,B.aT) +r=r==null?0:r.aw(B.aj,a,r.gbL()) +q=k.i(0,B.bM) +q=q==null?0:q.aw(B.aj,a,q.gbL()) +p=k.i(0,B.bX) +p=p==null?0:p.aw(B.aj,a,p.gbL()) +o=k.i(0,B.c7) +o=o==null?0:o.aw(B.aj,a,o.gbL()) +o=Math.max(p,o) +p=k.i(0,B.bN) +p=p==null?0:p.aw(B.aj,a,p.gbL()) +n=k.i(0,B.bA) +n=n==null?0:n.aw(B.aj,a,n.gbL()) +if(k.i(0,B.bA)!=null)k=0 +else{k=l.N +m=l.D.a +k=k===B.j?m.c:m.a}return j+s+r+q+o+p+n+k}, +b8x(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.aw(B.ao,b,q.gbP()) +s=Math.max(p,s)}return s}, +bh(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=b.fa$,a0=a.i(0,B.bm),a1=a0==null?0:a0.aw(B.ao,a2,a0.gbP()) +a0=a.i(0,B.bm) +a2=Math.max(a2-(a0==null?0:a0.aw(B.ad,a1,a0.gbG())),0) +a0=a.i(0,B.aT) +s=a0==null?0:a0.aw(B.ao,a2,a0.gbP()) +a0=a.i(0,B.aT) +r=a0==null?0:a0.aw(B.ad,s,a0.gbG()) +a0=a.i(0,B.bA) +q=a0==null?0:a0.aw(B.ao,a2,a0.gbP()) +a0=a.i(0,B.bA) +p=a0==null?0:a0.aw(B.ad,q,a0.gbG()) +a2=Math.max(a2-b.D.a.geL(),0) +a0=a.i(0,B.bJ) +o=a0==null?0:a0.aw(B.ao,a2,a0.gbP()) +a0=a.i(0,B.bJ) +n=Math.max(a2-(a0==null?0:a0.aw(B.ad,o,a0.gbG())),0) +a0=a.i(0,B.c8) +m=a0==null?0:a0.aw(B.ao,n,a0.gbP()) +l=Math.max(o,m) +if(l>0)l+=8 +a0=a.i(0,B.bM) +k=a0==null?0:a0.aw(B.ao,a2,a0.gbP()) +a0=a.i(0,B.bM) +j=a0==null?0:a0.aw(B.ad,k,a0.gbG()) +a0=a.i(0,B.bN) +i=a0==null?0:a0.aw(B.ao,a2,a0.gbP()) +a0=a.i(0,B.bN) +h=a0==null?0:a0.aw(B.ad,i,a0.gbG()) +a0=t.n +g=B.b.i6(A.a([b.b8x(0,Math.max(a2-j-h-r-p,0),A.a([a.i(0,B.bX),a.i(0,B.c7)],t.iG)),k,i],a0),B.iC) +f=b.D.y +e=new A.j(f.a,f.b).X(0,4) +f=b.D +a=a.i(0,B.b9)==null?0:b.D.c +d=B.b.i6(A.a([a1,f.a.b+a+g+b.D.a.d+e.b,s,q],a0),B.iC) +a=b.D.x +a.toString +c=a||!1?0:48 +return Math.max(d,c)+l}, +bi(a){return this.bh(a)}, +il(a){var s=this.fa$,r=s.i(0,B.bX).b +r.toString +r=t.r.a(r).a +s=s.i(0,B.bX) +s=s==null?null:s.il(a) +if(s==null)s=0 +return r.b+s}, +cX(a){return B.A}, +aY9(a){var s,r,q,p,o,n,m=null,l=t.q1,k=A.a([],l),j=new A.aoP(k,A.a([],t.X_)) +for(s=a.length,r=m,q=r,p=0;p0 +a4=!a3?0:o.i(0,B.c8).gu(0).b+8 +a5=Math.max(a2,a4) +f1=e9.D.y +a6=new A.j(f1.a,f1.b).X(0,4) +f1=o.i(0,B.bX) +n=o.i(0,B.bX) +k=e9.D.a +j=a6.b +i=j/2 +s.n(0,f1,e9.tE(n,p.om(new A.af(0,k.b+a1+i,0,k.d+a5+i)).VQ(c,c))) +k=o.i(0,B.c7) +a7=k==null?f0:k.gu(0).b +if(a7==null)a7=0 +f1=o.i(0,B.bX) +a8=f1==null?f0:f1.gu(0).b +if(a8==null)a8=0 +a9=Math.max(a7,a8) +f1=s.i(0,o.i(0,B.bX)) +f1.toString +n=s.i(0,o.i(0,B.c7)) +n.toString +b0=Math.max(f1,n) +n=o.i(0,B.bM) +b1=n==null?f0:n.gu(0).b +if(b1==null)b1=0 +f1=o.i(0,B.bN) +b2=f1==null?f0:f1.gu(0).b +if(b2==null)b2=0 +f1=s.i(0,o.i(0,B.bM)) +f1.toString +n=s.i(0,o.i(0,B.bN)) +n.toString +b3=Math.max(0,Math.max(f1,n)-b0) +n=s.i(0,o.i(0,B.bM)) +n.toString +f1=s.i(0,o.i(0,B.bN)) +f1.toString +b4=Math.max(0,Math.max(b1-n,b2-f1)-(a9-b0)) +f1=o.i(0,B.aT) +b5=f1==null?f0:f1.gu(0).b +if(b5==null)b5=0 +f1=o.i(0,B.bA) +b6=f1==null?f0:f1.gu(0).b +if(b6==null)b6=0 +b7=Math.max(b5,b6) +f1=e9.D +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=Math.max(0,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.ag +if(f1==null)f1=e9.gKl()?B.lX:B.qf +c4=(f1.a+1)/2 +c5=b3-c3*(1-c4) +f1=e9.D.a +c6=f1.b+a1+b0+c5+c2+i +c7=c1-(f1.gdM(0)+f1.gdT(0))-a1-j-(b3+a9+b4) +c8=c6+c7*c4 +j=e9.ag +if(j==null)f1=e9.gKl()?B.lX:B.qf +else f1=j +c9=e9.b8_(c6,b0+c5/2+(c1-(2+a9))/2,c6+c7,f1) +if(o.i(0,B.bJ)!=null){f1=s.i(0,o.i(0,B.bJ)) +f1.toString +d0=c1+8+f1 +d1=o.i(0,B.bJ).gu(0).b+8}else{d0=0 +d1=0}if(a3){f1=s.i(0,o.i(0,B.c8)) +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.fm) +if(d6!=null){f1=o.i(0,B.bm) +d6.d_(A.fH(c1,r-(f1==null?B.A:f1.gu(0)).a),!0) +switch(e9.N.a){case 0:d7=0 +break +case 1:f1=o.i(0,B.bm) +d7=(f1==null?B.A:f1.gu(0)).a +break +default:d7=f0}f1=d6.b +f1.toString +t.r.a(f1).a=new A.j(d7,0)}d8=A.aF("height") +d9=new A.cc0(d8) +e0=A.aF("baseline") +e1=new A.cc_(e0,new A.cbX(s,c8,c9,d4,c1,d5)) +f1=e9.D.a +e2=f1.a +e3=r-f1.c +d8.b=c1 +e0.b=e9.gKl()?c9:c8 +if(o.i(0,B.bm)!=null){switch(e9.N.a){case 0:d7=r-o.i(0,B.bm).gu(0).a +break +case 1:d7=0 +break +default:d7=f0}f1=o.i(0,B.bm) +f1.toString +d9.$2(f1,d7)}switch(e9.N.a){case 0:f1=o.i(0,B.bm) +e4=e3-(f1==null?B.A:f1.gu(0)).a +if(o.i(0,B.aT)!=null){e4+=e9.D.a.c +f1=o.i(0,B.aT) +f1.toString +e4-=d9.$2(f1,e4-o.i(0,B.aT).gu(0).a)}if(o.i(0,B.b9)!=null){f1=o.i(0,B.b9) +f1.toString +d9.$2(f1,e4-o.i(0,B.b9).gu(0).a)}if(o.i(0,B.bM)!=null){f1=o.i(0,B.bM) +f1.toString +e4-=e1.$2(f1,e4-o.i(0,B.bM).gu(0).a)}if(o.i(0,B.bX)!=null){f1=o.i(0,B.bX) +f1.toString +e1.$2(f1,e4-o.i(0,B.bX).gu(0).a)}if(o.i(0,B.c7)!=null){f1=o.i(0,B.c7) +f1.toString +e1.$2(f1,e4-o.i(0,B.c7).gu(0).a)}if(o.i(0,B.bA)!=null){e5=e2-e9.D.a.a +f1=o.i(0,B.bA) +f1.toString +e5+=d9.$2(f1,e5)}else e5=e2 +if(o.i(0,B.bN)!=null){f1=o.i(0,B.bN) +f1.toString +e1.$2(f1,e5)}break +case 1:f1=o.i(0,B.bm) +e4=e2+(f1==null?B.A:f1.gu(0)).a +if(o.i(0,B.aT)!=null){e4-=e9.D.a.a +f1=o.i(0,B.aT) +f1.toString +e4+=d9.$2(f1,e4)}if(o.i(0,B.b9)!=null){f1=o.i(0,B.b9) +f1.toString +d9.$2(f1,e4)}if(o.i(0,B.bM)!=null){f1=o.i(0,B.bM) +f1.toString +e4+=e1.$2(f1,e4)}if(o.i(0,B.bX)!=null){f1=o.i(0,B.bX) +f1.toString +e1.$2(f1,e4)}if(o.i(0,B.c7)!=null){f1=o.i(0,B.c7) +f1.toString +e1.$2(f1,e4)}if(o.i(0,B.bA)!=null){e5=e3+e9.D.a.c +f1=o.i(0,B.bA) +f1.toString +e5-=d9.$2(f1,e5-o.i(0,B.bA).gu(0).a)}else e5=e3 +if(o.i(0,B.bN)!=null){f1=o.i(0,B.bN) +f1.toString +e1.$2(f1,e5-o.i(0,B.bN).gu(0).a)}break}if(o.i(0,B.c8)!=null||o.i(0,B.bJ)!=null){d8.b=d5 +e0.b=d4 +switch(e9.N.a){case 0:if(o.i(0,B.c8)!=null){f1=o.i(0,B.c8) +f1.toString +q=o.i(0,B.c8).gu(0) +n=o.i(0,B.bm) +n=n==null?B.A:n.gu(0) +e1.$2(f1,e3-q.a-n.a)}if(o.i(0,B.bJ)!=null){f1=o.i(0,B.bJ) +f1.toString +e1.$2(f1,e2)}break +case 1:if(o.i(0,B.c8)!=null){f1=o.i(0,B.c8) +f1.toString +q=o.i(0,B.bm) +e1.$2(f1,e2+(q==null?B.A:q.gu(0)).a)}if(o.i(0,B.bJ)!=null){f1=o.i(0,B.bJ) +f1.toString +e1.$2(f1,e3-o.i(0,B.bJ).gu(0).a)}break}}if(o.i(0,B.b9)!=null){f1=o.i(0,B.b9).b +f1.toString +e6=t.r.a(f1).a.a +f1=o.i(0,B.b9) +e7=(f1==null?B.A:f1.gu(0)).a*0.75 +switch(e9.N.a){case 0:if(o.i(0,B.aT)!=null&&!0)if(e9.U){f1=o.i(0,B.aT) +e8=(f1==null?B.A:f1.gu(0)).a-e2}else e8=0 +else e8=0 +f1=e9.D +q=o.i(0,B.b9) +q=q==null?B.A:q.gu(0) +n=d6==null?B.A:d6.gu(0) +f1.r.see(0,A.av(e6+q.a+e8,n.a/2+e7/2,0)) +break +case 1:if(o.i(0,B.aT)!=null&&!0)if(e9.U){f1=o.i(0,B.aT) +e8=-(f1==null?B.A:f1.gu(0)).a+e2}else e8=0 +else e8=0 +f1=e9.D +q=o.i(0,B.bm) +q=q==null?B.A:q.gu(0) +n=d6==null?B.A:d6.gu(0) +f1.r.see(0,A.av(e6-q.a+e8,n.a/2-e7/2,0)) +break}e9.D.r.siY(o.i(0,B.b9).gu(0).a*0.75)}else{e9.D.r.see(0,f0) +e9.D.r.siY(0)}e9.id=f2.bd(new A.V(r,c1+d5))}, +bd6(a,b){var s=this.fa$.i(0,B.b9) +s.toString +a.eM(s,b)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=new A.cbZ(a,b),e=g.fa$ +f.$1(e.i(0,B.fm)) +if(e.i(0,B.b9)!=null){s=e.i(0,B.b9).b +s.toString +r=t.r +q=r.a(s).a +s=e.i(0,B.b9) +s=s==null?B.A:s.gu(0) +p=e.i(0,B.b9) +o=(p==null?B.A:p.gu(0)).a +p=g.D +n=p.f +m=p.d +l=n.gCw() +k=l?-s.b*0.75/2+n.a.b/2:g.D.a.b +s=A.av(1,0.75,m) +s.toString +p=e.i(0,B.fm).b +p.toString +p=r.a(p).a +r=e.i(0,B.fm) +r=r==null?B.A:r.gu(0) +switch(g.N.a){case 0:j=q.a+o*(1-s) +if(e.i(0,B.aT)!=null)n=l +else n=!1 +if(n){if(g.U){n=e.i(0,B.aT) +n=n==null?B.A:n.gu(0) +n=n.a-g.D.a.a}else n=0 +i=j+n}else i=j +break +case 1:j=q.a +if(e.i(0,B.aT)!=null)n=l +else n=!1 +if(n){if(g.U){n=e.i(0,B.aT) +n=n==null?B.A:n.gu(0) +n=-n.a+g.D.a.a}else n=0 +i=j+n}else i=j +break +default:j=null +i=null}r=A.av(i,p.a+r.a/2-o*0.75/2,0) +r.toString +r=A.av(j,r,m) +r.toString +p=q.b +n=A.av(0,k-p,m) +n.toString +h=new A.c5(new Float64Array(16)) +h.fO() +h.ba(0,r,p+n) +h.bK(0,s) +g.aW=h +s=g.cx +s===$&&A.b() +n=g.ch +n.sb9(0,a.zS(s,b,h,g.gbd5(),t.zV.a(n.a)))}else g.ch.sb9(0,null) +f.$1(e.i(0,B.bm)) +f.$1(e.i(0,B.bM)) +f.$1(e.i(0,B.bN)) +f.$1(e.i(0,B.aT)) +f.$1(e.i(0,B.bA)) +f.$1(e.i(0,B.c7)) +f.$1(e.i(0,B.bX)) +f.$1(e.i(0,B.c8)) +f.$1(e.i(0,B.bJ))}, +kw(a){return!0}, +ej(a,b){var s,r,q,p,o,n,m +for(s=this.geg(0),r=s.length,q=t.r,p=0;p>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=this.a.gfQ() +r=s.dx +return r==null?s.cy:r}, +$S:7} +A.c2E.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){s=q.a.gfQ().db +return new A.bx(A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}if(a.p(0,B.e_)){if(a.p(0,B.P)){s=q.a.gfQ() +r=s.ch +return new A.bx(r==null?s.ax:r,1,B.O,-1)}if(a.p(0,B.R))return new A.bx(q.a.gfQ().at,2,B.O,-1) +return new A.bx(q.a.gfQ().at,1,B.O,-1)}if(a.p(0,B.P))return new A.bx(q.a.gfQ().db,1,B.O,-1) +if(a.p(0,B.R))return new A.bx(q.a.gfQ().b,2,B.O,-1) +s=q.a.gfQ() +r=s.dy +return new A.bx(r==null?s.db:r,1,B.O,-1)}, +$S:122} +A.c2L.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){s=q.a.gfQ().db +return new A.bx(A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}if(a.p(0,B.e_)){if(a.p(0,B.P)){s=q.a.gfQ() +r=s.ch +return new A.bx(r==null?s.ax:r,1,B.O,-1)}if(a.p(0,B.R))return new A.bx(q.a.gfQ().at,2,B.O,-1) +return new A.bx(q.a.gfQ().at,1,B.O,-1)}if(a.p(0,B.P))return new A.bx(q.a.gfQ().db,1,B.O,-1) +if(a.p(0,B.R))return new A.bx(q.a.gfQ().b,2,B.O,-1) +s=q.a.gfQ() +r=s.fr +return new A.bx(r==null?s.cx:r,1,B.O,-1)}, +$S:122} +A.c2M.prototype={ +$1(a){var s=this.a.gfQ(),r=s.dy +return r==null?s.db:r}, +$S:7} +A.c2N.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gfQ().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.e_))return this.a.gfQ().at +s=this.a.gfQ() +r=s.dy +return r==null?s.db:r}, +$S:7} +A.c2K.prototype={ +$1(a){var s,r=this.a,q=r.gSm().y +if(q==null)q=B.e2 +if(a.p(0,B.F)){r=r.gfQ().db +return q.bu(A.Y(97,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255))}if(a.p(0,B.e_)){if(a.p(0,B.P)){r=r.gfQ() +s=r.ch +return q.bu(s==null?r.ax:s)}if(a.p(0,B.R))return q.bu(r.gfQ().at) +return q.bu(r.gfQ().at)}if(a.p(0,B.P)){r=r.gfQ() +s=r.dy +return q.bu(s==null?r.db:s)}if(a.p(0,B.R))return q.bu(r.gfQ().b) +r=r.gfQ() +s=r.dy +return q.bu(s==null?r.db:s)}, +$S:79} +A.c2H.prototype={ +$1(a){var s,r=this.a,q=r.gSm().y +if(q==null)q=B.e2 +if(a.p(0,B.F)){r=r.gfQ().db +return q.bu(A.Y(97,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255))}if(a.p(0,B.e_)){if(a.p(0,B.P)){r=r.gfQ() +s=r.ch +return q.bu(s==null?r.ax:s)}if(a.p(0,B.R))return q.bu(r.gfQ().at) +return q.bu(r.gfQ().at)}if(a.p(0,B.P)){r=r.gfQ() +s=r.dy +return q.bu(s==null?r.db:s)}if(a.p(0,B.R))return q.bu(r.gfQ().b) +r=r.gfQ() +s=r.dy +return q.bu(s==null?r.db:s)}, +$S:79} +A.c2I.prototype={ +$1(a){var s,r=this.a,q=r.gSm().Q +if(q==null)q=B.e2 +if(a.p(0,B.F)){r=r.gfQ().db +return q.bu(A.Y(97,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255))}r=r.gfQ() +s=r.dy +return q.bu(s==null?r.db:s)}, +$S:79} +A.c2F.prototype={ +$1(a){var s=this.a,r=s.gSm().Q +if(r==null)r=B.e2 +return r.bu(s.gfQ().at)}, +$S:79} +A.aQm.prototype={} +A.akF.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.al0.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.al2.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.b0b.prototype={ +aA(a){var s,r,q +this.ea(a) +for(s=this.geg(0),r=s.length,q=0;q0){a7=b/2 +e-=a7 +c+=a7}a=a2.aW +if(eg){f=b1+j.b+2*a +c=b1+a +e=a}else f=g +d=a}switch(a2.aU.a){case 0:if(a2.a4)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.ag.a){case 0:if(a6){a7=a5.i(0,B.e5).b +a7.toString +t.r.a(a7).a=new A.j(s-p.a,d)}a7=a5.i(0,B.dE).b +a7.toString +b1=t.r +b1.a(a7).a=new A.j(m,e) +if(a8){a7=a5.i(0,B.dF) +a7.toString +c.toString +a7=a7.b +a7.toString +b1.a(a7).a=new A.j(m,c)}if(a9){a5=a5.i(0,B.eT).b +a5.toString +b1.a(a5).a=new A.j(0,a0)}break +case 1:if(a6){a7=a5.i(0,B.e5).b +a7.toString +t.r.a(a7).a=new A.j(0,d)}a7=a5.i(0,B.dE).b +a7.toString +b1=t.r +b1.a(a7).a=new A.j(n,e) +if(a8){a7=a5.i(0,B.dF) +a7.toString +c.toString +a7=a7.b +a7.toString +b1.a(a7).a=new A.j(n,c)}if(a9){a5=a5.i(0,B.eT).b +a5.toString +b1.a(a5).a=new A.j(s-o.a,a0)}break}a2.id=a4.bd(new A.V(s,f))}, +aI(a,b){var s=new A.cc9(a,b),r=this.fa$ +s.$1(r.i(0,B.e5)) +s.$1(r.i(0,B.dE)) +s.$1(r.i(0,B.dF)) +s.$1(r.i(0,B.eT))}, +kw(a){return!0}, +ej(a,b){var s,r,q,p,o,n +for(s=this.geg(0),r=s.length,q=t.r,p=0;p#"+A.bq(this)}} +A.Mb.prototype={ +iE(a){return A.iC(this.a,this.b,a)}} +A.afT.prototype={ +J(){return new A.aRf(null,null,B.f)}} +A.aRf.prototype={ +n6(a){var s,r,q=this +q.CW=t.ir.a(a.$3(q.CW,q.a.z,new A.c5z())) +s=q.a +r=t.YJ +s=r.a(a.$3(q.cy,s.as,new A.c5A())) +q.cy=s +s=q.a.at +q.cx=s!=null?r.a(a.$3(q.cx,s,new A.c5B())):null +q.db=t.TZ.a(a.$3(q.db,q.a.w,new A.c5C()))}, +q(a){var s,r,q,p,o,n,m=this,l=null,k=m.db +k.toString +k=k.ah(0,m.gih().gj(0)) +k.toString +s=m.CW +s.toString +r=s.ah(0,m.gih().gj(0)) +A.G(a) +s=m.a.Q +q=m.cx +p=A.cwE(s,q==null?l:q.ah(0,m.gih().gj(0)),r) +m.a.toString +s=m.cy +o=s==null?l:s.ah(0,m.gih().gj(0)) +if(o==null)o=B.D +s=A.fq(a) +q=m.a +n=q.y +return A.cKP(new A.aiz(q.r,k,!0,l),n,new A.Ad(k,s,l),p,r,o)}} +A.c5z.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.c5A.prototype={ +$1(a){return new A.fp(t.G.a(a),null)}, +$S:155} +A.c5B.prototype={ +$1(a){return new A.fp(t.G.a(a),null)}, +$S:155} +A.c5C.prototype={ +$1(a){return new A.Mb(t.RY.a(a),null)}, +$S:1796} +A.aiz.prototype={ +q(a){var s=A.fq(a) +return A.ih(this.c,new A.aWt(this.d,s,null),null,null,B.A)}} +A.aWt.prototype={ +aI(a,b){this.b.kz(a,new A.W(0,0,0+b.a,0+b.b),this.c)}, +hC(a){return!a.b.l(0,this.b)}} +A.b_S.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.a5o.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=A.G(a),k=A.cFt(a),j=k.aeD(n),i=l.p3.as +i.toString +i=i.bu(k.a_O(n)) +s=k.y +if(s==null){s=k.a_O(n) +s=A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}r=k.z +if(r==null){r=k.a_O(n) +r=A.Y(10,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255)}q=k.aJ5(n) +p=new A.aG(k.a,1/0,k.b,1/0).axD(m,m) +o=k.gdg(0) +return A.cLj(B.K,!1,n.dx,B.i,p,0,2,!0,j,s,4,m,l.db,8,r,4,l.f,m,m,m,n.c,q,o,l.k3,i,l.Q)}} +A.aRg.prototype={ +Cx(a){return a.gi4(0)==="en"}, +fB(a,b){return new A.dc(B.a4w,t.az)}, +Ao(a){return!1}, +k(a){return"DefaultMaterialLocalizations.delegate(en_US)"}} +A.asm.prototype={ +b1S(a,b){if(b===2){if(B.d.M(a,4)===0&&B.d.M(a,100)!==0||B.d.M(a,400)===0)return 29 +return 28}return B.FM[b-1]}, +alT(a){if(a<10)return"0"+a +return""+a}, +aA0(a){return B.d.k(A.b7(a))}, +azZ(a){return this.alT(A.bp(a))+"/"+this.alT(A.cL(a))+"/"+B.c.fm(B.d.k(A.b7(a)),4,"0")}, +aA_(a){return B.JW[A.ug(a)-1]+", "+B.f8[A.bp(a)-1]+" "+A.cL(a)}, +aaG(a){var s=B.bq[A.bp(a)-1] +return B.aGl[A.ug(a)-1]+", "+s+" "+A.cL(a)+", "+A.b7(a)}, +X2(a){var s=B.d.k(A.b7(a)) +return B.bq[A.bp(a)-1]+" "+s}, +acG(a){var s,r,q,p,o,n,m=null +if(a==null)return m +p=a.split("/") +if(p.length!==3)return m +s=A.cY(p[2],10) +if(s==null||s<1)return m +r=A.cY(p[0],10) +if(r==null||r<1||r>12)return m +q=A.cY(p[1],10) +if(q==null||q<1||q>this.b1S(s,r))return m +try{o=A.cd(s,r,q,0,0,0,0,!1) +if(!A.bI(o))A.C(A.bV(o)) +return new A.am(o,!1)}catch(n){if(A.ag(n) instanceof A.nN)return m +else throw n}}, +gaCj(){return B.ba}, +gaay(){return 0}, +gbW(){return"mm/dd/yyyy"}, +gcg(){return"Select year"}, +gbp(){return"Enter Date"}, +gbH(){return"Invalid format."}, +gbC(){return"Out of range."}, +gbv(){return"Select date"}, +gbB(){return"Switch to calendar"}, +gbw(){return"Switch to input"}, +aaE(a){var s,r,q,p +if(a<1000)return B.d.k(a) +s=B.d.k(Math.abs(a)) +r=s.length-1 +for(q=0,p="";q<=r;++q){p+=s[q] +if(q") +return A.R(new A.b1(r,new A.c67(),s),!0,s.h("B.E"))}, +gap7(){var s=this.am5() +if(s.length===0)return null +return s[B.d.M(B.b.c2(s,this)+1,s.length)]}, +gaqc(){var s,r,q=this.am5() +if(q.length===0)return null +s=B.b.c2(q,this) +r=q.length +return q[B.d.M(s-1+r,r)]}, +gtG(){var s,r +for(s=this;r=s.e,r!=null;s=r);return s}, +gata(){var s,r,q=this +while(!0){s=q.e +if(s!=null){r=s.e +r=r==null?null:r.e==null +r=r!==!0}else r=!1 +if(!r)break +s.toString +q=s}return q}, +a1U(){var s=this.e +if(s!=null)s.a1U() +s=$.cW +if(s.c_$!==B.i8)this.C(new A.c63()) +else s.xr$.push(new A.c64(this))}, +JX(){var s=this.a.d +if(s==null)return +s.ho()}, +b5Y(){if(this.e==null)this.vB()}, +aY0(a){if(a instanceof A.rx&&a.b.l(0,B.hM)){this.vB() +return B.d3}return B.eA}, +SN(a,b){var s,r=this,q=r.z +if(q.gml()&&!0)return +q.gml() +s=r.e +if(s!=null)s.a21() +s=r.e +if(s!=null)s.a1U() +r.Q=b +q.afT(0) +r.a.toString}, +b9W(a){return this.SN(0,null)}, +a4u(a){var s,r=this,q=r.z +if(!q.gml())return +if(r.e==null)$.an.U$.f.a.d.F(0,r.gaY_()) +r.ajK(a) +s=$.cW +if(s.c_$!==B.i8)q.mh() +else if(!a)s.xr$.push(new A.c65(r)) +if(!a){q=r.e +if(q!=null)q.a1U() +r.a.toString +if(r.c!=null&&$.cW.c_$!==B.i8)r.C(new A.c66())}}, +vB(){return this.a4u(!1)}, +ajK(a){var s,r,q +for(s=A.ew(this.w,!0,t.oS),r=s.length,q=0;q#"+A.bq(this)}} +A.c68.prototype={ +$1(a){var s=this.a,r=s.a,q=r.e,p=s.Q,o=r.r,n=r.as +return new A.YQ(s,q,p,B.h,o,r.Q,n,null)}, +$S:1798} +A.c69.prototype={ +$1(a){this.a.a21()}, +$S:56} +A.c61.prototype={ +$1(a){var s=this.a,r=s.a.at,q=s.gKv() +s.a.toString +q=r.$3(a,q,null) +if(q==null){s.a.toString +s=null}else s=q +return s==null?B.al:s}, +$S:8} +A.c67.prototype={ +$1(a){var s=a.a.d +s=s==null?null:s.ghP() +return s===!0}, +$S:1803} +A.c63.prototype={ +$0(){}, +$S:0} +A.c64.prototype={ +$1(a){this.a.C(new A.c62())}, +$S:5} +A.c62.prototype={ +$0(){}, +$S:0} +A.c65.prototype={ +$1(a){this.a.z.mh()}, +$S:5} +A.c66.prototype={ +$0(){}, +$S:0} +A.zm.prototype={} +A.SI.prototype={ +J(){return new A.ag5(B.f)}} +A.ag5.prototype={ +gJY(){this.a.toString +var s=this.d +s.toString +return s}, +a8(){var s=this +s.an() +s.a.toString +s.d=A.hH(!0,null,!0,!0,null,null,!1) +s.gJY().a3(0,s.gaoN())}, +m(){var s,r=this +r.gJY().O(0,r.gaoN()) +s=r.d +if(s!=null)s.m() +r.d=null +r.ap()}, +b1(a){this.a.toString +this.bc(a)}, +q(a){var s,r,q,p,o,n,m=this,l=null +m.a.toString +a.a0(t.HL) +s=A.G(a) +s=s.aT.a +if(s==null)r=l +else{m.a.toString +s=s.dt(A.cOv(a)) +r=s}if(r==null){m.a.toString +r=A.cOv(a)}s=m.a.x +if(s!=null)r=s.dt(r) +s=m.a.c!=null +q=s?m.ganc():l +s=s?m.gb4e():l +p=m.gJY() +o=m.a +n=A.nq(!1,new A.aRB(!1,o.Q,o.as,l,o.ax,l),B.i,p,l,l,l,s,l,q,l,r) +return new A.zo(!A.dms()&&o.c!=null?new A.azk(m.ganc(),n,l):n,l)}, +b9V(){if(!this.gJY().gnO()){var s=this.c +s.toString +s=A.ag3(s) +if(s!=null)s.a21()}}, +b4f(a){var s=this.a +s.toString +if(a&&s.e)this.gJY().ho()}, +b63(){this.a.toString +var s=this.c +s.toString +s=A.ag3(s) +if(s!=null)s.gtG().vB() +$.cW.xr$.push(new A.c6B(this))}} +A.c6B.prototype={ +$1(a){var s +$.an.U$.f.avo() +s=this.a.a.c +if(s!=null)s.$0()}, +$S:5} +A.a1Q.prototype={ +fI(a){this.e.a.gtG().vB()}, +pr(a,b){return this.e.a.z.gml()}} +A.ag2.prototype={ +ed(a){return this.f!==a.f||this.r!==a.r||this.w!==a.w}} +A.aRI.prototype={ +fI(a){var s,r,q=$.an.U$.f.c,p=q==null?null:q.e +if(p==null)return this.ah2(a) +s=A.ag3(p) +if(s==null||!s.gtG().z.gml())return this.ah2(a) +r=s.gaqc() +if(r!=null)r.JX() +return!0}} +A.aRF.prototype={ +fI(a){var s,r,q=$.an.U$.f.c,p=q==null?null:q.e +if(p==null)return this.agU(a) +s=A.ag3(p) +if(s==null||!s.gtG().z.gml())return this.agU(a) +r=s.gap7() +if(r!=null)r.JX() +return!0}} +A.aRw.prototype={ +fI(a){var s,r,q=this,p=null,o=$.an.U$.f.c,n=o==null?p:o.e +if(n==null){q.a0H(a) +return}s=A.ag3(n) +if(s==null||!s.gtG().z.gml()){q.a0H(a) +return}o=s.a.d +o=o==null?p:o.gnO() +r=o===!0 +if(r&&s.e!=null)s.e.toString +o=s.galF() +o=o==null?p:o.gnO() +switch(a.a.a){case 0:switch(1){case 1:if(o===!0){q.a4A(s) +return}q.ba8(s) +break}break +case 2:switch(1){case 1:q.ba7(s) +break}break +case 3:switch(1){case 1:o=n.a0(t.I) +o.toString +switch(o.w.a){case 0:if(r){q.aoU(s) +return}else{q.aoT(s) +return}case 1:switch(s.e==null?p:B.v){case B.a_:case null:case void 0:q.a4B(s) +return +case B.v:if(r){q.a4B(s) +return}else{q.a4A(s) +return}}break}break}break +case 1:switch(1){case 1:o=n.a0(t.I) +o.toString +switch(o.w.a){case 0:switch(s.e==null?p:B.v){case B.a_:case null:case void 0:q.a4B(s) +return +case B.v:q.a4A(s) +return}break +case 1:if(r){q.aoU(s) +return}else{q.aoT(s) +return}}break}break}q.a0H(a)}, +ba7(a){var s,r=a.a.d +if(r!=null)if(r.gjl()!=null){r=$.an.U$.f.c.e +r.toString +s=A.q8(r) +if(s!=null){r=a.a.d.gjl() +r.toString +s.xt(r) +s.Ca$.F(0,r)}}return!1}, +aoT(a){var s=a.gata().gap7() +if(s!=null)s.JX() +return!0}, +a4A(a){var s=a.a.d +s=s==null?null:s.gnO() +if(s===!1)a.JX() +return!0}, +ba8(a){var s,r=a.a.d +if(r!=null)if(r.gjl()!=null){r=$.an.U$.f.c.e +r.toString +s=A.q8(r) +if(s!=null){r=a.a.d.gjl() +r.toString +s.xt(r) +s.Ca$.F(0,r)}}return!1}, +a4B(a){var s=a.gata().gaqc() +if(s!=null)s.JX() +return!0}, +aoU(a){var s +if(!a.z.gml()){a.b9W(0) +return!0}else{s=a.galF() +if(s!=null&&s.gzA()!==s)s.ho() +return!0}}} +A.azk.prototype={ +ed(a){return!J.q(this.f,a.f)||!1}} +A.aRB.prototype={ +q(a){var s=null,r=Math.max(4,12+A.G(a).Q.a*2),q=t.p,p=A.a([],q),o=this.e,n=o!=null +if(n)p.push(o) +o=n?new A.eB(r,0,0,0):B.L +p.push(new A.aA(o,this.w,s)) +q=A.a([A.eq(p,B.t,s,B.o,B.Z,s,s,B.x)],q) +p=this.f +if(p!=null)q.push(new A.aA(new A.eB(r,0,0,0),p,s)) +return A.eq(q,B.t,s,B.d7,B.u,s,s,B.x)}} +A.c6I.prototype={ +A8(a){return A.nT(new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d))).om(B.cq)}, +Aa(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.d,e=g.c,d=g.b,c=f.a5(e).Pi(d) +if(f instanceof A.kE)switch(e.a){case 0:f=g.e +s=new A.j(-f.a,f.b) +break +case 1:s=g.e +break +default:s=null}else s=g.e +c=c.S(0,s) +r=c.a +q=c.b +switch(e.a){case 0:r-=b.a +break +case 1:break}p=g.aYw(A.cwn(new A.W(0,0,0+a.a,0+a.b),g.w),d.gc1()) +f=new A.c6N(p) +e=new A.c6O(b,p) +o=new A.c6P(p) +n=new A.c6M(b,p) +m=b.a +l=p.c +k=p.a +if(m>=l-k)r=k +else if(f.$1(r))if(g.y!==g.x)r=k +else{j=d.c+g.e.a +r=!e.$1(j)?j:k}else if(e.$1(r))if(g.y!==g.x)r=l-m +else{j=d.a-m-g.e.a +r=!f.$1(j)?j:l-m}f=b.b +e=p.d +i=p.b +if(f>=e-i)q=i +else if(o.$1(q)){h=d.d +q=!n.$1(h)?h:i}else if(n.$1(q)){h=d.b-f +if(!o.$1(h))q=g.y===B.a_?h-g.e.b:h +else q=e-f}return new A.j(r,q)}, +nt(a){var s=this +return!s.b.l(0,a.b)||s.c!==a.c||!s.d.l(0,a.d)||!s.e.l(0,a.e)||!s.r.l(0,a.r)||s.x!==a.x||s.y!==a.y||!A.BH(s.w,a.w)}, +aYw(a,b){var s,r,q,p,o,n,m,l,k,j=B.b.ga2(a) +for(s=a.length,r=b.a,q=b.b,p=0;pthis.b.c}, +$S:66} +A.c6P.prototype={ +$1(a){return athis.b.d}, +$S:66} +A.ag7.prototype={ +J(){return new A.aRG(new A.fh(0,!0,null,null,null,A.a([],t.ZP),$.ae()),B.f)}} +A.aRG.prototype={ +q(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=this,a8=null,a9={} +a9.a=a9.b=null +switch(a7.a.f.a){case 0:a9.b=A.cK3(b0).a +a9.a=A.cOu(b0) +break +case 1:a9.b=A.cK6(b0).a +a9.a=A.cOw(b0) +break}s=new A.c78(a9,a7.a.c) +r=new A.c79(s) +q=t._ +p=r.$1$1(new A.c6Y(),q) +o=r.$1$1(new A.c6Z(),q) +n=r.$1$1(new A.c7_(),q) +m=r.$1$1(new A.c70(),t.PM) +if(m==null)m=0 +q=t.tW +l=r.$1$1(new A.c71(),q) +k=r.$1$1(new A.c72(),q) +j=r.$1$1(new A.c73(),q) +i=r.$1$1(new A.c74(),t.oI) +h=r.$1$1(new A.c75(),t.KX).n0(i) +g=s.$1$1(new A.c76(),t.X3) +if(g==null)g=B.hi +f=r.$1$1(new A.c77(),t.pc) +if(f==null)f=B.L +e=new A.j(g.a,g.b).X(0,4) +d=e.b +c=Math.max(0,e.a) +b=f.B(0,new A.af(c,d,c,d)).dV(0,B.L,B.mo) +s=l==null +r=s?a8:l.a +if(r==null)r=0 +s=s?a8:l.b +if(s==null)s=0 +q=j==null +a=q?a8:j.a +if(a==null)a=1/0 +q=q?a8:j.b +a0=g.ME(new A.aG(r,a,s,q==null?1/0:q)) +if(k!=null){a1=a0.bd(k) +s=a1.a +if(isFinite(s))a0=a0.VQ(s,s) +s=a1.b +if(isFinite(s))a0=a0.a8I(s,s)}s=p==null?B.eI:B.bT +r=a7.a.d +q=A.um(b0).axI(!1,B.mG,!1) +a=a7.d +a2=a7.a.f +a3=b0.a0(t.I) +a3.toString +a4=a7.a +a5=a4.f +a6=a7.b80(A.fX(B.K,!0,a8,new A.aA(b,A.aE2(q,A.cyz(B.XN,A.bE3(A.uq(A.cwP(a4.r,B.a4,a5,a8,B.o,B.Z,a8,a3.w,B.x),B.k,a,B.m,a8,B.c5,a8,a8,a8,a8,!1,a2),a8,!0),a)),a8),r,p,m,a8,o,h,n,a8,s)) +s=a7.a +return new A.fI(a0,s.e?A.czw(B.fn,a6,B.k,s.f):a6,a8)}, +b80(a){switch(this.a.f.a){case 0:return new A.aw8(a,null) +case 1:return A.bnN(a,null)}}} +A.c78.prototype={ +$1$1(a,b){var s=a.$1(this.b) +if(s==null)s=a.$1(this.a.b) +return s==null?a.$1(this.a.a):s}, +$1(a){return this.$1$1(a,t.z)}, +$S:294} +A.c79.prototype={ +$1$1(a,b){return this.a.$1$1(new A.c7a(a,b),b)}, +$1(a){return this.$1$1(a,t.z)}, +$S:415} +A.c7a.prototype={ +$1(a){var s=this.a.$1(a) +return s==null?null:s.a5(A.b9(t.ui))}, +$S(){return this.b.h("0?(fz?)")}} +A.c6Y.prototype={ +$1(a){return a==null?null:a.gcv(a)}, +$S:280} +A.c6Z.prototype={ +$1(a){return a==null?null:a.gc0(a)}, +$S:280} +A.c7_.prototype={ +$1(a){return a==null?null:a.gc9()}, +$S:280} +A.c70.prototype={ +$1(a){return a==null?null:a.d}, +$S:1868} +A.c71.prototype={ +$1(a){return a==null?null:a.f}, +$S:286} +A.c72.prototype={ +$1(a){return a==null?null:a.r}, +$S:286} +A.c73.prototype={ +$1(a){return a==null?null:a.w}, +$S:286} +A.c74.prototype={ +$1(a){return a==null?null:a.x}, +$S:1885} +A.c75.prototype={ +$1(a){return a==null?null:a.y}, +$S:1886} +A.c76.prototype={ +$1(a){return a==null?null:a.gh6()}, +$S:422} +A.c77.prototype={ +$1(a){return a==null?null:a.gdX(a)}, +$S:424} +A.YQ.prototype={ +q(a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0=null,a1={},a2=a3.a0(t.I) +a2.toString +a1.a=a1.b=null +s=a.c +r=s.e==null?a0:B.v +switch((r==null?B.a_:r).a){case 0:a1.b=A.cK3(a3).a +a1.a=A.cOu(a3) +break +case 1:a1.b=A.cK6(a3).a +a1.a=A.cOw(a3) +break}r=new A.cgr(a1,a) +q=r.$1$1(new A.cgm(),t.X3) +if(q==null)q=A.G(a3).Q +p=r.$1$1(new A.cgn(),t.pC) +p.toString +o=$.an.U$.z.i(0,s.d) +o.toString +n=A.a5d(o,t.N1) +n=n.c.gai() +n.toString +m=t.x +m.a(n) +o=o.gai() +o.toString +m.a(o) +l=A.cK(o.cf(0,n),B.h) +m=o.gu(0) +k=A.lG(l,A.cK(o.cf(0,n),new A.j(0+m.a,0+m.b))) +j=new A.cgs(r).$1$1(new A.cgo(),t.pc) +if(j==null)j=B.L +i=new A.j(q.a,q.b).X(0,4) +h=i.b +g=Math.max(0,i.a) +f=j.B(0,new A.af(g,h,g,h)).dV(0,B.L,B.mo) +o=A.G(a3).bs0(q) +n=n.gu(0) +n=A.nT(new A.V(0+n.a-0,0+n.b-0)) +m=A.cwm(A.bC(a3,a0,t.l).w) +m=A.hh(m,m.$ti.h("B.E")) +e=s.e==null?a0:B.v +if(e==null)e=B.a_ +d=s.gtG() +c=s.gtG().z.gml()&&s.a.x +b=s.f +b===$&&A.b() +return new A.pC(o,new A.fI(n,new A.q1(new A.c6I(k,a2.w,p,a.f,a.e,f,m,B.v,e),A.cMG(A.ip(A.aue(!1,A.ts(A.a1([B.m7,A.cOx(),B.m8,new A.a1Q(s.gKv(),new A.bN(A.a([],t.h),t.b))],t.u,t.od),A.Fi(new A.ag7(a.d,a.r,a.w,B.v,a.x,a0),a0,B.aTc)),a0,a0,b,a0,!0),new A.aRU(new A.cgp(r)),B.cE,a0,a0,a0,a0),c,a0,!0,d,a0,a0,new A.cgq(a)),a0),a0),a0)}} +A.cgr.prototype={ +$1$1(a,b){var s=a.$1(this.b.d) +if(s==null)s=a.$1(this.a.b) +return s==null?a.$1(this.a.a):s}, +$1(a){return this.$1$1(a,t.z)}, +$S:294} +A.cgs.prototype={ +$1$1(a,b){return this.a.$1$1(new A.cgt(a,b),b)}, +$1(a){return this.$1$1(a,t.z)}, +$S:415} +A.cgt.prototype={ +$1(a){var s=this.a.$1(a) +return s==null?null:s.a5(A.b9(t.ui))}, +$S(){return this.b.h("0?(fz?)")}} +A.cgp.prototype={ +$1(a){return this.a.$1$1(new A.cgl(a),t.Pb)}, +$S:343} +A.cgl.prototype={ +$1(a){return null}, +$S:1901} +A.cgm.prototype={ +$1(a){return a==null?null:a.gh6()}, +$S:422} +A.cgn.prototype={ +$1(a){return a==null?null:a.as}, +$S:1970} +A.cgo.prototype={ +$1(a){return a==null?null:a.gdX(a)}, +$S:424} +A.cgq.prototype={ +$1(a){this.a.c.vB()}, +$S:56} +A.aRU.prototype={ +a5(a){var s=this.a.$1(a) +return s==null?B.AO:s}, +gyE(){return"Menu_MouseCursor"}} +A.aRq.prototype={ +gko(){var s,r=this,q=r.ax +if(q===$){s=A.G(r.at) +r.ax!==$&&A.a_() +q=r.ax=s.ay}return q}, +gcv(a){return new A.bS(this.gko().cy,t.Il)}, +gc0(a){var s=this.gko().fy +if(s==null)s=B.B +return new A.bS(s,t.Il)}, +gc9(){var s=this.gko(),r=s.k3 +s=r==null?s.b:r +return new A.bS(s,t.Il)}, +gdX(a){return B.b4w}, +gh6(){return A.G(this.at).Q}} +A.aRr.prototype={ +gko(){var s,r=this,q=r.fr +if(q===$){s=A.G(r.dy) +r.fr!==$&&A.a_() +q=r.fr=s.ay}return q}, +gcv(a){return new A.bS(B.D,t.h9)}, +gft(a){return new A.bS(0,t.QL)}, +ghx(){return new A.by(new A.c6a(this),t.U)}, +ghU(){return new A.by(new A.c6b(this),t.U)}, +gle(){return new A.bS(B.Yz,t.iL)}, +glg(){return new A.bS(B.bmr,t.iL)}, +giS(){return new A.by(new A.c6c(),t.Y6)}, +gew(){return new A.by(new A.c6d(this),t.U)}, +gdX(a){var s,r,q,p=this.dy,o=A.G(p).Q +if(o.a>0)o=new A.qU(0,o.b) +s=o.a +r=o.b +q=Math.max(8,12+new A.j(s,r).X(0,4).a) +r=Math.max(8,8+new A.j(s,r).X(0,4).a) +p=A.cG(p,B.qL) +p=p==null?null:p.gdZ().gir() +if(p==null)p=1 +p=A.Hw(new A.af(q,0,q,0),new A.af(r,0,r,0),B.cp,p) +return new A.bS(p,t.Ak)}, +gdg(a){return new A.bS(B.ep,t.kU)}, +giV(){return A.G(this.dy).y}, +gkU(){return A.G(this.dy).f}, +ghp(){var s,r=this,q=r.fx +if(q===$){s=A.G(r.dy) +r.fx!==$&&A.a_() +q=r.fx=s.p3}return new A.bS(q.as,t.wG)}, +gh6(){return A.G(this.dy).Q}} +A.c6a.prototype={ +$1(a){var s,r=this +if(a.p(0,B.F)){s=r.a.gko().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.X))return r.a.gko().db +if(a.p(0,B.P))return r.a.gko().db +if(a.p(0,B.R))return r.a.gko().db +return r.a.gko().db}, +$S:7} +A.c6b.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){s=q.a.gko().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.X)){s=q.a.gko() +r=s.dy +return r==null?s.db:r}if(a.p(0,B.P)){s=q.a.gko() +r=s.dy +return r==null?s.db:r}if(a.p(0,B.R)){s=q.a.gko() +r=s.dy +return r==null?s.db:r}s=q.a.gko() +r=s.dy +return r==null?s.db:r}, +$S:7} +A.c6c.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.c6d.prototype={ +$1(a){var s +if(a.p(0,B.X)){s=this.a.gko().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.gko().db +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.gko().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}, +$S:7} +A.aRv.prototype={ +gko(){var s,r=this,q=r.ax +if(q===$){s=A.G(r.at) +r.ax!==$&&A.a_() +q=r.ax=s.ay}return q}, +gcv(a){return new A.bS(this.gko().cy,t.Il)}, +gc9(){var s=this.gko(),r=s.k3 +s=r==null?s.b:r +return new A.bS(s,t.Il)}, +gc0(a){var s=this.gko().fy +if(s==null)s=B.B +return new A.bS(s,t.Il)}, +gdX(a){return B.b4v}, +gh6(){return A.G(this.at).Q}} +A.azm.prototype={} +A.a5L.prototype={ +gv(a){return J.ab(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.a5L&&J.q(b.a,this.a)}} +A.aRt.prototype={} +A.fz.prototype={ +gv(a){var s=this +return A.cs([s.gcv(s),s.gc0(s),s.gc9(),s.d,s.gdX(s),s.f,s.r,s.w,s.x,s.y,s.z,s.gh6(),s.as])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.fz&&b.gcv(b)==s.gcv(s)&&b.gc0(b)==s.gc0(s)&&b.gc9()==s.gc9()&&b.d==s.d&&b.gdX(b)==s.gdX(s)&&b.f==s.f&&b.r==s.r&&b.w==s.w&&b.x==s.x&&b.y==s.y&&J.q(b.gh6(),s.gh6())&&J.q(b.as,s.as)}, +bsg(a,b){var s=this,r=s.gcv(s),q=s.gc0(s),p=s.gc9(),o=s.gdX(s),n=b==null?s.f:b,m=a==null?s.w:a,l=s.gh6() +return new A.fz(r,q,p,s.d,o,n,s.r,m,s.x,s.y,s.z,l,s.as)}, +brL(a){return this.bsg(null,a)}, +gcv(a){return this.a}, +gc0(a){return this.b}, +gc9(){return this.c}, +gdX(a){return this.e}, +gh6(){return this.Q}} +A.aQP.prototype={ +a5(a){var s,r=this,q=r.a,p=q==null?null:q.a5(a) +q=r.b +s=q==null?null:q.a5(a) +q=p==null +if(q&&s==null)return null +if(q){q=s.a +return A.c8(new A.bx(A.Y(0,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),0,B.O,-1),s,r.c)}if(s==null){q=p.a +return A.c8(p,new A.bx(A.Y(0,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),0,B.O,-1),r.c)}return A.c8(p,s,r.c)}, +$ic9:1} +A.aRK.prototype={} +A.SK.prototype={ +gv(a){return J.ab(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.SK&&J.q(b.a,this.a)}} +A.aRL.prototype={} +A.aA_.prototype={ +bal(a){return new A.bug(this,a)}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=null +A.G(a) +s=A.cA6(a) +r=A.cy8(a) +q=r.a +if(q==null){p=s.a +p.toString +q=p}o=r.y +if(o==null){p=s.y +p.toString +o=p}p=r.b +if(p==null)p=s.gcv(0) +n=r.c +if(n==null){n=s.c +n.toString}m=r.d +if(m==null)m=s.gc0(0) +l=r.e +if(l==null)l=s.gc9() +k=A.a([],t.p) +for(j=this.e,i=this.d,h=0;h")))}} +A.bWB.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.bWC.prototype={ +$0(){this.a.e=null}, +$S:0} +A.bWD.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.c7N.prototype={ +gvC(){var s,r=this,q=r.as +if(q===$){s=A.G(r.Q) +r.as!==$&&A.a_() +q=r.as=s.ay}return q}, +gcv(a){return this.gvC().cy}, +gc0(a){return B.D}, +gc9(){var s=this.gvC(),r=s.k3 +return r==null?s.b:r}, +gj0(){return new A.by(new A.c7O(this),t.gT)}, +gmi(){var s=this.gvC(),r=s.w +return r==null?s.f:r}, +gqr(){return B.lV}, +gpu(){return new A.by(new A.c7P(this),t.ns)}} +A.c7O.prototype={ +$1(a){var s,r,q=null +if(a.p(0,B.F)){s=this.a.gvC() +r=s.dy +s=r==null?s.db:r +s=A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}else{s=this.a +if(a.p(0,B.S)){s=s.gvC() +r=s.x +s=r==null?s.r:r}else{s=s.gvC() +r=s.dy +s=r==null?s.db:r}}return new A.dW(24,q,q,q,q,s,q,q,q)}, +$S:528} +A.c7P.prototype={ +$1(a){var s,r,q=this.a,p=q.at +if(p===$){s=A.G(q.Q) +q.at!==$&&A.a_() +p=q.at=s.p3}s=p.at +s.toString +if(a.p(0,B.F)){q=q.gvC() +r=q.dy +q=r==null?q.db:r +q=A.Y(97,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255)}else if(a.p(0,B.S))q=q.gvC().db +else{q=q.gvC() +r=q.dy +q=r==null?q.db:r}return s.yg(q)}, +$S:79} +A.alu.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.Ky.prototype={ +gv(a){var s=this +return A.ad(s.a,s.gcv(s),s.c,s.gc0(s),s.gc9(),s.gmi(),s.gqr(),s.gpu(),s.gj0(),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.az(b)!==A.I(s))return!1 +return b instanceof A.Ky&&b.a==s.a&&J.q(b.gcv(b),s.gcv(s))&&b.c==s.c&&J.q(b.gc0(b),s.gc0(s))&&J.q(b.gc9(),s.gc9())&&J.q(b.gmi(),s.gmi())&&J.q(b.gqr(),s.gqr())&&b.gpu()==s.gpu()&&b.gj0()==s.gj0()&&b.y==s.y&&b.z==s.z}, +gcv(a){return this.b}, +gc0(a){return this.d}, +gc9(){return this.e}, +gmi(){return this.f}, +gqr(){return this.r}, +gpu(){return this.w}, +gj0(){return this.x}} +A.aS5.prototype={} +A.a6a.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.a6a&&b.a==s.a&&J.q(b.b,s.b)&&b.c==s.c&&J.q(b.d,s.d)&&J.q(b.e,s.e)&&J.q(b.f,s.f)&&J.q(b.r,s.r)&&J.q(b.w,s.w)&&b.x==s.x&&b.y==s.y}} +A.aS8.prototype={} +A.a6b.prototype={ +J(){return new A.agp(null,null,B.f)}} +A.agp.prototype={ +a8(){this.an() +this.ap0()}, +m(){this.akV() +this.aTD()}, +b1(a){var s,r,q=this +q.bc(a) +s=q.a +if(s.r.length!==a.r.length){q.akV() +q.ap0() +return}r=a.w +if(s.w!==r){s=q.d +s===$&&A.b() +s[r].eI(0) +s=q.a +q.d[s.w].cM(0) +return}}, +q(c2){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=this,c1=null +c2.a0(t.vV) +s=A.G(c2).eq +A.G(c2) +r=new A.c7Z(c2,c1,0,c1,c1,c1,c1,-1,B.RT,!0,c1,c1,80,256) +q=A.dS(c2,B.an,t.v) +q.toString +c0.a.toString +p=s.a +if(p==null)p=r.gcv(0) +c0.a.toString +o=s.b +if(o==null){n=r.b +n.toString +o=n}m=s.Q +if(m==null){n=r.Q +n.toString +m=n}l=s.as +if(l==null){n=r.as +n.toString +l=n}k=s.c +if(k==null)k=r.gI1() +c0.a.toString +j=s.d +if(j==null)j=r.gDE() +c0.a.toString +i=s.e +if(i==null)i=r.gI0() +c0.a.toString +h=s.f +if(h==null)h=r.gDD() +n=c0.a +n.toString +g=s.r +if(g==null){f=r.r +f.toString +g=f}e=n.Q +d=s.x +if(d==null){n=r.x +n.toString +d=n}c=s.y +if(c==null)c=r.gmi() +c0.a.toString +b=s.z +if(b==null)b=r.gqr() +A.G(c2) +n=c2.a0(t.I) +n.toString +a=n.w===B.ae +n=c0.r +n===$&&A.b() +f=t.p +a0=A.a([B.bmJ],f) +c0.a.toString +f=A.a([],f) +for(a1=t.x8,a2=t.jc,a3=0;a4=c0.a,a5=a4.r,a6=a5.length,a30){o.b=o.c=o.d=o.e=null +o.a=0}p=q.em$ +p.b=!1 +B.b.V(p.a) +o=p.c +if(o===$){n=A.dV(p.$ti.c) +p.c!==$&&A.a_() +p.c=n +o=n}if(o.a>0){o.b=o.c=o.d=o.e=null +o.a=0}q.DW()}m=this.f +m===$&&A.b() +m.m()}, +ap0(){var s,r,q,p,o=this,n=null,m=o.a.r.length,l=J.d1(m,t.A_) +for(s=o.gbam(),r=0;r>") +o.e=A.R(new A.O(l,new A.c8_(),s),!0,s.h("aa.E")) +s=o.a +o.d[s.w].sj(0,1) +o.a.toString +s=A.bQ(n,B.K,n,1,0,o) +o.f=s +o.r=A.cI(B.cN,s,n) +s=o.f +s.cY() +s=s.em$ +s.b=!0 +s.a.push(new A.c80(o))}, +ap1(){this.C(new A.c81())}} +A.c82.prototype={ +$0(){this.a.a.x.$1(this.b)}, +$S:0} +A.c8_.prototype={ +$1(a){return a}, +$S:529} +A.c80.prototype={ +$0(){this.a.ap1()}, +$S:0} +A.c81.prototype={ +$0(){}, +$S:0} +A.aU2.prototype={ +q(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1=null +A.G(a2) +s=a2.a0(t.I) +s.toString +r=a0.z +q=A.DA(a0.e,r,a1) +p=a0.f +o=A.h4(p,a1,a1,B.aG,!0,a0.Q,a1,a1,B.a0) +r=r.a +if(r!=null&&r>32){r.toString +n=(r-32)/2}else n=0 +switch(a0.w.a){case 0:r=a0.c +m=new A.j(r/2+0,6+n) +l=t.p +k=A.a([],l) +k.push(B.YD) +k.push(new A.ba(r,a1,A.eu(new A.WS(a0.ay,!1,a0.ch,a0.CW,a0.r,q,a1),a1,a1,a1),a1)) +k.push(B.YD) +j=A.cS(k,B.t,a1,B.o,B.u,a1,a1,B.x) +k=a0.y +if(k.gj(0)===0){i=new A.aA(B.L,new A.d4(B.ar,a1,B.am,B.k,A.a([j,A.cyY(A.dgm(p,!1),a1)],l),a1),a1) +h=!1}else{t.o.a(k) +r=A.av(r,a0.d,k.gj(0)) +r.toString +i=new A.aA(B.L,new A.fI(new A.aG(r,1/0,0,1/0),A.p3(A.eq(A.a([j,new A.fl(B.fn,k.gj(0),1,new A.dg(new A.aB(k,new A.eA(B.aAn),t.HY.h("aB")),!0,o,a1),a1),new A.ba(8*k.gj(0),a1,a1,a1)],l),B.t,a1,B.o,B.u,a1,a1,B.x),B.k,a1),a1),a1) +h=!0}break +case 1:g=1-a0.cy.gj(0) +A.av(24,16,g).toString +f=a0.x?B.aAo:B.aAp +r=t.o.a(a0.r) +p=A.av(0,4,g) +p.toString +l=a0.c +k=l/2 +e=0+n +m=new A.j(k+0,e) +d=A.cOC(a2).Q +d.toString +if(l")),!0,o,a1),a1),new A.ba(a1,12,a1,a1)],t.p),B.t,a1,B.cu,B.Z,a1,a1,B.x),B.k,a1),B.i,a1,new A.aG(l,1/0,0,1/0),a1,a1,a1,a1,a1,B.cp,a1,a1,a1) +h=!1 +break +case 2:r=a0.c +p=r/2 +l=0+n +m=new A.j(p+0,l) +k=A.cOC(a2).Q +k.toString +if(r>>24&255)<255 +a=b?c:A.Y(31,c.gj(c)>>>16&255,c.gj(c)>>>8&255,c.gj(c)&255) +c=b?c:A.Y(10,c.gj(c)>>>16&255,c.gj(c)>>>8&255,c.gj(c)&255) +r=a0.c/2 +A.tw(new A.bb(r,r)) +s=A.fX(B.K,!0,a1,new A.afd(!0,m,h,s.w,i,a0.as,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,!0,B.U,a1,a1,a0.CW,a1,c,a1,a1,a,a1,!0,!1,a1,!1,a1,!0,a1,a1,a1),B.i,a1,0,a1,a1,a1,a1,a1,B.eI) +s=A.a([s,new A.bX(A.ci(a1,a1,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) +return new A.bX(A.ci(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,a1,a1,a0.x,a1,a1,a1,a1,a1,a1,a1,a1),!0,!1,!1,!1,new A.d4(B.ar,a1,B.am,B.k,s,a1),a1)}} +A.afd.prototype={ +Ix(a){var s=this,r={},q=a.gu(0).a,p=s.RG?s.R8.a:q/2 +r.a=p +if(s.rx===B.ae)r.a=q-p +return new A.c2n(r,s)}} +A.c2n.prototype={ +$0(){var s=this.a.a-28,r=this.b.R8.b +return new A.W(s,r,s+56,r+32)}, +$S:154} +A.WS.prototype={ +q(a){var s,r,q,p=this +if(!p.c)return p.w +s=A.aF("indicator") +r=p.r +q=p.e +if(p.d)s.se9(A.cya(r,A.ed(28),q,56,null,56)) +else s.se9(A.cya(r,B.rt,q,32,p.f,56)) +return new A.d4(B.C,null,B.am,B.k,A.a([s.aX(),p.w],t.p),null)}} +A.aA1.prototype={ +H(){return"NavigationRailLabelType."+this.b}} +A.SY.prototype={} +A.aOK.prototype={ +ed(a){return this.f!==a.f}} +A.c7Y.prototype={ +gcv(a){return this.ax.cy}, +gI1(){var s,r=this.at.p3.y +r.toString +s=this.ax.db +return r.bu(A.Y(163,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255))}, +gDE(){return this.at.p3.y.bu(this.ax.b)}, +gI0(){var s=null +return new A.dW(24,s,s,s,s,this.ax.db,0.64,s,s)}, +gDD(){var s=null +return new A.dW(24,s,s,s,s,this.ax.b,1,s,s)}} +A.c7Z.prototype={ +gEM(){var s,r=this,q=r.ax +if(q===$){s=A.G(r.at) +r.ax!==$&&A.a_() +q=r.ax=s.ay}return q}, +gap2(){var s,r=this,q=r.ay +if(q===$){s=A.G(r.at) +r.ay!==$&&A.a_() +q=r.ay=s.p3}return q}, +gcv(a){return this.gEM().cy}, +gI1(){var s=this.gap2().at +s.toString +return s.bu(this.gEM().db)}, +gDE(){var s=this.gap2().at +s.toString +return s.bu(this.gEM().db)}, +gI0(){var s=null,r=this.gEM(),q=r.dy +return new A.dW(24,s,s,s,s,q==null?r.db:q,s,s,s)}, +gDD(){var s=null,r=this.gEM(),q=r.x +return new A.dW(24,s,s,s,s,q==null?r.r:q,s,s,s)}, +gmi(){var s=this.gEM(),r=s.w +return r==null?s.f:r}, +gqr(){return B.lV}} +A.al9.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.SZ.prototype={ +gv(a){var s=this +return A.ad(s.gcv(s),s.b,s.gI1(),s.gDE(),s.gI0(),s.gDD(),s.r,s.w,s.x,s.gmi(),s.gqr(),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.az(b)!==A.I(s))return!1 +return b instanceof A.SZ&&J.q(b.gcv(b),s.gcv(s))&&b.b==s.b&&J.q(b.gI1(),s.gI1())&&J.q(b.gDE(),s.gDE())&&J.q(b.gI0(),s.gI0())&&J.q(b.gDD(),s.gDD())&&b.r==s.r&&b.w==s.w&&b.x==s.x&&J.q(b.gmi(),s.gmi())&&J.q(b.gqr(),s.gqr())&&b.Q==s.Q&&b.as==s.as}, +gcv(a){return this.a}, +gI1(){return this.c}, +gDE(){return this.d}, +gI0(){return this.e}, +gDD(){return this.f}, +gmi(){return this.y}, +gqr(){return this.z}} +A.aS9.prototype={} +A.Er.prototype={ +rp(a){var s=null +A.G(a) +A.G(a) +return new A.aSG(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.K,!0,B.C,s)}, +OS(a){var s +a.a0(t.BR) +s=A.G(a) +return s.f1.a}} +A.aSI.prototype={ +rp(a){var s,r,q +A.G(a) +s=this.aPn(a) +r=s.ghp() +if(r==null)q=null +else{r=r.a5(B.er) +r=r==null?null:r.r +q=r}if(q==null)q=14 +r=A.cG(a,B.bn) +r=r==null?null:r.gdZ() +return s.BP(new A.bS(A.Hw(B.u1,B.CX,B.CW,(r==null?B.Y:r).bK(0,q)/14),t.Ak))}} +A.aSJ.prototype={ +q(a){var s,r,q=null,p=A.cG(a,B.bn) +p=p==null?q:p.gdZ() +s=(p==null?B.Y:p).gir() +if(s<=1)r=8 +else{p=A.av(8,4,Math.min(s-1,1)) +p.toString +r=p}return A.eq(A.a([this.d,new A.ba(r,q,q,q),new A.iO(1,B.c1,this.c,q)],t.p),B.t,q,B.o,B.Z,q,q,B.x)}} +A.aSG.prototype={ +gxT(){var s,r=this,q=r.fr +if(q===$){s=A.G(r.dy) +r.fr!==$&&A.a_() +q=r.fr=s.ay}return q}, +ghp(){return new A.bS(A.G(this.dy).p3.as,t.wG)}, +gcv(a){return B.cg}, +ghx(){return new A.by(new A.c8L(this),t.U)}, +gew(){return new A.by(new A.c8N(this),t.U)}, +gc0(a){return B.cg}, +gc9(){return B.cg}, +gft(a){return B.hS}, +gdX(a){return new A.bS(A.dnM(this.dy),t.Ak)}, +glg(){return B.lq}, +gle(){return B.eH}, +ghr(){return new A.by(new A.c8O(this),t.rC)}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.c8M(),t.Y6)}, +gh6(){return A.G(this.dy).Q}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.c8L.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a.gxT().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.gxT().b}, +$S:7} +A.c8N.prototype={ +$1(a){var s +if(a.p(0,B.X)){s=this.a.gxT().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.gxT().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.gxT().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.c8O.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gxT().db +return new A.bx(A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}if(a.p(0,B.R))return new A.bx(this.a.gxT().b,1,B.O,-1) +s=this.a.gxT() +r=s.fr +return new A.bx(r==null?s.cx:r,1,B.O,-1)}, +$S:122} +A.c8M.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.a6A.prototype={ +gv(a){return J.ab(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.a6A&&J.q(b.a,this.a)}} +A.aSH.prototype={} +A.Kd.prototype={ +awb(a){return this.en.$1(a)}, +gpe(){return A.hw.prototype.gpe.call(this)+"("+A.r(this.b.a)+")"}, +grP(){return!0}} +A.Ke.prototype={ +gv0(a){return B.aA}, +gq9(){return null}, +gu1(){return null}, +Vo(a){var s +if(t.Le.b(a)){a.grD() +s=!0}else s=!1 +if(!s)if(a instanceof A.Bb){a.$ti.h("nZ<1>").a(a.b) +s=!0}else s=!1 +else s=!0 +return s}, +rj(a,b,c){var s=null,r=this.awb(a) +return new A.bX(A.ci(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,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r,s)}, +ym(a,b,c,d){var s,r=A.G(a),q=A.G(a).w +if(this.a.cx.a)q=B.aM +s=r.r.a.i(0,q) +if(s==null)s=B.rK +return s.a7W(this,a,b,c,d,A.z(this).c)}} +A.u6.prototype={ +BS(a){var s=null,r=this.$ti,q=A.a([],t.Zt),p=$.at,o=r.h("ak<1?>"),n=r.h("aI<1?>"),m=A.ms(B.bO),l=A.a([],t.wi),k=$.ae(),j=$.at +return new A.agE(!1,!0,!1,s,s,q,A.b9(t.kj),new A.aR(s,r.h("aR>")),new A.aR(s,t.A),new A.qt(),s,0,new A.aI(new A.ak(p,o),n),m,l,this,new A.bm(s,k,t.XR),new A.aI(new A.ak(j,o),n),new A.aI(new A.ak(j,o),n),r.h("agE<1>"))}} +A.agE.prototype={ +awb(a){return this.$ti.h("u6<1>").a(this.b).r}, +grP(){this.$ti.h("u6<1>").a(this.b) +return!0}, +grD(){this.$ti.h("u6<1>").a(this.b) +return!1}, +gpe(){return A.hw.prototype.gpe.call(this)+"("+A.r(this.$ti.h("u6<1>").a(this.b).a)+")"}} +A.afU.prototype={} +A.ale.prototype={} +A.aON.prototype={ +q(a){return A.aEM(new A.dg(this.d,!1,this.e,null),this.c,null,!0)}} +A.b_l.prototype={ +q(a){var s=this +return new A.Cw(s.c,new A.cnQ(s),new A.cnR(s),new A.Cw(new A.or(s.d,new A.bN(A.a([],t.x8),t.jc),0),new A.cnS(s),new A.cnT(s),s.f,null),null)}} +A.cnQ.prototype={ +$3(a,b,c){return new A.GC(b,c,this.a.e&&!0,!1,null)}, +$C:"$3", +$R:3, +$S:427} +A.cnR.prototype={ +$3(a,b,c){return new A.GD(b,this.a.e,!0,c,null)}, +$C:"$3", +$R:3, +$S:431} +A.cnS.prototype={ +$3(a,b,c){return new A.GC(b,c,this.a.e&&!0,!0,null)}, +$C:"$3", +$R:3, +$S:427} +A.cnT.prototype={ +$3(a,b,c){return new A.GD(b,this.a.e,!1,c,null)}, +$C:"$3", +$R:3, +$S:431} +A.GC.prototype={ +J(){return new A.b_j(new A.a9U($.ae()),$,$,B.f)}} +A.b_j.prototype={ +gae4(){return!1}, +KC(){var s,r=this,q=r.a,p=q.f +if(p)s=B.iG +else{s=$.cZd() +s=new A.aB(q.c,s,s.$ti.h("aB"))}r.wg$=s +p=p?$.cZe():$.cZf() +q=q.c +r.zd$=new A.aB(q,p,p.$ti.h("aB")) +q.a3(0,r.gHb()) +r.a.c.je(r.gHa())}, +a8(){var s,r,q,p,o=this +o.KC() +s=o.a +r=s.f +q=o.wg$ +q===$&&A.b() +p=o.zd$ +p===$&&A.b() +o.d=A.cPx(s.c,q,r,p) +o.an()}, +b1(a){var s,r,q,p=this,o=p.a +if(a.f!==o.f||a.c!==o.c){o=a.c +o.O(0,p.gHb()) +o.fW(p.gHa()) +p.KC() +o=p.d +o===$&&A.b() +o.m() +o=p.a +s=o.f +r=p.wg$ +r===$&&A.b() +q=p.zd$ +q===$&&A.b() +p.d=A.cPx(o.c,r,s,q)}p.bc(a)}, +m(){var s,r=this +r.a.c.O(0,r.gHb()) +r.a.c.fW(r.gHa()) +s=r.d +s===$&&A.b() +s.m() +r.aUk()}, +q(a){var s=this.d +s===$&&A.b() +return A.cMk(!0,this.a.d,this.zc$,B.YF,s)}} +A.GD.prototype={ +J(){return new A.b_k(new A.a9U($.ae()),$,$,B.f)}} +A.b_k.prototype={ +gae4(){return!1}, +KC(){var s,r=this,q=r.a,p=q.e +if(p){s=$.cZh() +s=new A.aB(q.c,s,s.$ti.h("aB"))}else s=B.iG +r.wg$=s +p=p?$.cZi():$.cZj() +q=q.c +r.zd$=new A.aB(q,p,p.$ti.h("aB")) +q.a3(0,r.gHb()) +r.a.c.je(r.gHa())}, +a8(){var s,r,q,p,o=this +o.KC() +s=o.a +r=s.e +q=o.wg$ +q===$&&A.b() +p=o.zd$ +p===$&&A.b() +o.d=A.cPy(s.c,q,r,p) +o.an()}, +b1(a){var s,r,q,p=this,o=p.a +if(a.e!==o.e||a.c!==o.c){o=a.c +o.O(0,p.gHb()) +o.fW(p.gHa()) +p.KC() +o=p.d +o===$&&A.b() +o.m() +o=p.a +s=o.e +r=p.wg$ +r===$&&A.b() +q=p.zd$ +q===$&&A.b() +p.d=A.cPy(o.c,r,s,q)}p.bc(a)}, +m(){var s,r=this +r.a.c.O(0,r.gHb()) +r.a.c.fW(r.gHa()) +s=r.d +s===$&&A.b() +s.m() +r.aUl()}, +q(a){var s=this.d +s===$&&A.b() +return A.cMk(!0,this.a.f,this.zc$,B.YF,s)}} +A.wt.prototype={} +A.aK3.prototype={ +a7W(a,b,c,d,e){return new A.b_l(c,d,!0,e,!0,null)}} +A.arQ.prototype={ +a7W(a,b,c,d,e,f){return A.cGj(a,b,c,d,e,f)}} +A.a6H.prototype={ +a1q(a){var s=t.Tr +return A.R(new A.O(B.Ks,new A.bwc(a),s),!0,s.h("aa.E"))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.az(b)!==A.I(r))return!1 +s=b instanceof A.a6H +if(s&&r.a===b.a)return!0 +return s&&A.fj(r.a1q(b.a),r.a1q(r.a))}, +gv(a){return A.cs(this.a1q(this.a))}} +A.bwc.prototype={ +$1(a){return this.a.i(0,a)}, +$S:532} +A.Z4.prototype={ +bBH(){var s,r=this,q=r.zd$ +q===$&&A.b() +s=q.a +if(J.q(q.b.ah(0,s.gj(s)),1)){q=r.wg$ +q===$&&A.b() +if(!J.q(q.gj(q),0)){q=r.wg$ +q=J.q(q.gj(q),1)}else q=!0}else q=!1 +s=r.zc$ +if(q)s.sUW(!1) +else{r.gae4() +s.sUW(!1)}}, +bBG(a){switch(a.a){case 0:case 3:this.zc$.sUW(!1) +break +case 1:case 2:this.gae4() +this.zc$.sUW(!1) +break}}} +A.akx.prototype={ +a4T(a){this.ab()}, +b07(a,b,c){var s,r,q,p,o +if(!this.r){s=this.w +s=s.gbM(s)!==B.a9}else s=!1 +if(s){s=this.w +s=$.cZg().ah(0,s.gj(s)) +s.toString +r=s}else r=0 +if(r>0){s=a.gbY(a) +q=b.a +p=b.b +o=$.ar().aP() +o.sa6(0,A.Y(B.e.aF(255*r),0,0,0)) +s.fs(new A.W(q,p,q+c.a,p+c.b),o)}}, +zJ(a,b,c,d){var s,r,q=this,p=q.w +switch(p.gbM(p).a){case 3:case 0:return d.$2(a,b) +case 1:case 2:break}q.b07(a,b,c) +p=q.z +s=q.x +r=s.a +A.cRv(p,s.b.ah(0,r.gj(r)),c) +r=q.as +r.sb9(0,a.zS(!0,b,p,new A.cnO(q,d),r.a))}, +m(){var s=this,r=s.w,q=s.gip() +r.O(0,q) +r.fW(s.gKB()) +s.x.a.O(0,q) +s.y.O(0,q) +s.Q.sb9(0,null) +s.as.sb9(0,null) +s.f4()}, +hC(a){var s,r,q,p,o=this +if(a.r===o.r){s=a.w +r=o.w +if(J.q(s.gj(s),r.gj(r))){s=a.x +r=s.a +q=o.x +p=q.a +if(J.q(s.b.ah(0,r.gj(r)),q.b.ah(0,p.gj(p)))){s=a.y +r=o.y +r=!J.q(s.gj(s),r.gj(r)) +s=r}else s=!0}else s=!0}else s=!0 +return s}} +A.cnO.prototype={ +$2(a,b){var s=this.a,r=s.Q +s=s.y +r.sb9(0,a.zR(b,B.e.aF(s.gj(s)*255),this.b,r.a))}, +$S:14} +A.aky.prototype={ +a4T(a){this.ab()}, +zJ(a,b,c,d){var s,r,q=this,p=q.y +switch(p.gbM(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.cRv(p,s.b.ah(0,r.gj(r)),c) +r=q.as +r.sb9(0,a.zS(!0,b,p,new A.cnP(q,d),r.a))}, +hC(a){var s,r,q,p +if(a.r===this.r){s=a.x +r=this.x +if(J.q(s.gj(s),r.gj(r))){s=a.w +r=s.a +q=this.w +p=q.a +p=!J.q(s.b.ah(0,r.gj(r)),q.b.ah(0,p.gj(p))) +s=p}else s=!0}else s=!0 +return s}, +m(){var s,r=this +r.Q.sb9(0,null) +r.as.sb9(0,null) +s=r.gip() +r.w.a.O(0,s) +r.x.O(0,s) +r.y.fW(r.gKB()) +r.f4()}} +A.cnP.prototype={ +$2(a,b){var s=this.a,r=s.Q +s=s.x +r.sb9(0,a.zR(b,B.e.aF(s.gj(s)*255),this.b,r.a))}, +$S:14} +A.aST.prototype={} +A.alH.prototype={ +m(){var s=this.zc$ +s.k3$=$.ae() +s.k2$=0 +this.ap()}} +A.alI.prototype={ +m(){var s=this.zc$ +s.k3$=$.ae() +s.k2$=0 +this.ap()}} +A.TC.prototype={} +A.aRA.prototype={ +aR(a){var s=new A.aV_(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.G=this.e}} +A.aV_.prototype={ +cX(a){var s=this.k1$ +if(s==null)return B.A +return s.jr(a)}, +bJ(){var s,r=this,q=r.k1$ +if(q==null)r.id=B.A +else{s=t.k +q.d_(s.a(A.H.prototype.gZ.call(r)),!0) +r.id=s.a(A.H.prototype.gZ.call(r)).bd(r.k1$.gu(0)) +s=r.k1$.b +s.toString +t.r.a(s).a=B.h}q=r.gu(0) +r.G.$1(q)}} +A.a7d.prototype={ +J(){var s=this.$ti +return new A.TD(B.f,s.h("@<1>").a1(s).h("TD<1,2>"))}} +A.TD.prototype={ +Xd(){var s,r=this.c +r.toString +s=this.a.d +A.cN(r,!1).dB(s) +this.a.toString}, +q(a){var s,r,q,p,o,n,m=null +A.G(a) +s=A.cL_(a) +r=A.cOM(a) +q=A.b9(t.ui) +this.a.toString +p=s.r +if(p==null)p=m +else{p=p.a5(q) +p.toString}if(p==null){q=r.gpu().a5(q) +q.toString +o=q}else o=p +q=this.a +p=q.r +n=A.BQ(A.bB(B.fn,q.Q,B.i,m,new A.aG(0,1/0,p,1/0),m,m,m,m,m,B.ni,m,m,m),B.H,B.K,o) +q=A.ly(!1,m,!0,A.d9h(n,B.L,m,o),m,!0,m,m,m,m,m,new A.aOd(m,s.x),m,m,m,m,m,m,this.gN7(),m,m,m,m,m,m,m) +return new A.zo(new A.bX(A.ci(m,m,m,m,m,!0,m,m,m,m,!0,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m),!1,!1,!1,!1,q,m),m)}} +A.agM.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=A.a([],t.p) +A.G(a) +s=A.cL_(a) +r=A.cOM(a) +for(q=h.c,p=q.aS,o=0;o<2;o=n){n=o+1 +m=n*0.2857142857142857 +l=A.Z(m+0.42857142857142855,0,1) +k=q.k2 +j=new A.I6(k,new A.eG(m,l,B.H),g) +j.Ul(k.gbM(0)) +k.cY() +k=k.f0$ +k.b=!0 +k.a.push(j.gUk()) +i=p[o] +f.push(new A.aRA(new A.c9Y(h,o),new A.dg(j,!1,i,g),g))}p=A.uq(A.cxP(f),B.k,g,B.m,g,B.c5,B.D_,g,g,g,!1,B.v) +p=A.bnN(new A.bX(A.ci(g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,h.d,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,!0,g,g,g,g,g,g,g,g,g),!1,!0,!1,!1,p,g),56) +q=q.k2 +q.toString +return A.hC(q,new A.c9Z(h,new A.eA(B.aAr),s,r,new A.eA(new A.eG(0,0.2857142857142857,B.H)),new A.eA(new A.eG(0,0.5714285714285714,B.H))),new A.fI(B.a2Y,p,g))}} +A.c9Y.prototype={ +$1(a){this.a.c.cZ[this.b]=a}, +$S:266} +A.c9Z.prototype={ +$2(a,b){var s,r,q,p,o,n=this,m=null,l=n.b,k=n.a,j=k.c,i=j.k2 +i.toString +s=n.c +r=s.b +if(r==null){r=n.d +r=r.gdg(r)}q=s.a +if(q==null){q=n.d +q=q.ga6(q)}p=s.c +if(p==null){p=n.d.c +p.toString}o=s.d +if(o==null){o=n.d +o=o.gc0(o)}s=s.e +if(s==null)s=n.d.gc9() +return new A.dg(new A.aB(i,l,A.z(l).h("aB")),!1,A.fX(B.K,!0,m,new A.fl(B.zl,n.e.ah(0,j.k2.gj(0)),n.f.ah(0,j.k2.gj(0)),b,m),k.f,q,p,m,o,r,s,m,B.fZ),m)}, +$S:533} +A.c9W.prototype={ +A8(a){return A.nT(new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d))).om(B.cq.S(0,this.f))}, +Aa(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.j(o,h)}, +beg(a,b){var s,r,q,p,o,n,m,l,k,j=B.b.ga2(a) +for(s=a.length,r=b.a,q=b.b,p=0;p"))),null),a,!0,!0,!0,!0)}, +gu1(){return this.z_}} +A.c9X.prototype={ +$1(a){var s,r,q=this,p=q.b,o=q.a.a,n=a.a0(t.I) +n.toString +s=q.c +r=A.cwm(s) +return new A.q1(new A.c9W(p.ac,p.cZ,o,n.w,s.r,A.hh(r,r.$ti.h("B.E"))),new A.xc(p.hw.a,q.d,null),null)}, +$S:534} +A.aOd.prototype={ +a5(a){var s=A.d2(this.a,a,t.GE) +if(s==null)s=null +return s==null?B.eu.a5(a):s}, +gyE(){return"MaterialStateMouseCursor(PopupMenuItemState)"}} +A.c9U.prototype={ +gaq9(){var s,r=this,q=r.at +if(q===$){s=A.G(r.as) +r.at!==$&&A.a_() +r.at=s +q=s}return q}, +gKG(){var s,r=this,q=r.ax +if(q===$){s=r.gaq9() +r.ax!==$&&A.a_() +q=r.ax=s.ay}return q}, +gpu(){return new A.by(new A.c9V(this),t.ns)}, +ga6(a){return this.gKG().cy}, +gc0(a){var s=this.gKG().fy +return s==null?B.B:s}, +gc9(){var s=this.gKG(),r=s.k3 +return r==null?s.b:r}, +gdg(a){return B.pR}} +A.c9V.prototype={ +$1(a){var s,r=this.a,q=r.ay +if(q===$){s=r.gaq9() +r.ay!==$&&A.a_() +q=r.ay=s.p3}s=q.as +s.toString +if(a.p(0,B.F)){r=r.gKG().db +return s.yg(A.Y(97,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255))}return s.yg(r.gKG().db)}, +$S:79} +A.Lf.prototype={ +gv(a){var s=this +return A.ad(s.ga6(s),s.gdg(s),s.c,s.gc0(s),s.gc9(),s.ghp(),s.gpu(),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.az(b)!==A.I(s))return!1 +return b instanceof A.Lf&&J.q(b.ga6(b),s.ga6(s))&&J.q(b.gdg(b),s.gdg(s))&&b.c==s.c&&J.q(b.gc0(b),s.gc0(s))&&J.q(b.gc9(),s.gc9())&&J.q(b.ghp(),s.ghp())&&b.gpu()==s.gpu()&&b.w==s.w&&J.q(b.z,s.z)&&b.Q==s.Q}, +ga6(a){return this.a}, +gdg(a){return this.b}, +gc0(a){return this.d}, +gc9(){return this.e}, +ghp(){return this.f}, +gpu(){return this.r}} +A.aTK.prototype={} +A.aKl.prototype={ +H(){return"_ActivityIndicatorType."+this.b}} +A.aC_.prototype={ +a3j(a,b){var s=this.f +s=s==null?null:s.gj(s) +if(s==null)s=this.e +if(s==null)s=A.byn(a).a +if(s==null)s=b +return s==null?A.G(a).ay.b:s}, +b2H(a){return this.a3j(a,null)}, +a1F(a,b){var s=null,r=this.w,q=this.c +if(q!=null)r=""+B.e.aF(q*100)+"%" +return new A.bX(A.ci(s,s,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.aQY.prototype={ +aI(a,b){var s,r,q,p,o,n,m=this,l=$.ar().aP() +l.sa6(0,m.b) +l.sbN(0,B.aH) +l.sa6(0,m.c) +s=new A.c3P(m,b,a,l) +r=m.d +q=b.a +if(r!=null)s.$2(0,A.Z(r,0,1)*q) +else{r=m.e +p=q*B.aAC.ah(0,r) +o=B.aAt.ah(0,r) +n=q*B.aAl.ah(0,r) +r=B.aAA.ah(0,r) +s.$2(p,q*o-p) +s.$2(n,q*r-n)}}, +hC(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.c3P.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.W(r,0,r+b,0+n.b.b) +s=s.r +p=n.c +o=n.d +if(!s.l(0,B.bh))p.dh(s.hq(q),o) +else p.fs(q,o)}, +$S:535} +A.E_.prototype={ +J(){return new A.aQZ(null,null,B.f)}} +A.aQZ.prototype={ +a8(){var s,r=this +r.an() +s=A.bQ(null,B.u_,null,1,null,r) +r.d=s +if(r.a.c==null)s.OC(0)}, +b1(a){var s,r,q=this +q.bc(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.OC(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.e3(0)}}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aTy()}, +aj2(a,b,c){var s,r,q,p,o,n,m,l=this,k=null +A.G(a) +s=new A.c3O(a,k,k,k,k,k) +r=A.byn(a) +q=l.a +q.toString +q=q.d +p=q==null?r.b:q +if(p==null)p=s.gNG() +l.a.toString +o=r.c +if(o==null)o=s.gNF() +q=l.a +q.toString +n=!B.bh.l(0,B.bh)&&l.a.c==null?B.dL:B.i +m=l.a +m.toString +return q.a1F(A.bB(k,A.ih(k,k,k,new A.aQY(p,m.a3j(a,s.ga6(0)),l.a.c,b,c,B.bh,k),B.A),n,k,new A.aG(1/0,1/0,o,1/0),new A.lJ(p,k,k,k,new A.fn(B.bh,B.G)),k,k,k,k,k,k,k,k),a)}, +q(a){var s,r=this,q=a.a0(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.aj2(a,q,s)}q=r.d +q===$&&A.b() +return A.hC(q,new A.c3Q(r,s),null)}} +A.c3Q.prototype={ +$2(a,b){var s=this.a,r=s.d +r===$&&A.b() +r=r.x +r===$&&A.b() +return s.aj2(a,r,this.b)}, +$S:55} +A.X2.prototype={ +aI(a,b){var s,r,q,p,o,n,m=this,l=$.ar(),k=l.aP() +k.sa6(0,m.c) +s=m.x +k.se4(s) +k.sbN(0,B.a7) +r=s/2*-m.y +q=r*2 +p=b.a-q +q=b.b-q +o=m.b +if(o!=null){n=l.aP() +n.sa6(0,o) +n.se4(s) +n.sbN(0,B.a7) +a.MC(new A.W(r,r,r+p,r+q),0,6.282185307179586,!1,n)}if(m.d==null&&!0)k.str(B.xy) +else k.str(B.eN) +a.MC(new A.W(r,r,r+p,r+q),m.z,m.Q,!1,k)}, +hC(a){var s=this +return!J.q(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.p2.prototype={ +gcv(a){return this.d}, +J(){return new A.ado(null,null,B.f)}} +A.ado.prototype={ +a8(){var s=this +s.an() +s.d=A.bQ(null,B.ahR,null,1,null,s) +if(s.gb7().c==null)s.d.OC(0)}, +b1(a){var s,r=this +r.bc(a) +if(r.gb7().c==null){s=r.d +s===$&&A.b() +s=s.r +s=!(s!=null&&s.a!=null)}else s=!1 +if(s){s=r.d +s===$&&A.b() +s.OC(0)}else{if(r.gb7().c!=null){s=r.d +s===$&&A.b() +s=s.r +s=s!=null&&s.a!=null}else s=!1 +if(s){s=r.d +s===$&&A.b() +s.e3(0)}}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aTc()}, +Jy(a,b,c,d,e){var s,r,q,p,o,n=this,m=null +A.G(a) +s=n.gb7() +s.gcv(s) +s=A.byn(a) +r=n.gb7() +q=n.gb7().a3j(a,new A.bUh(a,m,m,m,m,m).ga6(0)) +p=n.gb7() +o=n.gb7() +return r.a1F(A.bB(m,A.ih(m,m,m,A.dhB(s.d,b,d,e,n.gb7().Q,n.gb7().as,o.z,c,p.c,q),B.A),B.i,m,B.a3_,m,m,m,m,m,m,m,m,m),a)}, +Ri(){var s=this.d +s===$&&A.b() +return A.hC(s,new A.bUi(this),null)}, +q(a){var s,r=this +switch(r.gb7().y.a){case 0:if(r.gb7().c!=null)return r.Jy(a,0,0,0,0) +return r.Ri() +case 1:switch(A.G(a).w.a){case 2:case 4:s=r.gb7() +return A.cGf(s.gcv(s),r.gb7().a) +case 0:case 1:case 3:case 5:if(r.gb7().c!=null)return r.Jy(a,0,0,0,0) +return r.Ri()}break}}} +A.bUi.prototype={ +$2(a,b){var s=this.a,r=$.cD7(),q=s.d +q===$&&A.b() +return s.Jy(a,r.ah(0,q.gj(0)),$.cD8().ah(0,s.d.gj(0)),$.cD5().ah(0,s.d.gj(0)),$.cD6().ah(0,s.d.gj(0)))}, +$S:55} +A.aUG.prototype={ +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +g.aRy(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=$.ar() +i=j.dc() +i.fV(0,o+q*l,o+p*l) +i.ds(0,o+q*k,o+p*k) +i.ds(0,o+q*o+-p*n*2*s,o+p*o+q*n*2*s) +i.aO(0) +h=j.aP() +h.sa6(0,g.c) +h.se4(n) +h.sbN(0,B.aH) +a.ey(i,h)}}} +A.a7N.prototype={ +gcv(a){return A.p2.prototype.gcv.call(this,0)}, +J(){return new A.aUH(null,null,B.f)}} +A.aUH.prototype={ +gb7(){return t.nP.a(A.T.prototype.gb7.call(this))}, +q(a){var s,r,q=this,p=t.nP.a(A.T.prototype.gb7.call(q)).c +if(p!=null){q.Q=p +s=q.d +s===$&&A.b() +r=q.y +if(r===$){r!==$&&A.a_() +r=q.y=new A.eA(B.Et)}s.sj(0,r.ah(0,p)*0.000225022502250225)}return q.Ri()}, +Ri(){var s=this.d +s===$&&A.b() +return A.hC(s,new A.cbD(this),null)}, +Jy(a,b,c,a0,a1){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=t.nP,f=g.a(A.T.prototype.gb7.call(i)).c,e=f==null,d=e?0:B.Et.ah(0,f) +if(e&&i.Q==null)s=0 +else{r=i.z +if(r===$){q=t.Y +p=t.Ns +o=A.bNB(A.a([new A.ld(new A.aP(-0.1,-0.2,q),0.33,p),new A.ld(new A.aP(-0.2,1.35,q),0.6699999999999999,p)],t.x0),t.i) +i.z!==$&&A.a_() +i.z=o +r=o}if(e){e=i.Q +e.toString}else e=f +s=3.141592653589793*r.ah(0,e)}n=g.a(A.T.prototype.gb7.call(i)).b2H(a) +e=n.gj(n) +n=A.Y(255,n.gj(n)>>>16&255,n.gj(n)>>>8&255,n.gj(n)&255) +q=g.a(A.T.prototype.gb7.call(i)) +A.p2.prototype.gcv.call(q,0) +m=A.byn(a).e +if(m==null)m=A.G(a).at +q=g.a(A.T.prototype.gb7.call(i)) +g.a(A.T.prototype.gb7.call(i)) +g.a(A.T.prototype.gb7.call(i)) +g.a(A.T.prototype.gb7.call(i)) +p=g.a(A.T.prototype.gb7.call(i)) +l=g.a(A.T.prototype.gb7.call(i)) +g=g.a(A.T.prototype.gb7.call(i)) +k=c*3/2*3.141592653589793 +j=Math.max(b*3/2*3.141592653589793-k,0.001) +return q.a1F(A.bB(h,A.fX(B.K,!0,h,new A.aA(B.u4,A.mj(A.aGX(s,A.ih(h,h,h,new A.aUG(d,h,n,h,b,c,a0,a1,p.z,l.Q,-1.5707963267948966+k+a1*3.141592653589793*2+a0*0.5*3.141592653589793,j,g.as,h),B.A)),(e>>>24&255)/255),h),B.i,m,2,h,h,h,h,h,B.Ri),B.i,h,h,h,h,41,h,B.iV,h,h,h,41),a)}} +A.cbD.prototype={ +$2(a,b){var s=this.a,r=$.cD7(),q=s.d +q===$&&A.b() +return s.Jy(a,1.05*r.ah(0,q.gj(0)),$.cD8().ah(0,s.d.gj(0)),$.cD5().ah(0,s.d.gj(0)),$.cD6().ah(0,s.d.gj(0)))}, +$S:55} +A.bUh.prototype={ +ga6(a){var s,r=this,q=r.r +if(q===$){s=A.G(r.f) +r.r!==$&&A.a_() +q=r.r=s.ay}return q.b}} +A.c3O.prototype={ +gaqe(){var s,r=this,q=r.r +if(q===$){s=A.G(r.f) +r.r!==$&&A.a_() +q=r.r=s.ay}return q}, +ga6(a){return this.gaqe().b}, +gNG(){var s=this.gaqe(),r=s.dx +return r==null?s.cy:r}, +gNF(){return 4}} +A.akK.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.al4.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.TL.prototype={ +gv(a){var s=this +return A.ad(s.ga6(s),s.gNG(),s.gNF(),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.az(b)!==A.I(s))return!1 +return b instanceof A.TL&&J.q(b.ga6(b),s.ga6(s))&&J.q(b.gNG(),s.gNG())&&b.gNF()==s.gNF()&&J.q(b.d,s.d)&&J.q(b.e,s.e)}, +ga6(a){return this.a}, +gNG(){return this.b}, +gNF(){return this.c}} +A.aTS.prototype={} +A.a7w.prototype={ +gv(a){var s=this +return A.ad(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,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.az(b)!==A.I(r))return!1 +if(b instanceof A.a7w)if(b.b==r.b)if(b.c==r.c)if(b.d==r.d)s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}} +A.aU1.prototype={} +A.a7C.prototype={ +J(){return new A.agZ(new A.wf(),null,null,B.f)}} +A.agZ.prototype={ +bf3(a){if(a!==this.as)this.C(new A.cbf(this,a))}, +a8(){var s=this,r=null +s.an() +s.d=A.bQ(r,B.b1,r,1,r,s) +s.e=A.bQ(r,B.b1,r,1,r,s) +s.a.toString +s.f=A.bQ(r,B.hw,r,1,1,s) +s.r=A.bQ(r,B.w,r,1,s.Uh(s.a.c.a),s) +s.w=A.bQ(r,B.w,r,1,s.Uh(s.a.c.b),s)}, +b1(a){this.bc(a) +if(J.q(a.d,this.a.d))return +this.a.toString}, +m(){var s=this,r=s.x +if(r!=null)r.ao(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.w +r===$&&A.b() +r.m() +r=s.ax +if(r!=null)r.hB(0) +r=s.ax +if(r!=null)r.m() +s.ax=null +s.aTF()}, +beU(a){var s=this.b8w(a) +if(!s.l(0,this.a.c))this.a.d.$1(s)}, +b8w(a){var s=this.a.w,r=A.av(0,s,a.a) +r.toString +s=A.av(0,s,a.b) +s.toString +return new A.kn(r,s)}, +Uh(a){var s=this.a.w +return s>0?(a-0)/(s-0):0}, +b_4(a,b,c,d,e,f){var s,r,q=Math.max(d.a,48)/2,p=b.a,o=e.a,n=Math.abs(c-p)*o0 +break +case 0:s=f>0 +r=f<0 +break +default:s=null +r=null}if(s)return B.cS +if(r)return B.e3}else{if(cm||l)return B.e3}return null}, +q(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=this,a6=null,a7={},a8=A.G(b1),a9=a7.a=A.cz3(b1),b0=A.b9(t.ui) +a5.a.toString +if(a5.as)b0.B(0,B.P) +if(a5.Q)b0.B(0,B.hT) +s=a9.fy +if(s==null)s=B.a5f +r=a9.ay +if(r==null){q=a8.ay +p=q.db +q=q.cy +r=A.PO(A.Y(153,p.gj(p)>>>16&255,p.gj(p)>>>8&255,p.gj(p)&255),A.Y(B.e.aF(229.5),q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255))}q=a9.a +if(q==null)q=4 +a5.a.toString +p=a9.b +if(p==null)p=a8.ay.b +o=a9.c +if(o==null){o=a8.ay.b +o=A.Y(61,o.gj(o)>>>16&255,o.gj(o)>>>8&255,o.gj(o)&255)}n=a7.a.e +if(n==null){n=a8.ay.db +n=A.Y(82,n.gj(n)>>>16&255,n.gj(n)>>>8&255,n.gj(n)&255)}m=a7.a.r +if(m==null){m=a8.ay.db +m=A.Y(31,m.gj(m)>>>16&255,m.gj(m)>>>8&255,m.gj(m)&255)}a5.a.toString +l=a7.a.w +if(l==null){l=a8.ay.c +l=A.Y(138,l.gj(l)>>>16&255,l.gj(l)>>>8&255,l.gj(l)&255)}a5.a.toString +k=a7.a.x +if(k==null){k=a8.ay.b +k=A.Y(138,k.gj(k)>>>16&255,k.gj(k)>>>8&255,k.gj(k)&255)}j=a7.a.y +if(j==null){j=a8.ay.c +j=A.Y(31,j.gj(j)>>>16&255,j.gj(j)>>>8&255,j.gj(j)&255)}i=a7.a.z +if(i==null){i=a8.ay.db +i=A.Y(31,i.gj(i)>>>16&255,i.gj(i)>>>8&255,i.gj(i)&255)}a5.a.toString +h=a7.a +g=h.Q +if(g==null)g=a8.ay.b +f=h.as +if(f==null)f=a8.ay.cy +h=h.at +if(h==null){h=a8.ay +e=h.db +h=A.PO(A.Y(97,e.gj(e)>>>16&255,e.gj(e)>>>8&255,e.gj(e)&255),h.cy)}e=new A.cbg(a7,a5,b0,a8).$0() +d=a7.a +c=d.fx +if(c==null)c=B.a5k +b=d.dy +if(b==null)b=B.a5i +a=d.fr +if(a==null)a=B.a5h +a0=d.CW +if(a0==null)a0=B.AC +a1=d.go +if(a1==null)a1=B.XW +d=d.id +if(d==null)d=a8.p3.y.bu(a8.ay.c) +a2=a7.a +a3=a2.k1 +if(a3==null)a3=8 +a2=a2.k2 +a7.a=a9.bsp(l,p,j,n,i,m,h,k,o,a3,f,e,a0,a,b,c,s,a1,g,a2==null?a5.gb_3():a2,q,r,d) +a5.a.toString +a4=B.eu.a5(b0) +b0=a5.a.c +q=a5.Uh(b0.a) +b0=a5.Uh(b0.b) +p=a5.a +o=p.x +p=p.y +a7=a7.a +n=A.bC(b1,a6,t.l).w.gdZ().gir() +m=new A.cbh(b1).$0() +l=a5.a.w +l=l>0?a5.gbeT():a6 +return A.aui(a6,!1,new A.yj(a5.at,new A.aU5(new A.kn(q,b0),o,p,a7,n,m,l,a6,a6,a6,a5,a5.as,a6),a6),!0,a6,!1,a4,a6,a6,a5.gbf2(),a6)}, +a0p(){var s,r,q=this +if(q.ax==null){q.ax=A.rK(new A.cbi(q),!1,!1,!1) +s=q.c +s.toString +q.a.toString +s=A.a5d(s,t.N1) +s.toString +r=q.ax +r.toString +s.uz(0,r)}}} +A.cbf.prototype={ +$0(){this.a.as=this.b}, +$S:0} +A.cbg.prototype={ +$0(){var s,r=this +r.b.a.toString +s=A.d2(r.a.a.ax,r.c,t._) +if(s==null){s=r.d.ay.b +s=A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return s}, +$S:183} +A.cbh.prototype={ +$0(){return A.bC(this.a,B.di,t.l).w.a}, +$S:184} +A.cbi.prototype={ +$1(a){var s=this.a +return A.bao(new A.aZt(s,null),s.at,B.h,!0)}, +$S:437} +A.aU5.prototype={ +aR(a){var s,r=this,q=A.G(a),p=a.a0(t.I) +p.toString +s=A.G(a) +return A.dj4(r.e,A.bC(a,B.is,t.l).w.CW,r.ax,r.f,r.Q,r.z,r.y,s.w,r.x,r.as,r.r,r.at,p.w,r.w,q,r.d)}, +b_(a,b){var s,r,q=this +b.sMB(q.e) +b.sbm(0,q.d) +b.sbzJ(0,q.f) +b.sa0s(q.r) +b.snm(A.G(a)) +b.sir(q.w) +b.sa00(q.x) +b.sjo(q.y) +b.iQ=q.z +b.eT=q.Q +s=a.a0(t.I) +s.toString +b.sd5(s.w) +b.sa07(q.as) +b.sacN(0,A.G(a).w) +b.sab7(q.ax) +s=A.bC(a,B.is,t.l).w.CW +r=b.aW +r===$&&A.b() +r.b=s +r=b.aT +r===$&&A.b() +r.b=s}} +A.ahM.prototype={ +aVr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,a0,a1){var s,r,q,p=this,o=null +p.rf(B.cS) +p.rf(B.e3) +s=new A.Ri(A.N(t.S,t.EG)) +r=A.Rt(o,o,o) +r.w=s +r.ch=p.gbeZ() +r.CW=p.gbf0() +r.cx=p.gbeX() +r.cy=p.gbeV() +r.b=b +p.aW=r +r=A.t5(o,o,o) +r.w=s +r.be=p.gbf4() +r.bj=p.gbf6() +r.b=b +p.aT=r +r=p.N +q=r.d +q===$&&A.b() +p.a4=A.cI(B.aa,q,o) +q=r.e +q===$&&A.b() +q=A.cI(B.aa,q,o) +q.a.je(new A.cci(p)) +p.ag=q +r=r.f +r===$&&A.b() +p.aq=A.cI(B.cN,r,o)}, +ga5j(){var s=this.gaqm() +return new A.O(s,new A.ccg(),A.X(s).h("O<1,U>")).i6(0,B.iC)}, +ga5i(){var s=this.gaqm() +return new A.O(s,new A.ccf(),A.X(s).h("O<1,U>")).i6(0,B.iC)}, +gaqm(){var s,r=this.dP +r.CW.toString +r.fr.toString +s=this.fA +return A.a([new A.V(48,48),new A.V(20,20),r.dy.Ab(s!=null,r)],t.X4)}, +ga5k(){var s=this.dP +return s.fx.PO(!1,this,s)}, +gSO(){var s,r=this.bk +if(r>0)r=0 +else{r=this.dP.k1 +r.toString +s=this.ga5k() +s=r/(s.c-s.a) +r=s}return r}, +sbm(a,b){var s,r,q,p,o,n=this,m=n.bk,l=m>0?n.JM(b):b +if(l.l(0,n.dA))return +n.dA=l +m=n.bk +s=n.N +r=l.a +q=s.r +if(m>0){q===$&&A.b() +m=q.x +m===$&&A.b() +p=Math.abs(r-m) +q.e=p!==0?new A.aU(B.e.aF(75e3*(1/p))):B.w +q.z=B.b_ +q.kn(r,B.cN,null) +m=n.dA.b +s=s.w +s===$&&A.b() +r=s.x +r===$&&A.b() +o=Math.abs(m-r) +s.e=o!==0?new A.aU(B.e.aF(75e3*(1/o))):B.w +s.z=B.b_ +s.kn(m,B.cN,null)}else{q===$&&A.b() +q.sj(0,r) +m=s.w +m===$&&A.b() +m.sj(0,l.b)}n.cs()}, +sacN(a,b){if(this.e8===b)return +this.e8=b +this.cs()}, +sa07(a){return}, +sMB(a){if(a===this.bk)return +this.bk=a +this.aV()}, +sbzJ(a,b){var s=this +if(b.l(0,s.er))return +s.er=b +s.rf(B.cS) +s.rf(B.e3)}, +sa0s(a){if(a.l(0,this.dP))return +this.dP=a +this.aV()}, +snm(a){if(a.l(0,this.eX))return +this.eX=a +this.aV()}, +sir(a){var s=this +if(a===s.dr)return +s.dr=a +s.rf(B.cS) +s.rf(B.e3)}, +sa00(a){if(a.l(0,this.dQ))return +this.dQ=a +this.aV()}, +sjo(a){var s,r=this +if(J.q(a,r.fA))return +s=r.fA +r.fA=a +if(s!=null!==(a!=null)){r.aV() +r.cs()}}, +sd5(a){var s=this +if(a===s.fG)return +s.fG=a +s.rf(B.cS) +s.rf(B.e3)}, +sab7(a){if(a===this.mf)return +this.mf=a +this.a5l(a)}, +sbyh(a){var s=this +if(a===s.dF)return +s.dF=a +s.a5l(s.mf)}, +sbyg(a){var s=this +if(a===s.hi)return +s.hi=a +s.a5l(s.mf)}, +a5l(a){var s,r +if(a)s=this.dF||this.hi +else s=!1 +r=this.N.d +if(s){r===$&&A.b() +r.cM(0)}else{r===$&&A.b() +r.eI(0)}}, +gtp(){switch(this.dP.go.a){case 0:var s=this.bk +return s>0 +case 1:s=this.bk +return s<=0 +case 2:return!0 +case 3:return!1}}, +gasW(){this.dP.fr.toString +return new A.V(20,20)}, +rf(a){var s,r,q=this,p=null,o=q.er +switch(a.a){case 0:s=o.a +r=q.aJ +break +case 1:s=o.b +r=q.U +break +default:r=p +s=r}r.sce(0,A.cy(p,p,p,q.dP.id,s)) +r.sd5(q.fG) +r.sdZ(new A.li(q.dr)) +r.qt() +q.a9()}, +Ea(){var s=this +s.QQ() +s.aJ.a9() +s.U.a9() +s.rf(B.cS) +s.rf(B.e3)}, +aA(a){var s,r,q,p=this +p.aTL(a) +s=p.a4 +s===$&&A.b() +r=p.gfk() +s.a.a3(0,r) +s=p.ag +s===$&&A.b() +s.a.a3(0,r) +s=p.aq +s===$&&A.b() +s.a.a3(0,r) +s=p.N +q=s.r +q===$&&A.b() +q.cY() +q=q.em$ +q.b=!0 +q.a.push(r) +s=s.w +s===$&&A.b() +s.cY() +s=s.em$ +s.b=!0 +s.a.push(r)}, +ar(a){var s,r,q=this,p=q.a4 +p===$&&A.b() +s=q.gfk() +p.a.O(0,s) +p=q.ag +p===$&&A.b() +p.a.O(0,s) +p=q.aq +p===$&&A.b() +p.a.O(0,s) +p=q.N +r=p.r +r===$&&A.b() +r.O(0,s) +p=p.w +p===$&&A.b() +p.O(0,s) +q.aTM(0)}, +m(){var s=this,r=s.aW +r===$&&A.b() +r.p1.V(0) +r.lW() +r=s.aT +r===$&&A.b() +r.q1() +r.lW() +s.aJ.m() +s.U.m() +s.ig()}, +beS(a){switch(this.fG.a){case 0:return 1-a +case 1:return a}}, +amI(a){var s=this,r=s.hZ(a),q=s.ga5k(),p=s.ga5k() +return s.beS((r.a-q.a)/(p.c-p.a))}, +a5g(a){var s=A.Z(a,0,1),r=this.bk +return r>0?B.e.aF(s*r)/r:s}, +JM(a){return new A.kn(this.a5g(a.a),this.a5g(a.b))}, +aqn(a){var s,r,q,p,o,n=this +if(n.aU)return +s=n.N +s.a0p() +r=A.Z(n.amI(a),0,1) +q=n.dP.k2 +q.toString +q=q.$6(n.fG,n.dA,r,n.gasW(),n.gu(0),0) +n.D=q +if(q!=null){n.aU=!0 +p=n.JM(n.dA) +q=n.D +if(q===B.cS)n.ck=new A.kn(r,p.b) +else if(q===B.e3)n.ck=new A.kn(p.a,r) +q.toString +n.rf(q) +q=n.iQ +if(q!=null)q.$1(p) +q=n.fA +q.toString +o=n.ck +o===$&&A.b() +q.$1(n.JM(o)) +o=s.d +o===$&&A.b() +o.cM(0) +if(n.gtp()){q=s.e +q===$&&A.b() +q.cM(0) +q=s.x +if(q!=null)q.ao(0) +s.x=A.d3(new A.aU(5e5),new A.cch(n))}}}, +bf1(a){var s,r,q,p,o,n=this,m=n.N +if(m.c==null)return +s=n.amI(a.d) +if(n.D==null){r=n.dP.k2 +r.toString +r=r.$6(n.fG,n.dA,s,n.gasW(),n.gu(0),a.b.a) +n.D=r +if(r!=null){n.aU=!0 +r=m.d +r===$&&A.b() +r.cM(0) +if(n.gtp()){m=m.e +m===$&&A.b() +m.cM(0)}q=!0}else q=!1}else q=!1 +if(n.fA!=null&&n.D!=null){p=n.JM(n.dA) +m=n.iQ +if(m!=null&&q)m.$1(p) +o=n.a5g(s) +m=n.D +if(m===B.cS){m=p.b +n.ck=new A.kn(Math.min(o,m-n.gSO()),m)}else if(m===B.e3){m=p.a +n.ck=new A.kn(m,Math.max(o,m+n.gSO()))}m=n.fA +m.toString +r=n.ck +r===$&&A.b() +m.$1(r)}}, +a5h(){var s,r,q=this,p=q.N +if(p.c==null)return +if(q.gtp()&&p.x==null){s=p.e +s===$&&A.b() +s.eI(0)}if(q.aU&&p.c!=null&&q.D!=null){s=q.ck +s===$&&A.b() +r=q.JM(s) +s=q.eT +if(s!=null)s.$1(r) +q.aU=!1}p=p.d +p===$&&A.b() +p.eI(0)}, +bf_(a){this.aqn(a.b)}, +beY(a){this.a5h()}, +beW(){this.a5h()}, +bf5(a){this.aqn(a.a)}, +bf7(a){this.a5h()}, +kw(a){return!0}, +n8(a,b){var s,r=this +if(t.pY.b(a)&&r.fA!=null){s=r.aW +s===$&&A.b() +s.m9(a) +s=r.aT +s===$&&A.b() +s.m9(a)}if(r.fA!=null){s=r.f1 +if(s!=null)r.sbyh(s.p(0,a.gev())) +s=r.ez +if(s!=null)r.sbyg(s.p(0,a.gev()))}}, +bo(a){return 144+this.ga5j()}, +bb(a){return 144+this.ga5j()}, +bh(a){var s=this.dP.a +s.toString +return Math.max(s,this.ga5i())}, +bi(a){var s=this.dP.a +s.toString +return Math.max(s,this.ga5i())}, +gka(){return!0}, +cX(a){var s,r=a.b +r=r<1/0?r:144+this.ga5j() +s=a.d +if(!(s<1/0)){s=this.dP.a +s.toString +s=Math.max(s,this.ga5i())}return new A.V(r,s)}, +aI(c1,c2){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={},b9=b7.N,c0=b9.r +c0===$&&A.b() +c0=c0.x +c0===$&&A.b() +s=b9.w +s===$&&A.b() +s=s.x +s===$&&A.b() +switch(b7.fG.a){case 0:r=1-c0 +q=1-s +break +case 1:q=s +r=c0 +break +default:r=null +q=null}p=b7.dP +o=b7.bk +n=p.fx.PP(o>0,c2,b7,p) +p=n.a +o=n.c-p +b7.eA=new A.j(p+r*o,n.gc1().b) +m=b7.eq=new A.j(p+q*o,n.gc1().b) +l=b7.fA!=null +if(l){b7.dP.CW.toString +b7.f1=A.jQ(b7.eA,24) +b7.ez=A.jQ(m,24)}k=b7.dP +j=k.fx +j.toString +i=b7.aq +i===$&&A.b() +h=b7.fG +g=b7.eA +f=b7.bk +j.bDm(c1,c2,i,m,f>0,l,b7,k,g,h) +m=b7.D +e=m===B.cS +d=m===B.e3 +c=b7.dQ.gad(0)?b7.gu(0):b7.dQ +m=b7.a4 +m===$&&A.b() +if(m.gbM(0)!==B.a6){if(e||b7.dF){m=b7.dP +l=b7.eA +k=b7.a4 +j=b7.aq +i=b7.bk +m.CW.zI(c1,l,k,j,i>0,b7.aJ,b7,c,m,b7.fG,b7.dr,c0)}if(d||b7.hi){m=b7.dP +l=b7.eq +k=b7.a4 +j=b7.aq +i=b7.bk +m.CW.zI(c1,l,k,j,i>0,b7.U,b7,c,m,b7.fG,b7.dr,s)}}m=b7.bk +if(m>0){m=b7.dP +m=m.dy.Ab(b7.fA!=null,m) +b=n.d-n.b +a=o-b +if(a/b7.bk>=3*m.a){a0=n.gc1().b +for(o=b/2,a1=0;m=b7.bk,a1<=m;++a1){l=b7.dP +k=b7.aq +j=b7.fG +i=b7.eA +l.dy.bDo(c1,new A.j(p+a1/m*a+o,a0),k,b7.eq,b7.fA!=null,b7,l,i,j)}}}a2=b7.eq +a3=b7.eA +a4=Math.abs(a2.a-a3.a) +a5=b7.D===B.cS +a6=a5?B.e3:B.cS +a7=a5?B.cS:B.e3 +a8=a5?a2:a3 +if(a5)a2=a3 +a9=a5?b7.U:b7.aJ +b0=a5?b7.aJ:b7.U +if(a5)b1=s +else b1=c0 +if(a5)b2=c0 +else b2=s +if(b7.fA!=null){c0=b7.ag +c0===$&&A.b() +c0=c0.gbM(0)!==B.a6&&b7.gtp() +b3=c0}else b3=!1 +if(b3)b9.z=new A.ccj(b7,a8,a9,a6,b1,c) +c0=b7.dP +s=c0.fr +s.toString +p=b7.ag +p===$&&A.b() +o=b7.aq +m=b7.bk +l=b7.fG +k=a6===B.cS?e:d +s.aCW(c1,a8,p,o,m>0,!1,k,c0,l,a6) +if(b3){c0=b7.dP +s=b7.eA +p=b7.aJ +b4=c0.fy.aeH(b7.ag,s,p,b7,c,b7.dr) +s=b7.dP +c0=b7.eq +o=b7.U +b5=s.fy.aeH(b7.ag,c0,o,b7,c,b7.dr) +b7.dP.fy.toString +c0=B.mF.aeX(p,b7.dr) +b7.dP.fy.toString +b6=b8.a=c0.a/2+B.mF.aeX(o,b7.dr).a/2 +switch(b7.fG.a){case 1:b6+=b4 +b8.a=b6 +b8.a=b6-b5 +break +case 0:b6-=b4 +b8.a=b6 +b8.a=b6+b5 +break}b9.y=new A.cck(b8,b7,a2,a4,b0,a7,b2,c)}b9=b7.dP +c0=b9.fr +c0.toString +s=b7.a4 +p=b7.aq +o=b7.bk +m=b7.fG +l=a7===B.cS?e:d +c0.aCW(c1,a2,s,p,o>0,a4<20,l,b9,m,a7)}, +akq(a,b,c,d,e){var s=A.uo(),r=this.fA +s.dn(B.q1,!0) +s.dn(B.q_,r!=null) +s.bO=this.fG +s.e=!0 +s.dn(B.q3,!0) +if(this.fA!=null){s.sCM(d) +s.sCK(e)}s.ry=new A.et(""+B.e.aF(a*100)+"%",B.aS) +s.e=!0 +s.to=new A.et(""+B.e.aF(b*100)+"%",B.aS) +s.x1=new A.et(""+B.e.aF(c*100)+"%",B.aS) +return s}, +yh(a,b,c){var s,r,q=this,p=q.akq(q.dA.a,q.ganC(),q.gakz(),q.gb7r(),q.gaZV()),o=q.akq(q.dA.b,q.ganB(),q.gaky(),q.gb7p(),q.gaZS()),n=A.oq(q.eA,48,48),m=A.oq(q.eq,48,48) +switch(q.fG.a){case 1:q.G.sdR(0,n) +q.ac.sdR(0,m) +break +case 0:q.G.sdR(0,m) +q.ac.sdR(0,n) +break}q.G.Di(0,p) +q.ac.Di(0,o) +s=q.G +s.toString +r=q.ac +r.toString +a.v3(0,A.a([s,r],t.QF),b)}, +yp(){this.QR() +this.ac=this.G=null}, +ji(a){this.kH(a) +a.a=!0}, +gTe(){var s=this.bk +return 1/s}, +b7s(){var s=this.fA +if(s!=null)s.$1(new A.kn(this.ganC(),this.dA.b))}, +aZW(){var s=this.fA +if(s!=null)s.$1(new A.kn(this.gakz(),this.dA.b))}, +b7q(){var s=this.fA +if(s!=null)s.$1(new A.kn(this.dA.a,this.ganB()))}, +aZT(){var s=this.fA +if(s!=null)s.$1(new A.kn(this.dA.a,this.gaky()))}, +ganC(){var s=this,r=A.pO(B.e.aZ(s.dA.a+s.gTe(),2)) +return r<=s.dA.b-s.gSO()?r:s.dA.a}, +gakz(){return A.Z(this.dA.a-this.gTe(),0,1)}, +ganB(){return A.Z(this.dA.b+this.gTe(),0,1)}, +gaky(){var s=this,r=s.dA.b-s.gTe() +return r>=s.dA.a+s.gSO()?r:s.dA.b}} +A.cci.prototype={ +$1(a){var s,r +if(a===B.a6){s=this.a.N +r=s.ax +if(r!=null)r.hB(0) +r=s.ax +if(r!=null)r.m() +s.ax=null}}, +$S:10} +A.ccg.prototype={ +$1(a){return a.a}, +$S:119} +A.ccf.prototype={ +$1(a){return a.b}, +$S:119} +A.cch.prototype={ +$0(){var s=this.a,r=s.N +r.x=null +if(!s.aU){s=r.e +s===$&&A.b() +s=s.Q +s===$&&A.b() +s=s===B.a9}else s=!1 +if(s){s=r.e +s===$&&A.b() +s.eI(0)}}, +$S:0} +A.ccj.prototype={ +$2(a,b){var s,r,q,p,o,n=this,m=n.a +if(m.y!=null){s=m.dP +r=s.fy +r.toString +q=m.ag +q===$&&A.b() +p=m.aq +p===$&&A.b() +o=m.bk +r.aCY(a,n.b,q,p,o>0,!1,n.c,m,n.f,s,m.fG,m.dr,n.d,n.e)}}, +$S:14} +A.cck.prototype={ +$2(a,b){var s,r,q,p,o,n=this,m=n.b +if(m.y!=null){s=m.dP +r=s.fy +r.toString +q=m.ag +q===$&&A.b() +p=m.aq +p===$&&A.b() +o=m.bk +r.aCY(a,n.c,q,p,o>0,n.d")) +r=$.cXu() +p.w=new A.aB(q.a(s),r,r.$ti.h("aB")) +r=A.bQ(o,o,o,1,o,p) +p.e=r +s=$.cXt() +p.r=new A.aB(q.a(r),s,s.$ti.h("aB"))}, +c5(){this.bhS() +this.dH()}, +b1(a){this.bc(a) +this.a.toString}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.e +s===$&&A.b() +s.m() +this.aRV()}, +bhS(){var s,r,q,p,o,n=this +n.a.toString +s=n.c +s.toString +s=A.G(s) +n.at=s.ay.b +r=n.gal9() +if((r.gj(r)>>>24&255)===0)n.x=new A.ZQ(r,t.ZU) +else{s=n.d +s===$&&A.b() +q=A.Y(0,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +p=A.Y(r.gj(r)>>>24&255,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +o=t.IC.h("eb") +n.x=new A.aB(t.o.a(s),new A.eb(new A.eA(B.Eu),new A.fp(q,p),o),o.h("aB"))}}, +bfr(a){var s,r,q,p,o=this +if(!o.a.uI(a))return!1 +if(!(a instanceof A.UJ&&a.d!=null))s=a instanceof A.no&&a.d!=null&&o.a.at===B.pP +else s=!0 +if(s){s=a.a +r=s.e +if(!(r===B.aU&&Math.max(s.gkR()-s.gfL(),0)===0))s=r===B.aJ&&Math.max(s.gfL()-s.glf(),0)===0 +else s=!0 +s=s&&o.y==null&&o.bfs(0,r)}else s=!1 +if(s){o.C(new A.bA5(o)) +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!=o.Q){s=o.y +if(s===B.it||s===B.iu)o.vs(B.qO)}else if(a instanceof A.no){p=o.y +if(p===B.it||p===B.iu){if(r===B.aJ){r=o.as +r.toString +p=a.e +p.toString +o.as=r-p}else if(r===B.aU){r=o.as +r.toString +p=a.e +p.toString +o.as=r+p}s=s.d +s.toString +o.ajp(s)}if(o.y===B.iu&&a.d==null)o.aqA()}else if(a instanceof A.u9){p=o.y +if(p===B.it||p===B.iu){if(r===B.aJ){r=o.as +r.toString +o.as=r-a.e}else if(r===B.aU){r=o.as +r.toString +o.as=r+a.e}s=s.d +s.toString +o.ajp(s)}}else if(a instanceof A.wG)switch(o.y){case B.iu:s=o.d +s===$&&A.b() +s=s.x +s===$&&A.b() +if(s<1)o.vs(B.qO) +else o.aqA() +break +case B.it:o.vs(B.qO) +break +case B.qO:case B.yT:case B.qN:case B.yS:case null:case void 0:break}return!1}, +b4q(a){if(a.kN$!==0||!a.a)return!1 +if(this.y===B.it){a.c=!1 +return!0}return!1}, +bfs(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.sj(0,0) +s=r.d +s===$&&A.b() +s.sj(0,0) +return!0}, +ajp(a){var s,r,q=this,p=q.as +p.toString +s=p/(a*0.25) +if(q.y===B.iu)s=Math.max(s,0.6666666666666666) +p=q.d +p===$&&A.b() +p.sj(0,A.Z(s,0,1)) +if(q.y===B.it){p=q.x +p===$&&A.b() +p=p.gj(p) +p.toString +p=J.lo(p) +r=q.gal9() +r=(p>>>24&255)===(r.gj(r)>>>24&255) +p=r}else p=!1 +if(p)q.y=B.iu}, +vs(a){return this.b_w(a)}, +b_w(a){var s=0,r=A.p(t.H),q=this,p +var $async$vs=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(A.dm(null,t.H),$async$vs) +case 2:q.C(new A.bA3(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.b_ +s=11 +return A.i(p.kn(1,B.H,B.K),$async$vs) +case 11:s=4 +break +case 6:p=q.d +p===$&&A.b() +p.z=B.b_ +s=12 +return A.i(p.kn(0,B.H,B.K),$async$vs) +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.C(new A.bA4(q))}return A.n(null,r)}}) +return A.o($async$vs,r)}, +aqA(){var s,r=$.at +this.y=B.yS +s=this.d +s===$&&A.b() +s.z=B.b_ +s.kn(0.6666666666666666,B.H,B.cC).bf(new A.bA8(this,new A.aI(new A.ak(r,t.W),t.gR)),t.H)}, +q(a){var s,r,q,p=this,o=null,n=p.a.c,m=p.y,l=m===B.qN||m===B.yT +n=A.a([new A.ff(p.gbfq(),new A.ff(p.gb4p(),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.mo(m,A.a9K(B.v,1,A.bB(B.cW,A.Aa(B.C,A.hC(q,new A.bA9(p,l),o),o,r),B.i,o,o,o,o,o,o,o,new A.af(0,40,0,0),o,o,o),s),o,o,0,0,0,o))}return new A.d4(B.ar,o,B.am,B.k,n,o)}} +A.bA5.prototype={ +$0(){this.a.y=B.it}, +$S:0} +A.bA3.prototype={ +$0(){this.a.y=this.b}, +$S:0} +A.bA4.prototype={ +$0(){this.a.y=null}, +$S:0} +A.bA8.prototype={ +$1(a){var s=this.a +if(s.c!=null&&s.y===B.yS){s.C(new A.bA6(s)) +s.a.bCA().j6(new A.bA7(s,this.b))}}, +$S:33} +A.bA6.prototype={ +$0(){this.a.y=B.qN}, +$S:0} +A.bA7.prototype={ +$0(){var s=this.a +if(s.c!=null&&s.y===B.qN){this.b.fw(0) +s.vs(B.yT)}}, +$S:13} +A.bA9.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=this.a +m.a.toString +s=A.dS(a,B.an,t.v) +s.toString +s=s.gcA() +m.a.toString +if(this.b)r=n +else{r=m.w +r===$&&A.b() +q=r.a +q=r.b.ah(0,q.gj(q)) +r=q}q=m.x +q===$&&A.b() +m.a.toString +p=new A.a7N(B.mi,2.5,0,n,r,n,n,q,s,n,n) +o=A.cGf(n,n) +switch(1){case 1:switch(A.G(a).w.a){case 0:case 1:case 3:case 5:return p +case 2:case 4:return o}break}}, +$S:55} +A.ahe.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.pI.prototype={ +H(){return"_ScaffoldSlot."+this.b}} +A.a8N.prototype={ +J(){var s=null +return new A.a8O(A.wh(t.Np),A.od(s,t.nY),A.od(s,t.BL),s,s,B.f)}} +A.a8O.prototype={ +c5(){var s,r=this,q=r.c +q.toString +s=A.bC(q,B.qK,t.l).w.z +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.ab5(B.YE) +r.y=s +r.dH()}, +a6G(){var s,r,q,p,o,n +for(s=this.d,r=A.dy(s,s.r,A.z(s).c),q=t.Np,p=r.$ti.c;r.t();){o=r.d +if(o==null)o=p.a(o) +n=o.c.wh(q) +if(n==null||!s.p(0,n)){o.au6() +o.atQ()}}}, +b8c(a){var s=a.c.wh(t.Np) +return s==null||!this.d.p(0,s)}, +aMd(a){var s,r,q,p,o,n=this,m=n.w +if(m==null){m=A.bQ("SnackBar",B.dM,null,1,null,n) +m.cY() +q=m.f0$ +q.b=!0 +q.a.push(n.gb6p()) +n.w=m}q=n.r +if(q.b===q.c)m.cM(0) +s=A.aF("controller") +m=n.w +m.toString +q=new A.qR() +p=a.a +q=p==null?q:p +s.b=new A.a8M(A.cMj(a.Q,a.as,m,a.d,a.z,a.cy,a.ax,a.c,a.cx,a.ay,a.e,a.y,q,a.f,a.CW,a.r,a.x,a.at,a.w),new A.aI(new A.ak($.at,t.dH),t.D6),new A.bDb(n,s),t.BL) +try{n.C(new A.bDc(n,s)) +n.a6G()}catch(o){r=A.ag(o) +throw o}return s.aX()}, +b6q(a){var s=this +switch(a.a){case 0:s.C(new A.bD7(s)) +s.a6G() +if(!s.r.gad(0))s.w.cM(0) +break +case 3:s.C(new A.bD8(s)) +s.a6G() +break +case 1:break +case 2:break}}, +aEE(a){var s,r=this,q=r.r +if(q.b===q.c)return +s=q.ga2(0).b +if((s.a.a&30)===0)s.d2(0,a) +q=r.x +if(q!=null)q.ao(0) +r.x=null +r.w.sj(0,0)}, +ab5(a){var s,r,q=this,p=q.r +if(p.b!==p.c){s=q.w.Q +s===$&&A.b() +s=s===B.a6}else s=!0 +if(s)return +r=p.ga2(0).b +p=q.y +p.toString +s=q.w +if(p){s.sj(0,0) +r.d2(0,a)}else s.eI(0).bf(new A.bDa(q,r,a),t.H) +p=q.x +if(p!=null)p.ao(0) +q.x=null}, +by7(){return this.ab5(B.bn4)}, +q(a){var s,r,q,p=this +p.y=A.bC(a,B.qK,t.l).w.z +s=p.r +if(!s.gad(0)){r=A.wp(a,t.X) +if(r==null||r.guA())if(p.w.gbM(0)===B.a9&&p.x==null){q=s.ga2(0).a +p.x=A.d3(q.ay,new A.bD9(p,q,a))}}return new A.ai7(p,p.a.c,null)}, +m(){var s=this,r=s.w +if(r!=null)r.m() +r=s.x +if(r!=null)r.ao(0) +s.x=null +s.aSu()}} +A.bDb.prototype={ +$0(){this.a.by7()}, +$S:0} +A.bDc.prototype={ +$0(){this.a.r.iW(0,this.b.aX())}, +$S:0} +A.bD7.prototype={ +$0(){this.a.r.qC()}, +$S:0} +A.bD8.prototype={ +$0(){}, +$S:0} +A.bDa.prototype={ +$1(a){var s=this.b +if((s.a.a&30)===0)s.d2(0,this.c)}, +$S:33} +A.bD9.prototype={ +$0(){if(this.b.Q!=null&&A.bC(this.c,B.qK,t.l).w.z)return +this.a.ab5(B.YE)}, +$S:0} +A.ai7.prototype={ +ed(a){return this.f!==a.f}} +A.bDd.prototype={} +A.cm9.prototype={ +tf(a){var s=this +return s.c.aeO(s.a.tf(a),s.b.tf(a),s.d)}, +k(a){return"_TransitionSnapshotFabLocation(begin: "+this.a.k(0)+", end: "+this.b.k(0)+", progress: "+A.r(this.d)+")"}} +A.UF.prototype={ +a5G(a){var s,r,q,p=this +if(a===1)return p +if(a===0)return new A.UF(p.a,null) +s=p.b +r=s.gc1() +q=r.a +r=r.b +s=A.U6(new A.W(q,r,q+0,r+0),s,a) +s.toString +return p.brB(s)}, +axz(a,b){var s=a==null?this.a:a +return new A.UF(s,b==null?this.b:b)}, +brB(a){return this.axz(null,a)}} +A.aVS.prototype={ +gj(a){var s=this.c,r=this.b +r.toString +return s.a5G(r)}, +auh(a,b,c){var s=this +s.b=c==null?s.b:c +s.c=s.c.axz(a,b) +s.ab()}, +aug(a){return this.auh(null,null,a)}, +bla(a,b){return this.auh(a,b,null)}, +$idq:1} +A.ad_.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(!s.aNV(0,b))return!1 +return b instanceof A.ad_&&b.r===s.r&&b.e===s.e&&b.f===s.f}, +gv(a){var s=this +return A.ad(A.aG.prototype.gv.call(s,0),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.aLn.prototype={ +q(a){return this.c}} +A.cdG.prototype={ +Ho(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=this,a5=A.nT(a9),a6=a9.a,a7=a5.OU(a6),a8=a9.b +if(a4.b.i(0,B.qS)!=null){s=a4.j2(B.qS,a7).b +a4.li(B.qS,B.h) +r=s}else{r=0 +s=0}if(a4.b.i(0,B.qX)!=null){q=0+a4.j2(B.qX,a7).b +p=Math.max(0,a8-q) +a4.li(B.qX,new A.j(0,p))}else{q=0 +p=null}if(a4.b.i(0,B.yZ)!=null){q+=a4.j2(B.yZ,new A.aG(0,a7.b,0,Math.max(0,a8-q-r))).b +a4.li(B.yZ,new A.j(0,Math.max(0,a8-q)))}if(a4.b.i(0,B.qW)!=null){o=a4.j2(B.qW,a7) +a4.li(B.qW,new A.j(0,s)) +if(!a4.ay)r+=o.b}else o=B.A +n=a4.f +m=Math.max(0,a8-Math.max(n.d,q)) +if(a4.b.i(0,B.qR)!=null){l=Math.max(0,m-r) +k=a4.d +if(k)l=A.Z(l+q,0,a5.d-r) +k=k?q:0 +a4.j2(B.qR,new A.ad_(k,s,o.b,0,a7.b,0,l)) +a4.li(B.qR,new A.j(0,r))}if(a4.b.i(0,B.qU)!=null){a4.j2(B.qU,new A.aG(0,a7.b,0,m)) +a4.li(B.qU,B.h)}k=a4.b.i(0,B.k8)!=null&&!a4.at?a4.j2(B.k8,a7):B.A +if(a4.b.i(0,B.qV)!=null){j=a4.j2(B.qV,new A.aG(0,a7.b,0,Math.max(0,m-r))) +a4.li(B.qV,new A.j((a6-j.a)/2,m-j.b))}else j=B.A +i=A.aF("floatingActionButtonRect") +if(a4.b.i(0,B.qY)!=null){h=a4.j2(B.qY,a5) +g=new A.bDd(h,j,m,s,n,a4.r,a9,k,a4.w) +f=a4.z.tf(g) +e=a4.as.aeO(a4.y.tf(g),f,a4.Q) +a4.li(B.qY,e) +d=e.a +c=e.b +i.b=new A.W(d,c,d+h.a,c+h.b)}if(a4.b.i(0,B.k8)!=null){d=a4.ax +b=d!=null&&d") +k=t.x8 +j=t.jc +i=t.i +h=A.cO_(new A.or(new A.aB(p,new A.eA(new A.o7(B.Ev)),l),new A.bN(A.a([],k),j),0),new A.aB(p,new A.eA(B.Ev),l),p,0.5,i) +p=d.a.d +g=$.cZ4() +m.a(p) +f=$.cZ5() +e=A.cO_(new A.aB(p,g,g.$ti.h("aB")),new A.or(new A.aB(p,f,A.z(f).h("aB")),new A.bN(A.a([],k),j),0),p,0.5,i) +d.e=A.cEO(h,s,i) +i=A.cEO(h,q,i) +d.r=i +d.w=new A.aB(m.a(i),new A.eA(B.aAs),l) +d.f=A.czu(new A.aB(r,new A.aP(1,1,b),b.h("aB")),e,c) +d.x=A.czu(new A.aB(o,n,n.$ti.h("aB")),e,c) +n=d.r +o=d.gbbU() +n.cY() +n=n.em$ +n.b=!0 +n.a.push(o) +n=d.e +n.cY() +n=n.em$ +n.b=!0 +n.a.push(o)}, +b5F(a){this.C(new A.c0k(this,a))}, +q(a){var s,r,q=this,p=null,o=A.a([],t.p),n=q.d +n===$&&A.b() +n=n.Q +n===$&&A.b() +if(n!==B.a6){n=q.y +s=n instanceof A.yM&&n.db +r=q.e +if(s){r===$&&A.b() +o.push(new A.dg(r,!1,n,p))}else{r===$&&A.b() +s=q.f +s===$&&A.b() +o.push(A.Aa(B.C,A.aDK(B.C,n,p,s),p,r))}}n=q.a.c +s=n instanceof A.yM&&n.db +r=q.r +if(s){s=q.w +s===$&&A.b() +r===$&&A.b() +o.push(A.Aa(B.C,new A.dg(r,!1,n,p),p,s))}else{r===$&&A.b() +s=q.x +s===$&&A.b() +o.push(A.Aa(B.C,A.aDK(B.C,n,p,s),p,r))}return new A.d4(B.cy,p,B.am,B.k,o,p)}, +bbV(){var s,r,q=this.e +q===$&&A.b() +s=q.a +s=s.gj(s) +q=q.b +q=q.gj(q) +q=Math.min(A.fP(s),A.fP(q)) +s=this.r +s===$&&A.b() +r=s.a +r=r.gj(r) +s=s.b +s=s.gj(s) +s=Math.max(q,Math.min(A.fP(r),A.fP(s))) +this.a.f.aug(s)}} +A.c0k.prototype={ +$0(){var s=this.a.a +if(s.c!=null&&this.b===B.a6)s.r.cM(0)}, +$S:0} +A.a8L.prototype={ +J(){var s=null,r=t.bR,q=t.A,p=$.ae() +return new A.UG(new A.aR(s,r),new A.aR(s,r),new A.aR(s,q),new A.LI(!1,p),new A.LI(!1,p),A.a([],t.Z5),new A.aR(s,q),B.B,s,A.N(t.yb,t.O),s,!0,s,s,s,B.f)}} +A.UG.prototype={ +gkh(){this.a.toString +return null}, +lk(a,b){var s=this +s.oC(s.w,"drawer_open") +s.oC(s.x,"end_drawer_open")}, +au6(){var s=this,r=!s.y.r.gad(0)?s.y.r.ga2(0):null +if(s.z!=r)s.C(new A.bDg(s,r))}, +atQ(){var s=this,r=!s.y.e.gad(0)?s.y.e.ga2(0):null +if(s.Q!=r)s.C(new A.bDf(s,r))}, +b9J(){this.a.toString}, +ba6(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.cm9(r,m,q,s) +p=Math.min(1-s,s)}else p=0 +o.C(new A.bDe(n,o,a)) +o.ch.l9(0,p)}, +b6z(){var s,r=this.c +r.toString +s=A.EK(r) +if(s!=null&&s.f.length!==0)s.jv(0,B.Cw,B.aW)}, +gBa(){var s=this.a.cy +return s!==!1}, +a8(){var s,r=this,q=null +r.an() +s=r.c +s.toString +r.dx=new A.aVS(s,B.bkn,$.ae()) +s=r.a.w +if(s==null)s=B.rM +r.cy=s +r.CW=B.a61 +r.cx=s +r.ch=A.bQ(q,new A.aU(4e5),q,1,1,r) +r.db=A.bQ(q,B.K,q,1,q,r)}, +b1(a){var s,r=this +r.aSx(a) +s=r.a +s=s.w +if(s!=a.w)r.ba6(s==null?B.rM:s) +r.a.toString}, +c5(){var s,r=this,q=r.c.a0(t.Pu),p=q==null?null:q.f,o=r.y,n=o==null +if(!n)s=p==null||o!==p +else s=!1 +if(s)if(!n)o.d.F(0,r) +r.y=p +if(p!=null){p.d.B(0,r) +if(p.b8c(r)){if(!p.r.gad(0))r.au6() +if(!p.e.gad(0))r.atQ()}}r.b9J() +r.aSw()}, +m(){var s=this,r=s.dx +r===$&&A.b() +r.k3$=$.ae() +r.k2$=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.aSy()}, +a1l(a,b,c,d,e,f,g,h,i){var s,r=this.c +r.toString +s=A.bC(r,null,t.l).w.ade(f,g,h,i) +if(e)s=s.bFL(!0) +if(d&&s.f.d!==0)s=s.BP(s.r.u9(s.w.d)) +if(b!=null)a.push(A.zc(A.rC(b,s,null),c,null))}, +aVM(a,b,c,d,e,f,g,h){return this.a1l(a,b,c,!1,d,e,f,g,h)}, +Jl(a,b,c,d,e,f,g){return this.a1l(a,b,c,!1,!1,d,e,f,g)}, +a1k(a,b,c,d,e,f,g,h){return this.a1l(a,b,c,d,!1,e,f,g,h)}, +aj0(a,b){this.a.toString}, +aj_(a,b){this.a.toString}, +q(a){var s,r,q,p,o,n,m,l,k=this,j=null,i={},h=A.G(a),g=a.a0(t.I) +g.toString +s=g.w +r=A.a([],t.sa) +g=k.a +q=g.f +p=g.e +g=g.CW!=null||!1 +k.aVM(r,new A.aLn(new A.hI(q,k.f),!1,!1,j),B.qR,k.gBa(),g,!1,!1,p!=null) +if(k.dy)k.Jl(r,A.btl(!0,j,k.fr,!1,j,j,j),B.qU,!0,!0,!0,!0) +if(k.a.e!=null){g=A.bC(a,B.cV,t.l).w +g=k.r=A.d1O(a,k.a.e.fx)+g.r.b +q=k.a.e +q.toString +k.Jl(r,new A.fI(new A.aG(0,1/0,0,g),A.cIj(q,g,j,j,j,j,j),j),B.qS,!0,!1,!1,!1)}i.a=!1 +i.b=null +if(k.at!=null||k.as.length!==0){g=A.R(k.as,!0,t.C) +q=k.at +if(q!=null)g.push(q.a) +k.Jl(r,new A.d4(B.dG,j,B.am,B.k,g,j),B.qV,k.gBa(),!1,!1,!0)}g=k.z +if(g!=null){i.a=!1 +i.b=h.eX.w +g=g.a +q=k.a.CW!=null||!1 +k.a1k(r,g,B.k8,!k.gBa(),q,!1,!1,!0)}i.c=!1 +if(k.Q!=null){a.a0(t.iB) +g=A.G(a) +q=k.Q +if(q!=null){q=q.a +q.gft(q)}o=g.ry.f +i.c=(o==null?0:o)!==0 +g=k.Q +g=g==null?j:g.a +q=k.a.e +k.a1k(r,g,B.qW,!k.gBa(),!0,!1,!1,q!=null)}g=k.a +g=g.CW +if(g!=null)k.a1k(r,g,B.qX,!k.gBa(),!1,!1,!1,!0) +g=k.ch +g===$&&A.b() +q=k.CW +q===$&&A.b() +p=k.dx +p===$&&A.b() +n=k.db +n===$&&A.b() +k.Jl(r,new A.aeK(k.a.r,g,q,p,n,j),B.qY,!0,!0,!0,!0) +switch(h.w.a){case 2:case 4:k.Jl(r,A.dn(B.be,j,B.m,!0,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,k.gb6y(),j,j,j,j,j,j,j,!1,B.ac),B.qT,!0,!1,!1,!0) +break +case 0:case 1:case 3:case 5:break}g=k.x +q=g.y +if(q==null?A.z(g).h("cV.T").a(q):q){k.aj_(r,s) +k.aj0(r,s)}else{k.aj0(r,s) +k.aj_(r,s)}g=t.l +q=A.bC(a,B.cV,g).w +p=k.gBa()?A.bC(a,B.qM,g).w.f.d:0 +m=q.r.u9(p) +p=A.bC(a,B.bzt,g).w +g=k.gBa()&&A.bC(a,B.qM,g).w.f.d!==0?0:j +l=p.w.u9(g) +if(m.d<=0)k.a.toString +g=k.a +q=k.dx +g=g.ch +if(g==null)g=h.id +return new A.ai9(!1,q,new A.a8Y(A.fX(B.K,!0,j,A.hC(k.ch,new A.bDh(i,k,!1,m,l,s,r),j),B.i,g,0,j,j,j,j,j,B.bT),j),j)}} +A.bDg.prototype={ +$0(){this.a.z=this.b}, +$S:0} +A.bDf.prototype={ +$0(){this.a.Q=this.b}, +$S:0} +A.bDe.prototype={ +$0(){var s=this.b +s.cx=this.a.a +s.cy=this.c}, +$S:0} +A.bDh.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l=this,k=A.a1([B.m8,new A.aNA(a,new A.bN(A.a([],t.h),t.b))],t.u,t.od),j=l.b +j.a.toString +s=j.cy +s.toString +r=j.ch +r===$&&A.b() +r=r.x +r===$&&A.b() +q=j.CW +q===$&&A.b() +p=j.dx +p===$&&A.b() +j=j.cx +j.toString +o=l.a +n=o.a +m=o.c +return A.ts(k,new A.yr(new A.cdG(l.c,!1,l.d,l.e,l.f,p,j,s,r,q,n,o.b,m,null),l.r,null))}, +$S:543} +A.aNA.prototype={ +pr(a,b){var s=this.e,r=A.UH(s).w,q=r.y +if(!(q==null?A.z(r).h("cV.T").a(q):q)){s=A.UH(s).x +r=s.y +s=r==null?A.z(s).h("cV.T").a(r):r}else s=!0 +return s}, +fI(a){var s=this.e +A.UH(s).a.toString +A.UH(s).a.toString}} +A.a8M.prototype={} +A.ai9.prototype={ +ed(a){return this.f!==a.f}} +A.cdH.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.ai8.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aia.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aib.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.cdH()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.aSv()}} +A.akY.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aE8.prototype={ +q(a){var s=this,r=null +if(A.G(a).w===B.aM)return A.cvZ(s.c,s.d,r,B.x2,B.dA,r,3,8,s.e===!0) +return new A.XO(r,s.c,s.d,s.e,r,r,r,B.aA,B.fy,B.w,A.Zm(),r,r,r)}} +A.XO.prototype={ +J(){return new A.aRi(new A.aR(null,t.A),null,null,B.f)}} +A.aRi.prototype={ +gDJ(){var s=this.a.e +if(s==null){s=this.fr +s===$&&A.b() +s=s.a +s=s==null?null:s.a5(this.gL2())}return s==null?!1:s}, +gC3(){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}, +gUd(){return new A.by(new A.c5I(this),t.Ln)}, +gL2(){var s=A.b9(t.ui) +if(this.db)s.B(0,B.hT) +if(this.dx)s.B(0,B.P) +return s}, +gbjI(){var s,r,q,p,o=this,n=o.dy +n===$&&A.b() +s=n.db +r=A.aF("dragColor") +q=A.aF("hoverColor") +p=A.aF("idleColor") +switch(n.a.a){case 1:r.b=A.Y(153,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +q.b=A.Y(B.e.aF(127.5),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +n=o.fx +n===$&&A.b() +if(n){n=o.c +n.toString +n=A.G(n).db.a +n=A.Y(255,n>>>16&255,n>>>8&255,n&255)}else n=A.Y(B.e.aF(25.5),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +p.b=n +break +case 0:r.b=A.Y(191,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +q.b=A.Y(166,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +n=o.fx +n===$&&A.b() +if(n){n=o.c +n.toString +n=A.G(n).db.a +n=A.Y(255,n>>>16&255,n>>>8&255,n&255)}else n=A.Y(B.e.aF(76.5),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255) +p.b=n +break}return new A.by(new A.c5F(o,r,q,p),t.h2)}, +gbkf(){var s=this.dy +s===$&&A.b() +return new A.by(new A.c5H(this,s.a,s.db),t.h2)}, +gbke(){var s=this.dy +s===$&&A.b() +return new A.by(new A.c5G(this,s.a,s.db),t.h2)}, +gbjF(){return new A.by(new A.c5E(this),t.pj)}, +a8(){var s,r=this +r.ahb() +s=r.cy=A.bQ(null,B.K,null,1,null,r) +s.cY() +s=s.em$ +s.b=!0 +s.a.push(new A.c5O(r))}, +c5(){var s,r=this,q=r.c +q.toString +s=A.G(q) +r.dy=s.ay +q=r.c +q.a0(t.Nn) +q=A.G(q) +r.fr=q.x +switch(s.w.a){case 0:r.fx=!0 +break +case 2:case 3:case 1:case 4:case 5:r.fx=!1 +break}r.aPB()}, +P9(){var s,r=this,q=r.at +q===$&&A.b() +q.sa6(0,r.gbjI().a.$1(r.gL2())) +q.sqL(r.gbkf().a.$1(r.gL2())) +q.saFM(r.gbke().a.$1(r.gL2())) +s=r.c.a0(t.I) +s.toString +q.sd5(s.w) +q.sadw(r.gbjF().a.$1(r.gL2())) +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.eo}q.slj(s) +s=r.fr +s===$&&A.b() +s=s.y +if(s==null){s=r.fx +s===$&&A.b() +s=s?0:2}q.sa97(s) +s=r.fr.z +q.sabU(s==null?0:s) +s=r.fr.Q +q.sac4(0,s==null?48:s) +s=r.c +s.toString +q.sdX(0,A.bC(s,B.cV,t.l).w.r) +q.sa03(r.a.db) +q.saAJ(!r.gC3())}, +Xh(a){this.aha(a) +this.C(new A.c5N(this))}, +Xg(a,b){this.ah9(a,b) +this.C(new A.c5M(this))}, +aaL(a){var s,r=this +r.aPC(a) +if(r.aBn(a.gb8(a),a.gel(a),!0)){r.C(new A.c5K(r)) +s=r.cy +s===$&&A.b() +s.cM(0)}else if(r.dx){r.C(new A.c5L(r)) +s=r.cy +s===$&&A.b() +s.eI(0)}}, +aaM(a){var s,r=this +r.aPD(a) +r.C(new A.c5J(r)) +s=r.cy +s===$&&A.b() +s.eI(0)}, +m(){var s=this.cy +s===$&&A.b() +s.m() +this.ah8()}} +A.c5I.prototype={ +$1(a){var s,r +if(a.p(0,B.P)){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.a5(a) +return s==null?!1:s}, +$S:544} +A.c5F.prototype={ +$1(a){var s,r,q,p=this,o=null +if(a.p(0,B.hT)){s=p.a.fr +s===$&&A.b() +s=s.r +s=s==null?o:s.a5(a) +return s==null?p.b.aX():s}s=p.a +if(s.gUd().a.$1(a)){s=s.fr +s===$&&A.b() +s=s.r +s=s==null?o:s.a5(a) +return s==null?p.c.aX():s}r=s.fr +r===$&&A.b() +r=r.r +r=r==null?o:r.a5(a) +if(r==null)r=p.d.aX() +q=s.fr.r +q=q==null?o:q.a5(a) +if(q==null)q=p.c.aX() +s=s.cy +s===$&&A.b() +s=s.x +s===$&&A.b() +s=A.ai(r,q,s) +s.toString +return s}, +$S:7} +A.c5H.prototype={ +$1(a){var s=this.a +if(s.gDJ()&&s.gUd().a.$1(a)){s=s.fr +s===$&&A.b() +s=s.w +s=s==null?null:s.a5(a) +if(s==null){s=this.c +s=this.b===B.ak?A.Y(8,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255):A.Y(13,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return s}return B.D}, +$S:7} +A.c5G.prototype={ +$1(a){var s=this.a +if(s.gDJ()&&s.gUd().a.$1(a)){s=s.fr +s===$&&A.b() +s=s.x +s=s==null?null:s.a5(a) +if(s==null){s=this.c +s=this.b===B.ak?A.Y(B.e.aF(25.5),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255):A.Y(64,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return s}return B.D}, +$S:7} +A.c5E.prototype={ +$1(a){var s,r +if(a.p(0,B.P)&&this.a.gUd().a.$1(a)){s=this.a.fr +s===$&&A.b() +s=s.b +s=s==null?null:s.a5(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.a5(a)}if(r==null){s=s.fx +s===$&&A.b() +r=8/(s?2:1) +s=r}else s=r +return s}, +$S:153} +A.c5O.prototype={ +$0(){this.a.P9()}, +$S:0} +A.c5N.prototype={ +$0(){this.a.db=!0}, +$S:0} +A.c5M.prototype={ +$0(){this.a.db=!1}, +$S:0} +A.c5K.prototype={ +$0(){this.a.dx=!0}, +$S:0} +A.c5L.prototype={ +$0(){this.a.dx=!1}, +$S:0} +A.c5J.prototype={ +$0(){this.a.dx=!1}, +$S:0} +A.a90.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.a90&&b.a==s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e&&J.q(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.aW3.prototype={} +A.a93.prototype={ +slK(a,b){var s,r=this.x +r.sce(0,b) +s=r.a.a.length +if(s!==0)r.sDF(A.MG(new A.cC(s,B.E)))}, +a0n(a){var s=this.w +if(s!=null)s.lR() +this.z.sj(0,B.z0)}, +LQ(a,b,c){var s +this.z.sj(0,null) +s=this.w +if(s!=null)s.lR() +s=A.cN(b,!1) +s.Ht(new A.bE6(this)) +s.dB(c)}} +A.bE6.prototype={ +$1(a){return a===this.a.Q}, +$S:545} +A.Yu.prototype={ +H(){return"_SearchBody."+this.b}} +A.ain.prototype={ +gq9(){return null}, +gu1(){return null}, +gv0(a){return B.aA}, +grP(){return!1}, +ym(a,b,c,d){return new A.dg(b,!1,d,null)}, +M5(){var s=this.a16() +this.en.y.sbR(0,s) +return s}, +rj(a,b,c){return new A.Yv(this.en,b,null,this.$ti.h("Yv<1>"))}, +W7(a){var s +this.aQb(a) +s=this.en +s.Q=null +s.z.sj(0,null)}} +A.Yv.prototype={ +J(){return new A.Yw(A.hH(!0,null,!0,!0,null,null,!1),B.f,this.$ti.h("Yw<1>"))}} +A.Yw.prototype={ +a8(){var s,r=this +r.an() +r.a.c.x.a3(0,r.ga4P()) +s=r.a.d +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(r.ga5M()) +r.a.c.z.a3(0,r.ga4R()) +s=r.d +s.a3(0,r.gbbl()) +r.a.c.w=s}, +m(){var s=this +s.ap() +s.a.c.x.O(0,s.ga4P()) +s.a.d.fW(s.ga5M()) +s.a.c.z.O(0,s.ga4R()) +s.a.c.w=null +s.d.m()}, +bh8(a){var s=this +if(a!==B.a9)return +s.a.d.fW(s.ga5M()) +if(s.a.c.z.a===B.k9)s.d.ho()}, +b1(a){var s,r,q=this +q.bc(a) +s=a.c +if(q.a.c!==s){r=q.ga4P() +s.x.O(0,r) +q.a.c.x.a3(0,r) +r=q.ga4R() +s.z.O(0,r) +q.a.c.z.a3(0,r) +s.w=null +q.a.c.w=q.d}}, +bbm(){var s,r=this +if(r.d.ge2()&&r.a.c.z.a!==B.k9){s=r.a.c +r.c.toString +s.w.ho() +s.z.sj(0,B.k9)}}, +bbW(){this.C(new A.ce7())}, +bc8(){this.C(new A.ce8())}, +q(a){var s,r,q,p,o=this,n=null,m=o.a.c,l=A.G(a),k=l.ay.a===B.aN,j=k?B.xN:B.xO +k=k?B.mV:B.r +s=l.p3 +s=A.cEQ(n,k,n,n,n,l.p1.bu(B.fY),n,n,n,n,j,n,s.r,n,s.z) +m=m.e +m=A.cJ2(n,!1,B.yR,n,n,n,n,n,n,n,n,n,!1,B.mB,B.nx,n,n,n,n,n,n,n,l.e.e,n,n,!1,!1,n,n,n,n,n,n) +l=l.bs5(s,m) +r=o.a.c.c +m=A.dS(a,B.an,t.v) +m.toString +r=m.gco() +m=o.a.c +switch(m.z.a){case B.k9:q=new A.hI(m.a7S(a),B.bvN) +break +case B.z0:q=new A.hI(m.a7Q(a),B.bvO) +break +case null:case void 0:q=n +break +default:q=n}p=A.aF("routeName") +switch(l.w.a){case 2:case 4:p.se9("") +break +case 0:case 1:case 3:case 5:p.se9(r) +break}m=p.aX() +k=o.a +k=k.c.a7K(a) +j=o.a.c +j=A.Fz(!0,B.bF,!1,n,!0,B.k,n,A.Ov(),j.x,n,n,n,n,n,2,A.md(n,n,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,n,r,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n),B.m,!0,n,!0,n,!1,o.d,n,n,n,j.f,n,n,n,1,n,n,!1,"\u2022",n,n,n,new A.ce9(o,a),n,!1,n,!1,n,!0,n,B.ec,n,n,B.cY,B.cA,n,n,n,n,n,n,l.p3.r,B.ah,n,B.fk,n,j.r,n,n) +s=o.a.c.a7C(a) +o.a.toString +j=A.bW(A.jb(s,n,!0,n,n,1,n,n,n,!1,n,!1,n,n,k,n,!0,n,n,n,n,n,j,n,n,n,1,n),n,A.BS(q,B.aA,B.H,B.H,A.Oo()),n,n,n,n) +return new A.bX(A.ci(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,m,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,n,!0,n,n,n,n,n,n,n,n,n),!1,!0,!1,!1,new A.pC(l,j,n),n)}} +A.ce7.prototype={ +$0(){}, +$S:0} +A.ce8.prototype={ +$0(){}, +$S:0} +A.ce9.prototype={ +$1(a){return this.a.a.c.a0n(this.b)}, +$S:46} +A.a92.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.a92&&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.q(b.z,s.z)&&!0}} +A.aQO.prototype={ +a5(a){var s,r=this,q=r.a,p=q==null?null:q.a5(a) +q=r.b +s=q==null?null:q.a5(a) +if(p==s)return p +if(p==null){q=s.a +return A.c8(new A.bx(A.Y(0,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),0,B.O,-1),s,r.c)}if(s==null){q=p.a +return A.c8(p,new A.bx(A.Y(0,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),0,B.O,-1),r.c)}return A.c8(p,s,r.c)}, +$ic9:1} +A.aW4.prototype={} +A.a95.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.a95&&J.q(b.a,s.a)&&b.b==s.b&&J.q(b.c,s.c)&&J.q(b.d,s.d)&&J.q(b.e,s.e)&&J.q(b.f,s.f)&&J.q(b.r,s.r)&&J.q(b.w,s.w)&&J.q(b.x,s.x)}} +A.aW5.prototype={} +A.ig.prototype={} +A.Fa.prototype={ +J(){var s=this.$ti +return new A.a96(A.N(s.h("ig<1>"),t.iP),B.f,s.h("a96<1>"))}} +A.a96.prototype={ +b1(a){var s,r=this +r.bc(a) +s=r.a +s.toString +if(!a.r3(0,s)){s=r.d +s.HC(s,new A.bEt(r))}}, +an6(a){var s,r,q,p=this,o=p.a +o=o.d +s=o.a===1&&o.p(0,a) +p.a.toString +if(!s){r=A.d9([a],p.$ti.c) +q=A.aF("updatedSelection") +q.se9(r) +if(!A.BH(q.aX(),p.a.d))p.a.e.$1(q.aX())}}, +q(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=null,a0=a1.a0(t.vw) +if(a0!=null)a0.gi3(a0) +s=A.G(a1).er +r=new A.ceb(a1,a,a) +a0=a1.a0(t.I) +a0.toString +q=b.a +p=new A.bEq(new A.bEm(b,s,r),B.er) +o=new A.bEs() +n=o.$1(q.w) +m=o.$1(s.a).dt(o.$1(r.gbN(0))) +if(b.a.x)l=B.E2 +else l=a +q=t.KX +k=p.$1$2(new A.bEf(),B.ib,q) +if(k==null)k=B.ep +j=p.$1$2(new A.bEg(),B.ib,q) +if(j==null)j=B.ep +q=t.oI +i=p.$1$2(new A.bEh(),B.er,q) +if(i==null)i=B.G +h=p.$1$2(new A.bEi(),B.ib,q) +if(h==null)h=B.G +g=k.n0(i) +f=j.n0(h) +q=b.a.c +o=A.X(q).h("O<1,c>") +e=A.R(new A.O(q,new A.bEb(b,l,n),o),!0,o.h("aa.E")) +o=g.n0(B.G) +q=p.$1$1(new A.bEj(),t.PM) +q.toString +d=t._ +c=p.$1$1(new A.bEk(),d) +d=p.$1$1(new A.bEl(),d) +p=b.a.c +return A.fX(B.K,!0,a,A.czg(new A.aiq(p,g,f,a0.w,e,a,b.$ti.h("aiq<1>")),new A.MB(m)),B.i,a,q,a,c,o,d,a,B.eI)}, +m(){var s,r,q +for(s=this.d.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +if(q==null)q=r.a(q) +q.k3$=$.ae() +q.k2$=0}this.ap()}} +A.bEt.prototype={ +$2(a,b){if(B.b.p(this.a.a.c,a))return!1 +else{b.k3$=$.ae() +b.k2$=0 +return!0}}, +$S(){return this.a.$ti.h("A(ig<1>,E9)")}} +A.bEm.prototype={ +$1$1(a,b){var s=A.XD("widgetValue",new A.bEn(this.a,a,b)),r=A.XD("themeValue",new A.bEo(a,this.b,b)),q=A.XD("defaultValue",new A.bEp(a,this.c,b)),p=s.m0() +if(p==null)p=r.m0() +return p==null?q.m0():p}, +$1(a){return this.$1$1(a,t.z)}, +$S:328} +A.bEn.prototype={ +$0(){return this.b.$1(this.a.a.w)}, +$S(){return this.c.h("0?()")}} +A.bEo.prototype={ +$0(){return this.a.$1(this.b.a)}, +$S(){return this.c.h("0?()")}} +A.bEp.prototype={ +$0(){return this.a.$1(this.b.gbN(0))}, +$S(){return this.c.h("0?()")}} +A.bEq.prototype={ +$1$2(a,b,c){return this.a.$1$1(new A.bEr(a,b,this.b,c),c)}, +$1(a){return this.$1$2(a,null,t.z)}, +$2(a,b){return this.$1$2(a,b,t.z)}, +$1$1(a,b){return this.$1$2(a,null,b)}, +$S:546} +A.bEr.prototype={ +$1(a){var s,r=this.a.$1(a) +if(r==null)r=null +else{s=this.b +r=r.a5(s==null?this.c:s)}return r}, +$S(){return this.d.h("0?(d6?)")}} +A.bEs.prototype={ +$1(a){var s=null,r=a==null,q=r?s:a.ghp(),p=r?s:a.gcv(a),o=r?s:a.ghx(),n=r?s:a.gew(),m=r?s:a.gc9(),l=r?s:a.gft(a),k=r?s:a.gdX(a),j=r?s:a.ghU(),i=r?s:a.gkP(),h=r?s:a.giS(),g=r?s:a.gh6(),f=r?s:a.gkU(),e=r?s:a.cx,d=r?s:a.cy,c=r?s:a.db +return A.C8(c,e,p,l,d,s,o,j,i,s,s,h,n,k,s,B.b4r,s,r?s:a.giV(),m,f,q,g)}, +$S:547} +A.bEb.prototype={ +$1(a){var s,r,q,p,o=null,n=a.c,m=this.a,l=m.a.d.p(0,a.a) +if(l&&m.a.x)s=this.b +else s=a.b +r=m.d.cP(0,a,new A.bEc()) +r.ic(0,B.S,l) +q=this.c +if(s!=null){m.a.toString +p=A.djn(o,o,o,s,o,n,o,o,o,new A.bEd(m,a),r,q)}else{m.a.toString +p=A.nq(!1,n,B.i,o,!0,o,o,o,o,new A.bEe(m,a),r,q)}return new A.zo(new A.bX(A.ci(o,o,o,o,o,o,l,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),!1,!1,!1,!1,p,o),o)}, +$S(){return this.a.$ti.h("c(ig<1>)")}} +A.bEc.prototype={ +$0(){return A.Kf(null)}, +$S:548} +A.bEd.prototype={ +$0(){return this.a.an6(this.b.a)}, +$S:0} +A.bEe.prototype={ +$0(){return this.a.an6(this.b.a)}, +$S:0} +A.bEf.prototype={ +$1(a){return a==null?null:a.gdg(a)}, +$S:237} +A.bEg.prototype={ +$1(a){return a==null?null:a.gdg(a)}, +$S:237} +A.bEh.prototype={ +$1(a){return a==null?null:a.ghr()}, +$S:225} +A.bEi.prototype={ +$1(a){return a==null?null:a.ghr()}, +$S:225} +A.bEj.prototype={ +$1(a){return a==null?null:a.gft(a)}, +$S:221} +A.bEk.prototype={ +$1(a){return a==null?null:a.gc0(a)}, +$S:92} +A.bEl.prototype={ +$1(a){return a==null?null:a.gc9()}, +$S:92} +A.aiq.prototype={ +aR(a){var s=this,r=new A.Yl(s.e,s.f,s.r,s.w,0,null,null,A.aw(t.T),s.$ti.h("Yl<1>")) +r.aQ() +return r}, +b_(a,b){var s=this +b.saKx(s.e) +b.sbv4(s.f) +b.sbu1(s.r) +b.sd5(s.w)}} +A.Yy.prototype={} +A.Yl.prototype={ +saKx(a){if(A.fj(this.D,a))return +this.D=a +this.a9()}, +sbv4(a){if(this.N.l(0,a))return +this.N=a +this.a9()}, +sbu1(a){if(this.a4.l(0,a))return +this.a4=a +this.a9()}, +sd5(a){if(a===this.ag)return +this.ag=a +this.a9()}, +bo(a){var s,r,q,p=this.Y$ +for(s=t.Fk,r=0;p!=null;){q=p.b +q.toString +s.a(q) +r=Math.max(r,p.aw(B.ad,a,p.gbG())) +p=q.a7$}return r*this.cT$}, +bb(a){var s,r,q,p=this.Y$ +for(s=t.Fk,r=0;p!=null;){q=p.b +q.toString +s.a(q) +r=Math.max(r,p.aw(B.aj,a,p.gbL())) +p=q.a7$}return r*this.cT$}, +bh(a){var s,r,q,p=this.Y$ +for(s=t.Fk,r=0;p!=null;){q=p.b +q.toString +s.a(q) +r=Math.max(r,p.aw(B.ao,a,p.gbP())) +p=q.a7$}return r}, +bi(a){var s,r,q,p=this.Y$ +for(s=t.Fk,r=0;p!=null;){q=p.b +q.toString +s.a(q) +r=Math.max(r,p.aw(B.ay,a,p.gbZ())) +p=q.a7$}return r}, +il(a){return this.yH(a)}, +fo(a){if(!(a.b instanceof A.Yy))a.b=new A.Yy(null,null,B.h)}, +aof(a,b,c){var s,r,q,p,o,n,m +for(s=t.Fk,r=b,q=0;r!=null;){p=r.b +p.toString +s.a(p) +p.a=new A.j(q,0) +o=r.id +n=o==null?A.C(A.a0("RenderBox was not laid out: "+A.I(r).k(0)+"#"+A.bq(r))):o +m=o +p.e=A.TX(new A.W(q,0,q+n.a,0+m.b),B.J,B.J,B.J,B.J) +q+=o.a +r=a.$1(r)}}, +ajb(a){var s,r,q,p=this,o=a.a/p.cT$,n=p.Y$ +for(s=p.$ti.h("ap.1");n!=null;){o=Math.max(o,n.aw(B.aj,1/0,n.gbL())) +r=n.b +r.toString +n=s.a(r).a7$}o=Math.min(o,a.b/p.cT$) +n=p.Y$ +for(q=0;n!=null;){q=Math.max(q,n.aw(B.ay,o,n.gbZ())) +r=n.b +r.toString +n=s.a(r).a7$}return new A.V(o,q)}, +ak4(a){return t.k.a(A.H.prototype.gZ.call(this)).bd(new A.V(a.a*this.cT$,a.b))}, +cX(a){return this.ak4(this.ajb(a))}, +bJ(){var s,r,q=this,p=q.ajb(t.k.a(A.H.prototype.gZ.call(q))),o=A.fH(p.b,p.a),n=q.Y$ +for(s=q.$ti.h("ap.1");n!=null;){n.d_(o,!0) +r=n.b +r.toString +n=s.a(r).a7$}switch(q.ag.a){case 0:q.aof(q.gawN(),q.d7$,q.Y$) +break +case 1:q.aof(q.gVu(),q.Y$,q.d7$) +break}q.id=q.ak4(p)}, +aI(a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=b.gu(0),a0=a4.a,a1=a4.b,a2=a0+a.a +a=a1+a.b +s=new A.W(a0,a1,a2,a) +r=b.N.js(s,b.ag) +q=b.Y$ +p=a3.gbY(a3) +p.d6(0) +p.nG(0,r) +for(p=b.$ti.h("ap.1"),o=t.Fk,n=null,m=0,l=null;q!=null;n=q,q=c){k=q.b +k.toString +o.a(k) +j=k.e +i=new A.W(j.a,j.b,j.c,j.d).eD(a4) +j=a3.gbY(a3) +j.d6(0) +j.qd(i) +k=k.a +a3.eM(q,new A.j(k.a+a0,k.b+a1)) +a3.gbY(a3).de(0) +h=A.aF("segmentLeft") +g=A.aF("segmentRight") +f=A.aF("dividerPos") +k=b.N.a +j=b.a4.a +e=Math.max(k.b*(1+k.d)/2,j.b*(1+j.d)/2) +switch(b.ag.a){case 0:k=q===b.d7$?a0-e:i.a +if(h.b!==h)A.C(A.kY(h.a)) +h.b=k +k=q===b.Y$?a2+e:i.c +if(g.b!==g)A.C(A.kY(g.a)) +g.b=k +if(f.b!==f)A.C(A.kY(f.a)) +f.b=k +break +case 1:k=q===b.Y$?a0-e:i.a +if(h.b!==h)A.C(A.kY(h.a)) +h.b=k +k=q===b.d7$?a2+e:i.c +if(g.b!==g)A.C(A.kY(g.a)) +g.b=k +k=h.b +if(k===h)A.C(A.h6(h.a)) +if(f.b!==f)A.C(A.kY(f.a)) +f.b=k +break}k=h.b +if(k===h)A.C(A.h6(h.a)) +j=g.b +if(j===g)A.C(A.h6(g.a)) +b.D[m].toString +if(l==null)l=$.ar().dc() +l.jd(new A.W(k,a1-e,j,a+e)) +if(n!=null){b.D[m-1].toString +d=b.N.a.axw(0) +k=f.b +if(k===f)A.C(A.h6(f.a)) +a3.gbY(a3).jV(new A.j(k,i.b),new A.j(k,i.d),d.nn())}k=q.b +k.toString +c=p.a(k).a7$;++m}a3.gbY(a3).de(0) +b.N.kz(a3.gbY(a3),s,b.ag)}, +ej(a,b){var s,r,q={},p=q.a=this.d7$ +for(s=t.Fk;p!=null;p=r){p=p.b +p.toString +s.a(p) +if(p.e.p(0,b))return a.l5(new A.ccn(q,b,p),p.a,b) +r=p.dJ$ +q.a=r}return!1}} +A.ccn.prototype={ +$2(a,b){return this.a.a.es(a,b)}, +$S:19} +A.ceb.prototype={ +gly(){var s,r=this,q=r.e +if(q===$){q=r.d +if(q===$){s=A.G(r.c) +r.d!==$&&A.a_() +r.d=s +q=s}r.e!==$&&A.a_() +q=r.e=q.ay}return q}, +gbN(a){var s=this,r=null,q=t.U +return A.C8(r,r,new A.by(new A.cec(s),q),B.hS,r,r,new A.by(new A.ced(s),q),r,B.b4p,r,B.b4x,r,new A.by(new A.cee(s),q),r,r,B.eG,new A.by(new A.cef(s),t.Sq),r,B.cg,r,new A.bS(A.G(s.c).p3.as,t.wG),r)}, +gQ7(){return B.E2}} +A.cec.prototype={ +$1(a){var s,r +if(a.p(0,B.F))return null +if(a.p(0,B.S)){s=this.a.gly() +r=s.w +return r==null?s.f:r}return null}, +$S:21} +A.ced.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){s=q.a.gly().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.gly() +r=s.x +return r==null?s.r:r}if(a.p(0,B.P)){s=q.a.gly() +r=s.x +return r==null?s.r:r}if(a.p(0,B.R)){s=q.a.gly() +r=s.x +return r==null?s.r:r}s=q.a.gly() +r=s.x +return r==null?s.r:r}else{if(a.p(0,B.X))return q.a.gly().db +if(a.p(0,B.P))return q.a.gly().db +if(a.p(0,B.R))return q.a.gly().db +return q.a.gly().db}}, +$S:7} +A.cee.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.gly() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.gly() +r=s.x +s=r==null?s.r:r +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.gly() +r=s.x +s=r==null?s.r:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}else{if(a.p(0,B.X)){s=q.a.gly().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=q.a.gly().db +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=q.a.gly().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}}return null}, +$S:21} +A.cef.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.gly().db +return new A.bx(A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),1,B.O,-1)}s=this.a.gly() +r=s.fr +return new A.bx(r==null?s.cx:r,1,B.O,-1)}, +$S:122} +A.b0q.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.a9;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.a9;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0r.prototype={} +A.UM.prototype={ +gv(a){return A.ad(this.gbN(this),this.gQ7(),B.a,B.a,B.a,B.a,B.a,B.a,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.az(b)!==A.I(s))return!1 +return b instanceof A.UM&&J.q(b.gbN(b),s.gbN(s))&&J.q(b.gQ7(),s.gQ7())}, +gbN(a){return this.a}, +gQ7(){return this.b}} +A.aW7.prototype={} +A.aYg.prototype={ +aws(a,b,c){return A.cy(A.a([this.ax],t.Ne),null,null,b,null)}, +sce(a,b){throw A.d(A.bT(null))}} +A.aWd.prototype={ +He(a){var s +this.ahx(a) +s=this.a +if(s.gkj()&&this.b){s=s.gb4().gam() +s.toString +s.pR()}}, +O6(a){}, +act(a){var s,r=this.a +if(r.gkj()){r=r.gb4().gam() +r.toString +s=a.a +r.gaY().II(B.cI,s.W(0,a.c),s)}}, +Hh(a){var s=this.a,r=s.gb4().gam() +r.toString +r.jD() +if(s.gkj()){r=this.x.c +r.toString +switch(A.G(r).w.a){case 2:case 4:s=s.gb4().gam() +s.toString +s.gaY().afp(B.bK) +break +case 0:case 1:case 3:case 5:s=s.gb4().gam() +s.toString +s=s.gaY() +r=s.kv +r.toString +s.lo(B.bK,r) +break}}this.x.a.toString}, +Hg(a){var s,r=this.a +if(r.gkj()){r=r.gb4().gam() +r.toString +r=r.gaY() +s=r.kv +s.toString +r.vd(B.cI,s) +s=this.x.c +s.toString +A.bhI(s)}}} +A.LZ.prototype={ +J(){return new A.ait(new A.aR(null,t.NE),B.f)}} +A.ait.prototype={ +gRF(){var s,r=null +this.a.toString +s=this.e +if(s==null){s=A.hH(!0,r,!0,!0,r,r,!0) +this.e=s}return s}, +gaaD(){var s=this.w +s===$&&A.b() +return s}, +gkj(){this.a.toString +return!0}, +a8(){var s,r=this,q=null +r.an() +r.r=new A.aWd(r,r) +s=A.cy(q,q,q,q,r.a.c) +s=A.cP8(s) +r.d=s +s.a3(0,r.gapc())}, +b1(a){var s,r,q=this,p=null +q.bc(a) +if(q.a.c!==a.c||!1){s=q.d +s===$&&A.b() +r=q.gapc() +s.O(0,r) +s=q.d +s.k3$=$.ae() +s.k2$=0 +s=A.cy(p,p,p,p,q.a.c) +s=A.cP8(s) +q.d=s +s.a3(0,r)}if(q.gRF().ge2()){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.k3$=$.ae() +s.k2$=0 +this.ap()}, +baV(){var s,r,q=this +if(q.gRF().ge2()){s=q.d +s===$&&A.b() +s=s.a.b +r=s.a!==s.b}else r=!0 +if(r===q.f)return +q.C(new A.ceq(q,r))}, +bht(a,b){var s,r=this,q=r.bi5(b) +if(q!==r.f)r.C(new A.cep(r,q)) +r.a.toString +s=r.c +s.toString +switch(A.G(s).w.a){case 2:case 4:if(b===B.cI){s=r.x.gam() +if(s!=null)s.p7(a.gvR())}return +case 0:case 1:case 3:case 5:break}}, +b6d(){var s=this.d +s===$&&A.b() +s=s.a.b +if(s.a===s.b)this.x.gam().adJ()}, +bi5(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.bj)return!1 +if(a===B.cI)return!0 +if(r.a.length!==0)return!0 +return!1}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=A.G(a),b=a.a0(t.Uf) +if(b==null)b=B.eZ +s=e.gRF() +e.a.toString +switch(c.w.a){case 2:r=A.kP(a) +e.w=!0 +q=$.cuM() +e.a.toString +p=b.w +if(p==null)p=r.gkf() +o=b.x +if(o==null){b=r.gkf() +o=A.Y(102,b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(b)&255)}n=new A.j(-2/A.bC(a,B.ev,t.l).w.b,0) +m=!0 +l=!0 +k=B.h5 +break +case 4:r=A.kP(a) +e.w=!1 +q=$.cuL() +e.a.toString +p=b.w +if(p==null)p=r.gkf() +o=b.x +if(o==null){b=r.gkf() +o=A.Y(102,b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(b)&255)}n=new A.j(-2/A.bC(a,B.ev,t.l).w.b,0) +m=!0 +l=!0 +k=B.h5 +break +case 0:case 1:e.w=!1 +q=$.cuS() +p=b.w +if(p==null)p=c.ay.b +o=b.x +if(o==null){b=c.ay.b +o=A.Y(102,b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(b)&255)}k=d +n=k +m=!1 +l=!1 +break +case 3:case 5:e.w=!1 +q=$.b2R() +p=b.w +if(p==null)p=c.ay.b +o=b.x +if(o==null){b=c.ay.b +o=A.Y(102,b.gj(b)>>>16&255,b.gj(b)>>>8&255,b.gj(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.a0(t.sp) +if(b==null)b=B.dm +j=e.a.f +i=j==null +if(i||j.a){if(i){i=e.d +i===$&&A.b() +i=i.ax.a}else i=j +j=b.w.dt(i)}e.a.toString +$label0$1:{break $label0$1}i=e.f +h=e.d +h===$&&A.b() +g=b.x +if(g==null)g=B.ah +f=$.cur() +b=A.cHP(!0,d,d,d,!1,B.ht,B.k,d,A.dvI(),h,p,d,n,l,k,2,B.m,!0,!0,!0,!1,s,!1,d,e.x,B.ak,d,f,b.Q,d,d,!1,"\u2022",d,d,d,e.gbhs(),e.gb6c(),d,d,m,!0,!0,d,!0,d,B.ec,d,o,q,B.cY,B.cA,!1,i,d,d,d,B.bnk,j,g,B.fk,d,b.at,d,d,b.as,d,d) +e.a.toString +i=e.r +i===$&&A.b() +b=i.awf(B.cr,new A.iU(b,d)) +return new A.bX(A.ci(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,d,d,new A.cer(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)}, +gb4(){return this.x}} +A.ceq.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.cep.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.cer.prototype={ +$0(){this.a.gRF().ho()}, +$S:0} +A.a9a.prototype={ +J(){return new A.aWe(B.f)}} +A.aWe.prototype={ +m(){var s=this.d +if(s!=null)s.m() +this.ap()}, +q(a){var s,r,q,p,o,n=this,m=null +n.a.toString +s=A.G(a).w +$label0$0:{if(B.b4===s||B.fh===s){r=$.cuS() +break $label0$0}if(B.fi===s||B.fj===s){r=$.b2R() +break $label0$0}if(B.aM===s){r=$.cuM() +break $label0$0}if(B.cL===s){r=$.cuL() +break $label0$0}throw A.d(A.iB(u.P))}q=r +r=n.a +r.toString +p=n.d +if(p==null){p=A.hH(!0,m,!0,!0,m,m,!1) +n.d=p}o=$.cur() +return new A.a98(o,p,r.w,A.dvJ(),q,m,m)}} +A.aWL.prototype={ +H(){return"_SliderType."+this.b}} +A.aEN.prototype={ +H(){return"SliderInteraction."+this.b}} +A.Fk.prototype={ +J(){return new A.aiG(new A.aR(null,t.A),new A.wf(),null,null,B.f)}} +A.aiG.prototype={ +ghb(a){var s=this.a.cx +if(s==null){s=this.as +s.toString}return s}, +a8(){var s,r=this,q=null +r.an() +r.d=A.bQ(q,B.b1,q,1,q,r) +r.e=A.bQ(q,B.b1,q,1,q,r) +r.f=A.bQ(q,B.hw,q,1,q,r) +r.r=A.bQ(q,B.w,q,1,q,r) +s=r.f +r.a.toString +s.sj(0,1) +r.r.sj(0,r.akb(r.a.c)) +r.y=A.a1([B.buV,new A.ej(r.gaVz(),new A.bN(A.a([],t.h),t.b),t.f6)],t.u,t.od) +if(r.a.cx==null)if(r.as==null)r.as=A.hH(!0,q,!0,!0,q,q,!1)}, +m(){var s=this,r=s.w +if(r!=null)r.ao(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.hB(0) +r=s.ch +if(r!=null)r.m() +s.ch=null +r=s.as +if(r!=null)r.m() +s.aU9()}, +bis(a){var s=this.a48(a),r=this.a +if(s!==r.c)r.e.$1(s)}, +a62(a){var s +this.Q=!0 +s=this.a.f +if(s!=null)s.$1(this.a48(a))}, +a60(a){var s +this.Q=!1 +s=this.a.r +if(s!=null)s.$1(this.a48(a))}, +aVA(a){var s,r=this.x,q=$.an.U$.z.i(0,r).gai() +q.toString +t.kl.a(q) +r=$.an.U$.z.i(0,r).a0(t.I) +r.toString +s=r.w +switch(a.a.a){case 0:switch(s.a){case 0:q.W1() +break +case 1:q.Xv() +break}break +case 1:switch(s.a){case 0:q.Xv() +break +case 1:q.W1() +break}break +case 2:q.Xv() +break +case 3:q.W1() +break}}, +b3Z(a){if(a!==this.at)this.C(new A.cfn(this,a))}, +b4h(a){if(a!==this.ax)this.C(new A.cfo(this,a))}, +a48(a){var s=this.a,r=s.x +s=s.w +return a*(r-s)+s}, +akb(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.aF(p*s)/s:p}, +q(a){var s,r,q,p,o,n,m,l=this,k=null +switch(l.a.dx.a){case 0:return l.aj3(a) +case 1:switch(A.G(a).w.a){case 0:case 1:case 3:case 5:return l.aj3(a) +case 2:case 4:s=l.a +r=s.c +q=s.e +p=s.f +o=s.r +n=s.w +m=s.x +s=s.y +return new A.ba(1/0,k,new A.a1q(r,q,p,o,n,m,s,k,B.r,k),k)}break}}, +aj3(b5){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={},b0=A.G(b5),b1=a9.a=A.cz3(b5),b2=new A.cfi(b5,4,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8),b3=b2.gI4(),b4=A.b9(t.ui) +a7.a.toString +if(a7.ax)b4.B(0,B.P) +if(a7.at)b4.B(0,B.R) +if(a7.Q)b4.B(0,B.hT) +s=b1.dx +if(s==null)s=b3 +if(s instanceof A.bA1){r=b1.ay +if(r==null){q=b0.ay +p=q.db +q=q.cy +r=A.PO(A.Y(153,p.gj(p)>>>16&255,p.gj(p)>>>8&255,p.gj(p)&255),A.Y(B.e.aF(229.5),q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255))}}else{a7.a.toString +r=b1.ay +if(r==null)r=b0.ay.b}q=b1.a +if(q==null)q=b2.a +a7.a.toString +p=b1.b +if(p==null)p=b2.gyd() +a7.a.toString +o=a9.a.c +if(o==null)o=b2.gzn() +a7.a.toString +n=a9.a.d +if(n==null)n=b2.gDA() +m=a9.a.e +if(m==null)m=b2.gG8() +l=a9.a.r +if(l==null)l=b2.gGa() +k=a9.a.f +if(k==null)k=b2.gGb() +a7.a.toString +j=a9.a.w +if(j==null)j=b2.gFg() +a7.a.toString +i=a9.a.x +if(i==null)i=b2.gGK() +h=a9.a.y +if(h==null)h=b2.gG7() +g=a9.a.z +if(g==null)g=b2.gG9() +a7.a.toString +f=a9.a.Q +if(f==null)f=b2.gkV() +e=a9.a.at +if(e==null)e=b2.gGc() +d=new A.cfl(a9,a7,b4,b2).$0() +c=a9.a +b=c.db +if(b==null)b=B.a5l +a=c.cx +if(a==null)a=B.a5j +a0=c.cy +if(a0==null)a0=B.bki +a1=c.CW +if(a1==null)a1=B.AC +a2=c.go +if(a2==null)a2=B.XW +c=c.id +a9.a=b1.bso(j,p,h,m,g,l,k,e,i,o,d,a1,n,a2,f,a0,a,q,b,r,s,c==null?b2.gI5():c) +a7.a.toString +q=A.d2(a8,b4,t.GE) +if(q==null)a3=a8 +else a3=q +if(a3==null)a3=B.eu.a5(b4) +a7.a.toString +switch(b0.w.a){case 0:case 1:case 2:case 3:case 4:a4=a8 +break +case 5:a4=new A.cfk(a7) +break +default:a4=a8}switch(A.bC(b5,B.k5,t.l).w.ch.a){case 1:a5=B.aWu +break +case 0:a5=B.aZD +break +default:a5=a8}b4=A.cG(b5,B.bn) +b4=b4==null?a8:b4.gdZ() +a6=(b4==null?B.Y:b4).a88(0,1.3).a +b4=a7.y +b4===$&&A.b() +q=a7.ghb(0) +p=a7.akb(a7.a.c) +o=a7.a +n=o.y +o=o.z +m=a9.a +l=new A.cfm(b5).$0() +k=a7.a +j=k.x +k=k.w +k=j>k?a7.gbir():a8 +q=A.aui(b4,!1,new A.yj(a7.ay,new A.aWJ(p,a8,n,o,m,a6,l,k,a7.ga61(),a7.ga6_(),a8,a7,a7.at,a7.ax,B.bmK,a7.x),a8),!0,q,!0,a3,a8,a7.gb3Y(),a7.gb4g(),a5) +return new A.bX(A.ci(a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a4,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,a8,!0,a8,a8,a8,a8,a8,a8,a8),!0,!1,!1,!1,q,a8)}, +a0p(){var s,r,q=this +if(q.ch==null){q.ch=A.rK(new A.cfp(q),!1,!1,!1) +s=q.c +s.toString +q.a.toString +s=A.a5d(s,t.N1) +s.toString +r=q.ch +r.toString +s.uz(0,r)}}} +A.cfn.prototype={ +$0(){this.a.at=this.b}, +$S:0} +A.cfo.prototype={ +$0(){this.a.ax=this.b}, +$S:0} +A.cfl.prototype={ +$0(){var s,r,q,p=this +p.b.a.toString +s=p.c +r=t._ +q=A.d2(p.a.a.ax,s,r) +return q==null?A.d2(p.d.gew(),s,r):q}, +$S:183} +A.cfm.prototype={ +$0(){return A.bC(this.a,B.di,t.l).w.a}, +$S:184} +A.cfk.prototype={ +$0(){var s=this.a +if(!s.ghb(0).ge2()&&s.ghb(0).ghP())s.ghb(0).ho()}, +$S:0} +A.cfp.prototype={ +$1(a){var s=this.a +return A.bao(new A.aZs(s,null),s.ay,B.h,!0)}, +$S:437} +A.aWJ.prototype={ +aR(a){var s,r=this,q=a.a0(t.I) +q.toString +s=A.G(a) +return A.dj5(r.CW,r.f,A.bC(a,B.is,t.l).w.CW,r.ay,r.ch,r.r,r.as,r.Q,r.z,s.w,r.y,r.e,r.at,r.w,r.ax,q.w,r.x,r.d)}, +b_(a,b){var s,r,q=this +b.sMB(q.f) +b.sj(0,q.d) +b.saKo(q.e) +b.sNA(0,q.r) +b.sa0s(q.w) +b.sir(q.x) +b.sa00(q.y) +b.sjo(q.z) +b.dP=q.Q +b.eX=q.as +s=a.a0(t.I) +s.toString +b.sd5(s.w) +b.sa07(q.at) +b.sacN(0,A.G(a).w) +b.se2(q.ay) +b.sab7(q.ch) +s=A.bC(a,B.is,t.l).w.CW +r=b.aJ +r===$&&A.b() +r.b=s +r=b.U +r===$&&A.b() +r.b=s +b.sbmD(q.CW)}} +A.Yn.prototype={ +aVs(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.Fb() +s=new A.Ri(A.N(t.S,t.EG)) +r=A.Rt(o,o,o) +r.w=s +r.ch=p.ga61() +r.CW=p.gbit() +r.cx=p.ga6_() +r.cy=p.gb0v() +r.b=c +p.aJ=r +r=A.t5(o,o,o) +r.w=s +r.be=p.gb6I() +r.bj=p.gb6N() +r.b=c +p.U=r +r=p.D +q=r.d +q===$&&A.b() +p.N=A.cI(B.aa,q,o) +q=r.e +q===$&&A.b() +q=A.cI(B.aa,q,o) +q.a.je(new A.ccu(p)) +p.a4=q +r=r.f +r===$&&A.b() +p.ag=A.cI(B.cN,r,o)}, +ga4s(){var s=this.gas8() +return new A.O(s,new A.ccs(),A.X(s).h("O<1,U>")).i6(0,B.iC)}, +ga4r(){var s=this.gas8() +return new A.O(s,new A.ccr(),A.X(s).h("O<1,U>")).i6(0,B.iC)}, +gas8(){var s,r,q=this.e8 +q.CW.toString +s=q.cy +s.toString +r=this.er!=null +if(r)s=s.a +else s=s.a +s*=2 +return A.a([new A.V(48,48),new A.V(s,s),q.cx.Ab(r,q)],t.X4)}, +ga6m(){var s=this.e8 +return s.db.PO(!1,this,s)}, +sj(a,b){var s,r,q=this,p=q.ez,o=p!=null&&p>0?q.En(b):b +if(o===q.ck)return +q.ck=o +p=q.ez +p=p!=null&&p>0 +s=q.D.r +if(p){s===$&&A.b() +p=s.x +p===$&&A.b() +r=Math.abs(o-p) +s.e=r!==0?new A.aU(B.e.aF(75e3*(1/r))):B.w +s.z=B.b_ +s.kn(o,B.cN,null)}else{s===$&&A.b() +s.sj(0,o)}q.cs()}, +saKo(a){if(a==this.eA)return +this.eA=a +this.cs()}, +sacN(a,b){if(this.eq===b)return +this.eq=b +this.cs()}, +sa07(a){return}, +sMB(a){if(a==this.ez)return +this.ez=a +this.aV()}, +sNA(a,b){if(b==this.dA)return +this.dA=b +this.Fb()}, +sa0s(a){if(a.l(0,this.e8))return +this.e8=a +this.Fb()}, +sir(a){if(a===this.hS)return +this.hS=a +this.Fb()}, +sa00(a){if(a.l(0,this.bk))return +this.bk=a +this.aV()}, +sjo(a){var s,r,q=this +if(J.q(a,q.er))return +s=q.er +q.er=a +r=a!=null +if(s!=null!==r){s=q.D.f +if(r){s===$&&A.b() +s.cM(0)}else{s===$&&A.b() +s.eI(0)}q.aV() +q.cs()}}, +sd5(a){if(a===this.dr)return +this.dr=a +this.Fb()}, +se2(a){var s,r,q=this +if(a===q.dQ)return +q.dQ=a +s=q.D +r=s.d +if(a){r===$&&A.b() +r.cM(0) +if(q.gtp()){s=s.e +s===$&&A.b() +s.cM(0)}}else{r===$&&A.b() +r.eI(0) +if(q.gtp()){s=s.e +s===$&&A.b() +s.eI(0)}}q.cs()}, +sab7(a){if(a===this.fA)return +this.fA=a +this.atJ(a)}, +sbyi(a){var s=this +if(a===s.iQ)return +s.iQ=a +s.atJ(s.fA)}, +sbmD(a){if(a===this.eT)return +this.eT=a +this.cs()}, +atJ(a){var s,r=this +if(a&&r.iQ){s=r.D.d +s===$&&A.b() +s.cM(0)}else if(!r.aW&&!r.dQ){s=r.D.d +s===$&&A.b() +s.eI(0)}}, +gtp(){switch(this.e8.go.a){case 0:var s=this.ez +return s!=null&&s>0 +case 1:s=this.ez +return!(s!=null&&s>0) +case 2:return!0 +case 3:return!1}}, +gaW_(){switch(this.eq.a){case 2:case 4:return 0.1 +case 0:case 1:case 3:case 5:return 0.05}}, +Fb(){var s=this,r=null,q=s.dA,p=s.aq +if(q!=null){p.sce(0,A.cy(r,r,r,s.e8.id,q)) +p.sd5(s.dr) +p.sdZ(new A.li(s.hS)) +p.qt()}else p.sce(0,r) +s.a9()}, +Ea(){this.QQ() +this.aq.a9() +this.Fb()}, +aA(a){var s,r,q=this +q.aTR(a) +s=q.N +s===$&&A.b() +r=q.gfk() +s.a.a3(0,r) +s=q.a4 +s===$&&A.b() +s.a.a3(0,r) +s=q.ag +s===$&&A.b() +s.a.a3(0,r) +s=q.D.r +s===$&&A.b() +s.cY() +s=s.em$ +s.b=!0 +s.a.push(r)}, +ar(a){var s,r=this,q=r.N +q===$&&A.b() +s=r.gfk() +q.a.O(0,s) +q=r.a4 +q===$&&A.b() +q.a.O(0,s) +q=r.ag +q===$&&A.b() +q.a.O(0,s) +q=r.D.r +q===$&&A.b() +q.O(0,s) +r.aTS(0)}, +m(){var s=this,r=s.aJ +r===$&&A.b() +r.p1.V(0) +r.lW() +r=s.U +r===$&&A.b() +r.q1() +r.lW() +s.aq.m() +s.ig()}, +b2I(a){switch(this.dr.a){case 0:return 1-a +case 1:return a}}, +En(a){var s=A.Z(a,0,1),r=this.ez +if(r!=null&&r>0){r.toString +s=B.e.aF(s*r)/r}return s}, +asi(a){var s,r,q,p=this,o=p.D +if(o.c==null)return +o.a0p() +if(!p.aW&&p.er!=null){switch(p.eT.a){case 0:case 1:p.aW=!0 +s=p.hZ(a) +r=p.ga6m() +q=p.ga6m() +p.aT=p.b2I((s.a-r.a)/(q.c-q.a)) +break +case 3:s=p.aU +s.toString +if(s.p(0,p.hZ(a))){p.aW=!0 +p.aT=p.ck}break +case 2:p.dP.$1(p.En(p.ck)) +break}if(p.aW){p.dP.$1(p.En(p.ck)) +s=p.er +s.toString +s.$1(p.En(p.aT)) +s=o.d +s===$&&A.b() +s.cM(0) +if(p.gtp()){s=o.e +s===$&&A.b() +s.cM(0) +s=o.w +if(s!=null)s.ao(0) +o.w=A.d3(new A.aU(5e5),new A.cct(p))}}}}, +a2I(){var s,r,q=this,p=q.D +if(p.c==null)return +if(q.aW&&!0){q.eX.$1(q.En(q.aT)) +s=q.aW=!1 +q.aT=0 +r=p.d +r===$&&A.b() +r.eI(0) +if(q.gtp()?p.w==null:s){p=p.e +p===$&&A.b() +p.eI(0)}}}, +a62(a){this.asi(a.b)}, +biu(a){var s,r,q,p=this +if(p.D.c==null)return +s=p.aW +if(!s&&p.eT===B.bmL){s=p.aW=!0 +p.aT=p.ck}switch(p.eT.a){case 0:case 2:case 3:if(s&&p.er!=null){s=a.c +s.toString +r=p.ga6m() +q=s/(r.c-r.a) +switch(p.dr.a){case 0:p.aT-=q +break +case 1:p.aT+=q +break}s=p.er +s.toString +s.$1(p.En(p.aT))}break +case 1:break}}, +a60(a){this.a2I()}, +b6J(a){this.asi(a.a)}, +b6O(a){this.a2I()}, +kw(a){return!0}, +n8(a,b){var s,r=this +if(r.D.c==null)return +if(t.pY.b(a)&&r.er!=null){s=r.aJ +s===$&&A.b() +s.m9(a) +s=r.U +s===$&&A.b() +s.m9(a)}if(r.er!=null&&r.aU!=null){s=r.aU +s.toString +r.sbyi(s.p(0,a.gev()))}}, +bo(a){return 144+this.ga4s()}, +bb(a){return 144+this.ga4s()}, +bh(a){var s=this.e8.a +s.toString +return Math.max(s,this.ga4r())}, +bi(a){var s=this.e8.a +s.toString +return Math.max(s,this.ga4r())}, +gka(){return!0}, +cX(a){var s,r=a.b +r=r<1/0?r:144+this.ga4s() +s=a.d +if(!(s<1/0)){s=this.e8.a +s.toString +s=Math.max(s,this.ga4r())}return new A.V(r,s)}, +aI(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.D,a4=a3.r +a4===$&&A.b() +a4=a4.x +a4===$&&A.b() +s=a1.eA +switch(a1.dr.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.e8 +p=a4.db +p.toString +o=a1.ez +n=p.PP(o!=null&&o>0,a6,a1,a4) +a4=n.a +p=n.c-a4 +m=new A.j(a4+r*p,n.gc1().b) +if(a1.er!=null){a1.e8.CW.toString +a1.aU=A.jQ(m,24)}l=q!=null?new A.j(a4+q*p,n.gc1().b):a2 +o=a1.e8 +k=o.db +k.toString +j=a1.ag +j===$&&A.b() +i=a1.dr +h=a1.ez +h=h!=null&&h>0 +k.aCX(a5,a6,j,h,a1.er!=null,a1,l,o,i,m) +o=a1.N +o===$&&A.b() +if(o.gbM(0)!==B.a6){o=a1.e8 +k=o.CW +k.toString +j=a1.N +i=a1.ag +h=a1.ez +h=h!=null&&h>0 +g=a1.dr +f=a1.ck +e=a1.hS +d=a1.bk.gad(0)?a1.gu(0):a1.bk +k.zI(a5,m,j,i,h,a1.aq,a1,d,o,g,e,f)}o=a1.ez +if(o!=null&&o>0){o=a1.e8 +o=o.cx.Ab(a1.er!=null,o) +c=n.d-n.b +b=p-c +p=a1.ez +p.toString +if(b/p>=3*o.a){a=n.gc1().b +p=c/2 +a0=0 +while(!0){o=a1.ez +o.toString +if(!(a0<=o))break +k=a1.e8 +j=a1.ag +i=a1.dr +k.cx.bDn(a5,new A.j(a4+a0/o*b+p,a),j,a1.er!=null,a1,k,i,m);++a0}}}if(a1.er!=null)if(a1.dA!=null){a4=a1.a4 +a4===$&&A.b() +a4=a4.gbM(0)!==B.a6}else a4=!1 +else a4=!1 +if(a4)if(a1.gtp())a3.z=new A.ccv(a1,m) +a3=a1.e8 +a4=a3.cy +a4.toString +p=a1.N +o=a1.ag +k=a1.ez +k=k!=null&&k>0 +j=a1.dr +i=a1.ck +h=a1.hS +g=a1.bk.gad(0)?a1.gu(0):a1.bk +a4.zI(a5,m,p,o,k,a1.aq,a1,g,a3,j,h,i)}, +ji(a){var s,r=this +r.kH(a) +a.a=!1 +s=r.er +a.dn(B.q1,!0) +a.dn(B.q_,s!=null) +a.bO=r.dr +a.e=!0 +if(r.er!=null){a.sCM(r.gbyB()) +a.sCK(r.gbtn())}s=r.ck +a.ry=new A.et(""+B.e.aF(s*100)+"%",B.aS) +a.e=!0 +a.to=new A.et(""+B.e.aF(A.Z(s+r.gTV(),0,1)*100)+"%",B.aS) +a.e=!0 +a.x1=new A.et(""+B.e.aF(A.Z(r.ck-r.gTV(),0,1)*100)+"%",B.aS) +a.e=!0}, +gTV(){var s=this.ez +return s!=null?1/s:this.gaW_()}, +Xv(){var s,r=this +if(r.er!=null){r.dP.$1(A.Z(r.ck,0,1)) +s=A.Z(r.ck+r.gTV(),0,1) +r.er.$1(s) +r.eX.$1(s)}}, +W1(){var s,r=this +if(r.er!=null){r.dP.$1(A.Z(r.ck,0,1)) +s=A.Z(r.ck-r.gTV(),0,1) +r.er.$1(s) +r.eX.$1(s)}}} +A.ccu.prototype={ +$1(a){var s,r +if(a===B.a6){s=this.a.D +r=s.ch +if(r!=null)r.hB(0) +r=s.ch +if(r!=null)r.m() +s.ch=null}}, +$S:10} +A.ccs.prototype={ +$1(a){return a.a}, +$S:119} +A.ccr.prototype={ +$1(a){return a.b}, +$S:119} +A.cct.prototype={ +$0(){var s=this.a,r=s.D +r.w=null +if(!s.aW){s=r.e +s===$&&A.b() +s=s.Q +s===$&&A.b() +s=s===B.a9}else s=!1 +if(s){s=r.e +s===$&&A.b() +s.eI(0)}}, +$S:0} +A.ccv.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i=this.a +if(i.y!=null){s=i.e8.dx +s.toString +r=b.S(0,this.b) +q=i.a4 +q===$&&A.b() +p=i.ag +p===$&&A.b() +o=i.ez +o=o!=null&&o>0 +n=i.e8 +m=i.dr +l=i.ck +k=i.hS +j=i.bk.gad(0)?i.gu(0):i.bk +s.zI(a,r,q,p,o,i.aq,i,j,n,m,k,l)}}, +$S:14} +A.v_.prototype={} +A.YH.prototype={ +H(){return"_SliderAdjustmentType."+this.b}} +A.aZs.prototype={ +aR(a){var s,r=new A.aVo(this.d,!1,A.aw(t.T)) +r.aQ() +s=r.N.e +s===$&&A.b() +r.D=A.cI(B.aa,s,null) +return r}, +b_(a,b){b.N=this.d}} +A.aVo.prototype={ +gka(){return!0}, +aA(a){var s,r,q=this +q.aTV(a) +s=q.D +s===$&&A.b() +r=q.gfk() +s.a.a3(0,r) +s=q.N.r +s===$&&A.b() +s.cY() +s=s.em$ +s.b=!0 +s.a.push(r)}, +ar(a){var s,r=this,q=r.D +q===$&&A.b() +s=r.gfk() +q.a.O(0,s) +q=r.N.r +q===$&&A.b() +q.O(0,s) +r.aTX(0)}, +aI(a,b){var s=this.N.z +if(s!=null)s.$2(a,b)}, +cX(a){return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}} +A.cfi.prototype={ +gm4(){var s,r=this,q=r.p1 +if(q===$){s=A.G(r.ok) +r.p1!==$&&A.a_() +q=r.p1=s.ay}return q}, +gyd(){return this.gm4().b}, +gzn(){var s=this.gm4(),r=s.dx +return r==null?s.cy:r}, +gDA(){var s=this.gm4().b +return A.Y(138,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gG8(){var s=this.gm4().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gGa(){var s=this.gm4().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gGb(){var s=this.gm4().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gFg(){var s=this.gm4().c +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gGK(){var s=this.gm4(),r=s.dy +s=r==null?s.db:r +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gG7(){var s=this.gm4().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gG9(){var s=this.gm4().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}, +gkV(){return this.gm4().b}, +gGc(){var s=this.gm4().db +return A.PO(A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),this.gm4().cy)}, +gew(){return A.XQ(new A.cfj(this))}, +gI5(){var s=A.G(this.ok).p3.at +s.toString +return s.bu(this.gm4().c)}, +gI4(){return B.a4B}} +A.cfj.prototype={ +$1(a){var s +if(a.p(0,B.hT)){s=this.a.gm4().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.gm4().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.gm4().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return B.D}, +$S:7} +A.aln.prototype={ +aA(a){this.ea(a) +$.jo.eS$.a.B(0,this.gpZ())}, +ar(a){$.jo.eS$.a.F(0,this.gpZ()) +this.e5(0)}} +A.alq.prototype={ +aA(a){this.ea(a) +$.jo.eS$.a.B(0,this.gpZ())}, +ar(a){$.jo.eS$.a.F(0,this.gpZ()) +this.e5(0)}} +A.aly.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.a9N.prototype={ +x0(a,b,c){return A.cMh(c,this.w)}, +ed(a){return!this.w.l(0,a.w)}} +A.bFQ.prototype={ +H(){return"ShowValueIndicator."+this.b}} +A.VT.prototype={ +H(){return"Thumb."+this.b}} +A.V7.prototype={ +a8K(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){var s=this,r=d5==null?s.a:d5,q=b2==null?s.gyd():b2,p=c0==null?s.gzn():c0,o=c9==null?s.gDA():c9,n=b4==null?s.gG8():b4,m=b6==null?s.gGa():b6,l=b7==null?s.gGb():b7,k=b1==null?s.gFg():b1,j=b9==null?s.gGK():b9,i=b3==null?s.gG7():b3,h=b5==null?s.gG9():b5,g=d1==null?s.gkV():d1,f=c2==null?s.as:c2,e=b8==null?s.gGc():b8,d=c3==null?s.gew():c3,c=d7==null?s.ay:d7,b=c4==null?s.CW:c4,a=d4==null?s.cx:d4,a0=d3==null?s.cy:d3,a1=d6==null?s.db:d6,a2=d8==null?s.gI4():d8,a3=c6==null?s.dy:c6,a4=c5==null?s.fr:c5,a5=c7==null?s.fx:c7,a6=c8==null?s.fy:c8,a7=d0==null?s.go:d0,a8=d9==null?s.gI5():d9,a9=c1==null?s.k1:c1,b0=d2==null?s.k2:d2 +return A.cz2(k,q,s.k4,i,n,h,m,l,e,j,p,a9,s.k3,f,d,b,a4,a3,a5,a6,o,a7,g,b0,a0,a,r,a1,c,a2,s.ch,a8)}, +brX(a){var s=null +return this.a8K(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s)}, +bso(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1,a2,a3){var s=null +return this.a8K(a,b,c,d,e,f,g,h,i,j,s,s,k,l,s,s,s,s,m,n,o,s,p,q,r,a0,a1,a2,a3)}, +bsp(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 this.a8K(a,b,c,d,e,f,s,g,h,i,j,k,l,m,n,o,p,q,s,r,a0,a1,s,s,a2,s,a3,s,a4)}, +gv(a){var s=this +return A.ad(s.a,s.gyd(),s.gzn(),s.gDA(),s.gG8(),s.gGa(),s.gGb(),s.gFg(),s.gGK(),s.gG7(),s.gG9(),s.gkV(),s.as,s.gGc(),s.gew(),s.ay,s.CW,s.cx,s.cy,A.ad(s.db,s.gI4(),s.dy,s.fr,s.fx,s.fy,s.go,s.gI5(),s.k1,s.k2,s.k3,s.k4,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.az(b)!==A.I(r))return!1 +if(b instanceof A.V7)if(b.a==r.a)if(J.q(b.gyd(),r.gyd()))if(J.q(b.gzn(),r.gzn()))if(J.q(b.gDA(),r.gDA()))if(J.q(b.gG8(),r.gG8()))if(J.q(b.gGa(),r.gGa()))if(J.q(b.gGb(),r.gGb()))if(J.q(b.gFg(),r.gFg()))if(J.q(b.gGK(),r.gGK()))if(J.q(b.gG7(),r.gG7()))if(J.q(b.gG9(),r.gG9()))if(J.q(b.gkV(),r.gkV()))if(J.q(b.as,r.as))if(J.q(b.gGc(),r.gGc()))if(J.q(b.gew(),r.gew()))if(J.q(b.ay,r.ay))if(J.q(b.ch,r.ch))if(b.CW==r.CW)if(b.cx==r.cx)if(b.cy==r.cy)if(b.db==r.db)if(b.gI4()==r.gI4())if(b.dy==r.dy)if(b.fr==r.fr)if(b.fx==r.fx)if(b.fy==r.fy)if(b.go==r.go)if(J.q(b.gI5(),r.gI5()))if(b.k1==r.k1)if(J.q(b.k2,r.k2))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 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gyd(){return this.b}, +gzn(){return this.c}, +gDA(){return this.d}, +gG8(){return this.e}, +gGb(){return this.f}, +gGa(){return this.r}, +gFg(){return this.w}, +gGK(){return this.x}, +gG7(){return this.y}, +gG9(){return this.z}, +gkV(){return this.Q}, +gGc(){return this.at}, +gew(){return this.ax}, +gI4(){return this.dx}, +gI5(){return this.id}} +A.bGv.prototype={} +A.bGw.prototype={} +A.bGx.prototype={} +A.bzs.prototype={} +A.bzv.prototype={} +A.bzt.prototype={} +A.bzu.prototype={} +A.b5Z.prototype={ +qS(a,b,c,d,e){var s,r,q,p,o=e.cy +o.toString +if(b)o=o.a +else o=o.a +o*=2 +e.CW.toString +s=e.a +s.toString +r=c.a+Math.max(24,o/2) +q=c.b+(d.gu(0).b-s)/2 +p=r+d.gu(0).a-Math.max(o,48) +return new A.W(Math.min(r,p),q,Math.max(r,p),q+s)}, +PO(a,b,c){return this.qS(a,!1,B.h,b,c)}, +PP(a,b,c,d){return this.qS(a,!1,b,c,d)}} +A.bCm.prototype={ +aCX(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=$.ar() +s=a.aP() +r=new A.fp(a7.e,a7.b).ah(0,a2.gj(0)) +r.toString +s.sa6(0,r) +q=a.aP() +r=new A.fp(a7.r,a7.c).ah(0,a2.gj(0)) +r.toString +q.sa6(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.qS(a3,a4,a1,a5,a7) +r=n.d +m=n.b +l=r-m +k=l/2 +j=new A.bb(k,k) +l=(l+2)/2 +i=new A.bb(l,l) +l=a0.gbY(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.dh(A.qB(n.a,h,g,f,d,B.J,e,B.J),o) +e=a0.gbY(a0) +l=a8===B.ae +h=l?m-1:m +f=l?r+1:r +d=l?i:j +l=l?i:j +e.dh(A.qB(g,h,n.c,f,B.J,l,B.J,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.gbY(a).h3(b,m,o)}} +A.bCi.prototype={ +Ab(a,b){var s=b.a +s.toString +s=s/4*2 +return new A.V(s,s)}, +bDo(a,b,c,d,e,f,g,h,i){var s,r,q,p,o,n +switch(i.a){case 1:s=b.a +r=h.a0)a.gbY(a).h3(b,n,o)}} +A.a8D.prototype={ +zI(a,b,c,d,e,f,g,h,i,j,k,l){var s,r,q,p=a.gbY(a),o=this.a,n=t.Y,m=new A.fp(i.at,i.Q).ah(0,d.gj(0)) +m.toString +s=new A.aP(o,o,n).ah(0,d.gj(0)) +r=new A.aP(this.c,this.d,n).ah(0,c.gj(0)) +n=$.ar() +q=n.dc() +o=2*s +q.vM(A.oq(b,o,o),0,6.283185307179586) +p.uf(q,B.B,r,!0) +o=n.aP() +o.sa6(0,m) +p.h3(b,s,o)}} +A.bCh.prototype={ +aCW(a,b,c,d,e,f,g,h,i,j){var s,r,q,p,o,n=a.gbY(a),m=t.Y,l=new A.aP(10,10,m).ah(0,d.gj(0)) +if(f){s=$.ar().aP() +r=h.as +r.toString +s.sa6(0,r) +s.se4(1) +s.sbN(0,B.a7) +n.h3(b,l,s)}r=new A.fp(h.at,h.Q).ah(0,d.gj(0)) +r.toString +q=g?new A.aP(1,6,m).ah(0,c.gj(0)):1 +m=$.ar() +p=m.dc() +o=2*l +p.vM(A.oq(b,o,o),0,6.283185307179586) +n.uf(p,B.B,q,!0) +m=m.aP() +m.sa6(0,r) +n.h3(b,l,m)}} +A.bCj.prototype={ +zI(a,b,c,d,e,f,g,h,i,j,k,l){var s=a.gbY(a),r=new A.aP(0,24,t.Y).ah(0,c.gj(0)),q=$.ar().aP(),p=i.ax +p.toString +q.sa6(0,p) +s.h3(b,r,q)}} +A.bA1.prototype={} +A.bA0.prototype={ +aeH(a,b,c,d,e,f){return B.mF.PE(b,c,d,a.gj(0),e,f)}, +aCY(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var s=a.gbY(a),r=c.gj(0),q=j.ay +q.toString +B.mF.acE(q,s,b,g,h,r,i,f?j.as:j.ch,l)}} +A.cbB.prototype={ +aeX(a,b){var s=this.a6M(a,1,b),r=a.b.a.a +return new A.V(s,r.gdK(r)+16)}, +PE(a,b,c,d,e,f){var s=this.a6M(b,d,f),r=s/2,q=A.cK(c.cf(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}}, +a6M(a,b,c){return(Math.max(16*c,a.b.b)+32)*b}, +acE(a,b,c,d,e,f,g,h,i){var s,r,q,p,o,n,m,l,k,j +if(f===0)return +s=this.a6M(d,f,i) +r=this.PE(c,d,e,f,g,i) +q=d.b.a.a +p=q.gdK(q)+16 +q=-s/2+r +o=-8-p +n=o+p +m=$.ar() +l=m.dc() +l.ds(0,-8,-8) +l.ds(0,8,-8) +l.aO(0) +k=m.aP() +k.sa6(0,a) +l.iM(A.jq(new A.W(q,o,q+s,n),B.dA)) +b.d6(0) +b.ba(0,c.a,c.b-14) +b.jt(0,f,f) +if(h!=null){j=m.aP() +j.sa6(0,h) +j.se4(1) +j.sbN(0,B.a7) +b.ey(l,j)}b.ey(l,k) +q=n-o +b.ba(0,0,-8-q) +o=d.b +n=o.b +o=o.a.a +d.aI(b,new A.j(r,q/2).W(0,new A.j(n/2,o.gdK(o)/2))) +b.de(0)}} +A.kn.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.kn&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return"RangeValues("+A.r(this.a)+", "+A.r(this.b)+")"}} +A.a7B.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.a7B&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return"RangeLabels("+this.a+", "+this.b+")"}} +A.bei.prototype={ +zI(a,b,c,d,e,f,g,h,i,j,k,l){var s=a.gbY(a),r=c.gj(0),q=i.ay +q.toString +B.a5Q.acE(q,s,b,f,g,r,h,i.ch,k)}} +A.bYb.prototype={ +PE(a,b,c,d,e,f){var s=this.auj(b,d),r=s/2,q=A.cK(c.cf(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}}, +auj(a,b){return(Math.max(20,a.b.b)+8)*b}, +acE(a,b,c,d,e,f,g,h,i){var s,r,q,p,o,n,m,l,k,j +if(f===0)return +s=this.auj(d,f) +r=this.PE(c,d,e,f,g,i) +q=-s/2+r +p=new A.W(q,-34,q+s,-6) +q=$.ar() +o=q.aP() +o.sa6(0,a) +b.d6(0) +b.ba(0,c.a,c.b-16) +b.jt(0,f,f) +n=A.ed(4) +m=p.giu()/2 +l=A.rf(n,A.tw(new A.bb(m,m)),1).hq(p) +k=q.dc() +k.ds(0,-10,-10) +k.ds(0,10,-10) +k.aO(0) +k.iM(l) +if(h!=null){j=q.aP() +j.sa6(0,h) +j.se4(1) +j.sbN(0,B.a7) +b.ey(k,j)}b.ey(k,o) +b.ba(0,0,-36) +q=d.b +n=q.b +q=q.a.a +d.aI(b,new A.j(r,16).W(0,new A.j(n/2,q.gdK(q)/2))) +b.de(0)}} +A.aVI.prototype={} +A.aVJ.prototype={} +A.aWK.prototype={} +A.wJ.prototype={ +H(){return"SnackBarClosedReason."+this.b}} +A.Vb.prototype={ +J(){return new A.aiJ(B.f)}} +A.aiJ.prototype={ +a8(){this.an() +var s=this.a.ch +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(this.ga4H())}, +b1(a){var s,r,q=this +q.bc(a) +s=a.ch +if(q.a.ch!=s){r=q.ga4H() +s.fW(r) +s=q.a.ch +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(r)}}, +m(){this.a.ch.fW(this.ga4H()) +this.ap()}, +baL(a){switch(a.a){case 0:case 1:case 2:break +case 3:this.a.toString +this.d=!0 +break}}, +q(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=this,a4=null,a5=t.l,a6=A.bC(b3,B.qK,a5).w,a7=A.G(b3),a8=a7.ay,a9=a7.eX,b0=a8.a===B.aN?a8.b:a8.f,b1=A.djg(b3),b2=a9.d +if(b2==null)b2=b1.gu8() +a3.a.toString +s=b1.gLG() +a3.a.toString +r=a9.w +b1.gIV() +q=s===B.bn1 +p=q?16:24 +o=a3.a +n=o.r +n=new A.eB(p,0,o.Q!=null||!1?0:p,0) +m=p/2 +o=o.ch +o.toString +l=A.cI(B.aa,o,a4) +o=a3.a.ch +o.toString +A.cI(B.aAx,o,a4) +o=a3.a.ch +o.toString +k=A.cI(B.aAk,o,a4) +o=a3.a.ch +o.toString +A.cI(B.aAu,o,B.Zi) +o=a3.a.ch +o.toString +j=A.cI(B.agz,o,B.Zi) +o=a3.a.Q +o=o==null?a4:o.r +if(o==null)o="" +i=A.jT(a4,a4,1,a4,A.cy(a4,a4,a4,A.G(b3).p3.as,o),B.ah,B.j,a4,1,B.Y,B.a0) +i.qt() +o=i.b +h=o.b +o=o.a.a +o.gdK(o) +o=a3.a.Q!=null?m:0 +i.m() +a3.a.toString +g=a9.x +if(g==null)g=b1.gNo() +a3.a.toString +f=A.bC(b3,B.di,a5).w.a.a-(g.a+g.c) +a3.a.toString +e=a9.Q +if(e==null)e=b1.gLl() +d=(h+o+0)/f>e +a5=t.p +o=A.a([],a5) +h=a3.a.Q +if(h!=null)o.push(new A.aA(new A.af(m,0,m,0),A.czg(h,new A.MB(A.VJ(a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,b0,a4,a4,a4,new A.af(p,0,p,0),a4,a4,a4,a4,a4,a4,a4,a4))),a4)) +h=a3.a +h=A.a([A.f7(A.bB(a4,A.h4(h.c,a4,a4,B.aG,!0,b2,a4,a4,B.a0),B.i,a4,a4,a4,a4,a4,a4,a4,B.aif,a4,a4,a4),1,a4)],a5) +if(!d)B.b.L(h,o) +if(d)h.push(new A.ba(f*0.4,a4,a4,a4)) +a5=A.a([A.eq(h,B.t,a4,B.o,B.u,a4,a4,B.x)],a5) +if(d)a5.push(new A.aA(B.ai9,A.eq(o,B.t,a4,B.fa,B.u,a4,a4,B.x),a4)) +c=new A.aA(n,A.acf(B.eQ,a5,B.i,B.bV,B.a_,a4,B.eQ,0,0,a4,B.x),a4) +if(!q)c=new A.iX(!0,!1,!0,!0,B.L,!1,c,a4) +a3.a.toString +b=a9.e +if(b==null)b=b1.gft(0) +a3.a.toString +a=a9.a +if(a==null)a=b1.gcv(0) +a3.a.toString +a0=a9.f +if(a0==null)a0=q?b1.gdg(0):a4 +a5=a3.a +o=a5.cx +a1=o==null?a9.ax:o +if(a1==null)a1=B.tW +o=a5.cy +c=A.fX(B.K,!0,a4,new A.pC(a7,c,a4),o,a,b,a4,a4,a0,a4,a4,B.bT) +if(q)c=new A.iX(!0,!1,!0,!1,B.L,!1,r!=null?A.bB(a4,c,B.i,a4,a4,a4,a4,a4,a4,new A.af(0,g.b,0,g.d),a4,a4,a4,r):new A.aA(g,c,a4),a4) +o=A.cGS(B.be,c,a1,B.bvP,new A.cfs(b3),a4) +c=new A.bX(A.ci(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,!0,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,new A.cft(b3),a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4),!0,!1,!1,!1,o,a4) +if(a6.z)a2=c +else a2=q&&!0?new A.dg(k,!1,A.hC(j,new A.cfu(j),c),a4):A.hC(l,new A.cfv(l),c) +a5=a5.c.k(0) +return A.avg(A.p3(a2,a3.a.cy,a4),a4,a4,a4,"",!0)}} +A.cft.prototype={ +$0(){var s=this.a.a0(t.Pu) +s.toString +s.f.aEE(B.bn2)}, +$S:0} +A.cfs.prototype={ +$1(a){var s=this.a.a0(t.Pu) +s.toString +s.f.aEE(B.bn3)}, +$S:553} +A.cfu.prototype={ +$2(a,b){return new A.fl(B.ms,null,this.a.gj(0),b,null)}, +$S:448} +A.cfv.prototype={ +$2(a,b){return new A.fl(B.ar,null,this.a.gj(0),b,null)}, +$S:448} +A.cfw.prototype={ +gvH(){var s,r=this,q=r.CW +if(q===$){q=r.ch +if(q===$){s=A.G(r.ay) +r.ch!==$&&A.a_() +r.ch=s +q=s}r.CW!==$&&A.a_() +q=r.CW=q.ay}return q}, +gcv(a){var s=this.gvH(),r=s.id +return r==null?s.db:r}, +gUD(){return A.XQ(new A.cfx(this))}, +gWb(){var s=this.gvH(),r=s.k2 +return r==null?s.c:r}, +gu8(){var s,r,q=A.G(this.ay).p3.z +q.toString +s=this.gvH() +r=s.k1 +return q.bu(r==null?s.cy:r)}, +gft(a){return 6}, +gdg(a){return B.pR}, +gLG(){return B.bn0}, +gNo(){return B.ais}, +gIV(){return!1}, +gVB(){var s=this.gvH(),r=s.k1 +return r==null?s.cy:r}, +gLl(){return 0.25}} +A.cfx.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){s=q.a.gvH() +r=s.k2 +return r==null?s.c:r}if(a.p(0,B.X)){s=q.a.gvH() +r=s.k2 +return r==null?s.c:r}if(a.p(0,B.P)){s=q.a.gvH() +r=s.k2 +return r==null?s.c:r}if(a.p(0,B.R)){s=q.a.gvH() +r=s.k2 +return r==null?s.c:r}s=q.a.gvH() +r=s.k2 +return r==null?s.c:r}, +$S:7} +A.aF_.prototype={ +H(){return"SnackBarBehavior."+this.b}} +A.Vc.prototype={ +gv(a){var s=this +return A.ad(s.gcv(s),s.gUD(),s.gWb(),s.gu8(),s.gft(s),s.gdg(s),s.gLG(),s.w,s.gNo(),s.gIV(),s.gVB(),s.gLl(),s.as,s.at,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.az(b)!==A.I(s))return!1 +return b instanceof A.Vc&&J.q(b.gcv(b),s.gcv(s))&&J.q(b.gUD(),s.gUD())&&J.q(b.gWb(),s.gWb())&&J.q(b.gu8(),s.gu8())&&b.gft(b)==s.gft(s)&&J.q(b.gdg(b),s.gdg(s))&&b.gLG()==s.gLG()&&b.w==s.w&&J.q(b.gNo(),s.gNo())&&b.gIV()==s.gIV()&&J.q(b.gVB(),s.gVB())&&b.gLl()==s.gLl()&&J.q(b.as,s.as)&&J.q(b.at,s.at)&&!0}, +gcv(a){return this.a}, +gUD(){return this.b}, +gWb(){return this.c}, +gu8(){return this.d}, +gft(a){return this.e}, +gdg(a){return this.f}, +gLG(){return this.r}, +gNo(){return this.x}, +gIV(){return null}, +gVB(){return this.z}, +gLl(){return this.Q}} +A.aX1.prototype={} +A.chk.prototype={ +H(){return"_SwitchType."+this.b}} +A.VA.prototype={ +b2F(a){var s,r=A.G(a),q=A.cMy(a),p=r.aer(t.wL);(p==null?B.AP:p).auP(r,q) +s=new A.aj9(a,A.G(a).ay) +switch(r.f.a){case 0:return new A.V(s.gahN(),s.gaUo()) +case 1:return new A.V(s.gahN(),s.gaUp())}}, +q(a){var s,r=null +switch(1){case 1:switch(A.G(a).w.a){case 0:case 1:case 3:case 5:break +case 2:case 4:break}break}s=this.b2F(a) +return new A.afX(this.c,this.d,r,r,r,r,r,r,r,r,r,r,r,r,r,B.m,r,r,r,r,r,r,r,!1,s,r,B.bAK,r)}} +A.afX.prototype={ +J(){var s=null +return new A.afY(new A.ajb(A.jT(s,s,s,s,s,B.ah,s,s,1,B.Y,B.a0),$.ae()),$,$,$,$,$,$,$,$,$,s,!1,!1,s,s,B.f)}} +A.afY.prototype={ +b1(a){var s,r=this +r.bc(a) +if(a.c!==r.a.c){s=r.rz$ +s===$&&A.b() +if(s.gj(0)===0||r.rz$.gj(0)===1)switch(r.a.k2.a){case 1:s=r.c +s.toString +switch(A.G(s).w.a){case 0:case 1:case 3:case 5:r.aG_() +break +case 2:case 4:s=r.rz$ +s.c=s.b=B.H +break}break +case 0:r.aG_() +break}r.UY()}}, +m(){this.d.m() +this.aTC()}, +gjo(){this.a.toString +return this.gbj9()}, +gadM(){return!1}, +gj(a){return this.a.c}, +aG_(){var s=this.c +s.toString +A.G(s) +s=this.rz$ +s===$&&A.b() +s.b=B.Cv +s.c=new A.o7(B.Cv)}, +gLj(){return new A.by(new A.c5R(this),t.U)}, +gauv(){return new A.by(new A.c5S(this),t.U)}, +gatd(){var s=this,r=s.a +switch(r.k2.a){case 1:r=s.c +r.toString +switch(A.G(r).w.a){case 0:case 1:case 3:case 5:return s.a.id.a-40 +case 2:case 4:r=s.c +r.toString +A.G(r) +return 20}break +case 0:return r.id.a-40}}, +bje(a){var s +if(this.gjo()!=null){s=this.us$ +s===$&&A.b() +s.cM(0)}}, +bjg(a){var s,r,q,p=this +if(p.gjo()!=null){s=p.rz$ +s===$&&A.b() +s.b=B.H +s.c=null +s=a.c +s.toString +r=s/p.gatd() +s=p.c.a0(t.I) +s.toString +switch(s.w.a){case 0:s=p.ur$ +s===$&&A.b() +q=s.x +q===$&&A.b() +s.sj(0,q-r) +break +case 1:s=p.ur$ +s===$&&A.b() +q=s.x +q===$&&A.b() +s.sj(0,q+r) +break}}}, +bjc(a){var s,r,q=this,p=q.rz$ +p===$&&A.b() +p=p.gj(0) +s=q.a +r=s.c +if(p>=0.5!==r){s.d.$1(!r) +q.C(new A.c5Q(q))}else q.UY() +p=q.us$ +p===$&&A.b() +p.eI(0)}, +bja(a){var s=this.a.d +a.toString +s.$1(a)}, +q(c3){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=this,c1=null,c2={} +if(c0.e){c0.e=!1 +c0.UY()}s=A.G(c3) +r=c2.a=A.cMy(c3) +q=s.ay +p=q.b +c2.b=null +switch(c0.a.k2.a){case 0:o=new A.aj9(c3,A.G(c3).ay) +n=A.cP2(c3) +c2.b=n +m=n +l=r +break +case 1:k=s.aer(t.wL) +l=c2.a=(k==null?B.AP:k).auP(s,r) +switch(s.w.a){case 0:case 1:case 3:case 5:o=new A.aj9(c3,A.G(c3).ay) +n=A.cP2(c3) +c2.b=n +m=n +break +case 2:case 4:c0.f=!0 +c0.a.toString +o=new A.ch0(c3,A.G(c3).ay) +n=new A.aXx(c3,c1,c1,c1,c1,c1,c1,c1,c1,c1) +c2.b=n +m=c0.us$ +m===$&&A.b() +m.e=B.K +m=n +break +default:m=c1 +o=m}break +default:m=c1 +l=r +o=m}j=c0.ur$ +j===$&&A.b() +j.e=A.cp(0,0,0,o.gaFB(),0,0) +i=c0.gmz() +i.B(0,B.S) +h=c0.gmz() +h.F(0,B.S) +c0.a.toString +g=c0.gLj().a.$1(i) +if(g==null){j=l.a +g=j==null?c1:j.a5(i)}j=g==null +if(j){f=m.gkV().a5(i) +f.toString +e=f}else e=g +c0.a.toString +d=c0.gLj().a.$1(h) +if(d==null){f=l.a +d=f==null?c1:f.a5(h)}f=d==null +if(f){c=m.gkV().a5(h) +c.toString +b=c}else b=d +c0.a.toString +c=c0.gauv().a.$1(i) +if(c==null){c=l.b +c=c==null?c1:c.a5(i)}if(c==null){c=c0.gLj().a.$1(i) +if(c==null)c=c1 +else{a=J.er(c) +c=A.Y(128,a.gj(c)>>>16&255,a.gj(c)>>>8&255,a.gj(c)&255)}a0=c}else a0=c +if(a0==null){c=m.gqL().a.$1(i) +c.toString +a0=c}c0.a.toString +c=l.c +a=c==null?c1:c.a5(i) +a1=a +if(a1==null)a1=m.gDe().a5(i) +c0.a.toString +a=l.d +a2=a==null?c1:a.a5(i) +a3=a2 +if(a3==null){a2=m.gHY() +a3=a2==null?c1:a2.a5(i)}c0.a.toString +a2=c0.gauv().a.$1(h) +if(a2==null){a2=l.b +a2=a2==null?c1:a2.a5(h) +a4=a2}else a4=a2 +if(a4==null){a2=m.gqL().a.$1(h) +a2.toString +a4=a2}c0.a.toString +c=c==null?c1:c.a5(h) +a5=c +if(a5==null)a5=m.gDe().a5(h) +c0.a.toString +c=a==null?c1:a.a5(h) +a6=c +if(a6==null){c=m.gHY() +a6=c==null?c1:c.a5(h)}c0.a.toString +a7=o.ghU().a5(i) +a8=o.ghU().a5(h) +a9=c0.gmz() +a9.B(0,B.R) +c0.a.toString +c=l.r +a=c==null?c1:c.a5(a9) +if(a==null)b0=c1 +else b0=a +if(b0==null){a=m.gew().a.$1(a9) +a.toString +b0=a}b1=c0.gmz() +b1.B(0,B.P) +c0.a.toString +a=c==null?c1:c.a5(b1) +b2=a +if(b2==null){a=m.gew().a.$1(b1) +a.toString +b2=a}i.B(0,B.X) +c0.a.toString +a=c0.gLj().a.$1(i) +if(a==null){a=l.a +a=a==null?c1:a.a5(i) +b3=a}else b3=a +if(b3==null){a=m.gkV().a5(i) +a.toString +b3=a}c0.a.toString +a=c==null?c1:c.a5(i) +if(a==null){j=j?c1:A.Y(31,g.gj(g)>>>16&255,g.gj(g)>>>8&255,g.gj(g)&255) +b4=j}else b4=a +if(b4==null){j=m.gew().a.$1(i) +j.toString +b4=j}h.B(0,B.X) +c0.a.toString +j=c0.gLj().a.$1(h) +if(j==null){l=l.a +l=l==null?c1:l.a5(h) +b5=l}else b5=j +if(b5==null){l=m.gkV().a5(h) +l.toString +b5=l}c0.a.toString +l=c==null?c1:c.a5(h) +if(l==null){l=f?c1:A.Y(31,d.gj(d)>>>16&255,d.gj(d)>>>8&255,d.gj(d)&255) +b6=l}else b6=l +if(b6==null){l=m.gew().a.$1(h) +l.toString +b6=l}b7=o.gUF() +c0.a.toString +b8=o.gXu() +c0.a.toString +b9=c2.a.w +if(b9==null)b9=c2.b.gnv() +l=c0.a +m=l.c +j=l.cx +f=l.fx +c=l.fy +l=l.id +a=c0.d +a2=c0.rz$ +a2===$&&A.b() +a.sb8(0,a2) +a2=c0.MW$ +a2===$&&A.b() +a.saEd(a2) +a2=c0.MY$ +a2===$&&A.b() +a.saEf(a2) +a2=c0.MX$ +a2===$&&A.b() +a.saEg(a2) +a.saAO(b6) +a.saEe(b4) +a.szm(b2) +a.suv(b0) +a.snv(b9) +a.sWe(c0.Ch$) +a.sGR(c0.gmz().p(0,B.R)) +a.saBl(c0.gmz().p(0,B.P)) +a.sFe(e) +a.sXt(b) +a.sblU(b3) +a.sbyw(b5) +a.sblW(c0.a.x) +a.sbBF(c0.a.y) +a.sbyy(c0.a.z) +a.sbCl(c0.a.Q) +a.syd(a0) +a.sblX(a1) +a.sblY(a3) +a.szn(a4) +a.sbyz(a5) +a.sbyA(a6) +a.su7(A.GL(c3,c1)) +a.sbzn(c0.gjo()!=null) +a.sbHc(c0.gatd()) +a2=c3.a0(t.I) +a2.toString +a.sd5(a2.w) +a.saUn(q.cy) +a.sXu(b8) +a.sUF(b7) +a.sYV(o.gYV()) +a.sZD(o.gZD()) +a.sZP(o.gZP()) +a.sZQ(o.gZQ()) +a.sblT(a7) +a.sbyv(a8) +a.sblS(c1) +a.sbyu(c1) +a.sj0(A.bmn(c3)) +a.sZF(o.gZF()) +a.sZT(o.gZT()) +a.sbEa(c0.ur$) +a.sbzi(c0.f) +j=A.dn(c1,A.mj(c0.awv(!1,f,new A.by(new A.c5T(c2,c0),t.bN),c,a,l),1),j,!0,c1,c1,c1,c1,c0.gbjb(),c0.gbjd(),c0.gbjf(),c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,!1,B.ac) +return new A.bX(A.ci(c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,c1,m,c1,c1),!1,!1,!1,!1,j,c1)}} +A.c5R.prototype={ +$1(a){if(a.p(0,B.F))return this.a.a.r +if(a.p(0,B.S))return this.a.a.e +return this.a.a.r}, +$S:21} +A.c5S.prototype={ +$1(a){if(a.p(0,B.S))return this.a.a.f +return this.a.a.w}, +$S:21} +A.c5Q.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.c5T.prototype={ +$1(a){var s=A.d2(this.b.a.cy,a,t.GE) +if(s==null)s=null +if(s==null){s=this.a.b.giS().a.$1(a) +s.toString}return s}, +$S:242} +A.ajb.prototype={ +sbEa(a){if(a===this.db)return +this.db=a +this.ab()}, +sblS(a){return}, +sbyu(a){return}, +sj0(a){if(a.l(0,this.fr))return +this.fr=a +this.ab()}, +sblT(a){if(a.l(0,this.fx))return +this.fx=a +this.ab()}, +sbyv(a){if(a.l(0,this.fy))return +this.fy=a +this.ab()}, +sblU(a){if(a.l(0,this.go))return +this.go=a +this.ab()}, +sbyw(a){if(a.l(0,this.id))return +this.id=a +this.ab()}, +sUF(a){if(a===this.k1)return +this.k1=a +this.ab()}, +sXu(a){if(a===this.k2)return +this.k2=a +this.ab()}, +sYV(a){if(a===this.k3)return +this.k3=a +this.ab()}, +sZD(a){if(a==this.k4)return +this.k4=a +this.ab()}, +sZT(a){if(a.l(0,this.ok))return +this.ok=a +this.ab()}, +sZP(a){if(a===this.p1)return +this.p1=a +this.ab()}, +sZQ(a){if(a===this.p2)return +this.p2=a +this.ab()}, +sblW(a){return}, +sbBF(a){return}, +sbyy(a){return}, +sbCl(a){return}, +syd(a){if(a.l(0,this.rx))return +this.rx=a +this.ab()}, +sblX(a){if(J.q(a,this.ry))return +this.ry=a +this.ab()}, +sbyz(a){if(J.q(a,this.to))return +this.to=a +this.ab()}, +sblY(a){if(a==this.x1)return +this.x1=a +this.ab()}, +sbyA(a){if(a==this.x2)return +this.x2=a +this.ab()}, +szn(a){if(a.l(0,this.xr))return +this.xr=a +this.ab()}, +su7(a){if(a.l(0,this.y1))return +this.y1=a +this.ab()}, +sd5(a){if(this.y2===a)return +this.y2=a +this.ab()}, +saUn(a){if(a.l(0,this.c_))return +this.c_=a +this.ab()}, +sbzn(a){if(a===this.bO)return +this.bO=a +this.ab()}, +sbHc(a){if(a===this.be)return +this.be=a +this.ab()}, +sbzi(a){if(a===this.bj)return +this.bj=a +this.ab()}, +sZF(a){var s=this.bU +if(a==null?s==null:a===s)return +this.bU=a +this.ab()}, +b3s(){if(!this.ag)this.ab()}, +aI(b5,b6){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=b3.a.gj(0) +switch(b3.y2.a){case 0:s=1-b4 +break +case 1:s=b4 +break +default:s=null}r=b3.b.a +if(!(r.gbM(r)===B.bs&&!b3.aq?b3.aq=!0:b3.aq=!1)){r=b3.bj +r.toString +b3.aW=r?b3.b.gj(0)*7:0 +if(b3.b.gbM(0)===B.a9){r=b3.k2 +r.toString +q=b3.k3 +q.toString +b3.aJ=A.av(r,q,b3.b.gj(0)) +q=b3.k1 +q.toString +r=b3.k3 +r.toString +b3.U=A.av(q,r,b3.b.gj(0))}if(b4===0){r=b3.k2 +r.toString +q=b3.k3 +q.toString +b3.aJ=A.av(r,q,b3.b.gj(0)) +q=b3.k1 +q.toString +b3.U=q}if(b4===1){r=b3.k1 +r.toString +q=b3.k3 +q.toString +b3.U=A.av(r,q,b3.b.gj(0)) +q=b3.k2 +q.toString +b3.aJ=q}}r=b3.bj +r.toString +q=b3.aJ +if(r){q.toString +q*=2 +p=b3.aW +p===$&&A.b() +o=new A.V(q+p,q)}else{if(q==null){q=b3.k2 +q.toString}q*=2 +o=new A.V(q,q)}q=b3.U +if(r){q.toString +q*=2 +p=b3.aW +p===$&&A.b() +n=new A.V(q+p,q)}else{if(q==null){q=b3.k1 +q.toString}q*=2 +n=new A.V(q,q)}q=new A.chj(b3,o,n) +if(r)if(b3.b.gbM(0)===B.a9){r=b3.aJ +r.toString +r*=2 +q=b3.aW +q===$&&A.b() +m=new A.V(r+q,r)}else{if(b3.a.gbM(0)!==B.a6){r=b3.a.a +r=r.gbM(r)===B.bg}else r=!0 +q=b3.a +m=r?A.a9L(o,n,q.gj(0)):A.a9L(o,n,q.gj(0))}else if(b3.b.gbM(0)===B.a9){r=b3.k3 +r.toString +r*=2 +m=new A.V(r,r)}else{if(b3.a.gbM(0)!==B.a6){r=b3.a.a +r=r.gbM(r)===B.bg}else r=!0 +if(r){r=q.$1(!0) +q=r.b +r=r.a +m=q.ah(0,r.gj(r))}else{r=q.$1(!1) +q=r.b +r=r.a +m=q.ah(0,r.gj(r))}}r=b3.k4 +l=r==null?0:1-Math.abs(b4-r)*2 +r=m.a-l +q=m.b-l +p=b3.db +p.toString +k=A.cI(B.eb,p,B.dl).gj(0) +p=b3.xr +p.toString +j=b3.rx +j.toString +j=A.ai(p,j,k) +j.toString +p=b3.to +i=p==null||b3.ry==null?null:A.ai(p,b3.ry,k) +h=A.av(b3.x2,b3.x1,k) +if(b3.b.gbM(0)!==B.a6){p=b3.id +p.toString +g=b3.go +g.toString +g=A.ai(p,g,k) +g.toString +f=g}else{p=b3.db.Q +p===$&&A.b() +if(p===B.bg){p=b3.id +p.toString +g=b3.e +g.toString +g=A.ai(p,g,k) +g.toString +f=g}else{g=b3.f +if(p===B.bs){g.toString +p=b3.go +p.toString +p=A.ai(g,p,k) +p.toString +f=p}else{g.toString +p=b3.e +p.toString +p=A.ai(g,p,k) +p.toString +f=p}}}p=b3.c_ +p.toString +e=A.PO(f,p) +p=b4<0.5 +d=p?b3.dy:b3.dx +c=p?b3.R8:b3.p3 +b=p?b3.RG:b3.p4 +p=$.ar() +a=p.aP() +a.sa6(0,j) +j=b3.p2 +j.toString +g=b3.p1 +g.toString +a0=(b6.a-j)/2 +a1=b6.b +a2=(a1-g)/2 +a3=g/2 +a4=q/2 +a5=b3.be +a5.toString +a6=b3.aW +a6===$&&A.b() +a7=a0+a3+a6/2-r/2+s*(a5-a6) +a8=A.jq(new A.W(a0,a2,a0+j,a2+g),new A.bb(a3,a3)) +b5.dh(a8,a) +if(i!=null){j=a0+1 +g=a2+1 +a5=b3.p2 +a5.toString +a6=b3.p1 +a6.toString +a9=A.jq(new A.W(j,g,j+(a5-2),g+(a6-2)),new A.bb(a3,a3)) +b0=p.aP() +b0.sbN(0,B.a7) +b0.se4(h==null?2:h) +b0.sa6(0,i) +b5.dh(a9,b0)}j=b3.bj +j.toString +if(j){j=b3.as +j.toString +if(j){b1=a8.fH(1.75) +b2=p.aP() +b2.sbN(0,B.a7) +p=b3.y +p.toString +b2.sa6(0,p) +b2.se4(3.5) +b5.dh(b1,b2)}b5.yq(a8)}b3.aD0(b5,new A.j(a7+a4,a1/2)) +b3.bda(new A.j(a7,a2-(a4-a3)),b5,k,e,c,b,d,new A.V(r,q),l)}, +bda(a,b,c,d,e,f,g,h,i){var s,r,q=this +try{q.ag=!0 +if(q.a4!=null)if(d.l(0,q.dd))r=!1 +else r=!0 +else r=!0 +if(r){q.dd=d +q.D=e +q.N=f +r=q.a4 +if(r!=null)r.m() +r=q.bj +r.toString +q.a4=A.dje(new A.lJ(d,null,null,r?null:q.bU,B.lV),q.gb3r())}r=q.a4 +r.toString +s=r +r=q.bj +r.toString +if(r)q.bd3(b,a,h) +s.jJ(b,a,q.y1.yw(h))}finally{q.ag=!1}}, +bd3(a,b,c){var s,r,q,p=b.a,o=b.b,n=c.b,m=n/2,l=A.cyC(p,o,p+c.a,o+n,new A.bb(m,m)) +p=this.bU +if(p!=null)for(o=p.length,s=0;s0?m*0.57735+0.5:0 +q.sH6(new A.zi(r.e,m)) +a.dh(n,q)}p=l.fH(0.5) +o=$.ar().aP() +o.sa6(0,B.mL) +a.dh(p,o)}, +m(){var s,r=this +r.e7.m() +s=r.a4 +if(s!=null)s.m() +r.N=r.D=r.dd=r.a4=null +r.aR2()}} +A.chj.prototype={ +$1(a){var s,r=this.b,q=this.a,p=this.c,o=t.q6,n=t.qU,m=t.kS,l=t.Bx,k=q.ok,j=n.h("eb") +if(a){k.toString +s=A.a([new A.ld(new A.eb(new A.eA(B.Ct),new A.aP(r,k,n),j),11,m),new A.ld(new A.eb(new A.eA(B.tD),new A.aP(k,p,n),j),72,m),new A.ld(new A.PZ(p,p,l),17,m)],o)}else{k.toString +s=A.a([new A.ld(new A.PZ(r,r,l),17,m),new A.ld(new A.eb(new A.eA(new A.o7(B.tD)),new A.aP(r,k,n),j),72,m),new A.ld(new A.eb(new A.eA(new A.o7(B.Ct)),new A.aP(k,p,n),j),11,m)],o)}r=A.bNB(s,t.FW) +q=q.db +q.toString +return new A.aB(q,r,r.$ti.h("aB"))}, +$S:556} +A.aXz.prototype={ +auP(a,b){switch(a.w.a){case 0:case 1:case 3:case 5:return b +case 2:case 4:return B.YM}}} +A.aXw.prototype={} +A.aXx.prototype={ +giS(){return new A.by(new A.ch3(),t.Y6)}, +gkV(){return B.b4t}, +gqL(){return new A.by(new A.ch5(this),t.h2)}, +gDe(){return B.cg}, +gew(){return new A.by(new A.ch4(this),t.U)}, +gnv(){return 0}} +A.ch3.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.ch5.prototype={ +$1(a){var s +if(a.p(0,B.S)){s=B.Cz.f3(this.a.y) +return s}s=B.agI.f3(this.a.y) +return s}, +$S:7} +A.ch4.prototype={ +$1(a){var s +if(a.p(0,B.R)){s=B.Cz.f3(this.a.y) +s=A.av4(A.Y(204,s.gj(0)>>>16&255,s.gj(0)>>>8&255,s.gj(0)&255)) +return new A.w3(s.a,s.b,0.835,0.69).qJ()}return B.D}, +$S:7} +A.ch0.prototype={ +ghU(){return new A.by(new A.ch1(this),t.h2)}, +gUF(){return 14}, +gXu(){return 14}, +gYV(){return 14}, +gZF(){return B.aBB}, +gZP(){return 31}, +gZQ(){return 51}, +gZT(){return B.bmi}, +gaFB(){return 140}, +gZD(){return null}} +A.ch1.prototype={ +$1(a){var s,r +if(a.p(0,B.F)){s=this.a.b.db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=this.a.b +r=s.e +return r==null?s.c:r}, +$S:7} +A.aXy.prototype={ +giv(){var s,r=this,q=r.z +if(q===$){s=A.G(r.y) +r.z!==$&&A.a_() +q=r.z=s.ay}return q}, +gkV(){return new A.by(new A.ch8(this),t.h2)}, +gqL(){return new A.by(new A.ch9(this),t.h2)}, +gDe(){return new A.by(new A.cha(this),t.U)}, +gew(){return new A.by(new A.ch7(this),t.U)}, +giS(){return new A.by(new A.ch6(),t.bN)}, +gHY(){return B.b4q}, +gnv(){return 20}} +A.ch8.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){if(a.p(0,B.S)){s=q.a.giv().cy +return A.Y(255,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=q.a.giv().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.giv() +r=s.d +return r==null?s.b:r}if(a.p(0,B.P)){s=q.a.giv() +r=s.d +return r==null?s.b:r}if(a.p(0,B.R)){s=q.a.giv() +r=s.d +return r==null?s.b:r}return q.a.giv().c}if(a.p(0,B.X)){s=q.a.giv() +r=s.dy +return r==null?s.db:r}if(a.p(0,B.P)){s=q.a.giv() +r=s.dy +return r==null?s.db:r}if(a.p(0,B.R)){s=q.a.giv() +r=s.dy +return r==null?s.db:r}s=q.a.giv() +r=s.fr +return r==null?s.cx:r}, +$S:7} +A.ch9.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){if(a.p(0,B.S)){s=q.a.giv().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=q.a.giv() +r=s.dx +s=r==null?s.cy:r +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S)){if(a.p(0,B.X))return q.a.giv().b +if(a.p(0,B.P))return q.a.giv().b +if(a.p(0,B.R))return q.a.giv().b +return q.a.giv().b}if(a.p(0,B.X)){s=q.a.giv() +r=s.dx +return r==null?s.cy:r}if(a.p(0,B.P)){s=q.a.giv() +r=s.dx +return r==null?s.cy:r}if(a.p(0,B.R)){s=q.a.giv() +r=s.dx +return r==null?s.cy:r}s=q.a.giv() +r=s.dx +return r==null?s.cy:r}, +$S:7} +A.cha.prototype={ +$1(a){var s,r +if(a.p(0,B.S))return B.D +if(a.p(0,B.F)){s=this.a.giv().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=this.a.giv() +r=s.fr +return r==null?s.cx:r}, +$S:7} +A.ch7.prototype={ +$1(a){var s,r=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=r.a.giv().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.giv().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.giv().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}if(a.p(0,B.X)){s=r.a.giv().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.giv().db +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.giv().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.ch6.prototype={ +$1(a){return B.eu.a5(a)}, +$S:242} +A.aj9.prototype={ +gUF(){return 12}, +ghU(){return new A.by(new A.ch2(this),t.h2)}, +gXu(){return 8}, +gYV(){return 14}, +gaUo(){return 48}, +gaUp(){return 40}, +gahN(){return 60}, +gZF(){return B.aNj}, +gZP(){return 32}, +gZQ(){return 52}, +gZT(){return B.bml}, +gaFB(){return 300}, +gZD(){return null}} +A.ch2.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.F)){if(a.p(0,B.S)){s=q.a.b.db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}s=q.a.b +r=s.dx +s=r==null?s.cy:r +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.S)){if(a.p(0,B.X)){s=q.a.b +r=s.e +return r==null?s.c:r}if(a.p(0,B.P)){s=q.a.b +r=s.e +return r==null?s.c:r}if(a.p(0,B.R)){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.p(0,B.X)){s=q.a.b +r=s.dx +return r==null?s.cy:r}if(a.p(0,B.P)){s=q.a.b +r=s.dx +return r==null?s.cy:r}if(a.p(0,B.R)){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:7} +A.al7.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.al8.prototype={ +a8(){var s,r=this,q=null +r.an() +s=A.bQ(q,B.K,q,1,!r.a.c?0:1,r) +r.ur$=s +r.rz$=A.cI(B.dl,s,B.eb) +s=A.bQ(q,B.b1,q,1,q,r) +r.us$=s +r.MW$=A.cI(B.aa,s,q) +s=A.bQ(q,B.iU,q,1,r.z8$||r.z7$?1:0,r) +r.Gv$=s +r.MX$=A.cI(B.aa,s,q) +s=A.bQ(q,B.iU,q,1,r.z8$||r.z7$?1:0,r) +r.Gw$=s +r.MY$=A.cI(B.aa,s,q)}, +m(){var s=this,r=s.ur$ +r===$&&A.b() +r.m() +r=s.us$ +r===$&&A.b() +r.m() +r=s.Gv$ +r===$&&A.b() +r.m() +r=s.Gw$ +r===$&&A.b() +r.m() +s.aTB()}} +A.b0T.prototype={} +A.b0U.prototype={} +A.uB.prototype={ +gv(a){var s=this +return A.ad(s.gkV(),s.gqL(),s.gDe(),s.gHY(),s.gwx(),s.giS(),s.gew(),s.gnv(),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.az(b)!==A.I(s))return!1 +return b instanceof A.uB&&b.gkV()==s.gkV()&&b.gqL()==s.gqL()&&b.gDe()==s.gDe()&&b.gHY()==s.gHY()&&b.gwx()==s.gwx()&&b.giS()==s.giS()&&b.gew()==s.gew()&&b.gnv()==s.gnv()&&!0}, +gkV(){return this.a}, +gqL(){return this.b}, +gDe(){return this.c}, +gHY(){return this.d}, +gwx(){return this.e}, +giS(){return this.f}, +gew(){return this.r}, +gnv(){return this.w}} +A.aXA.prototype={} +A.VE.prototype={ +gv(a){var s=this +return A.ad(s.a,s.gmi(),s.c,s.gpi(),s.gC0(),s.gNB(),s.r,s.gkx(),s.gP7(),s.gP8(),s.gew(),s.giV(),s.as,s.gOM(),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.az(b)!==A.I(r))return!1 +if(b instanceof A.VE)if(J.q(b.a,r.a))if(J.q(b.gmi(),r.gmi()))if(b.c==r.c)if(J.q(b.gpi(),r.gpi()))if(b.gC0()==r.gC0())if(J.q(b.gNB(),r.gNB()))if(J.q(b.r,r.r))if(J.q(b.gkx(),r.gkx()))if(J.q(b.gP7(),r.gP7()))if(J.q(b.gP8(),r.gP8()))if(b.gew()==r.gew())if(b.giV()==r.giV())s=b.gOM()==r.gOM() +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}, +gmi(){return this.b}, +gpi(){return this.d}, +gC0(){return this.e}, +gNB(){return this.f}, +gkx(){return this.w}, +gP7(){return this.x}, +gP8(){return this.y}, +gew(){return this.z}, +giV(){return this.Q}, +gOM(){return this.at}} +A.aXG.prototype={} +A.VG.prototype={ +aZ9(a,b,c,d){var s,r,q=this,p=b==null +if(!p)q.a.sj(0,b) +p=p?q.d:b +s=q.a +r=$.ae() +q.a=null +q.m() +return new A.VG(s,q.b,c,p,d,r)}, +gi1(a){var s=this.a +return s==null?null:s}, +aji(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.ab() +q=r.a +q.toString +s=r.d +b.toString +q.z=B.b_ +q.kn(s,b,c).Pf(new A.bJT(r))}else{r.f=s +r.a.sj(0,a);--r.f +r.ab()}}, +Eg(a){return this.aji(a,null,null)}, +sfl(a,b){var s,r=this.a,q=r.x +q===$&&A.b() +s=this.d +if(b===q-s)return +r.sj(0,b+s)}, +m(){var s=this.a +if(s!=null)s.m() +this.a=null +this.f4()}, +gA(a){return this.c}} +A.bJT.prototype={ +$0(){var s=this.a +if(s.a!=null){--s.f +s.ab()}}, +$S:0} +A.ajg.prototype={ +ed(a){return this.r!==a.r||this.f!==a.f}} +A.a1F.prototype={ +J(){return new A.aNm(null,null,B.f)}, +gA(a){return this.c}} +A.aNm.prototype={ +a8(){var s=this +s.an() +s.d=A.cMC(null,0,s.a.c,s)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aTl()}, +q(a){var s=this.d +s===$&&A.b() +return new A.ajg(s,A.bLC(a),this.a.f,null)}, +b1(a){var s,r,q,p,o,n=this +n.bc(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.aZ9(null,o,s,q)}n.a.toString}} +A.akT.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.FK.prototype={ +j3(a,b){var s,r +if(a instanceof A.FK){s=A.c8(a.b,this.b,b) +r=A.ji(a.c,this.c,b) +r.toString +return new A.FK(null,s,r)}return this.a0E(a,b)}, +j4(a,b){var s,r +if(a instanceof A.FK){s=A.c8(this.b,a.b,b) +r=A.ji(this.c,a.c,b) +r.toString +return new A.FK(null,s,r)}return this.a0F(a,b)}, +yA(a){return new A.aZd(this,this.a,a)}, +Se(a,b){var s=this.c.a5(b).BV(a),r=s.a,q=this.b.b,p=s.d-q +return new A.W(r,p,r+(s.c-r),p+q)}, +PC(a,b){var s,r=this.a +if(r!=null){s=$.ar().dc() +s.iM(r.hq(this.Se(a,b))) +return s}r=$.ar().dc() +r.jd(this.Se(a,b)) +return r}} +A.aZd.prototype={ +jJ(a,b,c){var s,r,q,p=c.e,o=b.a,n=b.b,m=new A.W(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=$.ar().aP() +r.sa6(0,s.a) +q=n.Se(m,p) +p=o.a +n=o.b +s=o.d +a.dh(A.TX(q,o.c,s,p,n),r)}else{r=s.nn() +r.str(B.xy) +q=n.Se(m,p).fH(-(s.b/2)) +p=q.d +a.jV(new A.j(q.a,p),new A.j(q.c,p),r)}}} +A.bJS.prototype={ +H(){return"TabBarIndicatorSize."+this.b}} +A.VC.prototype={ +H(){return"TabAlignment."+this.b}} +A.qL.prototype={ +aWS(){return this.d}, +q(a){var s=null,r=this.aWS() +return new A.ba(s,46,A.eu(r,s,s,1),s)}, +gqy(){return B.bmt}, +$izV:1} +A.aXJ.prototype={ +bg4(a){var s,r,q,p,o,n=null,m={} +A.G(a) +s=A.G(a).dQ +r=t.o.a(this.c) +q=s.f +if(q==null)q=n +if(q==null){q=s.w +q=q==null?n:q.b +p=q}else p=q +if(p==null)p=this.z.gNB() +m.a=p +m.b=null +if(p instanceof A.XP){m.b=p.c.$1(B.er) +m.a=p.c.$1(B.jK)}else{q=s.x +if(q==null)q=n +if(q==null){q=s.y +q=q==null?n:q.b +o=q}else o=q +if(o==null){q=this.z.gP7() +q.toString +o=q}m.b=o}return A.XQ(new A.chw(m,r))}, +q(a){var s,r,q,p=this,o=null,n=A.G(a).dQ,m=t.o.a(p.c),l=p.r,k=l?B.jK:B.er,j=p.e,i=n.w +if(i==null){i=p.z.gkx() +i.toString}s=i.axr(!0) +i=n.y +j=i==null?j:i +if(j==null){j=p.z.gP8() +j.toString}r=j.axr(!0) +if(l){l=A.d_(s,r,m.gj(m)) +l.toString +q=l}else{l=A.d_(r,s,m.gj(m)) +l.toString +q=l}l=p.bg4(a).c.$1(k) +j=q.bu(l) +return A.h4(A.qd(p.Q,new A.dW(24,o,o,o,o,l,o,o,o)),o,o,B.aG,!0,j,o,o,B.a0)}} +A.chw.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.S)){s=q.a +r=q.b +r=A.ai(s.a,s.b,r.gj(r)) +r.toString +return r}s=q.a +r=q.b +r=A.ai(s.b,s.a,r.gj(r)) +r.toString +return r}, +$S:7} +A.aXI.prototype={ +bJ(){var s,r,q,p,o=this +o.a0T() +s=o.Y$ +r=A.a([],t.n) +for(q=t.US;s!=null;){p=s.b +p.toString +q.a(p) +r.push(p.a.a) +s=p.a7$}switch(o.aq.a){case 0:B.b.eu(r,0,o.gu(0).a) +break +case 1:r.push(o.gu(0).a) +break}q=o.aq +q.toString +p=o.gu(0) +o.mg.$3(r,q,p.a)}} +A.aXH.prototype={ +aR(a){var s=this,r=null,q=s.x9(a) +q.toString +q=new A.aXI(s.ax,s.e,s.f,s.r,s.w,q,s.y,r,B.i,A.aw(t.O5),A.aK(4,A.jT(r,r,r,r,r,B.ah,B.j,r,1,B.Y,B.a0),!1,t.mi),!0,0,r,r,A.aw(t.T)) +q.aQ() +q.L(0,r) +return q}, +b_(a,b){this.aOn(a,b) +b.mg=this.ax}} +A.aNC.prototype={ +aI(a,b){var s,r=this.c +if(r<=0)return +s=$.ar().aP() +s.sa6(0,this.b) +s.se4(r) +r=b.b +a.jV(new A.j(0,r-s.ge4()/2),new A.j(b.a,r-s.ge4()/2),s)}, +hC(a){return!a.b.l(0,this.b)||a.c!==this.c}} +A.aff.prototype={ +aV(){this.ax=!0}, +aAP(a,b){var s,r,q,p,o,n,m,l,k,j,i=this +switch(i.Q.a){case 0:s=i.z +r=s[b+1] +q=s[b] +break +case 1:s=i.z +r=s[b] +q=s[b+1] +break +default:r=null +q=null}if(i.d===B.xR){s=i.f[b] +p=$.an.U$.z.i(0,s).gu(0).a +o=i.r[b].a5(i.Q) +r+=(q-r-(p+o.geL()))/2+o.a +q=r+p}o=i.e +s=r+(q-r) +n=0+a.b +m=new A.W(r,0,s,n) +l=o.geL() +k=o.gdM(0) +j=o.gdT(0) +if(!(s-r>=l&&n-0>=k+j))throw A.d(A.Ds("indicatorPadding insets should be less than Tab Size\nRect Size : "+m.gu(0).k(0)+", Insets: "+o.k(0))) +return o.BV(m)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.ax=!1 +if(h.at==null)h.at=h.c.yA(h.gfk()) +s=h.b +r=s.d +s=s.gi1(0).x +s===$&&A.b() +q=r>s +p=q?B.e.ec(s):B.e.dO(s) +o=B.d.dV(p,0,h.z.length-2) +p=q?o+1:o-1 +n=B.e.dV(p,0,h.z.length-2) +s=h.as=A.U6(h.aAP(b,o),h.aAP(b,n),Math.abs(s-o)) +p=s.c +m=s.a +l=s.d +s=s.b +k=h.Q +if(h.y){f=h.x +f.toString +f=f>0}if(f){j=$.ar().aP() +f=h.w +f.toString +j.sa6(0,f) +f=h.x +f.toString +j.se4(f) +f=b.b +a.jV(new A.j(0,f-j.ge4()/2),new A.j(b.a,f-j.ge4()/2),j)}f=h.at +f.toString +i=h.as +f.jJ(a,new A.j(i.a,i.b),new A.Js(g,g,g,k,new A.V(p-m,l-s),g))}, +hC(a){var s=this +return s.ax||s.b!==a.b||!s.c.l(0,a.c)||s.f.length!==a.f.length||!A.fj(s.z,a.z)||s.Q!=a.Q}} +A.aLS.prototype={ +gbR(a){var s=this.a.gi1(0) +s.toString +return s}, +fW(a){if(this.a.gi1(0)!=null)this.agk(a)}, +O(a,b){if(this.a.gi1(0)!=null)this.agj(0,b)}, +gj(a){return A.dmj(this.a)}} +A.Xh.prototype={ +gbR(a){var s=this.a.gi1(0) +s.toString +return s}, +fW(a){if(this.a.gi1(0)!=null)this.agk(a)}, +O(a,b){if(this.a.gi1(0)!=null)this.agj(0,b)}, +gj(a){var s=this.a,r=s.gi1(0).x +r===$&&A.b() +return A.Z(Math.abs(A.Z(r,0,s.c-1)-this.b),0,1)}} +A.ajd.prototype={ +ri(a,b){var s,r,q,p=this,o=p.aq +if(!o){o=p.ax +o.toString +o=p.aq=o!==0}if(!o||p.aJ){p.aJ=!1 +o=p.ag +s=p.ax +s.toString +r=o.r +r.toString +p.at=o.asv(r,s,a,b) +q=!1}else q=!0 +return p.aht(a,b)&&q}} +A.aXF.prototype={ +yC(a,b,c){var s=null,r=$.ae() +r=new A.ajd(this.as,B.dB,a,b,!0,s,new A.bm(!1,r,t.uh),r) +r.xz(b,s,!0,c,a) +r.Ay(b,s,s,!0,c,a) +return r}} +A.aaB.prototype={ +gqy(){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.R(new A.O(s,new A.chs(),r),!0,r.h("aa.E")) +q.y=A.aK(q.a.c.length,B.L,!0,t.A0)}, +glv(){var s=null,r=this.c +r.toString +A.G(r) +this.a.toString +r=this.c +r.toString +return new A.chM(r,!0,s,s,B.xR,s,s,s,s,s,s,s,s,s,s,s)}, +b2f(a){var s,r,q,p,o,n,m=this,l=m.c +l.toString +A.G(l) +l=m.c +l.toString +s=A.G(l).dQ +m.a.toString +l=s.a +if(l!=null)return l +r=s.b +if(r==null)r=m.glv().gmi() +m.a.toString +l=r.gj(r) +q=m.c +q.toString +q=A.bpW(q,t.zd) +if(q==null)q=null +else{q=q.ac +q=q==null?null:q.gj(q)}q=l===q +l=q +if(l)r=B.r +m.a.toString +p=a===B.xR +o=p?Math.max(2,3):2 +n=p?new A.dJ(new A.bb(o,o),new A.bb(o,o),B.J,B.J):null +return new A.FK(n,new A.bx(r,o,B.O,-1),B.L)}, +gAI(){var s=this.e +return(s==null?null:s.gi1(0))!=null}, +Le(){var s,r=this,q=r.a.d +if(q==null){s=r.c +s.toString +q=A.cGx(s)}if(q==r.e)return +if(r.gAI()){r.e.gi1(0).O(0,r.gAQ()) +r.e.O(0,r.ga3I())}r.e=q +if(q!=null){s=q.gi1(0) +s.cY() +s=s.em$ +s.b=!0 +s.a.push(r.gAQ()) +r.e.a3(0,r.ga3I()) +r.r=r.e.d}}, +a3W(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.c +h.toString +A.G(h) +h=i.c +h.toString +s=A.G(h).dQ +i.a.toString +r=s.c +if(r==null){h=i.glv().c +h.toString +q=h}else q=r +if(!i.gAI())h=null +else{h=i.e +h.toString +p=i.b2f(q) +i.a.toString +if(r==null){o=i.glv().c +o.toString}else o=r +i.a.toString +n=i.x +n===$&&A.b() +m=i.f +l=i.y +l===$&&A.b() +k=s.d +if(k==null)k=i.glv().gpi() +i.a.toString +j=i.glv().gC0() +i.a.toString +h=new A.aff(h,p,o,B.L,n,l,k,j,!1,h.gi1(0)) +if(m!=null){p=m.z +m=m.Q +h.z=p +h.Q=m}}i.f=h}, +c5(){this.dH() +this.Le() +this.a3W()}, +b1(a){var s,r,q,p,o,n,m=this +m.bc(a) +if(m.a.d!=a.d){m.Le() +m.a3W() +s=m.d +if(s!=null&&s.f.length!==0){s=B.b.gcW(s.f) +if(s instanceof A.ajd)s.aJ=!0}}else{if(B.L.l(0,B.L)){m.a.toString +s=!1}else s=!0 +if(s)m.a3W()}s=m.a.c.length +r=m.x +r===$&&A.b() +q=r.length +if(s>q){p=s-q +o=J.d1(p,t.yi) +for(s=t.A,n=0;n0?m.U5(l-1):null +l=m.r +l.toString +q=m.U5(l) +l=m.r +l.toString +p=l0){j=o-1 +o=a9.e +o.toString +m=A.a([],t.x8) +p[j]=a9.Jz(p[j],!1,new A.or(new A.Xh(o,j),new A.bN(m,t.jc),0),a9.glv())}o=a9.r +o.toString +if(o0 +a4=new A.fl(q,a8?b0:1,1,a4,b0) +if(a8){a9.a.toString +if(o){q=a9.glv().gpi() +q.toString}else q=a6 +a9.a.toString +o=a9.glv().gC0() +o.toString +a4=A.ih(a4,b0,b0,new A.aNC(q,o,b0),B.A)}return a4}} +A.chs.prototype={ +$1(a){return new A.aR(null,t.A)}, +$S:558} +A.cho.prototype={ +$0(){}, +$S:0} +A.chp.prototype={ +$1(a){var s,r=null,q=this.a,p=q.a,o=p.c[a] +if(t.ZQ.b(o))if(p.gbGB()&&o.gqy().b===46){q.a.toString +p=this.b.r +if(p!=null)s=p.B(0,B.aie) +else s=B.aiw}else s=r +else s=r +p=q.y +p===$&&A.b() +if(s==null){q.a.toString +o=r}else o=s +if(o==null)o=this.b.r +if(o==null)o=B.f0 +p[a]=o +p=q.x +p===$&&A.b() +p=p[a] +return A.eu(new A.aA(o,new A.hI(q.a.c[a],p),r),1,r,r)}, +$S:559} +A.chq.prototype={ +$1(a){var s,r=this.b +r.L(0,a) +s=this.a.glv().gew() +return s==null?null:s.a5(r)}, +$S:21} +A.chr.prototype={ +$0(){var s=this.a,r=s.e,q=r.b +r.aji(this.b,B.az,q) +s.a.toString}, +$S:0} +A.aaC.prototype={ +J(){return new A.ajf(B.f)}} +A.ajf.prototype={ +gAI(){var s=this.d +return(s==null?null:s.gi1(0))!=null}, +Le(){var s,r=this,q=r.a.c +if(q==null){s=r.c +s.toString +q=A.cGx(s)}if(q==r.d)return +if(r.gAI())r.d.gi1(0).O(0,r.gAQ()) +r.d=q +if(q!=null){s=q.gi1(0) +s.cY() +s=s.em$ +s.b=!0 +s.a.push(r.gAQ())}}, +St(a){++this.w +this.e.aBE(a);--this.w}, +Jo(a,b,c){return this.aW1(a,b,c)}, +aW1(a,b,c){var s=0,r=A.p(t.H),q=this +var $async$Jo=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:++q.w +s=2 +return A.i(q.e.Bt(a,b,c),$async$Jo) +case 2:--q.w +return A.n(null,r)}}) +return A.o($async$Jo,r)}, +a8(){this.an() +this.f=A.boz(this.a.d)}, +c5(){var s,r,q=this +q.dH() +q.Le() +s=q.r=q.d.d +r=q.e +if(r==null){q.a.toString +q.e=A.KO(s,1)}else r.aBE(s)}, +b1(a){var s,r=this +r.bc(a) +if(r.a.c!=a.c){r.Le() +s=r.d.d +r.r=s +r.St(s)}s=r.a +s=s.d +if(s!==a.d&&r.w===0)r.f=A.boz(s)}, +m(){var s,r=this +if(r.gAI())r.d.gi1(0).O(0,r.gAQ()) +r.d=null +s=r.e +if(s!=null)s.m() +r.ap()}, +a3H(){var s,r=this +if(r.x>0||r.d.f===0)return +s=r.d.d +if(s!==r.r){r.r=s +r.blt()}}, +blt(){var s,r,q,p=this +if(p.c!=null){s=t.gQ.a(B.b.gcW(p.e.f)).goA(0) +r=p.r +r.toString +r=s===r +s=r}else s=!0 +if(s)return +s=p.r +s.toString +r=p.d +q=r.e +r=r.b +if(Math.abs(s-q)===1)p.Ut(r) +else p.Uu(r)}, +Ut(a){return this.bls(a)}, +bls(a){var s=0,r=A.p(t.H),q,p=this,o +var $async$Ut=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.r +s=a.a===B.w.a?3:5 +break +case 3:o.toString +p.St(o) +s=4 +break +case 5:o.toString +s=6 +return A.i(p.Jo(o,B.az,a),$async$Ut) +case 6:case 4:if(p.c!=null)p.C(new A.cht(p)) +q=A.dm(null,t.H) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Ut,r)}, +Uu(a){return this.blu(a)}, +blu(a){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$Uu=A.l(function(b,c){if(b===1)return A.m(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.C(new A.chu(q,p,o)) +q.St(p) +n=q.r +s=a.a===B.w.a?2:4 +break +case 2:n.toString +q.St(n) +s=3 +break +case 4:n.toString +s=5 +return A.i(q.Jo(n,B.az,a),$async$Uu) +case 5:case 3:if(q.c!=null)q.C(new A.chv(q)) +return A.n(null,r)}}) +return A.o($async$Uu,r)}, +ass(){var s,r=this.d +r.toString +s=t.gQ.a(B.b.gcW(this.e.f)).goA(0) +s.toString +r.sfl(0,A.Z(s-this.d.d,-1,1))}, +bjj(a){var s,r,q=this +if(q.w>0||q.x>0)return!1 +if(a.kN$!==0)return!1 +if(!q.gAI())return!1;++q.x +s=t.gQ.a(B.b.gcW(q.e.f)).goA(0) +s.toString +if(a instanceof A.no&&q.d.f===0){r=q.d +if(Math.abs(s-r.d)>1){r.Eg(B.e.aF(s)) +q.r=q.d.d}q.ass()}else if(a instanceof A.wG){r=q.d +r.toString +r.Eg(B.e.aF(s)) +s=q.d +q.r=s.d +if(s.f===0)q.ass()}--q.x +return!1}, +q(a){var s,r,q,p=this,o=null +p.a.toString +s=p.e +r=B.Sz.qa(B.mG) +q=p.f +q===$&&A.b() +if(s==null)s=$.cDr() +return new A.ff(p.gbji(),new A.Tg(B.a_,!1,s,new A.Te(r),!0,o,A.Mk(q,!0,!0,!0),B.m,B.k,o,!0,o),o,t.WA)}} +A.cht.prototype={ +$0(){var s=this.a +s.f=A.boz(s.a.d)}, +$S:0} +A.chu.prototype={ +$0(){var s,r,q=this.a,p=q.f +p===$&&A.b() +p=q.f=A.R(p,!1,t.C) +q=this.b +s=p[q] +r=this.c +p[q]=p[r] +p[r]=s}, +$S:0} +A.chv.prototype={ +$0(){var s=this.a +s.f=A.boz(s.a.d)}, +$S:0} +A.chM.prototype={ +gtP(){var s,r=this,q=r.ay +if(q===$){s=A.G(r.ax) +r.ay!==$&&A.a_() +q=r.ay=s.ay}return q}, +gasw(){var s,r=this,q=r.ch +if(q===$){s=A.G(r.ax) +r.ch!==$&&A.a_() +q=r.ch=s.p3}return q}, +gpi(){var s=this.gtP(),r=s.dx +return r==null?s.cy:r}, +gC0(){return 1}, +gmi(){return this.gtP().b}, +gNB(){return this.gtP().b}, +gkx(){return this.gasw().x}, +gP7(){var s=this.gtP(),r=s.dy +return r==null?s.db:r}, +gP8(){return this.gasw().x}, +gew(){return new A.by(new A.chN(this),t.U)}, +giV(){return A.G(this.ax).y}, +gOM(){return B.xQ}} +A.chN.prototype={ +$1(a){var s,r=this +if(a.p(0,B.S)){if(a.p(0,B.X)){s=r.a.gtP().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.gtP().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.gtP().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}if(a.p(0,B.X)){s=r.a.gtP().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=r.a.gtP().db +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=r.a.gtP().db +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.b_r.prototype={} +A.b_y.prototype={} +A.VI.prototype={ +rp(a){var s=null +A.G(a) +A.G(a) +return new A.aXZ(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.K,!0,B.C,s)}, +OS(a){var s=a.a0(t.if),r=s==null?null:s.w +return(r==null?A.G(a).fA:r).a}} +A.ajq.prototype={ +a5(a){if(a.p(0,B.F))return this.b +return this.a}, +k(a){return"{disabled: "+A.r(this.b)+", otherwise: "+A.r(this.a)+"}"}} +A.aXY.prototype={ +a5(a){var s +if(a.p(0,B.X)){s=this.a +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a +return A.Y(10,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +k(a){var s=this.a +return"{hovered: "+A.Y(10,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255).k(0)+", focused,pressed: "+A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255).k(0)+", otherwise: null}"}} +A.aXX.prototype={ +a5(a){if(a.p(0,B.F))return this.b +return this.a}} +A.aY0.prototype={ +rp(a){var s,r,q +A.G(a) +s=this.aQZ(a) +r=s.ghp() +if(r==null)q=null +else{r=r.a5(B.er) +r=r==null?null:r.r +q=r}if(q==null)q=14 +r=A.cG(a,B.bn) +r=r==null?null:r.gdZ() +r=(r==null?B.Y:r).bK(0,q) +return s.BP(new A.bS(A.Hw(B.ai2,B.ed,B.ed,r/14),t.Ak))}} +A.aY1.prototype={ +q(a){var s,r,q=null,p=A.cG(a,B.bn) +p=p==null?q:p.gdZ() +s=(p==null?B.Y:p).gir() +if(s<=1)r=8 +else{p=A.av(8,4,Math.min(s-1,1)) +p.toString +r=p}return A.eq(A.a([this.d,new A.ba(r,q,q,q),new A.iO(1,B.c1,this.c,q)],t.p),B.t,q,B.o,B.Z,q,q,B.x)}} +A.aXZ.prototype={ +gL7(){var s,r=this,q=r.fr +if(q===$){s=A.G(r.dy) +r.fr!==$&&A.a_() +q=r.fr=s.ay}return q}, +ghp(){return new A.bS(A.G(this.dy).p3.as,t.wG)}, +gcv(a){return B.cg}, +ghx(){return new A.by(new A.ci_(this),t.U)}, +gew(){return new A.by(new A.ci1(this),t.U)}, +gc0(a){return B.cg}, +gc9(){return B.cg}, +gft(a){return B.hS}, +gdX(a){return new A.bS(A.dnN(this.dy),t.Ak)}, +glg(){return B.lq}, +gle(){return B.eH}, +gdg(a){return B.eG}, +giS(){return new A.by(new A.ci0(),t.Y6)}, +gh6(){return A.G(this.dy).Q}, +gkU(){return A.G(this.dy).f}, +giV(){return A.G(this.dy).y}} +A.ci_.prototype={ +$1(a){var s +if(a.p(0,B.F)){s=this.a.gL7().db +return A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return this.a.gL7().b}, +$S:7} +A.ci1.prototype={ +$1(a){var s +if(a.p(0,B.X)){s=this.a.gL7().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.P)){s=this.a.gL7().b +return A.Y(20,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}if(a.p(0,B.R)){s=this.a.gL7().b +return A.Y(31,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255)}return null}, +$S:21} +A.ci0.prototype={ +$1(a){if(a.p(0,B.F))return B.c6 +return B.bG}, +$S:51} +A.b0Y.prototype={} +A.MB.prototype={ +gv(a){return J.ab(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.MB&&J.q(b.a,this.a)}} +A.aaQ.prototype={ +x0(a,b,c){return A.czg(c,this.w)}, +ed(a){return!this.w.l(0,a.w)}} +A.aY_.prototype={} +A.aY4.prototype={ +He(a){var s +this.ahx(a) +s=this.a +if(s.gkj()&&this.b){s=s.gb4().gam() +s.toString +s.pR()}}, +O6(a){}, +Hh(a){this.aR1(a) +this.x.aqP()}, +gaCN(){this.x.a.toString +return!1}, +acz(){var s=this.x.a.be +if(s!=null)s.$0()}, +Hg(a){var s,r +this.aR0(a) +if(this.a.gkj()){s=this.x +r=s.c +r.toString +switch(A.G(r).w.a){case 2:case 4:break +case 0:case 1:case 3:case 5:s=s.c +s.toString +A.bhI(s) +break}}}} +A.aaT.prototype={ +J(){var s=null +return new A.ajr(new A.aR(s,t.NE),s,A.N(t.yb,t.O),s,!0,s,B.f)}} +A.ajr.prototype={ +gq2(){var s=this.a.d +return s}, +gjR(){var s=this.a.e +if(s==null){s=this.e +if(s==null){s=A.hH(!0,null,!0,!0,null,null,!1) +this.e=s}}return s}, +gal8(){var s=this.a.k2 +if(s==null){s=this.c +s.toString +A.G(s) +s=B.b4C}return s}, +gaaD(){var s=this.x +s===$&&A.b() +return s}, +gkj(){return this.a.y2}, +gvK(){var s=this.a,r=s.p3 +if(r==null)s=s.f.bO +else s=r +return s}, +gano(){var s,r=this.a.k1 +if(r!=null)if(r>0){r=this.gq2().a.a +r=(r.length===0?B.dh:new A.iY(r)).gA(0) +s=this.a.k1 +s.toString +s=r>s +r=s}else r=!1 +else r=!1 +return r}, +gAR(){var s=this.a.f +if(s.ay==null)s=this.gano() +else s=!0 +return s}, +gJT(){var s=this.a,r=s.to +s=s.f +s=s.ch +s=s==null?null:s.b +if(s==null){s=this.c +s.toString +s=A.G(s).ay.at}return s}, +b21(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.c +e.toString +e=A.dS(e,B.an,t.v) +e.toString +s=g.c +s.toString +r=A.G(s) +s=g.a.f +s=s.Lz(r.e) +q=g.gvK() +p=g.a +o=p.f.as +n=s.bsa(q,o==null?p.dy:o) +s=n.p4==null +if(!s||n.p3!=null)return n +q=g.gq2().a.a +m=(q.length===0?B.dh:new A.iY(q)).gA(0) +if(s&&n.p3==null&&g.a.dd!=null){l=g.gjR().ge2() +e=g.a +s=e.dd +s.toString +q=g.c +q.toString +k=s.$4$currentLength$isFocused$maxLength(q,m,l,e.k1) +if(k!=null)j=new A.bX(A.ci(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,l,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),!0,!1,!1,!1,k,f) +else j=f +return n.brw(j)}s=g.a.k1 +if(s==null)return n +i=""+m +if(s>0){i+="/"+A.r(s) +h=e.aED(B.d.dV(s-m,0,s))}else h="" +if(g.gano()){e=n.ay +if(e==null)e="" +s=n.ch +if(s==null){s=g.c +s.toString +q=A.G(s).p3.Q +q.toString +s=q.bu(A.G(s).ay.at)}return n.bsx(s,i,e,h)}return n.bs8(i,h)}, +a8(){var s,r=this +r.an() +r.w=new A.aY4(r,r) +r.a.toString +s=r.gjR() +s.shP(r.a.aU&&r.gvK()) +r.gjR().a3(0,r.gU7()) +r.b7H()}, +gasH(){var s,r=this.c +r.toString +r=A.cG(r,B.k5) +s=r==null?null:r.ch +switch((s==null?B.hW:s).a){case 0:return this.a.aU&&this.gvK() +case 1:return!0}}, +c5(){this.aUe() +this.gjR().shP(this.gasH())}, +b1(a){var s,r,q=this +q.aUf(a) +s=q.a +r=a.e +if(s.e!=r){s=r==null?q.e:r +if(s!=null)s.O(0,q.gU7()) +s=q.a.e +if(s==null)s=q.e +if(s!=null)s.a3(0,q.gU7())}q.gjR().shP(q.gasH()) +if(q.gjR().ge2()&&q.a.fy!==a.fy&&q.gvK()){s=q.gq2().a.b +if(s.a===s.b)q.r=!q.a.fy}q.a.toString +q.gmT().ic(0,B.F,!q.gvK()) +q.gmT().ic(0,B.P,q.f) +q.gmT().ic(0,B.R,q.gjR().ge2()) +q.gmT().ic(0,B.e_,q.gAR())}, +lk(a,b){var s=this.d +if(s!=null)this.oC(s,"controller")}, +gkh(){return this.a.aq}, +m(){var s,r=this +r.gjR().O(0,r.gU7()) +s=r.e +if(s!=null)s.m() +s=r.d +if(s!=null){s.b_K() +s.aQ4()}r.gmT().O(0,r.gane()) +s=r.z +if(s!=null){s.k3$=$.ae() +s.k2$=0}r.aUg()}, +aqP(){var s=this.y.gam() +if(s!=null)s.adm()}, +bjv(a){var s=this,r=s.w +r===$&&A.b() +if(!r.b)return!1 +if(a===B.bj)return!1 +if(s.a.fy){r=s.gq2().a.b +r=r.a===r.b}else r=!1 +if(r)return!1 +if(!s.gvK())return!1 +if(a===B.cI||a===B.pX)return!0 +if(s.gq2().a.a.length!==0)return!0 +return!1}, +bjq(){this.C(new A.ci3()) +this.gmT().ic(0,B.R,this.gjR().ge2())}, +bjs(a,b){var s,r=this,q=r.bjv(b) +if(q!==r.r)r.C(new A.ci5(r,q)) +s=r.c +s.toString +switch(A.G(s).w.a){case 2:case 4:case 3:case 5:case 1:case 0:if(b===B.cI){s=r.y.gam() +if(s!=null)s.p7(a.giY())}break}s=r.c +s.toString +switch(A.G(s).w.a){case 2:case 1:case 0:break +case 4:case 3:case 5:if(b===B.bl){s=r.y.gam() +if(s!=null)s.jD()}break}}, +bju(){var s=this.gq2().a.b +if(s.a===s.b)this.y.gam().adJ()}, +asI(a){var s=this +if(a!==s.f){s.C(new A.ci4(s,a)) +s.gmT().ic(0,B.P,s.f)}}, +b6x(){this.C(new A.ci6())}, +gmT(){this.a.toString +var s=this.z +s.toString +return s}, +b7H(){var s=this +s.a.toString +s.z=A.Kf(null) +s.gmT().ic(0,B.F,!s.gvK()) +s.gmT().ic(0,B.P,s.f) +s.gmT().ic(0,B.R,s.gjR().ge2()) +s.gmT().ic(0,B.e_,s.gAR()) +s.gmT().a3(0,s.gane())}, +gavJ(){var s=this.y.gam() +s.toString +return"EditableText-"+A.ef(s)}, +avI(a){return this.y.gam().adW(a)}, +goF(){var s,r,q,p,o=this,n=o.a.a4 +if(n==null)s=null +else s=J.n8(n.slice(0),A.X(n).c) +if(s!=null){n=o.y.gam() +n.toString +n=A.ef(n) +r=o.gq2().a +q=o.a.f +p=new A.a_s(!0,"EditableText-"+n,s,r,q.y)}else p=B.zC +n=o.y.gam().goF() +return A.cMK(null,n.ax,n.d,p,!1,!0,n.x,n.w,n.z,n.a,n.as,n.c,n.b,n.f,n.r,n.Q)}, +q(e5){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=null,e2={},e3=A.G(e5),e4=e5.a0(t.Uf) +if(e4==null)e4=B.eZ +s=A.d2(e0.a.y,e0.gmT().a,t.p8) +r=A.G(e5).p3.y +r.toString +q=e0.c +q.toString +A.G(q) +q=e0.c +q.toString +q=A.dmW(q) +p=t.em +o=A.d2(q,e0.gmT().a,p) +n=A.d2(r,e0.gmT().a,p).dt(o).dt(s) +e0.a.toString +r=e3.ay +m=e0.gq2() +l=e0.gjR() +q=A.a([],t.VS) +p=e0.a.p2 +if(p!=null)B.b.L(q,p) +p=e0.a.k1 +if(p!=null)q.push(new A.awQ(p,e0.gal8())) +switch(A.bL().a){case 2:case 4:k=A.d3T(e0.a.eA) +break +case 0:case 1:case 3:case 5:k=A.df4(e0.a.eA) +break +default:k=e1}p=e0.a +j=p.c_ +i=p.rx +h=p.RG +e2.a=e2.b=null +switch(e3.w.a){case 2:g=A.kP(e5) +e0.x=!0 +j=$.cuM() +if(e0.gAR())f=e0.gJT() +else{e0.a.toString +p=e4.w +f=p==null?g.gkf():p}e=e4.x +if(e==null){e4=g.gkf() +e=A.Y(102,e4.gj(e4)>>>16&255,e4.gj(e4)>>>8&255,e4.gj(e4)&255)}d=new A.j(-2/A.bC(e5,B.ev,t.l).w.b,0) +c=e +b=!0 +i=!0 +h=B.h5 +break +case 4:g=A.kP(e5) +i=e0.x=!1 +j=$.cuL() +if(e0.gAR())f=e0.gJT() +else{e0.a.toString +p=e4.w +f=p==null?g.gkf():p}e=e4.x +if(e==null){e4=g.gkf() +e=A.Y(102,e4.gj(e4)>>>16&255,e4.gj(e4)>>>8&255,e4.gj(e4)&255)}d=new A.j(-2/A.bC(e5,B.ev,t.l).w.b,0) +e2.b=new A.ci8(e0) +e2.a=new A.ci9(e0) +c=e1 +b=!0 +h=B.h5 +break +case 0:case 1:e0.x=!1 +j=$.cuS() +if(e0.gAR())f=e0.gJT() +else{e0.a.toString +p=e4.w +f=p==null?r.b:p}e=e4.x +if(e==null){e4=r.b +e=A.Y(102,e4.gj(e4)>>>16&255,e4.gj(e4)>>>8&255,e4.gj(e4)&255)}c=e1 +d=c +b=!1 +i=!1 +break +case 3:e0.x=!1 +j=$.b2R() +if(e0.gAR())f=e0.gJT() +else{e0.a.toString +p=e4.w +f=p==null?r.b:p}e=e4.x +if(e==null){e4=r.b +e=A.Y(102,e4.gj(e4)>>>16&255,e4.gj(e4)>>>8&255,e4.gj(e4)&255)}e2.b=new A.cia(e0) +e2.a=new A.cib(e0) +c=e1 +d=c +b=!1 +i=!1 +break +case 5:e0.x=!1 +j=$.b2R() +if(e0.gAR())f=e0.gJT() +else{e0.a.toString +p=e4.w +f=p==null?r.b:p}e=e4.x +if(e==null){e4=r.b +e=A.Y(102,e4.gj(e4)>>>16&255,e4.gj(e4)>>>8&255,e4.gj(e4)&255)}e2.b=new A.cic(e0) +e2.a=new A.cid(e0) +c=e1 +d=c +b=!1 +i=!1 +break +default:c=e1 +e=c +f=e +d=f +b=d}e4=e0.eb$ +p=e0.a.fy||!e0.gvK() +a=e0.a +a0=a.go +a1=a.id +a2=e0.r +a3=a.ck +a4=a.r +a5=a.w +a6=a.x +a7=a.z +a8=a.Q +a9=a.at +b0=a.ax +b1=a.ch +b2=a.CW +b3=a.cx +b4=a.cy +b5=a.db +b6=a.dx +b7=a.dy +a=a.fr +b8=l.ge2()?e:e1 +b9=e0.a +c0=b9.y2 +c1=c0?j:e1 +c2=b9.k3 +c3=b9.k4 +c4=b9.ok +c5=b9.p1 +c6=b9.bU +c7=b9.p4 +c8=b9.R8 +c9=b9.x1 +d0=b9.x2 +d1=b9.y1 +d2=b9.bO +d3=b9.N +d4=b9.D +d5=b9.ag +d6=b9.aW +b9=b9.aT +d7=$.cur() +e4=A.abH(e4,A.cHP(b3,c,e0,B.bF,b0,B.ht,d5,d6,b9,m,f,c8,d,i,h,c7,d2,!0,c0,b6,!1,l,!0,q,e0.y,r.a,a4,d7,b7,a,B.bt,b2,b1,c5,c2,c3,e0.gbjr(),e0.gbjt(),c4,c6,b,p,!0,"editable",!0,d3,d1,d4,b8,c1,c9,d0,a1,a2,b4,b5,k,a7,n,a8,a6,a9,e1,a5,e1,B.a0,a0,a3)) +e0.a.toString +d8=A.hC(new A.B9(A.a([l,m],t.Eo)),new A.cie(e0,l,m),new A.iU(e4,e1)) +e4=e0.a.e7 +if(e4==null)e4=B.bz2 +d9=A.d2(e4,e0.gmT().a,t.Pb) +e2.c=null +if(e0.gal8()!==B.b4A){e4=e0.a.k1 +e4=e4!=null&&e4>0}else e4=!1 +if(e4)e2.c=e0.a.k1 +e4=e0.gvK() +r=e0.w +r===$&&A.b() +return A.ip(A.aG4(A.n6(A.hC(m,new A.cif(e2,e0),r.awf(B.cr,d8)),!e4,e1),e1,e1),d9,e1,e1,new A.cig(e0),new A.cih(e0),e1)}, +$ixZ:1, +gb4(){return this.y}} +A.ci3.prototype={ +$0(){}, +$S:0} +A.ci5.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.ci4.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.ci6.prototype={ +$0(){}, +$S:0} +A.ci8.prototype={ +$0(){var s=this.a +if(!s.gjR().ge2()&&s.gjR().ghP())s.gjR().ho()}, +$S:0} +A.ci9.prototype={ +$0(){this.a.gjR().lR()}, +$S:0} +A.cia.prototype={ +$0(){var s=this.a +if(!s.gjR().ge2()&&s.gjR().ghP())s.gjR().ho()}, +$S:0} +A.cib.prototype={ +$0(){this.a.gjR().lR()}, +$S:0} +A.cic.prototype={ +$0(){var s=this.a +if(!s.gjR().ge2()&&s.gjR().ghP())s.gjR().ho()}, +$S:0} +A.cid.prototype={ +$0(){this.a.gjR().lR()}, +$S:0} +A.cie.prototype={ +$2(a,b){var s,r,q,p=this.a,o=p.b21(),n=p.a,m=n.y,l=n.Q +n=n.as +s=p.f +r=this.b.ge2() +q=this.c.a.a +p.a.toString +return new A.JC(o,m,l,n,r,s,!1,q.length===0,b,null)}, +$S:560} +A.cig.prototype={ +$1(a){return this.a.asI(!0)}, +$S:69} +A.cih.prototype={ +$1(a){return this.a.asI(!1)}, +$S:70} +A.cif.prototype={ +$2(a,b){var s,r=null,q=this.a,p=q.c,o=this.b,n=o.gq2().a.a +n=(n.length===0?B.dh:new A.iY(n)).gA(0) +o=o.a.fy?r:new A.ci7(o) +s=q.b +q=q.a +return new A.bX(A.ci(r,r,r,r,r,r,r,n,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,p,r,r,r,r,r,r,r,s,q,r,r,r,r,r,r,r,r,r,r,r,r,o,r,r,r,r,r,r,r,r,r,r,r),!1,!1,!1,!1,b,r)}, +$S:210} +A.ci7.prototype={ +$0(){var s=this.a +if(!s.gq2().a.b.gfc())s.gq2().sDF(A.oK(B.E,s.gq2().a.a.length)) +s.aqP()}, +$S:0} +A.cpR.prototype={ +$1(a){var s,r=null +if(a.p(0,B.F)){s=A.G(this.a).p3.y.b +return A.dH(r,r,s==null?r:A.Y(97,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(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.dH(r,r,A.G(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:79} +A.cnY.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.alD.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.cnY()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.ap()}} +A.aaU.prototype={ +J(){var s=null,r=$.ae() +return new A.YT(new A.a8v(s,r),new A.LI(!1,r),s,A.N(t.yb,t.O),s,!0,s,B.f)}} +A.bKU.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i=this +t.iN.a(a) +s=i.a +r=a.c +r.toString +q=s.Lz(A.G(r).e) +r=a.eb$ +p=a.gEq() +o=a.e +n=o.y +o=q.brA(n==null?A.z(o).h("cV.T").a(n):n) +n=i.ay +m=i.cx +l=i.db +l=m?B.xu:B.xv +k=i.dx +k=m?B.xw:B.xx +j=i.p2 +s=s.bO +j=i.x2 +j=!m||!n +return A.abH(r,A.Fz(i.cy,i.y2,i.as,i.y1,i.aT,i.U,i.aJ,i.bj,p,i.RG,i.rx,i.p4,i.N,i.R8,i.p3,o,i.aq,i.bO,j,i.dy,s!==!1,i.go,i.d,i.p1,null,i.x1,i.e,i.e7,i.id,i.fr,i.fx,i.fy,i.be,m,i.CW,i.D,new A.bKV(a,i.b),i.k4,i.ok,i.k1,i.k2,i.k3,n,i.c,i.aW,i.c_,i.ry,i.to,i.xr,i.a4,i.ag,i.ch,l,k,i.bU,i.at,i.w,i.r,i.x,i.y,i.Q,i.z,i.f,i.ax,i.dd))}, +$S:561} +A.bKV.prototype={ +$1(a){var s +this.a.W5(a) +s=this.b +if(s!=null)s.$1(a)}, +$S:46} +A.YT.prototype={ +gEq(){var s=t.mr.a(A.T.prototype.gb7.call(this)) +return s.z}, +lk(a,b){var s,r=this +r.aOr(a,b) +s=r.ax +if(s!=null)r.oC(s,"controller") +r.d=r.gEq().a.a}, +a8(){var s,r=this +r.an() +s=t.mr +s.a(A.T.prototype.gb7.call(r)) +s.a(A.T.prototype.gb7.call(r)).z.a3(0,r.ga3p())}, +b1(a){var s,r,q,p=this +p.aRD(a) +s=t.mr +r=a.z +if(s.a(A.T.prototype.gb7.call(p)).z!==r){q=p.ga3p() +r.O(0,q) +s.a(A.T.prototype.gb7.call(p)).z.a3(0,q) +s.a(A.T.prototype.gb7.call(p)) +s.a(A.T.prototype.gb7.call(p)) +p.d=s.a(A.T.prototype.gb7.call(p)).z.a.a}}, +m(){var s,r=this +t.mr.a(A.T.prototype.gb7.call(r)).z.O(0,r.ga3p()) +s=r.ax +if(s!=null){s.b_K() +s.aQ4()}r.aOq()}, +W5(a){var s +this.aOp(a) +if(this.gEq().a.a!==a){s=this.gEq() +s.sce(0,a)}}, +b3l(){var s=this +if(s.gEq().a.a!==s.gauo())s.W5(s.gEq().a.a)}} +A.az9.prototype={} +A.brs.prototype={ +It(a){return B.bmh}, +Vi(a,b,c,d){var s,r,q,p=null,o=A.G(a) +a.a0(t.bZ) +s=A.G(a) +r=s.iQ.c +if(r==null)r=o.ay.b +q=new A.ba(22,22,A.ih(A.dn(B.cr,p,B.m,!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,p,p,p,!1,B.ac),p,p,new A.aY6(r,p),B.A),p) +switch(b.a){case 0:return A.aGX(1.5707963267948966,q) +case 1:return q +case 2:return A.aGX(0.7853981633974483,q)}}, +Is(a,b){switch(a.a){case 0:return B.bbm +case 1:return B.h +case 2:return B.bbh}}} +A.aY6.prototype={ +aI(a,b){var s,r,q,p,o=$.ar(),n=o.aP() +n.sa6(0,this.b) +s=b.a/2 +r=A.jQ(new A.j(s,s),s) +q=0+s +p=o.dc() +p.q5(r) +p.jd(new A.W(0,0,q,q)) +a.ey(p,n)}, +hC(a){return!this.b.l(0,a.b)}} +A.aRl.prototype={} +A.ab5.prototype={ +gv(a){return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.ab5&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&J.q(b.c,s.c)}} +A.aY8.prototype={} +A.aGf.prototype={ +q(a){var s=this.c.W(0,B.bbc),r=this.d.S(0,B.bb9),q=A.bC(a,B.cV,t.l).w.r.b+8,p=44<=s.b-8-q,o=new A.j(8,q) +return new A.aA(new A.af(8,q,8,8),new A.q1(new A.aGg(s.W(0,o),r.W(0,o),p),new A.ajx(this.e,p,A.dwm(),null),null),null)}} +A.ajx.prototype={ +J(){return new A.aYd(new A.qR(),null,null,B.f)}, +bH7(a,b){return this.e.$2(a,b)}} +A.aYd.prototype={ +b1(a){var s=this +s.bc(a) +if(!A.fj(s.a.c,a.c)){s.e=new A.qR() +s.d=!1}}, +q(a){var s,r,q,p,o,n,m,l=this,k=null,j=A.dS(a,B.an,t.v) +j.toString +s=l.e +r=l.d +q=a.a0(t.I) +q.toString +p=l.a +o=p.d +n=l.d +m=A.b2(n?B.DE:B.uy,k,k,k,k,k,k,k,k,k,k) +j=n?j.gcq():j.gcF() +j=A.a([new A.aYc(m,new A.ciC(l),j,k)],t.p) +B.b.L(j,l.a.c) +return new A.aYe(r,q.w,A.xS(B.C,p.bH7(a,new A.aYa(o,n,j,k)),B.H,B.ahI,k),s)}} +A.ciC.prototype={ +$0(){var s=this.a +s.C(new A.ciB(s))}, +$S:0} +A.ciB.prototype={ +$0(){var s=this.a +s.d=!s.d}, +$S:0} +A.aYe.prototype={ +aR(a){var s=new A.aYf(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sacD(this.e) +b.sd5(this.f)}} +A.aYf.prototype={ +sacD(a){if(a===this.ac)return +this.ac=a +this.a9()}, +sd5(a){if(a===this.aS)return +this.aS=a +this.a9()}, +bJ(){var s,r,q=this,p=q.k1$ +p.toString +s=t.k +r=s.a(A.H.prototype.gZ.call(q)) +p.d_(new A.aG(0,r.b,0,r.d),!0) +if(!q.ac&&q.G==null)q.G=q.k1$.gu(0).a +p=s.a(A.H.prototype.gZ.call(q)) +s=q.G +if(s!=null){s=q.k1$.gu(0) +r=q.G +r.toString +s=s.a>r}else{r=s +s=!0}if(s)s=q.k1$.gu(0).a +else{r.toString +s=r}q.id=p.bd(new A.V(s,q.k1$.gu(0).b)) +s=q.k1$.b +s.toString +t.yS.a(s) +s.a=new A.j(q.aS===B.ae?0:q.gu(0).a-q.k1$.gu(0).a,0)}, +aI(a,b){var s=this.k1$,r=s.b +r.toString +a.eM(s,t.yS.a(r).a.S(0,b))}, +ej(a,b){var s=this.k1$.b +s.toString +t.yS.a(s) +return a.l5(new A.ciD(this,b,s),s.a,b)}, +fo(a){if(!(a.b instanceof A.nu))a.b=new A.nu(null,null,B.h)}, +hh(a,b){var s=a.b +s.toString +s=t.yS.a(s).a +b.ba(0,s.a,s.b) +this.aPV(a,b)}} +A.ciD.prototype={ +$2(a,b){return this.a.k1$.es(a,b)}, +$S:19} +A.aYa.prototype={ +aR(a){var s=new A.aVn(this.e,this.f,0,null,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){b.sGQ(this.e) +b.sacD(this.f)}, +dv(a){return new A.aYb(A.dV(t.lU),this,B.aD)}} +A.aYb.prototype={} +A.aVn.prototype={ +sGQ(a){if(a===this.N)return +this.N=a +this.a9()}, +sacD(a){if(a===this.a4)return +this.a4=a +this.a9()}, +b8r(){var s,r=this,q={},p=t.k,o=r.a4?p.a(A.H.prototype.gZ.call(r)):A.nT(new A.V(p.a(A.H.prototype.gZ.call(r)).b,44)) +q.a=-1 +q.b=0 +r.d0(new A.ccw(q,r,o)) +p=r.Y$ +p.toString +s=r.D +if(s!==-1&&s===r.cT$-2&&q.b-p.gu(0).a<=o.b)r.D=-1}, +as_(a,b){var s,r=this +if(a===r.Y$)return r.D!==-1 +s=r.D +if(s===-1)return!0 +return b>s===r.a4}, +bea(){var s,r,q,p,o=this,n={} +n.a=-1 +n.b=B.A +n.c=0 +s=o.Y$ +s.toString +n.d=o.a4&&!o.N?s.gu(0).b:0 +o.d0(new A.ccx(n,o,s)) +r=s.b +r.toString +t.yS.a(r) +q=o.Y$ +q.toString +if(o.as_(q,0)){r.e=!0 +if(o.a4){q=o.N +r.a=q?new A.j(0,n.d):B.h +r=n.b +p=r.b +s=q?p+s.gu(0).b:p +n.b=new A.V(r.a,s)}else{r.a=new A.j(n.c,0) +n.b=new A.V(n.b.a+s.gu(0).a,n.b.b)}}else r.e=!1 +o.id=n.b}, +bJ(){var s,r=this +r.D=-1 +if(r.Y$==null){s=t.k.a(A.H.prototype.gZ.call(r)) +r.id=new A.V(A.Z(0,s.a,s.b),A.Z(0,s.c,s.d)) +return}r.b8r() +r.bea()}, +aI(a,b){this.d0(new A.ccz(a,b))}, +fo(a){if(!(a.b instanceof A.nu))a.b=new A.nu(null,null,B.h)}, +ej(a,b){var s,r,q={},p=q.a=this.d7$ +for(s=t.yS;p!=null;){p=p.b +p.toString +s.a(p) +if(!p.e){r=p.dJ$ +q.a=r +p=r +continue}if(a.l5(new A.ccy(q,b,p),p.a,b))return!0 +r=p.dJ$ +q.a=r +p=r}return!1}, +lm(a){this.d0(new A.ccA(a))}} +A.ccw.prototype={ +$1(a){var s,r,q,p,o=this.a;++o.a +s=this.b +if(s.D!==-1&&!s.a4)return +t.x.a(a) +r=this.c +q=r.b +a.d_(new A.aG(0,q,0,r.d),!0) +p=o.b+a.gu(0).a +o.b=p +if(p>q&&s.D===-1)s.D=o.a-1}, +$S:30} +A.ccx.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.as_(a,o)){s.e=!1 +return}s.e=!0 +if(!r.a4){o=p.c +s.a=new A.j(o,0) +q=o+a.gu(0).a +p.c=q +p.b=new A.V(q,Math.max(a.gu(0).b,p.b.b))}else{o=p.d +s.a=new A.j(0,o) +p.d=o+a.gu(0).b +p.b=new A.V(Math.max(a.gu(0).a,p.b.a),p.d)}}, +$S:30} +A.ccz.prototype={ +$1(a){var s +t.x.a(a) +s=a.b +s.toString +t.yS.a(s) +if(!s.e)return +this.a.eM(a,s.a.S(0,this.b))}, +$S:30} +A.ccy.prototype={ +$2(a,b){return this.a.a.es(a,b)}, +$S:19} +A.ccA.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:30} +A.aY9.prototype={ +q(a){var s=null +return A.fX(B.K,!0,B.a2z,this.c,B.dL,A.djo(A.G(a).ay),1,s,s,s,s,s,B.fZ)}} +A.aYc.prototype={ +q(a){var s=null +return A.fX(B.K,!0,s,A.lx(s,!1,s,s,s,s,s,s,s,s,this.c,s,s,s,s,this.d,s,s,s,s,s,this.e,s),B.i,B.D,0,s,s,s,s,s,B.fZ)}} +A.b0z.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.yS;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.yS;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0Z.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.YV.prototype={ +H(){return"_TextSelectionToolbarItemPosition."+this.b}} +A.aGh.prototype={ +q(a){var s=this,r=null +return A.nq(!1,s.c,B.i,r,!0,r,r,r,r,s.d,r,A.VJ(s.f,r,B.D,r,r,r,r,r,r,r,A.dfc(A.G(a).ay),r,r,B.Yx,s.e,r,B.ep,r,r,r,r,B.bqa,r))}} +A.jU.prototype={ +dt(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.dt(b3.a) +if(r==null)r=b3.a +q=b1.b +p=q==null?b2:q.dt(b3.b) +if(p==null)p=b3.b +o=b1.c +n=o==null?b2:o.dt(b3.c) +if(n==null)n=b3.c +m=b1.d +l=m==null?b2:m.dt(b3.d) +if(l==null)l=b3.d +k=b1.e +j=k==null?b2:k.dt(b3.e) +if(j==null)j=b3.e +i=b1.f +h=i==null?b2:i.dt(b3.f) +if(h==null)h=b3.f +g=b1.r +f=g==null?b2:g.dt(b3.r) +if(f==null)f=b3.r +e=b1.w +d=e==null?b2:e.dt(b3.w) +if(d==null)d=b3.w +c=b1.x +b=c==null?b2:c.dt(b3.x) +if(b==null)b=b3.x +a=b1.y +a0=a==null?b2:a.dt(b3.y) +if(a0==null)a0=b3.y +a1=b1.z +a2=a1==null?b2:a1.dt(b3.z) +if(a2==null)a2=b3.z +a3=b1.Q +a4=a3==null?b2:a3.dt(b3.Q) +if(a4==null)a4=b3.Q +a5=b1.as +a6=a5==null?b2:a5.dt(b3.as) +if(a6==null)a6=b3.as +a7=b1.at +a8=a7==null?b2:a7.dt(b3.at) +if(a8==null)a8=b3.at +a9=b1.ax +b0=a9==null?b2:a9.dt(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.czm(j,i,h,s,r,q,p,o,n,g,f,e==null?a9:e,m,l,k)}, +bmR(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.mW(a0,d,b,d,a1,a2,0,1,a3) +s=e.b +s=s==null?d:s.mW(a0,d,b,d,a1,a2,0,1,a3) +r=e.c +r=r==null?d:r.mW(a0,d,b,d,a1,a2,0,1,a3) +q=e.d +q=q==null?d:q.mW(a0,d,b,d,a1,a2,0,1,a3) +p=e.e +p=p==null?d:p.mW(a0,d,b,d,a1,a2,0,1,a3) +o=e.f +o=o==null?d:o.mW(a,d,b,d,a1,a2,0,1,a3) +n=e.r +n=n==null?d:n.mW(a,d,b,d,a1,a2,0,1,a3) +m=e.w +m=m==null?d:m.mW(a,d,b,d,a1,a2,0,1,a3) +l=e.x +l=l==null?d:l.mW(a,d,b,d,a1,a2,0,1,a3) +k=e.y +k=k==null?d:k.mW(a,d,b,d,a1,a2,0,1,a3) +j=e.z +j=j==null?d:j.mW(a,d,b,d,a1,a2,0,1,a3) +i=e.Q +i=i==null?d:i.mW(a0,d,b,d,a1,a2,0,1,a3) +h=e.as +h=h==null?d:h.mW(a,d,b,d,a1,a2,0,1,a3) +g=e.at +g=g==null?d:g.mW(a,d,b,d,a1,a2,0,1,a3) +f=e.ax +return A.czm(k,j,i,c,s,r,q,p,o,h,g,f==null?d:f.mW(a,d,b,d,a1,a2,0,1,a3),n,m,l)}, +avn(a,b,c){return this.bmR(a,b,c,null,null,null)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.jU&&J.q(s.a,b.a)&&J.q(s.b,b.b)&&J.q(s.c,b.c)&&J.q(s.d,b.d)&&J.q(s.e,b.e)&&J.q(s.f,b.f)&&J.q(s.r,b.r)&&J.q(s.w,b.w)&&J.q(s.x,b.x)&&J.q(s.y,b.y)&&J.q(s.z,b.z)&&J.q(s.Q,b.Q)&&J.q(s.as,b.as)&&J.q(s.at,b.at)&&J.q(s.ax,b.ax)}, +gv(a){var s=this +return A.ad(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.aYi.prototype={} +A.pC.prototype={ +q(a){var s,r,q=null,p=this.c,o=B.fw.a,n=B.fw.b,m=B.fw.c,l=B.fw.d,k=B.fw.e,j=B.fw.f,i=B.fw.r,h=a.a0(t.Uf) +if(h==null)h=B.eZ +s=p.iQ +r=s.b +if(r==null)r=h.x +s=s.a +h=s==null?h.w:s +return new A.afl(this,new A.arU(new A.axm(p,new A.a6h(o,n,m,l,k,j,i),B.yI,o,n,m,l,k,j,i),A.DA(A.bcc(this.d,h,q,q,r),p.ok,q),q),q)}} +A.afl.prototype={ +x0(a,b,c){return new A.pC(this.w.c,c,null)}, +ed(a){return!this.w.c.l(0,a.w.c)}} +A.MI.prototype={ +iE(a){var s,r=this.a +r.toString +s=this.b +s.toString +return A.dfl(r,s,a)}} +A.a_5.prototype={ +J(){return new A.aKH(null,null,B.f)}} +A.aKH.prototype={ +n6(a){var s=a.$3(this.CW,this.a.r,new A.bRt()) +s.toString +this.CW=t.ZM.a(s)}, +q(a){var s=this.CW +s.toString +return new A.pC(s.ah(0,this.gih().gj(0)),this.a.w,null)}} +A.bRt.prototype={ +$1(a){return new A.MI(t.we.a(a),null)}, +$S:562} +A.xP.prototype={} +A.Kg.prototype={ +H(){return"MaterialTapTargetSize."+this.b}} +A.nr.prototype={ +aer(a){return a.h("xP<0>?").a(this.d.i(0,A.c6(a)))}, +uc(b6,b7,b8,b9,c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,d0){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=c1==null?a7.e:c1,b0=c3==null?a7.r:c3,b1=d0==null?a7.Q:d0,b2=b8==null?a7.ay:b8,b3=b2.b,b4=b2.c,b5=b2.d +if(b5==null)b5=b3 +s=b2.e +if(s==null)s=b4 +r=b2.f +q=b2.r +p=b2.w +if(p==null)p=r +o=b2.x +if(o==null)o=q +n=b2.y +m=n==null?r:n +l=b2.z +k=l==null?q:l +j=b2.Q +if(j==null){if(n==null)n=r}else n=j +j=b2.as +if(j==null){if(l==null)l=q}else l=j +j=b2.at +i=b2.ax +h=b2.ay +if(h==null)h=j +g=b2.ch +if(g==null)g=i +f=b2.cx +e=b2.cy +d=b2.db +c=b2.dx +if(c==null)c=e +b=b2.dy +if(b==null)b=d +a=b2.fr +if(a==null)a=f +a0=b2.fx +if(a0==null)a0=f +a1=b2.fy +if(a1==null)a1=B.B +a2=b2.go +if(a2==null)a2=B.B +a3=b2.id +if(a3==null)a3=d +a4=b2.k1 +if(a4==null)a4=e +a5=b2.k2 +if(a5==null)a5=b4 +a6=b2.k3 +if(a6==null)a6=b3 +n=A.b9U(b2.CW,b2.a,j,h,a5,a3,f,i,g,a4,b4,s,q,o,d,b,k,l,a,a0,b3,b5,a2,r,p,a1,e,a6,c,m,n) +b2=b9==null?a7.ch:b9 +b3=c0==null?a7.ok:c0 +b4=c6==null?a7.p2:c6 +b5=c9==null?a7.p3:c9 +s=b6==null?a7.RG:b6 +r=b7==null?a7.y2:b7 +q=c2==null?a7.ck:c2 +p=c5==null?a7.ez:c5 +o=c7==null?a7.dP:c7 +return A.czn(a7.R8,a7.d,s,a7.a,a7.hi,a7.rx,a7.ry,a7.as,a7.to,a7.x1,a7.x2,a7.xr,a7.y1,a7.at,a7.ax,r,a7.c_,a7.bO,n,a7.b,a7.be,a7.bj,b2,a7.bU,a7.CW,a7.cx,a7.e7,a7.dd,a7.D,a7.N,a7.dF,a7.a4,a7.c,a7.ag,a7.aq,a7.cy,a7.db,a7.dx,a7.dy,a7.aJ,b3,a7.fr,a9,a7.U,a7.f,a7.aW,a7.aT,a7.aU,q,a7.eA,a7.eq,a7.f1,b0,a7.w,p,a7.fx,a7.fy,a7.go,a7.p1,b4,a7.dA,a7.e8,a7.id,a7.x,a7.hS,a7.bk,a7.k1,a7.er,a7.k2,o,a7.eX,a7.k3,a7.y,a7.dr,a7.dQ,a7.fA,a7.iQ,b5,a7.eT,a7.fG,a7.G,a7.mf,a7.p4,a7.k4,!0,b1)}, +bsl(a,b){var s=null +return this.uc(s,s,s,s,s,s,s,s,s,s,a,s,s,b,s)}, +bsF(a,b,c,d,e,f){var s=null +return this.uc(s,s,a,s,s,s,b,c,d,s,s,s,e,s,f)}, +brv(a){var s=null +return this.uc(s,a,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +bry(a){var s=null +return this.uc(s,s,s,a,s,s,s,s,s,s,s,s,s,s,s)}, +a8u(a){var s=null +return this.uc(s,s,a,s,s,s,s,s,s,s,s,s,s,s,s)}, +bs0(a){var s=null +return this.uc(s,s,s,s,s,s,s,s,s,s,s,s,s,s,a)}, +bs5(a,b){var s=null +return this.uc(a,s,s,s,s,b,s,s,s,s,s,s,s,s,s)}, +bsb(a,b){var s=null +return this.uc(s,s,s,s,a,s,s,s,s,b,s,s,s,s,s)}, +brT(a){var s=null +return this.uc(s,s,s,s,s,s,s,s,s,s,s,a,s,s,s)}, +brE(a){var s=null +return this.uc(s,s,s,s,a,s,s,s,s,s,s,s,s,s,s)}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(J.az(b)!==A.I(q))return!1 +if(b instanceof A.nr)if(A.Zl(b.d,q.d))if(b.a===q.a)if(A.Zl(b.c,q.c))if(b.e.l(0,q.e))if(b.f===q.f)if(b.r.l(0,q.r))if(b.w===q.w)if(b.x.l(0,q.x))if(b.y===q.y)if(b.Q.l(0,q.Q))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.k1.l(0,q.k1))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.q(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.c_.l(0,q.c_))if(b.bO.l(0,q.bO))if(b.be.l(0,q.be))if(b.bj.l(0,q.bj))if(b.bU.l(0,q.bU))if(b.e7.l(0,q.e7))if(b.dd.l(0,q.dd))if(b.D.l(0,q.D))if(b.N.l(0,q.N))if(b.a4.l(0,q.a4))if(b.ag.l(0,q.ag))if(b.aq.l(0,q.aq))if(b.aJ.l(0,q.aJ))if(b.U.l(0,q.U))if(b.aW.l(0,q.aW))if(b.aT.l(0,q.aT))if(b.aU.l(0,q.aU))if(b.ck.l(0,q.ck))if(b.eA.l(0,q.eA))if(b.eq.l(0,q.eq))if(b.f1.l(0,q.f1))if(b.ez.l(0,q.ez))if(b.dA.l(0,q.dA))if(b.e8.l(0,q.e8))if(b.hS.l(0,q.hS))if(b.bk.l(0,q.bk))if(b.er.l(0,q.er))if(b.dP.l(0,q.dP))if(b.eX.l(0,q.eX))if(b.dr.l(0,q.dr))if(b.dQ.l(0,q.dQ))if(b.fA.l(0,q.fA))if(b.iQ.l(0,q.iQ))if(b.eT.l(0,q.eT))if(b.fG.l(0,q.fG))if(b.mf.l(0,q.mf)){s=b.G +s.toString +r=q.G +r.toString +if(s.l(0,r)){s=b.dF +s.toString +r=q.dF +r.toString +if(s.l(0,r)){s=b.hi +s.toString +r=q.hi +r.toString +if(s.l(0,r)){s=b.as +s.toString +r=q.as +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 +return s}, +gv(a){var s=this,r=s.d,q=A.R(new A.bR(r,A.z(r).h("bR<1>")),!0,t.X) +B.b.L(q,r.gbm(0)) +q.push(s.a) +q.push(s.b) +r=s.c +B.b.L(q,r.gek(r)) +B.b.L(q,r.gbm(r)) +q.push(s.e) +q.push(s.f) +q.push(s.r) +q.push(s.w) +q.push(s.x) +q.push(s.y) +q.push(!0) +q.push(s.Q) +q.push(s.at) +q.push(s.ax) +q.push(s.ay) +q.push(s.ch) +q.push(s.CW) +q.push(s.cx) +q.push(s.cy) +q.push(s.db) +q.push(s.dx) +q.push(s.dy) +q.push(s.fr) +q.push(s.fx) +q.push(s.fy) +q.push(s.go) +q.push(s.id) +q.push(s.k1) +q.push(s.k2) +q.push(s.k3) +q.push(s.k4) +q.push(s.ok) +q.push(s.p1) +q.push(s.p2) +q.push(s.p3) +q.push(s.p4) +q.push(s.R8) +q.push(s.RG) +q.push(s.rx) +q.push(s.ry) +q.push(s.to) +q.push(s.x1) +q.push(s.x2) +q.push(s.xr) +q.push(s.y1) +q.push(s.y2) +q.push(s.c_) +q.push(s.bO) +q.push(s.be) +q.push(s.bj) +q.push(s.bU) +q.push(s.e7) +q.push(s.dd) +q.push(s.D) +q.push(s.N) +q.push(s.a4) +q.push(s.ag) +q.push(s.aq) +q.push(s.aJ) +q.push(s.U) +q.push(s.aW) +q.push(s.aT) +q.push(s.aU) +q.push(s.ck) +q.push(s.eA) +q.push(s.eq) +q.push(s.f1) +q.push(s.ez) +q.push(s.dA) +q.push(s.e8) +q.push(s.hS) +q.push(s.bk) +q.push(s.er) +q.push(s.dP) +q.push(s.eX) +q.push(s.dr) +q.push(s.dQ) +q.push(s.fA) +q.push(s.iQ) +q.push(s.eT) +q.push(s.fG) +q.push(s.mf) +r=s.G +r.toString +q.push(r) +r=s.dF +r.toString +q.push(r) +r=s.hi +r.toString +q.push(r) +r=s.as +r.toString +q.push(r) +return A.cs(q)}} +A.bLA.prototype={ +$0(){var s=this.a,r=this.b +return s.bsl(r.dt(s.p2),r.dt(s.p3))}, +$S:563} +A.bLy.prototype={ +$2(a,b){return new A.aY(a,b.bJT(this.a.c.i(0,a),this.b),t.sw)}, +$S:564} +A.bLz.prototype={ +$1(a){return!this.a.c.aB(0,a.a)}, +$S:565} +A.axm.prototype={ +gyl(){var s=this.ch.a +return s==null?this.ay.ay.a:s}, +gkf(){var s=this.ch.b +return s==null?this.ay.ay.b:s}, +gzO(){var s=this.ch.c +return s==null?this.ay.ay.c:s}, +gAj(){var s=this.ch.f +return s==null?this.ay.id:s}, +f3(a){return A.d9J(this.ay,this.ch.f3(a))}} +A.Xz.prototype={ +gv(a){return(A.lZ(this.a)^A.lZ(this.b))>>>0}, +l(a,b){if(b==null)return!1 +return b instanceof A.Xz&&b.a===this.a&&b.b===this.b}} +A.aOP.prototype={ +cP(a,b,c){var s,r=this.a,q=r.i(0,b) +if(q!=null)return q +if(r.a===this.b)r.F(0,new A.bR(r,A.z(r).h("bR<1>")).ga2(0)) +s=c.$0() +r.n(0,b,s) +return s}} +A.qU.prototype={ +ME(a){var s=this.a,r=this.b,q=A.Z(a.a+new A.j(s,r).X(0,4).a,0,a.b) +return a.axD(A.Z(a.c+new A.j(s,r).X(0,4).b,0,a.d),q)}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.qU&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +hL(){return this.aOd()+"(h: "+A.r0(this.a)+", v: "+A.r0(this.b)+")"}} +A.aYm.prototype={} +A.aZI.prototype={} +A.abb.prototype={ +gMi(){var s,r=this.e +if(r!=null)s=!1 +else s=!0 +if(s)return r +return A.XQ(new A.bLH(this))}, +gv(a){var s=this +return A.cs([s.a,s.b,s.c,s.d,s.gMi(),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.az(b)!==A.I(s))return!1 +return b instanceof A.abb&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&J.q(b.c,s.c)&&J.q(b.d,s.d)&&J.q(b.gMi(),s.gMi())&&J.q(b.f,s.f)&&J.q(b.r,s.r)&&J.q(b.w,s.w)&&J.q(b.x,s.x)&&J.q(b.y,s.y)&&J.q(b.z,s.z)&&J.q(b.Q,s.Q)&&b.as==s.as&&J.q(b.at,s.at)&&J.q(b.ax,s.ax)&&J.q(b.ay,s.ay)&&J.q(b.ch,s.ch)&&J.q(b.CW,s.CW)&&J.q(b.cx,s.cx)&&J.q(b.db,s.db)&&J.q(b.dx,s.dx)}} +A.bLH.prototype={ +$1(a){var s +if(a.p(0,B.S)){s=this.a.e +return s==null?t.G.a(s):s}return B.D}, +$S:7} +A.aYo.prototype={} +A.abp.prototype={ +gv(a){var s=this +return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.abp&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&J.q(b.c,s.c)&&J.q(b.d,s.d)&&J.q(b.e,s.e)&&J.q(b.f,s.f)&&J.q(b.r,s.r)&&J.q(b.w,s.w)&&J.q(b.y,s.y)&&J.q(b.x,s.x)&&J.q(b.z,s.z)&&J.q(b.Q,s.Q)&&J.q(b.as,s.as)&&J.q(b.ax,s.ax)&&b.at==s.at}} +A.aYG.prototype={} +A.W4.prototype={ +UY(){var s,r,q=this +q.gadM() +s=q.gj(q) +r=q.ur$ +if(s){r===$&&A.b() +r.cM(0)}else{r===$&&A.b() +r.eI(0)}}, +bjY(a){var s,r=this +if(r.gjo()!=null){r.C(new A.bN2(r,a)) +s=r.us$ +s===$&&A.b() +s.cM(0)}}, +at3(a){var s,r=this +if(r.gjo()==null)return +switch(r.gj(r)){case!1:r.gjo().$1(!0) +break +case!0:s=r.gjo() +s.toString +r.gadM() +s.$1(!1) +break +case null:case void 0:r.gjo().$1(!1) +break}r.c.gai().IJ(B.xS)}, +bjW(){return this.at3(null)}, +anh(a){var s,r=this +if(r.Ch$!=null)r.C(new A.bN4(r)) +s=r.us$ +s===$&&A.b() +s.eI(0)}, +b6K(){return this.anh(null)}, +bjT(a){var s,r=this +if(a!==r.z7$){r.C(new A.bN_(r,a)) +s=r.Gw$ +if(a){s===$&&A.b() +s.cM(0)}else{s===$&&A.b() +s.eI(0)}}}, +bjV(a){var s,r=this +if(a!==r.z8$){r.C(new A.bN1(r,a)) +s=r.Gv$ +if(a){s===$&&A.b() +s.cM(0)}else{s===$&&A.b() +s.eI(0)}}}, +gmz(){var s,r=this,q=A.b9(t.ui) +if(r.gjo()==null)q.B(0,B.F) +if(r.z8$)q.B(0,B.P) +if(r.z7$)q.B(0,B.R) +s=r.gj(r) +if(s)q.B(0,B.S) +return q}, +awv(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.WG$ +if(g===$){s=A.a1([B.yc,new A.ej(i.gat2(),new A.bN(A.a([],t.h),t.b),t.wY)],t.u,t.od) +i.WG$!==$&&A.a_() +i.WG$=s +g=s}r=i.gjo() +q=c.a.$1(i.gmz()) +p=i.gjo() +o=i.gjo()!=null?i.gbjX():h +n=i.gjo()!=null?i.gat2():h +m=i.gjo()!=null?i.gang():h +l=i.gjo()!=null?i.gang():h +k=i.gjo() +j=A.ih(h,h,h,e,f) +return A.aui(g,!1,A.dn(h,new A.bX(A.ci(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,h,h),!1,!1,!1,!1,j,h),B.m,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,h,h,h,!1,B.ac),r!=null,b,!0,q,d,i.gbjS(),i.gbjU(),h)}, +bpm(a,b,c,d,e){return this.awv(a,b,c,null,d,e)}} +A.bN2.prototype={ +$0(){this.a.Ch$=this.b.c}, +$S:0} +A.bN4.prototype={ +$0(){this.a.Ch$=null}, +$S:0} +A.bN_.prototype={ +$0(){this.a.z7$=this.b}, +$S:0} +A.bN1.prototype={ +$0(){this.a.z8$=this.b}, +$S:0} +A.W3.prototype={ +sb8(a,b){var s=this,r=s.a +if(b===r)return +if(r!=null)r.a.O(0,s.gip()) +b.a.a3(0,s.gip()) +s.a=b +s.ab()}, +saEd(a){var s=this,r=s.b +if(a===r)return +if(r!=null)r.a.O(0,s.gip()) +a.a.a3(0,s.gip()) +s.b=a +s.ab()}, +saEf(a){var s=this,r=s.c +if(a===r)return +if(r!=null)r.a.O(0,s.gip()) +a.a.a3(0,s.gip()) +s.c=a +s.ab()}, +saEg(a){var s=this,r=s.d +if(a===r)return +if(r!=null)r.a.O(0,s.gip()) +a.a.a3(0,s.gip()) +s.d=a +s.ab()}, +sFe(a){if(J.q(this.e,a))return +this.e=a +this.ab()}, +sXt(a){if(J.q(this.f,a))return +this.f=a +this.ab()}, +saAO(a){if(a.l(0,this.r))return +this.r=a +this.ab()}, +saEe(a){if(a.l(0,this.w))return +this.w=a +this.ab()}, +szm(a){if(a.l(0,this.x))return +this.x=a +this.ab()}, +suv(a){if(a.l(0,this.y))return +this.y=a +this.ab()}, +snv(a){if(a===this.z)return +this.z=a +this.ab()}, +sWe(a){if(J.q(a,this.Q))return +this.Q=a +this.ab()}, +sGR(a){if(a===this.as)return +this.as=a +this.ab()}, +saBl(a){if(a===this.at)return +this.at=a +this.ab()}, +aD0(a,b){var s,r,q,p,o=this +if(o.b.gbM(0)!==B.a6||o.c.gbM(0)!==B.a6||o.d.gbM(0)!==B.a6){s=$.ar().aP() +r=o.r +r.toString +q=o.w +q.toString +q=A.ai(r,q,o.a.gj(0)) +r=o.x +r.toString +r=A.ai(q,r,o.d.gj(0)) +q=o.y +q.toString +q=A.ai(r,q,o.c.gj(0)) +q.toString +s.sa6(0,q) +q=o.z +q.toString +r=o.as +r.toString +if(!r){r=o.at +r.toString}else r=!0 +if(r)p=q +else p=new A.aP(0,q,t.Y).ah(0,o.b.gj(0)) +if(p>0)a.h3(b.S(0,B.h),p,s)}}, +m(){var s=this,r=s.a +if(r!=null)r.a.O(0,s.gip()) +r=s.b +if(r!=null)r.a.O(0,s.gip()) +r=s.c +if(r!=null)r.a.O(0,s.gip()) +r=s.d +if(r!=null)r.a.O(0,s.gip()) +s.f4()}, +hC(a){return!0}, +Cp(a){return null}, +gDH(){return null}, +IS(a){return!1}, +k(a){return"#"+A.bq(this)}} +A.aOB.prototype={ +aR(a){var s=new A.aUR(!0,this.e,null,this.r,B.bt,B.be,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.aUR.prototype={ +es(a,b){var s,r=this,q=$.cAd +$.cAd=!1 +if(r.gu(0).p(0,b)){s=r.ej(a,b)||r.G===B.be +if((s||r.G===B.cr)&&!$.cAc){$.cAc=!0 +a.B(0,new A.y7(b,r))}}else s=!1 +if(q){$.cAd=!0 +$.cAc=!1}return s}} +A.N8.prototype={ +J(){return new A.N9(new A.aAy(null),A.b9(t.S),B.a6,null,null,B.f)}} +A.N9.prototype={ +gas0(){this.a.toString +this.f===$&&A.b() +return B.CL}, +galb(){this.a.toString +this.f===$&&A.b() +return!0}, +ga6k(){var s=this.a,r=s.c +return r==null?s.d.aFv():r}, +gtQ(){var s,r=this,q=r.w +if(q==null){q=A.bQ(null,B.cC,B.hw,1,null,r) +q.cY() +s=q.f0$ +s.b=!0 +s.a.push(r.gbka()) +r.w=q}return q}, +bkb(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null +$label0$0:{s=A.cN6(g.Q) +r=A.cN6(a) +q=s +p=q +o=p +if(q){n=!r +q=n +m=r +l=!0 +k=!0}else{m=f +n=m +l=!1 +k=!1 +q=!1}if(q){B.b.F($.Na,g) +g.d.mh() +break $label0$0}j=!1===p +q=j +if(q){if(k)q=m +else{q=r +m=q +k=!0}i=!0===q +q=i +h=!0}else{i=f +h=!1 +q=!1}if(q){g.d.afT(0) +$.Na.push(g) +A.bFg(g.ga6k()) +break $label0$0}if(o)if(h)q=i +else{if(k)q=m +else{q=r +m=q +k=!0}i=!0===q +q=i}else q=!1 +if(!q)if(j)if(l)q=n +else{n=!1===(k?m:r) +q=n}else q=!1 +else q=!0 +if(q)break $label0$0 +throw A.d(A.iB("None of the patterns in the exhaustive switch statement the matched input value. See https://github.com/dart-lang/language/issues/3488 for details."))}g.Q=a}, +ark(a,b){var s,r,q=this,p=new A.bNb(q,a) +$label0$0:{s=q.gtQ().Q +s===$&&A.b() +r=B.a6===s +if(r&&b.a>0){if(q.r==null)q.r=A.d3(b,p) +break $label0$0}if(r||B.bg===s||B.bs===s||B.a9===s)p.$0() +break $label0$0}}, +a5I(a){return this.ark(null,a)}, +KT(a){var s=this,r=s.r +if(r!=null)r.ao(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.bs:case B.a6:break +case B.bg:case B.a9:if(a.a>0){r=s.gtQ() +s.r=A.d3(a,r.gaF9(r))}else s.gtQ().eI(0) +break}}, +bk9(a){var s,r=this,q=null,p=r.a.cx +if(p==null){r.f===$&&A.b() +p=q}switch((p==null?B.bu0:p).a){case 1:s=r.x +if(s==null)s=r.x=A.St(q,r,q,q,B.XP) +s.p1=r.gani() +s.p2=r.gb4v() +s.R8=r.gb5C() +s.m9(a) +break +case 2:s=r.y +if(s==null)s=r.y=A.t5(q,r,B.XP) +s.e7=r.gani() +s.bU=r.gbkc() +s.m9(a) +break +case 0:break}}, +bk5(a){var s=this,r=s.y +r=r==null?null:r.CW +if(r!==a.gcG()){r=s.x +r=r==null?null:r.CW +r=r===a.gcG()}else r=!0 +if(r)return +if(s.r==null){r=s.gtQ().Q +r===$&&A.b() +r=r===B.a6}else r=!1 +if(r||!t.pY.b(a))return +s.anj()}, +anj(){this.a.toString +this.KT(B.w) +this.z.V(0)}, +bkd(){var s=this,r=s.e +r===$&&A.b() +if(!r)return +r=s.gtQ().Q +r===$&&A.b() +if(r===B.a6){s.galb() +r=!0}else r=!1 +if(r){r=s.c +r.toString +A.atO(r)}s.a.toString +s.ark(s.z.a===0?s.gas0():null,B.w)}, +b4w(){var s=this,r=s.e +r===$&&A.b() +if(!r)return +r=s.gtQ().Q +r===$&&A.b() +if(r===B.a6){s.galb() +r=!0}else r=!1 +if(r){r=s.c +r.toString +A.bhI(r)}s.a.toString +s.a5I(B.w)}, +b5D(){if(this.z.a!==0)return +this.KT(this.gas0())}, +bk6(a){var s,r,q,p,o,n,m=this +m.z.B(0,a.gqh(a)) +s=A.a($.Na.slice(0),A.X($.Na)) +for(r=s.length,q=!1,p=0;p")),this.ED(a,b,r),a.a,s,a.b)}, +CE(a,b){var s=null,r=A.lN(s,s,s,!1,t.oA) +return A.a6_(new A.dI(r,A.z(r).h("dI<1>")),this.ED(a,b,r),a.a,s,a.b)}, +ED(a,b,c){return this.b8O(a,b,c)}, +b8O(a,b,c){var s=0,r=A.p(t.hP),q,p,o,n,m,l,k,j +var $async$ED=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:l=a.a +k=A.aHh().a5(l) +s=self.window.flutterCanvasKit!=null||!1?3:5 +break +case 3:p=new A.ak($.at,t.gO) +o=new A.aI(p,t.XX) +n=A.dmf() +n.open("GET",l,!0) +n.responseType="arraybuffer" +l=t.g +A.L(n,"addEventListener",["load",l.a(A.cQ(new A.buC(n,o,k)))]) +A.L(n,"addEventListener",["error",l.a(A.cQ(new A.buD(o)))]) +n.send() +s=6 +return A.i(p,$async$ED) +case 6:p=n.response +p.toString +m=A.dF(t.RZ.a(p),0,null) +if(m.byteLength===0)throw A.d(A.cKk(A.aj(n,"status"),k)) +j=b +s=7 +return A.i(A.DE(m),$async$ED) +case 7:q=j.$1(e) +s=1 +break +s=4 +break +case 5:q=$.ar().Np(k,new A.buE(c)) +s=1 +break +case 4:case 1:return A.n(q,r)}}) +return A.o($async$ED,r)}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.ws&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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)}, +k(a){return'NetworkImage("'+this.a+'", scale: '+B.d.aZ(this.b,1)+")"}} +A.buC.prototype={ +$1(a){var s=this.a,r=s.status,q=r>=200&&r<300,p=r>307&&r<400,o=q||r===0||r===304||p,n=this.b +if(o)n.d2(0,s) +else{n.jh(a) +throw A.d(A.cKk(r,this.c))}}, +$S:100} +A.buD.prototype={ +$1(a){return this.a.jh(a)}, +$S:40} +A.buE.prototype={ +$2(a,b){this.a.B(0,new A.pf(a,b))}, +$S:98} +A.jE.prototype={ +k(a){var s=this +if(s.gty(s)===0)return A.cvg(s.gtT(),s.gtU()) +if(s.gtT()===0)return A.cvf(s.gty(s),s.gtU()) +return A.cvg(s.gtT(),s.gtU())+" + "+A.cvf(s.gty(s),0)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.jE&&b.gtT()===s.gtT()&&b.gty(b)===s.gty(s)&&b.gtU()===s.gtU()}, +gv(a){var s=this +return A.ad(s.gtT(),s.gty(s),s.gtU(),B.a,B.a,B.a,B.a,B.a,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.fF.prototype={ +gtT(){return this.a}, +gty(a){return 0}, +gtU(){return this.b}, +W(a,b){return new A.fF(this.a-b.a,this.b-b.b)}, +S(a,b){return new A.fF(this.a+b.a,this.b+b.b)}, +X(a,b){return new A.fF(this.a*b,this.b*b)}, +Fm(a){var s=a.a/2,r=a.b/2 +return new A.j(s+this.a*s,r+this.b*r)}, +Lv(a){var s=a.a/2,r=a.b/2 +return new A.j(s+this.a*s,r+this.b*r)}, +Pi(a){var s=a.a,r=(a.c-s)/2,q=a.b,p=(a.d-q)/2 +return new A.j(s+r+this.a*r,q+p+this.b*p)}, +Nm(a,b){var s=b.a,r=a.a,q=(b.c-s-r)/2,p=b.b,o=a.b,n=(b.d-p-o)/2 +s=s+q+this.a*q +p=p+n+this.b*n +return new A.W(s,p,s+r,p+o)}, +a5(a){return this}, +k(a){return A.cvg(this.a,this.b)}} +A.kE.prototype={ +gtT(){return 0}, +gty(a){return this.a}, +gtU(){return this.b}, +W(a,b){return new A.kE(this.a-b.a,this.b-b.b)}, +S(a,b){return new A.kE(this.a+b.a,this.b+b.b)}, +X(a,b){return new A.kE(this.a*b,this.b*b)}, +a5(a){var s=this +switch(a.a){case 0:return new A.fF(-s.a,s.b) +case 1:return new A.fF(s.a,s.b)}}, +k(a){return A.cvf(this.a,this.b)}} +A.agb.prototype={ +X(a,b){return new A.agb(this.a*b,this.b*b,this.c*b)}, +a5(a){var s=this +switch(a.a){case 0:return new A.fF(s.a-s.b,s.c) +case 1:return new A.fF(s.a+s.b,s.c)}}, +gtT(){return this.a}, +gty(a){return this.b}, +gtU(){return this.c}} +A.aFZ.prototype={ +k(a){return"TextAlignVertical(y: "+this.a+")"}} +A.Uc.prototype={ +H(){return"RenderComparison."+this.b}} +A.anu.prototype={ +H(){return"Axis."+this.b}} +A.aHw.prototype={ +H(){return"VerticalDirection."+this.b}} +A.OU.prototype={ +H(){return"AxisDirection."+this.b}} +A.a6J.prototype={ +aB6(a,b,c,d){var s=$.ar(),r=a.a +r.toString +return s.rG(r,!1,c,d)}, +byU(a){return this.aB6(a,!1,null,null)}, +aB7(a,b){return A.alZ(a,b)}, +byX(a){return this.aB7(a,null)}, +$ilH:1} +A.aXD.prototype={ +ab(){var s,r,q +for(s=this.a,s=A.dy(s,s.r,A.z(s).c),r=s.$ti.c;s.t();){q=s.d;(q==null?r.a(q):q).$0()}}, +a3(a,b){this.a.B(0,b)}, +O(a,b){this.a.F(0,b)}} +A.a_S.prototype={ +DT(a){var s=this +return new A.agc(s.gm5().W(0,a.gm5()),s.goY().W(0,a.goY()),s.goS().W(0,a.goS()),s.gpT().W(0,a.gpT()),s.gm6().W(0,a.gm6()),s.goX().W(0,a.goX()),s.gpU().W(0,a.gpU()),s.goR().W(0,a.goR()))}, +B(a,b){var s=this +return new A.agc(s.gm5().S(0,b.gm5()),s.goY().S(0,b.goY()),s.goS().S(0,b.goS()),s.gpT().S(0,b.gpT()),s.gm6().S(0,b.gm6()),s.goX().S(0,b.goX()),s.gpU().S(0,b.gpU()),s.goR().S(0,b.goR()))}, +k(a){var s,r,q,p,o=this +if(o.gm5().l(0,o.goY())&&o.goY().l(0,o.goS())&&o.goS().l(0,o.gpT()))if(!o.gm5().l(0,B.J))s=o.gm5().a===o.gm5().b?"BorderRadius.circular("+B.e.aZ(o.gm5().a,1)+")":"BorderRadius.all("+o.gm5().k(0)+")" +else s=null +else{r=""+"BorderRadius.only(" +if(!o.gm5().l(0,B.J)){r+="topLeft: "+o.gm5().k(0) +q=!0}else q=!1 +if(!o.goY().l(0,B.J)){if(q)r+=", " +r+="topRight: "+o.goY().k(0) +q=!0}if(!o.goS().l(0,B.J)){if(q)r+=", " +r+="bottomLeft: "+o.goS().k(0) +q=!0}if(!o.gpT().l(0,B.J)){if(q)r+=", " +r+="bottomRight: "+o.gpT().k(0)}r+=")" +s=r.charCodeAt(0)==0?r:r}if(o.gm6().l(0,o.goX())&&o.goX().l(0,o.goR())&&o.goR().l(0,o.gpU()))if(!o.gm6().l(0,B.J))p=o.gm6().a===o.gm6().b?"BorderRadiusDirectional.circular("+B.e.aZ(o.gm6().a,1)+")":"BorderRadiusDirectional.all("+o.gm6().k(0)+")" +else p=null +else{r=""+"BorderRadiusDirectional.only(" +if(!o.gm6().l(0,B.J)){r+="topStart: "+o.gm6().k(0) +q=!0}else q=!1 +if(!o.goX().l(0,B.J)){if(q)r+=", " +r+="topEnd: "+o.goX().k(0) +q=!0}if(!o.gpU().l(0,B.J)){if(q)r+=", " +r+="bottomStart: "+o.gpU().k(0) +q=!0}if(!o.goR().l(0,B.J)){if(q)r+=", " +r+="bottomEnd: "+o.goR().k(0)}r+=")" +p=r.charCodeAt(0)==0?r:r}r=s!=null +if(r&&p!=null)return A.r(s)+" + "+p +if(r)return s +if(p!=null)return p +return"BorderRadius.zero"}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.a_S&&b.gm5().l(0,s.gm5())&&b.goY().l(0,s.goY())&&b.goS().l(0,s.goS())&&b.gpT().l(0,s.gpT())&&b.gm6().l(0,s.gm6())&&b.goX().l(0,s.goX())&&b.gpU().l(0,s.gpU())&&b.goR().l(0,s.goR())}, +gv(a){var s=this +return A.ad(s.gm5(),s.goY(),s.goS(),s.gpT(),s.gm6(),s.goX(),s.gpU(),s.goR(),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.dJ.prototype={ +gm5(){return this.a}, +goY(){return this.b}, +goS(){return this.c}, +gpT(){return this.d}, +gm6(){return B.J}, +goX(){return B.J}, +gpU(){return B.J}, +goR(){return B.J}, +hq(a){var s=this,r=s.a.qc(0,B.J),q=s.b.qc(0,B.J) +return A.TX(a,s.c.qc(0,B.J),s.d.qc(0,B.J),r,q)}, +DT(a){if(a instanceof A.dJ)return this.W(0,a) +return this.agp(a)}, +B(a,b){if(b instanceof A.dJ)return this.S(0,b) +return this.ago(0,b)}, +W(a,b){var s=this +return new A.dJ(s.a.W(0,b.a),s.b.W(0,b.b),s.c.W(0,b.c),s.d.W(0,b.d))}, +S(a,b){var s=this +return new A.dJ(s.a.S(0,b.a),s.b.S(0,b.b),s.c.S(0,b.c),s.d.S(0,b.d))}, +X(a,b){var s=this +return new A.dJ(s.a.X(0,b),s.b.X(0,b),s.c.X(0,b),s.d.X(0,b))}, +a5(a){return this}} +A.vq.prototype={ +gm6(){return this.a}, +goX(){return this.b}, +gpU(){return this.c}, +goR(){return this.d}, +gm5(){return B.J}, +goY(){return B.J}, +goS(){return B.J}, +gpT(){return B.J}, +DT(a){if(a instanceof A.vq)return this.W(0,a) +return this.agp(a)}, +B(a,b){if(b instanceof A.vq)return this.S(0,b) +return this.ago(0,b)}, +W(a,b){var s=this +return new A.vq(s.a.W(0,b.a),s.b.W(0,b.b),s.c.W(0,b.c),s.d.W(0,b.d))}, +S(a,b){var s=this +return new A.vq(s.a.S(0,b.a),s.b.S(0,b.b),s.c.S(0,b.c),s.d.S(0,b.d))}, +X(a,b){var s=this +return new A.vq(s.a.X(0,b),s.b.X(0,b),s.c.X(0,b),s.d.X(0,b))}, +a5(a){var s=this +switch(a.a){case 0:return new A.dJ(s.b,s.a,s.d,s.c) +case 1:return new A.dJ(s.a,s.b,s.c,s.d)}}} +A.agc.prototype={ +X(a,b){var s=this +return new A.agc(s.a.X(0,b),s.b.X(0,b),s.c.X(0,b),s.d.X(0,b),s.e.X(0,b),s.f.X(0,b),s.r.X(0,b),s.w.X(0,b))}, +a5(a){var s=this +switch(a.a){case 0:return new A.dJ(s.a.S(0,s.f),s.b.S(0,s.e),s.c.S(0,s.w),s.d.S(0,s.r)) +case 1:return new A.dJ(s.a.S(0,s.e),s.b.S(0,s.f),s.c.S(0,s.r),s.d.S(0,s.w))}}, +gm5(){return this.a}, +goY(){return this.b}, +goS(){return this.c}, +gpT(){return this.d}, +gm6(){return this.e}, +goX(){return this.f}, +gpU(){return this.r}, +goR(){return this.w}} +A.ao8.prototype={ +H(){return"BorderStyle."+this.b}} +A.bx.prototype={ +a8M(a,b,c){var s=this,r=a==null?s.a:a,q=c==null?s.b:c,p=b==null?s.d:b +return new A.bx(r,q,s.c,p)}, +bu(a){return this.a8M(a,null,null)}, +bs2(a){return this.a8M(null,null,a)}, +axw(a){return this.a8M(null,a,null)}, +bK(a,b){var s=Math.max(0,this.b*b),r=b<=0?B.bZ:this.c +return new A.bx(this.a,s,r,-1)}, +nn(){switch(this.c.a){case 1:var s=$.ar().aP() +s.sa6(0,this.a) +s.se4(this.b) +s.sbN(0,B.a7) +return s +case 0:s=$.ar().aP() +s.sa6(0,B.D) +s.se4(0) +s.sbN(0,B.a7) +return s}}, +gkl(){return this.b*(1-(1+this.d)/2)}, +gDQ(){return this.b*(1+this.d)/2}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.bx&&b.a.l(0,s.a)&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +gv(a){var s=this +return A.ad(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)}, +hL(){return"BorderSide"}} +A.eX.prototype={ +q3(a,b,c){return null}, +B(a,b){return this.q3(0,b,!1)}, +S(a,b){var s=this.B(0,b) +if(s==null)s=b.q3(0,this,!0) +return s==null?new A.tg(A.a([b,this],t.N_)):s}, +j3(a,b){if(a==null)return this.bK(0,b) +return null}, +j4(a,b){if(a==null)return this.bK(0,1-b) +return null}, +oB(a,b,c,d){}, +gng(){return!1}, +k(a){return"ShapeBorder()"}} +A.iS.prototype={ +gpg(){var s=Math.max(this.a.gkl(),0) +return new A.af(s,s,s,s)}, +j3(a,b){if(a==null)return this.bK(0,b) +return null}, +j4(a,b){if(a==null)return this.bK(0,1-b) +return null}} +A.tg.prototype={ +gpg(){return B.b.l8(this.a,B.L,new A.bV7(),t.A0)}, +q3(a,b,c){var s,r,q,p=b instanceof A.tg +if(!p){s=this.a +r=c?B.b.gP(s):B.b.ga2(s) +q=r.q3(0,b,c) +if(q==null)q=b.q3(0,r,!c) +if(q!=null){p=A.R(s,!0,t.RY) +p[c?p.length-1:0]=q +return new A.tg(p)}}s=A.a([],t.N_) +if(c)B.b.L(s,this.a) +if(p)B.b.L(s,b.a) +else s.push(b) +if(!c)B.b.L(s,this.a) +return new A.tg(s)}, +B(a,b){return this.q3(0,b,!1)}, +bK(a,b){var s=this.a,r=A.X(s).h("O<1,eX>") +return new A.tg(A.R(new A.O(s,new A.bV9(b),r),!0,r.h("aa.E")))}, +j3(a,b){return A.cOa(a,this,b)}, +j4(a,b){return A.cOa(this,a,b)}, +js(a,b){var s,r +for(s=this.a,r=0;r") +return new A.O(new A.bE(s,r),new A.bVa(),r.h("O")).bQ(0," + ")}} +A.bV7.prototype={ +$2(a,b){return a.B(0,b.gpg())}, +$S:568} +A.bV9.prototype={ +$1(a){return a.bK(0,this.a)}, +$S:569} +A.bV8.prototype={ +$1(a){return a.gng()}, +$S:570} +A.bVa.prototype={ +$1(a){return a.k(0)}, +$S:571} +A.aLt.prototype={} +A.aof.prototype={ +H(){return"BoxShape."+this.b}} +A.aob.prototype={ +q3(a,b,c){return null}, +B(a,b){return this.q3(0,b,!1)}, +js(a,b){var s=$.ar().dc() +s.jd(this.gpg().a5(b).BV(a)) +return s}, +qP(a){return this.js(a,null)}, +i7(a,b){var s=$.ar().dc() +s.jd(a) +return s}, +nq(a){return this.i7(a,null)}, +oB(a,b,c,d){a.fs(b,c)}, +gng(){return!0}} +A.eR.prototype={ +gpg(){var s,r=this +if(r.gaux()){s=r.a.gkl() +return new A.af(s,s,s,s)}return new A.af(r.d.gkl(),r.a.gkl(),r.b.gkl(),r.c.gkl())}, +gGT(){var s,r=this,q=r.a,p=q.a,o=r.d +if(o.a.l(0,p)&&r.c.a.l(0,p)&&r.b.a.l(0,p))if(r.gaux())if(r.gL3()){s=q.d +q=o.d===s&&r.c.d===s&&r.b.d===s}else q=!1 +else q=!1 +else q=!1 +return q}, +gaux(){var s=this,r=s.a.b +return s.d.b===r&&s.c.b===r&&s.b.b===r}, +gL3(){var s=this,r=s.a.c +return s.d.c===r&&s.c.c===r&&s.b.c===r}, +q3(a,b,c){var s=this +if(b instanceof A.eR&&A.y5(s.a,b.a)&&A.y5(s.b,b.b)&&A.y5(s.c,b.c)&&A.y5(s.d,b.d))return new A.eR(A.tx(s.a,b.a),A.tx(s.b,b.b),A.tx(s.c,b.c),A.tx(s.d,b.d)) +return null}, +B(a,b){return this.q3(0,b,!1)}, +bK(a,b){var s=this +return new A.eR(s.a.bK(0,b),s.b.bK(0,b),s.c.bK(0,b),s.d.bK(0,b))}, +j3(a,b){if(a instanceof A.eR)return A.a_T(a,this,b) +return this.QW(a,b)}, +j4(a,b){if(a instanceof A.eR)return A.a_T(this,a,b) +return this.QX(a,b)}, +Od(a,b,c,d,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +if(e.gGT()){s=e.a +switch(s.c.a){case 0:return +case 1:switch(d.a){case 1:A.cFi(a,b,s) +break +case 0:if(c!=null&&!c.l(0,B.bh)){A.cFj(a,b,s,c) +return}A.cFk(a,b,s) +break}return}}if(e.gL3()&&e.a.c===B.bZ)return +r=A.b9(t.G) +s=e.a +q=s.c +p=q===B.bZ +if(!p)r.B(0,s.a) +o=e.b +n=o.c +m=n===B.bZ +if(!m)r.B(0,o.a) +l=e.c +k=l.c +j=k===B.bZ +if(!j)r.B(0,l.a) +i=e.d +h=i.c +g=h===B.bZ +if(!g)r.B(0,i.a) +if(!(q===B.O&&s.b===0))if(!(n===B.O&&o.b===0)){if(!(k===B.O&&l.b===0))q=h===B.O&&i.b===0 +else q=!0 +f=q}else f=!0 +else f=!0 +if(r.a===1)if(!f)if(d!==B.fq)q=c!=null&&!c.l(0,B.bh) +else q=!0 +else q=!1 +else q=!1 +if(q){if(p)s=B.G +q=m?B.G:o +p=j?B.G:l +o=g?B.G:i +A.cvs(a,b,c,p,r.ga2(0),o,q,d,a0,s) +return}A.cTl(a,b,l,i,o,s)}, +aI(a,b){return this.Od(a,b,null,B.U,null)}, +kz(a,b,c){return this.Od(a,b,null,B.U,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.eR&&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.ad(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)}, +k(a){var s,r,q=this +if(q.gGT())return"Border.all("+q.a.k(0)+")" +s=A.a([],t.s) +r=q.a +if(!r.l(0,B.G))s.push("top: "+r.k(0)) +r=q.b +if(!r.l(0,B.G))s.push("right: "+r.k(0)) +r=q.c +if(!r.l(0,B.G))s.push("bottom: "+r.k(0)) +r=q.d +if(!r.l(0,B.G))s.push("left: "+r.k(0)) +return"Border("+B.b.bQ(s,", ")+")"}, +gHX(a){return this.a}} +A.ls.prototype={ +gpg(){var s,r=this +if(r.gGT()){s=r.a.gkl() +return new A.eB(s,s,s,s)}return new A.eB(r.b.gkl(),r.a.gkl(),r.c.gkl(),r.d.gkl())}, +gGT(){var s,r,q=this,p=q.a,o=p.a,n=q.b +if(n.a.l(0,o)&&q.d.a.l(0,o)&&q.c.a.l(0,o)){s=p.b +if(n.b===s&&q.d.b===s&&q.c.b===s)if(q.gL3()){r=p.d +p=n.d===r&&q.d.d===r&&q.c.d===r}else p=!1 +else p=!1}else p=!1 +return p}, +gL3(){var s=this,r=s.a.c +return s.b.c===r&&s.d.c===r&&s.c.c===r}, +q3(a,b,c){var s,r,q,p=this,o=null +if(b instanceof A.ls){s=p.a +r=b.a +if(A.y5(s,r)&&A.y5(p.b,b.b)&&A.y5(p.c,b.c)&&A.y5(p.d,b.d))return new A.ls(A.tx(s,r),A.tx(p.b,b.b),A.tx(p.c,b.c),A.tx(p.d,b.d)) +return o}if(b instanceof A.eR){s=b.a +r=p.a +if(!A.y5(s,r)||!A.y5(b.c,p.d))return o +q=p.b +if(!q.l(0,B.G)||!p.c.l(0,B.G)){if(!b.d.l(0,B.G)||!b.b.l(0,B.G))return o +return new A.ls(A.tx(s,r),q,p.c,A.tx(b.c,p.d))}return new A.eR(A.tx(s,r),b.b,A.tx(b.c,p.d),b.d)}return o}, +B(a,b){return this.q3(0,b,!1)}, +bK(a,b){var s=this +return new A.ls(s.a.bK(0,b),s.b.bK(0,b),s.c.bK(0,b),s.d.bK(0,b))}, +j3(a,b){if(a instanceof A.ls)return A.cvr(a,this,b) +return this.QW(a,b)}, +j4(a,b){if(a instanceof A.ls)return A.cvr(this,a,b) +return this.QX(a,b)}, +Od(a,b,c,d,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +if(e.gGT()){s=e.a +switch(s.c.a){case 0:return +case 1:switch(d.a){case 1:A.cFi(a,b,s) +break +case 0:if(c!=null&&!c.l(0,B.bh)){A.cFj(a,b,s,c) +return}A.cFk(a,b,s) +break}return}}if(e.gL3()&&e.a.c===B.bZ)return +switch(a0.a){case 0:r=e.c +q=e.b +break +case 1:r=e.b +q=e.c +break +default:r=null +q=null}p=A.b9(t.G) +s=e.a +o=s.c +n=o===B.bZ +if(!n)p.B(0,s.a) +m=e.c +l=m.c +if(l!==B.bZ)p.B(0,m.a) +k=e.d +j=k.c +i=j===B.bZ +if(!i)p.B(0,k.a) +h=e.b +g=h.c +if(g!==B.bZ)p.B(0,h.a) +if(!(o===B.O&&s.b===0))if(!(l===B.O&&m.b===0)){if(!(j===B.O&&k.b===0))o=g===B.O&&h.b===0 +else o=!0 +f=o}else f=!0 +else f=!0 +if(p.a===1)if(!f)if(d!==B.fq)o=c!=null&&!c.l(0,B.bh) +else o=!0 +else o=!1 +else o=!1 +if(o){if(n)s=B.G +o=q.c===B.bZ?B.G:q +n=i?B.G:k +m=r.c===B.bZ?B.G:r +A.cvs(a,b,c,n,p.ga2(0),m,o,d,a0,s) +return}A.cTl(a,b,k,r,q,s)}, +kz(a,b,c){return this.Od(a,b,null,B.U,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.ls&&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.ad(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)}, +k(a){var s=this,r=A.a([],t.s),q=s.a +if(!q.l(0,B.G))r.push("top: "+q.k(0)) +q=s.b +if(!q.l(0,B.G))r.push("start: "+q.k(0)) +q=s.c +if(!q.l(0,B.G))r.push("end: "+q.k(0)) +q=s.d +if(!q.l(0,B.G))r.push("bottom: "+q.k(0)) +return"BorderDirectional("+B.b.bQ(r,", ")+")"}, +gHX(a){return this.a}} +A.c_.prototype={ +axK(a,b,c,d){var s=this,r=c==null?s.a:c,q=d==null?s.b:d,p=a==null?s.c:a,o=b==null?s.d:b +return new A.c_(r,q,p,o,s.e,s.f,s.r,s.w)}, +bss(a,b,c){return this.axK(a,null,b,c)}, +axo(a){return this.axK(null,a,null,null)}, +gdX(a){var s=this.c +s=s==null?null:s.gpg() +return s==null?B.L:s}, +PC(a,b){var s,r,q +switch(this.w.a){case 1:s=A.jQ(a.gc1(),a.giu()/2) +r=$.ar().dc() +r.q5(s) +return r +case 0:r=this.d +if(r!=null){q=$.ar().dc() +q.iM(r.a5(b).hq(a)) +return q}r=$.ar().dc() +r.jd(a) +return r}}, +bK(a,b){var s=this,r=null,q=A.ai(r,s.a,b),p=A.cwa(r,s.b,b),o=A.cFl(r,s.c,b),n=A.vr(r,s.d,b),m=A.cvu(r,s.e,b) +return new A.c_(q,p,o,n,m,r,r,s.w)}, +gXC(){return this.e!=null}, +j3(a,b){if(a==null)return this.bK(0,b) +if(a instanceof A.c_)return A.cFm(a,this,b) +return this.a0E(a,b)}, +j4(a,b){if(a==null)return this.bK(0,1-b) +if(a instanceof A.c_)return A.cFm(this,a,b) +return this.a0F(a,b)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.c_&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&J.q(b.c,s.c)&&J.q(b.d,s.d)&&A.fj(b.e,s.e)&&b.r==s.r&&b.w===s.w}, +gv(a){var s=this,r=s.e +r=r==null?null:A.cs(r) +return A.ad(s.a,s.b,s.c,s.d,r,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)}, +ab6(a,b,c){var s +switch(this.w.a){case 0:s=this.d +if(s!=null)return s.a5(c).hq(new A.W(0,0,0+a.a,0+a.b)).p(0,b) +return!0 +case 1:return b.W(0,a.nD(B.h)).gfT()<=Math.min(a.a,a.b)/2}}, +yA(a){return new A.aLA(this,a)}} +A.aLA.prototype={ +apu(a,b,c,d){var s=this.b +switch(s.w.a){case 1:a.h3(b.gc1(),b.giu()/2,c) +break +case 0:s=s.d +if(s==null||s.l(0,B.bh))a.fs(b,c) +else a.dh(s.a5(d).hq(b),c) +break}}, +bd8(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.eD(q.b) +n=q.d +this.apu(a,new A.W(o.a-n,o.b-n,o.c+n,o.d+n),p,c)}}, +bcZ(a,b,c){var s,r,q,p=this,o=p.b,n=o.b +if(n==null)return +if(p.e==null){s=p.a +s.toString +p.e=n.Ma(s)}switch(o.w.a){case 1:r=A.jQ(b.gc1(),b.giu()/2) +q=$.ar().dc() +q.q5(r) +break +case 0:o=o.d +if(o!=null){q=$.ar().dc() +q.iM(o.a5(c.d).hq(b))}else q=null +break +default:q=null}p.e.zJ(a,b,q,c)}, +m(){var s=this.e +if(s!=null)s.m() +this.agq()}, +jJ(a,b,c){var s,r,q,p=this,o=c.e,n=b.a,m=b.b,l=new A.W(n,m,n+o.a,m+o.b),k=c.d +p.bd8(a,l,k) +o=p.b +n=o.a +m=n==null +if(!m||!1){s=p.c +if(s!=null)r=!1 +else r=!0 +if(r){q=$.ar().aP() +s=o.r +if(s!=null)q.sp6(s) +if(!m)q.sa6(0,n) +p.c=q +n=q}else n=s +n.toString +p.apu(a,l,n,k)}p.bcZ(a,l,c) +n=o.c +if(n!=null){m=o.d +m=m==null?null:m.a5(k) +n.Od(a,l,m,o.w,k)}}, +k(a){return"BoxPainter for "+this.b.k(0)}} +A.Pc.prototype={ +H(){return"BoxFit."+this.b}} +A.atT.prototype={} +A.f5.prototype={ +nn(){var s=$.ar().aP() +s.sa6(0,this.a) +s.sH6(new A.zi(this.e,A.ddl(this.c))) +return s}, +bK(a,b){var s=this +return new A.f5(s.d*b,s.e,s.a,s.b.X(0,b),s.c*b)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.f5&&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.ad(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)}, +k(a){var s=this +return"BoxShadow("+s.a.k(0)+", "+s.b.k(0)+", "+A.r0(s.c)+", "+A.r0(s.d)+", "+s.e.k(0)+")"}} +A.kc.prototype={ +bK(a,b){return new A.kc(this.b,this.a.bK(0,b))}, +j3(a,b){var s,r +if(a instanceof A.kc){s=A.c8(a.a,this.a,b) +r=A.av(a.b,this.b,b) +r.toString +return new A.kc(A.Z(r,0,1),s)}return this.E1(a,b)}, +j4(a,b){var s,r +if(a instanceof A.kc){s=A.c8(this.a,a.a,b) +r=A.av(this.b,a.b,b) +r.toString +return new A.kc(A.Z(r,0,1),s)}return this.E2(a,b)}, +js(a,b){var s=$.ar().dc() +s.q5(this.R5(a).fH(-this.a.gkl())) +return s}, +qP(a){return this.js(a,null)}, +i7(a,b){var s=$.ar().dc() +s.q5(this.R5(a)) +return s}, +nq(a){return this.i7(a,null)}, +oB(a,b,c,d){if(this.b===0)a.h3(b.gc1(),b.giu()/2,c) +else a.Gf(this.R5(b),c)}, +gng(){return!0}, +n0(a){var s=a==null?this.a:a +return new A.kc(this.b,s)}, +kz(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.h3(b.gc1(),(b.giu()+s)/2,r.nn()) +else a.Gf(this.R5(b).fH(s/2),r.nn()) +break}}, +aI(a,b){return this.kz(a,b,null)}, +R5(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.jQ(a.gc1(),a.giu()/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.Zl(b.b,s.b)}, +gv(a){return A.ad(A.I(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)}, +k(a){return"ColorSwatch(primary value: "+this.aNX(0)+")"}} +A.lu.prototype={ +hL(){return"Decoration"}, +gdX(a){return B.L}, +gXC(){return!1}, +j3(a,b){return null}, +j4(a,b){return null}, +ab6(a,b,c){return!0}, +PC(a,b){throw A.d(A.aq("This Decoration subclass does not expect to be used for clipping."))}} +A.vv.prototype={ +m(){}} +A.aNi.prototype={} +A.RB.prototype={ +H(){return"ImageRepeat."+this.b}} +A.Qn.prototype={ +Ma(a){return new A.aNh(this,a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.az(b)!==A.I(r))return!1 +if(t.u5.b(b))if(b.giR(b).l(0,r.a)){b.gnH() +if(b.grB()==r.d)if(b.giN().l(0,r.e)){b.gFE() +if(b.gHF(b)===r.r){b.gH7() +if(b.gkE(b)===1)if(b.ghn(b)===1)if(b.got()===B.bC){b.gwp() +b.grK() +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}, +gv(a){var s=this +return A.ad(s.a,null,s.d,s.e,null,s.r,!1,1,1,B.bC,!1,!1,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +k(a){var s,r=this,q=A.a([r.a.k(0)],t.s),p=r.d +if(p!=null)s=!(p===B.mx&&!0) +else s=!1 +if(s)q.push(A.r(p)) +q.push(r.e.k(0)) +p=r.r +if(p!==B.ce)q.push(p.k(0)) +q.push("scale "+B.d.aZ(1,1)) +q.push("opacity "+B.d.aZ(1,1)) +q.push(B.bC.k(0)) +return"DecorationImage("+B.b.bQ(q,", ")+")"}, +giR(a){return this.a}, +gnH(){return null}, +grB(){return this.d}, +giN(){return this.e}, +gFE(){return null}, +gHF(a){return this.r}, +gH7(){return!1}, +gkE(){return 1}, +ghn(){return 1}, +got(){return B.bC}, +gwp(){return!1}, +grK(){return!1}} +A.aNh.prototype={ +Oe(a,b,c,d,e,f){var s,r,q,p,o=this,n=null,m=o.a,l=m.a.a5(d),k=l.a +if(k==null)k=l +s=o.c +r=s==null +if(r)q=n +else{q=s.a +if(q==null)q=s}if(k!==q){p=new A.kh(o.gan2(),n,m.b) +if(!r)s.O(0,p) +o.c=l +l.a3(0,p)}if(o.d==null)return +k=c!=null +if(k){a.d6(0) +a.nG(0,c)}s=o.d +r=s.a +A.cTm(m.e,f,a,n,n,s.c,B.bC,m.d,!1,r,!1,!1,e,b,m.r,s.b) +if(k)a.de(0)}, +zJ(a,b,c,d){return this.Oe(a,b,c,d,1,B.cX)}, +b4i(a,b){var s,r,q=this +if(J.q(q.d,a))return +s=q.d +if(s!=null)if(a.a.abn(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()}, +m(){var s=this,r=s.c +if(r!=null)r.O(0,new A.kh(s.gan2(),null,s.a.b)) +r=s.d +if(r!=null)r.a.m() +s.d=null}, +k(a){return"DecorationImagePainter(stream: "+A.r(this.c)+", image: "+A.r(this.d)+") for "+this.a.k(0)}} +A.acY.prototype={ +giR(a){var s=this.b +s=s==null?null:s.giR(s) +if(s==null){s=this.a +s=s.giR(s)}return s}, +gnH(){var s=this.b +if(s!=null)s.gnH() +s=this.a.gnH() +return s}, +grB(){var s=this.b +s=s==null?null:s.grB() +return s==null?this.a.grB():s}, +giN(){var s=this.b +s=s==null?null:s.giN() +return s==null?this.a.giN():s}, +gFE(){var s=this.b +if(s!=null)s.gFE() +s=this.a.gFE() +return s}, +gHF(a){var s=this.b +s=s==null?null:s.gHF(s) +if(s==null){s=this.a +s=s.gHF(s)}return s}, +gH7(){var s=this.b +if(s==null)s=null +else{s.gH7() +s=!1}if(s==null){this.a.gH7() +s=!1}return s}, +gkE(a){var s=this.b +s=s==null?null:s.gkE(s) +if(s==null){s=this.a +s=s.gkE(s)}return s}, +ghn(a){var s=this.b +s=s==null?null:s.ghn(s) +if(s==null){s=this.a +s=s.ghn(s)}return s}, +got(){var s=this.b +s=s==null?null:s.got() +return s==null?this.a.got():s}, +gwp(){var s=this.b +if(s==null)s=null +else{s.gwp() +s=!1}if(s==null){this.a.gwp() +s=!1}return s}, +grK(){var s=this.b +if(s==null)s=null +else{s.grK() +s=!1}if(s==null){this.a.grK() +s=!1}return s}, +Ma(a){var s,r=this.a +r=r==null?null:r.Ma(a) +s=this.b +s=s==null?null:s.Ma(a) +return new A.bSz(r,s,this.c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.acY&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&b.c===s.c}, +gv(a){return A.ad(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)}, +k(a){return"_BlendedDecorationImage("+A.r(this.a)+", "+A.r(this.b)+", "+A.r(this.c)+")"}, +$iQn:1} +A.bSz.prototype={ +Oe(a,b,c,d,e,f){var s,r,q=this +a.kD(null,$.ar().aP()) +s=q.a +r=s==null +if(!r)s.Oe(a,b,c,d,e*(1-q.c),f) +s=q.b +if(s!=null){r=!r?B.zK:f +s.Oe(a,b,c,d,e*q.c,r)}a.de(0)}, +zJ(a,b,c,d){return this.Oe(a,b,c,d,1,B.cX)}, +m(){var s=this.a +if(s!=null)s.m() +s=this.b +if(s!=null)s.m()}, +k(a){return"_BlendedDecorationImagePainter("+A.r(this.a)+", "+A.r(this.b)+", "+A.r(this.c)+")"}} +A.h5.prototype={ +geL(){var s=this +return s.glZ(s)+s.gm1(s)+s.goe(s)+s.goa()}, +bmE(a){var s=this +switch(a.a){case 0:return s.geL() +case 1:return s.gdM(s)+s.gdT(s)}}, +B(a,b){var s=this +return new A.Gi(s.glZ(s)+b.glZ(b),s.gm1(s)+b.gm1(b),s.goe(s)+b.goe(b),s.goa()+b.goa(),s.gdM(s)+b.gdM(b),s.gdT(s)+b.gdT(b))}, +dV(a,b,c){var s=this +return new A.Gi(A.Z(s.glZ(s),b.a,c.a),A.Z(s.gm1(s),b.c,c.b),A.Z(s.goe(s),0,c.c),A.Z(s.goa(),0,c.d),A.Z(s.gdM(s),b.b,c.e),A.Z(s.gdT(s),b.d,c.f))}, +k(a){var s=this +if(s.goe(s)===0&&s.goa()===0){if(s.glZ(s)===0&&s.gm1(s)===0&&s.gdM(s)===0&&s.gdT(s)===0)return"EdgeInsets.zero" +if(s.glZ(s)===s.gm1(s)&&s.gm1(s)===s.gdM(s)&&s.gdM(s)===s.gdT(s))return"EdgeInsets.all("+B.e.aZ(s.glZ(s),1)+")" +return"EdgeInsets("+B.e.aZ(s.glZ(s),1)+", "+B.e.aZ(s.gdM(s),1)+", "+B.e.aZ(s.gm1(s),1)+", "+B.e.aZ(s.gdT(s),1)+")"}if(s.glZ(s)===0&&s.gm1(s)===0)return"EdgeInsetsDirectional("+B.e.aZ(s.goe(s),1)+", "+B.e.aZ(s.gdM(s),1)+", "+B.e.aZ(s.goa(),1)+", "+B.e.aZ(s.gdT(s),1)+")" +return"EdgeInsets("+B.e.aZ(s.glZ(s),1)+", "+B.e.aZ(s.gdM(s),1)+", "+B.e.aZ(s.gm1(s),1)+", "+B.e.aZ(s.gdT(s),1)+") + EdgeInsetsDirectional("+B.e.aZ(s.goe(s),1)+", 0.0, "+B.e.aZ(s.goa(),1)+", 0.0)"}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.h5&&b.glZ(b)===s.glZ(s)&&b.gm1(b)===s.gm1(s)&&b.goe(b)===s.goe(s)&&b.goa()===s.goa()&&b.gdM(b)===s.gdM(s)&&b.gdT(b)===s.gdT(s)}, +gv(a){var s=this +return A.ad(s.glZ(s),s.gm1(s),s.goe(s),s.goa(),s.gdM(s),s.gdT(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.af.prototype={ +glZ(a){return this.a}, +gdM(a){return this.b}, +gm1(a){return this.c}, +gdT(a){return this.d}, +goe(a){return 0}, +goa(){return 0}, +Ng(a){var s=this +return new A.W(a.a-s.a,a.b-s.b,a.c+s.c,a.d+s.d)}, +BV(a){var s=this +return new A.W(a.a+s.a,a.b+s.b,a.c-s.c,a.d-s.d)}, +B(a,b){if(b instanceof A.af)return this.S(0,b) +return this.agx(0,b)}, +dV(a,b,c){var s=this +return new A.af(A.Z(s.a,b.a,c.a),A.Z(s.b,b.b,c.e),A.Z(s.c,b.c,c.b),A.Z(s.d,b.d,c.f))}, +W(a,b){var s=this +return new A.af(s.a-b.a,s.b-b.b,s.c-b.c,s.d-b.d)}, +S(a,b){var s=this +return new A.af(s.a+b.a,s.b+b.b,s.c+b.c,s.d+b.d)}, +X(a,b){var s=this +return new A.af(s.a*b,s.b*b,s.c*b,s.d*b)}, +a5(a){return this}, +yx(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.af(r,q,p,a==null?s.d:a)}, +u9(a){return this.yx(a,null,null,null)}, +bs6(a,b){return this.yx(a,null,null,b)}, +bse(a,b){return this.yx(null,a,b,null)}, +LZ(a){return this.yx(null,null,null,a)}} +A.eB.prototype={ +goe(a){return this.a}, +gdM(a){return this.b}, +goa(){return this.c}, +gdT(a){return this.d}, +glZ(a){return 0}, +gm1(a){return 0}, +B(a,b){if(b instanceof A.eB)return this.S(0,b) +return this.agx(0,b)}, +W(a,b){var s=this +return new A.eB(s.a-b.a,s.b-b.b,s.c-b.c,s.d-b.d)}, +S(a,b){var s=this +return new A.eB(s.a+b.a,s.b+b.b,s.c+b.c,s.d+b.d)}, +X(a,b){var s=this +return new A.eB(s.a*b,s.b*b,s.c*b,s.d*b)}, +a5(a){var s=this +switch(a.a){case 0:return new A.af(s.c,s.b,s.a,s.d) +case 1:return new A.af(s.a,s.b,s.c,s.d)}}} +A.Gi.prototype={ +X(a,b){var s=this +return new A.Gi(s.a*b,s.b*b,s.c*b,s.d*b,s.e*b,s.f*b)}, +a5(a){var s=this +switch(a.a){case 0:return new A.af(s.d+s.a,s.e,s.c+s.b,s.f) +case 1:return new A.af(s.c+s.a,s.e,s.d+s.b,s.f)}}, +glZ(a){return this.a}, +gm1(a){return this.b}, +goe(a){return this.c}, +goa(){return this.d}, +gdM(a){return this.e}, +gdT(a){return this.f}} +A.J2.prototype={ +W(a,b){if(!(b instanceof A.J2))return this.aNG(0,b) +return A.cwZ((this.a+1)/2-(b.a+1)/2,(this.b+1)/2-(b.b+1)/2)}, +S(a,b){if(!(b instanceof A.J2))return this.aNF(0,b) +return A.cwZ((this.a+1)/2+(b.a+1)/2,(this.b+1)/2+(b.b+1)/2)}, +X(a,b){return A.cwZ((this.a+1)/2*b,(this.b+1)/2*b)}, +k(a){return"FractionalOffset("+B.e.aZ((this.a+1)/2,1)+", "+B.e.aZ((this.b+1)/2,1)+")"}} +A.bkA.prototype={ +b7m(){var s,r,q,p=this.b +if(p!=null)return p +p=this.a.length +s=1/(p-1) +r=J.cxD(p,t.i) +for(q=0;q").a1(q.y[1]),r=new A.c4(J.au(r.a),r.b,q.h("c4<1,2>")),q=q.y[1];r.t();){p=r.a;(p==null?q.a(p):p).m()}s.V(0) +for(s=this.a,r=s.gbm(0),q=A.z(r),q=q.h("@<1>").a1(q.y[1]),r=new A.c4(J.au(r.a),r.b,q.h("c4<1,2>")),q=q.y[1];r.t();){p=r.a +if(p==null)p=q.a(p) +p.a.O(0,p.b)}s.V(0) +this.f=0}, +aa9(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.x)A.C(A.a0(u.V)) +B.b.F(s.y,r) +o.ahC()}q=p.a.F(0,a) +if(q!=null){q.a.O(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}, +atc(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.n(0,a,b) +r.aXW(c)}else b.m()}, +a6l(a,b,c){var s=this.c.cP(0,a,new A.bmv(this,b,a)) +if(s.b==null)s.b=c}, +acZ(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.a6l(b,j,q.b) +h.n(0,b,q) +return j}p=l.c.i(0,b) +if(p!=null){j=p.a +l.atc(b,new A.adf(j,p.b,j.GW()),k) +return j}try{g=j.a=c.$0() +l.a6l(b,g,k) +h=g}catch(o){s=A.ag(o) +r=A.aD(o) +if(d!=null){d.$2(s,r) +return k}else throw o}j.b=!1 +n=A.aF("pendingImage") +m=new A.kh(new A.bmw(j,l,b,!0,k,n),k,k) +n.b=new A.aSY(h,m) +i.n(0,b,n.aX()) +j.a.a3(0,m) +return j.a}, +cP(a,b,c){return this.acZ(0,b,c,null)}, +aB(a,b){return this.a.i(0,b)!=null||this.b.i(0,b)!=null}, +aXW(a){var s,r,q,p,o,n=this,m=n.b,l=A.z(m).h("bR<1>") +while(!0){if(!(n.f>104857600||m.a>1000))break +s=new A.bR(m,l).gaz(0) +if(!s.t())A.C(A.dB()) +r=s.gK(0) +q=m.i(0,r) +p=n.f +o=q.b +o.toString +n.f=p-o +q.m() +m.F(0,r)}}} +A.bmv.prototype={ +$0(){return A.diq(this.b,new A.bmu(this.a,this.c))}, +$S:572} +A.bmu.prototype={ +$0(){this.a.c.F(0,this.b)}, +$S:0} +A.bmw.prototype={ +$2(a,b){var s,r,q,p,o,n=this +if(a!=null){s=a.a +r=s.gdK(s)*s.geP(s)*4 +s.m()}else r=null +s=n.a +q=s.a +p=new A.adf(q,r,q.GW()) +q=n.b +o=n.c +q.a6l(o,s.a,r) +if(n.d)q.atc(o,p,n.e) +else p.m() +q.a.F(0,o) +if(!s.b){q=n.f.aX() +q.a.O(0,q.b)}s.b=!0}, +$S:452} +A.aLP.prototype={ +m(){$.cW.xr$.push(new A.bTM(this))}} +A.bTM.prototype={ +$1(a){var s=this.a,r=s.c +if(r!=null)r.m() +s.c=null}, +$S:5} +A.adf.prototype={} +A.XL.prototype={ +aVo(a,b,c){var s=new A.c3V(this,b) +this.d=s +if(a.x)A.C(A.a0(u.V)) +a.y.push(s)}, +k(a){return"#"+A.bq(this)}} +A.c3V.prototype={ +$0(){var s,r,q +this.b.$0() +s=this.a +r=s.a +q=s.d +q===$&&A.b() +if(r.x)A.C(A.a0(u.V)) +B.b.F(r.y,q) +s.ahC()}, +$S:0} +A.aSY.prototype={} +A.Js.prototype={ +yw(a){var s=this +return new A.Js(s.a,s.b,s.c,s.d,a,s.f)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.Js&&b.a==s.a&&b.b==s.b&&J.q(b.c,s.c)&&b.d==s.d&&J.q(b.e,s.e)&&b.f==s.f}, +gv(a){var s=this +return A.ad(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)}, +k(a){var s,r=this,q=""+"ImageConfiguration(",p=r.a +if(p!=null){q+="bundle: "+p.k(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.k(0)) +q=p +s=!0}p=r.d +if(p!=null){if(s)q+=", " +p=q+("textDirection: "+p.k(0)) +q=p +s=!0}p=r.e +if(p!=null){if(s)q+=", " +p=q+("size: "+p.k(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.kg.prototype={ +a5(a){var s=new A.bn0() +this.aZp(a,new A.bmS(this,a,s),new A.bmT(this,a,s)) +return s}, +aZp(a,b,c){var s,r,q,p,o,n={} +n.a=null +n.b=!1 +s=new A.bmP(n,c) +r=null +try{r=this.H9(a)}catch(o){q=A.ag(o) +p=A.aD(o) +s.$2(q,p) +return}r.bf(new A.bmO(n,this,b,s),t.H).mY(s)}, +OG(a,b,c,d){var s,r +if(b.a!=null){s=$.jo.eG$ +s===$&&A.b() +s.acZ(0,c,new A.bmQ(b),d) +return}s=$.jo.eG$ +s===$&&A.b() +r=s.acZ(0,c,new A.bmR(this,c),d) +if(r!=null)b.afy(r)}, +CD(a,b){return A.cNZ()}, +CE(a,b){return A.cNZ()}, +k(a){return"ImageConfiguration()"}} +A.bmS.prototype={ +$2(a,b){this.a.OG(this.b,this.c,a,b)}, +$S(){return A.z(this.a).h("~(kg.T,~(S,dC?))")}} +A.bmT.prototype={ +$3(a,b,c){return this.aHx(a,b,c)}, +aHx(a,b,c){var s=0,r=A.p(t.H),q=this,p +var $async$$3=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:p=A.dO(null,t.P) +s=2 +return A.i(p,$async$$3) +case 2:p=q.c +if(p.a==null)p.afy(new A.bZg(A.a([],t.XZ),A.a([],t.SM),A.a([],t.qj))) +p=p.a +p.toString +p.wT(A.cJ("while resolving an image"),b,null,!0,c) +return A.n(null,r)}}) +return A.o($async$$3,r)}, +$S(){return A.z(this.a).h("a8<~>(kg.T?,S,dC?)")}} +A.bmP.prototype={ +aHw(a,b){var s=0,r=A.p(t.H),q,p=this,o +var $async$$2=A.l(function(c,d){if(c===1)return A.m(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.n(q,r)}}) +return A.o($async$$2,r)}, +$2(a,b){return this.aHw(a,b)}, +$S:574} +A.bmO.prototype={ +$1(a){var s,r,q,p=this +p.a.a=a +try{p.c.$2(a,p.d)}catch(q){s=A.ag(q) +r=A.aD(q) +p.d.$2(s,r)}}, +$S(){return A.z(this.b).h("bd(kg.T)")}} +A.bmQ.prototype={ +$0(){var s=this.a.a +s.toString +return s}, +$S:453} +A.bmR.prototype={ +$0(){var s=this.a,r=this.b,q=s.CE(r,$.jo.gbyW()) +return q instanceof A.aKb?s.CD(r,$.jo.gbyT()):q}, +$S:453} +A.aKb.prototype={} +A.vm.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.vm&&b.a===s.a&&b.b===s.b&&b.c===s.c}, +gv(a){return A.ad(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)}, +k(a){return"AssetBundleImageKey(bundle: "+this.a.k(0)+', name: "'+this.b+'", scale: '+A.r(this.c)+")"}} +A.anh.prototype={ +CE(a,b){return A.a6_(null,this.rb(a,b),a.b,null,a.c)}, +CD(a,b){return A.a6_(null,this.rb(a,b),a.b,null,a.c)}, +rb(a,b){return this.b8M(a,b)}, +b8M(a,b){var s=0,r=A.p(t.hP),q,p=2,o,n,m,l,k +var $async$rb=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:l=null +p=4 +s=7 +return A.i(a.a.XR(a.b),$async$rb) +case 7:l=d +p=2 +s=6 +break +case 4:p=3 +k=o +if(A.ag(k) instanceof A.tT){m=$.jo.eG$ +m===$&&A.b() +m.aa9(a) +throw k}else throw k +s=6 +break +case 3:s=2 +break +case 6:q=b.$1(l) +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$rb,r)}} +A.wo.prototype={ +H9(a){return new A.dc(this,t.Q6)}, +CD(a,b){return A.a6_(null,this.rb(a,b),"MemoryImage("+("#"+A.bq(a.a))+")",null,a.b)}, +CE(a,b){return A.a6_(null,this.rb(a,b),"MemoryImage("+("#"+A.bq(a.a))+")",null,a.b)}, +rb(a,b){return this.b8N(a,b)}, +b8N(a,b){var s=0,r=A.p(t.hP),q,p=this,o +var $async$rb=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=b +s=3 +return A.i(A.DE(p.a),$async$rb) +case 3:q=o.$1(d) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$rb,r)}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.wo&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(A.ef(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)}, +k(a){return"MemoryImage("+("#"+A.bq(this.a))+", scale: "+B.e.aZ(this.b,1)+")"}} +A.bZg.prototype={} +A.aA5.prototype={ +k(a){return this.b}, +$ibP:1} +A.Hg.prototype={ +gGX(){var s=this.c,r=this.a +return s==null?r:"packages/"+s+"/"+r}, +H9(a){var s,r={},q=a.a +if(q==null)q=$.xI() +r.a=r.b=null +s=t.P +A.d7t(A.d1S(q).bf(new A.b48(r,this,a,q),s),new A.b49(r),s,t.K) +s=r.a +if(s!=null)return s +s=new A.ak($.at,t.Lv) +r.b=new A.aI(s,t.h8) +return s}, +aYl(a,b,c){var s,r,q,p,o +if(c==null||c.length===0||b.b==null)return new A.BW(null,a) +s=A.bGQ(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.az(b)!==A.I(this))return!1 +return b instanceof A.Hg&&b.gGX()===this.gGX()&&!0}, +gv(a){return A.ad(this.gGX(),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)}, +k(a){return"AssetImage(bundle: "+A.r(this.b)+', name: "'+this.gGX()+'")'}} +A.b48.prototype={ +$1(a){var s,r,q=this,p=q.b,o=a.aIl(p.gGX()),n=p.aYl(p.gGX(),q.c,o) +p=n.a +if(p==null)p=1 +s=new A.vm(q.d,n.b,p) +p=q.a +r=p.b +if(r!=null)r.d2(0,s) +else p.a=new A.dc(s,t.WT)}, +$S:576} +A.b49.prototype={ +$2(a,b){this.a.b.iy(a,b)}, +$S:23} +A.kX.prototype={ +jy(a){return new A.kX(this.a.jy(0),this.b,this.c)}, +k(a){var s=this.c +s=s!=null?s+" ":"" +return s+this.a.k(0)+" @ "+A.r0(this.b)+"x"}, +gv(a){return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.kX&&b.a===s.a&&b.b===s.b&&b.c==s.c}} +A.kh.prototype={ +gv(a){return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.kh&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&J.q(b.c,s.c)}, +bCj(a,b){return this.a.$2(a,b)}} +A.pf.prototype={} +A.bn0.prototype={ +afy(a){var s,r=this +r.a=a +s=r.b +if(s!=null){r.b=null +a.r=!0 +B.b.aE(s,a.gLq(a)) +r.a.r=!1}}, +a3(a,b){var s=this.a +if(s!=null)return s.a3(0,b) +s=this.b;(s==null?this.b=A.a([],t.XZ):s).push(b)}, +O(a,b){var s,r=this.a +if(r!=null)return r.O(0,b) +for(s=0;r=this.b,s")),t.ak),!0,t.LJ) +n=i.b +B.b.L(o,n) +B.b.V(n) +s=!1 +for(n=o.length,m=0;m")),r),!0,r.h("B.E")) +for(s=q.length,p=0;p=s.a}else r=!0 +if(r){s=p.ax +p.ala(new A.kX(s.giR(s).jy(0),p.as,p.e)) +p.ay=a +s=p.ax +p.ch=s.gC2(s) +s=p.ax +s.giR(s).m() +p.ax=null +q=B.d.hf(p.CW,p.Q.gzg()) +if(p.Q.gHG()===-1||q<=p.Q.gHG())p.Em() +return}s.toString +r=p.ay +r===$&&A.b() +p.cx=A.d3(new A.aU(B.d.aF(s.a-(a.a-r.a))),new A.btI(p))}, +Em(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$Em=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:j=n.ax +if(j!=null)j.giR(j).m() +n.ax=null +p=4 +s=7 +return A.i(n.Q.nY(),$async$Em) +case 7:n.ax=b +p=2 +s=6 +break +case 4:p=3 +i=o +m=A.ag(i) +l=A.aD(i) +n.wT(A.cJ("resolving an image frame"),m,n.at,!0,l) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:if(n.Q.gzg()===1){if(n.a.length===0){s=1 +break}j=n.ax +n.ala(new A.kX(j.giR(j).jy(0),n.as,n.e)) +j=n.ax +j.giR(j).m() +n.ax=null +s=1 +break}n.arb() +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Em,r)}, +arb(){if(this.cy)return +this.cy=!0 +$.cW.IF(this.gb2V())}, +ala(a){this.a0d(a);++this.CW}, +a3(a,b){var s,r=this +if(r.a.length===0){s=r.Q +if(s!=null)s=r.c==null||s.gzg()>1 +else s=!1}else s=!1 +if(s)r.Em() +r.agC(0,b)}, +O(a,b){var s,r=this +r.agD(0,b) +if(r.a.length===0){s=r.cx +if(s!=null)s.ao(0) +r.cx=null}}, +SI(){var s,r=this +r.aOD() +if(r.x){s=r.z +if(s!=null)s.lh(null) +s=r.z +if(s!=null)s.ao(0) +r.z=null}}} +A.btJ.prototype={ +$2(a,b){this.a.wT(A.cJ("resolving an image codec"),a,this.b,!0,b)}, +$S:23} +A.btK.prototype={ +$2(a,b){this.a.wT(A.cJ("loading an image"),a,this.b,!0,b)}, +$S:23} +A.btI.prototype={ +$0(){this.a.arb()}, +$S:0} +A.aQ6.prototype={} +A.aQ8.prototype={} +A.aQ7.prototype={} +A.amH.prototype={} +A.z8.prototype={ +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.z8&&b.a===s.a&&b.b==s.b&&b.c==s.c&&b.d===s.d&&A.fj(b.f,s.f)}, +gv(a){var s=this +return A.ad(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)}, +k(a){return"InlineSpanSemanticsInformation{text: "+this.a+", semanticsLabel: "+A.r(this.b)+", recognizer: "+A.r(this.c)+"}"}} +A.ki.prototype={ +a_L(a){var s={} +s.a=null +this.d0(new A.bnA(s,a,new A.amH())) +return s.a}, +OZ(a){var s,r=new A.bu("") +this.a8l(r,!0,a) +s=r.a +return s.charCodeAt(0)==0?s:s}, +aFv(){return this.OZ(!0)}, +p9(a,b){var s={} +if(b<0)return null +s.a=null +this.d0(new A.bnz(s,b,new A.amH())) +return s.a}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.ki&&J.q(b.a,this.a)}, +gv(a){return J.ab(this.a)}} +A.bnA.prototype={ +$1(a){var s=a.af2(this.b,this.c) +this.a.a=s +return s==null}, +$S:124} +A.bnz.prototype={ +$1(a){var s=a.awZ(this.b,this.c) +this.a.a=s +return s==null}, +$S:124} +A.buR.prototype={} +A.b5i.prototype={ +aJ2(a,b){var s=B.ep.nq(a) +return s}} +A.aBr.prototype={ +a8l(a,b,c){a.a+=A.cm(65532)}, +VG(a){a.push(B.aAe)}} +A.fn.prototype={ +bK(a,b){var s=this.a.bK(0,b) +return new A.fn(this.b.X(0,b),s)}, +j3(a,b){var s,r,q=this +if(a instanceof A.fn){s=A.c8(a.a,q.a,b) +r=A.vr(a.b,q.b,b) +r.toString +return new A.fn(r,s)}if(a instanceof A.kc){s=A.c8(a.a,q.a,b) +return new A.nC(q.b,1-b,a.b,s)}return q.E1(a,b)}, +j4(a,b){var s,r,q=this +if(a instanceof A.fn){s=A.c8(q.a,a.a,b) +r=A.vr(q.b,a.b,b) +r.toString +return new A.fn(r,s)}if(a instanceof A.kc){s=A.c8(q.a,a.a,b) +return new A.nC(q.b,b,a.b,s)}return q.E2(a,b)}, +n0(a){var s=a==null?this.a:a +return new A.fn(this.b,s)}, +js(a,b){var s=this.b.a5(b).hq(a).fH(-this.a.gkl()),r=$.ar().dc() +r.iM(s) +return r}, +qP(a){return this.js(a,null)}, +i7(a,b){var s=$.ar().dc() +s.iM(this.b.a5(b).hq(a)) +return s}, +nq(a){return this.i7(a,null)}, +oB(a,b,c,d){var s=this.b +if(s.l(0,B.bh))a.fs(b,c) +else a.dh(s.a5(d).hq(b),c)}, +gng(){return!0}, +kz(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.dh(s.a5(c).hq(b),o.nn()) +else{r=$.ar().aP() +r.sa6(0,o.a) +q=s.a5(c).hq(b) +p=q.fH(-o.gkl()) +a.Ge(q.fH(o.gDQ()),p,r)}break}}, +aI(a,b){return this.kz(a,b,null)}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.fn&&b.a.l(0,this.a)&&b.b.l(0,this.b)}, +gv(a){return A.ad(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)}, +k(a){return"RoundedRectangleBorder("+this.a.k(0)+", "+this.b.k(0)+")"}} +A.nC.prototype={ +bK(a,b){var s=this.a.bK(0,b) +return new A.nC(this.b.X(0,b),b,this.d,s)}, +j3(a,b){var s,r,q,p=this +if(a instanceof A.fn){s=A.c8(a.a,p.a,b) +r=A.vr(a.b,p.b,b) +r.toString +return new A.nC(r,p.c*b,p.d,s)}if(a instanceof A.kc){s=A.c8(a.a,p.a,b) +r=p.c +return new A.nC(p.b,r+(1-r)*(1-b),a.b,s)}if(a instanceof A.nC){s=A.c8(a.a,p.a,b) +r=A.vr(a.b,p.b,b) +r.toString +q=A.av(a.c,p.c,b) +q.toString +return new A.nC(r,q,p.d,s)}return p.E1(a,b)}, +j4(a,b){var s,r,q,p=this +if(a instanceof A.fn){s=A.c8(p.a,a.a,b) +r=A.vr(p.b,a.b,b) +r.toString +return new A.nC(r,p.c*(1-b),p.d,s)}if(a instanceof A.kc){s=A.c8(p.a,a.a,b) +r=p.c +return new A.nC(p.b,r+(1-r)*b,a.b,s)}if(a instanceof A.nC){s=A.c8(p.a,a.a,b) +r=A.vr(p.b,a.b,b) +r.toString +q=A.av(p.c,a.c,b) +q.toString +return new A.nC(r,q,p.d,s)}return p.E2(a,b)}, +KQ(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.gng())p.x=A.R(new A.O(r,new A.ceO(a),A.X(r).h("O<1,W>")),!0,t.YT) +else p.y=A.R(new A.O(r,new A.ceP(p,a,b),A.X(r).h("O<1,qu>")),!0,t.ke)}r=s.e +if(!r.gng())q=p.r!=null||p.w!=null +else q=!1 +if(q)p.e=r.i7(a,b) +if(s.c!=null)p.f=r.js(a,b) +p.c=a +p.d=b}, +bi0(a,b,c){var s,r,q,p,o=this +if(o.w!=null){s=o.b.e +if(s.gng()){r=0 +while(!0){q=o.w +q.toString +if(!(r>>0)+r+-56613888 +break $label0$0}if(56320===s){r=r.p9(0,a-1) +r.toString +r=(r<<10>>>0)+q+-56613888 +break $label0$0}r=q +break $label0$0}return r}, +bil(a,b){var s,r=this.aYx(b?a-1:a),q=b?a:a-1,p=this.a.p9(0,q) +if(!(r==null||p==null||A.cNO(r)||A.cNO(p))){q=A.b4("[\\p{Space_Separator}\\p{Punctuation}]",!0,!1,!0) +s=A.cm(r) +q=!q.b.test(s)}else q=!0 +return q}, +gaCf(){var s=this,r=s.c +if(r===$){r!==$&&A.a_() +r=s.c=new A.aZl(s.gbik(),s)}return r}} +A.aZl.prototype={ +lS(a){var s +if(a<0)return null +s=this.b.lS(a) +return s==null||this.a.$2(s,!1)?s:this.lS(s-1)}, +lU(a){var s=this.b.lU(Math.max(a,0)) +return s==null||this.a.$2(s,!0)?s:this.lU(s)}} +A.cii.prototype={ +tc(a){var s +switch(a.a){case 0:s=this.a +s=s.gFn(s) +break +case 1:s=this.a +s=s.gaAI(s) +break +default:s=null}return s}} +A.cim.prototype={ +gpB(){var s,r,q=this.c +if(q===0)return B.h +s=this.a +r=s.a +if(!isFinite(r.geP(r)))return B.be9 +r=this.b +s=s.a +return new A.j(q*(r-s.geP(s)),0)}, +bg0(a,b,c){var s,r,q=this,p=q.a,o=A.cP7(a,b,c,p) +if(o===q.b)return!0 +if(!isFinite(q.gpB().a)){s=p.a +s=!isFinite(s.geP(s))&&isFinite(a)}else s=!1 +if(s)return!1 +r=p.a.gwy() +p=p.a +if(p.geP(p)-r>-1e-10&&b-r>-1e-10){q.b=o +return!0}return!1}} +A.XI.prototype={} +A.Xl.prototype={} +A.uH.prototype={ +a9(){var s=this.b +if(s!=null)s.a.a.m() +this.b=null}, +sce(a,b){var s,r,q,p=this +if(J.q(p.f,b))return +s=p.f +s=s==null?null:s.a +r=b==null +if(!J.q(s,r?null:b.a)){s=p.CW +if(s!=null)s.m() +p.CW=null}if(r)q=B.df +else{s=p.f +s=s==null?null:s.bn(0,b) +q=s==null?B.df:s}p.f=b +p.r=null +s=q.a +if(s>=3)p.a9() +else if(s>=2)p.c=!0}, +gpC(){var s=this.r +if(s==null){s=this.f +s=s==null?null:s.OZ(!1) +this.r=s}return s==null?"":s}, +sD9(a,b){if(this.w===b)return +this.w=b +this.a9()}, +sd5(a){var s,r=this +if(r.x===a)return +r.x=a +r.a9() +s=r.CW +if(s!=null)s.m() +r.CW=null}, +sdZ(a){var s,r=this +if(a.l(0,r.y))return +r.y=a +r.a9() +s=r.CW +if(s!=null)s.m() +r.CW=null}, +sbv0(a){if(this.z==a)return +this.z=a +this.a9()}, +sCG(a,b){if(J.q(this.Q,b))return +this.Q=b +this.a9()}, +sCI(a){if(this.as==a)return +this.as=a +this.a9()}, +sts(a){if(J.q(this.at,a))return +this.at=a +this.a9()}, +sDa(a){if(this.ax===a)return +this.ax=a}, +gaAY(){var s,r,q,p=this.b +if(p==null)return null +s=p.gpB() +if(!isFinite(s.a)||!isFinite(s.b))return A.a([],t.Lx) +r=p.d +if(r==null)r=p.d=p.a.a.Pz() +if(s.l(0,B.h))return r +q=A.X(r).h("O<1,kr>") +return A.R(new A.O(r,new A.bLo(s),q),!1,q.h("aa.E"))}, +qX(a){if(a==null||a.length===0||A.fj(a,this.ch))return +this.ch=a +this.a9()}, +akn(a){var s,r,q,p,o,n=this,m=null,l=n.f.a +if(l==null)l=m +else{s=n.w +r=n.x +if(r==null)r=a +q=n.y +p=n.as +o=n.ay +q=l.aJ6(n.z,n.Q,p,n.at,s,r,o,q) +l=q}if(l==null){l=n.w +s=n.x +if(s==null)s=a +r=n.y.bK(0,14) +q=n.as +p=n.ay +p=A.bwC(n.z,m,r,m,m,m,n.Q,q,m,l,s,p) +l=p}return l}, +aZu(){return this.akn(null)}, +giq(){var s,r,q=this,p=q.CW +if(p==null){p=q.akn(B.ae) +s=$.ar().Mb(p) +p=q.f +if(p==null)r=null +else{p=p.a +r=p==null?null:p.PR(q.y)}if(r!=null)s.CX(r) +s.Fk(" ") +p=s.dN() +p.j1(B.ST) +q.CW=p}return p.gdK(p)}, +akm(a){var s=this,r=s.aZu(),q=$.ar().Mb(r) +r=s.y +a.Vf(q,s.ch,r) +s.c=!1 +return q.dN()}, +ND(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.b,i=j==null +if(!i&&j.bg0(b,a,k.ax))return +s=k.f +if(s==null)throw A.d(A.a0("TextPainter.text must be set to a non-null value before using the TextPainter.")) +r=k.x +if(r==null)throw A.d(A.a0("TextPainter.textDirection must be set to a non-null value before using the TextPainter.")) +q=A.cMP(k.w,r) +if(!(!isFinite(a)&&q!==0))p=a +else p=i?null:j.a.a.gwy() +o=p==null +k.d=o?a:p +n=i?null:j.a.a +if(n==null)n=k.akm(s) +n.j1(new A.Ez(k.d)) +i=new A.cii(n) +m=A.cP7(b,a,k.ax,i) +if(o&&isFinite(b)){l=i.a.gwy() +n.j1(new A.Ez(l)) +k.d=l}k.b=new A.cim(i,m,q)}, +qt(){return this.ND(1/0,0)}, +aBK(a){return this.ND(a,0)}, +aI(a,b){var s,r,q,p=this,o=p.b +if(o==null)throw A.d(A.a0("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.gpB().a)||!isFinite(o.gpB().b))return +if(p.c){s=o.a +r=s.a +q=p.f +q.toString +q=p.akm(q) +q.j1(new A.Ez(p.d)) +s.a=q +r.m()}a.w8(o.a.a,b.S(0,o.gpB()))}, +aeP(a){var s=this.f.p9(0,a) +if(s==null)return null +return(s&64512)===55296?a+2:a+1}, +aeQ(a){var s=a-1,r=this.f.p9(0,s) +if(r==null)return null +return(r&64512)===56320?a-2:s}, +amk(a){var s,r,q,p,o,n,m,l,k,j=this,i=j.gpC().length +if(i===0||a>i)return null +s=B.c.p9(j.gpC(),Math.max(0,a-1)) +r=s&64512 +q=r===55296||r===56320||j.f.p9(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.a_t(Math.max(0,l),a,B.A2) +if(o.length===0){if(n&&m)break +if(l>>0,n=!q;o.length===0;){m=a+p +o=this.b.a.a.a_t(a,m,B.A2) +if(o.length===0){if(n)break +if(m>=r)break +p*=2 +continue}l=B.b.ga2(o).e===B.j?B.b.ga2(o):B.b.gP(o) +r=l.e +n=r===B.j?l.a:l.c +k=l.b +return new A.XI(new A.j(n,k),r,l.d-k)}return null}, +v8(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.b +e.toString +s=a.a<0?B.a_o:g.ajY(a) +$label0$0:{if(s instanceof A.Xl){r=s.a +q=r +p=!0}else{q=f +p=!1}if(p){p=g.w +o=g.x +o.toString +n=A.cMP(p,o) +return new A.j(n===0?0:n*e.b,q)}p=s instanceof A.XI +if(p){m=s.b +if(B.j===m){l=s.a +k=l +o=!0 +j=!0}else{k=f +l=k +j=!1 +o=!1}i=!0}else{k=f +l=k +m=l +i=!1 +j=!1 +o=!1}if(o){h=k +break $label0$0}if(p)if(B.ae===(i?m:s.b)){if(j)p=l +else{l=s.a +p=l +j=!0}if(p instanceof A.j){k=j?l:s.a +p=!0}else{k=f +p=!1}}else{k=f +p=!1}else{k=f +p=!1}h=p?new A.j(k.a-(b.c-b.a),k.b):f +break $label0$0}return new A.j(A.Z(h.a+e.gpB().a,0,e.b),h.b+e.gpB().b)}, +aeE(a,b){var s,r,q,p,o +if(a.a<0)return null +s=this.ajY(a) +$label0$0:{if(s instanceof A.XI){r=s.c +q=!0 +p=!0}else{r=null +q=!1 +p=!1}if(p){o=q?r:s.c +p=o +break $label0$0}if(s instanceof A.Xl){p=null +break $label0$0}throw A.d(A.iB(u.P))}return p}, +ajY(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.amk(r) +if(s==null)s=q.amj(r) +break +case 1:s=q.amj(r) +if(s==null)s=q.amk(r) +break +default:s=null}p.f=a +return q.cx=s==null?B.a_o:s}, +Dp(a,b,c){var s,r,q=this.b,p=q.gpB() +if(!isFinite(p.a)||!isFinite(p.b))return A.a([],t.Lx) +s=q.a.a.PA(a.a,a.b,b,c) +if(p.l(0,B.h))r=s +else{r=A.X(s).h("O<1,kr>") +r=A.R(new A.O(s,new A.bLn(p),r),!1,r.h("aa.E"))}return r}, +tb(a){return this.Dp(a,B.cY,B.cA)}, +aey(a){var s=this.b,r=s.a.a.aez(a.W(0,s.gpB())) +if(r==null||s.gpB().l(0,B.h))return r +return new A.Jb(r.a.eD(s.gpB()),r.b,r.c)}, +kY(a){var s=this.b +return s.a.a.kY(a.W(0,s.gpB()))}, +BK(){var s,r,q=this.b,p=q.gpB() +if(!isFinite(p.a)||!isFinite(p.b))return B.aN8 +s=q.e +if(s==null){s=q.a.a.BK() +q.e=s}if(p.l(0,B.h))r=s +else{r=A.X(s).h("O<1,DY>") +r=A.R(new A.O(s,new A.bLm(p),r),!1,r.h("aa.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.bLo.prototype={ +$1(a){return A.cMQ(a,this.a)}, +$S:187} +A.bLn.prototype={ +$1(a){return A.cMQ(a,this.a)}, +$S:187} +A.bLm.prototype={ +$1(a){var s=this.a,r=a.gaAr(),q=a.gavy(),p=a.gMr(),o=a.gP6(),n=a.gdK(a),m=a.geP(a),l=a.goy(a),k=a.gu2(),j=a.gabM(a) +return $.ar().axZ(q,k+s.b,p,r,n,l+s.a,j,o,m)}, +$S:587} +A.li.prototype={ +bK(a,b){return b*this.a}, +Vx(a,b,c){var s=this.a,r=A.Z(s,c,b) +return r===s?this:new A.li(r)}, +a88(a,b){return this.Vx(0,b,0)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.li&&b.a===this.a}, +gv(a){return B.e.gv(this.a)}, +k(a){var s=this.a +return s===1?"no scaling":"linear ("+A.r(s)+"x)"}, +$ibLp:1, +gir(){return this.a}} +A.wS.prototype={ +gyD(a){return this.e}, +gI3(){return!0}, +n8(a,b){var s +if(t.pY.b(a)){s=this.d +if(s!=null)s.m9(a)}}, +Vf(a,b,c){var s,r,q,p,o,n=this.a,m=n!=null +if(m)a.CX(n.PR(c)) +n=this.b +if(n!=null)try{a.Fk(n)}catch(q){n=A.ag(q) +if(n instanceof A.nN){s=n +r=A.aD(q) +A.fs(new A.dl(s,r,"painting library",A.cJ("while building a TextSpan"),null,!0)) +a.Fk("\ufffd")}else throw q}p=this.c +if(p!=null)for(n=p.length,o=0;oq.a)q=p +if(q===B.df)return q}s=n.c +if(s!=null)for(r=b.c,o=0;oq.a)q=p +if(q===B.df)return q}return q}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +if(!s.agF(0,b))return!1 +return b instanceof A.wS&&b.b==s.b&&b.d==s.d&&s.e.l(0,b.e)&&A.fj(b.c,s.c)}, +gv(a){var s=this,r=null,q=A.ki.prototype.gv.call(s,0),p=s.c +p=p==null?r:A.cs(p) +return A.ad(q,s.b,s.d,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)}, +hL(){return"TextSpan"}, +$iay:1, +$ilC:1, +gO3(){return null}, +gO4(){return null}} +A.a4.prototype={ +grC(){var s,r=this.e +if(!(this.f==null))if(r==null)r=null +else{s=A.X(r).h("O<1,f>") +s=A.R(new A.O(r,new A.bLt(this),s),!0,s.h("aa.E")) +r=s}return r}, +gBj(a){var s,r=this.f +if(r!=null){s=this.d +return s==null?null:B.c.b0(s,("packages/"+r+"/").length)}return this.d}, +rm(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){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=c2==null?a2.a:c2,a4=a2.ay +if(a4==null&&c0==null)s=a7==null?a2.b:a7 +else s=null +r=a2.ch +if(r==null&&a5==null)q=a6==null?a2.c:a6 +else q=null +p=b6==null?a2.r:b6 +o=b9==null?a2.w:b9 +n=b7==null?a2.x:b7 +m=c4==null?a2.y:c4 +l=d0==null?a2.z:d0 +k=c9==null?a2.Q:c9 +j=c1==null?a2.as:c1 +i=c3==null?a2.at:c3 +a4=c0==null?a4:c0 +r=a5==null?r:a5 +h=c8==null?a2.dy:c8 +g=b8==null?a2.fx:b8 +f=a9==null?a2.CW:a9 +e=b0==null?a2.cx:b0 +d=b1==null?a2.cy:b1 +c=b2==null?a2.db:b2 +b=b3==null?a2.gBj(0):b3 +a=b4==null?a2.e:b4 +a0=c7==null?a2.f:c7 +a1=c6==null?a2.fy:c6 +return A.dH(r,q,s,null,f,e,d,c,b,a,a2.fr,p,n,g,o,a4,j,a3,i,m,a2.ax,a1,a0,h,k,l)}, +bsq(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.rm(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)}, +VO(a){var s=null +return this.rm(s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s,s,s,s)}, +bu(a){var s=null +return this.rm(s,s,a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +vZ(a,b){var s=null +return this.rm(s,s,a,s,s,s,s,s,s,s,s,b,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +bsE(a,b,c,d,e,f){var s=null +return this.rm(s,s,a,s,b,c,d,e,s,s,s,s,f,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +axB(a,b){var s=null +return this.rm(s,s,s,a,s,s,s,s,s,s,s,s,s,s,s,s,b,s,s,s,s,s,s,s,s,s)}, +a8F(a){var s=null +return this.rm(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s)}, +bs9(a,b){var s=null +return this.rm(s,s,s,a,s,s,s,s,s,s,s,b,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +a8x(a){var s=null +return this.rm(s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +axr(a){var s=null +return this.rm(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s)}, +axq(a){var s=null +return this.rm(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s,s)}, +mW(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.gBj(0) +o=h.r +o=o==null?g:o*a2+a1 +n=h.w +n=n==null?g:B.vw[B.d.dV(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.dH(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)}, +yg(a){var s=null +return this.mW(a,s,s,s,s,s,0,1,s)}, +dt(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.gBj(0) +a2=a4.e +a3=a4.f +return this.bsq(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)}, +PR(a){var s,r,q,p,o,n,m,l=this,k=l.r +$label0$0:{if(k==null){s=null +break $label0$0}s=a.l(0,B.Y) +if(s){s=k +break $label0$0}s=a.bK(0,k) +break $label0$0}r=l.grC() +q=l.ch +p=l.c +$label1$1:{o=t.Q2 +if(o.b(q)){n=q==null?o.a(q):q +o=n +break $label1$1}if(p instanceof A.v){m=p==null?t.G.a(p):p +o=$.ar().aP() +o.sa6(0,m) +break $label1$1}o=null +break $label1$1}return A.czl(o,l.b,l.CW,l.cx,l.cy,l.db,l.d,r,l.fr,s,l.x,l.fx,l.w,l.ay,l.as,l.at,l.y,l.ax,l.dy,l.Q,l.z)}, +aJ6(a,b,c,d,e,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.at,g=h==null?i:new A.aaV(h),f=j.r +f=a2.bK(0,f==null?14:f) +if(d==null)s=i +else{s=d.a +r=d.grC() +q=d.d +$label0$0:{if(q==null){p=i +break $label0$0}p=a2.bK(0,q) +break $label0$0}o=d.e +n=d.x +m=d.r +l=d.w +k=d.y +n=$.ar().ay8(s,r,p,l,m,k,o,n,i) +s=n}return A.bwC(a,j.d,f,j.x,j.w,j.as,b,c,s,e,a0,g)}, +bn(a,b){var s=this +if(s===b)return B.h6 +if(s.a!==b.a||s.d!=b.d||s.r!=b.r||s.w!=b.w||s.x!=b.x||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.fj(s.dy,b.dy)||!A.fj(s.fr,b.fr)||!A.fj(s.fx,b.fx)||!A.fj(s.grC(),b.grC())||s.fy!=b.fy)return B.df +if(!J.q(s.b,b.b)||!J.q(s.c,b.c)||!J.q(s.CW,b.CW)||!J.q(s.cx,b.cx)||s.cy!=b.cy||s.db!=b.db)return B.bk4 +return B.h6}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.a4&&b.a===s.a&&J.q(b.b,s.b)&&J.q(b.c,s.c)&&b.r==s.r&&b.w==s.w&&b.x==s.x&&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.fj(b.dy,s.dy)&&A.fj(b.fr,s.fr)&&A.fj(b.fx,s.fx)&&J.q(b.CW,s.CW)&&J.q(b.cx,s.cx)&&b.cy==s.cy&&b.db==s.db&&b.d==s.d&&A.fj(b.grC(),s.grC())&&b.f==s.f&&b.fy==s.fy}, +gv(a){var s,r=this,q=null,p=r.grC(),o=p==null?q:A.cs(p),n=A.ad(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.cs(m) +s=l==null?q:A.cs(l) +return A.ad(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)}, +hL(){return"TextStyle"}} +A.bLt.prototype={ +$1(a){var s=this.a.f +return"packages/"+(s==null?A.ax(s):s)+"/"+a}, +$S:28} +A.aYh.prototype={} +A.auw.prototype={ +aUJ(a,b,c,d,e){var s=this +s.r=A.cQU(new A.bjp(s),s.ga9R(s),0,10,0)}, +jN(a,b){var s,r,q=this +if(b>q.r)return q.gGy() +s=q.e +r=q.c +return q.d+s*Math.pow(q.b,b)/r-s/r-q.f/2*b*b}, +md(a,b){var s=this +if(b>s.r)return 0 +return s.e*Math.pow(s.b,b)-s.f*b}, +gGy(){var s=this +if(s.f===0)return s.d-s.e/s.c +return s.jN(0,s.r)}, +aFp(a){var s,r=this,q=r.d +if(a===q)return 0 +s=r.e +if(s!==0)if(s>0)q=ar.gGy() +else q=a>q||a=r.b&&r.c>=r.d +else q=!0 +if(q){o.e3(0) +o=p.eR +p.id=o.a=o.b=new A.V(A.Z(0,r.a,r.b),A.Z(0,r.c,r.d)) +p.h9=B.X2 +o=p.k1$ +if(o!=null)o.j1(r) +return}s.d_(r,!0) +switch(p.h9.a){case 0:o=p.eR +o.a=o.b=p.k1$.gu(0) +p.h9=B.x4 +break +case 1:s=p.eR +if(!J.q(s.b,p.k1$.gu(0))){s.a=p.gu(0) +s.b=p.k1$.gu(0) +p.eS=0 +o.l9(0,0) +p.h9=B.bk1}else{q=o.x +q===$&&A.b() +if(q===o.b)s.a=s.b=p.k1$.gu(0) +else{s=o.r +if(!(s!=null&&s.a!=null))o.cM(0)}}break +case 2:s=p.eR +if(!J.q(s.b,p.k1$.gu(0))){s.a=s.b=p.k1$.gu(0) +p.eS=0 +o.l9(0,0) +p.h9=B.bk2}else{p.h9=B.x4 +s=o.r +if(!(s!=null&&s.a!=null))o.cM(0)}break +case 3:s=p.eR +if(!J.q(s.b,p.k1$.gu(0))){s.a=s.b=p.k1$.gu(0) +p.eS=0 +o.l9(0,0)}else{o.e3(0) +p.h9=B.x4}break}o=p.eR +s=p.eQ +s===$&&A.b() +s=o.ah(0,s.gj(0)) +s.toString +p.id=r.bd(s) +p.Fl() +if(p.gu(0).a=a.b&&a.c>=a.d +else s=!0 +if(s)return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d)) +r=p.jr(a) +switch(q.h9.a){case 0:return a.bd(r) +case 1:if(!J.q(q.eR.b,r))return a.bd(q.gu(0)) +else{p=q.eF +p===$&&A.b() +s=p.x +s===$&&A.b() +if(s===p.b)return a.bd(r)}break +case 3:case 2:if(!J.q(q.eR.b,r))return a.bd(r) +break}p=q.eQ +p===$&&A.b() +p=q.eR.ah(0,p.gj(0)) +p.toString +return a.bd(p)}, +aW3(a){switch(a.a){case 3:break +case 0:case 1:case 2:break}}, +aI(a,b){var s,r,q,p=this +if(p.k1$!=null){s=p.eG +s===$&&A.b() +s=s&&p.jA!==B.i}else s=!1 +r=p.n3 +if(s){s=p.gu(0) +q=p.cx +q===$&&A.b() +r.sb9(0,a.nV(q,b,new A.W(0,0,0+s.a,0+s.b),A.EX.prototype.gk0.call(p),p.jA,r.a))}else{r.sb9(0,null) +p.ahn(a,b)}}, +m(){var s,r=this +r.n3.sb9(0,null) +s=r.eF +s===$&&A.b() +s.m() +s=r.eQ +s===$&&A.b() +s.m() +r.ig()}} +A.bAc.prototype={ +$0(){var s=this.a,r=s.eF +r===$&&A.b() +r=r.x +r===$&&A.b() +if(r!==s.eS)s.a9()}, +$S:0} +A.Ul.prototype={ +gYS(){var s,r=this,q=r.dx$ +if(q===$){s=A.cyr(new A.bBO(r),new A.bBP(r),new A.bBQ(r)) +q!==$&&A.a_() +r.dx$=s +q=s}return q}, +bsW(a){var s,r=$.ec().d +if(r==null){s=self.window.devicePixelRatio +r=s===0?1:s}return new A.Wq(a.go.grX().iI(0,r),r)}, +aaO(){var s,r,q,p,o,n,m +for(s=this.fx$.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1],q=!1;s.t();){p=s.a +if(p==null)p=r.a(p) +q=q||p.k1$!=null +o=p.go +n=$.ec().d +if(n==null){m=self.window.devicePixelRatio +n=m===0?1:m}m=o.as +if(m==null){m=o.ay.a8k() +o.as=m}p.su7(new A.Wq(new A.V(m.a/n,m.b/n),n))}if(q)this.aJH()}, +aaY(){}, +aaR(){}, +byG(){var s,r=this.db$ +if(r!=null){r.k3$=$.ae() +r.k2$=0}r=t.S +s=$.ae() +this.db$=new A.azO(new A.bBN(this),new A.btw(B.c6,A.N(r,t.ZA)),A.N(r,t.ko),s)}, +b74(a){B.b5P.fi("first-frame",null,!1,t.H)}, +b5i(a){this.a9O() +this.bgP()}, +bgP(){$.cW.xr$.push(new A.bBM(this))}, +avj(){--this.go$ +if(!this.id$)this.a0_()}, +a9O(){var s,r,q=this,p=q.fr$ +p===$&&A.b() +p.N1() +q.fr$.WZ() +q.fr$.X_() +if(q.id$||q.go$===0){for(p=q.fx$.gbm(0),s=A.z(p),s=s.h("@<1>").a1(s.y[1]),p=new A.c4(J.au(p.a),p.b,s.h("c4<1,2>")),s=s.y[1];p.t();){r=p.a;(r==null?s.a(r):r).bqV()}q.fr$.azT() +q.id$=!0}}, +$iay:1, +$ilH:1} +A.bBO.prototype={ +$0(){var s=t.vK.a(this.a.gYS().e) +if(s!=null)s.PY()}, +$S:0} +A.bBQ.prototype={ +$1(a){var s=t.vK.a(this.a.gYS().e) +if(s!=null)s.go.gaft().bHJ(a)}, +$S:465} +A.bBP.prototype={ +$0(){var s=t.vK.a(this.a.gYS().e) +if(s!=null)s.yp()}, +$S:0} +A.bBN.prototype={ +$2(a,b){var s=A.Rr() +this.a.zk(s,a,b) +return s}, +$S:589} +A.bBM.prototype={ +$1(a){this.a.db$.aFW()}, +$S:5} +A.acX.prototype={ +m(){this.a.gKV().O(0,this.gip()) +this.f4()}} +A.aNl.prototype={} +A.aVC.prototype={ +acR(){if(this.D)return +this.aQ_() +this.D=!0}, +PY(){this.yp() +this.aPN()}, +m(){this.sbq(null)}} +A.aG.prototype={ +BQ(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.aG(r,q,p,a==null?s.d:a)}, +a8D(a){return this.BQ(null,null,null,a)}, +axD(a,b){return this.BQ(null,null,a,b)}, +BO(a){return this.BQ(null,a,null,null)}, +a8I(a,b){return this.BQ(a,null,b,null)}, +a8C(a){return this.BQ(a,null,null,null)}, +bsv(a,b,c){return this.BQ(a,null,b,c)}, +VQ(a,b){return this.BQ(null,a,null,b)}, +om(a){var s=this,r=a.geL(),q=a.gdM(0)+a.gdT(0),p=Math.max(0,s.a-r),o=Math.max(0,s.c-q) +return new A.aG(p,Math.max(p,s.b-r),o,Math.max(o,s.d-q))}, +C5(a){var s=this,r=a.a,q=a.b,p=a.c,o=a.d +return new A.aG(A.Z(s.a,r,q),A.Z(s.b,r,q),A.Z(s.c,p,o),A.Z(s.d,p,o))}, +ZG(a,b){var s,r,q=this,p=b==null,o=q.a,n=p?o:A.Z(b,o,q.b),m=q.b +p=p?m:A.Z(b,o,m) +o=a==null +m=q.c +s=o?m:A.Z(a,m,q.d) +r=q.d +return new A.aG(n,p,s,o?r:A.Z(a,m,r))}, +OU(a){return this.ZG(null,a)}, +OT(a){return this.ZG(a,null)}, +bd(a){var s=this +return new A.V(A.Z(a.a,s.a,s.b),A.Z(a.b,s.c,s.d))}, +LV(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.Z(0,m,l),A.Z(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}, +X(a,b){var s=this +return new A.aG(s.a*b,s.b*b,s.c*b,s.d*b)}, +gbzr(){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.az(b)!==A.I(s))return!1 +return b instanceof A.aG&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +gv(a){var s=this +return A.ad(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)}, +k(a){var s,r=this,q=r.gbzr()?"":"; 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.b6H() +return"BoxConstraints("+s.$3(p,r.b,"w")+", "+s.$3(r.c,r.d,"h")+q+")"}} +A.b6H.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:590} +A.ty.prototype={ +Ls(a,b,c){if(c!=null){c=A.Kl(A.cyw(c)) +if(c==null)return!1}return this.Lt(a,b,c)}, +l5(a,b,c){var s,r=b==null,q=r?c:c.W(0,b) +r=!r +if(r)this.c.push(new A.XZ(new A.j(-b.a,-b.b))) +s=a.$2(this,q) +if(r)this.YU() +return s}, +Lt(a,b,c){var s,r=c==null,q=r?b:A.cK(c,b) +r=!r +if(r)this.c.push(new A.ag_(c)) +s=a.$2(this,q) +if(r)this.YU() +return s}, +avb(a,b,c){var s,r=this +if(b!=null)r.c.push(new A.XZ(new A.j(-b.a,-b.b))) +else{c.toString +c=A.Kl(A.cyw(c)) +c.toString +r.c.push(new A.ag_(c))}s=a.$1(r) +r.YU() +return s}, +bmm(a,b){return this.avb(a,null,b)}, +bml(a,b){return this.avb(a,b,null)}} +A.y7.prototype={ +k(a){return"#"+A.bq(this.a)+"@"+this.c.k(0)}} +A.hf.prototype={ +k(a){return"offset="+this.a.k(0)}} +A.fa.prototype={} +A.XE.prototype={ +H(){return"_IntrinsicDimension."+this.b}} +A.afw.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.afw&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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.J.prototype={ +fo(a){if(!(a.b instanceof A.hf))a.b=new A.hf(B.h)}, +aw(a,b,c){var s=this.fx +if(s==null)s=this.fx=A.N(t.s7,t.i) +return s.cP(0,new A.afw(a,b),new A.bAr(c,b))}, +bo(a){return 0}, +bb(a){return 0}, +bh(a){return 0}, +bi(a){return 0}, +jr(a){var s=this.fy +if(s==null)s=this.fy=A.N(t.k,t.FW) +return s.cP(0,a,new A.bAt(this,a))}, +cX(a){return B.A}, +gu(a){var s=this.id +return s==null?A.C(A.a0("RenderBox was not laid out: "+A.I(this).k(0)+"#"+A.bq(this))):s}, +gvf(){var s=this.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}, +x8(a,b){var s=null +try{s=this.pK(a)}finally{}if(s==null&&!b)return this.gu(0).b +return s}, +tc(a){return this.x8(a,!1)}, +pK(a){var s=this.k1 +if(s==null)s=this.k1=A.N(t.W7,t.PM) +return s.cP(0,a,new A.bAs(this,a))}, +il(a){return null}, +gZ(){return t.k.a(A.H.prototype.gZ.call(this))}, +aYq(){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.V(0) +q=r.fx +if(q!=null)q.V(0) +q=r.fy +if(q!=null)q.V(0) +return!0}return!1}, +a9(){var s=this +if(s.aYq()&&s.gbR(s) instanceof A.H){s.NO() +return}s.a0V()}, +d_(a,b){var s,r=this +if(r.id!=null)if(!a.l(0,r.gZ())){s=r.k1 +s=s!=null&&s.a!==0}else s=!1 +else s=!1 +if(s){s=r.k1 +if(s!=null)s.V(0)}r.aPM(a,b)}, +j1(a){return this.d_(a,!1)}, +Hp(){this.id=this.cX(this.gZ())}, +bJ(){}, +es(a,b){var s=this +if(s.id.p(0,b))if(s.ej(a,b)||s.kw(b)){a.B(0,new A.y7(b,s)) +return!0}return!1}, +kw(a){return!1}, +ej(a,b){return!1}, +hh(a,b){var s,r=a.b +r.toString +s=t.r.a(r).a +b.ba(0,s.a,s.b)}, +hZ(a){var s,r,q,p,o,n=this.cf(0,null) +if(n.l7(n)===0)return B.h +s=new A.dD(new Float64Array(3)) +s.j7(0,0,1) +r=new A.dD(new Float64Array(3)) +r.j7(0,0,0) +q=n.YR(r) +r=new A.dD(new Float64Array(3)) +r.j7(0,0,1) +p=n.YR(r).W(0,q) +r=new A.dD(new Float64Array(3)) +r.j7(a.a,a.b,0) +o=n.YR(r) +r=o.W(0,p.ti(s.ei(o)/s.ei(p))).a +return new A.j(r[0],r[1])}, +gpA(){var s=this.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}, +n8(a,b){this.aPL(a,b)}} +A.bAr.prototype={ +$0(){return this.a.$1(this.b)}, +$S:204} +A.bAt.prototype={ +$0(){return this.a.cX(this.b)}, +$S:184} +A.bAs.prototype={ +$0(){return this.a.il(this.b)}, +$S:591} +A.bD.prototype={ +Mm(a){var s,r,q,p=this.Y$ +for(s=A.z(this).h("bD.1?");p!=null;){r=s.a(p.b) +q=p.pK(a) +if(q!=null)return q+r.a.b +p=r.a7$}return null}, +yH(a){var s,r,q,p,o=this.Y$ +for(s=A.z(this).h("bD.1"),r=null;o!=null;){q=o.b +q.toString +s.a(q) +p=o.pK(a) +if(p!=null){p+=q.a.b +r=r!=null?Math.min(r,p):p}o=q.a7$}return r}, +ol(a,b){var s,r,q={},p=q.a=this.d7$ +for(s=A.z(this).h("bD.1");p!=null;p=r){p=p.b +p.toString +s.a(p) +if(a.l5(new A.bAq(q,b,p),p.a,b))return!0 +r=p.dJ$ +q.a=r}return!1}, +nL(a,b){var s,r,q,p,o,n=this.Y$ +for(s=A.z(this).h("bD.1"),r=b.a,q=b.b;n!=null;){p=n.b +p.toString +s.a(p) +o=p.a +a.eM(n,new A.j(o.a+r,o.b+q)) +n=p.a7$}}, +aIu(){var s,r,q=A.z(this),p=A.a([],q.h("D")),o=this.Y$ +for(s=q.h("bD.1"),q=q.h("bD.0");o!=null;){r=o.b +r.toString +s.a(r) +p.push(q.a(o)) +o=r.a7$}return p}} +A.bAq.prototype={ +$2(a,b){return this.a.a.es(a,b)}, +$S:19} +A.adB.prototype={ +ar(a){this.E3(0)}} +A.i_.prototype={ +k(a){return this.J9(0)+"; id="+A.r(this.e)}} +A.btD.prototype={ +j2(a,b){var s=this.b.i(0,a) +s.d_(b,!0) +return s.gu(0)}, +li(a,b){var s=this.b.i(0,a).b +s.toString +t.Wz.a(s).a=b}, +aXK(a,b){var s,r,q,p,o,n,m=this,l=m.b +try{m.b=A.N(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.n(0,o,q) +n=s.a7$}m.Ho(a)}finally{m.b=l}}, +k(a){return"MultiChildLayoutDelegate"}} +A.a7Y.prototype={ +fo(a){if(!(a.b instanceof A.i_))a.b=new A.i_(null,null,B.h)}, +sdW(a){var s=this,r=s.D +if(r===a)return +if(A.I(a)!==A.I(r)||a.nt(r))s.a9() +s.D=a +if(s.y!=null){r=r.a +if(r!=null)r.O(0,s.gnb()) +r=a.a +if(r!=null)r.a3(0,s.gnb())}}, +aA(a){var s +this.aRX(a) +s=this.D.a +if(s!=null)s.a3(0,this.gnb())}, +ar(a){var s=this.D.a +if(s!=null)s.O(0,this.gnb()) +this.aRY(0)}, +bo(a){var s=A.mT(a,1/0),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bb(a){var s=A.mT(a,1/0),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bh(a){var s=A.mT(1/0,a),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +bi(a){var s=A.mT(1/0,a),r=s.bd(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +cX(a){return a.bd(new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d)))}, +bJ(){var s=this,r=t.k.a(A.H.prototype.gZ.call(s)) +s.id=r.bd(new A.V(A.Z(1/0,r.a,r.b),A.Z(1/0,r.c,r.d))) +s.D.aXK(s.gu(0),s.Y$)}, +aI(a,b){this.nL(a,b)}, +ej(a,b){return this.ol(a,b)}} +A.aho.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.Wz;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.Wz;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aUO.prototype={} +A.arY.prototype={ +a3(a,b){var s=this.a +return s==null?null:s.a3(0,b)}, +O(a,b){var s=this.a +return s==null?null:s.O(0,b)}, +gDH(){return null}, +IS(a){return this.hC(a)}, +Cp(a){return null}, +k(a){var s=A.bq(this),r=this.a +r=r==null?null:r.k(0) +if(r==null)r="" +return"#"+s+"("+r+")"}} +A.a7Z.prototype={ +sCR(a){var s=this.G +if(s==a)return +this.G=a +this.akJ(a,s)}, +sazY(a){var s=this.ac +if(s==a)return +this.ac=a +this.akJ(a,s)}, +akJ(a,b){var s=this,r=a==null +if(r)s.aV() +else if(b==null||A.I(a)!==A.I(b)||a.hC(b))s.aV() +if(s.y!=null){if(b!=null)b.O(0,s.gfk()) +if(!r)a.a3(0,s.gfk())}if(r){if(s.y!=null)s.cs()}else if(b==null||A.I(a)!==A.I(b)||a.IS(b))s.cs()}, +sqy(a){if(this.aS.l(0,a))return +this.aS=a +this.a9()}, +bo(a){var s +if(this.k1$==null){s=this.aS.a +return isFinite(s)?s:0}return this.a10(a)}, +bb(a){var s +if(this.k1$==null){s=this.aS.a +return isFinite(s)?s:0}return this.QT(a)}, +bh(a){var s +if(this.k1$==null){s=this.aS.b +return isFinite(s)?s:0}return this.a1_(a)}, +bi(a){var s +if(this.k1$==null){s=this.aS.b +return isFinite(s)?s:0}return this.a0Z(a)}, +aA(a){var s,r=this +r.Av(a) +s=r.G +if(s!=null)s.a3(0,r.gfk()) +s=r.ac +if(s!=null)s.a3(0,r.gfk())}, +ar(a){var s=this,r=s.G +if(r!=null)r.O(0,s.gfk()) +r=s.ac +if(r!=null)r.O(0,s.gfk()) +s.vm(0)}, +ej(a,b){var s=this.ac +if(s!=null){s=s.Cp(b) +s=s===!0}else s=!1 +if(s)return!0 +return this.Jf(a,b)}, +kw(a){var s=this.G +if(s!=null){s=s.Cp(a) +s=s!==!1}else s=!1 +return s}, +bJ(){this.E6() +this.cs()}, +LS(a){return a.bd(this.aS)}, +apD(a,b,c){A.aF("debugPreviousCanvasSaveCount") +a.d6(0) +if(!b.l(0,B.h))a.ba(0,b.a,b.b) +c.aI(a,this.gu(0)) +a.de(0)}, +aI(a,b){var s,r,q=this +if(q.G!=null){s=a.gbY(a) +r=q.G +r.toString +q.apD(s,b,r) +q.arR(a)}q.o6(a,b) +if(q.ac!=null){s=a.gbY(a) +r=q.ac +r.toString +q.apD(s,b,r) +q.arR(a)}}, +arR(a){}, +ji(a){var s,r=this +r.kH(a) +s=r.G +r.eY=s==null?null:s.gDH() +s=r.ac +r.i9=s==null?null:s.gDH() +a.a=!1}, +yh(a,b,c){var s,r,q,p,o=this +o.jY=A.cLA(o.jY,B.IU) +o.hT=A.cLA(o.hT,B.IU) +s=o.jY +r=s!=null&&!s.gad(s) +s=o.hT +q=s!=null&&!s.gad(s) +s=A.a([],t.QF) +if(r){p=o.jY +p.toString +B.b.L(s,p)}B.b.L(s,c) +if(q){p=o.hT +p.toString +B.b.L(s,p)}o.a0U(a,b,s)}, +yp(){this.QR() +this.hT=this.jY=null}} +A.Qm.prototype={} +A.uK.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.uK&&b.a.l(0,s.a)&&b.b==s.b}, +k(a){var s=this +switch(s.b){case B.j:return s.a.k(0)+"-ltr" +case B.ae:return s.a.k(0)+"-rtl" +case null:case void 0:return s.a.k(0)}}, +gv(a){return A.ad(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.bOd.prototype={ +gfc(){var s=this +if(!s.f)return!1 +if(s.e.bk.BK()!==s.d)s.f=!1 +return s.f}, +amE(a){var s,r,q=this,p=q.r,o=p.i(0,a) +if(o!=null)return o +s=new A.j(q.a.a,q.d[a].gu2()) +r=new A.aY(s,q.e.bk.kY(s),t.tO) +p.n(0,a,r) +return r}, +gK(a){return this.c}, +t(){var s,r=this,q=r.b+1 +if(q>=r.d.length)return!1 +s=r.amE(q);++r.b +r.a=s.a +r.c=s.b +return!0}, +aCg(){var s,r=this,q=r.b +if(q<=0)return!1 +s=r.amE(q-1);--r.b +r.a=s.a +r.c=s.b +return!0}, +bBf(a){var s,r=this,q=r.a +if(a>=0){for(s=q.b+a;r.a.bs;)if(!r.aCg())break +return!q.l(0,r.a)}} +A.Lw.prototype={ +m(){var s,r,q=this,p=null +q.Gp.sb9(0,p) +s=q.D +if(s!=null)s.ch.sb9(0,p) +q.D=null +s=q.N +if(s!=null)s.ch.sb9(0,p) +q.N=null +q.azk.sb9(0,p) +s=q.aW +if(s!=null){s.k3$=$.ae() +s.k2$=0}s=q.aT +if(s!=null){s.k3$=$.ae() +s.k2$=0}s=q.e8 +r=s.k3$=$.ae() +s.k2$=0 +s=q.hS +s.k3$=r +s.k2$=0 +s=q.U +s.k3$=r +s.k2$=0 +s=q.aJ +s.k3$=r +s.k2$=0 +s=q.gl1() +s.k3$=r +s.k2$=0 +q.bk.m() +if(q.eX){s=q.dr +s.k3$=r +s.k2$=0 +q.eX=!1}q.ig()}, +atK(a){var s,r=this,q=r.gaXv(),p=r.D +if(p==null){s=A.cOQ(q) +r.lB(s) +r.D=s}else p.sCR(q) +r.a4=a}, +atT(a){var s,r=this,q=r.gaXw(),p=r.N +if(p==null){s=A.cOQ(q) +r.lB(s) +r.N=s}else p.sCR(q) +r.ag=a}, +gl1(){var s,r,q=this.aq +if(q===$){s=$.ar().aP() +r=$.ae() +this.aq!==$&&A.a_() +q=this.aq=new A.adi(s,B.h,r)}return q}, +gaXv(){var s=this,r=s.aW +if(r==null){r=A.a([],t.xT) +if(s.aS)r.push(s.gl1()) +r=s.aW=new A.X3(r,$.ae())}return r}, +gaXw(){var s=this,r=s.aT +if(r==null){r=A.a([s.U,s.aJ],t.xT) +if(!s.aS)r.push(s.gl1()) +r=s.aT=new A.X3(r,$.ae())}return r}, +sOR(a){return}, +sDa(a){var s=this.bk +if(s.ax===a)return +s.sDa(a) +this.uF()}, +sqi(a,b){if(this.eq===b)return +this.eq=b +this.uF()}, +sbBC(a){if(this.f1===a)return +this.f1=a +this.a9()}, +sbBB(a){var s=this +if(s.ez===a)return +s.ez=a +s.er=null +s.cs()}, +Iv(a){var s=this.bk,r=s.b.a.a.a_F(a) +if(this.ez)return A.eJ(B.E,0,s.gpC().length,!1) +return A.eJ(B.E,r.a,r.b,!1)}, +bkZ(a){var s,r,q,p,o,n,m=this +if(!m.dF.gfc()){m.e8.sj(0,!1) +m.hS.sj(0,!1) +return}s=m.gu(0) +r=new A.W(0,0,0+s.a,0+s.b) +s=m.bk +q=m.dF +p=m.rv +p===$&&A.b() +o=s.v8(new A.cC(q.a,q.e),p) +m.e8.sj(0,r.fH(0.5).p(0,o.S(0,a))) +p=m.dF +n=s.v8(new A.cC(p.b,p.e),m.rv) +m.hS.sj(0,r.fH(0.5).p(0,n.S(0,a)))}, +y5(a,b){var s,r +if(a.gfc()){s=this.dA.a.c.a.a.length +a=a.M_(Math.min(a.c,s),Math.min(a.d,s))}r=this.dA.a.c.a.oj(a) +this.dA.no(r,b)}, +aV(){this.ahj() +var s=this.D +if(s!=null)s.aV() +s=this.N +if(s!=null)s.aV()}, +uF(){this.ck=this.aU=null +this.a9()}, +Ea(){var s=this +s.QQ() +s.bk.a9() +s.ck=s.aU=null}, +sce(a,b){var s=this,r=s.bk +if(J.q(r.f,b))return +s.os=null +r.sce(0,b) +s.Go=s.dP=s.er=null +s.uF() +s.cs()}, +sD9(a,b){var s=this.bk +if(s.w===b)return +s.sD9(0,b) +this.uF()}, +sd5(a){var s=this.bk +if(s.x===a)return +s.sd5(a) +this.uF() +this.cs()}, +sCG(a,b){var s=this.bk +if(J.q(s.Q,b))return +s.sCG(0,b) +this.uF()}, +sts(a){var s=this.bk +if(J.q(s.at,a))return +s.sts(a) +this.uF()}, +saM7(a){var s=this,r=s.dr +if(r===a)return +if(s.y!=null)r.O(0,s.gTR()) +if(s.eX){r=s.dr +r.k3$=$.ae() +r.k2$=0 +s.eX=!1}s.dr=a +if(s.y!=null){s.gl1().sa0j(s.dr.a) +s.dr.a3(0,s.gTR())}}, +bia(){this.gl1().sa0j(this.dr.a)}, +se2(a){if(this.dQ===a)return +this.dQ=a +this.cs()}, +sbwE(a){if(this.fA===a)return +this.fA=a +this.a9()}, +sad7(a,b){if(this.iQ===b)return +this.iQ=b +this.cs()}, +sCI(a){var s,r=this +if(r.eT==a)return +r.eT=a +s=a===1?1:null +r.bk.sCI(s) +r.uF()}, +sbBa(a){return}, +saaa(a){return}, +sdZ(a){var s=this.bk +if(s.y.l(0,a))return +s.sdZ(a) +this.uF()}, +sDF(a){var s=this +if(s.dF.l(0,a))return +s.dF=a +s.aJ.sXo(a) +s.aV() +s.cs()}, +sfl(a,b){var s=this,r=s.hi +if(r===b)return +if(s.y!=null)r.O(0,s.gfk()) +s.hi=b +if(s.y!=null)b.a3(0,s.gfk()) +s.a9()}, +sbt0(a){if(this.G===a)return +this.G=a +this.a9()}, +sbt_(a){return}, +sbDq(a){var s=this +if(s.aS===a)return +s.aS=a +s.aT=s.aW=null +s.atK(s.a4) +s.atT(s.ag)}, +saN8(a){if(this.cZ===a)return +this.cZ=a +this.aV()}, +sbvg(a){if(this.en===a)return +this.en=a +this.aV()}, +sbv3(a){var s=this +if(s.hT===a)return +s.hT=a +s.uF() +s.cs()}, +gkj(){var s=this.hT +return s}, +tb(a){var s,r +this.r8() +s=this.bk.tb(a) +r=A.X(s).h("O<1,kr>") +return A.R(new A.O(s,new A.bAz(this),r),!0,r.h("aa.E"))}, +ji(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this +d.kH(a) +s=d.bk +r=s.f +r.toString +q=A.a([],t.O_) +r.VG(q) +d.hw=q +if(B.b.ef(q,new A.bAy())&&A.bL()!==B.cL){a.c=a.a=!0 +return}r=d.er +if(r==null)if(d.ez){r=new A.et(B.c.X(d.f1,s.gpC().length),B.aS) +d.er=r}else{p=new A.bu("") +o=A.a([],t.oU) +for(r=d.hw,n=r.length,m=0,l=0,k="";lh){d=c1[h].dy +d=d!=null&&d.p(0,new A.zK(i,b8))}else d=!1 +if(!d)break +b=c1[h] +d=s.b +d.toString +m.a(d) +b6.push(b);++h}b8=s.b +b8.toString +s=n.a(b8).a7$;++i}else{a=b7.tb(new A.mC(j,e,B.E,!1,c,d)) +if(a.length===0)continue +d=B.b.ga2(a) +a0=new A.W(d.a,d.b,d.c,d.d) +a1=B.b.ga2(a).e +for(d=A.X(a),c=d.h("b3<1>"),a2=new A.b3(a,1,b5,c),a2.dD(a,1,b5,d.c),a2=new A.bj(a2,a2.gA(0),c.h("bj")),c=c.h("aa.E");a2.t();){d=a2.d +if(d==null)d=c.a(d) +a0=a0.n1(new A.W(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.gZ.call(b4)).b) +a2=Math.min(a0.d-a2,o.a(A.H.prototype.gZ.call(b4)).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.W(a4,a5,d,a2) +a7=A.uo() +a8=k+1 +a7.k2=new A.Eq(k,b5) +a7.e=!0 +a7.bO=l +a3=f.b +b8=a3==null?b8:a3 +a7.rx=new A.et(b8,f.f) +a9=f.c +if(a9!=null)if(a9 instanceof A.mB){b8=a9.bU +if(b8!=null){a7.kJ(B.eq,b8) +a7.w=b8 +a7.dn(B.lQ,!0)}}else if(a9 instanceof A.q4){b8=a9.r +if(b8!=null){a7.kJ(B.eq,b8) +a7.w=b8 +a7.dn(B.lQ,!0)}}else if(a9 instanceof A.mh){b8=a9.p2 +if(b8!=null)a7.kJ(B.pZ,b8)}b8=b9.r +if(b8!=null){b0=b8.jZ(a6) +if(b0.a>=b0.c||b0.b>=b0.d)b8=!(a4>=d||a5>=a2) +else b8=!1 +a7.dn(B.q2,b8)}b1=A.aF("newChild") +b8=b4.jn +d=b8==null?b5:b8.a!==0 +if(d===!0){b8.toString +b2=new A.bR(b8,A.z(b8).h("bR<1>")).gaz(0) +if(!b2.t())A.C(A.dB()) +b8=b8.F(0,b2.gK(0)) +b8.toString +if(b1.b!==b1)A.C(A.kY(b1.a)) +b1.b=b8}else{b3=new A.qR() +b8=A.M4(b3,b4.aZy(b3)) +if(b1.b!==b1)A.C(A.kY(b1.a)) +b1.b=b8}if(b8===b1)A.C(A.h6(b1.a)) +J.d1v(b8,a7) +if(!b8.e.l(0,a6)){b8.e=a6 +b8.oW()}b8=b1.b +if(b8===b1)A.C(A.h6(b1.a)) +d=b8.a +d.toString +r.n(0,d,b8) +b8=b1.b +if(b8===b1)A.C(A.h6(b1.a)) +b6.push(b8) +k=a8 +l=a1}}b4.jn=r +b9.v3(0,b6,c0)}, +aZy(a){return new A.bAv(this,a)}, +b6m(a){this.y5(a,B.bj)}, +b5_(a){var s=this,r=s.bk.aeP(s.dF.d) +if(r==null)return +s.y5(A.eJ(B.E,!a?r:s.dF.c,r,!1),B.bj)}, +b4W(a){var s=this,r=s.bk.aeQ(s.dF.d) +if(r==null)return +s.y5(A.eJ(B.E,!a?r:s.dF.c,r,!1),B.bj)}, +b51(a){var s,r=this,q=r.dF.giY(),p=r.amn(r.bk.b.a.a.va(q).b) +if(p==null)return +s=a?r.dF.c:p.a +r.y5(A.eJ(B.E,s,p.a,!1),B.bj)}, +b4Y(a){var s,r=this,q=r.dF.giY(),p=r.ams(r.bk.b.a.a.va(q).a-1) +if(p==null)return +s=a?r.dF.c:p.a +r.y5(A.eJ(B.E,s,p.a,!1),B.bj)}, +amn(a){var s,r,q +for(s=this.bk;!0;){r=s.b.a.a.va(new A.cC(a,B.E)) +q=r.a +if(!(q>=0&&r.b>=0)||q===r.b)return null +if(!this.apq(r))return r +a=r.b}}, +ams(a){var s,r,q +for(s=this.bk;a>=0;){r=s.b.a.a.va(new A.cC(a,B.E)) +q=r.a +if(!(q>=0&&r.b>=0)||q===r.b)return null +if(!this.apq(r))return r +a=q-1}return null}, +apq(a){var s,r,q,p +for(s=a.a,r=a.b,q=this.bk;s=m.gpC().length)return A.MG(new A.cC(m.gpC().length,B.by)) +if(o.ez)return A.eJ(B.E,0,m.gpC().length,!1) +s=m.b.a.a.va(a) +switch(a.b.a){case 0:r=n-1 +break +case 1:r=n +break +default:r=null}if(r>0&&A.cMM(m.gpC().charCodeAt(r))){m=s.a +q=o.ams(m) +switch(A.bL().a){case 2:if(q==null){p=o.amn(m) +if(p==null)return A.oK(B.E,n) +return A.eJ(B.E,n,p.b,!1)}return A.eJ(B.E,q.a,n,!1) +case 0:if(o.iQ){if(q==null)return A.eJ(B.E,n,n+1,!1) +return A.eJ(B.E,q.a,n,!1)}break +case 1:case 4:case 3:case 5:break}}return A.eJ(B.E,s.a,s.b,!1)}, +Ko(a,b){var s=this,r=Math.max(0,a-(1+s.G)),q=Math.min(b,r),p=s.eT!==1?r:1/0,o=s.fA?r:q +s.bk.ND(p,o) +s.ck=b +s.aU=a}, +aoh(a){return this.Ko(a,0)}, +aog(){return this.Ko(1/0,0)}, +r8(){var s=t.k,r=s.a(A.H.prototype.gZ.call(this)) +this.Ko(s.a(A.H.prototype.gZ.call(this)).b,r.a)}, +aYK(){var s,r,q=this +switch(A.bL().a){case 2:case 4:s=q.G +r=q.bk.giq() +q.rv=new A.W(0,0,s,0+(r+2)) +break +case 0:case 1:case 3:case 5:s=q.G +r=q.bk.giq() +q.rv=new A.W(0,2,s,2+(r-4)) +break}}, +b0d(){var s=this.bk.f +s=s==null?null:s.d0(new A.bAu()) +return s!==!1}, +gRE(){var s=this.Go +return s==null?this.Go=this.b0d():s}, +cX(a){var s,r,q,p,o,n=this +if(!n.gRE())return B.A +s=n.bk +r=a.b +s.qX(n.uD(r,A.k0())) +q=a.a +n.Ko(r,q) +if(n.fA)p=r +else{s=s.b +o=s.b +s=s.a.a +s.gdK(s) +p=A.Z(o+(1+n.G),q,r)}return new A.V(p,A.Z(n.a58(r),a.c,a.d))}, +bJ(){var s,r,q,p,o,n,m=this,l=t.k.a(A.H.prototype.gZ.call(m)),k=l.b,j=m.uD(k,A.k1()) +m.Gn=j +s=m.bk +s.qX(j) +m.r8() +j=s.gaAY() +j.toString +m.aDf(j) +m.aYK() +j=s.b +r=j.b +j=j.a.a +j=j.gdK(j) +if(m.fA)q=k +else{s=s.b +p=s.b +s=s.a.a +s.gdK(s) +q=A.Z(p+(1+m.G),l.a,k)}m.id=new A.V(q,A.Z(m.a58(k),l.c,l.d)) +o=new A.V(r+(1+m.G),j) +n=A.y6(o) +j=m.D +if(j!=null)j.j1(n) +j=m.N +if(j!=null)j.j1(n) +m.jm=m.b2k(o) +m.hi.vQ(m.gb0l()) +m.hi.ri(0,m.jm)}, +awA(a,b){var s,r,q,p,o=this,n=o.gu(0),m=o.bk,l=m.b.a.a,k=Math.min(n.b,l.gdK(l))-m.giq()+5,j=Math.min(o.gu(0).a,m.b.b)+4,i=new A.W(-4,-4,j,k) +if(b!=null)o.aag=b +if(!o.aag)return A.cLB(a,i) +n=o.aaf +s=n!=null?a.W(0,n):B.h +if(o.aah&&s.a>0){o.uk=new A.j(a.a- -4,o.uk.b) +o.aah=!1}else if(o.Wt&&s.a<0){o.uk=new A.j(a.a-j,o.uk.b) +o.Wt=!1}if(o.Wu&&s.b>0){o.uk=new A.j(o.uk.a,a.b- -4) +o.Wu=!1}else if(o.Wv&&s.b<0){o.uk=new A.j(o.uk.a,a.b-k) +o.Wv=!1}n=o.uk +r=a.a-n.a +q=a.b-n.b +p=A.cLB(new A.j(r,q),i) +if(r<-4&&s.a<0)o.aah=!0 +else if(r>j&&s.a>0)o.Wt=!0 +if(q<-4&&s.b<0)o.Wu=!0 +else if(q>k&&s.b>0)o.Wv=!0 +o.aaf=a +return p}, +bpG(a){return this.awA(a,null)}, +afC(a,b,c,d){var s,r,q=this,p=a===B.nw +if(p){q.uk=B.h +q.aaf=null +q.aag=!0 +q.Wt=q.Wu=q.Wv=!1}p=!p +q.i9=p +q.azj=d +if(p){q.jY=c +if(d!=null){p=A.vO(B.D3,B.L,d) +p.toString +s=p}else s=B.D3 +p=q.gl1() +r=q.rv +r===$&&A.b() +p.sazP(s.Ng(r).eD(b))}else q.gl1().sazP(null) +q.gl1().w=q.azj==null}, +a0c(a,b,c){return this.afC(a,b,c,null)}, +b8y(a,b){var s,r,q,p,o,n=this.bk.v8(a,B.a8) +for(s=b.length,r=n.b,q=0;p=b.length,qr)return new A.aY(J.cEx(o),new A.j(n.a,o.gu2()),t.DC)}s=Math.max(0,p-1) +r=p!==0?B.b.gP(b).gu2()+B.b.gP(b).gMr():0 +return new A.aY(s,new A.j(n.a,r),t.DC)}, +al6(a,b){var s,r,q=this,p=b.S(0,q.glw()),o=q.i9 +if(!o)q.bkZ(p) +s=q.D +r=q.N +if(r!=null)a.eM(r,b) +q.bk.aI(a.gbY(a),p) +q.aD_(a,p) +if(s!=null)a.eM(s,b)}, +hh(a,b){if(a===this.D||a===this.N)return +this.ayr(a,b)}, +aI(a,b){var s,r,q,p,o,n,m,l=this +l.r8() +s=(l.jm>0||!l.glw().l(0,B.h))&&l.ha!==B.i +r=l.azk +if(s){s=l.cx +s===$&&A.b() +q=l.gu(0) +r.sb9(0,a.nV(s,b,new A.W(0,0,0+q.a,0+q.b),l.gb0k(),l.ha,r.a))}else{r.sb9(0,null) +l.al6(a,b)}p=l.dF +s=p.gfc() +if(s){s=l.a_z(p) +o=s[0].a +r=A.Z(o.a,0,l.gu(0).a) +q=A.Z(o.b,0,l.gu(0).b) +n=l.Gp +n.sb9(0,A.awL(l.cZ,new A.j(r,q).S(0,b))) +n=n.a +n.toString +a.t_(n,A.H.prototype.gk0.call(l),B.h) +if(s.length===2){m=s[1].a +s=A.Z(m.a,0,l.gu(0).a) +r=A.Z(m.b,0,l.gu(0).b) +a.t_(A.awL(l.en,new A.j(s,r).S(0,b)),A.H.prototype.gk0.call(l),B.h)}}}, +rq(a){var s,r=this +switch(r.ha.a){case 0:return null +case 1:case 2:case 3:if(r.jm>0||!r.glw().l(0,B.h)){s=r.gu(0) +s=new A.W(0,0,0+s.a,0+s.b)}else s=null +return s}}} +A.bAz.prototype={ +$1(a){var s=this.a +return new A.kr(a.a+s.glw().a,a.b+s.glw().b,a.c+s.glw().a,a.d+s.glw().b,a.e)}, +$S:187} +A.bAy.prototype={ +$1(a){return a.c!=null}, +$S:593} +A.bAv.prototype={ +$0(){var s=this.a,r=s.jn.i(0,this.b) +r.toString +s.oM(s,r.e)}, +$S:0} +A.bAA.prototype={ +$2(a,b){var s=a==null?null:a.n1(new A.W(b.a,b.b,b.c,b.d)) +return s==null?new A.W(b.a,b.b,b.c,b.d):s}, +$S:594} +A.bAx.prototype={ +$2(a,b){return new A.V(a.aw(B.ad,1/0,a.gbG()),0)}, +$S:103} +A.bAw.prototype={ +$2(a,b){return new A.V(a.aw(B.aj,1/0,a.gbL()),0)}, +$S:103} +A.bAu.prototype={ +$1(a){var s,r +if(a instanceof A.kt){s=a.b +$label0$0:{if(B.fd===s||B.px===s||B.py===s){r=!1 +break $label0$0}if(B.lE===s||B.i_===s||B.cj===s){r=!0 +break $label0$0}throw A.d(A.iB(u.P))}}else r=!0 +return r}, +$S:124} +A.aUP.prototype={ +gbR(a){return t.CA.a(A.H.prototype.gbR.call(this,0))}, +giD(){return!0}, +gka(){return!0}, +sCR(a){var s,r=this,q=r.D +if(a===q)return +r.D=a +s=a.hC(q) +if(s)r.aV() +if(r.y!=null){s=r.gfk() +q.O(0,s) +a.a3(0,s)}}, +aI(a,b){var s=t.CA.a(A.H.prototype.gbR.call(this,0)),r=this.D +if(s!=null){s.r8() +r.jJ(a.gbY(a),this.gu(0),s)}}, +aA(a){this.ea(a) +this.D.a3(0,this.gfk())}, +ar(a){this.D.O(0,this.gfk()) +this.e5(0)}, +cX(a){return new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d))}} +A.EW.prototype={} +A.ajs.prototype={ +sXn(a){if(J.q(a,this.w))return +this.w=a +this.ab()}, +sXo(a){if(J.q(a,this.x))return +this.x=a +this.ab()}, +safr(a){if(this.y===a)return +this.y=a +this.ab()}, +safs(a){if(this.z===a)return +this.z=a +this.ab()}, +jJ(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.sa6(0,h) +r=c.bk +q=r.Dp(A.eJ(B.E,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||n==null||!k.r)return +r=A.jq(s,B.WP) +m=k.y +if(m===$){l=$.ar().aP() +k.y!==$&&A.a_() +k.y=l +m=l}m.sa6(0,n) +a.dh(r,m)}, +hC(a){var s=this +if(s===a)return!1 +return!(a instanceof A.adi)||a.r!==s.r||a.w!==s.w||!J.q(a.z,s.z)||!J.q(a.Q,s.Q)||!a.as.l(0,s.as)||!J.q(a.at,s.at)||!J.q(a.ax,s.ax)}} +A.X3.prototype={ +a3(a,b){var s,r,q +for(s=this.r,r=s.length,q=0;q")) +s=this.r +p=A.X(s) +o=new J.cP(s,s.length,p.h("cP<1>")) +s=p.c +r=r.c +while(!0){if(!(q.t()&&o.t()))break +p=o.d +if(p==null)p=s.a(p) +n=q.d +if(p.hC(n==null?r.a(n):n))return!0}return!1}} +A.ahr.prototype={ +aA(a){this.ea(a) +$.jo.eS$.a.B(0,this.gpZ())}, +ar(a){$.jo.eS$.a.F(0,this.gpZ()) +this.e5(0)}} +A.ahs.prototype={ +aA(a){var s,r,q +this.aRZ(a) +s=this.Y$ +for(r=t.ot;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.aS_(0) +s=this.Y$ +for(r=t.ot;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aUQ.prototype={} +A.a80.prototype={ +aV6(a){var s,r,q,p,o=this +try{r=o.D +if(r!==""){q=$.cXw() +s=$.ar().Mb(q) +s.CX($.cXx()) +s.Fk(r) +r=s.dN() +o.N!==$&&A.ck() +o.N=r}else{o.N!==$&&A.ck() +o.N=null}}catch(p){}}, +bb(a){return 1e5}, +bi(a){return 1e5}, +gka(){return!0}, +kw(a){return!0}, +cX(a){return a.bd(B.bmd)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j=this +try{p=a.gbY(a) +o=j.gu(0) +n=b.a +m=b.b +l=$.ar().aP() +l.sa6(0,$.cXv()) +p.fs(new A.W(n,m,n+o.a,m+o.b),l) +p=j.N +p===$&&A.b() +if(p!=null){s=j.gu(0).a +r=0 +q=0 +if(s>328){s-=128 +r+=64}p.j1(new A.Ez(s)) +o=j.gu(0) +if(o.b>96+p.gdK(p)+12)q+=96 +o=a.gbY(a) +o.w8(p,b.S(0,new A.j(r,q)))}}catch(k){}}} +A.aua.prototype={ +H(){return"FlexFit."+this.b}} +A.fr.prototype={ +k(a){return this.J9(0)+"; flex="+A.r(this.e)+"; fit="+A.r(this.f)}} +A.axh.prototype={ +H(){return"MainAxisSize."+this.b}} +A.E6.prototype={ +H(){return"MainAxisAlignment."+this.b}} +A.I0.prototype={ +H(){return"CrossAxisAlignment."+this.b}} +A.Lx.prototype={ +sWa(a,b){if(this.D!==b){this.D=b +this.a9()}}, +saC0(a){if(this.N!==a){this.N=a +this.a9()}}, +saC1(a){if(this.a4!==a){this.a4=a +this.a9()}}, +sVW(a){if(this.ag!==a){this.ag=a +this.a9()}}, +sd5(a){if(this.aq!=a){this.aq=a +this.a9()}}, +saGd(a){if(this.aJ!==a){this.aJ=a +this.a9()}}, +sHP(a,b){if(this.U!=b){this.U=b +this.a9()}}, +fo(a){if(!(a.b instanceof A.fr))a.b=new A.fr(null,null,B.h)}, +RP(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +if(g.ag===B.hr)return 0 +s=g.D +r=g.Y$ +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).a7$}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.aF("mainSize") +i=A.aF("crossSize") +if(m===0){switch(g.D.a){case 0:n=r.aw(B.aj,1/0,r.gbL()) +if(j.b!==j)A.C(A.kY(j.a)) +j.b=n +n=a.$2(r,n) +if(i.b!==i)A.C(A.kY(i.a)) +i.b=n +break +case 1:n=r.aw(B.ay,1/0,r.gbZ()) +if(j.b!==j)A.C(A.kY(j.a)) +j.b=n +n=a.$2(r,n) +if(i.b!==i)A.C(A.kY(i.a)) +i.b=n +break}n=j.b +if(n===j)A.C(A.h6(j.a)) +p+=n +n=i.b +if(n===i)A.C(A.h6(i.a)) +k=Math.max(k,A.fP(n))}n=r.b +n.toString +r=s.a(n).a7$}h=Math.max(0,(b-p)/q) +r=g.Y$ +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.fP(a.$2(r,h*m))) +n=r.b +n.toString +r=s.a(n).a7$}return k}}, +bo(a){return this.RP(new A.bAJ(),a,B.a_)}, +bb(a){return this.RP(new A.bAF(),a,B.a_)}, +bh(a){return this.RP(new A.bAH(),a,B.v)}, +bi(a){return this.RP(new A.bAD(),a,B.v)}, +il(a){if(this.D===B.a_)return this.yH(a) +return this.Mm(a)}, +RO(a){switch(this.D.a){case 0:return a.b +case 1:return a.a}}, +RQ(a){switch(this.D.a){case 0:return a.a +case 1:return a.b}}, +cX(a){var s +if(this.ag===B.hr)return B.A +s=this.alK(a,A.k0()) +switch(this.D.a){case 0:return a.bd(new A.V(s.a,s.b)) +case 1:return a.bd(new A.V(s.b,s.a))}}, +alK(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.D===B.a_?a2.b:a2.d,a0=a<1/0,a1=c.Y$ +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.ag===B.co)switch(c.D.a){case 0:j=A.fH(q,b) +break +case 1:j=A.fH(b,r) +break +default:j=b}else switch(c.D.a){case 0:j=new A.aG(0,1/0,0,q) +break +case 1:j=new A.aG(0,r,0,1/0) +break +default:j=b}i=a3.$2(a1,j) +m+=c.RQ(i) +n=Math.max(n,c.RO(i))}a1=l.a7$}h=Math.max(0,(a0?a:0)-m) +if(o>0){g=a0?h/o:0/0 +a1=c.Y$ +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.aF("minChildExtent") +l=a1.b +l.toString +l=s.a(l).f +switch((l==null?B.nu:l).a){case 0:if(d.b!==d)A.C(A.kY(d.a)) +d.b=e +break +case 1:if(d.b!==d)A.C(A.kY(d.a)) +d.b=0 +break}if(c.ag===B.co)switch(c.D.a){case 0:l=d.b +if(l===d)A.C(A.h6(d.a)) +j=new A.aG(l,e,q,q) +break +case 1:l=d.b +if(l===d)A.C(A.h6(d.a)) +j=new A.aG(r,r,l,e) +break +default:j=b}else switch(c.D.a){case 0:l=d.b +if(l===d)A.C(A.h6(d.a)) +j=new A.aG(l,e,0,q) +break +case 1:l=d.b +if(l===d)A.C(A.h6(d.a)) +j=new A.aG(0,r,l,e) +break +default:j=b}i=a3.$2(a1,j) +m+=c.RQ(i) +f+=e +n=Math.max(n,c.RO(i))}l=a1.b +l.toString +a1=s.a(l).a7$}}return new A.c3m(a0&&c.a4===B.u?a:m,n,m)}, +bJ(){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=a.gZ(),a2=a.alK(a1,A.k1()),a3=a2.a,a4=a2.b +if(a.ag===B.hr){s=a.Y$ +for(r=t.US,q=0,p=0,o=0;s!=null;){n=a.U +n.toString +m=s.x8(n,!0) +if(m!=null){q=Math.max(q,m) +p=Math.max(m,p) +n=s.id +o=Math.max((n==null?A.C(A.a0(a0+A.I(s).k(0)+"#"+A.bq(s))):n).b-m,o) +a4=Math.max(p+o,a4)}n=s.b +n.toString +s=r.a(n).a7$}}else q=0 +switch(a.D.a){case 0:a.id=a1.bd(new A.V(a3,a4)) +a3=a.gu(0).a +a4=a.gu(0).b +break +case 1:a.id=a1.bd(new A.V(a4,a3)) +a3=a.gu(0).b +a4=a.gu(0).a +break}l=a3-a2.c +a.aW=Math.max(0,-l) +k=Math.max(0,l) +j=A.aF("leadingSpace") +i=A.aF("betweenSpace") +r=A.cRq(a.D,a.aq,a.aJ) +h=r===!1 +switch(a.N.a){case 0:j.se9(0) +i.se9(0) +break +case 1:j.se9(k) +i.se9(0) +break +case 2:j.se9(k/2) +i.se9(0) +break +case 3:j.se9(0) +r=a.cT$ +i.se9(r>1?k/(r-1):0) +break +case 4:r=a.cT$ +i.se9(r>0?k/r:0) +j.se9(i.aX()/2) +break +case 5:r=a.cT$ +i.se9(r>0?k/(r+1):0) +j.se9(i.aX()) +break}g=h?a3-j.aX():j.aX() +s=a.Y$ +for(r=t.US,n=a4/2,f=i.a;s!=null;){e=s.b +e.toString +r.a(e) +d=a.ag +switch(d.a){case 0:case 1:if(A.cRq(A.cSx(a.D),a.aq,a.aJ)===(d===B.a4))c=0 +else{d=s.id +c=a4-a.RO(d==null?A.C(A.a0(a0+A.I(s).k(0)+"#"+A.bq(s))):d)}break +case 2:d=s.id +c=n-a.RO(d==null?A.C(A.a0(a0+A.I(s).k(0)+"#"+A.bq(s))):d)/2 +break +case 3:c=0 +break +case 4:if(a.D===B.a_){d=a.U +d.toString +m=s.x8(d,!0) +c=m!=null?q-m:0}else c=0 +break +default:c=null}if(h){d=s.id +g-=a.RQ(d==null?A.C(A.a0(a0+A.I(s).k(0)+"#"+A.bq(s))):d)}switch(a.D.a){case 0:e.a=new A.j(g,c) +break +case 1:e.a=new A.j(c,g) +break}if(h){d=i.b +if(d===i)A.C(A.h6(f)) +g-=d}else{d=s.id +d=a.RQ(d==null?A.C(A.a0(a0+A.I(s).k(0)+"#"+A.bq(s))):d) +b=i.b +if(b===i)A.C(A.h6(f)) +g+=d+b}s=e.a7$}}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){var s,r,q,p=this +if(!(p.aW>1e-10)){p.nL(a,b) +return}if(p.gu(0).gad(0))return +s=p.aU +r=p.cx +r===$&&A.b() +q=p.gu(0) +s.sb9(0,a.nV(r,b,new A.W(0,0,0+q.a,0+q.b),p.ga9j(),p.aT,s.a))}, +m(){this.aU.sb9(0,null) +this.aS3()}, +rq(a){var s +switch(this.aT.a){case 0:return null +case 1:case 2:case 3:if(this.aW>1e-10){s=this.gu(0) +s=new A.W(0,0,0+s.a,0+s.b)}else s=null +return s}}, +hL(){return this.a0W()}} +A.bAJ.prototype={ +$2(a,b){return a.aw(B.ad,b,a.gbG())}, +$S:64} +A.bAF.prototype={ +$2(a,b){return a.aw(B.aj,b,a.gbL())}, +$S:64} +A.bAH.prototype={ +$2(a,b){return a.aw(B.ao,b,a.gbP())}, +$S:64} +A.bAD.prototype={ +$2(a,b){return a.aw(B.ay,b,a.gbZ())}, +$S:64} +A.c3m.prototype={} +A.aUS.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.US;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.US;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aUU.prototype={} +A.ahu.prototype={ +m(){var s,r,q +for(s=this.wc$,r=s.length,q=0;q>")) +this.nN(new A.an7(s,c.h("an7<0>")),b,!0,c) +return s.length===0?null:B.b.ga2(s).a}, +aVW(a){var s,r=this +if(!r.w&&r.x!=null){s=r.x +s.toString +a.av5(s) +return}r.mV(a) +r.w=!1}, +hL(){var s=this.aOe() +return s+(this.y==null?" DETACHED":"")}} +A.boE.prototype={ +$0(){this.b.$1(this.a)}, +$S:0} +A.boF.prototype={ +$0(){var s=this.a +s.a.F(0,this.b) +s.Ld(-1)}, +$S:0} +A.awI.prototype={ +sb9(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}, +k(a){var s=this.a +return"LayerHandle("+(s!=null?s.k(0):"DISPOSED")+")"}} +A.aBl.prototype={ +saDa(a){var s +this.ld() +s=this.ay +if(s!=null)s.m() +this.ay=a}, +m(){this.saDa(null) +this.agG()}, +mV(a){var s=this.ay +s.toString +a.auZ(B.h,s,this.ch,this.CW)}, +nN(a,b,c){return!1}} +A.aGm.prototype={ +mV(a){var s=this.ax,r=s.a,q=s.b +a.av8(this.ay,this.CW,!1,s.d-q,new A.j(r,q),s.c-r)}, +nN(a,b,c){return!1}} +A.aBA.prototype={ +mV(a){var s=this.ax,r=s.a,q=s.b +a.av1(this.ay,s.d-q,new A.j(r,q),s.c-r)}} +A.kJ.prototype={ +JW(a){var s +this.aOT(a) +if(!a)return +s=this.ax +for(;s!=null;){s.JW(!0) +s=s.Q}}, +awn(a){var s=this +s.a_2() +s.mV(a) +if(s.b>0)s.JW(!0) +s.w=!1 +return a.dN()}, +m(){this.adb() +this.a.V(0) +this.agG()}, +a_2(){var s,r=this +r.aOW() +s=r.ax +for(;s!=null;){s.a_2() +r.w=r.w||s.w +s=s.Q}}, +nN(a,b,c,d){var s,r,q +for(s=this.ay,r=a.a;s!=null;s=s.as){if(s.nN(a,b,!0,d))return!0 +q=r.length +if(q!==0)return!1}return!1}, +aA(a){var s +this.aOU(a) +s=this.ax +for(;s!=null;){s.aA(a) +s=s.Q}}, +ar(a){var s +this.aOV(0) +s=this.ax +for(;s!=null;){s.ar(0) +s=s.Q}this.JW(!1)}, +iw(a,b){var s,r=this +if(!r.gFo())r.ld() +s=b.b +if(s!==0)r.Ld(s) +b.r=r +s=r.y +if(s!=null)b.aA(s) +r.qB(b) +s=b.as=r.ay +if(s!=null)s.Q=b +r.ay=b +if(r.ax==null)r.ax=b +b.e.sb9(0,b)}, +lN(){var s,r,q=this.ax +for(;q!=null;){s=q.z +r=this.z +if(s<=r){q.z=r+1 +q.lN()}q=q.Q}}, +qB(a){var s=a.z,r=this.z +if(s<=r){a.z=r+1 +a.lN()}}, +al2(a){var s,r=this +if(!r.gFo())r.ld() +s=a.b +if(s!==0)r.Ld(-s) +a.r=null +if(r.y!=null)a.ar(0)}, +adb(){var s,r=this,q=r.ax +for(;q!=null;q=s){s=q.Q +q.Q=q.as=null +r.al2(q) +q.e.sb9(0,null)}r.ay=r.ax=null}, +mV(a){this.oZ(a)}, +oZ(a){var s=this.ax +for(;s!=null;){s.aVW(a) +s=s.Q}}, +Ft(a,b){}} +A.u8.prototype={ +sfl(a,b){if(!b.l(0,this.k3))this.ld() +this.k3=b}, +nN(a,b,c,d){return this.xs(a,b.W(0,this.k3),!0,d)}, +Ft(a,b){var s=this.k3 +b.ba(0,s.a,s.b)}, +mV(a){var s=this,r=s.k3 +s.sme(a.acY(r.a,r.b,t.Ff.a(s.x))) +s.oZ(a) +a.fD()}, +ako(a,b){var s=$.ar().a92(),r=A.zj(b,b,1),q=this.k3 +r.ba(0,-(a.a+q.a),-(a.b+q.b)) +s.aE3(r.a) +return this.awn(s)}, +ZI(a,b){return this.bGW(a,b)}, +bGW(a,b){var s=0,r=A.p(t.lu),q,p=2,o,n=[],m=this,l,k +var $async$ZI=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:k=m.ako(a,b) +p=3 +s=6 +return A.i(k.HR(B.e.dO(b*(a.c-a.a)),B.e.dO(b*(a.d-a.b))),$async$ZI) +case 6:l=d +q=l +n=[1] +s=4 +break +n.push(5) +s=4 +break +case 3:n=[2] +case 4:p=2 +k.m() +s=n.pop() +break +case 5:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$ZI,r)}, +bGY(a,b){var s,r=this.ako(a,b) +try{s=r.uZ(B.e.dO(b*(a.c-a.a)),B.e.dO(b*(a.d-a.b))) +return s}finally{r.m()}}} +A.HO.prototype={ +nN(a,b,c,d){if(!this.k3.p(0,b))return!1 +return this.xs(a,b,!0,d)}, +mV(a){var s=this,r=s.k3 +r.toString +s.sme(a.aDV(r,s.k4,t.e5.a(s.x))) +s.oZ(a) +a.fD()}} +A.a0J.prototype={ +nN(a,b,c,d){if(!this.k3.p(0,b))return!1 +return this.xs(a,b,!0,d)}, +mV(a){var s=this,r=s.k3 +r.toString +s.sme(a.aDT(r,s.k4,t.cW.a(s.x))) +s.oZ(a) +a.fD()}} +A.PG.prototype={ +nN(a,b,c,d){if(!this.k3.p(0,b))return!1 +return this.xs(a,b,!0,d)}, +mV(a){var s=this,r=s.k3 +r.toString +s.sme(a.aDS(r,s.k4,t.L5.a(s.x))) +s.oZ(a) +a.fD()}} +A.PK.prototype={ +mV(a){var s=this,r=s.k3 +r.toString +s.sme(a.aDX(r,t.Cb.a(s.x))) +s.oZ(a) +a.fD()}} +A.a49.prototype={ +mV(a){var s=this +s.sme(a.aDY(s.c_,s.k3,t.C6.a(s.x))) +s.oZ(a) +a.fD()}} +A.x1.prototype={ +seJ(a,b){var s=this +if(b.l(0,s.c_))return +s.c_=b +s.bj=!0 +s.ld()}, +mV(a){var s,r,q=this +q.bO=q.c_ +if(!q.k3.l(0,B.h)){s=q.k3 +s=A.wn(s.a,s.b,0) +r=q.bO +r.toString +s.hc(0,r) +q.bO=s}q.sme(a.CY(q.bO.a,t.qf.a(q.x))) +q.oZ(a) +a.fD()}, +a6n(a){var s,r=this +if(r.bj){s=r.c_ +s.toString +r.be=A.Kl(A.cyw(s)) +r.bj=!1}s=r.be +if(s==null)return null +return A.cK(s,a)}, +nN(a,b,c,d){var s=this.a6n(b) +if(s==null)return!1 +return this.aPi(a,s,!0,d)}, +Ft(a,b){var s=this.bO +if(s==null){s=this.c_ +s.toString +b.hc(0,s)}else b.hc(0,s)}} +A.T5.prototype={ +sa7f(a,b){var s=this,r=s.c_ +if(b!=r){if(b===255||r===255)s.sme(null) +s.c_=b +s.ld()}}, +mV(a){var s,r,q,p=this +if(p.ax==null){p.sme(null) +return}s=p.c_ +s.toString +r=p.k3 +q=p.x +if(s<255)p.sme(a.aE1(s,r,t.Zr.a(q))) +else p.sme(a.acY(r.a,r.b,t.Ff.a(q))) +p.oZ(a) +a.fD()}} +A.a_w.prototype={ +sWM(a,b){if(!b.l(0,this.k3)){this.k3=b +this.ld()}}, +mV(a){var s=this,r=s.k3 +r.toString +s.sme(a.aDR(r,s.k4,t.tX.a(s.x))) +s.oZ(a) +a.fD()}} +A.wf.prototype={ +k(a){var s=A.bq(this),r=this.a!=null?"":"" +return"#"+s+"("+r+")"}} +A.a4S.prototype={ +sCB(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}, +sfl(a,b){if(b.l(0,this.k4))return +this.k4=b +this.ld()}, +aA(a){this.aO3(a) +this.k3.a=this}, +ar(a){var s=this.k3 +if(s.a===this)s.a=null +this.aO4(0)}, +nN(a,b,c,d){return this.xs(a,b.W(0,this.k4),!0,d)}, +mV(a){var s,r=this +if(!r.k4.l(0,B.h)){s=r.k4 +r.sme(a.CY(A.wn(s.a,s.b,0).a,t.qf.a(r.x)))}else r.sme(null) +r.oZ(a) +if(!r.k4.l(0,B.h))a.fD()}, +Ft(a,b){var s +if(!this.k4.l(0,B.h)){s=this.k4 +b.ba(0,s.a,s.b)}}} +A.a3t.prototype={ +a6n(a){var s,r,q,p,o=this +if(o.R8){s=o.aeL() +s.toString +o.p4=A.Kl(s) +o.R8=!1}if(o.p4==null)return null +r=new A.qT(new Float64Array(4)) +r.Qs(a.a,a.b,0,1) +s=o.p4.ah(0,r).a +q=s[0] +p=o.p1 +return new A.j(q-p.a,s[1]-p.b)}, +nN(a,b,c,d){var s,r=this +if(r.k3.a==null){if(r.k4)return r.xs(a,b.W(0,r.ok),!0,d) +return!1}s=r.a6n(b) +if(s==null)return!1 +return r.xs(a,s,!0,d)}, +aeL(){var s,r +if(this.p3==null)return null +s=this.p2 +r=A.wn(-s.a,-s.b,0) +s=this.p3 +s.toString +r.hc(0,s) +return r}, +b0H(){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.biU(s,m,q,p) +o=A.cIq(q) +s.Ft(null,o) +r=m.p1 +o.ba(0,r.a,r.b) +n=A.cIq(p) +if(n.l7(n)===0)return +n.hc(0,o) +m.p3=n +m.R8=!0}, +gFo(){return!0}, +mV(a){var s,r,q=this +if(q.k3.a==null&&!q.k4){q.p2=q.p3=null +q.R8=!0 +q.sme(null) +return}q.b0H() +s=q.p3 +r=t.qf +if(s!=null){q.p2=q.ok +q.sme(a.CY(s.a,r.a(q.x))) +q.oZ(a) +a.fD()}else{q.p2=null +s=q.ok +q.sme(a.CY(A.wn(s.a,s.b,0).a,r.a(q.x))) +q.oZ(a) +a.fD()}q.R8=!0}, +Ft(a,b){var s=this.p3 +if(s!=null)b.hc(0,s) +else{s=this.ok +b.hc(0,A.wn(s.a,s.b,0))}}} +A.OQ.prototype={ +nN(a,b,c,d){var s,r,q,p=this,o=p.xs(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.W(q,r,q+s.a,r+s.b).p(0,b)}else s=!1 +if(s)return o +if(A.c6(p.$ti.c)===A.c6(d)){o=o||!1 +n.push(new A.a_b(d.a(p.k3),b.W(0,p.ok),d.h("a_b<0>")))}return o}} +A.aQF.prototype={} +A.wi.prototype={} +A.a88.prototype={ +fo(a){if(!(a.b instanceof A.wi))a.b=new A.wi(null,null,B.h)}, +siO(a){if(this.D===a)return +this.D=a +this.a9()}, +cX(a){var s,r,q,p,o,n=this,m=n.Y$ +switch(n.D.a){case 1:case 3:s=a.d +r=A.fH(s,null) +for(q=A.z(n).h("ap.1"),p=0;m!=null;){p+=m.jr(r).a +o=m.b +o.toString +m=q.a(o).a7$}return a.bd(new A.V(p,s)) +case 0:case 2:s=a.b +r=A.fH(null,s) +for(q=A.z(n).h("ap.1"),p=0;m!=null;){p+=m.jr(r).b +o=m.b +o.toString +m=q.a(o).a7$}return a.bd(new A.V(s,p))}}, +bJ(){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.gZ.call(l)),h=l.Y$ +switch(l.D.a){case 1:s=i.d +r=A.fH(s,k) +for(q=t.U9,p=0;h!=null;){h.d_(r,!0) +o=h.b +o.toString +q.a(o) +o.a=new A.j(p,0) +n=h.id +p+=(n==null?A.C(A.a0(j+A.I(h).k(0)+"#"+A.bq(h))):n).a +h=o.a7$}l.id=i.bd(new A.V(p,s)) +break +case 3:s=i.d +r=A.fH(s,k) +for(q=t.U9,p=0;h!=null;){h.d_(r,!0) +o=h.b +o.toString +q.a(o) +n=h.id +p+=(n==null?A.C(A.a0(j+A.I(h).k(0)+"#"+A.bq(h))):n).a +h=o.a7$}h=l.Y$ +for(m=0;h!=null;){o=h.b +o.toString +q.a(o) +n=h.id +m+=(n==null?A.C(A.a0(j+A.I(h).k(0)+"#"+A.bq(h))):n).a +o.a=new A.j(p-m,0) +h=o.a7$}l.id=i.bd(new A.V(p,s)) +break +case 2:s=i.b +r=A.fH(k,s) +for(q=t.U9,p=0;h!=null;){h.d_(r,!0) +o=h.b +o.toString +q.a(o) +o.a=new A.j(0,p) +n=h.id +p+=(n==null?A.C(A.a0(j+A.I(h).k(0)+"#"+A.bq(h))):n).b +h=o.a7$}l.id=i.bd(new A.V(s,p)) +break +case 0:s=i.b +r=A.fH(k,s) +for(q=t.U9,p=0;h!=null;){h.d_(r,!0) +o=h.b +o.toString +q.a(o) +n=h.id +p+=(n==null?A.C(A.a0(j+A.I(h).k(0)+"#"+A.bq(h))):n).b +h=o.a7$}h=l.Y$ +for(m=0;h!=null;){o=h.b +o.toString +q.a(o) +n=h.id +m+=(n==null?A.C(A.a0(j+A.I(h).k(0)+"#"+A.bq(h))):n).b +o.a=new A.j(0,p-m) +h=o.a7$}l.id=i.bd(new A.V(s,p)) +break}}, +Sw(a){var s,r,q,p=this.Y$ +for(s=t.U9,r=0;p!=null;){r=Math.max(r,A.fP(a.$1(p))) +q=p.b +q.toString +p=s.a(q).a7$}return r}, +RX(a){var s,r,q,p=this.Y$ +for(s=t.U9,r=0;p!=null;){r+=a.$1(p) +q=p.b +q.toString +p=s.a(q).a7$}return r}, +bo(a){switch(A.cO(this.D).a){case 0:return this.RX(new A.bAV(a)) +case 1:return this.Sw(new A.bAW(a))}}, +bb(a){switch(A.cO(this.D).a){case 0:return this.RX(new A.bAR(a)) +case 1:return this.Sw(new A.bAS(a))}}, +bh(a){switch(A.cO(this.D).a){case 0:return this.RX(new A.bAT(a)) +case 1:return this.Sw(new A.bAU(a))}}, +bi(a){switch(A.cO(this.D).a){case 0:return this.RX(new A.bAP(a)) +case 1:return this.Sw(new A.bAQ(a))}}, +il(a){return this.Mm(a)}, +aI(a,b){this.nL(a,b)}, +ej(a,b){return this.ol(a,b)}} +A.bAV.prototype={ +$1(a){return a.aw(B.ad,this.a,a.gbG())}, +$S:31} +A.bAW.prototype={ +$1(a){return a.aw(B.ad,this.a,a.gbG())}, +$S:31} +A.bAR.prototype={ +$1(a){return a.aw(B.aj,this.a,a.gbL())}, +$S:31} +A.bAS.prototype={ +$1(a){return a.aw(B.aj,this.a,a.gbL())}, +$S:31} +A.bAT.prototype={ +$1(a){return a.aw(B.ao,this.a,a.gbP())}, +$S:31} +A.bAU.prototype={ +$1(a){return a.aw(B.ao,this.a,a.gbP())}, +$S:31} +A.bAP.prototype={ +$1(a){return a.aw(B.ay,this.a,a.gbZ())}, +$S:31} +A.bAQ.prototype={ +$1(a){return a.aw(B.ay,this.a,a.gbZ())}, +$S:31} +A.aUX.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.U9;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.U9;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aUY.prototype={} +A.zf.prototype={} +A.Ue.prototype={ +sfl(a,b){var s=this,r=s.N +if(b===r)return +if(s.y!=null)r.O(0,s.gSx()) +s.N=b +if(s.y!=null)b.a3(0,s.gSx()) +s.a9()}, +sbtO(a){var s=this +if(a===s.a4)return +s.a4=a +s.aV() +s.cs()}, +sbDZ(a,b){var s=this +if(b===s.ag)return +s.ag=b +s.aV() +s.cs()}, +sbBD(a){if(a===this.aq)return +this.aq=a +this.aV()}, +sbHM(a){if(this.aJ)return +this.aJ=!0 +this.aV()}, +sbAx(a){if(a===this.U)return +this.U=a +this.aV()}, +sbDg(a){if(a===this.aW)return +this.aW=a +this.aV()}, +sXF(a){if(a===this.aT)return +this.aT=a +this.a9()}, +saMY(a){var s=this +if(a===s.aU)return +s.aU=a +s.a9() +s.cs()}, +sbFO(a){return}, +b8E(){this.a9() +this.cs()}, +fo(a){if(!(a.b instanceof A.zf))a.b=new A.zf(null,null,B.h)}, +aA(a){this.aS4(a) +this.N.a3(0,this.gSx())}, +ar(a){this.N.O(0,this.gSx()) +this.aS5(0)}, +giD(){return!0}, +gaoQ(){var s=this.D.e +s.toString +if(t.WP.a(s).as.gnM()==null)return-1/0 +return 0}, +ga4q(){var s,r=this.D,q=r.e +q.toString +s=t.WP +if(s.a(q).as.gnM()==null)return 1/0 +r=r.e +r.toString +r=s.a(r).as.gnM() +r.toString +return Math.max(0,(r-1)*this.aT)}, +gatb(){return-this.gu(0).b/2+this.aT/2}, +amH(a){var s=this.gatb(),r=this.N.at +r.toString +return a-s-r}, +gb9H(){var s=this.a4 +if(s<1)return 1.5707963267948966 +return Math.asin(1/s)}, +amc(a){var s,r,q,p=this.Y$ +for(s=A.z(this).h("ap.1"),r=0;p!=null;){r=Math.max(r,A.fP(a.$1(p))) +q=p.b +q.toString +p=s.a(q).a7$}return r}, +bo(a){return this.amc(new A.bB4(a))}, +bb(a){return this.amc(new A.bB3(a))}, +bh(a){var s,r=this.D,q=r.e +q.toString +s=t.WP +if(s.a(q).as.gnM()==null)return 0 +r=r.e +r.toString +r=s.a(r).as.gnM() +r.toString +return r*this.aT}, +bi(a){var s,r=this.D,q=r.e +q.toString +s=t.WP +if(s.a(q).as.gnM()==null)return 0 +r=r.e +r.toString +r=s.a(r).as.gnM() +r.toString +return r*this.aT}, +gka(){return!0}, +cX(a){return new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d))}, +aki(a,b){this.Cu(new A.bAX(this,a,b),t.k)}, +akh(a){return this.aki(a,null)}, +Rz(a){this.Cu(new A.bAY(this,a),t.k)}, +Su(a,b,c){var s +a.d_(b,!0) +s=a.b +s.toString +t.BF.a(s).a=new A.j(this.gu(0).a/2-a.gu(0).a/2,c*this.aT)}, +bJ(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this +b.N.vQ(b.gu(0).b) +s=b.D +r=s.e +r.toString +if(t.WP.a(r).as.gnM()!=null)b.N.ri(b.gaoQ(),b.ga4q()) +q=b.gu(0).b*b.aU +r=b.N.at +r.toString +p=b.aT +o=r+p/2-q/2 +n=o+q +m=B.e.ec(o/p) +l=B.e.ec(n/b.aT) +if(l*b.aT===n)--l +while(!0){if(!(s.HM(m)==null&&m<=l))break;++m}while(!0){if(!(s.HM(l)==null&&m<=l))break;--l}if(m>l){for(;s=b.Y$,s!=null;)b.Rz(s) +return}if(b.cT$>0){r=b.Y$ +r.toString +r=r.b +r.toString +p=t.BF +r=p.a(r).e +r.toString +if(r<=l){r=b.d7$ +r.toString +r=r.b +r.toString +r=p.a(r).e +r.toString +r=rl;){r=b.d7$ +r.toString +b.Rz(r);--h}g=b.Y$ +for(r=A.z(b).h("ap.1"),f=i;g!=null;f=e){e=f+1 +b.Su(g,k,f) +p=g.b +p.toString +g=r.a(p).a7$}for(;i>m;){--i +b.akh(i) +r=b.Y$ +r.toString +b.Su(r,k,i)}for(;h0){s=p.arX()&&p.eA!==B.i +r=p.eq +if(s){s=p.cx +s===$&&A.b() +q=p.gu(0) +r.sb9(0,a.nV(s,b,new A.W(0,0,0+q.a,0+q.b),p.gbdd(),p.eA,r.a))}else{r.sb9(0,null) +p.apC(a,b)}}}, +m(){this.eq.sb9(0,null) +this.f1.sb9(0,null) +this.ig()}, +apC(a,b){var s=this,r=s.aW +if(r>=1){s.bcW(a,b) +return}s.f1.sb9(0,a.bEK(b,B.e.aF(r*255),new A.bB2(s))) +s.a4Y(a,b,!0)}, +a4Y(a,b,c){var s,r,q,p=this.Y$ +for(s=t.BF,r=A.z(this).h("ap.1");p!=null;){q=p.b +q.toString +this.bdc(p,a,b,s.a(q).a,c) +q=p.b +q.toString +p=r.a(q).a7$}}, +bcW(a,b){return this.a4Y(a,b,null)}, +bdc(a,b,c,d,e){var s,r,q,p,o,n,m,l,k=this,j=c.S(0,new A.j(d.a,k.amH(d.b))),i=-((j.b+k.aT/2)/k.gu(0).b-0.5)*2*k.gb9H()/k.aU +if(i>1.5707963267948966||i<-1.5707963267948966)return +s=k.gu(0).b*k.a4/2 +r=k.ag +q=new Float64Array(16) +p=new A.c5(q) +p.fO() +q[11]=-r +q[14]=-s +q[15]=r*s+1 +r=new Float64Array(16) +q=new A.c5(r) +r[15]=1 +o=Math.cos(i) +n=Math.sin(i) +r[0]=1 +r[1]=0 +r[2]=0 +r[4]=0 +r[5]=o +r[6]=n +r[8]=0 +r[9]=-n +r[10]=o +r[3]=0 +r[7]=0 +r[11]=0 +r=q +p=t.xV.a(p.X(0,r.X(0,A.wn(0,0,s)))) +m=new A.j(j.a,-k.gatb()) +l=k.aW<1 +if(k.aJ||l)k.bd0(b,c,a,p,m,j,e) +else k.a4Z(b,c,a,p,m)}, +bd0(a,b,c,d,e,f,g){var s,r,q,p,o,n,m,l=this,k=l.gu(0).b/2-l.aT*l.U/2,j=l.gu(0),i=l.aT*l.U,h=j.b/2+i/2 +j=f.b +s=j<=h +r=l.gu(0) +q=l.aT +p=l.U +o=new A.W(0,0,0+l.gu(0).a,0+k) +n=new A.W(0,h,0+l.gu(0).a,h+k) +m=j>=k-i&&s +if(g!==!1&&m){i=l.cx +i===$&&A.b() +a.aDW(i,b,new A.W(0,k,0+r.a,k+q*p),new A.bB0(l,c,f))}i=g!=null +if((!i||!g)&&m){r=l.cx +r===$&&A.b() +j=j<=k?o:n +a.aDW(r,b,j,new A.bB1(l,c,d,e))}if((!i||!g)&&!m)l.a4Z(a,b,c,d,e)}, +a4Z(a,b,c,d,e){var s,r=b.S(0,e),q=this.cx +q===$&&A.b() +a.aE4(q,b,this.ajf(d),new A.bAZ(c,r)) +q=c.b +q.toString +t.BF.a(q) +s=this.ajf(d) +s.ba(0,r.a,r.b) +q.f=s}, +ajf(a){var s,r,q,p=new A.c5(new Float64Array(16)) +p.fO() +s=B.C.Lv(this.gu(0)) +r=s.a +q=s.b +p.ba(0,r*(-this.aq*2+1),q) +p.hc(0,a) +p.ba(0,-r*(-this.aq*2+1),-q) +return p}, +hh(a,b){var s,r=a.b +r.toString +s=t.BF.a(r).f +if(s!=null)b.hc(0,s)}, +rq(a){var s +if(this.arX()){s=this.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}return null}, +ej(a,b){var s,r,q,p={},o=p.a=this.d7$ +for(s=t.BF;o!=null;o=q){o=o.b +o.toString +s.a(o) +r=o.f +if(r!=null)if(a.Ls(new A.bB5(p,r,b),b,r))return!0 +q=o.dJ$ +p.a=q}return!1}, +qR(a,b,c,d){var s,r +if(d==null)d=a.gpA() +for(s=a;s.gbR(s)!==this;s=r){r=s.gbR(s) +r.toString}r=s.b +r.toString +return new A.uk(t.BF.a(r).a.b,A.io(a.cf(0,s),d).ba(0,0,(this.gu(0).b-this.aT)/2))}, +Iw(a,b,c){return this.qR(a,b,null,c)}, +PJ(a,b){return this.qR(a,b,null,null)}, +fY(a,b,c,d){var s,r,q +if(b!=null){s=this.Iw(b,0.5,d) +r=this.N +q=s.a +if(c.a===B.w.a)r.hV(q) +else r.jv(q,a,c) +d=s.b}this.xw(a,null,c,d)}, +r0(){return this.fY(B.az,null,B.w,null)}, +oL(a){return this.fY(B.az,null,B.w,a)}, +pQ(a,b,c){return this.fY(a,null,b,c)}, +oM(a,b){return this.fY(B.az,a,B.w,b)}, +$iEV:1} +A.bB4.prototype={ +$1(a){return a.aw(B.ad,this.a,a.gbG())}, +$S:31} +A.bB3.prototype={ +$1(a){return a.aw(B.aj,this.a,a.gbL())}, +$S:31} +A.bAX.prototype={ +$1(a){this.a.D.a8W(this.b,this.c)}, +$S:191} +A.bAY.prototype={ +$1(a){this.a.D.Zk(this.b)}, +$S:191} +A.bB2.prototype={ +$2(a,b){this.a.a4Y(a,b,!1)}, +$S:14} +A.bB0.prototype={ +$2(a,b){var s,r,q=this.a,p=q.cx +p===$&&A.b() +s=new A.c5(new Float64Array(16)) +s.fO() +s.ba(0,q.gu(0).a*(-q.aq+0.5),q.gu(0).b/2) +r=q.U +s.o2(0,r,r,r) +s.ba(0,-q.gu(0).a*(-q.aq+0.5),-q.gu(0).b/2) +a.aE4(p,b,s,new A.bB_(this.b,this.c))}, +$S:14} +A.bB_.prototype={ +$2(a,b){a.eM(this.a,b.S(0,this.b))}, +$S:14} +A.bB1.prototype={ +$2(a,b){var s=this +s.a.a4Z(a,b,s.b,s.c,s.d)}, +$S:14} +A.bAZ.prototype={ +$2(a,b){a.eM(this.a,this.b)}, +$S:14} +A.bB5.prototype={ +$2(a,b){return this.a.a.es(a,b)}, +$S:19} +A.ahD.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.BF;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.BF;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aRX.prototype={ +bFX(a){var s=this.a +this.a=a +return s}, +k(a){var s="#",r=A.bq(this.b),q=this.a.a +return s+A.bq(this)+"("+("latestEvent: "+(s+r))+", "+("annotations: [list of "+q+"]")+")"}} +A.aRY.prototype={ +gqh(a){var s=this.c +return s.gqh(s)}} +A.azO.prototype={ +anr(a){var s,r,q,p,o,n,m=t._h,l=A.e4(null,null,m,t.xV) +for(s=a.a,r=s.length,q=0;q") +this.b.bwT(a.gqh(0),a.d,A.nb(new A.bR(s,r),new A.btz(),r.h("B.E"),t.Pb))}, +bHK(a,b){var s,r,q,p,o,n=this,m={} +if(a.gel(a)!==B.cv)return +if(t.ks.b(a))return +m.a=null +if(t.PB.b(a))m.a=A.Rr() +else{s=a.gI6() +m.a=b==null?n.a.$2(a.gb8(a),s):b}r=a.gqh(a) +q=n.c +p=q.i(0,r) +if(!A.dae(p,a))return +o=q.a +new A.btC(m,n,p,a,r).$0() +if(o!==0!==(q.a!==0))n.ab()}, +aFW(){new A.btA(this).$0()}} +A.btz.prototype={ +$1(a){return a.gyD(a)}, +$S:599} +A.btC.prototype={ +$0(){var s=this +new A.btB(s.a,s.b,s.c,s.d,s.e).$0()}, +$S:0} +A.btB.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.n(0,n.e,new A.aRX(A.e4(m,m,t._h,t.xV),s))}else{s=n.d +if(t.PB.b(s))n.b.c.F(0,s.gqh(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.e4(m,m,t._h,t.xV):r.anr(n.a.a) +r.amU(new A.aRY(q.bFX(o),o,p,s))}, +$S:0} +A.btA.prototype={ +$0(){var s,r,q,p,o,n,m +for(s=this.a,r=s.c.gbm(0),q=A.z(r),q=q.h("@<1>").a1(q.y[1]),r=new A.c4(J.au(r.a),r.b,q.h("c4<1,2>")),q=q.y[1];r.t();){p=r.a +if(p==null)p=q.a(p) +o=p.b +n=s.b16(p) +m=p.a +p.a=n +s.amU(new A.aRY(m,n,o,null))}}, +$S:0} +A.btx.prototype={ +$2(a,b){var s +if(a.gI3()&&!this.a.aB(0,a)){s=a.gO4(a) +if(s!=null)s.$1(this.b.e_(this.c.i(0,a)))}}, +$S:600} +A.bty.prototype={ +$1(a){return!this.a.aB(0,a)}, +$S:601} +A.b_X.prototype={} +A.dT.prototype={ +ar(a){}, +k(a){return""}} +A.Ey.prototype={ +eM(a,b){var s,r=this +if(a.giD()){r.DO() +if(!a.cy){s=a.ay +s===$&&A.b() +s=!s}else s=!0 +if(s)A.cKC(a,null,!0) +else if(a.db)A.daM(a) +s=a.ch.a +s.toString +t.gY.a(s) +s.sfl(0,b) +r.V0(s)}else{s=a.ay +s===$&&A.b() +if(s){a.ch.sb9(0,null) +a.a50(r,b)}else a.a50(r,b)}}, +V0(a){a.hB(0) +this.a.iw(0,a)}, +gbY(a){var s +if(this.e==null)this.asl() +s=this.e +s.toString +return s}, +asl(){var s,r,q=this +q.c=A.db0(q.b) +s=$.ar() +r=s.FY() +q.d=r +q.e=s.FX(r,null) +r=q.c +r.toString +q.a.iw(0,r)}, +DO(){var s,r=this +if(r.e==null)return +s=r.c +s.toString +s.saDa(r.d.uh()) +r.e=r.d=r.c=null}, +afF(){if(this.c==null)this.asl() +var s=this.c +if(!s.ch){s.ch=!0 +s.ld()}}, +Hy(a,b,c,d){var s,r=this +if(a.ax!=null)a.adb() +r.DO() +r.V0(a) +s=r.bsN(a,d==null?r.b:d) +b.$2(s,c) +s.DO()}, +t_(a,b,c){return this.Hy(a,b,c,null)}, +bsN(a,b){return new A.Ey(a,b)}, +nV(a,b,c,d,e,f){var s,r,q=this +if(e===B.i){d.$2(q,b) +return null}s=c.eD(b) +if(a){r=f==null?new A.HO(B.k,A.N(t.S,t.O),A.aw(t.kd)):f +if(!s.l(0,r.k3)){r.k3=s +r.ld()}if(e!==r.k4){r.k4=e +r.ld()}q.Hy(r,d,b,s) +return r}else{q.bql(s,e,s,new A.bwg(q,d,b)) +return null}}, +aDW(a,b,c,d){return this.nV(a,b,c,d,B.k,null)}, +bEG(a,b,c,d,e){return this.nV(a,b,c,d,B.k,e)}, +aDU(a,b,c,d,e,f,g){var s,r,q,p=this +if(f===B.i){e.$2(p,b) +return null}s=c.eD(b) +r=d.eD(b) +if(a){q=g==null?new A.a0J(B.dL,A.N(t.S,t.O),A.aw(t.kd)):g +if(!r.l(0,q.k3)){q.k3=r +q.ld()}if(f!==q.k4){q.k4=f +q.ld()}p.Hy(q,e,b,s) +return q}else{p.bqj(r,f,s,new A.bwf(p,e,b)) +return null}}, +acX(a,b,c,d,e,f,g){var s,r,q,p=this +if(f===B.i){e.$2(p,b) +return null}s=c.eD(b) +r=d.eD(b) +if(a){q=g==null?new A.PG(B.dL,A.N(t.S,t.O),A.aw(t.kd)):g +if(r!==q.k3){q.k3=r +q.ld()}if(f!==q.k4){q.k4=f +q.ld()}p.Hy(q,e,b,s) +return q}else{p.bqh(r,f,s,new A.bwe(p,e,b)) +return null}}, +bEF(a,b,c,d,e,f){return this.acX(a,b,c,d,e,B.dL,f)}, +bEH(a,b,c,d){var s=d==null?new A.PK(A.N(t.S,t.O),A.aw(t.kd)):d +if(b!==s.k3){s.k3=b +s.ld()}this.t_(s,c,a) +return s}, +zS(a,b,c,d,e){var s,r=this,q=b.a,p=b.b,o=A.wn(q,p,0) +o.hc(0,c) +o.ba(0,-q,-p) +if(a){s=e==null?A.cNb(null):e +s.seJ(0,o) +r.Hy(s,d,b,A.cJX(o,r.b)) +return s}else{q=r.gbY(r) +q.d6(0) +q.ah(0,o.a) +d.$2(r,b) +r.gbY(r).de(0) +return null}}, +aE4(a,b,c,d){return this.zS(a,b,c,d,null)}, +zR(a,b,c,d){var s=d==null?A.cyi():d +s.sa7f(0,b) +s.sfl(0,a) +this.t_(s,c,B.h) +return s}, +bEK(a,b,c){return this.zR(a,b,c,null)}, +k(a){return"PaintingContext#"+A.ef(this)+"(layer: "+this.a.k(0)+", canvas bounds: "+this.b.k(0)+")"}} +A.bwg.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.bwf.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.bwe.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.baz.prototype={} +A.zJ.prototype={ +HJ(){var s=this.cx +if(s!=null)s.a.aa2()}, +sOJ(a){var s=this.e +if(s==a)return +if(s!=null)s.ar(0) +this.e=a +if(a!=null)a.aA(this)}, +N1(){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) +J.OH(s,new A.bxl()) +for(r=0;r")) +i.dD(m,l,k,j.c) +B.b.L(n,i) +break}}q=J.aS(s,r) +if(q.z&&q.y===h)q.b8u()}h.f=!1}for(o=h.CW,o=A.dy(o,o.r,A.z(o).c),n=o.$ti.c;o.t();){m=o.d +p=m==null?n.a(m):m +p.N1()}}finally{h.f=!1}}, +b0s(a){try{a.$0()}finally{this.f=!0}}, +WZ(){var s,r,q,p,o=this.z +B.b.iL(o,new A.bxk()) +for(s=o.length,r=0;r0){if(r.at==null){q=r.c +q.toString +s=t.bu +r.at=new A.a9f(q,A.b9(s),A.N(t.S,s),A.b9(s),$.ae()) +s=r.b +if(s!=null)s.$0()}}else{q=r.at +if(q!=null){q.m() +r.at=null +q=r.d +if(q!=null)q.$0()}}}, +azT(){var s,r,q,p,o,n,m,l,k=this +if(k.at==null)return +try{p=k.ch +o=A.R(p,!0,A.z(p).h("cZ.E")) +B.b.iL(o,new A.bxn()) +s=o +p.V(0) +for(p=s,n=p.length,m=0;m0;n=m){m=n-1 +r[n].hh(r[m],o)}return o}, +rq(a){return null}, +a9r(a){return null}, +PY(){this.y.ch.B(0,this) +this.y.HJ()}, +ji(a){}, +IJ(a){var s,r,q=this +if(q.y.at==null)return +s=q.fr +if(s!=null)r=!(s.ch!=null&&s.y) +else r=!1 +if(r)s.aKF(a) +else if(q.gbR(q)!=null)q.gbR(q).IJ(a)}, +gTG(){var s,r=this +if(r.dx==null){s=A.uo() +r.dx=s +r.ji(s)}s=r.dx +s.toString +return s}, +yp(){this.dy=!0 +this.fr=null +this.d0(new A.bBf())}, +cs(){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.gTG().k1!=null +o.dx=null +q=o.gTG().a&&s +p=o +while(!0){if(p.gbR(p)!=null)n=r||!q +else n=!1 +if(!n)break +if(p!==o&&p.dy)break +p.dy=!0 +if(q)r=!1 +p=p.gbR(p) +if(p.dx==null){n=A.uo() +p.dx=n +p.ji(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.B(0,p) +o.y.HJ()}}}, +bl2(){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 if(!q.Q)q=q.ch!=null&&q.y +else q=!0}s=r?k:s.z +p=t.pp.a(l.amA(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.FJ(s==null?0:s,m,q,o,n)}, +amA(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d={},c=e.gTG() +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.gbR(e)==null +o=c.k1 +n=t.pp +m=A.N(t.ZX,n) +l=t.CZ +k=A.a([],l) +j=A.a([],t.Oc) +i=c.dd +i=i==null?null:i.a!==0 +e.lm(new A.bBa(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.bq(this)}, +k(a){return this.hL()}, +fY(a,b,c,d){var s,r=this +if(r.gbR(r) instanceof A.H){s=r.gbR(r) +s.toString +s.fY(a,b==null?r:b,c,d)}}, +r0(){return this.fY(B.az,null,B.w,null)}, +oL(a){return this.fY(B.az,null,B.w,a)}, +pQ(a,b,c){return this.fY(a,null,b,c)}, +oM(a,b){return this.fY(B.az,a,B.w,b)}, +$iay:1} +A.bBh.prototype={ +$1(a){a.lM()}, +$S:30} +A.bBd.prototype={ +$0(){var s=A.a([],t.qe),r=this.a +s.push(A.cwc("The following RenderObject was being processed when the exception was fired",B.ah9,r)) +s.push(A.cwc("RenderObject",B.aha,r)) +return s}, +$S:39} +A.bBg.prototype={ +$0(){this.b.$1(this.c.a(this.a.gZ()))}, +$S:0} +A.bBe.prototype={ +$1(a){var s +a.aty() +s=a.cx +s===$&&A.b() +if(s)this.a.cx=!0}, +$S:30} +A.bBf.prototype={ +$1(a){a.yp()}, +$S:30} +A.bBa.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=a.amA(f.d,f.c) +if(e.a){B.b.V(f.e) +B.b.V(f.f) +B.b.V(f.r) +if(!f.w.a)f.a.a=!0}for(s=e.gaC9(),r=s.length,q=f.f,p=f.y!=null,o=f.x,n=f.b,m=f.w,l=f.e,k=f.z,j=0;j1){b=new A.aWk() +b.ak8(a3,a4,c)}else b=a2 +c=b.c +c===$&&A.b() +a=b.d +a===$&&A.b() +a0=A.io(c,a) +e=e==null?a2:e.n1(a0) +if(e==null)e=a0 +c=b.b +if(c!=null){a1=A.io(b.c,c) +f=f==null?a2:f.jZ(a1) +if(f==null)f=a1}c=b.a +if(c!=null){a1=A.io(b.c,c) +g=g==null?a2:g.jZ(a1) +if(g==null)g=a1}d=d.c +if(d!=null)l.L(0,d)}}if(h!=null)j=!(e.a>=e.c||e.b>=e.d) +else j=!1 +if(j){if(i==null||a6.p(0,i.b))i=A.M4(a2,B.b.ga2(o).gvh()) +a6.B(0,i.b) +i.dy=l +if(!i.e.l(0,e)){i.e=e +i.oW()}if(!A.cxX(i.d,a2)){i.d=null +i.oW()}i.f=f +i.r=g +for(k=k.gaz(m);k.t();){j=k.gK(k) +if(j.gpa()!=null)B.b.ga2(j.b).fr=i}i.Di(0,h) +a5.push(i)}}}, +FJ(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.b9(t.S),c=f.y +for(s=f.x,r=s.length,q=0;q");s.t();){n=s.gK(s) +if(n instanceof A.Of){if(n.z){m=n.b +m=B.b.ga2(m).fr!=null&&d.p(0,B.b.ga2(m).fr.b)}else m=!1 +if(m)B.b.ga2(n.b).fr=null}m=n.b +l=new A.b3(r,1,e,p) +l.dD(r,1,e,o) +B.b.L(m,l) +n.FJ(a+f.f.y2,b,a0,a1,a2)}return}k=f.aYU(b,a0) +s=!f.e +if(s){if(k==null)r=e +else{r=k.d +r===$&&A.b() +if(!r.gad(0)){r=k.c +r===$&&A.b() +r=r.aBz()}else r=!0}r=r===!0}else r=!1 +if(r)return +r=f.b +p=B.b.ga2(r) +j=p.fr +if(j==null)j=p.fr=A.M4(e,B.b.ga2(r).gvh()) +j.dy=f.c +j.w=a +if(a!==0){f.RJ() +p=f.f +p.sft(0,p.y2+a)}if(k!=null){p=k.d +p===$&&A.b() +j.sdR(0,p) +p=k.c +p===$&&A.b() +j.seJ(0,p) +j.f=k.b +j.r=k.a +if(s&&k.e){f.RJ() +f.f.dn(B.q2,!0)}}s=t.QF +i=A.a([],s) +f.aoP(j.f,j.r,a2,d) +for(p=J.au(c);p.t();){o=p.gK(p) +if(o instanceof A.Of){if(o.z){n=o.b +n=B.b.ga2(n).fr!=null&&d.p(0,B.b.ga2(n).fr.b)}else n=!1 +if(n)B.b.ga2(o.b).fr=null}h=A.a([],s) +n=j.f +o.FJ(0,j.r,n,i,h) +B.b.L(a2,h)}s=f.f +if(s.a)B.b.ga2(r).yh(j,f.f,i) +else j.v3(0,i,s) +a1.push(j) +for(s=a2.length,r=t.g3,q=0;q1){s=new A.aWk() +s.ak8(b,a,r) +r=s}else r=null +return r}, +gpa(){return this.z?null:this.f}, +L(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.djd(r,q,g.c) +if(r===q.gbR(q))g.ak_(r,q,g.b,g.a) +else{p=A.a([q],e) +o=q.gbR(q) +while(!0){n=o==null +m=!n +if(!(m&&o.fr==null))break +p.push(o) +o=o.gbR(o)}if(n)l=f +else{l=o.fr +l=l==null?f:l.r}g.a=l +if(n)n=f +else{n=o.fr +n=n==null?f:n.f}g.b=n +if(m)for(k=p.length-1,j=o;k>=0;--k){g.ak_(j,p[k],g.b,g.a) +j=p[k]}}}i=B.b.ga2(c) +e=g.b +e=e==null?f:e.jZ(i.gvf()) +if(e==null)e=i.gvf() +g.d=e +n=g.a +if(n!=null){h=n.jZ(e) +e=h.gad(0)&&!g.d.gad(0) +g.e=e +if(!e)g.d=h}}, +ak_(a,b,c,d){var s,r,q,p=$.cZ6() +p.fO() +a.hh(b,p) +s=a.rq(b) +r=A.cOY(A.cOX(s,d),p) +this.a=r +if(r==null)this.b=null +else{q=a.a9r(b) +this.b=A.cOY(q==null?A.cOX(c,s):q,p)}}} +A.aT6.prototype={} +A.aV2.prototype={} +A.zK.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.zK&&b.b===this.b}, +gv(a){return A.ad(B.bun,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.pB.prototype={ +ar(a){this.a=this.b=null +this.aSM(0)}, +k(a){var s=A.r(this.b),r=this.a +r=r==null?"not laid out":"offset: "+r.k(0) +return"widget: "+s+", "+r}} +A.aCT.prototype={ +fo(a){if(!(a.b instanceof A.pB))a.b=new A.pB(null,null)}, +uD(a,b){var s,r=A.a([],t.UZ),q=this.Y$,p=A.z(this).h("ap.1") +while(q!=null){r.push(A.dcl(q,a,b)) +s=q.b +s.toString +q=p.a(s).a7$}return r}, +aDf(a){var s,r,q,p,o,n,m=this.Y$ +for(s=a.length,r=t.ot,q=A.z(this).h("ap.1"),p=0;ph){d=c1[h].dy +d=d!=null&&d.p(0,new A.zK(i,b8))}else d=!1 +if(!d)break +b=c1[h] +d=s.b +d.toString +if(m.a(d).a!=null)b6.push(b);++h}b8=s.b +b8.toString +s=n.a(b8).a7$;++i}else{a=o.a(A.H.prototype.gZ.call(b4)) +b7.qX(b4.eA) +a0=a.b +a0=b4.aJ||b4.U===B.bf?a0:1/0 +b7.ND(a0,a.a) +a1=b7.Dp(new A.mC(j,e,B.E,!1,c,d),B.cY,B.cA) +if(a1.length===0)continue +d=B.b.ga2(a1) +a2=new A.W(d.a,d.b,d.c,d.d) +a3=B.b.ga2(a1).e +for(d=A.X(a1),c=d.h("b3<1>"),a=new A.b3(a1,1,b5,c),a.dD(a1,1,b5,d.c),a=new A.bj(a,a.gA(0),c.h("bj")),c=c.h("aa.E");a.t();){d=a.d +if(d==null)d=c.a(d) +a2=a2.n1(new A.W(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.gZ.call(b4)).b) +a=Math.min(a2.d-a,o.a(A.H.prototype.gZ.call(b4)).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.W(a4,a5,d,a) +a7=A.uo() +a8=k+1 +a7.k2=new A.Eq(k,b5) +a7.e=!0 +a7.bO=l +a0=f.b +b8=a0==null?b8:a0 +a7.rx=new A.et(b8,f.f) +a9=f.c +if(a9!=null)if(a9 instanceof A.mB){b8=a9.bU +if(b8!=null){a7.kJ(B.eq,b8) +a7.w=b8 +a7.dn(B.lQ,!0)}}else if(a9 instanceof A.q4){b8=a9.r +if(b8!=null){a7.kJ(B.eq,b8) +a7.w=b8 +a7.dn(B.lQ,!0)}}else if(a9 instanceof A.mh){b8=a9.p2 +if(b8!=null)a7.kJ(B.pZ,b8)}b8=b9.r +if(b8!=null){b0=b8.jZ(a6) +if(b0.a>=b0.c||b0.b>=b0.d)b8=!(a4>=d||a5>=a) +else b8=!1 +a7.dn(B.q2,b8)}b8=b4.f1 +d=b8==null?b5:b8.a!==0 +if(d===!0){b8.toString +b1=new A.bR(b8,A.z(b8).h("bR<1>")).gaz(0) +if(!b1.t())A.C(A.dB()) +b8=b8.F(0,b1.gK(0)) +b8.toString +b2=b8}else{b3=new A.qR() +b2=A.M4(b3,b4.bde(b3))}b2.Di(0,a7) +if(!b2.e.l(0,a6)){b2.e=a6 +b2.oW()}b8=b2.a +b8.toString +r.n(0,b8,b2) +b6.push(b2) +k=a8 +l=a3}}b4.f1=r +b9.v3(0,b6,c0)}, +bde(a){return new A.bBj(this,a)}, +yp(){this.QR() +this.f1=null}} +A.bBm.prototype={ +$1(a){return a.z=null}, +$S:605} +A.bBn.prototype={ +$1(a){var s=a.x +s===$&&A.b() +return s.c!==B.eL}, +$S:606} +A.bBl.prototype={ +$2(a,b){return new A.V(a.aw(B.ad,1/0,a.gbG()),0)}, +$S:103} +A.bBk.prototype={ +$2(a,b){return new A.V(a.aw(B.aj,1/0,a.gbL()),0)}, +$S:103} +A.bBi.prototype={ +$1(a){var s,r +if(a instanceof A.kt){s=a.b +$label0$0:{if(B.fd===s||B.px===s||B.py===s){r=!1 +break $label0$0}if(B.lE===s||B.i_===s||B.cj===s){r=!0 +break $label0$0}throw A.d(A.iB(u.P))}}else r=!0 +return r}, +$S:124} +A.bBj.prototype={ +$0(){var s=this.a,r=s.f1.i(0,this.b) +r.toString +s.oM(s,r.e)}, +$S:0} +A.Bg.prototype={ +gj(a){var s=this.x +s===$&&A.b() +return s}, +bl_(){var s=this,r=s.amz(),q=s.x +q===$&&A.b() +if(q.l(0,r))return +s.x=r +s.ab()}, +amz(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=f.d +if(e==null||f.e==null)return B.Xn +s=e.a +r=f.e.a +e=f.b +q=e.K6(new A.cC(s,B.E)) +p=s===r?q:e.K6(new A.cC(r,B.E)) +o=e.D +n=o.x +n.toString +m=s>r!==(B.ae===n) +l=A.eJ(B.E,s,r,!1) +k=A.a([],t.AO) +for(e=e.tb(l),n=e.length,j=0;j=p&&m.a.a>p}else s=!0}else s=!1 +if(s)m=g +if(b){if(m!=null)if(h.f&&f!=null&&e!=null){s=n.a +p=f.a +o=e.a +if(s!==p&&p>o!==sp?m.a:e}else if(f!=null)l=n.ae.a +if(i!==sp!==s>p){l=sp?m.a:f}else if(e!=null)l=n.ap +if(s!==p&&i!==s>p){k=h.EA(e) +h.e=i?k.a:k.b}}l=g}s=l==null?n:l}l=h.a1W(s) +if(b)h.e=l +else h.d=l +s=l.a +p=h.a +if(s===p.b)return B.cJ +if(s===p.a)return B.dg +return A.bER(h.gtK(),q)}, +a1W(a){var s,r=a.a,q=this.a,p=q.b +if(r<=p)s=r===p&&a.b===B.E +else s=!0 +if(s)return new A.cC(p,B.by) +q=q.a +if(r=q&&s.a.a>q)return B.cJ}o.d=n +o.e=s.a +o.f=!0 +return B.cK}, +EA(a){var s,r,q,p,o=this.b +o.xO(t.k.a(A.H.prototype.gZ.call(o))) +s=o.D.b.a.a.va(a) +r=A.aF("start") +q=A.aF("end") +o=a.a +p=s.b +if(o>p)r.b=q.b=new A.cC(o,B.E) +else{r.b=new A.cC(s.a,B.E) +q.b=new A.cC(p,B.by)}o=r.aX() +return new A.aUu(q.aX(),o)}, +b3x(a,b,c){var s,r,q,p,o,n,m,l=this,k=l.b,j=k.cf(0,null) +if(j.l7(j)===0)switch(c.a){case 0:case 3:return B.dg +case 1:case 2:return B.cJ}s=A.cK(j,new A.j(a,0)).a +switch(c.a){case 0:case 1:if(b){k=l.e +k.toString +r=k}else{k=l.d +k.toString +r=k}q=l.b72(r,c===B.Xl,s) +p=q.a +o=q.b +break +case 2:case 3:n=l.e +if(n==null){n=l.a +n=c===B.Xm?new A.cC(n.a,B.E):new A.cC(n.b,B.by) +l.e=n +r=n}else r=n +n=l.d +if(n==null){l.d=r +m=r}else m=n +p=k.kY(new A.j(s,k.K6(b?r:m).b-k.D.giq()/2)) +o=B.cK +break +default:p=null +o=null}if(b)l.e=p +else l.d=p +return o}, +b44(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.cC(l.a,B.E):new A.cC(l.b,B.by) +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.cJ +l=!a +if(l&&s.a===m.a.a)return B.dg +switch(c.a){case 0:l=m.a +q=m.a4z(s,a,new A.Pr(B.c.R(m.c,l.a,l.b))) +p=B.cK +break +case 1:l=m.b.D +o=l.f +o.toString +q=m.a4z(s,a,new A.WF(o,l.b.a.a).gaCf()) +p=B.cK +break +case 2:q=m.bab(s,a,new A.Sh(m)) +p=B.cK +break +case 3:o=m.a +n=o.a +o=o.b +q=m.a4z(s,a,new A.Ik(B.c.R(m.c,n,o))) +if(a&&q.a===o)p=B.cJ +else p=l&&q.a===n?B.dg:B.cK +break +default:p=null +q=null}if(b)m.e=q +else m.d=q +return p}, +a4z(a,b,c){var s,r=a.a +if(b){r=c.lU(r) +s=r==null?this.a.b:r}else{r=c.lS(r-1) +s=r==null?this.a.a:r}return new A.cC(s,B.E)}, +bab(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.jQ +r=o.a.a +s=new A.Pr(o.c).lS(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.lU(q) +p=s==null?o.a.b:s}else{s=c.lS(q) +p=s==null?o.a.a:s}return new A.cC(p,B.E)}, +b72(a,b,c){var s,r,q,p,o,n=this,m=n.b,l=m.D.BK(),k=m.v8(a,B.a8),j=l.length,i=j-1 +for(s=k.b,r=0;rs){i=J.cEx(q) +break}}if(b&&i===l.length-1)p=new A.cC(n.a.b,B.by) +else if(!b&&i===0)p=new A.cC(n.a.a,B.E) +else p=n.a1W(m.kY(new A.j(c,l[b?i+1:i-1].gu2()))) +m=p.a +j=n.a +if(m===j.a)o=B.dg +else o=m===j.b?B.cJ:B.cK +return new A.aY(p,o,t.UH)}, +beh(a){var s,r,q,p,o=this +if(o.d==null||o.e==null)return!1 +s=A.aF("currentStart") +r=A.aF("currentEnd") +q=o.d +q.toString +p=o.e +p.toString +if(A.cAf(q,p)>0){s.b=q +r.b=p}else{s.b=p +r.b=q}return A.cAf(s.aX(),a)>=0&&A.cAf(r.aX(),a)<=0}, +cf(a,b){return this.b.cf(0,b)}, +pG(a,b){var s=this,r=s.b +if(r.y==null)return +if(s.r!=a){s.r=a +r.aV()}if(s.w!=b){s.w=b +r.aV()}}, +gFA(){var s,r,q,p,o,n,m,l=this +if(l.y==null){s=l.b +r=l.a +q=r.a +p=s.tb(A.eJ(B.E,q,r.b,!1)) +r=t.AO +if(p.length!==0){l.y=A.a([],r) +for(s=p.length,o=0;o)")}} +A.agJ.prototype={ +aVp(a,b){var s,r=this,q=new A.Ri(A.N(t.S,t.EG)) +q.b=r +r.w=q +q=r.ch +s=A.z(q).h("jJ") +r.CW=A.hh(new A.jJ(q,new A.c9D(r),s),s.h("B.E")) +r.at=a}, +gb5p(){var s=this.at +s===$&&A.b() +return s}, +lA(a){var s,r,q +this.E0(a) +s=this.CW +s===$&&A.b() +s=A.dy(s,s.r,A.z(s).c) +r=s.$ti.c +for(;s.t();){q=s.d +if(q==null)q=r.a(q) +q.e.n(0,a.gcG(),a.gel(a)) +if(q.mk(a))q.lA(a) +else q.Cl(a)}}, +BZ(a){}, +jB(a){var s,r=this +if(!r.ay.p(0,a.gcG())){s=r.ax +if(!s.aB(0,a.gcG()))s.n(0,a.gcG(),A.a([],t.Y2)) +s.i(0,a.gcG()).push(a)}else r.b5q(a) +r.J8(a)}, +kM(a){var s,r=this.ax.F(0,a) +if(r!=null){s=this.at +s===$&&A.b() +J.iK(r,s)}this.ay.B(0,a)}, +kg(a){this.agX(a) +this.ay.F(0,a) +this.ax.F(0,a)}, +l_(a){this.agX(a) +this.ay.F(0,a)}, +b5q(a){return this.gb5p().$1(a)}} +A.c9D.prototype={ +$1(a){var s=a.a8n() +s.sbKg(this.a.w) +s.gwC() +return s}, +$S:607} +A.aBE.prototype={ +sBM(a,b){var s=this,r=s.D +if(r===b)return +s.D=b +s.aV() +if(r.a!==b.a)s.cs()}, +gka(){return!0}, +gog(){return!0}, +giD(){return!0}, +cX(a){return new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d))}, +aI(a,b){var s=this.gu(0),r=b.a,q=b.b,p=this.D,o=A.aw(t.kd) +a.DO() +a.V0(new A.aBA(new A.W(r,q,r+s.a,q+s.b),p.a,A.N(t.S,t.O),o))}, +ji(a){this.kH(a) +a.a=!0 +a.sbE3(this.D.a)}, +$ilC:1} +A.c9C.prototype={ +saAE(a){var s=this +if(a!==s.MT$){s.MT$=a +if(s.y!=null)s.aV()}}, +atL(a,b){var s=this,r=s.Gt$ +r=r==null?null:r.ch +if(A.dlF(a,r,t.Dr))return +r=s.Gt$ +if(r!=null)r.m() +s.Gt$=A.diU(b,a) +s.azv$=b}, +es(a,b){var s=this +if(s.MT$===B.Wr||!s.gu(0).p(0,b))return!1 +a.B(0,new A.y7(b,s)) +return s.MT$===B.Wq}, +kw(a){return this.MT$!==B.Wr}, +gO3(a){return null}, +gO4(a){return null}, +gyD(a){return B.AO}, +gI3(){return!0}, +n8(a,b){var s +if(t.pY.b(a))this.Gt$.m9(a) +if(t.XA.b(a)){s=this.azv$ +if(s!=null)s.$1(a)}}} +A.aTa.prototype={ +ar(a){var s=this.Gt$,r=s.ay +r.aE(0,A.fg.prototype.gage.call(s)) +r.V(0) +r=s.ax +new A.bR(r,A.z(r).h("bR<1>")).aE(0,A.fg.prototype.gage.call(s)) +r.V(0) +s.a5(B.b6) +this.e5(0)}, +m(){var s=this.Gt$ +if(s!=null)s.m() +this.ig()}} +A.aD2.prototype={} +A.l4.prototype={ +fo(a){if(!(a.b instanceof A.dT))a.b=new A.dT()}, +bo(a){var s=this.k1$ +s=s==null?null:s.aw(B.ad,a,s.gbG()) +return s==null?0:s}, +bb(a){var s=this.k1$ +s=s==null?null:s.aw(B.aj,a,s.gbL()) +return s==null?0:s}, +bh(a){var s=this.k1$ +s=s==null?null:s.aw(B.ao,a,s.gbP()) +return s==null?0:s}, +bi(a){var s=this.k1$ +s=s==null?null:s.aw(B.ay,a,s.gbZ()) +return s==null?0:s}, +cX(a){var s=this.k1$ +s=s==null?null:s.jr(a) +return s==null?this.LS(a):s}, +bJ(){var s=this,r=s.k1$ +if(r==null)r=null +else r.d_(t.k.a(A.H.prototype.gZ.call(s)),!0) +r=r==null?null:r.gu(0) +s.id=r==null?s.LS(t.k.a(A.H.prototype.gZ.call(s))):r +return}, +LS(a){return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}, +ej(a,b){var s=this.k1$ +s=s==null?null:s.es(a,b) +return s===!0}, +hh(a,b){}, +aI(a,b){var s=this.k1$ +if(s==null)return +a.eM(s,b)}} +A.a3U.prototype={ +H(){return"HitTestBehavior."+this.b}} +A.a8f.prototype={ +es(a,b){var s,r=this +if(r.gu(0).p(0,b)){s=r.ej(a,b)||r.G===B.be +if(s||r.G===B.cr)a.B(0,new A.y7(b,r))}else s=!1 +return s}, +kw(a){return this.G===B.be}} +A.Lv.prototype={ +sa7d(a){if(this.G.l(0,a))return +this.G=a +this.a9()}, +bo(a){var s,r=this.G,q=r.b +if(q<1/0&&r.a>=q)return r.a +s=this.a10(a) +r=this.G +q=r.a +if(!(q>=1/0))return A.Z(s,q,r.b) +return s}, +bb(a){var s,r=this.G,q=r.b +if(q<1/0&&r.a>=q)return r.a +s=this.QT(a) +r=this.G +q=r.a +if(!(q>=1/0))return A.Z(s,q,r.b) +return s}, +bh(a){var s,r=this.G,q=r.d +if(q<1/0&&r.c>=q)return r.c +s=this.a1_(a) +r=this.G +q=r.c +if(!(q>=1/0))return A.Z(s,q,r.d) +return s}, +bi(a){var s,r=this.G,q=r.d +if(q<1/0&&r.c>=q)return r.c +s=this.a0Z(a) +r=this.G +q=r.c +if(!(q>=1/0))return A.Z(s,q,r.d) +return s}, +bJ(){var s=this,r=t.k.a(A.H.prototype.gZ.call(s)),q=s.k1$,p=s.G +if(q!=null){q.d_(p.C5(r),!0) +s.id=s.k1$.gu(0)}else s.id=p.C5(r).bd(B.A)}, +cX(a){var s=this.k1$,r=this.G +if(s!=null)return s.jr(r.C5(a)) +else return r.C5(a).bd(B.A)}} +A.aCV.prototype={ +sbAR(a,b){if(this.G===b)return +this.G=b +this.a9()}, +sbAQ(a,b){if(this.ac===b)return +this.ac=b +this.a9()}, +aoj(a){var s,r,q=a.a,p=a.b +p=p<1/0?p:A.Z(this.G,q,p) +s=a.c +r=a.d +return new A.aG(q,p,s,r<1/0?r:A.Z(this.ac,s,r))}, +xW(a,b){var s=this.k1$ +if(s!=null)return a.bd(b.$2(s,this.aoj(a))) +return this.aoj(a).bd(B.A)}, +cX(a){return this.xW(a,A.k0())}, +bJ(){this.id=this.xW(t.k.a(A.H.prototype.gZ.call(this)),A.k1())}} +A.a7W.prototype={ +sa7p(a,b){if(this.G===b)return +this.G=b +this.a9()}, +bo(a){var s +if(isFinite(a))return a*this.G +s=this.k1$ +if(s!=null)return s.aw(B.ad,a,s.gbG()) +return 0}, +bb(a){var s +if(isFinite(a))return a*this.G +s=this.k1$ +if(s!=null)return s.aw(B.aj,a,s.gbL()) +return 0}, +bh(a){var s +if(isFinite(a))return a/this.G +s=this.k1$ +if(s!=null)return s.aw(B.ao,a,s.gbP()) +return 0}, +bi(a){var s +if(isFinite(a))return a/this.G +s=this.k1$ +if(s!=null)return s.aw(B.ay,a,s.gbZ()) +return 0}, +aiC(a){var s,r,q,p,o=a.a,n=a.b +if(o>=n&&a.c>=a.d)return new A.V(A.Z(0,o,n),A.Z(0,a.c,a.d)) +s=this.G +if(isFinite(n)){r=n/s +q=n}else{r=a.d +q=r*s}if(q>n)r=n/s +else n=q +p=a.d +if(r>p){n=p*s +r=p}if(n=a.b))a=a.OU(A.bAO(s.aw(B.aj,a.d,s.gbL()),this.G)) +s=this.k1$ +s.toString +return b.$2(s,a)}else return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}, +cX(a){return this.xW(a,A.k0())}, +bJ(){this.id=this.xW(t.k.a(A.H.prototype.gZ.call(this)),A.k1())}} +A.a87.prototype={ +bo(a){var s=this.k1$ +if(s==null)return 0 +if(!isFinite(a))a=s.aw(B.ay,1/0,s.gbZ()) +s=this.k1$ +return s.aw(B.ad,a,s.gbG())}, +bb(a){var s=this.k1$ +if(s==null)return 0 +if(!isFinite(a))a=s.aw(B.ay,1/0,s.gbZ()) +s=this.k1$ +return s.aw(B.aj,a,s.gbL())}, +bh(a){return this.bi(a)}, +xW(a,b){var s=this.k1$ +if(s!=null){if(!(a.c>=a.d))a=a.OT(s.aw(B.ay,a.b,s.gbZ())) +s=this.k1$ +s.toString +return b.$2(s,a)}else return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}, +cX(a){return this.xW(a,A.k0())}, +bJ(){this.id=this.xW(t.k.a(A.H.prototype.gZ.call(this)),A.k1())}} +A.LA.prototype={ +gog(){return this.k1$!=null&&this.G>0}, +giD(){return this.k1$!=null&&this.G>0}, +shn(a,b){var s,r,q,p,o=this +if(o.ac===b)return +s=o.k1$!=null +r=s&&o.G>0 +q=o.G +o.ac=b +p=B.e.aF(A.Z(b,0,1)*255) +o.G=p +if(r!==(s&&p>0))o.rQ() +o.aC4() +if(q!==0!==(o.G!==0)&&!o.aS)o.cs()}, +sLw(a){if(a===this.aS)return +this.aS=a +this.cs()}, +zK(a){return this.G>0}, +I2(a){var s=a==null?A.cyi():a +s.sa7f(0,this.G) +return s}, +aI(a,b){if(this.k1$==null||this.G===0)return +this.o6(a,b)}, +lm(a){var s,r=this.k1$ +if(r!=null)s=this.G!==0||this.aS +else s=!1 +if(s){r.toString +a.$1(r)}}} +A.a7T.prototype={ +giD(){if(this.k1$!=null){var s=this.aai$ +s.toString}else s=!1 +return s}, +I2(a){var s=a==null?A.cyi():a +s.sa7f(0,this.Gr$) +return s}, +shn(a,b){var s=this,r=s.z1$ +if(r===b)return +if(s.y!=null&&r!=null)r.O(0,s.gUo()) +s.z1$=b +if(s.y!=null)b.a3(0,s.gUo()) +s.a6C()}, +sLw(a){if(a===this.aaj$)return +this.aaj$=a +this.cs()}, +a6C(){var s,r=this,q=r.Gr$,p=r.z1$ +p=r.Gr$=B.e.aF(A.Z(p.gj(p),0,1)*255) +if(q!==p){s=r.aai$ +p=p>0 +r.aai$=p +if(r.k1$!=null&&s!==p)r.rQ() +r.aC4() +if(q===0||r.Gr$===0)r.cs()}}, +zK(a){var s=this.z1$ +return s.gj(s)>0}, +lm(a){var s,r=this.k1$ +if(r!=null)if(this.Gr$===0){s=this.aaj$ +s.toString}else s=!0 +else s=!1 +if(s){r.toString +a.$1(r)}}} +A.a7S.prototype={} +A.aCG.prototype={ +sWM(a,b){if(this.G.l(0,b))return +this.G=b +this.aV()}, +sp6(a){if(this.ac===a)return +this.ac=a +this.aV()}, +gog(){return this.k1$!=null}, +aI(a,b){var s,r,q,p=this +if(p.k1$!=null){s=t.m2 +if(s.a(A.H.prototype.gb9.call(p,0))==null)p.ch.sb9(0,A.cF1(null)) +s.a(A.H.prototype.gb9.call(p,0)).sWM(0,p.G) +r=s.a(A.H.prototype.gb9.call(p,0)) +q=p.ac +if(q!==r.k4){r.k4=q +r.ld()}s=s.a(A.H.prototype.gb9.call(p,0)) +s.toString +a.t_(s,A.l4.prototype.gk0.call(p),b)}else p.ch.sb9(0,null)}} +A.yq.prototype={ +a3(a,b){var s=this.a +return s==null?null:s.a3(0,b)}, +O(a,b){var s=this.a +return s==null?null:s.O(0,b)}, +aIk(a){return new A.W(0,0,0+a.a,0+a.b)}, +k(a){return"CustomClipper"}} +A.Ad.prototype={ +Ip(a){return this.b.i7(new A.W(0,0,0+a.a,0+a.b),this.c)}, +IT(a){if(A.I(a)!==B.buG)return!0 +t.jH.a(a) +return!a.b.l(0,this.b)||a.c!=this.c}} +A.Yi.prototype={ +sFH(a){var s,r=this,q=r.G +if(q==a)return +r.G=a +s=a==null +if(s||q==null||A.I(a)!==A.I(q)||a.IT(q))r.EG() +if(r.y!=null){if(q!=null)q.O(0,r.gSD()) +if(!s)a.a3(0,r.gSD())}}, +aA(a){var s +this.Av(a) +s=this.G +if(s!=null)s.a3(0,this.gSD())}, +ar(a){var s=this.G +if(s!=null)s.O(0,this.gSD()) +this.vm(0)}, +EG(){this.ac=null +this.aV() +this.cs()}, +soi(a){if(a!==this.aS){this.aS=a +this.aV()}}, +bJ(){var s=this,r=s.id!=null?s.gu(0):null +s.E6() +if(!J.q(r,s.gu(0)))s.ac=null}, +tS(){var s,r=this +if(r.ac==null){s=r.G +s=s==null?null:s.Ip(r.gu(0)) +r.ac=s==null?r.gJL():s}}, +rq(a){var s,r=this +switch(r.aS.a){case 0:return null +case 1:case 2:case 3:s=r.G +s=s==null?null:s.aIk(r.gu(0)) +if(s==null){s=r.gu(0) +s=new A.W(0,0,0+s.a,0+s.b)}return s}}, +m(){this.en=null +this.ig()}} +A.aCL.prototype={ +gJL(){var s=this.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}, +es(a,b){var s=this +if(s.G!=null){s.tS() +if(!s.ac.p(0,b))return!1}return s.tv(a,b)}, +aI(a,b){var s,r,q=this,p=q.k1$ +if(p!=null){s=q.ch +if(q.aS!==B.i){q.tS() +p=q.cx +p===$&&A.b() +r=q.ac +r.toString +s.sb9(0,a.nV(p,b,r,A.l4.prototype.gk0.call(q),q.aS,t.EM.a(s.a)))}else{a.eM(p,b) +s.sb9(0,null)}}else q.ch.sb9(0,null)}} +A.aCK.prototype={ +sa7A(a,b){if(this.eR.l(0,b))return +this.eR=b +this.EG()}, +sd5(a){if(this.eG==a)return +this.eG=a +this.EG()}, +gJL(){var s=this.eR.a5(this.eG),r=this.gu(0) +return s.hq(new A.W(0,0,0+r.a,0+r.b))}, +es(a,b){var s=this +if(s.G!=null){s.tS() +if(!s.ac.p(0,b))return!1}return s.tv(a,b)}, +aI(a,b){var s,r,q=this,p=q.k1$ +if(p!=null){s=q.ch +if(q.aS!==B.i){q.tS() +p=q.cx +p===$&&A.b() +r=q.ac +s.sb9(0,a.aDU(p,b,new A.W(r.a,r.b,r.c,r.d),r,A.l4.prototype.gk0.call(q),q.aS,t.eG.a(s.a)))}else{a.eM(p,b) +s.sb9(0,null)}}else q.ch.sb9(0,null)}} +A.aCJ.prototype={ +gJL(){var s=$.ar().dc(),r=this.gu(0) +s.jd(new A.W(0,0,0+r.a,0+r.b)) +return s}, +es(a,b){var s=this +if(s.G!=null){s.tS() +if(!s.ac.p(0,b))return!1}return s.tv(a,b)}, +aI(a,b){var s,r,q,p=this,o=p.k1$ +if(o!=null){s=p.ch +if(p.aS!==B.i){p.tS() +o=p.cx +o===$&&A.b() +r=p.gu(0) +q=p.ac +q.toString +s.sb9(0,a.acX(o,b,new A.W(0,0,0+r.a,0+r.b),q,A.l4.prototype.gk0.call(p),p.aS,t.JG.a(s.a)))}else{a.eM(o,b) +s.sb9(0,null)}}else p.ch.sb9(0,null)}} +A.ahJ.prototype={ +sft(a,b){if(this.eR===b)return +this.eR=b +this.aV()}, +sc0(a,b){if(this.eG.l(0,b))return +this.eG=b +this.aV()}, +sa6(a,b){if(this.eS.l(0,b))return +this.eS=b +this.aV()}, +ji(a){this.kH(a) +a.sft(0,this.eR)}} +A.aCY.prototype={ +sdg(a,b){if(this.aak===b)return +this.aak=b +this.EG()}, +sa7A(a,b){if(J.q(this.aal,b))return +this.aal=b +this.EG()}, +gJL(){var s,r,q=this.gu(0),p=0+q.a +q=0+q.b +switch(this.aak.a){case 0:s=this.aal +if(s==null)s=B.bh +return s.hq(new A.W(0,0,p,q)) +case 1:s=(p-0)/2 +r=(q-0)/2 +return new A.qA(0,0,p,q,s,r,s,r,s,r,s,r,s===r)}}, +es(a,b){var s=this +if(s.G!=null){s.tS() +if(!s.ac.p(0,b))return!1}return s.tv(a,b)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(j.k1$==null){j.ch.sb9(0,null) +return}j.tS() +s=j.ac.eD(b) +r=$.ar() +q=r.dc() +q.iM(s) +p=a.gbY(a) +o=j.eR +if(o!==0&&!0){n=j.eG +m=j.eS +p.uf(q,n,o,(m.gj(m)>>>24&255)!==255)}l=j.aS===B.iJ +if(!l){r=r.aP() +r.sa6(0,j.eS) +p.dh(s,r)}r=j.cx +r===$&&A.b() +o=j.gu(0) +n=j.ac +n.toString +m=j.ch +k=t.eG.a(m.a) +m.sb9(0,a.aDU(r,b,new A.W(0,0,0+o.a,0+o.b),n,new A.bBo(j,l),j.aS,k))}} +A.bBo.prototype={ +$2(a,b){var s,r +if(this.b){s=a.gbY(a) +r=$.ar().aP() +r.sa6(0,this.a.eS) +s.Gg(r)}this.a.o6(a,b)}, +$S:14} +A.aCZ.prototype={ +gJL(){var s=$.ar().dc(),r=this.gu(0) +s.jd(new A.W(0,0,0+r.a,0+r.b)) +return s}, +es(a,b){var s=this +if(s.G!=null){s.tS() +if(!s.ac.p(0,b))return!1}return s.tv(a,b)}, +aI(a,b){var s,r,q,p,o,n,m,l,k=this +if(k.k1$==null){k.ch.sb9(0,null) +return}k.tS() +s=k.ac.eD(b) +r=a.gbY(a) +q=k.eR +if(q!==0&&!0){p=k.eG +o=k.eS +r.uf(s,p,q,(o.gj(o)>>>24&255)!==255)}n=k.aS===B.iJ +if(!n){q=$.ar().aP() +q.sa6(0,k.eS) +r.ey(s,q)}q=k.cx +q===$&&A.b() +p=k.gu(0) +o=k.ac +o.toString +m=k.ch +l=t.JG.a(m.a) +m.sb9(0,a.acX(q,b,new A.W(0,0,0+p.a,0+p.b),o,new A.bBp(k,n),k.aS,l))}} +A.bBp.prototype={ +$2(a,b){var s,r +if(this.b){s=a.gbY(a) +r=$.ar().aP() +r.sa6(0,this.a.eS) +s.Gg(r)}this.a.o6(a,b)}, +$S:14} +A.asi.prototype={ +H(){return"DecorationPosition."+this.b}} +A.aCM.prototype={ +sbT(a){var s,r=this +if(a.l(0,r.ac))return +s=r.G +if(s!=null)s.m() +r.G=null +r.ac=a +r.aV()}, +sb8(a,b){if(b===this.aS)return +this.aS=b +this.aV()}, +su7(a){if(a.l(0,this.cZ))return +this.cZ=a +this.aV()}, +ar(a){var s=this,r=s.G +if(r!=null)r.m() +s.G=null +s.vm(0) +s.aV()}, +m(){var s=this.G +if(s!=null)s.m() +this.ig()}, +kw(a){return this.ac.ab6(this.gu(0),a,this.cZ.d)}, +aI(a,b){var s,r,q=this +if(q.G==null)q.G=q.ac.yA(q.gfk()) +s=q.cZ.yw(q.gu(0)) +if(q.aS===B.cB){r=q.G +r.toString +r.jJ(a.gbY(a),b,s) +if(q.ac.gXC())a.afF()}q.o6(a,b) +if(q.aS===B.tI){r=q.G +r.toString +r.jJ(a.gbY(a),b,s) +if(q.ac.gXC())a.afF()}}} +A.aDj.prototype={ +sCP(a,b){return}, +siN(a){var s=this +if(J.q(s.ac,a))return +s.ac=a +s.aV() +s.cs()}, +sd5(a){var s=this +if(s.aS==a)return +s.aS=a +s.aV() +s.cs()}, +gog(){return this.k1$!=null&&this.eY!=null}, +seJ(a,b){var s,r=this +if(J.q(r.en,b))return +s=new A.c5(new Float64Array(16)) +s.T(b) +r.en=s +r.aV() +r.cs()}, +sot(a){var s,r,q=this,p=q.eY +if(p==a)return +s=q.k1$!=null +r=s&&p!=null +q.eY=a +if(r!==(s&&a!=null))q.rQ() +q.aV()}, +ga2H(){var s,r,q=this,p=q.ac,o=p==null?null:p.a5(q.aS) +if(o==null)return q.en +s=new A.c5(new Float64Array(16)) +s.fO() +r=o.Lv(q.gu(0)) +s.ba(0,r.a,r.b) +p=q.en +p.toString +s.hc(0,p) +s.ba(0,-r.a,-r.b) +return s}, +es(a,b){return this.ej(a,b)}, +ej(a,b){var s=this.cZ?this.ga2H():null +return a.Ls(new A.bBH(this),b,s)}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(j.k1$!=null){s=j.ga2H() +s.toString +if(j.eY==null){r=A.azd(s) +if(r==null){q=s.ayy() +if(q===0||!isFinite(q)){j.ch.sb9(0,null) +return}p=j.cx +p===$&&A.b() +o=A.l4.prototype.gk0.call(j) +n=j.ch +m=n.a +n.sb9(0,a.zS(p,b,s,o,m instanceof A.x1?m:null))}else{j.o6(a,b.S(0,r)) +j.ch.sb9(0,null)}}else{p=b.a +o=b.b +l=A.wn(p,o,0) +l.hc(0,s) +l.ba(0,-p,-o) +o=j.eY +o.toString +k=A.cIS(l.a,o) +s=j.ch +p=s.a +if(p instanceof A.a49){if(!k.l(0,p.c_)){p.c_=k +p.ld()}}else s.sb9(0,new A.a49(k,B.h,A.N(t.S,t.O),A.aw(t.kd))) +s=s.a +s.toString +a.t_(s,A.l4.prototype.gk0.call(j),b)}}}, +hh(a,b){var s=this.ga2H() +s.toString +b.hc(0,s)}} +A.bBH.prototype={ +$2(a,b){return this.a.Jf(a,b)}, +$S:19} +A.a81.prototype={ +beF(){if(this.G!=null)return +this.G=this.aS}, +alH(a){switch(a.a){case 6:return!0 +case 1:case 2:case 0:case 4:case 3:case 5:return!1}}, +srB(a){var s=this,r=s.ac +if(r===a)return +s.ac=a +if(s.alH(r)||s.alH(a))s.a9() +else{s.eY=s.en=null +s.aV()}}, +siN(a){var s=this +if(s.aS.l(0,a))return +s.aS=a +s.G=s.eY=s.en=null +s.aV()}, +sd5(a){var s=this +if(s.cZ==a)return +s.cZ=a +s.G=s.eY=s.en=null +s.aV()}, +cX(a){var s,r=this.k1$ +if(r!=null){s=r.jr(B.e9) +switch(this.ac.a){case 6:return a.bd(new A.aG(0,a.b,0,a.d).LV(s)) +case 1:case 2:case 0:case 4:case 3:case 5:return a.LV(s)}}else return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}, +bJ(){var s,r,q=this,p=q.k1$ +if(p!=null){p.d_(B.e9,!0) +switch(q.ac.a){case 6:p=t.k +s=p.a(A.H.prototype.gZ.call(q)) +r=new A.aG(0,s.b,0,s.d).LV(q.k1$.gu(0)) +q.id=p.a(A.H.prototype.gZ.call(q)).bd(r) +break +case 1:case 2:case 0:case 4:case 3:case 5:q.id=t.k.a(A.H.prototype.gZ.call(q)).LV(q.k1$.gu(0)) +break}q.eY=q.en=null}else{p=t.k.a(A.H.prototype.gZ.call(q)) +q.id=new A.V(A.Z(0,p.a,p.b),A.Z(0,p.c,p.d))}}, +a6D(){var s,r,q,p,o,n,m,l,k,j,i=this +if(i.eY!=null)return +if(i.k1$==null){i.en=!1 +s=new A.c5(new Float64Array(16)) +s.fO() +i.eY=s}else{i.beF() +r=i.k1$.gu(0) +q=A.cRE(i.ac,r,i.gu(0)) +s=q.b +p=q.a +o=r.a +n=r.b +m=i.G.Nm(p,new A.W(0,0,0+o,0+n)) +l=i.G +l.toString +k=i.gu(0) +j=l.Nm(s,new A.W(0,0,0+k.a,0+k.b)) +l=m.a +i.en=m.c-l")) +s.aS.sb9(0,p) +a.t_(p,A.l4.prototype.gk0.call(s),b)}, +m(){this.aS.sb9(0,null) +this.ig()}, +gog(){return!0}} +A.aUI.prototype={ +aA(a){var s=this +s.Av(a) +s.z1$.a3(0,s.gUo()) +s.a6C()}, +ar(a){this.z1$.O(0,this.gUo()) +this.vm(0)}, +aI(a,b){if(this.Gr$===0)return +this.o6(a,b)}} +A.ahK.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.ahL.prototype={ +il(a){var s=this.k1$ +s=s==null?null:s.pK(a) +return s==null?this.Je(a):s}} +A.a8g.prototype={ +fo(a){if(!(a.b instanceof A.qJ))a.b=new A.qJ(B.h)}, +bJ(){var s=this,r=s.k1$ +r.toString +r.d_(t.q.a(A.H.prototype.gZ.call(s)),!0) +s.fx=s.k1$.fx}, +aI(a,b){var s=this.k1$ +if(s!=null)a.eM(s,b)}, +zj(a,b,c){var s=this.k1$ +return s!=null&&s.fx.r>0&&s.Xp(a,b,c)}, +hh(a,b){var s=a.b +s.toString +s=t.jB.a(s).a +b.ba(0,s.a,s.b)}} +A.aV7.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.Fc.prototype={ +H(){return"SelectionResult."+this.b}} +A.a99.prototype={} +A.l9.prototype={$iaC:1,$idq:1} +A.aEg.prototype={ +swQ(a){var s=this,r=s.Gs$ +if(a==r)return +if(a==null)s.O(0,s.garE()) +else if(r==null)s.a3(0,s.garE()) +s.arD() +s.Gs$=a +s.arF()}, +arF(){var s=this +if(s.Gs$==null){s.Cb$=!1 +return}if(s.Cb$&&!s.gj(0).e){s.Gs$.F(0,s) +s.Cb$=!1}else if(!s.Cb$&&s.gj(0).e){s.Gs$.B(0,s) +s.Cb$=!0}}, +arD(){var s=this +if(s.Cb$){s.Gs$.F(0,s) +s.Cb$=!1}}} +A.Ac.prototype={ +H(){return"SelectionEventType."+this.b}} +A.VO.prototype={ +H(){return"TextGranularity."+this.b}} +A.bEL.prototype={} +A.aEa.prototype={} +A.a0H.prototype={} +A.a97.prototype={} +A.a9b.prototype={} +A.auZ.prototype={} +A.UP.prototype={ +H(){return"SelectionExtendDirection."+this.b}} +A.a1P.prototype={ +axp(a){return new A.a1P(this.b,this.c,a,B.Xk)}} +A.a9e.prototype={ +H(){return"SelectionStatus."+this.b}} +A.ox.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.ox&&J.q(b.a,s.a)&&J.q(b.b,s.b)&&b.d===s.d&&b.c===s.c&&b.e===s.e}, +gv(a){var s=this +return A.ad(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.M0.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.M0&&b.a.l(0,s.a)&&b.b===s.b&&b.c===s.c}, +gv(a){return A.ad(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.ab4.prototype={ +H(){return"TextSelectionHandleType."+this.b}} +A.aWg.prototype={} +A.EX.prototype={ +bo(a){var s=this.k1$ +s=s==null?null:s.aw(B.ad,a,s.gbG()) +return s==null?0:s}, +bb(a){var s=this.k1$ +s=s==null?null:s.aw(B.aj,a,s.gbL()) +return s==null?0:s}, +bh(a){var s=this.k1$ +s=s==null?null:s.aw(B.ao,a,s.gbP()) +return s==null?0:s}, +bi(a){var s=this.k1$ +s=s==null?null:s.aw(B.ay,a,s.gbZ()) +return s==null?0:s}, +il(a){var s,r,q=this.k1$ +if(q!=null){s=q.pK(a) +r=q.b +r.toString +t.r.a(r) +if(s!=null)s+=r.a.b}else s=this.Je(a) +return s}, +aI(a,b){var s,r=this.k1$ +if(r!=null){s=r.b +s.toString +a.eM(r,t.r.a(s).a.S(0,b))}}, +ej(a,b){var s,r=this.k1$ +if(r!=null){s=r.b +s.toString +t.r.a(s) +return a.l5(new A.bBq(b,s,r),s.a,b)}return!1}} +A.bBq.prototype={ +$2(a,b){return this.c.es(a,b)}, +$S:19} +A.a8c.prototype={ +y6(){var s=this +if(s.G!=null)return +s.G=s.ac.a5(s.aS)}, +sdX(a,b){var s=this +if(s.ac.l(0,b))return +s.ac=b +s.G=null +s.a9()}, +sd5(a){var s=this +if(s.aS==a)return +s.aS=a +s.G=null +s.a9()}, +bo(a){var s,r,q,p +this.y6() +s=this.G +r=s.a+s.c +q=s.b +s=s.d +p=this.k1$ +if(p!=null)return p.aw(B.ad,Math.max(0,a-(q+s)),p.gbG())+r +return r}, +bb(a){var s,r,q,p +this.y6() +s=this.G +r=s.a+s.c +q=s.b +s=s.d +p=this.k1$ +if(p!=null)return p.aw(B.aj,Math.max(0,a-(q+s)),p.gbL())+r +return r}, +bh(a){var s,r,q,p +this.y6() +s=this.G +r=s.a +q=s.c +p=s.b+s.d +s=this.k1$ +if(s!=null)return s.aw(B.ao,Math.max(0,a-(r+q)),s.gbP())+p +return p}, +bi(a){var s,r,q,p +this.y6() +s=this.G +r=s.a +q=s.c +p=s.b+s.d +s=this.k1$ +if(s!=null)return s.aw(B.ay,Math.max(0,a-(r+q)),s.gbZ())+p +return p}, +cX(a){var s,r,q,p=this +p.y6() +if(p.k1$==null){s=p.G +return a.bd(new A.V(s.a+s.c,s.b+s.d))}s=p.G +s.toString +r=a.om(s) +q=p.k1$.jr(r) +s=p.G +return a.bd(new A.V(s.a+q.a+s.c,s.b+q.b+s.d))}, +bJ(){var s,r,q,p,o,n=this,m=t.k.a(A.H.prototype.gZ.call(n)) +n.y6() +if(n.k1$==null){s=n.G +n.id=m.bd(new A.V(s.a+s.c,s.b+s.d)) +return}s=n.G +s.toString +r=m.om(s) +n.k1$.d_(r,!0) +s=n.k1$ +q=s.b +q.toString +t.r.a(q) +p=n.G +o=p.a +q.a=new A.j(o,p.b) +s=s.gu(0) +p=n.G +n.id=m.bd(new A.V(o+s.a+p.c,p.b+n.k1$.gu(0).b+n.G.d))}} +A.aCF.prototype={ +y6(){var s=this +if(s.G!=null)return +s.G=s.ac.a5(s.aS)}, +siN(a){var s=this +if(s.ac.l(0,a))return +s.ac=a +s.G=null +s.a9()}, +sd5(a){var s=this +if(s.aS==a)return +s.aS=a +s.G=null +s.a9()}, +Fl(){var s,r,q=this +q.y6() +s=q.k1$.b +s.toString +t.r.a(s) +r=q.G +r.toString +s.a=r.Fm(t.EP.a(q.gu(0).W(0,q.k1$.gu(0))))}} +A.a8e.prototype={ +saed(a){if(this.eF==a)return +this.eF=a +this.a9()}, +sab4(a){if(this.eQ==a)return +this.eQ=a +this.a9()}, +bo(a){var s=this.a14(a),r=this.eF +return s*(r==null?1:r)}, +bb(a){var s=this.a12(a),r=this.eF +return s*(r==null?1:r)}, +bh(a){var s=this.a13(a),r=this.eQ +return s*(r==null?1:r)}, +bi(a){var s=this.a11(a),r=this.eQ +return s*(r==null?1:r)}, +cX(a){var s,r,q=this,p=q.eF!=null||a.b===1/0,o=q.eQ!=null||a.d===1/0,n=q.k1$ +if(n!=null){s=n.jr(new A.aG(0,a.b,0,a.d)) +if(p){n=q.eF +if(n==null)n=1 +n=s.a*n}else n=1/0 +if(o){r=q.eQ +if(r==null)r=1 +r=s.b*r}else r=1/0 +return a.bd(new A.V(n,r))}n=p?0:1/0 +return a.bd(new A.V(n,o?0:1/0))}, +bJ(){var s,r,q=this,p=t.k.a(A.H.prototype.gZ.call(q)),o=q.eF!=null||p.b===1/0,n=q.eQ!=null||p.d===1/0,m=q.k1$ +if(m!=null){m.d_(new A.aG(0,p.b,0,p.d),!0) +if(o){m=q.k1$.gu(0) +s=q.eF +if(s==null)s=1 +s=m.a*s +m=s}else m=1/0 +if(n){s=q.k1$.gu(0) +r=q.eQ +if(r==null)r=1 +r=s.b*r +s=r}else s=1/0 +q.id=p.bd(new A.V(m,s)) +q.Fl()}else{m=o?0:1/0 +q.id=p.bd(new A.V(m,n?0:1/0))}}} +A.a7X.prototype={ +ga8m(){return this.eF}, +sa8m(a){var s,r=this +if(J.q(r.eF,a))return +r.eF=a +s=r.h9 +if(s==null||!s.l(0,a.$1(t.k.a(A.H.prototype.gZ.call(r)))))r.a9()}, +bh(a){return this.a13(this.FL(new A.aG(0,a,0,1/0)).b)}, +bi(a){return this.a11(this.FL(new A.aG(0,a,0,1/0)).b)}, +bo(a){return this.a14(this.FL(new A.aG(0,1/0,0,a)).d)}, +bb(a){return this.a12(this.FL(new A.aG(0,1/0,0,a)).d)}, +cX(a){var s=this.k1$,r=s==null?null:s.jr(this.FL(a)) +return r==null?new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d)):a.bd(r)}, +bJ(){var s,r,q,p,o=this,n=t.k.a(A.H.prototype.gZ.call(o)),m=o.k1$ +if(m!=null){s=o.FL(n) +o.h9=s +m.d_(s,!0) +o.id=n.bd(m.gu(0)) +o.Fl() +r=m.b +r.toString +t.r.a(r) +q=o.gu(0) +o.eR=new A.W(0,0,0+q.a,0+q.b) +r=r.a +q=m.gu(0) +p=r.a +r=r.b +q=o.eG=new A.W(p,r,p+q.a,r+q.b) +r=q}else{o.id=new A.V(A.Z(0,n.a,n.b),A.Z(0,n.c,n.d)) +r=o.eG=o.eR=B.a8}r=A.cLw(o.eR,r) +o.eS=r.a>0||r.b>0||r.c>0||r.d>0}, +aI(a,b){var s,r,q,p=this +if(p.k1$==null||p.gu(0).gad(0))return +if(!p.eS){p.ahn(a,b) +return}s=p.jA +r=p.cx +r===$&&A.b() +q=p.gu(0) +s.sb9(0,a.nV(r,b,new A.W(0,0,0+q.a,0+q.b),A.EX.prototype.gk0.call(p),p.eQ,s.a))}, +m(){this.jA.sb9(0,null) +this.aRW()}, +rq(a){var s +switch(this.eQ.a){case 0:return null +case 1:case 2:case 3:if(this.eS){s=this.gu(0) +s=new A.W(0,0,0+s.a,0+s.b)}else s=null +return s}}, +hL(){return this.a0W()}, +FL(a){return this.ga8m().$1(a)}} +A.a83.prototype={ +saed(a){return}, +sab4(a){if(this.eQ===a)return +this.eQ=a +this.a9()}, +TN(a){var s=a.d*this.eQ +return new A.aG(a.a,a.b,s,s)}, +bo(a){var s,r,q=this.k1$ +if(q==null)s=this.a14(a) +else{r=this.eQ +s=q.aw(B.ad,a*r,q.gbG())}return s/1}, +bb(a){var s,r,q=this.k1$ +if(q==null)s=this.a12(a) +else{r=this.eQ +s=q.aw(B.aj,a*r,q.gbL())}return s/1}, +bh(a){var s,r=this.k1$ +if(r==null)s=this.a13(a) +else s=r.aw(B.ao,a,r.gbP()) +r=this.eQ +return s/r}, +bi(a){var s,r=this.k1$ +if(r==null)s=this.a11(a) +else s=r.aw(B.ay,a,r.gbZ()) +r=this.eQ +return s/r}, +cX(a){var s=this.k1$ +if(s!=null)return a.bd(s.jr(this.TN(a))) +return a.bd(this.TN(a).bd(B.A))}, +bJ(){var s=this,r=s.k1$,q=t.k +if(r!=null){r.d_(s.TN(q.a(A.H.prototype.gZ.call(s))),!0) +s.id=q.a(A.H.prototype.gZ.call(s)).bd(s.k1$.gu(0)) +s.Fl()}else s.id=q.a(A.H.prototype.gZ.call(s)).bd(s.TN(q.a(A.H.prototype.gZ.call(s))).bd(B.A))}} +A.bG1.prototype={ +Ae(a){return new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d))}, +A8(a){return a}, +Aa(a,b){return B.h}} +A.a8_.prototype={ +sdW(a){var s=this.G +if(s===a)return +if(A.I(a)!==A.I(s)||a.nt(s))this.a9() +this.G=a}, +aA(a){this.ahH(a)}, +ar(a){this.ahI(0)}, +bo(a){var s=A.mT(a,1/0),r=s.bd(this.G.Ae(s)).a +if(isFinite(r))return r +return 0}, +bb(a){var s=A.mT(a,1/0),r=s.bd(this.G.Ae(s)).a +if(isFinite(r))return r +return 0}, +bh(a){var s=A.mT(1/0,a),r=s.bd(this.G.Ae(s)).b +if(isFinite(r))return r +return 0}, +bi(a){var s=A.mT(1/0,a),r=s.bd(this.G.Ae(s)).b +if(isFinite(r))return r +return 0}, +cX(a){return a.bd(this.G.Ae(a))}, +bJ(){var s,r,q,p,o,n=this,m=t.k,l=m.a(A.H.prototype.gZ.call(n)) +n.id=l.bd(n.G.Ae(l)) +if(n.k1$!=null){s=n.G.A8(m.a(A.H.prototype.gZ.call(n))) +m=n.k1$ +m.toString +l=s.a +r=s.b +q=l>=r +m.d_(s,!(q&&s.c>=s.d)) +m=n.k1$.b +m.toString +t.r.a(m) +p=n.G +o=n.gu(0) +m.a=p.Aa(o,q&&s.c>=s.d?new A.V(A.Z(0,l,r),A.Z(0,s.c,s.d)):n.k1$.gu(0))}}} +A.ahj.prototype={ +m(){var s,r,q +for(s=this.wc$,r=s.length,q=0;qa}else s=!1 +if(!s)break;++o +s=r.b +s.toString +r=q.a(s).dJ$}return o}, +RU(a){var s +this.gNx() +s=this.gXF() +s.toString +return t.q.a(A.H.prototype.gZ.call(this)).avt(s,s)}, +bJ(){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,a5=null,a6=t.q.a(A.H.prototype.gZ.call(a4)),a7=a4.be +a7.p3=!1 +s=a4.gXF() +if(s==null)s=0 +r=a6.d +q=r+a6.z +p=q+a6.Q +a4.fG=new A.aES(r,a6.e,a6.y,a6.w) +o=a4.aIW(q,s) +n=isFinite(p)?a4.aeM(p,s):a5 +if(a4.Y$!=null){m=a4.aXH(o) +a4.BJ(m,n!=null?a4.aXJ(n):0)}else a4.BJ(0,0) +if(a4.Y$==null)if(!a4.a77(o,a4.zp(s,o))){l=o<=0?0:a4.br_(a6,s) +a4.fx=A.i5(a5,a5,!1,a5,a5,l,0,0,0,l,a5,a5) +a7.BY() +return}k=a4.Y$ +k.toString +k=k.b +k.toString +j=t.c +k=j.a(k).b +k.toString +i=k-1 +h=a5 +for(;i>=o;--i){g=a4.aB4(a4.RU(i)) +if(g==null){a4.fx=A.i5(a5,a5,!1,a5,a5,0,0,0,0,0,a4.zp(s,i),a5) +return}k=g.b +k.toString +j.a(k).a=a4.zp(s,i) +if(h==null)h=g}if(h==null){k=a4.Y$ +k.toString +f=k.b +f.toString +f=j.a(f).b +f.toString +k.j1(a4.RU(f)) +f=a4.Y$.b +f.toString +j.a(f).a=a4.zp(s,o) +h=a4.Y$}k=h.b +k.toString +k=j.a(k).b +k.toString +i=k+1 +k=A.z(a4).h("ap.1") +f=n!=null +while(!0){if(!(!f||i<=n)){e=1/0 +break}d=h.b +d.toString +g=k.a(d).a7$ +if(g!=null){d=g.b +d.toString +d=j.a(d).b +d.toString +d=d!==i}else d=!0 +if(d){g=a4.aB2(a4.RU(i),h) +if(g==null){e=a4.zp(s,i) +break}}else g.j1(a4.RU(i)) +d=g.b +d.toString +j.a(d) +c=d.b +c.toString +d.a=a4.zp(s,c);++i +h=g}k=a4.d7$ +k.toString +k=k.b +k.toString +k=j.a(k).b +k.toString +b=a4.zp(s,o) +a=a4.zp(s,k+1) +e=Math.min(e,a7.aa5(a6,o,k,b,a)) +a0=a4.nC(a6,b,a) +a1=a4.vV(a6,b,a) +a2=r+a6.r +a3=isFinite(a2)?a4.aeM(a2,s):a5 +a4.fx=A.i5(a1,a5,a3!=null&&k>=a3||r>0,a5,a5,e,0,a0,0,e,a5,a5) +if(e===a)a7.p3=!0 +a7.BY()}} +A.bGA.prototype={ +aIq(a){var s=this.c +return a.Fu(this.d,s,s)}, +k(a){var s=this +return"SliverGridGeometry("+B.b.bQ(A.a(["scrollOffset: "+A.r(s.a),"crossAxisOffset: "+A.r(s.b),"mainAxisExtent: "+A.r(s.c),"crossAxisExtent: "+A.r(s.d)],t.s),", ")+")"}} +A.bGB.prototype={} +A.a9R.prototype={ +aIR(a){var s=this.b +if(s>0)return Math.max(0,this.a*B.e.dO(a/s)-1) +return 0}, +b2n(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}, +a_A(a){var s=this,r=s.a,q=B.d.M(a,r) +return new A.bGA(B.d.hf(a,r)*s.b,s.b2n(q*s.c),s.d,s.e)}, +axf(a){var s +if(a===0)return 0 +s=this.b +return s*(B.d.hf(a-1,this.a)+1)-(s-this.d)}} +A.bGy.prototype={} +A.bGz.prototype={ +PI(a){var s=this,r=a.w,q=s.c,p=Math.max(1,B.e.dO(r/(s.a+q))),o=Math.max(0,r-q*(p-1))/p,n=o/s.d +return new A.a9R(p,n+s.b,o+q,n,o,A.Zg(a.x))}, +nt(a){var s=this +return a.a!==s.a||a.b!==s.b||a.c!==s.c||a.d!==s.d||!1}} +A.V8.prototype={ +k(a){return"crossAxisOffset="+A.r(this.w)+"; "+this.aQJ(0)}} +A.aD9.prototype={ +fo(a){if(!(a.b instanceof A.V8))a.b=new A.V8(!1,null,null)}, +saJw(a){var s=this +if(s.fG===a)return +if(A.I(a)!==A.I(s.fG)||a.nt(s.fG))s.a9() +s.fG=a}, +FF(a){var s=a.b +s.toString +s=t.h5.a(s).w +s.toString +return s}, +bJ(){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,b0=t.q.a(A.H.prototype.gZ.call(a8)),b1=a8.be +b1.p3=!1 +s=b0.d +r=s+b0.z +q=r+b0.Q +p=a8.fG.PI(b0) +o=p.b +n=o>1e-10?p.a*B.e.hf(r,o):0 +m=isFinite(q)?p.aIR(q):a9 +if(a8.Y$!=null){l=a8.biy(n) +a8.BJ(l,m!=null?a8.biz(m):0)}else a8.BJ(0,0) +k=p.a_A(n) +if(a8.Y$==null)if(!a8.a77(n,k.a)){j=p.axf(b1.gqb()) +a8.fx=A.i5(a9,a9,!1,a9,a9,j,0,0,0,j,a9,a9) +b1.BY() +return}i=k.a +h=i+k.c +o=a8.Y$ +o.toString +o=o.b +o.toString +g=t.c +o=g.a(o).b +o.toString +f=o-1 +o=t.h5 +e=a9 +for(;f>=n;--f){d=p.a_A(f) +c=d.c +b=a8.aB4(b0.Fu(d.d,c,c)) +a=b.b +a.toString +o.a(a) +a0=d.a +a.a=a0 +a.w=d.b +if(e==null)e=b +h=Math.max(h,a0+c)}if(e==null){c=a8.Y$ +c.toString +c.j1(k.aIq(b0)) +e=a8.Y$ +c=e.b +c.toString +o.a(c) +c.a=i +c.w=k.b}c=e.b +c.toString +c=g.a(c).b +c.toString +f=c+1 +c=A.z(a8).h("ap.1") +a=m!=null +while(!0){if(!(!a||f<=m)){a1=!1 +break}d=p.a_A(f) +a0=d.c +a2=b0.Fu(d.d,a0,a0) +a3=e.b +a3.toString +b=c.a(a3).a7$ +if(b!=null){a3=b.b +a3.toString +a3=g.a(a3).b +a3.toString +a3=a3!==f}else a3=!0 +if(a3){b=a8.aB2(a2,e) +if(b==null){a1=!0 +break}}else b.j1(a2) +a3=b.b +a3.toString +o.a(a3) +a4=d.a +a3.a=a4 +a3.w=d.b +h=Math.max(h,a4+a0);++f +e=b}o=a8.d7$ +o.toString +o=o.b +o.toString +o=g.a(o).b +o.toString +a5=a1?h:b1.aa5(b0,n,o,i,h) +a6=a8.nC(b0,Math.min(s,i),h) +a7=a8.vV(b0,i,h) +a8.fx=A.i5(a7,a9,a5>a6||s>0||b0.f!==0,a9,a9,a5,0,a6,0,a5,a9,a9) +if(a5===h)b1.p3=!0 +b1.BY()}, +biy(a){var s,r=this.Y$,q=A.z(this).h("ap.1"),p=t.c,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).dJ$}return o}} +A.aDa.prototype={ +bJ(){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.q.a(A.H.prototype.gZ.call(a3)),a7=a3.be +a7.p3=!1 +s=a6.d +r=s+a6.z +q=r+a6.Q +p=a6.V4() +if(a3.Y$==null)if(!a3.auW()){a3.fx=B.lT +a7.BY() +return}a5.a=null +o=a3.Y$ +n=o.b +n.toString +m=t.c +if(m.a(n).a==null){n=A.z(a3).h("ap.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).a7$;++l}a3.BJ(l,0) +if(a3.Y$==null)if(!a3.auW()){a3.fx=B.lT +a7.BY() +return}}o=a3.Y$ +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.abf(p,!0) +if(o==null){n=a3.Y$ +k=n.b +k.toString +m.a(k).a=0 +if(r===0){n.d_(p,!0) +o=a3.Y$ +if(a5.a==null)a5.a=o +i=o +break}else{a3.fx=A.i5(a4,a4,!1,a4,a4,0,0,0,0,0,-r,a4) +return}}n=a3.Y$ +n.toString +h=j-a3.CQ(n) +if(h<-1e-10){a3.fx=A.i5(a4,a4,!1,a4,a4,0,0,0,0,0,-h,a4) +a7=a3.Y$.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.Y$ +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.abf(p,!0) +k=a3.Y$ +k.toString +h=n-a3.CQ(k) +k=a3.Y$.b +k.toString +m.a(k).a=0 +if(h<-1e-10){a3.fx=A.i5(a4,a4,!1,a4,a4,0,0,0,0,0,-h,a4) +return}}if(i==null){o.d_(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.CQ(o) +g=new A.bBu(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.p3=!0 +a7.BY()}} +A.bBu.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.z(s).h("ap.1").a(o).a7$ +o=r==null +if(o)p.b=!1 +q=++p.d +if(!p.b){if(!o){o=r.b +o.toString +o=t.c.a(o).b +o.toString +q=o!==q +o=q}else o=!0 +q=this.c +if(o){r=s.aB3(q,n,!0) +p.c=r +if(r==null)return!1}else r.d_(q,!0) +o=p.a=p.c}else o=r +n=o.b +n.toString +t.c.a(n) +q=p.e +n.a=q +p.e=q+s.CQ(o) +return!0}, +$S:3} +A.u2.prototype={$idT:1} +A.bBz.prototype={ +fo(a){}} +A.lL.prototype={ +k(a){var s=this.b,r=this.Gq$?"keepAlive; ":"" +return"index="+A.r(s)+"; "+r+this.aQI(0)}} +A.A2.prototype={ +fo(a){if(!(a.b instanceof A.lL))a.b=new A.lL(!1,null,null)}, +lB(a){var s +this.ahi(a) +s=a.b +s.toString +if(!t.c.a(s).c)this.be.a9t(t.x.a(a))}, +abe(a,b,c){this.a0D(0,b,c)}, +NW(a,b){var s,r=this,q=a.b +q.toString +t.c.a(q) +if(!q.c){r.aO6(a,b) +r.be.a9t(a) +r.a9()}else{s=r.bj +if(s.i(0,q.b)===a)s.F(0,q.b) +r.be.a9t(a) +q=q.b +q.toString +s.n(0,q,a)}}, +F(a,b){var s=b.b +s.toString +t.c.a(s) +if(!s.c){this.aO7(0,b) +return}this.bj.F(0,s.b) +this.oo(b)}, +a2k(a,b){this.Cu(new A.bBv(this,a,b),t.q)}, +akB(a){var s,r=this,q=a.b +q.toString +t.c.a(q) +if(q.Gq$){r.F(0,a) +s=q.b +s.toString +r.bj.n(0,s,a) +a.b=q +r.ahi(a) +q.c=!0}else r.be.Zk(a)}, +aA(a){var s,r,q +this.aS9(a) +for(s=this.bj.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a;(q==null?r.a(q):q).aA(a)}}, +ar(a){var s,r,q +this.aSa(0) +for(s=this.bj.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a;(q==null?r.a(q):q).ar(0)}}, +lN(){this.agu() +this.bj.gbm(0).aE(0,this.gad9())}, +d0(a){this.QL(a) +this.bj.gbm(0).aE(0,a)}, +lm(a){this.QL(a)}, +a77(a,b){var s +this.a2k(a,null) +s=this.Y$ +if(s!=null){s=s.b +s.toString +t.c.a(s).a=b +return!0}this.be.p3=!0 +return!1}, +auW(){return this.a77(0,0)}, +abf(a,b){var s,r,q,p=this,o=p.Y$ +o.toString +o=o.b +o.toString +s=t.c +o=s.a(o).b +o.toString +r=o-1 +p.a2k(r,null) +o=p.Y$ +o.toString +q=o.b +q.toString +q=s.a(q).b +q.toString +if(q===r){o.d_(a,b) +return p.Y$}p.be.p3=!0 +return null}, +aB4(a){return this.abf(a,!1)}, +aB3(a,b,c){var s,r,q,p=b.b +p.toString +s=t.c +p=s.a(p).b +p.toString +r=p+1 +this.a2k(r,b) +p=b.b +p.toString +q=A.z(this).h("ap.1").a(p).a7$ +if(q!=null){p=q.b +p.toString +p=s.a(p).b +p.toString +p=p===r}else p=!1 +if(p){q.d_(a,c) +return q}this.be.p3=!0 +return null}, +aB2(a,b){return this.aB3(a,b,!1)}, +BJ(a,b){var s={} +s.a=a +s.b=b +this.Cu(new A.bBx(s,this),t.q)}, +CQ(a){switch(A.cO(t.q.a(A.H.prototype.gZ.call(this)).a).a){case 0:return a.gu(0).a +case 1:return a.gu(0).b}}, +zj(a,b,c){var s,r,q=this.d7$,p=A.b6I(a) +for(s=A.z(this).h("ap.1");q!=null;){if(this.Xq(p,q,b,c))return!0 +r=q.b +r.toString +q=s.a(r).dJ$}return!1}, +nF(a){var s=a.b +s.toString +s=t.c.a(s).a +s.toString +return s-t.q.a(A.H.prototype.gZ.call(this)).d}, +Vv(a){var s=a.b +s.toString +return t.c.a(s).a}, +zK(a){var s=t.MR.a(a.b) +return(s==null?null:s.b)!=null&&!this.bj.aB(0,s.b)}, +hh(a,b){if(!this.zK(a))b.j8() +else this.avq(a,b)}, +aI(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.Y$==null)return +s=t.q +switch(A.mN(s.a(A.H.prototype.gZ.call(c)).a,s.a(A.H.prototype.gZ.call(c)).b).a){case 0:r=a0.S(0,new A.j(0,c.fx.c)) +q=B.S_ +p=B.jx +o=!0 +break +case 1:r=a0 +q=B.jx +p=B.hX +o=!1 +break +case 2:r=a0 +q=B.hX +p=B.jx +o=!1 +break +case 3:r=a0.S(0,new A.j(c.fx.c,0)) +q=B.Sr +p=B.hX +o=!0 +break +default:o=b +r=o +p=r +q=p}n=c.Y$ +for(m=A.z(c).h("ap.1"),l=t.c;n!=null;){k=n.b +k.toString +k=l.a(k).a +k.toString +j=k-s.a(A.H.prototype.gZ.call(c)).d +i=c.FF(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.j(k,g) +if(o){d=c.CQ(n) +e=new A.j(k+h*d,g+f*d)}if(j0)a.eM(n,e) +k=n.b +k.toString +n=m.a(k).a7$}}} +A.bBv.prototype={ +$1(a){var s=this.a,r=s.bj,q=this.b,p=this.c +if(r.aB(0,q)){r=r.F(0,q) +r.toString +q=r.b +q.toString +t.c.a(q) +s.oo(r) +r.b=q +s.a0D(0,r,p) +q.c=!1}else s.be.a8W(q,p)}, +$S:193} +A.bBx.prototype={ +$1(a){var s,r,q +for(s=this.a,r=this.b;s.a>0;){q=r.Y$ +q.toString +r.akB(q);--s.a}for(;s.b>0;){q=r.d7$ +q.toString +r.akB(q);--s.b}s=r.bj.gbm(0) +q=A.z(s).h("b1") +B.b.aE(A.R(new A.b1(s,new A.bBw(),q),!0,q.h("B.E")),r.be.gbFI())}, +$S:193} +A.bBw.prototype={ +$1(a){var s=a.b +s.toString +return!t.c.a(s).Gq$}, +$S:612} +A.ahQ.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.c;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.c;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aVe.prototype={} +A.aVf.prototype={} +A.aWW.prototype={ +ar(a){this.E3(0)}} +A.aWX.prototype={} +A.a8k.prototype={ +ga7w(){var s=this,r=t.q +switch(A.mN(r.a(A.H.prototype.gZ.call(s)).a,r.a(A.H.prototype.gZ.call(s)).b).a){case 0:return s.gj5().d +case 1:return s.gj5().a +case 2:return s.gj5().b +case 3:return s.gj5().c}}, +gbmA(){var s=this,r=t.q +switch(A.mN(r.a(A.H.prototype.gZ.call(s)).a,r.a(A.H.prototype.gZ.call(s)).b).a){case 0:return s.gj5().b +case 1:return s.gj5().c +case 2:return s.gj5().d +case 3:return s.gj5().a}}, +gbsX(){switch(A.cO(t.q.a(A.H.prototype.gZ.call(this)).a).a){case 0:var s=this.gj5() +return s.gdM(0)+s.gdT(0) +case 1:return this.gj5().geL()}}, +fo(a){if(!(a.b instanceof A.qJ))a.b=new A.qJ(B.h)}, +bJ(){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.q,a3=a2.a(A.H.prototype.gZ.call(a0)),a4=a0.ga7w() +a0.gbmA() +s=a0.gj5() +s.toString +r=s.bmE(A.cO(a2.a(A.H.prototype.gZ.call(a0)).a)) +q=a0.gbsX() +if(a0.k1$==null){p=a0.nC(a3,0,r) +a0.fx=A.i5(a0.vV(a3,0,r),a1,!1,a1,a1,r,0,Math.min(p,a3.r),0,r,a1,a1) +return}o=a0.nC(a3,0,a4) +n=a3.f +if(n>0)n=Math.max(0,n-o) +a2=a0.k1$ +a2.toString +s=Math.max(0,a3.d-a4) +m=Math.min(0,a3.z+a4) +l=a3.r +k=a0.nC(a3,0,a4) +j=a3.Q +i=a0.vV(a3,0,a4) +h=Math.max(0,a3.w-q) +g=a3.a +f=a3.b +a2.d_(new A.Aj(g,f,a3.c,s,a4+a3.e,n,l-k,h,a3.x,a3.y,m,j-i),!0) +e=a0.k1$.fx +a2=e.y +if(a2!=null){a0.fx=A.i5(a1,a1,!1,a1,a1,0,0,0,0,0,a2,a1) +return}a2=e.a +s=a4+a2 +m=r+a2 +d=a0.nC(a3,s,m) +c=o+d +b=a0.vV(a3,0,a4) +a=a0.vV(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.i5(j,a1,e.x,s,k,r+i,0,p,l,m,a1,a1) +m=a0.k1$.b +m.toString +t.jB.a(m) +switch(A.mN(g,f).a){case 0:m.a=new A.j(a0.gj5().a,a0.nC(a3,a0.gj5().d+a2,a0.gj5().d+a2+a0.gj5().b)) +break +case 1:m.a=new A.j(a0.nC(a3,0,a0.gj5().a),a0.gj5().b) +break +case 2:m.a=new A.j(a0.gj5().a,a0.nC(a3,0,a0.gj5().b)) +break +case 3:m.a=new A.j(a0.nC(a3,a0.gj5().c+a2,a0.gj5().c+a2+a0.gj5().a),a0.gj5().b) +break}}, +zj(a,b,c){var s,r,q=this,p=q.k1$ +if(p!=null&&p.fx.r>0){p=p.b +p.toString +t.jB.a(p) +s=q.nC(t.q.a(A.H.prototype.gZ.call(q)),0,q.ga7w()) +r=q.k1$ +r.toString +r=q.FF(r) +p=p.a +a.ava(r,b,q.k1$.gaAD(),s,c,p)}return!1}, +FF(a){var s=this,r=t.q +switch(A.mN(r.a(A.H.prototype.gZ.call(s)).a,r.a(A.H.prototype.gZ.call(s)).b).a){case 0:case 2:return s.gj5().a +case 3:case 1:return s.gj5().b}}, +Vv(a){return this.ga7w()}, +hh(a,b){var s=a.b +s.toString +s=t.jB.a(s).a +b.ba(0,s.a,s.b)}, +aI(a,b){var s,r=this.k1$ +if(r!=null&&r.fx.w){s=r.b +s.toString +a.eM(r,b.S(0,t.jB.a(s).a))}}} +A.aDd.prototype={ +gj5(){return this.eX}, +biA(){if(this.eX!=null)return +this.eX=this.dr}, +sdX(a,b){var s=this +if(s.dr.l(0,b))return +s.dr=b +s.eX=null +s.a9()}, +sd5(a){var s=this +if(s.dQ===a)return +s.dQ=a +s.eX=null +s.a9()}, +bJ(){this.biA() +this.aho()}} +A.aVa.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.bvo.prototype={} +A.bx5.prototype={} +A.aDe.prototype={ +gmZ(){var s=this +if(s.k1$==null)return 0 +switch(A.cO(t.q.a(A.H.prototype.gZ.call(s)).a).a){case 1:return s.k1$.gu(0).b +case 0:return s.k1$.gu(0).a}}, +aFY(a,b){}, +a9(){this.bj=!0 +this.a0V()}, +abF(a,b,c){var s,r,q=this,p=Math.min(a,b) +if(q.bj||q.bU!==p||q.e7!==c){q.Cu(new A.bBy(q,p,c),t.q) +q.bU=p +q.e7=c +q.bj=!1}s=q.dd!=null&&t.q.a(A.H.prototype.gZ.call(q)).d===0?0+Math.abs(t.q.a(A.H.prototype.gZ.call(q)).f):0 +r=q.k1$ +if(r!=null)r.d_(t.q.a(A.H.prototype.gZ.call(q)).bmW(Math.max(q.gbB8(),b-p)+s),!0) +q.be=s}, +j2(a,b){return this.abF(a,b,!1)}, +nF(a){return this.aPZ(a)}, +zj(a,b,c){var s=this.k1$ +if(s!=null)return this.Xq(A.b6I(a),s,b,c) +return!1}, +hh(a,b){this.avq(t.x.a(a),b)}, +aI(a,b){var s,r,q=this +if(q.k1$!=null&&q.fx.w){s=t.q +switch(A.mN(s.a(A.H.prototype.gZ.call(q)).a,s.a(A.H.prototype.gZ.call(q)).b).a){case 0:s=q.fx.c +r=q.k1$ +r.toString +b=b.S(0,new A.j(0,s-q.nF(r)-q.gmZ())) +break +case 2:s=q.k1$ +s.toString +b=b.S(0,new A.j(0,q.nF(s))) +break +case 3:s=q.fx.c +r=q.k1$ +r.toString +b=b.S(0,new A.j(s-q.nF(r)-q.gmZ(),0)) +break +case 1:s=q.k1$ +s.toString +b=b.S(0,new A.j(q.nF(s),0)) +break}s=q.k1$ +s.toString +a.eM(s,b)}}, +ji(a){this.kH(a) +a.UT(B.XJ)}} +A.bBy.prototype={ +$1(a){this.a.aFY(this.b,this.c)}, +$S:193} +A.aDg.prototype={ +bJ(){var s,r,q,p,o,n=this,m=null,l=t.q,k=l.a(A.H.prototype.gZ.call(n)),j=n.or$.e +j.toString +s=t.Mh +r=s.a(j).c.glI() +j=k.d +n.j2(j,r) +q=Math.min(k.f,0) +n.fx=A.i5(m,m,!0,m,m,r,0,A.Z(r-j,0,k.r),q,r,m,m) +p=n.dd!=null?0+Math.abs(l.a(A.H.prototype.gZ.call(n)).f):0 +j=n.or$.e +j.toString +r=s.a(j).c.glI() +o=r-l.a(A.H.prototype.gZ.call(n)).d +j=Math.min(l.a(A.H.prototype.gZ.call(n)).f,0) +n.fx=A.i5(m,m,!0,m,m,r+p,0,A.Z(o,0,l.a(A.H.prototype.gZ.call(n)).r),j,r,m,m) +n.eT=p>0?0:Math.min(0,o-n.gmZ())}, +nF(a){var s=this.eT +s.toString +return s}} +A.a8l.prototype={ +bJ(){var s,r,q,p,o,n,m,l=this,k=null,j=t.q.a(A.H.prototype.gZ.call(l)),i=l.or$.e +i.toString +s=t.Mh +r=s.a(i).c.glI() +i=j.f +q=j.d +l.abF(q,r,i>0) +p=Math.max(0,j.r-i) +o=A.Z(r-q,0,p) +n=l.dd!=null?Math.abs(i):0 +q=Math.min(l.gmZ(),p) +m=l.or$.e +m.toString +s.a(m) +s=o>0?-j.z+o:o +l.fx=A.i5(s,k,!0,k,o,r+n,m.c.db,q,i,r,k,k)}, +nF(a){return 0}, +fY(a,b,c,d){var s,r,q,p=this +if(b!=null){s=b.cf(0,p) +r=A.io(s,d==null?b.gpA():d)}else r=d +s=t.q +switch(A.mN(s.a(A.H.prototype.gZ.call(p)).a,s.a(A.H.prototype.gZ.call(p)).b).a){case 0:q=A.On(r,p.gmZ(),-1/0,1/0,-1/0) +break +case 1:q=A.On(r,1/0,0,1/0,-1/0) +break +case 2:q=A.On(r,1/0,-1/0,1/0,0) +break +case 3:q=A.On(r,1/0,-1/0,p.gmZ(),-1/0) +break +default:q=null}p.xw(a,p,c,q)}, +r0(){return this.fY(B.az,null,B.w,null)}, +oL(a){return this.fY(B.az,null,B.w,a)}, +pQ(a,b,c){return this.fY(a,null,b,c)}, +oM(a,b){return this.fY(B.az,a,B.w,b)}} +A.A1.prototype={ +ar(a){var s=this.eT +if(s!=null)s.m() +this.eT=null +this.aSd(0)}, +sI9(a){var s +if(a===this.ac)return +this.ac=a +s=this.eT +if(s!=null)s.aF8(a)}, +aG2(){var s,r,q,p,o=this,n=null,m=o.dd!=null?0+Math.abs(t.q.a(A.H.prototype.gZ.call(o)).f):0,l=o.glI(),k=o.dF +k.toString +s=l-k +k=t.q +r=k.a(A.H.prototype.gZ.call(o)) +q=Math.min(k.a(A.H.prototype.gZ.call(o)).f,0) +p=A.Z(s,0,k.a(A.H.prototype.gZ.call(o)).r) +o.fx=A.i5(n,n,!0,n,A.Z(l-r.d,0,k.a(A.H.prototype.gZ.call(o)).r),l+m,0,p,q,l,n,n) +return m>0?0:Math.min(0,s-o.gmZ())}, +ato(a,b,c){var s,r,q,p=this,o=p.eT +if(o==null){o=A.bQ(null,a,null,1,null,p.ac) +o.cY() +s=o.em$ +s.b=!0 +s.a.push(new A.bBs(p)) +p.eT=o}s=p.dF +r=t.Y +q=r.h("eb") +p.fG=new A.aB(t.o.a(o),new A.eb(new A.eA(c),new A.aP(s,b,r),q),q.h("aB"))}, +bAY(a){var s,r,q=this,p=q.aS +if(p==null)return +s=a===B.fg +if(s){r=q.dF +r.toString +r=r<=0}else r=!1 +if(r)return +if(a===B.ia){r=q.dF +r.toString +r=r>=q.glI()}else r=!1 +if(r)return +r=p.b +s=s?0:q.glI() +q.ato(r,s,p.a) +s=q.eT +if(s!=null)s.l9(0,0)}, +bJ(){var s,r,q,p,o=this,n=t.q.a(A.H.prototype.gZ.call(o)),m=o.glI(),l=o.mf +if(l!=null)if(!(n.dm)o.dF=m}else if(q>0)q=0 +l=o.dF +l.toString +l=o.dF=A.Z(l-q,0,r)}else{o.dF=r +l=r}o.abF(l,m,ll.gmZ()){r=l.eT +if(r==null)r=k +else{r=r.Q +r===$&&A.b()}r=r!==B.bg}else r=!1 +if(r){l.ato(c,l.glI()-o,a) +r=l.eT +if(r!=null)r.l9(0,0)}l.xw(a,s?l:l.k1$,c,n)}, +r0(){return this.fY(B.az,null,B.w,null)}, +oL(a){return this.fY(B.az,null,B.w,a)}, +pQ(a,b,c){return this.fY(a,null,b,c)}, +oM(a,b){return this.fY(B.az,a,B.w,b)}, +nF(a){var s=this.G +return s==null?0:s}} +A.bBs.prototype={ +$0(){var s,r=this.a,q=r.dF,p=r.fG +p===$&&A.b() +s=p.a +s=p.b.ah(0,s.gj(s)) +if(q==null?s==null:q===s)return +q=r.fG +p=q.a +r.dF=q.b.ah(0,p.gj(p)) +r.bj=!0 +r.a0V()}, +$S:0} +A.aD8.prototype={ +aG2(){var s,r,q,p,o,n,m,l=this,k=null,j=l.or$.e +j.toString +s=t.Mh +r=s.a(j).c.db +j=t.q +q=j.a(A.H.prototype.gZ.call(l)).r>r?r:j.a(A.H.prototype.gZ.call(l)).r +p=l.or$.e +p.toString +o=s.a(p).c.glI() +p=l.dF +p.toString +n=A.Z(o-p,q,j.a(A.H.prototype.gZ.call(l)).r) +p=j.a(A.H.prototype.gZ.call(l)) +m=l.dd!=null?Math.abs(j.a(A.H.prototype.gZ.call(l)).f):0 +j=Math.min(j.a(A.H.prototype.gZ.call(l)).f,0) +l.fx=A.i5(k,k,!0,k,A.Z(o-p.d,0,n),o+m,r,n,j,o,k,k) +return 0}} +A.ahS.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.aVg.prototype={} +A.pq.prototype={ +eD(a){var s=this,r=a.a,q=a.b +return new A.pq(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.pq&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +gv(a){var s=this +return A.ad(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)}, +k(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.jv.prototype={ +gNw(){var s=this +return s.e!=null||s.f!=null||s.r!=null||s.w!=null||s.x!=null||s.y!=null}, +k(a){var s=this,r=A.a([],t.s),q=s.e +if(q!=null)r.push("top="+A.r0(q)) +q=s.f +if(q!=null)r.push("right="+A.r0(q)) +q=s.r +if(q!=null)r.push("bottom="+A.r0(q)) +q=s.w +if(q!=null)r.push("left="+A.r0(q)) +q=s.x +if(q!=null)r.push("width="+A.r0(q)) +q=s.y +if(q!=null)r.push("height="+A.r0(q)) +if(r.length===0)r.push("not positioned") +r.push(s.J9(0)) +return B.b.bQ(r,"; ")}} +A.aa1.prototype={ +H(){return"StackFit."+this.b}} +A.Uh.prototype={ +fo(a){if(!(a.b instanceof A.jv))a.b=new A.jv(null,null,B.h)}, +biI(){var s=this +if(s.N!=null)return +s.N=s.a4.a5(s.ag)}, +siN(a){var s=this +if(s.a4.l(0,a))return +s.a4=a +s.N=null +s.a9()}, +sd5(a){var s=this +if(s.ag==a)return +s.ag=a +s.N=null +s.a9()}, +srB(a){if(this.aq!==a){this.aq=a +this.a9()}}, +soi(a){var s=this +if(a!==s.aJ){s.aJ=a +s.aV() +s.cs()}}, +bo(a){return A.LC(this.Y$,new A.bBD(a))}, +bb(a){return A.LC(this.Y$,new A.bBB(a))}, +bh(a){return A.LC(this.Y$,new A.bBC(a))}, +bi(a){return A.LC(this.Y$,new A.bBA(a))}, +il(a){return this.yH(a)}, +cX(a){return this.asf(a,A.k0())}, +asf(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +f.biI() +if(f.cT$===0){s=a.a +r=a.b +q=A.Z(1/0,s,r) +p=a.c +o=a.d +n=A.Z(1/0,p,o) +return isFinite(q)&&isFinite(n)?new A.V(A.Z(1/0,s,r),A.Z(1/0,p,o)):new A.V(A.Z(0,s,r),A.Z(0,p,o))}m=a.a +l=a.c +switch(f.aq.a){case 0:s=new A.aG(0,a.b,0,a.d) +break +case 1:s=A.y6(new A.V(A.Z(1/0,m,a.b),A.Z(1/0,l,a.d))) +break +case 2:s=a +break +default:s=null}k=f.Y$ +for(r=t.aA,j=l,i=m,h=!1;k!=null;){q=k.b +q.toString +r.a(q) +if(!q.gNw()){g=b.$2(k,s) +i=Math.max(i,g.a) +j=Math.max(j,g.b) +h=!0}k=q.a7$}return h?new A.V(i,j):new A.V(A.Z(1/0,m,a.b),A.Z(1/0,l,a.d))}, +bJ(){var s,r,q,p,o,n,m,l=this,k="RenderBox was not laid out: ",j=t.k.a(A.H.prototype.gZ.call(l)) +l.D=!1 +l.id=l.asf(j,A.k1()) +s=l.Y$ +for(r=t.aA,q=t.EP;s!=null;){p=s.b +p.toString +r.a(p) +if(!p.gNw()){o=l.N +o.toString +n=l.id +if(n==null)n=A.C(A.a0(k+A.I(l).k(0)+"#"+A.bq(l))) +m=s.id +p.a=o.Fm(q.a(n.W(0,m==null?A.C(A.a0(k+A.I(s).k(0)+"#"+A.bq(s))):m)))}else{o=l.id +if(o==null)o=A.C(A.a0(k+A.I(l).k(0)+"#"+A.bq(l))) +n=l.N +n.toString +l.D=A.cLE(s,p,o,n)||l.D}s=p.a7$}}, +ej(a,b){return this.ol(a,b)}, +YN(a,b){this.nL(a,b)}, +aI(a,b){var s,r=this,q=r.aJ!==B.i&&r.D,p=r.U +if(q){q=r.cx +q===$&&A.b() +s=r.gu(0) +p.sb9(0,a.nV(q,b,new A.W(0,0,0+s.a,0+s.b),r.gaD1(),r.aJ,p.a))}else{p.sb9(0,null) +r.YN(a,b)}}, +m(){this.U.sb9(0,null) +this.ig()}, +rq(a){var s +switch(this.aJ.a){case 0:return null +case 1:case 2:case 3:if(this.D){s=this.gu(0) +s=new A.W(0,0,0+s.a,0+s.b)}else s=null +return s}}} +A.bBD.prototype={ +$1(a){return a.aw(B.ad,this.a,a.gbG())}, +$S:31} +A.bBB.prototype={ +$1(a){return a.aw(B.aj,this.a,a.gbL())}, +$S:31} +A.bBC.prototype={ +$1(a){return a.aw(B.ao,this.a,a.gbP())}, +$S:31} +A.bBA.prototype={ +$1(a){return a.aw(B.ay,this.a,a.gbZ())}, +$S:31} +A.a86.prototype={ +lm(a){var s=this.Y$ +if(s!=null)a.$1(this.a1T())}, +a1T(){var s,r=this.Y$,q=t.aA,p=this.jm,o=0 +while(!0){if(!(r!=null&&o=a||l>=b.length||!J.q(s,b[l]) +else s=!1 +if(s){s=j.D[m] +s.toString +p.B(0,s)}}for(o=0;i=o*a,i=s||o>=j.a4||!J.q(j.D[n+o*s],k) +else s=!1 +if(s)if(!p.F(0,b[l])){s=b[l] +s.toString +j.lB(s)}}++o}p.aE(0,j.gbv_()) +j.N=a +j.a4=B.d.hf(b.length,a) +j.D=A.R(b,!0,t.Qv) +j.a9()}, +afw(a,b,c){var s=this,r=a+b*s.N,q=s.D[r] +if(q==c)return +if(q!=null)s.oo(q) +B.b.n(s.D,r,c) +if(c!=null)s.lB(c)}, +aA(a){var s,r,q,p +this.ea(a) +for(s=this.D,r=s.length,q=0;q0){l=isFinite(n)?n:m +if(0n){g=j-n +f=q +while(!0){if(!(g>1e-10&&s>1e-10))break +for(e=0,r=0;r1e-10&&f>0))break +h=g/f +for(a=0,r=0;r0)if(a0<=h){g-=a0 +a3[r]=d}else{g-=h +a3[r]=a2-h;++a}}f=a}}return a3}, +cX(a){var s,r,q,p,o,n,m,l,k,j=this +if(j.a4*j.N===0)return a.bd(B.A) +s=j.a29(a) +r=B.b.l8(s,0,new A.bBF(),t.i) +for(q=t.o3,p=0,o=0;o=0;--p){o=p+1 +q[p]=q[o]+s[o]}a2.ez=new A.bE(q,A.X(q).h("bE<1>")) +a2.dA=B.b.ga2(q)+B.b.ga2(s) +break +case 1:q[0]=0 +for(p=1;p=0;--s){q=this.D[s] +if(q!=null){p=q.b +p.toString +r.a(p) +if(a.l5(new A.bBG(b,p,q),p.a,b))return!0}}return!1}, +aI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +if(g.a4*g.N===0)return +if(g.aW!=null){s=a.gbY(a) +for(r=g.f1,q=b.a,p=b.b,o=g.gfk(),n=0;n")).aE(0,a)}, +siO(a){if(a===this.D)return +this.D=a +this.a9()}, +sa96(a){if(a===this.N)return +this.N=a +this.a9()}, +sfl(a,b){var s=this,r=s.a4 +if(b===r)return +if(s.y!=null)r.O(0,s.gnb()) +s.a4=b +if(s.y!=null)b.a3(0,s.gnb()) +s.a9()}, +sbpE(a){if(a==null)a=250 +if(a===this.ag)return +this.ag=a +this.a9()}, +sbpF(a){if(a===this.aJ)return +this.aJ=a +this.a9()}, +soi(a){var s=this +if(a!==s.U){s.U=a +s.aV() +s.cs()}}, +aA(a){this.aSf(a) +this.a4.a3(0,this.gnb())}, +ar(a){this.a4.O(0,this.gnb()) +this.aSg(0)}, +bo(a){return 0}, +bb(a){return 0}, +bh(a){return 0}, +bi(a){return 0}, +giD(){return!0}, +abG(a,b,c,d,e,f,g,h,a0,a1,a2){var s,r,q,p,o,n,m,l,k=this,j=A.cRF(k.a4.gDk(),e),i=f+h +for(s=f,r=0;c!=null;){q=a2<=0?0:a2 +p=Math.max(b,-q) +o=b-p +c.d_(new A.Aj(k.D,e,j,q,r,i-s,Math.max(0,a1-s+f),d,k.N,g,p,Math.max(0,a0+o)),!0) +n=c.fx +m=n.y +if(m!=null)return m +l=s+n.b +if(n.w||a2>0)k.adU(c,l,e) +else k.adU(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.aG6(e,n) +c=a.$1(c)}return 0}, +rq(a){var s,r,q,p,o,n +switch(this.U.a){case 0:return null +case 1:case 2:case 3:break}s=this.gu(0) +r=0+s.a +q=0+s.b +s=t.q +if(s.a(A.H.prototype.gZ.call(a)).f===0||!isFinite(s.a(A.H.prototype.gZ.call(a)).y))return new A.W(0,0,r,q) +p=s.a(A.H.prototype.gZ.call(a)).y-s.a(A.H.prototype.gZ.call(a)).r+s.a(A.H.prototype.gZ.call(a)).f +switch(A.mN(this.D,s.a(A.H.prototype.gZ.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.W(n,o,r,q)}, +a9r(a){var s,r,q,p,o=this +if(o.aq==null){s=o.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}switch(A.cO(o.D).a){case 1:o.gu(0) +o.gu(0) +s=o.aq +s.toString +r=o.gu(0) +q=o.gu(0) +p=o.aq +p.toString +return new A.W(0,0-s,0+r.a,0+q.b+p) +case 0:o.gu(0) +s=o.aq +s.toString +o.gu(0) +r=o.gu(0) +q=o.aq +q.toString +return new A.W(0-s,0,0+r.a+q,0+o.gu(0).b)}}, +aI(a,b){var s,r,q,p=this +if(p.Y$==null)return +s=p.gaAA()&&p.U!==B.i +r=p.aW +if(s){s=p.cx +s===$&&A.b() +q=p.gu(0) +r.sb9(0,a.nV(s,b,new A.W(0,0,0+q.a,0+q.b),p.gbd2(),p.U,r.a))}else{r.sb9(0,null) +p.apx(a,b)}}, +m(){this.aW.sb9(0,null) +this.ig()}, +apx(a,b){var s,r,q,p,o,n,m +for(s=this.ga87(),r=s.length,q=b.a,p=b.b,o=0;o0&&p>=0 +p=c.afm(q,p) +h=A.io(a.cf(0,c),a2) +g=c.aC7(q) +switch(t.q.a(A.H.prototype.gZ.call(q)).b.a){case 0:if(i&&a0<=0)return new A.uk(1/0,h) +p-=g +break +case 1:if(i&&a0>=1)return new A.uk(-1/0,h) +switch(a1.a){case 1:p-=h.d-h.b +break +case 0:p-=h.c-h.a +break}break}switch(a1.a){case 0:f=c.gu(0).a-g +break +case 1:f=c.gu(0).b-g +break +default:f=b}e=p-(f-j)*a0 +o=c.a4.at +o.toString +d=o-e +switch(c.D.a){case 2:h=h.ba(0,0,d) +break +case 1:h=h.ba(0,d,0) +break +case 0:h=h.ba(0,0,-d) +break +case 3:h=h.ba(0,-d,0) +break}return new A.uk(e,h)}, +Iw(a,b,c){return this.qR(a,b,null,c)}, +PJ(a,b){return this.qR(a,b,null,null)}, +ax8(a,b,c){switch(A.mN(this.D,c).a){case 0:return new A.j(0,this.gu(0).b-(b+a.fx.c)) +case 1:return new A.j(b,0) +case 2:return new A.j(0,b) +case 3:return new A.j(this.gu(0).a-(b+a.fx.c),0)}}, +fY(a,b,c,d){var s=this +if(!s.a4.r.gvO())return s.xw(a,b,c,d) +s.xw(a,null,c,A.cLF(a,b,c,s.a4,d,s))}, +r0(){return this.fY(B.az,null,B.w,null)}, +oL(a){return this.fY(B.az,null,B.w,a)}, +pQ(a,b,c){return this.fY(a,null,b,c)}, +oM(a,b){return this.fY(B.az,a,B.w,b)}, +$iEV:1} +A.bBJ.prototype={ +$1(a){var s=a.fx +return s.w||s.z>0}, +$S:613} +A.bBI.prototype={ +$1(a){var s=this,r=s.c,q=s.a,p=s.b.ax9(r,q.b) +return r.Xp(s.d,q.a,p)}, +$S:478} +A.LD.prototype={ +ahU(a,b,c,d,e,f,g,h,i){var s +this.L(0,f) +s=this.Y$ +if(s!=null)this.hw=s}, +fo(a){if(!(a.b instanceof A.qI))a.b=new A.qI(null,null,B.h)}, +sBs(a){if(a===this.ha)return +this.ha=a +this.a9()}, +sc1(a){if(a==this.hw)return +this.hw=a +this.a9()}, +gka(){return!0}, +cX(a){return new A.V(A.Z(1/0,a.a,a.b),A.Z(1/0,a.c,a.d))}, +bJ(){var s,r,q,p,o,n,m,l,k,j=this +switch(A.cO(j.D).a){case 1:j.a4.vQ(j.gu(0).b) +break +case 0:j.a4.vQ(j.gu(0).a) +break}if(j.hw==null){j.os=j.jn=0 +j.mg=!1 +j.a4.ri(0,0) +return}switch(A.cO(j.D).a){case 1:s=j.gu(0).b +r=j.gu(0).a +break +case 0:s=j.gu(0).a +r=j.gu(0).b +break +default:s=null +r=null}j.hw.toString +q=0 +do{p=j.a4.at +p.toString +o=j.a1A(s,r,p+0) +if(o!==0)j.a4.FU(o) +else{p=j.a4 +n=j.jn +n===$&&A.b() +m=j.ha +n=Math.min(0,n+s*m) +l=j.os +l===$&&A.b() +if(p.ri(n,Math.max(0,l-s*(1-m))))break}k=q+1 +if(k<10){q=k +continue}else break}while(!0)}, +a1A(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +e.os=e.jn=0 +e.mg=!1 +s=a*e.ha-c +r=A.Z(s,0,a) +q=a-s +p=A.Z(q,0,a) +switch(e.aJ.a){case 0:e.aq=e.ag +break +case 1:e.aq=a*e.ag +break}o=e.aq +o.toString +n=a+2*o +m=s+o +l=A.Z(m,0,n) +k=A.Z(n-m,0,n) +j=e.hw.b +j.toString +i=A.z(e).h("ap.1").a(j).dJ$ +j=i==null +if(!j){h=Math.max(a,s) +g=e.abG(e.gawN(),A.Z(q,-o,0),i,b,B.DC,p,a,0,l,r,h-a) +if(g!==0)return-g}q=e.hw +o=-s +h=Math.max(0,o) +o=j?Math.min(0,o):0 +j=s>=a?s:r +f=e.aq +f.toString +return e.abG(e.gVu(),A.Z(s,-f,0),q,b,B.nD,j,a,o,k,p,h)}, +gaAA(){return this.mg}, +aG6(a,b){var s,r=this +switch(a.a){case 0:s=r.os +s===$&&A.b() +r.os=s+b.a +break +case 1:s=r.jn +s===$&&A.b() +r.jn=s-b.a +break}if(b.x)r.mg=!0}, +adU(a,b,c){var s=a.b +s.toString +t.jB.a(s).a=this.ax8(a,b,c)}, +acF(a){var s=a.b +s.toString +return t.jB.a(s).a}, +afm(a,b){var s,r,q,p,o=this +switch(t.q.a(A.H.prototype.gZ.call(a)).b.a){case 0:s=o.hw +for(r=A.z(o).h("ap.1"),q=0;s!==a;){q+=s.fx.a +p=s.b +p.toString +s=r.a(p).a7$}return q+b +case 1:r=o.hw.b +r.toString +p=A.z(o).h("ap.1") +s=p.a(r).dJ$ +for(q=0;s!==a;){q-=s.fx.a +r=s.b +r.toString +s=p.a(r).dJ$}return q-b}}, +aC7(a){var s,r,q,p,o=this +switch(t.q.a(A.H.prototype.gZ.call(a)).b.a){case 0:s=o.hw +for(r=A.z(o).h("ap.1"),q=0;s!==a;){q+=s.fx.f +p=s.b +p.toString +s=r.a(p).a7$}return q +case 1:r=o.hw.b +r.toString +p=A.z(o).h("ap.1") +s=p.a(r).dJ$ +for(q=0;s!==a;){q+=s.fx.f +r=s.b +r.toString +s=p.a(r).dJ$}return q}}, +hh(a,b){var s=a.b +s.toString +s=t.jB.a(s).a +b.ba(0,s.a,s.b)}, +ax9(a,b){var s,r=a.b +r.toString +t.jB.a(r) +s=t.q +switch(A.mN(s.a(A.H.prototype.gZ.call(a)).a,s.a(A.H.prototype.gZ.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)}}, +ga87(){var s,r,q=this,p=A.a([],t.Ry),o=q.Y$ +if(o==null)return p +for(s=A.z(q).h("ap.1");o!=q.hw;){o.toString +p.push(o) +r=o.b +r.toString +o=s.a(r).a7$}o=q.d7$ +for(;!0;){o.toString +p.push(o) +if(o===q.hw)return p +r=o.b +r.toString +o=s.a(r).dJ$}}, +gawO(){var s,r,q,p=this,o=A.a([],t.Ry) +if(p.Y$==null)return o +s=p.hw +for(r=A.z(p).h("ap.1");s!=null;){o.push(s) +q=s.b +q.toString +s=r.a(q).a7$}q=p.hw.b +q.toString +s=r.a(q).dJ$ +for(;s!=null;){o.push(s) +q=s.b +q.toString +s=r.a(q).dJ$}return o}} +A.aD4.prototype={ +fo(a){if(!(a.b instanceof A.Ak))a.b=new A.Ak(null,null)}, +bJ(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=t.k.a(A.H.prototype.gZ.call(g)) +if(g.Y$==null){switch(A.cO(g.D).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.a4.vQ(0) +g.hw=g.ha=0 +g.jn=!1 +g.a4.ri(0,0) +return}switch(A.cO(g.D).a){case 1:s=f.d +r=f.b +break +case 0:s=f.b +r=f.d +break +default:s=null +r=null}for(q=f.a,p=f.b,o=f.c,n=f.d,m=null;!0;){l=g.a4.at +l.toString +k=g.a1A(s,r,l) +if(k!==0)g.a4.FU(k) +else{switch(A.cO(g.D).a){case 1:l=g.hw +l===$&&A.b() +m=A.Z(l,o,n) +break +case 0:l=g.hw +l===$&&A.b() +m=A.Z(l,q,p) +break}j=g.a4.vQ(m) +l=g.a4 +i=g.ha +i===$&&A.b() +h=l.ri(0,Math.max(0,i-m)) +if(j&&h)break}}switch(A.cO(g.D).a){case 1:g.id=new A.V(A.Z(r,q,p),A.Z(m,o,n)) +break +case 0:g.id=new A.V(A.Z(m,q,p),A.Z(r,o,n)) +break}}, +a1A(a,b,c){var s,r,q,p,o,n=this +n.hw=n.ha=0 +n.jn=c<0 +switch(n.aJ.a){case 0:n.aq=n.ag +break +case 1:n.aq=a*n.ag +break}s=n.Y$ +r=Math.max(0,c) +q=Math.min(0,c) +p=Math.max(0,-c) +o=n.aq +o.toString +return n.abG(n.gVu(),-o,s,b,B.nD,p,a,q,a+2*o,a+q,r)}, +gaAA(){return this.jn}, +aG6(a,b){var s=this,r=s.ha +r===$&&A.b() +s.ha=r+b.a +if(b.x)s.jn=!0 +r=s.hw +r===$&&A.b() +s.hw=r+b.e}, +adU(a,b,c){var s=a.b +s.toString +t.Xp.a(s).a=b}, +acF(a){var s=a.b +s.toString +s=t.Xp.a(s).a +s.toString +return this.ax8(a,s,B.nD)}, +afm(a,b){var s,r,q,p=this.Y$ +for(s=A.z(this).h("ap.1"),r=0;p!==a;){r+=p.fx.a +q=p.b +q.toString +p=s.a(q).a7$}return r+b}, +aC7(a){var s,r,q,p=this.Y$ +for(s=A.z(this).h("ap.1"),r=0;p!==a;){r+=p.fx.f +q=p.b +q.toString +p=s.a(q).a7$}return r}, +hh(a,b){var s=this.acF(t.nl.a(a)) +b.ba(0,s.a,s.b)}, +ax9(a,b){var s,r=a.b +r.toString +t.Xp.a(r) +s=t.q +switch(A.mN(s.a(A.H.prototype.gZ.call(a)).a,s.a(A.H.prototype.gZ.call(a)).b).a){case 2:case 1:r=r.a +r.toString +return b-r +case 0:s=this.gu(0) +r=r.a +r.toString +return s.b-b-r +case 3:s=this.gu(0) +r=r.a +r.toString +return s.a-b-r}}, +ga87(){var s,r,q=A.a([],t.Ry),p=this.d7$ +for(s=A.z(this).h("ap.1");p!=null;){q.push(p) +r=p.b +r.toString +p=s.a(r).dJ$}return q}, +gawO(){var s,r,q=A.a([],t.Ry),p=this.Y$ +for(s=A.z(this).h("ap.1");p!=null;){q.push(p) +r=p.b +r.toString +p=s.a(r).a7$}return q}} +A.pH.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=A.z(this).h("pH.0");s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=A.z(this).h("pH.0");s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.a8X.prototype={ +H(){return"ScrollDirection."+this.b}} +A.iF.prototype={ +NX(a,b,c,d){var s=d.a===B.w.a +if(s){this.hV(b) +return A.dm(null,t.H)}else return this.jv(b,c,d)}, +k(a){var s=A.a([],t.s) +this.hR(s) +return"#"+A.bq(this)+"("+B.b.bQ(s,", ")+")"}, +hR(a){var s=this.at +if(s!=null)a.push("offset: "+B.e.aZ(s,1))}} +A.aJN.prototype={ +H(){return"WrapAlignment."+this.b}} +A.aJO.prototype={ +H(){return"WrapCrossAlignment."+this.b}} +A.ai6.prototype={} +A.x8.prototype={} +A.a8n.prototype={ +sWa(a,b){if(this.D===b)return +this.D=b +this.a9()}, +siN(a){if(this.N===a)return +this.N=a +this.a9()}, +sa0u(a,b){if(this.a4===b)return +this.a4=b +this.a9()}, +sbGz(a){if(this.ag===a)return +this.ag=a +this.a9()}, +sbGA(a){if(this.aq===a)return +this.aq=a +this.a9()}, +sVW(a){if(this.aJ===a)return +this.aJ=a +this.a9()}, +fo(a){if(!(a.b instanceof A.x8))a.b=new A.x8(null,null,B.h)}, +bo(a){var s,r,q,p,o=this +switch(o.D.a){case 0:s=o.Y$ +for(r=A.z(o).h("ap.1"),q=0;s!=null;){q=Math.max(q,s.aw(B.ad,1/0,s.gbG())) +p=s.b +p.toString +s=r.a(p).a7$}return q +case 1:return o.JI(new A.aG(0,1/0,0,a)).a}}, +bb(a){var s,r,q,p,o=this +switch(o.D.a){case 0:s=o.Y$ +for(r=A.z(o).h("ap.1"),q=0;s!=null;){q+=s.aw(B.aj,1/0,s.gbL()) +p=s.b +p.toString +s=r.a(p).a7$}return q +case 1:return o.JI(new A.aG(0,1/0,0,a)).a}}, +bh(a){var s,r,q,p,o=this +switch(o.D.a){case 0:return o.JI(new A.aG(0,a,0,1/0)).b +case 1:s=o.Y$ +for(r=A.z(o).h("ap.1"),q=0;s!=null;){q=Math.max(q,s.aw(B.ao,1/0,s.gbP())) +p=s.b +p.toString +s=r.a(p).a7$}return q}}, +bi(a){var s,r,q,p,o=this +switch(o.D.a){case 0:return o.JI(new A.aG(0,a,0,1/0)).b +case 1:s=o.Y$ +for(r=A.z(o).h("ap.1"),q=0;s!=null;){q+=s.aw(B.ay,1/0,s.gbZ()) +p=s.b +p.toString +s=r.a(p).a7$}return q}}, +il(a){return this.yH(a)}, +a3f(a){switch(this.D.a){case 0:return a.a +case 1:return a.b}}, +a3c(a){switch(this.D.a){case 0:return a.b +case 1:return a.a}}, +b2m(a,b){switch(this.D.a){case 0:return new A.j(a,b) +case 1:return new A.j(b,a)}}, +b1M(a,b,c){var s=b-c +switch(this.aJ.a){case 0:return a?s:0 +case 1:return a?0:s +case 2:return s/2}}, +cX(a){return this.JI(a)}, +JI(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +switch(f.D.a){case 0:s=a.b +r=new A.aG(0,s,0,1/0) +break +case 1:s=a.d +r=new A.aG(0,1/0,0,s) +break +default:r=null +s=0}q=f.Y$ +for(p=A.z(f).h("ap.1"),o=0,n=0,m=0,l=0,k=0;q!=null;){j=A.cFI(q,r) +i=f.a3f(j) +h=f.a3c(j) +if(k>0&&m+i+f.a4>s){o=Math.max(o,m) +n+=l+f.aq +m=0 +l=0 +k=0}m+=i +l=Math.max(l,h) +if(k>0)m+=f.a4;++k +g=q.b +g.toString +q=p.a(g).a7$}n+=l +o=Math.max(o,m) +switch(f.D.a){case 0:return a.bd(new A.V(o,n)) +case 1:return a.bd(new A.V(n,o))}}, +bJ(){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.gZ.call(b3)) +b3.aU=!1 +s=b3.Y$ +if(s==null){b3.id=new A.V(A.Z(0,b5.a,b5.b),A.Z(0,b5.c,b5.d)) +return}switch(b3.D.a){case 0:r=b5.b +q=new A.aG(0,r,0,1/0) +p=b3.U===B.ae&&!0 +o=b3.aW===B.mc&&!0 +break +case 1:r=b5.d +q=new A.aG(0,1/0,0,r) +p=b3.aW===B.mc&&!0 +o=b3.U===B.ae&&!0 +break +default:q=null +r=0 +p=!1 +o=!1}n=b3.a4 +m=b3.aq +l=A.a([],t.M7) +for(k=t.aP,j=0,i=0,h=0,g=0,f=0;s!=null;){s.d_(q,!0) +e=s.id +d=b3.a3f(e==null?A.C(A.a0(b4+A.I(s).k(0)+"#"+A.bq(s))):e) +e=s.id +c=b3.a3c(e==null?A.C(A.a0(b4+A.I(s).k(0)+"#"+A.bq(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.ai6(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.a7$}if(f>0){j=Math.max(j,h) +i+=g +if(l.length!==0)i+=m +l.push(new A.ai6(h,g,f))}b=l.length +switch(b3.D.a){case 0:b3.id=b5.bd(new A.V(j,i)) +a=b3.gu(0).a +a0=b3.gu(0).b +break +case 1:b3.id=b5.bd(new A.V(i,j)) +a=b3.gu(0).b +a0=b3.gu(0).a +break +default:a=0 +a0=0}b3.aU=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.Y$ +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.a3f(b1==null?A.C(A.a0(b4+A.I(s).k(0)+"#"+A.bq(s))):b1) +b1=s.id +b2=b3.b1M(o,g,b3.a3c(b1==null?A.C(A.a0(b4+A.I(s).k(0)+"#"+A.bq(s))):b1)) +if(p)b0-=d +e.a=b3.b2m(b0,a4+b2) +b0=p?b0-a9:b0+(d+a9) +s=e.a7$}a4=o?a4-a3:a4+(g+a3)}}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){var s,r=this,q=r.aU&&r.aT!==B.i,p=r.ck +if(q){q=r.cx +q===$&&A.b() +s=r.gu(0) +p.sb9(0,a.nV(q,b,new A.W(0,0,0+s.a,0+s.b),r.ga9j(),r.aT,p.a))}else{p.sb9(0,null) +r.nL(a,b)}}, +m(){this.ck.sb9(0,null) +this.ig()}} +A.aVs.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.aP;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.aP;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aVt.prototype={} +A.xw.prototype={ +bGG(){return this.a.$0()}} +A.Xs.prototype={} +A.LQ.prototype={ +H(){return"SchedulerPhase."+this.b}} +A.bx0.prototype={} +A.lH.prototype={ +aEH(a){var s=this.p3$ +B.b.F(s,a) +if(s.length===0){s=$.cf() +s.ch=null +s.CW=$.at}}, +b0N(a){var s,r,q,p,o,n,m,l,k=this.p3$,j=A.R(k,!0,t.ph) +for(p=j.length,o=0;o0)return!1 +if(j)A.C(A.a0(l)) +s=k.RI(0) +j=s.b +if(m.R8$.$2$priority$scheduler(j,m)){try{if(k.c===0)A.C(A.a0(l));++k.d +k.RI(0) +p=k.c-1 +o=k.RI(p) +k.b[p]=null +k.c=p +if(p>0)k.aWy(o,0) +j=s +j.f.d2(0,j.bGG())}catch(n){r=A.ag(n) +q=A.aD(n) +j=A.cJ("during a task callback") +A.fs(new A.dl(r,q,"scheduler library",j,null,!1))}return k.c!==0}return!1}, +IG(a,b){var s,r=this +r.vb() +s=++r.ry$ +r.to$.n(0,s,new A.Xs(a)) +return r.ry$}, +IF(a){return this.IG(a,!1)}, +gaz6(){var s=this +if(s.y1$==null){if(s.c_$===B.jH)s.vb() +s.y1$=new A.aI(new A.ak($.at,t.W),t.gR) +s.xr$.push(new A.bDt(s))}return s.y1$.a}, +gaA1(){return this.bO$}, +arM(a){if(this.bO$===a)return +this.bO$=a +if(a)this.vb()}, +az9(){var s=$.cf() +if(s.x==null){s.x=this.gb31() +s.y=$.at}if(s.z==null){s.z=this.gb3I() +s.Q=$.at}}, +aa2(){switch(this.c_$.a){case 0:case 4:this.vb() +return +case 1:case 2:case 3:return}}, +vb(){var s,r=this +if(!r.y2$)s=!(A.lH.prototype.gaA1.call(r)&&r.f1$) +else s=!0 +if(s)return +r.az9() +$.cf().vb() +r.y2$=!0}, +aJH(){if(this.y2$)return +this.az9() +$.cf().vb() +this.y2$=!0}, +a0_(){var s,r=this +if(r.be$||r.c_$!==B.jH)return +r.be$=!0 +s=r.y2$ +A.d3(B.w,new A.bDv(r)) +A.d3(B.w,new A.bDw(r,s)) +r.bAo(new A.bDx(r))}, +aii(a){var s=this.bj$ +return A.cp(0,0,B.e.aF((s==null?B.w:new A.aU(a.a-s.a)).a/1)+this.bU$.a,0,0,0)}, +b32(a){if(this.be$){this.a4$=!0 +return}this.aA9(a)}, +b3J(){var s=this +if(s.a4$){s.a4$=!1 +s.xr$.push(new A.bDs(s)) +return}s.aAc()}, +aA9(a){var s,r,q=this +if(q.bj$==null)q.bj$=a +r=a==null +q.dd$=q.aii(r?q.e7$:a) +if(!r)q.e7$=a +q.y2$=!1 +try{q.c_$=B.Xc +s=q.to$ +q.to$=A.N(t.S,t.h1) +J.iK(s,new A.bDu(q)) +q.x1$.V(0)}finally{q.c_$=B.bkr}}, +bG6(a){var s=this,r=s.aq$,q=r==null +if(!q&&r!==a)return null +if(r===a)++s.aJ$ +else if(q){s.aq$=a +s.aJ$=1}return new A.bx0(s.gb_L())}, +b_M(){if(--this.aJ$===0){this.aq$=null +$.cf()}}, +aAc(){var s,r,q,p,o,n,m,l,k=this +try{k.c_$=B.i8 +for(p=t.zv,o=A.R(k.x2$,!0,p),n=o.length,m=0;m0&&r<4){s=s.dd$ +s.toString +q.c=s}s=q.a +s.toString +return s}, +DN(a,b){var s=this,r=s.a +if(r==null)return +s.c=s.a=null +s.ZY() +if(b)r.asX(s) +else r.asY()}, +e3(a){return this.DN(0,!1)}, +bjL(a){var s,r=this +r.e=null +s=r.c +if(s==null)s=r.c=a +r.d.$1(new A.aU(a.a-s.a)) +if(!r.b&&r.a!=null&&r.e==null)r.e=$.cW.IG(r.gU8(),!0)}, +ZY(){var s,r=this.e +if(r!=null){s=$.cW +s.to$.F(0,r) +s.x1$.B(0,r) +this.e=null}}, +m(){var s=this,r=s.a +if(r!=null){s.a=null +s.ZY() +r.asX(s)}}, +bH3(a,b){var s=""+"Ticker()" +return s.charCodeAt(0)==0?s:s}, +k(a){return this.bH3(0,!1)}} +A.MK.prototype={ +asY(){this.c=!0 +this.a.fw(0) +var s=this.b +if(s!=null)s.fw(0)}, +asX(a){var s +this.c=!1 +s=this.b +if(s!=null)s.jh(new A.ab9(a))}, +Pf(a){var s,r,q=this,p=new A.bLB(a) +if(q.b==null){s=q.b=new A.aI(new A.ak($.at,t.W),t.gR) +r=q.c +if(r!=null)if(r)s.fw(0) +else s.jh(B.bt8)}q.b.a.ki(p,p,t.H)}, +BF(a,b){return this.a.a.BF(a,b)}, +mY(a){return this.BF(a,null)}, +ki(a,b,c){return this.a.a.ki(a,b,c)}, +bf(a,b){return this.ki(a,null,b)}, +j6(a){return this.a.a.j6(a)}, +k(a){var s=A.bq(this),r=this.c +if(r==null)r="active" +else r=r?"complete":"canceled" +return"#"+s+"("+r+")"}, +$ia8:1} +A.bLB.prototype={ +$1(a){this.a.$0()}, +$S:25} +A.ab9.prototype={ +k(a){var s=this.a +if(s!=null)return"This ticker was canceled: "+s.k(0) +return'The ticker was canceled before the "orCancel" property was first used.'}, +$ibP:1} +A.aEi.prototype={ +gKV(){var s,r,q=this.azm$ +if(q===$){s=$.cf().a +r=$.ae() +q!==$&&A.a_() +q=this.azm$=new A.bm(s.c,r,t.uh)}return q}, +b_o(){--this.aam$ +this.gKV().sj(0,this.aam$>0)}, +and(){var s,r=this +if($.cf().a.c){if(r.Ww$==null){++r.aam$ +r.gKV().sj(0,!0) +r.Ww$=new A.bF6(r.gb_n())}}else{s=r.Ww$ +if(s!=null)s.a.$0() +r.Ww$=null}}, +b6j(a){var s,r,q=a.d +if(t.V4.b(q)){s=B.cb.nK(q) +if(J.q(s,B.dk))s=q +r=new A.M3(a.a,a.b,a.c,s)}else r=a +s=this.fx$.i(0,r.b) +if(s!=null){s=s.y +if(s!=null){s=s.at +if(s!=null)s.bDV(r.c,r.a,r.d)}}}} +A.bF6.prototype={} +A.up.prototype={ +k(a){return"SemanticsTag("+this.a+")"}} +A.Pt.prototype={} +A.aoP.prototype={} +A.vD.prototype={ +gv(a){return A.ad(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.az(b)!==A.I(s))return!1 +return b instanceof A.vD&&b.a==s.a&&b.b==s.b&&b.c==s.c}, +k(a){var s=this +return"CustomSemanticsAction("+A.r($.cw0.i(0,s))+", label:"+A.r(s.a)+", hint:"+A.r(s.b)+", action:"+A.r(s.c)+")"}} +A.et.prototype={ +S(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.R(this.b,!0,t.Vg) +q=b.b +p=q.length +if(p!==0)for(o=0;o=0;--o)r[o]=n[q-o-1].b}n=a4.fx +m=n.length +if(m!==0){l=new Int32Array(m) +for(o=0;o0?r[n-1].p3:null +if(n!==0)if(J.az(l)===J.az(o)){if(l!=null)o.toString +k=!0}else k=!1 +else k=!0 +if(!k&&p.length!==0){if(o!=null)B.b.o3(p) +B.b.L(q,p) +B.b.V(p)}p.push(new A.Bm(m,l,n))}if(o!=null)B.b.o3(p) +B.b.L(q,p) +s=t.rB +return A.R(new A.O(q,new A.bF8(),s),!0,s.h("aa.E"))}, +aKF(a){if(this.ay==null)return +B.iB.nr(0,a.ZJ(this.b))}, +hL(){return"SemanticsNode#"+this.b}, +bGR(a,b,c){return new A.aWj(a,this,b,!0,!0,null,c)}, +aFq(a){return this.bGR(B.ah1,null,a)}} +A.bFa.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&$.b2K():q) +if(p.y==null)p.y=a.p2 +if(p.Q==null)p.Q=a.p4 +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 +if(p.ch==null)p.ch=a.x1 +if(p.CW==null)p.CW=a.x2 +if(p.cx==null)p.cx=a.xr +if(p.cy==null)p.cy=a.y1 +if(p.c==="")p.c=a.fx +if(p.e.a==="")p.e=a.go +if(p.f.a==="")p.f=a.id +if(p.r.a==="")p.r=a.k1 +if(p.x==="")p.x=a.k3 +s=a.dy +if(s!=null){r=p.z;(r==null?p.z=A.b9(t.g3):r).L(0,s)}for(s=this.b.db,s=A.jL(s,s.r,A.z(s).c),r=this.c;s.t();)r.B(0,A.bbk(s.d)) +s=a.p1 +if(s!=null){s=s.a +if(s!=null)r.B(0,A.bbk(new A.vD(null,s,B.eq))) +a.p1.toString}s=p.d +r=p.y +p.d=A.coz(a.fy,a.p2,s,r) +r=p.w +s=p.y +p.w=A.coz(a.k2,a.p2,r,s) +p.db=Math.max(p.db,a.ok+a.k4) +return!0}, +$S:180} +A.bF8.prototype={ +$1(a){return a.a}, +$S:618} +A.AQ.prototype={ +bn(a,b){return B.e.bn(this.b,b.b)}, +$icT:1} +A.va.prototype={ +bn(a,b){return B.e.bn(this.a,b.a)}, +aMT(){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.R(new A.eE(n,new A.ceA(),s),!0,s.h("B.E"))}, +aMS(){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.N(s,t.bu) +q=A.N(s,s) +for(p=this.b,o=p===B.ae,p=p===B.j,n=a4,m=0;m2.356194490192345 +else a0=!1 +if(a||a0)q.n(0,l.b,f.b)}}a1=A.a([],t.t) +a2=A.a(a3.slice(0),A.X(a3)) +B.b.iL(a2,new A.cew()) +new A.O(a2,new A.cex(),A.X(a2).h("O<1,h>")).aE(0,new A.cez(A.b9(s),q,a1)) +a3=t.qn +a3=A.R(new A.O(a1,new A.cey(r),a3),!0,a3.h("aa.E")) +a4=A.X(a3).h("bE<1>") +return A.R(new A.bE(a3,a4),!0,a4.h("aa.E"))}, +$icT:1} +A.ceA.prototype={ +$1(a){return a.aMS()}, +$S:492} +A.cew.prototype={ +$2(a,b){var s,r,q=a.e,p=A.Ol(a,new A.j(q.a,q.b)) +q=b.e +s=A.Ol(b,new A.j(q.a,q.b)) +r=B.e.bn(p.b,s.b) +if(r!==0)return-r +return-B.e.bn(p.a,s.a)}, +$S:194} +A.cez.prototype={ +$1(a){var s=this,r=s.a +if(r.p(0,a))return +r.B(0,a) +r=s.b +if(r.aB(0,a)){r=r.i(0,a) +r.toString +s.$1(r)}s.c.push(a)}, +$S:12} +A.cex.prototype={ +$1(a){return a.b}, +$S:621} +A.cey.prototype={ +$1(a){var s=this.a.i(0,a) +s.toString +return s}, +$S:622} +A.cok.prototype={ +$1(a){return a.aMT()}, +$S:492} +A.Bm.prototype={ +bn(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.bn(0,s)}, +$icT:1} +A.a9f.prototype={ +m(){var s=this +s.b.V(0) +s.c.V(0) +s.d.V(0) +s.f4()}, +aKG(){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.b9(t.S) +r=A.a([],t.QF) +for(q=A.z(f).h("b1"),p=q.h("B.E"),o=g.d;f.a!==0;){n=A.R(new A.b1(f,new A.bFd(g),q),!0,p) +f.V(0) +o.V(0) +B.b.iL(n,new A.bFe()) +B.b.L(r,n) +for(m=n.length,l=0;l#"+A.bq(this)}} +A.bFd.prototype={ +$1(a){return!this.a.d.p(0,a)}, +$S:180} +A.bFe.prototype={ +$2(a,b){return a.CW-b.CW}, +$S:194} +A.bFf.prototype={ +$2(a,b){return a.CW-b.CW}, +$S:194} +A.bFc.prototype={ +$1(a){if(a.cy.aB(0,this.b)){this.a.a=a +return!1}return!0}, +$S:180} +A.un.prototype={ +AA(a,b){var s=this +s.f.n(0,a,b) +s.r=s.r|a.a +s.e=!0}, +kJ(a,b){this.AA(a,new A.bEW(b))}, +szH(a){a.toString +this.kJ(B.eq,a) +this.w=a}, +swC(a){a.toString +this.kJ(B.pZ,a)}, +sYC(a){this.kJ(B.lO,a)}, +sYo(a){this.kJ(B.bkZ,a)}, +sYD(a){this.kJ(B.lP,a)}, +sYE(a){this.kJ(B.lM,a)}, +sYB(a){this.kJ(B.lN,a)}, +sCM(a){this.kJ(B.Xq,a)}, +sCK(a){this.kJ(B.Xp,a)}, +sYj(a,b){this.kJ(B.bl_,b)}, +sYk(a,b){this.kJ(B.bl2,b)}, +sYz(a,b){this.kJ(B.bkV,b)}, +sYx(a){this.AA(B.bl0,new A.bF_(a))}, +sYv(a){this.AA(B.bl3,new A.bEY(a))}, +sYy(a){this.AA(B.bl1,new A.bF0(a))}, +sYw(a){this.AA(B.bkT,new A.bEZ(a))}, +sYF(a){this.AA(B.bkW,new A.bF1(a))}, +sYG(a){this.AA(B.bkX,new A.bF2(a))}, +sYm(a){this.kJ(B.xb,a)}, +sYn(a){this.kJ(B.xc,a)}, +saKg(a){if(a==this.k4)return +this.k4=a +this.e=!0}, +saKi(a){if(a==this.ok)return +this.ok=a +this.e=!0}, +sbE3(a){if(a===this.p1)return +this.p1=a +this.e=!0}, +sY4(a){if(a==this.p2)return +this.p2=a +this.e=!0}, +sVX(a){if(a==this.p3)return +this.p3=a +this.e=!0}, +bb_(a){var s,r +a.toString +s=$.cw_.i(0,A.bZ(a)) +if(s==null)return +r=this.R8.i(0,s) +if(r!=null)r.$0()}, +sbyd(a){if(a==null)return +this.y1=a +this.e=!0}, +sft(a,b){if(b===this.y2)return +this.y2=b +this.e=!0}, +UT(a){var s=this.dd;(s==null?this.dd=A.b9(t.g3):s).B(0,a)}, +dn(a,b){var s=this,r=s.D,q=a.a +if(b)s.D=r|q +else s.D=r&~q +s.e=!0}, +aBi(a){var s=this +if(a==null||!a.e||!s.e)return!0 +if((s.r&a.r)!==0)return!1 +if((s.D&a.D)!==0)return!1 +if(s.p1!=null&&a.p1!=null)return!1 +if(s.p2!=null&&a.p2!=null)return!1 +if(s.p3!=null&&a.p3!=null)return!1 +if(s.ry.a.length!==0&&a.ry.a.length!==0)return!1 +return!0}, +tV(a){var s,r,q,p=this +if(!a.e)return +s=a.f +if(a.b)s.aE(0,new A.bEX(p)) +else p.f.L(0,s) +s=p.r +r=a.b +q=a.r +p.r=s|(r?q&$.b2K():q) +p.R8.L(0,a.R8) +p.D=p.D|a.D +if(p.be==null)p.be=a.be +if(p.bj==null)p.bj=a.bj +if(p.bU==null)p.bU=a.bU +if(p.e7==null)p.e7=a.e7 +if(p.y1==null)p.y1=a.y1 +if(p.k3==null)p.k3=a.k3 +if(p.ok==null)p.ok=a.ok +if(p.k4==null)p.k4=a.k4 +if(p.p1==null)p.p1=a.p1 +if(p.p2==null)p.p2=a.p2 +if(p.p3==null)p.p3=a.p3 +s=p.bO +if(s==null){s=p.bO=a.bO +p.e=!0}if(p.k2==null)p.k2=a.k2 +if(p.RG==="")p.RG=a.RG +r=p.rx +p.rx=A.coz(a.rx,a.bO,r,s) +if(p.ry.a==="")p.ry=a.ry +if(p.to.a==="")p.to=a.to +if(p.x1.a==="")p.x1=a.x1 +s=p.x2 +r=p.bO +p.x2=A.coz(a.x2,a.bO,s,r) +if(p.xr==="")p.xr=a.xr +p.c_=Math.max(p.c_,a.c_+a.y2) +p.e=p.e||a.e}, +brk(){var s=this,r=A.uo() +r.a=s.a +r.c=s.c +r.d=s.d +r.e=s.e +r.p4=s.p4 +r.bO=s.bO +r.k2=s.k2 +r.RG=s.RG +r.rx=s.rx +r.to=s.to +r.ry=s.ry +r.x1=s.x1 +r.x2=s.x2 +r.y1=s.y1 +r.xr=s.xr +r.y2=s.y2 +r.c_=s.c_ +r.D=s.D +r.dd=s.dd +r.be=s.be +r.bj=s.bj +r.bU=s.bU +r.e7=s.e7 +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.L(0,s.f) +r.R8.L(0,s.R8) +r.b=s.b +return r}} +A.bEW.prototype={ +$1(a){this.a.$0()}, +$S:11} +A.bF_.prototype={ +$1(a){a.toString +this.a.$1(A.j2(a))}, +$S:11} +A.bEY.prototype={ +$1(a){a.toString +this.a.$1(A.j2(a))}, +$S:11} +A.bF0.prototype={ +$1(a){a.toString +this.a.$1(A.j2(a))}, +$S:11} +A.bEZ.prototype={ +$1(a){a.toString +this.a.$1(A.j2(a))}, +$S:11} +A.bF1.prototype={ +$1(a){var s,r,q +a.toString +s=J.xJ(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.eJ(B.E,r,q,!1))}, +$S:11} +A.bF2.prototype={ +$1(a){a.toString +this.a.$1(A.ax(a))}, +$S:11} +A.bEX.prototype={ +$2(a,b){if(($.b2K()&a.a)>0)this.a.f.n(0,a,b)}, +$S:624} +A.bbO.prototype={ +H(){return"DebugSemanticsDumpOrder."+this.b}} +A.US.prototype={ +bn(a,b){var s=this.buf(b) +return s}, +$icT:1} +A.Eq.prototype={ +buf(a){var s=a.b,r=this.b +if(s===r)return 0 +return B.d.bn(r,s)}} +A.aWi.prototype={} +A.aWl.prototype={} +A.aWm.prototype={} +A.anf.prototype={ +H(){return"Assertiveness."+this.b}} +A.bF4.prototype={ +ZJ(a){var s=A.a1(["type",this.a,"data",this.Dr()],t.N,t.z) +if(a!=null)s.n(0,"nodeId",a) +return s}, +qK(){return this.ZJ(null)}, +k(a){var s,r,q,p=A.a([],t.s),o=this.Dr(),n=J.ra(o.gek(o)) +B.b.o3(n) +for(s=n.length,r=0;r#"+A.bq(this)+"()"}} +A.b81.prototype={ +zv(a,b){if(b)return this.a.cP(0,a,new A.b82(this,a)) +return this.agl(a,!0)}, +XT(a){return this.zv(a,!0)}, +bAj(a,b,c){var s,r=this,q={},p=r.b +if(p.aB(0,a)){q=p.i(0,a) +q.toString +return c.h("a8<0>").a(q)}q.a=q.b=null +r.zv(a,!1).bf(b,c).ki(new A.b83(q,r,a,c),new A.b84(q,r,a),t.H) +s=q.a +if(s!=null)return s +s=new A.ak($.at,c.h("ak<0>")) +q.b=new A.aI(s,c.h("aI<0>")) +p.n(0,a,s) +return q.b.a}} +A.b82.prototype={ +$0(){return this.a.agl(this.b,!0)}, +$S:625} +A.b83.prototype={ +$1(a){var s=this,r=new A.dc(a,s.d.h("dc<0>")),q=s.a +q.a=r +s.b.b.n(0,s.c,r) +q=q.b +if(q!=null)q.d2(0,a)}, +$S(){return this.d.h("bd(0)")}} +A.b84.prototype={ +$2(a,b){this.b.b.F(0,this.c) +this.a.b.iy(a,b)}, +$S:23} +A.bxr.prototype={ +fB(a,b){var s,r=null,q=B.bo.cD(A.fi(r,r,A.vb(B.vh,b,B.ai,!1),r,r,r,r,r).e),p=$.i2.n2$ +p===$&&A.b() +s=p.Q9(0,"flutter/assets",A.b7q(q)).bf(new A.bxs(b),t.V4) +return s}, +XR(a){return this.bAb(a)}, +bAb(a){var s=0,r=A.p(t.SG),q,p=this,o,n +var $async$XR=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=A +n=A +s=3 +return A.i(p.fB(0,a),$async$XR) +case 3:q=o.DE(n.abF(c,0,null)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$XR,r)}} +A.bxs.prototype={ +$1(a){if(a==null)throw A.d(A.Dr(A.a([A.dll(this.a),A.cJ("The asset does not exist or has empty data.")],t.qe))) +return a}, +$S:626} +A.b4c.prototype={ +$1(a){return this.aHg(a)}, +aHg(a){var s=0,r=A.p(t.LW),q +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.Nu(t.pE.a(B.cb.nK(A.b7q(B.eX.cD(A.ax(B.aO.hF(0,a)))))),A.N(t.N,t.Rk)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:627} +A.Nu.prototype={ +aIl(a){var s,r,q,p=this.b +if(!p.aB(0,a)){s=this.a +r=J.ao(s) +if(r.i(s,a)==null)return null +q=r.i(s,a) +if(q==null)q=[] +p.n(0,a,J.dP(J.ie(t.VG.a(q),t.pE),new A.bRz(a),t.pR).eO(0)) +r.F(s,a)}p=p.i(0,a) +p.toString +return p}, +$ib4b:1} +A.bRz.prototype={ +$1(a){var s,r=J.ao(a),q=r.i(a,"asset") +q.toString +A.ax(q) +s=r.i(a,"dpr") +r=r.i(a,"asset") +r.toString +A.ax(r) +return new A.BW(A.nG(s),r)}, +$S:628} +A.BW.prototype={} +A.a_s.prototype={ +eZ(){var s,r,q=this +if(q.a){s=A.N(t.N,t.z) +s.n(0,"uniqueIdentifier",q.b) +s.n(0,"hints",q.c) +s.n(0,"editingValue",q.d.adD()) +r=q.e +if(r!=null)s.n(0,"hintText",r)}else s=null +return s}} +A.aL_.prototype={ +eZ(){var s=this.aR_(),r=this.ch +r=A.nb(r,new A.bSg(),r.$ti.h("B.E"),t.a) +s.n(0,"fields",A.R(r,!1,A.z(r).h("B.E"))) +return s}} +A.bSg.prototype={ +$1(a){return a.eZ()}, +$S:629} +A.b5g.prototype={ +V7(a,b){var s=this.gbnf(),r=A.czh(a) +$.f3().Rb(r,new A.aL_(new A.fW(s,new A.b5h(),s.$ti.h("fW<1,uG>")),b.a,!1,b.c,b.d,b.e,b.f,b.r,b.w,!0,b.y,b.z,b.Q,b.as,!0,B.bF,!1)) +return r}} +A.b5h.prototype={ +$1(a){return a.goF()}, +$S:630} +A.b6d.prototype={} +A.UV.prototype={ +b7C(){var s,r,q=this,p=t.v3,o=new A.bkK(A.N(p,t.bd),A.b9(t.SQ),A.a([],t.sA)) +q.h9$!==$&&A.ck() +q.h9$=o +s=$.cCP() +r=A.a([],t.K0) +q.jA$!==$&&A.ck() +q.jA$=new A.awj(o,s,r,A.b9(p)) +p=q.h9$ +p===$&&A.b() +p.R_().bf(new A.bFn(q),t.P)}, +N6(){var s=$.xI() +s.a.V(0) +s.b.V(0) +s.c.V(0)}, +zi(a){return this.bxJ(a)}, +bxJ(a){var s=0,r=A.p(t.H),q,p=this +var $async$zi=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:switch(A.ax(J.aS(t.a.a(a),"type"))){case"memoryPressure":p.N6() +break}s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$zi,r)}, +aVO(){var s=A.aF("controller") +s.se9(A.lN(null,new A.bFm(s),null,!1,t.LV)) +return J.cv0(s.aX())}, +bFb(){if(this.p4$==null)$.cf() +return}, +a3C(a){return this.b4u(a)}, +b4u(a){var s=0,r=A.p(t.R),q,p=this,o,n +var $async$a3C=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:a.toString +o=A.ddi(a) +n=p.p4$ +o.toString +B.b.aE(p.b1C(n,o),p.gbwR()) +q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a3C,r)}, +b1C(a,b){var s,r,q,p +if(a===b)return B.aNt +if(a===B.iy&&b===B.kd)return B.aHI +s=A.a([],t.QP) +if(a==null)s.push(b) +else{r=B.b.c2(B.oc,a) +q=B.b.c2(B.oc,b) +if(r>q)for(p=q;p") +r=A.hh(new A.bR(c,s),s.h("B.E")) +q=A.a([],t.K0) +p=c.i(0,b) +o=$.i2.e7$ +n=a0.a +if(n==="")n=d +m=e.aZ3(a0) +if(a0 instanceof A.ES)if(p==null){l=new A.rx(b,a,n,o,!1) +r.B(0,b)}else l=A.cJj(n,m,p,b,o) +else if(p==null)l=d +else{l=A.cJk(m,p,b,!1,o) +r.F(0,b)}for(s=e.c.d,k=A.z(s).h("bR<1>"),j=k.h("B.E"),i=r.w6(A.hh(new A.bR(s,k),j)),i=i.gaz(i),h=e.e;i.t();){g=i.gK(i) +if(g.l(0,b))q.push(new A.JN(g,a,d,o,!0)) +else{f=c.i(0,g) +f.toString +h.push(new A.JN(g,f,d,o,!0))}}for(c=A.hh(new A.bR(s,k),j).w6(r),c=c.gaz(c);c.t();){k=c.gK(c) +j=s.i(0,k) +j.toString +h.push(new A.rx(k,j,d,o,!0))}if(l!=null)h.push(l) +B.b.L(h,q)}} +A.aQB.prototype={} +A.bow.prototype={ +k(a){return"KeyboardInsertedContent("+this.a+", "+this.b+", "+A.r(this.c)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(J.az(b)!==A.I(q))return!1 +if(b instanceof A.bow)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.ad(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.box.prototype={} +A.K.prototype={ +gbzH(){var s=this.a,r=A.d9p(s) +s=r==null?B.aX3.i(0,s):r +return s==null?"":s}, +gv(a){return B.d.gv(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.K&&b.a===this.a}} +A.bpw.prototype={ +$1(a){var s=$.cWF().i(0,a) +return s==null?A.d9([a],t.bd):s}, +$S:496} +A.bpy.prototype={ +$1(a){var s=$.cWE().i(0,a) +return s==null?A.d9([a],t.bd):s}, +$S:496} +A.a7.prototype={ +gv(a){return B.d.gv(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.a7&&b.a===this.a}} +A.aQD.prototype={} +A.rF.prototype={ +k(a){return"MethodCall("+this.a+", "+A.r(this.b)+")"}} +A.ok.prototype={ +k(a){var s=this +return"PlatformException("+s.a+", "+A.r(s.b)+", "+A.r(s.c)+", "+A.r(s.d)+")"}, +$ibP:1} +A.SR.prototype={ +k(a){return"MissingPluginException("+A.r(this.a)+")"}, +$ibP:1} +A.bIi.prototype={ +nK(a){if(a==null)return null +return B.ai.hF(0,A.abF(a,0,null))}, +h8(a){if(a==null)return null +return A.b7q(B.bo.cD(a))}} +A.bnX.prototype={ +h8(a){if(a==null)return null +return B.rE.h8(B.aO.ug(a))}, +nK(a){var s +if(a==null)return a +s=B.rE.nK(a) +s.toString +return B.aO.hF(0,s)}} +A.bnZ.prototype={ +ru(a){var s=B.ho.h8(A.a1(["method",a.a,"args",a.b],t.N,t.X)) +s.toString +return s}, +qg(a){var s,r,q,p=null,o=B.ho.nK(a) +if(!t.f.b(o))throw A.d(A.bM("Expected method call Map, got "+A.r(o),p,p)) +s=J.ao(o) +r=s.i(o,"method") +q=s.i(o,"args") +if(typeof r=="string")return new A.rF(r,q) +throw A.d(A.bM("Invalid method call: "+A.r(o),p,p))}, +a9e(a){var s,r,q,p=null,o=B.ho.nK(a) +if(!t.j.b(o))throw A.d(A.bM("Expected envelope List, got "+A.r(o),p,p)) +s=J.ao(o) +if(s.gA(o)===1)return s.i(o,0) +if(s.gA(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.ax(s.i(o,0)) +q=A.bw(s.i(o,1)) +throw A.d(A.EF(r,s.i(o,2),q,p))}if(s.gA(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.ax(s.i(o,0)) +q=A.bw(s.i(o,1)) +throw A.d(A.EF(r,s.i(o,2),q,A.bw(s.i(o,3))))}throw A.d(A.bM("Invalid envelope: "+A.r(o),p,p))}, +MH(a){var s=B.ho.h8([a]) +s.toString +return s}, +C4(a,b,c){var s=B.ho.h8([a,c,b]) +s.toString +return s}, +az1(a,b){return this.C4(a,null,b)}} +A.bH4.prototype={ +h8(a){var s +if(a==null)return null +s=A.bPx(64) +this.ln(0,s,a) +return s.yP()}, +nK(a){var s,r +if(a==null)return null +s=new A.a7J(a) +r=this.qz(0,s) +if(s.b=b.a.byteLength)throw A.d(B.dN) +return this.wP(b.tg(0),b)}, +wP(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=$.k5() +q=b.a.getInt32(s,B.z===r) +b.b+=4 +return q +case 4:return b.a_C(0) +case 6:b.tN(8) +s=b.b +r=$.k5() +q=b.a.getFloat64(s,B.z===r) +b.b+=8 +return q +case 5:case 7:p=k.ms(b) +return new A.iu(!1).jP(b.xd(p),0,null,!0) +case 8:return b.xd(k.ms(b)) +case 9:p=k.ms(b) +b.tN(4) +s=b.a +o=A.cy7(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+4*p +return o +case 10:return b.a_D(k.ms(b)) +case 14:p=k.ms(b) +b.tN(4) +s=b.a +o=A.cKe(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+4*p +return o +case 11:p=k.ms(b) +b.tN(8) +s=b.a +o=A.cy6(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+8*p +return o +case 12:p=k.ms(b) +n=A.aK(p,null,!1,t.X) +for(s=b.a,m=0;m=s.byteLength)A.C(B.dN) +b.b=r+1 +n[m]=k.wP(s.getUint8(r),b)}return n +case 13:p=k.ms(b) +s=t.X +n=A.N(s,s) +for(s=b.a,m=0;m=s.byteLength)A.C(B.dN) +b.b=r+1 +r=k.wP(s.getUint8(r),b) +l=b.b +if(l>=s.byteLength)A.C(B.dN) +b.b=l+1 +n.n(0,r,k.wP(s.getUint8(l),b))}return n +default:throw A.d(B.dN)}}, +nX(a,b){var s,r +if(b<254)a.m3(0,b) +else{s=a.d +if(b<=65535){a.m3(0,254) +r=$.k5() +s.setUint16(0,b,B.z===r) +a.KY(a.e,0,2)}else{a.m3(0,255) +r=$.k5() +s.setUint32(0,b,B.z===r) +a.KY(a.e,0,4)}}}, +ms(a){var s,r,q=a.tg(0) +switch(q){case 254:s=a.b +r=$.k5() +q=a.a.getUint16(s,B.z===r) +a.b+=2 +return q +case 255:s=a.b +r=$.k5() +q=a.a.getUint32(s,B.z===r) +a.b+=4 +return q +default:return q}}} +A.bH6.prototype={ +$2(a,b){var s=this.a,r=this.b +s.ln(0,r,a) +s.ln(0,r,b)}, +$S:109} +A.bH8.prototype={ +ru(a){var s=A.bPx(64) +B.cb.ln(0,s,a.a) +B.cb.ln(0,s,a.b) +return s.yP()}, +qg(a){var s,r,q +a.toString +s=new A.a7J(a) +r=B.cb.qz(0,s) +q=B.cb.qz(0,s) +if(typeof r=="string"&&s.b>=a.byteLength)return new A.rF(r,q) +else throw A.d(B.Du)}, +MH(a){var s=A.bPx(64) +s.m3(0,0) +B.cb.ln(0,s,a) +return s.yP()}, +C4(a,b,c){var s=A.bPx(64) +s.m3(0,1) +B.cb.ln(0,s,a) +B.cb.ln(0,s,c) +B.cb.ln(0,s,b) +return s.yP()}, +az1(a,b){return this.C4(a,null,b)}, +a9e(a){var s,r,q,p,o,n +if(a.byteLength===0)throw A.d(B.ajY) +s=new A.a7J(a) +if(s.tg(0)===0)return B.cb.qz(0,s) +r=B.cb.qz(0,s) +q=B.cb.qz(0,s) +p=B.cb.qz(0,s) +o=s.b=a.byteLength +else n=!1 +if(n)throw A.d(A.EF(r,p,A.bw(q),o)) +else throw A.d(B.ajZ)}} +A.btw.prototype={ +bwT(a,b,c){var s,r,q,p,o +if(t.PB.b(b)){this.b.F(0,a) +return}s=this.b +r=s.i(0,a) +q=A.dhI(c) +if(q==null)q=this.a +p=r==null +if(J.q(p?null:r.gyD(r),q))return +o=q.Mc(a) +s.n(0,a,o) +if(!p)r.m() +o.cL()}} +A.ST.prototype={ +gyD(a){return this.a}} +A.fm.prototype={ +k(a){var s=this.gyE() +return s}} +A.aNp.prototype={ +Mc(a){throw A.d(A.bT(null))}, +gyE(){return"defer"}} +A.aSj.prototype={ +cL(){var s=0,r=A.p(t.H) +var $async$cL=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$cL,r)}, +m(){}} +A.aSi.prototype={ +Mc(a){return new A.aSj(this,a)}, +gyE(){return"uncontrolled"}} +A.aXE.prototype={ +gyD(a){return t.U8.a(this.a)}, +cL(){return B.bfl.fJ("activateSystemCursor",A.a1(["device",this.b,"kind",t.U8.a(this.a).a],t.N,t.z),t.H)}, +m(){}} +A.wL.prototype={ +gyE(){return"SystemMouseCursor("+this.a+")"}, +Mc(a){return new A.aXE(this,a)}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.wL&&b.a===this.a}, +gv(a){return B.c.gv(this.a)}} +A.aRW.prototype={} +A.C0.prototype={ +gLH(){var s=$.i2.n2$ +s===$&&A.b() +return s}, +nr(a,b){return this.aKD(0,b,this.$ti.h("1?"))}, +aKD(a,b,c){var s=0,r=A.p(c),q,p=this,o,n,m +var $async$nr=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:o=p.b +n=p.gLH().Q9(0,p.a,o.h8(b)) +m=o +s=3 +return A.i(t.T8.b(n)?n:A.dO(n,t.CD),$async$nr) +case 3:q=m.nK(e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$nr,r)}, +Ql(a){this.gLH().IN(this.a,new A.b69(this,a))}} +A.b69.prototype={ +$1(a){return this.aHi(a)}, +aHi(a){var s=0,r=A.p(t.CD),q,p=this,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a.b +n=o +s=3 +return A.i(p.b.$1(o.nK(a)),$async$$1) +case 3:q=n.h8(c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:497} +A.hZ.prototype={ +gLH(){var s,r=this.c +if(r==null){s=$.i2.n2$ +s===$&&A.b() +r=s}return r}, +fi(a,b,c,d){return this.b83(a,b,c,d,d.h("0?"))}, +b83(a,b,c,d,e){var s=0,r=A.p(e),q,p=this,o,n,m,l,k +var $async$fi=A.l(function(f,g){if(f===1)return A.m(g,r) +while(true)switch(s){case 0:o=p.b +n=o.ru(new A.rF(a,b)) +m=p.a +l=p.gLH().Q9(0,m,n) +s=3 +return A.i(t.T8.b(l)?l:A.dO(l,t.CD),$async$fi) +case 3:k=g +if(k==null){if(c){q=null +s=1 +break}throw A.d(A.cy2("No implementation found for method "+a+" on channel "+m))}q=d.h("0?").a(o.a9e(k)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fi,r)}, +fJ(a,b,c){return this.fi(a,b,!1,c)}, +Nr(a,b,c){return this.bz9(a,b,c,c.h("x<0>?"))}, +bz8(a,b){return this.Nr(a,null,b)}, +bz9(a,b,c,d){var s=0,r=A.p(d),q,p=this,o +var $async$Nr=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:s=3 +return A.i(p.fJ(a,b,t.j),$async$Nr) +case 3:o=f +q=o==null?null:J.ie(o,c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Nr,r)}, +GP(a,b,c,d){return this.bza(a,b,c,d,c.h("@<0>").a1(d).h("aN<1,2>?"))}, +Xz(a,b,c){return this.GP(a,null,b,c)}, +bza(a,b,c,d,e){var s=0,r=A.p(e),q,p=this,o +var $async$GP=A.l(function(f,g){if(f===1)return A.m(g,r) +while(true)switch(s){case 0:s=3 +return A.i(p.fJ(a,b,t.f),$async$GP) +case 3:o=g +q=o==null?null:J.xJ(o,c,d) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$GP,r)}, +vg(a){var s=this.gLH() +s.IN(this.a,new A.bsU(this,a))}, +S3(a,b){return this.b2X(a,b)}, +b2X(a,b){var s=0,r=A.p(t.CD),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$S3=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:h=n.b +g=h.qg(a) +p=4 +e=h +s=7 +return A.i(b.$1(g),$async$S3) +case 7:k=e.MH(d) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +k=A.ag(f) +if(k instanceof A.ok){m=k +k=m.a +i=m.b +q=h.C4(k,m.c,i) +s=1 +break}else if(k instanceof A.SR){q=null +s=1 +break}else{l=k +h=h.az1("error",J.cw(l)) +q=h +s=1 +break}s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$S3,r)}} +A.bsU.prototype={ +$1(a){return this.a.S3(a,this.b)}, +$S:497} +A.rJ.prototype={ +fJ(a,b,c){return this.bzb(a,b,c,c.h("0?"))}, +rH(a,b){return this.fJ(a,null,b)}, +bzb(a,b,c,d){var s=0,r=A.p(d),q,p=this +var $async$fJ=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:q=p.aP4(a,b,!0,c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fJ,r)}} +A.QS.prototype={ +Ze(){var s=new A.hZ(this.a,B.b0,null),r=A.aF("controller") +r.b=new A.h1(new A.bhj(this,r,s,null),new A.bhk(this,s,null),t.zr) +return J.cv0(r.aX())}} +A.bhj.prototype={ +$0(){var s=0,r=A.p(t.H),q=1,p,o=this,n,m,l,k,j,i,h +var $async$$0=A.l(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:i=$.i2.n2$ +i===$&&A.b() +l=o.a +k=l.a +i.IN(k,new A.bhi(l,o.b)) +q=3 +s=6 +return A.i(o.c.fi("listen",o.d,!1,t.H),$async$$0) +case 6:q=1 +s=5 +break +case 3:q=2 +h=p +n=A.ag(h) +m=A.aD(h) +i=A.cJ("while activating platform stream on channel "+k) +A.fs(new A.dl(n,m,"services library",i,null,!1)) +s=5 +break +case 2:s=1 +break +case 5:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bhi.prototype={ +$1(a){return this.aHq(a)}, +aHq(a){var s=0,r=A.p(t.P),q,p=this,o,n,m +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(a==null)J.GT(p.b.aX()) +else try{J.eQ(p.b.aX(),B.b0.a9e(a))}catch(l){m=A.ag(l) +if(m instanceof A.ok){o=m +p.b.aX().m8(o)}else throw l}q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:638} +A.bhk.prototype={ +$0(){var s=0,r=A.p(t.H),q=1,p,o=this,n,m,l,k,j,i +var $async$$0=A.l(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:j=$.i2.n2$ +j===$&&A.b() +l=o.a.a +j.IN(l,null) +q=3 +s=6 +return A.i(o.b.fi("cancel",o.c,!1,t.H),$async$$0) +case 6:q=1 +s=5 +break +case 3:q=2 +i=p +n=A.ag(i) +m=A.aD(i) +j=A.cJ("while de-activating platform stream on channel "+l) +A.fs(new A.dl(n,m,"services library",j,null,!1)) +s=5 +break +case 2:s=1 +break +case 5:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bxE.prototype={} +A.L1.prototype={} +A.TK.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.TK&&b.a===this.a&&b.b===this.b}, +gv(a){return A.ad(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.bcb.prototype={ +Z3(){var s=0,r=A.p(t.Xf),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Z3=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i=A.a([],t.RW) +h=null +p=4 +m=n.a +m===$&&A.b() +f=t.pE +s=7 +return A.i(m.rH("ProcessText.queryTextActions",t.z),$async$Z3) +case 7:h=f.a(b) +p=2 +s=6 +break +case 4:p=3 +g=o +q=i +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:for(m=J.au(J.GV(h));m.t();){k=m.gK(m) +k.toString +A.ax(k) +j=J.aS(h,k) +j.toString +J.eQ(i,new A.TK(k,A.ax(j)))}q=i +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Z3,r)}, +Z_(a,b,c){return this.bEy(a,b,c)}, +bEy(a,b,c){var s=0,r=A.p(t.R),q,p=this,o,n +var $async$Z_=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:o=p.a +o===$&&A.b() +n=A +s=3 +return A.i(o.fJ("ProcessText.processTextAction",[a,b,c],t.z),$async$Z_) +case 3:q=n.bw(e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Z_,r)}} +A.JO.prototype={ +H(){return"KeyboardSide."+this.b}} +A.qn.prototype={ +H(){return"ModifierKey."+this.b}} +A.a7F.prototype={ +gbBe(){var s,r,q=A.N(t.xS,t.Dk) +for(s=0;s<9;++s){r=B.K6[s] +if(this.bzq(r))q.n(0,r,B.j3)}return q}} +A.zZ.prototype={} +A.bzy.prototype={ +$0(){var s,r,q,p=this.b,o=J.ao(p),n=A.bw(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.bw(o.i(p,"code")) +if(s==null)s="" +m=m?"":n +r=A.fO(o.i(p,"location")) +if(r==null)r=0 +q=A.fO(o.i(p,"metaState")) +if(q==null)q=0 +p=A.fO(o.i(p,"keyCode")) +return new A.aCs(s,m,r,q,p==null?0:p)}, +$S:639} +A.ES.prototype={} +A.U2.prototype={} +A.bzB.prototype={ +bxy(a){var s,r,q,p,o,n,m,l,k,j,i=this +if(a instanceof A.ES){p=a.c +i.d.n(0,p.grW(),p.gabS())}else if(a instanceof A.U2)i.d.F(0,a.c.grW()) +i.bjh(a) +for(p=i.a,o=A.R(p,!0,t.iS),n=o.length,m=0;m")),e),a0=a1 instanceof A.ES +if(a0)a.B(0,g.grW()) +for(s=g.a,r=null,q=0;q<9;++q){p=B.K6[q] +o=$.cXr() +n=o.i(0,new A.i9(p,B.f7)) +if(n==null)continue +m=B.QM.i(0,s) +if(n.p(0,m==null?new A.a7(98784247808+B.c.gv(s)):m))r=p +if(f.i(0,p)===B.j3){c.L(0,n) +if(n.ef(0,a.grl(a)))continue}l=f.i(0,p)==null?A.b9(e):o.i(0,new A.i9(p,f.i(0,p))) +if(l==null)continue +for(o=A.z(l),m=new A.xj(l,l.r,o.h("xj<1>")),m.c=l.e,o=o.c;m.t();){k=m.d +if(k==null)k=o.a(k) +j=$.cXq().i(0,k) +j.toString +d.n(0,k,j)}}i=b.i(0,B.hY)!=null&&!J.q(b.i(0,B.hY),B.lk) +for(e=$.cCO(),e=A.jL(e,e.r,A.z(e).c);e.t();){a=e.d +h=i&&a.l(0,B.hY) +if(!c.p(0,a)&&!h)b.F(0,a)}b.F(0,B.lA) +b.L(0,d) +if(a0&&r!=null&&!b.aB(0,g.grW())){e=g.grW().l(0,B.jE) +if(e)b.n(0,g.grW(),g.gabS())}}} +A.i9.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.i9&&b.a===this.a&&b.b==this.b}, +gv(a){return A.ad(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.aU7.prototype={} +A.aU6.prototype={} +A.aCs.prototype={ +grW(){var s=this.a,r=B.QM.i(0,s) +return r==null?new A.a7(98784247808+B.c.gv(s)):r}, +gabS(){var s,r=this.b,q=B.b47.i(0,r),p=q==null?null:q[this.c] +if(p!=null)return p +s=B.aWn.i(0,r) +if(s!=null)return s +if(r.length===1)return new A.K(r.toLowerCase().charCodeAt(0)) +return new A.K(B.c.gv(this.a)+98784247808)}, +bzq(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.az(b)!==A.I(s))return!1 +return b instanceof A.aCs&&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.ad(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.a8w.prototype={ +gbGt(){var s=this +if(s.c)return new A.dc(s.a,t.hr) +if(s.b==null){s.b=new A.aI(new A.ak($.at,t.X6),t.F3) +s.S2()}return s.b.a}, +S2(){var s=0,r=A.p(t.H),q,p=this,o +var $async$S2=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(B.wJ.rH("get",t.pE),$async$S2) +case 3:o=b +if(p.b==null){s=1 +break}p.apG(o) +case 1:return A.n(q,r)}}) +return A.o($async$S2,r)}, +apG(a){var s,r=a==null +if(!r){s=J.aS(a,"enabled") +s.toString +A.j2(s)}else s=!1 +this.bxA(r?null:t.nc.a(J.aS(a,"data")),s)}, +bxA(a,b){var s,r,q=this,p=q.c&&b +q.d=p +if(p)$.cW.xr$.push(new A.bC5(q)) +s=q.a +if(b){p=q.aZM(a) +r=t.N +if(p==null){p=t.X +p=A.N(p,p)}r=new A.iV(p,q,null,"root",A.N(r,t.z4),A.N(r,t.I1)) +p=r}else p=null +q.a=p +q.c=!0 +r=q.b +if(r!=null)r.d2(0,p) +q.b=null +if(q.a!=s){q.ab() +if(s!=null)s.m()}}, +a4x(a){return this.ba_(a)}, +ba_(a){var s=0,r=A.p(t.H),q=this,p +var $async$a4x=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=a.a +switch(p){case"push":q.apG(t.pE.a(a.b)) +break +default:throw A.d(A.bT(p+" was invoked but isn't implemented by "+A.I(q).k(0)))}return A.n(null,r)}}) +return A.o($async$a4x,r)}, +aZM(a){if(a==null)return null +return t.J1.a(B.cb.nK(A.fe(a.buffer,a.byteOffset,a.byteLength)))}, +aJJ(a){var s=this +s.r.B(0,a) +if(!s.f){s.f=!0 +$.cW.xr$.push(new A.bC6(s))}}, +akY(){var s,r,q,p,o,n=this +if(!n.f)return +n.f=!1 +for(s=n.r,r=A.dy(s,s.r,A.z(s).c),q=r.$ti.c;r.t();){p=r.d;(p==null?q.a(p):p).w=!1}s.V(0) +o=B.cb.h8(n.a.a) +B.wJ.fJ("put",A.dF(o.buffer,o.byteOffset,o.byteLength),t.H)}, +azS(){if($.cW.y2$)return +this.akY()}, +m(){var s=this.a +if(s!=null)s.m() +this.f4()}} +A.bC5.prototype={ +$1(a){this.a.d=!1}, +$S:5} +A.bC6.prototype={ +$1(a){return this.a.akY()}, +$S:5} +A.iV.prototype={ +gKJ(){var s=J.ZC(this.a,"c",new A.bC2()) +s.toString +return t.pE.a(s)}, +gxX(){var s=J.ZC(this.a,"v",new A.bC3()) +s.toString +return t.pE.a(s)}, +bFH(a,b,c){var s=this,r=J.vj(s.gxX(),b),q=c.h("0?").a(J.xM(s.gxX(),b)) +if(J.h3(s.gxX()))J.xM(s.a,"v") +if(r)s.EH() +return q}, +bq9(a,b){var s,r,q,p,o=this,n=o.f +if(n.aB(0,a)||!J.vj(o.gKJ(),a)){n=t.N +s=new A.iV(A.N(n,t.X),null,null,a,A.N(n,t.z4),A.N(n,t.I1)) +o.lB(s) +return s}r=t.N +q=o.c +p=J.aS(o.gKJ(),a) +p.toString +s=new A.iV(t.pE.a(p),q,o,a,A.N(r,t.z4),A.N(r,t.I1)) +n.n(0,a,s) +return s}, +lB(a){var s=this,r=a.d +if(r!==s){if(r!=null)r.Tj(a) +a.d=s +s.ai7(a) +if(a.c!=s.c)s.aqv(a)}}, +bg9(a){this.Tj(a) +a.d=null +if(a.c!=null){a.a5z(null) +a.aus(this.gaqu())}}, +EH(){var s,r=this +if(!r.w){r.w=!0 +s=r.c +if(s!=null)s.aJJ(r)}}, +aqv(a){a.a5z(this.c) +a.aus(this.gaqu())}, +a5z(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.EH()}}, +Tj(a){var s,r,q,p=this +if(J.q(p.f.F(0,a.e),a)){J.xM(p.gKJ(),a.e) +s=p.r +r=s.i(0,a.e) +if(r!=null){q=J.cz(r) +p.alw(q.hX(r)) +if(q.gad(r))s.F(0,a.e)}if(J.h3(p.gKJ()))J.xM(p.a,"c") +p.EH() +return}s=p.r +q=s.i(0,a.e) +if(q!=null)J.xM(q,a) +q=s.i(0,a.e) +q=q==null?null:J.h3(q) +if(q===!0)s.F(0,a.e)}, +ai7(a){var s=this +if(s.f.aB(0,a.e)){J.eQ(s.r.cP(0,a.e,new A.bC1()),a) +s.EH() +return}s.alw(a) +s.EH()}, +alw(a){this.f.n(0,a.e,a) +J.id(this.gKJ(),a.e,a.a)}, +aut(a,b){var s=this.f.gbm(0),r=this.r.gbm(0),q=s.aaB(0,new A.eE(r,new A.bC4(),A.z(r).h("eE"))) +J.iK(b?A.R(q,!1,A.z(q).h("B.E")):q,a)}, +aus(a){return this.aut(a,!1)}, +bFM(a){var s,r=this +if(a===r.e)return +s=r.d +if(s!=null)s.Tj(r) +r.e=a +s=r.d +if(s!=null)s.ai7(r)}, +m(){var s,r=this +r.aut(r.gbg8(),!0) +r.f.V(0) +r.r.V(0) +s=r.d +if(s!=null)s.Tj(r) +r.d=null +r.a5z(null) +r.x=!0}, +k(a){return"RestorationBucket(restorationId: "+this.e+", owner: "+A.r(this.b)+")"}} +A.bC2.prototype={ +$0(){var s=t.X +return A.N(s,s)}, +$S:504} +A.bC3.prototype={ +$0(){var s=t.X +return A.N(s,s)}, +$S:504} +A.bC1.prototype={ +$0(){return A.a([],t.QT)}, +$S:643} +A.bC4.prototype={ +$1(a){return a}, +$S:644} +A.Fq.prototype={ +l(a,b){var s,r +if(b==null)return!1 +if(this===b)return!0 +if(b instanceof A.Fq){s=b.a +r=this.a +s=s.a===r.a&&s.b===r.b&&A.fj(b.b,this.b)}else s=!1 +return s}, +gv(a){var s=this.a +return A.ad(s.a,s.b,A.cs(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.a9X.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.a9X&&b.a===this.a&&A.fj(b.b,this.b)}, +gv(a){return A.ad(this.a,A.cs(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.bce.prototype={ +Ws(a,b){return this.bvT(a,b)}, +bvT(a0,a1){var s=0,r=A.p(t.EZ),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$Ws=A.l(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:d=null +c=a0.pY("-") +p=4 +m=n.b +m===$&&A.b() +a=t.j +s=7 +return A.i(m.fJ("SpellCheck.initiateSpellCheck",A.a([c,a1],t.s),t.z),$async$Ws) +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.au(d),j=t.f,i=t.N,h=t.z,g=t.j;m.t();){f=A.rA(j.a(m.gK(m)),i,h) +k.push(new A.Fq(new A.ea(A.bZ(f.i(0,"startIndex")),A.bZ(f.i(0,"endIndex"))),J.ie(g.a(f.i(0,"suggestions")),i)))}m=n.a +if(m!=null){j=m.a +e=A.fj(m.b,k) +if(j===a1&&e)k=A.d4j(n.a.b,k)}n.a=new A.a9X(a1,k) +q=k +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Ws,r)}} +A.Ih.prototype={ +H(){return"DeviceOrientation."+this.b}} +A.b46.prototype={} +A.aaA.prototype={ +H(){return"SystemUiOverlay."+this.b}} +A.bJP.prototype={ +H(){return"SystemUiMode."+this.b}} +A.wM.prototype={ +at_(){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.H() +q=o.r.H() +p=o.c +p=p==null?null:p.H() +return A.a1(["systemNavigationBarColor",n,"systemNavigationBarDividerColor",null,"systemStatusBarContrastEnforced",o.w,"statusBarColor",s,"statusBarBrightness",r,"statusBarIconBrightness",q,"systemNavigationBarIconBrightness",p,"systemNavigationBarContrastEnforced",o.d],t.N,t.z)}, +k(a){return"SystemUiOverlayStyle("+this.at_().k(0)+")"}, +gv(a){var s=this +return A.ad(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.az(b)!==A.I(r))return!1 +if(b instanceof A.wM)if(J.q(b.a,r.a))if(J.q(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.bJN.prototype={ +$0(){if(!J.q($.VB,$.cza)){B.c4.fJ("SystemChrome.setSystemUIOverlayStyle",$.VB.at_(),t.H) +$.cza=$.VB}$.VB=null}, +$S:0} +A.aFL.prototype={ +H(){return"SystemSoundType."+this.b}} +A.pA.prototype={ +lS(a){var s +if(a<0)return null +s=this.IA(a).a +return s>=0?s:null}, +lU(a){var s=this.IA(Math.max(0,a)).b +return s>=0?s:null}, +IA(a){var s,r=this.lS(a) +if(r==null)r=-1 +s=this.lU(a) +return new A.ea(r,s==null?-1:s)}} +A.Pr.prototype={ +lS(a){var s +if(a<0)return null +s=this.a +return A.bIh(s,Math.min(a,s.length)).b}, +lU(a){var s,r=this.a +if(a>=r.length)return null +s=A.bIh(r,Math.max(0,a+1)) +return s.b+s.gK(0).length}, +IA(a){var s,r,q,p=this +if(a<0){s=p.lU(a) +return new A.ea(-1,s==null?-1:s)}else{s=p.a +if(a>=s.length){s=p.lS(a) +return new A.ea(s==null?-1:s,-1)}}r=A.bIh(s,a) +s=r.b +if(s!==r.c)s=new A.ea(s,s+r.gK(0).length) +else{q=p.lU(a) +s=new A.ea(s,q==null?-1:q)}return s}} +A.Sh.prototype={ +IA(a){return this.a.Iv(new A.cC(Math.max(a,0),B.E))}} +A.a6M.prototype={ +lS(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.czi(s.charCodeAt(a))?a-1:a +for(;q>0;){if(A.czi(s.charCodeAt(q)))return q+1;--q}return Math.max(q,0)}, +lU(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.czi(r.charCodeAt(s));){++s +if(s===q)return s}return s=s?null:s}} +A.mC.prototype={ +gvR(){var s,r=this +if(!r.gfc()||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.FR(a.b,p.b,o) +n=q?o:s +return p.M_(n,q?r:o)}if(b)return p.FR(a.b,n,o) +n=q?s:o +return p.M_(n,q?o:r)}, +azh(a){if(this.giY().l(0,a))return this +return this.bs4(a.b,a.a)}} +A.Fy.prototype={} +A.aG1.prototype={} +A.aG0.prototype={} +A.aG2.prototype={} +A.VM.prototype={} +A.aY3.prototype={} +A.a5B.prototype={ +H(){return"MaxLengthEnforcement."+this.b}} +A.wR.prototype={} +A.aS0.prototype={} +A.ci2.prototype={} +A.QX.prototype={ +aaF(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=b.b +g=g.gfc()?new A.aS0(g.c,g.d):h +s=b.c +s=s.gfc()&&s.a!==s.b?new A.aS0(s.a,s.b):h +r=new A.ci2(b,new A.bu(""),g,s) +s=b.a +q=J.b2T(i.a,s) +for(g=q.gaz(q),p=i.b,o=!p,n=h;g.t();n=m){m=g.gK(g) +l=n==null?h:n.gdw(n) +if(l==null)l=0 +i.a5d(p,l,m.gee(m),r) +i.a5d(o,m.gee(m),m.gdw(m),r)}g=n==null?h:n.gdw(n) +if(g==null)g=0 +i.a5d(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.aw:new A.ea(j.a,j.b) +if(k==null)p=B.bz +else{p=r.a.b +p=A.eJ(p.e,k.a,k.b,p.f)}return new A.cu(g.charCodeAt(0)==0?g:g,p,s)}, +a5d(a,b,c,d){var s,r,q,p +if(a)s=b===c?"":this.c +else s=B.c.R(d.a.a,b,c) +d.b.a+=s +if(s.length===c-b)return +r=new A.bi5(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.bi5.prototype={ +$1(a){var s=this,r=s.a,q=a<=r&&a=r.a&&s<=this.a.length}else r=!1 +return r}, +aEU(a,b){var s,r,q,p,o=this +if(!a.gfc())return o +s=a.a +r=a.b +q=B.c.nW(o.a,s,r,b) +if(r-s===b.length)return o.brV(q) +s=new A.bKK(a,b) +r=o.b +p=o.c +return new A.cu(q,A.eJ(B.E,s.$1(r.c),s.$1(r.d),!1),new A.ea(s.$1(p.a),s.$1(p.b)))}, +adD(){var s=this.b,r=this.c +return A.a1(["text",this.a,"selectionBase",s.c,"selectionExtent",s.d,"selectionAffinity",s.e.H(),"selectionIsDirectional",s.f,"composingBase",r.a,"composingExtent",r.b],t.N,t.z)}, +k(a){return"TextEditingValue(text: \u2524"+this.a+"\u251c, selection: "+this.b.k(0)+", composing: "+this.c.k(0)+")"}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.cu&&b.a===s.a&&b.b.l(0,s.b)&&b.c.l(0,s.c)}, +gv(a){var s=this.c +return A.ad(B.c.gv(this.a),this.b.gv(0),A.ad(B.d.gv(s.a),B.d.gv(s.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.bKK.prototype={ +$1(a){var s=this.a,r=s.a,q=a<=r&&a") +l=p.f +k=A.z(l).h("bR<1>") +j=k.h("fW>") +q=A.R(new A.fW(new A.b1(new A.bR(l,k),new A.bLd(p,A.R(new A.O(n,new A.bLe(),m),!0,m.h("aa.E"))),k.h("b1")),new A.bLf(p),j),!0,j.h("B.E")) +s=1 +break}else if(a0==="TextInputClient.scribbleInteractionBegan"){p.r=!0 +s=1 +break}else if(a0==="TextInputClient.scribbleInteractionFinished"){p.r=!1 +s=1 +break}n=p.d +if(n==null){s=1 +break}if(a0==="TextInputClient.requestExistingInputState"){m=p.e +m===$&&A.b() +p.Rb(n,m) +p.TJ(p.d.r.a.c.a) +s=1 +break}m=t.j +o=m.a(a1.b) +if(a0===u.gP){i=n.r.cx +n=t.a +h=n.a(J.aS(o,1)) +for(m=J.er(h),l=J.au(m.gek(h)),k=i==null;l.t();){j=l.gK(l) +g=A.cMJ(n.a(m.i(h,j))) +f=k?null:i.d.i(0,j) +if(f!=null&&f.goF().e.a)f.avI(g)}s=1 +break}n=J.ao(o) +f=A.bZ(n.i(o,0)) +l=p.d +if(f!==l.f){s=1 +break}switch(a0){case"TextInputClient.updateEditingState":e=A.cMJ(t.a.a(n.i(o,1))) +$.f3().bkE(e,$.cuz()) +break +case u.au:d=A.a([],t.sD) +l=t.a +for(n=J.au(m.a(J.aS(l.a(n.i(o,1)),"deltas")));n.t();)d.push(A.df2(l.a(n.gK(n)))) +t.rg.a(p.d.r).bKj(d) +break +case"TextInputClient.performAction":if(A.ax(n.i(o,1))==="TextInputAction.commitContent"){n=t.a.a(n.i(o,2)) +m=J.ao(n) +A.ax(m.i(n,"mimeType")) +A.ax(m.i(n,"uri")) +if(m.i(n,"data")!=null)new Uint8Array(A.f1(A.ew(t.JY.a(m.i(n,"data")),!0,t.S))) +p.d.r.a.toString}else p.d.r.bDU(A.dod(A.ax(n.i(o,1)))) +break +case"TextInputClient.performSelectors":c=J.ie(m.a(n.i(o,1)),t.N) +c.aE(c,p.d.r.gbDX()) +break +case"TextInputClient.performPrivateCommand":m=t.a +b=m.a(n.i(o,1)) +n=p.d.r +l=J.ao(b) +A.ax(l.i(b,"action")) +if(l.i(b,"data")!=null)m.a(l.i(b,"data")) +n.a.toString +break +case"TextInputClient.updateFloatingCursor":m=l.r +l=A.doc(A.ax(n.i(o,1))) +n=t.a.a(n.i(o,2)) +if(l===B.nv){k=J.ao(n) +a=new A.j(A.e6(k.i(n,"X")),A.e6(k.i(n,"Y")))}else a=B.h +m.a_0(new A.U0(a,null,l)) +break +case"TextInputClient.onConnectionClosed":n=l.r +if(n.goT()){n.z.toString +n.id=n.z=$.f3().d=null +n.a.d.lR()}break +case"TextInputClient.showAutocorrectionPromptRect":l.r.aM3(A.bZ(n.i(o,1)),A.bZ(n.i(o,2))) +break +case"TextInputClient.showToolbar":l.r.pR() +break +case"TextInputClient.insertTextPlaceholder":l.r.byQ(new A.V(A.e6(n.i(o,1)),A.e6(n.i(o,2)))) +break +case"TextInputClient.removeTextPlaceholder":l.r.aEG() +break +default:throw A.d(A.cy2(null))}case 1:return A.n(q,r)}}) +return A.o($async$a3J,r)}, +bgM(){if(this.w)return +this.w=!0 +A.j8(new A.bLh(this))}, +bhD(a,b){var s,r,q,p,o,n,m +for(s=this.b,s=A.dy(s,s.r,A.z(s).c),r=t.jl,q=t.H,p=s.$ti.c;s.t();){o=s.d +if(o==null)o=p.a(o) +n=$.f3() +m=n.c +m===$&&A.b() +m.fJ("TextInput.setClient",A.a([n.d.f,o.ak9(b)],r),q)}}, +ajH(){var s,r,q,p,o=this +o.d.toString +for(s=o.b,s=A.dy(s,s.r,A.z(s).c),r=t.H,q=s.$ti.c;s.t();){p=s.d +if(p==null)q.a(p) +p=$.f3().c +p===$&&A.b() +p.rH("TextInput.clearClient",r)}o.d=null +o.bgM()}, +atz(a){var s,r,q,p,o +for(s=this.b,s=A.dy(s,s.r,A.z(s).c),r=t.H,q=s.$ti.c;s.t();){p=s.d +if(p==null)p=q.a(p) +o=$.f3().c +o===$&&A.b() +o.fJ("TextInput.updateConfig",p.ak9(a),r)}}, +TJ(a){var s,r,q,p +for(s=this.b,s=A.dy(s,s.r,A.z(s).c),r=t.H,q=s.$ti.c;s.t();){p=s.d +if(p==null)q.a(p) +p=$.f3().c +p===$&&A.b() +p.fJ("TextInput.setEditingState",a.adD(),r)}}, +a5W(){var s,r,q,p +for(s=this.b,s=A.dy(s,s.r,A.z(s).c),r=t.H,q=s.$ti.c;s.t();){p=s.d +if(p==null)q.a(p) +p=$.f3().c +p===$&&A.b() +p.rH("TextInput.show",r)}}, +b7c(){var s,r,q,p +for(s=this.b,s=A.dy(s,s.r,A.z(s).c),r=t.H,q=s.$ti.c;s.t();){p=s.d +if(p==null)q.a(p) +p=$.f3().c +p===$&&A.b() +p.rH("TextInput.hide",r)}}, +bhI(a,b){var s,r,q,p,o,n,m,l,k +for(s=this.b,s=A.dy(s,s.r,A.z(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.t();){k=s.d +if(k==null)l.a(k) +k=$.f3().c +k===$&&A.b() +k.fJ("TextInput.setEditableSizeAndTransform",A.a1(["width",r,"height",q,"transform",p],o,n),m)}}, +bhF(a){var s,r,q,p,o,n,m,l,k,j +for(s=this.b,s=A.dy(s,s.r,A.z(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.t();){j=s.d +if(j==null)k.a(j) +j=$.f3().c +j===$&&A.b() +j.fJ("TextInput.setMarkedTextRect",A.a1(["width",q,"height",o,"x",r,"y",p],n,m),l)}}, +bhC(a){var s,r,q,p,o,n,m,l,k,j +for(s=this.b,s=A.dy(s,s.r,A.z(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.t();){j=s.d +if(j==null)k.a(j) +j=$.f3().c +j===$&&A.b() +j.fJ("TextInput.setCaretRect",A.a1(["width",q,"height",o,"x",r,"y",p],n,m),l)}}, +bhO(a){var s,r,q +for(s=this.b,s=A.dy(s,s.r,A.z(s).c),r=s.$ti.c;s.t();){q=s.d;(q==null?r.a(q):q).aLv(a)}}, +bhP(a,b,c,d,e){var s,r,q,p,o,n,m,l,k +for(s=this.b,s=A.dy(s,s.r,A.z(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.t();){k=s.d +if(k==null)l.a(k) +k=$.f3().c +k===$&&A.b() +k.fJ("TextInput.setStyle",A.a1(["fontFamily",a,"fontSize",b,"fontWeightIndex",m?null:c.a,"textAlignIndex",r,"textDirectionIndex",q],p,o),n)}}, +bfV(){var s,r,q,p +for(s=this.b,s=A.dy(s,s.r,A.z(s).c),r=t.H,q=s.$ti.c;s.t();){p=s.d +if(p==null)q.a(p) +p=$.f3().c +p===$&&A.b() +p.rH("TextInput.requestAutofill",r)}}, +bkE(a,b){var s,r,q,p +if(this.d==null)return +for(s=$.f3().b,s=A.dy(s,s.r,A.z(s).c),r=s.$ti.c,q=t.H;s.t();){p=s.d +if((p==null?r.a(p):p)!==b){p=$.f3().c +p===$&&A.b() +p.fJ("TextInput.setEditingState",a.adD(),q)}}$.f3().d.r.adW(a)}} +A.bLg.prototype={ +$0(){var s=null +return A.a([A.p8("call",this.a,!0,B.cM,s,!1,s,s,B.c0,s,!1,!0,!0,B.dn,s,t.Pz)],t.qe)}, +$S:39} +A.bLe.prototype={ +$1(a){return a}, +$S:645} +A.bLd.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.bzm(new A.W(o,n,o+m,n+p)) +if(p!==!0)return!1 +p=s.i(0,a) +q=p==null?null:p.gvT(0) +if(q==null)q=B.a8 +if(!q.l(0,B.a8))p=isNaN(q.a)||isNaN(q.b)||isNaN(q.c)||isNaN(q.d)||q.gaBm(0) +else p=!0 +return!p}, +$S:20} +A.bLf.prototype={ +$1(a){var s=this.a.f.i(0,a).gvT(0),r=[a],q=s.a,p=s.b +B.b.L(r,[q,p,s.c-q,s.d-p]) +return r}, +$S:646} +A.bLh.prototype={ +$0(){var s=this.a +s.w=!1 +if(s.d==null)s.b7c()}, +$S:0} +A.aaX.prototype={} +A.aT7.prototype={ +ak9(a){var s,r=a.eZ() +if($.f3().a!==$.cuz()){s=B.bor.eZ() +s.n(0,"isMultiline",a.a.l(0,B.ql)) +r.n(0,"inputType",s)}return r}, +aLv(a){var s,r=$.f3().c +r===$&&A.b() +s=A.X(a).h("O<1,x>") +r.fJ("TextInput.setSelectionRects",A.R(new A.O(a,new A.c9B(),s),!0,s.h("aa.E")),t.H)}} +A.c9B.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.ag)}, +$S:647} +A.b02.prototype={} +A.aH6.prototype={ +H(){return"UndoDirection."+this.b}} +A.aH7.prototype={ +gbkq(){var s=this.a +s===$&&A.b() +return s}, +a3K(a){return this.b70(a)}, +b70(a){var s=0,r=A.p(t.z),q,p=this,o,n +var $async$a3K=A.l(function(b,c){if(b===1)return A.m(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.bxt(p.bjR(A.ax(J.aS(n,0)))) +s=1 +break}throw A.d(A.cy2(null)) +case 1:return A.n(q,r)}}) +return A.o($async$a3K,r)}, +bjR(a){switch(a){case"undo":return B.bva +case"redo":return B.bvb}throw A.d(A.Dr(A.a([A.vT("Unknown undo direction: "+a)],t.qe)))}} +A.bNM.prototype={} +A.blK.prototype={ +$2(a,b){return new A.Tz(b,B.blq,B.Wq,null)}, +$S:648} +A.blL.prototype={ +$1(a){return A.d85(this.a,a)}, +$S:649} +A.blJ.prototype={ +$1(a){var s=this.a +s.c.$1(s.a)}, +$S:33} +A.NL.prototype={ +R1(){var s=0,r=A.p(t.H),q=this +var $async$R1=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(B.RC.fi("create",A.a1(["id",q.a,"viewType",q.b,"params",q.c],t.N,t.z),!1,t.H),$async$R1) +case 2:q.d=!0 +return A.n(null,r)}}) +return A.o($async$R1,r)}, +a8a(){var s=0,r=A.p(t.H) +var $async$a8a=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$a8a,r)}, +a9A(a){return this.bu4(a)}, +bu4(a){var s=0,r=A.p(t.H) +var $async$a9A=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$a9A,r)}, +m(){var s=0,r=A.p(t.H),q=this +var $async$m=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=q.d?2:3 +break +case 2:s=4 +return A.i(B.RC.fi("dispose",q.a,!1,t.H),$async$m) +case 4:case 3:return A.n(null,r)}}) +return A.o($async$m,r)}} +A.aBx.prototype={ +q(a){return new A.d4(B.C,null,B.am,B.k,A.a([B.bi1,this.c],t.p),null)}} +A.bxz.prototype={ +$2(a,b){var s,r,q,p,o,n=$.bxw +if(n!=null){s=b.offsetX +r=b.offsetY +q=n.a.gai() +q.toString +n.lE(new A.a97(A.cK(t.x.a(q).cf(0,null),new A.j(s,r)),B.Xj)) +r=n.xb() +s=r==null?null:r.a +if(s==null)s="" +a.innerText=s +s=self +p=s.document.createRange() +p.selectNode(a) +o=s.window.getSelection() +if(o!=null){o.removeAllRanges() +o.addRange(p)}}}, +$S:651} +A.bxy.prototype={ +$1(a){var s,r,q=self,p=q.document.createElement("div") +p.style.width="100%" +p.style.height="100%" +p.classList.add("web-electable-region-context-menu") +s=q.document.createElement("style") +q=q.document.head +q.toString +A.L(q,"append",[s]) +r=s.sheet +r.insertRule(".web-electable-region-context-menu {\n color: transparent;\n user-select: text;\n -webkit-user-select: text; /* Safari */\n -moz-user-select: text; /* Firefox */\n -ms-user-select: text; /* IE10+ */\n}\n",0) +r.insertRule(".web-electable-region-context-menu::selection { background: transparent; }",1) +A.L(p,"addEventListener",["mousedown",t.g.a(A.cQ(new A.bxx(this.a,p)))]) +return p}, +$S:652} +A.bxx.prototype={ +$1(a){if(!J.q(a.button,2))return +this.a.$2(this.b,a)}, +$S:100} +A.cpr.prototype={ +$1(a){this.a.se9(a) +return!1}, +$S:50} +A.cB.prototype={} +A.cg.prototype={ +m7(a){this.b=a}, +pr(a,b){return this.grJ()}, +Ki(a,b){var s=this +if(A.z(s).h("fb").b(s))return s.wr(0,a,b) +return s.pr(0,a)}, +grJ(){return!0}, +FM(a){return!0}, +adE(a,b){return this.FM(a)?B.d3:B.nP}, +Kf(a,b){var s=this +if(A.z(s).h("fb").b(s))return s.jE(a,b) +return s.fI(a)}, +a73(a){var s=this.a +s.b=!0 +s.a.push(a) +return null}, +Zi(a){return this.a.F(0,a)}, +ht(a){return new A.agy(this,a,!1,!1,!1,!1,new A.bN(A.a([],t.h),t.b),A.z(this).h("agy"))}} +A.fb.prototype={ +wr(a,b,c){return this.aND(0,b)}, +pr(a,b){return this.wr(0,b,null)}, +ht(a){return new A.agz(this,a,!1,!1,!1,!1,new A.bN(A.a([],t.h),t.b),A.z(this).h("agz"))}} +A.ej.prototype={ +fI(a){return this.c.$1(a)}} +A.b3b.prototype={ +aBe(a,b,c){return a.Kf(b,c)}, +bz6(a,b,c){if(a.Ki(b,c))return new A.dZ(!0,a.Kf(b,c)) +return B.bj9}} +A.xO.prototype={ +J(){return new A.acx(A.b9(t.od),new A.S(),B.f)}} +A.b3d.prototype={ +$1(a){t.L1.a(a.gb7()) +return!1}, +$S:127} +A.b3g.prototype={ +$1(a){var s=this,r=A.b3c(t.L1.a(a.gb7()),s.b,s.d) +if(r!=null){s.c.QN(a,null) +s.a.a=r +return!0}return!1}, +$S:127} +A.b3e.prototype={ +$1(a){var s=A.b3c(t.L1.a(a.gb7()),this.b,this.c) +if(s!=null){this.a.a=s +return!0}return!1}, +$S:127} +A.b3f.prototype={ +$1(a){var s=this,r=s.b,q=A.b3c(t.L1.a(a.gb7()),r,s.d),p=q!=null +if(p&&q.Ki(r,s.c))s.a.a=A.cvb(a).aBe(q,r,s.c) +return p}, +$S:127} +A.b3h.prototype={ +$1(a){var s=this,r=s.b,q=A.b3c(t.L1.a(a.gb7()),r,s.d),p=q!=null +if(p&&q.Ki(r,s.c))s.a.a=A.cvb(a).aBe(q,r,s.c) +return p}, +$S:127} +A.acx.prototype={ +a8(){this.an() +this.atn()}, +b2O(a){this.C(new A.bQC(this))}, +atn(){var s,r,q=this,p=q.a.d.gbm(0),o=A.hh(p,A.z(p).h("B.E")),n=q.d.w6(o) +p=q.d +p.toString +s=o.w6(p) +for(p=n.gaz(n),r=q.gamO();p.t();)p.gK(p).Zi(r) +for(p=s.gaz(s);p.t();)p.gK(p).a73(r) +q.d=o}, +b1(a){this.bc(a) +this.atn()}, +m(){var s,r,q,p,o=this +o.ap() +for(s=o.d,s=A.dy(s,s.r,A.z(s).c),r=o.gamO(),q=s.$ti.c;s.t();){p=s.d;(p==null?q.a(p):p).Zi(r)}o.d=null}, +q(a){var s=this.a +return new A.acw(null,s.d,this.e,s.e,null)}} +A.bQC.prototype={ +$0(){this.a.e=new A.S()}, +$S:0} +A.acw.prototype={ +ed(a){var s +if(this.w===a.w)s=!A.Zl(a.r,this.r) +else s=!0 +return s}} +A.IX.prototype={ +J(){return new A.aeQ(new A.aR(null,t.A),B.f)}} +A.aeQ.prototype={ +a8(){this.an() +$.cW.xr$.push(new A.c0x(this)) +$.an.U$.f.a.f.B(0,this.gan0())}, +m(){$.an.U$.f.a.f.F(0,this.gan0()) +this.ap()}, +atO(a){this.SH(new A.c0v(this))}, +b4_(a){if(this.c==null)return +this.atO(a)}, +b4Q(a){if(!this.e)this.SH(new A.c0q(this))}, +b4S(a){if(this.e)this.SH(new A.c0r(this))}, +b3W(a){var s,r=this +if(r.f!==a){r.SH(new A.c0p(r,a)) +s=r.a.Q +if(s!=null)s.$1(r.f)}}, +aoG(a,b){var s,r,q,p,o,n,m=this,l=new A.c0u(m),k=new A.c0t(m,new A.c0s(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){l=m.a.y +if(l!=null)l.$1(n)}if(q!==o){l=m.a.z +if(l!=null)l.$1(o)}}, +SH(a){return this.aoG(null,a)}, +b9I(a){return this.aoG(a,null)}, +b1(a){this.bc(a) +if(this.a.c!==a.c)$.cW.xr$.push(new A.c0w(this,a))}, +gaXP(){var s,r=this.c +r.toString +r=A.cG(r,B.k5) +s=r==null?null:r.ch +switch((s==null?B.hW:s).a){case 0:return this.a.c +case 1:return!0}}, +q(a){var s,r,q,p,o=this,n=null,m=o.a,l=m.as +m=m.d +s=o.gaXP() +r=o.a +q=r.at +p=A.ip(A.n1(!1,s,r.ax,n,!0,!0,m,q,n,o.gb3V(),n,n,n,n),l,n,o.r,o.gb4P(),o.gb4R(),n) +m=r.c +if(m){l=r.w +l=l!=null&&l.a!==0}else l=!1 +if(l){l=r.w +l.toString +p=A.ts(l,p)}if(m){m=r.x +m=m!=null&&m.gcU(m)}else m=!1 +if(m){m=o.a.x +m.toString +p=A.Fi(p,n,m)}return p}} +A.c0x.prototype={ +$1(a){var s=$.an.U$.f.a.b +if(s==null)s=A.Xx() +this.a.atO(s)}, +$S:5} +A.c0v.prototype={ +$0(){var s=$.an.U$.f.a.b +switch((s==null?A.Xx():s).a){case 0:this.a.d=!1 +break +case 1:this.a.d=!0 +break}}, +$S:0} +A.c0q.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.c0r.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.c0p.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.c0u.prototype={ +$1(a){var s=this.a +return s.e&&a.c&&s.d}, +$S:182} +A.c0s.prototype={ +$1(a){var s,r=this.a.c +r.toString +r=A.cG(r,B.k5) +s=r==null?null:r.ch +switch((s==null?B.hW:s).a){case 0:return a.c +case 1:return!0}}, +$S:182} +A.c0t.prototype={ +$1(a){var s=this.a +return s.f&&s.d&&this.b.$1(a)}, +$S:182} +A.c0w.prototype={ +$1(a){this.a.b9I(this.b)}, +$S:5} +A.aHK.prototype={ +fI(a){a.bJi() +return null}} +A.a1W.prototype={ +FM(a){return this.c}, +fI(a){}} +A.OL.prototype={} +A.Pj.prototype={} +A.mX.prototype={} +A.asP.prototype={} +A.zX.prototype={} +A.aBZ.prototype={ +wr(a,b,c){var s,r,q,p,o,n=$.an.U$.f.c +if(n==null||n.e==null)return!1 +for(s=t.vz,r=0;r<2;++r){q=B.aLL[r] +p=n.e +p.toString +o=A.cvd(p,q,s) +if(o!=null&&o.Ki(q,c)){this.e=o +this.f=q +return!0}}return!1}, +pr(a,b){return this.wr(0,b,null)}, +jE(a,b){var s,r=this.e +r===$&&A.b() +s=this.f +s===$&&A.b() +r.Kf(s,b)}, +fI(a){return this.jE(a,null)}} +A.Y1.prototype={ +anS(a,b,c){var s +a.m7(this.gyG()) +s=a.Kf(b,c) +a.m7(null) +return s}, +jE(a,b){var s=this,r=A.cvc(s.gNM(),A.z(s).c) +return r==null?s.aBg(a,s.b,b):s.anS(r,a,b)}, +fI(a){return this.jE(a,null)}, +grJ(){var s,r,q=this,p=A.cvd(q.gNM(),null,A.z(q).c) +if(p!=null){p.m7(q.gyG()) +s=p.grJ() +p.m7(null) +r=s}else r=q.gyG().grJ() +return r}, +wr(a,b,c){var s,r=this,q=A.cvc(r.gNM(),A.z(r).c),p=q==null +if(!p)q.m7(r.gyG()) +s=(p?r.gyG():q).Ki(b,c) +if(!p)q.m7(null) +return s}, +pr(a,b){return this.wr(0,b,null)}, +FM(a){var s,r=this,q=A.cvc(r.gNM(),A.z(r).c),p=q==null +if(!p)q.m7(r.gyG()) +s=(p?r.gyG():q).FM(a) +if(!p)q.m7(null) +return s}} +A.agy.prototype={ +aBg(a,b,c){var s=this.e +if(b==null)return s.fI(a) +else return s.fI(a)}, +gyG(){return this.e}, +gNM(){return this.f}} +A.agz.prototype={ +anS(a,b,c){var s +c.toString +a.m7(new A.adC(c,this.e,new A.bN(A.a([],t.h),t.b),this.$ti.h("adC<1>"))) +s=a.Kf(b,c) +a.m7(null) +return s}, +aBg(a,b,c){var s=this.e +if(b==null)return s.jE(a,c) +else return s.jE(a,c)}, +gyG(){return this.e}, +gNM(){return this.f}} +A.adC.prototype={ +m7(a){this.d.m7(a)}, +pr(a,b){return this.d.wr(0,b,this.c)}, +grJ(){return this.d.grJ()}, +FM(a){return this.d.FM(a)}, +a73(a){var s +this.aNC(a) +s=this.d.a +s.b=!0 +s.a.push(a)}, +Zi(a){this.aNE(a) +this.d.a.F(0,a)}, +fI(a){return this.d.jE(a,this.c)}} +A.aKh.prototype={} +A.aKf.prototype={} +A.aQr.prototype={} +A.alb.prototype={ +m7(a){this.agi(a) +this.e.m7(a)}} +A.alc.prototype={ +m7(a){this.agi(a) +this.e.m7(a)}} +A.Ly.prototype={ +dv(a){return new A.Lz(this,B.aD,this.$ti.h("Lz<1>"))}, +aR(a){return this.d}, +b_(a,b){}, +avD(a){var s,r,q={} +q.a=s +q.a=null +a.abQ(new A.bB8(q,this,a)) +r=q.a +r.toString +a.vU(r,new A.bB9(q)) +q=q.a +q.toString +return q}, +hL(){var s=this.e +return s==null?this.aRg():s}} +A.bB8.prototype={ +$0(){var s=this.b,r=A.dco(s,s.$ti.c) +this.a.a=r +r.f=this.c}, +$S:0} +A.bB9.prototype={ +$0(){var s=this.a.a +s.toString +s.ahG(null,null) +s.Jk()}, +$S:0} +A.Lz.prototype={ +d0(a){var s=this.bO +if(s!=null)a.$1(s)}, +lH(a){this.bO=null +this.mA(a)}, +iF(a,b){this.ahG(a,b) +this.Jk()}, +cI(a,b){this.nw(0,b) +this.Jk()}, +nf(){var s=this,r=s.be +if(r!=null){s.be=null +s.nw(0,s.$ti.h("Ly<1>").a(r)) +s.Jk()}s.E5()}, +Jk(){var s,r,q,p,o,n,m,l=this +try{o=l.bO +n=l.e +n.toString +l.bO=l.he(o,l.$ti.h("Ly<1>").a(n).c,B.dk)}catch(m){s=A.ag(m) +r=A.aD(m) +o=A.cJ("attaching to the render tree") +q=new A.dl(s,r,"widgets library",o,null,!1) +A.fs(q) +p=A.QR(q) +l.bO=l.he(null,p,B.dk)}}, +gai(){return this.$ti.h("aZ<1>").a(A.bO.prototype.gai.call(this))}, +mj(a,b){var s=this.$ti +s.h("aZ<1>").a(A.bO.prototype.gai.call(this)).sbq(s.c.a(a))}, +mn(a,b,c){}, +ni(a,b){this.$ti.h("aZ<1>").a(A.bO.prototype.gai.call(this)).sbq(null)}} +A.ahH.prototype={ +iF(a,b){this.r4(a,b)}} +A.a17.prototype={ +H(){return"CrossFadeState."+this.b}} +A.H7.prototype={ +J(){return new A.aKu(null,null,B.f)}, +bzQ(a,b,c,d){return A.doE().$4(a,b,c,d)}} +A.aKu.prototype={ +a8(){var s,r=this +r.an() +s=A.bQ(null,r.a.f,null,1,null,r) +r.d=s +if(r.a.e===B.tw)s.sj(0,1) +r.e=r.a3V(r.a.w,!0) +r.a.toString +r.f=r.a3V(B.H,!1) +s=r.d +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(new A.bR4(r))}, +a3V(a,b){var s,r,q=this.d +q===$&&A.b() +s=t.o +r=new A.aB(s.a(q),new A.eA(a),t.HY.h("aB")) +if(b){q=t.Y +r=new A.aB(s.a(r),new A.aP(1,0,q),q.h("aB"))}return r}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aT5()}, +b1(a){var s,r,q,p=this +p.bc(a) +s=p.a +r=s.f +if(r.a!==a.f.a){q=p.d +q===$&&A.b() +q.e=r}s=s.w +if(s!==a.w)p.e=p.a3V(s,!0) +s=p.a +s=s.e +if(s!==a.e)switch(s.a){case 0:s=p.d +s===$&&A.b() +s.eI(0) +break +case 1:s=p.d +s===$&&A.b() +s.cM(0) +break}}, +q(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.d +g===$&&A.b() +g=g.Q +g===$&&A.b() +s=g===B.a9||g===B.bg +r=i.a +q=i.f +p=i.e +if(s){o=r.d +q===$&&A.b() +n=r.c +p===$&&A.b() +m=p +l=q +k=B.ZX +j=B.ZW}else{o=r.c +p===$&&A.b() +n=r.d +q===$&&A.b() +m=q +l=p +k=B.ZW +j=B.ZX}g=g===B.bg||g===B.bs +r.toString +q=A.n6(new A.pa(!0,new A.a2T(!0,new A.dg(m,!1,n,h),h),h),!0,h) +return A.p3(A.xS(B.cW,r.bzQ(new A.wV(!0,A.n6(new A.pa(!1,new A.a2T(!1,new A.dg(l,!1,o,h),h),h),!1,h),k),k,new A.wV(g,q,j),j),r.y,r.f,h),B.k,h)}} +A.bR4.prototype={ +$1(a){this.a.C(new A.bR3())}, +$S:10} +A.bR3.prototype={ +$0(){}, +$S:0} +A.akC.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.a_3.prototype={ +J(){return new A.aKF(null,null,B.f)}} +A.aKF.prototype={ +q(a){var s=this.a +return new A.aKE(s.d,s.e,s.f,s.r,this,B.k,null,s.c,null)}} +A.aKE.prototype={ +aR(a){var s=this +return A.dcj(s.e,s.y,s.f,s.r,s.z,s.w,A.fq(a),s.x)}, +b_(a,b){var s,r=this +b.siN(r.e) +b.sC2(0,r.r) +b.sbGq(r.w) +b.sbt1(0,r.f) +b.sI9(r.x) +b.sd5(A.fq(a)) +s=r.y +if(s!==b.jA){b.jA=s +b.aV() +b.cs()}b.sacj(0,r.z)}} +A.b_p.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.G4.prototype={ +k(a){return"Entry#"+A.bq(this)+"("+this.d.k(0)+")"}} +A.xT.prototype={ +J(){return new A.acE(A.b9(t.mk),B.hK,null,null,B.f)}, +bHk(a,b){return this.w.$2(a,b)}, +bzP(a,b){return A.doG().$2(a,b)}} +A.acE.prototype={ +a8(){this.an() +this.ai9(!1)}, +b1(a){var s,r,q,p=this +p.bc(a) +if(!J.q(p.a.w,a.w)){p.e.aE(0,p.gbl8()) +s=p.d +if(s!=null)p.a6K(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.I(s)===A.I(q)&&J.q(s.a,q.a))}else s=!1 +else s=!0 +if(s){++p.r +p.ai9(!0)}else{s=p.d +if(s!=null){q=p.a.c +q.toString +s.d=q +p.a6K(s) +p.f=null}}}, +ai9(a){var s,r,q,p=this,o=p.d +if(o!=null){p.e.B(0,o) +p.d.a.eI(0) +p.d=p.f=null}o=p.a +if(o.c==null)return +s=A.bQ(null,o.d,null,1,null,p) +o=p.a +r=A.cI(o.f,s,o.r) +o=p.a +q=o.c +q.toString +p.d=p.bas(r,o.w,q,s) +if(a)s.cM(0) +else s.sj(0,1)}, +bas(a,b,c,d){var s=new A.G4(d,a,A.d8T(b.$2(c,a),this.r),c) +a.a.je(new A.bRq(this,s,d)) +return s}, +a6K(a){var s=a.c +a.c=new A.hI(this.a.bHk(a.d,a.b),s.a)}, +bfe(){if(this.f==null){var s=this.e +this.f=A.hi(new A.jJ(s,new A.bRr(),A.z(s).h("jJ")),t.C)}}, +m(){var s,r,q,p,o,n=this.d +if(n!=null)n.a.m() +for(n=this.e,n=A.dy(n,n.r,A.z(n).c),s=n.$ti.c;n.t();){r=n.d +r=(r==null?s.a(r):r).a +r.r.m() +r.r=null +q=r.f0$ +q.b=!1 +B.b.V(q.a) +p=q.c +if(p===$){o=A.dV(q.$ti.c) +q.c!==$&&A.a_() +q.c=o +p=o}if(p.a>0){p.b=p.c=p.d=p.e=null +p.a=0}q=r.em$ +q.b=!1 +B.b.V(q.a) +p=q.c +if(p===$){o=A.dV(q.$ti.c) +q.c!==$&&A.a_() +q.c=o +p=o}if(p.a>0){p.b=p.c=p.d=p.e=null +p.a=0}r.DW()}this.aT6()}, +q(a){var s,r,q,p,o=this +o.bfe() +s=o.a +s.toString +r=o.d +r=r==null?null:r.c +q=o.f +q.toString +p=A.X(q).h("b1<1>") +p=A.hh(new A.b1(q,new A.bRs(o),p),p.h("B.E")) +return s.bzP(r,A.R(p,!0,A.z(p).h("cZ.E")))}} +A.bRq.prototype={ +$1(a){var s +if(a===B.a6){s=this.a +s.C(new A.bRp(s,this.b)) +this.c.m()}}, +$S:10} +A.bRp.prototype={ +$0(){var s=this.a +s.e.F(0,this.b) +s.f=null}, +$S:0} +A.bRr.prototype={ +$1(a){return a.c}, +$S:658} +A.bRs.prototype={ +$1(a){var s=this.a.d +s=s==null?null:s.c.a +return!J.q(a.a,s)}, +$S:197} +A.akE.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.a_a.prototype={ +aR(a){var s=this.$ti +s=new A.a7V(this.e,!0,A.aw(s.h("OQ<1>")),null,A.aw(t.T),s.h("a7V<1>")) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sj(0,this.e) +b.saMs(!0)}} +A.Ww.prototype={ +J(){return new A.akl(B.f)}} +A.akl.prototype={ +gb7J(){$.an.toString +var s=$.cf() +if(s.gW2()!=="/"){$.an.toString +s=s.gW2()}else{this.a.toString +$.an.toString +s=s.gW2()}return s}, +b_0(a){switch(this.d){case null:case void 0:case B.kd:case B.ke:return!0 +case B.ix:case B.r9:case B.iy:A.czb(a.a) +return!0}}, +w4(a){this.d=a +this.QZ(a)}, +a8(){var s=this +s.an() +s.bkT() +$.an.toString +s.w=s.a5y($.cf().a.f,s.a.go) +$.an.aT$.push(s) +s.d=$.an.p4$}, +b1(a){this.bc(a) +this.au_(a)}, +m(){B.b.F($.an.aT$,this) +var s=this.e +if(s!=null)s.m() +this.ap()}, +ajI(){var s=this.e +if(s!=null)s.m() +this.f=this.e=null}, +au_(a){var s,r=this +r.a.toString +if(r.gaum()){r.ajI() +if(r.r!=null){r.a.toString +a.toString +s=!1}else s=!0 +if(s){s=r.a.c +r.r=new A.yW(r,t.TX)}}else{r.ajI() +r.r=null}}, +bkT(){return this.au_(null)}, +gaum(){this.a.toString +var s=!1 +return s}, +bbp(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)}, +bcv(a){return this.a.at.$1(a)}, +Mw(){var s=0,r=A.p(t.y),q,p=this,o,n +var $async$Mw=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.a.toString +o=p.r +n=o==null?null:o.gam() +if(n==null){q=!1 +s=1 +break}q=n.Y6() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Mw,r)}, +G4(a){return this.btT(a)}, +btT(a){var s=0,r=A.p(t.y),q,p=this,o,n,m,l +var $async$G4=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p.a.toString +o=p.r +n=o==null?null:o.gam() +if(n==null){q=!1 +s=1 +break}m=a.gfh() +o=m.geh(m).length===0?"/":m.geh(m) +l=m.gCZ() +l=l.gad(l)?null:m.gCZ() +o=A.fi(m.gov().length===0?null:m.gov(),null,o,null,null,null,l,null).grg() +n.bEJ(A.pM(o,0,o.length,B.ai,!1),t.X) +q=!0 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$G4,r)}, +a5y(a,b){this.a.toString +return A.dp4(a,b)}, +ayz(a){var s=this,r=s.a5y(a,s.a.go) +if(!r.l(0,s.w))s.C(new A.cn9(s,r))}, +q(a){var s,r,q,p,o,n,m,l,k=this,j=null,i={} +i.a=null +k.a.toString +if(k.gaum()){s=k.r +r=k.gb7J() +q=k.a +q=q.ch +q.toString +i.a=A.aue(!0,A.cyb(B.i,r,s,q,A.cTf(),k.gbbo(),j,k.gbcu(),B.IR,!0,"nav",B.bu7),"Navigator Scope",j,j,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.Uw(r,q,p,s.b,"router",j,t.SB)}}i.b=null +s=k.a +s.toString +o=new A.e_(new A.cn7(i,k),j) +i.b=o +i.b=A.h4(o,j,j,B.aG,!0,s.db,j,j,B.a0) +s=k.a +n=k.a5y(A.a([s.dy],t.ss),k.a.go) +s=k.a.p4 +r=A.dgV() +q=A.rB($.cYG(),t.u,t.od) +q.n(0,B.yh,new A.a8U(new A.bN(A.a([],t.h),t.b)).ht(a)) +p=A.bzQ() +m=t.aQ +l=A.a([],m) +B.b.L(l,k.a.fr) +l.push(B.a63) +m=A.a(l.slice(0),m) +return new A.a8B(new A.a9v(new A.ff(k.gb__(),A.Fi(new A.asp(A.ts(q,A.cwT(new A.aFT(new A.a9x(new A.E2(n,m,new A.e_(new A.cn8(i,k),j),j),j),j),p)),j),"",r),j,t.en),j),s,j)}} +A.cn9.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.cn7.prototype={ +$1(a){return this.b.a.CW.$2(a,this.a.a)}, +$S:8} +A.cn8.prototype={ +$1(a){var s=this.b,r=s.a.cy.$1(a) +s=s.a.dx +return new A.W2(r,A.Y(255,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),this.a.b,null)}, +$S:663} +A.b1m.prototype={} +A.wK.prototype={ +J(){var s=this.$ti +return new A.aiZ(B.f,s.h("@").a1(s.h("wK.S")).h("aiZ<1,2>"))}} +A.aiZ.prototype={ +a8(){var s,r=this +r.an() +s=r.a +s.toString +s=A.cET(A.z(s).c) +r.e=s +r.Ju()}, +b1(a){var s,r=this +r.bc(a) +if(!a.c.l(0,r.a.c)){if(r.d!=null){r.aiG() +r.a.toString +s=r.e +s===$&&A.b() +r.e=new A.f4(B.tq,s.b,s.c,s.d,s.$ti)}r.Ju()}}, +q(a){var s,r=this.a +r.toString +s=this.e +s===$&&A.b() +return r.lC(a,s)}, +m(){this.aiG() +this.ap()}, +Ju(){var s,r=this +r.d=r.a.c.jH(new A.cfY(r),new A.cfZ(r),new A.cg_(r)) +r.a.toString +s=r.e +s===$&&A.b() +r.e=new A.f4(B.C6,s.b,s.c,s.d,s.$ti)}, +aiG(){var s=this.d +if(s!=null){s.ao(0) +this.d=null}}} +A.cfY.prototype={ +$1(a){var s=this.a +s.C(new A.cfX(s,a))}, +$S(){return this.a.$ti.h("~(1)")}} +A.cfX.prototype={ +$0(){var s=this.a,r=s.a +r.toString +s.e===$&&A.b() +s.e=new A.f4(B.C7,this.b,null,null,A.z(r).h("f4<1>"))}, +$S:0} +A.cg_.prototype={ +$2(a,b){var s=this.a +s.C(new A.cfV(s,a,b))}, +$S:23} +A.cfV.prototype={ +$0(){var s=this.a,r=s.a +r.toString +s.e===$&&A.b() +s.e=new A.f4(B.C7,null,this.b,this.c,A.z(r).h("f4<1>"))}, +$S:0} +A.cfZ.prototype={ +$0(){var s=this.a +s.C(new A.cfW(s))}, +$S:0} +A.cfW.prototype={ +$0(){var s,r=this.a +r.a.toString +s=r.e +s===$&&A.b() +r.e=new A.f4(B.kE,s.b,s.c,s.d,s.$ti)}, +$S:0} +A.HS.prototype={ +H(){return"ConnectionState."+this.b}} +A.f4.prototype={ +gbG7(){var s,r=this.b +if(r!=null)return r +r=this.c +if(r!=null){s=this.d +s.toString +A.atA(r,s)}throw A.d(A.a0("Snapshot has neither data nor error"))}, +k(a){var s=this +return"AsyncSnapshot("+s.a.k(0)+", "+A.r(s.b)+", "+A.r(s.c)+", "+A.r(s.d)+")"}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return s.$ti.b(b)&&b.a===s.a&&J.q(b.b,s.b)&&J.q(b.c,s.c)&&b.d==s.d}, +gv(a){return A.ad(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.Mq.prototype={ +lC(a,b){return this.e.$2(a,b)}} +A.Rc.prototype={ +J(){return new A.aeW(B.f,this.$ti.h("aeW<1>"))}} +A.aeW.prototype={ +a8(){var s,r=this +r.an() +r.a.toString +s=A.cET(r.$ti.c) +r.e=s +r.Ju()}, +b1(a){var s,r=this +r.bc(a) +if(a.c===r.a.c)return +if(r.d!=null){r.d=null +s=r.e +s===$&&A.b() +r.e=new A.f4(B.tq,s.b,s.c,s.d,s.$ti)}r.Ju()}, +q(a){var s,r=this.a +r.toString +s=this.e +s===$&&A.b() +return r.d.$2(a,s)}, +m(){this.d=null +this.ap()}, +Ju(){var s,r=this,q=r.a +q.toString +s=r.d=new A.S() +q.c.ki(new A.c0F(r,s),new A.c0G(r,s),t.H) +q=r.e +q===$&&A.b() +if(q.a!==B.kE)r.e=new A.f4(B.C6,q.b,q.c,q.d,q.$ti)}} +A.c0F.prototype={ +$1(a){var s=this.a +if(s.d===this.b)s.C(new A.c0E(s,a))}, +$S(){return this.a.$ti.h("bd(1)")}} +A.c0E.prototype={ +$0(){var s=this.a +s.e=new A.f4(B.kE,this.b,null,null,s.$ti.h("f4<1>"))}, +$S:0} +A.c0G.prototype={ +$2(a,b){var s=this.a +if(s.d===this.b)s.C(new A.c0D(s,a,b))}, +$S:23} +A.c0D.prototype={ +$0(){var s=this.a +s.e=new A.f4(B.kE,null,this.b,this.c,s.$ti.h("f4<1>"))}, +$S:0} +A.b5d.prototype={ +H(){return"AutofillContextAction."+this.b}} +A.Hl.prototype={ +J(){return new A.ans(A.N(t.N,t.Ul),B.f)}} +A.ans.prototype={ +gbnf(){var s=this.d.gbm(0) +return new A.b1(s,new A.b5e(),A.z(s).h("b1"))}, +av(a,b){this.d.cP(0,b.gavJ(),new A.b5f(b))}, +c5(){this.dH() +var s=this.c +s.toString +this.e=A.cF0(s)==null}, +q(a){return new A.acN(this,this.a.c,null)}, +m(){this.ap() +if(!this.e)return +this.a.toString +switch(0){case 0:A.df6(!0) +break}}} +A.b5e.prototype={ +$1(a){return a.goF().e.a}, +$S:664} +A.b5f.prototype={ +$0(){return this.a}, +$S:665} +A.acN.prototype={ +ed(a){return this.f!==a.f}} +A.aKZ.prototype={} +A.Hm.prototype={ +J(){return new A.acO(B.f)}} +A.acO.prototype={ +a8(){this.an() +this.aiN()}, +b1(a){this.bc(a) +this.aiN()}, +aiN(){this.e=new A.ff(this.gaVI(),this.a.c,null,t.Ji)}, +m(){var s,r,q=this.d +if(q!=null)for(q=A.jL(q,q.r,A.z(q).c);q.t();){s=q.d +r=this.d.i(0,s) +r.toString +s.O(0,r)}this.ap()}, +aVJ(a){var s,r=this,q=a.a,p=r.d +if(p==null)p=r.d=A.N(t.I_,t.O) +p.n(0,q,r.aZj(q)) +p=r.d.i(0,q) +p.toString +q.a3(0,p) +if(!r.f){r.f=!0 +s=r.am0() +if(s!=null)r.atU(s) +else $.cW.xr$.push(new A.bSh(r))}return!1}, +am0(){var s={},r=this.c +r.toString +s.a=null +r.d0(new A.bSm(s)) +return t.xO.a(s.a)}, +atU(a){var s,r +this.c.toString +s=this.f +r=this.e +r===$&&A.b() +a.aiE(t.ZG.a(A.d8L(r,s)))}, +aZj(a){var s=A.aF("callback"),r=new A.bSl(this,a,s) +s.se9(r) +return r}, +q(a){var s=this.f,r=this.e +r===$&&A.b() +return new A.a4I(s,r,null)}} +A.bSh.prototype={ +$1(a){var s,r=this.a +if(r.c==null)return +s=r.am0() +s.toString +r.atU(s)}, +$S:5} +A.bSm.prototype={ +$1(a){this.a.a=a}, +$S:34} +A.bSl.prototype={ +$0(){var s=this.a,r=this.b +s.d.F(0,r) +r.O(0,this.c.aX()) +if(s.d.a===0)if($.cW.c_$.a<3)s.C(new A.bSj(s)) +else{s.f=!1 +A.j8(new A.bSk(s))}}, +$S:0} +A.bSj.prototype={ +$0(){this.a.f=!1}, +$S:0} +A.bSk.prototype={ +$0(){var s=this.a +if(s.c!=null&&s.d.a===0)s.C(new A.bSi(s))}, +$S:0} +A.bSi.prototype={ +$0(){}, +$S:0} +A.JL.prototype={} +A.a4J.prototype={ +m(){this.ab() +this.f4()}} +A.lq.prototype={ +mC(){var s=new A.a4J($.ae()) +this.eW$=s +this.c.jj(new A.JL(s))}, +x_(){var s,r=this +if(r.gmv()){if(r.eW$==null)r.mC()}else{s=r.eW$ +if(s!=null){s.ab() +s.f4() +r.eW$=null}}}, +q(a){if(this.gmv()&&this.eW$==null)this.mC() +return B.bzT}} +A.aSq.prototype={ +q(a){throw A.d(A.Ds("Widgets that mix AutomaticKeepAliveClientMixin into their State must call super.build() but must ignore the return value of the superclass."))}} +A.aZ9.prototype={ +afz(a,b){}, +wB(a){A.cP9(this,new A.cmd(this,a))}} +A.cmd.prototype={ +$1(a){var s=a.y +if(s!=null&&s.p(0,this.a))a.c5()}, +$S:34} +A.cmc.prototype={ +$1(a){A.cP9(a,this.a)}, +$S:34} +A.aZa.prototype={ +dv(a){return new A.aZ9(A.hg(null,null,null,t.lU,t.X),this,B.aD)}} +A.rn.prototype={ +ed(a){return this.w!==a.w}} +A.T4.prototype={ +aR(a){return A.dcr(!1,this.e)}, +b_(a,b){b.shn(0,this.e) +b.sLw(!1)}} +A.anA.prototype={ +aR(a){var s=new A.aCG(this.e,B.cX,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sWM(0,this.e) +b.sp6(B.cX)}} +A.a1u.prototype={ +aR(a){var s=new A.a7Z(this.e,this.f,this.r,!1,!1,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sCR(this.e) +b.sazY(this.f) +b.sqy(this.r) +b.en=b.cZ=!1}, +MA(a){a.sCR(null) +a.sazY(null)}} +A.yg.prototype={ +aR(a){var s=new A.aCL(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sFH(this.e) +b.soi(this.f)}, +MA(a){a.sFH(null)}} +A.apl.prototype={ +aR(a){var s=new A.aCK(this.e,A.fq(a),null,B.dL,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sa7A(0,this.e) +b.soi(B.dL) +b.sFH(null) +b.sd5(A.fq(a))}} +A.PF.prototype={ +aR(a){var s=new A.aCJ(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sFH(this.e) +b.soi(this.f)}, +MA(a){a.sFH(null)}} +A.b9u.prototype={ +$1(a){return A.b9s(this.c,this.b,new A.Ad(this.a,A.fq(a),null))}, +$S:668} +A.aBi.prototype={ +aR(a){var s=this,r=new A.aCY(s.e,s.r,s.w,s.y,s.x,null,s.f,null,A.aw(t.T)) +r.aQ() +r.sbq(null) +return r}, +b_(a,b){var s=this +b.sdg(0,s.e) +b.soi(s.f) +b.sa7A(0,s.r) +b.sft(0,s.w) +b.sa6(0,s.x) +b.sc0(0,s.y)}} +A.aBj.prototype={ +aR(a){var s=this,r=new A.aCZ(s.r,s.x,s.w,s.e,s.f,null,A.aw(t.T)) +r.aQ() +r.sbq(null) +return r}, +b_(a,b){var s=this +b.sFH(s.e) +b.soi(s.f) +b.sft(0,s.r) +b.sa6(0,s.w) +b.sc0(0,s.x)}} +A.t7.prototype={ +aR(a){var s=this,r=A.fq(a),q=new A.aDj(s.w,null,A.aw(t.T)) +q.aQ() +q.sbq(null) +q.seJ(0,s.e) +q.siN(s.r) +q.sd5(r) +q.sot(s.x) +q.sCP(0,null) +return q}, +b_(a,b){var s=this +b.seJ(0,s.e) +b.sCP(0,null) +b.siN(s.r) +b.sd5(A.fq(a)) +b.cZ=s.w +b.sot(s.x)}} +A.yj.prototype={ +aR(a){var s=new A.aCU(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sCB(this.e)}} +A.PV.prototype={ +aR(a){var s=new A.aCP(this.e,this.f,this.x,B.ca,B.ca,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sCB(this.e) +b.saMg(this.f) +b.sfl(0,this.x) +b.sbzT(B.ca) +b.sbwA(B.ca)}} +A.a35.prototype={ +aR(a){var s=new A.a81(this.e,this.f,A.fq(a),this.r,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s +b.srB(this.e) +b.siN(this.f) +b.sd5(A.fq(a)) +s=this.r +if(s!==b.i9){b.i9=s +b.aV() +b.cs()}}} +A.aup.prototype={ +aR(a){var s=new A.aCQ(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sbHn(this.e) +b.ac=this.f}} +A.aA.prototype={ +aR(a){var s=new A.a8c(this.e,A.fq(a),null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sdX(0,this.e) +b.sd5(A.fq(a))}} +A.fl.prototype={ +aR(a){return A.cLC(this.e,null,this.r,A.fq(a),this.f)}, +b_(a,b){b.siN(this.e) +b.saed(this.f) +b.sab4(this.r) +b.sd5(A.fq(a))}} +A.k9.prototype={} +A.q1.prototype={ +aR(a){var s=new A.a8_(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sdW(this.e)}} +A.JS.prototype={ +tX(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.gbR(a) +if(r instanceof A.H)r.a9()}}} +A.yr.prototype={ +aR(a){var s=new A.a7Y(this.e,0,null,null,A.aw(t.T)) +s.aQ() +s.L(0,null) +return s}, +b_(a,b){b.sdW(this.e)}} +A.ba.prototype={ +aR(a){return A.cLy(A.fH(this.f,this.e))}, +b_(a,b){b.sa7d(A.fH(this.f,this.e))}, +hL(){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.k(0)}} +A.fI.prototype={ +aR(a){return A.cLy(this.e)}, +b_(a,b){b.sa7d(this.e)}} +A.a0Y.prototype={ +aR(a){var s=null,r=A.fq(a) +r=new A.a7X(this.r,this.w,B.a8,B.a8,A.aw(t.O5),A.aK(4,A.jT(s,s,s,s,s,B.ah,B.j,s,1,B.Y,B.a0),!1,t.mi),!0,this.f,r,s,A.aw(t.T)) +r.aQ() +r.sbq(s) +return r}, +b_(a,b){var s=A.fq(a) +b.sd5(s) +b.sa8m(this.r) +b.siN(this.f) +s=this.w +if(s!==b.eQ){b.eQ=s +b.aV() +b.cs()}}} +A.aH5.prototype={ +aWk(a){if(a!=null)switch(a.a){case 0:return A.dp5() +case 1:return A.dp7()}else return A.dp6()}, +q(a){var s=this +return A.d3u(s.d,s.r,s.f,s.aWk(s.e),null)}} +A.auq.prototype={ +aR(a){var s=new A.a83(null,this.f,this.r,A.fq(a),null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.siN(this.r) +b.saed(null) +b.sab4(this.f) +b.sd5(A.fq(a))}} +A.awV.prototype={ +aR(a){var s=new A.aCV(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sbAR(0,this.e) +b.sbAQ(0,this.f)}} +A.Eo.prototype={ +aR(a){var s=new A.a8b(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sYh(this.e)}, +dv(a){return new A.aSE(this,B.aD)}} +A.aSE.prototype={} +A.tu.prototype={ +aR(a){var s=new A.a7W(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sa7p(0,this.e)}} +A.aw9.prototype={ +aR(a){var s=this.e +if(s===0)s=null +return A.dcm(null,s)}, +b_(a,b){var s=this.e +b.saNs(s===0?null:s) +b.saNr(null)}} +A.aw8.prototype={ +aR(a){var s=new A.a87(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.ht.prototype={ +aR(a){var s=new A.aDi(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.wI.prototype={ +aR(a){var s=a.a0(t.I) +s.toString +s=new A.aDd(this.e,s.w,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s +b.sdX(0,this.e) +s=a.a0(t.I) +s.toString +b.sd5(s.w)}} +A.ax0.prototype={ +aR(a){var s=new A.a88(A.csf(a,B.v,!1),0,null,null,A.aw(t.T)) +s.aQ() +s.L(0,null) +return s}, +b_(a,b){b.siO(A.csf(a,B.v,!1))}} +A.d4.prototype={ +aR(a){var s=A.fq(a) +return A.dct(this.e,null,this.w,this.r,s)}, +b_(a,b){var s +b.siN(this.e) +s=A.fq(a) +b.sd5(s) +b.srB(this.r) +b.soi(this.w)}} +A.aw2.prototype={ +q(a){var s,r,q=this.w,p=q.length,o=J.d1(p,t.C) +for(s=this.r,r=0;r").a1(m.y[1]),n=new A.c4(J.au(n.a),n.b,m.h("c4<1,2>")),m=m.y[1];n.t();){l=n.a +o=l==null?m.a(l):l +o.lM()}}finally{}p.a0_() +s=3 +return A.i(p.gaz6(),$async$rV) +case 3:return A.n(null,r)}}) +return A.o($async$rV,r)}, +zk(a,b,c){var s,r=this.fx$.i(0,c) +if(r!=null){s=r.k1$ +if(s!=null)s.es(A.b6I(a),b) +a.B(0,new A.oa(r,t.AL))}this.aOB(a,b,c)}} +A.aks.prototype={ +nP(){var s,r=this +r.aT1() +$.an=r +s=A.cvw(null,null) +r.U$=s +s.a=r.gb33() +s=$.cf() +s.fr=r.gbxd() +s.fx=$.at +B.pq.vg(r.gb52()) +s=new A.aso(A.N(t.S,t.qa),B.Sx) +B.Sx.vg(s.gb9X()) +r.aW$=s}, +aaO(){var s,r,q +this.aQ1() +for(s=A.R(this.aT$,!0,t.X5),r=s.length,q=0;q=s.b&&s.c>=s.d) +else s=!0}else s=!1 +if(s)m=new A.awV(0,0,new A.fI(B.ki,n,n),n) +else{s=o.d +if(s!=null)m=new A.fl(s,n,n,m,n)}r=o.gbcT() +if(r!=null)m=new A.aA(r,m,n) +s=o.f +if(s!=null)m=new A.m7(s,m,n) +s=o.as +if(s!==B.i){q=A.fq(a) +p=o.r +p.toString +m=A.b9s(m,s,new A.aNg(q==null?B.j:q,p,n))}s=o.r +if(s!=null)m=A.o1(m,s,B.cB) +s=o.w +if(s!=null)m=A.o1(m,s,B.tI) +s=o.x +if(s!=null)m=new A.fI(s,m,n) +s=o.y +if(s!=null)m=new A.aA(s,m,n) +s=o.z +if(s!=null)m=A.x0(o.Q,m,n,s,!0) +m.toString +return m}} +A.aNg.prototype={ +Ip(a){return this.c.PC(new A.W(0,0,0+a.a,0+a.b),this.b)}, +IT(a){return!a.c.l(0,this.c)||a.b!==this.b}} +A.tH.prototype={ +H(){return"ContextMenuButtonType."+this.b}} +A.hT.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.hT&&b.c==s.c&&J.q(b.a,s.a)&&b.b===s.b}, +gv(a){return A.ad(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)}, +k(a){return"ContextMenuButtonItem "+this.b.k(0)+", "+A.r(this.c)}} +A.apQ.prototype={ +afU(a,b,c){var s,r +A.cG8() +s=A.a5e(b,t.N1) +s.toString +r=A.cKj(b) +if(r==null)r=null +else{r=r.c +r.toString}r=A.rK(new A.baO(A.RM(b,r),c),!1,!1,!1) +$.HW=r +s.uz(0,r) +$.ym=this}, +hB(a){if($.ym!==this)return +A.cG8()}} +A.baO.prototype={ +$1(a){return new A.xc(this.a.a,this.b.$1(a),null)}, +$S:8} +A.Cq.prototype={ +x0(a,b,c){return A.bcc(c,this.w,null,this.y,this.x)}, +ed(a){return!J.q(this.w,a.w)||!J.q(this.x,a.x)||!J.q(this.y,a.y)}} +A.bcd.prototype={ +$1(a){var s=a.a0(t.Uf) +if(s==null)s=B.eZ +return A.bcc(this.e,s.w,this.a,this.d,s.x)}, +$S:670} +A.aSr.prototype={ +q(a){throw A.d(A.Ds("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.asp.prototype={ +b1X(){return $.cV5()}, +q(a){var s=A.Fi(this.c,"",this.b1X()) +return A.Fi(s,"",A.d4l())}} +A.asz.prototype={ +A8(a){return new A.aG(0,a.b,0,a.d)}, +Aa(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.j(q,s>0?r-s:r)}, +nt(a){return!this.b.l(0,a.b)}} +A.q2.prototype={ +H(){return"DismissDirection."+this.b}} +A.Cs.prototype={ +J(){var s=null +return new A.aef(new A.aR(s,t.A),s,s,s,B.f)}} +A.aeJ.prototype={ +H(){return"_FlingGestureKind."+this.b}} +A.aef.prototype={ +a8(){var s,r,q=this +q.aTo() +q.a.toString +s=A.bQ(null,B.K,null,1,null,q) +s.cY() +r=s.f0$ +r.b=!0 +r.a.push(q.gb3y()) +s.cY() +r=s.em$ +r.b=!0 +r.a.push(q.gb3A()) +q.d=s +q.a6B()}, +gmv(){var s=this.d +if(s==null)s=null +else{s=s.r +s=s!=null&&s.a!=null}if(s!==!0){s=this.f +if(s==null)s=null +else{s=s.r +s=s!=null&&s.a!=null}s=s===!0}else s=!0 +return s}, +m(){this.d.m() +var s=this.f +if(s!=null)s.m() +this.aTn()}, +gpX(){var s=this.a.x +return s===B.ahl||s===B.nc||s===B.tV}, +xK(a){var s +if(a===0)return B.CJ +if(this.gpX()){s=this.c.a0(t.I) +s.toString +switch(s.w.a){case 0:return a<0?B.tV:B.nc +case 1:return a>0?B.tV:B.nc}}return a>0?B.tW:B.ahm}, +gaps(){var s=this.c.gu(0) +s.toString +return this.gpX()?s.a:s.b}, +b_y(a){var s,r,q=this +if(q.x)return +q.y=!0 +s=q.d +r=s.r +if(r!=null&&r.a!=null){s=s.x +s===$&&A.b() +q.w=s*q.gaps()*J.iM(q.w) +q.d.e3(0)}else{q.w=0 +s.sj(0,0)}q.C(new A.bXQ(q))}, +b_z(a){var s,r,q,p=this +if(!p.y){s=p.d.r +s=s!=null&&s.a!=null}else s=!0 +if(s){s=p.d.r +s=s!=null&&s.a!=null}else s=!0 +if(s)return +s=a.c +s.toString +r=p.w +switch(p.a.x.a){case 1:case 0:p.w=r+s +break +case 4:s=r+s +if(s<0)p.w=s +break +case 5:s=r+s +if(s>0)p.w=s +break +case 2:q=p.c.a0(t.I) +q.toString +switch(q.w.a){case 0:s=p.w+s +if(s>0)p.w=s +break +case 1:s=p.w+s +if(s<0)p.w=s +break}break +case 3:q=p.c.a0(t.I) +q.toString +switch(q.w.a){case 0:s=p.w+s +if(s<0)p.w=s +break +case 1:s=p.w+s +if(s>0)p.w=s +break}break +case 6:p.w=0 +break}if(J.iM(r)!==J.iM(p.w))p.C(new A.bXR(p)) +s=p.d +q=s.r +if(!(q!=null&&q.a!=null))s.sj(0,Math.abs(p.w)/p.gaps())}, +b3B(){this.a.toString}, +a6B(){var s,r,q=this,p=J.iM(q.w),o=q.d +o.toString +s=q.gpX() +r=q.a +if(s){r.toString +s=new A.j(p,0)}else{r.toString +s=new A.j(0,p)}r=t.Ni +q.e=new A.aB(t.o.a(o),new A.aP(B.h,s,r),r.h("aB"))}, +b_a(a){var s,r,q,p,o=this +if(o.w===0)return B.yK +s=a.a +r=s.a +q=s.b +if(o.gpX()){s=Math.abs(r) +if(s-Math.abs(q)<400||s<700)return B.yK +p=o.xK(r)}else{s=Math.abs(q) +if(s-Math.abs(r)<400||s<700)return B.yK +p=o.xK(q)}if(p===o.xK(o.w))return B.bz7 +return B.bz8}, +b_x(a){var s,r,q,p=this +if(!p.y){s=p.d.r +s=s!=null&&s.a!=null}else s=!0 +if(s){s=p.d.r +s=s!=null&&s.a!=null}else s=!0 +if(s)return +p.y=!1 +if(p.d.gbM(0)===B.a9){p.Kb() +return}s=a.a +r=s.a +q=p.gpX()?r.a:r.b +switch(p.b_a(s).a){case 1:p.a.toString +B.wl.i(0,p.xK(p.w)) +p.w=J.iM(q) +p.d.WY(Math.abs(q)*0.0033333333333333335) +break +case 2:p.w=J.iM(q) +p.d.WY(-Math.abs(q)*0.0033333333333333335) +break +case 0:if(p.d.gbM(0)!==B.a6){s=p.d.x +s===$&&A.b() +p.a.toString +B.wl.i(0,p.xK(p.w)) +r=p.d +if(s>0.4)r.cM(0) +else r.eI(0)}break}}, +S4(a){return this.b3z(a)}, +b3z(a){var s=0,r=A.p(t.H),q=this +var $async$S4=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=a===B.a9&&!q.y?2:3 +break +case 2:s=4 +return A.i(q.Kb(),$async$S4) +case 4:case 3:if(q.c!=null)q.x_() +return A.n(null,r)}}) +return A.o($async$S4,r)}, +Kb(){var s=0,r=A.p(t.H),q=this,p +var $async$Kb=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.a.toString +B.wl.i(0,q.xK(q.w)) +s=2 +return A.i(q.a2b(),$async$Kb) +case 2:p=b +if(q.c!=null)if(p)q.biT() +else q.d.eI(0) +return A.n(null,r)}}) +return A.o($async$Kb,r)}, +a2b(){var s=0,r=A.p(t.y),q,p=this +var $async$a2b=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.a.toString +q=!0 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a2b,r)}, +biT(){var s,r,q=this,p=q.a.y +if(p==null){s=q.xK(q.w) +q.a.w.$1(s)}else{p=A.bQ(null,p,null,1,null,q) +p.cY() +r=p.em$ +r.b=!0 +r.a.push(q.gb5M()) +p.cY() +r=p.f0$ +r.b=!0 +r.a.push(new A.bXS(q)) +q.f=p +p.cM(0) +q.C(new A.bXT(q))}}, +b5N(){var s=this,r=s.f.gbM(0),q=s.a +if(r===B.a9)q.w.$1(s.xK(s.w)) +else q.toString}, +q(a){var s,r,q,p,o,n,m,l=this,k=null +l.o5(a) +s=l.a +s.toString +r=l.r +if(r!=null){s=l.gpX()?B.v:B.a_ +q=l.z +return A.a9K(s,0,new A.ba(q.a,q.b,k,k),r)}r=l.e +r===$&&A.b() +p=A.aEM(new A.hI(s.c,l.as),r,k,!0) +if(s.x===B.CJ)return p +s=l.gpX()?l.gakO():k +r=l.gpX()?l.gakP():k +q=l.gpX()?l.gakN():k +o=l.gpX()?k:l.gakO() +n=l.gpX()?k:l.gakP() +m=l.gpX()?k:l.gakN() +return A.dn(l.a.ax,p,B.m,!1,k,k,k,k,q,s,r,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,m,o,n,!1,B.ac)}} +A.bXQ.prototype={ +$0(){this.a.a6B()}, +$S:0} +A.bXR.prototype={ +$0(){this.a.a6B()}, +$S:0} +A.bXS.prototype={ +$1(a){return this.a.x_()}, +$S:10} +A.bXT.prototype={ +$0(){var s,r,q,p=this.a +p.z=p.c.gu(0) +s=p.f +s.toString +r=t.o +q=t.Y +p.r=new A.aB(r.a(new A.aB(r.a(s),new A.eA(B.aAj),t.HY.h("aB"))),new A.aP(1,0,q),q.h("aB"))}, +$S:0} +A.akV.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.akW.prototype={ +a8(){this.an() +if(this.gmv())this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.Qv.prototype={ +q(a){var s=A.bC(a,null,t.l).w,r=s.a,q=r.a,p=r.b,o=A.d4H(a),n=A.d4F(o,r),m=A.d4G(A.cwn(new A.W(0,0,0+q,0+p),A.cwm(s)),n) +return new A.aA(new A.af(m.a,m.b,q-m.c,p-m.d),A.rC(this.d,s.bFJ(m),null),null)}} +A.bdz.prototype={ +$1(a){var s +if(!a.gvT(a).giu().pN(0,0)){a.glV(a) +s=!1}else s=!0 +return s}, +$S:522} +A.bdA.prototype={ +$1(a){return a.gvT(a)}, +$S:673} +A.asQ.prototype={ +gdz(a){var s=this.a +if(s==null)return null +s=s.c +s.toString +return s}} +A.vN.prototype={ +ay5(a){var s,r,q=null +switch(null){case B.a_:s=t.S +r=A.csX() +s=new A.avt(A.N(s,t.s9),q,q,r,A.N(s,t.F)) +s.f=a +return s +case B.v:s=t.S +r=A.csX() +s=new A.aHy(A.N(s,t.s9),q,q,r,A.N(s,t.F)) +s.f=a +return s +case null:case void 0:s=A.cIX(this.db,q,q) +s.f=a +return s}}, +J(){return new A.Xi(B.f,A.z(this).h("Xi<1>"))}, +buK(a,b,c){return this.x.$3(a,b,c)}} +A.a59.prototype={ +ay5(a){var s=t.S,r=A.csX() +s=new A.asu(B.bd,A.N(s,t.s9),null,null,r,A.N(s,t.F)) +s.f=new A.bpz(this,a) +return s}} +A.bpz.prototype={ +$1(a){var s=this.b.$1(a) +if(s!=null&&!0)A.w5() +return s}, +$S:512} +A.Xi.prototype={ +a8(){var s=this +s.an() +s.d=s.a.ay5(s.gbiK())}, +m(){this.akW() +this.ap()}, +c5(){var s,r=this.d +r.toString +s=this.c +s.toString +s=A.cG(s,B.is) +r.b=s==null?null:s.CW +this.dH()}, +akW(){if(this.e>0)return +this.d.m() +this.d=null}, +bgs(a){var s=this.a.as +if(s!=null&&this.e>=s)return +this.d.m9(a)}, +biL(a){var s,r,q,p,o,n,m,l=this,k=l.a,j=k.as +if(j!=null&&l.e>=j)return null +j=l.c +j.toString +s=k.buK(k,j,a) +l.C(new A.bY8(l)) +j=l.c +j.toString +l.a.toString +k=A.a5d(j,t.N1) +k.toString +j=l.a +r=j.c +q=j.d +p=j.r +o=j.w +j=j.y +n=l.c +n.toString +m=new A.G7(r,q,s,p,o,new A.bY9(l),new A.bYa(l),k,j,!0,A.Nj(n).a,A.a([],t.Tc),a,l.$ti.h("G7<1>")) +n=A.rK(m.gb02(),!1,!1,!1) +m.ay=n +k.uz(0,n) +m.aG0(a) +l.a.at.$0() +return m}, +q(a){var s=this,r=null,q=s.a,p=q.as,o=p==null||s.e"))}} +A.cpS.prototype={ +$1(a){return this.a.h("0?").a(a.a)}, +$S(){return this.a.h("0?(G7)")}} +A.xg.prototype={ +bzk(a,b){var s +if(!(b===B.ZP&&A.c6(this.$ti.c)===B.ZN))s=b===B.ZN&&A.c6(this.$ti.c)===B.ZP +else s=!0 +if(s)return!1 +return this.$ti.h("1?").b(a)}, +btR(a){var s,r,q=this,p=q.a,o=p.d,n=o==null +if(!(n&&p.e==null))if(!(!n&&o.$1(q.$ti.h("1?").a(a.a)))){p=q.a.e +if(p!=null){o=q.$ti +n=o.c.a(a.a) +s=a.ax +s.toString +o=p.$1(new A.vM(n,s,o.h("vM<1>"))) +p=o}else p=!1 +r=p}else r=!0 +else r=!0 +if(r){q.C(new A.bY_(q,a)) +return!0}else{q.C(new A.bY0(q,a)) +return!1}}, +btS(a){var s,r=this +if(r.c==null)return +r.C(new A.bY1(r,a)) +s=r.a.w +if(s!=null)s.$1(r.$ti.h("1?").a(a.a))}, +btQ(a){var s,r,q,p,o=this +if(o.c==null)return +o.C(new A.bXZ(o,a)) +s=o.a.f +if(s!=null)s.$1(o.$ti.c.a(a.a)) +s=o.a.r +if(s!=null){r=o.$ti +q=r.c.a(a.a) +p=a.ax +p.toString +s.$1(new A.vM(q,p,r.h("vM<1>")))}}, +ayC(a){if(this.c==null||!1)return +this.a.toString}, +q(a){var s=this,r=s.a +r.toString +return A.cy0(B.cr,r.c.$3(a,A.cQP(s.d,s.$ti.c),A.cQP(s.e,t.K)),s)}} +A.bY_.prototype={ +$0(){this.a.d.push(this.b)}, +$S:0} +A.bY0.prototype={ +$0(){this.a.e.push(this.b)}, +$S:0} +A.bY1.prototype={ +$0(){var s=this.a,r=this.b +B.b.F(s.d,r) +B.b.F(s.e,r)}, +$S:0} +A.bXZ.prototype={ +$0(){B.b.F(this.a.d,this.b)}, +$S:0} +A.aNT.prototype={ +H(){return"_DragEndKind."+this.b}} +A.G7.prototype={ +cI(a,b){var s=this,r=s.at,q=r.S(0,s.aqZ(b.b)) +s.at=q +s.aG0(q) +q=s.at.l(0,r) +if(!q)s.f.$1(b)}, +qn(a,b){this.azN(B.a_m,this.bga(b.a))}, +ao(a){this.bwo(B.byU)}, +aG0(a){var s,r,q,p,o,n,m,l,k,j,i=this +i.ax=a.W(0,i.c) +i.ay.hl() +s=A.Rr() +r=$.an +r.toString +r.zk(s,a.S(0,i.e),i.z) +r=i.b1Y(s.a) +q=A.a(r.slice(0),A.X(r)) +r=q.length +p=i.as +o=p.length +if(r>=o&&o!==0){o=A.X(q) +n=new J.cP(q,r,o.h("cP<1>")) +r=o.c +l=0 +while(!0){if(!(l?>")) +j=r.WW(r,new A.bXV(i),new A.bXW()) +for(r=p.length,k=0;k0)){q=r.aq +s=q.$0() +if(!(s.b>=s.x.a)){s=q.$0() +s=s.c<=s.x.a}else s=!0 +if(s){s=q.$0() +if(!(s.b>=s.x.a&&a<0)){q=q.$0() +q=q.c<=q.x.a&&a>0}else q=!0}else q=!0}else q=!1 +if(q){q=r.aq.$0() +s=$.an.U$.z.i(0,r.w.Q) +s.toString +q.av_(-a,s)}else r.aQA(a)}, +m(){var s,r,q,p,o,n,m +for(s=this.aJ,r=A.dy(s,s.r,A.z(s).c),q=r.$ti.c;r.t();){p=r.d +if(p==null)p=q.a(p) +p.r.m() +p.r=null +o=p.f0$ +o.b=!1 +B.b.V(o.a) +n=o.c +if(n===$){m=A.dV(o.$ti.c) +o.c!==$&&A.a_() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}o=p.em$ +o.b=!1 +B.b.V(o.a) +n=o.c +if(n===$){m=A.dV(o.$ti.c) +o.c!==$&&A.a_() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}p.DW()}s.V(0) +this.ahw()}, +kC(a){var s,r,q,p,o=this,n={} +n.a=a +if(a===0){o.aq.$0() +s=!0}else s=!1 +if(!s){if(a<0){s=o.at +s.toString +s=s>0}else s=!1 +if(!s)if(a>0){s=o.aq.$0() +s=s.c<=s.x.a}else s=!1 +else s=!0}else s=!0 +if(s){o.a15(a) +return}s=o.ag +if(s!=null)s.$0() +o.ag=null +r=A.aF("simulation") +s=o.aq +s.$0() +q=s.$0() +r.se9(A.cFO(q.x.a/q.c*q.y,o.r.t6(o),a)) +p=A.b3O("_DraggableScrollableSheetPosition",0,o.w) +o.aJ.B(0,p) +s=s.$0() +n.b=s.x.a/s.c*s.y +p.cY() +s=p.em$ +s.b=!0 +s.a.push(new A.bY4(n,o,p)) +p.yf(r.aX()).Pf(new A.bY3(o,p))}, +Gd(a,b){this.ag=b +return this.aQC(a,b)}} +A.bY4.prototype={ +$0(){var s,r,q,p,o,n,m,l=this.c,k=l.x +k===$&&A.b() +s=this.a +r=s.b +s.b=k +q=this.b +p=q.aq +o=p.$0() +n=$.an.U$.z.i(0,q.w.Q) +n.toString +o.av_(k-r,n) +if(s.a>0){k=p.$0() +k=k.c<=k.x.a}else k=!1 +if(!k)if(s.a<0){k=p.$0() +k=k.b>=k.x.a}else k=!1 +else k=!0 +if(k){m=l.geC()+q.r.t6(q).c*J.iM(l.geC()) +s.a=m +q.a15(m) +l.e3(0)}else if(l.gbM(0)===B.a9)q.a15(0)}, +$S:0} +A.bY3.prototype={ +$0(){var s=this.a.aJ,r=this.b +if(s.p(0,r)){s.F(0,r) +r.m()}}, +$S:0} +A.aem.prototype={ +hR(a){var s,r +this.QP(a) +s=this.kN$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.Cw.prototype={ +J(){return new A.aeo(A.ms(null),A.ms(null),B.f)}, +bwO(a,b,c){return this.d.$3(a,b,c)}, +bGp(a,b,c){return this.e.$3(a,b,c)}} +A.aeo.prototype={ +a8(){var s,r=this +r.an() +s=r.a.c +r.d=s.gbM(s) +s=r.a.c +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(r.ga1s()) +r.atp()}, +aiw(a){var s,r=this,q=r.d +q===$&&A.b() +s=r.aXF(a,q) +r.d=s +if(q!==s)r.atp()}, +b1(a){var s,r,q=this +q.bc(a) +s=a.c +if(s!==q.a.c){r=q.ga1s() +s.fW(r) +s=q.a.c +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(r) +r=q.a.c +q.aiw(r.gbM(r))}}, +aXF(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}}, +atp(){var s=this,r=s.d +r===$&&A.b() +switch(r.a){case 0:case 1:s.e.sbR(0,s.a.c) +s.f.sbR(0,B.bO) +break +case 2:case 3:s.e.sbR(0,B.iG) +s.f.sbR(0,new A.or(s.a.c,new A.bN(A.a([],t.x8),t.jc),0)) +break}}, +m(){this.a.c.fW(this.ga1s()) +this.ap()}, +q(a){var s=this.a +return s.bwO(a,this.e,s.bGp(a,this.f,s.f))}} +A.aMc.prototype={ +aR(a){var s=new A.aUM(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s +this.a0Y(a,b) +s=this.f +b.aS=s +if(!s){s=b.ac +if(s!=null)s.$0() +b.ac=null}else if(b.ac==null)b.aV()}} +A.aUM.prototype={ +aI(a,b){var s=this +if(s.aS)if(s.ac==null)s.ac=a.a.bm4(s.G) +s.o6(a,b)}} +A.eZ.prototype={ +sce(a,b){this.oQ(0,this.a.M0(B.aw,B.bz,b))}, +aws(a,b,c){var s,r,q,p,o=null +if(!this.a.gaBj()||!c)return A.cy(o,o,o,b,this.a.a) +s=b.dt(B.Zb) +r=this.a +q=r.c +r=r.a +p=q.a +q=q.b +return A.cy(A.a([A.cy(o,o,o,o,B.c.R(r,0,p)),A.cy(o,o,o,s,B.c.R(r,p,q)),A.cy(o,o,o,o,B.c.b0(r,q))],t.Ne),o,o,b,o)}, +sDF(a){var s,r,q,p,o=this +if(!o.aBt(a))throw A.d(A.Ds("invalid text selection: "+a.k(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.aw +o.oQ(0,o.a.bs7(p,a))}, +aBt(a){var s=this.a.a.length +return a.a<=s&&a.b<=s}} +A.W7.prototype={} +A.pF.prototype={} +A.bXP.prototype={ +md(a,b){return 0}, +wq(a){return a>=this.b}, +jN(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}, +bpC(){var s,r=this,q=null,p=r.a.z +if(p===B.y8)return q +s=A.a([],t.ZD) +if(p.b&&r.gVY())s.push(new A.hT(new A.bfH(r),B.Cg,q)) +if(p.a&&r.gVL())s.push(new A.hT(new A.bfI(r),B.ts,q)) +if(p.c&&r.gHm())s.push(new A.hT(new A.bfJ(r),B.Ch,q)) +if(p.d&&r.gafo())s.push(new A.hT(new A.bfK(r),B.tt,q)) +return s}, +b29(){var s,r,q,p,o,n,m,l=this,k=l.a.c.a.b,j=l.gaY().bk.f.aFv(),i=l.a.c.a.a +if(j!==i||!k.gfc()||k.a===k.b)return new A.aPH(l.gaY().bk.giq(),l.gaY().bk.giq()) +s=k.a +r=k.b +q=B.c.R(i,s,r) +p=q.length===0 +o=(p?B.dh:new A.iY(q)).ga2(0) +n=l.gaY().Iy(new A.ea(s,s+o.length)) +s=(p?B.dh:new A.iY(q)).gP(0) +m=l.gaY().Iy(new A.ea(r-s.length,r)) +s=n==null?null:n.d-n.b +if(s==null)s=l.gaY().bk.giq() +r=m==null?null:m.d-m.b +return new A.aPH(s,r==null?l.gaY().bk.giq():r)}, +ga8p(){var s,r,q,p,o=this +if(o.gaY().lG!=null){s=o.gaY().lG +s.toString +return new A.VR(s,null)}r=o.b29() +q=o.a.c.a.b +p=o.gaY().a_z(q) +return A.cMT(r.b,o.gaY(),p,r.a)}, +ga8q(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.bpC() +if(e==null){e=g.x.ay +s=g.gVL()?new A.bfL(g):f +r=g.gVY()?new A.bfM(g):f +q=g.gHm()?new A.bfN(g):f +p=g.gafo()?new A.bfO(g):f +o=g.gbAv()?new A.bfP(g):f +n=g.gaKl()?new A.bfQ(g):f +m=g.gaLW()?new A.bfR(g):f +l=g.gaBR()?new A.bfS(g):f +k=t.ZD +j=A.a([],k) +i=q!=null +if(!i||e!==B.rX){h=A.bL()===B.b4 +e=A.a([],k) +if(r!=null)e.push(new A.hT(r,B.Cg,f)) +if(s!=null)e.push(new A.hT(s,B.ts,f)) +if(i)e.push(new A.hT(q,B.Ch,f)) +s=m!=null +if(s&&h)e.push(new A.hT(m,B.Ci,f)) +if(p!=null)e.push(new A.hT(p,B.tt,f)) +if(o!=null)e.push(new A.hT(o,B.ag6,f)) +if(n!=null)e.push(new A.hT(n,B.ag7,f)) +if(s&&!h)e.push(new A.hT(m,B.Ci,f)) +B.b.L(j,e)}if(l!=null)j.push(new A.hT(l,B.ag8,f)) +e=j}B.b.L(e,g.gbjp()) +return e}, +gbjp(){var s,r,q,p=A.a([],t.ZD),o=this.a,n=o.c.a.b +if(o.f||!n.gfc()||n.a===n.b)return p +for(o=this.fr,s=o.length,r=0;r0||!r.goT())return +s=r.a.c.a +if(s.l(0,r.id))return +r.z.toString +$.f3().TJ(s) +r.id=s}, +amo(a){var s,r,q,p,o,n,m,l,k=this +if(!B.b.gcW(k.gm2().f).r.gvO()){s=k.gm2().gb8(0).at +s.toString +return new A.uk(s,a)}r=k.gaY().gu(0) +if(k.a.k2===1){s=a.c +q=a.a +p=r.a +o=s-q>=p?p/2-a.gc1().a:A.Z(0,s-p,q) +n=B.jx}else{m=A.oq(a.gc1(),Math.max(a.d-a.b,k.gaY().bk.giq()),a.c-a.a) +s=m.d +q=m.b +p=r.b +o=s-q>=p?p/2-m.gc1().b:A.Z(0,s-p,q) +n=B.hX}s=k.gm2().gb8(0).at +s.toString +q=B.b.gcW(k.gm2().f).z +q.toString +p=B.b.gcW(k.gm2().f).Q +p.toString +l=A.Z(o+s,q,p) +p=k.gm2().gb8(0).at +p.toString +return new A.uk(l,a.eD(n.X(0,p-l)))}, +T0(){var s,r,q,p,o,n=this +if(!n.goT()){s=n.a +r=s.c.a +s=s.aU +s=(s==null?n:s).goF().e.a&&n.cx!=null +q=n.a +if(s){s=n.cx +s.toString +q=q.aU +s=s.V7(n,(q==null?n:q).goF())}else{s=q.aU +s=(s==null?n:s).goF() +p=A.czh(n) +$.f3().Rb(p,s) +s=p}n.z=s +n.au5() +n.arf() +s=n.z +s.toString +q=n.db +q===$&&A.b() +o=n.gL6() +s.a0h(q.d,q.r,q.w,n.a.db,o) +o=$.f3() +o.TJ(r) +o.a5W() +s=n.a.aU +if((s==null?n:s).goF().e.a){n.z.toString +o.bfV()}n.id=r}else{n.z.toString +$.f3().a5W()}}, +ajM(){var s,r,q=this +if(q.goT()){s=q.z +s.toString +r=$.f3() +if(r.d===s)r.ajH() +q.rx=q.id=q.z=null +q.aEG()}}, +bgR(){if(this.p1)return +this.p1=!0 +A.j8(this.gbg6())}, +bg7(){var s,r,q,p,o,n,m=this +m.p1=!1 +if(m.goT())s=!1 +else s=!0 +if(s)return +s=m.z +s.toString +r=$.f3() +if(r.d===s)r.ajH() +m.id=m.z=null +s=m.a.aU +q=(s==null?m:s).goF().e.a?m.cx:null +p=q==null?null:q.V7(m,m.goF()) +if(p==null){s=m.a.aU +s=(s==null?m:s).goF() +o=A.czh(m) +r.Rb(o,s) +p=o}m.z=p +r.a5W() +s=m.db +s===$&&A.b() +n=m.gL6() +p.a0h(s.d,s.r,s.w,m.a.db,n) +r.TJ(m.a.c.a) +m.id=m.a.c.a}, +bkr(){this.p2=!1 +$.an.U$.f.O(0,this.gL9())}, +adm(){var s=this +if(s.a.d.ge2())s.T0() +else{s.p2=!0 +$.an.U$.f.a3(0,s.gL9()) +s.a.d.ho()}}, +atS(){var s,r,q=this +if(q.Q!=null){s=q.a.d.ge2() +r=q.Q +if(s){r.toString +r.cI(0,q.a.c.a)}else{r.m() +q.Q=null}}}, +bb7(){var s=this.Q +if(s!=null){s.Bm() +s=s.e +s===$&&A.b() +s.hl()}this.rx=null}, +a2m(){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.a,f=g.dA,e=h.c +e.toString +s=g.c.a +r=h.gaY() +q=h.a +p=q.p2 +o=q.aq +n=q.x1 +q=q.hS +m=$.ae() +l=t.uh +k=new A.bm(!1,m,l) +j=new A.bm(!1,m,l) +l=new A.bm(!1,m,l) +i=new A.aGe(e,r,p,h,new A.bfn(h,f),s,k,j,l) +s=i.gaud() +r.e8.a3(0,s) +r.hS.a3(0,s) +i.a6J() +s=i.gb2T() +l=A.cM_(h.x,e,g,o,h.ch,B.m_,j,0,0,q,s,i.gb68(),i.gb6a(),n,s,i.gb6e(),i.gb6g(),p,h,B.aNA,h.ay,B.m_,k,h.ax,r.lG,l) +i.e!==$&&A.ck() +i.e=l +return i}, +S8(a,b){var s,r,q,p,o,n=this +if(!n.a.c.aBt(a))return +n.a.c.sDF(a) +switch(b){case null:case void 0:case B.Xi:case B.bl:case B.lJ:case B.cI:case B.pX:case B.bK:case B.bk:n.adm() +break +case B.bj:if(n.a.d.ge2())n.adm() +break}q=n.a +q.toString +p=n.Q +if(p==null)n.Q=n.a2m() +else p.cI(0,q.c.a) +q=n.Q +q.toString +q.saAq(n.a.Q) +q=n.Q +q.Bm() +q=q.e +q===$&&A.b() +q.a0m() +try{n.a.to.$2(a,b)}catch(o){s=A.ag(o) +r=A.aD(o) +q=A.cJ("while calling onSelectionChanged for "+A.r(b)) +A.fs(new A.dl(s,r,"widgets",q,null,!1))}if(n.gTP()&&n.d!=null){n.U2(!1) +n.L1()}}, +Tz(a){if(this.p3)return +this.p3=!0 +$.cW.xr$.push(new A.bfw(this,a))}, +a9u(){var s,r=this,q=r.c +if(q==null)return +s=A.Nj(q) +s.toString +q=r.p4 +q===$&&A.b() +if(q!==s.ax.d){$.cW.xr$.push(new A.bfV(r)) +if(r.p4>>24&255)/255,s) +s=q.gaY() +p=q.a.go +p=A.Y(B.e.aF(255*r),p.gj(p)>>>16&255,p.gj(p)>>>8&255,p.gj(p)&255) +s.gl1().sa82(p) +if(q.a.as){p=q.gtB().x +p===$&&A.b() +p=p>0}else p=!1 +q.r.sj(0,p)}, +gTP(){var s,r +if(this.a.d.ge2()){s=this.a +r=s.c.a.b +s=r.a===r.b&&s.as&&this.go}else s=!1 +return s}, +L1(){var s,r=this +if(!r.a.as)return +if(!r.go)return +s=r.d +if(s!=null)s.ao(0) +r.gtB().sj(0,1) +if(r.a.bj)r.gtB().yf(r.ganU()).a.a.j6(r.gapd()) +else r.d=A.MM(B.bd,new A.bfA(r))}, +a4I(){var s,r=this,q=r.R8 +if(q>0){$.an.toString +$.cf();--q +r.R8=q +if(q===0)r.C(new A.bfs())}if(r.a.bj){q=r.d +if(q!=null)q.ao(0) +r.d=A.d3(B.w,new A.bft(r))}else{q=r.d +q=q==null?null:q.b!=null +if(q!==!0&&r.go)r.d=A.MM(B.bd,new A.bfu(r)) +q=r.gtB() +s=r.gtB().x +s===$&&A.b() +q.sj(0,s===0?1:0)}}, +U2(a){var s,r=this +r.gtB().sj(0,0) +s=r.d +if(s!=null)s.ao(0) +r.d=null +if(a)r.R8=0}, +asn(){return this.U2(!0)}, +a64(){var s=this +if(!s.gTP())s.asn() +else if(s.d==null)s.L1()}, +akI(){var s,r,q,p=this +if(p.a.d.ge2()&&!p.a.c.a.b.gfc()){s=p.gRA() +p.a.c.O(0,s) +r=p.a.c +q=p.ail() +q.toString +r.sDF(q) +p.a.c.a3(0,s)}p.a6F() +p.a64() +p.atS() +p.C(new A.bfo()) +p.ga6S().aNt()}, +b0m(){var s,r,q,p=this +if(p.a.d.ge2()&&p.a.d.br5())p.T0() +else if(!p.a.d.ge2()){p.ajM() +s=p.a.c +s.oQ(0,s.a.a8v(B.aw))}p.a64() +p.atS() +s=p.a.d.ge2() +r=$.an +if(s){r.aT$.push(p) +s=p.c +s.toString +p.p4=A.Nj(s).ax.d +if(!p.a.x)p.Tz(!0) +q=p.ail() +if(q!=null)p.S8(q,null)}else{B.b.F(r.aT$,p) +p.C(new A.bfq(p))}p.x_()}, +ail(){var s,r=this.a +if(r.ag&&r.k2===1&&!this.p2)s=A.eJ(B.E,0,r.c.a.a.length,!1) +else s=!r.c.a.b.gfc()?A.oK(B.E,this.a.c.a.a.length):null +return s}, +aYH(a){if(this.gaY().y==null||!this.goT())return +this.au5()}, +au5(){var s=this.gaY().gu(0),r=this.gaY().cf(0,null),q=this.z +if(!s.l(0,q.a)||!r.l(0,q.b)){q.a=s +q.b=r +$.f3().bhI(s,r)}}, +arg(a){var s,r,q,p=this +if(!p.goT())return +p.bl0() +s=p.a.c.a.c +r=p.gaY().Iy(s) +if(r==null){q=s.gfc()?s.a:0 +r=p.gaY().qQ(new A.cC(q,B.E))}p.z.aKN(r) +p.bkC() +$.cW.xr$.push(p.gbgQ())}, +arf(){return this.arg(null)}, +au1(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.bL() +if(s!==B.aM)return +if(B.b.gcW(b.gm2().f).gDk()!==B.dB)return +s=b.gaY().bk.f +s.toString +r=b.a.fy +$label0$0:{q=t.tp +if(q.b(r)){p=r==null?q.a(r):r +q=p +break $label0$0}o=r==null +if(o)q=!0 +else q=!1 +if(q){q=b.c +q.toString +q=A.cG(q,B.bn) +q=q==null?a:q.gdZ() +if(q==null)q=B.Y +break $label0$0}throw A.d(A.iB(u.P))}n=b.a.db +m=b.gL6() +b.a.toString +l=b.c +l.toString +l=A.bcj(l) +k=new A.ce_(n,m,q,l,a,b.a.gts(),b.to,b.gaY().gu(0),s) +if(a0)j=B.df +else{q=b.rx +q=q==null?a:q.a8i(k) +j=q==null?B.df:q}if(j.a<3)return +b.rx=k +i=A.a([],t.u1) +h=s.OZ(!1) +g=new A.Vl(h,0,0) +for(f=0;g.R6(1,g.c);f=e){s=g.d +e=f+(s==null?g.d=B.c.R(h,g.b,g.c):s).length +s=b.gaY() +q=f1){o=p.a.c.a.b +o=o.a!==o.b||o.c===0}else o=!0 +if(o)return +o=p.a.c.a +s=o.a +o=o.b.c +r=A.bIh(s,o) +q=r.b +if(o===s.length)r.ar_(2,q) +else{r.ar_(1,q) +r.R6(1,r.b)}o=r.a +p.no(new A.cu(B.c.R(o,0,r.b)+new A.iY(r.gK(0)).gP(0)+new A.iY(r.gK(0)).ga2(0)+B.c.b0(o,r.c),A.oK(B.E,r.b+r.gK(0).length),B.aw),B.bj)}, +aqM(a){var s=this.a.c.a,r=a.a.aEU(a.c,a.b) +this.no(r,a.d) +if(r.l(0,s))this.akI()}, +bgX(a){if(a.a)this.p7(new A.cC(this.a.c.a.a.length,B.E)) +else this.p7(B.jQ)}, +b0o(a){var s,r,q,p,o,n,m=this +if(a.b!==B.lI)return +s=B.b.gcW(m.gm2().f) +if(m.a.k2===1){r=m.gm2() +s=s.Q +s.toString +r.hV(s) +return}r=s.Q +r.toString +if(r===0){r=s.z +r.toString +r=r===0}else r=!1 +if(r)return +q=t._N.a(m.as.gam()) +q.toString +p=A.bDG(q,a) +r=s.at +r.toString +o=s.z +o.toString +s=s.Q +s.toString +n=A.Z(r+p,o,s) +if(n===r)return +m.gm2().hV(n)}, +b0R(a){var s,r,q,p,o,n,m,l,k,j=this +if(j.a.k2===1)return +s=j.gaY().qQ(j.a.c.a.b.giY()) +r=t._N.a(j.as.gam()) +r.toString +q=A.bDG(r,new A.l7(a.gbwN(a)?B.aJ:B.aU,B.lI)) +p=B.b.gcW(j.gm2().f) +if(a.gbwN(a)){o=j.a.c.a +if(o.b.d>=o.a.length)return +o=s.b+q +n=p.Q +n.toString +m=j.gaY().gu(0) +p=p.at +p.toString +l=o+p>=n+m.b?new A.cC(j.a.c.a.a.length,B.E):j.gaY().lT(A.cK(j.gaY().cf(0,null),new A.j(s.a,o))) +k=j.a.c.a.b.a8w(l.a)}else{if(j.a.c.a.b.d<=0)return +o=s.b+q +p=p.at +p.toString +l=o+p<=0?B.jQ:j.gaY().lT(A.cK(j.gaY().cf(0,null),new A.j(s.a,o))) +k=j.a.c.a.b.a8w(l.a)}j.p7(k.giY()) +j.no(j.a.c.a.oj(k),B.bj)}, +bkW(a){var s=a.b +this.p7(s.giY()) +this.no(a.a.oj(s),a.c)}, +ga6S(){var s,r=this,q=r.y2 +if(q===$){s=A.a([],t.h) +r.y2!==$&&A.a_() +q=r.y2=new A.ak3(r,new A.bN(s,t.b),t.Wp)}return q}, +b7e(a){var s=this.Q +if(s==null)s=null +else{s=s.e +s===$&&A.b() +s=s.gHW()}if(s===!0){this.po(!1) +return null}s=this.c +s.toString +return A.H_(s,a,t.xm)}, +b_2(a){switch(A.bL().a){case 0:case 2:case 1:switch(a.gel(a).a){case 0:this.a.d.lR() +break +case 1:case 2:case 3:case 5:this.a.d.lR() +break +case 4:throw A.d(A.bT("Unexpected pointer down event for trackpad"))}break +case 3:case 4:case 5:this.a.d.lR() +break}}, +gaVB(){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.c_ +if(b1===$){s=t.h +r=A.a([],s) +q=t.b +b1=b0.xr +if(b1===$){p=A.a([],s) +b0.xr!==$&&A.a_() +b1=b0.xr=new A.ej(b0.gbfM(),new A.bN(p,q),t.Tx)}o=b0.y1 +if(o===$){p=A.a([],s) +b0.y1!==$&&A.a_() +o=b0.y1=new A.ej(b0.gbkV(),new A.bN(p,q),t.Vf)}p=A.a([],s) +n=A.a([],s) +m=b0.gaXV() +l=b0.gba4() +k=A.a([],s) +j=b0.c +j.toString +j=new A.AV(b0,m,l,new A.bN(k,q),t.dA).ht(j) +k=b0.gbax() +i=A.a([],s) +h=b0.c +h.toString +h=new A.AV(b0,k,l,new A.bN(i,q),t.Uz).ht(h) +i=b0.gb8z() +g=b0.gba9() +f=A.a([],s) +e=b0.c +e.toString +e=new A.AV(b0,i,g,new A.bN(f,q),t.Fb).ht(e) +m=A.GA(b0,m,l,!1,!1,!1,t._w) +f=b0.c +f.toString +f=m.ht(f) +m=A.a([],s) +d=b0.c +d.toString +d=new A.ej(b0.gb0Q(),new A.bN(m,q),t.bg).ht(d) +m=A.GA(b0,k,l,!1,!0,!1,t.P9) +c=b0.c +c.toString +c=m.ht(c) +m=b0.gbdf() +b=A.GA(b0,m,l,!1,!0,!1,t.oa) +a=b0.c +a.toString +a=b.ht(a) +b=A.GA(b0,i,g,!1,!0,!1,t.OO) +a0=b0.c +a0.toString +a0=b.ht(a0) +b=b0.ga6S() +a1=b0.c +a1.toString +a1=b.ht(a1) +b=b0.ga6S() +a2=b0.c +a2.toString +a2=b.ht(a2) +m=A.GA(b0,m,l,!1,!0,!1,t.b9) +b=b0.c +b.toString +b=m.ht(b) +m=b0.gb_T() +a3=A.GA(b0,m,l,!1,!0,!1,t.jy) +a4=b0.c +a4.toString +a4=a3.ht(a4) +l=A.GA(b0,k,l,!1,!0,!1,t.xC) +k=b0.c +k.toString +k=l.ht(k) +l=A.a([],s) +a3=b0.c +a3.toString +a3=new A.ej(b0.gbgW(),new A.bN(l,q),t.sl).ht(a3) +l=A.a([],s) +i=A.GA(b0,i,g,!1,!0,!0,t.oB) +a5=b0.c +a5.toString +a5=i.ht(a5) +g=A.GA(b0,m,g,!0,!0,!0,t.gt) +m=b0.c +m.toString +m=g.ht(m) +g=A.a([],s) +i=b0.c +i.toString +i=new A.aW9(b0,new A.bN(g,q)).ht(i) +g=A.a([],s) +a6=b0.c +a6.toString +a6=new A.aMy(b0,new A.bN(g,q)).ht(a6) +g=A.a([],s) +a7=b0.c +a7.toString +a7=new A.ej(new A.bfm(b0),new A.bN(g,q),t.gv).ht(a7) +a8=b0.x2 +if(a8===$){s=A.a([],s) +b0.x2!==$&&A.a_() +a8=b0.x2=new A.ej(b0.gbki(),new A.bN(s,q),t.Tw)}s=b0.c +s.toString +a9=A.a1([B.bv5,new A.a1W(!1,new A.bN(r,q)),B.buD,b1,B.buS,o,B.m7,new A.Ij(!0,new A.bN(p,q)),B.m8,new A.ej(b0.gb7d(),new A.bN(n,q),t.OZ),B.buf,j,B.bv8,h,B.bug,e,B.ZA,f,B.buk,d,B.Zx,c,B.bu9,a,B.Zz,a0,B.ZO,a1,B.bv3,a2,B.bv6,b,B.Zy,a4,B.ZR,k,B.bu8,a3,B.yh,new A.ej(b0.gb0n(),new A.bN(l,q),t.fn),B.ZS,a5,B.ZQ,m,B.ZJ,i,B.ZC,a6,B.buA,a7,B.buM,a8.ht(s)],t.u,t.od) +b0.c_!==$&&A.a_() +b0.c_=a9 +b1=a9}return b1}, +q(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.o5(a1) +s=a.a +r=s.p2 +q=s.fy +$label0$0:{s=t.tp +if(s.b(q)){p=q==null?s.a(q):q +s=p +break $label0$0}o=q==null +if(o)s=!0 +else s=!1 +if(s){s=A.cG(a1,B.bn) +s=s==null?a0:s.gdZ() +if(s==null)s=B.Y +break $label0$0}throw A.d(A.iB(u.P))}n=a.goT() +if(a.a.d.ge2()){a.a.toString +m=a.gb_1()}else m=a0 +l=a.a.y1 +if(l==null)l=B.jN +k=a.gaVB() +j=a.a +i=j.c +h=j.d +g=j.cx +j=j.k2!==1?B.aJ:B.iA +f=a.gm2() +e=a.a +d=e.U +c=e.aq +e=e.eA +b=A.um(a1).axE(!1,a.a.k2!==1) +return new A.aMc(a.gaYG(),n,A.aG4(A.ip(A.ts(k,new A.Wd(i,new A.bfD(a),new A.bfE(),new A.bfF(a),h,g,A.n1(!1,a0,A.bDT(j,B.k,f,c,!0,a.as,d,e,b,a0,new A.bfG(a,r,s)),a0,a0,a0,h,!1,a0,a0,a0,a0,a0,a0),a0,t.pm)),l,a0,a0,a0,a0,a0),a0,m),a0)}, +awr(){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.X(g.e,s.length) +$.an.toString +$.cf() +r=B.blj.p(0,A.bL()) +if(r){q=i.R8>0?i.RG: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.to +if(g.k2!==1){o.push(B.bAp) +o.push(new A.O6(new A.V(i.gaY().gu(0).a,0),B.ap,B.cj,h,h))}else o.push(B.bAq) +g=i.db +g===$&&A.b() +p=A.a([A.cy(h,h,h,h,B.c.R(i.a.c.a.a,0,n))],t.VO) +B.b.L(p,o) +p.push(A.cy(h,h,h,h,B.c.b0(i.a.c.a.a,n))) +return A.cy(p,h,h,g,h)}m=!g.x&&g.d.ge2() +if(i.gasc()){l=!i.a.c.a.gaBj()||!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.dpu(g,l,p,k,j)}g=i.a.c +p=i.c +p.toString +k=i.db +k===$&&A.b() +return g.aws(p,k,m)}, +$ixZ:1} +A.bfr.prototype={ +$0(){}, +$S:0} +A.bfT.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.p7(s.a.c.a.b.giY())}, +$S:5} +A.bfv.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.p7(s.a.c.a.b.giY())}, +$S:5} +A.bfH.prototype={ +$0(){this.a.VZ(B.bk)}, +$S:0} +A.bfI.prototype={ +$0(){this.a.VM(B.bk)}, +$S:0} +A.bfJ.prototype={ +$0(){this.a.CS(B.bk)}, +$S:0} +A.bfK.prototype={ +$0(){this.a.Ak(B.bk)}, +$S:0} +A.bfL.prototype={ +$0(){return this.a.VM(B.bk)}, +$S:0} +A.bfM.prototype={ +$0(){return this.a.VZ(B.bk)}, +$S:0} +A.bfN.prototype={ +$0(){return this.a.CS(B.bk)}, +$S:0} +A.bfO.prototype={ +$0(){return this.a.Ak(B.bk)}, +$S:0} +A.bfP.prototype={ +$0(){return this.a.XY(B.bk)}, +$S:0} +A.bfQ.prototype={ +$0(){return this.a.Q_(B.bk)}, +$S:0} +A.bfR.prototype={ +$0(){return this.a.Qu(B.bk)}, +$S:0} +A.bfS.prototype={ +$0(){return this.a.biP(B.bk)}, +$S:0} +A.bfB.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m,l +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.b +n=q.a +m=n.a +l=B.c.R(m.c.a.a,o.a,o.b) +s=l.length!==0?2:3 +break +case 2:s=4 +return A.i(n.dy.Z_(q.c.a,l,m.x),$async$$0) +case 4:p=b +if(p!=null&&n.ga1r())n.apV(B.bk,p) +else n.jD() +case 3:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bfU.prototype={ +$1(a){var s,r=this.a +if(r.c!=null&&r.gaY().id!=null){r.p2=!0 +$.an.U$.f.a3(0,r.gL9()) +s=r.c +s.toString +A.yP(s).avK(0,r.a.d)}}, +$S:5} +A.bfW.prototype={ +$1(a){this.a.T0()}, +$S:5} +A.bfn.prototype={ +$1(a){return this.b.$2(a,this.a)}, +$S:8} +A.bfw.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h=this.a +h.p3=!1 +s=$.an.U$.z.i(0,h.w) +s=s==null?null:s.gai() +t.CA.a(s) +if(s!=null){r=s.dF.gfc() +r=!r||h.gm2().f.length===0}else r=!0 +if(r)return +q=s.bk.giq() +p=h.a.a4.d +r=h.Q +if((r==null?null:r.c)!=null){o=r.c.It(q).b +n=Math.max(o,48) +p=Math.max(o/2-h.Q.c.Is(B.m_,q).b+n/2,p)}m=h.a.a4.u9(p) +l=h.amo(s.qQ(s.dF.giY())) +k=h.a.c.a.b +if(k.a===k.b)j=l.b +else{i=s.tb(k) +if(i.length===0)j=l.b +else if(k.c>>24&255)/255,n) +n=b7.a.go +n=A.Y(B.e.aF(255*m),n.gj(n)>>>16&255,n.gj(n)>>>8&255,n.gj(n)&255) +p=b7.a +l=p.k1 +k=p.y +j=p.x +p=p.d.ge2() +i=b7.a +h=i.k2 +g=i.k3 +i=i.gts() +f=b7.Q +if(f==null)f=b6 +else{f=f.e +f===$&&A.b() +f=$.ym===f.p1}if(f===!0){b7.cy===$&&A.b() +f=b7.a +e=f.p1 +d=e +e=f +f=d}else{f=b7.a +e=f.p1 +d=e +e=f +f=d}c=this.c +b=b7.gL6() +b7.a.toString +a=A.bcj(c1) +a0=b7.a +a1=a0.w +a2=a0.e +a3=a0.f +a4=a0.c_ +a5=a0.bO +a6=a0.be +a7=a0.bU +if(a7==null)a7=B.h +a8=a0.dd +a9=a0.D +b0=a0.e7 +if(a0.ag)a0=!a0.x||!a3 +else a0=!1 +b1=b7.c +b1.toString +b1=A.bC(b1,B.ev,t.l).w +b2=b7.x1 +b3=b7.a +b4=b3.id +b3=b3.ck +b5=A.czI(q,c) +return new A.yj(b7.ax,new A.bX(A.ci(b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b9,c0,b6,b6,b6,b6,b6,b6,b6,b6,b8,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,b6),!1,!1,!1,!1,new A.aid(new A.aeq(q,o,n,b7.ay,b7.ch,l,b7.r,k,j,p,h,g,!1,i,f,c,e.db,b,b6,a2,a3,a,a1,c2,!0,a4,a5,a6,a7,b0,a8,a9,a0,b7,b1.b,b2,b4,b3,b5,r),s,r,new A.bfC(b7),!0,b6),b6),b6)}, +$S:694} +A.bfC.prototype={ +$0(){var s=this.a +s.T0() +s.au1(!0)}, +$S:0} +A.aeq.prototype={ +aR(a){var s,r=this,q=null,p=r.ax,o=r.cy,n=A.E3(a),m=r.f.b,l=A.cP6(),k=A.cP6(),j=$.ae(),i=t.uh,h=A.aw(t.rf),g=A.aw(t.O5) +if(o.l(0,B.Y))o=new A.li(1) +s=p===1?1:q +o=A.jT(q,n,s,r.CW,r.e,r.db,r.dx,r.fy,1,o,r.go) +p=new A.Lw(l,k,!0,r.RG,r.fr,r.fx,r.R8,new A.bm(!0,j,i),new A.bm(!0,j,i),o,!1,r.z,r.at,r.Q,r.as,p,r.ay,!1,m,r.id,r.k2,r.k3,r.p1,r.w,r.x,r.p4,r.to,B.h,h,g,0,q,q,!1,A.aw(t.T)) +p.aQ() +l.sXn(r.cx) +l.sXo(m) +l.safr(r.p2) +l.safs(r.p3) +k.sXn(r.ry) +k.sXo(r.rx) +p.gl1().sa82(r.r) +p.gl1().sayh(r.k4) +p.gl1().sayg(r.ok) +p.gl1().savO(r.y) +p.atK(q) +p.atT(q) +p.L(0,q) +return p}, +b_(a,b){var s,r,q=this +b.sce(0,q.e) +b.gl1().sa82(q.r) +b.saN8(q.w) +b.sbvg(q.x) +b.gl1().savO(q.y) +b.saM7(q.z) +b.sbwE(q.Q) +b.sad7(0,q.as) +b.se2(q.at) +b.sCI(q.ax) +b.sbBa(q.ay) +b.saaa(!1) +b.sts(q.CW) +s=b.aJ +s.sXn(q.cx) +b.sdZ(q.cy) +b.sD9(0,q.db) +b.sd5(q.dx) +r=A.E3(a) +b.sCG(0,r) +b.sDF(q.f.b) +b.sfl(0,q.id) +b.eA=!0 +b.sOR(q.fy) +b.sDa(q.go) +b.sbBC(q.fr) +b.sbBB(q.fx) +b.sbt0(q.k2) +b.sbt_(q.k3) +b.gl1().sayh(q.k4) +b.gl1().sayg(q.ok) +s.safr(q.p2) +s.safs(q.p3) +b.sbv3(q.p4) +b.dA=q.R8 +b.sqi(0,q.RG) +b.sbDq(q.p1) +s=b.U +s.sXn(q.ry) +r=q.to +if(r!==b.ha){b.ha=r +b.aV() +b.cs()}s.sXo(q.rx)}} +A.ce_.prototype={ +a8i(a){var s,r,q=this +if(a===q)return B.h6 +if(q.a===a.a)if(q.b===a.b){if(q.c.l(0,a.c))s=!B.Z3.l(0,B.Z3)||!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.df:q.x.bn(0,a.x)}} +A.aid.prototype={ +J(){var s=$.cOV +$.cOV=s+1 +return new A.aVZ(B.d.k(s),B.f)}, +bHI(){return this.f.$0()}} +A.aVZ.prototype={ +a8(){var s=this +s.an() +s.a.toString +$.f3().f.n(0,s.d,s)}, +b1(a){this.bc(a) +this.a.toString}, +m(){$.f3().f.F(0,this.d) +this.ap()}, +gaY(){var s=this.a.e +s=$.an.U$.z.i(0,s) +s=s==null?null:s.gai() +return t.CA.a(s)}, +bzm(a){var s,r,q,p,o=this,n=o.gvT(0),m=o.gaY() +m=m==null?null:m.iQ +if(m===!0)return!1 +if(n.l(0,B.a8))return!1 +if(!n.Oc(a))return!1 +s=n.jZ(a) +r=A.Rr() +m=$.an +m.toString +q=s.gc1() +p=o.c +p.toString +m.zk(r,q,A.Nj(p).a) +return B.b.ef(r.a,new A.ce0(o))}, +gvT(a){var s=t.Qv.a(this.c.gai()) +if(s==null||this.c==null||s.y==null)return B.a8 +return A.io(s.cf(0,null),new A.W(0,0,0+s.gu(0).a,0+s.gu(0).b))}, +q(a){return this.a.c}, +$icLX:1} +A.ce0.prototype={ +$1(a){return a.a.l(0,this.a.gaY())}, +$S:298} +A.O6.prototype={ +Vf(a,b,c){var s=this.a,r=s!=null +if(r)a.CX(s.PR(c)) +s=this.x +a.av0(s.a*c.gir(),s.b*c.gir(),this.b) +if(r)a.fD()}} +A.aM4.prototype={ +aiV(a){var s=this.a +return(s.charCodeAt(a-1)&64512)===55296&&(s.charCodeAt(a)&64512)===56320}, +lS(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.aiV(a)?a-1:a}, +lU(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.aiV(s)?a+2:s}} +A.AV.prototype={ +jE(a,b){var s,r,q,p,o,n=this.e,m=n.a.c.a.b +if(!m.gfc())return null +s=n.ajj() +r=m.a +q=m.b +if(r!==q){r=s.lS(r) +if(r==null)r=n.a.c.a.a.length +q=s.lU(q-1) +if(q==null)q=0 +b.toString +return A.H_(b,new A.uj(n.a.c.a,"",new A.ea(r,q),B.bj),t.UM)}r=a.a +p=this.r.$3(m.gvR(),r,this.f.$0()).a +q=m.c +if(r){r=s.lS(q) +if(r==null)r=n.a.c.a.a.length}else{r=s.lU(q-1) +if(r==null)r=0}o=A.eJ(B.E,r,p,!1) +b.toString +return A.H_(b,new A.uj(n.a.c.a,"",o,B.bj),t.UM)}, +fI(a){return this.jE(a,null)}, +grJ(){var s=this.e.a +return!s.x&&s.c.a.b.gfc()}} +A.ak2.prototype={ +jE(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.ag +i=g.a +s=g.b +r=i===s +if(!r&&!k.f&&f){b.toString +return A.H_(b,new A.t8(h,A.oK(B.E,a.a?s:i),B.bj),t.gU)}q=g.giY() +if(a.d){i=a.a +if(i){h=j.gaY().Iv(q).b +if(new A.cC(h,B.by).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.cC(q.a,B.E) +else{if(!i){i=j.gaY().Iv(q).a +i=new A.cC(i,B.E).l(0,q)&&i!==0&&j.a.c.a.a.charCodeAt(q.a-1)!==10}else i=!1 +if(i)q=new A.cC(q.a,B.by)}}i=k.r +if(i){h=g.c +s=g.d +p=a.a?h>s:h"))}, +gq6(){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}, +ge2(){if(!this.gnO()){var s=this.w +if(s==null)s=null +else{s=s.c +s=s==null?null:B.b.p(s.gq6(),this)}s=s===!0}else s=!0 +return s}, +gnO(){var s=this.w +return(s==null?null:s.c)===this}, +gzA(){return this.gjl()}, +gjl(){var s,r,q,p +for(s=this.gq6(),r=s.length,q=0;q")).aE(0,B.b.gwR(r))}}b.Q=null +B.b.F(this.as,b) +for(r=this.gq6(),q=r.length,p=0;p#"+s+q}, +$iaC:1} +A.biO.prototype={ +$1(a){return!a.goO()&&a.ghP()}, +$S:48} +A.biN.prototype={ +$1(a){return a.gjl()===this.a}, +$S:48} +A.yO.prototype={ +gzA(){return this}, +gP4(){if(!this.ghP())return B.Ae +return A.hG.prototype.gP4.call(this)}, +Qg(a){if(a.Q==null)this.Tm(a) +if(this.ge2())a.vt(!0) +else a.F3()}, +avK(a,b){var s,r=this +if(b.Q==null)r.Tm(b) +s=r.w +if(s!=null)s.f.push(new A.aL0(r,b)) +s=r.w +if(s!=null)s.Ks()}, +vt(a){var s,r,q=this,p=q.fr +while(!0){if((p.length!==0?B.b.gP(p):null)!=null)s=!(p.length!==0?B.b.gP(p):null).ghP() +else s=!1 +if(!s)break +p.pop()}r=p.length!==0?B.b.gP(p):null +if(!a||r==null){if(q.ghP()){q.F3() +q.aov(q)}return}r.vt(!0)}} +A.Dt.prototype={ +H(){return"FocusHighlightMode."+this.b}} +A.biM.prototype={ +H(){return"FocusHighlightStrategy."+this.b}} +A.a3q.prototype={ +m(){var s=this.a,r=$.i2.jA$ +r===$&&A.b() +if(J.q(r.a,s.gaAg())){$.ii.dA$.b.F(0,s.gaAj()) +r=$.i2.jA$ +r===$&&A.b() +r.a=null}s.f=new A.z_(A.e4(null,null,t.Su,t.S),t.op) +this.b.m() +this.f4()}, +Ks(){if(this.r)return +this.r=!0 +A.j8(this.gbmT())}, +avo(){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")) +if(!s.gaz(0).t())p=null +else p=b?s.gP(0):s.ga2(0)}return p==null?a:p}, +alz(a,b){return this.alA(a,!1,b)}, +bz0(a){}, +a84(a,b){}, +xR(a,b){var s,r,q,p,o,n,m,l=this,k=null,j=a.gzA() +j.toString +l.xt(j) +l.Ca$.F(0,j) +s=j.fr +r=s.length!==0?B.b.gP(s):k +s=r==null +if(s){q=b?l.alz(a,!1):l.alA(a,!0,!1) +return l.EW(q,b?B.h7:B.h8,b)}if(s)r=j +p=A.cwU(j,r) +if(b&&r===B.b.gP(p))switch(j.dy.a){case 1:r.lR() +return!1 +case 2:o=j.gjl() +if(o!=null&&o!==$.an.U$.f.b){r.lR() +j=o.e +j.toString +A.q8(j).xR(o,!0) +j=r.gjl() +if(j==null)j=k +else{j=j.fr +j=j.length!==0?B.b.gP(j):k}return j!==r}return l.EW(B.b.ga2(p),B.h7,b) +case 0:return l.EW(B.b.ga2(p),B.h7,b)}if(!b&&r===B.b.ga2(p))switch(j.dy.a){case 1:r.lR() +return!1 +case 2:o=j.gjl() +if(o!=null&&o!==$.an.U$.f.b){r.lR() +j=o.e +j.toString +A.q8(j).xR(o,!1) +j=r.gjl() +if(j==null)j=k +else{j=j.fr +j=j.length!==0?B.b.gP(j):k}return j!==r}return l.EW(B.b.gP(p),B.h8,b) +case 0:return l.EW(B.b.gP(p),B.h8,b)}for(j=J.au(b?p:new A.bE(p,A.X(p).h("bE<1>"))),n=k;j.t();n=m){m=j.gK(j) +if(n===r)return l.EW(m,b?B.h7:B.h8,b)}return!1}} +A.biR.prototype={ +$1(a){return a.ghP()&&!a.goO()}, +$S:48} +A.biT.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.gad(0))q=o}if(b===B.ya){n=J.ra(q) +q=new A.bE(n,A.X(n).h("bE<1>"))}m=J.vk(q,new A.bdt(new A.W(f.gdR(0).a,-1/0,f.gdR(0).c,1/0))) +if(!m.gad(0)){p=B.b.ga2(A.d4C(f.gdR(0).gc1(),m)) +break}p=B.b.ga2(A.d4D(f.gdR(0).gc1(),q)) +break +case 1:case 3:q=j.biD(b,f.gdR(0),h.gP4()) +if(q.length===0){p=i +break}if(r!=null&&!r.d.gavA()){o=new A.b1(q,new A.bdu(r),A.X(q).h("b1<1>")) +if(!o.gad(0))q=o}if(b===B.io){n=J.ra(q) +q=new A.bE(n,A.X(n).h("bE<1>"))}m=J.vk(q,new A.bdv(new A.W(-1/0,f.gdR(0).b,1/0,f.gdR(0).d))) +if(!m.gad(0)){p=B.b.ga2(A.d4B(f.gdR(0).gc1(),m)) +break}p=B.b.ga2(A.d4E(f.gdR(0).gc1(),q)) +break +default:p=i}if(p!=null){n=j.Ca$ +l=n.i(0,h) +k=new A.Xe(b,f) +if(l!=null)l.a.push(k) +else n.n(0,h,new A.aNz(A.a([k],t.Kj))) +switch(g){case 0:case 3:j.a.$2$alignmentPolicy(p,B.h8) +break +case 2:case 1:j.a.$2$alignmentPolicy(p,B.h7) +break}return!0}return!1}} +A.cby.prototype={ +$1(a){return a.b===this.a}, +$S:700} +A.bdn.prototype={ +$2(a,b){if(this.a)if(this.b)return B.e.bn(a.gdR(0).b,b.gdR(0).b) +else return B.e.bn(b.gdR(0).d,a.gdR(0).d) +else if(this.b)return B.e.bn(a.gdR(0).a,b.gdR(0).a) +else return B.e.bn(b.gdR(0).c,a.gdR(0).c)}, +$S:93} +A.bdp.prototype={ +$2(a,b){var s=a.gdR(0).gc1(),r=b.gdR(0).gc1(),q=this.a,p=A.cwi(q,s,r) +if(p===0)return A.cwh(q,s,r) +return p}, +$S:93} +A.bdo.prototype={ +$2(a,b){var s=a.gdR(0).gc1(),r=b.gdR(0).gc1(),q=this.a,p=A.cwh(q,s,r) +if(p===0)return A.cwi(q,s,r) +return p}, +$S:93} +A.bdq.prototype={ +$2(a,b){var s,r,q,p=this.a,o=a.gdR(0),n=b.gdR(0),m=o.a,l=p.a,k=o.c +m=Math.abs(m-l)=s.c}, +$S:48} +A.bdj.prototype={ +$2(a,b){return B.e.bn(a.gdR(0).gc1().a,b.gdR(0).gc1().a)}, +$S:93} +A.bdk.prototype={ +$1(a){var s=this.a +return!a.gdR(0).l(0,s)&&a.gdR(0).gc1().b<=s.b}, +$S:48} +A.bdl.prototype={ +$1(a){var s=this.a +return!a.gdR(0).l(0,s)&&a.gdR(0).gc1().b>=s.d}, +$S:48} +A.bdm.prototype={ +$2(a,b){return B.e.bn(a.gdR(0).gc1().b,b.gdR(0).gc1().b)}, +$S:93} +A.bdg.prototype={ +$1(a){var s,r,q=this,p=q.b.a.pop().b,o=p.e +o.toString +o=A.lI(o) +s=$.an.U$.f.c.e +s.toString +if(o!=A.lI(s)){o=q.a +s=q.c +o.xt(s) +o.Ca$.F(0,s) +return!1}switch(a.a){case 0:case 3:r=B.h8 +break +case 1:case 2:r=B.h7 +break +default:r=null}q.a.a.$2$alignmentPolicy(p,r) +return!0}, +$S:702} +A.bds.prototype={ +$1(a){var s=a.e +s.toString +return A.lI(s)===this.a}, +$S:48} +A.bdt.prototype={ +$1(a){return!a.gdR(0).jZ(this.a).gad(0)}, +$S:48} +A.bdu.prototype={ +$1(a){var s=a.e +s.toString +return A.lI(s)===this.a}, +$S:48} +A.bdv.prototype={ +$1(a){return!a.gdR(0).jZ(this.a).gad(0)}, +$S:48} +A.k_.prototype={ +gayG(){var s=this.d +if(s==null){s=this.c.e +s.toString +s=this.d=new A.cbw().$1(s)}s.toString +return s}} +A.cbv.prototype={ +$1(a){var s=a.gayG() +return A.mf(s,A.X(s).c)}, +$S:703} +A.cbx.prototype={ +$2(a,b){switch(this.a.a){case 1:return B.e.bn(a.b.a,b.b.a) +case 0:return B.e.bn(b.b.c,a.b.c)}}, +$S:301} +A.cbw.prototype={ +$1(a){var s,r=A.a([],t.vl),q=t.I,p=a.kX(q) +for(;p!=null;){r.push(q.a(p.gb7())) +s=A.dlX(p) +p=s==null?null:s.kX(q)}return r}, +$S:705} +A.xo.prototype={ +gdR(a){var s,r,q,p,o=this +if(o.b==null)for(s=o.a,r=A.X(s).h("O<1,W>"),s=new A.O(s,new A.cbt(),r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E");s.t();){q=s.d +if(q==null)q=r.a(q) +p=o.b +if(p==null){o.b=q +p=q}o.b=p.n1(q)}s=o.b +s.toString +return s}} +A.cbt.prototype={ +$1(a){return a.b}, +$S:706} +A.cbu.prototype={ +$2(a,b){switch(this.a.a){case 1:return B.e.bn(a.gdR(0).a,b.gdR(0).a) +case 0:return B.e.bn(b.gdR(0).c,a.gdR(0).c)}}, +$S:707} +A.bzP.prototype={ +aYy(a){var s,r,q,p,o,n=B.b.ga2(a).a,m=t.qi,l=A.a([],m),k=A.a([],t.jE) +for(s=a.length,r=0;r") +return A.R(new A.b1(b,new A.bzT(new A.W(-1/0,s.b,1/0,s.d)),r),!0,r.h("B.E"))}, +$S:708} +A.bzT.prototype={ +$1(a){return!a.b.jZ(this.a).gad(0)}, +$S:709} +A.a3r.prototype={ +J(){return new A.aPq(B.f)}} +A.aeP.prototype={} +A.aPq.prototype={ +ghb(a){var s,r,q,p=this,o=p.d +if(o===$){s=p.a.c +r=A.a([],t.bp) +q=$.ae() +p.d!==$&&A.a_() +o=p.d=new A.aeP(s,!1,!0,!0,!0,null,null,r,q)}return o}, +m(){this.ghb(0).m() +this.ap()}, +b1(a){var s=this +s.bc(a) +if(a.c!==s.a.c)s.ghb(0).dy=s.a.c}, +q(a){var s=null,r=this.ghb(0) +return A.n1(!1,!1,this.a.f,s,!0,!0,r,!1,s,s,s,s,s,!0)}} +A.aDr.prototype={ +fI(a){a.bKe(a.ghb(a))}} +A.rI.prototype={} +A.T1.prototype={ +fI(a){var s=$.an.U$.f.c,r=s.e +r.toString +return A.q8(r).xR(s,!0)}, +adE(a,b){return b?B.d3:B.nP}} +A.rQ.prototype={} +A.TH.prototype={ +fI(a){var s=$.an.U$.f.c,r=s.e +r.toString +return A.q8(r).xR(s,!1)}, +adE(a,b){return b?B.d3:B.nP}} +A.o2.prototype={} +A.Ij.prototype={ +fI(a){var s,r +if(!this.c){s=$.an.U$.f.c +r=s.e +r.toString +A.q8(r).byr(s,a.a)}}} +A.aPr.prototype={} +A.aUd.prototype={ +a84(a,b){var s +this.aOo(a,b) +s=this.Ca$.i(0,b) +if(s!=null){s=s.a +if(!!s.fixed$length)A.C(A.aq("removeWhere")) +B.b.kp(s,new A.cby(a),!0)}}} +A.b06.prototype={} +A.b07.prototype={} +A.J1.prototype={ +J(){return new A.R7(A.b9(t.gx),B.f)}} +A.R7.prototype={ +b0Y(){var s=this +s.a.toString +s.e=s.f.ef(0,new A.bja()) +s.alO()}, +alO(){this.C(new A.bjb(this))}, +q(a){var s,r,q=this +switch(q.a.w.a){case 1:q.Bn() +break +case 2:if(q.e)q.Bn() +break +case 0:break}s=q.a +r=q.d +return new A.Wx(A.di1(s.c,q,r),null,null)}, +d6(a){var s,r,q,p,o,n +for(s=this.f,s=A.dy(s,s.r,A.z(s).c),r=s.$ti.c;s.t();){q=s.d +if(q==null)q=r.a(q) +p=q.a +o=p.c +if(o!=null){n=q.d +o.$1(n===$?q.d=p.f:n)}}}, +a_4(){this.e=!0 +this.alO() +return this.Bn()}, +Bn(){var s,r,q,p,o,n,m,l={},k=l.a="" +for(s=this.f,s=A.dy(s,s.r,A.z(s).c),r=s.$ti.c,q=!1;s.t();){p=s.d +if(p==null)p=r.a(p) +q=!p.a_4()||q +o=l.a +p=p.e +n=p.y +p=n==null?A.z(p).h("cV.T").a(n):n +l.a=o+(p==null?k:p)}if(l.a.length!==0){k=this.c.a0(t.I) +k.toString +m=k.w +if(A.bL()===B.aM)A.Rd(new A.bjc(l,m),t.H) +else A.Fd(l.a,m,B.zB)}return!q}} +A.bja.prototype={ +$1(a){var s=a.f,r=s.y +return r==null?A.z(s).h("cV.T").a(r):r}, +$S:710} +A.bjb.prototype={ +$0(){++this.a.d}, +$S:0} +A.bjc.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.jk(B.aW,null,t.H),$async$$0) +case 2:A.Fd(q.a.a,q.b,B.zB) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.aeT.prototype={ +ed(a){return this.r!==a.r}} +A.yR.prototype={ +J(){return A.d7j(A.z(this).h("yR.T"))}} +A.q9.prototype={ +gauo(){var s=this.d +return s===$?this.d=this.a.f:s}, +a_4(){var s,r +this.C(new A.bj9(this)) +s=this.e +r=s.y +return(r==null?A.z(s).h("cV.T").a(r):r)==null}, +Bn(){var s=this.a.d,r=this.e +if(s!=null)r.sj(0,s.$1(this.gauo())) +else r.sj(0,null)}, +W5(a){var s +this.C(new A.bj8(this,a)) +s=this.c +s.toString +s=A.cwY(s) +if(s!=null)s.b0Y()}, +gkh(){return this.a.x}, +lk(a,b){var s=this +s.oC(s.e,"error_text") +s.oC(s.f,"has_interacted_by_user")}, +fS(){var s=this.c +s.toString +s=A.cwY(s) +if(s!=null)s.f.F(0,this) +this.jO()}, +m(){this.e.m() +this.f.m() +this.aRE()}, +q(a){var s,r=this,q=r.a +if(q.r)switch(q.w.a){case 1:r.Bn() +break +case 2:q=r.f +s=q.y +if(s==null?A.z(q).h("cV.T").a(s):s)r.Bn() +break +case 0:break}q=A.cwY(a) +if(q!=null)q.f.B(0,r) +return r.a.e.$1(r)}} +A.bj9.prototype={ +$0(){this.a.Bn()}, +$S:0} +A.bj8.prototype={ +$0(){var s=this.a +s.d=this.b +s.f.ahp(0,!0)}, +$S:0} +A.y_.prototype={ +H(){return"AutovalidateMode."+this.b}} +A.c0y.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.Xr.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.c0y()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.ap()}} +A.KD.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.KD&&b.a===this.a}, +gv(a){return A.ad(A.I(this),A.lZ(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)}, +k(a){var s="#" +if(A.I(this)===B.buv)return"["+(s+A.bq(this.a))+"]" +return"[ObjectKey "+(s+A.bq(this.a))+"]"}} +A.kW.prototype={ +gam(){var s,r=$.an.U$.z.i(0,this) +if(r instanceof A.mz){s=r.k3 +s.toString +if(A.z(this).c.b(s))return s}return null}} +A.aR.prototype={ +k(a){var s,r=this,q=r.a +if(q!=null)s=" "+q +else s="" +if(A.I(r)===B.bus)return"[GlobalKey#"+A.bq(r)+s+"]" +return"["+("#"+A.bq(r))+s+"]"}} +A.yW.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return this.$ti.b(b)&&b.a===this.a}, +gv(a){return A.lZ(this.a)}, +k(a){var s="GlobalObjectKey",r=B.c.eV(s,">")?B.c.R(s,0,-8):s +return"["+r+" "+("#"+A.bq(this.a))+"]"}} +A.c.prototype={ +hL(){var s=this.a +return s==null?"Widget":"Widget-"+s.k(0)}, +l(a,b){if(b==null)return!1 +return this.r3(0,b)}, +gv(a){return A.S.prototype.gv.call(this,0)}} +A.a3.prototype={ +dv(a){return new A.Vj(this,B.aD)}} +A.M.prototype={ +dv(a){return A.ddU(this)}} +A.cfE.prototype={ +H(){return"_StateLifecycle."+this.b}} +A.T.prototype={ +gb7(){var s=this.a +s.toString +return s}, +a8(){}, +b1(a){}, +lM(){}, +C(a){a.$0() +this.c.hl()}, +fS(){}, +cL(){}, +m(){}, +c5(){}} +A.bl.prototype={ +gbq(){return this.b}} +A.h7.prototype={ +dv(a){return new A.EA(this,B.aD,A.z(this).h("EA"))}} +A.bG.prototype={ +dv(a){return A.d8l(this)}} +A.aE.prototype={ +b_(a,b){}, +MA(a){}} +A.awN.prototype={ +dv(a){return new A.awM(this,B.aD)}} +A.bt.prototype={ +dv(a){return new A.a9D(this,B.aD)}} +A.eH.prototype={ +dv(a){return A.daf(this)}} +A.Xk.prototype={ +H(){return"_ElementLifecycle."+this.b}} +A.aQb.prototype={ +atl(a){a.d0(new A.c2l(this,a)) +a.oH()}, +bkv(){var s,r,q,p=this +p.a=!0 +r=p.b +q=A.R(r,!0,A.z(r).h("cZ.E")) +B.b.iL(q,A.cBu()) +s=q +r.V(0) +try{r=s +new A.bE(r,A.bk(r).h("bE<1>")).aE(0,p.gbkt())}finally{p.a=!1}}} +A.c2l.prototype={ +$1(a){this.a.atl(a)}, +$S:34} +A.b7k.prototype={ +afj(a){var s=this +if(a.as){s.e=!0 +return}if(!s.d&&s.a!=null){s.d=!0 +s.a.$0()}s.c.push(a) +a.as=!0}, +abQ(a){try{a.$0()}finally{}}, +vU(a,b){var s,r,q,p,o,n,m,l,k=this,j={},i=b==null +if(i&&k.c.length===0)return +try{k.d=!0 +if(!i){j.a=null +k.e=!1 +try{b.$0()}finally{}}i=k.c +B.b.iL(i,A.cBu()) +k.e=!1 +j.b=i.length +j.c=0 +for(o=0;o=i.length){m=k.e +m.toString}else m=!0 +if(m){B.b.iL(i,A.cBu()) +o=k.e=!1 +j.b=i.length +while(!0){m=j.c +if(!(m>0?i[m-1].Q:o))break +j.c=m-1}o=m}}}finally{for(i=k.c,o=i.length,l=0;l").a1(g.y[1]),i=new A.c4(J.au(i.a),i.b,g.h("c4<1,2>")),g=g.y[1];i.t();){e=i.a +if(e==null)e=g.a(e) +if(!a2.p(0,e)){e.a=null +e.G2() +q=m.f.b +if(e.r===B.ir){e.fS() +e.d0(A.csb())}q.b.B(0,e)}}return d}, +a__(a,b,c){return this.aFZ(a,b,c,null)}, +iF(a,b){var s,r,q,p=this +p.a=a +p.c=b +p.r=B.ir +s=a!=null +if(s){r=a.d +r===$&&A.b();++r}else r=1 +p.d=r +if(s)p.f=a.f +q=p.gb7().a +if(q instanceof A.kW)p.f.z.n(0,q,p) +p.a6z() +p.a7r()}, +cI(a,b){this.e=b}, +aGb(a,b){new A.bgp(b).$1(a)}, +Pa(a){this.c=a}, +atE(a){var s=a+1,r=this.d +r===$&&A.b() +if(r")),s=s.c;p.t();){r=p.d;(r==null?s.a(r):r).y2.F(0,q)}q.x=null +q.r=B.byW}, +oH(){var s=this,r=s.e,q=r==null?null:r.a +if(q instanceof A.kW){r=s.f.z +if(J.q(r.i(0,q),s))r.F(0,q)}s.y=s.e=null +s.r=B.a_n}, +gu(a){var s=this.gai() +if(s instanceof A.J)return s.gu(0) +return null}, +yK(a,b){var s=this.y;(s==null?this.y=A.dV(t.IS):s).B(0,a) +a.adV(this,b) +return t.WB.a(a.gb7())}, +W4(a){return this.yK(a,null)}, +a9o(a,b){var s=this.x,r=s==null?null:s.i(0,A.c6(b)) +if(r!=null)return b.a(this.yK(r,a)) +this.z=!0 +return null}, +a0(a){return this.a9o(null,a)}, +a_B(a){var s=this.kX(a) +s=s==null?null:s.gb7() +return a.h("0?").a(s)}, +kX(a){var s=this.x +return s==null?null:s.i(0,A.c6(a))}, +a7r(){var s=this.a +this.b=s==null?null:s.b}, +a6z(){var s=this.a +this.x=s==null?null:s.x}, +Ci(a){var s,r=this.a +while(!0){s=r==null +if(!(!s&&A.I(r.gb7())!==A.c6(a)))break +r=r.a}s=s?null:r.gb7() +return a.h("0?").a(s)}, +wh(a){var s,r,q=this.a +for(;s=q==null,!s;){if(q instanceof A.mz){r=q.k3 +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.k3 +s.toString}return a.h("0?").a(s)}, +bwl(a){var s,r,q=this.a +for(s=null;q!=null;){if(q instanceof A.mz){r=q.k3 +r.toString +r=a.b(r)}else r=!1 +if(r)s=q +q=q.a}if(s==null)r=null +else{r=s.k3 +r.toString}return a.h("0?").a(r)}, +rA(a){var s=this.a +for(;s!=null;){if(s instanceof A.bO&&a.b(s.gai()))return a.a(s.gai()) +s=s.a}return null}, +t8(a){var s=this.a +while(!0){if(!(s!=null&&a.$1(s)))break +s=s.a}}, +c5(){this.hl()}, +jj(a){var s=this.b +if(s!=null)s.jj(a)}, +hL(){var s=this.e +s=s==null?null:s.hL() +return s==null?"#"+A.bq(this)+"(DEFUNCT)":s}, +hl(){var s=this +if(s.r!==B.ir)return +if(s.Q)return +s.Q=!0 +s.f.afj(s)}, +Zd(a){var s +if(this.r===B.ir)s=!this.Q&&!a +else s=!0 +if(s)return +try{this.nf()}finally{}}, +aEm(){return this.Zd(!1)}, +nf(){this.Q=!1}, +$iu:1} +A.bgl.prototype={ +$1(a){a.lM()}, +$S:34} +A.bgm.prototype={ +$1(a){this.a.a=a}, +$S:34} +A.bgj.prototype={ +$1(a){this.a.push(a) +return!0}, +$S:50} +A.bgi.prototype={ +$1(a){var s=null +return A.p8("",a,!0,B.cM,s,!1,s,s,B.c0,s,!1,!0,!0,B.tS,s,t.lU)}, +$S:711} +A.bgn.prototype={ +$1(a){var s=this.a.p(0,a) +return s?null:a}, +$S:712} +A.bgo.prototype={ +$2(a,b){var s=this.a +return s!=null?s[a]:new A.DG(b,a,t.Bc)}, +$S:713} +A.bgp.prototype={ +$1(a){var s +a.Pa(this.a) +s=a.gZn() +if(s!=null)this.$1(s)}, +$S:34} +A.bgg.prototype={ +$1(a){a.atE(this.a)}, +$S:34} +A.bgk.prototype={ +$1(a){a.G2()}, +$S:34} +A.bgh.prototype={ +$1(a){a.LC(this.a)}, +$S:34} +A.a2K.prototype={ +aR(a){var s=this.d,r=new A.a80(s,A.aw(t.T)) +r.aQ() +r.aV6(s) +return r}} +A.a0U.prototype={ +gZn(){return this.ax}, +iF(a,b){this.a0K(a,b) +this.a2T()}, +a2T(){this.aEm()}, +nf(){var s,r,q,p,o,n,m=this,l=null +try{l=m.dN() +m.gb7()}catch(o){s=A.ag(o) +r=A.aD(o) +m.ay=!1 +n=A.QR(A.cB_(A.cJ("building "+m.k(0)),s,r,new A.bad())) +l=n}finally{m.DX()}try{m.ax=m.he(m.ax,l,m.c)}catch(o){q=A.ag(o) +p=A.aD(o) +n=A.QR(A.cB_(A.cJ("building "+m.k(0)),q,p,new A.bae())) +l=n +m.ax=m.he(null,l,m.c)}}, +d0(a){var s=this.ax +if(s!=null)a.$1(s)}, +lH(a){this.ax=null +this.mA(a)}} +A.bad.prototype={ +$0(){var s=A.a([],t.qe) +return s}, +$S:39} +A.bae.prototype={ +$0(){var s=A.a([],t.qe) +return s}, +$S:39} +A.Vj.prototype={ +dN(){return t.ID.a(this.gb7()).q(this)}, +cI(a,b){this.DZ(0,b) +this.Zd(!0)}} +A.mz.prototype={ +dN(){return this.k3.q(this)}, +lM(){this.k3.lM() +this.a0L()}, +a2T(){this.k3.a8() +this.k3.c5() +this.aO1()}, +nf(){var s=this +if(s.k4){s.k3.c5() +s.k4=!1}s.aO2()}, +cI(a,b){var s,r,q,p=this +p.DZ(0,b) +s=p.k3 +r=s.a +r.toString +q=p.e +q.toString +s.a=t.d4.a(q) +s.b1(r) +p.Zd(!0)}, +cL(){this.QM() +this.k3.cL() +this.hl()}, +fS(){this.k3.fS() +this.agy()}, +oH(){var s=this +s.DY() +s.k3.m() +s.k3=s.k3.c=null}, +yK(a,b){return this.QN(a,b)}, +W4(a){return this.yK(a,null)}, +c5(){this.a0J() +this.k4=!0}} +A.a7k.prototype={ +dN(){return t.yH.a(this.gb7()).gbq()}, +cI(a,b){var s=this,r=t.yH.a(s.gb7()) +s.DZ(0,b) +s.Pb(r) +s.Zd(!0)}, +Pb(a){this.wB(a)}} +A.EA.prototype={ +aiE(a){this.d0(new A.bwD(a))}, +wB(a){var s=this.e +s.toString +this.aiE(this.$ti.h("h7<1>").a(s))}} +A.bwD.prototype={ +$1(a){if(a instanceof A.bO)this.a.tX(a.gai()) +else a.d0(this)}, +$S:34} +A.mc.prototype={ +a6z(){var s=this,r=s.a,q=r==null?null:r.x +if(q==null)q=B.bh6 +s.x=q.t0(0,A.I(s.gb7()),s)}, +afz(a,b){this.y2.n(0,a,b)}, +adV(a,b){this.afz(a,null)}, +acd(a,b){b.c5()}, +Pb(a){if(t.WB.a(this.gb7()).ed(a))this.aPA(a)}, +wB(a){var s,r,q +for(s=this.y2,r=A.z(s),s=new A.Ga(s,s.JJ(),r.h("Ga<1>")),r=r.c;s.t();){q=s.d +this.acd(a,q==null?r.a(q):q)}}} +A.bO.prototype={ +gai(){var s=this.ax +s.toString +return s}, +gZn(){return null}, +b15(){var s,r=this.a,q=r +while(!0){s=q==null +if(!(!s&&!(q instanceof A.bO)))break +r=s?null:q.a +q=r}return t.p2.a(q)}, +b14(){var s=this.a,r=A.a([],t.SX),q=s +while(!0){if(!(q!=null&&!(q instanceof A.bO)))break +if(q instanceof A.EA)r.push(q) +s=q.a +q=s}return r}, +iF(a,b){var s=this +s.a0K(a,b) +s.ax=t.F5.a(s.gb7()).aR(s) +s.LC(b) +s.DX()}, +cI(a,b){this.DZ(0,b) +this.aq0()}, +nf(){this.aq0()}, +aq0(){var s=this +t.F5.a(s.gb7()).b_(s,s.gai()) +s.DX()}, +fS(){this.agy()}, +oH(){var s=this,r=t.F5.a(s.gb7()) +s.DY() +r.MA(s.gai()) +s.ax.m() +s.ax=null}, +Pa(a){var s,r=this,q=r.c +r.aOj(a) +s=r.ch +if(s!=null)s.mn(r.gai(),q,r.c)}, +LC(a){var s,r,q,p,o,n=this +n.c=a +s=n.ch=n.b15() +if(s!=null)s.mj(n.gai(),a) +r=n.b14() +for(s=r.length,q=t.IL,p=0;p"))}, +mj(a,b){var s=this.gai(),r=b.a +s.abe(0,a,r==null?null:r.gai())}, +mn(a,b,c){var s=this.gai(),r=c.a +s.NW(a,r==null?null:r.gai())}, +ni(a,b){this.gai().F(0,a)}, +d0(a){var s,r,q,p,o=this.k4 +o===$&&A.b() +s=o.length +r=this.ok +q=0 +for(;q") +h.d=new A.aB(t.o.a(p),new A.eb(new A.eA(new A.eG(n,1,B.H)),o,m),m.h("aB"))}}if(s)s=!(isFinite(q.a)&&isFinite(q.b)) +else s=!0 +h.w=s}, +o4(a,b){var s,r,q,p=this +p.f=b +switch(b.a.a){case 1:s=p.e +s===$&&A.b() +s.sbR(0,new A.or(b.gi1(0),new A.bN(A.a([],t.x8),t.jc),0)) +r=!1 +break +case 0:s=p.e +s===$&&A.b() +s.sbR(0,b.gi1(0)) +r=!0 +break +default:r=null}s=p.f +p.b=s.M6(s.gaA4(),p.f.gZH()) +p.f.f.a0y(r) +p.f.r.a0x() +s=p.f +q=A.rK(p.gaX_(),!1,!1,!1) +p.r=q +s.b.uz(0,q) +q=p.e +q===$&&A.b() +q.cY() +q=q.em$ +q.b=!0 +q.a.push(p.gacy())}, +k(a){var s,r,q,p,o,n=this.f +n===$&&A.b() +s=n.d.b +r=n.e.b +n=A.r(n.f.a.c) +q=s.k(0) +p=r.k(0) +o=this.e +o===$&&A.b() +return"HeroFlight(for: "+n+", from: "+q+", to: "+p+" "+A.r(o.c)+")"}} +A.c1K.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.ah(0,s.gj(0)) +s.toString +p=q.f +p===$&&A.b() +p=p.c +return A.mo(p.b-s.d,A.n6(new A.dg(q.d,!1,b,r),!0,r),r,r,s.a,p.a-s.c,s.b,r)}, +$S:731} +A.c1L.prototype={ +$0(){var s,r=this.a +r.x=!1 +this.b.cx.O(0,this) +s=r.e +s===$&&A.b() +r.apX(s.gbM(0))}, +$S:0} +A.Jf.prototype={ +Mz(){var s,r,q,p=$.vi() +A.fT(this) +if(p.a.get(this).cx.a)return +p=this.b.gbm(0) +s=A.z(p).h("b1") +r=A.R(new A.b1(p,new A.bl_(),s),!1,s.h("B.E")) +for(p=r.length,q=0;q"),a=t.k2;s.t();){a0=s.gK(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.C(A.a0("RenderBox was not laid out: "+A.I(o).k(0)+"#"+A.bq(o))) +a6=a3.a.f +if(a6==null)a6=a2.a.f +if(a6==null)a6=j +a5=new A.c1J(b2,q,a0,b0,b1,a2,a3,r,a6,b3,a4!=null)}if(a5!=null&&a5.gfc()){k.F(0,a1) +if(a4!=null){a0=a4.f +a0===$&&A.b() +a6=a0.a +if(a6===B.hC&&a5.a===B.hD){a0=a4.e +a0===$&&A.b() +a0.sbR(0,new A.or(a5.gi1(0),new A.bN(A.a([],h),g),0)) +a0=a4.b +a0===$&&A.b() +a4.b=new A.a8z(a0,a0.b,a0.a,a)}else{a6=a6===B.hD&&a5.a===B.hC +a7=a4.e +if(a6){a7===$&&A.b() +a0=a5.gi1(0) +a6=a4.f.gi1(0).gj(0) +a7.sbR(0,new A.aB(c.a(a0),new A.aP(a6,1,d),b)) +a0=a4.f +a6=a0.f +a7=a5.r +if(a6!==a7){a6.Gh(!0) +a7.a0x() +a0=a4.f +a6=a4.b +a6===$&&A.b() +a4.b=a0.M6(a6.b,a5.gZH())}else{a6=a4.b +a6===$&&A.b() +a4.b=a0.M6(a6.b,a6.a)}}else{a6=a4.b +a6===$&&A.b() +a7===$&&A.b() +a4.b=a0.M6(a6.ah(0,a7.gj(0)),a5.gZH()) +a4.c=null +a0=a5.a +a6=a4.e +if(a0===B.hD)a6.sbR(0,new A.or(a5.gi1(0),new A.bN(A.a([],h),g),0)) +else a6.sbR(0,a5.gi1(0)) +a4.f.f.Gh(!0) +a4.f.r.Gh(!0) +a5.f.a0y(a0===B.hC) +a5.r.a0x() +a0=a4.r.r.gam() +if(a0!=null)a0.aou()}}a4.f=a5}else{a0=new A.B5(i,B.iG) +a6=A.a([],h) +a7=new A.bN(a6,g) +a8=new A.a7j(a7,new A.bN(A.a([],f),e),0) +a8.a=B.a6 +a8.b=0 +a8.cY() +a7.b=!0 +a6.push(a0.gamP()) +a0.e=a8 +a0.o4(0,a5) +p.n(0,a1,a0)}}else if(a4!=null)a4.w=!0}for(s=J.au(k.gbm(k));s.t();)s.gK(s).az3()}, +b3T(a){var s=a.f +s===$&&A.b() +this.b.F(0,s.f.a.c)}, +aZZ(a,b,c,d,e){var s=t.rA.a(e.gb7()),r=A.cG(e,null),q=A.cG(d,null) +if(r==null||q==null)return s.e +return A.hC(b,new A.bkY(r,c,q.r,r.r,b,s),null)}, +m(){var s,r,q,p,o,n,m,l +for(s=this.b.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a +if(q==null)q=r.a(q) +p=q.r +if(p!=null){p.hB(0) +q.r.m() +q.r=null +p=q.e +p===$&&A.b() +p.sbR(0,null) +p=q.e +o=q.gacy() +n=p.em$ +n.b=!0 +m=n.c +if(m===$){l=A.dV(n.$ti.c) +n.c!==$&&A.a_() +n.c=l +m=l}if(m.a>0){m.b=m.c=m.d=m.e=null +m.a=0}if(B.b.F(n.a,o))p.yL() +p=q.e +q=q.gamP() +o=p.f0$ +o.b=!0 +m=o.c +if(m===$){l=A.dV(o.$ti.c) +o.c!==$&&A.a_() +o.c=l +m=l}if(m.a>0){m.b=m.c=m.d=m.e=null +m.a=0}if(B.b.F(o.a,q))p.yL()}}}} +A.bl_.prototype={ +$1(a){var s=a.f +s===$&&A.b() +if(s.y)if(s.a===B.hD){s=a.e +s===$&&A.b() +s=s.gbM(0)===B.a6}else s=!1 +else s=!1 +return s}, +$S:734} +A.bkZ.prototype={ +$1(a){var s=this,r=s.b +if(r.a==null||s.c.a==null)return +s.a.ash(r,s.c,s.d,s.e)}, +$S:5} +A.bkY.prototype={ +$2(a,b){var s=this,r=s.c,q=s.d,p=s.e +r=s.b===B.hC?new A.a2n(r,q).ah(0,p.gj(p)):new A.a2n(q,r).ah(0,p.gj(p)) +return A.rC(s.f.e,s.a.BP(r),null)}, +$S:735} +A.b_.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.Q,d=a.a0(t.I) +d.toString +e=d.w +s=A.bmn(a) +d=g.d +r=d==null?s.a:d +if(r==null)r=14 +if(s.x===!0){d=A.cG(a,B.bn) +d=d==null?f:d.gdZ() +q=(d==null?B.Y:d).bK(0,r)}else q=r +p=g.e +if(p==null)p=s.b +o=g.f +if(o==null)o=s.c +n=g.r +if(n==null)n=s.d +m=g.w +if(m==null)m=s.e +l=g.y +if(l==null)l=s.w +k=g.c +if(k==null)return new A.bX(A.ci(f,f,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.ba(q,q,f,f),f) +j=s.ghn(0) +if(j==null)j=1 +i=g.x +if(i==null){d=s.f +d.toString +i=d}if(j!==1)i=A.Y(B.e.aF(255*((i.gj(i)>>>24&255)/255*j)),i.gj(i)>>>16&255,i.gj(i)>>>8&255,i.gj(i)&255) +d=A.a([],t.uf) +if(p!=null)d.push(new A.w0("FILL",p)) +if(o!=null)d.push(new A.w0("wght",o)) +if(n!=null)d.push(new A.w0("GRAD",n)) +if(m!=null)d.push(new A.w0("opsz",m)) +h=A.EZ(f,f,B.bou,f,f,!0,f,A.cy(f,f,f,A.dH(f,f,i,f,f,f,f,f,k.b,f,f,q,f,d,f,f,1,!1,B.ag,f,f,f,k.c,l,f,f),A.cm(k.a)),B.ah,e,f,B.Y,B.a0) +if(k.d)switch(e.a){case 0:d=new A.c5(new Float64Array(16)) +d.fO() +d.o2(0,-1,1,1) +h=A.x0(B.C,h,f,d,!1) +break +case 1:break}d=A.eu(h,f,f,f) +return new A.bX(A.ci(f,f,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.pa(!0,new A.ba(q,q,d,f),f),f)}} +A.k.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.k&&b.a===s.a&&b.b===s.b&&b.c==s.c&&b.d===s.d&&A.fj(null,null)}, +gv(a){var s=this +return A.ad(s.a,s.b,s.c,s.d,A.cs(B.aNn),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +k(a){return"IconData(U+"+B.c.fm(B.d.k9(this.a,16).toUpperCase(),5,"0")+")"}} +A.Jr.prototype={ +ed(a){return!this.w.l(0,a.w)}, +x0(a,b,c){return A.DA(c,this.w,null)}} +A.bmm.prototype={ +$1(a){return A.DA(this.c,A.cIR(a).dt(this.b),this.a)}, +$S:736} +A.dW.prototype={ +rn(a,b,c,d,e,f,g,h,i){var s=this,r=h==null?s.a:h,q=c==null?s.b:c,p=i==null?s.c:i,o=d==null?s.d:d,n=f==null?s.e:f,m=b==null?s.f:b,l=e==null?s.ghn(0):e,k=g==null?s.w:g +return new A.dW(r,q,p,o,n,m,l,k,a==null?s.x:a)}, +bu(a){var s=null +return this.rn(s,a,s,s,s,s,s,s,s)}, +a8H(a,b){var s=null +return this.rn(s,a,s,s,s,s,s,b,s)}, +a8E(a){var s=null +return this.rn(s,s,s,s,a,s,s,s,s)}, +a8L(a,b,c){var s=null +return this.rn(s,a,s,s,b,s,s,c,s)}, +dt(a){return this.rn(a.x,a.f,a.b,a.d,a.ghn(0),a.e,a.w,a.a,a.c)}, +a5(a){return this}, +ghn(a){var s=this.r +if(s==null)s=null +else s=A.Z(s,0,1) +return s}, +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.dW&&b.a==s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e&&J.q(b.f,s.f)&&b.ghn(0)==s.ghn(0)&&A.fj(b.w,s.w)&&b.x==s.x}, +gv(a){var s=this,r=s.ghn(0),q=s.w +q=q==null?null:A.cs(q) +return A.ad(s.a,s.b,s.c,s.d,s.e,s.f,r,q,s.x,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aQ4.prototype={} +A.ctf.prototype={ +$2(a,b){var s=this.b +if((s.a.a&30)===0)s.fw(0) +$.cW.xr$.push(new A.cte(this.a,this.c))}, +$S:452} +A.cte.prototype={ +$1(a){var s=this.a.a +s.toString +this.b.O(0,s)}, +$S:5} +A.ctg.prototype={ +$2(a,b){var s=this.b +if((s.a.a&30)===0)s.fw(0) +s=this.a.a +s.toString +this.c.O(0,s) +A.fs(new A.dl(a,b,"image resource service",A.cJ("image failed to precache"),null,!0))}, +$S:108} +A.z4.prototype={ +J(){return new A.afa(B.f)}} +A.afa.prototype={ +a8(){var s=this +s.an() +$.an.aT$.push(s) +s.z=new A.asQ(s,t.uZ)}, +m(){var s,r=this +B.b.F($.an.aT$,r) +r.biY() +s=r.at +if(s!=null)s.m() +s=r.z +s===$&&A.b() +s.a=null +r.a5t(null) +r.ap()}, +c5(){var s,r=this +r.bkJ() +r.a5x() +s=r.c +s.toString +if(A.bLC(s))r.b8G() +else r.asp(!0) +r.dH()}, +b1(a){var s,r,q=this +q.bc(a) +if(q.r&&q.a.e==null!==(a.e==null)){s=q.K5() +r=q.d +r.toString +r.a3(0,q.amf(!0)) +q.d.O(0,s)}if(!q.a.c.l(0,a.c))q.a5x()}, +lM(){this.a5x() +this.aQO()}, +bkJ(){var s=this.c +s.toString +s=A.cG(s,B.bzs) +s=s==null?null:s.Q +if(s==null){s=$.aEj.Wx$ +s===$&&A.b() +s=(s.a&2)!==0}this.w=s}, +a5x(){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.bl6(new A.a8V(n,r,t.JE).a5(A.GL(q,s)))}, +amf(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.gb4j() +q=q.f!=null||!1?new A.c2_(r):null +q=r.ax=new A.kh(r.gb4l(),s,q)}q.toString +return q}, +K5(){return this.amf(!1)}, +b4m(a,b){this.C(new A.c21(this,a,b))}, +b4k(a){this.C(new A.c20(this,a))}, +a5t(a){var s=this.e +$.cW.xr$.push(new A.c22(s)) +this.e=a}, +bl6(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.O(0,q.K5())}q.a.toString +q.C(new A.c23(q)) +q.C(new A.c24(q)) +q.d=a +if(q.r)a.a3(0,q.K5())}, +b8G(){var s,r=this +if(r.r)return +s=r.d +s.toString +s.a3(0,r.K5()) +s=r.at +if(s!=null)s.m() +r.at=null +r.r=!0}, +asp(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.GW() +s=r.d +s.toString +s.O(0,r.K5()) +r.r=!1}, +biY(){return this.asp(!1)}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=f.Q +if(d!=null){s=f.a.f +if(s!=null)return s.$3(a,d,f.as)}d=f.e +s=d==null +r=s?e:d.a +q=s?e:d.c +p=f.a +o=p.r +n=p.w +d=s?e:d.b +if(d==null)d=1 +s=p.x +m=p.y +l=p.Q +k=p.as +j=p.at +i=p.ax +h=f.w +h===$&&A.b() +g=A.aCr(j,e,s,l,q,p.z,k,n,r,h,!1,!1,m,i,d,o) +if(!p.cy){d=p.cx +s=d==null +if(s)d="" +g=new A.bX(A.ci(e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,!0,e,e,e,d,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),!s,!1,!1,!1,g,e)}d=p.d +if(d!=null)g=d.$4(a,g,f.x,f.y) +d=f.a.e +return d!=null?d.$3(a,g,f.f):g}} +A.c2_.prototype={ +$2(a,b){var s=this.a +s.C(new A.c1Z(s,a,b))}, +$S:108} +A.c1Z.prototype={ +$0(){var s=this.a +s.Q=this.b +s.as=this.c}, +$S:0} +A.c21.prototype={ +$0(){var s,r=this.a +r.a5t(this.b) +r.as=r.Q=r.f=null +s=r.x +r.x=s==null?0:s+1 +r.y=B.V.da(r.y,this.c)}, +$S:0} +A.c20.prototype={ +$0(){var s=this.a +s.f=this.b +s.as=s.Q=null}, +$S:0} +A.c22.prototype={ +$1(a){var s=this.a +if(s!=null)s.a.m() +return null}, +$S:5} +A.c23.prototype={ +$0(){this.a.a5t(null)}, +$S:0} +A.c24.prototype={ +$0(){var s=this.a +s.x=s.f=null +s.y=!1}, +$S:0} +A.b_M.prototype={} +A.Hu.prototype={ +iE(a){var s=A.C6(this.a,this.b,a) +s.toString +return s}} +A.yt.prototype={ +iE(a){var s=A.bbQ(this.a,this.b,a) +s.toString +return s}} +A.a2n.prototype={ +iE(a){var s=A.vO(this.a,this.b,a) +s.toString +return s}} +A.yE.prototype={ +iE(a){var s=A.ji(this.a,this.b,a) +s.toString +return s}} +A.Hs.prototype={ +iE(a){return A.rf(this.a,this.b,a)}} +A.ao9.prototype={ +iE(a){return A.a_T(this.a,this.b,a)}} +A.Kk.prototype={ +iE(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=new A.dD(new Float64Array(3)),a5=new A.dD(new Float64Array(3)),a6=A.cLg(),a7=A.cLg(),a8=new A.dD(new Float64Array(3)),a9=new A.dD(new Float64Array(3)) +this.a.ayq(a4,a6,a8) +this.b.ayq(a5,a7,a9) +s=1-b0 +r=a4.ti(s).S(0,a5.ti(b0)) +q=a6.ti(s).S(0,a7.ti(b0)) +p=new Float64Array(4) +o=new A.EQ(p) +o.T(q) +o.jI(0) +n=a8.ti(s).S(0,a9.ti(b0)) +s=new Float64Array(16) +q=new A.c5(s) +m=p[0] +l=p[1] +k=p[2] +j=p[3] +i=m+m +h=l+l +g=k+k +f=m*i +e=m*h +d=m*g +c=l*h +b=l*g +a=k*g +a0=j*i +a1=j*h +a2=j*g +a3=r.a +s[0]=1-(c+a) +s[1]=e+a2 +s[2]=d-a1 +s[3]=0 +s[4]=e-a2 +s[5]=1-(f+a) +s[6]=b+a0 +s[7]=0 +s[8]=d+a1 +s[9]=b-a0 +s[10]=1-(f+c) +s[11]=0 +s[12]=a3[0] +s[13]=a3[1] +s[14]=a3[2] +s[15]=1 +q.bK(0,n) +return q}} +A.wT.prototype={ +iE(a){var s=A.d_(this.a,this.b,a) +s.toString +return s}} +A.avX.prototype={} +A.RF.prototype={ +gvq(){var s,r=this,q=r.d +if(q===$){s=A.bQ(null,r.a.d,null,1,null,r) +r.d!==$&&A.a_() +r.d=s +q=s}return q}, +gih(){var s,r=this,q=r.e +if(q===$){s=r.gvq() +q=r.e=A.cI(r.a.c,s,null)}return q}, +a8(){var s,r=this +r.an() +s=r.gvq() +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(new A.bng(r)) +r.aka() +r.G5()}, +b1(a){var s,r=this +r.bc(a) +if(r.a.c!==a.c){r.gih().m() +s=r.gvq() +r.e=A.cI(r.a.c,s,null)}r.gvq().e=r.a.d +if(r.aka()){r.n6(new A.bnf(r)) +s=r.gvq() +s.sj(0,0) +s.cM(0) +r.G5()}}, +m(){this.gih().m() +this.gvq().m() +this.aRJ()}, +bl9(a,b){if(a==null)return +a.sVa(a.ah(0,this.gih().gj(0))) +a.sdw(0,b)}, +aka(){var s={} +s.a=!1 +this.n6(new A.bne(s,this)) +return s.a}, +G5(){}} +A.bng.prototype={ +$1(a){switch(a.a){case 3:this.a.a.toString +break +case 0:case 1:case 2:break}}, +$S:10} +A.bnf.prototype={ +$3(a,b,c){this.a.bl9(a,b) +return a}, +$S:313} +A.bne.prototype={ +$3(a,b,c){var s +if(b!=null){if(a==null)a=c.$1(b) +s=a.b +if(!J.q(b,s==null?a.a:s))this.a.a=!0 +else if(a.b==null)a.sdw(0,a.a)}else a=null +return a}, +$S:313} +A.Hb.prototype={ +a8(){this.aOF() +var s=this.gvq() +s.cY() +s=s.em$ +s.b=!0 +s.a.push(this.gb2R())}, +b2S(){this.C(new A.b3N())}} +A.b3N.prototype={ +$0(){}, +$S:0} +A.ZU.prototype={ +J(){return new A.aKt(null,null,B.f)}} +A.aKt.prototype={ +n6(a){var s,r,q=this,p=t.VC +q.CW=p.a(a.$3(q.CW,q.a.w,new A.bQW())) +s=t.QS +q.cx=s.a(a.$3(q.cx,q.a.x,new A.bQX())) +r=t.mB +q.cy=r.a(a.$3(q.cy,q.a.y,new A.bQY())) +q.db=r.a(a.$3(q.db,q.a.z,new A.bQZ())) +q.dx=t.YY.a(a.$3(q.dx,q.a.Q,new A.bR_())) +q.dy=s.a(a.$3(q.dy,q.a.as,new A.bR0())) +q.fr=t.Z0.a(a.$3(q.fr,q.a.at,new A.bR1())) +q.fx=p.a(a.$3(q.fx,q.a.ax,new A.bR2()))}, +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.gih(),g=j.CW +g=g==null?i:g.ah(0,h.gj(0)) +s=j.cx +s=s==null?i:s.ah(0,h.gj(0)) +r=j.cy +r=r==null?i:r.ah(0,h.gj(0)) +q=j.db +q=q==null?i:q.ah(0,h.gj(0)) +p=j.dx +p=p==null?i:p.ah(0,h.gj(0)) +o=j.dy +o=o==null?i:o.ah(0,h.gj(0)) +n=j.fr +n=n==null?i:n.ah(0,h.gj(0)) +m=j.fx +m=m==null?i:m.ah(0,h.gj(0)) +l=j.a +k=l.ay +return A.bB(g,l.r,k,i,p,r,q,i,i,o,s,n,m,i)}} +A.bQW.prototype={ +$1(a){return new A.BN(t.pC.a(a),null)}, +$S:314} +A.bQX.prototype={ +$1(a){return new A.yE(t.A0.a(a),null)}, +$S:207} +A.bQY.prototype={ +$1(a){return new A.yt(t.Hw.a(a),null)}, +$S:316} +A.bQZ.prototype={ +$1(a){return new A.yt(t.Hw.a(a),null)}, +$S:316} +A.bR_.prototype={ +$1(a){return new A.Hu(t.k.a(a),null)}, +$S:741} +A.bR0.prototype={ +$1(a){return new A.yE(t.A0.a(a),null)}, +$S:207} +A.bR1.prototype={ +$1(a){return new A.Kk(t.xV.a(a),null)}, +$S:742} +A.bR2.prototype={ +$1(a){return new A.BN(t.pC.a(a),null)}, +$S:314} +A.ZY.prototype={ +J(){return new A.aKz(null,null,B.f)}} +A.aKz.prototype={ +n6(a){this.CW=t.QS.a(a.$3(this.CW,this.a.r,new A.bRa()))}, +q(a){var s=this.CW +s.toString +return new A.aA(J.cEr(s.ah(0,this.gih().gj(0)),B.L,B.mo),this.a.w,null)}} +A.bRa.prototype={ +$1(a){return new A.yE(t.A0.a(a),null)}, +$S:207} +A.a_0.prototype={ +J(){return new A.aKB(null,null,B.f)}} +A.aKB.prototype={ +n6(a){var s,r=this,q=null,p=t.ir +r.CW=p.a(a.$3(r.CW,r.a.w,new A.bRf())) +r.cx=p.a(a.$3(r.cx,r.a.x,new A.bRg())) +s=r.cy +r.a.toString +r.cy=p.a(a.$3(s,q,new A.bRh())) +s=r.db +r.a.toString +r.db=p.a(a.$3(s,q,new A.bRi())) +s=r.dx +r.a.toString +r.dx=p.a(a.$3(s,q,new A.bRj())) +s=r.dy +r.a.toString +r.dy=p.a(a.$3(s,q,new A.bRk()))}, +q(a){var s,r,q,p,o,n=this,m=null,l=n.CW +l=l==null?m:l.ah(0,n.gih().gj(0)) +s=n.cx +s=s==null?m:s.ah(0,n.gih().gj(0)) +r=n.cy +r=r==null?m:r.ah(0,n.gih().gj(0)) +q=n.db +q=q==null?m:q.ah(0,n.gih().gj(0)) +p=n.dx +p=p==null?m:p.ah(0,n.gih().gj(0)) +o=n.dy +o=o==null?m:o.ah(0,n.gih().gj(0)) +return A.mo(q,n.a.r,o,m,l,r,s,p)}} +A.bRf.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.bRg.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.bRh.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.bRi.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.bRj.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.bRk.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.a_2.prototype={ +J(){return new A.aKD(null,null,B.f)}} +A.aKD.prototype={ +n6(a){this.z=t.ir.a(a.$3(this.z,this.a.w,new A.bRm()))}, +G5(){var s=this.gih(),r=this.z +r.toString +this.Q=new A.aB(t.o.a(s),r,A.z(r).h("aB"))}, +q(a){var s,r=this.Q +r===$&&A.b() +s=this.a +return A.Aa(s.x,s.r,null,r)}} +A.bRm.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.a_1.prototype={ +J(){return new A.aKC(null,null,B.f)}} +A.aKC.prototype={ +n6(a){this.z=t.ir.a(a.$3(this.z,this.a.w,new A.bRl()))}, +G5(){var s=this.gih(),r=this.z +r.toString +this.Q=new A.aB(t.o.a(s),r,A.z(r).h("aB"))}, +q(a){var s=this.Q +s===$&&A.b() +return A.aDK(B.C,this.a.r,null,s)}} +A.bRl.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.a_4.prototype={ +J(){return new A.aKG(null,null,B.f)}} +A.aKG.prototype={ +n6(a){this.z=t.KF.a(a.$3(this.z,this.a.w,new A.bRn()))}, +G5(){var s=this.gih(),r=this.z +r.toString +this.Q=new A.aB(t.o.a(s),r,A.z(r).h("aB"))}, +q(a){var s=this.Q +s===$&&A.b() +return A.aEM(this.a.r,s,null,!0)}} +A.bRn.prototype={ +$1(a){return new A.aP(t.EP.a(a),null,t.Ni)}, +$S:743} +A.ZX.prototype={ +J(){return new A.aKy(null,null,B.f)}} +A.aKy.prototype={ +n6(a){this.z=t.ir.a(a.$3(this.z,this.a.w,new A.bR9()))}, +G5(){var s=this.gih(),r=this.z +r.toString +this.Q=new A.aB(t.o.a(s),r,A.z(r).h("aB"))}, +q(a){var s=this.Q +s===$&&A.b() +return new A.dg(s,!1,this.a.r,null)}} +A.bR9.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.H8.prototype={ +J(){return new A.aKv(null,null,B.f)}} +A.aKv.prototype={ +n6(a){this.CW=t.Dh.a(a.$3(this.CW,this.a.w,new A.bR5()))}, +q(a){var s=null,r=this.CW +r.toString +r=r.ah(0,this.gih().gj(0)) +return A.h4(this.a.r,s,s,B.aG,!0,r,s,s,B.a0)}} +A.bR5.prototype={ +$1(a){return new A.wT(t.em.a(a),null)}, +$S:744} +A.ZZ.prototype={ +J(){return new A.aKA(null,null,B.f)}} +A.aKA.prototype={ +n6(a){var s=this,r=s.CW +s.a.toString +s.CW=t.eJ.a(a.$3(r,B.bh,new A.bRb())) +s.cx=t.ir.a(a.$3(s.cx,s.a.z,new A.bRc())) +r=t.YJ +s.cy=r.a(a.$3(s.cy,s.a.Q,new A.bRd())) +s.db=r.a(a.$3(s.db,s.a.at,new A.bRe()))}, +q(a){var s,r,q,p,o=this,n=o.a,m=n.w +n=n.x +s=o.CW +s.toString +s=s.ah(0,o.gih().gj(0)) +r=o.cx +r.toString +r=r.ah(0,o.gih().gj(0)) +q=o.a.Q +p=o.db +p.toString +p=p.ah(0,o.gih().gj(0)) +p.toString +return new A.aBi(m,n,s,r,q,p,o.a.r,null)}} +A.bRb.prototype={ +$1(a){return new A.Hs(t.m3.a(a),null)}, +$S:745} +A.bRc.prototype={ +$1(a){return new A.aP(A.f0(a),null,t.Y)}, +$S:45} +A.bRd.prototype={ +$1(a){return new A.fp(t.G.a(a),null)}, +$S:155} +A.bRe.prototype={ +$1(a){return new A.fp(t.G.a(a),null)}, +$S:155} +A.XB.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.wc.prototype={ +dv(a){return new A.a4l(A.hg(null,null,null,t.lU,t.X),this,B.aD,A.z(this).h("a4l"))}} +A.a4l.prototype={ +adV(a,b){var s=this.y2,r=this.$ti,q=r.h("bU<1>?").a(s.i(0,a)),p=q==null +if(!p&&q.gad(q))return +if(b==null)s.n(0,a,A.dV(r.c)) +else{p=p?A.dV(r.c):q +p.B(0,r.c.a(b)) +s.n(0,a,p)}}, +acd(a,b){var s,r=this.$ti,q=r.h("bU<1>?").a(this.y2.i(0,b)) +if(q==null)return +if(!q.gad(q)){s=this.e +s.toString +s=r.h("wc<1>").a(s).aG9(a,q) +r=s}else r=!0 +if(r)b.c5()}} +A.n7.prototype={ +ed(a){return a.f!==this.f}, +dv(a){var s=new A.XC(A.hg(null,null,null,t.lU,t.X),this,B.aD,A.z(this).h("XC")) +this.f.a3(0,s.ga3L()) +return s}} +A.XC.prototype={ +cI(a,b){var s,r,q=this,p=q.e +p.toString +s=q.$ti.h("n7<1>").a(p).f +r=b.f +if(s!==r){p=q.ga3L() +s.O(0,p) +r.a3(0,p)}q.ah6(0,b)}, +dN(){var s,r=this +if(r.aU){s=r.e +s.toString +r.agE(r.$ti.h("n7<1>").a(s)) +r.aU=!1}return r.a0Q()}, +b71(){this.aU=!0 +this.hl()}, +wB(a){this.agE(a) +this.aU=!1}, +oH(){var s=this,r=s.e +r.toString +s.$ti.h("n7<1>").a(r).f.O(0,s.ga3L()) +s.DY()}} +A.eU.prototype={} +A.bnr.prototype={ +$1(a){var s,r,q +if(a.l(0,this.a))return!1 +if(a instanceof A.mc&&a.gb7() instanceof A.eU){s=t.og.a(a.gb7()) +r=A.I(s) +q=this.c +if(!q.p(0,r)){q.B(0,r) +this.d.push(s)}}return!0}, +$S:50} +A.aoC.prototype={} +A.xc.prototype={ +q(a){var s,r,q,p=this.d +for(s=this.c,r=s.length,q=0;qMath.abs(0))return B.qG +else return B.ml}, +bc5(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.e3(0) +s=q.y +s.sj(0,s.a) +s=q.r +if(s!=null)s.a.O(0,q.gSS()) +q.r=null}s=q.z +s===$&&A.b() +r=s.r +if(r!=null&&r.a!=null){s.e3(0) +s=q.z +s.sj(0,s.a) +s=q.w +if(s!=null)s.a.O(0,q.gSX()) +q.w=null}q.Q=q.ch=null +q.at=q.d.a.Dt() +q.as=q.d.oG(a.b) +q.ax=q.ay}, +bc7(a){var s,r,q,p,o,n,m=this,l=m.d.a.Dt(),k=m.x=a.c,j=m.d.oG(k),i=m.ch +if(i===B.ml)i=m.ch=m.am6(a) +else if(i==null){i=m.am6(a) +m.ch=i}if(!m.RT(i)){m.a.toString +return}switch(m.ch.a){case 1:i=m.at +i.toString +s=m.d +s.sj(0,m.a4p(s.a,i*a.d/l)) +r=m.d.oG(k) +i=m.d +s=i.a +q=m.as +q.toString +i.sj(0,m.EK(s,r.W(0,q))) +p=m.d.oG(k) +k=m.as +k.toString +if(!A.cB0(k).l(0,A.cB0(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.sj(0,m.b9F(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.dm3(i,j)}i=m.as +i.toString +n=j.W(0,i) +i=m.d +i.sj(0,m.EK(i.a,n)) +m.as=m.d.oG(k) +break}m.a.toString}, +bc3(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.O(0,h.gSS()) +s=h.w +if(s!=null)s.a.O(0,h.gSX()) +s=h.y +s===$&&A.b() +s.sj(0,s.a) +s=h.z +s===$&&A.b() +s.sj(0,s.a) +if(!h.RT(h.ch)){h.Q=null +return}s=h.ch +if(s===B.ml){s=a.a.a +if(s.gfT()<50){h.Q=null +return}r=h.d.a.PT().a +q=r[0] +r=r[1] +h.a.toString +p=A.aux(0.0000135,q,s.a,0,B.dC) +h.a.toString +o=A.aux(0.0000135,r,s.b,0,B.dC) +s=s.gfT() +h.a.toString +n=A.cQu(s,0.0000135,10) +s=p.gGy() +m=o.gGy() +l=t.Ni +k=A.cI(B.ft,h.y,null) +h.r=new A.aB(k,new A.aP(new A.j(q,r),new A.j(s,m),l),l.h("aB")) +h.y.e=A.cp(0,0,0,B.e.aF(n*1000),0,0) +k.a3(0,h.gSS()) +h.y.cM(0)}else if(s===B.qG){s=a.b +r=Math.abs(s) +if(r<0.1){h.Q=null +return}j=h.d.a.Dt() +h.a.toString +i=A.aux(0.0026999999999999997,j,s/10,0,B.dC) +h.a.toString +n=A.cQu(r,0.0000135,0.1) +s=i.jN(0,n) +r=t.Y +q=A.cI(B.ft,h.z,null) +h.w=new A.aB(q,new A.aP(j,s,r),r.h("aB")) +h.z.e=A.cp(0,0,0,B.e.aF(n*1000),0,0) +q.a3(0,h.gSX()) +h.z.cM(0)}}, +bfh(a){var s,r,q,p,o,n,m,l=this +if(t.Mj.b(a)){if(a.gel(a)===B.cH){l.a.toString +s=!0}else s=!1 +if(s){l.a.toString +s=a.gb8(a).S(0,a.gqW()) +r=a.gqW() +q=A.L7(a.geJ(a),null,r,s) +if(!l.RT(B.ml)){l.a.toString +return}s=l.d +s.toString +p=s.oG(a.gev()) +s=l.d +s.toString +o=s.oG(a.gev().W(0,q)) +s=l.d +s.sj(0,l.EK(s.a,o.W(0,p))) +l.a.toString +return}if(a.gqW().b===0)return +s=a.gqW() +l.a.toString +n=Math.exp(-s.b/200)}else if(t.RH.b(a))n=a.gkE(a) +else return +l.a.toString +if(!l.RT(B.qG)){l.a.toString +return}s=l.d +s.toString +p=s.oG(a.gev()) +s=l.d +s.sj(0,l.a4p(s.a,n)) +s=l.d +s.toString +m=s.oG(a.gev()) +s=l.d +s.sj(0,l.EK(s.a,m.W(0,p))) +l.a.toString}, +baK(){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.O(0,o.gSS()) +o.r=null +n=o.y +n.sj(0,n.a) +return}n=o.d.a.PT().a +s=n[0] +n=n[1] +r=o.d.oG(new A.j(s,n)) +n=o.d +n.toString +s=o.r +q=s.b +s=s.a +p=n.oG(q.ah(0,s.gj(s))).W(0,r) +s=o.d +s.sj(0,o.EK(s.a,p))}, +bc1(){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.O(0,n.gSX()) +n.w=null +m=n.z +m.sj(0,m.a) +return}m=n.w +s=m.b +m=m.a +r=s.ah(0,m.gj(m)) +m=n.d.a.Dt() +s=n.d +s.toString +q=n.x +q===$&&A.b() +p=s.oG(q) +q=n.d +q.sj(0,n.a4p(q.a,r/m)) +o=n.d.oG(n.x) +m=n.d +m.sj(0,n.EK(m.a,o.W(0,p)))}, +bct(){this.C(new A.c31())}, +a8(){var s,r=this,q=null +r.an() +r.a.toString +s=A.dg0() +r.d=s +s.a3(0,r.gapp()) +r.y=A.bQ(q,q,q,1,q,r) +r.z=A.bQ(q,q,q,1,q,r)}, +b1(a){this.bc(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.O(0,s.gapp()) +s.a.toString +r=s.d +r.toString +r.k3$=$.ae() +r.k2$=0 +s.aTx()}, +q(a){var s,r,q=this,p=null,o=q.a +o.toString +s=q.d.a +r=new A.aQs(o.x,q.e,B.k,!0,s,p,p) +return A.wk(B.cE,A.dn(B.be,r,B.m,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,q.gbc2(),q.gbc4(),q.gbc6(),p,p,p,p,p,p,p,p,p,p,p,p,p,!1,new A.j(0,-0.005)),q.f,p,p,p,q.gbfg(),p)}} +A.c31.prototype={ +$0(){}, +$S:0} +A.aQs.prototype={ +q(a){var s=this,r=A.x0(s.w,new A.hI(s.c,s.d),null,s.r,!0) +return A.p3(r,s.e,null)}} +A.aH0.prototype={ +oG(a){var s=this.a,r=new A.c5(new Float64Array(16)) +if(r.l7(s)===0)A.C(A.ey(s,"other","Matrix cannot be inverted")) +s=new A.dD(new Float64Array(3)) +s.j7(a.a,a.b,0) +s=r.t7(s).a +return new A.j(s[0],s[1])}} +A.aeY.prototype={ +H(){return"_GestureType."+this.b}} +A.bwA.prototype={ +H(){return"PanAxis."+this.b}} +A.al3.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.awm.prototype={ +q(a){var s=null +return A.n1(!0,s,this.r,s,s,s,this.c,!0,s,s,s,new A.boy(this),s,s)}} +A.boy.prototype={ +$2(a,b){this.a.f.$1(b) +return B.eA}, +$S:133} +A.yk.prototype={ +dv(a){return new A.XG(this,B.aD,A.z(this).h("XG"))}} +A.XG.prototype={ +gai(){return this.$ti.h("qD<1,H>").a(A.bO.prototype.gai.call(this))}, +d0(a){var s=this.k4 +if(s!=null)a.$1(s)}, +lH(a){this.k4=null +this.mA(a)}, +iF(a,b){var s=this +s.r4(a,b) +s.$ti.h("qD<1,H>").a(A.bO.prototype.gai.call(s)).adT(s.gaoe())}, +cI(a,b){var s,r=this,q=r.e +q.toString +s=r.$ti +s.h("yk<1>").a(q) +r.nw(0,b) +s=s.h("qD<1,H>") +s.a(A.bO.prototype.gai.call(r)).adT(r.gaoe()) +q=s.a(A.bO.prototype.gai.call(r)) +q.WC$=!0 +q.a9()}, +nf(){var s=this.$ti.h("qD<1,H>").a(A.bO.prototype.gai.call(this)) +s.WC$=!0 +s.a9() +this.E5()}, +oH(){this.$ti.h("qD<1,H>").a(A.bO.prototype.gai.call(this)).adT(null) +this.a0X()}, +b8o(a){this.f.vU(this,new A.c3i(this,a))}, +mj(a,b){this.$ti.h("qD<1,H>").a(A.bO.prototype.gai.call(this)).sbq(a)}, +mn(a,b,c){}, +ni(a,b){this.$ti.h("qD<1,H>").a(A.bO.prototype.gai.call(this)).sbq(null)}} +A.c3i.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this,j=null +try{o=k.a +n=o.e +n.toString +j=o.$ti.h("yk<1>").a(n).c.$2(o,k.b) +o.e.toString}catch(m){s=A.ag(m) +r=A.aD(m) +l=A.QR(A.cRb(A.cJ("building "+k.a.e.k(0)),s,r,new A.c3j())) +j=l}try{o=k.a +o.k4=o.he(o.k4,j,null)}catch(m){q=A.ag(m) +p=A.aD(m) +o=k.a +l=A.QR(A.cRb(A.cJ("building "+o.e.k(0)),q,p,new A.c3k())) +j=l +o.k4=o.he(null,j,o.c)}}, +$S:0} +A.c3j.prototype={ +$0(){var s=A.a([],t.qe) +return s}, +$S:39} +A.c3k.prototype={ +$0(){var s=A.a([],t.qe) +return s}, +$S:39} +A.qD.prototype={ +adT(a){if(J.q(a,this.aao$))return +this.aao$=a +this.a9()}} +A.fV.prototype={ +aR(a){var s=new A.ahA(null,!0,null,null,A.aw(t.T)) +s.aQ() +return s}} +A.ahA.prototype={ +bo(a){return 0}, +bb(a){return 0}, +bh(a){return 0}, +bi(a){return 0}, +cX(a){return B.A}, +bJ(){var s=this,r=t.k,q=r.a(A.H.prototype.gZ.call(s)) +if(s.WC$||!r.a(A.H.prototype.gZ.call(s)).l(0,s.azp$)){s.azp$=r.a(A.H.prototype.gZ.call(s)) +s.WC$=!1 +r=s.aao$ +r.toString +s.Cu(r,A.z(s).h("qD.0"))}r=s.k1$ +if(r!=null){r.d_(q,!0) +s.id=q.bd(s.k1$.gu(0))}else s.id=new A.V(A.Z(1/0,q.a,q.b),A.Z(1/0,q.c,q.d))}, +il(a){var s=this.k1$ +if(s!=null)return s.pK(a) +return this.Je(a)}, +ej(a,b){var s=this.k1$ +s=s==null?null:s.es(a,b) +return s===!0}, +aI(a,b){var s=this.k1$ +if(s!=null)a.eM(s,b)}} +A.b0g.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.b0h.prototype={} +A.bp6.prototype={ +bHo(a){return a}} +A.bp7.prototype={ +gnM(){return this.a.length}, +hO(a,b){if(b<0||b>=this.a.length)return null +return new A.Jy(b,this.a[b],null)}, +IR(a){return this.a!==a.a}} +A.a36.prototype={ +Fp(a,b,c){return this.bmK(a,b,c)}, +bmK(a,b,c){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j,i +var $async$Fp=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:i=p.f +if(i.length===0){s=1 +break}o=A.a([],t.mo) +for(n=A.X(i).h("ek<1,NI>"),i=new A.ek(i,n),i=new A.bj(i,i.gA(0),n.h("bj")),m=t.hy,l=t.Vc,n=n.h("a2.E");i.t();){k=i.d +if(k==null)k=n.a(k) +j=m.a(k.w).a +j.toString +o.push(k.jv(a*l.a(j).ax,b,c))}s=3 +return A.i(A.ma(o,!1,t.H),$async$Fp) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$Fp,r)}, +aBD(a){var s,r,q,p,o,n +for(s=this.f,r=A.X(s).h("ek<1,NI>"),s=new A.ek(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),q=t.hy,p=t.Vc,r=r.h("a2.E");s.t();){o=s.d +if(o==null)o=r.a(o) +n=q.a(o.w).a +n.toString +o.hV(a*p.a(n).ax)}}, +yC(a,b,c){var s,r +t.hy.a(b) +s=b.a +s.toString +t.Vc.a(s) +r=$.ae() +r=new A.NI(B.dB,a,b,!0,null,new A.bm(!1,r,t.uh),r) +r.xz(b,null,!0,c,a) +r.Ay(b,null,s.ax*this.as,!0,c,a) +return r}} +A.IW.prototype={} +A.NI.prototype={ +gNy(){var s,r,q,p=this,o=p.at +o.toString +s=t.hy.a(p.w).a +s.toString +t.Vc.a(s) +r=p.z +r.toString +q=p.Q +q.toString +return B.e.aF(Math.min(Math.max(o,r),q)/s.ax)}, +nJ(){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.gNy() +p=p.f +p===$&&A.b() +return new A.IW(n,k,s,r,q,o,p)}, +$iIW:1} +A.aeH.prototype={ +J(){var s=null,r=t.A +return new A.aeI(new A.ahY($.ae()),new A.aR(s,r),new A.aR(s,t.hA),new A.aR(s,r),B.wk,s,A.N(t.yb,t.O),s,!0,s,s,s,B.f)}} +A.aeI.prototype={} +A.atV.prototype={ +q8(a){return new A.atV(this.qa(a))}, +ro(a,b){var s,r,q,p,o,n,m,l=this +t.JP.a(a) +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 l.QV(a,b) +q=l.QV(a,b) +s=q==null +if(!s){r=q.jN(0,1/0) +p=a.z +p.toString +if(r!==p){r=q.jN(0,1/0) +p=a.Q +p.toString +p=r===p +r=p}else r=!0}else r=!1 +if(r)return l.QV(a,b) +s=s?null:q.jN(0,1/0) +if(s==null){s=a.at +s.toString}r=t.hy.a(a.w).a +r.toString +r=t.Vc.a(r).ax +p=a.z +p.toString +o=a.Q +o.toString +n=B.e.aF(Math.min(Math.max(s,p),o)/r) +m=n*r +if(Math.abs(b)s.b?B.jy:B.dw}, +BR(a,b,c,d,e){var s=this,r=c==null?s.gdZ():c,q=b==null?s.r:b,p=e==null?s.w:e,o=d==null?s.f:d,n=a==null?s.cx:a +return A.cJY(s.z,!1,s.ay,s.b,s.ax,n,s.CW,s.as,s.Q,s.ch,s.at,q,s.e,s.a,s.x,r,o,p)}, +bsn(a,b){return this.BR(null,null,null,a,b)}, +bsk(a,b){return this.BR(null,a,null,null,b)}, +BP(a){var s=null +return this.BR(s,a,s,s,s)}, +axx(a){var s=null +return this.BR(s,s,a,s,s)}, +bsy(a,b,c,d){return this.BR(a,b,null,c,d)}, +bs_(a){var s=null +return this.BR(s,s,s,a,s)}, +bsj(a,b){return this.BR(null,a,null,b,null)}, +ade(a,b,c,d){var s,r,q,p,o,n,m=this,l=null +if(!(b||d||c||a))return m +s=m.r +r=b?0:l +q=d?0:l +p=c?0:l +r=s.yx(a?0:l,r,p,q) +q=m.w +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.bsk(r,q.yx(a?Math.max(0,q.d-s.d):l,p,n,o))}, +bFK(a){return this.ade(!1,!1,!1,a)}, +aEI(a,b,c,d){var s=this,r=null,q=s.w,p=b?Math.max(0,q.a-s.f.a):r,o=d?Math.max(0,q.b-s.f.b):r,n=c?Math.max(0,q.c-s.f.c):r,m=s.f,l=Math.max(0,q.d-m.d) +q=q.yx(l,p,n,o) +p=b?0:r +o=d?0:r +n=c?0:r +return s.bsn(m.yx(0,p,n,o),q)}, +bFL(a){return this.aEI(a,!1,!1,!1)}, +bFJ(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.j(f,d).l(0,B.h))return h +s=c.a-g +r=c.b-e +g=h.r +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.w +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.f +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.cx +i=A.X(j).h("b1<1>") +return h.bsy(A.R(new A.b1(j,new A.brw(a),i),!0,i.h("B.E")),new A.af(e,c,q,g),new A.af(f,d,k,l),new A.af(o,n,m,p))}, +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.a5E&&b.a.l(0,s.a)&&b.b===s.b&&b.gdZ().gir()===s.gdZ().gir()&&b.e===s.e&&b.r.l(0,s.r)&&b.w.l(0,s.w)&&b.f.l(0,s.f)&&b.x.l(0,s.x)&&b.as===s.as&&b.at===s.at&&b.ax===s.ax&&b.Q===s.Q&&b.z===s.z&&b.ay===s.ay&&b.ch===s.ch&&b.CW.l(0,s.CW)&&A.fj(b.cx,s.cx)}, +gv(a){var s=this +return A.ad(s.a,s.b,s.gdZ().gir(),s.e,s.r,s.w,s.f,!1,s.as,s.at,s.ax,s.Q,s.z,s.ay,s.ch,s.CW,A.cs(s.cx),B.a,B.a,B.a)}, +k(a){var s=this +return"MediaQueryData("+B.b.bQ(A.a(["size: "+s.a.k(0),"devicePixelRatio: "+B.e.aZ(s.b,1),"textScaler: "+s.gdZ().k(0),"platformBrightness: "+s.e.k(0),"padding: "+s.r.k(0),"viewPadding: "+s.w.k(0),"viewInsets: "+s.f.k(0),"systemGestureInsets: "+s.x.k(0),"alwaysUse24HourFormat: false","accessibleNavigation: "+s.z,"highContrast: "+s.as,"onOffSwitchLabels: "+s.at,"disableAnimations: "+s.ax,"invertColors: "+s.Q,"boldText: "+s.ay,"navigationMode: "+s.ch.b,"gestureSettings: "+s.CW.k(0),"displayFeatures: "+A.r(s.cx)],t.s),", ")+")"}} +A.brw.prototype={ +$1(a){return this.a.Oc(a.gvT(a))}, +$S:522} +A.zk.prototype={ +ed(a){return!this.w.l(0,a.w)}, +aG9(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,a7 +for(s=a9.gaz(a9),r=this.w,q=a8.w,p=r.cx!==q.cx,o=r.CW,n=q.CW,m=r.ch!==q.ch,l=r.ay!==q.ay,k=r.ax!==q.ax,j=r.at!==q.at,i=r.as!==q.as,h=r.Q!==q.Q,g=r.z!==q.z,f=r.w,e=q.w,d=r.x,c=q.x,b=r.f,a=q.f,a0=r.r,a1=q.r,a2=r.e!==q.e,a3=r.b!==q.b,a4=r.a,a5=q.a,a6=a4.a,a4=a4.b;s.t();){a7=s.gK(s) +if(a7 instanceof A.kw)switch(a7.a){case 0:if(!(a5.a===a6&&a5.b===a4))return!0 +break +case 1:a7=a6>a4?B.jy:B.dw +if(a7!==(a5.a>a5.b?B.jy:B.dw))return!0 +break +case 2:if(a3)return!0 +break +case 3:if(r.gdZ().gir()!==q.gdZ().gir())return!0 +break +case 4:if(!r.gdZ().l(0,q.gdZ()))return!0 +break +case 5:if(a2)return!0 +break +case 6:if(!a0.l(0,a1))return!0 +break +case 7:if(!b.l(0,a))return!0 +break +case 8:if(!d.l(0,c))return!0 +break +case 9:if(!f.l(0,e))return!0 +break +case 10:break +case 11:if(g)return!0 +break +case 12:if(h)return!0 +break +case 13:if(i)return!0 +break +case 14:if(j)return!0 +break +case 15:if(k)return!0 +break +case 16:if(l)return!0 +break +case 17:if(m)return!0 +break +case 18:if(!o.l(0,n))return!0 +break +case 19:if(p)return!0 +break}}return!1}} +A.brz.prototype={ +$1(a){return A.rC(this.a,A.bC(a,null,t.l).w.axx(B.Y),null)}, +$S:319} +A.bry.prototype={ +$1(a){var s=A.bC(a,null,t.l).w +return A.rC(this.c,s.axx(s.gdZ().Vx(0,this.b,this.a)),null)}, +$S:319} +A.bup.prototype={ +H(){return"NavigationMode."+this.b}} +A.ag0.prototype={ +J(){return new A.aRo(B.f)}} +A.aRo.prototype={ +a8(){this.an() +$.an.aT$.push(this)}, +c5(){this.dH() +this.bkP() +this.Lc()}, +b1(a){var s,r=this +r.bc(a) +s=r.a +s.toString +if(r.e==null||a.c!==s.c)r.Lc()}, +bkP(){var s,r=this +r.a.toString +s=r.c +s.toString +s=A.cG(s,null) +r.d=s +r.e=null}, +Lc(){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.grX(),a0=$.ec(),a1=a0.d +if(a1==null){a1=self.window.devicePixelRatio +if(a1===0)a1=1}a1=a.iI(0,a1) +a=a0.d +if(a==null){a=self.window.devicePixelRatio +if(a===0)a=1}s=b==null +r=s?d:b.gdZ().gir() +if(r==null)r=c.b.a.e +q=r===1?B.Y:new A.li(r) +p=s?d:b.e +if(p==null)p=c.b.a.d +o=a0.d +if(o==null){o=self.window.devicePixelRatio +if(o===0)o=1}o=A.bfi(B.k0,o) +n=a0.d +if(n==null){n=self.window.devicePixelRatio +if(n===0)n=1}n=A.bfi(B.k0,n) +m=c.ax +l=a0.d +if(l==null){l=self.window.devicePixelRatio +if(l===0)l=1}l=A.bfi(m,l) +a0=a0.d +if(a0==null){a0=self.window.devicePixelRatio +if(a0===0)a0=1}a0=A.bfi(B.k0,a0) +m=s?d:b.z +if(m==null)m=(c.b.a.a.a&1)!==0 +k=s?d:b.Q +if(k==null)k=(c.b.a.a.a&2)!==0 +j=s?d:b.ax +if(j==null)j=(c.b.a.a.a&4)!==0 +i=s?d:b.ay +if(i==null)i=(c.b.a.a.a&8)!==0 +h=s?d:b.as +if(h==null)h=(c.b.a.a.a&32)!==0 +g=s?d:b.at +c=g==null?(c.b.a.a.a&64)!==0:g +g=s&&d +b=s?d:b.ch +if(b==null)b=B.hW +f=new A.a5E(a1,a,q,p,l,o,n,a0,g===!0,m,k,h,c,j,i,b,new A.a1K(d),B.IM) +if(!f.l(0,e.e))e.C(new A.c5Y(e,f))}, +a9u(){this.Lc()}, +ayB(){if(this.d==null)this.Lc()}, +ayA(){if(this.d==null)this.Lc()}, +m(){B.b.F($.an.aT$,this) +this.ap()}, +q(a){var s=this.e +s.toString +return A.rC(this.a.e,s,null)}} +A.c5Y.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.aZk.prototype={ +Vx(a,b,c){return A.C(A.bT(null))}, +a88(a,b){return this.Vx(0,b,0)}, +bK(a,b){return A.C(A.bT(null))}, +gir(){return A.C(A.bT(null))}, +$ibLp:1} +A.b_U.prototype={} +A.aWh.prototype={ +aR(a){var s=new A.aV9(this.e,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sbqf(this.e)}} +A.aV9.prototype={ +sbqf(a){var s=this,r=s.G +if(r===a)return +if(s.y!=null)r.O(0,s.gH5()) +s.G=a +a.a3(0,s.gH5()) +s.cs()}, +gvf(){var s=this.G.a,r=A.J.prototype.gvf.call(this) +return new A.W(r.a+s.a,r.b+s.b,r.c-s.c,r.d-s.d)}, +aA(a){this.Av(a) +this.G.a3(0,this.gH5())}, +ar(a){this.G.O(0,this.gH5()) +this.vm(0)}, +ji(a){this.kH(a) +a.a=!0}} +A.azM.prototype={ +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +switch(A.bL().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.btm(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.a0(t.I) +l.toString +l=l.w}else l=g +k=h.c +k=A.ip(new A.fI(B.ki,k==null?g:new A.m7(k,g,g),g),B.c6,g,g,g,g,g) +j=new A.bX(A.ci(g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,p!=null||!1?new A.aEl(p,g):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||!h.f +if(!i&&h.w!=null){p=h.w +p.toString +j=new A.aWh(p,j,g)}return A.cvp(new A.pa(i,new A.aRT(j,q,g),g))}} +A.btm.prototype={ +$0(){if(this.a.d)A.cyc(this.b) +else A.aFM(B.bnX)}, +$S:0} +A.an2.prototype={ +q(a){var s=this,r=t.Bs.a(s.c) +return A.btl(s.r,s.x,r.gj(r),s.e,null,s.f,s.y)}} +A.WW.prototype={ +mk(a){if(this.be==null)return!1 +return this.E_(a)}, +aAm(a){}, +aAn(a,b){var s=this.be +if(s!=null)this.fu("onAnyTapUp",s)}, +Xe(a,b,c){}} +A.aKN.prototype={ +a8n(){var s=t.S,r=A.dV(s) +return new A.WW(B.b1,18,B.f2,A.N(s,t.SP),r,null,null,A.GO(),A.N(s,t.F))}, +aAW(a){a.be=this.a}} +A.aRT.prototype={ +q(a){return new A.mu(this.c,A.a1([B.buW,new A.aKN(this.d)],t.u,t.xR),B.be,!1,null)}} +A.a6c.prototype={ +q(a){var s,r,q=this,p=null,o=a.a0(t.I) +o.toString +s=A.a([],t.p) +r=q.c +if(r!=null)s.push(A.zc(r,B.r5,p)) +r=q.d +if(r!=null)s.push(A.zc(r,B.r6,p)) +r=q.e +if(r!=null)s.push(A.zc(r,B.r7,p)) +return new A.yr(new A.cm7(q.f,q.r,o.w,p),s,p)}} +A.ajP.prototype={ +H(){return"_ToolbarSlot."+this.b}} +A.cm7.prototype={ +Ho(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +if(e.b.i(0,B.r5)!=null){s=a.a +r=a.b +q=e.j2(B.r5,new A.aG(0,s,r,r)).a +switch(e.f.a){case 0:p=s-q +break +case 1:p=0 +break +default:p=null}e.li(B.r5,new A.j(p,0))}else q=0 +if(e.b.i(0,B.r7)!=null){o=e.j2(B.r7,A.nT(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.li(B.r7,new A.j(n,(a.b-o.b)/2))}else m=0 +if(e.b.i(0,B.r6)!=null){s=a.a +r=e.e +l=Math.max(s-q-m-r*2,0) +k=e.j2(B.r6,A.nT(a).BO(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")),s=s.c;q.t();){r=q.d +if(r==null)r=s.a(r) +if(r.a===this)return!1 +r=r.d.a +if(r<=10&&r>=1)return!0}return!1}, +gXA(){var s=this.a +if(s==null)return!1 +s=s.alG(A.cOT(this)) +s=s==null?null:s.gaBp() +return s===!0}} +A.bCF.prototype={ +$1(a){var s,r=this.a.a +if(r==null)s=null +else{r.a.toString +s=!0}if(s===!0){r=r.y.gjl() +if(r!=null)r.ho()}}, +$S:33} +A.bCE.prototype={ +$1(a){var s=this.a.a +if(s!=null){s=s.y.gjl() +if(s!=null)s.ho()}}, +$S:33} +A.nm.prototype={ +k(a){var s=this.a +s=s==null?"none":'"'+s+'"' +return"RouteSettings("+s+", "+A.r(this.b)+")"}} +A.ne.prototype={ +k(a){return'Page("'+A.r(this.a)+'", '+this.c.k(0)+", "+A.r(this.b)+")"}} +A.wq.prototype={} +A.Jg.prototype={ +ed(a){return a.f!=this.f}} +A.A7.prototype={} +A.aH1.prototype={} +A.asr.prototype={ +bGd(a,b,c){var s,r,q,p,o=A.a([],t.Fm),n=new A.bcl(a,c,o) +n.$2(null,b.length===0) +for(s=b.length,r=0;r=10)return +s.y=!0 +s.x=b +s.d=B.bAl}, +d2(a,b){return this.bqQ(0,b,t.z)}, +m(){var s,r,q,p,o,n,m,l=this,k={} +l.d=B.bAi +s=l.a +r=s.gYK() +q=new A.cdr() +p=A.X(r) +o=new A.b1(r,q,p.h("b1<1>")) +if(!o.gaz(0).t()){l.d=B.qQ +s.m() +return}k.a=o.gA(0) +n=s.a +n.f.B(0,l) +for(s=B.b.gaz(r),p=new A.i6(s,q,p.h("i6<1>"));p.t();){r=s.gK(0) +m=A.aF("listener") +q=new A.cds(k,l,r,m,n) +m.b=q +r=r.e +if(r!=null)r.a3(0,q)}}, +gaGR(){var s=this.d.a +return s<=7&&s>=1}, +gaBp(){var s=this.d.a +return s<=10&&s>=1}, +aC3(a){var s +for(s=this.a;s.gPg();)s.ue(a) +this.dB(a) +this.z=!1}} +A.cdu.prototype={ +$0(){var s=this.a +if(s.d===B.a_F){s.d=B.k7 +this.b.RR()}}, +$S:0} +A.cdt.prototype={ +$1(a){var s=0,r=A.p(t.P),q=this,p,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=A.bL() +s=B.b4===p?3:4 +break +case 3:o=q.a.w +s=5 +return A.i(A.jk(B.aA,null,t.H),$async$$1) +case 5:B.iB.nr(0,B.Dp.ZJ(o)) +s=2 +break +case 4:if(B.aM===p){B.iB.nr(0,B.Dp.ZJ(q.a.w)) +s=2 +break}s=2 +break +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:77} +A.cdr.prototype={ +$1(a){return a.gaCe()}, +$S:762} +A.cds.prototype={ +$0(){var s=this,r=s.a;--r.a +s.c.O(0,s.d.aX()) +if(r.a===0)return A.j8(new A.cdq(s.b,s.e))}, +$S:0} +A.cdq.prototype={ +$0(){var s=this.a +if(!this.b.f.F(0,s))return +s.d=B.qQ +s.a.m()}, +$S:0} +A.cdv.prototype={ +$1(a){return a.a===this.a}, +$S:129} +A.Gj.prototype={} +A.XX.prototype={ +wA(a){a.SM(this.b,this.a,B.hC,!1)}} +A.XW.prototype={ +wA(a){var s=$.vi() +A.fT(a) +if(!s.a.get(a).cx.a)a.SM(this.a,this.b,B.hD,!1)}} +A.agq.prototype={ +wA(a){}} +A.agr.prototype={ +wA(a){var s=this.a,r=s.guA() +if(r)a.SM(this.b,s,B.hC,!1)}} +A.aPQ.prototype={ +L(a,b){B.b.L(this.a,b) +if(J.iL(b))this.ab()}, +i(a,b){return this.a[b]}, +gaz(a){var s=this.a +return new J.cP(s,s.length,A.X(s).h("cP<1>"))}, +k(a){return A.u0(this.a,"[","]")}, +$iaC:1} +A.nc.prototype={ +b4d(){var s,r,q=this,p=q.yn(),o=A.aF("routeBlocksPop"),n=!p +if(n){s=q.AW(A.tn()) +o.se9(s!=null&&s.a.gzN()===B.jG)}else o.se9(!1) +r=new A.zx(!n||o.aX()) +n=$.cW +switch(n.c_$.a){case 4:q.c.jj(r) +break +case 0:case 2:case 3:case 1:n.xr$.push(new A.bus(q,r)) +break}}, +a8(){var s,r,q,p=this +p.an() +for(s=J.au(p.a.x);s.t();){r=s.gK(s) +q=$.vi() +q.a.set(r,p)}p.as=p.a.x +s=p.c.kX(t.mS) +s=s==null?null:s.gb7() +t.ZR.a(s) +p.a6y(s==null?null:s.f) +if(p.a.as)B.pq.rH("selectSingleEntryHistory",t.H) +$.i2.ul$.a3(0,p.gaqr()) +p.e.a3(0,p.gan1())}, +bfl(){var s=this.e,r=A.d8z(new A.b1(s,A.tn(),A.z(s).h("b1"))) +if(r!=null)r.w=$.i2.ul$.a}, +lk(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +g.oC(g.at,"id") +s=g.r +g.oC(s,"history") +g.alP() +g.d=new A.aR(null,t.ku) +r=g.e +r.L(0,s.aF6(null,g)) +for(q=g.a.c,p=q.length,o=t.xs,n=r.a,m=0;m")),q=q.c;r.t();){p=r.d;(p==null?q.a(p):p).a.Vr()}}, +alP(){var s,r,q +this.f.JV(new A.bur(),!0) +for(s=this.e,r=s.a;!s.gad(0);){q=r.pop() +s.ab() +A.cKi(q,!1)}}, +a6y(a){var s,r,q=this +if(q.Q!=a){if(a!=null)$.vi().n(0,a,q) +s=q.Q +if(s==null)s=null +else{r=$.vi() +A.fT(s) +s=r.a.get(s)}if(s===q){s=$.vi() +r=q.Q +r.toString +s.n(0,r,null)}q.Q=a +q.atH()}}, +atH(){var s=this,r=s.Q,q=s.a +if(r!=null)s.as=J.b2S(q.x,A.a([r],t.tc)) +else s.as=q.x}, +b1(a){var s,r,q,p=this +p.aRR(a) +s=a.x +r=J.lm(s) +if(!r.l(s,p.a.x)){for(s=r.gaz(s);s.t();){r=s.gK(s) +q=$.vi() +q.a.set(r,null)}for(s=J.au(p.a.x);s.t();){r=s.gK(s) +q=$.vi() +q.a.set(r,p)}p.atH()}if(a.c!==p.a.c&&!p.gt5())p.bkO() +for(s=p.e.a,r=A.X(s),s=new J.cP(s,s.length,r.h("cP<1>")),r=r.c;s.t();){q=s.d;(q==null?r.a(q):q).a.Vr()}}, +fS(){var s,r,q=this.as +q===$&&A.b() +q=J.au(q) +for(;q.t();){s=q.gK(q) +r=$.vi() +r.a.set(s,null)}this.jO()}, +cL(){var s,r,q +this.aRO() +s=this.as +s===$&&A.b() +s=J.au(s) +for(;s.t();){r=s.gK(s) +q=$.vi() +q.a.set(r,this)}}, +m(){var s,r,q=this +q.a6y(null) +q.y.m() +q.alP() +q.at.m() +q.r.m() +s=q.cx +r=$.ae() +s.k3$=r +s.k2$=0 +$.i2.ul$.O(0,q.gaqr()) +s=q.e +s.O(0,q.gan1()) +s.k3$=r +s.k2$=0 +q.aRS()}, +gaio(){var s,r,q,p=A.a([],t.wi) +for(s=this.e.a,r=A.X(s),s=new J.cP(s,s.length,r.h("cP<1>")),r=r.c;s.t();){q=s.d +B.b.L(p,(q==null?r.a(q):q).a.gYK())}return p}, +bkO(){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,a5=null,a6={} +a6.a=a6.b=0 +a6.c=a4.a.c.length-1 +s=a4.e +r=a6.d=s.gA(0)-1 +q=t.uD +p=A.a([],q) +o=A.N(t.IE,t.Z4) +for(n=s.a,m=a5,l=0;l<=r;l=i){k=n[l] +if(!k.c){J.eQ(o.cP(0,m,new A.but()),k) +j=l+1 +a6.a=j +i=j +continue}i=a6.b +if(i>a6.c)break +h=a4.a.c[i] +if(!k.a80(h))break +g=k.a +if(g.b!==h){g.b=h +g.u6()}p.push(k) +a6.b=i+1 +j=l+1 +a6.a=j +i=j +m=k}f=A.a([],q) +q=r +while(!0){if(!(l<=q&&a6.b<=a6.c))break +c$1:{i=n[q] +if(!i.c){f.push(i) +r=q-1 +a6.d=r +q=r +break c$1}g=a4.a.c +e=a6.c +if(!i.a80(g[e]))break +if(f.length!==0){o.cP(0,i,new A.buu(f)) +B.b.V(f)}r=q-1 +a6.d=r +a6.c=e-1 +q=r}}r=q+f.length +a6.d=r +q=t.Ez +d=A.N(t.f0,q) +c=A.b9(q) +for(q=t.pw;l<=r;){i=n[l];++l +if(!i.c)continue +b=q.a(i.a.b) +g=i.d.a +if(!(g<=7&&g>=1)){c.B(0,i) +continue}d.n(0,b.c,i)}for(i=t.xs,a=!1;g=a6.b,g<=a6.c;){a0=a4.a.c[g] +a6.b=g+1 +g=a0.c +g=!d.aB(0,g)||!d.i(0,g).a80(a0) +if(g){g=a4.c +g.toString +g=a0.BS(g) +e=$.b2F() +p.push(new A.kx(g,a5,!0,B.a_D,e,new A.GB(new ($.amo())(e),i),e)) +a=!0}else{g=d.F(0,a0.c) +g.toString +e=g.a +if(e.b!==a0){e.b=a0 +e.u6()}p.push(g)}}a1=A.N(t.oY,t.Kh) +for(;i=a6.a,i<=a6.d;){k=n[i] +a6.a=i+1 +if(!k.c){J.eQ(o.cP(0,m,new A.buv()),k) +if(m.z){i=k.d.a +i=i<=7&&i>=1}else i=!1 +if(i)k.z=!0 +continue}a2=q.a(k.a.b) +if(d.aB(0,a2.c)||c.p(0,k)){a1.n(0,m,k) +i=k.d.a +if(i<=7&&i>=1)k.z=!0}m=k}a6.c=a4.a.c.length-1 +r=s.gA(0)-1 +a6.d=r +q=i +while(!0){if(!(q<=r&&a6.b<=a6.c))break +c$4:{k=n[q] +if(!k.c){J.eQ(o.cP(0,m,new A.buw()),k) +break c$4}i=a4.a.c +g=a6.b +h=i[g] +i=k.a +if(i.b!==h){i.b=h +i.u6()}p.push(k) +j=q+1 +a6.a=j +a6.b=g+1 +q=j +m=k}}if(a||a1.a!==0){a4.a.toString +a3=B.a4x.bGd(a1,p,o) +a3=new A.ek(a3,A.X(a3).h("ek<1,kx>"))}else a3=p +q=n.length +B.b.V(n) +if(q!==0)s.ab() +if(o.aB(0,a5)){q=o.i(0,a5) +q.toString +s.L(0,q)}for(q=J.au(a3);q.t();){i=q.gK(q) +n.push(i) +s.ab() +if(o.aB(0,i)){i=o.i(0,i) +i.toString +B.b.L(n,i) +if(J.iL(i))s.ab()}}a4.RR()}, +a2V(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1=null +a0.ch=!0 +s=a0.e +r=s.gA(0)-1 +q=s.a +p=q[r] +o=r>0?q[r-1]:a1 +n=A.a([],t.uD) +$label0$1:for(m=a0.x,l=a0.w,k=a1,j=k,i=!1,h=!1;r>=0;){switch(p.d.a){case 1:g=a0.xL(r-1,A.tn()) +f=g>=0?q[g]:a1 +f=f==null?a1:f.a +e=p.a +e.a=a0 +e.zr() +p.d=B.bAj +l.iW(0,new A.XX(e,f)) +continue $label0$1 +case 2:if(i||j==null){f=p.a +f.Mt() +p.d=B.k7 +if(j==null)f.BX(a1) +continue $label0$1}break +case 3:case 4:case 6:f=o==null?a1:o.a +g=a0.xL(r-1,A.tn()) +e=g>=0?q[g]:a1 +e=e==null?a1:e.a +p.bxw(j==null,a0,f,e) +if(p.d===B.k7)continue $label0$1 +break +case 5:if(!h&&k!=null)p.aaI(k) +h=!0 +break +case 7:if(!h&&k!=null)p.aaI(k) +i=!0 +h=!0 +break +case 8:g=a0.xL(r,A.am3()) +f=g>=0?q[g]:a1 +if(!p.bxv(a0,f==null?a1:f.a))continue $label0$1 +if(!h){if(k!=null)p.aaI(k) +k=p.a}f=p.a +g=a0.xL(r,A.am3()) +e=g>=0?q[g]:a1 +m.iW(0,new A.XW(f,e==null?a1:e.a)) +if(p.d===B.yU)continue $label0$1 +i=!0 +break +case 11:break +case 9:p.a.W7(p.x) +p.x=null +p.d=B.bAf +continue $label0$1 +case 10:if(!h){if(k!=null)p.a.G3(k) +k=a1}g=a0.xL(r,A.am3()) +f=g>=0?q[g]:a1 +f=f==null?a1:f.a +p.d=B.bAh +if(p.y)m.iW(0,new A.agq(p.a,f)) +continue $label0$1 +case 12:if(!i&&j!=null)break +p.d=B.yU +continue $label0$1 +case 13:p=B.b.fE(q,r) +s.ab() +n.push(p) +p=j +break +case 14:case 15:case 0:break}--r +d=r>0?q[r-1]:a1 +j=p +p=o +o=d}a0.b1f() +a0.b1h() +if(a0.a.as){c=a0.AW(A.tn()) +b=c==null?a1:c.a.b.a +if(b!=null&&b!==a0.ax){A.cMB(!1,a1,A.di(b,0,a1)) +a0.ax=b}}for(q=n.length,a=0;a=0;){s=l[k] +r=s.d.a +if(!(r<=12&&r>=3)){--k +continue}q=this.b2w(k+1,A.cTg()) +r=q==null +p=r?m:q.a +if(p!=s.r){if(!((r?m:q.a)==null&&J.q(s.f.a.deref(),s.r))){p=s.a +p.BX(r?m:q.a)}s.r=r?m:q.a}--k +o=this.xL(k,A.cTg()) +n=o>=0?l[o]:m +r=n==null +p=r?m:n.a +if(p!=s.e){p=s.a +p.Mu(r?m:n.a) +s.e=r?m:n.a}}}, +amw(a,b){a=this.xL(a,b) +return a>=0?this.e.a[a]:null}, +xL(a,b){var s=this.e.a +while(!0){if(!(a>=0&&!b.$1(s[a])))break;--a}return a}, +b2w(a,b){var s=this.e,r=s.a +while(!0){if(!(a?") +q=r.a(this.a.r.$1(s)) +return q==null&&!b?r.a(this.a.w.$1(s)):q}, +a5D(a,b,c){return this.Tw(a,!1,b,c)}, +aE0(a,b,c){var s=this.a5D(a,b,c) +s.toString +return this.pF(s,c.h("0?"))}, +bEJ(a,b){return this.aE0(a,null,b)}, +pF(a){var s=this.e +s.a.push(A.cOS(a,B.yV,!1,null)) +s.ab() +this.RR() +this.ajd() +return a.d.a}, +yn(){var s=this.e,r=s.gaz(0),q=new A.i6(r,A.tn(),A.z(s).h("i6")) +if(!q.t())return!1 +if(r.gK(0).a.gPg())return!0 +if(!q.t())return!1 +return!0}, +NS(a){var s=0,r=A.p(t.y),q,p=this,o,n,m +var $async$NS=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)$async$outer:switch(s){case 0:m=p.AW(A.tn()) +if(m==null){q=!1 +s=1 +break}o=m.a +s=3 +return A.i(o.qN(),$async$NS) +case 3:n=c +if(p.c==null){q=!0 +s=1 +break}if(n===B.jG){q=!0 +s=1 +break}if(m!==p.AW(A.tn())){q=!0 +s=1 +break}switch(o.gzN().a){case 2:q=!1 +s=1 +break $async$outer +case 0:p.dB(a) +q=!0 +s=1 +break $async$outer +case 1:o.acp(!1) +q=!0 +s=1 +break $async$outer}case 1:return A.n(q,r)}}) +return A.o($async$NS,r)}, +bAW(a){return this.NS(a,t.X)}, +Y6(){return this.NS(null,t.X)}, +Hr(a){var s=this,r=s.e.bzL(0,A.tn()) +if(r.c){if(s.a.d.$2(r.a,a)&&r.d===B.k7)r.d=B.yW}else r.dB(a) +if(r.d===B.yW)s.a2V(!1) +s.ajd()}, +dB(a){return this.Hr(a,t.X)}, +fD(){return this.Hr(null,t.X)}, +Ht(a){var s=this.AW(A.tn()) +for(;s!=null;){if(a.$1(s.a))return +this.fD() +s=this.AW(A.tn())}}, +azD(a){var s,r=this,q=r.e.a,p=B.b.Cq(q,A.cOT(a),0) +q=q[p] +if(q.c&&q.d.a<8){s=r.amw(p-1,A.am3()) +s=s==null?null:s.a +r.x.iW(0,new A.XW(a,s))}q.d=B.yU +if(!r.ch)r.a2V(!1)}, +saul(a){this.CW=a +this.cx.sj(0,a>0)}, +btW(){var s,r,q,p,o=this +o.saul(o.CW+1) +if(o.CW===1){s=o.e +r=o.xL(s.gA(0)-1,A.am3()) +q=s.a[r].a +p=!q.gPg()&&r>0?o.amw(r-1,A.am3()).a:null +s=o.as +s===$&&A.b() +s=J.au(s) +for(;s.t();)s.gK(s).SM(q,p,B.hD,!0)}}, +Mz(){var s,r=this +r.saul(r.CW-1) +if(r.CW===0){s=r.as +s===$&&A.b() +s=J.au(s) +for(;s.t();)s.gK(s).Mz()}}, +bao(a){this.cy.B(0,a.gcG())}, +b5x(a){this.cy.F(0,a.gcG())}, +ajd(){if($.cW.c_$===B.jH){var s=this.d +s===$&&A.b() +s=$.an.U$.z.i(0,s) +this.C(new A.buq(s==null?null:s.rA(t.MZ)))}s=this.cy +B.b.aE(A.R(s,!0,A.z(s).h("cZ.E")),$.an.gbpO())}, +alG(a){var s,r,q +for(s=this.e.a,r=A.X(s),s=new J.cP(s,s.length,r.h("cP<1>")),r=r.c;s.t();){q=s.d +if(q==null)q=r.a(q) +if(a.$1(q))return q}return null}, +AW(a){var s,r,q,p,o +for(s=this.e.a,r=A.X(s),s=new J.cP(s,s.length,r.h("cP<1>")),r=r.c,q=null;s.t();){p=s.d +o=p==null?r.a(p):p +if(a.$1(o))q=o}return q}, +q(a){var s,r,q=this,p=null,o=q.gb5w(),n=A.q8(a),m=q.eb$,l=q.d +l===$&&A.b() +s=q.a.at +if(l.gam()==null){r=q.gaio() +r=J.n8(r.slice(0),A.X(r).c)}else r=B.IV +return new A.Jg(p,new A.ff(new A.bux(q,a),A.wk(B.cE,A.b34(!1,A.cwT(A.n1(!0,p,A.abH(m,new A.T9(r,s,l)),p,p,p,q.y,!1,p,p,p,p,p,!0),n)),p,o,q.gban(),p,p,o),p,t.en),p)}} +A.bus.prototype={ +$1(a){var s=this.a.c +if(s==null)return +s.jj(this.b)}, +$S:5} +A.buy.prototype={ +$1(a){var s,r,q=a.b.a +if(q!=null){s=this.a.at +r=s.y +if(r==null)r=s.$ti.h("cV.T").a(r) +s.ahp(0,r+1) +q=new A.aS1(r,q,null,B.yX)}else q=null +return A.cOS(a,B.qP,!1,q)}, +$S:765} +A.bur.prototype={ +$1(a){a.d=B.qQ +a.a.m() +return!0}, +$S:129} +A.but.prototype={ +$0(){return A.a([],t.uD)}, +$S:161} +A.buu.prototype={ +$0(){return A.ew(this.a,!0,t.Ez)}, +$S:161} +A.buv.prototype={ +$0(){return A.a([],t.uD)}, +$S:161} +A.buw.prototype={ +$0(){return A.a([],t.uD)}, +$S:161} +A.buq.prototype={ +$0(){var s=this.a +if(s!=null)s.sauL(!0)}, +$S:0} +A.bux.prototype={ +$1(a){if(a.a||!this.a.yn())return!1 +this.b.jj(B.b6s) +return!0}, +$S:293} +A.ai3.prototype={ +H(){return"_RouteRestorationType."+this.b}} +A.aVA.prototype={ +gaBr(){return!0}, +VH(){return A.a([this.a.a],t.jl)}} +A.aS1.prototype={ +VH(){var s=this,r=s.aSj(),q=A.a([s.c,s.d],t.jl),p=s.e +if(p!=null)q.push(p) +B.b.L(r,q) +return r}, +BS(a){var s=a.a5D(this.d,this.e,t.z) +s.toString +return s}, +gaF4(){return this.c}} +A.czK.prototype={ +gaBr(){return!1}, +VH(){A.dbh(this.d)}, +BS(a){var s=a.c +s.toString +return this.d.$2(s,this.e)}, +gaF4(){return this.c}} +A.aPR.prototype={ +cI(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null,a=c.y==null +if(a)c.y=A.N(t.N,t.UX) +s=t.jl +r=A.a([],s) +q=c.y +q.toString +p=J.aS(q,null) +if(p==null)p=B.oH +o=A.N(t.R,t.UX) +q=c.y +q.toString +n=J.d1r(J.GV(q)) +for(q=a1.a,m=A.X(q),q=new J.cP(q,q.length,m.h("cP<1>")),m=m.c,l=b,k=a,j=!0;q.t();){i=q.d +h=i==null?m.a(i):i +if(h.d.a>7){i=h.a +i.c.sj(0,b) +continue}if(h.c){k=k||r.length!==J.bn(p) +if(r.length!==0){g=l==null?b:l.gkh() +o.n(0,g,r) +n.F(0,g)}j=h.gkh()!=null +i=h.a +f=j?h.gkh():b +i.c.sj(0,f) +if(j){r=A.a([],s) +i=c.y +i.toString +p=J.aS(i,h.gkh()) +if(p==null)p=B.oH}else{r=B.oH +p=B.oH}l=h +continue}if(j){i=h.b +i=i==null?b:i.gaBr() +j=i===!0}else j=!1 +i=h.a +f=j?h.gkh():b +i.c.sj(0,f) +if(j){i=h.b +f=i.b +i=f==null?i.b=i.VH():f +if(!k){f=J.ao(p) +e=f.gA(p) +d=r.length +k=e<=d||!J.q(f.i(p,d),i)}else k=!0 +B.b.B(r,i)}}k=k||r.length!==J.bn(p) +c.b12(r,l,o,n) +if(k||n.gcU(n)){c.y=o +c.ab()}}, +b12(a,b,c,d){var s +if(a.length!==0){s=b==null?null:b.gkh() +c.n(0,s,a) +d.F(0,s)}}, +V(a){if(this.y==null)return +this.y=null +this.ab()}, +aF6(a,b){var s,r,q,p,o,n,m=A.a([],t.uD) +if(this.y!=null)s=a!=null&&a.gkh()==null +else s=!0 +if(s)return m +s=this.y +s.toString +r=J.aS(s,a==null?null:a.gkh()) +if(r==null)return m +for(s=J.au(r),q=t.xs;s.t();){p=A.dj8(s.gK(s)) +o=p.BS(b) +n=$.b2F() +m.push(new A.kx(o,p,!1,B.qP,n,new A.GB(new ($.amo())(n),q),n))}return m}, +yB(){return null}, +uw(a){a.toString +return J.cv5(t.f.a(a),new A.c1P(),t.R,t.UX)}, +abc(a){this.y=a}, +v_(){return this.y}, +gw9(a){return this.y!=null}} +A.c1P.prototype={ +$2(a,b){return new A.aY(A.bw(a),A.ew(t.j.a(b),!0,t.K),t.qE)}, +$S:767} +A.zx.prototype={ +k(a){return"NavigationNotification canHandlePop: "+this.a}} +A.c86.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.ags.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.agt.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.c86()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.aRP()}} +A.b_K.prototype={} +A.a6e.prototype={ +J(){return new A.aSa(B.f)}} +A.aSa.prototype={ +q(a){var s=this,r=s.a,q=s.d +return new A.zT(new A.ff(new A.c84(s),r.c,null,t.en),new A.c85(s),q,null)}} +A.c85.prototype={ +$1(a){if(a)return +this.a.a.e.$0()}, +$S:4} +A.c84.prototype={ +$1(a){var s=!a.a,r=this.a +if(s!==r.d)r.C(new A.c83(r,s)) +return!1}, +$S:293} +A.c83.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.a6f.prototype={ +J(){return new A.T_(new A.aET($.ae()),B.f)}, +by4(a,b){return this.r.$2(a,b)}} +A.T_.prototype={ +a8(){var s,r=this +r.an() +r.a.toString +s=new A.c8a(r,null,r.gb4b(),!0,B.dB) +s.e=A.cOD(s,"outer",0) +s.f=A.cOD(s,"inner",0) +r.e=s}, +c5(){this.dH() +var s=this.e +s.toString +this.a.toString +s.b=null +s.aG7()}, +b1(a){this.bc(a) +this.a.toString}, +m(){var s=this,r=s.e,q=r.w +if(q!=null)q.m() +r.w=null +q=r.e +q===$&&A.b() +q.m() +r=r.f +r===$&&A.b() +r.m() +s.e=null +r=s.d +r.k3$=$.ae() +r.k2$=0 +s.ap()}, +b4c(){var s,r=this +if(r.c==null)return +s=r.e.gaAx() +if(r.f!==s)r.C(new A.buA())}, +q(a){this.a.toString +return new A.afj(this,new A.e_(new A.buB(this,B.mG),null),null)}} +A.buA.prototype={ +$0(){}, +$S:0} +A.buB.prototype={ +$1(a){var s,r,q,p,o,n=null,m=this.a +m.f=m.e.gaAx() +m.a.toString +s=A.um(a).FQ(!1) +r=m.e +q=r.e +q===$&&A.b() +p=m.a +p.toString +r=r.f +r===$&&A.b() +o=m.f +o.toString +o=A.R(p.by4(a,o),!0,t.C) +o.push(A.oA(A.cyz(A.mf(B.Ks,t.Dz),p.w,r))) +m.a.toString +return new A.XY(m.d,o,B.v,!1,q,n,this.b,s,!1,n,0,n,n,B.m,B.c5,n,B.k,n)}, +$S:768} +A.XY.prototype={ +awx(a,b,c,d){var s=null +return new A.aA4(this.p3,c,s,0,b,s,s,B.kn,this.ch,d,s)}} +A.afj.prototype={ +ed(a){return this.f!==a.f}} +A.aSb.prototype={} +A.c8a.prototype={ +gdj(){var s=this.e +s===$&&A.b() +s=s.f +if(s.length===0)return null +s=A.fw(s,t.bh,t.eI) +return A.z(s).y[1].a(J.ZB(s.a))}, +gbpM(){var s=this.gdj() +if(s==null)return!0 +return s.ay&&Math.max(s.gkR()-s.gfL(),0)===0}, +gaAx(){var s,r,q,p=this.f +p===$&&A.b() +p=A.fw(p.f,t.bh,t.eI) +s=J.au(p.a) +p=A.z(p) +p=p.h("@<1>").a1(p.y[1]).y[1] +for(;s.t();){r=p.a(s.gK(s)) +q=r.z +if(!(q!=null&&r.Q!=null)||r.at==null)continue +else{r=r.at +r.toString +q.toString +if(r>q)return!0}}return!1}, +A0(a){var s,r,q,p,o,n=this +if(n.r===a)return +n.r=a +n.gdj().ayE(a) +s=n.f +s===$&&A.b() +s=A.fw(s.f,t.bh,t.eI) +r=J.au(s.a) +s=A.z(s) +s=s.h("@<1>").a1(s.y[1]).y[1] +for(;r.t();){q=s.a(r.gK(r)) +p=q.nJ() +q=q.w.Q +o=$.an.U$.z.i(0,q) +o.toString +q=$.an.U$.z.i(0,q) +if(q!=null){q=q.b +if(q!=null)q.jj(new A.abK(a,p,o,0))}}}, +Fx(a,b){var s,r,q,p,o,n=this +n.gdj().kc(a) +s=a.gps() +r=n.f +r===$&&A.b() +r=A.fw(r.f,t.bh,t.eI) +q=J.au(r.a) +r=A.z(r) +r=r.h("@<1>").a1(r.y[1]).y[1] +for(;q.t();){p=r.a(q.gK(q)) +o=b.$1(p) +p.kc(o) +s=s&&o.gps()}r=n.w +if(r!=null)r.m() +n.w=null +if(!s)n.A0(B.dB)}, +giO(){return this.gdj().w.a.c}, +kC(a){this.Fx(this.a91(a),new A.c8d(this,a))}, +a91(a){var s,r,q,p,o,n,m,l,k=this +if(a!==0){s=k.f +s===$&&A.b() +s=A.fw(s.f,t.bh,t.eI) +r=J.au(s.a) +s=A.z(s) +s=s.h("@<1>").a1(s.y[1]).y[1] +q=a>0 +p=null +for(;r.t();){o=s.a(r.gK(r)) +if(p!=null)if(q){n=p.at +n.toString +m=o.at +m.toString +if(nm)continue}p=o}}else p=null +if(p==null){s=k.gdj() +s.toString +r=k.gdj().r +q=k.gdj() +q.toString +return s.a8T(r.ro(q,a),B.a_B)}l=k.ami(p,a) +s=k.gdj() +s.toString +return s.axT(k.gdj().r.ro(l,a),l,B.bzP)}, +a9_(a,b){return a.a8T(a.r.ro(this.ami(a,b),b),B.bzQ)}, +ami(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=a.at +g.toString +s=a.z +s.toString +if(g===s){g=h.gdj().at +g.toString +s=h.gdj().z +s.toString +r=h.gdj().Q +r.toString +q=A.Z(g,s,r) +r=h.gdj().z +r.toString +s=h.gdj().Q +s.toString +p=s +o=r +n=0 +m=0}else{r=g-s +if(g0 +if(g){s=a.at +s.toString +r=a.z +r.toString +r=s>r +s=r}else s=!1 +if(s){g=h.gdj().Q +g.toString +s=h.gdj().at +s.toString +m=g-s +p=q+m +s=h.gdj().at +s.toString +n=s-q +o=q}else{s=b<0 +if(s){r=a.at +r.toString +l=a.z +l.toString +l=rs){s=q.gdj().Q +s.toString +r=b.z +r.toString +return a-s+r}s=b.z +s.toString +return s}, +aFX(){var s,r,q,p +if(!this.gdj().ay)return +s=this.f +s===$&&A.b() +s=A.fw(s.f,t.bh,t.eI) +r=J.au(s.a) +s=A.z(s) +s=s.h("@<1>").a1(s.y[1]).y[1] +q=!1 +for(;r.t();){p=s.a(r.gK(r)) +if(!p.ay)return +q=q||p.r.r_(p)}s=this.gdj() +r=s.w +r.Qe(s.r.r_(s)||q)}, +jv(a,b,c){return this.bmJ(a,b,c)}, +bmJ(a,b,c){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$jv=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:m=q.gdj() +m.toString +p=q.gdj() +p.toString +o=m.axW(q.NZ(a,p),c,b) +p=o.c +p===$&&A.b() +n=A.a([p.a],t.mo) +q.Fx(o,new A.c8b(q,a,c,b,n)) +s=2 +return A.i(A.ma(n,!1,t.H),$async$jv) +case 2:return A.n(null,r)}}) +return A.o($async$jv,r)}, +hV(a){var s,r,q=this,p=q.gdj() +p.toString +q.Fx(new A.n5(p),A.cTh()) +p=q.gdj() +p.toString +s=q.gdj() +s.toString +p.aBS(q.NZ(a,s)) +p=q.f +p===$&&A.b() +p=A.fw(p.f,t.bh,t.eI) +s=J.au(p.a) +p=A.z(p) +p=p.h("@<1>").a1(p.y[1]).y[1] +for(;s.t();){r=p.a(s.gK(s)) +r.aBS(q.NZ(a,r))}q.kC(0)}, +Hq(a){var s,r,q,p,o,n,m,l,k,j=this +if(a===0){j.kC(0) +return}s=j.gdj() +s.toString +j.Fx(new A.n5(s),A.cTh()) +j.A0(a<0?B.fg:B.ia) +j.gdj().dy.sj(0,!0) +j.gdj().My() +s=j.f +s===$&&A.b() +r=t.bh +q=t.eI +s=A.fw(s.f,r,q) +p=J.au(s.a) +s=A.z(s) +s=s.h("@<1>").a1(s.y[1]).y[1] +for(;p.t();){o=s.a(p.gK(p)) +o.dy.sj(0,!0) +n=o.fr +n.toString +m=o.nJ() +o=o.w +n.a9C(m,$.an.U$.z.i(0,o.Q))}if(J.h3(A.fw(j.f.f,r,q).a))j.gdj().Bv(a) +else if(a>0){for(s=A.fw(j.f.f,r,q),p=J.au(s.a),s=A.z(s),s=s.h("@<1>").a1(s.y[1]).y[1],l=a;p.t();){o=s.a(p.gK(p)) +n=o.at +n.toString +if(n<0)l=Math.max(l,o.Bv(a))}if(l!==0){k=j.gdj().Bv(l) +if(k!==0)for(s=A.fw(j.f.f,r,q),p=J.au(s.a),s=A.z(s),s=s.h("@<1>").a1(s.y[1]).y[1];p.t();)s.a(p.gK(p)).Bv(k)}}else{k=j.gdj().Bv(a) +if(k!==0){for(s=A.fw(j.f.f,r,q),p=J.au(s.a),s=A.z(s),s=s.h("@<1>").a1(s.y[1]).y[1],l=0;p.t();)l=Math.min(l,s.a(p.gK(p)).Bv(k)) +if(l!==0)j.gdj().Bv(l)}}j.gdj().Mv() +for(s=A.fw(j.f.f,r,q),r=J.au(s.a),s=A.z(s),s=s.h("@<1>").a1(s.y[1]).y[1];r.t();){q=s.a(r.gK(r)) +p=q.fr +p.toString +o=q.nJ() +n=q.w +n=$.an.U$.z.i(0,n.Q) +n.toString +p.a9B(o,n) +q.a_X() +q.PW()}j.kC(0)}, +GJ(a){var s=this.gdj() +s.toString +this.Fx(new A.Jh(a,s),new A.c8e()) +return this}, +ao(a){this.kC(0)}, +Gd(a,b){var s=this,r=A.cLY(null,s,a,null,b),q=s.gdj() +q.toString +s.Fx(new A.Io(r,q),new A.c8c(r)) +return s.w=r}, +V3(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +e.A0(a>0?B.fg:B.ia) +s=e.f +s===$&&A.b() +r=t.bh +q=t.eI +if(J.h3(A.fw(s.f,r,q).a))e.gdj().a7m(a) +else if(a<0){for(s=A.fw(e.f.f,r,q),p=J.au(s.a),s=A.z(s),s=s.h("@<1>").a1(s.y[1]).y[1],o=a;p.t();){n=s.a(p.gK(p)) +m=n.at +m.toString +if(m<0)o=Math.max(o,n.Ly(a))}if(o!==0){l=e.gdj().Ly(o) +if(l!==0)for(s=A.fw(e.f.f,r,q),r=J.au(s.a),s=A.z(s),s=s.h("@<1>").a1(s.y[1]).y[1];r.t();)s.a(r.gK(r)).a7m(l)}}else{l=e.gdj().Ly(a) +if(l!==0){k=A.a([],t.n) +s=A.fw(e.f.f,r,q) +j=A.R(s,!0,A.z(s).h("B.E")) +for(s=j.length,o=0,i=0;i0)j[g].a7m(f)}}}}, +aG7(){var s,r=this.gdj() +if(r!=null){s=this.a.c +s.toString +s=A.EK(s) +r.afL(s)}}, +k(a){var s,r=this.e +r===$&&A.b() +r=r.k(0) +s=this.f +s===$&&A.b() +return"_NestedScrollCoordinator(outer="+r+"; inner="+s.k(0)+")"}} +A.c8d.prototype={ +$1(a){return this.a.a9_(a,this.b)}, +$S:769} +A.c8b.prototype={ +$1(a){var s=this,r=a.axW(s.a.NZ(s.b,a),s.c,s.d),q=r.c +q===$&&A.b() +s.e.push(q.a) +return r}, +$S:770} +A.c8e.prototype={ +$1(a){return new A.Jh(null,a)}, +$S:771} +A.c8c.prototype={ +$1(a){return new A.Io(this.a,a)}, +$S:772} +A.agv.prototype={ +yC(a,b,c){var s=this.e,r=$.ae() +r=new A.oU(this.as,a,b,!0,s,new A.bm(!1,r,t.uh),r) +r.xz(b,s,!0,c,a) +if(r.at==null)r.at=this.a +if(r.fr==null)r.PV() +r.PW() +return r}, +aA(a){var s,r=this +r.ahq(a) +s=r.as +s.aG7() +s.aFX() +a.a3(0,r.garm()) +r.a5J()}, +rr(a,b){t.eI.a(b) +b.afL(null) +b.O(0,this.garm()) +this.ahr(0,b) +this.a5J()}, +a5J(){$.cW.xr$.push(new A.c89(this))}} +A.c89.prototype={ +$1(a){this.a.as.c.$0()}, +$S:5} +A.oU.prototype={ +afL(a){var s=this,r=s.k4 +if(r!=null)r.rr(0,s) +s.k4=a +if(a!=null)a.aA(s)}, +giO(){return this.w.a.c}, +tV(a){this.ahs(a) +this.fr.a=this}, +Zs(){if(this.k3.gbpM())this.aQx()}, +Ly(a){var s,r,q,p,o,n,m,l=this +if(a<0)s=-1/0 +else{r=l.z +r.toString +q=l.at +q.toString +s=Math.min(r,q)}if(a>0)p=1/0 +else{r=l.at +r.toString +if(r<0)p=0 +else{q=l.Q +q.toString +r=Math.max(q,r) +p=r}}r=l.at +r.toString +o=A.Z(r-a,s,p) +if(o-r===0)return a +n=o-l.r.Bu(l,o) +m=n-r +if(m!==0){l.wj(n) +l.C_(m)}return a+m}, +a7m(a){var s,r,q,p,o=this,n=o.at +n.toString +s=o.r +r=n-s.V2(o,a) +if(n===r)return 0 +q=s.Bu(o,r) +p=r-q +if(p!==n){o.wj(p) +o.C_(p-n)}if(q!==0){o.ayD(q) +return q}return 0}, +Bv(a){var s,r,q,p,o,n,m=this +if(a>0)s=-1/0 +else{r=m.z +r.toString +q=m.at +q.toString +s=Math.min(r,q)}if(a<0)p=1/0 +else{r=m.Q +r.toString +q=m.at +q.toString +p=Math.max(r,q)}r=m.at +r.toString +o=A.Z(r+a,s,p) +n=o-r +if(n===0)return a +m.wj(o) +m.C_(n) +return a-n}, +gDk(){return this.k3.r}, +axW(a,b,c){var s=this.at +s.toString +return A.cHG(this,c,b,s,a,this.w)}, +PV(){this.kc(new A.n5(this)) +this.k3.A0(B.dB)}, +kC(a){var s=this +s.kc(s.a8T(a!==0||s.gYJ()?s.r.ro(s,a):null,B.a_B))}, +axT(a,b,c){var s,r,q=this +if(a==null)return new A.n5(q) +switch(c.a){case 0:if(b.r===b.w)return new A.n5(q) +s=q.fr +s=s==null?null:s.gpP() +s=s!==!1 +r=new A.c88(q.k3,b,s,q) +r.a18(q,a,q.w,s) +return r +case 1:s=q.fr +s=s==null?null:s.gpP() +s=s!==!1 +r=new A.c87(q.k3,s,q) +r.a18(q,a,q.w,s) +return r +case 2:s=q.fr +s=s==null?null:s.gpP() +return A.cF3(q,a,q.w,s!==!1)}}, +a8T(a,b){return this.axT(a,null,b)}, +jv(a,b,c){var s=this.k3 +return s.jv(s.aFT(a,this),b,c)}, +hV(a){var s=this.k3 +return s.hV(s.aFT(a,this))}, +Hq(a){return this.k3.Hq(a)}, +aBS(a){var s,r=this,q=r.at +q.toString +if(q!==a){r.wj(a) +r.My() +s=r.at +s.toString +r.C_(s-q) +r.Mv()}}, +q7(){this.ahu() +this.k3.aFX()}, +GJ(a){return this.k3.GJ(a)}, +Gd(a,b){return this.k3.Gd(a,b)}} +A.agu.prototype={ +H(){return"_NestedBallisticScrollActivityMode."+this.b}} +A.c87.prototype={ +gdW(){return t.eI.a(A.ov.prototype.gdW.call(this))}, +Zp(){var s,r=this,q=t.eI,p=q.a(A.ov.prototype.gdW.call(r)) +q=q.a(A.ov.prototype.gdW.call(r)) +s=r.c +s===$&&A.b() +p.kc(r.r.a9_(q,s.geC()))}, +q7(){var s,r=this,q=t.eI,p=q.a(A.ov.prototype.gdW.call(r)) +q=q.a(A.ov.prototype.gdW.call(r)) +s=r.c +s===$&&A.b() +p.kc(r.r.a9_(q,s.geC()))}, +V1(a){return this.agm(this.r.NZ(a,t.eI.a(A.ov.prototype.gdW.call(this))))}} +A.c88.prototype={ +gdW(){return t.eI.a(A.ov.prototype.gdW.call(this))}, +Zp(){var s=t.eI.a(A.ov.prototype.gdW.call(this)),r=this.c +r===$&&A.b() +s.kc(this.r.a91(r.geC()))}, +q7(){var s=t.eI.a(A.ov.prototype.gdW.call(this)),r=this.c +r===$&&A.b() +s.kc(this.r.a91(r.geC()))}, +V1(a){var s,r,q=this,p=q.c +p===$&&A.b() +if(p.geC()>0){p=q.w +if(as){a=s +r=!0}else r=!1}else if(q.c.geC()<0){p=q.w +if(a>p.w)return!0 +s=p.r +if(a"))}} +A.agx.prototype={ +aCF(a){var s,r=this.e +r.toString +s=this.$ti +s.h("ff<1>").a(r) +if(s.c.b(a))return r.d.$1(a) +return!1}, +wB(a){}} +A.qi.prototype={} +A.b0_.prototype={} +A.a6z.prototype={ +aXr(a,b){var s=b.b>b.d?B.jy:B.dw +return this.c.$2(a,s)}, +q(a){return new A.fV(this.gaXq(),null)}} +A.aAx.prototype={ +H(){return"OverflowBarAlignment."+this.b}} +A.aAw.prototype={ +aR(a){var s=this,r=null,q=a.a0(t.I) +q.toString +q=q.w +q=new A.Yk(s.e,s.f,s.r,s.w,s.x,q,B.i,0,r,r,A.aw(t.T)) +q.aQ() +q.L(0,r) +return q}, +b_(a,b){var s,r=this +t.Eg.a(b) +b.sa0u(0,r.e) +b.siN(r.f) +b.sbDj(r.r) +b.sbDh(r.w) +b.sbDi(r.x) +s=a.a0(t.I) +s.toString +b.sd5(s.w) +b.soi(B.i)}} +A.xn.prototype={} +A.Yk.prototype={ +sa0u(a,b){if(this.D===b)return +this.D=b +this.a9()}, +siN(a){if(this.N==a)return +this.N=a +this.a9()}, +sbDj(a){if(this.a4===a)return +this.a4=a +this.a9()}, +sbDh(a){if(this.ag===a)return +this.ag=a +this.a9()}, +sbDi(a){if(this.aq===a)return +this.aq=a +this.a9()}, +sd5(a){if(this.aJ===a)return +this.aJ=a +this.a9()}, +soi(a){var s=this +if(a===s.U)return +s.U=a +s.aV() +s.cs()}, +fo(a){if(!(a.b instanceof A.xn))a.b=new A.xn(null,null,B.h)}, +bh(a){var s,r,q,p,o,n=this,m=n.Y$ +if(m==null)return 0 +for(s=A.z(n).h("ap.1"),r=0;m!=null;){r+=m.aw(B.ad,1/0,m.gbG()) +q=m.b +q.toString +m=s.a(q).a7$}q=n.D +p=n.cT$ +m=n.Y$ +if(r+q*(p-1)>a){for(o=0;m!=null;){o+=m.aw(B.ao,a,m.gbP()) +q=m.b +q.toString +m=s.a(q).a7$}return o+n.a4*(n.cT$-1)}else{for(o=0;m!=null;){o=Math.max(o,m.aw(B.ao,a,m.gbP())) +q=m.b +q.toString +m=s.a(q).a7$}return o}}, +bi(a){var s,r,q,p,o,n=this,m=n.Y$ +if(m==null)return 0 +for(s=A.z(n).h("ap.1"),r=0;m!=null;){r+=m.aw(B.ad,1/0,m.gbG()) +q=m.b +q.toString +m=s.a(q).a7$}q=n.D +p=n.cT$ +m=n.Y$ +if(r+q*(p-1)>a){for(o=0;m!=null;){o+=m.aw(B.ay,a,m.gbZ()) +q=m.b +q.toString +m=s.a(q).a7$}return o+n.a4*(n.cT$-1)}else{for(o=0;m!=null;){o=Math.max(o,m.aw(B.ay,a,m.gbZ())) +q=m.b +q.toString +m=s.a(q).a7$}return o}}, +bo(a){var s,r,q,p=this,o=p.Y$ +if(o==null)return 0 +for(s=A.z(p).h("ap.1"),r=0;o!=null;){r+=o.aw(B.ad,1/0,o.gbG()) +q=o.b +q.toString +o=s.a(q).a7$}return r+p.D*(p.cT$-1)}, +bb(a){var s,r,q,p=this,o=p.Y$ +if(o==null)return 0 +for(s=A.z(p).h("ap.1"),r=0;o!=null;){r+=o.aw(B.aj,1/0,o.gbL()) +q=o.b +q.toString +o=s.a(q).a7$}return r+p.D*(p.cT$-1)}, +il(a){return this.yH(a)}, +cX(a){var s,r,q,p,o,n,m,l,k,j=this,i=j.Y$ +if(i==null)return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d)) +s=a.b +r=new A.aG(0,s,0,a.d) +for(q=A.z(j).h("ap.1"),p=0,o=0,n=0;i!=null;){m=i.jr(r) +p+=m.a +l=m.b +o=Math.max(o,l) +n+=l+j.a4 +l=i.b +l.toString +i=q.a(l).a7$}k=p+j.D*(j.cT$-1) +if(k>s)return a.bd(new A.V(s,n-j.a4)) +else return a.bd(new A.V(j.N==null?k:s,o))}, +bJ(){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.Y$ +if(a5==null){s=t.k.a(A.H.prototype.gZ.call(a2)) +a2.id=new A.V(A.Z(0,s.a,s.b),A.Z(0,s.c,s.d)) +return}s=t.k +r=s.a(A.H.prototype.gZ.call(a2)) +q=new A.aG(0,r.b,0,r.d) +for(r=A.z(a2).h("ap.1"),p=a5,o=0,n=0,m=0;p!=null;p=a5){p.d_(q,!0) +p=a4.a +l=p.id +o+=(l==null?A.C(A.a0(a3+A.I(p).k(0)+"#"+A.bq(p))):l).a +n=Math.max(n,l.b) +m=Math.max(m,l.a) +p=p.b +p.toString +a5=r.a(p).a7$ +a4.a=a5}k=a2.aJ===B.ae +j=o+a2.D*(a2.cT$-1) +if(j>s.a(A.H.prototype.gZ.call(a2)).b){a5=a2.aq===B.x?a2.Y$:a2.d7$ +a4.a=a5 +i=new A.cce(a4,a2) +for(r=t.pi,p=a5,h=0;p!=null;p=a5){l=p.b +l.toString +r.a(l) +switch(a2.ag.a){case 0:if(k){p=s.a(A.H.prototype.gZ.call(a2)) +g=a4.a +f=g.id +if(f==null)f=A.C(A.a0(a3+A.I(g).k(0)+"#"+A.bq(g))) +e=p.b-f.a +p=g}else e=0 +break +case 2:p=s.a(A.H.prototype.gZ.call(a2)) +g=a4.a +f=g.id +if(f==null)f=A.C(A.a0(a3+A.I(g).k(0)+"#"+A.bq(g))) +e=(p.b-f.a)/2 +p=g +break +case 1:if(k)e=0 +else{p=s.a(A.H.prototype.gZ.call(a2)) +g=a4.a +f=g.id +if(f==null)f=A.C(A.a0(a3+A.I(g).k(0)+"#"+A.bq(g))) +e=p.b-f.a +p=g}break +default:e=0}l.a=new A.j(e,h) +l=p.id +p=l==null?A.C(A.a0(a3+A.I(p).k(0)+"#"+A.bq(p))):l +h+=p.b+a2.a4 +a5=i.$0() +a4.a=a5}a2.id=s.a(A.H.prototype.gZ.call(a2)).bd(new A.V(s.a(A.H.prototype.gZ.call(a2)).b,h-a2.a4))}else{a5=a2.Y$ +a4.a=a5 +d=a5.gu(0).a +c=a2.N==null?j:s.a(A.H.prototype.gZ.call(a2)).b +a2.id=s.a(A.H.prototype.gZ.call(a2)).bd(new A.V(c,n)) +e=A.aF("x") +b=a2.D +switch(a2.N){case null:case void 0:e.b=k?a2.gu(0).a-d:0 +break +case B.o:e.b=k?a2.gu(0).a-d:0 +break +case B.cu:a=(a2.gu(0).a-j)/2 +e.b=k?a2.gu(0).a-a-d:a +break +case B.fa:e.b=k?j-d:a2.gu(0).a-j +break +case B.d7:b=(a2.gu(0).a-o)/(a2.cT$-1) +e.b=k?a2.gu(0).a-d:0 +break +case B.fV:b=a2.cT$>0?(a2.gu(0).a-o)/a2.cT$:0 +s=b/2 +e.b=k?a2.gu(0).a-s-d:s +break +case B.fW:b=(a2.gu(0).a-o)/(a2.cT$+1) +e.b=k?a2.gu(0).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.C(A.h6(l)) +a1=g.id +f.a=new A.j(a0,(n-(a1==null?A.C(A.a0(a3+A.I(g).k(0)+"#"+A.bq(g))):a1).b)/2) +if(s)g=e.b=a0+(a1.a+b) +else g=a0 +a5=a4.a=r.a(f).a7$ +if(k&&a5!=null){f=a5.id +e.b=g-((f==null?A.C(A.a0(a3+A.I(a5).k(0)+"#"+A.bq(a5))):f).a+b)}}}}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){this.nL(a,b)}} +A.cce.prototype={ +$0(){var s=this.b,r=s.aq,q=this.a.a +s=A.z(s).h("ap.1") +if(r===B.x){r=q.b +r.toString +r=s.a(r).a7$ +s=r}else{r=q.b +r.toString +r=s.a(r).dJ$ +s=r}return s}, +$S:324} +A.b0n.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.pi;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.pi;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0o.prototype={} +A.zF.prototype={ +suK(a){var s +if(this.b===a)return +this.b=a +s=this.f +if(s!=null)s.akH()}, +srP(a){if(this.c===a)return +this.c=a +this.f.akH()}, +gaCe(){var s=this.e +return(s==null?null:s.a)!=null}, +a3(a,b){var s=this.e +if(s!=null)s.a3(0,b)}, +O(a,b){var s=this.e +if(s!=null)s.O(0,b)}, +hB(a){var s,r=this.f +r.toString +this.f=null +if(r.c==null)return +B.b.F(r.d,this) +s=$.cW +if(s.c_$===B.i8)s.xr$.push(new A.bvp(r)) +else r.aos()}, +hl(){var s=this.r.gam() +if(s!=null)s.aou()}, +m(){var s,r=this +r.w=!0 +if(!r.gaCe()){s=r.e +if(s!=null){s.k3$=$.ae() +s.k2$=0}r.e=null}}, +k(a){var s=this,r=A.bq(s),q=s.b,p=s.c,o=s.w?"(DISPOSED)":"" +return"#"+r+"(opaque: "+q+"; maintainState: "+p+")"+o}, +$iaC:1} +A.bvp.prototype={ +$1(a){this.a.aos()}, +$S:5} +A.Ba.prototype={ +J(){return new A.Y_(B.f)}} +A.Y_.prototype={ +bcK(a,b){var s,r,q,p=this.e +if(p==null)p=this.e=new A.iz(t.oM) +s=p.b===0?null:p.gP(0) +r=b.a +while(!0){q=s==null +if(!(!q&&s.a>r))break +s=s.gaDp()}if(q){p.Sn(p.c,b,!0) +p.c=b}else s.n4$.Sn(s.n5$,b,!1)}, +ga5_(){var s,r=this,q=r.f +if(q===$){s=r.a2j(!1) +r.f!==$&&A.a_() +r.f=s +q=s}return q}, +a2j(a){return new A.dz(this.aZk(a),t.gS)}, +aZk(a){var s=this +return function(){var r=a +var q=0,p=2,o,n,m,l +return function $async$a2j(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.gP(0):l.ga2(0) +case 3:if(!(n!=null)){q=4 +break}m=n.d +n=r?n.gaDp():n.gmo(0) +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}}}}, +a8(){var s,r=this +r.an() +r.a.c.e.sj(0,r) +s=r.c.rA(t.im) +s.toString +r.d=s}, +b1(a){var s,r=this +r.bc(a) +if(a.d!==r.a.d){s=r.c.rA(t.im) +s.toString +r.d=s}}, +m(){var s,r=this,q=r.a.c.e +if(q!=null)q.sj(0,null) +q=r.a.c +if(q.w){s=q.e +if(s!=null){s.k3$=$.ae() +s.k2$=0}q.e=null}r.e=null +r.ap()}, +q(a){var s=this.a,r=s.e,q=this.d +q===$&&A.b() +return new A.wV(r,new A.O4(q,this,s.c.a.$1(a),null),null)}, +aou(){this.C(new A.c8W())}} +A.c8W.prototype={ +$0(){}, +$S:0} +A.T9.prototype={ +J(){return new A.Tb(A.a([],t.wi),null,null,B.f)}} +A.Tb.prototype={ +a8(){this.an() +this.aB1(0,this.a.c)}, +a4_(a,b){if(a!=null)return B.b.c2(this.d,a) +return this.d.length}, +aAZ(a,b,c){b.f=this +this.C(new A.bvx(this,c,null,b))}, +uz(a,b){return this.aAZ(0,b,null)}, +aB1(a,b){var s,r=b.length +if(r===0)return +for(s=0;s"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E"),q=!0,p=0;s.t();){o=s.d +if(o==null)o=r.a(o) +if(q){++p +m.push(new A.Ba(o,n,!0,o.r)) +q=!o.b||!1}else if(o.c)m.push(new A.Ba(o,n,!1,o.r))}s=t.MV +return new A.ajB(m.length-p,n.a.d,A.R(new A.bE(m,s),!1,s.h("aa.E")),null)}} +A.bvx.prototype={ +$0(){var s=this,r=s.a +B.b.eu(r.d,r.a4_(s.b,s.c),s.d)}, +$S:0} +A.bvw.prototype={ +$0(){var s=this,r=s.a +B.b.ox(r.d,r.a4_(s.b,s.c),s.d)}, +$S:0} +A.bvy.prototype={ +$0(){var s,r,q=this,p=q.a,o=p.d +B.b.V(o) +s=q.b +B.b.L(o,s) +r=q.c +r.OA(s) +B.b.ox(o,p.a4_(q.d,q.e),r)}, +$S:0} +A.bvv.prototype={ +$0(){}, +$S:0} +A.bvu.prototype={ +$0(){}, +$S:0} +A.ajB.prototype={ +dv(a){return new A.aYl(A.dV(t.lU),this,B.aD)}, +aR(a){var s=a.a0(t.I) +s.toString +s=new A.Gs(s.w,this.e,this.f,A.aw(t.O5),0,null,null,A.aw(t.T)) +s.aQ() +s.L(0,null) +return s}, +b_(a,b){var s=this.e +if(b.a4!==s){b.a4=s +if(!b.aq)b.xv()}s=a.a0(t.I) +s.toString +b.sd5(s.w) +s=this.f +if(s!==b.ag){b.ag=s +b.aV() +b.cs()}}} +A.aYl.prototype={ +gai(){return t.im.a(A.qp.prototype.gai.call(this))}, +mj(a,b){var s,r +this.agL(a,b) +s=a.b +s.toString +t.i9.a(s) +r=this.e +r.toString +s.at=t.KJ.a(J.aS(t.fo.a(r).c,b.b)).c}, +mn(a,b,c){this.agM(a,b,c)}} +A.O5.prototype={ +fo(a){if(!(a.b instanceof A.jv))a.b=new A.jv(null,null,B.h)}, +j2(a,b){var s,r,q=a.b +q.toString +t.aA.a(q) +s=this.gaFm() +r=s.D +if(r==null)r=s.D=B.ar.a5(s.N) +if(!q.gNw()){a.d_(b,!0) +q.a=B.h}else A.cLE(a,q,this.gu(0),r)}, +ej(a,b){var s,r,q,p=this.a1V(),o=p.gaz(p) +p=t.aA +s=!1 +while(!0){if(!(!s&&o.t()))break +r=o.gK(o) +q=r.b +q.toString +s=a.l5(new A.ccB(r),p.a(q).a,b)}return s}, +aI(a,b){var s,r,q,p,o,n +for(s=this.JB(),s=s.gaz(s),r=t.aA,q=b.a,p=b.b;s.t();){o=s.gK(s) +n=o.b +n.toString +n=r.a(n).a +a.eM(o,new A.j(n.a+q,n.b+p))}}} +A.ccB.prototype={ +$2(a,b){return this.a.es(a,b)}, +$S:19} +A.YW.prototype={ +aGw(a){var s=this.at +if(s==null)s=null +else{s=s.e +s=s==null?null:s.a.ga5_().aE(0,a)}return s}} +A.Gs.prototype={ +gaFm(){return this}, +fo(a){if(!(a.b instanceof A.YW))a.b=new A.YW(null,null,B.h)}, +aA(a){var s,r,q,p,o +this.aTT(a) +s=this.Y$ +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.e +if(p==null)o=null +else{p=p.a.ga5_() +p=new A.dr(p.a(),p.$ti.h("dr<1>")) +o=p}}if(o!=null)for(;o.t();)o.b.aA(a) +s=q.a7$}}, +ar(a){var s,r,q +this.aTU(0) +s=this.Y$ +for(r=t.i9;s!=null;){q=s.b +q.toString +r.a(q) +q.aGw(A.dtM()) +s=q.a7$}}, +lN(){return this.d0(this.gad9())}, +sd5(a){var s=this +if(s.N===a)return +s.N=a +s.D=null +if(!s.aq)s.xv()}, +a1i(a){var s=this +s.aq=!0 +s.lB(a) +s.aV() +s.aq=!1 +a.G.a9()}, +a5q(a){var s=this +s.aq=!0 +s.oo(a) +s.aV() +s.aq=!1}, +a9(){if(!this.aq)this.xv()}, +gAN(){var s,r,q,p,o=this +if(o.a4===A.ap.prototype.gqb.call(o))return null +s=A.ap.prototype.gbws.call(o,0) +for(r=o.a4,q=t.aA;r>0;--r){p=s.b +p.toString +s=q.a(p).a7$}return s}, +bo(a){return A.LC(this.gAN(),new A.ccF(a))}, +bb(a){return A.LC(this.gAN(),new A.ccD(a))}, +bh(a){return A.LC(this.gAN(),new A.ccE(a))}, +bi(a){return A.LC(this.gAN(),new A.ccC(a))}, +il(a){var s,r,q,p,o=this.gAN() +for(s=t.aA,r=null;o!=null;){q=o.b +q.toString +s.a(q) +p=o.pK(a) +if(p!=null){p+=q.a.b +r=r!=null?Math.min(r,p):p}o=q.a7$}return r}, +cX(a){var s=a.a,r=a.b,q=A.Z(1/0,s,r),p=a.c,o=a.d,n=A.Z(1/0,p,o) +if(isFinite(q)&&isFinite(n))return new A.V(A.Z(1/0,s,r),A.Z(1/0,p,o)) +return this.alC().jr(a)}, +JB(){return new A.dz(this.aYf(),t.gS)}, +aYf(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k +return function $async$JB(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:k=s.gAN() +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.e +if(m==null)l=null +else{m=m.a.ga5_() +m=new A.dr(m.a(),m.$ti.h("dr<1>")) +l=m}}r=l!=null?5:6 +break +case 5:case 7:if(!l.t()){r=8 +break}r=9 +return a.b=l.b,1 +case 9:r=7 +break +case 8:case 6:k=n.a7$ +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}, +a1V(){return new A.dz(this.aYd(),t.gS)}, +aYd(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k,j,i,h +return function $async$a1V(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:i=s.a4===A.ap.prototype.gqb.call(s)?null:s.d7$ +h=s.cT$-s.a4 +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.e +if(m==null)l=null +else{m=m.a +k=m.r +if(k===$){j=m.a2j(!0) +m.r!==$&&A.a_() +m.r=j +k=j}m=new A.dr(k.a(),k.$ti.h("dr<1>")) +l=m}}r=l!=null?4:5 +break +case 4:case 6:if(!l.t()){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.dJ$ +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}, +gka(){return!1}, +bJ(){var s,r,q=this,p=t.k,o=p.a(A.H.prototype.gZ.call(q)),n=A.Z(1/0,o.a,o.b) +o=A.Z(1/0,o.c,o.d) +if(isFinite(n)&&isFinite(o)){p=p.a(A.H.prototype.gZ.call(q)) +q.id=new A.V(A.Z(1/0,p.a,p.b),A.Z(1/0,p.c,p.d)) +s=null}else{s=q.alC() +q.j2(s,p.a(A.H.prototype.gZ.call(q))) +q.id=s.gu(0)}r=A.y6(q.gu(0)) +for(p=q.JB(),p=new A.dr(p.a(),p.$ti.h("dr<1>"));p.t();){o=p.b +if(o!==s)q.j2(o,r)}}, +alC(){var s,r,q,p=this,o=p.a4===A.ap.prototype.gqb.call(p)?null:p.d7$ +for(s=t.i9;o!=null;){r=o.b +r.toString +s.a(r) +q=r.at +q=q==null?null:q.d +if(q===!0&&!r.gNw())return o +o=r.dJ$}throw A.d(A.Dr(A.a([A.vT("Overlay was given infinite constraints and cannot be sized by a suitable child."),A.cJ("The constraints given to the overlay ("+p.gZ().k(0)+") would result in an illegal infinite size ("+p.gZ().gbns().k(0)+"). To avoid that, the Overlay tried to size itself to one of its children, but no suitable non-positioned child that belongs to an OverlayEntry with canSizeOverlay set to true could be found."),A.ID("Try wrapping the Overlay in a SizedBox to give it a finite size or use an OverlayEntry with canSizeOverlay set to true.")],t.qe)))}, +aI(a,b){var s,r,q=this,p=q.aJ +if(q.ag!==B.i){s=q.cx +s===$&&A.b() +r=q.gu(0) +p.sb9(0,a.nV(s,b,new A.W(0,0,0+r.a,0+r.b),A.O5.prototype.gk0.call(q),q.ag,p.a))}else{p.sb9(0,null) +q.aSe(a,b)}}, +m(){this.aJ.sb9(0,null) +this.ig()}, +d0(a){var s,r,q=this.Y$ +for(s=t.i9;q!=null;){a.$1(q) +r=q.b +r.toString +s.a(r) +r.aGw(a) +q=r.a7$}}, +lm(a){var s,r,q=this.gAN() +for(s=t.i9;q!=null;){a.$1(q) +r=q.b +r.toString +q=s.a(r).a7$}}, +rq(a){var s +switch(this.ag.a){case 0:return null +case 1:case 2:case 3:s=this.gu(0) +return new A.W(0,0,0+s.a,0+s.b)}}} +A.ccF.prototype={ +$1(a){return a.aw(B.ad,this.a,a.gbG())}, +$S:31} +A.ccD.prototype={ +$1(a){return a.aw(B.aj,this.a,a.gbL())}, +$S:31} +A.ccE.prototype={ +$1(a){return a.aw(B.ao,this.a,a.gbP())}, +$S:31} +A.ccC.prototype={ +$1(a){return a.aw(B.ay,this.a,a.gbZ())}, +$S:31} +A.aAy.prototype={ +afT(a){var s=this.a,r=$.cyj+1 +if(s!=null){$.cyj=r +s.aM1(0,r)}else this.b=$.cyj=r}, +mh(){var s=this.a +if(s!=null)s.mh() +else this.b=null}, +gml(){var s=this.a +return s!=null?s.d!=null:this.b!=null}, +k(a){return"OverlayPortalController"+(this.a!=null?"":" DETACHED")}} +A.a6C.prototype={ +J(){return new A.aSM(B.f)}} +A.aSM.prototype={ +b2i(a,b){var s,r,q=this,p=q.f,o=A.XD("marker",new A.c8X(q,!1)) +if(p!=null)if(q.e){s=o.m0() +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.Gl(a,o.m0().r,o.m0().f)}, +a8(){this.an() +this.arU(this.a.c)}, +arU(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}, +c5(){this.dH() +this.e=!0}, +b1(a){var s,r,q=this +q.bc(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.arU(r)}}, +m(){this.a.c.a=null +this.f=null +this.ap()}, +aM1(a,b){this.C(new A.c8Z(this,b)) +this.f=null}, +mh(){this.C(new A.c8Y(this)) +this.f=null}, +q(a){var s,r,q=this,p=null,o=q.d +if(o==null)return new A.Y0(p,q.a.e,p,p) +q.a.toString +s=q.b2i(o,!1) +r=q.a +return new A.Y0(new A.aNo(new A.e_(r.d,p),p),r.e,s,p)}} +A.c8X.prototype={ +$0(){var s=this.a.c +s.toString +return A.dj6(s,this.b)}, +$S:774} +A.c8Z.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.c8Y.prototype={ +$0(){this.a.d=null}, +$S:0} +A.Gl.prototype={ +aig(a){var s,r=this +r.d=a +r.b.bcK(0,r) +s=r.c +s.aV() +s.rQ() +s.cs()}, +aqD(a){var s,r=this +r.d=null +s=r.b.e +if(s!=null)s.F(0,r) +s=r.c +s.aV() +s.rQ() +s.cs()}, +k(a){var s=A.bq(this) +return"_OverlayEntryLocation["+s+"] "}} +A.O4.prototype={ +ed(a){return a.f!==this.f||a.r!==this.r}} +A.Y0.prototype={ +dv(a){return new A.aSL(this,B.aD)}, +aR(a){var s=new A.ahB(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.aSL.prototype={ +gai(){return t.SN.a(A.bO.prototype.gai.call(this))}, +iF(a,b){var s,r=this +r.r4(a,b) +s=r.e +s.toString +t.eU.a(s) +r.ok=r.he(r.ok,s.d,null) +r.k4=r.he(r.k4,s.c,s.e)}, +cI(a,b){var s=this +s.nw(0,b) +s.ok=s.he(s.ok,b.d,null) +s.k4=s.he(s.k4,b.c,b.e)}, +lH(a){this.ok=null +this.mA(a)}, +d0(a){var s=this.ok,r=this.k4 +if(s!=null)a.$1(s) +if(r!=null)a.$1(r)}, +cL(){var s,r,q +this.QM() +s=this.k4 +if(s!=null){r=t.Kp.a(s.gai()) +if(r!=null){q=s.c +q.toString +t.yO.a(q) +q.c.a1i(r) +q.d=r}}}, +fS(){var s,r,q=this.k4 +if(q!=null){s=t.Kp.a(q.gai()) +if(s!=null){r=q.c +r.toString +t.yO.a(r) +r.c.a5q(s) +r.d=null}}this.ahk()}, +mj(a,b){var s=t.SN +if(b!=null){s=s.a(A.bO.prototype.gai.call(this)) +t.Lj.a(a) +s.G=a +b.aig(a) +b.c.a1i(a)}else s.a(A.bO.prototype.gai.call(this)).sbq(a)}, +mn(a,b,c){var s=b.c,r=c.c +if(s!==r){s.a5q(a) +r.a1i(a)}if(b.b!==c.b||b.a!==c.a){b.aqD(a) +c.aig(a)}}, +ni(a,b){if(b==null){t.SN.a(A.bO.prototype.gai.call(this)).sbq(null) +return}t.Lj.a(a) +b.aqD(a) +b.c.a5q(a) +t.SN.a(A.bO.prototype.gai.call(this)).G=null}} +A.aNo.prototype={ +aR(a){var s,r=a.rA(t.SN) +r.toString +s=new A.Gr(r,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return r.G=s}, +b_(a,b){}} +A.Gr.prototype={ +JB(){var s=this.k1$ +return s==null?B.a4E:A.cxB(1,new A.cc1(s),t.x)}, +a1V(){return this.JB()}, +gaFm(){var s=this.d +return s instanceof A.Gs?s:A.C(A.Ds(A.r(s)+" of "+this.k(0)+" is not a _RenderTheater"))}, +lN(){this.G.qB(this) +this.ahl()}, +NO(){var s=this +if(s.ac)return +s.aS=s.ac=!0 +s.xv() +s.G.a9() +s.ac=!1}, +gka(){return!0}, +a9(){this.aS=!0 +this.xv()}, +bzR(){var s,r=t.gW.a(this.d) +if(r==null||this.y==null)return +s=t.k.a(A.H.prototype.gZ.call(r)) +this.a0S(A.y6(new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))),!1)}, +d_(a,b){var s,r=this,q=r.aS||!t.k.a(A.H.prototype.gZ.call(r)).l(0,a) +r.cZ=!0 +r.a0S(a,b) +r.aS=r.cZ=!1 +if(q){s=r.d +s.toString +t.im.a(s).Cu(new A.cc2(r),t.k)}}, +j1(a){return this.d_(a,!1)}, +Hp(){var s=t.k.a(A.H.prototype.gZ.call(this)) +this.id=new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))}, +bJ(){var s,r=this +if(r.cZ){r.aS=!1 +return}s=r.k1$ +if(s==null){r.aS=!1 +return}r.j2(s,t.k.a(A.H.prototype.gZ.call(r))) +r.aS=!1}, +hh(a,b){var s,r=a.b +r.toString +s=t.r.a(r).a +b.ba(0,s.a,s.b)}} +A.cc1.prototype={ +$1(a){return this.a}, +$S:775} +A.cc2.prototype={ +$1(a){var s=this.a +s.aS=!0 +s.xv()}, +$S:191} +A.ahB.prototype={ +lN(){this.ahl() +var s=this.G +if(s!=null&&s.y!=null)this.qB(s)}, +bJ(){this.E6() +var s=this.G +if(s!=null)s.bzR()}, +lm(a){var s +this.Au(a) +s=this.G +if(s!=null)a.$1(s)}} +A.aSN.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.b0c.prototype={} +A.b0d.prototype={} +A.alo.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.aA;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.aA;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0A.prototype={} +A.a3H.prototype={ +J(){var s=t.y +return new A.af_(A.a1([!1,!0,!0,!0],s,s),null,null,B.f)}, +uI(a){return A.Zm().$1(a)}} +A.af_.prototype={ +a8(){var s,r,q=this +q.an() +s=q.a +r=s.f +q.d=A.cOo(A.cO(s.e),r,q) +r=q.a +s=r.f +s=A.cOo(A.cO(r.e),s,q) +q.e=s +r=q.d +r.toString +q.f=new A.B9(A.a([r,s],t.Eo))}, +b1(a){var s,r=this +r.bc(a) +if(!a.f.l(0,r.a.f)||A.cO(a.e)!==A.cO(r.a.e)){s=r.d +s.toString +s.sa6(0,r.a.f) +s=r.d +s.toString +s.savL(A.cO(r.a.e)) +s=r.e +s.toString +s.sa6(0,r.a.f) +s=r.e +s.toString +s.savL(A.cO(r.a.e))}}, +a4X(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(!h.a.uI(a))return!1 +s=a.a +r=s.e +if(A.cO(r)!==A.cO(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.u9){s=a.e +if(s<0)n=q +else if(s>0)n=o +else n=null +m=n===q +l=new A.Es(m,0) +q=h.c +q.jj(l) +q=h.w +q.n(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.ao(0) +n.c=null +k=A.Z(Math.abs(q),100,1e4) +s=n.f +if(n.a===B.qH)r=0.3 +else{r=n.r +r===$&&A.b() +q=r.a +q=r.b.ah(0,q.gj(q)) +r=q}s.a=r +r.toString +s.b=A.Z(k*0.00006,r,0.5) +r=n.w +s=n.x +s===$&&A.b() +q=s.a +r.a=s.b.ah(0,q.gj(q)) +r.b=Math.min(0.025+75e-8*k*k,1) +r=n.b +r===$&&A.b() +r.e=A.cp(0,0,0,B.e.aF(0.15+k*0.02),0,0) +r.l9(0,0) +n.as=0.5 +n.a=B.bzd}else{q=a.d +if(q!=null){p=a.b.gai() +p.toString +t.x.a(p) +j=p.gu(0) +i=p.hZ(q.d) +switch(A.cO(r).a){case 0:n.toString +r=j.b +n.aDP(0,Math.abs(s),j.a,A.Z(i.b,0,r),r) +break +case 1:n.toString +r=j.a +n.aDP(0,Math.abs(s),j.b,A.Z(i.a,0,r),r) +break}}}}}else{if(!(a instanceof A.wG&&a.d!=null))s=a instanceof A.no&&a.d!=null +else s=!0 +if(s){if(q.a===B.qI)q.B5(B.fy) +s=h.e +if(s.a===B.qI)s.B5(B.fy)}}h.r=A.I(a) +return!1}, +m(){this.d.m() +this.e.m() +this.aTs()}, +q(a){var s=this,r=null,q=s.a,p=s.d,o=s.e,n=q.e,m=s.f +return new A.ff(s.ga4W(),new A.iU(A.ih(new A.iU(q.w,r),new A.aPG(p,o,n,m),r,r,B.A),r),r,t.WA)}} +A.Xv.prototype={ +H(){return"_GlowState."+this.b}} +A.aeZ.prototype={ +sa6(a,b){if(this.ax.l(0,b))return +this.ax=b +this.ab()}, +savL(a){if(this.ay===a)return +this.ay=a +this.ab()}, +m(){var s=this,r=s.b +r===$&&A.b() +r.m() +r=s.y +r===$&&A.b() +r.w.eH$.F(0,r) +r.ahy() +r=s.c +if(r!=null)r.ao(0) +s.f4()}, +aDP(a,b,c,d,e){var s,r,q,p=this,o=p.c +if(o!=null)o.ao(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.ah(0,s.gj(s)) +o.b=Math.min(r.ah(0,s.gj(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.ah(0,r.gj(r)) +s.b=Math.max(1-1/(0.7*Math.sqrt(p.at*q)),A.fP(o.ah(0,r.gj(r)))) +r=d/e +p.Q=r +if(r!==p.as){o=p.y +o===$&&A.b() +if(!o.gbzv())o.j9(0)}else{o=p.y +o===$&&A.b() +o.e3(0) +p.z=null}o=p.b +o===$&&A.b() +o.e=B.f_ +if(p.a!==B.qI){o.l9(0,0) +p.a=B.qI}else{o=o.r +if(!(o!=null&&o.a!=null))p.ab()}p.c=A.d3(B.f_,new A.c17(p))}, +a1N(a){var s=this +if(a!==B.a9)return +switch(s.a.a){case 1:s.B5(B.fy) +break +case 3:s.a=B.qH +s.at=0 +break +case 2:case 0:break}}, +B5(a){var s,r,q=this,p=q.a +if(p===B.a_u||p===B.qH)return +p=q.c +if(p!=null)p.ao(0) +q.c=null +p=q.f +s=q.r +s===$&&A.b() +r=s.a +p.a=s.b.ah(0,r.gj(r)) +p.b=0 +p=q.w +r=q.x +r===$&&A.b() +s=r.a +p.a=r.b.ah(0,s.gj(s)) +p.b=0 +p=q.b +p===$&&A.b() +p.e=a +p.l9(0,0) +q.a=B.a_u}, +bjK(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)/$.cYY().a) +r.ab()}if(A.am4(r.Q,r.as,0.001)){q=r.y +q===$&&A.b() +q.e3(0) +r.z=null}else r.z=a}, +aI(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.q(i.b.ah(0,s.gj(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.ah(0,n.gj(n)) +r=j.as +m=$.ar().aP() +l=j.ax +k=i.a +m.sa6(0,A.Y(B.e.aF(255*i.b.ah(0,k.gj(k))),l.gj(l)>>>16&255,l.gj(l)>>>8&255,l.gj(l)&255)) +a.d6(0) +a.ba(0,0,j.d+j.e) +a.jt(0,1,n*q) +a.qd(new A.W(0,0,0+s,0+o)) +a.h3(new A.j(s/2*(0.5+r),o-p),p,m) +a.de(0)}, +k(a){return"_GlowController(color: "+this.ax.k(0)+", axis: "+this.ay.b+")"}} +A.c17.prototype={ +$0(){return this.a.B5(B.u0)}, +$S:0} +A.aPG.prototype={ +apz(a,b,c,d,e){var s +if(c==null)return +switch(A.mN(d,e).a){case 0:c.aI(a,b) +break +case 2:a.d6(0) +a.ba(0,0,b.b) +a.jt(0,1,-1) +c.aI(a,b) +a.de(0) +break +case 3:a.d6(0) +a.qE(0,1.5707963267948966) +a.jt(0,1,-1) +c.aI(a,new A.V(b.b,b.a)) +a.de(0) +break +case 1:a.d6(0) +s=b.a +a.ba(0,s,0) +a.qE(0,1.5707963267948966) +c.aI(a,new A.V(b.b,s)) +a.de(0) +break}}, +aI(a,b){var s=this,r=s.d +s.apz(a,b,s.b,r,B.DC) +s.apz(a,b,s.c,r,B.nD)}, +hC(a){return a.b!=this.b||a.c!=this.c}, +k(a){return"_GlowingOverscrollIndicatorPainter("+A.r(this.b)+", "+A.r(this.c)+")"}} +A.aXg.prototype={ +H(){return"_StretchDirection."+this.b}} +A.aaf.prototype={ +J(){return new A.aj2(null,null,B.f)}, +uI(a){return A.Zm().$1(a)}} +A.aj2.prototype={ +gBi(){var s,r,q,p,o,n,m=this,l=null,k=m.d +if(k===$){s=t.Y +r=new A.aP(0,0,s) +q=new A.aj1(r,B.zb,B.iv,$.ae()) +p=A.bQ(l,l,l,1,l,m) +p.cY() +o=p.f0$ +o.b=!0 +o.a.push(q.ga1M()) +q.a!==$&&A.ck() +q.a=p +n=A.cI(B.ft,p,l) +n.a.a3(0,q.gip()) +t.o.a(n) +q.b!==$&&A.ck() +q.b=new A.aB(n,r,s.h("aB")) +m.d!==$&&A.a_() +m.d=q +k=q}return k}, +a4X(a){var s,r,q,p,o,n,m,l,k=this +if(!k.a.uI(a))return!1 +s=a.a +if(A.cO(s.e)!==A.cO(k.a.c))return!1 +if(a instanceof A.u9){k.f=a +J.az(k.e) +r=a.e +q=new A.Es(r<0,0) +p=k.c +p.jj(q) +k.w=q.c +if(k.w){r=k.r+=r +p=a.f +if(p!==0){s=k.gBi() +r=k.r +o=A.Z(Math.abs(p),1,1e4) +p=s.c +n=s.b +n===$&&A.b() +m=n.a +p.a=n.b.ah(0,m.gj(m)) +p.b=Math.min(0.016+1.01/o,1) +p=s.a +p===$&&A.b() +p.e=A.cp(0,0,0,B.e.aF(o*0.02),0,0) +p.l9(0,0) +s.d=B.bAC +s.f=r>0?B.iv:B.a_Z}else if(a.d!=null){s=s.d +s.toString +l=A.Z(Math.abs(r)/s,0,1) +k.gBi().bED(0,l,k.r)}}}else if(a instanceof A.wG||a instanceof A.no){k.r=0 +s=k.gBi() +if(s.d===B.zc)s.B5(B.ez)}k.e=a +return!1}, +b1G(a){switch(this.a.c.a){case 0:return a===B.iv?B.zj:B.zi +case 1:return a===B.iv?B.cy:B.c9 +case 2:return a===B.iv?B.zi:B.zj +case 3:return a===B.iv?B.c9:B.cy}}, +m(){var s=this.gBi(),r=s.a +r===$&&A.b() +r.m() +s.f4() +this.aUb()}, +q(a){var s={},r=A.bC(a,B.di,t.l).w +s.a=null +return new A.ff(this.ga4W(),A.hC(this.gBi(),new A.cg3(s,this,r.a),null),null,t.WA)}} +A.cg3.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l=this,k=l.b,j=k.gBi().b +j===$&&A.b() +s=j.a +s=j.b.ah(0,s.gj(s)) +switch(A.cO(k.a.c).a){case 0:r=1+s +l.a.a=l.c.a +q=1 +break +case 1:q=1+s +l.a.a=l.c.b +r=1 +break +default:r=1 +q=1}p=k.b1G(k.gBi().f) +j=k.f +if(j==null)o=null +else{j=j.a.d +j.toString +o=j}if(o==null)o=l.a.a +j=A.zj(r,q,1) +s=s===0 +n=s?null:B.bC +k=k.a +m=A.x0(p,k.f,n,j,!0) +return A.p3(m,!s&&o!==l.a.a?k.e:B.i,null)}, +$S:776} +A.YO.prototype={ +H(){return"_StretchState."+this.b}} +A.aj1.prototype={ +bED(a,b,c){var s,r,q,p=this,o=c>0?B.iv:B.a_Z +if(p.f!==o&&p.d===B.zd)return +p.f=o +p.e=b +s=p.c +r=p.b +r===$&&A.b() +q=r.a +s.a=r.b.ah(0,q.gj(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.ez +if(p.d!==B.zc){q.l9(0,0) +p.d=B.zc}else{s=q.r +if(!(s!=null&&s.a!=null))p.ab()}}, +a1N(a){var s=this +if(a!==B.a9)return +switch(s.d.a){case 1:s.B5(B.ez) +break +case 3:s.d=B.zb +s.e=0 +break +case 2:case 0:break}}, +B5(a){var s,r,q=this,p=q.d +if(p===B.zd||p===B.zb)return +p=q.c +s=q.b +s===$&&A.b() +r=s.a +p.a=s.b.ah(0,r.gj(r)) +p.b=0 +p=q.a +p===$&&A.b() +p.e=a +p.l9(0,0) +q.d=B.zd}, +m(){var s=this.a +s===$&&A.b() +s.m() +this.f4()}, +k(a){return"_StretchController()"}} +A.Es.prototype={ +hR(a){this.aRT(a) +a.push("side: "+(this.a?"leading edge":"trailing edge"))}} +A.agA.prototype={ +hR(a){var s,r +this.QP(a) +s=this.kN$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.al_.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.alA.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aiX.prototype={ +gcU(a){return this.a.length!==0}, +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.aiX&&A.fj(b.a,this.a)}, +gv(a){return A.cs(this.a)}, +k(a){return"StorageEntryIdentifier("+B.b.bQ(this.a,":")+")"}} +A.qt.prototype={ +aim(a){var s=A.a([],t.g8) +if(A.cKz(a,s))a.t8(new A.bwa(s)) +return s}, +aH2(a,b){var s,r=this +if(r.a==null)r.a=A.N(t.K,t.z) +s=r.aim(a) +if(s.length!==0)r.a.n(0,new A.aiX(s),b)}, +aEj(a){var s +if(this.a==null)return null +s=this.aim(a) +return s.length!==0?this.a.i(0,new A.aiX(s)):null}} +A.bwa.prototype={ +$1(a){return A.cKz(a,this.a)}, +$S:50} +A.Tf.prototype={ +q(a){return this.c}} +A.aAB.prototype={ +Bt(a,b,c){var s=t.gQ.a(B.b.gcW(this.f)) +if(s.aJ!=null){s.aJ=a +return A.dm(null,t.H)}return s.jv(s.Du(a),b,c)}, +aBE(a){var s=t.gQ.a(B.b.gcW(this.f)) +if(s.aJ!=null){s.aJ=a +return}s.hV(s.Du(a))}, +aCp(a,b){var s=t.gQ.a(B.b.gcW(this.f)).goA(0) +s.toString +return this.Bt(B.e.aF(s)+1,a,b)}, +aDq(a,b){var s=t.gQ.a(B.b.gcW(this.f)).goA(0) +s.toString +return this.Bt(B.e.aF(s)-1,a,b)}, +yC(a,b,c){var s=null,r=$.ae() +r=new A.Gm(this.as,this.ax,B.dB,a,b,!0,s,new A.bm(!1,r,t.uh),r) +r.xz(b,s,!0,c,a) +r.Ay(b,s,s,!0,c,a) +return r}, +aA(a){this.ahq(a) +t.gQ.a(a).sPc(this.ax)}} +A.KP.prototype={} +A.Gm.prototype={ +C6(a,b,c,d,e,f){return this.aQv(a,b,c,d,e,null)}, +azb(a,b,c,d){return this.C6(a,b,B.xa,c,d,null)}, +sPc(a){var s,r=this +if(r.U===a)return +s=r.goA(0) +r.U=a +if(s!=null)r.wj(r.Du(s))}, +gSk(){var s=this.ax +s.toString +return Math.max(0,s*(this.U-1)/2)}, +PK(a,b){var s=Math.max(0,a-this.gSk())/(b*this.U),r=B.e.OK(s) +if(Math.abs(s-r)<1e-10)return r +return s}, +Du(a){var s=this.ax +s.toString +return a*s*this.U+this.gSk()}, +goA(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.aJ +if(s==null){p.toString +s=q.z +s.toString +r=q.Q +r.toString +r=A.Z(p,s,r) +s=q.ax +s.toString +s=q.PK(r,s) +p=s}else p=s}return p}, +PW(){var s,r,q=this,p=q.w,o=p.c +o.toString +o=A.bwb(o) +if(o!=null){p=p.c +p.toString +s=q.aJ +if(s==null){s=q.at +s.toString +r=q.ax +r.toString +r=q.PK(s,r) +s=r}o.aH2(p,s)}}, +Zs(){var s,r,q +if(this.at==null){s=this.w +r=s.c +r.toString +r=A.bwb(r) +if(r==null)q=null +else{s=s.c +s.toString +q=r.aEj(s)}if(q!=null)this.aq=q}}, +a_X(){var s,r=this,q=r.aJ +if(q==null){q=r.at +q.toString +s=r.ax +s.toString +s=r.PK(q,s) +q=s}r.w.r.sj(0,q) +q=$.i2.n3$ +q===$&&A.b() +q.azS()}, +aF7(a,b){if(b)this.aq=a +else this.hV(this.Du(a))}, +vQ(a){var s,r,q,p,o=this,n=o.ax +n=n!=null?n:null +if(a===n)return!0 +o.aQp(a) +s=o.at +s=s!=null?s:null +if(s==null)r=o.aq +else if(n===0){q=o.aJ +q.toString +r=q}else{n.toString +r=o.PK(s,n)}p=o.Du(r) +o.aJ=a===0?r:null +if(p!==s){o.at=p +return!1}return!0}, +tV(a){var s +this.ahv(a) +if(!(a instanceof A.Gm))return +s=a.aJ +if(s!=null)this.aJ=s}, +ri(a,b){var s=a+this.gSk() +return this.aht(s,Math.max(s,b-this.gSk()))}, +nJ(){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.U +p=p.f +p===$&&A.b() +return new A.KP(n,k,s,r,q,o,p)}, +$iKP:1} +A.aeS.prototype={ +q8(a){return new A.aeS(!1,this.qa(a))}, +gvO(){return this.b}} +A.Te.prototype={ +q8(a){return new A.Te(this.qa(a))}, +b2p(a){var s +if(a instanceof A.Gm){s=a.goA(0) +s.toString +return s}return a.gfL()/a.gDl()}, +b2s(a,b){if(a instanceof A.Gm)return a.Du(b) +return b*a.gDl()}, +ro(a,b){var s,r,q,p,o=this +if(!(b<=0&&a.gfL()<=a.glf()))s=b>=0&&a.gfL()>=a.gkR() +else s=!0 +if(s)return o.QV(a,b) +r=o.t6(a) +q=o.b2p(a) +s=r.c +if(b<-s)q-=0.5 +else if(b>s)q+=0.5 +p=o.b2s(a,B.e.OK(q)) +if(p!==a.gfL())return new A.F8(p,A.Gu(o.gAr(),a.gfL()-p,b),r) +return null}, +gvO(){return!1}} +A.Tg.prototype={ +J(){return new A.aSU(B.f)}} +A.aSU.prototype={ +a8(){this.an() +this.d=this.a.r.as}, +b1W(a){var s,r +switch(this.a.e.a){case 0:s=a.a0(t.I) +s.toString +r=A.ctY(s.w) +this.a.toString +return r +case 1:return B.aJ}}, +q(a){var s,r,q=this,p=null,o=q.b1W(a),n=q.a,m=n.w +if(m==null){n=n.at +n=n==null?p:n.Ac(a)}else n=m +n=new A.Te(B.Sz.qa(n)) +n=new A.aeS(!1,p).qa(n) +m=q.a +s=m.Q +r=m.r +m=m.at +if(m==null)m=A.um(a).FQ(!1) +return new A.ff(new A.c9j(q),A.bDT(o,B.k,r,s,!1,p,new A.aeS(!1,n),p,m,p,new A.c9k(q,o)),p,t.WA)}} +A.c9j.prototype={ +$1(a){var s,r,q,p,o +if(a.kN$===0&&this.a.a.y!=null&&a instanceof A.no){s=t.B9.a(a.a) +r=s.c +r.toString +q=s.a +q.toString +p=s.b +p.toString +p=Math.max(0,A.Z(r,q,p)) +q=s.d +q.toString +o=B.e.aF(p/Math.max(1,q*s.r)) +r=this.a +if(o!==r.d){r.d=o +r.a.y.$1(o)}}return!1}, +$S:62} +A.c9k.prototype={ +$2(a,b){var s=null,r=this.a.a,q=r.as,p=r.r,o=r.z +return A.cNI(0,this.b,0,B.a65,s,q,s,s,b,A.a([new A.aEP(p.ax,r.ax,o,s)],t.p))}, +$S:777} +A.oi.prototype={ +guK(){return!0}, +gu0(){return!1}, +Vo(a){return a instanceof A.oi}, +awH(a){return a instanceof A.oi}, +grD(){return this.a4}} +A.a6G.prototype={ +rj(a,b,c){return this.en.$3(a,b,c)}, +ym(a,b,c,d){return A.cQ_(a,b,c,d)}, +gv0(){return B.aA}, +gZv(){return B.aA}, +guK(){return this.hT}, +gu0(){return!1}, +gq9(){return null}, +gu1(){return null}, +grP(){return!0}} +A.bs_.prototype={} +A.bxv.prototype={} +A.aso.prototype={ +a4w(a){return this.b9Y(a)}, +b9Y(a){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$a4w=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=A.bZ(a.b) +m=p.a +if(!m.aB(0,n)){s=1 +break}m=m.i(0,n) +m.toString +o=a.a +if(o==="Menu.selectedCallback"){m.gbJY().$0() +m.gbCM() +o=$.an.U$.f.c.e +o.toString +A.d1z(o,m.gbCM(),t.vz)}else if(o==="Menu.opened")m.gbJX(m).$0() +else if(o==="Menu.closed")m.gbJW(m).$0() +case 1:return A.n(q,r)}}) +return A.o($async$a4w,r)}} +A.a3X.prototype={ +q(a){return A.d86(this,a)}} +A.a79.prototype={} +A.a7a.prototype={ +J(){return new A.agK(B.f)}, +bj2(a,b){return this.c.$2(a,b)}, +baW(a){return this.d.$1(a)}} +A.agK.prototype={ +q(a){var s,r,q=this,p=null,o=q.e +if(o==null)return B.xt +if(!q.f)return new A.aT8(new A.c9F(o),p,p) +s=q.r +if(s==null)s=q.r=q.a.bj2(a,o) +r=q.w +s.toString +return A.n1(!1,p,s,p,p,p,r,!0,p,q.gb40(),p,p,p,p)}, +a8(){var s=this +s.w=A.hH(!0,"PlatformView(id: "+A.r(s.d)+")",!0,!0,null,null,!1) +s.aq3() +s.an()}, +b1(a){var s,r=this +r.bc(a) +if(r.a.e!==a.e){s=r.e +if(s!=null)A.dlt(s) +r.r=null +r.aq3()}}, +aq3(){var s=this,r=$.d0x().a++ +s.d=r +s.e=s.a.baW(new A.a79(r,s.gbbS()))}, +bbT(a){if(this.c!=null)this.C(new A.c9E(this))}, +b41(a){var s +if(!a){s=this.e +if(s!=null)s.a8a()}B.wI.fJ("TextInput.setPlatformViewClient",A.a1(["platformViewId",this.d],t.N,t.z),t.H)}, +m(){var s=this,r=s.e +if(r!=null)r.m() +s.e=null +r=s.w +if(r!=null)r.m() +s.w=null +s.ap()}} +A.c9F.prototype={ +$2(a,b){}, +$S:778} +A.c9E.prototype={ +$0(){this.a.f=!0}, +$S:0} +A.Tz.prototype={ +aR(a){var s=new A.aBE(this.d,null,null,null,A.aw(t.T)) +s.aQ() +s.saAE(this.f) +s.atL(this.e,s.D.gayI()) +return s}, +b_(a,b){b.sBM(0,this.d) +b.saAE(this.f) +b.atL(this.e,b.D.gayI())}} +A.aT9.prototype={ +bJ(){this.aPJ() +$.cW.xr$.push(new A.c9G(this))}} +A.c9G.prototype={ +$1(a){var s=this.a,r=s.gu(0),q=A.cK(s.cf(0,null),B.h) +s.eK.$2(r,q)}, +$S:5} +A.aT8.prototype={ +aR(a){var s=new A.aT9(this.e,B.ki,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.eK=this.e}} +A.cp0.prototype={ +$1(a){this.a.m()}, +$S:5} +A.zT.prototype={ +J(){return new A.aTJ(B.f)}} +A.aTJ.prototype={ +a8(){var s,r,q=this +q.an() +s=q.a.e +r=$.ae() +q.e!==$&&A.ck() +q.e=new A.bm(s,r,t.uh)}, +c5(){var s,r,q=this +q.dH() +s=q.c +s.toString +r=A.wp(s,t.X) +s=q.d +if(r!=s){if(s!=null)s.aFU(q) +q.d=r +if(r!=null){r.ok.B(0,q) +s=q.e +s===$&&A.b() +s.a3(0,r.gan8()) +r.a3D()}}}, +b1(a){var s +this.bc(a) +s=this.e +s===$&&A.b() +s.sj(0,this.a.e)}, +m(){var s=this,r=s.d +if(r!=null)r.aFU(s) +r=s.e +r===$&&A.b() +r.k3$=$.ae() +r.k2$=0 +s.ap()}, +q(a){return this.a.c}, +$iby8:1} +A.rP.prototype={ +q(a){return this.c}, +$izV:1, +gqy(){return this.d}} +A.TJ.prototype={ +ed(a){return this.f!=a.f}} +A.EY.prototype={ +J(){return new A.aVB(null,A.N(t.yb,t.O),null,!0,null,B.f)}} +A.aVB.prototype={ +gkh(){return this.a.d}, +lk(a,b){}, +q(a){return A.abH(this.eb$,this.a.c)}} +A.Ne.prototype={ +ed(a){return a.f!=this.f}} +A.a8B.prototype={ +J(){return new A.ai_(B.f)}} +A.ai_.prototype={ +c5(){var s,r=this +r.dH() +s=r.c +s.toString +r.r=A.wD(s) +r.a4f() +if(r.d==null){r.a.toString +r.d=!1}}, +b1(a){this.bc(a) +this.a4f()}, +gao4(){this.a.toString +return!1}, +a4f(){var s,r=this +if(r.gao4()&&!r.w){r.w=!0;++$.LE.go$ +s=$.i2.n3$ +s===$&&A.b() +s.gbGt().bf(new A.cdl(r),t.P)}}, +bfK(){var s,r=this +r.e=!1 +r.f=null +s=$.i2.n3$ +s===$&&A.b() +s.O(0,r.ga5u()) +r.a4f()}, +m(){if(this.e){var s=$.i2.n3$ +s===$&&A.b() +s.O(0,this.ga5u())}this.ap()}, +q(a){var s,r,q=this,p=q.d +p.toString +if(p&&q.gao4())return B.ap +p=q.r +if(p==null)p=q.f +s=q.a +r=s.d +return A.abH(p,new A.EY(s.c,r,null))}} +A.cdl.prototype={ +$1(a){var s,r=this.a +r.w=!1 +if(r.c!=null){s=$.i2.n3$ +s===$&&A.b() +s.a3(0,r.ga5u()) +r.C(new A.cdk(r,a))}$.LE.avj()}, +$S:779} +A.cdk.prototype={ +$0(){var s=this.a +s.f=this.b +s.e=!0 +s.d=!1}, +$S:0} +A.it.prototype={ +gw9(a){return!0}, +m(){var s=this,r=s.c +if(r!=null)r.bkw(s) +s.f4() +s.a=!0}} +A.pr.prototype={ +a9z(a){}, +oC(a,b){var s,r,q=this,p=q.eb$ +p=p==null?null:J.vj(p.gxX(),b) +s=p===!0 +r=s?a.uw(J.aS(q.eb$.gxX(),b)):a.yB() +if(a.b==null){a.b=b +a.c=q +p=new A.bC7(q,a) +a.a3(0,p) +q.jX$.n(0,a,p)}a.abc(r) +if(!s&&a.gw9(a)&&q.eb$!=null)q.a6E(a)}, +w5(){var s,r,q=this +if(q.ke$!=null){s=q.eb$ +s=s==null?null:s.e +s=s==q.gkh()||q.gt5()}else s=!0 +if(s)return +r=q.eb$ +if(q.tR(q.ke$,!1))if(r!=null)r.m()}, +gt5(){var s,r,q=this +if(q.hH$)return!0 +if(q.gkh()==null)return!1 +s=q.c +s.toString +r=A.wD(s) +if(r!=q.ke$){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}, +tR(a,b){var s,r,q=this +if(q.gkh()==null||a==null)return q.arP(null,b) +if(b||q.eb$==null){s=q.gkh() +s.toString +return q.arP(a.bq9(s,q),b)}s=q.eb$ +s.toString +r=q.gkh() +r.toString +s.bFM(r) +r=q.eb$ +r.toString +a.lB(r) +return!1}, +arP(a,b){var s,r=this,q=r.eb$ +if(a==q)return!1 +r.eb$=a +if(!b){if(a!=null){s=r.jX$ +new A.bR(s,A.z(s).h("bR<1>")).aE(0,r.gbkQ())}r.a9z(q)}return!0}, +a6E(a){var s,r=a.gw9(a),q=this.eb$ +if(r){if(q!=null){r=a.b +r.toString +s=a.v_() +if(!J.q(J.aS(q.gxX(),r),s)||!J.vj(q.gxX(),r)){J.id(q.gxX(),r,s) +q.EH()}}}else if(q!=null){r=a.b +r.toString +q.bFH(0,r,t.K)}}, +bkw(a){var s=this.jX$.F(0,a) +s.toString +a.O(0,s) +a.c=a.b=null}} +A.bC7.prototype={ +$0(){var s=this.a +if(s.eb$==null)return +s.a6E(this.b)}, +$S:0} +A.cnW.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.b0C.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.cnW()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.ap()}} +A.cV.prototype={ +sj(a,b){var s,r=this +if(!J.q(b,r.y)){s=r.y +r.y=b +r.G6(s)}}, +abc(a){this.y=a}} +A.qY.prototype={ +yB(){return this.cy}, +G6(a){this.ab()}, +uw(a){return A.z(this).h("qY.T").a(a)}, +v_(){var s=this.y +return s==null?A.z(this).h("cV.T").a(s):s}} +A.ahX.prototype={ +uw(a){return this.aSh(a)}, +v_(){var s=this.aSi() +s.toString +return s}} +A.a8u.prototype={} +A.LI.prototype={} +A.a8v.prototype={} +A.aDy.prototype={ +yB(){return this.cy}, +G6(a){this.ab()}, +uw(a){return a!=null?A.vF(A.bZ(a),!1):null}, +v_(){var s=this.y +if(s==null)s=A.z(this).h("cV.T").a(s) +return s==null?null:s.a}} +A.cnX.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.ot.prototype={ +gfh(){return this.b}} +A.Uw.prototype={ +J(){return new A.Yq(new A.aVz($.ae()),null,A.N(t.yb,t.O),null,!0,null,B.f,this.$ti.h("Yq<1>"))}} +A.bCv.prototype={ +H(){return"RouteInformationReportingType."+this.b}} +A.Yq.prototype={ +gkh(){return this.a.r}, +a8(){var s,r=this +r.an() +s=r.a.c +if(s!=null)s.a3(0,r.gS7()) +r.a.f.UI(r.ga3n()) +r.a.e.a3(0,r.ga3E())}, +lk(a,b){var s,r,q=this,p=q.f +q.oC(p,"route") +s=p.y +r=s==null +if((r?A.z(p).h("cV.T").a(s):s)!=null){p=r?A.z(p).h("cV.T").a(s):s +p.toString +q.Tb(p,new A.cdE(q))}else{p=q.a.c +if(p!=null)q.Tb(p.gj(p),new A.cdF(q))}}, +bgS(){var s=this +if(s.w||s.a.c==null)return +s.w=!0 +$.cW.xr$.push(s.gbfR())}, +bfS(a){var s,r,q,p=this +if(p.c==null)return +p.w=!1 +s=p.f +r=s.y +q=r==null +if((q?A.z(s).h("cV.T").a(r):r)!=null){s=q?A.z(s).h("cV.T").a(r):r +s.toString +r=p.a.c +r.toString +q=p.e +q.toString +r.bGw(s,q)}p.e=B.X8}, +bgd(){var s=this.a,r=s.e.d +s=s.d +return s==null?null:s.bGk(r)}, +SJ(){var s=this +s.f.sj(0,s.bgd()) +if(s.e==null)s.e=B.X8 +s.bgS()}, +c5(){var s,r=this +r.r=!0 +r.aU_() +s=r.a.c +if(s!=null&&r.r)r.Tb(s.gj(s),new A.cdD(r)) +r.r=!1 +r.SJ()}, +b1(a){var s,r,q,p=this +p.aU0(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.S() +if(!q){s=r==null +if(!s)r.O(0,p.gS7()) +q=p.a.c +if(q!=null)q.a3(0,p.gS7()) +s=s?null:r.gj(r) +r=p.a.c +if(s!=(r==null?null:r.gj(r)))p.ana()}s=a.f +if(p.a.f!==s){r=p.ga3n() +s.Zj(r) +p.a.f.UI(r)}s=a.e +if(p.a.e!==s){r=p.ga3E() +s.O(0,r) +p.a.e.a3(0,r) +p.SJ()}}, +m(){var s,r=this +r.f.m() +s=r.a.c +if(s!=null)s.O(0,r.gS7()) +r.a.f.Zj(r.ga3n()) +r.a.e.O(0,r.ga3E()) +r.d=null +r.aU1()}, +Tb(a,b){var s,r,q=this +q.r=!1 +q.d=new A.S() +s=q.a.d +s.toString +r=q.c +r.toString +s.bDy(a,r).bf(q.beC(q.d,b),t.H)}, +beC(a,b){return new A.cdB(this,a,b)}, +ana(){var s,r=this +r.r=!0 +s=r.a.c +r.Tb(s.gj(s),new A.cdy(r))}, +b3_(){var s=this +s.d=new A.S() +return s.a.e.acP().bf(s.b5Q(s.d),t.y)}, +b5Q(a){return new A.cdz(this,a)}, +ar3(){this.C(new A.cdC()) +this.SJ() +return new A.dc(null,t.b5)}, +b5R(){this.C(new A.cdA()) +this.SJ()}, +q(a){var s=this.eb$,r=this.a,q=r.c,p=r.f,o=r.d +r=r.e +return A.abH(s,new A.aVN(q,p,o,r,this,new A.e_(r.ga7B(),null),null))}} +A.cdE.prototype={ +$0(){return this.a.a.e.gaLq()}, +$S(){return this.a.$ti.h("a8<~>(1)()")}} +A.cdF.prototype={ +$0(){return this.a.a.e.gaL0()}, +$S(){return this.a.$ti.h("a8<~>(1)()")}} +A.cdD.prototype={ +$0(){return this.a.a.e.gafJ()}, +$S(){return this.a.$ti.h("a8<~>(1)()")}} +A.cdB.prototype={ +$1(a){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(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.i(p.c.$0().$1(a),$async$$1) +case 3:if(o.d==n)o.ar3() +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S(){return this.a.$ti.h("a8<~>(1)")}} +A.cdy.prototype={ +$0(){return this.a.a.e.gafJ()}, +$S(){return this.a.$ti.h("a8<~>(1)()")}} +A.cdz.prototype={ +$1(a){var s=this.a +if(this.b!=s.d)return new A.dc(!0,t.d9) +s.ar3() +return new A.dc(a,t.d9)}, +$S:781} +A.cdC.prototype={ +$0(){}, +$S:0} +A.cdA.prototype={ +$0(){}, +$S:0} +A.aVN.prototype={ +ed(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.tf.prototype={ +gaAt(){return this.a.a.length!==0}, +UI(a){var s=this.a +s.b=!0 +s.a.push(a) +return null}, +Zj(a){return this.a.F(0,a)}, +abk(a){var s,r,q,p=this.a +if(p.a.length===0)return a +try{p=p.aMq(0) +return p}catch(q){s=A.ag(q) +r=A.aD(q) +p=A.cJ("while invoking the callback for "+A.I(this).k(0)) +A.fs(new A.dl(s,r,"widget library",p,new A.bTS(this),!1)) +return a}}} +A.bTS.prototype={ +$0(){var s=null,r=this.a +return A.a([A.p8("The "+A.I(r).k(0)+" that invoked the callback was",r,!0,B.cM,s,!1,s,s,B.c0,s,!1,!0,!0,B.dn,s,A.z(r).h("tf"))],t.qe)}, +$S:39} +A.any.prototype={ +gTx(a){var s,r=this.b +if(r===$){s=t.uF.a(A.b9(t.Ox)) +r!==$&&A.a_() +this.b=s +r=s}return r}, +abk(a){var s,r,q,p=this,o={} +if(p.gTx(0).a!==0){s=p.gTx(0) +r=A.R(s,!0,A.z(s).h("cZ.E")) +q=r.length-1 +o.a=q +return r[q].bBz(a).bf(new A.b5p(o,p,r,a),t.y)}return p.ahD(a)}} +A.b5p.prototype={ +$1(a){var s,r,q,p=this +if(a)return new A.dc(!0,t.d9) +s=p.a +r=s.a +if(r>0){q=r-1 +s.a=q +return p.c[q].bBz(p.d).bf(p,t.y)}return p.b.ahD(p.d)}, +$S:782} +A.aDE.prototype={ +UI(a){var s=this +if(!(A.tf.prototype.gaAt.call(s)||s.gTx(0).a!==0))$.an.aT$.push(s) +s.aRv(a)}, +Zj(a){var s=this +s.aRw(a) +if(!(A.tf.prototype.gaAt.call(s)||s.gTx(0).a!==0))B.b.F($.an.aT$,s)}, +Mw(){return this.abk(A.dm(!1,t.y))}} +A.aDM.prototype={} +A.Ux.prototype={ +aL1(a){return this.a0f(a)}, +aLr(a){return this.a0f(a)}} +A.aDN.prototype={} +A.aVz.prototype={ +yB(){return null}, +G6(a){this.ab()}, +uw(a){var s,r +if(a==null)return null +t.Dn.a(a) +s=J.cz(a) +r=A.bw(s.ga2(a)) +if(r==null)return null +return new A.ot(A.di(r,0,null),s.gP(a))}, +v_(){var s,r=this,q=r.y,p=q==null +if((p?A.z(r).h("cV.T").a(q):q)==null)q=null +else{q=(p?A.z(r).h("cV.T").a(q):q).gfh().k(0) +s=r.y +q=[q,(s==null?A.z(r).h("cV.T").a(s):s).c]}return q}} +A.aVG.prototype={} +A.Z5.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.cnX()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.ap()}} +A.Ta.prototype={ +gYK(){return this.f}, +zr(){var s,r=this,q=A.rK(r.gaWU(),!1,!1,!1) +r.p4=q +s=r.grP() +s=A.rK(r.gaWW(),r.guK(),s,!1) +r.RG=s +B.b.L(r.f,A.a([q,s],t.wi)) +r.aQh()}, +ue(a){var s,r=this +r.aQc(a) +s=r.ay.Q +s===$&&A.b() +if(s===B.a6&&!r.at)r.a.azD(r) +return!0}, +m(){var s,r,q +for(s=this.f,r=s.length,q=0;q"))}} +A.mI.prototype={ +a8(){var s,r,q=this +q.an() +s=A.a([],t.Eo) +r=q.a.c.k2 +if(r!=null)s.push(r) +r=q.a.c.k3 +if(r!=null)s.push(r) +q.e=new A.B9(s)}, +b1(a){this.bc(a) +this.atI()}, +c5(){this.dH() +this.d=null +this.atI()}, +atI(){var s,r,q=this.a.c,p=q.id +p=p!=null?p:q.a.a.z +s=this.f +s.dy=p +if(q.guA()){this.a.c.a.a.toString +r=!0}else r=!1 +if(r){r=q.a.y.gjl() +if(r!=null)r.Qg(s)}}, +b1o(){this.C(new A.c7o(this))}, +m(){this.f.m() +this.r.m() +this.ap()}, +garZ(){var s=this.a.c.k2 +if((s==null?null:s.gbM(0))!==B.bs){s=this.a.c.a +s=s==null?null:s.cx.a +s=s===!0}else s=!0 +return s}, +q(a){var s,r,q=this,p=null,o=q.a.c,n=o.guA(),m=q.a.c +if(!m.gGD()){m=m.kO$ +m=m!=null&&m.length!==0}else m=!0 +s=q.a.c +s=s.gGD()||s.pk$>0 +r=q.a.c +return A.hC(o.c,new A.c7s(q),new A.agd(n,m,s,o,new A.Eo(r.k1,new A.Tf(new A.e_(new A.c7t(q),p),r.p3,p),p),p))}} +A.c7o.prototype={ +$0(){this.a.d=null}, +$S:0} +A.c7s.prototype={ +$2(a,b){var s=this.a.a.c.c.a +b.toString +return new A.EY(b,s,null)}, +$S:784} +A.c7t.prototype={ +$1(a){var s,r=null,q=A.a1([B.m8,new A.aNB(a,new A.bN(A.a([],t.h),t.b))],t.u,t.od),p=this.a,o=p.a.c.guA(),n=p.e +n===$&&A.b() +s=p.d +if(s==null)s=p.d=new A.iU(new A.e_(new A.c7q(p),r),p.a.c.p2) +return A.ts(q,A.cyz(B.XN,A.aue(!1,new A.iU(A.hC(n,new A.c7r(p),s),r),r,r,p.f,r,!o),p.r))}, +$S:785} +A.c7r.prototype={ +$2(a,b){var s,r,q=this.a,p=q.a.c,o=p.k2 +o.toString +s=p.k3 +s.toString +r=p.a +r=r==null?null:r.cx +if(r==null)r=new A.bm(!1,$.ae(),t.uh) +return p.ym(a,o,s,A.hC(r,new A.c7p(q),b))}, +$S:55} +A.c7p.prototype={ +$2(a,b){var s=this.a,r=s.garZ() +s.f.shP(!r) +return A.n6(b,r,null)}, +$S:786} +A.c7q.prototype={ +$1(a){var s,r=this.a.a.c,q=r.k2 +q.toString +s=r.k3 +s.toString +return r.rj(a,q,s)}, +$S:8} +A.iA.prototype={ +C(a){var s,r=this.p1 +if(r.gam()!=null){r=r.gam() +if(r.a.c.guA())if(!r.garZ()){r.a.c.a.a.toString +s=!0}else s=!1 +else s=!1 +if(s){s=r.a.c.a.y.gjl() +if(s!=null)s.Qg(r.f)}r.C(a)}else a.$0()}, +ym(a,b,c,d){return d}, +zr(){var s=this +s.aR8() +s.k2=A.ms(A.hw.prototype.gi1.call(s,0)) +s.k3=A.ms(A.hw.prototype.gafn.call(s))}, +Mx(){var s,r=this,q=r.p1 +if(q.gam()!=null){r.a.a.toString +s=!0}else s=!1 +if(s){s=r.a.y.gjl() +if(s!=null)s.Qg(q.gam().f)}return r.aR7()}, +Mt(){var s,r=this,q=r.p1 +if(q.gam()!=null){r.a.a.toString +s=!0}else s=!1 +if(s){s=r.a.y.gjl() +if(s!=null)s.Qg(q.gam().f)}r.aR3()}, +gQ8(){return!0}, +sYh(a){var s,r=this +if(r.k1===a)return +r.C(new A.bts(r,a)) +s=r.k2 +s.toString +s.sbR(0,r.k1?B.iG:A.hw.prototype.gi1.call(r,0)) +s=r.k3 +s.toString +s.sbR(0,r.k1?B.bO:A.hw.prototype.gafn.call(r)) +r.u6()}, +qN(){var s=0,r=A.p(t.oj),q,p=this,o,n,m +var $async$qN=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.p1.gam() +o=A.R(p.k4,!0,t.Ev),n=o.length,m=0 +case 3:if(!(m>>24&255)!==0&&!l.k1}else s=!1 +if(s){s=l.k2 +s.toString +r=l.gq9() +r=A.Y(0,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255) +q=l.gq9() +p=t.IC.h("eb") +t.o.a(s) +o=l.gu0() +n=l.gu1() +m=A.cEM(l.gQ8(),k,new A.aB(s,new A.eb(new A.eA(B.az),new A.fp(r,q),p),p.h("aB")),o,n,k)}else{s=l.gu0() +r=l.gu1() +m=A.btl(l.gQ8(),k,k,s,k,r,k)}return m}, +aWX(a){var s=this,r=null,q=s.R8 +if(q==null)q=s.R8=new A.bX(A.ci(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,B.wK,r,r,r,r,r,r),!1,!1,!1,!1,new A.XT(s,s.p1,A.z(s).h("XT<1>")),r) +return q}, +k(a){return"ModalRoute("+this.b.k(0)+", animation: "+A.r(this.ax)+")"}} +A.bts.prototype={ +$0(){this.a.k1=this.b}, +$S:0} +A.btt.prototype={ +$1(a){var s=a.e +s===$&&A.b() +return s.a}, +$S:787} +A.btq.prototype={ +$1(a){var s=this.a.p2,r=$.an.U$.z.i(0,s) +r=r==null?null:r.e!=null +if(r!==!0)return +s=$.an.U$.z.i(0,s) +if(s!=null)s.jj(this.b)}, +$S:5} +A.btr.prototype={ +$0(){}, +$S:0} +A.a7e.prototype={ +guK(){return!1}, +grP(){return!0}} +A.U_.prototype={ +gu0(){return this.aS}, +gu1(){return this.cZ}, +gq9(){return this.en}, +gv0(a){return this.eY}, +rj(a,b,c){var s=null,r=this.ac.$3(a,b,c) +return new A.bX(A.ci(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,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,new A.Qv(this.jY,r,s),s)}, +ym(a,b,c,d){return this.i9.$4(a,b,c,d)}} +A.NR.prototype={ +qN(){var s=0,r=A.p(t.oj),q,p=this,o +var $async$qN=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.kO$ +if(o!=null&&o.length!==0){q=B.pU +s=1 +break}q=p.aQi() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qN,r)}, +gzN(){var s=this.kO$ +if(s!=null&&s.length!==0)return B.pU +return A.dG.prototype.gzN.call(this)}, +ue(a){var s,r,q=this,p=q.kO$ +if(p!=null&&p.length!==0){s=p.pop() +s.b=null +s.bJ9() +r=s.c&&--q.pk$===0 +if(q.kO$.length===0||r)q.u6() +return!1}q.aR5(a) +return!0}} +A.iX.prototype={ +q(a){var s,r,q,p,o,n,m=this,l=A.bC(a,B.cV,t.l).w.r,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.aA(new A.af(j,r,p,Math.max(n,i.d)),A.azi(m.x,a,o,k,q,s),null)}} +A.ov.prototype={ +gdW(){return this.a}, +Zp(){}, +a9C(a,b){if(b!=null)b.jj(new A.UJ(null,a,b,0))}, +ayJ(a,b,c){b.jj(A.cyS(b,null,null,a,c))}, +Wc(a,b,c){b.jj(new A.u9(null,c,0,a,b,0))}, +a9B(a,b){b.jj(new A.wG(null,a,b,0))}, +q7(){}, +m(){this.b=!0}, +k(a){return"#"+A.bq(this)}} +A.n5.prototype={ +q7(){this.a.kC(0)}, +gpP(){return!1}, +gps(){return!1}, +geC(){return 0}} +A.Jh.prototype={ +gpP(){return!1}, +gps(){return!1}, +geC(){return 0}, +ao(a){this.a.kC(0)}, +m(){var s=this.c +if(s!=null)s.$0() +this.QU()}} +A.bDM.prototype={ +aVY(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.iM(a)}else return 0}}}, +cI(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.aVY(s,q) +if(p===0)return +if(A.Zg(o.a.giO()))p=-p +o.a.V3(p)}, +qn(a,b){var s,r,q,p=this,o=b.b +o.toString +s=-o +if(A.Zg(p.a.giO()))s=-s +p.x=b +if(p.f){o=J.iM(s) +r=p.c +r.toString +q=Math.abs(s)>Math.abs(r)*0.5 +if(o===J.iM(r)&&q)s+=r}p.a.kC(s)}, +ao(a){this.a.kC(0)}, +m(){this.x=null +this.b.$0()}, +k(a){return"#"+A.bq(this)}} +A.Io.prototype={ +a9C(a,b){var s=t.uL.a(this.c.x) +if(b!=null)b.jj(new A.UJ(s,a,b,0))}, +ayJ(a,b,c){b.jj(A.cyS(b,null,t.zk.a(this.c.x),a,c))}, +Wc(a,b,c){b.jj(new A.u9(t.zk.a(this.c.x),c,0,a,b,0))}, +a9B(a,b){var s=this.c.x +b.jj(new A.wG(s instanceof A.mY?s:null,a,b,0))}, +gpP(){var s=this.c +return(s==null?null:s.w)!==B.cH}, +gps(){return!0}, +geC(){return 0}, +m(){this.c=null +this.QU()}, +k(a){return"#"+A.bq(this)+"("+A.r(this.c)+")"}} +A.OX.prototype={ +a18(a,b,c,d){var s,r=A.b3O(null,0,c) +r.cY() +s=r.em$ +s.b=!0 +s.a.push(this.ga6e()) +r.yf(b).a.a.j6(this.ga5K()) +this.c=r}, +Zp(){var s=this.gdW(),r=this.c +r===$&&A.b() +s.kC(r.geC())}, +q7(){var s=this.gdW(),r=this.c +r===$&&A.b() +s.kC(r.geC())}, +a6f(){var s=this.c +s===$&&A.b() +s=s.x +s===$&&A.b() +if(!this.V1(s))this.gdW().PV()}, +V1(a){return Math.abs(this.gdW().Am(a))<1e-10}, +a5L(){if(!this.b)this.gdW().kC(0)}, +Wc(a,b,c){var s=this.c +s===$&&A.b() +b.jj(new A.u9(null,c,s.geC(),a,b,0))}, +gps(){return!0}, +geC(){var s=this.c +s===$&&A.b() +return s.geC()}, +m(){var s=this.c +s===$&&A.b() +s.m() +this.QU()}, +k(a){var s=A.bq(this),r=this.c +r===$&&A.b() +return"#"+s+"("+r.k(0)+")"}, +gpP(){return this.d}} +A.QB.prototype={ +a6f(){var s=this.a,r=this.d +r===$&&A.b() +r=r.x +r===$&&A.b() +if(s.Am(r)!==0)this.a.PV()}, +a5L(){var s,r +if(!this.b){s=this.a +r=this.d +r===$&&A.b() +s.kC(r.geC())}}, +Wc(a,b,c){var s=this.d +s===$&&A.b() +b.jj(new A.u9(null,c,s.geC(),a,b,0))}, +gpP(){return!0}, +gps(){return!0}, +geC(){var s=this.d +s===$&&A.b() +return s.geC()}, +m(){var s=this.c +s===$&&A.b() +s.fw(0) +s=this.d +s===$&&A.b() +s.m() +this.QU()}, +k(a){var s=A.bq(this),r=this.d +r===$&&A.b() +return"#"+s+"("+r.k(0)+")"}} +A.a8V.prototype={ +OG(a,b,c,d){var s,r=this +if(b.a==null){s=$.jo.eG$ +s===$&&A.b() +s=s.aB(0,c)}else s=!0 +if(s){r.b.OG(a,b,c,d) +return}s=r.a +if(s.gdz(0)==null)return +s=s.gdz(0) +s.toString +if(A.dcW(s)){$.cW.IF(new A.bDI(r,a,b,c,d)) +return}r.b.OG(a,b,c,d)}, +CD(a,b){return this.b.CD(a,b)}, +CE(a,b){return this.b.CE(a,b)}, +H9(a){return this.b.H9(a)}} +A.bDI.prototype={ +$1(a){var s=this +A.j8(new A.bDH(s.a,s.b,s.c,s.d,s.e))}, +$S:5} +A.bDH.prototype={ +$0(){var s=this +return s.a.OG(s.b,s.c,s.d,s.e)}, +$S:0} +A.aE1.prototype={ +pd(a,b,c,d,e,f,g){return new A.cne(this,g!==!1,c!==!1,d,e,a,b,f)}, +brz(a){var s=null +return this.pd(a,s,s,s,s,s,s)}, +FQ(a){var s=null +return this.pd(s,s,s,s,s,s,a)}, +axF(a,b,c){var s=null +return this.pd(a,s,b,s,s,s,c)}, +axE(a,b){var s=null +return this.pd(s,s,a,s,s,s,b)}, +axI(a,b,c){var s=null +return this.pd(s,s,a,b,s,s,c)}, +axv(a){var s=null +return this.pd(s,s,a,s,s,s,s)}, +v9(a){return A.bL()}, +gyQ(){return B.XO}, +gH8(){return B.h_}, +gOn(){return A.d9([B.eF,B.f9],t.bd)}, +Vk(a,b,c){var s=null +switch(this.v9(a).a){case 3:case 4:case 5:return A.dc4(b,c.b,B.aA,s,s,A.Zm(),B.w,s,s,s,s,B.fy,s) +case 0:case 1:case 2:return b}}, +Vj(a,b,c){switch(this.v9(a).a){case 2:case 3:case 4:case 5:return b +case 0:case 1:return A.cIy(c.a,b,B.r)}}, +a_5(a){switch(this.v9(a).a){case 2:return new A.bDJ() +case 4:return new A.bDK() +case 0:case 1:case 3:case 5:return new A.bDL()}}, +Ac(a){switch(this.v9(a).a){case 2:return B.a2Q +case 4:return B.a2R +case 0:case 1:case 3:case 5:return B.a6t}}, +a0i(a){return!1}, +k(a){return"ScrollBehavior"}} +A.bDJ.prototype={ +$1(a){return A.d8e(a.gel(a))}, +$S:788} +A.bDK.prototype={ +$1(a){var s=a.gel(a),r=t.av +return new A.Sz(A.aK(20,null,!1,r),s,A.aK(20,null,!1,r))}, +$S:789} +A.bDL.prototype={ +$1(a){return new A.le(a.gel(a),A.aK(20,null,!1,t.av))}, +$S:326} +A.cne.prototype={ +gyQ(){var s=this.f +return s==null?B.XO:s}, +gH8(){var s=this.r +return s==null?B.h_:s}, +gOn(){var s=this.w +return s==null?A.d9([B.eF,B.f9],t.bd):s}, +Vj(a,b,c){if(this.c)return this.a.Vj(a,b,c) +return b}, +Vk(a,b,c){if(this.b)return this.a.Vk(a,b,c) +return b}, +pd(a,b,c,d,e,f,g){var s=this,r=g==null?s.b:g,q=c==null?s.c:c,p=a==null?s.gyQ():a,o=s.gH8(),n=s.gOn(),m=d==null?s.d:d +return s.a.pd(p,o,q,m,s.e,n,r)}, +FQ(a){var s=null +return this.pd(s,s,s,s,s,s,a)}, +axF(a,b,c){var s=null +return this.pd(a,s,b,s,s,s,c)}, +axE(a,b){var s=null +return this.pd(s,s,a,s,s,s,b)}, +axI(a,b,c){var s=null +return this.pd(s,s,a,b,s,s,c)}, +axv(a){var s=null +return this.pd(s,s,a,s,s,s,s)}, +v9(a){var s=this.a.v9(a) +return s}, +Ac(a){var s=this.d +return s==null?this.a.Ac(a):s}, +a0i(a){var s,r=this +if(A.I(a.a)===A.I(r.a))if(a.b===r.b)if(a.c===r.c)if(A.BH(a.gyQ(),r.gyQ()))if(a.gH8()===r.gH8())if(A.BH(a.gOn(),r.gOn()))if(a.d==r.d)s=!1 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +return s}, +a_5(a){return this.a.a_5(a)}, +k(a){return"_WrappedScrollBehavior"}} +A.a8W.prototype={ +ed(a){var s=this.f,r=a.f +if(A.I(s)===A.I(r))s=s!==r&&s.a0i(r) +else s=!0 +return s}} +A.fh.prototype={ +gb8(a){return B.b.gcW(this.f)}, +jv(a,b,c){return this.bmI(a,b,c)}, +bmI(a,b,c){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$jv=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:n=A.a([],t.mo) +for(p=q.f,o=0;o#"+A.bq(this)+"("+B.b.bQ(s,", ")+")"}, +hR(a){var s=this,r=s.e +if(r!=null)a.push(r) +r=s.a +if(r!==0)a.push("initialScrollOffset: "+B.d.aZ(r,1)+", ") +r=s.f.length +if(r===0)a.push("no clients") +else if(r===1){r=s.gb8(s).at +r.toString +a.push("one client, offset "+B.e.aZ(r,1))}else a.push(""+r+" clients")}} +A.Fl.prototype={ +gnM(){return null}, +k(a){var s=A.a([],t.s) +this.hR(s) +return"#"+A.bq(this)+"("+B.b.bQ(s,", ")+")"}, +hR(a){var s,r,q +try{s=this.gnM() +if(s!=null)a.push("estimated child count: "+A.r(s))}catch(q){r=A.ag(q) +a.push("estimated child count: EXCEPTION ("+J.az(r).k(0)+")")}}} +A.Yr.prototype={} +A.pu.prototype={ +azK(a){return null}, +hO(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.ag(o) +q=A.aD(o) +n=new A.dl(r,q,"widgets library",A.cJ("building"),j,!1) +A.fs(n) +s=A.QR(n)}if(s==null)return j +if(s.a!=null){p=s.a +p.toString +m=new A.Yr(p)}else m=j +p=s +s=new A.iU(p,j) +if(k.e){l=k.r.$2(s,b) +if(l!=null)s=new A.Jy(l+k.f,s,j)}if(k.c)s=new A.Hm(new A.YC(s,j),j) +return new A.hI(s,m)}, +gnM(){return this.b}, +IR(a){return!0}} +A.a9P.prototype={ +b18(a){var s,r,q,p=null,o=this.r +if(o==null)return p +if(!o.aB(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.Yr(r):o +if(this.b)s=new A.iU(s,o) +p=A.cQD(s,b) +s=p!=null?new A.Jy(p,s,o):s +return new A.hI(new A.Hm(new A.YC(s,o),o),q)}, +gnM(){return this.f.length}, +IR(a){return this.f!==a.f}} +A.YC.prototype={ +J(){return new A.aiw(null,B.f)}} +A.aiw.prototype={ +gmv(){return this.r}, +bA0(a){return new A.ceu(this,a)}, +Up(a,b){var s,r=this +if(b){s=r.d;(s==null?r.d=A.b9(t.x9):s).B(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.x_()}}, +c5(){var s,r,q,p=this +p.dH() +s=p.c +s.toString +r=A.UO(s) +s=p.f +if(s!=r){if(s!=null){q=p.e +if(q!=null)new A.bR(q,A.z(q).h("bR<1>")).aE(0,s.gwR(s))}p.f=r +if(r!=null){s=p.e +if(s!=null)new A.bR(s,A.z(s).h("bR<1>")).aE(0,r.gl4(r))}}}, +B(a,b){var s,r=this,q=r.bA0(b) +b.a3(0,q) +s=r.e;(s==null?r.e=A.N(t.x9,t.O):s).n(0,b,q) +r.f.B(0,b) +if(b.gj(b).c!==B.eL)r.Up(b,!0)}, +F(a,b){var s=this.e +if(s==null)return +s=s.F(0,b) +s.toString +b.O(0,s) +this.f.F(0,b) +this.Up(b,!1)}, +m(){var s,r,q=this,p=q.e +if(p!=null){for(p=A.jL(p,p.r,A.z(p).c);p.t();){s=p.d +q.f.F(0,s) +r=q.e.i(0,s) +r.toString +s.O(0,r)}q.e=null}q.d=null +q.ap()}, +q(a){var s=this +s.o5(a) +if(s.f==null)return s.a.c +return A.cM0(s.a.c,s)}, +$iFb:1} +A.ceu.prototype={ +$0(){var s=this.b,r=this.a +if(s.gj(s).c!==B.eL)r.Up(s,!0) +else r.Up(s,!1)}, +$S:0} +A.b0K.prototype={ +a8(){this.an() +if(this.r)this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.l8.prototype={ +nJ(){var s=this,r=null,q=s.gab0()?s.glf():r,p=s.gab0()?s.gkR():r,o=s.gaAv()?s.gfL():r,n=s.gaAz()?s.gDl():r,m=s.giO(),l=s.gqi(s) +return new A.a38(q,p,o,n,m,l)}, +gYJ(){var s=this +return s.gfL()s.gkR()}, +gavA(){var s=this +return s.gfL()===s.glf()||s.gfL()===s.gkR()}, +gC9(){var s=this +return s.gDl()-A.Z(s.glf()-s.gfL(),0,s.gDl())-A.Z(s.gfL()-s.gkR(),0,s.gDl())}} +A.a38.prototype={ +glf(){var s=this.a +s.toString +return s}, +gkR(){var s=this.b +s.toString +return s}, +gab0(){return this.a!=null&&this.b!=null}, +gfL(){var s=this.c +s.toString +return s}, +gaAv(){return this.c!=null}, +gDl(){var s=this.d +s.toString +return s}, +gaAz(){return this.d!=null}, +k(a){var s=this +return"FixedScrollMetrics("+B.e.aZ(Math.max(s.gfL()-s.glf(),0),1)+"..["+B.e.aZ(s.gC9(),1)+"].."+B.e.aZ(Math.max(s.gkR()-s.gfL(),0),1)+")"}, +giO(){return this.e}, +gqi(a){return this.f}} +A.aP2.prototype={} +A.nv.prototype={} +A.aHG.prototype={ +aCF(a){if(t.rS.b(a))++a.kN$ +return!1}} +A.ow.prototype={ +hR(a){this.aSA(a) +a.push(this.a.k(0))}} +A.UJ.prototype={ +hR(a){var s +this.Jh(a) +s=this.d +if(s!=null)a.push(s.k(0))}} +A.no.prototype={ +hR(a){var s +this.Jh(a) +a.push("scrollDelta: "+A.r(this.e)) +s=this.d +if(s!=null)a.push(s.k(0))}} +A.u9.prototype={ +hR(a){var s,r=this +r.Jh(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.k(0))}} +A.wG.prototype={ +hR(a){var s +this.Jh(a) +s=this.d +if(s!=null)a.push(s.k(0))}} +A.abK.prototype={ +hR(a){this.Jh(a) +a.push("direction: "+this.d.k(0))}} +A.aig.prototype={ +hR(a){var s,r +this.QP(a) +s=this.kN$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.aif.prototype={ +ed(a){return this.f!==a.f}} +A.Gf.prototype={ +bA_(a,b){return this.a.$1(b)}} +A.a8Y.prototype={ +J(){return new A.a8Z(new A.iz(t.z_),B.f)}} +A.a8Z.prototype={ +O(a,b){var s,r,q=this.d +q.toString +q=A.cOs(q,q.$ti.c) +s=q.$ti.c +for(;q.t();){r=q.c +if(r==null)r=s.a(r) +if(J.q(r.a,b)){q=r.n4$ +q.toString +q.Ui(A.z(r).h("mg.E").a(r)) +return}}}, +arq(a){var s,r,q,p,o,n,m,l,k=this.d +if(k.b===0)return +p=A.R(k,!0,t.Sx) +for(k=p.length,o=0;oA.Nj(c).grX().gaBZ() +return s.aEp(a,b,c)}, +Bu(a,b){var s=this.a +if(s==null)return 0 +return s.Bu(a,b)}, +UV(a,b,c,d){var s=this.a +if(s==null){s=b.c +s.toString +return s}return s.UV(a,b,c,d)}, +ro(a,b){var s=this.a +if(s==null)return null +return s.ro(a,b)}, +gAr(){var s=this.a +s=s==null?null:s.gAr() +return s==null?$.cXR():s}, +t6(a){var s=this.a +s=s==null?null:s.t6(a) +if(s==null){s=a.gqi(a) +s=new A.W6(1/a.gqi(a),1/(0.05*s))}return s}, +gac2(){var s=this.a +s=s==null?null:s.gac2() +return s==null?18:s}, +gYb(){var s=this.a +s=s==null?null:s.gYb() +return s==null?50:s}, +gNQ(){var s=this.a +s=s==null?null:s.gNQ() +return s==null?8000:s}, +a83(a){var s=this.a +if(s==null)return 0 +return s.a83(a)}, +ga9M(){var s=this.a +return s==null?null:s.ga9M()}, +gvO(){return!0}, +gavk(){return!0}, +k(a){var s=this.a +if(s==null)return"ScrollPhysics" +return"ScrollPhysics -> "+s.k(0)}} +A.aCn.prototype={ +q8(a){return new A.aCn(this.qa(a))}, +UV(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.aA2((o-Math.abs(b))/s)}else{s.toString +m=this.aA2(o/s)}l=J.iM(b) +if(n&&this.b===B.Xe)return l*Math.abs(b) +return l*A.d2g(o,Math.abs(b),m)}, +Bu(a,b){return 0}, +ro(a,b){var s,r,q,p,o,n,m,l=this.t6(a) +if(Math.abs(b)>=l.c||a.gYJ()){switch(this.b.a){case 1:s=1400 +break +case 0:s=0 +break +default:s=null}r=this.gAr() +q=a.gfL() +p=a.glf() +o=a.gkR() +n=new A.b6G(p,o,r,l) +if(qo){n.f=new A.F8(o,A.Gu(r,q-o,b),B.dC) +n.r=-1/0}else{q=n.e=A.aux(0.135,q,b,s,B.dC) +m=q.gGy() +if(b>0&&m>o){p=q.aFp(o) +n.r=p +n.f=new A.F8(o,A.Gu(r,o-o,Math.min(q.md(0,p),5000)),B.dC)}else if(b<0&&ma.gkR()?a.gkR():p +if(a.gfL()0&&a.gfL()>=a.gkR())return p +if(b<0&&a.gfL()<=a.glf())return p +return A.cFO(a.gfL(),o,b)}} +A.amV.prototype={ +q8(a){return new A.amV(this.qa(a))}, +r_(a){return!0}} +A.a6g.prototype={ +q8(a){return new A.a6g(this.qa(a))}, +gavk(){return!1}, +gvO(){return!1}} +A.LV.prototype={ +H(){return"ScrollPositionAlignmentPolicy."+this.b}} +A.nn.prototype={ +xz(a,b,c,d,e){if(d!=null)this.tV(d) +this.Zs()}, +glf(){var s=this.z +s.toString +return s}, +gkR(){var s=this.Q +s.toString +return s}, +gab0(){return this.z!=null&&this.Q!=null}, +gfL(){var s=this.at +s.toString +return s}, +gaAv(){return this.at!=null}, +gDl(){var s=this.ax +s.toString +return s}, +gaAz(){return this.ax!=null}, +tV(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.I(a)!==A.I(s))s.fr.Zp() +s.w.afD(s.fr.gpP()) +s.dy.sj(0,s.fr.gps())}, +gqi(a){var s=this.w.f +s===$&&A.b() +return s}, +Am(a){var s,r,q=this,p=q.at +p.toString +if(a!==p){s=q.r.Bu(q,a) +p=q.at +p.toString +r=a-s +q.at=r +if(r!==p){q.a6I() +q.tt() +r=q.at +r.toString +q.C_(r-p)}if(Math.abs(s)>1e-10){q.ayD(s) +return s}}return 0}, +FV(a){this.at=a}, +FU(a){var s=this.at +s.toString +this.at=s+a +this.ch=!0}, +wj(a){var s=this,r=s.at +r.toString +s.as=a-r +s.at=a +s.a6I() +s.tt() +$.cW.xr$.push(new A.bDQ(s))}, +PW(){var s,r=this.w,q=r.c +q.toString +q=A.bwb(q) +if(q!=null){r=r.c +r.toString +s=this.at +s.toString +q.aH2(r,s)}}, +Zs(){var s,r,q +if(this.at==null){s=this.w +r=s.c +r.toString +r=A.bwb(r) +if(r==null)q=null +else{s=s.c +s.toString +q=r.aEj(s)}if(q!=null)this.FV(q)}}, +aF7(a,b){if(b)this.FV(a) +else this.hV(a)}, +a_X(){var s=this.at +s.toString +this.w.r.sj(0,s) +s=$.i2.n3$ +s===$&&A.b() +s.azS()}, +vQ(a){if(this.ax!==a){this.ax=a +this.ch=!0}return!0}, +ri(a,b){var s,r,q,p=this +if(!A.am4(p.z,a,0.001)||!A.am4(p.Q,b,0.001)||p.ch||p.db!==A.cO(p.giO())){p.z=a +p.Q=b +p.db=A.cO(p.giO()) +s=p.ay?p.nJ():null +p.ch=!1 +p.CW=!0 +if(p.ay){r=p.cx +r.toString +s.toString +r=!p.bsJ(r,s)}else r=!1 +if(r)return!1 +p.ay=!0}if(p.CW){p.q7() +p.CW=!1}s=p.nJ() +if(p.cx!=null){r=Math.max(s.gfL()-s.glf(),0) +q=p.cx +if(r===Math.max(q.gfL()-q.glf(),0))if(s.gC9()===p.cx.gC9()){r=Math.max(s.gkR()-s.gfL(),0) +q=p.cx +r=r===Math.max(q.gkR()-q.gfL(),0)&&s.e===p.cx.e}else r=!1 +else r=!1 +r=!r}else r=!0 +if(r){if(!p.cy){A.j8(p.gbtX()) +p.cy=!0}p.cx=p.nJ()}return!0}, +bsJ(a,b){var s=this,r=s.r.UV(s.fr.gps(),b,a,s.fr.geC()),q=s.at +q.toString +if(r!==q){s.FV(r) +return!1}return!0}, +q7(){this.fr.q7() +this.a6I()}, +a6I(){var s,r,q,p,o,n=this +switch(n.giO().a){case 0:s=B.lN +r=B.lM +break +case 1:s=B.lO +r=B.lP +break +case 2:s=B.lM +r=B.lN +break +case 3:s=B.lP +r=B.lO +break +default:s=null +r=null}q=A.b9(t._S) +p=n.at +p.toString +o=n.z +o.toString +if(p>o)q.B(0,r) +p=n.at +p.toString +o=n.Q +o.toString +if(pn)k=n +break +default:k=null}n=p.at +n.toString +if(k===n){s=1 +break}if(e.a===B.w.a){p.hV(k) +s=1 +break}q=p.jv(k,d,e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$C6,r)}, +NX(a,b,c,d){var s,r=this.z +r.toString +s=this.Q +s.toString +b=A.Z(b,r,s) +return this.aRf(0,b,c,d)}, +kc(a){var s,r,q=this,p=q.fr +if(p!=null){s=p.gpP() +r=q.fr.gps() +if(r&&!a.gps())q.Mv() +q.fr.m()}else{r=!1 +s=!1}q.fr=a +if(s!==a.gpP())q.w.afD(q.fr.gpP()) +q.dy.sj(0,q.fr.gps()) +if(!r&&q.fr.gps())q.My()}, +My(){var s=this.fr +s.toString +s.a9C(this.nJ(),$.an.U$.z.i(0,this.w.Q))}, +C_(a){var s,r,q=this.fr +q.toString +s=this.nJ() +r=$.an.U$.z.i(0,this.w.Q) +r.toString +q.ayJ(s,r,a)}, +Mv(){var s,r,q=this,p=q.fr +p.toString +s=q.nJ() +r=$.an.U$.z.i(0,q.w.Q) +r.toString +p.a9B(s,r) +q.a_X() +q.PW()}, +ayD(a){var s,r,q=this.fr +q.toString +s=this.nJ() +r=$.an.U$.z.i(0,this.w.Q) +r.toString +q.Wc(s,r,a)}, +ayE(a){var s=this.nJ(),r=this.w.Q,q=$.an.U$.z.i(0,r) +q.toString +r=$.an.U$.z.i(0,r) +if(r!=null)r.jj(new A.abK(a,s,q,0))}, +btY(){var s,r,q +this.cy=!1 +s=this.w.Q +if($.an.U$.z.i(0,s)!=null){r=this.nJ() +q=$.an.U$.z.i(0,s) +q.toString +s=$.an.U$.z.i(0,s) +if(s!=null)s.jj(new A.LU(r,q,0))}}, +m(){var s=this,r=s.fr +if(r!=null)r.m() +s.fr=null +r=s.dy +r.k3$=$.ae() +r.k2$=0 +s.f4()}, +hR(a){var s,r=this,q=r.y +if(q!=null)a.push(q) +r.aRe(a) +q=r.z +q=q==null?null:B.e.aZ(q,1) +s=r.Q +s=s==null?null:B.e.aZ(s,1) +a.push("range: "+A.r(q)+".."+A.r(s)) +s=r.ax +a.push("viewport: "+A.r(s==null?null:B.e.aZ(s,1)))}} +A.bDQ.prototype={ +$1(a){this.a.as=0}, +$S:5} +A.LU.prototype={ +avw(){return A.cyS(this.b,this.kN$,null,this.a,null)}, +hR(a){this.aSz(a) +a.push(this.a.k(0))}} +A.aie.prototype={ +hR(a){var s,r +this.QP(a) +s=this.kN$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.aW_.prototype={} +A.F7.prototype={ +Ay(a,b,c,d,e,f){var s=this +if(s.at==null&&c!=null)s.FV(c) +if(s.fr==null)s.kc(new A.n5(s))}, +giO(){return this.w.a.c}, +Am(a){return this.aQy(a)}, +tV(a){var s,r=this +r.ahs(a) +if(!(a instanceof A.F7)){r.kc(new A.n5(r)) +return}r.fr.a=r +r.k4=a.k4 +s=a.ok +if(s!=null){r.ok=s +s.a=r +a.ok=null}}, +q7(){var s=this +s.ahu() +s.w.Qe(s.r.r_(s))}, +kc(a){var s,r=this +r.k3=0 +r.aQq(a) +s=r.ok +if(s!=null)s.m() +r.ok=null +if(!r.fr.gps())r.A0(B.dB)}, +V3(a){var s,r=this +r.A0(a>0?B.fg:B.ia) +s=r.at +s.toString +r.Am(s-r.r.V2(r,a))}, +PV(){this.kc(new A.n5(this))}, +kC(a){var s,r=this,q=r.r.ro(r,a) +if(q!=null){s=r.fr +s=s==null?null:s.gpP() +r.kc(A.cF3(r,q,r.w,s!==!1))}else r.kc(new A.n5(r))}, +gDk(){return this.k4}, +A0(a){if(this.k4===a)return +this.k4=a +this.ayE(a)}, +jv(a,b,c){var s,r=this,q=r.at +q.toString +if(A.am4(a,q,r.r.t6(r).a)){r.hV(a) +return A.dm(null,t.H)}q=r.at +q.toString +s=A.cHG(r,b,c,q,a,r.w) +r.kc(s) +q=s.c +q===$&&A.b() +return q.a}, +hV(a){var s,r,q=this +q.kc(new A.n5(q)) +s=q.at +s.toString +if(s!==a){q.wj(a) +q.My() +r=q.at +r.toString +q.C_(r-s) +q.Mv()}q.kC(0)}, +Hq(a){var s,r,q,p,o=this +if(a===0){o.kC(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.kc(new A.n5(o)) +o.A0(-a>0?B.fg:B.ia) +s=o.at +s.toString +o.dy.sj(0,!0) +o.wj(p) +o.My() +r=o.at +r.toString +o.C_(r-s) +o.Mv() +o.kC(0)}}, +GJ(a){var s=this,r=s.fr.geC(),q=new A.Jh(a,s) +s.kc(q) +s.k3=r +return q}, +Gd(a,b){var s=this,r=s.r,q=A.cLY(r.a83(s.k3),s,a,r.ga9M(),b) +s.kc(new A.Io(q,s)) +return s.ok=q}, +m(){var s=this.ok +if(s!=null)s.m() +this.ok=null +this.aQu()}, +hR(a){var s=this +s.aQt(a) +a.push(A.I(s.w).k(0)) +a.push(s.r.k(0)) +a.push(A.r(s.fr)) +a.push(s.k4.k(0))}} +A.b6G.prototype={ +a5X(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}, +jN(a,b){return this.a5X(b).jN(0,b-this.w)}, +md(a,b){return this.a5X(b).md(0,b-this.w)}, +wq(a){return this.a5X(a).wq(a-this.w)}, +k(a){return"BouncingScrollSimulation(leadingExtent: "+A.r(this.b)+", trailingExtent: "+A.r(this.c)+")"}} +A.b9l.prototype={ +jN(a,b){var s,r=this.e +r===$&&A.b() +s=A.Z(b/r,0,1) +r=this.f +r===$&&A.b() +return this.b+r*(1-Math.pow(1-s,$.cuf()))}, +md(a,b){var s=this.e +s===$&&A.b() +return this.c*Math.pow(1-A.Z(b/s,0,1),$.cuf()-1)}, +wq(a){var s=this.e +s===$&&A.b() +return a>=s}} +A.aE6.prototype={ +H(){return"ScrollViewKeyboardDismissBehavior."+this.b}} +A.aE5.prototype={ +awx(a,b,c,d){var s=this +if(s.x)return new A.aEw(c,b,s.ch,d,null) +return A.cNI(s.z,c,s.Q,B.kn,s.y,s.ch,null,null,b,d)}, +q(a){var s,r,q,p=this,o=p.awo(a),n=p.c,m=A.csf(a,n,!1),l=p.f +if(l==null)l=p.e==null&&A.cL3(a,n) +s=l?A.EK(a):p.e +r=A.bDT(m,p.ch,s,p.at,!1,null,p.r,p.ay,p.w,p.as,new A.bDR(p,m,o)) +q=l&&s!=null?A.cL2(r):r +if(p.ax===B.Xh)return new A.ff(new A.bDS(a),q,null,t.ZE) +else return q}} +A.bDR.prototype={ +$2(a,b){return this.a.awx(a,b,this.b,this.c)}, +$S:793} +A.bDS.prototype={ +$1(a){var s=A.yP(this.a) +if(a.d!=null&&s.ge2())s.lR() +return!1}, +$S:329} +A.a1v.prototype={ +awo(a){return this.cx}} +A.aoe.prototype={ +awo(a){var s,r,q,p,o=this.awa(a),n=this.cx +if(n==null){s=A.cG(a,null) +if(s!=null){r=s.r +q=r.bs6(0,0) +p=r.bse(0,0) +r=this.c===B.v +n=r?p:q +o=A.rC(o,s.BP(r?q:p),null)}}return A.a([n!=null?new A.wI(n,o,null):o],t.p)}} +A.E0.prototype={ +awa(a){return A.Fm(this.RG)}} +A.bp4.prototype={ +$2(a,b){var s=B.d.aD(b,2) +if((b&1)===0)return this.a.$2(a,s) +return this.b.$2(a,s)}, +$S:330} +A.bp5.prototype={ +$2(a,b){return(b&1)===0?B.d.aD(b,2):null}, +$S:331} +A.a3N.prototype={ +awa(a){return new A.a9Q(this.p3,this.p4,null)}} +A.ce6.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.LW.prototype={ +J(){return A.dcV()}, +bHY(a,b){return this.f.$2(a,b)}} +A.bE_.prototype={ +$1(a){return null}, +$S:797} +A.aii.prototype={ +ed(a){return this.r!==a.r}} +A.F9.prototype={ +gays(){var s,r=this +switch(r.a.c.a){case 2:s=r.d.at +s.toString +return new A.j(0,s) +case 0:s=r.d.at +s.toString +return new A.j(0,-s) +case 3:s=r.d.at +s.toString +return new A.j(-s,0) +case 1:s=r.d.at +s.toString +return new A.j(s,0)}}, +gJQ(){var s=this.a.d +if(s==null){s=this.x +s.toString}return s}, +gkh(){return this.a.z}, +atW(){var s,r,q,p=this,o=p.a.Q +if(o==null){o=p.c +o.toString +o=A.um(o)}p.w=o +s=p.c +s.toString +s=o.Ac(s) +p.e=s +o=p.a +r=o.e +if(r!=null)p.e=r.q8(s) +else{o=o.Q +if(o!=null){s=p.c +s.toString +p.e=o.Ac(s).q8(p.e)}}q=p.d +if(q!=null){p.gJQ().rr(0,q) +A.j8(q.gf7())}o=p.gJQ() +s=p.e +s.toString +p.d=o.yC(s,p,q) +s=p.gJQ() +o=p.d +o.toString +s.aA(o)}, +lk(a,b){var s,r,q,p=this.r +this.oC(p,"offset") +s=p.y +r=s==null +if((r?A.z(p).h("cV.T").a(s):s)!=null){q=this.d +q.toString +p=r?A.z(p).h("cV.T").a(s):s +p.toString +q.aF7(p,b)}}, +a8(){if(this.a.d==null)this.x=new A.fh(0,!0,null,null,null,A.a([],t.ZP),$.ae()) +this.an()}, +c5(){var s=this,r=s.c +r.toString +r=A.cG(r,B.is) +s.y=r==null?null:r.CW +r=s.c +r.toString +r=A.cG(r,B.ev) +r=r==null?null:r.b +if(r==null){r=s.c +r.toString +A.Nj(r).toString +r=$.ec().d +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}}s.f=r +s.atW() +s.aSC()}, +bi8(a){var s,r,q=this,p=null,o=q.a.Q,n=o==null,m=a.Q,l=m==null +if(n!==l)return!0 +if(!n&&!l&&o.a0i(m))return!0 +o=q.a +s=o.e +if(s==null){o=o.Q +if(o==null)s=p +else{n=q.c +n.toString +n=o.Ac(n) +s=n}}r=a.e +if(r==null)if(l)r=p +else{o=q.c +o.toString +o=m.Ac(o) +r=o}do{o=s==null +n=o?p:A.I(s) +m=r==null +if(n!=(m?p:A.I(r)))return!0 +s=o?p:s.a +r=m?p:r.a}while(s!=null||r!=null) +o=q.a.d +o=o==null?p:A.I(o) +n=a.d +return o!=(n==null?p:A.I(n))}, +b1(a){var s,r,q=this +q.aSD(a) +s=a.d +if(q.a.d!=s){if(s==null){s=q.x +s.toString +r=q.d +r.toString +s.rr(0,r) +q.x.m() +q.x=null}else{r=q.d +r.toString +s.rr(0,r) +if(q.a.d==null)q.x=new A.fh(0,!0,null,null,null,A.a([],t.ZP),$.ae())}s=q.gJQ() +r=q.d +r.toString +s.aA(r)}if(q.bi8(a))q.atW()}, +m(){var s,r=this,q=r.a.d +if(q!=null){s=r.d +s.toString +q.rr(0,s)}else{q=r.x +if(q!=null){s=r.d +s.toString +q.rr(0,s)}q=r.x +if(q!=null)q.m()}r.d.m() +r.r.m() +r.aSE()}, +Qe(a){var s,r,q=this +if(a===q.ay)s=!a||A.cO(q.a.c)===q.ch +else s=!1 +if(s)return +if(!a){q.at=B.wk +q.amW()}else{switch(A.cO(q.a.c).a){case 1:q.at=A.a1([B.qv,new A.dE(new A.bDW(q),new A.bDX(q),t.ok)],t.u,t.xR) +break +case 0:q.at=A.a1([B.yl,new A.dE(new A.bDY(q),new A.bDZ(q),t.Uv)],t.u,t.xR) +break}a=!0}q.ay=a +q.ch=A.cO(q.a.c) +s=q.Q +if(s.gam()!=null){s=s.gam() +s.a69(q.at) +if(!s.a.f){r=s.c.gai() +r.toString +t.Wx.a(r) +s.e.bmX(r)}}}, +afD(a){var s,r=this +if(r.ax===a)return +r.ax=a +s=r.as +if($.an.U$.z.i(0,s)!=null){s=$.an.U$.z.i(0,s).gai() +s.toString +t.f4.a(s).saAK(r.ax)}}, +b3C(a){this.cx=this.d.GJ(this.gb_I())}, +bgZ(a){this.CW=this.d.Gd(a,this.gb_G())}, +bh_(a){var s=this.CW +if(s!=null)s.cI(0,a)}, +bgY(a){var s=this.CW +if(s!=null)s.qn(0,a)}, +amW(){if($.an.U$.z.i(0,this.Q)==null)return +var s=this.cx +if(s!=null)s.ao(0) +s=this.CW +if(s!=null)s.a.kC(0)}, +b_J(){this.cx=null}, +b_H(){this.CW=null}, +arv(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)}, +aru(a){var s,r,q=A.aF("delta"),p=$.i2.h9$ +p===$&&A.b() +p=p.a.gbm(0) +s=A.hh(p,A.z(p).h("B.E")) +p=this.w +p===$&&A.b() +p=p.gOn() +r=s.ef(0,p.grl(p))&&a.gel(a)===B.cv +switch(A.cO(this.a.c).a){case 0:q.b=r?a.gqW().b:a.gqW().a +break +case 1:q.b=r?a.gqW().a:a.gqW().b +break}if(A.Zg(this.a.c))q.b=q.aX()*-1 +return q.aX()}, +bh3(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.r_(r) +s=r}else s=!1 +if(s)return +q=o.aru(a) +p=o.arv(q) +if(q!==0){s=o.d.at +s.toString +s=p!==s}else s=!1 +if(s)$.ii.hS$.aEu(0,a,o.gbh0())}else if(t.xb.b(a))o.d.Hq(0)}, +bh1(a){var s,r=this,q=r.aru(a),p=r.arv(q) +if(q!==0){s=r.d.at +s.toString +s=p!==s}else s=!1 +if(s)r.d.Hq(q)}, +b6_(a){var s,r +if(a.kN$===0){s=$.an.U$.z.i(0,this.z) +r=s==null?null:s.gai() +if(r!=null)r.cs()}return!1}, +q(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.n6(r.bHY(a,j),p,l.as) +o=new A.aii(l,j,A.wk(B.cE,new A.mu(new A.bX(A.ci(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,k,k),!1,!q,!1,!1,p,k),s,B.be,q,l.Q),k,k,k,k,l.gbh2(),k),k) +j=l.a +if(!j.w){j=l.d +j.toString +s=l.e.gvO() +r=l.a +o=new A.ff(l.gb5Z(),new A.aW0(j,s,r.x,o,l.z),k,t.ji) +j=r}s=l.gJQ() +r=l.a.as +n=new A.aE7(j.c,s,r) +j=l.w +j===$&&A.b() +o=j.Vk(a,j.Vj(a,o,n),n) +m=A.UO(a) +if(m!=null){j=l.d +j.toString +o=new A.aik(l,j,o,m,k)}return o}} +A.bDW.prototype={ +$0(){var s=this.a.w +s===$&&A.b() +return A.czB(null,null,s.gyQ())}, +$S:211} +A.bDX.prototype={ +$1(a){var s,r,q=this.a +a.ay=q.gamX() +a.ch=q.gars() +a.CW=q.gart() +a.cx=q.garr() +a.cy=q.gamV() +s=q.e +a.db=s==null?null:s.gac2() +s=q.e +a.dx=s==null?null:s.gYb() +s=q.e +a.dy=s==null?null:s.gNQ() +s=q.w +s===$&&A.b() +r=q.c +r.toString +a.fx=s.a_5(r) +a.at=q.a.y +a.ax=q.w.gH8() +a.b=q.y +a.c=q.w.gyQ()}, +$S:219} +A.bDY.prototype={ +$0(){var s=this.a.w +s===$&&A.b() +return A.Rt(null,null,s.gyQ())}, +$S:306} +A.bDZ.prototype={ +$1(a){var s,r,q=this.a +a.ay=q.gamX() +a.ch=q.gars() +a.CW=q.gart() +a.cx=q.garr() +a.cy=q.gamV() +s=q.e +a.db=s==null?null:s.gac2() +s=q.e +a.dx=s==null?null:s.gYb() +s=q.e +a.dy=s==null?null:s.gNQ() +s=q.w +s===$&&A.b() +r=q.c +r.toString +a.fx=s.a_5(r) +a.at=q.a.y +a.ax=q.w.gH8() +a.b=q.y +a.c=q.w.gyQ()}, +$S:307} +A.aik.prototype={ +J(){return new A.aW2(B.f)}} +A.aW2.prototype={ +a8(){var s,r,q,p +this.an() +s=this.a +r=s.c +s=s.d +q=t.x9 +p=t.i +q=new A.aij(r,new A.bfh(r,30),s,A.N(q,p),A.N(q,p),A.a([],t.D1),A.b9(q),B.Xo,$.ae()) +s.a3(0,q.gare()) +this.d=q}, +b1(a){var s,r +this.bc(a) +s=this.a.d +if(a.d!==s){r=this.d +r===$&&A.b() +r.sb8(0,s)}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.ap()}, +q(a){var s=this.a,r=s.f,q=this.d +q===$&&A.b() +return new A.M_(r,s.e,q,null)}} +A.aij.prototype={ +sb8(a,b){var s,r=this.id +if(b===r)return +s=this.gare() +r.O(0,s) +this.id=b +b.a3(0,s)}, +bgN(){if(this.fr)return +this.fr=!0 +$.cW.xr$.push(new A.ce3(this))}, +W6(){var s=this,r=s.b,q=A.mf(r,A.X(r).c) +r=s.k1 +r.HC(r,new A.ce4(q)) +r=s.k2 +r.HC(r,new A.ce5(q)) +s.agN()}, +X5(a){var s=this +s.k1.V(0) +s.k2.V(0) +s.fy=s.fx=null +s.go=!1 +return s.agQ(a)}, +zh(a){var s,r,q,p,o,n,m=this +if(m.fy==null&&m.fx==null)m.go=m.amK(a.b) +s=A.b1v(m.dx) +r=a.b +q=a.c +p=-s.a +o=-s.b +if(a.a===B.jI){r=m.fy=m.anF(r) +a=A.a9c(new A.j(r.a+p,r.b+o),q)}else{r=m.fx=m.anF(r) +a=A.a9d(new A.j(r.a+p,r.b+o),q)}n=m.agT(a) +if(n===B.lK){m.dy.e=!1 +return n}if(m.go){r=m.dy +r.aN3(A.oq(a.b,0,0)) +if(r.e)return B.lK}return n}, +anF(a){var s,r,q,p=this.dx,o=p.c.gai() +o.toString +t.x.a(o) +s=o.hZ(a) +if(!this.go){r=s.b +if(r<0||s.a<0)return A.cK(o.cf(0,null),B.h) +if(r>o.gu(0).b||s.a>o.gu(0).a)return B.bdm}q=A.b1v(p) +return A.cK(o.cf(0,null),new A.j(s.a+q.a,s.b+q.b))}, +a6x(a,b){var s,r,q,p=this,o=p.dx,n=A.b1v(o) +o=o.c.gai() +o.toString +t.x.a(o) +s=o.cf(0,null) +r=p.d +if(r!==-1)q=p.fx==null||b +else q=!1 +if(q){r=J.lo(p.b[r]).a +r.toString +p.fx=A.cK(s,A.cK(J.cv1(p.b[p.d],o),r.a.S(0,new A.j(0,-r.b/2))).S(0,n))}r=p.c +if(r!==-1)q=p.fy==null||a +else q=!1 +if(q){r=J.lo(p.b[r]).b +r.toString +p.fy=A.cK(s,A.cK(J.cv1(p.b[p.c],o),r.a.S(0,new A.j(0,-r.b/2))).S(0,n))}}, +atF(){return this.a6x(!0,!0)}, +Xb(a){var s=this.agR(a) +if(this.d!==-1)this.atF() +return s}, +Xc(a){var s,r=this +r.go=r.amK(a.b) +s=r.agS(a) +r.atF() +return s}, +aaK(a){var s=this,r=s.aPe(a),q=a.c +s.a6x(q,!q) +if(s.go)s.ao7(q) +return r}, +aaJ(a){var s=this,r=s.aPd(a),q=a.c +s.a6x(q,!q) +if(s.go)s.ao7(q) +return r}, +ao7(a){var s,r,q,p,o,n,m,l,k=this,j=k.b +if(a){s=j[k.c] +r=s.gj(s).b +q=s.gj(s).b.b}else{s=j[k.d] +r=s.gj(s).a +j=s.gj(s).a +q=j==null?null:j.b}if(q==null||r==null)return +j=k.dx +p=j.c.gai() +p.toString +t.x.a(p) +o=A.cK(s.cf(0,p),r.a) +n=p.gu(0).a +p=p.gu(0).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.hV(n+p-m) +return}if(l<0){j=k.id +p=j.at +p.toString +j.hV(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.hV(p+r-n) +return}if(r<0){j=k.id +p=j.at +p.toString +j.hV(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.hV(n+m-p) +return}if(l<0){j=k.id +p=j.at +p.toString +j.hV(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.hV(p+n-r) +return}if(r<0){j=k.id +p=j.at +p.toString +j.hV(p+0-r)}return}}, +amK(a){var s,r=this.dx.c.gai() +r.toString +t.x.a(r) +s=r.hZ(a) +return new A.W(0,0,0+r.gu(0).a,0+r.gu(0).b).p(0,s)}, +mb(a,b){var s,r,q=this +switch(b.a.a){case 0:s=q.dx.d.at +s.toString +q.k1.n(0,a,s) +q.yW(a) +break +case 1:s=q.dx.d.at +s.toString +q.k2.n(0,a,s) +q.yW(a) +break +case 5:case 6:q.yW(a) +s=q.dx +r=s.d.at +r.toString +q.k1.n(0,a,r) +s=s.d.at +s.toString +q.k2.n(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.n(0,a,r) +s=s.d.at +s.toString +q.k1.n(0,a,s) +break}return q.agO(a,b)}, +yW(a){var s,r,q,p,o,n,m=this,l=m.dx,k=l.d.at +k.toString +s=m.k1 +r=s.i(0,a) +q=m.fx +if(q!=null)p=r==null||Math.abs(k-r)>1e-10 +else p=!1 +if(p){o=A.b1v(l) +a.lE(A.a9d(new A.j(q.a+-o.a,q.b+-o.b),null)) +q=l.d.at +q.toString +s.n(0,a,q)}s=m.k2 +n=s.i(0,a) +q=m.fy +if(q!=null)k=n==null||Math.abs(k-n)>1e-10 +else k=!1 +if(k){o=A.b1v(l) +a.lE(A.a9c(new A.j(q.a+-o.a,q.b+-o.b),null)) +l=l.d.at +l.toString +s.n(0,a,l)}}, +m(){var s=this +s.k1.V(0) +s.k2.V(0) +s.fr=!1 +s.dy.e=!1 +s.agP()}} +A.ce3.prototype={ +$1(a){var s=this.a +if(!s.fr)return +s.fr=!1 +s.TE()}, +$S:5} +A.ce4.prototype={ +$2(a,b){return!this.a.p(0,a)}, +$S:332} +A.ce5.prototype={ +$2(a,b){return!this.a.p(0,a)}, +$S:332} +A.aW0.prototype={ +aR(a){var s=this.e,r=new A.aV8(s,this.f,this.r,null,A.aw(t.T)) +r.aQ() +r.sbq(null) +s.a3(0,r.gH5()) +return r}, +b_(a,b){b.svO(this.f) +b.sb8(0,this.e) +b.saKC(this.r)}} +A.aV8.prototype={ +sb8(a,b){var s,r=this,q=r.G +if(b===q)return +s=r.gH5() +q.O(0,s) +r.G=b +b.a3(0,s) +r.cs()}, +svO(a){if(a===this.ac)return +this.ac=a +this.cs()}, +saKC(a){if(a==this.aS)return +this.aS=a +this.cs()}, +ji(a){var s,r,q=this +q.kH(a) +a.a=!0 +if(q.G.ay){a.dn(B.bl6,q.ac) +s=q.G +r=s.at +r.toString +a.bj=r +a.e=!0 +r=s.Q +r.toString +a.bU=r +s=s.z +s.toString +a.e7=s +a.saKg(q.aS)}}, +yh(a,b,c){var s,r,q,p,o,n,m,l=this +if(c.length!==0){s=B.b.ga2(c).dy +s=!(s!=null&&s.p(0,B.XI))}else s=!0 +if(s){l.cZ=null +l.a0U(a,b,c) +return}s=l.cZ +if(s==null)s=l.cZ=A.M4(null,l.gvh()) +s.sdR(0,a.e) +s=l.cZ +s.toString +r=t.QF +q=A.a([s],r) +p=A.a([],r) +for(s=c.length,o=null,n=0;n#"+A.bq(r)+"("+B.b.bQ(q,", ")+")"}, +gv(a){return A.ad(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.az(b)!==A.I(r))return!1 +if(b instanceof A.aE7)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.bDV.prototype={ +$2(a,b){if(b!=null)this.a.push(a+b.k(0))}, +$S:333} +A.bfh.prototype={ +a4G(a,b){switch(b.a){case 0:return a.a +case 1:return a.b}}, +bie(a,b){switch(b.a){case 0:return a.a +case 1:return a.b}}, +aN3(a){var s=this,r=s.a.gays() +s.d=a.ba(0,r.a,r.b) +if(s.e)return +s.F1()}, +F1(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$F1=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:d=p.a +c=d.c.gai() +c.toString +t.x.a(c) +o=A.io(c.cf(0,null),new A.W(0,0,0+c.gu(0).a,0+c.gu(0).b)) +c=p.e=!0 +n=d.gays() +m=o.a +l=o.b +k=p.a4G(new A.j(m+n.a,l+n.b),A.cO(d.a.c)) +j=k+p.bie(new A.V(o.c-m,o.d-l),A.cO(d.a.c)) +l=p.d +l===$&&A.b() +i=p.a4G(new A.j(l.a,l.b),A.cO(d.a.c)) +l=p.d +h=p.a4G(new A.j(l.c,l.d),A.cO(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*this.r.gj(0))),r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255)) +return s}, +apB(a){var s,r,q=this +if(a){s=$.ar().aP() +r=q.c +s.sa6(0,A.Y(B.e.aF(255*((r.gj(r)>>>24&255)/255*q.r.gj(0))),r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255)) +s.sbN(0,B.a7) +s.se4(1) +return s}s=$.ar().aP() +r=q.b +s.sa6(0,A.Y(B.e.aF(255*((r.gj(r)>>>24&255)/255*q.r.gj(0))),r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255)) +return s}, +bdb(){return this.apB(!1)}, +bd7(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null +e.gTu() +switch(e.gTu().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.aJ||p===B.aU +o=e.Q +n=new A.V(s,r-(p?o.gdM(0)+o.gdT(0):o.geL())) +r=e.x +m=r+e.Q.a +o=e.cx +o===$&&A.b() +r=m-r +l=e.gSv() +k=new A.j(r,l) +j=k.S(0,new A.j(s,0)) +i=e.db.d +i.toString +p=e.dx +p=p===B.aJ||p===B.aU +h=e.Q +p=p?h.gdM(0)+h.gdT(0):h.geL() +g=new A.j(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.aJ||o===B.aU +l=e.Q +o=o?l.gdM(0)+l.gdT(0):l.geL() +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.gSv() +k=new A.j(p,r) +s=e.db.d +s.toString +l=e.dx +l=l===B.aJ||l===B.aU +i=e.Q +g=new A.j(p,r+(s-(l?i.gdM(0)+i.gdT(0):i.geL()))) +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.aJ||r===B.aU +p=e.Q +r=r?p.gdM(0)+p.gdT(0):p.geL() +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.gSv() +s=f-e.x +k=new A.j(o,s) +j=k.S(0,new A.j(0,p)) +l=e.db.d +l.toString +i=e.dx +i=i===B.aJ||i===B.aU +h=e.Q +g=new A.j(o+(l-(i?h.gdM(0)+h.gdT(0):h.geL())),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.aJ||r===B.aU +p=e.Q +r=r?p.gdM(0)+p.gdT(0):p.geL() +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.gSv() +p=f-e.x +k=new A.j(o,p) +s=e.db.d +s.toString +l=e.dx +l=l===B.aJ||l===B.aU +i=e.Q +g=new A.j(o+(s-(l?i.gdM(0)+i.gdT(0):i.geL())),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.W(s,r,s+n.a,r+n.b) +e.CW=new A.W(m,f,m+q.a,f+q.b) +if(e.r.gj(0)!==0){s=e.ch +s.toString +a.fs(s,e.bdb()) +a.jV(j,g,e.apB(!0)) +s=e.y +if(s!=null){r=e.CW +r.toString +a.dh(A.jq(r,s),e.gapA()) +return}s=e.CW +s.toString +a.fs(s,e.gapA()) +return}}, +aI(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.aJ||f===B.aU +r=g.Q +f=f?r.gdM(0)+r.gdT(0):r.geL() +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.gC9() +s=g.dx +s=s===B.aJ||s===B.aU +r=g.Q +s=s?r.gdM(0)+r.gdT(0):r.geL() +r=g.db +q=r.b +q.toString +p=r.a +p.toString +r=r.d +r.toString +o=g.dx +o=o===B.aJ||o===B.aU +n=g.Q +o=o?n.gdM(0)+n.gdT(0):n.geL() +m=A.Z((f-s)/(q-p+r-o),0,1) +o=g.db.d +o.toString +f=g.dx +f=f===B.aJ||f===B.aU +s=g.Q +f=f?s.gdM(0)+s.gdT(0):s.geL() +f=Math.min(o-f-2*g.w,g.at) +o=g.db.d +o.toString +s=g.dx +s=s===B.aJ||s===B.aU +r=g.Q +s=s?r.gdM(0)+r.gdT(0):r.geL() +l=Math.max(f,(o-s-2*g.w)*m) +s=g.db.gC9() +o=g.db.d +o.toString +f=g.as +r=g.dx +r=r===B.aJ||r===B.aU +q=g.Q +r=r?q.gdM(0)+q.gdT(0):q.geL() +k=Math.min(f,o-r-2*g.w) +f=g.dx +f=f===B.aU||f===B.fo +r=g.db +if((f?Math.max(r.gkR()-r.gfL(),0):Math.max(r.gfL()-r.glf(),0))>0){f=g.dx +f=f===B.aU||f===B.fo +r=g.db +r=(f?Math.max(r.gfL()-r.glf(),0):Math.max(r.gkR()-r.gfL(),0))>0 +f=r}else f=!1 +j=f?k:k*(1-A.Z(1-s/o,0,0.2)/0.2) +f=g.db.d +f.toString +s=g.dx +s=s===B.aJ||s===B.aU +r=g.Q +s=s?r.gdM(0)+r.gdT(0):r.geL() +s=A.Z(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.Z((r-q)/i,0,1)}else h=0 +r=g.dx +q=r===B.aU +p=q||r===B.fo?1-h:h +f=f.d +f.toString +r=r===B.aJ||q +q=g.Q +r=r?q.gdM(0)+q.gdT(0):q.geL() +g.cx=p*(f-r-2*g.w-s)+g.gb8v() +return g.bd7(a,b)}, +af6(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.aJ||r===B.aU +q=o.Q +r=r?q.gdM(0)+q.gdT(0):q.geL() +q=o.w +p=o.cy +p===$&&A.b() +return(m-s)*a/(n-r-2*q-p)}, +Cp(a){var s,r,q=this +if(q.CW==null)return null +if(!q.ay)if(q.r.gj(0)!==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.p(0,a)}, +aAG(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.n1(A.jQ(p.CW.gc1(),24)) +if(p.r.gj(0)===0){if(c&&b===B.cv)return q.p(0,a) +return!1}switch(b.a){case 0:case 4:return q.p(0,a) +case 1:case 2:case 3:case 5:return o.p(0,a)}}, +bye(a,b){return this.aAG(a,b,!1)}, +aAH(a,b){var s,r,q=this +if(q.CW==null)return!1 +if(q.ay)return!1 +if(q.r.gj(0)===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.n1(A.jQ(s.gc1(),24)).p(0,a) +case 1:case 2:case 3:case 5:return q.CW.p(0,a)}}, +hC(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.q(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}, +IS(a){return!1}, +gDH(){return null}, +k(a){return"#"+A.bq(this)}, +m(){this.r.a.O(0,this.gip()) +this.f4()}} +A.bE4.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:800} +A.U3.prototype={ +J(){return A.dc5(t.jY)}, +uI(a){return this.cx.$1(a)}} +A.wA.prototype={ +gBc(){var s=this.a.d +if(s==null){s=this.c +s.toString +s=A.EK(s)}return s}, +gDJ(){var s=this.a.e +return s===!0}, +gas2(){if(this.gDJ())this.a.toString +return!1}, +gC3(){this.a.toString +return!0}, +a8(){var s,r,q,p,o=this,n=null +o.an() +s=A.bQ(n,o.a.ay,n,1,n,o) +s.cY() +r=s.f0$ +r.b=!0 +r.a.push(o.gbli()) +o.x=s +s=o.y=A.cI(B.aa,s,n) +r=o.a +q=r.w +if(q==null)q=6 +p=r.r +r=r.db +r=new A.UK(B.t1,B.D,B.D,n,q,s,0,0,p,n,B.L,18,18,r,$.ae()) +s.a.a3(0,r.gip()) +o.at!==$&&A.ck() +o.at=r}, +c5(){this.dH()}, +blj(a){if(a!==B.a6)if(this.gBc()!=null)this.gC3()}, +P9(){var s,r=this,q=r.at +q===$&&A.b() +r.a.toString +q.sa6(0,B.t1) +r.a.toString +q.sbHd(null) +if(r.gas2()){r.a.toString +s=B.a6V}else s=B.D +q.sqL(s) +if(r.gas2()){r.a.toString +s=B.C2}else s=B.D +q.saFM(s) +s=r.c.a0(t.I) +s.toString +q.sd5(s.w) +s=r.a.w +q.sadw(s==null?6:s) +q.slj(r.a.r) +r.a.toString +s=r.c +s.toString +s=A.bC(s,B.cV,t.l).w +q.sdX(0,s.r) +q.sa03(r.a.db) +r.a.toString +q.sabU(0) +r.a.toString +q.sdg(0,null) +r.a.toString +q.sa97(0) +r.a.toString +q.sac4(0,18) +r.a.toString +q.saCb(18) +q.saAJ(!r.gC3())}, +b1(a){var s,r=this +r.bc(a) +s=r.a.e +if(s!=a.e)if(s===!0){s=r.w +if(s!=null)s.ao(0) +s=r.x +s===$&&A.b() +s.z=B.b_ +s.kn(1,B.H,null)}else{s=r.x +s===$&&A.b() +s.eI(0)}}, +bkU(a){var s,r,q,p,o=this,n=o.r,m=n.gb8(n),l=A.aF("primaryDeltaFromDragStart"),k=A.aF("primaryDeltaFromLastDragUpdate") +switch(m.giO().a){case 0:n=a.b +l.b=o.d.b-n +k.b=o.e.b-n +break +case 1:n=a.a +l.b=n-o.d.a +k.b=n-o.e.a +break +case 2:n=a.b +l.b=n-o.d.b +k.b=n-o.e.b +break +case 3:n=a.a +l.b=o.d.a-n +k.b=o.e.a-n +break}n=o.at +n===$&&A.b() +s=l.aX() +r=o.f +r.toString +q=n.af6(s+r) +if(l.aX()>0){s=m.at +s.toString +s=qs}else s=!1 +else s=!0 +if(s){s=m.at +s.toString +q=s+n.af6(k.aX())}n=m.at +n.toString +if(q!==n){p=q-m.r.Bu(m,q) +n=o.c +n.toString +n=A.um(n) +s=o.c +s.toString +switch(n.v9(s).a){case 1:case 3:case 4:case 5:n=m.z +n.toString +s=m.Q +s.toString +p=A.Z(p,n,s) +break +case 2:case 0:break}m.hV(p)}}, +SL(){var s,r=this +if(!r.gDJ()){s=r.w +if(s!=null)s.ao(0) +r.w=A.d3(r.a.ch,new A.bzL(r))}}, +Ad(){var s=this.r +if(s.f.length!==0)return A.cO(s.gb8(s).giO()) +return null}, +Xf(){if(this.Ad()==null)return +var s=this.w +if(s!=null)s.ao(0)}, +Xh(a){var s,r,q,p,o,n,m=this +m.r=m.gBc() +if(m.Ad()==null)return +s=m.w +if(s!=null)s.ao(0) +s=m.x +s===$&&A.b() +s.cM(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.Z(q/o,0,1)}else n=0 +r=r.d +r.toString +q=s.dx +q=q===B.aJ||q===B.aU +p=s.Q +q=q?p.gdM(0)+p.gdT(0):p.geL() +p=s.w +s=s.cy +s===$&&A.b() +m.f=n*(r-q-2*p-s) +m.as=!0}, +bxU(a){var s,r,q=this +if(J.q(q.e,a))return +s=q.r +r=s.gb8(s) +if(!r.r.r_(r))return +if(q.Ad()==null)return +q.bkU(a) +q.e=a}, +Xg(a,b){var s=this +s.as=!1 +if(s.Ad()==null)return +s.SL() +s.r=s.f=s.e=s.d=null}, +b6Z(a){var s,r,q,p,o=this,n=o.r=o.gBc(),m=n.gb8(n) +if(!m.r.r_(m))return +switch(m.giO().a){case 0:case 2:n=o.at +n===$&&A.b() +n=n.cx +n===$&&A.b() +s=a.c.b>n?B.aJ:B.aU +break +case 3:case 1:n=o.at +n===$&&A.b() +n=n.cx +n===$&&A.b() +s=a.c.a>n?B.iA:B.fo +break +default:s=null}n=$.an.U$.z.i(0,m.w.Q) +n.toString +r=A.lI(n) +r.toString +q=A.bDG(r,new A.l7(s,B.lI)) +n=o.r +n=n.gb8(n) +p=o.r +p=p.gb8(p).at +p.toString +n.NX(0,p+q,B.cN,B.b1)}, +a5V(a){var s,r=this.gBc() +if(r==null)return!0 +s=r.f.length +if(s>1)return!1 +return s===0||A.cO(r.gb8(r).giO())===a}, +bh5(a){var s,r,q=this,p=q.a +p.toString +if(!p.uI(a.avw()))return!1 +if(q.gDJ()){p=q.x +p===$&&A.b() +s=p.Q +s===$&&A.b() +if(s!==B.bg&&s!==B.a9)p.cM(0)}r=a.a +p=r.e +if(q.a5V(A.cO(p))){s=q.at +s===$&&A.b() +s.ic(0,r,p)}return!1}, +b61(a){var s,r,q,p=this +if(!p.a.uI(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.a6&&q!==B.bs)r.eI(0) +r=s.e +if(p.a5V(A.cO(r))){q=p.at +q===$&&A.b() +q.ic(0,s,r)}return!1}if(a instanceof A.no||a instanceof A.u9){r=p.x +r===$&&A.b() +q=r.Q +q===$&&A.b() +if(q!==B.bg&&q!==B.a9)r.cM(0) +r=p.w +if(r!=null)r.ao(0) +r=s.e +if(p.a5V(A.cO(r))){q=p.at +q===$&&A.b() +q.ic(0,s,r)}}else if(a instanceof A.wG)if(p.d==null)p.SL() +return!1}, +gb1E(){var s=this,r=A.N(t.u,t.xR) +if(s.gBc()==null||!s.gC3())return r +r.n(0,B.bv0,new A.dE(new A.bzH(s),new A.bzI(s),t.ff)) +r.n(0,B.bv1,new A.dE(new A.bzJ(s),new A.bzK(s),t.EI)) +return r}, +aBn(a,b,c){var s,r=this.z +if($.an.U$.z.i(0,r)==null)return!1 +s=A.cAO(r,a) +r=this.at +r===$&&A.b() +return r.aAG(s,b,!0)}, +aaL(a){var s,r=this +if(r.aBn(a.gb8(a),a.gel(a),!0)){r.Q=!0 +s=r.x +s===$&&A.b() +s.cM(0) +s=r.w +if(s!=null)s.ao(0)}else if(r.Q){r.Q=!1 +r.SL()}}, +aaM(a){this.Q=!1 +this.SL()}, +aq7(a){var s=this.r,r=A.cO(s.gb8(s).giO())===B.a_?a.gqW().a:a.gqW().b +s=this.r +return A.Zg(s.gb8(s).giO())?r*-1:r}, +asB(a){var s,r=this.r +r=r.gb8(r).at +r.toString +s=this.r +s=s.gb8(s).z +s.toString +s=Math.max(r+a,s) +r=this.r +r=r.gb8(r).Q +r.toString +return Math.min(s,r)}, +b5v(a){var s,r,q,p=this +p.r=p.gBc() +s=p.aq7(a) +r=p.asB(s) +if(s!==0){q=p.r +q=q.gb8(q).at +q.toString +q=r!==q}else q=!1 +if(q){q=p.r +q.gb8(q).Hq(s)}}, +bh7(a){var s,r,q,p,o=this +o.r=o.gBc() +s=o.at +s===$&&A.b() +s=s.Cp(a.gev()) +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){s=o.r +r=s.gb8(s) +if(t.Mj.b(a)){if(!r.r.r_(r))return +q=o.aq7(a) +p=o.asB(q) +if(q!==0){s=r.at +s.toString +s=p!==s}else s=!1 +if(s)$.ii.hS$.aEu(0,a,o.gb5u())}else if(t.xb.b(a)){s=r.at +s.toString +r.hV(s)}}}, +m(){var s=this,r=s.x +r===$&&A.b() +r.m() +r=s.w +if(r!=null)r.ao(0) +r=s.at +r===$&&A.b() +r.r.a.O(0,r.gip()) +r.f4() +s.aRU()}, +q(a){var s,r,q=this,p=null +q.P9() +s=q.gb1E() +r=q.at +r===$&&A.b() +return new A.ff(q.gbh4(),new A.ff(q.gb60(),new A.iU(A.wk(B.cE,new A.mu(A.ip(A.ih(new A.iU(q.a.c,p),r,q.z,p,B.A),B.bt,p,p,p,new A.bzM(q),new A.bzN(q)),s,p,!1,p),p,p,p,p,q.gbh6(),p),p),p,t.WA),p,t.ji)}} +A.bzL.prototype={ +$0(){var s=this.a,r=s.x +r===$&&A.b() +r.eI(0) +s.w=null}, +$S:0} +A.bzH.prototype={ +$0(){var s=this.a,r=s.a.CW,q=t.S,p=A.dV(q),o=A.cBL() +return new A.xx(s.z,r,null,B.f2,A.N(q,t.SP),p,s,null,o,A.N(q,t.F))}, +$S:801} +A.bzI.prototype={ +$1(a){var s=this.a +a.p2=s.gaAo() +a.p3=new A.bzE(s) +a.p4=new A.bzF(s) +a.RG=new A.bzG(s)}, +$S:802} +A.bzE.prototype={ +$1(a){return this.a.Xh(a.b)}, +$S:86} +A.bzF.prototype={ +$1(a){return this.a.bxU(a.b)}, +$S:95} +A.bzG.prototype={ +$1(a){return this.a.Xg(a.b,a.c)}, +$S:107} +A.bzJ.prototype={ +$0(){var s=this.a,r=t.S,q=A.dV(r) +return new A.xy(s.z,B.b1,18,B.f2,A.N(r,t.SP),q,s,null,A.GO(),A.N(r,t.F))}, +$S:803} +A.bzK.prototype={ +$1(a){a.be=this.a.gb6Y()}, +$S:804} +A.bzM.prototype={ +$1(a){var s +switch(a.gel(a).a){case 1:case 4:s=this.a +if(s.gC3())s.aaM(a) +break +case 2:case 3:case 5:case 0:break}}, +$S:70} +A.bzN.prototype={ +$1(a){var s +switch(a.gel(a).a){case 1:case 4:s=this.a +if(s.gC3())s.aaL(a) +break +case 2:case 3:case 5:case 0:break}}, +$S:143} +A.xx.prototype={ +mk(a){if(!this.a3R(this.e8,a.gb8(a),a.gel(a)))return!1 +return this.agK(a)}, +a3R(a,b,c){var s +if($.an.U$.z.i(0,a)==null)return!1 +s=t.ip.a($.an.U$.z.i(0,a).gb7()).f +s.toString +return t.sm.a(s).aAH(A.cAO(a,b),c)}} +A.xy.prototype={ +mk(a){if(!this.a3R(this.eT,a.gb8(a),a.gel(a)))return!1 +return this.aQY(a)}, +a3R(a,b,c){var s,r +if($.an.U$.z.i(0,a)==null)return!1 +s=t.ip.a($.an.U$.z.i(0,a).gb7()).f +s.toString +t.sm.a(s) +r=A.cAO(a,b) +return s.bye(r,c)&&!s.aAH(r,c)}} +A.Yd.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.a98.prototype={ +J(){var s=t.x9 +return new A.LY(A.N(t.u,t.xR),new A.wf(),new A.wf(),new A.wf(),new A.ais(A.b9(s),A.b9(s),A.a([],t.D1),A.b9(s),B.Xo,$.ae()),B.boj,B.f)}} +A.LY.prototype={ +ga3N(){var s=this.y.at +return s.a!=null||s.b!=null}, +a8(){var s=this +s.an() +s.a.d.a3(0,s.garB()) +s.b7E() +s.b7I() +s.e.n(0,B.m9,new A.dE(new A.bEI(s),new A.bEJ(s),t.UN))}, +c5(){var s,r,q=this +q.dH() +switch(A.bL().a){case 0:case 2:break +case 1:case 3:case 4:case 5:return}s=q.c +s.toString +r=A.bC(s,B.mm,t.l).w.gnU(0) +s=q.Q +if(s==null){q.Q=r +return}if(r!==s){q.Q=r +q.po(A.bL()===B.b4)}}, +b1(a){var s,r,q=this +q.bc(a) +s=a.d +if(q.a.d!==s){r=q.garB() +s.O(0,r) +q.a.d.a3(0,r) +if(q.a.d.ge2()!==s.ge2())q.arC()}}, +arC(){var s=this +if(!s.a.d.ge2()){if($.bxw!==s.y)$.bxw=null +s.Ro()}$.bxw=s.y}, +bl1(){var s,r,q=this +switch(q.y.at.c.a){case 0:case 1:s=B.box +break +case 2:s=B.boy +break +default:s=null}q.dy=new A.cu("__",s,B.aw) +if(q.ga3N())q.bhr() +else{r=q.f +if(r!=null){r.mh() +r=r.b +r.k3$=$.ae() +r.k2$=0}q.f=null}}, +b7E(){this.e.n(0,B.ZM,new A.dE(new A.bEy(this),new A.bEz(this),t.Qm))}, +b7I(){this.e.n(0,B.qs,new A.dE(new A.bEA(this),new A.bEB(this),t.jn))}, +biR(a){var s,r=this +switch(A.bEx(a.d)){case 1:r.a.d.ho() +r.jD() +switch(A.bL().a){case 0:case 1:case 2:break +case 4:case 3:case 5:s=a.a +r.F2(s) +r.KU(s) +break}break +case 2:r.TD(a.a) +break}r.lz()}, +b4M(a){switch(A.bEx(a.e)){case 1:this.F2(a.b) +break}this.lz()}, +b4O(a){switch(A.bEx(a.x)){case 1:this.bhc(!0,a.d) +break +case 2:this.TC(!0,a.d,B.qi) +break}this.lz()}, +b4K(a){var s=this +s.ay=!1 +s.ax=null +s.CW=!1 +s.lz()}, +b4U(a){var s +switch(A.bEx(a.d)){case 1:switch(A.bL().a){case 0:case 1:case 2:s=a.a +this.F2(s) +this.KU(s) +break +case 4:case 3:case 5:break}break}this.lz()}, +lz(){var s,r=this,q=null,p=r.as +p=p==null?q:p.a +s=r.z +if(s==null)s=q +else{s=s.xb() +s=s==null?q:s.a}if(p!=s){p=r.z +r.as=p==null?q:p.xb() +r.a.toString}}, +b6X(a){var s=this +A.w5() +s.a.d.ho() +s.TD(a.a) +if(A.bL()!==B.b4)s.Be() +s.lz()}, +b6V(a){this.bhd(a.a,B.qi) +this.lz()}, +b6T(a){var s=this +s.ay=!1 +s.ax=null +s.CW=!1 +s.lz() +s.as1() +if(A.bL()===B.b4)s.Be()}, +a57(a){var s,r,q,p +for(s=this.y.at.d,r=s.length,q=0;qq)p=!0 +else p=ro.a +return this.db=a!==p}, +amL(a,b){var s,r=this +r.dx=null +if(r.y.at.c===B.eL)return +s=r.z +if(s!=null)s.lE(new A.auZ(b,r.akF(b),a,B.bkP)) +r.lz()}, +b_v(a){var s,r,q,p,o,n=this,m=n.y +if(m.at.c===B.eL)return +s=n.akF(a) +m=m.at +if(s){m=m.b +m.toString +r=m}else{m=m.a +m.toString +r=m}if(n.dx==null)n.dx=r.a.a +m=n.c.gai().cf(0,null) +q=n.dx +q.toString +p=A.cK(m,new A.j(q,0)) +q=n.z +if(q!=null){m=n.db +m.toString +o=a?B.Xl:B.bkQ +q.lE(new A.a1P(p.a,m,o,B.Xk))}n.lz()}, +ga8q(){var s=this.y.at,r=A.a([],t.ZD) +if(s.c===B.pY)r.push(new A.hT(new A.bEF(this),B.ts,null)) +if(s.e)r.push(new A.hT(new A.bEG(this),B.tt,null)) +return r}, +gDG(){var s,r=this.y.at,q=r.a,p=r.b,o=A.aF("points"),n=q==null?null:q.a +if(n==null)n=p.a +s=p==null?null:p.a +if(s==null)s=q.a +r=t.fm +if(n.b>s.b)o.b=A.a([new A.uK(s,B.j),new A.uK(n,B.j)],r) +else o.b=A.a([new A.uK(n,B.j),new A.uK(s,B.j)],r) +return o.aX()}, +po(a){var s=this.f +if(s!=null)s.jD() +if(a){s=this.f +if(s!=null)s.aAC()}}, +jD(){return this.po(!0)}, +Ak(a){var s,r=this +r.Ro() +s=r.z +if(s!=null)s.lE(B.bkL) +if(a===B.bk){r.as1() +r.Be()}r.lz()}, +a04(){return this.Ak(null)}, +B(a,b){var s=this +s.z=b +b.a3(0,s.ga6H()) +s.z.pG(s.r,s.w)}, +F(a,b){var s=this +s.z.O(0,s.ga6H()) +s.z.pG(null,null) +s.z=null}, +m(){var s=this,r=s.z +if(r!=null)r.O(0,s.ga6H()) +r=s.z +if(r!=null)r.pG(null,null) +s.y.m() +r=s.f +if(r!=null)r.Co() +r=s.f +if(r!=null){r.mh() +r=r.b +r.k3$=$.ae() +r.k2$=0}s.f=null +s.ap()}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=e.a.e +if($.cKU==null)A.dbb() +s=e.d +if(s===$){r=t.h +q=A.a([],r) +p=t.b +o=e.c +o.toString +o=new A.aW8(e,new A.bN(q,p)).ht(o) +q=A.a([],r) +n=e.c +n.toString +n=new A.aMx(e,new A.bN(q,p)).ht(n) +q=A.a([],r) +m=e.c +m.toString +m=new A.B2(e,B.qi,new A.bN(q,p),t.in).ht(m) +q=A.a([],r) +l=e.c +l.toString +l=new A.B2(e,B.Z2,new A.bN(q,p),t.c7).ht(l) +q=A.a([],r) +k=e.c +k.toString +k=new A.B2(e,B.Z1,new A.bN(q,p),t.Gy).ht(k) +q=A.a([],r) +j=e.c +j.toString +j=new A.v5(e,B.xV,new A.bN(q,p),t.fG).ht(j) +q=A.a([],r) +i=e.c +i.toString +i=new A.v5(e,B.qi,new A.bN(q,p),t.Lq).ht(i) +q=A.a([],r) +h=e.c +h.toString +h=new A.v5(e,B.Z1,new A.bN(q,p),t.Zv).ht(h) +q=A.a([],r) +g=e.c +g.toString +g=new A.aee(e,new A.bN(q,p),t.l7).ht(g) +r=A.a([],r) +q=e.c +q.toString +f=A.a1([B.ZJ,o,B.ZC,n,B.ZR,m,B.ZQ,l,B.ZS,k,B.ZA,j,B.Zx,i,B.Zz,h,B.ZO,g,B.Zy,new A.v5(e,B.Z2,new A.bN(r,p),t.cQ).ht(q)],t.u,t.od) +e.d!==$&&A.a_() +e.d=f +s=f}return new A.yj(e.x,new A.mu(A.ts(s,A.n1(!1,d,new A.aBx(new A.M_(e,c,e.y,d),d),d,d,d,e.a.d,!1,d,d,d,d,d,d)),e.e,B.cr,!0,d),d)}, +$iFb:1} +A.bEI.prototype={ +$0(){return A.t5(null,this.a,null)}, +$S:158} +A.bEJ.prototype={ +$1(a){var s=this.a +a.bj=new A.bEH(s) +a.D=s.gb5O()}, +$S:159} +A.bEH.prototype={ +$1(a){var s=A.bL()===B.aM&&this.a.a57(a.a),r=this.a +if(s){s=r.f +s=s==null?null:s.gHW() +if(s===!0)r.po(!1) +else r.F6(a.a)}else{r.jD() +s=a.a +r.F2(s) +r.KU(s)}}, +$S:35} +A.bEy.prototype={ +$0(){return A.cME(this.a,A.d9([B.cv],t.F))}, +$S:338} +A.bEz.prototype={ +$1(a){var s=this.a +a.ch=s.gbiQ() +a.CW=s.gb4T() +a.cx=s.gb4L() +a.cy=s.gb4N() +a.db=s.gb4J() +a.dx=s.gaYr() +a.at=B.kM}, +$S:339} +A.bEA.prototype={ +$0(){return A.St(null,this.a,null,null,B.blr)}, +$S:205} +A.bEB.prototype={ +$1(a){var s=this.a +a.p3=s.gb6W() +a.p4=s.gb6U() +a.RG=s.gb6S()}, +$S:206} +A.bED.prototype={ +$1(a){var s=this.a +if(!s.ay)return +s.ay=!1 +s.a6p(this.b)}, +$S:5} +A.bEC.prototype={ +$1(a){var s=this.a +return s.a.f.$2(a,s)}, +$S:8} +A.bEE.prototype={ +$1(a){var s=this.a +if(!s.CW)return +s.CW=!1 +s.atg(this.b)}, +$S:5} +A.bEF.prototype={ +$0(){var s=this.a +s.JK() +switch(A.bL().a){case 0:case 1:s.Ro() +break +case 2:s.po(!1) +break +case 3:case 4:case 5:s.jD() +break}}, +$S:0} +A.bEG.prototype={ +$0(){switch(A.bL().a){case 0:case 2:case 1:this.a.Ak(B.bk) +break +case 3:case 4:case 5:var s=this.a +s.a04() +s.jD() +break}}, +$S:0} +A.agw.prototype={ +jE(a,b){var s=this.b +if(s!=null)return s.fI(a) +return this.Nq(a,b)}, +fI(a){return this.jE(a,null)}} +A.aW8.prototype={ +Nq(a,b){this.r.Ak(B.bj)}} +A.aMx.prototype={ +Nq(a,b){this.r.JK()}} +A.B2.prototype={ +Nq(a,b){this.r.amL(this.w,a.a)}} +A.v5.prototype={ +Nq(a,b){if(a.b)return +this.r.amL(this.w,a.a)}} +A.aee.prototype={ +Nq(a,b){if(a.b)return +this.r.b_v(a.a)}} +A.ais.prototype={ +F(a,b){this.dx.F(0,b) +this.dy.F(0,b) +this.aPf(0,b)}, +atP(){var s,r,q,p,o=this,n=o.d +if(n!==-1&&J.lo(o.b[n]).c!==B.eL){s=o.b[o.d] +r=s.gj(s).a.a.S(0,new A.j(0,-s.gj(s).a.b/2)) +o.fr=A.cK(s.cf(0,null),r)}n=o.c +if(n!==-1&&J.lo(o.b[n]).c!==B.eL){q=o.b[o.c] +p=q.gj(q).b.a.S(0,new A.j(0,-q.gj(q).b.b/2)) +o.fx=A.cK(q.cf(0,null),p)}}, +Xb(a){var s,r,q,p,o,n,m=this,l=m.agR(a) +for(s=m.b,r=s.length,q=m.dx,p=m.dy,o=0;oMath.min(n,l))k.yW(m) +m.a3(0,j) +B.b.B(k.b,m);++p}}k.c=q +k.d=r +k.Q=A.b9(t.x9)}, +W6(){this.TE()}, +gj(a){return this.at}, +TE(){var s=this,r=s.aJi() +if(!s.at.l(0,r)){s.at=r +s.ab()}s.atM()}, +alX(a){var s,r=B.b.ga2(a.gFA()) +for(s=1;s=r +while(!0){if(!(r!==d.c&&s.a==null))break +r+=q?1:-1 +s=J.lo(d.b[r])}b=s.a +if(b!=null){p=d.b[r] +o=d.a.gai() +o.toString +n=A.cK(p.cf(0,t.x.a(o)),b.a) +m=isFinite(n.a)&&isFinite(n.b)?new A.M0(n,b.b,b.c):c}else m=c +l=J.lo(d.b[d.c]) +k=d.c +while(!0){if(!(k!==d.d&&l.b==null))break +k+=q?-1:1 +l=J.lo(d.b[k])}b=l.b +if(b!=null){p=d.b[k] +o=d.a.gai() +o.toString +j=A.cK(p.cf(0,t.x.a(o)),b.a) +i=isFinite(j.a)&&isFinite(j.b)?new A.M0(j,b.b,b.c):c}else i=c +h=A.a([],t.AO) +g=d.gaAy()?new A.W(0,0,0+d.gVK().a,0+d.gVK().b):c +for(f=d.d;f<=d.c;++f){e=J.lo(d.b[f]).d +b=new A.O(e,new A.btR(d,f,g),A.X(e).h("O<1,W>")).r2(0,new A.btS()) +B.b.L(h,A.R(b,!0,b.$ti.h("B.E")))}return new A.ox(m,i,!s.l(0,l)?B.pY:s.c,h,!0)}, +aik(a,b){var s=b>a +while(!0){if(!(a!==b&&J.lo(this.b[a]).c!==B.pY))break +a+=s?1:-1}return a}, +pG(a,b){var s=this +if(s.e==a&&s.r==b)return +s.e=a +s.r=b +s.atM()}, +atM(){var s,r,q,p,o,n=this,m=null,l=n.e,k=n.r +if(l!=null||k!=null){s=n.gaAy()?new A.W(0,0,0+n.gVK().a,0+n.gVK().b).fH(5):m +r=n.at.a +q=r==null||s==null||!s.p(0,r.a) +r=n.at.b +p=r==null||s==null||!s.p(0,r.a) +l=q?m:n.e +k=p?m:n.r}r=n.d +if(r===-1||n.c===-1){r=n.f +if(r!=null){r.pG(m,m) +n.f=null}r=n.w +if(r!=null){r.pG(m,m) +n.w=null}return}if(!J.q(n.b[r],n.f)){r=n.f +if(r!=null)r.pG(m,m)}if(!J.q(n.b[n.c],n.w)){r=n.w +if(r!=null)r.pG(m,m)}r=n.b +o=n.d +r=n.f=r[o] +if(o===n.c){n.w=r +r.pG(l,k) +return}r.pG(l,m) +r=n.b[n.c] +n.w=r +r.pG(m,k)}, +xb(){var s,r,q,p,o=A.a([],t.WU) +for(s=this.b,r=s.length,q=0;q")).aE(0,new A.btP(p)) +return}n=p.c +s=Math.min(o,n) +r=Math.max(o,n) +for(q=0;n=p.b,q=s&&q<=r)continue +p.mb(n[q],B.mH)}}, +Xb(a){var s,r,q,p=this +for(s=p.b,r=s.length,q=0;q")).aE(0,new A.btU(j)) +j.d=j.c=q}return B.cK}else if(r===B.cJ){j.d=j.c=q-1 +return B.cK}}return B.cK}, +X5(a){var s,r,q,p=this +for(s=p.b,r=s.length,q=0;q0&&r===B.dg))break;--s +r=p.mb(p.b[s],a)}if(o)p.c=s +else p.d=s +return r}, +aaJ(a){var s,r,q,p=this,o=p.d +if(o===-1){switch(a.d.a){case 0:case 3:o=p.b.length +p.d=p.c=o +break +case 1:case 2:p.d=p.c=0 +o=0 +break}s=o}else s=o +o=a.c +if(o)s=p.c +r=p.mb(p.b[s],a) +switch(a.d.a){case 0:if(r===B.dg)if(s>0){--s +r=p.mb(p.b[s],a.axp(B.bkR))}break +case 1:if(r===B.cJ){q=p.b +if(s=0&&c==null))break +b=f.b=a.mb(a1[d],a4) +switch(b.a){case 2:case 3:case 4:c=b +break +case 0:if(e===!1){++d +c=B.cK}else if(d===a.b.length-1)c=b +else{++d +e=!0}break +case 1:if(e===!0){--d +c=B.cK}else if(d===0)c=b +else{--d +e=!1}break}}if(a5)a.c=d +else a.d=d +a.alM() +c.toString +return c}, +bqP(a,b){return this.gbqO().$2(a,b)}} +A.btQ.prototype={ +$1(a){var s=this.a +if(!s.y)return +s.y=!1 +if(s.Q.a!==0)s.b1e() +s.W6()}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +$S:295} +A.btR.prototype={ +$1(a){var s,r=this.a,q=r.b[this.b] +r=r.a.gai() +r.toString +s=A.io(q.cf(0,t.x.a(r)),a) +r=this.c +if(r!=null)return r.jZ(s) +return s}, +$S:341} +A.btS.prototype={ +$1(a){return a.gNt(0)&&!a.gad(0)}, +$S:814} +A.btO.prototype={ +$1(a){return a!==this.a.b[this.b]}, +$S:162} +A.btP.prototype={ +$1(a){return this.a.mb(a,B.mH)}, +$S:68} +A.btT.prototype={ +$1(a){return a!==this.a.b[this.b]}, +$S:162} +A.btU.prototype={ +$1(a){return this.a.mb(a,B.mH)}, +$S:68} +A.aRZ.prototype={} +A.aWc.prototype={} +A.M_.prototype={ +J(){return new A.aWf(A.b9(t.O),null,!1,B.f)}} +A.aWf.prototype={ +a8(){var s,r,q,p=this +p.an() +s=p.a +r=s.e +if(r!=null){q=p.c +q.toString +r.a=q +s=s.c +if(s!=null)p.swQ(s)}}, +b1(a){var s,r,q,p,o,n=this +n.bc(a) +s=a.e +if(s!=n.a.e){r=s==null +if(!r){s.a=null +n.d.aE(0,s.gaEF(s))}q=n.a.e +if(q!=null){p=n.c +p.toString +q.a=p +n.d.aE(0,q.gLq(q))}s=r?null:s.at +r=n.a.e +if(!J.q(s,r==null?null:r.at))for(s=n.d,s=A.R(s,!1,A.z(s).h("cZ.E")),r=s.length,o=0;o").b(b)&&A.BH(b.a,this.a)}, +gv(a){var s,r=this,q=r.b +if(q===$){s=A.d8N(r.a) +r.b!==$&&A.a_() +r.b=s +q=s}return q}} +A.ax9.prototype={ +gaFQ(){return this.gath()}, +gath(){var s,r,q,p=this,o=p.c +if(o===$){s=p.a.jq(0) +r=A.z(s).h("eE") +q=A.hh(new A.eE(s,new A.bpv(),r),r.h("B.E")) +p.c!==$&&A.a_() +p.c=q +o=q}return o}, +auM(a,b){var s,r,q +if(!(a instanceof A.rx)&&!(a instanceof A.DS))return!1 +if(this.gath().p(0,a.b)){s=b.a.gbm(0) +s=A.hh(s,A.z(s).h("B.E")) +r=A.cJx(this.a.jq(0)) +q=A.cJx(s) +if(r.a===q.a){s=r.w6(q) +s=s.gad(s)}else s=!1}else s=!1 +return s}, +$iFh:1} +A.bpv.prototype={ +$1(a){var s=$.cWD().i(0,a) +return s==null?A.a([a],t.w3):s}, +$S:815} +A.ce.prototype={ +gaFQ(){return A.a([this.a],t.w3)}, +auM(a,b){var s,r,q=this +if(!(a instanceof A.rx))s=a instanceof A.DS +else s=!0 +if(s)if(B.b.p(A.a([q.a],t.w3),a.b)){s=b.a.gbm(0) +s=A.hh(s,A.z(s).h("B.E")) +r=s.pq(0,$.cZw()) +if(q.b===r.gcU(r)){r=s.pq(0,$.d_I()) +if(q.c===r.gcU(r)){r=s.pq(0,$.cZm()) +if(q.d===r.gcU(r)){s=s.pq(0,$.d_n()) +s=q.e===s.gcU(s)}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +return s}, +$iFh:1} +A.G2.prototype={} +A.V2.prototype={ +sxo(a){var s=this +if(!A.Zl(s.b,a)){s.b=a +s.c=null +s.ab()}}, +ganE(){var s=this.c +return s==null?this.c=A.ddr(this.b):s}, +b13(a,b){var s,r,q,p=this.ganE().i(0,a.b) +if(p==null)p=A.a([],t.Na) +p=A.R(p,!0,t.K2) +s=this.ganE().i(0,null) +B.b.L(p,s==null?A.a([],t.Na):s) +s=p.length +r=0 +for(;rq.gSG()){o=q.N +s=q.gSG() +r=q.N.at +r.toString +o.FU(s-r)}else{o=q.N +s=o.at +s.toString +if(s<0)o.FU(0-s)}q.N.vQ(q.gblo()) +q.N.ri(0,q.gSG())}, +KD(a){var s=this +switch(s.D.a){case 0:return new A.j(0,a-s.k1$.gu(0).b+s.gu(0).b) +case 2:return new A.j(0,-a) +case 3:return new A.j(a-s.k1$.gu(0).a+s.gu(0).a,0) +case 1:return new A.j(-a,0)}}, +arY(a){var s,r,q=this +switch(q.a4.a){case 0:return!1 +case 1:case 2:case 3:s=a.a +if(!(s<0)){r=a.b +s=r<0||s+q.k1$.gu(0).a>q.gu(0).a||r+q.k1$.gu(0).b>q.gu(0).b}else s=!0 +return s}}, +aI(a,b){var s,r,q,p,o,n=this +if(n.k1$!=null){s=n.N.at +s.toString +r=n.KD(s) +s=new A.ccq(n,r) +q=n.ag +if(n.arY(r)){p=n.cx +p===$&&A.b() +o=n.gu(0) +q.sb9(0,a.nV(p,b,new A.W(0,0,0+o.a,0+o.b),s,n.a4,q.a))}else{q.sb9(0,null) +s.$2(a,b)}}}, +m(){this.ag.sb9(0,null) +this.ig()}, +hh(a,b){var s,r=this.N.at +r.toString +s=this.KD(r) +b.ba(0,s.a,s.b)}, +rq(a){var s=this,r=s.N.at +r.toString +r=s.arY(s.KD(r)) +if(r){r=s.gu(0) +return new A.W(0,0,0+r.a,0+r.b)}return null}, +ej(a,b){var s,r=this +if(r.k1$!=null){s=r.N.at +s.toString +return a.l5(new A.ccp(r,b),r.KD(s),b)}return!1}, +qR(a,b,c,d){var s,r,q,p,o,n,m,l=this +A.cO(l.D) +if(d==null)d=a.gpA() +if(!(a instanceof A.J)){s=l.N.at +s.toString +return new A.uk(s,d)}r=A.io(a.cf(0,l.k1$),d) +q=l.k1$.gu(0) +switch(l.D.a){case 0:p=l.gu(0).b +s=r.d +o=q.b-s +n=s-r.b +break +case 1:p=l.gu(0).a +o=r.a +n=r.c-o +break +case 2:p=l.gu(0).b +o=r.b +n=r.d-o +break +case 3:p=l.gu(0).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.uk(m,r.eD(l.KD(m)))}, +Iw(a,b,c){return this.qR(a,b,null,c)}, +PJ(a,b){return this.qR(a,b,null,null)}, +fY(a,b,c,d){var s=this +if(!s.N.r.gvO())return s.xw(a,b,c,d) +s.xw(a,null,c,A.cLF(a,b,c,s.N,d,s))}, +r0(){return this.fY(B.az,null,B.w,null)}, +oL(a){return this.fY(B.az,null,B.w,a)}, +pQ(a,b,c){return this.fY(a,null,b,c)}, +oM(a,b){return this.fY(B.az,a,B.w,b)}, +a9r(a){var s,r,q=this,p=q.gSG(),o=q.N.at +o.toString +s=p-o +switch(q.D.a){case 0:q.gu(0) +q.gu(0) +p=q.gu(0) +o=q.gu(0) +r=q.N.at +r.toString +return new A.W(0,0-s,0+p.a,0+o.b+r) +case 1:q.gu(0) +p=q.N.at +p.toString +q.gu(0) +return new A.W(0-p,0,0+q.gu(0).a+s,0+q.gu(0).b) +case 2:q.gu(0) +q.gu(0) +p=q.N.at +p.toString +return new A.W(0,0-p,0+q.gu(0).a,0+q.gu(0).b+s) +case 3:q.gu(0) +q.gu(0) +p=q.gu(0) +o=q.N.at +o.toString +return new A.W(0-s,0,0+p.a+o,0+q.gu(0).b)}}, +$iEV:1} +A.ccq.prototype={ +$2(a,b){var s=this.a.k1$ +s.toString +a.eM(s,b.S(0,this.b))}, +$S:14} +A.ccp.prototype={ +$2(a,b){return this.a.k1$.es(a,b)}, +$S:19} +A.alm.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.b0L.prototype={} +A.b0M.prototype={} +A.aEX.prototype={} +A.Am.prototype={ +dv(a){return A.cMi(this,!1)}, +aa4(a,b,c,d,e){return null}} +A.Ml.prototype={ +dv(a){return A.cMi(this,!0)}, +aR(a){var s=new A.aDa(t.dq.a(a),A.N(t.S,t.x),0,null,null,A.aw(t.T)) +s.aQ() +return s}} +A.bGC.prototype={ +$2(a,b){var s=B.d.aD(b,2) +return(b&1)===0?this.a.$2(a,s):this.b.$2(a,s)}, +$S:330} +A.bGD.prototype={ +$2(a,b){return(b&1)===0?B.d.aD(b,2):null}, +$S:331} +A.a9Q.prototype={ +aR(a){var s=new A.aD9(this.f,t.dq.a(a),A.N(t.S,t.x),0,null,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){b.saJw(this.f)}, +aa4(a,b,c,d,e){var s,r +this.aQK(a,b,c,d,e) +s=this.f.PI(a) +r=this.d.gnM() +r.toString +r=s.axf(r) +return r}} +A.Va.prototype={ +gai(){return t.Ss.a(A.bO.prototype.gai.call(this))}, +cI(a,b){var s,r,q=this.e +q.toString +t.M0.a(q) +this.nw(0,b) +s=b.d +r=q.d +if(s!==r)q=A.I(s)!==A.I(r)||s.IR(r) +else q=!1 +if(q)this.nf()}, +nf(){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.E5() +a.p1=null +a1.a=!1 +try{i=t.S +s=A.bGQ(i,t.Dv) +r=A.hg(a0,a0,a0,i,t.i) +i=a.e +i.toString +q=t.M0.a(i) +p=new A.bGJ(a1,a,s,q,r) +for(i=a.ok,h=i.$ti,h=h.h("@<1>").a1(h.h("nD<1,2>")).h("Bj<1,2>"),h=A.R(new A.Bj(i,h),!0,h.h("B.E")),g=h.length,f=t.MR,e=a.k4,d=0;d").a1(g.h("nD<1,2>")).h("Bj<1,2>")).aE(0,p) +if(!a1.a&&a.p3){b=i.abB() +k=b==null?-1:b +j=k+1 +J.id(s,j,i.i(0,j)) +p.$1(j)}}finally{a.p2=null +a.gai()}}, +a8W(a,b){this.f.vU(this,new A.bGG(this,b,a))}, +he(a,b,c){var s,r,q,p,o=null +if(a==null)s=o +else{s=a.gai() +s=s==null?o:s.b}r=t.MR +r.a(s) +q=this.agA(a,b,c) +if(q==null)p=o +else{p=q.gai() +p=p==null?o:p.b}r.a(p) +if(s!=p&&s!=null&&p!=null)p.a=s.a +return q}, +lH(a){this.ok.F(0,a.c) +this.mA(a)}, +Zk(a){var s,r=this +r.gai() +s=a.b +s.toString +s=t.c.a(s).b +s.toString +r.f.vU(r,new A.bGK(r,s))}, +aa5(a,b,c,d,e){var s,r,q=this.e +q.toString +s=t.M0 +r=s.a(q).d.gnM() +if(r==null)return 1/0 +q=this.e +q.toString +s.a(q) +d.toString +q=q.aa4(a,b,c,d,e) +return q==null?A.ddG(b,c,d,e,r):q}, +gqb(){var s,r,q,p,o,n,m=this,l=m.e +l.toString +s=t.M0 +r=s.a(l).d.gnM() +if(r==null){l=m.e +l.toString +for(l=s.a(l).d,q=0,p=1;o=p-1,l.hO(m,o)!=null;q=o)if(p<4503599627370496)p*=2 +else{if(p>=9007199254740992)throw A.d(A.Ds("Could not find the number of children in "+l.k(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.d.aD(s,2)+q +if(l.hO(m,n-1)==null)p=n +else q=n}r=q}return r}, +BY(){var s=this.ok +s.azO() +s.abB() +s=this.e +s.toString +t.M0.a(s)}, +a9t(a){var s=a.b +s.toString +t.c.a(s).b=this.p2}, +mj(a,b){this.gai().a0D(0,t.x.a(a),this.p1)}, +mn(a,b,c){this.gai().NW(t.x.a(a),this.p1)}, +ni(a,b){this.gai().F(0,t.x.a(a))}, +d0(a){var s=this.ok,r=s.$ti +r=r.h("@<1>").a1(r.y[1]).h("O9<1,2>") +r=A.fw(new A.O9(s,r),r.h("B.E"),t.lU) +B.b.aE(A.R(r,!0,A.z(r).h("B.E")),a)}} +A.bGJ.prototype={ +$1(a){var s,r,q,p,o=this,n=o.b +n.p2=a +q=n.ok +if(q.i(0,a)!=null&&!J.q(q.i(0,a),o.c.i(0,a))){q.n(0,a,n.he(q.i(0,a),null,a)) +o.a.a=!0}s=n.he(o.c.i(0,a),o.d.d.hO(n,a),a) +if(s!=null){p=o.a +p.a=p.a||!J.q(q.i(0,a),s) +q.n(0,a,s) +q=s.gai().b +q.toString +r=t.c.a(q) +if(a===0)r.a=0 +else{q=o.e +if(q.aB(0,a))r.a=q.i(0,a)}if(!r.c)n.p1=t.Qv.a(s.gai())}else{o.a.a=!0 +q.F(0,a)}}, +$S:12} +A.bGH.prototype={ +$0(){return null}, +$S:13} +A.bGI.prototype={ +$0(){return this.a.ok.i(0,this.b)}, +$S:820} +A.bGG.prototype={ +$0(){var s,r,q,p=this,o=p.a +o.p1=p.b==null?null:t.Qv.a(o.ok.i(0,p.c-1).gai()) +s=null +try{q=o.e +q.toString +r=t.M0.a(q) +q=o.p2=p.c +s=o.he(o.ok.i(0,q),r.d.hO(o,q),q)}finally{o.p2=null}q=p.c +o=o.ok +if(s!=null)o.n(0,q,s) +else o.F(0,q)}, +$S:0} +A.bGK.prototype={ +$0(){var s,r,q,p=this +try{r=p.a +q=r.p2=p.b +s=r.he(r.ok.i(0,q),null,q)}finally{p.a.p2=null}p.a.ok.F(0,p.b)}, +$S:0} +A.a4I.prototype={ +tX(a){var s,r,q=a.b +q.toString +t.Cl.a(q) +s=this.f +if(q.Gq$!==s){q.Gq$=s +r=a.gbR(a) +if(r instanceof A.H&&!s)r.a9()}}} +A.aEP.prototype={ +q(a){var s=this,r=s.d?A.Z(1-s.c,0,1)/2:0 +return new A.aWT(r,new A.aWQ(s.c,s.e,null),null)}} +A.aWQ.prototype={ +aR(a){var s=new A.aD6(this.f,t.dq.a(a),A.N(t.S,t.x),0,null,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){b.sPc(this.f)}} +A.aWT.prototype={ +aR(a){var s=new A.aVd(this.e,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){b.sPc(this.e)}} +A.aVd.prototype={ +sPc(a){var s=this +if(s.dr===a)return +s.dr=a +s.dQ=null +s.a9()}, +gj5(){return this.dQ}, +bix(){var s,r,q=this +if(q.dQ!=null&&J.q(q.eX,t.q.a(A.H.prototype.gZ.call(q))))return +s=t.q +r=s.a(A.H.prototype.gZ.call(q)).y*q.dr +q.eX=s.a(A.H.prototype.gZ.call(q)) +switch(A.cO(s.a(A.H.prototype.gZ.call(q)).a).a){case 0:q.dQ=new A.af(r,0,r,0) +break +case 1:q.dQ=new A.af(0,r,0,r) +break}return}, +bJ(){this.bix() +this.aho()}} +A.aEO.prototype={ +q(a){return new A.aWP(this.c,null)}} +A.aWP.prototype={ +aR(a){var s=new A.aD5(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.bGL.prototype={} +A.aEV.prototype={ +q(a){var s=this,r=null,q=s.e +if(q&&s.d)return new A.aWS(s.c,!0,r) +if(s.d)return new A.aX_(s.c,!1,r) +if(q)return new A.aWR(s.c,!0,r) +return new A.aX0(s.c,!1,r)}} +A.aeM.prototype={ +J(){return new A.aeN(B.f)}} +A.aeN.prototype={ +c5(){var s,r=this +r.dH() +s=r.d +if(s!=null)s.dy.O(0,r.ga44()) +s=r.c +s.toString +s=A.lI(s) +if(s==null)s=null +else{s=s.d +s.toString}r.d=s +if(s!=null)s.dy.a3(0,r.ga44())}, +m(){var s=this.d +if(s!=null)s.dy.O(0,this.ga44()) +this.ap()}, +b8e(){var s,r=this.c.rA(t.TN),q=this.d +if(q.dy.a){s=r==null +if(!s)r.hi=q.gDk() +if(!s){this.d.gDk() +r=r.eT +if(r!=null)r.e3(0)}}else if(r!=null)r.bAY(q.gDk())}, +q(a){return this.a.c}} +A.aWY.prototype={ +gai(){return t.ul.a(A.bO.prototype.gai.call(this))}, +iF(a,b){this.r4(a,b) +t.ul.a(A.bO.prototype.gai.call(this)).or$=this}, +oH(){t.ul.a(A.bO.prototype.gai.call(this)).or$=null +this.a0X()}, +cI(a,b){var s,r,q=this.e +q.toString +t.Mh.a(q) +this.nw(0,b) +s=b.c +r=q.c +if(s!==r)if(A.I(s)===A.I(r))if(s.b===r.b)if(J.q(s.c,r.c))if(J.q(s.d,r.d))if(J.q(s.e,r.e))if(J.q(s.f,r.f))if(s.k3===r.k3)if(J.q(s.Q,r.Q))if(s.cy==r.cy)if(s.dx===r.dx)if(s.fr===r.fr)if(s.dy===r.dy)if(s.p2===r.p2)if(s.p3==r.p3)if(s.p4==r.p4)if(s.R8==r.R8)if(s.z===r.z)if(s.fy===r.fy)if(J.q(s.k1,r.k1))q=!1 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!0 +else q=!1 +if(q)t.ul.a(A.bO.prototype.gai.call(this)).a9()}, +nf(){this.E5() +t.ul.a(A.bO.prototype.gai.call(this)).a9()}, +biB(a,b){this.f.vU(this,new A.cfr(this,a,b))}, +lH(a){this.ok=null +this.mA(a)}, +mj(a,b){t.ul.a(A.bO.prototype.gai.call(this)).sbq(a)}, +mn(a,b,c){}, +ni(a,b){t.ul.a(A.bO.prototype.gai.call(this)).sbq(null)}, +d0(a){var s=this.ok +if(s!=null)a.$1(s)}} +A.cfr.prototype={ +$0(){var s,r,q,p=this.a,o=p.e +o.toString +t.Mh.a(o) +s=p.ok +r=this.b +q=this.c +o=o.c +p.ok=p.he(s,p.k4?new A.aeM(o.Ve(p,r,q),null):o.Ve(p,r,q),null)}, +$S:0} +A.Bi.prototype={ +dv(a){return new A.aWY(this.d,this,B.aD)}} +A.v9.prototype={ +gbB8(){var s=this.or$.e +s.toString +return t.Mh.a(s).c.db}, +glI(){var s=this.or$.e +s.toString +return t.Mh.a(s).c.glI()}, +aFY(a,b){this.or$.biB(a,b)}} +A.aX0.prototype={ +aR(a){var s=new A.aVi(null,this.c.p4,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.dd=this.c.p4}} +A.aVi.prototype={} +A.aX_.prototype={ +aR(a){var s=new A.aVh(null,this.c.p4,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.dd=this.c.p4}} +A.aVh.prototype={} +A.aWR.prototype={ +aR(a){var s=this.c +s=new A.aVb(null,s.p2,s.p3,s.R8,s.p4,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s=this.c +b.sI9(s.p2) +b.aS=s.p3 +b.dd=s.p4 +b.cZ=s.R8}} +A.aVc.prototype={} +A.aWS.prototype={ +aR(a){var s=this.c +s=new A.aVc(null,s.p2,s.p3,s.R8,s.p4,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s=this.c +b.sI9(s.p2) +b.aS=s.p3 +b.dd=s.p4 +b.cZ=s.R8}} +A.aVb.prototype={} +A.b0t.prototype={} +A.b0u.prototype={} +A.b0v.prototype={} +A.b0w.prototype={} +A.a9S.prototype={} +A.mx.prototype={ +dv(a){var s=A.z(this),r=t.lU +return new A.a9T(A.N(s.h("mx.0"),r),A.N(t.D2,r),this,B.aD,s.h("@").a1(s.h("mx.1")).h("a9T<1,2>"))}} +A.t_.prototype={ +geg(a){return this.fa$.gbm(0)}, +lN(){J.iK(this.geg(this),this.gad9())}, +d0(a){J.iK(this.geg(this),a)}, +TH(a,b){var s=this.fa$,r=s.i(0,b) +if(r!=null){this.oo(r) +s.F(0,b)}if(a!=null){s.n(0,b,a) +this.lB(a)}}} +A.a9T.prototype={ +gai(){return this.$ti.h("t_<1,2>").a(A.bO.prototype.gai.call(this))}, +d0(a){this.k4.gbm(0).aE(0,a)}, +lH(a){this.k4.F(0,a.c) +this.mA(a)}, +iF(a,b){this.r4(a,b) +this.atv()}, +cI(a,b){this.nw(0,b) +this.atv()}, +atv(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=f.e +e.toString +s=f.$ti +s.h("mx<1,2>").a(e) +r=f.ok +q=t.lU +f.ok=A.N(t.D2,q) +p=f.k4 +s=s.c +f.k4=A.N(s,q) +for(q=e.ga0t(),o=q.length,n=0;n").a(A.bO.prototype.gai.call(this)).TH(a,b)}, +ni(a,b){var s=this.$ti.h("t_<1,2>") +if(s.a(A.bO.prototype.gai.call(this)).fa$.i(0,b)===a)s.a(A.bO.prototype.gai.call(this)).TH(null,b)}, +mn(a,b,c){var s=this.$ti.h("t_<1,2>").a(A.bO.prototype.gai.call(this)) +if(s.fa$.i(0,b)===a)s.TH(null,b) +s.TH(a,c)}} +A.aiI.prototype={ +b_(a,b){return this.a0Y(a,b)}} +A.aF0.prototype={ +H(){return"SnapshotMode."+this.b}} +A.a9U.prototype={ +sUW(a){return}} +A.aF2.prototype={ +aR(a){var s=new A.Yo(A.bC(a,B.ev,t.l).w.b,this.w,this.e,this.f,!0,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){t.mW.a(b) +b.sBM(0,this.e) +b.sk_(0,this.f) +b.sqi(0,A.bC(a,B.ev,t.l).w.b) +b.sCR(this.w) +b.sbng(!0)}} +A.Yo.prototype={ +sqi(a,b){var s,r=this +if(b===r.G)return +r.G=b +s=r.eY +if(s==null)return +else{s.m() +r.eY=null +r.aV()}}, +sCR(a){var s,r=this,q=r.ac +if(a===q)return +s=r.gfk() +q.O(0,s) +r.ac=a +if(A.I(q)!==A.I(r.ac)||r.ac.hC(q))r.aV() +if(r.y!=null)r.ac.a3(0,s)}, +sBM(a,b){var s,r=this,q=r.aS +if(b===q)return +s=r.gSV() +q.O(0,s) +r.aS=b +if(r.y!=null)b.a3(0,s)}, +sk_(a,b){if(b===this.cZ)return +this.cZ=b +this.aV()}, +sbng(a){return}, +aA(a){var s=this +s.aS.a3(0,s.gSV()) +s.ac.a3(0,s.gfk()) +s.Av(a)}, +ar(a){var s,r=this +r.jY=!1 +r.aS.O(0,r.gSV()) +r.ac.O(0,r.gfk()) +s=r.eY +if(s!=null)s.m() +r.i9=r.eY=null +r.vm(0)}, +m(){var s,r=this +r.aS.O(0,r.gSV()) +r.ac.O(0,r.gfk()) +s=r.eY +if(s!=null)s.m() +r.i9=r.eY=null +r.ig()}, +bbX(){var s,r=this +r.jY=!1 +s=r.eY +if(s!=null)s.m() +r.i9=r.eY=null +r.aV()}, +aI(a,b){var s,r=this +if(r.gu(0).gad(0)){s=r.eY +if(s!=null)s.m() +r.i9=r.eY=null +return}s=r.eY +if(s!=null)s.m() +r.i9=r.eY=null +r.ac.zJ(a,b,r.gu(0),A.l4.prototype.gk0.call(r)) +return}} +A.aF1.prototype={} +A.ae9.prototype={ +a3(a,b){}, +m(){}, +O(a,b){}, +$iaC:1} +A.aFb.prototype={ +q(a){return A.f7(B.ap,1,null)}} +A.a9W.prototype={ +bsz(a,b,c,d){var s=this +if(!s.e)return B.lU +return new A.a9W(c,s.b,s.c,s.d,!0)}, +brU(a){return this.bsz(null,null,a,null)}, +k(a){var s=this +return B.c.du(" spell check enabled : "+s.e+"\n spell check service : "+A.r(s.a)+"\n misspelled text style : "+A.r(s.c)+"\n spell check suggestions toolbar builder: "+A.r(s.d)+"\n")}, +l(a,b){var s +if(b==null)return!1 +if(this===b)return!0 +if(b instanceof A.a9W)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.ad(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.aa7.prototype={ +J(){return new A.aiW(B.f)}} +A.aiW.prototype={ +a8(){this.an() +this.a.c.je(this.ga1t())}, +b1(a){var s,r,q=this +q.bc(a) +s=a.c +if(q.a.c!==s){r=q.ga1t() +s.fW(r) +q.a.c.je(r)}}, +m(){this.a.c.fW(this.ga1t()) +this.ap()}, +aW2(a){this.C(new A.cfI())}, +q(a){var s=this.a +return s.lC(a,s.f)}} +A.cfI.prototype={ +$0(){}, +$S:0} +A.kq.prototype={ +k(a){var s=A.r(this.c) +s=""+"TableRow("+s+")" +return s.charCodeAt(0)==0?s:s}} +A.pL.prototype={} +A.aaD.prototype={ +dv(a){return new A.aXL(B.aNa,A.dV(t.lU),this,B.aD)}, +aR(a){var s,r,q,p,o=null,n=this.c,m=n.length +if(m!==0){n[0].toString +n=2}else n=0 +s=this.d +r=a.a0(t.I) +r.toString +r=r.w +q=A.GL(a,o) +p=A.a([],t.n) +if(s==null)s=A.hg(o,o,o,t.S,t.PA) +p=new A.Ui(B.aN9,n,m,s,B.ul,r,o,q,B.YQ,o,p,A.aw(t.T)) +p.aQ() +q=A.a([],t.iG) +B.b.sA(q,p.N*p.a4) +p.D=q +p.saFf(this.y) +return p}, +b_(a,b){var s,r=null +b.sbqC(this.d) +b.sbtu(B.ul) +s=a.a0(t.I) +s.toString +b.sd5(s.w) +b.sbnB(0,r) +b.saFf(this.y) +b.su7(A.GL(a,r)) +b.sbtw(B.YQ) +b.sHP(0,r)}} +A.bJV.prototype={ +$1(a){return!1}, +$S:821} +A.bJW.prototype={ +$1(a){return null}, +$S:822} +A.aXL.prototype={ +gai(){return t.Jc.a(A.bO.prototype.gai.call(this))}, +iF(a,b){var s,r,q=this,p={} +q.ok=!0 +q.r4(a,b) +p.a=-1 +s=q.e +s.toString +s=t.On.a(s).c +r=A.X(s).h("O<1,pL>") +q.k4=A.R(new A.O(s,new A.chD(p,q),r),!1,r.h("aa.E")) +q.atY() +q.ok=!1}, +mj(a,b){var s=t.Jc +s.a(A.bO.prototype.gai.call(this)) +if(!(a.b instanceof A.Fu))a.b=new A.Fu(B.h) +if(!this.ok)s.a(A.bO.prototype.gai.call(this)).afw(b.a,b.b,a)}, +mn(a,b,c){}, +ni(a,b){t.Jc.a(A.bO.prototype.gai.call(this)).afw(b.a,b.b,null)}, +cI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +e.ok=!0 +s=t.r_ +for(r=e.k4,q=r.length,p=0;p")) +n=A.a([],t.fd) +for(r=b.c,m=e.p1,l=t.PO,k=0;k"));r.t();)e.a__(q.gK(0),B.hK,m) +e.k4=n +e.atY() +m.V(0) +e.nw(0,b) +e.ok=!1}, +atY(){var s=t.Jc.a(A.bO.prototype.gai.call(this)),r=this.k4,q=r.length!==0?r[0].b.length:0,p=A.X(r).h("eE<1,J>") +s.aKV(q,A.R(new A.eE(r,new A.chB(),p),!0,p.h("B.E")))}, +d0(a){var s,r,q,p +for(s=this.k4,r=A.X(s),r=r.h("@<1>").a1(r.h("bJ")),s=new A.De(B.b.gaz(s),new A.chG(),B.mA,r.h("De<1,2>")),q=this.p1,r=r.y[1];s.t();){p=s.d +if(p==null)p=r.a(p) +if(!q.p(0,p))a.$1(p)}}, +lH(a){this.p1.B(0,a) +this.mA(a) +return!0}} +A.chD.prototype={ +$1(a){var s,r,q,p={} +p.a=0 +s=this.a;++s.a +r=a.c +q=A.X(r).h("O<1,bJ>") +return new A.pL(null,A.R(new A.O(r,new A.chC(p,s,this.b),q),!1,q.h("aa.E")))}, +$S:823} +A.chC.prototype={ +$1(a){return this.c.GL(a,new A.YR(this.a.a++,this.b.a))}, +$S:824} +A.chE.prototype={ +$1(a){return!0}, +$S:825} +A.chF.prototype={ +$1(a){return!this.a.p(0,a)}, +$S:826} +A.chB.prototype={ +$1(a){var s=a.b +return new A.O(s,new A.chA(),A.X(s).h("O<1,J>"))}, +$S:827} +A.chA.prototype={ +$1(a){var s=a.gai() +s.toString +return t.x.a(s)}, +$S:828} +A.chG.prototype={ +$1(a){return a.b}, +$S:829} +A.YR.prototype={ +l(a,b){if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +return b instanceof A.YR&&this.a===b.a&&this.b===b.b}, +gv(a){return A.ad(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.b0X.prototype={} +A.aFT.prototype={ +aR(a){var s=new A.a8m(new A.tQ(new WeakMap(),null,t.Py),A.b9(t.Cn),A.N(t.X,t.hh),B.cE,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){}} +A.a8m.prototype={ +ZX(a){var s +this.iB.F(0,a) +s=this.eF +s.i(0,a.eS).F(0,a) +if(s.i(0,a.eS).a===0)s.F(0,a.eS)}, +es(a,b){var s,r,q=this +if(!q.gu(0).p(0,b))return!1 +s=q.ej(a,b)||q.G===B.be +if(s){r=new A.y7(b,q) +q.eK.n(0,r,a) +a.B(0,r)}return s}, +n8(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(!t.pY.b(a))return +s=j.iB +if(s.a===0)return +A.fT(b) +r=j.eK.a.get(b) +if(r==null)return +q=j.b2u(s,r.a) +p=t.Cn +o=A.a9s(q,q.gEN(),A.z(q).c,p).ai2() +n=A.b9(p) +for(q=o.gaz(o),p=j.eF;q.t();){m=q.gK(q) +m=p.i(0,m.eS) +m.toString +n.L(0,m)}l=s.w6(n) +for(s=l.gaz(l),k=!1;s.t();){q=s.gK(s) +if(q.eG)k=!0 +q=q.iB +if(q!=null)q.$1(a)}for(s=A.dy(n,n.r,n.$ti.c),q=s.$ti.c;s.t();){p=s.d +if(p==null)q.a(p)}if(k){s=$.ii.e8$.rh(0,a.gcG(),new A.aO1()) +s.a.ny(s.b,s.c,B.cD)}}, +b2u(a,b){var s,r,q,p,o=A.b9(t.zE) +for(s=b.length,r=this.iB,q=0;q1)return +if(p.c){q=o.gb4().gam() +q.toString +q.gaY() +q=o.gb4().gam() +q.toString +q=q.gaY().dF.gfc()}else q=!1 +if(q)switch(A.bL().a){case 2:case 4:p.b0P(r,B.bl) +break +case 0:case 1:case 3:case 5:p.Eu(r,B.bl) +break}else switch(A.bL().a){case 2:switch(s){case B.cv:case B.cH:o=o.gb4().gam() +o.toString +o.gaY().lo(B.bl,r) +break +case B.dc:case B.fe:case B.bi:case B.dd:q=o.gb4().gam() +q.toString +if(q.gaY().dQ){q=p.r +q.toString}else q=!1 +if(q){o=o.gb4().gam() +o.toString +o.gaY().lo(B.bl,r) +p.Bf(r)}break +case null:case void 0:break}break +case 0:case 1:switch(s){case B.cv:case B.cH:o=o.gb4().gam() +o.toString +o.gaY().lo(B.bl,r) +break +case B.dc:case B.fe:case B.bi:case B.dd:q=o.gb4().gam() +q.toString +if(q.gaY().dQ){o=o.gb4().gam() +o.toString +o.gaY().lo(B.bl,r) +p.Bf(r)}break +case null:case void 0:break}break +case 3:case 4:case 5:o=o.gb4().gam() +o.toString +o.gaY().lo(B.bl,r) +break}}, +bC5(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.a +if(!h.gkj())return +if(!i.c){s=h.gb4().gam() +s.toString +if(s.gaY().eT===1){s=h.gb4().gam() +s.toString +s=s.gaY().hi.at +s.toString +r=new A.j(s-i.e,0)}else{s=h.gb4().gam() +s.toString +s=s.gaY().hi.at +s.toString +r=new A.j(0,s-i.e)}q=new A.j(0,i.gTA()-i.d) +s=a.d +p=s.W(0,a.r) +o=a.x +if(A.YU(o)===2){n=h.gb4().gam() +n.toString +n.gaY().II(B.bl,p.W(0,r).W(0,q),s) +switch(a.f){case B.dc:case B.fe:case B.bi:case B.dd:return i.Bf(s) +case B.cv:case B.cH:case null:case void 0:return}}if(A.YU(o)===3)switch(A.bL().a){case 0:case 1:case 2:switch(a.f){case B.cv:case B.cH:return i.a5O(B.bl,p.W(0,r).W(0,q),s) +case B.dc:case B.fe:case B.bi:case B.dd:case null:case void 0:break}return +case 3:return i.arz(B.bl,p.W(0,r).W(0,q),s) +case 5:case 4:return i.a5O(B.bl,p.W(0,r).W(0,q),s)}switch(A.bL().a){case 2:switch(a.f){case B.cv:case B.cH:h=h.gb4().gam() +h.toString +return h.gaY().Q5(B.bl,p.W(0,r).W(0,q),s) +case B.dc:case B.fe:case B.bi:case B.dd:o=h.gb4().gam() +o.toString +if(o.gaY().dQ){o=i.f +if(o.a===o.b){o=i.r +o.toString}else o=!1}else o=!1 +if(o){h=h.gb4().gam() +h.toString +h.gaY().lo(B.bl,s) +return i.Bf(s)}break +case null:case void 0:break}return +case 0:case 1:switch(a.f){case B.cv:case B.cH:case B.dc:case B.fe:h=h.gb4().gam() +h.toString +return h.gaY().Q5(B.bl,p.W(0,r).W(0,q),s) +case B.bi:case B.dd:o=h.gb4().gam() +o.toString +if(o.gaY().dQ){h=h.gb4().gam() +h.toString +h.gaY().lo(B.bl,s) +return i.Bf(s)}break +case null:case void 0:break}return +case 4:case 3:case 5:h=h.gb4().gam() +h.toString +return h.gaY().Q5(B.bl,p.W(0,r).W(0,q),s)}}s=i.f +if(s.a!==s.b)s=A.bL()!==B.aM&&A.bL()!==B.cL +else s=!0 +if(s)return i.Eu(a.d,B.bl) +s=h.gb4().gam() +s.toString +m=s.a.c.a.b +s=h.gb4().gam() +s.toString +o=a.d +l=s.gaY().lT(o) +s=i.f +n=s.c +k=l.a +j=nn +if(j&&m.c===n){s=h.gb4().gam() +s.toString +h=h.gb4().gam() +h.toString +s.no(h.a.c.a.oj(A.eJ(B.E,i.f.d,k,!1)),B.bl)}else if(!j&&k!==n&&m.c!==n){s=h.gb4().gam() +s.toString +h=h.gb4().gam() +h.toString +s.no(h.a.c.a.oj(A.eJ(B.E,i.f.c,k,!1)),B.bl)}else i.Eu(o,B.bl)}, +bC1(a){var s,r=this +r.r=null +if(r.b&&A.YU(a.c)===2){s=r.a.gb4().gam() +s.toString +s.pR()}if(r.c)r.f=null +r.anq()}, +awf(a,b){var s,r,q,p,o=this,n=o.a,m=n.gaaD()?o.gacm():null +n=n.gaaD()?o.gacl():null +s=o.gacv() +r=o.gaCM() +q=o.gacu() +p=o.gaCL() +o.gaCN() +return new A.ab2(o.gbD0(),o.gbCZ(),o.gbCY(),m,n,o.gbCH(),o.gbCJ(),s,o.gbCT(),r,q,p,o.gbCR(),o.gbBV(),o.gbD8(),o.gbC2(),o.gbC4(),o.gbC0(),!1,a,b,null)}} +A.ab2.prototype={ +J(){return new A.ajw(B.f)}} +A.ajw.prototype={ +b6M(){this.a.c.$0()}, +b6L(){this.a.d.$0()}, +bjB(a){var s +this.a.e.$1(a) +s=a.d +if(A.YU(s)===2){s=this.a.ay.$1(a) +return s}if(A.YU(s)===3){s=this.a.ch.$1(a) +return s}}, +bjC(a){if(A.YU(a.d)===1){this.a.y.$1(a) +this.a.Q.$0()}else this.a.toString}, +bjA(){this.a.z.$0()}, +bjy(a){this.a.CW.$1(a)}, +bjz(a){this.a.cx.$1(a)}, +bjx(a){this.a.cy.$1(a)}, +b1n(a){var s=this.a.f +if(s!=null)s.$1(a)}, +b1l(a){var s=this.a.r +if(s!=null)s.$1(a)}, +b4C(a){this.a.as.$1(a)}, +b4A(a){this.a.at.$1(a)}, +b4y(a){this.a.ax.$1(a)}, +q(a){var s,r,q=this,p=A.N(t.u,t.xR) +p.n(0,B.m9,new A.dE(new A.cir(q),new A.cis(q),t.UN)) +q.a.toString +p.n(0,B.qs,new A.dE(new A.cit(q),new A.ciu(q),t.jn)) +q.a.toString +switch(A.bL().a){case 0:case 1:case 2:p.n(0,B.bv4,new A.dE(new A.civ(q),new A.ciw(q),t.hg)) +break +case 3:case 4:case 5:p.n(0,B.ZM,new A.dE(new A.cix(q),new A.ciy(q),t.Qm)) +break}s=q.a +if(s.f!=null||s.r!=null)p.n(0,B.ZE,new A.dE(new A.ciz(q),new A.ciA(q),t.C1)) +s=q.a +r=s.dx +return new A.mu(s.dy,p,r,!0,null)}} +A.cir.prototype={ +$0(){return A.t5(null,this.a,null)}, +$S:158} +A.cis.prototype={ +$1(a){var s=this.a.a +a.dd=s.w +a.D=s.x}, +$S:159} +A.cit.prototype={ +$0(){return A.St(null,this.a,null,null,A.d9([B.bi],t.F))}, +$S:205} +A.ciu.prototype={ +$1(a){var s=this.a +a.p3=s.gb4B() +a.p4=s.gb4z() +a.RG=s.gb4x()}, +$S:206} +A.civ.prototype={ +$0(){var s=null,r=t.S,q=A.dV(r) +return new A.wO(B.m,B.mk,A.b9(r),s,s,0,s,s,s,s,s,s,A.N(r,t.SP),q,this.a,s,A.GO(),A.N(r,t.F))}, +$S:832} +A.ciw.prototype={ +$1(a){var s +a.at=B.kM +s=this.a +a.WE$=s.ganl() +a.WF$=s.gank() +a.ch=s.gasN() +a.cx=s.gasK() +a.cy=s.gasL() +a.db=s.gasJ() +a.CW=s.gasO() +a.dx=s.gasM()}, +$S:833} +A.cix.prototype={ +$0(){return A.cME(this.a,null)}, +$S:338} +A.ciy.prototype={ +$1(a){var s +a.at=B.kM +s=this.a +a.WE$=s.ganl() +a.WF$=s.gank() +a.ch=s.gasN() +a.cx=s.gasK() +a.cy=s.gasL() +a.db=s.gasJ() +a.CW=s.gasO() +a.dx=s.gasM()}, +$S:339} +A.ciz.prototype={ +$0(){return A.cIs(null,this.a,A.cSy(),0.85,0.4,null)}, +$S:310} +A.ciA.prototype={ +$1(a){var s=this.a,r=s.a +a.at=r.f!=null?s.gb1m():null +a.ch=r.r!=null?s.gb1k():null}, +$S:311} +A.a0L.prototype={ +a3(a,b){var s=this +if(s.k2$<=0)$.an.aT$.push(s) +if(s.ay===B.rX)A.dm(null,t.H) +s.agr(0,b)}, +O(a,b){var s=this +s.vi(0,b) +if(!s.w&&s.k2$<=0)B.b.F($.an.aT$,s)}, +w4(a){switch(a.a){case 1:A.dm(null,t.H) +break +case 0:case 2:case 3:case 4:break}}, +m(){B.b.F($.an.aT$,this) +this.w=!0 +this.f4()}} +A.Ch.prototype={ +H(){return"ClipboardStatus."+this.b}} +A.uJ.prototype={ +aaQ(a){return this.bxr(a)}, +bxr(a){var s=0,r=A.p(t.H) +var $async$aaQ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$aaQ,r)}} +A.aM3.prototype={} +A.alw.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.alx.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.VR.prototype={} +A.aGg.prototype={ +A8(a){return new A.aG(0,a.b,0,a.d)}, +Aa(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.b.b>=b.b +s=o?p.b:p.c +r=A.dfb(s.a,b.a,a.a) +q=s.b +return new A.j(r,o?Math.max(0,q-b.b):q)}, +nt(a){return!this.b.l(0,a.b)||!this.c.l(0,a.c)||this.d!=a.d}} +A.aGk.prototype={ +aR(a){var s=new A.aGl(this.d,!1,B.bC,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){var s=this.d +if(s!==b.D){b.D=s +b.aV()}if(B.bC!==b.a4){b.a4=B.bC +b.aV()}}} +A.wV.prototype={ +J(){return new A.aYn(new A.bm(!0,$.ae(),t.uh),B.f)}} +A.aYn.prototype={ +c5(){var s,r=this +r.dH() +s=r.c +s.toString +r.d=A.bLC(s) +r.atG()}, +b1(a){this.bc(a) +this.atG()}, +m(){var s=this.e +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +atG(){var s=this.d&&this.a.c +this.e.sj(0,s)}, +q(a){var s=this.e +return new A.aet(s.a,s,this.a.d,null)}} +A.aet.prototype={ +ed(a){return this.f!==a.f}} +A.hM.prototype={ +Md(a){var s,r=this +r.fz$=new A.Az(a,null) +r.dq() +r.jc() +s=r.fz$ +s.toString +return s}, +jc(){var s,r=this.fz$ +if(r!=null){s=this.ca$ +r.sac8(0,!s.gj(s))}}, +dq(){var s,r=this,q=r.c +q.toString +s=A.cMU(q) +q=r.ca$ +if(s===q)return +if(q!=null)q.O(0,r.gjb()) +s.a3(0,r.gjb()) +r.ca$=s}} +A.e5.prototype={ +Md(a){var s,r,q=this +if(q.b5$==null)q.dq() +if(q.eH$==null)q.eH$=A.b9(t.DH) +s=new A.aZS(q,a,null) +r=q.b5$ +s.sac8(0,!r.gj(r)) +q.eH$.B(0,s) +return s}, +fq(){var s,r,q,p +if(this.eH$!=null){s=this.b5$ +r=!s.gj(s) +for(s=this.eH$,s=A.dy(s,s.r,A.z(s).c),q=s.$ti.c;s.t();){p=s.d;(p==null?q.a(p):p).sac8(0,r)}}}, +dq(){var s,r=this,q=r.c +q.toString +s=A.cMU(q) +q=r.b5$ +if(s===q)return +if(q!=null)q.O(0,r.gfj()) +s.a3(0,r.gfj()) +r.b5$=s}} +A.aZS.prototype={ +m(){this.w.eH$.F(0,this) +this.ahy()}} +A.adA.prototype={ +a3(a,b){}, +O(a,b){}, +$iaC:1, +$idq:1, +gj(){return!0}} +A.W2.prototype={ +q(a){A.bJM(new A.b46(this.c,this.d.a)) +return this.e}} +A.a_6.prototype={ +J(){return new A.acD(B.f)}, +gwu(){return this.c}} +A.acD.prototype={ +a8(){this.an() +this.a.gwu().a3(0,this.ga3o())}, +b1(a){var s,r=this +r.bc(a) +if(!r.a.gwu().l(0,a.gwu())){s=r.ga3o() +a.gwu().O(0,s) +r.a.gwu().a3(0,s)}}, +m(){this.a.gwu().O(0,this.ga3o()) +this.ap()}, +b39(){this.C(new A.bRo())}, +q(a){return this.a.q(a)}} +A.bRo.prototype={ +$0(){}, +$S:0} +A.aEL.prototype={ +q(a){var s=this,r=t.N3.a(s.c),q=r.gj(r) +if(s.e===B.ae)q=new A.j(-q.a,q.b) +return A.cx_(s.r,s.f,q)}} +A.azc.prototype={ +q(a){var s,r,q=this,p=t.o.a(q.c) +switch(p.gbM(p).a){case 0:case 3:s=!1 +break +case 1:case 2:s=!0 +break +default:s=null}p=q.e.$1(p.gj(p)) +r=s?q.r:null +return A.x0(q.f,q.w,r,p,!0)}} +A.aDX.prototype={} +A.aDJ.prototype={} +A.aEE.prototype={ +q(a){var s=this,r=null,q=s.e,p=q===B.v,o=s.f,n=p?new A.kE(-1,o):new A.kE(o,-1) +if(p){p=t.o.a(s.c) +p=Math.max(A.fP(p.gj(p)),0)}else p=r +if(q===B.a_){q=t.o.a(s.c) +q=Math.max(A.fP(q.gj(q)),0)}else q=r +return A.p3(new A.fl(n,q,p,s.w,r),B.k,r)}} +A.dg.prototype={ +aR(a){var s=null,r=new A.a7S(s,s,s,s,s,A.aw(t.T)) +r.aQ() +r.sbq(s) +r.shn(0,this.e) +r.sLw(this.f) +return r}, +b_(a,b){b.shn(0,this.e) +b.sLw(this.f)}} +A.U8.prototype={ +iE(a){var s=A.dch(this.a,this.b,a) +s.toString +return s}} +A.a7f.prototype={ +q(a){var s=t.Jo.a(this.c) +return A.TG(this.e,s.gj(s))}} +A.ash.prototype={ +q(a){var s=this.e,r=s.a +return A.o1(this.r,s.b.ah(0,r.gj(r)),B.cB)}} +A.asq.prototype={ +q(a){var s=this,r=t.rb.a(s.c) +return A.h4(s.x,null,s.w,s.r,!0,r.gj(r),null,null,B.a0)}} +A.Sm.prototype={ +gwu(){return this.c}, +q(a){return this.lC(a,this.f)}, +lC(a,b){return this.e.$2(a,b)}} +A.OO.prototype={ +gwu(){return A.Sm.prototype.gwu.call(this)}, +gbpA(){return this.e}, +lC(a,b){return this.gbpA().$2(a,b)}} +A.FJ.prototype={ +J(){return new A.ajS(null,null,B.f,this.$ti.h("ajS<1>"))}} +A.ajS.prototype={ +a8(){var s=this,r=s.CW=s.a.r +if(r.a==null)r.sVa(r.b) +s.a0B() +r=s.CW +if(!J.q(r.a,r.b))s.gvq().cM(0)}, +n6(a){var s=this +s.CW=s.$ti.h("aP<1>?").a(a.$3(s.CW,s.a.r.b,new A.cmb()))}, +q(a){var s,r=this,q=r.a +q.toString +s=r.CW +s.toString +s=s.ah(0,r.gih().gj(0)) +r.a.toString +return q.w.$3(a,s,null)}} +A.cmb.prototype={ +$1(a){throw A.d(A.a0("Constructor will never be called because null is never provided as current tween."))}, +$S:834} +A.Wd.prototype={ +J(){var s=this.$ti +return new A.We(new A.aZe(A.a([],s.h("D<1>")),s.h("aZe<1>")),B.f,s.h("We<1>"))}} +A.We.prototype={ +gbjG(){var s=this.e +s===$&&A.b() +return s}, +gL8(){var s=this.a.w,r=this.x +if(r==null){s=$.ae() +s=new A.abG(new A.ka(s),new A.ka(s),B.bvc,s) +this.x=s}else s=r +return s}, +P5(){var s,r,q,p=this,o=p.d +if(o.gMf()==null)return +s=p.f +r=s==null +q=r?null:s.b!=null +if(q===!0){if(!r)s.ao(0) +p.a6r(0,o.gMf())}else p.a6r(0,o.P5()) +p.Ug()}, +Ox(){this.a6r(0,this.d.Ox()) +this.Ug()}, +Ug(){var s=this.gL8(),r=this.d,q=r.a,p=q.length!==0&&r.b>0 +s.sj(0,new A.Nd(p,r.gawG())) +if(A.bL()!==B.aM)return +s=$.cCY() +if(s.b===this){q=q.length!==0&&r.b>0 +r=r.gawG() +s=s.a +s===$&&A.b() +s.fJ("UndoManager.setUndoState",A.a1(["canUndo",q,"canRedo",r],t.N,t.y),t.H)}}, +bkp(a){this.P5()}, +bfo(a){this.Ox()}, +a6r(a,b){var s=this +if(b==null)return +if(J.q(b,s.w))return +s.w=b +s.r=!0 +try{s.a.f.$1(b)}finally{s.r=!1}}, +aqh(){var s,r,q=this +if(J.q(q.a.c.a,q.w))return +if(q.r)return +s=q.a +s=s.d.$2(q.w,s.c.a) +if(!(s==null?!0:s))return +s=q.a +r=s.e.$1(s.c.a) +if(r==null)r=q.a.c.a +if(J.q(r,q.w))return +q.w=r +q.f=q.bjH(r)}, +an_(){if(!this.a.r.ge2())return +$.cCY().b=this +this.Ug()}, +bxt(a){switch(a.a){case 0:this.P5() +break +case 1:this.Ox() +break}}, +a8(){var s,r=this +r.an() +s=A.do6(B.bd,new A.bNL(r),r.$ti.c) +r.e!==$&&A.ck() +r.e=s +r.aqh() +r.a.c.a3(0,r.ga5f()) +r.an_() +r.a.r.a3(0,r.ga3A()) +r.gL8().w.a3(0,r.gaFS()) +r.gL8().x.a3(0,r.gaEq())}, +b1(a){var s,r,q=this +q.bc(a) +s=a.c +if(q.a.c!==s){r=q.d +B.b.V(r.a) +r.b=-1 +r=q.ga5f() +s.O(0,r) +q.a.c.a3(0,r)}s=a.r +if(q.a.r!==s){r=q.ga3A() +s.O(0,r) +q.a.r.a3(0,r)}q.a.toString}, +m(){var s,r=this +r.a.c.O(0,r.ga5f()) +r.a.r.O(0,r.ga3A()) +r.gL8().w.O(0,r.gaFS()) +r.gL8().x.O(0,r.gaEq()) +s=r.x +if(s!=null)s.m() +s=r.f +if(s!=null)s.ao(0) +r.ap()}, +q(a){var s=t.h,r=t.b +return A.ts(A.a1([B.buR,new A.ej(this.gbko(),new A.bN(A.a([],s),r),t._n).ht(a),B.buC,new A.ej(this.gbfn(),new A.bN(A.a([],s),r),t.D5).ht(a)],t.u,t.od),this.a.x)}, +bjH(a){return this.gbjG().$1(a)}} +A.bNL.prototype={ +$1(a){var s=this.a +s.d.wL(a) +s.Ug()}, +$S(){return this.a.$ti.h("~(1)")}} +A.Nd.prototype={ +k(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.Nd&&b.a===this.a&&b.b===this.b}, +gv(a){var s=this.a?519018:218159 +return A.ad(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.abG.prototype={ +m(){var s=this.w,r=$.ae() +s.k3$=r +s.k2$=0 +s=this.x +s.k3$=r +s.k2$=0 +this.f4()}} +A.aZe.prototype={ +gMf(){var s=this.a +return s.length===0?null:s[this.b]}, +gawG(){var s=this.a.length +return s!==0&&this.b"))}} +A.Z1.prototype={ +a8(){var s,r=this +r.an() +s=r.a.c +r.d=s.gj(s) +r.a.c.a3(0,r.ga6Q())}, +b1(a){var s,r,q=this +q.bc(a) +s=a.c +if(s!==q.a.c){r=q.ga6Q() +s.O(0,r) +s=q.a.c +q.d=s.gj(s) +q.a.c.a3(0,r)}}, +m(){this.a.c.O(0,this.ga6Q()) +this.ap()}, +bll(){this.C(new A.cmA(this))}, +q(a){var s,r=this.a +r.toString +s=this.d +s===$&&A.b() +return r.d.$3(a,s,r.e)}} +A.cmA.prototype={ +$0(){var s=this.a,r=s.a.c +s.d=r.gj(r)}, +$S:0} +A.aHA.prototype={ +q(a){var s=this,r=s.c,q=s.e,p=s.f +return new A.ah1(r,new A.bOv(s),q,p,new A.aeb(r,q,p,t.Q8))}} +A.bOv.prototype={ +$2(a,b){var s=this.a,r=s.c +return new A.Og(r,new A.agH(b,new A.ag0(r,s.d,null),null),null)}, +$S:837} +A.ah1.prototype={ +dv(a){return new A.aUb(this,B.aD)}, +aR(a){return this.f}} +A.aUb.prototype={ +gvv(){var s=this.e +s.toString +t.mP.a(s) +return s.e}, +gai(){return t.Ju.a(A.bO.prototype.gai.call(this))}, +a6u(){var s,r,q,p,o,n,m,l=this +try{n=l.e +n.toString +s=t.mP.a(n).d.$2(l,l.gvv()) +l.be=l.he(l.be,s,null)}catch(m){r=A.ag(m) +q=A.aD(m) +n=A.cJ("building "+l.k(0)) +p=new A.dl(r,q,"widgets library",n,null,!1) +A.fs(p) +o=A.QR(p) +l.be=l.he(null,o,l.c)}}, +iF(a,b){var s,r=this +r.r4(a,b) +s=t.Ju +r.gvv().sOJ(s.a(A.bO.prototype.gai.call(r))) +r.aiJ() +r.a6u() +s.a(A.bO.prototype.gai.call(r)).acR() +if(r.gvv().at!=null)s.a(A.bO.prototype.gai.call(r)).PY()}, +aiK(a){var s,r,q=this +if(a==null)a=A.cNH(q) +s=q.gvv() +a.CW.B(0,s) +r=a.cx +if(r!=null)s.aA(r) +s=$.LE +s.toString +r=t.Ju.a(A.bO.prototype.gai.call(q)) +s.fx$.n(0,r.go.a,r) +r.su7(s.bsW(r)) +q.bj=a}, +aiJ(){return this.aiK(null)}, +akD(){var s,r=this,q=r.bj +if(q!=null){s=$.LE +s.toString +s.fx$.F(0,t.Ju.a(A.bO.prototype.gai.call(r)).go.a) +s=r.gvv() +q.CW.F(0,s) +if(q.cx!=null)s.ar(0) +r.bj=null}}, +c5(){var s,r=this +r.a0J() +if(r.bj==null)return +s=A.cNH(r) +if(s!==r.bj){r.akD() +r.aiK(s)}}, +nf(){this.E5() +this.a6u()}, +cL(){var s=this +s.QM() +s.gvv().sOJ(t.Ju.a(A.bO.prototype.gai.call(s))) +s.aiJ()}, +fS(){this.akD() +this.gvv().sOJ(null) +this.ahk()}, +cI(a,b){this.nw(0,b) +this.a6u()}, +d0(a){var s=this.be +if(s!=null)a.$1(s)}, +lH(a){this.be=null +this.mA(a)}, +mj(a,b){t.Ju.a(A.bO.prototype.gai.call(this)).sbq(a)}, +mn(a,b,c){}, +ni(a,b){t.Ju.a(A.bO.prototype.gai.call(this)).sbq(null)}, +oH(){var s=this,r=s.gvv(),q=s.e +q.toString +if(r!==t.mP.a(q).e){r=s.gvv() +q=r.at +if(q!=null)q.m() +r.at=null +B.b.V(r.r) +B.b.V(r.z) +B.b.V(r.Q) +r.ch.V(0)}s.a0X()}} +A.Og.prototype={ +ed(a){return this.f!==a.f}} +A.agH.prototype={ +ed(a){return this.f!==a.f}} +A.aeb.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return s.$ti.b(b)&&b.a===s.a&&b.b===s.b&&b.c===s.c}, +gv(a){return A.ad(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)}, +k(a){return"[_DeprecatedRawViewKey "+("#"+A.bq(this.a))+"]"}} +A.AN.prototype={ +aR(a){var s=this,r=s.e,q=A.ac0(a,r) +return A.dcv(s.r,r,s.y,s.z,null,null,s.Q,q,s.w)}, +b_(a,b){var s=this,r=s.e +b.siO(r) +r=A.ac0(a,r) +b.sa96(r) +b.sBs(s.r) +b.sfl(0,s.w) +b.sbpE(s.y) +b.sbpF(s.z) +b.soi(s.Q)}, +dv(a){return new A.aZG(A.dV(t.lU),this,B.aD)}} +A.aZG.prototype={ +gai(){return t.E1.a(A.qp.prototype.gai.call(this))}, +iF(a,b){var s=this +s.bj=!0 +s.aP9(a,b) +s.att() +s.bj=!1}, +cI(a,b){var s=this +s.bj=!0 +s.aPb(0,b) +s.att() +s.bj=!1}, +att(){var s=this,r=s.e +r.toString +t.Dg.a(r) +r=t.E1 +if(!s.geg(0).gad(0)){r.a(A.qp.prototype.gai.call(s)).sc1(t.IT.a(s.geg(0).ga2(0).gai())) +s.bU=0}else{r.a(A.qp.prototype.gai.call(s)).sc1(null) +s.bU=null}}, +mj(a,b){var s=this +s.agL(a,b) +if(!s.bj&&b.b===s.bU)t.E1.a(A.qp.prototype.gai.call(s)).sc1(t.IT.a(a))}, +mn(a,b,c){this.agM(a,b,c)}, +ni(a,b){var s=this +s.aPa(a,b) +if(!s.bj&&t.E1.a(A.qp.prototype.gai.call(s)).hw===a)t.E1.a(A.qp.prototype.gai.call(s)).sc1(null)}} +A.aEw.prototype={ +aR(a){var s=this.e,r=A.ac0(a,s),q=A.aw(t.O5) +s=new A.aD4(s,r,this.r,250,B.kn,this.w,q,0,null,null,A.aw(t.T)) +s.aQ() +s.L(0,null) +return s}, +b_(a,b){var s=this.e +b.siO(s) +s=A.ac0(a,s) +b.sa96(s) +b.sfl(0,this.r) +b.soi(this.w)}} +A.b1k.prototype={} +A.b1l.prototype={} +A.FS.prototype={ +q(a){var s,r=this,q=null,p=r.c +if(r.w){s=r.e +p=new A.aZH(s,r.x,A.n6(p,!s&&!r.y,q),q)}else if(r.f){if(!r.r)p=new A.wV(r.e,p,q) +s=r.e +p=new A.Eo(!s,p,q)}else{s=r.e +p=s?p:B.ap}return new A.akd(s,p,q)}} +A.bOz.prototype={ +$1(a){this.a.a=a +return!1}, +$S:50} +A.akd.prototype={ +ed(a){return this.f!==a.f}} +A.aZH.prototype={ +aR(a){var s=new A.aVr(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.sbHZ(0,this.e) +b.sbAC(this.f)}} +A.aVr.prototype={ +sbHZ(a,b){if(b===this.G)return +this.G=b +this.aV()}, +sbAC(a){if(a===this.ac)return +this.ac=a +this.cs()}, +lm(a){if(this.ac||this.G)this.Au(a)}, +aI(a,b){if(!this.G)return +this.o6(a,b)}} +A.kt.prototype={ +Vf(a,b,c){var s,r=this.a,q=r!=null +if(q)a.CX(r.PR(c)) +b.toString +s=b[a.gaDc()] +r=s.a +a.UR(r.a,r.b,this.b,s.d,s.c) +if(q)a.fD()}, +d0(a){return a.$1(this)}, +aGm(a){return!0}, +af2(a,b){var s=b.a +if(a.a===s)return this +b.a=s+1 +return null}, +awZ(a,b){var s=b.a +b.a=s+1 +return a-s===0?65532:null}, +bn(a,b){var s,r,q,p,o,n=this +if(n===b)return B.h6 +if(A.I(b)!==A.I(n))return B.df +s=n.a +r=s==null +q=b.a +if(r!==(q==null))return B.df +t.a7.a(b) +if(!n.e.l(0,b.e)||n.b!==b.b)return B.df +if(!r){q.toString +p=s.bn(0,q) +o=p.a>0?p:B.h6 +if(o===B.df)return o}else o=B.h6 +return o}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.az(b)!==A.I(s))return!1 +if(!s.agF(0,b))return!1 +return b instanceof A.kt&&b.e.l(0,s.e)&&b.b===s.b&&b.c==s.c}, +gv(a){var s=this +return A.ad(A.ki.prototype.gv.call(s,0),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_L(a){return null}} +A.bPc.prototype={ +$1(a){var s,r,q,p,o=this,n=null,m=a.a,l=m==null?n:m.r +$label0$0:{if(typeof l=="number"){m=l!==B.b.gP(o.b) +s=l}else{s=n +m=!1}if(m){m=s +break $label0$0}m=n +break $label0$0}r=m!=null +if(r)o.b.push(m) +if(a instanceof A.kt){q=B.b.gP(o.b) +p=q===0?0:o.c.bK(0,q)/q +m=o.a.a++ +o.d.push(new A.aZR(a,new A.bX(A.ci(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,new A.zK(m,"PlaceholderSpanIndexSemanticsTag("+m+")"),n,n,n,n,n),!1,!1,!1,!1,new A.aKX(a,p,a.e,n),n),n))}a.aGm(o) +if(r)o.b.pop() +return!0}, +$S:124} +A.aZR.prototype={ +tX(a){var s=a.b +s.toString +t.ot.a(s).b=this.f}} +A.aKX.prototype={ +aR(a){var s=this.e +s=new A.ahN(this.f,s.b,s.c,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){var s=this.e +b.siN(s.b) +b.su2(s.c) +b.skE(0,this.f)}} +A.ahN.prototype={ +skE(a,b){if(b===this.D)return +this.D=b +this.a9()}, +siN(a){if(this.N===a)return +this.N=a +this.a9()}, +su2(a){if(a==this.a4)return +this.a4=a +this.a9()}, +bi(a){var s=this.k1$ +s=s==null?null:s.bi(a/this.D) +if(s==null)s=0 +return s*this.D}, +bb(a){var s=this.k1$ +s=s==null?null:s.bb(a/this.D) +if(s==null)s=0 +return s*this.D}, +bh(a){var s=this.k1$ +s=s==null?null:s.bh(a/this.D) +if(s==null)s=0 +return s*this.D}, +bo(a){var s=this.k1$ +s=s==null?null:s.bo(a/this.D) +if(s==null)s=0 +return s*this.D}, +il(a){var s=this.k1$,r=s==null?null:s.pK(a) +$label0$0:{if(r==null){s=this.Je(a) +break $label0$0}s=this.D*r +break $label0$0}return s}, +cX(a){var s=this.k1$,r=s==null?null:s.cX(new A.aG(0,a.b/this.D,0,1/0)) +if(r==null)r=B.A +return a.bd(r.X(0,this.D))}, +bJ(){var s,r=this,q=r.k1$ +if(q==null)return +s=t.k +q.d_(new A.aG(0,s.a(A.H.prototype.gZ.call(r)).b/r.D,0,1/0),!0) +r.id=s.a(A.H.prototype.gZ.call(r)).bd(q.gu(0).X(0,r.D))}, +hh(a,b){var s=this.D +b.jt(0,s,s)}, +aI(a,b){var s,r,q,p=this,o=p.k1$ +if(o==null){p.ch.sb9(0,null) +return}s=p.D +if(s===1){a.eM(o,b) +p.ch.sb9(0,null) +return}r=p.cx +r===$&&A.b() +q=p.ch +q.sb9(0,a.zS(r,b,A.zj(s,s,1),new A.ccm(o),t.zV.a(q.a)))}, +ej(a,b){var s,r=this.k1$ +if(r==null)return!1 +s=this.D +return a.Ls(new A.ccl(r),b,A.zj(s,s,1))}} +A.ccm.prototype={ +$2(a,b){return a.eM(this.a,b)}, +$S:14} +A.ccl.prototype={ +$2(a,b){return this.a.es(a,b)}, +$S:19} +A.b0p.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.Wx.prototype={ +J(){return new A.aZV(B.f)}} +A.aZV.prototype={ +c5(){var s,r,q=this +q.dH() +s=q.a.d +if(s!=null){r=q.d +if(r!=null)B.b.F(r.k4,s)}s=q.c +s.toString +s=q.d=A.wp(s,t.X) +r=q.a.d +if(r!=null)if(s!=null)s.k4.push(r)}, +b1(a){var s,r=this +r.bc(a) +s=a.d +if(!J.q(r.a.d,s)&&r.d!=null){if(s!=null)B.b.F(r.d.k4,s) +s=r.a.d +if(s!=null)r.d.k4.push(s)}}, +m(){var s,r=this.a.d +if(r!=null){s=this.d +if(s!=null)B.b.F(s.k4,r)}this.ap()}, +q(a){return this.a.c}} +A.b7M.prototype={ +aUv(a){var s=A.od(null,t.ax) +this.c!==$&&A.ck() +this.c=new A.bOF(this.b,a.f,A.N(t.N,t.vR),s)}, +EU(a,b,c,d,e){return this.beH(a,b,c,d,!0)}, +beH(a0,a1,a2,a3,a4){var s=0,r=A.p(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$EU=A.l(function(a5,a6){if(a5===1){p=a6 +s=q}while(true)switch(s){case 0:a2=a2 +a4=a4 +if(a2==null)a2=a1 +m=null +q=3 +s=6 +return A.i(n.b.Ir(0,a2,!1),$async$EU) +case 6:m=a6 +if(m!=null){a0.B(0,m) +a4=!1}q=1 +s=5 +break +case 3:q=2 +b=p +l=A.ag(b) +$.b2P() +A.r(l) +s=5 +break +case 2:s=1 +break +case 5:s=m==null||m.d.a")),"stream",t.K),t.r2) +q=13 +g=A.z(a0).h("oP<1>") +case 16:s=18 +return A.i(h.t(),$async$EU) +case 18:if(!a6){s=17 +break}k=h.gK(0) +if(k instanceof A.Qx&&a4){e=k +d=a0.b +if(d>=4)A.C(a0.tz()) +if((d&1)!==0)a0.kL(e) +else if((d&3)===0){d=a0.Er() +e=new A.oP(e,g) +c=d.c +if(c==null)d.b=d.c=e +else{c.smo(0,e) +d.c=e}}}if(k instanceof A.Dk){e=k +d=a0.b +if(d>=4)A.C(a0.tz()) +if((d&1)!==0)a0.kL(e) +else if((d&3)===0){d=a0.Er() +e=new A.oP(e,g) +c=d.c +if(c==null)d.b=d.c=e +else{c.smo(0,e) +d.c=e}}}s=16 +break +case 17:o.push(15) +s=14 +break +case 13:o=[10] +case 14:q=10 +s=19 +return A.i(h.ao(0),$async$EU) +case 19:s=o.pop() +break +case 15:q=1 +s=12 +break +case 10:q=9 +a=p +j=A.ag(a) +$.b2P() +A.r(j) +if(m==null&&(a0.b&1)!==0)a0.m8(j) +s=12 +break +case 9:s=1 +break +case 12:case 8:a0.aO(0) +return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$EU,r)}} +A.bbT.prototype={} +A.aNk.prototype={} +A.bmt.prototype={} +A.b7N.prototype={ +Ir(a,b,c){return this.aIE(0,b,!1)}, +aIE(a,b,c){var s=0,r=A.p(t.Zx),q,p=this,o,n +var $async$Ir=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=3 +return A.i(p.OI(b,!1),$async$Ir) +case 3:n=e +if(n==null){q=null +s=1 +break}s=4 +return A.i(p.d.w_(0,n.d),$async$Ir) +case 4:o=e +$.b2P() +q=new A.Dk(o,n.e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Ir,r)}, +Z2(a){return this.bEL(a)}, +bEL(a){var s=0,r=A.p(t.H),q=this +var $async$Z2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.c.n(0,a.c,a) +s=2 +return A.i(q.Lb(a),$async$Z2) +case 2:return A.n(null,r)}}) +return A.o($async$Z2,r)}, +OI(a,b){return this.bGn(a,!1)}, +bGm(a){return this.OI(a,!1)}, +bGn(a,b){var s=0,r=A.p(t.Cq),q,p=this,o,n +var $async$OI=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=p.c +n=o.aB(0,a) +s=n?3:4 +break +case 3:s=5 +return A.i(p.JU(o.i(0,a)),$async$OI) +case 5:if(d){q=o.i(0,a) +s=1 +break}case 4:o=p.b +if(!o.aB(0,a)){n=new A.ak($.at,t.LY) +p.Ev(a).bf(new A.b7Q(p,a,new A.aI(n,t.It)),t.P) +o.n(0,a,n)}q=o.i(0,a) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$OI,r)}, +JU(a){return this.b10(a)}, +b10(a){var s=0,r=A.p(t.y),q,p=this +var $async$JU=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(a==null){q=!1 +s=1 +break}s=3 +return A.i(p.d.w_(0,a.d),$async$JU) +case 3:q=c.C8() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$JU,r)}, +Ev(a){return this.b1K(a)}, +b1K(a){var s=0,r=A.p(t.Cq),q,p=this,o +var $async$Ev=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(p.f,$async$Ev) +case 3:s=4 +return A.i(A.dm(null,t.Cq),$async$Ev) +case 4:o=c +s=5 +return A.i(p.JU(o),$async$Ev) +case 5:if(c){o.toString +p.Lb(o)}p.bgL() +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Ev,r)}, +bgL(){if(this.w!=null)return +this.w=A.d3(B.ahF,new A.b7O(this))}, +Lb(a){return this.bkA(a)}, +bkA(a){var s=0,r=A.p(t.z),q,p=this +var $async$Lb=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(p.f,$async$Lb) +case 3:q=A.dm(null,t.z) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Lb,r)}, +AE(){var s=0,r=A.p(t.H),q=this,p,o,n,m,l +var $async$AE=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=A.a([],t.t) +s=2 +return A.i(q.f,$async$AE) +case 2:p=t.Cs +o=t.a6 +l=J +s=3 +return A.i(A.dm(A.a([],p),o),$async$AE) +case 3:n=l.au(b) +case 4:if(!n.t()){s=5 +break}q.B6(n.gK(n),m) +s=4 +break +case 5:l=J +s=6 +return A.i(A.dm(A.a([],p),o),$async$AE) +case 6:p=l.au(b) +case 7:if(!p.t()){s=8 +break}q.B6(p.gK(p),m) +s=7 +break +case 8:s=9 +return A.i(A.dm(m.length,t.S),$async$AE) +case 9:return A.n(null,r)}}) +return A.o($async$AE,r)}, +B6(a,b){return this.bfy(a,b)}, +bfy(a,b){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$B6=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:m=a.a +if(B.b.p(b,m)){s=1 +break}m.toString +b.push(m) +m=p.c +o=a.c +if(m.aB(0,o))m.F(0,o) +m=p.b +if(m.aB(0,o))m.F(0,o) +s=3 +return A.i(p.d.w_(0,a.d),$async$B6) +case 3:n=d +s=6 +return A.i(n.C8(),$async$B6) +case 6:s=d?4:5 +break +case 4:s=7 +return A.i(n.yI(0),$async$B6) +case 7:case 5:case 1:return A.n(q,r)}}) +return A.o($async$B6,r)}} +A.b7P.prototype={ +$1(a){return this.a.a}, +$S:838} +A.b7Q.prototype={ +$1(a){return this.aHj(a)}, +aHj(a){var s=0,r=A.p(t.P),q=this,p,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(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.n(0,o,a) +q.c.d2(0,a) +p.b.F(0,o) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:839} +A.b7O.prototype={ +$0(){var s=this.a +s.w=null +s.AE()}, +$S:0} +A.bar.prototype={} +A.b7L.prototype={} +A.Qx.prototype={} +A.Dk.prototype={} +A.yK.prototype={} +A.aA9.prototype={ +CO(a){var s=0,r=A.p(t.y),q +var $async$CO=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=!0 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$CO,r)}, +$ib7K:1} +A.rg.prototype={ +a8P(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.cFy(r,o,s.a,s.c,n,q,s.w,p)}, +brZ(a){var s=null +return this.a8P(s,s,s,s,a,s)}, +bsu(a,b,c){return this.a8P(a,null,null,b,null,c)}, +brJ(a){var s=null +return this.a8P(s,s,a,s,s,s)}, +gA(a){return this.r}} +A.brE.prototype={ +w_(a,b){return this.bsO(0,b)}, +bsO(a,b){var s=0,r=A.p(t.lC),q,p=this,o,n +var $async$w_=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=3 +return A.i(p.a,$async$w_) +case 3:o=d +n=o.a +q=new A.a5I(n,n.aeW(n.c.XH(0,o.b,b))) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$w_,r)}} +A.bi_.prototype={} +A.bm8.prototype={ +Py(a,b,c){return this.aIf(0,b,c)}, +aIf(a,b,c){var s=0,r=A.p(t.nZ),q,p=this,o,n +var $async$Py=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:n=A.cLJ("GET",A.di(b,0,null)) +n.r.L(0,c) +s=3 +return A.i(p.b.nr(0,n),$async$Py) +case 3:o=e +A.crs() +q=new A.avG(A.b2m(),o) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Py,r)}} +A.avG.prototype={ +gagd(a){return this.b.b}, +gbHO(){var s,r,q,p,o,n,m=this.b.e.i(0,"cache-control") +if(m!=null){s=m.split(",") +for(r=s.length,q=B.CS,p=0;p0)q=new A.aU(1e6*n)}}}else q=B.CS +return this.a.B(0,q)}, +$icI9:1} +A.aCi.prototype={} +A.bOF.prototype={ +AM(a,b,c){return this.b_Z(a,b,c)}, +b_Z(a,a0,a1){var s=0,r=A.p(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b +var $async$AM=A.l(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:c=m.e +if(c>=10){m.d.iW(0,new A.aCi(a,a0,a1)) +s=1 +break}$.b2P() +m.e=c+1 +c=m.c +h=c.i(0,a0) +h.toString +l=h +p=4 +h=new A.qZ(A.hz(m.Fa(a,a0,a1),"stream",t.K),t.r2) +p=7 +case 10:s=12 +return A.i(h.t(),$async$AM) +case 12:if(!a3){s=11 +break}k=h.gK(0) +g=l +f=k +if(g.c)A.C(A.a0(u.k)) +e=g.b +if((e.c&4)===0)g.ace(f) +if(!e.gob())A.C(e.o8()) +e.kL(f) +s=10 +break +case 11:n.push(9) +s=8 +break +case 7:n=[4] +case 8:p=4 +s=13 +return A.i(h.ao(0),$async$AM) +case 13:s=n.pop() +break +case 9:n.push(6) +s=5 +break +case 4:p=3 +b=o +j=A.ag(b) +i=A.aD(b) +l.h1(j,i) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2;--m.e +s=14 +return A.i(J.GT(l),$async$AM) +case 14:c.F(0,a0) +m.aY5() +s=n.pop() +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$AM,r)}, +aY5(){var s,r=this.d +if(r.b===r.c)return +s=r.qC() +this.AM(s.a,s.b,s.c)}, +Fa(a,b,c){return this.bkF(a,b,c)}, +bkF(a,b,c){var $async$Fa=A.l(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.hm(m.a.bGm(b),$async$Fa,r) +case 3:k=e +if(k==null){A.crs() +l=A.b2m() +k=A.cFy(a,null,null,b,null,B.dJ.aGc()+".file",null,l)}else k=k.brZ(a) +l=t.N +j=k +s=5 +return A.hm(m.b.Py(0,k.b,A.N(l,l)),$async$Fa,r) +case 5:s=4 +q=[1] +return A.hm(A.cOr(m.xQ(j,e)),$async$Fa,r) +case 4:case 1:return A.hm(null,0,r) +case 2:return A.hm(o,1,r)}}) +var s=0,r=A.b1y($async$Fa,t.cL),q,p=2,o,n=[],m=this,l,k,j +return A.b1I(r)}, +xQ(a,b){return this.b9e(a,b)}, +b9e(a4,a5){var $async$xQ=A.l(function(a6,a7){switch(a6){case 2:n=q +s=n.pop() +break +case 1:o=a7 +s=p}while(true)switch(s){case 0:b={} +a=a5.b +a0=a.b +a1=B.b.p(B.F0,a0) +a2=B.b.p(B.Fe,a0) +if(!a1&&!a2){a5.gagd(0) +throw A.d(new A.avD("Invalid statusCode: "+a5.gagd(0),A.di(a4.b,0,null)))}j=a.e +i=j.i(0,"content-type") +if(i!=null){h=A.dhC(i) +g=B.aVi.i(0,h.d+"/"+h.e) +if(g==null)g="."+h.e}else g="" +f=a4.d +if(!B.b.p(B.Fe,a0)){if(!B.c.eV(f,g))m.B7(f) +f=B.dJ.aGc()+g}e=a5.gbHO() +d=b.a=a4.bsu(j.i(0,"etag"),f,e) +s=B.b.p(B.F0,a0)?3:5 +break +case 3:l=0 +c=A.lN(null,null,null,!1,t.S) +m.F_(c,d,a5) +a0=new A.qZ(A.hz(new A.dI(c,A.z(c).h("dI<1>")),"stream",t.K),t.g_) +p=6 +a=a.d +case 9:s=11 +return A.hm(a0.t(),$async$xQ,r) +case 11:if(!a7){s=10 +break}k=a0.gK(0) +l=k +s=12 +q=[1,7] +return A.hm(A.aQu(new A.Qx(a,k)),$async$xQ,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.hm(a0.ao(0),$async$xQ,r) +case 13:s=n.pop() +break +case 8:a=b.a=b.a.brJ(l) +s=4 +break +case 5:a=d +case 4:a0=m.a +a0.Z2(a).bf(new A.bOG(b,m,a4),t.P) +a3=A +s=15 +return A.hm(a0.d.w_(0,b.a.d),$async$xQ,r) +case 15:s=14 +q=[1] +return A.hm(A.aQu(new a3.Dk(a7,b.a.e)),$async$xQ,r) +case 14:case 1:return A.hm(null,0,r) +case 2:return A.hm(o,1,r)}}) +var s=0,r=A.b1y($async$xQ,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 +return A.b1I(r)}, +F_(a,b,c){return this.bgx(a,b,c)}, +bgx(a,b,c){var s=0,r=A.p(t.H),q=1,p,o=this,n,m,l,k,j,i,h,g +var $async$F_=A.l(function(d,e){if(d===1){p=e +s=q}while(true)switch(s){case 0:i={} +s=2 +return A.i(o.a.d.w_(0,b.d),$async$F_) +case 2:h=e +q=4 +i.a=0 +k=h +k.a.d.$2(k.b,B.ajF) +n=A.dhW(k,B.kT,B.ai) +k=c.b.w +s=7 +return A.i(new A.ft(new A.bOH(i,a),k,A.z(k).h("ft>")).bE1(n),$async$F_) +case 7:q=1 +s=6 +break +case 4:q=3 +g=p +m=A.ag(g) +l=A.aD(g) +a.h1(m,l) +s=6 +break +case 3:s=1 +break +case 6:s=8 +return A.i(a.aO(0),$async$F_) +case 8:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$F_,r)}, +B7(a){return this.bfD(a)}, +bfD(a){var s=0,r=A.p(t.H),q=this,p +var $async$B7=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.d.w_(0,a),$async$B7) +case 2:p=c +s=5 +return A.i(p.C8(),$async$B7) +case 5:s=c?3:4 +break +case 3:s=6 +return A.i(p.yI(0),$async$B7) +case 6:case 4:return A.n(null,r)}}) +return A.o($async$B7,r)}} +A.bOG.prototype={ +$1(a){var s=this.c.d +if(this.a.a.d!==s)this.b.B7(s)}, +$S:33} +A.bOH.prototype={ +$1(a){var s=this.a,r=s.a+J.bn(a) +s.a=r +this.b.B(0,r) +return a}, +$S:840} +A.avD.prototype={} +A.biB.prototype={} +A.biC.prototype={} +A.auP.prototype={$ib6:1} +A.aPF.prototype={ +Cx(a){return $.cE7().p(0,a.gi4(0))}, +fB(a,b){return $.di5.cP(0,b,new A.c13(b))}, +Ao(a){return!1}, +k(a){return"GlobalCupertinoLocalizations.delegate("+$.cE7().a+" locales)"}} +A.c13.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i +A.cT4() +s=this.a +r=A.Zh(s.pY("_")) +q=A.aF("fullYearFormat") +p=A.aF("dayFormat") +o=A.aF("mediumDateFormat") +n=A.aF("singleDigitHourFormat") +m=A.aF("singleDigitMinuteFormat") +l=A.aF("doubleDigitMinuteFormat") +k=A.aF("singleDigitSecondFormat") +j=A.aF("decimalFormat") +i=new A.c14(q,p,o,n,m,l,k,j) +if(A.as7(r))i.$1(r) +else if(A.as7(s.gi4(0)))i.$1(s.gi4(0)) +else i.$1(null) +s=A.dsw(s,q.aX(),p.aX(),o.aX(),n.aX(),m.aX(),l.aX(),k.aX(),j.aX()) +s.toString +return new A.dc(s,t.Vr)}, +$S:841} +A.c14.prototype={ +$1(a){var s=this +s.a.b=A.a1y(a) +s.b.b=A.cGp(a) +s.c.b=A.bby(a) +s.d.b=A.fy("HH",a) +s.e.b=A.d44(a) +s.f.b=A.fy("mm",a) +s.r.b=A.d45(a) +s.w.b=A.buU(a)}, +$S:229} +A.aq5.prototype={ +gaK(){return"Kopieer"}, +gaN(){return"Knip"}, +gaa(){return"Kyk op"}, +gal(){return"Maak toe"}, +gaM(){return"Plak"}, +gaL(){return"Deursoek web"}, +gaH(){return"Kies alles"}, +gak(){return"Deel \u2026"}} +A.aq6.prototype={ +gaK(){return"\u1245\u12f3"}, +gaN(){return"\u1241\u1228\u1325"}, +gaa(){return"\u12ed\u1218\u120d\u12a8\u1271"}, +gal(){return"\u12a0\u1230\u1293\u1265\u1275"}, +gaM(){return"\u1208\u1325\u134d"}, +gaL(){return"\u12f5\u122d\u1295 \u1348\u120d\u130d"}, +gaH(){return"\u1201\u1209\u1295\u121d \u121d\u1228\u1325"}, +gak(){return"\u12a0\u130b\u122b..."}} +A.aq7.prototype={ +gaK(){return"\u0646\u0633\u062e"}, +gaN(){return"\u0642\u0635"}, +gaa(){return"\u0627\u0644\u0646\u0638\u0631 \u0625\u0644\u0649 \u0623\u0639\u0644\u0649"}, +gal(){return"\u0631\u0641\u0636"}, +gaM(){return"\u0644\u0635\u0642"}, +gaL(){return"\u0627\u0644\u0628\u062d\u062b \u0639\u0644\u0649 \u0627\u0644\u0648\u064a\u0628"}, +gaH(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0643\u0644"}, +gak(){return"\u0645\u0634\u0627\u0631\u0643\u0629\u2026"}} +A.aq8.prototype={ +gaK(){return"\u09aa\u09cd\u09f0\u09a4\u09bf\u09b2\u09bf\u09aa\u09bf \u0995\u09f0\u0995"}, +gaN(){return"\u0995\u09be\u099f \u0995\u09f0\u0995"}, +gaa(){return"\u0993\u09aa\u09f0\u09b2\u09c8 \u099a\u09be\u0993\u0995"}, +gal(){return"\u0985\u0997\u09cd\u09f0\u09be\u09b9\u09cd\u09af \u0995\u09f0\u0995"}, +gaM(){return"\u09aa\u09c7'\u09b7\u09cd\u099f \u0995\u09f0\u0995"}, +gaL(){return"\u09f1\u09c7\u09ac\u09a4 \u09b8\u09a8\u09cd\u09a7\u09be\u09a8 \u0995\u09f0\u0995"}, +gaH(){return"\u09b8\u0995\u09b2\u09cb \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}, +gak(){return"\u09b6\u09cd\u09ac\u09c7\u09df\u09be\u09f0 \u0995\u09f0\u0995\u2026"}} +A.aq9.prototype={ +gaK(){return"Kopyalay\u0131n"}, +gaN(){return"K\u0259sin"}, +gaa(){return"Axtar\u0131n"}, +gal(){return"\u0130mtina edin"}, +gaM(){return"Yerl\u0259\u015fdirin"}, +gaL(){return"Vebd\u0259 axtar\u0131n"}, +gaH(){return"Ham\u0131s\u0131n\u0131 se\xe7in"}, +gak(){return"Payla\u015f\u0131n..."}} +A.aqa.prototype={ +gaK(){return"\u041a\u0430\u043f\u0456\u0440\u0430\u0432\u0430\u0446\u044c"}, +gaN(){return"\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c"}, +gaa(){return"\u0417\u043d\u0430\u0439\u0441\u0446\u0456"}, +gal(){return"\u0410\u0434\u0445\u0456\u043b\u0456\u0446\u044c"}, +gaM(){return"\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c"}, +gaL(){return"\u041f\u043e\u0448\u0443\u043a \u0443 \u0441\u0435\u0442\u0446\u044b"}, +gaH(){return"\u0412\u044b\u0431\u0440\u0430\u0446\u044c \u0443\u0441\u0435"}, +gak(){return"\u0410\u0431\u0430\u0433\u0443\u043b\u0456\u0446\u044c..."}} +A.aqb.prototype={ +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435"}, +gaN(){return"\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435"}, +gaa(){return"Look Up"}, +gal(){return"\u041e\u0442\u0445\u0432\u044a\u0440\u043b\u044f\u043d\u0435"}, +gaM(){return"\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435"}, +gaL(){return"\u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0432 \u043c\u0440\u0435\u0436\u0430\u0442\u0430"}, +gaH(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438"}, +gak(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435..."}} +A.aqc.prototype={ +gaK(){return"\u0995\u09aa\u09bf \u0995\u09b0\u09c1\u09a8"}, +gaN(){return"\u0995\u09be\u099f \u0995\u09b0\u09c1\u09a8"}, +gaa(){return"\u09b2\u09c1\u0995-\u0986\u09aa"}, +gal(){return"\u0996\u09be\u09b0\u09bf\u099c \u0995\u09b0\u09c1\u09a8"}, +gaM(){return"\u09aa\u09c7\u09b8\u09cd\u099f \u0995\u09b0\u09c1\u09a8"}, +gaL(){return"\u0993\u09df\u09c7\u09ac\u09c7 \u09b8\u09be\u09b0\u09cd\u099a \u0995\u09b0\u09c1\u09a8"}, +gaH(){return"\u09b8\u09ac \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}, +gak(){return"\u09b6\u09c7\u09df\u09be\u09b0 \u0995\u09b0\u09c1\u09a8..."}} +A.aqd.prototype={ +gaK(){return"Kopiraj"}, +gaN(){return"Izre\u017ei"}, +gaa(){return"Pogled nagore"}, +gal(){return"Odbaci"}, +gaM(){return"Zalijepi"}, +gaL(){return"Pretra\u017ei Web"}, +gaH(){return"Odaberi sve"}, +gak(){return"Dijeli..."}} +A.aqe.prototype={ +gaK(){return"Copia"}, +gaN(){return"Retalla"}, +gaa(){return"Mira amunt"}, +gal(){return"Ignora"}, +gaM(){return"Enganxa"}, +gaL(){return"Cerca al web"}, +gaH(){return"Seleccionar-ho tot"}, +gak(){return"Comparteix..."}} +A.aqf.prototype={ +gaK(){return"Kop\xedrovat"}, +gaN(){return"Vyjmout"}, +gaa(){return"Vyhledat"}, +gal(){return"Zav\u0159\xedt"}, +gaM(){return"Vlo\u017eit"}, +gaL(){return"Vyhled\xe1vat na webu"}, +gaH(){return"Vybrat v\u0161e"}, +gak(){return"Sd\xedlet\u2026"}} +A.aqg.prototype={ +gaK(){return"Cop\xefo"}, +gaN(){return"Torri"}, +gaa(){return"Chwilio"}, +gal(){return"Diystyru"}, +gaM(){return"Gludo"}, +gaL(){return"Chwilio'r We"}, +gaH(){return"Dewis y Cyfan"}, +gak(){return"Rhannu..."}} +A.aqh.prototype={ +gaK(){return"Kopi\xe9r"}, +gaN(){return"Klip"}, +gaa(){return"Sl\xe5 op"}, +gal(){return"Afvis"}, +gaM(){return"Inds\xe6t"}, +gaL(){return"S\xf8g p\xe5 nettet"}, +gaH(){return"V\xe6lg alt"}, +gak(){return"Del\u2026"}} +A.a1e.prototype={ +gaK(){return"Kopieren"}, +gaN(){return"Ausschneiden"}, +gaa(){return"Nachschlagen"}, +gal(){return"Schlie\xdfen"}, +gaM(){return"Einsetzen"}, +gaL(){return"Im Web suchen"}, +gaH(){return"Alle ausw\xe4hlen"}, +gak(){return"Teilen\u2026"}} +A.aqi.prototype={ +gaH(){return"Alles ausw\xe4hlen"}, +gal(){return"Schliessen"}} +A.aqj.prototype={ +gaK(){return"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae"}, +gaN(){return"\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae"}, +gaa(){return"Look Up"}, +gal(){return"\u03a0\u03b1\u03c1\u03ac\u03b2\u03bb\u03b5\u03c8\u03b7"}, +gaM(){return"\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7"}, +gaL(){return"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03c3\u03c4\u03bf\u03bd \u03b9\u03c3\u03c4\u03cc"}, +gaH(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03cc\u03bb\u03c9\u03bd"}, +gak(){return"\u039a\u03bf\u03b9\u03bd\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u2026"}} +A.a1f.prototype={ +gaK(){return"Copy"}, +gaN(){return"Cut"}, +gaa(){return"Look Up"}, +gal(){return"Dismiss"}, +gaM(){return"Paste"}, +gaL(){return"Search Web"}, +gaH(){return"Select All"}, +gak(){return"Share..."}} +A.aqk.prototype={ +gaa(){return"Look up"}, +gaH(){return"Select all"}} +A.aql.prototype={ +gaH(){return"Select all"}} +A.aqm.prototype={ +gaa(){return"Look up"}, +gaH(){return"Select all"}} +A.aqn.prototype={ +gaa(){return"Look up"}, +gaH(){return"Select all"}} +A.aqo.prototype={ +gaa(){return"Look up"}, +gaH(){return"Select all"}} +A.aqp.prototype={ +gaa(){return"Look up"}, +gaH(){return"Select all"}} +A.aqq.prototype={ +gaa(){return"Look up"}, +gaH(){return"Select all"}} +A.aqr.prototype={ +gaa(){return"Look up"}, +gaH(){return"Select all"}} +A.a1g.prototype={ +gaK(){return"Copiar"}, +gaN(){return"Cortar"}, +gaa(){return"Buscador visual"}, +gal(){return"Cerrar"}, +gaM(){return"Pegar"}, +gaL(){return"Buscar en la Web"}, +gaH(){return"Seleccionar todo"}, +gak(){return"Compartir..."}} +A.aqs.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqt.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqu.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqv.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqw.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqx.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqy.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqz.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqA.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqB.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqC.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqD.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqE.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqF.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqG.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqH.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqI.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqJ.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqK.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqL.prototype={ +gak(){return"Compartir\u2026"}, +gaa(){return"Mirar hacia arriba"}, +gal(){return"Descartar"}} +A.aqM.prototype={ +gaK(){return"Kopeeri"}, +gaN(){return"L\xf5ika"}, +gaa(){return"Look Up"}, +gal(){return"Loobu"}, +gaM(){return"Kleebi"}, +gaL(){return"Otsi veebist"}, +gaH(){return"Vali k\xf5ik"}, +gak(){return"Jaga \u2026"}} +A.aqN.prototype={ +gaK(){return"Kopiatu"}, +gaN(){return"Ebaki"}, +gaa(){return"Bilatu"}, +gal(){return"Baztertu"}, +gaM(){return"Itsatsi"}, +gaL(){return"Bilatu sarean"}, +gaH(){return"Hautatu dena"}, +gak(){return"Partekatu..."}} +A.aqO.prototype={ +gaK(){return"\u06a9\u067e\u06cc"}, +gaN(){return"\u0628\u0631\u0634"}, +gaa(){return"\u062c\u0633\u062a\u062c\u0648"}, +gal(){return"\u0646\u067e\u0630\u06cc\u0631\u0641\u062a\u0646"}, +gaM(){return"\u062c\u0627\u06cc\u200c\u06af\u0630\u0627\u0631\u06cc"}, +gaL(){return"\u062c\u0633\u062a\u062c\u0648 \u062f\u0631 \u0648\u0628"}, +gaH(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u0647\u0645\u0647"}, +gak(){return"\u0647\u0645\u200c\u0631\u0633\u0627\u0646\u06cc\u2026"}} +A.aqP.prototype={ +gaK(){return"Kopioi"}, +gaN(){return"Leikkaa"}, +gaa(){return"Hae"}, +gal(){return"Ohita"}, +gaM(){return"Liit\xe4"}, +gaL(){return"Hae verkosta"}, +gaH(){return"Valitse kaikki"}, +gak(){return"Jaa\u2026"}} +A.aqQ.prototype={ +gaK(){return"Kopyahin"}, +gaN(){return"I-cut"}, +gaa(){return"Tumingin sa Itaas"}, +gal(){return"I-dismiss"}, +gaM(){return"I-paste"}, +gaL(){return"Maghanap sa Web"}, +gaH(){return"Piliin Lahat"}, +gak(){return"Ibahagi..."}} +A.a1h.prototype={ +gaK(){return"Copier"}, +gaN(){return"Couper"}, +gaa(){return"Recherche visuelle"}, +gal(){return"Ignorer"}, +gaM(){return"Coller"}, +gaL(){return"Rechercher sur le Web"}, +gaH(){return"Tout s\xe9lectionner"}, +gak(){return"Partager\u2026"}} +A.aqR.prototype={ +gaa(){return"Regarder en haut"}} +A.aqS.prototype={ +gaK(){return"Copiar"}, +gaN(){return"Cortar"}, +gaa(){return"Mirar cara arriba"}, +gal(){return"Ignorar"}, +gaM(){return"Pegar"}, +gaL(){return"Buscar na Web"}, +gaH(){return"Seleccionar todo"}, +gak(){return"Compartir\u2026"}} +A.aqT.prototype={ +gaK(){return"Kopieren"}, +gaN(){return"Ausschneiden"}, +gaa(){return"Nachschlagen"}, +gal(){return"Schlie\xdfen"}, +gaM(){return"Einsetzen"}, +gaL(){return"Im Web suchen"}, +gaH(){return"Alle ausw\xe4hlen"}, +gak(){return"Teilen\u2026"}} +A.aqU.prototype={ +gaK(){return"\u0a95\u0ac9\u0aaa\u0abf \u0a95\u0ab0\u0acb"}, +gaN(){return"\u0a95\u0abe\u0aaa\u0acb"}, +gaa(){return"\u0ab6\u0acb\u0aa7\u0acb"}, +gal(){return"\u0a9b\u0acb\u0aa1\u0ac0 \u0aa6\u0acb"}, +gaM(){return"\u0aaa\u0ac7\u0ab8\u0acd\u0a9f \u0a95\u0ab0\u0acb"}, +gaL(){return"\u0ab5\u0ac7\u0aac \u0aaa\u0ab0 \u0ab6\u0acb\u0aa7\u0acb"}, +gaH(){return"\u0aac\u0aa7\u0abe \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}, +gak(){return"\u0ab6\u0ac7\u0ab0 \u0a95\u0ab0\u0acb\u2026"}} +A.aqV.prototype={ +gaK(){return"\u05d4\u05e2\u05ea\u05e7\u05d4"}, +gaN(){return"\u05d2\u05d6\u05d9\u05e8\u05d4"}, +gaa(){return"\u05d7\u05d9\u05e4\u05d5\u05e9"}, +gal(){return"\u05e1\u05d2\u05d9\u05e8\u05d4"}, +gaM(){return"\u05d4\u05d3\u05d1\u05e7\u05d4"}, +gaL(){return"\u05d7\u05d9\u05e4\u05d5\u05e9 \u05d1\u05d0\u05d9\u05e0\u05d8\u05e8\u05e0\u05d8"}, +gaH(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05d4\u05db\u05d5\u05dc"}, +gak(){return"\u05e9\u05d9\u05ea\u05d5\u05e3\u2026"}} +A.aqW.prototype={ +gaK(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u0947\u0902"}, +gaN(){return"\u0915\u093e\u091f\u0947\u0902"}, +gaa(){return"\u0932\u0941\u0915 \u0905\u092a \u092c\u091f\u0928"}, +gal(){return"\u0916\u093e\u0930\u093f\u091c \u0915\u0930\u0947\u0902"}, +gaM(){return"\u091a\u093f\u092a\u0915\u093e\u090f\u0902"}, +gaL(){return"\u0935\u0947\u092c \u092a\u0930 \u0916\u094b\u091c\u0947\u0902"}, +gaH(){return"\u0938\u092d\u0940 \u091a\u0941\u0928\u0947\u0902"}, +gak(){return"\u0936\u0947\u092f\u0930 \u0915\u0930\u0947\u0902\u2026"}} +A.aqX.prototype={ +gaK(){return"Kopiraj"}, +gaN(){return"Izre\u017ei"}, +gaa(){return"Pogled prema gore"}, +gal(){return"Odbaci"}, +gaM(){return"Zalijepi"}, +gaL(){return"Pretra\u017ei web"}, +gaH(){return"Odaberi sve"}, +gak(){return"Dijeli..."}} +A.aqY.prototype={ +gaK(){return"M\xe1sol\xe1s"}, +gaN(){return"Kiv\xe1g\xe1s"}, +gaa(){return"Felfel\xe9 n\xe9z\xe9s"}, +gal(){return"Elvet\xe9s"}, +gaM(){return"Beilleszt\xe9s"}, +gaL(){return"Keres\xe9s az interneten"}, +gaH(){return"\xd6sszes kijel\xf6l\xe9se"}, +gak(){return"Megoszt\xe1s\u2026"}} +A.aqZ.prototype={ +gaK(){return"\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c"}, +gaN(){return"\u053f\u057f\u0580\u0565\u056c"}, +gaa(){return"\u0553\u0576\u057f\u0580\u0565\u056c"}, +gal(){return"\u0553\u0561\u056f\u0565\u056c"}, +gaM(){return"\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c"}, +gaL(){return"\u0548\u0580\u0578\u0576\u0565\u056c \u0570\u0561\u0574\u0561\u0581\u0561\u0576\u0581\u0578\u0582\u0574"}, +gaH(){return"\u0546\u0577\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568"}, +gak(){return"\u053f\u056b\u057d\u057e\u0565\u056c..."}} +A.ar_.prototype={ +gaK(){return"Salin"}, +gaN(){return"Potong"}, +gaa(){return"Cari"}, +gal(){return"Tutup"}, +gaM(){return"Tempel"}, +gaL(){return"Telusuri di Web"}, +gaH(){return"Pilih Semua"}, +gak(){return"Bagikan..."}} +A.ar0.prototype={ +gaK(){return"Afrita"}, +gaN(){return"Klippa"}, +gaa(){return"Look Up"}, +gal(){return"Hunsa"}, +gaM(){return"L\xedma"}, +gaL(){return"Leita \xe1 vefnum"}, +gaH(){return"Velja allt"}, +gak(){return"Deila..."}} +A.ar1.prototype={ +gaK(){return"Copia"}, +gaN(){return"Taglia"}, +gaa(){return"Cerca"}, +gal(){return"Ignora"}, +gaM(){return"Incolla"}, +gaL(){return"Cerca sul web"}, +gaH(){return"Seleziona tutto"}, +gak(){return"Condividi\u2026"}} +A.ar2.prototype={ +gaK(){return"\u30b3\u30d4\u30fc"}, +gaN(){return"\u5207\u308a\u53d6\u308a"}, +gaa(){return"\u8abf\u3079\u308b"}, +gal(){return"\u9589\u3058\u308b"}, +gaM(){return"\u8cbc\u308a\u4ed8\u3051"}, +gaL(){return"\u30a6\u30a7\u30d6\u3092\u691c\u7d22"}, +gaH(){return"\u3059\u3079\u3066\u3092\u9078\u629e"}, +gak(){return"\u5171\u6709..."}} +A.ar3.prototype={ +gaK(){return"\u10d9\u10dd\u10de\u10d8\u10e0\u10d4\u10d1\u10d0"}, +gaN(){return"\u10d0\u10db\u10dd\u10ed\u10e0\u10d0"}, +gaa(){return"\u10d0\u10d8\u10ee\u10d4\u10d3\u10d4\u10d7 \u10d6\u10d4\u10db\u10dd\u10d7"}, +gal(){return"\u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gaM(){return"\u10e9\u10d0\u10e1\u10db\u10d0"}, +gaL(){return"\u10d5\u10d4\u10d1\u10e8\u10d8 \u10eb\u10d8\u10d4\u10d1\u10d0"}, +gaH(){return"\u10e7\u10d5\u10d4\u10da\u10d0\u10e1 \u10d0\u10e0\u10e9\u10d4\u10d5\u10d0"}, +gak(){return"\u10d2\u10d0\u10d6\u10d8\u10d0\u10e0\u10d4\u10d1\u10d0..."}} +A.ar4.prototype={ +gaK(){return"\u041a\u04e9\u0448\u0456\u0440\u0443"}, +gaN(){return"\u049a\u0438\u044e"}, +gaa(){return"\u0406\u0437\u0434\u0435\u0443"}, +gal(){return"\u0416\u0430\u0431\u0443"}, +gaM(){return"\u049a\u043e\u044e"}, +gaL(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0456\u0437\u0434\u0435\u0443"}, +gaH(){return"\u0411\u0430\u0440\u043b\u044b\u0493\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u0443"}, +gak(){return"\u0411\u04e9\u043b\u0456\u0441\u0443\u2026"}} +A.ar5.prototype={ +gaK(){return"\u1785\u1798\u17d2\u179b\u1784"}, +gaN(){return"\u1780\u17b6\u178f\u17cb"}, +gaa(){return"\u179a\u1780\u1798\u17be\u179b"}, +gal(){return"\u1785\u17d2\u179a\u17b6\u1793\u200b\u1785\u17c4\u179b"}, +gaM(){return"\u178a\u17b6\u1780\u17cb\u200b\u1785\u17bc\u179b"}, +gaL(){return"\u179f\u17d2\u179c\u17c2\u1784\u179a\u1780\u200b\u179b\u17be\u1794\u178e\u17d2\u178a\u17b6\u1789"}, +gaH(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u200b\u1791\u17b6\u17c6\u1784\u17a2\u179f\u17cb"}, +gak(){return"\u1785\u17c2\u1780\u179a\u17c6\u179b\u17c2\u1780..."}} +A.ar6.prototype={ +gaK(){return"\u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cbf"}, +gaN(){return"\u0c95\u0ca4\u0ccd\u0ca4\u0cb0\u0cbf\u0cb8\u0cbf"}, +gaa(){return"\u0cae\u0cc7\u0cb2\u0cc6 \u0ca8\u0ccb\u0ca1\u0cbf"}, +gal(){return"\u0cb5\u0c9c\u0cbe\u0c97\u0cca\u0cb3\u0cbf\u0cb8\u0cbf"}, +gaM(){return"\u0c85\u0c82\u0c9f\u0cbf\u0cb8\u0cbf"}, +gaL(){return"\u0cb5\u0cc6\u0cac\u0ccd\u200c\u0ca8\u0cb2\u0ccd\u0cb2\u0cbf \u0cb9\u0cc1\u0ca1\u0cc1\u0c95\u0cbf"}, +gaH(){return"\u0c8e\u0cb2\u0ccd\u0cb2\u0cb5\u0ca8\u0ccd\u0ca8\u0cc2 \u0c86\u0caf\u0ccd\u0c95\u0cc6\u0cae\u0cbe\u0ca1\u0cbf"}, +gak(){return"\u0cb9\u0c82\u0c9a\u0cbf\u0c95\u0cca\u0cb3\u0ccd\u0cb3\u0cbf..."}} +A.ar7.prototype={ +gaK(){return"\ubcf5\uc0ac"}, +gaN(){return"\uc798\ub77c\ub0c4"}, +gaa(){return"\ucc3e\uae30"}, +gal(){return"\ub2eb\uae30"}, +gaM(){return"\ubd99\uc5ec\ub123\uae30"}, +gaL(){return"\uc6f9 \uac80\uc0c9"}, +gaH(){return"\uc804\uccb4 \uc120\ud0dd"}, +gak(){return"\uacf5\uc720..."}} +A.ar8.prototype={ +gaK(){return"\u041a\u04e9\u0447\u04af\u0440\u04af\u04af"}, +gaN(){return"\u041a\u0435\u0441\u04af\u04af"}, +gaa(){return"\u0418\u0437\u0434\u04e9\u04e9"}, +gal(){return"\u0416\u0430\u0431\u0443\u0443"}, +gaM(){return"\u0427\u0430\u043f\u0442\u043e\u043e"}, +gaL(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0438\u0437\u0434\u04e9\u04e9"}, +gaH(){return"\u0411\u0430\u0430\u0440\u044b\u043d \u0442\u0430\u043d\u0434\u043e\u043e"}, +gak(){return"\u0411\u04e9\u043b\u04af\u0448\u04af\u04af\u2026"}} +A.ar9.prototype={ +gaK(){return"\u0eaa\u0eb3\u0ec0\u0e99\u0ebb\u0eb2"}, +gaN(){return"\u0e95\u0eb1\u0e94"}, +gaa(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0e82\u0ecd\u0ec9\u0ea1\u0eb9\u0e99"}, +gal(){return"\u0e9b\u0eb4\u0e94\u0ec4\u0ea7\u0ec9"}, +gaM(){return"\u0ea7\u0eb2\u0e87"}, +gaL(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0ea2\u0eb9\u0ec8\u0ead\u0eb4\u0e99\u0ec0\u0e95\u0eb5\u0ec0\u0e99\u0eb1\u0e94"}, +gaH(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94"}, +gak(){return"\u0ec1\u0e9a\u0ec8\u0e87\u0e9b\u0eb1\u0e99..."}} +A.ara.prototype={ +gaK(){return"Kopijuoti"}, +gaN(){return"I\u0161kirpti"}, +gaa(){return"Ie\u0161koti"}, +gal(){return"Atsisakyti"}, +gaM(){return"\u012eklijuoti"}, +gaL(){return"Ie\u0161koti \u017einiatinklyje"}, +gaH(){return"Pasirinkti visk\u0105"}, +gak(){return"Bendrinti..."}} +A.arb.prototype={ +gaK(){return"Kop\u0113t"}, +gaN(){return"Izgriezt"}, +gaa(){return"Mekl\u0113t"}, +gal(){return"Ner\u0101d\u012bt"}, +gaM(){return"Iel\u012bm\u0113t"}, +gaL(){return"Mekl\u0113t t\u012bmekl\u012b"}, +gaH(){return"Atlas\u012bt visu"}, +gak(){return"Kop\u012bgot\u2026"}} +A.arc.prototype={ +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gaN(){return"\u0418\u0441\u0435\u0447\u0438"}, +gaa(){return"\u041f\u043e\u0433\u043b\u0435\u0434\u043d\u0435\u0442\u0435 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gal(){return"\u041e\u0442\u0444\u0440\u043b\u0438"}, +gaM(){return"\u0417\u0430\u043b\u0435\u043f\u0438"}, +gaL(){return"\u041f\u0440\u0435\u0431\u0430\u0440\u0430\u0458\u0442\u0435 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442"}, +gaH(){return"\u0418\u0437\u0431\u0435\u0440\u0438 \u0433\u0438 \u0441\u0438\u0442\u0435"}, +gak(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u0435\u0442\u0435..."}} +A.ard.prototype={ +gaK(){return"\u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15"}, +gaN(){return"\u0d2e\u0d41\u0d31\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaa(){return"\u0d2e\u0d41\u0d15\u0d33\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d28\u0d4b\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gal(){return"\u0d28\u0d3f\u0d30\u0d38\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaM(){return"\u0d12\u0d1f\u0d4d\u0d1f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaL(){return"\u0d35\u0d46\u0d2c\u0d3f\u0d7d \u0d24\u0d3f\u0d30\u0d2f\u0d41\u0d15"}, +gaH(){return"\u0d0e\u0d32\u0d4d\u0d32\u0d3e\u0d02 \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gak(){return"\u0d2a\u0d19\u0d4d\u0d15\u0d3f\u0d1f\u0d41\u0d15..."}} +A.are.prototype={ +gaK(){return"\u0425\u0443\u0443\u043b\u0430\u0445"}, +gaN(){return"\u0422\u0430\u0441\u043b\u0430\u0445"}, +gaa(){return"\u0414\u044d\u044d\u0448\u044d\u044d \u0445\u0430\u0440\u0430\u0445"}, +gal(){return"\u04ae\u043b \u0445\u044d\u0440\u044d\u0433\u0441\u044d\u0445"}, +gaM(){return"\u0411\u0443\u0443\u043b\u0433\u0430\u0445"}, +gaL(){return"\u0412\u0435\u0431\u044d\u044d\u0441 \u0445\u0430\u0439\u0445"}, +gaH(){return"\u0411\u04af\u0433\u0434\u0438\u0439\u0433 \u0441\u043e\u043d\u0433\u043e\u0445"}, +gak(){return"\u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0430\u0445..."}} +A.arf.prototype={ +gaK(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u093e"}, +gaN(){return"\u0915\u091f \u0915\u0930\u093e"}, +gaa(){return"\u0936\u094b\u0927 \u0918\u094d\u092f\u093e"}, +gal(){return"\u0921\u093f\u0938\u092e\u093f\u0938 \u0915\u0930\u093e"}, +gaM(){return"\u092a\u0947\u0938\u094d\u091f \u0915\u0930\u093e"}, +gaL(){return"\u0935\u0947\u092c\u0935\u0930 \u0936\u094b\u0927\u093e"}, +gaH(){return"\u0938\u0930\u094d\u0935 \u0928\u093f\u0935\u0921\u093e"}, +gak(){return"\u0936\u0947\u0905\u0930 \u0915\u0930\u093e..."}} +A.arg.prototype={ +gaK(){return"Salin"}, +gaN(){return"Potong"}, +gaa(){return"Lihat ke Atas"}, +gal(){return"Tolak"}, +gaM(){return"Tampal"}, +gaL(){return"Buat carian pada Web"}, +gaH(){return"Pilih Semua"}, +gak(){return"Kongsi..."}} +A.arh.prototype={ +gaK(){return"\u1019\u102d\u1010\u1039\u1010\u1030\u1000\u1030\u1038\u101b\u1014\u103a"}, +gaN(){return"\u1016\u103c\u1010\u103a\u101a\u1030\u101b\u1014\u103a"}, +gaa(){return"\u1021\u1015\u1031\u102b\u103a\u1000\u103c\u100a\u103a\u1037\u101b\u1014\u103a"}, +gal(){return"\u1015\u101a\u103a\u101b\u1014\u103a"}, +gaM(){return"\u1000\u1030\u1038\u1011\u100a\u1037\u103a\u101b\u1014\u103a"}, +gaL(){return"\u101d\u1018\u103a\u1010\u103d\u1004\u103a\u101b\u103e\u102c\u101b\u1014\u103a"}, +gaH(){return"\u1021\u102c\u1038\u101c\u102f\u1036\u1038 \u101b\u103d\u1031\u1038\u101b\u1014\u103a"}, +gak(){return"\u1019\u103b\u103e\u101d\u1031\u101b\u1014\u103a..."}} +A.ari.prototype={ +gaK(){return"Kopi\xe9r"}, +gaN(){return"Klipp ut"}, +gaa(){return"Sl\xe5 opp"}, +gal(){return"Avvis"}, +gaM(){return"Lim inn"}, +gaL(){return"S\xf8k p\xe5 nettet"}, +gaH(){return"Velg alle"}, +gak(){return"Del\u2026"}} +A.arj.prototype={ +gaK(){return"\u092a\u094d\u0930\u0924\u093f\u0932\u093f\u092a\u093f \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaN(){return"\u0915\u093e\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaa(){return"\u092e\u093e\u0925\u093f\u0924\u093f\u0930 \u0939\u0947\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gal(){return"\u0916\u093e\u0930\u0947\u091c \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaM(){return"\u091f\u093e\u0901\u0938\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaL(){return"\u0935\u0947\u092c\u092e\u093e \u0916\u094b\u091c\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaH(){return"\u0938\u092c\u0948 \u091a\u092f\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gak(){return"\u0938\u0947\u092f\u0930 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d..."}} +A.ark.prototype={ +gaK(){return"Kopi\xebren"}, +gaN(){return"Knippen"}, +gaa(){return"Opzoeken"}, +gal(){return"Sluiten"}, +gaM(){return"Plakken"}, +gaL(){return"Op internet zoeken"}, +gaH(){return"Alles selecteren"}, +gak(){return"Delen..."}} +A.arl.prototype={ +gaK(){return"Kopi\xe9r"}, +gaN(){return"Klipp ut"}, +gaa(){return"Sl\xe5 opp"}, +gal(){return"Avvis"}, +gaM(){return"Lim inn"}, +gaL(){return"S\xf8k p\xe5 nettet"}, +gaH(){return"Velg alle"}, +gak(){return"Del\u2026"}} +A.arm.prototype={ +gaK(){return"\u0b15\u0b2a\u0b3f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaN(){return"\u0b15\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaa(){return"\u0b09\u0b2a\u0b30\u0b15\u0b41 \u0b26\u0b47\u0b16\u0b28\u0b4d\u0b24\u0b41"}, +gal(){return"\u0b16\u0b3e\u0b30\u0b1c \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaM(){return"\u0b2a\u0b47\u0b37\u0b4d\u0b1f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaL(){return"\u0b71\u0b47\u0b2c \u0b38\u0b30\u0b4d\u0b1a\u0b4d\u0b1a \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaH(){return"\u0b38\u0b2e\u0b38\u0b4d\u0b24 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gak(){return"\u0b38\u0b47\u0b5f\u0b3e\u0b30\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41..."}} +A.arn.prototype={ +gaK(){return"\u0a15\u0a3e\u0a2a\u0a40 \u0a15\u0a30\u0a4b"}, +gaN(){return"\u0a15\u0a71\u0a1f \u0a15\u0a30\u0a4b"}, +gaa(){return"\u0a16\u0a4b\u0a1c\u0a4b"}, +gal(){return"\u0a16\u0a3e\u0a30\u0a1c \u0a15\u0a30\u0a4b"}, +gaM(){return"\u0a2a\u0a47\u0a38\u0a1f \u0a15\u0a30\u0a4b"}, +gaL(){return"\u0a35\u0a48\u0a71\u0a2c '\u0a24\u0a47 \u0a16\u0a4b\u0a1c\u0a4b"}, +gaH(){return"\u0a38\u0a2d \u0a1a\u0a41\u0a23\u0a4b"}, +gak(){return"\u0a38\u0a3e\u0a02\u0a1d\u0a3e \u0a15\u0a30\u0a4b..."}} +A.aro.prototype={ +gaK(){return"Kopiuj"}, +gaN(){return"Wytnij"}, +gaa(){return"Sprawd\u017a"}, +gal(){return"Zamknij"}, +gaM(){return"Wklej"}, +gaL(){return"Szukaj w\xa0internecie"}, +gaH(){return"Wybierz wszystkie"}, +gak(){return"Udost\u0119pnij\u2026"}} +A.a1i.prototype={ +gaK(){return"Copiar"}, +gaN(){return"Cortar"}, +gaa(){return"Pesquisar"}, +gal(){return"Dispensar"}, +gaM(){return"Colar"}, +gaL(){return"Pesquisar na Web"}, +gaH(){return"Selecionar tudo"}, +gak(){return"Compartilhar\u2026"}} +A.arp.prototype={ +gak(){return"Partilhar\u2026"}, +gaa(){return"Procurar"}, +gal(){return"Ignorar"}} +A.arq.prototype={ +gaK(){return"Copia\u021bi"}, +gaN(){return"Decupa\u021bi"}, +gaa(){return"Privire \xeen sus"}, +gal(){return"\xcenchide\u021bi"}, +gaM(){return"Insera\u021bi"}, +gaL(){return"C\u0103uta\u021bi pe web"}, +gaH(){return"Selecteaz\u0103 tot"}, +gak(){return"Trimite\u021bi\u2026"}} +A.arr.prototype={ +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c"}, +gaN(){return"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c"}, +gaa(){return"\u041d\u0430\u0439\u0442\u0438"}, +gal(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}, +gaM(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c"}, +gaL(){return"\u0418\u0441\u043a\u0430\u0442\u044c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435"}, +gaH(){return"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435"}, +gak(){return"\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f"}} +A.ars.prototype={ +gaK(){return"\u0db4\u0dd2\u0da7\u0db4\u0dad\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gaN(){return"\u0d9a\u0db4\u0db1\u0dca\u0db1"}, +gaa(){return"\u0d8b\u0da9 \u0db6\u0dbd\u0db1\u0dca\u0db1"}, +gal(){return"\u0d89\u0dc0\u0dad \u0dbd\u0db1\u0dca\u0db1"}, +gaM(){return"\u0d85\u0dbd\u0dc0\u0db1\u0dca\u0db1"}, +gaL(){return"\u0dc0\u0dd9\u0db6\u0dba \u0dc3\u0ddc\u0dba\u0db1\u0dca\u0db1"}, +gaH(){return"\u0dc3\u0dd2\u0dba\u0dbd\u0dca\u0dbd \u0dad\u0ddd\u0dbb\u0db1\u0dca\u0db1"}, +gak(){return"\u0db6\u0dd9\u0daf\u0dcf \u0d9c\u0db1\u0dca\u0db1..."}} +A.art.prototype={ +gaK(){return"Kop\xedrova\u0165"}, +gaN(){return"Vystrihn\xfa\u0165"}, +gaa(){return"Poh\u013ead nahor"}, +gal(){return"Odmietnu\u0165"}, +gaM(){return"Prilepi\u0165"}, +gaL(){return"H\u013eada\u0165 na webe"}, +gaH(){return"Ozna\u010di\u0165 v\u0161etko"}, +gak(){return"Zdie\u013ea\u0165\u2026"}} +A.aru.prototype={ +gaK(){return"Kopiraj"}, +gaN(){return"Izre\u017ei"}, +gaa(){return"Pogled gor"}, +gal(){return"Opusti"}, +gaM(){return"Prilepi"}, +gaL(){return"Iskanje v spletu"}, +gaH(){return"Izberi vse"}, +gak(){return"Deli \u2026"}} +A.arv.prototype={ +gaK(){return"Kopjo"}, +gaN(){return"Prit"}, +gaa(){return"K\xebrko"}, +gal(){return"Hiq"}, +gaM(){return"Ngjit"}, +gaL(){return"K\xebrko n\xeb ueb"}, +gaH(){return"Zgjidhi t\xeb gjitha"}, +gak(){return"Ndaj..."}} +A.a1j.prototype={ +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gaN(){return"\u0418\u0441\u0435\u0446\u0438"}, +gaa(){return"\u041f\u043e\u0433\u043b\u0435\u0434 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gal(){return"\u041e\u0434\u0431\u0430\u0446\u0438"}, +gaM(){return"\u041d\u0430\u043b\u0435\u043f\u0438"}, +gaL(){return"\u041f\u0440\u0435\u0442\u0440\u0430\u0436\u0438 \u0432\u0435\u0431"}, +gaH(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438 \u0441\u0432\u0435"}, +gak(){return"\u0414\u0435\u043b\u0438\u2026"}} +A.arw.prototype={} +A.arx.prototype={ +gaK(){return"Kopiraj"}, +gaN(){return"Iseci"}, +gaa(){return"Pogled nagore"}, +gal(){return"Odbaci"}, +gaM(){return"Nalepi"}, +gaL(){return"Pretra\u017ei veb"}, +gaH(){return"Izaberi sve"}, +gak(){return"Deli\u2026"}} +A.ary.prototype={ +gaK(){return"Kopiera"}, +gaN(){return"Klipp ut"}, +gaa(){return"Titta upp"}, +gal(){return"St\xe4ng"}, +gaM(){return"Klistra in"}, +gaL(){return"S\xf6k p\xe5 webben"}, +gaH(){return"Markera allt"}, +gak(){return"Dela \u2026"}} +A.arz.prototype={ +gaK(){return"Nakili"}, +gaN(){return"Kata"}, +gaa(){return"Tafuta"}, +gal(){return"Ondoa"}, +gaM(){return"Bandika"}, +gaL(){return"Tafuta kwenye Wavuti"}, +gaH(){return"Teua Zote"}, +gak(){return"Shiriki..."}} +A.arA.prototype={ +gaK(){return"\u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1"}, +gaN(){return"\u0bb5\u0bc6\u0b9f\u0bcd\u0b9f\u0bc1"}, +gaa(){return"\u0ba4\u0bc7\u0b9f\u0bc1"}, +gal(){return"\u0ba8\u0bbf\u0bb0\u0bbe\u0b95\u0bb0\u0bbf\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd"}, +gaM(){return"\u0b92\u0b9f\u0bcd\u0b9f\u0bc1"}, +gaL(){return"\u0b87\u0ba3\u0bc8\u0baf\u0ba4\u0bcd\u0ba4\u0bbf\u0bb2\u0bcd \u0ba4\u0bc7\u0b9f\u0bc1"}, +gaH(){return"\u0b8e\u0bb2\u0bcd\u0bb2\u0bbe\u0bae\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0ba8\u0bcd\u0ba4\u0bc6\u0b9f\u0bc1"}, +gak(){return"\u0baa\u0b95\u0bbf\u0bb0\u0bcd..."}} +A.arB.prototype={ +gaK(){return"\u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c3f"}, +gaN(){return"\u0c15\u0c24\u0c4d\u0c24\u0c3f\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gaa(){return"\u0c35\u0c46\u0c24\u0c15\u0c02\u0c21\u0c3f"}, +gal(){return"\u0c35\u0c3f\u0c38\u0c4d\u0c2e\u0c30\u0c3f\u0c02\u0c1a\u0c41"}, +gaM(){return"\u0c2a\u0c47\u0c38\u0c4d\u0c1f\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gaL(){return"\u0c35\u0c46\u0c2c\u0c4d\u200c\u0c32\u0c4b \u0c38\u0c46\u0c30\u0c4d\u0c1a\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gaH(){return"\u0c05\u0c28\u0c4d\u0c28\u0c3f\u0c02\u0c1f\u0c3f\u0c28\u0c40 \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}, +gak(){return"\u0c37\u0c47\u0c30\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f..."}} +A.arC.prototype={ +gaK(){return"\u0e04\u0e31\u0e14\u0e25\u0e2d\u0e01"}, +gaN(){return"\u0e15\u0e31\u0e14"}, +gaa(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32"}, +gal(){return"\u0e1b\u0e34\u0e14"}, +gaM(){return"\u0e27\u0e32\u0e07"}, +gaL(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32\u0e1a\u0e19\u0e2d\u0e34\u0e19\u0e40\u0e17\u0e2d\u0e23\u0e4c\u0e40\u0e19\u0e47\u0e15"}, +gaH(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14"}, +gak(){return"\u0e41\u0e0a\u0e23\u0e4c..."}} +A.arD.prototype={ +gaK(){return"Kopyahin"}, +gaN(){return"I-cut"}, +gaa(){return"Tumingin sa Itaas"}, +gal(){return"I-dismiss"}, +gaM(){return"I-paste"}, +gaL(){return"Maghanap sa Web"}, +gaH(){return"Piliin Lahat"}, +gak(){return"Ibahagi..."}} +A.arE.prototype={ +gaK(){return"Kopyala"}, +gaN(){return"Kes"}, +gaa(){return"Ara"}, +gal(){return"Kapat"}, +gaM(){return"Yap\u0131\u015ft\u0131r"}, +gaL(){return"Web'de Ara"}, +gaH(){return"T\xfcm\xfcn\xfc Se\xe7"}, +gak(){return"Payla\u015f..."}} +A.arF.prototype={ +gaK(){return"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438"}, +gaN(){return"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438"}, +gaa(){return"\u0428\u0443\u043a\u0430\u0442\u0438"}, +gal(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gaM(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438"}, +gaL(){return"\u041f\u043e\u0448\u0443\u043a \u0432 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0456"}, +gaH(){return"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0432\u0441\u0435"}, +gak(){return"\u041f\u043e\u0434\u0456\u043b\u0438\u0442\u0438\u0441\u044f\u2026"}} +A.arG.prototype={ +gaK(){return"\u06a9\u0627\u067e\u06cc \u06a9\u0631\u06cc\u06ba"}, +gaN(){return"\u06a9\u0679 \u06a9\u0631\u06cc\u06ba"}, +gaa(){return"\u062a\u0641\u0635\u06cc\u0644 \u062f\u06cc\u06a9\u06be\u06cc\u06ba"}, +gal(){return"\u0628\u0631\u062e\u0627\u0633\u062a \u06a9\u0631\u06cc\u06ba"}, +gaM(){return"\u067e\u06cc\u0633\u0679 \u06a9\u0631\u06cc\u06ba"}, +gaL(){return"\u0648\u06cc\u0628 \u062a\u0644\u0627\u0634 \u06a9\u0631\u06cc\u06ba"}, +gaH(){return"\u0633\u0628\u06be\u06cc \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}, +gak(){return"\u0627\u0634\u062a\u0631\u0627\u06a9 \u06a9\u0631\u06cc\u06ba..."}} +A.arH.prototype={ +gaK(){return"Nusxa olish"}, +gaN(){return"Kesib olish"}, +gaa(){return"Tepaga qarang"}, +gal(){return"Yopish"}, +gaM(){return"Joylash"}, +gaL(){return"Internetdan qidirish"}, +gaH(){return"Barchasini tanlash"}, +gak(){return"Ulashish\u2026"}} +A.arI.prototype={ +gaK(){return"Sao ch\xe9p"}, +gaN(){return"C\u1eaft"}, +gaa(){return"Tra c\u1ee9u"}, +gal(){return"B\u1ecf qua"}, +gaM(){return"D\xe1n"}, +gaL(){return"T\xecm ki\u1ebfm tr\xean web"}, +gaH(){return"Ch\u1ecdn t\u1ea5t c\u1ea3"}, +gak(){return"Chia s\u1ebb..."}} +A.a1k.prototype={ +gaK(){return"\u590d\u5236"}, +gaN(){return"\u526a\u5207"}, +gaa(){return"\u5411\u4e0a\u770b"}, +gal(){return"\u5173\u95ed"}, +gaM(){return"\u7c98\u8d34"}, +gaL(){return"\u5728\u7f51\u7edc\u4e0a\u641c\u7d22"}, +gaH(){return"\u5168\u9009"}, +gak(){return"\u5206\u4eab\u2026"}} +A.arJ.prototype={} +A.a1l.prototype={ +gaK(){return"\u8907\u88fd"}, +gaN(){return"\u526a\u4e0b"}, +gaa(){return"\u67e5\u8a62"}, +gal(){return"\u62d2\u7d55"}, +gaM(){return"\u8cbc\u4e0a"}, +gaL(){return"\u641c\u5c0b\u7db2\u9801"}, +gaH(){return"\u5168\u9078"}} +A.arK.prototype={} +A.arL.prototype={ +gaL(){return"\u5728\u7db2\u8def\u4e0a\u641c\u5c0b"}, +gal(){return"\u95dc\u9589"}} +A.arM.prototype={ +gaK(){return"Kopisha"}, +gaN(){return"Sika"}, +gaa(){return"Bheka Phezulu"}, +gal(){return"Cashisa"}, +gaM(){return"Namathisela"}, +gaL(){return"Sesha Iwebhu"}, +gaH(){return"Khetha konke"}, +gak(){return"Yabelana..."}} +A.axn.prototype={ +gbF(){return"Meer oor $applicationName"}, +gcp(){return"Opletberig"}, +gcq(){return"Terug"}, +gbV(){return"Onderste blad"}, +gbB(){return"Skakel oor na kalender"}, +gcb(){return"Kanselleer"}, +gcj(){return"Maak toe"}, +gcr(){return"Maak toe"}, +gaK(){return"Kopieer"}, +gcw(){return"Vandag"}, +gaN(){return"Knip"}, +gbW(){return"dd-mm-jjjj"}, +gbp(){return"Voer datum in"}, +gbC(){return"Buite reeks."}, +gbv(){return"Kies datum"}, +gbD(){return"Vee uit"}, +gbs(){return"Dialoog"}, +gbw(){return"Skakel oor na invoer"}, +gbH(){return"Ongeldige formaat."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisensie"}, +gbt(){return"$licenseCount lisensies"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lisensies"}, +gaa(){return"Kyk op"}, +gbx(){return"Maak kieslys toe"}, +gal(){return"Maak toe"}, +gcF(){return"Nog"}, +gbI(){return"Volgende maand"}, +gcc(){return"OK"}, +gby(){return"Maak navigasiekieslys oop"}, +gaM(){return"Plak"}, +gc4(){return"Opspringkieslys"}, +gcz(){return"Vorige maand"}, +gcA(){return"Herlaai"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 karakter oor"}, +gct(){return"$remainingCount karakters oor"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Skuif af"}, +gcd(){return"Skuif na die einde"}, +gbE(){return"Skuif na die begin"}, +gcC(){return"Skuif op"}, +gbz(){return"Skandeer teks"}, +gbA(){return"Skerm"}, +gcu(){return"Maak $modalRouteContentName toe"}, +gcJ(){return B.a3}, +gco(){return"Soek"}, +gaL(){return"Deursoek web"}, +gaH(){return"Kies alles"}, +gcg(){return"Kies jaar"}, +gak(){return"Deel \u2026"}, +gcn(){return"Oortjie $tabIndex van $tabCount"}, +gbX(){return"Bekyk lisensies"}} +A.axo.prototype={ +gbF(){return"\u1235\u1208 $applicationName"}, +gcp(){return"\u121b\u1295\u1242\u12eb"}, +gcq(){return"\u1270\u1218\u1208\u1235"}, +gbV(){return"\u12e8\u130d\u122d\u130c \u1209\u1205"}, +gbB(){return"\u12c8\u12f0 \u12e8\u1240\u1295 \u1218\u1241\u1320\u122a\u12eb \u1240\u12ed\u122d"}, +gcb(){return"\u12ed\u1245\u122d"}, +gcj(){return"\u12dd\u130b"}, +gcr(){return"\u12dd\u130b"}, +gaK(){return"\u1245\u12f3"}, +gcw(){return"\u12db\u122c"}, +gaN(){return"\u1241\u1228\u1325"}, +gbW(){return"\u12c8\u12c8/\u1240\u1240/\u12d3\u12d3\u12d3\u12d3"}, +gbp(){return"\u1240\u1295 \u12eb\u1235\u1308\u1261"}, +gbC(){return"\u12a8\u12ad\u120d\u120d \u12cd\u132d\u1362"}, +gbv(){return"\u1240\u1295 \u12ed\u121d\u1228\u1321"}, +gbD(){return"\u1230\u122d\u12dd"}, +gbs(){return"\u1218\u1308\u1293\u129b"}, +gbw(){return"\u12c8\u12f0 \u130d\u1264\u1275 \u1240\u12ed\u122d"}, +gbH(){return"\u120d\u12ad \u12eb\u120d\u1206\u1290 \u1245\u122d\u1338\u1275\u1362"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u1348\u1243\u12f5"}, +gbt(){return"$licenseCount \u1348\u1243\u12f6\u127d"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u1348\u1243\u12f6\u127d"}, +gaa(){return"\u12ed\u1218\u120d\u12a8\u1271"}, +gbx(){return"\u121d\u1293\u120c\u1295 \u12a0\u1230\u1293\u1265\u1275"}, +gal(){return"\u12a0\u1230\u1293\u1265\u1275"}, +gcF(){return"\u1270\u1328\u121b\u122a"}, +gbI(){return"\u1240\u1323\u12ed \u12c8\u122d"}, +gcc(){return"\u12a5\u123a"}, +gby(){return"\u12e8\u12f3\u1230\u1233 \u121d\u1293\u120c\u1295 \u12ad\u1348\u1275"}, +gaM(){return"\u1208\u1325\u134d"}, +gc4(){return"\u12e8\u1265\u1245-\u1263\u12ed \u121d\u1293\u120c"}, +gcz(){return"\u1240\u12f3\u121a \u12c8\u122d"}, +gcA(){return"\u12a0\u12f5\u1235"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u1241\u121d\u134a \u12ed\u1240\u122b\u120d"}, +gct(){return"$remainingCount \u1241\u121d\u134a\u12ce\u127d \u12ed\u1240\u122b\u1209"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u12c8\u12f0 \u1273\u127d \u12cd\u1230\u12f5"}, +gcd(){return"\u12c8\u12f0 \u1218\u1328\u1228\u123b \u12cd\u1230\u12f5"}, +gbE(){return"\u12c8\u12f0 \u1218\u1300\u1218\u122a\u12eb \u12cd\u1230\u12f5"}, +gcC(){return"\u12c8\u12f0 \u120b\u12ed \u12cd\u1230\u12f5"}, +gbz(){return"\u133d\u1201\u134d\u1295 \u1243\u129d"}, +gbA(){return"\u1308\u12f3\u1262"}, +gcu(){return"$modalRouteContentName\u1295 \u12dd\u130b"}, +gcJ(){return B.a3}, +gco(){return"\u12ed\u1348\u120d\u1309"}, +gaL(){return"\u12f5\u122d\u1295 \u1348\u120d\u130d"}, +gaH(){return"\u1201\u1209\u1295\u121d \u121d\u1228\u1325"}, +gcg(){return"\u12d3\u1218\u1275 \u12ed\u121d\u1228\u1321"}, +gak(){return"\u12a0\u130b\u122b..."}, +gcn(){return"\u1275\u122d $tabIndex \u12a8$tabCount"}, +gbX(){return"\u1348\u1243\u12f6\u127d\u1295 \u12ed\u1218\u120d\u12a8\u1271"}} +A.axp.prototype={ +gbF(){return'\u0644\u0645\u062d\u0629 \u0639\u0646 "$applicationName"'}, +gcp(){return"\u062a\u0646\u0628\u064a\u0647"}, +gcq(){return"\u0631\u062c\u0648\u0639"}, +gbV(){return"\u0628\u0637\u0627\u0642\u0629 \u0633\u0641\u0644\u064a\u0629"}, +gbB(){return"\u0627\u0644\u062a\u0628\u062f\u064a\u0644 \u0625\u0644\u0649 \u0627\u0644\u062a\u0642\u0648\u064a\u0645"}, +gcb(){return"\u0627\u0644\u0625\u0644\u063a\u0627\u0621"}, +gcj(){return"\u0627\u0644\u0625\u063a\u0644\u0627\u0642"}, +gcr(){return"\u0625\u063a\u0644\u0627\u0642"}, +gaK(){return"\u0646\u0633\u062e"}, +gcw(){return"\u062a\u0627\u0631\u064a\u062e \u0627\u0644\u064a\u0648\u0645"}, +gaN(){return"\u0642\u0635"}, +gbW(){return"yyyy/mm/dd"}, +gbp(){return"\u0625\u062f\u062e\u0627\u0644 \u0627\u0644\u062a\u0627\u0631\u064a\u062e"}, +gbC(){return"\u0627\u0644\u062a\u0627\u0631\u064a\u062e \u062e\u0627\u0631\u062c \u0627\u0644\u0646\u0637\u0627\u0642."}, +gbv(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u062a\u0627\u0631\u064a\u062e"}, +gbD(){return"\u062d\u0630\u0641"}, +gbs(){return"\u0645\u0631\u0628\u0639 \u062d\u0648\u0627\u0631"}, +gbw(){return"\u0627\u0644\u062a\u0628\u062f\u064a\u0644 \u0625\u0644\u0649 \u0627\u0644\u0625\u062f\u062e\u0627\u0644"}, +gbH(){return"\u0627\u0644\u062a\u0646\u0633\u064a\u0642 \u063a\u064a\u0631 \u0635\u0627\u0644\u062d."}, +gcE(){return"$licenseCount \u062a\u0631\u0627\u062e\u064a\u0635"}, +gcN(){return"$licenseCount \u062a\u0631\u062e\u064a\u0635\u064b\u0627"}, +gbr(){return"\u062a\u0631\u062e\u064a\u0635 \u0648\u0627\u062d\u062f"}, +gbt(){return"$licenseCount \u062a\u0631\u062e\u064a\u0635"}, +gcO(){return"\u062a\u0631\u062e\u064a\u0635\u0627\u0646 ($licenseCount)"}, +gc7(){return"\u0645\u0627 \u0645\u0650\u0646 \u062a\u0631\u0627\u062e\u064a\u0635"}, +gc3(){return"\u0627\u0644\u062a\u0631\u0627\u062e\u064a\u0635"}, +gaa(){return"\u0627\u0644\u0646\u0638\u0631 \u0625\u0644\u0649 \u0623\u0639\u0644\u0649"}, +gbx(){return"\u0625\u063a\u0644\u0627\u0642 \u0627\u0644\u0642\u0627\u0626\u0645\u0629"}, +gal(){return"\u0631\u0641\u0636"}, +gcF(){return"\u0627\u0644\u0645\u0632\u064a\u062f"}, +gbI(){return"\u0627\u0644\u0634\u0647\u0631 \u0627\u0644\u062a\u0627\u0644\u064a"}, +gcc(){return"\u062d\u0633\u0646\u064b\u0627"}, +gby(){return"\u0641\u062a\u062d \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062a\u0646\u0642\u0644"}, +gaM(){return"\u0644\u0635\u0642"}, +gc4(){return"\u0642\u0627\u0626\u0645\u0629 \u0645\u0646\u0628\u062b\u0642\u0629"}, +gcz(){return"\u0627\u0644\u0634\u0647\u0631 \u0627\u0644\u0633\u0627\u0628\u0642"}, +gcA(){return"\u0625\u0639\u0627\u062f\u0629 \u062a\u062d\u0645\u064a\u0644"}, +gcH(){return"$remainingCount \u0623\u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064a\u0629"}, +gcQ(){return"$remainingCount \u062d\u0631\u0641\u064b\u0627 \u0645\u062a\u0628\u0642\u064a\u064b\u0627"}, +gcm(){return"\u062d\u0631\u0641 \u0648\u0627\u062d\u062f \u0645\u062a\u0628\u0642\u064d"}, +gct(){return"$remainingCount \u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064d"}, +gcR(){return"\u062d\u0631\u0641\u0627\u0646 ($remainingCount) \u0645\u062a\u0628\u0642\u064a\u0627\u0646"}, +gcS(){return"\u0644\u0627 \u0623\u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064a\u0629"}, +gcB(){return"\u0646\u0642\u0644 \u0644\u0623\u0633\u0641\u0644"}, +gcd(){return"\u0646\u0642\u0644 \u0625\u0644\u0649 \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0642\u0627\u0626\u0645\u0629"}, +gbE(){return"\u0646\u0642\u0644 \u0625\u0644\u0649 \u0628\u062f\u0627\u064a\u0629 \u0627\u0644\u0642\u0627\u0626\u0645\u0629"}, +gcC(){return"\u0646\u0642\u0644 \u0644\u0623\u0639\u0644\u0649"}, +gbz(){return"\u0645\u0633\u062d \u0627\u0644\u0646\u0635 \u0636\u0648\u0626\u064a\u064b\u0627"}, +gbA(){return"\u062a\u0645\u0648\u064a\u0647"}, +gcu(){return'\u0625\u063a\u0644\u0627\u0642 "$modalRouteContentName"'}, +gcJ(){return B.cR}, +gco(){return"\u0628\u062d\u062b"}, +gaL(){return"\u0627\u0644\u0628\u062d\u062b \u0639\u0644\u0649 \u0627\u0644\u0648\u064a\u0628"}, +gaH(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0643\u0644"}, +gcg(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0639\u0627\u0645"}, +gak(){return"\u0645\u0634\u0627\u0631\u0643\u0629\u2026"}, +gcn(){return"\u0639\u0644\u0627\u0645\u0629 \u0627\u0644\u062a\u0628\u0648\u064a\u0628 $tabIndex \u0645\u0646 $tabCount"}, +gbX(){return"\u0627\u0644\u0627\u0637\u0651\u0644\u0627\u0639 \u0639\u0644\u0649 \u0627\u0644\u062a\u0631\u0627\u062e\u064a\u0635"}} +A.axq.prototype={ +gbF(){return"$applicationName\u09f0 \u09ac\u09bf\u09b7\u09df\u09c7"}, +gcp(){return"\u09b8\u09a4\u09f0\u09cd\u0995\u09ac\u09be\u09f0\u09cd\u09a4\u09be"}, +gcq(){return"\u0989\u09ad\u09a4\u09bf \u09af\u09be\u0993\u0995"}, +gbV(){return"\u09a4\u09b2\u09f0 \u09b6\u09cd\u09ac\u09c0\u099f"}, +gbB(){return"\u0995\u09c7\u09b2\u09c7\u09a3\u09cd\u09a1\u09be\u09f0\u09b2\u09c8 \u09b8\u09b2\u09a8\u09bf \u0995\u09f0\u0995"}, +gcb(){return"\u09ac\u09be\u09a4\u09bf\u09b2 \u0995\u09f0\u0995"}, +gcj(){return"\u09ac\u09a8\u09cd\u09a7 \u0995\u09f0\u0995"}, +gcr(){return"\u09ac\u09a8\u09cd\u09a7 \u0995\u09f0\u0995"}, +gaK(){return"\u09aa\u09cd\u09f0\u09a4\u09bf\u09b2\u09bf\u09aa\u09bf \u0995\u09f0\u0995"}, +gcw(){return"\u0986\u099c\u09bf"}, +gaN(){return"\u0995\u09be\u099f \u0995\u09f0\u0995"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"\u09a4\u09be\u09f0\u09bf\u0996\u099f\u09cb \u09a6\u09bf\u09df\u0995"}, +gbC(){return"\u09b8\u09c0\u09ae\u09be\u09f0 \u09ac\u09be\u09b9\u09bf\u09f0\u09a4\u0964"}, +gbv(){return"\u09a4\u09be\u09f0\u09bf\u0996 \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}, +gbD(){return"\u09ae\u099a\u0995"}, +gbs(){return"\u09a1\u09be\u09df\u09b2'\u0997"}, +gbw(){return"\u0987\u09a8\u09aa\u09c1\u099f\u09b2\u09c8 \u09b8\u09b2\u09a8\u09bf \u0995\u09f0\u0995"}, +gbH(){return"\u0985\u09ae\u09be\u09a8\u09cd\u09af \u09ab\u09f0\u09cd\u09ae\u09c7\u099f\u0964"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u09e7 \u0996\u09a8 \u0985\u09a8\u09c1\u099c\u09cd\u099e\u09be\u09aa\u09a4\u09cd\u09f0"}, +gbt(){return"$licenseCount \u0996\u09a8 \u0985\u09a8\u09c1\u099c\u09cd\u099e\u09be\u09aa\u09a4\u09cd\u09f0"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0985\u09a8\u09c1\u099c\u09cd\u099e\u09be\u09aa\u09a4\u09cd\u09f0\u09b8\u09ae\u09c2\u09b9"}, +gaa(){return"\u0993\u09aa\u09f0\u09b2\u09c8 \u099a\u09be\u0993\u0995"}, +gbx(){return"\u0985\u0997\u09cd\u09f0\u09be\u09b9\u09cd\u09af \u0995\u09f0\u09be\u09f0 \u09ae\u09c7\u09a8\u09c1"}, +gal(){return"\u0985\u0997\u09cd\u09f0\u09be\u09b9\u09cd\u09af \u0995\u09f0\u0995"}, +gcF(){return"\u0985\u09a7\u09bf\u0995"}, +gbI(){return"\u09aa\u09f0\u09f1\u09f0\u09cd\u09a4\u09c0 \u09ae\u09be\u09b9"}, +gcc(){return"\u09a0\u09bf\u0995 \u0986\u099b\u09c7"}, +gby(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09cd\u09ac\u09a8 \u09ae\u09c7\u09a8\u09c1 \u0996\u09cb\u09b2\u0995"}, +gaM(){return"\u09aa\u09c7'\u09b7\u09cd\u099f \u0995\u09f0\u0995"}, +gc4(){return"\u09aa'\u09aa\u0986\u09aa \u09ae\u09c7\u09a8\u09c1"}, +gcz(){return"\u09aa\u09c2\u09f0\u09cd\u09ac\u09f1\u09f0\u09cd\u09a4\u09c0 \u09ae\u09be\u09b9"}, +gcA(){return"\u09f0\u09bf\u09ab\u09cd\u09f0\u09c7\u09b6\u09cd\u09ac \u0995\u09f0\u0995"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u09e7\u099f\u09be \u09ac\u09b0\u09cd\u09a3 \u09ac\u09be\u0995\u09c0 \u0986\u099b\u09c7"}, +gct(){return"$remainingCount\u099f\u09be \u09ac\u09b0\u09cd\u09a3 \u09ac\u09be\u0995\u09c0 \u0986\u099b\u09c7"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u09a4\u09b2\u09b2\u09c8 \u09b8\u09cd\u09a5\u09be\u09a8\u09be\u09a8\u09cd\u09a4\u09f0 \u0995\u09f0\u0995"}, +gcd(){return"\u09b6\u09c7\u09b7\u09b2\u09c8 \u09b8\u09cd\u09a5\u09be\u09a8\u09be\u09a8\u09cd\u09a4\u09f0 \u0995\u09f0\u0995"}, +gbE(){return"\u0986\u09f0\u09ae\u09cd\u09ad\u09a3\u09bf\u09b2\u09c8 \u09b8\u09cd\u09a5\u09be\u09a8\u09be\u09a8\u09cd\u09a4\u09f0 \u0995\u09f0\u0995"}, +gcC(){return"\u0993\u09aa\u09f0\u09b2\u09c8 \u09a8\u09bf\u09df\u0995"}, +gbz(){return"\u09aa\u09be\u09a0 \u09b8\u09cd\u0995\u09c7\u09a8 \u0995\u09f0\u0995"}, +gbA(){return"\u09b8\u09cd\u0995\u09cd\u09f0\u09bf\u09ae"}, +gcu(){return"$modalRouteContentName \u09ac\u09a8\u09cd\u09a7 \u0995\u09f0\u0995"}, +gcJ(){return B.a3}, +gco(){return"\u09b8\u09a8\u09cd\u09a7\u09be\u09a8 \u0995\u09f0\u0995"}, +gaL(){return"\u09f1\u09c7\u09ac\u09a4 \u09b8\u09a8\u09cd\u09a7\u09be\u09a8 \u0995\u09f0\u0995"}, +gaH(){return"\u09b8\u0995\u09b2\u09cb \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}, +gcg(){return"\u09ac\u099b\u09f0 \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}, +gak(){return"\u09b6\u09cd\u09ac\u09c7\u09df\u09be\u09f0 \u0995\u09f0\u0995\u2026"}, +gcn(){return"$tabCount\u09f0 $tabIndex\u099f\u09be \u099f\u09c7\u09ac"}, +gbX(){return"\u0985\u09a8\u09c1\u099c\u09cd\u099e\u09be\u09aa\u09a4\u09cd\u09f0\u09b8\u09ae\u09c2\u09b9 \u099a\u09be\u0993\u0995"}} +A.axr.prototype={ +gbF(){return"$applicationName haqq\u0131nda"}, +gcp(){return"Bildiri\u015f"}, +gcq(){return"Geri"}, +gbV(){return"A\u015fa\u011f\u0131dak\u0131 V\u0259r\u0259q"}, +gbB(){return"T\u0259qvim\u0259 ke\xe7in"}, +gcb(){return"L\u0259\u011fv edin"}, +gcj(){return"Ba\u011flay\u0131n"}, +gcr(){return"Ba\u011flay\u0131n"}, +gaK(){return"Kopyalay\u0131n"}, +gcw(){return"Bug\xfcn"}, +gaN(){return"K\u0259sin"}, +gbW(){return"aa.gg.iiii"}, +gbp(){return"Tarix daxil edin"}, +gbC(){return"Aral\u0131qdan k\u0259nar."}, +gbv(){return"Tarix se\xe7in"}, +gbD(){return"Silin"}, +gbs(){return"Dialoq"}, +gbw(){return"Daxiletm\u0259y\u0259 ke\xe7in"}, +gbH(){return"Yanl\u0131\u015f format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisenziya"}, +gbt(){return"$licenseCount lisenziya"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lisenziyalar"}, +gaa(){return"Axtar\u0131n"}, +gbx(){return"Menyunu qapad\u0131n"}, +gal(){return"\u0130mtina edin"}, +gcF(){return"Daha \xe7ox"}, +gbI(){return"N\xf6vb\u0259ti ay"}, +gcc(){return"OK"}, +gby(){return"Naviqasiya menyusunu a\xe7\u0131n"}, +gaM(){return"Yerl\u0259\u015fdirin"}, +gc4(){return"Popap menyusu"}, +gcz(){return"Ke\xe7\u0259n ay"}, +gcA(){return"Yenil\u0259yin"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 simvol qal\u0131r"}, +gct(){return"$remainingCount simvol qal\u0131r"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"A\u015fa\u011f\u0131 k\xf6\xe7\xfcr\xfcn"}, +gcd(){return"Sona k\xf6\xe7\xfcr\xfcn"}, +gbE(){return"\u018fvv\u0259l\u0259 k\xf6\xe7\xfcr\xfcn"}, +gcC(){return"Yuxar\u0131 k\xf6\xe7\xfcr\xfcn"}, +gbz(){return"M\u0259tni skan edin"}, +gbA(){return"K\u0259tan"}, +gcu(){return"Ba\u011flay\u0131n: $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Axtar\u0131n"}, +gaL(){return"Vebd\u0259 axtar\u0131n"}, +gaH(){return"Ham\u0131s\u0131n\u0131 se\xe7in"}, +gcg(){return"\u0130l se\xe7in"}, +gak(){return"Payla\u015f\u0131n..."}, +gcn(){return"$tabIndex/$tabCount tab"}, +gbX(){return"Lisenziyalara bax\u0131n"}} +A.axs.prototype={ +gbF(){return'\u0406\u043d\u0444\u0430\u0440\u043c\u0430\u0446\u044b\u044f \u043f\u0440\u0430 \u043f\u0440\u0430\u0433\u0440\u0430\u043c\u0443 "$applicationName"'}, +gcp(){return"\u0410\u0431\u0432\u0435\u0441\u0442\u043a\u0430"}, +gcq(){return"\u041d\u0430\u0437\u0430\u0434"}, +gbV(){return"\u041d\u0456\u0436\u043d\u0456 \u0430\u0440\u043a\u0443\u0448"}, +gbB(){return"\u041f\u0435\u0440\u0430\u043a\u043b\u044e\u0447\u044b\u0446\u0446\u0430 \u043d\u0430 \u043a\u0430\u043b\u044f\u043d\u0434\u0430\u0440"}, +gcb(){return"\u0421\u043a\u0430\u0441\u0430\u0432\u0430\u0446\u044c"}, +gcj(){return"\u0417\u0430\u043a\u0440\u044b\u0446\u044c"}, +gcr(){return"\u0417\u0430\u043a\u0440\u044b\u0446\u044c"}, +gaK(){return"\u041a\u0430\u043f\u0456\u0440\u0430\u0432\u0430\u0446\u044c"}, +gcw(){return"\u0421\u0451\u043d\u043d\u044f"}, +gaN(){return"\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c"}, +gbW(){return"\u0434\u0434.\u043c\u043c.\u0433\u0433\u0433\u0433"}, +gbp(){return"\u0423\u0432\u044f\u0434\u0437\u0456\u0446\u0435 \u0434\u0430\u0442\u0443"}, +gbC(){return"\u041f\u0430-\u0437\u0430 \u043c\u0435\u0436\u0430\u043c\u0456 \u0434\u044b\u044f\u043f\u0430\u0437\u043e\u043d\u0443."}, +gbv(){return"\u0412\u044b\u0431\u0435\u0440\u044b\u0446\u0435 \u0434\u0430\u0442\u0443"}, +gbD(){return"\u0412\u044b\u0434\u0430\u043b\u0456\u0446\u044c"}, +gbs(){return"\u0414\u044b\u044f\u043b\u043e\u0433\u0430\u0432\u0430\u0435 \u0430\u043a\u043d\u043e"}, +gbw(){return"\u041f\u0435\u0440\u0430\u043a\u043b\u044e\u0447\u044b\u0446\u0446\u0430 \u043d\u0430 \u045e\u0432\u043e\u0434 \u0442\u044d\u043a\u0441\u0442\u0443"}, +gbH(){return"\u041d\u044f\u043f\u0440\u0430\u0432\u0456\u043b\u044c\u043d\u044b \u0444\u0430\u0440\u043c\u0430\u0442."}, +gcE(){return"$licenseCount\xa0\u043b\u0456\u0446\u044d\u043d\u0437\u0456\u0456"}, +gcN(){return"$licenseCount\xa0\u043b\u0456\u0446\u044d\u043d\u0437\u0456\u0439"}, +gbr(){return"1\xa0\u043b\u0456\u0446\u044d\u043d\u0437\u0456\u044f"}, +gbt(){return"$licenseCount\xa0\u043b\u0456\u0446\u044d\u043d\u0437\u0456\u0456"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0456\u0446\u044d\u043d\u0437\u0456\u0456"}, +gaa(){return"\u0417\u043d\u0430\u0439\u0441\u0446\u0456"}, +gbx(){return"\u0417\u0430\u043a\u0440\u044b\u0446\u044c \u043c\u0435\u043d\u044e"}, +gal(){return"\u0410\u0434\u0445\u0456\u043b\u0456\u0446\u044c"}, +gcF(){return"\u042f\u0448\u0447\u044d"}, +gbI(){return"\u041d\u0430\u0441\u0442\u0443\u043f\u043d\u044b \u043c\u0435\u0441\u044f\u0446"}, +gcc(){return"\u041e\u041a"}, +gby(){return"\u0410\u0434\u043a\u0440\u044b\u0446\u044c \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u044b\u0456"}, +gaM(){return"\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c"}, +gc4(){return"\u041c\u0435\u043d\u044e \u045e\u0441\u043f\u043b\u044b\u0432\u0430\u043b\u044c\u043d\u0430\u0433\u0430 \u0430\u043a\u043d\u0430"}, +gcz(){return"\u041f\u0430\u043f\u044f\u0440\u044d\u0434\u043d\u0456 \u043c\u0435\u0441\u044f\u0446"}, +gcA(){return"\u0410\u0431\u043d\u0430\u0432\u0456\u0446\u044c"}, +gcH(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u044b"}, +gcQ(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u0430\u045e"}, +gcm(){return"\u0417\u0430\u0441\u0442\u0430\u045e\u0441\u044f 1\xa0\u0441\u0456\u043c\u0432\u0430\u043b"}, +gct(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u0430"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u041f\u0435\u0440\u0430\u043c\u044f\u0441\u0446\u0456\u0446\u044c \u0443\u043d\u0456\u0437"}, +gcd(){return"\u041f\u0435\u0440\u0430\u043c\u044f\u0441\u0446\u0456\u0446\u044c \u0443 \u043a\u0430\u043d\u0435\u0446"}, +gbE(){return"\u041f\u0435\u0440\u0430\u043c\u044f\u0441\u0446\u0456\u0446\u044c \u0443 \u043f\u0430\u0447\u0430\u0442\u0430\u043a"}, +gcC(){return"\u041f\u0435\u0440\u0430\u043c\u044f\u0441\u0446\u0456\u0446\u044c \u0443\u0432\u0435\u0440\u0445"}, +gbz(){return"\u0421\u043a\u0430\u043d\u0456\u0440\u0430\u0432\u0430\u0446\u044c \u0442\u044d\u043a\u0441\u0442"}, +gbA(){return"\u041f\u0430\u043b\u0430\u0442\u043d\u043e"}, +gcu(){return"\u0417\u0430\u043a\u0440\u044b\u0446\u044c: $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u041f\u043e\u0448\u0443\u043a"}, +gaL(){return"\u041f\u043e\u0448\u0443\u043a \u0443 \u0441\u0435\u0442\u0446\u044b"}, +gaH(){return"\u0412\u044b\u0431\u0440\u0430\u0446\u044c \u0443\u0441\u0435"}, +gcg(){return"\u0412\u044b\u0431\u0435\u0440\u044b\u0446\u0435 \u0433\u043e\u0434"}, +gak(){return"\u0410\u0431\u0430\u0433\u0443\u043b\u0456\u0446\u044c..."}, +gcn(){return"\u0423\u043a\u043b\u0430\u0434\u043a\u0430 $tabIndex \u0437 $tabCount"}, +gbX(){return"\u041f\u0440\u0430\u0433\u043b\u044f\u0434\u0437\u0435\u0446\u044c \u043b\u0456\u0446\u044d\u043d\u0437\u0456\u0456"}} +A.axt.prototype={ +gbF(){return"\u0412\u0441\u0438\u0447\u043a\u043e \u0437\u0430 $applicationName"}, +gcp(){return"\u0421\u0438\u0433\u043d\u0430\u043b"}, +gcq(){return"\u041d\u0430\u0437\u0430\u0434"}, +gbV(){return"\u0414\u043e\u043b\u0435\u043d \u043b\u0438\u0441\u0442"}, +gbB(){return"\u041f\u0440\u0435\u0432\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043a\u044a\u043c \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u0430"}, +gcb(){return"\u041e\u0442\u043a\u0430\u0437"}, +gcj(){return"\u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435"}, +gcr(){return"\u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435"}, +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435"}, +gcw(){return"\u0414\u043d\u0435\u0441"}, +gaN(){return"\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435"}, +gbW(){return"\u0434\u0434.\u043c\u043c.\u0433\u0433\u0433\u0433"}, +gbp(){return"\u0412\u044a\u0432\u0435\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u0442\u0430"}, +gbC(){return"\u0418\u0437\u0432\u044a\u043d \u0432\u0430\u043b\u0438\u0434\u043d\u0438\u044f \u043f\u0435\u0440\u0438\u043e\u0434 \u043e\u0442 \u0432\u0440\u0435\u043c\u0435."}, +gbv(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u0442\u0430"}, +gbD(){return"\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435"}, +gbs(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432 \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446"}, +gbw(){return"\u041f\u0440\u0435\u0432\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043a\u044a\u043c \u0432\u044a\u0432\u0435\u0436\u0434\u0430\u043d\u0435"}, +gbH(){return"\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u0435\u043d \u0444\u043e\u0440\u043c\u0430\u0442."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\xa0\u043b\u0438\u0446\u0435\u043d\u0437"}, +gbt(){return"$licenseCount\xa0\u043b\u0438\u0446\u0435\u043d\u0437\u0430"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0438\u0446\u0435\u043d\u0437\u0438"}, +gaa(){return"Look Up"}, +gbx(){return"\u041e\u0442\u0445\u0432\u044a\u0440\u043b\u044f\u043d\u0435 \u043d\u0430 \u043c\u0435\u043d\u044e\u0442\u043e"}, +gal(){return"\u041e\u0442\u0445\u0432\u044a\u0440\u043b\u044f\u043d\u0435"}, +gcF(){return"\u041e\u0449\u0435"}, +gbI(){return"\u0421\u043b\u0435\u0434\u0432\u0430\u0449\u0438\u044f\u0442 \u043c\u0435\u0441\u0435\u0446"}, +gcc(){return"OK"}, +gby(){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"}, +gaM(){return"\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435"}, +gc4(){return"\u0418\u0437\u0441\u043a\u0430\u0447\u0430\u0449\u043e \u043c\u0435\u043d\u044e"}, +gcz(){return"\u041f\u0440\u0435\u0434\u0438\u0448\u043d\u0438\u044f\u0442 \u043c\u0435\u0441\u0435\u0446"}, +gcA(){return"\u041e\u043f\u0440\u0435\u0441\u043d\u044f\u0432\u0430\u043d\u0435"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u041e\u0441\u0442\u0430\u0432\u0430 1 \u0437\u043d\u0430\u043a"}, +gct(){return"\u041e\u0441\u0442\u0430\u0432\u0430\u0442 $remainingCount \u0437\u043d\u0430\u043a\u0430"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0432\u0430\u043d\u0435 \u043d\u0430\u0434\u043e\u043b\u0443"}, +gcd(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0432\u0430\u043d\u0435 \u0432 \u043a\u0440\u0430\u044f"}, +gbE(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0432\u0430\u043d\u0435 \u0432 \u043d\u0430\u0447\u0430\u043b\u043e\u0442\u043e"}, +gcC(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0432\u0430\u043d\u0435 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gbz(){return"\u0421\u043a\u0430\u043d\u0438\u0440\u0430\u0439\u0442\u0435 \u0442\u0435\u043a\u0441\u0442"}, +gbA(){return"\u0421\u043a\u0440\u0438\u043c"}, +gcu(){return"\u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435 \u043d\u0430 $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u0422\u044a\u0440\u0441\u0435\u043d\u0435"}, +gaL(){return"\u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0432 \u043c\u0440\u0435\u0436\u0430\u0442\u0430"}, +gaH(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438"}, +gcg(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0433\u043e\u0434\u0438\u043d\u0430"}, +gak(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435..."}, +gcn(){return"\u0420\u0430\u0437\u0434\u0435\u043b $tabIndex \u043e\u0442 $tabCount"}, +gbX(){return"\u041f\u0440\u0435\u0433\u043b\u0435\u0434 \u043d\u0430 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0442\u0435"}} +A.axu.prototype={ +gbF(){return"$applicationName \u09b8\u09ae\u09cd\u09aa\u09b0\u09cd\u0995\u09c7"}, +gcp(){return"\u09b8\u09a4\u09b0\u09cd\u0995\u09a4\u09be"}, +gcq(){return"\u09ab\u09bf\u09b0\u09c7 \u09af\u09be\u09a8"}, +gbV(){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"\u0995\u09cd\u09af\u09be\u09b2\u09c7\u09a8\u09cd\u09a1\u09be\u09b0 \u09ae\u09c7\u09be\u09a1\u09c7 \u09ac\u09a6\u09b2 \u0995\u09b0\u09c1\u09a8"}, +gcb(){return"\u09ac\u09be\u09a4\u09bf\u09b2 \u0995\u09b0\u09c1\u09a8"}, +gcj(){return"\u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8"}, +gcr(){return"\u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8"}, +gaK(){return"\u0995\u09aa\u09bf \u0995\u09b0\u09c1\u09a8"}, +gcw(){return"\u0986\u099c"}, +gaN(){return"\u0995\u09be\u099f \u0995\u09b0\u09c1\u09a8"}, +gbW(){return"dd/mm/yyyy"}, +gbp(){return"\u09a4\u09be\u09b0\u09bf\u0996 \u09b2\u09bf\u0996\u09c1\u09a8"}, +gbC(){return"\u09a4\u09be\u09b0\u09bf\u0996\u09c7\u09b0 \u09ac\u09cd\u09af\u09be\u09aa\u09cd\u09a4\u09bf\u09b0 \u09ac\u09be\u0987\u09b0\u09c7\u0964"}, +gbv(){return"\u09a4\u09be\u09b0\u09bf\u0996 \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}, +gbD(){return"\u09ae\u09c1\u099b\u09c7 \u09a6\u09bf\u09a8"}, +gbs(){return"\u09a1\u09be\u09df\u09be\u09b2\u0997"}, +gbw(){return"\u0987\u09a8\u09aa\u09c1\u099f \u09ae\u09c7\u09be\u09a1\u09c7 \u09ac\u09a6\u09b2 \u0995\u09b0\u09c1\u09a8"}, +gbH(){return"\u09ad\u09c1\u09b2 \u09ab\u09b0\u09cd\u09ae\u09cd\u09af\u09be\u099f\u0964"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u09e7\u099f\u09bf \u09b2\u09be\u0987\u09b8\u09c7\u09a8\u09cd\u09b8"}, +gbt(){return"$licenseCount\u099f\u09bf \u09b2\u09be\u0987\u09b8\u09c7\u09a8\u09cd\u09b8"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u09b2\u09be\u0987\u09b8\u09c7\u09a8\u09cd\u09b8"}, +gaa(){return"\u09b2\u09c1\u0995-\u0986\u09aa"}, +gbx(){return"\u09ac\u09be\u09a4\u09bf\u09b2 \u0995\u09b0\u09be\u09b0 \u09ae\u09c7\u09a8\u09c1"}, +gal(){return"\u0996\u09be\u09b0\u09bf\u099c \u0995\u09b0\u09c1\u09a8"}, +gcF(){return"\u0986\u09b0\u0993"}, +gbI(){return"\u09aa\u09b0\u09c7\u09b0 \u09ae\u09be\u09b8"}, +gcc(){return"\u09a0\u09bf\u0995 \u0986\u099b\u09c7"}, +gby(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09a8 \u09ae\u09c7\u09a8\u09c1 \u0996\u09c1\u09b2\u09c1\u09a8"}, +gaM(){return"\u09aa\u09c7\u09b8\u09cd\u099f \u0995\u09b0\u09c1\u09a8"}, +gc4(){return"\u09aa\u09aa-\u0986\u09aa \u09ae\u09c7\u09a8\u09c1"}, +gcz(){return"\u0986\u0997\u09c7\u09b0 \u09ae\u09be\u09b8"}, +gcA(){return"\u09b0\u09bf\u09ab\u09cd\u09b0\u09c7\u09b6 \u0995\u09b0\u09c1\u09a8"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u0986\u09b0 \u09e7\u099f\u09bf \u0985\u0995\u09cd\u09b7\u09b0 \u09b2\u09c7\u0996\u09be \u09af\u09be\u09ac\u09c7"}, +gct(){return"\u0986\u09b0 $remainingCount\u099f\u09bf \u0985\u0995\u09cd\u09b7\u09b0 \u09b2\u09c7\u0996\u09be \u09af\u09be\u09ac\u09c7"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u09a8\u09bf\u099a\u09c7\u09b0 \u09a6\u09bf\u0995\u09c7 \u09b8\u09b0\u09be\u09a8"}, +gcd(){return"\u098f\u0995\u09a6\u09ae \u09b6\u09c7\u09b7\u09c7\u09b0 \u09a6\u09bf\u0995\u09c7 \u09af\u09be\u09a8"}, +gbE(){return"\u099a\u09be\u09b2\u09c1 \u0995\u09b0\u09a4\u09c7 \u09b8\u09b0\u09be\u09a8"}, +gcC(){return"\u0989\u09aa\u09b0\u09c7\u09b0 \u09a6\u09bf\u0995\u09c7 \u09b8\u09b0\u09be\u09a8"}, +gbz(){return"\u099f\u09c7\u0995\u09cd\u09b8\u099f \u09b8\u09cd\u0995\u09cd\u09af\u09be\u09a8 \u0995\u09b0\u09c1\u09a8"}, +gbA(){return"\u09b8\u09cd\u0995\u09cd\u09b0\u09bf\u09ae"}, +gcu(){return"$modalRouteContentName \u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8"}, +gcJ(){return B.cR}, +gco(){return"\u0996\u09c1\u0981\u099c\u09c1\u09a8"}, +gaL(){return"\u0993\u09df\u09c7\u09ac\u09c7 \u09b8\u09be\u09b0\u09cd\u099a \u0995\u09b0\u09c1\u09a8"}, +gaH(){return"\u09b8\u09ac \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}, +gcg(){return"\u09ac\u099b\u09b0 \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}, +gak(){return"\u09b6\u09c7\u09df\u09be\u09b0 \u0995\u09b0\u09c1\u09a8..."}, +gcn(){return"$tabCount-\u098f\u09b0 \u09ae\u09a7\u09cd\u09af\u09c7 $tabIndex\u099f\u09bf \u099f\u09cd\u09af\u09be\u09ac"}, +gbX(){return"\u09b2\u09be\u0987\u09b8\u09c7\u09a8\u09cd\u09b8 \u09a6\u09c7\u0996\u09c1\u09a8"}} +A.axv.prototype={ +gbF(){return"O aplikaciji $applicationName"}, +gcp(){return"Upozorenje"}, +gcq(){return"Nazad"}, +gbV(){return"Donja tabela"}, +gbB(){return"Prebacite na kalendar"}, +gcb(){return"Otka\u017ei"}, +gcj(){return"Zatvori"}, +gcr(){return"Zatvaranje"}, +gaK(){return"Kopiraj"}, +gcw(){return"Danas"}, +gaN(){return"Izre\u017ei"}, +gbW(){return"dd. mm. gggg."}, +gbp(){return"Unesite datum"}, +gbC(){return"Izvan raspona."}, +gbv(){return"Odaberite datum"}, +gbD(){return"Brisanje"}, +gbs(){return"Dijalo\u0161ki okvir"}, +gbw(){return"Prebacite na unos teksta"}, +gbH(){return"Neva\u017ee\u0107i format."}, +gcE(){return"$licenseCount licence"}, +gcN(){return null}, +gbr(){return"1 licenca"}, +gbt(){return"$licenseCount licenci"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licence"}, +gaa(){return"Pogled nagore"}, +gbx(){return"Odbacivanje menija"}, +gal(){return"Odbaci"}, +gcF(){return"Vi\u0161e"}, +gbI(){return"Sljede\u0107i mjesec"}, +gcc(){return"Uredu"}, +gby(){return"Otvorite meni za navigaciju"}, +gaM(){return"Zalijepi"}, +gc4(){return"Sko\u010dni meni"}, +gcz(){return"Prethodni mjesec"}, +gcA(){return"Osvje\u017ei"}, +gcH(){return"Jo\u0161 $remainingCount znaka"}, +gcQ(){return null}, +gcm(){return"Jo\u0161 jedan znak"}, +gct(){return"Jo\u0161 $remainingCount znakova"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Pomjeri nadolje"}, +gcd(){return"Pomjerite na kraj"}, +gbE(){return"Pomjerite na po\u010detak"}, +gcC(){return"Pomjeri nagore"}, +gbz(){return"Skeniraj tekst"}, +gbA(){return"Rubno"}, +gcu(){return"Zatvori: $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Pretra\u017eite"}, +gaL(){return"Pretra\u017ei Web"}, +gaH(){return"Odaberi sve"}, +gcg(){return"Odaberite godinu"}, +gak(){return"Dijeli..."}, +gcn(){return"$tabIndex. kartica od $tabCount"}, +gbX(){return"Prika\u017ei licence"}} +A.axw.prototype={ +gbF(){return"Sobre $applicationName"}, +gcp(){return"Alerta"}, +gcq(){return"Enrere"}, +gbV(){return"Full inferior"}, +gbB(){return"Canvia al calendari"}, +gcb(){return"Cancel\xb7la"}, +gcj(){return"Tanca"}, +gcr(){return"Tanca"}, +gaK(){return"Copia"}, +gcw(){return"Avui"}, +gaN(){return"Retalla"}, +gbW(){return"mm/dd/aaaa"}, +gbp(){return"Introdueix una data"}, +gbC(){return"Fora de l'abast."}, +gbv(){return"Selecciona la data"}, +gbD(){return"Suprimeix"}, +gbs(){return"Di\xe0leg"}, +gbw(){return"Canvia a introducci\xf3 de text"}, +gbH(){return"El format no \xe9s v\xe0lid."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\xa0llic\xe8ncia"}, +gbt(){return"$licenseCount\xa0llic\xe8ncies"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Llic\xe8ncies"}, +gaa(){return"Mira amunt"}, +gbx(){return"Ignora el men\xfa"}, +gal(){return"Ignora"}, +gcF(){return"M\xe9s"}, +gbI(){return"Mes seg\xfcent"}, +gcc(){return"D'ACORD"}, +gby(){return"Obre el men\xfa de navegaci\xf3"}, +gaM(){return"Enganxa"}, +gc4(){return"Men\xfa emergent"}, +gcz(){return"Mes anterior"}, +gcA(){return"Actualitza"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Queda 1\xa0car\xe0cter"}, +gct(){return"Queden $remainingCount\xa0car\xe0cters"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Mou avall"}, +gcd(){return"Mou al final"}, +gbE(){return"Mou al principi"}, +gcC(){return"Mou amunt"}, +gbz(){return"Escaneja text"}, +gbA(){return"Fons atenuat"}, +gcu(){return"Tanca $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Cerca"}, +gaL(){return"Cerca al web"}, +gaH(){return"Selecciona-ho tot"}, +gcg(){return"Selecciona un any"}, +gak(){return"Comparteix..."}, +gcn(){return"Pestanya $tabIndex de $tabCount"}, +gbX(){return"Mostra les llic\xe8ncies"}} +A.axx.prototype={ +gbF(){return"O\xa0aplikaci $applicationName"}, +gcp(){return"Upozorn\u011bn\xed"}, +gcq(){return"Zp\u011bt"}, +gbV(){return"Spodn\xed tabulka"}, +gbB(){return"P\u0159epnout na kalend\xe1\u0159"}, +gcb(){return"Zru\u0161it"}, +gcj(){return"Zav\u0159\xedt"}, +gcr(){return"Zav\u0159\xedt"}, +gaK(){return"Kop\xedrovat"}, +gcw(){return"Dnes"}, +gaN(){return"Vyjmout"}, +gbW(){return"mm.dd.rrrr"}, +gbp(){return"Zadejte datum"}, +gbC(){return"Mimo rozsah."}, +gbv(){return"Vyberte datum"}, +gbD(){return"Smazat"}, +gbs(){return"Dialogov\xe9 okno"}, +gbw(){return"P\u0159epnout na zad\xe1v\xe1n\xed"}, +gbH(){return"Neplatn\xfd form\xe1t."}, +gcE(){return"$licenseCount\xa0licence"}, +gcN(){return"$licenseCount\xa0licence"}, +gbr(){return"1\xa0licence"}, +gbt(){return"$licenseCount\xa0licenc\xed"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licence"}, +gaa(){return"Vyhledat"}, +gbx(){return"Zav\u0159\xedt nab\xeddku"}, +gal(){return"Zav\u0159\xedt"}, +gcF(){return"V\xedce"}, +gbI(){return"Dal\u0161\xed m\u011bs\xedc"}, +gcc(){return"OK"}, +gby(){return"Otev\u0159\xedt naviga\u010dn\xed nab\xeddku"}, +gaM(){return"Vlo\u017eit"}, +gc4(){return"Vyskakovac\xed nab\xeddka"}, +gcz(){return"P\u0159edchoz\xed m\u011bs\xedc"}, +gcA(){return"Obnovit"}, +gcH(){return"Zb\xfdvaj\xed $remainingCount znaky"}, +gcQ(){return"Zb\xfdv\xe1 $remainingCount znaku"}, +gcm(){return"Zb\xfdv\xe1 1 znak"}, +gct(){return"Zb\xfdv\xe1 $remainingCount znak\u016f"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"P\u0159esunout dol\u016f"}, +gcd(){return"P\u0159esunout na konec"}, +gbE(){return"P\u0159esunout na za\u010d\xe1tek"}, +gcC(){return"P\u0159esunout nahoru"}, +gbz(){return"Naskenovat text"}, +gbA(){return"Scrim"}, +gcu(){return"Zav\u0159\xedt $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Hledat"}, +gaL(){return"Vyhled\xe1vat na webu"}, +gaH(){return"Vybrat v\u0161e"}, +gcg(){return"Vyberte rok"}, +gak(){return"Sd\xedlet\u2026"}, +gcn(){return"Karta $tabIndex z\xa0$tabCount"}, +gbX(){return"Zobrazit licence"}} +A.axy.prototype={ +gbF(){return"Ynghylch $applicationName"}, +gcp(){return"Rhybudd"}, +gcq(){return"N\xf4l"}, +gbV(){return"Taflen Gwaelod"}, +gbB(){return"Newid i galendr"}, +gcb(){return"Canslo"}, +gcj(){return"Cau"}, +gcr(){return"Cau"}, +gaK(){return"Cop\xefo"}, +gcw(){return"Heddiw"}, +gaN(){return"Torri"}, +gbW(){return"dd/mm/bbbb"}, +gbp(){return"Rhowch Ddyddiad"}, +gbC(){return"Allan o'r ystod."}, +gbv(){return"Dewiswch ddyddiad"}, +gbD(){return"Dileu"}, +gbs(){return"Deialog"}, +gbw(){return"Newid i fewnbwn"}, +gbH(){return"Fformat annilys."}, +gcE(){return"$licenseCount trwydded"}, +gcN(){return"$licenseCount thrwydded"}, +gbr(){return"1 trwydded"}, +gbt(){return"$licenseCount trwydded"}, +gcO(){return"$licenseCount drwydded"}, +gc7(){return"Dim trwydded"}, +gc3(){return"Trwyddedau"}, +gaa(){return"Chwilio"}, +gbx(){return"Diystyru'r ddewislen"}, +gal(){return"Diystyru"}, +gcF(){return"Rhagor"}, +gbI(){return"Mis nesaf"}, +gcc(){return"Iawn"}, +gby(){return"Agor y ddewislen llywio"}, +gaM(){return"Gludo"}, +gc4(){return"Dewislen ffenestr naid"}, +gcz(){return"Mis blaenorol"}, +gcA(){return"Ail-lwytho"}, +gcH(){return"$remainingCount nod ar \xf4l"}, +gcQ(){return"$remainingCount nod ar \xf4l"}, +gcm(){return"1 nod ar \xf4l"}, +gct(){return"$remainingCount nod ar \xf4l"}, +gcR(){return"$remainingCount nod ar \xf4l"}, +gcS(){return"Dim nodau ar \xf4l"}, +gcB(){return"Symud i lawr"}, +gcd(){return"Symud i'r diwedd"}, +gbE(){return"Symud i'r dechrau"}, +gcC(){return"Symud i fyny"}, +gbz(){return"Sganio testun"}, +gbA(){return"Scrim"}, +gcu(){return"Cau $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Chwilio"}, +gaL(){return"Chwilio'r We"}, +gaH(){return"Dewis y Cyfan"}, +gcg(){return"Dewiswch flwyddyn"}, +gak(){return"Rhannu..."}, +gcn(){return"Tab $tabIndex o $tabCount"}, +gbX(){return"Gweld trwyddedau"}} +A.axz.prototype={ +gbF(){return"Om $applicationName"}, +gcp(){return"Underretning"}, +gcq(){return"Tilbage"}, +gbV(){return"Felt i bunden"}, +gbB(){return"Skift til kalender"}, +gcb(){return"Annuller"}, +gcj(){return"Luk"}, +gcr(){return"Luk"}, +gaK(){return"Kopi\xe9r"}, +gcw(){return"I dag"}, +gaN(){return"Klip"}, +gbW(){return"dd/mm/\xe5\xe5\xe5\xe5"}, +gbp(){return"Angiv en dato"}, +gbC(){return"Uden for r\xe6kkevidde."}, +gbv(){return"V\xe6lg dato"}, +gbD(){return"Slet"}, +gbs(){return"Dialogboks"}, +gbw(){return"Skift til input"}, +gbH(){return"Ugyldigt format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licens"}, +gbt(){return"$licenseCount licenser"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licenser"}, +gaa(){return"Sl\xe5 op"}, +gbx(){return"Luk menu"}, +gal(){return"Afvis"}, +gcF(){return"Mere"}, +gbI(){return"N\xe6ste m\xe5ned"}, +gcc(){return"OK"}, +gby(){return"\xc5bn navigationsmenuen"}, +gaM(){return"Inds\xe6t"}, +gc4(){return"Pop op-menu"}, +gcz(){return"Forrige m\xe5ned"}, +gcA(){return"Opdater"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\xc9t tegn tilbage"}, +gct(){return"$remainingCount tegn tilbage"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Flyt ned"}, +gcd(){return"Flyt til sidst p\xe5 listen"}, +gbE(){return"Flyt til f\xf8rst p\xe5 listen"}, +gcC(){return"Flyt op"}, +gbz(){return"Scan tekst"}, +gbA(){return"D\xe6mpesk\xe6rm"}, +gcu(){return"Luk $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"S\xf8g"}, +gaL(){return"S\xf8g p\xe5 nettet"}, +gaH(){return"Mark\xe9r alt"}, +gcg(){return"V\xe6lg \xe5r"}, +gak(){return"Del\u2026"}, +gcn(){return"Fane $tabIndex af $tabCount"}, +gbX(){return"Se licenser"}} +A.a5r.prototype={ +gbF(){return"\xdcber $applicationName"}, +gcp(){return"Benachrichtigung"}, +gcq(){return"Zur\xfcck"}, +gbV(){return"Ansicht am unteren Rand"}, +gbB(){return"Zum Kalender wechseln"}, +gcb(){return"Abbrechen"}, +gcj(){return"Schlie\xdfen"}, +gcr(){return"Schlie\xdfen"}, +gaK(){return"Kopieren"}, +gcw(){return"Heute"}, +gaN(){return"Ausschneiden"}, +gbW(){return"tt.mm.jjjj"}, +gbp(){return"Datum eingeben"}, +gbC(){return"Au\xdferhalb des Zeitraums."}, +gbv(){return"Datum ausw\xe4hlen"}, +gbD(){return"L\xf6schen"}, +gbs(){return"Dialogfeld"}, +gbw(){return"Zur Texteingabe wechseln"}, +gbH(){return"Ung\xfcltiges Format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\xa0Lizenz"}, +gbt(){return"$licenseCount\xa0Lizenzen"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lizenzen"}, +gaa(){return"Nachschlagen"}, +gbx(){return"Men\xfc schlie\xdfen"}, +gal(){return"Schlie\xdfen"}, +gcF(){return"Mehr"}, +gbI(){return"N\xe4chster Monat"}, +gcc(){return"OK"}, +gby(){return"Navigationsmen\xfc \xf6ffnen"}, +gaM(){return"Einsetzen"}, +gc4(){return"Pop-up-Men\xfc"}, +gcz(){return"Vorheriger Monat"}, +gcA(){return"Aktualisieren"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Noch 1\xa0Zeichen"}, +gct(){return"Noch $remainingCount\xa0Zeichen"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Nach unten verschieben"}, +gcd(){return"An das Ende verschieben"}, +gbE(){return"An den Anfang verschieben"}, +gcC(){return"Nach oben verschieben"}, +gbz(){return"Text scannen"}, +gbA(){return"Gitter"}, +gcu(){return"$modalRouteContentName schlie\xdfen"}, +gcJ(){return B.a3}, +gco(){return"Suchen"}, +gaL(){return"Im Web suchen"}, +gaH(){return"Alle ausw\xe4hlen"}, +gcg(){return"Jahr ausw\xe4hlen"}, +gak(){return"Teilen\u2026"}, +gcn(){return"Tab $tabIndex von $tabCount"}, +gbX(){return"Lizenzen ansehen"}} +A.axA.prototype={ +gbv(){return"DATUM AUSW\xc4HLEN"}, +gbC(){return"Ausserhalb des Zeitraums."}, +gcr(){return"Schliessen"}, +gcb(){return"ABBRECHEN"}, +gcj(){return"SCHLIE\u1e9eEN"}, +gbX(){return"LIZENZEN ANZEIGEN"}, +gal(){return"Schliessen"}} +A.axB.prototype={ +gbF(){return"\u03a3\u03c7\u03b5\u03c4\u03b9\u03ba\u03ac \u03bc\u03b5 \u03c4\u03b7\u03bd \u03b5\u03c6\u03b1\u03c1\u03bc\u03bf\u03b3\u03ae $applicationName"}, +gcp(){return"\u0395\u03b9\u03b4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7"}, +gcq(){return"\u03a0\u03af\u03c3\u03c9"}, +gbV(){return"\u03a6\u03cd\u03bb\u03bb\u03bf \u03ba\u03ac\u03c4\u03c9 \u03bc\u03ad\u03c1\u03bf\u03c5\u03c2"}, +gbB(){return"\u0395\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae \u03c3\u03b5 \u03b7\u03bc\u03b5\u03c1\u03bf\u03bb\u03cc\u03b3\u03b9\u03bf"}, +gcb(){return"\u0391\u03ba\u03cd\u03c1\u03c9\u03c3\u03b7"}, +gcj(){return"\u039a\u03bb\u03b5\u03af\u03c3\u03b9\u03bc\u03bf"}, +gcr(){return"\u039a\u03bb\u03b5\u03af\u03c3\u03b9\u03bc\u03bf"}, +gaK(){return"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae"}, +gcw(){return"\u03a3\u03ae\u03bc\u03b5\u03c1\u03b1"}, +gaN(){return"\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae"}, +gbW(){return"\u03bc\u03bc/\u03b7\u03b7/\u03b5\u03b5\u03b5\u03b5"}, +gbp(){return"\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03b7\u03bc\u03b5\u03c1\u03bf\u03bc\u03b7\u03bd\u03af\u03b1\u03c2"}, +gbC(){return"\u0395\u03ba\u03c4\u03cc\u03c2 \u03b5\u03cd\u03c1\u03bf\u03c5\u03c2 \u03c4\u03b9\u03bc\u03ce\u03bd."}, +gbv(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03b7\u03bc\u03b5\u03c1\u03bf\u03bc\u03b7\u03bd\u03af\u03b1\u03c2"}, +gbD(){return"\u0394\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae"}, +gbs(){return"\u03a0\u03b1\u03c1\u03ac\u03b8\u03c5\u03c1\u03bf \u03b4\u03b9\u03b1\u03bb\u03cc\u03b3\u03bf\u03c5"}, +gbw(){return"\u0395\u03bd\u03b1\u03bb\u03bb\u03b1\u03b3\u03ae \u03c3\u03b5 \u03ba\u03b1\u03c4\u03b1\u03c7\u03ce\u03c1\u03b9\u03c3\u03b7"}, +gbH(){return"\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03b7 \u03bc\u03bf\u03c1\u03c6\u03ae."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u03ac\u03b4\u03b5\u03b9\u03b1"}, +gbt(){return"$licenseCount \u03ac\u03b4\u03b5\u03b9\u03b5\u03c2"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0386\u03b4\u03b5\u03b9\u03b5\u03c2"}, +gaa(){return"Look Up"}, +gbx(){return"\u03a0\u03b1\u03c1\u03ac\u03b2\u03bb\u03b5\u03c8\u03b7 \u03bc\u03b5\u03bd\u03bf\u03cd"}, +gal(){return"\u03a0\u03b1\u03c1\u03ac\u03b2\u03bb\u03b5\u03c8\u03b7"}, +gcF(){return"\u03a0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03b1"}, +gbI(){return"\u0395\u03c0\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03bc\u03ae\u03bd\u03b1\u03c2"}, +gcc(){return"\u039f\u039a"}, +gby(){return"\u0386\u03bd\u03bf\u03b9\u03b3\u03bc\u03b1 \u03bc\u03b5\u03bd\u03bf\u03cd \u03c0\u03bb\u03bf\u03ae\u03b3\u03b7\u03c3\u03b7\u03c2"}, +gaM(){return"\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7"}, +gc4(){return"\u0391\u03bd\u03b1\u03b4\u03c5\u03cc\u03bc\u03b5\u03bd\u03bf \u03bc\u03b5\u03bd\u03bf\u03cd"}, +gcz(){return"\u03a0\u03c1\u03bf\u03b7\u03b3\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf\u03c2 \u03bc\u03ae\u03bd\u03b1\u03c2"}, +gcA(){return"\u0391\u03bd\u03b1\u03bd\u03ad\u03c9\u03c3\u03b7"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u03b1\u03c0\u03bf\u03bc\u03ad\u03bd\u03b5\u03b9 1 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b1\u03c2"}, +gct(){return"\u03b1\u03c0\u03bf\u03bc\u03ad\u03bd\u03bf\u03c5\u03bd $remainingCount \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b5\u03c2"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u039c\u03b5\u03c4\u03b1\u03ba\u03af\u03bd\u03b7\u03c3\u03b7 \u03c0\u03c1\u03bf\u03c2 \u03c4\u03b1 \u03ba\u03ac\u03c4\u03c9"}, +gcd(){return"\u039c\u03b5\u03c4\u03b1\u03ba\u03af\u03bd\u03b7\u03c3\u03b7 \u03c3\u03c4\u03bf \u03c4\u03ad\u03bb\u03bf\u03c2"}, +gbE(){return"\u039c\u03b5\u03c4\u03b1\u03ba\u03af\u03bd\u03b7\u03c3\u03b7 \u03c3\u03c4\u03b7\u03bd \u03b1\u03c1\u03c7\u03ae"}, +gcC(){return"\u039c\u03b5\u03c4\u03b1\u03ba\u03af\u03bd\u03b7\u03c3\u03b7 \u03c0\u03c1\u03bf\u03c2 \u03c4\u03b1 \u03c0\u03ac\u03bd\u03c9"}, +gbz(){return"\u03a3\u03ac\u03c1\u03c9\u03c3\u03b7 \u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5"}, +gbA(){return"\u0395\u03c0\u03b9\u03ba\u03ac\u03bb\u03c5\u03c8\u03b7"}, +gcu(){return"\u039a\u03bb\u03b5\u03af\u03c3\u03b9\u03bc\u03bf $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7"}, +gaL(){return"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03c3\u03c4\u03bf\u03bd \u03b9\u03c3\u03c4\u03cc"}, +gaH(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03cc\u03bb\u03c9\u03bd"}, +gcg(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03ad\u03c4\u03bf\u03c5\u03c2"}, +gak(){return"\u039a\u03bf\u03b9\u03bd\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u2026"}, +gcn(){return"\u039a\u03b1\u03c1\u03c4\u03ad\u03bb\u03b1 $tabIndex \u03b1\u03c0\u03cc $tabCount"}, +gbX(){return"\u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae \u03b1\u03b4\u03b5\u03b9\u03ce\u03bd"}} +A.a5s.prototype={ +gbF(){return"About $applicationName"}, +gcp(){return"Alert"}, +gcq(){return"Back"}, +gbV(){return"Bottom Sheet"}, +gbB(){return"Switch to calendar"}, +gcb(){return"Cancel"}, +gcj(){return"Close"}, +gcr(){return"Close"}, +gaK(){return"Copy"}, +gcw(){return"Today"}, +gaN(){return"Cut"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"Enter Date"}, +gbC(){return"Out of range."}, +gbv(){return"Select date"}, +gbD(){return"Delete"}, +gbs(){return"Dialog"}, +gbw(){return"Switch to input"}, +gbH(){return"Invalid format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 license"}, +gbt(){return"$licenseCount licenses"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licenses"}, +gaa(){return"Look Up"}, +gbx(){return"Dismiss menu"}, +gal(){return"Dismiss"}, +gcF(){return"More"}, +gbI(){return"Next month"}, +gcc(){return"OK"}, +gby(){return"Open navigation menu"}, +gaM(){return"Paste"}, +gc4(){return"Popup menu"}, +gcz(){return"Previous month"}, +gcA(){return"Refresh"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 character remaining"}, +gct(){return"$remainingCount characters remaining"}, +gcR(){return null}, +gcS(){return"No characters remaining"}, +gcB(){return"Move down"}, +gcd(){return"Move to the end"}, +gbE(){return"Move to the start"}, +gcC(){return"Move up"}, +gbz(){return"Scan text"}, +gbA(){return"Scrim"}, +gcu(){return"Close $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Search"}, +gaL(){return"Search Web"}, +gaH(){return"Select all"}, +gcg(){return"Select year"}, +gak(){return"Share"}, +gcn(){return"Tab $tabIndex of $tabCount"}, +gbX(){return"View licenses"}} +A.axC.prototype={ +gak(){return"Share..."}, +gaa(){return"Look up"}, +gbV(){return"Bottom sheet"}, +gbp(){return"Enter date"}, +gbW(){return"dd/mm/yyyy"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gbX(){return"View licences"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.axD.prototype={ +gbp(){return"Enter date"}, +gbv(){return"SELECT DATE"}, +gbW(){return"dd/mm/yyyy"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gcb(){return"CANCEL"}, +gcj(){return"CLOSE"}, +gbX(){return"VIEW LICENCES"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.axE.prototype={ +gak(){return"Share..."}, +gaa(){return"Look up"}, +gbV(){return"Bottom sheet"}, +gbp(){return"Enter date"}, +gbW(){return"dd/mm/yyyy"}, +gbX(){return"View licences"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.axF.prototype={ +gak(){return"Share..."}, +gaa(){return"Look up"}, +gbV(){return"Bottom sheet"}, +gbp(){return"Enter date"}, +gbW(){return"dd/mm/yyyy"}, +gbX(){return"View licences"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.axG.prototype={ +gak(){return"Share..."}, +gaa(){return"Look up"}, +gbV(){return"Bottom sheet"}, +gbp(){return"Enter date"}, +gbW(){return"dd/mm/yyyy"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gbX(){return"View licences"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.axH.prototype={ +gak(){return"Share..."}, +gaa(){return"Look up"}, +gbV(){return"Bottom sheet"}, +gbp(){return"Enter date"}, +gbW(){return"dd/mm/yyyy"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gbX(){return"View licences"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.axI.prototype={ +gak(){return"Share..."}, +gaa(){return"Look up"}, +gbV(){return"Bottom sheet"}, +gbp(){return"Enter date"}, +gbW(){return"dd/mm/yyyy"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gbX(){return"View licences"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.axJ.prototype={ +gak(){return"Share..."}, +gaa(){return"Look up"}, +gbV(){return"Bottom sheet"}, +gbp(){return"Enter date"}, +gbW(){return"dd/mm/yyyy"}, +gbX(){return"View licences"}, +gc3(){return"Licences"}, +gc7(){return"No licences"}, +gbr(){return"1 licence"}, +gbt(){return"$licenseCount licences"}, +gc4(){return"Pop-up menu"}, +gbs(){return"Dialogue"}} +A.a5t.prototype={ +gbF(){return"Sobre $applicationName"}, +gcp(){return"Alerta"}, +gcq(){return"Atr\xe1s"}, +gbV(){return"Hoja inferior"}, +gbB(){return"Cambiar a calendario"}, +gcb(){return"Cancelar"}, +gcj(){return"Cerrar"}, +gcr(){return"Cerrar"}, +gaK(){return"Copiar"}, +gcw(){return"Hoy"}, +gaN(){return"Cortar"}, +gbW(){return"dd/mm/aaaa"}, +gbp(){return"Introduce una fecha"}, +gbC(){return"Fuera del periodo v\xe1lido."}, +gbv(){return"Seleccionar fecha"}, +gbD(){return"Eliminar"}, +gbs(){return"Cuadro de di\xe1logo"}, +gbw(){return"Cambiar a cuadro de texto"}, +gbH(){return"Formato no v\xe1lido."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\xa0licencia"}, +gbt(){return"$licenseCount\xa0licencias"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licencias"}, +gaa(){return"Buscador visual"}, +gbx(){return"Cerrar men\xfa"}, +gal(){return"Cerrar"}, +gcF(){return"M\xe1s"}, +gbI(){return"Mes siguiente"}, +gcc(){return"ACEPTAR"}, +gby(){return"Abrir el men\xfa de navegaci\xf3n"}, +gaM(){return"Pegar"}, +gc4(){return"Men\xfa emergente"}, +gcz(){return"Mes anterior"}, +gcA(){return"Actualizar"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Queda 1 car\xe1cter."}, +gct(){return"Quedan $remainingCount caracteres"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Mover hacia abajo"}, +gcd(){return"Mover al final"}, +gbE(){return"Mover al principio"}, +gcC(){return"Mover hacia arriba"}, +gbz(){return"Escanear texto"}, +gbA(){return"Sombreado"}, +gcu(){return"Cerrar $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Buscar"}, +gaL(){return"Buscar en la Web"}, +gaH(){return"Seleccionar todo"}, +gcg(){return"Seleccionar a\xf1o"}, +gak(){return"Compartir..."}, +gcn(){return"Pesta\xf1a $tabIndex de $tabCount"}, +gbX(){return"Ver licencias"}} +A.axK.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}, +gbE(){return"Mover al inicio"}} +A.axL.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}, +gbE(){return"Mover al inicio"}} +A.axM.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axN.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axO.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axP.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axQ.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axR.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axS.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axT.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axU.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axV.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axW.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axX.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axY.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.axZ.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.ay_.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.ay0.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbs(){return"Di\xe1logo"}} +A.ay1.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.ay2.prototype={ +gak(){return"Compartir\u2026"}, +gbz(){return"Analizar texto"}, +gaa(){return"Mirar hacia arriba"}, +gbx(){return"Descartar men\xfa"}, +gbA(){return"L\xe1mina"}, +gbr(){return"1 licencia"}, +gbt(){return"$licenseCount licencias"}, +gbp(){return"Ingresar fecha"}, +gbB(){return"Cambiar al calendario"}, +gbv(){return"Selecciona una fecha"}, +gbC(){return"Fuera de rango"}, +gbH(){return"El formato no es v\xe1lido."}, +gbw(){return"Cambiar a modo de entrada"}, +gbE(){return"Mover al inicio"}, +gal(){return"Descartar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gbD(){return"Borrar"}, +gbI(){return"Pr\xf3ximo mes"}, +gbF(){return"Acerca de $applicationName"}, +gbs(){return"Di\xe1logo"}} +A.ay3.prototype={ +gbF(){return"Teave rakenduse $applicationName kohta"}, +gcp(){return"M\xe4rguanne"}, +gcq(){return"Tagasi"}, +gbV(){return"Alumine leht"}, +gbB(){return"Kalendrile l\xfclitumine"}, +gcb(){return"T\xfchista"}, +gcj(){return"Sule"}, +gcr(){return"Sule"}, +gaK(){return"Kopeeri"}, +gcw(){return"T\xe4na"}, +gaN(){return"L\xf5ika"}, +gbW(){return"pp.kk.aaaa"}, +gbp(){return"Sisestage kuup\xe4ev"}, +gbC(){return"Vahemikust v\xe4ljas."}, +gbv(){return"Valige kuup\xe4ev"}, +gbD(){return"Kustuta"}, +gbs(){return"Dialoog"}, +gbw(){return"Sisestusre\u017eiimile l\xfclitumine"}, +gbH(){return"Sobimatu vorming."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 litsents"}, +gbt(){return"$licenseCount litsentsi"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Litsentsid"}, +gaa(){return"Look Up"}, +gbx(){return"Sulge men\xfc\xfc"}, +gal(){return"Loobu"}, +gcF(){return"Rohkem"}, +gbI(){return"J\xe4rgmine kuu"}, +gcc(){return"OK"}, +gby(){return"Ava navigeerimismen\xfc\xfc"}, +gaM(){return"Kleebi"}, +gc4(){return"H\xfcpikmen\xfc\xfc"}, +gcz(){return"Eelmine kuu"}, +gcA(){return"V\xe4rskendamine"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"J\xe4\xe4nud on 1 t\xe4hem\xe4rk"}, +gct(){return"J\xe4\xe4nud on $remainingCount t\xe4hem\xe4rki"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Teisalda alla"}, +gcd(){return"Teisalda l\xf5ppu"}, +gbE(){return"Teisalda algusesse"}, +gcC(){return"Teisalda \xfcles"}, +gbz(){return"Skanni tekst"}, +gbA(){return"Sirm"}, +gcu(){return"Sule $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Otsing"}, +gaL(){return"Otsi veebist"}, +gaH(){return"Vali k\xf5ik"}, +gcg(){return"Valige aasta"}, +gak(){return"Jaga \u2026"}, +gcn(){return"$tabIndex. vahekaart $tabCount-st"}, +gbX(){return"Kuva litsentsid"}} +A.ay4.prototype={ +gbF(){return"$applicationName aplikazioari buruz"}, +gcp(){return"Alerta"}, +gcq(){return"Atzera"}, +gbV(){return"Behealdeko orria"}, +gbB(){return"Aldatu egutegiaren modura"}, +gcb(){return"Utzi"}, +gcj(){return"Itxi"}, +gcr(){return"Itxi"}, +gaK(){return"Kopiatu"}, +gcw(){return"Gaur"}, +gaN(){return"Ebaki"}, +gbW(){return"uuuu/hh/ee"}, +gbp(){return"Idatzi data"}, +gbC(){return"Barrutitik kanpo."}, +gbv(){return"Hautatu data"}, +gbD(){return"Ezabatu"}, +gbs(){return"Leihoa"}, +gbw(){return"Aldatu datak aukeratzeko modura"}, +gbH(){return"Formatuak ez du balio."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lizentzia"}, +gbt(){return"$licenseCount lizentzia"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lizentziak"}, +gaa(){return"Bilatu"}, +gbx(){return"Baztertu menua"}, +gal(){return"Baztertu"}, +gcF(){return"Gehiago"}, +gbI(){return"Hurrengo hilabetea"}, +gcc(){return"Ados"}, +gby(){return"Ireki nabigazio-menua"}, +gaM(){return"Itsatsi"}, +gc4(){return"Menu gainerakorra"}, +gcz(){return"Aurreko hilabetea"}, +gcA(){return"Freskatu"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 karaktere geratzen da"}, +gct(){return"$remainingCount karaktere geratzen dira"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Eraman behera"}, +gcd(){return"Eraman amaierara"}, +gbE(){return"Eraman hasierara"}, +gcC(){return"Eraman gora"}, +gbz(){return"Eskaneatu testua"}, +gbA(){return"Barrera"}, +gcu(){return"Itxi $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Bilatu"}, +gaL(){return"Bilatu sarean"}, +gaH(){return"Hautatu guztiak"}, +gcg(){return"Hautatu urtea"}, +gak(){return"Partekatu..."}, +gcn(){return"$tabIndex/$tabCount fitxa"}, +gbX(){return"Ikusi lizentziak"}} +A.ay5.prototype={ +gbF(){return"\u062f\u0631\u0628\u0627\u0631\u0647 $applicationName"}, +gcp(){return"\u0647\u0634\u062f\u0627\u0631"}, +gcq(){return"\u0628\u0631\u06af\u0634\u062a"}, +gbV(){return"\u0628\u0631\u06af \u0632\u06cc\u0631\u06cc\u0646"}, +gbB(){return"\u0631\u0641\u062a\u0646 \u0628\u0647 \u062a\u0642\u0648\u06cc\u0645"}, +gcb(){return"\u0644\u063a\u0648"}, +gcj(){return"\u0628\u0633\u062a\u0646"}, +gcr(){return"\u0628\u0633\u062a\u0646"}, +gaK(){return"\u06a9\u067e\u06cc"}, +gcw(){return"\u0627\u0645\u0631\u0648\u0632"}, +gaN(){return"\u0628\u0631\u0634"}, +gbW(){return"\u0631\u0648\u0632/\u0645\u0627\u0647/\u0633\u0627\u0644"}, +gbp(){return"\u062a\u0627\u0631\u06cc\u062e \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f"}, +gbC(){return"\u062e\u0627\u0631\u062c \u0627\u0632 \u0645\u062d\u062f\u0648\u062f\u0647."}, +gbv(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u062a\u0627\u0631\u06cc\u062e"}, +gbD(){return"\u062d\u0630\u0641"}, +gbs(){return"\u06a9\u0627\u062f\u0631 \u06af\u0641\u062a\u06af\u0648"}, +gbw(){return"\u0631\u0641\u062a\u0646 \u0628\u0647 \u0648\u0631\u0648\u062f\u06cc"}, +gbH(){return"\u0642\u0627\u0644\u0628 \u0646\u0627\u0645\u0639\u062a\u0628\u0631 \u0627\u0633\u062a."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u06f1 \u067e\u0631\u0648\u0627\u0646\u0647"}, +gbt(){return"$licenseCount \u067e\u0631\u0648\u0627\u0646\u0647"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u067e\u0631\u0648\u0627\u0646\u0647\u200c\u0647\u0627"}, +gaa(){return"\u062c\u0633\u062a\u062c\u0648"}, +gbx(){return"\u0628\u0633\u062a\u0646 \u0645\u0646\u0648"}, +gal(){return"\u0646\u067e\u0630\u06cc\u0631\u0641\u062a\u0646"}, +gcF(){return"\u0628\u06cc\u0634\u062a\u0631"}, +gbI(){return"\u0645\u0627\u0647 \u0628\u0639\u062f"}, +gcc(){return"\u062a\u0623\u06cc\u06cc\u062f"}, +gby(){return"\u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u0645\u0646\u0648\u06cc \u067e\u06cc\u0645\u0627\u06cc\u0634"}, +gaM(){return"\u062c\u0627\u06cc\u200c\u06af\u0630\u0627\u0631\u06cc"}, +gc4(){return"\u0645\u0646\u0648\u06cc \u0628\u0627\u0632\u0634\u0648"}, +gcz(){return"\u0645\u0627\u0647 \u0642\u0628\u0644"}, +gcA(){return"\u0628\u0627\u0632\u0622\u0648\u0631\u06cc"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u06f1 \u0646\u0648\u06cc\u0633\u0647 \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647 \u0627\u0633\u062a"}, +gct(){return"$remainingCount \u0646\u0648\u06cc\u0633\u0647 \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647 \u0627\u0633\u062a"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0627\u0646\u062a\u0642\u0627\u0644 \u0628\u0647 \u067e\u0627\u06cc\u06cc\u0646"}, +gcd(){return"\u0627\u0646\u062a\u0642\u0627\u0644 \u0628\u0647 \u0627\u0646\u062a\u0647\u0627"}, +gbE(){return"\u0627\u0646\u062a\u0642\u0627\u0644 \u0628\u0647 \u0627\u0628\u062a\u062f\u0627"}, +gcC(){return"\u0627\u0646\u062a\u0642\u0627\u0644 \u0628\u0647 \u0628\u0627\u0644\u0627"}, +gbz(){return"\u0627\u0633\u06a9\u0646 \u06a9\u0631\u062f\u0646 \u0646\u0648\u0634\u062a\u0627\u0631"}, +gbA(){return"\u0631\u0648\u06cc\u0647"}, +gcu(){return"\u0628\u0633\u062a\u0646 $modalRouteContentName"}, +gcJ(){return B.cR}, +gco(){return"\u062c\u0633\u062a\u062c\u0648"}, +gaL(){return"\u062c\u0633\u062a\u062c\u0648 \u062f\u0631 \u0648\u0628"}, +gaH(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u0647\u0645\u0647"}, +gcg(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u0633\u0627\u0644"}, +gak(){return"\u0647\u0645\u200c\u0631\u0633\u0627\u0646\u06cc\u2026"}, +gcn(){return"\u0628\u0631\u06af\u0647 $tabIndex \u0627\u0632 $tabCount"}, +gbX(){return"\u0645\u0634\u0627\u0647\u062f\u0647 \u067e\u0631\u0648\u0627\u0646\u0647\u200c\u0647\u0627"}} +A.ay6.prototype={ +gbF(){return"Tietoja: $applicationName"}, +gcp(){return"Ilmoitus"}, +gcq(){return"Takaisin"}, +gbV(){return"Alapaneeli"}, +gbB(){return"Vaihda kalenteriin"}, +gcb(){return"Peru"}, +gcj(){return"Sulje"}, +gcr(){return"Sulje"}, +gaK(){return"Kopioi"}, +gcw(){return"T\xe4n\xe4\xe4n"}, +gaN(){return"Leikkaa"}, +gbW(){return"pp/kk/vvvv"}, +gbp(){return"Lis\xe4\xe4 p\xe4iv\xe4m\xe4\xe4r\xe4"}, +gbC(){return"P\xe4iv\xe4m\xe4\xe4r\xe4 ei kelpaa"}, +gbv(){return"Valitse p\xe4iv\xe4m\xe4\xe4r\xe4"}, +gbD(){return"Poista"}, +gbs(){return"Valintaikkuna"}, +gbw(){return"Vaihda tekstinsy\xf6tt\xf6\xf6n"}, +gbH(){return"Virheellinen muoto"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisenssi"}, +gbt(){return"$licenseCount lisenssi\xe4"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lisenssit"}, +gaa(){return"Hae"}, +gbx(){return"Hylk\xe4\xe4 valikko"}, +gal(){return"Ohita"}, +gcF(){return"Lis\xe4\xe4"}, +gbI(){return"Seuraava kuukausi"}, +gcc(){return"OK"}, +gby(){return"Avaa navigointivalikko"}, +gaM(){return"Liit\xe4"}, +gc4(){return"Ponnahdusvalikko"}, +gcz(){return"Edellinen kuukausi"}, +gcA(){return"P\xe4ivitys"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 merkki j\xe4ljell\xe4"}, +gct(){return"$remainingCount merkki\xe4 j\xe4ljell\xe4"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Siirr\xe4 alas"}, +gcd(){return"Siirr\xe4 loppuun"}, +gbE(){return"Siirr\xe4 alkuun"}, +gcC(){return"Siirr\xe4 yl\xf6s"}, +gbz(){return"Skannaa teksti\xe4"}, +gbA(){return"Sermi"}, +gcu(){return"Sulje $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Haku"}, +gaL(){return"Hae verkosta"}, +gaH(){return"Valitse kaikki"}, +gcg(){return"Valitse vuosi"}, +gak(){return"Jaa\u2026"}, +gcn(){return"V\xe4lilehti $tabIndex kautta $tabCount"}, +gbX(){return"N\xe4yt\xe4 k\xe4ytt\xf6oikeudet"}} +A.ay7.prototype={ +gbF(){return"Tungkol sa $applicationName"}, +gcp(){return"Alerto"}, +gcq(){return"Bumalik"}, +gbV(){return"Bottom Sheet"}, +gbB(){return"Lumipat sa kalendaryo"}, +gcb(){return"Kanselahin"}, +gcj(){return"Isara"}, +gcr(){return"Isara"}, +gaK(){return"Kopyahin"}, +gcw(){return"Ngayon"}, +gaN(){return"I-cut"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"Ilagay ang Petsa"}, +gbC(){return"Wala sa hanay."}, +gbv(){return"Pumili ng petsa"}, +gbD(){return"I-delete"}, +gbs(){return"Dialog"}, +gbw(){return"Lumipat sa input"}, +gbH(){return"Invalid ang format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisensya"}, +gbt(){return"$licenseCount na lisensya"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Mga Lisensya"}, +gaa(){return"Tumingin sa Itaas"}, +gbx(){return"I-dismiss ang menu"}, +gal(){return"I-dismiss"}, +gcF(){return"Higit Pa"}, +gbI(){return"Susunod na buwan"}, +gcc(){return"OK"}, +gby(){return"Buksan ang menu ng navigation"}, +gaM(){return"I-paste"}, +gc4(){return"Popup na menu"}, +gcz(){return"Nakaraang buwan"}, +gcA(){return"Nagre-refresh"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 character ang natitira"}, +gct(){return u.Y}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Ilipat pababa"}, +gcd(){return"Ilipat sa dulo"}, +gbE(){return"Ilipat sa simula"}, +gcC(){return"Ilipat pataas"}, +gbz(){return"I-scan ang text"}, +gbA(){return"Scrim"}, +gcu(){return"Isara ang $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Maghanap"}, +gaL(){return"Maghanap sa Web"}, +gaH(){return"Piliin lahat"}, +gcg(){return"Pumili ng taon"}, +gak(){return"Ibahagi..."}, +gcn(){return"Tab $tabIndex ng $tabCount"}, +gbX(){return"Tingnan ang mga lisensya"}} +A.a5u.prototype={ +gbF(){return"\xc0 propos de $applicationName"}, +gcp(){return"Alerte"}, +gcq(){return"Retour"}, +gbV(){return"Bottom sheet"}, +gbB(){return"Passer \xe0 l'agenda"}, +gcb(){return"Annuler"}, +gcj(){return"Fermer"}, +gcr(){return"Fermer"}, +gaK(){return"Copier"}, +gcw(){return"Aujourd'hui"}, +gaN(){return"Couper"}, +gbW(){return"jj/mm/aaaa"}, +gbp(){return"Saisir une date"}, +gbC(){return"Hors de port\xe9e."}, +gbv(){return"S\xe9lectionner une date"}, +gbD(){return"Supprimer"}, +gbs(){return"Bo\xeete de dialogue"}, +gbw(){return"Passer \xe0 la saisie"}, +gbH(){return"Format non valide."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\xa0licence"}, +gbt(){return"$licenseCount\xa0licences"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licences"}, +gaa(){return"Recherche visuelle"}, +gbx(){return"Fermer le menu"}, +gal(){return"Ignorer"}, +gcF(){return"Plus"}, +gbI(){return"Mois suivant"}, +gcc(){return"OK"}, +gby(){return"Ouvrir le menu de navigation"}, +gaM(){return"Coller"}, +gc4(){return"Menu contextuel"}, +gcz(){return"Mois pr\xe9c\xe9dent"}, +gcA(){return"Actualiser"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1\xa0caract\xe8re restant"}, +gct(){return"$remainingCount\xa0caract\xe8res restants"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"D\xe9placer vers le bas"}, +gcd(){return"D\xe9placer vers la fin"}, +gbE(){return"D\xe9placer vers le d\xe9but"}, +gcC(){return"D\xe9placer vers le haut"}, +gbz(){return"Scanner du texte"}, +gbA(){return"Fond"}, +gcu(){return"Fermer $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Rechercher"}, +gaL(){return"Rechercher sur le Web"}, +gaH(){return"Tout s\xe9lectionner"}, +gcg(){return"S\xe9lectionner une ann\xe9e"}, +gak(){return"Partager\u2026"}, +gcn(){return"Onglet $tabIndex sur $tabCount"}, +gbX(){return"Afficher les licences"}} +A.ay8.prototype={ +gaa(){return"Regarder en haut"}, +gbz(){return"Balayer un texte"}, +gbx(){return"Ignorer le menu"}, +gbA(){return"Grille"}, +gbV(){return"Zone de contenu dans le bas de l'\xe9cran"}, +gbv(){return"S\xe9lectionner la date"}, +gbH(){return"Format incorrect"}, +gbw(){return"Passer \xe0 l'entr\xe9e"}, +gbp(){return"Entrer une date"}, +gbW(){return"jj-mm-aaaa"}, +gcn(){return"Onglet\xa0$tabIndex sur\xa0$tabCount"}, +gbE(){return"D\xe9placer au d\xe9but"}, +gcd(){return"D\xe9placer \xe0 la fin"}} +A.ay9.prototype={ +gbF(){return"Acerca de: $applicationName"}, +gcp(){return"Alerta"}, +gcq(){return"Atr\xe1s"}, +gbV(){return"Panel inferior"}, +gbB(){return"Cambiar ao modo de calendario"}, +gcb(){return"Cancelar"}, +gcj(){return"Pechar"}, +gcr(){return"Pechar"}, +gaK(){return"Copiar"}, +gcw(){return"Hoxe"}, +gaN(){return"Cortar"}, +gbW(){return"mm/dd/aaaa"}, +gbp(){return"Introduce a data"}, +gbC(){return"A data est\xe1 f\xf3ra do intervalo."}, +gbv(){return"Seleccionar data"}, +gbD(){return"Eliminar"}, +gbs(){return"Cadro de di\xe1logo"}, +gbw(){return"Cambiar ao modo de introduci\xf3n de texto"}, +gbH(){return"O formato non \xe9 v\xe1lido."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licenza"}, +gbt(){return"$licenseCount licenzas"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licenzas"}, +gaa(){return"Mirar cara arriba"}, +gbx(){return"Pechar men\xfa"}, +gal(){return"Ignorar"}, +gcF(){return"M\xe1is"}, +gbI(){return"Mes seguinte"}, +gcc(){return"Aceptar"}, +gby(){return"Abrir men\xfa de navegaci\xf3n"}, +gaM(){return"Pegar"}, +gc4(){return"Men\xfa emerxente"}, +gcz(){return"Mes anterior"}, +gcA(){return"Actualizar"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 car\xe1cter restante"}, +gct(){return"$remainingCount caracteres restantes"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Mover cara abaixo"}, +gcd(){return"Mover ao final"}, +gbE(){return"Mover ao inicio"}, +gcC(){return"Mover cara arriba"}, +gbz(){return"Escanear texto"}, +gbA(){return"Sombreado"}, +gcu(){return"Pechar $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Buscar"}, +gaL(){return"Buscar na Web"}, +gaH(){return"Seleccionar todo"}, +gcg(){return"Seleccionar ano"}, +gak(){return"Compartir\u2026"}, +gcn(){return"Pestana $tabIndex de $tabCount"}, +gbX(){return"Ver licenzas"}} +A.aya.prototype={ +gbF(){return"\xdcber $applicationName"}, +gcp(){return"Benachrichtigung"}, +gcq(){return"Zur\xfcck"}, +gbV(){return"Ansicht am unteren Rand"}, +gbB(){return"Zum Kalender wechseln"}, +gcb(){return"Abbrechen"}, +gcj(){return"Schlie\xdfen"}, +gcr(){return"Schlie\xdfen"}, +gaK(){return"Kopieren"}, +gcw(){return"Heute"}, +gaN(){return"Ausschneiden"}, +gbW(){return"tt.mm.jjjj"}, +gbp(){return"Datum eingeben"}, +gbC(){return"Au\xdferhalb des Zeitraums."}, +gbv(){return"Datum ausw\xe4hlen"}, +gbD(){return"L\xf6schen"}, +gbs(){return"Dialogfeld"}, +gbw(){return"Zur Texteingabe wechseln"}, +gbH(){return"Ung\xfcltiges Format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\xa0Lizenz"}, +gbt(){return"$licenseCount\xa0Lizenzen"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lizenzen"}, +gaa(){return"Nachschlagen"}, +gbx(){return"Men\xfc schlie\xdfen"}, +gal(){return"Schlie\xdfen"}, +gcF(){return"Mehr"}, +gbI(){return"N\xe4chster Monat"}, +gcc(){return"OK"}, +gby(){return"Navigationsmen\xfc \xf6ffnen"}, +gaM(){return"Einsetzen"}, +gc4(){return"Pop-up-Men\xfc"}, +gcz(){return"Vorheriger Monat"}, +gcA(){return"Aktualisieren"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Noch 1\xa0Zeichen"}, +gct(){return"Noch $remainingCount\xa0Zeichen"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Nach unten verschieben"}, +gcd(){return"An das Ende verschieben"}, +gbE(){return"An den Anfang verschieben"}, +gcC(){return"Nach oben verschieben"}, +gbz(){return"Text scannen"}, +gbA(){return"Gitter"}, +gcu(){return"$modalRouteContentName schlie\xdfen"}, +gcJ(){return B.a3}, +gco(){return"Suchen"}, +gaL(){return"Im Web suchen"}, +gaH(){return"Alle ausw\xe4hlen"}, +gcg(){return"Jahr ausw\xe4hlen"}, +gak(){return"Teilen\u2026"}, +gcn(){return"Tab $tabIndex von $tabCount"}, +gbX(){return"Lizenzen ansehen"}} +A.ayb.prototype={ +gbF(){return"$applicationName \u0ab5\u0abf\u0ab6\u0ac7"}, +gcp(){return"\u0a85\u0ab2\u0ab0\u0acd\u0a9f"}, +gcq(){return"\u0aaa\u0abe\u0a9b\u0ab3"}, +gbV(){return"\u0aac\u0acb\u0a9f\u0aae \u0ab6\u0ac0\u0a9f"}, +gbB(){return"\u0a95\u0ac5\u0ab2\u0ac7\u0aa8\u0acd\u0aa1\u0ab0 \u0aae\u0acb\u0aa1 \u0aaa\u0ab0 \u0ab8\u0acd\u0ab5\u0abf\u0a9a \u0a95\u0ab0\u0acb"}, +gcb(){return"\u0ab0\u0aa6 \u0a95\u0ab0\u0acb"}, +gcj(){return"\u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb"}, +gcr(){return"\u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb"}, +gaK(){return"\u0a95\u0ac9\u0aaa\u0abf \u0a95\u0ab0\u0acb"}, +gcw(){return"\u0a86\u0a9c\u0ac7"}, +gaN(){return"\u0a95\u0abe\u0aaa\u0acb"}, +gbW(){return"dd/mm/yyyy"}, +gbp(){return"\u0aa4\u0abe\u0ab0\u0ac0\u0a96 \u0aa6\u0abe\u0a96\u0ab2 \u0a95\u0ab0\u0acb"}, +gbC(){return"\u0ab0\u0ac7\u0a82\u0a9c\u0aae\u0abe\u0a82 \u0aa8\u0aa5\u0ac0."}, +gbv(){return"\u0aa4\u0abe\u0ab0\u0ac0\u0a96 \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}, +gbD(){return"\u0aa1\u0abf\u0ab2\u0ac0\u0a9f \u0a95\u0ab0\u0acb"}, +gbs(){return"\u0ab8\u0a82\u0ab5\u0abe\u0aa6"}, +gbw(){return"\u0a87\u0aa8\u0aaa\u0ac1\u0a9f \u0aae\u0acb\u0aa1 \u0aaa\u0ab0 \u0ab8\u0acd\u0ab5\u0abf\u0a9a \u0a95\u0ab0\u0acb"}, +gbH(){return"\u0a85\u0aae\u0abe\u0aa8\u0acd\u0aaf \u0aab\u0acb\u0ab0\u0acd\u0aae\u0ac7\u0a9f."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0ab2\u0abe\u0a87\u0ab8\u0aa8\u0acd\u0ab8"}, +gbt(){return"$licenseCount \u0ab2\u0abe\u0a87\u0ab8\u0aa8\u0acd\u0ab8"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0ab2\u0abe\u0a87\u0ab8\u0aa8\u0acd\u0ab8"}, +gaa(){return"\u0ab6\u0acb\u0aa7\u0acb"}, +gbx(){return"\u0aae\u0ac7\u0aa8\u0ac2 \u0a9b\u0acb\u0aa1\u0ac0 \u0aa6\u0acb"}, +gal(){return"\u0a9b\u0acb\u0aa1\u0ac0 \u0aa6\u0acb"}, +gcF(){return"\u0ab5\u0aa7\u0ac1"}, +gbI(){return"\u0a86\u0a97\u0ab2\u0acb \u0aae\u0ab9\u0abf\u0aa8\u0acb"}, +gcc(){return"\u0a93\u0a95\u0ac7"}, +gby(){return"\u0aa8\u0ac5\u0ab5\u0abf\u0a97\u0ac7\u0ab6\u0aa8 \u0aae\u0ac7\u0aa8\u0ac2 \u0a96\u0acb\u0ab2\u0acb"}, +gaM(){return"\u0aaa\u0ac7\u0ab8\u0acd\u0a9f \u0a95\u0ab0\u0acb"}, +gc4(){return"\u0aaa\u0ac9\u0aaa\u0a85\u0aaa \u0aae\u0ac7\u0aa8\u0ac2"}, +gcz(){return"\u0aaa\u0abe\u0a9b\u0ab2\u0acb \u0aae\u0ab9\u0abf\u0aa8\u0acb"}, +gcA(){return"\u0ab0\u0abf\u0aab\u0acd\u0ab0\u0ac7\u0ab6 \u0a95\u0ab0\u0acb"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0a85\u0a95\u0acd\u0ab7\u0ab0 \u0aac\u0abe\u0a95\u0ac0"}, +gct(){return"$remainingCount \u0a85\u0a95\u0acd\u0ab7\u0ab0 \u0aac\u0abe\u0a95\u0ac0"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0aa8\u0ac0\u0a9a\u0ac7 \u0a96\u0ab8\u0ac7\u0aa1\u0acb"}, +gcd(){return"\u0a85\u0a82\u0aa4\u0aae\u0abe\u0a82 \u0a96\u0ab8\u0ac7\u0aa1\u0acb"}, +gbE(){return"\u0aaa\u0acd\u0ab0\u0abe\u0ab0\u0a82\u0aad\u0aae\u0abe\u0a82 \u0a96\u0ab8\u0ac7\u0aa1\u0acb"}, +gcC(){return"\u0a89\u0aaa\u0ab0 \u0a96\u0ab8\u0ac7\u0aa1\u0acb"}, +gbz(){return"\u0a9f\u0ac7\u0a95\u0acd\u0ab8\u0acd\u0a9f \u0ab8\u0acd\u0a95\u0ac5\u0aa8 \u0a95\u0ab0\u0acb"}, +gbA(){return"\u0ab8\u0acd\u0a95\u0acd\u0ab0\u0abf\u0aae"}, +gcu(){return"$modalRouteContentName\u0aa8\u0ac7 \u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb"}, +gcJ(){return B.cR}, +gco(){return"\u0ab6\u0acb\u0aa7\u0acb"}, +gaL(){return"\u0ab5\u0ac7\u0aac \u0aaa\u0ab0 \u0ab6\u0acb\u0aa7\u0acb"}, +gaH(){return"\u0aac\u0aa7\u0abe \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}, +gcg(){return"\u0ab5\u0ab0\u0acd\u0ab7 \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}, +gak(){return"\u0ab6\u0ac7\u0ab0 \u0a95\u0ab0\u0acb\u2026"}, +gcn(){return"$tabCount\u0aae\u0abe\u0a82\u0aa5\u0ac0 $tabIndex \u0a9f\u0ac5\u0aac"}, +gbX(){return"\u0ab2\u0abe\u0a87\u0ab8\u0aa8\u0acd\u0ab8 \u0a9c\u0ac1\u0a93"}} +A.ayc.prototype={ +gbF(){return"\u05de\u05d9\u05d3\u05e2 \u05e2\u05dc $applicationName"}, +gcp(){return"\u05d4\u05ea\u05e8\u05d0\u05d4"}, +gcq(){return"\u05d4\u05e7\u05d5\u05d3\u05dd"}, +gbV(){return"\u05d2\u05d9\u05dc\u05d9\u05d5\u05df \u05ea\u05d7\u05ea\u05d5\u05df"}, +gbB(){return"\u05de\u05e2\u05d1\u05e8 \u05dc\u05de\u05e6\u05d1 \u05d4\u05d9\u05d5\u05de\u05df"}, +gcb(){return"\u05d1\u05d9\u05d8\u05d5\u05dc"}, +gcj(){return"\u05e1\u05d2\u05d9\u05e8\u05d4"}, +gcr(){return"\u05e1\u05d2\u05d9\u05e8\u05d4"}, +gaK(){return"\u05d4\u05e2\u05ea\u05e7\u05d4"}, +gcw(){return"\u05d4\u05d9\u05d5\u05dd"}, +gaN(){return"\u05d2\u05d6\u05d9\u05e8\u05d4"}, +gbW(){return"dd.mm.yyyy"}, +gbp(){return"\u05d9\u05e9 \u05dc\u05d4\u05d6\u05d9\u05df \u05ea\u05d0\u05e8\u05d9\u05da"}, +gbC(){return"\u05de\u05d7\u05d5\u05e5 \u05dc\u05d8\u05d5\u05d5\u05d7."}, +gbv(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05ea\u05d0\u05e8\u05d9\u05da"}, +gbD(){return"\u05de\u05d7\u05d9\u05e7\u05d4"}, +gbs(){return"\u05ea\u05d9\u05d1\u05ea \u05d3\u05d5-\u05e9\u05d9\u05d7"}, +gbw(){return"\u05de\u05e2\u05d1\u05e8 \u05dc\u05de\u05e6\u05d1 \u05d4\u05e7\u05dc\u05d8"}, +gbH(){return"\u05e4\u05d5\u05e8\u05de\u05d8 \u05dc\u05d0 \u05d7\u05d5\u05e7\u05d9."}, +gcE(){return null}, +gcN(){return"$licenseCount \u05e8\u05d9\u05e9\u05d9\u05d5\u05e0\u05d5\u05ea"}, +gbr(){return"\u05e8\u05d9\u05e9\u05d9\u05d5\u05df \u05d0\u05d7\u05d3"}, +gbt(){return"$licenseCount \u05e8\u05d9\u05e9\u05d9\u05d5\u05e0\u05d5\u05ea"}, +gcO(){return"$licenseCount \u05e8\u05d9\u05e9\u05d9\u05d5\u05e0\u05d5\u05ea"}, +gc7(){return"No licenses"}, +gc3(){return"\u05e8\u05d9\u05e9\u05d9\u05d5\u05e0\u05d5\u05ea"}, +gaa(){return"\u05d7\u05d9\u05e4\u05d5\u05e9"}, +gbx(){return"\u05e1\u05d2\u05d9\u05e8\u05ea \u05d4\u05ea\u05e4\u05e8\u05d9\u05d8"}, +gal(){return"\u05e1\u05d2\u05d9\u05e8\u05d4"}, +gcF(){return"\u05e2\u05d5\u05d3"}, +gbI(){return"\u05d4\u05d7\u05d5\u05d3\u05e9 \u05d4\u05d1\u05d0"}, +gcc(){return"\u05d0\u05d9\u05e9\u05d5\u05e8"}, +gby(){return"\u05e4\u05ea\u05d9\u05d7\u05d4 \u05e9\u05dc \u05ea\u05e4\u05e8\u05d9\u05d8 \u05d4\u05e0\u05d9\u05d5\u05d5\u05d8"}, +gaM(){return"\u05d4\u05d3\u05d1\u05e7\u05d4"}, +gc4(){return"\u05ea\u05e4\u05e8\u05d9\u05d8 \u05e7\u05d5\u05e4\u05e5"}, +gcz(){return"\u05d4\u05d7\u05d5\u05d3\u05e9 \u05d4\u05e7\u05d5\u05d3\u05dd"}, +gcA(){return"\u05e8\u05e2\u05e0\u05d5\u05df"}, +gcH(){return null}, +gcQ(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gcm(){return"\u05e0\u05d5\u05ea\u05e8 \u05ea\u05d5 \u05d0\u05d7\u05d3"}, +gct(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gcR(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gcS(){return null}, +gcB(){return"\u05d4\u05e2\u05d1\u05e8\u05d4 \u05dc\u05de\u05d8\u05d4"}, +gcd(){return"\u05d4\u05e2\u05d1\u05e8\u05d4 \u05dc\u05e1\u05d5\u05e3"}, +gbE(){return"\u05d4\u05e2\u05d1\u05e8\u05d4 \u05dc\u05d4\u05ea\u05d7\u05dc\u05d4"}, +gcC(){return"\u05d4\u05e2\u05d1\u05e8\u05d4 \u05dc\u05de\u05e2\u05dc\u05d4"}, +gbz(){return"\u05e1\u05e8\u05d9\u05e7\u05ea \u05d8\u05e7\u05e1\u05d8"}, +gbA(){return"\u05de\u05d9\u05e1\u05d5\u05da"}, +gcu(){return"\u05e1\u05d2\u05d9\u05e8\u05ea $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u05d7\u05d9\u05e4\u05d5\u05e9"}, +gaL(){return"\u05d7\u05d9\u05e4\u05d5\u05e9 \u05d1\u05d0\u05d9\u05e0\u05d8\u05e8\u05e0\u05d8"}, +gaH(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05d4\u05db\u05d5\u05dc"}, +gcg(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05e9\u05e0\u05d4"}, +gak(){return"\u05e9\u05d9\u05ea\u05d5\u05e3\u2026"}, +gcn(){return"\u05db\u05e8\u05d8\u05d9\u05e1\u05d9\u05d9\u05d4 $tabIndex \u05de\u05ea\u05d5\u05da $tabCount"}, +gbX(){return"\u05dc\u05e2\u05d9\u05d5\u05df \u05d1\u05e8\u05d9\u05e9\u05d9\u05d5\u05e0\u05d5\u05ea"}} +A.ayd.prototype={ +gbF(){return"$applicationName \u0915\u0947 \u092c\u093e\u0930\u0947 \u092e\u0947\u0902 \u091c\u093e\u0928\u0915\u093e\u0930\u0940"}, +gcp(){return"\u0905\u0932\u0930\u094d\u091f"}, +gcq(){return"\u0935\u093e\u092a\u0938 \u091c\u093e\u090f\u0902"}, +gbV(){return"\u092c\u0949\u091f\u092e \u0936\u0940\u091f"}, +gbB(){return"\u0915\u0948\u0932\u0947\u0902\u0921\u0930 \u092a\u0930 \u091c\u093e\u090f\u0902"}, +gcb(){return"\u0930\u0926\u094d\u0926 \u0915\u0930\u0947\u0902"}, +gcj(){return"\u092c\u0902\u0926 \u0915\u0930\u0947\u0902"}, +gcr(){return"\u092c\u0902\u0926 \u0915\u0930\u0947\u0902"}, +gaK(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u0947\u0902"}, +gcw(){return"\u0906\u091c"}, +gaN(){return"\u0915\u093e\u091f\u0947\u0902"}, +gbW(){return"dd/mm/yyyy"}, +gbp(){return"\u0924\u093e\u0930\u0940\u0916 \u0921\u093e\u0932\u0947\u0902"}, +gbC(){return"\u0938\u0940\u092e\u093e \u0938\u0947 \u091c\u093c\u094d\u092f\u093e\u0926\u093e."}, +gbv(){return"\u0924\u093e\u0930\u0940\u0916 \u091a\u0941\u0928\u0947\u0902"}, +gbD(){return"\u092e\u093f\u091f\u093e\u090f\u0902"}, +gbs(){return"\u0921\u093e\u092f\u0932\u0949\u0917"}, +gbw(){return"\u0907\u0928\u092a\u0941\u091f \u092a\u0930 \u091c\u093e\u090f\u0902"}, +gbH(){return"\u0905\u092e\u093e\u0928\u094d\u092f \u095e\u0949\u0930\u094d\u092e\u0948\u091f."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0932\u093e\u0907\u0938\u0947\u0902\u0938"}, +gbt(){return"$licenseCount \u0932\u093e\u0907\u0938\u0947\u0902\u0938"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0932\u093e\u0907\u0938\u0947\u0902\u0938"}, +gaa(){return"\u0932\u0941\u0915 \u0905\u092a \u092c\u091f\u0928"}, +gbx(){return"\u092e\u0947\u0928\u094d\u092f\u0942 \u0916\u093e\u0930\u093f\u091c \u0915\u0930\u0947\u0902"}, +gal(){return"\u0916\u093e\u0930\u093f\u091c \u0915\u0930\u0947\u0902"}, +gcF(){return"\u095b\u094d\u092f\u093e\u0926\u093e"}, +gbI(){return"\u0905\u0917\u0932\u093e \u092e\u0939\u0940\u0928\u093e"}, +gcc(){return"\u0920\u0940\u0915 \u0939\u0948"}, +gby(){return"\u0928\u0947\u0935\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u094d\u092f\u0942 \u0916\u094b\u0932\u0947\u0902"}, +gaM(){return"\u091a\u093f\u092a\u0915\u093e\u090f\u0902"}, +gc4(){return"\u092a\u0949\u092a\u0905\u092a \u092e\u0947\u0928\u094d\u092f\u0942"}, +gcz(){return"\u092a\u093f\u091b\u0932\u093e \u092e\u0939\u0940\u0928\u093e"}, +gcA(){return"\u0930\u0940\u092b\u093c\u094d\u0930\u0947\u0936 \u0915\u0930\u0947\u0902"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u090f\u0915 \u0935\u0930\u094d\u0923 \u0906\u0948\u0930 \u0921\u093e\u0932\u093e \u091c\u093e \u0938\u0915\u0924\u093e \u0939\u0948"}, +gct(){return"$remainingCount \u0935\u0930\u094d\u0923 \u0906\u0948\u0930 \u0921\u093e\u0932\u0947 \u091c\u093e \u0938\u0915\u0924\u0947 \u0939\u0948\u0902"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0928\u0940\u091a\u0947 \u0932\u0947 \u091c\u093e\u090f\u0902"}, +gcd(){return"\u0906\u0916\u093f\u0930 \u092e\u0947\u0902 \u0932\u0947 \u091c\u093e\u090f\u0902"}, +gbE(){return"\u0936\u0941\u0930\u0941\u0906\u0924 \u092a\u0930 \u0932\u0947 \u091c\u093e\u090f\u0902"}, +gcC(){return"\u090a\u092a\u0930 \u0932\u0947 \u091c\u093e\u090f\u0902"}, +gbz(){return"\u091f\u0947\u0915\u094d\u0938\u094d\u091f \u0938\u094d\u0915\u0948\u0928 \u0915\u0930\u0947\u0902"}, +gbA(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gcu(){return"$modalRouteContentName \u0915\u094b \u092c\u0902\u0926 \u0915\u0930\u0947\u0902"}, +gcJ(){return B.i9}, +gco(){return"\u0916\u094b\u091c\u0947\u0902"}, +gaL(){return"\u0935\u0947\u092c \u092a\u0930 \u0916\u094b\u091c\u0947\u0902"}, +gaH(){return"\u0938\u092d\u0940 \u0915\u094b \u091a\u0941\u0928\u0947\u0902"}, +gcg(){return"\u0938\u093e\u0932 \u091a\u0941\u0928\u0947\u0902"}, +gak(){return"\u0936\u0947\u092f\u0930 \u0915\u0930\u0947\u0902\u2026"}, +gcn(){return"$tabCount \u0915\u093e \u091f\u0948\u092c $tabIndex"}, +gbX(){return"\u0932\u093e\u0907\u0938\u0947\u0902\u0938 \u0926\u0947\u0916\u0947\u0902"}} +A.aye.prototype={ +gbF(){return"O aplikaciji $applicationName"}, +gcp(){return"Upozorenje"}, +gcq(){return"Natrag"}, +gbV(){return"Donja tablica"}, +gbB(){return"Prije\u0111ite na kalendar"}, +gcb(){return"Odustani"}, +gcj(){return"Zatvori"}, +gcr(){return"Zatvaranje"}, +gaK(){return"Kopiraj"}, +gcw(){return"Danas"}, +gaN(){return"Izre\u017ei"}, +gbW(){return"dd. mm. gggg."}, +gbp(){return"Unesite datum"}, +gbC(){return"Izvan raspona."}, +gbv(){return"Odaberi datum"}, +gbD(){return"Brisanje"}, +gbs(){return"Dijalog"}, +gbw(){return"Prije\u0111ite na unos"}, +gbH(){return"Format nije va\u017ee\u0107i."}, +gcE(){return"$licenseCount licence"}, +gcN(){return null}, +gbr(){return"1 licenca"}, +gbt(){return"$licenseCount licenci"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licence"}, +gaa(){return"Pogled prema gore"}, +gbx(){return"Odbacivanje izbornika"}, +gal(){return"Odbaci"}, +gcF(){return"Vi\u0161e"}, +gbI(){return"Sljede\u0107i mjesec"}, +gcc(){return"U REDU"}, +gby(){return"Otvaranje izbornika za navigaciju"}, +gaM(){return"Zalijepi"}, +gc4(){return"Sko\u010dni izbornik"}, +gcz(){return"Prethodni mjesec"}, +gcA(){return"Osvje\u017ei"}, +gcH(){return"Preostala su $remainingCount znaka"}, +gcQ(){return null}, +gcm(){return"Preostao je 1 znak"}, +gct(){return"Preostalo je $remainingCount znakova"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Pomakni prema dolje"}, +gcd(){return"Premjesti na kraj"}, +gbE(){return"Premjesti na po\u010detak"}, +gcC(){return"Pomakni prema gore"}, +gbz(){return"Skeniranje teksta"}, +gbA(){return"Rubno"}, +gcu(){return"Zatvori $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Pretra\u017eite"}, +gaL(){return"Pretra\u017ei web"}, +gaH(){return"Odaberi sve"}, +gcg(){return"Odaberite godinu"}, +gak(){return"Dijeli..."}, +gcn(){return"Kartica $tabIndex od $tabCount"}, +gbX(){return"Prika\u017ei licence"}} +A.ayf.prototype={ +gbF(){return"A(z) $applicationName n\xe9vjegye"}, +gcp(){return"\xc9rtes\xedt\xe9s"}, +gcq(){return"Vissza"}, +gbV(){return"Als\xf3 lap"}, +gbB(){return"V\xe1lt\xe1s napt\xe1rra"}, +gcb(){return"M\xe9gse"}, +gcj(){return"Bez\xe1r\xe1s"}, +gcr(){return"Bez\xe1r\xe1s"}, +gaK(){return"M\xe1sol\xe1s"}, +gcw(){return"Ma"}, +gaN(){return"Kiv\xe1g\xe1s"}, +gbW(){return"\xe9\xe9\xe9\xe9. hh. nn."}, +gbp(){return"Adja meg a d\xe1tumot"}, +gbC(){return"Tartom\xe1nyon k\xedv\xfcl."}, +gbv(){return"D\xe1tum kiv\xe1laszt\xe1sa"}, +gbD(){return"T\xf6rl\xe9s"}, +gbs(){return"P\xe1rbesz\xe9dablak"}, +gbw(){return"V\xe1lt\xe1s bevitelre"}, +gbH(){return"\xc9rv\xe9nytelen form\xe1tum."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licenc"}, +gbt(){return"$licenseCount licenc"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licencek"}, +gaa(){return"Felfel\xe9 n\xe9z\xe9s"}, +gbx(){return"Men\xfc bez\xe1r\xe1sa"}, +gal(){return"Elvet\xe9s"}, +gcF(){return"T\xf6bb"}, +gbI(){return"K\xf6vetkez\u0151 h\xf3nap"}, +gcc(){return"OK"}, +gby(){return"Navig\xe1ci\xf3s men\xfc megnyit\xe1sa"}, +gaM(){return"Beilleszt\xe9s"}, +gc4(){return"El\u0151ugr\xf3 men\xfc"}, +gcz(){return"El\u0151z\u0151 h\xf3nap"}, +gcA(){return"Friss\xedt\xe9s"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 karakter maradt"}, +gct(){return"$remainingCount karakter maradt"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\xc1thelyez\xe9s lefel\xe9"}, +gcd(){return"\xc1thelyez\xe9s a v\xe9g\xe9re"}, +gbE(){return"\xc1thelyez\xe9s az elej\xe9re"}, +gcC(){return"\xc1thelyez\xe9s felfel\xe9"}, +gbz(){return"Sz\xf6veg beolvas\xe1sa"}, +gbA(){return"Bor\xedt\xe1s"}, +gcu(){return"$modalRouteContentName bez\xe1r\xe1sa"}, +gcJ(){return B.a3}, +gco(){return"Keres\xe9s"}, +gaL(){return"Keres\xe9s az interneten"}, +gaH(){return"\xd6sszes kijel\xf6l\xe9se"}, +gcg(){return"V\xe1lassza ki az \xe9vet"}, +gak(){return"Megoszt\xe1s\u2026"}, +gcn(){return"$tabCount/$tabIndex. lap"}, +gbX(){return"Licencek megtekint\xe9se"}} +A.ayg.prototype={ +gbF(){return"$applicationName \u0570\u0561\u057e\u0565\u056c\u057e\u0561\u056e\u056b \u0574\u0561\u057d\u056b\u0576"}, +gcp(){return"\u053e\u0561\u0576\u0578\u0582\u0581\u0578\u0582\u0574"}, +gcq(){return"\u0540\u0565\u057f"}, +gbV(){return"\u0546\u0565\u0580\u0584\u0587\u056b \u0567\u056f\u0580\u0561\u0576"}, +gbB(){return"\u0531\u0576\u0581\u0576\u0565\u056c \u0585\u0580\u0561\u0581\u0578\u0582\u0575\u0581\u056b\u0576"}, +gcb(){return"\u0549\u0565\u0572\u0561\u0580\u056f\u0565\u056c"}, +gcj(){return"\u0553\u0561\u056f\u0565\u056c"}, +gcr(){return"\u0553\u0561\u056f\u0565\u056c"}, +gaK(){return"\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c"}, +gcw(){return"\u0531\u0575\u057d\u0585\u0580"}, +gaN(){return"\u053f\u057f\u0580\u0565\u056c"}, +gbW(){return"\u0585\u0585.\u0561\u0561.\u057f\u057f\u057f\u057f"}, +gbp(){return"\u0544\u0578\u0582\u057f\u0584\u0561\u0563\u0580\u0565\u056c \u0561\u0574\u057d\u0561\u0569\u056b\u057e"}, +gbC(){return"\u0539\u0578\u0582\u0575\u056c\u0561\u057f\u0580\u0565\u056c\u056b \u0568\u0576\u0564\u0563\u0580\u056f\u0578\u0582\u0575\u0569\u056b\u0581 \u0564\u0578\u0582\u0580\u057d \u0567\u0589"}, +gbv(){return"\u0538\u0576\u057f\u0580\u0565\u0584 \u0561\u0574\u057d\u0561\u0569\u056b\u057e\u0568"}, +gbD(){return"\u054b\u0576\u057b\u0565\u056c"}, +gbs(){return"\u0535\u0580\u056f\u056d\u0578\u057d\u0578\u0582\u0569\u0575\u0561\u0576 \u057a\u0561\u057f\u0578\u0582\u0570\u0561\u0576"}, +gbw(){return"\u0531\u0576\u0581\u0576\u0565\u056c \u0576\u0565\u0580\u0561\u056e\u0574\u0561\u0576 \u057c\u0565\u056a\u056b\u0574\u056b\u0576"}, +gbH(){return"\u0541\u0587\u0561\u0579\u0561\u0583\u0576 \u0561\u0576\u057e\u0561\u057e\u0565\u0580 \u0567\u0589"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u056c\u056b\u0581\u0565\u0576\u0566\u056b\u0561"}, +gbt(){return"$licenseCount \u056c\u056b\u0581\u0565\u0576\u0566\u056b\u0561"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0531\u0580\u057f\u0578\u0576\u0561\u0563\u0580\u0565\u0580"}, +gaa(){return"\u0553\u0576\u057f\u0580\u0565\u056c"}, +gbx(){return"\u0553\u0561\u056f\u0565\u056c \u0568\u0576\u057f\u0580\u0561\u0581\u0561\u0576\u056f\u0568"}, +gal(){return"\u0553\u0561\u056f\u0565\u056c"}, +gcF(){return"\u0531\u0575\u056c"}, +gbI(){return"\u0540\u0561\u057b\u0578\u0580\u0564 \u0561\u0574\u056b\u057d"}, +gcc(){return"\u0535\u0572\u0561\u057e"}, +gby(){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"}, +gaM(){return"\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c"}, +gc4(){return"\u0535\u056c\u0576\u0578\u0572 \u0568\u0576\u057f\u0580\u0561\u0581\u0561\u0576\u056f"}, +gcz(){return"\u0546\u0561\u056d\u0578\u0580\u0564 \u0561\u0574\u056b\u057d"}, +gcA(){return"\u0539\u0561\u0580\u0574\u0561\u0581\u0576\u0565\u056c"}, +gcH(){return"\u0544\u0576\u0561\u0581 $remainingCount \u0576\u056b\u0577"}, +gcQ(){return"\u0544\u0576\u0561\u0581 $remainingCount \u0576\u056b\u0577"}, +gcm(){return"\u0544\u0576\u0561\u0581\u0565\u056c \u0567 1 \u0576\u056b\u0577"}, +gct(){return"\u0544\u0576\u0561\u0581\u0565\u056c \u0567 $remainingCount \u0576\u056b\u0577"}, +gcR(){return null}, +gcS(){return"\u0546\u056b\u0577\u056b \u0570\u0576\u0561\u0580\u0561\u057e\u0578\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576 \u0579\u056f\u0561"}, +gcB(){return"\u054f\u0565\u0572\u0561\u0583\u0578\u056d\u0565\u056c \u0576\u0565\u0580\u0584\u0587"}, +gcd(){return"\u054f\u0565\u0572\u0561\u0583\u0578\u056d\u0565\u056c \u057e\u0565\u0580\u057b"}, +gbE(){return"\u054f\u0565\u0572\u0561\u0583\u0578\u056d\u0565\u056c \u057d\u056f\u056b\u0566\u0562"}, +gcC(){return"\u054f\u0565\u0572\u0561\u0583\u0578\u056d\u0565\u056c \u057e\u0565\u0580\u0587"}, +gbz(){return"\u054d\u056f\u0561\u0576\u0561\u057e\u0578\u0580\u0565\u056c \u057f\u0565\u0584\u057d\u057f"}, +gbA(){return"\u0534\u056b\u0574\u0561\u056f"}, +gcu(){return"\u0553\u0561\u056f\u0565\u056c\u055d $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u0548\u0580\u0578\u0576\u0565\u056c"}, +gaL(){return"\u0548\u0580\u0578\u0576\u0565\u056c \u0570\u0561\u0574\u0561\u0581\u0561\u0576\u0581\u0578\u0582\u0574"}, +gaH(){return"\u0546\u0577\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568"}, +gcg(){return"\u0538\u0576\u057f\u0580\u0565\u056c \u057f\u0561\u0580\u056b\u0576"}, +gak(){return"\u053f\u056b\u057d\u057e\u0565\u056c..."}, +gcn(){return"\u0546\u0565\u0580\u0564\u056b\u0580 $tabIndex\u055d $tabCount-\u056b\u0581"}, +gbX(){return"\u0534\u056b\u057f\u0565\u056c \u056c\u056b\u0581\u0565\u0576\u0566\u056b\u0561\u0576\u0565\u0580\u0568"}} +A.ayh.prototype={ +gbF(){return"Tentang $applicationName"}, +gcp(){return"Notifikasi"}, +gcq(){return"Kembali"}, +gbV(){return"Sheet Bawah"}, +gbB(){return"Beralih ke kalender"}, +gcb(){return"Batal"}, +gcj(){return"Tutup"}, +gcr(){return"Tutup"}, +gaK(){return"Salin"}, +gcw(){return"Hari ini"}, +gaN(){return"Potong"}, +gbW(){return"hh/bb/tttt"}, +gbp(){return"Masukkan Tanggal"}, +gbC(){return"Di luar rentang."}, +gbv(){return"Pilih tanggal"}, +gbD(){return"Hapus"}, +gbs(){return"Dialog"}, +gbw(){return"Beralih ke masukan"}, +gbH(){return"Format tidak valid."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisensi"}, +gbt(){return"$licenseCount lisensi"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lisensi"}, +gaa(){return"Cari"}, +gbx(){return"Tutup menu"}, +gal(){return"Tutup"}, +gcF(){return"Lainnya"}, +gbI(){return"Bulan berikutnya"}, +gcc(){return"OKE"}, +gby(){return"Buka menu navigasi"}, +gaM(){return"Tempel"}, +gc4(){return"Menu pop-up"}, +gcz(){return"Bulan sebelumnya"}, +gcA(){return"Memuat ulang"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Sisa 1 karakter"}, +gct(){return"Sisa $remainingCount karakter"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Turunkan"}, +gcd(){return"Pindahkan ke akhir"}, +gbE(){return"Pindahkan ke awal"}, +gcC(){return"Naikkan"}, +gbz(){return"Pindai teks"}, +gbA(){return"Scrim"}, +gcu(){return"Tutup $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Telusuri"}, +gaL(){return"Telusuri di Web"}, +gaH(){return"Pilih semua"}, +gcg(){return"Pilih tahun"}, +gak(){return"Bagikan..."}, +gcn(){return"Tab $tabIndex dari $tabCount"}, +gbX(){return"Lihat lisensi"}} +A.ayi.prototype={ +gbF(){return"Um $applicationName"}, +gcp(){return"Tilkynning"}, +gcq(){return"Til baka"}, +gbV(){return"Bla\xf0 ne\xf0st"}, +gbB(){return"Skipta yfir \xed dagatal"}, +gcb(){return"H\xe6tta vi\xf0"}, +gcj(){return"Loka"}, +gcr(){return"Loka"}, +gaK(){return"Afrita"}, +gcw(){return"\xcd dag"}, +gaN(){return"Klippa"}, +gbW(){return"dd.mm.\xe1\xe1\xe1\xe1"}, +gbp(){return"Sl\xe1 inn dagsetningu"}, +gbC(){return"Utan svi\xf0s."}, +gbv(){return"Velja dagsetningu"}, +gbD(){return"Ey\xf0a"}, +gbs(){return"Gluggi"}, +gbw(){return"Skipta yfir \xed innsl\xe1tt"}, +gbH(){return"\xd3gilt sni\xf0."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 leyfi"}, +gbt(){return"$licenseCount leyfi"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Leyfi"}, +gaa(){return"Look Up"}, +gbx(){return"Loka valmynd"}, +gal(){return"Hunsa"}, +gcF(){return"Meira"}, +gbI(){return"N\xe6sti m\xe1nu\xf0ur"}, +gcc(){return"\xcd lagi"}, +gby(){return"Opna yfirlitsvalmynd"}, +gaM(){return"L\xedma"}, +gc4(){return"Sprettivalmynd"}, +gcz(){return"Fyrri m\xe1nu\xf0ur"}, +gcA(){return"Endurn\xfdja"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 stafur eftir"}, +gct(){return"$remainingCount stafir eftir"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"F\xe6ra ni\xf0ur"}, +gcd(){return"F\xe6ra aftast"}, +gbE(){return"F\xe6ra fremst"}, +gcC(){return"F\xe6ra upp"}, +gbz(){return"Skanna texta"}, +gbA(){return"M\xf6skvi"}, +gcu(){return"Loka $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Leit"}, +gaL(){return"Leita \xe1 vefnum"}, +gaH(){return"Velja allt"}, +gcg(){return"Velja \xe1r"}, +gak(){return"Deila..."}, +gcn(){return"Flipi $tabIndex af $tabCount"}, +gbX(){return"Sko\xf0a leyfi"}} +A.ayj.prototype={ +gbF(){return"Informazioni su $applicationName"}, +gcp(){return"Avviso"}, +gcq(){return"Indietro"}, +gbV(){return"Riquadro inferiore"}, +gbB(){return"Passa al calendario"}, +gcb(){return"Annulla"}, +gcj(){return"Chiudi"}, +gcr(){return"Chiudi"}, +gaK(){return"Copia"}, +gcw(){return"Oggi"}, +gaN(){return"Taglia"}, +gbW(){return"mm/gg/aaaa"}, +gbp(){return"Inserisci data"}, +gbC(){return"Fuori intervallo."}, +gbv(){return"Seleziona data"}, +gbD(){return"Elimina"}, +gbs(){return"Finestra di dialogo"}, +gbw(){return"Passa alla modalit\xe0 di immissione"}, +gbH(){return"Formato non valido."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licenza"}, +gbt(){return"$licenseCount licenze"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licenze"}, +gaa(){return"Cerca"}, +gbx(){return"Ignora menu"}, +gal(){return"Ignora"}, +gcF(){return"Altro"}, +gbI(){return"Mese successivo"}, +gcc(){return"OK"}, +gby(){return"Apri il menu di navigazione"}, +gaM(){return"Incolla"}, +gc4(){return"Menu popup"}, +gcz(){return"Mese precedente"}, +gcA(){return"Aggiorna"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 carattere rimanente"}, +gct(){return"$remainingCount caratteri rimanenti"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Sposta gi\xf9"}, +gcd(){return"Sposta alla fine"}, +gbE(){return"Sposta all'inizio"}, +gcC(){return"Sposta su"}, +gbz(){return"Scansiona testo"}, +gbA(){return"Rete"}, +gcu(){return"Chiudi $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Cerca"}, +gaL(){return"Cerca sul web"}, +gaH(){return"Seleziona tutto"}, +gcg(){return"Seleziona anno"}, +gak(){return"Condividi\u2026"}, +gcn(){return"Scheda $tabIndex di $tabCount"}, +gbX(){return"Visualizza licenze"}} +A.ayk.prototype={ +gbF(){return"$applicationName \u306b\u3064\u3044\u3066"}, +gcp(){return"\u901a\u77e5"}, +gcq(){return"\u623b\u308b"}, +gbV(){return"\u30dc\u30c8\u30e0\u30b7\u30fc\u30c8"}, +gbB(){return"\u30ab\u30ec\u30f3\u30c0\u30fc\u306b\u5207\u308a\u66ff\u3048"}, +gcb(){return"\u30ad\u30e3\u30f3\u30bb\u30eb"}, +gcj(){return"\u9589\u3058\u308b"}, +gcr(){return"\u9589\u3058\u308b"}, +gaK(){return"\u30b3\u30d4\u30fc"}, +gcw(){return"\u4eca\u65e5"}, +gaN(){return"\u5207\u308a\u53d6\u308a"}, +gbW(){return"yyyy/mm/dd"}, +gbp(){return"\u65e5\u4ed8\u3092\u5165\u529b"}, +gbC(){return"\u7bc4\u56f2\u5916\u3067\u3059\u3002"}, +gbv(){return"\u65e5\u4ed8\u306e\u9078\u629e"}, +gbD(){return"\u524a\u9664"}, +gbs(){return"\u30c0\u30a4\u30a2\u30ed\u30b0"}, +gbw(){return"\u5165\u529b\u306b\u5207\u308a\u66ff\u3048"}, +gbH(){return"\u5f62\u5f0f\u304c\u7121\u52b9\u3067\u3059\u3002"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u30e9\u30a4\u30bb\u30f3\u30b9: 1 \u4ef6"}, +gbt(){return"\u30e9\u30a4\u30bb\u30f3\u30b9: $licenseCount \u4ef6"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u30e9\u30a4\u30bb\u30f3\u30b9"}, +gaa(){return"\u8abf\u3079\u308b"}, +gbx(){return"\u30e1\u30cb\u30e5\u30fc\u3092\u9589\u3058\u308b"}, +gal(){return"\u9589\u3058\u308b"}, +gcF(){return"\u305d\u306e\u4ed6"}, +gbI(){return"\u6765\u6708"}, +gcc(){return"OK"}, +gby(){return"\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30e1\u30cb\u30e5\u30fc\u3092\u958b\u304f"}, +gaM(){return"\u8cbc\u308a\u4ed8\u3051"}, +gc4(){return"\u30dd\u30c3\u30d7\u30a2\u30c3\u30d7 \u30e1\u30cb\u30e5\u30fc"}, +gcz(){return"\u524d\u6708"}, +gcA(){return"\u66f4\u65b0"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u6b8b\u308a 1 \u6587\u5b57\uff08\u534a\u89d2\u76f8\u5f53\uff09"}, +gct(){return"\u6b8b\u308a $remainingCount \u6587\u5b57\uff08\u534a\u89d2\u76f8\u5f53\uff09"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u4e0b\u306b\u79fb\u52d5"}, +gcd(){return"\u6700\u5f8c\u306b\u79fb\u52d5"}, +gbE(){return"\u5148\u982d\u306b\u79fb\u52d5"}, +gcC(){return"\u4e0a\u306b\u79fb\u52d5"}, +gbz(){return"\u30c6\u30ad\u30b9\u30c8\u3092\u30b9\u30ad\u30e3\u30f3"}, +gbA(){return"\u30b9\u30af\u30ea\u30e0"}, +gcu(){return"$modalRouteContentName \u3092\u9589\u3058\u308b"}, +gcJ(){return B.i9}, +gco(){return"\u691c\u7d22"}, +gaL(){return"\u30a6\u30a7\u30d6\u3092\u691c\u7d22"}, +gaH(){return"\u3059\u3079\u3066\u3092\u9078\u629e"}, +gcg(){return"\u5e74\u3092\u9078\u629e"}, +gak(){return"\u5171\u6709..."}, +gcn(){return"\u30bf\u30d6: $tabIndex/$tabCount"}, +gbX(){return"\u30e9\u30a4\u30bb\u30f3\u30b9\u3092\u8868\u793a"}} +A.ayl.prototype={ +gbF(){return"$applicationName-\u10d8\u10e1 \u10e8\u10d4\u10e1\u10d0\u10ee\u10d4\u10d1"}, +gcp(){return"\u10d2\u10d0\u10e4\u10e0\u10d7\u10ee\u10d8\u10da\u10d4\u10d1\u10d0"}, +gcq(){return"\u10e3\u10d9\u10d0\u10dc"}, +gbV(){return"\u10e5\u10d5\u10d4\u10d3\u10d0 \u10e4\u10e3\u10e0\u10ea\u10d4\u10da\u10d8"}, +gbB(){return"\u10d9\u10d0\u10da\u10d4\u10dc\u10d3\u10d0\u10e0\u10d6\u10d4 \u10d2\u10d0\u10d3\u10d0\u10e0\u10d7\u10d5\u10d0"}, +gcb(){return"\u10d2\u10d0\u10e3\u10e5\u10db\u10d4\u10d1\u10d0"}, +gcj(){return"\u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gcr(){return"\u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gaK(){return"\u10d9\u10dd\u10de\u10d8\u10e0\u10d4\u10d1\u10d0"}, +gcw(){return"\u10d3\u10e6\u10d4\u10e1"}, +gaN(){return"\u10d0\u10db\u10dd\u10ed\u10e0\u10d0"}, +gbW(){return"\u10d3\u10d3.\u10d7\u10d7.\u10ec\u10ec\u10ec\u10ec"}, +gbp(){return"\u10e8\u10d4\u10d8\u10e7\u10d5\u10d0\u10dc\u10d4\u10d7 \u10d7\u10d0\u10e0\u10d8\u10e6\u10d8"}, +gbC(){return"\u10d3\u10d8\u10d0\u10de\u10d0\u10d6\u10dd\u10dc\u10e1 \u10db\u10d8\u10e6\u10db\u10d0\u10d0."}, +gbv(){return"\u10d7\u10d0\u10e0\u10d8\u10e6\u10d8\u10e1 \u10d0\u10e0\u10e9\u10d4\u10d5\u10d0"}, +gbD(){return"\u10ec\u10d0\u10e8\u10da\u10d0"}, +gbs(){return"\u10d3\u10d8\u10d0\u10da\u10dd\u10d2\u10d8"}, +gbw(){return"\u10e8\u10d4\u10e7\u10d5\u10d0\u10dc\u10d0\u10d6\u10d4 \u10d2\u10d0\u10d3\u10d0\u10e0\u10d7\u10d5\u10d0"}, +gbH(){return"\u10e4\u10dd\u10e0\u10db\u10d0\u10e2\u10d8 \u10d0\u10e0\u10d0\u10e1\u10ec\u10dd\u10e0\u10d8\u10d0."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u10da\u10d8\u10ea\u10d4\u10dc\u10d6\u10d8\u10d0"}, +gbt(){return"$licenseCount \u10da\u10d8\u10ea\u10d4\u10dc\u10d6\u10d8\u10d0"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u10da\u10d8\u10ea\u10d4\u10dc\u10d6\u10d8\u10d4\u10d1\u10d8"}, +gaa(){return"\u10d0\u10d8\u10ee\u10d4\u10d3\u10d4\u10d7 \u10d6\u10d4\u10db\u10dd\u10d7"}, +gbx(){return"\u10db\u10d4\u10dc\u10d8\u10e3\u10e1 \u10e3\u10d0\u10e0\u10e7\u10dd\u10e4\u10d0"}, +gal(){return"\u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gcF(){return"\u10db\u10d4\u10e2\u10d8"}, +gbI(){return"\u10e8\u10d4\u10db\u10d3\u10d4\u10d2\u10d8 \u10d7\u10d5\u10d4"}, +gcc(){return"\u10d9\u10d0\u10e0\u10d2\u10d8"}, +gby(){return"\u10e1\u10d0\u10dc\u10d0\u10d5\u10d8\u10d2\u10d0\u10ea\u10d8\u10dd \u10db\u10d4\u10dc\u10d8\u10e3\u10e1 \u10d2\u10d0\u10ee\u10e1\u10dc\u10d0"}, +gaM(){return"\u10e9\u10d0\u10e1\u10db\u10d0"}, +gc4(){return"\u10d0\u10db\u10dd\u10db\u10ee\u10e2\u10d0\u10e0\u10d8 \u10db\u10d4\u10dc\u10d8\u10e3"}, +gcz(){return"\u10ec\u10d8\u10dc\u10d0 \u10d7\u10d5\u10d4"}, +gcA(){return"\u10d2\u10d0\u10dc\u10d0\u10ee\u10da\u10d4\u10d1\u10d0"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u10d3\u10d0\u10e0\u10e9\u10d0 1 \u10e1\u10d8\u10db\u10d1\u10dd\u10da\u10dd"}, +gct(){return"\u10d3\u10d0\u10e0\u10e9\u10d0 $remainingCount \u10e1\u10d8\u10db\u10d1\u10dd\u10da\u10dd"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u10e5\u10d5\u10d4\u10db\u10dd\u10d7 \u10d2\u10d0\u10d3\u10d0\u10e2\u10d0\u10dc\u10d0"}, +gcd(){return"\u10d1\u10dd\u10da\u10dd\u10e8\u10d8 \u10d2\u10d0\u10d3\u10d0\u10e2\u10d0\u10dc\u10d0"}, +gbE(){return"\u10d3\u10d0\u10e1\u10d0\u10ec\u10e7\u10d8\u10e1\u10e8\u10d8 \u10d2\u10d0\u10d3\u10d0\u10e2\u10d0\u10dc\u10d0"}, +gcC(){return"\u10d6\u10d4\u10db\u10dd\u10d7 \u10d2\u10d0\u10d3\u10d0\u10e2\u10d0\u10dc\u10d0"}, +gbz(){return"\u10e2\u10d4\u10e5\u10e1\u10e2\u10d8\u10e1 \u10e1\u10d9\u10d0\u10dc\u10d8\u10e0\u10d4\u10d1\u10d0"}, +gbA(){return"\u10e1\u10d9\u10e0\u10d8\u10db\u10d8"}, +gcu(){return"$modalRouteContentName-\u10d8\u10e1 \u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gcJ(){return B.a3}, +gco(){return"\u10eb\u10d8\u10d4\u10d1\u10d0"}, +gaL(){return"\u10d5\u10d4\u10d1\u10e8\u10d8 \u10eb\u10d8\u10d4\u10d1\u10d0"}, +gaH(){return"\u10e7\u10d5\u10d4\u10da\u10d0\u10e1 \u10d0\u10e0\u10e9\u10d4\u10d5\u10d0"}, +gcg(){return"\u10d0\u10d8\u10e0\u10e9\u10d8\u10d4\u10d7 \u10ec\u10d4\u10da\u10d8"}, +gak(){return"\u10d2\u10d0\u10d6\u10d8\u10d0\u10e0\u10d4\u10d1\u10d0..."}, +gcn(){return"\u10e9\u10d0\u10dc\u10d0\u10e0\u10d7\u10d8 $tabIndex / $tabCount-\u10d3\u10d0\u10dc"}, +gbX(){return"\u10da\u10d8\u10ea\u10d4\u10dc\u10d6\u10d8\u10d4\u10d1\u10d8\u10e1 \u10dc\u10d0\u10ee\u10d5\u10d0"}} +A.aym.prototype={ +gbF(){return"$applicationName \u0442\u0443\u0440\u0430\u043b\u044b"}, +gcp(){return"\u0414\u0430\u0431\u044b\u043b"}, +gcq(){return"\u0410\u0440\u0442\u049b\u0430"}, +gbV(){return"\u0422\u04e9\u043c\u0435\u043d\u0433\u0456 \u043f\u0430\u0440\u0430\u049b\u0448\u0430"}, +gbB(){return"\u041a\u04af\u043d\u0442\u0456\u0437\u0431\u0435\u0433\u0435 \u0430\u0443\u044b\u0441\u0443"}, +gcb(){return"\u0411\u0430\u0441 \u0442\u0430\u0440\u0442\u0443"}, +gcj(){return"\u0416\u0430\u0431\u0443"}, +gcr(){return"\u0416\u0430\u0431\u0443"}, +gaK(){return"\u041a\u04e9\u0448\u0456\u0440\u0443"}, +gcw(){return"\u0411\u04af\u0433\u0456\u043d"}, +gaN(){return"\u049a\u0438\u044e"}, +gbW(){return"\u043a\u043a.\u0430\u0430.\u0436\u0436\u0436\u0436"}, +gbp(){return"\u041a\u04af\u043d\u0434\u0456 \u0435\u043d\u0433\u0456\u0437\u0443"}, +gbC(){return"\u0410\u0443\u049b\u044b\u043c\u043d\u0430\u043d \u0442\u044bc."}, +gbv(){return"\u041a\u04af\u043d\u0434\u0456 \u0442\u0430\u04a3\u0434\u0430\u0443"}, +gbD(){return"\u0416\u043e\u044e"}, +gbs(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u0442\u044b\u049b \u0442\u0435\u0440\u0435\u0437\u0435"}, +gbw(){return"\u041c\u04d9\u0442\u0456\u043d \u0435\u043d\u0433\u0456\u0437\u0443\u0433\u0435 \u0430\u0443\u044b\u0441\u0443"}, +gbH(){return"\u0424\u043e\u0440\u043c\u0430\u0442 \u0436\u0430\u0440\u0430\u043c\u0441\u044b\u0437."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f"}, +gbt(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f\u043b\u0430\u0440"}, +gaa(){return"\u0406\u0437\u0434\u0435\u0443"}, +gbx(){return"\u041c\u04d9\u0437\u0456\u0440\u0434\u0456 \u0436\u0430\u0431\u0443"}, +gal(){return"\u0416\u0430\u0431\u0443"}, +gcF(){return"\u0416\u0430\u044e"}, +gbI(){return"\u041a\u0435\u043b\u0435\u0441\u0456 \u0430\u0439"}, +gcc(){return"\u0418\u04d9"}, +gby(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043c\u04d9\u0437\u0456\u0440\u0456\u043d \u0430\u0448\u0443"}, +gaM(){return"\u049a\u043e\u044e"}, +gc4(){return"\u049a\u0430\u043b\u049b\u044b\u043c\u0430\u043b\u044b \u0442\u0435\u0440\u0435\u0437\u0435 \u043c\u04d9\u0437\u0456\u0440\u0456"}, +gcz(){return"\u04e8\u0442\u043a\u0435\u043d \u0430\u0439"}, +gcA(){return"\u0416\u0430\u04a3\u0430\u0440\u0442\u0443"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0442\u0430\u04a3\u0431\u0430 \u049b\u0430\u043b\u0434\u044b."}, +gct(){return"$remainingCount \u0442\u0430\u04a3\u0431\u0430 \u049b\u0430\u043b\u0434\u044b."}, +gcR(){return null}, +gcS(){return"\u0422\u0430\u04a3\u0431\u0430\u043b\u0430\u0440 \u049b\u0430\u043b\u043c\u0430\u0434\u044b"}, +gcB(){return"\u0422\u04e9\u043c\u0435\u043d\u0433\u0435 \u0436\u044b\u043b\u0436\u044b\u0442\u0443"}, +gcd(){return"\u0421\u043e\u04a3\u044b\u043d\u0430 \u04e9\u0442\u0443"}, +gbE(){return"\u0411\u0430\u0441\u044b\u043d\u0430 \u04e9\u0442\u0443"}, +gcC(){return"\u0416\u043e\u0493\u0430\u0440\u044b\u0493\u0430 \u0436\u044b\u043b\u0436\u044b\u0442\u0443"}, +gbz(){return"\u041c\u04d9\u0442\u0456\u043d\u0434\u0456 \u0441\u043a\u0430\u043d\u0435\u0440\u043b\u0435\u0443"}, +gbA(){return"\u041a\u0435\u043d\u0435\u043f"}, +gcu(){return"$modalRouteContentName \u0436\u0430\u0431\u0443"}, +gcJ(){return B.a3}, +gco(){return"\u0406\u0437\u0434\u0435\u0443"}, +gaL(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0456\u0437\u0434\u0435\u0443"}, +gaH(){return"\u0411\u0430\u0440\u043b\u044b\u0493\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u0443"}, +gcg(){return"\u0416\u044b\u043b\u0434\u044b \u0442\u0430\u04a3\u0434\u0430\u0443"}, +gak(){return"\u0411\u04e9\u043b\u0456\u0441\u0443\u2026"}, +gcn(){return"$tabCount/$tabIndex \u049b\u043e\u0439\u044b\u043d\u0434\u044b"}, +gbX(){return"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f\u043b\u0430\u0440\u0434\u044b \u043a\u04e9\u0440\u0443"}} +A.ayn.prototype={ +gbF(){return"\u17a2\u17c6\u1796\u17b8 $applicationName"}, +gcp(){return"\u1787\u17bc\u1793\u178a\u17c6\u178e\u17b9\u1784"}, +gcq(){return"\u1790\u1799\u1780\u17d2\u179a\u17c4\u1799"}, +gbV(){return"\u179f\u1793\u17d2\u179b\u17b9\u1780\u200b\u1781\u17b6\u1784\u1780\u17d2\u179a\u17c4\u1798"}, +gbB(){return"\u1794\u17d2\u178a\u17bc\u179a\u1791\u17c5\u200b\u1794\u17d2\u179a\u178f\u17b7\u1791\u17b7\u1793"}, +gcb(){return"\u1794\u17c4\u17c7\u1794\u1784\u17cb"}, +gcj(){return"\u1794\u17b7\u1791"}, +gcr(){return"\u1794\u17b7\u1791"}, +gaK(){return"\u1785\u1798\u17d2\u179b\u1784"}, +gcw(){return"\u1790\u17d2\u1784\u17c3\u1793\u17c1\u17c7"}, +gaN(){return"\u1780\u17b6\u178f\u17cb"}, +gbW(){return"\u1790\u17d2\u1784\u17c3/\u1781\u17c2/\u1786\u17d2\u1793\u17b6\u17c6"}, +gbp(){return"\u1794\u1789\u17d2\u1785\u17bc\u179b\u200b\u1780\u17b6\u179b\u1794\u179a\u17b7\u1785\u17d2\u1786\u17c1\u1791"}, +gbC(){return"\u1780\u17d2\u179a\u17c5\u1785\u1793\u17d2\u179b\u17c4\u17c7\u17d4"}, +gbv(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u200b\u1780\u17b6\u179b\u200b\u1794\u179a\u17b7\u1785\u17d2\u1786\u17c1\u1791"}, +gbD(){return"\u179b\u17bb\u1794"}, +gbs(){return"\u1794\u17d2\u179a\u17a2\u1794\u17cb"}, +gbw(){return"\u1794\u17d2\u178a\u17bc\u179a\u1791\u17c5\u200b\u1780\u17b6\u179a\u1794\u1789\u17d2\u1785\u17bc\u179b"}, +gbH(){return"\u1791\u1798\u17d2\u179a\u1784\u17cb\u1798\u17b7\u1793\u200b\u178f\u17d2\u179a\u17b9\u1798\u178f\u17d2\u179a\u17bc\u179c\u1791\u17c1\u17d4"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u17a2\u17b6\u1787\u17d2\u1789\u17b6\u1794\u178e\u17d2\u178e 1"}, +gbt(){return"\u17a2\u17b6\u1787\u17d2\u1789\u17b6\u1794\u178e\u17d2\u178e $licenseCount"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u17a2\u17b6\u1787\u17d2\u1789\u17b6\u1794\u178e\u17d2\u178e"}, +gaa(){return"\u179a\u1780\u1798\u17be\u179b"}, +gbx(){return"\u1785\u17d2\u179a\u17b6\u1793\u1785\u17c4\u179b\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799"}, +gal(){return"\u1785\u17d2\u179a\u17b6\u1793\u200b\u1785\u17c4\u179b"}, +gcF(){return"\u1785\u17d2\u179a\u17be\u1793\u200b\u1791\u17c0\u178f"}, +gbI(){return"\u1781\u17c2\u200b\u200b\u1780\u17d2\u179a\u17c4\u1799"}, +gcc(){return"\u1799\u179b\u17cb\u1796\u17d2\u179a\u1798"}, +gby(){return"\u1794\u17be\u1780\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799\u179a\u17bb\u1780\u179a\u1780"}, +gaM(){return"\u178a\u17b6\u1780\u17cb\u200b\u1785\u17bc\u179b"}, +gc4(){return"\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799\u200b\u179b\u17c4\u178f\u200b\u17a1\u17be\u1784"}, +gcz(){return"\u1781\u17c2\u1798\u17bb\u1793"}, +gcA(){return"\u1795\u17d2\u1791\u17bb\u1780\u17a1\u17be\u1784\u179c\u17b7\u1789"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u1793\u17c5\u179f\u179b\u17cb\u200b 1 \u178f\u17bd\u200b\u1791\u17c0\u178f"}, +gct(){return"\u1793\u17c5\u179f\u179b\u17cb $remainingCount \u178f\u17bd\u200b\u1791\u17c0\u178f"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u1795\u17d2\u179b\u17b6\u179f\u17cb\u1791\u17b8\u200b\u1785\u17bb\u17c7\u200b\u1780\u17d2\u179a\u17c4\u1798"}, +gcd(){return"\u1795\u17d2\u179b\u17b6\u179f\u17cb\u1791\u17b8\u1791\u17c5\u200b\u1785\u17c6\u178e\u17bb\u1785\u1794\u1789\u17d2\u1785\u1794\u17cb"}, +gbE(){return"\u1795\u17d2\u179b\u17b6\u179f\u17cb\u1791\u17b8\u1791\u17c5\u200b\u1785\u17c6\u178e\u17bb\u1785\u200b\u1785\u17b6\u1794\u17cb\u1795\u17d2\u178a\u17be\u1798"}, +gcC(){return"\u1795\u17d2\u179b\u17b6\u179f\u17cb\u1791\u17b8\u200b\u17a1\u17be\u1784\u200b\u179b\u17be"}, +gbz(){return"\u179f\u17d2\u1780\u17c1\u1793\u200b\u17a2\u1780\u17d2\u179f\u179a"}, +gbA(){return"\u1795\u17d2\u1791\u17b6\u17c6\u1784\u179f\u17d2\u179a\u17a2\u17b6\u1794\u17cb"}, +gcu(){return"\u1794\u17b7\u1791 $modalRouteContentName"}, +gcJ(){return B.i9}, +gco(){return"\u179f\u17d2\u179c\u17c2\u1784\u179a\u1780"}, +gaL(){return"\u179f\u17d2\u179c\u17c2\u1784\u179a\u1780\u200b\u179b\u17be\u1794\u178e\u17d2\u178a\u17b6\u1789"}, +gaH(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u200b\u1791\u17b6\u17c6\u1784\u17a2\u179f\u17cb"}, +gcg(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u1786\u17d2\u1793\u17b6\u17c6"}, +gak(){return"\u1785\u17c2\u1780\u179a\u17c6\u179b\u17c2\u1780..."}, +gcn(){return"\u1795\u17d2\u1791\u17b6\u17c6\u1784 $tabIndex \u1780\u17d2\u1793\u17bb\u1784\u200b\u1785\u17c6\u178e\u17c4\u1798\u200b $tabCount"}, +gbX(){return"\u1798\u17be\u179b\u17a2\u17b6\u1787\u17d2\u1789\u17b6\u1794\u178e\u17d2\u178e"}} +A.ayo.prototype={ +gbF(){return"$applicationName \u0cac\u0c97\u0ccd\u0c97\u0cc6"}, +gcp(){return"\u0c8e\u0c9a\u0ccd\u0c9a\u0cb0\u0cbf\u0c95\u0cc6"}, +gcq(){return"\u0cb9\u0cbf\u0c82\u0ca4\u0cbf\u0cb0\u0cc1\u0c97\u0cbf"}, +gbV(){return"\u0c95\u0cc6\u0cb3\u0cad\u0cbe\u0c97\u0ca6 \u0cb6\u0cc0\u0c9f\u0ccd"}, +gbB(){return"\u0c95\u0ccd\u0caf\u0cbe\u0cb2\u0cc6\u0c82\u0ca1\u0cb0\u0ccd\u200c\u0c97\u0cc6 \u0cac\u0ca6\u0cb2\u0cbf\u0cb8\u0cbf"}, +gcb(){return"\u0cb0\u0ca6\u0ccd\u0ca6\u0cc1\u0cae\u0cbe\u0ca1\u0cbf"}, +gcj(){return"\u0cae\u0cc1\u0c9a\u0ccd\u0c9a\u0cbf\u0cb0\u0cbf"}, +gcr(){return"\u0cae\u0cc1\u0c9a\u0ccd\u0c9a\u0cbf\u0cb0\u0cbf"}, +gaK(){return"\u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cbf"}, +gcw(){return"\u0c87\u0c82\u0ca6\u0cc1"}, +gaN(){return"\u0c95\u0ca4\u0ccd\u0ca4\u0cb0\u0cbf\u0cb8\u0cbf"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"\u0ca6\u0cbf\u0ca8\u0cbe\u0c82\u0c95 \u0ca8\u0cae\u0cc2\u0ca6\u0cbf\u0cb8\u0cbf"}, +gbC(){return"\u0cb5\u0ccd\u0caf\u0cbe\u0caa\u0ccd\u0ca4\u0cbf\u0caf \u0cb9\u0cca\u0cb0\u0c97\u0cbf\u0ca6\u0cc6"}, +gbv(){return"\u0ca6\u0cbf\u0ca8\u0cbe\u0c82\u0c95\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0c86\u0caf\u0ccd\u0c95\u0cc6\u0cae\u0cbe\u0ca1\u0cbf"}, +gbD(){return"\u0c85\u0cb3\u0cbf\u0cb8\u0cbf"}, +gbs(){return"\u0ca1\u0cc8\u0cb2\u0cbe\u0c97\u0ccd"}, +gbw(){return"\u0c87\u0ca8\u0ccd\u200c\u0caa\u0cc1\u0c9f\u0ccd\u200c\u0c97\u0cc6 \u0cac\u0ca6\u0cb2\u0cbf\u0cb8\u0cbf"}, +gbH(){return"\u0c85\u0cae\u0cbe\u0ca8\u0ccd\u0caf\u0cb5\u0cbe\u0ca6 \u0cab\u0cbe\u0cb0\u0ccd\u0cae\u0ccd\u0caf\u0cbe\u0c9f\u0ccd."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0caa\u0cb0\u0cb5\u0cbe\u0ca8\u0c97\u0cbf"}, +gbt(){return"$licenseCount \u0caa\u0cb0\u0cb5\u0cbe\u0ca8\u0c97\u0cbf\u0c97\u0cb3\u0cc1"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0caa\u0cb0\u0cb5\u0cbe\u0ca8\u0c97\u0cbf\u0c97\u0cb3\u0cc1"}, +gaa(){return"\u0cae\u0cc7\u0cb2\u0cc6 \u0ca8\u0ccb\u0ca1\u0cbf"}, +gbx(){return"\u0cae\u0cc6\u0ca8\u0cc1\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb5\u0c9c\u0cbe\u0c97\u0cc6\u0cc2\u0cb3\u0cbf\u0cb8\u0cbf"}, +gal(){return"\u0cb5\u0c9c\u0cbe\u0c97\u0cca\u0cb3\u0cbf\u0cb8\u0cbf"}, +gcF(){return"\u0c87\u0ca8\u0ccd\u0ca8\u0cb7\u0ccd\u0c9f\u0cc1"}, +gbI(){return"\u0cae\u0cc1\u0c82\u0ca6\u0cbf\u0ca8 \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1"}, +gcc(){return"\u0cb8\u0cb0\u0cbf"}, +gby(){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"}, +gaM(){return"\u0c85\u0c82\u0c9f\u0cbf\u0cb8\u0cbf"}, +gc4(){return"\u0caa\u0cbe\u0caa\u0ccd\u0c85\u0caa\u0ccd \u0cae\u0cc6\u0ca8\u0cc1"}, +gcz(){return"\u0cb9\u0cbf\u0c82\u0ca6\u0cbf\u0ca8 \u0ca4\u0cbf\u0c82\u0c97\u0cb3\u0cc1"}, +gcA(){return"\u0cb0\u0cbf\u0cab\u0ccd\u0cb0\u0cc6\u0cb6\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0c85\u0c95\u0ccd\u0cb7\u0cb0 \u0c89\u0cb3\u0cbf\u0ca6\u0cbf\u0ca6\u0cc6"}, +gct(){return"$remainingCount \u0c85\u0c95\u0ccd\u0cb7\u0cb0\u0c97\u0cb3\u0cc1 \u0c89\u0cb3\u0cbf\u0ca6\u0cbf\u0cb5\u0cc6"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0c95\u0cc6\u0cb3\u0c97\u0cc6 \u0cb8\u0cb0\u0cbf\u0cb8\u0cbf"}, +gcd(){return"\u0c95\u0cca\u0ca8\u0cc6\u0c97\u0cc6 \u0cb8\u0cb0\u0cbf\u0cb8\u0cbf"}, +gbE(){return"\u0caa\u0ccd\u0cb0\u0cbe\u0cb0\u0c82\u0cad\u0c95\u0ccd\u0c95\u0cc6 \u0cb8\u0cb0\u0cbf\u0cb8\u0cbf"}, +gcC(){return"\u0cae\u0cc7\u0cb2\u0cc6 \u0cb8\u0cb0\u0cbf\u0cb8\u0cbf"}, +gbz(){return"\u0caa\u0ca0\u0ccd\u0caf\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb8\u0ccd\u0c95\u0ccd\u0caf\u0cbe\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"}, +gbA(){return"\u0cb8\u0ccd\u0c95\u0ccd\u0cb0\u0cbf\u0cae\u0ccd"}, +gcu(){return"$modalRouteContentName \u0c85\u0ca8\u0ccd\u0ca8\u0cc1 \u0cae\u0cc1\u0c9a\u0ccd\u0c9a\u0cbf\u0cb0\u0cbf"}, +gcJ(){return B.cR}, +gco(){return"\u0cb9\u0cc1\u0ca1\u0cc1\u0c95\u0cbf"}, +gaL(){return"\u0cb5\u0cc6\u0cac\u0ccd\u200c\u0ca8\u0cb2\u0ccd\u0cb2\u0cbf \u0cb9\u0cc1\u0ca1\u0cc1\u0c95\u0cbf"}, +gaH(){return"\u0c8e\u0cb2\u0ccd\u0cb2\u0cb5\u0ca8\u0ccd\u0ca8\u0cc2 \u0c86\u0caf\u0ccd\u0c95\u0cc6 \u0cae\u0cbe\u0ca1\u0cbf"}, +gcg(){return"\u0cb5\u0cb0\u0ccd\u0cb7\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0c86\u0caf\u0ccd\u0c95\u0cc6\u0cae\u0cbe\u0ca1\u0cbf"}, +gak(){return"\u0cb9\u0c82\u0c9a\u0cbf\u0c95\u0cca\u0cb3\u0ccd\u0cb3\u0cbf..."}, +gcn(){return"$tabCount \u0cb0\u0cb2\u0ccd\u0cb2\u0cbf\u0ca8 $tabIndex \u0c9f\u0ccd\u0caf\u0cbe\u0cac\u0ccd"}, +gbX(){return"\u0caa\u0cb0\u0cb5\u0cbe\u0ca8\u0c97\u0cbf\u0c97\u0cb3\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb5\u0cbf\u0cd5\u0c95\u0ccd\u0cb7\u0cbf\u0cb8\u0cbf"}} +A.ayp.prototype={ +gbF(){return"$applicationName \uc815\ubcf4"}, +gcp(){return"\uc54c\ub9bc"}, +gcq(){return"\ub4a4\ub85c"}, +gbV(){return"\ud558\ub2e8 \uc2dc\ud2b8"}, +gbB(){return"\uce98\ub9b0\ub354 \ubaa8\ub4dc\ub85c \uc804\ud658"}, +gcb(){return"\ucde8\uc18c"}, +gcj(){return"\ub2eb\uae30"}, +gcr(){return"\ub2eb\uae30"}, +gaK(){return"\ubcf5\uc0ac"}, +gcw(){return"\uc624\ub298"}, +gaN(){return"\uc798\ub77c\ub0c4"}, +gbW(){return"yyyy.mm.dd"}, +gbp(){return"\ub0a0\uc9dc \uc785\ub825"}, +gbC(){return"\ubc94\uc704\ub97c \ubc97\uc5b4\ub0ac\uc2b5\ub2c8\ub2e4."}, +gbv(){return"\ub0a0\uc9dc \uc120\ud0dd"}, +gbD(){return"\uc0ad\uc81c"}, +gbs(){return"\ub300\ud654\uc0c1\uc790"}, +gbw(){return"\uc785\ub825 \ubaa8\ub4dc\ub85c \uc804\ud658"}, +gbH(){return"\ud615\uc2dd\uc774 \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\ub77c\uc774\uc120\uc2a4 1\uac1c"}, +gbt(){return"\ub77c\uc774\uc120\uc2a4 $licenseCount\uac1c"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\ub77c\uc774\uc120\uc2a4"}, +gaa(){return"\ucc3e\uae30"}, +gbx(){return"\uba54\ub274 \ub2eb\uae30"}, +gal(){return"\ub2eb\uae30"}, +gcF(){return"\ub354\ubcf4\uae30"}, +gbI(){return"\ub2e4\uc74c \ub2ec"}, +gcc(){return"\ud655\uc778"}, +gby(){return"\ud0d0\uc0c9 \uba54\ub274 \uc5f4\uae30"}, +gaM(){return"\ubd99\uc5ec\ub123\uae30"}, +gc4(){return"\ud31d\uc5c5 \uba54\ub274"}, +gcz(){return"\uc9c0\ub09c\ub2ec"}, +gcA(){return"\uc0c8\ub85c\uace0\uce68"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1\uc790 \ub0a8\uc74c"}, +gct(){return"$remainingCount\uc790 \ub0a8\uc74c"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\uc544\ub798\ub85c \uc774\ub3d9"}, +gcd(){return"\ub05d\uc73c\ub85c \uc774\ub3d9"}, +gbE(){return"\uc2dc\uc791\uc73c\ub85c \uc774\ub3d9"}, +gcC(){return"\uc704\ub85c \uc774\ub3d9"}, +gbz(){return"\ud14d\uc2a4\ud2b8 \uc2a4\uce94"}, +gbA(){return"\uc2a4\ud06c\ub9bc"}, +gcu(){return"$modalRouteContentName \ub2eb\uae30"}, +gcJ(){return B.i9}, +gco(){return"\uac80\uc0c9"}, +gaL(){return"\uc6f9 \uac80\uc0c9"}, +gaH(){return"\uc804\uccb4 \uc120\ud0dd"}, +gcg(){return"\uc5f0\ub3c4 \uc120\ud0dd"}, +gak(){return"\uacf5\uc720..."}, +gcn(){return"\ud0ed $tabCount\uac1c \uc911 $tabIndex\ubc88\uc9f8"}, +gbX(){return"\ub77c\uc774\uc120\uc2a4 \ubcf4\uae30"}} +A.ayq.prototype={ +gbF(){return"$applicationName \u043a\u0430\u043d\u0430\u043b\u044b \u0436\u04e9\u043d\u04af\u043d\u0434\u04e9"}, +gcp(){return"\u042d\u0441\u043a\u0435\u0440\u0442\u04af\u04af"}, +gcq(){return"\u0410\u0440\u0442\u043a\u0430"}, +gbV(){return"\u042b\u043b\u0434\u044b\u0439\u043a\u044b \u044d\u043a\u0440\u0430\u043d"}, +gbB(){return"\u0416\u044b\u043b\u043d\u0430\u0430\u043c\u0430\u0433\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u043b\u0443\u04a3\u0443\u0437"}, +gcb(){return"\u0422\u043e\u043a\u0442\u043e\u0442\u0443\u0443"}, +gcj(){return"\u0416\u0430\u0431\u0443\u0443"}, +gcr(){return"\u0416\u0430\u0431\u0443\u0443"}, +gaK(){return"\u041a\u04e9\u0447\u04af\u0440\u04af\u04af"}, +gcw(){return"\u0411\u04af\u0433\u04af\u043d"}, +gaN(){return"\u041a\u0435\u0441\u04af\u04af"}, +gbW(){return"\u043a\u043a.\u0430\u0430.\u0436\u0436\u0436\u0436"}, +gbp(){return"\u041a\u04af\u043d\u0434\u04af \u043a\u0438\u0440\u0433\u0438\u0437\u04af\u04af"}, +gbC(){return"\u0410\u0440\u0430\u043a\u0435\u0442 \u0447\u0435\u0433\u0438\u043d\u0435\u043d \u0442\u044b\u0448\u043a\u0430\u0440\u044b."}, +gbv(){return"\u041a\u04af\u043d\u0434\u04af \u0442\u0430\u043d\u0434\u043e\u043e"}, +gbD(){return"\u0416\u043e\u043a \u043a\u044b\u043b\u0443\u0443"}, +gbs(){return"\u0414\u0438\u0430\u043b\u043e\u0433"}, +gbw(){return"\u0422\u0435\u0440\u0438\u043f \u043a\u0438\u0440\u0433\u0438\u0437\u04af\u04af \u0440\u0435\u0436\u0438\u043c\u0438\u043d\u0435 \u043a\u043e\u0442\u043e\u0440\u0443\u043b\u0443\u04a3\u0443\u0437"}, +gbH(){return"\u0422\u0443\u0443\u0440\u0430 \u044d\u043c\u0435\u0441 \u0444\u043e\u0440\u043c\u0430\u0442."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0443\u0440\u0443\u043a\u0441\u0430\u0442\u0442\u0430\u043c\u0430"}, +gbt(){return"$licenseCount \u0443\u0440\u0443\u043a\u0441\u0430\u0442\u0442\u0430\u043c\u0430"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0423\u0440\u0443\u043a\u0441\u0430\u0442\u0442\u0430\u043c\u0430\u043b\u0430\u0440"}, +gaa(){return"\u0418\u0437\u0434\u04e9\u04e9"}, +gbx(){return"\u041c\u0435\u043d\u044e\u043d\u0443 \u0436\u0430\u0431\u0443\u0443"}, +gal(){return"\u0416\u0430\u0431\u0443\u0443"}, +gcF(){return"\u0414\u0430\u0433\u044b"}, +gbI(){return"\u041a\u0438\u0439\u0438\u043d\u043a\u0438 \u0430\u0439"}, +gcc(){return"\u041c\u0430\u043a\u0443\u043b"}, +gby(){return"\u0427\u0430\u0431\u044b\u0442\u0442\u043e\u043e \u043c\u0435\u043d\u044e\u0441\u0443\u043d \u0430\u0447\u0443\u0443"}, +gaM(){return"\u0427\u0430\u043f\u0442\u043e\u043e"}, +gc4(){return"\u041a\u0430\u043b\u043a\u044b\u043f \u0447\u044b\u0433\u0443\u0443\u0447\u0443 \u043c\u0435\u043d\u044e"}, +gcz(){return"\u041c\u0443\u0440\u0443\u043d\u043a\u0443 \u0430\u0439"}, +gcA(){return"\u0416\u0430\u04a3\u044b\u0440\u0442\u0443\u0443"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0431\u0435\u043b\u0433\u0438 \u043a\u0430\u043b\u0434\u044b"}, +gct(){return"$remainingCount \u0431\u0435\u043b\u0433\u0438 \u043a\u0430\u043b\u0434\u044b"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0422\u04e9\u043c\u04e9\u043d \u0436\u044b\u043b\u0434\u044b\u0440\u0443\u0443"}, +gcd(){return"\u0410\u044f\u0433\u044b\u043d\u0430 \u0436\u044b\u043b\u0434\u044b\u0440\u0443\u0443"}, +gbE(){return"\u0411\u0430\u0448\u044b\u043d\u0430 \u0436\u044b\u043b\u0434\u044b\u0440\u0443\u0443"}, +gcC(){return"\u0416\u043e\u0433\u043e\u0440\u0443 \u0436\u044b\u043b\u0434\u044b\u0440\u0443\u0443"}, +gbz(){return"\u0422\u0435\u043a\u0441\u0442\u0442\u0438 \u0441\u043a\u0430\u043d\u0434\u043e\u043e"}, +gbA(){return"\u041a\u0435\u043d\u0435\u043f"}, +gcu(){return"$modalRouteContentName \u0436\u0430\u0431\u0443\u0443"}, +gcJ(){return B.a3}, +gco(){return"\u0418\u0437\u0434\u04e9\u04e9"}, +gaL(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0438\u0437\u0434\u04e9\u04e9"}, +gaH(){return"\u0411\u0430\u0430\u0440\u044b\u043d \u0442\u0430\u043d\u0434\u043e\u043e"}, +gcg(){return"\u0416\u044b\u043b\u0434\u044b \u0442\u0430\u043d\u0434\u043e\u043e"}, +gak(){return"\u0411\u04e9\u043b\u04af\u0448\u04af\u04af\u2026"}, +gcn(){return"$tabCount \u043a\u044b\u043d\u0430\u043b\u043c\u0430 \u0438\u0447\u0438\u043d\u0435\u043d $tabIndex"}, +gbX(){return"\u0423\u0440\u0443\u043a\u0441\u0430\u0442\u0442\u0430\u043c\u0430\u043b\u0430\u0440\u0434\u044b \u043a\u04e9\u0440\u04af\u04af"}} +A.ayr.prototype={ +gbF(){return"\u0e81\u0ec8\u0ebd\u0ea7\u0e81\u0eb1\u0e9a $applicationName"}, +gcp(){return"\u0e81\u0eb2\u0e99\u0ec0\u0e95\u0eb7\u0ead\u0e99"}, +gcq(){return"\u0e81\u0eb1\u0e9a\u0e84\u0eb7\u0e99"}, +gbV(){return"\u0e8a\u0eb5\u0e94\u0ea5\u0eb8\u0ec8\u0ea1\u0eaa\u0eb8\u0e94"}, +gbB(){return"\u0eaa\u0eb0\u0eab\u0ebc\u0eb1\u0e9a\u0ec4\u0e9b\u0e9b\u0eb0\u0e95\u0eb4\u0e97\u0eb4\u0e99"}, +gcb(){return"\u0e8d\u0ebb\u0e81\u0ec0\u0ea5\u0eb5\u0e81"}, +gcj(){return"\u0e9b\u0eb4\u0e94"}, +gcr(){return"\u0e9b\u0eb4\u0e94"}, +gaK(){return"\u0eaa\u0eb3\u0ec0\u0e99\u0ebb\u0eb2"}, +gcw(){return"\u0ea1\u0eb7\u0ec9\u0e99\u0eb5\u0ec9"}, +gaN(){return"\u0e95\u0eb1\u0e94"}, +gbW(){return"\u0e94\u0e94/\u0ea7\u0ea7/\u0e9b\u0e9b\u0e9b\u0e9b"}, +gbp(){return"\u0ec3\u0eaa\u0ec8\u0ea7\u0eb1\u0e99\u0e97\u0eb5"}, +gbC(){return"\u0ea2\u0eb9\u0ec8\u0e99\u0ead\u0e81\u0ec4\u0ea5\u0e8d\u0eb0."}, +gbv(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u0ea7\u0eb1\u0e99\u0e97\u0eb5"}, +gbD(){return"\u0ea5\u0eb6\u0e9a"}, +gbs(){return"\u0e82\u0ecd\u0ec9\u0e84\u0ea7\u0eb2\u0ea1"}, +gbw(){return"\u0eaa\u0eb0\u0eab\u0ebc\u0eb1\u0e9a\u0ec4\u0e9b\u0e81\u0eb2\u0e99\u0e9b\u0ec9\u0ead\u0e99\u0e82\u0ecd\u0ec9\u0ea1\u0eb9\u0e99"}, +gbH(){return"\u0eae\u0eb9\u0e9a\u0ec1\u0e9a\u0e9a\u0e9a\u0ecd\u0ec8\u0e96\u0eb7\u0e81\u0e95\u0ec9\u0ead\u0e87."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0ec3\u0e9a\u0ead\u0eb0\u0e99\u0eb8\u0e8d\u0eb2\u0e94"}, +gbt(){return"$licenseCount \u0ec3\u0e9a\u0ead\u0eb0\u0e99\u0eb8\u0e8d\u0eb2\u0e94"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0ec3\u0e9a\u0ead\u0eb0\u0e99\u0eb8\u0e8d\u0eb2\u0e94"}, +gaa(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0e82\u0ecd\u0ec9\u0ea1\u0eb9\u0e99"}, +gbx(){return"\u0e9b\u0eb4\u0e94\u0ec0\u0ea1\u0e99\u0eb9"}, +gal(){return"\u0e9b\u0eb4\u0e94\u0ec4\u0ea7\u0ec9"}, +gcF(){return"\u0ec0\u0e9e\u0eb5\u0ec8\u0ea1\u0ec0\u0e95\u0eb5\u0ea1"}, +gbI(){return"\u0ec0\u0e94\u0eb7\u0ead\u0e99\u0edc\u0ec9\u0eb2"}, +gcc(){return"\u0e95\u0ebb\u0e81\u0ea5\u0ebb\u0e87"}, +gby(){return"\u0ec0\u0e9b\u0eb5\u0e94\u0ec0\u0ea1\u0e99\u0eb9\u0e81\u0eb2\u0e99\u0e99\u0eb3\u0e97\u0eb2\u0e87"}, +gaM(){return"\u0ea7\u0eb2\u0e87"}, +gc4(){return"\u0ec0\u0ea1\u0e99\u0eb9\u0e9b\u0eb1\u0ead\u0e9a\u0ead\u0eb1\u0e9a"}, +gcz(){return"\u0ec0\u0e94\u0eb7\u0ead\u0e99\u0ec1\u0ea5\u0ec9\u0ea7"}, +gcA(){return"\u0ec2\u0eab\u0ebc\u0e94\u0e84\u0eb7\u0e99\u0ec3\u0edd\u0ec8"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u0e8d\u0eb1\u0e87\u0ead\u0eb5\u0e81 1 \u0e95\u0ebb\u0ea7\u0ead\u0eb1\u0e81\u0eaa\u0ead\u0e99"}, +gct(){return"\u0e8d\u0eb1\u0e87\u0ead\u0eb5\u0e81 $remainingCount \u0e95\u0ebb\u0ea7\u0ead\u0eb1\u0e81\u0eaa\u0ead\u0e99"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0e8d\u0ec9\u0eb2\u0e8d\u0ea5\u0ebb\u0e87"}, +gcd(){return"\u0e8d\u0ec9\u0eb2\u0e8d\u0ec4\u0e9b\u0eaa\u0eb4\u0ec9\u0e99\u0eaa\u0eb8\u0e94"}, +gbE(){return"\u0e8d\u0ec9\u0eb2\u0e8d\u0ec4\u0e9b\u0ec0\u0ea5\u0eb5\u0ec8\u0ea1\u0e95\u0ebb\u0ec9\u0e99"}, +gcC(){return"\u0e8d\u0ec9\u0eb2\u0e8d\u0e82\u0eb6\u0ec9\u0e99"}, +gbz(){return"\u0eaa\u0eb0\u0ec1\u0e81\u0e99\u0e82\u0ecd\u0ec9\u0e84\u0ea7\u0eb2\u0ea1"}, +gbA(){return"Scrim"}, +gcu(){return"\u0e9b\u0eb4\u0e94 $modalRouteContentName"}, +gcJ(){return B.cR}, +gco(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2"}, +gaL(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0ea2\u0eb9\u0ec8\u0ead\u0eb4\u0e99\u0ec0\u0e95\u0eb5\u0ec0\u0e99\u0eb1\u0e94"}, +gaH(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94"}, +gcg(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u200b\u0e9b\u0eb5"}, +gak(){return"\u0ec1\u0e9a\u0ec8\u0e87\u0e9b\u0eb1\u0e99..."}, +gcn(){return"\u0ec1\u0e96\u0e9a\u0e97\u0eb5 $tabIndex \u0e88\u0eb2\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94 $tabCount"}, +gbX(){return"\u0ec0\u0e9a\u0eb4\u0ec8\u0e87\u0ec3\u0e9a\u0ead\u0eb0\u0e99\u0eb8\u0e8d\u0eb2\u0e94"}} +A.ays.prototype={ +gbF(){return"Apie \u201e$applicationName\u201c"}, +gcp(){return"\u012esp\u0117jimas"}, +gcq(){return"Atgal"}, +gbV(){return"Apatinis lapas"}, +gbB(){return"Perjungti \u012f kalendori\u0173"}, +gcb(){return"At\u0161aukti"}, +gcj(){return"U\u017edaryti"}, +gcr(){return"U\u017edaryti"}, +gaK(){return"Kopijuoti"}, +gcw(){return"\u0160iandien"}, +gaN(){return"I\u0161kirpti"}, +gbW(){return"yyyy/mm/dd/"}, +gbp(){return"\u012eveskite dat\u0105"}, +gbC(){return"Nepatenka \u012f diapazon\u0105."}, +gbv(){return"Pasirinkite dat\u0105"}, +gbD(){return"I\u0161trinti"}, +gbs(){return"Dialogo langas"}, +gbw(){return"Perjungti \u012f \u012fvest\u012f"}, +gbH(){return"Netinkamas formatas."}, +gcE(){return"$licenseCount licencijos"}, +gcN(){return"$licenseCount licencijos"}, +gbr(){return"1 licencija"}, +gbt(){return"$licenseCount licencij\u0173"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licencijos"}, +gaa(){return"Ie\u0161koti"}, +gbx(){return"Atsisakyti meniu"}, +gal(){return"Atsisakyti"}, +gcF(){return"Daugiau"}, +gbI(){return"Kitas m\u0117nuo"}, +gcc(){return"GERAI"}, +gby(){return"Atidaryti nar\u0161ymo meniu"}, +gaM(){return"\u012eklijuoti"}, +gc4(){return"I\u0161\u0161okantysis meniu"}, +gcz(){return"Ankstesnis m\u0117nuo"}, +gcA(){return"Atnaujinti"}, +gcH(){return"Liko $remainingCount simboliai"}, +gcQ(){return"Liko $remainingCount simbolio"}, +gcm(){return"Liko 1 simbolis"}, +gct(){return"Liko $remainingCount simboli\u0173"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Perkelti \u017eemyn"}, +gcd(){return"Perkelti \u012f pabaig\u0105"}, +gbE(){return"Perkelti \u012f prad\u017ei\u0105"}, +gcC(){return"Perkelti auk\u0161tyn"}, +gbz(){return"Nuskaityti tekst\u0105"}, +gbA(){return"U\u017esklanda"}, +gcu(){return"U\u017edaryti \u201e$modalRouteContentName\u201c"}, +gcJ(){return B.a3}, +gco(){return"Paie\u0161ka"}, +gaL(){return"Ie\u0161koti \u017einiatinklyje"}, +gaH(){return"Pasirinkti visk\u0105"}, +gcg(){return"Pasirinkite metus"}, +gak(){return"Bendrinti..."}, +gcn(){return"$tabIndex skirtukas i\u0161 $tabCount"}, +gbX(){return"Per\u017ei\u016br\u0117ti licencijas"}} +A.ayt.prototype={ +gbF(){return"Par $applicationName"}, +gcp(){return"Br\u012bdin\u0101jums"}, +gcq(){return"Atpaka\u013c"}, +gbV(){return"Ekr\u0101na apak\u0161da\u013cas lapa"}, +gbB(){return"P\u0101rsl\u0113gties uz kalend\u0101ru"}, +gcb(){return"Atcelt"}, +gcj(){return"Aizv\u0113rt"}, +gcr(){return"Aizv\u0113rt"}, +gaK(){return"Kop\u0113t"}, +gcw(){return"\u0160odien"}, +gaN(){return"Izgriezt"}, +gbW(){return"dd/mm/gggg"}, +gbp(){return"Ievadiet datumu"}, +gbC(){return"\u0100rpus diapazona."}, +gbv(){return"Atlasiet datumu"}, +gbD(){return"Dz\u0113st"}, +gbs(){return"Dialoglodzi\u0146\u0161"}, +gbw(){return"P\u0101rsl\u0113gties uz ievadi"}, +gbH(){return"Neder\u012bgs form\u0101ts."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\xa0licence"}, +gbt(){return"$licenseCount\xa0licences"}, +gcO(){return null}, +gc7(){return"Nav licen\u010du"}, +gc3(){return"Licences"}, +gaa(){return"Mekl\u0113t"}, +gbx(){return"Ner\u0101d\u012bt izv\u0113lni"}, +gal(){return"Ner\u0101d\u012bt"}, +gcF(){return"Vair\u0101k"}, +gbI(){return"N\u0101kamais m\u0113nesis"}, +gcc(){return"LABI"}, +gby(){return"Atv\u0113rt navig\u0101cijas izv\u0113lni"}, +gaM(){return"Iel\u012bm\u0113t"}, +gc4(){return"Uznirsto\u0161\u0101 izv\u0113lne"}, +gcz(){return"Iepriek\u0161\u0113jais m\u0113nesis"}, +gcA(){return"Atsvaidzin\u0101t"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Atlikusi 1\xa0rakstz\u012bme."}, +gct(){return"Atliku\u0161as $remainingCount\xa0rakstz\u012bmes."}, +gcR(){return null}, +gcS(){return"Nav atlikusi neviena rakstz\u012bme."}, +gcB(){return"P\u0101rvietot uz leju"}, +gcd(){return"P\u0101rvietot uz beig\u0101m"}, +gbE(){return"P\u0101rvietot uz s\u0101kumu"}, +gcC(){return"P\u0101rvietot uz aug\u0161u"}, +gbz(){return"Sken\u0113t tekstu"}, +gbA(){return"P\u0101rkl\u0101jums"}, +gcu(){return"Aizv\u0113rt $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Mekl\u0113t"}, +gaL(){return"Mekl\u0113t t\u012bmekl\u012b"}, +gaH(){return"Atlas\u012bt visu"}, +gcg(){return"Atlasiet gadu"}, +gak(){return"Kop\u012bgot\u2026"}, +gcn(){return"$tabIndex.\xa0cilne no\xa0$tabCount"}, +gbX(){return"Skat\u012bt licences"}} +A.ayu.prototype={ +gbF(){return"\u0417\u0430 $applicationName"}, +gcp(){return"\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0434\u0443\u0432\u0430\u045a\u0435"}, +gcq(){return"\u041d\u0430\u0437\u0430\u0434"}, +gbV(){return"\u0414\u043e\u043b\u0435\u043d \u043b\u0438\u0441\u0442"}, +gbB(){return"\u041f\u0440\u0435\u0444\u0440\u043b\u0438 \u043d\u0430 \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440"}, +gcb(){return"\u041e\u0442\u043a\u0430\u0436\u0438"}, +gcj(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438"}, +gcr(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438"}, +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gcw(){return"\u0414\u0435\u043d\u0435\u0441"}, +gaN(){return"\u0418\u0441\u0435\u0447\u0438"}, +gbW(){return"dd.mm.yyyy"}, +gbp(){return"\u0412\u043d\u0435\u0441\u0435\u0442\u0435 \u0434\u0430\u0442\u0443\u043c"}, +gbC(){return"\u041d\u0430\u0434\u0432\u043e\u0440 \u043e\u0434 \u043e\u043f\u0441\u0435\u0433."}, +gbv(){return"\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0434\u0430\u0442\u0443\u043c"}, +gbD(){return"\u0418\u0437\u0431\u0440\u0438\u0448\u0438"}, +gbs(){return"\u0414\u0438\u0458\u0430\u043b\u043e\u0433"}, +gbw(){return"\u041f\u0440\u0435\u0444\u0440\u043b\u0438 \u043d\u0430 \u0432\u043d\u0435\u0441\u0443\u0432\u0430\u045a\u0435"}, +gbH(){return"\u041d\u0435\u0432\u0430\u0436\u0435\u0447\u043a\u0438 \u0444\u043e\u0440\u043c\u0430\u0442."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u043b\u0438\u0446\u0435\u043d\u0446\u0430"}, +gbt(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0446\u0438"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0438\u0446\u0435\u043d\u0446\u0438"}, +gaa(){return"\u041f\u043e\u0433\u043b\u0435\u0434\u043d\u0435\u0442\u0435 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gbx(){return"\u041e\u0442\u0444\u0440\u043b\u0435\u0442\u0435 \u0433\u043e \u043c\u0435\u043d\u0438\u0442\u043e"}, +gal(){return"\u041e\u0442\u0444\u0440\u043b\u0438"}, +gcF(){return"\u0423\u0448\u0442\u0435"}, +gbI(){return"\u0421\u043b\u0435\u0434\u043d\u0438\u043e\u0442 \u043c\u0435\u0441\u0435\u0446"}, +gcc(){return"\u0412\u043e \u0440\u0435\u0434"}, +gby(){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"}, +gaM(){return"\u0417\u0430\u043b\u0435\u043f\u0438"}, +gc4(){return"\u0421\u043a\u043e\u043a\u0430\u0447\u043a\u043e \u043c\u0435\u043d\u0438"}, +gcz(){return"\u041f\u0440\u0435\u0442\u0445\u043e\u0434\u043d\u0438\u043e\u0442 \u043c\u0435\u0441\u0435\u0446"}, +gcA(){return"\u041e\u0441\u0432\u0435\u0436\u0438"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043d\u0443\u0432\u0430 \u0443\u0448\u0442\u0435 1 \u0437\u043d\u0430\u043a"}, +gct(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043d\u0443\u0432\u0430\u0430\u0442 \u0443\u0448\u0442\u0435 $remainingCount \u0437\u043d\u0430\u0446\u0438"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0435\u0442\u0435 \u043d\u0430\u0434\u043e\u043b\u0443"}, +gcd(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0435\u0442\u0435 \u043d\u0430 \u043a\u0440\u0430\u0458\u043e\u0442"}, +gbE(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0435\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0435\u0442\u043e\u043a"}, +gcC(){return"\u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0435\u0442\u0435 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gbz(){return"\u0421\u043a\u0435\u043d\u0438\u0440\u0430\u0458\u0442\u0435 \u0433\u043e \u0442\u0435\u043a\u0441\u0442\u043e\u0442"}, +gbA(){return"\u0421\u043a\u0440\u0438\u043c"}, +gcu(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0435\u0442\u0435 \u0458\u0430 $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u041f\u0440\u0435\u0431\u0430\u0440\u0443\u0432\u0430\u0458\u0442\u0435"}, +gaL(){return"\u041f\u0440\u0435\u0431\u0430\u0440\u0430\u0458\u0442\u0435 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442"}, +gaH(){return"\u0418\u0437\u0431\u0435\u0440\u0438 \u0433\u0438 \u0441\u0438\u0442\u0435"}, +gcg(){return"\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0433\u043e\u0434\u0438\u043d\u0430"}, +gak(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u0435\u0442\u0435..."}, +gcn(){return"\u041a\u0430\u0440\u0442\u0438\u0447\u043a\u0430 $tabIndex \u043e\u0434 $tabCount"}, +gbX(){return"\u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u0433\u0438 \u043b\u0438\u0446\u0435\u043d\u0446\u0438\u0442\u0435"}} +A.ayv.prototype={ +gbF(){return"$applicationName \u0d0e\u0d28\u0d4d\u0d28\u0d24\u0d3f\u0d28\u0d46\u0d15\u0d4d\u0d15\u0d41\u0d31\u0d3f\u0d1a\u0d4d\u0d1a\u0d4d"}, +gcp(){return"\u0d2e\u0d41\u0d28\u0d4d\u0d28\u0d31\u0d3f\u0d2f\u0d3f\u0d2a\u0d4d\u0d2a\u0d4d"}, +gcq(){return"\u0d2e\u0d1f\u0d19\u0d4d\u0d19\u0d41\u0d15"}, +gbV(){return"\u0d2c\u0d4b\u0d1f\u0d4d\u0d1f\u0d02 \u0d37\u0d40\u0d31\u0d4d\u0d31\u0d4d"}, +gbB(){return"\u0d15\u0d32\u0d23\u0d4d\u0d1f\u0d31\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d2e\u0d3e\u0d31\u0d41\u0d15"}, +gcb(){return"\u0d31\u0d26\u0d4d\u0d26\u0d3e\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gcj(){return"\u0d05\u0d1f\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gcr(){return"\u0d05\u0d1f\u0d2f\u0d4d\u200c\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaK(){return"\u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15"}, +gcw(){return"\u0d07\u0d28\u0d4d\u0d28\u0d4d"}, +gaN(){return"\u0d2e\u0d41\u0d31\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"\u0d24\u0d40\u0d2f\u0d24\u0d3f \u0d28\u0d7d\u0d15\u0d41\u0d15"}, +gbC(){return"\u0d38\u0d3e\u0d27\u0d41\u0d35\u0d3e\u0d2f \u0d36\u0d4d\u0d30\u0d47\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d4d \u0d2a\u0d41\u0d31\u0d24\u0d4d\u0d24\u0d3e\u0d23\u0d4d."}, +gbv(){return"\u0d24\u0d40\u0d2f\u0d24\u0d3f \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbD(){return"\u0d07\u0d32\u0d4d\u0d32\u0d3e\u0d24\u0d3e\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbs(){return"\u0d21\u0d2f\u0d32\u0d4b\u0d17\u0d4d"}, +gbw(){return"\u0d07\u0d7b\u0d2a\u0d41\u0d1f\u0d4d\u0d1f\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d2e\u0d3e\u0d31\u0d41\u0d15"}, +gbH(){return"\u0d24\u0d46\u0d31\u0d4d\u0d31\u0d3e\u0d2f \u0d2b\u0d47\u0d3e\u0d7c\u0d2e\u0d3e\u0d31\u0d4d\u0d31\u0d4d."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u0d12\u0d30\u0d41 \u0d32\u0d48\u0d38\u0d7b\u0d38\u0d4d"}, +gbt(){return"$licenseCount \u0d32\u0d48\u0d38\u0d7b\u0d38\u0d41\u0d15\u0d7e"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0d32\u0d48\u0d38\u0d7b\u0d38\u0d41\u0d15\u0d7e"}, +gaa(){return"\u0d2e\u0d41\u0d15\u0d33\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d28\u0d4b\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbx(){return"\u0d2e\u0d46\u0d28\u0d41 \u0d21\u0d3f\u0d38\u0d4d\u0d2e\u0d3f\u0d38\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"}, +gal(){return"\u0d28\u0d3f\u0d30\u0d38\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gcF(){return"\u0d15\u0d42\u0d1f\u0d41\u0d24\u0d7d"}, +gbI(){return"\u0d05\u0d1f\u0d41\u0d24\u0d4d\u0d24 \u0d2e\u0d3e\u0d38\u0d02"}, +gcc(){return"\u0d36\u0d30\u0d3f"}, +gby(){return"\u0d28\u0d3e\u0d35\u0d3f\u0d17\u0d47\u0d37\u0d7b \u0d2e\u0d46\u0d28\u0d41 \u0d24\u0d41\u0d31\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaM(){return"\u0d12\u0d1f\u0d4d\u0d1f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gc4(){return"\u0d2a\u0d4b\u0d2a\u0d4d\u0d2a\u0d4d \u0d05\u0d2a\u0d4d\u0d2a\u0d4d \u0d2e\u0d46\u0d28\u0d41"}, +gcz(){return"\u0d2e\u0d41\u0d2e\u0d4d\u0d2a\u0d24\u0d4d\u0d24\u0d46 \u0d2e\u0d3e\u0d38\u0d02"}, +gcA(){return"\u0d31\u0d40\u0d2b\u0d4d\u0d30\u0d37\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u0d12\u0d30\u0d41 \u0d2a\u0d4d\u0d30\u0d24\u0d40\u0d15\u0d02 \u0d36\u0d47\u0d37\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41"}, +gct(){return"$remainingCount \u0d2a\u0d4d\u0d30\u0d24\u0d40\u0d15\u0d19\u0d4d\u0d19\u0d7e \u0d36\u0d47\u0d37\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0d24\u0d3e\u0d34\u0d4b\u0d1f\u0d4d\u0d1f\u0d4d \u0d28\u0d40\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gcd(){return"\u0d05\u0d35\u0d38\u0d3e\u0d28 \u0d2d\u0d3e\u0d17\u0d24\u0d4d\u0d24\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d2a\u0d4b\u0d35\u0d41\u0d15"}, +gbE(){return"\u0d24\u0d41\u0d1f\u0d15\u0d4d\u0d15\u0d24\u0d4d\u0d24\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d2a\u0d4b\u0d35\u0d41\u0d15"}, +gcC(){return"\u0d2e\u0d41\u0d15\u0d33\u0d3f\u0d32\u0d4b\u0d1f\u0d4d\u0d1f\u0d4d \u0d28\u0d40\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbz(){return"\u0d1f\u0d46\u0d15\u0d4d\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d \u0d38\u0d4d\u200c\u0d15\u0d3e\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"}, +gbA(){return"\u0d38\u0d4d\u0d15\u0d4d\u0d30\u0d3f\u0d02"}, +gcu(){return"$modalRouteContentName \u0d05\u0d1f\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gcJ(){return B.cR}, +gco(){return"\u0d24\u0d3f\u0d30\u0d2f\u0d41\u0d15"}, +gaL(){return"\u0d35\u0d46\u0d2c\u0d3f\u0d7d \u0d24\u0d3f\u0d30\u0d2f\u0d41\u0d15"}, +gaH(){return"\u0d0e\u0d32\u0d4d\u0d32\u0d3e\u0d02 \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gcg(){return"\u0d35\u0d7c\u0d37\u0d02 \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gak(){return"\u0d2a\u0d19\u0d4d\u0d15\u0d3f\u0d1f\u0d41\u0d15..."}, +gcn(){return"$tabCount-\u0d7d $tabIndex"}, +gbX(){return"\u0d32\u0d48\u0d38\u0d7b\u0d38\u0d41\u0d15\u0d7e \u0d15\u0d3e\u0d23\u0d41\u0d15"}} +A.ayw.prototype={ +gbF(){return"$applicationName-\u043d \u0442\u0443\u0445\u0430\u0439"}, +gcp(){return"\u0421\u044d\u0440\u044d\u043c\u0436\u043b\u04af\u04af\u043b\u044d\u0433"}, +gcq(){return"\u0411\u0443\u0446\u0430\u0445"}, +gbV(){return"\u0414\u043e\u043e\u0434 \u0445\u04af\u0441\u043d\u044d\u0433\u0442"}, +gbB(){return"\u041a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044c \u043b\u0443\u0443 \u0441\u044d\u043b\u0433\u044d\u0445"}, +gcb(){return"\u0426\u0443\u0446\u043b\u0430\u0445"}, +gcj(){return"\u0425\u0430\u0430\u0445"}, +gcr(){return"\u0425\u0430\u0430\u0445"}, +gaK(){return"\u0425\u0443\u0443\u043b\u0430\u0445"}, +gcw(){return"\u04e8\u043d\u04e9\u04e9\u0434\u04e9\u0440"}, +gaN(){return"\u0422\u0430\u0441\u043b\u0430\u0445"}, +gbW(){return"\u0436\u0436\u0436\u0436.\u0441\u0441.\u04e9\u04e9"}, +gbp(){return"\u041e\u0433\u043d\u043e\u043e \u043e\u0440\u0443\u0443\u043b\u0430\u0445"}, +gbC(){return"\u0418\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430\u0430\u0441 \u0433\u0430\u0434\u0443\u0443\u0440 \u0431\u0430\u0439\u043d\u0430."}, +gbv(){return"\u041e\u0433\u043d\u043e\u043e \u0441\u043e\u043d\u0433\u043e\u0445"}, +gbD(){return"\u0423\u0441\u0442\u0433\u0430\u0445"}, +gbs(){return"\u0425\u0430\u0440\u0438\u043b\u0446\u0430\u0445 \u0446\u043e\u043d\u0445"}, +gbw(){return"\u041e\u0440\u043e\u043b\u0442 \u0440\u0443\u0443 \u0441\u044d\u043b\u0433\u044d\u0445"}, +gbH(){return"\u0411\u0443\u0440\u0443\u0443 \u0444\u043e\u0440\u043c\u0430\u0442 \u0431\u0430\u0439\u043d\u0430."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u043b\u0438\u0446\u0435\u043d\u0437"}, +gbt(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0437"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0438\u0446\u0435\u043d\u0437"}, +gaa(){return"\u0414\u044d\u044d\u0448\u044d\u044d \u0445\u0430\u0440\u0430\u0445"}, +gbx(){return"\u0426\u044d\u0441\u0438\u0439\u0433 \u0445\u0430\u0430\u0445"}, +gal(){return"\u04ae\u043b \u0445\u044d\u0440\u044d\u0433\u0441\u044d\u0445"}, +gcF(){return"\u0411\u0443\u0441\u0430\u0434"}, +gbI(){return"\u0414\u0430\u0440\u0430\u0430\u0445 \u0441\u0430\u0440"}, +gcc(){return"OK"}, +gby(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u044b\u043d \u0446\u044d\u0441\u0438\u0439\u0433 \u043d\u044d\u044d\u0445"}, +gaM(){return"\u0411\u0443\u0443\u043b\u0433\u0430\u0445"}, +gc4(){return"\u041f\u043e\u043f\u0430\u043f \u0446\u044d\u0441"}, +gcz(){return"\u04e8\u043c\u043d\u04e9\u0445 \u0441\u0430\u0440"}, +gcA(){return"\u0421\u044d\u0440\u0433\u044d\u044d\u0445"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0442\u044d\u043c\u0434\u044d\u0433\u0442 \u04af\u043b\u0434\u0441\u044d\u043d"}, +gct(){return"$remainingCount \u0442\u044d\u043c\u0434\u044d\u0433\u0442 \u04af\u043b\u0434\u0441\u044d\u043d"}, +gcR(){return null}, +gcS(){return"No characters remaining"}, +gcB(){return"\u0414\u043e\u043e\u0448 \u0437\u04e9\u04e9\u0445"}, +gcd(){return"\u0422\u04e9\u0433\u0441\u0433\u04e9\u043b \u0440\u04af\u04af \u0437\u04e9\u04e9\u0445"}, +gbE(){return"\u042d\u0445\u043b\u044d\u043b \u0440\u04af\u04af \u0437\u04e9\u04e9\u0445"}, +gcC(){return"\u0414\u044d\u044d\u0448 \u0437\u04e9\u04e9\u0445"}, +gbz(){return"\u0422\u0435\u043a\u0441\u0442\u0438\u0439\u0433 \u0441\u043a\u0430\u043d \u0445\u0438\u0439\u0445"}, +gbA(){return"\u0421\u043a\u0440\u0438\u043c"}, +gcu(){return"$modalRouteContentName-\u0433 \u0445\u0430\u0430\u0445"}, +gcJ(){return B.a3}, +gco(){return"\u0425\u0430\u0439\u0445"}, +gaL(){return"\u0412\u0435\u0431\u044d\u044d\u0441 \u0445\u0430\u0439\u0445"}, +gaH(){return"\u0411\u04af\u0433\u0434\u0438\u0439\u0433 \u0441\u043e\u043d\u0433\u043e\u0445"}, +gcg(){return"\u0416\u0438\u043b \u0441\u043e\u043d\u0433\u043e\u0445"}, +gak(){return"\u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0430\u0445..."}, +gcn(){return"$tabCount-\u043d $tabIndex-\u0440 \u0442\u0430\u0431"}, +gbX(){return"\u041b\u0438\u0446\u0435\u043d\u0437 \u0445\u0430\u0440\u0430\u0445"}} +A.ayx.prototype={ +gbF(){return"$applicationName \u092c\u0926\u094d\u0926\u0932"}, +gcp(){return"\u0938\u0942\u091a\u0928\u093e"}, +gcq(){return"\u092e\u093e\u0917\u0947"}, +gbV(){return"\u0924\u0933\u093e\u0936\u0940 \u0905\u0938\u0932\u0947\u0932\u0940 \u0936\u0940\u091f"}, +gbB(){return"\u0915\u0945\u0932\u0947\u0902\u0921\u0930\u0935\u0930 \u0938\u094d\u0935\u093f\u091a \u0915\u0930\u093e"}, +gcb(){return"\u0930\u0926\u094d\u0926 \u0915\u0930\u093e"}, +gcj(){return"\u092c\u0902\u0926 \u0915\u0930\u093e"}, +gcr(){return"\u092c\u0902\u0926 \u0915\u0930\u093e"}, +gaK(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u093e"}, +gcw(){return"\u0906\u091c"}, +gaN(){return"\u0915\u091f \u0915\u0930\u093e"}, +gbW(){return"dd/mm/yyyy"}, +gbp(){return"\u0924\u093e\u0930\u0940\u0916 \u090f\u0902\u091f\u0930 \u0915\u0930\u093e"}, +gbC(){return"\u0936\u094d\u0930\u0947\u0923\u0940\u091a\u094d\u092f\u093e \u092c\u093e\u0939\u0947\u0930 \u0906\u0939\u0947."}, +gbv(){return"\u0924\u093e\u0930\u0940\u0916 \u0928\u093f\u0935\u0921\u093e"}, +gbD(){return"\u0939\u091f\u0935\u093e"}, +gbs(){return"\u0921\u093e\u092f\u0932\u0949\u0917"}, +gbw(){return"\u0907\u0928\u092a\u0941\u091f\u0935\u0930 \u0938\u094d\u0935\u093f\u091a \u0915\u0930\u093e"}, +gbH(){return"\u092b\u0949\u0930\u092e\u0945\u091f \u091a\u0941\u0915\u0940\u091a\u093e \u0906\u0939\u0947."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u090f\u0915 \u092a\u0930\u0935\u093e\u0928\u093e"}, +gbt(){return"$licenseCount \u092a\u0930\u0935\u093e\u0928\u0947"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u092a\u0930\u0935\u093e\u0928\u0947"}, +gaa(){return"\u0936\u094b\u0927 \u0918\u094d\u092f\u093e"}, +gbx(){return"\u092e\u0947\u0928\u0942 \u0921\u093f\u0938\u092e\u093f\u0938 \u0915\u0930\u093e"}, +gal(){return"\u0921\u093f\u0938\u092e\u093f\u0938 \u0915\u0930\u093e"}, +gcF(){return"\u0906\u0923\u0916\u0940"}, +gbI(){return"\u092a\u0941\u0922\u0940\u0932 \u092e\u0939\u093f\u0928\u093e"}, +gcc(){return"\u0913\u0915\u0947"}, +gby(){return"\u0928\u0947\u0935\u094d\u0939\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u0942 \u0909\u0918\u0921\u093e"}, +gaM(){return"\u092a\u0947\u0938\u094d\u091f \u0915\u0930\u093e"}, +gc4(){return"\u092a\u0949\u092a\u0905\u092a \u092e\u0947\u0928\u0942"}, +gcz(){return"\u092e\u093e\u0917\u0940\u0932 \u092e\u0939\u093f\u0928\u093e"}, +gcA(){return"\u0930\u093f\u092b\u094d\u0930\u0947\u0936 \u0915\u0930\u093e"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u090f\u0915 \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915"}, +gct(){return"$remainingCount \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915"}, +gcR(){return null}, +gcS(){return"\u0915\u094b\u0923\u0924\u0947\u0939\u0940 \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915 \u0928\u093e\u0939\u0940\u0924"}, +gcB(){return"\u0916\u093e\u0932\u0940 \u0939\u0932\u0935\u093e"}, +gcd(){return"\u0936\u0947\u0935\u091f\u093e\u0915\u0921\u0947 \u0939\u0932\u0935\u093e"}, +gbE(){return"\u0938\u0941\u0930\u0941\u0935\u093e\u0924\u0940\u0932\u093e \u0939\u0932\u0935\u093e"}, +gcC(){return"\u0935\u0930 \u0939\u0932\u0935\u093e"}, +gbz(){return"\u092e\u091c\u0915\u0942\u0930 \u0938\u094d\u0915\u0945\u0928 \u0915\u0930\u093e"}, +gbA(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gcu(){return"$modalRouteContentName \u092c\u0902\u0926 \u0915\u0930\u093e"}, +gcJ(){return B.i9}, +gco(){return"\u0936\u094b\u0927"}, +gaL(){return"\u0935\u0947\u092c\u0935\u0930 \u0936\u094b\u0927\u093e"}, +gaH(){return"\u0938\u0930\u094d\u0935 \u0928\u093f\u0935\u0921\u093e"}, +gcg(){return"\u0935\u0930\u094d\u0937 \u0928\u093f\u0935\u0921\u093e"}, +gak(){return"\u0936\u0947\u0905\u0930 \u0915\u0930\u093e..."}, +gcn(){return"$tabCount \u092a\u0948\u0915\u0940 $tabIndex \u091f\u0945\u092c"}, +gbX(){return"\u092a\u0930\u0935\u093e\u0928\u0947 \u092a\u0939\u093e"}} +A.ayy.prototype={ +gbF(){return"Perihal $applicationName"}, +gcp(){return"Makluman"}, +gcq(){return"Kembali"}, +gbV(){return"Helaian Bawah"}, +gbB(){return"Tukar kepada kalendar"}, +gcb(){return"Batal"}, +gcj(){return"Tutup"}, +gcr(){return"Tutup"}, +gaK(){return"Salin"}, +gcw(){return"Hari ini"}, +gaN(){return"Potong"}, +gbW(){return"bb/hh/tttt"}, +gbp(){return"Masukkan Tarikh"}, +gbC(){return"Di luar julat."}, +gbv(){return"Pilih tarikh"}, +gbD(){return"Padam"}, +gbs(){return"Dialog"}, +gbw(){return"Tukar kepada input"}, +gbH(){return"Format tidak sah."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lesen"}, +gbt(){return"$licenseCount lesen"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lesen"}, +gaa(){return"Lihat ke Atas"}, +gbx(){return"Ketepikan menu"}, +gal(){return"Tolak"}, +gcF(){return"Lagi"}, +gbI(){return"Bulan depan"}, +gcc(){return"OK"}, +gby(){return"Buka menu navigasi"}, +gaM(){return"Tampal"}, +gc4(){return"Menu pop timbul"}, +gcz(){return"Bulan sebelumnya"}, +gcA(){return"Muat semula"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 aksara lagi"}, +gct(){return"$remainingCount aksara lagi"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Alih ke bawah"}, +gcd(){return"Alih ke penghujung"}, +gbE(){return"Alih ke permulaan"}, +gcC(){return"Alih ke atas"}, +gbz(){return"Imbas teks"}, +gbA(){return"Scrim"}, +gcu(){return"Tutup $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Cari"}, +gaL(){return"Buat carian pada Web"}, +gaH(){return"Pilih semua"}, +gcg(){return"Pilih tahun"}, +gak(){return"Kongsi..."}, +gcn(){return"Tab $tabIndex dari $tabCount"}, +gbX(){return"Lihat lesen"}} +A.ayz.prototype={ +gbF(){return"$applicationName \u1021\u1000\u103c\u1031\u102c\u1004\u103a\u1038"}, +gcp(){return"\u101e\u1010\u102d\u1015\u1031\u1038\u1001\u103b\u1000\u103a"}, +gcq(){return"\u1014\u1031\u102c\u1000\u103a\u101e\u102d\u102f\u1037"}, +gbV(){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\u103c\u1000\u1039\u1001\u1012\u102d\u1014\u103a\u101e\u102d\u102f\u1037 \u1015\u103c\u1031\u102c\u1004\u103a\u1038\u101b\u1014\u103a"}, +gcb(){return"\u1019\u101c\u102f\u1015\u103a\u1010\u1031\u102c\u1037"}, +gcj(){return"\u1015\u102d\u1010\u103a\u101b\u1014\u103a"}, +gcr(){return"\u1015\u102d\u1010\u103a\u101b\u1014\u103a"}, +gaK(){return"\u1019\u102d\u1010\u1039\u1010\u1030\u1000\u1030\u1038\u101b\u1014\u103a"}, +gcw(){return"\u101a\u1014\u1031\u1037"}, +gaN(){return"\u1016\u103c\u1010\u103a\u101a\u1030\u101b\u1014\u103a"}, +gbW(){return"dd-mm-yyyy"}, +gbp(){return"\u101b\u1000\u103a\u1005\u103d\u1032 \u1011\u100a\u1037\u103a\u101b\u1014\u103a"}, +gbC(){return"\u1021\u1015\u102d\u102f\u1004\u103a\u1038\u1021\u1001\u103c\u102c\u1038 \u1015\u103c\u1004\u103a\u1015\u1010\u103d\u1004\u103a\u1016\u103c\u1005\u103a\u1014\u1031\u101e\u100a\u103a\u104b"}, +gbv(){return"\u101b\u1000\u103a\u1005\u103d\u1032\u101b\u103d\u1031\u1038\u101b\u1014\u103a"}, +gbD(){return"\u1016\u103b\u1000\u103a\u101b\u1014\u103a"}, +gbs(){return"\u1012\u102d\u102f\u1004\u103a\u101a\u102c\u101c\u1031\u102c\u1037"}, +gbw(){return"\u1011\u100a\u103a\u1037\u101e\u103d\u1004\u103a\u1038\u1019\u103e\u102f\u101e\u102d\u102f\u1037 \u1015\u103c\u1031\u102c\u1004\u103a\u1038\u101b\u1014\u103a"}, +gbH(){return"\u1016\u1031\u102c\u103a\u1019\u1000\u103a \u1019\u1019\u103e\u1014\u103a\u1000\u1014\u103a\u1015\u102b\u104b"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u101c\u102d\u102f\u1004\u103a\u1005\u1004\u103a 1 \u1001\u102f"}, +gbt(){return"\u101c\u102d\u102f\u1004\u103a\u1005\u1004\u103a $licenseCount \u1001\u102f"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u101c\u102d\u102f\u1004\u103a\u1005\u1004\u103a\u1019\u103b\u102c\u1038"}, +gaa(){return"\u1021\u1015\u1031\u102b\u103a\u1000\u103c\u100a\u103a\u1037\u101b\u1014\u103a"}, +gbx(){return"\u1019\u102e\u1014\u1030\u1038\u1000\u102d\u102f\u1015\u101a\u103a\u1015\u102b"}, +gal(){return"\u1015\u101a\u103a\u101b\u1014\u103a"}, +gcF(){return"\u1014\u1031\u102c\u1000\u103a\u1011\u1015\u103a"}, +gbI(){return"\u1014\u1031\u102c\u1000\u103a\u101c"}, +gcc(){return"OK"}, +gby(){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"}, +gaM(){return"\u1000\u1030\u1038\u1011\u100a\u1037\u103a\u101b\u1014\u103a"}, +gc4(){return"\u1015\u1031\u102b\u1037\u1015\u103a\u1021\u1015\u103a\u1019\u102e\u1014\u1030\u1038"}, +gcz(){return"\u101a\u1001\u1004\u103a\u101c"}, +gcA(){return"\u1015\u103c\u1014\u103a\u101c\u100a\u103a\u1005\u1010\u1004\u103a\u101b\u1014\u103a"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u1021\u1000\u1039\u1001\u101b\u102c \u1041 \u101c\u102f\u1036\u1038\u1000\u103b\u1014\u103a\u101e\u100a\u103a"}, +gct(){return"\u1021\u1000\u1039\u1001\u101b\u102c $remainingCount \u101c\u102f\u1036\u1038\u1000\u103b\u1014\u103a\u101e\u100a\u103a"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u1021\u1031\u102c\u1000\u103a\u101e\u102d\u102f\u1037\u101b\u103d\u103e\u1031\u1037\u101b\u1014\u103a"}, +gcd(){return"\u1021\u1006\u102f\u1036\u1038\u101e\u102d\u102f\u1037 \u200c\u101b\u103d\u103e\u1031\u1037\u101b\u1014\u103a"}, +gbE(){return"\u1021\u1005\u101e\u102d\u102f\u1037 \u101b\u103d\u103e\u1031\u1037\u101b\u1014\u103a"}, +gcC(){return"\u1021\u1015\u1031\u102b\u103a\u101e\u102d\u102f\u1037 \u101b\u103d\u103e\u1031\u1037\u101b\u1014\u103a"}, +gbz(){return"\u1005\u102c\u101e\u102c\u1038 \u1005\u1000\u1004\u103a\u1016\u1010\u103a\u101b\u1014\u103a"}, +gbA(){return"Scrim"}, +gcu(){return"$modalRouteContentName \u1015\u102d\u1010\u103a\u101b\u1014\u103a"}, +gcJ(){return B.cR}, +gco(){return"\u101b\u103e\u102c\u1016\u103d\u1031\u101b\u1014\u103a"}, +gaL(){return"\u101d\u1018\u103a\u1010\u103d\u1004\u103a\u101b\u103e\u102c\u101b\u1014\u103a"}, +gaH(){return"\u1021\u102c\u1038\u101c\u102f\u1036\u1038 \u101b\u103d\u1031\u1038\u101b\u1014\u103a"}, +gcg(){return"\u1001\u102f\u1014\u103e\u1005\u103a \u101b\u103d\u1031\u1038\u101b\u1014\u103a"}, +gak(){return"\u1019\u103b\u103e\u101d\u1031\u101b\u1014\u103a..."}, +gcn(){return"\u1010\u1018\u103a $tabCount \u1021\u1014\u1000\u103a $tabIndex \u1001\u102f"}, +gbX(){return"\u101c\u102d\u102f\u1004\u103a\u1005\u1004\u103a\u1019\u103b\u102c\u1038\u1000\u103c\u100a\u103a\u1037\u101b\u1014\u103a"}} +A.ayA.prototype={ +gbF(){return"Om $applicationName"}, +gcp(){return"Varsel"}, +gcq(){return"Tilbake"}, +gbV(){return"Felt nederst"}, +gbB(){return"Bytt til kalender"}, +gcb(){return"Avbryt"}, +gcj(){return"Lukk"}, +gcr(){return"Lukk"}, +gaK(){return"Kopi\xe9r"}, +gcw(){return"I dag"}, +gaN(){return"Klipp ut"}, +gbW(){return"dd.mm.\xe5\xe5\xe5\xe5"}, +gbp(){return"Skriv inn datoen"}, +gbC(){return"Utenfor perioden."}, +gbv(){return"Velg dato"}, +gbD(){return"Slett"}, +gbs(){return"Dialogboks"}, +gbw(){return"Bytt til innskriving"}, +gbH(){return"Ugyldig format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisens"}, +gbt(){return"$licenseCount lisenser"}, +gcO(){return null}, +gc7(){return null}, +gc3(){return"Lisenser"}, +gaa(){return"Sl\xe5 opp"}, +gbx(){return"Lukk menyen"}, +gal(){return"Avvis"}, +gcF(){return"Mer"}, +gbI(){return"Neste m\xe5ned"}, +gcc(){return"OK"}, +gby(){return"\xc5pne navigasjonsmenyen"}, +gaM(){return"Lim inn"}, +gc4(){return"Forgrunnsmeny"}, +gcz(){return"Forrige m\xe5ned"}, +gcA(){return"Laster inn p\xe5 nytt"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 tegn gjenst\xe5r"}, +gct(){return"$remainingCount tegn gjenst\xe5r"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Flytt ned"}, +gcd(){return"Flytt til slutten"}, +gbE(){return"Flytt til starten"}, +gcC(){return"Flytt opp"}, +gbz(){return"Skann tekst"}, +gbA(){return"Vev"}, +gcu(){return"Lukk $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"S\xf8k"}, +gaL(){return"S\xf8k p\xe5 nettet"}, +gaH(){return"Velg alle"}, +gcg(){return"Velg \xe5ret"}, +gak(){return"Del\u2026"}, +gcn(){return"Fane $tabIndex av $tabCount"}, +gbX(){return"Se lisenser"}} +A.ayB.prototype={ +gbF(){return"$applicationName \u092c\u093e\u0930\u0947"}, +gcp(){return"\u0905\u0932\u0930\u094d\u091f"}, +gcq(){return"\u092a\u091b\u093e\u0921\u093f \u091c\u093e\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbV(){return"\u092a\u0941\u091b\u093e\u0930\u0915\u094b \u092a\u093e\u0928\u093e"}, +gbB(){return"\u092a\u093e\u0924\u094d\u0930\u094b \u092e\u094b\u0921 \u092a\u094d\u0930\u092f\u094b\u0917 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcb(){return"\u0930\u0926\u094d\u0926 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcj(){return"\u092c\u0928\u094d\u0926 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcr(){return"\u092c\u0928\u094d\u0926 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaK(){return"\u092a\u094d\u0930\u0924\u093f\u0932\u093f\u092a\u093f \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcw(){return"\u0906\u091c"}, +gaN(){return"\u0915\u093e\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbW(){return"yyyy/mm/dd"}, +gbp(){return"\u092e\u093f\u0924\u093f \u092a\u094d\u0930\u0935\u093f\u0937\u094d\u091f\u093f \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbC(){return"\u0926\u093e\u092f\u0930\u093e\u092d\u0928\u094d\u0926\u093e \u092c\u093e\u0939\u093f\u0930"}, +gbv(){return"\u092e\u093f\u0924\u093f \u091a\u092f\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbD(){return"\u092e\u0947\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbs(){return"\u0938\u0902\u0935\u093e\u0926"}, +gbw(){return"\u0907\u0928\u092a\u0941\u091f \u092e\u094b\u0921 \u092a\u094d\u0930\u092f\u094b\u0917 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbH(){return"\u0905\u0935\u0948\u0927 \u0922\u093e\u0901\u091a\u093e\u0964"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u090f\u0909\u091f\u093e \u0907\u091c\u093e\u091c\u0924\u092a\u0924\u094d\u0930"}, +gbt(){return"$licenseCount \u0935\u091f\u093e \u0907\u091c\u093e\u091c\u0924\u092a\u0924\u094d\u0930"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0907\u091c\u093e\u091c\u0924\u092a\u0924\u094d\u0930\u0939\u0930\u0942"}, +gaa(){return"\u092e\u093e\u0925\u093f\u0924\u093f\u0930 \u0939\u0947\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbx(){return"\u092e\u0947\u0928\u0941 \u0916\u093e\u0930\u0947\u091c \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gal(){return"\u0916\u093e\u0930\u0947\u091c \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcF(){return"\u0925\u092a"}, +gbI(){return"\u0905\u0930\u094d\u0915\u094b \u092e\u0939\u093f\u0928\u093e"}, +gcc(){return"\u0920\u093f\u0915 \u091b"}, +gby(){return"\u0928\u0947\u092d\u093f\u0917\u0947\u0938\u0928 \u092e\u0947\u0928\u0941 \u0916\u094b\u0932\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaM(){return"\u091f\u093e\u0901\u0938\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gc4(){return"\u092a\u092a\u0905\u092a \u092e\u0947\u0928\u0941"}, +gcz(){return"\u0905\u0918\u093f\u0932\u094d\u0932\u094b \u092e\u0939\u093f\u0928\u093e"}, +gcA(){return"\u092a\u0941\u0928\u0903 \u0924\u093e\u091c\u093e \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u0967 \u0935\u0930\u094d\u0923 \u092c\u093e\u0901\u0915\u0940"}, +gct(){return"$remainingCount \u0935\u0930\u094d\u0923\u0939\u0930\u0942 \u092c\u093e\u0901\u0915\u0940"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0924\u0932 \u0938\u093e\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcd(){return"\u0905\u0928\u094d\u0924\u094d\u092f\u092e\u093e \u091c\u093e\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbE(){return"\u0938\u0941\u0930\u0941\u092e\u093e \u0938\u093e\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcC(){return"\u092e\u093e\u0925\u093f \u0938\u093e\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbz(){return"\u091f\u0947\u0915\u094d\u0938\u094d\u091f \u0938\u094d\u0915\u094d\u092f\u093e\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbA(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gcu(){return"$modalRouteContentName \u092c\u0928\u094d\u0926 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcJ(){return B.cR}, +gco(){return"\u0916\u094b\u091c\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaL(){return"\u0935\u0947\u092c\u092e\u093e \u0916\u094b\u091c\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaH(){return"\u0938\u092c\u0948 \u092c\u091f\u0928\u0939\u0930\u0942 \u091a\u092f\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gcg(){return"\u0935\u0930\u094d\u0937 \u091b\u093e\u0928\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gak(){return"\u0938\u0947\u092f\u0930 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d..."}, +gcn(){return"$tabCount \u092e\u0927\u094d\u092f\u0947 $tabIndex \u091f\u094d\u092f\u093e\u092c"}, +gbX(){return"\u0932\u093e\u0907\u0938\u0947\u0928\u094d\u0938\u0939\u0930\u0942 \u0939\u0947\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}} +A.ayC.prototype={ +gbF(){return"Over $applicationName"}, +gcp(){return"Melding"}, +gcq(){return"Terug"}, +gbV(){return"Blad onderaan"}, +gbB(){return"Overschakelen naar kalender"}, +gcb(){return"Annuleren"}, +gcj(){return"Sluiten"}, +gcr(){return"Sluiten"}, +gaK(){return"Kopi\xebren"}, +gcw(){return"Vandaag"}, +gaN(){return"Knippen"}, +gbW(){return"dd-mm-jjjj"}, +gbp(){return"Datum opgeven"}, +gbC(){return"Buiten bereik."}, +gbv(){return"Datum selecteren"}, +gbD(){return"Verwijderen"}, +gbs(){return"Dialoogvenster"}, +gbw(){return"Overschakelen naar invoer"}, +gbH(){return"Ongeldige indeling."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licentie"}, +gbt(){return"$licenseCount licenties"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licenties"}, +gaa(){return"Opzoeken"}, +gbx(){return"Menu sluiten"}, +gal(){return"Sluiten"}, +gcF(){return"Meer"}, +gbI(){return"Volgende maand"}, +gcc(){return"OK"}, +gby(){return"Navigatiemenu openen"}, +gaM(){return"Plakken"}, +gc4(){return"Pop-upmenu"}, +gcz(){return"Vorige maand"}, +gcA(){return"Vernieuwen"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 teken resterend"}, +gct(){return"$remainingCount tekens resterend"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Omlaag verplaatsen"}, +gcd(){return"Naar het einde verplaatsen"}, +gbE(){return"Naar het begin verplaatsen"}, +gcC(){return"Omhoog verplaatsen"}, +gbz(){return"Tekst scannen"}, +gbA(){return"Scrim"}, +gcu(){return"$modalRouteContentName sluiten"}, +gcJ(){return B.a3}, +gco(){return"Zoeken"}, +gaL(){return"Op internet zoeken"}, +gaH(){return"Alles selecteren"}, +gcg(){return"Jaar selecteren"}, +gak(){return"Delen..."}, +gcn(){return"Tabblad $tabIndex van $tabCount"}, +gbX(){return"Licenties bekijken"}} +A.ayD.prototype={ +gbF(){return"Om $applicationName"}, +gcp(){return"Varsel"}, +gcq(){return"Tilbake"}, +gbV(){return"Felt nederst"}, +gbB(){return"Bytt til kalender"}, +gcb(){return"Avbryt"}, +gcj(){return"Lukk"}, +gcr(){return"Lukk"}, +gaK(){return"Kopi\xe9r"}, +gcw(){return"I dag"}, +gaN(){return"Klipp ut"}, +gbW(){return"dd.mm.\xe5\xe5\xe5\xe5"}, +gbp(){return"Skriv inn datoen"}, +gbC(){return"Utenfor perioden."}, +gbv(){return"Velg dato"}, +gbD(){return"Slett"}, +gbs(){return"Dialogboks"}, +gbw(){return"Bytt til innskriving"}, +gbH(){return"Ugyldig format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisens"}, +gbt(){return"$licenseCount lisenser"}, +gcO(){return null}, +gc7(){return null}, +gc3(){return"Lisenser"}, +gaa(){return"Sl\xe5 opp"}, +gbx(){return"Lukk menyen"}, +gal(){return"Avvis"}, +gcF(){return"Mer"}, +gbI(){return"Neste m\xe5ned"}, +gcc(){return"OK"}, +gby(){return"\xc5pne navigasjonsmenyen"}, +gaM(){return"Lim inn"}, +gc4(){return"Forgrunnsmeny"}, +gcz(){return"Forrige m\xe5ned"}, +gcA(){return"Laster inn p\xe5 nytt"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 tegn gjenst\xe5r"}, +gct(){return"$remainingCount tegn gjenst\xe5r"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Flytt ned"}, +gcd(){return"Flytt til slutten"}, +gbE(){return"Flytt til starten"}, +gcC(){return"Flytt opp"}, +gbz(){return"Skann tekst"}, +gbA(){return"Vev"}, +gcu(){return"Lukk $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"S\xf8k"}, +gaL(){return"S\xf8k p\xe5 nettet"}, +gaH(){return"Velg alle"}, +gcg(){return"Velg \xe5ret"}, +gak(){return"Del\u2026"}, +gcn(){return"Fane $tabIndex av $tabCount"}, +gbX(){return"Se lisenser"}} +A.ayE.prototype={ +gbF(){return"$applicationName \u0b2c\u0b3f\u0b37\u0b5f\u0b30\u0b47"}, +gcp(){return"\u0b06\u0b32\u0b30\u0b4d\u0b1f"}, +gcq(){return"\u0b2a\u0b1b\u0b15\u0b41 \u0b2b\u0b47\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbV(){return"\u0b2c\u0b1f\u0b2e \u0b38\u0b3f\u0b1f"}, +gbB(){return"\u0b15\u0b4d\u0b5f\u0b3e\u0b32\u0b47\u0b23\u0b4d\u0b21\u0b30\u0b15\u0b41 \u0b38\u0b4d\u0b71\u0b3f\u0b1a\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcb(){return"\u0b2c\u0b3e\u0b24\u0b3f\u0b32 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcj(){return"\u0b2c\u0b28\u0b4d\u0b26 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcr(){return"\u0b2c\u0b28\u0b4d\u0b26 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaK(){return"\u0b15\u0b2a\u0b3f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcw(){return"\u0b06\u0b1c\u0b3f"}, +gaN(){return"\u0b15\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"\u0b24\u0b3e\u0b30\u0b3f\u0b16 \u0b32\u0b47\u0b16\u0b28\u0b4d\u0b24\u0b41"}, +gbC(){return"\u0b38\u0b40\u0b2e\u0b3e \u0b2c\u0b3e\u0b39\u0b3e\u0b30\u0b47\u0964"}, +gbv(){return"\u0b24\u0b3e\u0b30\u0b3f\u0b16 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbD(){return"\u0b21\u0b3f\u0b32\u0b3f\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbs(){return"\u0b21\u0b3e\u0b5f\u0b32\u0b17\u0b4d"}, +gbw(){return"\u0b07\u0b28\u0b2a\u0b41\u0b1f\u0b15\u0b41 \u0b38\u0b4d\u0b71\u0b3f\u0b1a\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbH(){return"\u0b05\u0b2c\u0b48\u0b27 \u0b2b\u0b30\u0b4d\u0b2e\u0b3e\u0b1f\u0b4d\u0964"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1\u0b1f\u0b3f \u0b32\u0b3e\u0b07\u0b38\u0b47\u0b28\u0b4d\u0b38"}, +gbt(){return"$licenseCount\u0b1f\u0b3f \u0b32\u0b3e\u0b07\u0b38\u0b47\u0b28\u0b4d\u0b38"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0b32\u0b3e\u0b07\u0b38\u0b47\u0b28\u0b4d\u0b38\u0b17\u0b41\u0b21\u0b3c\u0b15"}, +gaa(){return"\u0b09\u0b2a\u0b30\u0b15\u0b41 \u0b26\u0b47\u0b16\u0b28\u0b4d\u0b24\u0b41"}, +gbx(){return"\u0b2e\u0b47\u0b28\u0b41 \u0b16\u0b3e\u0b30\u0b1c \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gal(){return"\u0b16\u0b3e\u0b30\u0b1c \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcF(){return"\u0b05\u0b27\u0b3f\u0b15"}, +gbI(){return"\u0b2a\u0b30\u0b2c\u0b30\u0b4d\u0b24\u0b4d\u0b24\u0b40 \u0b2e\u0b3e\u0b38"}, +gcc(){return"\u0b20\u0b3f\u0b15\u0b4d \u0b05\u0b1b\u0b3f"}, +gby(){return"\u0b28\u0b3e\u0b2d\u0b3f\u0b17\u0b47\u0b38\u0b28\u0b4d \u0b2e\u0b47\u0b28\u0b41 \u0b16\u0b4b\u0b32\u0b28\u0b4d\u0b24\u0b41"}, +gaM(){return"\u0b2a\u0b47\u0b37\u0b4d\u0b1f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gc4(){return"\u0b2a\u0b2a\u0b4d-\u0b05\u0b2a\u0b4d \u0b2e\u0b47\u0b28\u0b41"}, +gcz(){return"\u0b2a\u0b42\u0b30\u0b4d\u0b2c \u0b2e\u0b3e\u0b38"}, +gcA(){return"\u0b30\u0b3f\u0b2b\u0b4d\u0b30\u0b47\u0b38\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1\u0b1f\u0b3f \u0b05\u0b15\u0b4d\u0b37\u0b30 \u0b2c\u0b3e\u0b15\u0b3f \u0b05\u0b1b\u0b3f"}, +gct(){return"$remainingCount\u0b1f\u0b3f \u0b05\u0b15\u0b4d\u0b37\u0b30 \u0b2c\u0b3e\u0b15\u0b3f \u0b05\u0b1b\u0b3f"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0b24\u0b33\u0b15\u0b41 \u0b2f\u0b3e\u0b06\u0b28\u0b4d\u0b24\u0b41"}, +gcd(){return"\u0b36\u0b47\u0b37\u0b15\u0b41 \u0b2f\u0b3e\u0b06\u0b28\u0b4d\u0b24\u0b41"}, +gbE(){return"\u0b06\u0b30\u0b2e\u0b4d\u0b2d\u0b15\u0b41 \u0b2f\u0b3e\u0b06\u0b28\u0b4d\u0b24\u0b41"}, +gcC(){return"\u0b09\u0b2a\u0b30\u0b15\u0b41 \u0b28\u0b3f\u0b05\u0b28\u0b4d\u0b24\u0b41"}, +gbz(){return"\u0b1f\u0b47\u0b15\u0b4d\u0b38\u0b1f\u0b4d \u0b38\u0b4d\u0b15\u0b3e\u0b28\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbA(){return"\u0b38\u0b4d\u0b15\u0b4d\u0b30\u0b3f\u0b2e"}, +gcu(){return"$modalRouteContentName\u0b15\u0b41 \u0b2c\u0b28\u0b4d\u0b26 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcJ(){return B.cR}, +gco(){return"\u0b38\u0b28\u0b4d\u0b27\u0b3e\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaL(){return"\u0b71\u0b47\u0b2c \u0b38\u0b30\u0b4d\u0b1a\u0b4d\u0b1a \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaH(){return"\u0b38\u0b2c\u0b41 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gcg(){return"\u0b2c\u0b30\u0b4d\u0b37 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gak(){return"\u0b38\u0b47\u0b5f\u0b3e\u0b30\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41..."}, +gcn(){return"$tabCount\u0b30 $tabIndex \u0b1f\u0b3e\u0b2c\u0b4d"}, +gbX(){return"\u0b32\u0b3e\u0b07\u0b38\u0b47\u0b28\u0b4d\u0b38 \u0b26\u0b47\u0b16\u0b28\u0b4d\u0b24\u0b41"}} +A.ayF.prototype={ +gbF(){return"$applicationName \u0a2c\u0a3e\u0a30\u0a47"}, +gcp(){return"\u0a38\u0a41\u0a1a\u0a47\u0a24\u0a28\u0a3e"}, +gcq(){return"\u0a2a\u0a3f\u0a71\u0a1b\u0a47"}, +gbV(){return"\u0a39\u0a47\u0a20\u0a32\u0a40 \u0a36\u0a40\u0a1f"}, +gbB(){return"\u0a15\u0a48\u0a32\u0a70\u0a21\u0a30 '\u0a24\u0a47 \u0a1c\u0a3e\u0a13"}, +gcb(){return"\u0a30\u0a71\u0a26 \u0a15\u0a30\u0a4b"}, +gcj(){return"\u0a2c\u0a70\u0a26 \u0a15\u0a30\u0a4b"}, +gcr(){return"\u0a2c\u0a70\u0a26 \u0a15\u0a30\u0a4b"}, +gaK(){return"\u0a15\u0a3e\u0a2a\u0a40 \u0a15\u0a30\u0a4b"}, +gcw(){return"\u0a05\u0a71\u0a1c"}, +gaN(){return"\u0a15\u0a71\u0a1f \u0a15\u0a30\u0a4b"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"\u0a24\u0a3e\u0a30\u0a40\u0a16 \u0a26\u0a3e\u0a16\u0a32 \u0a15\u0a30\u0a4b"}, +gbC(){return"\u0a30\u0a47\u0a02\u0a1c-\u0a24\u0a4b\u0a02-\u0a2c\u0a3e\u0a39\u0a30\u0964"}, +gbv(){return"\u0a24\u0a3e\u0a30\u0a40\u0a16 \u0a1a\u0a41\u0a23\u0a4b"}, +gbD(){return"\u0a2e\u0a3f\u0a1f\u0a3e\u0a13"}, +gbs(){return"\u0a35\u0a3f\u0a70\u0a21\u0a4b"}, +gbw(){return"\u0a07\u0a28\u0a2a\u0a41\u0a71\u0a1f '\u0a24\u0a47 \u0a1c\u0a3e\u0a13"}, +gbH(){return"\u0a05\u0a35\u0a48\u0a27 \u0a2b\u0a3e\u0a30\u0a2e\u0a48\u0a1f\u0964"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0a32\u0a3e\u0a07\u0a38\u0a70\u0a38"}, +gbt(){return"$licenseCount \u0a32\u0a3e\u0a07\u0a38\u0a70\u0a38"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0a32\u0a3e\u0a07\u0a38\u0a70\u0a38"}, +gaa(){return"\u0a16\u0a4b\u0a1c\u0a4b"}, +gbx(){return"\u0a2e\u0a40\u0a28\u0a42 \u0a16\u0a3e\u0a30\u0a1c \u0a15\u0a30\u0a4b"}, +gal(){return"\u0a16\u0a3e\u0a30\u0a1c \u0a15\u0a30\u0a4b"}, +gcF(){return"\u0a39\u0a4b\u0a30"}, +gbI(){return"\u0a05\u0a17\u0a32\u0a3e \u0a2e\u0a39\u0a40\u0a28\u0a3e"}, +gcc(){return"\u0a20\u0a40\u0a15 \u0a39\u0a48"}, +gby(){return"\u0a28\u0a48\u0a35\u0a40\u0a17\u0a47\u0a36\u0a28 \u0a2e\u0a40\u0a28\u0a42 \u0a16\u0a4b\u0a32\u0a4d\u0a39\u0a4b"}, +gaM(){return"\u0a2a\u0a47\u0a38\u0a1f \u0a15\u0a30\u0a4b"}, +gc4(){return"\u0a2a\u0a4c\u0a2a\u0a05\u0a71\u0a2a \u0a2e\u0a40\u0a28\u0a42"}, +gcz(){return"\u0a2a\u0a3f\u0a1b\u0a32\u0a3e \u0a2e\u0a39\u0a40\u0a28\u0a3e"}, +gcA(){return"\u0a30\u0a3f\u0a2b\u0a4d\u0a30\u0a48\u0a36 \u0a15\u0a30\u0a4b"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0a05\u0a71\u0a16\u0a30-\u0a1a\u0a3f\u0a70\u0a28\u0a4d\u0a39 \u0a2c\u0a3e\u0a15\u0a40"}, +gct(){return"$remainingCount \u0a05\u0a71\u0a16\u0a30-\u0a1a\u0a3f\u0a70\u0a28\u0a4d\u0a39 \u0a2c\u0a3e\u0a15\u0a40"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0a39\u0a47\u0a20\u0a3e\u0a02 \u0a32\u0a3f\u0a1c\u0a3e\u0a13"}, +gcd(){return"\u0a05\u0a70\u0a24 \u0a35\u0a3f\u0a71\u0a1a \u0a32\u0a3f\u0a1c\u0a3e\u0a13"}, +gbE(){return"\u0a36\u0a41\u0a30\u0a42 \u0a35\u0a3f\u0a71\u0a1a \u0a32\u0a3f\u0a1c\u0a3e\u0a13"}, +gcC(){return"\u0a09\u0a71\u0a2a\u0a30 \u0a32\u0a3f\u0a1c\u0a3e\u0a13"}, +gbz(){return"\u0a32\u0a3f\u0a16\u0a24 \u0a28\u0a42\u0a70 \u0a38\u0a15\u0a48\u0a28 \u0a15\u0a30\u0a4b"}, +gbA(){return"\u0a38\u0a15\u0a4d\u0a30\u0a3f\u0a2e"}, +gcu(){return"$modalRouteContentName \u0a28\u0a42\u0a70 \u0a2c\u0a70\u0a26 \u0a15\u0a30\u0a4b"}, +gcJ(){return B.cR}, +gco(){return"\u0a16\u0a4b\u0a1c\u0a4b"}, +gaL(){return"\u0a35\u0a48\u0a71\u0a2c '\u0a24\u0a47 \u0a16\u0a4b\u0a1c\u0a4b"}, +gaH(){return"\u0a38\u0a2d \u0a1a\u0a41\u0a23\u0a4b"}, +gcg(){return"\u0a38\u0a3e\u0a32 \u0a1a\u0a41\u0a23\u0a4b"}, +gak(){return"\u0a38\u0a3e\u0a02\u0a1d\u0a3e \u0a15\u0a30\u0a4b..."}, +gcn(){return"$tabCount \u0a35\u0a3f\u0a71\u0a1a\u0a4b\u0a02 $tabIndex \u0a1f\u0a48\u0a2c"}, +gbX(){return"\u0a32\u0a3e\u0a07\u0a38\u0a70\u0a38 \u0a26\u0a47\u0a16\u0a4b"}} +A.ayG.prototype={ +gbF(){return"$applicationName \u2013 informacje"}, +gcp(){return"Alert"}, +gcq(){return"Wstecz"}, +gbV(){return"Plansza dolna"}, +gbB(){return"Prze\u0142\u0105cz na kalendarz"}, +gcb(){return"Anuluj"}, +gcj(){return"Zamknij"}, +gcr(){return"Zamknij"}, +gaK(){return"Kopiuj"}, +gcw(){return"Dzi\u015b"}, +gaN(){return"Wytnij"}, +gbW(){return"dd.mm.rrrr"}, +gbp(){return"Wpisz dat\u0119"}, +gbC(){return"Poza zakresem."}, +gbv(){return"Wybierz dat\u0119"}, +gbD(){return"Usu\u0144"}, +gbs(){return"Okno dialogowe"}, +gbw(){return"Prze\u0142\u0105cz na wpisywanie"}, +gbH(){return"Nieprawid\u0142owy format."}, +gcE(){return"$licenseCount\xa0licencje"}, +gcN(){return"$licenseCount\xa0licencji"}, +gbr(){return"1\xa0licencja"}, +gbt(){return"$licenseCount\xa0licencji"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licencje"}, +gaa(){return"Sprawd\u017a"}, +gbx(){return"Zamknij menu"}, +gal(){return"Zamknij"}, +gcF(){return"Wi\u0119cej"}, +gbI(){return"Nast\u0119pny miesi\u0105c"}, +gcc(){return"OK"}, +gby(){return"Otw\xf3rz menu nawigacyjne"}, +gaM(){return"Wklej"}, +gc4(){return"Menu kontekstowe"}, +gcz(){return"Poprzedni miesi\u0105c"}, +gcA(){return"Od\u015bwie\u017c"}, +gcH(){return"Pozosta\u0142y $remainingCount znaki"}, +gcQ(){return"Pozosta\u0142o $remainingCount znak\xf3w"}, +gcm(){return"Jeszcze 1 znak"}, +gct(){return"Pozosta\u0142o $remainingCount znak\xf3w"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Przenie\u015b w d\xf3\u0142"}, +gcd(){return"Przenie\u015b na koniec"}, +gbE(){return"Przenie\u015b na pocz\u0105tek"}, +gcC(){return"Przenie\u015b w g\xf3r\u0119"}, +gbz(){return"Skanuj tekst"}, +gbA(){return"Siatka"}, +gcu(){return"Zamknij: $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Szukaj"}, +gaL(){return"Szukaj w\xa0internecie"}, +gaH(){return"Zaznacz wszystko"}, +gcg(){return"Wybierz rok"}, +gak(){return"Udost\u0119pnij\u2026"}, +gcn(){return"Karta $tabIndex z\xa0$tabCount"}, +gbX(){return"Wy\u015bwietl licencje"}} +A.ayH.prototype={ +gbF(){return"\u062f $applicationName \u067e\u0647 \u0627\u0693\u0647"}, +gcp(){return"\u062e\u0628\u0631\u062a\u06cc\u0627"}, +gcq(){return"\u0634\u0627\u062a\u0647"}, +gbV(){return"Bottom Sheet"}, +gbB(){return"Switch to calendar"}, +gcb(){return"\u0644\u063a\u0648\u0647 \u06a9\u0648\u0644"}, +gcj(){return"\u062a\u0693\u0644"}, +gcr(){return"\u0628\u0646\u062f\u0647"}, +gaK(){return"\u06a9\u0627\u067e\u06cc"}, +gcw(){return"Date of today"}, +gaN(){return"\u06a9\u0645 \u06a9\u0693\u0626"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"Enter Date"}, +gbC(){return"Out of range."}, +gbv(){return"SELECT DATE"}, +gbD(){return""}, +gbs(){return"\u062e\u0628\u0631\u06d0 \u0627\u062a\u0631\u06d0"}, +gbw(){return"Switch to input"}, +gbH(){return"Invalid format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 license"}, +gbt(){return"$licenseCount licenses"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u062c\u0648\u0627\u0632\u0648\u0646\u0647"}, +gaa(){return"Look Up"}, +gbx(){return"Dismiss menu"}, +gal(){return"\u0631\u062f \u06a9\u0693\u0647"}, +gcF(){return"More"}, +gbI(){return"\u0628\u0644\u0647 \u0645\u06cc\u0627\u0634\u062a"}, +gcc(){return"\u0633\u0645\u0647 \u062f\u0647"}, +gby(){return"\u062f \u067e\u0631\u0627\u0646\u06cc\u0633\u062a\u06cc \u0646\u06cc\u06cc\u0646\u06ab \u0645\u06cc\u0646\u0648"}, +gaM(){return"\u067e\u06cc\u067c \u06a9\u0693\u0626"}, +gc4(){return"\u062f \u067e\u0627\u067e \u0627\u067e \u0645\u06cc\u0646\u0648"}, +gcz(){return"\u062a\u06cc\u0631\u0647 \u0645\u06cc\u0627\u0634\u062a"}, +gcA(){return"Refresh"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 character remaining"}, +gct(){return"$remainingCount characters remaining"}, +gcR(){return null}, +gcS(){return"No characters remaining"}, +gcB(){return"Move down"}, +gcd(){return"Move to the end"}, +gbE(){return"Move to the start"}, +gcC(){return"Move up"}, +gbz(){return"\u0645\u062a\u0646 \u0633\u06a9\u06cc\u0646 \u06a9\u0693\u0626"}, +gbA(){return"Scrim"}, +gcu(){return"Close $modalRouteName"}, +gcJ(){return B.cR}, +gco(){return"\u0644\u067c\u0648\u0646"}, +gaL(){return"Search Web"}, +gaH(){return"\u063a\u0648\u0631\u0647 \u06a9\u0693\u0626"}, +gcg(){return"Select year"}, +gak(){return"Share..."}, +gcn(){return"$tabIndex \u062f $tabCount"}, +gbX(){return"\u0644\u06cc\u062f\u0644\u0633 \u0648\u06ab\u0648\u0631\u0626"}} +A.a5v.prototype={ +gbF(){return"Sobre o app $applicationName"}, +gcp(){return"Alerta"}, +gcq(){return"Voltar"}, +gbV(){return"P\xe1gina inferior"}, +gbB(){return"Mudar para agenda"}, +gcb(){return"Cancelar"}, +gcj(){return"Fechar"}, +gcr(){return"Fechar"}, +gaK(){return"Copiar"}, +gcw(){return"Hoje"}, +gaN(){return"Cortar"}, +gbW(){return"dd/mm/aaaa"}, +gbp(){return"Inserir data"}, +gbC(){return"Fora de alcance."}, +gbv(){return"Selecione a data"}, +gbD(){return"Excluir"}, +gbs(){return"Caixa de di\xe1logo"}, +gbw(){return"Mudar para modo de entrada"}, +gbH(){return"Formato inv\xe1lido."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licen\xe7a"}, +gbt(){return"$licenseCount licen\xe7as"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licen\xe7as"}, +gaa(){return"Pesquisar"}, +gbx(){return"Dispensar menu"}, +gal(){return"Dispensar"}, +gcF(){return"Mais"}, +gbI(){return"Pr\xf3ximo m\xeas"}, +gcc(){return"OK"}, +gby(){return"Abrir menu de navega\xe7\xe3o"}, +gaM(){return"Colar"}, +gc4(){return"Menu pop-up"}, +gcz(){return"M\xeas anterior"}, +gcA(){return"Atualizar"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 caractere restante"}, +gct(){return"$remainingCount caracteres restantes"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Mover para baixo"}, +gcd(){return"Mover para o final"}, +gbE(){return"Mover para o in\xedcio"}, +gcC(){return"Mover para cima"}, +gbz(){return"Digitalizar texto"}, +gbA(){return"Scrim"}, +gcu(){return"Fechar $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Pesquisa"}, +gaL(){return"Pesquisar na Web"}, +gaH(){return"Selecionar tudo"}, +gcg(){return"Selecione o ano"}, +gak(){return"Compartilhar\u2026"}, +gcn(){return"Guia $tabIndex de $tabCount"}, +gbX(){return"Acessar licen\xe7as"}} +A.ayI.prototype={ +gak(){return"Partilhar\u2026"}, +gaa(){return"Procurar"}, +gbx(){return"Ignorar menu"}, +gbV(){return"Sec\xe7\xe3o inferior"}, +gbp(){return"Introduzir data"}, +gbB(){return"Mude para o calend\xe1rio"}, +gbv(){return"Selecionar data"}, +gbC(){return"Fora do intervalo."}, +gbw(){return"Mude para a introdu\xe7\xe3o"}, +gcg(){return"Selecionar ano"}, +gcn(){return"Separador $tabIndex de $tabCount"}, +gbD(){return"Eliminar"}, +gbI(){return"M\xeas seguinte"}, +gbF(){return"Acerca de $applicationName"}, +gbX(){return"Ver licen\xe7as"}, +gal(){return"Ignorar"}, +gco(){return"Pesquisar"}, +gcd(){return"Mover para o fim"}, +gcm(){return"Resta 1 car\xe1ter"}, +gct(){return"Restam $remainingCount carateres"}} +A.ayJ.prototype={ +gbF(){return"Despre $applicationName"}, +gcp(){return"Alert\u0103"}, +gcq(){return"\xcenapoi"}, +gbV(){return"Foaie din partea de jos"}, +gbB(){return"Comuta\u021bi la calendar"}, +gcb(){return"Anula\u021bi"}, +gcj(){return"\xcenchide\u021bi"}, +gcr(){return"\xcenchide\u021bi"}, +gaK(){return"Copia\u021bi"}, +gcw(){return"Azi"}, +gaN(){return"Decupa\u021bi"}, +gbW(){return"zz.ll.aaaa"}, +gbp(){return"Introduce\u021bi data"}, +gbC(){return"F\u0103r\u0103 acoperire."}, +gbv(){return"Selecta\u021bi data"}, +gbD(){return"\u0218terge\u021bi"}, +gbs(){return"Caset\u0103 de dialog"}, +gbw(){return"Comuta\u021bi la introducerea textului"}, +gbH(){return"Format nevalid."}, +gcE(){return"$licenseCount licen\u021be"}, +gcN(){return null}, +gbr(){return"O licen\u021b\u0103"}, +gbt(){return"$licenseCount de licen\u021be"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licen\u021be"}, +gaa(){return"Privire \xeen sus"}, +gbx(){return"Respinge\u021bi meniul"}, +gal(){return"\xcenchide\u021bi"}, +gcF(){return"Mai multe"}, +gbI(){return"Luna viitoare"}, +gcc(){return"OK"}, +gby(){return"Deschide\u021bi meniul de navigare"}, +gaM(){return"Insera\u021bi"}, +gc4(){return"Meniu pop-up"}, +gcz(){return"Luna trecut\u0103"}, +gcA(){return"Actualiza\u021bi"}, +gcH(){return"$remainingCount caractere r\u0103mase"}, +gcQ(){return null}, +gcm(){return"un caracter r\u0103mas"}, +gct(){return"$remainingCount de caractere r\u0103mase"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Muta\u021bi \xeen jos"}, +gcd(){return"Muta\u021bi la sf\xe2r\u0219it"}, +gbE(){return"Muta\u021bi la \xeenceput"}, +gcC(){return"Muta\u021bi \xeen sus"}, +gbz(){return"Scana\u021bi textul"}, +gbA(){return"Material"}, +gcu(){return"\xcenchide\u021bi $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"C\u0103uta\u021bi"}, +gaL(){return"C\u0103uta\u021bi pe web"}, +gaH(){return"Selecta\u021bi tot"}, +gcg(){return"Selecta\u021bi anul"}, +gak(){return"Trimite\u021bi\u2026"}, +gcn(){return"Fila $tabIndex din $tabCount"}, +gbX(){return"Vede\u021bi licen\u021bele"}} +A.ayK.prototype={ +gbF(){return"$applicationName: \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f"}, +gcp(){return"\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435"}, +gcq(){return"\u041d\u0430\u0437\u0430\u0434"}, +gbV(){return"\u041d\u0438\u0436\u043d\u0438\u0439 \u044d\u043a\u0440\u0430\u043d"}, +gbB(){return"\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044c"}, +gcb(){return"\u041e\u0442\u043c\u0435\u043d\u0430"}, +gcj(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}, +gcr(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}, +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c"}, +gcw(){return"\u0421\u0435\u0433\u043e\u0434\u043d\u044f"}, +gaN(){return"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c"}, +gbW(){return"\u0434\u0434.\u043c\u043c.\u0433\u0433\u0433\u0433"}, +gbp(){return"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0434\u0430\u0442\u0443"}, +gbC(){return"\u0414\u0430\u0442\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u043d\u0435 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430."}, +gbv(){return"\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0430\u0442\u0443"}, +gbD(){return"\u0423\u0434\u0430\u043b\u0438\u0442\u044c"}, +gbs(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}, +gbw(){return"\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u0440\u0443\u0447\u043d\u043e\u0439 \u0432\u0432\u043e\u0434"}, +gbH(){return"\u041d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u0434\u0430\u0442\u044b."}, +gcE(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438"}, +gcN(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0439"}, +gbr(){return"1 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f"}, +gbt(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0438\u0446\u0435\u043d\u0437\u0438\u0438"}, +gaa(){return"\u041d\u0430\u0439\u0442\u0438"}, +gbx(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e"}, +gal(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}, +gcF(){return"\u0415\u0449\u0451"}, +gbI(){return"\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043c\u0435\u0441\u044f\u0446"}, +gcc(){return"\u041e\u041a"}, +gby(){return"\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438"}, +gaM(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c"}, +gc4(){return"\u0412\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0435\u0435 \u043c\u0435\u043d\u044e"}, +gcz(){return"\u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u043c\u0435\u0441\u044f\u0446"}, +gcA(){return"\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435"}, +gcH(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u0430"}, +gcQ(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432"}, +gcm(){return"\u041e\u0441\u0442\u0430\u043b\u0441\u044f 1\xa0\u0441\u0438\u043c\u0432\u043e\u043b"}, +gct(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u0430"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u0437"}, +gcd(){return"\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0432 \u043a\u043e\u043d\u0435\u0446"}, +gbE(){return"\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0432 \u043d\u0430\u0447\u0430\u043b\u043e"}, +gcC(){return"\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0432\u0432\u0435\u0440\u0445"}, +gbz(){return"\u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442"}, +gbA(){return"\u041c\u0430\u0441\u043a\u0430"}, +gcu(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u041f\u043e\u0438\u0441\u043a"}, +gaL(){return"\u0418\u0441\u043a\u0430\u0442\u044c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435"}, +gaH(){return"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435"}, +gcg(){return"\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0433\u043e\u0434"}, +gak(){return"\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f"}, +gcn(){return"\u0412\u043a\u043b\u0430\u0434\u043a\u0430\xa0$tabIndex \u0438\u0437\xa0$tabCount"}, +gbX(){return"\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0438"}} +A.ayL.prototype={ +gbF(){return"$applicationName \u0d9c\u0dd0\u0db1"}, +gcp(){return"\u0d87\u0d9f\u0dc0\u0dd3\u0db8"}, +gcq(){return"\u0d86\u0db4\u0dc3\u0dd4"}, +gbV(){return"\u0db4\u0dc4\u0dc5\u0db8 \u0db4\u0dad\u0dca\u200d\u0dbb\u0dba"}, +gbB(){return"\u0daf\u0dd2\u0db1 \u0daf\u0dbb\u0dca\u0dc1\u0db1\u0dba \u0dc0\u0dd9\u0dad \u0db8\u0dcf\u0dbb\u0dd4 \u0dc0\u0db1\u0dca\u0db1"}, +gcb(){return"\u0d85\u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gcj(){return"\u0dc0\u0dc3\u0db1\u0dca\u0db1"}, +gcr(){return"\u0dc0\u0dc3\u0db1\u0dca\u0db1"}, +gaK(){return"\u0db4\u0dd2\u0da7\u0db4\u0dad\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gcw(){return"\u0d85\u0daf"}, +gaN(){return"\u0d9a\u0db4\u0db1\u0dca\u0db1"}, +gbW(){return"mm.dd.yyyy"}, +gbp(){return"\u0daf\u0dd2\u0db1\u0dba \u0d87\u0dad\u0dd4\u0dc5\u0dd4 \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gbC(){return"\u0db4\u0dbb\u0dcf\u0dc3\u0dba\u0dd9\u0db1\u0dca \u0db4\u0dd2\u0da7\u0dad."}, +gbv(){return"\u0daf\u0dd2\u0db1\u0dba \u0dad\u0ddd\u0dbb\u0db1\u0dca\u0db1"}, +gbD(){return"\u0db8\u0d9a\u0db1\u0dca\u0db1"}, +gbs(){return"\u0dc3\u0d82\u0dc0\u0dcf\u0daf\u0dba"}, +gbw(){return"\u0d86\u0daf\u0dcf\u0db1\u0dba \u0dc0\u0dd9\u0dad \u0db8\u0dcf\u0dbb\u0dd4 \u0dc0\u0db1\u0dca\u0db1"}, +gbH(){return"\u0d85\u0dc0\u0dbd\u0d82\u0d9c\u0dd4 \u0d86\u0d9a\u0dd8\u0dad\u0dd2\u0dba\u0d9a\u0dd2."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u0db6\u0dbd\u0db4\u0dad\u0dca\u200d\u0dbb 1"}, +gbt(){return"\u0db6\u0dbd\u0db4\u0dad\u0dca\u200d\u0dbb $licenseCount"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0db6\u0dbd\u0db4\u0dad\u0dca\u200d\u0dbb"}, +gaa(){return"\u0d8b\u0da9 \u0db6\u0dbd\u0db1\u0dca\u0db1"}, +gbx(){return"\u0db8\u0dd9\u0db1\u0dd4\u0dc0 \u0d85\u0dc3\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gal(){return"\u0d89\u0dc0\u0dad \u0dbd\u0db1\u0dca\u0db1"}, +gcF(){return"\u0dad\u0dc0"}, +gbI(){return"\u0d8a\u0dc5\u0d9f \u0db8\u0dcf\u0dc3\u0dba"}, +gcc(){return"\u0dc4\u0dbb\u0dd2"}, +gby(){return"\u0dc3\u0d82\u0da0\u0dcf\u0dbd\u0db1 \u0db8\u0dd9\u0db1\u0dd4\u0dc0 \u0dc0\u0dd2\u0dc0\u0dd8\u0dad \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gaM(){return"\u0d85\u0dbd\u0dc0\u0db1\u0dca\u0db1"}, +gc4(){return"\u0d8b\u0dad\u0dca\u0db4\u0dad\u0db1 \u0db8\u0dd9\u0db1\u0dd4\u0dc0"}, +gcz(){return"\u0db4\u0dd9\u0dbb \u0db8\u0dcf\u0dc3\u0dba"}, +gcA(){return"\u0db1\u0dd0\u0dc0\u0dd4\u0db8\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u0d85\u0db1\u0dd4\u0dbd\u0d9a\u0dd4\u0dab\u0dd4 1\u0d9a\u0dca \u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0dba"}, +gct(){return"\u0d85\u0db1\u0dd4\u0dbd\u0d9a\u0dd4\u0dab\u0dd4 $remainingCount\u0d9a\u0dca \u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0dba"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0db4\u0dc4\u0dc5\u0da7 \u0d9c\u0dd9\u0db1 \u0dba\u0db1\u0dca\u0db1"}, +gcd(){return"\u0d85\u0dc0\u0dc3\u0dcf\u0db1\u0dba\u0da7 \u0dba\u0db1\u0dca\u0db1"}, +gbE(){return"\u0d86\u0dbb\u0db8\u0dca\u0db7\u0dba \u0dc0\u0dd9\u0dad \u0dba\u0db1\u0dca\u0db1"}, +gcC(){return"\u0d89\u0dc4\u0dc5\u0da7 \u0d9c\u0dd9\u0db1 \u0dba\u0db1\u0dca\u0db1"}, +gbz(){return"\u0db4\u0dd9\u0dc5 \u0dc3\u0dca\u0d9a\u0dd1\u0db1\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gbA(){return"\u0dc3\u0dca\u0d9a\u0dca\u200d\u0dbb\u0dd2\u0db8\u0dca"}, +gcu(){return"$modalRouteContentName \u0dc0\u0dc3\u0db1\u0dca\u0db1"}, +gcJ(){return B.a3}, +gco(){return"\u0dc3\u0dd9\u0dc0\u0dd3\u0db8"}, +gaL(){return"\u0dc0\u0dd9\u0db6\u0dba \u0dc3\u0ddc\u0dba\u0db1\u0dca\u0db1"}, +gaH(){return"\u0dc3\u0dd2\u0dba\u0dbd\u0dca\u0dbd \u0dad\u0ddd\u0dbb\u0db1\u0dca\u0db1"}, +gcg(){return"\u0dc0\u0dbb\u0dca\u0dc2\u0dba \u0dad\u0ddc\u0dca\u0dbb\u0db1\u0dca\u0db1"}, +gak(){return"\u0db6\u0dd9\u0daf\u0dcf \u0d9c\u0db1\u0dca\u0db1..."}, +gcn(){return"\u0da7\u0dd0\u0db6 $tabIndex\u0d9a\u0dd2\u0db1\u0dca $tabCount"}, +gbX(){return"\u0db6\u0dbd\u0db4\u0dad\u0dca\u200d\u0dbb \u0db6\u0dbd\u0db1\u0dca\u0db1"}} +A.ayM.prototype={ +gbF(){return"$applicationName \u2013 inform\xe1cie"}, +gcp(){return"Upozornenie"}, +gcq(){return"Sp\xe4\u0165"}, +gbV(){return"Doln\xfd h\xe1rok"}, +gbB(){return"Prepn\xfa\u0165 na kalend\xe1r"}, +gcb(){return"Zru\u0161i\u0165"}, +gcj(){return"Zavrie\u0165"}, +gcr(){return"Zavrie\u0165"}, +gaK(){return"Kop\xedrova\u0165"}, +gcw(){return"Dnes"}, +gaN(){return"Vystrihn\xfa\u0165"}, +gbW(){return"mm.dd.yyyy"}, +gbp(){return"Zadajte d\xe1tum"}, +gbC(){return"Mimo rozsahu."}, +gbv(){return"Vybra\u0165 d\xe1tum"}, +gbD(){return"Odstr\xe1ni\u0165"}, +gbs(){return"Dial\xf3gov\xe9 okno"}, +gbw(){return"Prepn\xfa\u0165 na zad\xe1vanie"}, +gbH(){return"Neplatn\xfd form\xe1t."}, +gcE(){return"$licenseCount\xa0licencie"}, +gcN(){return"$licenseCount licenses"}, +gbr(){return"1\xa0licencia"}, +gbt(){return"$licenseCount\xa0licenci\xed"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licencie"}, +gaa(){return"Poh\u013ead nahor"}, +gbx(){return"Zavrie\u0165 ponuku"}, +gal(){return"Odmietnu\u0165"}, +gcF(){return"Viac"}, +gbI(){return"Bud\xfaci mesiac"}, +gcc(){return"OK"}, +gby(){return"Otvori\u0165 naviga\u010dn\xfa ponuku"}, +gaM(){return"Prilepi\u0165"}, +gc4(){return"Kontextov\xe1 ponuka"}, +gcz(){return"Predo\u0161l\xfd mesiac"}, +gcA(){return"Obnovi\u0165"}, +gcH(){return"Zost\xe1vaj\xfa $remainingCount\xa0znaky"}, +gcQ(){return"$remainingCount characters remaining"}, +gcm(){return"Zost\xe1va 1\xa0znak"}, +gct(){return"Zost\xe1va $remainingCount\xa0znakov"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Presun\xfa\u0165 nadol"}, +gcd(){return"Presun\xfa\u0165 na koniec"}, +gbE(){return"Presun\xfa\u0165 na za\u010diatok"}, +gcC(){return"Presun\xfa\u0165 nahor"}, +gbz(){return"Naskenova\u0165 text"}, +gbA(){return"Scrim"}, +gcu(){return"Zavrie\u0165 $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"H\u013eada\u0165"}, +gaL(){return"H\u013eada\u0165 na webe"}, +gaH(){return"Vybra\u0165 v\u0161etko"}, +gcg(){return"Vyberte rok"}, +gak(){return"Zdie\u013ea\u0165\u2026"}, +gcn(){return"Karta $tabIndex z\xa0$tabCount"}, +gbX(){return"Zobrazi\u0165 licencie"}} +A.ayN.prototype={ +gbF(){return"O aplikaciji $applicationName"}, +gcp(){return"Opozorilo"}, +gcq(){return"Nazaj"}, +gbV(){return"Razdelek na dnu zaslona"}, +gbB(){return"Preklop na koledar"}, +gcb(){return"Prekli\u010di"}, +gcj(){return"Zapri"}, +gcr(){return"Zapiranje"}, +gaK(){return"Kopiraj"}, +gcw(){return"Danes"}, +gaN(){return"Izre\u017ei"}, +gbW(){return"dd. mm. llll"}, +gbp(){return"Vnesite datum"}, +gbC(){return"Zunaj dovoljenega obdobja"}, +gbv(){return"Izberite datum"}, +gbD(){return"Brisanje"}, +gbs(){return"Pogovorno okno"}, +gbw(){return"Preklop na vnos"}, +gbH(){return"Neveljavna oblika"}, +gcE(){return"$licenseCount licence"}, +gcN(){return null}, +gbr(){return"1 licenca"}, +gbt(){return"$licenseCount licenc"}, +gcO(){return"$licenseCount licenci"}, +gc7(){return"No licenses"}, +gc3(){return"Licence"}, +gaa(){return"Pogled gor"}, +gbx(){return"Opusti meni"}, +gal(){return"Opusti"}, +gcF(){return"Ve\u010d"}, +gbI(){return"Naslednji mesec"}, +gcc(){return"V REDU"}, +gby(){return"Odpiranje menija za krmarjenje"}, +gaM(){return"Prilepi"}, +gc4(){return"Pojavni meni"}, +gcz(){return"Prej\u0161nji mesec"}, +gcA(){return"Osve\u017ei"}, +gcH(){return"\u0160e $remainingCount znaki"}, +gcQ(){return null}, +gcm(){return"\u0160e 1 znak"}, +gct(){return"\u0160e $remainingCount znakov"}, +gcR(){return"\u0160e $remainingCount znaka"}, +gcS(){return null}, +gcB(){return"Premakni navzdol"}, +gcd(){return"Premakni na konec"}, +gbE(){return"Premakni na za\u010detek"}, +gcC(){return"Premakni navzgor"}, +gbz(){return"Opti\u010dno preberite besedilo"}, +gbA(){return"Scrim"}, +gcu(){return"Zapiranje \xbb$modalRouteContentName\xab"}, +gcJ(){return B.a3}, +gco(){return"Iskanje"}, +gaL(){return"Iskanje v spletu"}, +gaH(){return"Izberi vse"}, +gcg(){return"Izberite leto"}, +gak(){return"Deli \u2026"}, +gcn(){return"Zavihek $tabIndex od $tabCount"}, +gbX(){return"Prika\u017ei licence"}} +A.ayO.prototype={ +gbF(){return"Rreth $applicationName"}, +gcp(){return"Sinjalizim"}, +gcq(){return"Prapa"}, +gbV(){return"Fleta e poshtme"}, +gbB(){return"Kalo te kalendari"}, +gcb(){return"Anulo"}, +gcj(){return"Mbyll"}, +gcr(){return"Mbyll"}, +gaK(){return"Kopjo"}, +gcw(){return"Sot"}, +gaN(){return"Prit"}, +gbW(){return"dd.mm.yyyy"}, +gbp(){return"Vendos dat\xebn"}, +gbC(){return"Jasht\xeb rrezes."}, +gbv(){return"Zgjidh dat\xebn"}, +gbD(){return"Fshi"}, +gbs(){return"Dialogu"}, +gbw(){return"Kalo te hyrja"}, +gbH(){return"Format i pavlefsh\xebm."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licenc\xeb"}, +gbt(){return"$licenseCount licenca"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licencat"}, +gaa(){return"K\xebrko"}, +gbx(){return"Hiqe menyn\xeb"}, +gal(){return"Hiq"}, +gcF(){return"M\xeb shum\xeb"}, +gbI(){return"Muaji i ardhsh\xebm"}, +gcc(){return"N\xeb rregull"}, +gby(){return"Hap menyn\xeb e navigimit"}, +gaM(){return"Ngjit"}, +gc4(){return"Menyja k\xebrcyese"}, +gcz(){return"Muaji i m\xebparsh\xebm"}, +gcA(){return"Rifresko"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 karakter i mbetur"}, +gct(){return"$remainingCount karaktere t\xeb mbetura"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"L\xebvize posht\xeb"}, +gcd(){return"L\xebvize n\xeb fund"}, +gbE(){return"L\xebvize n\xeb fillim"}, +gcC(){return"L\xebvize lart"}, +gbz(){return"Skano tekstin"}, +gbA(){return"Kanavac\xeb"}, +gcu(){return"Mbyll $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"K\xebrko"}, +gaL(){return"K\xebrko n\xeb ueb"}, +gaH(){return"Zgjidh t\xeb gjitha"}, +gcg(){return"Zgjidh vitin"}, +gak(){return"Ndaj..."}, +gcn(){return"Skeda $tabIndex nga $tabCount"}, +gbX(){return"Shiko licencat"}} +A.a5w.prototype={ +gbF(){return"\u041e \u0430\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0458\u0438 $applicationName"}, +gcp(){return"\u041e\u0431\u0430\u0432\u0435\u0448\u0442\u0435\u045a\u0435"}, +gcq(){return"\u041d\u0430\u0437\u0430\u0434"}, +gbV(){return"\u0414\u043e\u045a\u0430 \u0442\u0430\u0431\u0435\u043b\u0430"}, +gbB(){return"\u041f\u0440\u0435\u0452\u0438\u0442\u0435 \u043d\u0430 \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440"}, +gcb(){return"\u041e\u0442\u043a\u0430\u0436\u0438"}, +gcj(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438"}, +gcr(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438\u0442\u0435"}, +gaK(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gcw(){return"\u0414\u0430\u043d\u0430\u0441"}, +gaN(){return"\u0418\u0441\u0435\u0446\u0438"}, +gbW(){return"\u0434\u0434.\u043c\u043c.\u0433\u0433\u0433\u0433."}, +gbp(){return"\u0423\u043d\u0435\u0441\u0438\u0442\u0435 \u0434\u0430\u0442\u0443\u043c"}, +gbC(){return"\u0418\u0437\u0432\u0430\u043d \u043f\u0435\u0440\u0438\u043e\u0434\u0430."}, +gbv(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0430\u0442\u0443\u043c"}, +gbD(){return"\u0418\u0437\u0431\u0440\u0438\u0448\u0438\u0442\u0435"}, +gbs(){return"\u0414\u0438\u0458\u0430\u043b\u043e\u0433"}, +gbw(){return"\u041f\u0440\u0435\u0452\u0438\u0442\u0435 \u043d\u0430 \u0443\u043d\u043e\u0441"}, +gbH(){return"\u0424\u043e\u0440\u043c\u0430\u0442 \u0458\u0435 \u043d\u0435\u0432\u0430\u0436\u0435\u045b\u0438."}, +gcE(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0446\u0435"}, +gcN(){return null}, +gbr(){return"1 \u043b\u0438\u0446\u0435\u043d\u0446\u0430"}, +gbt(){return"$licenseCount \u043b\u0438\u0446\u0435\u043d\u0446\u0438"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0438\u0446\u0435\u043d\u0446\u0435"}, +gaa(){return"\u041f\u043e\u0433\u043b\u0435\u0434 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gbx(){return"\u041e\u0434\u0431\u0430\u0446\u0438\u0442\u0435 \u043c\u0435\u043d\u0438"}, +gal(){return"\u041e\u0434\u0431\u0430\u0446\u0438"}, +gcF(){return"\u0408\u043e\u0448"}, +gbI(){return"\u0421\u043b\u0435\u0434\u0435\u045b\u0438 \u043c\u0435\u0441\u0435\u0446"}, +gcc(){return"\u041f\u043e\u0442\u0432\u0440\u0434\u0438"}, +gby(){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"}, +gaM(){return"\u041d\u0430\u043b\u0435\u043f\u0438"}, +gc4(){return"\u0418\u0441\u043a\u0430\u0447\u0443\u045b\u0438 \u043c\u0435\u043d\u0438"}, +gcz(){return"\u041f\u0440\u0435\u0442\u0445\u043e\u0434\u043d\u0438 \u043c\u0435\u0441\u0435\u0446"}, +gcA(){return"\u041e\u0441\u0432\u0435\u0436\u0438"}, +gcH(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043b\u0430 \u0441\u0443 $remainingCount \u0437\u043d\u0430\u043a\u0430"}, +gcQ(){return null}, +gcm(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043e \u0458\u0435 1 \u0437\u043d\u0430\u043a"}, +gct(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043b\u043e \u0458\u0435 $remainingCount \u0437\u043d\u0430\u043a\u043e\u0432\u0430"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u041f\u043e\u043c\u0435\u0440\u0438\u0442\u0435 \u043d\u0430\u0434\u043e\u043b\u0435"}, +gcd(){return"\u041f\u043e\u043c\u0435\u0440\u0438\u0442\u0435 \u043d\u0430 \u043a\u0440\u0430\u0458"}, +gbE(){return"\u041f\u043e\u043c\u0435\u0440\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0435\u0442\u0430\u043a"}, +gcC(){return"\u041f\u043e\u043c\u0435\u0440\u0438\u0442\u0435 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gbz(){return"\u0421\u043a\u0435\u043d\u0438\u0440\u0430\u0458 \u0442\u0435\u043a\u0441\u0442"}, +gbA(){return"\u0421\u043a\u0440\u0438\u043c"}, +gcu(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438: $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u041f\u0440\u0435\u0442\u0440\u0430\u0436\u0438\u0442\u0435"}, +gaL(){return"\u041f\u0440\u0435\u0442\u0440\u0430\u0436\u0438 \u0432\u0435\u0431"}, +gaH(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438 \u0441\u0432\u0435"}, +gcg(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438\u0442\u0435 \u0433\u043e\u0434\u0438\u043d\u0443"}, +gak(){return"\u0414\u0435\u043b\u0438\u2026"}, +gcn(){return"$tabIndex. \u043a\u0430\u0440\u0442\u0438\u0446\u0430 \u043e\u0434 $tabCount"}, +gbX(){return"\u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u043b\u0438\u0446\u0435\u043d\u0446\u0435"}} +A.ayP.prototype={} +A.ayQ.prototype={ +gbF(){return"O aplikaciji $applicationName"}, +gcp(){return"Obave\u0161tenje"}, +gcq(){return"Nazad"}, +gbV(){return"Donja tabela"}, +gbB(){return"Pre\u0111ite na kalendar"}, +gcb(){return"Otka\u017ei"}, +gcj(){return"Zatvori"}, +gcr(){return"Zatvorite"}, +gaK(){return"Kopiraj"}, +gcw(){return"Danas"}, +gaN(){return"Iseci"}, +gbW(){return"dd.mm.gggg."}, +gbp(){return"Unesite datum"}, +gbC(){return"Izvan perioda."}, +gbv(){return"Izaberite datum"}, +gbD(){return"Izbri\u0161ite"}, +gbs(){return"Dijalog"}, +gbw(){return"Pre\u0111ite na unos"}, +gbH(){return"Format je neva\u017eec\u0301i."}, +gcE(){return"$licenseCount licence"}, +gbr(){return"1 licenca"}, +gbt(){return"$licenseCount licenci"}, +gc3(){return"Licence"}, +gaa(){return"Pogled nagore"}, +gbx(){return"Odbacite meni"}, +gal(){return"Odbaci"}, +gcF(){return"Jo\u0161"}, +gbI(){return"Sledec\u0301i mesec"}, +gcc(){return"Potvrdi"}, +gby(){return"Otvorite meni za navigaciju"}, +gaM(){return"Nalepi"}, +gc4(){return"Iska\u010duc\u0301i meni"}, +gcz(){return"Prethodni mesec"}, +gcA(){return"Osve\u017ei"}, +gcH(){return"Preostala su $remainingCount znaka"}, +gcm(){return"Preostao je 1 znak"}, +gct(){return"Preostalo je $remainingCount znakova"}, +gcB(){return"Pomerite nadole"}, +gcd(){return"Pomerite na kraj"}, +gbE(){return"Pomerite na po\u010detak"}, +gcC(){return"Pomerite nagore"}, +gbz(){return"Skeniraj tekst"}, +gbA(){return"Skrim"}, +gcu(){return"Zatvori: $modalRouteContentName"}, +gco(){return"Pretra\u017eite"}, +gaL(){return"Pretra\u017ei veb"}, +gaH(){return"Izaberi sve"}, +gcg(){return"Izaberite godinu"}, +gak(){return"Deli\u2026"}, +gcn(){return"$tabIndex. kartica od $tabCount"}, +gbX(){return"Prika\u017ei licence"}} +A.ayR.prototype={ +gbF(){return"Om $applicationName"}, +gcp(){return"Varning"}, +gcq(){return"Tillbaka"}, +gbV(){return"Ark p\xe5 nedre delen av sk\xe4rmen"}, +gbB(){return"Byt till kalender"}, +gcb(){return"Avbryt"}, +gcj(){return"St\xe4ng"}, +gcr(){return"St\xe4ng"}, +gaK(){return"Kopiera"}, +gcw(){return"I dag"}, +gaN(){return"Klipp ut"}, +gbW(){return"\xe5\xe5\xe5\xe5-mm-dd"}, +gbp(){return"Ange datum"}, +gbC(){return"Utanf\xf6r intervallet."}, +gbv(){return"V\xe4lj datum"}, +gbD(){return"Radera"}, +gbs(){return"Dialogruta"}, +gbw(){return"Byt till inmatning"}, +gbH(){return"Ogiltigt format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 licens"}, +gbt(){return"$licenseCount licenser"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Licenser"}, +gaa(){return"Titta upp"}, +gbx(){return"St\xe4ng menyn"}, +gal(){return"St\xe4ng"}, +gcF(){return"Mer"}, +gbI(){return"N\xe4sta m\xe5nad"}, +gcc(){return"OK"}, +gby(){return"\xd6ppna navigeringsmenyn"}, +gaM(){return"Klistra in"}, +gc4(){return"Popup-meny"}, +gcz(){return"F\xf6reg\xe5ende m\xe5nad"}, +gcA(){return"Uppdatera"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 tecken kvar"}, +gct(){return"$remainingCount tecken kvar"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Flytta ned\xe5t"}, +gcd(){return"Flytta till slutet"}, +gbE(){return"Flytta till b\xf6rjan"}, +gcC(){return"Flytta upp\xe5t"}, +gbz(){return"Skanna text"}, +gbA(){return"Scrim"}, +gcu(){return"St\xe4ng $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"S\xf6k"}, +gaL(){return"S\xf6k p\xe5 webben"}, +gaH(){return"Markera allt"}, +gcg(){return"V\xe4lj \xe5r"}, +gak(){return"Dela \u2026"}, +gcn(){return"Flik $tabIndex av $tabCount"}, +gbX(){return"Visa licenser"}} +A.ayS.prototype={ +gbF(){return"Kuhusu $applicationName"}, +gcp(){return"Arifa"}, +gcq(){return"Rudi Nyuma"}, +gbV(){return"Safu ya Chini"}, +gbB(){return"Badili utumie hali ya kalenda"}, +gcb(){return"Ghairi"}, +gcj(){return"Funga"}, +gcr(){return"Funga"}, +gaK(){return"Nakili"}, +gcw(){return"Leo"}, +gaN(){return"Kata"}, +gbW(){return"dd/mm/yyyy"}, +gbp(){return"Weka Tarehe"}, +gbC(){return"Umechagua tarehe iliyo nje ya kipindi."}, +gbv(){return"Chagua tarehe"}, +gbD(){return"Futa"}, +gbs(){return"Kidirisha"}, +gbw(){return"Badili utumie hali ya kuweka maandishi"}, +gbH(){return"Muundo si sahihi."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"Leseni moja"}, +gbt(){return"Leseni $licenseCount"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Leseni"}, +gaa(){return"Tafuta"}, +gbx(){return"Ondoa menyu"}, +gal(){return"Ondoa"}, +gcF(){return"Zaidi"}, +gbI(){return"Mwezi ujao"}, +gcc(){return"Sawa"}, +gby(){return"Fungua menyu ya kusogeza"}, +gaM(){return"Bandika"}, +gc4(){return"Menyu ibukizi"}, +gcz(){return"Mwezi uliopita"}, +gcA(){return"Onyesha upya"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Imesalia herufi 1"}, +gct(){return"Zimesalia herufi $remainingCount"}, +gcR(){return null}, +gcS(){return"Hapana herufi zilizo baki"}, +gcB(){return"Sogeza chini"}, +gcd(){return"Sogeza hadi mwisho"}, +gbE(){return"Sogeza hadi mwanzo"}, +gcC(){return"Sogeza juu"}, +gbz(){return"Changanua maandishi"}, +gbA(){return"Scrim"}, +gcu(){return"Funga $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Tafuta"}, +gaL(){return"Tafuta kwenye Wavuti"}, +gaH(){return"Chagua vyote"}, +gcg(){return"Chagua mwaka"}, +gak(){return"Shiriki..."}, +gcn(){return"Kichupo cha $tabIndex kati ya $tabCount"}, +gbX(){return"Angalia leseni"}} +A.ayT.prototype={ +gbF(){return"$applicationName \u0baa\u0bb1\u0bcd\u0bb1\u0bbf"}, +gcp(){return"\u0bb5\u0bbf\u0bb4\u0bbf\u0baa\u0bcd\u0baa\u0bc2\u0b9f\u0bcd\u0b9f\u0bb2\u0bcd"}, +gcq(){return"\u0bae\u0bc1\u0ba8\u0bcd\u0ba4\u0bc8\u0baf \u0baa\u0b95\u0bcd\u0b95\u0bae\u0bcd"}, +gbV(){return"\u0b95\u0bc0\u0bb4\u0bcd\u0ba4\u0bcd \u0ba4\u0bbf\u0bb0\u0bc8"}, +gbB(){return"\u0b95\u0bc7\u0bb2\u0bc6\u0ba3\u0bcd\u0b9f\u0bb0\u0bc1\u0b95\u0bcd\u0b95\u0bc1 \u0bae\u0bbe\u0bb1\u0bcd\u0bb1\u0bc1"}, +gcb(){return"\u0bb0\u0ba4\u0bcd\u0ba4\u0bc1\u0b9a\u0bc6\u0baf\u0bcd"}, +gcj(){return"\u0bae\u0bc2\u0b9f\u0bc1\u0b95"}, +gcr(){return"\u0bae\u0bc2\u0b9f\u0bc1\u0b95"}, +gaK(){return"\u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1"}, +gcw(){return"\u0b87\u0ba9\u0bcd\u0bb1\u0bc1"}, +gaN(){return"\u0bb5\u0bc6\u0b9f\u0bcd\u0b9f\u0bc1"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"\u0ba4\u0bc7\u0ba4\u0bbf\u0baf\u0bc8 \u0b89\u0bb3\u0bcd\u0bb3\u0bbf\u0b9f\u0bc1\u0b95"}, +gbC(){return"\u0bb5\u0bb0\u0bae\u0bcd\u0baa\u0bbf\u0bb1\u0bcd\u0b95\u0bc1 \u0bb5\u0bc6\u0bb3\u0bbf\u0baf\u0bc7 \u0b89\u0bb3\u0bcd\u0bb3\u0ba4\u0bc1."}, +gbv(){return"\u0ba4\u0bc7\u0ba4\u0bbf\u0baf\u0bc8\u0ba4\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0bb5\u0bc1\u0b9a\u0bc6\u0baf\u0bcd\u0b95"}, +gbD(){return"\u0ba8\u0bc0\u0b95\u0bcd\u0b95\u0bc1"}, +gbs(){return"\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd"}, +gbw(){return"\u0b89\u0bb3\u0bcd\u0bb3\u0bc0\u0b9f\u0bcd\u0b9f\u0bc1\u0b95\u0bcd\u0b95\u0bc1 \u0bae\u0bbe\u0bb1\u0bcd\u0bb1\u0bc1"}, +gbH(){return"\u0ba4\u0bb5\u0bb1\u0bbe\u0ba9 \u0bb5\u0b9f\u0bbf\u0bb5\u0bae\u0bcd."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0b89\u0bb0\u0bbf\u0bae\u0bae\u0bcd"}, +gbt(){return"$licenseCount \u0b89\u0bb0\u0bbf\u0bae\u0b99\u0bcd\u0b95\u0bb3\u0bcd"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0b89\u0bb0\u0bbf\u0bae\u0b99\u0bcd\u0b95\u0bb3\u0bcd"}, +gaa(){return"\u0ba4\u0bc7\u0b9f\u0bc1"}, +gbx(){return"\u0bae\u0bc6\u0ba9\u0bc1\u0bb5\u0bc8 \u0bae\u0bc2\u0b9f\u0bc1\u0bae\u0bcd"}, +gal(){return"\u0ba8\u0bbf\u0bb0\u0bbe\u0b95\u0bb0\u0bbf\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd"}, +gcF(){return"\u0bae\u0bc7\u0bb2\u0bc1\u0bae\u0bcd"}, +gbI(){return"\u0b85\u0b9f\u0bc1\u0ba4\u0bcd\u0ba4 \u0bae\u0bbe\u0ba4\u0bae\u0bcd"}, +gcc(){return"\u0b9a\u0bb0\u0bbf"}, +gby(){return"\u0bb5\u0bb4\u0bbf\u0b9a\u0bc6\u0bb2\u0bc1\u0ba4\u0bcd\u0ba4\u0bb2\u0bcd \u0bae\u0bc6\u0ba9\u0bc1\u0bb5\u0bc8\u0ba4\u0bcd \u0ba4\u0bbf\u0bb1"}, +gaM(){return"\u0b92\u0b9f\u0bcd\u0b9f\u0bc1"}, +gc4(){return"\u0baa\u0bbe\u0baa\u0bcd-\u0b85\u0baa\u0bcd \u0bae\u0bc6\u0ba9\u0bc1"}, +gcz(){return"\u0bae\u0bc1\u0ba8\u0bcd\u0ba4\u0bc8\u0baf \u0bae\u0bbe\u0ba4\u0bae\u0bcd"}, +gcA(){return"\u0bb0\u0bc6\u0b83\u0baa\u0bcd\u0bb0\u0bc6\u0bb7\u0bcd \u0b9a\u0bc6\u0baf\u0bcd\u0baf\u0bc1\u0bae\u0bcd"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0b8e\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1 \u0bae\u0bc0\u0ba4\u0bae\u0bc1\u0bb3\u0bcd\u0bb3\u0ba4\u0bc1"}, +gct(){return"$remainingCount \u0b8e\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1\u0b95\u0bb3\u0bcd \u0bae\u0bc0\u0ba4\u0bae\u0bc1\u0bb3\u0bcd\u0bb3\u0ba9"}, +gcR(){return null}, +gcS(){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"}, +gcB(){return"\u0b95\u0bc0\u0bb4\u0bc7 \u0ba8\u0b95\u0bb0\u0bcd\u0ba4\u0bcd\u0ba4\u0bb5\u0bc1\u0bae\u0bcd"}, +gcd(){return"\u0b87\u0bb1\u0bc1\u0ba4\u0bbf\u0b95\u0bcd\u0b95\u0bc1 \u0ba8\u0b95\u0bb0\u0bcd\u0ba4\u0bcd\u0ba4\u0bb5\u0bc1\u0bae\u0bcd"}, +gbE(){return"\u0ba4\u0bca\u0b9f\u0b95\u0bcd\u0b95\u0ba4\u0bcd\u0ba4\u0bbf\u0bb1\u0bcd\u0b95\u0bc1 \u0ba8\u0b95\u0bb0\u0bcd\u0ba4\u0bcd\u0ba4\u0bb5\u0bc1\u0bae\u0bcd"}, +gcC(){return"\u0bae\u0bc7\u0bb2\u0bc7 \u0ba8\u0b95\u0bb0\u0bcd\u0ba4\u0bcd\u0ba4\u0bb5\u0bc1\u0bae\u0bcd"}, +gbz(){return"\u0bb5\u0bbe\u0bb0\u0bcd\u0ba4\u0bcd\u0ba4\u0bc8\u0b95\u0bb3\u0bc8 \u0bb8\u0bcd\u0b95\u0bc7\u0ba9\u0bcd \u0b9a\u0bc6\u0baf\u0bcd"}, +gbA(){return"\u0bb8\u0bcd\u0b95\u0bcd\u0bb0\u0bbf\u0bae\u0bcd"}, +gcu(){return"$modalRouteContentName \u0b90 \u0bae\u0bc2\u0b9f\u0bc1\u0b95"}, +gcJ(){return B.i9}, +gco(){return"\u0ba4\u0bc7\u0b9f\u0bb2\u0bcd"}, +gaL(){return"\u0b87\u0ba3\u0bc8\u0baf\u0ba4\u0bcd\u0ba4\u0bbf\u0bb2\u0bcd \u0ba4\u0bc7\u0b9f\u0bc1"}, +gaH(){return"\u0b85\u0ba9\u0bc8\u0ba4\u0bcd\u0ba4\u0bc8\u0baf\u0bc1\u0bae\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0ba8\u0bcd\u0ba4\u0bc6\u0b9f\u0bc1"}, +gcg(){return"\u0b86\u0ba3\u0bcd\u0b9f\u0bc8\u0ba4\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0ba8\u0bcd\u0ba4\u0bc6\u0b9f\u0bc1\u0b95\u0bcd\u0b95\u0bb5\u0bc1\u0bae\u0bcd"}, +gak(){return"\u0baa\u0b95\u0bbf\u0bb0\u0bcd..."}, +gcn(){return"\u0ba4\u0bbe\u0bb5\u0bb2\u0bcd $tabIndex / $tabCount"}, +gbX(){return"\u0b89\u0bb0\u0bbf\u0bae\u0b99\u0bcd\u0b95\u0bb3\u0bc8\u0b95\u0bcd \u0b95\u0bbe\u0b9f\u0bcd\u0b9f\u0bc1"}} +A.ayU.prototype={ +gbF(){return"$applicationName \u0c17\u0c41\u0c30\u0c3f\u0c02\u0c1a\u0c3f"}, +gcp(){return"\u0c05\u0c32\u0c30\u0c4d\u0c1f\u0c4d"}, +gcq(){return"\u0c35\u0c46\u0c28\u0c41\u0c15\u0c15\u0c41"}, +gbV(){return"\u0c26\u0c3f\u0c17\u0c41\u0c35\u0c41\u0c28 \u0c09\u0c28\u0c4d\u0c28 \u0c37\u0c40\u0c1f\u0c4d"}, +gbB(){return"\u0c15\u0c4d\u0c2f\u0c3e\u0c32\u0c46\u0c02\u0c21\u0c30\u0c4d\u200c\u0c15\u0c41 \u0c2e\u0c3e\u0c30\u0c02\u0c21\u0c3f"}, +gcb(){return"\u0c30\u0c26\u0c4d\u0c26\u0c41 \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gcj(){return"\u0c2e\u0c42\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gcr(){return"\u0c2e\u0c42\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c3f"}, +gaK(){return"\u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c3f"}, +gcw(){return"\u0c28\u0c47\u0c21\u0c41"}, +gaN(){return"\u0c15\u0c24\u0c4d\u0c24\u0c3f\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"\u0c24\u0c47\u0c26\u0c40\u0c28\u0c3f \u0c0e\u0c02\u0c1f\u0c30\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gbC(){return"\u0c2a\u0c30\u0c3f\u0c27\u0c3f \u0c35\u0c46\u0c32\u0c41\u0c2a\u0c32 \u0c09\u0c02\u0c26\u0c3f."}, +gbv(){return"\u0c24\u0c47\u0c26\u0c40 \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}, +gbD(){return"\u0c24\u0c4a\u0c32\u0c17\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gbs(){return"\u0c21\u0c48\u0c32\u0c3e\u0c17\u0c4d"}, +gbw(){return"\u0c07\u0c28\u0c4d\u200c\u0c2a\u0c41\u0c1f\u0c4d\u200c\u0c15\u0c41 \u0c2e\u0c3e\u0c30\u0c02\u0c21\u0c3f"}, +gbH(){return"\u0c2b\u0c3e\u0c30\u0c4d\u0c2e\u0c3e\u0c1f\u0c4d \u0c1a\u0c46\u0c32\u0c4d\u0c32\u0c26\u0c41."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0c32\u0c48\u0c38\u0c46\u0c28\u0c4d\u0c38\u0c4d"}, +gbt(){return"$licenseCount \u0c32\u0c48\u0c38\u0c46\u0c28\u0c4d\u0c38\u0c4d\u200c\u0c32\u0c41"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0c32\u0c48\u0c38\u0c46\u0c28\u0c4d\u0c38\u0c4d\u200c\u0c32\u0c41"}, +gaa(){return"\u0c35\u0c46\u0c24\u0c15\u0c02\u0c21\u0c3f"}, +gbx(){return"\u0c2e\u0c46\u0c28\u0c42\u0c28\u0c41 \u0c24\u0c40\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gal(){return"\u0c35\u0c3f\u0c38\u0c4d\u0c2e\u0c30\u0c3f\u0c02\u0c1a\u0c41"}, +gcF(){return"\u0c2e\u0c30\u0c3f\u0c28\u0c4d\u0c28\u0c3f"}, +gbI(){return"\u0c24\u0c30\u0c4d\u0c35\u0c3e\u0c24 \u0c28\u0c46\u0c32"}, +gcc(){return"\u0c38\u0c30\u0c47"}, +gby(){return"\u0c28\u0c3e\u0c35\u0c3f\u0c17\u0c47\u0c37\u0c28\u0c4d \u0c2e\u0c46\u0c28\u0c42\u0c28\u0c41 \u0c24\u0c46\u0c30\u0c41\u0c35\u0c41"}, +gaM(){return"\u0c2a\u0c47\u0c38\u0c4d\u0c1f\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gc4(){return"\u0c2a\u0c3e\u0c2a\u0c4d\u200c\u0c05\u0c2a\u0c4d \u0c2e\u0c46\u0c28\u0c42"}, +gcz(){return"\u0c2e\u0c41\u0c28\u0c41\u0c2a\u0c1f\u0c3f \u0c28\u0c46\u0c32"}, +gcA(){return"\u0c30\u0c3f\u0c2b\u0c4d\u0c30\u0c46\u0c37\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u0c05\u0c15\u0c4d\u0c37\u0c30\u0c02 \u0c2e\u0c3f\u0c17\u0c3f\u0c32\u0c3f \u0c09\u0c02\u0c26\u0c3f"}, +gct(){return"$remainingCount \u0c05\u0c15\u0c4d\u0c37\u0c30\u0c3e\u0c32\u0c41 \u0c2e\u0c3f\u0c17\u0c3f\u0c32\u0c3f \u0c09\u0c28\u0c4d\u0c28\u0c3e\u0c2f\u0c3f"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0c15\u0c3f\u0c02\u0c26\u0c3f\u0c15\u0c41 \u0c1c\u0c30\u0c41\u0c2a\u0c41"}, +gcd(){return"\u0c1a\u0c3f\u0c35\u0c30\u0c15\u0c41 \u0c24\u0c30\u0c32\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gbE(){return"\u0c2a\u0c4d\u0c30\u0c3e\u0c30\u0c02\u0c2d\u0c3e\u0c28\u0c3f\u0c15\u0c3f \u0c24\u0c30\u0c32\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gcC(){return"\u0c2a\u0c48\u0c15\u0c3f \u0c1c\u0c30\u0c2a\u0c02\u0c21\u0c3f"}, +gbz(){return"\u0c1f\u0c46\u0c15\u0c4d\u0c38\u0c4d\u0c1f\u0c4d\u200c\u0c28\u0c41 \u0c38\u0c4d\u0c15\u0c3e\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gbA(){return"\u0c38\u0c4d\u0c15\u0c4d\u0c30\u0c3f\u0c2e\u0c4d"}, +gcu(){return"$modalRouteContentName\u200c\u0c28\u0c41 \u0c2e\u0c42\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gcJ(){return B.cR}, +gco(){return"\u0c35\u0c46\u0c24\u0c15\u0c02\u0c21\u0c3f"}, +gaL(){return"\u0c35\u0c46\u0c2c\u0c4d\u200c\u0c32\u0c4b \u0c38\u0c46\u0c30\u0c4d\u0c1a\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gaH(){return"\u0c05\u0c28\u0c4d\u0c28\u0c3f\u0c02\u0c1f\u0c3f\u0c28\u0c40 \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}, +gcg(){return"\u0c38\u0c02\u0c35\u0c24\u0c4d\u0c38\u0c30\u0c3e\u0c28\u0c4d\u0c28\u0c3f \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}, +gak(){return"\u0c37\u0c47\u0c30\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f..."}, +gcn(){return"$tabCount\u0c32\u0c4b $tabIndex\u0c35 \u0c1f\u0c4d\u0c2f\u0c3e\u0c2c\u0c4d"}, +gbX(){return"\u0c32\u0c48\u0c38\u0c46\u0c28\u0c4d\u0c38\u0c4d\u200c\u0c32\u0c28\u0c41 \u0c1a\u0c42\u0c21\u0c02\u0c21\u0c3f"}} +A.ayV.prototype={ +gbF(){return"\u0e40\u0e01\u0e35\u0e48\u0e22\u0e27\u0e01\u0e31\u0e1a $applicationName"}, +gcp(){return"\u0e01\u0e32\u0e23\u0e41\u0e08\u0e49\u0e07\u0e40\u0e15\u0e37\u0e2d\u0e19"}, +gcq(){return"\u0e01\u0e25\u0e31\u0e1a"}, +gbV(){return"Bottom Sheet"}, +gbB(){return"\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e40\u0e1b\u0e47\u0e19\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19"}, +gcb(){return"\u0e22\u0e01\u0e40\u0e25\u0e34\u0e01"}, +gcj(){return"\u0e1b\u0e34\u0e14"}, +gcr(){return"\u0e1b\u0e34\u0e14"}, +gaK(){return"\u0e04\u0e31\u0e14\u0e25\u0e2d\u0e01"}, +gcw(){return"\u0e27\u0e31\u0e19\u0e19\u0e35\u0e49"}, +gaN(){return"\u0e15\u0e31\u0e14"}, +gbW(){return"\u0e14\u0e14/\u0e27\u0e27/\u0e1b\u0e1b\u0e1b\u0e1b"}, +gbp(){return"\u0e1b\u0e49\u0e2d\u0e19\u0e27\u0e31\u0e19\u0e17\u0e35\u0e48"}, +gbC(){return"\u0e44\u0e21\u0e48\u0e2d\u0e22\u0e39\u0e48\u0e43\u0e19\u0e0a\u0e48\u0e27\u0e07"}, +gbv(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e27\u0e31\u0e19\u0e17\u0e35\u0e48"}, +gbD(){return"\u0e25\u0e1a"}, +gbs(){return"\u0e01\u0e25\u0e48\u0e2d\u0e07\u0e42\u0e15\u0e49\u0e15\u0e2d\u0e1a"}, +gbw(){return"\u0e40\u0e1b\u0e25\u0e35\u0e48\u0e22\u0e19\u0e40\u0e1b\u0e47\u0e19\u0e42\u0e2b\u0e21\u0e14\u0e1b\u0e49\u0e2d\u0e19\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21"}, +gbH(){return"\u0e23\u0e39\u0e1b\u0e41\u0e1a\u0e1a\u0e44\u0e21\u0e48\u0e16\u0e39\u0e01\u0e15\u0e49\u0e2d\u0e07"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"\u0e43\u0e1a\u0e2d\u0e19\u0e38\u0e0d\u0e32\u0e15 1 \u0e43\u0e1a"}, +gbt(){return"\u0e43\u0e1a\u0e2d\u0e19\u0e38\u0e0d\u0e32\u0e15 $licenseCount \u0e43\u0e1a"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0e43\u0e1a\u0e2d\u0e19\u0e38\u0e0d\u0e32\u0e15"}, +gaa(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32"}, +gbx(){return"\u0e1b\u0e34\u0e14\u0e40\u0e21\u0e19\u0e39"}, +gal(){return"\u0e1b\u0e34\u0e14"}, +gcF(){return"\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e40\u0e15\u0e34\u0e21"}, +gbI(){return"\u0e40\u0e14\u0e37\u0e2d\u0e19\u0e2b\u0e19\u0e49\u0e32"}, +gcc(){return"\u0e15\u0e01\u0e25\u0e07"}, +gby(){return"\u0e40\u0e1b\u0e34\u0e14\u0e40\u0e21\u0e19\u0e39\u0e01\u0e32\u0e23\u0e19\u0e33\u0e17\u0e32\u0e07"}, +gaM(){return"\u0e27\u0e32\u0e07"}, +gc4(){return"\u0e40\u0e21\u0e19\u0e39\u0e1b\u0e4a\u0e2d\u0e1b\u0e2d\u0e31\u0e1b"}, +gcz(){return"\u0e40\u0e14\u0e37\u0e2d\u0e19\u0e17\u0e35\u0e48\u0e41\u0e25\u0e49\u0e27"}, +gcA(){return"\u0e23\u0e35\u0e40\u0e1f\u0e23\u0e0a"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u0e40\u0e2b\u0e25\u0e37\u0e2d 1 \u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30"}, +gct(){return"\u0e40\u0e2b\u0e25\u0e37\u0e2d $remainingCount \u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0e22\u0e49\u0e32\u0e22\u0e25\u0e07"}, +gcd(){return"\u0e22\u0e49\u0e32\u0e22\u0e44\u0e1b\u0e17\u0e49\u0e32\u0e22\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23"}, +gbE(){return"\u0e22\u0e49\u0e32\u0e22\u0e44\u0e1b\u0e15\u0e49\u0e19\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23"}, +gcC(){return"\u0e22\u0e49\u0e32\u0e22\u0e02\u0e36\u0e49\u0e19"}, +gbz(){return"\u0e2a\u0e41\u0e01\u0e19\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21"}, +gbA(){return"Scrim"}, +gcu(){return"\u0e1b\u0e34\u0e14 $modalRouteContentName"}, +gcJ(){return B.cR}, +gco(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32"}, +gaL(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32\u0e1a\u0e19\u0e2d\u0e34\u0e19\u0e40\u0e17\u0e2d\u0e23\u0e4c\u0e40\u0e19\u0e47\u0e15"}, +gaH(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14"}, +gcg(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e1b\u0e35"}, +gak(){return"\u0e41\u0e0a\u0e23\u0e4c..."}, +gcn(){return"\u0e41\u0e17\u0e47\u0e1a\u0e17\u0e35\u0e48 $tabIndex \u0e08\u0e32\u0e01 $tabCount"}, +gbX(){return"\u0e14\u0e39\u0e43\u0e1a\u0e2d\u0e19\u0e38\u0e0d\u0e32\u0e15"}} +A.ayW.prototype={ +gbF(){return"Tungkol sa $applicationName"}, +gcp(){return"Alerto"}, +gcq(){return"Bumalik"}, +gbV(){return"Bottom Sheet"}, +gbB(){return"Lumipat sa kalendaryo"}, +gcb(){return"Kanselahin"}, +gcj(){return"Isara"}, +gcr(){return"Isara"}, +gaK(){return"Kopyahin"}, +gcw(){return"Ngayon"}, +gaN(){return"I-cut"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"Ilagay ang Petsa"}, +gbC(){return"Wala sa hanay."}, +gbv(){return"Pumili ng petsa"}, +gbD(){return"I-delete"}, +gbs(){return"Dialog"}, +gbw(){return"Lumipat sa input"}, +gbH(){return"Invalid ang format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisensya"}, +gbt(){return"$licenseCount na lisensya"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Mga Lisensya"}, +gaa(){return"Tumingin sa Itaas"}, +gbx(){return"I-dismiss ang menu"}, +gal(){return"I-dismiss"}, +gcF(){return"Higit Pa"}, +gbI(){return"Susunod na buwan"}, +gcc(){return"OK"}, +gby(){return"Buksan ang menu ng navigation"}, +gaM(){return"I-paste"}, +gc4(){return"Popup na menu"}, +gcz(){return"Nakaraang buwan"}, +gcA(){return"Nagre-refresh"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 character ang natitira"}, +gct(){return u.Y}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Ilipat pababa"}, +gcd(){return"Ilipat sa dulo"}, +gbE(){return"Ilipat sa simula"}, +gcC(){return"Ilipat pataas"}, +gbz(){return"I-scan ang text"}, +gbA(){return"Scrim"}, +gcu(){return"Isara ang $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Maghanap"}, +gaL(){return"Maghanap sa Web"}, +gaH(){return"Piliin lahat"}, +gcg(){return"Pumili ng taon"}, +gak(){return"Ibahagi..."}, +gcn(){return"Tab $tabIndex ng $tabCount"}, +gbX(){return"Tingnan ang mga lisensya"}} +A.ayX.prototype={ +gbF(){return"$applicationName Hakk\u0131nda"}, +gcp(){return"Uyar\u0131"}, +gcq(){return"Geri"}, +gbV(){return"alt sayfa"}, +gbB(){return"Takvime ge\xe7"}, +gcb(){return"\u0130ptal"}, +gcj(){return"Kapat"}, +gcr(){return"Kapat"}, +gaK(){return"Kopyala"}, +gcw(){return"Bug\xfcn"}, +gaN(){return"Kes"}, +gbW(){return"gg.aa.yyyy"}, +gbp(){return"Tarih Girin"}, +gbC(){return"Kapsama alan\u0131 d\u0131\u015f\u0131nda."}, +gbv(){return"Tarih se\xe7in"}, +gbD(){return"Sil"}, +gbs(){return"\u0130leti\u015fim kutusu"}, +gbw(){return"Giri\u015fe ge\xe7"}, +gbH(){return"Ge\xe7ersiz bi\xe7im."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 lisans"}, +gbt(){return"$licenseCount lisans"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Lisanslar"}, +gaa(){return"Ara"}, +gbx(){return"Men\xfcy\xfc kapat"}, +gal(){return"Kapat"}, +gcF(){return"Di\u011fer"}, +gbI(){return"Gelecek ay"}, +gcc(){return"Tamam"}, +gby(){return"Gezinme men\xfcs\xfcn\xfc a\xe7"}, +gaM(){return"Yap\u0131\u015ft\u0131r"}, +gc4(){return"Popup men\xfc"}, +gcz(){return"\xd6nceki ay"}, +gcA(){return"Yenile"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 karakter kald\u0131"}, +gct(){return"$remainingCount karakter kald\u0131"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"A\u015fa\u011f\u0131 ta\u015f\u0131"}, +gcd(){return"Sona ta\u015f\u0131"}, +gbE(){return"Ba\u015fa ta\u015f\u0131"}, +gcC(){return"Yukar\u0131 ta\u015f\u0131"}, +gbz(){return"Metin tara"}, +gbA(){return"opakl\u0131k katman\u0131"}, +gcu(){return"$modalRouteContentName i\xe7eri\u011fini kapat"}, +gcJ(){return B.a3}, +gco(){return"Ara"}, +gaL(){return"Web'de Ara"}, +gaH(){return"T\xfcm\xfcn\xfc se\xe7"}, +gcg(){return"Y\u0131l\u0131 se\xe7in"}, +gak(){return"Payla\u015f..."}, +gcn(){return"Sekme $tabIndex / $tabCount"}, +gbX(){return"Lisanslar\u0131 g\xf6ster"}} +A.ayY.prototype={ +gbF(){return"\u041f\u0440\u043e \u0434\u043e\u0434\u0430\u0442\u043e\u043a $applicationName"}, +gcp(){return"\u0421\u043f\u043e\u0432\u0456\u0449\u0435\u043d\u043d\u044f"}, +gcq(){return"\u041d\u0430\u0437\u0430\u0434"}, +gbV(){return"\u041d\u0438\u0436\u043d\u0456\u0439 \u0435\u043a\u0440\u0430\u043d"}, +gbB(){return"\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044f"}, +gcb(){return"\u0421\u043a\u0430\u0441\u0443\u0432\u0430\u0442\u0438"}, +gcj(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gcr(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gaK(){return"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438"}, +gcw(){return"\u0421\u044c\u043e\u0433\u043e\u0434\u043d\u0456"}, +gaN(){return"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438"}, +gbW(){return"\u0434\u0434.\u043c\u043c.\u0440\u0440\u0440\u0440"}, +gbp(){return"\u0412\u0432\u0435\u0434\u0456\u0442\u044c \u0434\u0430\u0442\u0443"}, +gbC(){return"\u0417\u0430 \u043c\u0435\u0436\u0430\u043c\u0438 \u0434\u0456\u0430\u043f\u0430\u0437\u043e\u043d\u0443."}, +gbv(){return"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0434\u0430\u0442\u0443"}, +gbD(){return"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438"}, +gbs(){return"\u0412\u0456\u043a\u043d\u043e"}, +gbw(){return"\u0412\u0432\u0435\u0441\u0442\u0438 \u0432\u0440\u0443\u0447\u043d\u0443"}, +gbH(){return"\u041d\u0435\u0434\u0456\u0439\u0441\u043d\u0438\u0439 \u0444\u043e\u0440\u043c\u0430\u0442."}, +gcE(){return"$licenseCount \u043b\u0456\u0446\u0435\u043d\u0437\u0456\u0457"}, +gcN(){return"$licenseCount \u043b\u0456\u0446\u0435\u043d\u0437\u0456\u0439"}, +gbr(){return"1 \u043b\u0456\u0446\u0435\u043d\u0437\u0456\u044f"}, +gbt(){return"$licenseCount \u043b\u0456\u0446\u0435\u043d\u0437\u0456\u0457"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u041b\u0456\u0446\u0435\u043d\u0437\u0456\u0457"}, +gaa(){return"\u0428\u0443\u043a\u0430\u0442\u0438"}, +gbx(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438 \u043c\u0435\u043d\u044e"}, +gal(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gcF(){return"\u0406\u043d\u0448\u0456"}, +gbI(){return"\u041d\u0430\u0441\u0442\u0443\u043f\u043d\u0438\u0439 \u043c\u0456\u0441\u044f\u0446\u044c"}, +gcc(){return"OK"}, +gby(){return"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u0456\u0457"}, +gaM(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438"}, +gc4(){return"\u0421\u043f\u043b\u0438\u0432\u0430\u044e\u0447\u0435 \u043c\u0435\u043d\u044e"}, +gcz(){return"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u0456\u0439 \u043c\u0456\u0441\u044f\u0446\u044c"}, +gcA(){return"\u041e\u043d\u043e\u0432\u0438\u0442\u0438"}, +gcH(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0438"}, +gcQ(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0456\u0432"}, +gcm(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u0432\u0441\u044f 1 \u0441\u0438\u043c\u0432\u043e\u043b"}, +gct(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0443"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u0432\u043d\u0438\u0437"}, +gcd(){return"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u0432 \u043a\u0456\u043d\u0435\u0446\u044c"}, +gbE(){return"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u043d\u0430 \u043f\u043e\u0447\u0430\u0442\u043e\u043a"}, +gcC(){return"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u0432\u0433\u043e\u0440\u0443"}, +gbz(){return"\u0412\u0456\u0434\u0441\u043a\u0430\u043d\u0443\u0432\u0430\u0442\u0438 \u0442\u0435\u043a\u0441\u0442"}, +gbA(){return"\u041c\u0430\u0441\u043a\u0443\u0432\u0430\u043b\u044c\u043d\u0438\u0439 \u0444\u043e\u043d"}, +gcu(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438: $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"\u041f\u043e\u0448\u0443\u043a"}, +gaL(){return"\u041f\u043e\u0448\u0443\u043a \u0432 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0456"}, +gaH(){return"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0432\u0441\u0456"}, +gcg(){return"\u0412\u0438\u0431\u0435\u0440\u0456\u0442\u044c \u0440\u0456\u043a"}, +gak(){return"\u041f\u043e\u0434\u0456\u043b\u0438\u0442\u0438\u0441\u044f\u2026"}, +gcn(){return"\u0412\u043a\u043b\u0430\u0434\u043a\u0430 $tabIndex \u0437 $tabCount"}, +gbX(){return"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u043d\u0443\u0442\u0438 \u043b\u0456\u0446\u0435\u043d\u0437\u0456\u0457"}} +A.ayZ.prototype={ +gbF(){return"$applicationName \u06a9\u06d2 \u0628\u0627\u0631\u06d2 \u0645\u06cc\u06ba"}, +gcp(){return"\u0627\u0644\u0631\u0679"}, +gcq(){return"\u067e\u06cc\u0686\u06be\u06d2"}, +gbV(){return"\u0646\u06cc\u0686\u06d2 \u06a9\u06cc \u0634\u06cc\u0679"}, +gbB(){return"\u06a9\u06cc\u0644\u0646\u0688\u0631 \u067e\u0631 \u0633\u0648\u0626\u0686 \u06a9\u0631\u06cc\u06ba"}, +gcb(){return"\u0645\u0646\u0633\u0648\u062e \u06a9\u0631\u06cc\u06ba"}, +gcj(){return"\u0628\u0646\u062f \u06a9\u0631\u06cc\u06ba"}, +gcr(){return"\u0628\u0646\u062f \u06a9\u0631\u06cc\u06ba"}, +gaK(){return"\u06a9\u0627\u067e\u06cc \u06a9\u0631\u06cc\u06ba"}, +gcw(){return"\u0622\u062c"}, +gaN(){return"\u06a9\u0679 \u06a9\u0631\u06cc\u06ba"}, +gbW(){return"dd/mm/yyyy"}, +gbp(){return"\u062a\u0627\u0631\u06cc\u062e \u062f\u0631\u062c \u06a9\u0631\u06cc\u06ba"}, +gbC(){return"\u062d\u062f \u0633\u06d2 \u0628\u0627\u06c1\u0631\u06d4"}, +gbv(){return"\u062a\u0627\u0631\u06cc\u062e \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}, +gbD(){return"\u062d\u0630\u0641 \u06a9\u0631\u06cc\u06ba"}, +gbs(){return"\u0688\u0627\u0626\u0644\u0627\u06af"}, +gbw(){return"\u0627\u0646 \u067e\u0679 \u067e\u0631 \u0633\u0648\u0626\u0686 \u06a9\u0631\u06cc\u06ba"}, +gbH(){return"\u063a\u0644\u0637 \u0641\u0627\u0631\u0645\u06cc\u0679\u06d4"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u0644\u0627\u0626\u0633\u0646\u0633"}, +gbt(){return"$licenseCount \u0644\u0627\u0626\u0633\u0646\u0633\u0632"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u0644\u0627\u0626\u0633\u0646\u0633\u0632"}, +gaa(){return"\u062a\u0641\u0635\u06cc\u0644 \u062f\u06cc\u06a9\u06be\u06cc\u06ba"}, +gbx(){return"\u0645\u06cc\u0646\u0648 \u0628\u0631\u062e\u0627\u0633\u062a \u06a9\u0631\u06cc\u06ba"}, +gal(){return"\u0628\u0631\u062e\u0627\u0633\u062a \u06a9\u0631\u06cc\u06ba"}, +gcF(){return"\u0645\u0632\u06cc\u062f"}, +gbI(){return"\u0627\u06af\u0644\u0627 \u0645\u06c1\u06cc\u0646\u06c1"}, +gcc(){return"\u0679\u06be\u06cc\u06a9 \u06c1\u06d2"}, +gby(){return"\u0646\u06cc\u0648\u06cc\u06af\u06cc\u0634\u0646 \u0645\u06cc\u0646\u06cc\u0648 \u06a9\u06be\u0648\u0644\u06cc\u06ba"}, +gaM(){return"\u067e\u06cc\u0633\u0679 \u06a9\u0631\u06cc\u06ba"}, +gc4(){return"\u067e\u0627\u067e \u0627\u067e \u0645\u06cc\u0646\u06cc\u0648"}, +gcz(){return"\u067e\u0686\u06be\u0644\u0627 \u0645\u06c1\u06cc\u0646\u06c1"}, +gcA(){return"\u0631\u06cc\u0641\u0631\u06cc\u0634 \u06a9\u0631\u06cc\u06ba"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 \u062d\u0631\u0641 \u0628\u0627\u0642\u06cc \u06c1\u06d2"}, +gct(){return"$remainingCount \u062d\u0631\u0648\u0641 \u0628\u0627\u0642\u06cc \u06c1\u06cc\u06ba"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u0646\u06cc\u0686\u06d2 \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u06cc\u06ba"}, +gcd(){return"\u0622\u062e\u0631 \u0645\u06cc\u06ba \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u06cc\u06ba"}, +gbE(){return"\u0634\u0631\u0648\u0639 \u0645\u06cc\u06ba \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u06cc\u06ba"}, +gcC(){return"\u0627\u0648\u067e\u0631 \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u06cc\u06ba"}, +gbz(){return"\u0679\u06cc\u06a9\u0633\u0679 \u0627\u0633\u06a9\u06cc\u0646 \u06a9\u0631\u06cc\u06ba"}, +gbA(){return"\u0627\u0633\u06a9\u0631\u06cc\u0645"}, +gcu(){return"$modalRouteContentName \u0628\u0646\u062f \u06a9\u0631\u06cc\u06ba"}, +gcJ(){return B.cR}, +gco(){return"\u062a\u0644\u0627\u0634"}, +gaL(){return"\u0648\u06cc\u0628 \u062a\u0644\u0627\u0634 \u06a9\u0631\u06cc\u06ba"}, +gaH(){return"\u0633\u0628\u06be\u06cc \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}, +gcg(){return"\u0633\u0627\u0644 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}, +gak(){return"\u0627\u0634\u062a\u0631\u0627\u06a9 \u06a9\u0631\u06cc\u06ba..."}, +gcn(){return"$tabCount \u0645\u06cc\u06ba \u0633\u06d2 $tabIndex \u0679\u06cc\u0628"}, +gbX(){return"\u0644\u0627\u0626\u0633\u0646\u0633\u0632 \u062f\u06cc\u06a9\u06be\u06cc\u06ba"}} +A.az_.prototype={ +gbF(){return"$applicationName haqida"}, +gcp(){return"Ogohlantirish"}, +gcq(){return"Orqaga"}, +gbV(){return"Quyi ekran"}, +gbB(){return"Taqvimda ochish"}, +gcb(){return"Bekor qilish"}, +gcj(){return"Yopish"}, +gcr(){return"Yopish"}, +gaK(){return"Nusxa olish"}, +gcw(){return"Bugun"}, +gaN(){return"Kesib olish"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"Sanani kiriting"}, +gbC(){return"Diapazondan tashqarida."}, +gbv(){return"Sanani tanlang"}, +gbD(){return"Olib tashlash"}, +gbs(){return"Muloqot oynasi"}, +gbw(){return"Mustaqil kiritish"}, +gbH(){return"Yaroqsiz format."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 ta litsenziya"}, +gbt(){return"$licenseCount ta litsenziya"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Litsenziyalar"}, +gaa(){return"Tepaga qarang"}, +gbx(){return"Menyuni yopish"}, +gal(){return"Yopish"}, +gcF(){return"Yana"}, +gbI(){return"Keyingi oy"}, +gcc(){return"OK"}, +gby(){return"Navigatsiya menyusini ochish"}, +gaM(){return"Joylash"}, +gc4(){return"Pop-ap menyusi"}, +gcz(){return"Avvalgi oy"}, +gcA(){return"Yangilash"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 ta belgi qoldi"}, +gct(){return"$remainingCount ta belgi qoldi"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Pastga siljitish"}, +gcd(){return"Oxiriga siljitish"}, +gbE(){return"Boshiga siljitish"}, +gcC(){return"Tepaga siljitish"}, +gbz(){return"Matnni skanerlash"}, +gbA(){return"Kanop"}, +gcu(){return"Yopish: $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Qidirish"}, +gaL(){return"Internetdan qidirish"}, +gaH(){return"Hammasi"}, +gcg(){return"Yilni tanlang"}, +gak(){return"Ulashish\u2026"}, +gcn(){return"$tabCount varaqdan $tabIndex"}, +gbX(){return"Litsenziyalarni ko\u02bbrish"}} +A.az0.prototype={ +gbF(){return"Gi\u1edbi thi\u1ec7u v\u1ec1 $applicationName"}, +gcp(){return"Th\xf4ng b\xe1o"}, +gcq(){return"Quay l\u1ea1i"}, +gbV(){return"B\u1ea3ng d\u01b0\u1edbi c\xf9ng"}, +gbB(){return"Chuy\u1ec3n sang l\u1ecbch"}, +gcb(){return"Hu\u1ef7"}, +gcj(){return"\u0110\xf3ng"}, +gcr(){return"\u0110\xf3ng"}, +gaK(){return"Sao ch\xe9p"}, +gcw(){return"H\xf4m nay"}, +gaN(){return"C\u1eaft"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"Nh\u1eadp ng\xe0y"}, +gbC(){return"Ngo\xe0i ph\u1ea1m vi."}, +gbv(){return"Ch\u1ecdn ng\xe0y"}, +gbD(){return"X\xf3a"}, +gbs(){return"H\u1ed9p tho\u1ea1i"}, +gbw(){return"Chuy\u1ec3n sang ch\u1ebf \u0111\u1ed9 nh\u1eadp"}, +gbH(){return"\u0110\u1ecbnh d\u1ea1ng kh\xf4ng h\u1ee3p l\u1ec7."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 gi\u1ea5y ph\xe9p"}, +gbt(){return"$licenseCount gi\u1ea5y ph\xe9p"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Gi\u1ea5y ph\xe9p"}, +gaa(){return"Tra c\u1ee9u"}, +gbx(){return"\u0110\xf3ng tr\xecnh \u0111\u01a1n"}, +gal(){return"B\u1ecf qua"}, +gcF(){return"Th\xeam"}, +gbI(){return"Th\xe1ng sau"}, +gcc(){return"OK"}, +gby(){return"M\u1edf menu di chuy\u1ec3n"}, +gaM(){return"D\xe1n"}, +gc4(){return"Menu b\u1eadt l\xean"}, +gcz(){return"Th\xe1ng tr\u01b0\u1edbc"}, +gcA(){return"L\xe0m m\u1edbi"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"Co\u0300n la\u0323i 1 k\xfd t\u1ef1"}, +gct(){return"Co\u0300n la\u0323i $remainingCount k\xfd t\u1ef1"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Di chuy\xea\u0309n xu\xf4\u0301ng"}, +gcd(){return"Di chuy\u1ec3n xu\u1ed1ng cu\u1ed1i danh s\xe1ch"}, +gbE(){return"Di chuy\u1ec3n l\xean \u0111\u1ea7u danh s\xe1ch"}, +gcC(){return"Di chuy\u1ec3n l\xean"}, +gbz(){return"Qu\xe9t v\u0103n b\u1ea3n"}, +gbA(){return"Scrim"}, +gcu(){return"\u0110\xf3ng $modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"T\xecm ki\u1ebfm"}, +gaL(){return"T\xecm ki\u1ebfm tr\xean web"}, +gaH(){return"Ch\u1ecdn t\u1ea5t c\u1ea3"}, +gcg(){return"Ch\u1ecdn n\u0103m"}, +gak(){return"Chia s\u1ebb..."}, +gcn(){return"Tab $tabIndex trong t\u1ed5ng s\u1ed1 $tabCount"}, +gbX(){return"Xem gi\u1ea5y ph\xe9p"}} +A.a5x.prototype={ +gbF(){return"\u5173\u4e8e$applicationName"}, +gcp(){return"\u63d0\u9192"}, +gcq(){return"\u8fd4\u56de"}, +gbV(){return"\u5e95\u90e8\u52a8\u4f5c\u6761"}, +gbB(){return"\u5207\u6362\u5230\u65e5\u5386\u6a21\u5f0f"}, +gcb(){return"\u53d6\u6d88"}, +gcj(){return"\u5173\u95ed"}, +gcr(){return"\u5173\u95ed"}, +gaK(){return"\u590d\u5236"}, +gcw(){return"\u4eca\u5929"}, +gaN(){return"\u526a\u5207"}, +gbW(){return"yyyy/mm/dd"}, +gbp(){return"\u8f93\u5165\u65e5\u671f"}, +gbC(){return"\u8d85\u51fa\u8303\u56f4\u3002"}, +gbv(){return"\u9009\u62e9\u65e5\u671f"}, +gbD(){return"\u5220\u9664"}, +gbs(){return"\u5bf9\u8bdd\u6846"}, +gbw(){return"\u5207\u6362\u5230\u8f93\u5165\u6a21\u5f0f"}, +gbH(){return"\u683c\u5f0f\u65e0\u6548\u3002"}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"1 \u4efd\u8bb8\u53ef"}, +gbt(){return"$licenseCount \u4efd\u8bb8\u53ef"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"\u8bb8\u53ef"}, +gaa(){return"\u5411\u4e0a\u770b"}, +gbx(){return"\u5173\u95ed\u83dc\u5355"}, +gal(){return"\u5173\u95ed"}, +gcF(){return"\u66f4\u591a"}, +gbI(){return"\u4e0b\u4e2a\u6708"}, +gcc(){return"\u786e\u5b9a"}, +gby(){return"\u6253\u5f00\u5bfc\u822a\u83dc\u5355"}, +gaM(){return"\u7c98\u8d34"}, +gc4(){return"\u5f39\u51fa\u83dc\u5355"}, +gcz(){return"\u4e0a\u4e2a\u6708"}, +gcA(){return"\u5237\u65b0"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"\u8fd8\u53ef\u8f93\u5165 1 \u4e2a\u5b57\u7b26"}, +gct(){return"\u8fd8\u53ef\u8f93\u5165 $remainingCount \u4e2a\u5b57\u7b26"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"\u4e0b\u79fb"}, +gcd(){return"\u79fb\u5230\u672b\u5c3e"}, +gbE(){return"\u79fb\u5230\u5f00\u5934"}, +gcC(){return"\u4e0a\u79fb"}, +gbz(){return"\u626b\u63cf\u6587\u5b57"}, +gbA(){return"\u7eb1\u7f69"}, +gcu(){return"\u5173\u95ed $modalRouteContentName"}, +gcJ(){return B.i9}, +gco(){return"\u641c\u7d22"}, +gaL(){return"\u5728\u7f51\u7edc\u4e0a\u641c\u7d22"}, +gaH(){return"\u5168\u9009"}, +gcg(){return"\u9009\u62e9\u5e74\u4efd"}, +gak(){return"\u5206\u4eab\u2026"}, +gcn(){return"\u7b2c $tabIndex \u4e2a\u6807\u7b7e\uff0c\u5171 $tabCount \u4e2a"}, +gbX(){return"\u67e5\u770b\u8bb8\u53ef"}} +A.az1.prototype={} +A.a5y.prototype={ +gbF(){return"\u95dc\u65bc$applicationName"}, +gcp(){return"\u901a\u77e5"}, +gbV(){return"\u9801\u5e95\u9762\u677f"}, +gbB(){return"\u5207\u63db\u81f3\u65e5\u66c6"}, +gcj(){return"\u95dc\u9589"}, +gcr(){return"\u95dc\u9589"}, +gaK(){return"\u8907\u88fd"}, +gaN(){return"\u526a\u4e0b"}, +gbW(){return"dd/mm/yyyy"}, +gbp(){return"\u8f38\u5165\u65e5\u671f"}, +gbC(){return"\u8d85\u51fa\u7bc4\u570d\u3002"}, +gbv(){return"\u9078\u53d6\u65e5\u671f"}, +gbD(){return"\u522a\u9664"}, +gbs(){return"\u5c0d\u8a71\u65b9\u584a"}, +gbw(){return"\u5207\u63db\u81f3\u8f38\u5165"}, +gbH(){return"\u683c\u5f0f\u7121\u6548\u3002"}, +gbr(){return"1 \u9805\u6388\u6b0a"}, +gbt(){return"$licenseCount \u9805\u6388\u6b0a"}, +gc3(){return"\u6388\u6b0a"}, +gaa(){return"\u67e5\u8a62"}, +gbx(){return"\u9582\u9078\u55ae"}, +gal(){return"\u62d2\u7d55"}, +gbI(){return"\u4e0b\u500b\u6708"}, +gcc(){return"\u78ba\u5b9a"}, +gby(){return"\u958b\u555f\u5c0e\u89bd\u9078\u55ae"}, +gaM(){return"\u8cbc\u4e0a"}, +gc4(){return"\u5f48\u51fa\u5f0f\u9078\u55ae"}, +gcz(){return"\u4e0a\u500b\u6708"}, +gcA(){return"\u91cd\u65b0\u6574\u7406"}, +gcm(){return"\u5c1a\u9918 1 \u500b\u5b57\u5143"}, +gct(){return"\u5c1a\u9918 $remainingCount \u500b\u5b57\u5143"}, +gcB(){return"\u5411\u4e0b\u79fb"}, +gcd(){return"\u79fb\u5230\u6700\u5f8c"}, +gbE(){return"\u79fb\u5230\u958b\u982d"}, +gcC(){return"\u5411\u4e0a\u79fb"}, +gbz(){return"\u6383\u7784\u6587\u5b57"}, +gbA(){return"Scrim"}, +gcu(){return"\u95dc\u9589 $modalRouteContentName"}, +gco(){return"\u641c\u5c0b"}, +gaL(){return"\u641c\u5c0b\u7db2\u9801"}, +gaH(){return"\u5168\u90e8\u9078\u53d6"}, +gcg(){return"\u63c0\u5e74\u4efd"}, +gcn(){return"\u7b2c $tabIndex \u500b\u6a19\u7c64\uff0c\u7e3d\u5171 $tabCount \u500b"}, +gbX(){return"\u67e5\u770b\u6388\u6b0a"}} +A.az2.prototype={} +A.az3.prototype={ +gaL(){return"\u5728\u7db2\u8def\u4e0a\u641c\u5c0b"}, +gbz(){return"\u6383\u63cf\u6587\u5b57"}, +gbx(){return"\u95dc\u9589\u9078\u55ae"}, +gbA(){return"\u7d17\u7f69"}, +gbV(){return"\u5e95\u90e8\u529f\u80fd\u8868"}, +gcu(){return"\u95dc\u9589\u300c$modalRouteContentName\u300d"}, +gbr(){return"1 \u500b\u6388\u6b0a"}, +gbt(){return"$licenseCount \u500b\u6388\u6b0a"}, +gbB(){return"\u5207\u63db\u5230\u65e5\u66c6\u6a21\u5f0f"}, +gbw(){return"\u5207\u63db\u5230\u8f38\u5165\u6a21\u5f0f"}, +gcg(){return"\u9078\u53d6\u5e74\u4efd"}, +gbW(){return"yyyy/mm/dd"}, +gcn(){return"\u7b2c $tabIndex \u500b\u5206\u9801 (\u5171 $tabCount \u500b)"}, +gal(){return"\u95dc\u9589"}, +gbF(){return"\u95dc\u65bc\u300c$applicationName\u300d"}, +gaH(){return"\u5168\u9078"}, +gcp(){return"\u5feb\u8a0a"}, +gbE(){return"\u79fb\u81f3\u958b\u982d"}, +gcd(){return"\u79fb\u81f3\u7d50\u5c3e"}, +gcm(){return"\u9084\u53ef\u8f38\u5165 1 \u500b\u5b57\u5143"}, +gct(){return"\u9084\u53ef\u8f38\u5165 $remainingCount \u500b\u5b57\u5143"}} +A.az4.prototype={ +gbF(){return"Mayelana no-$applicationName"}, +gcp(){return"Isexwayiso"}, +gcq(){return"Emuva"}, +gbV(){return"Ishidi Eliphansi"}, +gbB(){return"Shintshela kukhalenda"}, +gcb(){return"Khansela"}, +gcj(){return"Vala"}, +gcr(){return"Vala"}, +gaK(){return"Kopisha"}, +gcw(){return"Namuhla"}, +gaN(){return"Sika"}, +gbW(){return"mm/dd/yyyy"}, +gbp(){return"Faka idethi"}, +gbC(){return"Ikude kubanga."}, +gbv(){return"Khetha usuku"}, +gbD(){return"Susa"}, +gbs(){return"Ingxoxo"}, +gbw(){return"Shintshela kokokufaka"}, +gbH(){return"Ifomethi engavumelekile."}, +gcE(){return null}, +gcN(){return null}, +gbr(){return"ilayisense e-1"}, +gbt(){return"amalayisense angu-$licenseCount"}, +gcO(){return null}, +gc7(){return"No licenses"}, +gc3(){return"Amalayisense"}, +gaa(){return"Bheka Phezulu"}, +gbx(){return"Chitha imenyu"}, +gal(){return"Cashisa"}, +gcF(){return"Okuningi"}, +gbI(){return"Inyanga ezayo"}, +gcc(){return"KULUNGILE"}, +gby(){return"Vula imenyu yokuzulazula"}, +gaM(){return"Namathisela"}, +gc4(){return"Imenyu ye-popup"}, +gcz(){return"Inyanga edlule"}, +gcA(){return"Vuselela"}, +gcH(){return null}, +gcQ(){return null}, +gcm(){return"1 uhlamvu olusele"}, +gct(){return"$remainingCount izinhlamvu ezisele"}, +gcR(){return null}, +gcS(){return null}, +gcB(){return"Iya phansi"}, +gcd(){return"Yisa ekugcineni"}, +gbE(){return"Yisa ekuqaleni"}, +gcC(){return"Iya phezulu"}, +gbz(){return"Skena umbhalo"}, +gbA(){return"I-Scrim"}, +gcu(){return"Vala i-$modalRouteContentName"}, +gcJ(){return B.a3}, +gco(){return"Sesha"}, +gaL(){return"Sesha Iwebhu"}, +gaH(){return"Khetha konke"}, +gcg(){return"Khetha unyaka"}, +gak(){return"Yabelana..."}, +gcn(){return"Ithebhu $tabIndex kwangu-$tabCount"}, +gbX(){return"Buka amalayisense"}} +A.aHU.prototype={} +A.aHV.prototype={} +A.aHW.prototype={} +A.aHX.prototype={} +A.aHY.prototype={} +A.aHZ.prototype={} +A.aI_.prototype={} +A.aI0.prototype={} +A.aI1.prototype={} +A.aI2.prototype={} +A.aI3.prototype={} +A.aI4.prototype={} +A.aI5.prototype={} +A.ac6.prototype={} +A.aI6.prototype={} +A.aI7.prototype={} +A.ac7.prototype={} +A.aI8.prototype={} +A.aI9.prototype={} +A.aIa.prototype={} +A.aIb.prototype={} +A.aIc.prototype={} +A.aId.prototype={} +A.aIe.prototype={} +A.aIf.prototype={} +A.ac8.prototype={} +A.aIg.prototype={} +A.aIh.prototype={} +A.aIi.prototype={} +A.aIj.prototype={} +A.aIk.prototype={} +A.aIl.prototype={} +A.aIm.prototype={} +A.aIn.prototype={} +A.aIo.prototype={} +A.aIp.prototype={} +A.aIq.prototype={} +A.aIr.prototype={} +A.aIs.prototype={} +A.aIt.prototype={} +A.aIu.prototype={} +A.aIv.prototype={} +A.aIw.prototype={} +A.aIx.prototype={} +A.aIy.prototype={} +A.aIz.prototype={} +A.aIA.prototype={} +A.aIB.prototype={} +A.aIC.prototype={} +A.aID.prototype={} +A.aIE.prototype={} +A.ac9.prototype={} +A.aIF.prototype={} +A.aIG.prototype={} +A.aIH.prototype={} +A.aII.prototype={} +A.aIJ.prototype={} +A.aIK.prototype={} +A.aIL.prototype={} +A.aIM.prototype={} +A.aIN.prototype={} +A.aIO.prototype={} +A.aIP.prototype={} +A.aIQ.prototype={} +A.aIR.prototype={} +A.aIS.prototype={} +A.aIT.prototype={} +A.aIU.prototype={} +A.aIV.prototype={} +A.aIW.prototype={} +A.aIX.prototype={} +A.aIY.prototype={} +A.aIZ.prototype={} +A.aJ_.prototype={} +A.aJ0.prototype={} +A.aJ1.prototype={} +A.aJ2.prototype={} +A.aJ3.prototype={} +A.aJ4.prototype={} +A.aJ5.prototype={} +A.aJ6.prototype={} +A.aJ7.prototype={} +A.aJ8.prototype={} +A.aJ9.prototype={} +A.aJa.prototype={} +A.aJb.prototype={} +A.aJc.prototype={} +A.aJd.prototype={} +A.aca.prototype={} +A.aJe.prototype={} +A.aJf.prototype={} +A.aJg.prototype={} +A.aJh.prototype={} +A.aJi.prototype={} +A.aJj.prototype={} +A.aJk.prototype={} +A.acb.prototype={} +A.aJl.prototype={} +A.aJm.prototype={} +A.aJn.prototype={} +A.aJo.prototype={} +A.aJp.prototype={} +A.aJq.prototype={} +A.aJr.prototype={} +A.aJs.prototype={} +A.aJt.prototype={} +A.aJu.prototype={} +A.aJv.prototype={} +A.aJw.prototype={} +A.aJx.prototype={} +A.acc.prototype={} +A.aJy.prototype={} +A.acd.prototype={} +A.aJz.prototype={} +A.aJA.prototype={} +A.aJB.prototype={} +A.auQ.prototype={ +aA0(a){return this.b.d4(a)}, +azZ(a){return this.c.d4(a)}, +aA_(a){return this.e.d4(a)}, +aaG(a){return this.f.d4(a)}, +X2(a){return this.r.d4(a)}, +acG(a){var s,r +try{s=a!=null?this.c.akt(a,!0,!1):null +return s}catch(r){if(t.bE.b(A.ag(r)))return null +else throw r}}, +gaCj(){return this.f.ghv().at}, +gaay(){return(this.f.ghv().dy+1)%7}, +aaE(a){return this.x.d4(a)}, +afk(a){return B.c.jL(this.gcu(),"$modalRouteContentName",a)}, +auI(a){return B.c.jL(this.gbF(),"$applicationName",a)}, +ZB(a,b){var s=this.x +return B.c.jL(B.c.jL(this.gcn(),"$tabIndex",s.d4(b)),"$tabCount",s.d4(a))}, +gc7(){return null}, +gbr(){return null}, +gcO(){return null}, +gcN(){return null}, +gcE(){return null}, +abK(a){var s=this,r=s.gc7(),q=s.gbr(),p=s.gcO(),o=s.gcN() +return B.c.jL(A.cJ7(a,s.gcE(),s.a,o,q,s.gbt(),p,r),"$licenseCount",s.x.d4(a))}, +gcS(){return null}, +gcm(){return null}, +gcR(){return null}, +gcQ(){return null}, +gcH(){return null}, +aED(a){var s=this,r=s.gcS(),q=s.gcm(),p=s.gcR(),o=s.gcQ() +return B.c.jL(A.cJ7(a,s.gcH(),s.a,o,q,s.gct(),p,r),"$remainingCount",s.x.d4(a))}, +$ib0:1} +A.aRh.prototype={ +Cx(a){return $.cEa().p(0,a.gi4(0))}, +fB(a,b){return $.dir.cP(0,b,new A.c5D(b))}, +Ao(a){return!1}, +k(a){return"GlobalMaterialLocalizations.delegate("+$.cEa().a+" locales)"}} +A.c5D.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i,h=null +A.cT4() +s=this.a +r=A.Zh(s.pY("_")) +if(A.as7(r)){q=A.a1y(r) +p=A.cw6(r) +o=A.cw5(r) +n=A.bby(r) +m=A.cw3(r) +l=A.bbA(r) +k=A.cw2(r)}else if(A.as7(s.gi4(0))){q=A.a1y(s.gi4(0)) +p=A.cw6(s.gi4(0)) +o=A.cw5(s.gi4(0)) +n=A.bby(s.gi4(0)) +m=A.cw3(s.gi4(0)) +l=A.bbA(s.gi4(0)) +k=A.cw2(s.gi4(0))}else{q=A.a1y(h) +p=A.cw6(h) +o=A.cw5(h) +n=A.bby(h) +m=A.cw3(h) +l=A.bbA(h) +k=A.cw2(h)}if(A.cyf(r)){j=A.buU(r) +i=A.cye("00",r)}else if(A.cyf(s.gi4(0))){j=A.buU(s.gi4(0)) +i=A.cye("00",s.gi4(0))}else{j=A.buU(h) +i=A.cye("00",h)}s=A.dsy(s,q,p,o,n,m,l,k,j,i) +s.toString +return new A.dc(s,t.az)}, +$S:842} +A.csP.prototype={ +$2(a,b){var s,r=B.b4l.i(0,a) +if($.amp() instanceof A.Wf){$.dkQ=A.dlb() +$.b25=$.b1K=null}if($.b2Q() instanceof A.Wf)$.drp=A.dla() +if(r==null)A.C(A.aM("Missing DateTime formatting patterns",null)) +s=b.a +if(a!==s)A.C(A.ey(A.a([a,s],t._m),"Locale does not match symbols.NAME",null)) +J.id($.amp(),s,b) +J.id($.b2Q(),s,r)}, +$S:843} +A.auR.prototype={$ib5:1, +gd5(){return this.a}} +A.aZU.prototype={ +Cx(a){return $.cEd().p(0,a.gi4(0))}, +fB(a,b){return $.djV.cP(0,b,new A.cnd(b))}, +Ao(a){return!1}, +k(a){return"GlobalWidgetsLocalizations.delegate("+$.cEd().a+" locales)"}} +A.cnd.prototype={ +$0(){var s=A.dsD(this.a) +s.toString +return new A.dc(s,t.E8)}, +$S:844} +A.bxA.prototype={ +H(){return"PlatformTarget."+this.b}} +A.aBv.prototype={ +a90(a){var s=null,r=A.d6b(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s) +return A.cHU(!1,this.f,B.i,s,s,s,s,s,this.e,s,r)}, +a8X(a){var s=A.d3H(B.C,B.e8,this.f,B.fv,null,44,this.e,null,0.4) +return s}} +A.zL.prototype={ +a90(a){var s,r,q,p=this,o=null,n=p.Q,m=n==null?o:n.$2(a,A.duo(a)) +n=p.w +if(n==null)n=o +s=p.y +if(s==null)s=B.cq +r=m==null +q=r?o:24 +if(q==null)q=24 +r=r?o:m.z +return A.lx(B.C,!1,p.x,o,o,!0,o,o,o,o,p.e,q,o,o,B.bG,n,s,o,o,o,o,r,o)}, +a8X(a){var s,r,q=this +A.cyv(a) +a.a0(t.Y8) +s=q.y +if(s==null)s=null +r=q.w +if(r==null)r=null +return A.I4(B.C,B.e8,q.e,q.x,B.fv,null,44,r,s,0.4)}} +A.aBy.prototype={ +H(){return"PlatformStyle."+this.b}} +A.wx.prototype={ +a90(a){var s=null,r=A.VJ(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s) +return A.nq(!1,this.f,B.i,s,!0,s,s,s,s,this.e,s,r)}, +a8X(a){return A.I4(B.C,B.e8,this.f,null,B.fv,null,44,this.e,null,0.4)}} +A.a7b.prototype={ +q(a){if(A.bc(a)===B.y)return this.a90(a) +else if(A.bc(a)===B.bhS)return this.a8X(a) +return A.C(A.aq("This platform is not supported: "+A.bL().k(0)))}} +A.a10.prototype={ +J(){return new A.aMe(B.f)}} +A.aMe.prototype={ +q(a){var s=this.a +s.toString +return s.hO(a,this.gc6())}} +A.apL.prototype={ +dv(a){return A.d3y(this)}} +A.a1_.prototype={ +gc6(){var s,r=this.d +if(r===$){s=this.c +s.toString +t.jA.a(s) +r!==$&&A.a_() +this.d=s +r=s}return r}} +A.apK.prototype={ +ga2d(){var s=this.bO +return s===$?this.bO=A.Lj(this,!0):s}, +c5(){var s,r,q,p,o=this +o.aQS() +s=A.Lj(o,!0) +if(o.ga2d()!==s){o.bO=s +for(r=o.be.gbm(0),q=A.z(r),q=q.h("@<1>").a1(q.y[1]),r=new A.c4(J.au(r.a),r.b,q.h("c4<1,2>")),q=q.y[1];r.t();){p=r.a;(p==null?q.a(p):p).aO(0)}o.be.V(0)}}, +dN(){var s,r,q,p,o,n=this +try{n.bj=n.be +for(s=0,q=n.bU;s").a1(p.y[1]),q=new A.c4(J.au(q.a),q.b,p.h("c4<1,2>")),p=p.y[1];q.t();){o=q.a +r=o==null?p.a(o):o +J.GT(r)}n.bj=null}}, +dl(a,b){if(this.e==null)A.C(A.a0(u.w)) +return b.a(J.d1i(this.be.cP(0,a,new A.baB(this,a,b))))}, +oH(){var s,r,q,p +this.aQT() +for(s=this.be.gbm(0),r=A.z(s),r=r.h("@<1>").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),r=r.y[1];s.t();){q=s.a;(q==null?r.a(q):q).aO(0)}for(s=this.bU,p=0;p")).ga2(0)) +s.n(0,b,c)}} +A.b7R.prototype={ +$1(a){var s=this.b,r=this.c +s.a.F(0,r) +s.aj8(0,r,a) +this.a.a=a}, +$S:846} +A.aFH.prototype={ +l(a,b){var s +if(b==null)return!1 +if(J.az(b)!==A.I(this))return!1 +if(b instanceof A.aFH)if(B.B.l(0,B.B))s=!0 +else s=!1 +else s=!1 +return s}, +gv(a){return A.ad(B.B,14,7,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +k(a){return"SvgTheme(currentColor: "+B.B.k(0)+", fontSize: 14, xHeight: 7)"}} +A.np.prototype={ +Hv(a){return new A.dc(null,A.z(this).h("dc"))}, +a_P(a){a.a0(t.Bt) +return B.a5q}, +b90(a){var s=this.a_P(a) +return this.Hv(a).bf(new A.bJ3(this,s),t.V4)}, +bAd(a){return $.d0C().b.cP(0,this.a7X(a),new A.bJ4(this,a))}, +a7X(a){return new A.aaq(this.a_P(a),this,this.b)}} +A.bJ3.prototype={ +$1(a){var s=this.a +return A.do4(new A.bJ2(s,this.b),a,"Load Bytes",A.z(s).h("np.T?"),t.V4)}, +$S(){return A.z(this.a).h("a8(np.T?)")}} +A.bJ2.prototype={ +$1(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d="PathOps library was not initialized.",c=this.a.Z1(a1),b=t.N,a=A.od(10,t.ik),a0=new A.uA(new A.aFI(new A.aQ(4278190080),14,7),null,new A.aJT(c,B.AM,!1,!1,!1,!1,!1).gaz(0),"Svg loader",!1,new A.aVw(A.N(b,t.Pg),A.N(b,t.R1),A.N(b,t.YN),A.N(b,t.lf)),a,A.b9(b),B.id) +a0.y=a0.x=a0.w=!1 +a0.bdG() +c=a0.Q +c.toString +s=new A.bC_().a_8(c,B.cx) +if(a0.w)A.C(A.dA(d)) +if(a0.x)A.C(A.dA(d)) +if(a0.y)A.C(A.dA(d)) +c=t.S +b=A.N(t.qA,c) +a=A.N(t.Mr,c) +r=A.N(t.Qr,c) +q=A.N(t.aN,c) +p=A.N(t.Rs,c) +o=A.N(t.Gm,c) +n=A.a([],t.mE) +m=A.N(t.D3,c) +l=A.N(t.cw,c) +k=new A.baa(new A.bed(b,a,r,q,p,o,n,A.N(t.K,c),m,l)) +k.a_8(s,null) +c=k.b +c===$&&A.b() +j=k.c +j===$&&A.b() +i=b.$ti.h("bR<1>") +i=A.R(new A.bR(b,i),!0,i.h("B.E")) +b=a.$ti.h("bR<1>") +b=A.R(new A.bR(a,b),!0,b.h("B.E")) +a=r.$ti.h("bR<1>") +a=A.R(new A.bR(r,a),!0,a.h("B.E")) +r=o.$ti.h("bR<1>") +h=q.$ti.h("bR<1>") +g=p.$ti.h("bR<1>") +f=m.$ti.h("bR<1>") +e=l.$ti.h("bR<1>") +return A.fe(A.dlf(new A.aHr(c,j,i,b,A.R(new A.bR(o,r),!0,r.h("B.E")),a,A.R(new A.bR(q,h),!0,h.h("B.E")),A.R(new A.bR(p,g),!0,g.h("B.E")),A.R(new A.bR(m,f),!0,f.h("B.E")),A.R(new A.bR(l,e),!0,e.h("B.E")),n),!1).buffer,0,null)}, +$S(){return A.z(this.a).h("ei(np.T?)")}} +A.bJ4.prototype={ +$0(){return this.a.b90(this.b)}, +$S:847} +A.aaq.prototype={ +gv(a){return A.ad(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){if(b==null)return!1 +return b instanceof A.aaq&&b.a.l(0,this.a)&&b.b.l(0,this.b)&&!0}} +A.aas.prototype={ +Z1(a){return this.c}, +gv(a){return A.ad(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)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.aas)if(b.c===this.c)s=!0 +else s=!1 +else s=!1 +return s}} +A.aap.prototype={ +Z1(a){return B.ai.yF(0,this.c,!0)}, +gv(a){return A.ad(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)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.aap)if(b.c===this.c)s=!0 +else s=!1 +else s=!1 +return s}} +A.aKQ.prototype={ +gv(a){return A.ad(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){if(b==null)return!1 +return b instanceof A.aKQ&&b.a===this.a&&b.c===this.c&&b.b==this.b}, +k(a){var s=this.b +return"VectorGraphicAsset("+(s!=null?s+"/":"")+this.a+")"}} +A.aao.prototype={ +aqX(a){var s=A.cGv(a) +return s}, +Hv(a){var s=this.aqX(a),r=this.d,q=this.c +return s.fB(0,r==null?q:"packages/"+r+"/"+q)}, +Z1(a){return B.ai.yF(0,A.dF(a.buffer,0,null),!0)}, +a7X(a){var s=this +return new A.aaq(s.a_P(a),new A.aKQ(s.c,s.d,s.aqX(a)),s.b)}, +gv(a){var s=this +return A.ad(s.c,s.d,null,s.a,s.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)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.aao)if(b.c===this.c)if(b.d==this.d)s=!0 +else s=!1 +else s=!1 +else s=!1 +return s}, +k(a){return"SvgAssetLoader("+this.c+")"}} +A.aar.prototype={ +Hv(a){return this.bEf(a)}, +bEf(a){var s=0,r=A.p(t.nc),q,p=this,o,n +var $async$Hv=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=A.cCf() +n=o==null?new A.Ph(A.b9(t.lZ)):o +s=3 +return A.i(n.KX("GET",A.di(p.c,0,null),null),$async$Hv) +case 3:q=c.w +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Hv,r)}, +Z1(a){a.toString +return B.ai.yF(0,a,!0)}, +gv(a){return A.ad(this.c,null,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)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.aar)if(b.c===this.c)s=!0 +else s=!1 +else s=!1 +return s}, +k(a){return"SvgNetworkLoader("+this.c+")"}} +A.bIX.prototype={} +A.aFG.prototype={ +q(a){var s=this,r=null +return new A.abQ(s.r,s.c,s.d,s.e,B.C,!1,s.z,s.Q,B.k,s.w,r,r,r,B.bk6,!0,r)}} +A.bJg.prototype={ +py(a,b){var s,r=this.a,q=A.z(r) +if(A.c6(b)===B.ma)return b.h("bg<0>").a(new A.dw(r,q.h("dw<1>"))) +else{q=q.h("dw<1>") +s=q.h("oX") +return new A.tC(new A.oX(new A.bJh(b),new A.dw(r,q),s),s.h("@").a1(b).h("tC<1,2>"))}}} +A.bJh.prototype={ +$1(a){return this.a.b(a)}, +$S:60} +A.aau.prototype={ +J(){return new A.aav(null,null,B.f)}} +A.aav.prototype={ +gqM(){var s=this.a.c==null?null:1 +return s==null?0:s}, +grM(){var s=this.a.d==null?null:1 +return s==null?0:s}, +a8(){var s,r=this,q=null +r.an() +r.fr=r.w=r.x=!1 +r.f=r.amF() +r.r=r.ame() +r.e=B.h +r.a.toString +r.y=A.bQ(q,A.cp(0,0,0,400,0,0),q,1,0,r) +r.a.toString +r.z=A.bQ(q,A.cp(0,0,0,400,0,0),q,1,1,r) +r.Q=A.bQ(q,B.K,q,1,q,r) +s=r.y +r.a.toString +r.at=A.cI(B.tF,s,q) +s=r.y +r.a.toString +r.ax=A.cI(B.tF,s,q) +r.ay=A.cI(B.n7,r.z,q) +r.ch=A.cI(B.H,r.Q,q) +r.aXR()}, +amF(){var s,r +if(this.a.c==null)return 0 +for(s=0,r=0;r<1;++r)s+=80 +return s}, +ame(){var s,r +if(this.a.d==null)return 0 +for(s=0,r=0;r<1;++r)s+=80 +return s}, +aXR(){var s=this,r=A.lO().a +r===$&&A.b() +s.dy=r.py(0,t.R_).eB(new A.bJm(s)) +r=A.lO().a +r===$&&A.b() +s.cx=r.py(0,t.gZ).eB(new A.bJn(s)) +r=A.lO().a +r===$&&A.b() +s.cy=r.py(0,t.f_).eB(new A.bJo(s)) +r=A.lO().a +r===$&&A.b() +s.db=r.py(0,t.de).eB(new A.bJp(s)) +s.a.toString +return}, +m(){var s,r=this +r.aqI() +s=r.y +s===$&&A.b() +s.m() +s=r.z +s===$&&A.b() +s.m() +s=r.Q +s===$&&A.b() +s.m() +s=r.dy +if(s!=null)s.ao(0) +s=r.cx +if(s!=null)s.ao(0) +s=r.db +if(s!=null)s.ao(0) +s=r.dx +if(s!=null)s.ao(0) +s=r.cy +if(s!=null)s.ao(0) +r.aSJ()}, +c5(){this.dH() +this.aqI() +this.aVS()}, +b1(a){var s=this +s.bc(a) +s.f=s.amF() +s.r=s.ame() +s.a.toString +s.bfX(a)}, +bfX(a){this.a.toString}, +aVS(){var s,r=this +r.a.toString +s=r.c +s.toString +s=A.lI(s) +if(s==null)s=null +else{s=s.d +s.toString}r.CW=s +if(s!=null)s.dy.a3(0,r.garo())}, +aqI(){var s=this.CW +if(s!=null)s.dy.O(0,this.garo())}, +bgU(){var s=this,r=s.CW,q=r==null?null:r.dy.a +if(q==null)q=!1 +r=s.e +r===$&&A.b() +if(r.a!==0)if(q){r=s.fy +r===$&&A.b() +r=!r}else r=!1 +else r=!1 +if(r){s.qe() +s.JD()}}, +bbz(a){var s,r +this.fy===$&&A.b() +s=A.lO().a +s===$&&A.b() +r=this.a.a +r.toString +s.a.B(0,new A.Pq(r)) +this.JD()}, +bbB(a){var s,r,q,p=this +p.fy===$&&A.b() +if(p.grM()<=0)if(a.b.a>=0){s=p.e +s===$&&A.b() +s=s.a>=0}else s=!1 +else s=!1 +if(s)return +if(p.gqM()<=0)if(a.b.a<=0){s=p.e +s===$&&A.b() +s=s.a<=0}else s=!1 +else s=!1 +if(s)return +s=p.k1 +s===$&&A.b() +r=s&&p.grM()>0&&p.a.d[0].gYQ() +s=p.id +s===$&&A.b() +if(s)if(p.gqM()>0){p.a.c.toString +q=!0}else q=!1 +else q=!1 +if(r||q)p.blb(a) +else p.blc(a)}, +blb(a){var s,r=this,q=r.e +q===$&&A.b() +q=q.S(0,new A.j(a.b.a,0)) +r.e=q +r.a.toString +if(Math.abs(q.a)>0.75*r.d){if(!r.x){q=A.lO().a +q===$&&A.b() +s=r.a.a +s.toString +q.a.B(0,new A.EP(s,!0)) +r.x=!0 +A.yY()}}else if(r.x){q=A.lO().a +q===$&&A.b() +s=r.a.a +s.toString +q.a.B(0,new A.EP(s,!1)) +r.x=!1 +A.yY()}q=r.e.a +s=r.d +if(Math.abs(q)>s)if(q<0)r.e=new A.j(-s,0) +else r.e=new A.j(s,0) +r.aCd() +r.C(new A.bJt())}, +blc(a){var s,r,q=this,p=q.e +p===$&&A.b() +s=p.a +if(s===0){r=a.b.a +if(r<0)q.id=!0 +else if(r>0)q.k1=!0}r=q.id +r===$&&A.b() +if(r){r=q.f +r===$&&A.b() +s=-s>r&&a.b.a<0 +r=a.b.a +p=s?q.e=p.S(0,new A.j(r/9,0)):q.e=p.S(0,new A.j(r,0)) +s=-q.f-100 +if(p.ar&&a.b.a>0 +r=a.b.a +p=s?q.e=p.S(0,new A.j(r/9,0)):q.e=p.S(0,new A.j(r,0)) +s=q.r+100 +if(p.a>s)q.e=new A.j(s,0)}}q.aCd() +q.C(new A.bJu())}, +aCd(){var s,r=this +if(r.grM()<=0){s=r.e +s===$&&A.b() +s=s.a>0}else s=!1 +if(!s)if(r.gqM()<=0){s=r.e +s===$&&A.b() +s=s.a<0}else s=!1 +else s=!0 +if(s)r.e=B.h}, +a4L(a){return this.bbx(a)}, +bbx(a){var s=0,r=A.p(t.H),q,p=this,o,n,m,l +var $async$a4L=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p.fy===$&&A.b() +if(!(p.grM()>0&&p.a.d[0].gYQ()))if(p.gqM()>0){p.a.c.toString +o=!0}else o=!1 +else o=!0 +if(p.x&&o){n=new A.bJq(p) +m=p.id +m===$&&A.b() +if(m&&p.a.c!=null){m=p.a.c +if(m!=null)m[0].f.$1(n)}else{m=p.k1 +m===$&&A.b() +if(m&&p.a.d!=null){m=p.a.d +if(m!=null)m[0].O8(n)}}}else{m=a.a.a.a +if(m<0){m=p.k1 +m===$&&A.b() +if(!m&&p.gqM()>0)p.T_(0,!0) +else p.qe() +s=1 +break}else if(m>0){m=p.id +m===$&&A.b() +if(!m&&p.grM()>0)p.T_(0,!1) +else p.qe() +s=1 +break}m=p.id +m===$&&A.b() +if(m){m=p.e +m===$&&A.b() +l=p.f +l===$&&A.b() +if(-m.a")) +q=o.y +q===$&&A.b() +o.a.toString +q.e=A.cp(0,0,0,400,0,0) +q.cM(0)}, +T_(a,b){return this.bcG(0,!0,b)}, +qe(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$qe=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.fx=!0 +p.aqS() +if(p.c!=null){o=p.e +o===$&&A.b() +n=t.Y +m=p.ax +m===$&&A.b() +m.a3(0,new A.bJx(p)) +p.as=new A.aB(m,new A.aP(o.a,0,n),n.h("aB")) +n=p.y +n===$&&A.b() +p.a.toString +n.e=A.cp(0,0,0,400,0,0) +n=n.cM(0) +n.Pf(new A.bJy(p)) +q=n +s=1 +break}case 1:return A.n(q,r)}}) +return A.o($async$qe,r)}, +JD(){var s,r=this +if(r.gqM()>0){s=r.a.c +if(s!=null)B.b.ga2(s)}if(r.grM()>0){s=r.a.d +if(s!=null)B.b.ga2(s).gbJV()}}, +aqS(){this.w=!0 +var s=this.y +s===$&&A.b() +s.sj(0,0) +this.w=!1}, +Mp(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$Mp=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=t.Y +n=p.ay +n===$&&A.b() +n.a3(0,new A.bJz(p)) +p.as=new A.aB(n,new A.aP(1,0.01,o),o.h("aB")) +o=p.z +o===$&&A.b() +o=o.eI(0) +o.Pf(new A.bJA()) +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Mp,r)}, +gaId(){var s,r=this,q=r.c +q.toString +q=A.cG(q,null) +s=q==null?null:q.CW +q=A.N(t.u,t.xR) +q.n(0,B.m9,new A.dE(new A.bJC(),new A.bJD(r,s),t.UN)) +r.a.toString +q.n(0,B.bua,new A.dE(new A.bJE(),new A.bJF(r,s),t.wT)) +return q}, +q(a){var s,r,q,p,o=this,n=null,m=o.a +m.toString +o.fy=!1 +o.go=!1 +s=o.e +s===$&&A.b() +r=s.a +o.id=r<0 +o.k1=r>0 +q=o.Q +q===$&&A.b() +q=q.r +if(!(q!=null&&q.a!=null))r=Math.abs(r)>20 +else r=!0 +p=A.uP(new A.ba(1/0,n,A.n6(m.e,r,n),n),s,!1) +s=o.fr +r=o.ay +r===$&&A.b() +m=o.gaId() +q=o.a.as +return A.n6(A.a9K(B.v,0,new A.mu(new A.m7(q,A.o1(new A.fV(new A.bJv(o,B.al,p),n),new A.c_(B.D,n,n,n,n,n,n,B.U),B.tI),n),m,B.be,!1,n),r),s,n)}, +aWT(){var s,r,q,p,o,n,m,l=this,k=l.e +k===$&&A.b() +if(k.a<0||l.grM()<=0)return B.al +s=A.wj(l.grM(),new A.bJi(l),t.C) +k=l.x&&l.a.d[0].gYQ() +r=l.a +q=r.a +q.toString +p=l.r +p===$&&A.b() +r=r.d +o=l.d +n=l.e +m=r[0].gYQ() +return A.cMx(r,A.po(0,new A.d4(B.ar,null,B.am,B.k,s,null)),o,n.a,!0,m,q,l,p,k)}, +aXo(){var s,r,q,p,o,n,m=this,l=m.e +l===$&&A.b() +if(l.a>0||m.gqM()<=0)return B.al +s=A.wj(m.gqM(),new A.bJj(m),t.C) +if(m.x){m.a.c.toString +l=!0}else l=!1 +r=m.a +q=r.a +q.toString +p=m.f +p===$&&A.b() +r=r.c +r.toString +o=m.d +n=m.e +return A.cMx(r,A.po(0,new A.d4(B.ar,null,B.am,B.k,s,null)),o,n.a,!0,!0,q,m,p,l)}} +A.bJm.prototype={ +$1(a){var s,r +if(a.gAl(a)){s=this.a +s.a.toString +r=null.gbJ_() +s.a.toString +r=r.p(0,null) +s=r}else s=!1 +if(s)this.a.C(new A.bJl()) +else if(!a.gAl(a))this.a.go===$&&A.b()}, +$S:848} +A.bJl.prototype={ +$0(){}, +$S:0} +A.bJn.prototype={ +$1(a){var s,r=this.a +if(!a.a.l(0,r.a.a)){s=r.e +s===$&&A.b() +if(s.a!==0){s=r.fy +s===$&&A.b() +if(!s){s=r.Q +s===$&&A.b() +s=s.r +s=!(s!=null&&s.a!=null)}else s=!1}else s=!1}else s=!1 +if(s){r.qe() +r.JD()}}, +$S:849} +A.bJo.prototype={ +$1(a){var s=this.a,r=s.e +r===$&&A.b() +if(r.a!==0)return +a.gBM(a) +s.a.toString +return}, +$S:850} +A.bJp.prototype={ +$1(a){var s=this.a +s.fr=a.a +if(s.c!=null)s.C(new A.bJk())}, +$S:851} +A.bJk.prototype={ +$0(){}, +$S:0} +A.bJt.prototype={ +$0(){}, +$S:0} +A.bJu.prototype={ +$0(){}, +$S:0} +A.bJq.prototype={ +$1(a){return this.aHD(a)}, +aHD(a){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=a?2:4 +break +case 2:p=A.lO().a +p===$&&A.b() +p.a.B(0,new A.z3(!0)) +p=q.a +p.a.toString +o=A.lO().a +o===$&&A.b() +n=p.a.a +n.toString +o.a.B(0,new A.TP(n)) +s=5 +return A.i(p.Mp(),$async$$1) +case 5:s=3 +break +case 4:p=q.a +p.x=!1 +p.JD() +s=6 +return A.i(p.qe(),$async$$1) +case 6:case 3:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:91} +A.bJs.prototype={ +$0(){var s,r,q=this.a +if(q.w)return +s=q.as +s===$&&A.b() +r=s.a +q.e=new A.j(s.b.ah(0,r.gj(r)),0) +q.C(new A.bJr())}, +$S:0} +A.bJr.prototype={ +$0(){}, +$S:0} +A.bJx.prototype={ +$0(){var s,r,q=this.a +if(q.w)return +s=q.as +s===$&&A.b() +r=s.a +q.e=new A.j(s.b.ah(0,r.gj(r)),0) +q.C(new A.bJw())}, +$S:0} +A.bJw.prototype={ +$0(){}, +$S:0} +A.bJy.prototype={ +$0(){this.a.fx=!1}, +$S:0} +A.bJz.prototype={ +$0(){var s=this.a,r=s.id +r===$&&A.b() +if(r){r=s.f +r===$&&A.b() +s.e=new A.j(-r,0)}else{r=s.k1 +r===$&&A.b() +if(r){r=s.r +r===$&&A.b() +s.e=new A.j(r,0)}}}, +$S:0} +A.bJA.prototype={ +$0(){var s=A.lO().a +s===$&&A.b() +s.a.B(0,new A.z3(!1))}, +$S:0} +A.bJC.prototype={ +$0(){return A.t5(null,null,null)}, +$S:158} +A.bJD.prototype={ +$1(a){var s,r=this.a +r.fy===$&&A.b() +s=r.e +s===$&&A.b() +a.bU=s.a!==0?new A.bJB(r):null +a.b=this.b}, +$S:159} +A.bJB.prototype={ +$0(){var s,r=this.a +r.fy===$&&A.b() +s=r.e +s===$&&A.b() +if(s.a!==0){s=r.y +s===$&&A.b() +s=s.r +s=!(s!=null&&s.a!=null)}else s=!1 +if(s){r.qe() +r.JD()}}, +$S:0} +A.bJE.prototype={ +$0(){var s=t.S,r=A.a([],t.t),q=A.dV(s),p=A.am2() +return new A.v4(B.m,B.h_,A.am1(),B.eS,A.N(s,t.GY),r,A.N(s,t.SP),q,null,null,p,A.N(s,t.F))}, +$S:853} +A.bJF.prototype={ +$1(a){var s,r=this.a +a.ch=r.gbby() +a.CW=r.gbbA() +a.cx=r.gbbw() +a.b=this.b +s=r.id +s===$&&A.b() +if(!s){s=r.k1 +s===$&&A.b()}else s=!0 +a.eX=s +a.er=r.gqM()>0 +a.dP=r.grM()>0}, +$S:854} +A.bJv.prototype={ +$2(a,b){var s,r,q,p,o=this.a +o.d=b.b +s=o.e +s===$&&A.b() +if(s.a!==0){s=o.Q +s===$&&A.b() +s=s.r +if(!(s!=null&&s.a!=null)){s=o.fy +s===$&&A.b() +r=s}else r=!0}else r=!0 +q=r?B.al:o.aXo() +p=r?B.al:o.aWT() +return new A.d4(B.c9,null,B.am,B.k,A.a([this.b,this.c,q,p],t.p),null)}, +$S:209} +A.bJi.prototype={ +$1(a){var s=this.a,r=s.grM()-1-a,q=s.a.d +if(!q[0].gbJN()&&s.a.d[0].gYQ())return new A.Vy(r,!1,null) +else return new A.Vz(r,!1,null)}, +$S:344} +A.bJj.prototype={ +$1(a){var s=this.a,r=s.gqM()-1-a +if(s.gqM()===1){s.a.c.toString +s=!0}else s=!1 +if(s)return new A.Vy(r,!0,null) +else return new A.Vz(r,!0,null)}, +$S:344} +A.aFJ.prototype={} +A.v4.prototype={ +jB(a){var s=this,r=a.gw2().a,q=s.eX +q===$&&A.b() +if(!q){q=s.er +q===$&&A.b() +if(!(q&&r<0)){q=s.dP +q===$&&A.b() +q=q&&r>0||r===0}else q=!0}else q=!0 +if(q)s.a0I(a)}} +A.aj8.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.Pq.prototype={} +A.EP.prototype={} +A.TP.prototype={} +A.z3.prototype={} +A.bJG.prototype={} +A.Vx.prototype={ +ed(a){var s=this +return a.f!==s.f||a.w!==s.w||!a.y.l(0,s.y)||a.Q!==s.Q||a.as!==s.as||a.at!==s.at}, +gbq(){return this.r}} +A.Vy.prototype={ +J(){return new A.aXu(null,null,B.f)}} +A.aXu.prototype={ +a8(){var s,r=this +r.an() +s=r.a +r.z=s.c===0 +r.e=s.d?B.cy:B.c9 +$.an.xr$.push(new A.cgL(r)) +r.bj6()}, +bj7(a){var s,r,q,p=this +p.asr(p.ch) +s=p.e +if(a){s===$&&A.b() +r=p.a.d?B.c9:B.cy +q=p.CW +q===$&&A.b() +q.a3(0,new A.cgH(p,new A.aB(q,new A.ON(s,r),t.kt.h("aB")))) +r=p.ch +if(r!=null)r.cM(0)}else{s===$&&A.b() +r=p.a.d?B.cy:B.c9 +q=p.CW +q===$&&A.b() +q.a3(0,new A.cgI(p,new A.aB(q,new A.ON(s,r),t.kt.h("aB")))) +r=p.ch +if(r!=null)r.cM(0)}}, +bj6(){var s=this,r=A.lO().a +r===$&&A.b() +s.r=r.py(0,t.Zd).eB(new A.cgC(s)) +r=A.lO().a +r===$&&A.b() +s.w=r.py(0,t.P5).eB(new A.cgD(s)) +r=A.lO().a +r===$&&A.b() +s.x=r.py(0,t.Ed).eB(new A.cgE(s))}, +bj8(){var s=this +s.y=!1 +s.e=s.a.d?B.cy:B.c9 +s.C(new A.cgJ())}, +bj5(){this.f=new A.cgB(this)}, +L5(){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$L5=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.Q=!0 +q.asr(q.ax) +p=q.d +p===$&&A.b() +o=q.a.d +n=q.as +if(o){n===$&&A.b() +o=-n.Q}else{n===$&&A.b() +o=n.Q}n=t.Y +m=q.cx +m===$&&A.b() +m.a3(0,new A.cgA(q)) +q.db=new A.aB(m,new A.aP(p,o,n),n.h("aB")) +n=q.ax +p=n==null?null:n.cM(0) +s=2 +return A.i(t.uz.b(p)?p:A.dO(p,t.H),$async$L5) +case 2:return A.n(null,r)}}) +return A.o($async$L5,r)}, +q(a){var s,r,q,p,o,n,m=this,l=null,k=a.a9o(B.ZL,t.eX) +k.toString +m.as=k +s=m.a +r=k.f[s.c] +m.at=r +if(!m.y&&!m.Q)m.d=k.w +s=s.d +q=s?1:-1 +p=m.d +p===$&&A.b() +o=A.ed(0) +s=s?B.c9:B.cy +n=m.e +n===$&&A.b() +return A.dn(l,A.uP(A.o1(new A.fl(s,l,l,A.bB(n,m.bj3(!1),B.i,l,l,l,l,l,l,l,B.f0,l,l,Math.abs(p)),l),new A.c_(r.e,l,l,o,l,l,l,B.U),B.cB),new A.j(q*k.Q+p,0),!0),B.m,!1,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,new A.cgK(m),l,l,l,l,l,l,l,!1,B.ac)}, +bj3(a){var s,r,q=this +if(q.Q)return B.al +if(a)q.at===$&&A.b() +s=q.at +s===$&&A.b() +if(a)r=B.al +else r=s.r +s=A.cS(A.a([r,q.bj4(s,a)],t.p),B.t,null,B.cu,B.u,null,null,B.x) +return s}, +bj4(a,b){if(b)return B.al +else return B.al}, +m(){var s=this,r=s.ax +if(r!=null)r.m() +r=s.ch +if(r!=null)r.m() +r=s.ay +if(r!=null)r.m() +r=s.r +if(r!=null)r.ao(0) +r=s.w +if(r!=null)r.ao(0) +r=s.x +if(r!=null)r.ao(0) +s.aUc()}, +asr(a){this.dx=!0 +if(a!=null)a.sj(0,0) +this.dx=!1}} +A.cgL.prototype={ +$1(a){var s,r=null,q=this.a +q.ax=A.bQ(r,B.CR,r,1,r,q) +s=A.bQ(r,B.bd,r,1,r,q) +q.ch=s +q.CW=A.cI(B.Cw,s,r) +s=q.ax +s.toString +q.cx=A.cI(B.n7,s,r) +if(q.a.c===0)q.at===$&&A.b() +q.bj5()}, +$S:5} +A.cgH.prototype={ +$0(){var s,r,q=this.a +if(q.dx)return +s=this.b +r=s.a +q.e=s.b.ah(0,r.gj(r)) +q.C(new A.cgG())}, +$S:0} +A.cgG.prototype={ +$0(){}, +$S:0} +A.cgI.prototype={ +$0(){var s,r,q=this.a +if(q.dx)return +s=this.b +r=s.a +q.e=s.b.ah(0,r.gj(r)) +q.C(new A.cgF())}, +$S:0} +A.cgF.prototype={ +$0(){}, +$S:0} +A.cgC.prototype={ +$1(a){return this.aHR(a)}, +aHR(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +o=p.as +o===$&&A.b() +if(J.q(a.a,o.y)&&p.z)p.bj7(a.b) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:345} +A.cgD.prototype={ +$1(a){var s=this.a,r=s.as +r===$&&A.b() +if(a.a.l(0,r.y))s.L5()}, +$S:346} +A.cgE.prototype={ +$1(a){var s=a.a,r=this.a,q=r.as +q===$&&A.b() +if(s.l(0,q.y))r.at===$&&A.b() +if(!s.l(0,r.as.y)&&r.y)r.bj8()}, +$S:347} +A.cgJ.prototype={ +$0(){}, +$S:0} +A.cgB.prototype={ +$1(a){return this.aHQ(a)}, +aHQ(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=a?2:4 +break +case 2:p=A.lO().a +p===$&&A.b() +p.a.B(0,new A.z3(!0)) +p=q.a +p.as===$&&A.b() +s=5 +return A.i(p.L5(),$async$$1) +case 5:s=6 +return A.i(p.as.ax.Mp(),$async$$1) +case 6:s=3 +break +case 4:p=q.a +p.at===$&&A.b() +p=p.as +p===$&&A.b() +p.ax.qe() +case 3:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:91} +A.cgA.prototype={ +$0(){var s,r,q=this.a +if(q.dx)return +s=q.db +s===$&&A.b() +r=s.a +q.d=s.b.ah(0,r.gj(r)) +q.C(new A.cgz())}, +$S:0} +A.cgz.prototype={ +$0(){}, +$S:0} +A.cgK.prototype={ +$0(){var s,r=this.a +if(r.z)r.at===$&&A.b() +s=r.at +s===$&&A.b() +r=r.f +r===$&&A.b() +s.f.$1(r)}, +$S:0} +A.alB.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.Vz.prototype={ +J(){return new A.aXv(null,null,B.f)}} +A.aXv.prototype={ +a8(){var s=this +s.an() +s.z=s.dx=!1 +s.Q=s.a.c===0 +$.an.xr$.push(new A.ch_(s)) +s.b8F()}, +beG(a){var s,r,q,p,o,n,m=this +m.aqT(m.ch) +m.y=!1 +s=m.ax +if(a){r=m.d +r===$&&A.b() +s===$&&A.b() +q=t.Y +p=m.cx +p===$&&A.b() +p.a3(0,new A.cgU(m)) +m.db=new A.aB(p,new A.aP(r,s.w,q),q.h("aB")) +q=m.ch +if(q!=null)q.cM(0).a.a.j6(new A.cgV(m))}else{s===$&&A.b() +r=s.w +for(q=m.a.c,o=0,n=0;n<=q;++n)o+=80 +q=t.Y +p=m.cx +p===$&&A.b() +p.a3(0,new A.cgW(m)) +m.db=new A.aB(p,new A.aP(r,o*(r/s.as),q),q.h("aB")) +q=m.ch +if(q!=null)q.cM(0).a.a.j6(new A.cgX(m))}}, +b8F(){var s=this,r=A.lO().a +r===$&&A.b() +s.r=r.py(0,t.Zd).eB(new A.cgP(s)) +r=A.lO().a +r===$&&A.b() +s.w=r.py(0,t.P5).eB(new A.cgQ(s)) +r=A.lO().a +r===$&&A.b() +s.x=r.py(0,t.Ed).eB(new A.cgR(s))}, +aqV(){var s=this +s.y=!0 +s.z=!1 +s.a.toString +s.C(new A.cgY())}, +b7x(){this.f=new A.cgO(this)}, +Jn(){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$Jn=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.at=!0 +q.aqT(q.ch) +q.y=!1 +p=q.d +p===$&&A.b() +o=q.a.d +n=q.ax +if(o){n===$&&A.b() +o=-n.Q}else{n===$&&A.b() +o=n.Q}n=t.Y +m=q.cx +m===$&&A.b() +m.a3(0,new A.cgN(q)) +q.db=new A.aB(m,new A.aP(p,o,n),n.h("aB")) +n=q.ch +p=n==null?null:n.cM(0) +s=2 +return A.i(t.uz.b(p)?p:A.dO(p,t.H),$async$Jn) +case 2:return A.n(null,r)}}) +return A.o($async$Jn,r)}, +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=a.a9o(B.ZL,t.eX) +h.toString +j.ax=h +s=j.a.c +j.ay=h.f[s] +r=h.at&&j.Q +if(j.y&&!j.z){q=h.w +if(r)j.d=q +else{for(p=0,o=0;o<=s;++o)p+=80 +j.d=p*(q/h.as)}}h=j.a.d +s=h?1:-1 +n=j.ax +m=j.d +m===$&&A.b() +l=j.ay +k=A.ed(0) +h=h?B.c9:B.cy +return A.dn(i,A.uP(A.o1(new A.fl(h,i,i,A.bB(B.C,j.aWE(!1),B.i,i,i,i,i,i,i,i,i,i,i,80),i),new A.c_(l.e,i,i,k,i,i,i,B.U),B.cB),new A.j(s*n.Q+m,0),!0),B.m,!1,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,new A.cgZ(j),i,i,i,i,i,i,i,!1,B.ac)}, +aWE(a){var s,r,q=this +if(q.at)return B.al +if(a)q.ay===$&&A.b() +s=q.ay +s===$&&A.b() +if(a)r=B.al +else r=s.r +s=A.cS(A.a([r,q.aXj(s,a)],t.p),B.t,null,B.cu,B.u,null,null,B.x) +return s}, +aXj(a,b){if(b)return B.al +else return B.al}, +m(){var s=this,r=s.ch +if(r!=null)r.m() +r=s.CW +if(r!=null)r.m() +r=s.r +if(r!=null)r.ao(0) +r=s.w +if(r!=null)r.ao(0) +r=s.x +if(r!=null)r.ao(0) +s.aUd()}, +aqT(a){this.dx=!0 +if(a!=null)a.sj(0,0) +this.dx=!1}} +A.ch_.prototype={ +$1(a){var s=null,r=this.a,q=A.bQ(s,B.CR,s,1,s,r) +r.ch=q +r.cx=A.cI(B.n7,q,s) +if(r.a.c===0){q=A.bQ(s,B.CN,s,1,s,r) +r.CW=q +r.ay===$&&A.b() +r.cy=A.cI(B.tF,q,s)}r.b7x()}, +$S:5} +A.cgU.prototype={ +$0(){var s,r,q=this.a +if(q.dx)return +s=q.db +s===$&&A.b() +r=s.a +q.d=s.b.ah(0,r.gj(r)) +q.C(new A.cgT())}, +$S:0} +A.cgT.prototype={ +$0(){}, +$S:0} +A.cgV.prototype={ +$0(){this.a.y=!0}, +$S:13} +A.cgW.prototype={ +$0(){var s,r,q=this.a +if(q.dx)return +s=q.db +s===$&&A.b() +r=s.a +q.d=s.b.ah(0,r.gj(r)) +q.C(new A.cgS())}, +$S:0} +A.cgS.prototype={ +$0(){}, +$S:0} +A.cgX.prototype={ +$0(){this.a.y=!0}, +$S:13} +A.cgP.prototype={ +$1(a){return this.aHT(a)}, +aHT(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +o=p.ax +o===$&&A.b() +if(J.q(a.a,o.y)&&p.Q)p.beG(a.b) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:345} +A.cgQ.prototype={ +$1(a){var s=this.a,r=s.ax +r===$&&A.b() +if(a.a.l(0,r.y))s.Jn()}, +$S:346} +A.cgR.prototype={ +$1(a){var s=a.a,r=this.a,q=r.ax +q===$&&A.b() +if(s.l(0,q.y))r.ay===$&&A.b() +if(!s.l(0,r.ax.y)&&r.z)r.aqV()}, +$S:347} +A.cgY.prototype={ +$0(){}, +$S:0} +A.cgO.prototype={ +$1(a){return this.aHS(a)}, +aHS(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=a?2:4 +break +case 2:p=A.lO().a +p===$&&A.b() +p.a.B(0,new A.z3(!0)) +p=q.a +p.ax===$&&A.b() +s=5 +return A.i(p.Jn(),$async$$1) +case 5:s=6 +return A.i(p.ax.ax.Mp(),$async$$1) +case 6:s=3 +break +case 4:p=q.a +p.ay===$&&A.b() +p.aqV() +p=p.ax +p===$&&A.b() +s=7 +return A.i(p.ax.qe(),$async$$1) +case 7:case 3:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:91} +A.cgN.prototype={ +$0(){var s,r,q=this.a +if(q.dx)return +s=q.db +s===$&&A.b() +r=s.a +q.d=s.b.ah(0,r.gj(r)) +q.C(new A.cgM())}, +$S:0} +A.cgM.prototype={ +$0(){}, +$S:0} +A.cgZ.prototype={ +$0(){var s=this.a,r=s.ax +r===$&&A.b() +if(r.ax.fx)return +if(s.Q)s.ay===$&&A.b() +r=s.ay +r===$&&A.b() +s=s.f +s===$&&A.b() +r.f.$1(s)}, +$S:0} +A.alC.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aaw.prototype={ +J(){return new A.aXt(B.f)}} +A.aXt.prototype={ +q(a){var s=this,r=null +return A.dn(r,s.a.d,B.m,!1,r,r,r,r,r,r,r,r,r,r,new A.cgw(s),new A.cgx(s),new A.cgy(s),r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!1,B.ac)}, +aXE(){var s,r,q,p=this,o=p.e +o===$&&A.b() +s=p.d +s===$&&A.b() +r=o.W(0,s) +q=p.b2E(r) +p.a.e.$2(q,r) +switch(q.a){case 0:p.a.toString +break +case 1:p.a.toString +break +case 2:p.a.toString +break +case 3:p.a.toString +break}}, +b2E(a){var s=a.a,r=a.b +if(Math.abs(s)>Math.abs(r))if(s>0)return B.YL +else return B.xL +else if(r>0)return B.qe +else return B.qd}} +A.cgx.prototype={ +$1(a){this.a.d=a.b}, +$S:24} +A.cgy.prototype={ +$1(a){var s=this.a +s.e=a.d +s.a.toString}, +$S:15} +A.cgw.prototype={ +$1(a){this.a.aXE()}, +$S:22} +A.pz.prototype={ +H(){return"SwipeDirection."+this.b}} +A.aCB.prototype={ +X6(a,b,c){return this.bx7(a,b,c)}, +bx7(a,b,c){var s=0,r=A.p(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g +var $async$X6=A.l(function(d,e){if(d===1){p=e +s=q}while(true)switch(s){case 0:h=null +q=3 +m=n.a.i(0,a) +s=m!=null?6:7 +break +case 6:j=m.$1(b) +s=8 +return A.i(t.T8.b(j)?j:A.dO(j,t.CD),$async$X6) +case 8:h=e +case 7:o.push(5) +s=4 +break +case 3:q=2 +g=p +l=A.ag(g) +k=A.aD(g) +j=A.cJ("during a framework-to-plugin message") +A.fs(new A.dl(l,k,"flutter web plugins",j,null,!1)) +o.push(5) +s=4 +break +case 2:o=[1] +case 4:q=1 +if(c!=null)c.$1(h) +s=o.pop() +break +case 5:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$X6,r)}, +Q9(a,b,c){var s=new A.ak($.at,t.Fq) +$.amu().aDQ(b,c,new A.bAa(new A.aI(s,t.yB))) +return s}, +IN(a,b){var s=this.a +if(b==null)s.F(0,a) +else s.n(0,a,b)}} +A.bAa.prototype={ +$1(a){var s,r,q,p +try{this.a.d2(0,a)}catch(q){s=A.ag(q) +r=A.aD(q) +p=A.cJ("during a plugin-to-framework message") +A.fs(new A.dl(s,r,"flutter web plugins",p,null,!1))}}, +$S:63} +A.bxS.prototype={} +A.a3Z.prototype={} +A.bOX.prototype={} +A.cn5.prototype={ +$1(a){var s="height",r="width",q=a.b,p=q.i(0,s),o=q.i(0,r),n=t.N +n=A.N(n,n) +n.n(0,s,"auto") +n.n(0,"min-width","0px") +n.n(0,"min-height","0px") +n.n(0,r,"auto") +if(p!=null)n.n(0,s,p) +if(o!=null)n.n(0,r,o) +return n}, +$S:9} +A.cn6.prototype={ +$2(a,b){return A.a([this.a.aj5(a,B.aA7,new A.aas(a.a.gT1(),null,null))],t.p)}, +$S:861} +A.cn3.prototype={ +$1(a){var s="height",r="width",q=a.b,p=q.i(0,s),o=q.i(0,r),n=t.N +n=A.N(n,n) +n.n(0,s,"auto") +n.n(0,"min-width","0px") +n.n(0,"min-height","0px") +n.n(0,r,"auto") +if(p!=null)n.n(0,s,p+"px") +if(o!=null)n.n(0,r,o+"px") +return n}, +$S:9} +A.cn4.prototype={ +$2(a,b){var s,r,q,p,o,n +if(A.bL()!==B.b4)A.bL() +s=a.a.b +r=this.a +q=s.i(0,"src") +p=r.Dj(q==null?"":q) +if(p==null)return b +o=A.BJ(s,"height") +n=A.BJ(s,"width") +q=s.i(0,"sandbox") +r=A.a([r.bpv(a,p,o,q==null?null:J.b2W(q,A.b4("\\s+",!0,!1,!1)),n)],t.p) +return r}, +$S:525} +A.aZM.prototype={} +A.aki.prototype={ +ne(a,b){var s,r=this +switch(b.a.x){case"video":s=r.azr$ +b.av(0,s==null?r.azr$=new A.bKp(r).gix():s) +break}return r.aRl(0,b)}} +A.akj.prototype={ +ne(a,b){var s,r=this +switch(b.a.x){case"audio":s=r.azs$ +b.av(0,s==null?r.azs$=new A.bK2(r).gix():s) +break}return r.aSQ(0,b)}} +A.akk.prototype={ +a7J(a,b){var s,r,q=this,p=b.b +if(B.c.aC(p,"data:image/svg+xml"))s=q.bym(p) +else{r=A.x5(p) +if((r==null?null:B.c.eV(r.geh(r).toLowerCase(),".svg"))===!0)if(B.c.aC(p,"asset:"))s=q.byl(p) +else s=B.c.aC(p,"file:")?q.byn(p):q.byo(p) +else s=null}if(s==null)return q.aRi(a,b) +return q.aj5(a,b,s)}, +ne(a,b){var s,r=this,q=null +switch(b.a.x){case"svg":s=r.azt$ +b.av(0,s==null?r.azt$=A.je(q,q,new A.cn5(),q,q,q,q,q,q,new A.cn6(r),10):s) +break}return r.aSR(0,b)}} +A.aZN.prototype={ +qx(a){return this.bD5(a)}, +bD5(a){var s=0,r=A.p(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$qx=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:s=3 +return A.i(n.aRk(a),$async$qx) +case 3:if(c){q=!0 +s=1 +break}p=5 +m=A.di(a,0,null) +s=8 +return A.i(A.cBa(m),$async$qx) +case 8:l=c +if(!l){A.fk().$1('Could not launch "'+a+'": unsupported') +q=!1 +s=1 +break}s=9 +return A.i(A.b26(m,B.uZ),$async$qx) +case 9:j=c +q=j +s=1 +break +p=2 +s=7 +break +case 5:p=4 +h=o +k=A.ag(h) +A.fk().$1('Could not launch "'+a+'": '+A.r(k)) +q=!1 +s=1 +break +s=7 +break +case 4:s=2 +break +case 7:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$qx,r)}} +A.aZO.prototype={ +ne(a,b){var s,r=this,q=null +switch(b.a.x){case"iframe":s=r.azu$ +b.av(0,s==null?r.azu$=A.je(q,q,new A.cn3(),q,q,q,q,q,q,new A.cn4(r),10):s) +break}return r.aSS(0,b)}} +A.p0.prototype={ +gaAu(){return!0}, +gGS(){return!0}, +gmo(a){var s,r,q,p,o,n +for(s=this;!0;){if(!s.gaAu())return null +r=s.gbR(s).c +if(r==null)r=B.IN +q=B.b.c2(r,s) +if(q===-1)return null +for(p=q+1;p"),r=new A.bE(o,s),r=new A.bj(r,r.gA(0),s.h("bj")),s=s.h("aa.E");r.t();){q=r.d +p=q==null?s.a(q):q +if(p instanceof A.nX)p=p.gP(0) +if(p!=null)return p}return null}, +i(a,b){return this.qT(b)}, +bmP(a,b){var s=this,r=b.gbR(b)===s?b:b.yu(s),q=s.c;(q==null?s.c=A.a([],t.o1):q).push(r) +return b}, +iw(a,b){return this.bmP(0,b,t.Oq)}, +bEg(a){var s=this,r=a.gbR(a)===s?a:a.yu(s),q=s.c +B.b.eu(q==null?s.c=A.a([],t.o1):q,0,r) +return a}, +Hw(a){return this.bEg(a,t.Oq)}, +k(a){var s,r,q,p,o,n=this,m=$.cCm() +A.fT(n) +if(m.a.get(n)!=null)return"BuildTree#"+A.ef(n)+" (circular)" +s=new A.bu("") +m.n(0,n,s) +s.a+="BuildTree#"+A.ef(n)+" "+n.b.k(0)+":\n" +for(m=n.geg(0),r=m.length,q=0;q0)!==!0}else s=!0 +return s}, +vr(a){var s,r,q,p=this,o=null +if(p===B.tx)return o +s=p.a +if(s==null){r=a.d9(0,t.em) +s=r==null?o:r.b}if(s==null)return o +r=p.c +q=r==null?o:r.o_(a) +if(q==null)return o +return new A.bx(s,q,p.b!=null?B.O:B.bZ,-1)}} +A.kN.prototype={ +a_T(a,b,c){var s,r,q=this,p=null,o=c==null?1:c +switch(q.b.a){case 0:return p +case 1:if(b==null){s=a.d9(0,t.em) +b=s==null?p:s.r}if(b==null)return p +r=b*q.a +o=1 +break +case 2:if(b==null)return p +r=b*q.a/100 +o=1 +break +case 3:r=q.a*96/72 +break +case 4:r=q.a +break +default:r=p}return r*o}, +o_(a){return this.a_T(a,null,null)}, +k(a){var s=B.e.k(this.a),r=this.b +return s+(r===B.kI?"%":r.b)}} +A.I1.prototype={ +FT(a,b,c,d,e,f){var s=this,r=a==null?s.a:a,q=b==null?s.b:b,p=c==null?s.c:c,o=d==null?s.d:d,n=e==null?s.e:e +return new A.I1(r,q,p,o,n,f==null?s.f:f)}, +u9(a){var s=null +return this.FT(a,s,s,s,s,s)}, +a8y(a){var s=null +return this.FT(s,a,s,s,s,s)}, +a8z(a){var s=null +return this.FT(s,s,a,s,s,s)}, +a8B(a){var s=null +return this.FT(s,s,s,a,s,s)}, +a8G(a){var s=null +return this.FT(s,s,s,s,a,s)}, +LZ(a){var s=null +return this.FT(s,s,s,s,s,a)}, +gac_(){var s=this.b +if((s==null?null:s.a>0)!==!0){s=this.c +if((s==null?null:s.a>0)!==!0){s=this.d +s=(s==null?null:s.a>0)===!0}else s=!0}else s=!0 +return s}, +gac0(){var s=this.b +if((s==null?null:s.a>0)!==!0){s=this.c +if((s==null?null:s.a>0)!==!0){s=this.e +s=(s==null?null:s.a>0)===!0}else s=!0}else s=!0 +return s}, +a_E(a){var s=this.d +if(s==null)s=J.q(a.d9(0,t.Fu),B.ae)?this.b:this.c +return s}, +a_J(a){var s=this.e +if(s==null)s=J.q(a.d9(0,t.Fu),B.ae)?this.c:this.b +return s}, +k(a){var s,r,q,p,o,n=this,m=null,l="null",k=n.d,j=k==null,i=j?n.c:k,h=i==null?m:i.k(0) +if(h==null)h=l +i=n.f +s=i==null?m:i.k(0) +if(s==null)s=l +i=n.e +r=i==null +q=r?n.b:i +p=q==null?m:q.k(0) +if(p==null)p=l +q=n.a +o=q==null?m:q.k(0) +if(o==null)o=l +if(h===p&&p===s&&s===o)return"CssLengthBox.all("+h+")" +if(new A.b1(A.a([h,s,p,o],t.s),new A.bb1(),t.gD).gA(0)===3){if(h!=="null")if(!j)return"CssLengthBox(left="+k.k(0)+")" +else return"CssLengthBox(inline-start="+A.r(n.c)+")" +if(s!=="null")return"CssLengthBox(top="+s+")" +if(p!=="null")if(!r)return"CssLengthBox(right="+i.k(0)+")" +else return"CssLengthBox(inline-end="+A.r(n.b)+")" +if(o!=="null")return"CssLengthBox(bottom="+o+")"}return"CssLengthBox("+h+", "+s+", "+p+", "+o+")"}} +A.bb1.prototype={ +$1(a){return a==="null"}, +$S:20} +A.I2.prototype={ +H(){return"CssLengthUnit."+this.b}} +A.Cl.prototype={ +H(){return"CssWhitespace."+this.b}} +A.RA.prototype={ +aUM(a,b,c){var s,r,q,p,o +for(s=this.b,r=s.length,q=0;q")),!0,t.z) +r.push(c)}return new A.d8(s,r,q)}, +brm(a,b){return this.a8t(a,null,null,b)}, +pb(a,b){return this.a8t(null,a,null,b)}, +FP(a,b){return this.a8t(null,null,a,b)}, +d9(a,b){if(A.c6(b)===B.buL)return b.a(this.c) +return A.cxv(this.b,b)}, +Oo(){var s,r,q,p,o,n,m=this,l=m.d9(0,t.SO) +if(l==null)return m.c +s=l.a +if(s==null){r=m.d9(0,t.P0) +q=r==null?null:r.a +r=m.c +if(q==null)return r +else return r.axB("fwfh: line-height normal",q)}r=m.c +p=r.r +if(p==null||p===0)return r +o=m.d9(0,t.GN) +n=s.a_T(m,p,o==null?null:o.a) +if(n==null)return r +return r.axB("fwfh: line-height",n/p)}} +A.bnp.prototype={ +$1(a){return!this.a.b(a)}, +$S:60} +A.RK.prototype={ +jW(a,b,c){var s=b==null?c.a(b):b,r=this.d +if(r==null)r=this.d=A.a([],t.gJ) +B.b.B(r,new A.afg(a,s,c.h("afg<0>")))}, +bzl(a){var s,r,q,p +for(s=this;s.d==null;s=r){r=s.a +if(r==null)break}for(q=a;q.d==null;q=p){p=q.a +if(p==null)break}return s===q}, +a5(a){var s,r,q,p,o=this,n=o.a,m=n==null?null:n.a5(a) +if(m==null)m=B.aAc +s=o.d +if(s==null)return m +r=o.c +if(r!=null&&m===o.b)return r +q=m.brm(m,t.z) +for(n=s.length,p=0;p")) +r=q==null +if((r?s:!q.gad(0))===!0)return r?s:q.ga2(0) +return s}, +ns(a,b){var s,r=this.MS$ +if(r==null)r=this.MS$=[] +s=B.b.rE(r,new A.buO(b)) +if(s===-1)r.push(a) +else r[s]=a +return a}} +A.buO.prototype={ +$1(a){return this.a.b(a)}, +$S:60} +A.aGc.prototype={} +A.aLI.prototype={} +A.hd.prototype={ +gad(a){return this.e==null&&this.d.length===0}, +q(a){return this.awD(a,this.e)}, +awD(a,b){var s,r,q,p,o=b==null?B.ap:b,n=t.QU +if(n.b(o))o=o.q(a) +for(s=this.d,r=s.length,q=0;q0&&p!=null&&p>0)s=new A.tu(p/q,s,l)}k=m.at +o=k==null?l:k.Q +if(o!=null&&s!=null){n=m.awg(a,new A.bP0(o,b)) +if(n!=null)s=m.Vh(a,s,n)}return s}, +a7J(a,b){var s,r,q,p,o=this,n=null,m=b.b +if(B.c.aC(m,"asset:"))s=o.aAL(m) +else if(B.c.aC(m,"data:image/"))s=o.aAM(m) +else if(B.c.aC(m,"file:"))s=o.aAN(m) +else s=m.length!==0?new A.ws(m,1,n):n +if(s==null)return n +r=$.b2I() +A.fT(b) +r=r.a.get(b) +q=r==null +p=q?n:r.a +if(p==null)p=q?n:r.c +return A.cxn(B.C,n,n,new A.bOZ(o,a,b),p==null,B.bC,B.hn,n,n,s,n,new A.bP_(o,a,b),!1,B.ce,p,n)}, +boI(a,b,c,d){var s=null,r=this.aIP(c,d),q=b.Oo() +if(r.length!==0)return this.a7T(a,b,A.cy(s,s,s,q,r)) +switch(c){case"circle":return new A.Jl(B.akn,q,s) +case"none":return s +case"square":return new A.Jl(B.akr,q,s) +case"disc":default:return new A.Jl(B.ako,q,s)}}, +a7T(a,b,c){var s,r,q,p=null,o=b.d9(0,t.tr),n=b.d9(0,t.Uf),m=A.a02(a).a>0?A.a02(a).a:p,l=A.a02(a),k=n==null?p:n.x +if(k==null)k=B.t2 +s=J.q(b.d9(0,t.wB),B.tC) +r=b.d9(0,t.Pn) +if(r==null)r=B.ah +q=A.EZ(p,m,l.b,k,o,!s,p,c,r,b.d9(0,t.Fu),p,B.Y,B.a0) +return o!=null?A.ip(q,B.jN,p,p,p,p,p):q}, +LL(a,b,c,d){if(d.length===0){if(a==null)return null +if(a.length===1)return B.b.ga2(a)}return A.cy(a,b!=null?B.bG:null,b,c,d)}, +awt(a,b,c){return this.LL(null,a,b,c)}, +ake(){var s,r,q +for(s=this.a,r=s.length,q=0;q=1&&b<=26)return A.cm(96+b)+"." +return"" +case"upper-alpha":case"upper-latin":if(b>=1&&b<=26)return A.cm(64+b)+"." +return"" +case"decimal":return""+b+"." +case"lower-roman":s=B.Qq.i(0,b) +r=s==null?null:s.toLowerCase() +return r!=null?r+".":"" +case"upper-roman":r=B.Qq.i(0,b) +return r!=null?r+".":"" +case"none":default:return""}}, +aAL(a){var s=null,r=A.di(a,0,s),q=r.geh(r) +if(q.length===0)return s +return new A.Hg(q,s,r.glL().aB(0,"package")?r.glL().i(0,"package"):s)}, +aAM(a){var s=A.cRR(a) +if(s==null)return null +return new A.wo(s,1)}, +aAN(a){if(A.di(a,0,null).OY().length===0)return null +return null}, +Ys(a,b,c,d){var s,r,q,p=null +$.d_i().lc(B.l3,"Could not render data="+A.r(d),c,p) +if(d instanceof A.Jt){s=$.b2I() +A.fT(d) +r=s.a.get(d)}else r=p +s=r==null +q=s?p:r.a +if(q==null)q=s?p:r.c +return A.bv(q==null?"\u274c":q,p,p,p,p,p,p,p,p,p,p,p,p,p,p)}, +Yu(a,b,c,d){var s=null +return A.eu(new A.aA(B.cq,new A.p2(B.a_8,4,0,s,c,s,s,s,s,s,s),s),s,s,s)}, +bCq(a,b){return this.Yu(a,b,null,null)}, +acw(a){return this.bCX(a)}, +bCX(a){var s=0,r=A.p(t.y),q,p=this,o,n +var $async$acw=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.at +n=o==null?null:o.as +q=n!=null&&n.$1(a) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$acw,r)}, +qx(a){return this.bD4(a)}, +bD4(a){var s=0,r=A.p(t.y),q,p=this,o,n +var $async$qx=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(p.acw(a),$async$qx) +case 3:if(c){q=!0 +s=1 +break}s=B.c.aC(a,"#")?4:5 +break +case 4:o=B.c.b0(a,1) +n=p.Cc$ +n===$&&A.b() +s=6 +return A.i(n.gbvp().$1(o),$async$qx) +case 6:if(c){q=!0 +s=1 +break}case 5:q=!1 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qx,r)}, +ne(a,b){var s,r,q,p,o,n=this,m=b.a,l=m.b +switch(m.x){case"a":if(l.aB(0,"href")){b.b.jW(A.dqd(),null,t.cj) +m=n.w +b.av(0,m==null?n.w=new A.bJX(n).gix():m)}s=l.i(0,"name") +if(s!=null){m=n.Cc$ +m===$&&A.b() +b.av(0,new A.amW(new A.aR(s,t.A),s,m).gix())}break +case"abbr":case"acronym":b.av(0,B.a3K) +break +case"address":b.av(0,B.a3H) +break +case"article":case"aside":case"dl":case"figcaption":case"footer":case"header":case"main":case"nav":case"section":case"div":b.av(0,B.a3O) +break +case"blockquote":case"figure":b.av(0,B.a3J) +break +case"b":case"strong":b.b.jW(A.cUc(),B.cc,t.jR) +break +case"big":b.b.jW(A.cUa(),"larger",t.N) +break +case"small":b.b.jW(A.cUa(),"smaller",t.N) +break +case"br":b.av(0,B.a3v) +break +case"center":b.av(0,B.a3L) +break +case"cite":case"dfn":case"em":case"i":case"var":b.b.jW(A.cUb(),B.ur,t.aB) +break +case"code":case"kbd":case"samp":case"tt":b.b.jW(A.cU9(),B.aIj,t.yp) +break +case"pre":m=n.Q +b.av(0,m==null?n.Q=new A.bKf(n).gix():m) +break +case"details":m=n.x +b.av(0,m==null?n.x=new A.bK4(n).gix():m) +break +case"dd":b.av(0,B.a41) +break +case"dt":b.av(0,B.a3M) +break +case"del":case"s":case"strike":b.av(0,B.a3U) +break +case"font":b.av(0,B.a4_) +break +case"h1":b.av(0,B.a3R) +break +case"h2":b.av(0,B.a3S) +break +case"h3":b.av(0,B.a3Z) +break +case"h4":b.av(0,B.a3N) +break +case"h5":b.av(0,B.a3A) +break +case"h6":b.av(0,B.a3Y) +break +case"hr":b.av(0,B.a3q) +break +case"img":m=n.y +b.av(0,m==null?n.y=new A.bK9(n).gix():m) +break +case"ol":case"ul":m=n.z +b.av(0,m==null?n.z=new A.bKb(n).gix():m) +break +case"mark":b.av(0,B.a3p) +break +case"p":b.av(0,B.a3G) +break +case"q":b.av(0,B.a3y) +break +case"ruby":b.av(0,B.a3Q) +break +case"style":case"script":b.av(0,B.a3P) +break +case"sub":b.av(0,B.a3W) +break +case"sup":b.av(0,B.a3r) +break +case"table":r=n.as +if(r==null)r=n.as=A.cMD(n) +b.av(0,B.a3t) +m=r.b +m===$&&A.b() +b.av(0,m) +m=r.c +m===$&&A.b() +b.av(0,m) +break +case"td":b.av(0,B.a3V) +break +case"th":b.av(0,B.a3s) +break +case"caption":b.av(0,B.a3n) +break +case"u":case"ins":b.av(0,B.a3D) +break}for(m=l.gep(l),m=m.gaz(m),q=t.A;m.t();){p=m.gK(m) +switch(p.a){case"align":b.av(0,B.a3X) +break +case"dir":b.av(0,B.a3I) +break +case"id":p=p.b +o=n.Cc$ +o===$&&A.b() +b.av(0,new A.amW(new A.aR(p,q),p,o).gix()) +break}}}, +bDD(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=b.gacW() +switch(g){case"color":s=A.cu6(A.kM(b)) +if(s!=null)a.b.jW(A.dwg(),s,t.G) +break +case"direction":r=A.kM(b) +q=r instanceof A.cx?A.hU(r):h +if(q!=null)a.b.jW(A.dwk(),q,t.N) +break +case"font-family":a.b.jW(A.cU9(),A.dsd(A.tI(b)),t.yp) +break +case"font-size":p=A.kM(b) +if(p!=null)a.b.jW(A.dwh(),p,t.q_) +break +case"font-style":r=A.kM(b) +q=r instanceof A.cx?A.hU(r):h +o=q!=null?A.dsi(q):h +if(o!=null)a.b.jW(A.cUb(),o,t.aB) +break +case"font-weight":p=A.kM(b) +n=p!=null?A.dsk(p):h +if(n!=null)a.b.jW(A.cUc(),n,t.jR) +break +case"height":case"max-height":case"max-width":case"min-height":case"min-width":case"width":$.b2B().n(0,a.a,a) +a.av(0,B.A5) +break +case"line-height":p=A.kM(b) +if(p!=null)a.b.jW(A.dwj(),p,t.q_) +break +case"max-lines":case"-webkit-line-clamp":m=A.dwA(A.kM(b)) +if(m!=null)a.ns(A.a02(a).axu(m),t.hm) +break +case"text-align":a.av(0,B.a3F) +break +case"text-decoration":case"text-decoration-color":case"text-decoration-line":case"text-decoration-style":case"text-decoration-thickness":case"text-decoration-width":A.dwa(a,b) +break +case"text-overflow":l=A.dwB(A.kM(b)) +if(l!=null)a.ns(A.a02(a).a8F(l),t.hm) +break +case"vertical-align":k=i.r +a.av(0,k==null?i.r=new A.bIL(i).gix():k) +break +case"white-space":r=A.kM(b) +q=r instanceof A.cx?A.hU(r):h +j=q!=null?A.dwI(q):h +if(j!=null)a.b.jW(A.cUd(),j,t.wB) +break}if(B.c.aC(g,"background")){k=i.b +a.av(0,k==null?i.b=new A.bIl(i).gix():k)}if(B.c.aC(g,"border")){k=i.c +a.av(0,k==null?i.c=new A.bIp(i).gix():k)}if(B.c.aC(g,"margin")){k=i.e +a.av(0,k==null?i.e=new A.bIA(i).gix():k)}if(B.c.aC(g,"padding")){k=i.f +a.av(0,k==null?i.f=new A.bIE(i).gix():k)}}, +bDE(a,b){var s,r,q=this +A.den(q,a) +switch(b){case"flex":s=q.d +a.av(0,s==null?q.d=new A.bIv(q).gix():s) +break +case"block":$.b2B().n(0,a.a,a) +$.cCV().n(0,a,!0) +a.av(0,B.a3T) +a.av(0,B.A5) +break +case"inline-block":a.av(0,B.a3C) +break +case"none":a.av(0,B.a40) +break +case"table":r=q.as +s=(r==null?q.as=A.cMD(q):r).d +s===$&&A.b() +a.av(0,s) +break}}, +wV(a,b){var s +this.aSP(0,b) +this.ake() +s=b.a +s.toString +if(!(s instanceof A.a3Z))s=null +this.at=s}, +Dj(a){var s,r=null +if(a.length===0)return r +if(B.c.aC(a,"data:"))return a +s=A.x5(a) +if(s==null)return r +if(s.gXl())return a +if(s.gCn())return A.fi(r,r,r,r,r,r,r,"https").HK(s).grg() +return r}} +A.bP0.prototype={ +$0(){return this.a.$1(this.b)}, +$S:0} +A.bOZ.prototype={ +$3(a,b,c){var s=this.a.Ys(a,this.b,b,this.c) +return s}, +$S:165} +A.bP_.prototype={ +$3(a,b,c){var s,r,q,p +if(c==null)return b +s=c.b +r=c.a +q=s!=null&&s>0?r/s:null +p=this.a.Yu(a,this.b,q,this.c) +return p}, +$C:"$3", +$R:3, +$S:223} +A.bOY.prototype={ +$2(a,b){var s=null +return A.bB(s,s,B.i,s,s,s,s,s,s,s,s,s,s,s)}, +$S:868} +A.aHR.prototype={ +m(){}, +wV(a,b){}} +A.akh.prototype={ +wV(a,b){var s,r +this.aRn(0,b) +s=b.c +s.toString +r=t.TY +this.Cc$=new A.amY(A.a([],r),A.N(t.N,t.yi),A.a([],t.t),A.a([],r),A.N(t.D2,t.sf),s)}} +A.bb0.prototype={ +$1(a){return!(a instanceof A.T6)&&!(a instanceof A.KF)}, +$S:354} +A.bXh.prototype={ +aGk(a){return this.a.push(a)}} +A.c_o.prototype={ +A3(a){return B.b.L(this.a,a.c)}} +A.nX.prototype={ +gaAu(){return this.f!=null}, +gGS(){return this.y}, +gbR(a){var s=this.f +s.toString +return s}, +n(a,b,c){this.w.L(0,A.cvV(A.cBS("*{"+b+": "+A.r(c)+";}")))}, +auS(a){var s,r,q +for(s=a.a,r=A.X(s),s=new J.cP(s,s.length,r.h("cP<1>")),r=r.c;s.t();){q=s.d +this.aVE(q==null?r.a(q):q)}}, +dN(){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.e,g=A.a([],t.i3) +new A.bie(j,h,g).aUI(h,j) +s=j.x +if(s==null)s=B.lg +for(r=J.cz(s),q=r.gaz(s),p=i;q.t();){o=q.gK(q) +n=o.a.w +p=n==null?i:n.$2(o.b,g) +if(p!=null)break}m=p==null?h.a7F(j,g):p +if(m==null)m=B.bAQ +for(h=r.gaz(s),g=t.C3,q=t.QU,o=A.r(j.a.x)+"--";h.t();){n=h.gK(h) +l=n.a +k=l.e +n=k==null?i:k.$2(n.b,m) +m=n==null?m:n +n=l.b +if(n==null)n="lazy" +if(!q.b(m)){l=A.a([],g) +m=new A.hd(o+n,l,m,i)}}if(m.gad(m))return i +A.d1G(j,m) +for(h=r.gaz(s);h.t();){g=h.gK(h) +r=g.a.r +if(r!=null)r.$2(g.b,m)}return m}, +a8O(a,b,c,d){var s,r,q,p,o,n,m,l=this +if(c==null){s=l.b.d +if(s==null)s=null +else s=A.a(s.slice(0),A.X(s)) +r=new A.RK(d.b,s)}else r=c +s=b==null?l.a:b +q=A.dny(d.r,d) +p=new A.nX(l.e,d,q,new A.Gg(),s,r,null) +if(a){o=l.MS$ +if(o!=null)p.MS$=A.R(o,!0,t.z) +for(s=l.geg(0),q=s.length,n=0;n>")),m.c,s.h("@<1>").a1(s.h("j1<1>")).h("mJ<1,2>"));s.t();)p.av(0,s.gK(0).a) +p.w.L(0,l.w)}return p}, +yu(a){return this.a8O(!0,null,null,a)}, +ut(a){var s,r,q,p=this.x +if(p!=null)for(s=p.$ti,s=new A.mJ(p,A.a([],s.h("D>")),p.c,s.h("@<1>").a1(s.h("j1<1>")).h("mJ<1,2>"));s.t();){r=s.gK(0) +q=r.a.f +if(q!=null)q.$1(r.b)}}, +qT(a){var s,r,q,p,o,n=this.w.b +if(n==null)return null +for(s=A.X(n).h("bE<1>"),r=new A.bE(n,s),r=new A.bj(r,r.gA(0),s.h("bj")),s=s.h("aa.E");r.t();){q=r.d +if(q==null)q=s.a(q) +p=q.f +o=q.b +if((p?"*"+o.b:o.b)===a)return q}return null}, +av(a,b){var s,r,q,p=this,o=null,n=p.x +if(n==null)n=p.x=A.a9Z(A.dq3(),o,t.X9) +n.iW(0,new A.v2(b,p)) +s=$.d_k() +r=b.b +if(r==null)r="a build op" +q=p.a.x +q=q==null?o:q.toUpperCase() +s.lc(B.v_,"Registered "+r+" for "+A.r(q)+" tag",o,o)}, +agh(a,b){return this.a8O(!1,b,new A.RK(this.b,null),this)}, +DR(a){return this.agh(0,null)}, +aVE(a){var s,r,q,p,o,n,m,l=this +if(a.gwz(a)===3){t.As.a(a) +s=J.cw(a.w) +a.w=s +return l.aVV(s)}if(a.gwz(a)!==1)return +t.Si.a(a) +r=l.agh(0,a) +r.bds() +r.auS(a.gfC(0)) +q=r.x +s=q==null +p=(s?null:!new A.b1(q,A.dq4(),q.$ti.h("b1")).gad(0))===!0 +r.y=!p +if(!s)for(s=q.$ti,s=new A.mJ(q,A.a([],s.h("D>")),q.c,s.h("@<1>").a1(s.h("j1<1>")).h("mJ<1,2>")),o=r;s.t();){n=s.gK(0).a.d +n=n==null?null:n.$1(o) +o=n==null?o:n}else o=r +if(p){m=o.dN() +if(m!=null)l.iw(0,new A.akg(m,l))}else l.iw(0,o)}, +aVV(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=$.d_C().im(a),f=$.d_D().im(a),e=g==null,d=e?null:g.gdw(0) +if(d==null)d=0 +s=f==null +r=s?null:f.b.index +if(r==null)r=a.length +if(r<=d){h.iw(0,new A.uT(a,h)) +return}if(!e){e=g.b[0] +e.toString +h.iw(0,new A.uT(e,h))}q=B.c.R(a,d,r) +for(e=A.R($.d_E().kt(0,q),!0,t.vX),e.push(null),p=e.length,o=0,n=0;n>")),n.c,s.h("@<1>").a1(s.h("j1<1>")).h("mJ<1,2>")),r=h.w,o=t.Ek;s.t();){m=s.gK(0).gbtv() +if(m!=null){l=r.b +B.b.L(l==null?r.b=A.a([],o):l,m)}}h.aZB() +k=A.cwu(h.a) +if(J.iL(k))h.w.L(0,k) +s=h.w +s.a=!0 +j=s.b +if(j!=null){s=J.n8(j.slice(0),A.X(j).c) +r=s.length +q=0 +for(;q")) +return s==null?new J.cP(B.vA,0,t.XM):s}, +L(a,b){var s=this.b +B.b.L(s==null?this.b=A.a([],t.Ek):s,b)}} +A.aZP.prototype={ +q(a){return B.ap}, +gpe(){return null}, +gad(a){return!0}, +kB(a){return A.qV(a,null,null,null)}, +$ihd:1} +A.amW.prototype={ +gix(){var s=this,r=null +return A.je(!1,"anchor#"+s.b,r,new A.b3A(s),new A.b3B(s),new A.b3C(s),r,r,r,r,9000001e9)}} +A.b3A.prototype={ +$1(a){var s=this.a,r=s.c,q=s.a +r.a.push(q) +r.b.n(0,s.b,q) +A.cQb(a,q) +return a}, +$S:38} +A.b3C.prototype={ +$1(a){var s=this.a +a.Hw(A.AO(a,A.qV(new A.b3y(s,a),null,A.r(a.a.x)+"--anchor#"+s.b,null),B.fd,B.Q))}, +$S:114} +A.b3y.prototype={ +$2(a,b){var s=this.b.b.a5(a).d9(0,t.em) +s=s==null?null:s.r +return new A.ba(null,s,null,this.a.a)}, +$S:358} +A.b3B.prototype={ +$2(a,b){return b.kB(new A.b3z(this.a))}, +$S:65} +A.b3z.prototype={ +$2(a,b){return new A.ba(null,null,b,this.a.a)}, +$S:358} +A.b3D.prototype={ +$2(a,b){$.cDx().n(0,b,this.a) +return b}, +$S:44} +A.amY.prototype={ +bnT(a,b,c){var s=null,r=b*2,q=r+1,p=this.d +if(q>=p.length)return c +return new A.ad2(b,this,new A.d4(B.ar,s,B.am,B.k,A.a([c,A.cyY(s,p[r]),A.mo(0,A.cyY(s,p[q]),s,s,s,s,s,s)],t.p),s),s)}, +aa1(a,b,c,d,e){var s,r=null +$.OE().lc(B.l2,"Trying to make #"+a+" visible...",r,r) +s=new A.ak($.at,t.tq) +this.Es(a,new A.aI(s,t.VY),b,c,d,e,r,r) +return s}, +bvq(a){return this.aa1(a,B.dl,B.b1,B.H,B.w)}, +aza(a,b,c){return this.aa1(a,b,c,B.H,B.w)}, +Es(a,b,c,d,e,f,g,h){return this.b0A(a,b,c,d,e,f,g,h)}, +b0A(a,a0,a1,a2,a3,a4,a5,a6){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b +var $async$Es=A.l(function(a7,a8){if(a7===1)return A.m(a8,r) +while(true)switch(s){case 0:b=p.b.i(0,a) +if(b==null){$.OE().lc(B.l3,"Could not ensure #"+a+" visible: no anchor",null,null) +q=a0.d2(0,!1) +s=1 +break}o=$.an.U$.z.i(0,b) +if(o!=null){$.OE().lc(B.l2,new A.b3t(b),null,null) +q=a0.d2(0,p.alh(o,a1,a2)) +s=1 +break}n=p.c +if(n.length===0){$.OE().lc(B.l3,"Could not ensure #"+a+" visible: no body items",null,null) +q=a0.d2(0,!1) +s=1 +break}m=J.n8(n.slice(0),A.X(n).c) +l=B.b.i6(m,B.a4f) +k=B.b.i6(m,B.kj) +n=a6==null?l:a6 +j=Math.min(n,l) +n=a5==null?k:a5 +i=Math.max(n,k) +h=p.e.i(0,b) +n=h==null +g=n?null:h.b +if(g==null)g=j +f=n?null:h.c +if(f==null)f=i +s=gi?7:9 +break +case 7:c=p.d[k*2+1] +$.OE().lc(B.l2,new A.b3v(c),null,null) +s=10 +return A.i(p.alh($.an.U$.z.i(0,c),a3,a4),$async$Es) +case 10:d=a8 +s=8 +break +case 9:d=!1 +case 8:case 4:if(!d){$.OE().lc(B.l3,"Could not ensure #"+a+" visible: scroll failure",null,null) +q=a0.d2(0,!1) +s=1 +break}$.an.xr$.push(new A.b3w(p,a,a0,a1,a2,a3,a4,i,j)) +case 1:return A.n(q,r)}}) +return A.o($async$Es,r)}, +JS(a,b,c,d){return this.b0B(a,b,c,d)}, +alh(a,b,c){return this.JS(a,0,b,c)}, +b0B(a,b,c,d){var s=0,r=A.p(t.y),q,p=this,o,n,m,l,k,j +var $async$JS=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:j=a==null?null:a.gai() +if(j==null){q=!1 +s=1 +break}o=p.c +if(o.length!==0){n=p.d[B.b.ga2(o)*2] +m=$.an.U$.z.i(0,n) +l=m!=null?A.lI(m):null}else l=null +if(l==null)l=A.lI(p.f) +if(l==null)k=null +else{o=l.d +o.toString +k=o}if(k==null){q=!1 +s=1 +break}s=3 +return A.i(k.azb(j,b,c,d),$async$JS) +case 3:q=!0 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$JS,r)}, +bEe(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=null,b=this.a +if(b.length===0)return +for(s=J.ao(a),r=this.d,q=t.A,p=this.e,o=0;o=0;--i){g=p.i(0,b[i]) +r=g==null +if((r?c:g.a)===!0)h=r?c:g.c +else h=c +if(h!=null)break}for(f=k+1,e=c;f")),r=i,q=r,p=0;f.t();){o=s.gK(0) +if(p===0)if(o instanceof A.w6)if(q!=null)q.aCa(o) +else q=o +else ++p +if(p===1){if(o instanceof A.w6&&r instanceof A.w6){r.aCa(o) +continue}g.push(o) +r=o}}if(g.length!==0){n=B.b.gP(g) +if(n instanceof A.w6){g.pop() +m=n}else m=i}else m=i +l=j.w.b.a5(a) +if(g.length!==0){f=A.cQd(l) +s=l.d9(0,t.Fu) +if(s==null)s=B.j +k=j.x.Vg(a,g,f,s)}else k=i +h=A.a([],h) +if(q!=null)h.push(q) +if(k!=null)h.push(j.awD(a,k)) +if(m!=null)h.push(m) +return h}, +amd(a){return new A.dz(this.b2g(a),t.A5)}, +b2g(a){var s=this +return function(){var r=a +var q=0,p=1,o,n,m,l,k,j,i,h +return function $async$amd(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:n=s.r,m=n.length,l=0 +case 2:if(!(l")).r2(0,new A.bIx()) +s=A.R(p,!1,p.$ti.h("B.E")) +p=this.a +r=A.deg(p.b) +q=p.a==="row"?B.a_:B.v +return A.cwP(s,r,q,null,A.deh(p.c),B.u,B.Q,null,B.x)}, +$S:53} +A.bIw.prototype={ +$1(a){var s=a.q(this.a) +return s}, +$S:879} +A.bIx.prototype={ +$1(a){return!a.r3(0,B.ap)}, +$S:197} +A.ada.prototype={ +axC(a,b){var s=a==null?this.a:a +return new A.ada(s,b==null?this.b:b)}, +axu(a){return this.axC(a,null)}, +a8F(a){return this.axC(null,a)}} +A.bIA.prototype={ +gix(){var s=null +return A.je(!1,"margin",s,s,new A.bIC(this),new A.bID(),s,s,s,s,5000006e9)}} +A.bIC.prototype={ +$2(a,b){var s,r,q,p,o,n=A.cu7(a,"margin") +if(n==null)return b +s=n.f +r=n.a +q=a.b +p=A.a([],t.i3) +if(s!=null&&s.a>0)p.push(A.cxf(s,q,A.r(a.a.x)+"--marginTop")) +if(n.gac_()||n.gac0())p.push(b.kB(new A.bIB(q,n))) +else p.push(b) +if(r!=null&&r.a>0)p.push(A.cxf(r,q,A.r(a.a.x)+"--marginBottom")) +o=this.a.a.a7F(a,p) +return o==null?b:o}, +$S:65} +A.bIB.prototype={ +$2(a,b){var s,r,q,p=null,o=this.a.a5(a),n=this.b,m=n.a_E(o),l=m==null,k=l?p:m.o_(o) +if(k==null)k=0 +s=Math.max(k,0) +r=n.a_J(o) +n=r==null +k=n?p:r.o_(o) +if(k==null)k=0 +q=Math.max(k,0) +l=(l?p:m.b)===B.ty?1/0:s +return new A.avs(l,(n?p:r.b)===B.ty?1/0:q,b,p)}, +$S:44} +A.bID.prototype={ +$1(a){var s=A.cu7(a,"margin") +if(s==null)return +if(s.gac_())a.Hw(A.AO(a,A.cR0(a,s),B.cj,B.Q)) +if(s.gac0())a.iw(0,A.AO(a,A.cR_(a,s),B.cj,B.Q))}, +$S:114} +A.cq_.prototype={ +$2(a,b){var s=this.a.b.a5(a),r=this.b.a_J(s) +return A.cR1(r==null?null:r.o_(s))}, +$S:44} +A.cq0.prototype={ +$2(a,b){var s=this.a.b.a5(a),r=this.b.a_E(s) +return A.cR1(r==null?null:r.o_(s))}, +$S:44} +A.bIE.prototype={ +gix(){var s=null +return A.je(!1,"padding",s,s,new A.bIG(this),new A.bIH(),s,s,s,s,5000003e9)}} +A.bIG.prototype={ +$2(a,b){var s=A.cu7(a,"padding") +if(s==null)return b +return A.qV(new A.bIF(this.a,a,s),b,A.r(a.a.x)+"--paddingBlock",null)}, +$S:65} +A.bIF.prototype={ +$2(a,b){var s,r,q=null,p=this.c,o=this.b.b.a5(a),n=p.a_E(o) +n=n==null?q:n.o_(o) +if(n==null)n=0 +n=Math.max(n,0) +s=p.f +s=s==null?q:s.o_(o) +if(s==null)s=0 +s=Math.max(s,0) +r=p.a_J(o) +r=r==null?q:r.o_(o) +if(r==null)r=0 +r=Math.max(r,0) +p=p.a +p=p==null?q:p.o_(o) +if(p==null)p=0 +p=new A.af(n,s,r,Math.max(p,0)) +return p.l(0,B.L)?b:new A.aA(p,b,q)}, +$S:53} +A.bIH.prototype={ +$1(a){var s=A.cu7(a,"padding") +if(s==null)return +if(s.gac_())a.Hw(A.AO(a,A.cR0(a,s),B.cj,B.Q)) +if(s.gac0())a.iw(0,A.AO(a,A.cR_(a,s),B.cj,B.Q))}, +$S:114} +A.cz8.prototype={} +A.bII.prototype={ +$2(a,b){var s=this.a.b.a5(a).d9(0,t.Fu) +return new A.XR(null,(s==null?B.j:s)===B.j?B.ca:B.eU,A.dqs(),B.i,b,null)}, +$S:880} +A.bIJ.prototype={ +$2(a,b){return A.cMr(a,b,this.a,this.b.b)}, +$S:44} +A.bIK.prototype={ +$2(a,b){return A.cMr(a,b,this.a,this.b.b)}, +$S:44} +A.XR.prototype={} +A.aXo.prototype={} +A.aj5.prototype={} +A.Au.prototype={} +A.bIL.prototype={ +gix(){var s=null +return A.je(!1,"vertical-align",s,new A.bIO(this),new A.bIP(this),s,s,s,s,s,5000002e9)}, +aX1(a,b,c,d){var s,r,q=null,p=b.b.a5(a).d9(0,t.em),o=p==null?q:p.r +if(o==null)return c +p=d.d +s=new A.af(0,o*d.b,0,o*p) +r=s.l(0,B.L)?c:new A.aA(s,c,q) +return new A.fl(p>0?B.cW:B.dG,1,q,r,q)}} +A.bIO.prototype={ +$1(a){var s,r,q,p,o=null,n=a.f +n.toString +if(a.y!==!0)return a +s=a.qT("vertical-align") +if(s==null)r=o +else{r=A.kM(s) +r=r instanceof A.cx?A.hU(r):o}if(r==null||r==="baseline")return a +q=A.dok(r) +if(q==null)return a +$.cCW().n(0,a,!0) +p=A.qV(o,a.dN(),A.r(a.a.x)+"--vertical-align",o) +if(r==="sub"||r==="super")p.d.push(new A.bIN(this.a,r,a)) +n=n.DR(0) +n.iw(0,A.AO(a,p,q,B.Q)) +return n}, +$S:38} +A.bIN.prototype={ +$2(a,b){var s=this.b,r=s==="super"?0.4:0 +s=s==="sub"?0.4:0 +return this.a.aX1(a,this.c,b,new A.af(0,s,0,r))}, +$S:53} +A.bIP.prototype={ +$2(a,b){var s,r,q=$.cCW() +A.fT(a) +if(J.q(q.a.get(a),!0))return b +q=a.qT("vertical-align") +if(q==null)s=null +else{r=A.kM(q) +s=r instanceof A.cx?A.hU(r):null}if(s==null)return b +return b.kB(new A.bIM(this.a,a,s))}, +$S:65} +A.bIM.prototype={ +$2(a,b){var s,r=this.b.b.a5(a).d9(0,t.Fu) +if(r==null)r=B.j +s=A.doh(r,this.c) +if(s==null)return b +return new A.fl(s,1,null,b,null)}, +$S:53} +A.bJX.prototype={ +gix(){var s=null +return A.je(!1,"a[href]",A.dqc(),new A.bK0(this),new A.bK1(this),s,s,s,s,s,1000001e9)}} +A.bK0.prototype={ +$1(a){var s,r,q,p,o,n=a.a.b.i(0,"href") +if(n==null)return a +s=this.a +r=s.a +q=r.Dj(n) +p=r.awg(a,new A.bJZ(s,q==null?n:q)) +if(p==null)return a +if(a.y===!0)for(r=a.gFy(),r=new A.dr(r.a(),r.$ti.h("dr<1>"));r.t();){o=r.b +if(o instanceof A.FU&&!o.gGS())o.a.kB(new A.bK_(s,a,p))}s=t.nd +a.b.jW(A.dqb(),p,s) +a.ns(p,s) +return a}, +$S:38} +A.bJZ.prototype={ +$0(){return this.a.a.qx(this.b)}, +$S:0} +A.bK_.prototype={ +$2(a,b){return this.a.a.Vh(this.b,b,this.c)}, +$S:53} +A.bK1.prototype={ +$2(a,b){var s=a.te(t.nd) +if(s!=null)b.kB(new A.bJY(this.a,a,s)) +return b}, +$S:65} +A.bJY.prototype={ +$2(a,b){if(b.r3(0,B.ap))return null +return this.a.a.Vh(this.b,b,this.c)}, +$S:53} +A.aaE.prototype={ +ga17(){return!0}, +yu(a){return new A.aaE(a)}, +ut(a){return a.aGT(0,"\n")}, +k(a){return"
"}, +gbR(a){return this.a}} +A.bK4.prototype={ +gix(){var s=null +return A.je(!0,"details",s,s,s,s,s,new A.bK7(this),new A.bK8(),s,1000003e9)}} +A.bK7.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l={} +l.a=null +s=A.a([],t.i3) +for(r=b.length,q=0;q0?f:1 +g=h.d +if(!(g>0))g=g===0?a4.length:1 +e=Math.min(a5,g) +d=s.length +for(c=0;c")).r2(0,A.dqn()),!1,t.C),o),o) +if(isFinite(n))q=A.uq(q,B.k,o,B.m,o,B.c5,o,o,o,o,!1,B.a_) +return q}, +$S:52} +A.bKl.prototype={ +$1(a){return a.$1(this.a)}, +$S:885} +A.bKn.prototype={ +$1(a){return new A.Rv(null,this.a.r,0,1,this.b,null,!0,this.c,null)}, +$S:886} +A.bKo.prototype={ +$1(a){var s,r,q=this,p=null,o=q.c,n=o.a,m=q.d,l=m.b.a5(a),k=q.e.a_s(l) +if(k!=null){s=k.gpg() +n=s.l(0,B.L)?n:new A.aA(s,n,p)}m=m.qT("vertical-align") +if(m==null)r=p +else{r=A.kM(m) +r=r instanceof A.cx?A.hU(r):p}if(r==="baseline")n=new A.aHo(q.f,n,p) +m=q.w.r +s=q.a.a +m=Math.min(q.r,m-s) +o=o.e +o=o==null?p:A.Z9(o,l) +return A.d89(k,n,m,s,!1,p,q.x,q.f,o)}, +$S:887} +A.bKj.prototype={ +$1(a){var s,r=this.a +if(r==null)r=1 +s=t.N +return A.a1(["padding",A.r(r)+"px"],s,s)}, +$S:9} +A.bKk.prototype={ +$2(a,b){return this.a.b.push(b)}, +$S:226} +A.ajk.prototype={ +bc0(a,b){var s,r,q,p,o,n=b.a.a,m=n instanceof A.dk?n:null +if(m!==a.a)return +if(A.czd(b)!=="table-cell")return +for(m=a.w.gaz(0),s=b.w,r=m.$ti.c,q=t.Ek;m.t();){p=m.d +if(p==null)p=r.a(p) +o=s.b;(o==null?s.b=A.a([],q):o).push(p)}this.aqB(b)}, +baR(a,b){var s,r=a.qT("width"),q=r==null?null:A.kM(r),p=q!=null?A.iv(q):null,o=a.a.b +r=A.cCa(o,"colspan") +if(r==null)r=1 +s=A.cCa(o,"rowspan") +if(s==null)s=1 +this.a.push(new A.aXO(b,r,a,s,p))}, +aqB(a){var s +if(a.a.b.aB(0,"valign"))a.av(0,B.a3x) +s=this.c +s===$&&A.b() +a.av(0,s) +A.bIu(a) +$.b2C().n(0,a,!0)}} +A.ajl.prototype={ +gbzM(){var s,r=this.a +if(r.length!==0)return B.b.gP(r) +s=A.cAh() +r.push(s) +return s}, +bbr(a,b){var s,r=b.a.a,q=r instanceof A.dk?r:null +if(q!==a.a)return +if(A.czd(b)!=="table-row")return +s=A.cAh() +this.a.push(s) +q=s.b +q===$&&A.b() +b.av(0,q)}} +A.aXN.prototype={ +ac9(){var s=A.cAi("table-row-group") +this.a.push(s) +return s}} +A.aXO.prototype={} +A.cqQ.prototype={ +$1(a){return a instanceof A.KF}, +$S:354} +A.cqR.prototype={ +$1(a){var s=A.iv(a) +return s==null?B.bB:s}, +$S:227} +A.cqS.prototype={ +$1(a){var s=A.iv(a) +return s==null?B.bB:s}, +$S:227} +A.cqT.prototype={ +$1(a){var s=A.iv(a) +return s==null?B.bB:s}, +$S:227} +A.bie.prototype={ +aUI(a,b){var s,r,q,p,o,n=this,m=n.a +n.aop(m,!1) +n.bfY(m.b) +for(m=m.gFy(),m=new A.dr(m.a(),m.$ti.h("dr<1>")),s=t.au,r=t.ar;m.t();){q=n.r=m.b +p=A.dlu(q) +if(p==null){o=n.w +o===$&&A.b() +p=o}if(n.d==null){n.d=A.a([],s) +n.e=p +o=A.a([],r) +n.f=o +n.w=n.e +n.y=o}o=n.w +o===$&&A.b() +if(!p.bzl(o))n.a5E() +n.w=p +q.ut(n) +q=q.ga17() +n.x=q==null?n.x:q}n.ajS()}, +byM(a,b,c){var s,r,q=this +q.a5E() +s=q.r +s===$&&A.b() +r=s.gbR(s) +s=q.w +s===$&&A.b() +c.kB(new A.bii(q,s,r)) +s=q.d +if(s!=null)s.push(new A.bij(a,b,c))}, +aGU(a,b,c){var s,r,q=this +if(b!=null){s=q.y +s===$&&A.b() +s.push(new A.Od(b,!1,!1))}if(c!=null){s=q.y +s===$&&A.b() +r=q.r +r===$&&A.b() +s.push(new A.Od(c,!0,q.bi6(r)))}}, +aGT(a,b){return this.aGU(0,b,null)}, +bIk(a,b){return this.aGU(0,null,b)}, +bfY(a){var s,r=this +r.d=A.a([],t.au) +r.e=a +s=A.a([],t.ar) +r.f=s +r.w=r.e +r.y=s}, +aop(a,b){var s,r,q,p +for(s=a.geg(0),r=s.length,q=0;q") +r=A.R(new A.bE(s,q),!1,q.h("aa.E"))}if(r==null)return +o.d=null +if(r.length===0){s=o.f +s===$&&A.b() +s=s.length===0}else s=!1 +if(s)return +s=o.f +s===$&&A.b() +q=o.e +q===$&&A.b() +p=A.qV(new A.big(o,q,r,s),n,A.r(o.a.a.x)+"--text",n) +o.c.push(p) +$.cDN().lc(B.v_,"Added "+A.r(p.c)+" widget",n,n)}, +a3e(a,b){var s=t.nd,r=b.d9(0,s) +if(r==null)return null +if(r===this.a.b.a5(a).d9(0,s))return null +return r}} +A.bii.prototype={ +$2(a,b){var s=this.a,r=s.a3e(a,this.b.a5(a)) +if(r!=null)return s.b.Vh(this.c,b,r) +return b}, +$S:53} +A.bij.prototype={ +$2$isLast(a,b){return new A.kt(this.c,this.a,this.b,null)}, +$1(a){return this.$2$isLast(a,null)}, +$C:"$2$isLast", +$R:1, +$D(){return{isLast:null}}, +$S:890} +A.bih.prototype={ +$2$isLast(a,b){var s,r=this.b.a5(a),q=r.d9(0,t.wB) +if(q==null)q=B.n6 +s=A.cQi(this.c,q,!1,b!==!1) +if(s.length===0)return null +q=this.a +return q.b.awt(q.a3e(a,r),r.Oo(),s)}, +$1(a){return this.$2$isLast(a,null)}, +$C:"$2$isLast", +$R:1, +$D(){return{isLast:null}}, +$S:891} +A.big.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=j.b,h=i.a5(a),g=A.a([],t.VO) +for(s=j.c,r=s.length,q=!0,p=0;p") +m=A.R(new A.b1(s,new A.bif(),r),!1,r.h("B.E")) +l=m.length===1&&m[0].a==="\n"?new A.kt(A.cxf(B.Cq,i,A.r(j.a.a.a.x)+"--"+B.Cq.k(0)),B.cj,null,null):null}else{i=j.a +l=i.b.LL(g,i.a3e(a,h),h.Oo(),n)}if(l==null)return B.ap +k=h.d9(0,t.Pn) +if(k==null)k=B.ah +if(l instanceof A.kt&&k===B.ah)return l.e +i=j.a +return i.b.a7T(i.a,h,l)}, +$S:53} +A.bif.prototype={ +$1(a){return!a.b}, +$S:892} +A.Od.prototype={} +A.w6.prototype={ +q(a){var s=$.cCT() +A.fT(a) +s=s.a.get(a) +if((s==null?0:s)>0)return this +else return this.aRo(a)}, +aCa(a){var s=B.b.ga2(a.w) +this.w.push(s) +this.ahA(new A.bkX(s,a))}, +kB(a){return this}} +A.bkW.prototype={ +$2(a,b){return A.cIA(a,b,this.a,this.b)}, +$S:44} +A.bkX.prototype={ +$2(a,b){return A.cIA(a,b,this.a,this.b.r)}, +$S:44} +A.b9Z.prototype={ +aw7(a,b,c){return a.bo4(b,c)}} +A.bB6.prototype={} +A.bGE.prototype={ +aw7(a,b,c){var s=a.Cc$ +s===$&&A.b() +s.bEe(c) +return A.Fm(new A.pu(new A.bGF(a,c),J.bn(c),!1,!0,!1,0,A.Ou(),null))}} +A.bGF.prototype={ +$2(a,b){var s=J.aS(this.b,b),r=this.a.Cc$ +r===$&&A.b() +return r.bnT(a,b,s)}, +$S:43} +A.Q7.prototype={ +aR(a){var s=null +return A.cOP(s,s,s,s,s,s,B.a_i)}, +b_(a,b){return t.xc.a(b).afM(null,B.a_i,null)}} +A.aq0.prototype={ +aR(a){var s=this +return A.cOP(s.e,s.f,s.r,s.w,s.x,s.y,s.z)}, +b_(a,b){var s=this +t.xc.a(b) +b.aKO(s.e,s.f,s.r,s.w) +b.afM(s.x,s.z,s.y)}} +A.ahk.prototype={ +aKO(a,b,c,d){var s=this +if(J.q(a,s.G)&&J.q(b,s.ac)&&J.q(c,s.aS)&&J.q(d,s.cZ))return +s.G=a +s.ac=b +s.aS=c +s.cZ=d +s.a9()}, +afM(a,b,c){var s=this +if(a==s.en&&J.q(c,s.eY)&&J.q(b,s.i9))return +s.en=a +s.eY=c +s.i9=b +s.a9()}, +cX(a){var s=this.k1$ +if(s==null)return B.A +return a.bd(s.jr(this.aiD(a)))}, +bJ(){var s,r=this,q=r.k1$ +if(q==null){s=t.k.a(A.H.prototype.gZ.call(r)) +r.id=new A.V(A.Z(0,s.a,s.b),A.Z(0,s.c,s.d)) +return}s=t.k +q.d_(r.aiD(s.a(A.H.prototype.gZ.call(r))),!0) +r.id=s.a(A.H.prototype.gZ.call(r)).bd(q.gu(0))}, +aiD(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=f.G,c=d==null?e:d.dV(0,0,a.d) +if(c==null)c=a.d +d=f.ac +s=d==null?e:d.dV(0,0,a.b) +if(s==null)s=a.b +d=f.aS +d=d==null?e:d.dV(0,0,a.d) +if(d==null)d=a.c +r=Math.min(c,d) +d=f.cZ +d=d==null?e:d.dV(0,0,a.b) +if(d==null)d=a.a +q=Math.min(s,d) +p=isFinite(r)?r:0 +o=isFinite(q)?q:0 +d=f.eY +n=d==null?e:d.dV(0,p,c) +d=f.i9 +m=d==null?e:d.dV(0,o,s) +l=(n==null?e:isFinite(n))===!0?n:e +k=(m==null?e:isFinite(m))===!0?m:e +j=l!=null&&k!=null?f.b2M(c,s,l,k):e +d=j==null +i=d?e:j.b +if(i==null)i=l +if(i==null)i=c +h=d?e:j.a +if(h==null)h=k +if(h==null)h=s +g=d?e:j.b +if(g==null)g=l +if(g==null)g=p +d=d?e:j.a +if(d==null)d=k +return new A.aG(d==null?o:d,h,g,i)}, +b2M(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i=null,h=this.k1$ +if(h==null)return i +s=A.fH(c,i) +r=A.aF("sizeHeight") +try{r.b=h.jr(s)}catch(o){q=A.ag(o) +p=A.aD(o) +n=$.d_l() +n.lc(B.j5,"Skipped guessing child size on tight height (preferred "+A.r(d)+"x"+A.r(c)+")",q,p) +return i}m=h.jr(A.fH(i,d)) +l=m.a/m.b +if(Math.abs(l-r.aX().a/r.aX().b)>0.01)return i +if(this.en===B.v){k=c*l +j=c}else{j=d/l +k=d}if(k>b){j=b/l +k=b}if(j>a){k=a*l +j=a}return new A.V(k,j)}} +A.bb2.prototype={} +A.aMC.prototype={ +dV(a,b,c){return null}, +gv(a){return 0}, +l(a,b){if(b==null)return!1 +return b instanceof A.aMC}, +k(a){return"auto"}} +A.adI.prototype={ +dV(a,b,c){return B.e.dV(c*this.a/100,b,c)}, +gv(a){return B.e.gv(this.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.adI&&b.a===this.a}, +k(a){return B.e.aZ(this.a,1)+"%"}} +A.aMD.prototype={ +dV(a,b,c){return B.e.dV(this.a,b,c)}, +gv(a){return B.e.gv(this.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.aMD&&b.a===this.a}, +k(a){return B.e.aZ(this.a,1)}} +A.avs.prototype={ +aR(a){var s=new A.Xy(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){var s +t.AC.a(b) +s=this.e +if(b.G!==s){b.G=s +b.a9()}s=this.f +if(b.ac!==s){b.ac=s +b.a9()}}} +A.Xy.prototype={ +gNN(){var s,r=this.G +if(r==1/0||r==-1/0)r=0 +s=this.ac +return r+(s==1/0||s==-1/0?0:s)}, +cX(a){return this.ajX(this.k1$,a,A.k0())}, +bb(a){var s=this.k1$ +if(s==null)return this.gNN() +return s.aw(B.aj,a,s.gbL())+this.gNN()}, +bo(a){var s=this.k1$ +if(s==null)return this.gNN() +return s.aw(B.ad,a,s.gbG())+this.gNN()}, +bJ(){var s=this +return s.id=s.ajX(s.k1$,t.k.a(A.H.prototype.gZ.call(s)),A.k1())}, +ajX(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +if(a==null)return b.bd(new A.V(g.gNN(),0)) +s=g.G +if(s==1/0||s==-1/0)s=0 +r=g.ac +q=c.$2(a,b.om(new A.af(s,0,r==1/0||r==-1/0?0:r,0))) +p=b.b +s=g.G +r=g.ac +if(isFinite(p))o=s==1/0||s==-1/0||r==1/0||r==-1/0 +else o=!1 +if(!o){o=q.a +if(s==1/0||s==-1/0)s=0 +if(r==1/0||r==-1/0)r=0 +p=o+s+r}n=b.bd(new A.V(p,q.b)) +if(c===A.k1()){m=n.a +l=Math.max(0,m-q.a) +k=g.G +j=k==1/0||k==-1/0?m:k +s=g.ac +i=j+(s==1/0||s==-1/0?m:s) +h=i===0?0:l/i*j +s=a.b +s.toString +t.r.a(s).a=new A.j(Math.min(k,h),0)}return n}} +A.Jj.prototype={ +J(){return new A.aPY(B.f)}} +A.aPY.prototype={ +a8(){this.an() +this.e=this.a.d}, +b1(a){var s=this +s.bc(a) +if(!s.d)s.e=s.a.d}, +q(a){var s=this.e +s===$&&A.b() +return new A.af8(s,new A.c1R(this),this.a.c,null)}} +A.c1R.prototype={ +$1(a){var s=this.a +return s.C(new A.c1Q(s,a))}, +$S:4} +A.c1Q.prototype={ +$0(){var s=this.a +s.e=this.b +s.d=!0}, +$S:0} +A.avx.prototype={ +q(a){var s=a.a0(t.EU) +s=s==null?null:s.f +return s!==!1?this.c:B.ap}} +A.Jk.prototype={ +q(a){var s=a.a0(t.EU),r=s==null?null:s.f +if(r==null)return B.ap +s=r?B.akq:B.akp +return new A.Jl(s,this.c,null)}} +A.avz.prototype={ +q(a){var s=null +return A.dn(s,this.c,B.m,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.blV(a),s,s,s,s,s,s,s,!1,B.ac)}} +A.blV.prototype={ +$0(){var s,r=this.a.a0(t.EU) +if(r!=null){s=r.f +r.r.$1(!s)}}, +$S:0} +A.af8.prototype={ +ed(a){return this.f!==a.f}} +A.avy.prototype={ +aR(a){var s=new A.XK(this.e,0,null,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){var s=this.e +t.kD.a(b).sd5(s) +return s}} +A.xk.prototype={} +A.XK.prototype={ +sd5(a){if(this.D===a)return +this.D=a +this.a9()}, +il(a){return this.Mm(a)}, +cX(a){return this.ant(this.Y$,a,A.k0())}, +bi(a){var s=this.Y$ +s=s==null?null:s.bi(a) +return s==null?this.ahd(a):s}, +bb(a){var s=this.Y$ +s=s==null?null:s.bb(a) +return s==null?this.ahe(a):s}, +bh(a){var s=this.Y$ +s=s==null?null:s.bh(a) +return s==null?this.ahf(a):s}, +bo(a){var s=this.Y$ +s=s==null?null:s.aw(B.ad,a,s.gbG()) +return s==null?this.ahg(a):s}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){return this.nL(a,b)}, +bJ(){var s=this +return s.id=s.ant(s.Y$,t.k.a(A.H.prototype.gZ.call(s)),A.k1())}, +fo(a){if(!(a.b instanceof A.xk))a.b=new A.xk(null,null,B.h)}, +ant(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a==null)return new A.V(A.Z(0,b.a,b.b),A.Z(0,b.c,b.d)) +s=a.b +s.toString +r=t.SV +r.a(s) +q=c.$2(a,b) +p=s.a7$ +s=p!=null +o=s?c.$2(p,new A.aG(0,b.b,0,b.d)):B.A +n=q.b +n=n>0?n:o.b +m=q.a +l=b.bd(new A.V(m,n)) +if(c===A.k1()&&s){k=p.x8(B.Q,!0) +if(k==null)k=o.b +j=a.x8(B.Q,!0) +if(j==null)j=k +s=p.b +s.toString +r.a(s) +r=this.D===B.j?-o.a-5:m+5 +s.a=new A.j(r,j-k)}return l}} +A.b_Q.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.SV;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.SV;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b_R.prototype={} +A.Jl.prototype={ +aR(a){var s=new A.afG(this.d,A.a([],t.ER),this.e,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){t.ki.a(b) +b.sbAL(this.d) +b.shp(this.e)}} +A.afG.prototype={ +sbAL(a){if(a===this.D)return +this.D=a +this.a9()}, +ga6d(){var s,r,q=this,p=null,o=q.N +if(o!=null)return o +s=A.jT(p,p,p,p,A.cy(p,p,p,q.ag,"1."),B.ah,B.j,p,1,B.Y,B.a0) +s.qt() +q.N=s +r=q.a4 +B.b.V(r) +B.b.L(r,s.BK()) +return s}, +shp(a){var s=this +if(a.l(0,s.ag))return +s.N=null +s.ag=a +s.a9()}, +il(a){return this.ga6d().b.a.tc(a)}, +cX(a){var s=this.ga6d().b,r=s.b +s=s.a.a +return a.bd(new A.V(r,s.gdK(s)))}, +aI(a,b){var s,r,q,p,o,n,m,l=this,k=a.gbY(a),j=l.a4,i=j.length!==0?B.b.ga2(j):null +j=l.gu(0) +s=i!=null&&isFinite(i.gMr())&&isFinite(i.gP6())?l.gu(0).b-i.gMr()-i.gP6()+i.gP6()*0.7:l.gu(0).b/2 +r=b.S(0,new A.j(j.a/2,s)) +s=l.ag +q=s.b +p=s.r +if(q==null||p==null)return +o=p*0.2 +switch(l.D.a){case 0:j=$.ar().aP() +j.sa6(0,q) +j.se4(1) +j.sbN(0,B.a7) +k.h3(r,o*0.9,j) +break +case 1:j=$.ar().aP() +j.sa6(0,q) +k.h3(r,o,j) +break +case 2:n=o*2 +k.d6(0) +j=n/2 +k.ba(0,r.a-j,r.b-j) +s=$.ar() +m=s.dc() +m.ds(0,n,j) +m.ds(0,0,n) +s=s.aP() +s.sa6(0,q) +s.sbN(0,B.aH) +k.ey(m,s) +k.de(0) +break +case 3:n=o*2 +k.d6(0) +j=n/2 +k.ba(0,r.a-j,r.b-j) +s=$.ar() +m=s.dc() +m.ds(0,n,0) +m.ds(0,j,n) +s=s.aP() +s.sa6(0,q) +s.sbN(0,B.aH) +k.ey(m,s) +k.de(0) +break +case 4:j=A.jQ(r,o*0.8) +s=$.ar().aP() +s.sa6(0,q) +k.fs(j,s) +break}}, +bJ(){var s=t.k.a(A.H.prototype.gZ.call(this)),r=this.ga6d().b,q=r.b +r=r.a.a +this.id=s.bd(new A.V(q,r.gdK(r)))}} +A.Jm.prototype={ +H(){return"HtmlListMarkerType."+this.b}} +A.Ru.prototype={ +aR(a){var s=new A.ai5(0,null,null,A.aw(t.T)) +s.aQ() +return s}} +A.xp.prototype={} +A.ai5.prototype={ +il(a){var s,r,q=this.Y$ +if(q==null)return this.Je(a) +s=q.pK(a) +if(s==null)s=0 +r=q.b +r.toString +return t.gf.a(r).a.b+s}, +cX(a){return A.cOU(this.Y$,a,A.k0())}, +bi(a){var s,r,q,p=this.Y$ +if(p==null)return this.ahd(a) +s=p.bi(a) +r=p.b +r.toString +q=t.gf.a(r).a7$ +if(q==null)return s +return s+q.bi(a)}, +bb(a){var s,r,q,p=this.Y$ +if(p==null)return this.ahe(a) +s=p.bb(a) +r=p.b +r.toString +q=t.gf.a(r).a7$ +if(q==null)return s +return Math.max(s,q.bb(a))}, +bh(a){var s,r,q,p=this.Y$ +if(p==null)return this.ahf(a) +s=p.bh(a) +r=p.b +r.toString +q=t.gf.a(r).a7$ +if(q==null)return s +return s+q.bh(a)}, +bo(a){var s,r,q,p=this.Y$ +if(p==null)return this.ahg(a) +s=p.aw(B.ad,a,p.gbG()) +r=p.b +r.toString +q=t.gf.a(r).a7$ +if(q==null)return s +return Math.min(s,q.aw(B.ad,a,q.gbG()))}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){return this.nL(a,b)}, +bJ(){return this.id=A.cOU(this.Y$,t.k.a(A.H.prototype.gZ.call(this)),A.k1())}, +fo(a){if(!(a.b instanceof A.xp))a.b=new A.xp(null,null,B.h)}} +A.b0D.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.gf;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.gf;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0E.prototype={} +A.avA.prototype={ +aR(a){var s=this,r=$.cP5 +$.cP5=r+1 +r=new A.aji(A.zg("fwfh.HtmlTable"+r),s.e,s.f,s.r,B.bAL,s.w,s.x,0,null,null,A.aw(t.T)) +r.aQ() +return r}, +b_(a,b){var s,r=this +t.Gh.a(b) +s=r.e +if(!J.q(s,b.N)){b.N=s +b.a9()}s=r.f +if(s!==b.a4){b.a4=s +b.a9()}s=r.r +if(s!==b.ag){b.ag=s +b.a9()}s=r.w +if(s!==b.aJ){b.aJ=s +b.a9()}s=r.x +if(s!==b.U){b.U=s +b.a9()}}} +A.Rv.prototype={} +A.n4.prototype={ +tX(a){var s,r,q,p=this,o=a.b +o.toString +t.oQ.a(o) +s=p.f +if(!J.q(o.e,s)){o.e=s +r=!0}else r=!1 +s=p.r +if(o.f!==s){o.f=s +r=!0}s=p.w +if(o.r!==s){o.r=s +r=!0}s=p.Q +if(o.w!==s){o.w=s +r=!0}s=p.y +if(o.y!==s){o.y=s +r=!0}s=p.x +if(o.x!==s){o.x=s +r=!0}s=p.z +if(!J.q(o.z,s)){o.z=s +r=!0}if(r){q=a.gbR(a) +if(q instanceof A.H)q.a9()}}} +A.cp2.prototype={ +$1(a){return a<=0.01}, +$S:66} +A.mK.prototype={} +A.ajh.prototype={} +A.aXM.prototype={ +ax7(a){var s,r=this +if(a==null){s=r.a +return new A.ajh(B.a8,new A.V(A.Z(0,s.a,s.b),A.Z(0,s.c,s.d)))}return r.aNq(r.aNp(r.aNo(r.aNm(r.aNl(a)))))}, +aNl(a){var s,r,q,p,o,n,m,l=A.a([],t.WY),k=A.a([],t.Ik) +for(s=t.oQ,r=a,q=0,p=0;r!=null;){o=r.b +o.toString +s.a(o) +k.push(r) +l.push(o) +q=Math.max(q,o.r+o.f) +p=Math.max(p,o.y+o.x) +r=o.a7$}s=this.c +n=s.aJ +if(isFinite(n)&&n>0){o=s.ga8f(0) +m=n-(s.gaCU(0)+(q+1)*o+s.gaCV(0))}else m=null +return new A.chx(m,l,k,q,n,p)}, +aNm(a){var s,r,q,p=a.b,o=A.X(p).h("O<1,U?>"),n=A.R(new A.O(p,new A.chJ(a),o),!1,o.h("aa.E")),m=A.aK(a.d,0,!1,t.i) +for(o=this.c,s=0;s") +return new A.chy(a,n,A.R(new A.O(m,new A.chK(),o),!1,o.h("aa.E")))}, +aNo(a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=null,e=a6.a,d=e.a,c=e.b,b=e.c,a=A.aK(b.length,f,!1,t.tW),a0=A.aK(b.length,f,!1,t.PM),a1=a6.c,a2=A.X(a1).h("O<1,U>"),a3=A.R(new A.O(a1,new A.chL(),a2),!0,a2.h("aa.E")),a4=A.aK(e.d,0,!1,t.i),a5=a3 +if(!A.dlx(a5).gaz(0).t())if(d!=null){a1=a5 +a2=J.ao(a1) +a1=(a2.gad(a1)?0:a2.i6(a1,A.vd()))<=d}else a1=!0 +else a1=!1 +if(a1)return new A.aXK(a6,a5) +for(a1=d!=null,a2=a6.b,l=this.b,k=this.c,j=k.D,i=!0;i;){for(s=0,i=!1;s=q){if(s==null)return null +if((B.b.gad(c)?0:B.b.i6(c,A.vd()))<=s)return null +if(q>=A.cAI(f,d))return null}return b.aw(B.ad,1/0,b.gbG())}, +aNp(a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=null,a1=a6.a.a,a2=a1.b,a3=a1.c,a4=A.aK(a3.length,B.A,!1,t.FW),a5=A.aK(a1.f,0,!1,t.i) +for(s=this.b,r=this.c,q=r.D,p=a6.b,o=0;o")) +f.dD(p,i,h,g.c) +i=f.gad(0)?0:f.i6(0,A.vd()) +e=i+(l-1)*j +d=s.$2(n,A.fH(a0,e)) +q.lc(B.j5,"Got child#"+o+" size with width="+A.r(e)+": "+d.k(0),a0,a0) +a4[o]=d +j=d.b +l=m.x +k=r.N +i=k!=null&&r.a4?k.a.b*-1:r.ag +c=(j-(l-1)*i)/l +for(j=m.y,b=0;b") +b=new A.b3(s,g,f,d) +b.dD(s,g,f,c) +g=b.gad(0)?0:b.i6(0,A.vd()) +a=g+(b6-1)*r+o +r=j.f +h=b2.N +b6=h!=null&&b2.a4?h.d.b*-1:b2.ag +g=j.r +f=g+r +A.dM(g,f,q.length,a7,a7) +b=A.X(q) +a0=b.c +b=b.h("b3<1>") +a1=new A.b3(q,g,f,b) +a1.dD(q,g,f,a0) +g=a1.gad(0)?0:a1.i6(0,A.vd()) +a2=g+(r-1)*b6 +if(i.b!==a){i=b4.$2(k,new A.aG(a2,a2,a,a)) +a=i.b +a2=i.a +b5.lc(B.j5,"Laid out child#"+l+" at "+A.r(a2)+"x"+A.r(a),a7,a7)}if(j.w)a3=0 +else{b6=b2.N +b6=b6==null?a7:b6.a.b +a3=b6==null?0:b6}b6=j.y +h=b2.N +r=h!=null&&b2.a4?h.a.b*-1:b2.ag +A.dM(0,b6,e,a7,a7) +d=new A.b3(s,0,b6,d) +d.dD(s,0,b6,c) +a4=a3+(d.gad(0)?0:d.i6(0,A.vd()))+(b6+1)*r +if(k.id!=null){b6=b2.N +r=b6==null +a3=r?a7:b6.d.b +if(a3==null)a3=0 +g=j.r +b6=!r&&b2.a4?b6.d.b*-1:b2.ag +A.dM(0,g,q.length,a7,a7) +b=new A.b3(q,0,g,b) +b.dD(q,0,g,a0) +a5=a3+(b.gad(0)?0:b.i6(0,A.vd()))+(g+1)*b6 +switch(b2.U.a){case 1:a6=a5 +break +case 0:a6=n-a2-a5 +break +default:a6=a7}j.a=new A.j(a6,a4)}if(j.w)m=Math.max(m,a4+a)}return new A.ajh(new A.W(0,m,0+n,m+(p-m)),new A.V(n,p))}} +A.chJ.prototype={ +$1(a){var s=a.z,r=s==null?null:s.dV(0,0,this.a.e) +return(r==null?null:isFinite(r))===!0?r:null}, +$S:893} +A.chK.prototype={ +$1(a){return!(a<=0.01)?a:null}, +$S:894} +A.chL.prototype={ +$1(a){return a==null?0:a}, +$S:895} +A.chH.prototype={ +$1(a){return isNaN(a)?this.a:a}, +$S:1} +A.chI.prototype={ +$1(a){var s=a.b,r=isNaN(s)?this.a:s +return Math.min(r,A.fP(this.b[a.a]))}, +$S:896} +A.chx.prototype={} +A.chy.prototype={} +A.aXK.prototype={} +A.chz.prototype={} +A.aji.prototype={ +ga8f(a){var s=this.N +return s!=null&&this.a4?s.d.b*-1:this.ag}, +gaCU(a){var s=this.N +s=s==null?null:s.d.b +return s==null?0:s}, +gaCV(a){var s=this.N +s=s==null?null:s.b.b +return s==null?0:s}, +gbGx(a){var s=this.N +return s!=null&&this.a4?s.a.b*-1:this.ag}, +il(a){var s,r,q,p,o=this.Y$ +for(s=t.oQ,r=null;o!=null;){q=o.b +q.toString +s.a(q) +if(q.y===0){p=o.pK(a) +if(p!=null){p+=q.a.b +if(r!=null){if(pr){n=o-r +if(l.gu(0).b-i.gu(0).b>=n){a.eM(i,new A.j(k+0,j+n)) +return}else{l.cZ+=n +l.aS=o +$.an.xr$.push(new A.cmy(l)) +return}}else if(o0 +return(s.b&r.a)!==0&&(s.a&r.b)!==0}} +A.baD.prototype={} +A.baE.prototype={ +a9X(a){}, +aDj(a,b){}, +aDi(a,b){}} +A.pT.prototype={ +n_(a,b){var s=this.a,r=a.a.a,q=r[0],p=b.a.a,o=p[0] +s.saf(0,qo?q:o) +r=r[1] +p=p[1] +s.saj(0,r>p?r:p)}, +gzM(){var s=this.b.a,r=this.a.a +return 2*(s[0]-r[0]+s[1]-r[1])}, +k(a){return"AABB["+this.a.k(0)+" . "+this.b.k(0)+"]"}} +A.bbS.prototype={ +bGH(a,b){var s,r=this.a.b,q=r[a].b,p=r[b].b +r=p.a.a +s=q.b.a +if(r[0]-s[0]>0||r[1]-s[1]>0)return!1 +r=q.a.a +s=p.b.a +if(r[0]-s[0]>0||r[1]-s[1]>0)return!1 +return!0}, +ae1(a){var s,r,q,p,o,n,m,l=this,k=l.c +k.V(0) +for(s=l.b,r=s.length,q=l.a,p=0;p=0;--r){q=this.b +p=new Float64Array(2) +p=new A.tP(r,new A.pT(new A.ah(p),new A.ah(new Float64Array(2)))) +q[r]=p +p.d=r===s?null:q[r+1] +p.r=-1}for(q=this.f,s=0;s<4;++s)q[s]=new A.ah(new Float64Array(2))}, +bBg(a,b,c){var s,r,q,p,o,n=this.b[a],m=n.b,l=m.a,k=l.a,j=b.a.a +if(k[0]<=j[0])if(k[1]<=j[1]){s=b.b.a +r=m.b.a +s=s[0]<=r[0]&&s[1]<=r[1]}else s=!1 +else s=!1 +if(s)return!1 +this.aqF(n) +q=m.b +l.saf(0,j[0]-0.1) +l.saj(0,j[1]-0.1) +j=b.b.a +q.saf(0,j[0]+0.1) +q.saj(0,j[1]+0.1) +j=c.a +p=j[0]*2 +o=j[1]*2 +if(p<0)l.saf(0,k[0]+p) +else q.saf(0,q.a[0]+p) +if(o<0)l.saj(0,k[1]+o) +else q.saj(0,q.a[1]+o) +this.anN(a) +return!0}, +aE8(a,b,c){var s,r,q,p,o,n,m,l=this +l.w=0 +s=l.r +l.w=1 +s[0]=l.a +for(s=t.eh;r=l.w,r>0;){q=l.r;--r +l.w=r +p=q[r] +if(p==null)continue +if(A.d1w(p.b,c))if(p.e==null){if(!b.aFP(p.a))return}else{r=l.r +q=r.length +if(q-l.w-2<=0){o=A.a(new Array(q),s) +for(n=0;n=q;--n){q=k[n] +q.d=n===p?null:k[n+1] +q.r=-1}l.e=q +k=q}m=l.b[k] +k=m.d +l.e=k!=null?k.a:-1 +m.f=m.e=m.d=null +m.r=0 +m.c=null;++l.c +return m}, +a38(a){var s=this,r=s.e +a.d=r!==-1?s.b[r]:null +a.r=-1 +s.e=a.a;--s.c}, +anN(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=d.b[a],b=d.a +if(b==null){d.a=c +c.d=null +return}s=c.b +r=d.Q +while(!0){if(!(b.e!=null))break +q=b.e +q.toString +p=b.f +p.toString +o=b.b +n=o.gzM() +r.n_(o,s) +m=r.gzM() +l=2*m +k=2*(m-n) +o=q.b +if(q.e==null){r.n_(s,o) +j=r.gzM()+k}else{r.n_(s,o) +i=o.gzM() +j=r.gzM()-i+k}o=p.b +if(p.e==null){r.n_(s,o) +h=r.gzM()+k}else{r.n_(s,o) +i=o.gzM() +h=r.gzM()-i+k}if(l1){q=s.e +q.toString +p=s.f +p.toString +s.e=a +s.d=a.d +a.d=s +o=s.d +if(o!=null)if(o.e===a)o.e=s +else o.f=s +else this.a=s +o=q.r +n=p.r +m=a.b +l=h.b +k=p.b +j=s.b +i=q.b +if(o>n){s.f=q +a.f=p +p.d=a +m.n_(l,k) +j.n_(m,i) +h=1+Math.max(h.r,p.r) +a.r=h +s.r=1+Math.max(h,q.r)}else{s.f=p +a.f=q +q.d=a +m.n_(l,i) +j.n_(m,k) +h=1+Math.max(h.r,q.r) +a.r=h +s.r=1+Math.max(h,p.r)}return s}if(r<-1){q=h.e +q.toString +p=h.f +p.toString +h.e=a +h.d=a.d +a.d=h +o=h.d +if(o!=null)if(o.e===a)o.e=h +else o.f=h +else this.a=h +o=q.r +n=p.r +m=a.b +l=s.b +k=p.b +j=h.b +i=q.b +if(o>n){h.f=q +a.e=p +p.d=a +m.n_(l,k) +j.n_(m,i) +p=1+Math.max(s.r,p.r) +a.r=p +h.r=1+Math.max(p,q.r)}else{h.f=p +a.e=q +q.d=a +m.n_(l,i) +j.n_(m,k) +q=1+Math.max(s.r,q.r) +a.r=q +h.r=1+Math.max(q,p.r)}return h}return a}} +A.tP.prototype={} +A.Th.prototype={ +bn(a,b){var s=this.a,r=b.a +if(sd*d)return +a.d=B.p3 +a.c.T(s) +a.b.j8() +a.e=1 +q=a.a +q[0].a.T(r) +q[0].d.Pr()}, +bqy(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 +b4.e=0 +s=b7.c +r=b8.b +q=b6.b +p=r.b +o=s.a +n=o[0] +m=r.a +l=o[1] +k=b8.a.a +j=k[0] +k=k[1] +i=b6.a.a +h=p*n-m*l+j-i[0] +g=m*n+p*l+k-i[1] +i=q.b +k=q.a +f=i*h+k*g +e=-k*h+i*g +d=b5.b+b7.b +c=b5.d +b=b5.e +for(p=c.length,a=0,a0=-17976931348623157e292,a1=0;a1d)return +if(a2>a0){a0=a2 +a=a1}}a3=a+1 +a3=a3d*d)return +b4.e=1 +b4.d=B.hR +o=b4.b +o.saf(0,a7) +o.saj(0,e-p[1]) +o.jI(0) +b4.c.T(a4) +o=b4.a +o[0].a.T(s) +o[0].d.Pr()}else if(a9*(o-l)+b0*(n-k)<=0){if(a9*a9+b0*b0>d*d)return +b4.e=1 +b4.d=B.hR +p=b4.b +p.saf(0,a9) +p.saj(0,e-m[1]) +p.jI(0) +b4.c.T(a5) +p=b4.a +p[0].a.T(s) +p[0].d.Pr()}else{b1=(o+l)*0.5 +b2=(n+k)*0.5 +b3=b[a] +p=b3.a +if((f-b1)*p[0]+(e-b2)*p[1]>d)return +b4.e=1 +b4.d=B.hR +b4.b.T(b3) +p=b4.c +p.saf(0,b1) +p.saj(0,b2) +p=b4.a +p[0].a.T(s) +p[0].d.Pr()}}, +azL(a0,a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=a1.d,e=f.length,d=a3.d,c=d.length,b=a1.e,a=this.f +a.T(A.cNc(a4,a2)) +s=a.b +for(r=this.r.a,q=this.w.a,p=0,o=-17976931348623157e292,n=0;no){o=l +p=n}}a0.b=p +a0.a=o}, +bwh(a5,a6,a7,a8,a9,b0){var s,r,q,p,o,n,m,l,k,j,i,h,g=a9.d,f=g.length,e=a9.e,d=a5[0],c=a5[1],b=a7.b,a=b0.b,a0=a6.e[a8],a1=b.b,a2=a0.a,a3=a2[0],a4=b.a +a2=a2[1] +s=a1*a3-a4*a2 +r=a4*a3+a1*a2 +a2=a.b +a1=a.a +q=a2*s+a1*r +p=-a1*s+a2*r +for(o=0,n=17976931348623157e292,m=0;ms)return +q=b0.y +b0.azL(q,b4,b5,b2,b3) +p=q.a +if(p>s)return +if(p>r.a+0.0005){o=q.b +b1.d=B.Qd +n=b3 +m=b5 +l=b2 +k=b4 +j=!0}else{o=r.b +b1.d=B.hR +n=b5 +m=b3 +l=b4 +k=b2 +j=!1}i=m.b +r=b0.ch +b0.bwh(r,k,m,o,l,n) +q=k.d +h=o+1 +h=h0)return}i[0]=0 +i[2]=0 +a.e=1 +a.d=B.p3 +a.b.j8() +a.c.T(p) +s=a.a +s[0].d.ci(0,j) +s[0].a.T(r) +return}if(m<=0){n=c.d +n.T(q) +n.e1(0,o) +if(B.e.pN(n.ei(n),k.X(0,k)))return +if(b.gby1()){g=c.dy +g.T(b.gbHW()) +g.e1(0,o) +s.T(q) +s.e1(0,o) +if(g.ei(s)>0)return}i[0]=1 +i[2]=0 +a.e=1 +a.d=B.p3 +a.b.j8() +a.c.T(o) +s=a.a +s[0].d.ci(0,j) +s[0].a.T(r) +return}f=n.ei(n) +e=c.fr +e.T(p) +e.bK(0,m) +s.T(o) +s.bK(0,l) +e.B(0,s) +e.bK(0,1/f) +d=c.d +d.T(q) +d.e1(0,e) +if(B.e.pN(d.ei(d),k.X(0,k)))return +e=c.r +n=n.a +e.saf(0,-n[1]) +e.saj(0,n[0]) +s.T(q) +s.e1(0,p) +if(e.ei(s)<0){s=e.a +e.dm(-s[0],-s[1])}e.jI(0) +i[0]=0 +i[2]=1 +a.e=1 +a.d=B.hR +a.b.T(e) +a.c.T(p) +s=a.a +s[0].d.ci(0,j) +s[0].a.T(r)}} +A.bfj.prototype={ +ax1(b2,b3,b4,b5,b6){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.b +b1.T(A.cNc(b4,b6)) +s=b0.c +s.T(A.f_(b1,b5.c)) +b0.d=b3.gbHV() +b0.e=b3.gae5() +b0.f=b3.gae6() +b0.r=b3.gbHW() +r=b3.gby0() +q=b3.gby1() +p=b0.CW +p.T(b0.f) +p.e1(0,b0.e) +p.jI(0) +o=b0.x +n=p.a +o.dm(n[1],-n[0]) +n=b0.cx +n.T(s) +n.e1(0,b0.e) +m=o.ei(n) +if(r){l=b0.cy +l.T(b0.e) +l.e1(0,b0.d) +l.jI(0) +k=b0.w +j=l.a +k.dm(j[1],-j[0]) +i=l.qf(p)>=0 +n.T(s) +n.e1(0,b0.d) +h=k.ei(n)}else{h=0 +i=!1}if(q){l=b0.db +l.T(b0.r) +l.e1(0,b0.f) +l.jI(0) +k=b0.y +j=l.a +k.dm(j[1],-j[0]) +g=p.qf(l)>0 +n.T(s) +n.e1(0,b0.f) +f=k.ei(n)}else{f=0 +g=!1}if(r&&q)if(i&&g){s=h>=0||m>=0||f>=0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +s=b0.w.a +k.saf(0,s[0]) +k.saj(0,s[1]) +s=b0.y.a +j.saf(0,s[0]) +j.saj(0,s[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +k.saf(0,-l[0]) +k.saj(0,-l[1]) +j.saf(0,-l[0]) +j.saj(0,-l[1])}}else if(i){if(!(h>=0))s=m>=0&&f>=0 +else s=!0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +s=b0.w.a +k.saf(0,s[0]) +k.saj(0,s[1]) +j.saf(0,l[0]) +j.saj(0,l[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +s=b0.y.a +k.saf(0,-s[0]) +k.saj(0,-s[1]) +j.saf(0,-l[0]) +j.saj(0,-l[1])}}else if(g){if(!(f>=0))s=h>=0&&m>=0 +else s=!0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +k.saf(0,l[0]) +k.saj(0,l[1]) +s=b0.y.a +j.saf(0,s[0]) +j.saj(0,s[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +k.saf(0,-l[0]) +k.saj(0,-l[1]) +s=b0.w.a +j.saf(0,-s[0]) +j.saj(0,-s[1])}}else{s=h>=0&&m>=0&&f>=0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +k.saf(0,l[0]) +k.saj(0,l[1]) +j.saf(0,l[0]) +j.saj(0,l[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +s=b0.y.a +k.saf(0,-s[0]) +k.saj(0,-s[1]) +s=b0.w.a +j.saf(0,-s[0]) +j.saj(0,-s[1])}}else if(r)if(i){s=h>=0||m>=0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +s=b0.w.a +k.saf(0,s[0]) +k.saj(0,s[1]) +j.saf(0,-l[0]) +j.saj(0,-l[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +k.saf(0,l[0]) +k.saj(0,l[1]) +j.saf(0,-l[0]) +j.saj(0,-l[1])}}else{s=h>=0&&m>=0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +k.saf(0,l[0]) +k.saj(0,l[1]) +j.saf(0,-l[0]) +j.saj(0,-l[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +k.saf(0,l[0]) +k.saj(0,l[1]) +s=b0.w.a +j.saf(0,-s[0]) +j.saj(0,-s[1])}}else if(q)if(g){s=m>=0||f>=0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +k.saf(0,-l[0]) +k.saj(0,-l[1]) +s=b0.y.a +j.saf(0,s[0]) +j.saj(0,s[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +k.saf(0,-l[0]) +k.saj(0,-l[1]) +j.saf(0,l[0]) +j.saj(0,l[1])}}else{s=m>=0&&f>=0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +k.saf(0,-l[0]) +k.saj(0,-l[1]) +j.saf(0,l[0]) +j.saj(0,l[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +s=b0.y.a +k.saf(0,-s[0]) +k.saj(0,-s[1]) +j.saf(0,l[0]) +j.saj(0,l[1])}}else{s=m>=0 +b0.ch=s +p=b0.z +l=o.a +k=b0.at +j=b0.ax +if(s){p.saf(0,l[0]) +p.saj(0,l[1]) +k.saf(0,-l[0]) +k.saj(0,-l[1]) +j.saf(0,-l[0]) +j.saj(0,-l[1])}else{p.saf(0,-l[0]) +p.saj(0,-l[1]) +k.saf(0,l[0]) +k.saj(0,l[1]) +j.saf(0,l[0]) +j.saj(0,l[1])}}s=b0.a +p=b5.d +s.c=p.length +for(l=s.a,k=s.b,j=b1.b,e=b5.e,d=0;db0.ay)return +a0=b0.go +b0.br0(a0) +j=a0.a===B.ng +if(!j&&a0.c>b0.ay)return +if(!j)if(a0.c>0.98*a.c+0.001)a=a0 +j=b0.dx +a1=j[0] +a2=j[1] +if(a.a===B.nh){b2.d=B.hR +c=b0.z +a3=c.ei(k[0]) +for(a4=0,d=1;a5=s.c,da2.ay){a3.a=B.CU +a3.b=i +a3.c=a1 +return}if(b*s[0]+a*s[1]>=0){n[1]=a +n[0]=o[0] +p.e1(0,j) +if(p.ei(r)<-0.03490658503988659)continue}else{n[1]=a +n[0]=o[0] +p.e1(0,m) +if(p.ei(r)<-0.03490658503988659)continue}if(a1>a3.c){a3.a=B.CU +a3.b=i +a3.c=a1}}}} +A.HV.prototype={ +PH(a){var s=this.a +return(s[0]<<24|s[1]<<16|s[2]<<8|s[3])>>>0}, +ci(a,b){var s=b.a,r=this.a +r[0]=s[0] +r[1]=s[1] +r[2]=s[2] +r[3]=s[3]}, +Pr(){var s=this.a +s[0]=0 +s[1]=0 +s[2]=0 +s[3]=0}, +bn(a,b){return this.PH(0)-b.PH(0)}, +$icT:1} +A.aWD.prototype={ +ci(a,b){var s=this +s.a.T(b.a) +s.b.T(b.b) +s.c.T(b.c) +s.d=b.d +s.e=b.e +s.f=b.f}} +A.bG_.prototype={} +A.ceR.prototype={ +bF6(a,b,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this +c.b=a.b +for(s=c.a,r=a.c,q=a.d,p=b.a,o=a1.a,n=0;m=c.b,n1){e=a.a +d=c.aeN() +if(d<0.5*e||2*e0)s.IE(1,a) +else s.IE(-1,a) +return +default:a.j8() +return}}, +aeA(a){var s,r,q,p=this +switch(p.b){case 0:a.j8() +return +case 1:a.T(p.a[0].c) +return +case 2:s=p.e +r=p.a +s.T(r[1].c) +s.bK(0,r[1].d) +q=p.d +q.T(r[0].c) +q.bK(0,r[0].d) +q.B(0,s) +a.T(q) +return +case 3:a.j8() +return +default:a.j8() +return}}, +aJv(a,b){var s,r,q,p=this +switch(p.b){case 0:break +case 1:s=p.a +a.T(s[0].a) +b.T(s[0].b) +break +case 2:s=p.d +r=p.a +s.T(r[0].a) +s.bK(0,r[0].d) +a.T(r[1].a) +a.bK(0,r[1].d) +a.B(0,s) +s.T(r[0].b) +s.bK(0,r[0].d) +b.T(r[1].b) +b.bK(0,r[1].d) +b.B(0,s) +break +case 3:s=p.a +a.T(s[0].a) +a.bK(0,s[0].d) +r=p.f +r.T(s[1].a) +r.bK(0,s[1].d) +q=p.r +q.T(s[2].a) +q.bK(0,s[2].d) +a.B(0,r) +a.B(0,q) +b.T(a) +break +default:break}}, +aeN(){var s,r,q,p=this +switch(p.b){case 0:return 0 +case 1:return 0 +case 2:s=p.a +return Math.sqrt(s[0].c.a9G(s[1].c)) +case 3:s=p.f +r=p.a +s.T(r[1].c) +s.e1(0,r[0].c) +q=p.r +q.T(r[2].c) +q.e1(0,r[0].c) +return s.qf(q) +default:return 0}}, +aMw(){var s,r,q,p=this,o=p.a,n=o[0].c,m=o[1].c,l=p.c +l.T(m) +l.e1(0,n) +s=-n.ei(l) +if(s<=0){p.b=o[0].d=1 +return}r=m.ei(l) +if(r<=0){l=o[1] +p.b=l.d=1 +o[0].ci(0,l) +return}q=1/(r+s) +o[0].d=r*q +o[1].d=s*q +p.b=2}, +aMx(){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=a3.y,a5=a3.a +a4.T(a5[0].c) +s=a3.z +s.T(a5[1].c) +r=a3.Q +r.T(a5[2].c) +q=a3.c +q.T(s) +q.e1(0,a4) +p=a4.ei(q) +o=s.ei(q) +n=-p +m=a3.w +m.T(r) +m.e1(0,a4) +l=a4.ei(m) +k=r.ei(m) +j=-l +i=a3.x +i.T(r) +i.e1(0,s) +h=s.ei(i) +g=r.ei(i) +f=-h +e=q.qf(m) +d=e*s.qf(r) +c=e*r.qf(a4) +b=e*a4.qf(s) +if(n<=0&&j<=0){a3.b=a5[0].d=1 +return}if(o>0&&n>0&&b<=0){a=1/(o+n) +a5[0].d=o*a +a5[1].d=n*a +a3.b=2 +return}if(k>0&&j>0&&c<=0){a0=1/(k+j) +a5[0].d=k*a0 +a4=a5[2] +a4.d=j*a0 +a3.b=2 +a5[1].ci(0,a4) +return}if(o<=0&&f<=0){a4=a5[1] +a3.b=a4.d=1 +a5[0].ci(0,a4) +return}if(k<=0&&g<=0){a4=a5[2] +a3.b=a4.d=1 +a5[0].ci(0,a4) +return}if(g>0&&f>0&&d<=0){a1=1/(g+f) +a5[1].d=g*a1 +a4=a5[2] +a4.d=f*a1 +a3.b=2 +a5[0].ci(0,a4) +return}a2=1/(d+c+b) +a5[0].d=d*a2 +a5[1].d=c*a2 +a5[2].d=b*a2 +a3.b=3}} +A.bdH.prototype={ +df(a,b,c){var s,r,q,p,o,n,m=this +switch(b.a.a){case 0:t.iX.a(b) +m.a[0].T(b.c) +m.b=1 +m.c=b.b +break +case 2:t.uC.a(b) +s=b.d +r=s.length +m.b=r +m.c=b.b +for(q=m.a,p=0;po){o=q +s=r}}return s}} +A.bdE.prototype={ +bqW(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=this +$.cGZ=$.cGZ+1 +s=b2.a +r=b2.b +q=b2.c +p=b2.d +o=a9.a +o.bF6(b1,s,q,r,p) +n=o.a +m=a9.d +o.aeA(m) +m.gqu() +for(l=a9.b,k=a9.c,j=a9.f,i=q.b,h=a9.e,g=j.a,f=s.a,e=p.b,d=r.a,c=0;c<20;){b=o.b +for(a=0;ak&&o>11920928955078125e-23){b0.c=o-k +o=a9.r +o.T(l) +o.e1(0,m) +o.jI(0) +j.T(o) +j.bK(0,a7) +m.B(0,j) +j.T(o) +j.bK(0,a8) +l.e1(0,j)}else{m.B(0,l) +m.bK(0,0.5) +l.T(m) +b0.c=0}}}} +A.bdF.prototype={} +A.bdG.prototype={} +A.a5h.prototype={ +H(){return"ManifoldType."+this.b}} +A.bre.prototype={ +ci(a,b){var s,r,q,p,o,n,m,l=this +for(s=l.a,r=b.a,q=0;q0)return!1}return!0}, +VE(a,b,a0){var s,r,q,p,o,n,m,l,k,j=this,i=a.a,h=a.b,g=j.d,f=g[0],e=b.b,d=e.b,c=e.a +e=b.a.a +s=e[0] +r=e[1] +e=f.a +i.saf(0,d*e[0]-c*e[1]+s) +i.saj(0,c*e[0]+d*e[1]+r) +e=i.a +h.saf(0,e[0]) +h.saj(0,e[1]) +for(q=g.length,p=h.a,o=1;ol?n:l +n=p[1] +p[1]=n>k?n:k}i.saf(0,e[0]-j.b) +i.saj(0,e[1]-j.b) +h.saf(0,p[0]+j.b) +h.saj(0,p[1]+j.b)}, +axa(a9,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=a9.b,a7=a6.b,a8=a6.a +a6=a9.a.a +s=b0.gaf(b0).W(0,a6[0]) +r=b0.gaj(b0).W(0,a6[1]) +q=B.e.X(a7,s)+B.e.X(a8,r) +p=B.e.X(-a8,s)+B.e.X(a7,r) +for(a6=this.d,o=a6.length,n=this.e,m=p,l=q,k=-17976931348623157e292,j=0;jk){m=c +l=d +k=b}}if(k>0){a=k*k +for(a0=m,a1=l,j=0;ja4){a=a4 +a0=a3 +a1=a2}}a5=Math.sqrt(a) +b2.saf(0,a7*a1-a8*a0) +b2.saj(0,a8*a1+a7*a0) +b2.jI(0)}else{b2.saf(0,a7*l-a8*m) +b2.saj(0,a8*l+a7*m) +a5=k}return a5}, +aEc(a4,a5,a6,a7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=a6.b,a2=a1.b,a3=a1.a +a1=a5.a.a +s=a1[0] +r=a6.a.a +q=r[0] +p=s-q +a1=a1[1] +r=r[1] +o=a1-r +n=a2*p+a3*o +a1=-a3 +m=a1*p+a2*o +s=a5.b.a +p=s[0]-q +o=s[1]-r +l=a2*p+a3*o-n +k=a1*p+a2*o-m +j=a5.c +for(a1=this.d,s=a1.length,r=this.e,i=0,h=-1,g=0;g0&&b=0){a4.b=i +a0=a4.a +a1=r[h].a +a0.saf(0,a2*a1[0]-a3*a1[1]) +a0.saj(0,a3*a1[0]+a2*a1[1]) +return!0}return!1}, +axe(a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=new A.ah(new Float64Array(2)),a0=new A.ah(new Float64Array(2)) +for(s=this.d,r=0;q=s.length,ri){b0.a=B.bo0 +b0.b=o +a=!0 +break}if(a2>h){d=a0 +a=!1 +break}a3=k.uj(0,j[0],j[1],d) +if(a3n){a5=a7 +a3=a8}else{a4=a7 +a2=a8}if(a6===50)break}$.cMZ=Math.max($.cMZ,a6);++a1 +if(a1===8||a6===50){a=!1 +break}}++c +$.cMX=$.cMX+1 +if(a)break +if(c===20){b0.a=B.YO +b0.b=d +break}}$.cMY=Math.max($.cMY,c)}} +A.a9m.prototype={ +H(){return"SeparationFunctionType."+this.b}} +A.bFl.prototype={ +byJ(a,b,c,a0,a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this +d.a=c +d.b=a1 +s=b.b +d.f=a0 +d.r=a2 +r=d.CW +a0.xc(r,a3) +q=d.cx +a2.xc(q,a3) +if(s===1){d.c=B.bla +a3=d.w +a3.T(c.a[b.c[0]]) +p=d.x +p.T(a1.a[b.d[0]]) +o=d.y +o.T(A.f_(r,a3)) +a3=d.z +a3.T(A.f_(q,p)) +p=d.e +p.T(a3) +p.e1(0,o) +return p.jI(0)}else{a3=b.c +p=a3[0] +o=b.d +n=a1.a +m=d.ch +l=d.e +k=d.at +j=d.d +i=d.z +h=c.a +g=d.y +if(p===a3[1]){d.c=B.blc +p=d.ax +p.T(n[o[0]]) +f=d.ay +f.T(n[o[1]]) +m.T(f) +m.e1(0,p) +m.IE(-1,l) +l.jI(0) +k.T(A.qF(q.b,l)) +j.T(p) +j.B(0,f) +j.bK(0,0.5) +i.T(A.f_(q,j)) +j=d.w +j.T(h[a3[0]]) +g.T(A.f_(r,j)) +m.T(g) +m.e1(0,i) +e=m.ei(k) +if(e<0){l.lJ() +e=-e}return e}else{d.c=B.blb +f=d.Q +f.T(h[p]) +p=d.as +p.T(h[a3[1]]) +m.T(p) +m.e1(0,f) +m.IE(-1,l) +l.jI(0) +k.T(A.qF(r.b,l)) +j.T(f) +j.B(0,p) +j.bK(0,0.5) +g.T(A.f_(r,j)) +j=d.x +j.T(n[o[0]]) +i.T(A.f_(q,j)) +m.T(i) +m.e1(0,g) +e=m.ei(k) +if(e<0){l.lJ() +e=-e}return e}}}, +bwk(a,b){var s,r,q,p,o,n=this,m=n.f +m===$&&A.b() +s=n.CW +m.xc(s,b) +m=n.r +m===$&&A.b() +r=n.cx +m.xc(r,b) +m=n.c +m===$&&A.b() +switch(m.a){case 0:m=n.cy +q=n.e +m.T(A.Us(s.b,q)) +p=n.db +q.lJ() +p.T(A.Us(r.b,q)) +q.lJ() +o=n.a +o===$&&A.b() +a[0]=o.Dw(m) +m=n.b +m===$&&A.b() +a[1]=m.Dw(p) +p=n.w +p.T(n.a.a[a[0]]) +m=n.x +m.T(n.b.a[a[1]]) +o=n.y +o.T(A.f_(s,p)) +p=n.z +p.T(A.f_(r,m)) +p.e1(0,o) +return p.ei(q) +case 1:m=n.at +m.T(A.qF(s.b,n.e)) +q=n.y +q.T(A.f_(s,n.d)) +s=n.db +m.lJ() +s.T(A.Us(r.b,m)) +m.lJ() +a[0]=-1 +p=n.b +p===$&&A.b() +s=p.Dw(s) +a[1]=s +p=n.x +p.T(n.b.a[s]) +s=n.z +s.T(A.f_(r,p)) +s.e1(0,q) +return s.ei(m) +case 2:m=n.at +m.T(A.qF(r.b,n.e)) +q=n.z +q.T(A.f_(r,n.d)) +r=n.cy +m.lJ() +r.T(A.Us(s.b,m)) +m.lJ() +a[1]=-1 +p=n.a +p===$&&A.b() +r=p.Dw(r) +a[0]=r +p=n.w +p.T(n.a.a[r]) +r=n.y +r.T(A.f_(s,p)) +r.e1(0,q) +return r.ei(m) +default:a[0]=-1 +a[1]=-1 +return 0}}, +uj(a,b,c,d){var s,r,q,p,o=this,n=o.f +n===$&&A.b() +s=o.CW +n.xc(s,d) +n=o.r +n===$&&A.b() +r=o.cx +n.xc(r,d) +n=o.c +n===$&&A.b() +switch(n.a){case 0:n=o.w +q=o.a +q===$&&A.b() +n.T(q.a[b]) +q=o.x +p=o.b +p===$&&A.b() +q.T(p.a[c]) +p=o.y +p.T(A.f_(s,n)) +n=o.z +n.T(A.f_(r,q)) +n.e1(0,p) +return n.ei(o.e) +case 1:n=o.at +n.T(A.qF(s.b,o.e)) +q=o.y +q.T(A.f_(s,o.d)) +s=o.x +p=o.b +p===$&&A.b() +s.T(p.a[c]) +p=o.z +p.T(A.f_(r,s)) +p.e1(0,q) +return p.ei(n) +case 2:n=o.at +n.T(A.qF(r.b,o.e)) +q=o.z +q.T(A.f_(r,o.d)) +r=o.w +p=o.a +p===$&&A.b() +r.T(p.a[b]) +p=o.y +p.T(A.f_(s,r)) +p.e1(0,q) +return p.ei(n) +default:return 0}}} +A.bPr.prototype={ +byI(a5,a6,a7,a8,a9,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=this +if(a6.e===0)return +switch(a6.d.a){case 0:s=a4.d +r=a4.e +q=a4.a +q.saf(0,1) +q.saj(0,0) +p=a7.b +o=a6.c.a +n=a7.a.a +s.saf(0,p.b*o[0]-p.a*o[1]+n[0]) +s.saj(0,p.a*o[0]+p.b*o[1]+n[1]) +n=a9.b +o=a6.a[0].a.a +p=a9.a.a +r.saf(0,n.b*o[0]-n.a*o[1]+p[0]) +r.saj(0,n.a*o[0]+n.b*o[1]+p[1]) +if(s.a9G(r)>14210854715202004e-30){p=r.a +o=s.a +q.saf(0,p[0]-o[0]) +q.saj(0,p[1]-o[1]) +q.jI(0)}q=q.a +p=q[0] +o=s.a +m=p*a8+o[0] +n=q[1] +l=n*a8+o[1] +o=r.a +k=-p*b0+o[0] +j=-n*b0+o[1] +o=a4.b +o[0].saf(0,(m+k)*0.5) +o[0].saj(0,(l+j)*0.5) +a4.c[0]=(k-m)*q[0]+(j-l)*q[1] +break +case 1:i=a4.d +q=a4.a +q.T(A.qF(a7.b,a6.b)) +i.T(A.f_(a7,a6.c)) +for(p=a6.a,o=a4.e.a,n=i.a,q=q.a,h=a4.b,g=a4.c,f=0;f0)s.bGa() +s.z.a|=1 +return d}, +aLF(a,b,c){var s,r,q,p=this,o=p.d,n=o.b +n.a=Math.sin(c) +n.b=Math.cos(c) +o.a.T(b) +n=p.f +s=n.c +s.T(A.f_(o,n.a)) +n.e=c +n.b.T(s) +n.d=n.e +n=p.z.b +n===$&&A.b() +r=n.a +for(n=p.Q,s=n.length,q=0;q0)this.mx(!0) +this.r.T(b)}, +sa7g(a,b){if(this.a===B.cz)return +if(b*b>0)this.mx(!0) +this.w=b}, +LA(a,b){var s,r,q,p=this +if(p.a!==B.e7)return +if((p.b&2)!==2)p.mx(!0) +p.saBN(0,p.r.S(0,a.X(0,p.ay))) +s=b.a +r=p.f.c.a +q=a.a +p.w=p.w+p.CW*((s[0]-r[0])*q[1]-(s[1]-r[1])*q[0])}, +bGa(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +e.CW=e.ch=e.ay=e.ax=0 +s=e.f +r=s.a +r.j8() +q=e.a +if(q===B.cz||q===B.a2w){r=e.d.a +s.b.T(r) +s.c.T(r) +s.d=s.e +return}p=new A.ah(new Float64Array(2)) +q=new Float64Array(2) +o=new A.ah(q) +n=e.fx +for(m=e.Q,l=m.length,k=n.b.a,j=0;j0){q=1/q +e.ay=q +p.bK(0,q)}else e.ay=e.ax=1 +q=e.ch +if(q>0&&(e.b&16)===0){q-=e.ax*p.ei(p) +e.ch=q +e.CW=1/q}else e.CW=e.ch=0 +q=s.c +f=new A.ah(new Float64Array(2)) +f.T(q) +r.T(p) +s=s.b +s.T(A.f_(e.d,r)) +q.T(s) +o.T(q) +o.e1(0,f) +o.IE(e.w,f) +e.r.B(0,f)}, +mx(a){var s,r=this +if(a){s=r.b +if((s&2)===0){r.b=s|2 +r.dy=0}}else{r.b&=4294967293 +r.dy=0 +r.r.j8() +r.w=0 +r.x.j8() +r.y=0}}, +ahP(){var s,r,q,p,o,n=this,m=n.fy,l=m.b,k=n.f +l.a=Math.sin(k.d) +s=Math.cos(k.d) +l.b=s +r=m.a +q=k.b.a +k=k.a.a +r.saf(0,q[0]-s*k[0]+l.a*k[1]) +r.saj(0,q[1]-l.a*k[0]-l.b*k[1]) +for(l=n.Q,k=l.length,s=n.z,r=n.d,p=0;p0)q=!0 +else q=!1 +if(q){s.mx(!0) +r.mx(!0)}}, +bqv(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=A.a([],t.go) +for(s=g.b,r=s.length,q=g.a,p=0;pr?s:r}, +cI(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.at,f=h.w +g.ci(0,f) +s=h.a|=4 +r=(s&2)===2 +q=h.b.b +p=h.c.b +h.uj(0,f,q.d,p.d) +o=f.e>0 +for(s=g.a,n=f.a,m=0;m0?1/d1:0 +d2=-1*c7 +d3=c3*d2-c4*c6 +d4=c9*d2-c5*c6 +d5=b8+a2*d3*d3+a3*d4*d4 +c2.f=d5>0?1/d5:0 +c2.r=0 +d6=c7*(a5[0]+a8*c5-b5[0]-b7*c4)+c6*(a5[1]+b4*c9-b5[1]-b0*c3) +if(d6<-1)c2.r=-g.Q*d6}if(g.at===2){d7=c0[0] +d8=c0[1] +a4=d7.a.a +a5=a4[0] +a8=c[1] +a4=a4[1] +c=c[0] +d9=a5*a8-a4*c +a4=d7.b.a +e0=a4[0]*a8-a4[1]*c +a4=d8.a.a +e1=a4[0]*a8-a4[1]*c +a4=d8.b.a +e2=a4[0]*a8-a4[1]*c +c=a2*d9 +a4=a3*e0 +e3=b8+c*d9+a4*e0 +e4=b8+a2*e1*e1+a3*e2*e2 +e5=b8+c*e1+a4*e2 +if(e3*e3<100*(e3*e4-e5*e5)){c=g.d +a4=c.a +a4[3]=e4 +a4[2]=e5 +a4[1]=e5 +a4[0]=e3 +a4=g.c +a4.T(c) +a4.bz2()}else g.at=1}}}, +ag2(){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=this.d +e5===$&&A.b() +s=e5.length +r=0 +for(;r0?c2:0 +b8=b7-c1 +a3.c=b7 +b9=c*b8 +c0=b*b8 +a1[0]=a7-b9*n +a1[1]=b2-c0*n +f-=l*(a8[0]*c0-a8[1]*b9) +h[0]=h[0]+b9*m +h[1]=h[1]+c0*m +d+=k*(i[0]*c0-i[1]*b9)}else{c3=i[0] +c4=i[1] +c5=c3.c +c6=c4.c +i=c3.b.a +a5=i[1] +a6=h[0] +a7=a1[0] +a8=c3.a.a +a9=a8[1] +b0=i[0] +b1=h[1] +b2=a1[1] +b3=a8[0] +b4=c4.b.a +b5=b4[1] +c1=c4.a.a +c7=c1[1] +c8=b4[0] +c9=c1[0] +d0=c3.r +d1=c4.r +d2=q.d.a +d3=d2[0] +d4=d2[2] +d5=(a4*a5+a6-a7+f*a9)*c+(d*b0+b1-b2-f*b3)*b-d0-(d3*c5+d4*c6) +d3=d2[1] +d6=(a4*b5+a6-a7+f*c7)*c+(d*c8+b1-b2-f*c9)*b-d1-(d3*c5+d2[3]*c6) +$loop$0:{a4=q.c.a +d7=(a4[0]*d5+a4[2]*d6)*-1 +d8=(a4[1]*d5+a4[3]*d6)*-1 +if(d7>=0&&d8>=0){d9=d7-c5 +e0=d8-c6 +e1=d9*c +e2=d9*b +e3=e0*c +e4=e0*b +a4=e1+e3 +a1[0]=a7-n*a4 +a7=e2+e4 +a1[1]=b2-n*a7 +h[0]=h[0]+m*a4 +h[1]=h[1]+m*a7 +f-=l*(a8[0]*e2-a8[1]*e1+(c1[0]*e4-c1[1]*e3)) +d+=k*(i[0]*e2-i[1]*e1+(b4[0]*e4-b4[1]*e3)) +c3.c=d7 +c4.c=d8 +break $loop$0}d7=-c3.e*d5 +if(d7>=0&&d3*d7+d6>=0){d9=d7-c5 +e0=0-c6 +e1=c*d9 +e2=b*d9 +e3=c*e0 +e4=b*e0 +a4=e1+e3 +a1[0]=a7-n*a4 +a7=e2+e4 +a1[1]=b2-n*a7 +h[0]=h[0]+m*a4 +h[1]=h[1]+m*a7 +f-=l*(a8[0]*e2-a8[1]*e1+(c1[0]*e4-c1[1]*e3)) +d+=k*(i[0]*e2-i[1]*e1+(b4[0]*e4-b4[1]*e3)) +c3.c=d7 +c4.c=0 +break $loop$0}d8=-c4.e*d6 +if(d8>=0&&d4*d8+d5>=0){d9=0-c5 +e0=d8-c6 +e1=c*d9 +e2=b*d9 +e3=c*e0 +e4=b*e0 +a4=e1+e3 +a1[0]=a7-n*a4 +a7=e2+e4 +a1[1]=b2-n*a7 +h[0]=h[0]+m*a4 +h[1]=h[1]+m*a7 +f-=l*(a8[0]*e2-a8[1]*e1+(c1[0]*e4-c1[1]*e3)) +d+=k*(i[0]*e2-i[1]*e1+(b4[0]*e4-b4[1]*e3)) +c3.c=0 +c4.c=d8 +break $loop$0}if(d5>=0&&d6>=0){d9=0-c5 +e0=0-c6 +e1=c*d9 +e2=b*d9 +e3=c*e0 +e4=b*e0 +a4=e1+e3 +a1[0]=a7-n*a4 +a7=e2+e4 +a1[1]=b2-n*a7 +h[0]=h[0]+m*a4 +h[1]=h[1]+m*a7 +f-=l*(a8[0]*e2-a8[1]*e1+(c1[0]*e4-c1[1]*e3)) +d+=k*(i[0]*e2-i[1]*e1+(b4[0]*e4-b4[1]*e3)) +c4.c=c3.c=0 +break $loop$0}break $loop$0}}i=this.c +i[p].b=f +i[o].b=d}}, +aNu(){var s,r,q,p,o,n,m,l,k=this.d +k===$&&A.b() +s=k.length +r=0 +for(;r0?-c2/c5:0 +c7=b3*c6 +c8=b6*c6 +b[0]=b[0]-c7*d +b[1]=b[1]-c8*d +a8-=c*(b8*c8-b9*c7) +a6[0]=a6[0]+c7*a1 +a6[1]=a6[1]+c8*a1 +b0+=a2*(c0*c8-c1*c7)}b=c9.b +b[f].b=a8 +b[e].b=b0}return i>=-0.015}, +aMK(d1,d2){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=this,d0=c9.d +d0===$&&A.b() +s=d0.length +r=c9.e +q=r.b +p=c9.f +o=p.b +n=r.a.a +m=p.a.a +l=c9.w +k=l.b.a +j=l.a.a +i=0 +h=0 +for(;h0?-c2/c5:0 +c7=b3*c6 +c8=b6*c6 +d[0]=d[0]-c7*a2 +d[1]=d[1]-c8*a2 +a8-=a3*(b8*c8-b9*c7) +a6[0]=a6[0]+c7*a4 +a6[1]=a6[1]+c8*a4 +b0+=a5*(c0*c8-c1*c7)}d=c9.b +d[f].b=a8 +d[e].b=b0}return i>=-0.0075}} +A.by9.prototype={ +aAU(a4,a5,a6,a7,a8){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=a6.b,a0=a7.b,a1=a5.a,a2=a1[a8],a3=a5.Q +a3===$&&A.b() +switch(a3.a){case 0:s=a1[0] +a1=a.b +a3=a5.c.a +r=a3[0] +q=a.a +a3=a3[1] +p=a6.a.a +o=a1*r-q*a3+p[0] +n=q*r+a1*a3+p[1] +p=a0.b +a3=s.a +a1=a3[0] +r=a0.a +a3=a3[1] +q=a7.a.a +m=p*a1-r*a3+q[0] +l=r*a1+p*a3+q[1] +q=b.a +a3=m-o +q.saf(0,a3) +p=l-n +q.saj(0,p) +q.jI(0) +a1=b.b +a1.saf(0,(o+m)*0.5) +a1.saj(0,(n+l)*0.5) +q=q.a +b.c=a3*q[0]+p*q[1]-a5.as-a5.at +break +case 1:a1=b.a +a3=a5.b.a +a1.saf(0,a.b*a3[0]-a.a*a3[1]) +a1.saj(0,a.a*a3[0]+a.b*a3[1]) +a3=a.b +r=a5.c.a +q=r[0] +p=a.a +r=r[1] +k=a6.a.a +j=k[0] +k=k[1] +i=a0.b +h=a2.a +g=h[0] +f=a0.a +h=h[1] +e=a7.a.a +d=i*g-f*h+e[0] +c=f*g+i*h+e[1] +a1=a1.a +b.c=(d-(a3*q-p*r+j))*a1[0]+(c-(p*q+a3*r+k))*a1[1]-a5.as-a5.at +a1=b.b +a1.saf(0,d) +a1.saj(0,c) +break +case 2:a1=b.a +a3=a5.b.a +a1.saf(0,a0.b*a3[0]-a0.a*a3[1]) +a1.saj(0,a0.a*a3[0]+a0.b*a3[1]) +a3=a0.b +r=a5.c.a +q=r[0] +p=a0.a +r=r[1] +k=a7.a.a +j=k[0] +k=k[1] +i=a.b +h=a2.a +g=h[0] +f=a.a +h=h[1] +e=a6.a.a +d=i*g-f*h+e[0] +c=f*g+i*h+e[1] +e=a1.a +b.c=(d-(a3*q-p*r+j))*e[0]+(c-(p*q+a3*r+k))*e[1]-a5.as-a5.at +k=b.b +k.saf(0,d) +k.saj(0,c) +a1.saf(0,e[0]*-1) +a1.saj(0,e[1]*-1) +break}}} +A.aHs.prototype={} +A.baK.prototype={} +A.atb.prototype={ +uj(a,b,c,d){var s,r=$.OC(),q=this.b.c +q===$&&A.b() +t.__.a(q) +s=this.c.c +s===$&&A.b() +r.ax2(b,q,c,t.iX.a(s),d)}} +A.atc.prototype={ +uj(a,b,c,d){var s,r=$.OC(),q=this.b.c +q===$&&A.b() +t.__.a(q) +s=this.c.c +s===$&&A.b() +r.fx.ax1(b,q,c,t.uC.a(s),d)}} +A.aBM.prototype={ +uj(a,b,c,d){var s,r=$.OC(),q=this.b.c +q===$&&A.b() +t.uC.a(q) +s=this.c.c +s===$&&A.b() +r.bqy(b,q,c,t.iX.a(s),d)}} +A.aBN.prototype={ +uj(a,b,c,d){var s,r,q=$.OC(),p=this.b.c +p===$&&A.b() +s=t.uC +s.a(p) +r=this.c.c +r===$&&A.b() +q.bqz(b,p,c,s.a(r),d)}} +A.zU.prototype={} +A.AM.prototype={} +A.atR.prototype={} +A.Dn.prototype={ +aUG(a,b){var s,r,q,p,o,n=this +n.y=null +n.d=b.c +n.e=b.d +s=n.w +r=b.r +s.a=r.a +s.b=r.b +s.c=r.c +n.x=!1 +r=b.a.jy(0) +n.c=r +q=r.gqb() +s=n.f +r=s.length +if(rc?e:c +c=f.b.a +c[0]=e +e=j[1] +d=d[1] +c[1]=e>d?e:d +p[0]=r[0]-q[0] +p[1]=r[1]-q[1] +e=g.d +if(o.bBg(e,f,s))i.push(e)}}} +A.bia.prototype={} +A.atX.prototype={} +A.pW.prototype={} +A.bnO.prototype={ +gxV(){var s=this.b,r=A.X(s).h("O<1,zU>") +return A.R(new A.O(s,new A.bnP(),r),!0,r.h("aa.E"))}, +ga6R(){var s=this.b,r=A.X(s).h("O<1,AM>") +return A.R(new A.O(s,new A.bnQ(),r),!0,r.h("aa.E"))}, +aMv(b0,b1,b2,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=this,a9=b1.a +for(s=a8.b,r=s.length,q=b2.a,p=0;p$.cEf()){a0=2/Math.sqrt(d) +e[0]=e[0]*a0 +e[1]=e[1]*a0}a1=a9*j +if(a1*a1>$.cEe())j*=1.5707963267948966/Math.abs(a1) +d=h.a.a +d[0]=d[0]+a9*e[0] +d[1]=d[1]+a9*e[1] +h.b=l+a9*j +f.b=j}c=0 +while(!0){if(!(c0.0012184696791468343)){q=n.r +q=q.ei(q)>0.0001}else q=!0}else q=!0 +if(q){n.dy=0 +a7=0}else{q=n.dy+=a9 +a7=Math.min(a7,q)}}if(a7>=0.5&&a2)B.b.aE(s,new A.bnR())}}, +aMJ(a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this +for(s=a0.b,r=s.length,q=0;q$.cEf())e.bK(0,2/Math.sqrt(m)) +a=i*d +if(a*a>$.cEe())d*=1.5707963267948966/Math.abs(a) +m=h.a.a +m[0]=m[0]+n[0]*i +m[1]=m[1]+n[1]*i +f+=i*d +m[0]=m[0] +m[1]=m[1] +h.b=f +n[0]=n[0] +n[1]=n[1] +g.b=d +o=p.a +l=o.f +k=l.c.a +k[0]=m[0] +k[1]=m[1] +l.e=f +l=o.r.a +l[0]=n[0] +l[1]=n[1] +o.sa7g(0,d) +o.E9()}a0.aEY()}, +aEY(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +if(g.a==null)return +s=g.c +s===$&&A.b() +r=s.length +q=g.y +p=q.a +o=q.b +n=0 +for(;n8)continue +if((b&32)!==0)a=c.y +else{a0=c.b +a1=c.c +a2=a0.b +a3=a1.b +a4=a2.a +a5=a3.a +b=a2.b +a6=(b&2)===2&&a4!==B.cz +a7=a3.b +a8=(a7&2)===2&&a5!==B.cz +if(!a6&&!a8)continue +a9=(b&8)===8||a4!==B.e7 +b0=(a7&8)===8||a5!==B.e7 +if(!a9&&!b0)continue +b=a2.f +b1=b.f +a7=a3.f +b2=a7.f +if(b10?1/q:0 +j=l>0?1/l:0 +i=b0.gqb() +for(b0=this.a,p=b0.Q,o=s.d,n=0+k,b0=b0.at,r=r.c.a,m=b1.f,h=0;h>>0)+(B.e.au(128*e)+262144)) +a0=A.cKI(p,(B.e.au(b+2048)<<19>>>0)+(B.e.au(128*c)+262144)) +for(a1=a;a1>>0)+(B.e.au(128*f)+262144)) +a=A.cKI(b7.a.Q,(B.e.au(c+2048)<<19>>>0)+(B.e.au(128*d)+262144)) +for(a0=b;a0>>0)+(B.e.au(128*o)+262144))}B.b.o3(s) +B.b.V(this.as) +for(m=0;mf?g:f +g=q[1] +q[1]=g>e?g:e}s=d.ok +s.b=a2 +s.a=d +d.go.aE9(s,a)}, +DL(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this;++f.a +s=f.y +r=s.length +if(r===0)return +f.b=0 +for(q=0,p=0;q0.25){k=n.e +j=m.gb8(m) +i=m.geC() +h=c*k*(l-0.25) +g=n.d.a +p[0]=h*g[0] +p[1]=h*g[1] +i.saf(0,i.gaf(i).W(0,1.777777*p[0])) +i.saj(0,i.gaj(i).W(0,1.777777*p[1])) +n.b.LA(q,j)}}for(s=this.as,r=s.length,o=0;o0.25){i=n.a.geC() +f=n.b.geC() +h=c*(l-0.25) +p=n.e.a +e=h*p[0] +d=h*p[1] +i.saf(0,i.gaf(i).W(0,e)) +i.saj(0,i.gaj(i).W(0,d)) +f.saf(0,f.gaf(f).S(0,e)) +f.saj(0,f.gaj(f).S(0,d))}}}}, +aMG(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=a.b*0.5 +for(s=this.as,r=s.length,q=0;q0&&h!=null&&h>0,q=g!=null?this.awi(a,A.cIU(s,A.a([new A.Jt(s,g,s)],t.Pl),s)):s,p=r?h/e:1.7777777777777777 +return new A.abW(b,p,!r,c,d,new A.b95(this,a,b),new A.b96(this,a,b),f,q,s)}} +A.b95.prototype={ +$3(a,b,c){var s=this.a.Ys(a,this.b,c,this.c) +return s}, +$S:911} +A.b96.prototype={ +$3(a,b,c){var s=this.a.Yu(a,this.b,null,this.c) +return s}, +$S:912} +A.bKp.prototype={ +gix(){var s=null +return A.je(s,"video",s,s,new A.bKq(this),s,s,s,new A.bKr(this),s,10)}, +aX7(a){var s,r,q,p,o,n,m,l,k=A.cAC(a).a +if(k.length===0)return null +s=a.a.b +r=this.a +q=B.b.ga2(k) +p=s.aB(0,"autoplay") +o=s.aB(0,"controls") +n=A.BJ(s,"height") +m=s.aB(0,"loop") +l=s.i(0,"poster") +return r.bpu(a,q,p,o,n,m,r.Dj(l==null?"":l),A.BJ(s,"width"))}} +A.bKq.prototype={ +$2(a,b){var s,r,q +if(A.bL()!==B.b4)if(A.bL()!==B.aM)A.bL() +s=this.a +r=a.a.b.i(0,"src") +if(r==null)r="" +q=s.a.Dj(r) +if(q!=null)A.cAC(a).a.push(q) +s=s.aX7(a) +return s==null?b:s}, +$S:101} +A.bKr.prototype={ +$2(a,b){var s,r,q,p=b.a +if(p.x!=="source")return +s=p.a +r=s instanceof A.dk?s:null +if(r!==a.a)return +r=p.b.i(0,"src") +if(r==null)r="" +q=this.a.a.Dj(r) +if(q==null)return +A.cAC(a).a.push(q)}, +$S:71} +A.aXP.prototype={} +A.abW.prototype={ +J(){return new A.aZC(B.f)}} +A.aZC.prototype={ +gaDb(a){var s=null,r=this.a.z +return r!=null?A.eu(r,s,s,s):s}, +a8(){this.an() +this.Sg()}, +m(){var s=this.f +if(s!=null)s.m() +s=this.d +if(s!=null){s.k3$=$.ae() +s.k2$=0}this.ap()}, +q(a){var s,r,q,p,o,n,m=this,l=null +if(m.a.e&&m.d!=null){s=m.f +s=s==null?l:J.cEv(s.a) +r=s}else r=l +if(r==null)r=m.a.d +q=m.d +if(q!=null)p=new A.a0i(q,l) +else{s=m.e +if(s!=null){o=m.a +p=o.w.$3(a,o.c,s) +p=p}else{p=m.gaDb(0) +s=m.a +n=s.x +s=s.c +p=n.$3(a,s,p==null?B.ap:p)}}return new A.tu(r,p,l)}, +Sg(){return this.b7y()}, +b7y(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$Sg=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:j={} +i=new A.abZ(n.a.c,B.bwb,$.ae()) +n.f=i +m=i +j.a=null +p=4 +s=7 +return A.i(J.cv3(m),$async$Sg) +case 7:p=2 +s=6 +break +case 4:p=3 +h=o +l=A.ag(h) +j.a=l +s=6 +break +case 3:s=2 +break +case 6:if(n.c==null){s=1 +break}n.C(new A.cmR(j,n,m)) +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Sg,r)}} +A.cmR.prototype={ +$0(){var s,r,q,p=this,o=p.a.a +if(o!=null){p.b.e=o +return}o=p.b +s=o.a +r=s.f +s=s.y +q=o.gaDb(0) +q=new A.Cf(p.c,r,s,o.a.r,q,$.ae()) +q.AD() +o.d=q}, +$S:0} +A.a_m.prototype={ +J(){return new A.aKW(B.f)}} +A.aKW.prototype={ +a8(){var s,r,q,p=this +p.an() +s=A.d1V() +p.d!==$&&A.ck() +p.d=s +r=s.dy +r=new A.dx(r,r.$ti.h("dx<1>")).eB(new A.bSc(p)) +p.e!==$&&A.ck() +p.e=r +r=p.a +q=r.c +r=r.r +s.IK(A.d1X(A.di(q,0,null),null),null,r) +s.lp(p.a.e?B.w9:B.p2) +if(p.a.d)s.fM(0) +if(p.a.f)s.i_(0)}, +m(){var s=this.e +s===$&&A.b() +s.ao(0) +s=this.d +s===$&&A.b() +s.m() +this.ap()}, +q(a){return new A.fV(new A.bSb(this,a),null)}} +A.bSc.prototype={ +$1(a){var s=this.a +if(s.c==null)return +if(a===B.WF){s=s.d +s===$&&A.b() +s.f2(0) +s.kF(0,B.w)}}, +$S:913} +A.bSb.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i=null,h=b.b,g=h<1/0&&h<=320 +h=this.b +s=A.G(h) +r=h.a0(t.sp) +q=(r==null?B.dm:r).w.r +if(q==null)q=14 +h=A.cG(h,B.qL) +p=h==null?i:h.gdZ().gir() +o=q*(p==null?1:p) +h=s.ay.a===B.ak?B.t5:B.afW +r=A.ed(o*2) +n=this.a.d +n===$&&A.b() +m=n.fr +l=n.dx +k=n.dx +j=n.fx +return A.o1(A.eq(A.a([new A.aTb(n.gbDL(n),n.gbE4(n),o,new A.dx(m,m.$ti.h("dx<1>")),i),new A.aTL(new A.dx(l,l.$ti.h("dx<1>")),g,n.gaDg(),o,i),A.f7(new A.agO(new A.dx(k,k.$ti.h("dx<1>")),n.gaDg(),n.gaKp(n),o,i),1,i),new A.agh(n.gaLM(),o,new A.dx(j,j.$ti.h("dx<1>")),i)],t.p),B.t,i,B.o,B.u,i,i,B.x),new A.c_(h,i,i,r,i,i,i,B.U),B.cB)}, +$S:914} +A.aTb.prototype={ +q(a){return A.aac(new A.c9H(this),this.f,t.y)}} +A.c9H.prototype={ +$2(a,b){var s,r,q=null,p=b.b +if(p==null)p=!1 +s=this.a +r=p?s.c:s.d +return A.lx(q,!1,q,q,q,q,q,q,q,q,A.b2(p?B.ala:B.alf,q,q,q,q,q,q,q,q,q,q),s.e*2,q,q,q,r,q,q,q,q,q,q,q)}, +$S:915} +A.aTL.prototype={ +q(a){return A.aac(new A.ca2(this),this.c,t.z2)}, +a5N(a){if(a<0)return"0:00" +return""+B.d.aD(a,60)+":"+B.c.fm(B.d.k(B.d.M(a,60)),2,"0")}} +A.ca2.prototype={ +$2(a,b){var s=this.a +return A.aac(new A.ca1(s,b),s.e,t.Tu)}, +$S:367} +A.ca1.prototype={ +$2(a,b){var s,r,q,p=null,o=this.b.b,n=o==null?p:B.d.aD(o.a,1e6) +if(n==null)n=-1 +o=b.b +s=o==null?p:B.d.aD(o.a,1e6) +if(s==null)s=-1 +r=n>s?n-s:0 +o=this.a +q=o.d?"-"+o.a5N(r):o.a5N(s)+" / "+o.a5N(n) +return A.bv(q,p,p,p,p,p,p,p,p,A.dH(p,p,p,p,p,p,p,p,p,p,p,o.f,p,p,p,p,p,!0,p,p,p,p,p,p,p,p),p,p,p,1,p)}, +$S:917} +A.agO.prototype={ +q(a){return A.aac(new A.ca0(this,a),this.c,t.z2)}, +nT(a){return this.e.$1(A.cp(0,0,0,B.e.au(a),0,0))}} +A.ca0.prototype={ +$2(a,b){var s=this.a +return A.aac(new A.ca_(s,b,this.b),s.d,t.Tu)}, +$S:367} +A.ca_.prototype={ +$2(a,b){var s,r=null,q=this.b.b,p=q==null?r:B.d.aD(q.a,1000) +if(p==null)return B.ap +q=b.b +s=q==null?r:B.d.aD(q.a,1000) +if(s==null)s=0 +q=this.a +return A.cMh(new A.Fk(s,q.gjo(),r,r,0,p,r,r,r,B.bAw,r),A.cz3(this.c).brX(new A.a8D(q.f/2,r,1,6)))}, +$S:918} +A.agh.prototype={ +q(a){return A.aac(new A.c7C(this),this.e,t.i)}, +bBk(){return this.c.$1(0)}, +bHt(){return this.c.$1(1)}} +A.c7C.prototype={ +$2(a,b){var s,r=null,q=b.b,p=J.q(q==null?1:q,0) +q=this.a +s=p?q.gbHs():q.gbBj() +return A.lx(r,!1,r,r,r,r,r,r,r,r,A.b2(p?B.ay0:B.nG,r,r,r,r,r,r,r,r,r,r),q.d*2,r,r,r,s,r,r,r,r,r,r,r)}, +$S:919} +A.bK2.prototype={ +gix(){var s=null +return A.je(s,s,s,s,s,s,s,s,s,new A.bK3(this),10)}} +A.bK3.prototype={ +$2(a,b){var s,r,q,p,o +if(A.bL()!==B.b4)if(A.bL()!==B.aM)A.bL() +s=a.a.b +r=s.i(0,"src") +if(r==null)r="" +q=this.a.a.Dj(r) +if(q==null)return b +r=s.aB(0,"autoplay") +p=s.aB(0,"loop") +o=s.aB(0,"muted") +r=A.a([new A.a_m(q,r,p,o,s.aB(0,"preload")&&!J.q(s.i(0,"preload"),"none"),null)],t.p) +return r}, +$S:525} +A.bo5.prototype={} +A.bIZ.prototype={ +byl(a){var s=null,r=A.di(a,0,s),q=r.geh(r) +if(q.length===0)return s +return new A.aao(q,r.glL().i(0,"package"),s,s)}, +bym(a){var s=A.cRR(a) +if(s==null)return null +return new A.aap(s,null,null)}, +byn(a){if(A.di(a,0,null).OY().length===0)return null +return null}, +byo(a){if(a.length===0)return null +return new A.aar(a,null,null)}, +aj5(a,b,c){var s,r,q=$.b2I() +A.fT(b) +q=q.a.get(b) +s=q==null +r=s?null:q.a +if(r==null)r=s?null:q.c +return new A.aFG(b.c,b.a,B.hn,c,new A.bJ_(this,a,b),!1,r,r==null,null)}} +A.bJ_.prototype={ +$1(a){var s=this.a.Yu(a,this.b,null,this.c) +return s}, +$S:8} +A.bNX.prototype={} +A.aHM.prototype={ +a8(){var s,r,q=this +q.an() +s=q.d +s.src=q.a.c +s=s.style +s.border="none" +q.a.toString +r=q.k(0)+"#"+A.ef(q) +$.amv() +$.tq().D1(r,new A.bOQ(q),!0) +q.e=A.cxj(r)}, +q(a){var s=this.a.d,r=this.e +r===$&&A.b() +return new A.tu(s,r,null)}} +A.bOQ.prototype={ +$1(a){return this.a.d}, +$S:920} +A.ac3.prototype={ +J(){var s=document.createElement("iframe") +s.toString +return new A.aHM(s,B.f)}} +A.bOP.prototype={ +bpv(a,b,c,d,e){var s,r=c!=null&&c>0&&e!=null&&e>0 +if(d!=null)B.b.p(d,"allow-scripts") +s=r?e/c:1.7777777777777777 +return new A.ac3(b,s,!1,null)}} +A.ceH.prototype={ +H(){return"_ServiceFactoryType."+this.b}} +A.pJ.prototype={ +m(){var s=this +s.b.a2R(s.Q,!0,A.c6(s.$ti.c),t.K) +if(s.at!=null)return null}, +aJ0(a,b,c){var s,r,q,p,o,n,m,l=this +try{switch(l.a.a){case 0:p=l.r.$0() +return p +case 1:p=l.at +p.toString +l.$ti.c.a(p) +return p +case 2:if(l.at==null){l.at=l.r.$0() +B.b.V(l.CW) +p=l.ay +p===$&&A.b() +o=l.at +o.toString +n=l.$ti.c +p.d2(0,n.a(o)) +s=l.b.a2R(l.Q,!0,A.c6(n),t.K) +n=s +r=n==null?null:n.at}p=l.at +p.toString +l.$ti.c.a(p) +return p +default:p=A.a0("Impossible factoryType") +throw A.d(p)}}catch(m){q=A.aD(m) +A.c6(l.$ti.c).k(0) +A.r(q) +throw m}}} +A.Gx.prototype={} +A.aVY.prototype={ +OD(a,b){return this.bG8(0,!0)}, +bG8(a,b){var s=0,r=A.p(t.H),q=this,p,o,n,m,l +var $async$OD=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=J.cEy(q.gbmC()),o=p.$ti,p=new A.bj(p,p.gA(0),o.h("bj")),n=t.LR,o=o.h("aa.E") +case 2:if(!p.t()){s=3 +break}m=p.d +m=(m==null?o.a(m):m).m() +l=new A.ak($.at,n) +l.a=8 +l.c=m +s=4 +return A.i(l,$async$OD) +case 4:s=2 +break +case 3:q.d.V(0) +return A.n(null,r)}}) +return A.o($async$OD,r)}, +gbmC(){return this.d.gbm(0).l8(0,A.a([],t.W1),new A.cdZ(),t.YM)}, +m(){var s=0,r=A.p(t.H),q +var $async$m=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q=A.dO(null,t.z) +s=2 +return A.i(q,$async$m) +case 2:return A.n(null,r)}}) +return A.o($async$m,r)}} +A.cdZ.prototype={ +$2(a,b){var s=A.R(b.b,!0,t.Nu) +B.b.L(s,b.a.gbm(0)) +J.ZA(a,s) +return a}, +$S:921} +A.c11.prototype={ +a2R(a,b,c,d){var s,r,q,p,o=this.a,n=o.length,m=n-(b?2:1),l=c==null?A.c6(d):c +n=d.h("pJ<0,@,@>?") +s=a!=null +r=null +while(!0){if(!(r==null&&m>=0))break +q=o[m].d.i(0,l) +if(q==null)p=null +else p=s?q.a.i(0,a):A.DP(q.b) +n.a(p);--m +r=p}return r}, +aly(a,b,c){return this.a2R(a,!1,b,c)}, +aep(a,b,c,d,e,f){var s,r=this.aly(b,e,f),q=b==null,p=!q?"with name "+b+" and ":"",o=A.c6(f).k(0) +if(r==null)A.C(new A.px("GetIt: Object/factory with "+p+"type "+o+" is not registered inside GetIt. \n(Did you accidentally do GetIt sl=GetIt.instance(); instead of GetIt sl=GetIt.instance;\nDid you forget to register it?)")) +p=r.ch +if(p!=null){p=r.ay +p===$&&A.b() +p=p.a.a +q=q?A.mM(A.c6(f).a,null):b +if((p&30)===0)A.C(new A.px("You tried to access an instance of "+q+" that is not ready yet")) +q=r.at +q.toString +s=q}else s=r.aJ0(0,c,d) +return f.a(s)}, +d9(a,b){var s=null +return this.aep(0,s,s,s,s,b)}, +$1$0(a){var s=null +return this.aep(0,s,s,s,s,a)}, +$0(){return this.$1$0(t.K)}, +zU(a,b){var s=A.a([],b.h("D<0>")),r=t.H +this.bft(null,a,null,!1,t.Vs.b(s),B.a_I,b,r,r) +return a}, +b6(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$b6=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a,o=p.length-1 +case 2:if(!(o>=0)){s=4 +break}s=5 +return A.i(p[o].m(),$async$b6) +case 5:s=6 +return A.i(p[o].OD(0,!0),$async$b6) +case 6:case 3:--o +s=2 +break +case 4:p=q.a +B.b.t3(p,1,p.length) +s=7 +return A.i(q.OE(!0),$async$b6) +case 7:return A.n(null,r)}}) +return A.o($async$b6,r)}, +OE(a){return this.bGb(!0)}, +bGb(a){var s=0,r=A.p(t.H),q=this,p +var $async$OE=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +s=2 +return A.i(B.b.gP(p).m(),$async$OE) +case 2:s=3 +return A.i(B.b.gP(p).OD(0,!0),$async$OE) +case 3:return A.n(null,r)}}) +return A.o($async$OE,r)}, +bft(a,b,c,d,e,f,g,h,i){var s,r,q,p,o,n,m=this,l=null +if(g.b(B.dk))A.C("GetIt: You have to provide type. Did you accidentally do `var sl=GetIt.instance();` instead of var sl=GetIt.instance;") +s=m.a +r=s.length +do{--r +q=s[r]}while(!1) +s=q.d +p=s.i(0,A.c6(g)) +if(p!=null)if(p.b.length!==0)A.C(new A.nN(!1,l,l,"Type "+A.c6(g).k(0)+" is already registered inside GetIt. ")) +m.aly(c,A.c6(g),t.K) +o=s.cP(0,A.c6(g),new A.c12(g)) +n=new A.pJ(f,m,l,l,a,c,!1,b,A.a([],t.nE),e,g.h("@<0>").a1(h).a1(i).h("pJ<1,2,3>")) +n.ax=A.c6(g) +n.e=A.c6(h) +n.f=A.c6(i) +n.ay=new A.aI(new A.ak($.at,g.h("ak<0>")),g.h("aI<0>")) +s=o.b +if(s.length!==0)s[0]=n +else s.push(n) +if(f===B.a_I)if(!e)s=!0 +else s=!1 +else s=!1 +if(s)return}} +A.c12.prototype={ +$0(){var s=this.a +return new A.Gx(A.e4(null,null,t.N,s.h("pJ<0,@,@>")),A.a([],s.h("D>")),s.h("Gx<0>"))}, +$S(){return this.a.h("Gx<0>()")}} +A.bCo.prototype={ +Ve(a,b,c){var s,r=this,q=b.a +if(J.h3(q)&&b.e==null)return B.ap +s=r.d +return r.a.$2(a,A.cOb(s,r.c,r.b,null,b,q,s.b,r.e,r.r,r.w))}} +A.NA.prototype={ +J(){var s=t.sd +return new A.ae3(new A.Rl(A.N(s,t.Js),A.N(t.Kv,s),$.ae()),B.f)}, +bCx(a,b,c){return this.w.$3(a,b,c)}} +A.ae3.prototype={ +b1(a){this.bc(a) +if(!this.a.f.l(0,a.f))this.r=null}, +c5(){var s,r,q=this +q.dH() +if(q.d==null)if(q.c.Ci(t.fc)!=null)q.d=A.cJL() +else{s=t.K +r=t.Qu +if(q.c.Ci(t.VD)!=null)q.d=new A.Jf(null,A.N(s,r)) +else q.d=new A.Jf(null,A.N(s,r))}q.r=null}, +m(){var s=this.d +if(s!=null)s.m() +s=this.f +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +aXu(a){var s,r,q,p=this,o=A.a([],t.Im),n=t.sd,m=A.N(n,t._W),l=A.N(n,t.Js) +n=p.a +s=n.f +if(s.e!=null)o.push(p.aj1(a,s)) +else for(n=J.au(n.e);n.t();){s=n.gK(n) +r=p.aX2(a,s) +if(r==null)continue +o.push(r) +m.n(0,r,s) +q=p.a +l.n(0,r,s.BD(q.r,q.f))}p.r=o +p.f.bHC(l) +p.e=m}, +aX2(a,b){if(b instanceof A.l6){if(b instanceof A.mb&&b.d.e!=null)return this.aj1(a,b.d) +return this.aX3(a,b)}if(b instanceof A.lK)return this.aX4(a,b) +throw A.d(A.auU("unknown match type "+A.I(b).k(0)))}, +aX3(a,b){var s=this.a,r=b.BD(s.r,s.f),q=b.a.f +if(q==null)return null +return this.a1E(a,r,new A.e_(new A.bWF(q,r),null))}, +aX4(a,b){var s,r=this,q=r.a,p=b.BD(q.r,q.f),o=b.b +q=b.a +s=new A.bFN(q,o,r.a.f,new A.bWG(r,o,b)) +q.rj(a,p,s) +return r.a1E(a,p,new A.e_(new A.bWH(b,p,s),null))}, +aj9(a){var s,r=this +if(r.w==null){s=a.Ci(t.fc) +if(s!=null){r.w=A.dtw() +r.x=new A.bWI()}else{s=a.Ci(t.VD) +if(s!=null){r.w=A.drm() +r.x=new A.bWJ()}else{r.w=new A.bWK() +r.x=new A.bWL()}}}}, +a1E(a,b,c){var s,r,q +this.aj9(a) +s=this.w +s.toString +r=b.y +q=t.N +q=A.rB(b.r,q,q) +q.L(0,b.b.glL()) +return s.$5$arguments$child$key$name$restorationId(q,c,r,b.e,r.a)}, +aj1(a,b){var s,r,q,p,o,n=this +n.a.toString +s=b.c +r=s.geh(s) +q=s.k(0) +b.gXO() +p=new A.aW(s,r,null,null,b.f,b.b,null,b.e,new A.ca(q+"(error)",t.kK)) +n.aj9(a) +o=n.a.y +s=o.$2(a,p) +s=n.a1E(a,p,s) +return s}, +b5z(a,b){var s=t.sd.a(a.b),r=this.e +r===$&&A.b() +r=r.i(0,s) +r.toString +return this.a.bCx(a,b,r)}, +q(a){var s,r,q,p,o,n=this,m=null +if(n.r==null)n.aXu(a) +s=n.d +s.toString +r=n.a +q=r.c +p=r.x +o=n.r +o.toString +return new A.a3K(n.f,A.cIB(A.cyb(B.k,m,q,r.d,A.cTf(),m,n.gb5y(),m,o,!1,p,B.Zw),s),m)}} +A.bWF.prototype={ +$1(a){return this.a.$2(a,this.b)}, +$S:8} +A.bWG.prototype={ +$2(a,b){var s=this.b,r=s.gv(s),q=this.a.a,p=q.f,o=q.r,n=a==null?B.IQ:a,m=q.w +return A.cOb(o,q.y,q.z,new A.yW(r,t.bT),p,this.c.d,s,b,n,m)}, +$S:923} +A.bWH.prototype={ +$1(a){var s=this.a.a.bpy(a,this.b,this.c) +s.toString +return s}, +$S:8} +A.bWI.prototype={ +$2(a,b){return new A.SD(b.x,null)}, +$S:924} +A.bWJ.prototype={ +$2(a,b){return new A.Qb(b.x,null)}, +$S:925} +A.bWK.prototype={ +$5$arguments$child$key$name$restorationId(a,b,c,d,e){return new A.KB(b,B.w,B.w,A.drn(),c,e,d,a,t.Mc)}, +$S:926} +A.bWL.prototype={ +$2(a,b){return new A.QQ(b.x,null)}, +$S:927} +A.aDL.prototype={ +apm(){var s=this,r=s.a.a +s.d.V(0) +s.a1G("",r.a) +s.bta()}, +bpr(a){var s=a.c,r=s.geh(s) +a.gXO() +return new A.aW(s,r,null,null,a.f,a.b,a.d,null,B.bvQ)}, +GA(a,b){var s,r,q,p,o,n,m=null +if(a.length===0)A.C(A.cx7("Location cannot be empty.")) +s=A.di(a,0,m).k(0) +if(B.c.eV(s,"?"))s=B.c.R(s,0,s.length-1) +r=A.di(s,0,m) +if(B.c.eV(r.geh(r),"/")&&r.geh(r)!=="/"&&!r.gwm()&&!r.gGE())s=B.c.R(s,0,s.length-1) +if(r.gla(r).length!==0)q=B.c.c2(r.k(0),r.gla(r))+r.gla(r).length +else q=r.gXl()?B.c.c2(r.k(0),r.gfX())+r.gfX().length:0 +r=A.di(q")),s=s.c;q.t();){p=s.a(r.gK(r)) +o=p.c +n=p.d +n=this.GA(n.c.k(0),n.d) +m=m.wL(new A.mb(n,p.e,A.cxs(n),A.cxt(n),o))}return m}, +b2h(a,b){var s,r,q,p,o,n +for(s=this.a.a.a,r=s.length,q=this.b,p=0;p=c.length)return null +s=c[d] +r=new A.bCq(this,a,b,c,d) +q=s.a.r +p=q!=null?q.$2(a,s.BD(this,b)):null +q=t.R +if(q.b(p))return r.$1(p) +return p.bf(r,q)}, +aml(a,b,c){var s,r,q,p,o,n=this +try{s=n.bwj(a) +q=s +if(B.b.p(c,q)){p=A.R(c,!0,t.LQ) +p.push(q) +A.C(A.cx7("redirect loop detected "+n.alS(p)))}p=c.length +n.a.a.toString +if(p>5){p=A.R(c,!0,t.LQ) +p.push(q) +A.C(A.cx7("too many redirects "+n.alS(p)))}c.push(q) +q.k(0) +return s}catch(o){q=A.ag(o) +if(q instanceof A.Rk){r=q +r.toString +return new A.h8(B.oF,B.ek,b,null,r,A.Ut(B.oF))}else throw o}}, +alS(a){return new A.O(a,new A.bCp(),A.X(a).h("O<1,f>")).bQ(0," => ")}, +k(a){return"RouterConfiguration: "+A.r(this.a.a.a)}, +bta(){var s,r,q=new A.bu("") +q.a=""+"Full paths for routes:\n" +this.a2q(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.gep(s),s=s.gaz(s);s.t();){r=s.gK(s) +q.a+=" "+A.r(r.a)+" => "+A.r(r.b)+"\n"}}s=q.a +return s.charCodeAt(0)==0?s:s}, +a2q(a,b,c,d){var s,r,q,p,o,n +for(s=a.length,r=c*2,q=c+1,p=0;p0)B.b.F($.an.aT$,this) +this.f4()}, +G4(a){this.bed(a) +return new A.dc(!0,t.d9)}} +A.aPI.prototype={} +A.aPJ.prototype={} +A.mv.prototype={} +A.bCz.prototype={ +$0(){return A.a([],t.K1)}, +$S:262} +A.bCy.prototype={ +$0(){return A.a([],t.K1)}, +$S:262} +A.bCw.prototype={ +$2(a,b){return new A.aY(a,A.pM(b,0,b.length,B.ai,!1),t.mT)}, +$S:935} +A.bCx.prototype={ +$0(){return A.a([],t.K1)}, +$S:262} +A.l6.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.l6&&s.a===b.a&&s.b===b.b&&s.c.l(0,b.c)}, +gv(a){return A.ad(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)}, +BD(a,b){b.gXO() +return new A.aW(b.c,this.b,null,this.a.d,b.f,b.b,b.d,null,this.c)}, +gZz(){return this.a}} +A.lK.prototype={ +gaoc(){var s=J.kD(this.d) +for(;s instanceof A.lK;)s=J.kD(s.d) +return t.UV.a(s)}, +BD(a,b){var s=this.gaoc() +if(s instanceof A.mb)b=s.d +b.gXO() +return new A.aW(b.c,this.c,null,null,b.f,b.b,b.d,null,this.e)}, +vY(a){var s=this +return new A.lK(s.a,s.b,s.c,a,s.e)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.lK&&s.a===b.a&&s.c===b.c&&B.EP.h4(s.d,b.d)&&s.e.l(0,b.e)}, +gv(a){var s=this +return A.ad(s.a,s.c,A.cs(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)}, +gZz(){return this.a}} +A.mb.prototype={ +BD(a,b){return this.aQk(a,this.d)}, +l(a,b){if(b==null)return!1 +return b instanceof A.mb&&this.e===b.e&&this.d.l(0,b.d)&&this.aQj(0,b)}, +gv(a){return A.ad(A.l6.prototype.gv.call(this,0),this.e,this.d.gv(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)}} +A.bnd.prototype={ +$2(a,b){return A.C(A.bT(null))}, +$S:936} +A.h8.prototype={ +gcU(a){return J.iL(this.a)}, +wL(a){var s=this,r=a.d +if(r.e!=null){r=A.R(s.a,!0,t._W) +r.push(a) +return s.vY(r)}return s.vY(A.cLR(s.a,r.a,a))}, +F(a,b){var s,r,q,p,o,n=this,m=n.a,l=A.cLS(m,b) +if(J.q(l,m))return n +s=A.Ut(l) +if(n.f===s)return n.vY(l) +r=A.a([],t.s) +A.cTB(s,r) +m=t.N +q=A.mf(r,m) +p=n.b +p=p.gep(p) +o=A.brh(p.kW(p,new A.bCC(q)),m,m) +return n.axH(l,o,n.c.Zo(0,A.cTA(s,o)))}, +gP(a){var s=this.a,r=J.cz(s) +if(r.gP(s) instanceof A.l6)return t.UV.a(r.gP(s)) +return t.UD.a(r.gP(s)).gaoc()}, +gXO(){if(J.h3(this.a))return null +return this.gP(0)}, +axH(a,b,c){var s=this,r=c==null?s.c:c,q=b==null?s.b:b +return new A.h8(a,q,r,s.d,s.e,A.Ut(a))}, +vY(a){return this.axH(a,null,null)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.az(b)!==A.I(s))return!1 +return b instanceof A.h8&&s.c.l(0,b.c)&&J.q(s.d,b.d)&&s.e==b.e&&B.EP.h4(s.a,b.a)&&B.aTb.h4(s.b,b.b)}, +gv(a){var s=this,r=A.cs(s.a),q=s.b +q=q.gep(q) +return A.ad(r,s.c,s.d,s.e,A.cKr(q.fK(q,new A.bCB(),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)}} +A.bCA.prototype={ +$1(a){return!(a instanceof A.mb)}, +$S:134} +A.bCC.prototype={ +$1(a){return this.a.p(0,a.a)}, +$S:371} +A.bCB.prototype={ +$1(a){return A.ad(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:938} +A.a8E.prototype={ +gh2(){return this.b}} +A.ai2.prototype={ +cD(a){var s,r,q=A.a([],t.qz) +A.aDO(a.a,new A.cdw(q)) +s=t.vD +r=A.R(new A.O(q,new A.cdx(this),s),!0,s.h("aa.E")) +return this.bjP(a.c.k(0),a.d,r)}, +at1(a,b,c,d){var s,r,q,p=null +try{s=B.aO.gyU() +p=A.c3a(b,s.b,s.a)}catch(r){if(A.ag(r) instanceof A.RZ){s=B.aO.gyU() +p=A.c3a(null,s.b,s.a) +J.az(b).k(0)}else throw r}q=A.a1(["codec","json","encoded",p],t.N,t.X) +s=t.X +s=A.N(s,s) +s.n(0,"location",a) +s.n(0,"state",q) +if(c!=null)s.n(0,"imperativeMatches",c) +if(d!=null)s.n(0,"pageKey",d) +return s}, +bjP(a,b,c){return this.at1(a,b,c,null)}, +bjQ(a,b,c){return this.at1(a,b,null,c)}} +A.cdw.prototype={ +$1(a){if(a instanceof A.mb)this.a.push(a) +return!0}, +$S:134} +A.cdx.prototype={ +$1(a){var s=a.d +return this.a.bjQ(s.c.k(0),s.d,a.c.a)}, +$S:939} +A.ai1.prototype={ +cD(a){var s,r,q,p,o,n,m,l,k,j=J.ao(a),i=j.i(a,"location") +i.toString +A.ax(i) +s=j.i(a,"state") +s.toString +r=t.pE +r.a(s) +q=J.ao(s) +if(J.q(q.i(s,"codec"),"json")){p=B.aO.gh2() +s=q.i(s,"encoded") +s.toString +o=A.b1C(A.ax(s),p.a)}else o=null +n=this.a.GA(i,o) +m=t.wh.a(j.i(a,"imperativeMatches")) +if(m!=null)for(j=J.cEJ(m,r),i=J.au(j.a),j=j.$ti,s=new A.jW(i,j.h("jW<1>")),j=j.c,r=t.kK,q=t.xJ,p=t.oe;s.t();){l=j.a(i.gK(i)) +k=this.cD(l) +l=J.aS(l,"pageKey") +l.toString +A.ax(l) +n=n.wL(new A.mb(k,new A.aI(new A.ak($.at,q),p),A.cxs(k),A.cxt(k),new A.ca(l,r)))}return n}} +A.aVL.prototype={} +A.aVM.prototype={} +A.QQ.prototype={ +q(a){var s=null,r=this.c +r=r==null?s:"GoException: "+r.a +return new A.iX(!0,!0,!0,!0,B.L,!1,A.eu(A.cS(A.a([B.bt3,B.q7,A.bv(r==null?"page not found":r,s,s,s,s,s,s,s,s,s,s,s,s,s,s),B.q7,new A.adb(new A.bhf(a),B.bt1,s)],t.p),B.t,s,B.cu,B.u,s,s,B.x),s,s,s),s)}} +A.bhf.prototype={ +$0(){return A.cc(this.a).qV(0,"/",null)}, +$S:0} +A.adb.prototype={ +J(){return new A.aLL(B.f)}} +A.aLL.prototype={ +c5(){var s,r=this +r.dH() +s=r.c.Ci(t.iM) +s=s==null?null:s.dx +if(s==null)s=B.mW +r.d!==$&&A.ck() +r.d=s}, +q(a){var s=null,r=this.a,q=r.c,p=this.d +p===$&&A.b() +return A.dn(s,A.bB(s,r.d,B.i,p,s,s,s,s,s,s,B.cq,s,s,s),B.m,!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,s,s,s,!1,B.ac)}} +A.auT.prototype={ +k(a){return"GoError: "+this.a}} +A.Rk.prototype={ +k(a){return"GoException: "+this.a}, +$ibP:1} +A.DH.prototype={ +ed(a){return!1}} +A.Qb.prototype={ +q(a){var s=null,r=this.c +r=r==null?s:"GoException: "+r.a +return new A.a1n(B.agR,A.eu(A.cS(A.a([A.bv(r==null?"page not found":r,s,s,s,s,s,s,s,s,s,s,s,s,s,s),A.I4(B.C,B.e8,B.Zf,s,B.fv,s,44,new A.bb9(a),s,0.4)],t.p),B.t,s,B.cu,B.u,s,s,B.x),s,s,s),s)}} +A.bb9.prototype={ +$0(){return A.cc(this.a).qV(0,"/",null)}, +$S:0} +A.o_.prototype={ +BS(a){var s=null,r=this.$ti,q=A.a([],t.Zt),p=$.at,o=r.h("ak<1?>"),n=r.h("aI<1?>"),m=A.ms(B.bO),l=A.a([],t.wi),k=$.ae(),j=$.at +return new A.ae4(!1,!0,!1,s,s,q,A.b9(t.kj),new A.aR(s,r.h("aR>")),new A.aR(s,t.A),new A.qt(),s,0,new A.aI(new A.ak(p,o),n),m,l,this,new A.bm(s,k,t.XR),new A.aI(new A.ak(j,o),n),new A.aI(new A.ak(j,o),n),r.h("ae4<1>"))}} +A.ae4.prototype={ +gu0(){this.$ti.h("o_<1>").a(this.b) +return!1}, +gq9(){this.$ti.h("o_<1>").a(this.b) +return null}, +gu1(){this.$ti.h("o_<1>").a(this.b) +return null}, +gv0(a){return this.$ti.h("o_<1>").a(this.b).w}, +gZv(){return this.$ti.h("o_<1>").a(this.b).x}, +grP(){this.$ti.h("o_<1>").a(this.b) +return!0}, +grD(){this.$ti.h("o_<1>").a(this.b) +return!1}, +guK(){this.$ti.h("o_<1>").a(this.b) +return!0}, +rj(a,b,c){var s=null,r=this.$ti.h("o_<1>").a(this.b) +return new A.bX(A.ci(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,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r.r,s)}, +ym(a,b,c,d){return this.$ti.h("o_<1>").a(this.b).ay.$4(a,b,c,d)}} +A.KB.prototype={} +A.SD.prototype={ +q(a){var s=null,r=A.jb(s,s,!0,s,s,1,s,s,s,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,B.Zg,s,s,s,1,s),q=this.c +q=q==null?s:"GoException: "+q.a +return A.bW(r,s,A.eu(A.cS(A.a([A.bEK(q==null?"page not found":q,s,s),A.nq(!1,B.Zf,B.i,s,!0,s,s,s,s,new A.brk(a),s,s)],t.p),B.t,s,B.cu,B.u,s,s,B.x),s,s,s),s,s,s,s)}} +A.brk.prototype={ +$0(){return A.cc(this.a).qV(0,"/",null)}, +$S:0} +A.bkr.prototype={ +bDy(a,b){var s,r,q,p=this,o=a.c +o.toString +if(!(o instanceof A.rW))return p.aqx(b,p.c.b.cD(t.pE.a(o))).bf(new A.bks(p,b),t.LQ) +s=A.aF("initialMatches") +if(a.gfh().gab1()){r=a.gfh() +q=r.gCP(r)+"/" +if(a.gfh().gwm()){r=a.gfh() +q+="?"+r.glK(r)}if(a.gfh().gGE())q+="#"+a.gfh().gov() +s.se9(p.a.GA(q,o.a))}else s.se9(p.a.GA(a.gfh().k(0),o.a)) +if(s.aX().e!=null){r=a.gfh() +r.geh(r)}return p.aqx(b,s.aX()).bf(new A.bkt(p,b,o),t.LQ)}, +bGk(a){var s +if(J.h3(a.a))return null +s=a.c.k(0) +return new A.ot(A.di(s,0,null),this.c.a.cD(a))}, +aqx(a,b){var s=this.a.ada(0,a,b,A.a([],t.k4)) +if(s instanceof A.h8)return new A.dc(s,t.Zu) +return s}, +bkS(a,b,c,d){var s,r,q +switch(d.a){case 0:b.toString +s=this.amG() +c.toString +return b.wL(A.cxr(c,a,s)) +case 1:s=b.F(0,b.gP(0)) +r=this.amG() +c.toString +return s.wL(A.cxr(c,a,r)) +case 2:q=b.gP(0) +s=b.F(0,q) +c.toString +return s.wL(A.cxr(c,a,q.c)) +case 3:return a +case 4:return b.c.k(0)!==a.c.k(0)?a:b}}, +amG(){var s,r,q=J.d1(32,t.S) +for(s=this.d,r=0;r<32;++r)q[r]=s.px(33)+89 +return new A.ca(A.dp(q,0,null),t.kK)}} +A.bks.prototype={ +$1(a){if(a.e!=null&&this.a.b!=null)return this.a.b.$2(this.b,a) +return a}, +$S:372} +A.bkt.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.bkS(a,s.c,s.b,s.d)}, +$S:372} +A.coR.prototype={ +$1(a){return"\\"+A.r(a.b[0])}, +$S:81} +A.os.prototype={} +A.bCn.prototype={ +$1(a){var s=A.a([a],t.yo) +B.b.L(s,A.cLP(a.a)) +return s}, +$S:942} +A.w2.prototype={} +A.aEv.prototype={} +A.bFN.prototype={} +A.Mp.prototype={ +bpy(a,b,c){var s,r=A.cc(a) +r.toString +s=this.f.$3(a,b,A.ddV(this.w,r,c)) +return s}, +rj(a,b,c){return null}, +bBu(a){return A.rw(this.x,new A.bHm(a)).a}} +A.bHm.prototype={ +$1(a){return B.b.p(a.b,this.a)}, +$S:374} +A.bHl.prototype={ +$1(a){return a.b}, +$S:944} +A.oG.prototype={} +A.Aq.prototype={ +al7(a){var s,r=A.DP(new A.cv(A.cLP(this.c.a.x[a].b),t.Tv)) +r.toString +s=this.d.a +s===$&&A.b() +s=A.cSF(r,"",s.a.a.a) +s.toString +return s}, +J(){return new A.Vi(A.N(t.D2,t.C),A.N(t.qM,t._2),null,A.N(t.yb,t.O),null,!0,null,B.f)}, +br8(a,b,c){return this.e.$3(a,b,c)}} +A.bHk.prototype={ +$1(a){return a.a===this.a}, +$S:374} +A.Vi.prototype={ +gkh(){return this.a.c.a.e}, +a1D(a,b){return this.e.cP(0,a,new A.bHh(this,b,a))}, +aWt(a){return this.a1D(a,!0)}, +arn(a){var s,r,q=A.a([],t.K1) +for(s=J.au(a);s.t();){r=s.gK(s) +if(r instanceof A.lK){if(r.a===this.a.c.a){q.push(r) +break}q.push(r.vY(this.arn(r.d))) +continue}q.push(r)}return q}, +atB(){var s,r,q,p,o,n=this,m=n.a,l=m.c,k=l.a.x[m.f] +m=l.d +s=m.vY(n.arn(m.a)) +r=n.a1D(k,!1) +q=r.z +if(!s.l(0,q)){r.z=s +r.ab()}m=n.d +p=k.a +o=m.i(0,p)==null +if(!q.l(0,s)||o)m.n(0,p,l.e.$2(null,null))}, +a8(){this.an() +this.atB()}, +m(){var s,r,q,p,o,n +this.aSG() +for(s=this.a.c.a.x,r=s.length,q=this.e,p=0;p"),q=A.R(new A.O(s,new A.bHj(this),r),!0,r.h("aa.E")) +r=this.a +return r.br8(a,r,q)}} +A.bHh.prototype={ +$0(){var s,r=this.a,q=r.a.d.a +q===$&&A.b() +s=new A.Bf(new A.a8E(new A.ai2(q),new A.ai1(q)),$.b2z(),$.ae()) +if(this.b){q=B.d.k(A.lZ(this.c)) +r.oC(s,q)}return s}, +$S:946} +A.bHj.prototype={ +$1(a){return new A.G3(a,new A.bHi(this.a),new A.KD(a))}, +$S:947} +A.bHi.prototype={ +$1(a){return this.a.d.i(0,a.a)}, +$S:948} +A.Bf.prototype={ +abc(a){this.z=a}, +yB(){return $.b2z()}, +uw(a){return a==null?$.b2z():this.y.b.cD(t.pE.a(a))}, +v_(){if(J.iL(this.z.a))return this.y.a.cD(this.z) +return null}} +A.G3.prototype={ +J(){return new A.aLE(null,B.f)}, +bBt(a){return this.d.$1(a)}} +A.aLE.prototype={ +q(a){var s +this.o5(a) +s=this.a +s=s.bBt(s.c) +return s==null?B.ap:s}, +gmv(){return!0}} +A.aQd.prototype={ +q(a){var s=t.C +s=A.pk(this.d,new A.c2m(this,a),s,s) +return A.cIZ(B.ar,A.R(s,!0,s.$ti.h("B.E")),this.c)}} +A.c2m.prototype={ +$2(a,b){var s=this.a.c===a +return new A.Eo(!s,new A.wV(s,b,null),null)}, +$S:949} +A.cfH.prototype={ +$2(a,b){if(!a.a)a.O(0,b)}, +$S:76} +A.aVK.prototype={} +A.aiV.prototype={ +b1(a){this.bc(a) +this.w5()}, +c5(){var s,r,q,p,o=this +o.dH() +s=o.eb$ +r=o.gt5() +q=o.c +q.toString +q=A.wD(q) +o.ke$=q +p=o.tR(q,r) +if(r){o.lk(s,o.hH$) +o.hH$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.jX$.aE(0,new A.cfH()) +s=r.eb$ +if(s!=null)s.m() +r.eb$=null +r.ap()}} +A.b_q.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.a8F.prototype={ +bFn(a,b,c){return this.b.$2(b,c)}} +A.auV.prototype={ +aUK(a,b,c,d,e,f,g,h,i,j,k,l,m,a0,a1){var s,r,q,p,o=this,n=null +A.dvK(!1) +if($.an==null)A.FV() +$.an.toString +s=o.r +s.a3(0,o.gb5S()) +r=t.N +r=new A.aDL(s,g,d,A.N(r,r)) +r.apm() +s.a3(0,r.gbbZ()) +o.a!==$&&A.ck() +o.a=r +o.e!==$&&A.ck() +o.e=new A.bkr(r,n,new A.a8E(new A.ai2(r),new A.ai1(r)),B.ex) +s=A.di(o.b0q(f),0,n) +q=$.cuh() +p=$.ae() +o.d!==$&&A.ck() +o.d=new A.a3I(k,new A.ot(s,new A.rW(e,n,n,B.wC,t.Qt)),q,p) +s=A.a([],t.tc) +s=A.R(s,!0,t.JU) +p=new A.a3J(!1,r,$.b2z(),p) +p.a=new A.bCo(new A.bku(o),c,b,r,m,s,p.gb5A()) +o.c!==$&&A.ck() +o.c=p}, +b5T(){var s,r=this.a +r===$&&A.b() +s=this.c +s===$&&A.b() +this.aF5(0,r.bFU(s.d))}, +qV(a,b,c){var s=this.d +s===$&&A.b() +s.Sf(b,new A.rW(c,null,null,B.wC,t.Qt))}, +th(a,b){return this.qV(0,b,null)}, +aF5(a,b){var s,r=b.c +r.k(0) +s=this.d +s===$&&A.b() +r.k(0) +s.Sf(r.k(0),new A.rW(b.d,null,b,B.b6n,t.Qt))}, +fg(a,b,c){return this.bEE(a,b,c,c.h("0?"))}, +bEE(a,b,c,d){var s=0,r=A.p(d),q,p=this,o,n,m +var $async$fg=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:m=p.d +m===$&&A.b() +o=p.c +o===$&&A.b() +o=o.d +n=new A.ak($.at,c.h("ak<0?>")) +m.Sf(a,new A.rW(b,new A.aI(n,c.h("aI<0?>")),o,B.b6l,c.h("rW<0>"))) +q=n +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fg,r)}, +bFV(a,b,c,d){var s,r,q=this.d +q===$&&A.b() +s=this.c +s===$&&A.b() +s=s.d +r=new A.ak($.at,d.h("ak<0?>")) +q.Sf(b,new A.rW(c,new A.aI(r,d.h("aI<0?>")),s,B.b6m,d.h("rW<0>"))) +return r}, +b0q(a){var s,r,q=null +$.an.toString +s=A.di($.cf().gW2(),0,q) +r=(s.gab1()?A.fi(q,q,"/",q,q,q,s.glL(),q):s).k(0) +if(r==="/")return a +else return r}} +A.bku.prototype={ +$2(a,b){return new A.DH(this.a,b,null)}, +$S:950} +A.aW.prototype={ +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.aW&&b.b.l(0,s.b)&&b.c===s.c&&b.e==s.e&&b.f===s.f&&b.r===s.r&&J.q(b.w,s.w)&&b.x==s.x&&b.y.l(0,s.y)}, +gv(a){var s=this +return A.ad(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.a3K.prototype={} +A.Rl.prototype={ +aZt(a,b){var s=this,r=s.b,q=r.i(0,b) +if(q==null){r.n(0,b,a) +b.Q.a.bf(new A.bky(s,b),t.H)}else if(q!==a){r.n(0,b,a) +s.a.F(0,q)}r=s.a.i(0,a) +r.toString +return r}, +bHC(a){var s,r,q,p,o,n,m={} +m.a=!1 +s=this.b.gbm(0) +r=A.hh(s,A.z(s).h("B.E")) +for(s=a.gep(a),s=s.gaz(s),q=this.a;s.t();){p=s.gK(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.p(0,o) +q.n(0,o,p)}continue}q.n(0,o,p.b)}q.HC(q,new A.bkz(m,a,r)) +if(m.a)this.ab()}} +A.bky.prototype={ +$1(a){var s=this.a,r=s.b.F(0,this.b) +r.toString +s.a.F(0,r)}, +$S:275} +A.bkz.prototype={ +$2(a,b){if(this.b.aB(0,a))return!1 +if(this.c.p(0,a)){this.a.a=!0 +return!1}return!0}, +$S:951} +A.cu2.prototype={ +$1(a){return a!==this.a.a.a.d}, +$S:42} +A.BZ.prototype={ +gh2(){return this.b}} +A.H5.prototype={ +cD(a){return new A.dz(this.brg(a),t.s8)}, +brg(a){var s=this +return function(){var r=a +var q=0,p=1,o,n,m,l +return function $async$cD(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:n=s.aNS(r),n=new A.dr(n.a(),n.$ti.h("dr<1>")),m=s.b,l=0 +case 2:if(!n.t()){q=3 +break}q=4 +return b.b=m[n.b],1 +case 4:l+=6 +q=2 +break +case 3:n=s.d +q=n!=null?5:6 +break +case 5:case 7:if(!((l&7)!==0)){q=9 +break}q=10 +return b.b=n,1 +case 10:case 8:l+=6 +q=7 +break +case 9:case 6:return 0 +case 1:return b.c=o,3}}}}} +A.ZO.prototype={ +cD(a){var s={} +s.a=null +return this.aNR(J.dP(a,new A.b3s(s,this),t.S))}} +A.b3s.prototype={ +$1(a){var s,r +if(a===this.b.d)return-1 +if(a>=0)if(a<133){s=B.aGM[a] +this.a.a=s +r=s<0}else r=!0 +else r=!0 +if(r)throw A.d(A.bM("Invalid character "+a,null,null)) +return this.a.a}, +$S:36} +A.av8.prototype={} +A.av9.prototype={} +A.a_F.prototype={ +cD(a){return new A.dz(this.brh(a),t.s8)}, +brh(a){return function(){var s=a +var r=0,q=1,p,o,n,m,l,k +return function $async$cD(b,c,d){if(c===1){p=d +r=q}while(true)switch(r){case 0:o=J.au(s),n=0,m=0,l=0 +case 2:if(!o.t()){r=3 +break}k=o.gK(o) +if(k<0||k>63){r=3 +break}n=(n<<6^k)>>>0 +l=l<<6^63 +m+=6 +case 4:if(!(m>=8)){r=5 +break}m-=8 +r=6 +return b.b=B.d.afW(n,m),1 +case 6:l=l>>>8 +n=(n&l)>>>0 +r=4 +break +case 5:r=2 +break +case 3:if(n>0)throw A.d(A.bM("Invalid length",null,null)) +return 0 +case 1:return b.c=p,3}}}}} +A.a_G.prototype={ +cD(a){return new A.dz(this.bri(a),t.s8)}, +bri(a){return function(){var s=a +var r=0,q=1,p,o,n,m,l +return function $async$cD(b,c,d){if(c===1){p=d +r=q}while(true)switch(r){case 0:o=J.au(s),n=0,m=0,l=0 +case 2:if(!o.t()){r=3 +break}n=(n<<8^o.gK(o)&255)>>>0 +l=l<<8^255 +m+=8 +case 4:if(!(m>=6)){r=5 +break}m-=6 +r=6 +return b.b=B.d.afW(n,m),1 +case 6:l=l>>>6 +n=(n&l)>>>0 +r=4 +break +case 5:r=2 +break +case 3:r=m>0?7:8 +break +case 7:r=9 +return b.b=B.d.hN(n,6-m),1 +case 9:case 8:return 0 +case 1:return b.c=p,3}}}}} +A.b6e.prototype={} +A.b6g.prototype={} +A.vs.prototype={ +l(a,b){if(b==null)return!1 +if(b instanceof A.vs)return J.q(b.a,this.a)&&J.q(b.b,this.b) +return!1}, +gv(a){return(A.ef(A.I(this))^J.ab(this.a)^J.ab(this.b))>>>0}} +A.avk.prototype={ +k(a){return"HiveError: "+this.a}} +A.dN.prototype={} +A.ao1.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +return A.ac(b.bFi(b.a[s]),null)}, +eU(a,b,c){var s=c.k(0),r=s.length +A.a5(r,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=r +b.aH3(s,!1)}, +gf_(){return 17}} +A.a1A.prototype={ +dL(a,b){var s=B.e.au(b.wO()),r=new A.Qj(s,!1) +r.R0(s,!1) +return this.$ti.c.a(r)}, +eU(a,b,c){b.x3(c.a)}, +gf_(){return 16}} +A.Qj.prototype={} +A.asd.prototype={ +dL(a,b){var s=B.e.au(b.wO()),r=b.f,q=r+1 +if(q>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=q +return A.vF(s,b.a[r]>0)}, +eU(a,b,c){var s +b.x3(c.a) +s=c.b +A.a5(s,null) +s=s?1:0 +A.a5(s,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=s}, +gf_(){return 18}} +A.b5u.prototype={ +Ob(a,b,c,d,e,f){return this.bDc(0,b,c,!0,e,f)}, +bDc(a,b,c,d,e,f){var s=0,r=A.p(t.A8),q,p,o,n +var $async$Ob=A.l(function(g,h){if(g===1)return A.m(h,r) +while(true)switch(s){case 0:n=$.cZv() +if(n.aAw("window")){p=window +p.toString +p=p.indexedDB||p.webkitIndexedDB||p.mozIndexedDB}else p=self.indexedDB +p.toString +s=3 +return A.i(B.Ef.aCP(p,b,new A.b5v("box"),1),$async$Ob) +case 3:o=h +p=o.objectStoreNames +s=!B.tY.p(p,"box")?4:5 +break +case 4:A.eP("Creating objectStore box in database "+b+"...") +if(n.aAw("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.i(B.Ef.aCP(n,b,new A.b5w("box"),p+1),$async$Ob) +case 6:o=h +case 5:A.eP("Got object store box in database "+b+".") +q=new A.aa9(o,e,"box",B.a6_) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Ob,r)}} +A.b5v.prototype={ +$1(a){var s=t.Bk.a(new A.xa([],[]).yt(a.target.result,!1)),r=s.objectStoreNames,q=this.a +if(!B.tY.p(r,q))B.CE.ay1(s,q)}, +$S:375} +A.b5w.prototype={ +$1(a){var s=t.Bk.a(new A.xa([],[]).yt(a.target.result,!1)),r=s.objectStoreNames,q=this.a +if(!B.tY.p(r,q))B.CE.ay1(s,q)}, +$S:375} +A.aa9.prototype={ +anY(a){return a.length>=2&&a[0]===144&&a[1]===169}, +bv7(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.anY(l))return l.buffer}else if(typeof l=="number"||A.lY(l)||typeof l=="string"||t.ga.b(l)||t.TP.b(l)||t.yp.b(l))return l +s=this.d +r=new A.ao2(s,new Uint8Array(4096)) +r.aGX(B.aBY,!1) +if(j)r.aG(0,l) +else{q=new A.ao2(s,new Uint8Array(4096)) +q.bIl(0,l,!0) +p=q.b +o=q.d +j=p.length+32 +if(r.b.length-r.dp)A.C(A.b8("Not enough bytes available.")) +r.f=q +o=this.b +if(o==null)return r.fn(0) +else{n=p-q +m=new Uint8Array(n) +l=o.bJs(r.a,q,n,m,0) +r.f+=n +return A.cFb(m,r.d,l).fn(0)}}else return s}else return a}, +Iz(a){var s=this.c,r=a?"readwrite":"readonly" +if(r!=="readonly"&&r!=="readwrite")A.C(A.aM(r,null)) +s=this.a.transaction(s,r).objectStore(s) +s.toString +return s}, +aIN(){var s,r,q,p,o=this.Iz(!1) +if("getAllKeys" in o&&!0){s=new A.ak($.at,t.rI) +r=new A.aI(s,t.dx) +q=this.Iz(!1).getAllKeys(null) +q.toString +p=t.I3 +A.qW(q,"success",new A.bHP(r,q),!1,p) +A.qW(q,"error",new A.bHQ(r,q),!1,p) +return s}else{s=B.lw.aCR(o,!0) +return new A.ft(new A.bHR(),s,s.$ti.h("ft")).eO(0)}}, +aJt(){var s,r,q,p,o=this.Iz(!1) +if("getAll" in o&&!0){s=new A.ak($.at,t.mg) +r=new A.aI(s,t.fB) +q=o.getAll(null) +q.toString +p=t.I3 +A.qW(q,"success",new A.bHS(this,q,r),!1,p) +A.qW(q,"error",new A.bHT(r,q),!1,p) +return s}else{s=B.lw.aCR(o,!0) +return new A.ft(new A.bHU(),s,s.$ti.h("ft")).eO(0)}}, +Nj(a,b,c,d){return this.byK(0,b,c,d)}, +byK(a,b,c,d){var s=0,r=A.p(t.S),q,p=this,o,n,m,l,k,j,i +var $async$Nj=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:p.d=b +s=3 +return A.i(p.aIN(),$async$Nj) +case 3:o=f +s=!d?4:6 +break +case 4:i=J +s=7 +return A.i(p.aJt(),$async$Nj) +case 7:n=i.au(f),m=J.ao(o),l=0 +case 8:if(!n.t()){s=10 +break}k=n.gK(n) +j=l+1 +c.aB_(0,new A.qa(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.au(o);n.t();)c.aB_(0,new A.qa(n.gK(n),null,!1,!0,null,-1),!1) +case 5:q=0 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Nj,r)}, +Pj(a){return this.bIt(a)}, +bIt(a){var s=0,r=A.p(t.H),q=this,p,o,n,m,l +var $async$Pj=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:l=q.Iz(!0) +p=a.length,o=0 +case 2:if(!(or.e)A.C(A.b8("Not enough bytes available.")) +s=r.b.getFloat64(q,!0) +r.f+=8 +return s}, +aEl(a,b){var s,r,q=this,p="Not enough bytes available." +if(a==null){s=q.f+4 +if(s>q.e)A.C(A.b8(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.C(A.b8(p)) +q.f=s +r=q.a +return new A.iu(b.a).jP(A.dF(r.buffer,r.byteOffset+(s-a),a),0,null,!0)}, +aEk(){return this.aEl(null,B.k_)}, +bFi(a){return this.aEl(a,B.k_)}, +bFd(){var s,r,q,p,o,n=this,m="Not enough bytes available.",l=n.f+4 +if(l>n.e)A.C(A.b8(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.C(A.b8(m)) +q=n.b +p=A.aK(r,0,!0,t.S) +for(o=0;on.e)A.C(A.b8(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.C(A.b8(m)) +q=n.b +p=A.aK(r,0,!0,t.i) +for(o=0;oo.e)A.C(A.b8(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.C(A.b8(n)) +q=A.aK(r,!1,!0,t.y) +for(m=o.a,p=0;p0 +return q}, +bFj(){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.C(A.b8(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.aK(r,"",!0,t.N) +for(i=k.a,p=0;pk.e)A.C(A.b8(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.C(A.b8(j)) +k.f=s +n=i.buffer +m=i.byteOffset +l=new Uint8Array(n,m+(s-o),o) +q[p]=new A.iu(!1).jP(l,0,null,!0)}return q}, +bFg(){var s,r,q,p,o=this,n=o.f+4 +if(n>o.e)A.C(A.b8("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.aK(r,null,!0,t.z) +for(p=0;po.e)A.C(A.b8("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.N(n,n) +for(p=0;pl)A.C(A.b8(o)) +s=p.a +p.f=m +r=s[n] +if(r===0){n=m+4 +if(n>l)A.C(A.b8(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.C(A.b8(o)) +p.f=n +q=s[m] +n+=q +if(n>l)A.C(A.b8(o)) +p.f=n +return new A.iu(!1).jP(A.dF(s.buffer,s.byteOffset+(n-q),q),0,null,!0)}else throw A.d(A.ij("Unsupported key type. Frame might be corrupted."))}, +bFa(){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.C(A.b8(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.C(A.b8(j)) +p=k.a +k.f=s +o=p[i] +i=s+o +if(i>q)A.C(A.b8(j)) +k.f=i +n=A.dp(A.dF(p.buffer,p.byteOffset+(i-o),o),0,null) +m=A.aK(r,null,!0,t.z) +for(l=0;lo.e)A.C(A.b8(n)) +o.f=l +s=o.a[m] +switch(s){case 0:return null +case 1:return B.e.au(o.wO()) +case 2:return o.wO() +case 3:m=o.f +l=m+1 +if(l>o.e)A.C(A.b8(n)) +o.f=l +return o.a[m]>0 +case 4:return o.aEk() +case 5:m=o.f+4 +if(m>o.e)A.C(A.b8(n)) +o.f=m +l=o.a +m-=4 +r=(l[m]|l[m+1]<<8|l[m+2]<<16|l[m+3]<<24)>>>0 +m=o.f +l=m+r +if(l>o.e)A.C(A.b8(n)) +q=B.p.cK(o.a,m,l) +o.f+=r +return q +case 6:return o.bFd() +case 7:return o.bF8() +case 8:return o.bF4() +case 9:return o.bFj() +case 10:return o.bFg() +case 11:return o.bFh() +case 12:return o.bFa() +default:p=o.d.azF(s) +if(p==null)throw A.d(A.ij("Cannot read, unknown typeId: "+A.r(s)+". Did you forget to register an adapter?")) +return p.a.dL(0,o)}}} +A.ao2.prototype={ +a_(a){var s,r=this,q=r.d,p=(q+a)*2-1 +p|=B.d.b2(p,1) +p|=p>>>2 +p|=p>>>4 +p|=p>>>8 +s=new Uint8Array(((p|p>>>16)>>>0)+1) +B.p.cV(s,0,q,r.b) +r.b=s +r.c=null}, +x3(a){var s,r=this +A.a5(a,null) +if(r.b.length-r.d<8)r.a_(8) +s=r.c +if(s==null)s=r.c=A.fe(r.b.buffer,0,null) +s.setFloat64(r.d,a,!0) +r.d+=8}, +aH3(a,b){var s,r,q,p,o,n=this +A.a5(a,null) +s=B.bo.cD(a) +if(b){r=s.length +A.a5(r,null) +if(n.b.length-n.d<4)n.a_(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.a5(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.a5(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.a5(s,i) +if(j.b.length-j.d<1)j.a_(1) +j.b[j.d++]=s +s=new A.e0(p) +A.a5(s,i) +o=s.gA(0) +if(j.b.length-j.d")),r=r.c;s.t();){q=s.d +if(q==null)q=r.a(q) +q=q.gNz(q) +if(j.b.length-j.d<1)j.a_(1) +j.b[j.d++]=1 +n=B.bo.cD(q) +q=n.length +if(j.b.length-j.d<1)j.a_(1) +m=j.b +l=j.d +k=l+1 +j.d=k +m[l]=q +if(m.length-k>>0}, +gA(a){return this.e}} +A.Ht.prototype={ +gA(a){var s +if(!this.f)A.C(A.ij("Box has already been closed.")) +s=this.e +s===$&&A.b() +return s.c.e}, +gcU(a){var s +if(!this.f)A.C(A.ij("Box has already been closed.")) +s=this.e +s===$&&A.b() +return s.c.e>0}, +aGP(){if(!this.f)A.C(A.ij("Box has already been closed.")) +var s=this.e +s===$&&A.b() +return s.b.bId(null)}, +aB(a,b){var s +if(!this.f)A.C(A.ij("Box has already been closed.")) +s=this.e +s===$&&A.b() +s=s.c.vx(b) +return(s==null?null:s.b)!=null}, +V(a){var s=0,r=A.p(t.S),q,p=this,o +var $async$V=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(!p.f)A.C(A.ij("Box has already been closed.")) +s=3 +return A.i(p.d.V(0),$async$V) +case 3:o=p.e +o===$&&A.b() +q=o.V(0) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$V,r)}, +a8h(){var s=0,r=A.p(t.H),q,p=this +var $async$a8h=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if(!p.f)A.C(A.ij("Box has already been closed.")) +p.d.gaUm() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a8h,r)}, +bDW(){var s=this.e +s===$&&A.b() +if(this.c.$2(s.c.e,s.e))return this.a8h() +return A.dm(null,t.H)}, +aO(a){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$aO=A.l(function(b,c){if(b===1)return A.m(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.i(o.b.a.aO(0),$async$aO) +case 3:o=p.b +n=p.a.toLowerCase() +o.c.F(0,n) +o.b.F(0,n) +s=4 +return A.i(p.d.aO(0),$async$aO) +case 4:case 1:return A.n(q,r)}}) +return A.o($async$aO,r)}, +$ia0_:1} +A.Pd.prototype={ +aeq(a,b,c){var s,r +if(!this.f)A.C(A.ij("Box has already been closed.")) +s=this.e +s===$&&A.b() +s=s.c.vx(b) +r=s==null?null:s.b +if(r!=null)return this.$ti.h("1?").a(r.b) +else return c}, +d3(a,b){return this.aeq(0,b,null)}, +aE5(a){var s,r,q=A.a([],t.EN) +for(s=A.jL(a,a.r,A.z(a).c);s.t();){r=s.d +q.push(new A.qa(r,a.i(0,r),!1,!1,null,-1))}return this.Fc(q)}, +a9m(a){var s,r,q,p=A.a([],t.EN) +for(s=0;s<1;++s){r=a[s] +q=this.e +q===$&&A.b() +q=q.c.vx(r) +if((q==null?null:q.b)!=null)p.push(new A.qa(r,null,!0,!1,null,-1))}return this.Fc(p)}, +Fc(a){return this.blD(a)}, +blD(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k +var $async$Fc=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(!n.f)A.C(A.ij("Box has already been closed.")) +m=n.e +m===$&&A.b() +if(!m.bnp(a)){s=1 +break}p=4 +s=7 +return A.i(n.d.Pj(a),$async$Fc) +case 7:n.e.d.qC() +p=2 +s=6 +break +case 4:p=3 +k=o +n.e.bpQ() +throw k +s=6 +break +case 3:s=2 +break +case 6:s=8 +return A.i(n.bDW(),$async$Fc) +case 8:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Fc,r)}, +$ikG:1, +gabH(){return!1}} +A.b8Z.prototype={ +wA(a){this.a.B(0,new A.vs(a.a,a.b))}, +bId(a){var s=this.a +return new A.dw(s,A.z(s).h("dw<1>"))}} +A.a4N.prototype={} +A.awn.prototype={ +gA(a){return this.c.e}, +aB(a,b){var s=this.c.vx(b) +return(s==null?null:s.b)!=null}, +aB0(a,b,c,d){var s,r,q=this,p=b.c,o=b.a +if(!p){if(A.bI(o)&&o>q.f)q.f=o +s=c?b.bH_():b +r=q.c.eu(0,o,s)}else r=q.c.BW(0,o) +s=r!=null +if(s)++q.e +if(d)p=!p||s +else p=!1 +if(p)q.b.wA(b) +return r}, +uz(a,b){return this.aB0(0,b,!1,!0)}, +aB_(a,b,c){return this.aB0(0,b,!1,c)}, +bnp(a){var s,r,q,p,o=[],n=A.hg(null,null,null,t.z,t.OP) +for(s=a.length,r=0;r"))) +return!0}else return!1}, +bpQ(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this.d,d=e.qC() +$label0$0:for(s=d.b,r=A.z(s),q=new A.Ga(s,s.JJ(),r.h("Ga<1>")),p=this.c,o=this.b.a,n=e.$ti,m=n.h("NP<1>"),n=n.c,r=r.c;q.t();){l=q.d +if(l==null)l=r.a(l) +k=s.i(0,l) +for(j=new A.NP(e,e.c,e.d,e.b,m);j.t();){i=j.e +if(i==null)i=n.a(i) +h=i.b +if(h.aB(0,l)){k.toString +h.n(0,l,k) +continue $label0$0}if(B.b.p(i.a,l)){k.toString +h.n(0,l,k) +continue $label0$0}}p.eu(0,l,k) +j=k.a +i=k.b +if(!o.gob())A.C(o.o8()) +o.kL(new A.vs(j,i))}$label1$1:for(r=d.a,q=r.length,g=0;g").a1(m.y[1]).h("aka<1,2>") +s=A.R(new A.aka(n.a,m),!0,m.h("B.E")) +n.V(0) +for(n=s.length,m=o.b.a,r=0;r"))}, +bcH(a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2){var s=0,r=A.p(b2),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$EQ=A.l(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.aB(0,a2.toLowerCase())?3:5 +break +case 3:g=a2 +q=b1.h("kG<0>").a(m.alY(g,!1,b1)) +s=1 +break +s=4 +break +case 5:f=m.c +s=f.aB(0,a2)?6:7 +break +case 6:g=f.i(0,a2) +s=8 +return A.i(t.L0.b(g)?g:A.dO(g,t.z),$async$EQ) +case 8:g=a2 +q=b1.h("kG<0>").a(m.alY(g,!1,b1)) +s=1 +break +case 7:l=new A.aI(new A.ak($.at,t.LR),t.zh) +f.n(0,a2,l.a) +k=null +p=10 +j=null +e=$.cWi() +d=a2 +s=13 +return A.i(e.Ob(0,d,null,!0,a4,b0),$async$EQ) +case 13:j=b4 +e=a2 +d=j +c=new A.Pd(e,m,a6,d,b1.h("Pd<0>")) +c.e=A.d8V(c,new A.b8Z(new A.h1(null,null,t.Mx)),a5,b1) +k=c +e=k +d=e.d +b=e.b +a=e.e +a===$&&A.b() +s=14 +return A.i(d.Nj(0,b,a,e.gabH()),$async$EQ) +case 14:g.n(0,a2,k) +J.cEs(l) +g=k +q=g +n=[1] +s=11 +break +n.push(12) +s=11 +break +case 10:p=9 +a1=o +i=A.ag(a1) +h=A.aD(a1) +g=k +if(g!=null)J.GT(g) +l.iy(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.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$EQ,r)}, +rT(a,b){return this.bDd(a,b,b.h("kG<0>"))}, +bDd(a,b,c){var s=0,r=A.p(c),q,p=this,o +var $async$rT=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:o=b.h("kG<0>") +s=3 +return A.i(p.EQ(a,!1,null,A.drE(),A.drD(),!0,null,null,null,b),$async$rT) +case 3:q=o.a(e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$rT,r)}, +alY(a,b,c){var s,r,q=a.toLowerCase(),p=this.b.i(0,q) +if(p!=null){s=p.gabH() +if(s===b&&A.c6(A.z(p).c)===A.c6(c))return c.h("a0_<0>").a(p) +else{r=p instanceof A.awK?"LazyBox<"+A.c6(p.$ti.c).k(0)+">":"Box<"+A.c6(A.z(p).c).k(0)+">" +throw A.d(A.ij('The box "'+q+'" is already open and of type '+r+"."))}}else throw A.d(A.ij("Box not found. Did you forget to call Hive.openBox()?"))}} +A.avj.prototype={} +A.Rs.prototype={ +gFB(){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.d(A.ij('To use this list, you have to open the box "'+q+'" first.')) +else if(!(s instanceof A.Pd))throw A.d(A.ij('The box "'+q+'" is a lazy box. You can only use HiveLists with normal boxes.')) +else r.e=s +q=s}return q}, +gdW(){var s,r,q,p,o,n,m,l,k,j,i=this +if(i.r)throw A.d(A.ij("HiveList has already been disposed.")) +if(i.f){s=A.a([],i.$ti.h("D<1>")) +for(r=i.d,q=r.length,p=0;p")) +for(q=i.b,m=q.length,r=r.c,p=0;p").a1(r.y[1]),s=new A.c4(J.au(s.a),s.b,r.h("c4<1,2>")),q=J.lm(a),r=r.y[1],p=null;s.t();){o=s.a +n=o==null?r.a(o):o +o=n.$ti.c +if(q.gjp(a)===A.c6(o))return n +if(o.b(a)&&p==null)p=n}return p}, +azF(a){return this.a.i(0,a)}, +Zf(a,b,c){var s,r +if(A.c6(c)===B.ma||A.c6(c)===B.ZG)A.eP("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.gf_() +if(!b){if(s>223)throw A.d(A.ij("TypeId "+s+" not allowed.")) +s+=32 +if(this.a.i(0,s)!=null){r=A.ij("There is already a TypeAdapter for typeId "+(s-32)+".") +throw A.d(r)}}this.a.n(0,s,new A.a8q(a,s,c.h("a8q<0>")))}, +bFz(a,b){return this.Zf(a,!1,b)}} +A.asv.prototype={ +ga2(a){return B.b.ga2(this.gdW())}, +gP(a){return B.b.gP(this.gdW())}, +gA(a){return this.gdW().length}, +S(a,b){return B.b.S(this.gdW(),b)}, +i(a,b){return this.gdW()[b]}, +ef(a,b){return B.b.ef(this.gdW(),b)}, +jx(a,b){var s=this.gdW() +return new A.ek(s,A.X(s).h("@<1>").a1(b).h("ek<1,2>"))}, +p(a,b){return B.b.p(this.gdW(),b)}, +dE(a,b){return this.gdW()[b]}, +lF(a,b){return B.b.lF(this.gdW(),b)}, +MM(a,b,c){var s=this.gdW() +return new A.eE(s,b,A.X(s).h("@<1>").a1(c).h("eE<1,2>"))}, +aE(a,b){return B.b.aE(this.gdW(),b)}, +Dv(a,b,c){var s=this.gdW() +A.dM(b,c,s.length,null,null) +return A.fB(s,b,c,A.X(s).c)}, +Cq(a,b,c){return B.b.Cq(this.gdW(),b,c)}, +rE(a,b){return this.Cq(0,b,0)}, +gad(a){return this.gdW().length===0}, +gcU(a){return this.gdW().length!==0}, +gaz(a){var s=this.gdW() +return new J.cP(s,s.length,A.X(s).h("cP<1>"))}, +bQ(a,b){return B.b.bQ(this.gdW(),b)}, +jG(a){return this.bQ(0,"")}, +fK(a,b,c){var s=this.gdW() +return new A.O(s,b,A.X(s).h("@<1>").a1(c).h("O<1,2>"))}, +gZw(a){var s=this.gdW() +return new A.bE(s,A.X(s).h("bE<1>"))}, +gcW(a){return B.b.gcW(this.gdW())}, +my(a,b){var s=this.gdW() +return A.fB(s,b,null,A.X(s).c)}, +cK(a,b,c){return B.b.cK(this.gdW(),b,c)}, +hs(a,b){return this.cK(0,b,null)}, +nl(a,b){var s=this.gdW() +return A.fB(s,0,A.hz(b,"count",t.S),A.X(s).c)}, +ib(a,b){var s=this.gdW(),r=A.X(s) +return b?A.a(s.slice(0),r):J.n8(s.slice(0),r.c)}, +eO(a){return this.ib(0,!0)}, +jq(a){var s=this.gdW() +return A.mf(s,A.X(s).c)}, +kW(a,b){var s=this.gdW() +return new A.b1(s,b,A.X(s).h("b1<1>"))}, +a_a(a,b){return new A.cv(this.gdW(),b.h("cv<0>"))}} +A.aw1.prototype={ +gA(a){return this.e}, +eu(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=c.vx(a0) +if(b!=null){s=b.b +b.b=a1 +return s}r=c.b +q=0 +while(!0){if(!(r.aCm()&&q<11))break;++q}p=c.d +if(q>=p){c.d=p+1 +q=p}r=q+1 +o=c.$ti +n=A.aK(r,null,!1,o.h("Gk<1,2>?")) +r=A.aK(r,0,!1,t.S) +m=new A.Gk(a0,a1,n,r,o.h("@<1>").a1(o.y[1]).h("Gk<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}, +BW(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=j.vx(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}, +vx(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.q(r.$2(a,p),0) +r=p}else r=!1 +if(r)return q +return null}, +V(a){var s,r,q=this +q.d=1 +for(s=q.a.c,r=0;r<12;++r)s[r]=null +q.d=1 +q.e=0}} +A.Gk.prototype={} +A.aQv.prototype={ +t(){var s=this.a.c[0] +this.a=s +return s!=null}} +A.aQC.prototype={ +gK(a){var s=this.a.a +s.toString +return s}} +A.NN.prototype={ +gaz(a){var s=this.$ti +return new A.aQC(this.a,s.h("@<1>").a1(s.y[1]).h("aQC<1,2>"))}} +A.aZu.prototype={ +gK(a){var s=this.a.b +s.toString +return s}} +A.aka.prototype={ +gaz(a){var s=this.$ti +return new A.aZu(this.a,s.h("@<1>").a1(s.y[1]).h("aZu<1,2>"))}} +A.ad7.prototype={ +a3(a,b){var s,r=this,q=r.c +if(q.length===0){s=r.a +if(r.b!=null)r.d=s.aGP().eB(new A.bT9(r)) +else r.d=s.aGP().eB(new A.bTa(r))}q.push(b)}, +O(a,b){var s=this.c +B.b.F(s,b) +if(s.length===0){s=this.d +if(s!=null)s.ao(0) +this.d=null}}, +gj(a){return this.a}} +A.bT9.prototype={ +$1(a){var s,r,q=this.a +if(q.b.p(0,a.a))for(q=q.c,s=q.length,r=0;r")),r=r.c;s.t();){q=s.d;(q==null?r.a(q):q).xB(a)}}, +hB(a){var s=this.a +if(s!=null)B.b.F(s.gfC(0).a,this) +return this}, +byN(a,b,c){var s,r +if(c==null)this.gfC(0).B(0,b) +else{s=this.gfC(0) +r=this.gfC(0) +s.eu(0,r.c2(r,c),b)}}, +bFZ(a,b){var s,r=this,q=r.a +if(q==null)throw A.d(A.aq("Node must have a parent to replace it.")) +q=q.gfC(0) +s=r.a.gfC(0) +q.n(0,s.c2(s,r),b) +return r}, +bFT(a){a.gfC(0).L(0,this.gfC(0)) +this.gfC(0).V(0)}, +b_V(a,b){var s,r,q,p,o,n,m,l +if(b)for(s=this.gfC(0).a,r=A.X(s),s=new J.cP(s,s.length,r.h("cP<1>")),r=r.c,q=t.f2;s.t();){p=s.d +p=(p==null?r.a(p):p).FI(0,!0) +o=a.c +if(o===$){n=A.a([],q) +a.c!==$&&A.a_() +o=a.c=new A.eV(a,n)}if(p instanceof A.vI){m=p.c +if(m===$){n=A.a([],q) +p.c!==$&&A.a_() +m=p.c=new A.eV(p,n)}o.L(0,m)}else{n=p.a +if(n!=null){m=n.c +if(m===$){l=A.a([],q) +n.c!==$&&A.a_() +m=n.c=new A.eV(n,l)}B.b.F(m.a,p)}p.a=o.b +o.tu(0,p)}}return a}, +JN(a,b){return this.b_V(a,b,t._A)}} +A.a1Z.prototype={ +gwz(a){return 9}, +gNa(a){var s=new A.ps().t1(0,this,A.GH("html")) +return s==null?null:new A.ps().t1(0,s,A.GH("head"))}, +gbny(a){var s=new A.ps().t1(0,this,A.GH("html")) +return s==null?null:new A.ps().t1(0,s,A.GH("body"))}, +k(a){return"#document"}, +xB(a){return this.R2(a)}, +FI(a,b){return this.JN(A.cH4(),!0)}} +A.vI.prototype={ +gwz(a){return 11}, +k(a){return"#document-fragment"}, +FI(a,b){return this.JN(A.cH5(),!0)}, +xB(a){return this.R2(a)}} +A.a20.prototype={ +gwz(a){return 10}, +k(a){var s,r=this,q=r.x,p=q==null +if(!p||r.y!=null){if(p)q="" +s=r.y +if(s==null)s="" +return"'}else return""}, +xB(a){a.a+=this.k(0)}, +FI(a,b){return A.cH7(this.w,this.x,this.y)}} +A.wQ.prototype={ +gwz(a){return 3}, +k(a){var s=J.cw(this.w) +this.w=s +return'"'+s+'"'}, +xB(a){return A.dwL(a,this)}, +FI(a,b){var s=J.cw(this.w) +this.w=s +return A.cze(s)}, +avm(a,b){var s=this.w;(!(s instanceof A.bu)?this.w=new A.bu(A.r(s)):s).a+=b}} +A.dk.prototype={ +gwz(a){return 1}, +gYY(a){var s,r,q,p=this.a +if(p==null)return null +s=p.gfC(0) +for(r=s.c2(s,this)-1,p=s.a;r>=0;--r){q=p[r] +if(q instanceof A.dk)return q}return null}, +gaCn(a){var s,r,q,p,o,n=this.a +if(n==null)return null +s=n.gfC(0) +for(r=s.c2(s,this)+1,q=s.a,p=q.length;r"}, +xB(a){var s,r,q,p,o=this +a.a+="<" +s=a.a+=A.d66(o.w) +r=o.x +q=A.r(r) +a.a=s+q +s=o.b +if(s.a!==0)s.aE(0,new A.bgf(a)) +a.a+=">" +s=o.gfC(0) +if(!s.gad(s)){if(r==="pre"||r==="textarea"||r==="listing"){p=o.gfC(0).a[0] +if(p instanceof A.wQ){s=J.cw(p.w) +p.w=s +s=B.c.aC(s,"\n")}else s=!1 +if(s)a.a+="\n"}o.R2(a)}if(!A.dti(r))a.a+=""}, +FI(a,b){var s=this,r=A.cwD(s.x,s.w) +r.b=A.rA(s.b,t.K,t.N) +return s.JN(r,b)}, +gqq(a){var s=this.b.i(0,"id") +return s==null?"":s}, +gawT(a){var s=this.b.i(0,"class") +return s==null?"":s}} +A.bgf.prototype={ +$2(a,b){var s,r=this.a +r.a+=" " +s=r.a+=A.r(a) +r.a=s+'="' +s=r.a+=A.cSQ(b,!0) +r.a=s+'"'}, +$S:231} +A.a0T.prototype={ +gwz(a){return 8}, +k(a){return""}, +xB(a){a.a+=""}, +FI(a,b){return A.cG2(this.w)}} +A.eV.prototype={ +B(a,b){if(b instanceof A.vI)this.L(0,b.gfC(0)) +else{b.hB(0) +b.a=this.b +this.tu(0,b)}}, +L(a,b){var s,r,q,p,o,n,m,l,k=this.alJ(b) +for(s=A.X(k).h("bE<1>"),r=new A.bE(k,s),r=new A.bj(r,r.gA(0),s.h("bj")),q=this.b,s=s.h("aa.E"),p=t.f2;r.t();){o=r.d +if(o==null)o=s.a(o) +n=o.a +if(n!=null){m=n.c +if(m===$){l=A.a([],p) +n.c!==$&&A.a_() +m=n.c=new A.eV(n,l)}B.b.F(m.a,o)}o.a=q}this.aP1(0,k)}, +eu(a,b,c){if(c instanceof A.vI)this.ox(0,b,c.gfC(0)) +else{c.hB(0) +c.a=this.b +this.agI(0,b,c)}}, +hX(a){var s=this.aOZ(this) +s.a=null +return s}, +fE(a,b){var s=this.agJ(0,b) +s.a=null +return s}, +V(a){var s,r,q +for(s=this.a,r=A.X(s),s=new J.cP(s,s.length,r.h("cP<1>")),r=r.c;s.t();){q=s.d;(q==null?r.a(q):q).a=null}this.aOY(this)}, +n(a,b,c){var s=this +if(c instanceof A.vI){s.agJ(0,b).a=null +s.ox(0,b,c.gfC(0))}else{s.a[b].a=null +c.hB(0) +c.a=s.b +s.aP0(0,b,c)}}, +dS(a,b,c,d,e){var s,r,q +t.nh.a(d) +s=d instanceof A.eV?d.cK(d,e,e+c):d +for(r=c-1,q=J.ao(s);r>=0;--r)this.n(0,b+r,q.i(s,e+r))}, +cV(a,b,c,d){return this.dS(0,b,c,d,0)}, +wW(a,b){var s,r,q=this +for(s=q.gaz(0),r=new A.i6(s,new A.buM(b),A.z(q).h("i6"));r.t();)s.gK(0).a=null +q.aP_(q,b)}, +ox(a,b,c){var s,r,q,p,o,n,m,l,k=this.alJ(c) +for(s=A.X(k).h("bE<1>"),r=new A.bE(k,s),r=new A.bj(r,r.gA(0),s.h("bj")),q=this.b,s=s.h("aa.E"),p=t.f2;r.t();){o=r.d +if(o==null)o=s.a(o) +n=o.a +if(n!=null){m=n.c +if(m===$){l=A.a([],p) +n.c!==$&&A.a_() +m=n.c=new A.eV(n,l)}B.b.F(m.a,o)}o.a=q}this.aP2(0,b,k)}, +alJ(a){var s,r,q,p,o=t.f2,n=A.a([],o) +for(s=J.au(a);s.t();){r=s.gK(s) +if(r instanceof A.vI){q=r.c +if(q===$){p=A.a([],o) +r.c!==$&&A.a_() +q=r.c=new A.eV(r,p)}B.b.L(n,q)}else n.push(r)}return n}} +A.buM.prototype={ +$1(a){return!this.a.$1(a)}, +$S:232} +A.atS.prototype={ +aE(a,b){var s=t.h7 +B.b.aE(A.R(new A.cv(this.a,s),!1,s.h("B.E")),b)}, +n(a,b,c){var s=t.h7 +A.R(new A.cv(this.a,s),!1,s.h("B.E"))[b].bFZ(0,c)}, +sA(a,b){var s=t.h7,r=A.R(new A.cv(this.a,s),!1,s.h("B.E")).length +if(b>=r)return +else if(b<0)throw A.d(A.aM("Invalid list length",null)) +this.t3(0,b,r)}, +bQ(a,b){var s=t.h7 +return B.b.bQ(A.R(new A.cv(this.a,s),!1,s.h("B.E")),b)}, +jG(a){return this.bQ(0,"")}, +B(a,b){this.a.B(0,b)}, +L(a,b){var s,r,q,p,o,n,m +for(s=J.au(b),r=this.a,q=t.f2;s.t();){p=s.gK(s) +o=p.a +if(o!=null){n=o.c +if(n===$){m=A.a([],q) +o.c!==$&&A.a_() +n=o.c=new A.eV(o,m)}B.b.F(n.a,p)}p.a=r.b +r.tu(0,p)}}, +p(a,b){var s +if(b instanceof A.dk){s=this.a +s=s.p(s,b)}else s=!1 +return s}, +gZw(a){var s=t.h7 +s=A.R(new A.cv(this.a,s),!1,s.h("B.E")) +return new A.bE(s,A.X(s).h("bE<1>"))}, +iL(a,b){throw A.d(A.aq("TODO(jacobr): should we impl?"))}, +dS(a,b,c,d,e){throw A.d(A.bT(null))}, +cV(a,b,c,d){return this.dS(0,b,c,d,0)}, +fb(a,b,c,d){throw A.d(A.bT(null))}, +t3(a,b,c){var s=t.h7 +B.b.aE(B.b.cK(A.R(new A.cv(this.a,s),!1,s.h("B.E")),b,c),new A.bi4())}, +V(a){this.a.V(0)}, +hX(a){var s=t.h7 +s=B.b.gP(A.R(new A.cv(this.a,s),!1,s.h("B.E"))) +s.hB(0) +return s}, +fK(a,b,c){var s=t.h7 +s=A.R(new A.cv(this.a,s),!1,s.h("B.E")) +return new A.O(s,b,A.X(s).h("@<1>").a1(c).h("O<1,2>"))}, +kW(a,b){var s=t.h7 +s=A.R(new A.cv(this.a,s),!1,s.h("B.E")) +return new A.b1(s,b,A.X(s).h("b1<1>"))}, +MM(a,b,c){var s=t.h7 +s=A.R(new A.cv(this.a,s),!1,s.h("B.E")) +return new A.eE(s,b,A.X(s).h("@<1>").a1(c).h("eE<1,2>"))}, +eu(a,b,c){this.a.eu(0,b,c)}, +fE(a,b){var s=t.h7 +s=A.R(new A.cv(this.a,s),!1,s.h("B.E"))[b] +s.hB(0) +return s}, +F(a,b){return!1}, +lF(a,b){var s=t.h7 +return B.b.lF(A.R(new A.cv(this.a,s),!1,s.h("B.E")),b)}, +ef(a,b){var s=t.h7 +return B.b.ef(A.R(new A.cv(this.a,s),!1,s.h("B.E")),b)}, +ib(a,b){return A.R(this,b,t.Si)}, +eO(a){return this.ib(0,!0)}, +jq(a){return A.mf(this,t.Si)}, +dE(a,b){var s=t.h7 +return A.R(new A.cv(this.a,s),!1,s.h("B.E"))[b]}, +gad(a){var s=t.h7 +return A.R(new A.cv(this.a,s),!1,s.h("B.E")).length===0}, +gA(a){var s=t.h7 +return A.R(new A.cv(this.a,s),!1,s.h("B.E")).length}, +i(a,b){var s=t.h7 +return A.R(new A.cv(this.a,s),!1,s.h("B.E"))[b]}, +gaz(a){var s=t.h7 +s=A.R(new A.cv(this.a,s),!1,s.h("B.E")) +return new J.cP(s,s.length,A.X(s).h("cP<1>"))}, +cK(a,b,c){var s=t.h7 +return B.b.cK(A.R(new A.cv(this.a,s),!1,s.h("B.E")),b,c)}, +hs(a,b){return this.cK(0,b,null)}, +Dv(a,b,c){var s=t.h7 +s=A.R(new A.cv(this.a,s),!1,s.h("B.E")) +A.dM(b,c,s.length,null,null) +return A.fB(s,b,c,A.X(s).c)}, +ga2(a){var s=t.h7 +return B.b.ga2(A.R(new A.cv(this.a,s),!1,s.h("B.E")))}, +gP(a){var s=t.h7 +return B.b.gP(A.R(new A.cv(this.a,s),!1,s.h("B.E")))}, +gcW(a){var s=t.h7 +return B.b.gcW(A.R(new A.cv(this.a,s),!1,s.h("B.E")))}, +$iaO:1, +$ix:1} +A.bi4.prototype={ +$1(a){return a.hB(0)}, +$S:958} +A.bVb.prototype={ +k(a){var s=this.a.a +return s.charCodeAt(0)==0?s:s}} +A.aNG.prototype={} +A.aNH.prototype={} +A.aNI.prototype={} +A.aNE.prototype={} +A.aNF.prototype={} +A.aOg.prototype={} +A.aOh.prototype={} +A.aP0.prototype={} +A.bNz.prototype={ +bg(a){var s,r=this +switch(a.gwz(a)){case 1:return r.d0(t.Si.a(a)) +case 3:t.As.a(a) +s=J.cw(a.w) +a.w=s +r.a.a+=s +return null +case 8:return r.d0(t.Ao.a(a)) +case 11:return r.d0(t.T6.a(a)) +case 9:return r.d0(t.VF.a(a)) +case 10:return r.d0(t.ef.a(a)) +default:throw A.d(A.aq("DOM node type "+a.gwz(a)))}}, +d0(a){var s,r,q +for(s=a.gfC(0),s=s.ib(s,!1),r=s.length,q=0;q")),0,null) +return s==="text/html"||s==="application/xhtml+xml"}else return B.b.p(B.aLR,new A.bs(a.w,r,t.B4))}, +bys(a,b){var s,r=this.d,q=r.c +if(q.length===0)return!1 +s=B.b.gP(q) +q=s.w +if(q==r.a)return!1 +r=s.x +if(B.b.p(B.FH,new A.bs(q,r,t.B4))){if(b===2){q=t.jg.a(a).b +q=q!=="mglyph"&&q!=="malignmark"}else q=!1 +if(q)return!1 +if(b===1||b===0)return!1}if(r==="annotation-xml"&&b===2&&t.jg.a(a).b==="svg")return!1 +if(this.aBk(s))if(b===2||b===1||b===0)return!1 +return!0}, +bAB(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6=this +for(s=a6.c,r=a6.d,q=t.V,p=t.HH,o=t.rp,n=t.jg,m=t.Oi,l=t.qF,k=a6.e,j=t.FB,i=s.a,h=t.N,g=t.X;s.t();){f=s.at +f.toString +for(e=f;e!=null;){d=e.gel(e) +if(d===6){j.a(e) +c=e.a +b=e.c +if(b==null){b=e.c=J.cw(e.b) +e.b=null}if(c==null){a=i.w +if(a==null)c=null +else{a0=i.y +new A.lw(a,a0).o7(a,a0) +c=new A.i8(a,a0,a0) +c.kI(a,a0,a0)}}k.push(new A.oj(b,c,e.e)) +e=null}else{a1=a6.x +if(a1===$){a1=a6.Q +if(a1===$){a2=new A.tZ(a6,r) +a1!==$&&A.a_() +a6.Q=a2 +a1=a2}a6.x=a1}if(a6.bys(f,d)){a1=a6.id +if(a1===$){a2=new A.avZ(a6,r) +a1!==$&&A.a_() +a6.id=a2 +a1=a2}a3=a1}else a3=a1 +switch(d){case 1:e=a3.hW(l.a(e)) +break +case 0:e=a3.nh(m.a(e)) +break +case 2:e=a3.eN(n.a(e)) +break +case 3:e=a3.ff(o.a(e)) +break +case 4:e=a3.CV(p.a(e)) +break +case 5:e=a3.aDu(q.a(e)) +break}}}if(f instanceof A.Fn)if(f.c&&!f.r){c=f.a +f=A.a1(["name",f.b],h,g) +if(c==null){b=i.w +if(b==null)c=null +else{a=i.y +new A.lw(b,a).o7(b,a) +c=new A.i8(b,a,a) +c.kI(b,a,a)}}k.push(new A.oj("non-void-element-with-trailing-solidus",c,f))}}a4=A.a([],t.CV) +for(a5=!0;a5;){a1=a6.x +if(a1===$){a1=a6.Q +if(a1===$){a2=new A.tZ(a6,r) +a1!==$&&A.a_() +a6.Q=a2 +a1=a2}a1=a6.x=a1}a4.push(a1) +a1=a6.x +if(a1===$){a1=a6.Q +if(a1===$){a2=new A.tZ(a6,r) +a1!==$&&A.a_() +a6.Q=a2 +a1=a2}a1=a6.x=a1}a5=a1.iT()}}, +gaod(){var s=this.c.a,r=s.w +if(r==null)s=null +else{s=A.eF(r,s.y) +r=s.b +r=A.hP(s.a,r,r) +s=r}return s}, +dG(a,b,c){var s=new A.oj(b,a==null?this.gaod():a,c) +this.e.push(s)}, +hJ(a,b){return this.dG(a,b,B.QD)}, +avd(a){var s=a.e.F(0,"definitionurl") +if(s!=null)a.e.n(0,"definitionURL",s)}, +avf(a){var s,r,q,p,o,n +for(s=a.e,r=A.z(s).h("bR<1>"),r=A.R(new A.bR(s,r),!1,r.h("B.E")),s=r.length,q=0;q"),r=A.R(new A.bR(s,r),!1,r.h("B.E")),s=r.length,q=0;q"),p=new A.bE(r,q),p=new A.bj(p,p.gA(0),q.h("bj")),q=q.h("aa.E"),o=s.a;p.t();){n=p.d +if(n==null)n=q.a(n) +m=n.x +l=n===r[0] +if(l)m=j.w +switch(m){case"select":case"colgroup":case"head":case"html":break}if(!l&&n.w!=o)continue +switch(m){case"select":k=j.fy +if(k===$){k!==$&&A.a_() +k=j.fy=new A.a4h(j,s)}j.x=k +return +case"td":k=j.fx +if(k===$){k!==$&&A.a_() +k=j.fx=new A.RI(j,s)}j.x=k +return +case"th":k=j.fx +if(k===$){k!==$&&A.a_() +k=j.fx=new A.RI(j,s)}j.x=k +return +case"tr":k=j.fr +if(k===$){k!==$&&A.a_() +k=j.fr=new A.a4g(j,s)}j.x=k +return +case"tbody":k=j.dy +if(k===$){k!==$&&A.a_() +k=j.dy=new A.Jx(j,s)}j.x=k +return +case"thead":k=j.dy +if(k===$){k!==$&&A.a_() +k=j.dy=new A.Jx(j,s)}j.x=k +return +case"tfoot":k=j.dy +if(k===$){k!==$&&A.a_() +k=j.dy=new A.Jx(j,s)}j.x=k +return +case"caption":k=j.db +if(k===$){k!==$&&A.a_() +k=j.db=new A.a4d(j,s)}j.x=k +return +case"colgroup":k=j.dx +if(k===$){k!==$&&A.a_() +k=j.dx=new A.a4e(j,s)}j.x=k +return +case"table":k=j.cx +if(k===$){k!==$&&A.a_() +k=j.cx=new A.a4i(j,s)}j.x=k +return +case"head":k=j.ch +if(k===$){k!==$&&A.a_() +k=j.ch=new A.RH(j,s)}j.x=k +return +case"body":k=j.ch +if(k===$){k!==$&&A.a_() +k=j.ch=new A.RH(j,s)}j.x=k +return +case"frameset":k=j.k2 +if(k===$){k!==$&&A.a_() +k=j.k2=new A.a4f(j,s)}j.x=k +return +case"html":k=j.at +if(k===$){k!==$&&A.a_() +k=j.at=new A.a_E(j,s)}j.x=k +return}}j.x=j.gii()}, +Oi(a,b){var s,r=this +r.d.f8(a) +s=r.c +if(b==="RAWTEXT")s.x=s.gOv() +else s.x=s.gD_() +r.y=r.gmp() +r.x=r.gasF()}} +A.hK.prototype={ +iT(){throw A.d(A.bT(null))}, +CV(a){var s=this.b +s.GN(a,B.b.gP(s.c)) +return null}, +aDu(a){this.a.hJ(a.a,"unexpected-doctype") +return null}, +hW(a){this.b.zq(a.gi3(0),a.a) +return null}, +nh(a){this.b.zq(a.gi3(0),a.a) +return null}, +eN(a){throw A.d(A.bT(null))}, +tq(a){var s=this.a +if(!s.f&&a.b==="html")s.hJ(a.a,"non-html-root") +this.b.c[0].e=a.a +a.e.aE(0,new A.bx9(this)) +s.f=!1 +return null}, +ff(a){throw A.d(A.bT(null))}, +Hs(a){var s=a.b,r=this.b.c,q=r.pop() +for(;q.x!=s;)q=r.pop()}} +A.bx9.prototype={ +$2(a,b){this.a.b.c[0].b.cP(0,a,new A.bx8(b))}, +$S:231} +A.bx8.prototype={ +$0(){return this.a}, +$S:18} +A.tZ.prototype={ +nh(a){return null}, +CV(a){var s=this.b,r=s.b +r===$&&A.b() +s.GN(a,r) +return null}, +aDu(a){var s,r=this,q=a.d,p=a.b,o=p==null?null:A.dp(new A.O(new A.e0(p),A.xD(),t.Hz.h("O")),0,null),n=a.c,m=a.e +if(q==="html")if(o==null)p=n!=null&&n!=="about:legacy-compat" +else p=!0 +else p=!0 +if(p)r.a.hJ(a.a,"unknown-doctype") +if(o==null)o="" +s=A.cH7(a.d,a.b,a.c) +s.e=a.a +p=r.b.b +p===$&&A.b() +p.gfC(0).B(0,s) +if(m)if(a.d==="html"){p=B.c.gagc(o) +if(!B.b.ef(B.aJ9,p))if(!B.b.p(B.aML,o))if(!(B.b.ef(B.F9,p)&&n==null))p=n!=null&&n.toLowerCase()==="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd" +else p=!0 +else p=!0 +else p=!0}else p=!0 +else p=!0 +if(p)r.a.r="quirks" +else{p=B.c.gagc(o) +if(!B.b.ef(B.aOA,p))p=B.b.ef(B.F9,p)&&n!=null +else p=!0 +if(p)r.a.r="limited quirks"}p=r.a +p.x=p.gRd() +return null}, +vP(){var s=this.a +s.r="quirks" +s.x=s.gRd()}, +hW(a){this.a.hJ(a.a,"expected-doctype-but-got-chars") +this.vP() +return a}, +eN(a){this.a.dG(a.a,"expected-doctype-but-got-start-tag",A.a1(["name",a.b],t.N,t.X)) +this.vP() +return a}, +ff(a){this.a.dG(a.a,"expected-doctype-but-got-end-tag",A.a1(["name",a.b],t.N,t.X)) +this.vP() +return a}, +iT(){var s=this.a +s.hJ(s.gaod(),"expected-doctype-but-got-eof") +this.vP() +return!0}} +A.ao_.prototype={ +Nn(){var s=this.b,r=s.axX(0,A.my("html",A.e4(null,null,t.K,t.N),null,!1)) +s.c.push(r) +s=s.b +s===$&&A.b() +s.gfC(0).B(0,r) +s=this.a +s.x=s.gaWl()}, +iT(){this.Nn() +return!0}, +CV(a){var s=this.b,r=s.b +r===$&&A.b() +s.GN(a,r) +return null}, +nh(a){return null}, +hW(a){this.Nn() +return a}, +eN(a){if(a.b==="html")this.a.f=!0 +this.Nn() +return a}, +ff(a){var s=a.b +switch(s){case"head":case"body":case"html":case"br":this.Nn() +return a +default:this.a.dG(a.a,"unexpected-end-tag-before-html",A.a1(["name",s],t.N,t.X)) +return null}}} +A.a_E.prototype={ +eN(a){var s=null +switch(a.b){case"html":return this.a.gii().eN(a) +case"head":this.J7(a) +return s +default:this.J7(A.my("head",A.e4(s,s,t.K,t.N),s,!1)) +return a}}, +ff(a){var s=null,r=a.b +switch(r){case"head":case"body":case"html":case"br":this.J7(A.my("head",A.e4(s,s,t.K,t.N),s,!1)) +return a +default:this.a.dG(a.a,"end-tag-after-implied-root",A.a1(["name",r],t.N,t.X)) +return s}}, +iT(){this.J7(A.my("head",A.e4(null,null,t.K,t.N),null,!1)) +return!0}, +nh(a){return null}, +hW(a){this.J7(A.my("head",A.e4(null,null,t.K,t.N),null,!1)) +return a}, +J7(a){var s=this.b +s.f8(a) +s.e=B.b.gP(s.c) +s=this.a +s.x=s.gAS()}} +A.aw_.prototype={ +eN(a){var s,r,q,p,o,n=this,m=null +switch(a.b){case"html":return n.a.gii().eN(a) +case"title":n.a.Oi(a,"RCDATA") +return m +case"noscript":case"noframes":case"style":n.a.Oi(a,"RAWTEXT") +return m +case"script":n.b.f8(a) +s=n.a +r=s.c +r.x=r.gxg() +s.y=s.gmp() +s.x=s.gasF() +return m +case"base":case"basefont":case"bgsound":case"command":case"link":s=n.b +s.f8(a) +s.c.pop() +a.r=!0 +return m +case"meta":s=n.b +s.f8(a) +s.c.pop() +a.r=!0 +q=a.e +s=n.a.c.a +if(!s.b){p=q.i(0,"charset") +o=q.i(0,"content") +if(p!=null)s.awJ(p) +else if(o!=null)s.awJ(new A.baL(new A.bgu(o)).kA(0))}return m +case"head":n.a.hJ(a.a,"two-heads-are-not-better-than-one") +return m +default:n.MJ(new A.d7("head",!1)) +return a}}, +ff(a){var s=a.b +switch(s){case"head":this.MJ(a) +return null +case"br":case"html":case"body":this.MJ(new A.d7("head",!1)) +return a +default:this.a.dG(a.a,"unexpected-end-tag",A.a1(["name",s],t.N,t.X)) +return null}}, +iT(){this.MJ(new A.d7("head",!1)) +return!0}, +hW(a){this.MJ(new A.d7("head",!1)) +return a}, +MJ(a){var s,r=this.a,q=r.d +q.c.pop() +s=r.ay +if(s===$){s!==$&&A.a_() +s=r.ay=new A.amS(r,q)}r.x=s}} +A.amS.prototype={ +eN(a){var s=this,r=null,q=a.b +switch(q){case"html":return s.a.gii().eN(a) +case"body":q=s.a +q.z=!1 +s.b.f8(a) +q.x=q.gii() +return r +case"frameset":s.b.f8(a) +q=s.a +q.x=q.ganz() +return r +case"base":case"basefont":case"bgsound":case"link":case"meta":case"noframes":case"script":case"style":case"title":s.aNc(a) +return r +case"head":s.a.dG(a.a,"unexpected-start-tag",A.a1(["name",q],t.N,t.X)) +return r +default:s.vP() +return a}}, +ff(a){var s=a.b +switch(s){case"body":case"html":case"br":this.vP() +return a +default:this.a.dG(a.a,"unexpected-end-tag",A.a1(["name",s],t.N,t.X)) +return null}}, +iT(){this.vP() +return!0}, +hW(a){this.vP() +return a}, +aNc(a){var s,r,q,p=this.a +p.dG(a.a,"unexpected-start-tag-out-of-my-head",A.a1(["name",a.b],t.N,t.X)) +s=this.b +r=s.c +r.push(t.Si.a(s.e)) +p.gAS().eN(a) +for(p=A.X(r).h("bE<1>"),s=new A.bE(r,p),s=new A.bj(s,s.gA(0),p.h("bj")),p=p.h("aa.E");s.t();){q=s.d +if(q==null)q=p.a(q) +if(q.x==="head"){B.b.F(r,q) +break}}}, +vP(){this.b.f8(A.my("body",A.e4(null,null,t.K,t.N),null,!1)) +var s=this.a +s.x=s.gii() +s.z=!0}} +A.RH.prototype={ +eN(a){var s,r,q,p,o,n=this,m=null,l="p",k="button",j="unexpected-start-tag",i="unexpected-start-tag-implies-end-tag",h="RAWTEXT",g=a.b +switch(g){case"html":return n.tq(a) +case"base":case"basefont":case"bgsound":case"command":case"link":case"meta":case"noframes":case"script":case"style":case"title":return n.a.gAS().eN(a) +case"body":n.aN9(a) +return m +case"frameset":n.aNb(a) +return m +case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":n.ag6(a) +return m +case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":g=n.b +if(g.hG(l,k))n.wa(new A.d7(l,!1)) +s=g.c +if(B.b.p(B.oy,B.b.gP(s).x)){n.a.dG(a.a,j,A.a1(["name",a.b],t.N,t.X)) +s.pop()}g.f8(a) +return m +case"pre":case"listing":g=n.b +if(g.hG(l,k))n.wa(new A.d7(l,!1)) +g.f8(a) +n.a.z=!1 +n.c=!0 +return m +case"form":g=n.b +if(g.f!=null)n.a.dG(a.a,j,A.a1(["name","form"],t.N,t.X)) +else{if(g.hG(l,k))n.wa(new A.d7(l,!1)) +g.f8(a) +g.f=B.b.gP(g.c)}return m +case"li":case"dd":case"dt":n.aNf(a) +return m +case"plaintext":g=n.b +if(g.hG(l,k))n.wa(new A.d7(l,!1)) +g.f8(a) +g=n.a.c +g.x=g.gaDd() +return m +case"a":g=n.b +r=g.ayZ("a") +if(r!=null){n.a.dG(a.a,i,A.a1(["startName","a","endName","a"],t.N,t.X)) +n.az8(new A.d7("a",!1)) +B.b.F(g.c,r) +B.b.F(g.d.a,r)}g.mt() +n.a76(a) +return m +case"b":case"big":case"code":case"em":case"font":case"i":case"s":case"small":case"strike":case"strong":case"tt":case"u":n.b.mt() +n.a76(a) +return m +case"nobr":g=n.b +g.mt() +if(g.qk("nobr")){n.a.dG(a.a,i,A.a1(["startName","nobr","endName","nobr"],t.N,t.X)) +n.ff(new A.d7("nobr",!1)) +g.mt()}n.a76(a) +return m +case"button":return n.aNa(a) +case"applet":case"marquee":case"object":g=n.b +g.mt() +g.f8(a) +g.d.B(0,m) +n.a.z=!1 +return m +case"xmp":g=n.b +if(g.hG(l,k))n.wa(new A.d7(l,!1)) +g.mt() +g=n.a +g.z=!1 +g.Oi(a,h) +return m +case"table":g=n.a +if(g.r!=="quirks")if(n.b.hG(l,k))n.ff(new A.d7(l,!1)) +n.b.f8(a) +g.z=!1 +g.x=g.gmK() +return m +case"area":case"br":case"embed":case"img":case"keygen":case"wbr":n.agb(a) +return m +case"param":case"source":case"track":g=n.b +g.f8(a) +g.c.pop() +a.r=!0 +return m +case"input":g=n.a +q=g.z +n.agb(a) +s=a.e.i(0,"type") +if((s==null?m:A.dp(new A.O(new A.e0(s),A.xD(),t.Hz.h("O")),0,m))==="hidden")g.z=q +return m +case"hr":g=n.b +if(g.hG(l,k))n.wa(new A.d7(l,!1)) +g.f8(a) +g.c.pop() +a.r=!0 +n.a.z=!1 +return m +case"image":n.a.dG(a.a,"unexpected-start-tag-treated-as",A.a1(["originalName","image","newName","img"],t.N,t.X)) +n.eN(A.my("img",a.e,m,a.c)) +return m +case"isindex":n.aNe(a) +return m +case"textarea":n.b.f8(a) +g=n.a +s=g.c +s.x=s.gD_() +n.c=!0 +g.z=!1 +return m +case"iframe":g=n.a +g.z=!1 +g.Oi(a,h) +return m +case"noembed":case"noscript":n.a.Oi(a,h) +return m +case"select":g=n.b +g.mt() +g.f8(a) +g=n.a +g.z=!1 +if(g.gmK()===g.gmp()||g.ganw()===g.gmp()||g.gany()===g.gmp()||g.ga3T()===g.gmp()||g.ga3S()===g.gmp()||g.ganx()===g.gmp()){p=g.go +if(p===$){p!==$&&A.a_() +p=g.go=new A.aw0(g,g.d)}g.x=p}else g.x=g.gAT() +return m +case"rp":case"rt":g=n.b +if(g.qk("ruby")){g.Dn() +o=B.b.gP(g.c) +if(o.x!=="ruby")n.a.hJ(o.e,"undefined-error")}g.f8(a) +return m +case"option":case"optgroup":g=n.b +if(B.b.gP(g.c).x==="option")n.a.gmp().ff(new A.d7("option",!1)) +g.mt() +n.a.d.f8(a) +return m +case"math":g=n.b +g.mt() +s=n.a +s.avd(a) +s.a7e(a) +a.w="http://www.w3.org/1998/Math/MathML" +g.f8(a) +if(a.c){g.c.pop() +a.r=!0}return m +case"svg":g=n.b +g.mt() +s=n.a +s.avf(a) +s.a7e(a) +a.w="http://www.w3.org/2000/svg" +g.f8(a) +if(a.c){g.c.pop() +a.r=!0}return m +case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":n.a.dG(a.a,"unexpected-start-tag-ignored",A.a1(["name",g],t.N,t.X)) +return m +default:g=n.b +g.mt() +g.f8(a) +return m}}, +ff(a){var s,r,q,p,o,n=this,m=null,l="end-tag-too-early",k="unexpected-end-tag",j=a.b +switch(j){case"body":n.az7(a) +return m +case"html":return n.a9Y(a) +case"address":case"article":case"aside":case"blockquote":case"button":case"center":case"details":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"listing":case"menu":case"nav":case"ol":case"pre":case"section":case"summary":case"ul":if(j==="pre")n.c=!1 +s=n.b +r=s.qk(j) +if(r)s.Dn() +j=B.b.gP(s.c).x +s=a.b +if(j!=s)n.a.dG(a.a,l,A.a1(["name",s],t.N,t.X)) +if(r)n.Hs(a) +return m +case"form":j=n.b +q=j.f +j.f=null +if(q==null||!j.qk(q))n.a.dG(a.a,k,A.a1(["name","form"],t.N,t.X)) +else{j.Dn() +j=j.c +if(!J.q(B.b.gP(j),q))n.a.dG(a.a,"end-tag-too-early-ignored",A.a1(["name","form"],t.N,t.X)) +B.b.F(j,q)}return m +case"p":n.wa(a) +return m +case"dd":case"dt":case"li":p=j==="li"?"list":m +s=n.b +j=s.hG(j,p) +o=a.b +if(!j)n.a.dG(a.a,k,A.a1(["name",o],t.N,t.X)) +else{s.A5(o) +j=B.b.gP(s.c).x +s=a.b +if(j!=s)n.a.dG(a.a,l,A.a1(["name",s],t.N,t.X)) +n.Hs(a)}return m +case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":n.bvj(a) +return m +case"a":case"b":case"big":case"code":case"em":case"font":case"i":case"nobr":case"s":case"small":case"strike":case"strong":case"tt":case"u":n.az8(a) +return m +case"applet":case"marquee":case"object":s=n.b +if(s.qk(j))s.Dn() +j=B.b.gP(s.c).x +o=a.b +if(j!=o)n.a.dG(a.a,l,A.a1(["name",o],t.N,t.X)) +if(s.qk(a.b)){n.Hs(a) +s.a89()}return m +case"br":j=t.N +n.a.dG(a.a,"unexpected-end-tag-treated-as",A.a1(["originalName","br","newName","br element"],j,t.X)) +s=n.b +s.mt() +s.f8(A.my("br",A.e4(m,m,t.K,j),m,!1)) +s.c.pop() +return m +default:n.bvl(a) +return m}}, +bzo(a,b){var s,r +if(a.x!=b.x||a.w!=b.w)return!1 +else{s=a.b +if(s.a!==b.b.a)return!1 +else for(s=A.jL(s,s.r,A.z(s).c);s.t();){r=s.d +if(!J.q(a.b.i(0,r),b.b.i(0,r)))return!1}}return!0}, +a76(a){var s,r,q,p,o,n,m=this.b +m.f8(a) +s=B.b.gP(m.c) +r=A.a([],t.PR) +for(m=m.d,q=A.z(m).h("bE"),p=new A.bE(m,q),p=new A.bj(p,p.gA(0),q.h("bj")),o=t.Si,q=q.h("aa.E");p.t();){n=p.d +if(n==null)n=q.a(n) +if(n==null)break +else{o.a(n) +if(this.bzo(n,s))r.push(n)}}if(r.length===3)B.b.F(m.a,B.b.gP(r)) +m.B(0,s)}, +iT(){var s,r,q,p +$label0$1:for(s=this.b.c,r=A.X(s).h("bE<1>"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E");s.t();){q=s.d +if(q==null)q=r.a(q) +switch(q.x){case"dd":case"dt":case"li":case"p":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":case"body":case"html":continue $label0$1}s=this.a +p=q.e +if(p==null){r=s.c.a +q=r.w +if(q==null)p=null +else{r=r.y +new A.lw(q,r).o7(q,r) +p=new A.i8(q,r,r) +p.kI(q,r,r)}}s.e.push(new A.oj("expected-closing-tag-but-got-eof",p,B.QD)) +break $label0$1}return!1}, +hW(a){var s +if(a.gi3(0)==="\x00")return null +s=this.b +s.mt() +s.zq(a.gi3(0),a.a) +s=this.a +if(s.z&&!A.cB7(a.gi3(0)))s.z=!1 +return null}, +nh(a){var s,r,q,p=this +if(p.c){s=a.gi3(0) +r=p.c=!1 +if(B.c.aC(s,"\n")){q=B.b.gP(p.b.c) +if(B.b.p(B.aPE,q.x)){r=q.gfC(0) +r=r.gad(r)}if(r)s=B.c.b0(s,1)}if(s.length!==0){r=p.b +r.mt() +r.zq(s,a.a)}}else{r=p.b +r.mt() +r.zq(a.gi3(0),a.a)}return null}, +aN9(a){var s,r=this.a +r.dG(a.a,"unexpected-start-tag",A.a1(["name","body"],t.N,t.X)) +s=this.b.c +if(!(s.length===1||s[1].x!=="body")){r.z=!1 +a.e.aE(0,new A.bni(this))}}, +aNb(a){var s,r,q,p=this.a +p.dG(a.a,"unexpected-start-tag",A.a1(["name","frameset"],t.N,t.X)) +s=this.b +r=s.c +if(!(r.length===1||r[1].x!=="body"))if(p.z){q=r[1].a +if(q!=null)B.b.F(q.gfC(0).a,r[1]) +for(;B.b.gP(r).x!=="html";)r.pop() +s.f8(a) +p.x=p.ganz()}}, +ag6(a){var s=this.b +if(s.hG("p","button"))this.wa(new A.d7("p",!1)) +s.f8(a)}, +aNf(a){var s,r,q,p,o,n,m,l,k,j,i=this.a +i.z=!1 +s=a.b +s.toString +s=B.aVx.i(0,s) +s.toString +for(r=this.b,q=r.c,p=A.X(q).h("bE<1>"),q=new A.bE(q,p),q=new A.bj(q,q.gA(0),p.h("bj")),o=t.V3,p=p.h("aa.E");q.t();){n=q.d +if(n==null)n=p.a(n) +m=n.x +if(B.b.p(s,m)){l=i.x +if(l===$){l=i.Q +if(l===$){k=new A.tZ(i,i.d) +l!==$&&A.a_() +i.Q=k +l=k}l=i.x=l}l.ff(new A.d7(m,!1)) +break}j=n.w +if(B.b.p(B.vl,new A.bs(j==null?"http://www.w3.org/1999/xhtml":j,m,o))&&!B.b.p(B.aMy,m))break}if(r.hG("p","button"))i.gmp().ff(new A.d7("p",!1)) +r.f8(a)}, +aNa(a){var s=this.b,r=this.a +if(s.qk("button")){r.dG(a.a,"unexpected-start-tag-implies-end-tag",A.a1(["startName","button","endName","button"],t.N,t.X)) +this.ff(new A.d7("button",!1)) +return a}else{s.mt() +s.f8(a) +r.z=!1}return null}, +agb(a){var s=this.b +s.mt() +s.f8(a) +s.c.pop() +a.r=!0 +this.a.z=!1}, +aNe(a){var s,r,q,p,o,n=this,m=null,l="action",k=t.N +n.a.dG(a.a,"deprecated-tag",A.a1(["name","isindex"],k,t.X)) +if(n.b.f!=null)return +s=t.K +r=A.e4(m,m,s,k) +q=a.e.i(0,l) +if(q!=null)r.n(0,l,q) +n.eN(A.my("form",r,m,!1)) +n.eN(A.my("hr",A.e4(m,m,s,k),m,!1)) +n.eN(A.my("label",A.e4(m,m,s,k),m,!1)) +p=a.e.i(0,"prompt") +if(p==null)p="This is a searchable index. Enter search keywords: " +n.hW(new A.cH(m,p)) +o=A.rA(a.e,s,k) +o.F(0,l) +o.F(0,"prompt") +o.n(0,"name","isindex") +n.eN(A.my("input",o,m,a.c)) +n.ff(new A.d7("label",!1)) +n.eN(A.my("hr",A.e4(m,m,s,k),m,!1)) +n.ff(new A.d7("form",!1))}, +wa(a){var s=this,r="unexpected-end-tag",q=s.b +if(!q.hG("p","button")){q=t.N +s.ag6(A.my("p",A.e4(null,null,t.K,q),null,!1)) +s.a.dG(a.a,r,A.a1(["name","p"],q,t.X)) +s.wa(new A.d7("p",!1))}else{q.A5("p") +if(B.b.gP(q.c).x!=="p")s.a.dG(a.a,r,A.a1(["name","p"],t.N,t.X)) +s.Hs(a)}}, +az7(a){var s,r,q,p,o,n,m=this,l=m.b +if(!l.qk("body")){m.a.hJ(a.a,"undefined-error") +return}else{l=l.c +if(B.b.gP(l).x==="body")B.b.gP(l) +else $label0$1:for(l=A.cC3(l,2,null),s=l.length,r=0;r"),p=new A.bE(r,q),p=new A.bj(p,p.gA(0),q.h("bj")),o=t.V3,q=q.h("aa.E");p.t();){n=p.d +if(n==null)n=q.a(n) +m=n.x +l=a.b +if(m==l){k=B.b.gP(r).x +if(k!=l&&B.b.p(B.vG,k)){r.pop() +s.A5(l)}s=B.b.gP(r).x +q=a.b +if(s!=q){s=this.a +j=a.a +q=A.a1(["name",q],t.N,t.X) +if(j==null){p=s.c.a +o=p.w +if(o==null)j=null +else{p=p.y +new A.lw(o,p).o7(o,p) +j=new A.i8(o,p,p) +j.kI(o,p,p)}}s.e.push(new A.oj(h,j,q))}for(;!J.q(r.pop(),n););break}else{i=n.w +if(B.b.p(B.vl,new A.bs(i==null?"http://www.w3.org/1999/xhtml":i,m,o))){s=this.a +j=a.a +r=A.a1(["name",a.b],t.N,t.X) +if(j==null){q=s.c.a +p=q.w +if(p==null)j=null +else{q=q.y +new A.lw(p,q).o7(p,q) +j=new A.i8(p,q,q) +j.kI(p,q,q)}}s.e.push(new A.oj(h,j,r)) +break}}}}} +A.bni.prototype={ +$2(a,b){this.a.b.c[1].b.cP(0,a,new A.bnh(b))}, +$S:231} +A.bnh.prototype={ +$0(){return this.a}, +$S:18} +A.aGa.prototype={ +eN(a){throw A.d(A.a0("Cannot process start stag in text phase"))}, +ff(a){var s,r,q=this +if(a.b==="script"){q.b.c.pop() +s=q.a +r=s.y +r.toString +s.x=r +return null}q.b.c.pop() +s=q.a +r=s.y +r.toString +s.x=r +return null}, +hW(a){this.b.zq(a.gi3(0),a.a) +return null}, +iT(){var s=this.b.c,r=B.b.gP(s),q=this.a +q.dG(r.e,"expected-named-closing-tag-but-got-eof",A.a1(["name",r.x],t.N,t.X)) +s.pop() +s=q.y +s.toString +q.x=s +return!0}} +A.a4i.prototype={ +eN(a){var s,r,q=this,p=null +switch(a.b){case"html":return q.tq(a) +case"caption":q.a8c() +s=q.b +s.d.B(0,p) +s.f8(a) +s=q.a +s.x=s.ganw() +return p +case"colgroup":q.ag7(a) +return p +case"col":q.ag7(A.my("colgroup",A.e4(p,p,t.K,t.N),p,!1)) +return a +case"tbody":case"tfoot":case"thead":q.ag9(a) +return p +case"td":case"th":case"tr":q.ag9(A.my("tbody",A.e4(p,p,t.K,t.N),p,!1)) +return a +case"table":return q.aNg(a) +case"style":case"script":return q.a.gAS().eN(a) +case"input":s=a.e.i(0,"type") +if((s==null?p:A.dp(new A.O(new A.e0(s),A.xD(),t.Hz.h("O")),0,p))==="hidden"){q.a.hJ(a.a,"unexpected-hidden-input-in-table") +s=q.b +s.f8(a) +s.c.pop()}else q.ag8(a) +return p +case"form":q.a.hJ(a.a,"unexpected-form-in-table") +s=q.b +if(s.f==null){s.f8(a) +r=s.c +s.f=B.b.gP(r) +r.pop()}return p +default:q.ag8(a) +return p}}, +ff(a){var s,r=this,q=a.b +switch(q){case"table":r.yV(a) +return null +case"body":case"caption":case"col":case"colgroup":case"html":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":r.a.dG(a.a,"unexpected-end-tag",A.a1(["name",q],t.N,t.X)) +return null +default:s=r.a +s.dG(a.a,"unexpected-end-tag-implies-table-voodoo",A.a1(["name",q],t.N,t.X)) +q=r.b +q.r=!0 +s.gii().ff(a) +q.r=!1 +return null}}, +a8c(){var s=this.b.c +while(!0){if(!(B.b.gP(s).x!=="table"&&B.b.gP(s).x!=="html"))break +s.pop()}}, +iT(){var s=B.b.gP(this.b.c) +if(s.x!=="html")this.a.hJ(s.e,"eof-in-table") +return!1}, +nh(a){var s=this.a,r=s.gmp() +s.x=s.gSd() +s.gSd().c=r +s.gmp().nh(a) +return null}, +hW(a){var s=this.a,r=s.gmp() +s.x=s.gSd() +s.gSd().c=r +s.gmp().hW(a) +return null}, +ag7(a){var s +this.a8c() +this.b.f8(a) +s=this.a +s.x=s.gany()}, +ag9(a){var s +this.a8c() +this.b.f8(a) +s=this.a +s.x=s.ga3T()}, +aNg(a){var s=this.a +s.dG(a.a,"unexpected-start-tag-implies-end-tag",A.a1(["startName","table","endName","table"],t.N,t.X)) +s.gmp().ff(new A.d7("table",!1)) +if(s.w==null)return a +return null}, +ag8(a){var s,r=this.a +r.dG(a.a,u.M,A.a1(["name",a.b],t.N,t.X)) +s=this.b +s.r=!0 +r.gii().eN(a) +s.r=!1}, +yV(a){var s,r=this,q=r.b +if(q.hG("table","table")){q.Dn() +q=q.c +s=B.b.gP(q).x +if(s!=="table")r.a.dG(a.a,"end-tag-too-early-named",A.a1(["gotName","table","expectedName",s],t.N,t.X)) +for(;B.b.gP(q).x!=="table";)q.pop() +q.pop() +r.a.adn()}else r.a.hJ(a.a,"undefined-error")}} +A.RJ.prototype={ +N0(){var s,r,q=this,p=q.d +if(p.length===0)return +s=new A.O(p,new A.bnj(),A.X(p).h("O<1,f>")).bQ(0,"") +if(!A.cB7(s)){p=q.a.gmK() +r=p.b +r.r=!0 +p.a.gii().hW(new A.cH(null,s)) +r.r=!1}else if(s.length!==0)q.b.zq(s,null) +q.d=A.a([],t.JT)}, +CV(a){var s +this.N0() +s=this.c +s.toString +this.a.x=s +return a}, +iT(){this.N0() +var s=this.c +s.toString +this.a.x=s +return!0}, +hW(a){if(a.gi3(0)==="\x00")return null +this.d.push(a) +return null}, +nh(a){this.d.push(a) +return null}, +eN(a){var s +this.N0() +s=this.c +s.toString +this.a.x=s +return a}, +ff(a){var s +this.N0() +s=this.c +s.toString +this.a.x=s +return a}} +A.bnj.prototype={ +$1(a){return a.gi3(0)}, +$S:959} +A.a4d.prototype={ +eN(a){switch(a.b){case"html":return this.tq(a) +case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.aNh(a) +default:return this.a.gii().eN(a)}}, +ff(a){var s=this,r=a.b +switch(r){case"caption":s.bvi(a) +return null +case"table":return s.yV(a) +case"body":case"col":case"colgroup":case"html":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":s.a.dG(a.a,"unexpected-end-tag",A.a1(["name",r],t.N,t.X)) +return null +default:return s.a.gii().ff(a)}}, +iT(){this.a.gii().iT() +return!1}, +hW(a){return this.a.gii().hW(a)}, +aNh(a){var s,r=this.a +r.hJ(a.a,"undefined-error") +s=this.b.hG("caption","table") +r.gmp().ff(new A.d7("caption",!1)) +if(s)return a +return null}, +bvi(a){var s,r=this,q=r.b +if(q.hG("caption","table")){q.Dn() +s=q.c +if(B.b.gP(s).x!=="caption")r.a.dG(a.a,"expected-one-end-tag-but-got-another",A.a1(["gotName","caption","expectedName",B.b.gP(s).x],t.N,t.X)) +for(;B.b.gP(s).x!=="caption";)s.pop() +s.pop() +q.a89() +q=r.a +q.x=q.gmK()}else r.a.hJ(a.a,"undefined-error")}, +yV(a){var s,r=this.a +r.hJ(a.a,"undefined-error") +s=this.b.hG("caption","table") +r.gmp().ff(new A.d7("caption",!1)) +if(s)return a +return null}} +A.a4e.prototype={ +eN(a){var s,r=this +switch(a.b){case"html":return r.tq(a) +case"col":s=r.b +s.f8(a) +s.c.pop() +return null +default:s=B.b.gP(r.b.c).x +r.MI(new A.d7("colgroup",!1)) +return s==="html"?null:a}}, +ff(a){var s,r=this +switch(a.b){case"colgroup":r.MI(a) +return null +case"col":r.a.dG(a.a,"no-end-tag",A.a1(["name","col"],t.N,t.X)) +return null +default:s=B.b.gP(r.b.c).x +r.MI(new A.d7("colgroup",!1)) +return s==="html"?null:a}}, +iT(){if(B.b.gP(this.b.c).x==="html")return!1 +else{this.MI(new A.d7("colgroup",!1)) +return!0}}, +hW(a){var s=B.b.gP(this.b.c).x +this.MI(new A.d7("colgroup",!1)) +return s==="html"?null:a}, +MI(a){var s=this.b.c,r=this.a +if(B.b.gP(s).x==="html")r.hJ(a.a,"undefined-error") +else{s.pop() +r.x=r.gmK()}}} +A.Jx.prototype={ +eN(a){var s,r=this,q=null,p=a.b +switch(p){case"html":return r.tq(a) +case"tr":r.aga(a) +return q +case"td":case"th":s=t.N +r.a.dG(a.a,"unexpected-cell-in-table-body",A.a1(["name",p],s,t.X)) +r.aga(A.my("tr",A.e4(q,q,t.K,s),q,!1)) +return a +case"caption":case"col":case"colgroup":case"tbody":case"tfoot":case"thead":return r.yV(a) +default:return r.a.gmK().eN(a)}}, +ff(a){var s=this,r=a.b +switch(r){case"tbody":case"tfoot":case"thead":s.Wi(a) +return null +case"table":return s.yV(a) +case"body":case"caption":case"col":case"colgroup":case"html":case"td":case"th":case"tr":s.a.dG(a.a,"unexpected-end-tag-in-table-body",A.a1(["name",r],t.N,t.X)) +return null +default:return s.a.gmK().ff(a)}}, +a8b(){for(var s=this.b.c;!B.b.p(B.aQ9,B.b.gP(s).x);)s.pop() +B.b.gP(s).toString}, +iT(){this.a.gmK().iT() +return!1}, +nh(a){return this.a.gmK().nh(a)}, +hW(a){return this.a.gmK().hW(a)}, +aga(a){var s +this.a8b() +this.b.f8(a) +s=this.a +s.x=s.ga3S()}, +Wi(a){var s=this.b,r=this.a +if(s.hG(a.b,"table")){this.a8b() +s.c.pop() +r.x=r.gmK()}else r.dG(a.a,"unexpected-end-tag-in-table-body",A.a1(["name",a.b],t.N,t.X))}, +yV(a){var s=this,r="table",q=s.b +if(q.hG("tbody",r)||q.hG("thead",r)||q.hG("tfoot",r)){s.a8b() +s.Wi(new A.d7(B.b.gP(q.c).x,!1)) +return a}else s.a.hJ(a.a,"undefined-error") +return null}} +A.a4g.prototype={ +eN(a){var s,r,q=this +switch(a.b){case"html":return q.tq(a) +case"td":case"th":q.awW() +s=q.b +s.f8(a) +r=q.a +r.x=r.ganx() +s.d.B(0,null) +return null +case"caption":case"col":case"colgroup":case"tbody":case"tfoot":case"thead":case"tr":s=q.b.hG("tr","table") +q.Wj(new A.d7("tr",!1)) +return!s?null:a +default:return q.a.gmK().eN(a)}}, +ff(a){var s=this,r=a.b +switch(r){case"tr":s.Wj(a) +return null +case"table":r=s.b.hG("tr","table") +s.Wj(new A.d7("tr",!1)) +return!r?null:a +case"tbody":case"tfoot":case"thead":return s.Wi(a) +case"body":case"caption":case"col":case"colgroup":case"html":case"td":case"th":s.a.dG(a.a,"unexpected-end-tag-in-table-row",A.a1(["name",r],t.N,t.X)) +return null +default:return s.a.gmK().ff(a)}}, +awW(){var s,r,q,p,o,n,m,l,k,j +for(s=this.b.c,r=this.a,q=t.N,p=t.X,o=r.c.a;!0;){n=B.b.gP(s) +m=n.x +if(m==="tr"||m==="html")break +l=n.e +m=A.a1(["name",B.b.gP(s).x],q,p) +if(l==null){k=o.w +if(k==null)l=null +else{j=o.y +new A.lw(k,j).o7(k,j) +l=new A.i8(k,j,j) +l.kI(k,j,j)}}r.e.push(new A.oj("unexpected-implied-end-tag-in-table-row",l,m)) +s.pop()}}, +iT(){this.a.gmK().iT() +return!1}, +nh(a){return this.a.gmK().nh(a)}, +hW(a){return this.a.gmK().hW(a)}, +Wj(a){var s=this.b,r=this.a +if(s.hG("tr","table")){this.awW() +s.c.pop() +r.x=r.ga3T()}else r.hJ(a.a,"undefined-error")}, +Wi(a){if(this.b.hG(a.b,"table")){this.Wj(new A.d7("tr",!1)) +return a}else{this.a.hJ(a.a,"undefined-error") +return null}}} +A.RI.prototype={ +eN(a){switch(a.b){case"html":return this.tq(a) +case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.aNi(a) +default:return this.a.gii().eN(a)}}, +ff(a){var s=this,r=a.b +switch(r){case"td":case"th":s.aa_(a) +return null +case"body":case"caption":case"col":case"colgroup":case"html":s.a.dG(a.a,"unexpected-end-tag",A.a1(["name",r],t.N,t.X)) +return null +case"table":case"tbody":case"tfoot":case"thead":case"tr":return s.bvk(a) +default:return s.a.gii().ff(a)}}, +awY(){var s=this.b +if(s.hG("td","table"))this.aa_(new A.d7("td",!1)) +else if(s.hG("th","table"))this.aa_(new A.d7("th",!1))}, +iT(){this.a.gii().iT() +return!1}, +hW(a){return this.a.gii().hW(a)}, +aNi(a){var s=this.b +if(s.hG("td","table")||s.hG("th","table")){this.awY() +return a}else{this.a.hJ(a.a,"undefined-error") +return null}}, +aa_(a){var s,r=this,q=r.b,p=q.hG(a.b,"table"),o=a.b +if(p){q.A5(o) +p=q.c +o=B.b.gP(p).x +s=a.b +if(o!=s){r.a.dG(a.a,"unexpected-cell-end-tag",A.a1(["name",s],t.N,t.X)) +r.Hs(a)}else p.pop() +q.a89() +q=r.a +q.x=q.ga3S()}else r.a.dG(a.a,"unexpected-end-tag",A.a1(["name",o],t.N,t.X))}, +bvk(a){if(this.b.hG(a.b,"table")){this.awY() +return a}else this.a.hJ(a.a,"undefined-error") +return null}} +A.a4h.prototype={ +eN(a){var s,r=this,q=null,p=a.b +switch(p){case"html":return r.tq(a) +case"option":p=r.b +s=p.c +if(B.b.gP(s).x==="option")s.pop() +p.f8(a) +return q +case"optgroup":p=r.b +s=p.c +if(B.b.gP(s).x==="option")s.pop() +if(B.b.gP(s).x==="optgroup")s.pop() +p.f8(a) +return q +case"select":r.a.hJ(a.a,"unexpected-select-in-select") +r.a9Z(new A.d7("select",!1)) +return q +case"input":case"keygen":case"textarea":return r.aNd(a) +case"script":return r.a.gAS().eN(a) +default:r.a.dG(a.a,"unexpected-start-tag-in-select",A.a1(["name",p],t.N,t.X)) +return q}}, +ff(a){var s=this,r=null,q="unexpected-end-tag-in-select",p=a.b +switch(p){case"option":p=s.b.c +if(B.b.gP(p).x==="option")p.pop() +else s.a.dG(a.a,q,A.a1(["name","option"],t.N,t.X)) +return r +case"optgroup":p=s.b.c +if(B.b.gP(p).x==="option"&&p[p.length-2].x==="optgroup")p.pop() +if(B.b.gP(p).x==="optgroup")p.pop() +else s.a.dG(a.a,q,A.a1(["name","optgroup"],t.N,t.X)) +return r +case"select":s.a9Z(a) +return r +default:s.a.dG(a.a,q,A.a1(["name",p],t.N,t.X)) +return r}}, +iT(){var s=B.b.gP(this.b.c) +if(s.x!=="html")this.a.hJ(s.e,"eof-in-select") +return!1}, +hW(a){if(a.gi3(0)==="\x00")return null +this.b.zq(a.gi3(0),a.a) +return null}, +aNd(a){var s="select" +this.a.hJ(a.a,"unexpected-input-in-select") +if(this.b.hG(s,s)){this.a9Z(new A.d7(s,!1)) +return a}return null}, +a9Z(a){var s=this.a +if(this.b.hG("select","select")){this.Hs(a) +s.adn()}else s.hJ(a.a,"undefined-error")}} +A.aw0.prototype={ +eN(a){var s,r=a.b +switch(r){case"caption":case"table":case"tbody":case"tfoot":case"thead":case"tr":case"td":case"th":s=this.a +s.dG(a.a,u.e7,A.a1(["name",r],t.N,t.X)) +s.gAT().ff(new A.d7("select",!1)) +return a +default:return this.a.gAT().eN(a)}}, +ff(a){switch(a.b){case"caption":case"table":case"tbody":case"tfoot":case"thead":case"tr":case"td":case"th":return this.yV(a) +default:return this.a.gAT().ff(a)}}, +iT(){this.a.gAT().iT() +return!1}, +hW(a){return this.a.gAT().hW(a)}, +yV(a){var s=this.a +s.dG(a.a,u.fX,A.a1(["name",a.b],t.N,t.X)) +if(this.b.hG(a.b,"table")){s.gAT().ff(new A.d7("select",!1)) +return a}return null}} +A.avZ.prototype={ +hW(a){var s +if(a.gi3(0)==="\x00"){a.c="\ufffd" +a.b=null}else{s=this.a +if(s.z&&!A.cB7(a.gi3(0)))s.z=!1}return this.aPx(a)}, +eN(a){var s,r,q,p,o=this,n=o.b,m=n.c,l=B.b.gP(m) +if(!B.b.p(B.aOE,a.b))if(a.b==="font")s=a.e.aB(0,"color")||a.e.aB(0,"face")||a.e.aB(0,"size") +else s=!1 +else s=!0 +if(s){s=o.a +s.dG(a.a,u.he,A.a1(["name",a.b],t.N,t.X)) +n=n.a +r=t.B4 +while(!0){if(B.b.gP(m).w!=n)if(!s.aBk(B.b.gP(m))){q=B.b.gP(m) +q=!B.b.p(B.FH,new A.bs(q.w,q.x,r))}else q=!1 +else q=!1 +if(!q)break +m.pop()}return a}else{s=l.w +if(s==="http://www.w3.org/1998/Math/MathML")o.a.avd(a) +else if(s==="http://www.w3.org/2000/svg"){p=B.b4j.i(0,a.b) +if(p!=null)a.b=p +o.a.avf(a)}o.a.a7e(a) +a.w=s +n.f8(a) +if(a.c){m.pop() +a.r=!0}return null}}, +ff(a){var s,r,q,p,o,n=this,m=null,l=n.b,k=l.c,j=k.length-1,i=B.b.gP(k),h=i.x +h=h==null?m:A.dp(new A.O(new A.e0(h),A.xD(),t.Hz.h("O")),0,m) +s=a.b +if(h!=s)n.a.dG(a.a,"unexpected-end-tag",A.a1(["name",s],t.N,t.X)) +l=l.a +h=t.Hz.h("O") +while(!0){if(!!0){r=m +break}c$0:{s=i.x +s=s==null?m:A.dp(new A.O(new A.e0(s),A.xD(),h),0,m) +if(s==a.b){l=n.a +q=l.x +if(q===$){q=l.Q +if(q===$){p=new A.tZ(l,l.d) +q!==$&&A.a_() +l.Q=p +q=p}q=l.x=q}o=l.cy +if(o===$){h=A.a([],t.JT) +l.cy!==$&&A.a_() +o=l.cy=new A.RJ(h,l,l.d)}if(q===o){q=l.x +if(q===$){q=l.Q +if(q===$){p=new A.tZ(l,l.d) +q!==$&&A.a_() +l.Q=p +q=p}q=l.x=q}t.nK.a(q) +q.N0() +h=q.c +h.toString +l.x=h}for(;!J.q(k.pop(),i););r=m +break}--j +i=k[j] +if(i.w!=l)break c$0 +else{l=n.a +q=l.x +if(q===$){q=l.Q +if(q===$){p=new A.tZ(l,l.d) +q!==$&&A.a_() +l.Q=p +q=p}q=l.x=q}r=q.ff(a) +break}}}return r}} +A.amQ.prototype={ +eN(a){var s,r=a.b +if(r==="html")return this.a.gii().eN(a) +s=this.a +s.dG(a.a,"unexpected-start-tag-after-body",A.a1(["name",r],t.N,t.X)) +s.x=s.gii() +return a}, +ff(a){var s,r=a.b +if(r==="html"){this.a9Y(a) +return null}s=this.a +s.dG(a.a,"unexpected-end-tag-after-body",A.a1(["name",r],t.N,t.X)) +s.x=s.gii() +return a}, +iT(){return!1}, +CV(a){var s=this.b +s.GN(a,s.c[0]) +return null}, +hW(a){var s=this.a +s.hJ(a.a,"unexpected-char-after-body") +s.x=s.gii() +return a}, +a9Y(a){var s,r,q,p +for(s=this.b.c,r=A.X(s).h("bE<1>"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E");s.t();){q=s.d +if((q==null?r.a(q):q).x==="html")break}s=this.a +if(s.w!=null)s.hJ(a.a,"unexpected-end-tag-after-body-innerhtml") +else{p=s.k4 +if(p===$){p!==$&&A.a_() +p=s.k4=new A.amO(s,s.d)}s.x=p}}} +A.a4f.prototype={ +eN(a){var s=this,r=a.b +switch(r){case"html":return s.tq(a) +case"frameset":s.b.f8(a) +return null +case"frame":r=s.b +r.f8(a) +r.c.pop() +return null +case"noframes":return s.a.gii().eN(a) +default:s.a.dG(a.a,"unexpected-start-tag-in-frameset",A.a1(["name",r],t.N,t.X)) +return null}}, +ff(a){var s,r,q=this,p=a.b +switch(p){case"frameset":p=q.b.c +if(B.b.gP(p).x==="html")q.a.hJ(a.a,u.fW) +else p.pop() +s=q.a +if(s.w==null&&B.b.gP(p).x!=="frameset"){r=s.k3 +if(r===$){r!==$&&A.a_() +r=s.k3=new A.amR(s,s.d)}s.x=r}return null +default:q.a.dG(a.a,"unexpected-end-tag-in-frameset",A.a1(["name",p],t.N,t.X)) +return null}}, +iT(){var s=B.b.gP(this.b.c) +if(s.x!=="html")this.a.hJ(s.e,"eof-in-frameset") +return!1}, +hW(a){this.a.hJ(a.a,"unexpected-char-in-frameset") +return null}} +A.amR.prototype={ +eN(a){var s=a.b +switch(s){case"html":return this.tq(a) +case"noframes":return this.a.gAS().eN(a) +default:this.a.dG(a.a,"unexpected-start-tag-after-frameset",A.a1(["name",s],t.N,t.X)) +return null}}, +ff(a){var s,r=a.b,q=this.a +switch(r){case"html":s=q.ok +if(s===$){s!==$&&A.a_() +s=q.ok=new A.amP(q,q.d)}q.x=s +return null +default:q.dG(a.a,"unexpected-end-tag-after-frameset",A.a1(["name",r],t.N,t.X)) +return null}}, +iT(){return!1}, +hW(a){this.a.hJ(a.a,"unexpected-char-after-frameset") +return null}} +A.amO.prototype={ +eN(a){var s,r=a.b +if(r==="html")return this.a.gii().eN(a) +s=this.a +s.dG(a.a,"expected-eof-but-got-start-tag",A.a1(["name",r],t.N,t.X)) +s.x=s.gii() +return a}, +iT(){return!1}, +CV(a){var s=this.b,r=s.b +r===$&&A.b() +s.GN(a,r) +return null}, +nh(a){return this.a.gii().nh(a)}, +hW(a){var s=this.a +s.hJ(a.a,"expected-eof-but-got-char") +s.x=s.gii() +return a}, +ff(a){var s=this.a +s.dG(a.a,"expected-eof-but-got-end-tag",A.a1(["name",a.b],t.N,t.X)) +s.x=s.gii() +return a}} +A.amP.prototype={ +eN(a){var s=a.b,r=this.a +switch(s){case"html":return r.gii().eN(a) +case"noframes":return r.gAS().eN(a) +default:r.dG(a.a,"expected-eof-but-got-start-tag",A.a1(["name",s],t.N,t.X)) +return null}}, +iT(){return!1}, +CV(a){var s=this.b,r=s.b +r===$&&A.b() +s.GN(a,r) +return null}, +nh(a){return this.a.gii().nh(a)}, +hW(a){this.a.hJ(a.a,"expected-eof-but-got-char") +return null}, +ff(a){this.a.dG(a.a,"expected-eof-but-got-end-tag",A.a1(["name",a.b],t.N,t.X)) +return null}} +A.oj.prototype={ +k(a){var s,r,q=this.b +q.toString +s=B.b4h.i(0,this.a) +s.toString +r=q.Ya(0,A.dsl(s,this.c),null) +return q.a.a==null?"ParserError on "+r:"On "+r}, +$ibP:1} +A.bBS.prototype={} +A.ath.prototype={ +zT(){var s,r,q,p,o=A.wh(t.N) +for(s=this.a.gawT(0).split(" "),r=s.length,q=0;q=this.a.length)throw A.d(A.czX("No more elements")) +this.b=b}, +glx(a){var s=this.b +if(s>=this.a.length)throw A.d(A.czX("No more elements")) +if(s>=0)return s +else return 0}, +bii(a){var s,r,q,p,o=this +if(a==null)a=A.cS0() +s=o.glx(0) +for(r=o.a,q=r.length;s=0){this.b=s+a.length-1 +return!0}else throw A.d(A.czX("No more elements"))}, +a5Z(a,b){if(b==null)b=this.a.length +if(b<0)b+=this.a.length +return B.c.R(this.a,a,b)}, +bio(a){return this.a5Z(a,null)}} +A.baL.prototype={ +kA(a){var s,r,q,p,o,n +try{p=this.a +p.ao6("charset") +p.slx(0,p.glx(0)+1) +p.as5() +o=p.a +if(o[p.glx(0)]!=="=")return null +p.slx(0,p.glx(0)+1) +p.as5() +if(o[p.glx(0)]==='"'||o[p.glx(0)]==="'"){s=o[p.glx(0)] +p.slx(0,p.glx(0)+1) +r=p.glx(0) +p.ao6(s) +p=p.a5Z(r,p.glx(0)) +return p}else{q=p.glx(0) +try{p.bim(A.cS0()) +o=p.a5Z(q,p.glx(0)) +return o}catch(n){if(A.ag(n) instanceof A.Xm){p=p.bio(q) +return p}else throw n}}}catch(n){if(A.ag(n) instanceof A.Xm)return null +else throw n}}} +A.Xm.prototype={$ibP:1} +A.blO.prototype={ +b6(a){var s,r,q,p,o,n,m,l,k,j=this +j.r=A.od(null,t.N) +s=j.y=0 +j.x=A.a([],t.t) +r=j.f +if(r==null){q=j.a +q.toString +p=j.e +p.toString +r=j.f=A.dkR(q,p)}for(q=r.a,p=q.length,o=!1,n=!1;s=o.length)return null +p=q.ao1(o,p) +o=q.x +s=q.y +r=s+1 +if(p){q.y=r +p=o[s] +q.y=r+1 +r=A.dp(A.a([p,o[r]],t.t),0,null) +p=r}else{q.y=r +p=A.cm(o[s])}return p}, +hA(){var s,r=this,q=r.y,p=r.x +if(q>=p.length)return null +q=r.ao1(p,q) +p=r.x +s=r.y +return q?A.dp(A.a([p[s],p[s+1]],t.t),0,null):A.cm(p[s])}, +ao1(a,b){var s=b+1,r=J.ao(a) +return s"))}, +i(a,b){return this.a[b]}, +n(a,b,c){this.a[b]=c}, +sA(a,b){B.b.sA(this.a,b)}, +B(a,b){this.a.push(b)}, +eu(a,b,c){return B.b.eu(this.a,b,c)}, +L(a,b){B.b.L(this.a,b)}, +ox(a,b,c){B.b.ox(this.a,b,c)}, +fE(a,b){return B.b.fE(this.a,b)}} +A.ps.prototype={ +t1(a,b,c){var s,r,q,p,o,n,m +for(s=b.gfC(0).gaz(0),r=new A.jW(s,t.YD),q=c.b,p=this.gae8(),o=t.Si;r.t();){n=o.a(s.gK(0)) +this.a=n +if(B.b.ef(q,p))return n +m=this.t1(0,n,c) +if(m!=null)return m}return null}, +aEa(a,b,c,d){var s,r,q,p,o,n +for(s=b.gfC(0).gaz(0),r=new A.jW(s,t.YD),q=c.b,p=this.gae8(),o=t.Si;r.t();){n=o.a(s.gK(0)) +this.a=n +if(B.b.ef(q,p))d.push(n) +this.aEa(0,n,c,d)}}, +aea(a){return B.b.ef(a.b,this.gae8())}, +ae9(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.a +for(s=a.b,r=A.X(s).h("bE<1>"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E"),q=i,p=!0;s.t();){o=s.d +if(o==null)o=r.a(o) +if(q==null)p=A.j2(o.c.bg(j)) +else{if(q===514){n=o.c +do{m=j.a.a +l=m instanceof A.dk?m:i +j.a=l}while(l!=null&&!A.j2(n.bg(j))) +if(j.a==null)p=!1}else if(q===517){n=o.c +do{l=j.a.gYY(0) +j.a=l}while(l!=null&&!A.j2(n.bg(j))) +if(j.a==null)p=!1}q=i}if(!p)break +k=o.b +switch(k){case 515:j.a=j.a.gYY(0) +break +case 516:m=j.a.a +j.a=m instanceof A.dk?m:i +break +case 514:case 517:q=k +break +case 513:break +default:throw A.d(j.atm(a))}if(j.a==null){p=!1 +break}}j.a=h +return p}, +La(a){return new A.x2("'"+a.k(0)+"' selector of type "+A.I(a).k(0)+" is not implemented")}, +atm(a){return new A.kV("'"+a.k(0)+"' is not a valid selector",null,null)}, +aGB(a){var s=this,r=a.b +switch(A.ax(r.gdI(r))){case"root":r=s.a +return r.x==="html"&&r.a==null +case"empty":r=s.a.gfC(0) +return r.ef(r,new A.bEU()) +case"blank":r=s.a.gfC(0) +return r.ef(r,new A.bEV()) +case"first-child":return s.a.gYY(0)==null +case"last-child":return s.a.gaCn(0)==null +case"only-child":return s.a.gYY(0)==null&&s.a.gaCn(0)==null +case"link":return s.a.b.i(0,"href")!=null +case"visited":return!1}if(A.cM2(A.ax(r.gdI(r))))return!1 +throw A.d(s.La(a))}, +aGD(a){var s=a.b +if(A.cM2(A.ax(s.gdI(s))))return!1 +throw A.d(this.La(a))}, +aGC(a){return A.C(this.La(a))}, +aGA(a){var s,r,q,p,o,n,m=this,l=a.b +switch(A.ax(l.gdI(l))){case"nth-child":s=t.dj.a(a.f).b +if(s.length===1&&s[0] instanceof A.cx){r=t.wk.a(s[0]) +q=m.a.a +if(q!=null){l=A.e6(r.c) +if(l>0){p=q.gfC(0) +l=p.c2(p,m.a)===l}else l=!1}else l=!1 +return l}break +case"lang":l=t.dj.a(a.f) +l=l.a +l.toString +o=A.dp(B.h0.cK(l.a.c,l.b,l.c),0,null) +n=A.ddc(m.a) +return n!=null&&B.c.aC(n,o)}throw A.d(m.La(a))}, +aGu(a){if(!A.j2(t.yJ.a(a.b).bg(this)))return!1 +if(a.d instanceof A.FW)return!0 +if(a.gaCi()==="")return this.a.w==null +throw A.d(this.La(a))}, +aGn(a){var s=a.b +return s instanceof A.FW||this.a.x===A.ax(s.gdI(s)).toLowerCase()}, +aGp(a){var s=a.b +return this.a.gqq(0)===A.ax(s.gdI(s))}, +aGi(a){var s,r=this.a +r.toString +s=a.b +s=A.ax(s.gdI(s)) +return new A.ath(r).zT().p(0,s)}, +aGv(a){return!A.j2(a.d.bg(this))}, +aGh(a){var s,r=a.b,q=this.a.b.i(0,A.ax(r.gdI(r)).toLowerCase()) +if(q==null)return!1 +r=a.d +if(r===535)return!0 +s=A.r(a.e) +switch(r){case 28:return q===s +case 530:return B.b.ef(A.a(q.split(" "),t.s),new A.bES(s)) +case 531:if(B.c.aC(q,s)){r=s.length +r=q.length===r||q[r]==="-"}else r=!1 +return r +case 532:return B.c.aC(q,s) +case 533:return B.c.eV(q,s) +case 534:return B.c.p(q,s) +default:throw A.d(this.atm(a))}}} +A.bEU.prototype={ +$1(a){var s +if(!(a instanceof A.dk))if(a instanceof A.wQ){s=J.cw(a.w) +a.w=s +s=s.length!==0}else s=!1 +else s=!0 +return!s}, +$S:232} +A.bEV.prototype={ +$1(a){var s +if(!(a instanceof A.dk))if(a instanceof A.wQ){s=J.cw(a.w) +a.w=s +s=new A.ou(s).ef(0,new A.bET())}else s=!1 +else s=!0 +return!s}, +$S:232} +A.bET.prototype={ +$1(a){return!A.cBJ(a)}, +$S:42} +A.bES.prototype={ +$1(a){return a.length!==0&&a===this.a}, +$S:20} +A.qO.prototype={} +A.Ar.prototype={} +A.Fn.prototype={ +gel(a){return 2}} +A.d7.prototype={ +gel(a){return 3}} +A.t0.prototype={ +gi3(a){var s=this,r=s.c +if(r==null){r=s.c=J.cw(s.b) +s.b=null}return r}} +A.be.prototype={ +gel(a){return 6}} +A.cH.prototype={ +gel(a){return 1}} +A.Mn.prototype={ +gel(a){return 0}} +A.PR.prototype={ +gel(a){return 4}} +A.a1Y.prototype={ +gel(a){return 5}} +A.aFO.prototype={} +A.crY.prototype={ +$0(){var s,r,q=A.N(t.N,t.yp) +for(s=J.au(B.p8.gek(B.p8));s.t();){r=s.gK(s) +J.eQ(q.cP(0,r[0],new A.crX()),r)}return q}, +$S:962} +A.crX.prototype={ +$0(){return A.a([],t.s)}, +$S:379} +A.avB.prototype={ +glV(a){var s=this.x +s===$&&A.b() +return s}, +gK(a){var s=this.at +s.toString +return s}, +SC(a){var s=this.Q +s.toString +B.b.gP(s).b=this.ay.k(0)}, +EF(a){}, +AX(a){this.SC(a)}, +xA(a){var s,r=this,q=r.Q +if(q==null)q=r.Q=A.a([],t.WJ) +s=r.ax +s.a="" +s.a=a +r.ay.a="" +q.push(new A.aFO())}, +t(){var s,r=this,q=r.a,p=r.r +while(!0){s=q.r +if(!(s.b===s.c&&p.b===p.c))break +if(!r.aNk(0)){r.at=null +return!1}}if(!s.gad(0)){q=q.r.qC() +r.at=new A.be(null,null,q)}else r.at=p.qC() +return!0}, +b6(a){var s=this +s.z=0 +s.r.V(0) +s.w=null +s.y.a="" +s.as=s.Q=null +s.x=s.gdk()}, +ae(a){this.r.iW(0,a)}, +br6(a){var s,r,q,p,o,n,m,l,k=this,j=null,i="illegal-codepoint-for-numeric-entity" +if(a){s=A.dpS() +r=16}else{s=A.dpR() +r=10}q=A.a([],t._m) +p=k.a +o=p.d1() +while(!0){if(!(s.$1(o)&&o!=null))break +q.push(o) +o=p.d1()}n=A.cA(B.b.jG(q),r) +m=B.aZB.i(0,n) +if(m!=null){l=A.a1(["charAsInt",n],t.N,t.X) +k.ae(new A.be(l,j,i))}else if(55296<=n&&n<=57343||n>1114111){l=A.a1(["charAsInt",n],t.N,t.X) +k.ae(new A.be(l,j,i)) +m="\ufffd"}else{if(!(1<=n&&n<=8))if(!(14<=n&&n<=31))if(!(127<=n&&n<=159))l=64976<=n&&n<=65007||B.b.p(B.aP6,n) +else l=!0 +else l=!0 +else l=!0 +if(l){l=A.a1(["charAsInt",n],t.N,t.X) +k.ae(new A.be(l,j,i))}m=A.dp(A.a([n],t.t),0,j)}if(o!==";"){k.ae(new A.be(j,j,"numeric-entity-without-semicolon")) +p.fF(o)}return m}, +VJ(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.a,g=A.a([h.d1()],t._m) +if(!A.hA(g[0])){s=g[0] +s=s==="<"||s==="&"||s==null||a===s}else s=!0 +if(s){h.fF(g[0]) +r="&"}else{s=g[0] +if(s==="#"){g.push(h.d1()) +if(B.b.gP(g)==="x"||B.b.gP(g)==="X"){g.push(h.d1()) +q=!0}else q=!1 +if(!(q&&A.cSX(B.b.gP(g))))s=!q&&A.csL(B.b.gP(g)) +else s=!0 +if(s){h.fF(B.b.gP(g)) +r=j.br6(q)}else{j.ae(new A.be(i,i,"expected-numeric-entity")) +h.fF(g.pop()) +r="&"+B.b.jG(g)}}else{p=$.d0n() +s.toString +o=J.aS(p,s) +if(o==null)o=B.bF +for(;B.b.gP(g)!=null;){s=J.vk(o,new A.blW(B.b.jG(g))) +o=A.R(s,!1,s.$ti.h("B.E")) +if(o.length===0)break +g.push(h.d1())}m=g.length-1 +while(!0){if(!(m>1)){n=i +break}l=B.b.jG(B.b.cK(g,0,m)) +if(B.p8.aB(0,l)){n=l +break}--m}if(n!=null){s=n[n.length-1]!==";" +if(s)j.ae(new A.be(i,i,"named-entity-without-semicolon")) +if(s)if(b){s=g[m] +s=A.nL(s)||A.csL(s)||g[m]==="="}else s=!1 +else s=!1 +if(s){h.fF(g.pop()) +r="&"+B.b.jG(g)}else{r=B.p8.i(0,n) +h.fF(g.pop()) +r=A.r(r)+B.b.jG(A.cC3(g,m,i))}}else{j.ae(new A.be(i,i,"expected-named-entity")) +h.fF(g.pop()) +r="&"+B.b.jG(g)}}}if(b)j.ay.a+=r +else{if(A.hA(r))k=new A.Mn(i,r) +else k=new A.cH(i,r) +j.ae(k)}}, +axk(){return this.VJ(null,!1)}, +ql(){var s,r,q,p,o,n,m,l=this,k=null,j=l.w +j.toString +if(j instanceof A.Ar){s=j.b +j.b=s==null?k:A.dp(new A.O(new A.e0(s),A.xD(),t.Hz.h("O")),0,k) +if(j instanceof A.d7){if(l.Q!=null)l.ae(new A.be(k,k,"attributes-in-end-tag")) +if(j.c)l.ae(new A.be(k,k,"this-closing-flag-on-end-tag")) +r=j}else if(j instanceof A.Fn){j.e=A.e4(k,k,t.K,t.N) +s=l.Q +if(s!=null)for(q=s.length,p=0;p"){s.ae(new A.be(r,r,"expected-tag-name-but-got-right-bracket")) +s.ae(new A.cH(r,"<>")) +s.x=s.gdk()}else if(p==="?"){s.ae(new A.be(r,r,"expected-tag-name-but-got-question-mark")) +q.fF(p) +s.x=s.ga7z()}else{s.ae(new A.be(r,r,"expected-tag-name")) +s.ae(new A.cH(r,"<")) +q.fF(p) +s.x=s.gdk()}return!0}, +bqo(){var s,r=this,q=null,p=r.a,o=p.d1() +if(A.nL(o)){r.w=new A.d7(o,!1) +r.x=r.gaFi()}else if(o===">"){r.ae(new A.be(q,q,u.gX)) +r.x=r.gdk()}else if(o==null){r.ae(new A.be(q,q,"expected-closing-tag-but-got-eof")) +r.ae(new A.cH(q,"")r.ql() +else if(p==null){r.ae(new A.be(q,q,"eof-in-tag-name")) +r.x=r.gdk()}else if(p==="/")r.x=r.gve() +else if(p==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +s=t.cn.a(r.w) +s.b=A.r(s.b)+"\ufffd"}else{s=t.cn.a(r.w) +s.b=A.r(s.b)+p}return!0}, +bF2(){var s=this,r=s.a,q=r.d1() +if(q==="/"){s.y.a="" +s.x=s.gbF_()}else{s.ae(new A.cH(null,"<")) +r.fF(q) +s.x=s.gD_()}return!0}, +bF0(){var s=this,r=s.a,q=r.d1() +if(A.nL(q)){s.y.a+=A.r(q) +s.x=s.gbEY()}else{s.ae(new A.cH(null,""&&q){r.w=new A.d7(r.y.k(0),!1) +r.ql() +r.x=r.gdk()}else{s=r.y +if(A.nL(o))s.a+=A.r(o) +else{s=s.k(0) +r.ae(new A.cH(null,""&&q){r.w=new A.d7(r.y.k(0),!1) +r.ql() +r.x=r.gdk()}else{s=r.y +if(A.nL(o))s.a+=A.r(o) +else{s=s.k(0) +r.ae(new A.cH(null,""&&q){r.w=new A.d7(r.y.k(0),!1) +r.ql() +r.x=r.gdk()}else{s=r.y +if(A.nL(o))s.a+=A.r(o) +else{s=s.k(0) +r.ae(new A.cH(null,""){s.ae(new A.cH(r,">")) +s.x=s.gxg()}else if(q==="\x00"){s.ae(new A.be(r,r,"invalid-codepoint")) +s.ae(new A.cH(r,"\ufffd")) +s.x=s.gtj()}else if(q==null)s.x=s.gdk() +else{s.ae(new A.cH(r,q)) +s.x=s.gtj()}return!0}, +aKb(){var s,r=this,q=r.a,p=q.d1() +if(p==="/"){r.y.a="" +r.x=r.gaK9()}else if(A.nL(p)){q=A.r(p) +r.ae(new A.cH(null,"<"+q)) +s=r.y +s.a="" +s.a=q +r.x=r.gaJP()}else{r.ae(new A.cH(null,"<")) +q.fF(p) +r.x=r.gtj()}return!0}, +aKa(){var s=this,r=s.a,q=r.d1() +if(A.nL(q)){r=s.y +r.a="" +r.a=A.r(q) +s.x=s.gaK7()}else{s.ae(new A.cH(null,""&&q){r.w=new A.d7(r.y.k(0),!1) +r.ql() +r.x=r.gdk()}else{s=r.y +if(A.nL(o))s.a+=A.r(o) +else{s=s.k(0) +r.ae(new A.cH(null,""){s.ae(new A.cH(q==null?new A.bu(""):null,q)) +if(s.y.k(0).toLowerCase()==="script")s.x=s.gxf() +else s.x=s.gtj()}else if(A.nL(q)){s.ae(new A.cH(q==null?new A.bu(""):null,q)) +s.y.a+=A.r(q)}else{r.fF(q) +s.x=s.gtj()}return!0}, +aJW(){var s=this,r=null,q=s.a.d1() +if(q==="-"){s.ae(new A.cH(r,"-")) +s.x=s.gaJT()}else if(q==="<"){s.ae(new A.cH(r,"<")) +s.x=s.ga01()}else if(q==="\x00"){s.ae(new A.be(r,r,"invalid-codepoint")) +s.ae(new A.cH(r,"\ufffd"))}else if(q==null){s.ae(new A.be(r,r,"eof-in-script-in-script")) +s.x=s.gdk()}else s.ae(new A.cH(r,q)) +return!0}, +aJU(){var s=this,r=null,q=s.a.d1() +if(q==="-"){s.ae(new A.cH(r,"-")) +s.x=s.gaJR()}else if(q==="<"){s.ae(new A.cH(r,"<")) +s.x=s.ga01()}else if(q==="\x00"){s.ae(new A.be(r,r,"invalid-codepoint")) +s.ae(new A.cH(r,"\ufffd")) +s.x=s.gxf()}else if(q==null){s.ae(new A.be(r,r,"eof-in-script-in-script")) +s.x=s.gdk()}else{s.ae(new A.cH(r,q)) +s.x=s.gxf()}return!0}, +aJS(){var s=this,r=null,q=s.a.d1() +if(q==="-")s.ae(new A.cH(r,"-")) +else if(q==="<"){s.ae(new A.cH(r,"<")) +s.x=s.ga01()}else if(q===">"){s.ae(new A.cH(r,">")) +s.x=s.gxg()}else if(q==="\x00"){s.ae(new A.be(r,r,"invalid-codepoint")) +s.ae(new A.cH(r,"\ufffd")) +s.x=s.gxf()}else if(q==null){s.ae(new A.be(r,r,"eof-in-script-in-script")) +s.x=s.gdk()}else{s.ae(new A.cH(r,q)) +s.x=s.gxf()}return!0}, +aJV(){var s=this,r=s.a,q=r.d1() +if(q==="/"){s.ae(new A.cH(null,"/")) +s.y.a="" +s.x=s.gaJN()}else{r.fF(q) +s.x=s.gxf()}return!0}, +aJO(){var s=this,r=s.a,q=r.d1() +if(A.hA(q)||q==="/"||q===">"){s.ae(new A.cH(q==null?new A.bu(""):null,q)) +if(s.y.k(0).toLowerCase()==="script")s.x=s.gtj() +else s.x=s.gxf()}else if(A.nL(q)){s.ae(new A.cH(q==null?new A.bu(""):null,q)) +s.y.a+=A.r(q)}else{r.fF(q) +s.x=s.gxf()}return!0}, +bnh(){var s=this,r=null,q=s.a,p=q.d1() +if(A.hA(p))q.BH(" \n\r\t\f",!0) +else{q=p==null +if(!q&&A.nL(p)){s.xA(p) +s.x=s.gyi()}else if(p===">")s.ql() +else if(p==="/")s.x=s.gve() +else if(q){s.ae(new A.be(r,r,"expected-attribute-name-but-got-eof")) +s.x=s.gdk()}else if(B.c.p("'\"=<",p)){s.ae(new A.be(r,r,"invalid-character-in-attribute-name")) +s.xA(p) +s.x=s.gyi()}else if(p==="\x00"){s.ae(new A.be(r,r,"invalid-codepoint")) +s.xA("\ufffd") +s.x=s.gyi()}else{s.xA(p) +s.x=s.gyi()}}return!0}, +bn1(){var s,r,q,p,o=this,n=null,m=o.a,l=m.d1() +if(l==="="){o.x=o.gavS() +s=!0 +r=!1}else if(A.nL(l)){q=o.ax +q.a+=A.r(l) +q.a+=m.BH("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",!0) +s=!1 +r=!1}else if(l===">"){s=!0 +r=!0}else{if(A.hA(l)){o.x=o.gbmp() +s=!0}else if(l==="/"){o.x=o.gve() +s=!0}else if(l==="\x00"){o.ae(new A.be(n,n,"invalid-codepoint")) +o.ax.a+="\ufffd" +s=!1}else if(l==null){o.ae(new A.be(n,n,"eof-in-attribute-name")) +o.x=o.gdk() +s=!0}else{if(B.c.p("'\"<",l)){o.ae(new A.be(n,n,"invalid-character-in-attribute-name")) +o.ax.a+=l}else o.ax.a+=l +s=!1}r=!1}if(s){o.SC(-1) +m=o.ax.a +p=A.dp(new A.O(new A.e0(m.charCodeAt(0)==0?m:m),A.xD(),t.Hz.h("O")),0,n) +m=o.Q +m.toString +B.b.gP(m).a=p +m=o.as +if((m==null?o.as=A.b9(t.N):m).p(0,p))o.ae(new A.be(n,n,"duplicate-attribute")) +o.as.B(0,p) +if(r)o.ql()}return!0}, +bmq(){var s=this,r=null,q=s.a,p=q.d1() +if(A.hA(p))q.BH(" \n\r\t\f",!0) +else if(p==="=")s.x=s.gavS() +else if(p===">")s.ql() +else{q=p==null +if(!q&&A.nL(p)){s.xA(p) +s.x=s.gyi()}else if(p==="/")s.x=s.gve() +else if(p==="\x00"){s.ae(new A.be(r,r,"invalid-codepoint")) +s.xA("\ufffd") +s.x=s.gyi()}else if(q){s.ae(new A.be(r,r,"expected-end-of-tag-but-got-eof")) +s.x=s.gdk()}else if(B.c.p("'\"<",p)){s.ae(new A.be(r,r,"invalid-character-after-attribute-name")) +s.xA(p) +s.x=s.gyi()}else{s.xA(p) +s.x=s.gyi()}}return!0}, +bni(){var s=this,r=null,q=s.a,p=q.d1() +if(A.hA(p))q.BH(" \n\r\t\f",!0) +else if(p==='"'){s.EF(0) +s.x=s.gbn5()}else if(p==="&"){s.x=s.gV8() +q.fF(p) +s.EF(0)}else if(p==="'"){s.EF(0) +s.x=s.gbnb()}else if(p===">"){s.ae(new A.be(r,r,u.bc)) +s.ql()}else if(p==="\x00"){s.ae(new A.be(r,r,"invalid-codepoint")) +s.EF(-1) +s.ay.a+="\ufffd" +s.x=s.gV8()}else if(p==null){s.ae(new A.be(r,r,"expected-attribute-value-but-got-eof")) +s.x=s.gdk()}else if(B.c.p("=<`",p)){s.ae(new A.be(r,r,"equals-in-unquoted-attribute-value")) +s.EF(-1) +s.ay.a+=p +s.x=s.gV8()}else{s.EF(-1) +s.ay.a+=p +s.x=s.gV8()}return!0}, +bn6(){var s,r=this,q=null,p=r.a,o=p.d1() +if(o==='"'){r.AX(-1) +r.SC(0) +r.x=r.gavg()}else if(o==="&")r.VJ('"',!0) +else if(o==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +r.ay.a+="\ufffd"}else if(o==null){r.ae(new A.be(q,q,"eof-in-attribute-value-double-quote")) +r.AX(-1) +r.x=r.gdk()}else{s=r.ay +s.a+=o +s.a+=p.rk('"&')}return!0}, +bnc(){var s,r=this,q=null,p=r.a,o=p.d1() +if(o==="'"){r.AX(-1) +r.SC(0) +r.x=r.gavg()}else if(o==="&")r.VJ("'",!0) +else if(o==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +r.ay.a+="\ufffd"}else if(o==null){r.ae(new A.be(q,q,"eof-in-attribute-value-single-quote")) +r.AX(-1) +r.x=r.gdk()}else{s=r.ay +s.a+=o +s.a+=p.rk("'&")}return!0}, +bnd(){var s,r=this,q=null,p=r.a,o=p.d1() +if(A.hA(o)){r.AX(-1) +r.x=r.gvS()}else if(o==="&")r.VJ(">",!0) +else if(o===">"){r.AX(-1) +r.ql()}else if(o==null){r.ae(new A.be(q,q,"eof-in-attribute-value-no-quotes")) +r.AX(-1) +r.x=r.gdk()}else if(B.c.p("\"'=<`",o)){r.ae(new A.be(q,q,u.cp)) +r.ay.a+=o}else if(o==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +r.ay.a+="\ufffd"}else{s=r.ay +s.a+=o +s.a+=p.rk("&>\"'=<` \n\r\t\f")}return!0}, +bmr(){var s=this,r=null,q=s.a,p=q.d1() +if(A.hA(p))s.x=s.gvS() +else if(p===">")s.ql() +else if(p==="/")s.x=s.gve() +else if(p==null){s.ae(new A.be(r,r,"unexpected-EOF-after-attribute-value")) +q.fF(p) +s.x=s.gdk()}else{s.ae(new A.be(r,r,u.ey)) +q.fF(p) +s.x=s.gvS()}return!0}, +aKB(){var s=this,r=null,q=s.a,p=q.d1() +if(p===">"){t.cn.a(s.w).c=!0 +s.ql()}else if(p==null){s.ae(new A.be(r,r,"unexpected-EOF-after-solidus-in-tag")) +q.fF(p) +s.x=s.gdk()}else{s.ae(new A.be(r,r,u.gk)) +q.fF(p) +s.x=s.gvS()}return!0}, +bnz(){var s=this,r=s.a,q=r.rk(">") +q=A.cj(q,"\x00","\ufffd") +s.ae(new A.PR(null,q)) +r.d1() +s.x=s.gdk() +return!0}, +bAN(){var s,r,q,p,o,n=this,m=null,l=n.a,k=A.a([l.d1()],t._m) +if(B.b.gP(k)==="-"){k.push(l.d1()) +if(B.b.gP(k)==="-"){n.w=new A.PR(new A.bu(""),m) +n.x=n.gbqK() +return!0}}else if(B.b.gP(k)==="d"||B.b.gP(k)==="D"){r=0 +while(!0){if(!(r<6)){s=!0 +break}q=B.aOM[r] +p=l.d1() +k.push(p) +if(p!=null)o=!A.r6(q,p,0) +else o=!0 +if(o){s=!1 +break}++r}if(s){n.w=new A.a1Y(!0) +n.x=n.gbuG() +return!0}}else{if(B.b.gP(k)==="["){o=n.f +if(o!=null){o=o.d.c +o=o.length!==0&&B.b.gP(o).w!=n.f.d.a}else o=!1}else o=!1 +if(o){r=0 +while(!0){if(!(r<6)){s=!0 +break}q=B.aOX[r] +k.push(l.d1()) +if(B.b.gP(k)!==q){s=!1 +break}++r}if(s){n.x=n.gbpU() +return!0}}}n.ae(new A.be(m,m,"expected-dashes-or-doctype")) +for(;k.length!==0;){o=k.pop() +if(o!=null)l.y=l.y-o.length}n.x=n.ga7z() +return!0}, +bqL(){var s,r=this,q=null,p=r.a.d1() +if(p==="-")r.x=r.gbqI() +else if(p==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +t.SW.a(r.w).b.a+="\ufffd"}else if(p===">"){r.ae(new A.be(q,q,"incorrect-comment")) +s=r.w +s.toString +r.ae(s) +r.x=r.gdk()}else if(p==null){r.ae(new A.be(q,q,"eof-in-comment")) +s=r.w +s.toString +r.ae(s) +r.x=r.gdk()}else{t.SW.a(r.w).b.a+=p +r.x=r.gyr()}return!0}, +bqJ(){var s,r,q=this,p=null,o=q.a.d1() +if(o==="-")q.x=q.gax5() +else if(o==="\x00"){q.ae(new A.be(p,p,"invalid-codepoint")) +t.SW.a(q.w).b.a+="-\ufffd"}else if(o===">"){q.ae(new A.be(p,p,"incorrect-comment")) +s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else if(o==null){q.ae(new A.be(p,p,"eof-in-comment")) +s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else{s=t.SW.a(q.w).b +r=s.a+="-" +s.a=r+o +q.x=q.gyr()}return!0}, +bqM(){var s,r=this,q=null,p=r.a,o=p.d1() +if(o==="-")r.x=r.gax4() +else if(o==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +t.SW.a(r.w).b.a+="\ufffd"}else if(o==null){r.ae(new A.be(q,q,"eof-in-comment")) +p=r.w +p.toString +r.ae(p) +r.x=r.gdk()}else{s=t.SW.a(r.w) +s.b.a+=o +p=p.rk("-\x00") +s.b.a+=p}return!0}, +bqG(){var s,r,q=this,p=null,o=q.a.d1() +if(o==="-")q.x=q.gax5() +else if(o==="\x00"){q.ae(new A.be(p,p,"invalid-codepoint")) +t.SW.a(q.w).b.a+="-\ufffd" +q.x=q.gyr()}else if(o==null){q.ae(new A.be(p,p,"eof-in-comment-end-dash")) +s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else{s=t.SW.a(q.w).b +r=s.a+="-" +s.a=r+o +q.x=q.gyr()}return!0}, +bqH(){var s,r,q=this,p=null,o=q.a.d1() +if(o===">"){s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else if(o==="\x00"){q.ae(new A.be(p,p,"invalid-codepoint")) +t.SW.a(q.w).b.a+="--\ufffd" +q.x=q.gyr()}else if(o==="!"){q.ae(new A.be(p,p,u.eu)) +q.x=q.gbqE()}else if(o==="-"){q.ae(new A.be(p,p,u.gN)) +s=t.SW.a(q.w) +o.toString +s.b.a+=o}else if(o==null){q.ae(new A.be(p,p,"eof-in-comment-double-dash")) +s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else{q.ae(new A.be(p,p,"unexpected-char-in-comment")) +s=t.SW.a(q.w).b +r=s.a+="--" +s.a=r+o +q.x=q.gyr()}return!0}, +bqF(){var s,r,q=this,p=null,o=q.a.d1() +if(o===">"){s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else if(o==="-"){t.SW.a(q.w).b.a+="--!" +q.x=q.gax4()}else if(o==="\x00"){q.ae(new A.be(p,p,"invalid-codepoint")) +t.SW.a(q.w).b.a+="--!\ufffd" +q.x=q.gyr()}else if(o==null){q.ae(new A.be(p,p,"eof-in-comment-end-bang-state")) +s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else{s=t.SW.a(q.w).b +r=s.a+="--!" +s.a=r+o +q.x=q.gyr()}return!0}, +buH(){var s=this,r=null,q=s.a,p=q.d1() +if(A.hA(p))s.x=s.gavT() +else if(p==null){s.ae(new A.be(r,r,"expected-doctype-name-but-got-eof")) +q=t.V.a(s.w) +q.e=!1 +s.ae(q) +s.x=s.gdk()}else{s.ae(new A.be(r,r,"need-space-after-doctype")) +q.fF(p) +s.x=s.gavT()}return!0}, +bnj(){var s,r=this,q=null,p=r.a.d1() +if(A.hA(p))return!0 +else if(p===">"){r.ae(new A.be(q,q,u.fa)) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else if(p==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +t.V.a(r.w).d="\ufffd" +r.x=r.ga9J()}else if(p==null){r.ae(new A.be(q,q,"expected-doctype-name-but-got-eof")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{t.V.a(r.w).d=p +r.x=r.ga9J()}return!0}, +bux(){var s,r,q=this,p=null,o=q.a.d1() +if(A.hA(o)){s=t.V.a(q.w) +r=s.d +s.d=r==null?p:A.dp(new A.O(new A.e0(r),A.xD(),t.Hz.h("O")),0,p) +q.x=q.gbms()}else if(o===">"){s=t.V.a(q.w) +r=s.d +s.d=r==null?p:A.dp(new A.O(new A.e0(r),A.xD(),t.Hz.h("O")),0,p) +s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else if(o==="\x00"){q.ae(new A.be(p,p,"invalid-codepoint")) +s=t.V.a(q.w) +s.d=A.r(s.d)+"\ufffd" +q.x=q.ga9J()}else if(o==null){q.ae(new A.be(p,p,"eof-in-doctype-name")) +s=t.V.a(q.w) +s.e=!1 +r=s.d +s.d=r==null?p:A.dp(new A.O(new A.e0(r),A.xD(),t.Hz.h("O")),0,p) +s=q.w +s.toString +q.ae(s) +q.x=q.gdk()}else{s=t.V.a(q.w) +s.d=A.r(s.d)+o}return!0}, +bmt(){var s,r,q,p,o=this,n=null,m=o.a,l=m.d1() +if(A.hA(l))return!0 +else if(l===">"){m=o.w +m.toString +o.ae(m) +o.x=o.gdk()}else if(l==null){t.V.a(o.w).e=!1 +m.fF(l) +o.ae(new A.be(n,n,"eof-in-doctype")) +m=o.w +m.toString +o.ae(m) +o.x=o.gdk()}else{if(l==="p"||l==="P"){r=0 +while(!0){if(!(r<5)){s=!0 +break}q=B.aJo[r] +l=m.d1() +if(l!=null)p=!A.r6(q,l,0) +else p=!0 +if(p){s=!1 +break}++r}if(s){o.x=o.gbmv() +return!0}}else if(l==="s"||l==="S"){r=0 +while(!0){if(!(r<5)){s=!0 +break}q=B.aQL[r] +l=m.d1() +if(l!=null)p=!A.r6(q,l,0) +else p=!0 +if(p){s=!1 +break}++r}if(s){o.x=o.gbmy() +return!0}}m.fF(l) +m=A.a1(["data",l],t.N,t.X) +o.ae(new A.be(m,n,u.e1)) +t.V.a(o.w).e=!1 +o.x=o.gFz()}return!0}, +bmw(){var s=this,r=null,q=s.a,p=q.d1() +if(A.hA(p))s.x=s.ga7u() +else if(p==="'"||p==='"'){s.ae(new A.be(r,r,"unexpected-char-in-doctype")) +q.fF(p) +s.x=s.ga7u()}else if(p==null){s.ae(new A.be(r,r,"eof-in-doctype")) +q=t.V.a(s.w) +q.e=!1 +s.ae(q) +s.x=s.gdk()}else{q.fF(p) +s.x=s.ga7u()}return!0}, +bnk(){var s,r=this,q=null,p=r.a.d1() +if(A.hA(p))return!0 +else if(p==='"'){t.V.a(r.w).b="" +r.x=r.gbuA()}else if(p==="'"){t.V.a(r.w).b="" +r.x=r.gbuC()}else if(p===">"){r.ae(new A.be(q,q,"unexpected-end-of-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else if(p==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{r.ae(new A.be(q,q,"unexpected-char-in-doctype")) +t.V.a(r.w).e=!1 +r.x=r.gFz()}return!0}, +buB(){var s,r=this,q=null,p=r.a.d1() +if(p==='"')r.x=r.gavh() +else if(p==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +s=t.V.a(r.w) +s.b=A.r(s.b)+"\ufffd"}else if(p===">"){r.ae(new A.be(q,q,"unexpected-end-of-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else if(p==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{s=t.V.a(r.w) +s.b=A.r(s.b)+p}return!0}, +buD(){var s,r=this,q=null,p=r.a.d1() +if(p==="'")r.x=r.gavh() +else if(p==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +s=t.V.a(r.w) +s.b=A.r(s.b)+"\ufffd"}else if(p===">"){r.ae(new A.be(q,q,"unexpected-end-of-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else if(p==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{s=t.V.a(r.w) +s.b=A.r(s.b)+p}return!0}, +bmu(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.d1() +if(A.hA(o))r.x=r.gbnq() +else if(o===">"){s=r.w +s.toString +r.ae(s) +r.x=r.gdk()}else if(o==='"'){r.ae(new A.be(q,q,p)) +t.V.a(r.w).c="" +r.x=r.ga9K()}else if(o==="'"){r.ae(new A.be(q,q,p)) +t.V.a(r.w).c="" +r.x=r.ga9L()}else if(o==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{r.ae(new A.be(q,q,p)) +t.V.a(r.w).e=!1 +r.x=r.gFz()}return!0}, +bnr(){var s,r=this,q=null,p=r.a.d1() +if(A.hA(p))return!0 +else if(p===">"){s=r.w +s.toString +r.ae(s) +r.x=r.gdk()}else if(p==='"'){t.V.a(r.w).c="" +r.x=r.ga9K()}else if(p==="'"){t.V.a(r.w).c="" +r.x=r.ga9L()}else if(p==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{r.ae(new A.be(q,q,"unexpected-char-in-doctype")) +t.V.a(r.w).e=!1 +r.x=r.gFz()}return!0}, +bmz(){var s=this,r=null,q=s.a,p=q.d1() +if(A.hA(p))s.x=s.ga7v() +else if(p==="'"||p==='"'){s.ae(new A.be(r,r,"unexpected-char-in-doctype")) +q.fF(p) +s.x=s.ga7v()}else if(p==null){s.ae(new A.be(r,r,"eof-in-doctype")) +q=t.V.a(s.w) +q.e=!1 +s.ae(q) +s.x=s.gdk()}else{q.fF(p) +s.x=s.ga7v()}return!0}, +bnl(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.d1() +if(A.hA(o))return!0 +else if(o==='"'){t.V.a(r.w).c="" +r.x=r.ga9K()}else if(o==="'"){t.V.a(r.w).c="" +r.x=r.ga9L()}else if(o===">"){r.ae(new A.be(q,q,p)) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else if(o==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{r.ae(new A.be(q,q,p)) +t.V.a(r.w).e=!1 +r.x=r.gFz()}return!0}, +buI(){var s,r=this,q=null,p=r.a.d1() +if(p==='"')r.x=r.gavi() +else if(p==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +s=t.V.a(r.w) +s.c=A.r(s.c)+"\ufffd"}else if(p===">"){r.ae(new A.be(q,q,"unexpected-end-of-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else if(p==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{s=t.V.a(r.w) +s.c=A.r(s.c)+p}return!0}, +buJ(){var s,r=this,q=null,p=r.a.d1() +if(p==="'")r.x=r.gavi() +else if(p==="\x00"){r.ae(new A.be(q,q,"invalid-codepoint")) +s=t.V.a(r.w) +s.c=A.r(s.c)+"\ufffd"}else if(p===">"){r.ae(new A.be(q,q,"unexpected-end-of-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else if(p==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{s=t.V.a(r.w) +s.c=A.r(s.c)+p}return!0}, +bmx(){var s,r=this,q=null,p=r.a.d1() +if(A.hA(p))return!0 +else if(p===">"){s=r.w +s.toString +r.ae(s) +r.x=r.gdk()}else if(p==null){r.ae(new A.be(q,q,"eof-in-doctype")) +s=t.V.a(r.w) +s.e=!1 +r.ae(s) +r.x=r.gdk()}else{r.ae(new A.be(q,q,"unexpected-char-in-doctype")) +r.x=r.gFz()}return!0}, +bnA(){var s=this,r=s.a,q=r.d1() +if(q===">"){r=s.w +r.toString +s.ae(r) +s.x=s.gdk()}else if(q==null){r.fF(q) +r=s.w +r.toString +s.ae(r) +s.x=s.gdk()}return!0}, +bpV(){var s,r,q,p=this,o=A.a([],t.s) +for(s=p.a,r=0;!0;){q=s.d1() +if(q==null)break +if(q==="\x00"){p.ae(new A.be(null,null,"invalid-codepoint")) +q="\ufffd"}o.push(q) +if(q==="]"&&r<2)++r +else{if(q===">"&&r===2){o.pop() +o.pop() +o.pop() +break}r=0}}if(o.length!==0){s=B.b.jG(o) +p.ae(new A.cH(null,s))}p.x=p.gdk() +return!0}, +aNk(a){return this.glV(this).$0()}} +A.blW.prototype={ +$1(a){return B.c.aC(a,this.a)}, +$S:20} +A.blX.prototype={ +$0(){var s=this.a.b +s===$&&A.b() +return s}, +$S:18} +A.amM.prototype={ +B(a,b){var s,r,q,p,o,n,m,l,k,j=this,i="http://www.w3.org/1999/xhtml" +if(b!=null)for(s=A.z(j).h("bE"),r=new A.bE(j,s),r=new A.bj(r,r.gA(0),s.h("bj")),q=b.x,p=b.w,s=s.h("aa.E"),o=0;r.t();){n=r.d +if(n==null)n=s.a(n) +if(n==null)break +m=n.w +if(m==null)m=i +l=n.x +k=p==null?i:p +if(k===m&&q==l&&A.dmY(n.b,b.b))++o +if(o===3){B.b.F(j.a,n) +break}}j.tu(0,b)}} +A.bNy.prototype={ +b6(a){var s=this +B.b.V(s.c) +s.d.sA(0,0) +s.f=s.e=null +s.r=!1 +s.b=A.cH4()}, +hG(a,b){var s,r,q,p,o,n,m,l,k,j,i,h="We should never reach this point",g="http://www.w3.org/1999/xhtml",f=a instanceof A.iR +if(b!=null)switch(b){case"button":s=B.vg +r=B.aGJ +q=!1 +break +case"list":s=B.vg +r=B.aOy +q=!1 +break +case"table":s=B.aQj +r=B.vy +q=!1 +break +case"select":s=B.aLA +r=B.vy +q=!0 +break +default:throw A.d(A.a0(h))}else{s=B.vg +r=B.vy +q=!1}for(p=this.c,o=A.X(p).h("bE<1>"),p=new A.bE(p,o),p=new A.bj(p,p.gA(0),o.h("bj")),n=t.V3,m=!f,o=o.h("aa.E");p.t();){l=p.d +if(l==null)l=o.a(l) +if(m){k=l.x +k=k==null?a==null:k===a}else k=!1 +if(!k)k=f&&l===a +else k=!0 +if(k)return!0 +else{j=l.w +k=j==null +i=k?g:j +l=l.x +if(!B.b.p(s,new A.bs(i,l,n)))l=B.b.p(r,new A.bs(k?g:j,l,n)) +else l=!0 +if(q!==l)return!1}}throw A.d(A.a0(h))}, +qk(a){return this.hG(a,null)}, +mt(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.d +if(h.gA(0)===0)return +s=h.a +r=s.length-1 +q=s[r] +if(q==null||B.b.p(i.c,q))return +p=i.c +while(!0){if(!(q!=null&&!B.b.p(p,q)))break +if(r===0){r=-1 +break}--r +q=s[r]}for(p=t.K,o=t.N;!0;){++r +q=s[r] +n=q.x +m=q.w +l=A.rA(q.b,p,o) +k=new A.Fn(l,m,n,!1) +k.a=q.e +j=i.f8(k) +s[r]=j +if(h.gA(0)===0)A.C(A.dB()) +if(j===h.i(0,h.gA(0)-1))break}}, +a89(){var s=this.d,r=s.hX(s) +while(!0){if(!(!s.gad(s)&&r!=null))break +r=s.hX(s)}}, +ayZ(a){var s,r,q +for(s=this.d,r=A.z(s).h("bE"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E");s.t();){q=s.d +if(q==null)q=r.a(q) +if(q==null)break +else if(q.x==a)return q}return null}, +GN(a,b){var s=b.gfC(0),r=A.cG2(a.gi3(0)) +r.e=a.a +s.B(0,r)}, +axX(a,b){var s,r=b.b,q=b.w +if(q==null)q=this.a +this.b===$&&A.b() +s=A.cwD(r,q===""?null:q) +s.b=b.e +s.e=b.a +return s}, +f8(a){if(this.r)return this.byO(a) +return this.aB5(a)}, +aB5(a){var s,r,q=a.b,p=a.w +if(p==null)p=this.a +this.b===$&&A.b() +s=A.cwD(q,p===""?null:p) +s.b=a.e +s.e=a.a +r=this.c +J.d0Y(B.b.gP(r)).B(0,s) +r.push(s) +return s}, +byO(a){var s,r,q=this,p=q.axX(0,a),o=q.c +if(!B.b.p(B.vD,B.b.gP(o).x))return q.aB5(a) +else{s=q.a_M() +r=s[1] +if(r==null)s[0].gfC(0).B(0,p) +else s[0].byN(0,p,r) +o.push(p)}return p}, +zq(a,b){var s,r=this.c,q=B.b.gP(r) +if(this.r)r=!B.b.p(B.vD,B.b.gP(r).x) +else r=!0 +if(r)A.cNf(q,a,b,null) +else{s=this.a_M() +r=s[0] +r.toString +A.cNf(r,a,b,t.ro.a(s[1]))}}, +a_M(){var s,r,q,p,o=this.c,n=A.X(o).h("bE<1>"),m=new A.bE(o,n) +m=new A.bj(m,m.gA(0),n.h("bj")) +n=n.h("aa.E") +while(!0){if(!m.t()){s=null +break}r=m.d +s=r==null?n.a(r):r +if(s.x==="table")break}if(s!=null){q=s.a +if(q!=null)p=s +else{q=o[B.b.c2(o,s)-1] +p=null}}else{q=o[0] +p=null}return A.a([q,p],t.PR)}, +A5(a){var s=this.c,r=B.b.gP(s).x +if(r!=a&&B.b.p(B.vG,r)){s.pop() +this.A5(a)}}, +Dn(){return this.A5(null)}} +A.bs.prototype={ +gv(a){return 37*J.ab(this.a)+J.ab(this.b)}, +l(a,b){if(b==null)return!1 +return b instanceof A.bs&&b.a==this.a&&b.b==this.b}} +A.csa.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j=new A.bu(""),i="%("+a+")" +for(s=this.a,r=i.length,q=J.lm(b),p=0,o="";n=s.a,m=B.c.hj(n,i,p),m>=0;){j.a=o+B.c.R(n,p,m) +m+=r +for(l=m;A.csL(s.a[l]);)++l +if(l>m){k=A.cA(B.c.R(s.a,m,l),null) +m=l}else k=0 +o=s.a[m] +switch(o){case"s":o=j.a+=A.r(b) +break +case"d":o=j.a+=A.cTk(q.k(b),k) +break +case"x":o=j.a+=A.cTk(B.d.k9(A.bZ(b),16),k) +break +default:throw A.d(A.aq("formatStr does not support format character "+o))}p=m+1}r=j.a=o+B.c.R(n,p,n.length) +s.a=r.charCodeAt(0)==0?r:r}, +$S:333} +A.csl.prototype={ +$1(a){return a.KX("GET",this.a,this.b)}, +$S:964} +A.anQ.prototype={ +KX(a,b,c){return this.bhy(a,b,c)}, +bhy(a,b,c){var s=0,r=A.p(t.Wd),q,p=this,o,n +var $async$KX=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:o=A.cLJ(a,b) +n=A +s=3 +return A.i(p.nr(0,o),$async$KX) +case 3:q=n.bC0(e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$KX,r)}, +$iaph:1} +A.anY.prototype={ +bw7(){if(this.w)throw A.d(A.a0("Can't finalize a finalized Request.")) +this.w=!0 +return B.a4e}, +k(a){return this.a+" "+this.b.k(0)}} +A.b5W.prototype={ +$2(a,b){return a.toLowerCase()===b.toLowerCase()}, +$S:462} +A.b5X.prototype={ +$1(a){return B.c.gv(a.toLowerCase())}, +$S:137} +A.b5Y.prototype={ +ahQ(a,b,c,d,e,f,g){var s=this.b +if(s<100)throw A.d(A.aM("Invalid status code "+s+".",null))}} +A.Ph.prototype={ +nr(a,b){return this.aKE(0,b)}, +aKE(a,b){var s=0,r=A.p(t.ZI),q,p=2,o,n=[],m=this,l,k,j,i,h,g +var $async$nr=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(m.c)throw A.d(A.d3_("HTTP request failed. Client is already closed.",b.b)) +b.aNM() +s=3 +return A.i(new A.Pm(A.aFo(b.y,t.Cm)).HQ(),$async$nr) +case 3:j=d +l=new self.XMLHttpRequest() +i=m.a +i.B(0,l) +h=l +h.open(b.a,b.b.k(0),!0) +h.responseType="arraybuffer" +h.withCredentials=!1 +for(h=b.r,h=h.gep(h),h=h.gaz(h);h.t();){g=h.gK(h) +l.setRequestHeader(g.a,g.b)}k=new A.aI(new A.ak($.at,t.EW),t.FL) +h=t.Sc +g=t.H +new A.B1(l,"load",!1,h).ga2(0).bf(new A.b6X(l,k,b),g) +new A.B1(l,"error",!1,h).ga2(0).bf(new A.b6Y(k,b),g) +A.L(l,"send",[j]) +p=4 +s=7 +return A.i(k.a,$async$nr) +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.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$nr,r)}, +aO(a){var s,r,q,p +this.c=!0 +for(s=this.a,r=A.dy(s,s.r,A.z(s).c),q=r.$ti.c;r.t();){p=r.d +if(p==null)p=q.a(p) +p.abort()}s.V(0)}} +A.b6X.prototype={ +$1(a){var s,r,q,p,o,n,m,l=this,k=l.a,j=A.cQa(k).i(0,"content-length") +if(j!=null){s=$.cZA() +s=!s.b.test(j)}else s=!1 +if(s){l.b.jh(new A.PD("Invalid content-length header ["+A.r(j)+"].",l.c.b)) +return}r=A.dF(t.RZ.a(k.response),0,null) +q=k.responseURL +if(q.length!==0)A.di(q,0,null) +s=A.aFo(r,t.Cm) +p=k.status +o=r.length +n=l.c +m=A.cQa(k) +k=k.statusText +s=new A.aFp(A.dwr(new A.Pm(s)),n,p,k,o,m,!1,!0) +s.ahQ(p,o,m,!1,!0,k,n) +l.b.d2(0,s)}, +$S:75} +A.b6Y.prototype={ +$1(a){this.a.iy(new A.PD("XMLHttpRequest error.",this.b.b),A.pw())}, +$S:75} +A.Pm.prototype={ +HQ(){var s=new A.ak($.at,t.Qy),r=new A.aI(s,t.gI),q=new A.ade(new A.b7r(r),new Uint8Array(1024)) +this.cl(q.gl4(q),!0,q.gBI(q),r.gVD()) +return s}} +A.b7r.prototype={ +$1(a){return this.a.d2(0,new Uint8Array(A.f1(a)))}, +$S:228} +A.PD.prototype={ +k(a){var s=this.b.k(0) +return"ClientException: "+this.a+", uri="+s}, +$ibP:1} +A.bBX.prototype={} +A.Uo.prototype={} +A.Mr.prototype={} +A.aFp.prototype={} +A.a0g.prototype={} +A.b8C.prototype={ +$1(a){return a.toLowerCase()}, +$S:28} +A.a5F.prototype={ +k(a){var s=new A.bu(""),r=""+this.a +s.a=r +r+="/" +s.a=r +s.a=r+this.b +J.iK(this.c.a,new A.brD(s)) +r=s.a +return r.charCodeAt(0)==0?r:r}} +A.brB.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=A.dec(this.a,null,null),j=$.d0F() +k.Dz(j) +s=$.d0D() +k.wb(s) +r=k.gGY().i(0,0) +r.toString +k.wb("/") +k.wb(s) +q=k.gGY().i(0,0) +q.toString +k.Dz(j) +p=t.N +o=A.N(p,p) +while(!0){n=k.mm(0,";") +if(n){p=k.d +k.e=k.c=p.gdw(p)}if(!n)break +if(k.mm(0,j)){p=k.d +k.e=k.c=p.gdw(p)}k.wb(s) +if(k.c!==k.e)k.d=null +p=k.d.i(0,0) +p.toString +k.wb("=") +n=k.mm(0,s) +if(n){m=k.d +k.e=k.c=m.gdw(m)}if(n){if(k.c!==k.e)k.d=null +m=k.d.i(0,0) +m.toString +l=m}else l=A.drW(k) +if(k.mm(0,j)){m=k.d +k.e=k.c=m.gdw(m)}o.n(0,p,l)}k.bvG() +return A.cJZ(r,q,o)}, +$S:965} +A.brD.prototype={ +$2(a,b){var s,r,q=this.a +q.a+="; "+a+"=" +s=$.d0v() +s=s.b.test(b) +r=q.a +if(s){q.a=r+'"' +s=q.a+=A.Zn(b,$.cZD(),new A.brC(),null) +q.a=s+'"'}else q.a=r+b}, +$S:152} +A.brC.prototype={ +$1(a){return"\\"+A.r(a.i(0,0))}, +$S:81} +A.cs_.prototype={ +$1(a){var s=a.i(0,1) +s.toString +return s}, +$S:81} +A.bmI.prototype={ +xa(a,b){return this.aIJ(a,b)}, +aIJ(a,b){var s=0,r=A.p(t.ju),q,p=this,o,n,m +var $async$xa=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=3 +return A.i(p.aIF("image/*",p.bqY(b,a.e)),$async$xa) +case 3:n=d +m=J.ao(n) +if(m.gad(n))m=null +else{o=p.c +o===$&&A.b() +m=o.OF(m.ga2(n),a.a,a.b,a.c)}q=m +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$xa,r)}, +aIF(a,b){var s=this,r=s.bsP(a,b,!1),q=s.b +q===$&&A.b() +A.L(q,"replaceChildren",[A.a([],t.jl)]) +A.L(s.b,"append",[r]) +r.click() +return s.b2z(r).j6(new A.bmN(r))}, +bqY(a,b){if(a===B.aA5)return b===B.a6c?"user":"environment" +return null}, +b25(a){var s=a.files +return s==null?null:A.dgr(s)}, +b2z(a){var s=new A.ak($.at,t.G4),r=new A.aI(s,t.Xv),q=t.g +a.onchange=q.a(A.cQ(new A.bmK(this,r))) +a.oncancel=q.a(A.cQ(new A.bmL(r))) +a.onerror=q.a(A.cQ(new A.bmM(r))) +return s}, +bsP(a,b,c){var s=self.document.createElement("input") +s.type="file" +s.multiple=!1 +s.accept=a +if(b!=null)s.setAttribute("capture",b) +return s}} +A.bmN.prototype={ +$0(){this.a.remove()}, +$S:13} +A.bmK.prototype={ +$1(a){var s,r=a.target,q=r==null?null:this.a.b25(r),p=this.b +if((p.a.a&30)===0&&q!=null){s=A.X(q).h("O<1,jB>") +p.d2(0,A.R(new A.O(q,new A.bmJ(),s),!0,s.h("aa.E")))}}, +$S:75} +A.bmJ.prototype={ +$1(a){var s=A.L(self.URL,"createObjectURL",[a]),r=a.name,q=a.size +return A.bPy(s,A.vF(a.lastModified,!1),q,a.type,r)}, +$S:966} +A.bmL.prototype={ +$1(a){this.a.d2(0,A.a([],t.FQ))}, +$S:75} +A.bmM.prototype={ +$1(a){var s=this.a +if((s.a.a&30)===0)s.jh(a)}, +$S:75} +A.bmV.prototype={ +OF(a,b,c,d){return this.bGc(a,b,c,d)}, +bGc(a,a0,a1,a2){var s=0,r=A.p(t.rx),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$OF=A.l(function(a3,a4){if(a3===1){o=a4 +s=p}while(true)switch(s){case 0:q=a +s=1 +break +p=4 +j=a.c +j===$&&A.b() +s=7 +return A.i(n.bAg(j),$async$OF) +case 7:m=a4 +i=m +h=i.width +g=i.height +f=new A.V(h,g) +e=Math.max(1,1) +if(e>1)f=new A.V(B.e.hf(h,e),B.e.hf(g,e)) +h=self +d=h.document.createElement("canvas") +d.width=B.e.au(f.a) +d.height=B.e.au(f.b) +g=d.getContext("2d") +if(g==null)g=t.lZ.a(g) +A.L(g,"drawImage",[i,0,0]) +l=d +s=8 +return A.i(n.aee(a,l,a2),$async$OF) +case 8:k=a4 +h.URL.revokeObjectURL(j) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +b=o +q=a +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$OF,r)}, +bAg(a){var s,r=new A.ak($.at,t.XC),q=new A.aI(r,t.m_),p=self.document.createElement("img") +p.src=a +s=t.Ds.c +A.ny(p,"load",new A.bmW(q,p),!1,s) +A.ny(p,"error",new A.bmX(p,q),!1,s) +return r}, +aee(a,b,c){return this.bIr(a,b,c)}, +bIr(a,b,c){var s=0,r=A.p(t.rx),q,p,o,n,m +var $async$aee=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:p=Math.min(100,100) +o=new A.ak($.at,t.lL) +n=t.g.a(A.cQ(new A.bmY(new A.aI(o,t.na),a))) +m=a.a +if(m==null)m="" +A.L(b,"toBlob",[n,m,p/100]) +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$aee,r)}} +A.bmW.prototype={ +$1(a){this.a.d2(0,this.b)}, +$S:40} +A.bmX.prototype={ +$1(a){this.a.remove() +this.b.jh("Error while loading image.")}, +$S:40} +A.bmY.prototype={ +$1(a){var s=this.b +this.a.d2(0,A.bPy(A.L(self.URL,"createObjectURL",[a]),new A.am(Date.now(),!1),a.size,s.a,"scaled_"+s.b))}, +$S:75} +A.bsz.prototype={ +b2e(a,b,c,d,e,f){var s=t.N +return B.b5R.fi("pickImage",A.a1(["source",f.a,"maxWidth",c,"maxHeight",b,"imageQuality",a,"cameraDevice",d.a,"requestFullMetadata",!0],s,t.z),!1,s)}, +xa(a,b){return this.aIK(a,b)}, +aIK(a,b){var s=0,r=A.p(t.ju),q,p=this,o +var $async$xa=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=3 +return A.i(p.b2e(a.c,a.b,a.a,a.e,!0,b),$async$xa) +case 3:o=d +q=o!=null?A.bPy(o,null,null,null,null):null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$xa,r)}} +A.bmH.prototype={} +A.aos.prototype={ +H(){return"CameraDevice."+this.b}} +A.avT.prototype={} +A.bmG.prototype={ +aUN(a,b,c,d){}} +A.avU.prototype={ +H(){return"ImageSource."+this.b}} +A.Qh.prototype={ +k(a){return this.a}} +A.bnM.prototype={ +$1(a){return"default"}, +$S:28} +A.Ek.prototype={ +k(a){return this.a}} +A.as6.prototype={ +ganm(){if(this.z){var s=this.a +s=s<0||s>=100}else s=!0 +return s}, +aLU(a){this.a=a}, +aLf(a){this.b=a}, +aKS(a){this.c=a}, +aKU(a){this.d=a}, +aKZ(a){this.e=a}, +aLe(a){this.f=a}, +aLu(a){this.r=a}, +aKX(a){this.w=a}, +Lh(a,b,c,d,e,f){var s,r,q +if(ac){s=f==null +r=s?"":" Date parsed as "+f.k(0)+"." +s=s?null:f.gOW() +q="Error parsing "+e+", invalid "+d+" value: "+a+" in "+this.Q+" with time zone offset "+A.r(s==null?"unknown":s)+". Expected value between "+b+" and "+c+"."+r+"." +s=this.at +throw A.d(A.bM(s>0?q+(" Failed after "+s+" retries."):q,null,null))}}, +Lg(a,b,c,d,e){return this.Lh(a,b,c,d,e,null)}, +apa(a,b){return this.ay.$8(A.b7(a)+b,A.bp(a),A.cL(a),A.iT(a),A.EM(a),A.Lh(a),A.aBY(a),a.b)}, +a7o(a){var s,r,q,p,o,n=this,m=n.as +if(m!=null)return m +m=n.gali() +s=n.b +r=n.d +if(r===0)r=n.c +q=n.x +p=n.e +q=q?p+12:p +o=n.ay.$8(m,s,r,q,n.f,n.r,n.w,n.y) +if(n.y&&n.ganm()){n.as=o +m=o}else m=n.as=n.aZb(o,a) +return m}, +avu(){return this.a7o(3)}, +gali(){var s,r,q,p,o,n=this +if(n.ganm())s=n.a +else{A.crs() +r=A.b2m() +if(n.y)r=r.ZM() +q=n.apa(r,-80) +p=n.apa(r,20) +o=B.d.aD(A.b7(q),100) +s=B.d.aD(A.b7(p),100)*100+n.a +s=B.d.bn(new A.bbx(n).$1(s).a,p.a)<=0?s:o*100+n.a}return s}, +aZb(a,b){var s,r,q,p,o,n,m,l=this +if(b<=0)return a +s=A.cd(A.b7(a),2,29,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +r=A.bp(new A.am(s,!1))===2 +q=A.b1P(A.bp(a),A.cL(a),r) +if(!l.y)if(a.b){s=l.x +p=l.e +s=s?p+12:p +if(A.iT(a)===s)if(A.cL(a)===q)Date.now() +s=!0}else s=!1 +else s=!1 +if(s){++l.at +return l.a7o(b-1)}if(l.ax&&A.iT(a)!==0){o=l.a7o(b-1) +if(!o.l(0,a))return o +n=l.d +if(n===0)n=A.b1P(l.b,l.c,r) +m=a.B(0,A.cp(0,(n-q)*24-A.iT(a),0,0,0,0)) +if(A.iT(m)===0)return m +if(A.b1P(A.bp(m),A.cL(m),r)!==n)return a +return m}return a}} +A.bbx.prototype={ +$1(a){var s,r,q=this.a,p=q.b,o=q.d +if(o===0)o=q.c +s=q.x +r=q.e +s=s?r+12:r +return q.ay.$8(a,p,o,s,q.f,q.r,q.w,q.y)}, +$S:967} +A.hE.prototype={ +d4(a){var s,r,q,p +for(s=this.ga36(),r=s.length,q=0,p="";q0){k=A.cd(A.b7(p),2,29,0,0,0,0,!1) +if(!A.bI(k))A.C(A.bV(k)) +n=A.b1P(A.bp(p),A.cL(p),A.bp(new A.am(k,!1))===2) +l.Lh(l.d,n,n,"dayOfYear",a,p)}else l.Lh(l.c,A.cL(p),A.cL(p),"day",a,p) +l.Lh(l.gali(),A.b7(p),A.b7(p),"year",a,p)}return l.avu()}, +gaXX(){return B.b.lF(this.ga36(),new A.bbB())}, +avc(){return this.kq("jm")}, +bmn(){return this.kq("jms")}, +ga36(){var s,r=this,q=r.e +if(q==null){if(r.d==null){r.kq("yMMMMd") +r.kq("jms")}q=r.d +q.toString +q=r.apS(q) +s=A.X(q).h("bE<1>") +s=r.e=A.R(new A.bE(q,s),!0,s.h("aa.E")) +q=s}return q}, +aiA(a,b){var s=this.d +this.d=s==null?a:s+b+a}, +kq(a){var s,r=this +r.e=null +s=r.c +if(!J.vj(J.aS($.b2Q(),s),a))r.aiA(a," ") +else r.aiA(J.aS(J.aS($.b2Q(),s),a)," ") +return r}, +ghv(){var s=this.c +if(s!==$.b25){$.b25=s +$.b1K=J.aS($.amp(),s)}s=$.b1K +s.toString +return s}, +gae3(){var s=this.f +if(s==null){$.cGq.i(0,this.c) +s=this.f=!0}return s}, +gbu_(){var s=this,r=s.r +if(r!=null)return r +r=$.d46.cP(0,s.gaBU(),s.gb7A()) +s.r=r +r.toString +return r}, +gaBV(){var s=this.w +return s==null?this.w=this.gaBU().charCodeAt(0):s}, +gaBU(){var s=this,r=s.x +if(r==null){s.gae3() +r=s.ghv().fy +if(r==null)r="0" +r=s.x=r}return r}, +mL(a){var s,r,q,p,o,n,m=this +m.gae3() +s=m.w +r=$.amt() +if(s===r)return a +s=a.length +q=A.aK(s,0,!1,t.S) +for(p=m.c,o=0;o=4?r.ghv().y:r.ghv().Q) +break +case"G":r=p.b +p.Hl(a,s.length>=4?r.ghv().c:r.ghv().b) +break +case"h":p.qo(a,b.gQh()) +if(b.e===12)b.e=0 +break +case"H":p.qo(a,b.gQh()) +break +case"K":p.qo(a,b.gQh()) +break +case"k":p.aAi(a,b.gQh(),-1) +break +case"L":p.bDC(a,b) +break +case"M":p.bDx(a,b) +break +case"m":p.qo(a,b.gaLd()) +break +case"Q":break +case"S":p.qo(a,b.gaKW()) +break +case"s":p.qo(a,b.gaLt()) +break +case"v":break +case"y":p.qo(a,b.gaLT()) +b.z=s.length===2 +break +case"z":break +case"Z":break +default:return}}catch(q){p.ZC(a)}}, +bwH(a){var s,r,q,p,o,n=this,m="0",l=n.a +switch(l[0]){case"a":s=A.iT(a) +r=s>=12&&s<24?1:0 +return n.b.ghv().CW[r] +case"c":return n.bwL(a) +case"d":return n.b.mL(B.c.fm(""+A.cL(a),l.length,m)) +case"D":q=A.cd(A.b7(a),2,29,0,0,0,0,!1) +if(!A.bI(q))A.C(A.bV(q)) +return n.b.mL(B.c.fm(""+A.b1P(A.bp(a),A.cL(a),A.bp(new A.am(q,!1))===2),l.length,m)) +case"E":return n.bwG(a) +case"G":p=A.b7(a)>0?1:0 +q=n.b +return l.length>=4?q.ghv().c[p]:q.ghv().b[p] +case"h":s=A.iT(a) +if(A.iT(a)>12)s-=12 +return n.b.mL(B.c.fm(""+(s===0?12:s),l.length,m)) +case"H":return n.b.mL(B.c.fm(""+A.iT(a),l.length,m)) +case"K":return n.b.mL(B.c.fm(""+B.d.M(A.iT(a),12),l.length,m)) +case"k":return n.b.mL(B.c.fm(""+(A.iT(a)===0?24:A.iT(a)),l.length,m)) +case"L":return n.bwM(a) +case"M":return n.bwJ(a) +case"m":return n.b.mL(B.c.fm(""+A.EM(a),l.length,m)) +case"Q":return n.bwK(a) +case"S":return n.bwI(a) +case"s":return n.b.mL(B.c.fm(""+A.Lh(a),l.length,m)) +case"y":o=A.b7(a) +if(o<0)o=-o +l=l.length +q=n.b +return l===2?q.mL(B.c.fm(""+B.d.M(o,100),2,m)):q.mL(B.c.fm(""+o,l,m)) +default:return""}}, +aAi(a,b,c){var s=this.b +b.$1(this.baw(a,s.gbu_(),s.gaBV())+c)}, +qo(a,b){return this.aAi(a,b,0)}, +baw(a,b,c){var s,r,q,p,o=b.agf(a.YP(a.a.length-a.b)) +if(o==null||o.length===0)return this.ZC(a) +s=o.length +a.b+=s +r=$.amt() +if(c!==r){q=J.cxD(s,t.S) +for(p=0;p")),s=s.h("aa.E");k.t();){r=k.d +l=r==null?s.a(r):r +if(b[l].length>=b[m].length)m=l}a.b+=b[m].length +return m}, +bwJ(a){var s=this.a.length,r=this.b +switch(s){case 5:return r.ghv().d[A.bp(a)-1] +case 4:return r.ghv().f[A.bp(a)-1] +case 3:return r.ghv().w[A.bp(a)-1] +default:return r.mL(B.c.fm(""+A.bp(a),s,"0"))}}, +bDx(a,b){var s,r=this +switch(r.a.length){case 5:s=r.b.ghv().d +break +case 4:s=r.b.ghv().f +break +case 3:s=r.b.ghv().w +break +default:return r.qo(a,b.gafI())}b.b=r.Hl(a,s)+1}, +bwI(a){var s=this.b,r=s.mL(B.c.fm(""+A.aBY(a),3,"0")),q=this.a.length-3 +if(q>0)return r+s.mL(B.c.fm(""+0,q,"0")) +else return r}, +bwL(a){var s=this.b +switch(this.a.length){case 5:return s.ghv().ax[B.d.M(A.ug(a),7)] +case 4:return s.ghv().z[B.d.M(A.ug(a),7)] +case 3:return s.ghv().as[B.d.M(A.ug(a),7)] +default:return s.mL(B.c.fm(""+A.cL(a),1,"0"))}}, +bDB(a){var s,r=this +switch(r.a.length){case 5:s=r.b.ghv().ax +break +case 4:s=r.b.ghv().z +break +case 3:s=r.b.ghv().as +break +default:return r.qo(a,new A.bWM())}r.Hl(a,s)}, +bwM(a){var s=this.a.length,r=this.b +switch(s){case 5:return r.ghv().e[A.bp(a)-1] +case 4:return r.ghv().r[A.bp(a)-1] +case 3:return r.ghv().x[A.bp(a)-1] +default:return r.mL(B.c.fm(""+A.bp(a),s,"0"))}}, +bDC(a,b){var s,r=this +switch(r.a.length){case 5:s=r.b.ghv().e +break +case 4:s=r.b.ghv().r +break +case 3:s=r.b.ghv().x +break +default:return r.qo(a,b.gafI())}b.b=r.Hl(a,s)+1}, +bwK(a){var s=B.e.au((A.bp(a)-1)/3),r=this.a.length,q=this.b +switch(r){case 4:return q.ghv().ch[s] +case 3:return q.ghv().ay[s] +default:return q.mL(B.c.fm(""+(s+1),r,"0"))}}, +bwG(a){var s,r=this,q=r.a.length +$label0$0:{if(q<=3){s=r.b.ghv().Q +break $label0$0}if(q===4){s=r.b.ghv().y +break $label0$0}if(q===5){s=r.b.ghv().at +break $label0$0}if(q>=6)A.C(A.aq('"Short" weekdays are currently not supported.')) +s=A.C(A.pV("unreachable"))}return s[B.d.M(A.ug(a),7)]}} +A.bWM.prototype={ +$1(a){return a}, +$S:12} +A.buS.prototype={ +d4(a){var s,r,q=this +if(isNaN(a))return q.fy.z +s=a==1/0||a==-1/0 +if(s){s=B.d.guB(a)?q.a:q.b +return s+q.fy.y}s=B.d.guB(a)?q.a:q.b +r=q.k2 +r.a+=s +s=Math.abs(a) +if(q.x)q.b1q(s) +else q.a37(s) +s=r.a+=B.d.guB(a)?q.c:q.d +r.a="" +return s.charCodeAt(0)==0?s:s}, +b1q(a){var s,r,q,p=this +if(a===0){p.a37(a) +p.alR(0) +return}s=B.e.ec(Math.log(a)/$.cDM()) +r=a/Math.pow(10,s) +q=p.z +if(q>1&&q>p.Q)for(;B.d.M(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.a37(r) +p.alR(s)}, +alR(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.d.k(a) +if(s.k4===0)q.a+=B.c.fm(p,r,"0") +else s.biC(r,p)}, +alL(a){var s +if(B.e.guB(a)&&!B.e.guB(Math.abs(a)))throw A.d(A.aM("Internal error: expected positive number, got "+A.r(a),null)) +s=B.e.ec(a) +return s}, +bgf(a){if(a==1/0||a==-1/0)return $.cum() +else return B.e.aF(a)}, +a37(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.au(a1) +r=0 +q=0 +p=0}else{o=a.alL(a1) +a0.a=o +n=a1-o +a0.d=n +if(B.e.au(n)!==0){a0.a=a1 +a0.d=0}new A.buX(a0,a,a1).$0() +p=A.bZ(Math.pow(10,a0.b)) +m=p*a.dx +l=B.e.au(a.bgf(a0.d*m)) +if(l>=m){a0.a=a0.a+1 +l-=m}else if(A.cKp(l)>A.cKp(B.d.au(a.alL(a0.d*m))))a0.d=l/m +q=B.d.hf(l,p) +r=B.d.M(l,p)}o=a0.a +if(typeof o=="number"&&o>$.cum()){k=B.e.dO(Math.log(o)/$.cDM())-$.cWP() +j=B.e.aF(Math.pow(10,k)) +if(j===0)j=Math.pow(10,k) +i=B.c.X("0",B.d.au(k)) +o=B.e.au(o/j)}else i="" +h=q===0?"":B.d.k(q) +g=a.b9c(o) +f=g+(g.length===0?h:B.c.fm(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.X("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.d.M(q-s,r.e)===1)r.k2.a+=r.fy.c}, +k(a){return"NumberFormat("+this.fx+", "+A.r(this.fr)+")"}} +A.buW.prototype={ +$1(a){return this.a}, +$S:974} +A.buV.prototype={ +$1(a){return a.Q}, +$S:975} +A.buX.prototype={ +$0(){}, +$S:0} +A.aAf.prototype={} +A.buT.prototype={ +baE(){var s,r,q,p,o,n,m,l,k,j=this,i=j.f +i.b=j.T4() +s=j.bdH() +i.d=j.T4() +r=j.b +if(r.hd()===";"){++r.b +i.a=j.T4() +for(q=s.length,p=r.a,o=p.length,n=0;n=o.a.length)return!1 +s=o.hd() +if(s==="'"){r=o.YP(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.d(B.Dv) +o.e=100 +a.a+=p.a.d +break +case"\u2030":o=p.f +q=o.e +if(q!==1&&q!==1000)throw A.d(B.Dv) +o.e=1000 +a.a+=p.a.x +break +default:a.a+=s}return!0}, +bdH(){var s,r,q,p,o,n=this,m=new A.bu(""),l=n.b,k=l.a,j=k.length,i=!0 +while(!0){s=l.b +if(!(B.c.R(k,s,Math.min(s+1,j)).length!==0&&i))break +i=n.bDI(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.d(A.bM('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}, +bDI(a){var s,r,q,p,o,n=this,m=null,l=n.b,k=l.hd() +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.d(A.bM('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.d(A.bM('Multiple decimal separators in pattern "'+l.k(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.d(A.bM('Multiple exponential symbols in pattern "'+l.k(0)+'"',m,m)) +s.ax=!0 +s.f=0;++l.b +if(l.hd()==="+"){a.a+=l.fn(0) +s.at=!0}for(r=l.a,q=r.length;p=l.b,o=p+1,p=B.c.R(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.d(A.bM('Malformed exponential pattern "'+l.k(0)+'"',m,m)) +return!1 +default:return!1}a.a+=k;++l.b +return!0}} +A.aFs.prototype={ +dL(a,b){var s=this.YP(b) +this.b+=b +return s}, +fn(a){return this.dL(0,1)}, +YP(a){var s=this.a,r=this.b +return B.c.R(s,r,Math.min(r+a,s.length))}, +hd(){return this.YP(1)}, +k(a){return this.a+" at "+this.b}} +A.Wf.prototype={ +i(a,b){return A.Zh(b)==="en_US"?this.b:this.asT()}, +aB(a,b){if(A.Zh(b)!=="en_US")this.asT() +return!0}, +asT(){throw A.d(new A.ax6("Locale data has not been initialized, call "+this.a+"."))}} +A.ax6.prototype={ +k(a){return"LocaleDataException: "+this.a}, +$ibP:1} +A.cu9.prototype={ +$1(a){return A.cBm(A.cU4(a))}, +$S:118} +A.cua.prototype={ +$1(a){return A.cBm(A.Zh(a))}, +$S:118} +A.cub.prototype={ +$1(a){return"fallback"}, +$S:118} +A.ud.prototype={ +H(){return"PluralCase."+this.b}} +A.anm.prototype={ +aUq(a,b,c,d,e,f,g,h){var s,r,q,p,o,n,m,l,k,j=this,i=null +j.CW.q_(j) +s=j.cy +s.B(0,j.cx) +r=s.$ti.h("dx<1>") +q=r.h("ft") +j.dy.p_(0,new A.lW(i,new A.ft(new A.b4z(),new A.dx(s,r),q),q.h("lW")).wl(new A.b4A())) +q=r.h("ft") +j.k1.p_(0,new A.lW(i,new A.ft(new A.b4B(),new A.dx(s,r),q),q.h("lW")).wl(new A.b4J())) +q=r.h("ft") +j.k2.p_(0,new A.lW(i,new A.ft(new A.b4K(),new A.dx(s,r),q),q.h("lW")).wl(new A.b4L())) +q=t.zI +A.daN(q).u3(new A.dx(s,r)).rN(new A.b4M(j),new A.b4N()) +p=j.p2 +o=r.h("ft") +n=o.h("lW") +p.p_(0,new A.lW(i,new A.ft(new A.b4O(),new A.dx(s,r),o),n).wl(new A.b4P())) +j.RG.p_(0,new A.lW(i,new A.ft(new A.b4Q(),new A.dx(s,r),o),n).wl(new A.b4C())) +n=j.k4 +o=j.ok +m=j.R8 +l=j.p4 +k=t.y +p=A.d3m(new A.dx(n,n.$ti.h("dx<1>")),new A.dx(o,o.$ti.h("dx<1>")),new A.dx(p,p.$ti.h("dx<1>")),new A.dx(m,m.$ti.h("dx<1>")),new A.dx(l,l.$ti.h("dx<1>")),new A.b4D(),t.jv,t.z7,t.bo,k,t.ls,t.qO) +j.p3.p_(0,new A.lW(i,p,p.$ti.h("lW")).wl(new A.b4E())) +p=j.fr +q=A.d3l(new A.dx(p,p.$ti.h("dx<1>")),new A.dx(s,r),new A.b4F(),k,q,t.w2) +j.k3.p_(0,new A.lW(i,q,q.$ti.h("lW")).wl(new A.b4G())) +m.B(0,!1) +l.B(0,B.p2) +l=j.bhL(!1,!0) +if(l!=null)l.mY(new A.b4H()) +n.B(0,i) +A.ano().bf(new A.b4I(j),t.P) +j.a5r()}, +a5r(){var s=0,r=A.p(t.H),q +var $async$a5r=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a5r,r)}, +AP(a){var s,r,q,p=this.fr +p=p.e.b!==B.aV?p.gj(0):null +p.toString +p=p&&this.cx.a===B.WE +s=a.c +if(p){p=A.cp(0,0,0,Date.now()-a.b.a,0,0) +r=this.fy +r=r.e.b!==B.aV?r.gj(0):null +r.toString +r=s.a+B.e.aF(p.a*r) +q=new A.aU(r) +p=a.e +if(p==null||r<=p.a)p=q +else p.toString +return p}else return s}, +gaDg(){var s,r=this +if(r.to==null){s=A.nS(null,!1,t.Tu) +r.to=s +if(!r.ay)s.p_(0,r.bsR(B.K,B.ahK,800))}s=r.to +s.toString +return new A.dx(s,s.$ti.h("dx<1>"))}, +bsR(a,b,c){var s,r=this,q={},p=t.rs,o=new A.h1(null,null,p) +if(r.ay)return new A.dw(o,p.h("dw<1>")) +q.a=q.b=q.c=null +s=r.dx +q.b=new A.dx(s,s.$ti.h("dx<1>")).rN(new A.b4R(q,new A.b4W(new A.b4V(r),c,b,a),new A.b4X(q,r,o)),new A.b4S()) +s=r.cy +q.a=new A.dx(s,s.$ti.h("dx<1>")).rN(new A.b4T(r,o),new A.b4U()) +p=p.h("dw<1>") +return new A.lW(null,new A.dw(o,p),p.h("lW"))}, +IK(a,b,c){return this.aKK(a,b,c)}, +aKK(a,b,c){var s=0,r=A.p(t.z2),q,p=this,o,n +var $async$IK=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:if(p.ay){q=null +s=1 +break}p.at=null +p.ch=new A.aQg(b,null) +o=A.bxK(null,B.w,0,null,null,B.pE,B.w,null) +p.cx=o +p.cy.B(0,o) +p.at=a +p.aiX() +o=p.fr +o=o.e.b!==B.aV?o.gj(0):null +o.toString +s=(o?!0:c)?3:5 +break +case 3:s=6 +return A.i(p.hk(0),$async$IK) +case 6:n=e +s=4 +break +case 5:o=p.TL(!1) +o=o==null?null:o.mY(new A.b4Z()) +s=7 +return A.i(t.i4.b(o)?o:A.dO(o,t.z2),$async$IK) +case 7:n=null +case 4:q=n +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$IK,r)}, +hk(a){var s=0,r=A.p(t.z2),q,p=this,o,n,m +var $async$hk=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.ay){q=null +s=1 +break}if(p.at==null)throw A.d(A.dA("Must set AudioSource before loading")) +s=p.e?3:5 +break +case 3:o=p.ch +p.ch=null +n=p.f +n===$&&A.b() +s=6 +return A.i(n,$async$hk) +case 6:n=c +m=p.at +m.toString +s=7 +return A.i(p.AV(n,m,o),$async$hk) +case 7:q=c +s=1 +break +s=4 +break +case 5:n=p.TL(!0) +s=8 +return A.i(t.i4.b(n)?n:A.dO(n,t.z2),$async$hk) +case 8:q=c +s=1 +break +case 4:case 1:return A.n(q,r)}}) +return A.o($async$hk,r)}, +aiX(){var s=this.at +s=s==null?null:A.a([s],t.Uj) +this.k4.B(0,s) +this.bl5()}, +bl5(){var s,r,q,p,o,n=null,m=this.ok +m.B(0,this.at==null?n:A.a([0],t.t)) +s=m.e +r=s.b!==B.aV?m.gj(0):n +q=r==null?n:J.bn(r) +if(q==null)q=0 +r=this.p1 +p=r.length +if(p>q)B.b.t3(r,q,p) +else if(p")).WV(0,new A.b4q()),$async$AV) +case 9:f.$0() +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +k=A.ag(e) +if(k instanceof A.ok){l=k +try{k=A.cA(l.a,null) +j=l.b +i=t.Xw.a(l.c) +k=A.cKV(k,j,i==null?null:J.xJ(i,t.N,t.z)) +throw A.d(k)}catch(d){if(t.bE.b(A.ag(d)))if(l.a==="abort")throw A.d(new A.aBG(l.b)) +else throw A.d(A.cKV(9999999,l.b,null)) +else throw d}}else throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$AV,r)}, +fM(a){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k +var $async$fM=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.ay){s=1 +break}o=p.fr +n=o.e +m=n.b!==B.aV?o.gj(0):null +m.toString +if(m){s=1 +break}p.y2=!1 +m=p.cx +p.cx=m.a8J(p.AP(m),new A.am(Date.now(),!1)) +o.B(0,!0) +p.cy.B(0,p.cx) +m=new A.ak($.at,t.LR) +l=new A.aI(m,t.zh) +s=4 +return A.i(A.ano(),$async$fM) +case 4:s=3 +return A.i(c.Qc(!0),$async$fM) +case 3:k=c +s=k?5:7 +break +case 5:o=n.b!==B.aV?o.gj(0):null +o.toString +if(!o){s=1 +break}s=p.at!=null?8:9 +break +case 8:s=p.e?10:12 +break +case 10:o=p.f +o===$&&A.b() +s=13 +return A.i(o,$async$fM) +case 13:p.KW(c,l) +s=11 +break +case 12:o=p.bhM(!0,l) +if(o!=null)o.mY(new A.b4Y()) +case 11:case 9:s=6 +break +case 7:o.B(0,!1) +case 6:s=14 +return A.i(m,$async$fM) +case 14:case 1:return A.n(q,r)}}) +return A.o($async$fM,r)}, +f2(a){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$f2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.ay){s=1 +break}o=p.fr +n=o.e.b!==B.aV?o.gj(0):null +n.toString +if(!n){s=1 +break}p.y2=!1 +n=p.cx +p.cx=n.a8J(p.AP(n),new A.am(Date.now(),!1)) +o.B(0,!1) +p.cy.B(0,p.cx) +o=p.f +o===$&&A.b() +m=J +s=4 +return A.i(o,$async$f2) +case 4:s=3 +return A.i(m.d1g(c,new A.bx_()),$async$f2) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$f2,r)}, +KW(a,b){return this.bhx(a,b)}, +bhx(a,b){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$KW=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:p=4 +k=n.fr +k=k.e.b!==B.aV?k.gj(0):null +k.toString +if(!k){s=1 +break}s=7 +return A.i(a.mr(0,new A.bxJ()),$async$KW) +case 7:if(b!=null)b.fw(0) +p=2 +s=6 +break +case 4:p=3 +i=o +m=A.ag(i) +l=A.aD(i) +if(b!=null)b.iy(m,l) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$KW,r)}, +i_(a){return this.aLN(a)}, +aLN(a){var s=0,r=A.p(t.H),q,p=this,o +var $async$i_=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.ay){s=1 +break}p.fx.B(0,a) +o=p.f +o===$&&A.b() +s=4 +return A.i(o,$async$i_) +case 4:s=3 +return A.i(c.i_(new A.aEp(a)),$async$i_) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$i_,r)}, +lp(a){return this.aL5(a)}, +aL5(a){var s=0,r=A.p(t.H),q,p=this,o +var $async$lp=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.ay){s=1 +break}p.p4.B(0,a) +o=p.f +o===$&&A.b() +s=4 +return A.i(o,$async$lp) +case 4:s=3 +return A.i(c.lp(new A.aEo(B.vI[a.a])),$async$lp) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$lp,r)}, +DB(a,b,c){return this.aKq(0,b,c)}, +kF(a,b){return this.DB(0,b,null)}, +aKq(a,b,c){var s=0,r=A.p(t.H),q,p=2,o,n=[],m=this,l,k,j +var $async$DB=A.l(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:if(m.ay){s=1 +break}m.ch=null +k=m.cx +case 3:switch(k.a.a){case 1:s=5 +break +default:s=6 +break}break +case 5:s=1 +break +case 6:p=7 +m.ry=!0 +l=k +k=l.a8J(b,new A.am(Date.now(),!1)) +m.cx=k +m.cy.B(0,k) +m.rx.B(0,new A.TF()) +k=m.f +k===$&&A.b() +j=J +s=11 +return A.i(k,$async$DB) +case 11:s=10 +return A.i(j.d1m(e,new A.bE9(b,c)),$async$DB) +case 10:n.push(9) +s=8 +break +case 7:n=[2] +case 8:p=2 +m.ry=!1 +s=n.pop() +break +case 9:case 4:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$DB,r)}, +m(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l +var $async$m=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if(p.ay){s=1 +break}p.ay=!0 +o=p.w +s=o!=null?3:4 +break +case 3:s=6 +return A.i(o,$async$m) +case 6:s=5 +return A.i(p.xJ(b),$async$m) +case 5:p.w=null +case 4:o=p.x +s=o!=null?7:8 +break +case 7:s=9 +return A.i(p.xJ(o),$async$m) +case 9:p.x=null +case 8:p.at=null +for(o=p.ax,n=o.gbm(0),m=A.z(n),m=m.h("@<1>").a1(m.y[1]),n=new A.c4(J.au(n.a),n.b,m.h("c4<1,2>")),m=m.y[1];n.t();){l=n.a;(l==null?m.a(l):l).b=null}o.V(0) +p.as.e3(0) +s=10 +return A.i(p.dx.aO(0),$async$m) +case 10:s=11 +return A.i(p.p4.aO(0),$async$m) +case 11:s=12 +return A.i(p.R8.aO(0),$async$m) +case 12:s=13 +return A.i(p.fr.aO(0),$async$m) +case 13:s=14 +return A.i(p.fx.aO(0),$async$m) +case 14:s=15 +return A.i(p.fy.aO(0),$async$m) +case 15:s=16 +return A.i(p.go.aO(0),$async$m) +case 16:s=17 +return A.i(p.k4.aO(0),$async$m) +case 17:s=18 +return A.i(p.ok.aO(0),$async$m) +case 18:case 1:return A.n(q,r)}}) +return A.o($async$m,r)}, +a5Q(a,b,c){var s,r,q,p,o,n=this +if(n.ay)return null +if(!b&&a===n.e)return n.db +n.c_=a +s=++n.bU +r=new A.ak($.at,t.uA) +q=new A.aI(r,t.CU) +n.e=a +p=n.AP(n.cx) +o=n.p2 +o=o.e.b!==B.aV?o.gj(0):null +n.f=new A.b4s(n,b,a,new A.b4r(new A.b4y(n,s),a,q),n.at,p,c,new A.b4u(n,o),o,q).$0() +return r}, +bhM(a,b){return this.a5Q(a,!1,b)}, +TL(a){return this.a5Q(a,!1,null)}, +bhL(a,b){return this.a5Q(a,b,null)}, +xJ(a){return this.b_N(a)}, +b_N(a){var s=0,r=A.p(t.H),q=1,p,o=this,n,m +var $async$xJ=A.l(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:s=a instanceof A.XA?2:4 +break +case 2:s=5 +return A.i(a.on(new A.asR()),$async$xJ) +case 5:s=3 +break +case 4:o.w=null +q=7 +s=10 +return A.i(A.cR4().yO(new A.bdD(o.Q)),$async$xJ) +case 10:q=1 +s=9 +break +case 7:q=6 +m=p +s=11 +return A.i(a.on(new A.asR()),$async$xJ) +case 11:s=9 +break +case 6:s=1 +break +case 9:case 3:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$xJ,r)}} +A.b4z.prototype={ +$1(a){return a.a}, +$S:978} +A.b4A.prototype={ +$2(a,b){}, +$S:23} +A.b4B.prototype={ +$1(a){return a.d}, +$S:979} +A.b4J.prototype={ +$2(a,b){}, +$S:23} +A.b4K.prototype={ +$1(a){return a.f}, +$S:980} +A.b4L.prototype={ +$2(a,b){}, +$S:23} +A.b4M.prototype={ +$1(a){var s,r,q,p,o,n,m=J.cz(a),l=m.ga2(a),k=m.gP(a) +m=this.a +if(m.ry)return +s=l.r +if(s==null||k.r==null)return +if(k.r!=s)m.rx.B(0,new A.TF()) +else{r=m.AP(l) +q=m.AP(k) +s=m.p4 +s=s.e.b!==B.aV?s.gj(0):null +s.toString +if(s!==B.w9)return +s=q.a +p=r.a +if(s>=p)return +if(s>=3e5)return +o=m.cx.e +n=o==null +if(!n&&p")).eB(new A.b4m(r)) +s=a.e +new A.xv(s,s.$ti.h("xv<1>")).eB(new A.b4n(r,a))}, +$S:985} +A.b4m.prototype={ +$1(a){this.a.f2(0)}, +$S:518} +A.b4n.prototype={ +$1(a){var s,r,q=this,p=null +if(a.a)switch(a.b.a){case 1:s=q.b.c +s=(s==null?p:s.f).c +if(s.a===B.zu.a){s=q.a +r=s.fx +r=r.e.b!==B.aV?r.gj(0):p +r.toString +s.i_(r/2)}q.a.y2=!1 +break +case 0:case 2:s=q.a +r=s.fr +r=r.e.b!==B.aV?r.gj(0):p +r.toString +if(r){s.f2(0) +s.y2=!0}break}else switch(a.b.a){case 1:s=q.a +r=s.fx +r=r.e.b!==B.aV?r.gj(0):p +r.toString +s.i_(Math.min(1,r*2)) +s.y2=!1 +break +case 0:s=q.a +if(s.y2)s.fM(0) +s.y2=!1 +break +case 2:q.a.y2=!1 +break}}, +$S:986} +A.b4V.prototype={ +$0(){var s=this.a.cx.e +return s==null?B.w:s}, +$S:381} +A.b4W.prototype={ +$0(){var s,r,q=this,p=q.a.$0(),o=q.b +if(o===0)A.C(new A.a4w()) +p=B.d.hf(p.a,o) +s=new A.aU(p) +r=q.c +if(pr.a?r:s}, +$S:381} +A.b4X.prototype={ +$1(a){var s,r,q=this,p=q.c +if((p.c&4)!==0){a.ao(0) +p=q.a +s=p.b +if(s!=null)s.ao(0) +p=p.a +if(p!=null)p.ao(0) +return}s=q.b +if((s.dx.b.c&4)!==0){a.ao(0) +s=q.a +r=s.b +if(r!=null)r.ao(0) +s=s.a +if(s!=null)s.ao(0) +p.aO(0) +return}r=s.fr +r=r.e.b!==B.aV?r.gj(0):null +r.toString +if(r)p.B(0,s.AP(s.cx))}, +$S:97} +A.b4R.prototype={ +$1(a){var s=this.a,r=s.c +if(r!=null)r.ao(0) +s.c=A.MM(this.b.$0(),this.c)}, +$S:988} +A.b4S.prototype={ +$2(a,b){}, +$S:23} +A.b4T.prototype={ +$1(a){var s=this.a +this.b.B(0,s.AP(s.cx))}, +$S:989} +A.b4U.prototype={ +$2(a,b){}, +$S:23} +A.b4Z.prototype={ +$1(a){var s=0,r=A.p(t.P),q +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:77} +A.b4o.prototype={ +$0(){if(this.a.bU!==this.b)throw A.d(A.EF("abort",null,"Loading interrupted",null))}, +$S:0} +A.b4p.prototype={ +$1(a){return a.a}, +$S:990} +A.b4q.prototype={ +$1(a){return a!==B.pF}, +$S:991} +A.b4Y.prototype={ +$1(a){var s=0,r=A.p(t.P),q +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:77} +A.b4y.prototype={ +$0(){return this.a.bU!==this.b}, +$S:3} +A.b4r.prototype={ +$0(){if(!this.a.$0())return!1 +if(!this.b)return!0 +var s=new A.ok("abort","Loading interrupted",null,null) +this.c.jh(s) +throw A.d(s)}, +$S:3} +A.b4u.prototype={ +$1(a){var s=this.a +s.z=a.gacO().eB(new A.b4w(s)) +s.y=a.gYT().rN(new A.b4x(s,this.b),s.cy.gq4())}, +$S:992} +A.b4w.prototype={ +$1(a){var s,r=this,q=a.a +if(q!=null){s=r.a.fr +s=s.e.b!==B.aV?s.gj(0):null +s.toString +s=q!==s}else s=!1 +if(s){q.toString +r.a.fr.B(0,q)}q=a.b +if(q!=null)r.a.fx.B(0,q) +q=a.c +if(q!=null)r.a.fy.B(0,q) +q=a.d +if(q!=null)r.a.go.B(0,q) +q=a.e +if(q!=null)r.a.p4.B(0,B.aOo[q.a]) +q=a.f +if(q!=null)r.a.R8.B(0,q!==B.xh)}, +$S:993} +A.b4x.prototype={ +$1(a){var s,r,q,p,o,n,m=this,l=null,k=a.e,j=a.r +if(j==null)j=m.b +if(j!=null){s=m.a.k4 +r=s.e +if((r.b!==B.aV?s.gj(0):l)!=null){s=r.b!==B.aV?s.gj(0):l +s.toString +s=j"))) +case 9:m=e +h=n.d +if(h.$0()){q=m +s=1 +break}a.r=m +s=a0?12:13 +break +case 12:if(n.e!=null){a0=a.cx.bsm(B.pF,n.f) +a.cx=a0 +a.cy.B(0,a0)}a0=a.fr +a0=a0.e.b!==B.aV?a0.gj(0):null +a0.toString +g=a.fx +g=g.e.b!==B.aV?g.gj(0):null +g.toString +s=14 +return A.i(m.i_(new A.aEp(g)),$async$$0) +case 14:if(h.$0()){q=m +s=1 +break}g=a.fy +g=g.e.b!==B.aV?g.gj(0):null +g.toString +s=15 +return A.i(m.qZ(new A.bFr(g)),$async$$0) +case 15:if(h.$0()){q=m +s=1 +break}p=17 +g=a.go +g=g.e.b!==B.aV?g.gj(0):null +g.toString +s=20 +return A.i(m.xj(new A.bFo(g)),$async$$0) +case 20:p=2 +s=19 +break +case 17:p=16 +a1=o +s=19 +break +case 16:s=2 +break +case 19:if(h.$0()){q=m +s=1 +break}p=22 +g=a.id +g=g.e.b!==B.aV?g.gj(0):null +g.toString +s=25 +return A.i(m.xl(new A.bFq(g)),$async$$0) +case 25:p=2 +s=24 +break +case 22:p=21 +a2=o +s=24 +break +case 21:s=2 +break +case 24:if(h.$0()){q=m +s=1 +break}g=a.p4 +g=g.e.b!==B.aV?g.gj(0):null +g.toString +s=26 +return A.i(m.lp(new A.aEo(B.vI[g.a])),$async$$0) +case 26:if(h.$0()){q=m +s=1 +break}g=a.R8 +g=g.e.b!==B.aV?g.gj(0):null +g.toString +g=g?B.xi:B.xh +s=27 +return A.i(m.qY(new A.bFp(g)),$async$$0) +case 27:if(h.$0()){q=m +s=1 +break}g=a.CW.gaiL(),f=g.length,c=0 +case 28:if(!(c"))}, +fB(a,b){return this.bA7(0,b)}, +bA7(a,b){var s=0,r=A.p(t.E4),q,p=this,o +var $async$fB=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=b.c +p.d=o==null?0:o +o=b.b +p.c=o==null?B.w:o +p.aiW() +q=new A.E1(p.am3(p.d)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fB,r)}, +mr(a,b){return this.bE8(0,b)}, +bE8(a,b){var s=0,r=A.p(t.hC),q +var $async$mr=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q=new A.L2() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$mr,r)}, +iH(a,b){return this.bDP(0,b)}, +bDP(a,b){var s=0,r=A.p(t.GJ),q +var $async$iH=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q=new A.KV() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$iH,r)}, +i_(a){return this.aLS(a)}, +aLS(a){var s=0,r=A.p(t.KE),q +var $async$i_=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.UZ() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$i_,r)}, +qZ(a){return this.aLD(a)}, +aLD(a){var s=0,r=A.p(t.HP),q +var $async$qZ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.UY() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qZ,r)}, +xj(a){return this.aLi(a)}, +aLi(a){var s=0,r=A.p(t.CN),q +var $async$xj=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.a9q() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$xj,r)}, +xl(a){return this.aLA(a)}, +aLA(a){var s=0,r=A.p(t.uQ),q +var $async$xl=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.a9r() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$xl,r)}, +lp(a){return this.aL8(a)}, +aL8(a){var s=0,r=A.p(t._K),q +var $async$lp=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.UW() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$lp,r)}, +qY(a){return this.aLy(a)}, +aLy(a){var s=0,r=A.p(t.BU),q +var $async$qY=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.UX() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qY,r)}, +kF(a,b){return this.aKu(0,b)}, +aKu(a,b){var s=0,r=A.p(t.cx),q,p=this,o +var $async$kF=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=b.a +p.c=o==null?B.w:o +o=b.b +p.d=o==null?p.d:o +p.aiW() +q=new A.UL() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$kF,r)}, +on(a){return this.bu7(a)}, +bu7(a){var s=0,r=A.p(t.UL),q +var $async$on=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=new A.a1V() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$on,r)}} +A.c1X.prototype={ +$1(a){return this.a.e=a}, +$S:997} +A.aQg.prototype={} +A.b4l.prototype={ +gaiL(){var s=A.R(this.a,!0,t.Tz) +B.b.L(s,this.b) +return s}, +q_(a){var s,r,q +for(s=this.gaiL(),r=s.length,q=0;q>"),q=this.d,p=A.X(q).h("O<1,aN<@,@>>"),o=t.z +return A.a1(["id",this.a,"audioLoadConfiguration",null,"androidAudioEffects",A.R(new A.O(s,new A.bnt(),r),!0,r.h("aa.E")),"darwinAudioEffects",A.R(new A.O(q,new A.bnu(),p),!0,p.h("aa.E")),"androidOffloadSchedulingEnabled",!1],o,o)}} +A.bnt.prototype={ +$1(a){return a.qK()}, +$S:382} +A.bnu.prototype={ +$1(a){return a.qK()}, +$S:382} +A.bdD.prototype={} +A.a1U.prototype={} +A.bdC.prototype={} +A.a1T.prototype={} +A.bpg.prototype={} +A.E1.prototype={} +A.bxJ.prototype={} +A.L2.prototype={} +A.bx_.prototype={} +A.KV.prototype={} +A.aEp.prototype={} +A.UZ.prototype={} +A.bFr.prototype={} +A.UY.prototype={} +A.bFo.prototype={} +A.a9q.prototype={} +A.bFq.prototype={} +A.a9r.prototype={} +A.aEo.prototype={} +A.UW.prototype={} +A.Su.prototype={ +H(){return"LoopModeMessage."+this.b}} +A.bFp.prototype={} +A.UX.prototype={} +A.a9z.prototype={ +H(){return"ShuffleModeMessage."+this.b}} +A.bE9.prototype={} +A.UL.prototype={} +A.asR.prototype={} +A.a1V.prototype={} +A.b52.prototype={} +A.bno.prototype={} +A.bNQ.prototype={} +A.aC1.prototype={ +qK(){var s=t.z +return A.a1(["type","progressive","id",this.a,"uri",this.d,"headers",this.e,"options",null],s,s)}} +A.as1.prototype={ +qK(){var s=t.z +return A.a1(["type","dash","id",this.a,"uri",this.d,"headers",this.e],s,s)}} +A.avp.prototype={ +qK(){var s=t.z +return A.a1(["type","hls","id",this.a,"uri",this.d,"headers",this.e],s,s)}} +A.bsA.prototype={ +pp(a){return this.byF(a)}, +byF(a){var s=0,r=A.p(t.p_),q,p +var $async$pp=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(B.wB.fi("init",a.qK(),!1,t.H),$async$pp) +case 3:p=a.a +q=new A.azy(new A.hZ("com.ryanheise.just_audio.methods."+p,B.b0,null),p) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$pp,r)}, +yO(a){return this.bud(a)}, +bud(a){var s=0,r=A.p(t.Ud),q,p +var $async$yO=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=t.z +s=3 +return A.i(B.wB.fi("disposePlayer",A.a1(["id",a.a],p,p),!1,t.f),$async$yO) +case 3:c.toString +q=new A.a1U() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$yO,r)}, +yN(a){return this.bu9(a)}, +bu9(a){var s=0,r=A.p(t.tw),q,p +var $async$yN=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=t.z +s=3 +return A.i(B.wB.fi("disposeAllPlayers",A.N(p,p),!1,t.f),$async$yN) +case 3:c.toString +q=new A.a1T() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$yN,r)}} +A.azy.prototype={ +gYT(){var s=new A.QS("com.ryanheise.just_audio.events."+this.a).Ze(),r=A.z(s).h("tC>") +return new A.ft(new A.bsu(),new A.tC(s,r),r.h("ft"))}, +gacO(){var s=new A.QS("com.ryanheise.just_audio.data."+this.a).Ze() +return new A.ft(new A.bsv(),s,A.z(s).h("ft"))}, +fB(a,b){return this.bA3(0,b)}, +bA3(a,b){var s=0,r=A.p(t.E4),q,p=this,o,n,m +var $async$fB=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:n=b.a.qK() +m=b.b +m=m==null?null:m.a +o=t.z +s=3 +return A.i(p.b.fi("load",A.a1(["audioSource",n,"initialPosition",m,"initialIndex",b.c],o,o),!1,t.f),$async$fB) +case 3:o=d +o.toString +n=J.ao(o) +q=new A.E1(n.i(o,"duration")==null||A.bZ(n.i(o,"duration"))<0?null:A.cp(0,0,A.bZ(n.i(o,"duration")),0,0,0)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fB,r)}, +mr(a,b){return this.bE6(0,b)}, +bE6(a,b){var s=0,r=A.p(t.hC),q,p=this,o +var $async$mr=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("play",A.N(o,o),!1,t.f),$async$mr) +case 3:d.toString +q=new A.L2() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$mr,r)}, +iH(a,b){return this.bDN(0,b)}, +bDN(a,b){var s=0,r=A.p(t.GJ),q,p=this,o +var $async$iH=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("pause",A.N(o,o),!1,t.f),$async$iH) +case 3:d.toString +q=new A.KV() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$iH,r)}, +i_(a){return this.aLP(a)}, +aLP(a){var s=0,r=A.p(t.KE),q,p=this,o +var $async$i_=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("setVolume",A.a1(["volume",a.a],o,o),!1,t.f),$async$i_) +case 3:c.toString +q=new A.UZ() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$i_,r)}, +qZ(a){return this.aLC(a)}, +aLC(a){var s=0,r=A.p(t.HP),q,p=this,o +var $async$qZ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("setSpeed",A.a1(["speed",a.a],o,o),!1,t.f),$async$qZ) +case 3:c.toString +q=new A.UY() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qZ,r)}, +xj(a){return this.aLh(a)}, +aLh(a){var s=0,r=A.p(t.CN),q,p=this,o +var $async$xj=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("setPitch",A.a1(["pitch",a.a],o,o),!1,t.f),$async$xj) +case 3:c.toString +q=new A.a9q() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$xj,r)}, +xl(a){return this.aLz(a)}, +aLz(a){var s=0,r=A.p(t.uQ),q,p=this,o +var $async$xl=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("setSkipSilence",A.a1(["enabled",a.a],o,o),!1,t.f),$async$xl) +case 3:c.toString +q=new A.a9r() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$xl,r)}, +lp(a){return this.aL7(a)}, +aL7(a){var s=0,r=A.p(t._K),q,p=this,o +var $async$lp=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("setLoopMode",A.a1(["loopMode",a.a.a],o,o),!1,t.f),$async$lp) +case 3:c.toString +q=new A.UW() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$lp,r)}, +qY(a){return this.aLx(a)}, +aLx(a){var s=0,r=A.p(t.BU),q,p=this,o +var $async$qY=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("setShuffleMode",A.a1(["shuffleMode",a.a.a],o,o),!1,t.f),$async$qY) +case 3:c.toString +q=new A.UX() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qY,r)}, +kF(a,b){return this.aKs(0,b)}, +aKs(a,b){var s=0,r=A.p(t.cx),q,p=this,o,n +var $async$kF=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:n=b.a +n=n==null?null:n.a +o=t.z +s=3 +return A.i(p.b.fi("seek",A.a1(["position",n,"index",b.b],o,o),!1,t.f),$async$kF) +case 3:d.toString +q=new A.UL() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$kF,r)}, +on(a){return this.bu5(a)}, +bu5(a){var s=0,r=A.p(t.UL),q,p=this,o +var $async$on=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.i(p.b.fi("dispose",A.N(o,o),!1,t.f),$async$on) +case 3:c.toString +q=new A.a1V() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$on,r)}} +A.bsu.prototype={ +$1(a){var s,r,q,p,o,n=null,m="duration",l="icyMetadata",k=J.ao(a),j=B.aLk[A.bZ(k.i(a,"processingState"))],i=A.vF(A.bZ(k.i(a,"updateTime")),!1),h=A.cp(0,0,A.bZ(k.i(a,"updatePosition")),0,0,0),g=A.cp(0,0,A.bZ(k.i(a,"bufferedPosition")),0,0,0),f=k.i(a,m)==null||A.bZ(k.i(a,m))<0?n:A.cp(0,0,A.bZ(k.i(a,m)),0,0,0) +if(k.i(a,l)==null)s=n +else{s=t.f +r=s.a(k.i(a,l)) +q=J.ao(r) +if(q.i(r,"info")==null)p=n +else{p=s.a(q.i(r,"info")) +o=J.ao(p) +p=new A.bmp(A.bw(o.i(p,"title")),A.bw(o.i(p,"url")))}if(q.i(r,"headers")==null)s=n +else{s=s.a(q.i(r,"headers")) +r=J.ao(s) +s=new A.bmo(A.fO(r.i(s,"bitrate")),A.bw(r.i(s,"genre")),A.bw(r.i(s,"name")),A.fO(r.i(s,"metadataInterval")),A.bw(r.i(s,"url")),A.lk(r.i(s,"isPublic")))}s=new A.bmq(p,s)}return new A.rO(j,i,h,g,f,s,A.fO(k.i(a,"currentIndex")),A.fO(k.i(a,"androidAudioSessionId")))}, +$S:999} +A.bsv.prototype={ +$1(a){var s,r,q,p,o,n,m="loopMode",l="shuffleMode" +t.f.a(a) +s=J.ao(a) +r=A.lk(s.i(a,"playing")) +q=A.nG(s.i(a,"volume")) +p=A.nG(s.i(a,"speed")) +o=A.nG(s.i(a,"pitch")) +n=s.i(a,m)!=null?B.vI[A.bZ(s.i(a,m))]:null +return new A.wy(r,q,p,o,n,s.i(a,l)!=null?B.aMr[A.bZ(s.i(a,l))]:null)}, +$S:1000} +A.bo7.prototype={ +pp(a){return this.byE(a)}, +byE(a){var s=0,r=A.p(t.p_),q,p=this,o,n,m +var $async$pp=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=p.a +m=a.a +if(n.aB(0,m))throw A.d(A.EF("error",null,"Platform player "+m+" already exists",null)) +o=A.d84(m) +n.n(0,m,o) +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$pp,r)}, +yO(a){return this.buc(a)}, +buc(a){var s=0,r=A.p(t.Ud),q,p=this,o,n,m +var $async$yO=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a +n=a.a +m=o.i(0,n) +m=m==null?null:m.t2(0) +s=3 +return A.i(t.uz.b(m)?m:A.dO(m,t.H),$async$yO) +case 3:o.F(0,n) +q=new A.a1U() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$yO,r)}, +yN(a){return this.bu8(a)}, +bu8(a){var s=0,r=A.p(t.tw),q,p=this,o,n,m,l +var $async$yN=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a,n=o.gbm(0),m=A.z(n),m=m.h("@<1>").a1(m.y[1]),n=new A.c4(J.au(n.a),n.b,m.h("c4<1,2>")),m=m.y[1] +case 3:if(!n.t()){s=4 +break}l=n.a +s=5 +return A.i((l==null?m.a(l):l).t2(0),$async$yN) +case 5:s=3 +break +case 4:o.V(0) +q=new A.a1T() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$yN,r)}} +A.JK.prototype={ +t2(a){var s=0,r=A.p(t.H),q=this +var $async$t2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.b.aO(0) +q.c.aO(0) +return A.n(null,r)}}) +return A.o($async$t2,r)}, +u4(){var s,r,q=this,p=null,o=Date.now(),n=q.d,m=q.gl2() +m=m==null?p:m.gb8(m) +if(m==null)m=B.w +s=q.gl2() +s=s==null?p:s.gbnE() +if(s==null)s=B.w +r=q.gl2() +r=r==null?p:r.gC2(r) +q.b.B(0,new A.rO(n,new A.am(o,!1),m,s,r,p,q.f,p))}} +A.avv.prototype={ +gaq5(){var s,r=this,q=r.y +if(q===$){s=new A.c9I(r.x,A.lN(null,null,null,!1,t.rW)) +s.EC() +r.y!==$&&A.a_() +r.y=s +q=s}return q}, +aUL(a){var s=this,r=s.x +B.eV.vN(r,"durationchange",new A.blw(s)) +B.eV.vN(r,"error",new A.blx(s)) +B.eV.vN(r,"ended",new A.bly(s)) +B.eV.vN(r,"timeupdate",new A.blz(s)) +B.eV.vN(r,"loadstart",new A.blA(s)) +B.eV.vN(r,"waiting",new A.blB(s)) +B.eV.vN(r,"stalled",new A.blC(s)) +B.eV.vN(r,"canplaythrough",new A.blD(s)) +B.eV.vN(r,"progress",new A.blE(s))}, +gbDf(a){var s,r,q,p,o=this.Q.gQb() +if(this.at)s=this.Q.gaMi() +else{r=o.length +q=J.d1(r,t.S) +for(p=0;p"))}, +gacO(){var s=this.c +return new A.dw(s,A.z(s).h("dw<1>"))}, +fB(a,b){return this.bA2(0,b)}, +bA2(a,b){var s=0,r=A.p(t.E4),q,p=this,o,n,m,l +var $async$fB=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:l=p.gl2() +if(l!=null)l.f2(0) +p.Q=p.aIm(b.a) +l=b.c +p.f=l==null?0:l +l=p.gl2() +l.toString +o=b.b +n=o==null +s=3 +return A.i(l.fB(0,n?null:B.d.aD(o.a,1000)),$async$fB) +case 3:m=d +s=!n?4:5 +break +case 4:l=p.gl2() +l.toString +s=6 +return A.i(l.kF(0,B.d.aD(o.a,1000)),$async$fB) +case 6:case 5:if(p.e)p.gl2().fM(0) +q=new A.E1(m) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fB,r)}, +XU(a,b){return this.bAl(a,b)}, +bAl(a,b){var s=0,r=A.p(t.z2),q,p=2,o,n=[],m=this,l,k,j,i,h,g +var $async$XU=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:m.d=B.WC +m.u4() +k=a.k(0) +j=m.x +i=j.src +i.toString +s=k!==i?3:4 +break +case 3:m.z=new A.aI(new A.ak($.at,t.LR),t.zh) +j.src=k +j.playbackRate=m.r +j.preload="auto" +j.load() +if(b!=null)j.currentTime=B.d.aD(b.a,1000)/1000 +p=6 +s=9 +return A.i(m.z.a,$async$XU) +case 9:n.push(8) +s=7 +break +case 6:p=5 +g=o +i=A.ag(g) +if(t.Qj.b(i)){l=i +i=l.code +i.toString +i=A.EF(""+i,null,"Failed to load URL",null) +throw A.d(i)}else throw g +n.push(8) +s=7 +break +case 5:n=[2] +case 7:p=2 +m.z=null +s=n.pop() +break +case 8:case 4:m.d=B.x_ +m.u4() +j=j.duration +j.toString +q=isFinite(j)?A.cp(0,0,0,B.e.au(j*1000),0,0):null +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$XU,r)}, +mr(a,b){return this.bE5(0,b)}, +bE5(a,b){var s=0,r=A.p(t.hC),q,p=this +var $async$mr=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:if(p.e){q=new A.L2() +s=1 +break}p.e=!0 +s=3 +return A.i(p.xU(),$async$mr) +case 3:q=new A.L2() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$mr,r)}, +xU(){var s=0,r=A.p(t.H),q=this,p +var $async$xU=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.gl2() +p=p==null?null:p.fM(0) +s=2 +return A.i(t.uz.b(p)?p:A.dO(p,t.H),$async$xU) +case 2:return A.n(null,r)}}) +return A.o($async$xU,r)}, +iH(a,b){return this.bDM(0,b)}, +bDM(a,b){var s=0,r=A.p(t.GJ),q,p=this,o +var $async$iH=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:if(!p.e){q=new A.KV() +s=1 +break}p.e=!1 +o=p.gl2() +if(o!=null)o.f2(0) +q=new A.KV() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$iH,r)}, +i_(a){return this.aLO(a)}, +aLO(a){var s=0,r=A.p(t.KE),q,p=this +var $async$i_=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p.x.volume=a.a +q=new A.UZ() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$i_,r)}, +qZ(a){return this.aLB(a)}, +aLB(a){var s=0,r=A.p(t.HP),q,p=this,o +var $async$qZ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=a.a +p.r=o +p.x.playbackRate=o +q=new A.UY() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qZ,r)}, +lp(a){return this.aL6(a)}, +aL6(a){var s=0,r=A.p(t._K),q,p=this +var $async$lp=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p.as=a.a +q=new A.UW() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$lp,r)}, +qY(a){return this.aLw(a)}, +aLw(a){var s=0,r=A.p(t.BU),q,p=this +var $async$qY=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p.at=a.a===B.xi +q=new A.UX() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$qY,r)}, +kF(a,b){return this.aKr(0,b)}, +aKr(a,b){var s=0,r=A.p(t.cx),q,p=this,o +var $async$kF=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=b.a +o=o==null?null:B.d.aD(o.a,1000) +if(o==null)o=0 +s=3 +return A.i(p.Bd(o,b.b),$async$kF) +case 3:q=new A.UL() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$kF,r)}, +Bd(a,b){return this.bhb(a,b)}, +bhb(a,b){var s=0,r=A.p(t.H),q=this,p +var $async$Bd=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=b==null?q.f:b +s=p!=q.f?2:4 +break +case 2:q.gl2().f2(0) +q.f=p +s=5 +return A.i(q.gl2().fB(0,a),$async$Bd) +case 5:if(q.e)q.gl2().fM(0) +s=3 +break +case 4:s=6 +return A.i(q.gl2().kF(0,a),$async$Bd) +case 6:case 3:return A.n(null,r)}}) +return A.o($async$Bd,r)}, +t2(a){var s=0,r=A.p(t.H),q,p=this,o +var $async$t2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.gl2() +if(o!=null)o.f2(0) +o=p.x +o.removeAttribute("src") +o.load() +p.d=B.lF +p.u4() +s=3 +return A.i(p.aOR(0),$async$t2) +case 3:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$t2,r)}, +aIm(a){var s=a.a,r=this.ax,q=r.i(0,s) +if(q==null){q=this.bte(a) +r.n(0,s,q)}return q}, +bte(a){var s +if(a instanceof A.aC1)return new A.aC2(A.di(a.d,0,null),a.e,this,a.a) +else if(a instanceof A.as1)return new A.as2(A.di(a.d,0,null),a.e,this,a.a) +else if(a instanceof A.avp)return new A.avq(A.di(a.d,0,null),a.e,this,a.a) +else{s=A.dA("Unknown AudioSource type: "+a.k(0)) +throw A.d(s)}}} +A.blw.prototype={ +$1(a){var s=this.a,r=s.z +if(r!=null)r.fw(0) +s.u4()}, +$S:85} +A.blx.prototype={ +$1(a){var s=this.a,r=s.z +if(r!=null){s=s.x.error +s.toString +r.jh(s)}}, +$S:85} +A.bly.prototype={ +$1(a){return this.aHt(a)}, +aHt(a){var s=0,r=A.p(t.P),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a.gl2() +if(p!=null)p.fw(0) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:1002} +A.blz.prototype={ +$1(a){var s=this.a,r=s.gl2() +if(r!=null){s=s.x.currentTime +s.toString +r.adz(s)}}, +$S:85} +A.blA.prototype={ +$1(a){var s=this.a +s.d=B.pD +s.u4()}, +$S:85} +A.blB.prototype={ +$1(a){var s=this.a +s.d=B.pD +s.u4()}, +$S:85} +A.blC.prototype={ +$1(a){var s=this.a +s.d=B.pD +s.u4()}, +$S:85} +A.blD.prototype={ +$1(a){var s=this.a +s.x.playbackRate=s.r +s.d=B.x_ +s.u4()}, +$S:85} +A.blE.prototype={ +$1(a){this.a.u4()}, +$S:85} +A.xX.prototype={} +A.z7.prototype={ +adz(a){return this.bGO(a)}, +bGO(a){var s=0,r=A.p(t.H) +var $async$adz=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$adz,r)}, +k(a){return A.I(this).k(0)}} +A.aHe.prototype={ +gQb(){return A.a([this],t.wD)}, +gaMi(){return A.a([0],t.t)}, +fB(a,b){return this.bA4(0,b)}, +hk(a){return this.fB(0,null)}, +bA4(a,b){var s=0,r=A.p(t.z2),q,p=this,o +var $async$fB=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p.y=b +o=b==null +p.r=(o?0:b)/1000 +o=!o?A.cp(0,0,0,b,0,0):null +s=3 +return A.i(p.a.XU(p.e,o),$async$fB) +case 3:o=d +p.w=o +p.y=null +q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$fB,r)}, +fM(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$fM=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +o=q.r +o.toString +p.x.currentTime=o +s=2 +return A.i(p.gaq5().fM(0),$async$fM) +case 2:p=new A.ak($.at,t.LR) +q.x=new A.aI(p,t.zh) +s=3 +return A.i(p,$async$fM) +case 3:q.x=null +return A.n(null,r)}}) +return A.o($async$fM,r)}, +f2(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$f2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +o=p.x.currentTime +o.toString +q.r=o +p.gaq5().f2(0) +q.anP() +return A.n(null,r)}}) +return A.o($async$f2,r)}, +kF(a,b){return this.aKt(0,b)}, +aKt(a,b){var s=0,r=A.p(t.H),q=this,p +var $async$kF=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=b/1000 +q.r=p +q.a.x.currentTime=p +return A.n(null,r)}}) +return A.o($async$kF,r)}, +fw(a){var s=0,r=A.p(t.H),q=this +var $async$fw=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.anP() +q.a.zF(0) +return A.n(null,r)}}) +return A.o($async$fw,r)}, +anP(){var s=this.x +if((s==null?null:(s.a.a&30)!==0)===!1)s.fw(0)}, +gC2(a){return this.w}, +gb8(a){var s=this.y +if(s!=null)return A.cp(0,0,0,s,0,0) +s=this.a.x.currentTime +s.toString +return A.cp(0,0,0,B.e.au(s*1000),0,0)}, +gbnE(){var s=this.a.x.buffered,r=s.length +r.toString +if(r>0){s=s.end(r-1) +s.toString +return A.cp(0,0,0,B.e.au(s*1000),0,0)}else return B.w}} +A.aC2.prototype={} +A.as2.prototype={} +A.avq.prototype={} +A.Y8.prototype={} +A.c9I.prototype={ +fM(a){var s=0,r=A.p(t.H),q=this,p +var $async$fM=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=new A.ak($.at,t.W) +q.b.B(0,new A.Y8(!0,new A.aI(p,t.gR))) +s=2 +return A.i(p,$async$fM) +case 2:return A.n(null,r)}}) +return A.o($async$fM,r)}, +f2(a){var s=0,r=A.p(t.H),q=this,p +var $async$f2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=new A.ak($.at,t.W) +q.b.B(0,new A.Y8(!1,new A.aI(p,t.gR))) +s=2 +return A.i(p,$async$f2) +case 2:return A.n(null,r)}}) +return A.o($async$f2,r)}, +EC(){var s=0,r=A.p(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e +var $async$EC=A.l(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:f=n.b +f=new A.qZ(A.hz(new A.dI(f,A.z(f).h("dI<1>")),"stream",t.K),t.et) +q=2 +j=n.a,i=t.z +case 5:s=7 +return A.i(f.t(),$async$EC) +case 7:if(!b){s=6 +break}m=f.gK(0) +q=9 +s=m.a?12:14 +break +case 12:h=j.play() +h.toString +s=15 +return A.i(A.kA(h,i),$async$EC) +case 15:s=13 +break +case 14:j.pause() +case 13:h=m.b.a +if((h.a&30)!==0)A.C(A.a0("Future already completed")) +h.nz(null) +q=2 +s=11 +break +case 9:q=8 +e=p +l=A.ag(e) +k=A.aD(e) +m.b.iy(l,k) +s=11 +break +case 8:s=2 +break +case 11:s=5 +break +case 6:o.push(4) +s=3 +break +case 2:o=[1] +case 3:q=1 +s=16 +return A.i(f.ao(0),$async$EC) +case 16:s=o.pop() +break +case 4:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$EC,r)}} +A.a1J.prototype={} +A.ax8.prototype={} +A.bpn.prototype={ +kQ(){var s=0,r=A.p(t.H) +var $async$kQ=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$kQ,r)}} +A.lA.prototype={ +H(){return"Level."+this.b}} +A.bpo.prototype={ +kQ(){var s=0,r=A.p(t.H) +var $async$kQ=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$kQ,r)}} +A.bpp.prototype={ +kQ(){var s=0,r=A.p(t.H) +var $async$kQ=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:return A.n(null,r)}}) +return A.o($async$kQ,r)}} +A.bpr.prototype={ +ab8(a){this.aBX(B.EH,a,null,null,null)}, +aBX(a,b,c,d,e){var s,r,q,p +if(a===B.EF)throw A.d(A.aM("Log events cannot have Level.all",null)) +else if(a===B.EG||a===B.EJ)throw A.d(A.aM("Log events cannot have Level.off",null)) +s=Date.now() +r=new A.ax8(a,b,c,d,new A.am(s,!1)) +for(s=A.dy($.cxS,$.cxS.r,A.z($.cxS).c),q=s.$ti.c;s.t();){p=s.d;(p==null?q.a(p):p).$1(r)}}} +A.bpt.prototype={ +$0(){return new A.a1J()}, +$S:1003} +A.bpu.prototype={ +$0(){return new A.a0W()}, +$S:1004} +A.a0W.prototype={} +A.bye.prototype={ +aV2(a,b,c,d,e,f,g,h,i,j,k,l){var s,r,q,p,o,n,m=this +if($.cL1==null)$.cL1=new A.am(Date.now(),!1) +s=new A.bu("") +r=new A.bu("") +for(q=0,p="",o="";q<119;++q){p+="\u2500" +s.a=p +o+="\u2504" +r.a=o}m.Q="\u250c"+s.k(0) +m.as="\u251c"+r.k(0) +m.at="\u2514"+s.k(0) +p=A.N(t.KM,t.y) +m.z!==$&&A.ck() +m.z=p +for(n=0;n<11;++n)p.n(0,B.aGj[n],!0) +B.QE.aE(0,new A.byf(m))}} +A.byf.prototype={ +$2(a,b){var s,r=this.a.z +r===$&&A.b() +s=!b +r.n(0,a,s) +return s}, +$S:1005} +A.wg.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.wg&&this.b===b.b}, +bn(a,b){return this.b-b.b}, +gv(a){return this.b}, +k(a){return this.a}, +$icT:1} +A.bpq.prototype={ +k(a){return"["+this.a.a+"] "+this.d+": "+this.b}} +A.Sp.prototype={ +gaA5(){var s=this.b,r=s==null?null:s.a.length!==0,q=this.a +return r===!0?s.gaA5()+"."+q:q}, +gbzW(a){var s,r +if(this.b==null){s=this.c +s.toString +r=s}else{s=$.cCB().c +s.toString +r=s}return r}, +lc(a,b,c,d){var s,r,q,p,o,n=this,m=a.b +if(m>=n.gbzW(0).b){if(t._8.b(b))b=t.In.a(b).$0() +s=typeof b=="string"?b:J.cw(b) +if(d==null&&m>=2000){d=A.pw() +if(c==null)c="autogenerated stack trace for "+a.k(0)+" "+s}r=$.at +m=n.gaA5() +q=Date.now() +p=$.cJv +$.cJv=p+1 +o=new A.bpq(a,s,m,new A.am(q,!1),p,c,d,r) +if(n.b==null)n.aqg(o) +else $.cCB().aqg(o)}}, +aqg(a){var s=this.f +return s==null?null:s.B(0,a)}} +A.bps.prototype={ +$0(){var s,r,q,p=this.a +if(B.c.aC(p,"."))A.C(A.aM("name shouldn't start with a '.'",null)) +if(B.c.eV(p,"."))A.C(A.aM("name shouldn't end with a '.'",null)) +s=B.c.na(p,".") +if(s===-1)r=p!==""?A.zg(""):null +else{r=A.zg(B.c.R(p,0,s)) +p=B.c.b0(p,s+1)}q=new A.Sp(p,r,A.N(t.N,t.JW)) +if(r==null)q.c=B.l2 +else r.d.n(0,p,q) +return q}, +$S:1006} +A.aor.prototype={} +A.Ro.prototype={ +l(a,b){var s,r +if(b==null)return!1 +if(!(b instanceof A.Ro))return!1 +s=b.d +s===$&&A.b() +r=this.d +r===$&&A.b() +return s===r}, +gv(a){var s=this.d +s===$&&A.b() +return B.d.gv(s)}, +k(a){var s,r,q=this.a +q===$&&A.b() +q=B.d.k(B.e.aF(q)) +s=this.b +s===$&&A.b() +s=B.e.aF(s) +r=this.c +r===$&&A.b() +return"H"+q+" C"+s+" T"+B.d.k(B.e.aF(r))}} +A.bOw.prototype={} +A.apV.prototype={ +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.apV&&s.a.l(0,b.a)&&s.b.l(0,b.b)&&s.c.l(0,b.c)&&s.d.l(0,b.d)&&s.e.l(0,b.e)&&s.f.l(0,b.f)}, +gv(a){var s=this +return A.ad(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,B.a)}, +k(a){var s=this +return"primary: "+s.a.k(0)+"\nsecondary: "+s.b.k(0)+"\ntertiary: "+s.c.k(0)+"\nneutral: "+s.d.k(0)+"\nneutralVariant: "+s.e.k(0)+"\nerror: "+s.f.k(0)+"\n"}} +A.AE.prototype={ +gFv(){var s=t.hv +return A.R(new A.O(B.aKI,new A.bN8(this),s),!0,s.h("aa.E"))}, +d3(a,b){var s=this.c +if(b>=90)s=Math.min(s,40) +return this.d.cP(0,b,new A.bN9(this,s,b))}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.AE){s=!0 +if(s)return this.b===b.b&&this.c===b.c +else return new A.kk(B.cZ,t.wO).h4(this.gFv(),b.gFv())}return!1}, +gv(a){var s=A.ad(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,B.a) +return s}, +k(a){return"TonalPalette.of("+A.r(this.b)+", "+A.r(this.c)+")"}} +A.bN8.prototype={ +$1(a){return this.a.d3(0,a)}, +$S:36} +A.bN9.prototype={ +$0(){var s=A.ava(A.avb(this.a.b,this.b,this.c)).d +s===$&&A.b() +return s}, +$S:90} +A.bDy.prototype={} +A.fK.prototype={ +mm(a,b){var s,r,q,p,o=this.b,n=o.length +if(b.length>"))}return s}, +apI(a){var s,r,q,p,o,n +if(a==null)return null +s=J.ao(a) +r=s.i(a,"data") +if(r==null||!t.Dn.b(r))return null +q=J.ie(r,t.pE) +if(A.bL()===B.cL){s=A.z(q).h("O") +return new A.lr(A.R(new A.O(q,new A.bsC(),s),!0,s.h("aa.E")),null,B.A)}if(A.bL()===B.b4||A.bL()===B.aM){p=A.nG(s.i(a,"width")) +o=A.nG(s.i(a,"height")) +n=A.z(q).h("O") +n=A.R(new A.O(q,A.dp3(),n),!0,n.h("aa.E")) +s=t.nc.a(s.i(a,"image")) +return new A.lr(n,s,p==null||o==null?B.A:new A.V(p,o))}throw A.d(B.b6f)}, +KO(){var s=0,r=A.p(t.H),q,p=2,o,n,m,l,k,j,i,h +var $async$KO=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(B.hU.fi("state",null,!1,t.S),$async$KO) +case 7:k=b +n=A.dab(k==null?0:k) +case 8:switch(n){case B.RF:s=10 +break +case B.RG:s=11 +break +case B.RE:s=12 +break +default:s=9 +break}break +case 10:s=1 +break +case 11:case 12:s=13 +return A.i(B.hU.fi("request",null,!1,t.y),$async$KO) +case 13:j=b +m=j==null?!1:j +if(!m)throw A.d(B.b6d) +s=9 +break +case 9:p=2 +s=6 +break +case 4:p=3 +h=o +k=A.ag(h) +if(k instanceof A.ok){l=k +throw A.d(A.azK(B.fc,A.azJ(l.a,l.c,l.b)))}else throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$KO,r)}, +gavQ(){var s=this.gaa8(),r=s.$ti.h("oX") +return new A.ft(new A.bsD(this),new A.oX(new A.bsE(),s,r),r.h("ft"))}, +gaFL(){var s=this.gaa8(),r=s.$ti.h("oX") +return new A.ft(new A.bsF(),new A.oX(new A.bsG(),s,r),r.h("ft"))}, +gaH4(){var s=this.gaa8(),r=s.$ti.h("oX") +return new A.ft(new A.bsH(),new A.oX(new A.bsI(),s,r),r.h("ft"))}, +Lx(a){return this.bmF(a)}, +bmF(a){var s=0,r=A.p(t.El),q,p=this +var $async$Lx=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(B.hU.GP("analyzeImage",a,t.N,t.X),$async$Lx) +case 3:q=p.apI(c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Lx,r)}, +aw9(){var s=this.d +if(s==null)return B.al +return new A.aGk(s,null)}, +IQ(a){return this.aLE(a)}, +aLE(a){var s=0,r=A.p(t.H),q +var $async$IQ=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(a===B.im){s=1 +break}s=3 +return A.i(B.hU.fi("torch",a.c,!1,t.H),$async$IQ) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$IQ,r)}, +o4(a,b){return this.aN_(0,b)}, +aN_(a,a0){var s=0,r=A.p(t.jS),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$o4=A.l(function(a1,a2){if(a1===1){o=a2 +s=p}while(true)switch(s){case 0:if(n.d!=null)throw A.d(B.RI) +s=3 +return A.i(n.KO(),$async$o4) +case 3:m=null +p=5 +s=8 +return A.i(B.hU.GP("start",a0.qK(),t.N,t.X),$async$o4) +case 8:m=a2 +p=2 +s=7 +break +case 5:p=4 +b=o +j=A.ag(b) +if(j instanceof A.ok){l=j +throw A.d(A.azK(B.fc,A.azJ(l.a,l.c,l.b)))}else throw b +s=7 +break +case 4:s=2 +break +case 7:if(m==null)throw A.d(B.b6a) +i=A.fO(J.aS(m,"textureId")) +if(i==null)throw A.d(B.b6b) +n.d=i +h=A.fO(J.aS(m,"numberOfCameras")) +j=A.lk(J.aS(m,"torchable")) +g=t.J1.a(J.aS(m,"size")) +f=g==null +e=A.nG(f?null:J.aS(g,"width")) +d=A.nG(f?null:J.aS(g,"height")) +c=e==null||d==null?B.A:new A.V(e,d) +q=new A.a5W(j===!0,h,c) +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$o4,r)}, +e3(a){var s=0,r=A.p(t.H),q,p=this +var $async$e3=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.d==null){s=1 +break}p.d=null +s=3 +return A.i(B.hU.fi("stop",null,!1,t.H),$async$e3) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$e3,r)}, +v2(a){return this.bHD(a)}, +bHD(a){var s=0,r=A.p(t.H),q,p=this +var $async$v2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.d==null){s=1 +break}s=3 +return A.i(B.hU.fi("updateScanWindow",A.a1(["rect",a!=null?A.a([a.a,a.b,a.c,a.d],t.n):null],t.N,t.j6),!1,t.H),$async$v2) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$v2,r)}, +m(){var s=0,r=A.p(t.H),q=this +var $async$m=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.e3(0),$async$m) +case 2:return A.n(null,r)}}) +return A.o($async$m,r)}} +A.bsC.prototype={ +$1(a){var s=J.ao(a),r=A.bw(s.i(a,"payload")) +s=A.fO(s.i(a,"symbology")) +return new A.vp(A.cF7(s==null?-1:s),r,B.zI)}, +$S:384} +A.bsE.prototype={ +$1(a){return J.q(J.aS(a,"name"),"barcode")}, +$S:233} +A.bsD.prototype={ +$1(a){return this.a.apI(a)}, +$S:1009} +A.bsG.prototype={ +$1(a){return J.q(J.aS(a,"name"),"torchState")}, +$S:233} +A.bsF.prototype={ +$1(a){var s=A.fO(J.aS(a,"data")) +return A.dfQ(s==null?0:s)}, +$S:1010} +A.bsI.prototype={ +$1(a){return J.q(J.aS(a,"name"),"zoomScaleState")}, +$S:233} +A.bsH.prototype={ +$1(a){var s=A.nG(J.aS(a,"data")) +return s==null?0:s}, +$S:1011} +A.a5T.prototype={ +J(){return new A.aRS(B.f)}} +A.aRS.prototype={ +b9R(a,b){this.a.toString +return}, +q(a){return new A.hc(this.a.c,new A.c7k(this),null,null,t.OC)}, +m(){this.ap() +this.a.c.v2(null)}} +A.c7k.prototype={ +$3(a,b,c){if(!b.d){this.a.a.toString +return B.ag0}if(b.c!=null){this.a.a.toString +return B.ag1}return new A.fV(new A.c7j(this.a,b),null)}, +$S:1012} +A.c7j.prototype={ +$2(a,b){var s,r,q,p=this.a,o=this.b +p.b9R(o,b) +p=p.a +p.toString +s=o.f +o=A.Z(1/0,b.a,b.b) +r=A.Z(1/0,b.c,b.d) +q=A.p3(A.Mi(A.cIe(B.C,new A.ba(s.a,s.b,$.xF().aw9(),null),B.i,p.e),new A.V(o,r)),B.k,null) +return q}, +$S:52} +A.a5V.prototype={ +bhW(){var s=this +s.ch=$.xF().gavQ().eB(new A.bta(s)) +s.CW=$.xF().gaFL().eB(new A.btb(s)) +s.cx=$.xF().gaH4().eB(new A.btc(s))}, +asU(){if(!this.a.d)throw A.d(B.b6g) +if(this.cy)throw A.d(B.RJ)}, +J4(a,b){return this.aN0(0,b)}, +j9(a){return this.J4(0,null)}, +aN0(a,b){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$J4=A.l(function(c,a0){if(c===1){o=a0 +s=p}while(true)switch(s){case 0:if(n.cy)throw A.d(B.RJ) +i=n.a +h=i.c +if((h==null?null:h.a)===B.pm){s=1 +break}if(i.e){s=1 +break}m=b==null?n.z:b +l=new A.bH9(m,null,B.ah4,n.y,n.Q,!1,!1) +p=4 +n.bhW() +s=7 +return A.i($.xF().o4(0,l),$async$J4) +case 7:k=a0 +i=n.a +h=k.b +g=k.c +f=k.a?null:B.im +n.sj(0,i.bsD(h,m,!0,!0,g,f)) +p=2 +s=6 +break +case 4:p=3 +d=o +i=A.ag(d) +if(i instanceof A.of){j=i +if(!n.cy)n.sj(0,n.a.bsH(n.z,j,!0,!1,B.A,B.im,1))}else if(!(i instanceof A.a6W))throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$J4,r)}, +e3(a){var s=0,r=A.p(t.H),q,p=this,o +var $async$e3=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a +if(!o.d||!o.e||p.cy){s=1 +break}o=p.ch +if(o!=null)o.ao(0) +o=p.CW +if(o!=null)o.ao(0) +o=p.cx +if(o!=null)o.ao(0) +p.cx=p.CW=p.ch=null +p.sj(0,p.a.bsd(!1,B.qp)) +s=3 +return A.i($.xF().e3(0),$async$e3) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$e3,r)}, +Jj(){var s=0,r=A.p(t.H),q,p=this,o +var $async$Jj=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.asU() +o=p.a.a +if(o!=null&&o<2){s=1 +break}s=3 +return A.i(p.e3(0),$async$Jj) +case 3:s=4 +return A.i(p.J4(0,p.a.b===B.AS?B.rP:B.AS),$async$Jj) +case 4:case 1:return A.n(q,r)}}) +return A.o($async$Jj,r)}, +ZO(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$ZO=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.asU() +o=p.a +if(!o.e){s=1 +break}n=o.r +if(n===B.im){s=1 +break}m=n===B.qp?B.Zr:B.qp +s=3 +return A.i($.xF().IQ(m),$async$ZO) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$ZO,r)}, +v2(a){return this.bHE(a)}, +bHE(a){var s=0,r=A.p(t.H),q,p=this +var $async$v2=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(p.cy||!p.a.d){s=1 +break}s=3 +return A.i($.xF().v2(a),$async$v2) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$v2,r)}, +m(){var s=0,r=A.p(t.H),q,p=this +var $async$m=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if(p.cy){s=1 +break}p.cy=!0 +p.ay.aO(0) +p.f4() +s=3 +return A.i($.xF().m(),$async$m) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$m,r)}} +A.bta.prototype={ +$1(a){var s=this.a.ay +if((s.c&4)!==0||a==null)return +s.B(0,a)}, +$S:1013} +A.btb.prototype={ +$1(a){var s=this.a +if(s.cy)return +s.sj(0,s.a.brY(a))}, +$S:1014} +A.btc.prototype={ +$1(a){var s=this.a +if(s.cy)return +s.sj(0,s.a.bs3(a))}, +$S:26} +A.of.prototype={ +k(a){var s,r=this.b,q=r==null +if(!q)s=r.c!=null +else s=!1 +if(s){r=q?null:r.c +return"MobileScannerException: code "+this.a.b+", message: "+A.r(r)}return"MobileScannerException: "+this.a.b}, +$ibP:1} +A.u7.prototype={} +A.a6W.prototype={$ibP:1} +A.btd.prototype={} +A.a5W.prototype={} +A.H4.prototype={} +A.vp.prototype={} +A.b5P.prototype={ +$1(a){var s=J.ao(a),r=s.i(a,"x") +r.toString +A.f0(r) +s=s.i(a,"y") +s.toString +return new A.j(r,A.f0(s))}, +$S:1015} +A.lr.prototype={} +A.cvy.prototype={} +A.cvP.prototype={} +A.cwA.prototype={} +A.QJ.prototype={} +A.auJ.prototype={} +A.rG.prototype={ +M3(a,b,c,d,e,f,g,h){var s=this,r=a==null?s.a:a,q=b==null?s.b:b,p=d==null?s.d:d,o=e==null?s.e:e,n=f==null?s.f:f,m=g==null?s.r:g +return new A.rG(r,q,c,p,o,n,m,h==null?s.w:h)}, +bsD(a,b,c,d,e,f){return this.M3(a,b,null,c,d,e,f,null)}, +bsH(a,b,c,d,e,f,g){return this.M3(null,a,b,c,d,e,f,g)}, +bs3(a){var s=null +return this.M3(s,s,s,s,s,s,s,a)}, +brY(a){var s=null +return this.M3(s,s,s,s,s,s,a,s)}, +bsd(a,b){var s=null +return this.M3(s,s,s,s,a,s,b,s)}} +A.cyq.prototype={} +A.Tw.prototype={} +A.cyR.prototype={} +A.bH9.prototype={ +qK(){var s,r,q=A.N(t.N,t.X) +q.n(0,"facing",this.a.c) +s=this.e +if(s.length!==0){r=A.X(s).h("O<1,h>") +q.n(0,"formats",A.R(new A.O(s,new A.bHa(),r),!0,r.h("aa.E")))}q.n(0,"returnImage",!1) +q.n(0,"speed",1) +q.n(0,"timeout",this.d) +q.n(0,"torch",!1) +return q}} +A.bHa.prototype={ +$1(a){return a.c}, +$S:1016} +A.czx.prototype={} +A.czG.prototype={} +A.b5M.prototype={ +Y5(a){return this.bAV(a)}, +bAV(a){var s=0,r=A.p(t.H),q,p,o,n,m,l +var $async$Y5=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:l=self +if(l.document.querySelector("script#mobile-scanner-barcode-reader")!=null){s=1 +break}p=new A.ak($.at,t.W) +o=new A.aI(p,t.gR) +n=l.document.createElement("script") +n.id="mobile-scanner-barcode-reader" +n.async=!0 +n.defer=!1 +n.type="application/javascript" +n.lang="javascript" +n.crossOrigin="anonymous" +n.src="https://unpkg.com/@zxing/library@0.19.1" +m=t.g +n.onload=m.a(A.cQ(new A.b5N(o))) +n.onerror=m.a(A.cQ(new A.b5O(o,n))) +l=l.document.head +l.toString +A.L(l,"appendChild",[n]) +s=3 +return A.i(p,$async$Y5) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$Y5,r)}} +A.b5N.prototype={ +$1(a){var s=this.a +if((s.a.a&30)===0)s.fw(0)}, +$S:234} +A.b5O.prototype={ +$1(a){var s,r=this.a +if((r.a.a&30)===0){s=self.document.head +s.toString +A.L(s,"removeChild",[this.b]) +r.jh(B.b6e)}}, +$S:234} +A.brA.prototype={ +aJl(a,b){var s,r,q,p,o=b.getVideoTracks(),n=t.Lc.b(o)?o:new A.ek(o,A.X(o).h("ek<1,aL>")) +if(n==null||J.h3(n))return null +s=J.jD(n) +r=s.getCapabilities!=null?s.getCapabilities():{} +q=s.getSettings() +p=r.facingMode +if(p!=null)o=J.h3(t.yp.b(p)?p:new A.ek(p,A.X(p).h("ek<1,f>"))) +else o=!0 +if(o)return{width:q.width,height:q.height} +return{width:q.width,height:q.height,facingMode:q.facingMode}}} +A.azL.prototype={ +gavQ(){var s=this.c +return new A.dw(s,A.z(s).h("dw<1>"))}, +gaFL(){var s=this.r,r=A.z(s).h("dw<1>") +return new A.ft(new A.btg(),new A.dw(s,r),r.h("ft"))}, +gaH4(){var s=this.r,r=A.z(s).h("dw<1>") +return new A.ft(new A.bth(),new A.dw(s,r),r.h("ft"))}, +aZA(a){var s,r=self,q=r.document.createElement("video"),p=q.style +p.height="100%" +p.width="100%" +p.objectFit="cover" +p.transformOrigin="center" +p.pointerEvents="none" +s=r.document.createElement("div") +s.style.objectFit="cover" +s.style.height="100%" +s.style.width="100%" +A.L(s,"append",[q]) +this.e=s +$.amv() +$.tq().D1("mobile-scanner-view-"+a,new A.bte(this),!0) +return q}, +b4E(a){var s=this.r +if((s.c&4)!==0)return +s.B(0,a)}, +b9M(a,b){var s,r,q,p,o=b.getVideoTracks() +o=t.Lc.b(o)?o:new A.ek(o,A.X(o).h("ek<1,aL>")) +s=J.ao(o) +if(s.gad(o))return +r=s.ga2(o) +q=r.getCapabilities!=null?r.getCapabilities():{} +p=q.facingMode +if(p!=null)s=J.h3(t.yp.b(p)?p:new A.ek(p,A.X(p).h("ek<1,f>"))) +else s=!0 +if(s)return +if(J.q(r.getSettings().facingMode,"user"))a.style.transform="scaleX(-1)"}, +T9(a){return this.bev(a)}, +bev(a){var s=0,r=A.p(t.lZ),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c +var $async$T9=A.l(function(b,a0){if(b===1){o=a0 +s=p}while(true)switch(s){case 0:d=self +if(d.window.navigator.mediaDevices==null)throw A.d(B.b6c) +g=d.window.navigator.mediaDevices.getSupportedConstraints() +m=null +if(!g.facingMode)m={video:!0} +else{switch(a.a){case 1:f="environment" +break +case 0:f="user" +break +default:f=null}m={video:{facingMode:f}}}p=4 +n.f=!0 +s=7 +return A.i(A.kA(A.L(d.window.navigator.mediaDevices,"getUserMedia",[m]),t.lZ),$async$T9) +case 7:l=a0 +n.f=!1 +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +c=o +d=A.ag(c) +if(t.lZ.b(d)){k=d +j=A.aD(c) +i=J.cw(k) +h=B.fc +if(J.tr(i,"NotFoundError")||J.tr(i,"NotSupportedError"))h=B.RH +else if(J.tr(i,"NotAllowedError"))h=B.pm +n.f=!1 +throw A.d(A.azK(h,A.azJ(null,J.cw(j),i)))}else throw c +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$T9,r)}, +Lx(a){throw A.d(A.aq("analyzeImage() is not supported on the web."))}, +aw9(){var s=this.b +s=s==null?null:s.gaBs() +if(s===!0)return A.cxj("mobile-scanner-view-"+this.w) +return B.al}, +IQ(a){throw A.d(A.aq("Setting the torch state is not supported for video tracks on the web.\nSee https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints#instance_properties_of_video_tracks"))}, +o4(a,b){return this.aN1(0,b)}, +aN1(a0,a1){var s=0,r=A.p(t.jS),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$o4=A.l(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:if(n.f)throw A.d(new A.a6W()) +g=new A.bQ9() +n.b=g +g=g.Y5(null) +f=t.H +e=t.uz +s=3 +return A.i(e.b(g)?g:A.dO(g,f),$async$o4) +case 3:g=n.b +g=g==null?null:g.gaBs() +if(g===!0)throw A.d(B.RI) +s=4 +return A.i(n.T9(a1.a),$async$o4) +case 4:m=a3 +p=6 +g=n.c +if((g.c&4)===0)g.B(0,B.a1E) +g=n.b +if(g!=null)if(g.a==null)g.a=n.gb4D() +g=n.aZA(++n.w) +n.x=g +n.b9M(g,m) +g=n.b +g=g==null?null:g.QB(0,a1,n.x,m) +s=9 +return A.i(e.b(g)?g:A.dO(g,f),$async$o4) +case 9:p=2 +s=8 +break +case 6:p=5 +b=o +l=A.ag(b) +k=A.aD(b) +g=J.cw(l) +g=A.azK(B.fc,A.azJ(null,J.cw(k),g)) +throw A.d(g) +s=8 +break +case 5:s=2 +break +case 8:p=11 +g=n.b +n.d=g==null?null:g.btK().eB(new A.btf(n)) +g=n.b==null?null:A.dm(!1,t.y) +s=14 +return A.i(t.Sg.b(g)?g:A.dO(g,t.X7),$async$o4) +case 14:c=a3 +j=c==null?!1:c +g=n.b +g=g==null?null:g.gbHX() +if(g==null)g=B.A +q=new A.a5W(j,null,g) +s=1 +break +p=2 +s=13 +break +case 11:p=10 +a=o +i=A.ag(a) +h=A.aD(a) +g=J.cw(i) +g=A.azK(B.fc,A.azJ(null,J.cw(h),g)) +throw A.d(g) +s=13 +break +case 10:s=2 +break +case 13:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$o4,r)}, +e3(a){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$e3=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=q.d +n=n==null?null:n.ao(0) +p=t.H +o=t.uz +s=2 +return A.i(o.b(n)?n:A.dO(n,p),$async$e3) +case 2:q.d=null +n=q.b +n=n==null?null:n.e3(0) +s=3 +return A.i(o.b(n)?n:A.dO(n,p),$async$e3) +case 3:q.b=null +return A.n(null,r)}}) +return A.o($async$e3,r)}, +v2(a){return A.dm(null,t.H)}, +m(){var s=0,r=A.p(t.H),q=this +var $async$m=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.e3(0),$async$m) +case 2:return A.n(null,r)}}) +return A.o($async$m,r)}} +A.btg.prototype={ +$1(a){return B.im}, +$S:1018} +A.bth.prototype={ +$1(a){return 1}, +$S:1019} +A.bte.prototype={ +$1(a){var s=this.a.e +s===$&&A.b() +return s}, +$S:1020} +A.btf.prototype={ +$1(a){var s=this.a.c +if((s.c&4)!==0)return +s.B(0,a)}, +$S:1021} +A.bCc.prototype={ +$1(a){return new A.j(a.x,a.y)}, +$S:1022} +A.bQ9.prototype={ +gaBs(){var s=this.c +return(s==null?null:s.stream)!=null}, +gbHX(){var s=this.c,r=s==null?null:s.videoElement +if(r==null)return B.A +return new A.V(r.videoWidth,r.videoHeight)}, +aZx(a){var s,r,q,p +if(a.length===0||B.b.p(a,B.zH))return null +s=new self.Map() +r=A.a([],t.n) +for(q=a.length,p=0;p"))}, +QB(a,b,c,d){return this.aN2(0,b,c,d)}, +aN2(a,b,c,d){var s=0,r=A.p(t.H),q=this,p +var $async$QB=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:p=b.e +if(B.b.p(p,B.fp)){if(!!p.fixed$length)A.C(A.aq("removeWhere")) +B.b.kp(p,new A.bQd(),!0)}q.c=A.oY(self.ZXing.BrowserMultiFormatReader,[q.aZx(p),b.d]) +s=2 +return A.i(q.T8(c,d),$async$QB) +case 2:return A.n(null,r)}}) +return A.o($async$QB,r)}, +e3(a){var s=0,r=A.p(t.H),q=this,p +var $async$e3=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.a=null +p=q.c +if(p!=null)A.L(p.stopContinuousDecode,"call",[p]) +p=q.c +if(p!=null)A.L(p.reset,"call",[p]) +q.c=null +return A.n(null,r)}}) +return A.o($async$e3,r)}} +A.bQb.prototype={ +$0(){var s,r,q=this.a.c +if(q!=null){s=q.decodeContinuously +r=q.videoElement +A.L(s,"call",[q,r,t.g.a(A.cQ(new A.bQa(this.b)))])}}, +$S:0} +A.bQa.prototype={ +$2(a,b){var s,r=this.a +if((r.b&4)!==0||a==null)return +A.dcx(a) +s=A.dcw(a) +r.B(0,new A.lr(A.a([new A.vp(s,a.text,B.zJ)],t.YL),null,B.A))}, +$S:1023} +A.bQc.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.c +if(o!=null)A.L(o.stopContinuousDecode,"call",[o]) +p=p.c +if(p!=null)A.L(p.reset,"call",[p]) +s=2 +return A.i(q.b.aO(0),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bQd.prototype={ +$1(a){return a===B.fp}, +$S:1024} +A.bG4.prototype={} +A.ceS.prototype={ +$1(a){return!1}, +$S:50} +A.Af.prototype={ +q(a){return this.awy(a,this.c)}, +dv(a){return A.ddu(this)}} +A.a9E.prototype={ +dN(){return this.aQU()}, +gb7(){return t.YG.a(A.bJ.prototype.gb7.call(this))}} +A.aWG.prototype={ +iF(a,b){this.QK(a,b)}, +cL(){this.QM() +this.t8(new A.ceS(this))}} +A.an5.prototype={ +H(){return"AnimationDirection."+this.b}} +A.Di.prototype={ +J(){return new A.aeD(null,null,B.f)}} +A.aeD.prototype={ +q(a){var s=this.f +s===$&&A.b() +if(s)return B.ap +s=this.d +s===$&&A.b() +return new A.dg(s,!1,this.a.c,null)}, +a8(){var s,r,q,p,o=this,n=null +o.an() +s=A.bQ(n,o.a.d,n,1,n,o) +o.e=s +r=A.cI(o.a.f,s,n) +s=o.a.e===B.kc +q=s?0:1 +p=s?1:0 +s=t.Y +o.d=new A.aB(r,new A.aP(q,p,s),s.h("aB")) +o.e.cM(0) +o.f=!1 +if(o.a.e===B.mt)o.d.a.je(o.ga7h())}, +b1(a){var s,r,q,p,o,n=this +n.bc(a) +s=a.c +r=n.a.c +if(A.I(s)===A.I(r)&&J.q(s.a,r.a))return +s=n.d +s===$&&A.b() +r=n.ga7h() +s.a.fW(r) +s=n.e +s===$&&A.b() +s.e=n.a.d +s.sj(0,0) +s=n.e +q=A.cI(n.a.f,s,null) +s=n.a.e===B.kc +p=s?0:1 +o=s?1:0 +s=t.Y +n.d=new A.aB(q,new A.aP(p,o,s),s.h("aB")) +n.e.cM(0) +n.f=!1 +if(n.a.e===B.mt)n.d.a.je(r)}, +m(){var s=this,r=s.d +r===$&&A.b() +r.a.fW(s.ga7h()) +r=s.e +r===$&&A.b() +r.m() +s.aTp()}, +bmL(a){this.C(new A.c_q(this,a))}} +A.c_q.prototype={ +$0(){var s=this.a +s.f=s.a.e===B.mt&&this.b===B.a9}, +$S:0} +A.akX.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.a6x.prototype={ +J(){return new A.aSC(B.f)}} +A.aSC.prototype={ +a8(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d +this.an() +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.cIT(e,!1,s.cx,s.cy,n,i,j,k,l,s.db,h,f,r,q,!1,p,m,o,d,g)}, +b1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this +b.bc(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.ga7B():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.cIT(d,o,s.cx,s.cy,m,h,i,j,k,s.db,g,e,r,q,!1,p,l,n,c,f)}, +q(a){var s,r=this.a,q=r.as +r=r.at +s=this.e +s===$&&A.b() +return new A.ba(q,r,s.q(a),null)}} +A.agI.prototype={ +H(){return"_PlaceholderType."+this.b}} +A.avQ.prototype={ +byk(){var s=this,r=s.z +r===$&&A.b() +switch(r.a){case 0:return s.gb7k() +case 1:return s.gbeb() +case 2:return s.gbep()}}, +q(a){var s,r,q=this,p=q.a,o=q.z +o===$&&A.b() +o=o===B.a_C?q.gb91():null +s=q.byk() +r=q.ax!=null?q.gb0D():null +return A.cxn(q.e,q.w,q.x,r,!1,q.y,q.d,s,q.c,p,new A.ca(p,t.ln),o,!1,q.f,null,q.b)}, +ase(a,b){var s=this,r=null +return new A.d4(B.C,r,B.q8,B.k,A.a([new A.Di(a,s.cx,B.kc,s.cy,r),new A.Di(b,s.ch,B.mt,s.CW,r)],t.p),r)}, +b7l(a,b,c,d){if(c==null)return b +return this.Kd(a,b)}, +bec(a,b,c,d){var s,r=this +if(c==null){s=r.ay +if(s.a!==B.w.a)return new A.Di(r.a54(a),s,B.kc,r.cy,null) +else return r.a54(a)}if(d&&!r.db)return r.Kd(a,b) +return r.ase(r.Kd(a,b),r.a54(a))}, +beq(a,b,c,d){this.dx=d +this.dy=c!=null +return b}, +b92(a,b,c){var s,r=this +if(r.dy){if(r.dx)return r.Kd(a,b) +return r.ase(r.Kd(a,b),r.a5e(a,null))}s=r.ay +if(s.a!==B.w.a)return new A.Di(r.a5e(a,c),s,B.kc,r.cy,null) +else return r.a5e(a,c)}, +Kd(a,b){var s=this.Q +if(s!=null)return s.$2(a,b) +else return b}, +b0E(a,b,c){var s=this.ax +if(s==null)throw A.d(A.a0("Try to build errorBuilder with errorBuilder null")) +return s.$3(a,b,c)}, +a5e(a,b){var s=this.at +if(s==null)throw A.d(A.a0("Try to build progressIndicatorBuilder with progressIndicatorBuilder null")) +return s.$2(a,b)}, +a54(a){var s=null,r=this.as +if(r!=null)return r.$1(a) +return A.bB(s,s,B.i,s,s,s,s,s,s,s,s,s,s,s)}, +b_7(){if(this.as!=null)return B.bAe +if(this.at!=null)return B.a_C +return B.bAd}} +A.aAq.prototype={} +A.aDB.prototype={ +H(){return"ResultType."+this.b}} +A.ct5.prototype={ +$1(a){return!0}, +$S:1026} +A.ct6.prototype={ +$1(a){return!1}, +$S:60} +A.bac.prototype={ +$2(a,b){var s=this.a +return J.GU(s.$1(a),s.$1(b))}, +$S(){return this.b.h("h(0,0)")}} +A.oh.prototype={ +aV0(a,b){this.a=A.a9Z(new A.bvk(a,b),null,b.h("awZ<0>")) +this.b=0}, +gA(a){var s=this.b +s===$&&A.b() +return s}, +gaz(a){var s,r=this.a +r===$&&A.b() +s=r.$ti.h("@").a1(A.z(this).h("oh.E")) +return new A.De(r.gaz(0),new A.bvl(this),B.mA,s.h("@<1>").a1(s.y[1]).h("De<1,2>"))}, +aFa(a){var s,r=this +if(!r.c){s=A.R(r,!1,A.z(r).h("B.E")) +r.d=new A.bE(s,A.X(s).h("bE<1>"))}return r.d}, +B(a,b){var s,r=this,q=A.d9([b],A.z(r).h("oh.E")),p=r.a +p===$&&A.b() +s=p.iW(0,q) +if(!s){p=r.a.XZ(q) +p.toString +s=J.eQ(p,b)}if(s){p=r.b +p===$&&A.b() +r.b=p+1 +r.c=!1}return s}, +F(a,b){var s,r,q,p,o=this,n=o.a +n===$&&A.b() +s=A.z(o).h("oh.E") +r=n.XZ(A.d9([b],s)) +if(r==null||!r.p(0,b)){n=o.a +q=new A.b1(n,new A.bvn(o,b),n.$ti.h("b1")) +if(!q.gad(0))r=q.ga2(0)}if(r==null)return!1 +p=r.F(0,b) +if(p){n=o.b +n===$&&A.b() +o.b=n-1 +o.a.F(0,A.b9(s)) +o.c=!1}return p}, +V(a){var s +this.c=!1 +s=this.a +s===$&&A.b() +s.a1Y(0) +this.b=0}} +A.bvk.prototype={ +$2(a,b){if(a.gad(a)){if(b.gad(b))return 0 +return-1}if(b.gad(b))return 1 +return this.a.$2(a.ga2(a),b.ga2(b))}, +$S(){return this.b.h("h(bU<0>,bU<0>)")}} +A.bvl.prototype={ +$1(a){return a}, +$S(){return A.z(this.a).h("bU(bU)")}} +A.bvn.prototype={ +$1(a){return a.ef(0,new A.bvm(this.a,this.b))}, +$S(){return A.z(this.a).h("A(bU)")}} +A.bvm.prototype={ +$1(a){return a===this.b}, +$S(){return A.z(this.a).h("A(oh.E)")}} +A.op.prototype={ +B(a,b){if(this.aPk(0,b)){this.f.aE(0,new A.bzc(this,b)) +return!0}return!1}, +F(a,b){this.f.gbm(0).aE(0,new A.bze(this,b)) +return this.aPm(0,b)}, +V(a){this.f.gbm(0).aE(0,new A.bzd(this)) +this.aPl(0)}} +A.bzc.prototype={ +$2(a,b){var s=this.b +if(b.bq0(0,s))b.gi3(b).B(0,s)}, +$S(){return A.z(this.a).h("~(lS,czS)")}} +A.bze.prototype={ +$1(a){return a.gi3(a).F(0,this.b)}, +$S(){return A.z(this.a).h("~(czS)")}} +A.bzd.prototype={ +$1(a){return a.gi3(a).V(0)}, +$S(){return A.z(this.a).h("~(czS)")}} +A.a6D.prototype={ +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.a6D&&A.I(r)===A.I(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.ab(s.f)}, +k(a){var s=this +return"PackageInfo(appName: "+s.a+", buildNumber: "+s.d+", packageName: "+s.b+", version: "+s.c+", buildSignature: "+s.e+", installerStore: "+A.r(s.f)+")"}} +A.bw2.prototype={ +bHU(a,b){var s=A.di(a,0,null),r=A.b4("[^/]+\\.html.*",!0,!1,!1),q=A.djE(s),p=s.geh(s),o=A.di(q+A.cj(p,r,""),0,null).adc().aER(0,"") +q=o.e +if(q.length>1)if(!B.c.eV(q,"/"))p=o.zt("http")||o.zt("https") +else p=!1 +else p=!1 +if(p)o=o.Zo(0,B.c.R(q,0,B.c.na(q,"/"))) +q=t.N +p=A.R(o.gzL(),!0,q) +if(!!p.fixed$length)A.C(A.aq("removeWhere")) +B.b.kp(p,new A.bw3(),!0) +q=A.R(p,!0,q) +q.push("version.json") +return o.bFW(0,q,"cachebuster="+b)}, +ta(a,b){return this.aIh(0,b)}, +aIh(a,b){var s=0,r=A.p(t.BB),q,p=this,o,n,m,l,k,j +var $async$ta=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:A.crs() +o=A.b2m().a +s=3 +return A.i(p.Ez(b,o),$async$ta) +case 3:n=d +s=n==null?4:5 +break +case 4:n=p.b.Do("") +s=6 +return A.i(p.Ez(A.cj(n,"assets/",""),o),$async$ta) +case 6:n=d +case 5:s=n==null?7:9 +break +case 7:s=10 +return A.i(p.Ez(self.window.document.baseURI,o),$async$ta) +case 10:s=8 +break +case 9:d=n +case 8:m=d +if(m==null)m=A.N(t.N,t.z) +n=J.ao(m) +l=n.i(m,"app_name") +if(l==null)l="" +k=n.i(m,"version") +if(k==null)k="" +j=n.i(m,"build_number") +if(j==null)j="" +n=n.i(m,"package_name") +q=new A.a6E(l,n==null?"":n,k,j,"",null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$ta,r)}, +Ez(a,b){return this.b2J(a,b)}, +b2J(a,b){var s=0,r=A.p(t.nA),q,p=this +var $async$Ez=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=(a==null?null:a.length!==0)===!0?3:4 +break +case 3:a.toString +s=5 +return A.i(p.S1(p.bHU(a,b)),$async$Ez) +case 5:q=p.aZO(d) +s=1 +break +case 4:q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Ez,r)}, +S1(a){return this.b2v(a)}, +b2v(a){var s=0,r=A.p(t.Wd),q,p +var $async$S1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(A.dsu(a),$async$S1) +case 3:p=c +q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$S1,r)}, +aZO(a){var s,r +if(a.b===200)try{s=B.aO.pf(0,A.drR(J.aS(A.dkB(a.e).c.a,"charset")).hF(0,a.w),null) +return s}catch(r){return null}else return null}} +A.bw3.prototype={ +$1(a){return a===""}, +$S:20} +A.bsJ.prototype={ +ta(a,b){return this.aIg(0,b)}, +aIg(a,b){var s=0,r=A.p(t.BB),q,p,o,n,m,l,k,j +var $async$ta=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=3 +return A.i(B.b5O.Xz("getAll",t.N,t.z),$async$ta) +case 3:j=d +j.toString +p=J.ao(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.a6E(o,n,m,l,k,A.bw(p.i(j,"installerStore"))) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$ta,r)}} +A.a6E.prototype={} +A.bw1.prototype={} +A.apP.prototype={ +auJ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var s +A.cRw("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.nk(b)>0&&!s.zs(b) +if(s)return b +s=this.b +return this.abx(0,s==null?A.crB():s,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p)}, +blN(a,b){var s=null +return this.auJ(0,b,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +bu0(a){var s,r,q=A.ub(a,this.a) +q.OB() +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.hX(s) +q.e.pop() +q.OB() +return q.k(0)}, +abx(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.cRw("join",s) +return this.bzC(new A.cv(s,t.Ri))}, +XH(a,b,c){var s=null +return this.abx(0,b,c,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +bzC(a){var s,r,q,p,o,n,m,l,k +for(s=a.gaz(0),r=new A.i6(s,new A.baT(),a.$ti.h("i6")),q=this.a,p=!1,o=!1,n="";r.t();){m=s.gK(0) +if(q.zs(m)&&o){l=A.ub(m,q) +k=n.charCodeAt(0)==0?n:n +n=B.c.R(k,0,q.HO(k,!0)) +l.b=n +if(q.NY(n))l.e[0]=q.gxi() +n=""+l.k(0)}else if(q.nk(m)>0){o=!q.zs(m) +n=""+m}else{if(!(m.length!==0&&q.a8o(m[0])))if(p)n+=q.gxi() +n+=m}p=q.NY(m)}return n.charCodeAt(0)==0?n:n}, +pS(a,b){var s=A.ub(b,this.a),r=s.d,q=A.X(r).h("b1<1>") +q=A.R(new A.b1(r,new A.baU(),q),!0,q.h("B.E")) +s.d=q +r=s.b +if(r!=null)B.b.eu(q,0,r) +return s.d}, +acc(a,b){var s +if(!this.baq(b))return b +s=A.ub(b,this.a) +s.jI(0) +return s.k(0)}, +baq(a){var s,r,q,p,o,n,m,l,k=this.a,j=k.nk(a) +if(j!==0){if(k===$.amk())for(s=0;s0)return o.acc(0,a) +if(m.nk(a)<=0||m.zs(a))a=o.blN(0,a) +if(m.nk(a)<=0&&m.nk(s)>0)throw A.d(A.cKJ(n+a+'" from "'+s+'".')) +r=A.ub(s,m) +r.jI(0) +q=A.ub(a,m) +q.jI(0) +l=r.d +if(l.length!==0&&J.q(l[0],"."))return q.k(0) +l=r.b +p=q.b +if(l!=p)l=l==null||p==null||!m.acL(l,p) +else l=!1 +if(l)return q.k(0) +while(!0){l=r.d +if(l.length!==0){p=q.d +l=p.length!==0&&m.acL(l[0],p[0])}else l=!1 +if(!l)break +B.b.fE(r.d,0) +B.b.fE(r.e,1) +B.b.fE(q.d,0) +B.b.fE(q.e,1)}l=r.d +if(l.length!==0&&J.q(l[0],".."))throw A.d(A.cKJ(n+a+'" from "'+s+'".')) +l=t.N +B.b.ox(q.d,0,A.aK(r.d.length,"..",!1,l)) +p=q.e +p[0]="" +B.b.ox(p,1,A.aK(r.d.length,m.gxi(),!1,l)) +m=q.d +l=m.length +if(l===0)return"." +if(l>1&&J.q(B.b.gP(m),".")){B.b.hX(q.d) +m=q.e +m.pop() +m.pop() +m.push("")}q.b="" +q.OB() +return q.k(0)}, +aFz(a){var s,r=this.a +if(r.nk(a)<=0)return r.aEA(a) +else{s=this.b +return r.a7_(this.XH(0,s==null?A.crB():s,a))}}, +acS(a){var s,r,q=this,p=A.cAW(a) +if(p.gfX()==="file"&&q.a===$.amj())return p.k(0) +else if(p.gfX()!=="file"&&p.gfX()!==""&&q.a!==$.amj())return p.k(0) +s=q.acc(0,q.a.YO(A.cAW(p))) +r=q.bFF(s) +return q.pS(0,r).length>q.pS(0,s).length?s:r}} +A.baT.prototype={ +$1(a){return a!==""}, +$S:20} +A.baU.prototype={ +$1(a){return a.length!==0}, +$S:20} +A.cqW.prototype={ +$1(a){return a==null?"null":'"'+a+'"'}, +$S:136} +A.bnL.prototype={ +aJd(a){var s=this.nk(a) +if(s>0)return B.c.R(a,0,s) +return this.zs(a)?a[0]:null}, +aEA(a){var s,r=null,q=a.length +if(q===0)return A.fi(r,r,r,r,r,r,r,r) +s=A.cvR(r,this).pS(0,a) +if(this.uC(a.charCodeAt(q-1)))B.b.B(s,"") +return A.fi(r,r,r,s,r,r,r,r)}, +acL(a,b){return a===b}} +A.aB4.prototype={ +ga7t(){var s=this,r=t.N,q=new A.aB4(s.a,s.b,s.c,A.ew(s.d,!0,r),A.ew(s.e,!0,r)) +q.OB() +r=q.d +if(r.length===0){r=s.b +return r==null?"":r}return B.b.gP(r)}, +gab3(){var s=this.d +if(s.length!==0)s=J.q(B.b.gP(s),"")||!J.q(B.b.gP(this.e),"") +else s=!1 +return s}, +OB(){var s,r,q=this +while(!0){s=q.d +if(!(s.length!==0&&J.q(B.b.gP(s),"")))break +B.b.hX(q.d) +q.e.pop()}s=q.e +r=s.length +if(r!==0)s[r-1]=""}, +jI(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;p=0;--s)if(a[s]===b){++r +if(r===c)return s +q=s}return q}, +biH(a){var s,r,q +if(a<=0)throw A.d(A.a7z(a,"level","level's value must be greater than 0")) +s=this.d +s=new A.ek(s,A.X(s).h("ek<1,f?>")) +r=s.abE(s,new A.bwE(),new A.bwF()) +if(r==null)return A.a(["",""],t.s) +if(r==="..")return A.a(["..",""],t.s) +q=this.b8l(r,".",a) +if(q<=0)return A.a([r,""],t.s) +return A.a([B.c.R(r,0,q),B.c.b0(r,q)],t.s)}} +A.bwE.prototype={ +$1(a){return a!==""}, +$S:113} +A.bwF.prototype={ +$0(){return null}, +$S:13} +A.aBb.prototype={ +k(a){return"PathException: "+this.a}, +$ibP:1} +A.bIk.prototype={ +k(a){return this.gdI(this)}} +A.bya.prototype={ +a8o(a){return B.c.p(a,"/")}, +uC(a){return a===47}, +NY(a){var s=a.length +return s!==0&&a.charCodeAt(s-1)!==47}, +HO(a,b){if(a.length!==0&&a.charCodeAt(0)===47)return 1 +return 0}, +nk(a){return this.HO(a,!1)}, +zs(a){return!1}, +YO(a){var s +if(a.gfX()===""||a.gfX()==="file"){s=a.geh(a) +return A.pM(s,0,s.length,B.ai,!1)}throw A.d(A.aM("Uri "+a.k(0)+" must have scheme 'file:'.",null))}, +a7_(a){var s=null,r=A.ub(a,this),q=r.d +if(q.length===0)B.b.L(q,A.a(["",""],t.s)) +else if(r.gab3())B.b.B(r.d,"") +return A.fi(s,s,s,r.d,s,s,s,"file")}, +gdI(){return"posix"}, +gxi(){return"/"}} +A.bO_.prototype={ +a8o(a){return B.c.p(a,"/")}, +uC(a){return a===47}, +NY(a){var s=a.length +if(s===0)return!1 +if(a.charCodeAt(s-1)!==47)return!0 +return B.c.eV(a,"://")&&this.nk(a)===s}, +HO(a,b){var s,r,q,p=a.length +if(p===0)return 0 +if(a.charCodeAt(0)===47)return 1 +for(s=0;s0){s=B.c.hj(a,"\\",s+1) +if(s>0)return s}return r}if(r<3)return 0 +if(!A.cSV(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}, +nk(a){return this.HO(a,!1)}, +zs(a){return this.nk(a)===1}, +YO(a){var s,r +if(a.gfX()!==""&&a.gfX()!=="file")throw A.d(A.aM("Uri "+a.k(0)+" must have scheme 'file:'.",null)) +s=a.geh(a) +if(a.gla(a)===""){if(s.length>=3&&B.c.aC(s,"/")&&A.cSi(s,1)!=null)s=B.c.jL(s,"/","")}else s="\\\\"+a.gla(a)+s +r=A.cj(s,"/","\\") +return A.pM(r,0,r.length,B.ai,!1)}, +a7_(a){var s,r,q=null,p=A.ub(a,this),o=p.b +o.toString +if(B.c.aC(o,"\\\\")){s=new A.b1(A.a(o.split("\\"),t.s),new A.bPi(),t.gD) +B.b.eu(p.d,0,s.gP(0)) +if(p.gab3())B.b.B(p.d,"") +return A.fi(q,s.ga2(0),q,p.d,q,q,q,"file")}else{if(p.d.length===0||p.gab3())B.b.B(p.d,"") +o=p.d +r=p.b +r.toString +r=A.cj(r,"/","") +B.b.eu(o,0,A.cj(r,"\\","")) +return A.fi(q,q,q,p.d,q,q,q,"file")}}, +bqr(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}, +acL(a,b){var s,r +if(a===b)return!0 +s=a.length +if(s!==b.length)return!1 +for(r=0;r>>0}} +A.bJe.prototype={ +L0(){var s,r,q,p,o,n=this +for(s=n.a,r=n.d;!0;){q=n.c +if(q>=r)return-1 +p=s.charCodeAt(q) +if(p<=32)o=p===32||p===10||p===9||p===13||p===12 +else o=!1 +if(!o)return p +n.c=q+1}}, +as7(){if(this.L0()===44){++this.c +this.L0()}}, +b9N(a,b){var s +if(!(a>=48&&a<=57||a===43||a===45||a===46)||this.b===B.xA)return b +s=this.b +if(s===B.xF)return B.YJ +if(s===B.xG)return B.YK +return s}, +tJ(){var s=this,r=s.c +if(r>=s.d)return-1 +s.c=r+1 +return s.a.charCodeAt(r)}, +m_(){var s,r,q,p,o,n,m,l,k,j,i=this,h="Numeric overflow" +i.L0() +s=i.tJ() +if(s===43){s=i.tJ() +r=1}else if(s===45){s=i.tJ() +r=-1}else r=1 +if((s<48||s>57)&&s!==46)throw A.d(A.a0("First character of a number must be one of [0-9+-.].")) +q=0 +while(!0){if(!(48<=s&&s<=57))break +q=q*10+(s-48) +s=i.tJ()}if(!(-17976931348623157e292<=q&&q<=17976931348623157e292))throw A.d(A.a0(h)) +if(s===46){s=i.tJ() +if(s<48||s>57)throw A.d(A.a0("There must be at least one digit following the .")) +p=0 +o=1 +while(!0){if(!(48<=s&&s<=57))break +o*=0.1 +p+=(s-48)*o +s=i.tJ()}}else p=0 +n=(q+p)*r +m=i.c +if(m57)throw A.d(A.a0("Missing exponent")) +j=0 +while(!0){if(!(s>=48&&s<=57))break +j=j*10+(s-48) +s=i.tJ()}if(k)j=-j +if(!(-37<=j&&j<=38))throw A.d(A.a0("Invalid exponent "+j)) +if(j!==0)n*=Math.pow(10,j)}if(!(-17976931348623157e292<=n&&n<=17976931348623157e292))throw A.d(A.a0(h)) +if(s!==-1){--i.c +i.as7()}return n}, +apH(){var s,r=this,q=r.c +if(q>=r.d)throw A.d(A.a0("Expected more data")) +r.c=q+1 +s=r.a.charCodeAt(q) +r.as7() +if(s===48)return!1 +else if(s===49)return!0 +else throw A.d(A.a0("Invalid flag value"))}, +aD7(){return new A.dz(this.bDA(),t.ij)}, +bDA(){var s=this +return function(){var r=0,q=1,p,o +return function $async$aD7(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:o=s.d +case 2:if(!(s.c1){b0*=Math.sqrt(m) +b1*=Math.sqrt(m)}q.fO() +q.jt(0,1/b0,1/b1) +q.uU(a9) +l=a8.EE(q,b2) +k=a8.EE(q,b3.b) +j=k.W(0,l) +a9=j.a +o=j.b +i=Math.sqrt(Math.max(1/(a9*a9+o*o)-0.25,0)) +if(!isFinite(i))i=0 +j=j.X(0,b3.e===b3.f?-i:i) +a9=l.S(0,k).X(0,0.5) +o=a9.a+-j.b +a9=a9.b+j.a +h=new A.fu(o,a9) +l=l.W(0,h) +g=Math.atan2(l.b,l.a) +k=k.W(0,h) +f=Math.atan2(k.b,k.a)-g +if(f<0&&b3.e)f+=6.283185307179586 +else if(f>0&&!b3.e)f-=6.283185307179586 +q.fO() +q.uU(s) +q.jt(0,b0,b1) +e=B.e.dO(Math.abs(f/1.5717963267948964)) +for(n=b4.a,d=0;d"))}} +A.axl.prototype={ +gK(a){var s=this.e +s===$&&A.b() +return s}, +t(){var s,r,q,p,o,n=this +for(s=n.b,r=s.length,q=n.a;p=n.d,p<=r;){o=q.a.e6(s,p) +p=n.d +if(o<0)n.d=p+1 +else{s=q.dY(new A.Q2(s,p)) +n.e=s.gj(s) +s=n.d +if(s===o)n.d=s+1 +else n.d=o +return!0}}return!1}} +A.tS.prototype={ +dY(a){var s,r=a.a,q=a.b,p=this.a.e6(r,q) +if(p<0)return new A.dj(this.b,r,q) +s=B.c.R(r,q,p) +return new A.f8(s,r,p,t.Xb)}, +e6(a,b){return this.a.e6(a,b)}, +k(a){var s=this.xu(0) +return s+"["+this.b+"]"}} +A.a5i.prototype={ +dY(a){var s,r=this.a.dY(a) +if(r instanceof A.dj)return r +s=this.b.$1(r.gj(r)) +return new A.f8(s,r.a,r.b,this.$ti.h("f8<2>"))}, +e6(a,b){var s=this.a.e6(a,b) +return s}} +A.abr.prototype={ +dY(a){var s,r,q,p=this.a.dY(a) +if(p instanceof A.dj)return p +s=p.gj(p) +r=p.b +q=this.$ti +return new A.f8(new A.AD(s,a.a,a.b,r,q.h("AD<1>")),p.a,r,q.h("f8>"))}, +e6(a,b){return this.a.e6(a,b)}} +A.a9C.prototype={ +qG(a){return this.a===a}} +A.HT.prototype={ +qG(a){return this.a}} +A.axc.prototype={ +aUT(a){var s,r,q,p,o,n,m,l +for(s=a.length,r=this.a,q=this.c,p=0;p>>0}}}, +qG(a){var s=this.a +if(s<=a)if(a<=this.b){s=a-s +s=(this.c[B.d.b2(s,5)]&B.KD[s&31])>>>0!==0}else s=!1 +else s=!1 +return s}, +$ikb:1} +A.aAb.prototype={ +qG(a){return!this.a.qG(a)}} +A.ct7.prototype={ +$2(a,b){var s=a.a,r=b.a +return s!==r?s-r:a.b-b.b}, +$S:1028} +A.ct8.prototype={ +$2(a,b){return a+(b.b-b.a+1)}, +$S:1029} +A.cqt.prototype={ +$1(a){return new A.jr(a.charCodeAt(0),a.charCodeAt(0))}, +$S:1030} +A.cq9.prototype={ +$3(a,b,c){return new A.jr(a.charCodeAt(0),c.charCodeAt(0))}, +$S:1031} +A.cq3.prototype={ +$2(a,b){var s +if(a==null)s=b +else s=b instanceof A.HT?new A.HT(!b.a):new A.aAb(b) +return s}, +$S:1032} +A.kb.prototype={} +A.jr.prototype={ +qG(a){return this.a<=a&&a<=this.b}, +$ikb:1} +A.aHP.prototype={ +qG(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}}, +$ikb:1} +A.HJ.prototype={ +dY(a){var s,r,q,p,o=this.a,n=o[0].dY(a) +if(!(n instanceof A.dj))return n +for(s=o.length,r=this.b,q=n,p=1;p=0)return q}return q}} +A.jf.prototype={ +geg(a){return A.a([this.a],t.Vz)}, +qD(a,b,c){var s=this +s.At(0,b,c) +if(s.a.l(0,b))s.a=A.z(s).h("bz").a(c)}} +A.M6.prototype={ +dY(a){var s,r,q,p=this.a.dY(a) +if(p instanceof A.dj)return p +s=this.b.dY(p) +if(s instanceof A.dj)return s +r=p.gj(p) +q=s.gj(s) +return new A.f8(new A.dZ(r,q),s.a,s.b,this.$ti.h("f8<+(1,2)>"))}, +e6(a,b){b=this.a.e6(a,b) +if(b<0)return-1 +b=this.b.e6(a,b) +if(b<0)return-1 +return b}, +geg(a){return A.a([this.a,this.b],t.Vz)}, +qD(a,b,c){var s=this +s.At(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.h("bz<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.h("bz<2>").a(c)}} +A.bzU.prototype={ +$1(a){return this.a.$2(a.a,a.b)}, +$S(){return this.d.h("@<0>").a1(this.b).a1(this.c).h("1(+(2,3))")}} +A.M7.prototype={ +dY(a){var s,r,q,p,o=this,n=o.a.dY(a) +if(n instanceof A.dj)return n +s=o.b.dY(n) +if(s instanceof A.dj)return s +r=o.c.dY(s) +if(r instanceof A.dj)return r +q=n.gj(n) +s=s.gj(s) +p=r.gj(r) +return new A.f8(new A.ah9(q,s,p),r.a,r.b,o.$ti.h("f8<+(1,2,3)>"))}, +e6(a,b){b=this.a.e6(a,b) +if(b<0)return-1 +b=this.b.e6(a,b) +if(b<0)return-1 +b=this.c.e6(a,b) +if(b<0)return-1 +return b}, +geg(a){return A.a([this.a,this.b,this.c],t.Vz)}, +qD(a,b,c){var s=this +s.At(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.h("bz<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.h("bz<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.h("bz<3>").a(c)}} +A.bzV.prototype={ +$1(a){return this.a.$3(a.a,a.b,a.c)}, +$S(){var s=this +return s.e.h("@<0>").a1(s.b).a1(s.c).a1(s.d).h("1(+(2,3,4))")}} +A.a9n.prototype={ +dY(a){var s,r,q,p,o,n=this,m=n.a.dY(a) +if(m instanceof A.dj)return m +s=n.b.dY(m) +if(s instanceof A.dj)return s +r=n.c.dY(s) +if(r instanceof A.dj)return r +q=n.d.dY(r) +if(q instanceof A.dj)return q +p=m.gj(m) +s=s.gj(s) +r=r.gj(r) +o=q.gj(q) +return new A.f8(new A.aUD([p,s,r,o]),q.a,q.b,n.$ti.h("f8<+(1,2,3,4)>"))}, +e6(a,b){var s=this +b=s.a.e6(a,b) +if(b<0)return-1 +b=s.b.e6(a,b) +if(b<0)return-1 +b=s.c.e6(a,b) +if(b<0)return-1 +b=s.d.e6(a,b) +if(b<0)return-1 +return b}, +geg(a){var s=this +return A.a([s.a,s.b,s.c,s.d],t.Vz)}, +qD(a,b,c){var s=this +s.At(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.h("bz<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.h("bz<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.h("bz<3>").a(c) +if(s.d.l(0,b))s.d=s.$ti.h("bz<4>").a(c)}} +A.bzX.prototype={ +$1(a){var s=a.a +return this.a.$4(s[0],s[1],s[2],s[3])}, +$S(){var s=this +return s.f.h("@<0>").a1(s.b).a1(s.c).a1(s.d).a1(s.e).h("1(+(2,3,4,5))")}} +A.a9o.prototype={ +dY(a){var s,r,q,p,o,n,m=this,l=m.a.dY(a) +if(l instanceof A.dj)return l +s=m.b.dY(l) +if(s instanceof A.dj)return s +r=m.c.dY(s) +if(r instanceof A.dj)return r +q=m.d.dY(r) +if(q instanceof A.dj)return q +p=m.e.dY(q) +if(p instanceof A.dj)return p +o=l.gj(l) +s=s.gj(s) +r=r.gj(r) +q=q.gj(q) +n=p.gj(p) +return new A.f8(new A.aUE([o,s,r,q,n]),p.a,p.b,m.$ti.h("f8<+(1,2,3,4,5)>"))}, +e6(a,b){var s=this +b=s.a.e6(a,b) +if(b<0)return-1 +b=s.b.e6(a,b) +if(b<0)return-1 +b=s.c.e6(a,b) +if(b<0)return-1 +b=s.d.e6(a,b) +if(b<0)return-1 +b=s.e.e6(a,b) +if(b<0)return-1 +return b}, +geg(a){var s=this +return A.a([s.a,s.b,s.c,s.d,s.e],t.Vz)}, +qD(a,b,c){var s=this +s.At(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.h("bz<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.h("bz<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.h("bz<3>").a(c) +if(s.d.l(0,b))s.d=s.$ti.h("bz<4>").a(c) +if(s.e.l(0,b))s.e=s.$ti.h("bz<5>").a(c)}} +A.bzY.prototype={ +$1(a){var s=a.a +return this.a.$5(s[0],s[1],s[2],s[3],s[4])}, +$S(){var s=this +return s.r.h("@<0>").a1(s.b).a1(s.c).a1(s.d).a1(s.e).a1(s.f).h("1(+(2,3,4,5,6))")}} +A.a9p.prototype={ +dY(a){var s,r,q,p,o,n,m,l,k,j=this,i=j.a.dY(a) +if(i instanceof A.dj)return i +s=j.b.dY(i) +if(s instanceof A.dj)return s +r=j.c.dY(s) +if(r instanceof A.dj)return r +q=j.d.dY(r) +if(q instanceof A.dj)return q +p=j.e.dY(q) +if(p instanceof A.dj)return p +o=j.f.dY(p) +if(o instanceof A.dj)return o +n=j.r.dY(o) +if(n instanceof A.dj)return n +m=j.w.dY(n) +if(m instanceof A.dj)return m +l=i.gj(i) +s=s.gj(s) +r=r.gj(r) +q=q.gj(q) +p=p.gj(p) +o=o.gj(o) +n=n.gj(n) +k=m.gj(m) +return new A.f8(new A.aUF([l,s,r,q,p,o,n,k]),m.a,m.b,j.$ti.h("f8<+(1,2,3,4,5,6,7,8)>"))}, +e6(a,b){var s=this +b=s.a.e6(a,b) +if(b<0)return-1 +b=s.b.e6(a,b) +if(b<0)return-1 +b=s.c.e6(a,b) +if(b<0)return-1 +b=s.d.e6(a,b) +if(b<0)return-1 +b=s.e.e6(a,b) +if(b<0)return-1 +b=s.f.e6(a,b) +if(b<0)return-1 +b=s.r.e6(a,b) +if(b<0)return-1 +b=s.w.e6(a,b) +if(b<0)return-1 +return b}, +geg(a){var s=this +return A.a([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w],t.Vz)}, +qD(a,b,c){var s=this +s.At(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.h("bz<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.h("bz<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.h("bz<3>").a(c) +if(s.d.l(0,b))s.d=s.$ti.h("bz<4>").a(c) +if(s.e.l(0,b))s.e=s.$ti.h("bz<5>").a(c) +if(s.f.l(0,b))s.f=s.$ti.h("bz<6>").a(c) +if(s.r.l(0,b))s.r=s.$ti.h("bz<7>").a(c) +if(s.w.l(0,b))s.w=s.$ti.h("bz<8>").a(c)}} +A.bzZ.prototype={ +$1(a){var s=a.a +return this.a.$8(s[0],s[1],s[2],s[3],s[4],s[5],s[6],s[7])}, +$S(){var s=this +return s.y.h("@<0>").a1(s.b).a1(s.c).a1(s.d).a1(s.e).a1(s.f).a1(s.r).a1(s.w).a1(s.x).h("1(+(2,3,4,5,6,7,8,9))")}} +A.K1.prototype={ +qD(a,b,c){var s,r,q,p +this.At(0,b,c) +for(s=this.a,r=s.length,q=this.$ti.h("bz"),p=0;p"))}, +e6(a,b){var s=this.a.e6(a,b) +return s<0?b:s}} +A.a9M.prototype={ +dY(a){var s,r,q,p=this,o=p.b.dY(a) +if(o instanceof A.dj)return o +s=p.a.dY(o) +if(s instanceof A.dj)return s +r=p.c.dY(s) +if(r instanceof A.dj)return r +q=s.gj(s) +return new A.f8(q,r.a,r.b,p.$ti.h("f8<1>"))}, +e6(a,b){b=this.b.e6(a,b) +if(b<0)return-1 +b=this.a.e6(a,b) +if(b<0)return-1 +return this.c.e6(a,b)}, +geg(a){return A.a([this.b,this.a,this.c],t.Vz)}, +qD(a,b,c){var s=this +s.agv(0,b,c) +if(s.b.l(0,b))s.b=c +if(s.c.l(0,b))s.c=c}} +A.IC.prototype={ +dY(a){return new A.f8(this.a,a.a,a.b,this.$ti.h("f8<1>"))}, +e6(a,b){return b}, +k(a){return this.xu(0)+"["+A.r(this.a)+"]"}} +A.aA6.prototype={ +dY(a){var s,r=a.a,q=a.b,p=r.length +if(q=l||!r.qG(n.charCodeAt(q)))return new A.dj(o.b,n,q);++q;++p}s=o.d +while(!0){if(!(q=p||!r.qG(a.charCodeAt(b)))return-1;++b;++q}s=this.d +while(!0){if(!(b")) +for(s=o.b,r=a;m.length=s)return p +q=o.a.dY(r) +if(q instanceof A.dj)return p +m.push(q.gj(q))}else return new A.f8(m,r.a,r.b,n.h("f8>"))}}, +e6(a,b){var s,r,q,p,o=this +for(s=o.b,r=b,q=0;q=s)return-1 +p=o.a.e6(a,r) +if(p<0)return-1;++q}else return r}} +A.a4W.prototype={ +geg(a){return A.a([this.a,this.e],t.Vz)}, +qD(a,b,c){this.agv(0,b,c) +if(this.e.l(0,b))this.e=c}} +A.a7g.prototype={ +dY(a){var s,r,q,p=this,o=p.$ti,n=A.a([],o.h("D<1>")) +for(s=p.b,r=a;n.length>"))}, +e6(a,b){var s,r,q,p,o=this +for(s=o.b,r=b,q=0;q0){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).a7$}return o*q+p}else{for(s=t.US,q=0,p=0,k=0,j=null;r!=null;){n=r.b +n.toString +m=s.a(n).e +if(m==null)m=0 +q+=m +i=A.aF("mainSize") +h=A.aF("crossSize") +if(m===0){switch(c.N.a){case 0:n=r.aw(B.aj,1/0,r.gbL()) +if(i.b!==i)A.C(A.kY(i.a)) +i.b=n +n=a.$2(r,n) +if(h.b!==h)A.C(A.kY(h.a)) +h.b=n +break +case 1:n=r.aw(B.ay,1/0,r.gbZ()) +if(i.b!==i)A.C(A.kY(i.a)) +i.b=n +n=a.$2(r,n) +if(h.b!==h)A.C(A.kY(h.a)) +h.b=n +break}n=i.b +if(n===i)A.C(A.h6(i.a)) +p+=n +n=h.b +if(n===h)A.C(A.h6(h.a)) +k=Math.max(k,A.fP(n))}else j=r +n=r.b +n.toString +r=s.a(n).a7$}g=B.e.dV(b-p,0,1/0) +r=c.Y$ +for(f=q;r!=null;){e=Math.max(0,g/f) +n=r.b +n.toString +m=s.a(n).e +if(m==null)m=0 +f-=m +if(m>0){if(r===j)d=g +else{n=c.D +d=n.b.$3(e*m,n.a,B.av)}k=Math.max(k,A.fP(a.$2(r,d))) +g-=d}n=r.b +n.toString +r=s.a(n).a7$}return k}}, +bo(a){return this.RY(new A.bAI(),a,B.a_)}, +bb(a){return this.RY(new A.bAE(),a,B.a_)}, +bh(a){return this.RY(new A.bAG(),a,B.v)}, +bi(a){return this.RY(new A.bAC(),a,B.v)}, +il(a){if(this.N===B.a_)return this.yH(a) +return this.Mm(a)}, +RV(a){switch(this.N.a){case 0:return a.b +case 1:return a.a}}, +RZ(a){switch(this.N.a){case 0:return a.a +case 1:return a.b}}, +cX(a){var s +if(this.aq===B.hr)return B.A +s=this.ak7(a,A.k0()) +switch(this.N.a){case 0:return a.bd(new A.V(s.a,s.b)) +case 1:return a.bd(new A.V(s.b,s.a))}}, +ak7(a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=null,a0=b.N===B.a_?a3.b:a3.d,a1=a0<1/0,a2=b.Y$ +for(s=t.US,r=a3.b,q=a3.d,p=a,o=0,n=0,m=0;a2!=null;){l=a2.b +l.toString +s.a(l) +k=l.e +if(k==null)k=0 +if(k>0){o+=k +p=a2}else{if(b.aq===B.co)switch(b.N.a){case 0:j=A.fH(q,a) +break +case 1:j=A.fH(a,r) +break +default:j=a}else switch(b.N.a){case 0:j=new A.aG(0,1/0,0,q) +break +case 1:j=new A.aG(0,r,0,1/0) +break +default:j=a}i=a4.$2(a2,j) +m+=b.RZ(i) +n=Math.max(n,b.RV(i))}a2=l.a7$}h=Math.max(0,(a1?a0:0)-m) +if(o>0){a2=b.Y$ +for(g=o,f=0;a2!=null;){e=a1?(h-f)/g:0/0 +l=a2.b +l.toString +k=s.a(l).e +if(k==null)k=0 +g-=k +if(k>0){if(a1)if(a2===p){l=h-f +d=l}else{l=b.D +l=l.b.$3(e*k,l.a,B.av) +d=l}else d=1/0 +c=A.aF("minChildExtent") +l=a2.b +l.toString +l=s.a(l).f +switch((l==null?B.nu:l).a){case 0:if(c.b!==c)A.C(A.kY(c.a)) +c.b=d +break +case 1:if(c.b!==c)A.C(A.kY(c.a)) +c.b=0 +break}if(b.aq===B.co)switch(b.N.a){case 0:l=c.b +if(l===c)A.C(A.h6(c.a)) +j=new A.aG(l,d,q,q) +break +case 1:l=c.b +if(l===c)A.C(A.h6(c.a)) +j=new A.aG(r,r,l,d) +break +default:j=a}else switch(b.N.a){case 0:l=c.b +if(l===c)A.C(A.h6(c.a)) +j=new A.aG(l,d,0,q) +break +case 1:l=c.b +if(l===c)A.C(A.h6(c.a)) +j=new A.aG(0,r,l,d) +break +default:j=a}i=a4.$2(a2,j) +m+=b.RZ(i) +f+=d +n=Math.max(n,b.RV(i))}l=a2.b +l.toString +a2=s.a(l).a7$}}return new A.c3l(a1&&b.ag===B.u?a0:m,n,m)}, +bJ(){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=t.k.a(A.H.prototype.gZ.call(a2)),a5=a2.ak7(a4,A.k1()),a6=a5.a,a7=a5.b +if(a2.aq===B.hr){s=a2.Y$ +for(r=t.US,q=0,p=0,o=0;s!=null;){n=a2.aW +n.toString +m=s.x8(n,!0) +if(m!=null){q=Math.max(q,m) +p=Math.max(m,p) +n=s.id +o=Math.max((n==null?A.C(A.a0(a3+A.I(s).k(0)+"#"+A.bq(s))):n).b-m,o) +a7=Math.max(p+o,a7)}n=s.b +n.toString +s=r.a(n).a7$}}else q=0 +switch(a2.N.a){case 0:a2.id=a4.bd(new A.V(a6,a7)) +a6=a2.gu(0).a +a7=a2.gu(0).b +break +case 1:a2.id=a4.bd(new A.V(a7,a6)) +a6=a2.gu(0).b +a7=a2.gu(0).a +break}l=a6-a5.c +a2.aT=Math.max(0,-l) +k=Math.max(0,l) +j=A.aF("leadingSpace") +i=A.aF("betweenSpace") +r=A.cRp(a2.N,a2.aJ,a2.U) +h=r===!1 +switch(a2.a4.a){case 0:j.se9(0) +i.se9(0) +break +case 1:j.se9(k) +i.se9(0) +break +case 2:j.se9(a2.D.$2(k/2,B.av)) +i.se9(0) +break +case 3:j.se9(0) +r=a2.cT$ +i.se9(r>1?a2.D.$2(k/(r-1),B.av):0) +break +case 4:r=a2.cT$ +i.se9(r>0?a2.D.$2(k/r,B.av):0) +r=i.aX() +j.se9(a2.D.$2(r/2,B.av)) +break +case 5:r=a2.cT$ +i.se9(r>0?a2.D.$2(k/(r+1),B.av):0) +r=i.aX() +j.se9(a2.D.$2(r,B.av)) +break}g=k-2*j.aX() +f=h?a6-j.aX():j.aX() +s=a2.Y$ +for(r=t.US,n=a7/2,e=i.a;s!=null;s=a1){d=s.b +d.toString +r.a(d) +c=a2.aq +switch(c.a){case 0:case 1:if(A.cRp(A.cSx(a2.N),a2.aJ,a2.U)===(c===B.a4))b=0 +else{c=s.id +b=a7-a2.RV(c==null?A.C(A.a0(a3+A.I(s).k(0)+"#"+A.bq(s))):c)}break +case 2:c=s.id +c=a2.RV(c==null?A.C(A.a0(a3+A.I(s).k(0)+"#"+A.bq(s))):c) +a=a2.D +b=a.b.$3(n-c/2,a.a,B.av) +break +case 3:b=0 +break +case 4:if(a2.N===B.a_){c=a2.aW +c.toString +m=s.x8(c,!0) +b=m!=null?q-m:0}else b=0 +break +default:b=null}if(h){c=s.id +f-=a2.RZ(c==null?A.C(A.a0(a3+A.I(s).k(0)+"#"+A.bq(s))):c)}switch(a2.N.a){case 0:d.a=new A.j(f,b) +break +case 1:d.a=new A.j(b,f) +break}a0=A.aF("actualBetweenSpace") +a1=d.a7$ +d=i.b +if(d===i)A.C(A.h6(e)) +if(d>0&&a1!=null&&r.a(a1.b).a7$==null){a0.b=g +d=g}else a0.b=d +if(a1!=null)g-=d +if(h)f-=d +else{d=s.id +d=a2.RZ(d==null?A.C(A.a0(a3+A.I(s).k(0)+"#"+A.bq(s))):d) +c=a0.b +if(c===a0)A.C(A.h6(a0.a)) +f+=d+c}}}, +ej(a,b){return this.ol(a,b)}, +aI(a,b){var s,r,q,p=this +if(!(p.aT>1e-10)){p.nL(a,b) +return}if(p.gu(0).gad(0))return +s=p.ck +r=p.cx +r===$&&A.b() +q=p.gu(0) +s.sb9(0,a.nV(r,b,new A.W(0,0,0+q.a,0+q.b),p.ga9j(),p.aU,s.a))}, +m(){this.ck.sb9(0,null) +this.aS2()}, +rq(a){var s +switch(this.aU.a){case 0:return null +case 1:case 2:case 3:if(this.aT>1e-10){s=this.gu(0) +s=new A.W(0,0,0+s.a,0+s.b)}else s=null +return s}}, +hL(){return this.a0W()}} +A.bAI.prototype={ +$2(a,b){return a.aw(B.ad,b,a.gbG())}, +$S:64} +A.bAE.prototype={ +$2(a,b){return a.aw(B.aj,b,a.gbL())}, +$S:64} +A.bAG.prototype={ +$2(a,b){return a.aw(B.ao,b,a.gbP())}, +$S:64} +A.bAC.prototype={ +$2(a,b){return a.aw(B.ay,b,a.gbZ())}, +$S:64} +A.c3l.prototype={} +A.aUT.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.US;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.US;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aUV.prototype={} +A.ahv.prototype={ +m(){var s,r,q +for(s=this.wc$,r=s.length,q=0;q>>8&255]&255)<<8|(B.au[a>>>16&255]&255)<<16|B.au[a>>>24&255]<<24)>>>0}, +gb3(){return 16}, +b6(a){}, +fU(a,b){var s,r=this +r.c=!0 +r.b=r.A6(!0,b) +s=t.S +if(r.c)r.d=A.ew(B.au,!0,s) +else r.d=A.ew(B.bv,!0,s)}, +A6(a,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=a0.a +b===$&&A.b() +s=b.length +if(s<16||s>32||(s&7)!==0)throw A.d(A.aM("Key length not 128/192/256 bits.",null)) +r=s>>>2 +q=r+6 +c.a=q +p=q+1 +o=J.d1(p,t.Cm) +for(q=t.S,n=0;n>>8|(j&$.co[24])<<24)>>>0)^B.aMH[n-1])>>>0 +b=o[n] +b[0]=m +l=(l^m)>>>0 +b[1]=l +k=(k^l)>>>0 +b[2]=k +j=(j^k)>>>0 +b[3]=j}break +case 6:m=A.cr(b,0,B.z) +q=o[0] +q[0]=m +l=A.cr(b,4,B.z) +q[1]=l +k=A.cr(b,8,B.z) +q[2]=k +j=A.cr(b,12,B.z) +q[3]=j +i=A.cr(b,16,B.z) +h=A.cr(b,20,B.z) +for(n=1,g=1;!0;){b=o[n] +b[0]=i +b[1]=h +f=g<<1 +m=(m^c.L4((h>>>8|(h&$.co[24])<<24)>>>0)^g)>>>0 +b[2]=m +l=(l^m)>>>0 +b[3]=l +k=(k^l)>>>0 +b=o[n+1] +b[0]=k +j=(j^k)>>>0 +b[1]=j +i=(i^j)>>>0 +b[2]=i +h=(h^i)>>>0 +b[3]=h +g=f<<1 +m=(m^c.L4((h>>>8|(h&$.co[24])<<24)>>>0)^f)>>>0 +b=o[n+2] +b[0]=m +l=(l^m)>>>0 +b[1]=l +k=(k^l)>>>0 +b[2]=k +j=(j^k)>>>0 +b[3]=j +n+=3 +if(n>=13)break +i=(i^j)>>>0 +h=(h^i)>>>0}break +case 8:m=A.cr(b,0,B.z) +q=o[0] +q[0]=m +l=A.cr(b,4,B.z) +q[1]=l +k=A.cr(b,8,B.z) +q[2]=k +j=A.cr(b,12,B.z) +q[3]=j +i=A.cr(b,16,B.z) +q=o[1] +q[0]=i +h=A.cr(b,20,B.z) +q[1]=h +e=A.cr(b,24,B.z) +q[2]=e +d=A.cr(b,28,B.z) +q[3]=d +for(n=2,g=1;!0;g=f){f=g<<1 +m=(m^c.L4((d>>>8|(d&$.co[24])<<24)>>>0)^g)>>>0 +b=o[n] +b[0]=m +l=(l^m)>>>0 +b[1]=l +k=(k^l)>>>0 +b[2]=k +j=(j^k)>>>0 +b[3]=j;++n +if(n>=15)break +i=(i^c.L4(j))>>>0 +b=o[n] +b[0]=i +h=(h^i)>>>0 +b[1]=h +e=(e^h)>>>0 +b[2]=e +d=(d^e)>>>0 +b[3]=d;++n}break +default:throw A.d(A.a0("Should never get here"))}return o}, +fN(a,b,c,d){var s,r,q=this +if(b+16>a.byteLength)throw A.d(A.aM("Input buffer too short",null)) +if(d+16>c.byteLength)throw A.d(A.aM("Output buffer too short",null)) +s=q.c +r=q.b +if(s){r===$&&A.b() +q.b0t(a,b,c,d,r)}else{r===$&&A.b() +q.aZX(a,b,c,d,r)}return 16}, +b0t(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,a1,a2=A.cr(b1,b2,B.z),a3=A.cr(b1,b2+4,B.z),a4=A.cr(b1,b2+8,B.z),a5=A.cr(b1,b2+12,B.z),a6=b5[0],a7=a2^a6[0],a8=a3^a6[1],a9=a4^a6[2],b0=a5^a6[3] +for(a6=this.a-1,s=1;s>>8&255] +p=$.co[8] +o=B.a1[a9>>>16&255] +n=$.co[16] +m=B.a1[b0>>>24&255] +l=$.co[24] +k=b5[s] +j=r^(q>>>24|(q&p)<<8)^(o>>>16|(o&n)<<16)^(m>>>8|(m&l)<<24)^k[0] +m=B.a1[a8&255] +o=B.a1[a9>>>8&255] +q=B.a1[b0>>>16&255] +r=B.a1[a7>>>24&255] +i=m^(o>>>24|(o&p)<<8)^(q>>>16|(q&n)<<16)^(r>>>8|(r&l)<<24)^k[1] +r=B.a1[a9&255] +q=B.a1[b0>>>8&255] +o=B.a1[a7>>>16&255] +m=B.a1[a8>>>24&255] +h=r^(q>>>24|(q&p)<<8)^(o>>>16|(o&n)<<16)^(m>>>8|(m&l)<<24)^k[2] +m=B.a1[b0&255] +a7=B.a1[a7>>>8&255] +a8=B.a1[a8>>>16&255] +a9=B.a1[a9>>>24&255];++s +b0=m^(a7>>>24|(a7&p)<<8)^(a8>>>16|(a8&n)<<16)^(a9>>>8|(a9&l)<<24)^k[3] +k=B.a1[j&255] +a9=B.a1[i>>>8&255] +a8=B.a1[h>>>16&255] +a7=B.a1[b0>>>24&255] +m=b5[s] +a7=k^(a9>>>24|(a9&p)<<8)^(a8>>>16|(a8&n)<<16)^(a7>>>8|(a7&l)<<24)^m[0] +a8=B.a1[i&255] +a9=B.a1[h>>>8&255] +k=B.a1[b0>>>16&255] +o=B.a1[j>>>24&255] +a8=a8^(a9>>>24|(a9&p)<<8)^(k>>>16|(k&n)<<16)^(o>>>8|(o&l)<<24)^m[1] +o=B.a1[h&255] +k=B.a1[b0>>>8&255] +a9=B.a1[j>>>16&255] +q=B.a1[i>>>24&255] +a9=o^(k>>>24|(k&p)<<8)^(a9>>>16|(a9&n)<<16)^(q>>>8|(q&l)<<24)^m[2] +q=B.a1[b0&255] +k=B.a1[j>>>8&255] +o=B.a1[i>>>16&255] +r=B.a1[h>>>24&255];++s +b0=q^(k>>>24|(k&p)<<8)^(o>>>16|(o&n)<<16)^(r>>>8|(r&l)<<24)^m[3]}j=B.a1[a7&255]^A.j7(B.a1[a8>>>8&255],24)^A.j7(B.a1[a9>>>16&255],16)^A.j7(B.a1[b0>>>24&255],8)^b5[s][0] +i=B.a1[a8&255]^A.j7(B.a1[a9>>>8&255],24)^A.j7(B.a1[b0>>>16&255],16)^A.j7(B.a1[a7>>>24&255],8)^b5[s][1] +h=B.a1[a9&255]^A.j7(B.a1[b0>>>8&255],24)^A.j7(B.a1[a7>>>16&255],16)^A.j7(B.a1[a8>>>24&255],8)^b5[s][2] +b0=B.a1[b0&255]^A.j7(B.a1[a7>>>8&255],24)^A.j7(B.a1[a8>>>16&255],16)^A.j7(B.a1[a9>>>24&255],8)^b5[s][3] +a6=B.au[j&255] +a9=B.au[i>>>8&255] +r=this.d +q=r[h>>>16&255] +p=r[b0>>>24&255] +o=b5[s+1] +n=o[0] +m=r[i&255] +l=B.au[h>>>8&255] +a8=B.au[b0>>>16&255] +k=r[j>>>24&255] +g=o[1] +f=r[h&255] +e=B.au[b0>>>8&255] +d=B.au[j>>>16&255] +c=B.au[i>>>24&255] +b=o[2] +a=r[b0&255] +a0=r[j>>>8&255] +r=r[i>>>16&255] +a1=B.au[h>>>24&255] +o=o[3] +A.r5((a6&255^(a9&255)<<8^(q&255)<<16^p<<24^n)>>>0,b3,b4,B.z) +A.r5((m&255^(l&255)<<8^(a8&255)<<16^k<<24^g)>>>0,b3,b4+4,B.z) +A.r5((f&255^(e&255)<<8^(d&255)<<16^c<<24^b)>>>0,b3,b4+8,B.z) +A.r5((a&255^(a0&255)<<8^(r&255)<<16^a1<<24^o)>>>0,b3,b4+12,B.z)}, +aZX(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=A.cr(b1,b2,B.z),a1=A.cr(b1,b2+4,B.z),a2=A.cr(b1,b2+8,B.z),a3=A.cr(b1,b2+12,B.z),a4=this.a,a5=b5[a4],a6=a0^a5[0],a7=a1^a5[1],a8=a2^a5[2],a9=a4-1,b0=a3^a5[3] +for(a5=a8,a4=a7;a9>1;){s=B.a2[a6&255] +r=B.a2[b0>>>8&255] +q=$.co[8] +p=B.a2[a5>>>16&255] +o=$.co[16] +n=B.a2[a4>>>24&255] +m=$.co[24] +a7=b5[a9] +l=s^(r>>>24|(r&q)<<8)^(p>>>16|(p&o)<<16)^(n>>>8|(n&m)<<24)^a7[0] +n=B.a2[a4&255] +p=B.a2[a6>>>8&255] +r=B.a2[b0>>>16&255] +s=B.a2[a5>>>24&255] +k=n^(p>>>24|(p&q)<<8)^(r>>>16|(r&o)<<16)^(s>>>8|(s&m)<<24)^a7[1] +s=B.a2[a5&255] +r=B.a2[a4>>>8&255] +p=B.a2[a6>>>16&255] +n=B.a2[b0>>>24&255] +j=s^(r>>>24|(r&q)<<8)^(p>>>16|(p&o)<<16)^(n>>>8|(n&m)<<24)^a7[2] +n=B.a2[b0&255] +a5=B.a2[a5>>>8&255] +a4=B.a2[a4>>>16&255] +a6=B.a2[a6>>>24&255];--a9 +b0=n^(a5>>>24|(a5&q)<<8)^(a4>>>16|(a4&o)<<16)^(a6>>>8|(a6&m)<<24)^a7[3] +a7=B.a2[l&255] +a6=B.a2[b0>>>8&255] +a4=B.a2[j>>>16&255] +a5=B.a2[k>>>24&255] +n=b5[a9] +a6=a7^(a6>>>24|(a6&q)<<8)^(a4>>>16|(a4&o)<<16)^(a5>>>8|(a5&m)<<24)^n[0] +a5=B.a2[k&255] +a4=B.a2[l>>>8&255] +a7=B.a2[b0>>>16&255] +p=B.a2[j>>>24&255] +a4=a5^(a4>>>24|(a4&q)<<8)^(a7>>>16|(a7&o)<<16)^(p>>>8|(p&m)<<24)^n[1] +p=B.a2[j&255] +a7=B.a2[k>>>8&255] +a5=B.a2[l>>>16&255] +r=B.a2[b0>>>24&255] +a5=p^(a7>>>24|(a7&q)<<8)^(a5>>>16|(a5&o)<<16)^(r>>>8|(r&m)<<24)^n[2] +r=B.a2[b0&255] +a7=B.a2[j>>>8&255] +p=B.a2[k>>>16&255] +s=B.a2[l>>>24&255];--a9 +b0=r^(a7>>>24|(a7&q)<<8)^(p>>>16|(p&o)<<16)^(s>>>8|(s&m)<<24)^n[3]}l=B.a2[a6&255]^A.j7(B.a2[b0>>>8&255],24)^A.j7(B.a2[a5>>>16&255],16)^A.j7(B.a2[a4>>>24&255],8)^b5[a9][0] +k=B.a2[a4&255]^A.j7(B.a2[a6>>>8&255],24)^A.j7(B.a2[b0>>>16&255],16)^A.j7(B.a2[a5>>>24&255],8)^b5[a9][1] +j=B.a2[a5&255]^A.j7(B.a2[a4>>>8&255],24)^A.j7(B.a2[a6>>>16&255],16)^A.j7(B.a2[b0>>>24&255],8)^b5[a9][2] +b0=B.a2[b0&255]^A.j7(B.a2[a5>>>8&255],24)^A.j7(B.a2[a4>>>16&255],16)^A.j7(B.a2[a6>>>24&255],8)^b5[a9][3] +a4=B.bv[l&255] +a5=this.d +s=a5[b0>>>8&255] +r=a5[j>>>16&255] +q=B.bv[k>>>24&255] +p=b5[0] +o=p[0] +n=a5[k&255] +m=a5[l>>>8&255] +a7=B.bv[b0>>>16&255] +i=a5[j>>>24&255] +h=p[1] +g=a5[j&255] +f=B.bv[k>>>8&255] +e=B.bv[l>>>16&255] +d=a5[b0>>>24&255] +c=p[2] +b=B.bv[b0&255] +a=a5[j>>>8&255] +a8=a5[k>>>16&255] +a5=a5[l>>>24&255] +p=p[3] +A.r5((a4&255^(s&255)<<8^(r&255)<<16^q<<24^o)>>>0,b3,b4,B.z) +A.r5((n&255^(m&255)<<8^(a7&255)<<16^i<<24^h)>>>0,b3,b4+4,B.z) +A.r5((g&255^(f&255)<<8^(e&255)<<16^d<<24^c)>>>0,b3,b4+8,B.z) +A.r5((b&255^(a&255)<<8^(a8&255)<<16^a5<<24^p)>>>0,b3,b4+12,B.z)}} +A.b30.prototype={ +$0(){var s=J.JF(0,t.S) +return new A.GX(s)}, +$S:1040} +A.bcm.prototype={ +A6(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=J.d1(32,t.S) +for(s=0;s<32;++s)h[s]=0 +r=t.y +q=J.d1(56,r) +for(s=0;s<56;++s)q[s]=!1 +p=J.d1(56,r) +for(s=0;s<56;++s)p[s]=!1 +for(o=0;o<56;++o){n=$.cV7()[o] +q[o]=(b[n>>>3]&$.d4n[n&7])!==0}for(m=0;m<16;++m){l=a?(m&$.co[1])<<1>>>0:(15-m&$.co[1])<<1>>>0 +k=l+1 +h[k]=0 +h[l]=0 +for(o=0;o<28;++o){n=o+$.cCu()[m] +if(n<28)p[o]=q[n] +else p[o]=q[n-28]}for(o=28;o<56;++o){n=o+$.cCu()[m] +if(n<56)p[o]=q[n] +else p[o]=q[n-28]}for(o=0;o<24;++o){r=$.cV8() +if(p[r[o]])h[l]=(h[l]|$.cGK[o])>>>0 +if(p[r[o+24]])h[k]=(h[k]|$.cGK[o])>>>0}}for(m=0;m!==32;m+=2){j=h[m] +r=m+1 +i=h[r] +h[m]=(j&16515072&$.co[6])<<6|(j&4032&$.co[10])<<10|i>>>10&16128|i>>>6&63 +h[r]=(j&258048&$.co[12])<<12|(j&63&$.co[16])<<16|i>>>4&16128|i&63}return h}, +G_(a,b,c,d,e){var s,r,q,p,o,n,m,l=this,k=l.aiQ(b,c),j=l.aiQ(b,c+4),i=(k>>>4^j)&252645135 +j^=i +k^=A.iJ(i,4) +i=(k>>>16^j)&65535 +j^=i +k^=A.iJ(i,16) +i=(j>>>2^k)&858993459 +k^=i +j^=A.iJ(i,2) +i=(j>>>8^k)&16711935 +k^=i +j=(j^A.iJ(i,8))>>>0 +j=A.iJ(j,1)|j>>>31 +i=(k^j)&2863311530 +k=(k^i)>>>0 +j=(j^i)>>>0 +k=A.iJ(k,1)|k>>>31 +for(s=0;s<8;++s){r=$.co[28] +q=s*4 +i=((j&r)<<28|j>>>4)^a[q] +p=$.cGI[i&63] +o=$.cGG[i>>>8&63] +n=$.cGE[i>>>16&63] +m=$.cGC[i>>>24&63] +i=j^a[q+1] +k^=p|o|n|m|$.cGJ[i&63]|$.cGH[i>>>8&63]|$.cGF[i>>>16&63]|$.cGD[i>>>24&63] +i=((k&r)<<28|k>>>4)^a[q+2] +p=$.cGI[i&63] +r=$.cGG[i>>>8&63] +m=$.cGE[i>>>16&63] +n=$.cGC[i>>>24&63] +i=k^a[q+3] +j=(j^(p|r|m|n|$.cGJ[i&63]|$.cGH[i>>>8&63]|$.cGF[i>>>16&63]|$.cGD[i>>>24&63]))>>>0}j=A.iJ(j,31)|j>>>1 +i=(k^j)&2863311530 +k=(k^i)>>>0 +j^=i +k=A.iJ(k,31)|k>>>1 +i=(k>>>8^j)&16711935 +j^=i +k^=A.iJ(i,8) +i=(k>>>2^j)&858993459 +j^=i +k^=A.iJ(i,2) +i=(j>>>16^k)&65535 +k^=i +j^=A.iJ(i,16) +i=(j>>>4^k)&252645135 +l.anO((j^A.iJ(i,4))>>>0,d,e) +l.anO((k^i)>>>0,d,e+4)}, +anO(a,b,c){b[c]=a>>>24;++c +b[c]=a>>>16;++c +b[c]=a>>>8 +b[c+1]=a}, +aiQ(a,b){var s=b+1,r=s+1 +return(A.iJ(a[b],24)|A.iJ(a[s]&255,16)|A.iJ(a[r]&255,8)|a[r+1]&255)>>>0}} +A.Qg.prototype={ +gb3(){return 8}, +fU(a,b){var s,r,q,p,o,n,m=this +if(b instanceof A.qg){s=b.a +s===$&&A.b() +r=s.length +q=r===24 +if(!q&&r!==16)throw A.d(A.aM("key size must be 16 or 24 bytes.",null)) +m.d=!0 +p=new Uint8Array(8) +m.a1z(s,0,p,0,8) +m.a=m.A6(!0,p) +o=new Uint8Array(8) +m.a1z(s,8,o,0,8) +m.b=m.A6(!1,o) +if(q){n=new Uint8Array(8) +m.a1z(s,16,n,0,8) +m.c=m.A6(!0,n)}else m.c=m.a}}, +zP(a){var s=new Uint8Array(8) +return B.p.cK(s,0,this.fN(a,0,s,0))}, +fN(a,b,c,d){var s,r=this,q=r.a +if(q==null||r.b==null||r.c==null)throw A.d(A.aM("DESede engine not initialised",null)) +if(b+8>a.length)throw A.d(A.aM("input buffer too short",null)) +if(d+8>c.length)throw A.d(A.aM("output buffer too short",null)) +s=new Uint8Array(8) +if(r.d){q.toString +r.G_(q,a,b,s,0) +q=r.b +q.toString +r.G_(q,s,0,s,0) +q=r.c +q.toString +r.G_(q,s,0,c,d)}else{q=r.c +q.toString +r.G_(q,a,b,s,0) +q=r.b +q.toString +r.G_(q,s,0,s,0) +q=r.a +q.toString +r.G_(q,s,0,c,d)}return 8}, +b6(a){}, +a1z(a,b,c,d,e){var s +for(s=0;sa.length)throw A.d(A.aM("Input buffer too short",null)) +for(s=0;s13)throw A.d(A.aM("nonce must have length from 7 to 13 octets",null)) +q.ax=s +q.b6(0)}, +pD(a,b,c,d,e){this.ch.B(0,B.p.cK(a,b,b+c)) +return 0}, +mc(a,b){var s=this.ch,r=this.beA(s.HQ(),0,s.gA(s),a,b) +this.b6(0) +return r}, +aDr(a,b,c){this.ay.B(0,B.p.cK(a,b,b+c))}, +fN(a,b,c,d){this.ch.B(0,B.p.cK(a,b,b+a.length)) +return 0}, +beA(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.Q +g===$&&A.b() +s=15-g.length +if(s<4)if(c>=B.d.hN(1,8*s))throw A.d(A.a0("CCM packet too large for choice of q.")) +g=h.a +r=g.gb3() +q=new Uint8Array(r) +q[0]=s-1&7 +r=h.Q +A.xC(r,0,q,1,r.length) +r=g.gb3() +p=A.cyQ(g) +o=h.CW +o===$&&A.b() +n=h.ax +n===$&&A.b() +p.fU(o,new A.ua(q,n,t.i5)) +o=h.at +o===$&&A.b() +m=c+o +if(d.length0)r[0]=r[0]|64 +r[0]=r[0]|(B.d.aD(s.f-2,2)&7)<<3 +j=r[0] +i=k.Q +i===$&&A.b() +q=i.length +r[0]=j|15-q-1&7 +A.xC(i,0,r,1,q) +for(p=c,o=1;p>0;){r[16-o]=p&255 +p=p>>>0>>>8;++o}s.Dg(0,r,0,16) +if(k.a39()>0){n=k.a39() +if(n<65280){s.hY(B.d.b2(n,8)) +s.hY(n) +m=2}else{s.hY(255) +s.hY(254) +s.hY(B.d.b2(n,24)) +s.hY(B.d.b2(n,16)) +s.hY(B.d.b2(n,8)) +s.hY(n) +m=6}j=k.as +if(j!=null)s.Dg(0,j,0,j.length) +j=k.ay +if(j.gA(j)>0)s.Dg(0,j.HQ(),0,j.gA(j)) +m=B.d.M(m+n,16) +if(m!==0)for(l=m;l!==16;++l)s.hY(0)}s.Dg(0,a,b,c) +return s.mc(d,0)}, +amh(a,b){var s=b<32||b>128||0!==(b&15) +if(s)throw A.d(A.aM("tag length in octets must be one of {4,6,8,10,12,14,16}",null)) +return b>>>3}, +gX1(){var s=this.CW +s===$&&A.b() +return s}, +aDk(a){}, +aeU(a){var s,r=this.ch +r=r.gA(r) +this.CW===$&&A.b() +s=this.at +s===$&&A.b() +return a+r+s}, +a39(){var s,r=this.ay +r=r.gA(r) +s=this.as +return r+(s==null?0:s.length)}} +A.b7y.prototype={ +$2(a,b){return new A.b7x(b)}, +$S:1044} +A.b7x.prototype={ +$0(){var s,r,q=this.a.ex(1) +q.toString +q=$.fQ().h7(0,q,t.mw) +s=$.OD() +s=new A.Ca(new A.aMz(s),new A.aMz(s),q) +r=q.gb3() +s.z=new Uint8Array(r) +if(q.gb3()!==16)A.C(A.aM("CCM requires a block size of 16",null)) +return s}, +$S:1045} +A.Cb.prototype={ +b6(a){var s,r=this.d +r.toString +s=this.c +s===$&&A.b() +B.p.cV(r,0,s.length,s) +this.b.b6(0)}, +fU(a,b){var s,r,q,p,o,n=this +n.f=!0 +if(b instanceof A.ua){s=b.a +r=s.length +q=n.c +q===$&&A.b() +p=q.length +if(ra.length)throw A.d(A.aM("Input buffer too short",null)) +if(d+n>c.length)throw A.d(A.aM("Output buffer too short",null)) +s=o.d +s.toString +r=o.e +r.toString +o.b.fN(s,0,r,0) +for(s=o.e,q=0;q") +o.Bo(r,new Uint8Array(A.f1(A.R(new A.bE(p,s),!0,s.h("aa.E"))))) +o.Kw(r,o.z)}o.Q=r +s=new Uint8Array(16) +o.at=s +n.fN(r,0,s,0) +o.as=new Uint8Array(16) +o.ax=new Uint8Array(16) +o.ay=0}, +fN(a,b,c,d){var s,r,q,p=this,o=p.a,n=a.length-b +if(o.gb3()=12&&p[s]===0))break +p[s]=0 +if(s>12){r=s-1 +p[r]=p[r]+1}--s}q.a.fN(p,0,a,0)}, +Kw(a,b){var s,r,q,p,o=new Uint8Array(16) +for(s=this.CW,r=0;r<128;++r){q=B.d.aD(r,8) +p=B.d.hN(1,7-B.d.M(r,8)) +A.cFx(o,a,(b[q]&p)===p) +A.cFx(a,s,this.bi1(a))}B.p.iK(a,0,o)}, +Bo(a,b){var s,r +for(s=a.length,r=0;r>>1 +if(s)a[r]=a[r]|128}return s}, +mc(a,b){var s,r=this,q=!B.p.gad(r.gaEC())?r.fN(r.gaEC(),0,a,b):0,p=new Uint32Array(4),o=r.f +o===$&&A.b() +p[2]=o.length*8 +o=r.ay +o===$&&A.b() +p[0]=o*8 +s=A.dF(p.buffer,0,null) +p=A.bk(s).h("bE") +s=new Uint8Array(A.f1(A.R(new A.bE(s,p),!0,p.h("aa.E")))) +p=r.ax +p===$&&A.b() +r.Bo(p,s) +o=r.z +o===$&&A.b() +r.Kw(p,o) +o=r.ax +p=r.at +p===$&&A.b() +r.Bo(o,p) +r.b===$&&A.b() +B.p.iK(a,b+q,r.ax) +r.bHP() +return q+16}, +aDr(a,b,c){var s,r,q,p,o=this,n=new Uint8Array(16) +for(s=a.length,r=0;ra.length)throw A.d(A.aM("Input buffer too short",null)) +if(d+m.gb3()>c.length)throw A.d(A.aM("Output buffer too short",null)) +if(n.e){n.e=!1 +s=n.c +s.toString +r=n.d +r.toString +m.fN(s,0,r,0) +n.f=A.cr(n.d,0,B.z) +n.r=A.cr(n.d,4,B.z)}s=n.f +s===$&&A.b() +s+=16843009 +n.f=s +r=n.r +r===$&&A.b() +n.r=r+16843012 +A.r5(s,n.c,0,B.z) +A.r5(n.r,n.c,4,B.z) +s=n.c +s.toString +r=n.d +r.toString +m.fN(s,0,r,0) +for(q=0;qa.length)throw A.d(A.aM("Input buffer too short",null)) +for(s=0;sa.length)throw A.d(A.aM("Input buffer too short",null)) +if(d+m>c.length)throw A.d(A.aM("Output buffer too short",null)) +s=n.d +s.toString +r=n.e +r.toString +n.b.fN(s,0,r,0) +for(s=n.e,q=0;q>>3 +m=$.cCM() +l=128-r +p=m[i[l]&255>>>(-b&7)]&255 +i[l]=p +for(q=l-1;q>=0;--q){p=m[p^i[q+r]]&255 +i[q]=p}k=J.d1(64,j) +for(s=0;s<64;++s)k[s]=0 +for(j=k.length,q=0;q!==j;++q){m=2*q +k[q]=i[m]+(i[m+1]<<8>>>0)}return k}, +fU(a,b){var s +this.a=!0 +if(b instanceof A.qg){s=b.a +s===$&&A.b() +this.b=this.A6(s,s.length*8)}}, +zP(a){var s=new Uint8Array(8) +return B.p.cK(s,0,this.fN(a,0,s,0))}, +fN(a,b,c,d){var s=this +if(s.b==null)throw A.d(A.aM("RC2 engine not initialised",null)) +if(b+8>a.length)throw A.d(A.aM("input buffer too short",null)) +if(d+8>c.length)throw A.d(A.aM("output buffer too short",null)) +if(s.a)s.bv9(a,b,c,d) +else s.btp(a,b,c,d) +return 8}, +b6(a){}, +bv9(a,b,c,d){var s,r,q,p=((a[b+7]&255)<<8)+(a[b+6]&255),o=((a[b+5]&255)<<8)+(a[b+4]&255),n=((a[b+3]&255)<<8)+(a[b+2]&255),m=((a[b+1]&255)<<8)+(a[b]&255) +for(s=this.b,r=0;r<=16;r+=4){q=m+((n&~p)>>>0)+((o&p)>>>0)+s[r]&65535 +m=q<<1|q>>>15 +q=n+((o&~m)>>>0)+(p&m)+s[r+1]&65535 +n=q<<2|q>>>14 +q=o+((p&~n)>>>0)+(m&n)+s[r+2]&65535 +o=q<<3|q>>>13 +q=p+(m&~o)+(n&o)+s[r+3]&65535 +p=q<<5|q>>>11}m+=s[p&63] +n+=s[m&63] +o+=s[n&63] +p+=s[o&63] +for(r=20;r<=40;r+=4){q=m+((n&~p)>>>0)+((o&p)>>>0)+s[r]&65535 +m=q<<1|q>>>15 +q=n+((o&~m)>>>0)+(p&m)+s[r+1]&65535 +n=q<<2|q>>>14 +q=o+((p&~n)>>>0)+(m&n)+s[r+2]&65535 +o=q<<3|q>>>13 +q=p+(m&~o)+(n&o)+s[r+3]&65535 +p=q<<5|q>>>11}m+=s[p&63] +n+=s[m&63] +o+=s[n&63] +p+=s[o&63] +for(r=44;r<64;r+=4){q=m+((n&~p)>>>0)+((o&p)>>>0)+s[r]&65535 +m=q<<1|q>>>15 +q=n+((o&~m)>>>0)+(p&m)+s[r+1]&65535 +n=q<<2|q>>>14 +q=o+((p&~n)>>>0)+(m&n)+s[r+2]&65535 +o=q<<3|q>>>13 +q=p+(m&~o)+(n&o)+s[r+3]&65535 +p=q<<5|q>>>11}c[d]=m +c[d+1]=B.d.b2(m,8) +c[d+2]=n +c[d+3]=B.d.b2(n,8) +c[d+4]=o +c[d+5]=B.d.b2(o,8) +c[d+6]=p +c[d+7]=B.d.b2(p,8)}, +btp(a,b,c,d){var s,r,q,p=((a[b+7]&255)<<8)+(a[b+6]&255),o=((a[b+5]&255)<<8)+(a[b+4]&255),n=((a[b+3]&255)<<8)+(a[b+2]&255),m=((a[b+1]&255)<<8)+(a[b]&255) +for(s=this.b,r=60;r>=44;r-=4){q=p&65535 +p=(q<<11|q>>>5)-(((m&~o)>>>0)+((n&o)>>>0)+s[r+3]) +q=o&65535 +o=(q<<13|q>>>3)-(((p&~n)>>>0)+((m&n)>>>0)+s[r+2]) +q=n&65535 +n=(q<<14|q>>>2)-(((o&~m)>>>0)+((p&m)>>>0)+s[r+1]) +q=m&65535 +m=(q<<15|q>>>1)-(((n&~p)>>>0)+((o&p)>>>0)+s[r])}p-=s[o&63] +o-=s[n&63] +n-=s[m&63] +m-=s[p&63] +for(r=40;r>=20;r-=4){q=p&65535 +p=(q<<11|q>>>5)-(((m&~o)>>>0)+((n&o)>>>0)+s[r+3]) +q=o&65535 +o=(q<<13|q>>>3)-(((p&~n)>>>0)+((m&n)>>>0)+s[r+2]) +q=n&65535 +n=(q<<14|q>>>2)-(((o&~m)>>>0)+((p&m)>>>0)+s[r+1]) +q=m&65535 +m=(q<<15|q>>>1)-(((n&~p)>>>0)+((o&p)>>>0)+s[r])}p-=s[o&63] +o-=s[n&63] +n-=s[m&63] +m-=s[p&63] +for(r=16;r>=0;r-=4){q=p&65535 +p=(q<<11|q>>>5)-(((m&~o)>>>0)+((n&o)>>>0)+s[r+3]) +q=o&65535 +o=(q<<13|q>>>3)-(((p&~n)>>>0)+((m&n)>>>0)+s[r+2]) +q=n&65535 +n=(q<<14|q>>>2)-(((o&~m)>>>0)+((p&m)>>>0)+s[r+1]) +q=m&65535 +m=(q<<15|q>>>1)-(((n&~p)>>>0)+((o&p)>>>0)+s[r])}c[d]=m +c[d+1]=B.d.b2(m,8) +c[d+2]=n +c[d+3]=B.d.b2(n,8) +c[d+4]=o +c[d+5]=B.d.b2(o,8) +c[d+6]=p +c[d+7]=B.d.b2(p,8)}} +A.bzg.prototype={ +$0(){return new A.TS()}, +$S:1062} +A.P1.prototype={ +gks(){return"Blake2b"}, +gjz(){return this.a}, +kQ(){var s,r,q,p=this,o=null +if(p.x==null){s=A.ni(8) +p.x=s +s=s.a[0] +r=$.cDe().a +s.ci(0,r[0]) +s.e0(A.e((p.a|p.b<<8|16842752)>>>0,o)) +p.x.a[1].ci(0,r[1]) +p.x.a[2].ci(0,r[2]) +p.x.a[3].ci(0,r[3]) +p.x.a[4].ci(0,r[4]) +p.x.a[5].ci(0,r[5]) +if(p.c!=null){s=p.x.a[4] +q=A.e(0,o) +q.A_(p.c,0,B.z) +s.e0(q) +q=p.x.a[5] +s=A.e(0,o) +s.A_(p.c,8,B.z) +q.e0(s)}p.x.a[6].ci(0,r[6]) +p.x.a[7].ci(0,r[7]) +if(p.d!=null){s=p.x.a[6] +r=A.e(0,o) +r.A_(p.d,0,B.z) +s.e0(r) +r=p.x.a[7] +s=A.e(0,o) +s.A_(p.d,8,B.z) +r.e0(s)}}}, +mc(a,b){var s,r,q,p,o,n,m,l,k=this,j=4294967295,i=k.Q +i.df(0,j,j) +s=k.y +s.c8(k.r) +if(k.r>0){r=s.b +r===$&&A.b() +if(r===0){r=s.a +r===$&&A.b() +r=r===0}else r=!1}else r=!1 +if(r)k.z.c8(1) +k.aYJ(k.f,0) +r=k.f +r.toString +B.p.fb(r,0,128,0) +r=k.w +r.fb(0,0,r.a.length,0) +q=new Uint8Array(8) +p=A.fe(q.buffer,0,null) +o=0 +while(!0){r=k.x +n=r.a +m=n.length +if(!(o>>0 +j.a=n +o=j.b +o===$&&A.b() +s=s.b +s===$&&A.b() +s=(o^s)>>>0 +j.b=s +o=k[p+8] +m=o.a +m===$&&A.b() +j.a=(n^m)>>>0 +o=o.b +o===$&&A.b() +j.b=(s^o)>>>0}}, +xy(a,b,c,d,e,f){var s=A.e(0,null),r=this.w.a,q=r[c] +s.ci(0,r[d]) +s.DV(a) +q.DV(s) +q=r[f] +q.e0(r[c]) +q.Zy(32) +r[e].DV(r[f]) +q=r[d] +q.e0(r[e]) +q.Zy(24) +q=r[c] +s.ci(0,r[d]) +s.DV(b) +q.DV(s) +q=r[f] +q.e0(r[c]) +q.Zy(16) +r[e].DV(r[f]) +q=r[d] +q.e0(r[e]) +q.Zy(63)}, +gma(a){return 128}} +A.b6k.prototype={ +$0(){var s=new A.P1(A.ni(16),A.e(0,null),A.e(0,null),A.e(0,null),A.ni(16)) +s.f=new Uint8Array(128) +s.kQ() +return s}, +$S:1063} +A.Cc.prototype={ +aUu(a,b,c){var s=this +switch(a){case 128:case 256:s.AU(1600-(a<<1>>>0)) +s.as=null +break +default:throw A.d(A.a0("invalid bitLength ("+a+") for CSHAKE must only be 128 or 256"))}}, +gks(){var s=this.d +s===$&&A.b() +return"CSHAKE-"+s}, +a9H(a,b,c){var s,r=this +if(r.as!=null){s=r.f +s===$&&A.b() +if(!s)r.a70(0,2) +r.QA(a,b,c*8) +return c}else return r.aQl(a,b,c)}, +b6(a){this.aOS(0) +if(this.as!=null)this.b_s()}, +b_s(){var s,r,q,p=this,o=p.c +o===$&&A.b() +s=B.d.aD(o,8) +o=p.as +p.a71(o,0,o.length) +r=B.d.M(p.as.length,s) +if(r!==0){q=s-r +for(o=p.at;q>100;){p.a71(o,0,100) +q-=100}p.a71(o,0,q)}}} +A.b7E.prototype={ +$2(a,b){return new A.b7D(b)}, +$S:1064} +A.b7D.prototype={ +$0(){var s,r,q=this.a.ex(1) +q.toString +s=A.cA(q,null) +q=new Uint8Array(100) +r=new Uint8Array(200) +q=new A.Cc(q,r,new Uint8Array(192)) +q.ahV(256) +q.aUu(s,null,null) +return q}, +$S:1065} +A.DR.prototype={ +aUQ(a){switch(a){case 128:case 224:case 256:case 288:case 384:case 512:this.AU(1600-(a<<1>>>0)) +break +default:throw A.d(A.a0("invalid bitLength ("+a+") for Keccak must only be 128,224,256,288,384,512"))}}, +gks(){var s=this.d +s===$&&A.b() +return"Keccak/"+s}, +mc(a,b){var s=this,r=s.d +r===$&&A.b() +s.QA(a,b,r) +s.AU(1600-(s.d<<1>>>0)) +return B.d.aD(s.d,8)}} +A.boc.prototype={ +$2(a,b){return new A.bob(b)}, +$S:1066} +A.bob.prototype={ +$0(){var s,r=this.a.ex(1) +r.toString +s=A.cA(r,null) +r=new Uint8Array(200) +r=new A.DR(r,new Uint8Array(192)) +r.aUQ(s) +return r}, +$S:1067} +A.Sv.prototype={ +gks(){return"MD2"}, +gjz(){return 16}, +mc(a,b){var s,r,q,p=this,o=p.d,n=16-o +for(s=p.c;o<16;++o)s[o]=n +p.bex(s) +p.aoK(s) +r=p.e +p.aoK(r) +q=p.a +B.p.cV(a,b,b+16,B.p.hs(q,p.b)) +p.b=0 +B.p.fb(q,0,48,0) +p.d=0 +B.p.fb(s,0,16,0) +B.p.fb(r,0,16,0) +return 16}, +aoK(a){var s,r,q,p,o +for(s=this.a,r=0;r<16;++r){s[r+16]=a[r] +s[r+32]=a[r]^s[r]}for(q=0,p=0;p<18;++p){for(o=0;o<48;++o){q=s[o]^$.cJB[q] +s[o]=q +q&=255}q=B.d.M(q+p,256)}}, +bex(a){var s,r=this.e,q=r[15] +for(s=0;s<16;++s){r[s]=r[s]^$.cJB[(a[s]^q)&255] +q=r[s]}}, +gma(a){return 16}} +A.bq_.prototype={ +$0(){var s=new Uint8Array(48),r=new Uint8Array(16) +return new A.Sv(s,r,new Uint8Array(16))}, +$S:1068} +A.Sw.prototype={ +uS(){var s=this.f +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878}, +uM(){var s=this,r=s.f,q=r[0],p=r[1],o=r[2],n=r[3],m=s.r +q=A.t(q+((p&o|~p&n)>>>0)+m[0]>>>0,3) +n=A.t(n+((q&p|~q&o)>>>0)+m[1]>>>0,7) +o=A.t(o+((n&q|~n&p)>>>0)+m[2]>>>0,11) +p=A.t(p+((o&n|~o&q)>>>0)+m[3]>>>0,19) +q=A.t(q+((p&o|~p&n)>>>0)+m[4]>>>0,3) +n=A.t(n+((q&p|~q&o)>>>0)+m[5]>>>0,7) +o=A.t(o+((n&q|~n&p)>>>0)+m[6]>>>0,11) +p=A.t(p+((o&n|~o&q)>>>0)+m[7]>>>0,19) +q=A.t(q+((p&o|~p&n)>>>0)+m[8]>>>0,3) +n=A.t(n+((q&p|~q&o)>>>0)+m[9]>>>0,7) +o=A.t(o+((n&q|~n&p)>>>0)+m[10]>>>0,11) +p=A.t(p+((o&n|~o&q)>>>0)+m[11]>>>0,19) +q=A.t(q+((p&o|~p&n)>>>0)+m[12]>>>0,3) +n=A.t(n+((q&p|~q&o)>>>0)+m[13]>>>0,7) +o=A.t(o+((n&q|~n&p)>>>0)+m[14]>>>0,11) +p=A.t(p+((o&n|~o&q)>>>0)+m[15]>>>0,19) +q=A.t(q+s.mJ(p,o,n)+m[0]+1518500249>>>0,3) +n=A.t(n+s.mJ(q,p,o)+m[4]+1518500249>>>0,5) +o=A.t(o+s.mJ(n,q,p)+m[8]+1518500249>>>0,9) +p=A.t(p+s.mJ(o,n,q)+m[12]+1518500249>>>0,13) +q=A.t(q+s.mJ(p,o,n)+m[1]+1518500249>>>0,3) +n=A.t(n+s.mJ(q,p,o)+m[5]+1518500249>>>0,5) +o=A.t(o+s.mJ(n,q,p)+m[9]+1518500249>>>0,9) +p=A.t(p+s.mJ(o,n,q)+m[13]+1518500249>>>0,13) +q=A.t(q+s.mJ(p,o,n)+m[2]+1518500249>>>0,3) +n=A.t(n+s.mJ(q,p,o)+m[6]+1518500249>>>0,5) +o=A.t(o+s.mJ(n,q,p)+m[10]+1518500249>>>0,9) +p=A.t(p+s.mJ(o,n,q)+m[14]+1518500249>>>0,13) +q=A.t(q+s.mJ(p,o,n)+m[3]+1518500249>>>0,3) +n=A.t(n+s.mJ(q,p,o)+m[7]+1518500249>>>0,5) +o=A.t(o+s.mJ(n,q,p)+m[11]+1518500249>>>0,9) +p=A.t(p+s.mJ(o,n,q)+m[15]+1518500249>>>0,13) +q=A.t(q+((p^o^n)>>>0)+m[0]+1859775393>>>0,3) +n=A.t(n+((q^p^o)>>>0)+m[8]+1859775393>>>0,9) +o=A.t(o+((n^q^p)>>>0)+m[4]+1859775393>>>0,11) +p=A.t(p+((o^n^q)>>>0)+m[12]+1859775393>>>0,15) +q=A.t(q+((p^o^n)>>>0)+m[2]+1859775393>>>0,3) +n=A.t(n+((q^p^o)>>>0)+m[10]+1859775393>>>0,9) +o=A.t(o+((n^q^p)>>>0)+m[6]+1859775393>>>0,11) +p=A.t(p+((o^n^q)>>>0)+m[14]+1859775393>>>0,15) +q=A.t(q+((p^o^n)>>>0)+m[1]+1859775393>>>0,3) +n=A.t(n+((q^p^o)>>>0)+m[9]+1859775393>>>0,9) +o=A.t(o+((n^q^p)>>>0)+m[5]+1859775393>>>0,11) +p=A.t(p+((o^n^q)>>>0)+m[13]+1859775393>>>0,15) +q=A.t(q+((p^o^n)>>>0)+m[3]+1859775393>>>0,3) +n=A.t(n+((q^p^o)>>>0)+m[11]+1859775393>>>0,9) +o=A.t(o+((n^q^p)>>>0)+m[7]+1859775393>>>0,11) +p=A.t(p+((o^n^q)>>>0)+m[15]+1859775393>>>0,15) +r[0]=r[0]+q>>>0 +r[1]=r[1]+p>>>0 +r[2]=r[2]+o>>>0 +r[3]=r[3]+n>>>0}, +mJ(a,b,c){return(a&b|a&c|b&c)>>>0}, +gma(a){return 64}, +gks(){return"MD4"}, +gjz(){return 16}} +A.bq0.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.Sw(s,r,B.z,4,A.aK(4,0,!1,q),A.aK(16,0,!1,q)) +q.b6(0) +return q}, +$S:1069} +A.Sx.prototype={ +uS(){var s=this.f +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878}, +uM(){var s,r,q=this.f,p=q[0],o=q[1],n=q[2],m=q[3],l=this.r +p=A.t(p+((o&n|~o&m)>>>0)+l[0]+3614090360>>>0,7)+o>>>0 +m=A.t(m+((p&o|~p&n)>>>0)+l[1]+3905402710>>>0,12)+p>>>0 +n=A.t(n+((m&p|~m&o)>>>0)+l[2]+606105819>>>0,17)+m>>>0 +o=A.t(o+((n&m|~n&p)>>>0)+l[3]+3250441966>>>0,22)+n>>>0 +p=A.t(p+((o&n|~o&m)>>>0)+l[4]+4118548399>>>0,7)+o>>>0 +m=A.t(m+((p&o|~p&n)>>>0)+l[5]+1200080426>>>0,12)+p>>>0 +n=A.t(n+((m&p|~m&o)>>>0)+l[6]+2821735955>>>0,17)+m>>>0 +o=A.t(o+((n&m|~n&p)>>>0)+l[7]+4249261313>>>0,22)+n>>>0 +p=A.t(p+((o&n|~o&m)>>>0)+l[8]+1770035416>>>0,7)+o>>>0 +m=A.t(m+((p&o|~p&n)>>>0)+l[9]+2336552879>>>0,12)+p>>>0 +n=A.t(n+((m&p|~m&o)>>>0)+l[10]+4294925233>>>0,17)+m>>>0 +o=A.t(o+((n&m|~n&p)>>>0)+l[11]+2304563134>>>0,22)+n>>>0 +p=A.t(p+((o&n|~o&m)>>>0)+l[12]+1804603682>>>0,7)+o>>>0 +m=A.t(m+((p&o|~p&n)>>>0)+l[13]+4254626195>>>0,12)+p>>>0 +s=~m +n=A.t(n+((m&p|s&o)>>>0)+l[14]+2792965006>>>0,17)+m>>>0 +r=~n +o=A.t(o+((n&m|r&p)>>>0)+l[15]+1236535329>>>0,22)+n>>>0 +p=A.t(p+((o&m|n&s)>>>0)+l[1]+4129170786>>>0,5)+o>>>0 +m=A.t(m+((p&n|o&r)>>>0)+l[6]+3225465664>>>0,9)+p>>>0 +n=A.t(n+((m&o|p&~o)>>>0)+l[11]+643717713>>>0,14)+m>>>0 +o=A.t(o+((n&p|m&~p)>>>0)+l[0]+3921069994>>>0,20)+n>>>0 +p=A.t(p+((o&m|n&~m)>>>0)+l[5]+3593408605>>>0,5)+o>>>0 +m=A.t(m+((p&n|o&~n)>>>0)+l[10]+38016083>>>0,9)+p>>>0 +n=A.t(n+((m&o|p&~o)>>>0)+l[15]+3634488961>>>0,14)+m>>>0 +o=A.t(o+((n&p|m&~p)>>>0)+l[4]+3889429448>>>0,20)+n>>>0 +p=A.t(p+((o&m|n&~m)>>>0)+l[9]+568446438>>>0,5)+o>>>0 +m=A.t(m+((p&n|o&~n)>>>0)+l[14]+3275163606>>>0,9)+p>>>0 +n=A.t(n+((m&o|p&~o)>>>0)+l[3]+4107603335>>>0,14)+m>>>0 +o=A.t(o+((n&p|m&~p)>>>0)+l[8]+1163531501>>>0,20)+n>>>0 +p=A.t(p+((o&m|n&~m)>>>0)+l[13]+2850285829>>>0,5)+o>>>0 +m=A.t(m+((p&n|o&~n)>>>0)+l[2]+4243563512>>>0,9)+p>>>0 +n=A.t(n+((m&o|p&~o)>>>0)+l[7]+1735328473>>>0,14)+m>>>0 +o=A.t(o+((n&p|m&~p)>>>0)+l[12]+2368359562>>>0,20)+n>>>0 +p=A.t(p+((o^n^m)>>>0)+l[5]+4294588738>>>0,4)+o>>>0 +m=A.t(m+((p^o^n)>>>0)+l[8]+2272392833>>>0,11)+p>>>0 +n=A.t(n+((m^p^o)>>>0)+l[11]+1839030562>>>0,16)+m>>>0 +o=A.t(o+((n^m^p)>>>0)+l[14]+4259657740>>>0,23)+n>>>0 +p=A.t(p+((o^n^m)>>>0)+l[1]+2763975236>>>0,4)+o>>>0 +m=A.t(m+((p^o^n)>>>0)+l[4]+1272893353>>>0,11)+p>>>0 +n=A.t(n+((m^p^o)>>>0)+l[7]+4139469664>>>0,16)+m>>>0 +o=A.t(o+((n^m^p)>>>0)+l[10]+3200236656>>>0,23)+n>>>0 +p=A.t(p+((o^n^m)>>>0)+l[13]+681279174>>>0,4)+o>>>0 +m=A.t(m+((p^o^n)>>>0)+l[0]+3936430074>>>0,11)+p>>>0 +n=A.t(n+((m^p^o)>>>0)+l[3]+3572445317>>>0,16)+m>>>0 +o=A.t(o+((n^m^p)>>>0)+l[6]+76029189>>>0,23)+n>>>0 +p=A.t(p+((o^n^m)>>>0)+l[9]+3654602809>>>0,4)+o>>>0 +m=A.t(m+((p^o^n)>>>0)+l[12]+3873151461>>>0,11)+p>>>0 +n=A.t(n+((m^p^o)>>>0)+l[15]+530742520>>>0,16)+m>>>0 +o=A.t(o+((n^m^p)>>>0)+l[2]+3299628645>>>0,23)+n>>>0 +p=A.t(p+((n^(o|~m))>>>0)+l[0]+4096336452>>>0,6)+o>>>0 +m=A.t(m+((o^(p|~n))>>>0)+l[7]+1126891415>>>0,10)+p>>>0 +n=A.t(n+((p^(m|~o))>>>0)+l[14]+2878612391>>>0,15)+m>>>0 +o=A.t(o+((m^(n|~p))>>>0)+l[5]+4237533241>>>0,21)+n>>>0 +p=A.t(p+((n^(o|~m))>>>0)+l[12]+1700485571>>>0,6)+o>>>0 +m=A.t(m+((o^(p|~n))>>>0)+l[3]+2399980690>>>0,10)+p>>>0 +n=A.t(n+((p^(m|~o))>>>0)+l[10]+4293915773>>>0,15)+m>>>0 +o=A.t(o+((m^(n|~p))>>>0)+l[1]+2240044497>>>0,21)+n>>>0 +p=A.t(p+((n^(o|~m))>>>0)+l[8]+1873313359>>>0,6)+o>>>0 +m=A.t(m+((o^(p|~n))>>>0)+l[15]+4264355552>>>0,10)+p>>>0 +n=A.t(n+((p^(m|~o))>>>0)+l[6]+2734768916>>>0,15)+m>>>0 +o=A.t(o+((m^(n|~p))>>>0)+l[13]+1309151649>>>0,21)+n>>>0 +p=A.t(p+((n^(o|~m))>>>0)+l[4]+4149444226>>>0,6)+o>>>0 +m=A.t(m+((o^(p|~n))>>>0)+l[11]+3174756917>>>0,10)+p>>>0 +n=A.t(n+((p^(m|~o))>>>0)+l[2]+718787259>>>0,15)+m>>>0 +l=A.t(o+((m^(n|~p))>>>0)+l[9]+3951481745>>>0,21) +q[0]=q[0]+p>>>0 +q[1]=q[1]+(l+n>>>0)>>>0 +q[2]=q[2]+n>>>0 +q[3]=q[3]+m>>>0}, +gma(a){return 64}, +gks(){return"MD5"}, +gjz(){return 16}} +A.bq1.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.Sx(s,r,B.z,4,A.aK(4,0,!1,q),A.aK(16,0,!1,q)) +q.b6(0) +return q}, +$S:1070} +A.TT.prototype={ +uS(){var s=this.f +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878}, +uM(){var s=this,r=s.f,q=r[0],p=r[1],o=r[2],n=r[3],m=s.r,l=A.t(q+((p^o^n)>>>0)+m[0]>>>0,11),k=A.t(n+((l^p^o)>>>0)+m[1]>>>0,14),j=A.t(o+((k^l^p)>>>0)+m[2]>>>0,15),i=A.t(p+((j^k^l)>>>0)+m[3]>>>0,12) +l=A.t(l+((i^j^k)>>>0)+m[4]>>>0,5) +k=A.t(k+((l^i^j)>>>0)+m[5]>>>0,8) +j=A.t(j+((k^l^i)>>>0)+m[6]>>>0,7) +i=A.t(i+((j^k^l)>>>0)+m[7]>>>0,9) +l=A.t(l+((i^j^k)>>>0)+m[8]>>>0,11) +k=A.t(k+((l^i^j)>>>0)+m[9]>>>0,13) +j=A.t(j+((k^l^i)>>>0)+m[10]>>>0,14) +i=A.t(i+((j^k^l)>>>0)+m[11]>>>0,15) +l=A.t(l+((i^j^k)>>>0)+m[12]>>>0,6) +k=A.t(k+((l^i^j)>>>0)+m[13]>>>0,7) +j=A.t(j+((k^l^i)>>>0)+m[14]>>>0,9) +i=A.t(i+((j^k^l)>>>0)+m[15]>>>0,8) +l=s.mD(l,i,j,k,m[7],7) +k=s.mD(k,l,i,j,m[4],6) +j=s.mD(j,k,l,i,m[13],8) +i=s.mD(i,j,k,l,m[1],13) +l=s.mD(l,i,j,k,m[10],11) +k=s.mD(k,l,i,j,m[6],9) +j=s.mD(j,k,l,i,m[15],7) +i=s.mD(i,j,k,l,m[3],15) +l=s.mD(l,i,j,k,m[12],7) +k=s.mD(k,l,i,j,m[0],12) +j=s.mD(j,k,l,i,m[9],15) +i=s.mD(i,j,k,l,m[5],9) +l=s.mD(l,i,j,k,m[2],11) +k=s.mD(k,l,i,j,m[14],7) +j=s.mD(j,k,l,i,m[11],13) +i=s.mD(i,j,k,l,m[8],12) +l=s.mE(l,i,j,k,m[3],11) +k=s.mE(k,l,i,j,m[10],13) +j=s.mE(j,k,l,i,m[14],6) +i=s.mE(i,j,k,l,m[4],7) +l=s.mE(l,i,j,k,m[9],14) +k=s.mE(k,l,i,j,m[15],9) +j=s.mE(j,k,l,i,m[8],13) +i=s.mE(i,j,k,l,m[1],15) +l=s.mE(l,i,j,k,m[2],14) +k=s.mE(k,l,i,j,m[7],8) +j=s.mE(j,k,l,i,m[0],13) +i=s.mE(i,j,k,l,m[6],6) +l=s.mE(l,i,j,k,m[13],5) +k=s.mE(k,l,i,j,m[11],12) +j=s.mE(j,k,l,i,m[5],7) +i=s.mE(i,j,k,l,m[12],5) +l=s.mF(l,i,j,k,m[1],11) +k=s.mF(k,l,i,j,m[9],12) +j=s.mF(j,k,l,i,m[11],14) +i=s.mF(i,j,k,l,m[10],15) +l=s.mF(l,i,j,k,m[0],14) +k=s.mF(k,l,i,j,m[8],15) +j=s.mF(j,k,l,i,m[12],9) +i=s.mF(i,j,k,l,m[4],8) +l=s.mF(l,i,j,k,m[13],9) +k=s.mF(k,l,i,j,m[3],14) +j=s.mF(j,k,l,i,m[7],5) +i=s.mF(i,j,k,l,m[15],6) +l=s.mF(l,i,j,k,m[14],8) +k=s.mF(k,l,i,j,m[5],6) +j=s.mF(j,k,l,i,m[6],5) +i=s.mF(i,j,k,l,m[2],12) +q=s.mI(q,p,o,n,m[5],8) +n=s.mI(n,q,p,o,m[14],9) +o=s.mI(o,n,q,p,m[7],9) +p=s.mI(p,o,n,q,m[0],11) +q=s.mI(q,p,o,n,m[9],13) +n=s.mI(n,q,p,o,m[2],15) +o=s.mI(o,n,q,p,m[11],15) +p=s.mI(p,o,n,q,m[4],5) +q=s.mI(q,p,o,n,m[13],7) +n=s.mI(n,q,p,o,m[6],7) +o=s.mI(o,n,q,p,m[15],8) +p=s.mI(p,o,n,q,m[8],11) +q=s.mI(q,p,o,n,m[1],14) +n=s.mI(n,q,p,o,m[10],14) +o=s.mI(o,n,q,p,m[3],12) +p=s.mI(p,o,n,q,m[12],6) +q=s.mH(q,p,o,n,m[6],9) +n=s.mH(n,q,p,o,m[11],13) +o=s.mH(o,n,q,p,m[3],15) +p=s.mH(p,o,n,q,m[7],7) +q=s.mH(q,p,o,n,m[0],12) +n=s.mH(n,q,p,o,m[13],8) +o=s.mH(o,n,q,p,m[5],9) +p=s.mH(p,o,n,q,m[10],11) +q=s.mH(q,p,o,n,m[14],7) +n=s.mH(n,q,p,o,m[15],7) +o=s.mH(o,n,q,p,m[8],12) +p=s.mH(p,o,n,q,m[12],7) +q=s.mH(q,p,o,n,m[4],6) +n=s.mH(n,q,p,o,m[9],15) +o=s.mH(o,n,q,p,m[1],13) +p=s.mH(p,o,n,q,m[2],11) +q=s.mG(q,p,o,n,m[15],9) +n=s.mG(n,q,p,o,m[5],7) +o=s.mG(o,n,q,p,m[1],15) +p=s.mG(p,o,n,q,m[3],11) +q=s.mG(q,p,o,n,m[7],8) +n=s.mG(n,q,p,o,m[14],6) +o=s.mG(o,n,q,p,m[6],6) +p=s.mG(p,o,n,q,m[9],14) +q=s.mG(q,p,o,n,m[11],12) +n=s.mG(n,q,p,o,m[8],13) +o=s.mG(o,n,q,p,m[12],5) +p=s.mG(p,o,n,q,m[2],14) +q=s.mG(q,p,o,n,m[10],13) +n=s.mG(n,q,p,o,m[0],13) +o=s.mG(o,n,q,p,m[4],7) +p=s.mG(p,o,n,q,m[13],5) +q=A.t(q+((p^o^n)>>>0)+m[8]>>>0,15) +n=A.t(n+((q^p^o)>>>0)+m[6]>>>0,5) +o=A.t(o+((n^q^p)>>>0)+m[4]>>>0,8) +p=A.t(p+((o^n^q)>>>0)+m[1]>>>0,11) +q=A.t(q+((p^o^n)>>>0)+m[3]>>>0,14) +n=A.t(n+((q^p^o)>>>0)+m[11]>>>0,14) +o=A.t(o+((n^q^p)>>>0)+m[15]>>>0,6) +p=A.t(p+((o^n^q)>>>0)+m[0]>>>0,14) +q=A.t(q+((p^o^n)>>>0)+m[5]>>>0,6) +n=A.t(n+((q^p^o)>>>0)+m[12]>>>0,9) +o=A.t(o+((n^q^p)>>>0)+m[2]>>>0,12) +p=A.t(p+((o^n^q)>>>0)+m[13]>>>0,9) +q=A.t(q+((p^o^n)>>>0)+m[9]>>>0,12) +n=A.t(n+((q^p^o)>>>0)+m[7]>>>0,5) +o=A.t(o+((n^q^p)>>>0)+m[10]>>>0,15) +p=A.t(p+((o^n^q)>>>0)+m[14]>>>0,8) +m=r[1] +r[1]=r[2]+k+q>>>0 +r[2]=r[3]+l+p>>>0 +r[3]=r[0]+i+o>>>0 +r[0]=n+j+m>>>0}, +mD(a,b,c,d,e,f){return A.t(a+((b&c|~b&d)>>>0)+e+1518500249>>>0,f)}, +mE(a,b,c,d,e,f){return A.t(a+(((b|~c)^d)>>>0)+e+1859775393>>>0,f)}, +mF(a,b,c,d,e,f){return A.t(a+((b&d|c&~d)>>>0)+e+2400959708>>>0,f)}, +mG(a,b,c,d,e,f){return A.t(a+((b&c|~b&d)>>>0)+e+1836072691>>>0,f)}, +mH(a,b,c,d,e,f){return A.t(a+(((b|~c)^d)>>>0)+e+1548603684>>>0,f)}, +mI(a,b,c,d,e,f){return A.t(a+((b&d|c&~d)>>>0)+e+1352829926>>>0,f)}, +gma(a){return 64}, +gks(){return"RIPEMD-128"}, +gjz(){return 16}} +A.bzi.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.TT(s,r,B.z,4,A.aK(4,0,!1,q),A.aK(16,0,!1,q)) +q.b6(0) +return q}, +$S:1071} +A.TU.prototype={ +uS(){var s=this.f +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878 +s[4]=3285377520}, +uM(){var s,r,q=this.f,p=q[0],o=q[1],n=q[2],m=q[3],l=q[4],k=this.r,j=A.t(p+((o^n^m)>>>0)+k[0]>>>0,11)+l>>>0,i=A.t(n,10),h=A.t(l+((j^o^i)>>>0)+k[1]>>>0,14)+m>>>0,g=A.t(o,10),f=A.t(m+((h^j^g)>>>0)+k[2]>>>0,15)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f^h^j)>>>0)+k[3]>>>0,12)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i^f^h)>>>0)+k[4]>>>0,5)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g^i^f)>>>0)+k[5]>>>0,8)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j^g^i)>>>0)+k[6]>>>0,7)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h^j^g)>>>0)+k[7]>>>0,9)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f^h^j)>>>0)+k[8]>>>0,11)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i^f^h)>>>0)+k[9]>>>0,13)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g^i^f)>>>0)+k[10]>>>0,14)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j^g^i)>>>0)+k[11]>>>0,15)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h^j^g)>>>0)+k[12]>>>0,6)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f^h^j)>>>0)+k[13]>>>0,7)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i^f^h)>>>0)+k[14]>>>0,9)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g^i^f)>>>0)+k[15]>>>0,8)+h>>>0 +i=A.t(i,10) +p=A.t(p+((o^(n|~m))>>>0)+k[5]+1352829926>>>0,8)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p^(o|~n))>>>0)+k[14]+1352829926>>>0,9)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^(p|~o))>>>0)+k[7]+1352829926>>>0,9)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m^(l|~p))>>>0)+k[0]+1352829926>>>0,11)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n^(m|~l))>>>0)+k[9]+1352829926>>>0,13)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o^(n|~m))>>>0)+k[2]+1352829926>>>0,15)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p^(o|~n))>>>0)+k[11]+1352829926>>>0,15)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^(p|~o))>>>0)+k[4]+1352829926>>>0,5)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m^(l|~p))>>>0)+k[13]+1352829926>>>0,7)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n^(m|~l))>>>0)+k[6]+1352829926>>>0,7)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o^(n|~m))>>>0)+k[15]+1352829926>>>0,8)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p^(o|~n))>>>0)+k[8]+1352829926>>>0,11)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^(p|~o))>>>0)+k[1]+1352829926>>>0,14)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m^(l|~p))>>>0)+k[10]+1352829926>>>0,14)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n^(m|~l))>>>0)+k[3]+1352829926>>>0,12)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o^(n|~m))>>>0)+k[12]+1352829926>>>0,6)+l>>>0 +n=A.t(n,10) +h=A.t(h+((j&g|~j&i)>>>0)+k[7]+1518500249>>>0,7)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h&j|~h&g)>>>0)+k[4]+1518500249>>>0,6)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f&h|~f&j)>>>0)+k[13]+1518500249>>>0,8)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i&f|~i&h)>>>0)+k[1]+1518500249>>>0,13)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g&i|~g&f)>>>0)+k[10]+1518500249>>>0,11)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j&g|~j&i)>>>0)+k[6]+1518500249>>>0,9)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h&j|~h&g)>>>0)+k[15]+1518500249>>>0,7)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f&h|~f&j)>>>0)+k[3]+1518500249>>>0,15)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i&f|~i&h)>>>0)+k[12]+1518500249>>>0,7)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g&i|~g&f)>>>0)+k[0]+1518500249>>>0,12)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j&g|~j&i)>>>0)+k[9]+1518500249>>>0,15)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h&j|~h&g)>>>0)+k[5]+1518500249>>>0,9)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f&h|~f&j)>>>0)+k[2]+1518500249>>>0,11)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i&f|~i&h)>>>0)+k[14]+1518500249>>>0,7)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g&i|~g&f)>>>0)+k[11]+1518500249>>>0,13)+h>>>0 +i=A.t(i,10) +s=~j +h=A.t(h+((j&g|s&i)>>>0)+k[8]+1518500249>>>0,12)+f>>>0 +g=A.t(g,10) +l=A.t(l+((p&n|o&~n)>>>0)+k[6]+1548603684>>>0,9)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l&o|p&~o)>>>0)+k[11]+1548603684>>>0,13)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m&p|l&~p)>>>0)+k[3]+1548603684>>>0,15)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n&l|m&~l)>>>0)+k[7]+1548603684>>>0,7)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o&m|n&~m)>>>0)+k[0]+1548603684>>>0,12)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p&n|o&~n)>>>0)+k[13]+1548603684>>>0,8)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l&o|p&~o)>>>0)+k[5]+1548603684>>>0,9)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m&p|l&~p)>>>0)+k[10]+1548603684>>>0,11)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n&l|m&~l)>>>0)+k[14]+1548603684>>>0,7)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o&m|n&~m)>>>0)+k[15]+1548603684>>>0,7)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p&n|o&~n)>>>0)+k[8]+1548603684>>>0,12)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l&o|p&~o)>>>0)+k[12]+1548603684>>>0,7)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m&p|l&~p)>>>0)+k[4]+1548603684>>>0,6)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n&l|m&~l)>>>0)+k[9]+1548603684>>>0,15)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o&m|n&~m)>>>0)+k[1]+1548603684>>>0,13)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p&n|o&~n)>>>0)+k[2]+1548603684>>>0,11)+m>>>0 +o=A.t(o,10) +f=A.t(f+(((h|s)^g)>>>0)+k[3]+1859775393>>>0,11)+i>>>0 +j=A.t(j,10) +i=A.t(i+(((f|~h)^j)>>>0)+k[10]+1859775393>>>0,13)+g>>>0 +h=A.t(h,10) +g=A.t(g+(((i|~f)^h)>>>0)+k[14]+1859775393>>>0,6)+j>>>0 +f=A.t(f,10) +j=A.t(j+(((g|~i)^f)>>>0)+k[4]+1859775393>>>0,7)+h>>>0 +i=A.t(i,10) +h=A.t(h+(((j|~g)^i)>>>0)+k[9]+1859775393>>>0,14)+f>>>0 +g=A.t(g,10) +f=A.t(f+(((h|~j)^g)>>>0)+k[15]+1859775393>>>0,9)+i>>>0 +j=A.t(j,10) +i=A.t(i+(((f|~h)^j)>>>0)+k[8]+1859775393>>>0,13)+g>>>0 +h=A.t(h,10) +g=A.t(g+(((i|~f)^h)>>>0)+k[1]+1859775393>>>0,15)+j>>>0 +f=A.t(f,10) +j=A.t(j+(((g|~i)^f)>>>0)+k[2]+1859775393>>>0,14)+h>>>0 +i=A.t(i,10) +h=A.t(h+(((j|~g)^i)>>>0)+k[7]+1859775393>>>0,8)+f>>>0 +g=A.t(g,10) +f=A.t(f+(((h|~j)^g)>>>0)+k[0]+1859775393>>>0,13)+i>>>0 +j=A.t(j,10) +i=A.t(i+(((f|~h)^j)>>>0)+k[6]+1859775393>>>0,6)+g>>>0 +h=A.t(h,10) +g=A.t(g+(((i|~f)^h)>>>0)+k[13]+1859775393>>>0,5)+j>>>0 +f=A.t(f,10) +j=A.t(j+(((g|~i)^f)>>>0)+k[11]+1859775393>>>0,12)+h>>>0 +i=A.t(i,10) +h=A.t(h+(((j|~g)^i)>>>0)+k[5]+1859775393>>>0,7)+f>>>0 +g=A.t(g,10) +f=A.t(f+(((h|~j)^g)>>>0)+k[12]+1859775393>>>0,5)+i>>>0 +j=A.t(j,10) +m=A.t(m+(((l|~p)^o)>>>0)+k[15]+1836072691>>>0,9)+n>>>0 +p=A.t(p,10) +n=A.t(n+(((m|~l)^p)>>>0)+k[5]+1836072691>>>0,7)+o>>>0 +l=A.t(l,10) +o=A.t(o+(((n|~m)^l)>>>0)+k[1]+1836072691>>>0,15)+p>>>0 +m=A.t(m,10) +p=A.t(p+(((o|~n)^m)>>>0)+k[3]+1836072691>>>0,11)+l>>>0 +n=A.t(n,10) +l=A.t(l+(((p|~o)^n)>>>0)+k[7]+1836072691>>>0,8)+m>>>0 +o=A.t(o,10) +m=A.t(m+(((l|~p)^o)>>>0)+k[14]+1836072691>>>0,6)+n>>>0 +p=A.t(p,10) +n=A.t(n+(((m|~l)^p)>>>0)+k[6]+1836072691>>>0,6)+o>>>0 +l=A.t(l,10) +o=A.t(o+(((n|~m)^l)>>>0)+k[9]+1836072691>>>0,14)+p>>>0 +m=A.t(m,10) +p=A.t(p+(((o|~n)^m)>>>0)+k[11]+1836072691>>>0,12)+l>>>0 +n=A.t(n,10) +l=A.t(l+(((p|~o)^n)>>>0)+k[8]+1836072691>>>0,13)+m>>>0 +o=A.t(o,10) +m=A.t(m+(((l|~p)^o)>>>0)+k[12]+1836072691>>>0,5)+n>>>0 +p=A.t(p,10) +n=A.t(n+(((m|~l)^p)>>>0)+k[2]+1836072691>>>0,14)+o>>>0 +l=A.t(l,10) +o=A.t(o+(((n|~m)^l)>>>0)+k[10]+1836072691>>>0,13)+p>>>0 +m=A.t(m,10) +p=A.t(p+(((o|~n)^m)>>>0)+k[0]+1836072691>>>0,13)+l>>>0 +n=A.t(n,10) +l=A.t(l+(((p|~o)^n)>>>0)+k[4]+1836072691>>>0,7)+m>>>0 +o=A.t(o,10) +m=A.t(m+(((l|~p)^o)>>>0)+k[13]+1836072691>>>0,5)+n>>>0 +p=A.t(p,10) +i=A.t(i+((f&j|h&~j)>>>0)+k[1]+2400959708>>>0,11)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i&h|f&~h)>>>0)+k[9]+2400959708>>>0,12)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g&f|i&~f)>>>0)+k[11]+2400959708>>>0,14)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j&i|g&~i)>>>0)+k[10]+2400959708>>>0,15)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h&g|j&~g)>>>0)+k[0]+2400959708>>>0,14)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f&j|h&~j)>>>0)+k[8]+2400959708>>>0,15)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i&h|f&~h)>>>0)+k[12]+2400959708>>>0,9)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g&f|i&~f)>>>0)+k[4]+2400959708>>>0,8)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j&i|g&~i)>>>0)+k[13]+2400959708>>>0,9)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h&g|j&~g)>>>0)+k[3]+2400959708>>>0,14)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f&j|h&~j)>>>0)+k[7]+2400959708>>>0,5)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i&h|f&~h)>>>0)+k[15]+2400959708>>>0,6)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g&f|i&~f)>>>0)+k[14]+2400959708>>>0,8)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j&i|g&~i)>>>0)+k[5]+2400959708>>>0,6)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h&g|j&~g)>>>0)+k[6]+2400959708>>>0,5)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f&j|h&~j)>>>0)+k[2]+2400959708>>>0,12)+g>>>0 +h=A.t(h,10) +n=A.t(n+((m&l|~m&p)>>>0)+k[8]+2053994217>>>0,15)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n&m|~n&l)>>>0)+k[6]+2053994217>>>0,5)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o&n|~o&m)>>>0)+k[4]+2053994217>>>0,8)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p&o|~p&n)>>>0)+k[1]+2053994217>>>0,11)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l&p|~l&o)>>>0)+k[3]+2053994217>>>0,14)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m&l|~m&p)>>>0)+k[11]+2053994217>>>0,14)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n&m|~n&l)>>>0)+k[15]+2053994217>>>0,6)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o&n|~o&m)>>>0)+k[0]+2053994217>>>0,14)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p&o|~p&n)>>>0)+k[5]+2053994217>>>0,6)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l&p|~l&o)>>>0)+k[12]+2053994217>>>0,9)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m&l|~m&p)>>>0)+k[2]+2053994217>>>0,12)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n&m|~n&l)>>>0)+k[13]+2053994217>>>0,9)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o&n|~o&m)>>>0)+k[9]+2053994217>>>0,12)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p&o|~p&n)>>>0)+k[7]+2053994217>>>0,5)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l&p|~l&o)>>>0)+k[10]+2053994217>>>0,15)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m&l|~m&p)>>>0)+k[14]+2053994217>>>0,8)+o>>>0 +l=A.t(l,10) +g=A.t(g+((i^(f|~h))>>>0)+k[4]+2840853838>>>0,9)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g^(i|~f))>>>0)+k[0]+2840853838>>>0,15)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j^(g|~i))>>>0)+k[5]+2840853838>>>0,5)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h^(j|~g))>>>0)+k[9]+2840853838>>>0,11)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f^(h|~j))>>>0)+k[7]+2840853838>>>0,6)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i^(f|~h))>>>0)+k[12]+2840853838>>>0,8)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g^(i|~f))>>>0)+k[2]+2840853838>>>0,13)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j^(g|~i))>>>0)+k[10]+2840853838>>>0,12)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h^(j|~g))>>>0)+k[14]+2840853838>>>0,5)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f^(h|~j))>>>0)+k[1]+2840853838>>>0,12)+g>>>0 +h=A.t(h,10) +g=A.t(g+((i^(f|~h))>>>0)+k[3]+2840853838>>>0,13)+j>>>0 +f=A.t(f,10) +j=A.t(j+((g^(i|~f))>>>0)+k[8]+2840853838>>>0,14)+h>>>0 +i=A.t(i,10) +h=A.t(h+((j^(g|~i))>>>0)+k[11]+2840853838>>>0,11)+f>>>0 +g=A.t(g,10) +f=A.t(f+((h^(j|~g))>>>0)+k[6]+2840853838>>>0,8)+i>>>0 +j=A.t(j,10) +i=A.t(i+((f^(h|~j))>>>0)+k[15]+2840853838>>>0,5)+g>>>0 +h=A.t(h,10) +s=A.t(g+((i^(f|~h))>>>0)+k[13]+2840853838>>>0,6) +f=A.t(f,10) +o=A.t(o+((n^m^l)>>>0)+k[12]>>>0,8)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o^n^m)>>>0)+k[15]>>>0,5)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p^o^n)>>>0)+k[10]>>>0,12)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^p^o)>>>0)+k[4]>>>0,9)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m^l^p)>>>0)+k[1]>>>0,12)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n^m^l)>>>0)+k[5]>>>0,5)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o^n^m)>>>0)+k[8]>>>0,14)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p^o^n)>>>0)+k[7]>>>0,6)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^p^o)>>>0)+k[6]>>>0,8)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m^l^p)>>>0)+k[2]>>>0,13)+o>>>0 +l=A.t(l,10) +o=A.t(o+((n^m^l)>>>0)+k[13]>>>0,6)+p>>>0 +m=A.t(m,10) +p=A.t(p+((o^n^m)>>>0)+k[14]>>>0,5)+l>>>0 +n=A.t(n,10) +l=A.t(l+((p^o^n)>>>0)+k[0]>>>0,15)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^p^o)>>>0)+k[3]>>>0,13)+n>>>0 +p=A.t(p,10) +n=A.t(n+((m^l^p)>>>0)+k[9]>>>0,11)+o>>>0 +l=A.t(l,10) +k=A.t(o+((n^m^l)>>>0)+k[11]>>>0,11) +m=A.t(m,10) +r=q[1] +q[1]=q[2]+f+l>>>0 +q[2]=q[3]+h+p>>>0 +q[3]=q[4]+j+(k+p>>>0)>>>0 +q[4]=q[0]+(s+j>>>0)+n>>>0 +q[0]=m+i+r>>>0}, +gma(a){return 64}, +gks(){return"RIPEMD-160"}, +gjz(){return 20}} +A.bzj.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.TU(s,r,B.z,5,A.aK(5,0,!1,q),A.aK(16,0,!1,q)) +q.b6(0) +return q}, +$S:1072} +A.TV.prototype={ +uS(){var s=this.f +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878 +s[4]=1985229328 +s[5]=4275878552 +s[6]=2309737967 +s[7]=19088743}, +uM(){var s,r,q,p=this,o=p.f,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=p.r +n=A.t(n+((m^l^k)>>>0)+f[0]>>>0,11) +k=A.t(k+((n^m^l)>>>0)+f[1]>>>0,14) +l=A.t(l+((k^n^m)>>>0)+f[2]>>>0,15) +m=A.t(m+((l^k^n)>>>0)+f[3]>>>0,12) +n=A.t(n+((m^l^k)>>>0)+f[4]>>>0,5) +k=A.t(k+((n^m^l)>>>0)+f[5]>>>0,8) +l=A.t(l+((k^n^m)>>>0)+f[6]>>>0,7) +m=A.t(m+((l^k^n)>>>0)+f[7]>>>0,9) +n=A.t(n+((m^l^k)>>>0)+f[8]>>>0,11) +k=A.t(k+((n^m^l)>>>0)+f[9]>>>0,13) +l=A.t(l+((k^n^m)>>>0)+f[10]>>>0,14) +m=A.t(m+((l^k^n)>>>0)+f[11]>>>0,15) +n=A.t(n+((m^l^k)>>>0)+f[12]>>>0,6) +k=A.t(k+((n^m^l)>>>0)+f[13]>>>0,7) +l=A.t(l+((k^n^m)>>>0)+f[14]>>>0,9) +m=A.t(m+((l^k^n)>>>0)+f[15]>>>0,8) +j=p.mR(j,i,h,g,f[5],8) +g=p.mR(g,j,i,h,f[14],9) +h=p.mR(h,g,j,i,f[7],9) +i=p.mR(i,h,g,j,f[0],11) +j=p.mR(j,i,h,g,f[9],13) +g=p.mR(g,j,i,h,f[2],15) +h=p.mR(h,g,j,i,f[11],15) +i=p.mR(i,h,g,j,f[4],5) +j=p.mR(j,i,h,g,f[13],7) +g=p.mR(g,j,i,h,f[6],7) +h=p.mR(h,g,j,i,f[15],8) +i=p.mR(i,h,g,j,f[8],11) +j=p.mR(j,i,h,g,f[1],14) +g=p.mR(g,j,i,h,f[10],14) +h=p.mR(h,g,j,i,f[3],12) +i=p.mR(i,h,g,j,f[12],6) +s=p.mM(j,m,l,k,f[7],7) +k=p.mM(k,s,m,l,f[4],6) +l=p.mM(l,k,s,m,f[13],8) +m=p.mM(m,l,k,s,f[1],13) +s=p.mM(s,m,l,k,f[10],11) +k=p.mM(k,s,m,l,f[6],9) +l=p.mM(l,k,s,m,f[15],7) +m=p.mM(m,l,k,s,f[3],15) +s=p.mM(s,m,l,k,f[12],7) +k=p.mM(k,s,m,l,f[0],12) +l=p.mM(l,k,s,m,f[9],15) +m=p.mM(m,l,k,s,f[5],9) +s=p.mM(s,m,l,k,f[2],11) +k=p.mM(k,s,m,l,f[14],7) +l=p.mM(l,k,s,m,f[11],13) +m=p.mM(m,l,k,s,f[8],12) +j=p.mQ(n,i,h,g,f[6],9) +g=p.mQ(g,j,i,h,f[11],13) +h=p.mQ(h,g,j,i,f[3],15) +i=p.mQ(i,h,g,j,f[7],7) +j=p.mQ(j,i,h,g,f[0],12) +g=p.mQ(g,j,i,h,f[13],8) +h=p.mQ(h,g,j,i,f[5],9) +i=p.mQ(i,h,g,j,f[10],11) +j=p.mQ(j,i,h,g,f[14],7) +g=p.mQ(g,j,i,h,f[15],7) +h=p.mQ(h,g,j,i,f[8],12) +i=p.mQ(i,h,g,j,f[12],7) +j=p.mQ(j,i,h,g,f[4],6) +g=p.mQ(g,j,i,h,f[9],15) +h=p.mQ(h,g,j,i,f[1],13) +i=p.mQ(i,h,g,j,f[2],11) +n=p.mN(s,i,l,k,f[3],11) +k=p.mN(k,n,i,l,f[10],13) +l=p.mN(l,k,n,i,f[14],6) +r=p.mN(i,l,k,n,f[4],7) +n=p.mN(n,r,l,k,f[9],14) +k=p.mN(k,n,r,l,f[15],9) +l=p.mN(l,k,n,r,f[8],13) +r=p.mN(r,l,k,n,f[1],15) +n=p.mN(n,r,l,k,f[2],14) +k=p.mN(k,n,r,l,f[7],8) +l=p.mN(l,k,n,r,f[0],13) +r=p.mN(r,l,k,n,f[6],6) +n=p.mN(n,r,l,k,f[13],5) +k=p.mN(k,n,r,l,f[11],12) +l=p.mN(l,k,n,r,f[5],7) +r=p.mN(r,l,k,n,f[12],5) +j=p.mP(j,m,h,g,f[15],9) +g=p.mP(g,j,m,h,f[5],7) +h=p.mP(h,g,j,m,f[1],15) +i=p.mP(m,h,g,j,f[3],11) +j=p.mP(j,i,h,g,f[7],8) +g=p.mP(g,j,i,h,f[14],6) +h=p.mP(h,g,j,i,f[6],6) +i=p.mP(i,h,g,j,f[9],14) +j=p.mP(j,i,h,g,f[11],12) +g=p.mP(g,j,i,h,f[8],13) +h=p.mP(h,g,j,i,f[12],5) +i=p.mP(i,h,g,j,f[2],14) +j=p.mP(j,i,h,g,f[10],13) +g=p.mP(g,j,i,h,f[0],13) +h=p.mP(h,g,j,i,f[4],7) +i=p.mP(i,h,g,j,f[13],5) +n=p.mO(n,r,h,k,f[1],11) +k=p.mO(k,n,r,h,f[9],12) +q=p.mO(h,k,n,r,f[11],14) +m=p.mO(r,q,k,n,f[10],15) +n=p.mO(n,m,q,k,f[0],14) +k=p.mO(k,n,m,q,f[8],15) +q=p.mO(q,k,n,m,f[12],9) +m=p.mO(m,q,k,n,f[4],8) +n=p.mO(n,m,q,k,f[13],9) +k=p.mO(k,n,m,q,f[3],14) +q=p.mO(q,k,n,m,f[7],5) +m=p.mO(m,q,k,n,f[15],6) +n=p.mO(n,m,q,k,f[14],8) +k=p.mO(k,n,m,q,f[5],6) +q=p.mO(q,k,n,m,f[6],5) +m=p.mO(m,q,k,n,f[2],12) +j=A.t(j+((i^l^g)>>>0)+f[8]>>>0,15) +g=A.t(g+((j^i^l)>>>0)+f[6]>>>0,5) +h=A.t(l+((g^j^i)>>>0)+f[4]>>>0,8) +i=A.t(i+((h^g^j)>>>0)+f[1]>>>0,11) +j=A.t(j+((i^h^g)>>>0)+f[3]>>>0,14) +g=A.t(g+((j^i^h)>>>0)+f[11]>>>0,14) +h=A.t(h+((g^j^i)>>>0)+f[15]>>>0,6) +i=A.t(i+((h^g^j)>>>0)+f[0]>>>0,14) +j=A.t(j+((i^h^g)>>>0)+f[5]>>>0,6) +g=A.t(g+((j^i^h)>>>0)+f[12]>>>0,9) +h=A.t(h+((g^j^i)>>>0)+f[2]>>>0,12) +i=A.t(i+((h^g^j)>>>0)+f[13]>>>0,9) +j=A.t(j+((i^h^g)>>>0)+f[9]>>>0,12) +g=A.t(g+((j^i^h)>>>0)+f[7]>>>0,5) +h=A.t(h+((g^j^i)>>>0)+f[10]>>>0,15) +i=A.t(i+((h^g^j)>>>0)+f[14]>>>0,8) +o[0]=o[0]+n>>>0 +o[1]=o[1]+m>>>0 +o[2]=o[2]+q>>>0 +o[3]=o[3]+g>>>0 +o[4]=o[4]+j>>>0 +o[5]=o[5]+i>>>0 +o[6]=o[6]+h>>>0 +o[7]=o[7]+k>>>0}, +mM(a,b,c,d,e,f){return A.t(a+((b&c|~b&d)>>>0)+e+1518500249>>>0,f)}, +mN(a,b,c,d,e,f){return A.t(a+(((b|~c)^d)>>>0)+e+1859775393>>>0,f)}, +mO(a,b,c,d,e,f){return A.t(a+((b&d|c&~d)>>>0)+e+2400959708>>>0,f)}, +mP(a,b,c,d,e,f){return A.t(a+((b&c|~b&d)>>>0)+e+1836072691>>>0,f)}, +mQ(a,b,c,d,e,f){return A.t(a+(((b|~c)^d)>>>0)+e+1548603684>>>0,f)}, +mR(a,b,c,d,e,f){return A.t(a+((b&d|c&~d)>>>0)+e+1352829926>>>0,f)}, +gma(a){return 64}, +gks(){return"RIPEMD-256"}, +gjz(){return 32}} +A.bzk.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.TV(s,r,B.z,8,A.aK(8,0,!1,q),A.aK(16,0,!1,q)) +q.b6(0) +return q}, +$S:1073} +A.TW.prototype={ +uS(){var s=this.f +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878 +s[4]=3285377520 +s[5]=1985229328 +s[6]=4275878552 +s[7]=2309737967 +s[8]=19088743 +s[9]=1009589775}, +uM(){var s,r,q,p,o,n=this.f,m=n[0],l=n[1],k=n[2],j=n[3],i=n[4],h=n[5],g=n[6],f=n[7],e=n[8],d=n[9],c=this.r +m=A.t(m+((l^k^j)>>>0)+c[0]>>>0,11)+i>>>0 +k=A.t(k,10) +i=A.t(i+((m^l^k)>>>0)+c[1]>>>0,14)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i^m^l)>>>0)+c[2]>>>0,15)+k>>>0 +m=A.t(m,10) +k=A.t(k+((j^i^m)>>>0)+c[3]>>>0,12)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k^j^i)>>>0)+c[4]>>>0,5)+m>>>0 +j=A.t(j,10) +m=A.t(m+((l^k^j)>>>0)+c[5]>>>0,8)+i>>>0 +k=A.t(k,10) +i=A.t(i+((m^l^k)>>>0)+c[6]>>>0,7)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i^m^l)>>>0)+c[7]>>>0,9)+k>>>0 +m=A.t(m,10) +k=A.t(k+((j^i^m)>>>0)+c[8]>>>0,11)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k^j^i)>>>0)+c[9]>>>0,13)+m>>>0 +j=A.t(j,10) +m=A.t(m+((l^k^j)>>>0)+c[10]>>>0,14)+i>>>0 +k=A.t(k,10) +i=A.t(i+((m^l^k)>>>0)+c[11]>>>0,15)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i^m^l)>>>0)+c[12]>>>0,6)+k>>>0 +m=A.t(m,10) +k=A.t(k+((j^i^m)>>>0)+c[13]>>>0,7)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k^j^i)>>>0)+c[14]>>>0,9)+m>>>0 +j=A.t(j,10) +m=A.t(m+((l^k^j)>>>0)+c[15]>>>0,8)+i>>>0 +k=A.t(k,10) +h=A.t(h+((g^(f|~e))>>>0)+c[5]+1352829926>>>0,8)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h^(g|~f))>>>0)+c[14]+1352829926>>>0,9)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d^(h|~g))>>>0)+c[7]+1352829926>>>0,9)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e^(d|~h))>>>0)+c[0]+1352829926>>>0,11)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f^(e|~d))>>>0)+c[9]+1352829926>>>0,13)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g^(f|~e))>>>0)+c[2]+1352829926>>>0,15)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h^(g|~f))>>>0)+c[11]+1352829926>>>0,15)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d^(h|~g))>>>0)+c[4]+1352829926>>>0,5)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e^(d|~h))>>>0)+c[13]+1352829926>>>0,7)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f^(e|~d))>>>0)+c[6]+1352829926>>>0,7)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g^(f|~e))>>>0)+c[15]+1352829926>>>0,8)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h^(g|~f))>>>0)+c[8]+1352829926>>>0,11)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d^(h|~g))>>>0)+c[1]+1352829926>>>0,14)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e^(d|~h))>>>0)+c[10]+1352829926>>>0,14)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f^(e|~d))>>>0)+c[3]+1352829926>>>0,12)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g^(f|~e))>>>0)+c[12]+1352829926>>>0,6)+d>>>0 +f=A.t(f,10) +i=A.t(i+((h&l|~h&k)>>>0)+c[7]+1518500249>>>0,7)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i&h|~i&l)>>>0)+c[4]+1518500249>>>0,6)+k>>>0 +s=A.t(h,10) +k=A.t(k+((j&i|~j&s)>>>0)+c[13]+1518500249>>>0,8)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k&j|~k&i)>>>0)+c[1]+1518500249>>>0,13)+s>>>0 +j=A.t(j,10) +s=A.t(s+((l&k|~l&j)>>>0)+c[10]+1518500249>>>0,11)+i>>>0 +k=A.t(k,10) +i=A.t(i+((s&l|~s&k)>>>0)+c[6]+1518500249>>>0,9)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i&s|~i&l)>>>0)+c[15]+1518500249>>>0,7)+k>>>0 +s=A.t(s,10) +k=A.t(k+((j&i|~j&s)>>>0)+c[3]+1518500249>>>0,15)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k&j|~k&i)>>>0)+c[12]+1518500249>>>0,7)+s>>>0 +j=A.t(j,10) +s=A.t(s+((l&k|~l&j)>>>0)+c[0]+1518500249>>>0,12)+i>>>0 +k=A.t(k,10) +i=A.t(i+((s&l|~s&k)>>>0)+c[9]+1518500249>>>0,15)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i&s|~i&l)>>>0)+c[5]+1518500249>>>0,9)+k>>>0 +s=A.t(s,10) +k=A.t(k+((j&i|~j&s)>>>0)+c[2]+1518500249>>>0,11)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k&j|~k&i)>>>0)+c[14]+1518500249>>>0,7)+s>>>0 +j=A.t(j,10) +s=A.t(s+((l&k|~l&j)>>>0)+c[11]+1518500249>>>0,13)+i>>>0 +k=A.t(k,10) +r=~s +i=A.t(i+((s&l|r&k)>>>0)+c[8]+1518500249>>>0,12)+j>>>0 +l=A.t(l,10) +d=A.t(d+((m&f|g&~f)>>>0)+c[6]+1548603684>>>0,9)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d&g|m&~g)>>>0)+c[11]+1548603684>>>0,13)+f>>>0 +h=A.t(m,10) +f=A.t(f+((e&h|d&~h)>>>0)+c[3]+1548603684>>>0,15)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f&d|e&~d)>>>0)+c[7]+1548603684>>>0,7)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g&e|f&~e)>>>0)+c[0]+1548603684>>>0,12)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h&f|g&~f)>>>0)+c[13]+1548603684>>>0,8)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d&g|h&~g)>>>0)+c[5]+1548603684>>>0,9)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e&h|d&~h)>>>0)+c[10]+1548603684>>>0,11)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f&d|e&~d)>>>0)+c[14]+1548603684>>>0,7)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g&e|f&~e)>>>0)+c[15]+1548603684>>>0,7)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h&f|g&~f)>>>0)+c[8]+1548603684>>>0,12)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d&g|h&~g)>>>0)+c[12]+1548603684>>>0,7)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e&h|d&~h)>>>0)+c[4]+1548603684>>>0,6)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f&d|e&~d)>>>0)+c[9]+1548603684>>>0,15)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g&e|f&~e)>>>0)+c[1]+1548603684>>>0,13)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h&f|g&~f)>>>0)+c[2]+1548603684>>>0,11)+e>>>0 +g=A.t(g,10) +j=A.t(j+(((i|r)^g)>>>0)+c[3]+1859775393>>>0,11)+k>>>0 +m=A.t(s,10) +k=A.t(k+(((j|~i)^m)>>>0)+c[10]+1859775393>>>0,13)+g>>>0 +i=A.t(i,10) +q=A.t(g+(((k|~j)^i)>>>0)+c[14]+1859775393>>>0,6)+m>>>0 +j=A.t(j,10) +m=A.t(m+(((q|~k)^j)>>>0)+c[4]+1859775393>>>0,7)+i>>>0 +k=A.t(k,10) +i=A.t(i+(((m|~q)^k)>>>0)+c[9]+1859775393>>>0,14)+j>>>0 +q=A.t(q,10) +j=A.t(j+(((i|~m)^q)>>>0)+c[15]+1859775393>>>0,9)+k>>>0 +m=A.t(m,10) +k=A.t(k+(((j|~i)^m)>>>0)+c[8]+1859775393>>>0,13)+q>>>0 +i=A.t(i,10) +q=A.t(q+(((k|~j)^i)>>>0)+c[1]+1859775393>>>0,15)+m>>>0 +j=A.t(j,10) +m=A.t(m+(((q|~k)^j)>>>0)+c[2]+1859775393>>>0,14)+i>>>0 +k=A.t(k,10) +i=A.t(i+(((m|~q)^k)>>>0)+c[7]+1859775393>>>0,8)+j>>>0 +q=A.t(q,10) +j=A.t(j+(((i|~m)^q)>>>0)+c[0]+1859775393>>>0,13)+k>>>0 +m=A.t(m,10) +k=A.t(k+(((j|~i)^m)>>>0)+c[6]+1859775393>>>0,6)+q>>>0 +i=A.t(i,10) +q=A.t(q+(((k|~j)^i)>>>0)+c[13]+1859775393>>>0,5)+m>>>0 +j=A.t(j,10) +m=A.t(m+(((q|~k)^j)>>>0)+c[11]+1859775393>>>0,12)+i>>>0 +k=A.t(k,10) +i=A.t(i+(((m|~q)^k)>>>0)+c[5]+1859775393>>>0,7)+j>>>0 +q=A.t(q,10) +j=A.t(j+(((i|~m)^q)>>>0)+c[12]+1859775393>>>0,5)+k>>>0 +m=A.t(m,10) +e=A.t(e+(((d|~h)^l)>>>0)+c[15]+1836072691>>>0,9)+f>>>0 +h=A.t(h,10) +f=A.t(f+(((e|~d)^h)>>>0)+c[5]+1836072691>>>0,7)+l>>>0 +d=A.t(d,10) +g=A.t(l+(((f|~e)^d)>>>0)+c[1]+1836072691>>>0,15)+h>>>0 +e=A.t(e,10) +h=A.t(h+(((g|~f)^e)>>>0)+c[3]+1836072691>>>0,11)+d>>>0 +f=A.t(f,10) +d=A.t(d+(((h|~g)^f)>>>0)+c[7]+1836072691>>>0,8)+e>>>0 +g=A.t(g,10) +e=A.t(e+(((d|~h)^g)>>>0)+c[14]+1836072691>>>0,6)+f>>>0 +h=A.t(h,10) +f=A.t(f+(((e|~d)^h)>>>0)+c[6]+1836072691>>>0,6)+g>>>0 +d=A.t(d,10) +g=A.t(g+(((f|~e)^d)>>>0)+c[9]+1836072691>>>0,14)+h>>>0 +e=A.t(e,10) +h=A.t(h+(((g|~f)^e)>>>0)+c[11]+1836072691>>>0,12)+d>>>0 +f=A.t(f,10) +d=A.t(d+(((h|~g)^f)>>>0)+c[8]+1836072691>>>0,13)+e>>>0 +g=A.t(g,10) +e=A.t(e+(((d|~h)^g)>>>0)+c[12]+1836072691>>>0,5)+f>>>0 +h=A.t(h,10) +f=A.t(f+(((e|~d)^h)>>>0)+c[2]+1836072691>>>0,14)+g>>>0 +d=A.t(d,10) +g=A.t(g+(((f|~e)^d)>>>0)+c[10]+1836072691>>>0,13)+h>>>0 +e=A.t(e,10) +h=A.t(h+(((g|~f)^e)>>>0)+c[0]+1836072691>>>0,13)+d>>>0 +f=A.t(f,10) +d=A.t(d+(((h|~g)^f)>>>0)+c[4]+1836072691>>>0,7)+e>>>0 +g=A.t(g,10) +e=A.t(e+(((d|~h)^g)>>>0)+c[13]+1836072691>>>0,5)+f>>>0 +h=A.t(h,10) +p=A.t(f+((j&m|i&~m)>>>0)+c[1]+2400959708>>>0,11)+q>>>0 +i=A.t(i,10) +l=A.t(q+((p&i|j&~i)>>>0)+c[9]+2400959708>>>0,12)+m>>>0 +j=A.t(j,10) +m=A.t(m+((l&j|p&~j)>>>0)+c[11]+2400959708>>>0,14)+i>>>0 +p=A.t(p,10) +i=A.t(i+((m&p|l&~p)>>>0)+c[10]+2400959708>>>0,15)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i&l|m&~l)>>>0)+c[0]+2400959708>>>0,14)+p>>>0 +m=A.t(m,10) +p=A.t(p+((j&m|i&~m)>>>0)+c[8]+2400959708>>>0,15)+l>>>0 +i=A.t(i,10) +l=A.t(l+((p&i|j&~i)>>>0)+c[12]+2400959708>>>0,9)+m>>>0 +j=A.t(j,10) +m=A.t(m+((l&j|p&~j)>>>0)+c[4]+2400959708>>>0,8)+i>>>0 +p=A.t(p,10) +i=A.t(i+((m&p|l&~p)>>>0)+c[13]+2400959708>>>0,9)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i&l|m&~l)>>>0)+c[3]+2400959708>>>0,14)+p>>>0 +m=A.t(m,10) +p=A.t(p+((j&m|i&~m)>>>0)+c[7]+2400959708>>>0,5)+l>>>0 +i=A.t(i,10) +l=A.t(l+((p&i|j&~i)>>>0)+c[15]+2400959708>>>0,6)+m>>>0 +j=A.t(j,10) +m=A.t(m+((l&j|p&~j)>>>0)+c[14]+2400959708>>>0,8)+i>>>0 +p=A.t(p,10) +i=A.t(i+((m&p|l&~p)>>>0)+c[5]+2400959708>>>0,6)+j>>>0 +l=A.t(l,10) +j=A.t(j+((i&l|m&~l)>>>0)+c[6]+2400959708>>>0,5)+p>>>0 +m=A.t(m,10) +p=A.t(p+((j&m|i&~m)>>>0)+c[2]+2400959708>>>0,12)+l>>>0 +i=A.t(i,10) +f=A.t(k+((e&d|~e&h)>>>0)+c[8]+2053994217>>>0,15)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f&e|~f&d)>>>0)+c[6]+2053994217>>>0,5)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g&f|~g&e)>>>0)+c[4]+2053994217>>>0,8)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h&g|~h&f)>>>0)+c[1]+2053994217>>>0,11)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d&h|~d&g)>>>0)+c[3]+2053994217>>>0,14)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e&d|~e&h)>>>0)+c[11]+2053994217>>>0,14)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f&e|~f&d)>>>0)+c[15]+2053994217>>>0,6)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g&f|~g&e)>>>0)+c[0]+2053994217>>>0,14)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h&g|~h&f)>>>0)+c[5]+2053994217>>>0,6)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d&h|~d&g)>>>0)+c[12]+2053994217>>>0,9)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e&d|~e&h)>>>0)+c[2]+2053994217>>>0,12)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f&e|~f&d)>>>0)+c[13]+2053994217>>>0,9)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g&f|~g&e)>>>0)+c[9]+2053994217>>>0,12)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h&g|~h&f)>>>0)+c[7]+2053994217>>>0,5)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d&h|~d&g)>>>0)+c[10]+2053994217>>>0,15)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e&d|~e&h)>>>0)+c[14]+2053994217>>>0,8)+g>>>0 +d=A.t(d,10) +l=A.t(l+((p^(e|~i))>>>0)+c[4]+2840853838>>>0,9)+m>>>0 +o=A.t(e,10) +m=A.t(m+((l^(p|~o))>>>0)+c[0]+2840853838>>>0,15)+i>>>0 +k=A.t(p,10) +i=A.t(i+((m^(l|~k))>>>0)+c[5]+2840853838>>>0,5)+o>>>0 +l=A.t(l,10) +o=A.t(o+((i^(m|~l))>>>0)+c[9]+2840853838>>>0,11)+k>>>0 +m=A.t(m,10) +k=A.t(k+((o^(i|~m))>>>0)+c[7]+2840853838>>>0,6)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k^(o|~i))>>>0)+c[12]+2840853838>>>0,8)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^(k|~o))>>>0)+c[2]+2840853838>>>0,13)+i>>>0 +k=A.t(k,10) +i=A.t(i+((m^(l|~k))>>>0)+c[10]+2840853838>>>0,12)+o>>>0 +l=A.t(l,10) +o=A.t(o+((i^(m|~l))>>>0)+c[14]+2840853838>>>0,5)+k>>>0 +m=A.t(m,10) +k=A.t(k+((o^(i|~m))>>>0)+c[1]+2840853838>>>0,12)+l>>>0 +i=A.t(i,10) +l=A.t(l+((k^(o|~i))>>>0)+c[3]+2840853838>>>0,13)+m>>>0 +o=A.t(o,10) +m=A.t(m+((l^(k|~o))>>>0)+c[8]+2840853838>>>0,14)+i>>>0 +k=A.t(k,10) +i=A.t(i+((m^(l|~k))>>>0)+c[11]+2840853838>>>0,11)+o>>>0 +l=A.t(l,10) +o=A.t(o+((i^(m|~l))>>>0)+c[6]+2840853838>>>0,8)+k>>>0 +m=A.t(m,10) +k=A.t(k+((o^(i|~m))>>>0)+c[15]+2840853838>>>0,5)+l>>>0 +i=A.t(i,10) +r=A.t(l+((k^(o|~i))>>>0)+c[13]+2840853838>>>0,6) +o=A.t(o,10) +g=A.t(g+((f^j^d)>>>0)+c[12]>>>0,8)+h>>>0 +e=A.t(j,10) +h=A.t(h+((g^f^e)>>>0)+c[15]>>>0,5)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h^g^f)>>>0)+c[10]>>>0,12)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d^h^g)>>>0)+c[4]>>>0,9)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e^d^h)>>>0)+c[1]>>>0,12)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f^e^d)>>>0)+c[5]>>>0,5)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g^f^e)>>>0)+c[8]>>>0,14)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h^g^f)>>>0)+c[7]>>>0,6)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d^h^g)>>>0)+c[6]>>>0,8)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e^d^h)>>>0)+c[2]>>>0,13)+g>>>0 +d=A.t(d,10) +g=A.t(g+((f^e^d)>>>0)+c[13]>>>0,6)+h>>>0 +e=A.t(e,10) +h=A.t(h+((g^f^e)>>>0)+c[14]>>>0,5)+d>>>0 +f=A.t(f,10) +d=A.t(d+((h^g^f)>>>0)+c[0]>>>0,15)+e>>>0 +g=A.t(g,10) +e=A.t(e+((d^h^g)>>>0)+c[3]>>>0,13)+f>>>0 +h=A.t(h,10) +f=A.t(f+((e^d^h)>>>0)+c[9]>>>0,11)+g>>>0 +d=A.t(d,10) +c=A.t(g+((f^e^d)>>>0)+c[11]>>>0,11) +e=A.t(e,10) +n[0]=n[0]+m>>>0 +n[1]=n[1]+(r+m>>>0)>>>0 +n[2]=n[2]+k>>>0 +n[3]=n[3]+o>>>0 +n[4]=n[4]+d>>>0 +n[5]=n[5]+h>>>0 +n[6]=n[6]+(c+h>>>0)>>>0 +n[7]=n[7]+f>>>0 +n[8]=n[8]+e>>>0 +n[9]=n[9]+i>>>0}, +gma(a){return 64}, +gks(){return"RIPEMD-320"}, +gjz(){return 40}} +A.bzl.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.TW(s,r,B.z,10,A.aK(10,0,!1,q),A.aK(16,0,!1,q)) +q.b6(0) +return q}, +$S:1074} +A.Uy.prototype={ +uS(){var s=this.f +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878 +s[4]=3285377520}, +uM(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e +for(s=this.r,r=16;r<80;++r){q=s[r-3]^s[r-8]^s[r-14]^s[r-16] +s[r]=((q&$.co[1])<<1|q>>>31)>>>0}p=this.f +o=p[0] +n=p[1] +m=p[2] +l=p[3] +k=p[4] +for(j=o,i=0,h=0;h<4;++h,i=f){g=$.co[5] +f=i+1 +k=k+(((j&g)<<5|B.d.b2(j,27))>>>0)+((n&m|~n&l)>>>0)+s[i]+1518500249>>>0 +e=$.co[30] +n=((n&e)<<30|B.d.b2(n,2))>>>0 +i=f+1 +l=l+(((k&g)<<5|k>>>27)>>>0)+((j&n|~j&m)>>>0)+s[f]+1518500249>>>0 +j=((j&e)<<30|B.d.b2(j,2))>>>0 +f=i+1 +m=m+(((l&g)<<5|l>>>27)>>>0)+((k&j|~k&n)>>>0)+s[i]+1518500249>>>0 +k=((k&e)<<30|k>>>2)>>>0 +i=f+1 +n=n+(((m&g)<<5|m>>>27)>>>0)+((l&k|~l&j)>>>0)+s[f]+1518500249>>>0 +l=((l&e)<<30|l>>>2)>>>0 +f=i+1 +j=j+(((n&g)<<5|n>>>27)>>>0)+((m&l|~m&k)>>>0)+s[i]+1518500249>>>0 +m=((m&e)<<30|m>>>2)>>>0}for(h=0;h<4;++h,i=f){g=$.co[5] +f=i+1 +k=k+(((j&g)<<5|B.d.b2(j,27))>>>0)+((n^m^l)>>>0)+s[i]+1859775393>>>0 +e=$.co[30] +n=((n&e)<<30|B.d.b2(n,2))>>>0 +i=f+1 +l=l+(((k&g)<<5|k>>>27)>>>0)+((j^n^m)>>>0)+s[f]+1859775393>>>0 +j=((j&e)<<30|B.d.b2(j,2))>>>0 +f=i+1 +m=m+(((l&g)<<5|l>>>27)>>>0)+((k^j^n)>>>0)+s[i]+1859775393>>>0 +k=((k&e)<<30|k>>>2)>>>0 +i=f+1 +n=n+(((m&g)<<5|m>>>27)>>>0)+((l^k^j)>>>0)+s[f]+1859775393>>>0 +l=((l&e)<<30|l>>>2)>>>0 +f=i+1 +j=j+(((n&g)<<5|n>>>27)>>>0)+((m^l^k)>>>0)+s[i]+1859775393>>>0 +m=((m&e)<<30|m>>>2)>>>0}for(h=0;h<4;++h,i=f){g=$.co[5] +f=i+1 +k=k+(((j&g)<<5|B.d.b2(j,27))>>>0)+((n&m|n&l|m&l)>>>0)+s[i]+2400959708>>>0 +e=$.co[30] +n=((n&e)<<30|B.d.b2(n,2))>>>0 +i=f+1 +l=l+(((k&g)<<5|k>>>27)>>>0)+((j&n|j&m|n&m)>>>0)+s[f]+2400959708>>>0 +j=((j&e)<<30|B.d.b2(j,2))>>>0 +f=i+1 +m=m+(((l&g)<<5|l>>>27)>>>0)+((k&j|k&n|j&n)>>>0)+s[i]+2400959708>>>0 +k=((k&e)<<30|k>>>2)>>>0 +i=f+1 +n=n+(((m&g)<<5|m>>>27)>>>0)+((l&k|l&j|k&j)>>>0)+s[f]+2400959708>>>0 +l=((l&e)<<30|l>>>2)>>>0 +f=i+1 +j=j+(((n&g)<<5|n>>>27)>>>0)+((m&l|m&k|l&k)>>>0)+s[i]+2400959708>>>0 +m=((m&e)<<30|m>>>2)>>>0}for(h=0;h<4;++h,i=f){g=$.co[5] +f=i+1 +k=k+(((j&g)<<5|B.d.b2(j,27))>>>0)+((n^m^l)>>>0)+s[i]+3395469782>>>0 +e=$.co[30] +n=((n&e)<<30|B.d.b2(n,2))>>>0 +i=f+1 +l=l+(((k&g)<<5|k>>>27)>>>0)+((j^n^m)>>>0)+s[f]+3395469782>>>0 +j=((j&e)<<30|B.d.b2(j,2))>>>0 +f=i+1 +m=m+(((l&g)<<5|l>>>27)>>>0)+((k^j^n)>>>0)+s[i]+3395469782>>>0 +k=((k&e)<<30|k>>>2)>>>0 +i=f+1 +n=n+(((m&g)<<5|m>>>27)>>>0)+((l^k^j)>>>0)+s[f]+3395469782>>>0 +l=((l&e)<<30|l>>>2)>>>0 +f=i+1 +j=j+(((n&g)<<5|n>>>27)>>>0)+((m^l^k)>>>0)+s[i]+3395469782>>>0 +m=((m&e)<<30|m>>>2)>>>0}p[0]=o+j>>>0 +p[1]=p[1]+n>>>0 +p[2]=p[2]+m>>>0 +p[3]=p[3]+l>>>0 +p[4]=p[4]+k>>>0}, +gma(a){return 64}, +gks(){return"SHA-1"}, +gjz(){return 20}} +A.bCI.prototype={ +$0(){return A.cLV()}, +$S:389} +A.Uz.prototype={ +uS(){var s=this.f +s[0]=3238371032 +s[1]=914150663 +s[2]=812702999 +s[3]=4144912697 +s[4]=4290775857 +s[5]=1750603025 +s[6]=1694076839 +s[7]=3204075428}, +uM(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3 +for(s=this.r,r=16;r<64;++r){q=s[r-2] +p=B.d.b2(q,17) +o=$.co[15] +n=B.d.b2(q,19) +m=$.co[13] +l=B.d.b2(q,10) +k=s[r-7] +j=s[r-15] +s[r]=(((p|(q&o)<<15)^(n|(q&m)<<13)^l)>>>0)+k+(((B.d.b2(j,7)|(j&$.co[25])<<25)^(B.d.b2(j,18)|(j&$.co[14])<<14)^B.d.b2(j,3))>>>0)+s[r-16]>>>0}q=this.f +i=q[0] +h=q[1] +g=q[2] +f=q[3] +e=q[4] +d=q[5] +c=q[6] +b=q[7] +for(a=i,r=0,a0=0;a0<8;++a0){p=B.d.b2(e,6) +o=$.co[26] +n=B.d.b2(e,11) +m=$.co[21] +l=B.d.b2(e,25) +k=$.co[7] +b=b+(((p|(e&o)<<26)^(n|(e&m)<<21)^(l|(e&k)<<7))>>>0)+((e&d^~e&c)>>>0)+$.LL[r]+s[r]>>>0 +f=f+b>>>0 +l=B.d.b2(a,2) +n=$.co[30] +p=B.d.b2(a,13) +j=$.co[19] +a1=B.d.b2(a,22) +a2=$.co[10] +a3=a&h +b=b+(((l|(a&n)<<30)^(p|(a&j)<<19)^(a1|(a&a2)<<10))>>>0)+((a3^a&g^h&g)>>>0)>>>0;++r +c=c+(((f>>>6|(f&o)<<26)^(f>>>11|(f&m)<<21)^(f>>>25|(f&k)<<7))>>>0)+((f&e^~f&d)>>>0)+$.LL[r]+s[r]>>>0 +g=g+c>>>0 +a1=b&a +c=c+(((b>>>2|(b&n)<<30)^(b>>>13|(b&j)<<19)^(b>>>22|(b&a2)<<10))>>>0)+((a1^b&h^a3)>>>0)>>>0;++r +d=d+(((g>>>6|(g&o)<<26)^(g>>>11|(g&m)<<21)^(g>>>25|(g&k)<<7))>>>0)+((g&f^~g&e)>>>0)+$.LL[r]+s[r]>>>0 +h=h+d>>>0 +a3=c&b +d=d+(((c>>>2|(c&n)<<30)^(c>>>13|(c&j)<<19)^(c>>>22|(c&a2)<<10))>>>0)+((a3^c&a^a1)>>>0)>>>0;++r +e=e+(((h>>>6|(h&o)<<26)^(h>>>11|(h&m)<<21)^(h>>>25|(h&k)<<7))>>>0)+((h&g^~h&f)>>>0)+$.LL[r]+s[r]>>>0 +a=a+e>>>0 +a1=d&c +e=e+(((d>>>2|(d&n)<<30)^(d>>>13|(d&j)<<19)^(d>>>22|(d&a2)<<10))>>>0)+((a1^d&b^a3)>>>0)>>>0;++r +f=f+(((a>>>6|(a&o)<<26)^(a>>>11|(a&m)<<21)^(a>>>25|(a&k)<<7))>>>0)+((a&h^~a&g)>>>0)+$.LL[r]+s[r]>>>0 +b=b+f>>>0 +a3=e&d +f=f+(((e>>>2|(e&n)<<30)^(e>>>13|(e&j)<<19)^(e>>>22|(e&a2)<<10))>>>0)+((a3^e&c^a1)>>>0)>>>0;++r +g=g+(((b>>>6|(b&o)<<26)^(b>>>11|(b&m)<<21)^(b>>>25|(b&k)<<7))>>>0)+((b&a^~b&h)>>>0)+$.LL[r]+s[r]>>>0 +c=c+g>>>0 +a1=f&e +g=g+(((f>>>2|(f&n)<<30)^(f>>>13|(f&j)<<19)^(f>>>22|(f&a2)<<10))>>>0)+((a1^f&d^a3)>>>0)>>>0;++r +h=h+(((c>>>6|(c&o)<<26)^(c>>>11|(c&m)<<21)^(c>>>25|(c&k)<<7))>>>0)+((c&b^~c&a)>>>0)+$.LL[r]+s[r]>>>0 +d=d+h>>>0 +a3=g&f +h=h+(((g>>>2|(g&n)<<30)^(g>>>13|(g&j)<<19)^(g>>>22|(g&a2)<<10))>>>0)+((a3^g&e^a1)>>>0)>>>0;++r +a=a+(((d>>>6|(d&o)<<26)^(d>>>11|(d&m)<<21)^(d>>>25|(d&k)<<7))>>>0)+((d&c^~d&b)>>>0)+$.LL[r]+s[r]>>>0 +e=e+a>>>0 +a=a+(((h>>>2|(h&n)<<30)^(h>>>13|(h&j)<<19)^(h>>>22|(h&a2)<<10))>>>0)+((h&g^h&f^a3)>>>0)>>>0;++r}q[0]=i+a>>>0 +q[1]=q[1]+h>>>0 +q[2]=q[2]+g>>>0 +q[3]=q[3]+f>>>0 +q[4]=q[4]+e>>>0 +q[5]=q[5]+d>>>0 +q[6]=q[6]+c>>>0 +q[7]=q[7]+b>>>0}, +gma(a){return 64}, +gks(){return"SHA-224"}, +gjz(){return 28}} +A.bCJ.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.Uz(s,r,B.aF,7,A.aK(8,0,!1,q),A.aK(64,0,!1,q)) +q.b6(0) +return q}, +$S:1075} +A.UA.prototype={ +uS(){var s=this.f +s[0]=1779033703 +s[1]=3144134277 +s[2]=1013904242 +s[3]=2773480762 +s[4]=1359893119 +s[5]=2600822924 +s[6]=528734635 +s[7]=1541459225}, +uM(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3 +for(s=this.r,r=16;r<64;++r){q=s[r-2] +p=B.d.b2(q,17) +o=$.co[15] +n=B.d.b2(q,19) +m=$.co[13] +l=B.d.b2(q,10) +k=s[r-7] +j=s[r-15] +s[r]=(((p|(q&o)<<15)^(n|(q&m)<<13)^l)>>>0)+k+(((B.d.b2(j,7)|(j&$.co[25])<<25)^(B.d.b2(j,18)|(j&$.co[14])<<14)^B.d.b2(j,3))>>>0)+s[r-16]>>>0}q=this.f +i=q[0] +h=q[1] +g=q[2] +f=q[3] +e=q[4] +d=q[5] +c=q[6] +b=q[7] +for(a=i,r=0,a0=0;a0<8;++a0){p=B.d.b2(e,6) +o=$.co[26] +n=B.d.b2(e,11) +m=$.co[21] +l=B.d.b2(e,25) +k=$.co[7] +b=b+(((p|(e&o)<<26)^(n|(e&m)<<21)^(l|(e&k)<<7))>>>0)+((e&d^~e&c)>>>0)+$.LM[r]+s[r]>>>0 +f=f+b>>>0 +l=B.d.b2(a,2) +n=$.co[30] +p=B.d.b2(a,13) +j=$.co[19] +a1=B.d.b2(a,22) +a2=$.co[10] +a3=a&h +b=b+(((l|(a&n)<<30)^(p|(a&j)<<19)^(a1|(a&a2)<<10))>>>0)+((a3^a&g^h&g)>>>0)>>>0;++r +c=c+(((f>>>6|(f&o)<<26)^(f>>>11|(f&m)<<21)^(f>>>25|(f&k)<<7))>>>0)+((f&e^~f&d)>>>0)+$.LM[r]+s[r]>>>0 +g=g+c>>>0 +a1=b&a +c=c+(((b>>>2|(b&n)<<30)^(b>>>13|(b&j)<<19)^(b>>>22|(b&a2)<<10))>>>0)+((a1^b&h^a3)>>>0)>>>0;++r +d=d+(((g>>>6|(g&o)<<26)^(g>>>11|(g&m)<<21)^(g>>>25|(g&k)<<7))>>>0)+((g&f^~g&e)>>>0)+$.LM[r]+s[r]>>>0 +h=h+d>>>0 +a3=c&b +d=d+(((c>>>2|(c&n)<<30)^(c>>>13|(c&j)<<19)^(c>>>22|(c&a2)<<10))>>>0)+((a3^c&a^a1)>>>0)>>>0;++r +e=e+(((h>>>6|(h&o)<<26)^(h>>>11|(h&m)<<21)^(h>>>25|(h&k)<<7))>>>0)+((h&g^~h&f)>>>0)+$.LM[r]+s[r]>>>0 +a=a+e>>>0 +a1=d&c +e=e+(((d>>>2|(d&n)<<30)^(d>>>13|(d&j)<<19)^(d>>>22|(d&a2)<<10))>>>0)+((a1^d&b^a3)>>>0)>>>0;++r +f=f+(((a>>>6|(a&o)<<26)^(a>>>11|(a&m)<<21)^(a>>>25|(a&k)<<7))>>>0)+((a&h^~a&g)>>>0)+$.LM[r]+s[r]>>>0 +b=b+f>>>0 +a3=e&d +f=f+(((e>>>2|(e&n)<<30)^(e>>>13|(e&j)<<19)^(e>>>22|(e&a2)<<10))>>>0)+((a3^e&c^a1)>>>0)>>>0;++r +g=g+(((b>>>6|(b&o)<<26)^(b>>>11|(b&m)<<21)^(b>>>25|(b&k)<<7))>>>0)+((b&a^~b&h)>>>0)+$.LM[r]+s[r]>>>0 +c=c+g>>>0 +a1=f&e +g=g+(((f>>>2|(f&n)<<30)^(f>>>13|(f&j)<<19)^(f>>>22|(f&a2)<<10))>>>0)+((a1^f&d^a3)>>>0)>>>0;++r +h=h+(((c>>>6|(c&o)<<26)^(c>>>11|(c&m)<<21)^(c>>>25|(c&k)<<7))>>>0)+((c&b^~c&a)>>>0)+$.LM[r]+s[r]>>>0 +d=d+h>>>0 +a3=g&f +h=h+(((g>>>2|(g&n)<<30)^(g>>>13|(g&j)<<19)^(g>>>22|(g&a2)<<10))>>>0)+((a3^g&e^a1)>>>0)>>>0;++r +a=a+(((d>>>6|(d&o)<<26)^(d>>>11|(d&m)<<21)^(d>>>25|(d&k)<<7))>>>0)+((d&c^~d&b)>>>0)+$.LM[r]+s[r]>>>0 +e=e+a>>>0 +a=a+(((h>>>2|(h&n)<<30)^(h>>>13|(h&j)<<19)^(h>>>22|(h&a2)<<10))>>>0)+((h&g^h&f^a3)>>>0)>>>0;++r}q[0]=i+a>>>0 +q[1]=q[1]+h>>>0 +q[2]=q[2]+g>>>0 +q[3]=q[3]+f>>>0 +q[4]=q[4]+e>>>0 +q[5]=q[5]+d>>>0 +q[6]=q[6]+c>>>0 +q[7]=q[7]+b>>>0}, +gma(a){return 64}, +gks(){return"SHA-256"}, +gjz(){return 32}} +A.bCK.prototype={ +$0(){var s=A.e(0,null),r=new Uint8Array(4),q=t.S +q=new A.UA(s,r,B.aF,8,A.aK(8,0,!1,q),A.aK(64,0,!1,q)) +q.b6(0) +return q}, +$S:1076} +A.F1.prototype={ +aV7(a){switch(a){case 224:case 256:case 384:case 512:this.AU(1600-(a<<1>>>0)) +break +default:throw A.d(A.a0("invalid bitLength ("+a+") for SHA-3 must only be 224,256,384,512"))}}, +gks(){var s=this.d +s===$&&A.b() +return"SHA3-"+s}, +mc(a,b){var s,r=this +r.a70(2,2) +s=r.d +s===$&&A.b() +r.QA(a,b,s) +r.AU(1600-(r.d<<1>>>0)) +return B.d.aD(r.d,8)}} +A.bCN.prototype={ +$2(a,b){return new A.bCM(b)}, +$S:1077} +A.bCM.prototype={ +$0(){var s,r=this.a.ex(1) +r.toString +s=A.cA(r,null) +r=new Uint8Array(200) +r=new A.F1(r,new Uint8Array(192)) +r.aV7(s) +return r}, +$S:1078} +A.UB.prototype={ +b6(a){var s=this +s.a0M(0) +s.a.df(0,3418070365,3238371032) +s.b.df(0,1654270250,914150663) +s.c.df(0,2438529370,812702999) +s.d.df(0,355462360,4144912697) +s.e.df(0,1731405415,4290775857) +s.f.df(0,2394180231,1750603025) +s.r.df(0,3675008525,1694076839) +s.w.df(0,1203062813,3204075428)}, +mc(a,b){var s,r=this +r.WR(0) +s=A.fe(a.buffer,a.byteOffset,a.length) +r.a.i5(s,b,B.aF) +r.b.i5(s,b+8,B.aF) +r.c.i5(s,b+16,B.aF) +r.d.i5(s,b+24,B.aF) +r.e.i5(s,b+32,B.aF) +r.f.i5(s,b+40,B.aF) +r.b6(0) +return 48}, +gks(){return"SHA-384"}, +gjz(){return 48}} +A.bCL.prototype={ +$0(){var s=null,r=A.e(0,s),q=A.e(0,s),p=A.e(0,s),o=A.e(0,s),n=A.e(0,s),m=A.e(0,s),l=A.e(0,s),k=A.e(0,s) +r=new A.UB(r,q,p,o,n,m,l,k,new Uint8Array(8),A.ni(80),A.e(0,s),A.e(0,s)) +r.b6(0) +r.b6(0) +return r}, +$S:1079} +A.UC.prototype={ +b6(a){var s=this +s.a0M(0) +s.a.df(0,1779033703,4089235720) +s.b.df(0,3144134277,2227873595) +s.c.df(0,1013904242,4271175723) +s.d.df(0,2773480762,1595750129) +s.e.df(0,1359893119,2917565137) +s.f.df(0,2600822924,725511199) +s.r.df(0,528734635,4215389547) +s.w.df(0,1541459225,327033209)}, +mc(a,b){var s,r=this +r.WR(0) +s=A.fe(a.buffer,a.byteOffset,a.length) +r.a.i5(s,b,B.aF) +r.b.i5(s,b+8,B.aF) +r.c.i5(s,b+16,B.aF) +r.d.i5(s,b+24,B.aF) +r.e.i5(s,b+32,B.aF) +r.f.i5(s,b+40,B.aF) +r.r.i5(s,b+48,B.aF) +r.w.i5(s,b+56,B.aF) +r.b6(0) +return 64}, +gks(){return"SHA-512"}, +gjz(){return 64}} +A.bCO.prototype={ +$0(){var s=null,r=A.e(0,s),q=A.e(0,s),p=A.e(0,s),o=A.e(0,s),n=A.e(0,s),m=A.e(0,s),l=A.e(0,s),k=A.e(0,s) +r=new A.UC(r,q,p,o,n,m,l,k,new Uint8Array(8),A.ni(80),A.e(0,s),A.e(0,s)) +r.b6(0) +r.b6(0) +return r}, +$S:1080} +A.F2.prototype={ +gks(){return"SHA-512/"+this.ax*8}, +b6(a){var s=this +s.a0M(0) +s.a.ci(0,s.ay) +s.b.ci(0,s.ch) +s.c.ci(0,s.CW) +s.d.ci(0,s.cx) +s.e.ci(0,s.cy) +s.f.ci(0,s.db) +s.r.ci(0,s.dx) +s.w.ci(0,s.dy)}, +mc(a,b){var s,r,q,p=this +p.WR(0) +s=new Uint8Array(64) +r=A.fe(s.buffer,s.byteOffset,64) +p.a.i5(r,0,B.aF) +p.b.i5(r,8,B.aF) +p.c.i5(r,16,B.aF) +p.d.i5(r,24,B.aF) +p.e.i5(r,32,B.aF) +p.f.i5(r,40,B.aF) +p.r.i5(r,48,B.aF) +p.w.i5(r,56,B.aF) +q=p.ax +B.p.cV(a,b,b+q,s) +p.b6(0) +return q}, +gjz(){return this.ax}} +A.bCQ.prototype={ +$2(a,b){return new A.bCP(b)}, +$S:1081} +A.bCP.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=null,a1=this.a.ex(1) +a1.toString +s=A.cA(a1,a0) +if(B.d.M(s,8)!==0)throw A.d(A.cLt("Digest length for SHA-512/t is not a multiple of 8: "+s)) +a1=B.d.aD(s,8) +r=A.e(0,a0) +q=A.e(0,a0) +p=A.e(0,a0) +o=A.e(0,a0) +n=A.e(0,a0) +m=A.e(0,a0) +l=A.e(0,a0) +k=A.e(0,a0) +j=A.e(0,a0) +i=A.e(0,a0) +h=A.e(0,a0) +g=A.e(0,a0) +f=A.e(0,a0) +e=A.e(0,a0) +d=A.e(0,a0) +c=A.e(0,a0) +b=new A.F2(a1,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,new Uint8Array(8),A.ni(80),A.e(0,a0),A.e(0,a0)) +b.b6(0) +if(a1>=64)A.C(A.aM("Digest size cannot be >= 64 bytes (512 bits)",a0)) +if(a1===48)A.C(A.aM("Digest size cannot be 48 bytes (384 bits): use SHA-384 instead",a0)) +a1*=8 +j.df(0,1779033703,4089235720) +a=$.cXG() +j.e0(a) +i.df(0,3144134277,2227873595) +i.e0(a) +h.df(0,1013904242,4271175723) +h.e0(a) +g.df(0,2773480762,1595750129) +g.e0(a) +f.df(0,1359893119,2917565137) +f.e0(a) +e.df(0,2600822924,725511199) +e.e0(a) +d.df(0,528734635,4215389547) +d.e0(a) +c.df(0,1541459225,327033209) +c.e0(a) +b.hY(83) +b.hY(72) +b.hY(65) +b.hY(45) +b.hY(53) +b.hY(49) +b.hY(50) +b.hY(47) +if(a1>100){b.hY(B.d.aD(a1,100)+48) +s=B.d.M(a1,100) +b.hY(B.d.aD(s,10)+48) +b.hY(B.d.M(s,10)+48)}else if(a1>10){b.hY(B.d.aD(a1,10)+48) +b.hY(B.d.M(a1,10)+48)}else b.hY(a1+48) +b.WR(0) +r.ci(0,j) +q.ci(0,i) +p.ci(0,h) +o.ci(0,g) +n.ci(0,f) +m.ci(0,e) +l.ci(0,d) +k.ci(0,c) +b.b6(0) +return b}, +$S:1082} +A.wF.prototype={ +ahV(a){switch(a){case 128:case 256:this.AU(1600-(a<<1>>>0)) +break +default:throw A.d(A.a0("invalid bitLength ("+a+") for SHAKE must only be 128 or 256"))}}, +gks(){var s=this.d +s===$&&A.b() +return"SHAKE-"+s}, +mc(a,b){var s,r=this.d +r===$&&A.b() +r=B.d.aD(r,8) +s=this.a9H(a,r,r) +this.b6(0) +return s}, +a9H(a,b,c){var s=this.f +s===$&&A.b() +if(!s)this.a70(15,4) +this.QA(a,b,c*8) +return c}} +A.bCS.prototype={ +$2(a,b){return new A.bCR(b)}, +$S:1083} +A.bCR.prototype={ +$0(){var s=this.a.ex(1) +s.toString +return A.dcG(A.cA(s,null))}, +$S:1084} +A.UD.prototype={ +uS(){var s=this.f +s[0]=1937774191 +s[1]=1226093241 +s[2]=388252375 +s[3]=3666478592 +s[4]=2842636476 +s[5]=372324522 +s[6]=3817729613 +s[7]=2969243214}, +uM(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this.x +B.b.iK(a2,0,this.r) +for(s=16;s<68;++s){r=a2[s-16] +q=a2[s-9] +p=a2[s-3] +o=$.co[15] +p=r^q^((p&o)<<15|B.d.b2(p,17)) +q=$.co[23] +r=a2[s-13] +a2[s]=(p^((p&o)<<15|p>>>17)^((p&q)<<23|p>>>9)^((r&$.co[7])<<7|B.d.b2(r,25))^a2[s-6])>>>0}r=this.f +n=r[0] +m=r[1] +l=r[2] +k=r[3] +j=r[4] +i=r[5] +h=r[6] +g=r[7] +for(s=0;s<16;++s,g=h,h=a0,i=j,j=a1,k=l,l=a,m=n,n=c){q=((n&$.co[12])<<12|B.d.b2(n,20))>>>0 +f=s&31 +e=f&31 +p=q+j+((($.co[e]&2043430169)<>>0)>>>0 +d=((p&$.co[7])<<7|p>>>25)>>>0 +c=((n^m^l)>>>0)+k+((d^q)>>>0)+((a2[s]^a2[s+4])>>>0)>>>0 +b=A.dcH(j,i,h)+g+d+a2[s]>>>0 +q=$.co[9] +a=((m&q)<<9|B.d.b2(m,23))>>>0 +a0=((i&$.co[19])<<19|B.d.b2(i,13))>>>0 +a1=(b^((b&q)<<9|b>>>23)^((b&$.co[17])<<17|b>>>15))>>>0}for(s=16;s<64;++s,g=h,h=a0,i=j,j=a1,k=l,l=a,m=n,n=c){q=((n&$.co[12])<<12|B.d.b2(n,20))>>>0 +f=s&31 +e=f&31 +p=q+j+((($.co[e]&2055708042)<>>0)>>>0 +d=((p&$.co[7])<<7|p>>>25)>>>0 +p=a2[s] +c=((n&m|n&l|m&l)>>>0)+k+((d^q)>>>0)+((p^a2[s+4])>>>0)>>>0 +b=((j&i|~j&h)>>>0)+g+d+p>>>0 +p=$.co[9] +a=((m&p)<<9|B.d.b2(m,23))>>>0 +a0=((i&$.co[19])<<19|B.d.b2(i,13))>>>0 +a1=(b^((b&p)<<9|b>>>23)^((b&$.co[17])<<17|b>>>15))>>>0}r[0]=(r[0]^n)>>>0 +r[1]=(r[1]^m)>>>0 +r[2]=(r[2]^l)>>>0 +r[3]=(r[3]^k)>>>0 +r[4]=(r[4]^j)>>>0 +r[5]=(r[5]^i)>>>0 +r[6]=(r[6]^h)>>>0 +r[7]=(r[7]^g)>>>0}, +gma(a){return 64}, +gks(){return"SM3"}, +gjz(){return 32}} +A.bCX.prototype={ +$0(){var s=t.S,r=A.aK(68,0,!1,s),q=A.e(0,null),p=new Uint8Array(4) +s=new A.UD(r,q,p,B.aF,8,A.aK(8,0,!1,s),A.aK(16,0,!1,s)) +s.b6(0) +return s}, +$S:1085} +A.VU.prototype={ +b6(a){var s,r=this +r.a.df(0,19088743,2309737967) +r.b.df(0,4275878552,1985229328) +r.c.df(0,4036404660,3283280263) +r.w=0 +s=r.r +s.fb(0,0,s.a.length,0) +r.f=0 +B.p.fb(r.e,0,8,0) +r.d.ci(0,0)}, +mc(a,b){var s=this +s.b1c() +s.a.i5(a,b,B.z) +s.b.i5(a,b+8,B.z) +s.c.i5(a,b+16,B.z) +s.b6(0) +return 24}, +hY(a){var s=this,r=s.e,q=s.f,p=q+1 +s.f=p +r[q]=a +if(p===8){q=s.r.a +q[s.w++].A_(r,0,B.z) +if(s.w===q.length)s.asZ() +s.f=0}s.d.c8(1)}, +asZ(){var s=this,r=s.a,q=A.e(r,null),p=s.b,o=A.e(p,null),n=s.c,m=A.e(n,null),l=s.r,k=l.a +s.xZ(k[0],5) +s.y_(k[1],5) +s.y0(k[2],5) +s.xZ(k[3],5) +s.y_(k[4],5) +s.y0(k[5],5) +s.xZ(k[6],5) +s.y_(k[7],5) +s.ao9() +s.y0(k[0],7) +s.xZ(k[1],7) +s.y_(k[2],7) +s.y0(k[3],7) +s.xZ(k[4],7) +s.y_(k[5],7) +s.y0(k[6],7) +s.xZ(k[7],7) +s.ao9() +s.y_(k[0],9) +s.y0(k[1],9) +s.xZ(k[2],9) +s.y_(k[3],9) +s.y0(k[4],9) +s.xZ(k[5],9) +s.y_(k[6],9) +s.y0(k[7],9) +r.e0(q) +p.e1(0,o) +n.c8(m) +s.w=0 +l.fb(0,0,k.length,0)}, +b1c(){var s=this,r=A.e(s.d,null) +r.xm(3) +s.hY(1) +for(;s.f!==0;)s.hY(0) +s.r.a[7].ci(0,r) +s.asZ()}, +ao9(){var s=A.e(0,null),r=this.r.a,q=r[0] +s.ci(0,r[7]) +s.e0($.cY6()) +q.e1(0,s) +r[1].e0(r[0]) +r[2].c8(r[1]) +q=r[3] +s.ci(0,r[1]) +s.O_() +s.xm(19) +s.e0(r[2]) +q.e1(0,s) +r[4].e0(r[3]) +r[5].c8(r[4]) +q=r[6] +s.ci(0,r[4]) +s.O_() +s.xn(23) +s.e0(r[5]) +q.e1(0,s) +r[7].e0(r[6]) +r[0].c8(r[7]) +q=r[1] +s.ci(0,r[7]) +s.O_() +s.xm(19) +s.e0(r[0]) +q.e1(0,s) +r[2].e0(r[1]) +r[3].c8(r[2]) +q=r[4] +s.ci(0,r[2]) +s.O_() +s.xn(23) +s.e0(r[3]) +q.e1(0,s) +r[5].e0(r[4]) +r[6].c8(r[5]) +q=r[7] +s.ci(0,r[6]) +s.e0($.cY7()) +q.e1(0,s)}, +xZ(a,b){var s,r,q,p,o=A.e(0,null),n=new Uint8Array(8),m=this.c +m.e0(a) +m.i5(n,0,B.z) +m=$.cuG() +o.ci(0,m[n[0]]) +s=$.cuH() +o.e0(s[n[2]]) +r=$.cuI() +o.e0(r[n[4]]) +q=$.cuJ() +o.e0(q[n[6]]) +this.a.e1(0,o) +p=this.b +o.ci(0,q[n[1]]) +o.e0(r[n[3]]) +o.e0(s[n[5]]) +o.e0(m[n[7]]) +p.c8(o) +p.ac7(0,b)}, +y_(a,b){var s,r,q,p,o=A.e(0,null),n=new Uint8Array(8),m=this.a +m.e0(a) +m.i5(n,0,B.z) +m=$.cuG() +o.ci(0,m[n[0]]) +s=$.cuH() +o.e0(s[n[2]]) +r=$.cuI() +o.e0(r[n[4]]) +q=$.cuJ() +o.e0(q[n[6]]) +this.b.e1(0,o) +p=this.c +o.ci(0,q[n[1]]) +o.e0(r[n[3]]) +o.e0(s[n[5]]) +o.e0(m[n[7]]) +p.c8(o) +p.ac7(0,b)}, +y0(a,b){var s,r,q,p,o=A.e(0,null),n=new Uint8Array(8),m=this.b +m.e0(a) +m.i5(n,0,B.z) +m=$.cuG() +o.ci(0,m[n[0]]) +s=$.cuH() +o.e0(s[n[2]]) +r=$.cuI() +o.e0(r[n[4]]) +q=$.cuJ() +o.e0(q[n[6]]) +this.c.e1(0,o) +p=this.a +o.ci(0,q[n[1]]) +o.e0(r[n[3]]) +o.e0(s[n[5]]) +o.e0(m[n[7]]) +p.c8(o) +p.ac7(0,b)}, +gma(a){return 64}, +gks(){return"Tiger"}, +gjz(){return 24}} +A.bLD.prototype={ +$0(){var s=null,r=A.e(0,s),q=A.e(0,s),p=A.e(0,s),o=A.e(0,s) +r=new A.VU(r,q,p,o,new Uint8Array(8),A.ni(8)) +r.b6(0) +return r}, +$S:1086} +A.Ws.prototype={ +b6(a){var s,r=this +r.b=0 +B.p.fb(r.a,0,64,0) +s=r.c +s.fb(0,0,s.a.length,0) +s=r.d +s.fb(0,0,s.a.length,0) +s=r.e +s.fb(0,0,s.a.length,0) +s=r.f +s.fb(0,0,s.a.length,0) +s=r.r +s.fb(0,0,s.a.length,0) +s=r.w +s.fb(0,0,s.a.length,0)}, +Dg(a,b,c,d){var s,r,q,p,o=this +for(s=o.a,r=0;r32)r.Dg(0,$.cD0(),0,64-o) +else r.Dg(0,$.cD0(),0,32-o) +B.p.cV(p,32,32+q.length,q) +r.a5c(p,0) +for(p=r.d.a,s=0;s<8;++s)p[s].i5(a,b+s*8,B.aF) +r.b6(0) +return 64}, +a5c(a,b){var s,r,q,p,o=this +for(s=o.w.a,r=o.r.a,q=o.a,p=0;p>>0 +i=l.b +i===$&&A.b() +k=k.b +k===$&&A.b() +l.b=(i^k)>>>0}for(l=c.f,k=l.a,h=1;h<=10;++h){for(m=0;m<8;++m){k[m].ci(0,0) +j=k[m] +i=$.cDg() +g=r[m-0&7].a +g===$&&A.b() +g=i.a[g>>>24&255] +i=j.a +i===$&&A.b() +f=g.a +f===$&&A.b() +f=(i^f)>>>0 +j.a=f +i=j.b +i===$&&A.b() +g=g.b +g===$&&A.b() +g=(i^g)>>>0 +j.b=g +i=$.cDh() +e=r[m-1&7].a +e===$&&A.b() +e=i.a[e>>>16&255] +i=e.a +i===$&&A.b() +i=(f^i)>>>0 +j.a=i +e=e.b +e===$&&A.b() +e=(g^e)>>>0 +j.b=e +g=$.cDi() +f=r[m-2&7].a +f===$&&A.b() +f=g.a[f>>>8&255] +g=f.a +g===$&&A.b() +g=(i^g)>>>0 +j.a=g +f=f.b +f===$&&A.b() +f=(e^f)>>>0 +j.b=f +e=$.cDj() +i=r[m-3&7].a +i===$&&A.b() +i=e.a[i&255] +e=i.a +e===$&&A.b() +e=(g^e)>>>0 +j.a=e +i=i.b +i===$&&A.b() +i=(f^i)>>>0 +j.b=i +f=$.cDk() +g=r[m-4&7].b +g===$&&A.b() +g=f.a[g>>>24&255] +f=g.a +f===$&&A.b() +f=(e^f)>>>0 +j.a=f +g=g.b +g===$&&A.b() +g=(i^g)>>>0 +j.b=g +i=$.cDl() +e=r[m-5&7].b +e===$&&A.b() +e=i.a[e>>>16&255] +i=e.a +i===$&&A.b() +i=(f^i)>>>0 +j.a=i +e=e.b +e===$&&A.b() +e=(g^e)>>>0 +j.b=e +g=$.cDm() +f=r[m-6&7].b +f===$&&A.b() +f=g.a[f>>>8&255] +g=f.a +g===$&&A.b() +g=(i^g)>>>0 +j.a=g +f=f.b +f===$&&A.b() +f=(e^f)>>>0 +j.b=f +e=$.cDn() +i=r[m-7&7].b +i===$&&A.b() +i=e.a[i&255] +e=i.a +e===$&&A.b() +j.a=(g^e)>>>0 +i=i.b +i===$&&A.b() +j.b=(f^i)>>>0}s.cV(0,0,r.length,l) +j=r[0] +i=$.d_y().a[h] +g=j.a +g===$&&A.b() +f=i.a +f===$&&A.b() +j.a=(g^f)>>>0 +f=j.b +f===$&&A.b() +i=i.b +i===$&&A.b() +j.b=(f^i)>>>0 +for(m=0;m<8;++m){k[m].ci(0,r[m]) +j=k[m] +i=$.cDg() +g=o[m-0&7].a +g===$&&A.b() +g=i.a[g>>>24&255] +i=j.a +i===$&&A.b() +f=g.a +f===$&&A.b() +f=(i^f)>>>0 +j.a=f +i=j.b +i===$&&A.b() +g=g.b +g===$&&A.b() +g=(i^g)>>>0 +j.b=g +i=$.cDh() +e=o[m-1&7].a +e===$&&A.b() +e=i.a[e>>>16&255] +i=e.a +i===$&&A.b() +i=(f^i)>>>0 +j.a=i +e=e.b +e===$&&A.b() +e=(g^e)>>>0 +j.b=e +g=$.cDi() +f=o[m-2&7].a +f===$&&A.b() +f=g.a[f>>>8&255] +g=f.a +g===$&&A.b() +g=(i^g)>>>0 +j.a=g +f=f.b +f===$&&A.b() +f=(e^f)>>>0 +j.b=f +e=$.cDj() +i=o[m-3&7].a +i===$&&A.b() +i=e.a[i&255] +e=i.a +e===$&&A.b() +e=(g^e)>>>0 +j.a=e +i=i.b +i===$&&A.b() +i=(f^i)>>>0 +j.b=i +f=$.cDk() +g=o[m-4&7].b +g===$&&A.b() +g=f.a[g>>>24&255] +f=g.a +f===$&&A.b() +f=(e^f)>>>0 +j.a=f +g=g.b +g===$&&A.b() +g=(i^g)>>>0 +j.b=g +i=$.cDl() +e=o[m-5&7].b +e===$&&A.b() +e=i.a[e>>>16&255] +i=e.a +i===$&&A.b() +i=(f^i)>>>0 +j.a=i +e=e.b +e===$&&A.b() +e=(g^e)>>>0 +j.b=e +g=$.cDm() +f=o[m-6&7].b +f===$&&A.b() +f=g.a[f>>>8&255] +g=f.a +g===$&&A.b() +g=(i^g)>>>0 +j.a=g +f=f.b +f===$&&A.b() +f=(e^f)>>>0 +j.b=f +e=$.cDn() +i=o[m-7&7].b +i===$&&A.b() +i=e.a[i&255] +e=i.a +e===$&&A.b() +j.a=(g^e)>>>0 +i=i.b +i===$&&A.b() +j.b=(f^i)>>>0}p.cV(0,0,o.length,l)}d=A.e(0,null) +for(m=0;m<8;++m){s=q[m] +d.ci(0,o[m]) +r=n[m] +p=d.a +p===$&&A.b() +l=r.a +l===$&&A.b() +l=(p^l)>>>0 +d.a=l +p=d.b +p===$&&A.b() +r=r.b +r===$&&A.b() +r=(p^r)>>>0 +d.b=r +p=s.a +p===$&&A.b() +s.a=(p^l)>>>0 +l=s.b +l===$&&A.b() +s.b=(l^r)>>>0}}, +b7t(a){var s,r,q,p,o=this.c.a,n=o.length-1 +o[n].c8(a) +while(!0){s=o[n] +r=$.cYE() +q=s.a +q===$&&A.b() +p=r.a +p===$&&A.b() +if(q===p){s=s.b +s===$&&A.b() +r=r.b +r===$&&A.b() +r=s===r +s=r}else s=!1 +if(!s)break;--n +o[n].c8(1)}}, +aZ8(){var s,r=this.c.a,q=r.length,p=new Uint8Array(q*8) +for(s=0;s=0||!n.X(0,n).W(0,o).Yd(0,q,i).l(0,r)) +m=j.b9b(i,n,g,p) +l=m[0] +k=m[1] +if(k.X(0,k).M(0,i).l(0,o)){h=k.hM(0,$.jC().hN(0,0)).bn(0,$.ic()) +return A.o5(i,(h!==0?k.S(0,i):k).kZ(0,1))}f=l.bn(0,$.jC())}while(f===0||l.l(0,r)) +return null}, +b9b(a,b,c,d){var s,r,q,p,o,n,m,l=d.goh(0),k=A.dmJ(d),j=$.jC(),i=$.b2E() +for(s=l-1,r=k+1,q=j,p=q,o=b,n=p;s>=r;--s){p=p.X(0,q).M(0,a) +m=d.hM(0,j.hN(0,s)).bn(0,$.ic()) +if(m!==0){q=p.X(0,c).M(0,a) +n=n.X(0,o).M(0,a) +i=o.X(0,i).W(0,b.X(0,p)).M(0,a) +o=o.X(0,o).W(0,q.hN(0,1)).M(0,a)}else{n=n.X(0,i).W(0,p).M(0,a) +o=o.X(0,i).W(0,b.X(0,p)).M(0,a) +i=i.X(0,i).W(0,p.hN(0,1)).M(0,a) +q=p}}p=p.X(0,q).M(0,a) +q=p.X(0,c).M(0,a) +j=n.X(0,i).W(0,p).M(0,a) +i=o.X(0,i).W(0,b.X(0,p)).M(0,a) +p=p.X(0,q).M(0,a) +for(s=1;s<=k;++s){j=j.X(0,i).M(0,a) +i=i.X(0,i).W(0,p.hN(0,1)).M(0,a) +p=p.X(0,p).M(0,a)}return A.a([j,i],t.Mu)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.a2i){s=this.a.bn(0,b.a) +if(s===0)s=this.b.bn(0,b.b)===0 +else s=!1 +return s}return!1}, +gv(a){return this.a.gv(0)^this.b.gv(0)}} +A.q6.prototype={ +S(a,b){var s,r,q,p,o,n=this,m=n.b +if(m==null&&n.c==null)return b +s=b.b +if(s==null&&b.c==null)return n +if(J.q(m,s)){if(J.q(n.c,b.c))return n.adN() +return n.a.d}r=b.c +r.toString +q=n.c +q.toString +r=r.W(0,q) +s.toString +m.toString +p=r.iI(0,s.W(0,m)) +o=p.Qz().W(0,m).W(0,s) +return A.a2k(n.a,o,p.X(0,m.W(0,o)).W(0,q),n.d)}, +adN(){var s,r,q,p,o,n,m,l,k=this,j=k.b +if(j==null&&k.c==null)return k +s=k.c +r=s.b.bn(0,$.ic()) +if(r===0)return k.a.d +r=k.a +q=r.c +p=A.o5(q,$.b2E()) +o=A.o5(q,A.te(3)) +q=j.Qz().X(0,o) +n=r.a +n.toString +m=q.S(0,n).iI(0,s.X(0,p)) +l=m.Qz().W(0,j.X(0,p)) +return A.a2k(r,l,m.X(0,j.W(0,l)).W(0,s),k.d)}, +W(a,b){var s,r,q=b.b +if(q==null&&b.c==null)return this +s=b.c +r=s.a +return this.S(0,A.a2k(b.a,q,A.o5(r,s.b.o1(0).M(0,r)),b.d))}} +A.a2g.prototype={ +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.a2g){s=this.c.bn(0,b.c) +return s===0&&J.q(this.a,b.a)&&J.q(this.b,b.b)}return!1}, +gv(a){return J.ab(this.a)^J.ab(this.b)^this.c.gv(0)}} +A.ake.prototype={$icyy:1} +A.cqX.prototype={ +$1(a){return a==null?t.Wc.a(a):a}, +$S:1129} +A.a_e.prototype={} +A.b47.prototype={ +$0(){return new A.a_e(A.e(0,null))}, +$S:1130} +A.HR.prototype={} +A.baq.prototype={ +$2(a,b){var s=b.ex(1) +s.toString +return new A.bap($.fQ().h7(0,s,t.E2))}, +$S:1131} +A.bap.prototype={ +$0(){return new A.HR()}, +$S:1132} +A.a2h.prototype={} +A.bf4.prototype={ +$0(){return new A.a2h()}, +$S:1133} +A.Jd.prototype={} +A.bkF.prototype={ +$2(a,b){var s=b.ex(1) +s.toString +return new A.bkE($.fQ().h7(0,s,t.E2))}, +$S:1134} +A.bkE.prototype={ +$0(){var s,r,q=this.a,p=new A.Jd() +A.a5(q,null) +s=A.d7D(q.gks()) +r=new A.yX(q,s) +q=q.gjz() +r.b=q +new Uint8Array(s) +new Uint8Array(s+q) +p.b=r +return p}, +$S:1135} +A.bkD.prototype={ +$1(a){return a.a.toLowerCase()===this.a.toLowerCase()}, +$S:1136} +A.KJ.prototype={} +A.bvS.prototype={ +$2(a,b){return new A.bvR(b)}, +$S:1137} +A.bvR.prototype={ +$0(){var s,r=this.a.ex(1) +r.toString +r=$.fQ().h7(0,r,t.K4) +s=r.gzz() +new Uint8Array(s) +return new A.KJ(r)}, +$S:1138} +A.KK.prototype={} +A.bvU.prototype={ +$2(a,b){return new A.bvT(b)}, +$S:1139} +A.bvT.prototype={ +$0(){var s=this.a.ex(1) +s.toString +s=$.fQ().h7(0,s,t.E2) +s.gjz() +s.gma(s) +return new A.KK(s)}, +$S:1140} +A.KL.prototype={} +A.bvY.prototype={ +$2(a,b){return new A.bvX(b)}, +$S:1141} +A.bvX.prototype={ +$0(){var s=this.a.ex(1) +s.toString +$.fQ().h7(0,s,t.E2) +return new A.KL()}, +$S:1142} +A.a91.prototype={} +A.bE5.prototype={ +$0(){var s=t.S +return new A.a91(A.aK(16,0,!1,s),A.aK(16,0,!1,s))}, +$S:1143} +A.a2j.prototype={} +A.bf9.prototype={ +$0(){return new A.a2j()}, +$S:1144} +A.a7v.prototype={} +A.bzo.prototype={ +$0(){return new A.a7v()}, +$S:1145} +A.ya.prototype={ +gzz(){return this.f}, +hY(a){var s,r=this,q=r.c +q===$&&A.b() +s=r.b +s===$&&A.b() +if(q===s.length){q=r.a +q===$&&A.b() +r.d.fN(s,0,q,0) +q=r.c=0}s=r.b +r.c=q+1 +s[q]=a}, +Dg(a,b,c,d){var s,r,q,p,o,n=this +if(d<0)throw A.d(A.aM("Can't have a negative input length!",null)) +s=n.d +r=s.a.gb3() +q=n.c +q===$&&A.b() +p=r-q +if(d>p){o=n.b +o===$&&A.b() +B.p.cV(o,q,q+p,B.p.hs(b,c)) +q=n.b +o=n.a +o===$&&A.b() +s.fN(q,0,o,0) +n.c=0 +d-=p +c+=p +for(;d>r;){q=n.a +s.e===$&&A.b() +s.aje(b,c,q,0) +d-=r +c+=r}}s=n.b +s===$&&A.b() +q=n.c +B.p.cV(s,q,q+d,B.p.hs(b,c)) +n.c=n.c+d}, +b6(a){var s,r,q=this,p=q.b +p===$&&A.b() +s=p.length +r=0 +for(;r=3&&q.ex(3)!=null&&q.ex(3).length!==0){q=q.ex(3) +q.toString +r=s.h7(0,q,t.iF)}else r=null +q=B.d.aD(p.gb3()*8,2) +s=new A.ya(A.aon(p),r,B.d.aD(q,8)) +if(B.d.M(q,8)!==0)A.C(A.aM("MAC size must be multiple of 8",null)) +q=p.gb3() +s.a=new Uint8Array(q) +q=p.gb3() +s.b=new Uint8Array(q) +s.c=0 +return s}, +$S:1147} +A.yb.prototype={ +gzz(){return this.r}} +A.b7C.prototype={ +$2(a,b){return new A.b7B(b)}, +$S:1148} +A.b7B.prototype={ +$0(){var s,r,q,p=this.a.ex(1) +p.toString +p=$.fQ().h7(0,p,t.mw) +s=p.gb3()*8 +r=B.d.aD(s,8) +q=A.aon(p) +if(B.d.M(s,8)!==0)A.C(A.aM("MAC size must be multiple of 8",null)) +if(s>q.a.gb3()*8)A.C(A.aM("MAC size must be less or equal to "+q.gb3()*8,null)) +A.cFw(p.gb3()) +s=p.gb3() +new Uint8Array(s) +s=p.gb3() +new Uint8Array(s) +p=p.gb3() +new Uint8Array(p) +return new A.yb(q,r)}, +$S:1149} +A.yX.prototype={ +gzz(){var s=this.b +s===$&&A.b() +return s}} +A.bkH.prototype={ +$2(a,b){return new A.bkG(b.ex(1))}, +$S:1150} +A.bkG.prototype={ +$0(){var s,r,q=this.a +q.toString +q=$.fQ().h7(0,q,t.E2) +s=new A.yX(q,$) +r=s.c=q.gma(q) +q=q.gjz() +s.b=q +new Uint8Array(r) +new Uint8Array(r+q) +return s}, +$S:1151} +A.EJ.prototype={ +gzz(){return 16}} +A.by3.prototype={ +$2(a,b){return new A.by2(b)}, +$S:1152} +A.by2.prototype={ +$0(){var s,r,q=this.a.ex(1) +q.toString +q=$.fQ().h7(0,q,t.mw) +s=new Uint8Array(1) +r=new Uint8Array(16) +$.cCI().avz() +return new A.EJ(q,s,r)}, +$S:1153} +A.Eu.prototype={ +gb3(){return this.b.gb3()}, +b6(a){this.c=null +this.b.b6(0)}, +fU(a,b){this.c=!0 +this.b.fU(!0,b.a) +this.a.pp(b.b)}, +zP(a){var s,r,q,p,o,n=a.length,m=this.b,l=B.d.hf(n+m.gb3()-1,m.gb3()) +this.c.toString +s=B.d.hf(n+m.gb3(),m.gb3()) +n=m.gb3() +r=new Uint8Array(s*n) +for(n=l-1,q=0;q256||B.d.M(r,8)!==0)throw A.d(A.aM("Invalid value for MAC size: "+r,null)) +n.c=r/8|0 +q=b.a}else if(b instanceof A.ua){s=b.a +n.f=new Uint8Array(0) +n.c=16 +q=b.b}else throw A.d(A.aM("invalid parameters passed to AEADBlockCipher",null)) +p=n.a.gb3() +n.r=new Uint8Array(p) +if(s.length===0)throw A.d(A.aM("IV must be at least 1 byte",null)) +n.e=s +o=q.a +o===$&&A.b() +n.d=o +o=n.gzz() +n.x=new Uint8Array(o) +n.b6(0)}, +zP(a){var s=a.length,r=this.aeU(s),q=new Uint8Array(r),p=this.pD(a,0,s,q,0) +s=this.mc(q,p) +return A.dF(q.buffer,0,p+s)}, +pD(a,b,c,d,e){var s +if(c===0)return 0 +this.gX1() +s=this.bey(a,b,c,d,e) +return s}, +bey(a,b,c,d,e){var s,r,q,p,o,n=this +if(c===0)return 0 +if(n.w!==0){s=n.a +r=s.gb3() +q=n.w +q.toString +p=q+c +if(r0){r=n.r +r.toString +n.fN(r,0,d,e) +n.w=0 +o=s.gb3()}else o=0}else o=0 +for(s=n.a;c>s.gb3();){n.fN(a,b,d,e+o) +b+=s.gb3() +c-=s.gb3() +o+=s.gb3()}if(c>0){s=n.r +s.toString +B.p.cV(s,0,c,A.fB(a,b,null,A.bk(a).h("a2.E"))) +n.w=c}return o}, +b6(a){var s,r=this +r.y=r.w=0 +s=r.d +if(s==null)return +r.aDk(new A.qg(s)) +s=r.f +s===$&&A.b() +r.aDr(s,0,s.length)}, +aeU(a){var s,r +this.gX1() +s=this.gzz() +r=this.a +return B.d.hf(a+s+r.gb3()-1,r.gb3())*r.gb3()}, +$ijd:1} +A.b5Q.prototype={} +A.anN.prototype={$ia_i:1} +A.anO.prototype={ +zP(a){var s=this.gb3(),r=new Uint8Array(s) +return B.p.cK(r,0,this.fN(a,0,r,0))}, +$ijd:1} +A.anT.prototype={$ihV:1} +A.b5S.prototype={} +A.anV.prototype={$iSy:1} +A.anX.prototype={$iaAA:1} +A.b6_.prototype={ +zP(a){var s=a.length,r=new Uint8Array(s) +this.pD(a,0,s,r,0) +return r}} +A.a4H.prototype={ +gma(a){var s=this.c +s===$&&A.b() +return B.d.aD(s,8)}, +gjz(){var s=this.d +s===$&&A.b() +return B.d.aD(s,8)}, +b6(a){var s=this.d +s===$&&A.b() +this.AU(1600-(s<<1>>>0))}, +a70(a,b){var s,r,q=this +if(b<1||b>7)throw A.d(A.a0('"bits" must be in the range 1 to 7')) +s=q.e +s===$&&A.b() +if(B.d.M(s,8)!==0)throw A.d(A.a0("attempt to absorb with odd length queue")) +r=q.f +r===$&&A.b() +if(r)throw A.d(A.a0("attempt to absorb while squeezing")) +r=B.d.TO(1,b) +q.b[B.d.b2(s,3)]=a&r-1 +q.e=s+b}, +a71(a,b,c){var s,r,q,p,o,n,m=this,l=m.e +l===$&&A.b() +if(B.d.M(l,8)!==0)throw A.d(A.a0("attempt to absorb with odd length queue")) +s=m.f +s===$&&A.b() +if(s)throw A.d(A.a0("attempt to absorb while squeezing")) +r=B.d.b2(l,3) +l=m.c +l===$&&A.b() +q=B.d.b2(l,3) +p=q-r +if(c>>0) +return}if(r>0){l=m.b +B.p.cV(l,r,r+p,B.p.hs(a,b)) +m.a46(l,0) +o=p}else o=0 +for(;n=c-o,n>=q;){m.a46(a,b+o) +o+=q}B.p.dS(m.b,0,n,a,b+o) +m.e=n<<3>>>0}, +AU(a){var s=this +if(a<=0||a>=1600||B.d.M(a,64)!==0)throw A.d(A.a0("invalid rate value")) +s.c=a +B.p.fb(s.a,0,200,0) +B.p.fb(s.b,0,192,0) +s.e=0 +s.f=!1 +s.d=B.d.aD(1600-a,2)}, +a46(a,b){var s,r,q=this.c +q===$&&A.b() +s=B.d.b2(q,3) +for(q=this.a,r=0;r>>0 +l=n.e=l+1 +s=n.c +s===$&&A.b() +if(l===s)n.a46(m,0) +else{r=l&63 +for(l=B.d.b2(l,6)*8,s=n.a,q=0;q0)for(p=0;p!==8;++p){o=l+p +if(r>=8)s[o]=s[o]^m[o] +else s[o]=s[o]^m[o]&B.d.hN(1,r)-1 +r-=8 +if(r<0)r=0}}m=n.a +l=B.d.b2(n.c-1,3) +m[l]=m[l]^128 +n.e=0 +n.f=!0}, +b1s(a,b){var s,r,q,p,o,n,m,l=A.e(0,null) +for(s=a.a,r=0;r<25;++r){q=r*8 +s[r].ci(0,0) +for(p=0;p<8;++p){l.ci(0,b[q+p]) +l.xm(8*p) +o=s[r] +n=o.a +n===$&&A.b() +m=l.a +m===$&&A.b() +o.a=(n|m)>>>0 +m=o.b +m===$&&A.b() +n=l.b +n===$&&A.b() +o.b=(m|n)>>>0}}}, +b1u(a,b){var s,r,q,p,o,n=A.e(0,null) +for(s=b.a,r=0;r<25;++r){q=r*8 +for(p=0;p<8;++p){n.ci(0,s[r]) +n.xn(8*p) +o=n.b +o===$&&A.b() +a[q+p]=o}}}, +ao8(){var s=this,r=A.ni(25),q=s.a +s.b1s(r,q) +s.b8k(r) +s.b1u(q,r)}, +b8k(a){var s,r,q,p,o,n,m=this +for(s=a.a,r=0;r<24;++r){m.bGK(a) +m.bGs(a) +m.bE_(a) +m.bq4(a) +q=s[0] +p=$.cWx().a[r] +o=q.a +o===$&&A.b() +n=p.a +n===$&&A.b() +q.a=(o^n)>>>0 +n=q.b +n===$&&A.b() +p=p.b +p===$&&A.b() +q.b=(n^p)>>>0}}, +bGK(a){var s,r,q,p,o,n,m,l,k,j=A.ni(5),i=A.e(0,null),h=A.e(0,null) +for(s=j.a,r=a.a,q=0;q<5;++q){s[q].ci(0,0) +for(p=0;p<5;++p){o=s[q] +n=r[q+5*p] +m=o.a +m===$&&A.b() +l=n.a +l===$&&A.b() +o.a=(m^l)>>>0 +l=o.b +l===$&&A.b() +n=n.b +n===$&&A.b() +o.b=(l^n)>>>0}}for(q=0;q<5;q=k){k=q+1 +o=k%5 +i.ci(0,s[o]) +i.xm(1) +h.ci(0,s[o]) +h.xn(63) +o=i.a +o===$&&A.b() +n=h.a +n===$&&A.b() +n=(o^n)>>>0 +i.a=n +o=i.b +o===$&&A.b() +m=h.b +m===$&&A.b() +m=(o^m)>>>0 +i.b=m +o=s[(q+4)%5] +l=o.a +l===$&&A.b() +i.a=(n^l)>>>0 +o=o.b +o===$&&A.b() +i.b=(m^o)>>>0 +for(p=0;p<5;++p){o=r[q+5*p] +n=o.a +n===$&&A.b() +o.a=(n^i.a)>>>0 +n=o.b +n===$&&A.b() +o.b=(n^i.b)>>>0}}}, +bGs(a){var s,r,q,p,o,n,m,l=A.e(0,null) +for(s=a.a,r=0;r<5;++r)for(q=0;q<5;++q){p=r+5*q +if($.cxJ[p]!==0){l.ci(0,s[p]) +l.xn(64-$.cxJ[p]) +s[p].xm($.cxJ[p]) +o=s[p] +n=o.a +n===$&&A.b() +m=l.a +m===$&&A.b() +o.a=(n^m)>>>0 +m=o.b +m===$&&A.b() +n=l.b +n===$&&A.b() +o.b=(m^n)>>>0}}}, +bE_(a){var s,r,q,p,o=A.ni(25),n=o.a +o.cV(0,0,n.length,a) +for(s=a.a,r=0;r<5;++r)for(q=2*r,p=0;p<5;++p)s[p+5*B.d.M(q+3*p,5)].ci(0,n[r+5*p])}, +bq4(a){var s,r,q,p,o,n,m,l,k,j,i +for(s=a.a,r=A.ni(5).a,q=0;q<5;++q){for(p=5*q,o=0;o<5;o=n){n=o+1 +r[o].ci(0,s[n%5+p]) +m=r[o] +l=m.a +l===$&&A.b() +l=~l>>>0 +m.a=l +k=m.b +k===$&&A.b() +k=~k>>>0 +m.b=k +j=s[(o+2)%5+p] +i=j.a +i===$&&A.b() +i=(l&i)>>>0 +m.a=i +j=j.b +j===$&&A.b() +j=(k&j)>>>0 +m.b=j +k=s[o+p] +l=k.a +l===$&&A.b() +m.a=(i^l)>>>0 +k=k.b +k===$&&A.b() +m.b=(j^k)>>>0}for(o=0;o<5;++o)s[o+p].ci(0,r[o])}}, +mc(a,b){throw A.d(A.bT("Subclasses must implement this."))}} +A.a5c.prototype={ +gma(a){return 128}, +b6(a){var s,r=this +r.as.ci(0,0) +r.at.ci(0,0) +r.y=0 +B.p.fb(r.x,0,8,0) +r.Q=0 +s=r.z +s.fb(0,0,s.a.length,0)}, +hY(a){var s=this,r=s.x,q=s.y,p=q+1 +s.y=p +r[q]=a +if(p===8){s.z.a[s.Q++].A_(r,0,B.aF) +if(s.Q===16)s.a5b() +s.y=0}s.as.c8(1)}, +WR(a){var s,r,q=this +q.aih() +s=A.e(q.as,null) +s.xm(3) +q.hY(128) +for(;q.y!==0;)q.hY(0) +if(q.Q>14)q.a5b() +r=q.z.a +r[14].ci(0,q.at) +r[15].ci(0,s) +q.a5b()}, +aih(){var s,r=this.as,q=$.cWH() +if(r.pN(0,q)){s=A.e(r,null) +s.xn(61) +this.at.c8(s) +r.UX(q)}}, +a5b(){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=this,b0=null +a9.aih() +for(s=a9.z,r=s.a,q=16;q<80;++q){p=r[q] +o=r[q-2] +n=new A.fY() +n.df(0,o,b0) +n.uV(45) +m=new A.fY() +m.df(0,o,b0) +m.uV(3) +l=new A.fY() +l.df(0,o,b0) +l.xn(6) +o=n.a +o===$&&A.b() +k=m.a +k===$&&A.b() +k=(o^k)>>>0 +n.a=k +o=n.b +o===$&&A.b() +j=m.b +j===$&&A.b() +j=(o^j)>>>0 +n.b=j +o=l.a +o===$&&A.b() +n.a=(k^o)>>>0 +o=l.b +o===$&&A.b() +n.b=(j^o)>>>0 +n.c8(r[q-7]) +o=r[q-15] +i=new A.fY() +i.df(0,o,b0) +i.uV(63) +m=new A.fY() +m.df(0,o,b0) +m.uV(56) +l=new A.fY() +l.df(0,o,b0) +l.xn(7) +o=i.a +o===$&&A.b() +j=m.a +j===$&&A.b() +j=(o^j)>>>0 +i.a=j +o=i.b +o===$&&A.b() +k=m.b +k===$&&A.b() +k=(o^k)>>>0 +i.b=k +o=l.a +o===$&&A.b() +i.a=(j^o)>>>0 +o=l.b +o===$&&A.b() +i.b=(k^o)>>>0 +n.c8(i) +n.c8(r[q-16]) +p.ci(0,n)}p=a9.a +h=A.e(p,b0) +o=a9.b +g=A.e(o,b0) +k=a9.c +f=A.e(k,b0) +j=a9.d +e=A.e(j,b0) +d=a9.e +c=A.e(d,b0) +b=a9.f +a=A.e(b,b0) +a0=a9.r +a1=A.e(a0,b0) +a2=a9.w +a3=A.e(a2,b0) +for(q=0,a4=0;a4<10;++a4){a3.c8(a9.y8(c)) +n=new A.fY() +n.df(0,c,b0) +a5=n.a +a5===$&&A.b() +a6=a.a +a6===$&&A.b() +n.a=(a5&a6)>>>0 +a6=n.b +a6===$&&A.b() +a5=a.b +a5===$&&A.b() +n.b=(a6&a5)>>>0 +m=new A.fY() +m.df(0,c,b0) +a5=m.a +a5===$&&A.b() +a5=~a5>>>0 +m.a=a5 +a6=m.b +a6===$&&A.b() +a6=~a6>>>0 +m.b=a6 +a7=a1.a +a7===$&&A.b() +a7=(a5&a7)>>>0 +m.a=a7 +a5=a1.b +a5===$&&A.b() +a5=(a6&a5)>>>0 +m.b=a5 +n.a=(n.a^a7)>>>0 +n.b=(n.b^a5)>>>0 +a3.c8(n) +a5=$.cWG() +a3.c8(a5[q]) +a6=q+1 +a3.c8(r[q]) +e.c8(a3) +a3.c8(a9.y7(h)) +a3.c8(a9.xP(h,g,f)) +a1.c8(a9.y8(e)) +n=new A.fY() +n.df(0,e,b0) +a7=n.a +a7===$&&A.b() +a8=c.a +a8===$&&A.b() +n.a=(a7&a8)>>>0 +a8=n.b +a8===$&&A.b() +a7=c.b +a7===$&&A.b() +n.b=(a8&a7)>>>0 +m=new A.fY() +m.df(0,e,b0) +a7=m.a +a7===$&&A.b() +a7=~a7>>>0 +m.a=a7 +a8=m.b +a8===$&&A.b() +a8=~a8>>>0 +m.b=a8 +a7=(a7&a.a)>>>0 +m.a=a7 +a8=(a8&a.b)>>>0 +m.b=a8 +n.a=(n.a^a7)>>>0 +n.b=(n.b^a8)>>>0 +a1.c8(n) +a1.c8(a5[a6]) +q=a6+1 +a1.c8(r[a6]) +f.c8(a1) +a1.c8(a9.y7(a3)) +a1.c8(a9.xP(a3,h,g)) +a.c8(a9.y8(f)) +n=new A.fY() +n.df(0,f,b0) +a6=n.a +a6===$&&A.b() +a8=e.a +a8===$&&A.b() +n.a=(a6&a8)>>>0 +a8=n.b +a8===$&&A.b() +a6=e.b +a6===$&&A.b() +n.b=(a8&a6)>>>0 +m=new A.fY() +m.df(0,f,b0) +a6=m.a +a6===$&&A.b() +a6=~a6>>>0 +m.a=a6 +a8=m.b +a8===$&&A.b() +a8=~a8>>>0 +m.b=a8 +a6=(a6&c.a)>>>0 +m.a=a6 +a8=(a8&c.b)>>>0 +m.b=a8 +n.a=(n.a^a6)>>>0 +n.b=(n.b^a8)>>>0 +a.c8(n) +a.c8(a5[q]) +a6=q+1 +a.c8(r[q]) +g.c8(a) +a.c8(a9.y7(a1)) +a.c8(a9.xP(a1,a3,h)) +c.c8(a9.y8(g)) +n=new A.fY() +n.df(0,g,b0) +a8=n.a +a8===$&&A.b() +a7=f.a +a7===$&&A.b() +n.a=(a8&a7)>>>0 +a7=n.b +a7===$&&A.b() +a8=f.b +a8===$&&A.b() +n.b=(a7&a8)>>>0 +m=new A.fY() +m.df(0,g,b0) +a8=m.a +a8===$&&A.b() +a8=~a8>>>0 +m.a=a8 +a7=m.b +a7===$&&A.b() +a7=~a7>>>0 +m.b=a7 +a8=(a8&e.a)>>>0 +m.a=a8 +a7=(a7&e.b)>>>0 +m.b=a7 +n.a=(n.a^a8)>>>0 +n.b=(n.b^a7)>>>0 +c.c8(n) +c.c8(a5[a6]) +q=a6+1 +c.c8(r[a6]) +h.c8(c) +c.c8(a9.y7(a)) +c.c8(a9.xP(a,a1,a3)) +e.c8(a9.y8(h)) +n=new A.fY() +n.df(0,h,b0) +a6=n.a +a6===$&&A.b() +a7=g.a +a7===$&&A.b() +n.a=(a6&a7)>>>0 +a7=n.b +a7===$&&A.b() +a6=g.b +a6===$&&A.b() +n.b=(a7&a6)>>>0 +m=new A.fY() +m.df(0,h,b0) +a6=m.a +a6===$&&A.b() +a6=~a6>>>0 +m.a=a6 +a7=m.b +a7===$&&A.b() +a7=~a7>>>0 +m.b=a7 +a6=(a6&f.a)>>>0 +m.a=a6 +a7=(a7&f.b)>>>0 +m.b=a7 +n.a=(n.a^a6)>>>0 +n.b=(n.b^a7)>>>0 +e.c8(n) +e.c8(a5[q]) +a6=q+1 +e.c8(r[q]) +a3.c8(e) +e.c8(a9.y7(c)) +e.c8(a9.xP(c,a,a1)) +f.c8(a9.y8(a3)) +n=new A.fY() +n.df(0,a3,b0) +a7=n.a +a7===$&&A.b() +a8=h.a +a8===$&&A.b() +n.a=(a7&a8)>>>0 +a8=n.b +a8===$&&A.b() +a7=h.b +a7===$&&A.b() +n.b=(a8&a7)>>>0 +m=new A.fY() +m.df(0,a3,b0) +a7=m.a +a7===$&&A.b() +a7=~a7>>>0 +m.a=a7 +a8=m.b +a8===$&&A.b() +a8=~a8>>>0 +m.b=a8 +a7=(a7&g.a)>>>0 +m.a=a7 +a8=(a8&g.b)>>>0 +m.b=a8 +n.a=(n.a^a7)>>>0 +n.b=(n.b^a8)>>>0 +f.c8(n) +f.c8(a5[a6]) +q=a6+1 +f.c8(r[a6]) +a1.c8(f) +f.c8(a9.y7(e)) +f.c8(a9.xP(e,c,a)) +g.c8(a9.y8(a1)) +n=new A.fY() +n.df(0,a1,b0) +a6=n.a +a6===$&&A.b() +a8=a3.a +a8===$&&A.b() +n.a=(a6&a8)>>>0 +a8=n.b +a8===$&&A.b() +a6=a3.b +a6===$&&A.b() +n.b=(a8&a6)>>>0 +m=new A.fY() +m.df(0,a1,b0) +a6=m.a +a6===$&&A.b() +a6=~a6>>>0 +m.a=a6 +a8=m.b +a8===$&&A.b() +a8=~a8>>>0 +m.b=a8 +a6=(a6&h.a)>>>0 +m.a=a6 +a8=(a8&h.b)>>>0 +m.b=a8 +n.a=(n.a^a6)>>>0 +n.b=(n.b^a8)>>>0 +g.c8(n) +g.c8(a5[q]) +a6=q+1 +g.c8(r[q]) +a.c8(g) +g.c8(a9.y7(f)) +g.c8(a9.xP(f,e,c)) +h.c8(a9.y8(a)) +n=new A.fY() +n.df(0,a,b0) +a8=n.a +a8===$&&A.b() +n.a=(a8&a1.a)>>>0 +a8=n.b +a8===$&&A.b() +n.b=(a8&a1.b)>>>0 +m=new A.fY() +m.df(0,a,b0) +a8=m.a +a8===$&&A.b() +a8=~a8>>>0 +m.a=a8 +a7=m.b +a7===$&&A.b() +a7=~a7>>>0 +m.b=a7 +a8=(a8&a3.a)>>>0 +m.a=a8 +a7=(a7&a3.b)>>>0 +m.b=a7 +n.a=(n.a^a8)>>>0 +n.b=(n.b^a7)>>>0 +h.c8(n) +h.c8(a5[a6]) +q=a6+1 +h.c8(r[a6]) +c.c8(h) +h.c8(a9.y7(g)) +h.c8(a9.xP(g,f,e))}p.c8(h) +o.c8(g) +k.c8(f) +j.c8(e) +d.c8(c) +b.c8(a) +a0.c8(a1) +a2.c8(a3) +a9.Q=0 +s.fb(0,0,16,0)}, +xP(a,b,c){var s,r,q=A.e(a,null) +q.UX(b) +s=A.e(a,null) +s.UX(c) +r=A.e(b,null) +r.UX(c) +q.e0(s) +q.e0(r) +return q}, +y7(a){var s,r,q=A.e(a,null) +q.uV(36) +s=A.e(a,null) +s.uV(30) +r=A.e(a,null) +r.uV(25) +q.e0(s) +q.e0(r) +return q}, +y8(a){var s,r,q=A.e(a,null) +q.uV(50) +s=A.e(a,null) +s.uV(46) +r=A.e(a,null) +r.uV(23) +q.e0(s) +q.e0(r) +return q}} +A.axe.prototype={ +b6(a){var s,r=this +r.a.ci(0,0) +r.c=0 +B.p.fb(r.b,0,4,0) +r.w=0 +s=r.r +B.b.fb(s,0,s.length,0) +r.uS()}, +hY(a){var s,r=this,q=r.b,p=r.c +p===$&&A.b() +s=p+1 +r.c=s +q[p]=a&255 +if(s===4){p=r.w +p===$&&A.b() +r.w=p+1 +r.r[p]=A.cr(q,0,r.d) +if(r.w===16)r.a2B() +r.c=0}r.a.c8(1)}, +mc(a,b){var s=this,r=A.e(s.a,null) +r.xm(3) +s.beB() +s.bez(r) +s.a2B() +s.bcL(a,b) +s.b6(0) +return s.gjz()}, +a2B(){this.uM() +this.w=0 +B.b.fb(this.r,0,16,0)}, +beB(){this.hY(128) +while(!0){var s=this.c +s===$&&A.b() +if(!(s!==0))break +this.hY(0)}}, +bez(a){var s,r=this,q=r.w +q===$&&A.b() +if(q>14)r.a2B() +q=r.d +switch(q){case B.z:q=r.r +s=a.b +s===$&&A.b() +q[14]=s +s=a.a +s===$&&A.b() +q[15]=s +break +case B.aF:q=r.r +s=a.a +s===$&&A.b() +q[14]=s +s=a.b +s===$&&A.b() +q[15]=s +break +default:throw A.d(A.a0("Invalid endianness: "+q.k(0)))}}, +bcL(a,b){var s,r,q,p,o,n,m,l,k +for(s=this.e,r=a.length,q=this.f,p=this.d,o=0;o0){for(q=0;q25)q.V(0) +s=r.k(0) +p.toString +q.n(0,s+"."+b,p)}return c.a(p.$0())}, +aZl(a,b){var s,r,q,p=this +if(!p.d){p.av(0,$.cWQ()) +p.av(0,$.cWU()) +p.av(0,$.cXf()) +p.av(0,$.cUs()) +p.av(0,$.cX9()) +p.av(0,$.cUZ()) +p.av(0,$.cUH()) +p.av(0,$.cUJ()) +p.av(0,$.cUN()) +p.av(0,$.cVd()) +p.av(0,$.cWc()) +p.av(0,$.cWR()) +p.av(0,$.cXL()) +p.av(0,$.cWb()) +p.av(0,$.cUI()) +p.av(0,$.cWo()) +p.av(0,$.cUC()) +p.av(0,$.cWI()) +p.av(0,$.cWJ()) +p.av(0,$.cWK()) +p.av(0,$.cXb()) +p.av(0,$.cXc()) +p.av(0,$.cXd()) +p.av(0,$.cXe()) +p.av(0,$.cXz()) +p.av(0,$.cXE()) +p.av(0,$.cWw()) +p.av(0,$.cXA()) +p.av(0,$.cXB()) +p.av(0,$.cXC()) +p.av(0,$.cXF()) +p.av(0,$.cXI()) +p.av(0,$.cY8()) +p.av(0,$.cYF()) +p.av(0,$.cXK()) +p.av(0,$.cUM()) +p.av(0,$.cXN()) +p.av(0,$.cVe()) +p.av(0,$.cVf()) +p.av(0,$.cVg()) +p.av(0,$.cVh()) +p.av(0,$.cVi()) +p.av(0,$.cVj()) +p.av(0,$.cVk()) +p.av(0,$.cVl()) +p.av(0,$.cVm()) +p.av(0,$.cVn()) +p.av(0,$.cVo()) +p.av(0,$.cVp()) +p.av(0,$.cVq()) +p.av(0,$.cVr()) +p.av(0,$.cVs()) +p.av(0,$.cVt()) +p.av(0,$.cVu()) +p.av(0,$.cVv()) +p.av(0,$.cVw()) +p.av(0,$.cVx()) +p.av(0,$.cVy()) +p.av(0,$.cVz()) +p.av(0,$.cVA()) +p.av(0,$.cVB()) +p.av(0,$.cVC()) +p.av(0,$.cVD()) +p.av(0,$.cVE()) +p.av(0,$.cVF()) +p.av(0,$.cVG()) +p.av(0,$.cVH()) +p.av(0,$.cVI()) +p.av(0,$.cVJ()) +p.av(0,$.cVK()) +p.av(0,$.cVL()) +p.av(0,$.cVM()) +p.av(0,$.cVN()) +p.av(0,$.cVO()) +p.av(0,$.cVP()) +p.av(0,$.cVQ()) +p.av(0,$.cVR()) +p.av(0,$.cVS()) +p.av(0,$.cWS()) +p.av(0,$.cXS()) +p.av(0,$.cWe()) +p.av(0,$.cUx()) +p.av(0,$.cUY()) +s=$.cVT() +p.av(0,s) +p.av(0,s) +p.av(0,s) +p.av(0,$.cVV()) +p.av(0,$.cXg()) +p.av(0,$.cWT()) +p.av(0,$.cWV()) +p.av(0,$.cWf()) +p.av(0,$.cUK()) +p.av(0,$.cUG()) +p.av(0,$.cX8()) +p.av(0,$.cWZ()) +p.av(0,$.cWW()) +p.av(0,$.cWp()) +p.av(0,$.cUA()) +p.av(0,$.cUD()) +p.av(0,$.cW7()) +p.av(0,$.cVU()) +p.av(0,$.cWX()) +p.av(0,$.cXi()) +p.av(0,$.cUO()) +p.av(0,$.cXQ()) +p.av(0,$.cUR()) +p.av(0,$.cUV()) +p.av(0,$.cUS()) +p.av(0,$.cXM()) +p.av(0,$.cVc()) +p.av(0,$.cXa()) +p.d=!0}s=p.a +if(s.aB(0,a)){r=s.i(0,a) +r.toString +r=J.vj(r,b)}else r=!1 +if(r){s=s.i(0,a) +s.toString +return J.aS(s,b)}s=p.b +if(s.aB(0,a)){s=s.i(0,a) +s.toString +s=J.au(s) +for(;s.t();){q=s.gK(s).bHp(b) +if(q!=null)return q}}s=a.k(0) +throw A.d(new A.U7("No algorithm registered"+(" of type "+s)+" with name: "+b))}, +bFy(a,b){if(b instanceof A.aFk)this.aVT(b) +else if(b instanceof A.tO)this.aVK(b)}, +av(a,b){return this.bFy(0,b,t.z)}, +aVT(a){J.id(this.a.cP(0,a.a,new A.cbG()),a.b,a.c)}, +aVK(a){this.b.cP(0,a.a,new A.cbF()).B(0,a)}} +A.cbG.prototype={ +$0(){return A.N(t.N,t.LF)}, +$S:1171} +A.cbF.prototype={ +$0(){return A.b9(t.bn)}, +$S:1172} +A.fY.prototype={ +ga3Q(){var s=this.a +s===$&&A.b() +return s}, +ga4e(){var s=this.b +s===$&&A.b() +return s}, +l(a,b){var s,r +if(b==null)return!1 +if(b instanceof A.fY){s=this.a +s===$&&A.b() +r=b.a +r===$&&A.b() +if(s===r){s=this.b +s===$&&A.b() +r=b.b +r===$&&A.b() +r=s===r +s=r}else s=!1}else s=!1 +return s}, +pN(a,b){var s,r=this.a +r===$&&A.b() +s=b.a +s===$&&A.b() +if(r<=s)if(r===s){r=this.b +r===$&&A.b() +s=b.b +s===$&&A.b() +s=r>s +r=s}else r=!1 +else r=!0 +return r}, +df(a,b,c){var s,r=this +if(c==null)if(b instanceof A.fY){s=b.a +s===$&&A.b() +r.a=s +s=b.b +s===$&&A.b() +r.b=s}else{r.a=0 +r.b=A.bZ(b)}else{r.a=A.bZ(b) +r.b=c}}, +ci(a,b){return this.df(0,b,null)}, +c8(a){var s,r,q=this,p=q.b +if(A.bI(a)){p===$&&A.b() +s=p+(a>>>0) +p=s>>>0 +q.b=p +if(s!==p){p=q.a +p===$&&A.b();++p +q.a=p +q.a=p>>>0}}else{p===$&&A.b() +s=p+a.ga4e() +p=s>>>0 +q.b=p +r=s!==p?1:0 +p=q.a +p===$&&A.b() +q.a=p+a.ga3Q()+r>>>0}}, +DV(a){var s,r,q,p=this,o=p.b +o===$&&A.b() +s=a.b +s===$&&A.b() +r=o+s +s=r>>>0 +p.b=s +q=r!==s?1:0 +o=p.a +o===$&&A.b() +s=a.a +s===$&&A.b() +p.a=o+s+q>>>0}, +e1(a,b){var s=A.e(b,null) +s.O_() +s.c8(1) +this.c8(s)}, +ac7(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=e.b +d===$&&A.b() +s=d&65535 +r=d>>>16&65535 +d=e.a +d===$&&A.b() +q=d&65535 +p=A.aF("b0") +o=A.aF("b1") +n=A.aF("b2") +m=A.aF("b3") +p.b=b&65535 +o.b=b>>>16&65535 +n.b=m.b=0 +l=p.aX() +k=r*p.aX() +j=q*p.aX() +i=(d>>>16&65535)*p.aX() +if(!J.q(o.aX(),0)){k+=s*o.aX() +j+=r*o.aX() +i+=q*o.aX()}if(!J.q(n.aX(),0)){j+=s*n.aX() +i+=r*n.aX()}if(!J.q(m.aX(),0))i+=s*m.aX() +h=s*l+((k&65535)<<16>>>0) +d=h>>>0 +e.b=d +g=h!==d?1:0 +d=k>>>0 +f=d!==k?65536:0 +e.a=(d>>>16)+j+((i&65535)<<16>>>0)+g+f>>>0}, +O_(){var s=this,r=s.a +r===$&&A.b() +s.a=~r>>>0 +r=s.b +r===$&&A.b() +s.b=~r>>>0}, +UX(a){var s,r=this,q=r.a +q===$&&A.b() +s=a.a +s===$&&A.b() +r.a=(q&s)>>>0 +s=r.b +s===$&&A.b() +q=a.b +q===$&&A.b() +r.b=(s&q)>>>0}, +e0(a){var s,r=this,q=r.a +q===$&&A.b() +s=a.a +s===$&&A.b() +r.a=(q^s)>>>0 +s=r.b +s===$&&A.b() +q=a.b +q===$&&A.b() +r.b=(s^q)>>>0}, +xm(a){var s,r,q=this +a&=63 +if(a!==0)if(a>=32){s=q.b +s===$&&A.b() +q.a=A.iJ(s,a-32) +q.b=0}else{s=q.a +s===$&&A.b() +s=A.iJ(s,a) +q.a=s +r=q.b +r===$&&A.b() +q.a=(s|B.d.mS(r,32-a))>>>0 +q.b=A.iJ(r,a)}}, +xn(a){var s,r,q=this +a&=63 +if(a!==0)if(a>=32){s=q.a +s===$&&A.b() +q.b=B.d.mS(s,a-32) +q.a=0}else{s=q.b +s===$&&A.b() +s=B.d.tO(s,a) +q.b=s +r=q.a +r===$&&A.b() +q.b=(s|A.iJ(r,32-a))>>>0 +q.a=B.d.tO(q.a,a)}}, +uV(a){var s,r,q,p,o=this +a&=63 +if(a!==0){if(a>=32){s=o.a +s===$&&A.b() +r=o.b +r===$&&A.b() +o.a=r +o.b=s +a-=32}if(a!==0){s=o.a +s===$&&A.b() +r=A.iJ(s,a) +o.a=r +q=o.b +q===$&&A.b() +p=32-a +o.a=(r|B.d.mS(q,p))>>>0 +q=A.iJ(q,a) +o.b=q +o.b=(q|B.d.mS(s,p))>>>0}}}, +Zy(a){var s,r,q,p,o=this +a&=63 +if(a!==0){if(a>=32){s=o.a +s===$&&A.b() +r=o.b +r===$&&A.b() +o.a=r +o.b=s +a-=32}if(a!==0){s=o.a +s===$&&A.b() +r=B.d.mS(s,a) +o.a=r +q=o.b +q===$&&A.b() +p=32-a +o.a=(r|A.iJ(q,p))>>>0 +q=B.d.mS(o.b,a) +o.b=q +o.b=(q|A.iJ(s,p))>>>0}}}, +i5(a,b,c){var s,r=this +switch(c){case B.aF:s=r.a +s===$&&A.b() +A.r5(s,a,b,c) +s=r.b +s===$&&A.b() +A.r5(s,a,b+4,c) +break +case B.z:s=r.a +s===$&&A.b() +A.r5(s,a,b+4,c) +s=r.b +s===$&&A.b() +A.r5(s,a,b,c) +break +default:throw A.d(A.aq("Invalid endianness: "+c.k(0)))}}, +A_(a,b,c){var s=this +switch(c){case B.aF:s.a=A.cr(a,b,c) +s.b=A.cr(a,b+4,c) +break +case B.z:s.a=A.cr(a,b+4,c) +s.b=A.cr(a,b,c) +break +default:throw A.d(A.aq("Invalid endianness: "+c.k(0)))}}, +k(a){var s=this,r=new A.bu(""),q=s.a +q===$&&A.b() +s.T2(r,q) +q=s.b +q===$&&A.b() +s.T2(r,q) +q=r.a +return q.charCodeAt(0)==0?q:q}, +T2(a,b){var s,r=B.d.k9(b,16) +for(s=8-r.length;s>0;--s)a.a+="0" +a.a+=r}, +gv(a){var s,r=this.a +r===$&&A.b() +s=this.b +s===$&&A.b() +return A.ad(r,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,B.a,B.a,B.a)}} +A.aCA.prototype={ +gA(a){return this.a.length}, +i(a,b){return this.a[b]}, +fb(a,b,c,d){var s,r +for(s=this.a,r=b;r0)q+=", " +p=s[r] +o=new A.bu("") +n=p.a +n===$&&A.b() +p.T2(o,n) +n=p.b +n===$&&A.b() +p.T2(o,n) +n=o.a +n=q+(n.charCodeAt(0)==0?n:n)}s=q+")" +return s.charCodeAt(0)==0?s:s}} +A.HG.prototype={ +b6(a){var s,r=this.b +if(r!=null){s=this.c +s===$&&A.b() +this.ajg(r,s)}}, +fU(a,b){var s,r=b.a +if(r.length!==8)throw A.d(A.aM("ChaCha20 requires exactly 8 bytes of IV",null)) +this.c=r +s=b.b.a +s===$&&A.b() +this.b=s +this.ajg(s,r)}, +pD(a,b,c,d,e){var s,r,q,p,o=this +if(!o.w)throw A.d(A.a0(u.bm)) +if(b+c>a.length)throw A.d(A.aM(u.s,null)) +if(e+c>d.length)throw A.d(A.aM(u.l,null)) +for(s=o.f,r=o.d,q=0;q0;s-=2){l+=h +r=a0^l +q=$.co[16] +a0=((r&q)<<16|r>>>16)>>>0 +d+=a0 +r=h^d +p=$.co[12] +h=((r&p)<<12|r>>>20)>>>0 +l+=h +r=a0^l +o=$.co[8] +a0=((r&o)<<8|r>>>24)>>>0 +d+=a0 +r=h^d +n=$.co[7] +h=((r&n)<<7|r>>>25)>>>0 +k+=g +r=a1^k +a1=((r&q)<<16|r>>>16)>>>0 +c+=a1 +r=g^c +g=((r&p)<<12|r>>>20)>>>0 +k+=g +r=a1^k +a1=((r&o)<<8|r>>>24)>>>0 +c+=a1 +r=g^c +g=((r&n)<<7|r>>>25)>>>0 +j+=f +r=a2^j +a2=((r&q)<<16|r>>>16)>>>0 +b+=a2 +r=f^b +f=((r&p)<<12|r>>>20)>>>0 +j+=f +r=a2^j +a2=((r&o)<<8|r>>>24)>>>0 +b+=a2 +r=f^b +f=((r&n)<<7|r>>>25)>>>0 +i+=e +r=a3^i +a3=((r&q)<<16|r>>>16)>>>0 +a+=a3 +r=e^a +e=((r&p)<<12|r>>>20)>>>0 +i+=e +r=a3^i +a3=((r&o)<<8|r>>>24)>>>0 +a+=a3 +r=e^a +e=((r&n)<<7|r>>>25)>>>0 +l+=g +r=a3^l +a3=((r&q)<<16|r>>>16)>>>0 +b+=a3 +r=g^b +g=((r&p)<<12|r>>>20)>>>0 +l+=g +r=a3^l +a3=((r&o)<<8|r>>>24)>>>0 +b+=a3 +r=g^b +g=((r&n)<<7|r>>>25)>>>0 +k+=f +r=a0^k +a0=((r&q)<<16|r>>>16)>>>0 +a+=a0 +r=f^a +f=((r&p)<<12|r>>>20)>>>0 +k+=f +r=a0^k +a0=((r&o)<<8|r>>>24)>>>0 +a+=a0 +r=f^a +f=((r&n)<<7|r>>>25)>>>0 +j+=e +r=a1^j +a1=((r&q)<<16|r>>>16)>>>0 +d+=a1 +r=e^d +e=((r&p)<<12|r>>>20)>>>0 +j+=e +r=a1^j +a1=((r&o)<<8|r>>>24)>>>0 +d+=a1 +r=e^d +e=((r&n)<<7|r>>>25)>>>0 +i+=h +r=a2^i +a2=((r&q)<<16|r>>>16)>>>0 +c+=a2 +r=h^c +h=((r&p)<<12|r>>>20)>>>0 +i+=h +r=a2^i +a2=((r&o)<<8|r>>>24)>>>0 +c+=a2 +r=h^c +h=((r&n)<<7|r>>>25)>>>0}m=[l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3] +for(s=0;s<16;++s)a6[s]=(m[s]>>>0)+(a5[s]>>>0)>>>0}} +A.b8M.prototype={ +$2(a,b){return new A.b8L(b)}, +$S:1173} +A.b8L.prototype={ +$0(){var s,r,q=this.a.ex(1) +q.toString +s=A.cA(q,null) +q=t.S +r=A.aK(16,0,!1,q) +q=A.aK(16,0,!1,q) +return new A.HG(s,r,q,new Uint8Array(64))}, +$S:1174} +A.b8N.prototype={ +$0(){var s=t.S +A.aK(16,0,!1,s) +A.aK(16,0,!1,s) +new Uint8Array(64) +new Uint8Array(1) +new Uint8Array(16) +$.cCI().avz() +return void 1}, +$S:1175} +A.HH.prototype={ +b6(a){var s,r,q=this +q.d[12]=0 +s=q.b +if(s!=null){r=q.c +r===$&&A.b() +q.arN(s,r)}}, +fU(a,b){var s,r=b.a +if(r.length!==12)throw A.d(A.aM("ChaCha20-7539 requires exactly 12 bytes of IV",null)) +this.c=r +s=b.b.a +s===$&&A.b() +this.b=s +this.arN(s,r)}, +pD(a,b,c,d,e){var s,r,q,p,o=this +if(!o.w)throw A.d(A.a0(u.bm)) +if(b+c>a.length)throw A.d(A.aM(u.s,null)) +if(e+c>d.length)throw A.d(A.aM(u.l,null)) +for(s=o.f,r=o.d,q=0;q0;s-=2){l+=h +r=a0^l +q=$.co[16] +a0=((r&q)<<16|r>>>16)>>>0 +d+=a0 +r=h^d +p=$.co[12] +h=((r&p)<<12|r>>>20)>>>0 +l+=h +r=a0^l +o=$.co[8] +a0=((r&o)<<8|r>>>24)>>>0 +d+=a0 +r=h^d +n=$.co[7] +h=((r&n)<<7|r>>>25)>>>0 +k+=g +r=a1^k +a1=((r&q)<<16|r>>>16)>>>0 +c+=a1 +r=g^c +g=((r&p)<<12|r>>>20)>>>0 +k+=g +r=a1^k +a1=((r&o)<<8|r>>>24)>>>0 +c+=a1 +r=g^c +g=((r&n)<<7|r>>>25)>>>0 +j+=f +r=a2^j +a2=((r&q)<<16|r>>>16)>>>0 +b+=a2 +r=f^b +f=((r&p)<<12|r>>>20)>>>0 +j+=f +r=a2^j +a2=((r&o)<<8|r>>>24)>>>0 +b+=a2 +r=f^b +f=((r&n)<<7|r>>>25)>>>0 +i+=e +r=a3^i +a3=((r&q)<<16|r>>>16)>>>0 +a+=a3 +r=e^a +e=((r&p)<<12|r>>>20)>>>0 +i+=e +r=a3^i +a3=((r&o)<<8|r>>>24)>>>0 +a+=a3 +r=e^a +e=((r&n)<<7|r>>>25)>>>0 +l+=g +r=a3^l +a3=((r&q)<<16|r>>>16)>>>0 +b+=a3 +r=g^b +g=((r&p)<<12|r>>>20)>>>0 +l+=g +r=a3^l +a3=((r&o)<<8|r>>>24)>>>0 +b+=a3 +r=g^b +g=((r&n)<<7|r>>>25)>>>0 +k+=f +r=a0^k +a0=((r&q)<<16|r>>>16)>>>0 +a+=a0 +r=f^a +f=((r&p)<<12|r>>>20)>>>0 +k+=f +r=a0^k +a0=((r&o)<<8|r>>>24)>>>0 +a+=a0 +r=f^a +f=((r&n)<<7|r>>>25)>>>0 +j+=e +r=a1^j +a1=((r&q)<<16|r>>>16)>>>0 +d+=a1 +r=e^d +e=((r&p)<<12|r>>>20)>>>0 +j+=e +r=a1^j +a1=((r&o)<<8|r>>>24)>>>0 +d+=a1 +r=e^d +e=((r&n)<<7|r>>>25)>>>0 +i+=h +r=a2^i +a2=((r&q)<<16|r>>>16)>>>0 +c+=a2 +r=h^c +h=((r&p)<<12|r>>>20)>>>0 +i+=h +r=a2^i +a2=((r&o)<<8|r>>>24)>>>0 +c+=a2 +r=h^c +h=((r&n)<<7|r>>>25)>>>0}m=[l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3] +for(s=0;s<16;++s)a6[s]=(m[s]>>>0)+(a5[s]>>>0)>>>0}} +A.b8P.prototype={ +$2(a,b){return new A.b8O(b)}, +$S:1176} +A.b8O.prototype={ +$0(){var s,r,q=this.a.ex(1) +q.toString +s=A.cA(q,null) +q=t.S +r=A.aK(16,0,!1,q) +q=A.aK(16,0,!1,q) +return new A.HH(s,r,q,new Uint8Array(64))}, +$S:1177} +A.Hx.prototype={} +A.b7I.prototype={ +$2(a,b){return new A.b7H(b)}, +$S:1178} +A.b7H.prototype={ +$0(){var s=this.a.ex(1) +s.toString +return A.cvx($.fQ().h7(0,s,t.mw))}, +$S:1179} +A.Is.prototype={} +A.ben.prototype={ +$2(a,b){return new A.bem(b)}, +$S:1180} +A.bem.prototype={ +$0(){var s,r=this.a.ex(1) +r.toString +s=$.fQ().h7(0,r,t.mw) +A.cvx(s) +A.d2q(s,s.gb3()*8) +B.d.aD(s.gb3(),2) +return new A.Is()}, +$S:1181} +A.a7u.prototype={ +fU(a,b){var s +if(b instanceof A.qg){s=b.a +s===$&&A.b() +this.d=s +this.afH(s)}else throw A.d(A.aM("Parameters of invalid type",null))}, +zP(a){var s=a.length,r=new Uint8Array(s) +this.pD(a,0,s,r,0) +return r}, +pD(a,b,c,d,e){var s,r,q,p,o,n=this +if(b+c>a.length)throw A.d(A.aM("input buffer too short",null)) +if(e+c>d.length)throw A.d(A.aM("output buffer too short",null)) +for(s=0;s>>0}}, +b6(a){var s=this.d +s===$&&A.b() +this.afH(s)}, +afH(a){var s,r,q,p,o,n,m,l=this +l.d=a +l.c=l.b=0 +s=l.a +if(s==null)s=l.a=new Uint8Array(256) +for(r=0;r<256;++r)s[r]=r +for(q=a.length,p=0,o=0,r=0;r<256;++r){n=a[p] +m=s[r] +o=(n&255)+m+o&255 +s[r]=s[o] +s[o]=m +p=(p+1)%q}}} +A.bzh.prototype={ +$0(){return new A.a7u()}, +$S:1182} +A.a8J.prototype={ +b6(a){var s,r=this.a +if(r!=null){s=this.b +s===$&&A.b() +this.ar4(r,s)}}, +fU(a,b){var s,r=b.a +if(r.length!==8)throw A.d(A.aM("Salsa20 requires exactly 8 bytes of IV",null)) +this.b=r +s=b.b.a +s===$&&A.b() +this.a=s +this.ar4(s,r)}, +pD(a,b,c,d,e){var s,r,q,p,o=this +if(!o.r)throw A.d(A.a0("Salsa20 not initialized: please call init() first")) +if(b+c>a.length)throw A.d(A.aM(u.s,null)) +if(e+c>d.length)throw A.d(A.aM(u.l,null)) +for(s=o.e,r=o.c,q=0;q0;s-=2){r=a5[4] +q=a5[0] +p=a5[12] +o=q+p>>>0 +n=$.co[7] +o=(r^((o&n)<<7|o>>>25))>>>0 +a5[4]=o +r=a5[8] +m=o+q>>>0 +l=$.co[9] +m=(r^((m&l)<<9|m>>>23))>>>0 +a5[8]=m +r=m+o>>>0 +k=$.co[13] +r=(p^((r&k)<<13|r>>>19))>>>0 +a5[12]=r +p=r+m>>>0 +j=$.co[18] +p=(q^((p&j)<<18|p>>>14))>>>0 +a5[0]=p +q=a5[9] +i=a5[5] +h=a5[1] +g=i+h>>>0 +g=(q^((g&n)<<7|g>>>25))>>>0 +a5[9]=g +q=g+i>>>0 +q=(a5[13]^((q&l)<<9|q>>>23))>>>0 +a5[13]=q +f=q+g>>>0 +f=(h^((f&k)<<13|f>>>19))>>>0 +a5[1]=f +h=f+q>>>0 +h=(i^((h&j)<<18|h>>>14))>>>0 +a5[5]=h +i=a5[14] +e=a5[10] +d=a5[6] +c=e+d>>>0 +c=(i^((c&n)<<7|c>>>25))>>>0 +a5[14]=c +i=c+e>>>0 +i=(a5[2]^((i&l)<<9|i>>>23))>>>0 +a5[2]=i +b=i+c>>>0 +b=(d^((b&k)<<13|b>>>19))>>>0 +a5[6]=b +d=b+i>>>0 +d=(e^((d&j)<<18|d>>>14))>>>0 +a5[10]=d +e=a5[3] +a=a5[15] +a0=a5[11] +a1=a+a0>>>0 +a1=(e^((a1&n)<<7|a1>>>25))>>>0 +a5[3]=a1 +e=a1+a>>>0 +e=(a5[7]^((e&l)<<9|e>>>23))>>>0 +a5[7]=e +a2=e+a1>>>0 +a2=(a0^((a2&k)<<13|a2>>>19))>>>0 +a5[11]=a2 +a0=a2+e>>>0 +a0=(a^((a0&j)<<18|a0>>>14))>>>0 +a5[15]=a0 +a=p+a1>>>0 +a=(f^((a&n)<<7|a>>>25))>>>0 +a5[1]=a +f=a+p>>>0 +f=(i^((f&l)<<9|f>>>23))>>>0 +a5[2]=f +a=f+a>>>0 +a=(a1^((a&k)<<13|a>>>19))>>>0 +a5[3]=a +f=a+f>>>0 +a5[0]=(p^((f&j)<<18|f>>>14))>>>0 +f=h+o>>>0 +f=(b^((f&n)<<7|f>>>25))>>>0 +a5[6]=f +b=f+h>>>0 +b=(e^((b&l)<<9|b>>>23))>>>0 +a5[7]=b +f=b+f>>>0 +f=(o^((f&k)<<13|f>>>19))>>>0 +a5[4]=f +b=f+b>>>0 +a5[5]=(h^((b&j)<<18|b>>>14))>>>0 +b=d+g>>>0 +b=(a2^((b&n)<<7|b>>>25))>>>0 +a5[11]=b +a2=b+d>>>0 +a2=(m^((a2&l)<<9|a2>>>23))>>>0 +a5[8]=a2 +b=a2+b>>>0 +b=(g^((b&k)<<13|b>>>19))>>>0 +a5[9]=b +a2=b+a2>>>0 +a5[10]=(d^((a2&j)<<18|a2>>>14))>>>0 +a2=a0+c>>>0 +a2=(r^((a2&n)<<7|a2>>>25))>>>0 +a5[12]=a2 +n=a2+a0>>>0 +n=(q^((n&l)<<9|n>>>23))>>>0 +a5[13]=n +a2=n+a2>>>0 +a2=(c^((a2&k)<<13|a2>>>19))>>>0 +a5[14]=a2 +n=a2+n>>>0 +a5[15]=(a0^((n&j)<<18|n>>>14))>>>0}for(s=0;s<16;++s)a5[s]=a5[s]+a4[s]>>>0}} +A.bD3.prototype={ +$0(){var s=t.S,r=A.aK(16,0,!1,s) +s=A.aK(16,0,!1,s) +return new A.a8J(r,s,new Uint8Array(64))}, +$S:1183} +A.F4.prototype={ +ahW(a){var s=this,r=s.a,q=r.gb3() +s.b=new Uint8Array(q) +q=r.gb3() +s.c=new Uint8Array(q) +r=r.gb3() +s.d=new Uint8Array(r)}, +b6(a){var s,r,q=this +q.a.b6(0) +s=q.c +s===$&&A.b() +r=q.b +r===$&&A.b() +B.p.iK(s,0,r) +r=q.d +r===$&&A.b() +B.p.fb(r,0,r.length,0) +q.e=q.d.length}, +fU(a,b){var s=this.b +s===$&&A.b() +B.p.iK(s,0,b.a) +this.b6(0) +this.a.fU(!0,b.b)}, +pD(a,b,c,d,e){var s,r,q,p,o,n=this +for(s=n.a,r=0;r=o.length){p=n.c +p===$&&A.b() +s.fN(p,0,o,0) +n.b7u() +o=n.e=0 +p=o}o=n.d +n.e=p+1 +d[e+r]=q&255^o[p]}}, +b7u(){var s,r=this.c +r===$&&A.b() +s=r.byteLength-1 +for(;s>=0;--s){r[s]=r[s]+1 +if(r[s]!==0)break}}} +A.bCW.prototype={ +$2(a,b){return new A.bCV(b)}, +$S:1184} +A.bCV.prototype={ +$0(){var s=this.a.ex(1) +s.toString +return A.cyQ($.fQ().h7(0,s,t.mw))}, +$S:1185} +A.a0h.prototype={} +A.a0Z.prototype={ +awy(a,b){return this.e.$3(a,A.byY(a,!0,this.$ti.c),b)}} +A.a52.prototype={} +A.bpd.prototype={ +$0(){var s=this.a.O(0,this.b.gaC5()) +return s}, +$S:0} +A.RL.prototype={ +dv(a){return new A.afk(null,this,B.aD,this.$ti.h("afk<1>"))}, +awy(a,b){return new A.oR(this,new A.e_(new A.bnq(this,b),null),null,this.$ti.h("oR<1?>"))}} +A.bnq.prototype={ +$1(a){return this.a.r.$2(a,this.b)}, +$S:8} +A.afk.prototype={} +A.oR.prototype={ +ed(a){return!1}, +dv(a){return new A.NM(A.hg(null,null,null,t.lU,t.X),this,B.aD,this.$ti.h("NM<1>"))}} +A.NM.prototype={ +gAL(){var s,r=this,q=r.ez +if(q===$){s=new A.ak9(r.$ti.h("oR<1>").a(A.bJ.prototype.gb7.call(r)).f.e.$ti.h("ak9<1>")) +s.a=r +r.ez!==$&&A.a_() +r.ez=s +q=s}return q}, +kX(a){var s={} +s.a=null +this.t8(new A.c2q(s,a)) +return s.a}, +iF(a,b){this.QK(a,b)}, +gb7(){return this.$ti.h("oR<1>").a(A.bJ.prototype.gb7.call(this))}, +lM(){this.a0L() +this.gAL() +this.gAL().gj(0)}, +adV(a,b){var s=this.y2,r=s.i(0,a) +if(r!=null&&!this.$ti.h("dhJ<1>").b(r))return +s.n(0,a,B.dk)}, +acd(a,b){var s,r,q,p,o=this.y2.i(0,b),n=!1 +if(o!=null)if(this.$ti.h("dhJ<1>").b(o)){if(b.Q)return +for(r=o.c,q=r.length,p=0;p").a(A.bJ.prototype.gb7.call(r)).f.e) +r=s.a +r.toString +p=b.f.e.a!==q.a(r.$ti.h("oR<1>").a(A.bJ.prototype.gb7.call(r)).f.e).a +if(p&&s.b!=null){s.b.$0() +s.b=null}o.eq=p +o.ah6(0,b) +o.eq=!1}, +Pb(a){this.aOG(a) +if(this.eq)this.wB(a)}, +c5(){this.f1=!0 +this.a0J()}, +dN(){var s=this,r=s.$ti.h("oR<1>") +r.a(A.bJ.prototype.gb7.call(s)) +s.gAL() +s.f1=!1 +if(s.aU){s.aU=!1 +s.wB(r.a(A.bJ.prototype.gb7.call(s)))}return s.a0Q()}, +oH(){var s=this.gAL() +s.aRz() +s=s.b +if(s!=null)s.$0() +this.DY()}, +bAK(){if(!this.eA)return +this.hl() +this.aU=!0}, +yK(a,b){return this.QN(a,b)}, +W4(a){return this.yK(a,null)}, +$iaw3:1} +A.c2q.prototype={ +$1(a){this.a.a=a.kX(this.b) +return!1}, +$S:50} +A.aNr.prototype={} +A.AU.prototype={ +m(){}} +A.Z0.prototype={} +A.ak9.prototype={ +gj(a){var s,r,q=this,p=q.a +p.eA=!1 +if(q.b==null){s=q.$ti.h("AU.D") +p=s.a(A.z(p).h("oR<1>").a(A.bJ.prototype.gb7.call(p)).f.e) +r=q.a +r.toString +r=p.c.$2(r,s.a(r.$ti.h("oR<1>").a(A.bJ.prototype.gb7.call(r)).f.e).a) +q.b=r}p=q.a +p.eA=!0 +return q.$ti.h("AU.D").a(A.z(p).h("oR<1>").a(A.bJ.prototype.gb7.call(p)).f.e).a}} +A.aC4.prototype={ +k(a){return"A provider for "+this.a.k(0)+" unexpectedly returned null."}, +$ibP:1} +A.aC3.prototype={ +k(a){return"Provider<"+this.a.k(0)+"> not found for "+this.b.k(0)}, +$ibP:1} +A.a7p.prototype={ +n(a,b,c){return A.C(A.aq("cannot change"))}, +i(a,b){return(B.d.mS(this.a[B.d.aD(b,8)],7-B.d.M(b,8))&1)===1}, +gA(a){return this.b}, +sA(a,b){A.C(A.aq("Cannot change"))}, +t0(a,b,c){var s +for(s=0;s>>0}return A.aCf(h,0)}, +aCc(a){var s,r,q,p=this.a,o=p.length,n=a.a,m=n.length +if(o-m<0)return this +s=A.cSP(p[0])-A.cSP(n[0]) +r=new Uint8Array(o) +for(q=0;q>>0}return A.aCf(r,0).aCc(a)}} +A.bz5.prototype={ +gbt4(){var s=this,r=s.d +return r==null?s.d=A.cPS(s.a,s.b,s.e):r}} +A.aCe.prototype={ +bfZ(){var s,r,q,p=this.e +B.b.V(p) +for(s=this.a,r=t.X7,q=0;q=0){s=this.a +s=s<=a||b<0||s<=b}else s=!0 +if(s)throw A.d(A.aM(""+a+" , "+b,null)) +s=this.e[a][b] +s.toString +return s}, +aor(a,b,c){var s,r=this +r.bfZ() +r.a5T(0,0) +s=r.a-7 +r.a5T(s,0) +r.a5T(0,s) +r.bhX() +r.bhY() +r.bhZ(a,c) +if(r.b>=7)r.bi_(c) +r.b9f(b,a)}, +a5T(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g +for(s=this.e,r=this.a,q=-1;q<=7;++q){p=a+q +if(p<=-1||r<=p)continue +for(o=0<=q,n=q<=6,m=q!==0,l=q===6,k=2<=q,j=q<=4,i=-1;i<=7;++i){h=b+i +if(h<=-1||r<=h)continue +if(o)if(n)g=i===0||i===6 +else g=!1 +else g=!1 +if(!g){if(0<=i)if(i<=6)g=!m||l +else g=!1 +else g=!1 +if(!g)g=k&&j&&2<=i&&i<=4 +else g=!0}else g=!0 +if(g)s[p][h]=!0 +else s[p][h]=!1}}}, +bhX(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=B.aO5[this.b-1] +for(s=e.length,r=this.e,q=0;q>>0) +for(s=this.e,r=this.a,q=r-15,p=!b,o=0;o<15;++o){n=p&&(B.d.tO(m,o)&1)===1 +if(o<6)s[o][8]=n +else if(o<8)s[o+1][8]=n +else s[q+o][8]=n}for(o=0;o<15;++o){n=p&&(B.d.tO(m,o)&1)===1 +if(o<8)s[8][r-o-1]=n +else{q=15-o-1 +if(o<9)s[8][q+1]=n +else s[8][q]=n}}s[r-8][8]=p}, +bi_(a){var s,r,q,p,o,n=A.dp9(this.b) +for(s=this.e,r=this.a,q=!a,p=0;p<18;++p){o=q&&(B.d.tO(n,p)&1)===1 +s[B.d.aD(p,3)][B.d.M(p,3)+r-8-3]=o}for(p=0;p<18;++p){o=q&&(B.d.tO(n,p)&1)===1 +s[B.d.M(p,3)+r-8-3][B.d.aD(p,3)]=o}}, +b9f(a,b){var s,r,q,p,o,n,m,l,k,j=this.a,i=j-1 +for(s=this.e,r=i,q=-1,p=7,o=0;r>0;r-=2){if(r===6)--r +for(;!0;){for(n=0;n<2;++n){m=r-n +if(s[i][m]==null){l=o=l,g=n+j*k,f=0;f=l&&i +if(d||c||b)continue +e=a5.y +e===$&&A.b() +a=e.jF(f,j)?m:null +if(a==null)continue +a0=n+f*k +e=a5.b77(j,f,r) +a1=e?0.5:0 +e=a5.b78(j,f,r) +a2=e?0.5:0 +e=o+a1 +a3=new A.W(g,a0,g+e,a0+(o+a2)) +if(s)a6.fs(a3,a) +else a6.dh(A.jq(a3,new A.bb(e,e)),a)}s=a5.e +if(s!=null){r=s.geP(s) +o=s.gdK(s) +a4=a5.bgB(a7,new A.V(r,o),null) +r=a4.a +o=(a7.a-r)/2 +n=a4.b +l=(a7.b-n)/2 +a=$.ar().aP() +a.srK(!0) +a.sot(B.kU) +k=s.geP(s) +e=s.gdK(s) +a6.pj(s,B.C.Nm(new A.V(k,e),new A.W(0,0,k,e)),B.C.Nm(a4,new A.W(o,l,o+r,l+n)),a)}}, +b78(a,b,c){var s,r=b+1 +if(r>=c)return!1 +s=this.y +s===$&&A.b() +return s.jF(r,a)}, +b77(a,b,c){var s,r=a+1 +if(r>=c)return!1 +s=this.y +s===$&&A.b() +return s.jF(b,r)}, +a2F(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=c.d +d===$&&A.b() +s=7*d+6*c.c-d +r=d/2 +q=c.f +q===$&&A.b() +p=c.e +p===$&&A.b() +o=q+p-(s+r) +if(a===B.uj){q+=r +n=new A.j(q,q)}else{q+=r +n=a===B.uk?new A.j(q,o):new A.j(o,q)}q=this.as +m=q.WU(B.WG,a) +m.se4(d) +p=this.r +l=p.b +m.sa6(0,l) +k=q.WU(B.WH,a) +k.se4(d) +k.sa6(0,B.mK) +j=q.WU(B.WI,a) +j.sa6(0,l) +q=n.a +l=n.b +i=new A.W(q,l,q+s,l+s) +h=s-2*d +q+=d +l+=d +g=s-d*2-2*r +d=q+r +f=l+r +e=new A.W(d,f,d+g,f+g) +if(p.a===B.WO){b.fs(i,m) +b.fs(new A.W(q,l,q+h,l+h),k) +b.fs(e,j)}else{b.dh(A.jq(i,new A.bb(s,s)),m) +b.dh(A.jq(i,new A.bb(h,h)),k) +b.dh(A.jq(e,new A.bb(g,g)),j)}}, +bgB(a,b,c){var s=0.25*a.giu()/b.gaBZ() +return new A.V(s*b.a,s*b.b)}, +hC(a){var s,r,q=this +if(a instanceof A.a7r){if(q.c===a.c){s=q.z +s===$&&A.b() +r=a.z +r===$&&A.b() +s=s!==r||q.x!==a.x||q.e!=a.e||!q.r.l(0,a.r)||!q.w.l(0,a.w)}else s=!0 +return s}return!0}} +A.c9m.prototype={} +A.Lm.prototype={ +H(){return"QrCodeElement."+this.b}} +A.QY.prototype={ +H(){return"FinderPatternPosition."+this.b}} +A.bz9.prototype={ +H(){return"QrEyeShape."+this.b}} +A.bz8.prototype={ +H(){return"QrDataModuleShape."+this.b}} +A.aCd.prototype={ +gv(a){var s=this.b +return(A.ef(this.a)^s.gv(s))>>>0}, +l(a,b){if(b==null)return!1 +if(b instanceof A.aCd)return this.a===b.a&&this.b.l(0,b.b) +return!1}} +A.aCc.prototype={ +gv(a){var s=this.b +return(A.ef(this.a)^s.gv(s))>>>0}, +l(a,b){if(b==null)return!1 +if(b instanceof A.aCc)return this.a===b.a&&this.b.l(0,b.b) +return!1}} +A.a7s.prototype={} +A.a7t.prototype={ +H(){return"QrValidationStatus."+this.b}} +A.a8i.prototype={ +bo(a){var s,r,q=this.k1$ +if(q!=null){s=q.aw(B.ad,a,q.gbG()) +if(this.G===B.a_){r=this.ac.x +r===$&&A.b() +r=s*r}else r=s +return r}return 0}, +bb(a){var s,r,q=this.k1$ +if(q!=null){s=q.aw(B.aj,a,q.gbL()) +if(this.G===B.a_){r=this.ac.x +r===$&&A.b() +r=s*r}else r=s +return r}return 0}, +bh(a){var s,r,q=this.k1$ +if(q!=null){s=q.aw(B.ao,a,q.gbP()) +if(this.G===B.v){r=this.ac.x +r===$&&A.b() +r=s*r}else r=s +return r}return 0}, +bi(a){var s,r,q=this.k1$ +if(q!=null){s=q.aw(B.ay,a,q.gbZ()) +if(this.G===B.v){r=this.ac.x +r===$&&A.b() +r=s*r}else r=s +return r}return 0}} +A.a8I.prototype={ +J(){return new A.aVP(B.f)}, +lC(a,b){return this.c.$2(a,b)}} +A.aVP.prototype={ +q(a){return this.a.lC(a,this.gIP())}} +A.als.prototype={ +C(a){if(this.c!=null)this.aQP(a)}} +A.bBR.prototype={ +bAF(a,b,c,d){var s +if(c==null)return A.cM8(d,new A.dg(b,!1,a,null),b) +else{s=A.a9K(d,0,new A.dg(b,!1,a,null),b) +return new A.fI(A.nT(c),s,null)}}, +bAH(a,b,c,d){var s +if(c==null)return A.cM8(d,new A.dg(b,!1,a,null),b) +else{s=A.a9K(d,0,new A.dg(b,!1,a,null),b) +return new A.fI(A.nT(c),s,null)}}} +A.ahV.prototype={} +A.aDp.prototype={ +IR(a){return!0}, +hO(a,b){var s,r,q,p=this,o=null +if(b>=0){s=p.b +s=s!=null&&b>=s}else s=!0 +if(s)return o +r=p.a.$2(a,b) +if(r==null)return o +s=r.a +r=new A.iU(r,s!=null?new A.ca(s,t.gz):new A.ca(b,t.zm)) +if(p.e){q=p.r.$2(r,b) +if(q!=null)r=new A.Jy(q+p.f,r,o)}r=p.azq$.$2(r,b) +return p.c?new A.Hm(r,o):r}} +A.a8o.prototype={ +J(){return new A.ahW(A.N(t.S,t.NN),A.a([],t.t),null,null,B.f)}, +bCB(a,b){return this.d.$2(a,b)}} +A.ahW.prototype={ +gal1(){var s=this.x +if(s==null)return new A.V(0,0) +return s.S(0,new A.j(0,0))}, +a8(){var s,r=this,q=null +r.an() +r.f=A.bQ(q,B.K,q,1,1,r) +r.r=A.bQ(q,B.K,q,1,0,r) +s=r.f +s.cY() +s=s.f0$ +s.b=!0 +s.a.push(r.gbbc())}, +c5(){var s,r=this,q=null,p=r.e +if(p!=null){s=r.d +s===$&&A.b() +s.rr(0,p) +r.e=null}r.a.toString +p=r.c +p.toString +p=A.EK(p) +if(p==null)p=new A.fh(0,!0,q,q,q,A.a([],t.ZP),$.ae()) +r.d=p +if(p.f.length!==0)p=q +else{p=r.c +p.toString +p=A.lI(p) +if(p==null)p=q +else{p=p.d +p.toString}}r.e=p +if(p!=null)r.d.aA(p) +r.dH()}, +m(){var s,r=this,q=r.e +if(q!=null){s=r.d +s===$&&A.b() +s.rr(0,q) +r.e=null}q=r.f +q===$&&A.b() +q.m() +q=r.r +q===$&&A.b() +q.m() +r.aTZ()}, +TM(a,b,c){var s,r +if(b!==c){s=this.y +if(a===s)r=c +else if(a>s&&a<=c)r=a-1 +else r=a=c?a+1:a}else r=a +return r}, +aqO(a,b){var s,r,q,p,o=this,n=o.f +n===$&&A.b() +if(n.gbM(0)===B.a9){s=A.wh(t.S) +for(n=o.ch;n.length!==0;)s.B(0,n.pop()) +r=o.as +if(r!==-1){q=o.TM(r,r,o.Q) +n=o.as +if(q!==n){p=o.ay +r=B.d.M(n+1,p.a) +q=o.TM(r,n,o.Q) +n=o.as +if(q!==n){p=p.a +r=B.d.M(n-1+p,p) +o.TM(r,n,o.Q)}}s.B(0,r)}n=o.Q +if(n!==-1)s.B(0,n) +new A.ccH(o,A.R(s,!0,A.z(s).h("cZ.E")),new A.ccI(o,a)).$0()}}, +bfU(){return this.aqO(!1,null)}, +bbd(a){if(a===B.a9)this.C(new A.ccG(this))}, +bgV(a){var s,r,q,p,o,n,m,l=this +if(l.at)return +s=a.gai() +s.toString +r=A.cLx(s) +r.toString +q=l.gal1().b/2 +p=l.d +p===$&&A.b() +p=p.gb8(p).at +p.toString +o=l.d +o=o.gb8(o).z +o.toString +n=Math.max(o,r.PJ(s,0).a-q) +o=l.d +o=o.gb8(o).Q +o.toString +m=Math.min(o,r.PJ(s,1).a+q) +if(!(p<=n&&p>=m)){l.at=!0 +s=l.d +s=s.gb8(s) +s.jv(p0){s=B.b.hX(q) +q=r.a.ay +q.i(0,s) +q.i(0,s).$1(r)}else r.c.$0()}, +$S:0} +A.ccG.prototype={ +$0(){this.a.bfU()}, +$S:0} +A.ccK.prototype={ +$1(a){var s=this.a +s.C(new A.ccJ(s))}, +$S:33} +A.ccJ.prototype={ +$0(){this.a.at=!1}, +$S:0} +A.cd9.prototype={ +$2(a,b){var s=this.a,r=this.b +s.ay.n(0,r,b) +return s.biW(this.c,r,b)}, +$S:1188} +A.cd0.prototype={ +$0(){var s=this,r=s.b +r.a.toString +s.c.$1(new A.cd1(s.a,r,s.d,s.e)) +r.a.toString}, +$S:0} +A.cd1.prototype={ +$0(){var s,r=this,q=r.b +q.w=r.c +q.Q=q.z=q.y=r.d +s=q.f +s===$&&A.b() +s.sj(0,1) +q.x=r.a.a.gu(0)}, +$S:0} +A.ccR.prototype={ +$2(a,b){var s,r +if(a!==b){s=this.a +s.a.bCB(a,b)}else{s=this.a +s.a.toString}r=s.r +r===$&&A.b() +r.HN(0,0.1) +r=s.f +r===$&&A.b() +r.HN(0,0) +s.y=-1}, +$S:98} +A.cd2.prototype={ +$2(a,b){this.a.$1(new A.cd3(this.b,a,b))}, +$S:98} +A.cd3.prototype={ +$0(){this.a.$2(this.b,this.c)}, +$S:0} +A.ccX.prototype={ +$0(){var s=this.a +s.a.toString +s.C(new A.ccY(s,this.b))}, +$S:0} +A.ccY.prototype={ +$0(){var s,r=this.a,q=A.wh(t.S) +for(s=r.ch;s.length!==0;)q.B(0,s.pop()) +new A.ccZ(r,A.R(q,!0,A.z(q).h("cZ.E")),new A.cd_(r,this.b)).$0()}, +$S:0} +A.cd_.prototype={ +$0(){var s=this.a +this.b.$2(s.y,s.Q) +s.Q=s.z=s.y=-1 +s.w=null}, +$S:0} +A.ccZ.prototype={ +$0(){var s=this,r=s.b +if(r.length>0)s.a.ay.i(0,B.b.hX(r)).$1(s) +else s.c.$0()}, +$S:0} +A.cd4.prototype={ +$0(){var s,r=this,q=null,p=A.N(t.I7,t.O),o=r.b,n=r.c,m=r.a,l=m.c +l.toString +l=A.dS(l,B.an,t.v) +l.toString +if(n>0){p.n(0,new A.vD(l.gbE(),q,q),new A.cd8(o,n)) +p.n(0,new A.vD(l.gcC(),q,q),new A.cd6(o,n))}s=m.ax +s===$&&A.b() +if(n=n)p.a=m +return new A.e_(new A.ccV(r.a,p),q)}, +$S:1189} +A.ccT.prototype={ +$1(a){var s,r=this.a,q=r.x +q.toString +s=A.nT(q) +r.a.toString +return r.gbtq().$3(a,s,this.b)}, +$S:8} +A.ccU.prototype={ +$2(a,b){this.a.$0()}, +$S:1190} +A.ccV.prototype={ +$1(a){this.a.a=a +return this.b.a}, +$S:8} +A.ccW.prototype={ +$1(a){var s,r,q,p,o=this,n=null,m=o.a,l=o.c,k=new A.hI(A.cHF(o.b,new A.ccM(),n,new A.ccN(),new A.ccO(m,l,o.d,a),n,t.S),new A.ca(l,t.zm)),j=m.w,i=j==null?A.Mi(n,m.gal1()):A.mj(j,0.2),h=m.TM(l,m.Q,m.z) +if(h===m.Q||l===m.z){s=o.e.$1(i) +r=o.f.$1(i) +if(m.y===-1)return A.cS(A.a([k],t.p),B.a4,n,B.o,B.Z,n,n,B.x) +else{j=m.Q +q=m.z +if(j>q){B.b.eu(m.ch,0,l) +j=h===m.Q +if(j&&l===m.z)return A.cS(A.a([r,k,s],t.p),B.a4,n,B.o,B.Z,n,n,B.x) +else if(j)return A.cS(A.a([k,s],t.p),B.a4,n,B.o,B.Z,n,n,B.x) +else if(l===m.z){m=t.p +return A.cS(h<=l?A.a([k,r],m):A.a([r,k],m),B.a4,n,B.o,B.Z,n,n,B.x)}}else{p=m.ch +if(j=l?A.a([r,k],m):A.a([k,r],m),B.a4,n,B.o,B.Z,n,n,B.x)}}else{B.b.eu(p,0,l) +l=t.p +return A.cS(m.yr&&o<=s.z)q=o-1 +else q=o=s.z?o+1:o +s.as=q}else{s=p.a +s.as=o}s.aqO(!0,o)}, +$S:0} +A.ccM.prototype={ +$1(a){}, +$S:12} +A.ccN.prototype={ +$1(a){}, +$S:11} +A.aVu.prototype={} +A.alr.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.b0B.prototype={} +A.aDU.prototype={} +A.aEF.prototype={ +aR(a){var s=new A.a8i(this.e,this.f,null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}, +b_(a,b){b.G=this.e +b.ac=this.f}} +A.bCe.prototype={ +$3(a,b,c){return this.a.$2(a,b)}, +$S(){return this.b.h("c(u,0,c?)")}} +A.bHe.prototype={ +$3$1(a,b,c,d){var s=null +return new A.aa5(A.dsZ(A.dvY(),b,c),a,s,s,A.b1N(s),s,b.h("@<0>").a1(c).a1(d).h("aa5<1,2,3>"))}, +$1(a){var s=t.z +return this.$3$1(a,t.U1,s,s)}} +A.b57.prototype={ +$1$1(a,b){var s=null +return new A.a_q(a,s,s,s,s,s,A.b1N(s),b.h("a_q<0>"))}, +$1(a){return this.$1$1(a,t.z)}} +A.b56.prototype={ +$1$1(a,b){var s=null +return new A.a_o(a,s,s,s,s,s,A.b1N(s),b.h("a_o<0>"))}, +$1(a){return this.$1$1(a,t.z)}} +A.ZP.prototype={} +A.xR.prototype={} +A.xY.prototype={ +NR(){if(!this.gab2())var s=!0 +else s=!1 +if(s){s=this.e +s===$&&A.b() +s=s.gIH() +s.c.push(this) +s.arl()}}, +$idL:1} +A.xt.prototype={ +aZf(){var s,r,q=this,p=q.a +if(p.l(0,$.b1p))throw A.d(new A.aoV()) +if($.b1p==null)$.b1p=p +try{r=q.b.dv(0) +r.d=q.b +r.c=p +r.e!==$&&A.ck() +r.e=q.c +r.CJ() +s=r +s.fx.ww(0,new A.cfF(q),new A.cfG(q)) +return s}finally{if(J.q($.b1p,p))$.b1p=null}}} +A.cfF.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(r)}, +amp(a){var s=this.y.i(0,a) +if(s==null){s=this.e +s=s==null?null:s.amp(a)}return s}, +beL(a){var s,r=this.y,q=r.i(0,a) +if(q!=null)return q +s=new A.bys(this,a).$0() +r.n(0,a,s) +return s}, +m(){var s,r,q,p=this +if(p.as)return +p.as=!0 +s=p.f +if(s!=null)B.b.F(s.r,p) +if(p.e==null){s=p.gIH() +s.a=!0 +r=s.e +if(r!=null)r.fw(0) +s.e=null}for(s=p.aet(),s=A.R(s,!0,s.$ti.h("B.E")),r=A.X(s).h("bE<1>"),s=new A.bE(s,r),s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("aa.E");s.t();){q=s.d;(q==null?r.a(q):q).m()}}, +aet(){return new A.dz(this.aIi(),t.Bi)}, +aIi(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k,j,i,h,g,f +return function $async$aet(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:h=A.dV(t.IW) +g=t.VH +f=new A.AZ(g) +f.a=f +f.b=f +o=new A.yB(f,t.Do) +for(n=s.y.gbm(0),m=A.z(n),m=m.h("@<1>").a1(m.y[1]),n=new A.c4(J.au(n.a),n.b,m.h("c4<1,2>")),m=m.y[1],g=g.h("AY<1>");n.t();){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.ae7(new A.byz(l,s)) +if(!l.a){new A.AY(o,j,g).a4b(f.a,f);++o.b}}case 2:if(!!o.gad(0)){r=3 +break}i=f.b.Ti(0);--o.b +if(!h.B(0,i)){r=2 +break}r=4 +return a.b=i,1 +case 4:i.I8(new A.byA(s,h,o),new A.byB()) +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}} +A.byr.prototype={ +$1(a){var s=a.y,r=this.a +if(J.q(s.i(0,r),this.b))s.F(0,r) +B.b.aE(a.r,this)}, +$S:1194} +A.bys.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j=this.b,i=j.e,h=i==null +if(!h){s=this.a.x.i(0,i) +if(s!=null){i=s.b +h=i.y +if(h.aB(0,j)){j=h.i(0,j) +j.toString +return j}r=s.a +new A.byx(s).$2$origin$override(j,r.$1(r.$ti.h("NG.1").a(j.f))) +h=h.i(0,j) +return h==null?new A.xt(j,j,i,!0):h}}r=this.a +q=r.e +p=q==null +o=!p +if(o){n=h?null:i.e +if(n==null)n=j.c +m=n==null?null:J.dP(n,new A.byt(r),t.Az).kW(0,new A.byu()).eO(0) +if(m!=null&&m.length!==0){l=(m&&B.b).l8(m,q,new A.byv(),t.qq) +return l.y.cP(0,j,new A.byw(j,l))}}i=p?null:q.y.aB(0,j) +if(i===!0){j=q.y.i(0,j) +j.toString +return j}k=new A.xt(j,j,p?r:q,!0) +if(o)q.y.n(0,j,k) +return k}, +$S:391} +A.byx.prototype={ +$2$origin$override(a,b){var s=this.a.b,r=s.y +if(r.i(0,a)==null)r.n(0,a,new A.xt(a,b,s,!0))}, +$S:1196} +A.byt.prototype={ +$1(a){var s,r=this.a,q=r.y.i(0,a) +if(q!=null)return q.c +s=r.x.i(0,a) +return s==null?null:s.b}, +$S:1197} +A.byu.prototype={ +$1(a){return a!=null}, +$S:1198} +A.byv.prototype={ +$2(a,b){if(b.d>a.d)return b +return a}, +$S:1199} +A.byw.prototype={ +$0(){var s=this.a +return new A.xt(s,s,this.b,!0)}, +$S:391} +A.byz.prototype={ +$1(a){var s=a.e +s===$&&A.b() +if(s===this.b)this.a.a=!0}, +$S:111} +A.byA.prototype={ +$1(a){var s,r={},q=a.e +q===$&&A.b() +s=this.a +if(q===s){r.a=!0 +a.ae7(new A.byy(r,s,this.b)) +if(r.a)this.c.B(0,a)}}, +$S:111} +A.byy.prototype={ +$1(a){var s=a.e +s===$&&A.b() +if(s===this.b&&!this.c.p(0,a))this.a.a=!1}, +$S:111} +A.byB.prototype={ +$1(a){}, +$S:238} +A.aoV.prototype={} +A.dL.prototype={ +gab2(){var s=this.x +s=s==null?null:s.length!==0 +return s===!0||this.y.length!==0}, +C(a){var s=this,r=s.fx,q=new A.jt(a,A.z(s).h("jt")) +s.fx=q +if(s.fr)s.ap9(q,r)}, +gt4(){var s=this.fx +if(s==null)throw A.d(A.a0("Tried to read the state of an uninitialized provider")) +return s.aec(new A.byP(this),A.dvX())}, +CJ(){var s=this +s.dx=!0 +s.awp() +s.fx.ww(0,new A.byN(s),new A.byO(s))}, +cI(a,b){this.d=b}, +bz1(){var s,r=this +if(r.CW)return +r.CW=!0 +r.zY() +r.NR() +s=r.e +s===$&&A.b() +s=s.gIH() +s.d.push(r) +s.arl() +r.I8(new A.byL(),new A.byM())}, +wi(a){var s=this +s.aoJ() +if(s.CW){s.CW=!1 +s.apY()}}, +aoJ(){if(!this.cx)return +this.cx=!1 +this.ae7(new A.byE())}, +apY(){var s,r,q,p=this,o=p.r=p.f +p.f=A.hg(null,null,null,t.qB,t.K) +s=p.fx +p.awp() +r=p.fx +if(r!=s){r.toString +p.ap9(r,s)}for(r=o.gep(o),r=r.gaz(r);r.t();){q=r.gK(r).a +B.b.F(q.y,p) +q.a4Q()}p.r=null}, +awp(){var s,r,q,p=this,o=p.cy +p.fr=p.cy=!1 +try{p.dx=!0 +p.a8S(0,o)}catch(q){s=A.ag(q) +r=A.aD(q) +p.fx=new A.ko(s,r,A.z(p).h("ko"))}finally{p.fr=!0}}, +ap9(a,b){var s,r,q,p,o,n,m,l=this,k=b==null,j=k?null:b.gAs() +a.ww(0,new A.byF(l,j),new A.byG(l)) +if(!k)if(b.gN9())if(a.gN9()){k=j==null?A.z(l).h("dL.0").a(j):j +k=!l.ae2(k,a.gt4())}else k=!1 +else k=!1 +else k=!1 +if(k)return +k=l.x +if(k==null)s=null +else s=J.n8(k.slice(0),A.X(k).c) +a.ww(0,new A.byH(l,s,j),new A.byI(l,s)) +for(k=l.y,r=0;r").b(a))return a.UO(0,q,new A.byQ(q,b),!1,q.gb9j(),new A.byR(q)).fn(0) +s=q.e +s===$&&A.b() +r=s.D0(a,b) +q.f.cP(0,r,new A.byS(q,r)) +r.wi(0) +return r.gt4()}, +D0(a,b){var s=this.e +s===$&&A.b() +return s.D0(a,b)}, +I8(a,b){var s,r,q,p +for(s=this.y,r=0;r")).aE(0,a) +s=this.w +if(s!=null)for(r=0;r)")}} +A.byO.prototype={ +$1(a){}, +$S(){return A.z(this.a).h("bd(ko)")}} +A.byL.prototype={ +$1(a){return a.a4m()}, +$S:111} +A.byM.prototype={ +$1(a){return a.aCs()}, +$S:238} +A.byE.prototype={ +$1(a){return a.wi(0)}, +$S:111} +A.byF.prototype={ +$1(a){}, +$S(){return A.z(this.a).h("bd(jt)")}} +A.byG.prototype={ +$1(a){}, +$S(){return A.z(this.a).h("bd(ko)")}} +A.byH.prototype={ +$1(a){var s,r,q,p,o,n,m=this.b +if(m!=null)for(s=this.c,r=a.a,q=A.z(this.a),p=q.h("dL.0?"),q=q.h("dL.0"),o=0;o)")}} +A.byI.prototype={ +$1(a){var s,r,q,p,o,n,m,l=this.b +if(l!=null)for(s=A.z(this.a).h("Bd"),r=a.a,q=a.b,p=t.K,o=t.Km,n=0;n)")}} +A.byJ.prototype={ +$1(a){}, +$S(){return A.z(this.a).h("bd(jt)")}} +A.byK.prototype={ +$1(a){var s=this.b.gbEC(),r=this.a,q=r.c +q===$&&A.b() +r=r.e +r===$&&A.b() +A.cC0(s,q,a.a,a.b,r)}, +$S(){return A.z(this.a).h("bd(ko)")}} +A.byC.prototype={ +$1(a){return a.a4m()}, +$S:111} +A.byD.prototype={ +$1(a){return a.aCs()}, +$S:238} +A.byQ.prototype={ +$2(a,b){return this.a.a4l()}, +$S(){return this.b.h("~(0?,0)")}} +A.byR.prototype={ +$2(a,b){return this.a.a4l()}, +$S:32} +A.byS.prototype={ +$0(){var s=this.a,r=s.r,q=r==null?null:r.F(0,this.b) +if(q!=null)return q +r=this.b +r.apj() +r.y.push(s) +return new A.S()}, +$S:215} +A.vZ.prototype={ +gaA3(){return null}, +$irL:1, +$iis:1} +A.NG.prototype={} +A.yJ.prototype={ +$1(a){var s=this +return s.a.$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name(new A.bhG(s,a),s.e,a,s.f,s.d,s,s.c)}, +ga9p(){return this.d}} +A.bhG.prototype={ +$1(a){return this.a.b.$2(a,this.b)}, +$S(){return this.a.$ti.h("yJ.3(yJ.0)")}} +A.is.prototype={ +ga9p(){return this.b}} +A.crv.prototype={ +$1(a){var s,r,q=this.a +if(q.B(0,a)&&a.ga9p()!=null){s=a.ga9p() +s.toString +J.iK(s,this)}r=a.gaA3() +if(r!=null&&q.B(0,r)&&r.d!=null){q=r.d +q.toString +J.iK(q,this)}}, +$S:1202} +A.mr.prototype={} +A.rT.prototype={ +a1b(a,b){var s,r=this.a +if(r instanceof A.dL){s=r.w;(s==null?r.w=A.a([],t.Ho):s).push(this)}}, +aO(a){var s,r,q=this +if(q.b)return +q.b=!0 +s=q.a +if(s instanceof A.dL){r=s.w +if(r!=null)B.b.F(r,q)}}} +A.hq.prototype={ +UO(a,b,c,d,e,f){var s,r,q,p +if(f==null)f=$.at.gaAp() +s=A.z(this) +r=s.h("hq.0") +q=b.D0(this,r) +q.wi(0) +q.apj() +s=new A.Bd(new A.byq(this,c),q,f,b,s.h("Bd")) +s.a1b(b,r) +p=q.x;(p==null?q.x=A.a([],t.Ho):p).push(s) +return s}, +dL(a,b){var s=b.D0(this,A.z(this).h("hq.0")) +s.wi(0) +s.NR() +return s.gt4()}, +gv(a){var s=this.e +if(s==null)return A.S.prototype.gv.call(this,0) +return(s.gv(0)^J.ab(this.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.az(b)===A.I(r)&&A.z(r).h("hq").b(b)&&b.e===s&&J.q(b.f,r.f)}, +k(a){var s=this,r=s.e!=null?"("+A.r(s.f)+")":"",q=s.a,p=q!=null?q+":":"" +return p+(A.I(s).k(0)+"#"+B.c.fm(B.d.k9(s.gv(0)&1048575,16),5,"0"))+r}, +$irL:1, +gaA3(){return this.e}} +A.byq.prototype={ +$2(a,b){var s=A.z(this.a) +return this.b.$2(s.h("hq.0?").a(a),s.h("hq.0").a(b))}, +$S:109} +A.Bd.prototype={ +fn(a){var s +if(this.b)throw A.d(A.a0(u.h)) +s=this.d +s.wi(0) +return s.gt4()}, +aO(a){var s,r,q=this +if(!q.b){s=q.d +r=s.x +if(r!=null)B.b.F(r,q) +s.a4Q()}q.a0P(0)}} +A.aAz.prototype={} +A.Yc.prototype={ +fn(a){if(this.b)throw A.d(A.a0(u.h)) +return this.e.$0()}, +aO(a){var s=this +if(!s.b){s.c.aO(0) +s.d.$0()}s.a0P(0)}} +A.Li.prototype={ +UO(a,b,c,d,e,f){var s=this,r=s.a,q=s.$ti,p=b.D0(r,q.c),o=b.H_(r,new A.byT()),n=s.b.$1(p) +r=new A.Yc(o,n.bma(0,c,e,f),new A.byU(s,b),b,q.h("Yc<2>")) +r.a1b(b,q.y[1]) +return r}, +dL(a,b){var s=b.D0(this.a,this.$ti.c) +s.wi(0) +s.NR() +return J.lo(this.b.$1(s))}, +l(a,b){if(b==null)return!1 +return this.$ti.b(b)&&b.a.l(0,this.a)}, +gv(a){return this.a.gv(0)}} +A.byT.prototype={ +$2(a,b){}, +$S:109} +A.byU.prototype={ +$0(){return this.a.dL(0,this.b)}, +$S(){return this.a.$ti.h("2()")}} +A.aC5.prototype={ +gI9(){if(this.b.a!==0)return new A.byV(this) +return A.dss()}, +arl(){var s=this +if(s.e!=null||s.a)return +s.e=new A.aI(new A.ak($.at,t.W),t.gR) +s.bI9(s.gbjm())}, +bjn(){var s=this,r=s.e +if(r==null)return +r.fw(0) +s.bdZ() +s.bdT() +B.b.V(s.d) +B.b.V(s.c) +s.e=null}, +bdZ(){var s,r,q,p +for(s=this.d,r=0;r"))}finally{}}, +bhg(a,b,c,d,e){var s=this,r=s.ary(new A.jt(c,A.z(s).h("jt<1>"))) +if(!a.gN9()||!r.gN9()||!J.q(a.gt4(),r.gt4())){d.$1(r) +r.ww(0,new A.cag(s,b,a),new A.cah(s,e))}}, +UO(a,b,c,d,e,f){var s,r,q,p=this,o={} +o.a=f +s=f==null?o.a=$.at.gaAp():f +r=A.aF("lastSelectedValue") +q=b.aBQ(p.a,new A.can(o,p,r,c),s) +s=A.z(p) +r.b=p.ary(A.cLK(q.gad4(q),s.c)) +o=s.y[1] +s=new A.YD(q,new A.cao(p,r),b,s.h("@<1>").a1(o).h("YD<1,2>")) +s.a1b(b,o) +return s}} +A.cai.prototype={ +$1(a){var s=this.a +return new A.jt(s.b.$1(a.a),A.z(s).h("jt<2>"))}, +$S(){return A.z(this.a).h("Uq<2>(jt<1>)")}} +A.caj.prototype={ +$1(a){return new A.ko(a.a,a.b,A.z(this.a).h("ko<2>"))}, +$S(){return A.z(this.a).h("Uq<2>(ko<1>)")}} +A.cag.prototype={ +$1(a){this.b.$2(this.c.gAs(),a.a)}, +$S(){return A.z(this.a).h("bd(jt<2>)")}} +A.cah.prototype={ +$1(a){return this.b.$2(a.a,a.b)}, +$S(){return A.z(this.a).h("~(ko<2>)")}} +A.can.prototype={ +$2(a,b){var s=this,r=s.b,q=s.c,p=q.aX(),o=s.a.a +o.toString +r.bhg(p,s.d,b,new A.cam(r,q),o)}, +$S(){return A.z(this.b).h("~(1?,1)")}} +A.cam.prototype={ +$1(a){return this.b.b=a}, +$S(){return A.z(this.a).h("~(Uq<2>)")}} +A.cao.prototype={ +$0(){var s=this.a +return J.d19(this.b.aX(),new A.cak(s),new A.cal(s))}, +$S(){return A.z(this.a).h("2()")}} +A.cak.prototype={ +$1(a){return a.a}, +$S(){return A.z(this.a).h("2(jt<2>)")}} +A.cal.prototype={ +$1(a){return A.cUf(a.a,a.b)}, +$S(){return A.z(this.a).h("0&(ko<2>)")}} +A.YD.prototype={ +aO(a){if(!this.b)this.c.aO(0) +this.a0P(0)}, +fn(a){if(this.b)throw A.d(A.a0(u.h)) +this.c.fn(0) +return this.d.$0()}} +A.WU.prototype={} +A.aeE.prototype={} +A.agR.prototype={} +A.agS.prototype={} +A.agT.prototype={} +A.akB.prototype={} +A.alf.prototype={} +A.qX.prototype={} +A.on.prototype={ +gj(a){var s=this.f +if(s==null)throw A.d(A.a0("Trying to read an uninitialized value.")) +return s.gt4()}, +sOH(a,b){var s=this,r=s.f +s.f=b +if(b!=null)b.aec(new A.byZ(s,r),s.gbaA())}} +A.byZ.prototype={ +$1(a){var s=this.b +s=s==null?null:s.gAs() +return this.a.baC(s,a)}, +$S(){return this.a.$ti.h("~(1)")}} +A.akb.prototype={ +bma(a,b,c,d){var s,r,q=this,p=q.$ti,o=new A.qX(b,d,c,p.h("qX<1>")),n=q.a,m=q.b,l=m.length +if(n===l){p=p.h("qX<1>?") +if(n===0){p=A.aK(1,null,!1,p) +q.b=p}else{s=A.aK(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.b8H(q) +break}}, +a4d(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.aK(n,null,!1,h.$ti.h("qX<1>?")) +for(g=h.a,l=h.b,k=0,s=0;s)")}} +A.cmB.prototype={ +$1(a){var s=a.b +return s==null?null:s.$2(this.b,this.c)}, +$S(){return this.a.$ti.h("~(qX<1>)")}} +A.cmE.prototype={ +$1(a){return null}, +$S(){return this.a.$ti.h("~(qX<1>)")}} +A.RT.prototype={} +A.a_o.prototype={ +dv(a){var s=null +return new A.a_p(s,!1,this,A.hg(s,s,s,t.qB,t.K),A.a([],t.HO),this.$ti.h("a_p<1>"))}} +A.a_p.prototype={$iHk:1} +A.a7h.prototype={ +a8S(a,b){var s=this +s.C(s.$ti.h("RT<1>").a(s.d).ay.$1(s))}, +ae2(a,b){return!J.q(a,b)}} +A.acK.prototype={ +zY(){this.a0O()}} +A.afv.prototype={} +A.jt.prototype={ +gN9(){return!0}, +gAs(){return this.a}, +gt4(){return this.a}, +abW(a,b,c){return b.$1(this)}, +ww(a,b,c){return this.abW(0,b,c,t.z)}, +aeb(a,b){return a.$1(this.a)}, +aec(a,b){return this.aeb(a,b,t.z)}, +l(a,b){if(b==null)return!1 +return this.$ti.b(b)&&A.I(b)===A.I(this)&&J.q(b.a,this.a)}, +gv(a){return A.ad(A.I(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)}, +$iUq:1} +A.ko.prototype={ +gN9(){return!1}, +gAs(){return null}, +gt4(){return A.atA(this.a,this.b)}, +abW(a,b,c){return c.$1(this)}, +ww(a,b,c){return this.abW(0,b,c,t.z)}, +aeb(a,b){return b.$2(this.a,this.b)}, +aec(a,b){return this.aeb(a,b,t.z)}, +l(a,b){var s=this +if(b==null)return!1 +return s.$ti.b(b)&&A.I(b)===A.I(s)&&b.b===s.b&&J.q(b.a,s.a)}, +gv(a){return A.ad(A.I(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)}, +$iUq:1} +A.ctZ.prototype={ +$1(a){return a.gaff()==="riverpod"}, +$S:1203} +A.oF.prototype={ +glV(a){return A.hu.prototype.glV.call(this,0)}} +A.cpX.prototype={ +$1(a){return this.a.h("@<0>").a1(this.b).h("Vh<1,2>").a(a).fy}, +$S(){return this.a.h("@<0>").a1(this.b).h("on<1>(dL<2>)")}} +A.YK.prototype={} +A.uy.prototype={ +dv(a){var s=null,r=this.$ti +return new A.Vh(new A.on(A.aK(0,s,!1,r.h("qX<1>?")),r.h("on<1>")),this,A.hg(s,s,s,t.qB,t.K),A.a([],t.HO),r.h("@<1>").a1(r.y[1]).h("Vh<1,2>"))}, +gfd(){var s,r,q=this,p=q.ch +if(p===$){s=q.$ti +r=A.dna(q,s.c,s.y[1]) +p!==$&&A.a_() +q.ch=r +p=r}return p}} +A.Vh.prototype={ +a8S(a,b){var s=this,r=s.$ti,q=A.cLK(new A.bHd(s,r.h("YK<1,2>").a(s.d)),r.c) +s.fy.sOH(0,q) +s.go=J.d0L(q.gt4(),s.gIP(),!0)}, +ae2(a,b){this.fy.f.gt4() +return a==null?b!=null:a!==b}, +zY(){var s,r,q,p=this +p.a0O() +s=p.go +if(s!=null)s.$0() +p.go=null +s=p.fy +r=s.f +q=r==null?null:r.gAs() +if(q!=null)A.dvj(q.gf7()) +s.sOH(0,null)}, +I8(a,b){this.ah5(a,b) +b.$1(this.fy)}, +$ilM:1} +A.bHd.prototype={ +$0(){return this.b.ay.$1(this.a)}, +$S(){return this.a.$ti.h("1()")}} +A.aa5.prototype={} +A.aiT.prototype={} +A.cpW.prototype={ +$1(a){return this.a.h("Ao<0>").a(a).fy}, +$S(){return this.a.h("on>(dL<0>)")}} +A.Oa.prototype={} +A.a_q.prototype={ +asm(a){return this.ay.$1(a)}, +dv(a){var s=null,r=this.$ti,q=r.h("qX>?"),p=r.h("on>") +return new A.a_r(s,!1,new A.on(A.aK(0,s,!1,q),p),new A.on(A.aK(0,s,!1,q),p),this,A.hg(s,s,s,t.qB,t.K),A.a([],t.HO),r.h("a_r<1>"))}} +A.a_r.prototype={$ianq:1} +A.aa6.prototype={ +asm(a){return this.ay.$1(a)}, +dv(a){return A.ddT(this,this.$ti.c)}, +gfd(){var s,r=this,q=r.ch +if(q===$){s=A.cQZ(r,r.$ti.c) +q!==$&&A.a_() +r.ch=s +q=s}return q}} +A.Ao.prototype={ +a8S(a,b){var s=this,r=A.z(s),q=new A.oF(new A.iz(r.h("iz>")),r.h("Oa<1>").a(s.d).asm(s),r.h("oF<1>")) +s.fy.sOH(0,new A.jt(q,r.h("jt>"))) +s.id=q.auX(0,new A.bHg(s),!0)}, +ae2(a,b){return a==null?b!=null:a!==b}, +zY(){var s,r,q=this +q.a0O() +s=q.id +if(s!=null)s.$0() +q.id=null +s=q.fy +r=s.f +if(r!=null){r=r.gAs() +if(r!=null)r.m()}s.sOH(0,null)}, +I8(a,b){this.ah5(a,b) +b.$1(this.go) +b.$1(this.fy)}, +$iAp:1} +A.bHg.prototype={ +$1(a){var s=this.a +s.go.sOH(0,s.fy.f) +s.C(a)}, +$S(){return A.z(this.a).h("~(1)")}} +A.acL.prototype={ +zY(){this.aQQ()}} +A.aiU.prototype={} +A.HQ.prototype={} +A.ba8.prototype={ +$1(a){return this.a.$2(this.b.a(a[0]),this.c.a(a[1]))}, +$S(){return this.d.h("0(x<@>)")}} +A.ba9.prototype={ +$1(a){var s=this +return s.a.$5(s.b.a(a[0]),s.c.a(a[1]),s.d.a(a[2]),s.e.a(a[3]),s.f.a(a[4]))}, +$S(){return this.r.h("0(x<@>)")}} +A.ba3.prototype={ +$0(){var s,r,q,p,o=this,n={} +n.a=n.b=0 +s=o.b +r=o.c +q=o.a +p=o.f +n=A.cJJ(o.d,new A.ba2(q,n,s,o.e,r,new A.ba7(n,s,r),p),p.h("bg<0>"),p.h("oH<0>")) +s.b=A.R(n,!1,n.$ti.h("B.E")) +if(J.h3(s.aX()))r.aO(0) +else q.a=A.aK(J.bn(s.aX()),null,!1,p.h("0?"))}, +$S:0} +A.ba7.prototype={ +$0(){if(++this.a.a===J.bn(this.b.aX()))this.c.aO(0)}, +$S:0} +A.ba2.prototype={ +$2(a,b){var s,r=this,q={} +q.a=!1 +s=r.e +return b.jH(new A.ba1(r.a,q,r.b,a,r.c,r.d,s,r.r),r.f,s.gq4())}, +$S(){return this.r.h("oH<0>(h,bg<0>)")}} +A.ba1.prototype={ +$1(a){var s,r,q,p,o=this,n=o.a,m=n.a +if(m==null)return +m[o.d]=a +m=o.b +if(!m.a){m.a=!0;++o.c.b}if(o.c.b===J.bn(o.e.aX())){s=null +try{n=n.a +n.toString +s=o.f.$1(A.hi(n,o.w))}catch(p){r=A.ag(p) +q=A.aD(p) +o.r.h1(r,q) +return}o.r.B(0,s)}}, +$S(){return this.w.h("~(0)")}} +A.ba4.prototype={ +$0(){return A.de5(this.a.aX())}, +$S:0} +A.ba5.prototype={ +$0(){return A.de6(this.a.aX())}, +$S:0} +A.ba6.prototype={ +$0(){this.a.a=null +return A.de4(this.b.aX())}, +$S:1204} +A.a1I.prototype={ +glb(){return!0}, +cl(a,b,c,d){var s,r,q,p,o=null +try{o=this.a.$0()}catch(q){s=A.ag(q) +r=A.aD(q) +p=A.de7(s,r,this.$ti.c).cl(a,b,c,d) +return p}return o.cl(a,b,c,d)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.T0.prototype={ +cl(a,b,c,d){var s=this.a +return new A.dI(s,A.z(s).h("dI<1>")).cl(a,b,c,d)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.c7i.prototype={ +H(){return"_MissingCase."+this.b}} +A.aHp.prototype={ +k(a){switch(this.a.a){case 0:return"ValueStream has no value. You should check ValueStream.hasValue before accessing ValueStream.value, or use ValueStream.valueOrNull instead." +case 1:return"ValueStream has no error. You should check ValueStream.hasError before accessing ValueStream.error, or use ValueStream.errorOrNull instead."}}} +A.C1.prototype={ +ace(a){var s=this.e +s.b=a +s.a=!0 +return null}, +aCv(a,b){var s=this.e +s.c=new A.atw(a,b) +s.a=!1 +return null}, +gDP(a){return new A.dx(this,this.$ti.h("dx<1>"))}, +gj(a){var s=this.e.b +if(s!==B.aV)return this.$ti.c.a(s) +throw A.d(new A.aHp(B.bzu))}} +A.b6a.prototype={ +$0(){var s,r,q=this,p=q.a,o=p.c +if(o!=null&&!p.a){p=q.b +return new A.aa3(o.a,o.b,q.c.h("aa3<0>")).u3(new A.dw(p,A.z(p).h("dw<1>")))}s=p.b +if(s!==B.aV&&p.a){p=q.b +r=q.c +return new A.aa4(r.a(s),r.h("aa4<0>")).u3(new A.dw(p,A.z(p).h("dw<1>")))}p=q.b +return new A.dw(p,A.z(p).h("dw<1>"))}, +$S(){return this.c.h("bg<0>()")}} +A.Z3.prototype={} +A.dx.prototype={ +glb(){return!0}, +gv(a){return(A.ef(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.dx&&b.a===this.a}, +cl(a,b,c,d){return this.a.cl(a,b,c,d)}, +eB(a){return this.cl(a,null,null,null)}, +rN(a,b){return this.cl(a,null,null,b)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.a7n.prototype={} +A.Mt.prototype={ +gDP(a){return new A.xv(this,A.z(this).h("xv<1>"))}, +h1(a,b){if(this.c)throw A.d(A.a0("You cannot add an error while items are being added from addStream")) +this.a67(a,b)}, +m8(a){return this.h1(a,null)}, +a67(a,b){var s=this.b +if((s.c&4)===0)this.aCv(a,b) +s.h1(a,b)}, +bj1(a){return this.a67(a,null)}, +aCv(a,b){}, +Fj(a,b,c){var s,r=this +if(r.c)throw A.d(A.a0(u.k)) +r.c=!0 +s=new A.ak($.at,t.W) +b.cl(r.gbj_(r),c,new A.bIQ(r,new A.aI(s,t.gR)),r.gbj0()) +return s}, +p_(a,b){return this.Fj(0,b,null)}, +B(a,b){if(this.c)throw A.d(A.a0(u.k)) +this.asq(0,b)}, +asq(a,b){var s=this.b +if((s.c&4)===0)this.ace(b) +s.B(0,b)}, +ace(a){}, +aO(a){if(this.c)throw A.d(A.a0("You cannot close the subject while items are being added from addStream")) +return this.b.aO(0)}, +$ihW:1} +A.bIQ.prototype={ +$0(){var s=this.b +if((s.a.a&30)===0){this.a.c=!1 +s.fw(0)}}, +$S:0} +A.xv.prototype={ +glb(){return!0}, +gv(a){return(A.ef(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.xv&&b.a===this.a}, +cl(a,b,c,d){return this.a.cl(a,b,c,d)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.ace.prototype={ +H(){return"WindowStrategy."+this.b}} +A.WZ.prototype={ +lh(a){var s,r,q=this +q.as=!0 +q.bAS(a,q.goN()) +if(q.Q===0)q.y.B(0,a) +s=q.Q +if(s>0)q.Q=s-1 +s=q.goN() +r=q.r.$1(A.hi(q.y,q.$ti.c)) +if(r)q.adq(s)}, +CL(a,b,c){return this.goN().h1(b,c)}, +O2(){var s,r=this +r.at=!0 +if(r.b===B.yx)return +r.adr(r.goN(),!0) +r.y.V(0) +s=r.ax +if(s!=null)s.ao(0) +r.goN().aO(0)}, +zD(a){var s=this.ax +return s==null?null:s.ao(0)}, +Yt(){}, +aco(a){var s=this.ax +return s==null?null:s.f2(0)}, +acs(a){var s=this.ax +return s==null?null:s.nj(0)}, +bAS(a,b){var s,r=this +switch(r.b.a){case 1:if(r.ax!=null)return +r.ax=r.afY(a,b) +r.ads(a,b) +break +case 2:if(r.ax!=null)return +r.ax=r.bBh(a,b) +r.ads(a,b) +break +case 0:s=r.ax +if(s!=null)s.ao(0) +r.ax=r.afY(a,b) +r.ads(a,b) +break +case 3:break}}, +afY(a,b){var s=this.awq(a,b) +return new A.ajm(1,s,A.z(s).h("ajm")).jH(null,new A.bSp(this,b),b.gq4())}, +bBh(a,b){return this.awq(a,b).jH(new A.bSn(this,b),new A.bSo(this,b),b.gq4())}, +awq(a,b){var s=this.ax +if(s!=null)s.ao(0) +return this.c.$1(a)}, +ads(a,b){}, +adr(a,b){var s,r,q,p=this +if(b&&p.b===B.yx){p.y.V(0) +s=p.ax +if(s!=null)s.ao(0) +p.ax=null +a.aO(0) +return}s=!b +if(s){r=p.b +r=r===B.yx||r===B.by3}else r=!0 +if(r){r=p.ax +if(r!=null)r.ao(0) +p.ax=null}if(b&&!0)return +if(p.as)r=!p.y.gad(0)||!1 +else r=!1 +if(r){r=p.y +a.B(0,p.e.$1(A.hi(r,p.$ti.c))) +if(s&&p.f>0){s=p.f +q=r.b +p.Q=s>q?s-q:0 +if(s")) +q.a=q +q.b=q +return new A.WZ(s.a,s.b,null,s.d,s.f,s.r,!0,!1,new A.yB(q,r.h("yB")),null,r.h("@").a1(r.h("nP.T")).h("WZ<1,2>"))}, +$S(){return this.a.$ti.h("WZ()")}} +A.a6K.prototype={} +A.bwh.prototype={ +$1(a){return new A.T0(A.lN(null,null,null,!1,t.H),t.yA)}, +$S(){return this.a.h("T0<~>(0)")}} +A.bwi.prototype={ +$1(a){return a}, +$S(){return this.a.h("x<0>(x<0>)")}} +A.bwj.prototype={ +$1(a){return a.length===2}, +$S(){return this.a.h("A(x<0>)")}} +A.YJ.prototype={ +lh(a){return this.goN().B(0,a)}, +CL(a,b,c){return this.goN().h1(b,c)}, +O2(){return this.goN().aO(0)}, +zD(a){}, +Yt(){this.goN().B(0,this.b)}, +aco(a){}, +acs(a){}} +A.aa4.prototype={ +u3(a){var s=this.$ti.c +return A.cBt(a,new A.bHc(this),s,s)}} +A.bHc.prototype={ +$0(){var s=this.a +return new A.YJ(s.a,s.$ti.h("YJ<1>"))}, +$S(){return this.a.$ti.h("YJ<1>()")}} +A.YI.prototype={ +lh(a){return this.goN().B(0,a)}, +CL(a,b,c){return this.goN().h1(b,c)}, +O2(){return this.goN().aO(0)}, +zD(a){}, +Yt(){this.goN().h1(this.b,this.c)}, +aco(a){}, +acs(a){}} +A.aa3.prototype={ +u3(a){var s=this.$ti.c +return A.cBt(a,new A.bHb(this),s,s)}} +A.bHb.prototype={ +$0(){var s=this.a +return new A.YI(s.a,s.b,s.$ti.h("YI<1>"))}, +$S(){return this.a.$ti.h("YI<1>()")}} +A.bZ2.prototype={ +k(a){return"<>"}} +A.atw.prototype={ +k(a){return"ErrorAndStackTrace{error: "+A.r(this.a)+", stacktrace: "+A.r(this.b)+"}"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.atw&&A.I(r)===A.I(b)&&J.q(r.a,b.a)&&r.b==b.b +else s=!0 +return s}, +gv(a){return(J.ab(this.a)^J.ab(this.b))>>>0}} +A.a3y.prototype={ +goN(){var s=this.a +return s==null?A.C(A.a0("Must call setSink(sink) before accessing!")):s}} +A.cpb.prototype={ +$1(a){var s={},r=this.a.$0() +r.a=new A.XU(a,this.c.h("XU<0>")) +s.a=null +s.b=!1 +r.Yt() +new A.cpc(s,this.b,r).$0() +a.r=new A.cpa(s,r)}, +$S(){return this.c.h("~(azS<0>)")}} +A.cpc.prototype={ +$1(a){var s,r,q,p=this.a +if(p.b)return +s=this.c +r=s.gYl() +q=s.gHc(s) +p.a=this.b.jH(r,s.gYp(),q)}, +$0(){return this.$1(null)}, +$S:394} +A.cpa.prototype={ +$0(){var s,r,q=this.a +q.b=!0 +s=q.a +r=s==null?null:s.ao(0) +q.a=null +return A.cUn(r,this.b.zD(0))}, +$S:0} +A.cpf.prototype={ +$0(){return this.a.$0()}, +$S(){return this.b.h("@<0>").a1(this.c).h("a3y<1,2>()")}} +A.cpg.prototype={ +$0(){var s=this,r=s.c,q=s.d +r.m0().a=q +r.m0().Yt() +new A.cpi(s.a,s.b,r,q).$0()}, +$S:0} +A.cpi.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.m0().gYl() +p=J.d1_(r.m0()) +n.a=s.jH(q,r.m0().gYp(),p) +if(!s.glb()){s=o.d +s.saCH(0,new A.cpd(n,r)) +s.saCJ(0,new A.cpe(n,r))}}, +$0(){return this.$1(null)}, +$S:394} +A.cpd.prototype={ +$0(){this.a.a.f2(0) +J.d1d(this.b.m0())}, +$S:0} +A.cpe.prototype={ +$0(){this.a.a.nj(0) +J.d1e(this.b.m0())}, +$S:0} +A.cph.prototype={ +$0(){var s,r,q=this.a +q.b=!0 +s=q.a +r=s==null?null:s.ao(0) +q.a=null +return A.cUn(r,J.d1b(this.b.m0()))}, +$S:0} +A.XU.prototype={ +B(a,b){return this.a.av7(b)}, +h1(a,b){return this.a.a75(a,b)}, +m8(a){return this.h1(a,null)}, +aO(a){return this.a.a8e()}, +$ihW:1} +A.bDE.prototype={ +LN(a,b,c,d){return this.bpR(a,b,c,d)}, +bpR(a,b,c,d){var s=0,r=A.p(t.E),q,p=this,o,n +var $async$LN=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:s=3 +return A.i(p.abT(a,new A.aG(0,1/0,0,1/0),b,c,d),$async$LN) +case 3:o=f +s=4 +return A.i(o.adB(B.Eh),$async$LN) +case 4:n=f +o.m() +q=A.dF(n.buffer,0,null) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$LN,r)}, +abT(a,b,c,d,e){return this.bAu(a,b,c,d,e)}, +bAu(a,b,c,d,e){var s=0,r=A.p(t.lu),q,p=[],o,n,m,l,k,j,i +var $async$abT=A.l(function(f,g){if(f===1)return A.m(g,r) +while(true)switch(s){case 0:j=A.cyr(null,null,null) +i=new A.aRn(b,null,A.aw(t.T)) +i.aQ() +j.sOJ(i) +o=i +n=A.cvw(A.cwS(),null) +l=t.x +m=A.cyJ(A.a1O(a,B.j),o,"root_render_element_for_size_measurement",l).avD(n) +try{o.a_Z() +j.N1() +k=A.aE0(a,c,d,e,J.d11(o)) +q=k +s=1 +break}finally{k=m +J.er(k).nw(k,A.cyJ(null,o,null,l)) +k.Jk() +n.N_()}case 1:return A.n(q,r)}}) +return A.o($async$abT,r)}} +A.bDF.prototype={ +$0(){this.a.a=!0}, +$S:0} +A.aRn.prototype={ +bJ(){var s=this +s.k1$.d_(s.D,!0) +s.id=s.k1$.gu(0)}} +A.b_T.prototype={ +aA(a){var s +this.ea(a) +s=this.k1$ +if(s!=null)s.aA(a)}, +ar(a){var s +this.e5(0) +s=this.k1$ +if(s!=null)s.ar(0)}} +A.bFx.prototype={ +tn(a,b,c,d){return this.aLZ(a,b,c,d)}, +aLZ(a,a0,a1,a2){var s=0,r=A.p(t.vS),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$tn=A.l(function(a4,a5){if(a4===1){o=a5 +s=p}while(true)switch(s){case 0:d=A.a([],t.E5) +h=0 +case 3:if(!(h<1)){s=5 +break}b=d +s=6 +return A.i(A.bFy(a[h]),$async$tn) +case 6:b.push(a5) +case 4:++h +s=3 +break +case 5:m=null +g={files:d} +m=g +l=null +try{l=A.L(n.b,"canShare",[m])}catch(a3){e=A.ag(a3) +if(t.We.b(e)){k=e +throw A.d(A.dA("Navigator.canShare() is unavailable"))}else throw a3}if(!l)throw A.d(A.dA("Navigator.canShare() is false")) +p=8 +s=11 +return A.i(A.kA(A.L(n.b,"share",[m]),t.X),$async$tn) +case 11:q=B.blA +s=1 +break +p=2 +s=10 +break +case 8:p=7 +c=o +e=A.ag(c) +if(t.lZ.b(e)){j=e +i=j.name +if("AbortError"===i){q=B.blB +s=1 +break}A.r(j.name) +A.r(j.message) +throw A.d(A.dA("Navigator.share() failed: "+A.r(A.aj(j,"message"))))}else throw c +s=10 +break +case 7:s=2 +break +case 10:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$tn,r)}} +A.bsL.prototype={ +tn(a,b,c,d){return this.aLY(a,b,c,d)}, +aLY(a,b,c,d){var s=0,r=A.p(t.vS),q,p=this,o,n,m,l,k,j,i +var $async$tn=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:s=3 +return A.i(p.RW(a),$async$tn) +case 3:m=f +l=t.N +k=J.cz(m) +j=k.fK(m,new A.bsN(),l) +i=A.R(j,!0,A.z(j).h("aa.E")) +k=k.fK(m,new A.bsO(),l) +o=A.a1(["paths",A.R(k,!0,A.z(k).h("aa.E")),"mimeTypes",i],l,t.z) +if(b!=null){k=b.a +o.n(0,"originX",k) +j=b.b +o.n(0,"originY",j) +o.n(0,"originWidth",b.c-k) +o.n(0,"originHeight",b.d-j)}s=4 +return A.i(B.b5N.fi("shareFiles",o,!1,l),$async$tn) +case 4:n=f +if(n==null)n=u.a +q=new A.Mc(n,A.da8(n)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$tn,r)}, +K4(a,b){return this.b23(0,b)}, +b23(a,b){var s=0,r=A.p(t.rx),q,p,o,n +var $async$K4=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=b.c +o===$&&A.b() +s=o.length!==0?3:5 +break +case 3:q=b +s=1 +break +s=4 +break +case 5:n=J +s=6 +return A.i(A.csi(),$async$K4) +case 6:p=n.d10(d) +o=b.a +A.drX(o==null?"octet-stream":o) +s=7 +return A.i(A.asN(p+"/"+B.dJ.v4()).VU(0,!0),$async$K4) +case 7:case 4:case 1:return A.n(q,r)}}) +return A.o($async$K4,r)}, +RW(a){return this.b24(a)}, +b24(a){var s=0,r=A.p(t.Y7),q,p=this +var $async$RW=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(A.ma(new A.O(a,new A.bsM(p),A.X(a).h("O<1,a8>")),!1,t.rx),$async$RW) +case 3:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$RW,r)}} +A.bsN.prototype={ +$1(a){var s=a.a +if(s==null){s=a.c +s===$&&A.b() +s=$.cDD().aC_(s,null) +if(s==null)s="application/octet-stream"}return s}, +$S:395} +A.bsO.prototype={ +$1(a){var s=a.c +s===$&&A.b() +return s}, +$S:395} +A.bsM.prototype={ +$1(a){return this.a.K4(0,a)}, +$S:1207} +A.bFw.prototype={} +A.Mc.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.Mc&&b.a===this.a&&b.b===this.b}, +gv(a){return(B.c.gv(this.a)^A.ef(this.b))>>>0}, +k(a){return"ShareResult(raw: "+this.a+", status: "+this.b.k(0)+")"}} +A.a9u.prototype={ +H(){return"ShareResultStatus."+this.b}} +A.V1.prototype={ +aB(a,b){return J.vj(this.a,b)}, +a5R(a,b,c){A.a5(c,"value") +J.id(this.a,b,c) +return $.cCR().An(a,"flutter."+b,c)}} +A.bsP.prototype={ +An(a,b,c){return this.aLK(a,b,c)}, +aLK(a,b,c){var s=0,r=A.p(t.y),q,p +var $async$An=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=3 +return A.i(B.RB.fi("set"+a,A.a1(["key",b,"value",c],t.N,t.z),!1,t.y),$async$An) +case 3:p=e +p.toString +q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$An,r)}, +A7(a){var s=0,r=A.p(t.nf),q,p,o,n +var $async$A7=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=t.N +o=t.K +s=3 +return A.i(B.RB.Xz("getAll",p,o),$async$A7) +case 3:n=c +q=n==null?A.N(p,o):n +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$A7,r)}} +A.bFI.prototype={} +A.byb.prototype={} +A.bkm.prototype={} +A.bFG.prototype={ +A7(a){var s=0,r=A.p(t.nf),q,p=this +var $async$A7=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=p.a_q(new A.bkm(new A.byb("flutter.",null))) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$A7,r)}, +a_q(a){return this.aIj(a)}, +aIj(a){var s=0,r=A.p(t.nf),q,p=this,o,n,m,l,k,j +var $async$a_q=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:k=a.a +j=A.N(t.N,t.K) +for(o=p.b27(k.a,k.b),n=J.au(o.a),o=new A.i6(n,o.b,o.$ti.h("i6<1>"));o.t();){m=n.gK(n) +l=self.window.localStorage.getItem(m) +l.toString +j.n(0,m,p.aZN(l))}q=j +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a_q,r)}, +An(a,b,c){return this.aLL(a,b,c)}, +aLL(a,b,c){var s=0,r=A.p(t.y),q +var $async$An=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:self.window.localStorage.setItem(b,B.aO.ug(c)) +q=!0 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$An,r)}, +b27(a,b){var s=A.d8U(self.window.localStorage) +return new A.b1(s,new A.bFH(a,b),A.X(s).h("b1<1>"))}, +aZN(a){var s=B.aO.hF(0,a) +if(t.j.b(s))return J.ie(s,t.N) +s.toString +return s}} +A.bFH.prototype={ +$1(a){var s +if(B.c.aC(a,this.a))s=!0 +else s=!1 +return s}, +$S:20} +A.pt.prototype={} +A.b2w.prototype={ +$1(a){return A.a([],t.Oj)}, +$S:1208} +A.a5Q.prototype={ +J(){var s=$.cn.I().gX0()?A.cRQ():A.cRO() +return new A.aRQ(new A.bm(s,$.ae(),t.lw),B.f)}} +A.aRQ.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=t.y,k=n.gc6().dl($.eN.I().gPs(),l),j=n.gc6(),i=$.cn.I().gnm(),h=i.c +if(h===$){s=A.pX(i.a,"/theme/themeColorFromSystem",m,m,l) +i.c!==$&&A.a_() +i.c=s +h=s}r=j.dl(h,t.X7) +if(r==null)r=!0 +j=n.gc6() +i=$.cn.I() +h=i.x +if(h===$){s=A.pX(i.a,"/settings/focusTimetable",m,m,l) +i.x!==$&&A.a_() +i.x=s +h=s}j.H_(h,new A.c7c(n)) +if(r){l=$.aml() +A.bL() +l=l.c +l===$&&A.b() +q=l}else{l=n.gc6().dl($.cn.I().gnm().gaHb(),t._) +if(l==null){l=$.aml() +A.bL() +l=l.c +l===$&&A.b() +q=l}else q=l}l=new A.c7b(q) +h=n.x +if(h===$){s=A.d7A(!1,A.dvh(),"/",$.vh(),n.w) +n.x!==$&&A.a_() +n.x=s +h=s}j=t.L +i=A.a([a.a0(j).x,B.a5Y,B.a62,B.a5U],t.aQ) +p=a.a0(j).f +j=a.a0(j).r.a +j===$&&A.b() +o=n.gc6().dl($.cn.I().gnm().ga_k(),t.YX) +return new A.SC(h,new A.c7d(),"SIT Life",new A.c7e(),l.$1(A.MJ(B.ak,m)),l.$1(A.MJ(B.aN,m)),o,j,i,p.d,!k,B.a5_.brz(A.d9([B.cv,B.bi,B.dc,B.cH,B.dd],t.F)),m)}} +A.c7c.prototype={ +$2(a,b){var s=b===!0?A.cRQ():A.cRO() +this.a.w.sj(0,s)}, +$S:1209} +A.c7b.prototype={ +$1(a){var s=this.a +return a.bsF(s==null?null:A.cFW(a.ay.a,s),B.b6p,B.bfA,null,null,B.bwc)}, +$S:1210} +A.c7e.prototype={ +$1(a){return A.w("appName",null,null)}, +$S:1211} +A.c7d.prototype={ +$2(a,b){return new A.NX(b==null?B.al:b,B.bvR)}, +$S:1212} +A.NX.prototype={ +J(){return new A.aTM(B.f)}} +A.aTM.prototype={ +a8(){this.an() +$.an.xr$.push(new A.ca5(this))}, +c5(){var s,r,q=$.cn.I().gk8().gyj(0) +if(q!=null&&q.a.length!==0){s=q.a +r=this.c +r.toString +A.cTP(new A.ws(s,1,null),r)}this.dH()}, +m(){var s=this.w +if(s!=null)s.ao(0) +$.cuN().t2(0) +this.ap()}, +q(a){return this.a.d}} +A.ca5.prototype={ +$1(a){return this.aHO(a)}, +aHO(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +$.cUv() +p.w=$.cUu().gBr().eB(new A.ca4(p)) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:1213} +A.ca4.prototype={ +$1(a){return this.aHN(a)}, +aHN(a){var s=0,r=A.p(t.H),q,p=this,o,n,m,l +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=p.a +m=n.gc6() +l=$.cCh() +m=m.d8(0,l.gfd(),t.TF) +l=A.R(n.gc6().d8(0,l,t.h_),!0,t.qh) +l.push(new A.aUt(new A.am(Date.now(),!1),a)) +J.eh(m).E7(m,l) +l=$.vh() +o=$.an.U$.z.i(0,l) +if(o==null){s=1 +break}if(o.e==null){s=1 +break}s=3 +return A.i(A.b27(o,a),$async$$1) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:1214} +A.fJ.prototype={ +k(a){return'account:"'+this.a+'", password:"'+this.b+'"'}, +l(a,b){if(b==null)return!1 +return b instanceof A.fJ&&A.I(this)===A.I(b)&&this.a===b.a&&this.b===b.b}, +gv(a){return A.ad(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.aK4.prototype={ +$2$account$password(a,b){var s=J.q(a,B.l)||a==null?this.a.a:A.ax(a) +return new A.fJ(s,J.q(b,B.l)||b==null?this.a.b:A.ax(b))}, +$0(){return this.$2$account$password(B.l,B.l)}, +$1$account(a){return this.$2$account$password(a,B.l)}, +$1$password(a){return this.$2$account$password(B.l,a)}} +A.a16.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.fJ(A.ax(n.i(0,0)),A.ax(n.i(0,1)))}, +eU(a,b,c){var s,r,q +A.a5(2,null) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=2 +A.a5(0,null) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b)}, +gv(a){return B.d.gv(4)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a16&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 4}} +A.u4.prototype={ +H(){return"LoginStatus."+this.b}} +A.a58.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.fU +case 2:return B.w8 +case 3:return B.jo +case 4:return B.Q5 +default:return B.fU}}, +eU(a,b,c){var s=null +switch(c.a){case 0:A.a5(0,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(2,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break +case 2:A.a5(3,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +break +case 3:A.a5(4,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +break}}, +gv(a){return B.d.gv(5)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a58&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 5}} +A.zD.prototype={ +H(){return"OaUserType."+this.b}} +A.a6v.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.e0 +case 1:return B.h1 +case 2:return B.po +default:return B.e0}}, +eU(a,b,c){switch(c.a){case 0:A.a5(0,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break}}, +gv(a){return B.d.gv(6)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a6v&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 6}} +A.HZ.prototype={} +A.Q6.prototype={ +k(a){var s=this.b +if(s==null)return"CredentialsException" +return"CredentialsException: "+this.a.k(0)+" "+s}, +$ibP:1} +A.baZ.prototype={ +gt9(){var s,r=this.a +if(r===$){s=A.pX($.iy.I(),"/oa/credentials",null,null,t.W8) +this.a!==$&&A.a_() +this.a=s +r=s}return r}, +gIj(){var s,r=this.c +if(r===$){s=A.cvt($.iy.I(),"/oa/loginStatus",new A.bb_(),t.xk) +this.c!==$&&A.a_() +this.c=s +r=s}return r}, +gDm(){var s,r=this.d +if(r===$){s=A.pX($.iy.I(),"/oa/userType",null,null,t.pL) +this.d!==$&&A.a_() +this.d=s +r=s}return r}, +ga_e(){var s,r=this.e +if(r===$){s=A.pX($.iy.I(),"/eduEmail/credentials",null,null,t.W8) +this.e!==$&&A.a_() +this.e=s +r=s}return r}} +A.bb_.prototype={ +$0(){return B.fU}, +$S:1215} +A.bcV.prototype={ +$1(a){var s=null +return A.E(this.a,s,s,s,B.e2,s)}, +$S:239} +A.bcQ.prototype={ +$1(a){var s=this +return new A.nM(s.a,new A.k4(s.e,!1,s.d,new A.bcP(a)),null,s.b,s.c,null)}, +$S:397} +A.bcP.prototype={ +$0(){A.cN(this.a,!1).dB(!0)}, +$S:0} +A.bcR.prototype={ +$1(a){var s=null +return A.E(this.a,s,s,s,B.e2,s)}, +$S:239} +A.bcK.prototype={ +$1(a){var s=null +return A.E(this.a,s,s,s,B.e2,s)}, +$S:239} +A.bcN.prototype={ +$1(a){var s=this +return new A.nM(s.a,new A.k4(s.e,!1,s.d,new A.bcL(a)),new A.k4(s.f,!1,s.r,new A.bcM(a)),s.b,s.c,null)}, +$S:397} +A.bcL.prototype={ +$0(){A.cN(this.a,!1).dB(!0)}, +$S:0} +A.bcM.prototype={ +$0(){A.cN(this.a,!1).dB(!1)}, +$S:0} +A.bcU.prototype={ +$1(a){var s=this +return new A.Mm(s.b,s.d,s.e,s.f,s.r,s.c,s.w,s.a,null)}, +$S:1218} +A.bcT.prototype={ +$1(a){var s=this +return new A.Iq(s.e,s.f,s.b,s.c,s.r,s.w,s.x,s.y,s.z,s.a,s.d,null)}, +$S:1219} +A.Mm.prototype={ +J(){return new A.aX4(B.f)}, +bAD(a,b){return this.y.$2(a,b)}} +A.aX4.prototype={ +gIk(){var s,r,q=this.d +if(q===$){s=this.a.w +r=$.ae() +q!==$&&A.a_() +q=this.d=new A.bm(s.as,r,t.Yv)}return q}, +m(){var s=this.gIk() +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s,r,q,p=this,o=null,n=p.a,m=n.d,l=n.w,k=n.c,j=J.d1(k,t.C) +for(s=0;s>") +q=A.R(new A.O(l,new A.cfC(p),q),!0,q.h("aa.E")) +l=q}q=m==null?o:A.hr(p.gIk(),new A.cfD(p,m),t.bo) +return A.cvW(l,q,new A.ba(o,r,n,o))}} +A.cfB.prototype={ +$1(a){this.a.gIk().sj(0,a)}, +$S:12} +A.cfC.prototype={ +$1(a){return new A.hc(this.a.gIk(),new A.cfA(a),null,null,t.er)}, +$S:1220} +A.cfA.prototype={ +$3(a,b,c){return this.a.$2(a,b)}, +$S:1221} +A.cfD.prototype={ +$2(a,b){var s=null,r=this.a,q=r.a.e +q=q==null?s:q.$1(b) +q=(q==null?!0:q)?new A.cfz(r,a):s +r.a.toString +return A.e8(A.E(this.b,s,s,s,A.dH(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),q)}, +$S:398} +A.cfz.prototype={ +$0(){A.cN(this.b,!1).dB(this.a.gIk().a)}, +$S:0} +A.Iq.prototype={ +J(){return new A.aO0(B.f)}, +bAE(a,b){return this.Q.$2(a,b)}, +bAG(a,b){return this.as.$2(a,b)}} +A.aO0.prototype={ +gIl(){var s,r,q=this.d +if(q===$){s=this.a.c.as +r=$.ae() +q!==$&&A.a_() +q=this.d=new A.bm(s,r,t.N9)}return q}, +gIm(){var s,r,q=this.e +if(q===$){s=this.a.d.as +r=$.ae() +q!==$&&A.a_() +q=this.e=new A.bm(s,r,t.N9)}return q}, +m(){var s=this.gIl(),r=$.ae() +s.k3$=r +s.k2$=0 +s=this.gIm() +s.k3$=r +s.k2$=0 +this.ap()}, +q(a){var s,r,q,p,o=this,n=null,m=o.a,l=m.r,k=m.c,j=m.e +m=t.C +s=J.d1(j,m) +for(r=0;r>") +p=A.R(new A.O(k,new A.bYB(o),p),!0,p.h("aa.E")) +k=A.hr(o.gIl(),new A.bYC(o,l),t.S) +return A.cvW(p,k,new A.ba(n,q,m,n))}} +A.bYz.prototype={ +$1(a){this.a.gIl().sj(0,a)}, +$S:12} +A.bYA.prototype={ +$1(a){this.a.gIm().sj(0,a)}, +$S:12} +A.bYB.prototype={ +$1(a){var s=this.a +return A.hr(s.gIl(),new A.bYy(s,a),t.S)}, +$S:1223} +A.bYy.prototype={ +$2(a,b){return A.hr(this.a.gIm(),new A.bYw(this.b,b),t.S)}, +$S:399} +A.bYw.prototype={ +$2(a,b){return this.a.$3(a,this.b,b)}, +$S:43} +A.bYC.prototype={ +$2(a,b){var s=this.a +return A.hr(s.gIm(),new A.bYx(s,b,this.b),t.S)}, +$S:399} +A.bYx.prototype={ +$2(a,b){var s=null,r=this.a,q=r.a.w.$2(this.b,b) +q=(q==null?!0:q)?new A.bYv(r,a):s +r.a.toString +return A.I4(B.C,B.e8,A.E(this.c,s,s,s,A.dH(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),s,B.fv,s,44,q,s,0.4)}, +$S:1225} +A.bYv.prototype={ +$0(){var s=this.a +A.cN(this.b,!1).dB(new A.dZ(s.gIl().a,s.gIm().a))}, +$S:0} +A.bg2.prototype={ +$3(a,b,c){return this.a.$3(a,b,c)}, +$C:"$3", +$R:3, +$S:1226} +A.bg3.prototype={ +$1(a){return this.a.$3(a,this.b,this.c)}, +$S:8} +A.bg7.prototype={ +$1(a){var s=this +return new A.I9(s.a,s.b,s.c,s.d,null)}, +$S:1227} +A.bg5.prototype={ +$1(a){return new A.Hr(this.a,this.b,null)}, +$S:1228} +A.bgb.prototype={ +$1(a){return new A.Ms(this.a,this.b,null)}, +$S:1229} +A.bga.prototype={ +$1(a){return A.dnD(a,new A.bg9(this.a),this.b)}, +$S:8} +A.bg9.prototype={ +$1(a){return A.bEK(J.cw(this.a),null,null)}, +$S:1230} +A.bg8.prototype={ +$1(a){return new A.JD(this.a,this.b,null)}, +$S:1231} +A.bg1.prototype={ +$3(a,b,c){return new A.IB(c,this.a,b,null,this.b.h("IB<0>"))}, +$S(){return this.b.h("IB<0>(u,f?,0)")}} +A.cqa.prototype={ +$0(){A.cN(this.a,!1).dB(!1)}, +$S:0} +A.cqb.prototype={ +$1(a){return this.a.$1(a)}, +$S:8} +A.IB.prototype={ +J(){return new A.aez(B.f,this.$ti.h("aez<1>"))}} +A.aez.prototype={ +gK(a){var s=this.d +return s===$?this.d=this.a.c:s}, +q(a){var s=null +return new A.nM(this.a.e,new A.k4(A.w("submit",s,s),!0,!1,new A.bZc(this,a)),new A.k4(A.w("cancel",s,s),!1,!1,new A.bZd(a)),!1,new A.bZe(this),s)}} +A.bZc.prototype={ +$0(){A.cN(this.b,!1).dB(this.a.gK(0))}, +$S:0} +A.bZd.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.bZe.prototype={ +$1(a){var s=null,r=this.a +return A.e8(A.E(J.cw(r.gK(0)),s,s,s,s,s),new A.bZb(r,a))}, +$S:400} +A.bZb.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m,l +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=q.a +l=m.e +if(l===$){p=m.a +o=Math.max(B.b.c2(p.d,p.c),0) +m.e!==$&&A.a_() +m.e=o +l=o}n=A.atU(l) +n.a3(0,new A.bZ9(m,n)) +s=2 +return A.i(A.asI(q.b,null,n,m.a.d.length,new A.bZa(m),null,null),$async$$0) +case 2:n.m() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bZ9.prototype={ +$0(){var s=this.a,r=s.a.d[t.JP.a(B.b.gcW(this.b.f)).gNy()] +if(r!==s.gK(0))s.C(new A.bZ8(s,r))}, +$S:0} +A.bZ8.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.bZa.prototype={ +$2(a,b){var s=null +return A.E(this.a.a.d[b].k(0),s,s,s,s,s)}, +$S:167} +A.I9.prototype={ +J(){return new A.aNa(B.f)}} +A.aNa.prototype={ +gK(a){var s=this.d +return s===$?this.d=this.a.c:s}, +q(a){var s=null +return new A.nM(this.a.d,new A.k4(A.w("submit",s,s),!0,!1,new A.bX2(this,a)),new A.k4(A.w("cancel",s,s),!1,!1,new A.bX3(a)),!1,new A.bX4(this,a),s)}} +A.bX2.prototype={ +$0(){A.cN(this.b,!1).dB(this.a.gK(0))}, +$S:0} +A.bX3.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.bX4.prototype={ +$1(a){var s=null,r=this.a +return A.e8(A.E(r.gK(0).k(0),s,s,s,s,s),new A.bX1(r,this.b))}, +$S:400} +A.bX1.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.a +n=o.c +s=2 +return A.i(A.amc(q.b,null,o.e,n,o.f,null),$async$$0) +case 2:m=b +if(m!=null)p.C(new A.bX0(p,m)) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bX0.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.JD.prototype={ +J(){return new A.aQq(B.f)}} +A.aQq.prototype={ +gj(a){var s=this.e +return s===$?this.e=this.a.c:s}, +a8(){this.an() +var s=B.d.k(this.a.c) +this.d=new A.eZ(new A.cu(s,B.bz,B.aw),$.ae())}, +m(){var s=this.d +s===$&&A.b() +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s=null +return new A.nM(this.a.d,new A.k4(A.w("submit",s,s),!0,!1,new A.c2V(this,a)),new A.k4(A.w("cancel",s,s),!1,!1,new A.c2W(a)),!1,new A.c2X(this),s)}, +a7E(a){var s=this,r=null,q=A.e8(A.b2(A.bc(a)===B.y?B.DO:B.ayA,r,r,r,r,r,r,r,r,r,r),new A.c2S(s)),p=s.d +p===$&&A.b() +p=A.b2v(r,!1,p,A.a([new A.QX(A.b4("\\d",!0,!1,!1),!0,"")],t.VS),B.bos,r,r,new A.c2T(s),r,r,r) +return A.eq(A.a([q,new A.ba(100,r,p,r),A.e8(A.b2(A.bc(a)===B.y?B.f3:B.f6,r,r,r,r,r,r,r,r,r,r),new A.c2U(s))],t.p),B.t,r,B.o,B.u,r,r,B.x)}} +A.c2V.prototype={ +$0(){A.cN(this.b,!1).dB(this.a.gj(0))}, +$S:0} +A.c2W.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.c2X.prototype={ +$1(a){return this.a.a7E(a)}, +$S:8} +A.c2S.prototype={ +$0(){var s=this.a +s.C(new A.c2R(s))}, +$S:0} +A.c2R.prototype={ +$0(){var s,r=this.a +r.e=r.gj(0)-1 +s=r.d +s===$&&A.b() +s.sce(0,B.d.k(r.gj(0)))}, +$S:0} +A.c2T.prototype={ +$1(a){var s,r=A.cY(a,null) +if(r!=null){s=this.a +s.C(new A.c2Q(s,r))}}, +$S:46} +A.c2Q.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.c2U.prototype={ +$0(){var s=this.a +s.C(new A.c2P(s))}, +$S:0} +A.c2P.prototype={ +$0(){var s,r=this.a +r.e=r.gj(0)+1 +s=r.d +s===$&&A.b() +s.sce(0,B.d.k(r.gj(0)))}, +$S:0} +A.Hr.prototype={ +J(){return new A.aLr(B.f)}} +A.aLr.prototype={ +gj(a){var s=this.d +return s===$?this.d=this.a.c:s}, +q(a){var s=null +return new A.nM(s,new A.k4(A.w("submit",s,s),!0,!1,new A.bSN(this,a)),new A.k4(A.w("cancel",s,s),!1,!1,new A.bSO(a)),!1,new A.bSP(this),s)}} +A.bSN.prototype={ +$0(){A.cN(this.b,!1).dB(this.a.gj(0))}, +$S:0} +A.bSO.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.bSP.prototype={ +$1(a){var s=null,r=this.a,q=r.a.d +return new A.Ox(A.E(q==null?"":q,s,s,s,s,s),A.jy(new A.bSM(r),r.gj(0)),s)}, +$S:1234} +A.bSM.prototype={ +$1(a){var s=this.a +s.C(new A.bSL(s,a))}, +$S:4} +A.bSL.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.Ms.prototype={ +J(){return new A.aXi(B.f)}} +A.aXi.prototype={ +a8(){this.an() +var s=this.a.c +this.d=new A.eZ(new A.cu(s,B.bz,B.aw),$.ae())}, +m(){var s=this.d +s===$&&A.b() +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s=null,r=A.bC(a,s,t.l).w.gnU(0),q=this.a,p=r===B.dw?B.d.aD(q.c.length,30)+1:B.d.aD(q.c.length,100)+1 +return new A.nM(q.d,new A.k4(A.w("submit",s,s),!0,!1,new A.cg6(this,a)),new A.k4(A.w("cancel",s,s),!1,!1,new A.cg7(a)),!1,new A.cg8(this,p),s)}} +A.cg6.prototype={ +$0(){var s=A.cN(this.b,!1),r=this.a.d +r===$&&A.b() +s.dB(r.a.a)}, +$S:0} +A.cg7.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.cg8.prototype={ +$1(a){var s=null,r=this.a.d +r===$&&A.b() +return A.b2v(s,!1,r,s,s,s,this.b,s,s,s,s)}, +$S:1235} +A.t1.prototype={ +J(){return new A.aXl(B.f)}, +bsY(a){return this.e.$1(a)}} +A.aXl.prototype={ +ga_l(){var s=this.d +s===$&&A.b() +return s}, +a8(){var s,r +this.an() +s=this.a.c +r=A.X(s).h("O<1,+$value,name(eZ,f)>") +this.d=A.R(new A.O(s,new A.cgg(),r),!0,r.h("aa.E"))}, +m(){var s,r,q,p +for(s=this.ga_l(),r=s.length,q=0;q") +return A.dd(A.R(new A.O(r,new A.cgb(s),q),!0,q.h("aa.E")),B.t,null,B.o,B.Z)}, +$S:1237} +A.cgb.prototype={ +$1(a){var s=null +return new A.aA(new A.af(0,1,0,1),A.b2v(s,!1,a.a,s,s,a.b,s,s,s,s,B.lZ),s)}, +$S:1238} +A.cgd.prototype={ +$0(){var s,r=A.cN(this.b,!1),q=this.a,p=q.a +p.toString +q=q.ga_l() +s=A.X(q).h("O<1,f>") +r.dB(p.bsY(A.R(new A.O(q,new A.cgc(),s),!0,s.h("aa.E"))))}, +$S:0} +A.cgc.prototype={ +$1(a){return a.a.a.a}, +$S:1239} +A.cge.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.k4.prototype={} +A.nM.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=n.e,k=A.G(a).ch +k=A.Y(227,k.gj(k)>>>16&255,k.gj(k)>>>8&255,k.gj(k)&255) +s=n.c +if(s==null)s=m +else s=A.E(s,m,m,m,A.dH(m,m,n.f?B.d8:m,m,m,m,m,m,m,m,m,m,m,m,B.f1,m,m,!0,m,m,m,m,m,m,m,m),m) +r=n.r.$1(a) +q=A.a([],t.p) +if(l!=null){p=l.a +o=l.c?B.d8:m +q.push(A.nq(!1,A.E(p,m,m,m,A.dH(m,m,o,m,m,m,m,m,m,m,m,m,m,m,l.b?B.f1:m,m,m,!0,m,m,m,m,m,m,m,m),B.jP),B.i,m,!0,m,m,m,m,new A.b2t(l),m,m))}p=n.d +o=p.c?B.d8:m +q.push(A.nq(!1,A.E(p.a,m,m,m,A.dH(m,m,o,m,m,m,m,m,m,m,m,m,m,m,p.b?B.f1:m,m,m,!0,m,m,m,m,m,m,m,m),B.jP),B.i,m,!0,m,m,m,m,new A.b2u(n),m,m)) +return A.b3q(q,B.fW,m,k,m,B.i,r,m,m,B.kP,!1,m,m,m,m,s,m,m)}} +A.b2t.prototype={ +$0(){this.a.d.$0()}, +$S:0} +A.b2u.prototype={ +$0(){this.a.d.d.$0()}, +$S:0} +A.Ox.prototype={ +q(a){var s=null +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,s,s,s,this.c,s,this.f,s)}} +A.Oy.prototype={ +q(a){var s=this,r=null +return A.Av(!0,r,s.r,A.Zp(),s.c,A.md(r,r,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,r,s.d,r,r,r,r,r,r,r,r,s.w,r,r,r,r,r,r,r,r,r,r,r,r,r),!0,r,s.at,s.Q,s.as,!1,s.ax,s.y,r,!1,s.x,r)}} +A.aCa.prototype={ +a7L(a){return B.bp}, +$iwz:1} +A.eW.prototype={ +a7L(a){var s=null,r=A.b2(this.c,s,s,s,s,s,s,s,s,s,s),q=A.G(a).p3.w +q=q==null?s:q.bu(A.G(a).ay.db) +return A.cK4(new A.aA(new A.af(8,0,8,0),A.E(this.a,s,s,s,q,s),s),s,r,this.b,!0,s,s)}, +$iwz:1} +A.aEd.prototype={ +q(a){var s,r=this,q=null +if(r.c)s=A.bc(a)===B.y?B.cd:B.f5 +else s=q +return A.cK4(r.e,q,r.d,new A.bEw(r),!0,q,A.b2(s,q,q,q,q,q,q,q,q,q,q))}} +A.bEw.prototype={ +$0(){this.a.f.$0()}, +$S:0} +A.a7o.prototype={ +a7L(a){var s=null,r=A.G(a).p3.w +r=r==null?s:r.bu(A.G(a).ay.db) +return new A.aEd(this.a,s,A.E(this.b,s,s,s,r,s),this.c,s)}, +$iwz:1} +A.oo.prototype={ +J(){return new A.aTZ(A.hH(!0,null,!0,!0,null,null,!1),B.f)}, +bzw(a){return this.c.$1(a)}} +A.aTZ.prototype={ +m(){this.d.m() +this.ap()}, +q(a){var s=J.dP(this.a.bzw(a),new A.cb6(a),t.C) +return A.cK2(new A.cb7(this),this.d,B.k,!0,null,!0,A.R(s,!0,A.z(s).h("aa.E")),null)}} +A.cb6.prototype={ +$1(a){return a.a7L(this.a)}, +$S:1240} +A.cb7.prototype={ +$3(a,b,c){var s=null +return A.lx(s,!1,s,s,s,s,s,this.a.d,s,s,A.b2(!A.db9()?B.uy:B.al6,s,s,s,s,s,s,s,s,s,s),s,s,s,s,new A.cb5(b),B.L,s,s,s,s,s,s)}, +$S:1241} +A.cb5.prototype={ +$0(){var s=this.a,r=s.a.z.gml() +s=s.a +if(r)s.vB() +else s.SN(0,null)}, +$S:0} +A.bJf.prototype={ +q(a){var s=null,r=A.b2(this.b,s,s,s,s,s,s,s,s,s,s),q=A.G(a).p3.x +if(q==null)q=B.e2 +return new A.aFJ(q,B.dv,new A.bJH(this),r,s,!0)}} +A.bJH.prototype={ +$1(a){var s=0,r=A.p(t.H),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(a.$1(!0),$async$$1) +case 2:q.a.a.$0() +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:1242} +A.uV.prototype={ +q(a){var s=this.e,r=s==null?null:A.a([s.q(a)],t.md) +return new A.aau(r,null,this.c,B.D,this.f)}} +A.BR.prototype={ +q(a){return A.bNA(new A.b3M(),B.cN,B.dM,new A.aP(0,this.c,t.Y),t.i)}} +A.b3M.prototype={ +$3(a,b,c){return A.cxO(b)}, +$S:1243} +A.as3.prototype={ +yA(a){var s=A.ed(0) +return new A.aN2(this.a,B.XT,this.c,s,B.aGb,this.f,null)}} +A.aN2.prototype={ +jJ(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=$.ar().dc(),e=g.c +if(e===B.XT)for(e=g.b,e=A.dy(e,e.r,A.z(e).c),s=b.a,r=b.b,q=c.e,p=e.$ti.c;e.t();){o=e.d +if(o==null)o=p.a(o) +if(o===B.aBq){f.fV(0,s,r) +f.ds(0,s,r+q.b)}else if(o===B.EO){f.fV(0,s,r) +f.ds(0,s+q.a,r)}else if(o===B.aBr){o=s+q.a +f.fV(0,o,r) +f.ds(0,o,r+q.b)}else{o=r+q.b +f.fV(0,s,o) +f.ds(0,s+q.a,o)}}else if(e===B.blx){e=b.a +s=b.b +r=c.e +q=g.e +f.iM(A.qB(e,s,e+r.a,s+r.b,q.c,q.d,q.a,q.b))}else if(e===B.bly){e=b.a +s=b.b +r=c.e +f.q5(new A.W(e,s,e+r.a,s+r.b))}n=f.VF(!1) +m=$.ar().dc() +for(e=n.gaz(n),s=g.f;e.t();){l=e.gK(e) +k=l.gA(l) +for(j=-1,i=0;ik)h=k +if(r===0)m.Lr(0,l.Wn(i,h,!0),B.h)}}e=$.ar().aP() +e.sa6(0,g.d) +e.sbN(0,B.a7) +e.se4(g.r) +a.ey(m,e)}} +A.K0.prototype={ +H(){return"LinePosition."+this.b}} +A.a9t.prototype={ +H(){return"Shape."+this.b}} +A.an9.prototype={ +q(a){var s,r,q,p,o,n,m=this,l=null,k=m.y +if(k==null)k=B.hK +s=A.G(a).p3 +r=A.G(a) +q=A.G(a).y2 +p=A.G(a).ay.a===B.aN?4:2 +r=r.brv(new A.HA(q.a,q.b,q.c,q.d,p,q.f,q.r)) +q=m.c +q=A.xS(B.cW,q==null?B.al:q,B.cl,B.bd,l) +p=s.y +if(p==null)p=l +else{o=A.G(a).ay +n=o.dy +p=p.bu(n==null?o.db:n)}p=A.aX(!1,l,l,l,!0,l,l,l,l,!1,l,l,l,l,l,l,l,l,!1,l,l,m.f,p,l,m.e,s.r,l,l) +o=A.nl(m.w,B.bV,0,8) +n=t.p +o=A.a6B(B.d7,A.a([o,A.nl(k,B.bV,0,0)],n),B.ps,B.x,0,0) +return A.jG(A.dd(A.a([new A.pC(r,q,l),p,A.wE(o,k.length===0?12:8,16,16,0)],n),B.t,l,B.o,B.u),B.k,l,l)}} +A.a0d.prototype={ +H(){return"CardVariant."+this.b}} +A.awP.prototype={ +q(a){var s,r=this,q=new A.aA(new A.af(20,20,20,20),r.c.$1(a),null),p=r.e +if(p!=null)q=A.cyM(q,p) +p=r.f +s=t.p +if(p!=null){s=A.a([q],s) +s.push(r.awe(a,r.d)) +s.push(p) +return A.nk(A.dd(s,B.t,null,B.fV,B.Z))}else{p=A.a([q],s) +p.push(r.awe(a,r.d)) +return A.nk(A.dd(p,B.t,null,B.fV,B.Z))}}, +awe(a,b){var s=null +return new A.aA(new A.af(10,10,10,10),A.nk(A.E(b,s,s,s,A.G(a).p3.r,B.at)),s)}} +A.boI.prototype={ +$1(a){return A.cLL(this.a,A.G(a).ay.b,this.b)}, +$S:1244} +A.asE.prototype={ +aI(a0,a1){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=a1.giu()/2,f=new A.j(a1.a/2,a1.b/2),e=i.e,d=B.e.M(0.25-B.e.M(e,6.283185307179586)/6.283185307179586,1),c=$.ar(),b=c.aP(),a=i.c +a.toString +b.sa6(0,a) +a0.h3(f,g,b) +for(b=i.y,a=i.d,s=0;s>>16&255,a.gj(a)>>>8&255,a.gj(a)&255)) +a0.h3(f,g,r)}r=c.aP() +q=i.w +r.sa6(0,A.G(q).at) +a0.h3(f,g*0.88,r) +r=new A.bcH(f) +p=c.aP() +p.sa6(0,a) +a0.h3(r.$2(e,g-10),20,p) +o=b===0?"":""+b+A.r(new A.bcI(i).$0())+" " +e=A.G(q).p3.b +e.toString +n=A.jT(h,h,h,h,A.cy(h,h,h,e.a8x(a1.giu()*0.15),o+i.z),B.at,B.j,h,1,B.Y,B.a0) +n.qt() +e=f.a +b=n.b +m=b.b +l=f.b +b=b.a.a +n.aI(a0,new A.j(e-m/2,l-b.gdK(b)/2)) +b=new A.bcG(i).$0() +k=A.jT(h,h,h,h,A.cy(h,h,h,A.G(q).p3.z,b),B.at,B.j,h,1,B.Y,B.a0) +k.qt() +b=k.b.b +q=n.b.a.a +q=q.gdK(q) +m=k.b.a.a +k.aI(a0,new A.j(e-b/2,l+q/2-m.gdK(m)/2)) +j=c.aP() +j.sbN(0,B.a7) +j.str(B.jM) +j.sa6(0,A.Y(B.e.aF(76.5),a.gj(a)>>>16&255,a.gj(a)>>>8&255,a.gj(a)&255)) +j.srK(!0) +a=g*0.12 +j.se4(a) +a0.MC(A.jQ(f,g-a/2),-1.5707963267948966,6.282185307179586*d,!1,j) +new A.bcJ(a0,r,g).$1(i.b)}, +hC(a){var s=this +return a.b!==s.b||!J.q(a.c,s.c)||!a.d.l(0,s.d)||a.e!==s.e}} +A.bcH.prototype={ +$2(a,b){return this.a.S(0,new A.j(b*Math.cos(a),-b*Math.sin(a)))}, +$S:1245} +A.bcG.prototype={ +$0(){switch(this.a.Q.a){case 0:return"ms." +case 1:return"sec." +case 2:return"min." +case 3:return"hr."}}, +$S:18} +A.bcI.prototype={ +$0(){switch(this.a.Q.a){case 0:return"s " +case 1:return"m " +case 2:return"h " +case 3:return"d "}}, +$S:18} +A.bcJ.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j=a.length,i=-6.283185307179586/j +for(s=this.a,r=this.b,q=this.c-40,p=1.5707963267948966,o=0;o")) +r=p.x +r.cY() +r=r.f0$ +r.b=!0 +r.a.push(new A.bXJ(p)) +r=p.a +p.at=1.5707963267948966-p.a3d(r.c,r.e)/p.K0(p.a.e)*6.283185307179586 +p.z=p.TB() +p.as=p.Rc()}, +c5(){var s,r=this +r.dH() +s=r.c +s.toString +r.d=A.G(s) +s=r.c +s.toString +A.dS(s,B.an,t.v).toString +s=r.c +s.toString +A.bC(s,null,t.l).toString}, +m(){var s=this.x +s===$&&A.b() +s.m() +this.aTm()}, +ais(a){var s,r,q,p=this.w +p===$&&A.b() +s=p.a +r=p.b.ah(0,s.gj(s)) +q=A.cOd(a,A.cOd(a,r,r+6.283185307179586),r-6.283185307179586) +s=this.r +s===$&&A.b() +s.a=q +s.b=a +s=this.x +s===$&&A.b() +s.sj(0,0) +s.cM(0)}, +a3d(a,b){switch(b.a){case 0:return B.d.aD(a.a,1000) +case 1:return B.d.aD(a.a,1e6) +case 2:return B.d.aD(a.a,6e7) +case 3:return B.d.aD(a.a,36e8)}}, +b2_(a,b){switch(b.a){case 0:return B.d.aD(a.a,1e6) +case 1:return B.d.aD(a.a,6e7) +case 2:return B.d.aD(a.a,36e8) +case 3:return B.d.aD(a.a,864e8)}}, +K0(a){switch(a.a){case 0:return 1000 +case 1:return 60 +case 2:return 60 +case 3:return 24}}, +a3g(a,b){var s=this.a3d(a,b),r=this.K0(b) +return B.e.M(1.5707963267948966-B.d.M(s,r)/r*6.283185307179586,6.283185307179586)}, +a4F(){var s,r=this +r.z=r.TB() +r.as=r.Rc() +s=r.aiP(r.air(r.at)) +r.a.nT(s) +return s}, +aue(){this.C(new A.bXF(this))}, +b5e(a){var s,r,q=this +q.Q=!0 +s=t.Qv.a(q.c.gai()) +r=s==null +q.ax=r?null:s.hZ(a.b) +q.ay=r?null:s.gu(0).nD(B.h) +q.a4F()}, +b5g(a){var s,r,q,p=this,o=p.w +o===$&&A.b() +s=o.a +r=o.b.ah(0,s.gj(s)) +p.ax=p.ax.S(0,a.b) +p.aue() +s=p.w +o=s.a +q=s.b.ah(0,o.gj(o)) +if(q>4.71238898038469&&r<1.5707963267948966)p.at=p.at-(6.283185307179586-q+r) +else{o=q<1.5707963267948966&&r>4.71238898038469 +s=p.at +if(o)p.at=s+(6.283185307179586-r+q) +else p.at=s+(q-r)}p.a4F()}, +TB(){var s=this.a +return this.b2_(s.c,s.e)}, +Rc(){var s=this,r=s.a +return B.d.M(s.a3d(r.c,r.e),s.K0(s.a.e))}, +aiP(a){var s,r=this.K0(this.a.e) +switch(this.a.e.a){case 0:s=B.e.hf(a,r) +return A.cp(0,0,0,B.e.au(B.e.M(a,r)),0,s) +case 1:return A.cp(0,0,0,0,B.e.hf(a,r),B.e.au(B.e.M(a,r))) +case 2:return A.cp(0,B.e.hf(a,r),0,0,B.e.au(B.e.M(a,r)),0) +case 3:return A.cp(B.e.hf(a,r),B.e.au(B.e.M(a,r)),0,0,0,0)}}, +b09(a){switch(this.a.e.a){case 0:return B.d.k(B.d.aD(a.a,1000)) +case 1:return B.d.k(B.d.aD(a.a,1e6)) +case 2:return B.d.k(B.d.aD(a.a,6e7)) +case 3:return B.d.k(B.d.aD(a.a,36e8))}}, +air(a){return(1.5707963267948966-a)/6.283185307179586*this.K0(this.a.e)}, +b5c(a){var s,r=this +r.Q=!1 +r.ay=r.ax=null +s=r.a +r.ais(r.a3g(s.c,s.e))}, +b0b(a){var s,r,q=this,p=t.Qv.a(q.c.gai()),o=p==null +q.ax=o?null:p.hZ(a.a) +q.ay=o?null:p.gu(0).nD(B.h) +q.aue() +q.a4F() +s=q.w +s===$&&A.b() +r=s.a +s.b.ah(0,r.gj(r)) +q.ais(q.a3g(q.aiP(q.air(q.at)),q.a.e)) +q.Q=!1 +q.ay=q.ax=null}, +aWD(a){var s,r,q,p,o,n,m,l=null,k=a.w,j=A.a([],t.Y3) +switch(this.a.e.a){case 0:s=J.d1(10,t.Tu) +for(r=0;r<10;++r)s[r]=new A.aU(1000*(r*100)) +j=s +break +case 1:s=J.d1(12,t.Tu) +for(r=0;r<12;++r)s[r]=new A.aU(1e6*(r*5)) +j=s +break +case 2:s=J.d1(12,t.Tu) +for(r=0;r<12;++r)s[r]=new A.aU(6e7*(r*5)) +j=s +break +case 3:s=J.d1(8,t.Tu) +for(r=0;r<8;++r)s[r]=new A.aU(36e8*(r*3)) +j=s +break}q=A.a([],t.Ap) +for(p=j.length,o=0;o=1.5707963267948966){o=p.w +o===$&&A.b() +s=o.a +if(o.b.ah(0,s.gj(s))<=1.5707963267948966){o=p.w +s=o.a +o=o.b.ah(0,s.gj(s))>=0.1&&p.z===0}else o=!1}else o=!1 +if(o)return +p=p.r +p===$&&A.b() +p.b=p.a=q}, +$S:0} +A.Ir.prototype={ +J(){return new A.a2e(B.f)}} +A.a2e.prototype={ +a8(){this.an() +this.d=this.a.c}, +c5(){this.dH() +var s=this.c +s.toString +s=A.dS(s,B.an,t.v) +s.toString +this.e=s}, +b6R(a){this.C(new A.bej(this,a))}, +b38(){var s=this.c +s.toString +A.cN(s,!1).dB(null)}, +b58(){var s,r=this.c +r.toString +s=this.d +A.cN(r,!1).dB(s)}, +q(a){var s,r,q,p,o=this,n=null,m=A.G(a),l=o.a +l.toString +s=o.d +s.toString +r=A.cFq(a) +q=o.e +q===$&&A.b() +p=A.cwd(n,n,new A.a6z(new A.bek(new A.c_(m.ch,n,n,n,n,n,n,B.U),new A.aA(B.nj,new A.tu(1,new A.aec(s,o.gb6Q(),l.d,n),n),n),new A.a04(r,new A.aoi(A.a([A.nq(!1,A.bv(q.gcb(),n,n,n,n,n,n,n,n,n,n,n,n,n,n),B.i,n,!0,n,n,n,n,o.gb37(),n,n),A.nq(!1,A.bv(o.e.gcc(),n,n,n,n,n,n,n,n,n,n,n,n,n,n),B.i,n,!0,n,n,n,n,o.gb57(),n,n)],t.p),n),n)),n),B.i,n,B.kP,n,n,n) +return new A.pC(m.bry(B.D),p,n)}, +m(){this.ap()}} +A.bej.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.bek.prototype={ +$2(a,b){var s=null,r=t.p,q=A.o1(A.cS(A.a([A.f7(this.b,1,s),this.c],r),B.t,s,B.o,B.Z,s,s,B.x),this.a,B.cB) +switch(b.a){case 0:return new A.ba(328,380,A.cS(A.a([A.f7(q,1,s)],r),B.co,s,B.o,B.Z,s,s,B.x),s) +case 1:return new A.ba(512,304,A.eq(A.a([new A.iO(1,B.c1,q,s)],r),B.co,s,B.o,B.Z,s,s,B.x),s)}}, +$S:1247} +A.ctN.prototype={ +$1(a){var s=this +return new A.Ir(s.a,s.b,s.c,s.d,null)}, +$S:1248} +A.b68.prototype={ +H(){return"BaseUnit."+this.b}} +A.akU.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.a2H.prototype={ +H(){return"EntryActionType."+this.b}} +A.jj.prototype={} +A.Dc.prototype={} +A.a2I.prototype={ +q(a){return this.bnY(a)}, +bnY(a){return new A.e_(new A.bh_(this),null)}, +bnZ(a,b){var s,r,q,p=this,o=null,n=p.e.$1(a),m=t.p,l=A.a([],m) +if(b!=null){s=p.c +r=s?o:b.c +if(s){s=A.bc(a)===B.y?B.cd:B.f5 +s=A.b2(s,A.G(a).ay.b,o,o,o,o,o,o,o,o,o)}else s=A.b2(A.bc(a)===B.y?B.uG:B.uJ,o,o,o,o,o,o,o,o,o,o) +l.push(A.I4(B.C,B.e8,s,o,B.fv,o,44,r,B.L,0.4))}q=A.ly(!1,o,!0,A.wE(A.dd(A.a([n,A.a6B(B.fa,l,B.ps,B.x,0,0)],m),B.a4,o,B.o,B.u),4,12,8,12),o,!0,o,o,o,o,o,o,o,o,o,o,o,o,new A.bgY(p,a),o,o,o,o,o,o,o) +return A.aHQ(q,B.k,o,p.c?B.kp:B.rQ)}, +boM(a,b,c,d){var s,r,q,p,o,n,m=A.a([],t.xQ) +if(d!=null&&!this.c){s=d.c +r=A.bc(a)===B.y?B.cd:B.f5 +m.push(A.cK1(null,B.Rw,s,new A.a46(r),d.a))}for(r=J.au(b);r.t();){q=r.gK(r) +p=q.r +o=q.a +n=q.c +q=q.f +$.alO=$.alO+1 +m.push(new A.qm(p,B.Rw,q,n,new A.a46(o)))}if(c!=null){o=c.a +r=c.c +m.push(A.cK1(c.f,B.b5F,c.r,new A.a46(o),r))}return m}, +bog(a){var s,r,q=this,p=null,o=A.a([],t.p),n=q.r.$1(a),m=q.w.$1(a),l=q.x,k=l==null?p:l.$1(a),j=A.rw(n,new A.bh3()) +if(j!=null){o.push(A.e8(A.E(j.c,p,p,p,p,p),new A.bh4(j,a))) +l=J.cz(n) +l.wW(n,new A.bh5()) +if(m!=null&&!q.c){s=m.a +r=A.bc(a)===B.y?B.cd:B.f5 +l.eu(n,0,new A.jj(r,s,B.hx,!0,p,m.c))}}else if(m!=null&&!q.c)o.push(A.e8(A.E(m.a,p,p,p,p,p),new A.bh6(m,a))) +o.push(new A.oo(new A.bh7(n,a,k),p)) +return o}} +A.bh_.prototype={ +$1(a){var s=this.a,r=s.r.$1(a),q=s.x,p=q==null?null:q.$1(a) +return A.d3C(s.bnZ(a,s.w.$1(a)),new A.bgZ(s,a,r,p))}, +$S:1250} +A.bgZ.prototype={ +$1(a){var s=this,r=s.a,q=s.b +return A.da_(r.boM(q,s.c,s.d,r.w.$1(q)))}, +$S:1251} +A.bgY.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.b +s=2 +return A.i(A.fo(p,new A.bgX(q.a,p),!0,!1,t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bgX.prototype={ +$1(a){var s=this.a +return s.f.$2(this.b,s.gbof())}, +$S:8} +A.bh3.prototype={ +$1(a){return a.d===B.kQ}, +$S:402} +A.bh4.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.a +if(n.e){o=p.b +if(o.e==null){s=1 +break}A.cN(o,!1).fD()}s=3 +return A.i(n.r.$0(),$async$$0) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bh5.prototype={ +$1(a){return a.d!==B.kQ}, +$S:402} +A.bh6.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(p.a.c.$0(),$async$$0) +case 3:o=p.b +if(o.e==null){s=1 +break}A.cN(o,!1).fD() +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bh7.prototype={ +$1(a){var s,r,q,p=this.b,o=t.su +o=A.R(J.dP(this.a,new A.bh1(p),o),!0,o) +s=this.c +if(s!=null){r=s.c +q=A.bc(p)===B.y?B.cs:B.cF +B.b.L(o,A.a([B.kl,new A.eW(r,new A.bh2(s,p),q)],t.iT))}return o}, +$S:58} +A.bh1.prototype={ +$1(a){return new A.eW(a.c,new A.bh0(a,this.a),a.a)}, +$S:1254} +A.bh0.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.a +if(n.e){o=p.b +if(o.e==null){s=1 +break}A.cN(o,!1).fD()}s=3 +return A.i(n.r.$0(),$async$$0) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bh2.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(p.a.r.$0(),$async$$0) +case 3:o=p.b +if(o.e==null){s=1 +break}A.cN(o,!1).fD() +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.ZV.prototype={ +J(){return new A.an0(null,null,B.f)}} +A.an0.prototype={ +a8(){var s,r=this +r.an() +s=r.a +r.d=s.ok +s=s.k3 +r.e=s!==!1 +r.f=!1 +r.r=A.bQ(null,B.ez,null,1,null,r)}, +m(){if(this.c!=null){var s=this.r +s===$&&A.b() +s.m() +this.aRp()}}, +q(a){var s,r,q=this,p=null,o=q.a,n=o.a,m=o.at,l=o.cx,k=o.dx +o=o.dy +q.f.toString +s=q.bkg() +r=q.a +s=A.aX(!1,p,p,!1,!0,p,p,p,p,!1,n,m,p,p,p,p,p,new A.b3J(q),l===!0,p,p,k,p,p,o,p,s,r.fy) +return A.cS(A.a([s,A.K4(p,new A.b3K(q),r.c.length,B.L,B.pn,B.v,!0)],t.p),B.a4,p,B.o,B.Z,p,p,B.x)}, +bkg(){var s,r,q=this.a.fx +if(q==null)q=B.azO +s=this.e +s.toString +if(s){s=t.Y +r=this.r +r===$&&A.b() +return A.aDK(B.C,q,null,new A.aB(r,new A.aP(0,0.5,s),s.h("aB")))}else return q}} +A.b3J.prototype={ +$0(){var s=this.a +s.C(new A.b3I(s))}, +$S:0} +A.b3I.prototype={ +$0(){var s=this.a,r=s.d +r===$&&A.b() +if(r){s.d=!1 +s=s.r +s===$&&A.b() +s.eI(0)}else{s.d=!0 +s=s.r +s===$&&A.b() +s.cM(0)}}, +$S:0} +A.b3K.prototype={ +$2(a,b){var s=this.a,r=s.a +r=r.c[b] +s=s.d +s===$&&A.b() +return new A.H7(r,B.al,s?B.Cp:B.tw,B.ez,B.H,B.cl,null)}, +$S:1255} +A.acB.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.aOM.prototype={ +H(){return"_FABType."+this.b}} +A.OS.prototype={ +J(){return new A.acM(B.f)}} +A.acM.prototype={ +a8(){this.an() +this.a.c.a3(0,this.gaCK())}, +m(){this.a.c.O(0,this.gaCK()) +this.ap()}, +bCG(){var s=this,r=B.b.gP(s.a.c.f).gDk() +if(r===B.fg){if(!s.d)s.C(new A.bSd(s))}else if(r===B.ia)if(s.d)s.C(new A.bSe(s))}, +q(a){var s,r,q=null,p=this.a,o=this.d +switch(p.r.a){case 3:s=p.e +r=p.f +p=p.d +p.toString +r=A.cIl(s,p,r) +p=r +break +case 0:s=p.f +s=A.cIk(p.e,!1,s) +p=s +break +case 1:s=p.f +s=new A.yM(p.e,s,q,!1,B.a_q,q,q) +p=s +break +case 2:s=p.f +s=new A.yM(p.e,s,q,!1,B.bza,q,q) +p=s +break +default:p=q}o=o?B.h:B.RZ +return A.cvk(p,new A.o7(B.cl),B.aA,o)}} +A.bSd.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.bSe.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.rs.prototype={ +J(){return new A.aPN(B.f)}, +by3(a,b,c,d){return this.e.$4(a,b,c,d)}} +A.aPN.prototype={ +gGl(a){var s=this.d +return s===$?this.d=this.a.c:s}, +q(a){var s,r,q=this,p=null,o=q.a +o.toString +s=q.gGl(0) +r=q.gGl(0)?B.azu:B.azR +r=A.a0c(!0,o.by3(a,s,new A.c1v(q),r),B.k,p,p,p,p,p,p,p) +if(!q.gGl(0))o=B.bmN +else{o=q.a +o=new A.pu(o.f,o.d,!0,!0,!0,0,A.Ou(),p)}return new A.azR(!0,A.a([new A.aEW(r,p),new A.a9O(B.CN,B.cl,A.Fm(o),p)],t.p),p)}} +A.c1v.prototype={ +$0(){var s=this.a +s.C(new A.c1u(s))}, +$S:0} +A.c1u.prototype={ +$0(){var s=this.a +s.d=!s.gGl(0)}, +$S:0} +A.a2d.prototype={ +q(a){var s,r=null,q=this.d,p=this.e,o=p*0.25,n=A.a([new A.ba(p,p,A.b2(this.c,r,r,r,r,r,r,r,p,r,r),r)],t.yU) +if(q!=null){s=o*0.1 +n.push(A.bCd(A.jG(new A.aA(new A.af(s,s,s,s),new A.ba(o,o,A.b2(q,r,r,r,r,r,r,r,o,r,r),r),r),r,r,r),B.hk))}return new A.ba(p,p,A.a8y(n),r)}} +A.asA.prototype={ +q(a){var s,r=this,q=null,p=r.d,o=A.w("copy",q,q),n=p==null +if(!n){s=A.t5(q,q,q) +s.bU=new A.bcx(r,a,p)}else s=q +o=A.cy(q,q,s,q,o) +s=A.E(r.c,q,q,q,q,q) +n=n?q:A.E(p,q,q,q,q,q) +return A.FH(A.aX(!1,q,q,q,!0,q,q,q,q,!1,q,r.e,q,q,q,q,q,q,!1,q,q,n,q,q,s,q,r.f,B.ip),q,q,q,q,o,q,B.qo,0)}} +A.bcx.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.qK(q.b,null,A.E(A.w("copyTip",A.a([q.a.c],t.s),null),null,null,null,null,null),B.aW) +s=2 +return A.i(A.p4(new A.mV(q.c)),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.Eh.prototype={ +aKy(a,b){var s=this,r=s.b.length +if(b>=r)return +if(!B.b.p(s.a,b)){B.b.B(s.a,b) +s.ab()}}, +bHu(a){var s=this,r=s.b.length +if(a>=r)return +if(B.b.p(s.a,a)){B.b.F(s.a,a) +s.ab()}}, +bH5(a,b){var s,r=this,q=r.b.length +if(b>=q)return +s=B.b.p(r.a,b) +if(!s||!1){if(!s){B.b.B(r.a,b) +r.ab()}}else if(s){B.b.F(r.a,b) +r.ab()}}, +aJh(){var s=this.a,r=A.X(s).h("@<1>").a1(this.$ti.c).h("O<1,2>") +return A.R(new A.O(s,new A.buc(this),r),!0,r.h("aa.E"))}, +bqe(){if(B.b.ef(this.a,new A.bub())){B.b.V(this.a) +this.ab()}}, +bz3(){var s,r,q,p=this,o=p.c +o===$&&A.b() +s=J.d1(o,t.S) +for(r=0;r"))}} +A.XV.prototype={ +bca(){var s,r=this.a.d,q=this.e +q===$&&A.b() +s=q.a +q=q.aJh() +r.$2(s,new A.ek(q,A.X(q).h("@<1>").a1(this.$ti.c).h("ek<1,2>")))}, +akk(a){var s=a.f,r=A.X(s).h("O<1,h>") +return A.R(new A.O(s,new A.c7z(),r),!0,r.h("aa.E"))}, +a8(){var s,r,q=this +q.an() +s=q.a +r=s.e +q.e=r +q.d=q.akk(s) +s=q.e +r=q.a.f +s.b=r +s.c=r.length +s.a3(0,q.gapn())}, +m(){var s=this.e +s===$&&A.b() +s.O(0,this.gapn()) +this.ap()}, +b1(a){var s,r,q=this +q.bc(a) +A.fk().$1("didUpdateWidget GreatMultiselect") +q.a.toString +q.baf(a) +s=q.e +s===$&&A.b() +r=q.a.f +s.b=r +s.c=r.length}, +q(a){var s,r +A.fk().$1("build GreatMultiselect") +s=this.a +s.toString +r=this.e +r===$&&A.b() +r=A.dif(s.c,r) +return r}, +baf(a){var s,r,q,p,o=this,n=o.a +n.toString +s=o.akk(n) +n=o.e +n===$&&A.b() +n=n.a +r=A.X(n).h("O<1,h>") +q=A.R(new A.O(n,new A.c7A(o),r),!0,r.h("aa.E")) +p=A.a([],t.t) +new A.l_(s,A.X(s).h("l_<1>")).aE(0,new A.c7B(q,p)) +o.e.a=p +o.d=s}} +A.c7z.prototype={ +$1(a){return J.ab(a)}, +$S:404} +A.c7A.prototype={ +$1(a){var s=this.a.d +s===$&&A.b() +return s[a]}, +$S:36} +A.c7B.prototype={ +$2(a,b){if(B.b.p(this.a,b))this.b.push(a)}, +$S:98} +A.afi.prototype={} +A.rM.prototype={ +q(a){var s=this,r=null +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,s.e,r,r,r,r,r,new A.bw9(s,a),!1,r,r,s.d,r,r,s.c,r,A.b2(A.bc(a)===B.y?B.iY:B.nJ,r,r,r,r,r,r,r,r,r,r),r)}} +A.bw9.prototype={ +$0(){A.cc(this.b).fg(this.a.f,null,t.X)}, +$S:0} +A.As.prototype={ +q(a){var s=this.c,r=A.X(s).h("O<1,vy>") +return A.nl(A.R(new A.O(s,new A.bKt(A.G(a).p3),r),!0,r.h("aa.E")),B.bV,0,4)}} +A.bKt.prototype={ +$1(a){var s=null +return A.cFJ(s,4,A.E(a,s,s,s,s,s),this.a.Q,B.L)}, +$S:1257} +A.kH.prototype={ +H(){return"Campus."+this.b}} +A.a0a.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.cm +case 1:return B.ko +default:return B.cm}}, +eU(a,b,c){switch(c.a){case 0:A.a5(0,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break}}, +gv(a){return B.d.gv(3)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0a&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 3}} +A.xV.prototype={ +H(){return"AppPlatform."+this.b}} +A.anb.prototype={} +A.a3B.prototype={ +J(){return new A.aPw(B.f)}} +A.aPw.prototype={ +q(a){return A.cKt("/2048",A.w("game.2048.title",null,null),$.b2A())}} +A.p_.prototype={ +adG(){var s,r,q,p=J.cxD(16,t.S) +for(s=0;s<16;++s)p[s]=-1 +for(r=J.au(this.c);r.t();){q=r.gK(r) +p[q.c]=q.b}return new A.A8(this.a,p)}} +A.acv.prototype={ +$5$best$over$score$tiles$won(a,b,c,d,e){var s=this,r=J.q(c,B.l)||c==null?s.a.a:A.bZ(c),q=J.q(a,B.l)||a==null?s.a.b:A.bZ(a),p=J.q(d,B.l)||d==null?s.a.c:t.GO.a(d),o=J.q(b,B.l)||b==null?s.a.d:A.j2(b) +return new A.p_(r,q,p,o,J.q(e,B.l)||e==null?s.a.e:A.j2(e))}, +$0(){return this.$5$best$over$score$tiles$won(B.l,B.l,B.l,B.l,B.l)}, +$1$tiles(a){return this.$5$best$over$score$tiles$won(B.l,B.l,B.l,a,B.l)}, +$3$best$score$tiles(a,b,c){return this.$5$best$over$score$tiles$won(a,B.l,b,c,B.l)}, +$3$over$tiles$won(a,b,c){return this.$5$best$over$score$tiles$won(B.l,a,B.l,b,c)}} +A.uL.prototype={ +aJ_(a){var s,r=this.d +if(r==null)return null +s=B.e.dO((r+1)/4) +return(s-1)*a+12*s}, +aIZ(a){var s,r=this.d +if(r==null)return null +s=r-(B.e.dO((r+1)/4)*4-4) +return s*a+12*(s+1)}, +eZ(){var s=this +return A.a1(["id",s.a,"value",s.b,"index",s.c,"nextIndex",s.d,"merged",s.e],t.N,t.z)}} +A.Ns.prototype={ +$4$index$merged$nextIndex$value(a,b,c,d){var s=this.a,r=J.q(d,B.l)||d==null?s.b:A.bZ(d),q=J.q(a,B.l)||a==null?s.c:A.bZ(a),p=J.q(c,B.l)?s.d:A.fO(c),o=J.q(b,B.l)||b==null?s.e:A.j2(b) +return new A.uL(s.a,r,q,p,o)}, +$0(){return this.$4$index$merged$nextIndex$value(B.l,B.l,B.l,B.l)}, +$1$nextIndex(a){return this.$4$index$merged$nextIndex$value(B.l,B.l,a,B.l)}, +$1$merged(a){return this.$4$index$merged$nextIndex$value(B.l,a,B.l,B.l)}} +A.a3A.prototype={ +J(){var s=null +return new A.aPA(A.hH(!0,s,!0,!0,s,s,!1),s,s,B.f)}} +A.aPA.prototype={ +gEL(){var s,r,q=this,p=q.w +if(p===$){s=A.bQ(null,B.b1,null,1,null,q) +s.cY() +r=s.f0$ +r.b=!0 +r.a.push(new A.c0U(q)) +q.w!==$&&A.a_() +q.w=s +p=s}return p}, +gaoS(){var s,r=this,q=r.x +if(q===$){s=A.cI(B.cN,r.gEL(),null) +r.x!==$&&A.a_() +r.x=s +q=s}return q}, +ga5F(){var s,r,q=this,p=q.y +if(p===$){s=A.bQ(null,B.K,null,1,null,q) +s.cY() +r=s.f0$ +r.b=!0 +r.a.push(new A.c0V(q)) +q.y!==$&&A.a_() +q.y=s +p=s}return p}, +gar6(){var s,r=this,q=r.z +if(q===$){s=A.cI(B.cN,r.ga5F(),null) +r.z!==$&&A.a_() +r.z=s +q=s}return q}, +a8(){this.an() +$.an.aT$.push(this) +A.jk(B.w,null,t.z).bf(new A.c0Z(this),t.P)}, +w4(a){if(a===B.ke)J.b2V(this.gc6().d8(0,$.r9().gfd(),t.qX)) +this.QZ(a)}, +fS(){this.jO() +J.b2V(this.gc6().d8(0,$.r9().gfd(),t.qX))}, +m(){var s=this +B.b.F($.an.aT$,s) +s.Q.m() +s.gaoS().m() +s.gar6().m() +s.gEL().m() +s.ga5F().m() +s.aTr()}, +q(a){var s=this,r=null,q=A.E(A.w("game.2048.title",r,r),r,r,r,r,r),p=t.p +return A.bW(A.jb(A.a([A.du(r,A.b2(A.bc(a)===B.y?B.fz:B.fA,r,r,r,r,r,r,r,r,r,r),r,new A.c0W(s),r)],p),r,!0,r,r,1,r,r,r,!1,r,!1,r,r,r,r,!0,r,r,r,r,r,q,r,r,r,1,r),r,new A.awm(s.Q,!0,new A.c0X(s),new A.aaw(A.bW(r,B.aem,A.cS(A.a([B.bft,B.bmF,new A.d4(B.ar,r,B.am,B.k,A.a([B.aiX,new A.aGp(s.gaoS(),s.gar6(),r)],p),r)],p),B.t,r,B.cu,B.u,r,r,B.x),r,r,r,r),new A.c0Y(s),r),r),r,r,r,r)}} +A.c0U.prototype={ +$1(a){var s +if(a===B.a9){s=this.a +s.gc6().d8(0,$.r9().gfd(),t.qX).bB4() +s.ga5F().l9(0,0)}}, +$S:10} +A.c0V.prototype={ +$1(a){var s +if(a===B.a9){s=this.a +if(s.gc6().d8(0,$.r9().gfd(),t.qX).bvh())s.gEL().l9(0,0)}}, +$S:10} +A.c0Z.prototype={ +$1(a){var s,r,q=this.a +if(q.a.d)q.gc6().d8(0,$.r9().gfd(),t.qX).Yf() +else{s=$.b2A().hk(0) +r=t.qX +if(s!=null)J.cv8(q.gc6().d8(0,$.r9().gfd(),r),A.d28(s)) +else q.gc6().d8(0,$.r9().gfd(),r).Yf()}}, +$S:49} +A.c0W.prototype={ +$0(){this.a.gc6().d8(0,$.r9().gfd(),t.qX).Yf()}, +$S:0} +A.c0X.prototype={ +$1(a){var s=this.a +if(s.gEL().gbM(0)!==B.a9)return +if(s.gc6().d8(0,$.r9().gfd(),t.qX).bCo(a))s.gEL().l9(0,0)}, +$S:1258} +A.c0Y.prototype={ +$2(a,b){var s=this.a +s.gc6().d8(0,$.r9().gfd(),t.qX).ac6(a) +s.gEL().l9(0,0)}, +$S:1259} +A.akZ.prototype={ +cL(){this.dC() +this.dq() +this.fq()}, +m(){var s=this,r=s.b5$ +if(r!=null)r.O(0,s.gfj()) +s.b5$=null +s.ap()}} +A.b_H.prototype={} +A.J4.prototype={ +J(){return new A.aPv(B.f)}} +A.aPv.prototype={ +q(a){return A.byX(new A.a3A(this.a.c,null))}} +A.y3.prototype={ +Yf(){var s=this.f +this.slV(0,new A.p_(0,Math.max(s.b,s.a),A.a([this.aEb(A.a([],t.t))],t.hp),!1,!1))}, +anA(a,b){var s +if(!(a<4&&b<4))if(!(a>=4&&a<8&&b>=4&&b<8))if(!(a>=8&&a<12&&b>=8&&b<12))s=a>=12&&b>=12 +else s=!0 +else s=!0 +else s=!0 +return s}, +ac6(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=a2!==B.xL,b=!c||a2===B.qd,a=a2===B.qd,a0=!a,a1=!a0||a2===B.qe +J.OH(d.f.c,new A.b6q(d,b,a1)) +s=A.a([],t.hp) +for(r=J.bn(d.f.c),q=a2===B.qe,p=d.r,o=0;o0&&p-1>=0)if(n===J.aS(j.f.c,p-1).b)r=!1 +if(l<3&&m=0)if(n===J.aS(j.f.c,k).b)r=!1 +k=p+4 +if(k"))}s=k.a +s=k.b.ah(0,s.gj(s)) +k=m.ax +if(k===$){q=m.gaiu(0) +k=m.as +if(k===$){r=m.e.aIZ(m.x) +if(r==null)r=m.gaiu(0) +m.as!==$&&A.a_() +k=m.as=r}p=t.Y +m.ax!==$&&A.a_() +k=m.ax=new A.aB(m.r,new A.aP(q,k,p),p.h("aB"))}q=k.a +q=k.b.ah(0,q.gj(q)) +if(m.e.e){k=m.ay +if(k===$){p=t.Y +o=p.h("eb") +n=t.Ns +n=A.bNB(A.a([new A.ld(new A.eb(new A.eA(B.eb),new A.aP(1,1.5,p),o),50,n),new A.ld(new A.eb(new A.eA(B.dl),new A.aP(1.5,1,p),o),50,n)],t.x0),t.i) +m.ay!==$&&A.a_() +k=m.ay=new A.aB(m.w,n,n.$ti.h("aB"))}p=A.Aa(B.C,m.f,l,k)}else p=m.f +return A.mo(l,p,l,l,q,l,s,l)}} +A.aol.prototype={ +hO(a,b){var s=null,r=A.C8(s,s,new A.bS(B.aaZ,t.h9),s,s,s,s,s,s,s,s,s,s,new A.bS(B.nj,t.C4),s,s,s,s,s,s,s,s) +return A.cHU(!1,A.bv(this.e,s,s,s,s,s,s,s,s,B.bqb,s,s,s,s,s),B.i,s,s,s,s,s,this.r,s,r)}} +A.atk.prototype={ +q(a){var s=null,r=Math.floor(Math.max(290,Math.min(Math.floor(A.bC(a,s,t.l).w.a.giu()*0.9),460))/4),q=r*4,p=A.ed(12) +return A.bB(s,new A.d4(B.ar,s,B.am,B.k,A.wj(16,new A.bgt(r-12-3),t.C),s),B.i,s,s,new A.c_(B.BL,s,s,p,s,s,s,B.U),s,q,s,s,s,s,s,q)}} +A.bgt.prototype={ +$1(a){var s=null,r=B.e.dO((a+1)/4),q=r-1,p=this.a,o=a-4*q +return A.mo(s,new A.a_H(B.acu,p,s,s),s,s,o*p+(o+1)*12,s,q*p+r*12,s)}, +$S:406} +A.aDY.prototype={ +hO(a,b){var s=null,r=$.r9(),q=r.$ti.h("WU"),p=t.S,o=b.dl(new A.WU(r,new A.bDA(),q),p),n=b.dl(new A.WU(r,new A.bDB(),q),p) +return A.eq(A.a([new A.a8S(A.w("game.2048.score",s,s),A.r(o),s,s),B.xs,new A.a8S(A.w("game.2048.best",s,s),A.r(n),B.u5,s)],t.p),B.t,s,B.cu,B.u,s,s,B.x)}} +A.bDA.prototype={ +$1(a){return a.a}, +$S:407} +A.bDB.prototype={ +$1(a){return a.b}, +$S:407} +A.a8S.prototype={ +q(a){var s,r=null,q=this.e +if(q==null)q=B.u5 +s=A.ed(12) +return A.bB(r,A.cS(A.a([A.bv(this.c.toUpperCase(),r,r,r,r,r,r,r,r,B.bs_,r,r,r,r,r),A.bv(this.d,r,r,r,r,r,r,r,r,B.boI,r,r,r,r,r)],t.p),B.t,r,B.o,B.u,r,r,B.x),B.i,r,r,new A.c_(B.BL,r,r,s,r,r,r,B.U),r,r,r,r,q,r,r,r)}} +A.a_H.prototype={ +q(a){var s=null,r=this.d +return A.bB(s,this.e,B.i,s,s,new A.c_(this.c,s,s,A.ed(12),s,s,s,B.U),s,r,s,s,s,s,s,r)}} +A.aGp.prototype={ +hO(a,b){var s,r,q=null,p=b.dl($.r9(),t.kI),o=Math.floor(Math.max(290,Math.min(Math.floor(A.bC(a,q,t.l).w.a.giu()*0.9),460))/4),n=o*4,m=t.C +m=A.R(A.wj(J.bn(p.c),new A.bLE(this,p,o-12-3,a),m),!0,m) +if(p.d){s=p.e +r=A.bv(s?A.w("game.youWin",q,q):A.w("game.gameOver",q,q),q,q,q,q,q,q,q,q,B.bro,q,q,q,q,q) +s=s?A.w("game.newGame",q,q):A.w("game.tryAgain",q,q) +m.push(A.po(0,A.bB(q,A.cS(A.a([r,new A.aol(s,new A.bLF(b),q)],t.p),B.t,q,B.cu,B.u,q,q,B.x),B.i,B.a74,q,q,q,q,q,q,q,q,q,q)))}return new A.ba(n,n,new A.d4(B.ar,q,B.am,B.k,m,q),q)}} +A.bLE.prototype={ +$1(a){var s,r,q,p,o=this,n=null,m=J.aS(o.b.c,a),l=m.a,k=o.a,j=k.e +k=k.f +s=o.c +r=m.b +q=B.b3A.i(0,r) +if(q==null)q=B.Bv +p=A.G(o.d).p3.d +p=p==null?n:p.r +return new A.OP(m,new A.a_H(q,s,new A.aA(new A.af(4,0,4,0),A.nk(A.cF_(""+r,1,A.dH(n,n,r<8?B.td:B.BX,n,n,n,n,n,n,n,n,p,n,n,B.cc,n,n,!0,n,n,n,n,n,n,n,n))),n),n),j,k,s,new A.B9(A.a([j,k],t.bA)),new A.ca(l,t.kK))}, +$S:1267} +A.bLF.prototype={ +$0(){this.a.d8(0,$.r9().gfd(),t.qX).Yf()}, +$S:0} +A.J6.prototype={ +J(){return new A.aPy(B.f)}} +A.aPy.prototype={ +q(a){var s=null,r=this.gc6().dl($.eN.I().gx6(),t.y),q=t.p,p=A.a([B.Dy,B.Dz],q) +if(r)p.push(B.RW) +return A.bW(s,s,A.wr(A.cD(B.k,s,B.m,s,s,s,!1,s,B.v,A.a([A.eI(p)],q)),!0,new A.c0T()),s,s,s,!1)}} +A.c0T.prototype={ +$2(a,b){var s=null +return A.a([new A.pv(a.a0(t.t7).f.d,A.ju(s,!0,s,s,!1,b,!1,A.E(A.w("game.navigation",s,s),s,s,s,s,s),s),s)],t.p)}, +$S:57} +A.a3C.prototype={ +J(){return new A.aPx(B.f)}} +A.aPx.prototype={ +q(a){return A.cKt("/minesweeper",A.w("game.minesweeper.title",null,null),null)}} +A.ao4.prototype={ +aUt(a,b){var s,r=this.c,q=this.b*r,p=J.d1(q,t.Lp) +for(s=0;s") +return new A.A9(this.b,this.c,A.R(new A.O(r,new A.b6v(),s),!0,s.h("aa.E")))}, +a8Q(a){var s,r +for(s=this.aBB(),s=new A.dr(s.a(),s.$ti.h("dr<1>")),r=0;s.t();)if(s.b.d===a)++r +return r}, +a8R(a,b){var s,r +for(s=this.GU(a),s=new A.dr(s.a(),s.$ti.h("dr<1>")),r=0;s.t();)if(s.b.d===b)++r +return r}, +bEN(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +g.a=c +s=b-1 +if(s<0)s=0 +r=b+1 +q=g.b +if(r>=q)r=q-1 +p=a-1 +if(p<0)p=0 +o=a+1 +n=g.c +if(o>=n)o=n-1 +for(q=n*q,m=0;m=s&&j<=r&&k>=p&&k<=o) +else h=!1 +if(h){i.c=!0 +g.aVR(k,j);++m}}}, +aVR(a,b){var s +for(s=this.GU(this.a_u(a,b)),s=new A.dr(s.a(),s.$ti.h("dr<1>"));s.t();)++s.b.e}, +a_u(a,b){var s=this.d +s===$&&A.b() +return s[b*this.c+a]}, +GU(a){return new A.dz(this.bzz(a),t.ux)}, +bzz(a){var s=this +return function(){var r=a +var q=0,p=1,o,n,m,l,k,j,i,h,g +return function $async$GU(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:n=r.a,m=r.b,l=s.b,k=s.c,j=0 +case 2:if(!(j<8)){q=4 +break}i=B.aDu[j] +h=n+i.a +g=m+i.b +q=0<=h&&hr?r:s}, +v7(){var s=this +return new A.bGn(s.oJ()*8+Math.floor(s.oJ()/8)*2,s.oJ()*15+Math.floor(s.oJ()/8)*2)}} +A.a3D.prototype={ +J(){return new A.aga(B.f)}} +A.aga.prototype={ +a8(){var s=this +s.an() +$.an.aT$.push(s) +s.x=B.rz +s.w=new A.auI(s.gae_()) +s.gc6().d8(0,$.mR().gfd(),t.bH).abb(s.x) +A.jk(B.w,null,t.z).bf(new A.c7g(s),t.P)}, +w4(a){if(a===B.ke)J.b2V(this.gc6().d8(0,$.mR().gfd(),t.bH)) +this.QZ(a)}, +fS(){this.jO() +J.b2V(this.gc6().d8(0,$.mR().gfd(),t.bH))}, +m(){B.b.F($.an.aT$,this) +var s=this.w +s===$&&A.b() +s.QD() +this.ap()}, +aG1(){var s=this,r=s.w +r===$&&A.b() +if(r.b==null&&!s.gc6().d8(0,$.mR().gfd(),t.bH).w)s.w.aNj() +if(s.c.e==null)return +s.C(new A.c7h())}, +aF0(a){var s=this,r=s.w +r===$&&A.b() +r.QD() +s.x=a +s.w=new A.auI(s.gae_()) +s.gc6().d8(0,$.mR().gfd(),t.bH).abb(s.x) +s.aG1()}, +aF_(){return this.aF0(B.rz)}, +q(a){var s,r,q,p=this,o=null,n=A.bC(a,o,t.l).w.a,m=p.x +m===$&&A.b() +p.gc6().d8(0,$.mR().gfd(),t.bH).f.d=new A.bDC(n.a,n.b-56,m) +m=A.E(A.w("game.minesweeper.title",o,o),o,o,o,o,o) +s=t.p +m=A.jb(A.a([A.du(o,A.b2(A.bc(a)===B.y?B.fz:B.fA,o,o,o,o,o,o,o,o,o,o),o,new A.c7f(p),o)],s),o,!0,o,o,1,!0,o,o,!1,o,!1,o,o,o,o,!0,o,o,o,o,o,m,o,o,o,1,o) +r=p.x +q=p.w +q===$&&A.b() +return A.bW(m,o,A.cS(A.a([new A.auA(q,r,o),A.eu(new A.d4(B.ar,o,B.am,B.k,A.a([new A.auz(p.gae_(),o),new A.auD(p.gbG9(),q,o)],s),o),o,o,o)],s),B.t,o,B.fW,B.u,o,o,B.x),o,o,o,o)}} +A.c7g.prototype={ +$1(a){var s,r,q,p=this.a +if(!p.a.d){s=$.cuo().hk(0) +r=t.bH +if(s!=null){p=p.gc6().d8(0,$.mR().gfd(),r) +r=A.d29(s) +q=p.f +q.c=B.rz +q.b=q.a=!1 +q.e=r +p.x=Math.max(0,r.a) +p.w=!0}else{r=p.gc6().d8(0,$.mR().gfd(),r) +p=p.x +p===$&&A.b() +r.abb(p)}}}, +$S:49} +A.c7h.prototype={ +$0(){}, +$S:0} +A.c7f.prototype={ +$0(){this.a.aF_()}, +$S:0} +A.azD.prototype={ +q(a){var s=null,r=A.G(a).p3.y +return A.eq(A.a([A.bv(" "+this.c+" ",s,s,s,s,s,s,s,s,r,s,s,s,s,s),B.az0,A.bv("/ "+this.d+" ",s,s,s,s,s,s,s,s,r,s,s,s,s,s),B.azX],t.p),B.t,s,B.o,B.u,s,s,B.x)}} +A.auA.prototype={ +hO(a,b){var s,r,q,p,o,n=null,m=$.mR(),l=t.AG,k=b.d8(0,m,l).d +k===$&&A.b() +s=A.G(a).p3 +r=k.v7() +q=k.aeI() +p=A.G(a).ay +o=p.w +p=o==null?p.f:o +o=b.d8(0,m,l).e +o===$&&A.b() +if(o.a>=0){o=b.d8(0,m,l).e +o===$&&A.b() +o=o.a8Q(B.eY) +l=b.d8(0,m,l).e +l===$&&A.b() +l=new A.azD(o,Math.max(0,l.a),n) +m=l}else m=A.bv(A.w("game.minesweeper.gameMode.easy",n,n),n,n,n,n,n,n,n,n,s.y,n,n,n,n,n) +l=t.p +r=A.bB(n,A.eq(A.a([B.azT,m],l),B.t,n,B.fV,B.u,n,n,B.x),B.i,n,n,new A.c_(p,n,n,new A.dJ(new A.bb(12,12),B.J,new A.bb(12,12),B.J),n,n,n,B.U),n,q,n,n,n,n,n,r.a/2) +q=k.v7() +k=k.aeI() +p=A.G(a).ay +m=p.Q +if(m==null){m=p.y +if(m==null)m=p.f}return A.eq(A.a([r,A.bB(n,A.eq(A.a([B.uO,A.bv(this.e.af4(),n,n,n,n,n,n,n,n,s.y,n,n,n,n,n)],l),B.t,n,B.fV,B.u,n,n,B.x),B.i,n,n,new A.c_(m,n,n,new A.dJ(B.J,new A.bb(12,12),B.J,new A.bb(12,12)),n,n,n,B.U),n,k,n,n,n,n,n,q.a/2)],l),B.t,n,B.cu,B.u,n,n,B.x)}} +A.b_W.prototype={} +A.J5.prototype={ +J(){return new A.aRR(B.f)}} +A.aRR.prototype={ +q(a){return A.byX(new A.a3D(this.a.c,null))}} +A.yU.prototype={ +abb(a){var s,r=this,q=r.f +q.c=a +q.b=q.a=!1 +q.toString +s=new A.ao4(-1,15,8,$) +s.aUt(8,15) +q.e=s +r.f.c===$&&A.b() +r.x=18 +r.w=!0}, +Rl(a,b){var s=this.f.e +s===$&&A.b() +s.a_u(a.b,a.a).d=b}, +ayF(a){var s,r=this +if(r.w){s=r.f.e +s===$&&A.b() +s.bEN(a.b,a.a,r.x) +r.w=!1}if(a.d===B.d0){r.Rl(a,B.kq) +if(a.c)r.f.a=!0 +else{r.akK(a) +if(r.bq2())r.f.b=!0}}}, +akK(a){var s,r,q,p,o,n,m=this +if(a.e===0){s=m.f.e +s===$&&A.b() +s=s.GU(a) +s=new A.dr(s.a(),s.$ti.h("dr<1>")) +for(;s.t();){r=s.b +q=r.d===B.d0 +if(q&&r.e===0){q=m.f.e +q===$&&A.b() +p=r.a +o=r.b +n=q.d +n===$&&A.b() +n[p*q.c+o].d=B.kq +m.akK(r)}else if(!r.c&&q&&r.e!==0){q=m.f.e +q===$&&A.b() +p=r.a +r=r.b +o=q.d +o===$&&A.b() +o[p*q.c+r].d=B.kq}}}}, +btZ(a){var s,r,q=this.f.e +q===$&&A.b() +if(q.a8R(a,B.eY)>=a.e){q=this.f.e +q===$&&A.b() +q=q.GU(a) +q=new A.dr(q.a(),q.$ti.h("dr<1>")) +s=!1 +for(;q.t();){r=q.b +if(r.d===B.d0){this.ayF(r) +s=!0}}}else s=!1 +return s}, +bwv(a){var s,r,q,p,o,n,m=this,l=m.f.e +l===$&&A.b() +s=l.a8R(a,B.d0) +if(s===0)return!1 +l=m.f.e +l===$&&A.b() +if(s+l.a8R(a,B.eY)===a.e){l=m.f.e +l===$&&A.b() +l=l.GU(a) +l=new A.dr(l.a(),l.$ti.h("dr<1>")) +r=!1 +for(;l.t();){q=l.b +if(q.d===B.d0){p=m.f.e +p===$&&A.b() +o=q.a +q=q.b +n=p.d +n===$&&A.b() +q=n[o*p.c+q] +q.d=B.eY +r=!0}}}else r=!1 +return r}, +bq2(){var s,r,q=this.f.e +q===$&&A.b() +s=q.a8Q(B.d0) +q=this.f.e +q===$&&A.b() +r=q.a8Q(B.eY) +q=this.f.e +q===$&&A.b() +if(s+r===Math.max(0,q.a))return!0 +return!1}, +aFC(a){var s=a.d +if(s===B.eY)this.Rl(a,B.d0) +else if(s===B.d0)this.Rl(a,B.eY)}, +d6(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$d6=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.f +o=p.b +o===$&&A.b() +if(!o){o=p.a +o===$&&A.b()}else o=!0 +s=o?2:4 +break +case 2:s=5 +return A.i($.cuo().yI(0),$async$d6) +case 5:s=3 +break +case 4:o=$.cuo() +p=p.e +p===$&&A.b() +s=6 +return A.i(o.ID(0,p.adG()),$async$d6) +case 6:case 3:return A.n(null,r)}}) +return A.o($async$d6,r)}} +A.yV.prototype={} +A.crb.prototype={ +$1(a){return new A.yU(new A.iz(t.l_),new A.yV())}, +$S:1273} +A.auI.prototype={ +aNj(){this.b=A.MM(B.aW,new A.bjR(this))}, +QD(){var s=this.b +if(s!=null)s.ao(0)}, +af4(){var s=this.c,r=B.e.ec(s/60),q=B.d.M(s,60),p=r<10?"0"+r:B.d.k(r),o=q<10?"0"+q:B.d.k(q) +return p+":"+o}} +A.bjR.prototype={ +$1(a){var s=this.a,r=s.c +if(r<3599)s.c=r+1 +else s.c=0 +s.a.$0()}, +$S:97} +A.q_.prototype={ +eZ(){var s=B.QV.i(0,this.b) +s.toString +return A.a1(["mine",this.a,"state",s],t.N,t.z)}} +A.A9.prototype={ +eZ(){return A.a1(["rows",this.a,"columns",this.b,"cells",this.c],t.N,t.z)}} +A.bD6.prototype={ +$1(a){return A.dh9(a)}, +$S:1274} +A.bQh.prototype={ +$1(a){var s,r +t.a.a(a) +s=J.ao(a) +r=A.lk(s.i(a,"mine")) +s=A.cCg(B.QV,s.i(a,"state"),t.Uq,t.S) +if(s==null)s=B.d0 +return new A.q_(r===!0,s)}, +$S:1275} +A.auz.prototype={ +hO(a,b){var s,r,q,p=null,o=$.mR(),n=t.AG,m=b.d8(0,o,n).d +m===$&&A.b() +b.d8(0,o,n).c===$&&A.b() +b.d8(0,o,n).c===$&&A.b() +s=Math.floor(m.oJ()/8) +r=m.oJ() +n=m.v7() +m=m.v7() +o=A.G(a).ay +q=o.dy +o=A.P7(q==null?o.db:q,s) +q=A.tw(new A.bb(12,12)) +return A.amZ(p,new A.d4(B.ar,p,B.am,B.k,A.wj(120,new A.bjI(this,8,r),t.C),p),B.i,p,B.H,new A.c_(p,p,o,q,p,p,p,B.U),B.aW,p,m.b,p,p,p,p,p,n.a)}} +A.bjI.prototype={ +$1(a){var s=null,r=this.b,q=B.d.M(a,r),p=B.e.ec(a/r) +r=this.c +return A.mo(s,new A.aoI(p,q,this.a.e,s),s,s,q*r,s,p*r,s)}, +$S:406} +A.aoI.prototype={ +hO(a,b){var s,r,q,p,o=null,n=b.dl($.mR().gfd(),t.bH),m=n.f.e +m===$&&A.b() +s=m.a_u(this.f,this.e) +switch(s.d.a){case 1:r=!1 +q=!1 +break +case 0:r=!0 +q=!1 +break +case 2:r=!0 +q=!0 +break +default:r=!0 +q=!1}m=A.a([],t.p) +if(s.c)m.push(B.b5Z) +else m.push(new A.azE(s,o)) +p=n.f.a +p===$&&A.b() +p=p&&s.c?0.5:1 +m.push(A.mj(new A.aoG(r,o),p)) +m.push(new A.aoH(q,o)) +m.push(new A.aoF(s,r,q,this.r,o)) +return new A.d4(B.ar,o,B.am,B.k,m,o)}} +A.aoF.prototype={ +hO(a,b){var s,r,q,p,o,n,m,l=this,k=null,j=$.mR(),i=b.d8(0,j.gfd(),t.bH) +j=b.d8(0,j,t.AG).d +j===$&&A.b() +s=j.oJ() +j=l.e +if(!(j.d===B.kq&&j.e===0)){j=A.P7(A.G(a).ay.cy,1) +r=A.tw(new A.bb(12,12)) +q=l.f +p=!q +if(p)o=B.D +else{o=A.G(a).ay +n=o.dx +o=n==null?o.cy:n}n=p?k:new A.b8G(l,i) +q=q?k:new A.b8H(l,i) +m=p?k:new A.b8I(l,i) +j=A.bB(k,A.ly(!1,k,!0,k,k,!0,k,k,B.D,k,k,k,q,k,k,k,m,p?k:new A.b8J(l,i),n,k,k,k,12,o,k,k),B.i,k,k,new A.c_(k,k,j,r,k,k,k,B.U),k,s,k,k,k,k,k,s)}else j=B.ap +return j}} +A.b8G.prototype={ +$0(){var s=this.a,r=this.b,q=s.e +if(!s.r){r.ayF(q) +A.GI()}else if(q.d===B.eY)r.Rl(q,B.d0) +s.w.$0()}, +$S:0} +A.b8H.prototype={ +$0(){var s=this.b,r=this.a,q=r.e +if(B.V.da(B.V.da(!1,s.btZ(q)),s.bwv(q)))A.GI() +r.w.$0()}, +$S:0} +A.b8I.prototype={ +$0(){var s=this.a +this.b.aFC(s.e) +A.GI() +s.w.$0()}, +$S:0} +A.b8J.prototype={ +$0(){var s=this.a +this.b.aFC(s.e) +A.GI() +s.w.$0()}, +$S:0} +A.aoG.prototype={ +hO(a,b){var s,r,q,p=null,o=b.d8(0,$.mR(),t.AG).d +o===$&&A.b() +s=o.oJ() +o=this.r?1:0 +r=A.G(a).ay +q=r.dx +r=q==null?r.cy:q +return A.jF(A.bB(p,p,B.i,p,p,new A.c_(r,p,A.P7(A.G(a).ay.cy,1),A.tw(new A.bb(12,12)),p,p,p,B.U),p,s,p,p,p,p,p,s),B.az,B.ez,o)}} +A.aoH.prototype={ +hO(a,b){var s,r,q,p=null,o=b.d8(0,$.mR(),t.AG).d +o===$&&A.b() +s=o.oJ() +o=this.r +r=o?0:-40 +q=o?1:0 +o=o?1:0.2 +return A.cvj(A.jF(A.cEN(B.C,A.b2(B.akQ,B.lp,p,p,p,p,p,p,s,p,p),B.az,B.ez,o),B.az,B.ez,q),B.az,B.ez,0,r)}} +A.azC.prototype={ +hO(a,b){var s,r=null,q=b.d8(0,$.mR(),t.AG).d +q===$&&A.b() +s=q.oJ() +return new A.ba(s,s,A.b2(B.DK,B.dv,r,r,r,r,r,r,s*0.7,r,r),r)}} +A.azE.prototype={ +hO(a,b){var s,r,q=null,p=b.d8(0,$.mR(),t.AG).d +p===$&&A.b() +s=p.oJ() +p=this.e +r=p.e +return new A.ba(s,s,r!==0?A.bv(B.d.k(r),q,q,q,q,q,q,q,q,A.dH(q,q,B.aNQ[p.e-1],q,q,q,q,q,q,q,q,s*0.7,q,q,B.nA,q,q,!0,q,q,q,q,q,q,q,q),B.at,q,q,q,q):q,q)}} +A.auD.prototype={ +hO(a,b){var s,r,q,p,o=this,n=null,m=$.mR(),l=t.AG,k=b.d8(0,m,l).d +k===$&&A.b() +s=Math.floor(k.oJ()/8) +r=k.oJ() +q=b.d8(0,m,l).a +q===$&&A.b() +if(q){o.f.QD() +m=k.v7() +k=k.v7() +l=$.d0p() +q=A.tw(new A.bb(s,s)) +return A.mj(A.bB(n,A.cJM(A.bv(A.w("game.gameOver",n,n),n,n,n,n,n,n,n,n,A.dH(n,n,$.d0q(),n,n,n,n,n,n,n,n,r,n,n,n,n,n,!0,n,n,n,n,n,n,n,n),n,n,n,n,n),new A.bjK(o)),B.i,n,n,new A.c_(l,n,n,q,n,n,n,B.U),n,k.b,n,n,n,n,n,m.a),0.5)}else{m=b.d8(0,m,l).b +m===$&&A.b() +if(m){m=o.f +p=m.af4() +m.QD() +m=k.v7() +k=k.v7() +l=$.d0r() +q=A.tw(new A.bb(s,s)) +return A.mj(A.bB(n,A.cJM(A.bv(A.w("game.youWin",n,n)+"\n"+A.w("game.minesweeper.timeSpent",A.a([p],t.s),n),n,n,n,n,n,n,n,n,A.dH(n,n,$.d0s(),n,n,n,n,n,n,n,n,r,n,n,n,n,n,!0,n,n,n,n,n,n,n,n),n,n,n,n,n),new A.bjL(o)),B.i,n,n,new A.c_(l,n,n,q,n,n,n,B.U),n,k.b,n,n,n,n,n,m.a),0.5)}else return B.ap}}} +A.bjK.prototype={ +$0(){this.a.e.$0()}, +$S:0} +A.bjL.prototype={ +$0(){this.a.e.$0()}, +$S:0} +A.J7.prototype={ +J(){return new A.aVW(B.f)}} +A.aVW.prototype={ +q(a){var s=null +return A.bW(s,s,A.cD(B.k,s,B.m,s,B.ck,s,!1,s,B.v,A.a([A.uu(s,!1,!0,!1,A.E(A.w("game.navigation",s,s),s,s,s,s,s)),A.eI(B.aJl)],t.p)),s,s,s,s)}} +A.av5.prototype={ +hO(a,b){var s,r=null,q=b.dl($.cn.I().gqO().gaek(),t.X7) +if(q==null)q=!0 +s=A.E(A.w("game.settings.enableHapticFeedback.title",r,r),r,r,r,r,r) +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,B.az1,r,r,r,r,r,r,!1,r,r,A.E(A.w("game.settings.enableHapticFeedback.desc",r,r),r,r,r,r,r),r,r,s,r,A.jy(new A.bkI(b),q),r)}} +A.bkI.prototype={ +$1(a){this.a.d8(0,$.cn.I().gqO().gaek().gfd(),t.cm).x.$1(a)}, +$S:4} +A.bjN.prototype={ +gaek(){var s,r=this,q=r.c +if(q===$){s=A.pX(r.a,"/game/enableHapticFeedback",null,null,t.y) +r.c!==$&&A.a_() +r.c=s +q=s}return q}} +A.auH.prototype={ +ID(a,b){var s=0,r=A.p(t.H),q=this,p +var $async$ID=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=B.aO.yT(q.d.$1(b),null) +s=2 +return A.i(A.ds($.avl.I(),"/"+q.a+"/"+q.b.k(0)+"/0",p),$async$ID) +case 2:return A.n(null,r)}}) +return A.o($async$ID,r)}, +yI(a){var s=0,r=A.p(t.H),q=this +var $async$yI=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i($.avl.I().a9m(["/"+q.a+"/"+q.b.k(0)+"/0"]),$async$yI) +case 2:return A.n(null,r)}}) +return A.o($async$yI,r)}, +hk(a){var s,r,q,p=A.dU($.avl.I(),"/"+this.a+"/"+this.b.k(0)+"/0",t.N) +if(p==null)return null +try{s=B.aO.pf(0,p,null) +r=this.c.$1(s) +return r}catch(q){return null}}, +gaH9(){var s,r=this,q=r.f +if(q===$){s=A.d2j($.avl.I(),new A.bjQ(r),t.S) +r.f!==$&&A.a_() +r.f=s +q=s}return q}, +aHa(a){return this.gaH9().$1(a)}} +A.bjQ.prototype={ +$1(a){var s=this.a +return"/"+s.a+"/"+s.b.k(0)+"/"+a}, +$S:104} +A.auG.prototype={ +ia(a){var s,r,q,p,o=this,n=$.m0(),m=t.fx,l=n.d9(0,m),k=$.Zy(),j=$.Zz().a,i=j[0],h=new A.ah(new Float64Array(2)) +h.dm(i,0) +h=k.S(0,h) +i=j[1] +s=new A.ah(new Float64Array(2)) +s.dm(1,i) +l=l.a +l.km(A.czE(new A.ac1(h,s))) +s=j[0] +i=new A.ah(new Float64Array(2)) +i.dm(s,0) +i=k.W(0,i) +s=j[1] +h=new A.ah(new Float64Array(2)) +h.dm(1,s) +l.km(A.czE(new A.ac1(i,h))) +h=j[1] +i=new A.ah(new Float64Array(2)) +i.dm(0,h) +i=k.S(0,i) +h=j[0] +s=new A.ah(new Float64Array(2)) +s.dm(h+1,1) +l.km(A.czE(new A.ac1(i,s))) +s=n.d9(0,t.PD) +i=j[0] +l=j[1] +h=new A.ah(new Float64Array(2)) +h.dm(i+1,l+13) +l=o.a +s=s.b.at.d +s.tw(l.$1(k.W(0,h))) +s.ab() +s=n.d9(0,t.GZ) +h=j[0] +i=j[1] +r=new A.ah(new Float64Array(2)) +r.dm(-h+5,i+13) +s=s.a.at.d +s.tw(l.$1(k.W(0,r))) +s.ab() +q=o.d.ax.gaGf() +o.e=(q.a+q.c)/2 +s=B.dJ.v4() +r=o.e +r.toString +l=j[1] +k=k.a +i=k[1] +h=new A.ah(new Float64Array(2)) +h.dm(r,-l+i-1.55) +o.f=A.a3z(new A.ku(s,h,1.55,B.wP,"fruit-1.png"),!0,null) +h=n.d9(0,m) +s=o.f +s.toString +h.a.km(s) +p=o.amm() +s=j[0] +j=j[1] +k=k[1] +l=new A.ah(new Float64Array(2)) +l.dm(s-2,-j+k-7) +o.r=A.a3z(p.yv(l),!0,2) +m=n.d9(0,m) +n=o.r +n.toString +m.a.km(n)}, +Oa(){var s,r,q=this +if(q.y)return +q.aZe() +if(q.x>100){q.y=!0 +s=$.m0() +r=s.d9(0,t.PD).a +s.d9(0,t.qu).a0l(r)}if(q.w){q.Yr(0) +q.w=!1}q.b3e()}, +b3e(){var s,r,q,p,o,n,m,l,k,j,i=$.m0(),h=t.Tk,g=i.d9(0,h).a,f=g.length +if(f===0)return +for(s=t.fx,r=t.CE,q=t.PD,p=0;pr)return r +return a}, +aZe(){var s=$.m0().d9(0,t.fx).a.geg(0),r=t.Nx +if(new A.b1(new A.cv(A.R(s,!0,A.z(s).h("B.E")),r),new A.bjO(),r.h("b1")).l8(0,0,new A.bjP(),t.i)<0)++this.x +else this.x=0}, +amm(){var s,r,q=B.dJ.v4(),p=new A.ah(new Float64Array(2)) +p.dm(0,0) +s=A.a([B.ak5,B.ak6,B.ak9,B.ak8,B.ak7],t.rc) +B.b.aMh(s,B.ex) +r=s[0] +return new A.ku(q,p,r.c,r.d,r.e)}} +A.bjO.prototype={ +$1(a){return!a.rx}, +$S:1276} +A.bjP.prototype={ +$2(a,b){var s=b.at +s===$&&A.b() +return Math.min(a,s.d.a.a[1]+$.Zy().a[1]+2.25)}, +$S:1277} +A.pc.prototype={ +ia(a){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k +var $async$ia=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(q.aNT(0),$async$ia) +case 2:p=q.RG +s=3 +return A.i(A.bGV(p.giR(p),q.gqO().azz$),$async$ia) +case 3:o=c +n=q.ry +p=n==null?p.glj():n +n=new A.ah(new Float64Array(2)) +n.a0w(p*2) +p=B.pu.Hj() +m=A.W8() +l=n +k=$.ae() +k=new A.zA(k,new Float64Array(2)) +k.tw(l) +k.ab() +p=new A.aa0(!1,o,$,p,null,m,k,B.r8,0,null,new A.fN([],t.pr),new A.fN([],t.Pk)) +p.a1a(B.r8,null,null,null,0,null,null,null,n) +k.a3(0,p.gb2Y()) +q.to!==$&&A.ck() +q.to=p +q.km(p) +return A.n(null,r)}}) +return A.o($async$ia,r)}, +a8U(){var s,r,q=this,p=A.cFM(),o=q.ry +p.b=o==null?q.RG.glj():o +s=A.cIf(p,5,0.5,0.1) +o=q.RG.gwI() +r=A.cFd(o,q.rx?B.cz:B.e7,q) +o=q.gqO().k3.go.a8V(r) +o.axY(s) +return o}, +adg(a,b,c){this.aNU(a,b,c)}} +A.auC.prototype={ +k6(a){var s,r,q,p=$.ar().aP() +p.sa6(0,A.Y(B.e.aF(25.5),255,255,255)) +p.se4(5) +p.sbN(0,B.a7) +s=this.at +s===$&&A.b() +s=s.a +r=s[0] +s=s[1] +q=this.ax +q===$&&A.b() +q=q.a +a.jV(new A.j(r,s),new A.j(q[0],q[1]),p)}} +A.aBT.prototype={ +k6(a){var s,r,q,p,o=this +if(o.at!=null&&o.ax!=null){s=$.ar().aP() +s.sa6(0,B.aP) +s.se4(2) +s.sbN(0,B.a7) +r=o.at.a +q=r[0] +r=r[1] +p=o.ax.a +a.jV(new A.j(q,r),new A.j(p[0],p[1]),s)}}} +A.aDZ.prototype={ +ia(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$ia=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.a0C(0) +p=new A.ah(new Float64Array(2)) +p.dm(10,15) +o=q.at.d +o.tw(p) +o.ab() +return A.n(null,r)}}) +return A.o($async$ia,r)}} +A.aHL.prototype={ +a8U(){var s,r,q=A.cKY(),p=this.RG,o=p.b.a +q.aKJ(o[0],o[1],p.a,0) +s=A.cIf(q,1,0.8,0) +r=A.cFd(null,B.cz,this) +p=this.gqO().k3.go.a8V(r) +p.axY(s) +return p}} +A.J8.prototype={ +J(){return new A.aXp(B.f)}} +A.aXp.prototype={ +q(b6){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=null,b3="assets/game/suika/",b4=A.jb(b2,b2,!0,b2,b2,1,b2,b2,b2,!1,b2,!1,b2,b2,b2,b2,!0,b2,b2,b2,b2,b2,A.E("Suika Game",b2,b2,b2,b2,b2),b2,b2,b2,1,b2),b5=new A.ah(new Float64Array(2)) +b5.dm(0,100) +s=t.rK +r=A.a([],s) +q=A.a([],t.Vn) +p=new A.py() +$.r8() +p.j9(0) +o=new A.py() +o.j9(0) +n=new Float64Array(2) +m=new Float64Array(2) +l=new Float64Array(2) +k=new Float64Array(2) +j=new Float64Array(2) +i=new Float64Array(2) +h=new Float64Array(2) +g=new Float64Array(2) +f=A.cJ8() +s=A.a([],s) +e=new A.py() +e.j9(0) +d=A.cJ8() +c=A.bdI() +b=A.bdI() +a=new Float64Array(2) +a0=new Float64Array(2) +a1=new Float64Array(2) +a2=new Float64Array(2) +a3=new Float64Array(2) +a4=new Float64Array(2) +a5=new Float64Array(2) +a6=new Float64Array(2) +a7=new Float64Array(2) +a8=new Float64Array(2) +a9=new Float64Array(2) +b0=new Float64Array(2) +b1=new A.ah(new Float64Array(2)) +b1.T(b5) +b0=new A.bPl(r,q,b1,new A.aGs(),new A.abc(p),new A.abc(o),new A.a0N(0,0,0),new A.lR(new A.ah(n),new A.l5(0,1)),new A.ah(m),new A.ah(l),new A.bPs(),new A.bPt(new A.aCu(new A.ah(k)),new A.ah(j),new A.ah(i)),new A.a7I(new A.ah(h),new A.ah(g)),f,s,new A.abc(e),d,new A.bJQ(c,b,new A.Fs(new A.ah(a),new A.ah(a0),new A.ah(a1)),new A.Fs(new A.ah(a2),new A.ah(a3),new A.ah(a4))),new A.bJR(B.YN),new A.aGs(),new A.Fs(new A.ah(a5),new A.ah(a6),new A.ah(a7)),new A.Fs(new A.ah(a8),new A.ah(a9),new A.ah(b0))) +b5=A.d5f() +s=A.a([],t.t) +b0.f=b0.at=b0.Q=b0.z=!0 +b0.a=4 +b5=new A.apM(new A.bbS(b5,s,A.b9(t.vI)),A.a([],t.go)) +b5.c=new A.baC() +b0.b=b5 +b0.ax=new A.bym(new A.rS(),new A.rS(),new A.rS(),new A.rS(),new A.rS(),new A.rS(),new A.rS(),new A.rS(),new A.rS(),new A.rS()) +s=A.a([],t.ZS) +r=A.a([],t.Ic) +q=A.a([],t.dK) +p=A.a([],t.eR) +o=A.a([],t.F7) +n=A.a([],t.DZ) +m=new Float64Array(2) +l=new Float64Array(2) +k=new Float64Array(2) +j=new Float64Array(2) +i=new Float64Array(2) +h=new Float64Array(2) +g=new Float64Array(2) +f=new Float64Array(2) +e=new Float64Array(2) +d=new Float64Array(2) +c=new Float64Array(2) +b0.ay=new A.bwK(s,A.b9(t.CO),r,q,p,o,n,b0,new A.pT(new A.ah(m),new A.ah(l)),new A.pT(new A.ah(k),new A.ah(j)),new A.ah(i),new A.lR(new A.ah(h),new A.l5(0,1)),new A.lR(new A.ah(g),new A.l5(0,1)),new A.bGM(new A.a7I(new A.ah(f),new A.ah(e)),new A.aCu(new A.ah(d))),new A.l5(0,1),new A.lR(new A.ah(c),new A.l5(0,1)),new A.lR(new A.ah(new Float64Array(2)),new A.l5(0,1))) +b5.d=new A.bPm() +b5=new A.tW(b0,-2147483647,b2,new A.fN([],t.pr),new A.fN([],t.Pk)) +s=A.d2t() +r=s.ax +q=new A.ah(new Float64Array(2)) +q.a0w(10) +p=r.at.e +p.tw(q) +p.ab() +r.dx=null +r=s +q=$.cW4() +p=$.cW3() +o=A.a([],t.qj) +n=A.dcf(A.dpJ(),t.cV) +r=new A.Mu(b5,r,q,p,$,b2,b2,b2,$,!1,!1,$,B.bt,o,!1,n,A.b9(t.S),A.b9(t.cA),0,b2,new A.fN([],t.pr),new A.fN([],t.Pk)) +r.aUH(s,b2,b5,t.eH) +r.bw1$=A.cER(b3) +r.azz$=A.cIW(b3) +b5=new A.Re(r,b2,t.AJ) +b5.b7L(r) +return A.bW(b4,b2,b5,b2,b2,b2,b2)}} +A.Dv.prototype={ +H(){return"FruitType."+this.b}} +A.bjq.prototype={} +A.bQf.prototype={ +gqq(a){return A.C($.Zv())}, +gwI(){return A.C($.Zv())}, +glj(){return A.C($.Zv())}, +giR(a){return A.C($.Zv())}, +gFO(){return A.C($.Zv())}, +yv(a){return this.gFO().$1$pos(a)}} +A.WN.prototype={ +$5$color$id$image$pos$radius(a,b,c,d,e){var s=this.a,r=b==null?s.a:A.ax(b),q=d==null?s.b:t.yw.a(d),p=e==null?s.c:A.f0(e),o=a==null?s.d:t.nN.a(a) +return this.b.$1(this.$ti.h("WN.1").a(s.bsB(o,r,c==null?s.e:A.ax(c),q,p)))}, +$0(){var s=null +return this.$5$color$id$image$pos$radius(s,s,s,s,s)}, +$1$color(a){var s=null +return this.$5$color$id$image$pos$radius(a,s,s,s,s)}, +$1$pos(a){var s=null +return this.$5$color$id$image$pos$radius(s,s,s,a,s)}} +A.akz.prototype={ +$5$color$id$image$pos$radius(a,b,c,d,e){var s=this,r=b==null?s.a.a:A.ax(b),q=d==null?s.a.b:t.yw.a(d),p=e==null?s.a.c:A.f0(e),o=a==null?s.a.d:t.nN.a(a),n=c==null?s.a.e:A.ax(c) +return s.b.$1(new A.ku(r,q,p,o,n))}, +$0(){var s=null +return this.$5$color$id$image$pos$radius(s,s,s,s,s)}, +$1$color(a){var s=null +return this.$5$color$id$image$pos$radius(a,s,s,s,s)}, +$1$pos(a){var s=null +return this.$5$color$id$image$pos$radius(s,s,s,a,s)}} +A.ku.prototype={ +k(a){var s=this +return"Fruit(id: "+s.a+", pos: "+s.b.k(0)+", radius: "+A.r(s.c)+", color: "+s.d.k(0)+", image: "+s.e+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.az(b)===A.I(q))if(b instanceof A.ku){s=b.a===q.a +if(s||s){s=b.b +r=q.b +if(s===r||s.l(0,r)){s=b.c===q.c +if(s||s){s=b.d===q.d +if(s||s){s=b.e===q.e +s=s||s}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.ad(A.I(s),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)}, +gFO(){return new A.akz(this,B.a4g,t.vc)}, +yv(a){return this.gFO().$1$pos(a)}, +bsB(a,b,c,d,e){return this.gFO().$5$color$id$image$pos$radius(a,b,c,d,e)}, +gqq(a){return this.a}, +gwI(){return this.b}, +glj(){return this.c}, +giR(a){return this.e}} +A.c0C.prototype={ +gFO(){return A.C($.Zv())}, +yv(a){return this.gFO().$1$pos(a)}} +A.aPs.prototype={} +A.ac1.prototype={} +A.asJ.prototype={ +a0l(a){return this.aM9(a)}, +aM9(a){var s=0,r=A.p(t.H),q,p +var $async$a0l=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=$.vh() +p=$.an.U$.z.i(0,p) +p.toString +q=A.amd(null,null,!1,null,new A.bcY(a),p,null,null,!0,!0,t.H) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a0l,r)}} +A.bcY.prototype={ +$1(a){var s=null,r=A.bv("Score: "+this.a,s,s,s,s,s,s,s,s,s,s,s,s,s,s) +return A.b3q(A.a([A.nq(!1,B.bt_,B.i,s,!0,s,s,s,s,new A.bcX(a),s,s)],t.p),s,s,s,s,B.i,r,s,s,B.kP,!1,s,s,s,s,B.bt2,s,s)}, +$S:1278} +A.bcX.prototype={ +$0(){var s,r,q,p +A.cN(this.a,!1).fD() +s=$.m0() +r=s.d9(0,t.nS) +q=s.d9(0,t.fx).a +p=q.geg(0) +B.b.aE(A.R(p,!0,A.z(p).h("B.E")),q.gwR(q)) +B.b.V(s.d9(0,t.Tk).a) +s=s.d9(0,t.PD) +s.a=0 +s.b.sce(0,"Score: 0") +r.r=r.f=r.e=null +r.y=!1 +J.d1c(r)}, +$S:0} +A.auE.prototype={} +A.aA8.prototype={} +A.aBU.prototype={} +A.aE_.prototype={} +A.aJL.prototype={} +A.auF.prototype={ +bm3(a){var s,r,q=a.a.fr +if(!(q instanceof A.pc)||!(a.b.fr instanceof A.pc))return +s=t.CE +r=this.a +if(B.b.ef(r,new A.bjM(s.a(q),s.a(a.b.fr))))return +r.push(a)}} +A.bjM.prototype={ +$1(a){var s,r,q=t.CE,p=q.a(a.a.fr),o=q.a(a.b.fr) +q=p.RG +s=this.a.RG +if(q.gqq(q)!==s.gqq(s)){r=this.b.RG +if(q.gqq(q)!==r.gqq(r)){q=o.RG +q=q.gqq(q)===s.gqq(s)||q.gqq(q)===r.gqq(r)}else q=!0}else q=!0 +return q}, +$S:1279} +A.PI.prototype={} +A.cgv.prototype={ +$1(a){a.f=new A.cgu(this.a)}, +$S:1280} +A.cgu.prototype={ +$1(a){var s=this.a,r=new A.a3i(s) +s.z9$.hZ(a) +s=$.cIh +$.cIh=s+1 +r.b=s +return r}, +$S:1281} +A.aA7.prototype={ +ia(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$ia=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.a0C(0) +p=new A.ah(new Float64Array(2)) +p.dm(10,15) +o=q.at.d +o.tw(p) +o.ab() +return A.n(null,r)}}) +return A.o($async$ia,r)}} +A.Mu.prototype={ +cI(a,b){this.Ja(0,b) +$.m0().d9(0,t.nS).Oa()}, +ia(a){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k,j,i,h,g,f,e +var $async$ia=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.aOw(0) +p=$.m0() +s=2 +return A.i(p.b6(0),$async$ia) +case 2:o=t.pr +n=t.Pk +m=new A.aBT(0,null,new A.fN([],o),new A.fN([],n)) +l=t.Fr +k=A.cMS(l) +j=A.W8() +i=new A.ah(new Float64Array(2)) +h=$.ae() +g=new A.zA(h,new Float64Array(2)) +g.tw(i) +g.ab() +f=new A.aDZ("Score: 0",k,j,g,B.iw,0,null,new A.fN([],o),new A.fN([],n)) +f.a1a(null,null,null,null,0,null,null,null,null) +f.ZZ() +l=A.cMS(l) +k=A.W8() +j=new A.ah(new Float64Array(2)) +i=new A.zA(h,new Float64Array(2)) +i.tw(j) +i.ab() +e=new A.aA7(null,"Next",l,k,i,B.iw,0,null,new A.fN([],o),new A.fN([],n)) +e.a1a(null,null,null,null,0,null,null,null,null) +e.ZZ() +l=$.Zy() +k=$.Zz().a +j=k[0] +i=k[1] +h=new A.ah(new Float64Array(2)) +h.dm(j+1,i) +i=q.k4 +h=i.NJ(l.W(0,h)) +j=k[0] +k=k[1] +g=new A.ah(new Float64Array(2)) +g.dm(-j-1,k) +g=i.NJ(l.W(0,g)) +q.km(m) +q.km(f) +q.km(e) +q.km(new A.auC(h,g,0,null,new A.fN([],o),new A.fN([],n))) +p.zU(new A.auF(A.a([],t.NP)),t.Tk) +o=t.nS +p.zU(new A.auG(q.gbIh(),q.gaJL(),q.gl4(q),i),o) +i=q.k3 +p.zU(new A.aJL(i),t.fx) +p.zU(new A.aBU(m),t.XF) +p.zU(new A.aE_(f),t.PD) +p.zU(new A.aA8(e),t.GZ) +p.zU(new A.auE(),t.Be) +p.zU(new A.asJ(),t.qu) +p.d9(0,o).ia(0) +i=i.go.b +i===$&&A.b() +i.d=new A.bjr() +return A.n(null,r)}}) +return A.o($async$ia,r)}} +A.bjr.prototype={ +avU(a){var s,r=a.b.b,q=a.c.b,p=r.fr,o=q.fr +if(p instanceof A.pc&&o instanceof A.pc){if(p.rx||o.rx)return +if(p.RG.glj()===o.RG.glj()){s=$.m0() +s.d9(0,t.nS) +s.d9(0,t.Tk).bm3(new A.PI(r,q))}}}} +A.aSd.prototype={ +pn(){var s=this.ags() +return s}} +A.aXq.prototype={ +wD(){var s,r +this.aOx() +s=this.bwm() +if(t.PF.a(s.ga3U().i(0,B.rA))==null){r=new A.a60(A.b9(t.HF),0,null,new A.fN([],t.pr),new A.fN([],t.Pk)) +s.ga3U().n(0,B.rA,r) +s.km(r)}}} +A.aXr.prototype={ +CJ(){this.gPx().auQ(0,A.dtA(),new A.cgv(this),t.o5) +this.aOm()}} +A.T3.prototype={ +J(){return new A.aSD(B.f)}} +A.aSD.prototype={ +q(a){var s=this,r=null,q="game.newGame",p=s.a.w,o=p!=null&&B.V.da(!1,s.gc6().dl(p.aHa(0),t.y)),n=A.E(s.a.d,r,r,r,r,r),m=t.p,l=A.a([],m) +if(!o)l.push(A.tR(!1,A.E(A.w(q,r,r),r,r,r,r,r),B.i,r,r,r,r,r,new A.c8F(s,a),r,r)) +else B.b.L(l,A.a([A.tR(!1,A.E(A.w("game.continueGame",r,r),r,r,r,r,r),B.i,r,r,r,r,r,new A.c8G(s,a),r,r),A.T8(!1,A.E(A.w(q,r,r),r,r,r,r,r),B.i,r,r,r,new A.c8H(s,a),r,r)],m)) +m=A.a([],m) +s.a.toString +return A.b3X(l,m,r,n,r)}} +A.c8F.prototype={ +$0(){var s=this.a.a.e +A.cc(this.b).fg("/game"+s,null,t.X)}, +$S:0} +A.c8G.prototype={ +$0(){var s=this.a.a.e +A.cc(this.b).fg("/game"+s+"?continue",null,t.X)}, +$S:0} +A.c8H.prototype={ +$0(){var s=this.a.a.e +A.cc(this.b).fg("/game"+s,null,t.X)}, +$S:0} +A.Kb.prototype={ +J(){return new A.afK(B.f)}} +A.afK.prototype={ +gabw(a){var s,r=null,q=this.e +if(q===$){s=A.a([new A.ah6(new A.aha(B.uP,B.uT,A.w("timetable.navigation",r,r)),"/timetable")],t.oE) +s.push(new A.ah6(new A.aha(B.uQ,B.azx,A.w("me.navigation",r,r)),"/me")) +this.e=s +q=s}return q}, +q(a){var s=this,r=null +if(A.bC(a,r,t.l).w.gnU(0)===B.dw)return A.bW(r,r,s.a.c,s.boP(),r,r,r) +else return A.bW(r,r,A.i1(A.a([s.boQ(),B.bw5,A.f7(s.a.c,1,r)],t.p),B.t,B.o,B.u),r,r,r,r)}, +boP(){var s=this.af1(),r=this.gabw(0),q=A.X(r).h("O<1,Kz>") +return A.cKh(A.R(new A.O(r,new A.c4o(),q),!0,q.h("aa.E")),this.gaCC(),s)}, +boQ(){var s=this.af1(),r=this.gabw(0),q=A.X(r).h("O<1,SY>") +return new A.a6b(A.R(new A.O(r,new A.c4p(),q),!0,q.h("aa.E")),s,this.gaCC(),B.b6t,null)}, +af1(){var s,r,q,p,o=this.c +o.toString +s=A.wp(o,t.X) +if(s==null)A.C(A.auU("There is no modal route above the current context.")) +r=s.b +if(!(r instanceof A.ne))A.C(A.auU("The parent route must be a page route to have a GoRouterState")) +q=o.a0(t.cl) +if(q==null)A.C(A.auU("There is no GoRouterStateRegistryScope above the current context.")) +p=q.f.aZt(r,s).b.k(0) +return Math.max(0,B.b.rE(this.gabw(0),new A.c4q(p)))}, +bCn(a){var s,r,q=this.a.c,p=q.c.a.y.gam() +if(p!=null){if(a===q.f)s=null +else{q=p.e.i(0,p.a.c.a.x[a]) +s=q==null?null:q.z}q=s!=null&&J.iL(s.a) +r=p.a +if(q)r.d.aF5(0,s) +else r.d.th(0,r.al7(a))}else q.d.th(0,q.al7(a))}} +A.c4o.prototype={ +$1(a){var s=a.a,r=s.b,q=s.a +return A.cy9(r,s.c,q)}, +$S:1282} +A.c4p.prototype={ +$1(a){var s=null,r=a.a,q=r.b,p=r.a +r=A.E(r.c,s,s,s,s,s) +return new A.SY(q,p,r)}, +$S:1283} +A.c4q.prototype={ +$1(a){return B.c.aC(this.a,a.b)}, +$S:1284} +A.bnw.prototype={ +$1(a){return this.aHy(a)}, +aHy(a){var s=0,r=A.p(t.R),q,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=$.vh() +p=$.an.U$.z.i(0,p) +p.toString +s=3 +return A.i(A.BI(!1,new A.bnv(a),p,t.N),$async$$1) +case 3:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:409} +A.bnv.prototype={ +$1(a){return new A.Hz(this.a,null)}, +$S:1286} +A.bny.prototype={ +$3(a,b,c){return new A.t1(A.a([new A.O_(c.a,"account"),new A.O_(c.b,"password")],t.sc),b,new A.bnx(),null,t.tF)}, +$S:1287} +A.bnx.prototype={ +$1(a){var s=J.ao(a) +return new A.fJ(s.i(a,0),s.i(a,1))}, +$S:1288} +A.b_f.prototype={$ia7Q:1, +gow(){return this.b}, +gx4(){return this.c}, +gPq(){return this.d}, +gId(){return this.r}, +gIe(){return this.w}, +gx5(){return this.x}, +gY7(){return this.y}, +gY8(){return this.z}} +A.b_g.prototype={$ia7Q:1, +gow(){return this.b}, +gx4(){return this.c}, +gPq(){return this.d}, +gId(){return this.r}, +gIe(){return this.w}, +gx5(){return this.x}, +gY7(){return this.y}, +gY8(){return this.z}} +A.aOo.prototype={$ia7Q:1, +gow(){return this.b}, +gx4(){return this.c}, +gPq(){return this.d}, +gId(){return this.r}, +gIe(){return this.w}, +gx5(){return this.x}, +gY7(){return this.y}, +gY8(){return this.z}} +A.lf.prototype={ +H(){return"Weekday."+this.b}, +eZ(){return this.a}, +S(a,b){return B.cf[B.d.M(this.a+b,7)]}, +W(a,b){return B.cf[B.d.M(this.a-b,7)]}} +A.bNc.prototype={ +$2(a,b){return new A.aY(a,"{"+a+"}",t.mT)}, +$S:1289} +A.aJZ.prototype={ +XP(a,b,c){return this.bA5(0,b,c)}, +bA5(a,b,c){var s=0,r=A.p(t.a),q,p,o +var $async$XP=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:p=B.b.bQ(A.a(c.pY("_").split("_"),t.s),"-") +o=A +s=3 +return A.i($.xI().XT(b+"/"+p+".yaml"),$async$XP) +case 3:p=o.dtq(e,null,!1,null).a +q=A.cS3(p.gj(p)) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$XP,r)}} +A.a2s.prototype={ +k(a){var s=this +return A.hj(A.a1(["balance",s.a,"baseBalance",s.b,"electricityBalance",s.c,"roomNumber",s.d],t.N,t.K))}} +A.a2t.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}m=A.ax(n.i(0,3)) +return new A.a2s(A.f0(n.i(0,0)),A.f0(n.i(0,1)),A.f0(n.i(0,2)),m)}, +eU(a,b,c){var s,r,q,p=null +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=4 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d)}, +gv(a){return B.d.gv(60)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a2t&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 60}} +A.a2u.prototype={ +J(){return new A.aOe(B.f)}} +A.aOe.prototype={ +a8(){var s,r=this +r.an() +s=$.cuR().a3(0,new A.bYX(r)) +r.w!==$&&A.ck() +r.w=s +if($.cn.I().gCA().gWh().gLD())r.jK(0,!1)}, +m(){var s=this.w +s===$&&A.b() +s.b.O(0,s.a) +this.ap()}, +jK(a,b){return this.bFr(0,b)}, +bFr(a,b){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j +var $async$jK=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:k=A.dU($.cn.I().gCA().gWh().a,"/life/electricity/selectedRoom",t.N) +if(k==null){s=1 +break}p=4 +s=7 +return A.i(A.bge(k),$async$jK) +case 7:p=2 +s=6 +break +case 4:p=3 +j=o +if(b){l=n.c +if(l==null){s=1 +break}A.qK(l,null,A.E(A.w("electricity.refreshFailedTip",null,null),null,null,null,null,null),B.aW)}s=1 +break +s=6 +break +case 3:s=2 +break +case 6:if(b){l=n.c +if(l==null){s=1 +break}A.qK(l,null,A.E(A.w("electricity.refreshSuccessTip",null,null),null,null,null,null,null),B.aW)}case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$jK,r)}, +q(a){A.d64()}} +A.bYX.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.jK(0,!0),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bY.prototype={ +k(a){var s=this +return B.aO.yT(A.a1(["timestamp",s.a.k(0),"consumerId",s.b,"type",s.c.H(),"balanceBefore",s.d,"balanceAfter",s.e,"deltaAmount",s.f,"deviceName",s.r,"note",s.w],t.N,t.K),null)}} +A.fE.prototype={ +H(){return"TransactionType."+this.b}} +A.abw.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.bY(t.d.a(n.i(0,0)),A.bZ(n.i(0,1)),t.Nk.a(n.i(0,2)),A.f0(n.i(0,3)),A.f0(n.i(0,4)),A.f0(n.i(0,5)),A.ax(n.i(0,6)),A.ax(n.i(0,7)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=8 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w)}, +gv(a){return B.d.gv(51)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.abw&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 51}} +A.abx.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.Zs +case 1:return B.bu1 +case 2:return B.bu2 +case 3:return B.bu5 +case 4:return B.qq +case 5:return B.y9 +case 6:return B.bu4 +case 7:return B.bu3 +case 8:return B.bu6 +default:return B.Zs}}, +eU(a,b,c){var s=null +switch(c.a){case 0:A.a5(0,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break +case 3:A.a5(3,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +break +case 4:A.a5(4,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +break +case 5:A.a5(5,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +break +case 6:A.a5(6,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +break +case 7:A.a5(7,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +break +case 8:A.a5(8,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +break}}, +gv(a){return B.d.gv(50)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.abx&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 50}} +A.jw.prototype={ +H(){return"StatisticsMode."+this.b}, +gayN(){if(this===B.hg)throw A.d(A.e9(0,1,4,null,null)) +return B.Js[this.a-1]}, +HL(a){var s,r,q,p +switch(this.a){case 0:s=A.u_(a,new A.bHC(),t.uj,t.IM) +r=t._3 +q=s.gep(s).fK(0,new A.bHD(),r).eO(0) +A.Sj(q,new A.bHE(),r,t.d) +return q +case 1:p=A.u_(a,new A.bHG(),t.uj,t.BC) +r=t._3 +q=p.gep(p).fK(0,new A.bHH(),r).eO(0) +A.Sj(q,new A.bHI(),r,t.d) +return q +case 2:p=A.u_(a,new A.bHJ(),t.uj,t.BC) +r=t._3 +q=p.gep(p).fK(0,new A.bHK(),r).eO(0) +A.Sj(q,new A.bHL(),r,t.d) +return q +case 3:p=A.u_(a,new A.bHM(),t.uj,t.S) +r=t._3 +q=p.gep(p).fK(0,new A.bHN(),r).eO(0) +A.Sj(q,new A.bHF(),r,t.d) +return q}}, +aes(a,b){var s,r=null +switch(this.a){case 0:s=A.a1B(b,A.cL(b),23,59,r,59,r) +break +case 1:s=A.a1B(b,A.cL(b)+6,23,59,r,59,r) +break +case 2:s=A.a1B(b,A.crD(A.bp(b),A.bp(b)),23,59,r,59,r) +break +case 3:s=A.a1B(b,A.crD(A.bp(b),A.bp(b)),23,59,12,59,r) +break +default:s=r}return a!=null&&a.a")))}else o.push(A.hs(new A.c_j(s),J.bn(j))) +return A.bW(k,m,A.a8y(A.a([A.cD(B.k,n.x,B.m,m,B.hl,m,!1,m,B.v,o),A.hr(n.y,new A.c_k(n,s),t.y)],p)),m,m,m,m)}, +boN(a){var s=t.gG,r=t.Yb +return A.bEa(new A.c_9(this),A.R(new A.O(B.Js,new A.c_a(),s),!0,s.h("aa.E")),A.d9([a],r),!1,null,r)}, +bov(a){var s,r,q=this,p=null,o=q.gc6().dl($.cuF(),t.wZ),n=q.gc6().dl($.b2O(),t.Yb),m=q.gzo(0)>0?new A.c_7(q):p,l=q.c +l.toString +m=A.du(p,A.b2(A.bc(l)===B.y?B.uv:B.ayy,p,p,p,p,p,p,p,p,p,p),p,m,p) +s=q.c +s.toString +s=A.E(A.dve(s,a,n),p,p,p,p,p) +l=q.gzo(0)s){if(!p)r.C(new A.c_l(r))}else if(p)r.C(new A.c_m(r))}, +$S:0} +A.c_l.prototype={ +$0(){this.a.y.sj(0,!0)}, +$S:0} +A.c_m.prototype={ +$0(){this.a.y.sj(0,!1)}, +$S:0} +A.c_f.prototype={ +$2(a,b){var s=this.a +s.C(new A.c_e(s,b))}, +$S:1301} +A.c_e.prototype={ +$0(){this.a.w=J.bn(this.b)-1}, +$S:0} +A.c_g.prototype={ +$1(a){return a.c}, +$S:413} +A.c_h.prototype={ +$2(a,b){var s,r,q=this.a[b],p=J.dP(q.b,new A.c_d(),t.i),o=A.R(p,!0,A.z(p).h("aa.E")) +p=A.DN(o) +s=o.length +r=A.cJa(o) +if(r==null)r=A.C(A.a0("No element")) +return new A.QU(q.a,p/s,r,null)}, +$S:1303} +A.c_d.prototype={ +$1(a){return a.f}, +$S:138} +A.c_i.prototype={ +$1(a){return new A.rs(!0,J.bn(a.a),new A.c_b(a,this.a),new A.c_c(a),null)}, +$S:1305} +A.c_b.prototype={ +$4(a,b,c,d){var s=null,r=this.a.b +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,c,!1,s,s,s,s,s,A.E(A.b1Y(r,this.b.gayN().a_p(r)),s,s,s,s,s),s,d,s)}, +$C:"$4", +$R:4, +$S:292} +A.c_c.prototype={ +$2(a,b){return new A.Nc(J.aS(this.a.a,b),null)}, +$S:416} +A.c_j.prototype={ +$2(a,b){return new A.Nc(J.aS(this.a.a,b),null)}, +$S:416} +A.c_k.prototype={ +$2(a,b){var s=b?B.h:B.bbd +return A.bCd(A.cvk(A.BS(b?this.a.bov(this.b.b):null,B.fy,B.H,B.H,A.Oo()),B.H,B.fy,s),B.cW)}, +$S:1308} +A.c_a.prototype={ +$1(a){var s=null +return new A.ig(a,s,A.E(A.w("expenseRecords.statsMode."+a.b,s,s),s,s,s,s,s),t.Z_)}, +$S:1309} +A.c_9.prototype={ +$1(a){var s,r=this.a.gc6(),q=$.b2O(),p=q.ch +if(p===$){s=A.cQZ(q,q.$ti.c) +p!==$&&A.a_() +q.ch=s +p=s}r=r.d8(0,p,t._b) +J.eh(r).E7(r,a.ga2(a))}, +$S:1310} +A.c_7.prototype={ +$0(){var s=this.a +s.C(new A.c_6(s))}, +$S:0} +A.c_6.prototype={ +$0(){var s=this.a +s.w=s.gzo(0)-1}, +$S:0} +A.c_8.prototype={ +$0(){var s=this.a +s.C(new A.c_5(s))}, +$S:0} +A.c_5.prototype={ +$0(){var s=this.a +s.w=s.gzo(0)+1}, +$S:0} +A.csq.prototype={ +$1(a){var s=a.a +return new A.aUq(A.bp(s),A.b7(s))}, +$S:1311} +A.csr.prototype={ +$1(a){return new A.aUr(A.cxz(a.b,new A.csp(),t.uj),a.a)}, +$S:1312} +A.csp.prototype={ +$2(a,b){return-B.d.bn(a.a.a,b.a.a)}, +$S:1313} +A.css.prototype={ +$2(a,b){return A.dh_(a.b,b.b,!1)}, +$S:1314} +A.ctS.prototype={ +$1(a){return a.c}, +$S:413} +A.ctT.prototype={ +$2(a,b){return new A.aY(a,A.doA(b),t.tA)}, +$S:1315} +A.ctU.prototype={ +$2(a,b){var s=A.doB(b),r=this.a.i(0,a) +if(r==null)r=0 +return new A.aY(a,new A.aUB(r/this.b,b,s.b),t.VX)}, +$S:1316} +A.a2V.prototype={ +J(){return new A.aOE(B.f)}} +A.aOE.prototype={ +q(a){var s=null +return A.dd(A.a([new A.aA(new A.af(16,8,0,8),this.bo_(),s),new A.tu(1.5,A.iW(new A.a2W(this.a.c,s),8,12),s)],t.yU),B.a4,s,B.o,B.u)}, +bo_(){var s=this,r=null,q=s.a.c,p=q.r,o=q.a.aes(new A.am(Date.now(),!1),p),n=s.a.c.a +$label0$0:{if(B.hg===n){q=new A.IM(A.w("expenseRecords.stats.hourlyAverage",r,r),"\xa5"+B.e.aZ(s.a.c.e,2),A.cw4(r).d4(p),r) +break $label0$0}if(B.qa===n){q=new A.IM(A.w("expenseRecords.stats.monthlyAverage",r,r),"\xa5"+B.e.aZ(s.a.c.e,2),A.b1Y(p,o),r) +break $label0$0}if(B.jL===n||B.q9===n){q=new A.IM(A.w("expenseRecords.stats.dailyAverage",r,r),"\xa5"+B.e.aZ(s.a.c.e,2),A.b1Y(p,o),r) +break $label0$0}q=r}return q}} +A.a2W.prototype={ +J(){return new A.aOF(B.f)}} +A.aOF.prototype={ +q(a){var s,r,q,p,o=this,n=null,m=A.cF5(n,!0,n,n,n,new A.bZS(o),n,A.cF6(new A.bZT(a),new A.bZU(o,a))),l=A.a([],t.IK) +if(isFinite(o.a.c.e)){s=A.cIL(B.hk,B.aAT,new A.bZV(),B.u7,!0,A.G(a).p3.ax) +r=o.a.c +q=A.G(a).ay +p=q.y +q=p==null?q.f:p +l.push(A.cIK(A.Y(B.e.aF(127.5),q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),A.a([5,5],t.t),n,n,s,n,B.eN,3,r.e))}s=A.bic(n,!1) +r=A.pk(o.a.c.b,new A.bZW(o,a),t.c6,t.DK) +return A.d2_(A.cvm(B.a1C,n,A.R(r,!0,r.$ti.h("B.E")),m,n,s,new A.QV(l,B.IP,!0),new A.a39(!0,!0,n,new A.bZX(a),new A.bZY(),!1,n,A.doX(),A.doY()),40,n,n,n,new A.a3g(!0,new A.Hn(16,n,new A.Mf(!0,new A.bZZ(o,a),60,n),!0),B.zF,B.zF,new A.Hn(16,n,new A.Mf(!0,new A.c__(o,a),28,n),!0))))}, +bpo(a,b){var s,r,q=this.a.c +if(q.a===B.hg)return"\xa5"+A.cBs(b) +else{s=A.DP(q.b[a]) +if(s==null)return"" +r=s.a +return this.a.c.a.bwF(r)+"\n \xa5"+A.cBs(b)}}} +A.bZU.prototype={ +$4(a,b,c,d){var s=this.a.bpo(b,c.b),r=A.G(this.b).p3.w +return new A.y0(s,r==null?B.e2:r)}, +$C:"$4", +$R:4, +$S:1317} +A.bZT.prototype={ +$1(a){var s=A.G(this.a).ay,r=s.dx +return r==null?s.cy:r}, +$S:417} +A.bZS.prototype={ +$2(a,b){var s=this.a +s.C(new A.bZR(s,a,b))}, +$S:321} +A.bZR.prototype={ +$0(){var s,r=this +if(r.b.gabo()){s=r.c +s=s==null||s.a==null}else s=!0 +if(s){r.a.d=-1 +return}r.a.d=r.c.a.d}, +$S:0} +A.c__.prototype={ +$2(a,b){return this.a.a.c.x.$3(this.b,a,b)}, +$S:245} +A.bZZ.prototype={ +$2(a,b){return this.a.a.c.w.$3(this.b,a,b)}, +$S:245} +A.bZV.prototype={ +$1(a){return A.w("expenseRecords.stats.averageLineLabel",null,null)}, +$S:419} +A.bZY.prototype={ +$1(a){return B.e.M(a,5)===0}, +$S:66} +A.bZX.prototype={ +$1(a){var s=A.G(this.a).ay.f +return A.d71(A.Y(51,s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),null,null,1)}, +$S:420} +A.bZW.prototype={ +$2(a,b){var s=null,r={},q=this.a.d,p=A.b2l(b) +r.a=0 +q=a===q?new A.bx(A.G(this.b).ay.db,1.5,B.O,-1):B.zU +return A.cvo(A.a([A.cF4(s,s,s,q,B.D,s,s,J.BK(p.b).fK(0,new A.bZQ(r),t.Gu).eO(0),p.a,s)],t.UA),s,s,s,a)}, +$S:1322} +A.bZQ.prototype={ +$1(a){var s=this.a,r=s.a,q=r+a.b.c,p=a.a.d +s.a=q +return new A.nQ(r,q,p.b,B.ru)}, +$S:1323} +A.Vk.prototype={} +A.bHo.prototype={ +$1(a){return A.DN(J.dP(a,new A.bHn(),t.i))}, +$S:166} +A.bHn.prototype={ +$1(a){return a.f}, +$S:138} +A.bHp.prototype={ +$3(a,b,c){var s=null,r=B.e.au(b) +if(!(r===0||r===this.a.length-1)&&B.d.M(r,4)!==0)return B.al +return A.a9A(c.w,A.bv(""+r,s,s,s,s,s,s,s,s,A.G(a).p3.at,s,s,s,s,s))}, +$C:"$3", +$R:3, +$S:247} +A.bHv.prototype={ +$1(a){return A.DN(J.dP(a,new A.bHu(),t.i))}, +$S:166} +A.bHu.prototype={ +$1(a){return a.f}, +$S:138} +A.bHw.prototype={ +$1(a){return a>0}, +$S:66} +A.bHx.prototype={ +$3(a,b,c){var s=null,r=B.e.au(b),q=A.G(a) +return A.a9A(c.w,A.bv(A.w("weekdayShort."+B.aQn[r].a,s,s),s,s,s,s,s,s,s,s,q.p3.at,s,s,s,s,s))}, +$C:"$3", +$R:3, +$S:423} +A.bHr.prototype={ +$1(a){return A.DN(J.dP(a,new A.bHq(),t.i))}, +$S:166} +A.bHq.prototype={ +$1(a){return a.f}, +$S:138} +A.bHs.prototype={ +$1(a){return a>0}, +$S:66} +A.bHt.prototype={ +$3(a,b,c){var s=null,r=B.e.au(b) +if(!(r===0||r===this.a.length-1)&&B.d.M(r,this.b)!==0)return B.al +return A.a9A(c.w,A.bv(""+(r+1),s,s,s,s,s,s,s,s,A.G(a).p3.at,s,s,s,s,s))}, +$C:"$3", +$R:3, +$S:247} +A.bHz.prototype={ +$1(a){return A.DN(J.dP(a,new A.bHy(),t.i))}, +$S:166} +A.bHy.prototype={ +$1(a){return a.f}, +$S:138} +A.bHA.prototype={ +$1(a){return a>0}, +$S:66} +A.bHB.prototype={ +$3(a,b,c){var s,r=null,q=B.e.au(b),p=A.cd(0,q+1,1,0,0,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +s=this.a.d4(new A.am(p,!1)) +p=A.G(a) +return A.a9A(c.w,A.bv(B.c.R(s,0,Math.min(3,s.length)),r,r,r,r,r,r,r,r,p.p3.at,r,r,r,r,r))}, +$C:"$3", +$R:3, +$S:423} +A.IM.prototype={ +q(a){var s=null,r=A.a([new A.IN(this.c,s),A.E(this.d,s,s,s,A.G(a).p3.r,s)],t.ix),q=this.e +if(q!=null)r.push(new A.IN(q,s)) +return A.dd(r,B.a4,s,B.o,B.u)}} +A.IN.prototype={ +q(a){var s=null,r=A.G(a).p3.w,q=r==null?s:r.bu(A.G(a).CW) +return A.E(this.c,s,s,s,q,s)}} +A.a2X.prototype={ +J(){return new A.aOG(B.f)}} +A.aOG.prototype={ +q(a){var s=null,r=this.a.c +return A.dd(A.a([new A.aA(new A.af(16,8,0,0),new A.atJ(r.f,s),s),new A.tu(1.5,new A.a2Y(r,s),s),A.bCd(new A.aA(new A.af(8,8,8,8),this.boG(),s),B.ca)],t.yU),B.a4,s,B.o,B.u)}, +boG(){var s=this.a.c.c,r=t.VX,q=t.Jy +s=A.R(s.gep(s),!0,r) +A.dtz(s,new A.c_0(),A.cBD(A.cCc(),q),r,q) +q=A.X(s).h("O<1,vy>") +return A.nl(A.R(new A.O(s,new A.c_1(this),q),!0,q.h("aa.E")),B.bV,4,4)}} +A.c_0.prototype={ +$1(a){return J.cEo(a.b.c)}, +$S:1327} +A.c_1.prototype={ +$1(a){var s,r=null,q=a.a,p=a.b.c,o=q.d,n=this.a.c +n.toString +s=A.cAQ(o.b,A.G(n).ay.b) +o=A.b2(o.a,s,r,r,r,r,r,r,r,r,r) +n=A.dH(r,r,s,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.cFJ(o,r,A.E(A.w("expenseRecords.type."+q.b,r,r)+": "+A.w("unit.rmb",A.a([B.e.aZ(p,2)],t.s),r),r,r,r,r,r),n,r)}, +$S:1328} +A.atJ.prototype={ +q(a){var s=null +return new A.IM(A.w("expenseRecords.stats.total",s,s),"\xa5"+B.e.aZ(this.c,2),s,s)}} +A.a2Y.prototype={ +J(){return new A.aT3(B.f)}} +A.aT3.prototype={ +q(a){var s=null,r=A.db3(new A.c9y(this)),q=A.bic(s,!1),p=this.a.d.c +p=A.cxy(p.gep(p),new A.c9z(this,a),t.VX,t.Ka) +return new A.a76(A.cKQ(q,s,60,r,A.R(p,!0,p.$ti.h("B.E")),0,s),B.H,B.cC,s,s)}} +A.c9y.prototype={ +$2(a,b){var s=this.a +s.C(new A.c9x(s,a,b))}, +$S:1329} +A.c9x.prototype={ +$0(){var s=this +if(!s.b.gabo()||s.c==null||!1){s.a.w=-1 +return}s.a.w=s.c.a.b}, +$S:0} +A.c9z.prototype={ +$2(a,b){var s,r=null,q=a===this.a.w,p=b.b,o=p.c,n=p.a,m=b.a.d,l=this.b,k=A.cAQ(m.b,A.G(l).ay.b),j=A.Y(B.e.aF(255*(q?1:0.8)),k.gj(k)>>>16&255,k.gj(k)>>>8&255,k.gj(k)&255),i=B.e.aZ(n*100,2) +l=A.G(l) +s=q?55:50 +return A.cKR(1.5,A.b2(m.a,k,r,r,r,r,r,r,r,r,r),r,j,r,s,r,i+"%",r,l.p3.x,o)}, +$S:1330} +A.QU.prototype={ +q(a){var s,r=null,q=this.c,p=q.d +p=A.b2(p.a,p.b,r,r,r,r,r,r,r,r,r) +s=t.N +q=A.E(A.w("expenseRecords.stats.averageSpendIn",r,A.a1(["amount","\xa5"+B.e.aZ(this.d,2),"type",A.w("expenseRecords.type."+q.b,r,r)],s,s)),r,r,r,r,r) +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,p,r,r,r,r,r,r,!1,r,r,A.E(A.w("expenseRecords.stats.maxSpendOf",r,A.a1(["amount","\xa5"+B.e.aZ(this.e,2)],s,s)),r,r,r,r,r),r,r,q,r,r,r)}} +A.Nc.prototype={ +q(a){var s,r,q,p,o,n=null,m=this.c,l=m.r +if(!(l.length!==0)){s=m.w +l=s.length!==0?s:n}s=l==null?A.w("unknown",n,n):l +s=A.bv(s,n,n,n,n,n,n,n,n,A.G(a).p3.x,n,n,n,n,n) +r=a.a0(t.L).r.a +r===$&&A.b() +r=$.h2().i(0,r) +r=A.a([A.E((r==null?$.es():r).gIe().d4(m.a),n,n,n,n,n)],t.LT) +q=m.w +if(l!==q&&q.length!==0)r.push(A.E(q,n,n,n,n,n)) +if($.eN.I().gnS(0))r.push(A.E(A.r(m.d)+" => "+A.r(m.e),n,n,n,n,n)) +r=A.dd(r,B.a4,n,B.o,B.u) +q=m.c.d +q=A.cLL(q.a,q.b,32) +p=A.dg_(m) +o=A.G(a).p3.r +if(o==null)m=n +else{o=o.bu(A.cNa(m)?B.d8:B.dZ) +m=o}return A.aX(!1,n,n,n,!0,n,n,n,n,!1,n,q,n,n,n,n,n,n,!1,n,n,r,n,n,s,n,A.E(p,n,n,n,m,n),n)}} +A.JZ.prototype={ +J(){return new A.aQV(B.f)}} +A.aQV.prototype={ +q(a){var s,r=null,q=this.gc6().dl($.e2.I().gIj(),t.xk),p=this.gc6().dl($.cn.I().ga_d(),t.D4) +if(p==null)p=B.cm +s=A.a([],t.p) +if(q!==B.fU)s.push(B.bmU) +if(p.c.a)s.push(B.bmP) +return A.bW(r,r,A.wr(A.cyI(A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,s),new A.c3G(),B.pP),!0,new A.c3H()),r,r,r,!1)}} +A.c3H.prototype={ +$2(a,b){var s=null +return A.a([new A.pv(a.a0(t.t7).f.d,A.ju(s,!0,s,s,!1,b,!1,A.E(A.w("life.navigation",s,s),s,s,s,s,s),s),s)],t.p)}, +$S:57} +A.c3G.prototype={ +$0(){var s=0,r=A.p(t.H) +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fk().$1("Life page refreshed") +s=2 +return A.i(A.yY(),$async$$0) +case 2:s=3 +return A.i($.cuR().ab(),$async$$0) +case 3:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.K_.prototype={ +J(){return new A.aQW(B.f)}} +A.aQW.prototype={ +q(a){var s=null,r=t.p +return A.bW(s,s,A.cD(B.k,s,B.m,s,B.ck,s,!1,s,B.v,A.a([A.uu(s,!1,!0,!1,A.E(A.w("life.navigation",s,s),s,s,s,s,s)),A.Fm(A.Mk(A.a([this.boi(),this.bon()],r),!0,!0,!0))],r)),s,s,s,s)}, +boi(){return new A.Fo(new A.c3K(this),null)}, +bon(){return new A.Fo(new A.c3N(this),null)}} +A.c3K.prototype={ +$2(a,b){var s=null,r=A.E(A.w("life.settings.electricity.autoRefresh.title",s,s),s,s,s,s,s),q=A.E(A.w("life.settings.electricity.autoRefresh.desc",s,s),s,s,s,s,s),p=this.a.c +p.toString +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,A.b2(A.bc(p)===B.y?B.fz:B.fA,s,s,s,s,s,s,s,s,s,s),s,s,s,s,s,s,!1,s,s,q,s,s,r,s,A.jy(new A.c3J(b),$.cn.I().gCA().gWh().gLD()),s)}, +$S:170} +A.c3J.prototype={ +$1(a){this.a.$1(new A.c3I(a))}, +$S:4} +A.c3I.prototype={ +$0(){A.ds($.cn.I().gCA().gWh().a,"/life/electricity/autoRefresh",this.a)}, +$S:0} +A.c3N.prototype={ +$2(a,b){var s=null,r=A.E(A.w("life.settings.expenseRecords.autoRefresh.title",s,s),s,s,s,s,s),q=A.E(A.w("life.settings.expenseRecords.autoRefresh.desc",s,s),s,s,s,s,s),p=this.a.c +p.toString +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,A.b2(A.bc(p)===B.y?B.fz:B.fA,s,s,s,s,s,s,s,s,s,s),s,s,s,s,s,s,!1,s,s,q,s,s,r,s,A.jy(new A.c3M(b),$.cn.I().gCA().gaac().gLD()),s)}, +$S:170} +A.c3M.prototype={ +$1(a){this.a.$1(new A.c3L(a))}, +$S:4} +A.c3L.prototype={ +$0(){A.ds($.cn.I().gCA().gaac().a,"/life/expenseRecords/autoRefresh",this.a)}, +$S:0} +A.boU.prototype={ +gWh(){var s=this.b +if(s===$){s!==$&&A.a_() +s=this.b=new A.bYW(this.a)}return s}, +gaac(){var s=this.c +if(s===$){s!==$&&A.a_() +s=this.c=new A.c_2(this.a)}return s}} +A.bYW.prototype={ +gLD(){var s=A.dU(this.a,"/life/electricity/autoRefresh",t.y) +return s==null?!0:s}} +A.c_2.prototype={ +gLD(){var s=A.dU(this.a,"/life/expenseRecords/autoRefresh",t.y) +return s==null?!0:s}} +A.b2Y.prototype={ +$1(a){return!1}, +$S:1332} +A.K8.prototype={ +J(){var s,r,q=$.eN.I().gW3()?"2300421153":null +q=q==null?B.bU:new A.cu(q,B.bz,B.aw) +s=$.ae() +r=$.eN.I().gW3()?"liplum-sit-life":null +r=r==null?B.bU:new A.cu(r,B.bz,B.aw) +return new A.afJ(new A.eZ(q,s),new A.eZ(r,s),new A.aR(null,t.am),B.f)}} +A.afJ.prototype={ +a8(){this.an() +this.w.a3(0,this.gaCu())}, +m(){var s,r=this,q=r.w,p=$.ae() +q.k3$=p +q.k2$=0 +s=r.x +s.k3$=p +s.k2$=0 +q.O(0,r.gaCu()) +r.ap()}, +bBE(){var s=this.w,r=s.a.a,q=r.toUpperCase() +if(r!==q)s.sce(0,q)}, +H3(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$H3=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.w.a.a +n=q.x.a.a +s=o==="2300421153"&&n==="liplum-sit-life"?2:4 +break +case 2:s=5 +return A.i(q.NL(),$async$H3) +case 5:s=3 +break +case 4:p=q.y.gam() +s=6 +return A.i(q.zy(o,n,(p==null?t.F0.a(p):p).a_4()),$async$H3) +case 6:case 3:return A.n(null,r)}}) +return A.o($async$H3,r)}, +NL(){var s=0,r=A.p(t.H),q,p=this,o +var $async$NL=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if(p.c==null){s=1 +break}p.C(new A.c4f(p)) +s=3 +return A.i(A.jk(A.cp(0,0,0,B.ex.px(2000),0,0),null,t.z),$async$NL) +case 3:o=$.cn.I().a +if(A.dU(o,"/settings/lastSignature",t.N)==null)A.ds(o,"/settings/lastSignature","Liplum") +$.e2.I() +A.ds($.iy.I(),"/oa/credentials",B.tv) +$.e2.I() +A.ds($.iy.I(),"/oa/loginStatus",B.jo) +$.e2.I() +o=Date.now() +A.ds($.iy.I(),"/oa/lastAuthTime",new A.am(o,!1)) +$.e2.I() +A.ds($.iy.I(),"/oa/userType",B.e0) +A.ds($.eN.I().a,"/dev/demoMode",!0) +s=4 +return A.i(A.Jz(),$async$NL) +case 4:if(p.c==null){s=1 +break}p.C(new A.c4g(p)) +o=p.c +o.toString +A.cc(o).qV(0,"/",null) +case 1:return A.n(q,r)}}) +return A.o($async$NL,r)}, +zy(a,b,c){return this.bAt(a,b,c)}, +bAt(a,b,c){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$zy=A.l(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:h=A.b1T(a) +s=!c||h==null||a.length===0||b.length===0?3:4 +break +case 3:k=n.c +k.toString +j=A.w("login.formatError",null,null) +s=5 +return A.i(A.kS(k,A.w("login.validateInputAccountPwdRequest",null,null),A.w("close",null,null),!0,j),$async$zy) +case 5:s=1 +break +case 4:if(n.c==null){s=1 +break}n.C(new A.c4h(n)) +if($.bav==null)$.bav=new A.apG() +f=J +s=8 +return A.i($.cCp().lD(),$async$zy) +case 8:s=f.tr(e,B.kF)?6:7 +break +case 6:if(n.c==null){s=1 +break}n.C(new A.c4i(n)) +k=n.c +k.toString +j=A.w("network.error",null,null) +s=9 +return A.i(A.kS(k,A.w("network.noAccessTip",null,null),A.w("close",null,null),!0,j),$async$zy) +case 9:s=1 +break +case 7:p=11 +s=14 +return A.i(A.Sq(new A.fJ(a,b)),$async$zy) +case 14:if(n.c==null){s=1 +break}n.C(new A.c4j(n)) +k=n.c +k.toString +A.cc(k).qV(0,"/",null) +p=2 +s=13 +break +case 11:p=10 +g=o +m=A.ag(g) +l=A.aD(g) +if(n.c==null){s=1 +break}n.C(new A.c4k(n)) +s=t.VI.b(m)?15:16 +break +case 15:k=n.c +k.toString +s=17 +return A.i(A.BB(k,m,l),$async$zy) +case 17:case 16:s=13 +break +case 10:s=2 +break +case 13:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$zy,r)}, +q(a){var s,r,q,p,o=this,n=null +o.gc6().H_($.e2.I().gt9(),new A.c4c(o)) +s=o.a.d?A.E(A.w("login.oa.loginRequired",n,n),n,n,n,n,n):B.AT +r=t.p +q=A.a([A.du(n,B.ayV,n,new A.c4d(a),n)],r) +s=A.jb(q,n,!0,n,o.Q?B.de:n,1,n,n,n,!1,n,!1,n,n,n,n,!0,n,n,n,n,n,s,n,n,n,1,n) +if(o.a.d)q=B.ayX +else{q=A.w("login.oa.welcomeHeader",n,n) +p=o.c +p.toString +p=A.G(p).p3.b +q=A.E(q,n,n,n,p==null?n:p.VO(B.cc),B.at)}return A.dn(n,A.bW(s,n,A.nk(new A.aA(new A.af(25,0,25,0),A.aDC(A.dd(A.a([q,B.bfr,o.boK(),B.bmE,o.LJ()],r),B.t,n,B.o,B.Z),B.pn),n)),B.ajV,n,n,n),B.m,!1,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,new A.c4e(a),n,n,n,n,n,n,n,!1,B.ac)}, +boK(){var s,r,q,p,o,n=this,m=null,l=n.Q,k=A.w("credentials.account",m,m),j=A.w("login.oa.accountHint",m,m),i=n.c +i.toString +l=A.Av(!1,B.aQi,!0,A.Zp(),n.w,A.md(m,m,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,m,j,m,m,A.b2(A.bc(i)===B.y?B.iZ:B.nH,m,m,m,m,m,m,m,m,m,m),m,m,m,m,m,k,m,m,m,m,m,m,m,m,m,m,m,m,m),!1,m,m,m,1,!1,m,m,m,l,B.lZ,new A.c48()) +k=n.z +j=k?B.xX:m +i=n.Q +s=A.w("credentials.oa.oaPwd",m,m) +r=A.w("login.oa.oaPwdHint",m,m) +q=n.c +q.toString +p=A.b2(A.bc(q)===B.y?B.ux:B.uK,m,m,m,m,m,m,m,m,m,m) +q=n.z +o=n.c +if(q){o.toString +q=A.bc(o)===B.y?B.nE:B.uL}else{o.toString +q=A.bc(o)===B.y?B.nF:B.uI}return A.aum(B.iz,new A.Hl(A.cS(A.a([l,A.Av(!1,B.aPC,!0,new A.c49(),n.x,A.md(m,m,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,m,r,m,m,p,m,m,m,m,m,s,m,m,m,m,m,m,m,m,A.du(m,A.b2(q,m,m,m,m,m,m,m,m,m,m),m,new A.c4a(n),m),m,m,m,m),!1,m,m,j,1,!k,m,new A.c4b(n),m,i,B.qk,m)],t.p),B.t,m,B.o,B.u,m,m,B.x),m),n.y)}, +LJ(){var s=this,r=s.w,q=t.Rp,p=A.a([A.hr(r,new A.c44(s),q)],t.p7) +if(!s.a.d)p.push(A.hr(r,new A.c45(s),q)) +return A.i1(p,B.t,B.fV,B.u)}} +A.c4f.prototype={ +$0(){return this.a.Q=!0}, +$S:0} +A.c4g.prototype={ +$0(){return this.a.Q=!1}, +$S:0} +A.c4h.prototype={ +$0(){return this.a.Q=!0}, +$S:0} +A.c4i.prototype={ +$0(){return this.a.Q=!1}, +$S:0} +A.c4j.prototype={ +$0(){return this.a.Q=!1}, +$S:0} +A.c4k.prototype={ +$0(){return this.a.Q=!1}, +$S:0} +A.c4c.prototype={ +$2(a,b){var s +if(b!=null){s=this.a +s.w.sce(0,b.a) +s.x.sce(0,b.b)}}, +$S:1333} +A.c4e.prototype={ +$0(){A.yP(this.a).zW(A.hH(!0,null,!0,!0,null,null,!1))}, +$S:0} +A.c4d.prototype={ +$0(){A.cc(this.a).fg("/settings",null,t.X)}, +$S:0} +A.c48.prototype={ +$1(a){return A.dw4(a,new A.c47())}, +$S:265} +A.c47.prototype={ +$0(){return A.w("login.invalidAccountFormat",null,null)}, +$S:18} +A.c49.prototype={ +$2(a,b){return A.ZG(b)}, +$S:249} +A.c4b.prototype={ +$1(a){return this.aHM(a)}, +aHM(a){var s=0,r=A.p(t.H),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.H3(),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:171} +A.c4a.prototype={ +$0(){var s=this.a +s.C(new A.c46(s))}, +$S:0} +A.c46.prototype={ +$0(){var s=this.a +s.z=!s.z}, +$S:0} +A.c44.prototype={ +$2(a,b){var s=null,r=this.a +r=!r.Q&&b.a.length!==0?new A.c43(r):s +return A.NH(B.j1,A.E(A.w("login.login",s,s),s,s,s,s,s),r)}, +$S:251} +A.c43.prototype={ +$0(){var s=this.a,r=s.c +r.toString +A.yP(r).zW(A.hH(!0,null,!0,!0,null,null,!1)) +s.H3()}, +$S:0} +A.c45.prototype={ +$2(a,b){var s=this.a +return A.hr(s.x,new A.c42(s,b),t.Rp)}, +$S:1337} +A.c42.prototype={ +$2(a,b){var s=null,r=this.b.a.length!==0||b.a.length!==0?s:new A.c41(this.a) +return A.T8(!1,A.E(A.w("login.offlineModeBtn",s,s),s,s,s,s,s),B.i,s,s,s,r,s,s)}, +$S:1338} +A.c41.prototype={ +$0(){$.e2.I() +A.ds($.iy.I(),"/oa/loginStatus",B.w8) +var s=this.a.c +s.toString +A.cc(s).qV(0,"/",null)}, +$S:0} +A.b54.prototype={ +PM(){var s=0,r=A.p(t.R),q,p=2,o,n,m,l,k,j,i,h,g,f,e,d,c,b +var $async$PM=A.l(function(a,a0){if(a===1){o=a0 +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i($.DI.I().D5(0,u.cR,A.mk(null,null,null,null,null,null,"GET",null,null,null,null,null,null,null,null,null)),$async$PM) +case 7:n=a0 +g=new A.a_D() +g.sa9I(A.b2b(n.a)) +m=g +f=J.cEu(m,"div","auth_username") +e=f==null?null:f.Dx() +l=e==null?"":e +f=J.cEu(m,"div","index-nav-name") +d=f==null?null:f.Dx() +k=d==null?"":d +j=B.c.du(J.b2S(k,l)) +f=J.bn(j)!==0?j:null +q=f +s=1 +break +p=2 +s=6 +break +case 4:p=3 +b=o +i=A.ag(b) +h=A.aD(b) +A.ll(i,h) +q=null +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$PM,r)}} +A.R6.prototype={ +q(a){var s=null +return A.e8(A.E(A.w("login.forgotPwd",s,s),s,s,s,B.bp4,s),new A.bj7(this,a))}} +A.bj7.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.tm(q.b,q.a.c),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cpM.prototype={ +$1(a){return J.cw(a)}, +$S:118} +A.cpP.prototype={ +$1(a){var s=J.ao(a) +return new A.jR(A.ax(s.i(a,"department")),A.bw(s.i(a,"description")),A.bw(s.i(a,"name")),A.ax(s.i(a,"phone")))}, +$S:1339} +A.a2p.prototype={ +J(){return new A.aO8(B.f)}} +A.aO8.prototype={ +q(a){var s=null,r=this.gc6().dl($.e2.I().ga_e(),t.ue),q=r==null?s:r.a,p=A.E(A.w("eduEmail.title",s,s),s,s,s,s,s),o=q!=null?A.bEK(q,s,s):s +return A.b3X(A.a([A.NH(B.j2,A.E(A.w("eduEmail.action.open",s,s),s,s,s,s,s),new A.bYH())],t.p),s,o,p,s)}} +A.bYH.prototype={ +$0(){var s=0,r=A.p(t.H) +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.Oq("http://imap.mail.sit.edu.cn",B.l1),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.QH.prototype={ +q(a){var s,r,q=null,p=this.c,o=p.a9f(),n=A.ju(q,!0,q,q,!0,!1,!1,A.E(o==null?A.w("eduEmail.noSubject",q,q):o,q,q,q,q,q),q),m=A.G(a),l=A.w("eduEmail.noContent",q,q),k=A.R(B.aQD,!0,t.Cd),j=new A.bNp(!0,!1,m.ay.a===B.aN,l,'

{text}

',q,k,B.aNX),i=new A.bt5(j),h=p.a9i() +if(h==null&&!0){h=p.a9h() +if(h!=null){m=A.b2b(h).gbny(0) +h=m==null?q:m.gb7V(0) +if(h!=null)h=A.d8a(h)}}if(h==null)h=p.azH(B.kG).length!==0?"":j.d +else h=i.bHh(h,p) +s=B.c.jL(j.e,"{text}",h) +r=A.b2b(s) +i.bHg(r,p) +return A.bW(q,q,A.UN(A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,A.a([n,new A.ht(new A.axg(p,q),q),new A.wI(B.cq,A.bC8(r.gT1(),B.km),q)],t.p))),q,q,q,q)}} +A.axg.prototype={ +q(a){var s,r,q,p,o=null,n=this.c,m=n.a9f() +if(m==null)m=A.w("eduEmail.noSubject",o,o) +s=n.ayo() +r=J.cw(s[0]) +if(s.length>1)r+=A.w("eduEmail.pluralSenderTailing",o,o) +q=n.W_() +if(q!=null){n=a.a0(t.L).r.a +n===$&&A.b() +n=$.h2().i(0,n) +p=(n==null?$.es():n).gIe().d4(q)}else p="" +return A.Ur(A.dd(A.a([A.bv(m,o,o,o,o,o,o,o,o,o,o,o,o,o,o),A.bv(r+"\n"+p,o,o,o,o,o,o,o,o,o,o,o,o,o,o)],t.LT),B.t,o,B.o,B.u),o,o,o)}} +A.Iu.prototype={ +J(){return new A.aO9(B.f)}} +A.aO9.prototype={ +a8(){this.an() +var s=this.gc6().d8(0,$.e2.I().ga_e(),t.ue) +if(s!=null)this.uQ(0,s)}, +uQ(a,b){return this.bFq(0,b)}, +bFq(a,b){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$uQ=A.l(function(c,a0){if(c===1){o=a0 +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}p=4 +s=7 +return A.i($.bgc.I().CH(b),$async$uQ) +case 7:p=2 +s=6 +break +case 4:p=3 +e=o +m=A.ag(e) +l=A.aD(e) +A.j5(m,l) +$.e2.I() +f=$.iy.I() +A.ds(f,"/eduEmail/credentials",null) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:p=9 +s=12 +return A.i($.bgc.I().Ds(30),$async$uQ) +case 12:k=a0 +j=k.c +J.OH(j,new A.bYJ()) +if(n.c==null){s=1 +break}n.C(new A.bYK(n,j)) +p=2 +s=11 +break +case 9:p=8 +d=o +i=A.ag(d) +h=A.aD(d) +A.j5(i,h) +s=11 +break +case 8:s=2 +break +case 11:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$uQ,r)}, +q(a){var s=null,r=this.gc6().dl($.e2.I().ga_e(),t.ue),q=this.w,p=A.E(A.w("eduEmail.inbox.title",s,s),s,s,s,s,s) +p=A.a([A.ju(s,!0,s,r!=null&&q==null?B.de:s,!0,!1,!1,p,s)],t.p) +if(q!=null)p.push(A.hs(new A.bYI(q),q.length)) +return A.bW(s,s,A.cD(B.k,s,B.m,s,s,s,!1,s,B.v,p),s,s,s,s)}} +A.bYJ.prototype={ +$2(a,b){var s=a.W_() +s.toString +return s.a>b.W_().a?-1:1}, +$S:1340} +A.bYK.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.bYI.prototype={ +$2(a,b){return new A.QK(this.a[b],null)}, +$S:1341} +A.Iv.prototype={ +J(){$.e2.I() +var s=A.dU($.iy.I(),"/oa/credentials",t.W8) +s=s==null?null:s.a +return new A.aOa(s,new A.eZ(B.bU,$.ae()),new A.aR(null,t.am),B.f)}} +A.aOa.prototype={ +gPw(){var s,r,q=this.e +if(q===$){s=this.d +s=s==null?B.bU:new A.cu(s,B.bz,B.aw) +r=$.ae() +q!==$&&A.a_() +q=this.e=new A.eZ(s,r)}return q}, +m(){var s=this.gPw(),r=$.ae() +s.k3$=r +s.k2$=0 +s=this.f +s.k3$=r +s.k2$=0 +this.ap()}, +q(a){var s=null,r=A.E(A.w("eduEmail.login.title",s,s),s,s,s,s,s) +return A.dn(s,A.bW(A.jb(s,s,!0,s,this.x?B.de:s,1,s,s,s,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,r,s,s,s,1,s),s,A.nk(new A.aA(new A.af(25,0,25,0),A.aDC(A.dd(A.a([this.a7H(),new A.ba(s,10,s,s),this.LJ()],t.p),B.t,s,B.o,B.Z),B.pn),s)),B.ajW,s,s,s),B.m,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.bYS(a),s,s,s,s,s,s,s,!1,B.ac)}, +a7H(){var s,r,q,p,o,n=this,m=null,l=n.gPw(),k=!$.eN.I().gnS(0)&&n.d!=null,j=A.w("eduEmail.info.emailAddress",m,m) +k=A.Av(!1,m,!0,A.Zp(),l,A.md(m,m,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,m,A.w("eduEmail.login.addressHint",m,m),m,m,B.ayZ,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,"@mail.sit.edu.cn"),!1,m,m,m,1,!1,m,m,m,k,B.lZ,new A.bYM()) +l=n.w +j=l?B.xX:m +s=A.w("credentials.pwd",m,m) +r=n.c +r.toString +q=A.b2(A.bc(r)===B.y?B.ux:B.uK,m,m,m,m,m,m,m,m,m,m) +p=A.w("eduEmail.login.passwordHint",m,m) +r=n.w +o=n.c +if(r){o.toString +r=A.bc(o)===B.y?B.nE:B.uL}else{o.toString +r=A.bc(o)===B.y?B.nF:B.uI}return A.aum(B.iz,new A.Hl(A.cS(A.a([k,A.Av(!1,m,!0,new A.bYN(),n.f,A.md(m,m,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,m,p,m,m,q,m,m,m,m,m,s,m,m,m,m,m,m,m,m,A.du(m,A.b2(r,m,m,m,m,m,m,m,m,m,m),m,new A.bYO(n),m),m,m,m,m),!1,m,m,j,1,!l,m,new A.bYP(n),m,!1,B.qk,m)],t.p),B.t,m,B.o,B.u,m,m,B.x),m),n.r)}, +LJ(){return A.hr(this.gPw(),new A.bYR(this),t.Rp)}, +qw(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$qw=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i=new A.fJ(n.gPw().a.a+"@mail.sit.edu.cn",n.f.a.a) +p=4 +if(n.c==null){s=1 +break}n.C(new A.bYT(n)) +s=7 +return A.i($.bgc.I().CH(i),$async$qw) +case 7:$.e2.I() +A.ds($.iy.I(),"/eduEmail/credentials",i) +if(n.c==null){s=1 +break}n.C(new A.bYU(n)) +k=n.c +k.toString +A.cc(k).bFV(0,"/edu-email/inbox",null,t.X) +p=2 +s=6 +break +case 4:p=3 +h=o +m=A.ag(h) +l=A.aD(h) +A.ll(m,l) +if(n.c==null){s=1 +break}n.C(new A.bYV(n)) +s=t.VI.b(m)?8:9 +break +case 8:k=n.c +k.toString +s=10 +return A.i(A.BB(k,m,l),$async$qw) +case 10:case 9:s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$qw,r)}} +A.bYS.prototype={ +$0(){A.yP(this.a).zW(A.hH(!0,null,!0,!0,null,null,!1))}, +$S:0} +A.bYM.prototype={ +$1(a){var s=null +if(A.d6j(a+"@mail.sit.edu.cn"))return s +return A.w("eduEmail.login.invalidEmailAddressFormatTip",s,s)}, +$S:265} +A.bYN.prototype={ +$2(a,b){return A.ZG(b)}, +$S:249} +A.bYP.prototype={ +$1(a){return this.aHK(a)}, +aHK(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +s=!p.x?2:3 +break +case 2:s=4 +return A.i(p.qw(),$async$$1) +case 4:case 3:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:171} +A.bYO.prototype={ +$0(){var s=this.a +s.C(new A.bYL(s))}, +$S:0} +A.bYL.prototype={ +$0(){var s=this.a +s.w=!s.w}, +$S:0} +A.bYR.prototype={ +$2(a,b){var s=null,r=this.a +r=!r.x&&b.a.length!==0?new A.bYQ(r):s +return A.NH(B.j1,new A.aA(new A.af(5,5,5,5),A.E(A.w("login.login",s,s),s,s,s,s,s),s),r)}, +$S:251} +A.bYQ.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.c +o.toString +A.yP(o).zW(A.hH(!0,null,!0,!0,null,null,!1)) +s=2 +return A.i(p.qw(),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bYT.prototype={ +$0(){return this.a.x=!0}, +$S:0} +A.bYU.prototype={ +$0(){return this.a.x=!1}, +$S:0} +A.bYV.prototype={ +$0(){return this.a.x=!1}, +$S:0} +A.Iw.prototype={ +J(){return new A.aOb(B.f)}} +A.aOb.prototype={ +q(a){var s=null +return A.bW(s,s,A.cD(B.k,s,B.m,s,s,s,!1,s,B.v,A.a([A.ju(s,!0,s,s,!1,!1,!1,A.E(A.w("eduEmail.outbox.title",s,s),s,s,s,s,s),s)],t.p)),s,s,s,s)}} +A.bra.prototype={ +CH(a){return this.bAq(a)}, +bAq(a){var s=0,r=A.p(t.ZJ),q,p=2,o,n=this,m,l,k,j +var $async$CH=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +l=n.a +s=7 +return A.i(l.VI("imap.mail.sit.edu.cn",993,!0),$async$CH) +case 7:s=8 +return A.i(l.XW(a.a,a.b),$async$CH) +case 8:l=c +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +m=A.ag(j) +if(m instanceof A.RD)throw A.d(A.cvU(m.b,B.Co)) +throw j +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$CH,r)}, +Ds(a){return this.aIL(a)}, +aIL(a){var s=0,r=A.p(t.ai),q,p=this,o,n,m,l,k,j,i +var $async$Ds=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:i=p.a +s=3 +return A.i(i.aBO(),$async$Ds) +case 3:s=4 +return A.i(i.Q3("INBOX",!1,null),$async$Ds) +case 4:o=i.CW +if(o==null)A.C(A.za("No mailbox selected - call select() first.")) +n=o.r +m=n-a +if(m<1)m=1 +l=new A.a5O(!1,A.a([],t.t)) +l.av3(0,m,n) +k=new A.bu("") +j=""+"FETCH" +k.a=j +k.a=j+" " +l.k6(k) +l=k.a+=" " +l=k.a=l+"(FLAGS BODY[])" +s=5 +return A.i(i.Qa(new A.PP(l.charCodeAt(0)==0?l:l,null,null,null),new A.atP(A.a([],t.U3),!1),t.ai),$async$Ds) +case 5:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Ds,r)}} +A.brb.prototype={ +$1(a){return!0}, +$S:505} +A.bgd.prototype={} +A.QK.prototype={ +q(a){var s,r,q,p,o,n=null,m=A.G(a),l=A.G(a).p3.z,k=this.c,j=k.a9f() +if(j==null)j="" +s=k.ayo() +r=J.cw(s[0]) +q=s.length>1?"...":"" +p=k.W_() +if(p!=null){k=a.a0(t.L).r.a +k===$&&A.b() +k=$.h2().i(0,k) +o=(k==null?$.es():k).gId().d4(p)}else o="" +m=A.bv(j,n,n,1,B.Z7,n,n,n,n,m.p3.w,n,n,n,n,n) +return A.aX(!1,n,n,n,!0,n,n,n,n,!1,n,n,n,n,n,n,n,new A.bgs(this,a),!1,n,n,A.bv(r+q,n,n,n,n,n,n,n,n,l,n,n,n,n,n),n,n,m,n,A.bv(o,n,n,n,n,n,n,n,n,l,n,n,n,n,n),n)}} +A.bgs.prototype={ +$0(){var s=t.z +A.cN(this.b,!1).pF(A.brl(new A.bgr(this.a),null,s),s)}, +$S:0} +A.bgr.prototype={ +$1(a){return new A.QH(this.a.c,null)}, +$S:1342} +A.Km.prototype={ +J(){return new A.aRm(B.f)}} +A.aRm.prototype={ +q(a){var s=this,r=null,q=s.gc6().dl($.eN.I().gx6(),t.y),p=A.G(a),o=s.bp6(),n=t.p +p=A.ju(A.a([o,A.du(r,A.b2(A.bc(a)===B.y?B.uz:B.ayB,r,r,r,r,r,r,r,r,r,r),r,new A.c5X(a),r)],n),!0,r,r,!1,!1,!1,r,p.p3.f) +o=A.a([B.Dy,B.Dz],n) +if(q)o.push(B.RW) +return A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([p,B.bmV,B.bmQ,A.eI(o),A.eI(A.a([s.bp2(),s.bpw()],n))],n)),r,r,r,!1)}, +bp2(){var s=null,r=A.E("QQ\u4ea4\u6d41\u7fa4",s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.az9,s,s,s,s,s,s,!1,s,s,A.E("917740212",s,s,s,s,s),s,s,r,s,A.du(s,B.E0,s,new A.c5U(this),B.L),s)}, +bpw(){var s=null,r=A.E("\u5fae\u4fe1\u516c\u4f17\u53f7",s,s,s,s,s),q=A.E("\u5c0f\u5e94\u751f\u6d3b",s,s,s,s,s),p=this.c +p.toString +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.ayP,s,s,s,s,s,s,!1,s,s,q,s,s,r,s,A.du(s,A.b2(A.bc(p)===B.y?B.iY:B.nJ,s,s,s,s,s,s,s,s,s,s),s,new A.c5W(),B.L),s)}, +bp6(){return A.du(null,B.az2,null,new A.c5V(this),null)}} +A.c5X.prototype={ +$0(){A.cc(this.a).fg("/settings",null,t.X)}, +$S:0} +A.c5U.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$$0=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(A.Oq("https://qm.qq.com/cgi-bin/qm/qr?k=9Gn1xo7NfyViy73OP-wVy-Tvzw2pW-fp&authKey=IiyjgIkoBD3I37l/ODvjonS4TwiEaceT4HSp0gxNe3kmicvPdb3opS9lQutKx1DH",B.aBa),$async$$0) +case 7:p=2 +s=6 +break +case 4:p=3 +i=o +m=A.ag(i) +l=A.aD(i) +A.ll(m,l) +s=8 +return A.i(A.p4(B.a6I),$async$$0) +case 8:j=n.a.c +if(j==null){s=1 +break}A.qK(j,null,A.E("\u5df2\u590d\u5236\u5230\u526a\u8d34\u677f",null,null,null,null,null),B.aW) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c5W.prototype={ +$0(){var s=0,r=A.p(t.H),q=1,p,o,n,m,l +var $async$$0=A.l(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +s=6 +return A.i(A.Oq("weixin://dl/publicaccount?username=gh_61f7fd217d36",B.uZ),$async$$0) +case 6:q=1 +s=5 +break +case 3:q=2 +l=p +o=A.ag(l) +n=A.aD(l) +A.ll(o,n) +s=5 +break +case 2:s=1 +break +case 5:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c5V.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.c +p.toString +s=2 +return A.i(A.BG(p),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.a3M.prototype={ +J(){return new A.aPM(B.f)}} +A.aPM.prototype={ +a8(){this.an() +this.w=A.dvk(B.ahV,new A.c1t(this))}, +m(){var s=this.w +if(s!=null)s.ao(0) +this.ap()}, +b2D(a){var s,r,q=a.a +if(q.length!==0){s=A.cY(B.c.R(q,0,2),null) +if(s!=null){r=A.cd(2000+s,9,1,0,0,0,0,!1) +if(!A.bI(r))A.C(A.bV(r)) +this.x=new A.am(r,!1) +return B.d.aD(A.cp(0,0,0,Date.now()-r,0,0).a,864e8)}}return 0}, +q(a){var s=null,r=this.gc6().dl($.e2.I().gt9(),t.ue),q=r==null?0:this.b2D(r),p=A.G(a),o=A.E(A.w("greeting.headerA",s,s),s,s,s,s,s),n=A.G(a),m=q+1 +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,A.E(A.aai("greeting.headerB",m,A.a([B.d.k(m)],t.s)),s,s,s,s,s),n.p3.f,s,o,p.p3.w,s,s)}} +A.c1t.prototype={ +$1(a){var s=this.a +if(s.x!=null)s.C(new A.c1s())}, +$S:97} +A.c1s.prototype={ +$0(){}, +$S:0} +A.Kr.prototype={ +H(){return"MigrationPhrase."+this.b}} +A.zp.prototype={ +S(a,b){return new A.aoN(A.a([this,b],t.vA))}} +A.aeU.prototype={ +kT(a){return this.bDT(a)}, +bDT(a){var s=0,r=A.p(t.H),q=this,p +var $async$kT=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a.$1(a) +s=2 +return A.i(t.uz.b(p)?p:A.dO(p,t.H),$async$kT) +case 2:return A.n(null,r)}}) +return A.o($async$kT,r)}} +A.aoN.prototype={ +kT(a){return this.bDR(a)}, +bDR(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$kT=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a,o=0 +case 2:if(!(o<2)){s=4 +break}s=5 +return A.i(p[o].kT(a),$async$kT) +case 5:case 3:++o +s=2 +break +case 4:return A.n(null,r)}}) +return A.o($async$kT,r)}} +A.v8.prototype={ +bn(a,b){return A.abV(this.a,b.a)}, +$icT:1} +A.bsZ.prototype={ +bqs(a,b){var s,r,q=A.abV(a,b) +if(q===0)return A.a([],t.vA) +q=this.a +B.b.o3(q) +s=A.X(q).h("b1<1>") +r=A.R(new A.b1(q,new A.bt_(a,b),s),!0,s.h("B.E")) +s=A.X(r).h("O<1,zp>") +return A.R(new A.O(r,new A.bt0(),s),!0,s.h("aa.E"))}} +A.bt_.prototype={ +$1(a){var s=a.a,r=A.abV(this.a,s) +if(r<=0)return!0 +s=A.abV(this.b,s) +if(s<=0)return!0 +return!1}, +$S:1343} +A.bt0.prototype={ +$1(a){return a.b}, +$S:1344} +A.bt2.prototype={ +$1(a){return this.aHA(a)}, +aHA(a){var s=0,r=A.p(t.H) +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=a===B.RD?2:3 +break +case 2:s=4 +return A.i(A.avn(),$async$$1) +case 4:case 3:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:428} +A.bt3.prototype={ +$1(a){return this.aHz(a)}, +aHz(a){var s=0,r=A.p(t.H),q +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:428} +A.bt1.prototype={ +kT(a){return this.bDS(a)}, +bDS(a){var s=0,r=A.p(t.H),q=1,p,o=this,n,m,l,k,j,i,h,g +var $async$kT=A.l(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +k=o.a,j=k.length,i=0 +case 6:if(!(i")).eB(r.gamS()) +r.J5()}, +J5(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$J5=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(n.d.j9(0),$async$J5) +case 7:p=2 +s=6 +break +case 4:p=3 +i=o +m=A.ag(i) +l=A.aD(i) +A.ll(m,l) +s=m instanceof A.of&&m.a===B.pm?8:9 +break +case 8:j=n.c +if(j==null){s=1 +break}s=10 +return A.i(A.ame(j,B.bh3),$async$J5) +case 10:case 9:s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$J5,r)}, +K8(a){return this.b30(a)}, +b30(a){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$K8=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=A.awc(a.a) +s=n!=null?2:3 +break +case 2:p=q.c +p.toString +o=n.z +p=A.cc(p).c +p===$&&A.b() +p.dB(o) +s=4 +return A.i(A.yY(),$async$K8) +case 4:case 3:return A.n(null,r)}}) +return A.o($async$K8,r)}, +HA(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l +var $async$HA=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:l=new A.avT(B.AR,null,null,null,!0) +l.aUN(null,null,null,!0) +s=3 +return A.i($.cWr().xa(l,B.aA6),$async$HA) +case 3:o=b +s=o!=null?4:5 +break +case 4:n=o.c +n===$&&A.b() +s=6 +return A.i($.xF().Lx(n),$async$HA) +case 6:m=b +s=m!=null?7:9 +break +case 7:s=10 +return A.i(p.K8(m),$async$HA) +case 10:s=8 +break +case 9:n=p.c +if(n==null){s=1 +break}A.qK(n,null,A.E(A.w("qrCode.barcodeNotRecognizedTip",null,null),null,null,null,null,null),B.aW) +case 8:case 5:case 1:return A.n(q,r)}}) +return A.o($async$HA,r)}, +m(){var s,r=this +A.Ft(A.a([B.tQ,B.tP,B.na,B.nb],t.UW)) +B.b.F($.an.aT$,r) +s=r.e +if(s!=null)s.ao(0) +r.e=null +r.ap() +r.d.m()}, +q(a){var s=this,r=null,q=t.p +return A.bW(A.jb(r,r,!0,r,r,1,r,r,r,!1,r,!1,r,r,r,r,!0,r,r,r,r,r,r,r,r,r,1,r),r,A.a8y(A.a([new A.a5T(s.d,B.A0,r),B.bi7],q)),A.i1(A.a([s.bps(),s.bpc(),A.du(r,B.azU,r,s.gbFm(),r)],q),B.t,B.fW,B.u),r,r,r)}, +bpc(){var s=null,r=this.c +r.toString +return A.du(s,A.b2(A.bc(r)===B.y?B.alv:B.ayr,s,s,s,s,s,s,s,s,s,s),s,new A.cdK(this),s)}, +bps(){return A.hr(this.d,new A.cdL(this),t.ZH)}, +w4(a){var s,r,q=this +q.QZ(a) +switch(a.a){case 0:case 3:case 4:return +case 1:s=q.d +r=s.ay +q.e=new A.dw(r,A.z(r).h("dw<1>")).eB(q.gamS()) +s.j9(0) +break +case 2:s=q.e +if(s!=null)s.ao(0) +q.e=null +q.d.e3(0) +break}}} +A.cdK.prototype={ +$0(){return this.a.d.Jj()}, +$S:0} +A.cdL.prototype={ +$2(a,b){var s,r=null +switch(b.r.a){case 0:s=A.du(r,B.Ea,r,this.a.d.gaFD(),r) +break +case 1:s=A.du(r,B.aza,r,this.a.d.gaFD(),r) +break +case 2:s=A.du(r,B.Ea,r,r,r) +break +default:s=r}return s}, +$S:1353} +A.b0F.prototype={} +A.TR.prototype={ +q(a){var s=this,r=null,q=s.c,p=q.length,o=A.ju(r,!0,r,r,!0,!1,!1,s.e,r),n=A.G(a),m=t.p +n=A.a([o,new A.ht(new A.fV(new A.bz6(s,p>512),r),r),new A.ht(new A.aA(new A.af(10,10,10,10),A.EZ(r,r,B.aG,r,r,!0,r,A.cy(A.dfR("qrCode.hint",A.a1(["me",B.bwd,"scan",B.bwe],t.N,t.P6)),r,r,n.p3.y,r),B.ah,r,r,B.Y,B.a0),r),r)],m) +if($.eN.I().gnS(0)){p=A.E("Text length: "+p,r,r,r,r,r) +n.push(A.eI(A.a([A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,r,!1,r,r,r,r,r,p,r,A.du(r,A.b2(A.bc(a)===B.y?B.dO:B.nI,r,r,r,r,r,r,r,r,r,r),r,new A.bz7(s,a),r),r),new A.aA(new A.af(10,10,10,10),A.bEK(q,r,r),r)],m)))}return A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,n),r,r,r,r)}} +A.bz6.prototype={ +$2(a,b){var s=A.nk(new A.aBt(this.a.c,Math.min(b.b,1/0),null)) +return A.iW(s,this.b?0:16,0)}, +$S:1354} +A.bz7.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.qK(q.b,null,A.E("Copied",null,null,null,null,null),B.aW) +s=2 +return A.i(A.p4(new A.mV(q.a.c)),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.aBt.prototype={ +q(a){return new A.a7q(this.c,A.G(a).ay.cy,-1,this.d,new A.aCd(B.WO,A.G(a).ay.db),new A.aCc(B.WN,A.G(a).ay.db),null)}} +A.tK.prototype={} +A.aCb.prototype={ +q(a){var s,r=null,q=t.l,p=A.bC(a,r,q).w.a.a<400||A.bC(a,r,q).w.a.b<400?200:330 +q=t.p +s=p+25 +return new A.d4(B.ar,r,B.am,B.k,A.a([new A.apx(new A.a2D(B.t_,B.rr,r,B.Ba),new A.d4(B.ar,r,B.am,B.k,A.a([A.bB(r,r,B.i,r,r,B.a35,r,r,r,r,r,r,r,r),new A.fl(B.C,r,r,A.bB(r,r,B.i,r,r,new A.c_(B.dv,r,r,A.ed(20),r,r,r,B.U),r,p,r,r,r,r,r,p),r)],q),r),r),new A.fl(B.C,r,r,A.ih(new A.ba(s,s,r,r),new A.ao7(r),r,r,B.A),r)],q),r)}} +A.ao7.prototype={ +aI(a,b){var s,r,q,p,o=b.a,n=b.b,m=A.jq(new A.W(4,4,4+(o-8),4+(n-8)),B.x1) +o-=60 +s=o+60 +n-=60 +r=n+60 +q=$.ar() +p=q.dc() +p.jd(B.bjO) +p.jd(new A.W(o,0,s,60)) +p.jd(new A.W(0,n,60,r)) +p.jd(new A.W(o,n,s,r)) +a.nG(0,p) +q=q.aP() +q.sa6(0,B.r) +q.sbN(0,B.a7) +q.se4(4) +a.dh(m,q)}, +hC(a){return!1}} +A.cqM.prototype={ +$2(a,b){return B.btJ}, +$S:1355} +A.cqC.prototype={ +$2(a,b){return B.aAa}, +$S:1356} +A.cqD.prototype={ +$2(a,b){return B.RR}, +$S:1357} +A.cqE.prototype={ +$2(a,b){return B.btI}, +$S:252} +A.cqF.prototype={ +$2(a,b){return B.btG}, +$S:252} +A.cqG.prototype={ +$2(a,b){return B.btH}, +$S:252} +A.cqH.prototype={ +$2(a,b){var s,r=b.r.i(0,"id"),q=A.cY(r==null?"":r,null) +if(q==null)throw A.d(404) +s=$.eL.I().b.d3(0,q) +if(s==null)throw A.d(404) +return new A.wZ(s,null)}, +$S:1359} +A.cqI.prototype={ +$2(a,b){var s,r=b.r.i(0,"id"),q=A.cY(r==null?"":r,null) +if(q==null)throw A.d(404) +s=$.eL.I().a.d3(0,q) +if(s==null)throw A.d(404) +return new A.wY(s,null)}, +$S:1360} +A.cqJ.prototype={ +$2(a,b){var s,r=b.r.i(0,"id"),q=A.cY(r==null?"":r,null) +if(q==null)throw A.d(404) +s=$.eL.I().a.d3(0,q) +if(s==null)throw A.d(404) +return new A.MZ(s,null)}, +$S:1361} +A.cqK.prototype={ +$2(a,b){return B.btF}, +$S:1362} +A.cqL.prototype={ +$2(a,b){return B.btE}, +$S:1363} +A.cqf.prototype={ +$2(a,b){return B.bks}, +$S:1364} +A.cpG.prototype={ +$2(a,b){return B.aBn}, +$S:1365} +A.cpm.prototype={ +$2(a,b){return B.aka}, +$S:1366} +A.cpT.prototype={ +$2(a,b){return B.b4D}, +$S:1367} +A.cqN.prototype={ +$2(a,b){return B.b6v}, +$S:1368} +A.cqO.prototype={ +$2(a,b){return B.bkq}, +$S:1369} +A.cqg.prototype={ +$2(a,b){return B.blv}, +$S:1370} +A.cqh.prototype={ +$2(a,b){return B.aAU}, +$S:1371} +A.cqi.prototype={ +$2(a,b){return B.bt4}, +$S:1372} +A.cqk.prototype={ +$2(a,b){return B.agk}, +$S:1373} +A.cql.prototype={ +$2(a,b){return B.btM}, +$S:1374} +A.cqm.prototype={ +$2(a,b){return B.bkt}, +$S:1375} +A.cqn.prototype={ +$2(a,b){return B.aBo}, +$S:1376} +A.cqo.prototype={ +$2(a,b){return B.akb}, +$S:1377} +A.cqp.prototype={ +$2(a,b){return B.a0q}, +$S:1378} +A.cqq.prototype={ +$2(a,b){return B.bi5}, +$S:1379} +A.cqr.prototype={ +$2(a,b){return B.ah5}, +$S:1380} +A.cqj.prototype={ +$2(a,b){return B.aR2}, +$S:1381} +A.coZ.prototype={ +$2(a,b){return B.ajo}, +$S:1382} +A.cp_.prototype={ +$2(a,b){return B.ajp}, +$S:1383} +A.col.prototype={ +$2(a,b){return B.a0r}, +$S:1384} +A.com.prototype={ +$2(a,b){return B.a1j}, +$S:1385} +A.con.prototype={ +$2(a,b){var s,r,q=b.r.i(0,"id"),p=A.cY(q==null?"":q,null) +if(p==null)throw A.d(404) +q=b.b +s=q.glL().i(0,"enable-apply") +r=q.glL().i(0,"title") +q=q.glL().i(0,"time") +return new A.vA(p,r,A.bbK(q==null?"":q),s!=null,null)}, +$S:1386} +A.coo.prototype={ +$2(a,b){var s=b.w +if(s instanceof A.rk)return new A.HM(s,null) +throw A.d(404)}, +$S:1387} +A.cpY.prototype={ +$2(a,b){return B.b6C}, +$S:1388} +A.cpZ.prototype={ +$2(a,b){var s=b.w +if(s instanceof A.T2)return new A.Hd(s,null) +throw A.d(404)}, +$S:1389} +A.cr2.prototype={ +$2(a,b){return B.bym}, +$S:1390} +A.coO.prototype={ +$2(a,b){return B.aiQ}, +$S:1391} +A.coP.prototype={ +$2(a,b){return B.aiP}, +$S:1392} +A.coQ.prototype={ +$2(a,b){return B.aiR}, +$S:1393} +A.cr3.prototype={ +$2(a,b){return B.bys}, +$S:1394} +A.cr4.prototype={ +$2(a,b){return B.byr}, +$S:1395} +A.cr5.prototype={ +$2(a,b){var s=b.w +if(s instanceof A.WK)return new A.Np(s,null) +throw A.d(404)}, +$S:1396} +A.cpt.prototype={ +$2(a,b){var s=b.b,r=s.glL().i(0,"origin") +if(r==null)r=A.bw(b.w) +if(r!=null)return new A.RC(r,s.glL().i(0,"title"),null) +throw A.d(400)}, +$S:1397} +A.cpQ.prototype={ +$2(a,b){return new A.K8(J.q(b.b.glL().i(0,"guard"),"true"),null)}, +$S:1398} +A.cqy.prototype={ +$2(a,b){return B.bo4}, +$S:1399} +A.cpD.prototype={ +$2(a,b){return B.aBl}, +$S:1400} +A.cpE.prototype={ +$2(a,b){return B.aBk}, +$S:1401} +A.cpF.prototype={ +$2(a,b){return B.aBm}, +$S:1402} +A.coV.prototype={ +$2(a,b){return B.ajh}, +$S:1403} +A.coW.prototype={ +$2(a,b){return B.ajl}, +$S:1404} +A.coX.prototype={ +$2(a,b){return B.akf}, +$S:1405} +A.coY.prototype={ +$2(a,b){return B.ajj}, +$S:1406} +A.cob.prototype={ +$2(a,b){var s=null,r=b.b.glL().i(0,"url") +if(r==null)r=b.w +if(typeof r=="string")return A.cNL(s,s,s,B.aN7,!B.c.aC(r,"http://")&&!B.c.aC(r,"https://")?"http://"+r:r,s) +throw A.d(400)}, +$S:1407} +A.cpj.prototype={ +$2(a,b){return new A.J4(b.b.glL().i(0,"continue")==null,null)}, +$S:1408} +A.cpk.prototype={ +$2(a,b){return new A.J5(b.b.glL().i(0,"continue")==null,null)}, +$S:1409} +A.cpl.prototype={ +$2(a,b){return B.akc}, +$S:1410} +A.crf.prototype={ +$2(a,b){return"/timetable"}, +$S:432} +A.crg.prototype={ +$3(a,b,c){return new A.Kb(c,null)}, +$S:1412} +A.crl.prototype={ +$2(a,b){return"/timetable"}, +$S:432} +A.hp.prototype={ +H(){return"Class2ndActivityCat."+this.b}} +A.a0s.prototype={ +k(a){return A.hj(A.a1(["id",this.a,"fullTitle",this.b,"time",this.c],t.N,t.K))}} +A.a0t.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.a0s(A.bZ(n.i(0,0)),A.ax(n.i(0,1)),t.d.a(n.i(0,2)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=3 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c)}, +gv(a){return B.d.gv(30)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0t&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 30}} +A.a0x.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.rR +case 1:return B.B0 +case 2:return B.B1 +case 3:return B.B2 +case 4:return B.a6z +case 5:return B.B4 +case 6:return B.B_ +case 7:return B.a6x +case 8:return B.a6y +case 9:return B.B3 +case 10:return B.a6w +case 11:return B.a6A +default:return B.rR}}, +eU(a,b,c){var s=null +switch(c.a){case 0:A.a5(0,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break +case 3:A.a5(3,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +break +case 4:A.a5(4,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +break +case 5:A.a5(5,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +break +case 6:A.a5(6,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +break +case 7:A.a5(7,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +break +case 8:A.a5(8,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +break +case 9:A.a5(9,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=9 +break +case 10:A.a5(10,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=10 +break +case 11:A.a5(11,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=11 +break}}, +gv(a){return B.d.gv(32)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0x&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 32}} +A.vz.prototype={ +H(){return"Class2ndActivityApplicationStatus."+this.b}} +A.a0u.prototype={ +k(a){var s=this +return A.hj(A.a1(["applyId",s.a,"activityId",s.b,"title",s.c,"time",s.d,"status",s.e,"category",s.f],t.N,t.K))}} +A.a0v.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.a0u(A.bZ(n.i(0,0)),A.bZ(n.i(0,1)),A.ax(n.i(0,2)),t.d.a(n.i(0,3)),t.mZ.a(n.i(0,4)),t.pf.a(n.i(0,5)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=6 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f)}, +gv(a){return B.d.gv(34)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0v&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 34}} +A.a0w.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.AW +case 1:return B.AX +case 2:return B.AY +case 3:return B.a6u +case 4:return B.a6v +case 5:return B.AZ +default:return B.AW}}, +eU(a,b,c){var s=null +switch(c.a){case 0:A.a5(0,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break +case 3:A.a5(3,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +break +case 4:A.a5(4,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +break +case 5:A.a5(5,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +break}}, +gv(a){return B.d.gv(35)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0w&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 35}} +A.a0D.prototype={ +k(a){var s=this +return A.hj(A.a1(["lecture",s.a,"practice",s.b,"creation",s.c,"safetyEdu",s.d,"voluntary",s.e,"schoolCulture",s.f,"honestyPoints",s.r],t.N,t.i))}} +A.HN.prototype={ +k(a){var s=this +return A.hj(A.a1(["name",s.a,"activityId",s.b,"category",s.c,"time",s.d,"points",s.e,"honestyPoints",s.f],t.N,t.X))}} +A.nU.prototype={ +H(){return"Class2ndPointType."+this.b}} +A.rk.prototype={} +A.cvD.prototype={ +$2(a,b){return a+b.e}, +$S:1413} +A.a0E.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.a0D(A.f0(n.i(0,0)),A.f0(n.i(0,1)),A.f0(n.i(0,2)),A.f0(n.i(0,3)),A.f0(n.i(0,4)),A.f0(n.i(0,5)),A.f0(n.i(0,6)),A.f0(n.i(0,7)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=8 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w)}, +gv(a){return B.d.gv(33)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0E&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 33}} +A.a0B.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.HN(A.ax(n.i(0,0)),A.bZ(n.i(0,1)),t.pf.a(n.i(0,2)),t.Q0.a(n.i(0,3)),A.f0(n.i(0,4)),A.f0(n.i(0,5)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=6 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f)}, +gv(a){return B.d.gv(36)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0B&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 36}} +A.a0C.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.rS +case 1:return B.rT +case 2:return B.rU +case 3:return B.B5 +case 4:return B.B6 +case 5:return B.rV +default:return B.rS}}, +eU(a,b,c){var s=null +switch(c.a){case 0:A.a5(0,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break +case 3:A.a5(3,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +break +case 4:A.a5(4,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +break +case 5:A.a5(5,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +break}}, +gv(a){return B.d.gv(37)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0C&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 37}} +A.a0y.prototype={ +k(a){var s=this +return A.hj(A.a1(["id",s.a,"title",s.b,"startTime",s.c,"signStartTime",s.d,"signEndTime",s.e,"place",s.f,"duration",s.r,"principal",s.w,"contactInfo",s.x,"organizer",s.y,"undertaker",s.z,"description",s.Q],t.N,t.X))}} +A.a0z.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}m=t.d +return new A.a0y(A.bZ(n.i(0,0)),A.ax(n.i(0,1)),m.a(n.i(0,2)),m.a(n.i(0,3)),m.a(n.i(0,4)),A.bw(n.i(0,5)),A.bw(n.i(0,6)),A.bw(n.i(0,7)),A.bw(n.i(0,8)),A.bw(n.i(0,9)),A.bw(n.i(0,10)),A.bw(n.i(0,11)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(12,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=12 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w) +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +b.aG(0,c.x) +A.a5(9,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=9 +b.aG(0,c.y) +A.a5(10,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=10 +b.aG(0,c.z) +A.a5(11,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=11 +b.aG(0,c.Q)}, +gv(a){return B.d.gv(31)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a0z&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 31}} +A.a0A.prototype={ +J(){return new A.aM2(B.f)}} +A.aM2.prototype={ +a8(){var s=this,r=$.cEk().a3(0,new A.bUq(s)) +s.w!==$&&A.ck() +s.w=r +s.an()}, +c5(){this.dH() +this.jK(0,!1)}, +m(){var s=this.w +s===$&&A.b() +s.b.O(0,s.a) +this.ap()}, +jK(a,b){return this.bFp(0,b)}, +bFp(a,b){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$jK=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(A.cFQ().bJG(),$async$jK) +case 7:m=d +p=2 +s=6 +break +case 4:p=3 +h=o +l=A.ag(h) +k=A.aD(h) +A.j5(l,k) +i=n.c +if(i==null){s=1 +break}if(b)A.qK(i,null,A.E(A.w("class2nd.refreshFailedTip",null,null),null,null,null,null,null),B.aW) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$jK,r)}, +q(a){A.cFR()}} +A.bUq.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.jK(0,!0),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.H2.prototype={ +J(){return A.dhg()}} +A.aKm.prototype={ +m(){var s=this.d +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s=null,r=A.hr(this.d,new A.bQL(),t.TP),q=A.pk(B.vu,new A.bQM(this),t.pf,t._T) +return A.bW(s,s,A.a1G(A.wr(A.VF(A.R(q,!0,q.$ti.h("B.E")),s),!0,new A.bQN()),7),new A.rP(r,B.he,s),s,s,s)}} +A.bQG.prototype={ +$1(a){return!1}, +$S:1414} +A.bQL.prototype={ +$2(a,b){return!J.cuX(b,new A.bQK())?B.al:B.o0}, +$S:253} +A.bQK.prototype={ +$1(a){return a}, +$S:254} +A.bQN.prototype={ +$2(a,b){var s=null,r=a.a0(t.t7).f,q=A.E(A.w("class2nd.title",s,s),s,s,s,s,s),p=t.p,o=A.a([A.du(s,A.b2(A.bc(a)===B.y?B.j_:B.kZ,s,s,s,s,s,s,s,s,s,s),s,new A.bQH(a),s)],p),n=A.pk(B.vu,new A.bQI(),t.pf,t.xw) +return A.a([new A.pv(r.d,A.ju(o,!0,s,A.VD(s,!0,A.R(n,!0,n.$ti.h("B.E"))),!0,b,!1,q,s),s)],p)}, +$S:57} +A.bQH.prototype={ +$0(){var s=null,r=$.ae() +return A.ctP(this.a,new A.b3j(s,s,s,s,B.qj,new A.eZ(B.bU,r),A.ms(B.bO),new A.bm(s,r,t.M8)),"",t.N)}, +$S:0} +A.bQI.prototype={ +$2(a,b){var s=null +return A.wN(A.E(A.w("class2nd.activityCat."+b.b,s,s),s,s,s,s,s))}, +$S:1417} +A.bQM.prototype={ +$2(a,b){return new A.BM(b,new A.bQJ(this.a,a),null)}, +$S:1418} +A.bQJ.prototype={ +$1(a){var s=this.a.d,r=A.R(s.a,!0,t.y) +r[this.b]=a +s.sj(0,r)}, +$S:4} +A.BM.prototype={ +J(){return new A.aKn(null,B.f)}, +zG(a){return this.d.$1(a)}} +A.aKn.prototype={ +gblZ(){var s=this.f +return s===$?this.f=A.cvE().bID((void 1).c):s}, +gmv(){return!0}, +a8(){this.aT4() +A.jk(B.w,null,t.z).bf(new A.bQR(this),t.P)}, +q(a){var s,r,q,p=null +this.o5(a) +s=this.gblZ() +r=A.a([A.cz4(a.a0(t.t7).f.d)],t.p) +q=s.length +if(q===0)r.push(A.oA(A.kj(A.w("class2nd.noActivities",p,p),B.dp,p,p,p))) +else r.push(A.hs(new A.bQP(s,a),q)) +return new A.ff(new A.bQQ(this),A.cD(B.k,p,B.m,p,p,p,!1,p,B.v,r),p,t.WA)}, +rO(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$rO=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i=n.a.c +if(i.c==null){s=1 +break}if(n.e){s=1 +break}if(n.c==null){s=1 +break}n.C(new A.bQS(n)) +n.a.zG(!0) +p=4 +s=7 +return A.i(A.cFP().bIF(i,n.d),$async$rO) +case 7:m=b +p=2 +s=6 +break +case 4:p=3 +h=o +l=A.ag(h) +k=A.aD(h) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.bQT(n)) +n.a.zG(!1) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$rO,r)}} +A.bQR.prototype={ +$1(a){var s=0,r=A.p(t.P),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.rO(),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:77} +A.bQQ.prototype={ +$1(a){var s=a.a,r=s.c +r.toString +s=s.b +s.toString +if(r>=s)this.a.rO() +return!0}, +$S:62} +A.bQP.prototype={ +$2(a,b){var s=this.a[b] +return new A.H1(s,new A.bQO(this.b,s),null)}, +$S:435} +A.bQO.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.b +o=p.c.k(0) +s=2 +return A.i(A.cc(q.a).fg("/class2nd/activity-details/"+p.a+"?title="+p.b+"&time="+o+"&enable-apply=true",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bQS.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.bQT.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.akA.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.Hj.prototype={ +J(){return A.dhp()}} +A.aKU.prototype={ +a8(){this.an() +this.jK(0,!1)}, +m(){var s=this.y +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +jK(a,b){return this.bFo(0,b)}, +bFo(a,b){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$jK=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.bS9(n)) +p=4 +n.y.sj(0,0) +s=7 +return A.i(A.cFQ().bJB(),$async$jK) +case 7:m=d +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.bSa(n)) +n.y.sj(0,0) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$jK,r)}, +q(a){var s,r,q,p=this,o=null,n=p.w +if(n==null)s=o +else{r=J.vk(n,new A.bS4(p)) +q=r.$ti.h("b1") +s=A.R(new A.b1(r,new A.bS5(p),q),!0,q.h("B.E"))}r=t.p +r=A.a([A.eI(A.a([A.aX(!1,o,o,o,!0,o,o,o,o,!1,o,o,o,o,o,o,o,o,!1,o,o,o,o,o,A.E(A.w("class2nd.info.category",o,o),o,o,o,o,o),o,o,o),p.bnH(),A.aX(!1,o,o,o,!0,o,o,o,o,!1,o,o,o,o,o,o,o,o,!1,o,o,o,o,o,A.E(A.w("class2nd.info.scoreType",o,o),o,o,o,o,o),o,o,o),p.bp7()],r)),B.ic],r) +if(s!=null){q=s.length +if(q===0)r.push(A.oA(A.kj(A.w("class2nd.noAttendedActivities",o,o),B.dp,o,o,o))) +else r.push(A.hs(new A.bS6(p,s),q))}return A.bW(o,o,A.wr(A.cyI(A.cD(B.k,o,B.m,o,o,o,!1,o,B.v,r),new A.bS7(p),B.pP),!0,new A.bS8(p,n)),o,o,o,o)}, +bnH(){var s=this,r=null,q=A.a([new A.aA(new A.af(4,0,4,0),A.ri(A.E(A.w("class2nd.activityCat.all",r,r),r,r,r,r,r),new A.bRT(s),s.z==null,r),r)],t.p),p=s.w +if(p==null)p=B.IL +p=J.dP(p,new A.bRU(),t.pf).jq(0) +B.b.L(q,new A.jJ(p,new A.bRV(s),A.z(p).h("jJ"))) +return new A.ba(r,40,A.Sl(q,r,B.ck,r,B.a_),r)}, +bp7(){var s=this,r=null,q=A.a([new A.aA(new A.af(4,0,4,0),A.ri(A.E(A.w("class2nd.scoreType.all",r,r),r,r,r,r,r),new A.bRZ(s),s.Q==null,r),r)],t.p),p=s.w +if(p==null)p=B.IL +p=A.bnU(J.dP(p,new A.bS_(),t.zB),t.id) +p=A.hh(p,p.$ti.h("B.E")) +B.b.L(q,new A.jJ(p,new A.bS0(s),A.z(p).h("jJ"))) +return new A.ba(r,40,A.Sl(q,r,B.ck,r,B.a_),r)}} +A.bRP.prototype={ +$0(){A.cFR().gbJd()}, +$S:1420} +A.bS9.prototype={ +$0(){return this.a.x=!0}, +$S:0} +A.bSa.prototype={ +$0(){return this.a.x=!1}, +$S:0} +A.bS4.prototype={ +$1(a){var s=this.a.z +return s==null||a.a.f===s}, +$S:255} +A.bS5.prototype={ +$1(a){var s=this.a.Q +return s==null||a.a.f.d===s}, +$S:255} +A.bS8.prototype={ +$2(a,b){var s=null,r=a.a0(t.t7).f,q=A.E(A.w("class2nd.attended.title",s,s),s,s,s,s,s),p=t.p,o=A.a([A.du(s,A.b2(A.bc(a)===B.y?B.j_:B.kZ,s,s,s,s,s,s,s,s,s,s),s,new A.bS1(a,this.b),s)],p),n=this.a,m=n.x +return A.a([new A.pv(r.d,A.ju(o,!0,s,(m===$?n.x=!1:m)?new A.rP(A.hr(n.y,new A.bS2(),t.i),B.he,s):s,!0,b,!1,q,s),s)],p)}, +$S:57} +A.bS1.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.b +if(o==null)o=A.a([],t._X) +p=$.ae() +s=2 +return A.i(A.ctP(q.a,new A.b4g(o,null,null,null,null,B.qj,new A.eZ(B.bU,p),A.ms(B.bO),new A.bm(null,p,t.M8)),"",t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bS2.prototype={ +$2(a,b){return new A.BR(b,null)}, +$S:256} +A.bS7.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.yY(),$async$$0) +case 2:s=3 +return A.i(q.a.jK(0,!0),$async$$0) +case 3:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bS6.prototype={ +$2(a,b){return new A.H0(this.b[b],new A.bS3(this.a),null)}, +$S:438} +A.bS3.prototype={ +$0(){this.a.jK(0,!1)}, +$S:0} +A.bRT.prototype={ +$1(a){var s=this.a +s.C(new A.bRS(s))}, +$S:4} +A.bRS.prototype={ +$0(){this.a.z=null}, +$S:0} +A.bRU.prototype={ +$1(a){return a.a.f}, +$S:1424} +A.bRV.prototype={ +$1(a){var s=null,r=this.a +return new A.aA(new A.af(4,0,4,0),A.ri(A.E(A.w("class2nd.activityCat."+a.b,s,s),s,s,s,s,s),new A.bRR(r,a),r.z===a,s),s)}, +$S:1425} +A.bRR.prototype={ +$1(a){var s=this.a +s.C(new A.bRQ(s,this.b))}, +$S:4} +A.bRQ.prototype={ +$0(){var s=this.a +s.z=this.b +s.Q=null}, +$S:0} +A.bRZ.prototype={ +$1(a){var s=this.a +s.C(new A.bRY(s))}, +$S:4} +A.bRY.prototype={ +$0(){this.a.Q=null}, +$S:0} +A.bS_.prototype={ +$1(a){return a.a.f.d}, +$S:1426} +A.bS0.prototype={ +$1(a){var s=null,r=this.a +return new A.aA(new A.af(4,0,4,0),A.ri(A.E(A.w("class2nd.scoreType."+a.b+".full",s,s),s,s,s,s,s),new A.bRX(r,a),r.Q===a,s),s)}, +$S:1427} +A.bRX.prototype={ +$1(a){var s=this.a +s.C(new A.bRW(s,this.b))}, +$S:4} +A.bRW.prototype={ +$0(){var s=this.a +s.Q=this.b +s.z=null}, +$S:0} +A.H0.prototype={ +q(a){var s,r,q,p=null,o=this.c,n=A.amb(o.gOX(0)),m=n.a,l=o.bJh(),k=A.E(n.b,p,p,p,p,p),j=A.G(a) +o=o.a +s=A.E(A.w("class2nd.activityCat."+o.f.b,p,p)+" #"+o.a,p,p,p,p,p) +r=a.a0(t.L).r.a +r===$&&A.b() +r=$.h2().i(0,r) +s=A.a([s,A.E((r==null?$.es():r).gIe().d4(o.d),p,p,p,p,p)],t.ix) +if(m.length!==0)s.push(new A.As(m,p)) +s=A.dd(s,B.a4,p,B.o,B.u) +if(l!=null&&l!==0){o=A.Zd(l) +r=A.G(a).p3.w +o=A.bv(o,p,p,p,p,p,p,p,p,r==null?p:r.bu(A.b1D(a,l)),p,p,p,p,p)}else{o=o.e +r=A.w("class2nd.applicationStatus."+o.b,p,p) +q=A.G(a).p3.w +if(q==null)o=p +else{$label0$0:{if(B.AX===o){o=B.dZ +break $label0$0}if(B.AY===o){o=B.d8 +break $label0$0}o=p +break $label0$0}o=q.bu(o)}o=A.bv(r,p,p,p,p,p,p,p,p,o,p,p,p,p,p)}return A.jG(A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,p,p,p,p,p,p,new A.b3i(this,a),!1,p,p,s,j.p3.z,p,k,p,o,p),B.k,p,p)}} +A.b3i.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=J +s=2 +return A.i(A.cc(q.b).fg("/class2nd/attended-details",p.c,t.X),$async$$0) +case 2:if(o.q(b,"withdrawn")){p=p.d +if(p!=null)p.$0()}return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.HM.prototype={ +J(){return new A.adr(B.f)}} +A.adr.prototype={ +q(a){var s,r,q,p=null,o=this.a.c,n=A.amb(o.gOX(0)),m=n.a,l=o.b,k=o.a,j=t.s,i=A.E(A.w("class2nd.info.applicationOf",A.a([B.d.k(k.a)],j),p),p,p,p,p,p),h=t.p,g=A.a([],h),f=k.e +if(f===B.AZ){s=this.d?p:this.gbIf() +g.push(A.e8(A.E(A.w("class2nd.attended.withdrawApplicationAction",p,p),p,p,p,p,p),s))}i=A.i4(g,p,p,p,!1,i) +g=A.el(p,n.b,A.w("class2nd.info.name",p,p),p) +s=A.w("class2nd.info.category",p,p) +s=A.el(p,A.w("class2nd.activityCat."+k.f.b,p,p),s,p) +r=A.w("class2nd.info.applicationTime",p,p) +q=a.a0(t.L).r.a +q===$&&A.b() +q=$.h2().i(0,q) +r=A.el(p,(q==null?$.es():q).gx5().d4(k.d),r,p) +q=A.w("class2nd.info.status",p,p) +q=A.a([g,s,r,A.el(p,A.w("class2nd.applicationStatus."+f.b,p,p),q,p)],h) +if(m.length!==0)q.push(A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,p,p,p,p,p,p,p,!1,p,p,new A.As(m,p),p,p,A.E(A.w("class2nd.info.tags",p,p),p,p,p,p,p),p,p,B.ip)) +k=k.b +if(k!==-1){g=A.E(A.w("class2nd.viewDetails",p,p),p,p,p,p,p) +q.push(A.aX(!1,p,p,p,!0,p,p,p,p,!1,p,p,p,p,p,p,p,new A.bUr(a,o),!1,p,p,A.E(A.w("class2nd.info.activityOf",A.a([B.d.k(k)],j),p),p,p,p,p,p),p,p,g,p,B.l_,p))}k=A.a([i,A.eI(q)],h) +if(l.length!==0)k.push(B.ic) +k.push(A.hs(new A.bUs(l),l.length)) +return A.bW(p,p,A.cD(B.k,p,B.m,p,p,p,!1,p,B.v,k),p,p,p,p)}, +Ph(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$Ph=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=p.c +m.toString +o=A.w("class2nd.attended.withdrawApplication.title",null,null) +n=A.w("class2nd.attended.withdrawApplication.desc",null,null) +s=3 +return A.i(A.yw(m,o,A.w("cancel",null,null),n,!1),$async$Ph) +case 3:if(b!==!0){s=1 +break}p.C(new A.bUt(p)) +s=4 +return A.i(A.cvF().bKn(void 1),$async$Ph) +case 4:case 1:return A.n(q,r)}}) +return A.o($async$Ph,r)}} +A.bUr.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.b +o=p.gOX(0) +s=2 +return A.i(A.cc(q.a).fg("/class2nd/activity-details/"+p.a.b+"?title="+o,null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bUs.prototype={ +$2(a,b){return new A.PB(this.a[b],null)}, +$S:1428} +A.bUt.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.PB.prototype={ +q(a){var s,r,q,p,o,n,m=null,l="class2nd.scoreType.",k="class2nd.info.honestyPoints",j=this.c,i=j.d +if(i==null)s=m +else{r=a.a0(t.L).r.a +r===$&&A.b() +r=$.h2().i(0,r) +s=A.E((r==null?$.es():r).gx5().d4(i),m,m,m,m,m)}q=j.c.d +r=j.e +p=r!==0 +if(p&&j.f!==0){p=q!=null?A.w(l+q.b+".full",m,m)+" "+A.Zd(r):A.Zd(r) +o=A.G(a).p3.y +r=A.cy(m,m,m,o==null?m:o.bu(A.b1D(a,r)),p) +p=A.w(k,m,m) +j=j.f +o=A.Zd(j) +n=A.G(a).p3.y +j=n==null?m:n.bu(A.b1D(a,j)) +return A.aX(!1,m,m,m,!0,m,m,m,m,!1,m,m,m,m,m,m,m,m,!1,m,m,s,m,m,A.EZ(m,m,B.aG,m,m,!0,m,A.cy(A.a([r,B.boz,A.cy(m,m,m,j,p+" "+o)],t.VO),m,m,m,m),B.ah,m,m,B.Y,B.a0),m,m,m)}else if(p){j=A.G(a).p3.y +j=j==null?m:j.bu(A.b1D(a,r)) +return A.aX(!1,m,m,m,!0,m,m,m,m,!1,m,m,m,m,m,m,m,m,!1,m,m,s,m,m,A.E(q!=null?A.w(l+q.b+".full",m,m)+" "+A.Zd(r):A.Zd(r),m,m,m,m,m),j,m,m)}else{j=j.f +if(j!==0){r=A.G(a).p3.y +r=r==null?m:r.bu(A.b1D(a,j)) +return A.aX(!1,m,m,m,!0,m,m,m,m,!1,m,m,m,m,m,m,m,m,!1,m,m,s,m,m,A.E(A.w(k,m,m)+" "+A.Zd(j),m,m,m,m,m),r,m,m)}else return A.aX(!1,m,m,m,!0,m,m,m,m,!1,m,m,m,m,m,m,m,m,!1,m,m,s,m,m,A.E("+0",m,m,m,m,m),m,m,m)}}} +A.b4g.prototype={ +a7C(a){var s=null +return A.a([A.du(s,A.b2(A.bc(a)===B.y?B.f4:B.fB,s,s,s,s,s,s,s,s,s,s),s,new A.b4h(this),s)],t.p)}, +a7K(a){return null}, +a7Q(a){var s=A.dnC(this.as,this.x.a.a) +return A.K4(null,new A.b4i(s),s.length,null,null,B.v,!1)}, +a7S(a){var s=null +return A.bB(s,s,B.i,s,s,s,s,s,s,s,s,s,s,s)}} +A.b4h.prototype={ +$0(){this.a.slK(0,"") +return""}, +$S:0} +A.b4i.prototype={ +$2(a,b){return new A.H0(this.a[b],null,null)}, +$S:438} +A.cq7.prototype={ +$1(a){return B.c.p(a.gOX(0),this.a)}, +$S:255} +A.vA.prototype={ +J(){return new A.aM1(B.f)}} +A.aM1.prototype={ +gw3(a){var s=this.d +return s===$?this.d=A.cvE().bIE(void 1):s}, +a8(){this.an() +this.iA(0)}, +iA(a){var s=0,r=A.p(t.H),q,p=this +var $async$iA=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p.gw3(0) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$iA,r)}, +q(a){var s=this,r=null,q=s.a +q=A.a1G(A.wr(A.VF(A.a([new A.ZF(q.d,q.e,s.gw3(0),r),new A.ZE(s.gw3(0),r)],t.p),r),!0,new A.bUp(s)),2) +return A.bW(r,r,q,s.e?B.de:r,r,r,r)}, +BB(){return new A.oo(new A.bUn(this),null)}, +IU(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$IU=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=n.c +g.toString +j=A.w("class2nd.apply.applyRequest",null,null) +i=A.w("class2nd.apply.applyRequestDesc",null,null) +s=3 +return A.i(A.yw(g,j,A.w("cancel",null,null),i,!0),$async$IU) +case 3:if(b!==!0){s=1 +break}p=5 +s=8 +return A.i(A.cvF().bq0(0,void 1),$async$IU) +case 8:m=b +p=2 +s=7 +break +case 5:p=4 +f=o +l=A.ag(f) +k=A.aD(f) +A.j5(l,k) +s=7 +break +case 4:s=2 +break +case 7:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$IU,r)}, +IX(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$IX=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i=n.c +i.toString +s=3 +return A.i(A.yw(i,"Forcibly apply",A.w("cancel",null,null),"Confirm to apply this activity forcibly?",!0),$async$IX) +case 3:if(b!==!0){s=1 +break}p=5 +s=8 +return A.i(A.cvF().jw(void 1),$async$IX) +case 8:m=b +p=2 +s=7 +break +case 5:p=4 +h=o +l=A.ag(h) +k=A.aD(h) +A.j5(l,k) +s=7 +break +case 4:s=2 +break +case 7:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$IX,r)}} +A.bUp.prototype={ +$2(a,b){var s=null,r=a.a0(t.t7).f,q=this.a,p=A.E(A.w("class2nd.info.activityOf",A.a([B.d.k(q.a.c)],t.s),s),s,s,s,s,s),o=t.p,n=A.a([],o) +if(q.a.f)n.push(A.e8(A.E(A.w("class2nd.apply.btn",s,s),s,s,s,s,s),new A.bUo(q))) +n.push(q.BB()) +return A.a([new A.pv(r.d,A.ju(n,!0,s,A.VD(s,!0,A.a([A.wN(A.E(A.w("class2nd.tab.info",s,s),s,s,s,s,s)),A.wN(A.E(A.w("class2nd.tab.description",s,s),s,s,s,s,s))],o)),!0,b,!1,p,s),s)],o)}, +$S:57} +A.bUo.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.IU(),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bUn.prototype={ +$1(a){var s,r=this.a,q=A.a([new A.eW(A.w("openInBrowser",null,null),new A.bUk(r),B.DM)],t.iT) +if($.eN.I().gnS(0))q.push(new A.eW("Forcibly apply",new A.bUl(r),B.alr)) +if($.eN.I().gnS(0)){s=r.c +s.toString +s=A.bc(s)===B.y?B.cs:B.cF +q.push(new A.eW("Delete cache",new A.bUm(r),s))}return q}, +$S:58} +A.bUk.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.Oq("http://sc.sit.edu.cn/public/activity/activityDetail.action?activityId="+q.a.a.c,B.l1),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bUl.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.IX(),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bUm.prototype={ +$0(){var s=0,r=A.p(t.H) +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.cvE().bJ1(void 1,null) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.ZF.prototype={ +J(){return new A.aKk(null,B.f)}} +A.aKk.prototype={ +gmv(){return!0}, +q(a){var s,r,q,p,o,n,m,l,k,j,i,h=null +this.o5(a) +s=this.a +r=s.e +s=s.c +if(s==null)s=r.b +q=A.amb(s) +p=q.a +o=r.c +s=t.p +n=A.a([A.el(h,q.b,A.w("class2nd.info.name",h,h),h)],s) +if(o!=null){m=A.w("class2nd.info.startTime",h,h) +l=a.a0(t.L).r.a +l===$&&A.b() +l=$.h2().i(0,l) +n.push(A.el(h,(l==null?$.es():l).gx5().d4(o),m,h))}m=A.a([],s) +l=r.f +if(l!=null)m.push(A.el(h,l,A.w("class2nd.info.location",h,h),h)) +l=r.w +if(l!=null)m.push(A.el(h,l,A.w("class2nd.info.principal",h,h),h)) +l=r.y +if(l!=null)m.push(A.el(h,l,A.w("class2nd.info.organizer",h,h),h)) +l=r.z +if(l!=null)m.push(A.el(h,l,A.w("class2nd.info.undertaker",h,h),h)) +l=r.x +if(l!=null)m.push(A.el(h,l,A.w("class2nd.info.contactInfo",h,h),h)) +if(p.length!==0)m.push(A.aX(!1,h,h,h,!0,h,h,h,h,!0,h,h,h,h,h,h,h,h,!1,h,h,new A.As(p,h),h,h,A.E(A.w("class2nd.info.tags",h,h),h,h,h,h,h),h,h,h)) +l=A.w("class2nd.info.signInTime",h,h) +k=t.L +j=a.a0(k).r.a +j===$&&A.b() +i=$.h2() +j=i.i(0,j) +m.push(A.el(h,(j==null?$.es():j).gx5().d4(r.d),l,h)) +l=A.w("class2nd.info.signOutTime",h,h) +k=a.a0(k).r.a +k===$&&A.b() +k=i.i(0,k) +m.push(A.el(h,(k==null?$.es():k).gx5().d4(r.e),l,h)) +l=r.r +if(l!=null)m.push(A.el(h,l,A.w("class2nd.info.duration",h,h),h)) +B.b.L(n,m) +return A.UN(A.cD(B.k,h,B.m,h,h,h,!1,h,B.v,A.a([A.eI(n)],s)))}} +A.ZE.prototype={ +J(){return new A.aKj(null,B.f)}} +A.aKj.prototype={ +gmv(){return!0}, +q(a){var s,r,q=null +this.o5(a) +s=this.a.c.Q +r=A.a([],t.p) +if(s==null)r.push(new A.ht(A.kj(A.w("class2nd.noDetails",q,q),B.dp,q,q,q),q)) +else r.push(new A.wI(B.cp,A.bC8(s,B.km),q)) +return A.UN(A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,r))}} +A.b_n.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.b_o.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.H1.prototype={ +q(a){var s=null,r=A.G(a).p3,q=this.c,p=A.amb(q.b),o=A.E(p.b,s,s,s,s,s),n=a.a0(t.L).r.a +n===$&&A.b() +n=$.h2().i(0,n) +return A.jG(A.aX(!1,s,s,s,!0,s,s,s,s,!0,s,s,s,s,s,s,s,this.d,!1,s,s,new A.As(p.a,s),s,s,o,r.w,A.E((n==null?$.es():n).gId().d4(q.c),s,s,s,r.z,s),s),B.k,s,s)}} +A.b3j.prototype={ +a7C(a){var s=null +return A.a([A.du(s,A.b2(A.bc(a)===B.y?B.f4:B.fB,s,s,s,s,s,s,s,s,s,s),s,new A.b3k(this),s)],t.p)}, +a7K(a){return null}, +a7Q(a){return new A.acy(this.x.a.a,null)}, +a7S(a){var s=null +return A.bB(s,s,B.i,s,s,s,s,s,s,s,s,s,s,s)}} +A.b3k.prototype={ +$0(){this.a.slK(0,"") +return""}, +$S:0} +A.acy.prototype={ +J(){return new A.aKi(B.f)}} +A.aKi.prototype={ +a8(){this.an() +this.hk(0)}, +hk(a){var s=0,r=A.p(t.H) +var $async$hk=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(A.cFP().bK9(0,(void 1).c),$async$hk) +case 2:return A.n(null,r)}}) +return A.o($async$hk,r)}, +q(a){var s,r=null,q=this.d,p=A.a([],t.p) +if(q!=null){s=J.ao(q) +if(s.gcU(q))p.push(A.hs(new A.bQF(q,a),s.gA(q))) +else p.push(A.oA(A.kj(A.w("class2nd.noActivities",r,r),B.dp,r,r,r)))}return A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,p)}} +A.bQF.prototype={ +$2(a,b){var s=J.aS(this.a,b) +return new A.H1(s,new A.bQE(this.b,s),null)}, +$S:435} +A.bQE.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.fo(q.a,new A.bQD(q.b),!0,!1,t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bQD.prototype={ +$1(a){var s=this.a +return new A.vA(s.a,s.b,s.c,!0,null)}, +$S:1429} +A.la.prototype={ +H(){return"Semester."+this.b}, +bn(a,b){if(this===b)return 0 +if(this===B.eM)return-1 +return 1}, +$icT:1} +A.h_.prototype={ +gMK(){var s=this.a +return s==null?A.b7(new A.am(Date.now(),!1)):s}, +k(a){return A.r(this.a)+":"+this.b.k(0)}, +hI(){var s=null,r="school.semester.",q=this.a,p=this.b.b +if(q==null)return A.w("school.allYear",s,s)+" "+A.w(r+p,s,s) +else return A.r(q)+"\u2013"+(q+1)+" "+A.w(r+p,s,s)}, +l(a,b){if(b==null)return!1 +return b instanceof A.h_&&A.I(this)===A.I(b)&&this.a==b.a&&this.b===b.b}, +gv(a){return A.ad(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)}, +bn(a,b){var s,r,q=this.a,p=b.a +if(q!=p){if(q==null)return 1 +if(p==null)return-1 +return B.d.bn(q,p)}s=this.b +r=b.b +if(s!==r){if(s===B.h9)return 1 +if(r===B.h9)return-1 +return s.bn(0,r)}return 0}, +$icT:1} +A.rl.prototype={ +H(){return"CourseCat."+this.b}} +A.a9k.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.h_(A.fO(n.i(0,0)),t.mK.a(n.i(0,1)))}, +eU(a,b,c){var s,r,q +A.a5(2,null) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=2 +A.a5(0,null) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b)}, +gv(a){return B.d.gv(1)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a9k&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 1}} +A.a9j.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.h9 +case 1:return B.eM +case 2:return B.jJ +default:return B.h9}}, +eU(a,b,c){switch(c.a){case 0:A.a5(0,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break}}, +gv(a){return B.d.gv(0)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a9j&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 0}} +A.a14.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.n5 +case 1:return B.tu +case 2:return B.aga +case 3:return B.agb +case 4:return B.agc +case 5:return B.agd +case 6:return B.age +case 7:return B.agf +default:return B.n5}}, +eU(a,b,c){var s=null +switch(c.a){case 0:A.a5(0,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break +case 3:A.a5(3,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +break +case 4:A.a5(4,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +break +case 5:A.a5(5,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +break +case 6:A.a5(6,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +break +case 7:A.a5(7,s) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +break}}, +gv(a){return B.d.gv(2)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a14&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 2}} +A.eK.prototype={ +k(a){return""+this.a+":"+B.c.fm(""+this.b,2,"0")}, +W(a,b){var s=B.d.W(this.a*60+this.b,b.gbHa()) +return new A.eK(B.d.aD(s,60),B.d.M(s,60))}, +S(a,b){var s=B.d.S(this.a*60+this.b,b.gbHa()) +return new A.eK(B.d.aD(s,60),B.d.M(s,60))}} +A.a2L.prototype={ +J(){return new A.aOs(B.f)}} +A.aOs.prototype={ +q(a){A.bhn()}} +A.IG.prototype={ +J(){return new A.aOt(B.f)}} +A.aOt.prototype={ +gwn(){var s=this.y +if(s===$){s=A.bhn().gabD() +this.y=s}return s}, +a8(){this.an() +this.uQ(0,this.gwn())}, +uQ(a,b){return this.bFs(0,b)}, +bFs(a,b){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$uQ=A.l(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.bZo(n,b)) +p=4 +s=7 +return A.i(A.d6D().bJC(b),$async$uQ) +case 7:m=d +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.bZp(n)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$uQ,r)}, +q(a){var s,r=null,q=this.w,p=Date.now(),o=A.a([A.i4(r,r,r,r,!1,A.E(A.w("examArrange.title",r,r),r,r,r,r,r)),new A.ht(this.LK(),r)],t.p) +if(q!=null){s=J.ao(q) +if(s.gad(q))o.push(A.oA(A.kj(A.w("examArrange.noExamsTip",r,r),B.dp,r,r,r))) +else o.push(A.hs(new A.bZn(q,new A.am(p,!1)),s.gA(q)))}p=A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,o) +return A.bW(r,r,p,this.x?B.de:r,r,r,r)}, +LK(){var s=this.gc6().dl($.e2.I().gt9(),t.ue),r=this.gwn() +return A.cyV(A.cBw(s==null?null:s.a),r,new A.bZm(this))}} +A.bZo.prototype={ +$0(){this.a.w=A.bhn().bIQ(this.b)}, +$S:0} +A.bZp.prototype={ +$0(){this.a.x=!1}, +$S:0} +A.bZn.prototype={ +$2(a,b){var s=null,r=J.aS(this.a,b) +r.gDb(r).a.bJR(this.b) +return new A.aA(new A.af(6,0,6,0),A.jG(new A.atD(r,!1,s),s,s,s),s)}, +$S:172} +A.bZm.prototype={ +$1(a){var s=this.a +s.C(new A.bZl(s,a)) +A.bhn().sabD(a)}, +$S:258} +A.bZl.prototype={ +$0(){this.a.z=this.b}, +$S:0} +A.atD.prototype={ +q(a){var s,r,q,p=null,o=this.c +o.gDb(o) +s=A.a([A.E(o.gbJn(),p,p,p,A.G(a).p3.w,p)],t.ix) +o.gbJS() +s=A.i1(s,B.t,B.d7,B.u) +r=A.G(a).ay +q=r.dy +o=A.a([s,A.cH1(q==null?r.db:q,p),new A.atE(o,p)],t.p) +return A.iW(A.dd(o,B.a4,p,B.o,B.u),20,15)}} +A.atE.prototype={ +q(a){var s,r,q,p=null,o=A.G(a).p3.z,n=this.c +n.gDb(n) +s=t.p +r=t.nk +q=A.a([new A.kq(A.a([A.E(A.w("examArrange.location",p,p),p,p,p,o,p),A.E(n.gbK3(),p,p,p,o,p)],s))],r) +n.gaKn() +q.push(new A.kq(A.a([A.E(A.w("examArrange.seatNumber",p,p),p,p,p,o,p),A.E(n.gaKn().k(0),p,p,p,o,p)],s))) +B.b.L(q,A.a([new A.kq(A.a([A.E(A.w("examArrange.date",p,p),p,p,p,o,p),A.E(A.d6E(n,a),p,p,p,o,p)],s)),new A.kq(A.a([A.E(A.w("examArrange.time",p,p),p,p,p,o,p),A.E(A.d6F(n,a),p,p,p,o,p)],s))],r)) +return A.czc(q,p)}} +A.fd.prototype={ +gY3(){var s,r=this.c +r=A.R(new A.O(r,new A.bho(),A.X(r).h("O<1,U?>")),!0,t.PM) +s=this.d +B.b.L(r,new A.O(s,new A.bhp(),A.X(s).h("O<1,U?>"))) +r.push(this.b.a) +return A.cJa(A.bnU(r,t.i))}, +gacK(){var s=this.gY3() +if(s==null)return!1 +return s>=60}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.fd&&A.I(s)===A.I(b)&&s.b.l(0,b.b)&&A.ax1(s.c,b.c)&&A.ax1(s.d,b.d)}, +gv(a){return A.ad(this.b,A.cs(this.c),A.cs(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,B.a)}} +A.bho.prototype={ +$1(a){return a.a}, +$S:441} +A.bhp.prototype={ +$1(a){return a.a}, +$S:441} +A.a2N.prototype={ +k(a){var s=this +return A.hj(A.a1(["courseClass",s.a,"courseCode",s.b,"courseName",s.c,"courseCredit",s.d,"teacher",s.e,"score",s.f,"isPassed",s.r,"examNature",s.w,"examForm",s.x,"examTime",s.y],t.N,t.X))}} +A.a2O.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.a2N(A.ax(n.i(0,0)),A.ax(n.i(0,1)),A.ax(n.i(0,2)),A.bZ(n.i(0,3)),A.ax(n.i(0,4)),A.f0(n.i(0,5)),A.j2(n.i(0,6)),A.ax(n.i(0,7)),A.ax(n.i(0,8)),t.Q0.a(n.i(0,9)),A.ax(n.i(0,10)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(11,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=11 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w) +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +b.aG(0,c.x) +A.a5(9,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=9 +b.aG(0,c.y) +A.a5(10,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=10 +b.aG(0,c.z)}, +gv(a){return B.d.gv(23)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a2O&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 23}} +A.AI.prototype={ +H(){return"UgExamType."+this.b}} +A.o6.prototype={ +k(a){var s=this,r=s.as +return A.hj(A.a1(["score",A.r(s.a),"courseName",s.b,"courseId",s.c,"innerClassId",s.d,"dynClassId",s.e,"schoolYear",""+s.f,"semester",s.r.k(0),"credit",A.r(s.w),"time",s.x,"items",r.k(r)],t.N,t.X))}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.o6&&A.I(s)===A.I(b)&&s.a==b.a&&s.b===b.b&&s.c===b.c&&s.d===b.d&&s.f===b.f&&s.r===b.r&&s.w===b.w&&s.e===b.e&&J.q(s.x,b.x)&&s.y===b.y&&s.Q===b.Q&&A.ax1(s.z,b.z)&&A.ax1(s.as,b.as)}, +gv(a){var s=this +return A.cs([s.a,s.b,s.c,s.d,s.f,s.r,s.w,s.e,s.x,s.y,s.Q,A.cs(s.z),A.cs(s.as)])}} +A.vV.prototype={ +k(a){return A.hj(A.a1(["scoreType",this.a,"percentage",this.b,"score",this.c],t.N,t.X))}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.vV&&A.I(s)===A.I(b)&&s.a===b.a&&s.c==b.c&&s.b===b.b}, +gv(a){return A.ad(this.a,this.c,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.a2Q.prototype={ +dL(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f="Not enough bytes available.",e=b.f,d=e+1 +if(d>b.e)A.C(A.b8(f)) +s=b.a +b.f=d +r=s[e] +e=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(f)) +b.f=p +e.n(0,s[d],b.fn(0))}d=A.nG(e.i(0,0)) +s=A.ax(e.i(0,1)) +p=A.ax(e.i(0,2)) +o=A.ax(e.i(0,3)) +n=A.bZ(e.i(0,5)) +m=t.mK.a(e.i(0,6)) +l=A.f0(e.i(0,7)) +k=A.ax(e.i(0,4)) +j=t.Q0.a(e.i(0,8)) +i=t.wj.a(e.i(0,9)) +h=t.C8.a(e.i(0,11)) +g=t.j +return new A.o6(d,s,p,o,k,n,m,l,j,i,J.ie(g.a(e.i(0,10)),t.N),h,J.ie(g.a(e.i(0,12)),t.y8))}, +eU(a,b,c){var s,r,q,p=null +A.a5(13,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=13 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w) +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +b.aG(0,c.x) +A.a5(9,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=9 +b.aG(0,c.y) +A.a5(10,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=10 +b.aG(0,c.z) +A.a5(11,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=11 +b.aG(0,c.Q) +A.a5(12,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=12 +b.aG(0,c.as)}, +gv(a){return B.d.gv(20)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a2Q&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 20}} +A.a2M.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.vV(A.ax(n.i(0,0)),A.ax(n.i(0,1)),A.nG(n.i(0,3)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=3 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.c)}, +gv(a){return B.d.gv(21)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a2M&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 21}} +A.abE.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.ym +case 1:return B.ZT +case 2:return B.ZU +default:return B.ym}}, +eU(a,b,c){switch(c.a){case 0:A.a5(0,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break +case 2:A.a5(2,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +break}}, +gv(a){return B.d.gv(22)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.abE&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 22}} +A.a2P.prototype={ +J(){return new A.aOx(B.f)}} +A.aOx.prototype={ +q(a){A.cI7()}} +A.a2R.prototype={ +J(){return new A.aOz(B.f)}} +A.aOz.prototype={ +q(a){A.atH()}} +A.IH.prototype={ +J(){return new A.aOv(B.f)}} +A.aOv.prototype={ +q(a){var s,r=null,q=this.a.c,p=q.gY3(),o=q.b,n=A.i4(r,r,r,r,!1,A.E(o.b,r,r,r,r,r)),m=t.p,l=A.a([],m) +if(p!=null){s=A.w("examResult.maxScore",r,r) +l.push(A.el(B.DZ,B.e.k(p),s,r))}s=A.w("school.course.semester",r,r) +l.push(A.el(B.E7,new A.h_(o.f,o.r).hI(),s,r)) +l.push(A.el(B.Ed,o.c,A.w("school.course.courseCode",r,r),r)) +o=o.y +if(o!==B.n5){s=A.w("school.course.category",r,r) +l.push(A.el(B.E1,A.w("school.courseCat."+o.b,r,r),s,r))}o=A.a([n,A.eI(l)],m) +n=q.c.length +if(n!==0)B.b.L(o,A.a([B.ic,A.hs(new A.bZt(q),n)],m)) +n=q.d.length +if(n!==0)B.b.L(o,A.a([B.ic,A.hs(new A.bZu(q),n)],m)) +return A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,o),r,r,r,r)}} +A.bZt.prototype={ +$2(a,b){return new A.Dd(this.a.c[b],null)}, +$S:442} +A.bZu.prototype={ +$2(a,b){return new A.Dd(this.a.d[b],null)}, +$S:442} +A.IK.prototype={ +J(){return new A.aOu(B.f)}} +A.aOu.prototype={ +q(a){var s,r,q,p,o=null,n=this.a.c,m=n.a,l=n.x,k=n.as,j=A.z(k).h("b1"),i=A.R(new A.b1(k,new A.bZr(),j),!0,j.h("B.E")) +j=A.i4(o,o,o,o,!1,A.E(n.b,o,o,o,o,o)) +k=t.p +s=A.a([],k) +if(m!=null){r=A.w("examResult.score",o,o) +s.push(A.el(B.DZ,B.e.k(m),r,o))}else s.push(new A.rM(A.E(A.w("examResult.courseNotEval",o,o),o,o,o,o,o),A.E(A.w("examResult.examRequireEvalTip",o,o),o,o,o,o,o),B.ayT,"/teacher-eval",o)) +r=A.w("examResult.examType.title",o,o) +s.push(A.el(B.azA,A.w("examResult.examType."+n.Q.b,o,o),r,o)) +r=A.w("school.course.semester",o,o) +s.push(A.el(B.E7,new A.h_(n.f,n.r).hI(),r,o)) +if(l!=null){r=A.w("examResult.publishTime",o,o) +q=a.a0(t.L).r.a +q===$&&A.b() +q=$.h2().i(0,q) +s.push(A.el(B.azd,(q==null?$.es():q).gx5().d4(l),r,o))}s.push(A.el(B.Ed,n.c,A.w("school.course.courseCode",o,o),o)) +r=n.e +if(r.length!==0)s.push(A.el(B.E0,r,A.w("school.course.classCode",o,o),o)) +r=n.y +if(r!==B.n5){q=A.w("school.course.category",o,o) +s.push(A.el(B.E1,A.w("school.courseCat."+r.b,o,o),q,o))}r=n.z +if(!r.gad(r)){q=A.b2(r.gA(r)>1?B.alb:B.iZ,o,o,o,o,o,o,o,o,o,o) +p=A.aai("school.course.teacher",r.gA(r),o) +s.push(A.el(q,r.bQ(r,", "),p,o))}r=A.X(i).h("O<1,hX>") +return A.bW(o,o,A.cD(B.k,o,B.m,o,o,o,!1,o,B.v,A.a([j,A.eI(s),B.ic,new A.a9Q(new A.bGz(240,0,0,3),A.Mk(A.R(new A.O(i,new A.bZs(),r),!0,r.h("aa.E")),!0,!0,!0),o)],k)),o,o,o,o)}} +A.bZr.prototype={ +$1(a){return a.c!=null}, +$S:1434} +A.bZs.prototype={ +$1(a){var s=null,r=A.E(a.a+" "+a.b,s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,A.E(J.cw(a.c),s,s,s,s,s),s,s,r,s,s,s)}, +$S:1435} +A.Mz.prototype={ +J(){return new A.ajo(new A.bm(100,$.ae(),t.N9),A.czF(),B.f)}} +A.ajo.prototype={ +a8(){var s=this +s.an() +s.d.a3(0,s.gafu()) +s.NH()}, +m(){var s=this.d +s.k3$=$.ae() +s.k2$=0 +s.O(0,this.gafu()) +this.ap()}, +Qd(){var s=0,r=A.p(t.H),q=this +var $async$Qd=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.e.aFh("for(const e of document.getElementsByClassName('input-pjf')) e.value='"+A.r(q.d.a)+"'"),$async$Qd) +case 2:return A.n(null,r)}}) +return A.o($async$Qd,r)}, +NH(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$NH=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=$.RN.I() +o=$.cEl() +s=2 +return A.i(p.D5(0,o.grg(),A.mk(null,null,null,null,null,null,"GET",null,null,null,null,null,null,null,null,null)),$async$NH) +case 2:n=A +s=3 +return A.i(A.bOM($.aw4.I(),o),$async$NH) +case 3:q.C(new n.chR(q,b)) +return A.n(null,r)}}) +return A.o($async$NH,r)}, +q(a){var s,r,q,p=null,o=this.f +if(o==null)return B.al +s=$.cEl().grg() +r=A.w("examResult.teacherEvalTitle",p,p) +q=$.eN.I().gnS(0)?A.aoa(this.bnQ(),p,40,p,p):p +return A.cNL(q,this.e,r,o,s,B.aLD)}, +bnQ(){return A.hr(this.d,new A.chQ(this),t.S)}} +A.chR.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.chQ.prototype={ +$2(a,b){return A.bGu(100,null,B.d.k(b),100,0,null,null,new A.chP(this.a),b)}, +$S:1436} +A.chP.prototype={ +$1(a){var s=B.e.au(a) +this.a.d.sj(0,s) +return s}, +$S:26} +A.Jc.prototype={ +J(){var s=$.ae() +return new A.aPL(new A.bm(0,s,t.bm),new A.bm(B.IS,s,t.oc),A.dak(t.fw),B.f)}} +A.aPL.prototype={ +gafb(){var s=this.d +return s===$?this.d=this.awh(A.atH().aJc(B.XM)):s}, +a8(){this.an() +this.Wq()}, +m(){var s=this.w,r=$.ae() +s.k3$=r +s.k2$=0 +s=this.e +s.k3$=r +s.k2$=0 +this.ap()}, +awh(a){var s=A.drY(a) +return new A.aUm(A.dsL(s),s)}, +Wq(){return this.bvQ()}, +bvQ(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$Wq=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i={} +n.C(new A.c1o(n)) +p=4 +i.a=null +s=7 +return A.i(A.atF(new A.c1p(n)),$async$Wq) +case 7:m=b +i.a=m.a +if(n.c==null){s=1 +break}n.C(new A.c1q(i,n)) +p=2 +s=6 +break +case 4:p=3 +h=o +l=A.ag(h) +k=A.aD(h) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.c1r(n)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Wq,r)}, +q(a){var s,r,q,p=this,o=null,n=p.gafb(),m=n==null,l=m?o:n.b +if(l==null)l=B.IS +s=p.a7V() +r=t.p +q=A.a([A.e8(A.bv(A.w("cancel",o,o),o,o,o,o,o,o,o,o,o,o,o,o,o,o),new A.c1k(p))],r) +s=A.a([A.ju(q,!0,o,p.f?new A.rP(A.hr(p.e,new A.c1l(),t.i),B.he,o):o,!1,!1,!0,s,o)],r) +m=!m +if(m)if(n.a.length===0)s.push(A.oA(A.kj(A.w("examResult.noResultsTip",o,o),B.dp,o,o,o))) +if(m){m=n.a +B.b.L(s,new A.O(m,new A.c1m(),A.X(m).h("O<1,c>")))}return A.bW(o,o,new A.SV(A.cD(B.k,o,B.m,o,o,o,!1,o,B.v,s),new A.c1n(p),p.w,l,o,t.AY),A.aoa(new A.ba(o,40,p.bo8(),o),o,o,B.L,o),o,o,o)}, +a7V(){return A.hr(this.r,new A.c1j(),t.oO)}, +bo8(){return A.hr(this.r,new A.c1i(this),t.oO)}} +A.c1o.prototype={ +$0(){this.a.f=!0}, +$S:0} +A.c1p.prototype={ +$1(a){var s=this.a +if(s.c==null)return +s.e.sj(0,a)}, +$S:26} +A.c1q.prototype={ +$0(){var s=this.b +s.d=s.awh(this.a.a) +s.f=!1}, +$S:0} +A.c1r.prototype={ +$0(){this.a.f=!1}, +$S:0} +A.c1n.prototype={ +$2(a,b){this.a.r.sj(0,b)}, +$S:1437} +A.c1k.prototype={ +$0(){this.a.w.bqe()}, +$S:0} +A.c1l.prototype={ +$2(a,b){return new A.BR(b,null)}, +$S:256} +A.c1m.prototype={ +$1(a){return new A.II(a.b,a.a,null)}, +$S:1438} +A.c1j.prototype={ +$2(a,b){var s=null +return J.h3(b)?A.E(A.w("examResult.gpa.title",s,s),s,s,s,s,s):A.FB(A.cPF(b,!1))}, +$S:1439} +A.c1i.prototype={ +$2(a,b){var s,r,q=null,p=A.E(A.w("examResult.gpa.selectAll",q,q),q,q,q,q,q),o=J.ao(b),n=o.gA(b),m=this.a,l=m.gafb() +p=A.amJ(q,p,n!==(l==null?q:J.bn(l.b))?new A.c1c(m):q) +s=A.amJ(q,A.E(A.w("examResult.gpa.invert",q,q),q,q,q,q,q),new A.c1d(m)) +r=A.E(A.w("examResult.gpa.exceptGenEd",q,q),q,q,q,q,q) +n=A.amJ(q,r,o.ef(b,new A.c1e())?new A.c1f(m,b):q) +l=A.E(A.w("examResult.gpa.exceptFailed",q,q),q,q,q,q,q) +return A.Sl(A.a([new A.aA(new A.af(4,0,4,0),p,q),new A.aA(new A.af(4,0,4,0),s,q),new A.aA(new A.af(4,0,4,0),n,q),new A.aA(new A.af(4,0,4,0),A.amJ(q,l,o.ef(b,new A.c1g())?new A.c1h(m,b):q),q)],t.p),q,B.ck,q,B.a_)}, +$S:1440} +A.c1c.prototype={ +$0(){this.a.w.a04()}, +$S:0} +A.c1d.prototype={ +$0(){this.a.w.bz3()}, +$S:0} +A.c1e.prototype={ +$1(a){return a.b.y===B.tu}, +$S:173} +A.c1f.prototype={ +$0(){var s=this.a.w,r=J.vk(this.b,new A.c1a()),q=r.$ti.h("fW<1,h>") +s.a=A.R(new A.fW(r,new A.c1b(),q),!0,q.h("B.E")) +s.ab()}, +$S:0} +A.c1a.prototype={ +$1(a){return a.b.y!==B.tu}, +$S:173} +A.c1b.prototype={ +$1(a){return a.a}, +$S:260} +A.c1g.prototype={ +$1(a){return!a.gacK()}, +$S:173} +A.c1h.prototype={ +$0(){var s=this.a.w,r=J.vk(this.b,new A.c18()),q=r.$ti.h("fW<1,h>") +s.a=A.R(new A.fW(r,new A.c19(),q),!0,q.h("B.E")) +s.ab()}, +$S:0} +A.c18.prototype={ +$1(a){return a.gacK()}, +$S:173} +A.c19.prototype={ +$1(a){return a.a}, +$S:260} +A.II.prototype={ +J(){return new A.aOw(B.f)}} +A.aOw.prototype={ +q(a){var s,r,q,p=this,o=t.VR.a(a.a0(t.Pq).x),n=o.a,m=A.mf(n,A.X(n).c),l=J.dP(p.a.d,new A.bZz(),t.S).jq(0),k=m.pq(0,l) +n=A.z(k).h("jJ") +s=A.R(new A.jJ(k,new A.bZA(o),n),!0,n.h("B.E")) +r=k.gad(k) +n=k.gA(k) +q=l.a +return new A.rs(!0,J.bn(p.a.d),new A.bZB(p,s,r,n===q,o),new A.bZC(p,o),null)}} +A.bZz.prototype={ +$1(a){return a.a}, +$S:260} +A.bZA.prototype={ +$1(a){return this.a.b[a]}, +$S:1443} +A.bZB.prototype={ +$4(a,b,c,d){var s,r=this,q=null,p=A.b2(b?B.DG:B.DH,q,q,q,q,q,q,q,q,q,q),o=r.a,n=A.E(o.a.c.hI(),q,q,q,q,q),m=A.E(A.cPF(r.b,!0),q,q,q,q,q),l=A.G(a) +if(r.c)s=A.bc(a)===B.y?B.uG:B.uJ +else if(r.d)s=A.bc(a)===B.y?B.DS:B.DX +else s=A.bc(a)===B.y?B.axQ:B.ayx +return A.aX(!1,q,q,q,!0,q,q,q,q,!1,q,p,q,q,q,q,q,c,!1,q,q,m,q,q,n,l.p3.w,A.du(q,A.b2(s,q,q,q,q,q,q,q,q,q,q),q,new A.bZy(o,r.d,r.e),q),q)}, +$C:"$4", +$R:4, +$S:292} +A.bZy.prototype={ +$0(){var s,r,q,p +for(s=J.au(this.a.a.d),r=this.c,q=this.b;s.t();){p=s.gK(s).a +if(q)r.bHu(p) +else r.aKy(0,p)}}, +$S:0} +A.bZC.prototype={ +$2(a,b){var s=J.aS(this.a.a.d,b),r=this.b,q=s.a +return A.jG(new A.atG(s,new A.bZw(r,s),new A.bZx(a,s),B.b.p(r.a,q),null),B.k,null,null)}, +$S:43} +A.bZw.prototype={ +$0(){this.a.bH5(0,this.b.a)}, +$S:0} +A.bZx.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.fo(q.a,new A.bZv(q.b),!0,!1,t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bZv.prototype={ +$1(a){return new A.IH(this.a,null)}, +$S:1444} +A.atG.prototype={ +q(a){var s,r,q,p,o,n,m=this,l=null,k=A.G(a).p3,j=m.c,i=j.b,h=j.gY3() +if(h==null)h=0 +s=m.f +if(s)r=A.bc(a)===B.y?B.DS:B.DX +else r=A.bc(a)===B.y?B.uG:B.uJ +r=A.b2(r,l,l,l,l,l,l,l,l,l,l) +q=A.bv(i.b,l,l,l,l,l,l,l,l,l,l,l,l,l,l) +p=A.a([A.E(A.w("school.course.credit",l,l)+": "+A.r(i.w),l,l,l,l,l)],t.LT) +o=i.z +if(!o.gad(o))p.push(A.E(o.bQ(o,", "),l,l,l,l,l)) +p=A.dd(p,B.a4,l,B.o,B.Z) +o=k.ax +if(o==null)j=l +else{n=k.y +n=n==null?l:n.r +o=o.vZ(j.gacK()?l:B.d8,n) +j=o}return A.aX(!1,l,l,l,!0,l,l,l,l,!0,l,new A.aA(new A.af(8,8,8,8),r,l),j,l,l,l,m.e,m.d,s,l,l,p,k.z,l,q,k.w,A.E(B.e.k(h),l,l,l,l,l),l)}} +A.coc.prototype={ +$1(a){var s=a.gY3() +if(s==null)return null +return new A.aUk(a.b.w,s)}, +$S:1445} +A.IJ.prototype={ +J(){var s=null +return new A.aOy(new A.aR(s,t.A),new A.fh(0,!0,s,s,s,A.a([],t.ZP),$.ae()),B.f)}} +A.aOy.prototype={ +a8(){var s,r=this +r.an() +s=r.x +r.r=$.cuN().avC(r.w,s,s.gaBC(),t.i1) +r.k5(0)}, +m(){var s=this.r +if(s!=null)s.$0() +this.x.m() +this.ap()}, +k5(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$k5=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.bZE(n)) +p=4 +s=7 +return A.i(A.cI6().bJD(),$async$k5) +case 7:m=c +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.bZF(n)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$k5,r)}, +q(a){var s,r=this,q=null,p=r.d,o=A.E(A.w("examResult.title",q,q),q,q,q,q,q) +o=A.a([A.i4(q,r.e?B.de:q,q,q,!1,o)],t.p) +if(p!=null){s=J.ao(p) +if(s.gad(p))o.push(A.oA(A.kj(A.w("examResult.noResultsTip",q,q),B.dp,q,q,q))) +else o.push(A.hs(new A.bZD(p),s.gA(p)))}return A.bW(q,q,A.cD(B.k,r.x,B.m,r.w,q,q,!1,q,B.v,o),q,q,q,q)}} +A.bZE.prototype={ +$0(){this.a.d=A.cI7().bIW()}, +$S:0} +A.bZF.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.bZD.prototype={ +$2(a,b){return new A.QT(!1,J.aS(this.a,b),null)}, +$S:1446} +A.IL.prototype={ +J(){return new A.aOA(new A.bm(0,$.ae(),t.bm),B.f)}} +A.aOA.prototype={ +gwn(){var s=this.w +if(s===$){s=A.atH().gabD() +this.w=s}return s}, +a8(){this.an() +this.iA(0)}, +m(){var s=this.z +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +iA(a){return this.bvP(0)}, +bvP(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$iA=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:i={} +if(n.c==null){s=1 +break}n.C(new A.bZK(n)) +p=4 +i.a=null +s=7 +return A.i(A.atF(new A.bZL(n)),$async$iA) +case 7:m=c +i.a=m.b +if(n.c==null){s=1 +break}n.C(new A.bZM(i,n)) +n.z.sj(0,0) +p=2 +s=6 +break +case 4:p=3 +h=o +l=A.ag(h) +k=A.aD(h) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.bZN(n)) +n.z.sj(0,0) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$iA,r)}, +q(a){var s,r,q=this,p=null,o=q.x +if(o===$)o=q.x=A.atH().aJc(q.gwn()) +s=A.E(A.w("examResult.title",p,p),p,p,p,p,p) +r=t.p +r=A.a([A.i4(A.a([A.e8(A.E(A.w("examResult.teacherEval",p,p),p,p,p,p,p),new A.bZH(a))],r),p,p,p,!1,s),new A.ht(q.LK(),p)],r) +if(o!=null){s=J.ao(o) +if(s.gad(o))r.push(A.oA(A.kj(A.w("examResult.noResultsTip",p,p),B.dp,p,p,p))) +else r.push(A.hs(new A.bZI(o),s.gA(o)))}s=A.cD(B.k,p,B.m,p,p,p,!1,p,B.v,r) +return A.bW(p,p,s,q.y?new A.rP(A.hr(q.z,new A.bZJ(),t.i),B.he,p):p,p,p,p)}, +LK(){var s=this.gc6().dl($.e2.I().gt9(),t.ue),r=this.gwn() +return A.cyV(A.cBw(s==null?null:s.a),r,new A.bZG(this))}} +A.bZK.prototype={ +$0(){this.a.y=!0}, +$S:0} +A.bZL.prototype={ +$1(a){var s=this.a +if(s.c==null)return +s.z.sj(0,a)}, +$S:26} +A.bZM.prototype={ +$0(){var s=this.b,r=this.a.a,q=s.Q +s.x=J.aS(r,q===$?s.Q=s.gwn():q) +s.y=!1}, +$S:0} +A.bZN.prototype={ +$0(){this.a.y=!1}, +$S:0} +A.bZH.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.cc(q.a).fg("/teacher-eval",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bZI.prototype={ +$2(a,b){return A.jG(new A.Dd(J.aS(this.a,b),null),B.k,null,null)}, +$S:43} +A.bZJ.prototype={ +$2(a,b){return new A.BR(b,null)}, +$S:256} +A.bZG.prototype={ +$1(a){A.atH().sabD(a)}, +$S:258} +A.cs0.prototype={ +$1(a){return a.Q}, +$S:1447} +A.cs1.prototype={ +$1(a){return a.c===this.a.c}, +$S:445} +A.cs2.prototype={ +$1(a){return a.c===this.a.c}, +$S:445} +A.csm.prototype={ +$1(a){var s=a.b +return new A.h_(s.f,s.r)}, +$S:1449} +A.csn.prototype={ +$1(a){return new A.aUo(a.b,a.a)}, +$S:1450} +A.cso.prototype={ +$1(a){return a.b}, +$S:1451} +A.QT.prototype={ +q(a){var s,r,q,p=null,o=A.G(a).p3,n=this.d,m=n.c,l=A.apY(m,!0) +m=A.bv(m,p,p,p,p,p,p,p,p,p,p,p,p,p,p) +s=A.dd(A.a([A.E(n.a+" "+n.e,p,p,p,p,p),A.E(n.w+" | "+A.w("school.course.credit",p,p)+": "+n.d,p,p,p,p,p)],t.LT),B.a4,p,B.o,B.u) +r=o.ax +if(r==null)r=p +else{q=o.y +q=q==null?p:q.r +r=r.vZ(n.r?p:B.d8,q)}n=A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,l,r,p,p,p,p,p,!1,p,p,s,o.z,p,m,o.w,A.E(B.e.k(n.f),p,p,p,p,p),p) +return A.aHQ(n,B.k,p,B.kp)}} +A.Dd.prototype={ +q(a){var s,r,q=null,p=A.G(a).p3,o=this.c,n=o.a,m=o.b,l=A.apY(m,!0) +m=A.bv(m,q,q,q,q,q,q,q,q,q,q,q,q,q,q) +s=A.a([A.E(A.w("examResult.examType."+o.Q.b,q,q),q,q,q,q,q)],t.LT) +o=o.z +if(!o.gad(o))s.push(A.E(o.bQ(o,", "),q,q,q,q,q)) +o=A.dd(s,B.a4,q,B.o,B.Z) +s=p.ax +if(s==null)s=q +else{r=p.y +r=r==null?q:r.r +s=s.vZ(n!=null&&n>=60?q:B.d8,r)}r=n!=null?A.E(B.e.k(n),q,q,q,q,q):A.E(A.w("examResult.courseNotEval",q,q),q,q,q,q,q) +return A.aX(!1,q,q,q,!0,q,q,q,q,!0,q,l,s,q,q,q,q,new A.bhr(this,a),!1,q,q,o,p.z,q,m,p.w,r,q)}} +A.bhr.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fo(q.b,new A.bhq(q.a),!0,!1,t.z) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bhq.prototype={ +$1(a){return new A.IK(this.a.c,null)}, +$S:1452} +A.LS.prototype={ +J(){return new A.aVV(B.f)}} +A.aVV.prototype={ +q(a){var s,r=null,q=this.gc6().dl($.e2.I().gDm(),t.lo),p=this.gc6().dl($.e2.I().gIj(),t.xk),o=t.p,n=A.a([],o),m=p!==B.fU +if(m){o=A.a([],o) +s=q==null +if((s?r:q.c.a)===!0)o.push(B.bmO) +if((s?r:q.c.b)===!0)o.push(B.bmR) +if((s?r:q.c.c)===!0)if(q===B.e0)o.push(B.bmT) +else if(q===B.h1)o.push(B.bmS) +B.b.L(n,o)}if(m)n.push(B.bmX) +if(m)n.push(B.bmZ) +n.push(B.bmW) +n.push(B.bmY) +return A.bW(r,r,A.wr(A.cyI(A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,n),new A.cdR(),B.pP),!0,new A.cdS()),r,r,r,!1)}} +A.cdS.prototype={ +$2(a,b){var s=null +return A.a([new A.pv(a.a0(t.t7).f.d,A.ju(s,!0,s,s,!1,b,!1,A.E(A.w("school.navigation",s,s),s,s,s,s,s),s),s)],t.p)}, +$S:57} +A.cdR.prototype={ +$0(){var s=0,r=A.p(t.H) +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.fk().$1("School page refreshed") +s=2 +return A.i(A.yY(),$async$$0) +case 2:s=3 +return A.i($.cEk().ab(),$async$$0) +case 3:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.a_J.prototype={ +k(a){var s=this,r=t.N +return A.hj(A.a1(["bookId",s.a,"isbn",s.b,"title",s.c,"author",s.d,"publisher",s.e,"publishDate",s.f,"callNumber",s.r],r,r))}} +A.a_P.prototype={ +k(a){var s=this.a +return s.k(s)}} +A.a_K.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.a_J(A.ax(n.i(0,0)),A.ax(n.i(0,1)),A.ax(n.i(0,2)),A.ax(n.i(0,3)),A.ax(n.i(0,4)),A.ax(n.i(0,5)),A.ax(n.i(0,6)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=7 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r)}, +gv(a){return B.d.gv(105)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a_K&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 105}} +A.a_Q.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}m=t.N +return new A.a_P(J.xJ(t.f.a(n.i(0,0)),m,m))}, +eU(a,b,c){var s,r,q +A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=1 +A.a5(0,null) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a)}, +gv(a){return B.d.gv(107)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a_Q&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 107}} +A.a_U.prototype={ +k(a){var s=this +return A.hj(A.a1(["bookId",s.a,"barcode",s.d,"isbn",s.e,"author",s.x,"title",s.r,"callNumber",s.f,"location",s.w,"type",s.y,"borrowDate",s.b,"expireDate",s.c],t.N,t.K))}} +A.P6.prototype={ +H(){return"BookBorrowingHistoryOperation."+this.b}} +A.a_L.prototype={ +k(a){var s=this +return A.hj(A.a1(["bookId",s.a,"operateType",s.c,"barcode",s.d,"title",s.e,"isbn",s.f,"callNo",s.r,"location",s.x,"type",s.y,"author",s.w,"processDate",s.b],t.N,t.K))}} +A.a_V.prototype={ +dL(a,b){var s,r,q,p,o,n,m,l,k,j,i="Not enough bytes available.",h=b.f,g=h+1 +if(g>b.e)A.C(A.b8(i)) +s=b.a +b.f=g +r=s[h] +h=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(i)) +b.f=p +h.n(0,s[g],b.fn(0))}g=A.ax(h.i(0,0)) +s=A.ax(h.i(0,3)) +p=A.ax(h.i(0,4)) +o=A.ax(h.i(0,8)) +n=A.ax(h.i(0,6)) +m=A.ax(h.i(0,5)) +l=A.ax(h.i(0,7)) +k=A.ax(h.i(0,9)) +j=t.d +return new A.a_U(g,j.a(h.i(0,1)),j.a(h.i(0,2)),s,p,m,n,l,o,k)}, +eU(a,b,c){var s,r,q,p=null +A.a5(10,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=10 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w) +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +b.aG(0,c.x) +A.a5(9,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=9 +b.aG(0,c.y)}, +gv(a){return B.d.gv(108)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a_V&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 108}} +A.a_M.prototype={ +dL(a,b){var s,r,q,p,o,n,m,l,k,j,i="Not enough bytes available.",h=b.f,g=h+1 +if(g>b.e)A.C(A.b8(i)) +s=b.a +b.f=g +r=s[h] +h=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(i)) +b.f=p +h.n(0,s[g],b.fn(0))}g=A.ax(h.i(0,0)) +s=t.Ef.a(h.i(0,2)) +p=A.ax(h.i(0,3)) +o=A.ax(h.i(0,4)) +n=A.ax(h.i(0,5)) +m=A.ax(h.i(0,6)) +l=A.ax(h.i(0,8)) +k=A.ax(h.i(0,9)) +j=A.ax(h.i(0,7)) +return new A.a_L(g,t.d.a(h.i(0,1)),s,p,o,n,m,j,l,k)}, +eU(a,b,c){var s,r,q,p=null +A.a5(10,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=10 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w) +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +b.aG(0,c.x) +A.a5(9,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=9 +b.aG(0,c.y)}, +gv(a){return B.d.gv(109)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a_M&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 109}} +A.a_N.prototype={ +dL(a,b){var s=b.f,r=s+1 +if(r>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.zQ +case 1:return B.a2x +default:return B.zQ}}, +eU(a,b,c){switch(c.a){case 0:A.a5(0,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break}}, +gv(a){return B.d.gv(110)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a_N&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 110}} +A.Hq.prototype={ +eZ(){var s=this +return A.a1(["isbn",s.a,"coverlink",s.b,"resourceLink",s.c,"status",s.d],t.N,t.z)}} +A.a_R.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.Hq(A.ax(n.i(0,0)),A.ax(n.i(0,1)),A.ax(n.i(0,2)),A.bZ(n.i(0,3)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=4 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d)}, +gv(a){return B.d.gv(106)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a_R&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 106}} +A.a94.prototype={ +H(){return"SearchMethod."+this.b}} +A.a4U.prototype={ +J(){return new A.aQQ(B.f)}} +A.aQQ.prototype={ +q(a){A.cxN()}} +A.JV.prototype={ +J(){return new A.aQR(A.cxN().bIO(),B.f)}} +A.aQR.prototype={ +a8(){this.an() +this.iA(0)}, +iA(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$iA=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.c3r(n)) +p=4 +s=7 +return A.i(A.cxM().bIS(),$async$iA) +case 7:m=c +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.c3s(n)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$iA,r)}, +q(a){var s=null,r=this.e,q=A.E(A.w("library.borrowing.title",s,s),s,s,s,s,s),p=t.p,o=A.a([A.e8(A.E(A.w("library.borrowing.history",s,s),s,s,s,s,s),new A.c3p(a))],p) +q=A.a([A.ju(o,!0,s,this.d?B.de:s,!1,!1,!1,q,s)],p) +p=J.ao(r) +if(p.gad(r))q.push(A.oA(A.kj(A.w("library.borrowing.noBorrowing",s,s),B.dp,s,s,s))) +else q.push(A.hs(new A.c3q(r),p.gA(r))) +return A.bW(s,s,A.cD(B.k,s,B.m,s,s,s,!1,s,B.v,q),s,s,s,s)}} +A.c3r.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.c3s.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.c3p.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.cc(q.a).fg("/library/borrowing-history",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c3q.prototype={ +$2(a,b){return new A.P8(J.aS(this.a,b),!1,null)}, +$S:1453} +A.P8.prototype={ +q(a){var s,r=null,q=this.c,p=q.e,o=A.E(q.r,r,r,r,r,r),n=A.E(q.x,r,r,r,r,r),m=A.E(A.w("library.info.barcode",r,r)+" "+q.d,r,r,r,r,r),l=A.E(A.w("library.info.isbn",r,r)+" "+p,r,r,r,r,r),k=t.L,j=a.a0(k).r.a +j===$&&A.b() +s=$.h2() +j=s.i(0,j) +j=(j==null?$.es():j).gx4().d4(q.b) +k=a.a0(k).r.a +k===$&&A.b() +k=s.i(0,k) +q=A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,new A.Hh(p,r,r),r,r,r,r,r,new A.b6F(this,a),!1,r,r,A.dd(A.a([n,m,l,A.E(j+"\u2013"+(k==null?$.es():k).gx4().d4(q.c),r,r,r,r,r)],t.LT),B.a4,r,B.o,B.Z),r,r,o,r,r,r) +return A.aHQ(q,B.k,r,this.d?B.a6h:B.kp)}} +A.b6F.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.b +s=2 +return A.i(A.fo(p,new A.b6E(q.a,p),!0,!1,t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.b6E.prototype={ +$1(a){var s=null,r=this.a,q=r.c +return new A.C5(new A.ao5(q.a,q.e,q.r,q.x,q.f,s,s),s,A.a([A.e8(A.E(A.w("library.borrowing.renew",s,s),s,s,s,s,s),new A.b6D(r,this.b))],t.p),s)}, +$S:446} +A.b6D.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.ctq(q.b,q.a.c.d),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.C5.prototype={ +J(){return new A.aLq(new A.bm(!0,$.ae(),t.uh),B.f)}} +A.aLq.prototype={ +gw3(a){var s=this.d +return s===$?this.d=A.d95().bIM((void 1).c.a):s}, +a8(){this.an() +this.aad()}, +aad(){var s=0,r=A.p(t.H),q,p=this +var $async$aad=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.gw3(0) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$aad,r)}, +q(a){var s,r,q,p,o,n=this,m=null,l=n.gw3(0),k=n.a,j=k.c,i=k.d,h=j.f,g=j.r +k=A.hr(n.f,new A.bSH(n,j),t.y) +s=A.w("library.info.title",m,m) +r=i==null +if(r)q=m +else q=A.du(m,A.b2(A.bc(a)===B.y?B.j_:B.kZ,m,m,m,m,m,m,m,m,m,m),m,new A.bSI(i,j),m) +q=A.el(m,j.c,s,q) +s=A.w("library.info.author",m,m) +if(r)p=m +else p=A.du(m,A.b2(A.bc(a)===B.y?B.j_:B.kZ,m,m,m,m,m,m,m,m,m,m),m,new A.bSJ(i,j),m) +o=t.p +p=A.a([q,A.el(m,j.d,s,p),A.el(m,j.b,A.w("library.info.isbn",m,m),m),A.el(m,j.e,A.w("library.info.callNumber",m,m),m)],o) +if(h!=null){s=A.w("library.info.publisher",m,m) +p.push(A.el(m,h,s,r?m:A.du(m,B.az_,m,new A.bSK(i,h),m)))}if(g!=null)p.push(A.el(m,g,A.w("library.info.publishDate",m,m),m)) +k=A.a([k,A.eI(p),A.eI(A.a([B.bp,new A.a_O(j,m)],o))],o) +k.push(A.eI(A.a([B.bp,new A.aA(new A.af(10,10,10,10),n.bnU(l),m)],o))) +return A.UN(A.bW(m,m,A.cD(B.k,m,B.m,m,m,m,!1,m,B.v,k),m,m,m,m))}, +bnU(a){var s=a.a +s=s.gep(s) +return A.czc(s.fK(s,new A.bSE(),t.WC).eO(0),B.b3z)}} +A.bSH.prototype={ +$2(a,b){var s=b?300:0 +return A.bNA(new A.bSG(this.a,this.b),B.cl,B.fy,new A.aP(0,s,t.Y),t.i)}, +$S:1455} +A.bSG.prototype={ +$3(a,b,c){var s=this.b,r=A.FB(s.c),q=this.a,p=q.a.e,o=q.e?B.de:null +return A.i4(p,o,b,new A.a3k(new A.Hh(s.b,new A.bSF(q),null),null),!0,r)}, +$S:1456} +A.bSF.prototype={ +$1(a){this.a.f.sj(0,a)}, +$S:4} +A.bSI.prototype={ +$0(){this.a.$2(B.bkG,this.b.c)}, +$S:0} +A.bSJ.prototype={ +$0(){this.a.$2(B.bkH,this.b.d)}, +$S:0} +A.bSK.prototype={ +$0(){this.a.$2(B.bkI,this.b)}, +$S:0} +A.bSE.prototype={ +$1(a){var s=null +return new A.kq(A.a([A.E(a.a,s,s,s,s,s),A.E(a.b,s,s,s,s,s)],t.p))}, +$S:1457} +A.a_O.prototype={ +J(){return new A.aLp(B.f)}} +A.aLp.prototype={ +a8(){this.an() +this.Wr()}, +Wr(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$Wr=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.bSB(n)) +m=n.a.c.a +p=4 +s=7 +return A.i(A.boL(m),$async$Wr) +case 7:l=b +if(n.c==null){s=1 +break}n.C(new A.bSC(n,l)) +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.ag(h) +j=A.aD(h) +A.j5(k,j) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:if(n.c==null){s=1 +break}n.C(new A.bSD(n)) +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$Wr,r)}, +q(a){var s=null,r=this.d,q=A.a([A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.ayS,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("library.collectionStatus",s,s),s,s,s,s,s),s,s,s)],t.p) +if(this.e)q.push(B.iI) +else if(r!=null)B.b.L(q,J.dP(r,new A.bSA(),t.hT)) +return A.dd(q,B.t,s,B.o,B.u)}} +A.bSB.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.bSC.prototype={ +$0(){var s=this.a +s.d=this.b +s.e=!1}, +$S:0} +A.bSD.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.bSA.prototype={ +$1(a){var s=null,r=A.E(a.gbJr(),s,s,s,s,s),q=t.N +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,A.E(A.w("library.info.availableCollection",s,A.a1(["available",A.r(a.gbJU()),"collection",A.r(a.gbJm())],q,q)),s,s,s,s,s),s,s,r,s,s,s)}, +$S:1458} +A.ao5.prototype={ +k(a){var s=this +return A.hj(A.a1(["bookId",s.a,"isbn",s.b,"title",s.c,"author",s.d,"publisher",s.f,"publishDate",s.r,"callNumber",s.e],t.N,t.R))}} +A.JX.prototype={ +J(){return new A.aQT(A.cxN().bIN(),B.f)}} +A.aQT.prototype={ +a8(){this.an() +this.iA(0)}, +iA(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$iA=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.c3D(n)) +p=4 +s=7 +return A.i(A.cxM().bIR(),$async$iA) +case 7:m=c +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.c3E(n)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$iA,r)}, +q(a){var s,r=null,q=this.e,p=A.E(A.w("library.history.title",r,r),r,r,r,r,r) +p=A.a([A.ju(r,!0,r,this.d?B.de:r,!1,!1,!1,p,r)],t.p) +s=J.ao(q) +if(s.gad(q))p.push(A.oA(A.kj(A.w("library.history.noHistory",r,r),B.dp,r,r,r))) +else p.push(A.hs(new A.c3C(q),s.gA(q))) +return A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,p),r,r,r,r)}} +A.c3D.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.c3E.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.c3C.prototype={ +$2(a,b){return new A.P5(J.aS(this.a,b),null)}, +$S:1459} +A.P5.prototype={ +q(a){var s=null,r=this.c,q=r.f,p=A.E(r.e,s,s,s,s,s),o=A.E(r.w,s,s,s,s,s),n=A.E(A.w("library.info.barcode",s,s)+" "+r.d,s,s,s,s,s),m=A.E(A.w("library.info.isbn",s,s)+" "+q,s,s,s,s,s),l=a.a0(t.L).r.a +l===$&&A.b() +l=$.h2().i(0,l) +return A.jG(A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,new A.Hh(q,s,s),s,s,s,s,s,new A.b6C(this,a),!1,s,s,A.dd(A.a([o,n,m,A.E((l==null?$.es():l).gx4().d4(r.b),s,s,s,s,s)],t.LT),B.a4,s,B.o,B.Z),s,s,p,s,A.E(A.w("library.history.operation."+r.c.b,s,s),s,s,s,s,s),s),B.k,s,s)}} +A.b6C.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.fo(q.b,new A.b6B(q.a),!0,!1,t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.b6B.prototype={ +$1(a){var s=null,r=this.a.c +return new A.C5(new A.ao5(r.a,r.f,r.e,r.w,r.r,s,s),s,s,s)}, +$S:446} +A.JW.prototype={ +J(){$.e2.I() +var s=A.dU($.iy.I(),"/oa/credentials",t.W8) +s=s==null?null:s.a +return new A.aQS(s,new A.eZ(B.bU,$.ae()),new A.aR(null,t.am),B.f)}} +A.aQS.prototype={ +gPt(){var s,r,q=this.e +if(q===$){s=this.d +s=s==null?B.bU:new A.cu(s,B.bz,B.aw) +r=$.ae() +q!==$&&A.a_() +q=this.e=new A.eZ(s,r)}return q}, +m(){var s=this.gPt(),r=$.ae() +s.k3$=r +s.k2$=0 +s=this.f +s.k3$=r +s.k2$=0 +this.ap()}, +q(a){var s=null,r=A.E(A.w("library.login.title",s,s),s,s,s,s,s) +return A.dn(s,A.bW(A.jb(s,s,!0,s,this.x?B.de:s,1,s,s,s,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,r,s,s,s,1,s),s,A.nk(new A.aA(new A.af(25,0,25,0),A.aDC(A.dd(A.a([this.a7H(),new A.ba(s,10,s,s),this.LJ()],t.p),B.t,s,B.o,B.Z),B.pn),s)),B.ajX,s,s,s),B.m,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.c3z(a),s,s,s,s,s,s,s,!1,B.ac)}, +a7H(){var s,r,q,p,o,n=this,m=null,l=n.gPt(),k=!$.eN.I().gnS(0)&&n.d!=null,j=A.w("library.readerId",m,m) +k=A.Av(!1,m,!0,A.Zp(),l,A.md(m,m,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,m,A.w("library.login.readerIdHint",m,m),m,m,B.azc,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,m),!1,m,m,m,1,!1,m,m,m,k,B.lZ,m) +l=n.w +j=l?B.xX:m +s=A.w("credentials.pwd",m,m) +r=A.w("library.login.passwordHint",m,m) +q=n.c +q.toString +p=A.b2(A.bc(q)===B.y?B.ux:B.uK,m,m,m,m,m,m,m,m,m,m) +q=n.w +o=n.c +if(q){o.toString +q=A.bc(o)===B.y?B.nE:B.uL}else{o.toString +q=A.bc(o)===B.y?B.nF:B.uI}return A.aum(B.iz,new A.Hl(A.cS(A.a([k,A.Av(!1,m,!0,new A.c3u(),n.f,A.md(m,m,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,m,r,m,m,p,m,m,m,m,m,s,m,m,m,m,m,m,m,m,A.du(m,A.b2(q,m,m,m,m,m,m,m,m,m,m),m,new A.c3v(n),m),m,m,m,m),!1,m,m,j,1,!l,m,new A.c3w(n),m,!1,B.qk,m)],t.p),B.t,m,B.o,B.u,m,m,B.x),m),n.r)}, +LJ(){return A.hr(this.gPt(),new A.c3y(this),t.Rp)}, +qw(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$qw=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i=new A.fJ(n.gPt().a.a,n.f.a.a) +p=4 +if(n.c==null){s=1 +break}n.C(new A.c3A(n)) +s=7 +return A.i(A.d93().CH(i),$async$qw) +case 7:p=2 +s=6 +break +case 4:p=3 +h=o +m=A.ag(h) +l=A.aD(h) +A.j5(m,l) +if(n.c==null){s=1 +break}n.C(new A.c3B(n)) +if(t.VI.b(m)){j=n.c +j.toString +A.BB(j,m,l)}s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$qw,r)}} +A.c3z.prototype={ +$0(){A.yP(this.a).zW(A.hH(!0,null,!0,!0,null,null,!1))}, +$S:0} +A.c3u.prototype={ +$2(a,b){return A.ZG(b)}, +$S:249} +A.c3w.prototype={ +$1(a){return this.aHL(a)}, +aHL(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +s=!p.x?2:3 +break +case 2:s=4 +return A.i(p.qw(),$async$$1) +case 4:case 3:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:171} +A.c3v.prototype={ +$0(){var s=this.a +s.C(new A.c3t(s))}, +$S:0} +A.c3t.prototype={ +$0(){var s=this.a +s.w=!s.w}, +$S:0} +A.c3y.prototype={ +$2(a,b){var s=null,r=this.a +r=!r.x&&b.a.length!==0?new A.c3x(r):s +return A.NH(B.j1,new A.aA(new A.af(5,5,5,5),A.E(A.w("login.login",s,s),s,s,s,s,s),s),r)}, +$S:251} +A.c3x.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.c +o.toString +A.yP(o).zW(A.hH(!0,null,!0,!0,null,null,!1)) +s=2 +return A.i(p.qw(),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c3A.prototype={ +$0(){return this.a.x=!0}, +$S:0} +A.c3B.prototype={ +$0(){return this.a.x=!1}, +$S:0} +A.Hh.prototype={ +J(){return new A.aKR(B.f)}} +A.aKR.prototype={ +giR(a){var s=this.d +return s===$?this.d=A.d8W(this.a.c):s}, +a8(){this.an() +this.iA(0) +$.an.xr$.push(new A.bRE(this))}, +iA(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$iA=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.i(A.boM(n.a.c),$async$iA) +case 7:m=c +if(n.c==null){s=1 +break}n.C(new A.bRD(n,m)) +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$iA,r)}, +q(a){return A.xS(B.C,this.bo7(),B.cl,B.bd,null)}, +bo7(){var s=this.giR(0) +if(s==null)return B.al +return A.cFz(new A.bRA(this),new A.bRB(),B.bC,B.A1,s.c,new A.bRC(),B.ce)}} +A.bRE.prototype={ +$1(a){var s=this.a,r=s.a.d +if(r!=null)r.$1(s.giR(0)!=null)}, +$S:5} +A.bRD.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.bRC.prototype={ +$2(a,b){return B.al}, +$S:1460} +A.bRB.prototype={ +$3(a,b,c){return B.al}, +$S:1461} +A.bRA.prototype={ +$1(a){var s=this.a.a.d +if(s!=null)s.$1(!1)}, +$S:202} +A.km.prototype={ +H(){return"OaAnnounceCat."+this.b}} +A.T2.prototype={ +k(a){var s=this +return A.hj(A.a1(["title",s.a,"uuid",s.b,"catalogId",s.c,"dateTime",s.d,"departments",s.e],t.N,t.K))}} +A.a6p.prototype={ +k(a){var s=this +return A.hj(A.a1(["title",s.a,"dateTime",s.b,"department",s.c,"author",s.d,"readNumber",s.e,"content",s.f,"attachments",s.r],t.N,t.K))}} +A.a6n.prototype={ +k(a){var s=t.N +return A.hj(A.a1(["name",this.a,"url",this.b],s,s))}} +A.a6u.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.T2(A.ax(n.i(0,0)),A.ax(n.i(0,1)),A.ax(n.i(0,2)),t.d.a(n.i(0,3)),J.ie(t.j.a(n.i(0,4)),t.N))}, +eU(a,b,c){var s,r,q,p=null +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=5 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e)}, +gv(a){return B.d.gv(92)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a6u&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 92}} +A.a6q.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.a6p(A.ax(n.i(0,0)),t.d.a(n.i(0,1)),A.ax(n.i(0,2)),A.ax(n.i(0,3)),A.bZ(n.i(0,4)),A.ax(n.i(0,5)),J.ie(t.j.a(n.i(0,6)),t.vr))}, +eU(a,b,c){var s,r,q,p=null +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=7 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r)}, +gv(a){return B.d.gv(90)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a6q&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 90}} +A.a6o.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.a6n(A.ax(n.i(0,0)),A.ax(n.i(0,1)))}, +eU(a,b,c){var s,r,q +A.a5(2,null) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=2 +A.a5(0,null) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b)}, +gv(a){return B.d.gv(91)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a6o&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 91}} +A.a6m.prototype={ +J(){return new A.aSw(B.f)}} +A.aSw.prototype={ +q(a){var s=null,r=A.E(A.w("oaAnnounce.title",s,s),s,s,s,s,s) +return A.b3X(A.a([A.NH(B.azH,A.E(A.w("seeAll",s,s),s,s,s,s,s),new A.c8r(a))],t.p),s,s,r,s)}} +A.c8r.prototype={ +$0(){A.cc(this.a).fg("/oa-announce",null,t.X)}, +$S:0} +A.Hd.prototype={ +J(){return new A.aKM(B.f)}} +A.aKM.prototype={ +gw3(a){var s=this.d +return s===$?this.d=A.cKq().bIG((void 1).c.b):s}, +a8(){this.an() +this.k5(0)}, +k5(a){var s=0,r=A.p(t.H),q,p=this +var $async$k5=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p.gw3(0) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$k5,r)}, +q(a){var s=this,r=null,q=s.gw3(0),p=A.a1G(A.wr(A.VF(A.a([new A.a6s(s.a.c,q,r),new A.a6r(q,r)],t.p),r),!0,new A.bRv(s)),2) +return A.bW(r,r,p,s.e?B.de:r,r,r,r)}} +A.bRv.prototype={ +$2(a,b){var s=null,r=a.a0(t.t7).f,q=A.E(A.w("oaAnnounce.title",s,s),s,s,s,s,s),p=t.p +return A.a([new A.pv(r.d,A.ju(A.a([A.du(s,B.j2,s,new A.bRu(this.a),s)],p),!0,s,A.VD(s,!0,A.a([A.wN(A.E(A.w("oaAnnounce.tab.info",s,s),s,s,s,s,s)),A.wN(A.E(A.w("oaAnnounce.tab.content",s,s),s,s,s,s,s))],p)),!0,b,!1,q,s),s)],p)}, +$S:57} +A.bRu.prototype={ +$0(){var s=this.a.a.c +A.Oq("https://myportal.sit.edu.cn/detach.portal?action=bulletinBrowser&.ia=false&.pmn=view&.pen="+s.c+"&bulletinId="+s.b,B.l1)}, +$S:0} +A.a6s.prototype={ +J(){return new A.aSy(null,B.f)}} +A.aSy.prototype={ +gmv(){return!0}, +q(a){var s,r,q,p,o,n,m,l,k=null +this.o5(a) +s=this.a +r=s.d +q=s.c +p=A.amb(q.a) +o=p.a +s=t.p +n=A.a([A.el(k,p.b,A.w("oaAnnounce.info.title",k,k),k)],s) +n.push(A.el(k,r.d,A.w("oaAnnounce.info.author",k,k),k)) +m=A.w("oaAnnounce.info.publishTime",k,k) +l=a.a0(t.L).r.a +l===$&&A.b() +l=$.h2().i(0,l) +n.push(A.el(k,(l==null?$.es():l).gx4().d4(q.d),m,k)) +m=A.w("oaAnnounce.info.department",k,k) +l=q.e +n.push(A.el(k,l.bQ(l,", "),m,k)) +if(o.length!==0)n.push(A.aX(!1,k,k,k,!0,k,k,k,k,!0,k,k,k,k,k,k,k,k,!1,k,k,new A.As(o,k),k,k,A.E(A.w("oaAnnounce.info.tags",k,k),k,k,k,k,k),k,k,k)) +n=A.a([A.eI(n)],s) +m=r.r +l=m.gad(m) +if(!l)n.push(A.eI(A.a([B.bp,A.aX(!1,k,k,k,!0,k,k,k,k,!1,k,B.azE,k,k,k,k,k,k,!1,k,k,k,k,k,A.E(A.aai("oaAnnounce.info.attachmentHeader",m.gA(m),k),k,k,k,k,k),k,k,k)],s))) +n.push(A.hs(new A.c8s(r,q),m.gA(m))) +return A.UN(A.cD(B.k,k,B.m,k,k,k,!1,k,B.v,n))}} +A.c8s.prototype={ +$2(a,b){return new A.Hi(this.b.b,this.a.r.i(0,b),null)}, +$S:1462} +A.a6r.prototype={ +J(){return new A.aSx(null,B.f)}} +A.aSx.prototype={ +gmv(){return!0}, +q(a){var s,r,q=null +this.o5(a) +s=this.a.c +r=A.a([],t.p) +r.push(new A.wI(B.cp,new A.an8(s,q),q)) +return A.UN(A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,r))}} +A.b00.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.b01.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.KC.prototype={ +J(){return new A.aSA(B.f)}} +A.aSA.prototype={ +q(a){return new A.a6t(A.daA(this.gc6().dl($.e2.I().gDm(),t.lo)),null)}} +A.a6t.prototype={ +J(){return new A.aSz(B.f)}} +A.aSz.prototype={ +gv6(){var s,r,q=this,p=q.d +if(p===$){s=q.a.c +r=A.X(s).h("O<1,A>") +r=A.R(new A.O(s,new A.c8t(),r),!0,r.h("aa.E")) +s=$.ae() +q.d!==$&&A.a_() +p=q.d=new A.bm(r,s,t.AI)}return p}, +m(){var s=this.gv6() +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s=this,r=null,q=A.hr(s.gv6(),new A.c8x(),t.TP),p=s.a.c,o=A.pk(p,new A.c8y(s),t.Yk,t.CQ) +return A.bW(r,r,A.a1G(A.wr(A.VF(A.R(o,!0,o.$ti.h("B.E")),r),!0,new A.c8z(s)),p.length),new A.rP(q,B.he,r),r,r,r)}} +A.c8t.prototype={ +$1(a){return!1}, +$S:1463} +A.c8x.prototype={ +$2(a,b){return!J.cuX(b,new A.c8w())?B.al:B.o0}, +$S:253} +A.c8w.prototype={ +$1(a){return a}, +$S:254} +A.c8z.prototype={ +$2(a,b){var s=null,r=a.a0(t.t7).f,q=A.E(A.w("oaAnnounce.title",s,s),s,s,s,s,s),p=this.a.a.c,o=A.X(p).h("O<1,qL>") +return A.a([new A.pv(r.d,A.ju(s,!0,s,A.VD(s,!0,A.R(new A.O(p,new A.c8u(),o),!0,o.h("aa.E"))),!0,b,!1,q,s),s)],t.p)}, +$S:57} +A.c8u.prototype={ +$1(a){var s=null +return A.wN(A.E(A.w("oaAnnounce.oaAnnounceCat."+a.b,s,s),s,s,s,s,s))}, +$S:1464} +A.c8y.prototype={ +$2(a,b){return new A.En(b,new A.c8v(this.a,a),new A.ca(b,t.H_))}, +$S:1465} +A.c8v.prototype={ +$1(a){var s=this.a,r=A.R(s.gv6().a,!0,t.y) +r[this.b]=a +s.gv6().sj(0,r)}, +$S:4} +A.En.prototype={ +J(){return new A.aSB(null,B.f)}, +zG(a){return this.d.$1(a)}} +A.aSB.prototype={ +gbmO(){var s=this.f +return s===$?this.f=A.cKq().bII((void 1).c):s}, +gmv(){return!0}, +a8(){this.aTE() +A.jk(B.w,null,t.z).bf(new A.c8C(this),t.P)}, +q(a){var s,r,q,p=null +this.o5(a) +s=this.gbmO() +r=A.a([A.cz4(a.a0(t.t7).f.d)],t.p) +q=s.length +if(q===0)r.push(A.oA(A.kj(A.w("oaAnnounce.noOaAnnouncementsTip",p,p),B.dp,p,p,p))) +else r.push(A.hs(new A.c8A(s),q)) +return new A.ff(new A.c8B(this),A.cD(B.k,p,B.m,p,p,p,!1,p,B.v,r),p,t.WA)}, +rO(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$rO=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:if(n.e){s=1 +break}if(n.c==null){s=1 +break}n.C(new A.c8D(n)) +n.a.zG(!0) +m=n.a.c +p=4 +s=7 +return A.i(A.daD().bIH(m,n.d),$async$rO) +case 7:l=b +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.ag(h) +j=A.aD(h) +A.j5(k,j) +if(n.c==null){s=1 +break}n.C(new A.c8E(n)) +n.a.zG(!1) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$rO,r)}} +A.c8C.prototype={ +$1(a){var s=0,r=A.p(t.P),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.rO(),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:77} +A.c8B.prototype={ +$1(a){var s=a.a,r=s.c +r.toString +s=s.b +s.toString +if(r>=s)this.a.rO() +return!0}, +$S:62} +A.c8A.prototype={ +$2(a,b){return A.jG(new A.aAh(this.a[b],null),B.k,null,null)}, +$S:447} +A.c8D.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.c8E.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.ala.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.an8.prototype={ +q(a){return A.bC8(A.dmO(this.c.f),B.km)}} +A.Hi.prototype={ +J(){return new A.acJ(B.f)}} +A.acJ.prototype={ +q(a){var s=null,r=this.d,q=this.a.d,p=A.t5(s,s,s) +p.bU=this.gbBZ() +q=A.EZ(s,s,B.aG,s,s,!0,s,A.cy(A.a([A.cy(s,s,p,B.bs1,q.a)],t.VO),s,s,s,s),B.ah,s,s,B.Y,B.a0) +if(r==null)p=s +else p=A.cxO(isNaN(r)?s:r) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,p,s,s,q,s,s,s)}, +Yq(){var s=0,r=A.p(t.H),q=this,p +var $async$Yq=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.c +s=2 +return A.i(A.cwk($.d6Y.I(),"attachment",p).VU(0,!0),$async$Yq) +case 2:return A.n(null,r)}}) +return A.o($async$Yq,r)}} +A.aAh.prototype={ +q(a){var s,r=null,q=A.G(a).p3,p=this.c,o=A.amb(p.a),n=A.E(o.b,r,r,r,r,r),m=q.Q,l=p.e +l=l.S(l,o.a) +s=a.a0(t.L).r.a +s===$&&A.b() +s=$.h2().i(0,s) +return A.aX(!1,r,r,r,!0,r,r,r,r,!0,r,r,r,r,r,r,r,new A.bv3(this,a),!1,r,r,new A.As(l,r),m,r,n,q.w,A.E((s==null?$.es():s).gId().d4(p.d),r,r,r,m,r),r)}} +A.bv3.prototype={ +$0(){A.cc(this.b).fg("/oa-announce/details",this.a.c,t.X)}, +$S:0} +A.LT.prototype={ +J(){return new A.aVX(B.f)}} +A.aVX.prototype={ +q(a){var s=null,r=this.gc6().dl($.e2.I().gDm(),t.lo),q=A.uu(s,!1,!0,!1,A.E(A.w("school.navigation",s,s),s,s,s,s,s)),p=t.p,o=A.a([],p),n=r==null +if((n?s:r.c.a)===!0)o.push(this.bo1()) +if((n?s:r.c.c)===!0)o.push(this.bom()) +return A.bW(s,s,A.cD(B.k,s,B.m,s,B.ck,s,!1,s,B.v,A.a([q,A.eI(o)],p)),s,s,s,s)}, +bo1(){return new A.Fo(new A.cdV(this),null)}, +bom(){return new A.Fo(new A.cdY(),null)}} +A.cdV.prototype={ +$2(a,b){var s,r,q=null,p=A.E(A.w("school.settings.class2nd.autoRefresh.title",q,q),q,q,q,q,q),o=A.E(A.w("school.settings.class2nd.autoRefresh.desc",q,q),q,q,q,q,q),n=this.a.c +n.toString +s=A.b2(A.bc(n)===B.y?B.fz:B.fA,q,q,q,q,q,q,q,q,q,q) +r=A.dU($.cn.I().gPZ().gawS().a,"/school/class2nd/autoRefresh",t.y) +n=r==null?!0:r +return A.aX(!1,q,q,q,!0,q,q,q,q,!1,q,s,q,q,q,q,q,q,!1,q,q,o,q,q,p,q,A.jy(new A.cdU(b),n),q)}, +$S:170} +A.cdU.prototype={ +$1(a){this.a.$1(new A.cdT(a))}, +$S:4} +A.cdT.prototype={ +$0(){A.ds($.cn.I().gPZ().gawS().a,"/school/class2nd/autoRefresh",this.a)}, +$S:0} +A.cdY.prototype={ +$2(a,b){var s=null,r=A.E(A.w("school.settings.examResult.showResultPreview.title",s,s),s,s,s,s,s),q=A.E(A.w("school.settings.examResult.showResultPreview.desc",s,s),s,s,s,s,s),p=A.dU($.cn.I().gPZ().gazd().a,"/school/examResult/showResultPreview",t.y) +if(p==null)p=!0 +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.azk,s,s,s,s,s,s,!1,s,s,q,s,s,r,s,A.jy(new A.cdX(b),p),s)}, +$S:170} +A.cdX.prototype={ +$1(a){this.a.$1(new A.cdW(a))}, +$S:4} +A.cdW.prototype={ +$0(){A.ds($.cn.I().gPZ().gazd().a,"/school/examResult/showResultPreview",this.a)}, +$S:0} +A.bDz.prototype={ +gawS(){var s=this.b +if(s===$){s!==$&&A.a_() +s=this.b=new A.bUj(this.a)}return s}, +gazd(){var s=this.c +if(s===$){s!==$&&A.a_() +s=this.c=new A.bZq(this.a)}return s}} +A.bUj.prototype={} +A.bZq.prototype={} +A.aov.prototype={ +hO(a,b){var s,r,q=t.Lw +q=A.R(new A.O(B.vM,new A.b87(a),q),!0,q.h("aa.E")) +s=b.dl($.cn.I().ga_d(),t.D4) +if(s==null)s=B.cm +r=t.lD +return A.bEa(new A.b88(b),q,A.d9([s],r),!0,null,r)}} +A.b87.prototype={ +$1(a){var s=null +return new A.ig(a,A.b2(A.bc(this.a)===B.y?B.al4:B.ayw,s,s,s,s,s,s,s,s,s,s),A.E(A.w("campus."+a.b,s,s),s,s,s,s,s),t.G9)}, +$S:1467} +A.b88.prototype={ +$1(a){return this.aHm(a)}, +aHm(a){var s=0,r=A.p(t.H),q=this,p,o +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a.d8(0,$.cn.I().ga_d().gfd(),t.V6) +o=a.ga2(a) +p.x.$1(o) +s=2 +return A.i(A.qb(),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:1468} +A.apX.prototype={ +q(a){var s=null,r=A.d3E(this.c),q=this.e?s:A.G(a).CW +return new A.ba(45,45,new A.z4(A.bBY(s,s,new A.Hg("assets/course/"+r+".png",s,s)),s,s,s,45,45,q,s,B.bC,s,s,B.C,B.ce,!1,s,!1,s),s)}} +A.a9l.prototype={ +J(){return new A.aWn(B.f)}} +A.aWn.prototype={ +a8(){var s,r,q,p=this +p.an() +s=Date.now() +p.d!==$&&A.ck() +s=p.d=new A.am(s,!1) +r=p.a.d +q=r.a +if(q==null)s=A.bp(s)>=9?A.b7(s):A.b7(s)-1 +else s=q +p.e=s +s=r.b +p.f=s}, +q(a){return A.nk(A.iW(A.i1(A.a([new A.aA(new A.af(4,0,4,0),this.bpz(),null),new A.aA(new A.af(4,0,4,0),this.LK(),null)],t.Vu),B.a4,B.o,B.Z),0,5))}, +b1D(){var s,r,q,p=this.d +p===$&&A.b() +s=A.bp(p)>=9?A.b7(p):A.b7(p)-1 +r=A.a([],t.t) +q=this.a.c +if(q==null)q=A.b7(p) +for(;q<=s;++q)r.push(q) +return r}, +bpz(){var s,r=null,q=this.b1D(),p=A.X(q).h("bE<1>"),o=A.R(new A.bE(q,p),!0,p.h("aa.E")) +p=A.E(A.w("school.course.schoolYear",r,r),r,r,r,r,r) +q=this.e +q===$&&A.b() +s=A.X(o).h("O<1,o4>") +return A.cHH(A.R(new A.O(o,new A.ceF(),s),!0,s.h("aa.E")),q,p,new A.ceG(this),t.S)}, +LK(){var s,r,q,p=null +this.a.toString +s=A.E(A.w("school.course.semester",p,p),p,p,p,p,p) +r=this.f +r===$&&A.b() +q=t.X1 +return A.cHH(A.R(new A.O(B.aLs,new A.ceC(),q),!0,q.h("aa.E")),r,s,new A.ceD(this),t.mK)}} +A.ceG.prototype={ +$1(a){var s,r +if(a!=null){s=this.a.e +s===$&&A.b() +s=a!==s}else s=!1 +if(s){s=this.a +s.C(new A.ceE(s,a)) +r=s.a.f +s=s.f +s===$&&A.b() +r.$1(new A.h_(a,s))}}, +$S:1469} +A.ceE.prototype={ +$0(){return this.a.e=this.b}, +$S:0} +A.ceF.prototype={ +$1(a){return A.cHI(""+a+"\u2013"+(a+1),a,t.S)}, +$S:1470} +A.ceD.prototype={ +$1(a){var s,r +if(a!=null){s=this.a.f +s===$&&A.b() +s=a!==s}else s=!1 +if(s){s=this.a +s.C(new A.ceB(s,a)) +r=s.a.f +s=s.e +s===$&&A.b() +r.$1(new A.h_(s,a))}}, +$S:1471} +A.ceB.prototype={ +$0(){return this.a.f=this.b}, +$S:0} +A.ceC.prototype={ +$1(a){return A.cHI(A.w("school.semester."+a.b,null,null),a,t.mK)}, +$S:1472} +A.jR.prototype={ +k(a){var s=this +return"{department: "+s.a+", description: "+A.r(s.b)+", name: "+A.r(s.c)+", phone: "+s.d+"}"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.jR&&A.I(r)===A.I(b)&&r.a===b.a&&r.c==b.c&&r.d===b.d&&r.b==b.b +else s=!0 +return s}, +gv(a){var s=this +return A.ad(s.a,s.c,s.d,s.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)}} +A.a8R.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.jR(A.ax(n.i(0,0)),A.bw(n.i(0,1)),A.bw(n.i(0,2)),A.ax(n.i(0,3)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=4 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d)}, +gv(a){return B.d.gv(100)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a8R&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 100}} +A.acl.prototype={ +J(){$.G_.I() +return new A.akv(A.Pe($.blp.I(),["/interactHistory"],t.z),B.f)}} +A.akv.prototype={ +a8(){var s=this +s.d.a3(0,s.gaEr(s)) +s.an()}, +m(){var s=this +s.d.O(0,s.gaEr(s)) +s.ap()}, +k5(a){this.C(new A.cns())}, +q(a){var s=null,r=$.G_.I().gGO(),q=this.box(r==null?B.aNl:r),p=A.E(A.w("yellowPages.title",s,s),s,s,s,s,s) +return A.b3X(A.a([A.NH(B.E_,A.E(A.w("search",s,s),s,s,s,s,s),new A.cnq(a)),A.T8(!1,A.E(A.w("seeAll",s,s),s,s,s,s,s),B.i,s,s,s,new A.cnr(a),s,s)],t.p),s,s,p,q)}, +box(a){var s,r=J.ao(a) +if(r.gad(a))return B.al +s=r.cK(a,0,Math.min(2,r.gA(a))) +r=A.X(s).h("O<1,Cs>") +return A.dd(A.R(new A.O(s,new A.cnp(a),r),!0,r.h("aa.E")),B.t,null,B.o,B.Z)}} +A.cns.prototype={ +$0(){}, +$S:0} +A.cnq.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.ctP(p.a,A.cNQ($.bzr.I()),"",t.Q4),$async$$0) +case 3:o=b +if(o==null){s=1 +break}A.bQ3($.G_.I(),o) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cnr.prototype={ +$0(){A.cc(this.a).fg("/yellow-pages",null,t.X)}, +$S:0} +A.cnp.prototype={ +$1(a){var s=null +return A.cGS(B.be,A.Ur(new A.a11(a,s,s),s,s,s),B.nc,new A.ca(A.r(a.c)+"+"+a.d,t.kK),new A.cno(this.a,a),B.aA)}, +$S:1473} +A.cno.prototype={ +$1(a){return this.aI4(a)}, +aI4(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(A.yY(),$async$$1) +case 2:p=q.a +J.xM(p,q.b) +$.G_.I().sGO(p) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:1474} +A.Nl.prototype={ +J(){return new A.b_7(B.f)}} +A.b_7.prototype={ +q(a){var s=null,r=A.E(A.w("yellowPages.title",s,s),s,s,s,s,s) +return A.bW(A.jb(A.a([A.du(s,A.b2(A.bc(a)===B.y?B.j_:B.kZ,s,s,s,s,s,s,s,s,s,s),s,new A.cnt(a),s)],t.p),s,!0,s,s,1,s,s,s,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,r,s,s,s,1,s),s,new A.LR($.bzr.I(),s),s,s,s,s)}} +A.cnt.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.ctP(p.a,A.cNQ($.bzr.I()),"",t.Q4),$async$$0) +case 3:o=b +if(o==null){s=1 +break}A.bQ3($.G_.I(),o) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bQ2.prototype={ +gGO(){var s=A.dU($.blp.I(),"/interactHistory",t.j) +return s==null?null:J.ie(s,t.Q4)}, +sGO(a){var s=J.ao(a),r=s.cK(a,0,Math.min(s.gA(a),2)) +a=r +A.ds($.blp.I(),"/interactHistory",a)}} +A.bQ4.prototype={ +$1(a){return a.l(0,this.a)}, +$S:140} +A.a11.prototype={ +q(a){var s,r,q=this,p=null,o=q.c,n=o.c,m=n==null,l=o.d,k=m?l:n+", "+l,j=l.length===8?"021"+l:l,i=A.G(a) +if(m||n.length===0||(n[0].charCodeAt(0)^48)<=9){m=A.bc(a)===B.y?B.DR:B.DY +m=A.eu(A.b2(m,A.G(a).ay.c,p,p,p,p,p,p,40,p,p),p,p,p)}else{m=n[0] +s=A.G(a).p3.r +m=A.nk(A.E(m,p,p,B.bf,s==null?p:s.bu(A.G(a).ay.c),B.at))}o=A.E(J.cw(o.b),p,p,B.bf,p,p) +s=A.E(k,p,p,B.bf,p,p) +r=j.length===0?p:A.i1(A.a([A.du(p,B.az3,p,new A.baI(q,a,j),p),A.du(p,B.ayL,p,new A.baJ(q,a),p)],t.WR),B.t,B.o,B.Z) +return A.aX(!1,p,p,p,!0,p,p,p,p,!1,p,new A.aoS(m,i.ay.b,20,p),p,p,p,p,p,p,q.d===!0,p,p,s,p,p,o,p,r,p)}} +A.baI.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.bQ3($.G_.I(),q.a.c) +s=2 +return A.i(A.tm(q.b,"tel:"+q.c),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.baJ.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a.c +A.bQ3($.G_.I(),o) +s=3 +return A.i(A.p4(new A.mV(o.d)),$async$$0) +case 3:o=p.b +if(o.e==null){s=1 +break}A.qK(o,null,A.E("Phone number is copied",null,null,null,null,null),B.aW) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.LR.prototype={ +J(){return new A.aVU(B.f)}} +A.aVU.prototype={ +a8(){this.an() +this.aG3()}, +m(){this.ap()}, +b1(a){this.bc(a) +if(!A.ax1(this.a.c,a.c))this.aG3()}, +aG3(){this.d=A.u_(this.a.c,new A.cdQ(),t.Q4,t.N)}, +q(a){var s=null,r=$.G_.I().gGO(),q=this.d +q===$&&A.b() +q=A.cxy(q.gep(q),new A.cdP(this,r),t.Lz,t.XK) +return A.cD(B.k,s,B.m,s,s,s,!1,s,B.v,A.R(q,!0,q.$ti.h("B.E")))}} +A.cdQ.prototype={ +$1(a){return a.a}, +$S:1476} +A.cdP.prototype={ +$2(a,b){this.a.a.toString +return new A.rs(!0,J.bn(b.b),new A.cdN(b),new A.cdO(b,this.b),null)}, +$S:1477} +A.cdN.prototype={ +$4(a,b,c,d){var s=null +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,c,!1,s,s,s,s,s,A.E(this.a.a,s,s,s,s,s),A.G(a).p3.w,d,s)}, +$C:"$4", +$R:4, +$S:292} +A.cdO.prototype={ +$2(a,b){var s=null,r=J.aS(this.a.b,b),q=this.b +return A.jG(new A.a11(r,q==null?s:q.ef(q,new A.cdM(r)),s),s,s,s)}, +$S:43} +A.cdM.prototype={ +$1(a){return a.l(0,this.a)}, +$S:140} +A.bPY.prototype={ +a7C(a){var s=null +return A.a([A.du(s,A.b2(A.bc(a)===B.y?B.f4:B.fB,s,s,s,s,s,s,s,s,s,s),s,new A.bPZ(this),s)],t.p)}, +a7K(a){return null}, +a7Q(a){var s +if(this.x.a.a.length===0)return B.al +s=J.vk(this.as,new A.bQ_(this)) +return new A.LR(A.R(s,!0,s.$ti.h("B.E")),null)}, +a0n(a){var s,r,q=this +q.aQE(a) +s=J.vk(q.as,new A.bQ1(q)) +r=A.R(s,!0,s.$ti.h("B.E")) +if(r.length===1)q.LQ(0,a,r[0])}, +a7S(a){var s +if(this.x.a.a.length===0)return B.al +s=J.vk(this.as,new A.bQ0(this)) +return new A.LR(A.R(s,!0,s.$ti.h("B.E")),null)}, +acQ(a,b){var s,r,q +a=a.toLowerCase() +s=b.c +r=s==null?null:s.toLowerCase() +s=b.b +q=s==null?null:s.toLowerCase() +if(!B.c.p(b.a.toLowerCase(),a))if(!(r!=null&&B.c.p(r,a)))s=q!=null&&B.c.p(q,a)||B.c.p(b.d,a) +else s=!0 +else s=!0 +return s}} +A.bPZ.prototype={ +$0(){this.a.slK(0,"") +return""}, +$S:0} +A.bQ_.prototype={ +$1(a){var s=this.a +return s.acQ(s.x.a.a,a)}, +$S:140} +A.bQ1.prototype={ +$1(a){var s=this.a +return s.acQ(s.x.a.a,a)}, +$S:140} +A.bQ0.prototype={ +$1(a){var s=this.a +return s.acQ(s.x.a.a,a)}, +$S:140} +A.oN.prototype={ +H(){return"YwbApplicationType."+this.b}} +A.acn.prototype={ +k(a){var s=this +return A.hj(A.a1(["workId",s.a,"functionId",s.b,"name",s.c,"note",s.d,"startTs",s.e,"track",s.f],t.N,t.K))}} +A.Nm.prototype={ +gbzd(){var s=this.a +if(s===1)return!0 +if(s===2)return!1 +if(s===8)return!0 +return!0}, +k(a){var s=this +return A.hj(A.a1(["actionType",s.a,"action",s.b,"senderId",s.c,"senderName",s.d,"receiverId",s.e,"receiverName",s.f,"message",s.r,"timestamp",s.w,"step",s.x],t.N,t.K))}} +A.aco.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.acn(A.bZ(n.i(0,0)),A.ax(n.i(0,1)),A.ax(n.i(0,2)),A.ax(n.i(0,3)),t.d.a(n.i(0,4)),J.ie(t.j.a(n.i(0,5)),t.sn))}, +eU(a,b,c){var s,r,q,p=null +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=6 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f)}, +gv(a){return B.d.gv(73)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.aco&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 73}} +A.acp.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.Nm(A.bZ(n.i(0,0)),A.ax(n.i(0,1)),A.ax(n.i(0,2)),A.ax(n.i(0,3)),A.ax(n.i(0,4)),A.ax(n.i(0,5)),A.ax(n.i(0,6)),t.d.a(n.i(0,7)),A.ax(n.i(0,8)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(9,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=9 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f) +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=6 +b.aG(0,c.r) +A.a5(7,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=7 +b.aG(0,c.w) +A.a5(8,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=8 +b.aG(0,c.x)}, +gv(a){return B.d.gv(74)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.acp&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 74}} +A.WK.prototype={ +k(a){var s=this +return A.hj(A.a1(["id",s.a,"name",s.b,"summary",s.c,"status",s.d,"count",s.e,"iconName",s.f],t.N,t.K))}} +A.act.prototype={ +k(a){return A.hj(A.a1(["id",this.a,"sections",this.b],t.N,t.K))}} +A.acr.prototype={ +k(a){var s=this +return A.hj(A.a1(["type",s.b,"section",s.a,"createTime",s.c,"content",s.d],t.N,t.K))}} +A.acq.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.WK(A.ax(n.i(0,0)),A.ax(n.i(0,1)),A.ax(n.i(0,2)),A.bZ(n.i(0,3)),A.bZ(n.i(0,4)),A.ax(n.i(0,5)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(6,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=6 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d) +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=4 +b.aG(0,c.e) +A.a5(5,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=5 +b.aG(0,c.f)}, +gv(a){return B.d.gv(72)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.acq&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 72}} +A.acu.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}return new A.act(A.ax(n.i(0,0)),J.ie(t.j.a(n.i(0,1)),t.bl))}, +eU(a,b,c){var s,r,q +A.a5(2,null) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=2 +A.a5(0,null) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b)}, +gv(a){return B.d.gv(70)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.acu&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 70}} +A.acs.prototype={ +dL(a,b){var s,r,q,p,o="Not enough bytes available.",n=b.f,m=n+1 +if(m>b.e)A.C(A.b8(o)) +s=b.a +b.f=m +r=s[n] +n=A.N(t.S,t.z) +for(q=0;qb.e)A.C(A.b8(o)) +b.f=p +n.n(0,s[m],b.fn(0))}m=A.ax(n.i(0,1)) +return new A.acr(A.ax(n.i(0,0)),m,t.d.a(n.i(0,2)),A.ax(n.i(0,3)))}, +eU(a,b,c){var s,r,q,p=null +A.a5(4,p) +if(b.b.length-b.d<1)b.a_(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=4 +A.a5(0,p) +if(s.length-q<1)b.a_(1) +b.b[b.d++]=0 +b.aG(0,c.a) +A.a5(1,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +b.aG(0,c.b) +A.a5(2,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=2 +b.aG(0,c.c) +A.a5(3,p) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=3 +b.aG(0,c.d)}, +gv(a){return B.d.gv(71)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.acs&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 71}} +A.acm.prototype={ +J(){return new A.b_8(B.f)}} +A.b_8.prototype={ +q(a){A.cNR()}} +A.No.prototype={ +J(){return new A.b_a(B.f)}} +A.b_a.prototype={ +gv6(){var s,r,q=this.d +if(q===$){s=t.rT +s=A.R(new A.O(B.vi,new A.cny(),s),!0,s.h("aa.E")) +r=$.ae() +this.d!==$&&A.a_() +q=this.d=new A.bm(s,r,t.AI)}return q}, +m(){var s=this.gv6() +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s=null,r=A.hr(this.gv6(),new A.cnC(),t.TP),q=A.pk(B.vi,new A.cnD(this),t.xg,t.TO) +return A.bW(s,s,A.a1G(A.wr(A.VF(A.R(q,!0,q.$ti.h("B.E")),s),!0,new A.cnE()),3),new A.rP(r,B.he,s),s,s,s)}} +A.cny.prototype={ +$1(a){return!1}, +$S:1478} +A.cnC.prototype={ +$2(a,b){return!J.cuX(b,new A.cnB())?B.al:B.o0}, +$S:253} +A.cnB.prototype={ +$1(a){return a}, +$S:254} +A.cnE.prototype={ +$2(a,b){var s=null,r=a.a0(t.t7).f,q=A.E(A.w("ywb.mine.title",s,s),s,s,s,s,s),p=t.Uw +return A.a([new A.pv(r.d,A.ju(s,!0,s,A.VD(s,!0,A.R(new A.O(B.vi,new A.cnz(),p),!0,p.h("aa.E"))),!0,b,!1,q,s),s)],t.p)}, +$S:57} +A.cnz.prototype={ +$1(a){var s=null +return A.wN(A.E(A.w("ywb.type."+a.b,s,s),s,s,s,s,s))}, +$S:1479} +A.cnD.prototype={ +$2(a,b){return new A.G0(b,new A.cnA(this.a,a),null)}, +$S:1480} +A.cnA.prototype={ +$1(a){var s=this.a,r=A.R(s.gv6().a,!0,t.y) +r[this.b]=a +s.gv6().sj(0,r)}, +$S:4} +A.G0.prototype={ +J(){return new A.b_9(null,B.f)}, +zG(a){return this.d.$1(a)}} +A.b_9.prototype={ +gmv(){return!0}, +a8(){this.aUj() +A.jk(B.w,null,t.z).bf(new A.cnx(this),t.P)}, +q(a){var s,r,q,p=null +this.o5(a) +s=this.e +if(s===$)s=this.e=A.cNR().bIJ((void 1).c) +r=A.a([A.cz4(a.a0(t.t7).f.d)],t.p) +q=J.ao(s) +if(q.gad(s))r.push(A.oA(A.kj(A.w("ywb.mine.noApplicationsTip",p,p),B.dp,p,p,p))) +else r.push(A.hs(new A.cnu(s),q.gA(s))) +return A.cD(B.k,p,B.m,p,p,p,!1,p,B.v,r)}, +iA(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$iA=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(n.d){s=1 +break}if(n.c==null){s=1 +break}n.C(new A.cnv(n)) +n.a.zG(!0) +m=n.a.c +p=4 +s=7 +return A.i(A.dh4().bIK(m),$async$iA) +case 7:l=c +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.ag(h) +j=A.aD(h) +A.j5(k,j) +if(n.c==null){s=1 +break}n.C(new A.cnw(n)) +n.a.zG(!1) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$iA,r)}} +A.cnx.prototype={ +$1(a){var s=0,r=A.p(t.P),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.iA(0),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:77} +A.cnu.prototype={ +$2(a,b){return new A.WJ(J.aS(this.a,b),null)}, +$S:1481} +A.cnv.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.cnw.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.alG.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.Np.prototype={ +J(){return new A.b_b(new A.fh(0,!0,null,null,null,A.a([],t.ZP),$.ae()),B.f)}} +A.b_b.prototype={ +a8(){this.an() +this.k5(0)}, +k5(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$k5=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.cnI(n)) +p=4 +s=7 +return A.i(A.cNS().aJk(void 1),$async$k5) +case 7:m=c +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.cnJ(n)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$k5,r)}, +m(){this.e.m() +this.ap()}, +q(a){var s,r,q,p=this,o=null,n=p.d +if(n===$)n=p.d=A.cNT().aJk(void 1) +s=p.e +r=A.a([A.i4(o,o,o,o,!1,A.E(p.a.c.b,o,o,o,o,o))],t.p) +q=n.b +r.push(A.ddF(new A.cnF(n),q.gA(q),new A.cnG())) +r=A.UN(A.cD(B.k,s,B.m,o,o,o,!1,o,B.v,r)) +s=A.cEY(s,A.b2(A.bc(a)===B.y?B.iY:B.nJ,o,o,o,o,o,o,o,o,o,o),A.E(A.w("ywb.details.apply",o,o),o,o,o,o,o),new A.cnH(p)) +return A.bW(o,o,r,p.f?B.de:o,s,o,o)}} +A.cnI.prototype={ +$0(){this.a.f=!0}, +$S:0} +A.cnJ.prototype={ +$0(){this.a.f=!1}, +$S:0} +A.cnF.prototype={ +$2(a,b){return new A.WI(this.a.b.i(0,b),null)}, +$S:1482} +A.cnG.prototype={ +$2(a,b){return B.bp}, +$S:449} +A.cnH.prototype={ +$0(){var s=this.a.c +s.toString +A.tm(s,"http://ywb.sit.edu.cn/v1/#/") +return null}, +$S:0} +A.Nq.prototype={ +J(){var s=null +return new A.b_c(new A.aR(s,t.A),new A.fh(0,!0,s,s,s,A.a([],t.ZP),$.ae()),B.f)}} +A.b_c.prototype={ +a8(){var s,r=this +r.an() +s=r.f +r.d=$.cuN().avC(r.e,s,s.gaBC(),t.i1)}, +m(){var s=this.d +if(s!=null)s.$0() +this.f.m() +this.ap()}, +c5(){this.dH() +this.k5(0)}, +k5(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$k5=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(n.c==null){s=1 +break}n.C(new A.cnL(n)) +p=4 +s=7 +return A.i(A.cNS().bIX(),$async$k5) +case 7:m=c +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.ag(i) +k=A.aD(i) +A.j5(l,k) +if(n.c==null){s=1 +break}n.C(new A.cnM(n)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$k5,r)}, +q(a){var s=this,r=null,q=s.r,p=A.E(A.w("ywb.title",r,r),r,r,r,r,r),o=A.w("ywb.info",r,r),n=t.p +o=A.a([A.FH(new A.aA(new A.af(8,8,8,8),A.b2(A.bc(a)===B.y?B.kX:B.nK,r,r,r,r,r,r,r,r,r,r),r),r,r,o,r,r,r,B.qo,r)],n) +p=A.a([A.ju(o,!0,r,s.w?B.de:r,!0,!1,!1,p,r)],n) +if(q!=null){o=J.ao(q) +if(o.gad(q))p.push(A.oA(A.kj(A.w("ywb.noServicesTip",r,r),B.dp,r,r,r))) +else p.push(A.hs(new A.cnK(q),o.gA(q)))}return A.bW(r,r,A.cD(B.k,s.f,B.m,s.e,r,r,!1,r,B.v,p),r,r,r,r)}} +A.cnL.prototype={ +$0(){this.a.r=A.cNT().gbJ0()}, +$S:0} +A.cnM.prototype={ +$0(){this.a.w=!1}, +$S:0} +A.cnK.prototype={ +$2(a,b){return new A.WL(J.aS(this.a,b),b<3,null)}, +$S:1484} +A.WJ.prototype={ +q(a){var s,r=null,q=this.c,p=A.E(q.c+" #"+q.a,r,r,r,r,r),o=a.a0(t.L).r.a +o===$&&A.b() +o=$.h2().i(0,o) +o=A.E((o==null?$.es():o).gPq().d4(q.e),r,r,r,r,r) +q=q.f +s=A.z(q).h("O") +return A.H9(A.R(new A.O(q,new A.bQ6(),s),!0,s.h("aa.E")),!1,r,r,r,o,p,r,r)}} +A.bQ6.prototype={ +$1(a){return new A.Nn(a,null)}, +$S:1485} +A.Nn.prototype={ +q(a){var s,r,q,p,o=null,n=this.c +if(n.gbzd())s=A.b2(A.bc(a)===B.y?B.cd:B.f5,B.dZ,o,o,o,o,o,o,o,o,o) +else s=A.b2(A.bc(a)===B.y?B.uw:B.ayE,B.d8,o,o,o,o,o,o,o,o,o) +r=A.E(n.x,o,o,o,o,o) +q=a.a0(t.L).r.a +q===$&&A.b() +q=$.h2().i(0,q) +q=A.a([A.E((q==null?$.es():q).gx5().d4(n.w),o,o,o,o,o)],t.LT) +p=n.r +if(p.length!==0)q.push(A.E(p,o,o,o,o,o)) +q.push(A.E(n.b,o,o,o,o,o)) +return A.aX(!1,o,o,o,!0,o,o,o,o,!0,o,s,o,o,o,o,o,o,!1,o,o,A.dd(q,B.a4,o,B.o,B.u),o,o,r,o,A.E(n.d,o,o,o,o,o),o)}} +A.WI.prototype={ +q(a){var s,r=null,q=this.c,p=q.b +$label0$0:{if("html"===p){s=A.bC8(A.cj(q.d,"../app/files/","https://xgfy.sit.edu.cn/app/files/"),B.rx) +break $label0$0}if("json"===p){s=this.boD(q.d) +break $label0$0}s=B.al +break $label0$0}return new A.aA(B.aio,A.cS(A.a([A.bv(q.a,r,r,r,r,r,r,r,r,A.G(a).p3.f,r,r,r,r,r),s],t.p),B.a4,r,B.o,B.u,r,r,B.x),r)}, +boD(a){var s=null,r=B.aO.pf(0,a,s),q=A.a([],t.p) +J.iK(r,new A.bQ5(q)) +return A.cS(q,B.a4,s,B.o,B.u,s,s,B.x)}} +A.bQ5.prototype={ +$2(a,b){var s=null +return this.a.push(A.bv(A.r(a)+": "+A.r(b),s,s,s,s,s,s,s,s,s,s,s,s,s,s))}, +$S:88} +A.WL.prototype={ +q(a){var s,r,q,p,o=null,n=this.c,m=new A.aU3() +m.ahZ(B.c.gv(n.a)) +s=B.aHK[m.px(9)] +r=A.G(a).p3.z +m=n.e +q=this.d?A.i1(A.a([A.bv(B.d.k(m),o,o,o,o,o,o,o,o,r,o,o,o,o,o),B.azp],t.ix),B.t,B.o,B.Z):A.bv(B.d.k(m),o,o,o,o,o,o,o,o,r,o,o,o,o,o) +m=$.cWq() +p=m.i(0,n.f) +if(p==null){m=m.i(0,"icon-Customermanagement-fill") +m.toString}else m=p +m=A.nk(A.b2(m,s,o,o,o,o,o,o,35,o,o)) +p=A.bv(n.b,o,o,o,B.bf,o,o,o,o,o,o,o,o,o,o) +return A.aX(!1,o,o,o,!0,o,o,o,o,!1,o,new A.ba(40,40,m,o),o,o,o,o,o,new A.bQ7(this,a),!1,o,o,A.bv(n.c,o,o,o,B.bf,o,o,o,o,o,o,o,o,o,o),o,o,p,o,q,o)}} +A.bQ7.prototype={ +$0(){A.cc(this.b).fg("/ywb/details",this.a.c,t.X)}, +$S:0} +A.b5x.prototype={} +A.b9m.prototype={} +A.boP.prototype={} +A.bx6.prototype={ +HH(a,b,c,d){return this.bG2(0,b,c,d)}, +bG2(a,b,c,d){var s=0,r=A.p(t.k8),q,p=this,o,n,m +var $async$HH=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:m={} +m.a=d +d.f=u.hh +m=new A.bx7(m,p,b,null,c,null,null) +s=3 +return A.i(m.$0(),$async$HH) +case 3:o=f +n=o.a +s=typeof n=="string"&&B.c.p(n,"\u6b63\u5728\u767b\u5f55")?4:5 +break +case 4:s=6 +return A.i(p.V9(),$async$HH) +case 6:s=7 +return A.i(m.$0(),$async$HH) +case 7:q=f +s=1 +break +case 5:q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$HH,r)}, +V9(){var s=0,r=A.p(t.y),q,p=this +var $async$V9=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(p.a.D5(0,"https://authserver.sit.edu.cn/authserver/login?service=http%3A%2F%2Fgms.sit.edu.cn%2Fepstar%2Fweb%2Fswms%2Fmainframe%2Fhome%2Findex.jsp",A.mk(null,null,null,null,null,null,"GET",null,null,null,null,null,null,null,null,null)),$async$V9) +case 3:q=b.c===302 +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$V9,r)}} +A.bx7.prototype={ +$0(){var s=0,r=A.p(t.k8),q,p=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(p.b.a.HI(0,p.c,p.e,p.r,p.f,p.a.a,p.d),$async$$0) +case 3:q=b +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:135} +A.a57.prototype={$ibP:1} +A.aAi.prototype={ +k(a){return"OaCredentialsRequiredException: "+this.a}, +$ibP:1} +A.aFg.prototype={ +H4(a){return this.bAr(a)}, +bAr(a){var s=0,r=A.p(t.k8),q,p=this +var $async$H4=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i($.cY_().uW(new A.bH_(p,a),t.k8),$async$H4) +case 3:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$H4,r)}, +B9(a,b,c,d){return this.bfT(a,b,c,d)}, +bfT(a,b,c,d){var s=0,r=A.p(t.k8),q,p=this,o,n,m +var $async$B9=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:m={} +m.a=c +if(c==null)m.a=A.mk(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +m=new A.bGX(m,p,a,d,b,null,null) +s=3 +return A.i(m.$0(),$async$B9) +case 3:o=f +s=B.c.p(o.gOw().k(0),u.n)?4:6 +break +case 4:$.e2.I() +n=A.dU($.iy.I(),"/oa/credentials",t.W8) +if(n==null)throw A.d(new A.aAi(a)) +s=7 +return A.i(p.b.Mn(0,A.di(a,0,null),!0),$async$B9) +case 7:s=8 +return A.i(p.H4(n),$async$B9) +case 8:s=9 +return A.i(m.$0(),$async$B9) +case 9:q=f +s=1 +break +s=5 +break +case 6:q=o +s=1 +break +case 5:case 1:return A.n(q,r)}}) +return A.o($async$B9,r)}, +TK(a){var s=$.vh(),r=$.an.U$.z.i(0,s) +if(r!=null&&r.e!=null){s=A.Lj(r,!0) +s=$.cCi().gfd().dL(0,s) +J.eh(s).E7(s,a)}}, +tF(a,b){return this.b95(a,b)}, +b95(b2,b3){var s=0,r=A.p(t.k8),q,p=2,o,n=this,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 +var $async$tF=A.l(function(b4,b5){if(b4===1){o=b5 +s=p}while(true)switch(s){case 0:b0=b2.a +A.fk().$1(b0+" logging in") +e=n.a.z5$ +e===$&&A.b() +e=e.b +e===$&&A.b() +A.fk().$1("UA: "+A.r(e.i(0,"User-Agent"))) +s=3 +return A.i(n.b.Mn(0,$.cCN(),!0),$async$tF) +case 3:m=null +p=5 +s=8 +return A.i(n.RK(),$async$tF) +case 8:l=b5 +k="" +s=11 +return A.i(n.XB(b0),$async$tF) +case 11:s=b5?9:10 +break +case 9:s=12 +return A.i(n.PB(),$async$tF) +case 12:j=b5 +s=13 +return A.i(b3.$1(j),$async$tF) +case 13:i=b5 +if(i!=null){k=i +A.fk().$1("Captcha entered is "+A.r(k))}else throw A.d(B.a4Z) +case 10:d=A.b4('b.e)A.C(A.b8("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.i6 +case 1:return B.h4 +default:return B.i6}}, +eU(a,b,c){switch(c.a){case 0:A.a5(0,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=0 +break +case 1:A.a5(1,null) +if(b.b.length-b.d<1)b.a_(1) +b.b[b.d++]=1 +break}}, +gv(a){return B.d.gv(7)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a7l&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 7}} +A.bss.prototype={} +A.GZ.prototype={ +J(){return new A.aKa(B.f)}} +A.aKa.prototype={ +q(a){var s=null,r=A.uu(s,!1,!0,!1,A.E(A.w("settings.about.title",s,s),s,s,s,s,s)),q=t.p,p=A.a([B.bw2],q) +if($.eN.I().gnS(0))p.push(A.el(s,$.aCl.I().f,"Installer Store",s)) +p.push(A.el(s,"\u6caaICP\u590718042337\u53f7-3A",A.w("settings.about.icpLicense",s,s),A.du(s,B.j2,s,new A.bQu(a),s))) +p.push(A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("settings.about.termsOfUse",s,s),s,s,s,s,s),s,A.du(s,B.j2,s,new A.bQv(a),s),s)) +p.push(A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("settings.about.privacyPolicy",s,s),s,s,s,s,s),s,A.du(s,B.j2,s,new A.bQw(a),s),s)) +p.push(new A.amD(A.w("appName",s,s),$.aCl.I().b.k(0),"Copyright\xa9\ufe0f2023 Liplum Dev. All Rights Reserved.",s)) +return A.bW(s,s,A.cD(B.k,s,B.m,s,B.ck,s,!1,s,B.v,A.a([r,A.eI(p)],q)),s,s,s,s)}} +A.bQu.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.tm(q.a,"https://beian.miit.gov.cn/"),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bQv.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.tm(q.a,"https://github.com/liplum-dev/mimir/blob/master/Terms%20of%20use.md"),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bQw.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.tm(q.a,"https://github.com/liplum-dev/mimir/blob/master/Privacy%20Policy.md"),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.abU.prototype={ +J(){return new A.aZw(B.f)}} +A.aZw.prototype={ +q(a){var s,r,q=null,p=this.gc6().dl($.eN.I().gx6(),t.y),o=$.aCl.I(),n=o.a +$label0$0:{if(B.a1c===n||B.a1e===n){s=B.az7 +break $label0$0}if(B.a19===n){s=B.azh +break $label0$0}if(B.a1a===n){s=B.ayJ +break $label0$0}if(B.a1b===n){s=B.ayQ +break $label0$0}if(B.zx===n){s=A.b2(A.dlZ(),q,q,q,q,q,q,q,q,q,q) +break $label0$0}if(B.a1d===n){s=B.azy +break $label0$0}s=q}r=A.E(A.w("settings.about.version",q,q),q,q,q,q,q) +o=A.E(n.c+" "+o.b.k(0),q,q,q,q,q) +return A.aX(!1,q,q,q,!0,q,q,q,q,!1,q,s,q,q,q,q,q,p&&this.w<=10?q:new A.cmP(this,a),!1,q,q,o,q,q,r,q,q,q)}} +A.cmP.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +if(o.gc6().d8(0,$.eN.I().gx6(),t.y)){s=1 +break}s=++o.w>=10?3:4 +break +case 3:o.w=0 +A.qK(p.b,null,A.E(A.w("settings.dev.activateTip",null,null),null,null,null,null,null),B.aW) +o=o.gc6().d8(0,$.eN.I().gx6().gfd(),t.K9).y.$1(!0) +s=5 +return A.i(t.uz.b(o)?o:A.dO(o,t.H),$async$$0) +case 5:s=6 +return A.i(A.qb(),$async$$0) +case 6:case 4:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.I_.prototype={ +J(){return new A.aMA(B.f)}} +A.aMA.prototype={ +q(a){var s=null +return A.bW(s,s,A.cD(B.k,s,B.m,s,B.ck,s,!1,s,B.v,A.a([A.uu(s,!1,!0,!1,A.E(A.w("credentials.oa.oaAccount",s,s),s,s,s,s,s)),this.bnS()],t.p)),s,s,s,s)}, +bnS(){var s=this.gc6().dl($.e2.I().gt9(),t.ue),r=A.a([],t.Hm) +if(s!=null){r.push(new A.bVF(this,s)) +r.push(new A.bVG()) +r.push(new A.bVH(this,s)) +r.push(new A.bVI(s))}return A.Fm(new A.pu(new A.bVJ(r),r.length,!0,!0,!0,0,A.Ou(),null))}, +bnF(a){var s,r,q=null,p=A.E(A.w("credentials.oa.oaAccount",q,q),q,q,q,q,q),o=A.E(a.a,q,q,q,q,q),n=this.c +n.toString +s=A.b2(A.bc(n)===B.y?B.iZ:B.nH,q,q,q,q,q,q,q,q,q,q) +r=this.c +r.toString +return A.aX(!1,q,q,q,!0,q,q,q,q,!1,q,s,q,q,q,q,q,new A.bVE(this,a),!1,q,q,o,q,q,p,q,A.b2(A.bc(r)===B.y?B.dO:B.nI,q,q,q,q,q,q,q,q,q,q),q)}, +boW(a){var s,r=this,q=null,p=A.E(A.w("credentials.oa.savedOaPwd",q,q),q,q,q,q,q),o=A.bv(!r.w?A.w("credentials.oa.savedOaPwdDesc",q,q):a.b,q,q,q,q,q,q,q,q,q,q,q,q,q,q),n=r.c +n.toString +s=A.du(q,A.b2(A.bc(n)===B.y?B.d1:B.d2,q,q,q,q,q,q,q,q,q,q),q,new A.bVM(r,a),q) +n=r.w?B.azl:B.ayM +return A.xS(B.C,A.aX(!1,q,q,q,!0,q,q,q,q,!1,q,B.azi,q,q,q,q,q,q,!1,q,q,o,q,q,p,q,A.nl(A.a([s,A.du(q,n,q,new A.bVN(r),q)],t.WR),B.bV,0,0),q),B.H,B.b1,q)}} +A.bVF.prototype={ +$1(a){return this.a.bnF(this.b)}, +$S:8} +A.bVG.prototype={ +$1(a){return B.bp}, +$S:1488} +A.bVH.prototype={ +$1(a){return this.a.boW(this.b)}, +$S:8} +A.bVI.prototype={ +$1(a){return new A.MA(this.a,null)}, +$S:1489} +A.bVJ.prototype={ +$2(a,b){return this.a[b].$1(a)}, +$S:43} +A.bVE.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.c +p.toString +A.qK(p,null,A.E(A.w("copyTip",A.a([A.w("credentials.oa.oaAccount",null,null)],t.s),null),null,null,null,null,null),B.aW) +s=2 +return A.i(A.p4(new A.mV(q.b.a)),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bVM.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:l=p.a +k=l.c +k.toString +o=p.b +n=o.b +s=3 +return A.i(A.vQ(k,A.w("credentials.oa.savedOaPwd",null,null),n),$async$$0) +case 3:m=b +if(m!==n){if(l.c==null){s=1 +break}$.e2.I() +k=new A.aK4(o).$1$password(m) +A.ds($.iy.I(),"/oa/credentials",k) +l.C(new A.bVL())}case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bVL.prototype={ +$0(){}, +$S:0} +A.bVN.prototype={ +$0(){var s=this.a +s.C(new A.bVK(s))}, +$S:0} +A.bVK.prototype={ +$0(){var s=this.a +s.w=!s.w}, +$S:0} +A.ajp.prototype={ +H(){return"_TestLoginState."+this.b}} +A.MA.prototype={ +J(){return new A.aXW(B.a00,B.f)}} +A.aXW.prototype={ +q(a){var s,r,q=this,p=null,o=q.d,n=A.E(A.w("settings.credentials.testLoginOa.title",p,p),p,p,p,p,p),m=A.E(A.w("settings.credentials.testLoginOa.desc",p,p),p,p,p,p,p),l=q.d +$label0$0:{if(B.r4===l){s=B.iI +break $label0$0}if(B.a01===l){s=A.b2(A.bc(a)===B.y?B.cd:B.f5,B.dZ,p,p,p,p,p,p,p,p,p) +break $label0$0}s=p +break $label0$0}r=q.d===B.r4?p:new A.chZ(q,a) +return A.aX(!1,p,p,p,o!==B.r4,p,p,p,p,!1,p,B.j1,p,p,p,p,p,r,!1,p,p,m,p,p,n,p,new A.aA(B.cq,s,p),p)}} +A.chZ.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$$0=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i=n.a +i.C(new A.chW(i)) +p=4 +s=7 +return A.i($.DI.I().Mo(),$async$$0) +case 7:s=8 +return A.i($.DI.I().H4(i.a.c),$async$$0) +case 8:if(i.c==null){s=1 +break}i.C(new A.chX(i)) +p=2 +s=6 +break +case 4:p=3 +h=o +j=A.ag(h) +s=t.VI.b(j)?9:11 +break +case 9:m=j +l=A.aD(h) +i.C(new A.chY(i)) +if(i.c==null){s=1 +break}s=12 +return A.i(A.BB(n.b,m,l),$async$$0) +case 12:s=10 +break +case 11:throw h +case 10:s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.chW.prototype={ +$0(){return this.a.d=B.r4}, +$S:0} +A.chX.prototype={ +$0(){return this.a.d=B.a01}, +$S:0} +A.chY.prototype={ +$0(){return this.a.d=B.a00}, +$S:0} +A.Ig.prototype={ +J(){return new A.aNv(B.f)}} +A.aNv.prototype={ +q(a){var s=this,r=null,q=s.gc6().dl($.e2.I().gt9(),t.ue),p=s.gc6().dl($.eN.I().gPs(),t.y),o=A.uu(r,!1,!0,!1,A.E(A.w("settings.dev.title",r,r),r,r,r,r,r)),n=t.p,m=A.a([s.boh(),s.boe(),new A.rM(A.E(A.w("settings.dev.localStorage.title",r,r),r,r,r,r,r),A.E(A.w("settings.dev.localStorage.desc",r,r),r,r,r,r,r),B.ayY,"/settings/developer/local-storage",r),s.bp3(),B.ah_],n) +if(q!=null)m.push(new A.aax(q,r)) +if(p&&!J.q(q,B.tv))m.push(A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,B.E8,r,r,r,r,r,new A.bXE(a),!1,r,r,r,r,r,A.E("Login demo account",r,r,r,r,r),r,B.j1,r)) +m.push(B.a18) +m.push(B.ah0) +return A.bW(r,r,A.cD(B.k,r,B.m,r,B.ck,r,!1,r,B.v,A.a([o,A.Fm(A.Mk(m,!0,!0,!0))],n)),r,r,r,r)}, +boh(){var s=null,r=this.gc6().dl($.eN.I().gx6(),t.y) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.Ec,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("settings.dev.devMode.title",s,s),s,s,s,s,s),s,A.jy(new A.bXC(this),r),s)}, +boe(){var s=null,r=this.gc6().dl($.eN.I().gPs(),t.y) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.E8,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("settings.dev.demoMode.title",s,s),s,s,s,s,s),s,A.jy(new A.bXB(this),r),s)}, +bp3(){var s=null,r=A.E(A.w("settings.dev.reload.title",s,s),s,s,s,s,s),q=A.E(A.w("settings.dev.reload.desc",s,s),s,s,s,s,s),p=this.c +p.toString +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,A.b2(A.bc(p)===B.y?B.fz:B.fA,s,s,s,s,s,s,s,s,s,s),s,s,s,s,s,new A.bXD(this),!1,s,s,q,s,s,r,s,s,s)}} +A.bXE.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=$.cn.I().a +if(A.dU(o,"/settings/lastSignature",t.N)==null)A.ds(o,"/settings/lastSignature","Liplum") +$.e2.I() +A.ds($.iy.I(),"/oa/credentials",B.tv) +$.e2.I() +A.ds($.iy.I(),"/oa/loginStatus",B.jo) +$.e2.I() +o=Date.now() +A.ds($.iy.I(),"/oa/lastAuthTime",new A.am(o,!1)) +$.e2.I() +A.ds($.iy.I(),"/oa/userType",B.e0) +s=3 +return A.i(A.Jz(),$async$$0) +case 3:o=p.a +if(o.e==null){s=1 +break}A.cc(o).qV(0,"/",null) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bXC.prototype={ +$1(a){this.a.gc6().d8(0,$.eN.I().gx6().gfd(),t.K9).y.$1(a)}, +$S:4} +A.bXB.prototype={ +$1(a){return this.aHJ(a)}, +aHJ(a){var s=0,r=A.p(t.H),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.a.gc6().d8(0,$.eN.I().gPs().gfd(),t.K9).y.$1(a) +s=2 +return A.i(A.Jz(),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:91} +A.bXD.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.a4n(),$async$$0) +case 3:s=4 +return A.i(A.Jz(),$async$$0) +case 4:if($.an==null)A.FV() +$.an.rV() +o=p.a.c +if(o==null){s=1 +break}A.cN(o,!1).fD() +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.ana.prototype={ +hO(a,b){var s=null,r=b.dl($.cCh(),t.q9),q=A.E("App links",s,s,s,s,s),p=J.dP(r,new A.b44(a),t.hT) +return A.H9(A.R(p,!0,A.z(p).h("aa.E")),!1,B.uN,s,s,s,q,s,s)}} +A.b44.prototype={ +$1(a){var s,r=null,q=this.a.a0(t.L).r.a +q===$&&A.b() +q=$.h2().i(0,q) +q=A.E((q==null?$.es():q).gIe().d4(a.a),r,r,r,r,r) +s=J.cw(a.b) +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,r,!1,r,r,A.E(A.pM(s,0,s.length,B.ai,!1),r,r,r,r,r),r,r,q,r,r,r)}, +$S:1490} +A.a1D.prototype={ +J(){return new A.aNd(new A.eZ(B.bU,$.ae()),B.f)}} +A.aNd.prototype={ +m(){var s=this.d +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s=null,r=A.E("Go route",s,s,s,s,s),q=this.d +return A.aX(!1,s,s,s,!0,s,s,s,s,!0,s,B.azN,s,s,s,s,s,s,!1,s,s,A.Fz(!0,B.bF,!1,s,!0,B.k,s,A.Ov(),q,s,s,s,s,s,2,B.aAg,B.m,!0,s,!0,s,!1,s,s,s,s,s,s,s,s,1,s,s,!1,"\u2022",s,s,s,new A.bXf(this),s,!1,s,!1,s,!0,s,B.ec,s,s,B.cY,B.cA,s,s,s,s,s,s,s,B.ah,s,B.fk,s,B.Z6,s,s),s,s,r,s,A.i1(A.a([A.hr(q,new A.bXg(this),t.Rp)],t.p7),B.t,B.o,B.Z),s)}, +th(a,b){var s +if(!B.c.aC(b,"/"))b="/"+b +s=this.c +s.toString +A.cc(s).fg(b,null,t.X)}} +A.bXf.prototype={ +$1(a){this.a.th(0,a)}, +$S:46} +A.bXg.prototype={ +$2(a,b){var s=null +return A.du(s,B.azb,s,b.a.length===0?s:new A.bXe(this.a,b),s)}, +$S:1491} +A.bXe.prototype={ +$0(){this.a.th(0,this.b.a)}, +$S:0} +A.aax.prototype={ +J(){return new A.aja(B.f)}} +A.aja.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=$.eN.I().af0() +if(l==null)l=A.a([],t.xN) +if(A.bnT(l,new A.che(n)))J.eQ(l,n.a.c) +s=A.E("Switch OA user",m,m,m,m,m) +r=A.E("Without logging out",m,m,m,m,m) +q=n.d?B.bfu:m +p=t.C +o=J.dP(l,n.gbo9(),p) +p=A.R(new A.O(o,new A.chf(),o.$ti.h("O")),!0,p) +p.push(A.wE(n.boL(),0,32,0,0)) +return A.H9(p,!0,B.E6,m,m,r,s,q,m)}, +boa(a){var s,r,q,p=this,o=null,n=a.l(0,p.a.c),m=p.c +m.toString +s=A.b2(A.bc(m)===B.y?B.DR:B.DY,o,o,o,o,o,o,o,o,o,o) +r=a.a +q=A.E(r,o,o,o,o,o) +if(n)m=A.E("Current user",o,o,o,o,o) +else{m=A.b1T(r) +m=m==null?o:A.E(A.w("OaUserType."+m.b,o,o),o,o,o,o,o)}return A.aX(!1,o,o,o,!n,o,o,o,o,!1,o,s,o,o,o,o,new A.chb(p,a),new A.chc(p,a),!1,o,o,m,o,o,q,o,new A.aA(new A.af(8,8,8,8),B.j1,o),o)}, +boL(){var s=null,r=this.c +r.toString +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,A.b2(A.bc(r)===B.y?B.f3:B.f6,s,s,s,s,s,s,s,s,s,s),s,s,s,s,s,new A.chd(this),!1,s,s,s,s,s,A.E("New account",s,s,s,s,s),s,s,s)}, +zx(a){return this.bAs(a)}, +bAs(a){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g +var $async$zx=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:n.C(new A.chg(n)) +p=4 +s=7 +return A.i($.aw4.I().a9l(),$async$zx) +case 7:s=8 +return A.i(A.Sq(a),$async$zx) +case 8:j=$.eN.I().af0() +m=j==null?A.a([],t.xN):j +J.eQ(m,a) +s=9 +return A.i($.eN.I().Qr(m),$async$zx) +case 9:if(n.c==null){s=1 +break}n.C(new A.chh(n)) +i=n.c +i.toString +A.cc(i).qV(0,"/",null) +p=2 +s=6 +break +case 4:p=3 +g=o +i=A.ag(g) +s=t.VI.b(i)?10:12 +break +case 10:l=i +k=A.aD(g) +if(n.c==null){s=1 +break}n.C(new A.chi(n)) +i=n.c +i.toString +s=13 +return A.i(A.BB(i,l,k),$async$zx) +case 13:s=11 +break +case 12:throw g +case 11:s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$zx,r)}} +A.che.prototype={ +$1(a){return a.a===this.a.a.c.a}, +$S:1493} +A.chf.prototype={ +$1(a){return A.wE(a,0,32,0,0)}, +$S:327} +A.chc.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.zx(q.b),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.chb.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.c +p.toString +A.qK(p,null,A.E(A.w("copyTip",A.a([A.w("credentials.oa.oaAccount",null,null)],t.s),null),null,null,null,null,null),B.aW) +s=2 +return A.i(A.p4(new A.mV(q.b.a)),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.chd.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.a +m=n.c +m.toString +s=3 +return A.i(A.yF(m,null,B.agl),$async$$0) +case 3:m=b +s=4 +return A.i(t.L0.b(m)?m:A.dO(m,t.z),$async$$0) +case 4:o=b +if(o==null){s=1 +break}s=5 +return A.i(n.zx(o),$async$$0) +case 5:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.chg.prototype={ +$0(){return this.a.d=!0}, +$S:0} +A.chh.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.chi.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.asf.prototype={ +hO(a,b){var s=null,r=b.dl($.eN.I().ga_f(),t.R),q=A.b2(A.bc(a)===B.y?B.iZ:B.nH,s,s,s,s,s,s,s,s,s,s),p=A.E("Expense user",s,s,s,s,s),o=r==null?s:A.E(r,s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,q,s,s,s,s,s,new A.bbN(a,r,b),!1,s,s,o,s,s,p,s,A.b2(A.bc(a)===B.y?B.d1:B.d2,s,s,s,s,s,s,s,s,s,s),s)}} +A.bbN.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +n=p.b +s=3 +return A.i(A.vQ(o,"OA account",n==null?"":n),$async$$0) +case 3:m=b +if(m==null){s=1 +break}if(m.length===0){p.c.d8(0,$.eN.I().ga_f().gfd(),t.fO).x.$1(null) +s=1 +break}s=A.b1T(m)==null?4:6 +break +case 4:if(o.e==null){s=1 +break}s=7 +return A.i(A.kS(o,"Invalid OA account format.","OK",!1,"Error"),$async$$0) +case 7:s=5 +break +case 6:p.c.d8(0,$.eN.I().ga_f().gfd(),t.fO).x.$1(m) +case 5:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.M8.prototype={ +J(){return new A.aWo(B.f)}} +A.aWo.prototype={ +q(a){var s=null +return A.bW(s,s,A.cD(B.k,s,B.m,s,B.ck,s,!1,s,B.v,A.a([A.uu(s,!1,!0,!1,A.E(A.w("settings.title",s,s),s,s,s,s,s)),A.eI(this.bol())],t.p)),s,s,s,s)}, +bol(){var s,r,q=this,p=null,o=q.gc6().dl($.e2.I().gt9(),t.ue),n=q.gc6().dl($.e2.I().gIj(),t.xk),m=q.gc6().dl($.eN.I().gx6(),t.y),l=A.a([],t.p),k=n!==B.fU +if(k)l.push(A.iW(B.AT,8,0)) +if(o!=null)l.push(new A.rM(A.E(A.w("credentials.oa.oaAccount",p,p),p,p,p,p,p),A.E(o.a,p,p,p,p,p),B.Eb,"/settings/credentials",p)) +else{s=A.E(A.w("login.oa.loginOa",p,p),p,p,p,p,p) +l.push(A.aX(!1,p,p,p,!0,p,p,p,p,!1,p,B.Eb,p,p,p,p,p,new A.ceI(q),!1,p,p,A.E(A.w("login.oa.neverLoggedInTip",p,p),p,p,p,p,p),p,p,s,p,p,p))}l.push(B.bp) +s=A.E(A.w("settings.language",p,p),p,p,p,p,p) +r=q.c.a0(t.L).r.a +r===$&&A.b() +l.push(new A.rM(s,A.E(A.cGW(r),p,p,p,p,p),B.azG,"/settings/language",p)) +l.push(q.bpi()) +l.push(new A.rM(A.E(A.w("settings.themeColor",p,p),p,p,p,p,p),p,B.nM,"/settings/theme-color",p)) +l.push(B.bp) +if(k){l.push(new A.rM(A.E(A.w("timetable.navigation",p,p),p,p,p,p,p),p,B.uT,"/settings/timetable",p)) +l.push(new A.rM(A.E(A.w("game.navigation",p,p),p,p,p,p,p),p,B.ayW,"/settings/game",p)) +l.push(B.bp)}if(m)l.push(new A.rM(A.E(A.w("settings.dev.title",p,p),p,p,p,p,p),p,B.Ec,"/settings/developer",p)) +if(k)l.push(B.a6G) +l.push(B.byc) +k=A.E(A.w("settings.about.title",p,p),p,p,p,p,p) +s=q.c +s.toString +l.push(new A.rM(k,p,A.b2(A.bc(s)===B.y?B.kX:B.nK,p,p,p,p,p,p,p,p,p,p),"/settings/about",p)) +l[l.length-1]=A.cLM(B.b.gP(l),!1) +return l}, +bpi(){var s,r,q,p=null,o=this.gc6().dl($.cn.I().gnm().ga_k(),t.YX) +switch((o==null?B.m0:o).a){case 2:s=B.uR +break +case 1:s=B.uS +break +case 0:s=B.azt +break +default:s=p}r=A.E(A.w("settings.themeMode.title",p,p),p,p,p,p,p) +q=t.LH +return A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,s,p,p,p,p,p,p,!1,p,p,A.nl(A.R(new A.O(B.vN,new A.ceK(this),q),!0,q.h("aa.E")),B.bV,0,4),p,p,r,p,p,p)}} +A.ceI.prototype={ +$0(){var s=this.a.c +s.toString +A.cc(s).qV(0,"/login",null)}, +$S:0} +A.ceK.prototype={ +$1(a){var s=null,r=A.E(A.w("themeMode."+a.b,s,s),s,s,s,s,s),q=A.dU($.cn.I().gnm().a,"/theme/themeMode",t.jm) +if(q==null)q=B.m0 +return A.ri(r,new A.ceJ(this.a,a),q===a,s)}, +$S:1494} +A.ceJ.prototype={ +$1(a){return this.aHP(a)}, +aHP(a){var s=0,r=A.p(t.H),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.a.gc6().d8(0,$.cn.I().gnm().ga_k().gfd(),t.dl).x.$1(q.b) +s=2 +return A.i(A.qb(),$async$$1) +case 2:return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:91} +A.apf.prototype={ +q(a){var s=null,r=A.E(A.w("settings.clearCache.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.azM,s,s,s,s,s,new A.b9n(a),!1,s,s,A.E(A.w("settings.clearCache.desc",s,s),s,s,s,s,s),s,s,r,s,s,s)}} +A.b9n.prototype={ +$0(){A.b1B(this.a)}, +$S:0} +A.aJK.prototype={ +q(a){var s=null,r=A.E(A.w("settings.wipeData.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.ayR,s,s,s,s,s,new A.bPj(a),!1,s,s,A.E(A.w("settings.wipeData.desc",s,s),s,s,s,s,s),s,s,r,s,s,s)}} +A.bPj.prototype={ +$0(){A.Zc(this.a)}, +$S:0} +A.JP.prototype={ +J(){return new A.afA(B.f)}} +A.afA.prototype={ +gAl(a){var s,r=this.d +if(r===$){s=this.c.a0(t.L).r.a +s===$&&A.b() +r=this.d=s}return r}, +q(a){var s,r,q,p=null,o=this.gAl(0),n=a.a0(t.L).r.a +n===$&&A.b() +s=!o.l(0,n) +n=this.giG() +o=A.E(A.w("settings.language",p,p),p,p,p,p,p) +r=s?n:p +q=t.p +return new A.mq(s,n,A.bW(p,p,A.cD(B.k,p,B.m,p,B.ck,p,!1,p,B.v,A.a([A.uu(A.a([A.e8(A.E(A.w("save",p,p),p,p,p,p,p),r)],q),!1,!0,!1,o),A.hs(new A.c3g(this),3)],q)),p,p,p,p),p)}, +hm(){var s=0,r=A.p(t.H),q,p=this,o +var $async$hm=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.c +o.toString +s=3 +return A.i(A.cvv(o,p.gAl(0)),$async$hm) +case 3:if($.an==null)A.FV() +$.an.rV() +o=p.c +if(o==null){s=1 +break}o=A.cc(o).c +o===$&&A.b() +o.dB(null) +case 1:return A.n(q,r)}}) +return A.o($async$hm,r)}} +A.c3g.prototype={ +$2(a,b){var s,r=null,q=B.Ia[b],p=this.a,o=p.gAl(0).l(0,q),n=A.E(A.cGW(q),r,r,r,r,r) +if(o)s=A.b2(A.bc(a)===B.y?B.cd:B.f5,r,r,r,r,r,r,r,r,r,r) +else s=r +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,new A.c3f(p,q),o,r,r,r,r,r,n,r,s,r)}, +$S:277} +A.c3f.prototype={ +$0(){var s=this.a +s.C(new A.c3e(s,this.b))}, +$S:0} +A.c3e.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.Ll.prototype={ +J(){return new A.aTY(B.f)}} +A.aTY.prototype={ +q(a){var s=this,r=null,q=A.uu(r,!1,!0,!1,A.E(A.w("settings.proxy.title",r,r),r,r,r,r,r)),p=t.p,o=A.a([s.a7G(),s.a7O(),B.bp,s.a7P(B.i5,B.aze),s.a7P(B.i4,B.Ee)],p) +if($.eN.I().gnS(0))o.push(s.a7P(B.i3,B.E3)) +o.push(B.bp) +o.push(new A.aaN(B.a_1,new A.caT(),r)) +o.push(B.bi6) +return A.bW(r,r,A.cD(B.k,r,B.m,r,B.ck,r,!1,r,B.v,A.a([q,A.Fm(A.Mk(o,!0,!0,!0))],p)),r,r,r,r)}, +a7P(a,b){var s,r,q,p,o,n=null,m=null +try{m=this.gc6().dl($.cn.I().gpE().a_h(a),t.Es)}catch(q){s=A.ag(q) +r=A.aD(q) +A.ll(s,r) +throw q}p=A.E(A.w("settings.proxy.proxyType."+a.b,n,n),n,n,n,n,n) +o=m +o=o==null?n:A.E(o.a.k(0),n,n,n,n,n) +return A.aX(!1,n,n,n,!0,n,n,n,n,!1,n,b,n,n,n,n,n,new A.caS(this,a),!1,n,n,o,n,n,p,n,B.l_,n)}, +a7G(){return new A.aex(this.gc6().dl($.cn.I().gpE().gaeh(),t.y),new A.caO(this),null)}, +a7O(){return new A.agV(this.gc6().dl($.cn.I().gpE().gael(),t.xp),new A.caQ(this),null)}} +A.caT.prototype={ +$0(){var s=0,r=A.p(t.y),q +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i($.RN.I().lD(),$async$$0) +case 3:q=b +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:99} +A.caS.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.a +m=n.c +m.toString +p=q.b +s=2 +return A.i(A.fo(m,new A.caR(p),!0,!1,t.z),$async$$0) +case 2:o=b +if(o instanceof A.i0)n.gc6().d8(0,$.cn.I().gpE().a_h(p).gfd(),t.LU).x.$1(o) +else if(J.q(o,B.dk))n.gc6().d8(0,$.cn.I().gpE().a_h(p).gfd(),t.LU).x.$1(null) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.caR.prototype={ +$1(a){return new A.Lk(this.a,null)}, +$S:1495} +A.caO.prototype={ +$1(a){var s=this.a +s.C(new A.caN(s,a))}, +$S:4} +A.caN.prototype={ +$0(){var s=this.a.gc6().d8(0,$.cn.I().gpE().gaeh().gfd(),t.cI).x +if(s!=null)s.$1(this.b)}, +$S:0} +A.caQ.prototype={ +$1(a){var s=this.a +s.C(new A.caP(s,a))}, +$S:451} +A.caP.prototype={ +$0(){var s=this.a.gc6().dl($.cn.I().gpE().gael().gfd(),t.ic).x +if(s!=null)s.$1(this.b)}, +$S:0} +A.aC8.prototype={ +q(a){var s=null,r=A.b2(A.bc(a)===B.y?B.alh:B.ayF,s,s,s,s,s,s,s,s,s,s),q=A.E(A.w("settings.proxy.shareQrCode.title",s,s),s,s,s,s,s),p=A.E(A.w("settings.proxy.shareQrCode.desc",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,r,s,s,s,s,s,new A.bz0(a),!1,s,s,p,s,s,q,s,A.b2(A.bc(a)===B.y?B.uA:B.uM,s,s,s,s,s,s,s,s,s,s),s)}} +A.bz0.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=$.cn.I().gpE() +o=p.pM(B.i5) +n=p.pM(B.i4) +m=p.pM(B.i3) +l=t.z +k=A.N(t.N,l) +if(o!=null)k.n(0,"http",A.cBo(o.a9W(),!1)) +if(n!=null)k.n(0,"https",A.cBo(n.a9W(),!1)) +if(m!=null)k.n(0,"all",A.cBo(m.a9W(),!1)) +A.fo(q.a,new A.bz_(A.fi(null,"proxy","/set",null,null,null,k,"life.mysit")),!0,!1,l) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bz_.prototype={ +$1(a){var s=null,r=A.E(A.w("settings.proxy.title",s,s),s,s,s,s,s) +return new A.TR(this.a.grg(),r,s)}, +$S:1497} +A.ct1.prototype={ +$2(a,b){return a==null?!0:A.cRx(a.k(0),b)!=null}, +$S:1498} +A.ct0.prototype={ +$3(a,b,c){b=this.a.i(0,a) +if(b!=null)c.$1(b)}, +$S:263} +A.Lk.prototype={ +J(){return new A.agW(B.f)}} +A.agW.prototype={ +gZ0(){var s,r=this,q=r.w +if(q===$){s=$.cn.I().gpE().pM(r.a.d) +r.w!==$&&A.a_() +r.w=s +q=s}return q}, +gfh(){var s,r=this.x +if(r===$){s=this.gZ0() +r=this.x=s==null?null:s.a}return r}, +gw9(a){var s,r=this.y +if(r===$){s=this.gZ0() +s=s==null?null:s.b +r=this.y=s===!0}return r}, +gaDO(){var s,r=this.z +if(r===$){s=this.gZ0() +r=s==null?null:s.c +r=this.z=r==null?B.h4:r}return r}, +ga9T(){var s,r=this.Q +if(r===$){s=this.gfh() +r=this.Q=(s==null?null:s.gA2().length!==0)===!0}return r}, +q(a){var s,r=this,q=null,p=J.q(r.awm(),r.gZ0()),o=r.giG(),n=A.E(A.w("settings.proxy.proxyType."+r.a.d.b,q,q),q,q,q,q,q),m=r.gfh() +m=(m==null?q:m.k(0).length!==0)===!0?new A.caM(r):q +s=t.p +n=A.ju(A.a([A.e8(A.E(A.w("clear",q,q),q,q,q,q,q),m),A.e8(A.E(A.w("save",q,q),q,q,q,q,q),o)],s),!0,q,q,!1,!1,!1,n,q) +m=A.a([r.a7G(),r.a7O(),r.bp1(),B.bp,r.bp0(),r.boZ(),r.bp_(),r.boj()],s) +if(r.ga9T())m.push(A.wE(r.boY(),0,32,0,0)) +return new A.mq(!p,o,A.bW(q,q,A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,A.a([n,A.eI(m)],s)),q,q,q,q),q)}, +hm(){var s,r=this.c +r.toString +s=this.awm() +if(s==null)s=B.dk +r=A.cc(r).c +r===$&&A.b() +r.dB(s)}, +awm(){var s=this,r=s.gfh() +if(r==null)return null +if(!s.ga9T())r=r.adk(0,"") +return new A.i0(r,s.gw9(0),s.gaDO())}, +bp1(){var s=null,r=this.gfh(),q=r==null?s:r.k(0),p=this.c +p.toString +return A.el(B.uN,q,"URL",A.du(s,A.b2(A.bc(p)===B.y?B.d1:B.d2,s,s,s,s,s,s,s,s,s,s),s,new A.caK(this,r),s))}, +bp0(){var s,r,q=null,p=this.gfh(),o=p==null?q:p.gfX().toLowerCase() +p=A.E(A.w("settings.proxy.protocol",q,q),q,q,q,q,q) +s=this.a.d.e +r=A.X(s).h("O<1,jH>") +return A.aX(!1,q,q,q,!0,q,q,q,q,!0,q,B.Ee,q,q,q,q,q,q,!1,q,q,A.nl(A.R(new A.O(s,new A.caI(this,o),r),!0,r.h("aa.E")),B.bV,0,4),q,q,p,q,q,q)}, +boZ(){var s,r=null,q=this.gfh(),p=q==null?r:q.gla(q) +q=A.w("settings.proxy.hostname",r,r) +s=this.c +s.toString +return A.el(B.uN,p,q,A.du(r,A.b2(A.bc(s)===B.y?B.d1:B.d2,r,r,r,r,r,r,r,r,r,r),r,new A.caB(this,p),r))}, +bp_(){var s,r,q=null,p=this.gfh(),o=p==null?q:p.gwH(p) +p=A.w("settings.proxy.port",q,q) +s=o==null?q:B.d.k(o) +r=this.c +r.toString +return A.el(B.ayK,s,p,A.du(q,A.b2(A.bc(r)===B.y?B.d1:B.d2,q,q,q,q,q,q,q,q,q,q),q,new A.caF(this,o),q))}, +boj(){var s=null +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.azj,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("settings.proxy.enableAuth",s,s),s,s,s,s,s),s,A.jy(new A.cat(this),this.ga9T()),s)}, +boY(){var s,r,q,p=null,o=this.gfh(),n=o==null?p:A.a(o.gA2().split(":"),t.s) +if(n==null)s=p +else if(n.length===2){o=n[0] +o=new A.ah7(n[1],o) +s=o}else s=p +r=s!=null?s.b+":"+s.a:p +o=A.w("settings.proxy.authentication",p,p) +q=this.c +q.toString +return A.el(p,r,o,A.du(p,A.b2(A.bc(q)===B.y?B.d1:B.d2,p,p,p,p,p,p,p,p,p,p),p,new A.caz(this,s),p))}, +a7G(){return new A.aex(this.gw9(0),new A.cav(this),null)}, +a7O(){return new A.agV(this.gaDO(),new A.caD(this),null)}} +A.caM.prototype={ +$0(){var s=this.a +s.C(new A.caL(s))}, +$S:0} +A.caL.prototype={ +$0(){var s=this.a +s.x=null +s.Q=!1}, +$S:0} +A.caK.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j,i +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:j=p.a +i=j.c +i.toString +o=A.w("settings.proxy.title",null,null) +n=p.b +m=n==null?null:n.k(0) +if(m==null){m=j.a.d +m=A.fi(null,"localhost",null,null,m.d,null,null,m.f).grg()}s=3 +return A.i(A.vQ(i,o,m),$async$$0) +case 3:l=b +if(l==null){s=1 +break}k=A.cRx(B.c.du(l),j.a.d) +if(k==null){j=j.c +if(j==null){s=1 +break}i=A.w("error",null,null) +A.kS(j,A.w("settings.proxy.invalidProxyFormatTip",null,null),A.w("close",null,null),!1,i) +s=1 +break}if(!k.l(0,n))j.C(new A.caJ(j,k)) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.caJ.prototype={ +$0(){var s=this.a,r=this.b +s.x=r +s.Q=r.gA2().length!==0}, +$S:0} +A.caI.prototype={ +$1(a){var s=null +return A.ri(A.E(a.toUpperCase(),s,s,s,s,s),new A.caH(this.a,a),a===this.b,s)}, +$S:1500} +A.caH.prototype={ +$1(a){var s=this.a +s.C(new A.caG(s,this.b))}, +$S:4} +A.caG.prototype={ +$0(){var s=this.a,r=s.gfh() +s.x=r==null?null:r.aES(0,this.b.toLowerCase())}, +$S:0} +A.caB.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j,i +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:j=p.a +i=j.c +i.toString +o=A.w("settings.proxy.hostname",null,null) +n=p.b +if(n==null){j.a.toString +m="localhost"}else m=n +s=3 +return A.i(A.vQ(i,o,m),$async$$0) +case 3:l=b +if(l==null){s=1 +break}k=B.c.du(l) +if(k!==n)j.C(new A.caA(j,k)) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.caA.prototype={ +$0(){var s=this.a,r=s.gfh() +s.x=r==null?null:r.aEP(0,this.b)}, +$S:0} +A.caF.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:l=p.a +k=l.c +k.toString +o=A.w("settings.proxy.port",null,null) +n=p.b +s=3 +return A.i(A.atf(k,o,n==null?l.a.d.d:n),$async$$0) +case 3:m=b +if(m==null){s=1 +break}if(m!==n)l.C(new A.caE(l,m)) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.caE.prototype={ +$0(){var s=this.a,r=s.gfh() +s.x=r==null?null:r.aEQ(0,this.b)}, +$S:0} +A.cat.prototype={ +$1(a){var s=this.a +s.C(new A.cas(s,a))}, +$S:4} +A.cas.prototype={ +$0(){this.a.Q=this.b}, +$S:0} +A.caz.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.a +m=n.c +m.toString +p=q.b +s=2 +return A.i(A.BI(null,new A.cax(p),m,t.I4),$async$$0) +case 2:o=b +if(o!=null&&!J.q(o,p))n.C(new A.cay(n,o)) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cax.prototype={ +$1(a){var s=null,r=this.a,q=r==null,p=q?s:r.b +if(p==null)p="" +r=q?s:r.a +if(r==null)r="" +return new A.t1(A.a([new A.O_(p,"username"),new A.O_(r,"password")],t.sc),A.w("settings.proxy.authentication",s,s),new A.caw(),s,t.xy)}, +$S:1501} +A.caw.prototype={ +$1(a){var s=J.ao(a),r=J.BL(s.i(a,0)) +return new A.ah7(J.BL(s.i(a,1)),r)}, +$S:1502} +A.cay.prototype={ +$0(){var s,r,q=this.a,p=q.gfh() +if(p==null)p=null +else{s=this.b +r=s.a +s=s.b +p=p.adk(0,J.bn(r)!==0?A.r(s)+":"+A.r(r):s)}q.x=p}, +$S:0} +A.cav.prototype={ +$1(a){var s=this.a +s.C(new A.cau(s,a))}, +$S:4} +A.cau.prototype={ +$0(){this.a.y=this.b}, +$S:0} +A.caD.prototype={ +$1(a){var s=this.a +s.C(new A.caC(s,a))}, +$S:451} +A.caC.prototype={ +$0(){this.a.z=this.b}, +$S:0} +A.aex.prototype={ +q(a){var s=null,r=A.E(A.w("settings.proxy.enableProxy.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.ayN,s,s,s,s,s,s,!1,s,s,A.E(A.w("settings.proxy.enableProxy.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(this.d,this.c),s)}} +A.agV.prototype={ +q(a){var s,r=null,q=A.E(A.w("settings.proxy.proxyMode.title",r,r),r,r,r,r,r),p=t.AS +p=A.nl(A.R(new A.O(B.os,new A.car(this),p),!0,p.h("aa.E")),B.bV,0,4) +s=this.bpp() +return A.aX(!1,r,r,r,!0,r,r,r,r,!0,r,B.E3,r,r,r,r,r,r,!1,r,r,p,r,r,q,r,new A.aA(new A.af(8,8,8,8),A.FH(A.b2(A.bc(a)===B.y?B.kX:B.nK,r,r,r,r,r,r,r,r,r,r),r,r,s,r,r,r,B.qo,r),r),r)}, +bpp(){var s=this.c +if(s==null)return new A.O(B.os,new A.cap(),t.k0).bQ(0,"\n") +else return A.w("settings.proxy.proxyMode."+s.b+".tip",null,null)}} +A.car.prototype={ +$1(a){var s=null,r=this.a +return A.ri(A.E(A.w("settings.proxy.proxyMode."+a.b+".name",s,s),s,s,s,s,s),new A.caq(r,a),r.c===a,s)}, +$S:1503} +A.caq.prototype={ +$1(a){this.a.d.$1(this.b)}, +$S:4} +A.cap.prototype={ +$1(a){var s=null,r="settings.proxy.proxyMode."+a.b +return A.w(r+".name",s,s)+": "+A.w(r+".tip",s,s)}, +$S:1504} +A.K7.prototype={ +J(){return new A.aR6(A.N(t.N,t.PG),B.f)}} +A.aR6.prototype={ +a8(){var s,r,q,p,o +this.an() +for(s=J.BK($.cxh.I()),s=s.gaz(s),r=this.d;s.t();){q=s.gK(s) +p=q.a +o=q.b +if(o.f)r.n(0,p,o)}}, +q(a){var s=this.d,r=t.RM,q=s.gep(s).fK(0,new A.c3W(),r).eO(0) +A.Sj(q,new A.c3X(),r,t.N) +return A.bC(a,null,t.l).w.gnU(0)===B.dw?new A.aab(q,null):new A.aaa(q,null)}} +A.c3W.prototype={ +$1(a){return new A.aUi(a.b,a.a)}, +$S:1505} +A.c3X.prototype={ +$1(a){return a.b}, +$S:1506} +A.aab.prototype={ +J(){return new A.aXe(B.f)}} +A.aXe.prototype={ +a8(){this.an()}, +q(a){var s=null +return A.bW(A.jb(s,s,!0,s,s,1,s,s,s,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,A.E(A.w("settings.title",s,s),s,s,s,s,s),s,s,s,1,s),s,A.d9i(new A.cfT(this),this.a.c.length,new A.cfU()),s,s,s,!1)}} +A.cfT.prototype={ +$2(a,b){var s=this.a.a.c[b] +return new A.Hv(s.b,s.a,null)}, +$S:1507} +A.cfU.prototype={ +$2(a,b){return B.bp}, +$S:449} +A.Hv.prototype={ +J(){return new A.aLD(B.f)}} +A.aLD.prototype={ +bpl(a){var s=null,r=this.a.d,q=A.G(a) +return A.m4(A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,s,s,s,A.bv(this.a.c,s,s,s,s,s,s,s,s,q.p3.f,B.at,s,s,s,s),s,new A.oo(new A.bTd(this,r),s),s),s,s,s)}, +q(a){var s=null,r=this.a.d +return A.iW(new A.ba(1/0,s,A.dd(A.a([this.bpl(a),new A.a00(r,s)],t.p),B.t,s,B.o,B.Z),s),10,5)}} +A.bTd.prototype={ +$1(a){var s=this.a,r=s.c +r.toString +r=A.bc(r)===B.y?B.cs:B.cF +return A.a([new A.eW(A.w("delete",null,null),new A.bTc(s,a,this.b),r)],t.iT)}, +$S:58} +A.bTc.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=5 +return A.i(A.b1H(p.b),$async$$0) +case 5:s=b===!0?3:4 +break +case 3:p.c.V(0) +s=6 +return A.i(A.jk(B.bd,null,t.z),$async$$0) +case 6:o=p.a +if(o.c==null){s=1 +break}o.C(new A.bTb()) +case 4:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bTb.prototype={ +$0(){}, +$S:0} +A.a00.prototype={ +J(){return new A.aLB(B.f)}} +A.aLB.prototype={ +q(a){var s,r=this,q=r.e +if(q===$){s=A.Pe(r.a.c,null,t.z) +r.e!==$&&A.a_() +r.e=s +q=s}return A.hr(q,new A.bT2(r),t.PG)}, +a7E(a){var s,r,q,p,o,n,m=this,l=m.a.c +if(!l.f)A.C(A.ij("Box has already been closed.")) +l=l.e +l===$&&A.b() +l=l.c +s=l.$ti +s=s.h("@<1>").a1(s.y[1]).h("NN<1,2>") +r=A.R(new A.NN(l.a,s),!0,s.h("B.E")) +q=r.length +if(q<6)return m.aw8(a,r) +else{p=m.d*6 +o=q/6|0 +if(B.d.M(q,6)!==0)++o +n=Math.min(p+6,q) +return A.dd(A.a([new A.aA(new A.af(10,10,10,10),m.boV(a,o),null),A.xS(B.C,m.aw8(a,B.b.cK(r,p,n)),B.cl,B.aA,null)],t.p),B.t,null,B.o,B.u)}}, +aw8(a,b){var s,r,q,p=this,o=p.c +o.toString +o=A.G(o) +s=p.c +s.toString +s=A.G(s) +r=p.c +r.toString +q=A.X(b).h("O<1,vu>") +return A.dd(A.R(new A.O(b,new A.bT_(p,o.p3.w,s.p3.Q,A.G(r).p3.z),q),!0,q.h("aa.E")),B.t,null,B.o,B.u)}, +boV(a,b){var s=null,r=B.d.dV(B.e.aF(A.bC(a,s,t.l).w.a.a/50),1,b) +return new A.a6F(new A.aEI(s,B.a2H,s),new A.bw8(),this.d+1,b,r,new A.bT1(this),s)}} +A.bT2.prototype={ +$2(a,b){return this.a.a7E(a)}, +$S:1508} +A.bT_.prototype={ +$1(a){var s=this,r=s.a +return A.cFo(r.a.c,s.d,a,new A.bSZ(r),s.b,s.c)}, +$S:1509} +A.bSZ.prototype={ +$0(){var s=this.a +if(s.c==null)return +s.C(new A.bSY())}, +$S:0} +A.bSY.prototype={ +$0(){}, +$S:0} +A.bT1.prototype={ +$1(a){var s=this.a +s.C(new A.bT0(s,a))}, +$S:189} +A.bT0.prototype={ +$0(){this.a.d=this.b-1}, +$S:0} +A.vu.prototype={ +J(){return new A.aLC(B.f)}} +A.aLC.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=J.cw(n.a.f),k=n.a,j=A.dU(k.r,k.f,t.z),i=A.mM(J.az(j).a,m) +k=A.E(l,m,m,m,n.a.c,m) +s=n.bnG(l,j) +r=n.a.d +if(r==null)r=m +else r=r.bu(A.cHS(j)?B.dZ:m) +r=A.E(i,m,m,m,r,m) +q=A.r(j) +p=n.a.e +o=A.jG(A.aX(!1,m,m,m,!0,m,m,m,m,!0,m,m,m,m,m,m,m,m,!1,m,m,A.bCd(A.dd(A.a([r,A.E(q,m,5,m,p==null?m:p.a8F(B.bf),m)],t.LT),B.a4,m,B.o,B.u),B.ca),m,m,k,m,s,m),m,m,m) +return j!=null?A.cyM(o,new A.bT7(n,a,l,j)):o}, +bnG(a,b){return new A.oo(new A.bT6(this,a,b),null)}, +IW(a,b,c,d){return this.aM5(a,b,c,d)}, +aM5(a,b,c,d){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$IW=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:n=A.cHS(d) +s=!n?3:5 +break +case 3:s=6 +return A.i(A.atg(a,c,d),$async$IW) +case 6:s=4 +break +case 5:s=7 +return A.i(A.yF(a,c,d),$async$IW) +case 7:o=f +if(o==null){s=1 +break}if(!J.q(d,o)){A.ds(b,c,o) +if(p.c==null){s=1 +break}p.C(new A.bT8())}case 4:case 1:return A.n(q,r)}}) +return A.o($async$IW,r)}} +A.bT7.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +q=o.IW(p.b,o.a.r,p.c,p.d) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bT6.prototype={ +$1(a){var s=null,r=A.bc(a)===B.y?B.f4:B.fB,q=A.w("clear",s,s),p=this.a,o=this.b,n=A.w("delete",s,s),m=p.c +m.toString +m=A.bc(m)===B.y?B.cs:B.cF +return A.a([new A.eW(q,new A.bT4(p,o,this.c),r),new A.eW(n,new A.bT5(p,a,o),m)],t.iT)}, +$S:58} +A.bT4.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.a +m=n.c +m.toString +o=A.w("warning",null,null) +s=3 +return A.i(A.yx(m,A.w("settings.dev.localStorage.emptyValueDesc",null,null),!1,A.w("confirm",null,null),!0,A.w("cancel",null,null),!1,o),$async$$0) +case 3:if(b===!0){m=n.a.r +m.aE5(A.a1([p.b,A.dlc(p.c)],t.z,m.$ti.c)) +if(n.c==null){s=1 +break}n.C(new A.bT3())}case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bT3.prototype={ +$0(){}, +$S:0} +A.bT5.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.b +o=A.cc(p).c +o===$&&A.b() +o.dB(null) +s=2 +return A.i(A.cqs(p),$async$$0) +case 2:if(b===!0){p=q.a +p.a.r.a9m([q.c]) +p.a.w.$0()}return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bT8.prototype={ +$0(){}, +$S:0} +A.aaa.prototype={ +J(){return new A.aXd(B.f)}} +A.aXd.prototype={ +ga05(){var s,r=this.d +if(r===$){s=A.DP(this.a.c) +r=this.d=s==null?null:s.b}return r}, +a8(){this.an()}, +q(a){var s=null +return A.bW(A.jb(s,s,!0,s,s,1,s,s,0,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,A.E(A.w("settings.title",s,s),s,s,s,s,s),s,s,s,1,s),s,A.i1(A.a([A.f7(this.bnW(),1,s),B.bw4,new A.iO(2,B.c1,new A.aA(new A.af(10,10,10,10),A.BS(this.bnV(a),B.aA,B.H,B.H,A.Oo()),s),s)],t.p),B.t,B.o,B.u),s,s,s,!1)}, +bnW(){var s=this.c +s.toString +return A.K4(null,new A.cfS(this,A.G(s).p3.w),this.a.c.length,null,null,B.v,!1)}, +bnV(a){var s,r,q,p,o,n,m=this,l=null,k=m.ga05(),j=A.rw(m.a.c,new A.cfL(k)) +if(j==null)return A.kj(A.w("settings.dev.localStorage.selectBoxTip",l,l),B.ay_,new A.ca(k,t.W_),l,l) +s=m.c +s.toString +s=A.G(s) +r=m.c +r.toString +r=A.G(r) +q=m.c +q.toString +q=A.G(q) +p=j.a +if(!p.f)A.C(A.ij("Box has already been closed.")) +p=p.e +p===$&&A.b() +p=p.c +o=p.$ti +o=o.h("@<1>").a1(o.y[1]).h("NN<1,2>") +n=A.R(new A.NN(p.a,o),!0,o.h("B.E")) +return A.K4(l,new A.cfM(m,n,j,s.p3.w,r.p3.Q,q.p3.z),n.length,l,l,B.v,!1)}} +A.cfS.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m={} +m.a=m.b=null +s=this.a +r=s.a.c[b] +q=m.b=r.b +m.a=r.a +if(q===s.ga05()){p=s.c +p.toString +o=A.G(p).k1}else o=n +return A.Ur(A.i1(A.a([A.f7(A.cyM(new A.aA(new A.af(10,10,10,10),A.E(q,n,n,n,this.b,n),n),new A.cfQ(m,s)),1,n),new A.oo(new A.cfR(m,s),n)],t.p),B.t,B.o,B.u),n,o,3)}, +$S:447} +A.cfR.prototype={ +$1(a){var s=A.w("clear",null,null),r=this.b,q=r.c +q.toString +q=A.bc(q)===B.y?B.f4:B.fB +return A.a([new A.eW(s,new A.cfO(this.a,r,a),q)],t.iT)}, +$S:58} +A.cfO.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.b1H(p.c),$async$$0) +case 3:if(b===!0){p.a.a.V(0) +o=p.b +if(o.c==null){s=1 +break}o.C(new A.cfN())}case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cfN.prototype={ +$0(){}, +$S:0} +A.cfQ.prototype={ +$0(){var s=this.b,r=this.a +if(s.ga05()!==r.b)s.C(new A.cfP(r,s))}, +$S:0} +A.cfP.prototype={ +$0(){this.b.d=this.a.b}, +$S:0} +A.cfL.prototype={ +$1(a){return J.q(a.b,this.a)}, +$S:1510} +A.cfM.prototype={ +$2(a,b){var s=this +return A.cFo(s.c.a,s.f,s.b[b],new A.cfK(s.a),s.d,s.e)}, +$S:1511} +A.cfK.prototype={ +$0(){var s=this.a +if(s.c==null)return +s.C(new A.cfJ())}, +$S:0} +A.cfJ.prototype={ +$0(){}, +$S:0} +A.MH.prototype={ +J(){return new A.ajC($.cn.I().gnm().gaFn(),B.f)}} +A.ajC.prototype={ +gpH(){var s=this.d +if(s===$){s=$.cn.I().gnm().gpH() +s=this.d=s==null?this.a_w():s}return s}, +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h="settings.themeColor" +if(j.e===$.cn.I().gnm().gaFn()){s=j.gpH() +r=$.cn.I().gnm().gpH() +q=!s.l(0,r==null?j.a_w():r)}else q=!0 +s=j.giG() +r=A.E(A.w(h,i,i),i,i,i,i,i) +p=q?s:i +o=t.p +r=A.uu(A.a([A.e8(A.E(A.w("save",i,i),i,i,i,i,i),p)],o),!1,!0,!1,r) +p=j.bop() +n=j.e +m=A.E(A.w(h,i,i),i,i,i,i,i) +l=A.E("#"+A.R0(j.gpH()),i,i,i,i,i) +if(j.e){k=j.c +k.toString +k=A.G(k).CW}else k=j.gpH() +k=A.eI(A.a([p,A.aX(!1,i,i,i,!n,i,i,i,i,!1,i,B.nM,i,i,i,i,i,j.gaKA(),!1,i,i,l,i,i,m,i,A.jG(B.YA,B.k,k,i),i),A.aX(!1,i,i,i,!0,i,i,i,i,!1,i,i,i,i,i,i,i,i,!1,i,i,i,i,i,A.E(A.w("preview",i,i),i,i,i,i,i),i,i,i)],o)) +m=A.G(a) +p=j.e?j.a_w():j.gpH() +return new A.mq(q,s,A.bW(i,i,A.cD(B.k,i,B.m,i,B.ck,i,!1,i,B.v,A.a([r,k,new A.ht(A.iW(new A.pC(m.a8u(A.cFW(A.G(a).ay.a,p)),B.bt5,i),12,0),i)],o)),i,i,i,i),i)}, +a_w(){var s=$.aml() +A.bL() +s=s.c +s===$&&A.b() +if(s===null){s=this.c +s.toString +s=A.G(s).ay.b}return s}, +Q4(){var s=0,r=A.p(t.H),q=this,p,o +var $async$Q4=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.c +p.toString +o=A +s=2 +return A.i(A.b2i(p,q.gpH(),!0,!0,!0,B.Qv,!0),$async$Q4) +case 2:q.C(new o.ciH(q,b)) +return A.n(null,r)}}) +return A.o($async$Q4,r)}, +bop(){var s=null +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("settings.fromSystem",s,s),s,s,s,s,s),s,A.jy(new A.ciG(this),this.e),s)}, +hm(){var s=0,r=A.p(t.H),q,p=this,o +var $async$hm=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:$.cn.I().gnm().spH(p.gpH()) +A.ds($.cn.I().gnm().a,"/theme/themeColorFromSystem",p.e) +if($.an==null)A.FV() +$.an.rV() +o=p.c +if(o==null){s=1 +break}o=A.cc(o).c +o===$&&A.b() +o.dB(null) +case 1:return A.n(q,r)}}) +return A.o($async$hm,r)}} +A.ciH.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.ciG.prototype={ +$1(a){var s=this.a +s.C(new A.ciF(s,a))}, +$S:4} +A.ciF.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.aGn.prototype={ +q(a){var s=null +return A.dd(A.a([A.a0c(!0,new A.Yb(new A.bLw(),s),s,s,s,s,s,s,s,s),A.jG(new A.Yb(new A.bLx(),s),s,s,s),new A.aA(new A.af(8,8,8,8),new A.agQ(s),s)],t.p),B.a4,s,B.o,B.u)}} +A.bLw.prototype={ +$2(a,b){return new A.HI(a,new A.bLv(b),null)}, +$S:1512} +A.bLv.prototype={ +$1(a){return this.a.$1(a!==!0)}, +$S:450} +A.bLx.prototype={ +$2(a,b){return A.jy(b,a)}, +$S:1513} +A.Yb.prototype={ +J(){return new A.aTQ(B.f)}, +bHe(a,b){return this.c.$2(a,b)}} +A.aTQ.prototype={ +q(a){var s=this,r=null,q="settings.themeColor",p=s.d,o=A.E(A.w(q,r,r),r,r,r,r,r) +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,B.azC,r,r,r,r,r,r,p,r,r,A.E(A.w(q,r,r),r,r,r,r,r),r,r,o,r,s.a.bHe(s.d,new A.caf(s)),r)}} +A.caf.prototype={ +$1(a){var s=this.a +s.C(new A.cae(s))}, +$S:4} +A.cae.prototype={ +$0(){var s=this.a +s.d=!s.d}, +$S:0} +A.agQ.prototype={ +J(){return new A.aTP(B.f)}} +A.aTP.prototype={ +q(a){var s=null,r="settings.themeColor" +return A.nl(A.a([A.tR(!1,A.E(A.w(r,s,s),s,s,s,s,s),B.i,s,s,s,s,s,new A.cac(),s,s),A.T8(!1,A.E(A.w(r,s,s),s,s,s,s,s),B.i,s,s,s,new A.cad(),s,s)],t.wF),B.bV,0,8)}} +A.cac.prototype={ +$0(){}, +$S:0} +A.cad.prototype={ +$0(){}, +$S:0} +A.aC7.prototype={ +Y0(a,b){return b.gla(b)==="proxy"&&b.geh(b)==="/set"}, +nc(a,b){return this.bCe(a,b)}, +bCe(a,b){var s=0,r=A.p(t.H),q,p,o,n,m,l,k,j +var $async$nc=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:m=b.glL() +l=m.i(0,"http") +k=m.i(0,"https") +j=m.i(0,"all") +if(l==null)q=null +else{p=A.a08(A.alU(l,!1)) +p.iU() +q=A.cyB(p)}if(k==null)o=null +else{p=A.a08(A.alU(k,!1)) +p.iU() +o=A.cyB(p)}if(j==null)n=null +else{p=A.a08(A.alU(j,!1)) +p.iU() +n=A.cyB(p)}s=2 +return A.i(A.b28(n,a,q,o),$async$nc) +case 2:return A.n(null,r)}}) +return A.o($async$nc,r)}} +A.bFs.prototype={ +gCA(){var s=this.b +if(s===$){s!==$&&A.a_() +s=this.b=new A.boU(this.a)}return s}, +gk8(){var s=this.c +if(s===$){s!==$&&A.a_() +s=this.c=new A.bMI(this.a)}return s}, +gPZ(){var s=this.d +if(s===$){s!==$&&A.a_() +s=this.d=new A.bDz(this.a)}return s}, +gqO(){var s=this.e +if(s===$){s!==$&&A.a_() +s=this.e=new A.bjN(this.a)}return s}, +gnm(){var s=this.f +if(s===$){s!==$&&A.a_() +s=this.f=new A.ciE(this.a)}return s}, +gpE(){var s=this.r +if(s===$){s!==$&&A.a_() +s=this.r=new A.aTT(this.a)}return s}, +gbpJ(){var s=A.dU(this.a,"/settings/campus",t.lD) +return s==null?B.cm:s}, +ga_d(){var s,r=this,q=r.w +if(q===$){s=A.pX(r.a,"/settings/campus",null,null,t.lD) +r.w!==$&&A.a_() +r.w=s +q=s}return q}, +gX0(){var s=A.dU(this.a,"/settings/focusTimetable",t.y) +return s==null?!1:s}} +A.ciE.prototype={ +gpH(){var s=A.dU(this.a,"/theme/themeColor",t.S) +if(s==null)return null +else return new A.v(s>>>0)}, +spH(a){var s=a==null?null:a.gj(a) +A.ds(this.a,"/theme/themeColor",s)}, +gaHb(){var s,r=this,q=r.b +if(q===$){s=A.pX(r.a,"/theme/themeColor",new A.ciI(r),new A.ciJ(r),t.G) +r.b!==$&&A.a_() +r.b=s +q=s}return q}, +gaFn(){var s=A.dU(this.a,"/theme/themeColorFromSystem",t.y) +return s==null?!0:s}, +ga_k(){var s,r=this,q=r.d +if(q===$){s=A.pX(r.a,"/theme/themeMode",null,null,t.jm) +r.d!==$&&A.a_() +r.d=s +q=s}return q}} +A.ciI.prototype={ +$0(){return this.a.gpH()}, +$S:183} +A.ciJ.prototype={ +$1(a){this.a.spH(a) +return a}, +$S:269} +A.aTT.prototype={ +pM(a){return A.cBl(A.dU(this.a,"/proxy/"+a.b,t.N),new A.cb0())}, +IO(a,b){return this.aLo(a,b)}, +aLo(a,b){var s=0,r=A.p(t.H),q,p=this +var $async$IO=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=3 +return A.i(A.ds(p.a,"/proxy/"+a.b,A.cSl(b,null)),$async$IO) +case 3:q=d +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$IO,r)}, +gaDL(){var s=this.pM(B.i5),r=this.pM(B.i4),q=this.pM(B.i3),p=A.a([],t.CF) +if(s!=null)p.push(s) +if(r!=null)p.push(r) +if(q!=null)p.push(q) +return p}, +Fq(a){var s=0,r=A.p(t.H),q=this,p,o,n,m,l,k +var $async$Fq=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=t.W,o=t.uz,n=0 +case 2:if(!(n<3)){s=4 +break}m=B.JD[n] +l=a.$3(m,q.pM(m),new A.cb_(q,m)) +if(!o.b(l)){k=new A.ak($.at,p) +k.a=8 +k.c=l +l=k}s=5 +return A.i(l,$async$Fq) +case 5:case 3:++n +s=2 +break +case 4:return A.n(null,r)}}) +return A.o($async$Fq,r)}, +gV_(){return B.b.ef(this.gaDL(),new A.caZ())}, +sV_(a){this.Fq(new A.caY(a))}, +gabi(){var s=this.gaDL(),r=t.iR +if(A.cJc(s,new A.cb2(),r))r=B.h4 +else r=A.cJc(s,new A.cb3(),r)?B.i6:null +return r}, +sabi(a){this.Fq(new A.cb1(a))}, +aAs(a){var s=this.pM(B.i5) +if((s==null?null:s.c)!==a){s=this.pM(B.i4) +if((s==null?null:s.c)!==a){s=this.pM(B.i3) +s=(s==null?null:s.c)===a}else s=!0}else s=!0 +return s}, +gaH7(){var s,r=this,q=r.b +if(q===$){s=A.cFp(r.a,A.dvM(),r.gaJa(),r.gaLn(),t.iR,t.l8) +r.b!==$&&A.a_() +r.b=s +q=s}return q}, +gaDM(){var s,r,q=this,p=q.c +if(p===$){s=t.Bf +r=A.Pe(q.a,A.R(new A.O(B.JD,new A.cb4(),s),!0,s.h("aa.E")),t.z) +q.c!==$&&A.a_() +q.c=r +p=r}return p}, +gaeh(){var s,r=this,q=r.d +if(q===$){s=A.ax3(r.gaDM(),new A.caU(r),new A.caV(r),t.y) +r.d!==$&&A.a_() +r.d=s +q=s}return q}, +gael(){var s,r=this,q=r.e +if(q===$){s=A.ax3(r.gaDM(),new A.caW(r),new A.caX(r),t.xp) +r.e!==$&&A.a_() +r.e=s +q=s}return q}, +a_h(a){return this.gaH7().$1(a)}} +A.cb0.prototype={ +$1(a){var s=J.ao(a),r=A.di(A.ax(s.i(a,"address")),0,null),q=A.lk(s.i(a,"enabled")) +s=A.cCg(B.Qm,s.i(a,"mode"),t.uX,t.N) +if(s==null)s=B.h4 +return new A.i0(r,q===!0,s)}, +$S:1516} +A.cb_.prototype={ +$1(a){return this.a.IO(this.b,a)}, +$S:1517} +A.caZ.prototype={ +$1(a){return a.b}, +$S:264} +A.caY.prototype={ +$3(a,b,c){if(b!=null)c.$1(new A.aK5(b).$1$enabled(this.a))}, +$S:263} +A.cb2.prototype={ +$1(a){return a.c===B.h4}, +$S:264} +A.cb3.prototype={ +$1(a){return a.c===B.i6}, +$S:264} +A.cb1.prototype={ +$3(a,b,c){if(b!=null)c.$1(new A.aK5(b).$1$mode(this.a))}, +$S:263} +A.cb4.prototype={ +$1(a){return"/proxy/"+a.b}, +$S:454} +A.caU.prototype={ +$0(){return this.a.gV_()}, +$S:3} +A.caV.prototype={ +$1(a){this.a.sV_(a) +return a}, +$S:4} +A.caW.prototype={ +$0(){return this.a.gabi()}, +$S:1520} +A.caX.prototype={ +$1(a){this.a.sabi(a) +return a}, +$S:1521} +A.abS.prototype={ +dL(a,b){return A.abR(B.e.au(b.wO()),B.e.au(b.wO()),B.e.au(b.wO()),b.aEk(),B.bF)}, +eU(a,b,c){b.x3(c.a) +b.x3(c.b) +b.x3(c.c) +b.ie(c.d)}, +gv(a){return B.d.gv(2)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.abS&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 2}} +A.ab6.prototype={ +dL(a,b){var s=b.f+4 +if(s>b.e)A.C(A.b8("Not enough bytes available.")) +b.f=s +return B.vN[b.b.getInt32(s-4,!0)]}, +eU(a,b,c){var s,r=c.a +A.a5(r,null) +if(b.b.length-b.d<4)b.a_(4) +s=b.c +if(s==null)s=b.c=A.fe(b.b.buffer,0,null) +s.setInt32(b.d,r,!0) +b.d+=4}, +gv(a){return B.d.gv(1)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.ab6&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 1}} +A.a9J.prototype={ +dL(a,b){return new A.V(b.wO(),b.wO())}, +eU(a,b,c){b.x3(c.a) +b.x3(c.b)}, +gv(a){return B.d.gv(0)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.a9J&&A.I(this)===A.I(b)&&!0 +else s=!0 +return s}, +gf_(){return 0}} +A.a6k.prototype={$iaC:1} +A.a3V.prototype={ +gXr(){var s=A.dU(this.b,this.d,t.Cm) +return s==null?null:J.ie(s,t.S)}, +gad(a){var s=this.gXr() +return(s==null?null:s.gA(s)===0)!==!1}, +gcU(a){return!this.gad(0)}, +sxh(a){var s=this +A.ds(s.b,s.f,a) +s.w.ab() +s.x.ab()}, +ga06(){var s=A.dU(this.b,this.f,t.S) +if(s==null)return null +return this.d3(0,s)}, +am_(a){var s=A.dU(this.b,this.e+"/"+a,t.z) +if(s==null)return s +else return this.r.a.$1(B.aO.pf(0,s,null))}, +d3(a,b){var s=this.y +if(s!=null)return s.$2(b,this.gb1J()) +return this.am_(b)}, +i(a,b){return this.d3(0,b)}, +F4(a,b){return this.bhB(a,b)}, +bhB(a,b){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$F4=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p=""+a +o=q.b +n=q.e+"/" +s=b==null?2:4 +break +case 2:s=5 +return A.i(A.ds(o,n+p,b),$async$F4) +case 5:s=3 +break +case 4:s=6 +return A.i(A.ds(o,n+p,B.aO.yT(q.r.b.$1(b),null)),$async$F4) +case 6:case 3:if(A.dU(o,q.f,t.S)===a)q.w.ab() +q.x.ab() +return A.n(null,r)}}) +return A.o($async$F4,r)}, +df(a,b,c){return this.aKH(0,b,c)}, +aKH(a,b,c){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$df=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:n=p.z +s=n!=null?3:4 +break +case 3:o=n.$3(b,c,p.gbhA()) +s=5 +return A.i(t.uz.b(o)?o:A.dO(o,t.H),$async$df) +case 5:case 4:q=p.F4(b,c) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$df,r)}, +n(a,b,c){return this.df(0,b,c)}, +B(a,b){var s,r=this,q=r.b,p=r.c,o=A.dU(q,p,t.S) +if(o==null)o=0 +A.ds(q,p,o+1) +s=r.gXr() +if(s==null)s=A.a([],t.t) +J.eQ(s,o) +r.df(0,o,b) +A.ds(q,r.d,s) +return o}, +BW(a,b){var s,r=this,q=r.gXr() +if(q==null)return +if(q.F(q,b)){s=r.b +A.ds(s,r.d,q) +if(A.dU(s,r.f,t.S)===b)if(!q.gad(q))r.sxh(q.ga2(q)) +else r.sxh(null) +s.a9m([r.e+"/"+b]) +r.x.ab()}}, +aJf(){var s,r,q,p,o=this.gXr(),n=A.a([],this.$ti.h("D<+id,row(h,1)>")) +if(o==null)return n +for(s=A.z(o),r=new A.bj(o,o.gA(o),s.h("bj")),s=s.h("a2.E");r.t();){q=r.d +if(q==null)q=s.a(q) +p=this.d3(0,q) +if(p!=null)n.push(new A.ah5(q,p))}return n}, +gaH8(){var s,r=this,q=r.Q +if(q===$){s=A.cFp(r.b,new A.blr(r),new A.bls(r),new A.blt(r),r.$ti.c,t.S) +r.Q!==$&&A.a_() +r.Q=s +q=s}return q}, +gPu(){var s,r=this,q=r.as +if(q===$){s=A.ax3(r.x,r.gaJe(),null,r.$ti.h("x<+id,row(h,1)>")) +r.as!==$&&A.a_() +r.as=s +q=s}return q}, +ga_j(){var s,r=this,q=r.at +if(q===$){s=A.ax3(r.w,new A.blu(r),null,t.bo) +r.at!==$&&A.a_() +r.at=s +q=s}return q}, +gPv(){var s,r=this,q=r.ax +if(q===$){s=A.ax3(r.w,new A.blv(r),null,r.$ti.h("1?")) +r.ax!==$&&A.a_() +r.ax=s +q=s}return q}, +aem(a){return this.gaH8().$1(a)}} +A.blr.prototype={ +$1(a){return this.a.e+"/"+a}, +$S:104} +A.bls.prototype={ +$1(a){return this.a.d3(0,a)}, +$S(){return this.a.$ti.h("1?(h)")}} +A.blt.prototype={ +$2(a,b){this.a.df(0,a,b) +return b}, +$S(){return this.a.$ti.h("1?(h,1?)")}} +A.blu.prototype={ +$0(){var s=this.a +return A.dU(s.b,s.f,t.S)}, +$S:1523} +A.blv.prototype={ +$0(){return this.a.ga06()}, +$S(){return this.a.$ti.h("1?()")}} +A.aSl.prototype={} +A.mS.prototype={ +eZ(){var s=this +return A.a1(["path",s.a,"opacity",s.b,"repeat",s.c,"antialias",s.d],t.N,t.z)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.mS&&A.I(r)===A.I(b)&&r.a===b.a&&r.b===b.b&&r.c===b.c&&r.d===b.d +else s=!0 +return s}, +gv(a){var s=this +return A.ad(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)}, +k(a){return A.hj(A.cNV(this))}} +A.kL.prototype={ +W0(a,b,c){var s,r +if(this.c&&!0)a=A.cAQ(a,c) +if(this.b&&b){s=0.21*(a.gj(a)>>>16&255)+0.71*(a.gj(a)>>>8&255)+0.07*(a.gj(a)&255) +a=A.Y(a.gj(a)>>>24&255,B.e.au((a.gj(a)>>>16&255)*0+s),B.e.au((a.gj(a)>>>8&255)*0+s),B.e.au((a.gj(a)&255)*0+s))}r=this.d +return r<1?A.Y(B.e.aF(255*((a.gj(a)>>>24&255)/255*r)),a.gj(a)>>>16&255,a.gj(a)>>>8&255,a.gj(a)&255):a}, +btm(a,b){return this.W0(a,!1,b)}, +eZ(){var s=this +return A.a1(["showTeachers",s.a,"grayOutTakenLessons",s.b,"harmonizeWithThemeColor",s.c,"alpha",s.d],t.N,t.z)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.kL&&A.I(r)===A.I(b)&&r.a===b.a&&r.b===b.b&&r.c===b.c&&r.d===b.d +else s=!0 +return s}, +gv(a){var s=this +return A.ad(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)}} +A.WM.prototype={ +$4$alpha$grayOutTakenLessons$harmonizeWithThemeColor$showTeachers(a,b,c,d){var s=this,r=J.q(d,B.l)||d==null?s.a.a:A.j2(d),q=J.q(b,B.l)||b==null?s.a.b:A.j2(b),p=J.q(c,B.l)||c==null?s.a.c:A.j2(c) +return new A.kL(r,q,p,J.q(a,B.l)||a==null?s.a.d:A.f0(a))}, +$0(){return this.$4$alpha$grayOutTakenLessons$harmonizeWithThemeColor$showTeachers(B.l,B.l,B.l,B.l)}, +$1$alpha(a){return this.$4$alpha$grayOutTakenLessons$harmonizeWithThemeColor$showTeachers(a,B.l,B.l,B.l)}, +$1$harmonizeWithThemeColor(a){return this.$4$alpha$grayOutTakenLessons$harmonizeWithThemeColor$showTeachers(B.l,B.l,a,B.l)}, +$1$grayOutTakenLessons(a){return this.$4$alpha$grayOutTakenLessons$harmonizeWithThemeColor$showTeachers(B.l,a,B.l,B.l)}, +$1$showTeachers(a){return this.$4$alpha$grayOutTakenLessons$harmonizeWithThemeColor$showTeachers(B.l,B.l,B.l,a)}} +A.Wc.prototype={} +A.jg.prototype={ +H(){return"DisplayMode."+this.b}, +aFA(a){return B.vm[this.a+1&1]}} +A.abh.prototype={$iabj:1} +A.MO.prototype={$iabj:1} +A.wW.prototype={ +bzs(a){var s=this.a,r=a.a +if(new A.Ff(B.cZ,t.FH).h4(A.mf(s,A.X(s).c),A.mf(r,A.X(r).c)))return!0 +return!1}, +$iabj:1} +A.bGb.prototype={ +$1(a){return a.a.b.a}, +$S:1524} +A.bGc.prototype={ +$1(a){return!a.bzs(this.a)}, +$S:1525} +A.lP.prototype={ +H(){return"TimetableDayLocMode."+this.b}} +A.f9.prototype={ +lQ(){switch(this.a.a){case 0:var s=this.b +s="TimetableDayLoc.pos("+("TimetablePos(weekIndex:"+s.a+",weekday:"+s.b.k(0)+")")+")" +break +case 1:s=this.c +s.toString +s="TimetableDayLoc.date(DateTime("+A.b7(s)+","+A.bp(s)+","+A.cL(s)+"))" +break +default:s=null}return s}, +hI(){var s,r +switch(this.a.a){case 0:s=this.b.hI() +break +case 1:s=$.vh() +s=$.an.U$.z.i(0,s) +s.toString +r=this.c +r.toString +s=s.a0(t.L).r.a +s===$&&A.b() +s=$.h2().i(0,s) +s=(s==null?$.es():s).gPq().d4(r) +break +default:s=null}return s}, +eZ(){return A.dhb(this)}, +D6(a){var s +switch(this.a.a){case 0:s=this.b +s=a.b[s.a].c[s.b.a] +break +case 1:s=this.c +s.toString +s=a.aIz(s) +break +default:s=null}return s}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.f9&&A.I(s)===A.I(b)&&s.a===b.a&&J.q(s.c,b.c)&&J.q(s.b,b.b)}, +gv(a){var s=this.b +s.toString +return A.ad(this.a,s,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)}, +k(a){var s +switch(this.a.a){case 0:s=this.b +s.toString +break +case 1:s=this.c +s.toString +break +default:s=null}return J.cw(s)}} +A.bQn.prototype={ +$2(a,b){if(b!=null)this.a.n(0,a,b)}, +$S:41} +A.jz.prototype={ +k(a){return this.lQ()}} +A.mG.prototype={ +H(){return"TimetablePatchType."+this.b}, +FW(a,b,c,d){return this.bsL(0,b,c,d,this.$ti.h("1?"))}, +bsL(a,b,c,d,e){var s=0,r=A.p(e),q,p=this,o +var $async$FW=A.l(function(f,g){if(f===1)return A.m(g,r) +while(true)switch(s){case 0:o=p.d.$3(b,c,d) +s=3 +return A.i(t.L0.b(o)?o:A.dO(o,t.z),$async$FW) +case 3:q=g +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$FW,r)}} +A.dY.prototype={} +A.mF.prototype={ +eZ(){var s=A.a1(["name",this.a,"patches",this.b],t.N,t.z) +s.n(0,"type","patchSet") +return s}, +lQ(){var s=J.dP(this.b,new A.bMC(),t.N) +return'TimetablePatchSet(name:"'+this.a+'",patches:'+A.r(A.R(s,!1,A.z(s).h("aa.E")))+")"}, +gdI(a){return this.a}, +gfe(){return this.b}} +A.bMC.prototype={ +$1(a){return a.lQ()}, +$S:455} +A.a03.prototype={ +gdI(a){return A.w("timetable.patch.builtin."+this.a,null,null)}, +eZ(){var s=A.a1(["name",this.gdI(0),"patches",this.b],t.N,t.z) +s.n(0,"type","patchSet") +return s}, +lQ(){var s=this.b,r=A.X(s).h("O<1,f>") +return"BuiltinTimetablePatchSet(patches:"+A.r(A.R(new A.O(s,new A.b7m(),r),!1,r.h("aa.E")))+")"}, +k(a){return this.lQ()}, +$ijz:1, +$imF:1, +gfe(){return this.b}} +A.b7m.prototype={ +$1(a){return a.lQ()}, +$S:455} +A.pD.prototype={ +gbl(a){return B.jT}, +eZ(){var s=this.a +if(s==null)s=A.N(t.N,t.z) +J.id(s,"type","unknown") +return s}, +lQ(){return"TimetableUnknownPatch(legacy:"+A.r(this.a)+")"}, +hI(){return A.w("unknown",null,null)}} +A.lQ.prototype={ +gbl(a){return B.m4}, +eZ(){var s=A.a1(["all",this.a],t.N,t.z) +s.n(0,"type","removeDay") +return s}, +lQ(){var s=this.a,r=A.X(s).h("O<1,f>") +return"TimetableRemoveDayPatch(loc:"+A.r(A.R(new A.O(s,new A.bMG(),r),!0,r.h("aa.E")))+")"}, +hI(){var s=this.a,r=t.N +return A.w("timetable.patch.removeDay",null,A.a1(["day",new A.O(s,new A.bME(),A.X(s).h("O<1,f>")).bQ(0,", ")],r,r))}} +A.bMF.prototype={ +$1(a){return new A.N4(this.a,this.b,null)}, +$S:1527} +A.bMG.prototype={ +$1(a){return a.lQ()}, +$S:456} +A.bME.prototype={ +$1(a){return a.hI()}, +$S:456} +A.mE.prototype={ +gbl(a){return B.m5}, +eZ(){var s=A.a1(["source",this.a,"target",this.b],t.N,t.z) +s.n(0,"type","moveDay") +return s}, +lQ(){return"TimetableMoveDayPatch(source:"+this.a.lQ()+",target:"+this.b.lQ()+",)"}, +hI(){var s=t.N +return A.w("timetable.patch.moveDay",null,A.a1(["source",this.a.hI(),"target",this.b.hI()],s,s))}} +A.bMm.prototype={ +$1(a){return new A.MU(this.a,this.b,null)}, +$S:1529} +A.ns.prototype={ +gbl(a){return B.m3}, +eZ(){var s=A.a1(["source",this.a,"target",this.b],t.N,t.z) +s.n(0,"type","copyDay") +return s}, +hI(){var s=t.N +return A.w("timetable.patch.copyDay",null,A.a1(["source",this.a.hI(),"target",this.b.hI()],s,s))}, +lQ(){return"TimetableCopyDayPatch(source:"+this.a.lQ()+",target:"+this.b.lQ()+")"}} +A.bLZ.prototype={ +$1(a){return new A.MQ(this.a,this.b,null)}, +$S:1530} +A.nt.prototype={ +gbl(a){return B.m2}, +eZ(){var s=A.a1(["a",this.a,"b",this.b],t.N,t.z) +s.n(0,"type","swapDays") +return s}, +hI(){var s=t.N +return A.w("timetable.patch.swapDays",null,A.a1(["a",this.a.hI(),"b",this.b.hI()],s,s))}, +lQ(){return"TimetableSwapDayPatch(a:"+this.a.lQ()+",b:"+this.b.lQ()+")"}} +A.bMW.prototype={ +$1(a){return new A.N7(this.a,this.b,null)}, +$S:1531} +A.bQo.prototype={ +$2$name$patches(a,b){var s +if(J.q(a,B.l)||a==null){s=this.a +s=s.gdI(s)}else{A.ax(a) +s=a}return new A.mF(s,J.q(b,B.l)||b==null?this.a.gfe():t.Hj.a(b))}, +$0(){return this.$2$name$patches(B.l,B.l)}, +$1$patches(a){return this.$2$name$patches(B.l,a)}, +$1$name(a){return this.$2$name$patches(a,B.l)}} +A.bQp.prototype={ +$1(a){return A.cN3(t.a.a(a))}, +$S:1532} +A.bQq.prototype={ +$1(a){return A.WO(t.a.a(a))}, +$S:1533} +A.coq.prototype={ +$1(a){var s=J.ao(a),r=s.i(a,"light") +return new A.cM(new A.v(s.i(a,"dark")>>>0),new A.v(r>>>0))}, +$S:1534} +A.cor.prototype={ +$1(a){var s=a.b,r=a.a,q=t.z +return A.a1(["light",s.gj(s),"dark",r.gj(r)],q,q)}, +$S:1535} +A.hb.prototype={ +eZ(){var s=this +return A.a1(["name",s.a,"author",s.b,"colors",A.cPM(s.c),"lastModified",s.d.wX()],t.N,t.z)}, +gdI(a){return this.a}, +gtZ(){return this.b}, +ghQ(){return this.c}, +gabC(a){return this.d}} +A.bMt.prototype={ +$1(a){var s=this.a,r=s.adP() +return new A.cM(new A.v(s.adP()),new A.v(r))}, +$S:1536} +A.iN.prototype={ +gdI(a){var s=A.w("timetable.p13n.palette.builtin."+this.b+".name",null,null) +return s}, +gtZ(){return this.d}, +gabC(a){return new A.am(Date.now(),!1)}, +eZ(){return A.a1(["id",this.a,"author",this.gtZ(),"colors",A.cPM(this.e)],t.N,t.z)}, +$ihb:1, +ghQ(){return this.e}} +A.aEC.prototype={ +Zq(a,b){var s,r,q +if(J.h3(a.ghQ()))return B.x3 +this.azo$.i(0,a) +s=this.aXD(a) +r=b.c +q=s.i(0,r) +return q==null?J.aS(a.ghQ(),B.d.M(Math.abs(B.c.gv(r)),J.bn(a.ghQ()))):q}, +aXD(a){var s,r,q=t.ex,p=A.R(a.ghQ(),!0,q),o=A.N(t.N,q) +for(q=J.au(J.GW(this.gbl(this).r));q.t();){s=q.gK(q) +if(p.length===0)break +s=s.c +r=B.d.M(Math.abs(B.c.gv(s)),p.length) +o.n(0,s,p[r]) +B.b.fE(p,r)}return o}} +A.cfh.prototype={ +gbl(a){return this.a}} +A.WP.prototype={ +$4$author$colors$lastModified$name(a,b,c,d){var s,r,q,p,o=this +if(J.q(d,B.l)||d==null){s=o.a +s=s.gdI(s)}else{A.ax(d) +s=d}r=J.q(a,B.l)||a==null?o.a.gtZ():A.ax(a) +q=J.q(b,B.l)||b==null?o.a.ghQ():t.cq.a(b) +if(J.q(c,B.l)||c==null){p=o.a +p=p.gabC(p)}else{t.d.a(c) +p=c}return new A.hb(s,r,q,p)}, +$0(){return this.$4$author$colors$lastModified$name(B.l,B.l,B.l,B.l)}, +$1$lastModified(a){return this.$4$author$colors$lastModified$name(B.l,B.l,a,B.l)}, +$2$lastModified$name(a,b){return this.$4$author$colors$lastModified$name(B.l,B.l,a,b)}, +$1$name(a){return this.$4$author$colors$lastModified$name(B.l,B.l,B.l,a)}, +$3$author$colors$name(a,b,c){return this.$4$author$colors$lastModified$name(a,b,B.l,c)}, +$2$colors$name(a,b){return this.$4$author$colors$lastModified$name(B.l,a,B.l,b)}} +A.b0N.prototype={} +A.fD.prototype={ +hI(){return A.w("timetable.weekOrderedName",A.a([B.d.k(this.a+1)],t.s),null)+" "+A.w("weekday."+this.b.a,null,null)}, +eZ(){return A.a1(["weekIndex",this.a,"weekday",this.b],t.N,t.z)}, +l(a,b){if(b==null)return!1 +return b instanceof A.fD&&A.I(this)===A.I(b)&&this.a===b.a&&this.b===b.b}, +gv(a){return A.ad(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)}, +k(a){return new A.aUl(this.b,this.a).a6i(!1)}} +A.aK7.prototype={ +$1$weekIndex(a){var s=J.q(a,B.l)||a==null?this.a.a:A.bZ(a) +return new A.fD(s,this.a.b)}, +$0(){return this.$1$weekIndex(B.l)}} +A.cq1.prototype={ +$1(a){return A.dfw(t.a.a(a))}, +$S:1537} +A.cq2.prototype={ +$1(a){return!(a instanceof A.dY)||a.gbl(a)!==B.jT}, +$S:1538} +A.fA.prototype={ +k(a){var s=this +return A.hj(A.a1(["name",s.a,"startDate",s.b,"schoolYear",s.c,"semester",s.d,"lastModified",s.w,"signature",s.f,"patches",s.y],t.N,t.K))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(b instanceof A.fA)if(A.I(r)===A.I(b))if(r.e===b.e)if(r.x===b.x)if(r.c===b.c)if(r.d===b.d)if(r.a===b.a)if(r.f===b.f)if(r.b.l(0,b.b))if(r.w.l(0,b.w)){s=r.r +s=A.d9F(s,J.GV(s),b.r)&&new A.kk(B.cZ,t.yF).h4(r.y,b.y)}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=J.BK(s.r) +return A.ad(s.a,s.f,s.e,s.c,s.d,s.b,s.w,A.cKr(r.fK(r,new A.bGm(),t.X)),A.cs(s.y),s.x,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +eZ(){var s=this,r=s.b.wX(),q=B.wn.i(0,s.d) +q.toString +return A.a1(["name",s.a,"startDate",r,"schoolYear",s.c,"semester",q,"lastCourseKey",s.e,"signature",s.f,"courses",s.r,"lastModified",s.w.wX(),"version",s.x,"patches",s.y],t.N,t.z)}} +A.bGm.prototype={ +$1(a){return new A.dZ(a.a,a.b)}, +$S:1539} +A.bGl.prototype={ +$1(a){var s=A.ddw(this.a) +return new A.aY(""+s.a,s,t.l1)}, +$S:1540} +A.db.prototype={ +k(a){return"#"+this.a+"("+this.b+": "+this.f+")"}, +eZ(){var s,r,q,p=this,o=B.QU.i(0,p.e) +o.toString +s=p.w +r=t.N +q=t.z +return A.a1(["courseKey",p.a,"courseName",p.b,"courseCode",p.c,"classCode",p.d,"campus",o,"place",p.f,"weekIndices",p.r,"timeslots",A.a1(["end",s.a,"start",s.b],r,q),"courseCredit",p.x,"dayIndex",p.y,"teachers",p.z,"hidden",p.Q],r,q)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.db&&A.I(s)===A.I(b)&&s.a===b.a&&s.b===b.b&&s.c===b.c&&s.e===b.e&&s.f===b.f&&s.r.l(0,b.r)&&s.w.l(0,b.w)&&s.x===b.x&&s.y===b.y&&new A.kk(B.cZ,t.pe).h4(s.z,b.z)&&s.Q===b.Q}, +gv(a){var s=this +return A.ad(s.a,s.b,s.c,s.e,s.f,s.r,s.w,s.x,s.y,A.cs(s.z),s.Q,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.uN.prototype={ +H(){return"TimetableWeekIndexType."+this.b}} +A.jA.prototype={ +gaBu(){var s=this.b +return s.b===s.a}, +hI(){var s,r=this.b,q=r.b +if(this.gaBu())return A.w("timetable.weekIndexType.of.single",A.a([""+(q+1)],t.s),null) +else{s=t.N +return A.w("timetable.weekIndexType.of."+this.a.b,null,A.a1(["start",""+(q+1),"end",""+(r.a+1)],s,s))}}, +l(a,b){if(b==null)return!1 +return b instanceof A.jA&&A.I(this)===A.I(b)&&this.a===b.a&&this.b.l(0,b.b)}, +gv(a){return A.ad(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)}, +eZ(){var s,r,q,p=B.Qz.i(0,this.a) +p.toString +s=this.b +r=t.N +q=t.z +return A.a1(["type",p,"range",A.a1(["end",s.a,"start",s.b],r,q)],r,q)}} +A.uO.prototype={ +hI(){var s=this.a,r=A.X(s).h("O<1,f>") +return A.R(new A.O(s,new A.bMY(),r),!0,r.h("aa.E"))}, +aJu(){var s,r,q,p,o,n,m,l,k=A.b9(t.S) +for(s=this.a,r=s.length,q=0;qq)return null +r=B.d.aD(A.cp(0,0,0,q-r,0,0).a,864e8) +if(r>140)return null +s=B.d.aD(r,7) +if(s<0||s>=20)return null +return this.b[s].c[B.d.M(r,7)]}, +gbl(a){return this.a}} +A.aED.prototype={ +aVb(a,b){var s,r,q +for(s=this.c,r=0;r<7;++r){q=s[r] +q.a!==$&&A.ck() +q.a=this}}, +gCv(){return B.b.lF(this.c,new A.bGk())}, +k(a){return A.r(this.c)}, +i(a,b){return this.c[b.a]}, +n(a,b,c){this.c[b.gzo(b)]=c +return c}} +A.bGk.prototype={ +$1(a){return a.gCv()}, +$S:1545} +A.oz.prototype={ +k(a){var s=this.a +s===$&&A.b() +s=s.gud() +return""+A.b7(s)+"/"+A.bp(s)+"/"+A.cL(s)+" "+A.r(this.b)}} +A.V5.prototype={ +gaWf(){var s,r,q=this,p=q.d +if(p===$){s=q.c +s=A.cxA(new A.O(s,new A.bGd(),A.X(s).h("O<1,x>")),t.A3) +s=A.nb(s,new A.bGe(),s.$ti.h("B.E"),t.Ct) +r=A.hh(s,A.z(s).h("B.E")) +q.d!==$&&A.a_() +q.d=r +p=r}return p}, +gud(){var s,r=this.a +r===$&&A.b() +s=r.a +s===$&&A.b() +return A.cTT(s.a.b,r.b,B.cf[B.d.M(this.b,7)])}, +aV9(a,b){var s,r,q +for(s=t.j5,r=new A.x4(this.c,s),r=new A.bj(r,r.gA(0),s.h("bj")),s=s.h("a2.E");r.t();){q=r.d +if(q==null)q=s.a(q) +q.a!==$&&A.ck() +q.a=this}}, +gCv(){return B.b.lF(this.c,new A.bGj())}, +V(a){var s,r,q +for(s=this.c,r=s.length,q=0;q")),!0,t.Jk) +for(k=i.length,j=A.X(i).h("O<1,x>"),s=t.A3,r=0;r")))}return i}, +ab_(){var s,r,q +for(s=this.c,r=s.length,q=0;q")),!0,t.A3))}, +$S:1549} +A.bGf.prototype={ +$1(a){var s=a.a,r=this.a,q=r.i(0,s) +if(q==null)q=new A.bQl(s).$1$parts(A.a([],t.qW)) +if(r.i(0,s)==null)r.n(0,s,q) +return new A.bQm(a).$1$type(q)}, +$S:1550} +A.bGh.prototype={ +$1(a){return a.b}, +$S:458} +A.bGi.prototype={ +$1(a){return a.a===this.a.a}, +$S:1551} +A.a9I.prototype={ +k(a){var s=this.c,r=J.cz(s) +return this.b.b+" "+A.cQr(J.xK(r.ga2(s)).b)+" => "+A.cQr(J.xK(r.gP(s)).a)}} +A.i3.prototype={ +gDb(a){var s,r,q,p,o=this,n=o.d,m=o.c +if(m===$){s=o.a.a +s===$&&A.b() +m=o.c=s}s=o.a +r=s.a +r===$&&A.b() +if(m===r&&n!=null)return n +else{q=r.gud() +r=s.b +p=A.b22(r.e,r.f)[o.b] +o.c=s.a +s=p.a +s=q.B(0,A.cp(0,s.a,0,0,s.b,0)) +r=p.b +return o.d=new A.ia(q.B(0,A.cp(0,r.a,0,0,r.b,0)),s)}}, +k(a){return"["+this.b+"] "+this.a.k(0)}} +A.bGa.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i=this +if(t.EQ.b(a))for(s=J.au(a.gfe());s.t();)i.$1(s.gK(s)) +else if(a instanceof A.lQ)for(s=a.a,r=s.length,q=i.a,p=0;p")),!0,t.on),B.bV,0,4),p,p,o,p,s,p)}, +bow(){var s=null +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,s,s,s,A.E(A.w("school.course.displayable",s,s),s,s,s,s,s),s,A.jy(new A.ceU(this),!this.gXm(0)),s)}, +hm(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.c +f.toString +s=g.a.d +s=s==null?null:s.a +if(s==null)s=0 +r=g.gIi().a.a +q=g.gIh().a.a +p=g.gIg().a.a +o=g.r +if(o===$){n=g.a.d +o=n==null?null:n.e +o=g.r=o==null?$.cn.I().gbpJ():o}n=g.ga_g().a.a +m=g.gPd() +l=g.gqI() +k=g.z +if(k===$){j=g.a.d +k=j==null?null:j.x +k=g.z=k==null?0:k}j=g.gayi() +i=g.gOQ() +h=g.gXm(0) +f=A.cc(f).c +f===$&&A.b() +f.dB(new A.db(s,r,q,p,o,n,m,l,k,j,i,h))}, +Vl(a,b,c){var s=null +return new A.aA(new A.af(10,10,10,10),A.Av(!0,s,!1,A.Zp(),a,A.md(s,B.pr,s,s,s,s,s,s,!b,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,c,s,s,s,s,s,s,s,s,s,s,s,s,s),!0,s,s,s,1,!1,s,s,s,b,s,s),s)}, +bph(a,b){return this.Vl(a,!1,b)}} +A.cfe.prototype={ +$0(){var s=this.a,r=s.gIi().a.a,q=s.a.d +if(r!==(q==null?null:q.b))s.C(new A.cfd(s))}, +$S:0} +A.cfd.prototype={ +$0(){var s=this.a +return s.ax=B.V.da(s.ax,!0)}, +$S:0} +A.cff.prototype={ +$0(){var s=this.a,r=s.gIh().a.a,q=s.a.d +if(r!==(q==null?null:q.c))s.C(new A.cfc(s))}, +$S:0} +A.cfc.prototype={ +$0(){var s=this.a +return s.ax=B.V.da(s.ax,!0)}, +$S:0} +A.cfg.prototype={ +$0(){var s=this.a,r=s.gIg().a.a,q=s.a.d +if(r!==(q==null?null:q.d))s.C(new A.cfb(s))}, +$S:0} +A.cfb.prototype={ +$0(){var s=this.a +return s.ax=B.V.da(s.ax,!0)}, +$S:0} +A.cfa.prototype={ +$1(a){var s=null,r=a.a,q=this.a +return A.ri(A.E(A.w("weekday."+r,s,s),s,s,s,s,s),new A.cf9(q,a),q.gayi()===r,!1)}, +$S:1553} +A.cf9.prototype={ +$1(a){var s=this.a +s.C(new A.cf8(s,this.b)) +s.ax=B.V.da(s.ax,!0)}, +$S:4} +A.cf8.prototype={ +$0(){this.a.as=this.b.a}, +$S:0} +A.cf7.prototype={ +$1(a){var s=B.e.au(a.a),r=B.e.au(a.b),q=this.a +if(!J.q(q.gqI().b,s)||!J.q(q.gqI().a,r)){q.C(new A.cf6(q,r,s)) +q.ax=B.V.da(q.ax,!0)}}, +$S:290} +A.cf6.prototype={ +$0(){this.a.y=new A.ia(this.b,this.c)}, +$S:0} +A.cf_.prototype={ +$0(){var s=this.a,r=A.R(s.gPd().a,!0,t.r5) +r.push(B.btN) +s.C(new A.ceZ(s,r)) +s.ax=B.V.da(s.ax,!0)}, +$S:0} +A.ceZ.prototype={ +$0(){this.a.x=new A.uO(this.b)}, +$S:0} +A.cf0.prototype={ +$2(a,b){var s=this.a +return new A.LF(new A.ca(a,t.zm),b,new A.ceX(s,a),new A.ceY(s,a),null)}, +$S:1554} +A.ceX.prototype={ +$1(a){var s=this.a,r=A.R(s.gPd().a,!0,t.r5) +r[this.b]=a +s.C(new A.ceW(s,r)) +s.ax=B.V.da(s.ax,!0)}, +$S:1555} +A.ceW.prototype={ +$0(){this.a.x=new A.uO(this.b)}, +$S:0} +A.ceY.prototype={ +$0(){var s=this.a +s.C(new A.ceV(s,this.b)) +s.ax=B.V.da(s.ax,!0)}, +$S:0} +A.ceV.prototype={ +$0(){var s=this.a,r=A.R(s.gPd().a,!0,t.r5) +B.b.fE(r,this.b) +s.x=new A.uO(r)}, +$S:0} +A.cf4.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.a +m=n.c +m.toString +s=3 +return A.i(A.vQ(m,A.aai("school.course.teacher",2,null),""),$async$$0) +case 3:o=b +if(o!=null&&!B.b.p(n.gOQ(),o)){if(n.c==null){s=1 +break}n.C(new A.cf3(n,o)) +n.ax=B.V.da(n.ax,!0)}case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cf3.prototype={ +$0(){this.a.gOQ().push(this.b)}, +$S:0} +A.cf5.prototype={ +$1(a){var s=null +return new A.DK(A.E(a,s,s,s,s,s),new A.cf2(this.a,a),s)}, +$S:1556} +A.cf2.prototype={ +$0(){var s=this.a +s.C(new A.cf1(s,this.b)) +s.ax=B.V.da(s.ax,!0)}, +$S:0} +A.cf1.prototype={ +$0(){B.b.F(this.a.gOQ(),this.b)}, +$S:0} +A.ceU.prototype={ +$1(a){var s=this.a +s.C(new A.ceT(s,a)) +s.ax=B.V.da(s.ax,!0)}, +$S:4} +A.ceT.prototype={ +$0(){this.a.Q=!this.b}, +$S:0} +A.LF.prototype={ +q(a){var s,r,q,p=this,o=null,n=A.bc(a)===B.y?B.cs:B.cF +n=A.Vw(new A.bBU(p.f),n) +s=p.d +r=A.E(s.hI(),o,o,o,o,o) +s=s.b +q=s.b +s=s.a +return A.WE(A.aX(!1,o,o,o,!0,o,o,o,o,!0,o,o,o,o,o,o,o,o,!1,o,o,A.dd(A.a([A.cLi(19,new A.a7B(""+(B.d.aF(q)+1),""+(B.d.aF(s)+1)),19,new A.bBV(p),new A.kn(q,s)),A.nl(A.R(new A.O(B.II,new A.bBW(p),t.Ze),!0,t.Vo),B.bV,0,4)],t.p),B.a4,o,B.o,B.Z),o,o,r,o,o,o),p.c,n)}} +A.bBU.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.a.$0() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bBV.prototype={ +$1(a){var s=B.e.au(a.a),r=B.e.au(a.b),q=this.a,p=q.d,o=p.b +if(!J.q(o.b,s)||!J.q(o.a,r)){o=s===r?B.ii:p.a +q.e.$1(new A.aK8(p).$2$range$type(new A.ia(r,s),o))}}, +$S:290} +A.bBW.prototype={ +$1(a){var s=null,r=A.E(A.w("timetable.weekIndexType."+a.b,s,s),s,s,s,s,s),q=this.a,p=q.d +q=a!==B.ii&&p.gaBu()?s:new A.bBT(q,a) +return A.ri(r,q,p.a===a,s)}, +$S:1557} +A.bBT.prototype={ +$1(a){var s=this.a +s.e.$1(new A.aK8(s.d).$1$type(this.b))}, +$S:4} +A.wY.prototype={ +J(){return new A.ajH(new A.aR(null,t.am),B.f)}} +A.ajH.prototype={ +gpI(){var s,r,q=this.e +if(q===$){s=this.a.c +r=$.ae() +q!==$&&A.a_() +q=this.e=new A.eZ(new A.cu(s.a,B.bz,B.aw),r)}return q}, +gx7(){var s,r,q=this.f +if(q===$){s=this.a.c +r=$.ae() +q!==$&&A.a_() +q=this.f=new A.bm(s.b,r,t.i7)}return q}, +gpJ(){var s,r,q=this.r +if(q===$){s=this.a.c +r=$.ae() +q!==$&&A.a_() +q=this.r=new A.eZ(new A.cu(s.f,B.bz,B.aw),r)}return q}, +gyy(){var s=this.w +return s===$?this.w=A.rB(this.a.c.r,t.N,t.Ct):s}, +gaBJ(){var s=this.x +return s===$?this.x=this.a.c.e:s}, +a8(){var s=this +s.an() +s.gpI().a3(0,new A.cjL(s)) +s.gx7().a3(0,new A.cjM(s)) +s.gpJ().a3(0,new A.cjN(s))}, +m(){var s=this,r=s.gpI(),q=r.k3$=$.ae() +r.k2$=0 +r=s.gx7() +r.k3$=q +r.k2$=0 +r=s.gpJ() +r.k3$=q +r.k2$=0 +s.ap()}, +q(a){var s,r=this,q=null,p=r.z,o=r.giG(),n=A.E(A.w("timetable.import.timetableInfo",q,q),q,q,q,q,q),m=t.p +n=A.a([A.i4(A.a([A.e8(A.E(A.w("preview",q,q),q,q,q,q,q),r.gpz()),A.e8(A.E(A.w("save",q,q),q,q,q,q,q),o)],m),q,q,q,!1,n)],m) +if(r.y===0)B.b.L(n,r.boC()) +else B.b.L(n,r.bnJ()) +n=A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,n) +s=r.y +return new A.mq(p,o,A.bW(q,q,n,A.cKh(A.a([A.cy9(B.azJ,A.w("timetable.edit.tab.info",q,q),B.azr),A.cy9(B.uT,A.w("timetable.edit.tab.advanced",q,q),B.uP)],m),new A.cjH(r),s),q,q,q),q)}, +boC(){var s,r,q,p,o=this,n=null,m=o.a7U(),l=A.ddx(m),k=t.p,j=A.aum(n,A.cS(A.a([new A.aA(new A.af(10,10,10,10),A.Av(!0,n,!1,A.Zp(),o.gpI(),A.md(n,B.pr,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,n,n,n,n,n,n,n,n,n,n,A.w("timetable.edit.name",n,n),n,n,n,n,n,n,n,n,n,n,n,n,n),!0,n,n,n,1,!1,n,n,n,!1,n,n),n)],k),B.t,n,B.o,B.u,n,n,B.x),o.d),i=o.bpa(),h=A.E(A.w("timetable.signature",n,n),n,n,n,n,n) +h=A.a([j,i,A.aX(!1,n,n,n,!0,n,n,n,n,!0,n,B.l0,n,n,n,n,n,n,!1,n,n,A.Fz(!0,B.bF,!1,n,!0,B.k,n,A.Ov(),o.gpJ(),n,n,n,n,n,2,A.md(n,n,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,n,A.w("timetable.signaturePlaceholder",n,n),n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n),B.m,!0,n,!0,n,!1,n,n,n,n,n,n,n,n,1,n,n,!1,"\u2022",n,n,n,n,n,!1,n,!1,n,!0,n,B.ec,n,n,B.cY,B.cA,n,n,n,n,n,n,n,B.ah,n,B.fk,n,n,n,n),n,n,h,n,n,n)],k) +if(l.length!==0){j=o.c +j.toString +i=A.a([A.aX(!1,n,n,n,!0,n,n,n,n,!1,n,A.b2(A.bc(j)===B.y?B.akP:B.DW,n,n,n,n,n,n,n,n,n,n),n,n,n,n,n,n,!1,n,n,n,n,n,A.E(A.w("timetable.issue.title",n,n),n,n,n,n,n),n,n,n)],k) +o.c.toString +s=t.Ae +r=A.R(new A.cv(l,s),!0,s.h("B.E")) +s=t.jN +q=A.R(new A.cv(l,s),!0,s.h("B.E")) +s=t.wA +p=A.R(new A.cv(l,s),!0,s.h("B.E")) +s=A.a([],k) +if(r.length!==0)s.push(new A.abi(n)) +if(q.length!==0)s.push(new A.abf(q,m,new A.cjD(o),n)) +if(p.length!==0)s.push(new A.abg(p,m,n)) +B.b.L(i,s) +B.b.L(h,i)}return A.a([A.eI(h)],k)}, +bnJ(){var s,r,q,p=t.N,o=A.u_(this.gyy().gbm(0),new A.cjz(),t.Ct,p),n=o.gep(o).eO(0) +A.Sj(n,new A.cjA(),t.Pw,p) +for(o=n.length,s=0;s"))) +q=A.dd(q,B.a4,j,B.o,B.Z) +return A.WE(A.aX(!1,j,j,j,!b.Q,j,j,j,j,!0,j,s,j,j,j,j,j,j,!1,j,j,q,j,j,r,j,A.du(j,A.b2(A.bc(d)===B.y?B.d1:B.d2,j,j,j,j,j,j,j,j,j,j),j,new A.bMd(this.a,d,b),B.L),B.ip),new A.ca(e,t.zm),c)}, +$S:1568} +A.bMb.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.a.$1(q.b) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bMc.prototype={ +$1(a){var s=null +return A.E(a,s,s,s,s,s)}, +$S:268} +A.bMd.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.c +s=3 +return A.i(A.fo(p.b,new A.bMa(o),!0,!1,t.Ct),$async$$0) +case 3:n=b +if(n==null){s=1 +break}p.a.f.$2(o,n) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bMa.prototype={ +$1(a){return new A.ut(A.w("timetable.edit.editCourse",null,null),this.a,B.Ys,null)}, +$S:141} +A.MS.prototype={ +J(){return new A.aYu(B.ahS,B.ahX,B.f)}} +A.aYu.prototype={ +q(a){var s=this,r=null,q=A.E(A.w("timetable.export.title",r,r),r,r,r,r,r),p=t.p +return A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([A.i4(A.a([s.boo()],p),r,r,r,!1,q),A.eI(A.a([s.boO(),B.bp,s.bnN(),s.bnM(),s.bnL(),s.bnK()],p))],p)),s.boq(),r,r,!1)}, +boq(){return null}, +boo(){var s=null +return A.e8(A.E(A.w("timetable.export.export",s,s),s,s,s,s,s),new A.ck1(this))}, +boO(){var s=this,r=null,q=A.E(A.w("timetable.export.lessonMode.title",r,r),r,r,r,r,r),p=A.nl(A.a([A.ri(A.E(A.w("timetable.export.lessonMode.merged",r,r),r,r,r,r,r),new A.ck4(s),s.r,r),A.ri(A.E(A.w("timetable.export.lessonMode.separate",r,r),r,r,r,r,r),new A.ck5(s),!s.r,r)],t.GG),B.bV,0,4),o=s.r?A.w("timetable.export.lessonMode.mergedTip",r,r):A.w("timetable.export.lessonMode.separateTip",r,r),n=s.c +n.toString +return A.aX(!1,r,r,r,!0,r,r,r,r,!0,r,B.uP,r,r,r,r,r,r,!1,r,r,p,r,r,q,r,new A.aA(new A.af(8,8,8,8),A.FH(A.b2(A.bc(n)===B.y?B.kX:B.nK,r,r,r,r,r,r,r,r,r,r),r,r,o,r,r,r,B.qo,r),r),r)}, +bnN(){var s=null,r=A.E(A.w("timetable.export.enableAlarm.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.uO,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.export.enableAlarm.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.ck0(this),this.d),s)}, +bnM(){var s=this,r=null,q=s.d,p=A.E(A.w("timetable.export.alarmMode.title",r,r),r,r,r,r,r),o=A.E(A.w("timetable.export.alarmMode.sound",r,r),r,r,r,r,r),n=s.w,m=!s.d?r:new A.cjY(s) +n=A.ri(o,m,!n,r) +m=A.E(A.w("timetable.export.alarmMode.display",r,r),r,r,r,r,r) +o=s.w +return A.aX(!1,r,r,r,q,r,r,r,r,!0,r,r,r,r,r,r,r,r,!1,r,r,A.nl(A.a([n,A.ri(m,!s.d?r:new A.cjZ(s),o,r)],t.GG),B.bV,0,4),r,r,p,r,r,r)}, +bnL(){var s,r=this,q=null,p=r.d&&!r.w,o=A.E(A.w("timetable.export.alarmDuration",q,q),q,q,q,q,q),n=A.E(A.w("time.minuteFormat",A.a([B.d.k(B.d.aD(r.e.a,6e7))],t.s),q),q,q,q,q,q),m=r.c +m.toString +s=A.b2(A.bc(m)===B.y?B.d1:B.d2,q,q,q,q,q,q,q,q,q,q) +return A.aX(!1,q,q,q,p,q,q,q,q,!1,q,q,q,q,q,q,q,!r.d?q:new A.cjV(r),!1,q,q,n,q,q,o,q,s,q)}, +bnK(){var s,r,q=this,p=null,o=q.d,n=A.E(A.w("timetable.export.alarmBeforeClassBegins.title",p,p),p,p,p,p,p),m=t.N +m=A.E(A.w("timetable.export.alarmBeforeClassBegins.desc",p,A.a1(["duration",A.w("time.minuteFormat",A.a([B.d.k(B.d.aD(q.f.a,6e7))],t.s),p)],m,m)),p,p,p,p,p) +s=!q.d?p:new A.cjT(q) +r=q.c +r.toString +return A.aX(!1,p,p,p,o,p,p,p,p,!1,p,p,p,p,p,p,p,s,!1,p,p,m,p,p,n,p,A.b2(A.bc(r)===B.y?B.d1:B.d2,p,p,p,p,p,p,p,p,p,p),p)}} +A.ck1.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.a +m=n.c +m.toString +p=n.d?new A.aUw(n.f,n.e,n.w):null +o=m.a0(t.L).r.a +o===$&&A.b() +n=n.r +m=A.cc(m).c +m===$&&A.b() +m.dB(new A.aUx(p,n,o)) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.ck4.prototype={ +$1(a){var s=this.a +s.C(new A.ck3(s))}, +$S:4} +A.ck3.prototype={ +$0(){this.a.r=!0}, +$S:0} +A.ck5.prototype={ +$1(a){var s=this.a +s.C(new A.ck2(s))}, +$S:4} +A.ck2.prototype={ +$0(){this.a.r=!1}, +$S:0} +A.ck0.prototype={ +$1(a){var s=this.a +s.C(new A.ck_(s,a))}, +$S:4} +A.ck_.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.cjY.prototype={ +$1(a){var s=this.a +s.C(new A.cjX(s))}, +$S:4} +A.cjX.prototype={ +$0(){this.a.w=!1}, +$S:0} +A.cjZ.prototype={ +$1(a){var s=this.a +s.C(new A.cjW(s))}, +$S:4} +A.cjW.prototype={ +$0(){this.a.w=!0}, +$S:0} +A.cjV.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.a +n=o.c +n.toString +s=2 +return A.i(A.ctM(n,o.e),$async$$0) +case 2:p=b +if(p!=null)o.C(new A.cjU(o,p)) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cjU.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.cjT.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.a +n=o.c +n.toString +s=2 +return A.i(A.ctM(n,o.f),$async$$0) +case 2:p=b +if(p!=null)o.C(new A.cjS(o,p)) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cjS.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.Jv.prototype={ +H(){return"ImportStatus."+this.b}} +A.Jw.prototype={ +J(){return new A.afb(B.aA8,B.f)}} +A.afb.prototype={ +gwn(){var s=this.y +return s===$?this.y=A.cSq():s}, +a8(){this.an()}, +q(a){var s=this,r=null,q=s.x,p=A.E(A.w("timetable.import.title",r,r),r,r,r,r,r),o=A.a([A.e8(A.E(A.w("timetable.import.fromFileBtn",r,r),r,r,r,r,r),s.gbyq())],t.p) +p=A.jb(o,r,!0,r,q!==B.nO?r:B.de,1,r,r,r,!1,r,!1,r,r,r,r,!0,r,r,r,r,r,p,r,r,r,1,r) +return A.bW(p,r,A.b3H(s.w?s.boA(B.bvM):s.bo6(a,B.bvL)),r,r,r,r)}, +ux(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$ux=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.c +n.toString +s=3 +return A.i(A.am8(n),$async$ux) +case 3:o=b +if(o==null){s=1 +break}n=p.c +if(n==null){s=1 +break}s=4 +return A.i(A.am5(n,o,!1),$async$ux) +case 4:o=b +if(o==null){s=1 +break}n=p.c +if(n==null){s=1 +break}n=A.cc(n).c +n===$&&A.b() +n.dB(o) +case 1:return A.n(q,r)}}) +return A.o($async$ux,r)}, +bo6(a,b){var s=A.bC(a,null,t.l).w.gnU(0)===B.dw?180:120 +return new A.a0V(s,A.w("timetable.import.connectivityCheckerDesc",null,null),new A.c2i(this),B.a_1,$.aGA.I().gawL(),b)}, +bpk(a){var s,r=null +switch(this.x.a){case 0:s=A.w("timetable.import.selectSemesterTip",r,r) +break +case 1:s=A.w("timetable.import.importing",r,r) +break +case 2:s=A.w("timetable.import.endTip",r,r) +break +case 3:s=A.w("timetable.import.failedTip",r,r) +break +default:s=r}return A.b3H(A.E(s,new A.ca(this.x,t.mO),r,r,A.G(a).p3.r,r))}, +boA(a){var s,r,q=this,p=null,o=q.gc6().dl($.e2.I().gt9(),t.ue),n=q.c +n.toString +n=A.iW(q.bpk(n),0,30) +s=A.iW(A.cyV(A.cBw(o==null?p:o.a),q.gwn(),new A.c2k(q)),0,30) +q.c.toString +r=q.x===B.nO?p:q.gbbC() +return A.dd(A.a([n,s,new A.aA(new A.af(24,24,24,24),new A.aBv(r,A.E(A.w("timetable.import.tryImportBtn",p,p),p,p,p,p,p),p),p)],t.Vu),B.t,a,B.cu,B.u)}, +N8(a,b){return this.bxV(a,b)}, +bxV(a,b){var s=0,r=A.p(t.rd),q,p=this,o,n,m,l,k,j,i +var $async$N8=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:m=b.gMK() +l=b.b +k=t.N +j=A.w("timetable.import.defaultName",null,A.a1(["semester",A.w("school.semester."+l.b,null,null),"yearStart",B.d.k(m),"yearEnd",B.d.k(m+1)],k,k)) +i=p.bvy(m,l) +s=p.gc6().d8(0,$.e2.I().gDm(),t.lo)===B.e0?3:4 +break +case 3:s=b.l(0,A.cSq())?5:6 +break +case 5:s=7 +return A.i($.aGA.I().Af(),$async$N8) +case 7:o=d +if(o!=null)i=o.b +case 6:case 4:a=new A.kv(a).$5$name$schoolYear$semester$signature$startDate(j,m,l,A.dU($.cn.I().a,"/settings/lastSignature",k),i) +k=p.c +if(k==null){q=null +s=1 +break}s=8 +return A.i(A.am5(k,a,!1),$async$N8) +case 8:n=d +if(n!=null){q=n +s=1 +break}q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$N8,r)}, +bvy(a,b){var s +if(b===B.eM){s=A.cd(a,9,1,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +return A.cSw(new A.am(s,!1),1)}else{s=A.cd(a+1,2,1,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +return A.cSw(new A.am(s,!1),1)}}, +aae(a){return this.bvU(a)}, +bvU(a){var s=0,r=A.p(t.Q5),q,p=this,o,n +var $async$aae=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=p.gc6().d8(0,$.e2.I().gDm(),t.lo) +$label0$0:{if(B.e0===n){o=$.aGA.I().yZ(a) +break $label0$0}if(B.h1===n){o=$.aGA.I().yY(a) +break $label0$0}if(B.po===n)A.C(A.dA("Timetable importing not supported")) +o=A.C(A.dA("Timetable importing not supported"))}q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$aae,r)}, +EP(){var s=0,r=A.p(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c +var $async$EP=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:m.C(new A.c2d(m)) +p=4 +g=m.z +l=g===$?m.z=m.gwn():g +s=7 +return A.i(m.aae(l),$async$EP) +case 7:k=b +if(m.c==null){n=[1] +s=5 +break}m.C(new A.c2e(m)) +s=8 +return A.i(m.N8(k,l),$async$EP) +case 8:j=b +f=m.c +if(f==null){n=[1] +s=5 +break}f=A.cc(f).c +f===$&&A.b() +f.dB(j) +n.push(6) +s=5 +break +case 4:p=3 +c=o +i=A.ag(c) +h=A.aD(c) +A.fk().$1(J.cw(i)) +A.crE(null,null,h) +m.C(new A.c2f(m)) +f=m.c +if(f==null){n=[1] +s=5 +break}d=A.w("timetable.import.failed",null,null) +s=9 +return A.i(A.kS(f,A.w("timetable.import.failedDesc",null,null),A.w("ok",null,null),!1,d),$async$EP) +case 9:n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +if(m.x===B.nO)m.C(new A.c2g(m)) +s=n.pop() +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$EP,r)}} +A.c2i.prototype={ +$0(){var s=this.a +if(s.c==null)return +s.C(new A.c2h(s))}, +$S:0} +A.c2h.prototype={ +$0(){this.a.w=!0}, +$S:0} +A.c2k.prototype={ +$1(a){var s=this.a +s.C(new A.c2j(s,a))}, +$S:258} +A.c2j.prototype={ +$0(){this.a.z=this.b}, +$S:0} +A.c2d.prototype={ +$0(){this.a.x=B.nO}, +$S:0} +A.c2e.prototype={ +$0(){this.a.x=B.Ep}, +$S:0} +A.c2f.prototype={ +$0(){this.a.x=B.aA9}, +$S:0} +A.c2g.prototype={ +$0(){this.a.x=B.Ep}, +$S:0} +A.ctj.prototype={ +$1(a){return new A.wY(this.a,null)}, +$S:1570} +A.MX.prototype={ +J(){return new A.aYx(B.f)}} +A.b2Z.prototype={ +$1(a){var s=a.dl($.eL.I().a.gPv(),t.rd) +return s==null?null:A.aEB(s)}, +$S:1571} +A.aYx.prototype={ +q(a){var s=this.gc6().dl($.cUr(),t.hB),r=this.gc6().dl($.eL.I().a.ga_j(),t.bo) +if(s==null||r==null)return B.RR +else return A.FG(null,new A.abe(r,s,null),null)}} +A.Kx.prototype={ +J(){return new A.agi(new A.fh(0,!0,null,null,null,A.a([],t.ZP),$.ae()),B.f)}} +A.agi.prototype={ +q(a){var s,r,q,p=this,o=null,n="timetable.mine.title",m=$.eL.I().a,l=p.gc6().dl(m.gPu(),t.Jf),k=p.gc6().dl(m.ga_j(),t.bo),j=J.cz(l) +j.iL(l,new A.c7J()) +s=t.p +r=A.a([],s) +if($.cn.I().gX0())r.push(p.a7M()) +else r.push(A.du(o,B.nM,o,new A.c7K(a),o)) +q=p.w +s=A.a([],s) +if(j.gad(l))s.push(A.ju(r,!0,o,o,!1,!1,!1,A.E(A.w(n,o,o),o,o,o,o,o),o)) +else s.push(A.i4(r,o,o,o,!1,A.E(A.w(n,o,o),o,o,o,o,o))) +if(j.gad(l))s.push(A.oA(A.kj(A.w("timetable.mine.emptyTip",o,o),B.ayo,o,p.gafa(),o))) +else s.push(A.hs(new A.c7L(l,k),j.gA(l))) +j=A.cD(B.k,q,B.m,o,o,o,!1,o,B.v,s) +s=A.bv(A.cBG(a)?A.w("timetable.import.fromFile",o,o):A.w("timetable.import.import",o,o),o,o,o,o,o,o,o,o,o,o,o,o,o,o) +return A.bW(o,o,j,o,A.cEY(q,A.b2(A.bc(a)===B.y?B.f3:B.f6,o,o,o,o,o,o,o,o,o,o),s,p.gafa()),o,o)}, +IC(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$IC=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=p.c +m.toString +s=A.cBG(m)?3:5 +break +case 3:s=6 +return A.i(p.ux(),$async$IC) +case 6:s=4 +break +case 5:s=7 +return A.i(p.Xs(),$async$IC) +case 7:case 4:o=b +if(o==null){s=1 +break}n=$.eL.I().a.B(0,o) +if($.cn.I().gk8().gavH())$.eL.I().a.sxh(n) +else{m=$.eL.I().a +if(A.dU(m.b,m.f,t.S)==null)m.sxh(n)}case 1:return A.n(q,r)}}) +return A.o($async$IC,r)}, +Xs(){var s=0,r=A.p(t.rd),q,p=this,o +var $async$Xs=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.c +o.toString +s=3 +return A.i(A.cc(o).fg("/timetable/import",null,t.Q5),$async$Xs) +case 3:q=b +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Xs,r)}, +ux(){var s=0,r=A.p(t.rd),q,p=this,o,n +var $async$ux=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.c +n.toString +s=3 +return A.i(A.am8(n),$async$ux) +case 3:o=b +if(o==null){q=null +s=1 +break}if(p.c==null){q=null +s=1 +break}q=o +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$ux,r)}, +a7M(){return new A.oo(new A.c7H(this,$.cn.I().gX0()),null)}} +A.c7J.prototype={ +$2(a,b){return B.d.bn(b.b.w.a,a.b.w.a)}, +$S:466} +A.c7K.prototype={ +$0(){A.cc(this.a).fg("/timetable/p13n",null,t.X)}, +$S:0} +A.c7L.prototype={ +$2(a,b){var s=this.a,r=J.ao(s),q=r.i(s,b),p=q.a,o=q.b +s=r.fK(s,new A.c7I(),t.N) +return new A.aA(new A.af(6,0,6,0),new A.aGv(o,p,this.b===p,A.R(s,!0,A.z(s).h("aa.E")),null),null)}, +$S:172} +A.c7I.prototype={ +$1(a){return a.b.a}, +$S:1573} +A.c7H.prototype={ +$1(a){var s=null,r=this.a,q=A.a([new A.eW(A.w("timetable.p13n.palette.title",s,s),new A.c7D(r),B.axR),new A.eW(A.w("timetable.p13n.cellStyle.title",s,s),new A.c7E(r),B.uF),new A.eW(A.w("timetable.p13n.background.title",s,s),new A.c7F(r),B.uE)],t.iT),p=this.b +if(p){r=r.c +r.toString +B.b.L(q,A.cRP(r))}q.push(B.kl) +q.push(new A.a7o(p,A.w("timetable.focusTimetable",s,s),new A.c7G(p))) +return q}, +$S:58} +A.c7D.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.c +p.toString +s=2 +return A.i(A.cc(p).fg("/timetable/p13n",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c7E.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.c +p.toString +s=2 +return A.i(A.cc(p).fg("/timetable/cell-style",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c7F.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.c +p.toString +s=2 +return A.i(A.cc(p).fg("/timetable/background",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c7G.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:A.ds($.cn.I().a,"/settings/focusTimetable",!q.a) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.aGv.prototype={ +q(a){var s=this +return A.cI4(new A.bLT(s,a),new A.bLU(s,a),new A.bLV(s),new A.bLW(s),new A.bLX(s),s.e,s.c.a)}, +O5(a,b){return this.bCa(a,b)}, +bCa(a,b){var s=0,r=A.p(t.H),q,p +var $async$O5=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=3 +return A.i(A.fo(a,new A.bLY(b),!0,!1,t.Jn),$async$O5) +case 3:p=d +if(p==null){s=1 +break}if(a.e==null){s=1 +break}s=4 +return A.i(A.b1U(a,p,A.aEB(b)),$async$O5) +case 4:case 1:return A.n(q,r)}}) +return A.o($async$O5,r)}} +A.bLX.prototype={ +$1(a){var s=null,r=A.w("use",s,s) +A.w("used",s,s) +return new A.Dc(r,new A.bLL(this.a))}, +$S:1574} +A.bLL.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:$.eL.I().a.sxh(q.a.d) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLU.prototype={ +$1(a){var s=A.w("delete",null,null),r=A.bc(this.b)===B.y?B.cs:B.cF +return A.cI3(new A.bLM(this.a,a),r,s)}, +$S:467} +A.bLM.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.b +n=A.w("timetable.mine.deleteRequest",null,null) +m=A.w("timetable.mine.deleteRequestDesc",null,null) +s=3 +return A.i(A.yw(o,n,A.w("cancel",null,null),m,!0),$async$$0) +case 3:if(b!==!0){s=1 +break}$.eL.I().a.BW(0,p.a.d) +if($.eL.I().a.gad(0)){if(o.e==null){s=1 +break}o=A.cc(o).c +o===$&&A.b() +o.dB(null)}case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLT.prototype={ +$1(a){var s,r,q,p=null,o=A.a([],t.qd),n=this.a +if(!n.e){s=A.w("preview",p,p) +r=A.bc(a)===B.y?B.hF:B.kY +o.push(new A.jj(r,s,B.hx,!1,B.Yi,new A.bLN(n,a,this.b)))}s=A.w("edit",p,p) +r=this.b +q=A.bc(r)===B.y?B.d1:B.d2 +o.push(new A.jj(q,s,B.kQ,!1,B.Yj,new A.bLO(n,a))) +s=A.w("share",p,p) +q=A.bc(r)===B.y?B.uA:B.uM +o.push(new A.jj(q,s,B.aj6,!1,p,new A.bLP(n,a))) +s=A.w("timetable.mine.exportCalendar",p,p) +q=A.bc(r)===B.y?B.uH:B.ays +o.push(new A.jj(q,s,B.hx,!1,p,new A.bLQ(n,a))) +o.push(new A.jj(B.hE,A.w("timetable.mine.patch",p,p),B.hx,!1,p,new A.bLR(n,a))) +s=A.w("duplicate",p,p) +r=A.bc(r)===B.y?B.dO:B.nI +o.push(new A.jj(r,s,B.hx,!0,B.Yk,new A.bLS(n))) +return o}, +$S:468} +A.bLN.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if(p.b.e==null){s=1 +break}s=3 +return A.i(A.fo(p.c,new A.bLK(p.a),!0,!1,t.z),$async$$0) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLK.prototype={ +$1(a){var s=null +return A.FG(s,new A.FF(this.a.c,s,s),s)}, +$S:176} +A.bLO.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=p.a.d +s=3 +return A.i(A.cc(p.b).fg("/timetable/"+m+"/edit",null,t.Q5),$async$$0) +case 3:l=b +if(l==null){s=1 +break}o=l.a +n=A.cr6(o,null) +if(n!==o)l=new A.kv(l).$1$name(n) +$.eL.I().a.df(0,m,new A.kv(l).$1$lastModified(new A.am(Date.now(),!1))) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLP.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.b1V(q.a.c,q.b),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLQ.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +s=2 +return A.i(p.O5(q.b,p.c),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLR.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +s=2 +return A.i(A.b1S(q.b,p.d,p.c),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLS.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.a +n=o.c +o=A.cSI(n.a,o.f) +p=new A.kv(n).$2$lastModified$name(new A.am(Date.now(),!1),o) +$.eL.I().a.B(0,p) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bLV.prototype={ +$2(a,b){var s=null,r=this.a,q=b==null?s:b.$1(a) +return A.FG(s,new A.aGz(r.d,r.c,q,s),s)}, +$S:1578} +A.bLW.prototype={ +$1(a){return new A.MT(this.a.c,null)}, +$S:1579} +A.bLY.prototype={ +$1(a){return new A.MS(null)}, +$S:1580} +A.MT.prototype={ +q(a){var s,r,q=null,p=A.G(a).p3,o=this.c,n=o.c,m=A.w("school.semester."+o.d.b,q,q) +n=A.a([A.E(o.a,q,q,q,p.r,q),A.E(""+n+"\u2013"+(n+1)+", "+m,q,q,q,p.w,q)],t.LT) +s=o.f +if(s.length!==0)n.push(A.E(s,q,q,q,p.z,q)) +s=A.w("timetable.startWith",q,q) +r=a.a0(t.L).r.a +r===$&&A.b() +r=$.h2().i(0,r) +n.push(A.E(s+" "+(r==null?$.es():r).gx4().d4(o.b),q,q,q,p.z,q)) +return A.dd(n,B.a4,q,B.o,B.u)}} +A.aGz.prototype={ +hO(a,b){var s,r,q,p,o,n,m,l,k=null,j=b.dl($.eL.I().a.aem(this.e),t.rd) +if(j==null)j=this.f +s=b.dl($.eL.I().b.gPv(),t.jo) +if(s==null)s=B.my +r=A.u_(J.GW(j.r),new A.bM8(),t.Ct,t.N) +q=r.gep(r).eO(0) +p=a.a0(t.Jg).f +r=j.a +o=A.i4(this.r,k,k,k,!1,A.FB(r)) +n=A.E(A.w("timetable.edit.name",k,k),k,k,k,k,k) +n=A.aX(!1,k,k,k,!0,k,k,k,k,!1,k,B.l0,k,k,k,k,k,k,!1,k,k,A.E(r,k,k,k,k,k),k,k,n,k,k,k) +r=A.E(A.w("timetable.startWith",k,k),k,k,k,k,k) +m=a.a0(t.L).r.a +m===$&&A.b() +m=$.h2().i(0,m) +r=A.aX(!1,k,k,k,!0,k,k,k,k,!1,k,B.azS,k,k,k,k,k,k,!1,k,k,A.E((m==null?$.es():m).gx4().d4(j.b),k,k,k,k,k),k,k,r,k,k,k) +m=A.E(A.w("timetable.signature",k,k),k,k,k,k,k) +l=t.p +l=A.a([o,A.eI(A.a([n,r,A.aX(!1,k,k,k,!0,k,k,k,k,!1,k,B.l0,k,k,k,k,k,k,!1,k,k,A.E(j.f,k,k,k,k,k),k,k,m,k,k,k)],l))],l) +if(q.length!==0)l.push(B.ic) +l.push(A.hs(new A.bM9(q,new A.cfh(j,A.N(t.Vw,t.qy)),s,a,p),q.length)) +return A.bW(k,k,A.cD(B.k,k,B.m,k,k,k,!1,k,B.v,l),k,k,k,k)}} +A.bM8.prototype={ +$1(a){return a.c}, +$S:174} +A.bM9.prototype={ +$2(a,b){var s=this,r=s.a[b].b,q=J.jD(r),p=A.apu(s.b.Zq(s.c,q),A.G(s.d)) +return new A.VW(q.b,q.c,q.d,r,s.e.b.btm(p,A.G(a).ay.b),null)}, +$S:1581} +A.MN.prototype={ +J(){var s,r=null,q=new A.ajE(r,r,B.f),p=$.cn.I().gk8().gyj(0),o=p==null +q.d=o?r:p.a +s=o?r:p.b +q.f=s==null?1:s +s=o?r:p.c +q.r=s!==!1 +o=o?r:p.d +q.w=o!==!1 +return q}} +A.ajE.prototype={ +a8(){var s,r=this +r.an() +s=A.bQ(null,null,null,1,r.f,r) +r.x!==$&&A.ck() +r.x=s}, +m(){var s=this.x +s===$&&A.b() +s.m() +this.aUh()}, +q(a){var s,r=this,q=null,p=r.d,o=J.q(r.aw2(),$.cn.I().gk8().gyj(0)),n=r.giG(),m=A.E(A.w("timetable.p13n.background.title",q,q),q,q,q,q,q),l=o?q:n,k=t.p +m=A.i4(A.a([A.e8(A.E(A.w("save",q,q),q,q,q,q,q),l)],k),q,q,q,!1,m) +l=A.a([new A.aA(new A.af(10,0,10,0),A.m4(r.boX(),B.k,q,q),q),new A.aA(new A.af(0,4,0,4),r.bpn(),q)],k) +if(p!=null){$.eN.I().gnS(0) +s=!0}else s=!1 +if(s){s=A.E(A.w("timetable.p13n.background.selectedImage",q,q),q,q,q,q,q) +l.push(A.aX(!1,q,q,q,!0,q,q,q,q,!1,q,q,q,q,q,q,q,q,!1,q,q,A.E(p,q,q,q,q,q),q,q,s,q,q,q))}l.push(r.boR()) +l.push(r.bp4()) +l.push(r.bnP()) +return new A.mq(!o,n,A.bW(q,q,A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,A.a([m,A.eI(l)],k)),q,q,q,q),q)}, +hm(){var s=0,r=A.p(t.H),q=this +var $async$hm=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.YA(),$async$hm) +case 2:return A.n(null,r)}}) +return A.o($async$hm,r)}, +YA(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$YA=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=p.aw2() +if(m==null){$.cn.I().gk8().syj(0,m) +o=p.c +o.toString +o=A.cc(o).c +o===$&&A.b() +o.dB(null) +s=1 +break}o=m.a +$.cn.I().gk8().syj(0,m) +n=p.c +n.toString +s=3 +return A.i(A.cTP(new A.ws(o,1,null),n),$async$YA) +case 3:o=p.c +if(o==null){s=1 +break}o=A.cc(o).c +o===$&&A.b() +o.dB(m) +case 1:return A.n(q,r)}}) +return A.o($async$YA,r)}, +Vw(){var s=0,r=A.p(t.H),q=this +var $async$Vw=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(q.Nl(),$async$Vw) +case 2:return A.n(null,r)}}) +return A.o($async$Vw,r)}, +Nl(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k +var $async$Nl=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:k=p.c +k.toString +o=A.w("timetable.p13n.background.imageURL",null,null) +n=p.d +s=3 +return A.i(A.vQ(k,o,n==null?"":n),$async$Nl) +case 3:m=b +if(m==null){s=1 +break}l=A.x5(m) +if(p.c==null){s=1 +break}if(l!=null)k=!l.zt("http")&&!l.zt("https") +else k=!0 +s=k?4:5 +break +case 4:k=p.c +k.toString +o=A.w("timetable.p13n.background.invalidURL",null,null) +s=6 +return A.i(A.kS(k,A.w("timetable.p13n.background.invalidURLDesc",null,null),A.w("ok",null,null),!1,o),$async$Nl) +case 6:s=1 +break +case 5:p.C(new A.ciT(p,l)) +case 1:return A.n(q,r)}}) +return A.o($async$Nl,r)}, +aw2(){var s=this,r=s.d +if(r==null)return null +return new A.mS(r,s.f,s.r,s.w)}, +bpn(){var s,r,q=this,p=null,o=q.c +o.toString +s=A.NH(A.b2(A.bc(o)===B.y?B.akK:B.ayz,p,p,p,p,p,p,p,p,p,p),A.E(A.w("choose",p,p),p,p,p,p,p),q.gawP()) +o=q.d==null?p:new A.ciS(q) +r=q.c +r.toString +return A.i1(A.a([s,A.cOE(A.b2(A.bc(r)===B.y?B.cs:B.cF,p,p,p,p,p,p,p,p,p,p),A.E(A.w("delete",p,p),p,p,p,p,p),o)],t.wF),B.t,B.fW,B.u)}, +boX(){var s,r,q,p=this,o=null,n=p.c +n.toString +s=A.bC(n,o,t.l).w.a.b/3 +r=p.d +q=p.w?B.bC:B.hB +if(r!=null){n=p.x +n===$&&A.b() +return A.cK8(new A.z4(A.bBY(o,o,new A.ws(r,1,o)),o,o,o,o,s,o,n,q,o,o,B.C,B.ce,!1,o,!1,o),r)}else{n=A.w("timetable.p13n.background.pickTip",o,o) +return new A.ba(o,s,A.kj(n,B.axH,o,p.gawP(),o),o)}}, +aLg(a){var s +this.C(new A.ciU(this,a)) +s=this.x +s===$&&A.b() +s.z=B.b_ +s.kn(a,B.H,B.cC)}, +boR(){var s=null,r=this.f,q=A.E(A.w("timetable.p13n.background.opacity",s,s),s,s,s,s,s),p=""+B.e.au(r*100)+"%",o=A.E(p,s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!0,s,B.E9,s,s,s,s,s,s,!1,s,s,A.bGu(255,s,p,1,0,s,s,new A.ciO(this),r),s,s,q,s,o,s)}, +bp4(){var s=null,r=A.E(A.w("timetable.p13n.background.repeat.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.azn,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.p13n.background.repeat.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.ciQ(this),this.r),s)}, +bnP(){var s=null,r=A.E(A.w("timetable.p13n.background.antialias.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.azB,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.p13n.background.antialias.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.ciN(this),this.w),s)}} +A.ciT.prototype={ +$0(){this.a.d=this.b.k(0)}, +$S:0} +A.ciS.prototype={ +$0(){var s=this.a +s.C(new A.ciR(s))}, +$S:0} +A.ciR.prototype={ +$0(){var s=this.a +s.e=s.d=null}, +$S:0} +A.ciU.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.ciO.prototype={ +$1(a){this.a.aLg(a)}, +$S:26} +A.ciQ.prototype={ +$1(a){var s=this.a +s.C(new A.ciP(s,a))}, +$S:4} +A.ciP.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.ciN.prototype={ +$1(a){var s=this.a +s.C(new A.ciM(s,a))}, +$S:4} +A.ciM.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.alE.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.MP.prototype={ +J(){var s=$.cn.I().gk8().gBG() +return new A.ajF(s==null?B.Cn:s,B.f)}} +A.ajF.prototype={ +q(a){var s=this,r=null,q=J.q($.cn.I().gk8().gBG(),s.LI()),p=s.giG(),o=A.E(A.w("timetable.p13n.cellStyle.title",r,r),r,r,r,r,r),n=q?r:p,m=t.p +return new A.mq(!q,p,A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([A.i4(A.a([A.e8(A.E(A.w("save",r,r),r,r,r,r,r),n)],m),r,r,r,!1,o),new A.ht(A.FG(s.LI(),B.Zk,r),r),A.eI(A.a([s.bpg(),s.bor(),s.bou(),s.bnO()],m))],m)),r,r,r,r),r)}, +hm(){var s,r=this.LI() +$.cn.I().gk8().sBG(r) +s=this.c +if(s==null)return +s=A.cc(s).c +s===$&&A.b() +s.dB(r)}, +LI(){var s=this.d +return new A.kL(s.a,s.b,s.c,s.d)}, +bpg(){var s=null,r=A.E(A.w("timetable.p13n.cellStyle.showTeachers.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.az4,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.p13n.cellStyle.showTeachers.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.cji(this),this.d.a),s)}, +bor(){var s=null,r=A.E(A.w("timetable.p13n.cellStyle.grayOut.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.E5,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.p13n.cellStyle.grayOut.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.cje(this),this.d.b),s)}, +bou(){var s=null,r=A.E(A.w("timetable.p13n.cellStyle.harmonize.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.azs,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.p13n.cellStyle.harmonize.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.cjg(this),this.d.c),s)}, +bnO(){var s=null,r=this.d.d,q=A.E(A.w("timetable.p13n.cellStyle.alpha",s,s),s,s,s,s,s),p=""+B.e.au(r*100)+"%",o=A.E(p,s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!0,s,B.E9,s,s,s,s,s,s,!1,s,s,A.bGu(255,s,p,1,0,s,s,new A.cjc(this),r),s,s,q,s,o,s)}} +A.cji.prototype={ +$1(a){var s=this.a +s.C(new A.cjh(s,a))}, +$S:4} +A.cjh.prototype={ +$0(){var s=this.a +s.d=new A.WM(s.d).$1$showTeachers(this.b)}, +$S:0} +A.cje.prototype={ +$1(a){var s=this.a +s.C(new A.cjd(s,a))}, +$S:4} +A.cjd.prototype={ +$0(){var s=this.a +s.d=new A.WM(s.d).$1$grayOutTakenLessons(this.b)}, +$S:0} +A.cjg.prototype={ +$1(a){var s=this.a +s.C(new A.cjf(s,a))}, +$S:4} +A.cjf.prototype={ +$0(){var s=this.a +s.d=new A.WM(s.d).$1$harmonizeWithThemeColor(this.b)}, +$S:0} +A.cjc.prototype={ +$1(a){var s=this.a +s.C(new A.cjb(s,a))}, +$S:26} +A.cjb.prototype={ +$0(){var s=this.a +s.d=new A.WM(s.d).$1$alpha(this.b)}, +$S:0} +A.AA.prototype={ +J(){return new A.ajJ(null,null,B.f)}} +A.ajJ.prototype={ +a8(){var s,r,q,p=this +p.an() +s=A.cMC(null,0,2,p) +p.w!==$&&A.ck() +p.w=s +r=$.eL.I().b +r=A.dU(r.b,r.f,t.S) +q=p.a.d +if(q!=null)s.Eg(B.d.dV(q,0,1)) +else if(r==null||B.b.ef(B.oB,new A.ckp(r)))s.Eg(1)}, +m(){var s=this.w +s===$&&A.b() +s.m() +this.aUi()}, +q(a){var s,r,q=this,p=null,o=q.gc6().dl($.eL.I().b.gPu(),t.SY),n=A.E(A.w("timetable.p13n.palette.fab",p,p),p,p,p,p,p) +n=A.cIl(A.b2(A.bc(a)===B.y?B.f3:B.f6,p,p,p,p,p,p,p,p,p,p),n,q.gbmd()) +s=q.w +s===$&&A.b() +r=t.H6 +return A.bW(p,p,A.wr(A.VF(A.a([q.awl(o),q.awl(A.R(new A.O(B.oB,new A.ckn(),r),!0,r.h("aa.E")))],t.p),s),!0,new A.cko(q)),p,n,p,p)}, +a78(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$a78=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=A.w("timetable.p13n.palette.newPaletteName",null,null) +o=A.a([],t.Vl) +n=Date.now() +$.eL.I().b.B(0,new A.hb(p,"",o,new A.am(n,!1))) +n=q.w +n===$&&A.b() +n.Eg(0) +return A.n(null,r)}}) +return A.o($async$a78,r)}, +awl(a){var s,r,q=null,p=this.gc6().dl($.eL.I().b.ga_j(),t.bo) +if(p==null)p=-1 +s=this.gc6().dl($.eL.I().a.gPv(),t.rd) +r=J.cz(a) +r.iL(a,new A.ckl()) +return A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,A.a([A.hs(new A.ckm(this,a,s,p),r.gA(a))],t.p))}} +A.ckp.prototype={ +$1(a){return a.a===this.a}, +$S:1582} +A.cko.prototype={ +$2(a,b){var s,r=null,q=a.a0(t.t7).f,p=A.E(A.w("timetable.p13n.palette.title",r,r),r,r,r,r,r),o=this.a.w +o===$&&A.b() +s=t.p +return A.a([new A.pv(q.d,A.ju(r,!0,r,A.VD(o,!0,A.a([A.wN(A.E(A.w("timetable.p13n.palette.tab.custom",r,r),r,r,r,r,r)),A.wN(A.E(A.w("timetable.p13n.palette.tab.builtin",r,r),r,r,r,r,r))],s)),!0,b,!1,p,r),r)],s)}, +$S:57} +A.ckn.prototype={ +$1(a){return new A.ah5(a.a,a)}, +$S:1583} +A.ckl.prototype={ +$2(a,b){return B.d.bn(J.cEw(b.b).a,J.cEw(a.b).a)}, +$S:1584} +A.ckm.prototype={ +$2(a,b){var s=this,r=s.b,q=J.ao(r),p=q.i(r,b),o=p.a,n=p.b +r=q.fK(r,new A.ckj(),t.N) +return new A.aA(new A.af(6,0,6,0),new A.aB1(o,n,s.d===o,s.c,new A.ckk(s.a),A.R(r,!0,A.z(r).h("aa.E")),null),null)}, +$S:172} +A.ckk.prototype={ +$0(){var s=this.a.w +s===$&&A.b() +s.Eg(0)}, +$S:0} +A.ckj.prototype={ +$1(a){return J.d0X(a.b)}, +$S:1585} +A.aB1.prototype={ +q(a){var s=this,r=s.d,q=r.gdI(r) +r=r instanceof A.iN?null:new A.bwq(s,a) +return A.cI4(new A.bwr(s,a,s.f),r,new A.bws(s),new A.bwt(s),new A.bwu(s),s.e,q)}} +A.bwu.prototype={ +$1(a){var s,r=null,q=this.a +if(J.h3(q.d.ghQ()))q=r +else{s=A.w("use",r,r) +A.w("used",r,r) +q=new A.Dc(s,new A.bwl(q))}return q}, +$S:1586} +A.bwl.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:$.eL.I().b.sxh(q.a.c) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bwq.prototype={ +$1(a){var s=A.w("delete",null,null),r=A.bc(this.b)===B.y?B.cs:B.cF +return A.cI3(new A.bwp(this.a,a),r,s)}, +$S:467} +A.bwp.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=A.w("timetable.p13n.palette.deleteRequest",null,null) +s=2 +return A.i(A.yx(q.b,A.w("timetable.p13n.palette.deleteRequestDesc",null,null),!1,A.w("delete",null,null),!0,A.w("cancel",null,null),!1,p),$async$$0) +case 2:if(b===!0)$.eL.I().b.BW(0,q.a.c) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bwr.prototype={ +$1(a){var s,r,q,p=this,o=null,n=A.a([],t.qd),m=p.a,l=m.d +if(!(l instanceof A.iN)){s=A.w("edit",o,o) +r=p.b +q=A.bc(r)===B.y?B.d1:B.d2 +n.push(new A.jj(q,s,B.kQ,!1,B.Yj,new A.bwm(m,r)))}s=p.c +if(s!=null&&J.iL(l.ghQ()))n.push(new A.jj(B.hF,A.w("preview",o,o),B.hx,!1,B.Yi,new A.bwn(m,p.b,s))) +l=A.w("duplicate",o,o) +s=A.bc(p.b)===B.y?B.dO:B.nI +n.push(new A.jj(s,l,B.hx,!0,B.Yk,new A.bwo(m))) +return n}, +$S:468} +A.bwm.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=q.a.c +s=2 +return A.i(A.cc(q.b).fg("/timetable/palette/"+o+"/edit",null,t.Vw),$async$$0) +case 2:n=b +if(n!=null){p=A.cr6(n.gdI(n),null) +if(p!==n.gdI(n))n=new A.WP(new A.WP(n).$2$colors$name(A.R(n.ghQ(),!0,t.ex),p)).$1$lastModified(new A.am(Date.now(),!1)) +$.eL.I().b.df(0,o,n)}return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bwn.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.fo(q.b,new A.bwk(q.a,q.c),!0,!1,t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bwk.prototype={ +$1(a){return A.FG(null,new A.FF(this.b,null,null),this.a.d)}, +$S:176} +A.bwo.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +o=p.d +n=A.cr6(o.gdI(o),p.w) +n=new A.WP(new A.WP(o).$3$author$colors$name(o.gtZ(),A.R(o.ghQ(),!0,t.ex),n)).$1$lastModified(new A.am(Date.now(),!1)) +$.eL.I().b.B(0,n) +p.r.$0() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bws.prototype={ +$2(a,b){var s=this.a,r=b==null?null:b.$1(a) +return new A.Tj(s.c,s.d,r,null)}, +$S:1587} +A.bwt.prototype={ +$1(a){return new A.Tk(this.a.d,null)}, +$S:1588} +A.Tk.prototype={ +q(a){var s=null,r=this.c,q=A.a([A.E(r.gdI(r),s,s,s,A.G(a).p3.r,s)],t.ix) +if(r.gtZ().length!==0)q.push(A.E(r.gtZ(),s,s,s,B.bq5,s)) +q.push(new A.aB2(r.ghQ(),s)) +return A.dd(q,B.a4,s,B.o,B.u)}} +A.Tj.prototype={ +hO(a,b){var s,r,q,p,o=null,n=b.dl($.eL.I().b.aem(this.e),t.jo) +if(n==null)n=this.f +s=A.i4(this.r,o,o,o,!1,A.FB(n.gdI(n))) +r=A.E(A.w("timetable.p13n.palette.name",o,o),o,o,o,o,o) +q=t.p +r=A.a([A.aX(!1,o,o,o,!0,o,o,o,o,!1,o,B.l0,o,o,o,o,o,o,!1,o,o,A.E(n.gdI(n),o,o,o,o,o),o,o,r,o,o,o)],q) +if(n.gtZ().length!==0){p=A.E(A.w("timetable.p13n.palette.author",o,o),o,o,o,o,o) +r.push(A.aX(!1,o,o,o,!0,o,o,o,o,!1,o,B.uQ,o,o,o,o,o,o,!1,o,o,A.E(n.gtZ(),o,o,o,o,o),o,o,p,o,o,o))}if(J.iL(n.ghQ()))r.push(B.bp) +if(J.iL(n.ghQ()))r.push(A.FG(o,B.Zk,n)) +r.push(B.bp) +r.push(B.EK) +return A.bW(o,o,A.cD(B.k,o,B.m,o,o,o,!1,o,B.v,A.a([s,A.eI(r),A.hs(new A.bwz(n),J.bn(n.ghQ()))],q)),o,o,o,o)}} +A.bwz.prototype={ +$2(a,b){return new A.KQ(J.aS(this.a.ghQ(),b),null,null)}, +$S:1589} +A.aB2.prototype={ +q(a){var s=J.dP(this.c,new A.bwy(A.G(a).ay.a),t.y_) +return new A.aA(new A.af(0,4,0,4),A.nl(A.R(s,!0,A.z(s).h("aa.E")),B.bV,4,4),null)}} +A.bwy.prototype={ +$1(a){var s=this.a===B.aN?a.a:a.b +return A.m4(A.bNA(new A.bwx(),B.H,B.aA,new A.fp(s,s),t._),null,null,B.L)}, +$S:1590} +A.bwx.prototype={ +$3(a,b,c){return A.jG(B.YA,null,b,B.L)}, +$S:1591} +A.aGC.prototype={ +q(a){return new A.fV(new A.bMs(this,a),null)}, +boJ(a,b){var s=a.a0(t.Jg).f,r=s.b,q=s.a +return A.d2A(new A.bMq(new A.bMr(new A.bMo(q,a,r,A.G(a).ay.b)),r.b),J.bn(q.ghQ()),A.d2z(!0,B.cl,B.CL,!0,b.b/3,!1,0.24))}} +A.bMs.prototype={ +$2(a,b){var s=b.d +s=isFinite(s)?s:A.bC(this.b,null,t.l).w.a.b/2 +return this.a.boJ(this.b,new A.V(b.b,s))}, +$S:52} +A.bMo.prototype={ +$5$colorId$grayOut$name$place$teachers(a,b,c,d,e){var s=this,r=s.c,q=r.W0(A.apu(A.dfy(s.a,a),A.G(s.b)),b,s.d) +return A.bNA(new A.bMp(c,d,r,e),B.H,B.aA,new A.fp(q,q),t._)}, +$S:1592} +A.bMp.prototype={ +$3(a,b,c){var s,r=this +b.toString +s=r.c.a?r.d:null +return new A.HY(r.a,r.b,s,null,b,null)}, +$S:1593} +A.bMr.prototype={ +$3$colorId$grayOut(a,b,c){var s=null,r="timetable.p13n.livePreview."+a +return this.a.$5$colorId$grayOut$name$place$teachers(b,c,A.w(r+".name",s,s),A.w(r+".place",s,s),A.a(A.w(r+".teachers",s,s).split(","),t.s))}, +$S:1594} +A.bMq.prototype={ +$3(a,b,c){var s=B.d.M(b,4),r=this.b&&s<2 +return new A.aA(new A.af(8,0,8,0),this.a.$3$colorId$grayOut(s,b,r),null)}, +$S:1595} +A.ct2.prototype={ +$1(a){return new A.wZ(this.a,null)}, +$S:1596} +A.alF.prototype={ +m(){var s=this,r=s.ca$ +if(r!=null)r.O(0,s.gjb()) +s.ca$=null +s.ap()}, +cL(){this.dC() +this.dq() +this.jc()}} +A.wZ.prototype={ +J(){return new A.ajK(B.f)}} +A.ajK.prototype={ +gpI(){var s,r,q=this,p=q.w +if(p===$){s=q.a.d +s=s.gdI(s) +r=$.ae() +q.w!==$&&A.a_() +p=q.w=new A.eZ(new A.cu(s,B.bz,B.aw),r)}return p}, +gIf(){var s,r,q=this,p=q.x +if(p===$){s=q.a.d.gtZ() +r=$.ae() +q.x!==$&&A.a_() +p=q.x=new A.eZ(new A.cu(s,B.bz,B.aw),r)}return p}, +ghQ(){var s=this.y +return s===$?this.y=this.a.d.ghQ():s}, +a8(){var s=this +s.an() +s.gpI().a3(0,new A.ckC(s)) +s.gIf().a3(0,new A.ckD(s))}, +m(){var s=this.gpI(),r=$.ae() +s.k3$=r +s.k2$=0 +s=this.gIf() +s.k3$=r +s.k2$=0 +this.ap()}, +q(a){var s,r,q=this,p=null,o=q.gc6().dl($.eL.I().a.gPv(),t.rd),n=q.z,m=A.E(A.w("timetable.p13n.palette.name",p,p),p,p,p,p,p) +m=A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,p,p,p,p,p,p,p,!1,p,p,A.Fz(!0,B.bF,!1,p,!0,B.k,p,A.Ov(),q.gpI(),p,p,p,p,p,2,A.md(p,p,p,p,p,p,p,p,!0,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,A.w("timetable.p13n.palette.namePlaceholder",p,p),p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p),B.m,!0,p,!0,p,!1,p,p,p,p,p,p,p,p,1,p,p,!1,"\u2022",p,p,p,p,p,!1,p,!1,p,!0,p,B.ec,p,p,B.cY,B.cA,p,p,p,p,p,p,p,B.ah,p,B.fk,p,p,p,p),p,p,m,p,p,p) +s=A.E(A.w("timetable.p13n.palette.author",p,p),p,p,p,p,p) +r=t.p +s=A.cD(B.k,p,B.m,p,p,p,!1,p,B.v,A.a([A.eI(A.a([m,A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,p,p,p,p,p,p,p,!1,p,p,A.Fz(!0,B.bF,!1,p,!0,B.k,p,A.Ov(),q.gIf(),p,p,p,p,p,2,A.md(p,p,p,p,p,p,p,p,!0,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,A.w("timetable.p13n.palette.authorPlaceholder",p,p),p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p),B.m,!0,p,!0,p,!1,p,p,p,p,p,p,p,p,1,p,p,!1,"\u2022",p,p,p,p,p,!1,p,!1,p,!0,p,B.ec,p,p,B.cY,B.cA,p,p,p,p,p,p,p,B.ah,p,B.fk,p,p,p,p),p,p,s,p,p,p)],r))],r)) +m=A.hs(q.gbo2(),J.bn(q.ghQ())) +return new A.mq(n,q.giG(),A.bW(p,p,A.a1G(A.wr(A.VF(A.a([s,A.cD(B.k,p,B.m,p,p,p,!1,p,B.v,A.a([B.bn_,m,A.eI(A.a([B.aho,A.aX(!1,p,p,p,!0,p,p,p,p,!1,p,A.b2(A.bc(a)===B.y?B.f3:B.f6,p,p,p,p,p,p,p,p,p,p),p,p,p,p,p,new A.cky(q),!1,p,p,p,p,p,A.E(A.w("timetable.p13n.palette.addColor",p,p),p,p,p,p,p),p,p,p)],r))],r))],r),p),!0,new A.ckz(q,o)),2),p,p,p,p),p)}, +hm(){var s=this.awk(),r=this.c +r.toString +A.cN(r,!1).dB(s)}, +awk(){return new A.hb(this.gpI().a.a,this.gIf().a.a,this.ghQ(),new A.am(Date.now(),!1))}, +bo3(a,b){var s=this,r=J.aS(s.ghQ(),b),q=s.c +q.toString +q=A.bc(q)===B.y?B.cs:B.cF +return A.WE(new A.KQ(r,new A.ckt(s,new A.ckr(s,a,b)),null),new A.KD(r),A.Vw(new A.cku(s,b),q))}} +A.ckC.prototype={ +$0(){var s=this.a,r=s.gpI().a.a,q=s.a.d +if(r!==q.gdI(q))s.C(new A.ckB(s))}, +$S:0} +A.ckB.prototype={ +$0(){var s=this.a +return s.z=B.V.da(s.z,!0)}, +$S:0} +A.ckD.prototype={ +$0(){var s=this.a +if(s.gIf().a.a!==s.a.d.gtZ())s.C(new A.ckA(s))}, +$S:0} +A.ckA.prototype={ +$0(){var s=this.a +return s.z=B.V.da(s.z,!0)}, +$S:0} +A.ckz.prototype={ +$2(a,b){var s=this,r=null,q=a.a0(t.t7).f,p=A.E(A.w("timetable.p13n.palette.title",r,r),r,r,r,r,r),o=t.p,n=A.a([],o),m=s.b +if(m!=null&&J.iL(s.a.ghQ()))n.push(A.e8(A.E(A.w("preview",r,r),r,r,r,r,r),new A.ckw(s.a,a,m))) +n.push(A.e8(A.E(A.w("save",r,r),r,r,r,r,r),s.a.giG())) +return A.a([new A.pv(q.d,A.ju(n,!0,r,A.VD(r,!0,A.a([A.wN(A.E(A.w("timetable.p13n.palette.tab.info",r,r),r,r,r,r,r)),A.wN(A.E(A.w("timetable.p13n.palette.tab.colors",r,r),r,r,r,r,r))],o)),!0,b,!1,p,r),r)],o)}, +$S:57} +A.ckw.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.fo(q.b,new A.ckv(q.a,q.c),!0,!1,t.z),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.ckv.prototype={ +$1(a){return A.FG(null,new A.FF(this.b,null,null),this.a.awk())}, +$S:176} +A.cky.prototype={ +$0(){var s=this.a +s.C(new A.ckx(s)) +s.z=B.V.da(s.z,!0)}, +$S:0} +A.ckx.prototype={ +$0(){J.eQ(this.a.ghQ(),B.x3)}, +$S:0} +A.ckr.prototype={ +aHX(a,b){var s=0,r=A.p(t.H),q=this,p,o +var $async$$2=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=2 +return A.i(A.b2i(q.b,a,!0,!0,!0,B.Qv,!0),$async$$2) +case 2:o=d +s=!o.l(0,a)?3:4 +break +case 3:s=5 +return A.i(A.qb(),$async$$2) +case 5:p=q.a +p.C(new A.cks(p,b,q.c,o)) +case 4:return A.n(null,r)}}) +return A.o($async$$2,r)}, +$2(a,b){return this.aHX(a,b)}, +$S:470} +A.cks.prototype={ +$0(){var s=this,r=s.a,q=s.c,p=s.d +if(s.b===B.ak)J.id(r.ghQ(),q,new A.cM(J.aS(r.ghQ(),q).a,p)) +else J.id(r.ghQ(),q,new A.cM(p,J.aS(r.ghQ(),q).b))}, +$S:0} +A.cku.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +p.C(new A.ckq(p,q.b)) +p.z=B.V.da(p.z,!0) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.ckq.prototype={ +$0(){J.cED(this.a.ghQ(),this.b)}, +$S:0} +A.ckt.prototype={ +$2(a,b){return this.aHY(a,b)}, +aHY(a,b){var s=0,r=A.p(t.H),q=this,p +var $async$$2=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:s=2 +return A.i(q.b.$2(a,b),$async$$2) +case 2:p=q.a +p.z=B.V.da(p.z,!0) +return A.n(null,r)}}) +return A.o($async$$2,r)}, +$S:470} +A.awU.prototype={ +q(a){var s=null,r=t.ix +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,s,s,s,A.i1(A.a([A.i1(A.a([B.uS,A.E(A.w("brightness.light",s,s),s,s,s,s,s)],r),B.t,B.o,B.Z),A.i1(A.a([B.uR,A.E(A.w("brightness.dark",s,s),s,s,s,s,s)],r),B.t,B.o,B.Z)],t.Nb),B.t,B.d7,B.u),s,s,s)}} +A.KQ.prototype={ +q(a){var s=null,r=this.c,q=r.b,p=r.a,o=A.i1(A.a([A.E("#"+A.R0(q),s,s,s,s,s),A.E("#"+A.R0(p),s,s,s,s,s)],t.LT),B.t,B.d7,B.u),n=this.d +return A.aX(!1,s,s,s,!0,s,s,s,s,!0,s,s,s,s,s,s,s,s,!1,s,s,A.i1(A.a([A.f7(new A.a6L(q,B.ak,n,s),1,s),B.bmD,A.f7(new A.a6L(p,B.aN,n,s),1,s)],t.p),B.t,B.fW,B.Z),s,s,o,s,s,B.ip)}} +A.a6L.prototype={ +q(a){var s,r=this,q=null,p=r.e,o=r.d,n=o===B.ak?B.B:B.r,m=p==null?q:new A.bwv(r,p) +o=A.w("brightness."+o.b,q,q) +s=A.G(a).p3.y +return A.m4(A.jG(A.ly(!1,q,!0,new A.ba(q,35,A.nk(A.E(o,q,q,q,s==null?q:s.bu(n),q)),q),q,!0,q,q,q,q,q,q,q,q,q,q,new A.bww(r,a),q,m,q,q,q,q,q,q,q),B.k,r.c,B.L),q,n,B.L)}} +A.bwv.prototype={ +$0(){var s=this.a +this.b.$2(s.c,s.d)}, +$S:0} +A.bww.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.p4(new A.mV("#"+A.R0(p.a.c))),$async$$0) +case 3:o=p.b +if(o.e==null){s=1 +break}A.qK(o,null,A.E(A.w("copyTip",A.a([A.w("timetable.p13n.palette.color",null,null)],t.s),null),null,null,null,null,null),B.aW) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.MZ.prototype={ +J(){return new A.ajL(B.f)}} +A.ajL.prototype={ +gfe(){var s=this.d +return s===$?this.d=A.R(this.a.c.y,!0,t.kO):s}, +q(a){var s=this,r=null,q=s.e,p=s.giG(),o=A.E(A.w("timetable.patch.title",r,r),r,r,r,r,r),n=t.p +n=A.a([A.i4(A.a([A.e8(A.E(A.w("save",r,r),r,r,r,r,r),p),s.BB()],n),r,r,r,!1,o)],n) +if(s.gfe().length===0)n.push(A.oA(A.kj(A.w("timetable.patch.noPatchesTip",r,r),B.hE,r,s.gaCS(),r))) +else n.push(A.cLH(A.cLG(new A.cl1(s),s.gfe().length),new A.cl2(s))) +return new A.mq(q,p,A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,n),A.aoa(new A.ZH(s.a.c,s.ga7a(),r),r,r,B.L,r),r,r,!1),r)}, +hm(){var s,r=this.c +r.toString +s=A.R(this.gfe(),!0,t.kO) +r=A.cc(r).c +r===$&&A.b() +r.dB(s)}, +hz(){var s=0,r=A.p(t.H),q=this,p +var $async$hz=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.c +p.toString +s=2 +return A.i(A.tp(p,new A.kv(q.a.c).$1$patches(A.R(q.gfe(),!0,t.kO))),$async$hz) +case 2:return A.n(null,r)}}) +return A.o($async$hz,r)}, +BB(){return new A.oo(new A.ckL(this),null)}, +YI(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$YI=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.c +n.toString +s=3 +return A.i(A.fo(n,new A.cl3(),!0,!1,t.EQ),$async$YI) +case 3:o=b +if(o==null){s=1 +break}if(p.c==null){s=1 +break}p.UQ(o) +case 1:return A.n(q,r)}}) +return A.o($async$YI,r)}, +a7N(a,b,c){var s,r=this +$label0$0:{if(t.EQ.b(a)){s=new A.W0(a,new A.ckW(r,b,a),new A.ckX(r,a,c,b),null) +break $label0$0}if(a instanceof A.dY){s=r.c +s.toString +s=A.bc(s)===B.y?B.cs:B.cF +s=A.WE(new A.W0(a,new A.ckY(r,a,b),new A.ckZ(r,a,c,b),null),new A.ca(a,t.O4),A.Vw(new A.cl_(r,b),s)) +break $label0$0}s=null}return s}, +UQ(a){var s=this +s.C(new A.ckI(s,a)) +s.e=B.V.da(s.e,!0)}, +wS(a){var s=this +s.C(new A.cl4(s,a)) +s.e=B.V.da(s.e,!0)}} +A.cl2.prototype={ +$2(a,b){var s=this.a +s.C(new A.cl0(s,a,b)) +s.e=B.V.da(s.e,!0)}, +$S:98} +A.cl0.prototype={ +$0(){var s=this.a,r=B.b.fE(s.gfe(),this.b) +B.b.eu(s.gfe(),this.c,r)}, +$S:0} +A.cl1.prototype={ +$2(a,b){var s=this.a +return s.a7N(s.gfe()[b],b,new A.kv(s.a.c).$1$patches(B.b.cK(s.gfe(),0,b+1)))}, +$S:43} +A.ckL.prototype={ +$1(a){var s=null,r=A.bc(a)===B.y?B.hF:B.kY,q=A.w("preview",s,s),p=this.a,o=A.w("timetable.patch.prefabs",s,s),n=A.bc(a)===B.y?B.f4:B.fB,m=A.w("clear",s,s),l=p.gfe().length!==0?new A.ckK(p):s +return A.a([new A.eW(q,p.gpz(),r),new A.eW(o,p.gaCS(),B.hE),new A.eW(m,l,n)],t.iT)}, +$S:58} +A.ckK.prototype={ +$0(){var s=this.a +s.C(new A.ckJ(s)) +s.e=B.V.da(s.e,!0)}, +$S:0} +A.ckJ.prototype={ +$0(){B.b.V(this.a.gfe())}, +$S:0} +A.cl3.prototype={ +$1(a){return B.btK}, +$S:1598} +A.ckW.prototype={ +$1(a){var s,r,q,p=this.a +p.wS(B.b.c2(p.gfe(),a)) +s=p.gfe() +r=this.c +q=A.R(r.gfe(),!0,t.qC) +q.push(a) +s[this.b]=new A.bQo(r).$1$patches(q) +p.e=B.V.da(p.e,!0)}, +$S:142} +A.ckX.prototype={ +$1(a){var s=this,r=s.b,q=s.a,p=s.d +return A.iW(A.cN2(!0,new A.ckT(q,p),new A.ckU(q,p),new A.ckV(q,p,r),!0,r,a,s.c),0,4)}, +$S:1600} +A.ckU.prototype={ +$0(){this.a.wS(this.b)}, +$S:0} +A.ckV.prototype={ +$0(){var s=this.a,r=this.b +s.wS(r) +B.b.ox(s.gfe(),r,this.c.gfe()) +s.e=B.V.da(s.e,!0)}, +$S:0} +A.ckT.prototype={ +$1(a){var s=this.a +s.C(new A.ckN(s,this.b,a)) +s.e=B.V.da(s.e,!0)}, +$S:1601} +A.ckN.prototype={ +$0(){this.a.gfe()[this.b]=this.c}, +$S:0} +A.cl_.prototype={ +$0(){this.a.wS(this.b)}, +$S:0} +A.ckY.prototype={ +$1(a){var s,r=A.w("timetable.patch.defaultName",null,null),q=this.a,p=t.Zy +p=A.nb(new A.cv(q.gfe(),p),new A.ckS(),p.h("B.E"),t.N) +p=A.cr6(r,A.R(p,!0,A.z(p).h("B.E"))) +r=this.b +s=A.a([r,a],t._t) +B.b.eu(q.gfe(),this.c,new A.mF(p,s)) +q.wS(B.b.c2(q.gfe(),r)) +q.wS(B.b.c2(q.gfe(),a)) +q.e=B.V.da(q.e,!0)}, +$S:142} +A.ckS.prototype={ +$1(a){return a.gdI(a)}, +$S:1602} +A.ckZ.prototype={ +$1(a){var s=this,r=s.b,q=s.c,p=s.a,o=s.d +return A.czs(new A.ckO(p,r,q),!0,new A.ckP(r),new A.ckQ(p,o),new A.ckR(p,o),!0,r,a,q,t.qC)}, +$S:1603} +A.ckP.prototype={ +$2(a,b){return new A.MY(this.a,b,null)}, +$S:1604} +A.ckR.prototype={ +$0(){this.a.wS(this.b)}, +$S:0} +A.ckO.prototype={ +$1(a){return this.aI_(a)}, +aI_(a){var s=0,r=A.p(t.kh),q,p=this,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=p.b +n=n.gbl(n) +o=p.a.c +o.toString +o=n.FW(0,o,p.c,a) +s=3 +return A.i(t.yQ.b(o)?o:A.dO(o,t.kh),$async$$1) +case 3:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:472} +A.ckQ.prototype={ +$1(a){var s=this.a +s.C(new A.ckM(s,this.b,a)) +s.e=B.V.da(s.e,!0)}, +$S:142} +A.ckM.prototype={ +$0(){this.a.gfe()[this.b]=this.c}, +$S:0} +A.ckI.prototype={ +$0(){this.a.gfe().push(this.b)}, +$S:0} +A.cl4.prototype={ +$0(){B.b.fE(this.a.gfe(),this.b)}, +$S:0} +A.W0.prototype={ +J(){return new A.aYz(B.f)}, +bCt(a){return this.d.$1(a)}, +Vm(a){return this.e.$1(a)}} +A.aYz.prototype={ +q(a){return A.cHF(new A.cl5(this),null,new A.cl6(this),null,null,new A.cl7(this),t.qC)}} +A.cl5.prototype={ +$3(a,b,c){return this.a.a.Vm(b.length!==0)}, +$S:1606} +A.cl7.prototype={ +$1(a){var s=a.a!==this.a.a.c +if(s)A.w5() +return s}, +$S:1607} +A.cl6.prototype={ +$1(a){this.a.a.bCt(a.a) +A.qb()}, +$S:1608} +A.MY.prototype={ +J(){return new A.aYy(B.f)}} +A.aYy.prototype={ +q(a){var s=this,r=null,q=s.a,p=q.c +q=q.d +return A.d59(r,r,A.jF(q,B.H,B.cC,s.d?0.25:1),r,p,A.cSg(),q,B.h,!0,!0,r,r,r,new A.ckG(s),new A.ckH(s),r,r,t.qC)}} +A.ckH.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +p.C(new A.ckE(p)) +s=2 +return A.i(A.w5(),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.ckE.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.ckG.prototype={ +$1(a){return this.aHZ(a)}, +aHZ(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +p.C(new A.ckF(p)) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:1609} +A.ckF.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.Lp.prototype={ +q(a){var s,r=null,q=this.c +$label0$0:{if(t.EQ.b(q)){s=A.cN2(!1,r,r,r,!1,q,!1,r) +break $label0$0}if(q instanceof A.dY){s=A.czs(r,!1,r,r,r,!1,q,!1,r,t.qC) +break $label0$0}s=r}return s}} +A.N0.prototype={ +J(){return new A.aYB(B.f)}} +A.aYB.prototype={ +q(a){var s=null,r=A.uu(s,!1,!0,!1,A.E(A.w("timetable.patch.prefabs",s,s),s,s,s,s,s)) +$.cCn() +return A.bW(s,s,A.cD(B.k,s,B.m,s,B.ck,s,!1,s,B.v,A.a([r,A.hs(new A.clc(a),1)],t.p)),s,s,s,s)}} +A.clc.prototype={ +$2(a,b){var s=$.cCn()[b] +return new A.W1(s,new A.clb(this.a,s),null)}, +$S:1610} +A.clb.prototype={ +$0(){var s=A.cc(this.a).c +s===$&&A.b() +s.dB(this.b)}, +$S:0} +A.N1.prototype={ +J(){return new A.ajM(B.f)}} +A.ajM.prototype={ +gfe(){var s=this.d +return s===$?this.d=A.R(this.a.d.gfe(),!0,t.qC):s}, +gdI(a){var s,r=this.e +if(r===$){s=this.a.d +r=this.e=s.gdI(s)}return r}, +q(a){var s=this,r=null,q=s.f,p=s.giG(),o=A.FB(s.gdI(0)),n=t.p +n=A.a([A.i4(A.a([A.e8(A.E(A.w("save",r,r),r,r,r,r,r),p),s.BB()],n),r,r,r,!1,o)],n) +if(s.gfe().length===0)n.push(A.oA(A.kj(A.w("timetable.patch.noPatches",r,r),B.hE,r,r,r))) +else n.push(A.cLH(A.cLG(new A.clo(s),s.gfe().length),new A.clp(s))) +return new A.mq(q,p,A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,n),A.aoa(new A.ZH(s.a.c,s.ga7a(),r),r,r,B.L,r),r,r,!1),r)}, +hm(){var s,r,q=this.c +q.toString +s=this.gdI(0) +r=A.R(this.gfe(),!0,t.qC) +q=A.cc(q).c +q===$&&A.b() +q.dB(new A.mF(s,r))}, +hz(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$hz=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.c +n.toString +p=q.a.c +o=A.R(p.y,!0,t.kO) +o.pop() +o.push(new A.mF(q.gdI(0),A.R(q.gfe(),!0,t.qC))) +s=2 +return A.i(A.tp(n,new A.kv(p).$1$patches(o)),$async$hz) +case 2:return A.n(null,r)}}) +return A.o($async$hz,r)}, +BB(){return new A.oo(new A.cli(this),null)}, +a7N(a,b,c){var s=this,r=s.c +r.toString +r=A.bc(r)===B.y?B.cs:B.cF +r=A.Vw(new A.clk(s,b),r) +return A.WE(A.czs(new A.cll(s,c),!0,null,new A.clm(s,b),null,!1,a,!1,c,t.qC),new A.ca(a,t.O4),r)}, +UQ(a){var s=this +s.C(new A.cld(s,a)) +s.f=B.V.da(s.f,!0)}, +wS(a){var s=this +s.C(new A.clq(s,a)) +s.f=B.V.da(s.f,!0)}} +A.clp.prototype={ +$2(a,b){var s=this.a +s.C(new A.cln(s,a,b)) +s.f=B.V.da(s.f,!0)}, +$S:98} +A.cln.prototype={ +$0(){var s=this.a,r=B.b.fE(s.gfe(),this.b) +B.b.eu(s.gfe(),this.c,r)}, +$S:0} +A.clo.prototype={ +$2(a,b){var s=this.a +return s.a7N(s.gfe()[b],b,new A.kv(s.a.c).$1$patches(B.b.cK(s.gfe(),0,b+1)))}, +$S:43} +A.cli.prototype={ +$1(a){var s=null,r=A.bc(a)===B.y?B.hF:B.kY,q=A.w("preview",s,s),p=this.a,o=A.bc(a)===B.y?B.d1:B.d2,n=A.w("timetable.patch.editName",s,s),m=A.bc(a)===B.y?B.f4:B.fB,l=A.w("clear",s,s),k=p.gfe().length!==0?new A.clg(p):s +return A.a([new A.eW(q,p.gpz(),r),new A.eW(n,new A.clh(p,a),o),new A.eW(l,k,m)],t.iT)}, +$S:58} +A.clh.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.i(A.vQ(p.b,A.w("timetable.patch.patchSetName",null,null),o.gdI(0)),$async$$0) +case 3:n=b +if(n==null){s=1 +break}if(o.gdI(0)!==n){o.C(new A.cle(o,n)) +o.f=B.V.da(o.f,!0)}case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cle.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.clg.prototype={ +$0(){var s=this.a +s.C(new A.clf(s)) +s.f=B.V.da(s.f,!0)}, +$S:0} +A.clf.prototype={ +$0(){B.b.V(this.a.gfe())}, +$S:0} +A.clk.prototype={ +$0(){this.a.wS(this.b)}, +$S:0} +A.cll.prototype={ +$1(a){return this.aI0(a)}, +aI0(a){var s=0,r=A.p(t.kh),q,p=this,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=a.gbl(a) +n=p.a.c +n.toString +n=o.FW(0,n,p.b,a) +s=3 +return A.i(t.yQ.b(n)?n:A.dO(n,t.kh),$async$$1) +case 3:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:472} +A.clm.prototype={ +$1(a){var s=this.a +s.C(new A.clj(s,this.b,a)) +s.f=B.V.da(s.f,!0)}, +$S:142} +A.clj.prototype={ +$0(){this.a.gfe()[this.b]=this.c}, +$S:0} +A.cld.prototype={ +$0(){this.a.gfe().push(this.b)}, +$S:0} +A.clq.prototype={ +$0(){B.b.fE(this.a.gfe(),this.b)}, +$S:0} +A.ct4.prototype={ +$1(a){return new A.N_(this.a,null)}, +$S:1611} +A.N_.prototype={ +J(){return new A.aYA(B.f)}} +A.aYA.prototype={ +q(a){var s=null,r=$.eL.I().a,q=this.gc6().dl(r.gPu(),t.Jf),p=this.a.d,o=t.EQ.b(p),n=o?A.i1(A.a([A.wE(B.azL,0,0,8,0),A.f7(A.FB(p.a),1,s)],t.p),B.t,B.o,B.u):A.E(A.w("timetable.patch.title",s,s),s,s,s,s,s),m=J.h3(q)?s:new A.cl9(a,p),l=t.p +n=A.a([A.i4(A.a([A.e8(A.E(A.w("use",s,s),s,s,s,s,s),m)],l),s,s,s,!1,n)],l) +if(o)n.push(A.hs(new A.cla(p),J.bn(p.b))) +else n.push(A.eI(A.a([new A.Lp(p,!1,s)],l))) +return A.bW(s,s,A.cD(B.k,s,B.m,s,s,s,!1,s,B.v,n),s,s,s,s)}} +A.cl9.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.i(A.fo(o,new A.cl8(p.b),!0,!1,t.Q5),$async$$0) +case 3:if(b==null){s=1 +break}if(o.e==null){s=1 +break}o=A.cc(o).c +o===$&&A.b() +o.dB(null) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cl8.prototype={ +$1(a){return new A.N2(this.a,null)}, +$S:1612} +A.cla.prototype={ +$2(a,b){return new A.Lp(J.aS(this.a.b,b),!1,null)}, +$S:1613} +A.N2.prototype={ +J(){return new A.aYC(B.f)}} +A.aYC.prototype={ +q(a){var s=null,r=$.eL.I().a,q=this.gc6().dl(r.gPu(),t.Jf),p=this.a.d,o=J.cz(q) +o.iL(q,new A.clt()) +return A.bW(s,s,A.cD(B.k,s,B.m,s,s,s,!1,s,B.v,A.a([A.i4(s,s,s,s,!1,A.E(A.w("timetable.mine.title",s,s),s,s,s,s,s)),A.hs(new A.clu(this,q,p,r,a),o.gA(q))],t.p)),s,s,s,s)}, +awu(a,b){var s=A.R(a.y,!0,t.kO) +s.push(b) +return new A.kv(a).$1$patches(s)}} +A.clt.prototype={ +$2(a,b){return B.d.bn(b.b.w.a,a.b.w.a)}, +$S:466} +A.clu.prototype={ +$2(a,b){var s,r,q,p,o,n=this,m={} +m.a=m.b=null +s=J.aS(n.b,b) +r=s.a +m.b=r +q=s.b +m.a=q +p=n.a +o=n.c +return new A.aA(new A.af(6,0,6,0),new A.aGF(r,q,new A.clr(m,p,o,n.d,a),new A.cls(m,p,n.e,o),null),null)}, +$S:172} +A.clr.prototype={ +$0(){var s=this,r=s.a,q=new A.kv(s.b.awu(r.a,s.c)).$1$lastModified(new A.am(Date.now(),!1)) +s.d.df(0,r.b,q) +r=A.cc(s.e).c +r===$&&A.b() +r.dB(q)}, +$S:0} +A.cls.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.tp(q.c,q.b.awu(q.a.a,q.d)),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.aGF.prototype={ +q(a){var s,r=null,q=A.a([],t.wF) +q.push(A.tR(!1,A.E(A.w("add",r,r),r,r,r,r,r),B.i,r,r,r,r,r,this.e,r,r)) +q.push(A.T8(!1,A.E(A.w("preview",r,r),r,r,r,r,r),B.i,r,r,r,this.f,r,r)) +s=t.p +return A.m4(A.iW(A.dd(A.a([new A.MT(this.d,r),A.a6B(r,A.a([A.nl(q,B.bV,0,4)],s),B.ps,B.x,0,0)],s),B.a4,r,B.o,B.u),15,10),r,r,r)}} +A.FF.prototype={ +J(){var s=$.ae() +return new A.aYD(new A.bm(B.nd,s,t._F),new A.fh(0,!0,null,null,null,A.a([],t.ZP),s),B.f)}} +A.aYD.prototype={ +gk8(){var s=this.a,r=s.c +if(r==null){s=s.d +s=s.gbl(s)}else s=r +return s}, +gaej(){var s,r,q=this,p=q.e +if(p===$){s=q.gk8() +s=A.FE(new A.am(Date.now(),!1),s.b) +r=$.ae() +q.e!==$&&A.a_() +p=q.e=new A.bm(s,r,t.G2)}return p}, +m(){var s=this,r=s.d,q=$.ae() +r.k3$=q +r.k2$=0 +r=s.gaej() +r.k3$=q +r.k2$=0 +s.f.m() +s.ap()}, +b1(a){var s,r=this +r.bc(a) +if(J.q(r.a.c,a.c)){r.a.toString +s=!1}else s=!0 +if(s){r.a.toString +s=A.aEB(r.gk8()) +r.r=s}}, +q(a){var s,r=this,q=null,p=A.FB(r.gk8().a) +p=A.jb(A.a([A.du(q,B.E6,q,new A.clv(r),q)],t.p),q,!0,q,q,1,q,q,q,!1,q,!1,q,q,q,q,!0,q,q,q,q,q,p,q,q,q,1,q) +s=r.r +if(s===$){r.a.toString +s=A.aEB(r.gk8()) +r.r=s}return A.bW(p,q,new A.abd(s,r.d,r.gaej(),q),q,q,q,q)}} +A.clv.prototype={ +$0(){var s=this.a.d +s.sj(0,J.d1s(s.a))}, +$S:0} +A.cti.prototype={ +$1(a){return A.FG(null,new A.FF(this.a,this.b,null),null)}, +$S:176} +A.N5.prototype={ +J(){return new A.aYE(B.f)}} +A.aYE.prototype={ +gpJ(){var s,r,q=this.d +if(q===$){s=this.a.c +r=$.ae() +q!==$&&A.a_() +q=this.d=new A.eZ(new A.cu(s.a.f,B.bz,B.aw),r)}return q}, +gafd(){var s=this.e +return s===$?this.e=this.a.d:s}, +m(){var s=this.gpJ() +s.k3$=$.ae() +s.k2$=0 +this.ap()}, +q(a){var s,r=this,q=null,p=A.E(A.w("timetable.screenshot.title",q,q),q,q,q,q,q),o=t.p +p=A.i4(A.a([r.bp8()],o),q,q,q,!1,p) +s=A.E(A.w("timetable.signature",q,q),q,q,q,q,q) +return A.bW(q,q,A.cD(B.k,q,B.m,q,q,q,!1,q,B.v,A.a([p,A.eI(A.a([A.aX(!1,q,q,q,!0,q,q,q,q,!0,q,B.l0,q,q,q,q,q,q,!1,q,q,A.Fz(!0,B.bF,!1,q,!0,B.k,q,A.Ov(),r.gpJ(),q,q,q,q,q,2,A.md(q,q,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,A.w("timetable.signaturePlaceholder",q,q),q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q),B.m,!0,q,!0,q,!1,q,q,q,q,q,q,q,q,1,q,q,!1,"\u2022",q,q,q,q,q,!1,q,!1,q,!0,q,B.ec,q,q,B.cY,B.cA,q,q,q,q,q,q,q,B.ah,q,B.fk,q,q,q,q),q,q,s,q,q,q),r.bos(),r.bok()],o))],o)),q,q,q,q)}, +bp8(){var s=null +return A.e8(A.E(A.w("timetable.screenshot.take",s,s),s,s,s,s,s),new A.clS(this))}, +bos(){var s=null,r=A.E(A.w("timetable.p13n.cellStyle.grayOut.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.E5,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.p13n.cellStyle.grayOut.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.clR(this),this.gafd()),s)}, +bok(){var s=null,r=A.E(A.w("timetable.screenshot.enableBackground.title",s,s),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,B.E4,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.screenshot.enableBackground.desc",s,s),s,s,s,s,s),s,s,r,s,A.jy(new A.clP(this),this.f),s)}} +A.clS.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=$.cn.I() +n=q.a +m=n.gpJ().a.a +A.ds(o.a,"/settings/lastSignature",m) +m=n.c +m.toString +o=B.c.du(n.gpJ().a.a) +p=n.gafd() +n=n.f +m=A.cc(m).c +m===$&&A.b() +m.dB(new A.aUz(n,p,o)) +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.clR.prototype={ +$1(a){var s=this.a +s.C(new A.clQ(s,a))}, +$S:4} +A.clQ.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.clP.prototype={ +$1(a){var s=this.a +s.C(new A.clO(s,a))}, +$S:4} +A.clO.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.aGM.prototype={ +q(a){var s=a.a0(t.Jg).f,r=s.c +if(this.c.a&&r.a.length!==0)return A.a8y(A.a([A.po(0,A.cN1(r,!1)),this.aw4(a,s)],t.p)) +return this.aw4(a,s)}, +aw4(a,b){var s=this,r=null +return A.dd(A.a([A.iW(A.E(s.a7V(),r,r,r,A.G(a).p3.r,r),0,10),new A.abk(s.d,s.e,s.f,!1,new A.bMZ(b),r)],t.p),B.t,r,B.o,B.u)}, +a7V(){var s=A.w("timetable.weekOrderedName",A.a([B.d.k(this.e+1)],t.s),null),r=this.c.c +if(r.length!==0)return r+" "+s +return s}} +A.bMZ.prototype={ +$3$context$lesson$timetable(a,b,c){var s=b.a +return new A.Fp(s.b,c,J.xK(J.kD(s.c)).a.a"))) +return A.aX(!1,p,p,p,!a.Q,p,p,p,p,!0,p,p,p,p,p,p,p,p,!1,p,p,A.dd(i,B.a4,p,B.o,B.Z),p,p,k,p,j,p)}, +$S:1634} +A.bM_.prototype={ +$1(a){var s=null +return A.E(a,s,s,s,s,s)}, +$S:268} +A.crh.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.cc(q.a).fg("/me",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cri.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.cc(q.a).fg("/school",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.crj.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.cc(q.a).fg("/life",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.crk.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.cc(q.a).fg("/game",null,t.X),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.aut.prototype={ +q(a){var s=this,r=null,q=A.FE(new A.am(Date.now(),!1),s.c.a.b),p=q.a===s.d&&q.b===s.e?A.w("timetable.freeTip.isTodayTip",r,r):A.w("timetable.freeTip.dayTip",r,r) +return A.kj(p,B.DV,r,r,A.e8(A.E(A.w("timetable.freeTip.findNearestDayWithClass",r,r),r,r,r,r,r),new A.bjn(s,a)))}, +XI(a,b,c){return this.bzE(a,b,c)}, +bzE(a,b,c){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j +var $async$XI=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)$async$outer:switch(s){case 0:for(o=p.c.b,n=b;n<20;++n){m=o[n] +if(!m.gCv()){l=b===n?c:0 +for(k=m.c,j=l;j<7;++j)if(k[j].ab_()){o=$.xH() +k=B.cf[B.d.M(j,7)] +o=o.a +if(!o.gob())A.C(o.o8()) +o.kL(new A.qf(new A.fD(n,k))) +s=1 +break $async$outer}}}for(n=b;0<=n;--n){m=o[n] +if(!m.gCv()){l=b===n?c:6 +for(k=m.c,j=l;0<=j;--j)if(k[j].ab_()){o=$.xH() +k=B.cf[B.d.M(j,7)] +o=o.a +if(!o.gob())A.C(o.o8()) +o.kL(new A.qf(new A.fD(n,k))) +s=1 +break $async$outer}}}if(a.e==null){s=1 +break}o=A.w("congratulations",null,null) +s=3 +return A.i(A.kS(a,A.w("timetable.freeTip.termTip",null,null),A.w("ok",null,null),!1,o),$async$XI) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$XI,r)}} +A.bjn.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +s=2 +return A.i(p.XI(q.b,p.d,p.e.a),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.auu.prototype={ +q(a){var s=null,r=A.FE(new A.am(Date.now(),!1),this.c.a.b).a===this.d?A.w("timetable.freeTip.isThisWeekTip",s,s):A.w("timetable.freeTip.weekTip",s,s) +return A.kj(r,B.DV,s,s,A.e8(A.E(A.w("timetable.freeTip.findNearestWeekWithClass",s,s),s,s,s,s,s),new A.bjo(this,a)))}, +XJ(a,b,c){return this.bzF(a,b,c)}, +bzF(a,b,c){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$XJ=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)$async$outer:switch(s){case 0:for(o=p.c.b,n=b;n<20;++n)if(!o[n].gCv()){o=$.xH().a +if(!o.gob())A.C(o.o8()) +o.kL(new A.qf(new A.fD(n,c))) +s=1 +break $async$outer}for(n=b;0<=n;--n)if(!o[n].gCv()){o=$.xH().a +if(!o.gob())A.C(o.o8()) +o.kL(new A.qf(new A.fD(n,c))) +s=1 +break $async$outer}if(a.e==null){s=1 +break}o=A.w("congratulations",null,null) +s=3 +return A.i(A.kS(a,A.w("timetable.freeTip.termTip",null,null),A.w("ok",null,null),!1,o),$async$XJ) +case 3:case 1:return A.n(q,r)}}) +return A.o($async$XJ,r)}} +A.bjo.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a +s=2 +return A.i(p.XJ(q.b,p.d,B.k1),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.abi.prototype={ +J(){return new A.aYt(B.f)}} +A.aYt.prototype={ +q(a){var s=null,r=A.E(A.w("timetable.issue.emptyIssue.title",s,s),s,s,s,s,s) +return A.m4(A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,A.E(A.w("timetable.issue.emptyIssue.desc",s,s),s,s,s,s,s),s,s,r,s,s,s),B.k,s,s)}} +A.abf.prototype={ +J(){return new A.aYr(B.f)}, +bD7(a){return this.e.$1(a)}} +A.aYr.prototype={ +q(a){var s=null,r=this.a.d,q=A.E(A.w("timetable.issue.cbeCourseIssue.title",s,s),s,s,s,s,s),p=A.E(A.w("timetable.issue.cbeCourseIssue.desc",s,s),s,s,s,s,s),o=this.a.c,n=A.X(o).h("O<1,hX>") +return A.m4(A.H9(A.R(new A.O(o,new A.cja(this,r,a),n),!0,n.h("aa.E")),!0,s,s,s,p,q,s,s),B.k,s,s)}} +A.cja.prototype={ +$1(a){var s,r=null,q=this.b,p=J.aS(q.r,""+a.a) +p.toString +s=A.E(p.b,r,r,r,r,r) +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,r,!1,r,r,A.dd(A.a([A.E(p.f,r,r,r,r,r)],t.LT),B.a4,r,B.o,B.u),r,r,s,r,A.e8(A.E(A.w("timetable.issue.resolve",r,r),r,r,r,r,r),new A.cj9(this.a,this.c,p,q)),r)}, +$S:1635} +A.cj9.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=t.Ct +s=3 +return A.i(A.fo(p.b,new A.cj8(p.c),!0,!1,m),$async$$0) +case 3:l=b +if(l==null){s=1 +break}o=p.d +m=A.rB(o.r,t.N,m) +m.n(0,""+l.a,l) +n=new A.kv(o).$1$courses(m) +p.a.a.bD7(n) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.cj8.prototype={ +$1(a){return new A.ut(A.w("timetable.edit.editCourse",null,null),this.a,B.bmc,null)}, +$S:141} +A.abg.prototype={ +J(){return new A.aYs(B.f)}} +A.aYs.prototype={ +q(a){var s=null,r=this.a.d,q=A.E(A.w("timetable.issue.courseOverlapsIssue.title",s,s),s,s,s,s,s),p=A.E(A.w("timetable.issue.courseOverlapsIssue.desc",s,s),s,s,s,s,s),o=this.a.c,n=A.X(o).h("O<1,hX>") +return A.m4(A.H9(A.R(new A.O(o,new A.cjw(r,a),n),!0,n.h("aa.E")),!0,s,s,s,p,q,s,s),B.k,s,s)}} +A.cjw.prototype={ +$1(a){var s=null,r=a.a,q=t.ZZ,p=A.R(new A.cv(new A.O(r,new A.cjt(this.a),A.X(r).h("O<1,db?>")),q),!0,q.h("B.E")) +q=A.X(p) +r=A.E(new A.O(p,new A.cju(),q.h("O<1,f>")).bQ(0,", "),s,s,s,s,s) +return A.aX(!1,s,s,s,!0,s,s,s,s,!1,s,s,s,s,s,s,s,s,!1,s,s,A.dd(A.R(new A.O(p,new A.cjv(this.b),q.h("O<1,eY>")),!0,t.r8),B.a4,s,B.o,B.u),s,s,r,s,s,s)}, +$S:1636} +A.cjt.prototype={ +$1(a){return J.aS(this.a.r,""+a)}, +$S:1637} +A.cju.prototype={ +$1(a){return a.b}, +$S:174} +A.cjv.prototype={ +$1(a){var s,r,q,p=null,o=A.bG8(a),n=o.a,m=o.b,l=A.w("weekday."+B.cf[B.d.M(a.y,7)].a,p,p),k=this.a,j=n.a,i=n.b +j=A.cd(0,1,1,j,i,0,0,!1) +if(!A.bI(j))A.C(A.bV(j)) +i=t.L +s=k.a0(i).r.a +s===$&&A.b() +r=$.h2() +s=r.i(0,s) +j=(s==null?$.es():s).gow().d4(new A.am(j,!1)) +s=m.a +q=m.b +s=A.cd(0,1,1,s,q,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +k=k.a0(i).r.a +k===$&&A.b() +k=r.i(0,k) +return A.E(l+" "+j+"\u2013"+(k==null?$.es():k).gow().d4(new A.am(s,!1)),p,p,p,p,p)}, +$S:1638} +A.MQ.prototype={ +J(){return new A.ajG(B.f)}} +A.ajG.prototype={ +grF(){var s=this.a.d +return s==null?null:s.a}, +gwo(){var s=this.a.d +return s==null?null:s.b}, +gk_(a){var s,r=this.d +if(r===$){s=this.grF() +r=s==null?null:s.a +r=this.d=r==null?B.bI:r}return r}, +gJ_(){var s,r=this,q=r.e +if(q===$){s=r.grF() +if((s==null?null:s.a)===B.cw){s=r.grF() +if(s==null)q=null +else{s=s.b +s.toString +q=s}}else q=null +q=r.e=q}return q}, +gIZ(){var s,r=this,q=r.f +if(q===$){s=r.grF() +if((s==null?null:s.a)===B.bI){s=r.grF() +if(s==null)q=null +else{s=s.c +s.toString +q=s}}else q=null +q=r.f=q}return q}, +gOP(){var s,r=this,q=r.r +if(q===$){s=r.gwo() +if((s==null?null:s.a)===B.cw){s=r.gwo() +if(s==null)q=null +else{s=s.b +s.toString +q=s}}else q=null +q=r.r=q}return q}, +gOO(){var s,r=this,q=r.w +if(q===$){s=r.gwo() +if((s==null?null:s.a)===B.bI){s=r.gwo() +if(s==null)q=null +else{s=s.c +s.toString +q=s}}else q=null +q=r.w=q}return q}, +q(a){var s=this,r=null,q=s.jU(),p=s.x&&s.jU()!=null,o=s.giG(),n=A.E(A.w("timetable.patch.type.copyDay",r,r),r,r,r,r,r),m=A.e8(A.E(A.w("preview",r,r),r,r,r,r,r),s.gpz()),l=s.jU()!=null?o:r,k=t.p +n=A.i4(A.a([m,A.e8(A.E(A.w("save",r,r),r,r,r,r,r),l)],k),r,r,r,!1,n) +l=A.a([A.iW(s.BA(),16,8)],k) +switch(s.gk_(0).a){case 0:m=s.BC() +break +case 1:m=s.Bz() +break +default:m=r}B.b.L(l,m) +if(q!=null)l.push(A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,r,!1,r,r,r,r,r,A.E(q.hI(),r,r,r,r,r),r,r,r)) +return new A.mq(p,o,A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([n,A.eI(l)],k)),r,r,r,r),r)}, +BA(){return new A.MR(this.gk_(0),new A.cjo(this),null)}, +BC(){var s=this,r=null,q=A.E(A.w("timetable.patch.copySource",r,r),r,r,r,r,r),p=s.a.c,o=s.gJ_(),n=A.E(A.w("timetable.patch.copyTarget",r,r),r,r,r,r,r),m=s.a.c +return A.a([new A.wX(q,B.nN,o,p,new A.cjr(s),r),new A.wX(n,B.nL,s.gOP(),m,new A.cjs(s),r)],t.p)}, +Bz(){var s,r=this,q=null,p=A.E(A.w("timetable.patch.copySource",q,q),q,q,q,q,q),o=r.a.c +p=A.VX(r.gIZ(),B.nN,new A.cjl(r),o,p) +o=A.E(A.w("timetable.patch.copyTarget",q,q),q,q,q,q,q) +s=r.a.c +return A.a([p,A.VX(r.gOO(),B.nL,new A.cjm(r),s,o)],t.p)}, +hz(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$hz=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.c +n.toString +p=q.jU() +o=A.R(q.a.c.y,!0,t.kO) +if(p!=null)o.push(p) +s=2 +return A.i(A.tp(n,new A.kv(q.a.c).$1$patches(o)),$async$hz) +case 2:return A.n(null,r)}}) +return A.o($async$hz,r)}, +hm(){var s,r=this.c +r.toString +s=this.jU() +r=A.cc(r).c +r===$&&A.b() +r.dB(s)}, +jU(){var s,r,q=this,p=null,o=q.gJ_(),n=q.gIZ(),m=q.gOP(),l=q.gOO() +switch(q.gk_(0).a){case 0:s=o!=null?new A.f9(B.cw,o,p):p +break +case 1:s=n!=null?new A.f9(B.bI,p,n):p +break +default:s=p}switch(q.gk_(0).a){case 0:r=m!=null?new A.f9(B.cw,m,p):p +break +case 1:r=l!=null?new A.f9(B.bI,p,l):p +break +default:r=p}return s!=null&&r!=null?new A.ns(s,r):p}} +A.cjo.prototype={ +$1(a){return this.aHV(a)}, +aHV(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +p.C(new A.cjn(p,a)) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:178} +A.cjn.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.cjr.prototype={ +$1(a){var s=this.a +s.C(new A.cjq(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:117} +A.cjq.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.cjs.prototype={ +$1(a){var s=this.a +s.C(new A.cjp(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:117} +A.cjp.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.cjl.prototype={ +$1(a){var s=this.a +s.C(new A.cjk(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:59} +A.cjk.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.cjm.prototype={ +$1(a){var s=this.a +s.C(new A.cjj(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:59} +A.cjj.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.MU.prototype={ +J(){return new A.ajI(B.f)}} +A.ajI.prototype={ +grF(){var s=this.a.d +return s==null?null:s.a}, +gwo(){var s=this.a.d +return s==null?null:s.b}, +gk_(a){var s,r=this.d +if(r===$){s=this.grF() +r=s==null?null:s.a +r=this.d=r==null?B.bI:r}return r}, +gJ_(){var s,r=this,q=r.e +if(q===$){s=r.grF() +if((s==null?null:s.a)===B.cw){s=r.grF() +if(s==null)q=null +else{s=s.b +s.toString +q=s}}else q=null +q=r.e=q}return q}, +gIZ(){var s,r=this,q=r.f +if(q===$){s=r.grF() +if((s==null?null:s.a)===B.bI){s=r.grF() +if(s==null)q=null +else{s=s.c +s.toString +q=s}}else q=null +q=r.f=q}return q}, +gOP(){var s,r=this,q=r.r +if(q===$){s=r.gwo() +if((s==null?null:s.a)===B.cw){s=r.gwo() +if(s==null)q=null +else{s=s.b +s.toString +q=s}}else q=null +q=r.r=q}return q}, +gOO(){var s,r=this,q=r.w +if(q===$){s=r.gwo() +if((s==null?null:s.a)===B.bI){s=r.gwo() +if(s==null)q=null +else{s=s.c +s.toString +q=s}}else q=null +q=r.w=q}return q}, +q(a){var s=this,r=null,q=s.jU(),p=s.x&&s.jU()!=null,o=s.giG(),n=A.E(A.w("timetable.patch.type.moveDay",r,r),r,r,r,r,r),m=A.e8(A.E(A.w("preview",r,r),r,r,r,r,r),s.gpz()),l=s.jU()!=null?o:r,k=t.p +n=A.i4(A.a([m,A.e8(A.E(A.w("save",r,r),r,r,r,r,r),l)],k),r,r,r,!1,n) +l=A.a([A.iW(s.BA(),16,8)],k) +switch(s.gk_(0).a){case 0:m=s.BC() +break +case 1:m=s.Bz() +break +default:m=r}B.b.L(l,m) +if(q!=null)l.push(A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,r,!1,r,r,r,r,r,A.E(q.hI(),r,r,r,r,r),r,r,r)) +return new A.mq(p,o,A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([n,A.eI(l)],k)),r,r,r,r),r)}, +BA(){return new A.MR(this.gk_(0),new A.ckb(this),null)}, +BC(){var s=this,r=null,q=A.E(A.w("timetable.patch.moveSource",r,r),r,r,r,r,r),p=s.a.c,o=s.gJ_(),n=A.E(A.w("timetable.patch.moveTarget",r,r),r,r,r,r,r),m=s.a.c +return A.a([new A.wX(q,B.nN,o,p,new A.cke(s),r),new A.wX(n,B.nL,s.gOP(),m,new A.ckf(s),r)],t.p)}, +Bz(){var s,r=this,q=null,p=A.E(A.w("timetable.patch.moveSource",q,q),q,q,q,q,q),o=r.a.c +p=A.VX(r.gIZ(),B.nN,new A.ck8(r),o,p) +o=A.E(A.w("timetable.patch.moveTarget",q,q),q,q,q,q,q) +s=r.a.c +return A.a([p,A.VX(r.gOO(),B.nL,new A.ck9(r),s,o)],t.p)}, +hz(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$hz=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.c +n.toString +p=q.jU() +o=A.R(q.a.c.y,!0,t.kO) +if(p!=null)o.push(p) +s=2 +return A.i(A.tp(n,new A.kv(q.a.c).$1$patches(o)),$async$hz) +case 2:return A.n(null,r)}}) +return A.o($async$hz,r)}, +hm(){var s,r=this.c +r.toString +s=this.jU() +r=A.cc(r).c +r===$&&A.b() +r.dB(s)}, +jU(){var s,r,q=this,p=null,o=q.gJ_(),n=q.gIZ(),m=q.gOP(),l=q.gOO() +switch(q.gk_(0).a){case 0:s=o!=null?new A.f9(B.cw,o,p):p +break +case 1:s=n!=null?new A.f9(B.bI,p,n):p +break +default:s=p}switch(q.gk_(0).a){case 0:r=m!=null?new A.f9(B.cw,m,p):p +break +case 1:r=l!=null?new A.f9(B.bI,p,l):p +break +default:r=p}return s!=null&&r!=null?new A.mE(s,r):p}} +A.ckb.prototype={ +$1(a){return this.aHW(a)}, +aHW(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +p.C(new A.cka(p,a)) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:178} +A.cka.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.cke.prototype={ +$1(a){var s=this.a +s.C(new A.ckd(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:117} +A.ckd.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.ckf.prototype={ +$1(a){var s=this.a +s.C(new A.ckc(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:117} +A.ckc.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.ck8.prototype={ +$1(a){var s=this.a +s.C(new A.ck7(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:59} +A.ck7.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.ck9.prototype={ +$1(a){var s=this.a +s.C(new A.ck6(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:59} +A.ck6.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.aGG.prototype={ +q(a){var s,r,q,p,o,n=this,m=null,l=n.d +if(l)s=A.G(a).ay.b +else{r=A.G(a).ay +q=r.dy +s=q==null?r.db:q}r=A.G(a).p3.z +p=r==null?m:r.bu(s) +r=n.c +q=A.E(r.gdI(r),m,m,m,m,m) +o=n.BB() +r=A.pk(r.gfe(),new A.bMA(p,s),t.qC,t.Y0) +return A.m4(A.H9(A.R(r,!0,r.$ti.h("B.E")),!1,new A.To(B.hE,n.y,!1,m),!1,l,m,q,o,m),B.k,m,B.L)}, +BB(){return new A.oo(new A.bMz(this,this.e,this.w),null)}} +A.bMA.prototype={ +$2(a,b){var s=null +return A.iW(A.EZ(s,s,B.aG,s,s,!0,s,A.cy(A.a([new A.kt(A.b2(b.gbl(b).c,this.b,s,s,s,s,s,s,16,s,s),B.cj,s,s),A.cy(s,s,s,s,b.hI())],t.VO),s,s,this.a,s),B.ah,s,s,B.Y,B.a0),16,0)}, +$S:1641} +A.bMz.prototype={ +$1(a){var s,r,q,p=this,o=null,n=A.a([],t.iT),m=p.b +if(m!=null){s=A.bc(a)===B.y?B.d1:B.d2 +r=A.w("edit",o,o) +q=p.c +n.push(new A.eW(r,q==null?o:new A.bMx(p.a,a,m,q),s))}s=A.bc(a)===B.y?B.hF:B.kY +n.push(new A.eW(A.w("preview",o,o),new A.bMy(a,m),s)) +m=p.a +s=m.r +if(s!=null)n.push(new A.eW(A.w("timetable.patch.unpack",o,o),s,B.al9)) +m=m.f +if(m!=null){s=A.bc(a)===B.y?B.cs:B.cF +n.push(new A.eW(A.w("delete",o,o),m,s))}return n}, +$S:58} +A.bMx.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.fo(p.b,new A.bMw(p.a,p.c),!0,!1,t.EQ),$async$$0) +case 3:o=b +if(o==null){s=1 +break}p.d.$1(o) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.bMw.prototype={ +$1(a){return new A.N1(this.b,this.a.c,null)}, +$S:1642} +A.bMy.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.tp(q.a,q.b),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.W1.prototype={ +q(a){var s,r,q,p=null,o=A.G(a).ay,n=o.dy +if(n==null)n=o.db +o=A.G(a).p3.z +s=o==null?p:o.bu(n) +o=this.c +r=A.w("timetable.patch.builtin."+o.a,p,p) +q=A.G(a).p3.r +r=A.E(r,p,p,p,q==null?p:q.bu(A.G(a).ay.db),p) +q=t.Yc +return A.m4(A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,p,p,p,p,p,p,this.d,!1,p,p,A.dd(A.R(A.pk(o.b,new A.bMB(s,n),t.qC,q),!0,q),B.a4,p,B.o,B.u),p,p,r,p,p,p),B.k,p,p)}} +A.bMB.prototype={ +$2(a,b){var s=null +return A.EZ(s,s,B.aG,s,s,!0,s,A.cy(A.a([new A.kt(A.b2(b.gbl(b).c,this.b,s,s,s,s,s,s,16,s,s),B.cj,s,s),A.cy(s,s,s,s,b.hI())],t.VO),s,s,this.a,s),B.ah,s,s,B.Y,B.a0)}, +$S:1643} +A.N4.prototype={ +J(){return new A.ajN(B.f)}} +A.ajN.prototype={ +gabd(){var s=this.a.e +s=s==null?null:s.a +return s==null?A.a([],t.tK):s}, +gk_(a){var s,r=this.w +if(r===$){s=A.DP(this.gabd()) +r=s==null?null:s.a +r=this.w=r==null?B.bI:r}return r}, +gwI(){var s,r,q=this,p=q.x +if(p===$){if(q.gk_(0)===B.cw){s=q.gabd() +r=A.X(s).h("O<1,fD>") +p=A.R(new A.O(s,new A.clN(),r),!0,r.h("aa.E"))}else p=A.a([],t.A6) +p=q.x=p}return p}, +gud(){var s,r,q=this,p=q.y +if(p===$){if(q.gk_(0)===B.bI){s=q.gabd() +r=A.X(s).h("O<1,am>") +p=A.R(new A.O(s,new A.clL(),r),!0,r.h("aa.E"))}else p=A.a([],t.If) +p=q.y=p}return p}, +q(a){var s=this,r=null,q=s.jU(),p=s.z&&s.jU()!=null,o=s.giG(),n=A.E(A.w("timetable.patch.type.removeDay",r,r),r,r,r,r,r),m=A.e8(A.E(A.w("preview",r,r),r,r,r,r,r),s.gpz()),l=s.jU()!=null?o:r,k=t.p +n=A.i4(A.a([m,A.e8(A.E(A.w("save",r,r),r,r,r,r,r),l)],k),r,r,r,!1,n) +l=A.a([A.iW(s.BA(),16,8)],k) +switch(s.gk_(0).a){case 0:m=s.BC() +break +case 1:m=s.Bz() +break +default:m=r}B.b.L(l,m) +l.push(s.bnI()) +if(q!=null)l.push(A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,r,!1,r,r,r,r,r,A.E(q.hI(),r,r,r,r,r),r,r,r)) +return new A.mq(p,o,A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([n,A.eI(l)],k)),r,r,r,r),r)}, +aIb(a){var s,r={} +r.a=a +for(;B.b.ef(this.gud(),new A.clM(r));){s=r.a +s=A.cd(A.b7(s),A.bp(s),A.cL(s)-1,0,0,0,0,!1) +if(!A.bI(s))A.C(A.bV(s)) +r.a=new A.am(s,!1)}return r.a}, +bnI(){var s=null +return A.iW(A.tR(!1,A.E(A.w("add",s,s),s,s,s,s,s),B.i,s,s,s,s,s,new A.clA(this),s,s),32,16)}, +BA(){return new A.MR(this.gk_(0),new A.clF(this),null)}, +BC(){var s=t.C +return A.R(A.pk(this.gwI(),new A.clK(this),t.Ce,s),!0,s)}, +Bz(){var s=t.C +return A.R(A.pk(this.gud(),new A.clD(this),t.d,s),!0,s)}, +hz(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$hz=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.c +n.toString +p=q.jU() +o=A.R(q.a.d.y,!0,t.kO) +if(p!=null)o.push(p) +s=2 +return A.i(A.tp(n,new A.kv(q.a.d).$1$patches(o)),$async$hz) +case 2:return A.n(null,r)}}) +return A.o($async$hz,r)}, +hm(){var s,r=this.c +r.toString +s=this.jU() +r=A.cc(r).c +r===$&&A.b() +r.dB(s)}, +jU(){var s,r,q=this.gwI(),p=this.gud() +switch(this.gk_(0).a){case 0:s=new A.O(q,new A.clG(),A.X(q).h("O<1,f9>")) +break +case 1:s=new A.O(p,new A.clH(),A.X(p).h("O<1,f9>")) +break +default:s=null}r=A.R(s,!0,A.z(s).h("aa.E")) +return r.length!==0?new A.lQ(r):null}} +A.clN.prototype={ +$1(a){var s=a.b +s.toString +return s}, +$S:1644} +A.clL.prototype={ +$1(a){var s=a.c +s.toString +return s}, +$S:1645} +A.clM.prototype={ +$1(a){return A.bbH(a,this.a.a)}, +$S:175} +A.clA.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j,i,h,g +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:g=p.a +case 3:switch(g.gk_(0).a){case 0:s=5 +break +case 1:s=6 +break +default:s=4 +break}break +case 5:o=g.c +o.toString +n=g.a.d +s=7 +return A.i(A.ama(o,null,A.w("select",null,null),n),$async$$0) +case 7:m=b +if(m==null){s=1 +break}g.C(new A.clx(g,m)) +g.z=B.V.da(g.z,!0) +s=4 +break +case 6:l=new A.am(Date.now(),!1) +o=g.c +o.toString +n=g.gc6() +k=$.cuQ() +n=g.aIb(n.d8(0,k,t.d)) +j=A.cd(A.b7(l)-4,1,1,0,0,0,0,!1) +if(!A.bI(j))A.C(A.bV(j)) +i=A.cd(A.b7(l)+2,1,1,0,0,0,0,!1) +if(!A.bI(i))A.C(A.bV(i)) +s=8 +return A.i(A.amc(o,l,new A.am(j,!1),n,new A.am(i,!1),new A.cly(g)),$async$$0) +case 8:h=b +if(h==null){s=1 +break}o=g.gc6().d8(0,k.gfd(),t.a_) +J.eh(o).E7(o,h) +g.C(new A.clz(g,h)) +g.z=B.V.da(g.z,!0) +s=4 +break +case 4:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.clx.prototype={ +$0(){B.b.B(this.a.gwI(),this.b)}, +$S:0} +A.cly.prototype={ +$1(a){return A.bnT(this.a.gud(),new A.clw(a))}, +$S:175} +A.clw.prototype={ +$1(a){return A.bbH(a,this.a)}, +$S:175} +A.clz.prototype={ +$0(){B.b.B(this.a.gud(),this.b)}, +$S:0} +A.clF.prototype={ +$1(a){return this.aI1(a)}, +aI1(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +p.C(new A.clE(p,a)) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:178} +A.clE.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.clK.prototype={ +$2(a,b){var s=null,r=this.a,q=r.c +q.toString +q=A.bc(q)===B.y?B.cs:B.cF +q=A.Vw(new A.clJ(r,a),q) +return A.WE(new A.wX(A.E(A.w("timetable.patch.removedDay",s,s),s,s,s,s,s),s,b,r.a.d,s,s),new A.ca(b,t.UK),q)}, +$S:1646} +A.clJ.prototype={ +$0(){var s=this.a +s.C(new A.clI(s,this.b)) +s.z=B.V.da(s.z,!0)}, +$S:0} +A.clI.prototype={ +$0(){B.b.fE(this.a.gwI(),this.b)}, +$S:0} +A.clD.prototype={ +$2(a,b){var s,r=null,q=this.a,p=q.c +p.toString +p=A.bc(p)===B.y?B.cs:B.cF +p=A.Vw(new A.clC(q,a),p) +s=A.E(A.w("timetable.patch.removedDay",r,r),r,r,r,r,r) +return A.WE(A.VX(b,r,r,q.a.d,s),new A.ca(b,t.tJ),p)}, +$S:1647} +A.clC.prototype={ +$0(){var s=this.a +s.C(new A.clB(s,this.b)) +s.z=B.V.da(s.z,!0)}, +$S:0} +A.clB.prototype={ +$0(){B.b.fE(this.a.gud(),this.b)}, +$S:0} +A.clG.prototype={ +$1(a){return new A.f9(B.cw,a,null)}, +$S:1648} +A.clH.prototype={ +$1(a){return new A.f9(B.bI,null,a)}, +$S:1649} +A.MR.prototype={ +q(a){var s=t.PW,r=t.Qw +return A.bEa(new A.bM5(this),A.R(new A.O(B.FE,new A.bM6(),s),!0,s.h("aa.E")),A.d9([this.c],r),!0,null,r)}} +A.bM6.prototype={ +$1(a){var s=null +return new A.ig(a,s,A.E(A.w("timetable.dayLocMode."+a.b,s,s),s,s,s,s,s),t.Gj)}, +$S:1650} +A.bM5.prototype={ +$1(a){return this.aHE(a)}, +aHE(a){var s=0,r=A.p(t.H),q=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.a.d.$1(a.ga2(a)) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:1651} +A.wX.prototype={ +q(a){var s=this,r=null,q=s.e,p=s.r,o=q==null?A.E(A.w("unspecified",r,r),r,r,r,r,r):A.E(q.hI(),r,r,r,r,r),n=p==null?r:A.tR(!1,A.E(A.w("select",r,r),r,r,r,r,r),B.i,r,r,r,r,r,new A.bM7(s,a,q,p),r,r) +return A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,s.d,r,r,r,r,r,r,!1,r,r,o,r,r,s.c,r,n,r)}} +A.bM7.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=3 +return A.i(A.ama(p.b,p.c,A.w("select",null,null),p.a.f),$async$$0) +case 3:o=b +if(o==null){s=1 +break}p.d.$1(o) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.csN.prototype={ +$1(a){return new A.am(Date.now(),!1)}, +$S:1652} +A.aGx.prototype={ +hO(a,b){var s,r,q=this,p=null,o=q.r,n=q.x +if(o==null)s=A.E(A.w("unspecified",p,p),p,p,p,p,p) +else{s=a.a0(t.L).r.a +s===$&&A.b() +s=$.h2().i(0,s) +s=A.E((s==null?$.es():s).gPq().d4(o),p,p,p,p,p)}r=n==null?p:A.tR(!1,A.E(A.w("select",p,p),p,p,p,p,p),B.i,p,p,p,p,p,new A.bM4(a,o,b,n),p,p) +return A.aX(!1,p,p,p,!0,p,p,p,p,!1,p,q.f,p,p,p,p,p,p,!1,p,p,s,p,p,q.e,p,r,p)}} +A.bM4.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:m=new A.am(Date.now(),!1) +l=p.b +k=l==null?p.c.d8(0,$.cuQ(),t.Q0):l +j=A.cd(A.b7(m)-4,1,1,0,0,0,0,!1) +if(!A.bI(j))A.C(A.bV(j)) +o=A.cd(A.b7(m)+2,1,1,0,0,0,0,!1) +if(!A.bI(o))A.C(A.bV(o)) +s=3 +return A.i(A.amc(p.a,l,new A.am(j,!1),k,new A.am(o,!1),null),$async$$0) +case 3:n=b +if(n==null){s=1 +break}l=p.c.d8(0,$.cuQ().gfd(),t.a_) +J.eh(l).E7(l,n) +p.d.$1(n) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.abl.prototype={ +q(a){return new A.oo(new A.bMv(this.d,a,this.r),null)}} +A.bMv.prototype={ +$1(a){var s,r,q=this,p=null,o=A.a([],t.iT),n=q.a +if(n!=null){s=q.b +r=A.bc(s)===B.y?B.hF:B.kY +o.push(new A.eW(A.w("preview",p,p),new A.bMu(s,n),r))}n=q.c +if(n!=null){s=A.bc(q.b)===B.y?B.cs:B.cF +o.push(new A.eW(A.w("delete",p,p),n,s))}return o}, +$S:58} +A.bMu.prototype={ +$0(){var s=0,r=A.p(t.H),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.tp(q.a,q.b),$async$$0) +case 2:return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.N3.prototype={ +q(a){var s,r,q,p=this,o=null,n=p.x,m=p.y,l=p.c +if(l==null)l=o +else{s=p.d +s=l.$2(a,new A.To(s.gbl(s).c,p.e,!0,o)) +l=s}if(l==null){l=p.d +l=new A.To(l.gbl(l).c,p.e,!0,o)}s=p.d +r=A.E(A.w("timetable.patch.type."+s.gbl(s).b,o,o),o,o,o,o,o) +s=A.E(s.hI(),o,o,o,o,o) +q=n==null||m==null?o:new A.bMD(p,m,n) +return A.aX(!1,o,o,o,!0,o,o,o,o,!1,o,l,o,o,o,o,o,q,p.r,o,o,s,o,o,r,o,new A.abl(p.w,p.f,o,p.$ti.h("abl<1>")),o)}} +A.bMD.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.a +m=p.b.$1(n.d) +n=n.$ti +s=3 +return A.i(n.h("a8<1?>").b(m)?m:A.dO(m,n.h("1?")),$async$$0) +case 3:o=b +if(o==null){s=1 +break}p.c.$1(o) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.To.prototype={ +q(a){var s,r,q=null +if(this.d){s=A.G(a).ok.a +if(s==null)s=30}else s=q +r=new A.aA(new A.af(8,8,8,8),A.b2(this.c,q,q,q,q,q,q,q,s,q,q),q) +if(this.e)return A.jG(r,q,q,B.L) +else return r}} +A.ZH.prototype={ +q(a){var s=null,r=t.kb +return new A.ba(s,40,A.Sl(A.R(new A.O(B.aIZ,new A.b3p(this,a),r),!0,r.h("aa.E")),B.aiH,s,s,B.a_),s)}} +A.b3p.prototype={ +$1(a){var s=null +return A.wE(A.amJ(A.b2(a.c,s,s,s,s,s,s,s,s,s,s),A.E(A.w("timetable.patch.type."+a.b,s,s),s,s,s,s,s),new A.b3o(this.a,a,this.b)),0,0,8,0)}, +$S:1653} +A.b3o.prototype={ +$0(){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:o=p.a +n=p.b.FW(0,p.c,o.c,null) +s=3 +return A.i(t.yQ.b(n)?n:A.dO(n,t.kh),$async$$0) +case 3:m=b +if(m==null){s=1 +break}o.d.$1(m) +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.N7.prototype={ +J(){return new A.ajO(B.f)}} +A.ajO.prototype={ +gNi(){var s=this.a.d +return s==null?null:s.a}, +gXw(){var s=this.a.d +return s==null?null:s.b}, +gk_(a){var s,r=this.d +if(r===$){s=this.gNi() +r=s==null?null:s.a +r=this.d=r==null?B.bI:r}return r}, +gauH(){var s,r=this,q=r.e +if(q===$){s=r.gNi() +if((s==null?null:s.a)===B.cw){s=r.gNi() +if(s==null)q=null +else{s=s.b +s.toString +q=s}}else q=null +q=r.e=q}return q}, +gauG(){var s,r=this,q=r.f +if(q===$){s=r.gNi() +if((s==null?null:s.a)===B.bI){s=r.gNi() +if(s==null)q=null +else{s=s.c +s.toString +q=s}}else q=null +q=r.f=q}return q}, +gavN(){var s,r=this,q=r.r +if(q===$){s=r.gXw() +if((s==null?null:s.a)===B.cw){s=r.gXw() +if(s==null)q=null +else{s=s.b +s.toString +q=s}}else q=null +q=r.r=q}return q}, +gavM(){var s,r=this,q=r.w +if(q===$){s=r.gXw() +if((s==null?null:s.a)===B.bI){s=r.gXw() +if(s==null)q=null +else{s=s.c +s.toString +q=s}}else q=null +q=r.w=q}return q}, +q(a){var s=this,r=null,q=s.jU(),p=s.x&&s.jU()!=null,o=s.giG(),n=A.E(A.w("timetable.patch.type.swapDays",r,r),r,r,r,r,r),m=A.e8(A.E(A.w("preview",r,r),r,r,r,r,r),s.gpz()),l=s.jU()!=null?o:r,k=t.p +n=A.i4(A.a([m,A.e8(A.E(A.w("save",r,r),r,r,r,r,r),l)],k),r,r,r,!1,n) +l=A.a([A.iW(s.BA(),16,8)],k) +switch(s.gk_(0).a){case 0:m=s.BC() +break +case 1:m=s.Bz() +break +default:m=r}B.b.L(l,m) +if(q!=null)l.push(A.aX(!1,r,r,r,!0,r,r,r,r,!1,r,r,r,r,r,r,r,r,!1,r,r,r,r,r,A.E(q.hI(),r,r,r,r,r),r,r,r)) +return new A.mq(p,o,A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([n,A.eI(l)],k)),r,r,r,r),r)}, +BA(){return new A.MR(this.gk_(0),new A.cm0(this),null)}, +BC(){var s=this,r=null,q="timetable.patch.swappedDay",p=A.E(A.w(q,r,r),r,r,r,r,r),o=s.a.c,n=s.gauH(),m=A.E(A.w(q,r,r),r,r,r,r,r),l=s.a.c +return A.a([new A.wX(p,r,n,o,new A.cm3(s),r),new A.wX(m,r,s.gavN(),l,new A.cm4(s),r)],t.p)}, +Bz(){var s,r=this,q=null,p="timetable.patch.swappedDay",o=A.E(A.w(p,q,q),q,q,q,q,q),n=r.a.c +o=A.VX(r.gauG(),q,new A.clY(r),n,o) +n=A.E(A.w(p,q,q),q,q,q,q,q) +s=r.a.c +return A.a([o,A.VX(r.gavM(),q,new A.clZ(r),s,n)],t.p)}, +hz(){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$hz=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=q.c +n.toString +p=q.jU() +o=A.R(q.a.c.y,!0,t.kO) +if(p!=null)o.push(p) +s=2 +return A.i(A.tp(n,new A.kv(q.a.c).$1$patches(o)),$async$hz) +case 2:return A.n(null,r)}}) +return A.o($async$hz,r)}, +hm(){var s,r=this.c +r.toString +s=this.jU() +r=A.cc(r).c +r===$&&A.b() +r.dB(s)}, +jU(){var s,r,q=this,p=null,o=q.gauH(),n=q.gauG(),m=q.gavN(),l=q.gavM() +switch(q.gk_(0).a){case 0:s=o!=null?new A.f9(B.cw,o,p):p +break +case 1:s=n!=null?new A.f9(B.bI,p,n):p +break +default:s=p}switch(q.gk_(0).a){case 0:r=m!=null?new A.f9(B.cw,m,p):p +break +case 1:r=l!=null?new A.f9(B.bI,p,l):p +break +default:r=p}return s!=null&&r!=null?new A.nt(s,r):p}} +A.cm0.prototype={ +$1(a){return this.aI2(a)}, +aI2(a){var s=0,r=A.p(t.H),q=this,p +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:p=q.a +p.C(new A.cm_(p,a)) +return A.n(null,r)}}) +return A.o($async$$1,r)}, +$S:178} +A.cm_.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.cm3.prototype={ +$1(a){var s=this.a +s.C(new A.cm2(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:117} +A.cm2.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.cm4.prototype={ +$1(a){var s=this.a +s.C(new A.cm1(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:117} +A.cm1.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.clY.prototype={ +$1(a){var s=this.a +s.C(new A.clX(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:59} +A.clX.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.clZ.prototype={ +$1(a){var s=this.a +s.C(new A.clW(s,a)) +s.x=B.V.da(s.x,!0)}, +$S:59} +A.clW.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.abn.prototype={ +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.abn&&A.I(s)===A.I(b)&&s.a===b.a&&s.c.l(0,b.c)&&s.b.l(0,b.b)}} +A.abm.prototype={ +ed(a){return!this.f.l(0,a.f)}} +A.AB.prototype={ +J(){var s=$.eL.I().b,r=$.eL.I().b.ga06() +if(r==null)r=B.my +return new A.abo(s.w,r,B.f)}} +A.abo.prototype={ +a8(){this.an() +this.w.a3(0,this.gaEs())}, +m(){this.w.O(0,this.gaEs()) +this.ap()}, +bFv(){this.C(new A.bMV(this))}, +q(a){var s,r,q,p,o,n=this,m=n.gc6().dl($.cn.I().gk8().gaH5(),t.hU) +if(m==null)m=B.a1A +s=n.gc6().dl($.cn.I().gk8().gaH6(),t.Gd) +if(s==null)s=B.Cn +r=n.x +q=n.a +p=q.e +o=new A.bQr(new A.abn(r,s,m)).$3$background$cellStyle$platte(null,q.f,p) +return new A.abm(o,n.bo0(o),null)}, +bo0(a){var s=this.a.d +return s}} +A.bMV.prototype={ +$0(){var s=$.eL.I().b.ga06() +if(s==null)s=B.my +this.a.x=s}, +$S:0} +A.bQr.prototype={ +$3$background$cellStyle$platte(a,b,c){var s=J.q(c,B.l)||c==null?this.a.a:t.Vw.a(c),r=J.q(b,B.l)||b==null?this.a.b:t.c0.a(b) +return new A.abn(s,r,J.q(a,B.l)||a==null?this.a.c:t.rh.a(a))}, +$0(){return this.$3$background$cellStyle$platte(B.l,B.l,B.l)}} +A.aGu.prototype={ +q(a){return new A.aYp(this.c,null)}} +A.aYp.prototype={ +q(a){var s=null,r=this.c,q=r.d?B.bC:B.hB,p=r.c?B.uW:B.ce +return A.cFz(s,s,q,s,r.a,s,p)}} +A.abd.prototype={ +q(a){var s=a.a0(t.Jg).f.c +if(s.a.length!==0)return A.a8y(A.a([A.po(0,A.cN1(s,!0)),this.aw3()],t.p)) +return this.aw3()}, +aw3(){return A.hr(this.d,new A.bLJ(this),t.zo)}} +A.bLJ.prototype={ +$2(a,b){var s=this.a,r=s.e +s=s.c +return A.BS(b===B.CK?new A.a1w(s,r,null):new A.ac4(s,r,null),B.K,B.H,B.H,A.Oo())}, +$S:1654} +A.FD.prototype={ +q(a){var s=this,r=null,q=s.d.bwe(s.c) +return A.bW(r,r,A.cD(B.k,r,B.m,r,r,r,!1,r,B.v,A.a([A.i4(r,r,r,r,!1,A.FB(q[0].b)),new A.wI(B.ni,new A.ht(s.bpe(q),r),r),B.ic,new A.wI(B.ni,A.hs(new A.bM3(s,q),q.length),r)],t.p)),r,r,r,r)}, +bpe(a){var s,r,q=null,p=A.X(a).h("eE<1,f>"),o=A.hh(new A.eE(a,new A.bM2(),p),p.h("B.E")) +p=t.p +s=A.a([new A.kq(A.a([A.E(A.w("school.course.courseCode",q,q),q,q,q,q,q),A.E(this.c,q,q,q,q,q)],p)),new A.kq(A.a([A.E(A.w("school.course.classCode",q,q),q,q,q,q,q),A.E(a[0].d,q,q,q,q,q)],p))],t.nk) +r=o.a +if(r!==0)s.push(new A.kq(A.a([A.E(A.aai("school.course.teacher",r,q),q,q,q,q,q),A.E(o.bQ(0,", "),q,q,q,q,q)],p))) +return A.czc(s,B.b3y)}} +A.bM3.prototype={ +$2(a,b){var s=null,r=this.b[b] +if(r.a===this.a.e)return A.jG(new A.a15(r,!0,s),s,s,s) +else return A.m4(new A.a15(r,!1,s),s,s,s)}, +$S:43} +A.bM2.prototype={ +$1(a){return a.z}, +$S:1655} +A.a15.prototype={ +q(a){var s,r,q,p=null,o=this.c,n=o.r.hI(),m=A.bG8(o),l=m.a,k=m.b,j=A.E(o.f,p,p,p,p,p),i=A.w("weekday."+B.cf[B.d.M(o.y,7)].a,p,p),h=A.cd(0,1,1,l.a,l.b,0,0,!1) +if(!A.bI(h))A.C(A.bV(h)) +s=t.L +r=a.a0(s).r.a +r===$&&A.b() +q=$.h2() +r=q.i(0,r) +h=(r==null?$.es():r).gow().d4(new A.am(h,!1)) +r=A.cd(0,1,1,k.a,k.b,0,0,!1) +if(!A.bI(r))A.C(A.bV(r)) +s=a.a0(s).r.a +s===$&&A.b() +s=q.i(0,s) +i=A.a([A.E(i+" "+h+"\u2013"+(s==null?$.es():s).gow().d4(new A.am(r,!1)),p,p,p,p,p)],t.LT) +o=o.z +h=J.ao(o) +if(h.gA(o)>1)i.push(A.E(h.bQ(o,", "),p,p,p,p,p)) +B.b.L(i,new A.O(n,new A.baY(),A.X(n).h("O<1,eY>"))) +i=A.dd(i,B.a4,p,B.o,B.Z) +o=h.gA(o)===1?A.E(h.ga2(o),p,p,p,p,p):p +return A.aX(!1,p,p,p,!0,p,p,p,p,!0,p,p,p,p,p,p,p,p,this.d,p,p,i,p,p,j,p,o,p)}} +A.baY.prototype={ +$1(a){var s=null +return A.E(a,s,s,s,s,s)}, +$S:268} +A.a1w.prototype={ +J(){return new A.arZ(B.f)}} +A.arZ.prototype={ +a8(){var s,r=this +r.an() +s=r.a.d.a +s=A.KO(s.a*7+s.b.a,1) +s.a3(0,new A.bbq(r)) +r.d=s +r.e=$.xH().py(0,t.iJ).eB(new A.bbr(r))}, +m(){var s=this.e +s===$&&A.b() +s.ao(0) +s=this.d +s===$&&A.b() +s.m() +this.ap()}, +q(a){var s=this,r=null,q=A.hr(s.a.d,new A.bbn(s),t.Ce),p=s.d +p===$&&A.b() +return A.dd(A.a([q,A.f7(A.aAD(B.k,p,new A.bbo(s),140,r,r,!0,!0,r,!1,r,B.a_),1,r)],t.p),B.t,r,B.o,B.u)}} +A.bbq.prototype={ +$0(){var s=this.a +s.C(new A.bbp(s))}, +$S:0} +A.bbp.prototype={ +$0(){var s,r,q=this.a,p=q.d +p===$&&A.b() +p=t.gQ.a(B.b.gcW(p.f)).goA(0) +s=B.e.aF(p==null?0:p) +r=new A.fD(B.d.aD(s,7),B.cf[B.d.M(B.d.M(s,7),7)]) +if(!q.a.d.a.l(0,r))q.a.d.sj(0,r)}, +$S:0} +A.bbr.prototype={ +$1(a){var s,r,q=this.a,p=a.a,o=q.d +o===$&&A.b() +o=o.f +if(o.length!==0){s=p.a*7+p.b.a +r=t.gQ.a(B.b.gcW(o)).goA(0) +if(r==null)r=s +q.d.Bt(s,B.cl,A.cRS(Math.abs(s-r)))}}, +$S:475} +A.bbn.prototype={ +$2(a,b){return new A.W_(b.a,b.b,new A.bbm(b),this.a.a.c.a.b,null)}, +$S:1657} +A.bbm.prototype={ +$1(a){$.xH().a.B(0,new A.qf(new A.fD(this.a.a,a)))}, +$S:1658} +A.bbo.prototype={ +$2(a,b){var s=B.d.aD(b,7),r=B.d.M(b,7),q=this.a,p=q.a.c +A.FE(new A.am(Date.now(),!1),p.a.b) +return new A.MV(q.a.c,s,B.cf[B.d.M(r,7)],null)}, +$S:1659} +A.MV.prototype={ +J(){return new A.aYv(null,B.f)}} +A.aYv.prototype={ +c5(){this.dH() +this.d=null}, +q(a){var s,r=this +r.o5(a) +s=r.d +if(s!=null)return s +else return r.d=r.boU(a)}, +boU(a){var s,r,q,p,o,n,m=null,l=this.a,k=l.e,j=l.c.b[k].c[l.f.a] +if(!j.ab_()){l=this.a +return A.nk(A.aDC(new A.aut(l.c,k,l.f,m),m))}else{l=j.c +s=l.length +r=new A.ckg() +q=A.a([],t.p) +p=new A.c3o(r,q,B.bAo) +for(o=0;o") +return A.i1(A.R(new A.O(s,new A.bMl(this,this.e,a),r),!0,r.h("aa.E")),B.t,B.fW,B.u)}} +A.bMl.prototype={ +$1(a){var s,r,q=null,p=this.a +if(a===p.d){s=A.G(this.c).ay +r=s.w +s=r==null?s.f:r}else s=q +return A.f7(A.ly(!1,q,!0,new A.avc(p.c,a,p.f,s,q),q,!0,q,q,q,q,q,q,q,q,q,q,q,q,new A.bMk(this.b,a),q,q,q,q,q,q,q),1,q)}, +$S:1662} +A.bMk.prototype={ +$0(){this.a.$1(this.b)}, +$S:0} +A.avc.prototype={ +q(a){var s=this,r=null,q=A.G(a).ay.b +return A.amZ(r,new A.a3S(s.c,s.d,s.e,r),B.i,r,B.eb,new A.c_(s.f,r,new A.eR(B.G,B.G,new A.bx(A.Y(102,q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255),0.8,B.O,-1),B.G),r,r,r,r,B.U),B.b1,r,r,r,r,r,r,r,r)}} +A.a3S.prototype={ +q(a){var s=null,r=this.d,q=A.cTT(this.e,this.c,r) +return A.wE(A.dd(A.a([A.E(A.w("weekdayShort."+r.a,s,s),s,s,s,A.G(a).p3.x,B.at),A.E(""+A.bp(q)+"/"+A.cL(q),s,s,s,A.G(a).p3.ax,B.at)],t.LT),B.t,s,B.o,B.u),5,0,0,5)}} +A.atl.prototype={ +q(a){var s=null +return A.wE(A.dd(A.a([A.E("",s,s,s,A.G(a).p3.x,B.at),A.E("",s,s,s,A.G(a).p3.ax,B.at)],t.LT),B.t,s,B.o,B.u),5,0,0,5)}} +A.ac4.prototype={ +J(){return new A.aHO(new A.bm(B.A,$.ae(),t.IB),B.f)}} +A.aHO.prototype={ +a8(){var s,r=this +r.an() +s=A.KO(r.a.d.a.a,1) +s.a3(0,new A.bOT(r)) +r.d=s +r.f=$.xH().py(0,t.iJ).eB(new A.bOU(r))}, +m(){var s=this.f +s===$&&A.b() +s.ao(0) +s=this.d +s===$&&A.b() +s.m() +this.ap()}, +q(a){var s=null,r=this.d +r===$&&A.b() +return A.aAD(B.k,r,new A.bOR(this),20,s,s,!0,!0,s,!1,s,B.a_)}} +A.bOT.prototype={ +$0(){var s=this.a +s.C(new A.bOS(s))}, +$S:0} +A.bOS.prototype={ +$0(){var s,r=this.a,q=r.d +q===$&&A.b() +q=t.gQ.a(B.b.gcW(q.f)).goA(0) +s=B.e.aF(q==null?0:q) +q=r.a.d.a +if(s!==q.a){q=new A.aK7(q).$1$weekIndex(s) +r.a.d.sj(0,q)}}, +$S:0} +A.bOU.prototype={ +$1(a){var s,r,q=this.a,p=q.d +p===$&&A.b() +p=p.f +if(p.length!==0){s=a.a.a +r=t.gQ.a(B.b.gcW(p)).goA(0) +if(r==null)r=s +q.d.Bt(s,B.cl,A.cRS(Math.abs(s-r)))}}, +$S:475} +A.bOR.prototype={ +$2(a,b){return new A.MW(this.a.a.c,b,null)}, +$S:1663} +A.MW.prototype={ +J(){return new A.aYw(null,B.f)}} +A.aYw.prototype={ +gmv(){return!0}, +c5(){this.d=null +this.dH()}, +b1(a){this.bc(a) +if(this.a.c!==a.c)this.d=null}, +q(a){var s,r,q=this +q.o5(a) +s=q.d +if(s!=null)return s +else{r=a.a0(t.Jg).f +return q.d=new A.fV(new A.cki(q,new A.ckh(new A.am(Date.now(),!1),r)),null)}}} +A.ckh.prototype={ +$3$context$lesson$timetable(a,b,c){var s=b.a.c,r=J.cz(s),q=this.a.a +if(J.xK(r.ga2(s)).b.a>>16&255,o.gj(o)>>>8&255,o.gj(o)&255),0.8,B.O,-1),m=A.a([],t.p) +o=b.a*0.6 +m.push(new A.ba(o,q,B.aiY,q)) +for(s=b.b,r=0;r<11;){++r +m.push(A.bB(q,A.Mi(new A.k9(B.C,q,q,A.E(B.d.k(r),q,q,q,p,q),q),new A.V(o,s)),B.i,q,q,new A.c_(q,q,new A.eR(B.G,n,B.G,B.G),q,q,q,q,B.U),q,q,q,q,q,q,q,q))}return A.dd(m,B.t,q,B.o,B.u)}, +bp9(a,b,c,d,e){return A.i1(A.wj(8,new A.bMn(this,c,b,a,e),t.C),B.t,B.o,B.u)}, +aWH(a,b,c,d){var s,r,q,p,o,n,m,l=null,k=A.a([],t.p),j=B.cf[B.d.M(b.b,7)],i=c.a,h=this.d +if(d.a===h&&d.b===j){s=A.G(a).ay +r=s.w +s=r==null?s.f:r}else s=l +r=A.G(a).ay.b +q=this.c +k.push(A.bB(l,new A.a3S(h,j,q.a.b,l),B.i,l,l,new A.c_(s,l,new A.eR(B.G,B.G,new A.bx(A.Y(102,r.gj(r)>>>16&255,r.gj(r)>>>8&255,r.gj(r)&255),0.8,B.O,-1),B.G),l,l,l,l,B.U),l,l,l,l,l,l,l,i)) +for(h=b.c,s=c.b,r=this.r,p=0;p")).bQ(0,"\n"),p=this.a.c.a.b,o=A.w("school.course.courseCode",s,s)+" "+p.c,n=p.d +if(n.length!==0)o+="\n"+A.w("school.course.classCode",s,s)+" "+n +return o+("\n"+q)}} +A.c3_.prototype={ +$2(a,b){var s=null,r=this.a,q=r.bpq() +return A.FH(A.ly(!1,s,!0,b,s,!0,s,s,s,s,s,s,s,s,s,s,r.gaM8(),s,new A.c2Z(r),s,s,s,s,s,s,s),s,r.d,q,!1,s,B.at,B.bu_,s)}, +$S:1668} +A.c2Z.prototype={ +$0(){var s=0,r=A.p(t.H),q=this,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.a.d.gam() +if(p!=null)p.bvo() +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:2} +A.c30.prototype={ +$1(a){var s=this.b +return new A.FD(s.c,this.a.a.d,s.a,null)}, +$S:273} +A.c2Y.prototype={ +$1(a){var s,r,q,p=a.a,o=this.a,n=o.c +n.toString +s=p.a +p=p.b +p=A.cd(0,1,1,s,p,0,0,!1) +if(!A.bI(p))A.C(A.bV(p)) +s=t.L +n=n.a0(s).r.a +n===$&&A.b() +r=$.h2() +n=r.i(0,n) +p=(n==null?$.es():n).gow().d4(new A.am(p,!1)) +n=a.b +o=o.c +o.toString +q=n.a +n=n.b +n=A.cd(0,1,1,q,n,0,0,!1) +if(!A.bI(n))A.C(A.bV(n)) +o=o.a0(s).r.a +o===$&&A.b() +o=r.i(0,o) +return p+"\u2013"+(o==null?$.es():o).gow().d4(new A.am(n,!1))}, +$S:1669} +A.HY.prototype={ +q(a){var s=this,r=s.f,q=A.bC(a,null,t.l).w.gnU(0)===B.dw?8:5,p=A.nk(new A.aGK(s.c,s.d,s.e,q,null)) +q=r!=null?r.$2(a,p):p +return A.jG(q,B.k,s.r,B.aiN)}} +A.Fp.prototype={ +q(a){var s=this,r=s.r,q=s.c,p=r.b,o=p.W0(A.apu(s.d.Zq(r.a,q),A.G(a)),s.e,A.G(a).ay.b) +r=p.a?q.z:null +return new A.HY(q.b,q.f,r,s.f,o,null)}} +A.as4.prototype={ +q(a){var s,r=null,q=A.G(a).ay.cx +q=A.Y(B.e.aF(76.5),q.gj(q)>>>16&255,q.gj(q)>>>8&255,q.gj(q)&255) +s=A.b9(t.vm) +if(this.e)s.B(0,B.aBs) +if(this.d)s.B(0,B.EO) +return A.bB(r,this.c,B.i,r,r,new A.as3(s,q,0.5),r,r,r,r,r,r,r,r)}} +A.aGK.prototype={ +q(a){var s,r,q=this,p=null,o=q.e,n=A.G(a).p3.z +n=n==null?p:n.bu(p) +n=A.a([A.cy(p,p,p,n,q.c)],t.VO) +s=q.d +if(s.length!==0){s=A.cRJ(s) +r=A.G(a).p3.Q +r=r==null?p:r.bu(p) +n.push(A.cy(p,p,p,r,"\n"+s))}if(o!=null){s=J.xL(o,",") +r=A.G(a).p3.Q +r=r==null?p:r.bu(p) +n.push(A.cy(p,p,p,r,"\n"+s))}return new A.OT(p,A.cy(n,p,p,p,p),p,0,0.1,B.at,q.f,p)}} +A.b10.prototype={ +a8(){this.an() +this.mC()}, +fS(){var s=this.eW$ +if(s!=null){s.ab() +s.f4() +this.eW$=null}this.jO()}} +A.a_k.prototype={ +a3(a,b){var s,r,q=this,p=q.a,o=q.b,n=o.length +if(p===n){o=t.Nw +if(p===0){p=A.aK(1,null,!1,o) +q.b=p}else{s=A.aK(n*2,null,!1,o) +for(p=q.a,o=q.b,r=0;r0){r.b[s]=null;++r.d}else r.aWi(s) +break}}, +ab(){var s=0,r=A.p(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +var $async$ab=A.l(function(a3,a4){if(a3===1){o=a4 +s=p}while(true)switch(s){case 0:a1=n.a +if(a1===0){s=1 +break}++n.c +m=0,h=t.L0 +case 3:if(!(m0){d=n.a-n.d +a1=n.b +if(d*2<=a1.length){c=A.aK(d,null,!1,t.Nw) +for(a1=n.a,h=n.b,b=0,m=0;mm){s=o*2 +if(s>>2 +r|=r>>>4 +r|=r>>>8 +s=((r|r>>>16)>>>0)+1}q=new Uint8Array(s) +B.p.cV(q,0,m,n) +p.b=q +p.a=A.fe(q.buffer,0,null)}}, +blL(a){var s,r,q=a*2,p=this.b,o=p.length +if(q>>2 +s|=s>>>4 +s|=s>>>8 +q=((s|s>>>16)>>>0)+1}r=new Uint8Array(q) +B.p.cV(r,0,o,p) +this.b=r +this.a=A.fe(r.buffer,0,null)}, +blM(a,b){var s,r=this +r.Eh(a+b.c) +switch(b.a){case 0:r.adQ(a) +break +case 1:r.Eh(2) +s=r.a +s===$&&A.b() +s.setUint16(r.c,a,!1) +r.c+=2 +break +case 2:r.Eh(4) +s=r.a +s===$&&A.b() +s.setUint32(r.c,a,!1) +r.c+=4 +break +case 3:r.Eh(8) +s=r.a +s===$&&A.b() +B.hV.aLI(s,r.c,a,B.aF) +break}}, +adQ(a){var s,r=this +r.Eh(1) +s=r.a +s===$&&A.b() +s.setUint8(r.c,a);++r.c}, +aNw(a,b){var s,r,q,p=this,o=B.bo.cD(a),n=o.length +p.blM(n,b) +for(s=0;sp.b.length)p.blL(q) +q=p.a +q===$&&A.b() +q.setUint8(p.c,r);++p.c}}} +A.bpc.prototype={ +$1(a){return this.a.B(0,this.b.$1(a))}, +$S(){return this.c.h("A(0)")}} +A.bON.prototype={ +$1(a){var s=a.a,r=a.b +if(a.e==null)this.a.gla(0) +return new A.FT(s,r)}, +$S:1670} +A.crP.prototype={ +$1(a){return a<400}, +$S:96} +A.m3.prototype={ +Kc(){this.slV(0,this.w.$0())}, +m(){this.r.O(0,this.gxN()) +this.QY()}} +A.vt.prototype={ +Kc(){var s=this.w.$0() +this.slV(0,s==null?this.x.$0():s)}, +m(){this.r.O(0,this.gxN()) +this.QY()}} +A.C7.prototype={ +Kc(){this.slV(0,this.w.$0())}, +m(){this.r.O(0,this.gxN()) +this.QY()}} +A.b6T.prototype={ +$1(a){var s=this,r=s.a,q=r!=null?r.$0():A.dU(s.b,s.c,s.e),p=s.b,o=s.c,n=s.e +return A.cFn(q,A.Pe(p,[o],t.z),new A.b6R(r,p,o,n),new A.b6S(s.d,p,o,n),n)}, +$S(){return this.e.h("m3<0>(lM,0?>)")}} +A.b6R.prototype={ +$0(){var s=this,r=s.a +return r!=null?r.$0():A.dU(s.b,s.c,s.d)}, +$S(){return this.d.h("0?()")}} +A.b6S.prototype={ +$1(a){var s=this.a +return s!=null?s.$1(a):A.ds(this.b,this.c,a)}, +$S(){return this.d.h("~(0?)")}} +A.b6Q.prototype={ +$1(a){var s,r=this,q=r.b,p=r.c,o=r.f,n=A.dU(q,p,o) +if(n==null)n=r.d.$0() +s=A.Pe(q,[p],t.z) +o=new A.vt(s,new A.b6O(r.a,q,p,o),r.d,new A.b6P(r.e,q,p,o),new A.iz(o.h("iz>")),n,o.h("vt<0>")) +s.a3(0,o.gxN()) +return o}, +$S(){return this.f.h("vt<0>(lM,0>)")}} +A.b6O.prototype={ +$0(){var s=A.dU(this.b,this.c,this.d) +return s}, +$S(){return this.d.h("0?()")}} +A.b6P.prototype={ +$1(a){var s=A.ds(this.b,this.c,a) +return s}, +$S(){return this.d.h("~(0?)")}} +A.b6N.prototype={ +$2(a,b){var s=this,r=s.a,q=r.$1(b),p=s.b,o=s.e +return A.cFn(q,A.Pe(p,[s.c.$1(b)],t.z),new A.b6L(r,b,p,o),new A.b6M(s.d,b,p,o),o)}, +$S(){return this.e.h("@<0>").a1(this.f).h("m3<1>(lM,1?>,2)")}} +A.b6L.prototype={ +$0(){var s=this,r=s.a,q=s.b +return r!=null?r.$1(q):A.dU(s.c,q,s.d)}, +$S(){return this.d.h("0?()")}} +A.b6M.prototype={ +$1(a){var s=this.a.$2(this.b,a) +return s}, +$S(){return this.d.h("~(0?)")}} +A.b6K.prototype={ +$2(a,b){var s,r=this.a,q=this.b,p=q.$1(b) +if(!r.f)A.C(A.ij("Box has already been closed.")) +s=r.e +s===$&&A.b() +p=s.c.vx(p) +p=p==null?null:p.b +s=A.Pe(r,[q.$1(b)],t.z) +p=new A.C7(s,new A.b6J(r,q,b),new A.iz(t.Fo),p!=null) +s.a3(0,p.gxN()) +return p}, +$S(){return this.c.h("C7(lM,0)")}} +A.b6J.prototype={ +$0(){var s=this.a,r=this.b.$1(this.c) +if(!s.f)A.C(A.ij("Box has already been closed.")) +s=s.e +s===$&&A.b() +r=s.c.vx(r) +return(r==null?null:r.b)!=null}, +$S:3} +A.cxl.prototype={} +A.u3.prototype={ +bfp(){this.slV(0,this.w.$0())}, +m(){this.r.O(0,this.gaqz()) +this.QY()}} +A.bpe.prototype={ +$1(a){var s=this,r=s.a,q=s.b,p=s.d +p=new A.u3(q,r,s.c,new A.iz(p.h("iz>")),r.$0(),p.h("u3<0>")) +q.a3(0,p.gaqz()) +return p}, +$S(){return this.d.h("u3<0>(lM,0>)")}} +A.mq.prototype={ +q(a){return new A.zT(this.e,new A.byo(this,a),!1,null)}} +A.byo.prototype={ +$1(a){return this.aHB(a)}, +aHB(a){var s=0,r=A.p(t.H),q,p=this,o,n,m +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(a){s=1 +break}o=p.a +if(!o.c){o=A.cc(p.b).c +o===$&&A.b() +o.dB(null) +s=1 +break}n=p.b +s=3 +return A.i(A.yx(n,A.w("saveAndQuitPrompt.request",null,null),!0,A.w("saveAndQuitPrompt.saveAndQuit",null,null),!1,A.w("saveAndQuitPrompt.discard",null,null),!0,null),$async$$1) +case 3:m=c +s=m===!0?4:6 +break +case 4:o=o.d.$0() +s=7 +return A.i(t.uz.b(o)?o:A.dO(o,t.H),$async$$1) +case 7:s=5 +break +case 6:if(m===!1){if(n.e==null){s=1 +break}o=A.cc(n).c +o===$&&A.b() +o.dB(null)}case 5:case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:91} +A.ctu.prototype={ +$0(){return this.a.$1(this.b)}, +$S:0} +A.Hz.prototype={ +J(){return new A.aLQ(new A.eZ(B.bU,$.ae()),B.f)}} +A.aLQ.prototype={ +q(a){var s=null +return new A.nM(A.w("captcha.title",s,s),new A.k4(A.w("submit",s,s),!0,!0,new A.bTU(this,a)),new A.k4(A.w("cancel",s,s),!1,!1,new A.bTV(a)),!1,new A.bTW(this,a),s)}, +m(){this.ap() +var s=this.d +s.k3$=$.ae() +s.k2$=0}} +A.bTU.prototype={ +$0(){A.cN(this.b,!1).dB(this.a.d.a.a)}, +$S:0} +A.bTV.prototype={ +$0(){A.cN(this.a,!1).dB(null)}, +$S:0} +A.bTW.prototype={ +$1(a){var s=null,r=this.a +return new A.aA(new A.af(5,5,5,5),A.dd(A.a([new A.z4(A.bBY(s,s,new A.wo(r.a.c,0.5)),s,s,s,s,s,s,s,B.bC,s,s,B.C,B.ce,!1,s,!1,s),A.wE(A.b2v(B.aPu,!0,r.d,s,B.xW,s,s,s,new A.bTT(this.b),A.w("captcha.enterHint",s,s),s),0,0,0,15)],t.p),B.t,s,B.o,B.Z),s)}, +$S:425} +A.bTT.prototype={ +$1(a){A.cN(this.a,!1).dB(a)}, +$S:46} +A.aDz.prototype={ +q(a){var s=null,r=A.G(a).p3.z +return new A.a3Z(s,!0,s,s,s,this.c,new A.bC9(r,a),s,s,new A.bCa(a),new A.bCb(a),s,this.d,r,s)}} +A.bC9.prototype={ +$0(){var s=null,r=A.G(this.b).ay,q=r.dx +r=q==null?r.cy:q +return new A.a8x(this.a,r,s,s,s,s,A.a([],t.vf),$)}, +$S:1671} +A.bCb.prototype={ +$1(a){return this.aHC(a)}, +aHC(a){var s=0,r=A.p(t.y),q,p=this +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=3 +return A.i(A.tm(p.a,a),$async$$1) +case 3:q=c +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:1672} +A.bCa.prototype={ +$1(a){var s,r,q=null,p=a.b +p=A.a(p.slice(0),A.X(p)) +p=A.awc(p) +s=p==null?q:p.b +r=a.c +if(r==null)r=a.a +p=A.N(t.N,t.z) +if(r!=null&&r.length!==0)p.n(0,"title",r) +if((s==null?q:B.c.aC(s,"http"))===!0)p.n(0,"origin",s) +p=A.fi(q,q,"/image",q,q,q,p,q).grg() +A.cc(this.a).fg(p,s,t.X)}, +$S:1673} +A.a8x.prototype={ +LL(a,b,c,d){var s=this.p2 +if(s==null)s=null +else s=s.bsE(c.b,c.CW,c.cx,c.cy,c.db,c.x) +return this.aRj(a,b,s,d)}, +awt(a,b,c){return this.LL(null,a,b,c)}, +FC(a,b,c,d,e,f){return this.aRh(a,b,A.dnH(c,this.p3),d,B.D,f)}, +awc(a,b,c,d){return this.FC(a,b,c,d,null,null)}, +awd(a,b,c,d){return this.FC(a,b,null,null,c,d)}} +A.af9.prototype={ +H(){return"_ImageMode."+this.b}} +A.a4a.prototype={ +J(){return new A.aQ9(B.yO,B.f)}} +A.aQ9.prototype={ +a8(){this.an() +this.k5(0)}, +b1(a){this.bc(a) +if(this.a.c!==a.c)this.k5(0)}, +k5(a){var s,r,q,p=this,o=p.a.c +p.C(new A.c27(p)) +if(o==null)p.C(new A.c28(p)) +else if(J.b2X(o,"data")){p.C(new A.c29(p)) +try{s=J.b2W(o,",") +r=B.eX.cD(J.aS(s,1)) +p.C(new A.c2a(p,r))}catch(q){p.C(new A.c2b(p))}}else p.C(new A.c2c(p))}, +q(a){var s,r=this,q=null,p=r.a.c,o=r.e,n=r.d +if(n===B.yO&&!0)s=new A.yc(q,p,q,q,q,q,q,B.Em) +else s=n===B.a_w&&o!=null?new A.wo(o,1):q +return A.cK8(s==null?B.Dm:r.boz(s),q)}, +boz(a){var s=null +return A.cxn(B.C,s,s,new A.c25(this),!1,B.bC,s,s,s,a,s,new A.c26(),!1,B.ce,s,s)}} +A.c27.prototype={ +$0(){this.a.e=null}, +$S:0} +A.c28.prototype={ +$0(){this.a.d=B.a_x}, +$S:0} +A.c29.prototype={ +$0(){this.a.d=B.a_w}, +$S:0} +A.c2a.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.c2b.prototype={ +$0(){this.a.d=B.a_x}, +$S:0} +A.c2c.prototype={ +$0(){this.a.d=B.yO}, +$S:0} +A.c26.prototype={ +$3(a,b,c){var s,r,q=null +if(c==null)return b +else{s=c.a +r=c.b +if(r==null||r===0)return B.iI +else return A.d2O(q,q,q,q,q,0,q,4,s/r,q)}}, +$C:"$3", +$R:3, +$S:223} +A.c25.prototype={ +$3(a,b,c){return B.Dm}, +$S:165} +A.RC.prototype={ +q(a){var s=null,r=this.d +return A.bW(A.jb(s,s,!0,s,s,1,s,s,s,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,A.E(r==null?A.w("untitled",s,s):r,s,s,s,s,s),s,s,s,1,s),s,A.nk(new A.a4a(this.c,s)),s,s,s,s)}} +A.azN.prototype={ +q(a){var s=null,r=this.e +if(r==null)r=new A.qR() +return A.avg(A.dn(s,this.c,B.m,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.btp(this,a,r),s,s,s,s,s,s,s,!1,B.ac),s,s,s,r,!1)}} +A.btp.prototype={ +$0(){var s=t.z,r=A.cKy(!1,new A.bto(this.a,this.c),s) +A.cN(this.b,!1).pF(r,s)}, +$S:0} +A.bto.prototype={ +$3(a,b,c){return new A.Ra(this.a.c,B.B,this.b,null)}, +$C:"$3", +$R:3, +$S:1674} +A.Ra.prototype={ +q(a){var s=null,r=A.po(0,A.dn(s,A.cJ4(B.aiM,this.c,5,0.5,!0,!0,s),B.m,!1,s,new A.bju(a),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,!1,B.ac)) +return A.avg(A.bW(s,this.d,new A.d4(B.ar,s,B.am,B.k,A.a([r,A.cLM(new A.fl(B.eU,s,s,new A.aA(new A.af(16,16,16,16),A.du(s,A.b2(A.bc(a)===B.y?B.f4:B.fB,s,s,s,s,s,s,s,s,s,s),s,new A.bjv(a),s),s),s),!0)],t.p),s),s,s,s,s),s,s,s,this.e,!1)}} +A.bju.prototype={ +$0(){var s=A.cc(this.a).c +s===$&&A.b() +s.dB(null)}, +$S:0} +A.bjv.prototype={ +$0(){A.cN(this.a,!1).fD()}, +$S:0} +A.aAc.prototype={ +q(a){var s=null,r=A.jb(s,s,!0,s,s,1,s,s,s,!1,s,!1,s,s,s,s,!0,s,s,s,s,s,A.E(A.w("404.title",s,s),s,s,s,s,s),s,s,s,1,s) +return A.bW(r,s,A.kj($.eN.I().gnS(0)?this.c:"404.subtitle",B.akD,s,s,s),s,s,s,s)}} +A.a6F.prototype={ +J(){return new A.aSS(A.a([],t.Zb),B.f)}, +bCu(a){return this.z.$1(a)}} +A.aSS.prototype={ +aJz(){var s={},r=this.a,q=Math.min(r.w,r.r) +s.a=A.a([],t.t) +this.C(new A.c9i(s,this,q))}, +q(a){this.aJz() +this.d=A.KO(0,1) +return this.bot(a)}, +bot(a){var s,r,q=this,p=null,o=A.a([],t.p),n=q.a.c +o.push(new A.aiF(n,50,!0,new A.c9e(q),p)) +n=q.d +n===$&&A.b() +s=q.e +o.push(A.f7(A.aAD(B.k,n,new A.c9f(q),new A.b1(s,new A.c9g(),A.X(s).h("b1<1>")).gA(0),p,p,!0,!0,p,!1,p,B.a_),1,p)) +n=q.a.c +s=n.b +r=new A.dJ(B.J,s.a,B.J,s.c) +s=r +o.push(new A.aiF(new A.aEI(n.a,s,n.c),50,!1,new A.c9h(q),p)) +o=A.i1(o,B.t,B.o,B.u) +q.a.toString +n=A.bC(a,p,t.l).w +return new A.ba(n.a.a,60,o,p)}} +A.c9i.prototype={ +$0(){var s,r,q,p,o,n=this.b +n.e=A.a([],t.Zb) +for(s=this.a,r=this.c,q=t.t,p=0;p=r){n.e.push(o) +s.a=A.a([],q)}}s=s.a +if(s.length!==0)n.e.push(s)}, +$S:0} +A.c9e.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.aDq(B.cl,B.bd)}, +$S:0} +A.c9g.prototype={ +$1(a){return J.iL(a)}, +$S:1675} +A.c9f.prototype={ +$2(a,b){var s=this.a,r=s.e[b],q=A.X(r).h("O<1,rq>") +return A.eq(A.R(new A.O(r,new A.c9d(s),q),!0,q.h("aa.E")),B.t,null,B.o,B.u,null,null,B.x)}, +$S:1676} +A.c9d.prototype={ +$1(a){var s,r=this.a,q=r.a,p=q.f,o=a+1 +q=q.d +s=o===p?B.js:B.du +return A.f7(new A.aSR(p===o,50,o,s,new A.c9c(r),q,null),1,null)}, +$S:1677} +A.c9c.prototype={ +$1(a){this.a.a.bCu(a)}, +$S:189} +A.c9h.prototype={ +$0(){var s=this.a.d +s===$&&A.b() +s.aCp(B.cl,B.bd)}, +$S:0} +A.aiF.prototype={ +q(a){var s,r=this,q=null,p=A.G(a) +if(r.e)s=B.azV +else s=B.azf +return new A.ba(q,r.d,A.fX(B.K,!0,r.c.b,A.ly(!1,q,!0,new A.aA(B.cq,s,q),q,!0,q,q,q,q,q,q,q,q,q,q,q,q,r.f,q,q,q,q,q,q,q),B.k,p.ay.CW,0,q,q,q,q,q,B.bT),q)}} +A.aSR.prototype={ +q(a){var s,r,q=this,p=null,o=A.ed(0) +if(q.c){s=A.G(a).ay +r=s.dx +s=r==null?s.cy:r}else s=A.G(a).ay.CW +r=B.d.k(q.e) +o=A.fX(B.K,!0,o,A.ly(!1,p,!0,A.nk(A.E(r,p,p,p,p,B.at)),p,!0,p,p,p,p,p,p,p,p,p,p,p,p,new A.c9b(q),p,p,p,p,p,p,p),B.k,s,0,p,p,p,p,p,B.bT) +return new A.ba(A.bC(a,p,t.l).w.a.a,q.d,o,p)}} +A.c9b.prototype={ +$0(){var s=this.a +s.r.$1(s.e)}, +$S:0} +A.bw8.prototype={} +A.aEI.prototype={} +A.aw5.prototype={} +A.a4o.prototype={ +J(){return new A.aQh(new A.bOO(A.dbe(B.a5a)),B.f)}} +A.aQh.prototype={ +a8(){this.an() +var s=this.a.d +if(s==null)s=A.czF() +this.a.toString +s.afG(B.aAH)}, +q(a){var s=this.d +s===$&&A.b() +return new A.aHN(A.dbf(new A.bxI(s.a)),null)}} +A.Nk.prototype={ +J(){return new A.akf(B.f)}} +A.akf.prototype={ +gOX(a){var s,r=this.e +if(r===$){s=A.x5(this.a.c) +r=this.e=s==null?null:s.gavG()}return r}, +a8(){this.an() +var s=this.a.Q +this.d=s==null?A.czF():s}, +SW(){var s=0,r=A.p(t.H),q=this,p +var $async$SW=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.d +p===$&&A.b() +s=2 +return A.i(p.aEB(0),$async$SW) +case 2:return A.n(null,r)}}) +return A.o($async$SW,r)}, +SY(){var s=0,r=A.p(t.H),q=this,p +var $async$SY=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p=q.d +p===$&&A.b() +s=2 +return A.i(p.ayf(),$async$SY) +case 2:return A.n(null,r)}}) +return A.o($async$SY,r)}, +q(a){var s,r,q,p,o,n,m=this,l=null,k=A.a([],t.p) +m.a.toString +k.push(A.du(l,A.b2(A.bc(a)===B.y?B.fz:B.fA,l,l,l,l,l,l,l,l,l,l),l,m.gbbY(),l)) +m.a.toString +k.push(A.du(l,A.b2(A.bc(a)===B.y?B.uA:B.uM,l,l,l,l,l,l,l,l,l,l),l,m.gbcb(),l)) +m.a.toString +k.push(A.du(l,B.j2,l,new A.cmZ(m),l)) +s=m.a +s=s.d +r=s==null?m.gOX(0):s +s=A.FB(r==null?A.w("untitled",l,l):r) +s=A.jb(k,l,!0,l,new A.rP(A.cxO(m.f/100),B.he,l),1,l,l,l,!1,l,!1,l,l,l,l,!0,l,l,l,l,l,s,l,l,l,1,l) +k=m.a +q=k.cy +p=k.c +k=k.Q +o=A.a([],t.hq) +n=m.a +n=n.f +if(n!=null)B.b.L(o,n) +return new A.Wx(A.bW(s,l,new A.a4o(p,k,l,o,l,new A.cn_(m),new A.cn0(m),m.a.cx,"Mozilla/5.0 (Linux; Android 10; HMA-AL00 Build/HUAWEIHMA-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.106 Mobile Safari/537.36",l,l),q,l,l,l),new A.cn1(m),l)}} +A.cmZ.prototype={ +$0(){return A.Oq(this.a.a.c,B.l1)}, +$S:0} +A.cn1.prototype={ +$0(){var s=0,r=A.p(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$$0=A.l(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +j=n.a.d +j===$&&A.b() +s=7 +return A.i(j.awE(),$async$$0) +case 7:m=b +p=2 +s=6 +break +case 4:p=3 +h=o +l=A.ag(h) +k=A.aD(h) +A.ll(l,k) +q=!0 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$$0,r)}, +$S:99} +A.cn_.prototype={ +$1(a){return this.aI3(a)}, +aI3(a){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=p.a +if(n.c==null){s=1 +break}s=n.a.d==null?3:4 +break +case 3:o=n.d +o===$&&A.b() +s=5 +return A.i(o.af5(),$async$$1) +case 5:case 4:n.a.toString +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:171} +A.cn0.prototype={ +$1(a){var s=this.a +if(s.c==null)return +s.a.toString +s.C(new A.cmY(s,a))}, +$S:12} +A.cmY.prototype={ +$0(){return this.a.f=this.b.M(0,100)}, +$S:0} +A.azR.prototype={ +aR(a){var s=new A.aCX(!0,0,null,null,A.aw(t.T)) +s.aQ() +return s}, +b_(a,b){}} +A.Eg.prototype={} +A.aCX.prototype={ +fo(a){if(!(a.b instanceof A.Eg))a.b=new A.Eg(null,null,B.h)}, +gRn(a){return new A.dz(this.aYc(0),t.lm)}, +aYc(a){var s=this +return function(){var r=a +var q=0,p=1,o,n,m,l +return function $async$gRn(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:l=s.Y$ +n=A.z(s).h("ap.1") +case 2:if(!(l!=null)){q=3 +break}q=4 +return b.b=l,1 +case 4:m=l.b +m.toString +l=n.a(m).a7$ +q=2 +break +case 3:return 0 +case 1:return b.c=o,3}}}}, +gaoX(){return new A.dz(this.aYe(),t.lm)}, +aYe(){var s=this +return function(){var r=0,q=1,p,o,n,m +return function $async$gaoX(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:m=s.d7$ +o=A.z(s).h("ap.1") +case 2:if(!(m!=null)){r=3 +break}r=4 +return a.b=m,1 +case 4:n=m.b +n.toString +m=o.a(n).dJ$ +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}, +bJ(){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.Y$ +if(h==null){j.fx=B.lT +return}s=t.q +r=s.a(A.H.prototype.gZ.call(j)) +q=s.a(A.H.prototype.gZ.call(j)) +p=s.a(A.H.prototype.gZ.call(j)) +o=s.a(A.H.prototype.gZ.call(j)) +n=s.a(A.H.prototype.gZ.call(j)) +m=s.a(A.H.prototype.gZ.call(j)) +l=s.a(A.H.prototype.gZ.call(j)) +k=j.b8q(j.gVu(),s.a(A.H.prototype.gZ.call(j)).z,h,n.w,m.b,o.y,q.f,l.Q,p.r,r.d) +if(k!=null){j.fx=A.i5(i,i,!1,i,i,0,0,0,0,0,k,i) +return}}, +b8q(a7,a8,a9,b0,b1,b2,b3,b4,b5,b6){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=t.q,a4=A.cRF(a3.a(A.H.prototype.gZ.call(a1)).c,b1),a5=Math.min(0,b3),a6=a3.a(A.H.prototype.gZ.call(a1)).e +for(s=a2,r=0,q=0,p=0,o=0,n=!1,m=0,l=!1;a9!=null;){k=b6<=0?0:b6 +j=Math.max(a8,-k) +i=a8-j +h=a1.bzS(new A.Aj(a3.a(A.H.prototype.gZ.call(a1)).a,b1,a4,k,a6,Math.max(b3,a5)-r,Math.max(0,b5-r+0),b0,a3.a(A.H.prototype.gZ.call(a1)).x,b2,j,Math.max(0,b4+i)),a9,!0) +g=h.d +g===$&&A.b() +f=g.y +if(f!=null)return f +e=r+g.b +if(g.w||b6>0)a1.a6v(a9,e) +else a1.a6v(a9,-b6+0) +g=s==null?1/0:s +f=h.d +s=Math.min(g,f.b) +a5=Math.max(e+f.c,a5) +g=a3.a(A.H.prototype.gZ.call(a1)) +d=h.e +d===$&&A.b() +q=Math.max(q,e+f.e+g.d-d.d) +d=h.d +p=Math.max(p,r+d.r) +g=d.a +b6-=g +o+=g +a6+=g +r+=d.d +n=n||d.x +m+=d.f +l=l||d.w +g=d.z +if(g!==0){b4-=g-i +a8=Math.min(j+g,0)}a9=a7.$1(a9)}for(g=a1.gRn(0),g=new A.dr(g.a(),g.$ti.h("dr<1>")),f=t.xH;g.t();){d=g.b +c=f.a(d.b).c +c===$&&A.b() +s.toString +a1.a6v(d,c-s)}b=Math.max(0,o-a3.a(A.H.prototype.gZ.call(a1)).d) +if(a5>b){a1.aYZ(a5,b,A.cO(a3.a(A.H.prototype.gZ.call(a1)).a)) +m=Math.min(b,m) +a5=b +r=a5}if(s==null)s=0 +a=Math.max(0,Math.min(a5-s,a3.a(A.H.prototype.gZ.call(a1)).r-s)) +g=B.e.dV(s+a,0,a3.a(A.H.prototype.gZ.call(a1)).r)-s +a0=Math.max(0,Math.min(r,g)) +a3=a3.a(A.H.prototype.gZ.call(a1)) +f=l&&a>0 +a1.fx=A.i5(a3.Q-b4,a2,!0,a2,a0,q-s,m,g,s,o,a2,f) +return a2}, +bzS(a,b,c){var s,r,q,p,o=null,n=t.xH.a(b.b) +n.e=a +if(b instanceof A.da){b.d_(a,!0) +s=b.fx +s.toString +n.d=s}else if(b instanceof A.J){b.d_(a.V4(),!0) +switch(A.cO(a.a).a){case 0:r=b.gu(0).a +break +case 1:r=b.gu(0).b +break +default:r=o}q=this.nC(a,0,r) +p=this.vV(a,0,r) +if(q>0)s=r>a.r||a.d>0 +else s=!1 +s=A.i5(p,o,s,q,o,r,0,q,0,r,o,o) +n.d=s +this.aKL(b,a,s)}else throw A.d(A.aM("MultiSliver can only handle RenderSliver and RenderBox children",o)) +return n}, +aKL(a,b,c){var s=a.b +s.toString +t.xH.a(s) +switch(A.mN(b.a,b.b).a){case 0:s.f=new A.j(0,c.a-c.c) +break +case 1:s.f=new A.j(-b.d,0) +break +case 2:s.f=new A.j(0,-b.d) +break +case 3:s.f=new A.j(c.a-c.c,0) +break}}, +aYZ(a,b,c){var s,r,q,p,o,n=a-b +for(s=this.gRn(0),s=new A.dr(s.a(),s.$ti.h("dr<1>")),r=c.a,q=t.xH;s.t();){p=q.a(s.b.b) +o=p.d +o===$&&A.b() +if(!o.w)continue +switch(r){case 0:o=p.a +p.a=new A.j(o.a-n,o.b-0) +break +case 1:o=p.a +p.a=new A.j(o.a-0,o.b-n) +break}}}, +a6v(a,b){var s,r=t.xH.a(a.b) +r.c=b +switch(A.cO(t.q.a(A.H.prototype.gZ.call(this)).a).a){case 0:r.a=new A.j(b,0) +break +case 1:r.a=new A.j(0,b) +break}s=r.f +if(s!=null)r.a=r.a.S(0,s)}, +ajZ(a){var s=t.xH.a(a.b) +switch(A.cO(t.q.a(A.H.prototype.gZ.call(this)).a).a){case 1:return s.a.b +case 0:return s.a.a}}, +zj(a,b,c){var s,r,q,p,o,n,m,l,k +for(s=this.gRn(0),r=s.gaz(0),s=new A.i6(r,new A.bB7(),s.$ti.h("i6")),q=a.a,p=a.b,o=a.c,n=t.xH;s.t();){m=r.gK(0) +if(m instanceof A.da){l=n.a(m.b).a +k=this.ajZ(m) +if(a.ava(0,b,m.gaAD(),k,c,l))return!0}else if(m instanceof A.J)if(this.Xq(new A.ty(q,p,o),m,b,c))return!0}return!1}, +aI(a,b){var s,r,q,p,o,n,m=this,l=t.q,k=A.mN(l.a(A.H.prototype.gZ.call(m)).a,l.a(A.H.prototype.gZ.call(m)).b) +for(l=m.gaoX(),l=new A.dr(l.a(),l.$ti.h("dr<1>")),s=t.xH,r=b.a,q=b.b;l.t();){p=l.b +o=s.a(p.b).d +o===$&&A.b() +if(o.w){n=m.alv(p,k) +a.eM(p,new A.j(r+n.a,q+n.b))}}}, +hh(a,b){var s=t.q,r=this.alv(a,A.mN(s.a(A.H.prototype.gZ.call(this)).a,s.a(A.H.prototype.gZ.call(this)).b)) +b.ba(0,r.a,r.b)}, +alv(a,b){var s,r=t.xH.a(a.b),q=r.d +q===$&&A.b() +s=r.a +switch(b.a){case 2:case 1:return s +case 0:return new A.j(s.a,this.fx.c-q.c-s.b) +case 3:return new A.j(this.fx.c-q.c-s.a,s.b)}}, +Vv(a){var s=t.xH.a(a.b).e +s===$&&A.b() +return s.e-t.q.a(A.H.prototype.gZ.call(this)).e}, +nF(a){return this.ajZ(a)}} +A.bB7.prototype={ +$1(a){var s=t.xH.a(a.b).d +s===$&&A.b() +return s.w}, +$S:1678} +A.aS_.prototype={ +ar(a){this.E3(0)}} +A.aV0.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.xH;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.xH;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.aV1.prototype={} +A.a8j.prototype={ +sBM(a,b){var s=this,r=s.dQ +if(b!==r){if(r!=null)r.O(0,s.gasb(s)) +s.dQ=b +b.cY() +r=b.em$ +r.b=!0 +r.a.push(s.gasb(s))}}, +biw(a){var s=this.eT,r=this.dQ.x +r===$&&A.b() +if(s===r)return +this.a9()}, +bJ(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.dQ.x +f===$&&A.b() +g.eT=f +f=g.k1$ +f.toString +s=t.q +f.d_(s.a(A.H.prototype.gZ.call(g)),!0) +r=g.fA +if(r==null){f=g.k1$.fx.e +r=g.fA=new A.aP(f,f,t.Y) +f=r}else f=r +q=g.iQ +if(q==null){p=g.k1$.fx.a +q=g.iQ=new A.aP(p,p,t.Y) +p=q}else p=q +o=g.k1$.fx +n=o.e +if(n!==r.b||o.a!==q.b){m=g.fx +f.a=m.e +f.b=n +p.a=m.a +p.b=o.a +g.eT=0 +g.dQ.sj(0,0) +o=g.dQ +o.toString +p=g.eX +p===$&&A.b() +m=g.dr +m===$&&A.b() +o.z=B.b_ +o.kn(1,m,p)}l=r.ah(0,g.dQ.gj(0)) +k=q.ah(0,g.dQ.gj(0)) +f=r.a +f.toString +p=r.b +p.toString +o=g.k1$ +if(f>p){j=Math.max(0,Math.max(o.fx.c,l-s.a(A.H.prototype.gZ.call(g)).d)) +f=s.a(A.H.prototype.gZ.call(g)) +s=g.k1$ +p=s.fx +o=p.b +j=Math.min(j,f.r-o) +i=Math.max(p.d,o+j) +f=s}else{j=Math.max(0,Math.min(o.fx.c,l-s.a(A.H.prototype.gZ.call(g)).d)) +f=g.k1$ +s=f.fx +i=Math.min(s.d,s.b+j)}f=f.fx +s=f.r +p=f.b +h=Math.min(s,p+j) +s=f.z +o=f.f +n=f.w +g.fx=A.i5(s,null,f.x,h,i,l,o,j,p,k,f.y,n)}, +aI(a,b){var s,r,q,p=this +if(p.k1$==null){p.ch.sb9(0,null) +return}s=t.q +switch(A.cO(s.a(A.H.prototype.gZ.call(p)).a).a){case 0:r=new A.j(p.fx.c,s.a(A.H.prototype.gZ.call(p)).w) +break +case 1:r=new A.j(s.a(A.H.prototype.gZ.call(p)).w,p.fx.c) +break +default:r=null}s=p.dQ.r +s=s!=null&&s.a!=null +q=p.ch +if(s){s=p.cx +s===$&&A.b() +q.sb9(0,a.bEG(s,b,A.lG(B.h,r),new A.bBr(p),t.EM.a(q.a)))}else{q.sb9(0,null) +p.ahm(a,b)}}} +A.bBr.prototype={ +$2(a,b){return this.a.ahm(a,b)}, +$S:14} +A.aDf.prototype={ +bJ(){var s,r,q,p,o=this,n=null,m=o.k1$ +m.toString +s=t.q +m.d_(s.a(A.H.prototype.gZ.call(o)).V4(),!0) +switch(A.cO(s.a(A.H.prototype.gZ.call(o)).a).a){case 0:r=o.k1$.gu(0).a +break +case 1:r=o.k1$.gu(0).b +break +default:r=n}m=s.a(A.H.prototype.gZ.call(o)) +q=s.a(A.H.prototype.gZ.call(o)) +p=Math.min(A.fP(r),m.r-q.f) +q=s.a(A.H.prototype.gZ.call(o)) +o.fx=A.i5(n,n,p=r||s[n]!==10)o=10}if(o===10)q.push(p+1)}}, +xp(a,b,c){return A.hP(this,b,c)}, +Iu(a){var s,r=this +if(a<0)throw A.d(A.b8("Offset may not be negative, was "+a+".")) +else if(a>r.c.length)throw A.d(A.b8("Offset "+a+u.D+r.gA(0)+".")) +s=r.b +if(a=B.b.gP(s))return s.length-1 +if(r.b89(a)){s=r.d +s.toString +return s}return r.d=r.b1_(a)-1}, +b89(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}, +a_v(a){var s,r,q=this +if(a<0)throw A.d(A.b8("Offset may not be negative, was "+a+".")) +else if(a>q.c.length)throw A.d(A.b8("Offset "+a+" must be not be greater than the number of characters in the file, "+q.gA(0)+".")) +s=q.Iu(a) +r=q.b[s] +if(r>a)throw A.d(A.b8("Line "+s+" comes after offset "+a+".")) +return a-r}, +tf(a){var s,r,q,p +if(a<0)throw A.d(A.b8("Line may not be negative, was "+a+".")) +else{s=this.b +r=s.length +if(a>=r)throw A.d(A.b8("Line "+a+" must be less than the number of lines in the file, "+this.gbzX(0)+"."))}q=s[a] +if(q<=this.c.length){p=a+1 +s=p=s[p]}else s=!0 +if(s)throw A.d(A.b8("Line "+a+" doesn't have 0 columns.")) +return q}} +A.lw.prototype={ +gi8(){return this.a.a}, +gh5(a){return this.a.Iu(this.b)}, +gjg(){return this.a.a_v(this.b)}, +o7(a,b){var s,r=this.b +if(r<0)throw A.d(A.b8("Offset may not be negative, was "+r+".")) +else{s=this.a +if(r>s.c.length)throw A.d(A.b8("Offset "+r+u.D+s.gA(0)+"."))}}, +Om(){var s=this.b +return A.hP(this.a,s,s)}, +gfl(a){return this.b}} +A.i8.prototype={ +gi8(){return this.a.a}, +gA(a){return this.c-this.b}, +gee(a){return A.eF(this.a,this.b)}, +gdw(a){return A.eF(this.a,this.c)}, +gce(a){return A.dp(B.h0.cK(this.a.c,this.b,this.c),0,null)}, +gdz(a){var s=this,r=s.a,q=s.c,p=r.Iu(q) +if(r.a_v(q)===0&&p!==0){if(q-s.b===0)return p===r.b.length-1?"":A.dp(B.h0.cK(r.c,r.tf(p),r.tf(p+1)),0,null)}else q=p===r.b.length-1?r.c.length:r.tf(p+1) +return A.dp(B.h0.cK(r.c,r.tf(r.Iu(s.b)),q),0,null)}, +kI(a,b,c){var s,r=this.c,q=this.b +if(rs.c.length)throw A.d(A.b8("End "+r+u.D+s.gA(0)+".")) +else if(q<0)throw A.d(A.b8("Start may not be negative, was "+q+"."))}}, +bn(a,b){var s +if(!(b instanceof A.i8))return this.aQM(0,b) +s=B.d.bn(this.b,b.b) +return s===0?B.d.bn(this.c,b.c):s}, +l(a,b){var s=this +if(b==null)return!1 +if(!(b instanceof A.i8))return s.aQL(0,b) +return s.b===b.b&&s.c===b.c&&J.q(s.a.a,b.a.a)}, +gv(a){return A.ad(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)}, +iz(a,b){var s,r=this,q=r.a +if(!J.q(q.a,b.a.a))throw A.d(A.aM('Source URLs "'+A.r(r.gi8())+'" and "'+A.r(b.gi8())+"\" don't match.",null)) +s=Math.min(r.b,b.b) +return A.hP(q,s,Math.max(r.c,b.c))}, +$iAn:1} +A.bl2.prototype={ +by8(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.auC(B.b.ga2(a3).c) +s=a1.e +r=A.aK(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.q(l,k)){a1.Uy("\u2575") +q.a+="\n" +a1.auC(k)}else if(m.b+1!==n.b){a1.blI("...") +q.a+="\n"}}for(l=n.d,k=A.X(l).h("bE<1>"),j=new A.bE(l,k),j=new A.bj(j,j.gA(0),k.h("bj")),k=k.h("aa.E"),i=n.b,h=n.a;j.t();){g=j.d +if(g==null)g=k.a(g) +f=g.a +e=f.gee(f) +e=e.gh5(e) +d=f.gdw(f) +if(e!==d.gh5(d)){e=f.gee(f) +f=e.gh5(e)===i&&a1.b8b(B.c.R(h,0,f.gee(f).gjg()))}else f=!1 +if(f){c=B.b.c2(r,a2) +if(c<0)A.C(A.aM(A.r(r)+" contains no null elements.",a2)) +r[c]=g}}a1.blH(i) +q.a+=" " +a1.blG(n,r) +if(s)q.a+=" " +b=B.b.rE(l,new A.bln()) +a=b===-1?a2:l[b] +k=a!=null +if(k){j=a.a +g=j.gee(j) +g=g.gh5(g)===i?j.gee(j).gjg():0 +f=j.gdw(j) +a1.blE(h,g,f.gh5(f)===i?j.gdw(j).gjg():h.length,p)}else a1.UA(h) +q.a+="\n" +if(k)a1.blF(n,a,r) +for(k=l.length,a0=0;a0")),q=this.r,r=r.h("a2.E");s.t();){p=s.d +if(p==null)p=r.a(p) +if(p===9)q.a+=B.c.X(" ",4) +else q.a+=A.cm(p)}}, +Uz(a,b,c){var s={} +s.a=c +if(b!=null)s.a=B.d.k(b+1) +this.pW(new A.bll(s,this,a),"\x1b[34m")}, +Uy(a){return this.Uz(a,null,null)}, +blI(a){return this.Uz(null,null,a)}, +blH(a){return this.Uz(null,a,null)}, +a6Y(){return this.Uz(null,null,null)}, +a2i(a){var s,r,q,p +for(s=new A.e0(a),r=t.Hz,s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("a2.E"),q=0;s.t();){p=s.d +if((p==null?r.a(p):p)===9)++q}return q}, +b8b(a){var s,r,q +for(s=new A.e0(a),r=t.Hz,s=new A.bj(s,s.gA(0),r.h("bj")),r=r.h("a2.E");s.t();){q=s.d +if(q==null)q=r.a(q) +if(q!==32&&q!==9)return!1}return!0}, +aYA(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}, +pW(a,b){return this.aYA(a,b,t.z)}} +A.blm.prototype={ +$0(){return this.a}, +$S:1679} +A.bl4.prototype={ +$1(a){var s=a.d +return new A.b1(s,new A.bl3(),A.X(s).h("b1<1>")).gA(0)}, +$S:1680} +A.bl3.prototype={ +$1(a){var s=a.a,r=s.gee(s) +r=r.gh5(r) +s=s.gdw(s) +return r!==s.gh5(s)}, +$S:274} +A.bl5.prototype={ +$1(a){return a.c}, +$S:1682} +A.bl7.prototype={ +$1(a){var s=a.a.gi8() +return s==null?new A.S():s}, +$S:1683} +A.bl8.prototype={ +$2(a,b){return a.a.bn(0,b.a)}, +$S:1684} +A.bl9.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.cz(d),r=s.gaz(d),q=t._Y;r.t();){p=r.gK(r).a +o=p.gdz(p) +n=A.cs9(o,p.gce(p),p.gee(p).gjg()) +n.toString +m=B.c.kt("\n",B.c.R(o,0,n)).gA(0) +p=p.gee(p) +l=p.gh5(p)-m +for(p=o.split("\n"),n=p.length,k=0;kB.b.gP(c).b)c.push(new A.v6(j,l,e,A.a([],q)));++l}}i=A.a([],q) +for(r=c.length,h=0,k=0;k")),p=p.h("aa.E");q.t();){n=q.d +if(n==null)n=p.a(n) +f=n.a +f=f.gee(f) +if(f.gh5(f)>j.b)break +i.push(n)}h+=i.length-g +B.b.L(j.d,i)}return c}, +$S:1685} +A.bl6.prototype={ +$1(a){var s=a.a +s=s.gdw(s) +return s.gh5(s)" +return null}, +$S:0} +A.blh.prototype={ +$0(){var s=this.b===this.c.b?"\u250c":"\u2514" +this.a.r.a+=s}, +$S:13} +A.bli.prototype={ +$0(){var s=this.b==null?"\u2500":"\u253c" +this.a.r.a+=s}, +$S:13} +A.blj.prototype={ +$0(){this.a.r.a+="\u2500" +return null}, +$S:0} +A.blk.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.pW(new A.blf(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.gdw(r).gjg()===s.a.length}else s=!1 +r=q.b +if(s)r.r.a+="\u2514" +else r.pW(new A.blg(r,o),p.b)}}}, +$S:13} +A.blf.prototype={ +$0(){var s=this.a.a?"\u252c":"\u250c" +this.b.r.a+=s}, +$S:13} +A.blg.prototype={ +$0(){this.a.r.a+=this.b}, +$S:13} +A.blb.prototype={ +$0(){var s=this +return s.a.UA(B.c.R(s.b,s.c,s.d))}, +$S:0} +A.blc.prototype={ +$0(){var s,r,q=this.a,p=q.r,o=p.a,n=this.c.a,m=n.gee(n).gjg(),l=n.gdw(n).gjg() +n=this.b.a +s=q.a2i(B.c.R(n,0,m)) +r=q.a2i(B.c.R(n,m,l)) +m+=s*3 +p.a+=B.c.X(" ",m) +p=p.a+=B.c.X("^",Math.max(l+(s+r)*3-m,1)) +return p.length-o.length}, +$S:90} +A.bld.prototype={ +$0(){var s=this.c.a +return this.a.blC(this.b,s.gee(s).gjg())}, +$S:0} +A.ble.prototype={ +$0(){var s,r=this,q=r.a,p=q.r,o=p.a +if(r.b)p.a+=B.c.X("\u2500",3) +else{s=r.d.a +q.auA(r.c,Math.max(s.gdw(s).gjg()-1,0),!1)}return p.a.length-o.length}, +$S:90} +A.bll.prototype={ +$0(){var s=this.b,r=s.r,q=this.a.a +if(q==null)q="" +s=r.a+=B.c.YL(q,s.d) +q=this.c +r.a=s+(q==null?"\u2502":q)}, +$S:13} +A.nA.prototype={ +k(a){var s,r,q=this.a,p=q.gee(q) +p=p.gh5(p) +s=q.gee(q).gjg() +r=q.gdw(q) +q=""+"primary "+(""+p+":"+s+"-"+r.gh5(r)+":"+q.gdw(q).gjg()) +return q.charCodeAt(0)==0?q:q}} +A.c1O.prototype={ +$0(){var s,r,q,p,o=this.a +if(!(t.D_.b(o)&&A.cs9(o.gdz(o),o.gce(o),o.gee(o).gjg())!=null)){s=o.gee(o) +s=A.aF7(s.gfl(s),0,0,o.gi8()) +r=o.gdw(o) +r=r.gfl(r) +q=o.gi8() +p=A.drb(o.gce(o),10) +o=A.bGO(s,A.aF7(r,A.cOq(o.gce(o)),p,q),o.gce(o),o.gce(o))}return A.di8(A.dia(A.di9(o)))}, +$S:1686} +A.v6.prototype={ +k(a){return""+this.b+': "'+this.a+'" ('+B.b.bQ(this.d,", ")+")"}} +A.uv.prototype={ +a9E(a){var s=this.a +if(!J.q(s,a.gi8()))throw A.d(A.aM('Source URLs "'+A.r(s)+'" and "'+A.r(a.gi8())+"\" don't match.",null)) +return Math.abs(this.b-a.gfl(a))}, +bn(a,b){var s=this.a +if(!J.q(s,b.gi8()))throw A.d(A.aM('Source URLs "'+A.r(s)+'" and "'+A.r(b.gi8())+"\" don't match.",null)) +return this.b-b.gfl(b)}, +l(a,b){if(b==null)return!1 +return t.y3.b(b)&&J.q(this.a,b.gi8())&&this.b===b.gfl(b)}, +gv(a){var s=this.a +s=s==null?null:s.gv(s) +if(s==null)s=0 +return s+this.b}, +k(a){var s=this,r=A.I(s).k(0),q=s.a +return"<"+r+": "+s.b+" "+(A.r(q==null?"unknown source":q)+":"+(s.c+1)+":"+(s.d+1))+">"}, +$icT:1, +gi8(){return this.a}, +gfl(a){return this.b}, +gh5(a){return this.c}, +gjg(){return this.d}} +A.aF8.prototype={ +a9E(a){if(!J.q(this.a.a,a.gi8()))throw A.d(A.aM('Source URLs "'+A.r(this.gi8())+'" and "'+A.r(a.gi8())+"\" don't match.",null)) +return Math.abs(this.b-a.gfl(a))}, +bn(a,b){if(!J.q(this.a.a,b.gi8()))throw A.d(A.aM('Source URLs "'+A.r(this.gi8())+'" and "'+A.r(b.gi8())+"\" don't match.",null)) +return this.b-b.gfl(b)}, +l(a,b){if(b==null)return!1 +return t.y3.b(b)&&J.q(this.a.a,b.gi8())&&this.b===b.gfl(b)}, +gv(a){var s=this.a.a +s=s==null?null:s.gv(s) +if(s==null)s=0 +return s+this.b}, +k(a){var s=A.I(this).k(0),r=this.b,q=this.a,p=q.a +return"<"+s+": "+r+" "+(A.r(p==null?"unknown source":p)+":"+(q.Iu(r)+1)+":"+(q.a_v(r)+1))+">"}, +$icT:1, +$iuv:1} +A.aF9.prototype={ +aVc(a,b,c){var s,r=this.b,q=this.a +if(!J.q(r.gi8(),q.gi8()))throw A.d(A.aM('Source URLs "'+A.r(q.gi8())+'" and "'+A.r(r.gi8())+"\" don't match.",null)) +else if(r.gfl(r)'}, +$icT:1, +$iuw:1} +A.An.prototype={ +gdz(a){return this.d}} +A.m5.prototype={ +bwz(a){var s=this.a,r=new A.O(s,new A.b8S(a,!1),A.X(s).h("O<1,fM>")),q=r.r2(0,new A.b8T(!1)) +if(!q.gaz(0).t()&&!r.gad(0))return new A.m5(A.hi(A.a([r.gP(0)],t.ch),t.f3)) +return new A.m5(A.hi(q,t.f3))}, +HS(){var s=this.a +return A.bNd(new A.eE(s,new A.b8Y(),A.X(s).h("eE<1,fU>")),null)}, +k(a){var s=this.a,r=A.X(s) +return new A.O(s,new A.b8W(new A.O(s,new A.b8X(),r.h("O<1,h>")).l8(0,0,B.kj,t.S)),r.h("O<1,f>")).bQ(0,u.C)}, +$idC:1, +gadK(){return this.a}} +A.b8Q.prototype={ +$0(){return A.cFE(this.a.k(0))}, +$S:1688} +A.b8R.prototype={ +$1(a){return a.length!==0}, +$S:20} +A.b8S.prototype={ +$1(a){return a.aaA(this.a,this.b)}, +$S:1689} +A.b8T.prototype={ +$1(a){if(a.gwk().length>1)return!0 +if(a.gwk().length===0)return!1 +if(!this.a)return!1 +return J.d0W(B.b.gcW(a.gwk()))!=null}, +$S:1690} +A.b8Y.prototype={ +$1(a){return a.gwk()}, +$S:1691} +A.b8X.prototype={ +$1(a){var s=a.gwk() +return new A.O(s,new A.b8V(),A.X(s).h("O<1,h>")).l8(0,0,B.kj,t.S)}, +$S:1692} +A.b8V.prototype={ +$1(a){return a.gH2(a).length}, +$S:479} +A.b8W.prototype={ +$1(a){var s=a.gwk() +return new A.O(s,new A.b8U(this.a),A.X(s).h("O<1,f>")).jG(0)}, +$S:1694} +A.b8U.prototype={ +$1(a){return B.c.YL(a.gH2(a),this.a)+" "+A.r(a.gNU())+"\n"}, +$S:276} +A.fU.prototype={ +gabJ(){var s=this.a +if(s.gfX()==="data")return"data:..." +return $.GS().acS(s)}, +gaff(){var s=this.a +if(s.gfX()!=="package")return null +return B.b.ga2(s.geh(s).split("/"))}, +gH2(a){var s,r=this,q=r.b +if(q==null)return r.gabJ() +s=r.c +if(s==null)return r.gabJ()+" "+A.r(q) +return r.gabJ()+" "+A.r(q)+":"+A.r(s)}, +k(a){return this.gH2(0)+" in "+A.r(this.d)}, +gfh(){return this.a}, +gh5(a){return this.b}, +gjg(){return this.c}, +gNU(){return this.d}} +A.bjk.prototype={ +$0(){var s,r,q,p,o,n,m,l=null,k=this.a +if(k==="...")return new A.fU(A.fi(l,l,l,l,l,l,l,l),l,l,"...") +s=$.d0h().im(k) +if(s==null)return new A.uR(A.fi(l,l,"unparsed",l,l,l,l,l),k) +k=s.b +r=k[1] +r.toString +q=$.cZn() +r=A.cj(r,q,"") +p=A.cj(r,"","") +r=k[2] +q=r +q.toString +if(B.c.aC(q,"1?A.cA(n[1],l):l +return new A.fU(o,m,k>2?A.cA(n[2],l):l,p)}, +$S:145} +A.bji.prototype={ +$0(){var s,r,q=null,p="",o=this.a,n=$.d0c().im(o) +if(n==null)return new A.uR(A.fi(q,q,"unparsed",q,q,q,q,q),o) +o=new A.bjj(o) +s=n.b +r=s[2] +if(r!=null){r=r +r.toString +s=s[1] +s.toString +s=A.cj(s,"",p) +s=A.cj(s,"Anonymous function",p) +return o.$2(r,A.cj(s,"(anonymous function)",p))}else{s=s[3] +s.toString +return o.$2(s,p)}}, +$S:145} +A.bjj.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=$.d0b(),l=m.im(a) +for(;l!=null;a=s){s=l.b[1] +s.toString +l=m.im(s)}if(a==="native")return new A.fU(A.di("native",0,n),n,n,b) +r=$.d0g().im(a) +if(r==null)return new A.uR(A.fi(n,n,"unparsed",n,n,n,n,n),this.a) +m=r.b +s=m[1] +s.toString +q=A.cx0(s) +s=m[2] +s.toString +p=A.cA(s,n) +o=m[3] +return new A.fU(q,p,o!=null?A.cA(o,n):n,b)}, +$S:1697} +A.bjf.prototype={ +$0(){var s,r,q,p,o=null,n=this.a,m=$.cZE().im(n) +if(m==null)return new A.uR(A.fi(o,o,"unparsed",o,o,o,o,o),n) +n=m.b +s=n[1] +s.toString +r=A.cj(s,"/<","") +s=n[2] +s.toString +q=A.cx0(s) +n=n[3] +n.toString +p=A.cA(n,o) +return new A.fU(q,p,o,r.length===0||r==="anonymous"?"":r)}, +$S:145} +A.bjg.prototype={ +$0(){var s,r,q,p,o,n,m,l=null,k=this.a,j=$.cZG().im(k) +if(j==null)return new A.uR(A.fi(l,l,"unparsed",l,l,l,l,l),k) +s=j.b +r=s[3] +q=r +q.toString +if(B.c.p(q," line "))return A.d7k(k) +k=r +k.toString +p=A.cx0(k) +o=s[1] +if(o!=null){k=s[2] +k.toString +o+=B.b.jG(A.aK(B.c.kt("/",k).gA(0),".",!1,t.N)) +if(o==="")o="" +o=B.c.jL(o,$.cZP(),"")}else o="" +k=s[4] +if(k==="")n=l +else{k=k +k.toString +n=A.cA(k,l)}k=s[5] +if(k==null||k==="")m=l +else{k=k +k.toString +m=A.cA(k,l)}return new A.fU(p,n,m,o)}, +$S:145} +A.bjh.prototype={ +$0(){var s,r,q,p,o=null,n=this.a,m=$.cZK().im(n) +if(m==null)throw A.d(A.bM("Couldn't parse package:stack_trace stack trace line '"+n+"'.",o,o)) +n=m.b +s=n[1] +if(s==="data:...")r=A.cNm("") +else{s=s +s.toString +r=A.di(s,0,o)}if(r.gfX()===""){s=$.GS() +r=s.aFz(A.doz(s.a.YO(A.cAW(r))))}s=n[2] +if(s==null)q=o +else{s=s +s.toString +q=A.cA(s,o)}s=n[3] +if(s==null)p=o +else{s=s +s.toString +p=A.cA(s,o)}return new A.fU(r,q,p,n[4])}, +$S:145} +A.a4R.prototype={ +ga1K(){var s,r=this,q=r.b +if(q===$){s=r.a.$0() +r.b!==$&&A.a_() +r.b=s +q=s}return q}, +gadK(){return this.ga1K().gadK()}, +HS(){return new A.JU(this.ga1K().gaFx())}, +k(a){return this.ga1K().k(0)}, +$idC:1, +$im5:1} +A.JU.prototype={ +gUc(){var s,r=this,q=r.b +if(q===$){s=r.a.$0() +r.b!==$&&A.a_() +r.b=s +q=s}return q}, +gwk(){return this.gUc().gwk()}, +gf9(){return this.gUc().gf9()}, +aaA(a,b){return new A.JU(new A.boH(this,a,!1))}, +k(a){return this.gUc().k(0)}, +$idC:1, +$ifM:1} +A.boH.prototype={ +$0(){return this.a.gUc().aaA(this.b,this.c)}, +$S:144} +A.fM.prototype={ +aaA(a,b){var s,r,q,p,o={} +o.a=a +s=A.a([],t.sR) +for(r=this.a,q=A.X(r).h("bE<1>"),r=new A.bE(r,q),r=new A.bj(r,r.gA(0),q.h("bj")),q=q.h("aa.E");r.t();){p=r.d +if(p==null)p=q.a(p) +if(p instanceof A.uR||!o.a.$1(p))s.push(p) +else if(s.length===0||!o.a.$1(B.b.gP(s)))s.push(new A.fU(p.gfh(),p.gh5(p),p.gjg(),p.gNU()))}return A.bNd(new A.bE(s,t.zw),this.b.a)}, +k(a){var s=this.a,r=A.X(s) +return new A.O(s,new A.bNl(new A.O(s,new A.bNm(),r.h("O<1,h>")).l8(0,0,B.kj,t.S)),r.h("O<1,f>")).jG(0)}, +$idC:1, +gwk(){return this.a}, +gf9(){return this.b}} +A.bNi.prototype={ +$0(){var s=this.a,r=s.gwk() +return A.bNd(A.fB(r,this.b+2,null,A.X(r).c),s.gf9().a)}, +$S:144} +A.bNj.prototype={ +$0(){return A.cN9(this.a.k(0))}, +$S:144} +A.bNk.prototype={ +$1(a){return a.length!==0}, +$S:20} +A.bNh.prototype={ +$1(a){return!B.c.aC(a,$.d0f())}, +$S:20} +A.bNg.prototype={ +$1(a){return a!=="\tat "}, +$S:20} +A.bNe.prototype={ +$1(a){return a.length!==0&&a!=="[native code]"}, +$S:20} +A.bNf.prototype={ +$1(a){return!B.c.aC(a,"=====")}, +$S:20} +A.bNm.prototype={ +$1(a){return a.gH2(a).length}, +$S:479} +A.bNl.prototype={ +$1(a){if(a instanceof A.uR)return a.k(0)+"\n" +return B.c.YL(a.gH2(a),this.a)+" "+A.r(a.gNU())+"\n"}, +$S:276} +A.uR.prototype={ +k(a){return this.w}, +$ifU:1, +gfh(){return this.a}, +gh5(){return null}, +gjg(){return null}, +gaff(){return null}, +gH2(){return"unparsed"}, +gNU(){return this.w}} +A.aHn.prototype={ +k(a){var s,r={} +r.a=1 +s=this.a +return new A.O(s,new A.bO9(r),A.X(s).h("O<1,f>")).jG(0)}, +$idC:1} +A.bO9.prototype={ +$1(a){var s,r,q,p=B.c.YL("#"+this.a.a++,8),o=a.gNU() +o.toString +o=A.Zn(o,A.b4("[^.]+\\.",!0,!1,!1),new A.bO8(),null) +s=A.cj(o,"","") +r=a.gh5(a) +if(r==null)r=0 +q=a.gjg() +if(q==null)q=0 +return p+s+" ("+a.gfh().k(0)+":"+r+":"+q+")\n"}, +$S:276} +A.bO8.prototype={ +$1(a){return A.r(a.i(0,1))+".<"+A.r(a.i(0,1))+"_async_body>"}, +$S:81} +A.aFi.prototype={ +k(a){var s,r,q,p,o,n=new A.bu("") +for(s=this.a,r=this.b,q=0;q")),m=o.a +m.Sn(m.c,n,!1) +try{b.$1(o.glV(o))}catch(q){s=A.ag(q) +r=A.aD(q) +m=n +p=m.n4$ +p.toString +p.Ui(A.bk(m).h("mg.E").a(m)) +throw q}finally{}return new A.bHf(n)}, +m(){this.a.V(0) +this.c=!1}} +A.bHf.prototype={ +$0(){var s=this.a,r=s.n4$ +if(r!=null)r.Ui(s.$ti.h("mg.E").a(s))}, +$S:0} +A.oT.prototype={} +A.bnS.prototype={ +$1(a){this.a.a=!0 +return!this.b.$1(a)}, +$S(){return this.c.h("A(0)")}} +A.bfb.prototype={ +f6(a){var s,r=this +if(a!==10)s=a===13&&r.hA()!==10 +else s=!0 +if(s){++r.as +r.at=0}else{s=r.at +r.at=s+(a>=65536&&a<=1114111?2:1)}}, +Dz(a){var s,r,q,p,o=this +if(!o.aQW(a))return!1 +s=o.gGY().i(0,0) +s.toString +r=o.bau(s) +q=o.as +p=r.length +o.as=q+p +s=s.length +if(p===0)o.at+=s +else o.at=s-J.d0V(B.b.gP(r)) +return!0}, +bau(a){var s=$.d_p().kt(0,a),r=A.R(s,!0,A.z(s).h("B.E")) +if(this.hK(-1)===13&&this.hA()===10)B.b.hX(r) +return r}} +A.oQ.prototype={} +A.aah.prototype={ +gIY(a){return A.ax(this.c)}} +A.bGP.prototype={ +gqm(){var s=A.eF(this.f,this.c),r=s.b +return A.hP(s.a,r,r)}, +a0v(a,b){var s=b==null?this.c:b.b +return this.f.xp(0,a.b,s)}, +nu(a){return this.a0v(a,null)}, +mm(a,b){var s,r,q=this +if(!q.aQV(0,b))return!1 +s=q.c +r=q.gGY() +q.f.xp(0,s,r.gdw(r)) +return!0}, +Wl(a,b,c,d){var s,r=this,q=r.b +A.cUm(q,null,d,c) +s=d==null&&c==null?r.gGY():null +if(d==null)d=s==null?r.c:s.gee(s) +if(c==null)c=s==null?0:s.gdw(s)-s.gee(s) +throw A.d(A.cMo(b,r.f.xp(0,d,d+c),q))}, +aa3(a,b,c){return this.Wl(0,b,c,null)}, +bvw(a,b){return this.Wl(0,b,null,null)}} +A.aag.prototype={ +gGY(){var s=this +if(s.c!==s.e)s.d=null +return s.d}, +bF7(){var s=this,r=s.b +if(s.c===r.length)s.a2P("more input") +return r.charCodeAt(s.c++)}, +hK(a){var s +if(a==null)a=0 +s=this.c+a +if(s<0||s>=this.b.length)return null +return this.b.charCodeAt(s)}, +hA(){return this.hK(null)}, +Dz(a){var s,r=this,q=r.mm(0,a) +if(q){s=r.d +r.e=r.c=s.gdw(s)}return q}, +azg(a,b){var s +if(this.Dz(a))return +if(b==null)if(a instanceof A.u1)b="/"+a.a+"/" +else{s=J.cw(a) +s=A.cj(s,"\\","\\\\") +b='"'+A.cj(s,'"','\\"')+'"'}this.a2P(b)}, +wb(a){return this.azg(a,null)}, +bvG(){if(this.c===this.b.length)return +this.a2P("no more input")}, +mm(a,b){var s=this,r=J.cEC(b,s.b,s.c) +s.d=r +s.e=s.c +return r!=null}, +b0(a,b){var s=this.c +return B.c.R(this.b,b,s)}, +Wl(a,b,c,d){var s=this.b +A.cUm(s,null,d,c) +throw A.d(A.cMo(b,A.aF6(s,this.a).xp(0,d,d+c),s))}, +a2P(a){this.Wl(0,"expected "+a+".",0,this.c)}} +A.yv.prototype={} +A.asl.prototype={} +A.bbU.prototype={ +$1(a){var s,r=null +if(a.b&&a.d)s=B.r +else if(a.c)s=B.aeH +else s=a.a?B.fY:B.r +return A.dH(r,r,s,r,B.n,r,r,r,r,r,r,14,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}, +$S:482} +A.bbV.prototype={ +$2(a,b){var s=b.b +s.toString +return b.vZ(A.Y(B.e.aF(127.5),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),12.5)}, +$S:483} +A.bbW.prototype={ +$1(a){var s,r=null,q=a.b +if(q&&a.d)s=B.mU +else s=q?A.Y(B.e.aF(76.5),33,150,243):B.D +return new A.c_(s,r,r,A.ed(4),r,r,r,B.U)}, +$S:484} +A.bbX.prototype={ +$1(a){var s,r=null +if(a.b&&a.d)s=B.r +else if(a.c)s=B.dv +else s=a.a?B.fY:B.B +return A.dH(r,r,s,r,B.n,r,r,r,r,r,r,14,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}, +$S:482} +A.bbY.prototype={ +$2(a,b){var s=b.b +s.toString +return b.vZ(A.Y(B.e.aF(127.5),s.gj(s)>>>16&255,s.gj(s)>>>8&255,s.gj(s)&255),12.5)}, +$S:483} +A.bbZ.prototype={ +$1(a){var s,r=null,q=a.b +if(q&&a.d)s=B.du +else s=q?A.Y(B.e.aF(76.5),33,150,243):B.D +return new A.c_(s,r,r,A.ed(4),r,r,r,B.U)}, +$S:484} +A.bc_.prototype={ +biV(a){switch(a.a){case 0:return null +case 1:return B.cd +case 2:return null +case 3:return B.DO +case 4:return B.alj +case 5:return B.alk}}} +A.cp5.prototype={ +$1(a){return!1}, +$S:485} +A.av1.prototype={ +aR(a){var s=new A.ahw(A.b9(t.xK),null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.ahw.prototype={ +bm1(a){var s,r,q,p +for(s=this.G,r=A.dy(s,s.r,A.z(s).c),q=r.$ti.c;r.t();){p=r.d;(p==null?q.a(p):p).a9()}s.B(0,a) +return new A.cc4(this,a)}, +aeF(){var s,r,q,p,o=this +if(o.ac==null){o.ac=0 +for(s=o.G,s=A.dy(s,s.r,A.z(s).c),r=s.$ti.c;s.t();){q=s.d +if(q==null)q=r.a(q) +p=o.ac +p.toString +o.ac=Math.max(p,q.QT(1/0))}}s=o.ac +s.toString +return s}, +bJ(){this.E6() +this.ac=null}} +A.cc4.prototype={ +$0(){var s,r,q=this.a.G +q.F(0,this.b) +for(q=A.dy(q,q.r,A.z(q).c),s=q.$ti.c;q.t();){r=q.d;(r==null?s.a(r):r).a9()}}, +$S:0} +A.av0.prototype={ +aR(a){var s=new A.Yj(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.Yj.prototype={ +a3b(){var s=this.d +for(;s!=null;){if(s instanceof A.ahw)return s +s=s.gbR(s)}return null}, +aA(a){var s=this +s.Av(a) +s.G=s.a3b().bm1(s)}, +ar(a){var s +this.vm(0) +s=this.G +if(s!=null)s.$0()}, +bb(a){return this.a3b().aeF()}, +bJ(){var s=this,r=A.fH(null,s.a3b().aeF()) +s.k1$.d_(r,!0) +s.id=s.k1$.gu(0)}} +A.Ed.prototype={} +A.asn.prototype={} +A.bc0.prototype={ +$1(a){var s=null,r=A.ed(8) +return new A.c_(s,s,s,r,A.a([new A.f5(0,B.bY,A.Y(B.e.aF(255*(a?0:0.2)),0,0,0),B.h,10)],t.sq),s,s,B.U)}, +$S:486} +A.bc1.prototype={ +$1(a){return a?A.Y(B.e.aF(76.5),51,51,51):A.Y(B.e.aF(127.5),51,51,51)}, +$S:487} +A.bc2.prototype={ +$1(a){return A.Y(B.e.aF(255*B.e.dV(a*0.3,0,0.45)),97,97,97)}, +$S:272} +A.bc3.prototype={ +$1(a){var s,r=null +if(a.e)s=B.dv +else s=B.B +return A.dH(r,r,s,r,B.n,r,r,r,r,r,r,15,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}, +$S:488} +A.bc4.prototype={ +$1(a){var s=null,r=a.b?B.iM:B.D +return new A.c_(r,s,a.a&&!a.c?new A.eR(B.G,B.G,new A.bx(B.iM,1,B.O,-1),B.G):s,s,s,s,s,B.U)}, +$S:489} +A.bc5.prototype={ +$1(a){var s=null,r=A.ed(8) +return new A.c_(s,s,s,r,A.a([new A.f5(0,B.bY,A.Y(B.e.aF(255*(a?0:0.2)),0,0,0),B.h,15)],t.sq),s,s,B.U)}, +$S:486} +A.bc6.prototype={ +$1(a){return a?A.Y(B.e.aF(76.5),51,51,51):A.Y(B.e.aF(127.5),51,51,51)}, +$S:487} +A.bc7.prototype={ +$1(a){return A.Y(B.e.aF(255*B.e.dV(a*0.6,0,0.8)),35,36,45)}, +$S:272} +A.bc8.prototype={ +$1(a){var s,r=null +if(a.e)s=B.aep +else s=B.acl +return A.dH(r,r,s,r,B.n,r,r,r,r,r,r,15,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}, +$S:488} +A.bc9.prototype={ +$1(a){var s=null,r=a.b?B.ta:B.D +return new A.c_(r,s,a.a&&!a.c?B.a2M:s,s,s,s,s,B.U)}, +$S:489} +A.bca.prototype={ +a1O(){var s=0,r=A.p(t.H),q=this +var $async$a1O=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:q.b=!1 +return A.n(null,r)}}) +return A.o($async$a1O,r)}, +boS(a,b){var s=null,r=A.cG(a,B.e6) +r=r==null?s:r.e +if(r==null)r=B.ak +r=A.mj(A.Ck(s,A.Qo(r).e.$1(!1),s,s,s,s,s),b) +return r}} +A.cp3.prototype={ +$1(a){var s=a.c +return(s==null?null:s.V6(B.j0))!=null}, +$S:485} +A.aRz.prototype={ +q(a){var s,r=this,q=null,p=r.c,o=r.e,n=J.q(A.cJd(p.gaF3()),o),m=o instanceof A.jO?new A.e_(new A.c6H(r),q):q,l=o instanceof A.qm?o.f:q,k=l==null,j=k?q:l.b +k=k&&q +s=o.a +return A.cOy(A.bKG(s==null?"":s,q,q,q),o,new A.Ed(!1,r.d.a,n,k===!0,j===!0),p,q,m,r.f)}} +A.c6H.prototype={ +$1(a){var s=a.a0(t.sp) +s=(s==null?B.dm:s).w.b +s.toString +return new A.Nt(!1,this.a.c.f,s,null)}, +$S:490} +A.aRy.prototype={ +q(a){var s,r,q,p=this,o=null,n=p.c,m=n.a,l=m.c +if((l==null?o:l.V6(B.j0))==null){l=n.b +l=l==null?o:A.cAD(l) +s=l===!0?28:0 +r=A.cAD(m)?28:0 +l=n.e?s:r +q=A.b3G(o,o,B.kJ,o,n.f,l)}else q=o +return A.cOy(new A.e_(new A.c6z(p),o),m,new A.Ed(!0,p.d.a,J.h3(n.gaF3()),!1,!1),n,q,new A.e_(new A.c6A(p),o),p.e)}} +A.c6A.prototype={ +$1(a){var s=this.a.c,r=a.a0(t.sp) +r=(r==null?B.dm:r).w.b +r.toString +return new A.Nt(!s.e,s.f,r,null)}, +$S:490} +A.c6z.prototype={ +$1(a){var s,r=this.a.c,q=a.a0(t.sp) +if(q==null)q=B.dm +s=r.e?B.T:B.cc +s=q.w.VO(s) +q=r.a.a +return A.BQ(A.bKG(q==null?"":q,null,null,null),B.H,r.f,s)}, +$S:1707} +A.aRC.prototype={ +bvL(a){var s=null,r=this.e,q=r.r.a8H(a.b,24),p=this.f.c,o=p==null?s:p.V6(q) +if(o!=null)return new A.zG(B.D1,o,s) +else return A.b3G(s,s,B.eb,s,B.K,A.cAD(r.a)?28:0)}, +bvM(a){if(this.f instanceof A.qm)switch(0){case 0:break}return null}, +q(a){var s,r=this,q=null,p=r.r,o=r.w,n=p.w.$1(o),m=r.c +if(m==null)m=r.bvL(n) +s=r.d +if(s==null)s=r.bvM(n) +p=p.x.$1(o) +o=A.a([m,A.f7(new A.zG(B.u7,r.x,q),1,q)],t.p) +if(s!=null)o.push(s) +return A.h4(A.Ck(A.cyO(o,B.o,B.u),q,p,q,q,q,B.aip),q,q,B.aG,!0,n,q,q,B.a0)}} +A.Nt.prototype={ +q(a){var s=!this.c,r=s?0:0.25,q=s?B.h:B.bc_ +s=this.d +return A.cvk(new A.a_1(A.cxm(B.ay2,this.e,24),r,B.kJ,s,null,null),B.kJ,s,q)}} +A.adD.prototype={ +J(){return new A.aMh(new A.Ae($.ae()),B.f)}, +LX(a){return this.e.$1(a)}, +bCP(a,b,c){return this.f.$3(a,b,c)}} +A.aMh.prototype={ +aXM(a){var s,r +if(a.gel(a)!==B.cv)return!1 +if(a.gjf(a)!==2)if(a.gjf(a)===1){s=$.i2.h9$ +s===$&&A.b() +s=s.a.gbm(0) +r=A.hh(s,A.z(s).h("B.E")) +s=A.bL()===B.cL&&r.a===1&&r.p(0,B.fR)}else s=!1 +else s=!0 +if(s){s=this.a +s.toString +return s.LX(a.gb8(a))}return!1}, +m(){this.ap() +$.cuv().wK(new A.bVq(this),t.P)}, +TQ(a,b,c,d){return this.bi9(a,b,c,d)}, +bi9(a,b,c,d){var s=0,r=A.p(t.H),q=1,p,o=[],n=this +var $async$TQ=A.l(function(e,f){if(e===1){p=f +s=q}while(true)switch(s){case 0:q=2 +s=5 +return A.i(n.a.bCP(a,b,new A.bVj(c)),$async$TQ) +case 5:o.push(4) +s=3 +break +case 2:o=[1] +case 3:q=1 +d.$0() +s=o.pop() +break +case 4:return A.n(null,r) +case 1:return A.m(p,r)}}) +return A.o($async$TQ,r)}, +q(a){var s=null,r=this.a +return A.wk(r.d,r.c,s,s,new A.bVo(this),s,s,new A.bVp(this))}} +A.bVq.prototype={ +$0(){var s=0,r=A.p(t.P),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if($.X4===q.a)$.X4=null +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.bVj.prototype={ +$1(a){this.a.$1(a)}, +$S:132} +A.bVo.prototype={ +$1(a){$.cuv().wK(new A.bVn(this.a,a),t.P)}, +$S:56} +A.bVn.prototype={ +$0(){var s=0,r=A.p(t.P),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if($.X4!=null){s=1 +break}o=p.a +n=p.b +s=o.aXM(n)?3:4 +break +case 3:m=new A.ak($.at,t.tq) +o.TQ(n.gb8(n),o.f,new A.bVl(new A.aI(m,t.VY)),new A.bVm(o)) +s=5 +return A.i(m,$async$$0) +case 5:if(b){$.X4=o +o.d=n.gcG() +n=new A.py() +$.r8() +n.j9(0) +o.e=n}case 4:case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.bVl.prototype={ +$1(a){this.a.d2(0,a)}, +$S:4} +A.bVm.prototype={ +$0(){$.cuv().wK(new A.bVk(this.a),t.P)}, +$S:0} +A.bVk.prototype={ +$0(){var s=0,r=A.p(t.P),q=this +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:if($.X4===q.a)$.X4=null +return A.n(null,r)}}) +return A.o($async$$0,r)}, +$S:74} +A.bVp.prototype={ +$1(a){var s,r=this.a +if(r.d===a.gcG()){r.d=$.X4=null +s=r.e +s=s==null?null:s.grt() +if((s==null?0:s)>300)r.f.tt() +r.e=null}}, +$S:278} +A.asx.prototype={ +q(a){var s=this,r=s.c,q=s.e +return new A.adD(A.cF9(s.r,q,new A.bcq(),r),r,q,new A.bcr(s,a),null)}, +B3(a,b,c,d){return this.bcc(a,b,c,d)}, +bcc(a2,a3,a4,a5){var s=0,r=A.p(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$B3=A.l(function(a6,a7){if(a6===1){o=a7 +s=p}while(true)switch(s){case 0:d={} +c=$.ae() +b=new A.Ae(c) +a=new A.bm(null,c,t.Zc) +a0=new A.Ae(c) +d.a=null +p=3 +l=new A.SJ() +c=m.d.$1(l) +s=6 +return A.i(t.f1.b(c)?c:A.dO(c,t.Pd),$async$B3) +case 6:k=a7 +s=7 +return A.i(A.brV(),$async$B3) +case 7:j=a7 +s=k!=null&&a2.e!=null?8:10 +break +case 8:f=A.bC(a2,null,t.l).w +e=m.w +e=B.j0.bu(f.e===B.ak?B.Bt:B.BU) +i=new A.azu(e) +a1=d +s=11 +return A.i(j.Zh(k,i),$async$B3) +case 11:a1.a=a7 +if(a2.e==null){J.cEH(a,new A.mi()) +a5.$1(!1) +n=[1] +s=4 +break}a5.$1(!0) +b.tt() +i.toString +h=new A.bcn(new A.bcp(d,m,a2,i,a4,a3)) +s=12 +return A.i(j.a0k(h),$async$B3) +case 12:g=a7 +J.cEH(a,g) +s=9 +break +case 10:a5.$1(!1) +case 9:n.push(5) +s=4 +break +case 3:n=[2] +case 4:p=2 +d=b +c=$.ae() +d.shE(c) +J.cv7(d,0) +d=a0 +d.shE(c) +J.cv7(d,0) +d=a +d.shE(c) +J.cv7(d,0) +s=n.pop() +break +case 5:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$B3,r)}} +A.bcr.prototype={ +$3(a,b,c){return this.aHn(a,b,c)}, +$C:"$3", +$R:3, +aHn(a,b,c){var s=0,r=A.p(t.H),q=this +var $async$$3=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:s=2 +return A.i(q.a.B3(q.b,a,b,c),$async$$3) +case 2:return A.n(null,r)}}) +return A.o($async$$3,r)}, +$S:1709} +A.bcq.prototype={ +$1(a){return this.aHo(a)}, +aHo(a){var s=0,r=A.p(t.P),q +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:1710} +A.bcp.prototype={ +$0(){var s=this,r=new A.aI(new A.ak($.at,t.fb),t.R8) +A.d3B(s.c,s.d.a,s.a.a.a,s.b.f,new A.bco(r),s.e,s.f) +return r.a}, +$S:1711} +A.bco.prototype={ +$1(a){return this.a.d2(0,a)}, +$S:279} +A.SJ.prototype={} +A.Q4.prototype={ +q(a){var s=$.b2y().a +return new A.Sm(new A.baR(this,s),this.x,s,null)}} +A.baR.prototype={ +$2(a,b){var s=null,r=this.a,q=r.r +if(this.b.a===B.bi){b.toString +return new A.a5S(s,s,s,B.cE,q,A.cTd(),b,r.y,s,s)}else{b.toString +return new A.asx(B.cE,q,A.cTd(),r.z,b,s,s)}}, +$S:55} +A.brT.prototype={ +pL(a){return this.aIT(a)}, +aIT(a){var s=0,r=A.p(t.Iw),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d +var $async$pL=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:e=A.Rr() +d=$.ii +d.toString +d.zk(e,a.b,t.e8.a($.cf().gis().b.i(0,0)).a) +d=e.a,o=d.length,n=p.a,m=a.a,l=p.b,k=p.c,j=t.qj,i=t.IA,h=0 +case 3:if(!(h").a1(A.z(r).h("yu.0")).h("O<1,2>") +r.pl$=A.R(new A.O(a,r.gaCl(),s),!0,s.h("aa.E")) +r.b8S(a)}, +b8S(a){var s,r +for(s=a.length,r=0;rg))return!1}p=r.d +o=r.b-p +g-=q +n=q-q +m=b.b +l=o*g+n*(m-p) +k=a.a-q +j=a.b-p +i=(o*k+n*j)/l +h=((p-m)*k+g*j)/l +return i>=0&&h>=0&&1-i-h>=0}, +aYo(){var s,r=this +if(r.ac!=null)$.an.IF(new A.ccb()) +r.ac=null +s=r.aS +if(s!=null)s.ao(0) +r.aS=null}, +es(a,b){var s,r,q,p,o,n,m,l=this,k=l.ac +if((k==null?null:k.b.y!=null)!==!0)l.ac=null +s=new A.ccd() +k=A.a([],t.om) +r=new A.c5(new Float64Array(16)) +r.fO() +l.ej(new A.ty(k,A.a([r],t.rE),A.a([],t.cR)),b) +for(r=k.length,q=0;q") +return new A.bcs(A.R(new A.O(s,new A.bse(),q),!1,q.h("aa.E")),p.a.w,r)}, +ga2X(){var s=this.pl$ +s===$&&A.b() +return new A.b1(s,new A.bsc(),A.X(s).h("b1<1>"))}, +aIO(a){var s,r +if(a){s=this.c.a0(t.I) +s.toString +r=s.w}else{s=this.a +r=s.r.aeC(s.f)}if(r===B.j)return B.cO +else return B.cP}, +aJq(){var s=this.c.a0(t.I) +s.toString +if(s.w===B.j)return B.cP +else return B.cO}, +bCm(){var s,r=this.pl$ +r===$&&A.b() +s=A.rw(r,new A.bsp()) +if(s!=null)this.a45(s) +else this.a.r.Ne(!1)}, +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.b9T(),g=A.a([],t.p),f=j.pl$ +f===$&&A.b() +s=f.length +r=0 +for(;r0.5)if(a.l5(new A.cca(p,b,o),o.a,b))return!0 +q=o.dJ$ +p.a=q}return!1}} +A.cca.prototype={ +$2(a,b){return this.a.a.es(a,b)}, +$S:19} +A.b0k.prototype={ +aA(a){var s,r,q +this.ea(a) +s=this.Y$ +for(r=t.gb;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).a7$}}, +ar(a){var s,r,q +this.e5(0) +s=this.Y$ +for(r=t.gb;s!=null;){s.ar(0) +q=s.b +q.toString +s=r.a(q).a7$}}} +A.b0m.prototype={} +A.Kp.prototype={ +J(){return new A.aRH(B.f)}} +A.aRH.prototype={ +q(a){var s,r,q,p=null,o=this.a,n=o.d,m=n!=null?new A.a1S(n,p):B.a6m +o=o.c +n=A.BS(m,B.dM,B.H,B.H,A.Oo()) +s=A.cG(a,B.e6) +s=s==null?p:s.e +if(s==null)s=B.ak +r=A.Qo(s) +q=r.c +s=q.d +if(s==null)s=A.ed(0) +return new A.aVT(o,new A.iU(A.Ck(A.PH(s,A.Ck(n,p,r.d,p,p,p,p)),p,q,p,p,p,p),p),p)}} +A.aVT.prototype={ +q(a){return new A.fV(new A.cdI(this),null)}} +A.cdI.prototype={ +$2(a,b){var s=null,r=this.a,q=r.c,p=q.a +q=q.b +return new A.d4(B.ar,s,B.YG,B.i,A.a([A.mo(s,A.bNn(B.ca,r.d,s,b.b/p,b.d/q),q,s,0,s,0,p)],t.p),s)}, +$S:209} +A.Kq.prototype={ +J(){var s=t.Nt +return new A.azv(A.a([],s),A.a([],s),new A.ast(A.N(t.S,t.WE)),B.f)}} +A.B8.prototype={} +A.azv.prototype={ +a8(){this.an() +this.d.push(A.cOz(B.h,this.a.c,B.a8,1))}, +aDZ(a,b){var s,r,q,p,o=this,n=A.rw(o.e,new A.bs7(b)) +if(n!=null){o.C(new A.bs8(o,n)) +return}s=t.x +r=s.a(a.gai()) +q=r.cf(0,s.a(o.c.gai())) +s=r.gu(0) +p=A.cOz(B.bbe,b,A.io(q,new A.W(0,0,0+s.a,0+s.b)),0) +o.C(new A.bs9(o,p)) +$.an.xr$.push(new A.bsa(o,p)) +o.a.d.btU()}, +b9U(a){var s,r,q=this.d,p=A.R(q,!0,t.WH) +B.b.L(p,this.e) +s=B.b.c2(p,a) +r=s>0?p[s-1].a:null +q=B.b.p(q,a)?q.length-B.b.c2(q,a)-1:0 +return new A.bt8(a.a,r,new A.bs0(a),q,a.d===0,B.dM,this.a.w)}, +aDe(){this.C(new A.bs5(this))}, +q(a){var s=A.R(this.d,!0,t.WH) +B.b.L(s,this.e) +return new A.azp(A.R(new A.O(s,new A.bs2(this),A.X(s).h("O<1,c>")),!0,t.C),null)}} +A.bs7.prototype={ +$1(a){return a.a===this.a}, +$S:1729} +A.bs8.prototype={ +$0(){var s=this.a,r=this.b +B.b.F(s.e,r) +s.d.push(r) +r.d=1}, +$S:0} +A.bs9.prototype={ +$0(){this.a.d.push(this.b)}, +$S:0} +A.bsa.prototype={ +$1(a){this.a.C(new A.bs6(this.b))}, +$S:5} +A.bs6.prototype={ +$0(){this.a.d=1}, +$S:0} +A.bs0.prototype={ +$0(){var s=this.a.r.gam() +if(s==null)s=null +else{s=s.pl$ +s===$&&A.b()}return s}, +$S:1730} +A.bs5.prototype={ +$0(){var s=this.a,r=s.d.pop() +B.b.eu(s.e,0,r) +r.d=0 +r.e=new A.bs4(s,r)}, +$S:0} +A.bs4.prototype={ +$0(){var s=this.a +s.C(new A.bs3(s,this.b))}, +$S:0} +A.bs3.prototype={ +$0(){B.b.F(this.a.e,this.b)}, +$S:0} +A.bs2.prototype={ +$1(a){var s=this.a,r=s.b9U(a),q=a.d,p=q===1?B.kJ:B.agB,o=a.e,n=s.a,m=n.e,l=n.r +return new A.Ha(o,a.b,a.c,q,new A.aRu(m,new A.SM(r,m,s,n.f,s.f,a.r),r,l,0,new A.bs1(s),null),p,r.f,null,a.f)}, +$S:1731} +A.bs1.prototype={ +$0(){this.a.aDe()}, +$S:0} +A.aRu.prototype={ +q(a){var s,r,q,p=this,o=null,n=p.f.a5(o).a<0?B.ca:B.eU,m=p.e,l=m.f,k=m.d,j=B.e.dV(k*0.035,0,0.15),i=A.cG(a,B.e6) +i=i==null?o:i.e +if(i==null)i=B.ak +i=A.Ck(p.d,o,A.Qo(i).b,o,o,o,o) +s=A.cG(a,B.e6) +s=s==null?o:s.e +if(s==null)s=B.ak +k=A.a([i,A.po(0,A.n6(A.dn(o,A.b3G(o,A.Qo(s).f.$1(k),B.H,o,B.K,o),B.m,!1,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,p.w,o,o,o,o,o,o,o,!1,B.ac),k===0,o))],t.p) +i=A.cG(a,B.e6) +i=i==null?o:i.e +if(i==null)i=B.ak +r=A.Qo(i).a.$1(m.e) +q=r.d +m=q==null?A.ed(0):q +return A.cEN(n,A.b3G(A.PH(m,new A.d4(B.ar,o,B.q8,B.k,k,o)),o,B.H,r,l,o),B.H,l,1-j)}} +A.SM.prototype={ +J(){return new A.SN(A.N(t.M4,t.yi),A.a([],t.kB),$,$,B.f)}} +A.SN.prototype={ +aca(a){return a}, +a8(){var s,r=this +r.an() +r.d=new A.asO(r.a.f,0,!0,null,null,null,A.a([],t.ZP),$.ae()) +s=r.a +r.aAR(s.c.a.e,s.r)}, +fS(){var s=this.d +s===$&&A.b() +s.btJ() +this.jO()}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aRL()}, +bbt(){var s,r=this.a,q=r.c +if(q.b!=null){r=r.e +if(q.e){s=this.c +s.toString +r.aDZ(s,q.a)}else r.aDe()}}, +q(a){var s,r=this,q=null,p=A.a([],t.p),o=r.a.c,n=o.a.a +if((n==null?q:n.length!==0)===!0||o.b!=null)p.push(new A.Gh(o.b!=null,r.gbbs(),new A.bsm(r),q)) +r.a.toString +o=r.d +o===$&&A.b() +n=r.pl$ +n===$&&A.b() +p.push(new A.iO(1,B.c1,new A.b_e(A.bE3(A.K4(o,new A.bsn(r),n.length,q,q,B.v,!0),q,q),q),q)) +s=A.cS(p,B.co,q,B.o,B.Z,q,q,B.x) +r.a.toString +return new A.fI(B.a2X,A.azi(s,a,!0,!1,!1,!0),q)}} +A.bsm.prototype={ +$2(a,b){var s=this.a.a.c,r=A.cG(a,B.e6) +r=r==null?null:r.e +if(r==null)r=B.ak +return new A.aRy(s,new A.azI(b),A.Qo(r),null)}, +$S:151} +A.bsn.prototype={ +$2(a,b){var s,r,q,p=this.a,o=p.pl$ +o===$&&A.b() +s=o[b] +r=p.e.cP(0,s,new A.bsi()) +if(!(s instanceof A.jO))q=s instanceof A.qm&&!0 +else q=!0 +return new A.e_(new A.bsj(p,q,s),r)}, +$S:1733} +A.bsi.prototype={ +$0(){return new A.aR(null,t.A)}, +$S:1734} +A.bsj.prototype={ +$1(a){var s=this.b,r=this.a,q=this.c +return new A.Gh(s,new A.bsf(r,a,q),new A.bsg(r,s,q),null)}, +$S:1735} +A.bsf.prototype={ +$0(){var s=this.a,r=this.c +if(r instanceof A.jO)s.a.e.aDZ(this.b,r) +else if(r instanceof A.qm){r.e.$0() +s=s.a.e.a.d +s.a.bCs() +s.mh()}return null}, +$S:0} +A.bsg.prototype={ +$2(a,b){var s=this.a.a.c,r=b&&this.b,q=A.cG(a,B.e6) +q=q==null?null:q.e +if(q==null)q=B.ak +return new A.aRz(s,new A.azI(r),this.c,A.Qo(q),null)}, +$S:151} +A.b_e.prototype={ +aR(a){var s=new A.akw(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.akw.prototype={ +bo(a){return 0}, +bb(a){return 0}, +bh(a){return 0}, +bi(a){return 0}} +A.Gh.prototype={ +J(){return new A.aRs(B.f)}, +bD3(){return this.d.$0()}, +lC(a,b){return this.e.$2(a,b)}} +A.aRs.prototype={ +q(a){var s=this,r=null,q=s.a +return A.dn(B.be,q.lC(a,q.c&&s.d),B.m,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,new A.c6h(s),new A.c6i(s),new A.c6j(s),r,r,r,r,!1,B.ac)}} +A.c6i.prototype={ +$1(a){var s=this.a +return s.C(new A.c6f(s))}, +$S:27} +A.c6f.prototype={ +$0(){return this.a.d=!0}, +$S:0} +A.c6j.prototype={ +$1(a){var s=this.a +s.C(new A.c6e(s)) +s=s.a +if(s.c)s.bD3()}, +$S:35} +A.c6e.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.c6h.prototype={ +$0(){var s=this.a +return s.C(new A.c6g(s))}, +$S:0} +A.c6g.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.ag9.prototype={ +m(){var s,r,q,p,o +this.ap() +for(s=this.aas$,r=s.length,q=0;q0 +s=s===!0}else s=!1 +if(s){n.Q=B.mr +n.ax=n.ay=1 +s=B.mr}else{n.Q=B.z1 +s=n.f +s===$&&A.b() +n.as=s +n.at=new A.aU(s.a+5e5) +s=B.z1}}switch(s.a){case 1:s=n.as +s.toString +r=n.at +r.toString +q=n.AH(s,r) +if(n.gRC()>20&&n.w.Vp())if(!n.cy)n.a6o() +else n.Uf() +else if(q>=1){n.as=null +n.Q=B.bAx +n.ax=1}else n.a6w(q) +return m +case 2:s=n.w +if(s.b.r!=null)n.atf() +else if(n.gRC()>20&&s.Vp())n.Uf() +else n.a6w(1) +return m +case 3:n.atR() +s=n.as +s.toString +r=n.at +r.toString +p=n.AH(s,r) +r=n.ax +r.toString +if(p>=1){n.ax=n.ay=1 +n.Q=B.mr}else if(n.z==null&&n.gRC()>20&&n.w.Vp())n.Uf() +else n.atD(r+(1-r)*p,p) +return m +case 4:n.atR() +n.atD(1,1) +s=n.z +if(s!=null){s=s.a.a.b +if(s==null)s=0 +r=n.w.c.gam() +if(r!=null)r.bB1(s) +n.m()}else if(n.gRC()>80&&n.w.Vp())n.Uf() +return m +case 5:s=n.as +s.toString +r=n.at +r.toString +o=n.AH(s,r) +if(o>=1){s=n.w +if(n.z!=null){s.vu() +n.m()}else{n.Um(1,n.ax,n.ay) +s.bno(n.e,n.a) +n.Q=B.a_O}}else n.Um(o,n.ax,n.ay) +return m +case 7:s=n.as +s.toString +r=n.at +r.toString +q=n.AH(s,r) +if(q>=1){n.m() +n.w.vu()}else n.a6w(1-q) +return m +case 6:break +case 0:throw A.d(A.a0("Invalid state: "+s.k(0)))}}, +gRC(){var s=this,r=s.b +return s.e.W(0,s.d).S(0,new A.j(0,s.ch*r.$0())).W(0,new A.j(0,s.c*r.$0())).gfT()}, +XX(){A.w5() +this.cy=!0}, +bge(a,b,c){var s,r,q=this.f +q===$&&A.b() +s=a.a +if(s<=q.a)return q +else{r=this.AH(new A.aU(s-b.a),a) +return new A.aU(this.f.a-B.e.aF(c.a*(1-r)))}}, +a6o(){var s=this,r=s.at +if(r==null){r=s.f +r===$&&A.b()}r=s.bge(r,B.bd,B.bd) +s.as=r +s.at=new A.aU(r.a+5e5) +s.Q=B.bAz}, +m(){this.db=!0 +var s=this.x +s===$&&A.b() +s.e3(0) +this.x.m()}, +Uf(){var s,r,q=this,p=q.as +if(p!=null){s=q.at +s.toString +r=B.e.dV(q.AH(p,s),0,1) +if(q.ax==null)q.ax=r +else if(q.ay==null)q.ay=r}p=q.f +p===$&&A.b() +q.as=p +s=q.Q===B.mr +p=p.a +if(s)q.at=new A.aU(p+2e5) +else q.at=new A.aU(p+2e5) +if(s)A.w5() +q.Q=B.a_N +p=q.w +if(p.f){s=p.b.r +if(s!=null)s.w.$1(new A.mi()) +p.e=!0 +p.f=!1}p.b.c.$0()}, +atf(){var s=this,r=s.w,q=r.b.r +if(q!=null)q.r.$0() +r.f=!0 +if(s.Q===B.z1){r=s.as +r.toString +q=s.at +q.toString +s.ax=s.AH(r,q)}s.Q=B.bAy +r=s.f +r===$&&A.b() +s.as=r +s.at=new A.aU(r.a+25e4) +s.CW=1/0}, +atR(){var s,r,q=this,p=q.b,o=q.e.W(0,q.d).W(0,new A.j(0,q.c*p.$0())),n=o.b +if(n<0){s=p.$0() +r=Math.min(-n,s) +o=new A.j(o.a,n+r) +q.ch=s>0?r/s:0}else q.ch=0 +q.y=o}, +AH(a,b){var s,r=this.f +r===$&&A.b() +s=a.a +return B.d.aD(r.a-s,1000)/B.d.aD(b.a-s,1000)}, +JR(){var s=0,r=A.p(t.H),q=this +var $async$JR=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=2 +return A.i(A.jk(B.aW,null,t.z),$async$JR) +case 2:if(!q.db){q.m() +q.w.vu()}return A.n(null,r)}}) +return A.o($async$JR,r)}, +ao(a){var s=this +if(s.db)return +s.JR() +if(s.Q===B.a_N)s.w.b.d.$0() +s.m() +if(s.Q!==B.a_O)s.w.vu()}, +qn(a,b){var s,r,q,p,o,n,m=this +if(m.db)return +m.JR() +m.z=b +if(m.CW<50&&m.Q===B.mr&&A.cp(0,0,m.cx.gMF(),0,0,0).a<35e4){m.m() +s=m.w +r=m.e +q=s.c +p=q.gam() +if(p==null)r=null +else{p=p.Q +o=t.x.a($.an.U$.z.i(0,p).gai()) +n=o.hZ(r) +r=o.gu(0) +r=new A.W(0,0,0+r.a,0+r.b).p(0,n)}if(r===!0){s=s.b.r +if(s!=null)s.x.$0()}s=q.gam() +if(s!=null)s.mh() +return}switch(m.Q.a){case 1:if(m.cy&&m.w.b.r!=null)m.atf() +else m.a6o() +break +case 2:m.a6o() +break +case 5:m.w.b.d.$0() +break +case 3:case 4:case 7:break +case 6:s=m.w +s.b.d.$0() +s.vu() +m.m() +break +case 0:m.w.vu() +m.m() +break}}, +cI(a,b){var s,r=this +if(r.db)return +s=b.a +r.e=s +r.CW=Math.max(r.CW,s.W(0,r.d).gfT())}, +$iAg:1} +A.be5.prototype={ +$1(a){var s=this.a +s.f=a +s.bcp()}, +$S:5} +A.JE.prototype={} +A.be6.prototype={} +A.be4.prototype={} +A.at_.prototype={ +aUB(a,b){var s,r=A.a5e(a,t.N1) +r.toString +s=A.rK(new A.bea(this),!1,!1,!1) +this.d=s +r.uz(0,s)}, +b9S(){var s=this.c.gam() +s=s==null?null:s.d +return s==null?0:s}, +aZo(a,b){var s=this.c.gam() +s=s==null?null:s.dx.e +if(s==null)s=0 +return A.cHE(this,s,a,this.gaoL(),b)}, +vu(){var s,r=this +if(r.r)return +r.r=!0 +if(!r.e){s=r.b.r +if(s!=null)s.w.$1(new A.mi()) +r.e=!0}s=r.d +s===$&&A.b() +s.hB(0) +r.b.f.$0()}, +bno(a,b){$.an.xr$.push(new A.be9(this,a,b))}, +ao(a){this.vu()}, +Vp(){if($.cnZ.a>1)return!1 +return this.b.e!=null}} +A.bea.prototype={ +$1(a){var s=this.a +return new A.KI(s.b,s.gaZn(),s.gbpN(s),new A.be7(s),s.c)}, +$S:1738} +A.be7.prototype={ +$0(){this.a.a=!0}, +$S:0} +A.be9.prototype={ +$1(a){var s=this.a,r=s.c.gam(),q=r==null?null:r.aJm() +if(q==null)s.vu() +else{r=s.b.e +if(r!=null)r.$4(this.b,this.c,q,new A.be8(s))}}, +$S:5} +A.be8.prototype={ +$0(){this.a.vu()}, +$S:0} +A.zn.prototype={} +A.axa.prototype={ +buL(a,b,c){if($.wm>0)return null +return A.d9s(new A.bpU(this,c,b,a))}, +JO(a,b,c,d,e,f,g){return this.b01(a,b,c,d,e,f,g)}, +b01(a,b,c,d,e,f,g){var s=0,r=A.p(t.XU),q,p=this,o,n,m +var $async$JO=A.l(function(h,i){if(h===1)return A.m(i,r) +while(true)switch(s){case 0:o=A.dO(b,t.MT) +s=3 +return A.i(o,$async$JO) +case 3:n=i +s=4 +return A.i(t.ML.b(d)?d:A.dO(d,t.Iw),$async$JO) +case 4:m=i +if(m==null){q=null +s=1 +break}q=A.a5b(new A.bpF(p,n,m,a,c,e,f,g),t.XU) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$JO,r)}, +RD(a,b,c,d,e,f,g){return this.b00(a,b,c,d,e,f,g)}, +b00(a,b,c,d,e,a0,a1){var s=0,r=A.p(t.XU),q,p=this,o,n,m,l,k,j,i,h,g,f +var $async$RD=A.l(function(a2,a3){if(a2===1)return A.m(a3,r) +while(true)switch(s){case 0:f={} +f.a=!1 +s=3 +return A.i(new A.bcE().ga9s(),$async$RD) +case 3:if(a.e==null){q=null +s=1 +break}$.wl.push(new A.bpG(f,b)) +if(d!=null){f=d.b +o=f.a;++o.b +n=new A.JE(f,o) +m=A.a([],t.zL)}else{q=null +s=1 +break}l=new A.aI(new A.ak($.at,t.LR),t.zh) +A.a5b(new A.bpH(l),t.z) +if(d!=null){f=new A.bpP(d) +o=d.c +if(o!=null){k=f.$2(o.gwG(),o) +j=!0}else{o=d.b.a +k=f.$2(o.gwG(),o) +j=!1}i=new A.bm(k,$.ae(),t.VU) +f=new A.bpQ(a1,i,f) +a1.a3(0,f) +$.wl.push(new A.bpI(a1,f)) +f=d.e +o=d.x +h=d.r +g=new A.be6(f,d.f,o,h,i,j,new A.bpJ(p,d),new A.bpK(p,d),new A.bpL(p,d))}else g=null +f=A.d58(a,new A.be4(n,m,new A.bpM(c),new A.bpN(c),null,new A.bpO(l),g)) +q=A.cHE(f,0,a0,f.gaoL(),e) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$RD,r)}} +A.bpU.prototype={ +$0(){var s,r,q,p=this,o=null,n=$.ae(),m=new A.bm(o,n,t.lR),l=new A.aOO(new A.bm(o,n,t.IU),new A.bm(!1,n,t.uh),new A.bm(o,n,t.j7)) +$.wl.push(l.gb96()) +n=p.a +s=n.b.a +if(s==null)r=o +else{q=$.cQV +$.cQV=q+1 +r=s.pL(new A.Kt(q,p.b,new A.bpS(m)))}if(r==null)return o +s=new A.Qq() +s.Ry(0,A.a5b(new A.bpT(n.JO(p.d,o,l,r,p.c,p.b,m)),t.XU)) +return s}, +$S:1739} +A.bpS.prototype={ +$1(a){this.a.sj(0,a)}, +$S:1740} +A.bpT.prototype={ +$0(){return this.a}, +$S:498} +A.bpF.prototype={ +$0(){var s=0,r=A.p(t.XU),q,p=this,o,n,m +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:n=p.b +m=p.c +$.wl.push(new A.bpE(n,m)) +o=p.d +if(o.e==null){q=null +s=1 +break}s=3 +return A.i(p.a.RD(o,n,p.e,m,p.f,p.r,p.w),$async$$0) +case 3:q=b +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:498} +A.bpE.prototype={ +$0(){var s=this.b +if(s!=null){s.b.a.m() +s=s.c +if(s!=null)s.m()}}, +$S:0} +A.bpG.prototype={ +$0(){}, +$S:0} +A.bpH.prototype={ +$0(){return this.a.a}, +$S:377} +A.bpP.prototype={ +$2(a,b){return new A.zn(this.a.w.$2(a,b),a)}, +$S:1742} +A.bpQ.prototype={ +$0(){var s=this.a.a +if(s!=null){$.wl.push(new A.bpR(s)) +this.b.sj(0,this.c.$2(s.gwG(),s))}}, +$S:0} +A.bpR.prototype={ +$0(){this.a.m()}, +$S:0} +A.bpI.prototype={ +$0(){this.a.O(0,this.b)}, +$S:0} +A.bpJ.prototype={ +$0(){var s=this.a.b.a +if(s!=null)s.bCQ(this.b.a)}, +$S:0} +A.bpK.prototype={ +$1(a){var s=this.a.b.a +if(s!=null)s.bCi(this.b.a,a)}, +$S:279} +A.bpL.prototype={ +$0(){var s=this.a.b.a +if(s!=null)s.bCy(this.b.a)}, +$S:0} +A.bpM.prototype={ +$0(){this.a.c.sj(0,!0)}, +$S:0} +A.bpN.prototype={ +$0(){var s=this.a,r=s.c +if(r.a){r.sj(0,!1) +s.b.sj(0,B.ahC)}}, +$S:0} +A.bpO.prototype={ +$0(){this.a.fw(0)}, +$S:0} +A.aOO.prototype={ +bcJ(){this.c.sj(0,!1) +this.b.sj(0,this.a.b.a)}, +b97(){var s,r=this,q=r.a +if(q!=null)q.b.O(0,r.gbcI()) +q=r.b +s=q.k3$=$.ae() +q.k2$=0 +q=r.c +q.k3$=s +q.k2$=0 +q=r.d +q.k3$=s +q.k2$=0}} +A.JT.prototype={} +A.bvs.prototype={} +A.bvq.prototype={ +akr(a){return Math.log(a*a+1)/2.302585092994046}, +gaoM(){var s=this.y.d,r=s.a +s=s.b +return new A.j(this.akr(Math.abs(r))*J.iM(r),this.akr(Math.abs(s))*J.iM(s))}, +a4V(a,b){var s=b.a,r=b.b +this.j2(a,A.y6(new A.V(b.c-s,b.d-r))) +this.li(a,A.cyu(new A.j(s,r),this.at,B.av))}, +Ho(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=this,a6="RenderBox was not laid out: ",a7={},a8=b1.a,a9=b1.b,b0=a5.d.S(0,B.ec).BV(new A.W(0,0,0+a8,0+a9)) +a7.a=null +s=a5.w +if(a5.b.i(0,s)!=null){r=A.da4(b1) +q=a5.ay +p=q.a +o=a5.r +o.toString +n=r.j1(new A.brY(new A.bvr(a7,a5),b0,a5.e.d,o,a5.y.e,p)) +a5.z.$1(n.d) +a5.Q.$1(n.e) +a5.as.$1(n.f) +m=n.b +l=n.c +q.a=n.a}else{m=null +l=null}q=a5.e +p=q.d +a9=A.av(1.15,1.04,B.e.dV(Math.max((p.c-p.a)/a8,(p.d-p.b)/a9),0,1)) +a9.toString +a8=a5.y +k=1+(a9-1)*a8.a +j=A.cLn(p,k) +if(!a5.ax&&m!=null)m=A.cLm(A.cLn(m,k),b0) +if(a5.b.i(0,s)!=null&&a8.b>0){i=a5.gaoM() +a9=A.U6(j,m.ba(0,i.a,i.b),a8.b) +a9.toString +j=a9}a9=a8.c +p=a9>0 +if(p){o=q.e +o=A.U6(j,A.oq(a8.f,o.b,o.a),a9) +o.toString +j=o}a5.a4V(q.b,j) +a5.a4V(q.c,j) +if(a5.b.i(0,s)!=null)a5.a4V(s,j) +for(s=a5.f,q=s.length,o=a5.at,h=o.a,g=o.b,f=t.Wz,a8=a8.f,e=0;er?r-(s-m):m}s=n.b +q=a.b +if(!(sp?p-(r-s):s}r=o.b +s=r.gc1().b-new A.W(l,q,l+(n.c-m),q+(n.d-s)).gc1().b +return new A.iH(o.a,r.eD(new A.j(-0.0,-s)),o.c,new A.c6y(o,new A.j(0,s)),o.e)}, +WX(a){var s=this,r=s.b +if(s.gNV().a>r.c||s.gNV().cl?l-m:0 +m=n.b +l=a.b +r=ml?l-m:0 +return new A.iH(p.a,o.eD(new A.j(k+s,r+q)),p.c,p.d,p.e)}} +A.c6y.prototype={ +$1(a){return J.b2S(this.a.d.$1(a),this.b)}, +$S:54} +A.co6.prototype={ +$1(a){return a.a===this.a}, +$S:283} +A.co7.prototype={ +$1(a){var s=this.a,r=a.b.n1(a.gNV()) +return r.a+0.001>=s.a&&r.c<=s.c+0.001&&r.b+0.001>=s.b&&r.d<=s.d+0.001}, +$S:283} +A.co8.prototype={ +$1(a){var s=a.b.n1(a.gNV()),r=this.a +return new A.V(s.c-s.a,s.d-s.b).pO(0,new A.V(r.c-r.a+0.001,r.d-r.b+0.001))}, +$S:283} +A.co9.prototype={ +$2(a,b){var s=this.a,r=a.WX(s),q=b.WX(s) +return r.b.gc1().W(0,a.b.gc1()).gw7()<=q.b.gc1().W(0,b.b.gc1()).gw7()+0.001?a:b}, +$S:1746} +A.brZ.prototype={} +A.aRE.prototype={ +j1(a){var s,r,q,p,o=a.b,n=o.c-o.a,m=o.d-o.b,l=a.a.$1(A.nT(new A.V(n,m))),k=a.d,j=A.bGo(k,new A.V(n-l.a-15,m)),i=A.oq(a.c.gc1(),j.b,j.a) +m=t.fq +s=A.a([new A.iH("vertical-bottom-left",i,l,new A.c6Q(),B.ca),new A.iH("vertical-bottom-right",i,l,new A.c6R(l),B.eU),new A.iH("vertical-top-left",i,l,new A.c6S(l),B.kb),new A.iH("vertical-top-right",i,l,new A.c6T(l),B.hk)],m) +r=A.a([new A.iH("horizontal-top-right",i,l,new A.c6U(),B.ca),new A.iH("horizontal-bottom-right",i,l,new A.c6V(l),B.kb),new A.iH("horizontal-top-left",i,l,new A.c6W(l),B.eU),new A.iH("horizontal-bottom-left",i,l,new A.c6X(l),B.hk)],m) +n=this.a +if(n&&k.a>k.b){n=A.R(s,!0,t.dY) +B.b.L(n,r) +q=n}else if(n){n=A.R(r,!0,t.dY) +B.b.L(n,s) +q=n}else q=r +p=A.cPC(o,q,a.f) +return new A.azq(p.a,p.b,p.d,0,!0,p.e)}} +A.c6Q.prototype={ +$1(a){return new A.j(a.a,a.d+15)}, +$S:54} +A.c6R.prototype={ +$1(a){return new A.j(a.c-this.a.a,a.d+15)}, +$S:54} +A.c6S.prototype={ +$1(a){return new A.j(a.a,a.b-15-this.a.b)}, +$S:54} +A.c6T.prototype={ +$1(a){var s=this.a +return new A.j(a.c-s.a,a.b-15-s.b)}, +$S:54} +A.c6U.prototype={ +$1(a){return new A.j(a.c+15,a.b)}, +$S:54} +A.c6V.prototype={ +$1(a){return new A.j(a.c+15,a.d-this.a.b)}, +$S:54} +A.c6W.prototype={ +$1(a){return new A.j(a.a-15-this.a.a,a.b)}, +$S:54} +A.c6X.prototype={ +$1(a){var s=this.a +return new A.j(a.a-15-s.a,a.d-s.b)}, +$S:54} +A.c6J.prototype={ +j1(a0){var s,r,q,p,o,n=null,m=a0.d,l=a0.b,k=l.c-l.a,j=l.b,i=l.d-j,h=A.bGo(m,new A.V(k,i/4)),g=A.bGo(m,new A.V(k,i*3/4)),f=h.b,e=a0.a.$1(A.nT(new A.V(k,i-f-15))),d=g.b,c=e.b,b=Math.max(d+15+c-i,0),a=a0.c +c=Math.max(a.gc1().b-j+f/2+15+c-i,0) +f=a0.e +s=A.bGo(m,new A.V(k,d-f*b)) +r=A.cLm(A.oq(a.gc1(),d,g.a).ba(0,0,-c),l) +q=A.cyG(r,s.b,n,s.a) +p=A.cyG(q,n,r.c-(q.c-q.a),n) +o=A.cPC(A.cyG(l,i+b,n,n),A.a([new A.iH("geometry-1",q,e,new A.c6K(),B.ca),new A.iH("geometry-2",p,e,new A.c6L(e),B.eU)],t.fq),a0.f) +m=b===0||f===1 +return new A.azq(o.a,o.b,o.d,b,m,o.e)}} +A.c6K.prototype={ +$1(a){return new A.j(a.a,a.d+15)}, +$S:54} +A.c6L.prototype={ +$1(a){return new A.j(a.c-this.a.a,a.d+15)}, +$S:54} +A.KI.prototype={ +J(){var s=null,r=t.A,q=$.ae(),p=t.TY +return new A.Tc(new A.aR(s,r),new A.bm(!0,q,t.uh),B.C,new A.Fj(q),new A.bvs(),new A.aR(s,r),new A.aR(s,r),new A.aR(s,r),new A.aR(s,r),A.a([],p),A.a([],p),A.a([],p),new A.Qz(0,0,0,B.h,0,B.h),B.f)}, +bB2(a,b){return this.d.$2(a,b)}, +zD(a){return this.e.$0()}, +bCs(){return this.f.$0()}} +A.Tc.prototype={ +a8(){var s,r,q,p,o,n=this +n.an() +n.a.toString +s=n.ax +r=t.A +q=n.ay +p=n.ch +o=0 +for(;!1;++o){s.push(new A.aR(null,r)) +q.push(new A.aR(null,r)) +p.push(new A.aR(null,r))}}, +m(){var s,r=this,q=r.f,p=$.ae() +q.k3$=p +q.k2$=0 +q=r.cy +if(q!=null){s=q.a +s===$&&A.b() +s.e3(0) +q.a.m()}q=r.db +if(q!=null){s=q.a +s===$&&A.b() +s.e3(0) +q.a.m()}q=r.cx +if(q!=null){s=q.a +s===$&&A.b() +s.e3(0) +q.a.m()}q=r.x +q.tt() +q.k3$=p +q.k2$=0 +r.ap()}, +aLc(a){this.d=a}, +aJm(){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=t.f9.a($.an.U$.z.i(0,h.e).gai()),f=h.c +f.toString +s=A.bC(f,null,t.l).w.b +r=new A.V(h.a.c.a.b.gwG().a+24,h.a.c.a.b.gwG().b+24) +for(f=h.ch,q=f.length,p=t.x,o=0;o0)f.push(A.zc(new A.iU(A.mj(e?b2:c0.a,r),b2),a0.w,c)) +if(b7&&b1.dx.b>0){b7=b1.r +m=B.hs.ah(0,1-b1.CW) +k=b3.a +g=b1.r +e=b3.b +f.push(A.zc(A.mj(A.bNn(b7,b3.c.$6(b9,k.a,b1,g,b1.f,e),r*m,b2,b2),r),a0.x,b))}f.push(A.zc(A.mj(A.n6(new A.Ma(q.r,12,1,b2),!0,b2),s),q.c,j)) +return new A.a62(new A.mu(new A.acR(A.mj(new A.P_(new A.yr(a0,f,b2),b1.e),(1-0.3*i.c)*(1-h)),b4.b*(1-b4.c)*(1-b5),b8,b2),l,B.cr,!1,b2),b2)}, +mh(){var s,r=this +if(r.c==null){r.a.toString +return}s=r.dx +r.cx=A.bFY(B.aA,new A.bvM(r,s.b,s.d),new A.bvN(r))}, +bB1(a){var s,r,q=this,p={} +if(q.dx.d.l(0,B.h)){s=q.dx.e +s=s!==0&&s!==1}else s=!0 +if(s){s=q.dx +r=s.e +p.a=null +if(a<-1000)p.a=1 +else if(a>1000)p.a=0 +else p.a=B.e.OK(r) +q.cy=A.bFY(B.cC,new A.bvP(p,q,s.d,r),null)}}, +cI(a,b){var s,r=this.cy +if(r!=null){s=r.a +s===$&&A.b() +s.e3(0) +r.a.m()}this.C(new A.bvQ(this,b))}, +btU(){var s=this.dx.e +if(s<1)this.db=A.bFY(B.K,new A.bvK(this,s),null)}, +$icy3:1} +A.bvI.prototype={ +$3(a,b,c){return new A.fV(new A.bvH(this.a,b),null)}, +$S:1747} +A.bvH.prototype={ +$2(a,b){var s=this.a,r=s.w +if(r!=null&&!r.l(0,b))s.mh() +s.w=b +return s.apt(a,this.b)}, +$S:52} +A.bvG.prototype={ +$1(a){return A.io(this.a,a)}, +$S:341} +A.bvF.prototype={ +$1(a){return A.cK(this.a,a)}, +$S:1748} +A.bvB.prototype={ +$1(a){this.a.f.sj(0,a)}, +$S:4} +A.bvC.prototype={ +$1(a){this.a.r=a}, +$S:1749} +A.bvA.prototype={ +$2(a,b){var s=this.a,r=b.a,q=b.b +return new A.JT(a,s.ay[a],s.ax[a],this.b.$1(r.b),q.gwG(),r.a,q)}, +$S:1750} +A.bvD.prototype={ +$0(){var s=t.S,r=A.a([],t.t),q=A.dV(s),p=A.am2() +s=new A.us(B.m,B.h_,A.am1(),B.eS,A.N(s,t.GY),r,A.N(s,t.SP),q,this.a,null,p,A.N(s,t.F)) +s.ch=s.gbcd() +s.CW=s.gbcw() +s.cx=s.gbb8() +s.cy=s.ga4M() +return s}, +$S:1751} +A.bvE.prototype={ +$1(a){a.er=new A.bvz(this.a,a)}, +$S:1752} +A.bvz.prototype={ +$1(a){var s,r=this.a +if(r.dx.b===0||r.cx!=null)return null +r=r.a +r.toString +s=this.b.eX +s.toString +return r.bB2(a,s)}, +$S:494} +A.bvM.prototype={ +$1(a){var s=this.a +if(s.c==null)return +s.C(new A.bvL(s,a,this.b,this.c))}, +$S:179} +A.bvL.prototype={ +$0(){var s=this,r=s.a,q=r.CW=s.b,p=r.dx,o=A.av(s.c,0,B.hs.ah(0,q)) +o.toString +q=A.og(s.d,B.h,B.hs.ah(0,q)) +q.toString +r.dx=p.bsi(o,q)}, +$S:0} +A.bvN.prototype={ +$0(){this.a.a.zD(0)}, +$S:0} +A.bvP.prototype={ +$1(a){var s=this,r=s.b +r.C(new A.bvO(s.a,r,s.c,B.hs.ah(0,a),s.d))}, +$S:179} +A.bvO.prototype={ +$0(){var s=this,r=s.b,q=r.dx,p=s.d,o=A.og(s.c,B.h,p) +r.dx=q.bsh(A.av(s.e,s.a.a,p),o)}, +$S:0} +A.bvQ.prototype={ +$0(){var s=this.b +this.a.dx=new A.Qz(B.hs.ah(0,s.a),B.hs.ah(0,s.b),s.c,s.d,s.e,s.f)}, +$S:0} +A.bvK.prototype={ +$1(a){var s=this.a +s.C(new A.bvJ(s,this.b,B.hs.ah(0,a)))}, +$S:179} +A.bvJ.prototype={ +$0(){var s=this.a +s.dx=s.dx.brK(A.av(this.b,1,this.c))}, +$S:0} +A.acR.prototype={ +J(){return new A.aL8(new A.aR(null,t.A),B.f)}} +A.aL8.prototype={ +q(a){var s,r,q=this,p=q.a +if(p.d===0)return new A.hI(p.c,q.d) +p=A.a([],t.p) +s=q.a +r=s.e +if(r!=null)p.push(r.$1(s.d)) +p.push(A.po(0,new A.hI(q.a.c,q.d))) +return new A.d4(B.ar,null,B.am,B.k,p,null)}} +A.Ma.prototype={ +q(a){var s=this.c,r=s.f +if(r!=null)return new A.aiy(r,this.d,this.e,null) +else return new A.a1S(s,null)}} +A.aiy.prototype={ +J(){return new A.aWr(B.f)}} +A.aWr.prototype={ +c5(){var s=this +s.dH() +if(!s.d){s.d=!0 +s.K_()}}, +K_(){var s=0,r=A.p(t.H),q,p=this,o,n,m,l,k,j +var $async$K_=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:k=p.a.c +j=$.Zu() +A.fT(k) +o=A.nG(j.a.get(k)) +if(o==null)o=1 +k=p.a.c.b +k===$&&A.b() +k=k.a +k===$&&A.b() +k=B.e.au(k.a.width()) +j=p.a.c.b +j===$&&A.b() +j=j.a +j===$&&A.b() +j=B.e.au(j.a.height()) +s=3 +return A.i(A.bKE(new A.qM(A.czH(p.a.c),new A.W(0,0,0+k/o,0+j/o))),$async$K_) +case 3:n=b +j=n.a +k=j.e +m=B.e.aF(14*(k==null?1:k)) +k=A.dlD(j,m) +A.dlB(k,m) +n.b.fH(14) +s=4 +return A.i(k.bGU(),$async$K_) +case 4:l=b +if(p.c==null){s=1 +break}p.C(new A.ceL(p,l)) +case 1:return A.n(q,r)}}) +return A.o($async$K_,r)}, +m(){this.ap() +var s=this.e +if(s!=null)s.m()}, +q(a){return new A.fV(new A.ceM(this),null)}} +A.ceL.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.ceM.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=this.a +if(m.e==null)return A.aCr(B.C,n,n,n,n,B.bC,B.hn,n,m.a.c,!1,!1,!1,n,B.ce,1,n) +s=A.bC(a,n,t.l).w.b +r=m.a.c.b +r===$&&A.b() +r=r.a +r===$&&A.b() +r=B.e.au(r.a.width()) +q=m.a.c.b +q===$&&A.b() +q=q.a +q===$&&A.b() +q=B.e.au(q.a.height()) +p=m.a +o=-p.d +r=o*(b.b/(r/s)) +q=o*(b.d/(q/s)) +o=p.e +m=m.e +m.toString +return new A.d4(B.ar,n,B.am,B.i,A.a([A.mo(q,A.mj(A.aCr(B.C,n,n,n,n,B.bC,B.hn,n,m,!1,!1,!1,n,B.ce,1,n),o),n,n,r,r,q,n),A.po(0,A.aCr(B.C,n,n,n,n,B.bC,B.hn,n,p.c,!1,!1,!1,n,B.ce,1,n))],t.p),n)}, +$S:1753} +A.bFX.prototype={} +A.bFZ.prototype={ +$1(a){var s,r=this,q=r.a.a,p=B.d.aD(q,1000) +q=p===0||a.a>q +s=r.b +if(q){s.$1(1) +q=r.c +p=q.a +p===$&&A.b() +p.e3(0) +q.a.m() +q=r.d +if(q!=null)q.$0()}else s.$1(B.d.aD(a.a,1000)/p)}, +$S:5} +A.at4.prototype={ +H(){return"DropOperation."+this.b}} +A.a62.prototype={ +q(a){return A.wk(B.cE,this.c,null,new A.bu8(),new A.bu9(),null,null,new A.bua())}} +A.bu9.prototype={ +$1(a){$.cnZ.B(0,a.gcG())}, +$S:56} +A.bua.prototype={ +$1(a){$.cnZ.F(0,a.gcG())}, +$S:278} +A.bu8.prototype={ +$1(a){$.cnZ.F(0,a.gcG())}, +$S:493} +A.aBL.prototype={ +b43(a){if(a.gel(a)!==B.dd)this.a.sj(0,a.gel(a))}} +A.aEA.prototype={} +A.a9F.prototype={} +A.us.prototype={ +bce(a){var s=this.er +this.dr=s==null?null:s.$1(a.b)}, +bcx(a){var s=this.dr +if(s!=null)s.cI(0,new A.aEA(a.d))}, +bb9(a){var s=this.dQ,r=this.dr +if(s){if(r!=null)r.ao(0)}else if(r!=null)r.qn(0,new A.a9F(a.a)) +this.dr=null}, +Ky(){var s=this.dr +if(s!=null)s.ao(0) +this.dr=null}, +m(){this.Ky() +this.aOh()}, +kM(a){this.eX=a +this.aOg(a)}, +mk(a){return this.aOi(a)}, +jB(a){var s=this +if(t.Ko.b(a))try{s.dQ=!0 +s.a0I(a)}finally{s.dQ=!1}else s.a0I(a)}} +A.ur.prototype={ +bbN(a){var s +this.dr=!0 +s=this.dP +if(s!=null)s.XX()}, +bbL(a){var s=this.dP +if(s!=null)s.cI(0,new A.aEA(a.a))}, +bbJ(a){var s=this.dP +if(s!=null)s.qn(0,new A.a9F(a.c)) +this.dP=null}, +bbH(a){var s=this +s.dr=!1 +s.eX=A.d3(s.e8,new A.bG5(s,a))}, +a4N(a){var s,r=this +if(!a&&!r.dr){s=r.dP +if(s!=null)s.qn(0,new A.a9F(B.es)) +r.dP=null}s=r.eX +if(s!=null)s.ao(0) +r.eX=null +s=r.dP +if(s!=null)s.ao(0) +r.dP=null}, +Ky(){return this.a4N(!1)}, +kg(a){this.a4N(!0) +this.ah4(a)}, +m(){this.Ky() +this.aPz()}, +mk(a){var s,r=this.bk +r=r==null?null:r.$1(a.gb8(a)) +if(!(r==null?!0:r))return!1 +s=this.agK(a) +if(s)this.er=a.gcG() +return s}} +A.bG5.prototype={ +$0(){var s=this.a,r=s.hS +s.dP=r==null?null:r.$1(this.b.a) +s.eX=null}, +$S:0} +A.a48.prototype={ +bGU(){var s=this,r=new A.ak($.at,t.NT) +$.ar().ayn(s.d,s.a,s.b,B.Wo,new A.bmy(new A.aI(r,t.Zf)),!0,s.c,null,null) +return r.bf(new A.bmz(s),t.lu)}} +A.bmy.prototype={ +$1(a){this.a.d2(0,a)}, +$S:1756} +A.bmz.prototype={ +$1(a){$.Zu().n(0,a,this.a.e) +return a}, +$S:1757} +A.aFW.prototype={} +A.Ks.prototype={} +A.Kt.prototype={} +A.a5M.prototype={} +A.azu.prototype={} +A.bcn.prototype={} +A.zl.prototype={ +hy(a){var s=0,r=A.p(t.H) +var $async$hy=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if($.an==null)A.FV() +$.an.toString +$.b2y() +return A.n(null,r)}}) +return A.o($async$hy,r)}} +A.brW.prototype={ +$0(){var s=0,r=A.p(t.Et),q,p +var $async$$0=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:s=$.cxZ==null?3:4 +break +case 3:p=new A.azn() +$.cxZ=p +s=5 +return A.i(p.hy(0),$async$$0) +case 5:case 4:p=$.cxZ +p.toString +q=p +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$$0,r)}, +$S:1758} +A.aRx.prototype={} +A.aud.prototype={ +Zh(a,b){return this.bFB(a,b)}, +bFB(a,b){var s=0,r=A.p(t.oo),q +var $async$Zh=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q=new A.aRx(a) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Zh,r)}, +a0k(a){return this.aM6(a)}, +aM6(a){var s=0,r=A.p(t.J4),q +var $async$a0k=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q=a.d.$0() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a0k,r)}} +A.a46.prototype={ +V6(a){return A.b2(this.a,a.f,a.b,a.d,null,a.e,null,a.w,a.a,null,a.c)}} +A.brX.prototype={} +A.jn.prototype={} +A.jO.prototype={} +A.azl.prototype={} +A.brS.prototype={ +H(){return"MenuActionState."+this.b}} +A.qm.prototype={} +A.mi.prototype={} +A.bue.prototype={ +wK(a,b){return this.bEB(a,b,b)}, +bEB(a,b,c){var s=0,r=A.p(c),q,p=2,o,n=[],m=this,l,k,j,i,h +var $async$wK=A.l(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:k=t.LR,j=t.zh,i=m.b +case 3:if(!m.a){s=4 +break}h=new A.ak($.at,k) +i.push(new A.aI(h,j)) +s=5 +return A.i(h,$async$wK) +case 5:s=3 +break +case 4:m.a=!0 +l=null +p=6 +s=9 +return A.i(a.$0(),$async$wK) +case 9:l=e +n.push(8) +s=7 +break +case 6:n=[2] +case 7:p=2 +m.a=!1 +if(i.length!==0)B.b.fE(i,0).fw(0) +s=n.pop() +break +case 8:q=l +s=1 +break +case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$wK,r)}} +A.P_.prototype={ +aR(a){var s=new A.Ub(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +return s}} +A.Ub.prototype={ +giD(){return!0}, +aFs(a,b){var s,r=this.ch.a +r.toString +t.gY.a(r) +if(a==null){s=this.gu(0) +s=new A.W(0,0,0+s.a,0+s.b)}else s=a +return r.bGY(s,b)}, +bGX(a){return this.aFs(null,a)}} +A.Fj.prototype={} +A.cr8.prototype={ +$0(){var s=this.a +s.b=(s.b+1)%this.b.length}, +$S:0} +A.cr9.prototype={ +$0(){var s=this.a +s.a=B.d.M(s.a+1,this.b.length)}, +$S:0} +A.asY.prototype={ +hy(a){var s=0,r=A.p(t.H),q=this +var $async$hy=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.aOf(0) +A.L(self.document,"addEventListener",["contextmenu",t.g.a(A.cQ(new A.bdV(q)))]) +return A.n(null,r)}}) +return A.o($async$hy,r)}} +A.bdV.prototype={ +$1(a){if($.b2y().a.a===B.bi)if($.wm>0)a.preventDefault()}, +$S:75} +A.azn.prototype={ +hy(a){var s=0,r=A.p(t.H),q=this +var $async$hy=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:s=2 +return A.i(q.aP3(0),$async$hy) +case 2:A.L(self.document,"addEventListener",["contextmenu",t.g.a(A.cQ(new A.brU(q)))]) +return A.n(null,r)}}) +return A.o($async$hy,r)}} +A.brU.prototype={ +$1(a){var s=a.clientX,r=a.clientY,q=this.a.a +s=q==null?null:q.LX(new A.j(s,r)) +if(s===!0)a.preventDefault() +if($.wm>0)a.preventDefault()}, +$S:75} +A.a1S.prototype={ +q(a){var s=null,r=this.c.f +if(r!=null)return A.aCr(B.C,s,s,s,s,B.bC,B.hn,s,r,!1,!1,!1,s,B.ce,1,s) +else return new A.fV(new A.bdB(this),s)}} +A.bdB.prototype={ +$2(a,b){var s,r,q=b.a,p=b.b,o=A.Z(1/0,q,p),n=b.c,m=b.d +A.Z(1/0,n,m) +s=this.a.c +r=s.gwG() +A.Z(1/0,q,p) +return A.bNn(B.ca,new A.aZQ(s,null,null),null,o/r.a,A.Z(1/0,n,m)/s.gwG().b)}, +$S:1759} +A.aZQ.prototype={ +aR(a){var s=new A.ahU(null,A.aw(t.T)) +s.aQ() +s.sbq(null) +s.G=this.e +return s}, +b_(a,b){var s +t.Fh.a(b) +s=this.e +if(b.G!==s){b.G=s +b.ac=!1}}} +A.ahU.prototype={ +giD(){return!0}, +bJ(){var s=t.k.a(A.H.prototype.gZ.call(this)) +this.id=new A.V(A.Z(1/0,s.a,s.b),A.Z(1/0,s.c,s.d))}, +aV(){if(!this.ac)this.ahj()}, +aI(a,b){var s,r,q=this.G +if(q!=null){s=q.aJb() +if(s!=null){r=q.w +s.aI(a,b.W(0,new A.j(r.a,r.b)))}}this.ac=!0}} +A.uU.prototype={ +aJb(){var s,r=this +if(--r.b===0)r.d.tt() +if(r.b>=0){s=r.r +s.toString +return s}else return null}, +m(){var s=this.c +s.tt() +s.k3$=$.ae() +s.k2$=0 +s=this.f +if(s!=null)s.m() +this.e=!0}, +gwG(){var s,r,q,p,o=this.f +if(o!=null){s=o.b +s===$&&A.b() +s=s.a +s===$&&A.b() +s=B.e.au(s.a.width()) +r=$.Zu() +A.fT(o) +r=r.a +q=A.nG(r.get(o)) +if(q==null)q=1 +p=o.b +p===$&&A.b() +p=p.a +p===$&&A.b() +p=B.e.au(p.a.height()) +A.fT(o) +o=A.nG(r.get(o)) +if(o==null)o=1 +return new A.V(s/q,p/o)}else{o=this.w +return new A.V(o.c-o.a,o.d-o.b)}}, +k(a){var s=this.f!=null?"image":"renderObject" +return"WidgetSnapshot "+s+" "+A.lZ(this)+" (Debug Key: "+A.r(this.a)+")"}} +A.qM.prototype={} +A.Wu.prototype={ +J(){var s=t.A +return new A.aHS(new A.aR(null,s),new A.aR(null,s),A.N(t.K,t.sk),A.a([],t.Ix),B.f)}} +A.Wv.prototype={} +A.aHS.prototype={ +aEy(a,b){var s,r=this,q={} +q.a=b +if(b==null&&!$.cuO())q.a=r.a.c +s=r.x.i(0,a) +if(s!=null)++s.a +else r.C(new A.bPa(q,r,a))}, +PQ(a,b,c){return this.aJn(a,b,c)}, +aJn(a,b,c){var s=0,r=A.p(t.QH),q,p=this,o,n,m +var $async$PQ=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:m={} +p.aEy(b,c.$0()) +o=new A.ak($.at,t.rj) +p.y.push(new A.Y6(b,a,new A.aI(o,t.t9))) +p.ajv() +s=3 +return A.i(o,$async$PQ) +case 3:n=e +o=n!=null +if(o&&n.a.f!=null)p.I_(b) +else if(o){m.a=!1 +m=new A.bP8(m,p,b) +o=n.a +o.c.a3(0,m) +o.d.a3(0,m)}q=n +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$PQ,r)}, +I_(a){var s=this.x.i(0,a) +if(s!=null)if(--s.a===0)this.C(new A.bPb(this,a))}, +ajv(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=e.y +if(!!c.fixed$length)A.C(A.aq("removeWhere")) +B.b.kp(c,new A.bP1(e),!0) +s=c.length +if(s===0)return +if(e.c==null){for(r=t.rj,q=0;q0)){if(p.e!=null)p.C(new A.cin(p)) +s=1 +break}if(p.e==null||p.f==null){p.C(new A.cio(p,m)) +s=1 +break}k=m.ax +k.toString +j=p.f +j.toString +i=l+k-j +h=p.b1Z(i) +if(h.a===B.w.a){s=1 +break}if(!(p.c!=null&&n.length!==0)){s=1 +break}s=3 +return A.i(o.jv(i,B.H,h),$async$R9) +case 3:if(!(p.c!=null&&n.length!==0)){s=1 +break}n=m.z +n.toString +o.hV(n) +p.a.toString +case 1:return A.n(q,r)}}) +return A.o($async$R9,r)}, +a2w(){var s=0,r=A.p(t.H),q,p=this +var $async$a2w=A.l(function(a,b){if(a===1)return A.m(b,r) +while(true)switch(s){case 0:p.a.toString +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$a2w,r)}, +b1Z(a){this.a.toString +return A.cp(0,0,0,B.e.aF(a*1000/80),0,0)}, +bjw(a){var s,r,q=this +if(q.a.c!==a.c&&q.e!=null){q.C(new A.cip(q)) +s=q.d +r=B.b.gcW(s.f).z +r.toString +s.hV(r)}}, +b2C(a){var s,r +for(s="",r=0;rn)p=!0 +else p=!1 +if(p)o=0 +if(o>=1e4)throw A.d(A.dA("uuid.v1(): Can't create more than 10M uuids/sec")) +$.cNv=q +$.cNw=o +$.czy=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.ec(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=$.cNx +for(i=0;i<6;++i)s[10+i]=j[i] +return A.cNt(s)}} +A.aDn.prototype={ +sa7q(a){if(a.l(0,this.D))return +this.D=a}, +sOk(a){if(a===this.N)return +this.N=a +this.aV()}, +snH(a){return}, +shn(a,b){return}, +anu(){return}, +kw(a){return!0}, +gka(){return!0}, +gog(){return!0}, +cX(a){return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}, +aA(a){this.anu() +this.ea(a)}, +ar(a){this.e5(0)}, +m(){var s=this +s.aJ.sb9(0,null) +s.U.sb9(0,null) +s.aW.sb9(0,null) +s.ig()}, +aI(a,b){var s,r=this +if(r.ag<=0)return +s=r.aJ +s.sb9(0,a.zS(!0,b,r.aT,new A.bBL(r),s.a))}} +A.bBL.prototype={ +$2(a,b){var s=this.a,r=s.U +r.sb9(0,a.zR(b,B.d.aF(s.ag*255),new A.bBK(s),r.a))}, +$S:14} +A.bBK.prototype={ +$2(a,b){var s=this.a +s.aW.sb9(0,null) +a.gbY(a).yS(s.N.a)}, +$S:14} +A.qw.prototype={} +A.crH.prototype={ +$0(){var s,r=this,q={},p=r.a,o=p.gv(p),n=$.ar(),m=n.FY(),l=A.cIn(o,B.a5P,m,n.FX(m,null),r.b,r.c,r.d,r.e) +n=r.f +s=B.iF.btd(0,n,l) +q.a=s +if(s.a)return new A.dc(l.adF(),t.Bz) +return A.ma(l.at,!1,t.H).bf(new A.crI(q,n,l,p),t.YA)}, +$S:1765} +A.crI.prototype={ +$1(a){var s=this.c,r=this.a +r.a=B.iF.ayk(0,this.b,s,r.a) +return s.adF()}, +$S:1766} +A.c9s.prototype={} +A.aSX.prototype={} +A.bXo.prototype={} +A.biD.prototype={ +adF(){var s,r,q,p,o,n,m=this +m.cx=!0 +try{q=m.f.uh() +p=m.CW +return new A.qw(q,p)}finally{for(q=m.ax,p=q.gbm(0),o=A.z(p),o=o.h("@<1>").a1(o.y[1]),p=new A.c4(J.au(p.a),p.b,o.h("c4<1,2>")),o=o.y[1];p.t();){n=p.a +s=n==null?o.a(n):n +s.m()}q.V(0) +for(q=m.ay,p=q.gbm(0),o=A.z(p),o=o.h("@<1>").a1(o.y[1]),p=new A.c4(J.au(p.a),p.b,o.h("c4<1,2>")),o=o.y[1];p.t();){n=p.a +r=n==null?o.a(n):n +n=r.b +if(n!=null)n.m()}q.V(0)}}, +ach(a,b,c){return this.bC7(a,b,c)}, +bC7(a,b,c){var s=0,r=A.p(t.H),q=this,p,o,n +var $async$ach=A.l(function(d,e){if(d===1)return A.m(e,r) +while(true)switch(s){case 0:o=q.y[a] +n=q.x[b] +if(c!=null)n.skG(q.ay.i(0,c).b) +p=q.dy +if(p!=null){p=q.ay.i(0,p.a).a +p.ey(o,n)}else{p=n +q.r.ey(o,p)}return A.n(null,r)}}) +return A.o($async$ach,r)}, +aCG(a,b,c,d,e,f,g,h,i){var s=$.ar().aP() +s.sa6(0,new A.v(b)) +if(a!==0)s.sp6(B.aBA[a]) +if(e!=null)s.skG(this.z[e]) +if(d===1){s.sbN(0,B.a7) +if(f!=null&&f!==0)s.str(B.aKQ[f]) +if(g!=null&&g!==0)s.sQE(B.aON[g]) +if(h!=null&&h!==4)s.sagg(h) +if(i!=null&&i!==0)s.se4(i)}this.x.push(s)}, +bCp(a,b,c,d,e,f,g,h){var s,r,q=A.a([],t.t_) +for(s=e.length,r=0;r>>0)) +this.z.push(A.auY(new A.j(a,b),new A.j(c,d),q,f,B.F8[g],null))}, +bCz(a,b,c,d,e,f,g,h,i,j){var s,r,q,p,o,n=new A.j(a,b) +if(d==null)s=null +else{e.toString +s=new A.j(d,e)}r=A.a([],t.t_) +for(q=f.length,p=0;p>>0)) +o=!J.q(s,n)&&s!=null +q=B.F8[i] +this.z.push(A.d7C(n,c,r,g,q,h,o?s:null))}, +aci(a,b,c,d){return this.bC8(a,b,c,d)}, +bC8(a,b,c,d){var s=0,r=A.p(t.H),q=this,p,o,n,m,l +var $async$aci=A.l(function(e,f){if(e===1)return A.m(f,r) +while(true)switch(s){case 0:n={} +m=q.Q[a] +l=q.cy +if(l==null)l=0 +p=q.db +n.a=0 +o=new A.biE(n,q,d,m,l,p) +if(b!=null)o.$1(b) +if(c!=null)o.$1(c) +q.cy=l+n.a +return A.n(null,r)}}) +return A.o($async$aci,r)}, +bCk(a,b,c){var s,r,q=new A.ak($.at,t.W),p=new A.aI(q,t.gR) +this.at.push(q) +q=$.jo.eG$ +q===$&&A.b() +s=q.cP(0,A.ad(this.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),new A.biG(c)) +if(s==null){p.jh("Failed to load image") +return}r=A.aF("listener") +r.b=new A.kh(new A.biH(this,s,r,a,p),null,new A.biI(p,s,r,null)) +s.a3(0,r.aX())}} +A.biE.prototype={ +$1(a){var s,r,q,p,o=this,n=null,m=o.b,l=m.x[a],k=o.c +if(k!=null)l.skG(m.ay.i(0,k).b) +k=A.bwC(n,n,n,n,n,n,n,n,n,n,m.d,n) +s=$.ar().Mb(k) +k=o.d +s.CX(A.czl(n,n,k.f,k.w,k.r,n,k.b,n,n,k.c,n,n,k.e,l,n,n,n,m.c,n,n,n)) +s.Fk(k.a) +r=s.dN() +r.j1(B.ST) +o.a.a=r.gwy() +if(m.dx!=null){q=m.r +q.d6(0) +p=m.dx +p.toString +q.ah(0,p)}q=m.r +q.w8(r,new A.j(o.e-r.gwy()*k.d,o.f-r.gFn(r))) +r.m() +if(m.dx!=null)q.de(0)}, +$S:12} +A.biG.prototype={ +$0(){return A.daH(A.DE(this.a).bf(new A.biF(),t.OX))}, +$S:1767} +A.biF.prototype={ +$1(a){return this.aHs(a)}, +aHs(a){var s=0,r=A.p(t.OX),q,p=2,o,n=[],m,l,k,j +var $async$$1=A.l(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=3 +s=6 +return A.i(A.cxo(a),$async$$1) +case 6:m=c +s=7 +return A.i(m.abg(),$async$$1) +case 7:l=c +s=8 +return A.i(l.nY(),$async$$1) +case 8:k=c +j=J.b2U(k) +m.a=null +l.m() +q=new A.kX(j,1,null) +n=[1] +s=4 +break +n.push(5) +s=4 +break +case 3:n=[2] +case 4:p=2 +a.a=null +s=n.pop() +break +case 5:case 1:return A.n(q,r) +case 2:return A.m(o,r)}}) +return A.o($async$$1,r)}, +$S:1768} +A.biH.prototype={ +$2(a,b){var s=this +s.b.O(0,s.c.aX()) +s.a.ax.n(0,s.d,a.a) +s.e.fw(0)}, +$S:112} +A.biI.prototype={ +$2(a,b){var s=this.a +if((s.a.a&30)===0)s.fw(0) +this.b.O(0,this.c.aX()) +A.fs(new A.dl(a,b,"image resource service",A.cJ("Failed to load image"),null,!0))}, +$S:108} +A.aY5.prototype={} +A.aY2.prototype={} +A.aHq.prototype={ +k(a){return"VectorGraphicsDecodeException: Failed to decode vector graphic from "+this.a.k(0)+".\n\nAdditional error: "+A.r(this.b)}, +$ibP:1} +A.y9.prototype={} +A.a7D.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.a7D&&b.a.l(0,this.a)&&b.b===this.b&&b.c===this.c}, +gv(a){return A.ad(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.aCp.prototype={} +A.aDl.prototype={ +sa7q(a){if(a.l(0,this.D))return +this.D=a}, +sOk(a){if(a===this.N)return +this.N=a +this.aV()}, +snH(a){return}, +sqi(a,b){if(b===this.ag)return +this.ag=b +this.aV()}, +shn(a,b){return}, +KN(){return}, +skE(a,b){if(b===this.U)return +this.U=b +this.aV()}, +kw(a){return!0}, +gka(){return!0}, +cX(a){return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}, +a4t(a){var s +if(a==null)return +if(--a.c===0&&$.aDm.aB(0,a.b)){$.aDm.F(0,a.b) +s=a.a +if(s!=null)s.m() +a.a=null}}, +b9Q(){var s,r,q,p,o=this,n=o.N.b,m=o.ag,l=o.U,k=B.e.aF(n.a*m/l),j=B.e.aF(n.b*m/l),i=new A.a7D(o.D,k,j) +if($.aDm.aB(0,i)){n=$.aDm.i(0,i) +n.toString +m=o.aW +if(n!==m){o.a4t(m);++n.c}o.aW=n +return}n=o.ag +m=o.U +l=o.N +s=$.ar() +r=s.FY() +q=s.FX(r,null) +q.bK(0,n/m) +q.yS(l.a) +p=new A.aCp(r.uh().uZ(k,j),i,0) +p.c=1 +$.aDm.n(0,i,p) +o.a4t(o.aW) +o.aW=p}, +aA(a){this.KN() +this.ea(a)}, +ar(a){this.e5(0)}, +m(){this.a4t(this.aW) +this.ig()}, +aI(a,b){var s,r,q,p,o,n,m=this +if(m.aq<=0)return +m.b9Q() +s=m.aW +r=s.a +r.toString +s=s.b +q=$.ar().aP() +q.sot(B.bC) +q.sa6(0,A.b9L(0,0,0,m.aq)) +p=b.a +o=b.b +n=m.N.b +a.gbY(a).pj(r,new A.W(0,0,s.b,s.c),new A.W(p,o,p+n.a,o+n.b),q)}} +A.aD_.prototype={ +sOk(a){if(a===this.D)return +this.D=a +this.aV()}, +snH(a){return}, +shn(a,b){return}, +KN(){return}, +kw(a){return!0}, +gka(){return!0}, +cX(a){return new A.V(A.Z(0,a.a,a.b),A.Z(0,a.c,a.d))}, +aA(a){this.KN() +this.ea(a)}, +ar(a){this.e5(0)}, +m(){this.ig()}, +aI(a,b){var s,r,q,p,o=this +if(o.a4<=0)return +s=$.ar().aP() +s.sa6(0,A.b9L(0,0,0,o.a4)) +r=a.gbY(a).af_() +if(!b.l(0,B.h)){a.gbY(a).d6(0) +a.gbY(a).ba(0,b.a,b.b)}if(o.a4!==1||!1){a.gbY(a).d6(0) +q=a.gbY(a) +p=o.gu(0) +q.qd(new A.W(0,0,0+p.a,0+p.b)) +p=a.gbY(a) +q=o.gu(0) +p.kD(new A.W(0,0,0+q.a,0+q.b),s)}a.gbY(a).yS(o.D.a) +a.gbY(a).Zt(r)}} +A.aDo.prototype={ +H(){return"RenderingStrategy."+this.b}} +A.abQ.prototype={ +J(){return new A.aZv(B.f)}} +A.Bc.prototype={} +A.Y7.prototype={ +gv(a){var s=this +return A.ad(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)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.Y7&&b.a.l(0,s.a)&&J.q(b.b,s.b)&&b.c==s.c&&b.d===s.d}} +A.aZv.prototype={ +c5(){var s=this,r=s.c +r.toString +s.r=A.E3(r) +r=s.c +r.toString +s.w=A.fq(r) +s.aom() +s.dH()}, +b1(a){if(!a.c.l(0,this.a.c))this.aom() +this.bc(a)}, +m(){var s=this +s.SK(s.d) +s.d=null +s.ap()}, +SK(a){if(a==null)return +if(--a.c===0&&$.cmG.aB(0,a.b)){$.cmG.F(0,a.b) +a.a.a.m()}}, +b8X(a,b,c){var s,r +if($.cmO.aB(0,b)){s=$.cmO.i(0,b) +s.toString +return s}r=c.bAd(a).bf(new A.cmL(this,b,c),t.YA).bf(new A.cmM(b),t.Wa) +$.cmO.n(0,b,r) +r.j6(new A.cmN(b)) +return r}, +blm(a,b){this.C(new A.cmF(this,a,b))}, +aom(){var s,r,q,p=this,o=p.a.c,n=p.c +n.toString +s=new A.Y7(o.a7X(n),p.r,p.w,p.a.ch) +r=$.cmG.i(0,s) +if(r!=null){++r.c +p.C(new A.cmI(p,r)) +return}q=p.a.c +o=p.c +o.toString +p.b8X(o,s,q).bf(new A.cmJ(p,q,s),t.P)}, +q(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.d,g=h==null?i:h.a +if(g!=null){h=j.a +s=h.d +r=h.e +h=s==null +if(h&&r==null){h=g.b +s=h.a +r=h.b}else if(r!=null&&!g.b.gad(0)){h=g.b +s=r/h.b*h.a}else if(!h&&!g.b.gad(0)){h=g.b +r=s/h.a*h.b}h=g.b +s.toString +r.toString +q=Math.min(h.a/s,h.b/r) +if($.cZc()){p=j.d.b +o=j.a +n=new A.aUc(g,o.at,o.ax,p,i,i) +p=o}else{p=j.a +o=p.ay +m=j.d +l=p.at +k=p.ax +if(o===B.bk5)n=new A.aUa(g,l,q,k,m.b,i,i) +else{m.toString +n=new A.aU9(g,l,k,i,i)}}n=new A.ba(s,r,A.cIe(p.r,A.Mi(n,h),p.z,p.f),i)}else{h=j.a.Q +n=h.$1(a) +if(n==null){h=j.a +n=new A.ba(h.d,h.e,i,i)}}h=j.a +if(!h.y){h=h.x +p=h==null +if(p)h="" +n=new A.bX(A.ci(i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,!0,i,i,i,h,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),!p,!1,!1,!1,n,i)}return n}} +A.cmL.prototype={ +$1(a){var s=this.b +return A.drs(a,s.d,this.c,s.b,new A.cmK(this.a),s.c)}, +$S:1769} +A.cmK.prototype={ +$2(a,b){return this.a.blm(a,b)}, +$S:108} +A.cmM.prototype={ +$1(a){return new A.Bc(a,this.a,0)}, +$S:1770} +A.cmN.prototype={ +$0(){$.cmO.F(0,this.a)}, +$S:13} +A.cmF.prototype={ +$0(){var s=this.a +s.e=this.b +s.f=this.c}, +$S:0} +A.cmI.prototype={ +$0(){var s=this.a +s.SK(s.d) +s.d=this.b}, +$S:0} +A.cmJ.prototype={ +$1(a){var s;++a.c +s=this.a +if(s.c==null||!this.b.l(0,s.a.c)){s.SK(a) +return}if(a.c===1)$.cmG.n(0,this.c,a) +s.C(new A.cmH(s,a))}, +$S:1771} +A.cmH.prototype={ +$0(){var s=this.a +s.SK(s.d) +s.d=this.b}, +$S:0} +A.aUa.prototype={ +aR(a){var s=this,r=A.cG(a,null) +r=r==null?null:r.b +if(r==null)r=1 +r=new A.aDl(s.x,s.e,s.f,r,s.w,s.r,A.aw(t.T)) +r.aQ() +r.KN() +return r}, +b_(a,b){var s,r=this +b.sOk(r.e) +b.sa7q(r.x) +b.snH(r.f) +s=A.cG(a,null) +s=s==null?null:s.b +b.sqi(0,s==null?1:s) +b.shn(0,r.w) +b.skE(0,r.r)}} +A.aUc.prototype={ +aR(a){var s=this,r=A.aw(t.bq),q=A.aw(t.o0),p=A.aw(t.Zn),o=new A.c5(new Float64Array(16)) +o.fO() +o=new A.aDn(s.w,s.e,s.f,s.r,r,q,p,o,A.aw(t.T)) +o.aQ() +o.anu() +return o}, +b_(a,b){var s=this +b.sOk(s.e) +b.sa7q(s.w) +b.snH(s.f) +b.shn(0,s.r)}} +A.aU9.prototype={ +aR(a){var s=new A.aD_(this.e,this.f,this.r,A.aw(t.T)) +s.aQ() +s.KN() +return s}, +b_(a,b){b.sOk(this.e) +b.snH(this.f) +b.shn(0,this.r)}} +A.asg.prototype={} +A.bOb.prototype={ +ayk(d6,d7,d8,d9){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=null,d5="The provided data was not a vector_graphics binary asset." +if(d9==null){s=new A.cbs(d7) +if(d7.byteLength<5)throw A.d(A.a0(d5)) +if(s.a_S(0)!==8924514)throw A.d(A.a0(d5)) +if(s.tg(0)!==1)throw A.d(A.a0("The provided data does not match the currently supported version."))}else{r=d9.b +r.toString +s=r}$label0$1:for(r=s.a,q=d8.as,p=d8.ay,o=d8.r,n=d8.ax,m=d8.Q,l=t.J9,k=d8.y,j=d8.e,i=d8.x,h=!1;g=s.b,g0){b2=r.buffer +b3=r.byteOffset +c1=new Uint8Array(b2,b3+g,b) +s.b+=b +c2=new A.iu(!1).jP(c1,0,d4,!0)}else c2=d4 +b=r.getUint16(s.b,!0) +g=s.b+=2 +b2=r.buffer +b3=r.byteOffset +c1=new Uint8Array(b2,b3+g,b) +s.b+=b +c3=new A.iu(!1).jP(c1,0,d4,!0) +c4=A.a([],l) +if((b9&1)!==0)c4.push(B.qh) +if((b9&2)!==0)c4.push(B.Z_) +if((b9&4)!==0)c4.push(B.Z0) +m.push(new A.aY2(c3,c2,d,e,B.vw[b8],A.cMI(c4),B.aPO[c0],new A.v(c))) +continue $label0$1 +case 44:e=r.getUint16(s.b,!0) +g=s.b+=2 +d=r.getUint16(g,!0) +g=s.b+=2 +c5=d===65535?d4:d +d=r.getUint16(g,!0) +g=s.b+=2 +c6=d===65535?d4:d +d=r.getUint16(g,!0) +s.b+=2 +d8.aci(e,c5,c6,d===65535?d4:d) +continue $label0$1 +case 46:e=r.getUint16(s.b,!0) +g=s.b+=2 +s.b=g+1 +c7=r.getUint8(g) +d=r.getUint32(s.b,!0) +g=s.b+=4 +b2=r.buffer +b3=r.byteOffset +c1=new Uint8Array(b2,b3+g,d) +s.b+=d +d8.bCk(e,c7,c1) +h=!0 +continue $label0$1 +case 47:e=r.getUint16(s.b,!0) +g=s.b+=2 +d=r.getFloat32(g,!0) +g=s.b+=4 +c=r.getFloat32(g,!0) +g=s.b+=4 +b=r.getFloat32(g,!0) +g=s.b+=4 +a=r.getFloat32(g,!0) +s.b+=4 +c8=s.PS() +g=n.i(0,e) +g.toString +b2=c8!=null +if(b2){o.d6(0) +o.ah(0,c8)}o.pj(g,new A.W(0,0,g.geP(g),g.gdK(g)),new A.W(d,c,d+b,c+a),$.ar().aP()) +if(b2)o.de(0) +continue $label0$1 +case 49:e=r.getUint16(s.b,!0) +g=s.b+=2 +d=r.getFloat32(g,!0) +g=s.b+=4 +c=r.getFloat32(g,!0) +g=s.b+=4 +b=r.getFloat32(g,!0) +g=s.b+=4 +a=r.getFloat32(g,!0) +s.b+=4 +c9=s.PS() +c9.toString +d8.dy=new A.c9s(e,b,a,c9) +g=$.ar() +d0=g.FY() +d1=g.FX(d0,d4) +d1.qd(new A.W(d,c,d+b,c+a)) +g=new A.aSX() +g.c=d0 +g.a=d1 +p.n(0,e,g) +continue $label0$1 +case 50:r.getUint16(s.b,!0) +g=s.b+=2 +e=r.getFloat32(g,!0) +g=s.b+=4 +d=r.getFloat32(g,!0) +g=s.b+=4 +c=r.getFloat32(g,!0) +g=s.b+=4 +b=r.getFloat32(g,!0) +g=s.b+=4 +s.b=g+1 +d2=r.getUint8(g)!==0||!1 +c9=s.PS() +g=isNaN(e)?d4:e +b2=isNaN(d)?d4:d +b3=isNaN(c)?d4:c +q.push(new A.aY5(g,b2,b3,isNaN(b)?d4:b,d2,c9)) +continue $label0$1 +case 51:e=r.getUint16(s.b,!0) +s.b+=2 +d3=q[e] +if(d3.e)d8.db=d8.cy=0 +g=d3.a +if(g!=null)d8.cy=g +g=d3.b +if(g!=null)d8.db=g +g=d3.c +if(g!=null){b2=d8.cy +d8.cy=(b2==null?0:b2)+g}g=d3.d +if(g!=null)d8.db+=g +d8.dx=d3.f +continue $label0$1 +default:throw A.d(A.a0("Unknown type tag "+f))}}return B.ah2}, +btd(a,b,c){return this.ayk(0,b,c,null)}, +aGY(a,b,c,d){a.lt(B.eR) +a.vn() +a.a.push(30) +a.vE(b) +a.vE(c) +a.vE(d==null?65535:d)}, +aZL(a){var s,r=a.length,q=new Float32Array(r),p=new DataView(new ArrayBuffer(8)) +for(s=0;sa.a){s=a.b +throw A.d(A.a0(B.c.aFy(s[0])+B.c.b0(s,1)+" must be encoded together (current phase is "+this.as.b+")."))}this.as=a}, +blK(a){var s,r=this.a +if(a!=null){s=a.length +r.push(s) +this.yb(8) +B.b.L(this.a,A.dF(a.buffer,a.byteOffset,8*s))}else r.push(0)}, +vE(a){var s,r +this.c.setUint16(0,a,!0) +s=this.a +r=this.d +r===$&&A.b() +B.b.L(s,A.fB(r,0,A.hz(2,"count",t.S),A.bk(r).h("a2.E")))}, +beM(a){var s,r +this.c.setUint32(0,a,!0) +s=this.a +r=this.d +r===$&&A.b() +B.b.L(s,A.fB(r,0,A.hz(4,"count",t.S),A.bk(r).h("a2.E")))}, +aqk(a){this.yb(4) +B.b.L(this.a,A.dF(a.buffer,a.byteOffset,4*a.length))}, +re(a){var s,r +this.c.setFloat32(0,a,!0) +s=this.a +r=this.d +r===$&&A.b() +B.b.L(s,A.fB(r,0,A.hz(4,"count",t.S),A.bk(r).h("a2.E")))}, +aqj(a){this.yb(4) +B.b.L(this.a,A.dF(a.buffer,a.byteOffset,4*a.length))}, +yb(a){var s,r=this.a,q=B.d.M(r.length,a) +if(q!==0){s=$.OB() +B.b.L(r,A.fB(s,0,A.hz(a-q,"count",t.S),A.bk(s).h("a2.E")))}}} +A.cbs.prototype={ +tg(a){return this.a.getUint8(this.b++)}, +aJr(a){var s=this.a.getUint16(this.b,!0) +this.b+=2 +return s}, +a_S(a){var s=this.a.getUint32(this.b,!0) +this.b+=4 +return s}, +xd(a){var s=this.a,r=A.dF(s.buffer,s.byteOffset+this.b,a) +this.b+=a +return r}, +af7(a){var s,r,q=this +q.yb(2) +s=q.a +r=A.dap(s.buffer,s.byteOffset+q.b,a) +q.b=q.b+2*a +return r}, +aeJ(a){var s,r,q=this +q.yb(4) +s=q.a +r=A.cy7(s.buffer,s.byteOffset+q.b,a) +q.b=q.b+4*a +return r}, +PD(a){var s,r,q=this +q.yb(4) +s=q.a +r=A.cKe(s.buffer,s.byteOffset+q.b,a) +q.b=q.b+4*a +return r}, +yb(a){var s=this.b,r=B.d.M(s,a) +if(r!==0)this.b=s+(a-r)}, +PS(){var s,r,q=this,p=q.tg(0) +if(p>0){q.yb(8) +s=q.a +r=A.cy6(s.buffer,s.byteOffset+q.b,p) +q.b=q.b+8*p +return r}return null}} +A.bed.prototype={ +b2o(a,b){return b.cP(0,a,new A.bee(b))}, +ra(a,b){return this.b2o(a,b,t.z)}, +av6(a){var s=null +this.r.push(new A.q5(s,B.ahr,s,this.ra(a,this.a),s,s))}, +bme(a,b,c,d,e){var s,r,q,p=this +if(b.a.length===0)return +s=p.ra(b,p.b) +r=p.ra(c,p.a) +q=e!=null?p.w.i(0,e):null +p.r.push(new A.q5(d,B.ahq,s,r,q,null))}} +A.bee.prototype={ +$0(){return this.a.a}, +$S:90} +A.eo.prototype={ +gv(a){return A.ad(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 +return b instanceof A.eo&&b.a===this.a&&b.b===this.b}, +X(a,b){return new A.eo(this.a*b,this.b*b)}, +S(a,b){return new A.eo(this.a+b.a,this.b+b.b)}, +k(a){return"Point("+A.r(this.a)+", "+A.r(this.b)+")"}} +A.pp.prototype={ +gv(a){var s=this +return A.ad(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)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.pp&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +k(a){var s=this +return"Rect.fromLTRB("+A.r(s.a)+", "+A.r(s.b)+", "+A.r(s.c)+", "+A.r(s.d)+")"}} +A.avN.prototype={} +A.at1.prototype={} +A.tt.prototype={ +aJF(a){var s,r,q,p,o=this +if(a!=null)s=o.a===1&&o.d===1 +else s=!0 +if(s)return a +s=o.a +r=o.c +q=o.b +p=o.d +return(Math.sqrt(s*s+r*r)+Math.sqrt(q*q+p*p))/2*a}, +bGu(a){var s,r,q,p,o,n,m,l=this +if(a===0)return l +s=Math.cos(a) +r=Math.sin(a) +q=l.a +p=l.c +o=l.b +n=l.d +m=-r +return A.xQ(q*s+p*r,o*s+n*r,q*m+p*s,o*m+n*s,l.e,l.f,l.r)}, +gaz0(){var s=this,r=s.a +return r>0&&s.b===0&&s.c===0&&s.d>0&&s.r===r}, +afi(a,b){var s=this +if(a===1&&b===1)return s +return A.xQ(s.a*a,s.b*a,s.c*b,s.d*b,s.e,s.f,s.r*a)}, +P3(a,b){var s=this,r=s.a,q=s.b,p=s.c,o=s.d +return A.xQ(r,q,p,o,r*a+p*b+s.e,q*a+o*b+s.f,s.r)}, +ky(a){var s=this,r=s.a,q=a.a,p=s.c,o=a.b,n=s.b,m=s.d,l=a.c,k=a.d,j=a.e,i=a.f +return A.xQ(r*q+p*o,n*q+m*o,r*l+p*k,n*l+m*k,r*j+p*i+s.e,n*j+m*i+s.f,s.r*a.r)}, +wZ(a,b){var s=this,r=b.a,q=b.b +return new A.eo(s.a*r+s.c*q+s.e,s.b*r+s.d*q+s.f)}, +Dc(){var s=this +return new Float64Array(A.f1(A.a([s.a,s.b,0,0,s.c,s.d,0,0,0,0,s.r,0,s.e,s.f,0,1],t.n)))}, +gv(a){var s=this +return A.ad(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,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.tt&&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}, +k(a){var s=this +return"[ "+A.r(s.a)+", "+A.r(s.c)+", "+A.r(s.e)+" ]\n[ "+A.r(s.b)+", "+A.r(s.d)+", "+A.r(s.f)+" ]\n[ 0.0, 0.0, 1.0 ] // _m4_10 = "+A.r(s.r)+"\n"}} +A.aBc.prototype={ +H(){return"PathFillType."+this.b}} +A.Tp.prototype={ +H(){return"PathCommandType."+this.b}} +A.EC.prototype={} +A.lB.prototype={ +e_(a){var s=a.wZ(0,new A.eo(this.b,this.c)) +return new A.lB(s.a,s.b,B.dx)}, +gv(a){return A.ad(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){if(b==null)return!1 +return b instanceof A.lB&&b.b===this.b&&b.c===this.c}, +k(a){return"LineToCommand("+A.r(this.b)+", "+A.r(this.c)+")"}} +A.qo.prototype={ +e_(a){var s=a.wZ(0,new A.eo(this.b,this.c)) +return new A.qo(s.a,s.b,B.h2)}, +gv(a){return A.ad(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){if(b==null)return!1 +return b instanceof A.qo&&b.b===this.b&&b.c===this.c}, +k(a){return"MoveToCommand("+A.r(this.b)+", "+A.r(this.c)+")"}} +A.kO.prototype={ +axc(a){var s=this +return new A.bb5().$5(a,new A.eo(s.b,s.c),new A.eo(s.d,s.e),new A.eo(s.f,s.r),0)}, +e_(a){var s=this,r=a.wZ(0,new A.eo(s.b,s.c)),q=a.wZ(0,new A.eo(s.d,s.e)),p=a.wZ(0,new A.eo(s.f,s.r)) +return new A.kO(r.a,r.b,q.a,q.b,p.a,p.b,B.d9)}, +gv(a){var s=this +return A.ad(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,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.kO&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e&&b.f===s.f&&b.r===s.r}, +k(a){var s=this +return"CubicToCommand("+A.r(s.b)+", "+A.r(s.c)+", "+A.r(s.d)+", "+A.r(s.e)+", "+A.r(s.f)+", "+A.r(s.r)+")"}} +A.bb5.prototype={ +$5(a,b,c,d,e){var s +if(A.aBK(b,A.L5(a,d,0.3333333333333333))>1.5||A.aBK(c,A.L5(a,d,0.6666666666666666))>1.5){s=A.cGe(a,b,c,d,0.5) +e=this.$5(s[0],s[1],s[2],s[3],e) +e=this.$5(s[3],s[4],s[5],s[6],e)}else e+=A.aBK(a,d) +return e}, +$S:1772} +A.a0M.prototype={ +e_(a){return this}, +gv(a){return A.ef(this.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.a0M}, +k(a){return"CloseCommand()"}} +A.qv.prototype={ +q5(a){var s,r,q,p,o,n,m,l=a.a,k=(a.c-l)*0.5,j=a.b,i=(a.d-j)*0.5 +l+=k +j+=i +s=0.551915024494*k +r=0.551915024494*i +q=j-i +p=this.a +p.push(new A.qo(l,q,B.h2)) +o=l+s +n=l+k +m=j-r +p.push(new A.kO(o,q,n,m,n,j,B.d9)) +r=j+r +i=j+i +p.push(new A.kO(n,r,o,i,l,i,B.d9)) +s=l-s +k=l-k +p.push(new A.kO(s,i,k,r,k,j,B.d9)) +p.push(new A.kO(k,m,s,q,l,q,B.d9)) +p.push(B.mI) +return this}, +jd(a){var s,r=a.a,q=a.b,p=this.a +p.push(new A.qo(r,q,B.h2)) +s=a.c +p.push(new A.lB(s,q,B.dx)) +q=a.d +p.push(new A.lB(s,q,B.dx)) +p.push(new A.lB(r,q,B.dx)) +p.push(B.mI) +return this}, +bmg(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f +if(b===0&&c===0)return this.jd(a) +s=new A.eo(b,c).X(0,0.551915024494) +r=a.a +q=r+b +p=a.b +o=this.a +o.push(new A.qo(q,p,B.h2)) +n=r+(a.c-r) +m=n-b +o.push(new A.lB(m,p,B.dx)) +l=s.a +k=m+l +j=p+c +i=s.b +h=j-i +o.push(new A.kO(k,p,n,h,n,j,B.d9)) +g=p+(a.d-p) +f=g-c +o.push(new A.lB(n,f,B.dx)) +i=f+i +o.push(new A.kO(n,i,k,g,m,g,B.d9)) +o.push(new A.lB(q,g,B.dx)) +l=q-l +o.push(new A.kO(l,g,r,i,r,f,B.d9)) +o.push(new A.lB(r,j,B.dx)) +o.push(new A.kO(r,h,l,p,q,p,B.d9)) +o.push(B.mI) +return this}, +aFu(a){var s,r=this.a,q=this.b +q===$&&A.b() +s=A.aBa(r,q) +if(a)B.b.V(r) +return s}, +Dd(){return this.aFu(!0)}} +A.mn.prototype={ +bIe(a){if(a===this.b)return this +return A.aBa(this.a,a)}, +e_(a){var s,r,q,p=A.a([],t.H9) +for(s=this.a,r=s.length,q=0;q"+A.r(r)+","):"Path(" +s=this.b +r=(s!==B.em?r+("\n fillType: "+s.k(0)+","):r)+"\n)" +return r.charCodeAt(0)==0?r:r}} +A.bUg.prototype={ +gmo(a){var s=this,r=s.b,q=s.a +if(r>=q.length)r=s.b=0 +s.b=r+1 +return q[r]}} +A.c9r.prototype={ +gA(a){var s=this.b +s===$&&A.b() +return s}, +aks(a){var s,r,q,p,o,n,m,l,k=this,j=A.aBK(k.c,a) +if(!(j<=0)){s=k.b +s===$&&A.b() +s=s<=0}else s=!0 +if(s)return +s=k.f +r=a.a +q=a.b +p=k.a +while(!0){o=k.b +o===$&&A.b() +if(!(j>=o))break +n=o/j +o=k.c +m=1-n +k.c=new A.eo(m*o.a+n*r,m*o.b+n*q) +k.b=p.gmo(0) +o=k.e +o===$&&A.b() +m=k.c +l=m.a +m=m.b +if(o)s.push(new A.lB(l,m,B.dx)) +else s.push(new A.qo(l,m,B.h2)) +j=A.aBK(k.c,a) +k.e=!k.e}if(j>0){k.b=o-j +p=k.e +p===$&&A.b() +if(p)s.push(new A.lB(r,q,B.dx))}k.c=a}, +aZC(a){var s,r,q,p,o,n=this,m=null,l=a.axc(n.c),k=n.a,j=n.f +while(!0){s=n.b +s===$&&A.b() +if(!(l>=s))break +r=A.cGe(n.c,new A.eo(a.b,a.c),new A.eo(a.d,a.e),new A.eo(a.f,a.r),s/l) +s=n.c=r[3] +q=n.e +q===$&&A.b() +if(q){s=A.X(r) +q=new A.b3(r,1,m,s.h("b3<1>")) +q.dD(r,1,m,s.c) +p=q.nl(0,3).eO(0) +q=p[0] +s=p[1] +o=p[2] +j.push(new A.kO(q.a,q.b,s.a,s.b,o.a,o.b,B.d9))}else j.push(new A.qo(s.a,s.b,B.h2)) +s=A.X(r) +q=new A.b3(r,4,m,s.h("b3<1>")) +q.dD(r,4,m,s.c) +p=q.nl(0,3).eO(0) +q=p[0] +s=p[1] +o=p[2] +a=new A.kO(q.a,q.b,s.a,s.b,o.a,o.b,B.d9) +n.b=k.gmo(0) +l=a.axc(n.c) +n.e=!n.e}n.b=s-l +n.c=new A.eo(a.f,a.r) +k=n.e +k===$&&A.b() +if(k)j.push(a)}, +bt2(a){var s,r,q,p,o,n,m,l,k=this +k.b=k.a.gmo(0) +k.e=!0 +for(s=a.a,r=s.length,q=t.ZC,p=t.JO,o=t.wd,n=k.f,m=0;m"+p+", offsets: "+o+", tileMode: "+n+", "+m+"unitMode: "+A.r(s.e)+")"}} +A.a3L.prototype={ +H(){return"GradientUnitMode."+this.b}} +A.ER.prototype={ +a7j(a,b){var s,r,q=this,p=q.f +if(p==null)p=B.cx +s=q.e +switch((s==null?B.uu:s).a){case 0:s=a.a +r=a.b +p=b.P3(s,r).afi(a.c-s,a.d-r).ky(p) +break +case 1:p=b.ky(p) +break +case 2:break}s=q.d +if(s==null)s=B.y0 +return new A.ER(q.r,q.w,q.x,q.a,q.b,q.c,s,B.DB,p)}, +a7n(a){var s,r,q,p,o=this,n=o.b +if(n==null)n=a.b +s=o.c +if(s==null)s=a.c +r=o.f +if(r==null)r=a.f +q=o.e +if(q==null)q=a.e +p=o.d +if(p==null)p=a.d +return new A.ER(o.r,o.w,o.x,o.a,n,s,p,q,r)}, +gv(a){var s,r=this,q=r.b +q=A.cs(q==null?A.a([],t.Ai):q) +s=r.c +return A.ad(r.a,r.r,r.w,q,A.cs(s==null?A.a([],t.n):s),r.d,r.f,r.x,r.e,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.ER&&b.a===s.a&&b.r.l(0,s.r)&&b.w===s.w&&J.q(b.x,s.x)&&A.r4(b.b,s.b)&&A.r4(b.c,s.c)&&J.q(b.f,s.f)&&b.d==s.d&&b.e==s.e}, +k(a){var s=this,r=s.r.k(0),q=A.r(s.b),p=A.r(s.c),o=A.r(s.d),n=s.f +n=n==null?"":"transform: Float64List.fromList("+A.r(n.Dc())+") ," +return"RadialGradient(id: '"+s.a+"', center: "+r+", radius: "+A.r(s.w)+", colors: "+q+", offsets: "+p+", tileMode: "+o+", "+n+"focalPoint: "+A.r(s.x)+", unitMode: "+A.r(s.e)+")"}} +A.wu.prototype={ +gv(a){return A.ad(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){if(b==null)return!1 +return b instanceof A.wu&&b.a===this.a&&J.q(b.b,this.b)&&J.q(b.c,this.c)}, +k(a){var s="Paint(blendMode: "+this.a.k(0),r=this.b +if(r!=null)s+=", stroke: "+r.k(0) +r=this.c +s=(r!=null?s+(", fill: "+r.k(0)):s)+")" +return s.charCodeAt(0)==0?s:s}} +A.aaj.prototype={ +gv(a){var s=this +return A.ad(B.bfC,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)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(b instanceof A.aaj){s=b.a +s=r.a.a===s.a&&J.q(b.b,r.b)&&b.c==r.c&&b.d==r.d&&b.e==r.e&&b.f==r.f}else s=!1 +return s}, +k(a){var s=this,r="Stroke(color: "+s.a.k(0),q=s.b +if(q!=null)r+=", shader: "+q.k(0) +q=s.c +if(q!=null)r+=", cap: "+q.k(0) +q=s.d +if(q!=null)r+=", join: "+q.k(0) +q=s.e +if(q!=null)r+=", miterLimit: "+A.r(q) +q=s.f +r=(q!=null?r+(", width: "+A.r(q)):r)+")" +return r.charCodeAt(0)==0?r:r}} +A.IU.prototype={ +gv(a){return A.ad(B.bfB,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)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.IU){s=b.a +s=this.a.a===s.a&&J.q(b.b,this.b)}else s=!1 +return s}, +k(a){var s="Fill(color: "+this.a.k(0),r=this.b +s=(r!=null?s+(", shader: "+r.k(0)):s)+")" +return s.charCodeAt(0)==0?s:s}} +A.kF.prototype={ +H(){return"BlendMode."+this.b}} +A.aB0.prototype={ +H(){return"PaintingStyle."+this.b}} +A.aak.prototype={ +H(){return"StrokeCap."+this.b}} +A.aal.prototype={ +H(){return"StrokeJoin."+this.b}} +A.aba.prototype={ +H(){return"TileMode."+this.b}} +A.aaZ.prototype={ +gv(a){var s=this +return A.ad(s.a,s.c,s.b,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,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.aaZ&&b.a==s.a&&b.c==s.c&&b.b==s.b&&b.d==s.d&&b.e===s.e&&J.q(b.f,s.f)}, +k(a){var s=this,r=""+("TextPosition(reset: "+s.e),q=s.a +if(q!=null)r+=", x: "+A.r(q) +q=s.c +if(q!=null)r+=", y: "+A.r(q) +q=s.b +if(q!=null)r+=", dx: "+A.r(q) +q=s.d +if(q!=null)r+=", dy: "+A.r(q) +q=s.f +r=(q!=null?r+(", transform: "+q.k(0)):r)+")" +return r.charCodeAt(0)==0?r:r}} +A.aaS.prototype={ +gv(a){var s=this +return A.ad(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,r=this +if(b==null)return!1 +if(b instanceof A.aaS)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){s=b.f +if(r.f.a===s.a)if(b.r===r.r)s=r.w.a===b.w.a +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}, +k(a){var s=this +return"TextConfig('"+s.a+"', "+A.r(s.b)+", '"+A.r(s.d)+"', "+s.e.k(0)+", "+A.r(s.c)+", "+s.f.k(0)+", "+s.r.k(0)+", "+s.w.k(0)+",)"}} +A.tU.prototype={ +H(){return"FontWeight."+this.b}} +A.MD.prototype={ +H(){return"TextDecorationStyle."+this.b}} +A.MC.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.MC&&b.a===this.a}, +gv(a){return B.d.gv(this.a)}, +k(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.bQ(s,", ")+"])"}} +A.fL.prototype={ +jT(a,b){return this}, +p0(a){return this.jT(a,!1)}} +A.aOn.prototype={ +h0(a,b,c){return b.aGo(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.aH_.prototype={ +ys(a){var s=this.a +if(s.l(0,B.cx))return a +return a.ky(s)}} +A.m1.prototype={} +A.aHH.prototype={ +h0(a,b,c){return b.a_8(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.Tl.prototype={ +Lm(a,b,c,d,e,f,g){var s,r=b!=null?new A.a0I(c,b,a,a.b.r):a +if(d!=null){s=a.b +r=new A.a5k(d,r,s.z,e,s.r)}if(f!=null)r=new A.a6U(f,r,g,a.b.r) +B.b.B(this.d,r)}, +a74(a,b,c,d){return this.Lm(a,null,b,null,c,null,d)}, +jT(a,b){var s=A.KS(this.b.Fr(a),null,this.a) +B.b.L(s.d,this.d) +return s}, +p0(a){return this.jT(a,!1)}, +bsQ(){var s,r,q=null,p=this.b,o=p.f,n=o==null,m=n?q:o.c +p=p.z +s=p==null +if(s)r=m!=null&&m!==1&&m!==0 +else r=!0 +if(r){o=n?q:o.bGT(B.bjQ,this.a) +if(o==null){o=A.PJ(0,0,0,m==null?1:m) +o=new A.IU(o,q)}return new A.wu(s?B.mw:p,q,o)}return q}, +h0(a,b,c){return b.aGx(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.aGb.prototype={ +h0(a,b,c){return b.aGN(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}, +jT(a,b){var s=A.cMR(this.b.Fr(a),this.r) +B.b.L(s.d,this.d) +return s}, +p0(a){return this.jT(a,!1)}} +A.aDV.prototype={ +h0(a,b,c){return b.aGL(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.a0I.prototype={ +h0(a,b,c){return b.aGj(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}, +jT(a,b){var s=this +return new A.a0I(s.b,s.c,s.d.jT(a,b),s.a)}, +p0(a){return this.jT(a,!1)}} +A.a5k.prototype={ +h0(a,b,c){return b.aGs(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}, +jT(a,b){var s=this +return new A.a5k(s.b,s.c.jT(a,b),s.d,s.e,s.a)}, +p0(a){return this.jT(a,!1)}} +A.Tr.prototype={ +a8j(a,b){var s,r=this.b,q=r.e,p=q==null?null:q.aFw(a,b) +q=r.f +s=q==null?null:q.adC(a,b,B.hq) +if(s==null&&p==null)return null +r=r.z +return new A.wu(r==null?B.mw:r,p,s)}, +jT(a,b){var s=this.b +s=b?a.LB(s,this.a):s.Fr(a) +return A.cKK(this.d,s)}, +p0(a){return this.jT(a,!1)}, +h0(a,b,c){return b.aGy(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.Qp.prototype={ +jT(a,b){var s=this,r=s.b +r=b?a.LB(r,s.a):r.Fr(a) +return A.cGB(r,s.d,s.e)}, +p0(a){return this.jT(a,!1)}, +h0(a,b,c){return b.aGl(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.aG9.prototype={ +a8j(a,b){var s,r=this.b,q=r.f,p=q==null?null:q.adC(a,b,B.hq) +q=r.e +s=q==null?null:q.aFw(a,b) +if(p==null&&s==null)return null +r=r.z +return new A.wu(r==null?B.mw:r,s,p)}, +jT(a,b){var s=this.b,r=b?a.LB(s,this.a):s.Fr(a) +return A.cMN(this.d,r)}, +p0(a){return this.jT(a,!1)}, +h0(a,b,c){return b.aGM(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.avS.prototype={ +jT(a,b){var s=this,r=s.b +r=b?a.LB(r,s.a):r.Fr(a) +return A.cIV(s.d,s.e,r)}, +p0(a){return this.jT(a,!1)}, +h0(a,b,c){return b.aGq(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}} +A.a6U.prototype={ +h0(a,b,c){return b.aGz(this,c)}, +fR(a,b,c){var s=t.z +return this.h0(0,b,c,s,s)}, +jT(a,b){var s=this +return new A.a6U(s.b,s.c.jT(a,b),s.d,s.a)}, +p0(a){return this.jT(a,!1)}} +A.aj7.prototype={} +A.uA.prototype={ +akM(){var s,r,q=this,p=q.ax +for(s=q.c;s.t();){r=s.d +r.toString +if(r instanceof A.mH&&!r.r)++q.ax +else if(r instanceof A.nw)--q.ax +q.as=B.id +q.at=null +if(q.ax")),r=n.r;s.t();){q=s.b +if(q instanceof A.mH){if(n.aN7(q))continue +p=B.b3H.i(0,q.e) +if(p==null){if(!q.r)n.akM()}else p.$2(n,!1)}else if(q instanceof A.nw)n.bvf(0,q) +else{if(!r.gad(0))o=r.gP(0).a==="text"||r.gP(0).a==="tspan" +else o=!1 +if(o)if(q instanceof A.tc)n.aiB(q.e) +else if(q instanceof A.FZ)n.aiB(q.gj(0))}}if(n.Q==null)throw A.d(A.a0("Invalid SVG data")) +n.f.d=!0}, +ik(a,b){var s=this.as.a.i(0,a) +return s==null?b:s}, +ku(a){return this.ik(a,null)}, +Vs(a){var s="url(#"+A.r(this.as.b)+")" +if(s!=="url(#)"){this.f.bm7(s,a) +return!0}return!1}, +Fh(a,b){this.r.iW(0,new A.aj7(a.e,b)) +this.Vs(b)}, +bmj(a){var s,r,q,p,o=this,n=B.Qs.i(0,a.e) +if(n==null)return!1 +s=o.r.gP(0).b +r=n.$1(o) +r.toString +q=A.cKK(r,o.as) +o.Vs(q) +r=o.f +p=r.gA9() +s.Lm(q,o.as.y,r.gDq(),o.ku("mask"),p,r.PL(o),p) +return!0}, +aN7(a){if(a.e==="defs")if(!a.r){this.Fh(a,A.KS(this.as,null,null)) +return!0}return this.bmj(a)}, +bvf(a,b){var s=this.r,r=b.e +while(!0){if(r===s.gP(0).a)s.gP(0).toString +if(!!1)break +s.hX(0)}if(r===s.gP(0).a)s.hX(0) +this.ay=b +if(r==="text")this.ch=!1}, +bDv(a){var s +if(a==null||a==="")return null +s=A.j6(a,this.a,!0) +if(s!=null)return s +a=B.c.du(a.toLowerCase()) +s=$.deu.i(0,a) +if(s!=null)return s +throw A.d(A.a0("Could not parse font-size: "+a))}, +bDG(a){if(a==null)return null +switch(a){case"none":return B.YZ +case"underline":return B.bog +case"overline":return B.boh +case"line-through":return B.boi}throw A.d(A.aq('Attribute value for text-decoration="'+a+'" is not supported'))}, +bDH(a){if(a==null)return null +switch(a){case"solid":return B.YW +case"dashed":return B.bod +case"dotted":return B.boc +case"double":return B.bob +case"wavy":return B.boe}throw A.d(A.aq('Attribute value for text-decoration-style="'+a+'" is not supported'))}, +bDF(a){switch(a){case"end":return 1 +case"middle":return 0.5 +case"start":return 0 +case"inherit":default:return null}}, +apT(a){var s +if(a==="100%"||a==="")return 1/0 +s=A.j6(a,this.a,!0) +return s==null?1/0:s}, +apU(){var s,r,q,p,o,n,m,l=this,k=l.ku("viewBox") +if(k==null)k="" +s=l.ku("width") +if(s==null)s="" +r=l.ku("height") +if(r==null)r="" +q=k==="" +if(q&&s===""&&r==="")throw A.d(A.a0("SVG did not specify dimensions\n\nThe SVG library looks for a `viewBox` or `width` and `height` attribute to determine the viewport boundary of the SVG. Note that these attributes, as with all SVG attributes, are case sensitive.\nDuring processing, the following attributes were found:\n "+l.as.a.k(0))) +if(q)return new A.aZF(l.apT(s),l.apT(r),B.cx) +p=B.c.pS(k,A.b4("[ ,]+",!0,!1,!1)) +if(p.length<4)throw A.d(A.a0("viewBox element must be 4 elements long")) +q=A.m_(p[2],!1) +q.toString +o=A.m_(p[3],!1) +o.toString +n=A.m_(p[0],!1) +n.toString +m=A.m_(p[1],!1) +m.toString +return new A.aZF(q,o,B.cx.P3(-n,-m))}, +aD8(){switch(this.ku("spreadMethod")){case"pad":return B.y0 +case"repeat":return B.bt9 +case"reflect":return B.bta}return null}, +aD5(){switch(this.ku("gradientUnits")){case"userSpaceOnUse":return B.akg +case"objectBoundingBox":return B.uu}return null}, +bdm(a,b){switch(a){case"butt":return B.bnd +case"round":return B.bne +case"square":return B.bnf +default:return null}}, +bdC(a,b){switch(a){case"miter":return B.bng +case"bevel":return B.bni +case"round":return B.bnh +default:return null}}, +bdo(a){var s,r,q,p,o,n,m +if(a==null||a==="")return null +else if(a==="none")return B.aNf +s=J.b2W(a,A.b4("[ ,]+",!0,!1,!1)) +r=A.a([],t.n) +for(q=s.length,p=this.a,o=!1,n=0;n>>0)}}if(B.c.aC(a.toLowerCase(),"rgba")){p=t.a4 +n=A.R(new A.O(A.a(B.c.R(a,J.cv2(a,"(")+1,B.c.c2(a,")")).split(","),t.s),new A.bJ5(),p),!0,p.h("aa.E")) +p=A.m_(B.b.hX(n),!1) +p.toString +m=A.X(n).h("O<1,h>") +l=A.R(new A.O(n,new A.bJ6(),m),!0,m.h("aa.E")) +return A.PJ(l[0],l[1],l[2],p)}if(B.c.aC(a.toLowerCase(),"hsl")){p=t.SS +k=A.R(new A.O(A.a(B.c.R(a,J.cv2(a,"(")+1,B.c.c2(a,")")).split(","),t.s),new A.bJ7(),p),!0,p.h("aa.E")) +j=B.e.M(k[0]/360,1) +p=k[1] +i=k[2]/100 +h=k.length>3?k[3]:255 +l=A.a([0,0,0],t.n) +if(j<0.16666666666666666){l[0]=1 +l[1]=j*6}else if(j<0.3333333333333333){l[0]=2-j*6 +l[1]=1}else if(j<0.5){l[1]=1 +l[2]=j*6-2}else if(j<0.6666666666666666){l[1]=4-j*6 +l[2]=1}else{m=j*6 +if(j<0.8333333333333334){l[0]=m-4 +l[2]=1}else{l[0]=1 +l[2]=6-m}}m=t.bK +l=A.R(new A.O(l,new A.bJ8(p/100),m),!0,m.h("aa.E")) +p=A.X(l).h("O<1,U>") +l=i<0.5?A.R(new A.O(l,new A.bJ9(i),p),!0,p.h("aa.E")):A.R(new A.O(l,new A.bJa(i),p),!0,p.h("aa.E")) +p=A.X(l).h("O<1,U>") +l=A.R(new A.O(l,new A.bJb(),p),!0,p.h("aa.E")) +return A.cFV(h,J.cv6(l[0]),J.cv6(l[1]),J.cv6(l[2]))}if(B.c.aC(a.toLowerCase(),"rgb")){p=t.SS +l=A.R(new A.O(A.a(B.c.R(a,J.cv2(a,"(")+1,B.c.c2(a,")")).split(","),t.s),new A.bJc(),p),!0,p.h("aa.E")) +g=l.length>3?l[3]:255 +return A.cFV(g,l[0],l[1],l[2])}f=B.aUk.i(0,a) +if(f!=null)return f +return null}, +aZh(a){var s,r,q,p,o,n,m,l,k,j=t.N,i=A.N(j,j) +for(j=J.au(a);j.t();){s=j.gK(j) +r=B.c.du(s.b) +s=s.a +q=B.c.c2(s,":") +p=q>0 +if((p?B.c.b0(s,q+1):s)==="style")for(s=r.split(";"),p=s.length,o=0;o>>24 +if((r==null?255:r)!==255){r=o.a +q=(r>>>24)/255 +o=A.PJ(r>>>16&255,r>>>8&255,r&255,1)}r=l==="none"?B.mJ:new A.yh(!1,o) +return new A.Vv(n.f,r,q,m,m)}} +A.bJ5.prototype={ +$1(a){return B.c.du(a)}, +$S:28} +A.bJ6.prototype={ +$1(a){return A.cA(a,null)}, +$S:137} +A.bJ7.prototype={ +$1(a){var s +a=B.c.du(a) +if(B.c.eV(a,"%"))a=B.c.R(a,0,a.length-1) +if(B.c.p(a,".")){s=A.m_(a,!1) +s.toString +return B.e.aF(s*2.55)}return A.cA(a,null)}, +$S:137} +A.bJ8.prototype={ +$1(a){return a+(1-this.a)*(0.5-a)}, +$S:1} +A.bJ9.prototype={ +$1(a){return this.a*2*a}, +$S:1} +A.bJa.prototype={ +$1(a){return this.a*2*(1-a)+2*a-1}, +$S:1} +A.bJb.prototype={ +$1(a){return a*255}, +$S:1} +A.bJc.prototype={ +$1(a){var s +a=B.c.du(a) +if(B.c.eV(a,"%")){s=A.m_(B.c.R(a,0,a.length-1),!1) +s.toString +return B.e.aF(s*2.55)}return A.cA(a,null)}, +$S:137} +A.aVw.prototype={ +aIA(a){return this.a.i(0,a)}, +aIv(a){var s,r,q,p={},o=this.c.i(0,a) +if(o==null)return A.a([],t.hc) +s=A.a([],t.Sd) +p.a=null +r=new A.cdi(p,s) +for(q=J.au(o);q.t();)r.$1(q.gK(q)) +q=t.OW +return A.R(new A.O(s,new A.cdh(),q),!1,q.h("aa.E"))}, +PL(a){var s,r +if(a.ku("fill")!=null){s=a.ku("fill") +s.toString +if(B.c.aC(s,"url")&&a.z.p(0,s))return s}if(a.ku("stroke")!=null){r=a.ku("stroke") +r.toString +if(B.c.aC(r,"url")&&a.z.p(0,r))return r}return null}, +bm6(a,b){J.eQ(this.e.cP(0,a,new A.cdf()),b)}, +auV(a,b){var s,r,q=this.b,p=a.a +if(q.aB(0,p))return +q.n(0,p,a) +if(b!=null){b="url("+b+")" +s=q.i(0,b) +if(s!=null)q.n(0,p,a.a7n(s)) +else this.bm6(b,a)}else{p=this.e.F(0,p) +p=J.au(p==null?A.a([],t.AB):p) +for(;p.t();){r=p.gK(p) +q.n(0,r.a,r.a7n(a))}}}, +bm2(a,b){this.c.cP(0,a,new A.cde(b))}, +bm7(a,b){this.a.cP(0,a,new A.cdg(b))}} +A.cdi.prototype={ +$1(a){var s,r,q,p,o,n,m=this +if(a instanceof A.Tr){s=a.d +r=A.a([],t.H9) +q=new A.qv(r,$) +B.b.L(r,s.a) +q.b=s.b +s=a.b.x +if(s==null)s=B.em +q.b=s +r=m.a +p=r.a +o=p==null +if(!o){n=p.b +n===$&&A.b() +n=s!==n +s=n}else s=!1 +if(s){r.a=q +m.b.push(q)}else if(o){r.a=q +m.b.push(q)}else{s=q.aFu(!1) +B.b.L(p.a,s.a)}}else if(a instanceof A.Qp){s=a.d +m.$1(a.e.$1(s))}else if(a instanceof A.Tl)B.b.aE(a.d,m)}, +$S:1775} +A.cdh.prototype={ +$1(a){return a.Dd()}, +$S:1776} +A.cdf.prototype={ +$0(){return A.a([],t.AB)}, +$S:1777} +A.cde.prototype={ +$0(){return this.a}, +$S:1778} +A.cdg.prototype={ +$0(){return this.a}, +$S:1779} +A.aZF.prototype={} +A.Vu.prototype={ +gby5(){var s=this.a +s=s.gep(s) +return s.kW(s,new A.bIY())}, +LB(a3,a4){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.N +a2=A.rB(A.brh(a3.gby5(),a2,a2),a2,a2) +a2.L(0,a0.a) +s=a2.i(0,"id") +r=a2.i(0,"href") +q=a4==null?a0.r:a4 +p=a0.d.a1y(a3.d) +o=a0.e +if(o==null)o=a1 +else{n=a3.e +m=o.a +l=o.b +k=n==null +l=l.a1y(k?a1:n.b) +j=o.c +if(j==null)j=k?a1:n.c +i=o.d +if(i==null)i=k?a1:n.d +h=o.e +if(h==null)h=k?a1:n.e +g=o.f +if(g==null)g=k?a1:n.f +f=o.r +if(f==null)f=k?a1:n.r +e=o.w +if(e==null)e=k?a1:n.w +d=o.x +if(d==null)d=k?a1:n.x +c=o.y +if(c==null)c=k?a1:n.y +o=o.z +if(o==null)o=k?a1:n.z +o=new A.aat(m,l,j,i,h,g,f,e,d,c,o)}if(o==null)o=a3.e +n=a0.f +if(n==null)n=a1 +else{m=a3.f +l=n.a +k=n.b +j=m==null +k=k.a1y(j?a1:m.b) +i=n.d +if(i==null)i=j?a1:m.d +h=n.e +if(h==null)h=j?a1:m.e +n=n.c +if(n==null)n=j?a1:m.c +h=new A.Vv(l,k,n,i,h) +n=h}if(n==null)n=a3.f +m=a0.w +if(m==null)m=a3.w +l=a0.x +if(l==null)l=a3.x +k=a0.y +if(k==null)k=a3.y +j=a0.z +if(j==null)j=a3.z +i=a0.Q +if(i==null)i=a3.Q +h=a0.as +if(h==null)h=a3.as +g=a0.at +if(g==null)g=a3.at +f=a0.ax +if(f==null)f=a3.ax +e=a0.ay +if(e==null)e=a3.ay +d=a0.ch +if(d==null)d=a3.ch +c=a0.db +if(c==null)c=a3.db +b=a0.cx +if(b==null)b=a3.cx +a=a0.CW +if(a==null)a=a3.CW +return A.cMt(j,k,l,p,a0.dy,a0.fr,n,m,i,g,h,b,r,s,a2,o,c,f,d,e,q,a,a0.cy,a0.dx)}, +Fr(a){return this.LB(a,null)}} +A.bIY.prototype={ +$1(a){return B.blk.p(0,a.a)}, +$S:371} +A.a27.prototype={ +FD(a){if(this.b)return this.a*a +return this.a}, +gv(a){return A.ad(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 +return b instanceof A.a27&&b.b===this.b&&b.a===this.a}} +A.aat.prototype={ +aFw(a,b){var s,r,q=this,p=null,o=q.b +if(!o.a)s=o.b==null&&q.y==null&&q.c==null||q.r===0 +else s=!0 +if(s)return p +if(q.y===!0)return new A.aaj(B.hq,p,q.e,q.d,q.f,q.r) +s=q.c +if(s!=null){s=t.Mm.a(q.a.b.i(0,s)) +r=s==null?p:s.a7j(a,b) +if(r==null)return p}else r=p +o=o.b +o.toString +s=q.z +if(s==null)s=1 +o=o.a +s=A.PJ(o>>>16&255,o>>>8&255,o&255,s) +o=b.aJF(q.r) +return new A.aaj(s,r,q.e,q.d,q.f,o)}} +A.Vv.prototype={ +adC(a,b,c){var s,r,q,p=this,o=null,n=p.b +if(n.a)return o +n=n.b +if(n==null)s=o +else{r=p.c +if(r==null)r=1 +n=n.a +r=A.PJ(n>>>16&255,n>>>8&255,n&255,r) +s=r}if(s==null)if(c==null)s=o +else{n=p.c +if(n==null)n=1 +r=c.a +n=A.PJ(r>>>16&255,r>>>8&255,r&255,n) +s=n}if(s==null)return o +if(p.e===!0)return new A.IU(s,o) +n=p.d +if(n!=null){n=t.Mm.a(p.a.b.i(0,n)) +q=n==null?o:n.a7j(a,b) +if(q==null)return o}else q=o +return new A.IU(s,q)}, +bGT(a,b){return this.adC(a,b,null)}, +k(a){var s=this +return"SvgFillAttributes(definitions: "+s.a.k(0)+", color: "+s.b.k(0)+", shaderId: "+A.r(s.d)+", hasPattern: "+A.r(s.e)+", oapctiy: "+A.r(s.c)+")"}} +A.yh.prototype={ +a1y(a){var s,r=this +if(a==null||r.a)return r +if(a.a&&r.b==null)return B.mJ +s=r.b +return new A.yh(!1,s==null?a.b:s)}, +k(a){var s +if(this.a)s='"none"' +else{s=this.b +s=s==null?null:s.k(0) +if(s==null)s="null"}return s}} +A.bC_.prototype={ +aGj(a,b){var s,r=a.ys(b),q=A.a([],t.hc) +for(s=J.au(a.b.$1(a.c));s.t();)q.push(s.gK(s).e_(r)) +if(q.length===0)return a.d.fR(0,this,b) +return new A.aDt(q,a.d.fR(0,this,b))}, +aGs(a,b){var s,r=a.e.$1(a.b) +if(r==null)return a.c.fR(0,this,b) +s=a.c.fR(0,this,b) +return new A.aDu(r.fR(0,this,a.ys(b)),s,a.d)}, +aGx(b4,b5){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=null,b1=b4.ys(b5),b2=b4.bsQ(),b3=t.wP +if(b2==null){b3=A.a([],b3) +for(s=b4.d,r=s.length,q=b4.b,p=0;p0){f=Math.sqrt(g+1) +s=a1.a +s[3]=f*0.5 +f=0.5/f +s[0]=(i[5]-i[7])*f +s[1]=(i[6]-i[2])*f +s[2]=(i[1]-i[3])*f}else{if(so.a)a=o +else if(n<0)a=B.w +s=3 +return A.i(A.xB().Q0(p.db,a),$async$oK) +case 3:p.aur(a) +case 1:return A.n(q,r)}}) +return A.o($async$oK,r)}, +i_(a){return this.aLQ(a)}, +aLQ(a){var s=0,r=A.p(t.H),q=this +var $async$i_=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:q.sj(0,q.a.bs1(B.e.dV(a,0,1))) +s=2 +return A.i(q.Js(),$async$i_) +case 2:return A.n(null,r)}}) +return A.o($async$i_,r)}, +xk(a){return this.aLj(a)}, +aLj(a){var s=0,r=A.p(t.H),q=this +var $async$xk=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:if(a<0)throw A.d(A.ey(a,"Negative playback speeds are generally unsupported.",null)) +else if(a===0)throw A.d(A.ey(a,"Zero playback speed is generally unsupported. Consider using [pause].",null)) +q.sj(0,q.a.brN(a)) +s=2 +return A.i(q.Jr(),$async$xk) +case 2:return A.n(null,r)}}) +return A.o($async$xk,r)}, +b1L(a){return B.rw}, +aur(a){var s=this,r=s.a,q=s.b1L(a),p=s.a.a +s.sj(0,r.bst(q,a.a===p.a,a))}, +O(a,b){if(!this.ch)this.vi(0,b)}} +A.bOg.prototype={ +$1(a){var s,r,q=this.a +if(q.ch)return +switch(a.a.a){case 0:s=a.b +q.sj(0,q.a.bsG(s,null,!1,s!=null,null,a.c)) +this.b.d2(0,null) +q.Jq() +q.Js() +q.xE() +break +case 1:q.f2(0).bf(new A.bOh(q),t.H) +q.sj(0,q.a.brG(!0)) +break +case 2:q.sj(0,q.a.bru(a.e)) +break +case 3:q.sj(0,q.a.axs(!0)) +break +case 4:q.sj(0,q.a.axs(!1)) +break +case 5:s=a.f +r=q.a +if(s===!0)q.sj(0,r.bsc(!1,s)) +else q.sj(0,r.a8A(s)) +break +case 6:break}}, +$S:1781} +A.bOh.prototype={ +$1(a){var s=this.a +return s.oK(s.a.a)}, +$S:471} +A.bOf.prototype={ +$1(a){var s,r +t.j0.a(a) +s=this.a +r=a.b +r.toString +s.sj(0,new A.FR(B.w,B.w,B.rw,B.w,B.IO,!1,!1,!1,1,1,r,!1,B.A,0,!1)) +s=s.ay +if(s!=null)s.ao(0) +s=this.b +if((s.a.a&30)===0)s.jh(a)}, +$S:202} +A.bOe.prototype={ +$1(a){return this.aHF(a)}, +aHF(a){var s=0,r=A.p(t.H),q,p=this,o,n +var $async$$1=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:n=p.a +if(n.ch){s=1 +break}s=3 +return A.i(n.gb8(0),$async$$1) +case 3:o=c +if(o==null){s=1 +break}n.aur(o) +case 1:return A.n(q,r)}}) +return A.o($async$$1,r)}, +$S:1782} +A.aZB.prototype={ +w4(a){var s,r=this +if(a===B.iy){s=r.b +r.a=s.a.f +s.f2(0)}else if(a===B.ix)if(r.a)r.b.fM(0)}} +A.abX.prototype={ +J(){return A.djT()}} +A.aZD.prototype={ +aVw(){this.d=new A.cmS(this)}, +a8(){var s,r,q=this +q.an() +s=q.a.c +q.e=s.db +r=q.d +r===$&&A.b() +s.a3(0,r)}, +b1(a){var s,r,q=this +q.bc(a) +s=a.c +r=q.d +r===$&&A.b() +if(!s.ch)s.vi(0,r) +s=q.a.c +q.e=s.db +s.a3(0,q.d)}, +fS(){var s,r +this.jO() +s=this.a.c +r=this.d +r===$&&A.b() +if(!s.ch)s.vi(0,r)}, +q(a){var s=null,r=this.e +r===$&&A.b() +return r===-1?A.bB(s,s,B.i,s,s,s,s,s,s,s,s,s,s,s):new A.aZE(this.a.c.a.at,A.xB().aww(this.e),s)}} +A.cmS.prototype={ +$0(){var s=this.a,r=s.a.c.db,q=s.e +q===$&&A.b() +if(r!==q)s.C(new A.cmQ(s,r))}, +$S:0} +A.cmQ.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.aZE.prototype={ +q(a){var s=this.c,r=this.d +return s===0?r:A.aGX(s*3.141592653589793/180,r)}} +A.b1j.prototype={} +A.bOi.prototype={ +kQ(){throw A.d(A.bT("init() has not been implemented."))}, +on(a){throw A.d(A.bT("dispose() has not been implemented."))}, +VT(a,b){throw A.d(A.bT("create() has not been implemented."))}, +aGe(a){throw A.d(A.bT("videoEventsFor() has not been implemented."))}, +Qk(a,b){throw A.d(A.bT("setLooping() has not been implemented."))}, +mr(a,b){throw A.d(A.bT("play() has not been implemented."))}, +iH(a,b){throw A.d(A.bT("pause() has not been implemented."))}, +Qt(a,b){throw A.d(A.bT("setVolume() has not been implemented."))}, +Q0(a,b){throw A.d(A.bT("seekTo() has not been implemented."))}, +Qo(a,b){throw A.d(A.bT("setPlaybackSpeed() has not been implemented."))}, +PN(a){throw A.d(A.bT("getPosition() has not been implemented."))}, +aww(a){throw A.d(A.bT("buildView() has not been implemented."))}} +A.c9A.prototype={} +A.bbv.prototype={} +A.bbw.prototype={ +H(){return"DataSourceType."+this.b}} +A.tb.prototype={ +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.tb&&A.I(r)===A.I(b)&&r.a===b.a&&J.q(r.b,b.b)&&J.q(r.c,b.c)&&A.fj(r.e,b.e)&&r.f==b.f +else s=!0 +return s}, +gv(a){var s=this +return A.ad(s.a,s.b,s.c,null,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)}} +A.FQ.prototype={ +H(){return"VideoEventType."+this.b}} +A.a2f.prototype={ +k(a){return"DurationRange(start: "+this.a.k(0)+", end: "+this.b.k(0)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(b instanceof A.a2f)if(A.I(r)===A.I(b)){s=b.a +if(r.a.a===s.a)s=r.b.a===b.b.a +else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.ad(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.abY.prototype={ +byH(a,b){var s,r,q=this,p=q.b +p.autoplay=!1 +p.controls=!1 +p.playsInline=!0 +s=q.gbcy() +r=t.Ds.c +A.ny(p,"canplay",s,!1,r) +A.ny(p,"loadedmetadata",s,!1,r) +A.ny(p,"canplaythrough",new A.bOl(q),!1,r) +A.ny(p,"playing",new A.bOm(q),!1,r) +A.ny(p,"waiting",new A.bOn(q),!1,r) +A.ny(p,"error",new A.bOo(q),!1,r) +A.ny(p,"play",new A.bOp(q),!1,r) +A.ny(p,"pause",new A.bOq(q),!1,r) +A.ny(p,"ended",new A.bOr(q),!1,r) +p.src=b}, +fM(a){return A.kA(this.b.play(),t.X).BF(new A.bOs(this),new A.bOt())}, +oK(a){var s=this.gauq(),r=a.a +if(r===s.a)return +this.b.currentTime=B.d.aD(r,1000)/1000}, +gauq(){return A.cp(0,0,0,B.e.aF(this.b.currentTime*1000),0,0)}, +m(){var s=this.b +s.removeAttribute("src") +s.load()}, +bcz(a){var s,r,q,p=this +if(!p.d){p.d=!0 +s=p.b +r=A.dpV(s.duration) +q=isFinite(s.videoHeight)?new A.V(s.videoWidth,s.videoHeight):null +p.a.B(0,new A.tb(B.bw6,r,q,null,null))}}, +IL(a){var s,r=null +if(this.e!==a){this.e=a +s=a?B.bw9:B.bwa +this.a.B(0,new A.tb(s,r,r,r,r))}}, +arG(){this.a.B(0,new A.tb(B.bw8,null,null,this.bjN(this.b.buffered),null))}, +bjN(a){var s,r=A.a([],t.SE) +for(s=0;s").a1(q.y[1]),r=new A.c4(J.au(r.a),r.b,q.h("c4<1,2>")),q=q.y[1];r.t();){p=r.a;(p==null?q.a(p):p).m()}s.V(0)}, +VT(a,b){return this.bsM(0,b)}, +bsM(a,b){var s=0,r=A.p(t.S),q,p=this,o,n,m,l,k,j +var $async$VT=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)$async$outer:switch(s){case 0:k=p.b++ +j=A.aF("uri") +switch(b.a.a){case 1:o=b.b +j.b=o==null?"":o +break +case 0:o=b.e +o.toString +n=$.GF +j.b=n.Do(o) +break +case 2:q=A.pd(new A.x2("web implementation of video_player cannot play local files"),null,t.S) +s=1 +break $async$outer +case 3:q=A.pd(new A.x2("web implementation of video_player cannot play content uri"),null,t.S) +s=1 +break $async$outer}m=self.document.createElement("video") +o=""+k +m.id="videoElement-"+o +m.style.border="none" +m.style.height="100%" +m.style.width="100%" +$.amv() +$.tq().D1("videoPlayer-"+o,new A.bOk(m),!0) +o=A.lN(null,null,null,!1,t.oW) +l=new A.abY(o,m) +l.byH(0,j.aX()) +p.a.n(0,k,l) +q=k +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$VT,r)}, +Qk(a,b){return this.aLa(a,b)}, +aLa(a,b){var s=0,r=A.p(t.H),q,p=this +var $async$Qk=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p.a.i(0,a).b.loop=b +q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Qk,r)}, +mr(a,b){return this.bE7(0,b)}, +bE7(a,b){var s=0,r=A.p(t.H),q,p=this +var $async$mr=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q=p.a.i(0,b).fM(0) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$mr,r)}, +iH(a,b){return this.bDO(0,b)}, +bDO(a,b){var s=0,r=A.p(t.H),q,p=this +var $async$iH=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p.a.i(0,b).b.pause() +q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$iH,r)}, +Qt(a,b){return this.aLR(a,b)}, +aLR(a,b){var s=0,r=A.p(t.H),q,p=this,o +var $async$Qt=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:o=p.a.i(0,a).b +o.muted=!(b>0) +o.volume=b +q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Qt,r)}, +Qo(a,b){return this.aLk(a,b)}, +aLk(a,b){var s=0,r=A.p(t.H),q,p=this +var $async$Qo=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:p.a.i(0,a).b.playbackRate=b +q=null +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Qo,r)}, +Q0(a,b){return this.aKw(a,b)}, +aKw(a,b){var s=0,r=A.p(t.H),q,p=this +var $async$Q0=A.l(function(c,d){if(c===1)return A.m(d,r) +while(true)switch(s){case 0:q=p.a.i(0,a).oK(b) +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$Q0,r)}, +PN(a){return this.aJ8(a)}, +aJ8(a){var s=0,r=A.p(t.Tu),q,p=this,o +var $async$PN=A.l(function(b,c){if(b===1)return A.m(c,r) +while(true)switch(s){case 0:o=p.a.i(0,a) +o.arG() +q=o.gauq() +s=1 +break +case 1:return A.n(q,r)}}) +return A.o($async$PN,r)}, +aGe(a){var s=this.a.i(0,a).a +return new A.dI(s,A.z(s).h("dI<1>"))}, +aww(a){return A.cxj("videoPlayer-"+a)}} +A.bOk.prototype={ +$1(a){return this.a}, +$S:236} +A.bOD.prototype={} +A.bOB.prototype={} +A.bsT.prototype={} +A.bOC.prototype={} +A.cwI.prototype={} +A.B1.prototype={ +glb(){return!0}, +cl(a,b,c,d){return A.ny(this.a,this.b,a,!1,A.z(this).c)}, +eB(a){return this.cl(a,null,null,null)}, +jH(a,b,c){return this.cl(a,null,b,c)}, +nR(a,b,c){return this.cl(a,b,c,null)}} +A.aev.prototype={} +A.aeB.prototype={ +ao(a){var s=this,r=A.dm(null,t.H) +if(s.b==null)return r +s.a66() +s.d=s.b=null +return r}, +lh(a){var s,r=this +if(r.b==null)throw A.d(A.a0("Subscription has been canceled.")) +r.a66() +s=A.cRC(new A.bZk(a),t.lZ) +s=s==null?null:t.g.a(A.cQ(s)) +r.d=s +r.a65()}, +Hd(a,b){}, +iH(a,b){if(this.b==null)return;++this.a +this.a66()}, +f2(a){return this.iH(0,null)}, +nj(a){var s=this +if(s.b==null||s.a<=0)return;--s.a +s.a65()}, +a65(){var s,r=this,q=r.d +if(q!=null&&r.a<=0){s=r.b +s.toString +A.L(s,"addEventListener",[r.c,q,!1])}}, +a66(){var s,r=this.d +if(r!=null){s=this.b +s.toString +A.L(s,"removeEventListener",[this.c,r,!1])}}, +$ioH:1} +A.bZi.prototype={ +$1(a){return this.a.$1(a)}, +$S:40} +A.bZk.prototype={ +$1(a){return this.a.$1(a)}, +$S:40} +A.y8.prototype={ +H(){return"BrowserAgent."+this.b}} +A.b6V.prototype={ +b_b(a,b,c){var s,r,q,p,o,n,m,l=this,k=null,j=[new A.AS(B.a3j,b,"Edg",k),new A.AS(B.a3f,b,"Chrome",k),new A.AS(B.a3g,c,"Apple","Version"),new A.AS(B.a3h,b,"Firefox",k),new A.AS(B.A4,b,"MSIE","MSIE"),new A.AS(B.A4,b,"Trident","rv"),new A.AS(B.a3i,b,"Edge",k)] +for(s=0;s<7;++s){r=j[s] +q=r.b +p=r.c +if(A.r6(q,p,0)){l.a=r +o=r.d +p=o==null?p:o +n=B.c.c2(b,p) +if(n===-1){n=B.c.c2(a,p) +m=a}else m=b +if(n===-1)l.b="Unknown version" +else{q=B.c.b0(m,n+p.length+1) +l.b=q +if(q.split(" ").length>1)l.b=B.b.ga2(l.b.split(" "))}break}}}} +A.AS.prototype={} +A.bOL.prototype={ +aVh(a,b){}, +ayf(){return this.a.ayf()}, +awE(){return this.a.awE()}, +aEB(a){return this.a.aEB(0)}, +aFh(a){return this.a.aFh(a)}, +af5(){return this.a.af5()}, +afG(a){return this.a.afG(a)}} +A.bOO.prototype={} +A.aHN.prototype={ +q(a){return this.c.q(a)}} +A.bo0.prototype={ +H(){return"JavaScriptMode."+this.b}} +A.bxG.prototype={} +A.bxH.prototype={} +A.bxI.prototype={} +A.FT.prototype={} +A.ke.prototype={ +k(a){var s,r=this,q=r.a +if(q!=null){s=r.b.c +s=""+"PUBLIC "+s+q+s +q=s}else q=""+"SYSTEM" +s=r.d.c +s=q+" "+s+r.c+s +return s.charCodeAt(0)==0?s:s}, +gv(a){return A.ad(this.c,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)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.ke)s=!0 +else s=!1 +return s}} +A.aJR.prototype={ +btg(a){var s=a.length +if(s>1&&a[0]==="#"){if(s>2){s=a[1] +s=s==="x"||s==="X"}else s=!1 +if(s)return this.akv(B.c.b0(a,2),16) +else return this.akv(B.c.b0(a,1),10)}else return B.aWC.i(0,a)}, +akv(a,b){var s=A.cY(a,b) +if(s==null||s<0||1114111");p.a>s;){q=new A.bR(p,r).gaz(0) +if(!q.t())A.C(A.dB()) +p.F(0,q.gK(0))}}p=p.i(0,b) +p.toString +return p}} +A.WH.prototype={ +dY(a){var s,r=a.a,q=a.b,p=r.length,o=q") +return null}, +gv(a){return A.ad(B.byf,this.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,B.a,B.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.tc&&b.e===this.e}} +A.uW.prototype={ +yc(a,b){var s=b.a +s.B(0,"") +return null}, +gv(a){return A.ad(B.byi,this.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,B.a,B.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.uW&&b.e===this.e}} +A.uX.prototype={ +yc(a,b){var s=b.a +s.B(0,"") +return null}, +gv(a){return A.ad(B.byj,B.o1.jC(0,this.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,B.a,B.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.uX&&B.o1.h4(b.e,this.e)}} +A.uY.prototype={ +yc(a,b){var s,r,q=b.a +q.B(0,"") +return null}, +gv(a){return A.ad(B.byk,this.e,this.f,this.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)}, +l(a,b){if(b==null)return!1 +return b instanceof A.uY&&this.e===b.e&&J.q(this.f,b.f)&&this.r==b.r}} +A.nw.prototype={ +yc(a,b){var s=b.a +s.B(0,"") +return null}, +gv(a){return A.ad(B.a_7,this.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,B.a,B.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.nw&&b.e===this.e}, +gdI(a){return this.e}} +A.aZW.prototype={} +A.uZ.prototype={ +yc(a,b){var s,r=b.a +r.B(0,"") +return null}, +gv(a){return A.ad(B.byg,this.f,this.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,B.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.uZ&&b.e===this.e&&b.f===this.f}} +A.mH.prototype={ +yc(a,b){var s=b.a +s.B(0,"<") +s.B(0,this.e) +b.auR(this.f) +if(this.r)s.B(0,"/>") +else s.B(0,">") +return null}, +gv(a){return A.ad(B.a_7,this.e,this.r,B.o1.jC(0,this.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)}, +l(a,b){if(b==null)return!1 +return b instanceof A.mH&&b.e===this.e&&b.r===this.r&&B.o1.h4(b.f,this.f)}, +gdI(a){return this.e}} +A.b_3.prototype={} +A.FZ.prototype={ +gj(a){var s,r=this,q=r.r +if(q===$){s=r.f.hF(0,r.e) +r.r!==$&&A.a_() +r.r=s +q=s}return q}, +yc(a,b){b.a.B(0,A.Zn(this.gj(0),$.d06(),A.drH(),null)) +return null}, +gv(a){return A.ad(B.byh,this.gj(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)}, +l(a,b){if(b==null)return!1 +return b instanceof A.FZ&&b.gj(0)===this.gj(0)}, +$iach:1} +A.aJT.prototype={ +gaz(a){var s=A.a([],t.Ec),r=A.a([],t.po) +return new A.bPC($.d0o().i(0,this.b),new A.bPB(!1,!1,!1,!1,!1,s,r),new A.dj("",this.a,0))}} +A.bPC.prototype={ +gK(a){var s=this.d +s.toString +return s}, +t(){var s,r,q,p,o=this,n=o.c +if(n!=null){s=o.a.dY(n) +if(s instanceof A.f8){o.c=s +r=s.e +o.d=r +o.b.bmN(r,n.a,n.b,s.b) +return!0}else{r=n.b +q=n.a +if(r"),A.ep("/>")],t.sb),A.ds0(),q),q,q,p,q,q),new A.bPT(),q,q,p,q,q,t.a1)}, +bne(a){return A.cyx(new A.c2(this.gbmY(),B.W,t.vv),0,9007199254740991,t.hs)}, +bmZ(){var s=this,r=t.WV,q=t.N,p=t._0 +return A.Lq(A.vg(new A.c2(s.gJ0(),B.W,r),new A.c2(s.grS(),B.W,r),new A.c2(s.gbn_(),B.W,t.VJ),q,q,p),new A.bPH(s),q,q,p,t.hs)}, +bn0(){var s=this.gJ1(),r=t.WV,q=t.N,p=t._0 +return new A.qs(B.biO,A.bzW(A.ctI(new A.c2(s,B.W,r),A.ep("="),new A.c2(s,B.W,r),new A.c2(this.gBx(),B.W,t.VJ),q,q,q,p),new A.bPD(),q,q,q,p,p),t.Tq)}, +bn2(){var s=t.VJ +return A.Cg(A.a([new A.c2(this.gbn3(),B.W,s),new A.c2(this.gbn9(),B.W,s),new A.c2(this.gbn7(),B.W,s)],t.m5),null,t._0)}, +bn4(){var s=t.N +return A.Lq(A.vg(A.ep('"'),new A.WH('"',0),A.ep('"'),s,s,s),new A.bPE(),s,s,s,t._0)}, +bna(){var s=t.N +return A.Lq(A.vg(A.ep("'"),new A.WH("'",0),A.ep("'"),s,s,s),new A.bPG(),s,s,s,t._0)}, +bn8(){return A.E7(new A.c2(this.grS(),B.W,t.WV),new A.bPF(),!1,t.N,t._0)}, +bve(a){var s=t.WV,r=t.N +return A.bzW(A.ctI(A.ep(""),r,r,r,r),new A.bPQ(),r,r,r,r,t.Gn)}, +bqD(){var s=t.N +return A.Lq(A.vg(A.ep("" expected',new A.pj(A.ep("-->"),0,9007199254740991,new A.rd("input expected"),t.Po),t.Ii),A.ep("-->"),s,s,s),new A.bPK(),s,s,s,t.mL)}, +bpT(){var s=t.N +return A.Lq(A.vg(A.ep("" expected',new A.pj(A.ep("]]>"),0,9007199254740991,new A.rd("input expected"),t.Po),t.Ii),A.ep("]]>"),s,s,s),new A.bPI(),s,s,s,t.nU)}, +btc(){var s=t.N,r=t.p9 +return A.bzW(A.ctI(A.ep(""),s,r,s,s),new A.bPL(),s,r,s,s,t.UR)}, +bEA(){var s=t.WV,r=t.N +return A.bzW(A.ctI(A.ep("" expected',new A.pj(A.ep("?>"),0,9007199254740991,new A.rd("input expected"),t.Po),t.Ii),r,r),new A.bPR(),r,r,r),t.mA),A.ep("?>"),r,r,r,r),new A.bPS(),r,r,r,r,t.Mw)}, +bui(){var s=this,r=A.ep(""),t.n8),new A.bPP(),n,n,n,t.dd,n,t.R,n,n,t.RN)}, +buq(){var s=t.r0 +return A.Cg(A.a([new A.c2(this.gbut(),B.W,s),new A.c2(this.gbur(),B.W,s)],t.Gv),null,t.aD)}, +buu(){var s=t.N,r=t._0 +return A.Lq(A.vg(A.ep("SYSTEM"),new A.c2(this.gJ0(),B.W,t.WV),new A.c2(this.gBx(),B.W,t.VJ),s,s,r),new A.bPN(),s,s,r,t.aD)}, +bus(){var s=this.gJ0(),r=t.WV,q=this.gBx(),p=t.VJ,o=t.N,n=t._0 +return A.cLl(A.cU1(A.ep("PUBLIC"),new A.c2(s,B.W,r),new A.c2(q,B.W,p),new A.c2(s,B.W,r),new A.c2(q,B.W,p),o,o,n,o,n),new A.bPM(),o,o,n,o,n,t.aD)}, +buw(){var s,r=this,q=A.ep("["),p=t.lk +p=A.Cg(A.a([new A.c2(r.gbul(),B.W,p),new A.c2(r.gbuj(),B.W,p),new A.c2(r.gbun(),B.W,p),new A.c2(r.gbuy(),B.W,p),new A.c2(r.gaDK(),B.W,t.M9),new A.c2(r.gax3(),B.W,t.ZV),new A.c2(r.gbuE(),B.W,p),new A.rd("input expected")],t.Vz),null,t.z) +s=t.N +return A.Lq(A.vg(q,new A.tS('"]" expected',new A.pj(A.ep("]"),0,9007199254740991,p,t.lv),t.vo),A.ep("]"),s,s,s),new A.bPO(),s,s,s,s)}, +bum(){var s=A.ep(""),0,9007199254740991,r,t.xj),A.ep(">"),q,t.UX,q)}, +buk(){var s=A.ep(""),0,9007199254740991,r,t.xj),A.ep(">"),q,t.UX,q)}, +buo(){var s=A.ep(""),0,9007199254740991,r,t.xj),A.ep(">"),q,t.UX,q)}, +buz(){var s=A.ep(""),0,9007199254740991,r,t.xj),A.ep(">"),q,t.UX,q)}, +buF(){var s=t.N +return A.vg(A.ep("%"),new A.c2(this.grS(),B.W,t.WV),A.ep(";"),s,s,s)}, +aMU(){var s="whitespace expected" +return A.cLI(new A.Mh(B.AK,s),1,9007199254740991,s)}, +aMV(){var s="whitespace expected" +return A.cLI(new A.Mh(B.AK,s),0,9007199254740991,s)}, +bBp(){var s=t.WV,r=t.N +return new A.tS("name expected",A.cU0(new A.c2(this.gbBn(),B.W,s),A.cyx(new A.c2(this.gbBl(),B.W,s),0,9007199254740991,r),r,t.yp),t.TJ)}, +bBo(){return A.cTz(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd",null)}, +bBm(){return A.cTz(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd-.0-9\xb7\u0300-\u036f\u203f-\u2040",null)}} +A.bPJ.prototype={ +$1(a){var s=null +return new A.FZ(a,this.a.a,s,s,s,s)}, +$S:1799} +A.bPT.prototype={ +$5(a,b,c,d,e){var s=null +return new A.mH(b,c,e==="/>",s,s,s,s)}, +$S:1800} +A.bPH.prototype={ +$3(a,b,c){return new A.lh(b,this.a.a.hF(0,c.a),c.b,null)}, +$S:1801} +A.bPD.prototype={ +$4(a,b,c,d){return d}, +$S:1802} +A.bPE.prototype={ +$3(a,b,c){return new A.dZ(b,B.yD)}, +$S:507} +A.bPG.prototype={ +$3(a,b,c){return new A.dZ(b,B.bye)}, +$S:507} +A.bPF.prototype={ +$1(a){return new A.dZ(a,B.yD)}, +$S:1804} +A.bPQ.prototype={ +$4(a,b,c,d){var s=null +return new A.nw(b,s,s,s,s)}, +$S:1805} +A.bPK.prototype={ +$3(a,b,c){var s=null +return new A.uW(b,s,s,s,s)}, +$S:1806} +A.bPI.prototype={ +$3(a,b,c){var s=null +return new A.tc(b,s,s,s,s)}, +$S:1807} +A.bPL.prototype={ +$4(a,b,c,d){var s=null +return new A.uX(b,s,s,s,s)}, +$S:1808} +A.bPR.prototype={ +$2(a,b){return b}, +$S:201} +A.bPS.prototype={ +$4(a,b,c,d){var s=null +return new A.uZ(b,c,s,s,s,s)}, +$S:1809} +A.bPP.prototype={ +$8(a,b,c,d,e,f,g,h){var s=null +return new A.uY(c,d,f,s,s,s,s)}, +$S:1810} +A.bPN.prototype={ +$3(a,b,c){return new A.ke(null,null,c.a,c.b)}, +$S:1811} +A.bPM.prototype={ +$5(a,b,c,d,e){return new A.ke(c.a,c.b,e.a,e.b)}, +$S:1812} +A.bPO.prototype={ +$3(a,b,c){return b}, +$S:1813} +A.crZ.prototype={ +$1(a){return A.dvd(new A.c2(new A.aJU(a).gbvA(),B.W,t.Lf),t.l2)}, +$S:1814} +A.apR.prototype={ +B(a,b){return this.a.$1(b)}, +aO(a){}} +A.lh.prototype={ +gv(a){return A.ad(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){if(b==null)return!1 +return b instanceof A.lh&&b.a===this.a&&b.b===this.b&&b.c===this.c}, +gdI(a){return this.a}} +A.aZX.prototype={} +A.aZY.prototype={} +A.acg.prototype={ +gabO(a){var s=this,r=B.c.c2(s.gdI(s),":") +return r>0?B.c.b0(s.gdI(s),r+1):s.gdI(s)}} +A.aJV.prototype={ +bg(a){return a.yc(0,this)}} +A.bXi.prototype={ +h4(a,b){var s,r,q,p,o,n,m,l,k=this +a=a +b=b +if(a instanceof A.nx)a=a.b +if(b instanceof A.nx)b=b.b +for(s=k.a,r=s.length,q=k.b,p=0;p=48&&s<=57)return r.aon(a) +return q}}, +apR(a){switch(a.d){case"":case"null":case"Null":case"NULL":case"~":return new A.nx(null,a.a) +default:return null}}, +a51(a){switch(a.d){case"true":case"True":case"TRUE":return new A.nx(!0,a.a) +case"false":case"False":case"FALSE":return new A.nx(!1,a.a) +default:return null}}, +a4g(a,b,c){var s=this.bdD(a.d,b,c) +return s==null?null:new A.nx(s,a.a)}, +aon(a){return this.a4g(a,!0,!0)}, +b8Z(a,b){return this.a4g(a,b,!0)}, +b9_(a,b){return this.a4g(a,!0,b)}, +bdD(a,b,c){var s,r,q,p,o,n=null,m=a.charCodeAt(0),l=a.length +if(c&&l===1){s=m-48 +return s>=0&&s<=9?s:n}r=a.charCodeAt(1) +if(c&&m===48){if(r===120)return A.cY(a,n) +if(r===111)return A.cY(B.c.b0(a,2),8)}if(!(m>=48&&m<=57))q=(m===43||m===45)&&r>=48&&r<=57 +else q=!0 +if(q){p=c?A.cY(a,10):n +return b?p==null?A.zW(a):p:p}if(!b)return n +q=m===46 +if(!(q&&r>=48&&r<=57))o=(m===45||m===43)&&r===46 +else o=!0 +if(o){if(l===5)switch(a){case"+.inf":case"+.Inf":case"+.INF":return 1/0 +case"-.inf":case"-.Inf":case"-.INF":return-1/0}return A.zW(a)}if(l===4&&q)switch(a){case".inf":case".Inf":case".INF":return 1/0 +case".nan":case".NaN":case".NAN":return 0/0}return n}} +A.bwG.prototype={ +kA(a){var s,r,q,p +try{if(this.c===B.z5){q=A.a0("No more events.") +throw A.d(q)}s=this.biU() +return s}catch(p){q=A.ag(p) +if(q instanceof A.aah){r=q +throw A.d(A.eM(r.a,r.b))}else throw p}}, +biU(){var s,r,q,p=this +switch(p.c){case B.a_W:s=p.a.it() +p.c=B.z4 +return new A.vU(B.aj9,s.gdi(s)) +case B.z4:return p.bdr() +case B.a_S:return p.bdp() +case B.z3:return p.bdq() +case B.a_Q:return p.T6(!0) +case B.bAB:return p.KE(!0,!0) +case B.bAA:return p.B4() +case B.a_R:p.a.it() +return p.apK() +case B.z2:return p.apK() +case B.r2:return p.bdB() +case B.a_P:p.a.it() +return p.apJ() +case B.r_:return p.apJ() +case B.r0:return p.bdk() +case B.a_V:return p.apQ(!0) +case B.z7:return p.bdx() +case B.a_X:return p.bdy() +case B.z9:return p.bdz() +case B.z8:p.c=B.z7 +r=p.a.hd() +r=r.gdi(r) +r=A.eF(r.a,r.b) +q=r.b +return new A.vU(B.nn,A.hP(r.a,q,q)) +case B.a_U:return p.apO(!0) +case B.r1:return p.bdv() +case B.z6:return p.bdw() +case B.a_T:return p.apP(!0) +default:throw A.d(A.a0("Unreachable"))}}, +bdr(){var s,r,q,p=this,o=p.a,n=o.hd() +n.toString +for(s=n;s.gbl(s)===B.y7;s=n){o.it() +n=o.hd() +n.toString}if(s.gbl(s)!==B.y4&&s.gbl(s)!==B.y5&&s.gbl(s)!==B.y6&&s.gbl(s)!==B.m6){p.aqd() +p.b.push(B.z3) +p.c=B.a_Q +o=s.gdi(s) +o=A.eF(o.a,o.b) +n=o.b +return A.cH6(A.hP(o.a,n,n),!0,null,null)}if(s.gbl(s)===B.m6){p.c=B.z5 +o.it() +return new A.vU(B.D4,s.gdi(s))}r=s.gdi(s) +q=p.aqd() +s=o.hd() +if(s.gbl(s)!==B.y6)throw A.d(A.eM("Expected document start.",s.gdi(s))) +p.b.push(B.z3) +p.c=B.a_S +o.it() +return A.cH6(r.iz(0,s.gdi(s)),!1,q.b,q.a)}, +bdp(){var s,r,q=this,p=q.a.hd() +switch(p.gbl(p).a){case 2:case 3:case 4:case 5:case 1:q.c=q.b.pop() +s=p.gdi(p) +s=A.eF(s.a,s.b) +r=s.b +return new A.mw(A.hP(s.a,r,r),null,null,"",B.cQ) +default:return q.T6(!0)}}, +bdq(){var s,r,q +this.d.V(0) +this.c=B.z4 +s=this.a +r=s.hd() +if(r.gbl(r)===B.y7){s.it() +return new A.a2_(r.gdi(r),!1)}else{s=r.gdi(r) +s=A.eF(s.a,s.b) +q=s.b +return new A.a2_(A.hP(s.a,q,q),!0)}}, +KE(a,b){var s,r,q,p,o,n=this,m={},l=n.a,k=l.hd() +k.toString +if(k instanceof A.ZM){l.it() +n.c=n.b.pop() +return new A.amU(k.a,k.b)}m.a=m.b=null +s=k.gdi(k) +s=A.eF(s.a,s.b) +r=s.b +m.c=A.hP(s.a,r,r) +r=new A.bwI(m,n) +s=new A.bwJ(m,n) +if(k instanceof A.BO){q=r.$1(k) +if(q instanceof A.Fw)q=s.$1(q)}else if(k instanceof A.Fw){q=s.$1(k) +if(q instanceof A.BO)q=r.$1(q)}else q=k +k=m.a +if(k!=null){s=k.b +if(s==null)p=k.c +else{o=n.d.i(0,s) +if(o==null)throw A.d(A.eM("Undefined tag handle.",m.a.a)) +k=o.b +s=m.a +s=s==null?null:s.c +p=k+(s==null?"":s)}}else p=null +if(b&&q.gbl(q)===B.jW){n.c=B.r2 +return new A.UT(m.c.iz(0,q.gdi(q)),m.b,p,B.rY)}if(q instanceof A.F5){if(p==null&&q.c!==B.cQ)p="!" +n.c=n.b.pop() +l.it() +return new A.mw(m.c.iz(0,q.a),m.b,p,q.b,q.c)}if(q.gbl(q)===B.Zp){n.c=B.a_V +return new A.UT(m.c.iz(0,q.gdi(q)),m.b,p,B.rZ)}if(q.gbl(q)===B.Zm){n.c=B.a_U +return new A.SB(m.c.iz(0,q.gdi(q)),m.b,p,B.rZ)}if(a&&q.gbl(q)===B.Zo){n.c=B.a_R +return new A.UT(m.c.iz(0,q.gdi(q)),m.b,p,B.rY)}if(a&&q.gbl(q)===B.qn){n.c=B.a_P +return new A.SB(m.c.iz(0,q.gdi(q)),m.b,p,B.rY)}if(m.b!=null||p!=null){n.c=n.b.pop() +return new A.mw(m.c,m.b,p,"",B.cQ)}throw A.d(A.eM("Expected node content.",m.c))}, +T6(a){return this.KE(a,!1)}, +B4(){return this.KE(!1,!1)}, +apK(){var s,r,q=this,p=q.a,o=p.hd() +if(o.gbl(o)===B.jW){s=o.gdi(o) +r=A.eF(s.a,s.b) +p.it() +o=p.hd() +if(o.gbl(o)===B.jW||o.gbl(o)===B.il){q.c=B.z2 +p=r.b +return new A.mw(A.hP(r.a,p,p),null,null,"",B.cQ)}else{q.b.push(B.z2) +return q.T6(!0)}}if(o.gbl(o)===B.il){p.it() +q.c=q.b.pop() +return new A.vU(B.nm,o.gdi(o))}throw A.d(A.eM("While parsing a block collection, expected '-'.",o.gdi(o).gee(0).Om()))}, +bdB(){var s,r,q=this,p=q.a,o=p.hd() +if(o.gbl(o)!==B.jW){q.c=q.b.pop() +p=o.gdi(o) +p=A.eF(p.a,p.b) +s=p.b +return new A.vU(B.nm,A.hP(p.a,s,s))}s=o.gdi(o) +r=A.eF(s.a,s.b) +p.it() +o=p.hd() +if(o.gbl(o)===B.jW||o.gbl(o)===B.eO||o.gbl(o)===B.eP||o.gbl(o)===B.il){q.c=B.r2 +p=r.b +return new A.mw(A.hP(r.a,p,p),null,null,"",B.cQ)}else{q.b.push(B.r2) +return q.T6(!0)}}, +apJ(){var s,r,q=this,p=null,o=q.a,n=o.hd() +if(n.gbl(n)===B.eO){s=n.gdi(n) +r=A.eF(s.a,s.b) +o.it() +n=o.hd() +if(n.gbl(n)===B.eO||n.gbl(n)===B.eP||n.gbl(n)===B.il){q.c=B.r0 +o=r.b +return new A.mw(A.hP(r.a,o,o),p,p,"",B.cQ)}else{q.b.push(B.r0) +return q.KE(!0,!0)}}if(n.gbl(n)===B.eP){q.c=B.r0 +o=n.gdi(n) +o=A.eF(o.a,o.b) +s=o.b +return new A.mw(A.hP(o.a,s,s),p,p,"",B.cQ)}if(n.gbl(n)===B.il){o.it() +q.c=q.b.pop() +return new A.vU(B.nn,n.gdi(n))}throw A.d(A.eM("Expected a key while parsing a block mapping.",n.gdi(n).gee(0).Om()))}, +bdk(){var s,r,q=this,p=null,o=q.a,n=o.hd() +if(n.gbl(n)!==B.eP){q.c=B.r_ +o=n.gdi(n) +o=A.eF(o.a,o.b) +s=o.b +return new A.mw(A.hP(o.a,s,s),p,p,"",B.cQ)}s=n.gdi(n) +r=A.eF(s.a,s.b) +o.it() +n=o.hd() +if(n.gbl(n)===B.eO||n.gbl(n)===B.eP||n.gbl(n)===B.il){q.c=B.r_ +o=r.b +return new A.mw(A.hP(r.a,o,o),p,p,"",B.cQ)}else{q.b.push(B.r_) +return q.KE(!0,!0)}}, +apQ(a){var s,r,q,p=this +if(a)p.a.it() +s=p.a +r=s.hd() +if(r.gbl(r)!==B.jU){if(!a){if(r.gbl(r)!==B.ik)throw A.d(A.eM("While parsing a flow sequence, expected ',' or ']'.",r.gdi(r).gee(0).Om())) +s.it() +q=s.hd() +q.toString +r=q}if(r.gbl(r)===B.eO){p.c=B.a_X +s.it() +return new A.SB(r.gdi(r),null,null,B.rZ)}else if(r.gbl(r)!==B.jU){p.b.push(B.z7) +return p.B4()}}s.it() +p.c=p.b.pop() +return new A.vU(B.nm,r.gdi(r))}, +bdx(){return this.apQ(!1)}, +bdy(){var s,r,q=this,p=q.a.hd() +if(p.gbl(p)===B.eP||p.gbl(p)===B.ik||p.gbl(p)===B.jU){s=p.gdi(p) +r=A.eF(s.a,s.b) +q.c=B.z9 +s=r.b +return new A.mw(A.hP(r.a,s,s),null,null,"",B.cQ)}else{q.b.push(B.z9) +return q.B4()}}, +bdz(){var s,r=this,q=r.a,p=q.hd() +if(p.gbl(p)===B.eP){q.it() +p=q.hd() +if(p.gbl(p)!==B.ik&&p.gbl(p)!==B.jU){r.b.push(B.z8) +return r.B4()}}r.c=B.z8 +q=p.gdi(p) +q=A.eF(q.a,q.b) +s=q.b +return new A.mw(A.hP(q.a,s,s),null,null,"",B.cQ)}, +apO(a){var s,r,q,p=this +if(a)p.a.it() +s=p.a +r=s.hd() +if(r.gbl(r)!==B.jV){if(!a){if(r.gbl(r)!==B.ik)throw A.d(A.eM("While parsing a flow mapping, expected ',' or '}'.",r.gdi(r).gee(0).Om())) +s.it() +q=s.hd() +q.toString +r=q}if(r.gbl(r)===B.eO){s.it() +r=s.hd() +if(r.gbl(r)!==B.eP&&r.gbl(r)!==B.ik&&r.gbl(r)!==B.jV){p.b.push(B.z6) +return p.B4()}else{p.c=B.z6 +s=r.gdi(r) +s=A.eF(s.a,s.b) +q=s.b +return new A.mw(A.hP(s.a,q,q),null,null,"",B.cQ)}}else if(r.gbl(r)!==B.jV){p.b.push(B.a_T) +return p.B4()}}s.it() +p.c=p.b.pop() +return new A.vU(B.nn,r.gdi(r))}, +bdv(){return this.apO(!1)}, +apP(a){var s,r=this,q=null,p=r.a,o=p.hd() +o.toString +if(a){r.c=B.r1 +p=o.gdi(o) +p=A.eF(p.a,p.b) +o=p.b +return new A.mw(A.hP(p.a,o,o),q,q,"",B.cQ)}if(o.gbl(o)===B.eP){p.it() +s=p.hd() +if(s.gbl(s)!==B.ik&&s.gbl(s)!==B.jV){r.b.push(B.r1) +return r.B4()}}else s=o +r.c=B.r1 +p=s.gdi(s) +p=A.eF(p.a,p.b) +o=p.b +return new A.mw(A.hP(p.a,o,o),q,q,"",B.cQ)}, +bdw(){return this.apP(!1)}, +aqd(){var s,r,q,p,o,n=this,m=n.a,l=m.hd() +l.toString +s=A.a([],t.vG) +r=l +q=null +while(!0){if(!(r.gbl(r)===B.y4||r.gbl(r)===B.y5))break +if(r instanceof A.abT){if(q!=null)throw A.d(A.eM("Duplicate %YAML directive.",r.a)) +l=r.b +if(l!==1||r.c===0)throw A.d(A.eM("Incompatible YAML document. This parser only supports YAML 1.1 and 1.2.",r.a)) +else{p=r.c +if(p>2)$.cEn().$2("Warning: this parser only supports YAML 1.1 and 1.2.",r.a)}q=new A.aHt(l,p)}else if(r instanceof A.aaF){o=new A.Fv(r.b,r.c) +n.aW7(o,r.a) +s.push(o)}m.it() +l=m.hd() +l.toString +r=l}m=r.gdi(r) +m=A.eF(m.a,m.b) +l=m.b +n.a1x(new A.Fv("!","!"),A.hP(m.a,l,l),!0) +l=r.gdi(r) +l=A.eF(l.a,l.b) +m=l.b +n.a1x(new A.Fv("!!","tag:yaml.org,2002:"),A.hP(l.a,m,m),!0) +return new A.Ti(q,s,t.Th)}, +a1x(a,b,c){var s=this.d,r=a.a +if(s.aB(0,r)){if(c)return +throw A.d(A.eM("Duplicate %TAG directive.",b))}s.n(0,r,a)}, +aW7(a,b){return this.a1x(a,b,!1)}} +A.bwI.prototype={ +$1(a){var s=this.a +s.b=a.b +s.c=s.c.iz(0,a.a) +s=this.b.a +s.it() +s=s.hd() +s.toString +return s}, +$S:1816} +A.bwJ.prototype={ +$1(a){var s=this.a +s.a=a +s.c=s.c.iz(0,a.a) +s=this.b.a +s.it() +s=s.hd() +s.toString +return s}, +$S:1817} +A.ib.prototype={ +k(a){return this.a}} +A.bDq.prototype={ +gao2(){var s,r=this.c.hA() +if(r==null)return!1 +switch(r){case 45:case 59:case 47:case 58:case 64:case 38:case 61:case 43:case 36:case 46:case 126:case 63:case 42:case 39:case 40:case 41:case 37:return!0 +default:if(!(r>=48&&r<=57))if(!(r>=97&&r<=122))s=r>=65&&r<=90 +else s=!0 +else s=!0 +return s}}, +gb86(){if(!this.ganZ())return!1 +switch(this.c.hA()){case 44:case 91:case 93:case 123:case 125:return!1 +default:return!0}}, +ganX(){var s=this.c.hA() +return s!=null&&s>=48&&s<=57}, +gb88(){var s,r=this.c.hA() +if(r==null)return!1 +if(!(r>=48&&r<=57))if(!(r>=97&&r<=102))s=r>=65&&r<=70 +else s=!0 +else s=!0 +return s}, +gb8a(){var s,r=this.c.hA() +if(r==null)return!1 +switch(r){case 10:case 13:case 65279:return!1 +case 9:case 133:return!0 +default:if(!(r>=32&&r<=126))if(!(r>=160&&r<=55295))if(!(r>=57344&&r<=65533))s=r>=65536&&r<=1114111 +else s=!0 +else s=!0 +else s=!0 +return s}}, +ganZ(){var s,r=this.c.hA() +if(r==null)return!1 +switch(r){case 10:case 13:case 65279:case 32:return!1 +case 133:return!0 +default:if(!(r>=32&&r<=126))if(!(r>=160&&r<=55295))if(!(r>=57344&&r<=65533))s=r>=65536&&r<=1114111 +else s=!0 +else s=!0 +else s=!0 +return s}}, +it(){var s,r,q,p=this +if(p.e)throw A.d(A.a0("Out of tokens.")) +if(!p.w)p.alr() +s=p.f +r=s.b +if(r===s.c)A.C(A.a0("No element")) +q=J.aS(s.a,r) +if(q==null)q=s.$ti.h("mt.E").a(q) +J.id(s.a,s.b,null) +s.b=(s.b+1&J.bn(s.a)-1)>>>0 +p.w=!1;++p.r +p.e=q.gbl(q)===B.m6 +return q}, +hd(){var s,r=this +if(r.e)return null +if(!r.w)r.alr() +s=r.f +return s.ga2(s)}, +alr(){var s,r,q=this +for(s=q.f,r=q.z;!0;){if(!s.gad(s)){q.asg() +if(s.gA(0)===0)A.C(A.dB()) +if(J.d14(s.i(0,s.gA(0)-1))===B.m6)break +if(!B.b.ef(r,new A.bDr(q)))break}q.b0W()}q.w=!0}, +b0W(){var s,r,q,p,o,n,m=this +if(!m.d){m.d=!0 +s=m.c +s=A.eF(s.f,s.c) +r=s.b +m.f.od(0,new A.hv(B.btQ,A.hP(s.a,r,r))) +return}m.bgK() +m.asg() +s=m.c +m.Uj(s.at) +if(s.c===s.b.length){m.Uj(-1) +m.xY() +m.y=!1 +s=A.eF(s.f,s.c) +r=s.b +m.f.od(0,new A.hv(B.m6,A.hP(s.a,r,r))) +return}if(s.at===0){if(s.hA()===37){m.Uj(-1) +m.xY() +m.y=!1 +q=m.bgE() +if(q!=null)m.f.od(0,q) +return}if(m.Sq(3)){if(s.mm(0,"---")){m.aln(B.y6) +return}if(s.mm(0,"...")){m.aln(B.y7) +return}}}switch(s.hA()){case 91:m.alp(B.Zp) +return +case 123:m.alp(B.Zm) +return +case 93:m.alo(B.jU) +return +case 125:m.alo(B.jV) +return +case 44:m.xY() +m.y=!0 +m.AB(B.ik) +return +case 42:m.alk(!1) +return +case 38:m.b0T() +return +case 33:m.KS() +m.y=!1 +r=s.c +if(s.hK(1)===60){s.f6(s.f5()) +s.f6(s.f5()) +p=m.ar9() +s.wb(">") +o=""}else{o=m.bgI() +if(o.length>1&&B.c.aC(o,"!")&&B.c.eV(o,"!"))p=m.bgJ(!1) +else{p=m.a5H(!1,o) +if(p.length===0){o=null +p="!"}else o="!"}}m.f.od(0,new A.Fw(s.nu(new A.oQ(r)),o,p)) +return +case 39:m.alq(!0) +return +case 34:m.b0V() +return +case 124:if(m.z.length!==1)m.Sp() +m.alm(!0) +return +case 62:if(m.z.length!==1)m.Sp() +m.b0U() +return +case 37:case 64:case 96:m.Sp() +break +case 45:if(m.Km(1))m.RL() +else{if(m.z.length===1){if(!m.y)A.C(A.eM("Block sequence entries are not allowed here.",s.gqm())) +m.a5C(s.at,B.Zo,A.eF(s.f,s.c))}m.xY() +m.y=!0 +m.AB(B.jW)}return +case 63:if(m.Km(1))m.RL() +else{r=m.z +if(r.length===1){if(!m.y)A.C(A.eM("Mapping keys are not allowed here.",s.gqm())) +m.a5C(s.at,B.qn,A.eF(s.f,s.c))}m.y=r.length===1 +m.AB(B.eO)}return +case 58:if(m.z.length!==1){s=m.f +s=!s.gad(s)}else s=!1 +if(s){s=m.f +n=s.gP(s) +if(n.gbl(n)!==B.jU)if(n.gbl(n)!==B.jV)if(n.gbl(n)===B.Zn){s=t.zN.a(n).c +s=s===B.Xb||s===B.Xa}else s=!1 +else s=!0 +else s=!0 +if(s){m.als() +return}}if(m.Km(1))m.RL() +else m.als() +return +default:if(!m.gb8a())m.Sp() +m.RL() +return}}, +Sp(){return this.c.aa3(0,"Unexpected character.",1)}, +asg(){var s,r,q,p,o,n,m,l,k,j,i,h=this +for(s=h.z,r=h.c,q=h.f,p=r.f,o=0;n=s.length,o=a)return +s.push(a) +s=c.b +r=new A.hv(b,A.hP(c.a,s,s)) +s=q.f +if(d==null)s.od(0,r) +else s.eu(s,d-q.r,r)}, +a5C(a,b,c){return this.ar1(a,b,c,null)}, +Uj(a){var s,r,q,p,o,n,m=this +if(m.z.length!==1)return +for(s=m.x,r=m.f,q=m.c,p=q.f;B.b.gP(s)>a;){o=q.c +new A.lw(p,o).o7(p,o) +n=new A.i8(p,o,o) +n.kI(p,o,o) +r.od(0,new A.hv(B.il,n)) +s.pop()}}, +aln(a){var s,r,q=this +q.Uj(-1) +q.xY() +q.y=!1 +s=q.c +r=s.c +s.f6(s.f5()) +s.f6(s.f5()) +s.f6(s.f5()) +q.f.od(0,new A.hv(a,s.nu(new A.oQ(r))))}, +alp(a){var s=this +s.KS() +s.z.push(null) +s.y=!0 +s.AB(a)}, +alo(a){var s=this +s.xY() +s.aZU() +s.y=!1 +s.AB(a)}, +als(){var s,r,q,p,o,n=this,m=n.z,l=B.b.gP(m) +if(l!=null){s=n.f +r=l.a +q=n.r +p=l.b +o=p.b +s.eu(s,r-q,new A.hv(B.eO,A.hP(p.a,o,o))) +n.ar1(l.d,B.qn,p,r) +m[m.length-1]=null +n.y=!1}else if(m.length===1){if(!n.y)throw A.d(A.eM("Mapping values are not allowed here. Did you miss a colon earlier?",n.c.gqm())) +m=n.c +n.a5C(m.at,B.qn,A.eF(m.f,m.c)) +n.y=!0}else if(n.y){n.y=!1 +n.AB(B.eO)}n.AB(B.eP)}, +AB(a){var s=this.c,r=s.c +s.f6(s.f5()) +this.f.od(0,new A.hv(a,s.nu(new A.oQ(r))))}, +alk(a){var s=this +s.KS() +s.y=!1 +s.f.od(0,s.bgC(a))}, +b0T(){return this.alk(!0)}, +alm(a){var s=this +s.xY() +s.y=!0 +s.f.od(0,s.bgD(a))}, +b0U(){return this.alm(!1)}, +alq(a){var s=this +s.KS() +s.y=!1 +s.f.od(0,s.bgG(a))}, +b0V(){return this.alq(!1)}, +RL(){var s=this +s.KS() +s.y=!1 +s.f.od(0,s.bgH())}, +bgK(){var s,r,q,p,o,n,m=this +for(s=m.z,r=m.c,q=!1;!0;q=!0){if(r.at===0)r.Dz("\ufeff") +p=!q +while(!0){if(r.hA()!==32)o=(s.length!==1||p)&&r.hA()===9 +else o=!0 +if(!o)break +r.f6(r.f5())}if(r.hA()===9)r.aa3(0,"Tab characters are not allowed as indentation.",1) +m.a5Y() +n=r.hK(0) +if(n===13||n===10){m.TU() +if(s.length===1)m.y=!0}else break}}, +bgE(){var s,r,q,p,o,n,m,l,k,j=this,i="Expected whitespace.",h=j.c,g=new A.oQ(h.c) +h.f6(h.f5()) +s=j.bgF() +if(s==="YAML"){j.L_() +r=j.ara() +h.wb(".") +q=j.ara() +p=new A.abT(h.nu(g),r,q)}else if(s==="TAG"){j.L_() +o=j.ar8(!0) +if(!j.b87(0))A.C(A.eM(i,h.gqm())) +j.L_() +n=j.ar9() +if(!j.Sq(0))A.C(A.eM(i,h.gqm())) +p=new A.aaF(h.nu(g),o,n)}else{m=h.nu(g) +$.cEn().$2("Warning: unknown directive.",m) +m=h.b.length +while(!0){if(h.c!==m){l=h.hK(0) +k=l===13||l===10}else k=!0 +if(!!k)break +h.f6(h.f5())}return null}j.L_() +j.a5Y() +if(!(h.c===h.b.length||j.anW(0)))throw A.d(A.eM("Expected comment or line break after directive.",h.nu(g))) +j.TU() +return p}, +bgF(){var s,r=this.c,q=r.c +for(;this.ganZ();)r.f6(r.f5()) +s=r.b0(0,q) +if(s.length===0)throw A.d(A.eM("Expected directive name.",r.gqm())) +else if(!this.Sq(0))throw A.d(A.eM("Unexpected character in directive name.",r.gqm())) +return s}, +ara(){var s,r,q=this.c,p=q.c +while(!0){s=q.hA() +if(!(s!=null&&s>=48&&s<=57))break +q.f6(q.f5())}r=q.b0(0,p) +if(r.length===0)throw A.d(A.eM("Expected version number.",q.gqm())) +return A.cA(r,null)}, +bgC(a){var s,r,q,p,o=this.c,n=new A.oQ(o.c) +o.f6(o.f5()) +s=o.c +for(;this.gb86();)o.f6(o.f5()) +r=o.b0(0,s) +q=o.hA() +if(r.length!==0)p=!this.Sq(0)&&q!==63&&q!==58&&q!==44&&q!==93&&q!==125&&q!==37&&q!==64&&q!==96 +else p=!0 +if(p)throw A.d(A.eM("Expected alphanumeric character.",o.gqm())) +if(a)return new A.BO(o.nu(n),r) +else return new A.ZM(o.nu(n),r)}, +ar8(a){var s,r,q,p,o=this.c +o.wb("!") +s=new A.bu("!") +r=o.c +for(;this.gao2();)o.f6(o.f5()) +q=s.a+=o.b0(0,r) +if(o.hA()===33){p=o.f5() +o.f6(p) +o=s.a=q+A.cm(p)}else{if(a&&(q.charCodeAt(0)==0?q:q)!=="!")o.wb("!") +o=q}return o.charCodeAt(0)==0?o:o}, +bgI(){return this.ar8(!1)}, +a5H(a,b){var s,r,q,p +if((b==null?0:b.length)>1){b.toString +B.c.b0(b,1)}s=this.c +r=s.c +q=s.hA() +while(!0){if(!this.gao2())if(a)p=q===44||q===91||q===93 +else p=!1 +else p=!0 +if(!p)break +s.f6(s.f5()) +q=s.hA()}s=s.b0(0,r) +return A.pM(s,0,s.length,B.ai,!1)}, +ar9(){return this.a5H(!0,null)}, +bgJ(a){return this.a5H(a,null)}, +bgD(a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1="0 may not be used as an indentation indicator.",a2=a0.c,a3=new A.oQ(a2.c) +a2.f6(a2.f5()) +s=a2.hA() +r=s===43 +if(r||s===45){q=r?B.yF:B.yE +a2.f6(a2.f5()) +if(a0.ganX()){if(a2.hA()===48)throw A.d(A.eM(a1,a2.nu(a3))) +p=a2.f5() +a2.f6(p) +o=p-48}else o=0}else if(a0.ganX()){if(a2.hA()===48)throw A.d(A.eM(a1,a2.nu(a3))) +p=a2.f5() +a2.f6(p) +o=p-48 +s=a2.hA() +r=s===43 +if(r||s===45){q=r?B.yF:B.yE +a2.f6(a2.f5())}else q=B.a_d}else{q=B.a_d +o=0}a0.L_() +a0.a5Y() +r=a2.b +n=r.length +if(!(a2.c===n||a0.anW(0)))throw A.d(A.eM("Expected comment or line break.",a2.gqm())) +a0.TU() +if(o!==0){m=a0.x +l=B.b.gP(m)>=0?B.b.gP(m)+o:o}else l=0 +k=a0.ar7(l) +l=k.a +j=k.b +i=new A.bu("") +h=new A.oQ(a2.c) +m=!a4 +g="" +f=!1 +e="" +while(!0){d=a2.at +if(!(d===l&&a2.c!==n))break +if(d===0){s=a2.hK(3) +if(s==null||s===32||s===9||s===13||s===10)d=a2.mm(0,"---")||a2.mm(0,"...") +else d=!1}else d=!1 +if(d)break +s=a2.hK(0) +c=s===32||s===9 +if(m&&g.length!==0&&!f&&!c){if(j.length===0){e+=A.cm(32) +i.a=e}}else e=i.a=e+g +i.a=e+j +s=a2.hK(0) +f=s===32||s===9 +b=a2.c +while(!0){if(a2.c!==n){s=a2.hK(0) +e=s===13||s===10}else e=!0 +if(!!e)break +a2.f6(a2.f5())}h=a2.c +e=i.a+=B.c.R(r,b,h) +a=new A.oQ(h) +g=h!==n?a0.EV():"" +k=a0.ar7(l) +l=k.a +j=k.b +h=a}if(q!==B.yE){r=e+g +i.a=r}else r=e +if(q===B.yF)r=i.a=r+j +a2=a2.a0v(a3,h) +n=a4?B.bkp:B.bko +return new A.F5(a2,r.charCodeAt(0)==0?r:r,n)}, +ar7(a){var s,r,q,p,o,n,m=new A.bu("") +for(s=this.c,r=a===0,q=!r,p=0;!0;){while(!0){if(!((!q||s.atp)p=o +n=s.hK(0) +if(!(n===13||n===10))break +m.a+=this.EV()}if(r){s=this.x +a=p>>0)+e.aWe(i)}if(k>=55296&&k<=57343||k>1114111)throw A.d(A.eM("Invalid Unicode character escape code.",c.nu(m))) +a.a+=A.cm(k)}}else{i=c.f5() +c.f6(i) +a.a+=A.cm(i)}}}p=c.hA() +if(p===(a0?39:34))break +h=new A.bu("") +g=new A.bu("") +f="" +while(!0){q=c.hK(0) +if(!(q===32||q===9)){q=c.hK(0) +p=q===13||q===10}else p=!0 +if(!p)break +q=c.hK(0) +if(q===32||q===9)if(!o){i=c.f5() +c.f6(i) +h.a+=A.cm(i)}else c.f6(c.f5()) +else if(!o){h.a="" +f=e.EV() +o=!0}else g.a+=e.EV()}if(o)if(f.length!==0&&g.a.length===0)a.a+=A.cm(32) +else a.a+=g.k(0) +else{a.a+=h.k(0) +h.a=""}}c.f6(c.f5()) +c=c.nu(new A.oQ(b)) +b=a.a +s=a0?B.Xb:B.Xa +return new A.F5(c,b.charCodeAt(0)==0?b:b,s)}, +bgH(){var s,r,q,p,o,n,m,l=this,k=l.c,j=k.c,i=new A.oQ(j),h=new A.bu(""),g=new A.bu(""),f=B.b.gP(l.x)+1 +for(s=l.z,r="",q="";!0;){if(k.at===0){p=k.hK(3) +if(p==null||p===32||p===9||p===13||p===10)o=k.mm(0,"---")||k.mm(0,"...") +else o=!1}else o=!1 +if(o)break +if(k.hA()===35)break +if(l.Km(0))if(r.length!==0){if(q.length===0)h.a+=A.cm(32) +else h.a+=q +r="" +q=""}else{h.a+=g.k(0) +g.a=""}n=k.c +for(;l.Km(0);)k.f6(k.f5()) +i=k.c +h.a+=B.c.R(k.b,n,i) +i=new A.oQ(i) +p=k.hK(0) +if(!(p===32||p===9)){p=k.hK(0) +o=!(p===13||p===10)}else o=!1 +if(o)break +while(!0){p=k.hK(0) +if(!(p===32||p===9)){p=k.hK(0) +o=p===13||p===10}else o=!0 +if(!o)break +p=k.hK(0) +if(p===32||p===9){o=r.length===0 +if(!o&&k.at=32&&r<=126))if(!(r>=160&&r<=55295))if(!(r>=57344&&r<=65533))s=r>=65536&&r<=1114111 +else s=!0 +else s=!0 +else s=!0 +else s=!1 +return s}}, +aWe(a){if(a<=57)return a-48 +if(a<=70)return 10+a-65 +return 10+a-97}, +L_(){var s,r=this.c +while(!0){s=r.hK(0) +if(!(s===32||s===9))break +r.f6(r.f5())}}, +a5Y(){var s,r,q,p=this.c +if(p.hA()!==35)return +s=p.b.length +while(!0){if(p.c!==s){r=p.hK(0) +q=r===13||r===10}else q=!0 +if(!!q)break +p.f6(p.f5())}}} +A.bDr.prototype={ +$1(a){return a!=null&&a.a===this.a.r}, +$S:1818} +A.YE.prototype={} +A.adn.prototype={ +H(){return"_Chomping."+this.b}} +A.LO.prototype={ +k(a){return this.a}} +A.apt.prototype={ +k(a){return this.a}} +A.hv.prototype={ +k(a){return this.a.H()}, +gbl(a){return this.a}, +gdi(a){return this.b}} +A.abT.prototype={ +gbl(a){return B.y4}, +k(a){return"VERSION_DIRECTIVE "+this.b+"."+this.c}, +$ihv:1, +gdi(a){return this.a}} +A.aaF.prototype={ +gbl(a){return B.y5}, +k(a){return"TAG_DIRECTIVE "+this.b+" "+this.c}, +$ihv:1, +gdi(a){return this.a}} +A.BO.prototype={ +gbl(a){return B.btS}, +k(a){return"ANCHOR "+this.b}, +$ihv:1, +gdi(a){return this.a}} +A.ZM.prototype={ +gbl(a){return B.btR}, +k(a){return"ALIAS "+this.b}, +$ihv:1, +gdi(a){return this.a}} +A.Fw.prototype={ +gbl(a){return B.btT}, +k(a){return"TAG "+A.r(this.b)+" "+this.c}, +$ihv:1, +gdi(a){return this.a}} +A.F5.prototype={ +gbl(a){return B.Zn}, +k(a){return"SCALAR "+this.c.k(0)+' "'+this.b+'"'}, +$ihv:1, +gdi(a){return this.a}} +A.j_.prototype={ +H(){return"TokenType."+this.b}} +A.Ti.prototype={ +k(a){return"("+A.r(this.a)+", "+A.r(this.b)+")"}} +A.cuc.prototype={ +$2(a,b){a=b.bB6(0,a) +A.eP(a)}, +$1(a){return this.$2(a,null)}, +$S:1819} +A.aK_.prototype={ +k(a){var s=this.a +return s.k(s)}} +A.aHt.prototype={ +k(a){return"%YAML "+this.a+"."+this.b}} +A.Fv.prototype={ +k(a){return"%TAG "+this.a+" "+this.b}} +A.aci.prototype={} +A.x9.prototype={} +A.acj.prototype={ +gj(a){return this}, +gek(a){return J.dP(J.GV(this.b.a),new A.bPX(),t.z)}, +i(a,b){var s=J.aS(this.b.a,b) +return s==null?null:J.lo(s)}, +$iaN:1} +A.bPX.prototype={ +$1(a){t.ii.a(a) +return a.gj(a)}, +$S:83} +A.aK0.prototype={ +gj(a){return this}, +gA(a){return J.bn(this.b.a)}, +sA(a,b){throw A.d(A.aq("Cannot modify an unmodifiable List"))}, +i(a,b){return J.lo(J.OG(this.b.a,b))}, +n(a,b,c){throw A.d(A.aq("Cannot modify an unmodifiable List"))}, +$iaO:1, +$iB:1, +$ix:1} +A.nx.prototype={ +k(a){return J.cw(this.b)}, +gj(a){return this.b}} +A.b_4.prototype={} +A.b_5.prototype={} +A.b_6.prototype={} +A.csT.prototype={ +$0(){return A.k2()}, +$S:0} +A.csS.prototype={ +$0(){var s,r,q,p,o=null,n=$.d0E(),m=self,l=new A.b43(m.window.location.href),k=$.GR() +k.n(0,l,B.dk) +A.nf(l,B.dk,!1) +$.d1P=l +l=new A.hZ("com.ryanheise.audio_session",B.b0,n) +l.vg(new A.ann(l).gaaN()) +l=$.cCq() +s=new A.bbs() +k.n(0,s,l) +A.nf(s,l,!1) +$.d3t=s +s=m.window.navigator +l=$.cCv() +s=new A.bcF(s) +k.n(0,s,l) +A.nf(s,l,!1) +$.d4p=s +s=$.cVZ() +A.nf(s,$.amh(),!1) +$.d6W=s +k.n(0,new A.biC(),B.dk) +s=$.cCz() +l=new A.bmI() +k.n(0,l,s) +l.c=new A.bmV() +r=m.document.querySelector("#__image_picker_web-file-input") +if(r==null){q=m.document.createElement("flt-image-picker-inputs") +q.id="__image_picker_web-file-input" +p=m.document.body +p.toString +A.L(p,"append",[q]) +r=q}l.b=r +A.nf(l,s,!0) +$.d8g=l +l=$.cCA() +s=new A.bo7(A.N(t.N,t.zi)) +k.n(0,s,l) +A.nf(s,l,!1) +$.d8K=s +l=$.cCF() +s=new A.azL(new A.h1(o,o,t.i8),new A.h1(o,o,t.wN)) +k.n(0,s,l) +A.nf(s,l,!1) +$.dac=s +l=$.GF +l.toString +s=$.cCH() +l=new A.bw2(l) +k.n(0,l,s) +A.nf(l,s,!1) +$.daL=l +$.cYB() +$.cYC() +$.cYD() +l=$.cX1() +s=new A.bOJ() +k.n(0,s,l) +A.nf(s,l,!1) +l=A.cNs() +m=m.window +m=m.navigator +s=$.cCQ() +m=new A.bFx(l,m) +k.n(0,m,s) +A.nf(m,s,!1) +$.ddo=m +m=$.cCS() +s=new A.bFG() +k.n(0,s,m) +A.nf(s,m,!0) +$.ddq=s +new A.hZ("system_theme",B.b0,n).vg(new A.aFN().gaaN()) +m=A.cNs() +A.nf(m,$.cut(),!0) +$.dge=m +$.amv() +$.tq().D1("__url_launcher::link",A.dto(),!1) +m=$.cCZ() +l=new A.bOj(A.N(t.S,t.Ad)) +k.n(0,l,m) +A.nf(l,m,!0) +$.dgl=l +$.dgq.b=A.cBA("wakelock_plus","assets/no_sleep.js") +l=$.cD_() +m=new A.bOD() +k.n(0,m,l) +A.nf(m,l,!0) +$.dgp=m +$.cTC=n.gbx6()}, +$S:0};(function aliases(){var s=A.aVR.prototype +s.aSk=s.V +s.aSq=s.d6 +s.aSo=s.de +s.aSt=s.ba +s.aSr=s.jt +s.aSp=s.qE +s.aSs=s.ah +s.aSn=s.qd +s.aSm=s.yq +s.aSl=s.nG +s=A.Q1.prototype +s.aO5=s.rZ +s=A.aeg.prototype +s.ahE=s.dv +s=A.Rm.prototype +s.aOC=s.a2l +s=A.iq.prototype +s.aPw=s.Zx +s.aPv=s.Vq +s.agZ=s.dN +s.Jb=s.Bp +s.a0N=s.cI +s.ah1=s.uT +s.ah_=s.qj +s.ah0=s.CT +s=A.jP.prototype +s.aPs=s.CT +s.aPt=s.qA +s.vk=s.cI +s.aPu=s.uT +s.E4=s.qj +s=A.aBW.prototype +s.vl=s.ll +s.Jc=s.m +s=A.a1H.prototype +s.a0G=s.GM +s.aOc=s.adY +s.aOa=s.ph +s.aOb=s.a9S +s=A.asK.prototype +s.agw=s.aO +s=A.yG.prototype +s.aOk=s.m +s=J.RR.prototype +s.aOI=s.k +s.aOH=s.E +s=J.DU.prototype +s.aOX=s.k +s=A.me.prototype +s.aOL=s.aB8 +s.aOM=s.aBa +s.aOO=s.aBc +s.aON=s.aBb +s=A.AR.prototype +s.aRu=s.o8 +s=A.iG.prototype +s.Ji=s.l0 +s.E8=s.lX +s.ahB=s.r6 +s=A.YN.prototype +s.aSH=s.u3 +s=A.B3.prototype +s.aRF=s.Ek +s.aRG=s.alW +s.aRI=s.arI +s.aRH=s.tM +s=A.a2.prototype +s.aP_=s.wW +s.aOY=s.V +s.aOZ=s.hX +s.agH=s.dS +s=A.aT.prototype +s.aO8=s.bwQ +s=A.YP.prototype +s.aSI=s.aO +s=A.B.prototype +s.r2=s.kW +s.aOJ=s.aMt +s.aOK=s.k +s=A.S.prototype +s.r3=s.l +s.fP=s.k +s=A.zb.prototype +s.aOP=s.i +s.aOQ=s.n +s=A.XF.prototype +s.ahF=s.n +s=A.v.prototype +s.aNW=s.l +s.aNX=s.k +s=A.adj.prototype +s.aRx=s.m +s=A.acC.prototype +s.aRq=s.m +s=A.akO.prototype +s.aTg=s.m +s=A.al5.prototype +s.aTz=s.m +s=A.al6.prototype +s.aTA=s.m +s=A.zr.prototype +s.aP7=s.td +s.aP6=s.a9i +s.aP5=s.a9h +s=A.aB3.prototype +s.agY=s.Qn +s=A.a8s.prototype +s.Jg=s.wF +s=A.a_t.prototype +s.aNJ=s.jJ +s.aNI=s.buR +s=A.acP.prototype +s.aRr=s.m +s=A.a_B.prototype +s.agn=s.jJ +s=A.Ua.prototype +s.ahc=s.adS +s.aPF=s.aA +s.aPG=s.ar +s=A.df.prototype +s.ags=s.pn +s.QJ=s.uJ +s.a0C=s.ia +s.aNZ=s.wD +s.aO_=s.O7 +s.agt=s.oD +s.aNY=s.Xa +s.aO0=s.Zm +s=A.t3.prototype +s.aQX=s.O9 +s=A.azT.prototype +s.aPh=s.bC6 +s.aPg=s.bC_ +s=A.Dp.prototype +s.aOm=s.CJ +s.Ja=s.cI +s=A.yT.prototype +s.aOt=s.hk +s.aOu=s.CJ +s.aOs=s.bw8 +s.aOv=s.uJ +s.aOw=s.ia +s.aOx=s.wD +s.aOy=s.bDQ +s.aOz=s.bGl +s=A.P4.prototype +s.aNT=s.ia +s.aNU=s.adg +s=A.cR.prototype +s.QI=s.P0 +s=A.BU.prototype +s.agj=s.O +s.agk=s.fW +s=A.a6O.prototype +s.aPr=s.ah +s=A.a_7.prototype +s.DW=s.m +s=A.eA.prototype +s.aO9=s.ah +s=A.akL.prototype +s.aTd=s.m +s=A.akM.prototype +s.aTe=s.m +s=A.akN.prototype +s.aTf=s.m +s=A.akP.prototype +s.aTh=s.m +s=A.all.prototype +s.aTN=s.aA +s.aTO=s.ar +s=A.alt.prototype +s.aU2=s.m +s=A.Z6.prototype +s.aU3=s.m +s=A.Z7.prototype +s.aU4=s.m +s=A.akQ.prototype +s.aTi=s.m +s=A.alj.prototype +s.aTJ=s.aA +s.aTK=s.ar +s=A.ao3.prototype +s.aNN=s.nP +s.aNO=s.Cr +s.aNQ=s.adR +s.aNP=s.rV +s=A.ka.prototype +s.agr=s.a3 +s.vi=s.O +s.f4=s.m +s.tt=s.ab +s=A.bm.prototype +s.oQ=s.sj +s=A.bh.prototype +s.aOd=s.hL +s=A.tL.prototype +s.aOe=s.hL +s=A.Rj.prototype +s.aOB=s.zk +s.aOA=s.bu2 +s=A.mh.prototype +s.agK=s.mk +s=A.Qy.prototype +s.aOi=s.mk +s.a0I=s.jB +s.aOg=s.kM +s.aOh=s.m +s=A.zs.prototype +s.aPc=s.m +s=A.Bl.prototype +s.ahK=s.l_ +s=A.em.prototype +s.agB=s.UH +s.E_=s.mk +s.QO=s.m +s=A.fg.prototype +s.E0=s.lA +s.agV=s.Cl +s.agW=s.a5 +s.lW=s.m +s.aPj=s.xq +s.agX=s.l_ +s=A.TI.prototype +s.aPy=s.lA +s.ah3=s.kM +s.ah4=s.kg +s.aPz=s.m +s=A.mB.prototype +s.aQY=s.mk +s=A.ajn.prototype +s.aSK=s.jB +s.aSL=s.kg +s=A.acV.prototype +s.aRs=s.lA +s.aRt=s.m +s=A.akG.prototype +s.aT8=s.m +s=A.akS.prototype +s.aTk=s.m +s=A.akI.prototype +s.aT9=s.m +s=A.akJ.prototype +s.aTb=s.a8 +s.aTa=s.m +s=A.alh.prototype +s.aTG=s.m +s=A.ali.prototype +s.aTH=s.aA +s.aTI=s.ar +s=A.akR.prototype +s.aTj=s.m +s=A.Dm.prototype +s.aOl=s.rp +s=A.al1.prototype +s.aTv=s.a8 +s.aTu=s.fS +s=A.akF.prototype +s.aT7=s.m +s=A.al0.prototype +s.aTt=s.m +s=A.al2.prototype +s.aTw=s.m +s=A.wd.prototype +s.vj=s.m +s=A.alu.prototype +s.aU5=s.m +s=A.al9.prototype +s.aTD=s.m +s=A.Er.prototype +s.aPn=s.rp +s=A.alH.prototype +s.aUk=s.m +s=A.alI.prototype +s.aUl=s.m +s=A.X2.prototype +s.aRy=s.aI +s=A.akK.prototype +s.aTc=s.m +s=A.al4.prototype +s.aTy=s.m +s=A.alg.prototype +s.aTF=s.m +s=A.alk.prototype +s.aTL=s.aA +s.aTM=s.ar +s=A.alp.prototype +s.aTW=s.aA +s.aTY=s.ar +s=A.ahe.prototype +s.aRV=s.m +s=A.ai8.prototype +s.aSu=s.m +s=A.aia.prototype +s.aSv=s.m +s=A.aib.prototype +s.aSx=s.b1 +s.aSw=s.c5 +s.aSy=s.m +s=A.akY.prototype +s.aTq=s.m +s=A.a93.prototype +s.aQE=s.a0n +s=A.aln.prototype +s.aTR=s.aA +s.aTS=s.ar +s=A.alq.prototype +s.aTV=s.aA +s.aTX=s.ar +s=A.aly.prototype +s.aU9=s.m +s=A.al7.prototype +s.aTB=s.m +s=A.al8.prototype +s.aTC=s.m +s=A.akT.prototype +s.aTl=s.m +s=A.VI.prototype +s.aQZ=s.rp +s=A.alD.prototype +s.aUf=s.b1 +s.aUe=s.c5 +s.aUg=s.m +s=A.W3.prototype +s.aR2=s.m +s=A.ajQ.prototype +s.aSN=s.m +s=A.fF.prototype +s.aNG=s.W +s.aNF=s.S +s=A.a_S.prototype +s.agp=s.DT +s.ago=s.B +s=A.eX.prototype +s.QW=s.j3 +s.QX=s.j4 +s=A.iS.prototype +s.E1=s.j3 +s.E2=s.j4 +s=A.lu.prototype +s.a0E=s.j3 +s.a0F=s.j4 +s=A.vv.prototype +s.agq=s.m +s=A.h5.prototype +s.agx=s.B +s=A.aLP.prototype +s.ahC=s.m +s=A.Ju.prototype +s.agC=s.a3 +s.aOE=s.GW +s.agD=s.O +s.aOD=s.SI +s=A.ki.prototype +s.agF=s.l +s=A.lJ.prototype +s.aQH=s.l +s=A.Mo.prototype +s.aQN=s.jN +s=A.Ul.prototype +s.aQ1=s.aaO +s.aQ3=s.aaY +s.aQ2=s.aaR +s.aQ0=s.a9O +s=A.aG.prototype +s.aNV=s.l +s=A.hf.prototype +s.J9=s.k +s=A.J.prototype +s.ahg=s.bo +s.ahe=s.bb +s.ahf=s.bh +s.ahd=s.bi +s.Je=s.il +s.xv=s.a9 +s.a0S=s.d_ +s.aPI=s.Hp +s.tv=s.es +s.aPH=s.hh +s=A.aho.prototype +s.aRX=s.aA +s.aRY=s.ar +s=A.ahr.prototype +s.aRZ=s.aA +s.aS_=s.ar +s=A.ahs.prototype +s.aS0=s.aA +s.aS1=s.ar +s=A.Lx.prototype +s.ahh=s.cX +s.a0T=s.bJ +s=A.ahu.prototype +s.aS3=s.m +s=A.iP.prototype +s.aOT=s.JW +s.agG=s.m +s.aOW=s.a_2 +s.aOU=s.aA +s.aOV=s.ar +s=A.kJ.prototype +s.xs=s.nN +s.aO3=s.aA +s.aO4=s.ar +s=A.u8.prototype +s.aPi=s.nN +s=A.ahD.prototype +s.aS4=s.aA +s.aS5=s.ar +s=A.dT.prototype +s.E3=s.ar +s=A.H.prototype +s.QS=s.lM +s.ig=s.m +s.ahi=s.lB +s.ea=s.aA +s.e5=s.ar +s.a0V=s.a9 +s.aPM=s.d_ +s.ahj=s.aV +s.aPK=s.hh +s.aPN=s.PY +s.kH=s.ji +s.QR=s.yp +s.Au=s.lm +s.a0U=s.yh +s.aPL=s.n8 +s.a0W=s.hL +s.xw=s.fY +s=A.aZ.prototype +s.ahl=s.lN +s=A.ap.prototype +s.a0D=s.abe +s.aO7=s.F +s.aO6=s.NW +s.agu=s.lN +s.QL=s.d0 +s=A.wC.prototype +s.QQ=s.Ea +s=A.oS.prototype +s.aRK=s.UU +s=A.LB.prototype +s.aPT=s.bo +s.aPR=s.bb +s.aPS=s.bh +s.aPQ=s.bi +s.aPP=s.cX +s.aPU=s.bJ +s=A.ahI.prototype +s.aS6=s.aA +s.aS7=s.ar +s=A.aju.prototype +s.aSM=s.ar +s=A.l4.prototype +s.a10=s.bo +s.QT=s.bb +s.a1_=s.bh +s.a0Z=s.bi +s.aPW=s.cX +s.E6=s.bJ +s.Jf=s.ej +s.aPV=s.hh +s.o6=s.aI +s=A.a8f.prototype +s.aPX=s.es +s=A.Lv.prototype +s.aPJ=s.bJ +s=A.ahK.prototype +s.Av=s.aA +s.vm=s.ar +s=A.ahL.prototype +s.aS8=s.il +s=A.a8g.prototype +s.ahm=s.aI +s=A.EX.prototype +s.a14=s.bo +s.a12=s.bb +s.a13=s.bh +s.a11=s.bi +s.ahn=s.aI +s.aPY=s.ej +s=A.ahj.prototype +s.aRW=s.m +s=A.ahO.prototype +s.ahH=s.aA +s.ahI=s.ar +s=A.Al.prototype +s.aQI=s.k +s=A.da.prototype +s.aPZ=s.nF +s=A.lL.prototype +s.aQJ=s.k +s=A.ahQ.prototype +s.aS9=s.aA +s.aSa=s.ar +s=A.a8k.prototype +s.aho=s.bJ +s=A.ahS.prototype +s.aSd=s.ar +s=A.A3.prototype +s.aQ_=s.acR +s=A.pH.prototype +s.aSf=s.aA +s.aSg=s.ar +s=A.iF.prototype +s.aRf=s.NX +s.aRe=s.hR +s=A.lH.prototype +s.aQm=s.aaH +s=A.Az.prototype +s.ahy=s.m +s=A.ang.prototype +s.agl=s.zv +s=A.UV.prototype +s.aQF=s.N6 +s.aQG=s.zi +s=A.hZ.prototype +s.aP4=s.fi +s=A.uG.prototype +s.aR_=s.eZ +s=A.cg.prototype +s.agi=s.m7 +s.aND=s.pr +s.aNC=s.a73 +s.aNE=s.Zi +s=A.ahH.prototype +s.ahG=s.iF +s=A.akC.prototype +s.aT5=s.m +s=A.akE.prototype +s.aT6=s.m +s=A.lq.prototype +s.o5=s.q +s=A.Dq.prototype +s.aOn=s.b_ +s=A.he.prototype +s.QZ=s.w4 +s=A.ahZ.prototype +s.ahJ=s.iF +s=A.akm.prototype +s.aST=s.nP +s.aSU=s.adR +s=A.akn.prototype +s.aSV=s.nP +s.aSW=s.Cr +s=A.ako.prototype +s.aSX=s.nP +s.aSY=s.Cr +s=A.akp.prototype +s.aT_=s.nP +s.aSZ=s.N6 +s=A.akq.prototype +s.aT0=s.nP +s=A.akr.prototype +s.aT1=s.nP +s.aT2=s.Cr +s.aT3=s.rV +s=A.akV.prototype +s.aTn=s.m +s=A.akW.prototype +s.aTo=s.a8 +s=A.aem.prototype +s.aRA=s.hR +s=A.aer.prototype +s.aRB=s.a8 +s=A.aes.prototype +s.aRC=s.m +s=A.aug.prototype +s.xt=s.bz0 +s.aOo=s.a84 +s=A.T1.prototype +s.agU=s.fI +s=A.TH.prototype +s.ah2=s.fI +s=A.Ij.prototype +s.a0H=s.fI +s=A.q9.prototype +s.aOp=s.W5 +s.aOr=s.lk +s.aOq=s.m +s=A.Xr.prototype +s.aRD=s.b1 +s.aRE=s.m +s=A.c.prototype +s.aRg=s.hL +s=A.T.prototype +s.an=s.a8 +s.bc=s.b1 +s.aQO=s.lM +s.aQP=s.C +s.jO=s.fS +s.dC=s.cL +s.ap=s.m +s.dH=s.c5 +s=A.aE.prototype +s.a0Y=s.b_ +s=A.bJ.prototype +s.a0L=s.lM +s.agA=s.he +s.a0K=s.iF +s.DZ=s.cI +s.aOj=s.Pa +s.agz=s.GL +s.mA=s.lH +s.QM=s.cL +s.agy=s.fS +s.DY=s.oH +s.QN=s.yK +s.a0J=s.c5 +s.DX=s.nf +s=A.a0U.prototype +s.QK=s.iF +s.aO1=s.a2T +s.aO2=s.nf +s=A.Vj.prototype +s.aQU=s.dN +s=A.mz.prototype +s.aQR=s.dN +s.aQT=s.oH +s.aQS=s.c5 +s=A.a7k.prototype +s.a0Q=s.dN +s.ah6=s.cI +s.aPA=s.Pb +s=A.mc.prototype +s.aOG=s.Pb +s.agE=s.wB +s=A.bO.prototype +s.r4=s.iF +s.nw=s.cI +s.E5=s.nf +s.ahk=s.fS +s.a0X=s.oH +s.aPO=s.Pa +s=A.qp.prototype +s.agL=s.mj +s.agM=s.mn +s.aPa=s.ni +s.aP9=s.iF +s.aPb=s.cI +s=A.RF.prototype +s.aOF=s.a8 +s=A.Hb.prototype +s.a0B=s.a8 +s=A.XB.prototype +s.aRJ=s.m +s=A.al3.prototype +s.aTx=s.m +s=A.dG.prototype +s.aQh=s.zr +s.aQe=s.Mx +s.aQ8=s.Mt +s.aQf=s.a9x +s.aQi=s.qN +s.aQc=s.ue +s.aQb=s.W7 +s.aQd=s.G3 +s.aQ9=s.BX +s.aQa=s.Mu +s.aQ7=s.u6 +s.aQ6=s.Vr +s.aQg=s.m +s=A.aVA.prototype +s.aSj=s.VH +s=A.ags.prototype +s.aRO=s.cL +s.aRP=s.m +s=A.agt.prototype +s.aRR=s.b1 +s.aRQ=s.c5 +s.aRS=s.m +s=A.ahR.prototype +s.aSb=s.aA +s.aSc=s.ar +s=A.l1.prototype +s.QP=s.hR +s=A.O5.prototype +s.aSe=s.aI +s=A.alo.prototype +s.aTT=s.aA +s.aTU=s.ar +s=A.agA.prototype +s.aRT=s.hR +s=A.al_.prototype +s.aTs=s.m +s=A.alA.prototype +s.aUb=s.m +s=A.it.prototype +s.bJ6=s.m +s=A.pr.prototype +s.aQ5=s.a9z +s=A.cV.prototype +s.ahp=s.sj +s=A.qY.prototype +s.aSh=s.uw +s.aSi=s.v_ +s=A.tf.prototype +s.aRv=s.UI +s.aRw=s.Zj +s.ahD=s.abk +s=A.Z5.prototype +s.aU0=s.b1 +s.aU_=s.c5 +s.aU1=s.m +s=A.Ta.prototype +s.aPq=s.zr +s.aPo=s.ue +s.aPp=s.m +s=A.hw.prototype +s.a16=s.M5 +s.aR8=s.zr +s.aR7=s.Mx +s.aR3=s.Mt +s.aR5=s.ue +s.aR6=s.G3 +s.aR4=s.BX +s.ahz=s.m +s=A.iA.prototype +s.aP8=s.Mu +s=A.NR.prototype +s.aRN=s.qN +s=A.ov.prototype +s.QU=s.m +s=A.OX.prototype +s.agm=s.V1 +s=A.fh.prototype +s.ahq=s.aA +s.ahr=s.rr +s.aQn=s.hR +s=A.ow.prototype +s.Jh=s.hR +s=A.aig.prototype +s.aSA=s.hR +s=A.F6.prototype +s.aQo=s.UV +s.QV=s.ro +s=A.nn.prototype +s.ahs=s.tV +s.aQy=s.Am +s.aQs=s.FV +s.aQr=s.FU +s.aQw=s.wj +s.aQx=s.Zs +s.aQp=s.vQ +s.aht=s.ri +s.ahu=s.q7 +s.aQv=s.C6 +s.aQq=s.kc +s.aQu=s.m +s.aQt=s.hR +s=A.aie.prototype +s.aSz=s.hR +s=A.F7.prototype +s.aQD=s.Am +s.ahv=s.tV +s.aQz=s.q7 +s.aQB=s.kc +s.aQA=s.V3 +s.a15=s.kC +s.aQC=s.Gd +s.ahw=s.m +s=A.ail.prototype +s.aSB=s.m +s=A.aim.prototype +s.aSD=s.b1 +s.aSC=s.c5 +s.aSE=s.m +s=A.wA.prototype +s.ahb=s.a8 +s.aPB=s.c5 +s.aPE=s.Xf +s.aha=s.Xh +s.ah9=s.Xg +s.aPC=s.aaL +s.aPD=s.aaM +s.ah8=s.m +s=A.Yd.prototype +s.aRU=s.m +s=A.SU.prototype +s.aPf=s.F +s.agN=s.W6 +s.agR=s.Xb +s.agS=s.Xc +s.agQ=s.X5 +s.aPe=s.aaK +s.aPd=s.aaJ +s.agT=s.zh +s.agP=s.m +s.agO=s.mb +s=A.alv.prototype +s.aU6=s.m +s=A.alm.prototype +s.aTP=s.aA +s.aTQ=s.ar +s=A.Am.prototype +s.aQK=s.aa4 +s=A.ab3.prototype +s.ahx=s.He +s.aR1=s.Hh +s.aR0=s.Hg +s=A.alw.prototype +s.aU7=s.m +s=A.alx.prototype +s.aU8=s.m +s=A.aj8.prototype +s.aSJ=s.m +s=A.alB.prototype +s.aUc=s.m +s=A.alC.prototype +s.aUd=s.m +s=A.aki.prototype +s.aSQ=s.ne +s=A.akj.prototype +s.aSR=s.ne +s=A.akk.prototype +s.aSS=s.ne +s=A.hd.prototype +s.aRo=s.q +s.ahA=s.kB +s=A.Wt.prototype +s.aRh=s.FC +s.aRi=s.a7J +s.aRj=s.LL +s.aRk=s.qx +s.aRl=s.ne +s=A.aHR.prototype +s.aRm=s.m +s.aRn=s.wV +s=A.akh.prototype +s.aSP=s.wV +s=A.l6.prototype +s.aQj=s.l +s.aQk=s.BD +s=A.aiV.prototype +s.aSF=s.b1 +s.aSG=s.m +s=A.a_F.prototype +s.aNR=s.cD +s=A.a_G.prototype +s.aNS=s.cD +s=A.hK.prototype +s.aPx=s.hW +s=A.K2.prototype +s.aP0=s.n +s.tu=s.B +s.agI=s.eu +s.aP1=s.L +s.aP2=s.ox +s.agJ=s.fE +s=A.anY.prototype +s.aNM=s.bw7 +s=A.vn.prototype +s.aNH=s.q_ +s=A.JK.prototype +s.aOR=s.t2 +s=A.akX.prototype +s.aTp=s.m +s=A.oh.prototype +s.aPk=s.B +s.aPm=s.F +s.aPl=s.V +s=A.op.prototype +s.a0R=s.B +s.Jd=s.F +s.ah7=s.V +s=A.bz.prototype +s.At=s.qD +s.xu=s.k +s=A.jf.prototype +s.agv=s.qD +s=A.ahv.prototype +s.aS2=s.m +s=A.wF.prototype +s.aQl=s.a9H +s=A.a_A.prototype +s.aNK=s.fU +s.aNL=s.b6 +s=A.a4H.prototype +s.aOS=s.b6 +s=A.a5c.prototype +s.a0M=s.b6 +s=A.AU.prototype +s.aRz=s.m +s=A.alr.prototype +s.aTZ=s.m +s=A.dL.prototype +s.ah5=s.I8 +s.a0O=s.zY +s=A.rT.prototype +s.a0P=s.aO +s=A.Ao.prototype +s.aQQ=s.zY +s=A.akU.prototype +s.aTm=s.m +s=A.acB.prototype +s.aRp=s.m +s=A.akZ.prototype +s.aTr=s.m +s=A.akA.prototype +s.aT4=s.a8 +s=A.ala.prototype +s.aTE=s.a8 +s=A.alG.prototype +s.aUj=s.a8 +s=A.alE.prototype +s.aUh=s.m +s=A.alF.prototype +s.aUi=s.m +s=A.alz.prototype +s.aUa=s.m +s=A.Ve.prototype +s.aQM=s.bn +s.aQL=s.l +s=A.hu.prototype +s.E7=s.slV +s.QY=s.m +s=A.aag.prototype +s.f5=s.bF7 +s.aQW=s.Dz +s.aQV=s.mm +s=A.ag8.prototype +s.aRM=s.m +s=A.ag9.prototype +s.aRL=s.m +s=A.Cv.prototype +s.aOf=s.hy +s=A.zl.prototype +s.aP3=s.hy +s=A.ah.prototype +s.aRa=s.dm +s.tw=s.T +s.aRb=s.a0w +s.aR9=s.n +s.aRc=s.saf +s.aRd=s.saj +s=A.aZr.prototype +s.aSO=s.k})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._static_1,q=hunkHelpers.installStaticTearOff,p=hunkHelpers._instance_0u,o=hunkHelpers._instance_1u,n=hunkHelpers._instance_1i,m=hunkHelpers._instance_2u,l=hunkHelpers.installInstanceTearOff,k=hunkHelpers._static_0,j=hunkHelpers._instance_0i,i=hunkHelpers._instance_2i +s(A,"dlj","dpx",201) +r(A,"dlh","d27",6) +q(A,"cQ3",1,function(){return{params:null}},["$2$params","$1"],["cPZ",function(a){return A.cPZ(a,null)}],1821,0) +r(A,"dli","dn9",63) +r(A,"b1t","dl9",25) +p(A.ZK.prototype,"ga6g","bjM",0) +o(A.rj.prototype,"gayP","yS",1576) +o(A.a1R.prototype,"gbfB","bfC",11) +var h +o(h=A.avC.prototype,"gbfw","bfx",12) +o(h,"gb7N","b7O",12) +o(A.a0o.prototype,"gbm_","bm0",598) +o(h=A.a0b.prototype,"gbcA","bcB",12) +o(h,"gbcC","bcD",12) +o(h=A.t2.prototype,"gaZ1","aZ2",6) +o(h,"gaZ_","aZ0",6) +n(h=A.atN.prototype,"gl4","B",604) +p(h,"gaN4","DM",2) +n(A.aXs.prototype,"gA","bzU",325) +o(A.awl.prototype,"gbbE","bbF",196) +n(A.a5Z.prototype,"gacq","acr",11) +n(A.a9G.prototype,"gacq","acr",11) +o(A.avh.prototype,"gbbu","bbv",6) +p(h=A.atu.prototype,"gf7","m",0) +o(h,"gatN","bkG",4) +o(A.aBC.prototype,"gbqd","awV",12) +m(h=A.apg.prototype,"gbCv","bCw",555) +p(h,"gbcr","bcs",0) +o(A.VP.prototype,"gbei","bej",617) +o(A.aFc.prototype,"gbAZ","ac1",701) +p(A.aDS.prototype,"gf7","m",0) +o(h=A.apD.prototype,"gb3h","b3i",6) +o(h,"gb3j","b3k",6) +o(h,"gb3f","b3g",6) +o(h=A.a1H.prototype,"gN5","aAa",6) +o(h,"gX4","bwS",6) +o(h,"gNT","bAX",6) +o(A.arX.prototype,"gaWv","aWw",266) +o(A.auy.prototype,"gbcE","bcF",6) +o(A.a3p.prototype,"gbua","ayK",866) +p(h=A.yG.prototype,"gf7","m",0) +o(h,"gb_q","b_r",929) +p(A.QN.prototype,"gf7","m",0) +s(J,"dmp","d8E",105) +n(h=J.D.prototype,"gl4","B",11) +n(h,"gwR","F",37) +l(h,"gbH0",1,0,function(){return{growable:!0}},["$1$growable","$0"],["ib","eO"],"x<1>({growable:A})",0,0) +l(J.we.prototype,"gagc",1,1,null,["$2","$1"],["i0","aC"],956,0,0) +o(A.Pp.prototype,"gbb0","bb1",11) +n(A.v0.prototype,"grl","p",37) +k(A,"dmG","dbI",90) +r(A,"dmH","do0",28) +n(A.kd.prototype,"grl","p",37) +n(A.ix.prototype,"grl","p",37) +j(A.me.prototype,"gbqb","V",0) +r(A,"doL","dhl",61) +r(A,"doM","dhm",61) +r(A,"doN","dhn",61) +k(A,"cRH","dnZ",0) +r(A,"doO","dnb",25) +s(A,"doQ","dnd",32) +k(A,"doP","dnc",0) +q(A,"doR",4,null,["$4"],["cqe"],1822,0) +p(h=A.Nw.prototype,"gKz","tH",0) +p(h,"gKA","tI",0) +n(h=A.AR.prototype,"gl4","B",11) +l(h,"gq4",0,1,function(){return[null]},["$2","$1"],["h1","m8"],73,0,0) +n(h,"ga1h","l0",11) +m(h,"ga1j","lX",32) +p(h,"ga2_","r6",0) +l(A.Ny.prototype,"gVD",0,1,function(){return[null]},["$2","$1"],["iy","jh"],73,0,0) +m(A.ak.prototype,"gJH","lu",32) +n(h=A.Gv.prototype,"gl4","B",11) +l(h,"gq4",0,1,function(){return[null]},["$2","$1"],["h1","m8"],73,0,0) +n(h,"ga1h","l0",11) +m(h,"ga1j","lX",32) +p(h,"ga2_","r6",0) +p(h=A.G6.prototype,"gKz","tH",0) +p(h,"gKA","tI",0) +j(h=A.iG.prototype,"gadt","nj",0) +p(h,"gKz","tH",0) +p(h,"gKA","tI",0) +j(h=A.Xg.prototype,"gadt","nj",0) +p(h,"gapk","bbO",0) +o(h=A.qZ.prototype,"gaWg","aWh",11) +m(h,"gbbe","bbf",32) +p(h,"gbb4","bb5",0) +p(h=A.G9.prototype,"gKz","tH",0) +p(h,"gKA","tI",0) +o(h,"ga3q","a3r",11) +m(h,"ga3y","a3z",1597) +p(h,"ga3s","a3t",0) +l(A.Xn.prototype,"gq4",0,1,function(){return[null]},["$2","$1"],["h1","m8"],73,0,0) +p(h=A.YG.prototype,"gKz","tH",0) +p(h,"gKA","tI",0) +o(h,"ga3q","a3r",11) +m(h,"ga3y","a3z",32) +p(h,"ga3s","a3t",0) +l(A.NK.prototype,"gq4",0,1,function(){return[null]},["$2","$1"],["h1","m8"],73,0,0) +m(A.ai0.prototype,"gaAp","qp",32) +s(A,"cBe","dkX",139) +r(A,"cBf","dkY",78) +s(A,"dpE","d9d",105) +s(A,"dpF","dl8",105) +l(h=A.xi.prototype,"gEN",0,0,null,["$1$0","$0"],["xS","Kx"],150,0,0) +n(h,"grl","p",37) +l(h=A.nB.prototype,"gEN",0,0,null,["$1$0","$0"],["xS","Kx"],150,0,0) +n(h,"grl","p",37) +l(A.B6.prototype,"gEN",0,0,null,["$1$0","$0"],["xS","Kx"],150,0,0) +l(h=A.Vf.prototype,"gbat",0,0,null,["$1$0","$0"],["ap5","B1"],150,0,0) +n(h,"grl","p",37) +q(A,"dpZ",1,function(){return{toEncodable:null}},["$2$toEncodable","$1"],["cT2",function(a){return A.cT2(a,null)}],1823,0) +q(A,"dpY",1,function(){return{reviver:null}},["$2$reviver","$1"],["cT1",function(a){return A.cT1(a,null)}],1824,0) +r(A,"cry","dl1",83) +j(A.afy.prototype,"gBI","aO",0) +n(h=A.ade.prototype,"gl4","B",11) +j(h,"gBI","aO",0) +l(A.aQz.prototype,"gaVG",0,3,null,["$3"],["aVH"],1836,0,0) +r(A,"cS8","dsS",78) +q(A,"dq6",1,function(){return{radix:null}},["$2$radix","$1"],["cST",function(a){return A.cST(a,null)}],1825,0) +s(A,"cS7","dsR",139) +s(A,"cS4","d3n",1826) +q(A,"dq_",1,null,["$8","$1","$2","$3","$4","$5","$6"],["Qk",function(a){return A.Qk(a,1,1,0,0,0,0,0)},function(a,b){return A.Qk(a,b,1,0,0,0,0,0)},function(a,b,c){return A.Qk(a,b,c,0,0,0,0,0)},function(a,b,c,d){return A.Qk(a,b,c,d,0,0,0,0)},function(a,b,c,d,e){return A.Qk(a,b,c,d,e,0,0,0)},function(a,b,c,d,e,f){return A.Qk(a,b,c,d,e,f,0,0)}],508,0) +q(A,"dq0",1,null,["$8","$1","$2","$3","$4","$5","$6"],["Ql",function(a){return A.Ql(a,1,1,0,0,0,0,0)},function(a,b){return A.Ql(a,b,1,0,0,0,0,0)},function(a,b,c){return A.Ql(a,b,c,0,0,0,0,0)},function(a,b,c,d){return A.Ql(a,b,c,d,0,0,0,0)},function(a,b,c,d,e){return A.Ql(a,b,c,d,e,0,0,0)},function(a,b,c,d,e,f){return A.Ql(a,b,c,d,e,f,0,0)}],508,0) +q(A,"cS5",1,null,["$2$encoding","$1"],["cNp",function(a){return A.cNp(a,B.ai)}],1828,0) +r(A,"dq1","dgd",28) +k(A,"dq2","djJ",379) +s(A,"cS6","doe",1829) +n(A.B.prototype,"grl","p",37) +n(h=A.bu.prototype,"gbIj","aG",11) +l(h,"gbIz",0,0,null,["$1","$0"],["Ic","bIA"],539,0,0) +p(h=A.aOS.prototype,"gbf9","a5m",0) +j(h,"gb84","b85",0) +j(A.aeF.prototype,"gA","nQ",121) +j(h=A.NY.prototype,"gBI","aO",2) +j(h,"gA","nQ",121) +l(h=A.NZ.prototype,"gaYD",0,0,function(){return[null]},["$1","$0"],["ajR","aYE"],695,0,0) +o(h,"gbaO","baP",505) +o(h,"gb0J","b0K",714) +p(h,"gb_W","b_X",0) +l(h,"gbfP",0,1,function(){return[null]},["$2","$1"],["B8","bfQ"],719,0,0) +p(h,"gbh9","bha",0) +p(h,"gbbQ","bbR",0) +p(h,"gbcf","bcg",0) +o(h,"gbfb","bfc",723) +r(A,"dtk","cAx",157) +r(A,"dtj","cAw",1830) +q(A,"dtx",2,null,["$1$2","$2"],["cTe",function(a,b){return A.cTe(a,b,t.Jy)}],509,1) +q(A,"cTc",2,null,["$1$2","$2"],["csW",function(a,b){return A.csW(a,b,t.Jy)}],509,1) +q(A,"cu8",3,null,["$3"],["og"],1832,0) +q(A,"amg",3,null,["$3"],["a9L"],1833,0) +q(A,"Zs",3,null,["$3"],["av"],1834,0) +q(A,"f2",3,null,["$3"],["ai"],1835,0) +o(A.aiY.prototype,"gaBd","fI",63) +p(A.AT.prototype,"gal_","b04",0) +l(A.aBD.prototype,"gbFD",0,2,null,["$3$isVisible","$2"],["aEx","bFE"],783,0,0) +o(A.ann.prototype,"gaaN","Ck",102) +o(h=A.a09.prototype,"gbaH","baI",8) +l(h,"gbaF",0,3,null,["$3"],["baG"],165,0,0) +o(h=A.azQ.prototype,"gbac","bad",5) +p(h,"gbae","aoW",0) +n(h,"gLq","a3",241) +j(h=A.a0k.prototype,"gH0","CC",2) +l(h,"gb1v",0,3,null,["$3"],["b1w"],190,0,0) +p(h=A.adP.prototype,"gaXQ","xG",0) +p(h,"gbbi","bbj",0) +p(h,"gaq4","bee",0) +p(h,"gbih","TS",2) +p(h,"gbij","TT",2) +p(h,"gau8","au9",0) +p(h=A.afR.prototype,"gb9w","b9x",0) +p(h,"gb9y","aoy",0) +p(h,"gaoz","aoA",0) +p(h=A.afS.prototype,"gb9D","b9E",0) +p(h,"gaoC","aoD",0) +p(h,"gaoE","aoF",0) +j(A.akc.prototype,"gH0","CC",0) +m(h=A.a1E.prototype,"gazc","h4",139) +n(h,"gaAB","jC",78) +o(h,"gaBw","abs",37) +m(h=A.asj.prototype,"gazc","h4",139) +n(h,"gaAB","jC",78) +o(h,"gaBw","abs",37) +n(A.NB.prototype,"grl","p",37) +j(A.aJP.prototype,"gA","nQ",121) +j(h=A.jB.prototype,"gA","nQ",121) +o(h,"gaWn","Rf",1518) +m(h=A.ph.prototype,"gbCE","bCF",1706) +i(h,"gHc","CL",1717) +m(A.RG.prototype,"gbCC","bCD",1728) +r(A,"dtL","dl2",96) +r(A,"cRI","dkS",224) +k(A,"pR","dl4",17) +k(A,"cTK","dlH",17) +k(A,"duS","dnz",17) +k(A,"duI","dka",17) +k(A,"b2e","dnY",17) +k(A,"cTN","dnI",17) +k(A,"Ot","dmd",17) +k(A,"cBX","dlM",17) +k(A,"cTJ","dkK",17) +k(A,"duR","dnu",17) +k(A,"duO","dmU",17) +k(A,"cTL","dmb",17) +k(A,"duQ","dn5",17) +k(A,"duT","dnT",17) +k(A,"duJ","dkM",17) +k(A,"duK","dkO",17) +k(A,"cTO","dnJ",17) +k(A,"duH","dk7",17) +k(A,"duP","dn1",17) +k(A,"duL","dlP",17) +k(A,"cTM","dnA",17) +k(A,"hB","dlm",17) +k(A,"duM","dmD",17) +k(A,"duG","dk0",17) +k(A,"duU","dnW",17) +k(A,"duN","dmS",17) +k(A,"kz","dld",17) +k(A,"cTI","djY",17) +r(A,"dwC","cKN",1837) +o(h=A.anM.prototype,"gbtf","aym",250) +l(h,"ga9g",0,2,null,["$3$isHeader","$2"],["Ml","BU"],240,0,0) +r(A,"dtt","d9B",250) +r(A,"cT9","d9z",250) +q(A,"cBM",2,null,["$3$isHeader","$2"],["cJG",function(a,b){return A.cJG(a,b,!1)}],240,0) +l(A.aCk.prototype,"ga9g",0,2,null,["$3$isHeader","$2"],["Ml","BU"],240,0,0) +r(A,"dsT","d2x",1838) +o(A.avW.prototype,"gbCN","bCO",641) +m(h=A.api.prototype,"gbaT","SU",654) +o(h,"gbb2","a4J",656) +p(h,"gbBL","bBM",0) +s(A,"drU","cAv",1839) +j(A.a5I.prototype,"gA","nQ",121) +l(A.aeG.prototype,"gq4",0,1,function(){return[null]},["$2","$1"],["h1","m8"],73,0,0) +s(A,"dty","dkZ",1840) +o(A.a5J.prototype,"gbts","btt",680) +r(A,"dwE","dtc",20) +m(A.acS.prototype,"gb35","b36",321) +q(A,"doZ",3,null,["$3"],["d20"],1841,0) +q(A,"dp_",3,null,["$3"],["d21"],1842,0) +q(A,"dp0",3,null,["$3"],["d22"],1843,0) +q(A,"dp2",4,null,["$4"],["drw"],1844,0) +r(A,"dp1","drv",417) +s(A,"doW","dry",245) +r(A,"doY","dvO",66) +r(A,"doX","drz",420) +q(A,"doT",3,null,["$3"],["d82"],1845,0) +q(A,"doV",3,null,["$3"],["dgk"],1846,0) +q(A,"doS",3,null,["$3"],["d81"],1847,0) +q(A,"doU",3,null,["$3"],["dgj"],1848,0) +r(A,"dI1","d80",419) +r(A,"dI2","dgi",1849) +o(A.aiD.prototype,"gam1","b1N",25) +q(A,"dum",3,null,["$3"],["db2"],1850,0) +l(h=A.df.prototype,"gbFS",0,1,null,["$1"],["oD"],1986,0,1) +n(h,"gl4","B",94) +n(h,"gwR","F",94) +q(A,"cRX",0,null,["$2$comparator$strictMode","$0"],["cG4",function(){return A.cG4(null,null)}],1851,0) +k(A,"dpJ","dio",1852) +p(A.TE.prototype,"gbbP","apl",0) +p(A.aa0.prototype,"gb2Y","b2Z",0) +o(h=A.a60.prototype,"gN7","bxL",12) +o(h,"gaaV","bxN",12) +m(h,"gaaW","bxP",524) +m(h,"gaaX","bxR",809) +m(h,"gbxg","bxh",524) +l(A.yT.prototype,"gbFw",0,0,null,["$1$isInternalRefresh","$0"],["aEt","bFx"],831,0,0) +o(A.auB.prototype,"gb1y","b1z",5) +o(A.a3E.prototype,"gaI7","aI8",26) +p(h=A.Rf.prototype,"ga4K","bbn",0) +m(h,"gb4r","b4s",133) +p(A.abz.prototype,"gb9h","b9i",0) +q(A,"cUe",0,null,["$2$style$textDirection","$0","$1$style"],["czj",function(){return A.czj(null,B.j)},function(a){return A.czj(a,B.j)}],1853,0) +o(h=A.w1.prototype,"gbIh","bIi",418) +o(h,"gaJL","aJM",418) +p(h=A.adu.prototype,"gb1O","K1",2) +p(h,"gbhE","TI",2) +p(A.ads.prototype,"gaYz","Rq",2) +n(A.a3j.prototype,"gaIe","d3",36) +l(h=A.xU.prototype,"gaF9",1,0,function(){return{from:null}},["$1$from","$0"],["HN","eI"],904,0,0) +o(h,"gb_t","b_u",916) +o(h,"ga1u","aW4",5) +o(A.or.prototype,"gF8","U0",10) +o(A.I6.prototype,"gUk","Ul",10) +o(h=A.Nb.prototype,"gF8","U0",10) +p(h,"ga6P","blk",0) +o(h=A.PW.prototype,"gaoI","b9P",10) +p(h,"gaoH","b9O",0) +p(A.Hc.prototype,"gip","ab",0) +o(A.BT.prototype,"gaCt","O0",10) +o(h=A.adN.prototype,"gaXz","aXA",27) +o(h,"gaXB","aXC",35) +p(h,"gaXx","aXy",0) +o(A.adO.prototype,"gbCb","bCc",4) +o(h=A.adQ.prototype,"gbba","bbb",69) +o(h,"gbbg","bbh",70) +o(A.adL.prototype,"gaWI","aWJ",8) +o(h=A.adK.prototype,"gb_h","b_i",27) +o(h,"gb_j","b_k",35) +p(h,"gb_f","b_g",0) +o(h=A.Yh.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.ahl.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(A.adW.prototype,"ga4k","aoq",0) +s(A,"dtD","dmN",1854) +q(A,"dtF",3,null,["$3"],["dn8"],1855,0) +q(A,"dtE",5,null,["$5"],["dn7"],312,0) +l(A.acQ.prototype,"gaX8",0,3,null,["$3"],["aX9"],941,0,0) +p(A.adS.prototype,"gbcU","bcV",0) +o(A.adT.prototype,"gb66","b67",12) +p(h=A.ahm.prototype,"gb4n","b4o",0) +p(h,"gb3t","b3u",0) +p(h,"ga3F","b62",0) +q(A,"dvf",4,null,["$4"],["dkd"],181,0) +o(h=A.X8.prototype,"gbgl","bgm",24) +o(h,"gbgn","bgo",15) +o(h,"gbgj","bgk",22) +p(h,"gbgh","bgi",0) +o(h,"gbgp","bgq",56) +p(A.adU.prototype,"gaAo","Xf",0) +o(h=A.adV.prototype,"gbip","biq",26) +o(h,"ga3w","a3x",26) +o(h,"ga3u","a3v",26) +o(h=A.ahn.prototype,"ga3w","a3x",24) +o(h,"gb3F","b3G",15) +o(h,"ga3u","a3v",22) +p(h,"gb7n","b7o",0) +p(h,"gaZQ","aZR",0) +o(h=A.YB.prototype,"gbD2","O9",35) +o(h,"gbBX","bBY",120) +o(h,"gbDa","YH",15) +n(h,"gacj","bC9",22) +j(h,"gYi","zD",0) +o(h=A.Ym.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +q(A,"dwl",4,null,["$4"],["d3W"],1857,0) +o(h=A.adZ.prototype,"gbjD","bjE",22) +p(h,"gb56","an4",0) +p(h,"gb5I","an9",0) +o(h,"gU1","biX",10) +o(h=A.adX.prototype,"gbcl","bcm",27) +o(h,"gbcn","bco",35) +p(h,"gbcj","bck",0) +o(h=A.abq.prototype,"gbk1","bk2",27) +l(h,"gat4",0,0,function(){return[null]},["$1","$0"],["at5","bk0"],248,0,0) +l(h,"gbk3",0,0,null,["$1","$0"],["at6","bk4"],495,0,0) +o(h,"gbjZ","bk_",4) +q(A,"doK",1,null,["$2$forceReport","$1"],["cIm",function(a){return A.cIm(a,!1)}],1858,0) +n(h=A.ka.prototype,"gLq","a3",61) +n(h,"gaEF","O",61) +p(h,"gf7","m",0) +p(h,"gip","ab",0) +q(A,"fk",1,function(){return{wrapWidth:null}},["$2$wrapWidth","$1"],["cSf",function(a){return A.cSf(a,null)}],1859,0) +k(A,"dv3","cPX",0) +r(A,"dvW","ddR",1860) +o(h=A.Rj.prototype,"gb5l","b5m",1201) +o(h,"gb_d","b_e",1205) +o(h,"gbpO","bpP",12) +p(h,"gb1g","a2W",0) +o(h,"gb5r","an7",29) +p(h,"gb5U","b5V",0) +q(A,"cSy",3,null,["$3"],["d7i"],1861,0) +o(A.tV.prototype,"gn7","jB",29) +r(A,"cBL","d9q",42) +r(A,"am1","d56",326) +r(A,"am2","d57",42) +o(A.Qy.prototype,"gn7","jB",29) +r(A,"csX","dag",42) +q(A,"dtA",0,function(){return{allowedButtonsFilter:null,debugOwner:null,supportedDevices:null}},["$3$allowedButtonsFilter$debugOwner$supportedDevices","$0"],["cIY",function(){return A.cIY(null,null,null)}],1862,0) +o(h=A.a5Y.prototype,"gaoY","bag",29) +o(h,"gbfE","KM",12) +p(A.aea.prototype,"gb_8","b_9",0) +r(A,"dtB","d54",42) +q(A,"dtC",0,function(){return{allowedButtonsFilter:null,debugOwner:null,longTapDelay:B.w,supportedDevices:null}},["$4$allowedButtonsFilter$debugOwner$longTapDelay$supportedDevices","$0"],["cKb",function(){return A.cKb(null,null,B.w,null)}],1863,0) +p(A.adG.prototype,"gapo","bcq",0) +o(h=A.q4.prototype,"gSQ","bai",29) +o(h,"gbfv","KL",1233) +p(h,"gbaj","B0",0) +o(A.YS.prototype,"gn7","jB",29) +r(A,"GO","d7y",42) +l(A.fg.prototype,"gage",0,1,null,["$1"],["l_"],12,0,1) +o(A.TI.prototype,"gn7","jB",29) +o(A.ul.prototype,"gn7","jB",29) +o(h=A.ajn.prototype,"gn7","jB",29) +p(h,"gaYX","aYY",0) +o(A.a_C.prototype,"gn7","jB",29) +l(h=A.afD.prototype,"gbcM",0,3,null,["$3"],["bcN"],516,0,0) +m(h,"gbcP","bcQ",151) +k(A,"doF","d1K",1864) +m(h=A.afQ.prototype,"gb7Y","b7Z",1416) +m(h,"gb9o","b9p",55) +r(A,"doI","dis",1865) +r(A,"doH","dil",1866) +o(A.acG.prototype,"ga1w","aW6",1419) +o(h=A.aht.prototype,"gbZ","bi",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbG","bo",1) +o(h=A.ad5.prototype,"gaiT","aWq",24) +o(h,"gaiU","aWr",15) +o(h,"gaiS","aWp",22) +o(h,"gbvI","bvJ",1430) +o(h,"gb3D","b3E",4) +o(h=A.ahf.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.XS.prototype,"gbx_","bx0",24) +l(h,"gbwY",0,1,null,["$2$isClosing","$1"],["aAb","bwZ"],1431,0,0) +o(h=A.ahy.prototype,"gbG","bo",1) +o(h,"gbP","bh",1) +o(h,"gbL","bb",1) +o(h,"gbZ","bi",1) +p(A.adc.prototype,"gCm","aaU",0) +o(h=A.ahz.prototype,"gbG","bo",1) +o(h,"gbP","bh",1) +o(h,"gbL","bb",1) +o(h,"gbZ","bi",1) +o(h=A.adg.prototype,"gb4G","an3",59) +o(h,"gb75","b76",59) +o(h,"gb3p","b3q",59) +o(h=A.agf.prototype,"gb3n","b3o",59) +o(h,"gb4H","b4I",12) +p(h,"gb54","b55",0) +p(h,"gb5G","b5H",0) +o(h,"gb45","b46",4) +o(h,"gb47","b48",1567) +o(h,"gb49","b4a",1569) +o(h,"gb3v","b3w",1572) +m(h,"gaWQ","aWR",43) +m(A.aku.prototype,"gaXs","aXt",43) +o(h=A.ah_.prototype,"gaYj","aYk",27) +p(h,"gb6G","b6H",0) +p(h,"gb6E","b6F",0) +o(h=A.ahh.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(h=A.ae5.prototype,"gaZF","aZG",0) +p(h,"gaZD","aZE",0) +p(h,"gamY","b3Q",0) +o(h,"gamT","b3m",59) +q(A,"drM",4,null,["$4"],["dke"],181,0) +o(h=A.Xj.prototype,"gbxW","bxX",25) +o(h,"gbwW","bwX",25) +o(h=A.ahq.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.ahg.prototype,"gbG","bo",1) +o(h,"gbP","bh",1) +p(h=A.afo.prototype,"gb5K","b5L",0) +o(h,"gaWA","aWB",8) +p(A.a4p.prototype,"gb3a","b3b",0) +o(A.DJ.prototype,"gb2P","b2Q",10) +o(A.a4q.prototype,"gb7Q","b7R",10) +o(A.a4r.prototype,"gb7S","b7T",10) +o(h=A.RO.prototype,"ga_I","Ix",259) +o(h,"gbt7","bt8",1704) +o(h=A.afm.prototype,"gblQ","blR",1705) +l(h,"gaMn",0,0,null,["$1","$0"],["afX","aMo"],248,0,0) +p(h,"gaMl","aMm",0) +p(h,"gCm","aaU",0) +o(h,"gaAd","bx3",386) +o(h,"gbx4","bx5",4) +o(h,"gaaW","bxO",27) +o(h,"gaaX","bxQ",35) +o(h,"gbxF","bxG",27) +o(h,"gbxH","bxI",35) +p(h,"gN7","Xd",0) +p(h,"gaaV","bxM",0) +p(h,"gbwU","bwV",0) +p(h,"gbxf","aAh",0) +p(h,"gbxB","bxC",0) +p(h,"gbxD","bxE",0) +o(h,"gbxm","bxn",69) +o(h,"gbxo","bxp",70) +o(h=A.afr.prototype,"gblg","blh",265) +o(h,"gb5W","b5X",229) +o(h,"gb6B","b6C",46) +p(A.af3.prototype,"ga3Y","a3Z",0) +o(h=A.ahp.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h,"gaY8","aY9",388) +m(h,"gbd5","bd6",14) +p(A.afs.prototype,"ga3Y","a3Z",0) +o(h=A.ahC.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(A.ajt.prototype,"ga2x","akG",0) +p(h=A.xl.prototype,"ganb","b5Y",0) +o(h,"gaY_","aY0",1797) +p(h=A.ag5.prototype,"gaoN","b9V",0) +o(h,"gb4e","b4f",4) +p(h,"ganc","b63",0) +o(A.afe.prototype,"ga_I","Ix",259) +o(A.ae1.prototype,"gaua","aub",10) +p(A.agp.prototype,"gbam","ap1",0) +o(A.afd.prototype,"ga_I","Ix",259) +p(h=A.Z4.prototype,"gHb","bBH",0) +o(h,"gHa","bBG",10) +o(h=A.akx.prototype,"gKB","a4T",25) +p(h,"gf7","m",0) +o(h=A.aky.prototype,"gKB","a4T",25) +p(h,"gf7","m",0) +p(A.TD.prototype,"gN7","Xd",0) +o(h=A.agZ.prototype,"gbf2","bf3",4) +o(h,"gbeT","beU",290) +l(h,"gb_3",0,6,null,["$6"],["b_4"],537,0,0) +o(h=A.ahM.prototype,"gbf0","bf1",15) +o(h,"gbeZ","bf_",24) +o(h,"gbeX","beY",22) +p(h,"gbeV","beW",0) +o(h,"gbf4","bf5",27) +o(h,"gbf6","bf7",35) +o(h,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(h,"gb7r","b7s",0) +p(h,"gaZV","aZW",0) +p(h,"gb7p","b7q",0) +p(h,"gaZS","aZT",0) +o(h=A.a7M.prototype,"gbfq","bfr",62) +o(h,"gb4p","b4q",542) +o(A.a8O.prototype,"gb6p","b6q",10) +o(h=A.aeL.prototype,"gb5E","b5F",10) +p(h,"gbbU","bbV",0) +p(A.UG.prototype,"gb6y","b6z",0) +q(A,"cU_",3,null,["$3"],["dmK"],1867,0) +o(h=A.Yw.prototype,"ga5M","bh8",10) +p(h,"gbbl","bbm",0) +p(h,"ga4P","bbW",0) +p(h,"ga4R","bc8",0) +o(h=A.Yl.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +s(A,"dvI","dda",289) +o(h=A.aWd.prototype,"gacm","He",89) +o(h,"gacl","O6",89) +o(h,"gaCL","act",95) +o(h,"gacv","Hh",123) +o(h,"gacu","Hg",86) +p(h=A.ait.prototype,"gapc","baV",0) +m(h,"gbhs","bht",444) +p(h,"gb6c","b6d",0) +s(A,"dvJ","ddb",1869) +o(h=A.aiG.prototype,"gbir","bis",26) +o(h,"ga61","a62",26) +o(h,"ga6_","a60",26) +o(h,"gaVz","aVA",552) +o(h,"gb3Y","b3Z",4) +o(h,"gb4g","b4h",4) +p(h=A.Yn.prototype,"gb0v","a2I",0) +o(h,"ga61","a62",24) +o(h,"gbit","biu",15) +o(h,"ga6_","a60",22) +o(h,"gb6I","b6J",27) +o(h,"gb6N","b6O",35) +o(h,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(h,"gbyB","Xv",0) +p(h,"gbtn","W1",0) +o(A.aiJ.prototype,"ga4H","baL",10) +o(h=A.afY.prototype,"gbjd","bje",24) +o(h,"gbjf","bjg",15) +o(h,"gbjb","bjc",22) +o(h,"gbj9","bja",450) +p(h=A.ajb.prototype,"gb3r","b3s",0) +p(h,"gf7","m",0) +p(A.VG.prototype,"gf7","m",0) +p(A.aff.prototype,"gfk","aV",0) +p(h=A.aje.prototype,"gAQ","a3H",0) +p(h,"ga3I","b6D",0) +l(h,"gbgz",0,3,null,["$3"],["bgA"],557,0,0) +p(h=A.ajf.prototype,"gAQ","a3H",0) +o(h,"gbji","bjj",62) +s(A,"Ov","df3",289) +o(h=A.aY4.prototype,"gacm","He",89) +o(h,"gacl","O6",89) +o(h,"gacv","Hh",123) +p(h,"gaCM","acz",0) +o(h,"gacu","Hg",86) +p(h=A.ajr.prototype,"gU7","bjq",0) +m(h,"gbjr","bjs",444) +p(h,"gbjt","bju",0) +p(h,"gane","b6x",0) +s(A,"Zp","df5",289) +p(A.YT.prototype,"ga3p","b3l",0) +s(A,"dwm","dfg",44) +o(h=A.W4.prototype,"gbjX","bjY",27) +l(h,"gat2",0,0,function(){return[null]},["$1","$0"],["at3","bjW"],248,0,0) +l(h,"gang",0,0,null,["$1","$0"],["anh","b6K"],495,0,0) +o(h,"gbjS","bjT",4) +o(h,"gbjU","bjV",4) +p(A.W3.prototype,"gf7","m",0) +o(h=A.N9.prototype,"gbka","bkb",10) +o(h,"gbk8","bk9",56) +o(h,"gat7","bk5",29) +p(h,"gani","anj",0) +p(h,"gbkc","bkd",0) +p(h,"gb4v","b4w",0) +p(h,"gb5C","b5D",0) +o(h,"gat8","bk6",69) +o(h,"gat9","bk7",70) +o(h,"gaXm","aXn",8) +l(h=A.a6J.prototype,"gbyT",0,1,null,["$4$allowUpscaling$cacheHeight$cacheWidth","$1"],["aB6","byU"],566,0,0) +l(h,"gbyW",0,1,null,["$2$getTargetSize","$1"],["aB7","byX"],567,0,0) +q(A,"cB9",3,null,["$3"],["cKu"],1870,0) +m(A.aNh.prototype,"gan2","b4i",112) +q(A,"cBn",3,null,["$3"],["ji"],1871,0) +n(h=A.Ju.prototype,"gLq","a3",241) +o(h,"gaL_","a0d",577) +o(h,"gaEX","bG_",461) +o(h=A.azP.prototype,"gb3c","b3d",213) +o(h,"gb2V","b2W",5) +n(h,"gLq","a3",241) +m(A.WF.prototype,"gbik","bil",585) +q(A,"amf",3,null,["$3"],["d_"],1872,0) +n(h=A.auw.prototype,"gaf","jN",1) +n(h,"ga9R","md",1) +o(A.a7U.prototype,"gaix","aW3",10) +r(A,"dpa","dhH",465) +o(h=A.Ul.prototype,"gb73","b74",5) +o(h,"gb5h","b5i",5) +p(A.acX.prototype,"gf7","m",0) +o(h=A.J.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(h,"gnb","a9",0) +m(A.bD.prototype,"ga9j","nL",14) +o(h=A.a7Y.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a7Z.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(h=A.Lw.prototype,"gfk","aV",0) +p(h,"gTR","bia",0) +o(h,"gb6n","b6o",46) +o(h,"gb6l","b6m",592) +o(h,"gb4Z","b5_",4) +o(h,"gb4V","b4W",4) +o(h,"gb50","b51",4) +o(h,"gb4X","b4Y",4) +o(h,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h,"gb0i","b0j",27) +p(h,"gb0g","b0h",0) +p(h,"gb0e","b0f",0) +m(h,"gb0k","al6",14) +o(h=A.a80.prototype,"gbL","bb",1) +o(h,"gbZ","bi",1) +o(h=A.Lx.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a85.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a88.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(h=A.Ue.prototype,"gSx","b8E",0) +o(h,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +m(h,"gbdd","apC",14) +l(h,"gvh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["fY","r0","oL","pQ","oM"],116,0,0) +r(A,"cTi","dcp",30) +r(A,"cTj","dcq",30) +p(A.zJ.prototype,"gau3","au4",0) +o(h=A.H.prototype,"gad9","qB",30) +o(h,"gbv_","oo",30) +p(h,"gnb","a9",0) +p(h,"gfk","aV",0) +l(h,"gk0",0,2,null,["$2"],["aI"],14,0,1) +p(h,"gH5","cs",0) +l(h,"gaow",0,1,null,["$2$isMergeUp","$1"],["SE","b9k"],603,0,0) +l(h,"gvh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["fY","r0","oL","pQ","oM"],116,0,0) +o(h=A.ap.prototype,"gawN","bq6","ap.0?(S?)") +o(h,"gVu","bq5","ap.0?(S?)") +p(A.wC.prototype,"gpZ","bgT",0) +o(h=A.LB.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h,"gaYa","aYb",388) +o(A.agJ.prototype,"gn7","jB",29) +o(h=A.l4.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +l(h,"gk0",0,2,null,["$2"],["aI"],14,0,1) +o(h=A.Lv.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a7W.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.Ud.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a87.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +l(A.LA.prototype,"gk0",0,2,null,["$2"],["aI"],14,0,1) +p(A.a7T.prototype,"gUo","a6C",0) +p(A.Yi.prototype,"gSD","EG",0) +m(A.a81.prototype,"gbd1","apw",608) +o(h=A.a8b.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(h=A.A0.prototype,"gbe1","be2",0) +p(h,"gbe3","be4",0) +p(h,"gbe5","be6",0) +p(h,"gbe_","be0",0) +p(h=A.a8h.prototype,"gbe8","be9",0) +p(h,"gbdV","bdW",0) +p(h,"gbdR","bdS",0) +p(h,"gbdJ","bdK",0) +p(h,"gbdL","bdM",0) +p(h,"gbdX","bdY",0) +p(h,"gbdN","bdO",0) +p(h,"gbdP","bdQ",0) +p(A.aEg.prototype,"garE","arF",0) +o(h=A.EX.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +l(h,"gk0",0,2,null,["$2"],["aI"],14,0,1) +o(h=A.a8c.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a8e.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a7X.prototype,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h=A.a83.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a8_.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +l(A.da.prototype,"gaAD",0,1,null,["$3$crossAxisPosition$mainAxisPosition"],["Xp"],609,0,0) +l(A.a8l.prototype,"gvh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["fY","r0","oL","pQ","oM"],116,0,0) +l(A.A1.prototype,"gvh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["fY","r0","oL","pQ","oM"],116,0,0) +o(h=A.Uh.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +m(h,"gaD1","YN",14) +m(A.a86.prototype,"gaD1","YN",14) +o(h=A.Ui.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.Uk.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +m(h,"gbd2","apx",14) +l(h,"gvh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["fY","r0","oL","pQ","oM"],116,0,0) +o(h=A.a8n.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +s(A,"dpc","dcP",1873) +q(A,"dpd",0,null,["$2$priority$scheduler"],["drB"],1874,0) +o(h=A.lH.prototype,"gb0M","b0N",481) +p(h,"gbgu","bgv",0) +o(h,"gb31","b32",5) +p(h,"gb3I","b3J",0) +p(h,"gb_L","b_M",0) +o(A.Az.prototype,"gU8","bjL",5) +p(h=A.aEi.prototype,"gb_n","b_o",0) +p(h,"gb6k","and",0) +o(h,"gb6i","b6j",616) +o(h=A.fZ.prototype,"gaqw","bfm",491) +o(h,"gbkD","atu",491) +p(A.a9f.prototype,"gf7","m",0) +o(h=A.un.prototype,"gbaZ","bb_",11) +o(h,"gbmk","UT",623) +r(A,"dpb","ddj",1875) +p(h=A.UV.prototype,"gaVN","aVO",631) +o(h,"gb4t","a3C",632) +o(h,"gb5j","S5",102) +o(h=A.awj.prototype,"gbx8","bx9",196) +o(h,"gbxz","aaT",634) +o(h,"gaZ5","aZ6",635) +o(h=A.a8w.prototype,"gb9Z","a4x",500) +p(h,"gf7","m",0) +o(h=A.iV.prototype,"gbg8","bg9",503) +o(h,"gaqu","aqv",503) +o(A.aG6.prototype,"gb99","SA",102) +o(A.aH7.prototype,"gb7_","a3K",102) +o(A.NL.prototype,"gayI","a9A",650) +o(A.acx.prototype,"gamO","b2O",655) +o(h=A.aeQ.prototype,"gan0","b4_",386) +o(h,"gb4P","b4Q",69) +o(h,"gb4R","b4S",70) +o(h,"gb3V","b3W",4) +q(A,"doE",4,null,["$4"],["d1I"],1876,0) +s(A,"Oo","d1M",302) +s(A,"doG","d1L",1877) +o(A.acE.prototype,"gbl8","a6K",657) +o(h=A.akl.prototype,"gb__","b_0",293) +o(h,"gbbo","bbp",661) +o(h,"gbcu","bcv",526) +o(A.acO.prototype,"gaVI","aVJ",666) +p(A.a4J.prototype,"gf7","m",0) +r(A,"dp6","d3w",149) +r(A,"dp7","d3x",149) +r(A,"dp5","d3v",149) +p(h=A.ac5.prototype,"gbxd","bxe",0) +o(h,"gb52","b53",102) +p(h,"gb33","b34",0) +p(h=A.aks.prototype,"gbxl","aaO",0) +p(h,"gbxT","aaY",0) +p(h,"gbxs","aaR",0) +o(h,"gbwR","aaH",1820) +o(h=A.aef.prototype,"gakO","b_y",24) +o(h,"gakP","b_z",15) +p(h,"gb3A","b3B",0) +o(h,"gakN","b_x",22) +o(h,"gb3y","S4",671) +p(h,"gb5M","b5N",0) +q(A,"cSg",3,null,["$3"],["dpA"],1879,0) +o(h=A.Xi.prototype,"gbgr","bgs",56) +o(h,"gbiK","biL","G7<1>?(j)") +o(A.G7.prototype,"gb02","b03",8) +p(A.NC.prototype,"gf7","m",0) +o(A.aeo.prototype,"ga1s","aiw",10) +p(h=A.vP.prototype,"gapb","baS",0) +p(h,"gbbk","apf",0) +p(h,"gbg6","bg7",0) +p(h,"gL9","bkr",0) +p(h,"gbb6","bb7",0) +p(h,"gbaX","baY",0) +p(h,"gapd","a4I",0) +p(h,"gRA","akI",0) +p(h,"ga2G","b0m",0) +o(h,"gaYG","aYH",678) +l(h,"gbgQ",0,0,function(){return[null]},["$1","$0"],["arg","arf"],295,0,0) +o(h,"gbDX","bDY",46) +l(h,"gba4",0,3,null,["$3"],["ba5"],296,0,0) +l(h,"gba9",0,3,null,["$3"],["baa"],296,0,0) +p(h,"gaXV","ajj",128) +p(h,"gbax","bay",128) +p(h,"gb8z","b8A",128) +p(h,"gbdf","bdg",128) +p(h,"gb_T","b_U",128) +o(h,"gbki","bkj",682) +o(h,"gbfM","aqM",683) +o(h,"gbgW","bgX",684) +o(h,"gb0n","b0o",685) +o(h,"gb0Q","b0R",686) +o(h,"gbkV","bkW",687) +o(h,"gb7d","b7e",688) +o(h,"gb_1","b_2",56) +p(h=A.hG.prototype,"gf7","m",0) +l(h,"gbG5",0,0,null,["$1","$0"],["zW","ho"],696,0,0) +p(h=A.a3q.prototype,"gf7","m",0) +p(h,"gbmT","avo",0) +o(h=A.aPP.prototype,"gaAj","aaS",29) +o(h,"gaAg","bxa",698) +p(A.Xp.prototype,"ga3B","b3X",0) +q(A,"dsb",1,null,["$5$alignment$alignmentPolicy$curve$duration","$1","$3$curve$duration","$3$curve$duration","$4$alignment$curve$duration","$2$alignmentPolicy"],["a3s",function(a){var g=null +return A.a3s(a,g,g,g,g)},function(a,b,c){return A.a3s(a,null,null,b,c)},function(a,b,c){return A.a3s(a,null,null,b,c)},function(a,b,c,d){return A.a3s(a,b,null,c,d)},function(a,b){return A.a3s(a,null,b,null,null)}],1880,0) +r(A,"csb","die",34) +s(A,"cBu","d67",1881) +r(A,"cSE","d65",34) +o(A.T.prototype,"gIP","C",61) +o(h=A.aQb.prototype,"gbkt","atl",34) +p(h,"gbku","bkv",0) +o(A.bJ.prototype,"gbt6","Mk",34) +o(h=A.U1.prototype,"gb5n","b5o",56) +o(h,"gb5s","b5t",728) +o(h,"gbl3","bl4",729) +o(h=A.B5.prototype,"gaX_","aX0",8) +o(h,"gamP","amQ",10) +p(h,"gacy","bD6",0) +o(h=A.Jf.prototype,"gb3S","b3T",732) +l(h,"gaZY",0,5,null,["$5"],["aZZ"],312,0,0) +q(A,"cSR",3,null,["$3"],["z2"],1882,0) +m(h=A.afa.prototype,"gb4l","b4m",112) +o(h,"gb4j","b4k",461) +p(A.Hb.prototype,"gb2R","b2S",0) +p(A.XC.prototype,"ga3L","b71",0) +o(h=A.afu.prototype,"gbc4","bc5",746) +o(h,"gbc6","bc7",747) +o(h,"gbc2","bc3",748) +o(h,"gbfg","bfh",208) +p(h,"gSS","baK",0) +p(h,"gSX","bc1",0) +p(h,"gapp","bct",0) +o(A.XG.prototype,"gaoe","b8o",11) +o(h=A.ahA.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(A.afH.prototype,"gb8C","b8D",62) +s(A,"cTf","daw",1883) +r(A,"tn","dj9",129) +r(A,"cTg","dja",129) +r(A,"am3","djb",129) +o(A.XX.prototype,"gzC","wA",160) +o(A.XW.prototype,"gzC","wA",160) +o(A.agq.prototype,"gzC","wA",160) +o(A.agr.prototype,"gzC","wA",160) +p(h=A.nc.prototype,"gan1","b4d",0) +p(h,"gaqr","bfl",0) +o(h,"gban","bao",56) +o(h,"gb5w","b5x",29) +r(A,"cTh","diB",1884) +p(A.T_.prototype,"gb4b","b4c",0) +p(A.agv.prototype,"garm","a5J",0) +p(A.a8a.prototype,"gnb","a9",0) +m(A.a6z.prototype,"gaXq","aXr",52) +o(h=A.Yk.prototype,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h,"gbG","bo",1) +o(h,"gbL","bb",1) +r(A,"dtM","dj7",30) +l(A.O5.prototype,"gk0",0,2,null,["$2"],["aI"],14,0,1) +o(h=A.Gs.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(A.af_.prototype,"ga4W","a4X",62) +p(h=A.aeZ.prototype,"gf7","m",0) +o(h,"ga1M","a1N",10) +o(h,"gbjJ","bjK",5) +o(A.aj2.prototype,"ga4W","a4X",62) +o(h=A.aj1.prototype,"ga1M","a1N",10) +p(h,"gf7","m",0) +q(A,"dIO",4,null,["$4"],["cQ_"],181,0) +o(A.aso.prototype,"gb9X","a4w",500) +o(h=A.agK.prototype,"gbbS","bbT",12) +o(h,"gb40","b41",4) +p(A.ai_.prototype,"ga5u","bfK",0) +p(A.it.prototype,"gf7","m",0) +o(A.pr.prototype,"gbkQ","a6E",780) +o(h=A.Yq.prototype,"gbfR","bfS",5) +p(h,"gS7","ana",0) +p(h,"ga3n","b3_",99) +p(h,"ga3E","b5R",0) +o(h=A.Ux.prototype,"gaL0","aL1",212) +o(h,"gaLq","aLr",212) +o(A.hw.prototype,"ganf","b6A",10) +p(h=A.iA.prototype,"gan8","a3D",0) +o(h,"gaWU","aWV",8) +o(h,"gaWW","aWX",8) +p(h=A.OX.prototype,"ga6e","a6f",0) +p(h,"ga5K","a5L",0) +p(h=A.QB.prototype,"ga6e","a6f",0) +p(h,"ga5K","a5L",0) +o(h=A.fh.prototype,"gaBC","hV",26) +p(h,"gf7","m",0) +s(A,"Ou","cQD",514) +n(h=A.aiw.prototype,"gl4","B",68) +n(h,"gwR","F",68) +r(A,"Zm","drC",62) +p(h=A.nn.prototype,"gbtX","btY",0) +p(h,"gf7","m",0) +p(A.F7.prototype,"gf7","m",0) +o(h=A.F9.prototype,"gamX","b3C",120) +o(h,"gars","bgZ",24) +o(h,"gart","bh_",15) +o(h,"garr","bgY",22) +p(h,"gamV","amW",0) +p(h,"gb_I","b_J",0) +p(h,"gb_G","b_H",0) +o(h,"gbh2","bh3",208) +o(h,"gbh0","bh1",29) +o(h,"gb5Z","b6_",214) +p(h=A.aij.prototype,"gare","bgN",0) +p(h,"gf7","m",0) +p(A.UK.prototype,"gf7","m",0) +o(h=A.wA.prototype,"gbli","blj",10) +p(h,"gaAo","Xf",0) +o(h,"gb6Y","b6Z",27) +o(h,"gbh4","bh5",214) +o(h,"gb60","b61",62) +o(h,"gb5u","b5v",29) +o(h,"gbh6","bh7",208) +p(h=A.LY.prototype,"garB","arC",0) +p(h,"ga6H","bl1",0) +o(h,"gbiQ","biR",131) +o(h,"gb4L","b4M",216) +o(h,"gb4N","b4O",217) +o(h,"gb4J","b4K",218) +o(h,"gb4T","b4U",123) +o(h,"gb6W","b6X",86) +o(h,"gb6U","b6V",95) +o(h,"gb6S","b6T",107) +o(h,"gb5O","b5P",27) +o(h,"gbaM","baN",22) +o(h,"gbhn","bho",24) +o(h,"gbhp","bhq",15) +o(h,"gbhj","bhk",24) +o(h,"gbhl","bhm",15) +p(h,"gaYr","Ro",0) +n(h,"gl4","B",68) +n(h,"gwR","F",68) +n(h=A.ais.prototype,"gwR","F",68) +p(h,"gf7","m",0) +n(h=A.SU.prototype,"gl4","B",68) +n(h,"gwR","F",68) +m(h,"ga27","aYC",812) +p(h,"ga3G","b65",0) +p(h,"gf7","m",0) +m(A.aiC.prototype,"gb59","b5a",133) +p(A.a9y.prototype,"gf7","m",0) +p(A.aiB.prototype,"garW","bi2",0) +p(h=A.ahP.prototype,"gSc","b7a",0) +o(h,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +l(h,"gvh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["fY","r0","oL","pQ","oM"],116,0,0) +o(A.Va.prototype,"gbFI","Zk",819) +p(A.aeN.prototype,"ga44","b8e",0) +p(A.Yo.prototype,"gSV","bbX",0) +p(A.ae9.prototype,"gf7","m",0) +o(A.aiW.prototype,"ga1t","aW2",10) +p(h=A.aGe.prototype,"gaud","a6J",0) +o(h,"gb68","b69",24) +o(h,"gb6a","b6b",15) +o(h,"gb6e","b6f",24) +o(h,"gb6g","b6h",15) +o(h,"gb2T","b2U",22) +o(h=A.aEf.prototype,"gb6t","b6u",24) +o(h,"gb6v","b6w",15) +o(h,"gb6r","b6s",22) +o(h,"gb3M","b3N",24) +o(h,"gb3O","b3P",15) +o(h,"gb3K","b3L",22) +o(h,"gaXd","aXe",8) +o(h,"gaWM","aWN",8) +o(h,"gaXk","aXl",8) +p(A.aix.prototype,"gUb","a6j",0) +p(A.aiv.prototype,"gSa","a3M",0) +p(h=A.ab3.prototype,"gbD0","bD1",0) +p(h,"gbCZ","bD_",0) +o(h,"gbCY","acx",131) +o(h,"gacm","He",89) +o(h,"gacl","O6",89) +p(h,"gaCM","acz",0) +o(h,"gacv","Hh",123) +p(h,"gbCT","bCU",0) +o(h,"gacu","Hg",86) +o(h,"gaCL","act",95) +o(h,"gbCR","bCS",107) +p(h,"gbCH","bCI",0) +o(h,"gbCJ","bCK",27) +o(h,"gbBV","bBW",131) +o(h,"gbD8","bD9",131) +o(h,"gbC2","bC3",216) +o(h,"gbC4","bC5",217) +o(h,"gbC0","bC1",218) +p(h=A.ajw.prototype,"ganl","b6M",0) +p(h,"gank","b6L",0) +o(h,"gasN","bjB",131) +o(h,"gasO","bjC",123) +p(h,"gasM","bjA",0) +o(h,"gasK","bjy",216) +o(h,"gasL","bjz",217) +o(h,"gasJ","bjx",218) +o(h,"gb1m","b1n",89) +o(h,"gb1k","b1l",89) +o(h,"gb4B","b4C",86) +o(h,"gb4z","b4A",95) +o(h,"gb4x","b4y",107) +p(A.a0L.prototype,"gf7","m",0) +p(A.hM.prototype,"gjb","jc",0) +p(A.e5.prototype,"gfj","fq",0) +r(A,"dwy","dcN",515) +r(A,"dwx","dcA",515) +p(A.acD.prototype,"ga3o","b39",0) +p(h=A.We.prototype,"gaFS","P5",0) +p(h,"gaEq","Ox",0) +o(h,"gbko","bkp",835) +o(h,"gbfn","bfo",836) +p(h,"ga5f","aqh",0) +p(h,"ga3A","an_",0) +p(A.abG.prototype,"gf7","m",0) +p(A.Z1.prototype,"ga6Q","bll",0) +o(h=A.ahN.prototype,"gbZ","bi",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbG","bo",1) +o(A.ajV.prototype,"galN","b1i",61) +p(h=A.aav.prototype,"garo","bgU",0) +o(h,"gbby","bbz",24) +o(h,"gbbA","bbB",15) +o(h,"gbbw","a4L",22) +o(A.v4.prototype,"gn7","jB",29) +l(A.aCB.prototype,"gbx6",0,3,null,["$3"],["X6"],859,0,0) +r(A,"dq5","dni",1887) +o(A.a40.prototype,"gblA","blB",164) +r(A,"dqK","dgt",9) +r(A,"dqL","dgu",9) +r(A,"dqM","dgv",9) +r(A,"dqN","dgw",9) +r(A,"dqO","dgx",9) +r(A,"dqP","dgy",9) +r(A,"dqQ","dgz",9) +r(A,"dqR","dgA",9) +r(A,"dqS","dgB",9) +r(A,"dqT","dgC",9) +r(A,"dqU","dgD",9) +r(A,"dqV","dgE",9) +r(A,"dqW","dgF",9) +r(A,"dqX","dgG",9) +r(A,"dqY","dgH",9) +r(A,"dqZ","dgI",9) +r(A,"dr_","dgJ",9) +r(A,"dr0","dgK",9) +r(A,"dr1","dgL",9) +r(A,"dr2","dgM",9) +r(A,"dr3","dgN",9) +r(A,"dr4","dgO",9) +s(A,"dr5","dgP",65) +r(A,"dr6","dgQ",9) +r(A,"dr7","dgR",9) +r(A,"dr8","dgS",9) +r(A,"dr9","dgT",9) +r(A,"dra","dgU",9) +m(A.Wt.prototype,"gaw5","aw6",44) +r(A,"dq4","dnG",355) +s(A,"dq3","dhE",1888) +s(A,"dq7","def",291) +r(A,"dqt","dei",38) +r(A,"dqu","dej",38) +s(A,"dq8","dek",101) +s(A,"dq9","del",101) +r(A,"dqa","dem",114) +r(A,"dqs","dit",149) +s(A,"dqv","deo",44) +r(A,"dqw","dep",38) +s(A,"dqx","deq",101) +s(A,"dqy","der",1890) +s(A,"dqG","dwb",291) +s(A,"dqH","dwc",1891) +s(A,"dqI","dwd",1892) +s(A,"dqJ","dwe",517) +s(A,"dqd","deC",1894) +r(A,"dqc","deB",9) +s(A,"dqb","deA",1895) +r(A,"dqz","deD",38) +r(A,"dqf","deF",38) +s(A,"dqe","deE",226) +r(A,"dqA","deG",9) +r(A,"dqg","deH",9) +s(A,"dqh","deI",101) +r(A,"dqi","deJ",114) +r(A,"dqj","deK",9) +r(A,"dqk","deL",9) +r(A,"dqB","deM",38) +r(A,"dqC","deN",9) +r(A,"dqD","deO",38) +s(A,"dqE","deP",71) +r(A,"dql","deQ",9) +r(A,"dqm","deR",9) +r(A,"dqn","deS",1896) +s(A,"dqo","deT",71) +s(A,"dqp","deU",71) +s(A,"dqq","deV",71) +r(A,"dqr","deW",38) +r(A,"dqF","djk",9) +l(A.amY.prototype,"gbvp",0,1,null,["$5$curve$duration$jumpCurve$jumpDuration","$1","$3$curve$duration","$3$curve$duration"],["aa1","bvq","aza","aza"],876,0,0) +m(A.aFP.prototype,"gbch","bci",101) +m(h=A.ajk.prototype,"gbc_","bc0",71) +m(h,"gbaQ","baR",226) +m(A.ajl.prototype,"gbbq","bbr",71) +o(h=A.Xy.prototype,"gbL","bb",1) +o(h,"gbG","bo",1) +o(h=A.XK.prototype,"gbZ","bi",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbG","bo",1) +o(h=A.ai5.prototype,"gbZ","bi",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbG","bo",1) +s(A,"vd","dls",87) +r(A,"cSj","d5g",1897) +o(A.apM.prototype,"gbtF","ayw",899) +o(A.agO.prototype,"gjo","nT",26) +p(h=A.agh.prototype,"gbBj","bBk",0) +p(h,"gbHs","bHt",0) +m(A.ae3.prototype,"gb5y","b5z",922) +p(A.aDL.prototype,"gbbZ","apm",0) +l(h=A.a3J.prototype,"gb5A",0,3,null,["$3"],["b5B"],933,0,0) +o(h,"ga7B","q",8) +o(h,"gafJ","a0f",212) +p(A.a3I.prototype,"gf7","m",0) +q(A,"drm",0,null,["$5$arguments$child$key$name$restorationId"],["dtN"],1898,0) +q(A,"drn",4,null,["$4"],["day"],181,0) +q(A,"dtw",0,null,["$5$arguments$child$key$name$restorationId"],["dtO"],1899,0) +q(A,"dvg",3,null,["$3"],["ddX"],1900,0) +l(A.Vi.prototype,"gaWs",0,1,null,["$2","$1"],["a1D","aWt"],945,0,0) +p(A.auV.prototype,"gb5S","b5T",0) +o(A.aa9.prototype,"gbtk","btl",83) +r(A,"cS0","hA",113) +r(A,"dpR","csL",113) +r(A,"dpS","cSX",113) +r(A,"xD","d1R",36) +n(A.adH.prototype,"grl","p",37) +o(A.ps.prototype,"gae8","ae9",961) +p(h=A.avB.prototype,"gdk","bt5",3) +p(h,"gbvs","bvt",3) +p(h,"gD_","bF3",3) +p(h,"gbpZ","bq_",3) +p(h,"gOv","bEX",3) +p(h,"gxg","aKf",3) +p(h,"gaDd","bE2",3) +p(h,"gbGD","bGE",3) +p(h,"gbqn","bqo",3) +p(h,"gaFi","bGC",3) +p(h,"gbF1","bF2",3) +p(h,"gbF_","bF0",3) +p(h,"gbEY","bEZ",3) +p(h,"gbEV","bEW",3) +p(h,"gbET","bEU",3) +p(h,"gbER","bES",3) +p(h,"gaKd","aKe",3) +p(h,"gaJZ","aK_",3) +p(h,"gaJX","aJY",3) +p(h,"gaK2","aK3",3) +p(h,"gaK0","aK1",3) +p(h,"gtj","aKc",3) +p(h,"gaK5","aK6",3) +p(h,"gafl","aK4",3) +p(h,"ga02","aKb",3) +p(h,"gaK9","aKa",3) +p(h,"gaK7","aK8",3) +p(h,"gaJP","aJQ",3) +p(h,"gxf","aJW",3) +p(h,"gaJT","aJU",3) +p(h,"gaJR","aJS",3) +p(h,"ga01","aJV",3) +p(h,"gaJN","aJO",3) +p(h,"gvS","bnh",3) +p(h,"gyi","bn1",3) +p(h,"gbmp","bmq",3) +p(h,"gavS","bni",3) +p(h,"gbn5","bn6",3) +p(h,"gbnb","bnc",3) +p(h,"gV8","bnd",3) +p(h,"gavg","bmr",3) +p(h,"gve","aKB",3) +p(h,"ga7z","bnz",3) +p(h,"gbAM","bAN",3) +p(h,"gbqK","bqL",3) +p(h,"gbqI","bqJ",3) +p(h,"gyr","bqM",3) +p(h,"gax4","bqG",3) +p(h,"gax5","bqH",3) +p(h,"gbqE","bqF",3) +p(h,"gbuG","buH",3) +p(h,"gavT","bnj",3) +p(h,"ga9J","bux",3) +p(h,"gbms","bmt",3) +p(h,"gbmv","bmw",3) +p(h,"ga7u","bnk",3) +p(h,"gbuA","buB",3) +p(h,"gbuC","buD",3) +p(h,"gavh","bmu",3) +p(h,"gbnq","bnr",3) +p(h,"gbmy","bmz",3) +p(h,"ga7v","bnl",3) +p(h,"ga9K","buI",3) +p(h,"ga9L","buJ",3) +p(h,"gavi","bmx",3) +p(h,"gFz","bnA",3) +p(h,"gbpU","bpV",3) +o(h=A.as6.prototype,"gaLT","aLU",12) +o(h,"gafI","aLf",12) +o(h,"gaKR","aKS",12) +o(h,"gaKT","aKU",12) +o(h,"gQh","aKZ",12) +o(h,"gaLd","aLe",12) +o(h,"gaLt","aLu",12) +o(h,"gaKW","aKX",12) +r(A,"nK","as7",113) +p(A.hE.prototype,"gb7A","b7B",968) +r(A,"dtH","cyf",113) +r(A,"dt1","Zh",136) +r(A,"dt0","do7",28) +r(A,"dt2","cBm",28) +r(A,"dt3","cU4",28) +k(A,"oZ","dl5",16) +k(A,"k3","dk6",16) +k(A,"hS","djX",16) +k(A,"Os","dk_",16) +k(A,"cBV","dk1",16) +k(A,"duq","dk8",16) +k(A,"dur","dkb",16) +k(A,"ctc","dkc",16) +k(A,"ctd","dkh",16) +k(A,"cTE","dkL",16) +k(A,"dus","dkN",16) +k(A,"dut","dkP",16) +k(A,"b2d","dln",16) +k(A,"cTD","dko",16) +k(A,"cBW","dlN",16) +k(A,"duv","dlQ",16) +k(A,"cTF","dmc",16) +k(A,"duu","dlG",16) +k(A,"duw","dmE",16) +k(A,"cBU","djZ",16) +k(A,"dux","dmT",16) +k(A,"duy","dmV",16) +k(A,"duz","dn2",16) +k(A,"duB","dn6",16) +k(A,"duC","dnv",16) +k(A,"cTG","dnB",16) +k(A,"duA","dn3",16) +k(A,"cTH","dnK",16) +k(A,"duD","dnU",16) +k(A,"duE","dnX",16) +r(A,"duF","dtr",20) +j(h=A.anm.prototype,"gbE4","fM",2) +j(h,"gbDL","f2",2) +o(h,"gaLM","i_",976) +l(h,"gaKp",1,1,function(){return{index:null}},["$2$index","$1"],["DB","kF"],977,0,0) +p(h=A.a5V.prototype,"gaFD","ZO",2) +p(h,"gf7","m",2) +r(A,"doD","d1D",1902) +r(A,"dp3","d25",384) +r(A,"drQ","d6k",1903) +r(A,"dul","db_",1904) +o(A.azL.prototype,"gb4D","b4E",40) +o(A.aeD.prototype,"ga7h","bmL",10) +o(h=A.avQ.prototype,"ga7B","q",8) +l(h,"gb7k",0,4,null,["$4"],["b7l"],235,0,0) +l(h,"gbeb",0,4,null,["$4"],["bec"],235,0,0) +l(h,"gbep",0,4,null,["$4"],["beq"],235,0,0) +l(h,"gb91",0,3,null,["$3"],["b92"],223,0,0) +l(h,"gb0D",0,3,null,["$3"],["b0E"],165,0,0) +l(A.op.prototype,"gl4",1,1,null,["$1"],["B"],37,0,1) +r(A,"dtJ","dtK",1905) +o(h=A.a82.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(h=A.a8d.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +q(A,"dun",3,null,["$3"],["dl_"],1906,0) +q(A,"dpf",6,null,["$6"],["d5h"],1907,0) +q(A,"dpg",6,null,["$6"],["d5i"],1908,0) +q(A,"dph",6,null,["$6"],["d5j"],1909,0) +q(A,"dpi",6,null,["$6"],["d5k"],1910,0) +q(A,"dpj",6,null,["$6"],["d5l"],1911,0) +q(A,"dpk",6,null,["$6"],["d5m"],1912,0) +q(A,"dpl",6,null,["$6"],["d5n"],1913,0) +q(A,"dpm",6,null,["$6"],["d5o"],1914,0) +q(A,"dpn",6,null,["$6"],["d5p"],1915,0) +q(A,"dpo",6,null,["$6"],["d5q"],1916,0) +q(A,"dpp",6,null,["$6"],["d5r"],1917,0) +q(A,"dpq",6,null,["$6"],["d5s"],1918,0) +q(A,"dpr",6,null,["$6"],["d5t"],1919,0) +q(A,"dps",6,null,["$6"],["d5u"],1920,0) +q(A,"dsF",6,null,["$6"],["d5v"],1921,0) +q(A,"dsG",6,null,["$6"],["d5w"],1922,0) +q(A,"dsH",6,null,["$6"],["d5x"],1923,0) +q(A,"dsI",6,null,["$6"],["d5y"],1924,0) +q(A,"dsJ",6,null,["$6"],["d5z"],1925,0) +q(A,"duX",6,null,["$6"],["d5A"],1926,0) +q(A,"duY",6,null,["$6"],["d5B"],1927,0) +q(A,"duZ",6,null,["$6"],["d5C"],1928,0) +q(A,"dv_",6,null,["$6"],["d5D"],1929,0) +q(A,"dv0",6,null,["$6"],["d5E"],1930,0) +q(A,"dv1",6,null,["$6"],["d5F"],1931,0) +q(A,"dv2",6,null,["$6"],["d5G"],1932,0) +q(A,"dvq",6,null,["$6"],["d5H"],1933,0) +q(A,"dvr",6,null,["$6"],["d5I"],1934,0) +q(A,"dvs",6,null,["$6"],["d5J"],1935,0) +q(A,"dvt",6,null,["$6"],["d5K"],1936,0) +q(A,"dvu",6,null,["$6"],["d5L"],1937,0) +q(A,"dvv",6,null,["$6"],["d5M"],1938,0) +q(A,"dvw",6,null,["$6"],["d5N"],1939,0) +q(A,"dvx",6,null,["$6"],["d5O"],1940,0) +q(A,"dvy",6,null,["$6"],["d5P"],1941,0) +q(A,"dvz",6,null,["$6"],["d5Q"],1942,0) +q(A,"dvA",6,null,["$6"],["d5R"],1943,0) +q(A,"dvB",6,null,["$6"],["d5S"],1944,0) +q(A,"dvC",6,null,["$6"],["d5T"],1945,0) +q(A,"dvD",6,null,["$6"],["d5U"],1946,0) +q(A,"dvE",6,null,["$6"],["d5V"],1947,0) +q(A,"drP",3,null,["$3"],["dov"],1948,0) +s(A,"dtp","d9l",1949) +p(A.NM.prototype,"gaC5","bAK",0) +o(h=A.a8i.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +o(A.als.prototype,"gIP","C",61) +s(A,"dva","dmI",514) +o(h=A.ahW.prototype,"gbbc","bbd",10) +m(h,"gbly","blz",1186) +l(h,"gbtq",0,3,null,["$3"],["btr"],1187,0,0) +r(A,"dss","dl3",61) +o(h=A.dL.prototype,"gIP","C",11) +n(h,"gbHv","cI",11) +p(h,"gb9j","a4m",0) +j(A.Bd.prototype,"gad4","fn","1()") +j(A.Yc.prototype,"gad4","fn","1()") +p(A.aC5.prototype,"gbjm","bjn",0) +j(A.YD.prototype,"gad4","fn","2()") +m(A.akb.prototype,"gbaA","baB",32) +s(A,"dvX","cUf",1950) +q(A,"dvY",1,function(){return{allTransitiveDependencies:B.dK,argument:null,debugGetCreateSourceHash:B.dK,dependencies:B.dK,from:null,name:B.dK}},["$2$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name","$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name","$7$allTransitiveDependencies$argument$debugGetCreateSourceHash$dependencies$from$name"],["cz6",function(a,b,c,d,e,f,g){return A.cz6(a,b,c,d,e,f,g,t.U1,t.z)},function(a,b,c,d,e,f,g){return A.cz6(a,b,c,d,e,f,g,t.U1,t.z)}],1951,1) +l(h=A.Mt.prototype,"gq4",0,1,function(){return[null]},["$2","$1"],["h1","m8"],73,0,0) +l(h,"gbj0",0,1,function(){return[null]},["$2","$1"],["a67","bj1"],73,0,0) +n(h,"gl4","B",11) +n(h,"gbj_","asq",11) +o(h=A.WZ.prototype,"gYl","lh",11) +i(h,"gHc","CL",32) +p(h,"gYp","O2",0) +o(h=A.YJ.prototype,"gYl","lh",11) +i(h,"gHc","CL",32) +p(h,"gYp","O2",0) +o(h=A.YI.prototype,"gYl","lh",11) +i(h,"gHc","CL",32) +p(h,"gYp","O2",0) +l(A.XU.prototype,"gq4",0,1,function(){return[null]},["$2","$1"],["h1","m8"],73,0,0) +o(h=A.aed.prototype,"gb5d","b5e",24) +o(h,"gb5f","b5g",15) +o(h,"gb5b","b5c",22) +o(h,"gb0a","b0b",35) +o(h=A.a2e.prototype,"gb6Q","b6R",5) +p(h,"gb37","b38",0) +p(h,"gb57","b58",0) +o(A.a2I.prototype,"gbof","bog",1249) +p(A.acM.prototype,"gaCK","bCG",0) +p(A.XV.prototype,"gapn","bca",0) +r(A,"dvo","dcJ",1952) +p(h=A.aga.prototype,"gae_","aG1",0) +l(h,"gbG9",0,0,null,["$1$gameMode","$0"],["aF0","aF_"],1272,0,0) +r(A,"dvm","dcL",1953) +q(A,"dst",1,null,["$1$1","$1"],["cNY",function(a){return A.cNY(a,t.z)}],1954,1) +o(A.afK.prototype,"gaCC","bCn",12) +q(A,"crM",3,null,["$3"],["de3"],247,0) +p(A.afJ.prototype,"gaCu","bBE",0) +p(A.adz.prototype,"gag4","QC",2) +o(h=A.aic.prototype,"gamS","K8",1352) +p(h,"gbFm","HA",2) +s(A,"vf","dmQ",1955) +s(A,"cTW","dnF",1956) +s(A,"dvh","dne",1957) +p(A.adr.prototype,"gbIf","Ph",2) +p(A.ajo.prototype,"gafu","Qd",2) +p(A.acJ.prototype,"gbBZ","Yq",2) +j(A.akv.prototype,"gaEr","k5",0) +o(A.aja.prototype,"gbo9","boa",1492) +p(A.afA.prototype,"giG","hm",2) +p(A.agW.prototype,"giG","hm",0) +p(h=A.ajC.prototype,"gaKA","Q4",2) +p(h,"giG","hm",2) +r(A,"dvM","diX",454) +o(h=A.aTT.prototype,"gaJa","pM",1514) +m(h,"gaLn","IO",1515) +o(h=A.a3V.prototype,"gb1J","am_","1?(h)") +m(h,"gbhA","F4",1522) +p(h,"gaJe","aJf","x<+id,row(h,1)>()") +q(A,"duk",2,function(){return[null]},["$3","$2"],["bMX",function(a,b){return A.bMX(a,b,null)}],1958,0) +r(A,"duj","dfF",1959) +r(A,"duf","dfA",1960) +q(A,"dug",2,function(){return[null]},["$3","$2"],["aGI",function(a,b){return A.aGI(a,b,null)}],1961,0) +r(A,"dud","dfs",1962) +q(A,"due",2,function(){return[null]},["$3","$2"],["aGB",function(a,b){return A.aGB(a,b,null)}],1963,0) +r(A,"dub","dfq",1964) +q(A,"duc",2,function(){return[null]},["$3","$2"],["aGw",function(a,b){return A.aGw(a,b,null)}],1965,0) +r(A,"duh","dfD",1966) +q(A,"dui",2,function(){return[null]},["$3","$2"],["aGL",function(a,b){return A.aGL(a,b,null)}],1967,0) +r(A,"dup","dfu",1968) +r(A,"dwp","ddA",1969) +p(A.aiE.prototype,"giG","hm",0) +m(h=A.ajH.prototype,"gbBQ","bBR",1558) +o(h,"gbBP","aCy",460) +o(h,"gbBS","bBT",460) +p(h,"giG","hm",0) +p(h,"gpz","hz",2) +p(h=A.afb.prototype,"gbyq","ux",2) +p(h,"gbbC","EP",0) +p(A.agi.prototype,"gafa","IC",2) +p(h=A.ajE.prototype,"giG","hm",2) +p(h,"gawP","Vw",2) +p(A.ajF.prototype,"giG","hm",0) +p(A.ajJ.prototype,"gbmd","a78",2) +p(h=A.ajK.prototype,"giG","hm",0) +m(h,"gbo2","bo3",43) +p(h=A.ajL.prototype,"giG","hm",0) +p(h,"gpz","hz",2) +p(h,"gaCS","YI",2) +o(h,"ga7a","UQ",459) +p(h=A.ajM.prototype,"giG","hm",0) +p(h,"gpz","hz",2) +o(h,"ga7a","UQ",142) +p(A.aGJ.prototype,"gawL","lD",99) +p(A.asw.prototype,"gawL","lD",99) +p(h=A.ajG.prototype,"gpz","hz",2) +p(h,"giG","hm",0) +p(h=A.ajI.prototype,"gpz","hz",2) +p(h,"giG","hm",0) +p(h=A.ajN.prototype,"gpz","hz",2) +p(h,"giG","hm",0) +p(h=A.ajO.prototype,"gpz","hz",2) +p(h,"giG","hm",0) +p(A.abo.prototype,"gaEs","bFv",0) +p(A.aft.prototype,"gaM8","Qw",2) +p(h=A.m3.prototype,"gxN","Kc",0) +p(h,"gf7","m",0) +p(h=A.vt.prototype,"gxN","Kc",0) +p(h,"gf7","m",0) +p(h=A.C7.prototype,"gxN","Kc",0) +p(h,"gf7","m",0) +p(h=A.u3.prototype,"gaqz","bfp",0) +p(h,"gf7","m",0) +p(h=A.akf.prototype,"gbbY","SW",0) +p(h,"gbcb","SY",0) +j(A.a8j.prototype,"gasb","biw",0) +p(A.m5.prototype,"gaFx","HS",144) +r(A,"dsr","d7r",169) +r(A,"cSD","d7q",169) +r(A,"dsp","d7o",169) +r(A,"dsq","d7p",169) +p(A.a4R.prototype,"gaFx","HS",144) +r(A,"dww","dfY",520) +r(A,"dwv","dfX",520) +p(A.hu.prototype,"gf7","m",0) +o(A.Yj.prototype,"gbL","bb",1) +r(A,"cTd","dkW",1972) +o(A.adE.prototype,"gaIS","pL",1713) +p(A.ag4.prototype,"gapi","bbD",0) +p(A.ahG.prototype,"gaYn","aYo",0) +o(A.Ec.prototype,"gaCl","aca",1726) +p(h=A.Yt.prototype,"ga6t","bkB",0) +p(h,"gf7","m",0) +o(h=A.SN.prototype,"gaCl","aca",1732) +p(h,"gbbs","bbt",0) +o(h=A.akw.prototype,"gbG","bo",1) +o(h,"gbL","bb",1) +o(h,"gbP","bh",1) +o(h,"gbZ","bi",1) +p(A.Ae.prototype,"gzC","bBA",0) +p(h=A.at_.prototype,"gaoL","b9S",204) +m(h,"gaZn","aZo",1737) +j(h,"gbpN","ao",0) +p(h=A.aOO.prototype,"gbcI","bcJ",0) +p(h,"gb96","b97",0) +o(A.Tc.prototype,"gaLb","aLc",26) +o(A.aBL.prototype,"gb42","b43",29) +o(h=A.us.prototype,"gbcd","bce",24) +o(h,"gbcw","bcx",15) +o(h,"gbb8","bb9",22) +p(h,"ga4M","Ky",0) +o(h,"gn7","jB",29) +o(h=A.ur.prototype,"gbbM","bbN",86) +o(h,"gbbK","bbL",95) +o(h,"gbbI","bbJ",107) +o(h,"gbbG","bbH",1754) +l(h,"ga4M",0,0,null,["$1$rejected","$0"],["a4N","Ky"],1755,0,0) +o(h=A.ahT.prototype,"gbL","bb",1) +o(h,"gbG","bo",1) +o(h,"gbZ","bi",1) +o(h,"gbP","bh",1) +o(A.aFN.prototype,"gaaN","Ck",102) +o(A.ajv.prototype,"gb7G","Sj",200) +s(A,"dtX","dhR",67) +s(A,"cTu","dhM",67) +s(A,"cTw","dhT",67) +s(A,"cTv","dhS",67) +s(A,"dtV","dhP",67) +s(A,"dtY","dhU",67) +s(A,"dtW","dhQ",67) +s(A,"dtU","dhO",67) +s(A,"dtS","dhL",67) +s(A,"dtT","dhN",67) +r(A,"dtZ","diM",147) +r(A,"du1","diP",147) +r(A,"du4","diS",147) +r(A,"du2","diQ",523) +r(A,"du3","diR",523) +r(A,"du_","diN",147) +r(A,"du0","diO",147) +o(h=A.aVw.prototype,"gA9","aIA",1773) +o(h,"gDq","aIv",1774) +p(A.abZ.prototype,"gf7","m",2) +o(A.abY.prototype,"gbcy","bcz",11) +r(A,"drH","do5",81) +r(A,"drG","dnV",81) +r(A,"drF","dl6",81) +p(h=A.aJU.prototype,"gbvA","bvB",1784) +p(h,"gbpX","bpY",1785) +p(h,"gaN5","aN6",1786) +j(h,"gavF","bne",1787) +p(h,"gbmY","bmZ",1788) +p(h,"gbn_","bn0",146) +p(h,"gBx","bn2",146) +p(h,"gbn3","bn4",146) +p(h,"gbn9","bna",146) +p(h,"gbn7","bn8",146) +j(h,"gbvd","bve",1790) +p(h,"gax3","bqD",1791) +p(h,"gbpS","bpT",1792) +p(h,"gbtb","btc",1793) +p(h,"gaDK","bEA",1794) +p(h,"gbuh","bui",1795) +p(h,"gbup","buq",285) +p(h,"gbut","buu",285) +p(h,"gbur","bus",285) +p(h,"gbuv","buw",115) +p(h,"gbul","bum",125) +p(h,"gbuj","buk",125) +p(h,"gbun","buo",125) +p(h,"gbuy","buz",125) +p(h,"gbuE","buF",125) +p(h,"gJ0","aMU",115) +p(h,"gJ1","aMV",115) +p(h,"grS","bBp",115) +p(h,"gbBn","bBo",115) +p(h,"gbBl","bBm",115) +o(A.aJV.prototype,"gaGg","bg",1815) +s(A,"drS","drt",139) +r(A,"cSp","dru",78) +r(A,"dto","d9c",236) +k(A,"dIb","b2m",198) +q(A,"cCc",2,null,["$1$2","$2"],["cRW",function(a,b){return A.cRW(a,b,t.b8)}],1976,0) +q(A,"dpP",2,null,["$2$3$debugLabel","$2","$2$2"],["alT",function(a,b){var g=t.z +return A.alT(a,b,null,g,g)},function(a,b,c,d){return A.alT(a,b,null,c,d)}],1977,0) +q(A,"csO",3,null,["$3"],["dtm"],1978,0) +s(A,"k0","cFI",103) +s(A,"k1","d2H",103) +s(A,"dwg","dpG",291) +s(A,"cU9","dsc",1979) +s(A,"dwh","dse",383) +s(A,"dwi","dsf",517) +s(A,"cUa","dsg",349) +s(A,"cUb","dsh",1982) +s(A,"cUc","dsj",1983) +s(A,"dwj","dtn",383) +s(A,"dwk","dwf",349) +s(A,"cUd","dwH",1984) +s(A,"drD","drx",163) +s(A,"drE","drA",105) +r(A,"cRV","do9",104) +s(A,"ds0","dvG",261) +s(A,"cSt","dvH",261) +s(A,"ds_","dvF",261) +r(A,"cSG","dmh",11) +s(A,"du5","dnk",110) +s(A,"du8","dnn",110) +s(A,"du9","dno",110) +s(A,"dua","dnp",110) +s(A,"du7","dnm",110) +s(A,"du6","dnl",110)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.mixinHard,q=hunkHelpers.inherit,p=hunkHelpers.inheritMany +q(A.S,null) +p(A.S,[A.ZK,A.b3R,A.Ci,A.bZ7,A.aVR,A.baS,A.rj,A.aox,A.axj,A.aoZ,A.a1R,A.avC,A.KH,A.Wp,A.a2z,A.rH,A.B,A.a2A,A.x6,A.aEH,A.Ls,A.abI,A.IY,A.bGq,A.avM,A.HK,A.ap4,A.aoX,A.aoh,A.lz,A.aBV,A.aAH,A.awJ,A.boC,A.boD,A.bje,A.apE,A.b9e,A.bzw,A.Wr,A.a0o,A.buf,A.jV,A.apW,A.Px,A.Py,A.b9d,A.ap_,A.b9i,A.HL,A.tE,A.Qu,A.a0b,A.aEz,A.ap5,A.apc,A.ap9,A.PA,A.a0q,A.ap8,A.ap6,A.b9g,A.e3,A.apd,A.a0K,A.b9x,A.b9y,A.bhs,A.bht,A.a2D,A.bit,A.bdx,A.bDD,A.avF,A.bm6,A.avE,A.a42,A.asW,A.a23,A.aNK,A.aNP,A.asU,A.biK,A.bgC,A.aDW,A.LN,A.aVQ,A.bD5,A.biV,A.aZf,A.atN,A.R3,A.IZ,A.a3x,A.a_h,A.n3,A.apZ,A.X6,A.iq,A.ha,A.aFC,A.aeg,A.bJ1,A.bJ0,A.Vs,A.aan,A.nW,A.bzb,A.bas,A.aMd,A.bb4,A.Fr,A.bwV,A.aXs,A.aSW,A.bIR,A.aFD,A.bKv,A.Y4,A.Ts,A.ED,A.zY,A.bGp,A.bwY,A.Ex,A.bA_,A.hJ,A.c9l,A.bBE,A.aFF,A.Oh,A.blR,A.Vt,A.bIS,A.IA,A.buP,A.bFF,A.QO,A.vR,A.atr,A.aEr,A.wH,A.M9,A.Gp,A.byd,A.a3W,A.a9H,A.a3Y,A.ZW,A.z5,A.awl,A.w_,A.bol,A.baN,A.btv,A.b7_,A.zB,A.a30,A.att,A.ats,A.avh,A.bxt,A.bOu,A.aBu,A.aBC,A.bxC,A.bD1,A.bxU,A.apg,A.by1,A.aR4,A.bSt,A.cn2,A.xq,A.X1,A.Ya,A.c15,A.bxV,A.cyA,A.bzz,A.auO,A.auN,A.bv5,A.b35,A.aBW,A.A5,A.amF,A.a2C,A.aEn,A.aEm,A.M5,A.bgQ,A.bgR,A.bF7,A.bF3,A.aNn,A.a2,A.rE,A.bnW,A.bnY,A.bH3,A.bH7,A.bPv,A.aCw,A.bIW,A.aoz,A.KR,A.bwB,A.Vq,A.b8i,A.blM,A.bKX,A.bKW,A.c0A,A.c0B,A.c0z,A.VP,A.boV,A.aFc,A.aDS,A.bLk,A.vS,A.wv,A.a2E,A.a2G,A.a2F,A.aaW,A.bKH,A.aG5,A.hx,A.AJ,A.b6W,A.apD,A.bgE,A.bgF,A.aaR,A.bgz,A.ant,A.VN,A.QG,A.bnC,A.bL_,A.bKI,A.bma,A.bg0,A.bfk,A.axd,A.dX,A.bhH,A.asK,A.bdR,A.bbi,A.bjs,A.a3p,A.yG,A.aHB,A.cxF,A.a41,A.c1y,A.bm9,J.RR,J.cP,A.bg,A.Pp,A.jx,A.aT,A.aMz,A.aLO,A.aoE,A.c3,A.bFk,A.bj,A.c4,A.i6,A.De,A.aFQ,A.aFR,A.aEJ,A.aEK,A.atm,A.auj,A.jW,A.a37,A.aHb,A.uC,A.Be,A.SA,A.PY,A.Gd,A.cZ,A.a4D,A.bNC,A.aAe,A.a2S,A.aiS,A.cdc,A.boY,A.Si,A.u1,A.XN,A.oO,A.Vm,A.cg4,A.bU_,A.c2r,A.rX,A.aPu,A.ajT,A.cg9,A.a53,A.ajD,A.acH,A.aKT,A.afx,A.dr,A.a_j,A.iG,A.AR,A.Ny,A.th,A.ak,A.aKS,A.Gv,A.aXC,A.acI,A.WT,A.aNq,A.bXy,A.Go,A.Xg,A.qZ,A.Xn,A.NK,A.b_i,A.b_h,A.Ga,A.nz,A.c3S,A.xj,A.XJ,A.mg,A.aRc,A.Gy,A.aej,A.aNR,A.NP,A.aX9,A.aX8,A.xr,A.uz,A.eS,A.Pl,A.acT,A.aLj,A.aoR,A.aWC,A.c3b,A.aQx,A.bUu,A.cg5,A.aZn,A.iu,A.hO,A.bSw,A.GB,A.am,A.aU,A.aAv,A.aa2,A.aeC,A.kV,A.a4w,A.aY,A.bd,A.xu,A.py,A.a8G,A.bu,A.ak4,A.aHf,A.tk,A.tQ,A.Fe,A.aXB,A.bb3,A.cwH,A.aeA,A.cE,A.atW,A.cgh,A.bQx,A.zC,A.aLF,A.bi1,A.IT,A.n0,A.NY,A.a33,A.aP_,A.aGN,A.a9V,A.rU,A.zb,A.aAd,A.c33,A.aU3,A.c34,A.atp,A.bU0,A.aiY,A.AT,A.b90,A.aAk,A.W,A.bb,A.qA,A.pi,A.v,A.zi,A.cxp,A.Fg,A.wb,A.avO,A.yS,A.jm,A.M3,A.ue,A.zO,A.hL,A.h9,A.bFi,A.o8,A.w0,A.Jb,A.At,A.aaV,A.kr,A.cC,A.ea,A.Ez,A.b85,A.auM,A.b4a,A.b7h,A.bkM,A.aBD,A.wt,A.aNw,A.aJ,A.bxu,A.c40,A.ann,A.ZR,A.ZS,A.k7,A.H6,A.OR,A.a_n,A.amB,A.amC,A.aXb,A.bKs,A.kg,A.aQ7,A.c7x,A.avR,A.b8n,A.b8o,A.eT,A.b8B,A.Vl,A.tz,A.a_u,A.ka,A.b97,A.KG,A.aC,A.apq,A.e7,A.a1E,A.RV,A.kk,A.Gz,A.XM,A.Kc,A.asj,A.ave,A.agY,A.NB,A.aHd,A.aHc,A.apG,A.bOE,A.b2s,A.aJP,A.c9n,A.a3_,A.a4X,A.a3u,A.m2,A.x_,A.bN7,A.rD,A.bsq,A.byc,A.bA,A.b5o,A.bOA,A.bcE,A.ac2,A.OY,A.LG,A.aog,A.aNy,A.p9,A.bd3,A.jl,A.bSv,A.ph,A.avd,A.aAu,A.cdb,A.bvj,A.nj,A.bNr,A.ani,A.iQ,A.Sn,A.aH2,A.bfg,A.b3_,A.QL,A.bgv,A.aPC,A.AL,A.mm,A.qz,A.aCx,A.Pk,A.aGq,A.aHj,A.Qi,A.Tu,A.aO2,A.a4B,A.b6c,A.bq3,A.btu,A.anW,A.tB,A.bn9,A.api,A.bn6,A.RD,A.Ka,A.a5O,A.Un,A.a31,A.E5,A.a5G,A.SQ,A.zr,A.Je,A.C4,A.bh8,A.aB3,A.a13,A.a8s,A.PP,A.PQ,A.a4b,A.bnb,A.tY,A.RE,A.bn8,A.bkT,A.PX,A.aFh,A.bNK,A.bvi,A.bPk,A.vK,A.bNp,A.bt5,A.Ay,A.apS,A.bLr,A.ch,A.atB,A.b9H,A.a5J,A.aeG,A.brJ,A.bi0,A.l0,A.yL,A.bi2,A.bdw,A.aR_,A.Dl,A.bo8,A.bz3,A.qx,A.c0d,A.aLl,A.aLb,A.aLd,A.aLe,A.aL7,A.aPb,A.aLh,A.aLf,A.b67,A.aYM,A.b5H,A.aLc,A.a_B,A.av_,A.aV2,A.AC,A.aWB,A.aWA,A.aL5,A.aPa,A.aP9,A.aP6,A.aP8,A.aU4,A.aPV,A.aZA,A.aP7,A.aOL,A.b5j,A.c3n,A.b5m,A.aL2,A.tv,A.aP4,A.aP5,A.zH,A.jK,A.awW,A.ir,A.aT5,A.aoA,A.aR3,A.aoW,A.bO0,A.pU,A.b4d,A.bn4,A.aQ5,A.azj,A.fN,A.df,A.Ge,A.av7,A.yZ,A.a3P,A.t3,A.a3i,A.a61,A.azT,A.bhg,A.Fx,A.yT,A.auB,A.bk5,A.ah,A.bvt,A.bhl,A.anU,A.aPO,A.pl,A.bbR,A.aFf,A.boW,A.bKL,A.Ax,A.baE,A.czU,A.aM6,A.aM7,A.wR,A.aQr,A.aKh,A.bGv,A.bGx,A.a3j,A.b86,A.bkQ,A.bOx,A.bG0,A.aKL,A.BU,A.a6O,A.a_8,A.a_7,A.Hc,A.BT,A.ld,A.aQt,A.bLs,A.aKp,A.dT,A.aQ4,A.ask,A.af4,A.c7T,A.c7S,A.c7M,A.a1p,A.dG,A.nm,A.adM,A.aNi,A.vv,A.aMX,A.ajy,A.a6h,A.aN_,A.aMY,A.bbf,A.abq,A.jI,A.aPi,A.ao3,A.c8o,A.bh,A.tL,A.il,A.cAj,A.ze,A.kZ,A.Tv,A.cma,A.bPw,A.a7J,A.ux,A.dc,A.Rh,A.Xu,A.bk_,A.cdd,A.Rj,A.In,A.yC,A.vL,A.ro,A.mY,A.aTm,A.jZ,A.aKc,A.aMi,A.aMs,A.aMn,A.aMl,A.aMm,A.aMk,A.aMo,A.aMw,A.aMu,A.aMv,A.aMt,A.aMq,A.aMr,A.aMp,A.aMj,A.J0,A.a1K,A.oa,A.YX,A.z1,A.Sr,A.E4,A.a5a,A.Ss,A.Bq,A.cA5,A.by6,A.awO,A.zs,A.adG,A.Bl,A.bxY,A.by0,A.l2,A.NW,A.a8P,A.a8Q,A.UI,A.aQX,A.t4,A.uD,A.aXQ,A.aXT,A.aXS,A.aXU,A.aXR,A.ajn,A.aMa,A.Ri,A.ks,A.FN,A.agL,A.le,A.pG,A.Xd,A.c4r,A.aM0,A.aKg,A.Y2,A.NV,A.b3L,A.aE1,A.bG1,A.bGL,A.aW1,A.aKO,A.b_V,A.b_P,A.AW,A.aL9,A.aRe,A.aLw,A.aLx,A.aLz,A.aLK,A.aLM,A.aQN,A.aRW,A.aLN,A.bGy,A.aLR,A.aLW,A.c9,A.aLZ,A.bUb,A.z9,A.aM8,A.aN3,A.aN9,A.aNx,A.aND,A.aNY,A.o4,A.aO_,A.aOm,A.B_,A.aOD,A.aOU,A.bXn,A.aPg,A.bip,A.bhz,A.bhy,A.atM,A.bio,A.aQ3,A.wd,A.eX,A.aub,A.aNf,A.cbX,A.RQ,A.aQm,A.aR2,A.asm,A.aLt,A.aYh,A.afC,A.by,A.bS,A.a5A,A.zm,A.aRK,A.aRL,A.aRt,A.aQP,A.btD,A.aS5,A.aS8,A.SY,A.aS9,A.aSH,A.Ke,A.aST,A.Z4,A.aTK,A.aTS,A.aU1,A.bDd,A.UF,A.baz,A.a8M,A.aW3,A.a93,A.aW4,A.aQO,A.aW5,A.ig,A.aW7,A.ab3,A.aWK,A.bGw,A.bzs,A.bzv,A.bzt,A.bzu,A.b5Z,A.b5V,A.cbB,A.kn,A.a7B,A.bYb,A.aX1,A.xP,A.aXw,A.aXA,A.b0T,A.b0U,A.aXG,A.aY_,A.aY8,A.aYi,A.aYm,A.Xz,A.aOP,A.aZI,A.aYo,A.aYG,A.W4,A.aYJ,A.aZ8,A.jE,A.aFZ,A.a6J,A.a_S,A.atT,A.b9o,A.w4,A.w3,A.Qn,A.aNh,A.acY,A.bSz,A.h5,A.bkA,A.bms,A.aLP,A.aSY,A.Js,A.vm,A.aA5,A.kX,A.kh,A.aQ6,A.aQ8,A.bn1,A.amH,A.z8,A.buR,A.aXm,A.Tx,A.pA,A.cii,A.cim,A.XI,A.Xl,A.uH,A.li,A.aFe,A.bVO,A.c8V,A.cmf,A.W6,A.Ul,A.aT6,A.afw,A.bD,A.Qm,A.uK,A.bOd,A.c3m,A.a_b,A.an7,A.aQF,A.awI,A.wf,A.aRX,A.b_X,A.aZ,A.f6,A.ap,A.wC,A.cev,A.aWk,A.up,A.aCT,A.b0G,A.c9C,A.l4,A.a7T,A.a99,A.l9,A.aEg,A.bEL,A.ox,A.aWg,A.aES,A.aWU,A.Ug,A.bGA,A.bGB,A.u2,A.bBz,A.bvo,A.bx5,A.pq,A.VH,A.Wq,A.uk,A.ai6,A.xw,A.Xs,A.bx0,A.lH,A.Az,A.MK,A.ab9,A.aEi,A.bF6,A.Pt,A.aoP,A.vD,A.et,A.aWi,A.aWl,A.AQ,A.va,A.Bm,A.un,A.aWm,A.bF4,A.ang,A.Nu,A.BW,A.a_s,A.uG,A.b5g,A.b6d,A.UV,A.b6Z,A.mV,A.aQB,A.bkK,A.a4M,A.awj,A.bow,A.aQD,A.rF,A.ok,A.SR,A.bIi,A.bnX,A.bnZ,A.bH4,A.bH8,A.btw,A.ST,A.C0,A.hZ,A.QS,A.bxE,A.L1,A.TK,A.bcb,A.aU6,A.aU7,A.bzB,A.i9,A.iV,A.Fq,A.a9X,A.bce,A.b46,A.wM,A.aY3,A.aS0,A.ci2,A.Aw,A.U0,A.cu,A.aGd,A.bKZ,A.M1,A.bL0,A.aG6,A.aaX,A.b02,A.aH7,A.bNM,A.aKf,A.Y1,A.G4,A.f4,A.l1,A.lq,A.he,A.ac5,A.hT,A.apQ,A.asQ,A.a29,A.vM,A.aen,A.W7,A.pF,A.ce_,A.aPH,A.aL0,A.biL,A.aPn,A.aPl,A.aPP,A.Xq,A.aPr,A.Xe,A.aNz,A.bdf,A.b07,A.b06,A.aQb,A.b7k,A.a6j,A.c8p,A.aDF,A.DG,A.Ja,A.bF5,A.c1J,A.B5,A.wq,A.k,A.aoC,A.qD,A.bp6,A.aP2,A.F6,A.Y5,A.ass,A.u5,A.aG8,A.K9,A.a5E,A.aZk,A.A7,A.aH1,A.Gj,A.aVA,A.c8a,A.ov,A.zF,A.O5,A.aAy,A.aiX,A.qt,A.bs_,A.bxv,A.a79,A.pr,A.ot,A.tf,A.aDM,A.ax5,A.bDM,A.cne,A.Fl,A.l8,A.nv,A.aHG,A.aEe,A.aE7,A.bfh,A.JM,A.aWE,A.b_m,A.aWw,A.aWz,A.v9,A.mx,A.t_,A.ae9,A.a9W,A.kq,A.pL,A.b0X,A.aGe,A.aEf,A.uJ,A.VR,A.hM,A.e5,A.adA,A.Nd,A.aZe,A.b7M,A.bmt,A.b7N,A.bar,A.b7L,A.yK,A.aA9,A.rg,A.brE,A.bi_,A.avG,A.aCi,A.bOF,A.auP,A.auQ,A.auR,A.b7J,A.aFH,A.y9,A.aaq,A.aKQ,A.bIX,A.bJg,A.aFJ,A.Pq,A.EP,A.TP,A.z3,A.bJG,A.aHR,A.p0,A.dQ,A.Q8,A.yo,A.a18,A.kN,A.I1,A.RA,A.Jt,A.d8,A.RK,A.afg,A.Q9,A.aAa,A.buN,A.aGc,A.v2,A.amW,A.amY,A.b3x,A.acA,A.aLH,A.bIl,A.aj4,A.cgk,A.bIp,A.bIv,A.ada,A.bIA,A.bIE,A.cz8,A.aXo,A.aj5,A.Au,A.bIL,A.bJX,A.bK4,A.bK9,A.bKb,A.ajj,A.bKf,A.aFP,A.ajk,A.ajl,A.aXN,A.aXO,A.bie,A.Od,A.bB6,A.bb2,A.ajh,A.aXM,A.chx,A.chy,A.aXK,A.chz,A.baC,A.baD,A.pT,A.bbS,A.bel,A.tP,A.Th,A.atd,A.apo,A.bfa,A.bKF,A.cbC,A.b9J,A.bfj,A.HV,A.aWD,A.bG_,A.ceR,A.bdH,A.bdE,A.bdF,A.bdG,A.bre,A.axk,A.a7I,A.aCu,A.bFu,A.bri,A.bJQ,A.bJR,A.bLG,A.bFl,A.bPr,A.a0N,A.l5,A.Fs,A.abc,A.lR,A.P3,A.b6A,A.apM,A.q0,A.baF,A.baH,A.baG,A.by9,A.aHs,A.baK,A.zU,A.AM,A.atR,A.Dn,A.bia,A.atX,A.pW,A.bnO,A.rS,A.bym,A.bGN,A.aGs,A.bPl,A.bPs,A.bPt,A.Tn,A.bNP,A.bGM,A.bwK,A.b7S,A.b94,A.bKp,A.aXP,A.bK2,A.bo5,A.bIZ,A.bNX,A.bOP,A.pJ,A.Gx,A.aVY,A.c11,A.bCo,A.aDL,A.rW,A.aVL,A.aVM,A.Rk,A.aVK,A.bFN,A.oG,A.a8F,A.auV,A.aW,A.b6e,A.b6g,A.vs,A.dN,A.b5u,A.aa8,A.qa,A.Ht,A.b8Z,A.a4N,A.awn,A.bNE,A.avj,A.af5,A.a8q,A.c8q,A.asv,A.aw1,A.Gk,A.aQv,A.lp,A.agG,A.aSh,A.aOf,A.iR,A.bNz,A.blP,A.hK,A.oj,A.bBS,A.bgu,A.baL,A.Xm,A.blO,A.qO,A.aFO,A.avB,A.bNy,A.bs,A.anQ,A.anY,A.b5Y,A.PD,A.a5F,A.bmV,A.bmG,A.Qh,A.Ek,A.as6,A.hE,A.xf,A.buS,A.aAf,A.buT,A.aFs,A.Wf,A.ax6,A.anm,A.aBF,A.aBG,A.l3,A.L4,A.avJ,A.avI,A.DB,A.UU,A.aTX,A.vn,A.re,A.aQg,A.b4l,A.TF,A.wy,A.rO,A.bmq,A.bmp,A.bmo,A.bns,A.bdD,A.a1U,A.bdC,A.a1T,A.bpg,A.E1,A.bxJ,A.L2,A.bx_,A.KV,A.aEp,A.UZ,A.bFr,A.UY,A.bFo,A.a9q,A.bFq,A.a9r,A.aEo,A.UW,A.bFp,A.UX,A.bE9,A.UL,A.asR,A.a1V,A.b52,A.xX,A.Y8,A.c9I,A.bpn,A.ax8,A.bpo,A.bpp,A.bpr,A.wg,A.bpq,A.Sp,A.aor,A.Ro,A.bOw,A.apV,A.AE,A.bDy,A.fK,A.bt7,A.of,A.u7,A.a6W,A.a5W,A.H4,A.vp,A.lr,A.cvy,A.cvP,A.cwA,A.QJ,A.auJ,A.rG,A.cyq,A.Tw,A.cyR,A.bH9,A.czx,A.czG,A.b5M,A.brA,A.bG4,A.avQ,A.aAq,A.a6D,A.a6E,A.apP,A.bIk,A.aB4,A.aBb,A.fu,A.bJe,A.aBd,A.bJd,A.azF,A.a6V,A.Q2,A.aB5,A.bz,A.AD,A.axl,A.kb,A.axc,A.jr,A.aHP,A.c3l,A.aBp,A.anO,A.OI,A.a0l,A.KN,A.ua,A.U7,A.anN,A.bcm,A.a_A,A.anT,A.bf7,A.bf8,A.yD,A.at8,A.ake,A.b5S,A.KK,A.KL,A.a2j,A.a7v,A.anV,A.Eu,A.anX,A.BX,A.aE9,A.R8,A.It,A.KM,A.Lo,A.b5Q,A.b6_,A.bxq,A.aBw,A.bhB,A.cbE,A.fY,A.aCA,A.aNr,A.AU,A.aC4,A.aC3,A.aU_,A.TQ,A.a4t,A.bza,A.bz5,A.aCe,A.aCg,A.bwd,A.c9m,A.aCd,A.aCc,A.a7s,A.bBR,A.ahV,A.aDU,A.bHe,A.b57,A.b56,A.ZP,A.xR,A.xY,A.xt,A.lE,A.dL,A.vZ,A.NG,A.is,A.mr,A.rT,A.aAz,A.agS,A.aC5,A.alf,A.qX,A.akb,A.jt,A.ko,A.hu,A.Z3,A.a3y,A.bZ2,A.atw,A.XU,A.bDE,A.Mc,A.V1,A.byb,A.bkm,A.fJ,A.aK4,A.HZ,A.Q6,A.baZ,A.k4,A.aCa,A.eW,A.a7o,A.bJf,A.jj,A.Dc,A.anb,A.p_,A.acv,A.uL,A.Ns,A.A8,A.ao4,A.rh,A.bjJ,A.bGn,A.bDC,A.yV,A.auI,A.q_,A.A9,A.bjN,A.auH,A.auG,A.aPs,A.bQf,A.WN,A.ac1,A.asJ,A.auE,A.aA8,A.aBU,A.aE_,A.aJL,A.auF,A.PI,A.b_f,A.b_g,A.aOo,A.a2s,A.bY,A.Vk,A.boU,A.bYW,A.c_2,A.b54,A.bra,A.bgd,A.zp,A.v8,A.bsZ,A.bt1,A.tG,A.bQe,A.Ce,A.tK,A.a0s,A.a0u,A.a0D,A.HN,A.rk,A.a0y,A.h_,A.eK,A.fd,A.a2N,A.o6,A.vV,A.a_J,A.a_P,A.a_U,A.a_L,A.Hq,A.ao5,A.T2,A.a6p,A.a6n,A.bDz,A.bUj,A.bZq,A.jR,A.bQ2,A.acn,A.Nm,A.WK,A.act,A.acr,A.b5x,A.b9m,A.boP,A.bx6,A.a57,A.aAi,A.aFg,A.cAg,A.bNF,A.bQ8,A.bcz,A.i0,A.aK5,A.bss,A.bFs,A.ciE,A.aTT,A.aSl,A.a3V,A.mS,A.kL,A.WM,A.Wc,A.abh,A.MO,A.wW,A.f9,A.jz,A.a03,A.bQo,A.hb,A.iN,A.aEC,A.b0N,A.WP,A.fD,A.aK7,A.fA,A.db,A.jA,A.uO,A.kv,A.aK6,A.aK8,A.aWI,A.aED,A.oz,A.V5,A.a9I,A.i3,A.bQl,A.bQm,A.qf,A.V4,A.aGD,A.aGE,A.aGy,A.aGJ,A.asw,A.bMI,A.bMQ,A.abn,A.bQr,A.c3o,A.a_k,A.bhm,A.pY,A.b7s,A.cxl,A.bw8,A.aEI,A.aw5,A.aF5,A.aF8,A.Ve,A.bl2,A.nA,A.v6,A.uv,A.aFa,A.m5,A.fU,A.a4R,A.JU,A.fM,A.uR,A.aHn,A.aag,A.oQ,A.yv,A.asl,A.bct,A.Ed,A.asn,A.bt9,A.SJ,A.brT,A.cfy,A.ast,A.yu,A.B7,A.c8I,A.baP,A.azw,A.v1,A.bcs,A.B8,A.bt8,A.azI,A.beb,A.Cv,A.Qq,A.Qz,A.asZ,A.JE,A.be6,A.be4,A.at_,A.zn,A.axa,A.JT,A.bvs,A.brY,A.azq,A.iH,A.brZ,A.bFX,A.aBL,A.aEA,A.a9F,A.a48,A.aFW,A.Ks,A.Kt,A.a5M,A.azu,A.bcn,A.zl,A.brX,A.jn,A.azl,A.mi,A.bue,A.uU,A.qM,A.Yg,A.Y6,A.Mw,A.aFN,A.bOK,A.a4c,A.a4Q,A.bzm,A.bO1,A.bO2,A.qw,A.c9s,A.aSX,A.bXo,A.bOc,A.aY5,A.aY2,A.aHq,A.a7D,A.aCp,A.Bc,A.Y7,A.asg,A.bOb,A.bOa,A.cbs,A.bed,A.eo,A.pp,A.avN,A.at1,A.tt,A.EC,A.qv,A.mn,A.bUg,A.c9r,A.a6T,A.bn_,A.aQ,A.tX,A.wu,A.aaj,A.IU,A.aaZ,A.aaS,A.MC,A.fL,A.aj7,A.uA,A.aVw,A.aZF,A.Vu,A.a27,A.aat,A.Vv,A.yh,A.aHJ,A.aFI,A.aty,A.aHr,A.q5,A.Kj,A.Ni,A.Eb,A.Ki,A.c5,A.aCh,A.EQ,A.dD,A.qT,A.FO,A.aoB,A.FR,A.b1j,A.bbv,A.tb,A.a2f,A.abY,A.bOB,A.cwI,A.aeB,A.b6V,A.AS,A.bOL,A.bOO,A.bxG,A.bxH,A.bxI,A.FT,A.ke,A.FY,A.aJW,A.bPU,A.aJQ,A.bPB,A.bPV,A.bPW,A.aJX,A.b1n,A.b__,A.bPC,A.aJU,A.apR,A.aZX,A.acg,A.aJV,A.bXi,A.vU,A.asT,A.a2_,A.amU,A.aZr,A.bph,A.bwG,A.ib,A.bDq,A.YE,A.LO,A.apt,A.hv,A.abT,A.aaF,A.BO,A.ZM,A.Fw,A.F5,A.Ti,A.aK_,A.aHt,A.Fv,A.x9]) +p(A.Ci,[A.apr,A.b3W,A.b3S,A.b3T,A.b3U,A.b9c,A.coj,A.coM,A.coL,A.bm3,A.bm4,A.bm0,A.bm1,A.bm2,A.crO,A.crN,A.bGt,A.cto,A.bmB,A.btX,A.cp9,A.b9f,A.cpq,A.b9k,A.b9F,A.b9G,A.b9A,A.b9B,A.b9z,A.b9D,A.b9E,A.b9C,A.bdP,A.bdS,A.aps,A.cqV,A.ctH,A.ctG,A.biW,A.biX,A.biY,A.biZ,A.bj_,A.bj0,A.bj3,A.bj1,A.cs4,A.cs5,A.cs6,A.cs3,A.c9q,A.blS,A.blT,A.buQ,A.blH,A.blI,A.blF,A.blG,A.csF,A.bir,A.bis,A.biu,A.biq,A.csc,A.csd,A.cpu,A.cpv,A.cpw,A.cpx,A.cpy,A.cpz,A.cpA,A.cpB,A.boh,A.boi,A.boj,A.bok,A.bor,A.bov,A.cth,A.btH,A.bG6,A.bG7,A.bhE,A.bgN,A.bgM,A.bgJ,A.bgK,A.bgL,A.bgI,A.bgG,A.bgP,A.bD2,A.bSu,A.c9M,A.c9O,A.c9P,A.c9Q,A.c9R,A.c9S,A.c9T,A.bzD,A.bd_,A.b38,A.b39,A.bnl,A.bnm,A.bE1,A.bE2,A.bgS,A.bcv,A.btj,A.bKD,A.bKN,A.bKO,A.bKP,A.bKQ,A.bKS,A.b8j,A.bgA,A.bgB,A.bcf,A.bcg,A.bch,A.bci,A.bmi,A.bmj,A.bmg,A.b3F,A.bi8,A.bi9,A.bmb,A.bfl,A.crm,A.bbg,A.bbj,A.bjt,A.c1A,A.c1B,A.bTY,A.b8D,A.a4u,A.aFX,A.bo4,A.bo3,A.csB,A.csD,A.cga,A.bRG,A.bRF,A.co4,A.co3,A.chl,A.chn,A.chm,A.bjC,A.bjx,A.c0L,A.c0S,A.bHX,A.bI_,A.bIe,A.bIa,A.bI8,A.bIc,A.bIf,A.bI6,A.bI4,A.bI2,A.cg2,A.cdp,A.c1x,A.bWE,A.c3R,A.brf,A.bGR,A.bGU,A.coC,A.c37,A.bSy,A.bbI,A.bbJ,A.cmi,A.cmp,A.coH,A.coI,A.bPe,A.bPf,A.bZh,A.bZj,A.coA,A.cow,A.bv4,A.bXO,A.bXM,A.bXL,A.bXN,A.c_z,A.c_D,A.c_B,A.c_I,A.c_H,A.c_O,A.c_Q,A.c_N,A.c_K,A.c_J,A.c_S,A.c_R,A.cb9,A.cbc,A.cbb,A.cbe,A.cbd,A.cba,A.bE8,A.bzO,A.coD,A.coE,A.cr_,A.cr0,A.cr1,A.csM,A.ctk,A.ctl,A.crC,A.bof,A.crd,A.bkP,A.bkN,A.bFB,A.bFC,A.bFD,A.bFE,A.b40,A.b4_,A.b50,A.bFL,A.bFM,A.cp7,A.cp8,A.b80,A.btL,A.bmE,A.bmF,A.b8A,A.b8z,A.b8y,A.b8s,A.b8t,A.b8u,A.b8w,A.b8r,A.b9a,A.bWj,A.bW3,A.bWb,A.c9K,A.c58,A.c4O,A.c51,A.c52,A.c5y,A.c5d,A.c5r,A.c5t,A.bxQ,A.bxP,A.cmU,A.cmV,A.cmT,A.cmW,A.b8a,A.b8c,A.b8f,A.bsx,A.ctb,A.bPz,A.bPA,A.c9o,A.bsr,A.b72,A.b74,A.b75,A.b76,A.b77,A.b78,A.b79,A.bd9,A.bdb,A.bdc,A.bde,A.bd6,A.bd7,A.bnK,A.cst,A.bJJ,A.crU,A.crp,A.bYF,A.bfd,A.bfc,A.bpi,A.bpj,A.bpk,A.crR,A.crS,A.b6b,A.bO6,A.bO5,A.bO7,A.byp,A.bna,A.bt4,A.bt6,A.bhJ,A.bp0,A.cot,A.csV,A.bhh,A.c_t,A.c_w,A.c_s,A.c6_,A.brM,A.cts,A.bh9,A.bha,A.bhb,A.bhc,A.bhd,A.bhe,A.bhW,A.bhX,A.bhY,A.bhZ,A.bhU,A.bhV,A.bhP,A.bhQ,A.bhR,A.bhO,A.bcW,A.bo9,A.boa,A.bz4,A.cs7,A.cs8,A.c0h,A.bSr,A.b5F,A.b5I,A.b5l,A.bFS,A.bFT,A.bFU,A.bFV,A.bFW,A.bAd,A.bAe,A.bAf,A.bAh,A.bAi,A.bAk,A.bAl,A.bAm,A.bAn,A.bAo,A.bAp,A.c9w,A.c9u,A.bxb,A.bxc,A.bxj,A.bxg,A.bxh,A.bxi,A.b5z,A.bbu,A.c1Y,A.bOy,A.ban,A.bam,A.bal,A.bai,A.bah,A.baf,A.bag,A.bA2,A.bu1,A.bu_,A.bu2,A.btZ,A.bu0,A.bid,A.bjY,A.b6z,A.b6w,A.b6x,A.b6y,A.b9S,A.b9T,A.bUN,A.bUO,A.bUT,A.bUP,A.bUU,A.bUV,A.bUW,A.bUX,A.bUZ,A.bUY,A.bV_,A.bUQ,A.bUR,A.ctK,A.bV3,A.bV5,A.bV1,A.bV4,A.bV0,A.bV2,A.csj,A.bVB,A.bVC,A.bUx,A.bUy,A.baX,A.baV,A.bEv,A.bVV,A.caa,A.cab,A.bWp,A.cbP,A.bVU,A.bVT,A.bWn,A.bWo,A.bb7,A.bWq,A.bWz,A.cbS,A.cbT,A.cbR,A.cbU,A.cbV,A.bbe,A.buI,A.bWA,A.bix,A.biz,A.biA,A.crF,A.crG,A.bH1,A.bJK,A.c10,A.bxW,A.bxX,A.by7,A.btG,A.bDk,A.bDo,A.ctJ,A.ctO,A.c9a,A.c96,A.c92,A.c93,A.c4A,A.c4y,A.c4t,A.c4s,A.c4v,A.c4G,A.c4H,A.c4F,A.b5q,A.b5r,A.b5s,A.bef,A.beg,A.beh,A.bgw,A.bgx,A.bgy,A.bQB,A.b3l,A.b3m,A.b3n,A.c4I,A.brn,A.bXX,A.bXY,A.c7l,A.btn,A.bST,A.b7p,A.bTI,A.bTJ,A.bTK,A.bTl,A.bTm,A.bTn,A.bTy,A.bTB,A.bTC,A.bTD,A.bTE,A.bTF,A.bTG,A.bTH,A.bTo,A.bTp,A.bTq,A.bTz,A.bTj,A.bTA,A.bTi,A.bTr,A.bTs,A.bTt,A.bTu,A.bTv,A.bTw,A.bTx,A.bXb,A.bXc,A.bXd,A.bX7,A.bX8,A.bXa,A.bX6,A.cnl,A.cnm,A.cnn,A.cnh,A.cni,A.cnk,A.cng,A.bU6,A.bU7,A.bU5,A.bU3,A.bU2,A.bU4,A.bUf,A.ctL,A.bWO,A.bWN,A.bWP,A.bWR,A.bWT,A.bWS,A.bWU,A.bWQ,A.bcZ,A.bYp,A.bYq,A.bYk,A.bYl,A.bYs,A.bYt,A.bYu,A.bYj,A.bYg,A.bYY,A.bZ_,A.bZ1,A.bYZ,A.bZ0,A.c_T,A.c_V,A.c_X,A.c_U,A.c_W,A.c03,A.c05,A.c07,A.c04,A.c06,A.c1V,A.c1S,A.c1U,A.c1T,A.c0_,A.c00,A.c02,A.c01,A.c08,A.c09,A.c0b,A.c0a,A.c8Q,A.c8R,A.c8T,A.c8U,A.c8S,A.c2x,A.c2u,A.c2A,A.c2C,A.cbZ,A.c2J,A.c2G,A.c2E,A.c2L,A.c2M,A.c2N,A.c2K,A.c2H,A.c2I,A.c2F,A.bp3,A.cc9,A.bp1,A.bLj,A.c5P,A.c5z,A.c5A,A.c5B,A.c5C,A.brr,A.c68,A.c69,A.c61,A.c67,A.c64,A.c65,A.c6B,A.c6N,A.c6O,A.c6P,A.c6M,A.c78,A.c79,A.c7a,A.c6Y,A.c6Z,A.c7_,A.c70,A.c71,A.c72,A.c73,A.c74,A.c75,A.c76,A.c77,A.cgr,A.cgs,A.cgt,A.cgp,A.cgl,A.cgm,A.cgn,A.cgo,A.cgq,A.c6a,A.c6b,A.c6c,A.c6d,A.buk,A.bul,A.c7X,A.c7W,A.c7O,A.c7P,A.c8_,A.c8L,A.c8N,A.c8O,A.c8M,A.cnQ,A.cnR,A.cnS,A.cnT,A.bwc,A.c9Y,A.c9X,A.c9V,A.cbi,A.cci,A.ccg,A.ccf,A.bA8,A.bDa,A.c5I,A.c5F,A.c5H,A.c5G,A.c5E,A.bE6,A.ce9,A.bEm,A.bEq,A.bEr,A.bEs,A.bEb,A.bEf,A.bEg,A.bEh,A.bEi,A.bEj,A.bEk,A.bEl,A.cec,A.ced,A.cee,A.cef,A.cfp,A.ccu,A.ccs,A.ccr,A.cfj,A.cfs,A.cfx,A.c5R,A.c5S,A.c5T,A.chj,A.ch3,A.ch5,A.ch4,A.ch1,A.ch8,A.ch9,A.cha,A.ch7,A.ch6,A.ch2,A.chw,A.chs,A.chp,A.chq,A.chN,A.ci_,A.ci1,A.ci0,A.cig,A.cih,A.cpR,A.bKU,A.bKV,A.ccw,A.ccx,A.ccz,A.ccA,A.bRt,A.bLz,A.bLH,A.buC,A.buD,A.bV9,A.bV8,A.bVa,A.b9p,A.b9q,A.b9r,A.bTM,A.bmT,A.bmO,A.b48,A.bn2,A.bn3,A.bnA,A.bnz,A.ceN,A.ceO,A.ceP,A.bLo,A.bLn,A.bLm,A.bLt,A.bjp,A.bBQ,A.bBM,A.b6H,A.bAz,A.bAy,A.bAu,A.bAV,A.bAW,A.bAR,A.bAS,A.bAT,A.bAU,A.bAP,A.bAQ,A.bB4,A.bB3,A.bAX,A.bAY,A.btz,A.bty,A.bBh,A.bBe,A.bBf,A.bBa,A.bBb,A.bBc,A.bAb,A.bBm,A.bBn,A.bBi,A.cp6,A.c9D,A.bBt,A.bBv,A.bBx,A.bBw,A.bBy,A.bBD,A.bBB,A.bBC,A.bBA,A.bBJ,A.bBI,A.bDt,A.bDs,A.bLB,A.bFa,A.bF8,A.ceA,A.cez,A.cex,A.cey,A.cok,A.bFd,A.bFc,A.bEW,A.bF_,A.bEY,A.bF0,A.bEZ,A.bF1,A.bF2,A.b83,A.bxs,A.b4c,A.bRz,A.bSg,A.b5h,A.bFn,A.bXk,A.bpw,A.bpy,A.b69,A.bsU,A.bhi,A.bC5,A.bC6,A.bC4,A.bi5,A.bKK,A.bLe,A.bLd,A.bLf,A.c9B,A.blL,A.blJ,A.bxy,A.bxx,A.cpr,A.b3d,A.b3g,A.b3e,A.b3f,A.b3h,A.c0x,A.c0u,A.c0s,A.c0t,A.c0w,A.bR4,A.bRq,A.bRr,A.bRs,A.cn7,A.cn8,A.cfY,A.c0F,A.b5e,A.bSh,A.bSm,A.cmd,A.cmc,A.b9u,A.cnb,A.cnc,A.cna,A.baO,A.bcd,A.bXS,A.bdz,A.bdA,A.bpz,A.bY9,A.bYa,A.cpS,A.bXV,A.bY6,A.bfT,A.bfv,A.bfU,A.bfW,A.bfn,A.bfw,A.bfV,A.bfA,A.bfu,A.bg_,A.bfm,A.bfF,A.bfE,A.ce0,A.biO,A.biN,A.cpn,A.biR,A.biT,A.biS,A.cby,A.bdh,A.bdi,A.bdk,A.bdl,A.bdg,A.bds,A.bdt,A.bdu,A.bdv,A.cbv,A.cbw,A.cbt,A.bzT,A.bja,A.c2l,A.bgl,A.bgm,A.bgj,A.bgi,A.bgn,A.bgp,A.bgg,A.bgk,A.bgh,A.bwD,A.btE,A.bk7,A.bke,A.bkg,A.bki,A.bkk,A.bk9,A.bkb,A.bkd,A.bXq,A.bXr,A.bXs,A.bXv,A.bXw,A.bXx,A.bl1,A.bl_,A.bkZ,A.bmm,A.cte,A.c22,A.bng,A.bnf,A.bne,A.bQW,A.bQX,A.bQY,A.bQZ,A.bR_,A.bR0,A.bR1,A.bR2,A.bRa,A.bRf,A.bRg,A.bRh,A.bRi,A.bRj,A.bRk,A.bRm,A.bRl,A.bRn,A.bR9,A.bR5,A.bRb,A.bRc,A.bRd,A.bRe,A.bnr,A.cpI,A.cpJ,A.cpK,A.c3Z,A.c4_,A.bpY,A.bpZ,A.bpX,A.bLi,A.bq2,A.brw,A.brz,A.bry,A.bCF,A.bCE,A.buz,A.cdt,A.cdr,A.cdv,A.bus,A.buy,A.bur,A.bux,A.c85,A.c84,A.buB,A.c8d,A.c8b,A.c8e,A.c8c,A.c89,A.bvp,A.ccF,A.ccD,A.ccE,A.ccC,A.cc1,A.cc2,A.bwa,A.c9j,A.c9G,A.cp0,A.cdl,A.cdB,A.cdz,A.b5p,A.bNx,A.bNu,A.c7t,A.c7q,A.btt,A.btq,A.bDI,A.bDJ,A.bDK,A.bDL,A.bDO,A.bDP,A.bDQ,A.bDS,A.bE_,A.bDX,A.bDZ,A.ce3,A.bE4,A.bzI,A.bzE,A.bzF,A.bzG,A.bzK,A.bzM,A.bzN,A.bEJ,A.bEH,A.bEz,A.bEB,A.bED,A.bEC,A.bEE,A.cen,A.ceo,A.btQ,A.btR,A.btS,A.btO,A.btP,A.btT,A.btU,A.bpv,A.bG3,A.bGJ,A.bJV,A.bJW,A.chD,A.chC,A.chE,A.chF,A.chB,A.chA,A.chG,A.bck,A.bEO,A.bEQ,A.bEP,A.bEN,A.bEM,A.cet,A.cis,A.ciu,A.ciw,A.ciy,A.ciA,A.cmb,A.bNL,A.cqB,A.bOz,A.bPc,A.b7P,A.b7Q,A.bOG,A.bOH,A.c14,A.b7R,A.bJ3,A.bJ2,A.bJh,A.bJm,A.bJn,A.bJo,A.bJp,A.bJq,A.bJD,A.bJF,A.bJi,A.bJj,A.cgL,A.cgC,A.cgD,A.cgE,A.cgB,A.ch_,A.cgP,A.cgQ,A.cgR,A.cgO,A.cgx,A.cgy,A.cgw,A.bAa,A.cn5,A.cn3,A.bb1,A.bnp,A.buO,A.bOZ,A.bP_,A.bb0,A.cq6,A.bVD,A.b3A,A.b3C,A.b3w,A.ba_,A.ba0,A.bIo,A.bIs,A.bIw,A.bIx,A.bID,A.bIH,A.bIO,A.bK0,A.bKa,A.bKl,A.bKn,A.bKo,A.bKj,A.cqQ,A.cqR,A.cqS,A.cqT,A.bij,A.bih,A.bif,A.c1R,A.cp2,A.chJ,A.chK,A.chL,A.chH,A.chI,A.cmw,A.cmy,A.cmz,A.by4,A.by5,A.bnP,A.bnQ,A.bnR,A.bPu,A.bwT,A.bwM,A.bwN,A.bwO,A.bwP,A.bwQ,A.bwR,A.bwS,A.b95,A.b96,A.bSc,A.bJ_,A.bOQ,A.bWF,A.bWH,A.bWK,A.bCr,A.bCs,A.bCu,A.bCt,A.bCq,A.bCp,A.bkv,A.bkw,A.bkx,A.bCA,A.bCC,A.bCB,A.cdw,A.cdx,A.bks,A.bkt,A.coR,A.bCn,A.bHm,A.bHl,A.bHk,A.bHj,A.bHi,A.bky,A.cu2,A.b3s,A.b5v,A.b5w,A.bHP,A.bHQ,A.bHR,A.bHS,A.bHT,A.bHU,A.bT9,A.bTa,A.buM,A.bi4,A.bnj,A.bVP,A.bEU,A.bEV,A.bET,A.bES,A.blW,A.csl,A.b5X,A.b6X,A.b6Y,A.b7r,A.b8C,A.brC,A.cs_,A.bmK,A.bmJ,A.bmL,A.bmM,A.bmW,A.bmX,A.bmY,A.bnM,A.bbx,A.kR,A.bbB,A.bbF,A.bbG,A.bWM,A.buW,A.buV,A.cu9,A.cua,A.cub,A.b4z,A.b4B,A.b4K,A.b4M,A.b4O,A.b4Q,A.b4D,A.b4H,A.b4I,A.b4m,A.b4n,A.b4X,A.b4R,A.b4T,A.b4Z,A.b4p,A.b4q,A.b4Y,A.b4u,A.b4w,A.b4x,A.b4v,A.b4t,A.c1X,A.bnt,A.bnu,A.bsu,A.bsv,A.blw,A.blx,A.bly,A.blz,A.blA,A.blB,A.blC,A.blD,A.blE,A.bN8,A.bsC,A.bsE,A.bsD,A.bsG,A.bsF,A.bsI,A.bsH,A.c7k,A.bta,A.btb,A.btc,A.b5P,A.bHa,A.b5N,A.b5O,A.btg,A.bth,A.bte,A.btf,A.bCc,A.bQd,A.ceS,A.ct5,A.ct6,A.bvl,A.bvn,A.bvm,A.bze,A.bzd,A.bw3,A.baT,A.baU,A.cqW,A.bwE,A.bPi,A.cqt,A.cq9,A.bzU,A.bzV,A.bzX,A.bzY,A.bzZ,A.ctW,A.bxp,A.cqX,A.bkD,A.coS,A.coT,A.bnq,A.c2q,A.ccK,A.ccP,A.ccQ,A.ccS,A.ccT,A.ccV,A.ccW,A.ccO,A.ccM,A.ccN,A.bCe,A.cfF,A.cfG,A.byr,A.byx,A.byt,A.byu,A.byz,A.byA,A.byy,A.byB,A.byP,A.byN,A.byO,A.byL,A.byM,A.byE,A.byF,A.byG,A.byH,A.byI,A.byJ,A.byK,A.byC,A.byD,A.bhG,A.crv,A.byV,A.cai,A.caj,A.cag,A.cah,A.cam,A.cak,A.cal,A.byZ,A.cmC,A.cmB,A.cmE,A.ctZ,A.cpX,A.cpW,A.bHg,A.ba8,A.ba9,A.ba1,A.bSn,A.bwh,A.bwi,A.bwj,A.cpb,A.cpc,A.cpi,A.bsN,A.bsO,A.bsM,A.bFH,A.b2w,A.c7b,A.c7e,A.ca5,A.ca4,A.bcV,A.bcQ,A.bcR,A.bcK,A.bcN,A.bcU,A.bcT,A.cfB,A.cfC,A.cfA,A.bYz,A.bYA,A.bYB,A.bg2,A.bg3,A.bg7,A.bg5,A.bgb,A.bga,A.bg9,A.bg8,A.bg1,A.cqb,A.bZe,A.bX4,A.c2X,A.c2T,A.bSP,A.bSM,A.cg8,A.cgg,A.cgf,A.cgb,A.cgc,A.cb6,A.cb7,A.bJH,A.b3M,A.boI,A.bcJ,A.bXJ,A.ctN,A.bh_,A.bgZ,A.bgX,A.bh3,A.bh5,A.bh7,A.bh1,A.buc,A.bub,A.c7z,A.c7A,A.bKt,A.c0U,A.c0V,A.c0Z,A.c0X,A.b6r,A.b6s,A.cra,A.csY,A.ctt,A.bD4,A.bQg,A.bgt,A.bDA,A.bDB,A.bLE,A.b6u,A.b6v,A.c7g,A.crb,A.bjR,A.bD6,A.bQh,A.bjI,A.bkI,A.bjQ,A.bjO,A.bcY,A.bjM,A.cgv,A.cgu,A.c4o,A.c4p,A.c4q,A.bnw,A.bnv,A.bny,A.bnx,A.bHC,A.bHD,A.bHE,A.bHG,A.bHH,A.bHI,A.bHJ,A.bHK,A.bHL,A.bHM,A.bHN,A.bHF,A.co0,A.co_,A.cqv,A.cqu,A.c_g,A.c_d,A.c_i,A.c_b,A.c_a,A.c_9,A.csq,A.csr,A.ctS,A.bZU,A.bZT,A.bZV,A.bZY,A.bZX,A.bZQ,A.bHo,A.bHn,A.bHp,A.bHv,A.bHu,A.bHw,A.bHx,A.bHr,A.bHq,A.bHs,A.bHt,A.bHz,A.bHy,A.bHA,A.bHB,A.c_0,A.c_1,A.c3J,A.c3M,A.b2Y,A.c48,A.c4b,A.cpM,A.cpP,A.bYM,A.bYP,A.brb,A.bgr,A.c1t,A.bt_,A.bt0,A.bt2,A.bt3,A.crr,A.c8j,A.c8l,A.c8n,A.bIj,A.bVf,A.crg,A.bQG,A.bQK,A.bQJ,A.bQR,A.bQQ,A.bS4,A.bS5,A.bRT,A.bRU,A.bRV,A.bRR,A.bRZ,A.bS_,A.bS0,A.bRX,A.cq7,A.bUn,A.bQD,A.bZm,A.bho,A.bhp,A.bZr,A.bZs,A.chP,A.c1p,A.c1m,A.c1e,A.c1a,A.c1b,A.c1g,A.c18,A.c19,A.bZz,A.bZA,A.bZB,A.bZv,A.coc,A.bZL,A.bZG,A.cs0,A.cs1,A.cs2,A.csm,A.csn,A.cso,A.bhq,A.b6E,A.bSG,A.bSF,A.bSE,A.bSA,A.b6B,A.c3w,A.bRE,A.bRB,A.bRA,A.c8t,A.c8w,A.c8u,A.c8v,A.c8C,A.c8B,A.cdU,A.cdX,A.b87,A.b88,A.ceG,A.ceF,A.ceD,A.ceC,A.cnp,A.cno,A.bQ4,A.cdQ,A.cdN,A.cdM,A.bQ_,A.bQ1,A.bQ0,A.cny,A.cnB,A.cnz,A.cnA,A.cnx,A.bQ6,A.bGZ,A.bGY,A.bGW,A.bNG,A.bcC,A.bVF,A.bVG,A.bVH,A.bVI,A.bXC,A.bXB,A.b44,A.bXf,A.che,A.chf,A.ceK,A.ceJ,A.caR,A.caO,A.caQ,A.bz_,A.ct0,A.caI,A.caH,A.cat,A.cax,A.caw,A.cav,A.caD,A.car,A.caq,A.cap,A.c3W,A.c3X,A.bTd,A.bT_,A.bT1,A.bT6,A.cfR,A.cfL,A.ciG,A.bLv,A.caf,A.ciJ,A.cb0,A.cb_,A.caZ,A.caY,A.cb2,A.cb3,A.cb1,A.cb4,A.caV,A.caX,A.blr,A.bls,A.bGb,A.bGc,A.bMC,A.b7m,A.bMF,A.bMG,A.bME,A.bMm,A.bLZ,A.bMW,A.bQp,A.bQq,A.coq,A.cor,A.bMt,A.cq1,A.cq2,A.bGm,A.bGl,A.bMY,A.bQi,A.bQj,A.bQs,A.bQt,A.bGk,A.bGd,A.bGe,A.bGj,A.bGg,A.bGf,A.bGh,A.bGi,A.bGa,A.cfa,A.cf9,A.cf7,A.ceX,A.cf5,A.ceU,A.bBV,A.bBW,A.bBT,A.cjH,A.cjD,A.cjz,A.cjA,A.cjB,A.cjx,A.cq5,A.bMg,A.bMf,A.bMe,A.bMc,A.bMa,A.ck4,A.ck5,A.ck0,A.cjY,A.cjZ,A.c2k,A.ctj,A.b2Z,A.c7I,A.c7H,A.bLX,A.bLU,A.bLT,A.bLK,A.bLW,A.bLY,A.bM8,A.ciO,A.ciQ,A.ciN,A.cji,A.cje,A.cjg,A.cjc,A.ckp,A.ckn,A.ckj,A.bwu,A.bwq,A.bwr,A.bwk,A.bwt,A.bwy,A.bwx,A.bMo,A.bMp,A.bMr,A.bMq,A.ct2,A.ckv,A.ckL,A.cl3,A.ckW,A.ckX,A.ckT,A.ckY,A.ckS,A.ckZ,A.ckO,A.ckQ,A.cl5,A.cl7,A.cl6,A.ckG,A.cli,A.cll,A.clm,A.ct4,A.cl8,A.cti,A.clR,A.clP,A.bMZ,A.ctX,A.bzf,A.b5c,A.cj2,A.cj1,A.cj0,A.bMH,A.bMP,A.bMO,A.bMM,A.bMN,A.bMK,A.bMR,A.bMU,A.bMT,A.ctF,A.ctx,A.bM0,A.bM1,A.bM_,A.cja,A.cj8,A.cjw,A.cjt,A.cju,A.cjv,A.cjo,A.cjr,A.cjs,A.cjl,A.cjm,A.ckb,A.cke,A.ckf,A.ck8,A.ck9,A.bMz,A.bMw,A.clN,A.clL,A.clM,A.cly,A.clw,A.clF,A.clG,A.clH,A.bM6,A.bM5,A.csN,A.bMv,A.b3p,A.cm0,A.cm3,A.cm4,A.clY,A.clZ,A.bM2,A.baY,A.bbr,A.bbm,A.ckg,A.boJ,A.bMl,A.bOU,A.ckh,A.bMn,A.bnG,A.c30,A.c2Y,A.bpc,A.bON,A.crP,A.b6T,A.b6S,A.b6Q,A.b6P,A.b6M,A.bpe,A.byo,A.bTW,A.bTT,A.bCb,A.bCa,A.c26,A.c25,A.bto,A.c9g,A.c9d,A.c9c,A.cn_,A.cn0,A.bB7,A.bl4,A.bl3,A.bl5,A.bl7,A.bl9,A.bl6,A.bln,A.b8R,A.b8S,A.b8T,A.b8Y,A.b8X,A.b8V,A.b8W,A.b8U,A.bNk,A.bNh,A.bNg,A.bNe,A.bNf,A.bNm,A.bNl,A.bO9,A.bO8,A.bnS,A.bbU,A.bbW,A.bbX,A.bbZ,A.cp5,A.bc0,A.bc1,A.bc2,A.bc3,A.bc4,A.bc5,A.bc6,A.bc7,A.bc8,A.bc9,A.cp3,A.c6H,A.c6A,A.c6z,A.bVj,A.bVo,A.bVl,A.bVp,A.bcr,A.bcq,A.bco,A.bVw,A.bVx,A.bVu,A.bVz,A.bVs,A.bVr,A.bVt,A.c4n,A.c4l,A.c6l,A.c6n,A.c6m,A.c6o,A.c6t,A.c6v,A.c6q,A.c6r,A.ccb,A.ccd,A.ccc,A.baQ,A.bso,A.bsd,A.bse,A.bsc,A.bsp,A.bsh,A.c6G,A.c6F,A.c6D,A.c6E,A.bR8,A.bR7,A.bs7,A.bsa,A.bs2,A.bsj,A.c6i,A.c6j,A.be5,A.bea,A.be9,A.bpS,A.bpK,A.bvr,A.c6y,A.co6,A.co7,A.co8,A.c6Q,A.c6R,A.c6S,A.c6T,A.c6U,A.c6V,A.c6W,A.c6X,A.c6K,A.c6L,A.bvI,A.bvG,A.bvF,A.bvB,A.bvC,A.bvE,A.bvz,A.bvM,A.bvP,A.bvK,A.bFZ,A.bu9,A.bua,A.bu8,A.bmy,A.bmz,A.bdV,A.brU,A.bP9,A.bP1,A.bP2,A.bP4,A.bP5,A.bP7,A.bJL,A.ciq,A.bsR,A.bsS,A.crI,A.biE,A.biF,A.cmL,A.cmM,A.cmJ,A.bb5,A.bJ5,A.bJ6,A.bJ7,A.bJ8,A.bJ9,A.bJa,A.bJb,A.bJc,A.cdi,A.cdh,A.bIY,A.bab,A.bOg,A.bOh,A.bOf,A.bOe,A.bOl,A.bOm,A.bOn,A.bOo,A.bOp,A.bOq,A.bOr,A.bOs,A.bOt,A.bOk,A.bZi,A.bZk,A.co1,A.bPJ,A.bPT,A.bPH,A.bPD,A.bPE,A.bPG,A.bPF,A.bPQ,A.bPK,A.bPI,A.bPL,A.bPS,A.bPP,A.bPN,A.bPM,A.bPO,A.crZ,A.crJ,A.crK,A.bwI,A.bwJ,A.bDr,A.cuc,A.bPX]) +p(A.apr,[A.b3V,A.bm_,A.blY,A.blZ,A.bGr,A.bGs,A.ctQ,A.bjl,A.bjm,A.btW,A.btY,A.bv8,A.bv9,A.b8h,A.b9j,A.bj2,A.bhF,A.bx3,A.blU,A.bIU,A.bIV,A.bkB,A.bkC,A.b7f,A.b7g,A.csH,A.csI,A.biv,A.coe,A.bos,A.bot,A.bou,A.bon,A.boo,A.bop,A.bgO,A.csK,A.bxB,A.c9N,A.c16,A.bzA,A.bzC,A.b36,A.bd0,A.bCD,A.b37,A.bE0,A.bgV,A.bgU,A.bgT,A.btk,A.bKR,A.bKT,A.blN,A.bD0,A.bmh,A.bi7,A.bKJ,A.cps,A.bgD,A.c1z,A.c1G,A.c1F,A.c1C,A.c1D,A.c1E,A.b8F,A.ct_,A.byj,A.bRH,A.bRI,A.ciL,A.ciK,A.co2,A.bRK,A.bRL,A.bRN,A.bRO,A.bRM,A.bRJ,A.bjB,A.bjA,A.bjz,A.c0H,A.c0O,A.c0N,A.c0K,A.c0J,A.c0I,A.c0R,A.c0Q,A.c0P,A.bI0,A.bHZ,A.bI9,A.bI7,A.bId,A.bIg,A.bI5,A.bI3,A.bI1,A.cg1,A.cg0,A.bQU,A.bTh,A.bTg,A.c9t,A.c7y,A.coh,A.coi,A.cqd,A.cdo,A.cdn,A.cmt,A.cms,A.c_F,A.c_y,A.c_P,A.c_M,A.cbr,A.b91,A.b92,A.boe,A.cre,A.b7i,A.bkO,A.b5_,A.b7V,A.b7T,A.b7Y,A.b7U,A.bmD,A.b8x,A.b8v,A.bWi,A.bVX,A.bVW,A.bVY,A.bW4,A.bW5,A.bW7,A.bW6,A.bWa,A.bW9,A.bW8,A.bW0,A.bW_,A.bW2,A.bW1,A.bVZ,A.bWc,A.bWd,A.bWe,A.bWg,A.bWf,A.bWh,A.c9J,A.c57,A.c4P,A.c4Q,A.c4N,A.c4M,A.c4K,A.c4L,A.c4W,A.c4Y,A.c4X,A.c50,A.c5_,A.c4Z,A.c53,A.c55,A.c54,A.c56,A.c4U,A.c4R,A.c4V,A.c4T,A.c4S,A.c5x,A.c5e,A.c5f,A.c5b,A.c59,A.c5a,A.c5c,A.c5l,A.c5n,A.c5m,A.c5p,A.c5q,A.c5o,A.c5s,A.c5v,A.c5u,A.c5w,A.c5j,A.c5g,A.c5k,A.c5i,A.c5h,A.c8K,A.bxL,A.cmX,A.b8e,A.c9p,A.b73,A.b7c,A.b7d,A.b7e,A.b7b,A.bda,A.bdd,A.bd8,A.bd4,A.csw,A.csx,A.csy,A.csu,A.bYE,A.bYG,A.bYD,A.bfe,A.crT,A.bq4,A.bq5,A.bq6,A.bqh,A.bqs,A.bqD,A.bqO,A.bqZ,A.br7,A.br8,A.br9,A.bq7,A.bq8,A.bq9,A.bqa,A.bqb,A.bqc,A.bqd,A.bqe,A.bqf,A.bqg,A.bqi,A.bqj,A.bqk,A.bql,A.bqm,A.bqn,A.bqo,A.bqp,A.bqq,A.bqr,A.bqt,A.bqu,A.bqv,A.bqw,A.bqx,A.bqy,A.bqz,A.bqA,A.bqB,A.bqC,A.bqE,A.bqF,A.bqG,A.bqH,A.bqI,A.bqJ,A.bqK,A.bqL,A.bqM,A.bqN,A.bqP,A.bqQ,A.bqR,A.bqS,A.bqT,A.bqU,A.bqV,A.bqW,A.bqX,A.bqY,A.br_,A.br0,A.br1,A.br2,A.br3,A.br4,A.br5,A.br6,A.brG,A.brH,A.brI,A.brQ,A.brR,A.c_r,A.c_u,A.c60,A.brK,A.brN,A.brO,A.brL,A.c0e,A.c0f,A.c0g,A.c0i,A.bSq,A.b5L,A.bAg,A.bAj,A.c9v,A.b5D,A.bjX,A.bjS,A.bjW,A.bjU,A.bUA,A.b9Q,A.b9R,A.bUS,A.bUE,A.bUM,A.bUL,A.bUK,A.bUJ,A.bUI,A.bUH,A.bUG,A.bUF,A.bUD,A.bUC,A.bUw,A.bUz,A.bUv,A.brc,A.bFt,A.cm5,A.bil,A.bWk,A.bWl,A.bVR,A.bVS,A.bVQ,A.ca7,A.ca6,A.ca9,A.ca8,A.bWu,A.bWt,A.bWs,A.bba,A.bbb,A.bbc,A.bWr,A.cei,A.cej,A.cek,A.ceg,A.bWy,A.bWw,A.bWx,A.bWv,A.bN3,A.bN5,A.bN0,A.cqz,A.coa,A.biw,A.b6h,A.b9_,A.boQ,A.boR,A.boT,A.bk1,A.bk0,A.bk3,A.bk4,A.bj6,A.bj4,A.bj5,A.bpA,A.bpD,A.bpC,A.bpB,A.bdY,A.be2,A.be3,A.bdZ,A.be_,A.be0,A.be1,A.btF,A.chO,A.bu7,A.bu3,A.bu5,A.bu6,A.bu4,A.by_,A.byh,A.bDm,A.bDn,A.bDi,A.bDj,A.bKx,A.bKy,A.bKz,A.bKA,A.bKB,A.b65,A.b66,A.b63,A.b64,A.b61,A.b62,A.b60,A.bk2,A.b33,A.b31,A.b32,A.c94,A.c9_,A.c90,A.c4B,A.c4x,A.bQz,A.b3Q,A.bRx,A.ce1,A.ce2,A.brm,A.bSW,A.bSU,A.bSV,A.c7n,A.bSS,A.bTL,A.bTk,A.bTO,A.bTP,A.bTQ,A.bTN,A.bTR,A.c7w,A.c7v,A.c7u,A.bX9,A.cnj,A.cbk,A.cbj,A.cbl,A.cbn,A.cbo,A.cbp,A.cbq,A.bWX,A.bWW,A.bWV,A.bWY,A.bX_,A.bYr,A.bYd,A.bYo,A.bYm,A.bYn,A.bYf,A.bYh,A.bYi,A.bYe,A.cpp,A.cpo,A.c2t,A.c2w,A.c2y,A.c2s,A.c2v,A.c2B,A.c1I,A.c2O,A.cik,A.cij,A.cil,A.brp,A.brq,A.c63,A.c62,A.c66,A.bug,A.c2o,A.bWB,A.bWC,A.bWD,A.c82,A.c80,A.c81,A.c2n,A.cbf,A.cbg,A.cbh,A.cch,A.bA5,A.bA3,A.bA4,A.bA6,A.bA7,A.bDb,A.bDc,A.bD7,A.bD8,A.bD9,A.c0k,A.bDg,A.bDf,A.bDe,A.c5O,A.c5N,A.c5M,A.c5K,A.c5L,A.c5J,A.ce7,A.ce8,A.bEn,A.bEo,A.bEp,A.bEc,A.bEd,A.bEe,A.ceq,A.cep,A.cer,A.cfn,A.cfo,A.cfl,A.cfm,A.cfk,A.cct,A.cft,A.c5Q,A.bJT,A.cho,A.chr,A.cht,A.chu,A.chv,A.ci3,A.ci5,A.ci4,A.ci6,A.ci8,A.ci9,A.cia,A.cib,A.cic,A.cid,A.ci7,A.ciC,A.ciB,A.bLA,A.bN2,A.bN4,A.bN_,A.bN1,A.bNb,A.bmv,A.bmu,A.c3V,A.bmQ,A.bmR,A.btI,A.bAc,A.bBO,A.bBP,A.bAr,A.bAt,A.bAs,A.bAv,A.boE,A.boF,A.btC,A.btB,A.btA,A.bwg,A.bwf,A.bwe,A.bBd,A.bBg,A.bBj,A.bBu,A.bBs,A.bDv,A.bDw,A.bDx,A.b82,A.bFm,A.bhj,A.bhk,A.bzy,A.bC2,A.bC3,A.bC1,A.bJN,A.bLg,A.bLh,A.bQC,A.c0v,A.c0q,A.c0r,A.c0p,A.bB8,A.bB9,A.bR3,A.bRp,A.cn9,A.cfX,A.cfV,A.cfZ,A.cfW,A.c0E,A.c0D,A.b5f,A.bSl,A.bSj,A.bSk,A.bSi,A.bPd,A.bCf,A.bCg,A.bXQ,A.bXR,A.bXT,A.bY8,A.bY7,A.bY_,A.bY0,A.bY1,A.bXZ,A.bXW,A.bY2,A.bY4,A.bY3,A.bfr,A.bfH,A.bfI,A.bfJ,A.bfK,A.bfL,A.bfM,A.bfN,A.bfO,A.bfP,A.bfQ,A.bfR,A.bfS,A.bfB,A.bfs,A.bft,A.bfo,A.bfq,A.bfX,A.bfY,A.bfZ,A.bfx,A.bfy,A.bfz,A.bfC,A.c0l,A.c0m,A.c0n,A.c0o,A.bjb,A.bjc,A.bj9,A.bj8,A.b7l,A.bad,A.bae,A.bk6,A.bk8,A.bkf,A.bkh,A.bkj,A.bkl,A.bka,A.bkc,A.bXu,A.bXt,A.c1N,A.c1M,A.c1L,A.c1Z,A.c21,A.c20,A.c23,A.c24,A.b3N,A.c31,A.c3i,A.c3j,A.c3k,A.bpa,A.bp8,A.bp9,A.c3Y,A.c5Y,A.btm,A.cdu,A.cds,A.cdq,A.but,A.buu,A.buv,A.buw,A.buq,A.c83,A.buA,A.cce,A.c8W,A.bvx,A.bvw,A.bvy,A.bvv,A.bvu,A.c8X,A.c8Z,A.c8Y,A.c17,A.c9E,A.cdk,A.bC7,A.cdE,A.cdF,A.cdD,A.cdy,A.cdC,A.cdA,A.bTS,A.bNv,A.bNw,A.c7o,A.bts,A.btr,A.bDH,A.ceu,A.bDN,A.bDW,A.bDY,A.bzL,A.bzH,A.bzJ,A.bEI,A.bEy,A.bEA,A.bEF,A.bEG,A.bFO,A.bGH,A.bGI,A.bGG,A.bGK,A.cfr,A.cfI,A.ces,A.cir,A.cit,A.civ,A.cix,A.ciz,A.bRo,A.cqA,A.cmA,A.b7O,A.c13,A.c5D,A.cnd,A.baB,A.cme,A.bJ4,A.bJl,A.bJk,A.bJt,A.bJu,A.bJs,A.bJr,A.bJx,A.bJw,A.bJy,A.bJz,A.bJA,A.bJC,A.bJB,A.bJE,A.cgH,A.cgG,A.cgI,A.cgF,A.cgJ,A.cgA,A.cgz,A.cgK,A.cgU,A.cgT,A.cgV,A.cgW,A.cgS,A.cgX,A.cgY,A.cgN,A.cgM,A.cgZ,A.bP0,A.b3t,A.b3u,A.b3v,A.bJZ,A.c1Q,A.blV,A.cmR,A.c12,A.bCz,A.bCy,A.bCx,A.bhf,A.bb9,A.brk,A.bHh,A.bx8,A.bnh,A.crY,A.crX,A.blX,A.brB,A.bmN,A.buX,A.b4V,A.b4W,A.b4o,A.b4y,A.b4r,A.b4s,A.bpt,A.bpu,A.bps,A.bN9,A.bQb,A.bQc,A.c_q,A.bwF,A.bv_,A.buZ,A.bvV,A.bzn,A.b30,A.bbl,A.b7v,A.b7x,A.b7z,A.b7F,A.beo,A.bjE,A.bjG,A.bmd,A.bv1,A.bCT,A.bzg,A.b6k,A.b7D,A.bob,A.bq_,A.bq0,A.bq1,A.bzi,A.bzj,A.bzk,A.bzl,A.bCI,A.bCJ,A.bCK,A.bCM,A.bCL,A.bCO,A.bCP,A.bCR,A.bCX,A.bLD,A.bOW,A.beq,A.ber,A.bes,A.bet,A.beu,A.bev,A.bew,A.bex,A.bey,A.bez,A.beA,A.beB,A.beC,A.beD,A.beE,A.beF,A.beG,A.beH,A.beI,A.beJ,A.beK,A.beL,A.beM,A.beN,A.beO,A.beP,A.beQ,A.beR,A.beS,A.beT,A.beU,A.beV,A.beW,A.beX,A.beY,A.beZ,A.bf_,A.bf0,A.bf1,A.bf2,A.bf3,A.b47,A.bap,A.bf4,A.bkE,A.bvR,A.bvT,A.bvX,A.bE5,A.bf9,A.bzo,A.b7t,A.b7B,A.bkG,A.by2,A.bw6,A.bmk,A.bvZ,A.b58,A.b5a,A.b5b,A.b6l,A.bjd,A.bf5,A.bw_,A.bzp,A.cbG,A.cbF,A.b8L,A.b8N,A.b8O,A.b7H,A.bem,A.bzh,A.bD3,A.bCV,A.bpd,A.ccI,A.ccH,A.ccG,A.ccJ,A.cd0,A.cd1,A.cd3,A.ccX,A.ccY,A.cd_,A.ccZ,A.cd4,A.cd8,A.cd7,A.cd6,A.cd5,A.ccL,A.bys,A.byw,A.byS,A.byU,A.byW,A.cao,A.cmD,A.bHd,A.ba3,A.ba7,A.ba4,A.ba5,A.ba6,A.b6a,A.bIQ,A.bSp,A.bSo,A.b5y,A.bHc,A.bHb,A.cpa,A.cpf,A.cpg,A.cpd,A.cpe,A.cph,A.bDF,A.bb_,A.bcP,A.bcL,A.bcM,A.cfz,A.bYv,A.cqa,A.bZc,A.bZd,A.bZb,A.bZ9,A.bZ8,A.bX2,A.bX3,A.bX1,A.bX0,A.c2V,A.c2W,A.c2S,A.c2R,A.c2Q,A.c2U,A.c2P,A.bSN,A.bSO,A.bSL,A.cg6,A.cg7,A.cgd,A.cge,A.b2t,A.b2u,A.bEw,A.cb5,A.bcG,A.bcI,A.bXI,A.bXH,A.bXG,A.bXF,A.bej,A.bgY,A.bh4,A.bh6,A.bh0,A.bh2,A.b3J,A.b3I,A.bSd,A.bSe,A.c1v,A.c1u,A.bcx,A.bw9,A.c0W,A.bLF,A.c7h,A.c7f,A.b8G,A.b8H,A.b8I,A.b8J,A.bjK,A.bjL,A.bcX,A.c8F,A.c8G,A.c8H,A.bYX,A.c_3,A.c_4,A.c_n,A.c_l,A.c_m,A.c_e,A.c_7,A.c_6,A.c_8,A.c_5,A.bZR,A.c9x,A.c3G,A.c3I,A.c3L,A.c4f,A.c4g,A.c4h,A.c4i,A.c4j,A.c4k,A.c4e,A.c4d,A.c47,A.c4a,A.c46,A.c43,A.c41,A.bj7,A.bYH,A.bYK,A.bYS,A.bYO,A.bYL,A.bYQ,A.bYT,A.bYU,A.bYV,A.bgs,A.c5X,A.c5U,A.c5W,A.c5V,A.c1s,A.c8i,A.c8h,A.c8k,A.c8g,A.c8m,A.c8f,A.boB,A.bvh,A.bvg,A.bVe,A.bVd,A.bVc,A.bVg,A.bVh,A.bVi,A.chV,A.chS,A.chT,A.chU,A.cdK,A.bz7,A.bUq,A.bQH,A.bQO,A.bQS,A.bQT,A.bRP,A.bS9,A.bSa,A.bS1,A.bS7,A.bS3,A.bRS,A.bRQ,A.bRY,A.bRW,A.b3i,A.bUr,A.bUt,A.b4h,A.bUo,A.bUk,A.bUl,A.bUm,A.b3k,A.bQE,A.bZo,A.bZp,A.bZl,A.chR,A.c1o,A.c1q,A.c1r,A.c1k,A.c1c,A.c1d,A.c1f,A.c1h,A.bZy,A.bZw,A.bZx,A.bZE,A.bZF,A.bZK,A.bZM,A.bZN,A.bZH,A.bhr,A.cdR,A.c3r,A.c3s,A.c3p,A.b6F,A.b6D,A.bSI,A.bSJ,A.bSK,A.bSB,A.bSC,A.bSD,A.c3D,A.c3E,A.b6C,A.c3z,A.c3v,A.c3t,A.c3x,A.c3A,A.c3B,A.bRD,A.c8r,A.bRu,A.c8D,A.c8E,A.bv3,A.cdT,A.cdW,A.ceE,A.ceB,A.cns,A.cnq,A.cnr,A.cnt,A.baI,A.baJ,A.bPZ,A.cnv,A.cnw,A.cnI,A.cnJ,A.cnH,A.cnL,A.cnM,A.bQ7,A.bx7,A.bH_,A.bGX,A.bH0,A.bNH,A.bcB,A.bcA,A.bQu,A.bQv,A.bQw,A.cmP,A.bVE,A.bVM,A.bVL,A.bVN,A.bVK,A.chZ,A.chW,A.chX,A.chY,A.bXE,A.bXD,A.bXe,A.chc,A.chb,A.chd,A.chg,A.chh,A.chi,A.bbN,A.ceI,A.b9n,A.bPj,A.c3f,A.c3e,A.caT,A.caS,A.caN,A.caP,A.bz0,A.caM,A.caL,A.caK,A.caJ,A.caG,A.caB,A.caA,A.caF,A.caE,A.cas,A.caz,A.cay,A.cau,A.caC,A.bTc,A.bTb,A.bSZ,A.bSY,A.bT0,A.bT7,A.bT4,A.bT3,A.bT5,A.bT8,A.cfO,A.cfN,A.cfQ,A.cfP,A.cfK,A.cfJ,A.ciH,A.ciF,A.cae,A.cac,A.cad,A.ciI,A.caU,A.caW,A.blu,A.blv,A.cfe,A.cfd,A.cff,A.cfc,A.cfg,A.cfb,A.cf8,A.cf6,A.cf_,A.ceZ,A.ceW,A.ceY,A.ceV,A.cf4,A.cf3,A.cf2,A.cf1,A.ceT,A.bBU,A.cjL,A.cjK,A.cjM,A.cjJ,A.cjN,A.cjI,A.cjG,A.cjy,A.cjP,A.cjO,A.cjQ,A.cjF,A.cjR,A.bMh,A.bMi,A.bMb,A.bMd,A.ck1,A.ck3,A.ck2,A.ck_,A.cjX,A.cjW,A.cjV,A.cjU,A.cjT,A.cjS,A.c2i,A.c2h,A.c2j,A.c2d,A.c2e,A.c2f,A.c2g,A.c7K,A.c7D,A.c7E,A.c7F,A.c7G,A.bLL,A.bLM,A.bLN,A.bLO,A.bLP,A.bLQ,A.bLR,A.bLS,A.ciT,A.ciS,A.ciR,A.ciU,A.ciP,A.ciM,A.cjh,A.cjd,A.cjf,A.cjb,A.ckk,A.bwl,A.bwp,A.bwm,A.bwn,A.bwo,A.ckC,A.ckB,A.ckD,A.ckA,A.ckw,A.cky,A.ckx,A.cks,A.cku,A.ckq,A.bwv,A.bww,A.cl0,A.ckK,A.ckJ,A.ckU,A.ckV,A.ckN,A.cl_,A.ckR,A.ckM,A.ckI,A.cl4,A.ckH,A.ckE,A.ckF,A.clb,A.cln,A.clh,A.cle,A.clg,A.clf,A.clk,A.clj,A.cld,A.clq,A.cl9,A.clr,A.cls,A.clv,A.clS,A.clQ,A.clO,A.clV,A.clU,A.clT,A.cj7,A.cj6,A.cj5,A.ciV,A.ciW,A.ciX,A.ciY,A.ciZ,A.cj_,A.bML,A.bMJ,A.ctC,A.ctw,A.crh,A.cri,A.crj,A.crk,A.bjn,A.bjo,A.cj9,A.cjn,A.cjq,A.cjp,A.cjk,A.cjj,A.cka,A.ckd,A.ckc,A.ck7,A.ck6,A.bMx,A.bMy,A.clA,A.clx,A.clz,A.clE,A.clJ,A.clI,A.clC,A.clB,A.bM7,A.bM4,A.bMu,A.bMD,A.b3o,A.cm_,A.cm2,A.cm1,A.clX,A.clW,A.bMV,A.bbq,A.bbp,A.boK,A.bMk,A.bOT,A.bOS,A.bnH,A.c2Z,A.b4f,A.b6R,A.b6O,A.b6L,A.b6J,A.ctu,A.bTU,A.bTV,A.bC9,A.c27,A.c28,A.c29,A.c2a,A.c2b,A.c2c,A.btp,A.bju,A.bjv,A.c9i,A.c9e,A.c9h,A.c9b,A.cmZ,A.cn1,A.cmY,A.blm,A.bla,A.blh,A.bli,A.blj,A.blk,A.blf,A.blg,A.blb,A.blc,A.bld,A.ble,A.bll,A.c1O,A.b8Q,A.bjk,A.bji,A.bjf,A.bjg,A.bjh,A.boH,A.bNi,A.bNj,A.bHf,A.cc4,A.bVq,A.bVn,A.bVm,A.bVk,A.bcp,A.bVA,A.bVv,A.c4m,A.c6k,A.c6p,A.c6s,A.c6u,A.c6w,A.c6x,A.bU9,A.bsk,A.bsb,A.c6C,A.bs8,A.bs9,A.bs6,A.bs0,A.bs5,A.bs4,A.bs3,A.bs1,A.bsi,A.bsf,A.c6f,A.c6e,A.c6h,A.c6g,A.bdW,A.be7,A.be8,A.bpU,A.bpT,A.bpF,A.bpE,A.bpG,A.bpH,A.bpQ,A.bpR,A.bpI,A.bpJ,A.bpL,A.bpM,A.bpN,A.bpO,A.bvD,A.bvL,A.bvN,A.bvO,A.bvQ,A.bvJ,A.ceL,A.bG5,A.brW,A.cr8,A.cr9,A.bPa,A.bP8,A.bPb,A.bP3,A.bP6,A.cin,A.cio,A.cip,A.crH,A.biG,A.cmN,A.cmF,A.cmI,A.cmH,A.bee,A.cdf,A.cde,A.cdg,A.cmS,A.cmQ,A.csT,A.csS]) +p(A.bZ7,[A.a01,A.zE,A.Kv,A.Po,A.a4A,A.apw,A.KW,A.Ia,A.a_g,A.adm,A.rR,A.LK,A.b3a,A.J9,A.a9i,A.a2B,A.DX,A.R9,A.adv,A.aP1,A.VK,A.abB,A.ee,A.j0,A.aBJ,A.apj,A.aHv,A.a6R,A.bwW,A.a4K,A.bog,A.Vn,A.Vo,A.aB_,A.fG,A.PE,A.b6n,A.IV,A.Ry,A.bxo,A.vl,A.a_d,A.bbt,A.zN,A.pn,A.TB,A.J_,A.EE,A.t6,A.aaP,A.uF,A.aG7,A.oI,A.aaO,A.aod,A.b6U,A.ML,A.Pg,A.bFA,A.anc,A.BP,A.xN,A.rb,A.GY,A.bmU,A.a0e,A.b8K,A.lt,A.a0G,A.SO,A.yz,A.RS,A.Up,A.ax2,A.uc,A.Pi,A.zd,A.aam,A.ZD,A.t9,A.a6N,A.lT,A.PC,A.A_,A.Du,A.yd,A.ZL,A.Lt,A.F_,A.aCm,A.rN,A.ZJ,A.a3T,A.jM,A.a8t,A.ql,A.cl,A.a12,A.Tm,A.bi3,A.anE,A.aGS,A.OV,A.bhw,A.boA,A.awT,A.XH,A.b9O,A.b9N,A.b9P,A.m6,A.yn,A.bik,A.rc,A.WV,A.an4,A.aYQ,A.aKo,A.arV,A.Nz,A.Qs,A.vG,A.aQU,A.jS,A.akt,A.auL,A.NJ,A.aek,A.at0,A.bud,A.a3G,A.Ys,A.ael,A.WR,A.aQJ,A.aPk,A.bUc,A.qN,A.aiH,A.X5,A.aoj,A.b7o,A.adh,A.bU8,A.xd,A.bUd,A.vE,A.as9,A.c_Y,A.b9I,A.aae,A.Xo,A.c1W,A.Gb,A.a3n,A.lV,A.bp2,A.v7,A.Ea,A.en,A.bui,A.aA1,A.aKl,A.Gq,A.aCz,A.c2p,A.pI,A.Yu,A.aWL,A.aEN,A.YH,A.bFQ,A.VT,A.wJ,A.aF_,A.chk,A.bJS,A.VC,A.YV,A.Kg,A.abv,A.a8T,A.Uc,A.anu,A.aHw,A.OU,A.ao8,A.aof,A.Pc,A.RB,A.VQ,A.bLu,A.aa_,A.U9,A.XE,A.aua,A.axh,A.E6,A.I0,A.aBz,A.a3U,A.asi,A.Fc,A.Ac,A.VO,A.UP,A.a9e,A.ab4,A.av3,A.aa1,A.bJU,A.aoo,A.a8X,A.aJN,A.aJO,A.LQ,A.bbO,A.anf,A.S0,A.awi,A.JO,A.qn,A.Ih,A.aaA,A.bJP,A.aFL,A.a5B,A.aEY,A.aEZ,A.oJ,A.aG_,A.a3m,A.rY,A.aH6,A.a17,A.HS,A.b5d,A.tH,A.q2,A.aeJ,A.aNT,A.ry,A.aH8,A.Dt,A.biM,A.AF,A.abC,A.y_,A.cfE,A.Xk,A.Rp,A.aeY,A.bwA,A.T7,A.kw,A.bup,A.ajP,A.Uv,A.lX,A.ai3,A.agu,A.aAx,A.Xv,A.aXg,A.YO,A.bCv,A.aE3,A.LV,A.aE6,A.aE4,A.a9_,A.aF0,A.Ch,A.bxA,A.aBy,A.pz,A.I2,A.Cl,A.Oe,A.Jm,A.a2l,A.a5h,A.V_,A.Mx,A.a9m,A.a_I,A.ceH,A.SX,A.aos,A.avU,A.ud,A.nh,A.zh,A.EO,A.Su,A.a9z,A.lA,A.ZI,A.jc,A.nR,A.aot,A.bcy,A.a2y,A.QM,A.a5U,A.Ee,A.KX,A.qP,A.an5,A.agI,A.aDB,A.iZ,A.L0,A.Lm,A.QY,A.bz9,A.bz8,A.a7t,A.c7i,A.ace,A.a9u,A.u4,A.zD,A.K0,A.a9t,A.a0d,A.b68,A.a2H,A.aOM,A.kH,A.xV,A.HF,A.Dv,A.lf,A.fE,A.jw,A.Kr,A.Cj,A.Oc,A.bOV,A.Ln,A.hp,A.vz,A.nU,A.la,A.rl,A.AI,A.P6,A.a94,A.km,A.oN,A.lF,A.jp,A.ajp,A.jg,A.lP,A.mG,A.uN,A.Jv,A.ai4,A.a07,A.af9,A.azt,A.a5N,A.xs,A.at4,A.brS,A.bLq,A.bhC,A.bhD,A.JR,A.Lg,A.aDo,A.xe,A.aBc,A.Tp,A.DD,A.a3L,A.kF,A.aB0,A.aak,A.aal,A.aba,A.tU,A.MD,A.tN,A.bbw,A.FQ,A.y8,A.bo0,A.i7,A.AP,A.rp,A.adn,A.j_]) +q(A.b8k,A.aVR) +p(A.aoZ,[A.a0m,A.Pw,A.ap7,A.apb,A.Pv]) +p(A.B,[A.Kw,A.apa,A.AX,A.aei,A.aFE,A.v0,A.aO,A.fW,A.b1,A.eE,A.My,A.aaG,A.Ah,A.Mj,A.yQ,A.cv,A.NO,A.aKq,A.aXh,A.dz,A.iz,A.yB,A.ou,A.iY,A.oh,A.a7K,A.bN,A.z_,A.b_K,A.a55,A.NN,A.aka,A.aP0,A.a5l,A.aJT]) +p(A.ap4,[A.adp,A.adq]) +q(A.a0n,A.aoh) +p(A.lz,[A.Q1,A.aBk,A.aBB]) +p(A.Q1,[A.aDG,A.anB,A.apk,A.apn,A.apm,A.aAm,A.abA,A.avP,A.apv]) +q(A.aAl,A.abA) +p(A.bzw,[A.btV,A.bv7]) +p(A.Wr,[A.Ku,A.KE]) +p(A.Qu,[A.Lu,A.t2]) +p(A.aEz,[A.ap1,A.ap2,A.ap0]) +p(A.e3,[A.aoy,A.n2,A.qh,A.aCv,A.AG,A.awd,A.aHa,A.aN1,A.aDT,A.aOq,A.RZ,A.Hf,A.nN,A.zz,A.AK,A.x2,A.px,A.apF,A.aPj,A.auT,A.avk,A.aoV,A.aHp,A.aFi]) +q(A.atq,A.bdx) +p(A.aps,[A.crz,A.crt,A.bx2,A.csG,A.cse,A.boq,A.bom,A.bgH,A.bH5,A.cox,A.ctv,A.bmc,A.bbh,A.c1H,A.bTZ,A.b8E,A.bay,A.byi,A.bo2,A.csC,A.co5,A.cqZ,A.bjD,A.bjy,A.c0M,A.bHY,A.bIb,A.bQV,A.cog,A.cdm,A.c1w,A.bkL,A.boZ,A.brg,A.bGT,A.bGS,A.c3c,A.c38,A.bSx,A.buK,A.cmm,A.bNV,A.bNS,A.bNT,A.bNU,A.cml,A.cmk,A.coG,A.bsV,A.bsW,A.bsX,A.bsY,A.bCG,A.bCH,A.bHV,A.bHW,A.cgi,A.cgj,A.bQy,A.crx,A.c_A,A.c_C,A.c_E,A.c_L,A.b4j,A.b4k,A.bZ5,A.bZ6,A.bZO,A.bZP,A.b41,A.bSf,A.b7W,A.b7X,A.b7Z,A.b8_,A.btM,A.btN,A.bmC,A.b8q,A.b8p,A.b9b,A.b98,A.b99,A.c8J,A.bxM,A.bxN,A.bxO,A.bxR,A.b89,A.b8b,A.b8d,A.b71,A.b70,A.b7a,A.bd5,A.bkU,A.bkV,A.cqP,A.csv,A.bNs,A.bNt,A.crV,A.crW,A.cro,A.bpl,A.cos,A.cou,A.brF,A.brP,A.c_v,A.c_x,A.bhT,A.b5G,A.b5K,A.b5k,A.bxd,A.bxf,A.b5A,A.b5E,A.b5B,A.b5C,A.baj,A.bak,A.bjV,A.bjT,A.bPn,A.bPo,A.bPq,A.bPp,A.bUB,A.baW,A.bvf,A.csk,A.bb8,A.cbN,A.cbO,A.c7U,A.cea,A.ceh,A.cco,A.cbW,A.cbQ,A.bxZ,A.bDl,A.bDp,A.c99,A.c98,A.c97,A.c95,A.c3F,A.c91,A.c4C,A.c4z,A.c4w,A.c4u,A.c4E,A.bXA,A.brj,A.c4J,A.c7m,A.cc5,A.cc6,A.cbm,A.cbH,A.cbL,A.cbM,A.cbI,A.cbJ,A.cbK,A.bWZ,A.cnU,A.cc3,A.c0j,A.cc0,A.cc_,A.cbY,A.cc8,A.buh,A.buj,A.bun,A.buo,A.bum,A.c7Q,A.bXz,A.c7R,A.cnO,A.cnP,A.c9Z,A.c3P,A.c3Q,A.bUi,A.cbD,A.ccj,A.cck,A.bA9,A.bDh,A.cdH,A.bEt,A.ccn,A.ccv,A.cfu,A.cfv,A.cie,A.cif,A.cnY,A.ciD,A.ccy,A.bLy,A.buE,A.bV7,A.bmw,A.bmS,A.bmP,A.b49,A.bvb,A.btJ,A.btK,A.bBN,A.bAq,A.bAA,A.bAx,A.bAw,A.bAJ,A.bAF,A.bAH,A.bAD,A.bB2,A.bB0,A.bB_,A.bB1,A.bAZ,A.bB5,A.btx,A.bxl,A.bxk,A.bxm,A.bxn,A.bAN,A.bBl,A.bBk,A.cel,A.cem,A.bBo,A.bBp,A.bBH,A.bAB,A.bAL,A.bAK,A.bBq,A.bAM,A.bBF,A.bBG,A.bDu,A.cew,A.bFe,A.bFf,A.bEX,A.b84,A.bXl,A.bH6,A.blK,A.bxz,A.cg_,A.c0G,A.bY5,A.bfp,A.bfD,A.bfG,A.bdn,A.bdp,A.bdo,A.bdq,A.bdr,A.bdj,A.bdm,A.cbx,A.cbu,A.bzR,A.bzS,A.c0y,A.bgo,A.bl0,A.c1K,A.bkY,A.ctf,A.ctg,A.c2_,A.boy,A.c3U,A.bpb,A.bcl,A.c1P,A.c86,A.ccB,A.cg3,A.c9k,A.c9F,A.cnW,A.cnX,A.c7s,A.c7r,A.c7p,A.bDR,A.bp4,A.bp5,A.ce6,A.ce4,A.ce5,A.bDV,A.bFP,A.bG2,A.ccq,A.ccp,A.bGC,A.bGD,A.bOv,A.ccm,A.ccl,A.csP,A.baA,A.bJv,A.cn6,A.cn4,A.b7j,A.bm5,A.bOY,A.b3y,A.b3B,A.b3z,A.b3D,A.bIn,A.bIm,A.bIr,A.bIt,A.bIq,A.bIz,A.bIy,A.bIC,A.bIB,A.cq_,A.cq0,A.bIG,A.bIF,A.bII,A.bIJ,A.bIK,A.bIN,A.bIP,A.bIM,A.bK_,A.bK1,A.bJY,A.bK7,A.bK6,A.bK8,A.bK5,A.bKe,A.bKd,A.bKc,A.bKh,A.bKg,A.bKi,A.bKm,A.bKk,A.bii,A.big,A.bkW,A.bkX,A.bGF,A.cmx,A.bwL,A.bwU,A.bKq,A.bKr,A.bSb,A.c9H,A.ca2,A.ca1,A.ca0,A.ca_,A.c7C,A.bK3,A.cdZ,A.bWG,A.bWI,A.bWJ,A.bWL,A.bCw,A.bnd,A.c2m,A.cfH,A.bku,A.bkz,A.bgf,A.bx9,A.bni,A.csa,A.b5W,A.brD,A.bbC,A.bbD,A.bbE,A.b4A,A.b4J,A.b4L,A.b4N,A.b4P,A.b4C,A.b4E,A.b4F,A.b4G,A.b4S,A.b4U,A.b53,A.byf,A.c7j,A.bQa,A.bac,A.bvk,A.bzc,A.ct7,A.ct8,A.cq3,A.bAI,A.bAE,A.bAG,A.bAC,A.bv0,A.bvW,A.b7w,A.b7y,A.b7A,A.b7G,A.bep,A.bjF,A.bjH,A.bme,A.bv2,A.bCU,A.b7E,A.boc,A.bCN,A.bCQ,A.bCS,A.baq,A.bkF,A.bvS,A.bvU,A.bvY,A.b7u,A.b7C,A.bkH,A.by3,A.bw7,A.b59,A.b6m,A.bf6,A.bw0,A.bzq,A.b8M,A.b8P,A.b7I,A.ben,A.bCW,A.cb8,A.cd9,A.ccR,A.cd2,A.ccU,A.byv,A.byQ,A.byR,A.byq,A.byT,A.can,A.ba2,A.c7c,A.c7d,A.cfD,A.bYy,A.bYw,A.bYC,A.bYx,A.bZa,A.bcH,A.bek,A.b3K,A.c7B,A.c0Y,A.b6q,A.b6p,A.c0T,A.b6t,A.bjP,A.bNc,A.c_f,A.c_h,A.c_c,A.c_j,A.c_k,A.csp,A.css,A.ctT,A.ctU,A.bZS,A.c__,A.bZZ,A.bZW,A.c9y,A.c9z,A.c3H,A.c3K,A.c3N,A.c4c,A.c49,A.c44,A.c45,A.c42,A.bYJ,A.bYI,A.bYN,A.bYR,A.cdL,A.bz6,A.cqM,A.cqC,A.cqD,A.cqE,A.cqF,A.cqG,A.cqH,A.cqI,A.cqJ,A.cqK,A.cqL,A.cqf,A.cpG,A.cpm,A.cpT,A.cqN,A.cqO,A.cqg,A.cqh,A.cqi,A.cqk,A.cql,A.cqm,A.cqn,A.cqo,A.cqp,A.cqq,A.cqr,A.cqj,A.coZ,A.cp_,A.col,A.com,A.con,A.coo,A.cpY,A.cpZ,A.cr2,A.coO,A.coP,A.coQ,A.cr3,A.cr4,A.cr5,A.cpt,A.cpQ,A.cqy,A.cpD,A.cpE,A.cpF,A.coV,A.coW,A.coX,A.coY,A.cob,A.cpj,A.cpk,A.cpl,A.crf,A.crl,A.cvD,A.bQL,A.bQN,A.bQI,A.bQM,A.bQP,A.bS8,A.bS2,A.bS6,A.bUs,A.b4i,A.bUp,A.bQF,A.bZn,A.bZt,A.bZu,A.chQ,A.c1n,A.c1l,A.c1j,A.c1i,A.bZC,A.bZD,A.bZI,A.bZJ,A.cdS,A.c3q,A.bSH,A.c3C,A.c3u,A.c3y,A.bRC,A.bRv,A.c8s,A.c8x,A.c8z,A.c8y,A.c8A,A.cdV,A.cdY,A.cdP,A.cdO,A.cnC,A.cnE,A.cnD,A.cnu,A.cnF,A.cnG,A.cnK,A.bQ5,A.bVJ,A.bXg,A.c3g,A.ct1,A.cfT,A.cfU,A.bT2,A.cfS,A.cfM,A.bLw,A.bLx,A.blt,A.bQn,A.bQk,A.cf0,A.cjC,A.cjE,A.bMj,A.c7J,A.c7L,A.bLV,A.bM9,A.cko,A.ckl,A.ckm,A.bws,A.bwz,A.bMs,A.ckz,A.ckr,A.ckt,A.cl2,A.cl1,A.ckP,A.clc,A.clp,A.clo,A.cla,A.clt,A.clu,A.cj4,A.cj3,A.bMS,A.ctD,A.ctE,A.ctA,A.cty,A.ctz,A.bMA,A.bMB,A.clK,A.clD,A.bLJ,A.bM3,A.bbn,A.bbo,A.bOR,A.cki,A.bnI,A.c3_,A.b6N,A.b6K,A.c9f,A.bBr,A.bl8,A.bjj,A.bbV,A.bbY,A.baR,A.bVy,A.bsl,A.cca,A.cdI,A.bsm,A.bsn,A.bsg,A.bpP,A.co9,A.bvH,A.bvA,A.ceM,A.bdB,A.bBL,A.bBK,A.biH,A.biI,A.cmK,A.bPR]) +p(A.n2,[A.aul,A.a3v,A.a3w]) +p(A.iq,[A.jP,A.aBg]) +p(A.jP,[A.a6X,A.aT_,A.aSZ,A.a6Y,A.a7_,A.a70,A.a71,A.a72,A.a74,A.a75]) +p(A.bgC,[A.y2,A.aNJ]) +q(A.a6Z,A.aT_) +q(A.aBe,A.aSZ) +q(A.bdJ,A.aNJ) +q(A.aj6,A.bKv) +p(A.aBg,[A.aBh,A.a73]) +p(A.hJ,[A.a2b,A.a6I,A.aAV,A.aAZ,A.aAX,A.aAW,A.aAY]) +p(A.a2b,[A.aAG,A.aAF,A.aAE,A.aAL,A.aAN,A.aAU,A.aAQ,A.aAS,A.aAR,A.aAJ,A.aAM,A.aAI,A.aAP,A.aAT,A.aAK,A.aAO]) +p(A.QO,[A.auX,A.Rm]) +q(A.auW,A.Rm) +p(A.vR,[A.acZ,A.afZ]) +p(A.atr,[A.SS,A.SG]) +q(A.avw,A.a3W) +p(A.b7_,[A.a5Z,A.a9G]) +q(A.atu,A.bxt) +q(A.b03,A.bSt) +q(A.c9L,A.b03) +p(A.aBW,[A.b93,A.asG,A.bmZ,A.bnk,A.boX,A.bxD,A.bDU,A.bjZ,A.b7n,A.bKM]) +p(A.A5,[A.Uu,A.auh,A.a4O,A.K6,A.aFV]) +p(A.bF3,[A.bcu,A.bti]) +q(A.a1H,A.aNn) +p(A.a1H,[A.bFh,A.auS,A.a8H]) +p(A.a2,[A.xz,A.Wh,A.a4z,A.K2]) +q(A.aQp,A.xz) +q(A.aH4,A.aQp) +q(A.Ty,A.bwB) +p(A.Vq,[A.aoQ,A.aDI]) +p(A.bKX,[A.boG,A.bhx,A.bO3]) +p(A.bKW,[A.bV6,A.DW,A.Hp]) +q(A.aQG,A.bV6) +q(A.aQH,A.aQG) +q(A.aQI,A.aQH) +q(A.rz,A.aQI) +q(A.a2w,A.rz) +p(A.bgE,[A.buJ,A.bgW,A.bdU,A.bkq,A.buH,A.byg,A.bE7,A.bFj]) +p(A.bgF,[A.buL,A.bLb,A.buY,A.bbP,A.bxa,A.bgq,A.bNW,A.azU]) +p(A.auS,[A.bmf,A.b3E,A.bi6]) +p(A.bL_,[A.bL5,A.bLc,A.bL7,A.bLa,A.bL6,A.bL9,A.bKY,A.bL2,A.bL8,A.bL4,A.bL3,A.bL1]) +p(A.asK,[A.arX,A.auy]) +p(A.yG,[A.aOp,A.QN]) +q(A.aMg,A.c1y) +p(J.RR,[J.a4C,J.RY,J.F,J.JG,J.JH,J.DQ,J.we]) +p(J.F,[J.DU,J.D,A.zu,A.kl,A.bi,A.amG,A.C2,A.tJ,A.fx,A.aME,A.nY,A.as5,A.Il,A.aNL,A.a25,A.aNN,A.asX,A.kf,A.bK,A.aOQ,A.o9,A.avi,A.aPW,A.Rz,A.ax7,A.SH,A.azh,A.aRM,A.aRN,A.oe,A.aRO,A.aSf,A.ol,A.aTc,A.aVO,A.V0,A.oC,A.aX5,A.oD,A.aXf,A.mA,A.aYj,A.aGr,A.oM,A.aYK,A.aGW,A.aHi,A.b_s,A.b_I,A.b_Y,A.b0P,A.b0R,A.a1t,A.a47,A.S_,A.a6w,A.qj,A.aQL,A.qr,A.aSu,A.aBI,A.aXj,A.qQ,A.aYR,A.ank,A.aKV]) +p(J.DU,[J.aBs,J.x3,J.oc]) +q(J.bo_,J.D) +p(J.DQ,[J.RX,J.a4E]) +p(A.bg,[A.tC,A.YM,A.aad,A.B0,A.NS,A.jY,A.ad6,A.NE,A.aOS,A.NZ,A.a1I,A.T0,A.dx,A.xv,A.B1]) +p(A.jx,[A.HE,A.YN,A.nP,A.aa4,A.aa3]) +p(A.aT,[A.HB,A.aZh,A.aZg,A.anL,A.anK,A.aeV,A.awh,A.awg,A.aHk,A.abL,A.aK2,A.anS,A.ao0,A.a3F,A.ai2,A.ai1,A.av9,A.aJS]) +p(A.v0,[A.HC,A.akH,A.yf,A.ye]) +q(A.aeu,A.HC) +q(A.adk,A.akH) +q(A.ek,A.adk) +p(A.c3,[A.HD,A.Wi,A.me,A.B3,A.afz]) +p(A.Wh,[A.e0,A.x4]) +p(A.aO,[A.aa,A.m9,A.bR,A.B4,A.afL,A.Bj,A.O9,A.aiN]) +p(A.aa,[A.b3,A.O,A.aR0,A.bE,A.a4Z,A.aQw,A.aeX]) +q(A.jJ,A.fW) +q(A.a2r,A.My) +q(A.QI,A.Ah) +q(A.a2q,A.yQ) +q(A.l_,A.Wi) +p(A.Be,[A.aUe,A.aUf,A.aUg,A.aUh]) +q(A.ah2,A.aUe) +p(A.aUf,[A.dZ,A.lj,A.aUi,A.Ye,A.aUj,A.aUk,A.cM,A.aUl,A.ah3,A.ia,A.ah4,A.aUm,A.ah5,A.aUn,A.O_,A.ah6,A.aUo,A.aUp,A.aUq,A.O0,A.ah7,A.O1,A.aUr,A.ah8,A.aUs,A.aUt,A.aUu,A.aUv]) +p(A.aUg,[A.ah9,A.aha,A.aUw,A.aUx,A.aUy,A.ahb,A.aUz,A.Yf,A.aUA,A.aUB,A.aUC,A.ahc]) +p(A.aUh,[A.aUD,A.ahd,A.aUE,A.aUF]) +q(A.ak0,A.SA) +q(A.qS,A.ak0) +q(A.HU,A.qS) +p(A.PY,[A.y,A.a9]) +p(A.cZ,[A.a0X,A.O7,A.adH]) +p(A.a0X,[A.kd,A.ix]) +p(A.a4u,[A.rv,A.a4v]) +q(A.a6l,A.AG) +p(A.aFX,[A.aFj,A.Pb]) +p(A.me,[A.a4G,A.JJ,A.afF]) +p(A.kl,[A.a63,A.SW]) +p(A.SW,[A.agk,A.agm]) +q(A.agl,A.agk) +q(A.Ei,A.agl) +q(A.agn,A.agm) +q(A.qq,A.agn) +p(A.Ei,[A.a64,A.azX]) +p(A.qq,[A.azY,A.a66,A.azZ,A.a67,A.a68,A.a69,A.zv]) +q(A.ajU,A.aOq) +q(A.dI,A.YM) +q(A.dw,A.dI) +p(A.iG,[A.G6,A.G9,A.YG]) +q(A.Nw,A.G6) +p(A.AR,[A.pK,A.h1]) +p(A.Ny,[A.aI,A.ajc]) +p(A.Gv,[A.td,A.Gw]) +q(A.aj_,A.WT) +p(A.aNq,[A.oP,A.Xc]) +q(A.agg,A.td) +p(A.jY,[A.oX,A.ft,A.af0,A.ajm,A.lW]) +q(A.Ob,A.G9) +q(A.aj0,A.YN) +q(A.ai0,A.b_h) +p(A.B3,[A.Gc,A.ae2]) +p(A.O7,[A.xi,A.nB]) +q(A.B6,A.nB) +p(A.aej,[A.AY,A.AZ]) +p(A.aX9,[A.j1,A.nD]) +p(A.aX8,[A.aiO,A.aiP]) +q(A.a9Y,A.aiO) +p(A.xr,[A.mJ,A.aiR,A.O8]) +q(A.aiQ,A.aiP) +q(A.Vf,A.aiQ) +p(A.uz,[A.YP,A.aZi,A.aLk,A.Bk]) +q(A.afy,A.YP) +p(A.eS,[A.eC,A.anJ,A.awe,A.aK1,A.a8E,A.av8]) +p(A.eC,[A.He,A.JQ,A.Nh,A.aFK,A.P0,A.Rg,A.S1,A.S2,A.S3,A.S4,A.S5,A.S6,A.S7,A.S8,A.S9,A.Sa,A.Sb,A.Sc,A.Sd,A.Se,A.Sf,A.Sg,A.Wy,A.Wz,A.WA,A.WB,A.WC,A.WD]) +p(A.aZh,[A.ane,A.awx]) +p(A.aZg,[A.a_f,A.a4P]) +p(A.Pl,[A.bZf,A.ceQ,A.bSs,A.add,A.ade,A.aQE,A.cmu,A.cmr,A.bTf,A.c0c,A.b5R,A.c1_]) +q(A.bTe,A.acT) +p(A.bSs,[A.bRy,A.cmq]) +q(A.awf,A.RZ) +p(A.aoR,[A.c36,A.aQz]) +p(A.c3b,[A.aQy,A.aQA]) +q(A.b_N,A.aQy) +q(A.c39,A.b_N) +q(A.b_O,A.aQA) +q(A.c3d,A.b_O) +q(A.c3h,A.aQE) +q(A.b1i,A.aZn) +q(A.ak7,A.b1i) +p(A.nN,[A.TZ,A.a4k]) +q(A.aN4,A.ak4) +p(A.bi,[A.dh,A.atQ,A.Jo,A.SP,A.oB,A.aiL,A.oL,A.mD,A.ajz,A.aHz,A.FX,A.x7,A.I7,A.anp,A.C_]) +p(A.dh,[A.cb,A.vx,A.yA]) +q(A.cq,A.cb) +p(A.cq,[A.amX,A.and,A.Kn,A.aun,A.Jp,A.aEb]) +q(A.a_l,A.Kn) +q(A.aq_,A.tJ) +q(A.Qa,A.aME) +p(A.nY,[A.aq1,A.aq2]) +q(A.aNM,A.aNL) +q(A.a24,A.aNM) +q(A.aNO,A.aNN) +q(A.a26,A.aNO) +q(A.n_,A.C2) +q(A.aOR,A.aOQ) +q(A.QW,A.aOR) +q(A.aPX,A.aPW) +q(A.Ji,A.aPX) +q(A.Jn,A.Jo) +q(A.azz,A.aRM) +q(A.azA,A.aRN) +q(A.aRP,A.aRO) +q(A.azB,A.aRP) +q(A.aSg,A.aSf) +q(A.a6i,A.aSg) +q(A.aTd,A.aTc) +q(A.aBH,A.aTd) +p(A.bK,[A.qy,A.FP]) +q(A.aDQ,A.aVO) +q(A.aiM,A.aiL) +q(A.aF4,A.aiM) +q(A.aX6,A.aX5) +q(A.aFd,A.aX6) +q(A.aFm,A.aXf) +q(A.aYk,A.aYj) +q(A.aGi,A.aYk) +q(A.ajA,A.ajz) +q(A.aGj,A.ajA) +q(A.aYL,A.aYK) +q(A.aGU,A.aYL) +q(A.b_t,A.b_s) +q(A.aMB,A.b_t) +q(A.aeh,A.a25) +q(A.b_J,A.b_I) +q(A.aPB,A.b_J) +q(A.b_Z,A.b_Y) +q(A.agj,A.b_Z) +q(A.b0Q,A.b0P) +q(A.aX7,A.b0Q) +q(A.b0S,A.b0R) +q(A.aXn,A.b0S) +q(A.aj3,A.cgh) +q(A.xa,A.bQx) +q(A.vC,A.a1t) +q(A.cnN,A.c0c) +p(A.bi1,[A.Xf,A.aeF]) +p(A.n0,[A.a6P,A.a6Q,A.a6S]) +q(A.a3O,A.aGN) +p(A.zb,[A.a4F,A.XF]) +q(A.JI,A.XF) +q(A.aQM,A.aQL) +q(A.awR,A.aQM) +q(A.aSv,A.aSu) +q(A.aAg,A.aSv) +q(A.aXk,A.aXj) +q(A.aFr,A.aXk) +q(A.aYS,A.aYR) +q(A.aGZ,A.aYS) +p(A.aAk,[A.j,A.V]) +q(A.anl,A.aKV) +q(A.aAj,A.C_) +p(A.wt,[A.aEt,A.aK3,A.arQ]) +q(A.asB,A.aNw) +p(A.asB,[A.c,A.bJ,A.ki,A.aEl,A.a9g]) +p(A.c,[A.a3,A.M,A.bl,A.aE,A.aSp,A.a8C,A.aSs]) +p(A.a3,[A.aEu,A.ND,A.NF,A.a09,A.aoJ,A.Y9,A.arW,A.amN,A.aza,A.L3,A.TA,A.aFl,A.anw,A.Mg,A.avL,A.apA,A.Q3,A.apU,A.axi,A.aAn,A.aEc,A.aEq,A.aq3,A.I3,A.aMI,A.aMH,A.arN,A.aT0,A.arO,A.aL6,A.acQ,A.ajR,A.aS6,A.arR,A.arP,A.arT,A.arU,A.amD,A.OJ,A.aK9,A.aSP,A.agC,A.aRd,A.aNu,A.aKd,A.WQ,A.anz,A.at3,A.ato,A.amI,A.H3,A.an1,A.aih,A.aNU,A.ad4,A.aoi,A.pZ,A.vy,A.jH,A.aoS,A.aN7,A.asy,A.Qr,A.asF,A.OM,A.q3,A.Wn,A.aOW,A.yM,A.w8,A.RO,A.DK,A.acz,A.hX,A.axf,A.aiz,A.a5o,A.aRB,A.YQ,A.aA_,A.Kz,A.aA0,A.aS2,A.aNt,A.aS3,A.aS4,A.aU2,A.WS,A.aSJ,A.aON,A.b_l,A.agM,A.aLn,A.aE8,A.VA,A.qL,A.aY1,A.aGf,A.aY9,A.aYc,A.aGh,A.pC,A.aYI,A.aBx,A.aSq,A.aH5,A.aw2,A.aBR,A.hI,A.e_,A.yl,A.aSr,A.asp,A.Qv,A.a2T,A.auK,A.b_,A.xc,A.aQs,A.awm,A.a7G,A.aRb,A.azM,A.aRT,A.a6c,A.aE5,A.a6z,A.Tf,A.a3X,A.rP,A.iX,A.V3,A.aEP,A.aEO,A.aEV,A.aFb,A.aSt,A.eY,A.W2,A.aHA,A.FS,A.a7b,A.aFG,A.hd,A.aZP,A.avx,A.Jk,A.avz,A.aTb,A.aTL,A.agO,A.agh,A.QQ,A.Qb,A.SD,A.aQd,A.Af,A.apJ,A.apN,A.zG,A.V6,A.avH,A.an_,A.aFY,A.agX,A.nM,A.Ox,A.Oy,A.aEd,A.uV,A.BR,A.an9,A.awP,A.a2I,A.a2d,A.asA,A.rM,A.As,A.atk,A.a8S,A.a_H,A.azD,A.IM,A.IN,A.atJ,A.QU,A.Nc,A.R6,A.QH,A.axg,A.QK,A.apH,A.aou,A.awH,A.aAr,A.aAp,A.TR,A.aBt,A.aCb,A.H0,A.PB,A.H1,A.atD,A.atE,A.atG,A.QT,A.Dd,A.P8,A.P5,A.an8,A.aAh,A.apX,A.a11,A.WJ,A.Nn,A.WI,A.WL,A.apf,A.aJK,A.aC8,A.aex,A.agV,A.aGn,A.LF,A.VZ,A.aGv,A.MT,A.aB1,A.Tk,A.aB2,A.aGC,A.awU,A.KQ,A.a6L,A.Lp,A.aGF,A.aGM,A.VW,A.aut,A.auu,A.aGG,A.W1,A.MR,A.wX,A.abl,A.N3,A.To,A.ZH,A.aGu,A.aYp,A.abd,A.FD,A.a15,A.Pf,A.a4T,A.a0F,A.awS,A.atj,A.W_,A.avc,A.a3S,A.atl,A.abk,A.HY,A.Fp,A.as4,A.aGK,A.mq,A.aDz,A.RC,A.azN,A.Ra,A.aAc,A.aiF,A.aSR,A.aRz,A.aRy,A.aRC,A.Nt,A.asx,A.Q4,A.aR9,A.aVT,A.aRu,A.Ma,A.a62,A.a1S,A.aZE,A.aHN]) +p(A.aJ,[A.eA,A.aP,A.eb,A.abD]) +q(A.aPf,A.eA) +p(A.bxu,[A.b42,A.b45,A.bat,A.bcD,A.bhK,A.biB,A.bmH,A.bo6,A.btd,A.bw1,A.bwX,A.bx1,A.bFw,A.bFI,A.bNY,A.bOi,A.bOC]) +p(A.b42,[A.b3Y,A.b3Z,A.b43]) +q(A.bst,A.b45) +q(A.bpm,A.c40) +p(A.M,[A.OT,A.a0f,A.a__,A.a0i,A.a1c,A.a5p,A.a5q,A.Ep,A.ac_,A.a2m,A.avX,A.Me,A.Re,A.HP,A.a0P,A.a0R,A.Q5,A.a0O,A.abs,A.a1a,A.Cm,A.a1b,A.I5,A.a19,A.adJ,A.agP,A.a1r,A.a_6,A.Qc,A.a1n,A.a1o,A.X7,A.U3,A.a1q,A.Yx,A.aio,A.Qe,A.adY,A.Cn,A.JY,A.agD,A.agB,A.afM,A.afO,A.SC,A.a_c,A.Ai,A.a_W,A.a_Y,A.NQ,A.a7H,A.p1,A.Hy,A.ae6,A.age,A.ae8,A.ae7,A.ack,A.HI,A.a7E,A.a1z,A.QC,A.a3k,A.air,A.JA,A.afn,A.a4s,A.ad3,A.af2,A.JC,A.aaY,A.a5m,A.a5K,A.SI,A.ag7,A.ago,A.aa7,A.Gt,A.ae0,A.a6b,A.GC,A.GD,A.TC,A.aC_,A.a7C,A.a7L,A.a8N,A.aeK,A.a8L,A.Yv,A.Fa,A.LZ,A.a9a,A.Fk,A.Vb,A.afX,A.a1F,A.aaB,A.aaC,A.aaT,A.yR,A.ajx,A.N8,A.xO,A.IX,A.H7,A.a_3,A.xT,A.Ww,A.wK,A.Rc,A.Hl,A.Hm,A.Fo,A.Cs,A.vN,A.QA,A.a2a,A.Cw,A.QF,A.aid,A.yN,A.a3r,A.J1,A.mu,A.z0,A.z4,A.a4y,A.LW,A.a50,A.E2,A.ag0,A.a6d,A.a6e,A.a6f,A.Ba,A.T9,A.a6C,A.a3H,A.aaf,A.Tg,A.a7a,A.zT,A.EY,A.a8B,A.Uw,A.XT,A.YC,A.a8Y,A.aik,A.a98,A.M_,A.a9v,A.Md,A.a9x,A.aeM,A.Bh,A.aiu,A.ab2,A.wV,A.Wd,A.hc,A.Wx,A.apL,A.a7i,A.aau,A.Vy,A.Vz,A.aaw,A.a4_,A.Jj,A.abN,A.abW,A.a_m,A.ac3,A.NA,A.adb,A.Aq,A.G3,A.a5T,A.Di,A.a6x,A.a7q,A.a8I,A.a8o,A.Mm,A.Iq,A.IB,A.I9,A.JD,A.Hr,A.Ms,A.t1,A.oo,A.aec,A.Ir,A.ZV,A.OS,A.rs,A.SV,A.a3B,A.J4,A.a3C,A.J5,A.J8,A.Kb,A.a2V,A.a2W,A.a2X,A.K_,A.Iv,A.Iw,A.KA,A.a0V,A.aaN,A.LP,A.H2,A.BM,A.HM,A.vA,A.ZF,A.ZE,A.acy,A.IH,A.IK,A.Mz,A.Jc,A.II,A.IJ,A.JV,A.C5,A.a_O,A.JX,A.JW,A.Hh,A.a6m,A.Hd,A.a6s,A.a6r,A.a6t,A.En,A.Hi,A.a9l,A.acl,A.Nl,A.LR,A.No,A.G0,A.Np,A.Nq,A.GZ,A.MA,A.a1D,A.aax,A.JP,A.K7,A.aab,A.Hv,A.a00,A.vu,A.aaa,A.MH,A.Yb,A.agQ,A.ut,A.wY,A.MS,A.MN,A.MP,A.MZ,A.W0,A.MY,A.N0,A.N1,A.FF,A.N5,A.N6,A.abe,A.abi,A.abf,A.abg,A.MQ,A.MU,A.N7,A.a1w,A.MV,A.ac4,A.MW,A.a4x,A.Hz,A.a4a,A.a6F,A.a4o,A.Nk,A.a9O,A.adD,A.a5S,A.Ko,A.SL,A.ag6,A.Kp,A.Kq,A.SM,A.Gh,A.KI,A.acR,A.aiy,A.Wu,A.ab1,A.abQ,A.abX]) +q(A.T,A.aXb) +p(A.T,[A.aKY,A.adj,A.acC,A.a0k,A.akO,A.al5,A.al6,A.aSF,A.akc,A.aO4,A.XB,A.aiD,A.Rf,A.aM5,A.adu,A.aM9,A.adF,A.ads,A.aYH,A.akL,A.akM,A.akN,A.adQ,A.adL,A.adK,A.aTO,A.akP,A.aMR,A.adS,A.adT,A.X8,A.Yd,A.b_w,A.Z6,A.alt,A.Z7,A.akQ,A.adX,A.afD,A.aSQ,A.aSO,A.afN,A.afP,A.afQ,A.acG,A.b0O,A.aLv,A.ad5,A.XS,A.b05,A.akG,A.adg,A.akS,A.agf,A.aNb,A.aNc,A.aku,A.akI,A.b04,A.akR,A.Xj,A.aPd,A.aWb,A.afo,A.al1,A.afr,A.akF,A.al0,A.al2,A.ajt,A.b_S,A.xl,A.ag5,A.aRG,A.aS7,A.alu,A.ae1,A.al9,A.alH,A.alI,A.TD,A.al4,A.akK,A.alg,A.ahe,A.ai8,A.akY,A.aia,A.Yw,A.a96,A.ait,A.aWe,A.aly,A.aiJ,A.al7,A.akT,A.aje,A.ajf,A.alD,A.Xr,A.b0Z,A.ajQ,A.acx,A.aeQ,A.akC,A.b_p,A.akE,A.b1m,A.aiZ,A.aeW,A.aKZ,A.acO,A.aXc,A.akV,A.Xi,A.xg,A.aNX,A.aeo,A.aer,A.aVZ,A.Xp,A.aPq,A.R7,A.U1,A.Xw,A.b_M,A.al3,A.ail,A.afH,A.aR7,A.b_U,A.ags,A.aSa,A.T_,A.Y_,A.aSN,A.aSM,A.al_,A.alA,A.aSU,A.agK,A.aTJ,A.b0C,A.ai_,A.Z5,A.mI,A.b0K,A.a8Z,A.aW2,A.aWc,A.b0J,A.aWu,A.aiC,A.aiB,A.aeN,A.aiW,A.alx,A.alw,A.ajw,A.aYn,A.acD,A.ajW,A.Z1,A.aZV,A.a1_,A.aC6,A.aj8,A.alB,A.alC,A.aXt,A.a40,A.aPY,A.aZq,A.aZC,A.aKW,A.aHM,A.ae3,A.aLL,A.aiV,A.b_q,A.aRS,A.akX,A.aSC,A.aU0,A.als,A.alr,A.aX4,A.aO0,A.aez,A.aNa,A.aQq,A.aLr,A.aXi,A.aXl,A.aTZ,A.akU,A.a2e,A.acB,A.acM,A.aPN,A.XV,A.aPw,A.aPv,A.aPx,A.aRR,A.aXp,A.afK,A.aOE,A.aOF,A.aOG,A.aQW,A.aOa,A.aOb,A.aSc,A.adz,A.aXV,A.b0F,A.aKm,A.akA,A.adr,A.aM1,A.b_o,A.b_n,A.aKi,A.aOv,A.aOu,A.ajo,A.aPL,A.aOw,A.aOy,A.aQR,A.aLq,A.aLp,A.aQT,A.aQS,A.aKR,A.aSw,A.aKM,A.b01,A.b00,A.aSz,A.ala,A.acJ,A.aWn,A.akv,A.b_7,A.aVU,A.b_a,A.alG,A.b_b,A.b_c,A.aKa,A.aXW,A.aNd,A.aja,A.afA,A.aR6,A.aXe,A.aLD,A.aLB,A.aLC,A.aXd,A.ajC,A.aTQ,A.aTP,A.aiE,A.ajH,A.aYu,A.alE,A.ajF,A.ajL,A.aYz,A.aYy,A.aYB,A.ajM,A.aYD,A.aYE,A.aYF,A.aYq,A.aYt,A.aYr,A.aYs,A.ajG,A.ajI,A.ajO,A.arZ,A.b1_,A.aHO,A.b10,A.aft,A.aLQ,A.aQ9,A.aSS,A.aQh,A.akf,A.alz,A.aMh,A.adE,A.ag4,A.ag8,A.aRD,A.aRH,A.azv,A.ag9,A.aRs,A.Tc,A.aL8,A.aWr,A.Wv,A.ajv,A.aZv,A.aZD]) +q(A.bFz,A.bKs) +p(A.bFz,[A.mU,A.a_D]) +p(A.kg,[A.yc,A.ws,A.anh,A.wo,A.a8V]) +q(A.Ju,A.aQ7) +p(A.Ju,[A.azQ,A.aKb,A.bZg,A.a6y,A.azP]) +q(A.aoD,A.adj) +p(A.eT,[A.aPD,A.Nx,A.aO1]) +q(A.em,A.aPD) +p(A.em,[A.fg,A.a5Y,A.q4,A.zt]) +p(A.fg,[A.Qy,A.tV,A.TI,A.ul,A.acV,A.agJ]) +p(A.Qy,[A.pm,A.uS,A.qc]) +p(A.pm,[A.xm,A.us]) +q(A.an3,A.acC) +p(A.ka,[A.Cf,A.EG,A.at9,A.abz,A.aGO,A.bm,A.W3,A.it,A.afp,A.aF1,A.aVS,A.VG,A.iF,A.fh,A.acX,A.EW,A.azO,A.a9f,A.a8w,A.a4J,A.aET,A.aeZ,A.aj1,A.UK,A.a9U,A.Rl,A.Eh,A.Ae,A.Fj]) +p(A.bl,[A.bG,A.h7,A.ff,A.ad2]) +p(A.bG,[A.a0j,A.aep,A.a1s,A.afh,A.a04,A.eU,A.aeR,A.a3l,A.agF,A.ag2,A.azk,A.NT,A.aOK,A.ai7,A.ai9,A.ajg,A.acw,A.acN,A.aZa,A.n7,A.aeT,A.wc,A.afI,A.Jg,A.afj,A.O4,A.TJ,A.Ne,A.aVN,A.agd,A.a8W,A.aif,A.aii,A.UQ,A.aWy,A.aet,A.Og,A.agH,A.akd,A.Wb,A.Vx,A.Yp,A.af8,A.ak8,A.DH,A.oR,A.abm]) +q(A.adP,A.akO) +q(A.afR,A.al5) +q(A.afS,A.al6) +p(A.aC,[A.arY,A.cR,A.dq,A.B9,A.yq,A.aXD,A.Ux]) +p(A.arY,[A.aTR,A.aWp,A.aZK,A.aWq,A.aZL,A.aMF,A.aY7,A.aMJ,A.aR5,A.aKw,A.aQl,A.aWt,A.aQY,A.X2,A.aNC,A.aff,A.aY6,A.aPG,A.a7r,A.asE,A.ao7]) +p(A.Gz,[A.Ng,A.Ff]) +q(A.mt,A.agY) +q(A.adl,A.mt) +q(A.Ic,A.NB) +q(A.ak1,A.Ic) +q(A.Nf,A.ak1) +p(A.bat,[A.bau,A.bsw]) +q(A.bbs,A.bau) +q(A.jB,A.aJP) +p(A.x_,[A.bpf,A.bmr]) +q(A.bN6,A.bN7) +p(A.bA,[A.wa,A.FW,A.aGo,A.aA2,A.dR,A.aEh,A.M2,A.a9B,A.oy,A.UR,A.aFv,A.aGT,A.asM,A.aFx,A.a5C,A.a5D,A.o0,A.Cp,A.rm]) +p(A.dR,[A.cx,A.a4L,A.abP,A.KF,A.T6,A.aAt,A.aAs,A.aH9,A.av2,A.IQ]) +p(A.cx,[A.aop,A.nd,A.Wg,A.zI,A.a2x,A.atC,A.auo,A.Wk,A.Rq,A.Rb,A.a43]) +p(A.oy,[A.Ix,A.azW,A.anj,A.avK,A.ape,A.TN,A.TO,A.aA3]) +q(A.a7m,A.TN) +q(A.aC9,A.TO) +q(A.aDR,A.aGT) +p(A.asM,[A.asS,A.aFz,A.aHF,A.avY,A.azg,A.avu,A.aAC,A.aoO,A.awk,A.auk,A.aFw,A.azV,A.Wm,A.azH,A.a4j]) +p(A.aFx,[A.Vr,A.aFB,A.aFy,A.aFA]) +p(A.azH,[A.a5R,A.azG]) +p(A.o0,[A.abO,A.DF,A.atL]) +q(A.a5j,A.Cp) +p(A.Wg,[A.DV,A.ZT,A.aGt,A.auv,A.aDs,A.aoK,A.aCD,A.awY,A.aHI]) +q(A.awb,A.nd) +p(A.rm,[A.R4,A.aoc,A.avf,A.aJC]) +p(A.aoc,[A.E8,A.y4,A.Ev]) +p(A.bcD,[A.bcF,A.bsy]) +q(A.a1N,A.aNy) +p(A.bSv,[A.A4,A.LH,A.IE]) +q(A.RG,A.ph) +p(A.cdb,[A.aLm,A.aVv]) +q(A.b5T,A.aLm) +q(A.qE,A.aVv) +q(A.bJI,A.bNr) +q(A.anD,A.bJI) +p(A.iQ,[A.aO3,A.aMQ,A.aRg,A.aZT,A.aPF,A.aRh,A.aZU]) +p(A.QL,[A.bml,A.bod]) +p(A.anS,[A.awq,A.awG,A.aJJ]) +p(A.awq,[A.awo,A.awp]) +p(A.awG,[A.awr,A.aws,A.awt,A.awu,A.awv,A.aww,A.awy,A.awz,A.awA,A.awB,A.awC,A.awD,A.awE,A.awF]) +p(A.aJJ,[A.aJD,A.aJE,A.aJF,A.aJG,A.aJH,A.aJI]) +p(A.AL,[A.aHl,A.aZb,A.abM]) +q(A.aOr,A.aZb) +q(A.aHm,A.aOr) +p(A.mm,[A.FM,A.aHg,A.uI,A.ao6,A.aoq,A.aus,A.aB8,A.aCo,A.amT,A.aCC,A.aB7,A.Wl]) +p(A.qz,[A.aHu,A.ab_,A.aw6,A.asc,A.at6,A.aH3]) +q(A.amK,A.ab_) +p(A.bq3,[A.anM,A.aCk]) +q(A.awa,A.anW) +q(A.avW,A.api) +p(A.bn6,[A.bnc,A.bn7,A.bn5]) +p(A.SQ,[A.ME,A.y1]) +q(A.zq,A.zr) +p(A.aB3,[A.apO,A.baM]) +p(A.a8s,[A.b8l,A.atP,A.bp_,A.bEu,A.bHO]) +p(A.vK,[A.as_,A.avV,A.atv,A.aHC,A.aCE]) +p(A.Ay,[A.awX,A.ax_,A.azx]) +q(A.cbz,A.b9H) +p(A.a5J,[A.aRp,A.a5I]) +q(A.a5H,A.aRp) +q(A.c5Z,A.bi0) +q(A.U5,A.l0) +p(A.U5,[A.kT,A.q7]) +q(A.aDH,A.kT) +q(A.ca3,A.bi2) +p(A.bhK,[A.bhS,A.bhL,A.bhN,A.bhM]) +p(A.avX,[A.a_y,A.a76,A.afT,A.a_5,A.ZU,A.ZY,A.a_0,A.a_2,A.a_1,A.a_4,A.ZX,A.H8,A.ZZ,A.FJ,A.Ha]) +q(A.RF,A.XB) +p(A.RF,[A.Hb,A.aKD,A.aKC,A.aKG,A.aKy]) +p(A.Hb,[A.acS,A.aT2,A.aRf,A.aKH,A.aKt,A.aKz,A.aKB,A.aKv,A.aKA,A.ajS,A.aKx]) +q(A.anP,A.aLl) +p(A.anP,[A.aL1,A.aT1]) +q(A.anv,A.aL1) +q(A.aLa,A.anv) +q(A.vo,A.aLa) +q(A.hD,A.aLb) +q(A.k8,A.aLd) +q(A.nQ,A.aLe) +q(A.anC,A.aL7) +q(A.a3h,A.aPb) +p(A.a3h,[A.aLg,A.aT4]) +q(A.anG,A.aLg) +q(A.anH,A.aLh) +q(A.y0,A.aLf) +p(A.b67,[A.a_z,A.a77]) +q(A.aGV,A.aYM) +q(A.aLi,A.aGV) +q(A.anI,A.aLi) +p(A.aP,[A.Ho,A.KY,A.a8z,A.fp,A.aEG,A.ui,A.DL,A.PZ,A.a5z,A.afq,A.Mb,A.MI,A.ON,A.BN,A.Hu,A.yt,A.a2n,A.yE,A.Hs,A.ao9,A.Kk,A.wT,A.U8]) +q(A.BY,A.aLc) +p(A.a_B,[A.a_t,A.bxe]) +q(A.b5J,A.a_t) +p(A.aE,[A.awN,A.eH,A.bt,A.adR,A.ae_,A.aiI,A.Ly,A.yk,A.K5,A.Y0,A.aEX,A.Bi,A.aaD,A.ah1]) +p(A.awN,[A.anF,A.aCR,A.aMT,A.aU5,A.aZt,A.aWJ,A.aZs,A.aCq,A.a2K,A.Tz,A.aGk,A.Jl]) +q(A.H,A.aV2) +p(A.H,[A.J,A.aVq,A.da]) +p(A.J,[A.Ua,A.aL3,A.aPz,A.ahK,A.Yh,A.b08,A.all,A.ahO,A.alj,A.aUS,A.ali,A.b0e,A.b0b,A.b0i,A.alk,A.alp,A.b0q,A.aln,A.alq,A.b0z,A.aho,A.ahr,A.aUP,A.a80,A.a85,A.aUX,A.ahD,A.ahI,A.aTa,A.aVl,A.Ui,A.aGl,A.pH,A.aVs,A.b0g,A.b0n,A.alo,A.alm,A.b0p,A.b_Q,A.afG,A.b0D,A.b0V,A.aUT,A.b_T,A.b0j,A.b0k,A.b0x,A.aDn,A.aDl,A.aD_]) +p(A.Ua,[A.aCH,A.aV5]) +q(A.Mf,A.aWB) +q(A.aEx,A.aWA) +q(A.Hn,A.aL5) +q(A.a3g,A.aPa) +q(A.au7,A.aP9) +q(A.a39,A.aP6) +q(A.Do,A.aP8) +q(A.a7y,A.aU4) +q(A.ru,A.aPV) +q(A.ta,A.aZA) +p(A.Do,[A.aPT,A.aZy]) +q(A.pe,A.aPT) +q(A.pE,A.aZy) +q(A.au_,A.aP7) +p(A.au_,[A.aPS,A.aZx]) +q(A.avr,A.aPS) +q(A.aHx,A.aZx) +q(A.QV,A.aOL) +p(A.eH,[A.aEy,A.aBm,A.aML,A.YA,A.Dq,A.aNZ,A.aiq,A.aYa,A.yr,A.ax0,A.d4,A.aJM,A.LJ,A.aeq,A.AN,A.aAw,A.ajB,A.aEw,A.avy,A.Ru,A.avA,A.au9,A.aDD,A.azR,A.azo,A.azp,A.aX2]) +q(A.aL4,A.aL3) +q(A.acP,A.aL4) +q(A.anx,A.acP) +q(A.nO,A.aL2) +q(A.atY,A.aP4) +q(A.atZ,A.aP5) +p(A.jK,[A.au2,A.au3,A.au4,A.a3b,A.a3c,A.au8,A.a3e,A.a3f,A.au1,A.au0,A.a3a,A.au5,A.au6,A.a3d]) +q(A.ww,A.aT1) +q(A.aBn,A.aT4) +q(A.aBo,A.aT5) +q(A.aV6,A.aV5) +q(A.aD0,A.aV6) +q(A.a51,A.aR3) +p(A.df,[A.Pn,A.aHD,A.aHE,A.WG,A.apC,A.TE,A.a60,A.ad0,A.auC,A.aBT]) +q(A.azf,A.aHE) +q(A.op,A.oh) +q(A.PT,A.op) +p(A.TE,[A.aXa,A.VL]) +q(A.aa0,A.aXa) +p(A.bhg,[A.So,A.bKw]) +q(A.aBP,A.So) +p(A.aBP,[A.aFS,A.aFU]) +q(A.aPc,A.apC) +q(A.Dp,A.aPc) +q(A.a3E,A.aPz) +q(A.aSm,A.ah) +q(A.zA,A.aSm) +p(A.anU,[A.aBQ,A.aNS]) +q(A.aNV,A.aBQ) +q(A.bec,A.aNV) +q(A.bdX,A.aNS) +q(A.bNo,A.bbR) +q(A.bnB,A.bKL) +q(A.bLl,A.bnB) +q(A.FA,A.Ax) +q(A.ad1,A.ad0) +q(A.P4,A.ad1) +q(A.w1,A.Dp) +q(A.tW,A.WG) +p(A.baE,[A.bPm,A.bjr]) +q(A.apy,A.aM6) +q(A.apz,A.aM7) +p(A.bt,[A.at5,A.aMS,A.aMW,A.aKP,A.aOC,A.aLy,A.aQn,A.aQo,A.aLY,A.aPe,A.aLX,A.aQi,A.aRA,A.aYe,A.Ef,A.aKE,A.a_a,A.T4,A.anA,A.a1u,A.yg,A.apl,A.PF,A.aBi,A.aBj,A.t7,A.yj,A.PV,A.a35,A.aup,A.aA,A.fl,A.q1,A.ba,A.fI,A.a0Y,A.auq,A.awV,A.Eo,A.tu,A.aw9,A.aw8,A.ht,A.wI,A.ax4,A.iU,A.Rx,A.amE,A.a5P,A.bX,A.zo,A.P2,A.pa,A.Jy,A.m7,A.apx,A.Ib,A.aMc,A.aPE,A.aRa,A.aWh,A.pv,A.aEU,A.aNo,A.aT8,A.aW0,A.YF,A.aWT,A.aWP,A.aF2,A.aFT,A.aaM,A.dg,A.aZH,A.aKX,A.Q7,A.aq0,A.avs,A.aHo,A.aZo,A.aEF,A.aWM,A.aEW,A.av1,A.av0,A.anR,A.aRJ,A.b_e,A.P_,A.aZQ,A.aX3,A.aUa,A.aUc,A.aU9]) +q(A.ahL,A.ahK) +q(A.aD2,A.ahL) +p(A.aD2,[A.Ud,A.ahm,A.Lv,A.LA,A.ahx,A.aYf,A.a8f,A.a7Z,A.aCV,A.a7W,A.a87,A.aUI,A.aCG,A.Yi,A.aCM,A.aDj,A.a81,A.aCQ,A.aD3,A.a84,A.a8b,A.a7R,A.a8h,A.aCI,A.aCW,A.aCO,A.aCS,A.aCU,A.aCP,A.a7V,A.adt,A.aUM,A.aUZ,A.aV9,A.b0c,A.ahB,A.aV8,A.Yo,A.aVr,A.ahk,A.aZp,A.Bp,A.a8i,A.ahw,A.Yj,A.ahG,A.akw,A.Ub,A.ahU,A.aiK]) +q(A.aCN,A.Ud) +p(A.wR,[A.aZm,A.QX,A.awQ]) +q(A.cB,A.aQr) +p(A.cB,[A.KU,A.HX,A.WY,A.WX,A.v_,A.OL,A.Pj,A.mX,A.zX,A.rI,A.rQ,A.o2,A.l7,A.a1X,A.asL,A.qG,A.p6,A.EB,A.EU,A.uj,A.FL,A.t8,A.FI]) +q(A.cg,A.aKh) +p(A.cg,[A.aB9,A.apT,A.asP,A.TH,A.T1,A.Ij,A.fb,A.ej,A.aHK,A.a1W,A.adC,A.aDr]) +p(A.bGv,[A.a8D,A.bCj,A.bA1,A.bei]) +q(A.bvd,A.a8D) +p(A.bGx,[A.bve,A.aVJ]) +p(A.cR,[A.aKI,A.aKr,A.aKs,A.ZQ,A.aTU,A.aVD,A.aN0,A.aYN,A.adw,A.akD,A.b_r,A.b_y]) +q(A.aKJ,A.aKI) +q(A.aKK,A.aKJ) +q(A.xU,A.aKK) +p(A.bG0,[A.c32,A.cda,A.auw,A.Mo,A.bXP,A.b6G,A.b9l]) +q(A.an6,A.aKL) +q(A.aTV,A.aTU) +q(A.aTW,A.aTV) +q(A.a7j,A.aTW) +q(A.aVE,A.aVD) +q(A.or,A.aVE) +q(A.I6,A.aN0) +q(A.aYO,A.aYN) +q(A.aYP,A.aYO) +q(A.Nb,A.aYP) +q(A.adx,A.adw) +q(A.ady,A.adx) +q(A.PW,A.ady) +p(A.PW,[A.a_9,A.acF]) +p(A.a6O,[A.kQ,A.bSX]) +p(A.kQ,[A.afE,A.a8K,A.eG,A.ab8,A.fR,A.ab7,A.o7,A.aNe]) +q(A.aB,A.akD) +q(A.aMG,A.akL) +q(A.adN,A.akM) +q(A.b_u,A.akN) +q(A.adO,A.b_u) +q(A.aLU,A.aGO) +p(A.v,[A.aMN,A.kI,A.az6]) +q(A.ez,A.aMN) +p(A.bLs,[A.bb6,A.bbd,A.bcw,A.brs]) +q(A.b_v,A.bb6) +q(A.aMK,A.b_v) +p(A.bJ,[A.bO,A.aSo,A.a0U,A.ahZ,A.aSn]) +p(A.bO,[A.aMM,A.aMV,A.qp,A.aDk,A.a9D,A.awM,A.XG,A.a5_,A.aSL,A.Va,A.aWY,A.a9T,A.aXL]) +p(A.h7,[A.aKe,A.JS,A.uf,A.iO,A.a4I,A.aZR,A.n4,A.azr,A.azs]) +p(A.dT,[A.hf,A.aju,A.Al,A.qJ]) +p(A.hf,[A.adB,A.Fu]) +q(A.fa,A.adB) +p(A.fa,[A.i_,A.Yz,A.xh,A.Yy,A.fr,A.wi,A.zf,A.jv,A.x8,A.xn,A.nu,A.xk,A.xp,A.mK,A.ti,A.tj,A.NU]) +q(A.G1,A.i_) +q(A.b09,A.b08) +q(A.ahl,A.b09) +q(A.dW,A.aQ4) +q(A.aMP,A.dW) +q(A.aq4,A.aMP) +q(A.adW,A.akP) +p(A.a_6,[A.aP3,A.aWs,A.aXJ,A.an2,A.aEL,A.azc,A.aEE,A.a7f,A.ash,A.asq,A.Sm,A.OP]) +p(A.dG,[A.Ta,A.aSk]) +q(A.hw,A.Ta) +q(A.NR,A.hw) +q(A.iA,A.NR) +p(A.iA,[A.oi,A.a7e]) +p(A.oi,[A.ald,A.afU,A.ale,A.ain,A.a6G,A.ae4]) +q(A.Bb,A.ald) +q(A.ne,A.nm) +p(A.ne,[A.nZ,A.u6,A.o_]) +q(A.lu,A.aNi) +p(A.lu,[A.v3,A.FK,A.c_,A.lJ,A.as3]) +p(A.vv,[A.aMO,A.aZd,A.aLA,A.aiA,A.aN2]) +p(A.a7e,[A.a1m,A.U_,A.a5X,A.agN]) +p(A.U_,[A.a1d,A.a1L]) +p(A.U3,[A.Qd,A.XO]) +q(A.wA,A.Yd) +p(A.wA,[A.adU,A.aRi]) +q(A.adV,A.b_w) +p(A.Lv,[A.ahn,A.aUL,A.aT9]) +q(A.aip,A.Z6) +q(A.aW6,A.alt) +q(A.YB,A.Z7) +q(A.b0s,A.all) +q(A.Ym,A.b0s) +q(A.aMU,A.bbd) +q(A.arS,A.aMU) +q(A.EX,A.ahO) +p(A.EX,[A.aUN,A.aCF,A.aht,A.ahf,A.ahy,A.ahz,A.aV_,A.a8c,A.a8_,A.Xy]) +q(A.adZ,A.akQ) +p(A.aMJ,[A.aQK,A.aVF]) +q(A.b0a,A.alj) +q(A.O3,A.b0a) +q(A.Co,A.aMX) +q(A.aMZ,A.a6h) +q(A.Qf,A.aMZ) +q(A.bXm,A.Co) +p(A.jI,[A.p7,A.Ii,A.asD]) +q(A.G8,A.p7) +p(A.G8,[A.QP,A.atz,A.atx]) +q(A.dl,A.aPi) +q(A.tT,A.aPj) +p(A.Ii,[A.aPh,A.asC,A.aWj]) +p(A.il,[A.na,A.kW]) +p(A.na,[A.qR,A.ca,A.KD]) +q(A.a4V,A.kZ) +p(A.cma,[A.aPt,A.G5,A.af1]) +q(A.a3o,A.dl) +q(A.cX,A.aTm) +q(A.b15,A.aKc) +q(A.b16,A.b15) +q(A.aYX,A.b16) +p(A.cX,[A.aTe,A.aTz,A.aTp,A.aTk,A.aTn,A.aTi,A.aTr,A.aTH,A.ng,A.aTv,A.aTx,A.aTt,A.aTg]) +q(A.aTf,A.aTe) +q(A.L6,A.aTf) +p(A.aYX,[A.b11,A.b1d,A.b18,A.b14,A.b17,A.b13,A.b19,A.b1h,A.b1f,A.b1g,A.b1e,A.b1b,A.b1c,A.b1a,A.b12]) +q(A.aYT,A.b11) +q(A.aTA,A.aTz) +q(A.Lb,A.aTA) +q(A.aZ3,A.b1d) +q(A.aTq,A.aTp) +q(A.zQ,A.aTq) +q(A.aYZ,A.b18) +q(A.aTl,A.aTk) +q(A.EH,A.aTl) +q(A.aYW,A.b14) +q(A.aTo,A.aTn) +q(A.EI,A.aTo) +q(A.aYY,A.b17) +q(A.aTj,A.aTi) +q(A.zP,A.aTj) +q(A.aYV,A.b13) +q(A.aTs,A.aTr) +q(A.L8,A.aTs) +q(A.aZ_,A.b19) +q(A.aTI,A.aTH) +q(A.zS,A.aTI) +q(A.aZ7,A.b1h) +p(A.ng,[A.aTD,A.aTF,A.aTB]) +q(A.aTE,A.aTD) +q(A.Ld,A.aTE) +q(A.aZ5,A.b1f) +q(A.aTG,A.aTF) +q(A.Le,A.aTG) +q(A.aZ6,A.b1g) +q(A.aTC,A.aTB) +q(A.Lc,A.aTC) +q(A.aZ4,A.b1e) +q(A.aTw,A.aTv) +q(A.zR,A.aTw) +q(A.aZ1,A.b1b) +q(A.aTy,A.aTx) +q(A.La,A.aTy) +q(A.aZ2,A.b1c) +q(A.aTu,A.aTt) +q(A.L9,A.aTu) +q(A.aZ0,A.b1a) +q(A.aTh,A.aTg) +q(A.zM,A.aTh) +q(A.aYU,A.b12) +p(A.YX,[A.ag_,A.XZ]) +p(A.TI,[A.mh,A.anZ]) +p(A.zs,[A.aQa,A.aPU,A.aZz,A.aea]) +p(A.a5Y,[A.z6,A.avt,A.aHy,A.asu]) +q(A.YS,A.Bl) +p(A.anZ,[A.mB,A.WW]) +q(A.aaH,A.aXQ) +q(A.aaK,A.aXT) +q(A.aaJ,A.aXS) +q(A.aaL,A.aXU) +q(A.aaI,A.aXR) +q(A.a_C,A.acV) +p(A.a_C,[A.wO,A.wP]) +q(A.Jq,A.le) +q(A.Sz,A.Jq) +p(A.aKd,[A.a_v,A.at2,A.atn]) +q(A.Pu,A.aM0) +p(A.Pu,[A.bQA,A.bUa,A.bUe,A.c2z]) +q(A.OK,A.aKg) +p(A.NV,[A.Y3,A.oV,A.aSV]) +q(A.bR6,A.b3L) +q(A.bro,A.aE1) +p(A.bG1,[A.cm6,A.c6I,A.c9W,A.cm8,A.asz,A.aGg]) +q(A.aTN,A.V) +q(A.cfq,A.bGL) +q(A.aWO,A.b0O) +p(A.aCF,[A.aUJ,A.ahg,A.a7U,A.a8e,A.ahj,A.a83]) +q(A.BV,A.aKO) +q(A.bRw,A.BV) +q(A.ag1,A.b_V) +q(A.afB,A.b_P) +q(A.SE,A.ui) +q(A.a_x,A.aL9) +q(A.a5n,A.aRe) +p(A.yq,[A.aLu,A.Ad,A.aNg,A.aNQ,A.b_d]) +q(A.P9,A.aLw) +q(A.bSQ,A.P9) +q(A.a_X,A.aLx) +q(A.Pa,A.aLz) +q(A.bSR,A.Pa) +q(A.aU8,A.b05) +p(A.Dq,[A.aLJ,A.aXH,A.F0,A.yi]) +q(A.aUU,A.aUS) +q(A.ahu,A.aUU) +q(A.Lx,A.ahu) +p(A.Lx,[A.aUK,A.aXI]) +q(A.a05,A.aLK) +q(A.d6,A.aLM) +q(A.adc,A.akG) +q(A.fm,A.aRW) +p(A.fm,[A.az7,A.aNp,A.aSi,A.wL]) +p(A.az7,[A.aRV,A.aOc,A.aey,A.aRU,A.aOd]) +p(A.eU,[A.a06,A.a44,A.K3,A.a9N,A.aaQ,A.afl,A.Cq,A.Jr,A.Cr]) +q(A.aok,A.aLN) +q(A.aN8,A.akS) +p(A.bGy,[A.bX5,A.cnf,A.bGz]) +q(A.HA,A.aLR) +p(A.HA,[A.bTX,A.c_Z,A.c8P]) +q(A.akJ,A.akI) +q(A.aLV,A.akJ) +p(A.W3,[A.aLT,A.ajb]) +q(A.Ps,A.aLW) +q(A.bU1,A.Ps) +q(A.alh,A.b04) +q(A.ah_,A.alh) +p(A.c9,[A.aQf,A.b_z,A.b_C,A.b_A,A.b_B,A.aPZ,A.aQ0,A.b_L,A.aQe,A.ajq,A.aXY,A.b0Y]) +q(A.a9S,A.aiI) +p(A.a9S,[A.aM_,A.aNj,A.aR1]) +q(A.ahh,A.ali) +p(A.z9,[A.aZc,A.aQj,A.aQk]) +q(A.PL,A.aM8) +p(A.kI,[A.im,A.jN]) +q(A.a1x,A.aN3) +q(A.ae5,A.akR) +p(A.it,[A.cV,A.aPR,A.Bf]) +p(A.cV,[A.aVy,A.aVx,A.qY,A.aDy,A.aVz,A.ahY]) +q(A.m8,A.aN9) +q(A.aN5,A.m8) +q(A.b_x,A.bcw) +q(A.aNs,A.b_x) +q(A.Qt,A.aNx) +q(A.bXK,A.Qt) +q(A.Qw,A.aND) +q(A.bXU,A.Qw) +q(A.a2c,A.aNY) +q(A.b0f,A.b0e) +q(A.ahq,A.b0f) +q(A.QD,A.aO_) +q(A.bYc,A.QD) +p(A.p1,[A.ati,A.Dm,A.aQ2,A.Er,A.VI]) +q(A.aew,A.b_z) +q(A.aOk,A.b_C) +q(A.aOi,A.b_A) +q(A.aOj,A.b_B) +p(A.d6,[A.aOl,A.aOT,A.aOY,A.aQ1,A.aOX,A.aOZ,A.aSK,A.aRr,A.aSG,A.aXZ]) +q(A.a2v,A.aOm) +q(A.a2U,A.aOD) +q(A.aOV,A.Dm) +q(A.a34,A.aOU) +q(A.aUW,A.LA) +q(A.R1,A.aPg) +q(A.c_p,A.R1) +p(A.bip,[A.bH2,A.cm9]) +p(A.bH2,[A.b_F,A.b_D]) +q(A.b_G,A.b_F) +q(A.bZ4,A.b_G) +q(A.b_E,A.b_D) +q(A.bZ3,A.b_E) +q(A.cdJ,A.bio) +q(A.aQ_,A.b_L) +q(A.w9,A.aQ3) +p(A.wd,[A.a4p,A.DM]) +p(A.DM,[A.DJ,A.a4q,A.a4r]) +q(A.afm,A.al1) +p(A.RO,[A.RP,A.afe,A.afd]) +p(A.eX,[A.qe,A.iS,A.tg,A.aob]) +p(A.qe,[A.aSe,A.uQ,A.ml]) +q(A.aLs,A.akF) +q(A.af3,A.al0) +q(A.ahp,A.b0b) +q(A.afs,A.al2) +q(A.JB,A.aQm) +q(A.c2D,A.JB) +q(A.ahC,A.b0i) +q(A.Sk,A.aR2) +q(A.c3T,A.Sk) +q(A.aRj,A.b_S) +q(A.XP,A.az6) +q(A.bx,A.aLt) +q(A.az5,A.bx) +q(A.afV,A.az5) +q(A.a4,A.aYh) +q(A.az8,A.a4) +q(A.aRk,A.az8) +p(A.bm,[A.E9,A.eZ,A.aM3,A.aH0,A.abG,A.a5V,A.abZ]) +p(A.asP,[A.a1Q,A.aNA,A.aNB]) +q(A.aRI,A.TH) +q(A.aRF,A.T1) +q(A.aRw,A.Ij) +q(A.fz,A.aRK) +p(A.fz,[A.aRq,A.aRv]) +q(A.SK,A.aRL) +q(A.azm,A.SK) +q(A.a5L,A.aRt) +p(A.btD,[A.c7V,A.cdG,A.cm7,A.bvq]) +q(A.YL,A.aa7) +q(A.aWa,A.alu) +q(A.Ky,A.aS5) +q(A.c7N,A.Ky) +q(A.a6a,A.aS8) +q(A.agp,A.al9) +q(A.SZ,A.aS9) +p(A.SZ,[A.c7Y,A.c7Z]) +q(A.aSI,A.Er) +q(A.a6A,A.aSH) +q(A.Kd,A.afU) +q(A.agE,A.ale) +q(A.b_j,A.alH) +q(A.b_k,A.alI) +q(A.a6H,A.aST) +p(A.aF1,[A.akx,A.aky]) +q(A.a7d,A.TC) +q(A.Lf,A.aTK) +q(A.c9U,A.Lf) +p(A.aC_,[A.E_,A.p2]) +q(A.aQZ,A.al4) +q(A.ado,A.akK) +q(A.aUG,A.X2) +q(A.a7N,A.p2) +q(A.aUH,A.ado) +q(A.TL,A.aTS) +p(A.TL,[A.bUh,A.c3O]) +q(A.a7w,A.aU1) +q(A.agZ,A.alg) +q(A.ahM,A.alk) +q(A.aVp,A.alp) +q(A.a7M,A.ahe) +q(A.a8O,A.ai8) +p(A.baz,[A.aG,A.Aj]) +q(A.ad_,A.aG) +q(A.aeL,A.akY) +q(A.aib,A.aia) +q(A.UG,A.aib) +q(A.a90,A.aW3) +q(A.a92,A.aW4) +q(A.a95,A.aW5) +q(A.b0r,A.b0q) +q(A.Yl,A.b0r) +q(A.UM,A.aW7) +q(A.ceb,A.UM) +q(A.aYg,A.eZ) +p(A.ab3,[A.aWd,A.aY4]) +q(A.aiG,A.aly) +q(A.Yn,A.aln) +q(A.aVo,A.alq) +q(A.V7,A.aWK) +q(A.cfi,A.V7) +q(A.bCm,A.aVJ) +q(A.aVI,A.bzu) +q(A.bCl,A.aVI) +q(A.bCk,A.bGw) +q(A.bCi,A.bzt) +q(A.bCh,A.bzs) +q(A.bA0,A.bzv) +q(A.Vc,A.aX1) +q(A.cfw,A.Vc) +q(A.al8,A.al7) +q(A.afY,A.al8) +q(A.aXz,A.xP) +q(A.uB,A.aXA) +p(A.uB,[A.aXx,A.aXy]) +q(A.ch0,A.b0T) +q(A.aj9,A.b0U) +q(A.VE,A.aXG) +q(A.aNm,A.akT) +q(A.aLS,A.b_r) +q(A.Xh,A.b_y) +q(A.aW_,A.iF) +q(A.nn,A.aW_) +p(A.nn,[A.F7,A.oU]) +p(A.F7,[A.ajd,A.NC,A.NI,A.Gm,A.a78]) +p(A.fh,[A.aXF,A.aNW,A.a36,A.agv,A.aAB,A.aBq,A.asO]) +q(A.chM,A.VE) +q(A.aXX,A.b0Y) +q(A.aY0,A.VI) +q(A.MB,A.aY_) +q(A.ajr,A.alD) +q(A.aaU,A.yR) +q(A.q9,A.Xr) +q(A.YT,A.q9) +q(A.aRl,A.brs) +q(A.az9,A.aRl) +q(A.ab5,A.aY8) +q(A.aYd,A.b0Z) +p(A.qp,[A.aYb,A.aQc,A.aYl,A.b1k]) +q(A.aVn,A.b0z) +q(A.jU,A.aYi) +q(A.nr,A.aYm) +q(A.axm,A.Qf) +q(A.qU,A.aZI) +q(A.abb,A.aYo) +q(A.abp,A.aYG) +q(A.aOB,A.Ef) +p(A.a8f,[A.a89,A.aD1,A.Uf,A.A0,A.ahi,A.a8m,A.Uj,A.O2]) +q(A.aUR,A.a89) +q(A.N9,A.ajQ) +q(A.abu,A.aYJ) +q(A.W9,A.aZ8) +p(A.jE,[A.fF,A.kE,A.agb]) +p(A.a_S,[A.dJ,A.vq,A.agc]) +p(A.aob,[A.eR,A.ls]) +q(A.f5,A.Fg) +p(A.iS,[A.kc,A.fn,A.nC,A.oE,A.nE,A.nF]) +p(A.h5,[A.af,A.eB,A.Gi]) +q(A.J2,A.fF) +q(A.a4Y,A.bkA) +p(A.aLP,[A.adf,A.XL]) +q(A.Hg,A.anh) +q(A.pf,A.aQ6) +q(A.bn0,A.aQ8) +q(A.b5i,A.buR) +p(A.ki,[A.aBr,A.wS]) +q(A.Vp,A.aXm) +p(A.pA,[A.WF,A.aZl,A.Pr,A.Sh,A.a6M,A.Ik,A.aM4]) +q(A.F8,A.Mo) +q(A.zJ,A.aT6) +q(A.aNl,A.zJ) +q(A.A3,A.aVq) +q(A.aVC,A.A3) +p(A.z1,[A.ty,A.V9]) +p(A.oa,[A.y7,A.aER]) +q(A.aUO,A.aho) +q(A.a7Y,A.aUO) +q(A.ahs,A.ahr) +q(A.aUQ,A.ahs) +q(A.Lw,A.aUQ) +p(A.EW,[A.ajs,A.adi,A.X3]) +q(A.iP,A.aQF) +p(A.iP,[A.aBl,A.aGm,A.aBA,A.kJ]) +p(A.kJ,[A.u8,A.HO,A.a0J,A.PG,A.PK,A.a_w,A.a4S,A.a3t,A.OQ]) +p(A.u8,[A.a49,A.x1,A.T5]) +q(A.aUY,A.aUX) +q(A.a88,A.aUY) +q(A.Ue,A.ahD) +q(A.aRY,A.b_X) +q(A.Ey,A.b9o) +p(A.cev,[A.aMf,A.oS]) +p(A.oS,[A.aVH,A.afc,A.Of]) +q(A.zK,A.up) +q(A.pB,A.aju) +q(A.aV3,A.ahI) +q(A.aV4,A.aV3) +q(A.LB,A.aV4) +q(A.b0H,A.b0G) +q(A.b0I,A.b0H) +q(A.Bg,A.b0I) +q(A.aBE,A.aTa) +q(A.a7S,A.aUI) +p(A.Yi,[A.aCL,A.aCK,A.aCJ,A.ahJ]) +p(A.ahJ,[A.aCY,A.aCZ]) +p(A.da,[A.aV7,A.aVj,A.ahQ,A.aVa,A.ahS,A.ahR,A.aDc,A.aV0]) +q(A.a8g,A.aV7) +p(A.bEL,[A.aEa,A.a0H,A.a97,A.a9b,A.auZ,A.a1P]) +q(A.M0,A.aWg) +q(A.a7X,A.ahj) +q(A.aEQ,A.aWU) +p(A.Al,[A.aWV,A.aWW]) +q(A.Ak,A.aWV) +p(A.qJ,[A.aWZ,A.aS_]) +q(A.qI,A.aWZ) +q(A.aVk,A.aVj) +q(A.aDh,A.aVk) +p(A.aDh,[A.aDi,A.aD5,A.aDf]) +q(A.aVe,A.ahQ) +q(A.aVf,A.aVe) +q(A.A2,A.aVf) +p(A.A2,[A.aD7,A.aD9,A.aDa]) +q(A.aD6,A.aD7) +q(A.a9R,A.bGB) +q(A.aWX,A.aWW) +q(A.lL,A.aWX) +q(A.V8,A.lL) +q(A.a8k,A.aVa) +p(A.a8k,[A.aDd,A.aVd]) +q(A.aVg,A.ahS) +q(A.aDe,A.aVg) +p(A.aDe,[A.aDg,A.a8l,A.A1]) +p(A.A1,[A.aD8,A.b0t]) +q(A.aVm,A.aVl) +q(A.Uh,A.aVm) +q(A.a86,A.Uh) +q(A.QZ,A.VH) +q(A.Uk,A.pH) +p(A.Uk,[A.LD,A.aD4]) +q(A.aVt,A.aVs) +q(A.a8n,A.aVt) +q(A.aEk,A.aWi) +q(A.fZ,A.aWl) +q(A.US,A.aWm) +q(A.Eq,A.US) +p(A.bF4,[A.b3P,A.bNa,A.bpV,A.bKC,A.biP]) +q(A.b81,A.ang) +q(A.bxr,A.b81) +q(A.aL_,A.uG) +p(A.b6d,[A.bXj,A.aCB]) +q(A.n9,A.aQB) +p(A.n9,[A.rx,A.JN,A.DS]) +q(A.box,A.aQD) +p(A.box,[A.K,A.a7]) +p(A.ST,[A.aSj,A.aXE]) +q(A.rJ,A.hZ) +q(A.a7F,A.aU6) +q(A.zZ,A.aU7) +p(A.zZ,[A.ES,A.U2]) +q(A.aCs,A.a7F) +q(A.mC,A.ea) +q(A.Fy,A.aY3) +p(A.Fy,[A.aG1,A.aG0,A.aG2,A.VM]) +q(A.aT7,A.b02) +q(A.NL,A.L1) +q(A.b3b,A.aKf) +p(A.fb,[A.aBZ,A.alb,A.alc,A.AV,A.ak2,A.ak3,A.aW9,A.aMy,A.a8U,A.agw]) +q(A.agy,A.alb) +q(A.agz,A.alc) +p(A.aDk,[A.ahH,A.aUb]) +q(A.Lz,A.ahH) +q(A.aKu,A.akC) +q(A.aKF,A.b_p) +q(A.acE,A.akE) +q(A.akl,A.b1m) +q(A.Mq,A.wK) +q(A.ans,A.aKZ) +p(A.l1,[A.JL,A.aem,A.zx,A.qi,A.agA,A.aie]) +p(A.a0U,[A.a7k,A.Vj,A.mz]) +p(A.a7k,[A.mc,A.EA,A.b0_,A.aLo]) +p(A.mc,[A.aZ9,A.a4l,A.XC,A.ajV,A.NM]) +q(A.rn,A.aZa) +q(A.k9,A.fl) +p(A.a9D,[A.aSE,A.b0L]) +q(A.ah0,A.d4) +q(A.rq,A.iO) +q(A.a8A,A.ahZ) +q(A.akm,A.ao3) +q(A.akn,A.akm) +q(A.ako,A.akn) +q(A.akp,A.ako) +q(A.akq,A.akp) +q(A.akr,A.akq) +q(A.aks,A.akr) +q(A.aHT,A.aks) +q(A.akW,A.akV) +q(A.aef,A.akW) +q(A.a59,A.vN) +q(A.G7,A.In) +q(A.Ip,A.aem) +q(A.aO5,A.aer) +q(A.aes,A.aO5) +q(A.aO6,A.aes) +q(A.aO7,A.aO6) +q(A.vP,A.aO7) +q(A.kt,A.aBr) +q(A.O6,A.kt) +q(A.a0L,A.aM3) +q(A.aZJ,A.a0L) +q(A.aPo,A.aPn) +q(A.hG,A.aPo) +p(A.hG,[A.yO,A.aeP]) +q(A.aPm,A.aPl) +q(A.a3q,A.aPm) +q(A.R2,A.yN) +q(A.aPp,A.Xp) +p(A.n7,[A.aeO,A.a3K,A.afi]) +q(A.aug,A.aPr) +q(A.k_,A.b07) +q(A.xo,A.b06) +q(A.aUd,A.aug) +q(A.bzP,A.aUd) +p(A.kW,[A.aR,A.yW,A.aeb]) +p(A.Ja,[A.dE,A.aKN]) +q(A.bXp,A.bF5) +q(A.Jf,A.wq) +q(A.afa,A.b_M) +q(A.afu,A.al3) +q(A.fV,A.yk) +q(A.b0h,A.b0g) +q(A.ahA,A.b0h) +q(A.bp7,A.bp6) +q(A.a38,A.aP2) +p(A.a38,[A.IW,A.aSb,A.KP]) +q(A.aeH,A.LW) +q(A.aim,A.ail) +q(A.F9,A.aim) +q(A.aeI,A.F9) +p(A.F6,[A.atV,A.aeS,A.Te,A.aCn,A.a_Z,A.a0r,A.amV,A.a6g]) +q(A.a5f,A.lJ) +p(A.wc,[A.zk,A.aWv]) +q(A.aRo,A.b_U) +q(A.asr,A.aH1) +q(A.kx,A.A7) +p(A.Gj,[A.XX,A.XW,A.agq,A.agr]) +q(A.aPQ,A.b_K) +q(A.agt,A.ags) +q(A.nc,A.agt) +p(A.aVA,[A.aS1,A.czK]) +p(A.aE5,[A.a1v,A.aoe]) +q(A.XY,A.a1v) +p(A.ov,[A.OX,A.n5,A.Jh,A.Io,A.QB]) +p(A.OX,[A.c87,A.c88]) +q(A.aDb,A.ahR) +q(A.aA4,A.AN) +q(A.a8a,A.LD) +q(A.agx,A.b0_) +q(A.b0o,A.b0n) +q(A.Yk,A.b0o) +q(A.Tb,A.aSN) +q(A.YW,A.jv) +q(A.b0A,A.alo) +q(A.Gs,A.b0A) +p(A.mg,[A.Gl,A.Gf,A.oT]) +q(A.b0d,A.b0c) +q(A.Gr,A.b0d) +q(A.af_,A.al_) +q(A.aj2,A.alA) +q(A.Es,A.agA) +q(A.aso,A.bxv) +q(A.aVB,A.b0C) +p(A.qY,[A.ahX,A.a8v]) +p(A.ahX,[A.a8u,A.LI]) +q(A.Yq,A.Z5) +q(A.any,A.tf) +q(A.aVG,A.any) +q(A.aDE,A.aVG) +p(A.dq,[A.aDN,A.ad7]) +q(A.Yr,A.ca) +p(A.Fl,[A.pu,A.a9P]) +q(A.aiw,A.b0K) +q(A.aig,A.qi) +q(A.ow,A.aig) +p(A.ow,[A.UJ,A.no,A.u9,A.wG,A.abK]) +q(A.LU,A.aie) +p(A.aoe,[A.E0,A.a3N]) +q(A.aRZ,A.aEe) +q(A.SU,A.aRZ) +p(A.SU,[A.aij,A.ais]) +p(A.mh,[A.xx,A.ur]) +q(A.xy,A.mB) +q(A.LY,A.aWc) +p(A.agw,[A.aW8,A.aMx,A.B2,A.v5,A.aee]) +q(A.alv,A.b0J) +q(A.aWf,A.alv) +q(A.aR8,A.JM) +q(A.ax9,A.aR8) +q(A.aWF,A.aWE) +q(A.ce,A.aWF) +q(A.G2,A.b_m) +q(A.aWx,A.aWw) +q(A.V2,A.aWx) +q(A.a9y,A.aWz) +q(A.b0M,A.b0L) +q(A.aWH,A.b0M) +q(A.ahP,A.alm) +q(A.Am,A.aEX) +p(A.Am,[A.Ml,A.a9Q,A.aWQ]) +p(A.Bi,[A.aX0,A.aX_,A.aWR,A.aWS]) +q(A.b0w,A.aDg) +q(A.aVi,A.b0w) +q(A.b0v,A.a8l) +q(A.aVh,A.b0v) +q(A.b0u,A.aD8) +q(A.aVc,A.b0u) +q(A.aVb,A.b0t) +q(A.YR,A.b0X) +q(A.aG3,A.aaM) +p(A.asL,[A.Id,A.If,A.Ie,A.mW,A.Ab]) +p(A.mW,[A.vW,A.vY,A.Dh,A.Df,A.Dg,A.pb,A.yH,A.yI,A.IR,A.IS,A.vX]) +q(A.aix,A.alx) +q(A.aiv,A.alw) +q(A.aZS,A.Az) +p(A.azc,[A.aDX,A.aDJ]) +q(A.OO,A.Sm) +q(A.We,A.ajW) +q(A.b1l,A.b1k) +q(A.aZG,A.b1l) +q(A.ahN,A.b0p) +q(A.aNk,A.b7M) +q(A.bbT,A.aNk) +p(A.yK,[A.Qx,A.Dk]) +q(A.bm8,A.bi_) +q(A.avD,A.a41) +q(A.biC,A.biB) +p(A.auP,[A.aq5,A.aq6,A.aq7,A.aq8,A.aq9,A.aqa,A.aqb,A.aqc,A.aqd,A.aqe,A.aqf,A.aqg,A.aqh,A.a1e,A.aqj,A.a1f,A.a1g,A.aqM,A.aqN,A.aqO,A.aqP,A.aqQ,A.a1h,A.aqS,A.aqT,A.aqU,A.aqV,A.aqW,A.aqX,A.aqY,A.aqZ,A.ar_,A.ar0,A.ar1,A.ar2,A.ar3,A.ar4,A.ar5,A.ar6,A.ar7,A.ar8,A.ar9,A.ara,A.arb,A.arc,A.ard,A.are,A.arf,A.arg,A.arh,A.ari,A.arj,A.ark,A.arl,A.arm,A.arn,A.aro,A.a1i,A.arq,A.arr,A.ars,A.art,A.aru,A.arv,A.a1j,A.ary,A.arz,A.arA,A.arB,A.arC,A.arD,A.arE,A.arF,A.arG,A.arH,A.arI,A.a1k,A.arM]) +q(A.aqi,A.a1e) +p(A.a1f,[A.aqk,A.aql,A.aqm,A.aqn,A.aqo,A.aqp,A.aqq,A.aqr]) +p(A.a1g,[A.aqs,A.aqt,A.aqu,A.aqv,A.aqw,A.aqx,A.aqy,A.aqz,A.aqA,A.aqB,A.aqC,A.aqD,A.aqE,A.aqF,A.aqG,A.aqH,A.aqI,A.aqJ,A.aqK,A.aqL]) +q(A.aqR,A.a1h) +q(A.arp,A.a1i) +p(A.a1j,[A.arw,A.arx]) +p(A.a1k,[A.arJ,A.a1l]) +p(A.a1l,[A.arK,A.arL]) +p(A.auQ,[A.axn,A.axo,A.axp,A.axq,A.axr,A.axs,A.axt,A.axu,A.axv,A.axw,A.axx,A.axy,A.axz,A.a5r,A.axB,A.a5s,A.a5t,A.ay3,A.ay4,A.ay5,A.ay6,A.ay7,A.a5u,A.ay9,A.aya,A.ayb,A.ayc,A.ayd,A.aye,A.ayf,A.ayg,A.ayh,A.ayi,A.ayj,A.ayk,A.ayl,A.aym,A.ayn,A.ayo,A.ayp,A.ayq,A.ayr,A.ays,A.ayt,A.ayu,A.ayv,A.ayw,A.ayx,A.ayy,A.ayz,A.ayA,A.ayB,A.ayC,A.ayD,A.ayE,A.ayF,A.ayG,A.ayH,A.a5v,A.ayJ,A.ayK,A.ayL,A.ayM,A.ayN,A.ayO,A.a5w,A.ayR,A.ayS,A.ayT,A.ayU,A.ayV,A.ayW,A.ayX,A.ayY,A.ayZ,A.az_,A.az0,A.a5x,A.az4]) +q(A.axA,A.a5r) +p(A.a5s,[A.axC,A.axD,A.axE,A.axF,A.axG,A.axH,A.axI,A.axJ]) +p(A.a5t,[A.axK,A.axL,A.axM,A.axN,A.axO,A.axP,A.axQ,A.axR,A.axS,A.axT,A.axU,A.axV,A.axW,A.axX,A.axY,A.axZ,A.ay_,A.ay0,A.ay1,A.ay2]) +q(A.ay8,A.a5u) +q(A.ayI,A.a5v) +p(A.a5w,[A.ayP,A.ayQ]) +p(A.a5x,[A.az1,A.a5y]) +p(A.a5y,[A.az2,A.az3]) +p(A.auR,[A.aHU,A.aHV,A.aHW,A.aHX,A.aHY,A.aHZ,A.aI_,A.aI0,A.aI1,A.aI2,A.aI3,A.aI4,A.aI5,A.ac6,A.aI7,A.ac7,A.ac8,A.aIA,A.aIB,A.aIC,A.aID,A.aIE,A.ac9,A.aIG,A.aIH,A.aII,A.aIJ,A.aIK,A.aIL,A.aIM,A.aIN,A.aIO,A.aIP,A.aIQ,A.aIR,A.aIS,A.aIT,A.aIU,A.aIV,A.aIW,A.aIX,A.aIY,A.aIZ,A.aJ_,A.aJ0,A.aJ1,A.aJ2,A.aJ3,A.aJ4,A.aJ5,A.aJ6,A.aJ7,A.aJ8,A.aJ9,A.aJa,A.aJb,A.aJc,A.aJd,A.aca,A.aJf,A.aJg,A.aJh,A.aJi,A.aJj,A.aJk,A.acb,A.aJn,A.aJo,A.aJp,A.aJq,A.aJr,A.aJs,A.aJt,A.aJu,A.aJv,A.aJw,A.aJx,A.acc,A.aJB]) +q(A.aI6,A.ac6) +p(A.ac7,[A.aI8,A.aI9,A.aIa,A.aIb,A.aIc,A.aId,A.aIe,A.aIf]) +p(A.ac8,[A.aIg,A.aIh,A.aIi,A.aIj,A.aIk,A.aIl,A.aIm,A.aIn,A.aIo,A.aIp,A.aIq,A.aIr,A.aIs,A.aIt,A.aIu,A.aIv,A.aIw,A.aIx,A.aIy,A.aIz]) +q(A.aIF,A.ac9) +q(A.aJe,A.aca) +p(A.acb,[A.aJl,A.aJm]) +p(A.acc,[A.aJy,A.acd]) +p(A.acd,[A.aJz,A.aJA]) +p(A.a7b,[A.aBv,A.zL,A.wx]) +p(A.apL,[A.a10,A.a5Q,A.NX,A.a3A,A.J6,A.a3D,A.J7,A.T3,A.a2u,A.a2Z,A.IO,A.IP,A.a2Y,A.JZ,A.K8,A.a2p,A.Iu,A.Km,A.a3M,A.a0A,A.Hj,A.a2L,A.IG,A.a2P,A.a2R,A.IL,A.LS,A.a4U,A.KC,A.LT,A.acm,A.abU,A.I_,A.Ig,A.M8,A.Ll,A.Lk,A.Jw,A.MX,A.Kx,A.AA,A.wZ,A.N_,A.N2,A.N4,A.AB]) +p(A.a1_,[A.aMe,A.aRQ,A.aTM,A.akZ,A.aPy,A.b_W,A.aVW,A.aSD,A.aOe,A.aOH,A.aOI,A.aOJ,A.aT3,A.aQV,A.afJ,A.aO8,A.aO9,A.aRm,A.aPM,A.aM2,A.aKU,A.aOs,A.aOt,A.aOx,A.aOz,A.aOA,A.aVV,A.aQQ,A.aSA,A.aVX,A.b_8,A.aZw,A.aMA,A.aNv,A.aWo,A.aTY,A.agW,A.afb,A.aYx,A.agi,A.alF,A.ajK,A.aYA,A.aYC,A.ajN,A.abo]) +q(A.apK,A.mz) +q(A.np,A.y9) +p(A.np,[A.aas,A.aap,A.aao,A.aar]) +q(A.aav,A.aj8) +q(A.v4,A.qc) +q(A.aXu,A.alB) +q(A.aXv,A.alC) +q(A.bxS,A.aCB) +q(A.a3Z,A.a4_) +q(A.akh,A.aHR) +q(A.Wt,A.akh) +q(A.aZM,A.Wt) +q(A.aki,A.aZM) +q(A.akj,A.aki) +q(A.akk,A.akj) +q(A.aZN,A.akk) +q(A.aZO,A.aZN) +q(A.bOX,A.aZO) +p(A.p0,[A.aLI,A.uE,A.FU,A.uT,A.aaE]) +q(A.ho,A.aLI) +p(A.FU,[A.akg,A.Z2]) +q(A.cdj,A.RK) +p(A.bOA,[A.bXh,A.c_o,A.ps]) +q(A.nX,A.ho) +q(A.Gg,A.a55) +p(A.hd,[A.a0S,A.w6]) +q(A.XR,A.a0Y) +p(A.bB6,[A.b9Z,A.bGE]) +p(A.bb2,[A.aMC,A.adI,A.aMD]) +q(A.b_R,A.b_Q) +q(A.XK,A.b_R) +q(A.b0E,A.b0D) +q(A.ai5,A.b0E) +q(A.Rv,A.n4) +q(A.b0W,A.b0V) +q(A.aji,A.b0W) +p(A.bFu,[A.aoU,A.aBO]) +p(A.q0,[A.aoL,A.aoM,A.aoT,A.atb,A.atc,A.aBM,A.aBN]) +q(A.aPK,A.Ux) +q(A.a3J,A.aPK) +q(A.aPI,A.aDN) +q(A.aPJ,A.aPI) +q(A.a3I,A.aPJ) +q(A.mv,A.aVL) +p(A.mv,[A.l6,A.lK]) +q(A.mb,A.l6) +q(A.h8,A.aVM) +q(A.KB,A.o_) +q(A.bkr,A.aDM) +q(A.os,A.aVK) +p(A.os,[A.w2,A.aEv]) +q(A.Mp,A.aEv) +q(A.Vi,A.aiV) +q(A.aLE,A.b_q) +q(A.BZ,A.av8) +p(A.av9,[A.a_G,A.a_F]) +q(A.H5,A.a_G) +q(A.ZO,A.a_F) +p(A.dN,[A.ao1,A.a1A,A.asd,A.a16,A.a58,A.a6v,A.a0a,A.a2t,A.abw,A.abx,A.a0t,A.a0x,A.a0v,A.a0w,A.a0E,A.a0B,A.a0C,A.a0z,A.a9k,A.a9j,A.a14,A.a2O,A.a2Q,A.a2M,A.abE,A.a_K,A.a_Q,A.a_V,A.a_M,A.a_N,A.a_R,A.a6u,A.a6q,A.a6o,A.a8R,A.aco,A.acp,A.acq,A.acu,A.acs,A.a7l,A.abS,A.ab6,A.a9J]) +q(A.Qj,A.am) +q(A.aa9,A.aa8) +q(A.b6f,A.b6e) +q(A.ao2,A.b6g) +p(A.Ht,[A.Pd,A.awK]) +q(A.blo,A.bNE) +q(A.af6,A.af5) +q(A.af7,A.af6) +q(A.Rs,A.af7) +p(A.aQv,[A.aQC,A.aZu]) +p(A.iR,[A.aNG,A.aNE,A.a20,A.wQ,A.aOg,A.a0T]) +q(A.aNH,A.aNG) +q(A.aNI,A.aNH) +q(A.a1Z,A.aNI) +q(A.aNF,A.aNE) +q(A.vI,A.aNF) +q(A.aOh,A.aOg) +q(A.dk,A.aOh) +p(A.K2,[A.eV,A.amM]) +q(A.atS,A.aP0) +q(A.bVb,A.bNz) +p(A.hK,[A.tZ,A.ao_,A.a_E,A.aw_,A.amS,A.RH,A.aGa,A.a4i,A.RJ,A.a4d,A.a4e,A.Jx,A.a4g,A.RI,A.a4h,A.aw0,A.avZ,A.amQ,A.a4f,A.amR,A.amO,A.amP]) +q(A.ath,A.adH) +p(A.qO,[A.Ar,A.t0,A.a1Y]) +p(A.Ar,[A.Fn,A.d7]) +p(A.t0,[A.be,A.cH,A.Mn,A.PR]) +q(A.Ph,A.anQ) +p(A.aad,[A.Pm,A.HQ,A.Mt]) +q(A.bBX,A.anY) +p(A.b5Y,[A.Uo,A.Mr]) +q(A.aFp,A.Mr) +q(A.a0g,A.e7) +p(A.bmH,[A.bmI,A.bsz]) +q(A.avT,A.bmG) +p(A.xf,[A.X9,A.Xb,A.Xa]) +q(A.pg,A.vn) +q(A.abJ,A.pg) +p(A.abJ,[A.aC0,A.as0,A.avo]) +p(A.re,[A.XA,A.azy,A.JK]) +q(A.bno,A.b52) +q(A.bNQ,A.bno) +p(A.bNQ,[A.aC1,A.as1,A.avp]) +p(A.bo6,[A.bsA,A.bo7]) +q(A.avv,A.JK) +q(A.z7,A.xX) +q(A.aHe,A.z7) +p(A.aHe,[A.aC2,A.as2,A.avq]) +q(A.a1J,A.bpn) +q(A.a0W,A.bpo) +q(A.bye,A.bpp) +p(A.btd,[A.bsB,A.azL]) +q(A.bQ9,A.b5M) +q(A.aWG,A.Vj) +q(A.a9E,A.aWG) +q(A.aeD,A.akX) +p(A.bw1,[A.bw2,A.bsJ]) +q(A.bnL,A.bIk) +p(A.bnL,[A.bya,A.bO_,A.bPh]) +q(A.bsK,A.bwX) +q(A.bOJ,A.bx1) +q(A.aDA,A.Q2) +p(A.aDA,[A.f8,A.dj]) +p(A.bz,[A.c2,A.jf,A.K1,A.M6,A.M7,A.a9n,A.a9o,A.a9p,A.IC,A.aA6,A.rd,A.Mh,A.aBS,A.aDq,A.WH]) +p(A.jf,[A.tS,A.a5i,A.abr,A.qs,A.a9M,A.a8p]) +p(A.kb,[A.a9C,A.HT,A.aAb]) +q(A.HJ,A.K1) +p(A.a8p,[A.a4W,A.a7g]) +q(A.pj,A.a4W) +q(A.aUV,A.aUT) +q(A.ahv,A.aUV) +q(A.a82,A.ahv) +q(A.a8d,A.LB) +q(A.aDP,A.au9) +p(A.anO,[A.aFn,A.GX,A.C9,A.Cb,A.Cx,A.Dx,A.Dy,A.Em,A.TS]) +q(A.qg,A.a0l) +p(A.anN,[A.El,A.Et,A.TY]) +q(A.Qg,A.bcm) +p(A.a_A,[A.Ca,A.Dw]) +p(A.aFn,[A.Cd,A.F3]) +p(A.anT,[A.P1,A.a4H,A.Sv,A.axe,A.a5c,A.VU,A.Ws]) +p(A.a4H,[A.wF,A.DR,A.F1]) +q(A.Cc,A.wF) +p(A.axe,[A.Sw,A.Sx,A.TT,A.TU,A.TV,A.TW,A.Uy,A.Uz,A.UA,A.UD]) +p(A.a5c,[A.UB,A.UC,A.F2]) +p(A.bf7,[A.Cy,A.Cz,A.CA,A.CB,A.CC,A.CD,A.CE,A.CF,A.CG,A.CH,A.CI,A.CJ,A.CK,A.CL,A.CM,A.CN,A.CO,A.CP,A.CQ,A.CR,A.CS,A.CT,A.CU,A.CV,A.CW,A.CX,A.CY,A.CZ,A.D_,A.D0,A.D1,A.D2,A.D3,A.D4,A.D5,A.D6,A.D7,A.D8,A.D9,A.Da,A.Db]) +q(A.a2i,A.bf8) +q(A.q6,A.yD) +q(A.a2g,A.at8) +p(A.b5S,[A.a_e,A.HR,A.a2h,A.Jd,A.KJ,A.a91]) +p(A.anV,[A.ya,A.yb,A.yX,A.EJ]) +p(A.anX,[A.Rw,A.Td]) +q(A.C3,A.aE9) +q(A.bxF,A.bxq) +p(A.bhB,[A.aFk,A.tO]) +p(A.b6_,[A.HG,A.HH,A.F4,A.a7u,A.a8J]) +q(A.Hx,A.F4) +q(A.Is,A.b5Q) +p(A.Af,[A.RL,A.a0Z]) +q(A.a52,A.RL) +q(A.a0h,A.a52) +q(A.afk,A.a9E) +q(A.Z0,A.aNr) +q(A.ak9,A.AU) +q(A.a7p,A.aU_) +q(A.aVP,A.als) +q(A.aVu,A.pu) +q(A.aDp,A.aVu) +q(A.b0B,A.alr) +q(A.ahW,A.b0B) +q(A.aeE,A.vZ) +q(A.yJ,A.aeE) +q(A.agR,A.is) +q(A.hq,A.agR) +p(A.rT,[A.Bd,A.Yc,A.YD]) +q(A.agT,A.agS) +q(A.Li,A.agT) +q(A.agU,A.alf) +q(A.akB,A.agU) +q(A.WU,A.akB) +q(A.on,A.akb) +p(A.hq,[A.afv,A.YK,A.Oa]) +q(A.RT,A.afv) +q(A.a_o,A.RT) +p(A.dL,[A.a7h,A.Vh,A.Ao]) +q(A.acK,A.a7h) +q(A.a_p,A.acK) +p(A.hu,[A.oF,A.y3,A.zy,A.A6,A.yU,A.m3,A.vt,A.C7,A.u3]) +q(A.aiT,A.YK) +q(A.uy,A.aiT) +q(A.aa5,A.yJ) +p(A.Oa,[A.a_q,A.aiU]) +q(A.acL,A.Ao) +q(A.a_r,A.acL) +q(A.aa6,A.aiU) +p(A.Mt,[A.C1,A.a7n]) +p(A.a3y,[A.WZ,A.YJ,A.YI]) +q(A.a6K,A.nP) +q(A.aRn,A.b_T) +p(A.bFw,[A.bFx,A.bsL]) +p(A.bFI,[A.bsP,A.bFG]) +q(A.pt,A.k) +q(A.aed,A.akU) +q(A.an0,A.acB) +q(A.b_H,A.akZ) +q(A.aPA,A.b_H) +p(A.a10,[A.aol,A.aDY,A.aGp,A.auA,A.auz,A.aoI,A.aoF,A.aoG,A.aoH,A.azC,A.azE,A.auD,A.av5,A.aFu,A.aov,A.ana,A.asf,A.aGz,A.Tj,A.aCj,A.anr,A.aGx,A.aw7]) +q(A.aga,A.b_W) +p(A.P4,[A.pc,A.aHL]) +p(A.VL,[A.aDZ,A.aSd]) +q(A.bjq,A.aPs) +q(A.akz,A.WN) +q(A.c0C,A.bjq) +q(A.ku,A.c0C) +q(A.aA7,A.aSd) +q(A.aXq,A.w1) +q(A.aXr,A.aXq) +q(A.Mu,A.aXr) +q(A.aJZ,A.ani) +p(A.zp,[A.aeU,A.aoN]) +q(A.bG9,A.bm9) +q(A.aic,A.b0F) +q(A.aKn,A.akA) +p(A.a93,[A.b4g,A.b3j,A.bPY]) +q(A.aKk,A.b_o) +q(A.aKj,A.b_n) +q(A.aSy,A.b01) +q(A.aSx,A.b00) +q(A.aSB,A.ala) +q(A.b_9,A.alG) +q(A.aC7,A.tK) +q(A.a6k,A.aSl) +p(A.jz,[A.dY,A.mF]) +p(A.dY,[A.pD,A.lQ,A.mE,A.ns,A.nt]) +q(A.cfh,A.b0N) +q(A.rZ,A.aWI) +q(A.ajE,A.alE) +q(A.ajJ,A.alF) +q(A.aYv,A.b1_) +q(A.aYw,A.b10) +q(A.a8x,A.bOX) +q(A.Eg,A.aS_) +q(A.aV1,A.aV0) +q(A.aCX,A.aV1) +q(A.a8j,A.a8g) +q(A.aWN,A.alz) +q(A.lw,A.aF8) +p(A.Ve,[A.i8,A.aF9]) +q(A.Vd,A.aFa) +q(A.An,A.aF9) +q(A.bGP,A.aag) +q(A.bfb,A.bGP) +p(A.Vd,[A.aah,A.aci]) +q(A.bc_,A.bct) +q(A.bca,A.bt9) +q(A.b0l,A.b0j) +q(A.ahE,A.b0l) +q(A.Ec,A.ag8) +q(A.Yt,A.a78) +q(A.b0m,A.b0k) +q(A.ahF,A.b0m) +q(A.SN,A.ag9) +q(A.aOO,A.beb) +p(A.brZ,[A.aRE,A.c6J]) +q(A.aRx,A.a5M) +q(A.aud,A.zl) +q(A.a46,A.brX) +p(A.jn,[A.jO,A.qm]) +q(A.asY,A.Cv) +q(A.azn,A.aud) +q(A.aHS,A.Wv) +q(A.b0y,A.b0x) +q(A.ahT,A.b0y) +p(A.bNY,[A.bsQ,A.bNZ]) +q(A.brt,A.bzm) +q(A.biD,A.bOc) +p(A.EC,[A.lB,A.qo,A.kO,A.a0M]) +p(A.bn_,[A.bxT,A.bkn,A.bo1,A.bOI,A.b6o]) +p(A.tX,[A.DZ,A.ER]) +p(A.fL,[A.aOn,A.aH_,A.aDx,A.aDw,A.Um,A.aDt,A.aDu,A.a8r,A.aDv]) +p(A.aH_,[A.m1,A.a0I,A.a5k,A.a6U]) +p(A.m1,[A.Tl,A.Tr,A.Qp,A.aG9,A.avS]) +p(A.Tl,[A.aHH,A.aGb,A.aDV]) +p(A.aHJ,[A.bC_,A.aMb]) +q(A.baa,A.aMb) +q(A.aZB,A.b1j) +p(A.bOi,[A.c9A,A.bOj]) +p(A.bOC,[A.bOD,A.bsT]) +q(A.aev,A.B1) +q(A.aJR,A.FY) +q(A.b_2,A.aJW) +q(A.aJY,A.b_2) +q(A.aZZ,A.b1n) +q(A.b_0,A.b__) +q(A.b_1,A.b_0) +q(A.hk,A.b_1) +p(A.hk,[A.tc,A.uW,A.uX,A.uY,A.aZW,A.uZ,A.b_3,A.FZ]) +q(A.nw,A.aZW) +q(A.mH,A.b_3) +q(A.aZY,A.aZX) +q(A.lh,A.aZY) +p(A.aZr,[A.mw,A.UT,A.SB]) +p(A.x9,[A.b_5,A.b_4,A.nx]) +q(A.b_6,A.b_5) +q(A.acj,A.b_6) +q(A.aK0,A.b_4) +s(A.aNn,A.apD) +s(A.aNJ,A.bD5) +s(A.aQG,A.c0A) +s(A.aQH,A.c0B) +s(A.aQI,A.c0z) +r(A.aSZ,A.aeg) +r(A.aT_,A.aeg) +s(A.b03,A.cn2) +s(A.Wh,A.aHb) +s(A.akH,A.a2) +s(A.agk,A.a2) +s(A.agl,A.a37) +s(A.agm,A.a2) +s(A.agn,A.a37) +s(A.td,A.acI) +s(A.Gw,A.aXC) +s(A.Wi,A.Gy) +s(A.aiO,A.c3) +s(A.aiP,A.B) +s(A.aiQ,A.cZ) +s(A.ak0,A.Gy) +s(A.b_N,A.aQx) +s(A.b_O,A.aQx) +s(A.b1i,A.uz) +s(A.aME,A.bb3) +s(A.aNL,A.a2) +s(A.aNM,A.cE) +s(A.aNN,A.a2) +s(A.aNO,A.cE) +s(A.aOQ,A.a2) +s(A.aOR,A.cE) +s(A.aPW,A.a2) +s(A.aPX,A.cE) +s(A.aRM,A.c3) +s(A.aRN,A.c3) +s(A.aRO,A.a2) +s(A.aRP,A.cE) +s(A.aSf,A.a2) +s(A.aSg,A.cE) +s(A.aTc,A.a2) +s(A.aTd,A.cE) +s(A.aVO,A.c3) +s(A.aiL,A.a2) +s(A.aiM,A.cE) +s(A.aX5,A.a2) +s(A.aX6,A.cE) +s(A.aXf,A.c3) +s(A.aYj,A.a2) +s(A.aYk,A.cE) +s(A.ajz,A.a2) +s(A.ajA,A.cE) +s(A.aYK,A.a2) +s(A.aYL,A.cE) +s(A.b_s,A.a2) +s(A.b_t,A.cE) +s(A.b_I,A.a2) +s(A.b_J,A.cE) +s(A.b_Y,A.a2) +s(A.b_Z,A.cE) +s(A.b0P,A.a2) +s(A.b0Q,A.cE) +s(A.b0R,A.a2) +s(A.b0S,A.cE) +r(A.XF,A.a2) +s(A.aQL,A.a2) +s(A.aQM,A.cE) +s(A.aSu,A.a2) +s(A.aSv,A.cE) +s(A.aXj,A.a2) +s(A.aXk,A.cE) +s(A.aYR,A.a2) +s(A.aYS,A.cE) +s(A.aKV,A.c3) +r(A.adj,A.e5) +r(A.acC,A.hM) +r(A.akO,A.hM) +r(A.al5,A.hM) +r(A.al6,A.hM) +s(A.agY,A.a2) +s(A.ak1,A.aHd) +s(A.aNy,A.bd3) +s(A.aLm,A.aAu) +s(A.aVv,A.aAu) +s(A.aRp,A.bdw) +s(A.aL7,A.ch) +s(A.aLa,A.ch) +s(A.aLb,A.ch) +s(A.aLd,A.ch) +s(A.aLe,A.ch) +s(A.aLf,A.ch) +s(A.aLg,A.ch) +s(A.aLh,A.ch) +s(A.aLi,A.ch) +s(A.aLc,A.ch) +s(A.aL1,A.ch) +s(A.aL5,A.ch) +s(A.aOL,A.ch) +s(A.aP6,A.ch) +s(A.aP8,A.ch) +s(A.aP9,A.ch) +s(A.aPa,A.ch) +s(A.aPT,A.ch) +s(A.aPS,A.ch) +s(A.aPV,A.ch) +s(A.aU4,A.ch) +s(A.aWA,A.ch) +s(A.aWB,A.ch) +s(A.aYM,A.ch) +s(A.aZy,A.ch) +s(A.aZx,A.ch) +s(A.aZA,A.ch) +s(A.aL2,A.ch) +r(A.aL3,A.ap) +s(A.aL4,A.bD) +r(A.acP,A.Qm) +s(A.aLl,A.ch) +s(A.aP4,A.ch) +s(A.aP5,A.ch) +s(A.aPb,A.ch) +s(A.aP7,A.ch) +s(A.aT1,A.ch) +s(A.aT4,A.ch) +s(A.aT5,A.ch) +r(A.aV5,A.ap) +s(A.aV6,A.bD) +s(A.aR3,A.ch) +s(A.aXa,A.a3P) +s(A.aPc,A.yT) +s(A.aPz,A.he) +s(A.aSm,A.ka) +s(A.aNS,A.aPO) +s(A.aNV,A.aPO) +r(A.ad0,A.yZ) +s(A.ad1,A.a3P) +s(A.aM6,A.bh) +s(A.aM7,A.bh) +s(A.aKI,A.a_7) +s(A.aKJ,A.Hc) +s(A.aKK,A.BT) +s(A.aKL,A.bh) +s(A.adw,A.a_8) +s(A.adx,A.Hc) +s(A.ady,A.BT) +s(A.aN0,A.BU) +s(A.aTU,A.a_8) +s(A.aTV,A.Hc) +s(A.aTW,A.BT) +s(A.aVD,A.a_8) +s(A.aVE,A.BT) +s(A.aYN,A.a_7) +s(A.aYO,A.Hc) +s(A.aYP,A.BT) +s(A.akD,A.BU) +r(A.akL,A.hM) +r(A.akM,A.hM) +r(A.akN,A.e5) +s(A.b_u,A.abq) +s(A.aMN,A.bh) +s(A.b_v,A.uJ) +r(A.b08,A.ap) +s(A.b09,A.bD) +s(A.aMP,A.bh) +r(A.akP,A.hM) +r(A.ald,A.a1p) +r(A.b_w,A.e5) +r(A.all,A.ap) +s(A.b0s,A.bD) +r(A.alt,A.e5) +r(A.Z6,A.e5) +r(A.Z7,A.e5) +s(A.aMU,A.uJ) +r(A.akQ,A.e5) +r(A.alj,A.ap) +s(A.b0a,A.bD) +s(A.aMX,A.bh) +s(A.aMZ,A.bh) +s(A.aPj,A.tL) +s(A.aPi,A.bh) +s(A.aNw,A.bh) +s(A.aTe,A.jZ) +s(A.aTf,A.aMi) +s(A.aTg,A.jZ) +s(A.aTh,A.aMj) +s(A.aTi,A.jZ) +s(A.aTj,A.aMk) +s(A.aTk,A.jZ) +s(A.aTl,A.aMl) +s(A.aTm,A.bh) +s(A.aTn,A.jZ) +s(A.aTo,A.aMm) +s(A.aTp,A.jZ) +s(A.aTq,A.aMn) +s(A.aTr,A.jZ) +s(A.aTs,A.aMo) +s(A.aTt,A.jZ) +s(A.aTu,A.aMp) +s(A.aTv,A.jZ) +s(A.aTw,A.aMq) +s(A.aTx,A.jZ) +s(A.aTy,A.aMr) +s(A.aTz,A.jZ) +s(A.aTA,A.aMs) +s(A.aTB,A.jZ) +s(A.aTC,A.aMt) +s(A.aTD,A.jZ) +s(A.aTE,A.aMu) +s(A.aTF,A.jZ) +s(A.aTG,A.aMv) +s(A.aTH,A.jZ) +s(A.aTI,A.aMw) +s(A.b11,A.aMi) +s(A.b12,A.aMj) +s(A.b13,A.aMk) +s(A.b14,A.aMl) +s(A.b15,A.bh) +s(A.b16,A.jZ) +s(A.b17,A.aMm) +s(A.b18,A.aMn) +s(A.b19,A.aMo) +s(A.b1a,A.aMp) +s(A.b1b,A.aMq) +s(A.b1c,A.aMr) +s(A.b1d,A.aMs) +s(A.b1e,A.aMt) +s(A.b1f,A.aMu) +s(A.b1g,A.aMv) +s(A.b1h,A.aMw) +s(A.aPD,A.tL) +r(A.acV,A.ajn) +s(A.aXQ,A.bh) +s(A.aXR,A.bh) +s(A.aXS,A.bh) +s(A.aXT,A.bh) +s(A.aXU,A.bh) +s(A.aKg,A.bh) +s(A.b_P,A.aW1) +s(A.b_V,A.aW1) +r(A.b0O,A.e5) +s(A.aKO,A.bh) +s(A.aL9,A.bh) +s(A.aRe,A.bh) +s(A.aLw,A.bh) +s(A.aLx,A.bh) +s(A.aLz,A.bh) +s(A.b05,A.a5A) +s(A.aLK,A.bh) +s(A.aLM,A.bh) +r(A.akG,A.e5) +s(A.aLN,A.bh) +r(A.akS,A.hM) +s(A.aLR,A.bh) +r(A.akI,A.e5) +r(A.akJ,A.W4) +s(A.aLW,A.bh) +s(A.b04,A.a5A) +r(A.alh,A.e5) +r(A.ali,A.t_) +s(A.aM0,A.bh) +s(A.aM8,A.bh) +s(A.aN3,A.bh) +r(A.akR,A.pr) +s(A.aN9,A.bh) +s(A.b_x,A.uJ) +s(A.aNx,A.bh) +s(A.aND,A.bh) +s(A.aNY,A.bh) +r(A.b0e,A.ap) +s(A.b0f,A.bD) +s(A.aO_,A.bh) +s(A.b_z,A.bh) +s(A.b_A,A.bh) +s(A.b_B,A.bh) +s(A.b_C,A.bh) +s(A.aOm,A.bh) +s(A.aOD,A.bh) +s(A.aOU,A.bh) +s(A.b_D,A.atM) +s(A.b_E,A.bhy) +s(A.b_F,A.atM) +s(A.b_G,A.bhz) +s(A.aPg,A.bh) +s(A.b_L,A.bh) +s(A.aQ3,A.bh) +r(A.al1,A.lq) +s(A.aQm,A.bh) +r(A.akF,A.e5) +r(A.al0,A.hM) +r(A.al2,A.e5) +r(A.b0b,A.t_) +r(A.b0i,A.t_) +s(A.aR2,A.bh) +r(A.b_S,A.e5) +s(A.aRt,A.bh) +s(A.aRK,A.bh) +s(A.aRL,A.bh) +r(A.alu,A.hM) +s(A.aS5,A.bh) +s(A.aS8,A.bh) +r(A.al9,A.e5) +s(A.aS9,A.bh) +s(A.aSH,A.bh) +s(A.afU,A.Ke) +s(A.ale,A.Ke) +s(A.aST,A.bh) +r(A.alH,A.Z4) +r(A.alI,A.Z4) +s(A.aTK,A.bh) +r(A.akK,A.hM) +r(A.al4,A.hM) +s(A.aTS,A.bh) +s(A.aU1,A.bh) +r(A.alg,A.e5) +r(A.alk,A.wC) +r(A.alp,A.wC) +r(A.ahe,A.e5) +r(A.ai8,A.e5) +r(A.aia,A.e5) +r(A.aib,A.pr) +r(A.akY,A.e5) +s(A.aW3,A.bh) +s(A.aW4,A.bh) +s(A.aW5,A.bh) +r(A.b0q,A.ap) +s(A.b0r,A.bD) +s(A.aW7,A.bh) +r(A.aln,A.wC) +r(A.alq,A.wC) +r(A.aly,A.e5) +s(A.aVI,A.b5V) +s(A.aVJ,A.b5Z) +s(A.aWK,A.bh) +s(A.aX1,A.bh) +r(A.al7,A.e5) +r(A.al8,A.W4) +s(A.b0T,A.aXw) +s(A.b0U,A.aXw) +s(A.aXA,A.bh) +s(A.aXG,A.bh) +r(A.akT,A.hM) +s(A.b_r,A.BU) +s(A.b_y,A.BU) +s(A.b0Y,A.bh) +s(A.aY_,A.bh) +r(A.alD,A.pr) +s(A.aRl,A.uJ) +s(A.aY8,A.bh) +r(A.b0z,A.ap) +r(A.b0Z,A.e5) +s(A.aYi,A.bh) +s(A.aYm,A.bh) +s(A.aZI,A.bh) +s(A.aYo,A.bh) +s(A.aYG,A.bh) +r(A.ajQ,A.hM) +s(A.aYJ,A.bh) +s(A.aZ8,A.bh) +s(A.aLt,A.bh) +s(A.aNi,A.bh) +s(A.aQ6,A.bh) +s(A.aQ8,A.bh) +s(A.aQ7,A.bh) +s(A.aXm,A.bh) +s(A.aYh,A.bh) +r(A.adB,A.f6) +r(A.aho,A.ap) +s(A.aUO,A.bD) +r(A.ahr,A.wC) +r(A.ahs,A.ap) +s(A.aUQ,A.aCT) +r(A.aUS,A.ap) +s(A.aUU,A.bD) +r(A.ahu,A.Qm) +s(A.aQF,A.tL) +r(A.aUX,A.ap) +s(A.aUY,A.bD) +r(A.ahD,A.ap) +s(A.b_X,A.bh) +s(A.aT6,A.tL) +s(A.aV2,A.tL) +r(A.ahI,A.ap) +s(A.aV3,A.aCT) +r(A.aV4,A.wC) +r(A.aju,A.f6) +s(A.b0G,A.l9) +s(A.b0H,A.bh) +s(A.b0I,A.ka) +r(A.aTa,A.c9C) +r(A.aUI,A.a7T) +r(A.ahK,A.aZ) +r(A.ahL,A.l4) +r(A.aV7,A.aZ) +s(A.aWg,A.bh) +r(A.ahj,A.Qm) +r(A.ahO,A.aZ) +r(A.aVj,A.aZ) +s(A.aVk,A.Ug) +s(A.aWU,A.bh) +r(A.aWV,A.f6) +r(A.aWZ,A.f6) +r(A.ahQ,A.ap) +s(A.aVe,A.Ug) +s(A.aVf,A.bBz) +r(A.aWW,A.f6) +s(A.aWX,A.u2) +r(A.aVa,A.aZ) +r(A.ahS,A.aZ) +s(A.aVg,A.Ug) +r(A.aVl,A.ap) +s(A.aVm,A.bD) +r(A.aVq,A.aZ) +r(A.pH,A.ap) +r(A.aVs,A.ap) +s(A.aVt,A.bD) +s(A.aWi,A.bh) +s(A.aWl,A.tL) +s(A.aWm,A.bh) +s(A.aQB,A.bh) +s(A.aQD,A.bh) +s(A.aRW,A.bh) +s(A.aU7,A.bh) +s(A.aU6,A.bh) +s(A.aY3,A.bh) +s(A.b02,A.aaX) +s(A.aKh,A.bh) +s(A.aKf,A.bh) +s(A.aQr,A.bh) +r(A.alb,A.Y1) +r(A.alc,A.Y1) +r(A.ahH,A.aDF) +r(A.akC,A.e5) +r(A.b_p,A.hM) +r(A.akE,A.e5) +s(A.b1m,A.he) +s(A.aKZ,A.b5g) +r(A.ahZ,A.aDF) +r(A.akm,A.Rj) +r(A.akn,A.lH) +r(A.ako,A.UV) +r(A.akp,A.a6J) +r(A.akq,A.aEi) +r(A.akr,A.Ul) +r(A.aks,A.ac5) +r(A.akV,A.e5) +r(A.akW,A.lq) +r(A.aem,A.nv) +r(A.aer,A.lq) +s(A.aO5,A.he) +r(A.aes,A.e5) +s(A.aO6,A.aGd) +s(A.aO7,A.bKZ) +s(A.aPl,A.tL) +s(A.aPm,A.ka) +s(A.aPn,A.tL) +s(A.aPo,A.ka) +s(A.aPr,A.bh) +r(A.aUd,A.bdf) +s(A.b06,A.bh) +s(A.b07,A.bh) +r(A.Xr,A.pr) +s(A.aXb,A.bh) +s(A.aQ4,A.bh) +s(A.b_M,A.he) +r(A.XB,A.hM) +r(A.al3,A.e5) +r(A.b0g,A.aZ) +s(A.b0h,A.qD) +s(A.b_U,A.he) +r(A.ags,A.e5) +r(A.agt,A.pr) +s(A.b_K,A.ka) +r(A.ahR,A.aZ) +s(A.b0_,A.a6j) +r(A.b0n,A.ap) +s(A.b0o,A.bD) +r(A.aSN,A.e5) +s(A.b0c,A.O5) +s(A.b0d,A.mg) +r(A.alo,A.ap) +s(A.b0A,A.O5) +r(A.agA,A.nv) +r(A.al_,A.e5) +r(A.alA,A.e5) +r(A.b0C,A.pr) +s(A.aVG,A.he) +r(A.Z5,A.pr) +r(A.NR,A.ax5) +r(A.b0K,A.lq) +s(A.aP2,A.l8) +r(A.aig,A.nv) +r(A.aie,A.nv) +s(A.aW_,A.l8) +r(A.ail,A.e5) +r(A.aim,A.pr) +r(A.Yd,A.e5) +s(A.aRZ,A.ka) +s(A.aWc,A.aGd) +s(A.b0J,A.l9) +r(A.alv,A.aEg) +s(A.aR8,A.bh) +s(A.aWw,A.bh) +s(A.aWx,A.ka) +s(A.aWz,A.ka) +s(A.aWE,A.bh) +s(A.aWF,A.bs_) +s(A.b_m,A.bh) +r(A.alm,A.aZ) +s(A.b0L,A.a6j) +s(A.b0M,A.aHG) +s(A.b0t,A.v9) +s(A.b0u,A.v9) +s(A.b0v,A.v9) +s(A.b0w,A.v9) +r(A.aiI,A.mx) +s(A.b0X,A.bh) +s(A.aM3,A.he) +r(A.alw,A.hM) +r(A.alx,A.hM) +s(A.ajW,A.bNM) +s(A.b1k,A.a6j) +s(A.b1l,A.aHG) +r(A.b0p,A.aZ) +s(A.aNk,A.bmt) +r(A.aj8,A.e5) +r(A.alB,A.e5) +r(A.alC,A.e5) +s(A.aZM,A.b7S) +r(A.aki,A.b94) +r(A.akj,A.bo5) +r(A.akk,A.bIZ) +r(A.aZN,A.bNX) +r(A.aZO,A.bOP) +s(A.aLI,A.buN) +r(A.akh,A.b3x) +r(A.b_Q,A.ap) +s(A.b_R,A.bD) +r(A.b0D,A.ap) +s(A.b0E,A.bD) +r(A.b0V,A.ap) +s(A.b0W,A.bD) +s(A.aPK,A.ka) +s(A.aPI,A.he) +s(A.aPJ,A.ka) +s(A.aVL,A.bh) +s(A.aVM,A.bh) +s(A.aVK,A.bh) +r(A.aiV,A.pr) +r(A.b_q,A.lq) +s(A.af5,A.avj) +s(A.af6,A.a2) +s(A.af7,A.asv) +s(A.aNG,A.agG) +s(A.aNH,A.aSh) +s(A.aNI,A.aOf) +s(A.aNE,A.agG) +s(A.aNF,A.aSh) +s(A.aOg,A.agG) +s(A.aOh,A.aOf) +s(A.aP0,A.a2) +r(A.aWG,A.bG4) +r(A.akX,A.hM) +r(A.aUT,A.ap) +s(A.aUV,A.bD) +r(A.ahv,A.Qm) +s(A.aU_,A.a2) +r(A.als,A.aDU) +s(A.aVu,A.ahV) +r(A.alr,A.e5) +s(A.b0B,A.bBR) +s(A.aeE,A.NG) +s(A.agR,A.mr) +s(A.agS,A.mr) +s(A.agT,A.ZP) +s(A.akB,A.ZP) +s(A.alf,A.mr) +r(A.acK,A.xY) +s(A.afv,A.aAz) +s(A.aiT,A.xR) +r(A.acL,A.xY) +s(A.aiU,A.xR) +r(A.b_T,A.aZ) +r(A.akU,A.hM) +r(A.acB,A.e5) +r(A.akZ,A.e5) +s(A.b_H,A.he) +s(A.b_W,A.he) +s(A.aPs,A.bQf) +r(A.aSd,A.av7) +r(A.aXq,A.t3) +r(A.aXr,A.azT) +s(A.b0F,A.he) +r(A.akA,A.lq) +r(A.b_n,A.lq) +r(A.b_o,A.lq) +r(A.b00,A.lq) +r(A.b01,A.lq) +r(A.ala,A.lq) +r(A.alG,A.lq) +s(A.aSl,A.ka) +s(A.b0N,A.aEC) +s(A.aWI,A.aEC) +r(A.alE,A.hM) +r(A.alF,A.hM) +r(A.b1_,A.lq) +r(A.b10,A.lq) +r(A.aS_,A.f6) +r(A.aV0,A.ap) +s(A.aV1,A.Ug) +r(A.alz,A.hM) +r(A.b0j,A.ap) +s(A.b0l,A.bD) +r(A.ag8,A.yu) +r(A.b0k,A.ap) +s(A.b0m,A.bD) +r(A.ag9,A.yu) +r(A.b0x,A.ap) +s(A.b0y,A.bD) +s(A.aMb,A.aty) +s(A.b1j,A.he) +s(A.b_2,A.bPU) +s(A.b1n,A.aJV) +s(A.b__,A.aJX) +s(A.b_0,A.bPW) +s(A.b_1,A.bPV) +s(A.aZW,A.acg) +s(A.b_3,A.acg) +s(A.aZX,A.acg) +s(A.aZY,A.aJX) +s(A.b_4,A.a2) +s(A.b_5,A.c3) +s(A.b_6,A.aHc)})() +var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{h:"int",U:"double",eO:"num",f:"String",A:"bool",bd:"Null",x:"List",S:"Object",aN:"Map"},mangledNames:{},types:["~()","U(U)","a8<~>()","A()","~(A)","~(aU)","~(F)","v(bU)","c(u)","aN(dk)","~(rc)","~(S?)","~(h)","bd()","~(Ey,j)","~(ro)","ud()","uc()","f()","A(ty,j)","A(f)","v?(bU)","~(mY)","bd(S,dC)","~(vL)","~(@)","~(U)","~(t4)","f(f)","~(cX)","~(H)","U(J)","~(S,dC)","bd(~)","~(bJ)","~(uD)","h(h)","A(S?)","ho(ho)","x()","~(aL)","~(f,@)","A(h)","c(u,h)","c(u,c)","aP(@)","~(f)","Rg()","A(hG)","bd(@)","A(bJ)","wL(bU)","c(u,aG)","c?(u,c)","j(W)","c(u,c?)","~(zP)","x(u,A)","x(u)","~(am)","A(@)","~(~())","A(ow)","~(ei?)","U(J,U)","hd(ho,hd)","A(U)","~(uA,A)","~(l9)","~(EH)","~(EI)","~(ho,ho)","A(zB)","~(S[dC?])","a8()","bd(aL)","~(it,~())","a8(@)","h(S?)","a4(bU)","~(bK)","f(c7)","A(w_)","@(@)","~(v)","bd(bK)","~(E4)","U(U,U)","~(@,@)","~(J0)","h()","a8<~>(A)","c9?(d6?)","h(hG,hG)","~(df)","~(a5a)","A(h?)","~(VV)","~(h,h)","a8()","bd(F)","c(ho,hd)","a8<@>(rF)","V(J,aG)","f(h)","h(@,@)","h(czT)","~(Ss)","~(S,dC?)","~(S?,S?)","tt(x,tt)","~(dL<@>)","~(kX,A)","A(f?)","~(ho)","bz()","~({curve:kQ,descendant:H?,duration:aU,rect:W?})","~(fD)","f(@)","U(V)","~(yC)","a8()","bx(bU)","~(aaK)","A(ki)","bz<@>()","bd(@,@)","A(mc)","pA()","A(kx)","t7(u,c?)","~(aaH)","bd(A)","ry(hG,n9)","A(mv)","a8>()","f(f?)","h(f)","U(bY)","A(S?,S?)","A(jR)","ut(u)","~(dY)","~(zQ)","fM()","fU()","bz<+(f,i7)>()","mn(uA)","c9?(m8?)","aG(aG)","bU<0^>()","c(u,A)","~(f,f)","U(bU)","W()","fp(@)","h(H,H)","S?(S?)","mB()","~(mB)","~(wq)","x()","A(l9)","A(h,h)","c(c)","c(u,S,dC?)","U(x)","eY(u,h)","am(+records,start(x,am))","fU(f)","hX(u,~(~()))","a8<~>(f)","aA(u,h)","A(fd)","f(db)","A(am)","AB(u)","~(cvO,S)","a8<~>(lP)","bd(U)","A(fZ)","c(u,cR,cR,c)","A(IX)","v?()","V()","WC()","WD()","kr(kr)","F()","bd(h)","c(u,cR,cR)","~(aG)","c(u)?(OK?)","~(Aj)","h(fZ,fZ)","bd(qy)","A(pi)","A(c)","am()","k(u)","a8<~>(@)","f(f,f)","~(S)","f(b0)","U()","mh()","~(mh)","yE(@)","~(ng)","d4(u,aG)","bX(u,c?)","uS()","a8<~>(S?)","~(nV)","A(LU)","S()","~(aaJ)","~(aaL)","~(aaI)","~(uS)","~(qy)","c9?(d6?)","c9?(d6?)","c(u,c,pf?)","@(f)","c9?(d6?)","~(ho,c)","kN(dR)","~(x)","~(f?)","~(h,hD)","~(S,f)","A(iR)","A(aN)","bd(S)","c(u,c,h?,A)","aL(h)","c9?(d6?)","~(on<@>)","eY(u)","f(f,eC{isHeader:A})","~(kh)","fm(bU)","a8>()","JQ()","c(U,AC)","~(t3)","c(u,U,AC)","~([cB?])","H3(u,vP)","dv(f)","Dm(u,cu)","AA(u,aW)","c(u,x)","A(A)","A(rk)","BR(u,U)","@()","~(h_)","W()?(J)","h(fd)","dj(dj,dj)","x()","bd(lF,i0?,a8<~>(i0?))","A(i0)","f?(f?)","~(V)","Wy()","eY(f)","v?(v?)","NY(S?)","WA()","v(h)","FD(u)","A(nA)","bd(S?)","f(fU)","hX(u,h)","~(zS)","~(mi)","c9?(fz?)","A(B7)","A(v1)","A(iH)","A(qz)","bz()","c9?(fz?)","v(v)","WB()","c(u,vP)","~(kn)","d8(d8,v)","hX(u,A,~(),c)","A(zx)","0^?(0^?(fz?))","~([aU?])","cC(cC,A,pA)","kZ(h)","A(oa)","h(h,h)","ND(u,cR,c?)","h(k_,k_)","c(c,cR)","l0?(kT,f,l0?)","~(aY)","Nh()","qc()","~(qc)","pm()","~(pm)","tV()","~(tV)","c(u,cR,Rp,u,u)","aP<@>?(aP<@>?,@,aP<@>(@))","BN(@)","x()","yt(@)","BV()","c?()","zk(u)","NF(u,cR,c?)","~(jK,a_z?)","x6?(h)","S(@)","J?()","U(h)","le(cX)","aA(c)","0^?(0^?(d6?))","A(no)","c?(u,h)","h?(c,h)","A(l9,U)","~(f,S?)","S9()","h(f?)","Sa()","Sb()","wP()","~(wP)","Sc()","W(W)","Bh(u)","fm?(bU)","M(h)","a8<~>(EP)","~(TP)","~(cFS)","~(dv,f,h)","d8(d8,f)","~(zv)","0^?(0^?(m8?))","mU(dk)","0^?(c9<0^>?(m8?),bU)","A(dR)","A(v2)","A(mU)","Sd()","ba(u,c)","A(M5)","v?(m8?)","hd?(ho,B)","B()","U(ir)","j(U)","~(ah)","A(cKD)","Mq(u,f4)","h8/(f?)","Se()","pi()","A(aY)","h8(h8)","Sf()","A(oG)","~(FP)","~(vs)","a8<@>()","Sg()","x()","h?(l3)","aU()","aN<@,@>(cEV)","d8(d8,dR)","vp(aN)","S3()","~(Dt)","S4()","Pt(x)","Uy()","~(J9)","xt()","bd(dv)","~(J?)","~([~])","f(jB)","~(uh)","nM(u)","wx(u,h?)","hc(u,h)","wx(u)","S5()","A(jj)","S6()","h(@)","h(uL,uL)","uf(h)","h(p_)","a8(dv)","a8(dv)","c()","+(h,h)(bY)","+records,start(x,am)(aY<+(h,h),x>)","fE(bY)","j(ah)","0^?(c9<0^>?(fz?))","Nc(u,h)","v(hD)","ah(ah)","f(pe)","Do(U)","S7()","qU?(fz?)","Me(u,U,AC)","c9?(fz?)","aA(u)","aL([F?])","GC(u,cR,c?)","a8<~>(Kr)","a8()","~(tG)","GD(u,cR,c?)","f(u,aW)","S8()","a8([F?])","H1(u,h)","Wz()","PV(u)","H0(u,h)","bd(f)","a8(uh)","U?(o6)","Dd(u,h)","f(f,S?)","~(mC,rY?)","A(o6)","C5(u)","pZ(u,h)","fl(u,c?)","q3(u,h)","~(A?)","~(jp)","~(kX?,A)","Ju()","f(lF)","f(dY)","f(f9)","+end,start(h,h)(aN<@,@>)","x(oz)","~(jz)","~(db)","~(pf)","A(f,f)","a8<@>(@)","A(db)","~(cyU)","h(+id,row(h,fA),+id,row(h,fA))","jj(u)","x(u)","Ep(u)","a8<~>(v,Pg)","a8<~>(~)","a8(dY)","~(f,f?)","L3(u)","~(qf)","P0()","oS(un)","A(ty)","h(fU)","S1()","~(x)","a4(yv)","a4(yv,a4)","c_(yv)","A(jn)","c_(A)","v(A)","a4(Ed)","c_(Ed)","Nt(u)","~(fZ)","x(va)","~(zM)","Ag?(j)","~([uD?])","bU(K)","a8(ei?)","a8()","f(S?)","a8<~>(rF)","A(Y6)","A(A?)","~(iV)","aN()","A(dgY)","He()","+(f,i7)(f,f,f)","am(h[h,h,h,h,h,h,h])","0^(0^,0^)","bU()","A(Je)","In?(j)","U(NW)","h(c,h)","c5(U)","c(u,S?,fh?)","d8(d8,U)","~(~)","AT()","fM(f)","TA(u,c?)","A(bdy)","mn?(uA)","~(h,t4)","B(ho,B)","dG<@>(nm)","~(h,A(w_))","dW(bU)","cR(xU)","bd(S{level:zd?,name:f?,stackTrace:dC?})","~(aay,@)","wt?(jS)","dg(u,c?)","q1(u)","~(U,U)","Qi(f)","VT?(oI,kn,U,V,V,U)","~(t2)","~([S?])","aN(aN,f)","~(f,h)","A(Es)","xO(u,c?)","A(bU)","A(dG<@>)","0^?(c9<0^>?(d6?)[bU?])","d6(d6?)","E9()","~(f,h?)","~(h,h,h)","dv(@,@)","~(v_)","~(q2)","~(D,F)","~(F,x)","cR(A)","~(x,oI,U)","kW>(c)","k9(h)","JC(u,c?)","Ne(q9)","MI(@)","nr()","aY>(S,wU<@>)","A(aY>)","a8(wb{allowUpscaling:A,cacheHeight:h?,cacheWidth:h?})","a8(wb{getTargetSize:deX(h,h)?})","h5(h5,eX)","eX(eX)","A(eX)","f(eX)","XL()","~(kf)","a8<~>(S,dC?)","~(Il)","bd(b4b)","~(kX)","X1()","~(S,dC?)?(kh)","~(pf)?(kh)","@(@,@)","Ew(f5)","W(f5)","qu(f5)","A(h,A)","vH/(A)","DY(DY)","a8(vH)","z1(j,h)","f(U,U,f)","U?()","~(mC)","A(z8)","W(W?,kr)","Xf(S?)","t2()","Ya()","~(rj)","fm(lC)","~(lC,c5)","A(lC)","Wp()","~(x{isMergeUp:A})","~(zB)","~(Bg)","A(Bg)","fg(bhA)","x1?(Ey,j)","A(V9{crossAxisPosition!U,mainAxisPosition!U})","vS(wv)","a8<+(f,n2?)>()","A(J)","A(da)","a8(uh,h)","~(h,Xs)","~(M3)","~(wv)","fZ(Bm)","a8(h)","a8(uh)","h(fZ)","fZ(h)","~(up)","~(hL,~(S?))","a8()","ei(ei?)","a8(f)","BW(aN)","aN(uG)","uG(xZ)","bg()","a8(f?)","a8<~>(ei?,~(ei?))","a8>(@)","~(zZ)","S2()","Dj/(uh)","a8(ei?)","a7F()","A(tB)","~(a4b)","dv(S?)","x()","x(x)","U(eO)","x<@>(f)","x(M1)","Tz(u,L1)","NL(a79)","a8<~>(cX)","~(F,F)","F(h)","f?(tY)","a8<~>(S,dC)","~(cg)","a8<~>(dv)","~(G4)","c(G4)","cyT(ET)","kT?(kT,A)","dG<@>?(nm)","U5?(kT,A)","W2(u)","A(xZ)","xZ()","A(JL)","q7()","PF(u)","~(q7)","Cq(u)","a8<~>(rc)","q7(q7)","W(bdy)","~(ks,j,A)","A(xg?)","fV(u,U,c?)","aen()","~(iP)","a8(U4)","~(l0)","l0?(kT,f,l0?,h,h)","~(FI)","~(uj)","~(Ab)","~(l7)","~(bhu)","~(t8)","S?(mX)","cu(cu,wR)","a8<~>(EB)","~(cu)","A(cu?,cu)","cu(cu)","yj(u,iF)","~([U4?])","~([hG?])","~(aL,dv?,f?,bg>?)","A(a4M)","~(Xq)","A(Xe)","~(rz)","A(AF)","bU(k_)","a8(f)","x(u)","W(k_)","h(xo,xo)","x(k_,B)","A(k_)","A(q9<@>)","p7(bJ)","bJ?(bJ)","S?(h,bJ?)","~(rU)","Ho(@)","q4()","~(q4)","U(k8)","~(@[dC?])","A(hD)","~(h,k8)","h(A)","x?(h)","ul()","~(ul)","nO(tv)","c(tv)","~(zR)","~(A0)","~(mz,S)","uf(u,c?)","~(B5)","nO(aY)","A(B5)","zk(u,c?)","Jr(u)","nO(U)","tv(nO)","a4F(@)","JI<@>(@)","Hu(@)","Kk(@)","aP(@)","wT(@)","Hs(@)","~(a8P)","~(a8Q)","~(UI)","zb(@)","K5(u,iF)","~(DX,h)","~(h,bJ)","a8<@>(Y5)","aN(x<@>)","aN(aN)","bd(aN)","bd(u,K9,bm)","~(x)","~(A7?,A)","A(dG<@>?)","a8<~>([F?])","A(zF)","KY(@)","A(ir)","kx(dG<@>)","~(f,F)","aY>(@,@)","XY(u)","ov(oU)","QB(oU)","Jh(oU)","Io(oU)","~(aY)","O4()","J(h)","yg(u,c?)","AN(u,iF)","~(V,j)","bd(iV?)","~(it)","dc(A)","a8(A)","A(f,rr{isVisible:A})","EY(u,c?)","xO(u)","Rx(u,c?)","A(by8)","Jq(cX)","Sz(cX)","ir(ir,ir)","U(hD)","~(QG?,VN?)","c(u,iF)","bd(ob)","IZ(@)","U(@)","bd(x<~>)","ah?(kK,ah)","A(df,ah)","A(l8?)","xx()","~(xx)","xy()","~(xy)","A(df)","h(df)","~(Ge)","R3(@)","~(h,uD)","~(f,hW)","A(Fx)","h(l9,l9)","~(zt)","A(W)","x(K)","~(Fh,cB)","x()","YF(u,iF)","~(J)","bJ?()","A(kq)","lu?(kq)","pL(kq)","bJ(c)","A(pL)","A(x)","B(pL)","J(bJ)","x(pL)","Cr(u)","~({isInternalRefresh:A})","wO()","~(wO)","0&(@)","~(FL)","~(EU)","Og(u,zJ)","b7K(A)","a8(rg?)","x(x)","dc()","dc()","~(f,Qh)","dc()","rT()","bd(ei)","a8()","~(cFD)","~(Pq)","~(cFC)","~(z3)","KE()","v4()","~(v4)","a8(rF)","R2()","~(x,F)","c(u,f4<~>)","a8<~>(f,ei?,~(ei?)?)","~(Dn)","x(ho,B)","V(F)","A(Dn)","~(U,U,U,U)","c(u,f4)","F?(h)","bd(A?)","yl(u,c)","h(h,A)","~(m6)","f(aY)","d83?()","yl(u)","a8<~>(E4)","a8<~>(t4)","a8(f{curve:kQ,duration:aU,jumpCurve:kQ,jumpDuration:aU})","bd(u{currentLength!h,isFocused!A,maxLength:h?})","yN(u)","c(hd)","XR(u,c)","Jj(u,c)","Q3(u,c)","Jk(u,c)","Ru(u,c)","n4?(n4?(u))","Rv(u)","n4?(u)","~(yn?)","c(u,f4)","kt(u{isLast:A?})","ki?(u{isLast:A?})","A(Od)","U?(mK)","U?(U)","U(U?)","U(aY)","U(Bp)","~(m6?)","~(q0)","zU(pW)","AM(pW)","~(pW)","~(P3)","MK({from:U?})","A(bz1)","A(cKE)","A(Tn)","A(cLb)","A(cLc)","A(cKF)","c(u,f,@)","c(u,f,c)","~(nh)","Ib(u,aG)","w8(u,f4)","~(WV)","eY(u,f4)","c(u,f4)","w8(u,f4)","Jp(@)","x>(x>,Gx)","A(dG,S?)","NA(x?,f?)","SD(u,aW)","Qb(u,aW)","KB<~>({arguments!S?,child!c,key!na,name!f?,restorationId!f})","QQ(u,aW)","h8/(h8)","~(V?)","f(f,v)","f?/(f?)","f(h8)","A(dG,S?,mv)","Lu()","aY(f,f)","0&(u,aW)","bd(J3)","h(aY)","aN(mb)","z0(u)","c(u,f?,c?)","x(os)","Vt()","x(oG)","Bf(oG[A])","Bf()","G3(oG)","c?(oG)","c(h,c)","DH(u,c)","A(ne,aW)","A(v)","S?(vC)","@(vC)","a8()","A(Tt[h])","aA(u,c?)","~(dk)","f(t0)","A(bU)","A(M2)","aN>()","h(Ex,Ex)","a8(aph)","a5F()","jB(aL)","am(h)","a7O()","am(h,h,h,h,h,h,h,A)","A(xf)","Xb(f,hE)","Xa(f,hE)","X9(f,hE)","f?(Ek)","f(Ek)","a8<~>(U)","a8<~>(aU?{index:h?})","nh(l3)","aU(l3)","DB?(l3)","~(x)","k9(c)","UU?(x?,x?,h?,A,zh)","L4(A,l3)","bd(OR)","~(cEW)","h(Gp,Gp)","~(aU?)","~(l3)","aU?(E1)","A(nh)","~(re)","~(wy)","~(rO)","a8()","A(hN,f)","~(x?)","xm()","rO(aN<@,@>)","wy(@)","~(xm)","a8(bK)","a1J()","a0W()","~(lA,A)","Sp()","@(@,f)","jS?()","lr?(aN)","qP(aN)","U(aN)","c(u,rG,c?)","~(lr?)","~(qP)","j(aN)","h(jc)","jS()","qP(aL)","U(aL)","aL(@)","~(lr)","j(aL)","bd(aL?,S?)","A(jc)","QP(f)","A(kf)","a8(F)","h(jr,jr)","h(h,jr)","jr(f)","jr(f,f,f)","kb(f?,kb)","f5(f5)","El()(f,c7)","El()","ze()","Et()(f,c7)","Et()","TY()","GX()","Qg()","C9()(f,c7)","C9()","Ca()(f,c7)","Ca()","Cb()(f,c7)","Cb()","Cd()(f,c7)","Cd()","Cx()(f,c7)","Cx()","Dw()(f,c7)","Dw()","Dx()(f,c7)","Dx()","Dy()(f,c7)","Dy()","Em()(f,c7)","Em()","F3()(f,c7)","F3()","TS()","P1()","Cc()(f,c7)","Cc()","DR()(f,c7)","DR()","Sv()","Sw()","Sx()","TT()","TU()","TV()","TW()","Uz()","UA()","F1()(f,c7)","F1()","UB()","UC()","F2()(f,c7)","F2()","wF()(f,c7)","wF()","UD()","VU()","Ws()","Cy()","Cz()","CA()","CB()","CC()","CD()","CE()","CF()","CG()","CH()","CI()","CJ()","CK()","CL()","CM()","CN()","CO()","CP()","CQ()","CR()","CS()","CT()","CU()","CV()","CW()","CX()","CY()","CZ()","D_()","D0()","D1()","D2()","D3()","D4()","D5()","D6()","D7()","D8()","D9()","Da()","Db()","q6(q6?)","a_e()","HR()(f,c7)","HR()","a2h()","Jd()(f,c7)","Jd()","A(aY)","KJ()(f,c7)","KJ()","KK()(f,c7)","KK()","KL()(f,c7)","KL()","a91()","a2j()","a7v()","ya()(f,c7)","ya()","yb()(f,c7)","yb()","yX()(f,c7)","yX()","EJ()(f,c7)","EJ()","Eu()(f,c7)","Eu()","Rw()","Td()","BX()(f,c7)","BX()","aH()","dv()","C3()(f,c7)","C3()","R8()","It()(f,c7)","It()","KM()(f,c7)","KM()","Lo()(f,c7)","Lo()","aN()","bU()","HG()(f,c7)","HG()","d2C()","HH()(f,c7)","HH()","Hx()(f,c7)","Hx()","Is()(f,c7)","Is()","a7u()","a8J()","F4()(f,c7)","F4()","c(c,h)","c(u,aG,c)","c(u,~(~()))","c(u,x,x<@>)","~(ks,j)","B(f)","~(jt)","~(ko)","~(lE)","f(eT)","~({origin!hq,override!hq})","lE?(is)","A(lE?)","lE(lE,lE?)","Xu()","~(zO)","~(is)","A(fU)","a8<~>?()","U?(h)","aY(aY)","a8(jB)","x<+ts,uri(am,hN)>(Ap>)","~(A?,A?)","nr(nr)","f(u)","NX(u,c?)","a8<~>(aU)","a8<~>(hN)","u4()","A(ue)","jZ?(ue)","Mm(u)","Iq(u)","hc(c(u,h?))","c(u,h?,c?)","f(U)","hc(c(u,h?,h?))","A(l1)","Cm(u,h)","c(u,f?,@)","I9(u)","Hr(u)","Ms(u)","LZ(u)","JD(u)","In?()","~(Bl)","Ox(u)","Oy(u)","+$value,name(eZ,f)(+initial,name(f,f))","yi(u)","c(+$value,name(eZ,f))","f(+$value,name(eZ,f))","c(wz)","w8(u,zm,c?)","a8<~>(a8<~>(A))","E_(u,U,c?)","b_(u)","j(U,U)","~(x)","ba(u,T7)","Ir(u)","x(u)","Q4(u)","jO(SJ)","aN<~(cX),c5?>()","~(~(cX),c5?)","eW(jj)","H7(u,h)","OO(u,h)","vy(f)","~(n9)","~(pz,j)","Nx()","y3(lM)","zy(lM)","A6(lM)","aN(A8)","OJ(u)","JY(u)","OP(h)","bd(~())","rh(h,q_)","A(rh)","q_(rh)","~({gameMode:@})","yU(lM)","aN(A9)","q_(@)","A(pc)","U(U,pc)","OM(u)","A(PI)","~(z6)","a3i(j)","Kz(+item,route(+activeIcon,icon,label(b_,b_,f),f))","SY(+item,route(+activeIcon,icon,label(b_,b_,f),f))","A(+item,route(+activeIcon,icon,label(b_,b_,f),f))","a8(f,aN)","Hz(u)","t1(u,f?,fJ)","fJ(x)","aY(f,ki)","+(h,h,h)(bY)","+records,start(x,am)(aY<+(h,h,h),x>)","pG(pG,kZ)","pG(pG)","fV(u,f4)","h(bY)","+records,start(x,am)(aY>)","x(Hk>)","A(bY)","jw(anq)","x<+records,start(x,am)>(Hk,am)>>)","~(x<+records,start(x,am)>?,x<+records,start(x,am)>)","k9(u,h?,c?)","QU(u,h)","aL(F)","rs(+records,start(x,am))","a8(~)","h(f,f)","fl(u,A)","ig(jw)","~(bU)","+month,year(h,h)(bY)","+records,time(x,+month,year(h,h))(aY<+month,year(h,h),x>)","h(bY,bY)","h(+records,time(x,+month,year(h,h)),+records,time(x,+month,year(h,h)))","aY(fE,x)","aY,U)>(fE,x)","y0(hD,h,k8,h)","E2(u,h)","x>(nc,f)","Kd<~>(nm)","P2(u)","hD(h,x)","nQ(aY,U)>)","zT(u)","x(u,WR)","xT(u,S?,c?)","U(aY,U)>)","vy(aY,U)>)","~(jK,a77?)","ir(h,aY,U)>)","bd(@,dC)","A(Ap)","~(fJ?,fJ?)","Ef(u,fh)","Y9(u)","I3(U)","hc(u,cu)","Er(u,cu)","jR(@)","h(zq,zq)","QK(u,h)","QH(u)","A(v8)","zp(v8)","~(h,@)","A(lt)","ak<@>?()","Cn(hT)","a8()","~(Ce?)","c(f)","a8<~>(lr)","zL(u,rG)","aA(u,aG)","MX(u,aW)","Jw(u,aW)","Kx(u,aW)","Qr(hT)","wZ(u,aW)","wY(u,aW)","MZ(u,aW)","MP(u,aW)","MN(u,aW)","LS(u,aW)","JZ(u,aW)","J6(u,aW)","Km(u,aW)","KA(u,aW)","LP(u,aW)","M8(u,aW)","JP(u,aW)","MH(u,aW)","I_(u,aW)","N6(u,aW)","LT(u,aW)","K_(u,aW)","J7(u,aW)","GZ(u,aW)","Ll(u,aW)","Ig(u,aW)","K7(u,aW)","IO(u,aW)","IP(u,aW)","H2(u,aW)","Hj(u,aW)","vA(u,aW)","HM(u,aW)","KC(u,aW)","Hd(u,aW)","Nl(u,aW)","Iv(u,aW)","Iu(u,aW)","Iw(u,aW)","Nq(u,aW)","No(u,aW)","Np(u,aW)","RC(u,aW)","K8(u,aW)","Mz(u,aW)","JW(u,aW)","JV(u,aW)","JX(u,aW)","IG(u,aW)","IL(u,aW)","Jc(u,aW)","IJ(u,aW)","Nk(u,aW)","J4(u,aW)","J5(u,aW)","J8(u,aW)","I5(hT)","Kb(u,aW,Aq)","U(U,HN)","A(hp)","SE(W?,W?)","c(u,~())","qL(h,hp)","BM(h,hp)","~(ow)","x?()","h(KH)","U(u)","U(AW)","hp(rk)","aA(hp)","nU?(rk)","aA(nU)","PB(u,h)","vA(u)","A(Ip)","~(mY{isClosing:A?})","c(u,Cf)","c(Cf,u)","A(vV)","hX(vV)","Fk(u,h)","~(x,x)","II(+items,semester(x,h_))","c(u,x)","E0(u,x)","FS(u,EG,c?)","k9(u,aG)","fd(h)","IH(u)","+credit,score(U,U)?(fd)","QT(u,h)","AI(o6)","a8(h)","h_(fd)","+items,semester(x,h_)(aY>)","h_(+items,semester(x,h_))","IK(u)","P8(u,h)","0^?(c9<0^>?(d6?))","FJ(u,A)","Ai(u,U,c?)","kq(aY)","hX(cvq)","P5(u,h)","ba(u,f)","ba(u,f,S)","Hi(u,h)","A(km)","qL(km)","En(h,km)","aL()","ig(kH)","a8<~>(bU)","~(h?)","o4(h)","~(la?)","o4(la)","Cs(jR)","a8<~>(q2)","c9?(d6?)","f(jR)","rs(h,aY>)","A(oN)","qL(oN)","G0(h,oN)","WJ(u,h)","WI(u,h)","ak<@>(@)","WL(u,h)","Nn(Nm)","c9?(d6?)","f(fJ)","q3(u)","MA(u)","hX(+ts,uri(am,hN))","zL(u,cu)","c(fJ)","A(fJ)","jH(qN)","Lk(u)","x(x?)","TR(u)","A(hN?,lF)","lt(f)","jH(f)","t1<+password,username(f,f)>(u)","+password,username(f,f)(x)","jH(jp)","f(jp)","+box,name(kG<@>,f)(aY>)","f(+box,name(kG<@>,f))","Hv(u,h)","c(u,kG<@>)","vu(@)","A(+box,name(kG<@>,f))","vu(u,h)","HI(A,~(A))","VA(A,~(A))","i0?(lF)","a8<~>(lF,i0?)","i0(@)","a8<~>(i0?)","a8(aL)","bd(oc,oc)","jp?()","~(jp?)","a8<~>(h,S?)","h?()","h(i3)","A(wW)","fm?(d6?)","N4(u)","v?(d6?)","MU(u)","MQ(u)","N7(u)","dY(@)","f9(@)","+dark,light(v,v)(@)","aN<@,@>(+dark,light(v,v))","+dark,light(v,v)(h)","jz(@)","A(jz)","+(f,db)(aY)","aY(h)","f(jA)","aY(f,@)","qU?(d6?)","jA(@)","A(V5)","Kg?(d6?)","db(i3)","A(oz)","oz(oz)","i3(i3)","A(i3)","aU?(d6?)","jH(lf)","LF(h,jA)","~(jA)","DK(f)","jH(uN)","~(db,db)","A?(d6?)","~(fA)","jE?(d6?)","f(aY>)","VZ(u,h)","z9?(d6?)","eY(u,am)","A(bA)","~(rI)","uV(h,db)","~(rQ)","wY(u)","rZ?(Hk)","~(o2)","f(+id,row(h,fA))","Dc(u)","A(rD)","~(HL)","aY>(f,f)","AB(u,x(u)?)","MT(u)","MS(u)","VW(u,h)","A(iN)","+id,row(h,iN)(iN)","h(+id,row(h,hb),+id,row(h,hb))","f(+id,row(h,hb))","Dc?(u)","Tj(u,x(u)?)","Tk(u)","KQ(u,h)","pZ(+dark,light(v,v))","pZ(u,v?,c?)","c({colorId!h,grayOut:A,name!f,place!f,teachers!x})","HY(u,v?,c?)","c(h{colorId!h,grayOut:A})","aA(u,h,h)","wZ(u)","~(@,dC)","N0(u)","Ls?(aom,f,f)","aA(A)","~(mF)","f(mF)","N3(A)","MY(u,c)","@(@)(~(qE,A4))","c(u,x,x<@>)","A(vM)","~(vM)","a8<~>(a29)","W1(u,h)","N_(u)","N2(u)","Lp(u,h)","Fp({context!u,lesson!i3,timetable!rZ})","N5(u)","eY(u,fD)","Fa(u,jg)","ig(jg)","~(bU)","Wc(@)","kL(@)","aN(kL)","kL?()","kL?(kL?)","mS(@)","mS?()","mS?(mS?)","aN(fA)","aN(hb)","hb?(h,hb?(h))","bd(h,hb?,a8<~>(h,hb?))","A(h?,h?)","wx(u,h?,h?)","hX(db)","hX(MO)","hX(wW)","db?(h)","eY(db)","rj(tE)","JA(u,c?)","aA(h,dY)","N1(u)","LJ(h,dY)","fD(f9)","am(f9)","uV(h,fD)","uV(h,am)","f9(fD)","f9(am)","ig(lP)","a8<~>(bU)","am(Ap)","aA(mG)","xT(u,jg)","x(db)","j(V,U)","W_(u,fD)","bd(lf)","MV(u,h)","Pf(h)","Hy()","rq(lf)","MW(u,h)","c({context!u,lesson!i3,timetable!rZ})","V3(u,aG)","c(h)","RP(u,c)","N8(u,c)","f(+begin,end(eK,eK))","FT(cvS)","a8x()","a8(f)","~(RA)","Ra(u,cR,cR)","A(x)","F0(u,h)","rq(h)","A(H)","f?()","h(v6)","J1()","S(v6)","S(nA)","h(nA,nA)","x(aY>)","An()","Dq(u,aG)","m5()","fM(fM)","A(fM)","x(fM)","h(fM)","Ku()","f(fM)","c(u,zm,c?)","@(@)(~(nj<@>,LH))","fU(f,f)","@(S)(~(p9,IE))","yg(u,aG)","A(v?)","bx?(bU)","jl()","a8<~>(qE,A4)","A(u)","~(cB?)","~(nj<@>,LH)","H8(u)","A(DJ?)","a8<~>(j,aC,@(A))","a8(Kt)","a8()","v(Gb)","a8(Kt)","e_(U)","Kp(V,uU?)","Kq(u,jO,cy3,jE,dq,dW)","~(p9,IE)","ur()","~(ur)","A(ph?)","Ec()","aY>(f,x)","~(f,x)","J?(oa)","Ko(u)","v1(jn)","jn(v1)","~(qE,A4)","A(B8)","x?()","Ha(B8)","jn(jn)","e_(u,h)","kW>()","Gh(u)","a8()","Ag(j,h)","KI(u)","Qq?()","~(uU)","v?(v?,v?,v?[v?])","zn(V,uU?)","V(aG)","K3(u)","M?(u,K9,bm)","iH(iH,iH)","fV(u,zn?,c?)","j(j)","~(jE)","JT(h,JE)","us()","~(us)","aE(u,aG)","~(Sr)","~({rejected:A})","~(ob)","ob(ob)","a8()","t7(u,aG)","A(qi)","qM(qM)","A(Yg)","~(Mw)","~(dv)","a8()","qw(~)","a6y()","a8(wb)","a8(ei)","Bc(qw)","bd(Bc)","U(eo,eo,eo,eo,U)","m1?(f)","x(f)","~(fL?)","mn(qv)","x()","x()","m1()","~(fL)","~(tb)","a8<~>(VV)","A(S)","bz()","bz()","bz()","bz>()","bz()","bd(D,F)","bz()","bz()","bz()","bz()","bz()","bz()","Mb(@)","ry(n9)","YQ(u)","FZ(f)","mH(f,f,x,f,f)","lh(f,f,+(f,i7))","+(f,i7)(f,f,f,+(f,i7))","A(xl)","+(f,i7)(f)","nw(f,f,f,f)","uW(f,f,f)","tc(f,f,f)","uX(f,x,f,f)","uZ(f,f,f,f)","uY(f,f,f,ke?,f,f?,f,f)","ke(f,f,+(f,i7))","ke(f,f,+(f,i7),f,+(f,i7))","f(f,f,f)","bz(FY)","~(hk)","hv(BO)","hv(Fw)","A(YE?)","~(f[uw?])","~(vl)","F(h{params:S?})","~(Nr?,cNU?,Nr,~())","f(S?{toEncodable:S?(S?)?})","@(f{reviver:S?(S?,S?)?})","h?(f{radix:h?})","h(cT<@>,cT<@>)","dv(dv)","f(f{encoding:eC})","x(f,x)","S?(@)","~(S?,f)","j?(j?,j?,U)","V?(V?,V?,U)","U?(eO?,eO?,U)","v?(v?,v?,U)","~(dv,h,h)","Tu(f)","tB(f)","h(h,@)","~(f,yL)","hD(hD,hD,U)","k8(k8,k8,U)","nQ(nQ,nQ,U)","y0?(hD,h,k8,h)","ru(ru,ru,U)","ta(ta,ta,U)","pe(pe,pe,U)","pE(pE,pE,U)","f(pE)","ir(ir,ir,U)","PT({comparator:h(df,df)?,strictMode:A?})","Ge()","FA({style:a4?,textDirection:oI})","ui(W?,W?)","c(u,V,c)","f?(f)","c(u,j,j,c)","~(dl{forceReport:A})","~(f?{wrapWidth:h?})","ux?(f)","U(U,U,U)","z6({allowedButtonsFilter:A(h)?,debugOwner:S?,supportedDevices:bU?})","zt({allowedButtonsFilter:A(h)?,debugOwner:S?,longTapDelay:aU,supportedDevices:bU?})","qu()","ag1(u)","afB(u)","A?(A?,A?,U)","c9?(fz?)","c(u,LY)","iS?(iS?,iS?,U)","h5?(h5?,h5?,U)","a4?(a4?,a4?,U)","h(xw<@>,xw<@>)","A({priority!h,scheduler!lH})","x(f)","c(c,il,c,il)","c(c?,x)","bd(tT)","j(vN,u,j)","~(hG{alignment:U?,alignmentPolicy:LV?,curve:kQ?,duration:aU?})","h(bJ,bJ)","dW(dW?,dW?,U)","x>(nc,f)","n5(oU)","c9?(fz?)","c9?(fz?)","eV(f)","h(v2,v2)","A(jm)","d8(d8,t6)","d8(d8,Au)","d8(d8,uF)","jm()","d8(d8,u?)","d8(d8,em)","A(n4?)","tP(h)","nZ<~>({arguments!S?,child!c,key!na,name!f?,restorationId!f})","u6<~>({arguments!S?,child!c,key!na,name!f?,restorationId!f})","c(u,Aq,x)","fm?(fz?)","H4(aN)","QJ(aN)","Tw(aN)","kb(B)","U(U,U,L0)","Cy(f,c0,c1,aH,aH,x?)","Cz(f,c0,c1,aH,aH,x?)","CA(f,c0,c1,aH,aH,x?)","CB(f,c0,c1,aH,aH,x?)","CC(f,c0,c1,aH,aH,x?)","CD(f,c0,c1,aH,aH?,x?)","CE(f,c0,c1,aH,aH,x?)","CF(f,c0,c1,aH,aH,x?)","CG(f,c0,c1,aH,aH,x?)","CH(f,c0,c1,aH,aH,x?)","CI(f,c0,c1,aH,aH,x?)","CJ(f,c0,c1,aH,aH,x?)","CK(f,c0,c1,aH,aH,x?)","CL(f,c0,c1,aH,aH,x?)","CM(f,c0,c1,aH,aH,x?)","CN(f,c0,c1,aH,aH,x?)","CO(f,c0,c1,aH,aH,x?)","CP(f,c0,c1,aH,aH,x?)","CQ(f,c0,c1,aH,aH,x?)","CR(f,c0,c1,aH,aH,x)","CS(f,c0,c1,aH,aH,x)","CT(f,c0,c1,aH,aH,x)","CU(f,c0,c1,aH,aH,x)","CV(f,c0,c1,aH,aH,x)","CW(f,c0,c1,aH,aH,x)","CX(f,c0,c1,aH,aH,x)","CY(f,c0,c1,aH,aH,x)","CZ(f,c0,c1,aH,aH,x)","D_(f,c0,c1,aH,aH,x)","D0(f,c0,c1,aH,aH,x)","D1(f,c0,c1,aH,aH,x?)","D2(f,c0,c1,aH,aH,x)","D3(f,c0,c1,aH,aH,x)","D4(f,c0,c1,aH,aH,x?)","D5(f,c0,c1,aH,aH,x)","D6(f,c0,c1,aH,aH,x?)","D7(f,c0,c1,aH,aH,x)","D8(f,c0,c1,aH,aH,x?)","D9(f,c0,c1,aH,aH,x)","Da(f,c0,c1,aH,aH,x)","Db(f,c0,c1,aH,aH,x)","yD?(yD,aH?,cyy?)","~()(aw3,aC?)","0&(S,dC)","uy<0^,1^>(0^(lM<0^,1^>){allTransitiveDependencies!B?,argument:S?,debugGetCreateSourceHash!f()?,dependencies!B?,from:vZ?,name!f?}),S?>","A8(aN)","A9(aN)","0^(0^)","f?(u,aW)","f?/(u,aW)","c(u,aW)","a8(u,fA[pD?])","pD(pY)","lQ(pY)","a8(u,fA[lQ?])","mE(pY)","a8(u,fA[mE?])","ns(pY)","a8(u,fA[ns?])","nt(pY)","a8(u,fA[nt?])","hb(aN)","fA(aN)","jE?(fz?)","NT(u,cR)","A(j)","d4(u)","bd(x?>)","Gt(u,c?)","h(0^,0^)>","a8<1^>(1^/(0^),0^{debugLabel:f?})","h(h,h,U)","d8(d8,x)","dg(u,cR)","yr(u,cR)","d8(d8,J_)","d8(d8,o8)","d8(d8,Cl)","c(u,cR)","~(aow)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"1;enableElectricity":a=>b=>b instanceof A.ah2&&a.b(b.a),"2;":(a,b)=>c=>c instanceof A.dZ&&a.b(c.a)&&b.b(c.b),"2;$value,name":(a,b)=>c=>c instanceof A.aUv&&a.b(c.a)&&b.b(c.b),"2;begin,end":(a,b)=>c=>c instanceof A.lj&&a.b(c.a)&&b.b(c.b),"2;box,name":(a,b)=>c=>c instanceof A.aUi&&a.b(c.a)&&b.b(c.b),"2;cacheSize,maxTextLength":(a,b)=>c=>c instanceof A.Ye&&a.b(c.a)&&b.b(c.b),"2;credit,gpa":(a,b)=>c=>c instanceof A.aUj&&a.b(c.a)&&b.b(c.b),"2;credit,score":(a,b)=>c=>c instanceof A.aUk&&a.b(c.a)&&b.b(c.b),"2;dark,light":(a,b)=>c=>c instanceof A.cM&&a.b(c.a)&&b.b(c.b),"2;day,week":(a,b)=>c=>c instanceof A.aUl&&a.b(c.a)&&b.b(c.b),"2;distance,fragment":(a,b)=>c=>c instanceof A.ah3&&a.b(c.a)&&b.b(c.b),"2;end,start":(a,b)=>c=>c instanceof A.ia&&a.b(c.a)&&b.b(c.b),"2;fromJson,toJson":(a,b)=>c=>c instanceof A.ah4&&a.b(c.a)&&b.b(c.b),"2;groups,list":(a,b)=>c=>c instanceof A.aUm&&a.b(c.a)&&b.b(c.b),"2;id,row":(a,b)=>c=>c instanceof A.ah5&&a.b(c.a)&&b.b(c.b),"2;income,outcome":(a,b)=>c=>c instanceof A.aUn&&a.b(c.a)&&b.b(c.b),"2;initial,name":(a,b)=>c=>c instanceof A.O_&&a.b(c.a)&&b.b(c.b),"2;item,route":(a,b)=>c=>c instanceof A.ah6&&a.b(c.a)&&b.b(c.b),"2;items,semester":(a,b)=>c=>c instanceof A.aUo&&a.b(c.a)&&b.b(c.b),"2;key,value":(a,b)=>c=>c instanceof A.aUp&&a.b(c.a)&&b.b(c.b),"2;month,year":(a,b)=>c=>c instanceof A.aUq&&a.b(c.a)&&b.b(c.b),"2;name,number":(a,b)=>c=>c instanceof A.O0&&a.b(c.a)&&b.b(c.b),"2;password,username":(a,b)=>c=>c instanceof A.ah7&&a.b(c.a)&&b.b(c.b),"2;records,start":(a,b)=>c=>c instanceof A.O1&&a.b(c.a)&&b.b(c.b),"2;records,time":(a,b)=>c=>c instanceof A.aUr&&a.b(c.a)&&b.b(c.b),"2;tags,title":(a,b)=>c=>c instanceof A.ah8&&a.b(c.a)&&b.b(c.b),"2;total,type2Stats":(a,b)=>c=>c instanceof A.aUs&&a.b(c.a)&&b.b(c.b),"2;ts,uri":(a,b)=>c=>c instanceof A.aUt&&a.b(c.a)&&b.b(c.b),"2;wordEnd,wordStart":(a,b)=>c=>c instanceof A.aUu&&a.b(c.a)&&b.b(c.b),"3;":(a,b,c)=>d=>d instanceof A.ah9&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;activeIcon,icon,label":(a,b,c)=>d=>d instanceof A.aha&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;alarm,isLessonMerged,locale":(a,b,c)=>d=>d instanceof A.aUx&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;alarmBeforeClass,alarmDuration,isDisplayAlarm":(a,b,c)=>d=>d instanceof A.aUw&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;breaks,graphemes,words":(a,b,c)=>d=>d instanceof A.aUy&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;data,event,timeStamp":(a,b,c)=>d=>d instanceof A.ahb&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;enableBackground,grayOutTakenLessons,signature":(a,b,c)=>d=>d instanceof A.aUz&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;enableClass2nd,enableExamArrange,enableExamResult":(a,b,c)=>d=>d instanceof A.Yf&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;large,medium,small":(a,b,c)=>d=>d instanceof A.aUA&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;proportion,records,total":(a,b,c)=>d=>d instanceof A.aUB&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;queue,target,timer":(a,b,c)=>d=>d instanceof A.aUC&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;x,y,z":(a,b,c)=>d=>d instanceof A.ahc&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"4;":a=>b=>b instanceof A.aUD&&A.cta(a,b.a),"4;domBlurListener,domFocusListener,element,semanticsNodeId":a=>b=>b instanceof A.ahd&&A.cta(a,b.a),"5;":a=>b=>b instanceof A.aUE&&A.cta(a,b.a),"8;":a=>b=>b instanceof A.aUF&&A.cta(a,b.a)}} +A.djB(v.typeUniverse,JSON.parse('{"oc":"DU","aBs":"DU","x3":"DU","dA4":"F","dA5":"F","dx4":"F","dwY":"bK","dzb":"bK","dxb":"C_","dwZ":"bi","dAE":"bi","dC8":"bi","dAr":"cb","dEi":"qy","dxg":"cq","dC9":"dh","dyh":"dh","dzI":"yA","dDj":"mD","dDa":"Kn","dy_":"x7","dxt":"vx","dCC":"vx","dzP":"Jo","dzL":"Ji","dyf":"kf","dxP":"fx","dxR":"tJ","dxT":"mA","dxU":"nY","dxQ":"nY","dxS":"nY","HK":{"ob":[]},"a0n":{"nV":[]},"Ku":{"Wr":[]},"KE":{"Wr":[]},"Lu":{"Qu":[]},"t2":{"Qu":[]},"n2":{"e3":[]},"jP":{"iq":[]},"vS":{"DY":[]},"yG":{"biJ":[]},"aox":{"aow":[]},"aoZ":{"tD":[]},"a0m":{"tD":[]},"Pw":{"tD":[]},"ap7":{"tD":[]},"apb":{"tD":[]},"Pv":{"tD":[]},"Kw":{"B":["rH"],"B.E":"rH"},"avM":{"bP":[]},"ap4":{"tD":[]},"adp":{"tD":[]},"adq":{"tD":[]},"aoX":{"nV":[]},"Q1":{"lz":[]},"aDG":{"lz":[]},"anB":{"lz":[],"b5t":[]},"apk":{"lz":[],"b9t":[]},"apn":{"lz":[],"b9w":[]},"apm":{"lz":[],"b9v":[]},"aAm":{"lz":[],"bvc":[]},"abA":{"lz":[],"aGY":[]},"aAl":{"lz":[],"aGY":[],"bva":[]},"avP":{"lz":[],"bmA":[]},"aBk":{"lz":[]},"apv":{"lz":[],"b9M":[]},"aBB":{"lz":[]},"Px":{"Ew":[]},"Py":{"qu":[]},"apa":{"B":["Tq"],"B.E":"Tq"},"ap_":{"Tq":[]},"aEz":{"Pz":[],"qH":[]},"ap1":{"Pz":[],"qH":[]},"ap2":{"Pz":[],"qH":[]},"ap0":{"Pz":[],"qH":[]},"ap5":{"Pz":[],"qH":[]},"ap6":{"DY":[]},"aoy":{"e3":[]},"avF":{"cIO":[]},"avE":{"bP":[]},"a42":{"bP":[]},"AX":{"B":["1"],"B.E":"1"},"aei":{"B":["1"],"B.E":"1"},"aul":{"n2":[],"e3":[]},"a3v":{"n2":[],"e3":[]},"a3w":{"n2":[],"e3":[]},"a6X":{"jP":[],"iq":[],"b5t":[]},"aFC":{"aow":[]},"a6Z":{"jP":[],"iq":[],"b9w":[]},"aBe":{"jP":[],"iq":[],"b9v":[]},"a6Y":{"jP":[],"iq":[],"b9t":[]},"a7_":{"jP":[],"iq":[],"b9M":[]},"a70":{"jP":[],"iq":[],"bmA":[]},"a71":{"jP":[],"iq":[],"bva":[]},"a72":{"jP":[],"iq":[],"bvc":[]},"Vs":{"Ew":[]},"Fr":{"qu":[]},"aFE":{"B":["Tq"],"B.E":"Tq"},"aFD":{"Tq":[]},"aBh":{"iq":[]},"a73":{"iq":[]},"a2b":{"hJ":[]},"a6I":{"hJ":[]},"aAV":{"hJ":[]},"aAZ":{"hJ":[]},"aAX":{"hJ":[]},"aAW":{"hJ":[]},"aAY":{"hJ":[]},"aAG":{"hJ":[]},"aAF":{"hJ":[]},"aAE":{"hJ":[]},"aAL":{"hJ":[]},"aAN":{"hJ":[]},"aAU":{"hJ":[]},"aAQ":{"hJ":[]},"aAS":{"hJ":[]},"aAR":{"hJ":[]},"aAJ":{"hJ":[]},"aAM":{"hJ":[]},"aAI":{"hJ":[]},"aAP":{"hJ":[]},"aAT":{"hJ":[]},"aAK":{"hJ":[]},"aAO":{"hJ":[]},"a74":{"jP":[],"iq":[]},"IA":{"qH":[]},"QO":{"qH":[]},"auX":{"qH":[]},"Rm":{"qH":[]},"auW":{"qH":[]},"acZ":{"vR":[]},"afZ":{"vR":[]},"atr":{"vR":[]},"SS":{"vR":[]},"SG":{"vR":[]},"aBg":{"iq":[]},"a75":{"jP":[],"iq":[],"aGY":[]},"a3W":{"nV":[]},"avw":{"nV":[]},"a9H":{"J3":[]},"a3Y":{"ob":[]},"aoh":{"nV":[]},"ZW":{"J3":[]},"Uu":{"A5":[]},"auh":{"A5":[]},"a4O":{"A5":[]},"K6":{"A5":[]},"aEn":{"cyU":[]},"aFV":{"A5":[]},"xz":{"a2":["1"],"x":["1"],"aO":["1"],"B":["1"]},"aQp":{"xz":["h"],"a2":["h"],"x":["h"],"aO":["h"],"B":["h"]},"aH4":{"xz":["h"],"a2":["h"],"x":["h"],"aO":["h"],"B":["h"],"a2.E":"h","B.E":"h","xz.E":"h"},"Ty":{"KR":[]},"aoQ":{"Vq":[]},"aDI":{"Vq":[]},"a2w":{"rz":[]},"aOp":{"yG":[],"biJ":[]},"QN":{"yG":[],"biJ":[]},"d8d":{"bg":["dv"]},"a41":{"bP":[]},"F":{"aL":[]},"D":{"x":["1"],"F":[],"aO":["1"],"aL":[],"B":["1"],"dt":["1"],"B.E":"1"},"a4C":{"A":[],"h0":[]},"RY":{"bd":[],"h0":[]},"DU":{"F":[],"aL":[]},"bo_":{"D":["1"],"x":["1"],"F":[],"aO":["1"],"aL":[],"B":["1"],"dt":["1"],"B.E":"1"},"DQ":{"U":[],"eO":[],"cT":["eO"]},"RX":{"U":[],"h":[],"eO":[],"cT":["eO"],"h0":[]},"a4E":{"U":[],"eO":[],"cT":["eO"],"h0":[]},"we":{"f":[],"cT":["f"],"Tt":[],"dt":["@"],"h0":[]},"tC":{"bg":["2"],"bg.T":"2"},"Pp":{"oH":["2"]},"HE":{"jx":["3","4"],"jx.S":"3","jx.T":"4"},"HB":{"aT":["3","4"],"aT.S":"3","aT.T":"4"},"v0":{"B":["2"]},"HC":{"v0":["1","2"],"B":["2"],"B.E":"2"},"aeu":{"HC":["1","2"],"v0":["1","2"],"aO":["2"],"B":["2"],"B.E":"2"},"adk":{"a2":["2"],"x":["2"],"v0":["1","2"],"aO":["2"],"B":["2"]},"ek":{"adk":["1","2"],"a2":["2"],"x":["2"],"v0":["1","2"],"aO":["2"],"B":["2"],"a2.E":"2","B.E":"2"},"yf":{"bU":["2"],"v0":["1","2"],"aO":["2"],"B":["2"],"B.E":"2"},"HD":{"c3":["3","4"],"aN":["3","4"],"c3.V":"4","c3.K":"3"},"ye":{"v0":["1","2"],"aO":["2"],"B":["2"],"B.E":"2"},"qh":{"e3":[]},"aCv":{"e3":[]},"e0":{"a2":["h"],"x":["h"],"aO":["h"],"B":["h"],"a2.E":"h","B.E":"h"},"aO":{"B":["1"]},"aa":{"aO":["1"],"B":["1"]},"b3":{"aa":["1"],"aO":["1"],"B":["1"],"B.E":"1","aa.E":"1"},"fW":{"B":["2"],"B.E":"2"},"jJ":{"fW":["1","2"],"aO":["2"],"B":["2"],"B.E":"2"},"O":{"aa":["2"],"aO":["2"],"B":["2"],"B.E":"2","aa.E":"2"},"b1":{"B":["1"],"B.E":"1"},"eE":{"B":["2"],"B.E":"2"},"My":{"B":["1"],"B.E":"1"},"a2r":{"My":["1"],"aO":["1"],"B":["1"],"B.E":"1"},"aaG":{"B":["1"],"B.E":"1"},"Ah":{"B":["1"],"B.E":"1"},"QI":{"Ah":["1"],"aO":["1"],"B":["1"],"B.E":"1"},"Mj":{"B":["1"],"B.E":"1"},"m9":{"aO":["1"],"B":["1"],"B.E":"1"},"yQ":{"B":["1"],"B.E":"1"},"a2q":{"yQ":["1"],"aO":["1"],"B":["1"],"B.E":"1"},"cv":{"B":["1"],"B.E":"1"},"Wh":{"a2":["1"],"x":["1"],"aO":["1"],"B":["1"]},"aR0":{"aa":["h"],"aO":["h"],"B":["h"],"B.E":"h","aa.E":"h"},"l_":{"c3":["h","1"],"Gy":["h","1"],"aN":["h","1"],"c3.V":"1","c3.K":"h"},"bE":{"aa":["1"],"aO":["1"],"B":["1"],"B.E":"1","aa.E":"1"},"uC":{"aay":[]},"HU":{"qS":["1","2"],"SA":["1","2"],"Gy":["1","2"],"aN":["1","2"]},"PY":{"aN":["1","2"]},"y":{"PY":["1","2"],"aN":["1","2"]},"NO":{"B":["1"],"B.E":"1"},"a9":{"PY":["1","2"],"aN":["1","2"]},"a0X":{"cZ":["1"],"bU":["1"],"aO":["1"],"B":["1"]},"kd":{"cZ":["1"],"bU":["1"],"aO":["1"],"B":["1"],"B.E":"1","cZ.E":"1"},"ix":{"cZ":["1"],"bU":["1"],"aO":["1"],"B":["1"],"B.E":"1","cZ.E":"1"},"a4u":{"rr":[]},"rv":{"rr":[]},"a4v":{"rr":[]},"a6l":{"AG":[],"zz":[],"e3":[]},"awd":{"zz":[],"e3":[]},"aHa":{"e3":[]},"aAe":{"bP":[]},"aiS":{"dC":[]},"Ci":{"rr":[]},"apr":{"rr":[]},"aps":{"rr":[]},"aFX":{"rr":[]},"aFj":{"rr":[]},"Pb":{"rr":[]},"aN1":{"e3":[]},"aDT":{"e3":[]},"me":{"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"bR":{"aO":["1"],"B":["1"],"B.E":"1"},"a4G":{"me":["1","2"],"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"JJ":{"me":["1","2"],"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"u1":{"a7O":[],"Tt":[]},"XN":{"a7P":[],"c7":[]},"aKq":{"B":["a7P"],"B.E":"a7P"},"Vm":{"c7":[]},"aXh":{"B":["c7"],"B.E":"c7"},"zu":{"F":[],"aL":[],"aom":[],"h0":[]},"zv":{"qq":[],"a2":["h"],"dv":[],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"],"h0":[],"a2.E":"h","B.E":"h"},"kl":{"F":[],"aL":[],"iE":[]},"a63":{"kl":[],"F":[],"ei":[],"aL":[],"iE":[],"h0":[]},"SW":{"kl":[],"dK":["1"],"F":[],"aL":[],"iE":[],"dt":["1"]},"Ei":{"a2":["U"],"x":["U"],"kl":[],"dK":["U"],"F":[],"aO":["U"],"aL":[],"iE":[],"dt":["U"],"B":["U"]},"qq":{"a2":["h"],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"]},"a64":{"Ei":[],"a2":["U"],"bim":[],"x":["U"],"kl":[],"dK":["U"],"F":[],"aO":["U"],"aL":[],"iE":[],"dt":["U"],"B":["U"],"h0":[],"a2.E":"U","B.E":"U"},"azX":{"Ei":[],"a2":["U"],"bin":[],"x":["U"],"kl":[],"dK":["U"],"F":[],"aO":["U"],"aL":[],"iE":[],"dt":["U"],"B":["U"],"h0":[],"a2.E":"U","B.E":"U"},"azY":{"qq":[],"a2":["h"],"bnD":[],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"],"h0":[],"a2.E":"h","B.E":"h"},"a66":{"qq":[],"a2":["h"],"bnE":[],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"],"h0":[],"a2.E":"h","B.E":"h"},"azZ":{"qq":[],"a2":["h"],"bnF":[],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"],"h0":[],"a2.E":"h","B.E":"h"},"a67":{"qq":[],"a2":["h"],"bNI":[],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"],"h0":[],"a2.E":"h","B.E":"h"},"a68":{"qq":[],"a2":["h"],"Wa":[],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"],"h0":[],"a2.E":"h","B.E":"h"},"a69":{"qq":[],"a2":["h"],"bNJ":[],"x":["h"],"kl":[],"dK":["h"],"F":[],"aO":["h"],"aL":[],"iE":[],"dt":["h"],"B":["h"],"h0":[],"a2.E":"h","B.E":"h"},"ajT":{"lS":[]},"aOq":{"e3":[]},"ajU":{"AG":[],"e3":[]},"ak":{"a8":["1"]},"azS":{"hW":["1"]},"iG":{"oH":["1"],"iG.T":"1"},"NK":{"hW":["1"]},"ajD":{"VV":[]},"acH":{"PS":["1"]},"dz":{"B":["1"],"B.E":"1"},"a_j":{"e3":[]},"dw":{"dI":["1"],"YM":["1"],"bg":["1"],"bg.T":"1"},"Nw":{"G6":["1"],"iG":["1"],"oH":["1"],"iG.T":"1"},"AR":{"hW":["1"]},"pK":{"AR":["1"],"hW":["1"]},"h1":{"AR":["1"],"hW":["1"]},"Ny":{"PS":["1"]},"aI":{"Ny":["1"],"PS":["1"]},"ajc":{"Ny":["1"],"PS":["1"]},"aad":{"bg":["1"]},"Gv":{"hW":["1"]},"td":{"acI":["1"],"Gv":["1"],"hW":["1"]},"Gw":{"Gv":["1"],"hW":["1"]},"dI":{"YM":["1"],"bg":["1"],"bg.T":"1"},"G6":{"iG":["1"],"oH":["1"],"iG.T":"1"},"aj_":{"WT":["1"]},"YM":{"bg":["1"]},"Xg":{"oH":["1"]},"B0":{"bg":["1"],"bg.T":"1"},"NS":{"bg":["1"],"bg.T":"1"},"agg":{"td":["1"],"acI":["1"],"Gv":["1"],"azS":["1"],"hW":["1"]},"jY":{"bg":["2"]},"G9":{"iG":["2"],"oH":["2"],"iG.T":"2"},"oX":{"jY":["1","1"],"bg":["1"],"bg.T":"1","jY.S":"1","jY.T":"1"},"ft":{"jY":["1","2"],"bg":["2"],"bg.T":"2","jY.S":"1","jY.T":"2"},"af0":{"jY":["1","1"],"bg":["1"],"bg.T":"1","jY.S":"1","jY.T":"1"},"ajm":{"jY":["1","1"],"bg":["1"],"bg.T":"1","jY.S":"1","jY.T":"1"},"Ob":{"G9":["2","2"],"iG":["2"],"oH":["2"],"iG.T":"2"},"lW":{"jY":["1","1"],"bg":["1"],"bg.T":"1","jY.S":"1","jY.T":"1"},"Xn":{"hW":["1"]},"YG":{"iG":["2"],"oH":["2"],"iG.T":"2"},"YN":{"jx":["1","2"]},"ad6":{"bg":["2"],"bg.T":"2"},"aj0":{"YN":["1","2"],"jx":["1","2"],"jx.S":"1","jx.T":"2"},"b_h":{"Nr":[]},"ai0":{"Nr":[]},"awZ":{"bU":["1"],"aO":["1"],"B":["1"]},"B3":{"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"Gc":{"B3":["1","2"],"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"ae2":{"B3":["1","2"],"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"B4":{"aO":["1"],"B":["1"],"B.E":"1"},"afF":{"me":["1","2"],"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"xi":{"O7":["1"],"cZ":["1"],"bU":["1"],"aO":["1"],"B":["1"],"B.E":"1","cZ.E":"1"},"nB":{"O7":["1"],"cZ":["1"],"awZ":["1"],"bU":["1"],"aO":["1"],"B":["1"],"B.E":"1","cZ.E":"1"},"B6":{"nB":["1"],"O7":["1"],"cZ":["1"],"awZ":["1"],"bU":["1"],"aO":["1"],"B":["1"],"B.E":"1","cZ.E":"1"},"x4":{"a2":["1"],"x":["1"],"aO":["1"],"B":["1"],"a2.E":"1","B.E":"1"},"iz":{"B":["1"],"B.E":"1"},"a2":{"x":["1"],"aO":["1"],"B":["1"]},"c3":{"aN":["1","2"]},"Wi":{"c3":["1","2"],"Gy":["1","2"],"aN":["1","2"]},"afL":{"aO":["2"],"B":["2"],"B.E":"2"},"SA":{"aN":["1","2"]},"qS":{"SA":["1","2"],"Gy":["1","2"],"aN":["1","2"]},"AY":{"aej":["1"],"cHC":["1"]},"AZ":{"aej":["1"]},"yB":{"aO":["1"],"B":["1"],"B.E":"1"},"a4Z":{"aa":["1"],"aO":["1"],"B":["1"],"B.E":"1","aa.E":"1"},"cZ":{"bU":["1"],"aO":["1"],"B":["1"]},"O7":{"cZ":["1"],"bU":["1"],"aO":["1"],"B":["1"]},"a9Y":{"c3":["1","2"],"aN":["1","2"],"c3.V":"2","c3.K":"1"},"Bj":{"aO":["1"],"B":["1"],"B.E":"1"},"O9":{"aO":["2"],"B":["2"],"B.E":"2"},"aiN":{"aO":["aY<1,2>"],"B":["aY<1,2>"],"B.E":"aY<1,2>"},"mJ":{"xr":["1","2","1"],"xr.T":"1"},"aiR":{"xr":["1","nD<1,2>","2"],"xr.T":"2"},"O8":{"xr":["1","nD<1,2>","aY<1,2>"],"xr.T":"aY<1,2>"},"Vf":{"cZ":["1"],"bU":["1"],"aO":["1"],"B":["1"],"B.E":"1","cZ.E":"1"},"He":{"eC":[],"eS":["f","x"]},"eC":{"eS":["f","x"]},"JQ":{"eC":[],"eS":["f","x"]},"Nh":{"eC":[],"eS":["f","x"]},"afz":{"c3":["f","@"],"aN":["f","@"],"c3.V":"@","c3.K":"f"},"aQw":{"aa":["f"],"aO":["f"],"B":["f"],"B.E":"f","aa.E":"f"},"afy":{"uz":[]},"aZh":{"aT":["f","x"]},"ane":{"aT":["f","x"],"aT.S":"f","aT.T":"x"},"aZi":{"uz":[]},"aZg":{"aT":["x","f"]},"a_f":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"anJ":{"eS":["x","f"]},"anL":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"anK":{"aT":["f","x"],"aT.S":"f","aT.T":"x"},"aLk":{"uz":[]},"aeV":{"aT":["1","3"],"aT.S":"1","aT.T":"3"},"RZ":{"e3":[]},"awf":{"e3":[]},"awe":{"eS":["S?","f"]},"awh":{"aT":["S?","f"],"aT.S":"S?","aT.T":"f"},"awg":{"aT":["f","S?"],"aT.S":"f","aT.T":"S?"},"awx":{"aT":["f","x"],"aT.S":"f","aT.T":"x"},"a4P":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"YP":{"uz":[]},"Bk":{"uz":[]},"aHk":{"aT":["f","x"],"aT.S":"f","aT.T":"x"},"ak7":{"uz":[]},"abL":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"aH":{"cT":["aH"]},"am":{"cT":["am"]},"U":{"eO":[],"cT":["eO"]},"aU":{"cT":["aU"]},"h":{"eO":[],"cT":["eO"]},"x":{"aO":["1"],"B":["1"]},"eO":{"cT":["eO"]},"a7O":{"Tt":[]},"a7P":{"c7":[]},"bU":{"aO":["1"],"B":["1"]},"f":{"cT":["f"],"Tt":[]},"hO":{"aH":[],"cT":["aH"]},"Hf":{"e3":[]},"AG":{"e3":[]},"nN":{"e3":[]},"TZ":{"e3":[]},"a4k":{"e3":[]},"zz":{"e3":[]},"AK":{"e3":[]},"x2":{"AK":[],"e3":[]},"px":{"e3":[]},"apF":{"e3":[]},"aAv":{"e3":[]},"aa2":{"e3":[]},"aeC":{"bP":[]},"kV":{"bP":[]},"a4w":{"AK":[],"bP":[],"e3":[]},"aeX":{"aa":["1"],"aO":["1"],"B":["1"],"B.E":"1","aa.E":"1"},"xu":{"dC":[]},"ou":{"B":["h"],"B.E":"h"},"ak4":{"hN":[]},"tk":{"hN":[]},"aN4":{"hN":[]},"fx":{"F":[],"aL":[]},"Il":{"F":[],"aL":[]},"kf":{"F":[],"aL":[]},"bK":{"F":[],"aL":[]},"n_":{"C2":[],"F":[],"aL":[]},"o9":{"F":[],"aL":[]},"Jn":{"F":[],"aL":[]},"Jp":{"dh":[],"F":[],"aL":[]},"oe":{"F":[],"aL":[]},"dh":{"F":[],"aL":[]},"ol":{"F":[],"aL":[]},"qy":{"bK":[],"F":[],"aL":[]},"oB":{"F":[],"aL":[]},"oC":{"F":[],"aL":[]},"oD":{"F":[],"aL":[]},"mA":{"F":[],"aL":[]},"oL":{"F":[],"aL":[]},"mD":{"F":[],"aL":[]},"oM":{"F":[],"aL":[]},"cq":{"dh":[],"F":[],"aL":[]},"amG":{"F":[],"aL":[]},"amX":{"dh":[],"F":[],"aL":[]},"and":{"dh":[],"F":[],"aL":[]},"a_l":{"dh":[],"F":[],"aL":[]},"C2":{"F":[],"aL":[]},"vx":{"dh":[],"F":[],"aL":[]},"aq_":{"F":[],"aL":[]},"Qa":{"F":[],"aL":[]},"nY":{"F":[],"aL":[]},"tJ":{"F":[],"aL":[]},"aq1":{"F":[],"aL":[]},"aq2":{"F":[],"aL":[]},"as5":{"F":[],"aL":[]},"yA":{"dh":[],"F":[],"aL":[]},"a24":{"a2":["qC"],"cE":["qC"],"x":["qC"],"dK":["qC"],"F":[],"aO":["qC"],"aL":[],"B":["qC"],"dt":["qC"],"cE.E":"qC","a2.E":"qC","B.E":"qC"},"a25":{"F":[],"qC":["eO"],"aL":[]},"a26":{"a2":["f"],"cE":["f"],"x":["f"],"dK":["f"],"F":[],"aO":["f"],"aL":[],"B":["f"],"dt":["f"],"cE.E":"f","a2.E":"f","B.E":"f"},"asX":{"F":[],"aL":[]},"cb":{"dh":[],"F":[],"aL":[]},"bi":{"F":[],"aL":[]},"QW":{"a2":["n_"],"cE":["n_"],"x":["n_"],"dK":["n_"],"F":[],"aO":["n_"],"aL":[],"B":["n_"],"dt":["n_"],"cE.E":"n_","a2.E":"n_","B.E":"n_"},"atQ":{"F":[],"aL":[]},"aun":{"dh":[],"F":[],"aL":[]},"avi":{"F":[],"aL":[]},"Ji":{"a2":["dh"],"cE":["dh"],"x":["dh"],"dK":["dh"],"F":[],"aO":["dh"],"aL":[],"B":["dh"],"dt":["dh"],"cE.E":"dh","a2.E":"dh","B.E":"dh"},"Jo":{"F":[],"aL":[]},"Rz":{"F":[],"aL":[]},"ax7":{"F":[],"aL":[]},"Kn":{"dh":[],"F":[],"aL":[]},"SH":{"F":[],"aL":[]},"azh":{"F":[],"aL":[]},"SP":{"F":[],"aL":[]},"azz":{"F":[],"c3":["f","@"],"aL":[],"aN":["f","@"],"c3.V":"@","c3.K":"f"},"azA":{"F":[],"c3":["f","@"],"aL":[],"aN":["f","@"],"c3.V":"@","c3.K":"f"},"azB":{"a2":["oe"],"cE":["oe"],"x":["oe"],"dK":["oe"],"F":[],"aO":["oe"],"aL":[],"B":["oe"],"dt":["oe"],"cE.E":"oe","a2.E":"oe","B.E":"oe"},"a6i":{"a2":["dh"],"cE":["dh"],"x":["dh"],"dK":["dh"],"F":[],"aO":["dh"],"aL":[],"B":["dh"],"dt":["dh"],"cE.E":"dh","a2.E":"dh","B.E":"dh"},"aBH":{"a2":["ol"],"cE":["ol"],"x":["ol"],"dK":["ol"],"F":[],"aO":["ol"],"aL":[],"B":["ol"],"dt":["ol"],"cE.E":"ol","a2.E":"ol","B.E":"ol"},"aDQ":{"F":[],"c3":["f","@"],"aL":[],"aN":["f","@"],"c3.V":"@","c3.K":"f"},"aEb":{"dh":[],"F":[],"aL":[]},"V0":{"F":[],"aL":[]},"aF4":{"a2":["oB"],"cE":["oB"],"x":["oB"],"dK":["oB"],"F":[],"aO":["oB"],"aL":[],"B":["oB"],"dt":["oB"],"cE.E":"oB","a2.E":"oB","B.E":"oB"},"aFd":{"a2":["oC"],"cE":["oC"],"x":["oC"],"dK":["oC"],"F":[],"aO":["oC"],"aL":[],"B":["oC"],"dt":["oC"],"cE.E":"oC","a2.E":"oC","B.E":"oC"},"aFm":{"F":[],"c3":["f","f"],"aL":[],"aN":["f","f"],"c3.V":"f","c3.K":"f"},"aGi":{"a2":["mD"],"cE":["mD"],"x":["mD"],"dK":["mD"],"F":[],"aO":["mD"],"aL":[],"B":["mD"],"dt":["mD"],"cE.E":"mD","a2.E":"mD","B.E":"mD"},"aGj":{"a2":["oL"],"cE":["oL"],"x":["oL"],"dK":["oL"],"F":[],"aO":["oL"],"aL":[],"B":["oL"],"dt":["oL"],"cE.E":"oL","a2.E":"oL","B.E":"oL"},"aGr":{"F":[],"aL":[]},"aGU":{"a2":["oM"],"cE":["oM"],"x":["oM"],"dK":["oM"],"F":[],"aO":["oM"],"aL":[],"B":["oM"],"dt":["oM"],"cE.E":"oM","a2.E":"oM","B.E":"oM"},"aGW":{"F":[],"aL":[]},"aHi":{"F":[],"aL":[]},"aHz":{"F":[],"aL":[]},"FX":{"F":[],"aL":[]},"x7":{"F":[],"aL":[]},"aMB":{"a2":["fx"],"cE":["fx"],"x":["fx"],"dK":["fx"],"F":[],"aO":["fx"],"aL":[],"B":["fx"],"dt":["fx"],"cE.E":"fx","a2.E":"fx","B.E":"fx"},"aeh":{"F":[],"qC":["eO"],"aL":[]},"aPB":{"a2":["o9?"],"cE":["o9?"],"x":["o9?"],"dK":["o9?"],"F":[],"aO":["o9?"],"aL":[],"B":["o9?"],"dt":["o9?"],"cE.E":"o9?","a2.E":"o9?","B.E":"o9?"},"agj":{"a2":["dh"],"cE":["dh"],"x":["dh"],"dK":["dh"],"F":[],"aO":["dh"],"aL":[],"B":["dh"],"dt":["dh"],"cE.E":"dh","a2.E":"dh","B.E":"dh"},"aX7":{"a2":["oD"],"cE":["oD"],"x":["oD"],"dK":["oD"],"F":[],"aO":["oD"],"aL":[],"B":["oD"],"dt":["oD"],"cE.E":"oD","a2.E":"oD","B.E":"oD"},"aXn":{"a2":["mA"],"cE":["mA"],"x":["mA"],"dK":["mA"],"F":[],"aO":["mA"],"aL":[],"B":["mA"],"dt":["mA"],"cE.E":"mA","a2.E":"mA","B.E":"mA"},"NE":{"bg":["1"],"bg.T":"1"},"aeA":{"oH":["1"]},"vC":{"F":[],"aL":[]},"I7":{"F":[],"aL":[]},"FP":{"bK":[],"F":[],"aL":[]},"a1t":{"F":[],"aL":[]},"a47":{"F":[],"aL":[]},"S_":{"F":[],"aL":[]},"a6w":{"F":[],"aL":[]},"Xf":{"vH":[]},"NY":{"uh":[]},"cyT":{"hW":["x"],"bg":["dv"]},"ET":{"U4":[],"bg":["rU"]},"NZ":{"ET":[],"U4":[],"bg":["rU"],"bg.T":"rU"},"U4":{"bg":["rU"]},"zC":{"bP":[]},"aK1":{"eS":["x","x"]},"aK2":{"aT":["x","x"],"aT.S":"x","aT.T":"x"},"n0":{"bP":[]},"a6P":{"bP":[]},"a6Q":{"bP":[]},"a6S":{"bP":[]},"aOS":{"bg":["x"],"bg.T":"x"},"aeF":{"Dj":[]},"aGN":{"bP":[]},"a3O":{"bP":[]},"aFK":{"eC":[],"eS":["f","x"]},"JI":{"a2":["1"],"x":["1"],"aO":["1"],"B":["1"],"a2.E":"1","B.E":"1"},"aAd":{"bP":[]},"qC":{"dEg":["1"]},"qj":{"F":[],"aL":[]},"qr":{"F":[],"aL":[]},"qQ":{"F":[],"aL":[]},"awR":{"a2":["qj"],"cE":["qj"],"x":["qj"],"F":[],"aO":["qj"],"aL":[],"B":["qj"],"cE.E":"qj","a2.E":"qj","B.E":"qj"},"aAg":{"a2":["qr"],"cE":["qr"],"x":["qr"],"F":[],"aO":["qr"],"aL":[],"B":["qr"],"cE.E":"qr","a2.E":"qr","B.E":"qr"},"aBI":{"F":[],"aL":[]},"aFr":{"a2":["f"],"cE":["f"],"x":["f"],"F":[],"aO":["f"],"aL":[],"B":["f"],"cE.E":"f","a2.E":"f","B.E":"f"},"aGZ":{"a2":["qQ"],"cE":["qQ"],"x":["qQ"],"F":[],"aO":["qQ"],"aL":[],"B":["qQ"],"cE.E":"qQ","a2.E":"qQ","B.E":"qQ"},"ei":{"iE":[]},"bnF":{"x":["h"],"aO":["h"],"B":["h"],"iE":[]},"dv":{"x":["h"],"aO":["h"],"B":["h"],"iE":[]},"bNJ":{"x":["h"],"aO":["h"],"B":["h"],"iE":[]},"bnD":{"x":["h"],"aO":["h"],"B":["h"],"iE":[]},"bNI":{"x":["h"],"aO":["h"],"B":["h"],"iE":[]},"bnE":{"x":["h"],"aO":["h"],"B":["h"],"iE":[]},"Wa":{"x":["h"],"aO":["h"],"B":["h"],"iE":[]},"bim":{"x":["U"],"aO":["U"],"B":["U"],"iE":[]},"bin":{"x":["U"],"aO":["U"],"B":["U"],"iE":[]},"ank":{"F":[],"aL":[]},"anl":{"F":[],"c3":["f","@"],"aL":[],"aN":["f","@"],"c3.V":"@","c3.K":"f"},"anp":{"F":[],"aL":[]},"C_":{"F":[],"aL":[]},"aAj":{"F":[],"aL":[]},"ND":{"a3":[],"c":[]},"NF":{"a3":[],"c":[]},"aEt":{"wt":[]},"aEu":{"a3":[],"c":[]},"aPf":{"aJ":["U"],"aJ.T":"U"},"OT":{"M":[],"c":[]},"aKY":{"T":["OT"]},"a09":{"a3":[],"c":[]},"yc":{"kg":["yc"],"kg.T":"yc"},"a0f":{"M":[],"c":[]},"xm":{"pm":[],"fg":[],"em":[],"eT":[]},"aoD":{"T":["a0f"]},"iY":{"B":["f"],"B.E":"f"},"a__":{"M":[],"c":[]},"an3":{"T":["a__"]},"aoJ":{"a3":[],"c":[]},"a0i":{"M":[],"c":[]},"Cf":{"aC":[]},"a0j":{"bG":[],"bl":[],"c":[]},"a0k":{"T":["a0i"]},"a1c":{"M":[],"c":[]},"Y9":{"a3":[],"c":[]},"adP":{"T":["a1c"]},"arW":{"a3":[],"c":[]},"amN":{"a3":[],"c":[]},"a5p":{"M":[],"c":[]},"afR":{"T":["a5p"]},"a5q":{"M":[],"c":[]},"afS":{"T":["a5q"]},"aza":{"a3":[],"c":[]},"Ep":{"M":[],"c":[]},"aSF":{"T":["Ep"]},"L3":{"a3":[],"c":[]},"EG":{"aC":[]},"TA":{"a3":[],"c":[]},"ac_":{"M":[],"c":[]},"akc":{"T":["ac_"]},"aFl":{"a3":[],"c":[]},"aTR":{"aC":[]},"e7":{"aN":["2","3"]},"Ng":{"Gz":["1","B<1>"],"Gz.E":"1"},"Ff":{"Gz":["1","bU<1>"],"Gz.E":"1"},"mt":{"a2":["1"],"x":["1"],"aO":["1"],"B":["1"],"a2.E":"1","B.E":"1","mt.E":"1"},"adl":{"mt":["2"],"a2":["2"],"x":["2"],"aO":["2"],"B":["2"],"a2.E":"2","B.E":"2","mt.E":"2"},"Nf":{"Ic":["1"],"bU":["1"],"NB":["1"],"aO":["1"],"B":["1"],"B.E":"1"},"NB":{"B":["1"]},"Ic":{"bU":["1"],"NB":["1"],"aO":["1"],"B":["1"],"B.E":"1"},"M2":{"bA":[]},"a9B":{"bA":[]},"Vr":{"bA":[]},"a5C":{"bA":[]},"a5D":{"bA":[]},"a4L":{"dR":[],"bA":[]},"o0":{"bA":[]},"Cp":{"bA":[]},"T6":{"dR":[],"bA":[]},"cx":{"dR":[],"bA":[]},"rm":{"bA":[]},"dR":{"bA":[]},"wa":{"bA":[]},"FW":{"bA":[]},"aGo":{"bA":[]},"aA2":{"bA":[]},"aop":{"cx":[],"dR":[],"bA":[]},"aEh":{"bA":[]},"oy":{"bA":[]},"Ix":{"oy":[],"bA":[]},"azW":{"oy":[],"bA":[]},"anj":{"oy":[],"bA":[]},"avK":{"oy":[],"bA":[]},"ape":{"oy":[],"bA":[]},"TN":{"oy":[],"bA":[]},"TO":{"oy":[],"bA":[]},"a7m":{"oy":[],"bA":[]},"aC9":{"oy":[],"bA":[]},"UR":{"bA":[]},"aA3":{"oy":[],"bA":[]},"aFv":{"bA":[]},"aGT":{"bA":[]},"aDR":{"bA":[]},"asM":{"bA":[]},"asS":{"bA":[]},"aFz":{"bA":[]},"aFx":{"bA":[]},"aFB":{"bA":[]},"aFy":{"bA":[]},"aFA":{"bA":[]},"aHF":{"bA":[]},"avY":{"bA":[]},"azg":{"bA":[]},"avu":{"bA":[]},"aAC":{"bA":[]},"aoO":{"bA":[]},"awk":{"bA":[]},"auk":{"bA":[]},"aFw":{"bA":[]},"azV":{"bA":[]},"Wm":{"bA":[]},"azH":{"bA":[]},"a5R":{"bA":[]},"azG":{"bA":[]},"a4j":{"bA":[]},"abO":{"o0":[],"bA":[]},"DF":{"o0":[],"bA":[]},"atL":{"o0":[],"bA":[]},"a5j":{"Cp":[],"bA":[]},"abP":{"dR":[],"bA":[]},"KF":{"dR":[],"bA":[]},"aAt":{"dR":[],"bA":[]},"aAs":{"dR":[],"bA":[]},"aH9":{"dR":[],"bA":[]},"nd":{"cx":[],"dR":[],"bA":[]},"Wg":{"cx":[],"dR":[],"bA":[]},"DV":{"cx":[],"dR":[],"bA":[]},"zI":{"cx":[],"dR":[],"bA":[]},"a2x":{"cx":[],"dR":[],"bA":[]},"atC":{"cx":[],"dR":[],"bA":[]},"ZT":{"cx":[],"dR":[],"bA":[]},"aGt":{"cx":[],"dR":[],"bA":[]},"auv":{"cx":[],"dR":[],"bA":[]},"auo":{"cx":[],"dR":[],"bA":[]},"Wk":{"cx":[],"dR":[],"bA":[]},"aDs":{"cx":[],"dR":[],"bA":[]},"aoK":{"cx":[],"dR":[],"bA":[]},"aCD":{"cx":[],"dR":[],"bA":[]},"awY":{"cx":[],"dR":[],"bA":[]},"aHI":{"cx":[],"dR":[],"bA":[]},"Rq":{"cx":[],"dR":[],"bA":[]},"Rb":{"cx":[],"dR":[],"bA":[]},"a43":{"cx":[],"dR":[],"bA":[]},"av2":{"dR":[],"bA":[]},"awb":{"cx":[],"dR":[],"bA":[]},"IQ":{"dR":[],"bA":[]},"R4":{"rm":[],"bA":[]},"aoc":{"rm":[],"bA":[]},"E8":{"rm":[],"bA":[]},"y4":{"rm":[],"bA":[]},"avf":{"rm":[],"bA":[]},"aJC":{"rm":[],"bA":[]},"Ev":{"rm":[],"bA":[]},"ac2":{"OY":[]},"a1N":{"cGM":[]},"p9":{"bP":[]},"a4z":{"a2":["ph"],"x":["ph"],"aO":["ph"],"B":["ph"],"a2.E":"ph","B.E":"ph"},"RG":{"ph":[]},"a2m":{"M":[],"c":[]},"aep":{"bG":[],"bl":[],"c":[]},"aO4":{"T":["a2m"]},"aO3":{"iQ":["Sn"],"iQ.T":"Sn"},"at9":{"aC":[]},"anS":{"aT":["x","f"]},"P0":{"eC":[],"eS":["f","x"]},"ao0":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Rg":{"eC":[],"eS":["f","x"]},"a3F":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"awq":{"aT":["x","f"]},"S1":{"eC":[],"eS":["f","x"]},"awo":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"S2":{"eC":[],"eS":["f","x"]},"awp":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"awG":{"aT":["x","f"]},"S3":{"eC":[],"eS":["f","x"]},"awr":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"S4":{"eC":[],"eS":["f","x"]},"aws":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"S5":{"eC":[],"eS":["f","x"]},"awt":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"S6":{"eC":[],"eS":["f","x"]},"awu":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"S7":{"eC":[],"eS":["f","x"]},"awv":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"S8":{"eC":[],"eS":["f","x"]},"aww":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"S9":{"eC":[],"eS":["f","x"]},"awy":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Sa":{"eC":[],"eS":["f","x"]},"awz":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Sb":{"eC":[],"eS":["f","x"]},"awA":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Sc":{"eC":[],"eS":["f","x"]},"awB":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Sd":{"eC":[],"eS":["f","x"]},"awC":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Se":{"eC":[],"eS":["f","x"]},"awD":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Sf":{"eC":[],"eS":["f","x"]},"awE":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Sg":{"eC":[],"eS":["f","x"]},"awF":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"aJJ":{"aT":["x","f"]},"Wy":{"eC":[],"eS":["f","x"]},"aJD":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"Wz":{"eC":[],"eS":["f","x"]},"aJE":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"WA":{"eC":[],"eS":["f","x"]},"aJF":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"WB":{"eC":[],"eS":["f","x"]},"aJG":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"WC":{"eC":[],"eS":["f","x"]},"aJH":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"WD":{"eC":[],"eS":["f","x"]},"aJI":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"aHl":{"AL":[]},"aZb":{"AL":[]},"aOr":{"AL":[]},"aHm":{"AL":[]},"abM":{"AL":[]},"FM":{"mm":["hN"]},"aHg":{"mm":["x"]},"uI":{"mm":["f"]},"ao6":{"mm":["A"]},"aoq":{"mm":["yd"]},"aus":{"mm":["Du"]},"aB8":{"mm":["rN"]},"aCo":{"mm":["aCm"]},"amT":{"mm":["ZL"]},"aCC":{"mm":["Lt"]},"aB7":{"mm":["F_"]},"Wl":{"mm":["lT"]},"aHu":{"qz":[]},"ab_":{"qz":[]},"aw6":{"qz":[]},"asc":{"qz":[]},"at6":{"qz":[]},"aH3":{"qz":[]},"amK":{"qz":[]},"anW":{"bP":[]},"awa":{"bP":[]},"RD":{"bP":[]},"y1":{"SQ":[]},"ME":{"SQ":[]},"zq":{"zr":[]},"as_":{"vK":[]},"avV":{"vK":[]},"atv":{"vK":[]},"aHC":{"vK":[]},"aCE":{"vK":[]},"apS":{"Ay":[]},"awX":{"Ay":[]},"ax_":{"Ay":[]},"azx":{"Ay":[]},"a5H":{"cwj":[],"a32":[],"vH":[]},"a5I":{"cwK":[],"a32":[],"Dj":[]},"aeG":{"hW":["x"]},"a5J":{"a32":[]},"U5":{"l0":[]},"kT":{"l0":[]},"q7":{"l0":[]},"d99":{"l0":[]},"aDH":{"kT":[],"l0":[]},"aR_":{"czT":[]},"a_y":{"M":[],"c":[]},"acS":{"T":["a_y"]},"vo":{"ch":[]},"hD":{"ch":[]},"k8":{"ch":[]},"nQ":{"ch":[]},"y0":{"ch":[]},"Ho":{"aP":["vo"],"aJ":["vo"],"aJ.T":"vo","aP.T":"vo"},"anC":{"ch":[]},"anG":{"ch":[]},"anH":{"ch":[]},"anI":{"ch":[]},"BY":{"ch":[]},"anF":{"aE":[],"c":[]},"aCH":{"J":[],"H":[],"lC":[],"ay":[]},"Do":{"ch":[]},"ru":{"ch":[]},"ta":{"ch":[]},"pe":{"ch":[]},"pE":{"ch":[]},"anv":{"ch":[]},"Mf":{"ch":[]},"aEx":{"ch":[]},"Hn":{"ch":[]},"a3g":{"ch":[]},"au7":{"ch":[]},"a39":{"ch":[]},"aGV":{"ch":[]},"a7y":{"ch":[]},"avr":{"ch":[]},"aHx":{"ch":[]},"QV":{"ch":[]},"anw":{"a3":[],"c":[]},"Me":{"M":[],"c":[]},"aiD":{"T":["Me"]},"nO":{"ch":[]},"aEy":{"eH":[],"aE":[],"c":[]},"anx":{"bD":["J","fr"],"J":[],"ap":["J","fr"],"H":[],"ay":[],"ap.1":"fr","bD.1":"fr","bD.0":"J","ap.0":"J"},"Mg":{"a3":[],"c":[]},"anP":{"ch":[]},"atY":{"ch":[]},"a3h":{"ch":[]},"atZ":{"ch":[]},"au2":{"jK":[]},"au3":{"jK":[]},"au4":{"jK":[]},"a3b":{"jK":[]},"a3c":{"jK":[]},"au8":{"jK":[]},"a3e":{"jK":[]},"a3f":{"jK":[]},"au1":{"jK":[]},"au0":{"jK":[]},"a3a":{"jK":[]},"au5":{"jK":[]},"au6":{"jK":[]},"a3d":{"jK":[]},"Ua":{"J":[],"H":[],"lC":[],"ay":[]},"au_":{"ch":[]},"a76":{"M":[],"c":[]},"aT2":{"T":["a76"]},"ww":{"ch":[]},"KY":{"aP":["ww"],"aJ":["ww"],"aJ.T":"ww","aP.T":"ww"},"aBn":{"ch":[]},"aBo":{"ch":[]},"aBm":{"eH":[],"aE":[],"c":[]},"aD0":{"bD":["J","i_"],"J":[],"ap":["J","i_"],"H":[],"lC":[],"ay":[],"ap.1":"i_","bD.1":"i_","bD.0":"J","ap.0":"J"},"a51":{"ch":[]},"Pn":{"df":[]},"aHD":{"df":[],"kK":[]},"aHE":{"df":[],"rV":[],"kK":[]},"azf":{"df":[],"rV":[],"kK":[]},"WG":{"df":[],"kK":[]},"PT":{"op":["df"],"oh":["df"],"B":["df"],"B.E":"df","oh.E":"df","op.T":"df"},"apC":{"df":[]},"a7K":{"B":["1"],"B.E":"1"},"TE":{"df":[],"rV":[],"kK":[]},"aa0":{"df":[],"rV":[],"kK":[]},"VL":{"df":[],"rV":[],"kK":[]},"t3":{"df":[]},"a61":{"cG3":[]},"a60":{"df":[]},"aBP":{"So":["ah"]},"aFS":{"So":["ah"]},"aFU":{"So":["ah"]},"Dp":{"df":[],"yT":[],"rV":[]},"aCR":{"aE":[],"c":[]},"a3E":{"J":[],"H":[],"ay":[],"he":[]},"Re":{"M":[],"c":[]},"Rf":{"T":["Re<1>"]},"zA":{"ah":[],"aC":[]},"abz":{"aC":[]},"FA":{"Ax":[]},"P4":{"yZ":["1"],"df":[],"kK":[]},"w1":{"Dp":["1"],"df":[],"yT":[],"rV":[]},"tW":{"WG":[],"df":[],"kK":[]},"HP":{"M":[],"c":[]},"aM5":{"T":["HP"]},"a0P":{"M":[],"c":[]},"adu":{"T":["a0P"]},"a0R":{"M":[],"c":[]},"aM9":{"T":["a0R"]},"aWp":{"aC":[]},"aZK":{"aC":[]},"aWq":{"aC":[]},"aZL":{"aC":[]},"Q5":{"M":[],"c":[]},"adF":{"T":["Q5<1>"]},"at5":{"bt":[],"aE":[],"c":[]},"aCN":{"J":[],"aZ":["J"],"H":[],"ay":[]},"avL":{"a3":[],"c":[]},"a0O":{"M":[],"c":[]},"ads":{"T":["a0O"]},"aZm":{"wR":[]},"apA":{"a3":[],"c":[]},"Q3":{"a3":[],"c":[]},"KU":{"cB":[]},"HX":{"cB":[]},"apU":{"a3":[],"c":[]},"aB9":{"cg":["KU"],"cg.T":"KU"},"apT":{"cg":["HX"],"cg.T":"HX"},"axi":{"a3":[],"c":[]},"aAn":{"a3":[],"c":[]},"aEc":{"a3":[],"c":[]},"aEq":{"a3":[],"c":[]},"abs":{"M":[],"c":[]},"aYH":{"T":["abs"]},"cR":{"dq":["1"],"aC":[]},"xU":{"cR":["U"],"dq":["U"],"aC":[]},"aKr":{"cR":["U"],"dq":["U"],"aC":[]},"aKs":{"cR":["U"],"dq":["U"],"aC":[]},"ZQ":{"cR":["1"],"dq":["1"],"aC":[]},"a7j":{"cR":["U"],"dq":["U"],"aC":[]},"or":{"cR":["U"],"dq":["U"],"aC":[]},"I6":{"cR":["U"],"dq":["U"],"aC":[]},"Nb":{"cR":["U"],"dq":["U"],"aC":[]},"PW":{"cR":["1"],"dq":["1"],"aC":[]},"a_9":{"cR":["1"],"dq":["1"],"aC":[]},"afE":{"kQ":[]},"a8K":{"kQ":[]},"eG":{"kQ":[]},"ab8":{"kQ":[]},"fR":{"kQ":[]},"ab7":{"kQ":[]},"o7":{"kQ":[]},"aNe":{"kQ":[]},"aP":{"aJ":["1"],"aJ.T":"1","aP.T":"1"},"fp":{"aP":["v?"],"aJ":["v?"],"aJ.T":"v?","aP.T":"v?"},"ui":{"aP":["W?"],"aJ":["W?"],"aJ.T":"W?","aP.T":"W?"},"aB":{"cR":["1"],"dq":["1"],"aC":[]},"eb":{"aJ":["1"],"aJ.T":"1"},"a8z":{"aP":["1"],"aJ":["1"],"aJ.T":"1","aP.T":"1"},"aEG":{"aP":["V?"],"aJ":["V?"],"aJ.T":"V?","aP.T":"V?"},"DL":{"aP":["h"],"aJ":["h"],"aJ.T":"h","aP.T":"h"},"PZ":{"aP":["1"],"aJ":["1"],"aJ.T":"1","aP.T":"1"},"eA":{"aJ":["U"],"aJ.T":"U"},"abD":{"aJ":["1"],"aJ.T":"1"},"a1a":{"M":[],"c":[]},"aMG":{"T":["a1a"]},"aMF":{"aC":[]},"Cm":{"M":[],"c":[]},"adN":{"T":["Cm"]},"a1b":{"M":[],"c":[]},"adO":{"T":["a1b"]},"aLU":{"aC":[]},"ez":{"v":[]},"aMK":{"uJ":[]},"aq3":{"a3":[],"c":[]},"I5":{"M":[],"c":[]},"adQ":{"T":["I5"]},"a19":{"M":[],"c":[]},"I3":{"a3":[],"c":[]},"adJ":{"M":[],"c":[]},"agP":{"M":[],"c":[]},"G1":{"i_":[],"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"adL":{"T":["a19"]},"adK":{"T":["adJ"]},"adR":{"aE":[],"c":[]},"aMM":{"bO":[],"bJ":[],"u":[]},"Yh":{"J":[],"H":[],"ay":[]},"aMI":{"a3":[],"c":[]},"aMH":{"a3":[],"c":[]},"aTO":{"T":["agP"]},"aKe":{"h7":["G1"],"bl":[],"c":[],"h7.T":"G1"},"aML":{"eH":[],"aE":[],"c":[]},"ahl":{"bD":["J","i_"],"J":[],"ap":["J","i_"],"H":[],"ay":[],"ap.1":"i_","bD.1":"i_","bD.0":"J","ap.0":"J"},"aq4":{"dW":[]},"a1s":{"bG":[],"bl":[],"c":[]},"aMQ":{"iQ":["b6"],"iQ.T":"b6"},"ask":{"b6":[]},"a1r":{"M":[],"c":[]},"adW":{"T":["a1r"]},"arN":{"a3":[],"c":[]},"Qc":{"M":[],"zV":[],"c":[]},"aP3":{"M":[],"c":[]},"aMR":{"T":["Qc"]},"aT0":{"a3":[],"c":[]},"arO":{"a3":[],"c":[]},"aL6":{"a3":[],"c":[]},"acQ":{"a3":[],"c":[]},"ajR":{"a3":[],"c":[]},"aS6":{"a3":[],"c":[]},"a1n":{"M":[],"c":[]},"adS":{"T":["a1n"]},"a1o":{"M":[],"c":[]},"adT":{"T":["a1o"]},"arR":{"a3":[],"c":[]},"aMS":{"bt":[],"aE":[],"c":[]},"ahm":{"J":[],"aZ":["J"],"H":[],"ay":[]},"nZ":{"ne":["1"],"nm":[]},"X7":{"M":[],"c":[]},"Bb":{"a1p":["1"],"iA":["1"],"hw":["1"],"dG":["1"]},"arP":{"a3":[],"c":[]},"X8":{"T":["X7<1>"]},"v3":{"lu":[]},"aMO":{"vv":[]},"a1m":{"iA":["1"],"hw":["1"],"dG":["1"]},"a1d":{"U_":["1"],"iA":["1"],"hw":["1"],"dG":["1"]},"Qd":{"M":[],"c":[]},"adU":{"wA":["Qd"],"T":["Qd"]},"a1q":{"M":[],"c":[]},"adV":{"T":["a1q"]},"aMT":{"aE":[],"c":[]},"ahn":{"J":[],"aZ":["J"],"H":[],"lC":[],"ay":[]},"Yx":{"M":[],"c":[]},"aio":{"M":[],"c":[]},"Qe":{"M":[],"c":[]},"YA":{"eH":[],"aE":[],"c":[]},"aip":{"T":["Yx<1>"]},"aW6":{"T":["aio"]},"YB":{"T":["Qe<1>"]},"Yz":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"Ym":{"bD":["J","fa"],"J":[],"ap":["J","fa"],"H":[],"ay":[],"ap.1":"fa","bD.1":"fa","bD.0":"J","ap.0":"J"},"aY7":{"aC":[]},"arS":{"uJ":[]},"adY":{"M":[],"c":[]},"arT":{"a3":[],"c":[]},"aMW":{"bt":[],"aE":[],"c":[]},"aUN":{"J":[],"aZ":["J"],"H":[],"ay":[]},"adZ":{"T":["adY"]},"aQK":{"aC":[]},"aVF":{"aC":[]},"aMJ":{"aC":[]},"ae_":{"aE":[],"c":[]},"aMV":{"bO":[],"bJ":[],"u":[]},"O3":{"bD":["J","nu"],"J":[],"ap":["J","nu"],"H":[],"ay":[],"ap.1":"nu","bD.1":"nu","bD.0":"J","ap.0":"J"},"aSo":{"bJ":[],"u":[]},"aSp":{"c":[]},"Cn":{"M":[],"c":[]},"adX":{"T":["Cn"]},"aR5":{"aC":[]},"afh":{"bG":[],"bl":[],"c":[]},"arU":{"a3":[],"c":[]},"aGO":{"aC":[]},"G8":{"p7":["x"],"jI":[]},"QP":{"G8":[],"p7":["x"],"jI":[]},"tT":{"Hf":[],"e3":[]},"atz":{"G8":[],"p7":["x"],"jI":[]},"atx":{"G8":[],"p7":["x"],"jI":[]},"aPh":{"Ii":["dl"],"jI":[]},"dq":{"aC":[]},"ka":{"aC":[]},"bm":{"dq":["1"],"aC":[]},"B9":{"aC":[]},"p7":{"jI":[]},"Ii":{"jI":[]},"asC":{"Ii":["asB"],"jI":[]},"asD":{"jI":[]},"na":{"il":[]},"ca":{"na":[],"il":[],"ca.T":"1"},"qR":{"na":[],"il":[]},"a4V":{"kZ":[]},"bN":{"B":["1"],"B.E":"1"},"z_":{"B":["1"],"B.E":"1"},"dc":{"a8":["1"]},"Rj":{"ay":[]},"a3o":{"dl":[]},"jZ":{"cX":[]},"zQ":{"cX":[]},"EH":{"cX":[]},"EI":{"cX":[]},"zP":{"cX":[]},"zS":{"cX":[]},"ng":{"cX":[]},"zR":{"cX":[]},"zM":{"cX":[]},"aKc":{"cX":[]},"aYX":{"cX":[]},"L6":{"cX":[]},"aYT":{"L6":[],"cX":[]},"Lb":{"cX":[]},"aZ3":{"Lb":[],"cX":[]},"aYZ":{"zQ":[],"cX":[]},"aYW":{"EH":[],"cX":[]},"aYY":{"EI":[],"cX":[]},"aYV":{"zP":[],"cX":[]},"L8":{"cX":[]},"aZ_":{"L8":[],"cX":[]},"aZ7":{"zS":[],"cX":[]},"Ld":{"ng":[],"cX":[]},"aZ5":{"Ld":[],"ng":[],"cX":[]},"Le":{"ng":[],"cX":[]},"aZ6":{"Le":[],"ng":[],"cX":[]},"Lc":{"ng":[],"cX":[]},"aZ4":{"Lc":[],"ng":[],"cX":[]},"aZ1":{"zR":[],"cX":[]},"La":{"cX":[]},"aZ2":{"La":[],"cX":[]},"L9":{"cX":[]},"aZ0":{"L9":[],"cX":[]},"aYU":{"zM":[],"cX":[]},"tV":{"fg":[],"em":[],"eT":[]},"ag_":{"YX":[]},"XZ":{"YX":[]},"mh":{"fg":[],"em":[],"eT":[]},"uS":{"fg":[],"em":[],"eT":[]},"qc":{"fg":[],"em":[],"eT":[]},"pm":{"fg":[],"em":[],"eT":[]},"Qy":{"fg":[],"em":[],"eT":[]},"z6":{"em":[],"eT":[]},"a5Y":{"em":[],"eT":[]},"aQa":{"zs":[]},"aPU":{"zs":[]},"avt":{"em":[],"eT":[]},"aZz":{"zs":[]},"aHy":{"em":[],"eT":[]},"aea":{"zs":[]},"asu":{"em":[],"eT":[]},"q4":{"em":[],"eT":[]},"YS":{"Bl":[]},"zt":{"em":[],"eT":[]},"em":{"eT":[]},"fg":{"em":[],"eT":[]},"TI":{"fg":[],"em":[],"eT":[]},"ul":{"fg":[],"em":[],"eT":[]},"mB":{"fg":[],"em":[],"eT":[]},"anZ":{"fg":[],"em":[],"eT":[]},"wO":{"fg":[],"em":[],"eT":[]},"wP":{"fg":[],"em":[],"eT":[]},"a_C":{"fg":[],"em":[],"eT":[]},"Nx":{"eT":[]},"aMa":{"Rh":[]},"Jq":{"le":[]},"Sz":{"le":[]},"OJ":{"a3":[],"c":[]},"JY":{"M":[],"c":[]},"agD":{"M":[],"c":[]},"agB":{"M":[],"c":[]},"afM":{"M":[],"c":[]},"afN":{"T":["afM"]},"afO":{"M":[],"c":[]},"afP":{"T":["afO"]},"amD":{"a3":[],"c":[]},"afD":{"T":["JY"]},"aK9":{"a3":[],"c":[]},"aSQ":{"T":["agD"]},"aSP":{"a3":[],"c":[]},"aSO":{"T":["agB"]},"agC":{"a3":[],"c":[]},"aRd":{"a3":[],"c":[]},"aNu":{"a3":[],"c":[]},"aKd":{"a3":[],"c":[]},"WQ":{"a3":[],"c":[]},"anz":{"a3":[],"c":[]},"a_v":{"a3":[],"c":[]},"at3":{"a3":[],"c":[]},"at2":{"a3":[],"c":[]},"ato":{"a3":[],"c":[]},"atn":{"a3":[],"c":[]},"amI":{"a3":[],"c":[]},"d1x":{"eU":[],"bG":[],"bl":[],"c":[]},"H3":{"a3":[],"c":[]},"an1":{"a3":[],"c":[]},"aKw":{"aC":[]},"Y3":{"NV":[]},"oV":{"NV":[]},"aSV":{"NV":[]},"SC":{"M":[],"c":[]},"afQ":{"T":["SC"]},"a_c":{"M":[],"zV":[],"c":[]},"Ai":{"M":[],"c":[]},"aTN":{"V":[]},"acG":{"T":["a_c"]},"aWO":{"T":["Ai"]},"aKP":{"bt":[],"aE":[],"c":[]},"aUJ":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aih":{"a3":[],"c":[]},"aOC":{"bt":[],"aE":[],"c":[]},"aht":{"J":[],"aZ":["J"],"H":[],"ay":[]},"SE":{"aP":["W?"],"aJ":["W?"],"aJ.T":"W?","aP.T":"W?"},"a5z":{"aP":["j"],"aJ":["j"],"aJ.T":"j","aP.T":"j"},"d9I":{"eU":[],"bG":[],"bl":[],"c":[]},"a_W":{"M":[],"c":[]},"aLv":{"T":["a_W"]},"aLu":{"yq":["qu"],"aC":[]},"a_Y":{"M":[],"c":[]},"NQ":{"M":[],"c":[]},"ad5":{"T":["a_Y"]},"aNU":{"a3":[],"c":[]},"aLy":{"bt":[],"aE":[],"c":[]},"ahf":{"J":[],"aZ":["J"],"H":[],"ay":[]},"XS":{"T":["NQ<1>"]},"a5X":{"iA":["1"],"hw":["1"],"dG":["1"]},"ad4":{"a3":[],"c":[]},"a7H":{"M":[],"c":[]},"aU8":{"T":["a7H"]},"aQn":{"bt":[],"aE":[],"c":[]},"ahy":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aoi":{"a3":[],"c":[]},"aLJ":{"eH":[],"aE":[],"c":[]},"aUK":{"bD":["J","fr"],"J":[],"ap":["J","fr"],"H":[],"ay":[],"ap.1":"fr","bD.1":"fr","bD.0":"J","ap.0":"J"},"a04":{"bG":[],"bl":[],"c":[]},"aQN":{"c9":["bx?"]},"p1":{"M":[],"c":[]},"adc":{"T":["p1"]},"aRV":{"fm":[],"c9":["fm"]},"aQo":{"bt":[],"aE":[],"c":[]},"ahz":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a06":{"eU":[],"bG":[],"bl":[],"c":[]},"Hy":{"M":[],"c":[]},"ae6":{"M":[],"c":[]},"age":{"M":[],"c":[]},"aeR":{"bG":[],"bl":[],"c":[]},"ae8":{"M":[],"c":[]},"ae7":{"M":[],"c":[]},"ack":{"M":[],"c":[]},"adg":{"T":["Hy"]},"aN8":{"T":["ae6"]},"agf":{"T":["age"]},"aNb":{"T":["ae8"]},"aNc":{"T":["ae7"]},"aku":{"T":["ack"]},"pZ":{"a3":[],"c":[]},"HI":{"M":[],"c":[]},"aLV":{"T":["HI"]},"aLT":{"aC":[]},"d2E":{"bG":[],"bl":[],"c":[]},"vy":{"a3":[],"c":[]},"a7E":{"M":[],"c":[]},"ah_":{"T":["a7E"]},"aQf":{"c9":["v?"]},"aLY":{"bt":[],"aE":[],"c":[]},"aUL":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aM_":{"mx":["xd","J"],"aE":[],"c":[],"mx.0":"xd","mx.1":"J"},"ahh":{"J":[],"t_":["xd","J"],"H":[],"ay":[]},"aZc":{"z9":[]},"d2I":{"eU":[],"bG":[],"bl":[],"c":[]},"jH":{"a3":[],"c":[]},"aoS":{"a3":[],"c":[]},"im":{"kI":["h"],"v":[],"kI.T":"h"},"jN":{"kI":["h"],"v":[],"kI.T":"h"},"a1z":{"M":[],"c":[]},"ae5":{"T":["a1z"]},"aVy":{"cV":["vE"],"it":["vE"],"aC":[],"cV.T":"vE"},"aVx":{"cV":["y_"],"it":["y_"],"aC":[],"cV.T":"y_"},"aN7":{"a3":[],"c":[]},"d48":{"eU":[],"bG":[],"bl":[],"c":[]},"aN5":{"m8":[]},"aNs":{"uJ":[]},"asy":{"a3":[],"c":[]},"Qr":{"a3":[],"c":[]},"OM":{"a3":[],"c":[]},"asF":{"a3":[],"c":[]},"a1L":{"U_":["1"],"iA":["1"],"hw":["1"],"dG":["1"]},"q3":{"a3":[],"c":[]},"Wn":{"a3":[],"c":[]},"d4K":{"eU":[],"bG":[],"bl":[],"c":[]},"QC":{"M":[],"c":[]},"WY":{"cB":[]},"WX":{"cB":[]},"xh":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"Xj":{"T":["QC<1>"]},"aNZ":{"eH":[],"aE":[],"c":[]},"ahq":{"bD":["J","xh"],"J":[],"ap":["J","xh"],"H":[],"ay":[],"ap.1":"xh","bD.1":"xh","bD.0":"J","ap.0":"J"},"d5d":{"eU":[],"bG":[],"bl":[],"c":[]},"ati":{"p1":[],"M":[],"c":[]},"aew":{"c9":["v?"]},"aOk":{"c9":["v?"]},"aOi":{"c9":["U"]},"aOj":{"c9":["fm?"]},"aOl":{"d6":[]},"d69":{"eU":[],"bG":[],"bl":[],"c":[]},"Dm":{"p1":[],"M":[],"c":[]},"aOV":{"p1":[],"M":[],"c":[]},"aOW":{"a3":[],"c":[]},"aOT":{"d6":[]},"aOY":{"d6":[]},"d7_":{"eU":[],"bG":[],"bl":[],"c":[]},"a3k":{"M":[],"c":[]},"a3l":{"bG":[],"bl":[],"c":[]},"aPd":{"T":["a3k"]},"aPe":{"bt":[],"aE":[],"c":[]},"aUW":{"J":[],"aZ":["J"],"H":[],"ay":[]},"yM":{"a3":[],"c":[]},"aOc":{"fm":[],"c9":["fm"]},"aLX":{"bt":[],"aE":[],"c":[]},"ahg":{"J":[],"aZ":["J"],"H":[],"ay":[]},"acF":{"cR":["1"],"dq":["1"],"aC":[]},"w8":{"a3":[],"c":[]},"air":{"M":[],"c":[]},"aWb":{"T":["air"]},"aQ2":{"p1":[],"M":[],"c":[]},"aPZ":{"c9":["v?"]},"aQ0":{"c9":["v?"]},"aQ_":{"c9":["fm?"]},"aQ1":{"d6":[]},"aOX":{"d6":[]},"aOZ":{"d6":[]},"aSK":{"d6":[]},"a44":{"eU":[],"bG":[],"bl":[],"c":[]},"JA":{"M":[],"c":[]},"afo":{"T":["JA"]},"a4p":{"wd":[]},"DJ":{"DM":[],"wd":[]},"aQj":{"z9":[]},"a4q":{"DM":[],"wd":[]},"aQk":{"z9":[]},"a4r":{"DM":[],"wd":[]},"DM":{"wd":[]},"agF":{"bG":[],"bl":[],"c":[]},"afn":{"M":[],"c":[]},"RP":{"a3":[],"c":[]},"RO":{"a3":[],"c":[]},"afm":{"T":["afn"],"cA7":[]},"qe":{"eX":[]},"aSe":{"qe":[],"eX":[]},"uQ":{"qe":[],"eX":[]},"ml":{"qe":[],"eX":[]},"DK":{"a3":[],"c":[]},"a4s":{"M":[],"c":[]},"afr":{"T":["a4s"]},"ad3":{"M":[],"c":[]},"af2":{"M":[],"c":[]},"JC":{"M":[],"c":[]},"afp":{"aC":[]},"afq":{"aP":["qe"],"aJ":["qe"],"aJ.T":"qe","aP.T":"qe"},"aQl":{"aC":[]},"aLs":{"T":["ad3"]},"aWs":{"M":[],"c":[]},"af3":{"T":["af2"]},"ahp":{"J":[],"t_":["lV","J"],"H":[],"ay":[]},"aNj":{"mx":["lV","J"],"aE":[],"c":[],"mx.0":"lV","mx.1":"J"},"acz":{"a3":[],"c":[]},"afs":{"T":["JC"]},"hX":{"a3":[],"c":[]},"aQe":{"c9":["v?"]},"aR1":{"mx":["v7","J"],"aE":[],"c":[],"mx.0":"v7","mx.1":"J"},"ahC":{"J":[],"t_":["v7","J"],"H":[],"ay":[]},"K3":{"eU":[],"bG":[],"bl":[],"c":[]},"aaY":{"M":[],"c":[]},"ajt":{"T":["aaY"]},"axf":{"a3":[],"c":[]},"a5m":{"M":[],"c":[]},"ahx":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Mb":{"aP":["eX?"],"aJ":["eX?"],"aJ.T":"eX?","aP.T":"eX?"},"afT":{"M":[],"c":[]},"aRj":{"T":["a5m"]},"aQi":{"bt":[],"aE":[],"c":[]},"aRf":{"T":["afT"]},"aiz":{"a3":[],"c":[]},"aWt":{"aC":[]},"a5o":{"a3":[],"c":[]},"aRg":{"iQ":["b0"],"iQ.T":"b0"},"asm":{"b0":[]},"E9":{"bm":["bU"],"dq":["bU"],"aC":[]},"az6":{"v":[],"c9":["v"]},"XP":{"v":[],"c9":["v"]},"az7":{"fm":[],"c9":["fm"]},"aey":{"fm":[],"c9":["fm"]},"az5":{"bx":[],"c9":["bx?"]},"afV":{"bx":[],"c9":["bx?"]},"az8":{"a4":[],"c9":["a4"]},"aRk":{"a4":[],"c9":["a4"]},"afC":{"c9":["1?"]},"by":{"c9":["1"]},"bS":{"c9":["1"]},"a5K":{"M":[],"c":[]},"xl":{"T":["a5K"]},"SI":{"M":[],"c":[]},"ag2":{"bG":[],"bl":[],"c":[]},"ag7":{"M":[],"c":[]},"YQ":{"a3":[],"c":[]},"ag5":{"T":["SI"]},"a1Q":{"cg":["mX"],"cg.T":"mX"},"aRI":{"cg":["rQ"],"cg.T":"rQ"},"aRF":{"cg":["rI"],"cg.T":"rI"},"aRw":{"cg":["o2"],"cg.T":"o2"},"azk":{"bG":[],"bl":[],"c":[]},"aRB":{"a3":[],"c":[]},"aRG":{"T":["ag7"]},"aRU":{"fm":[],"c9":["fm"]},"aRq":{"fz":[]},"aRr":{"d6":[]},"aRv":{"fz":[]},"da0":{"eU":[],"bG":[],"bl":[],"c":[]},"da2":{"eU":[],"bG":[],"bl":[],"c":[]},"aQP":{"c9":["bx?"]},"da5":{"eU":[],"bG":[],"bl":[],"c":[]},"Kz":{"a3":[],"c":[]},"ago":{"M":[],"c":[]},"NT":{"bG":[],"bl":[],"c":[]},"Gt":{"M":[],"c":[]},"ae0":{"M":[],"c":[]},"aA_":{"a3":[],"c":[]},"aS7":{"T":["ago"]},"afe":{"a3":[],"c":[]},"aA0":{"a3":[],"c":[]},"aS2":{"a3":[],"c":[]},"aNt":{"a3":[],"c":[]},"aS3":{"a3":[],"c":[]},"aS4":{"a3":[],"c":[]},"YL":{"M":[],"c":[]},"aWa":{"T":["Gt"]},"ae1":{"T":["ae0"]},"dar":{"eU":[],"bG":[],"bl":[],"c":[]},"a6b":{"M":[],"c":[]},"agp":{"T":["a6b"]},"aU2":{"a3":[],"c":[]},"afd":{"a3":[],"c":[]},"WS":{"a3":[],"c":[]},"aOK":{"bG":[],"bl":[],"c":[]},"dau":{"eU":[],"bG":[],"bl":[],"c":[]},"Er":{"p1":[],"M":[],"c":[]},"aSI":{"p1":[],"M":[],"c":[]},"aSJ":{"a3":[],"c":[]},"aSG":{"d6":[]},"daJ":{"eU":[],"bG":[],"bl":[],"c":[]},"Kd":{"Ke":["1"],"iA":["1"],"hw":["1"],"dG":["1"]},"u6":{"ne":["1"],"nm":[]},"agE":{"Ke":["1"],"iA":["1"],"hw":["1"],"dG":["1"]},"GC":{"M":[],"c":[]},"GD":{"M":[],"c":[]},"aON":{"a3":[],"c":[]},"b_l":{"a3":[],"c":[]},"b_j":{"T":["GC"]},"b_k":{"T":["GD"]},"aK3":{"wt":[]},"arQ":{"wt":[]},"akx":{"aC":[]},"aky":{"aC":[]},"TC":{"M":[],"c":[]},"a7d":{"TC":["1"],"M":[],"c":[]},"aRA":{"bt":[],"aE":[],"c":[]},"aV_":{"J":[],"aZ":["J"],"H":[],"ay":[]},"TD":{"T":["2"]},"agM":{"a3":[],"c":[]},"agN":{"iA":["1"],"hw":["1"],"dG":["1"]},"aOd":{"fm":[],"c9":["fm"]},"dby":{"eU":[],"bG":[],"bl":[],"c":[]},"E_":{"M":[],"c":[]},"p2":{"M":[],"c":[]},"aC_":{"M":[],"c":[]},"aQY":{"aC":[]},"aQZ":{"T":["E_"]},"X2":{"aC":[]},"ado":{"T":["p2"]},"aUG":{"aC":[]},"a7N":{"M":[],"c":[]},"aUH":{"T":["p2"]},"dbN":{"eU":[],"bG":[],"bl":[],"c":[]},"a7C":{"M":[],"c":[]},"agZ":{"T":["a7C"]},"aU5":{"aE":[],"c":[]},"ahM":{"J":[],"H":[],"ay":[]},"aZt":{"aE":[],"c":[]},"aVp":{"J":[],"H":[],"ay":[]},"a7L":{"M":[],"c":[]},"a7M":{"T":["a7L"]},"a8N":{"M":[],"c":[]},"ai7":{"bG":[],"bl":[],"c":[]},"aeK":{"M":[],"c":[]},"a8L":{"M":[],"c":[]},"UG":{"T":["a8L"]},"djh":{"M":[],"c":[]},"ai9":{"bG":[],"bl":[],"c":[]},"a8O":{"T":["a8N"]},"aVS":{"dq":["UF"],"aC":[]},"ad_":{"aG":[]},"aLn":{"a3":[],"c":[]},"aeL":{"T":["aeK"]},"aNA":{"cg":["mX"],"cg.T":"mX"},"XO":{"M":[],"c":[]},"aE8":{"a3":[],"c":[]},"aRi":{"wA":["XO"],"T":["XO"]},"dcX":{"eU":[],"bG":[],"bl":[],"c":[]},"Yv":{"M":[],"c":[]},"ain":{"iA":["1"],"hw":["1"],"dG":["1"]},"Yw":{"T":["Yv<1>"]},"aQO":{"c9":["bx?"]},"Fa":{"M":[],"c":[]},"a96":{"T":["Fa<1>"]},"aiq":{"eH":[],"aE":[],"c":[]},"Yy":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"Yl":{"bD":["J","fa"],"J":[],"ap":["J","fa"],"H":[],"ay":[],"ap.1":"fa","bD.1":"fa","bD.0":"J","ap.0":"J"},"dd7":{"eU":[],"bG":[],"bl":[],"c":[]},"LZ":{"M":[],"c":[]},"aYg":{"eZ":[],"bm":["cu"],"dq":["cu"],"aC":[]},"ait":{"T":["LZ"]},"a9a":{"M":[],"c":[]},"aWe":{"T":["a9a"]},"Fk":{"M":[],"c":[]},"v_":{"cB":[]},"aiG":{"T":["Fk"]},"aWJ":{"aE":[],"c":[]},"Yn":{"J":[],"H":[],"ay":[]},"aZs":{"aE":[],"c":[]},"aVo":{"J":[],"H":[],"ay":[]},"a9N":{"eU":[],"bG":[],"bl":[],"c":[]},"Vb":{"M":[],"c":[]},"aiJ":{"T":["Vb"]},"VA":{"a3":[],"c":[]},"afX":{"M":[],"c":[]},"afY":{"T":["afX"]},"ajb":{"aC":[]},"aXz":{"xP":["uB"],"xP.T":"uB"},"aXx":{"uB":[]},"aXy":{"uB":[]},"dev":{"bG":[],"bl":[],"c":[]},"ajg":{"bG":[],"bl":[],"c":[]},"a1F":{"M":[],"c":[]},"VG":{"aC":[]},"aNm":{"T":["a1F"]},"FK":{"lu":[]},"aZd":{"vv":[]},"qL":{"a3":[],"zV":[],"c":[]},"aaB":{"M":[],"zV":[],"c":[]},"aaC":{"M":[],"c":[]},"aXJ":{"M":[],"c":[]},"aXI":{"bD":["J","fr"],"J":[],"ap":["J","fr"],"H":[],"ay":[],"ap.1":"fr","bD.1":"fr","bD.0":"J","ap.0":"J"},"aXH":{"eH":[],"aE":[],"c":[]},"aNC":{"aC":[]},"aff":{"aC":[]},"aLS":{"cR":["U"],"dq":["U"],"aC":[]},"Xh":{"cR":["U"],"dq":["U"],"aC":[]},"ajd":{"nn":[],"iF":[],"aC":[],"l8":[]},"aXF":{"fh":[],"aC":[]},"aje":{"T":["aaB"]},"ajf":{"T":["aaC"]},"VI":{"p1":[],"M":[],"c":[]},"ajq":{"c9":["v?"]},"aXY":{"c9":["v?"]},"aXX":{"c9":["fm?"]},"aY0":{"p1":[],"M":[],"c":[]},"aY1":{"a3":[],"c":[]},"aXZ":{"d6":[]},"aaQ":{"eU":[],"bG":[],"bl":[],"c":[]},"aaT":{"M":[],"c":[]},"ajr":{"T":["aaT"],"xZ":[]},"aaU":{"yR":["f"],"M":[],"c":[],"yR.T":"f"},"YT":{"q9":["f"],"T":["yR"]},"az9":{"uJ":[]},"aY6":{"aC":[]},"df8":{"eU":[],"bG":[],"bl":[],"c":[]},"ajx":{"M":[],"c":[]},"aGf":{"a3":[],"c":[]},"aYd":{"T":["ajx"]},"aYe":{"bt":[],"aE":[],"c":[]},"aYf":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aYa":{"eH":[],"aE":[],"c":[]},"aYb":{"bO":[],"bJ":[],"u":[]},"aVn":{"J":[],"ap":["J","nu"],"H":[],"ay":[],"ap.1":"nu","ap.0":"J"},"aY9":{"a3":[],"c":[]},"aYc":{"a3":[],"c":[]},"aGh":{"a3":[],"c":[]},"afl":{"eU":[],"bG":[],"bl":[],"c":[]},"MI":{"aP":["nr"],"aJ":["nr"],"aJ.T":"nr","aP.T":"nr"},"a_5":{"M":[],"c":[]},"pC":{"a3":[],"c":[]},"aKH":{"T":["a_5"]},"W3":{"aC":[]},"N8":{"M":[],"c":[]},"N9":{"T":["N8"]},"aOB":{"bt":[],"aE":[],"c":[]},"aUR":{"J":[],"aZ":["J"],"H":[],"lC":[],"ay":[]},"aYI":{"a3":[],"c":[]},"dfN":{"eU":[],"bG":[],"bl":[],"c":[]},"ws":{"kg":["cyd"],"kg.T":"cyd"},"fF":{"jE":[]},"kE":{"jE":[]},"agb":{"jE":[]},"a6J":{"lH":[]},"aXD":{"aC":[]},"iS":{"eX":[]},"tg":{"eX":[]},"eR":{"eX":[]},"aob":{"eX":[]},"ls":{"eX":[]},"c_":{"lu":[]},"aLA":{"vv":[]},"f5":{"Fg":[]},"kc":{"iS":[],"eX":[]},"kI":{"v":[],"kI.T":"1"},"acY":{"Qn":[]},"af":{"h5":[]},"eB":{"h5":[]},"Gi":{"h5":[]},"J2":{"fF":[],"jE":[]},"cyd":{"kg":["cyd"]},"wo":{"kg":["wo"],"kg.T":"wo"},"anh":{"kg":["vm"]},"aA5":{"bP":[]},"Hg":{"kg":["vm"],"kg.T":"vm"},"aBr":{"ki":[]},"fn":{"iS":[],"eX":[]},"nC":{"iS":[],"eX":[]},"lJ":{"lu":[]},"aiA":{"vv":[]},"oE":{"iS":[],"eX":[]},"nE":{"iS":[],"eX":[]},"nF":{"iS":[],"eX":[]},"WF":{"pA":[]},"aZl":{"pA":[]},"li":{"bLp":[]},"wS":{"ki":[],"lC":[],"ay":[]},"a7U":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Ul":{"lH":[],"ay":[]},"acX":{"aC":[]},"aNl":{"zJ":[]},"aVC":{"A3":[],"aZ":["J"],"H":[],"ay":[]},"ty":{"z1":[]},"fa":{"hf":[],"f6":["1"],"dT":[]},"J":{"H":[],"ay":[]},"y7":{"oa":["J"]},"hf":{"dT":[]},"i_":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"a7Y":{"bD":["J","i_"],"J":[],"ap":["J","i_"],"H":[],"ay":[],"ap.1":"i_","bD.1":"i_","bD.0":"J","ap.0":"J"},"arY":{"aC":[]},"a7Z":{"J":[],"aZ":["J"],"H":[],"ay":[]},"EW":{"aC":[]},"Lw":{"J":[],"ap":["J","pB"],"H":[],"ay":[],"ap.1":"pB","ap.0":"J"},"aUP":{"J":[],"H":[],"ay":[]},"ajs":{"EW":[],"aC":[]},"adi":{"EW":[],"aC":[]},"X3":{"EW":[],"aC":[]},"a80":{"J":[],"H":[],"ay":[]},"fr":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"Lx":{"bD":["J","fr"],"J":[],"ap":["J","fr"],"H":[],"ay":[],"ap.1":"fr","bD.1":"fr","bD.0":"J","ap.0":"J"},"a85":{"J":[],"H":[],"ay":[]},"kJ":{"iP":[]},"HO":{"kJ":[],"iP":[]},"PG":{"kJ":[],"iP":[]},"PK":{"kJ":[],"iP":[]},"x1":{"u8":[],"kJ":[],"iP":[]},"T5":{"u8":[],"kJ":[],"iP":[]},"a4S":{"kJ":[],"iP":[]},"OQ":{"kJ":[],"iP":[]},"aBl":{"iP":[]},"aGm":{"iP":[]},"aBA":{"iP":[]},"u8":{"kJ":[],"iP":[]},"a0J":{"kJ":[],"iP":[]},"a49":{"u8":[],"kJ":[],"iP":[]},"a_w":{"kJ":[],"iP":[]},"a3t":{"kJ":[],"iP":[]},"wi":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"a88":{"bD":["J","wi"],"J":[],"ap":["J","wi"],"H":[],"ay":[],"ap.1":"wi","bD.1":"wi","bD.0":"J","ap.0":"J"},"zf":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"Ue":{"J":[],"ap":["J","zf"],"EV":[],"H":[],"ay":[],"ap.1":"zf","ap.0":"J"},"azO":{"aC":[]},"H":{"ay":[]},"f6":{"dT":[]},"aVH":{"oS":[]},"afc":{"oS":[]},"Of":{"oS":[]},"zK":{"up":[]},"pB":{"f6":["J"],"dT":[]},"Bg":{"l9":[],"dq":["ox"],"aC":[]},"LB":{"J":[],"ap":["J","pB"],"H":[],"ay":[],"ap.1":"pB","ap.0":"J"},"agJ":{"fg":[],"em":[],"eT":[]},"aBE":{"J":[],"H":[],"lC":[],"ay":[]},"a7S":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Ad":{"yq":["qu"],"aC":[]},"a7R":{"J":[],"aZ":["J"],"H":[],"ay":[]},"A0":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aD2":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8f":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Lv":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCV":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a7W":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Ud":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a87":{"J":[],"aZ":["J"],"H":[],"ay":[]},"LA":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCG":{"J":[],"aZ":["J"],"H":[],"ay":[]},"yq":{"aC":[]},"Yi":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCL":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCK":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCJ":{"J":[],"aZ":["J"],"H":[],"ay":[]},"ahJ":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCY":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCZ":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCM":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aDj":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a81":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCQ":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aD1":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a89":{"J":[],"aZ":["J"],"H":[],"lC":[],"ay":[]},"aD3":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a84":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8b":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Uf":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8h":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCI":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCW":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCO":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCS":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCU":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCP":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a7V":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8g":{"da":[],"aZ":["da"],"H":[],"ay":[]},"l9":{"dq":["ox"],"aC":[]},"EX":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8c":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aCF":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8e":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a7X":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a83":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8_":{"J":[],"aZ":["J"],"H":[],"ay":[]},"V9":{"z1":[]},"Ak":{"Al":[],"f6":["da"],"dT":[]},"qI":{"qJ":[],"f6":["da"],"dT":[]},"da":{"H":[],"ay":[]},"aER":{"oa":["da"]},"Al":{"dT":[]},"qJ":{"dT":[]},"aDh":{"da":[],"aZ":["J"],"H":[],"ay":[]},"aDi":{"da":[],"aZ":["J"],"H":[],"ay":[]},"aD6":{"A2":[],"da":[],"ap":["J","lL"],"H":[],"ay":[],"ap.1":"lL","ap.0":"J"},"aD5":{"da":[],"aZ":["J"],"H":[],"ay":[]},"aD7":{"A2":[],"da":[],"ap":["J","lL"],"H":[],"ay":[]},"V8":{"lL":[],"Al":[],"f6":["J"],"u2":[],"dT":[]},"aD9":{"A2":[],"da":[],"ap":["J","lL"],"H":[],"ay":[],"ap.1":"lL","ap.0":"J"},"aDa":{"A2":[],"da":[],"ap":["J","lL"],"H":[],"ay":[],"ap.1":"lL","ap.0":"J"},"u2":{"dT":[]},"lL":{"Al":[],"f6":["J"],"u2":[],"dT":[]},"A2":{"da":[],"ap":["J","lL"],"H":[],"ay":[]},"a8k":{"da":[],"aZ":["da"],"H":[],"ay":[]},"aDd":{"da":[],"aZ":["da"],"H":[],"ay":[]},"A1":{"da":[],"aZ":["J"],"H":[],"ay":[]},"aDe":{"da":[],"aZ":["J"],"H":[],"ay":[]},"aDg":{"da":[],"aZ":["J"],"H":[],"ay":[]},"a8l":{"da":[],"aZ":["J"],"H":[],"ay":[]},"aD8":{"A1":[],"da":[],"aZ":["J"],"H":[],"ay":[]},"jv":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"Uh":{"bD":["J","jv"],"J":[],"ap":["J","jv"],"H":[],"ay":[],"ap.1":"jv","bD.1":"jv","bD.0":"J","ap.0":"J"},"a86":{"bD":["J","jv"],"J":[],"ap":["J","jv"],"H":[],"ay":[],"ap.1":"jv","bD.1":"jv","bD.0":"J","ap.0":"J"},"Fu":{"hf":[],"dT":[]},"QZ":{"VH":[]},"Ui":{"J":[],"H":[],"ay":[]},"aGl":{"J":[],"H":[],"ay":[]},"BN":{"aP":["jE?"],"aJ":["jE?"],"aJ.T":"jE?","aP.T":"jE?"},"ON":{"aP":["fF"],"aJ":["fF"],"aJ.T":"fF","aP.T":"fF"},"A3":{"aZ":["J"],"H":[],"ay":[]},"Uk":{"pH":["1"],"J":[],"ap":["da","1"],"EV":[],"H":[],"ay":[]},"LD":{"pH":["qI"],"J":[],"ap":["da","qI"],"EV":[],"H":[],"ay":[],"ap.1":"qI","pH.0":"qI","ap.0":"da"},"aD4":{"pH":["Ak"],"J":[],"ap":["da","Ak"],"EV":[],"H":[],"ay":[],"ap.1":"Ak","pH.0":"Ak","ap.0":"da"},"iF":{"aC":[]},"x8":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"a8n":{"bD":["J","x8"],"J":[],"ap":["J","x8"],"H":[],"ay":[],"ap.1":"x8","bD.1":"x8","bD.0":"J","ap.0":"J"},"MK":{"a8":["~"]},"ab9":{"bP":[]},"AQ":{"cT":["AQ"]},"va":{"cT":["va"]},"Bm":{"cT":["Bm"]},"US":{"cT":["US"]},"aWj":{"Ii":["fZ"],"jI":[]},"a9f":{"aC":[]},"Eq":{"cT":["US"]},"Nu":{"b4b":[]},"aL_":{"uG":[]},"UV":{"lH":[]},"rx":{"n9":[]},"JN":{"n9":[]},"DS":{"n9":[]},"ok":{"bP":[]},"SR":{"bP":[]},"wL":{"fm":[]},"aNp":{"fm":[]},"aSj":{"ST":[]},"aSi":{"fm":[]},"aXE":{"ST":[]},"ES":{"zZ":[]},"U2":{"zZ":[]},"a8w":{"aC":[]},"Pr":{"pA":[]},"Sh":{"pA":[]},"a6M":{"pA":[]},"Ik":{"pA":[]},"aG1":{"Fy":[]},"aG0":{"Fy":[]},"aG2":{"Fy":[]},"VM":{"Fy":[]},"QX":{"wR":[]},"awQ":{"wR":[]},"aT7":{"aaX":[]},"NL":{"L1":[]},"aBx":{"a3":[],"c":[]},"xO":{"M":[],"c":[]},"acw":{"bG":[],"bl":[],"c":[]},"IX":{"M":[],"c":[]},"czD":{"cB":[]},"d4N":{"cB":[]},"d4M":{"cB":[]},"OL":{"cB":[]},"Pj":{"cB":[]},"mX":{"cB":[]},"zX":{"cB":[]},"fb":{"cg":["1"]},"ej":{"cg":["1"],"cg.T":"1"},"acx":{"T":["xO"]},"aeQ":{"T":["IX"]},"aHK":{"cg":["czD"],"cg.T":"czD"},"a1W":{"cg":["cB"],"cg.T":"cB"},"asP":{"cg":["mX"]},"aBZ":{"fb":["zX"],"cg":["zX"],"cg.T":"zX","fb.T":"zX"},"agy":{"alb":["1"],"fb":["1"],"Y1":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"agz":{"alc":["1"],"fb":["1"],"Y1":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"adC":{"cg":["1"],"cg.T":"1"},"Ly":{"aE":[],"c":[]},"Lz":{"bO":[],"bJ":[],"u":[]},"H7":{"M":[],"c":[]},"aKu":{"T":["H7"]},"a_3":{"M":[],"c":[]},"aKF":{"T":["a_3"]},"aKE":{"bt":[],"aE":[],"c":[]},"xT":{"M":[],"c":[]},"acE":{"T":["xT"]},"a_a":{"bt":[],"aE":[],"c":[]},"Ww":{"M":[],"c":[]},"akl":{"T":["Ww"],"he":[]},"wK":{"M":[],"c":[]},"Mq":{"wK":["1","f4<1>"],"M":[],"c":[],"wK.T":"1","wK.S":"f4<1>"},"Rc":{"M":[],"c":[]},"aiZ":{"T":["wK<1,2>"]},"aeW":{"T":["Rc<1>"]},"Hl":{"M":[],"c":[]},"acN":{"bG":[],"bl":[],"c":[]},"ans":{"T":["Hl"]},"Hm":{"M":[],"c":[]},"JL":{"l1":[]},"acO":{"T":["Hm"]},"a4J":{"aC":[]},"aSq":{"a3":[],"c":[]},"rn":{"bG":[],"bl":[],"c":[]},"yg":{"bt":[],"aE":[],"c":[]},"PF":{"bt":[],"aE":[],"c":[]},"t7":{"bt":[],"aE":[],"c":[]},"yj":{"bt":[],"aE":[],"c":[]},"PV":{"bt":[],"aE":[],"c":[]},"aA":{"bt":[],"aE":[],"c":[]},"fl":{"bt":[],"aE":[],"c":[]},"k9":{"bt":[],"aE":[],"c":[]},"q1":{"bt":[],"aE":[],"c":[]},"JS":{"h7":["i_"],"bl":[],"c":[],"h7.T":"i_"},"yr":{"eH":[],"aE":[],"c":[]},"ba":{"bt":[],"aE":[],"c":[]},"d4":{"eH":[],"aE":[],"c":[]},"uf":{"h7":["jv"],"bl":[],"c":[],"h7.T":"jv"},"Dq":{"eH":[],"aE":[],"c":[]},"F0":{"eH":[],"aE":[],"c":[]},"yi":{"eH":[],"aE":[],"c":[]},"rq":{"h7":["fr"],"bl":[],"c":[],"h7.T":"fr"},"LJ":{"eH":[],"aE":[],"c":[]},"d4h":{"bG":[],"bl":[],"c":[]},"Ef":{"bt":[],"aE":[],"c":[]},"Rx":{"bt":[],"aE":[],"c":[]},"bX":{"bt":[],"aE":[],"c":[]},"P2":{"bt":[],"aE":[],"c":[]},"e_":{"a3":[],"c":[]},"Fo":{"M":[],"c":[]},"aZ9":{"mc":[],"bJ":[],"u":[]},"aZa":{"bG":[],"bl":[],"c":[]},"T4":{"bt":[],"aE":[],"c":[]},"anA":{"bt":[],"aE":[],"c":[]},"a1u":{"bt":[],"aE":[],"c":[]},"apl":{"bt":[],"aE":[],"c":[]},"aBi":{"bt":[],"aE":[],"c":[]},"aBj":{"bt":[],"aE":[],"c":[]},"a35":{"bt":[],"aE":[],"c":[]},"aup":{"bt":[],"aE":[],"c":[]},"fI":{"bt":[],"aE":[],"c":[]},"a0Y":{"bt":[],"aE":[],"c":[]},"aH5":{"a3":[],"c":[]},"auq":{"bt":[],"aE":[],"c":[]},"awV":{"bt":[],"aE":[],"c":[]},"Eo":{"bt":[],"aE":[],"c":[]},"aSE":{"bO":[],"bJ":[],"u":[]},"tu":{"bt":[],"aE":[],"c":[]},"aw9":{"bt":[],"aE":[],"c":[]},"aw8":{"bt":[],"aE":[],"c":[]},"ht":{"bt":[],"aE":[],"c":[]},"wI":{"bt":[],"aE":[],"c":[]},"ax0":{"eH":[],"aE":[],"c":[]},"aw2":{"a3":[],"c":[]},"ah0":{"eH":[],"aE":[],"c":[]},"aQc":{"bO":[],"bJ":[],"u":[]},"aBR":{"a3":[],"c":[]},"iO":{"h7":["fr"],"bl":[],"c":[],"h7.T":"fr"},"aJM":{"eH":[],"aE":[],"c":[]},"aCq":{"aE":[],"c":[]},"ax4":{"bt":[],"aE":[],"c":[]},"iU":{"bt":[],"aE":[],"c":[]},"amE":{"bt":[],"aE":[],"c":[]},"a5P":{"bt":[],"aE":[],"c":[]},"zo":{"bt":[],"aE":[],"c":[]},"pa":{"bt":[],"aE":[],"c":[]},"Jy":{"bt":[],"aE":[],"c":[]},"hI":{"a3":[],"c":[]},"aXc":{"T":["Fo"]},"m7":{"bt":[],"aE":[],"c":[]},"ahi":{"J":[],"aZ":["J"],"H":[],"ay":[]},"ac5":{"lH":[],"ay":[]},"a8C":{"c":[]},"a8A":{"bJ":[],"u":[]},"aHT":{"lH":[],"ay":[]},"apx":{"bt":[],"aE":[],"c":[]},"adt":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Ib":{"bt":[],"aE":[],"c":[]},"yl":{"a3":[],"c":[]},"aNg":{"yq":["qu"],"aC":[]},"Cq":{"eU":[],"bG":[],"bl":[],"c":[]},"aSr":{"a3":[],"c":[]},"asp":{"a3":[],"c":[]},"Cs":{"M":[],"c":[]},"aef":{"T":["Cs"]},"Qv":{"a3":[],"c":[]},"vN":{"M":[],"c":[]},"QA":{"M":[],"c":[]},"xg":{"T":["QA<1>"]},"a59":{"vN":["1"],"M":[],"c":[]},"Xi":{"T":["vN<1>"]},"a2a":{"M":[],"c":[]},"Ip":{"nv":[],"l1":[]},"cOR":{"aC":[]},"dig":{"n7":["cOR"],"bG":[],"bl":[],"c":[],"n7.T":"cOR"},"aNX":{"T":["a2a"]},"aNW":{"fh":[],"aC":[]},"NC":{"nn":[],"iF":[],"aC":[],"l8":[]},"Cw":{"M":[],"c":[]},"aeo":{"T":["Cw"]},"eZ":{"bm":["cu"],"dq":["cu"],"aC":[]},"QF":{"M":[],"c":[]},"vP":{"T":["QF"],"he":[],"xZ":[]},"aid":{"M":[],"c":[]},"O6":{"kt":[],"ki":[]},"aMc":{"bt":[],"aE":[],"c":[]},"aUM":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aeq":{"eH":[],"aE":[],"c":[]},"aVZ":{"T":["aid"],"cLX":[]},"aM4":{"pA":[]},"AV":{"fb":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"ak2":{"fb":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"ak3":{"fb":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"aW9":{"fb":["qG"],"cg":["qG"],"cg.T":"qG","fb.T":"qG"},"aMy":{"fb":["p6"],"cg":["p6"],"cg.T":"p6","fb.T":"p6"},"aZJ":{"bm":["Ch"],"dq":["Ch"],"aC":[],"he":[]},"hG":{"aC":[]},"yO":{"hG":[],"aC":[]},"a3q":{"aC":[]},"yN":{"M":[],"c":[]},"R2":{"M":[],"c":[]},"aeO":{"n7":["hG"],"bG":[],"bl":[],"c":[],"n7.T":"hG"},"Xp":{"T":["yN"]},"aPp":{"T":["yN"]},"a2T":{"a3":[],"c":[]},"a3r":{"M":[],"c":[]},"cyK":{"cB":[]},"rI":{"cB":[]},"rQ":{"cB":[]},"o2":{"cB":[]},"aeP":{"hG":[],"aC":[]},"aPq":{"T":["a3r"]},"aDr":{"cg":["cyK"],"cg.T":"cyK"},"T1":{"cg":["rI"],"cg.T":"rI"},"TH":{"cg":["rQ"],"cg.T":"rQ"},"Ij":{"cg":["o2"],"cg.T":"o2"},"J1":{"M":[],"c":[]},"R7":{"T":["J1"]},"aeT":{"bG":[],"bl":[],"c":[]},"yR":{"M":[],"c":[]},"q9":{"T":["yR<1>"]},"KD":{"na":[],"il":[]},"kW":{"il":[]},"aR":{"kW":["1"],"il":[]},"a3":{"c":[]},"M":{"c":[]},"aE":{"c":[]},"bt":{"aE":[],"c":[]},"bJ":{"u":[]},"mz":{"bJ":[],"u":[]},"EA":{"bJ":[],"u":[]},"mc":{"bJ":[],"u":[]},"yW":{"kW":["1"],"il":[]},"bl":{"c":[]},"h7":{"bl":[],"c":[]},"bG":{"bl":[],"c":[]},"awN":{"aE":[],"c":[]},"eH":{"aE":[],"c":[]},"a2K":{"aE":[],"c":[]},"a0U":{"bJ":[],"u":[]},"Vj":{"bJ":[],"u":[]},"a7k":{"bJ":[],"u":[]},"bO":{"bJ":[],"u":[]},"awM":{"bO":[],"bJ":[],"u":[]},"a9D":{"bO":[],"bJ":[],"u":[]},"qp":{"bO":[],"bJ":[],"u":[]},"aDk":{"bO":[],"bJ":[],"u":[]},"aSn":{"bJ":[],"u":[]},"aSs":{"c":[]},"mu":{"M":[],"c":[]},"U1":{"T":["mu"]},"dE":{"Ja":["1"]},"auK":{"a3":[],"c":[]},"aPE":{"bt":[],"aE":[],"c":[]},"z0":{"M":[],"c":[]},"Xw":{"T":["z0"]},"Jf":{"wq":[]},"b_":{"a3":[],"c":[]},"Jr":{"eU":[],"bG":[],"bl":[],"c":[]},"z4":{"M":[],"c":[]},"afa":{"T":["z4"],"he":[]},"Hu":{"aP":["aG"],"aJ":["aG"],"aJ.T":"aG","aP.T":"aG"},"yt":{"aP":["lu"],"aJ":["lu"],"aJ.T":"lu","aP.T":"lu"},"yE":{"aP":["h5"],"aJ":["h5"],"aJ.T":"h5","aP.T":"h5"},"Hs":{"aP":["dJ?"],"aJ":["dJ?"],"aJ.T":"dJ?","aP.T":"dJ?"},"Kk":{"aP":["c5"],"aJ":["c5"],"aJ.T":"c5","aP.T":"c5"},"wT":{"aP":["a4"],"aJ":["a4"],"aJ.T":"a4","aP.T":"a4"},"ZU":{"M":[],"c":[]},"ZY":{"M":[],"c":[]},"a_0":{"M":[],"c":[]},"a_2":{"M":[],"c":[]},"a_1":{"M":[],"c":[]},"a_4":{"M":[],"c":[]},"ZX":{"M":[],"c":[]},"H8":{"M":[],"c":[]},"ZZ":{"M":[],"c":[]},"a2n":{"aP":["af"],"aJ":["af"],"aJ.T":"af","aP.T":"af"},"ao9":{"aP":["eR?"],"aJ":["eR?"],"aJ.T":"eR?","aP.T":"eR?"},"avX":{"M":[],"c":[]},"RF":{"T":["1"]},"Hb":{"T":["1"]},"aKt":{"T":["ZU"]},"aKz":{"T":["ZY"]},"aKB":{"T":["a_0"]},"aKD":{"T":["a_2"]},"aKC":{"T":["a_1"]},"aKG":{"T":["a_4"]},"aKy":{"T":["ZX"]},"aKv":{"T":["H8"]},"aKA":{"T":["ZZ"]},"wc":{"bG":[],"bl":[],"c":[]},"a4l":{"mc":[],"bJ":[],"u":[]},"n7":{"bG":[],"bl":[],"c":[]},"XC":{"mc":[],"bJ":[],"u":[]},"eU":{"bG":[],"bl":[],"c":[]},"xc":{"a3":[],"c":[]},"a4y":{"M":[],"c":[]},"afu":{"T":["a4y"]},"aQs":{"a3":[],"c":[]},"aH0":{"bm":["c5"],"dq":["c5"],"aC":[]},"awm":{"a3":[],"c":[]},"fV":{"yk":["aG"],"aE":[],"c":[],"yk.0":"aG"},"yk":{"aE":[],"c":[]},"XG":{"bO":[],"bJ":[],"u":[]},"ahA":{"qD":["aG","J"],"J":[],"aZ":["J"],"H":[],"ay":[],"qD.0":"aG"},"NI":{"nn":[],"IW":[],"iF":[],"aC":[],"l8":[]},"a50":{"M":[],"c":[]},"K5":{"aE":[],"c":[]},"a36":{"fh":[],"aC":[]},"IW":{"l8":[]},"aeH":{"M":[],"c":[]},"aeI":{"F9":[],"T":["LW"]},"afH":{"T":["a50"]},"a5_":{"bO":[],"bJ":[],"u":[]},"afI":{"bG":[],"bl":[],"c":[]},"E2":{"M":[],"c":[]},"aZT":{"iQ":["b5"],"iQ.T":"b5"},"ass":{"b5":[]},"aR7":{"T":["E2"]},"cJA":{"bG":[],"bl":[],"c":[]},"a5f":{"lJ":[],"lu":[]},"a7G":{"a3":[],"c":[]},"aRb":{"a3":[],"c":[]},"aNQ":{"yq":["qu"],"aC":[]},"aRa":{"bt":[],"aE":[],"c":[]},"aUZ":{"J":[],"aZ":["J"],"H":[],"ay":[]},"zk":{"wc":["kw"],"bG":[],"bl":[],"c":[],"wc.T":"kw"},"ag0":{"M":[],"c":[]},"aRo":{"T":["ag0"],"he":[]},"aZk":{"bLp":[]},"WW":{"fg":[],"em":[],"eT":[]},"aWh":{"bt":[],"aE":[],"c":[]},"aV9":{"J":[],"aZ":["J"],"H":[],"ay":[]},"azM":{"a3":[],"c":[]},"an2":{"M":[],"c":[]},"aKN":{"Ja":["WW"]},"aRT":{"a3":[],"c":[]},"a6c":{"a3":[],"c":[]},"ne":{"nm":[]},"Jg":{"bG":[],"bl":[],"c":[]},"a6d":{"M":[],"c":[]},"kx":{"A7":[]},"nc":{"T":["a6d"]},"zx":{"l1":[]},"aSk":{"dG":["~"]},"XX":{"Gj":[]},"XW":{"Gj":[]},"agq":{"Gj":[]},"agr":{"Gj":[]},"aPQ":{"B":["kx"],"aC":[],"B.E":"kx"},"aPR":{"it":["aN>?"],"aC":[]},"a6e":{"M":[],"c":[]},"aSa":{"T":["a6e"]},"a6f":{"M":[],"c":[]},"XY":{"a3":[],"c":[]},"afj":{"bG":[],"bl":[],"c":[]},"oU":{"nn":[],"iF":[],"aC":[],"l8":[]},"T_":{"T":["a6f"]},"aSb":{"l8":[]},"agv":{"fh":[],"aC":[]},"aET":{"aC":[]},"pv":{"bt":[],"aE":[],"c":[]},"aDb":{"da":[],"aZ":["da"],"H":[],"ay":[]},"aEU":{"bt":[],"aE":[],"c":[]},"aDc":{"da":[],"H":[],"ay":[]},"aA4":{"AN":[],"eH":[],"aE":[],"c":[]},"a8a":{"LD":[],"pH":["qI"],"J":[],"ap":["da","qI"],"EV":[],"H":[],"ay":[],"ap.1":"qI","pH.0":"qI","ap.0":"da"},"qi":{"l1":[]},"ff":{"bl":[],"c":[]},"agx":{"bJ":[],"u":[]},"a6z":{"a3":[],"c":[]},"xn":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"aAw":{"eH":[],"aE":[],"c":[]},"Yk":{"bD":["J","xn"],"J":[],"ap":["J","xn"],"H":[],"ay":[],"ap.1":"xn","bD.1":"xn","bD.0":"J","ap.0":"J"},"zF":{"aC":[]},"Ba":{"M":[],"c":[]},"Y_":{"T":["Ba"]},"T9":{"M":[],"c":[]},"Tb":{"T":["T9"]},"Gs":{"J":[],"ap":["J","jv"],"H":[],"ay":[],"ap.1":"jv","ap.0":"J"},"a6C":{"M":[],"c":[]},"Gl":{"mg":["Gl"],"mg.E":"Gl"},"O4":{"bG":[],"bl":[],"c":[]},"Gr":{"J":[],"aZ":["J"],"H":[],"ay":[],"mg":["Gr"],"mg.E":"Gr"},"ahB":{"J":[],"aZ":["J"],"H":[],"ay":[]},"ajB":{"eH":[],"aE":[],"c":[]},"aYl":{"bO":[],"bJ":[],"u":[]},"YW":{"jv":[],"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"aSM":{"T":["a6C"]},"Y0":{"aE":[],"c":[]},"aSL":{"bO":[],"bJ":[],"u":[]},"aNo":{"bt":[],"aE":[],"c":[]},"a3H":{"M":[],"c":[]},"aaf":{"M":[],"c":[]},"Es":{"nv":[],"l1":[]},"af_":{"T":["a3H"]},"aeZ":{"aC":[]},"aPG":{"aC":[]},"aj2":{"T":["aaf"]},"aj1":{"aC":[]},"cKA":{"ca":["1"],"na":[],"il":[]},"Tf":{"a3":[],"c":[]},"Tg":{"M":[],"c":[]},"aAB":{"fh":[],"aC":[]},"KP":{"l8":[]},"Gm":{"nn":[],"KP":[],"iF":[],"aC":[],"l8":[]},"aSU":{"T":["Tg"]},"oi":{"iA":["1"],"hw":["1"],"dG":["1"]},"a6G":{"iA":["1"],"hw":["1"],"dG":["1"]},"a7a":{"M":[],"c":[]},"Tz":{"aE":[],"c":[]},"a3X":{"a3":[],"c":[]},"agK":{"T":["a7a"]},"aT9":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aT8":{"bt":[],"aE":[],"c":[]},"zT":{"M":[],"c":[]},"aTJ":{"T":["zT"],"by8":[]},"rP":{"a3":[],"zV":[],"c":[]},"TJ":{"bG":[],"bl":[],"c":[]},"EY":{"M":[],"c":[]},"Ne":{"bG":[],"bl":[],"c":[]},"a8B":{"M":[],"c":[]},"it":{"aC":[]},"aVB":{"T":["EY"]},"ai_":{"T":["a8B"]},"cV":{"it":["1"],"aC":[]},"qY":{"cV":["1"],"it":["1"],"aC":[]},"ahX":{"qY":["1"],"cV":["1"],"it":["1"],"aC":[]},"a8u":{"qY":["1"],"cV":["1"],"it":["1"],"aC":[],"cV.T":"1","qY.T":"1"},"LI":{"qY":["A"],"cV":["A"],"it":["A"],"aC":[],"cV.T":"A","qY.T":"A"},"a8v":{"qY":["f?"],"cV":["f?"],"it":["f?"],"aC":[],"cV.T":"f?","qY.T":"f?"},"aDy":{"cV":["am?"],"it":["am?"],"aC":[],"cV.T":"am?"},"Uw":{"M":[],"c":[]},"cFH":{"tf":["a8"]},"Yq":{"T":["Uw<1>"]},"aVN":{"bG":[],"bl":[],"c":[]},"any":{"tf":["a8"]},"aDE":{"tf":["a8"],"he":[],"tf.T":"a8"},"Ux":{"aC":[]},"aDN":{"dq":["ot"],"aC":[]},"aVz":{"cV":["ot?"],"it":["ot?"],"aC":[],"cV.T":"ot?"},"agd":{"bG":[],"bl":[],"c":[]},"XT":{"M":[],"c":[]},"mI":{"T":["XT<1>"]},"iA":{"hw":["1"],"dG":["1"]},"Ta":{"dG":["1"]},"hw":{"dG":["1"]},"aNB":{"cg":["mX"],"cg.T":"mX"},"a7e":{"iA":["1"],"hw":["1"],"dG":["1"]},"U_":{"iA":["1"],"hw":["1"],"dG":["1"]},"iX":{"a3":[],"c":[]},"a8V":{"kg":["1"],"kg.T":"1"},"a8W":{"bG":[],"bl":[],"c":[]},"fh":{"aC":[]},"YC":{"M":[],"c":[]},"Yr":{"ca":["il"],"na":[],"il":[],"ca.T":"il"},"pu":{"Fl":[]},"a9P":{"Fl":[]},"aiw":{"T":["YC"],"Fb":[]},"a38":{"l8":[]},"ow":{"qi":[],"nv":[],"l1":[]},"no":{"ow":[],"qi":[],"nv":[],"l1":[]},"UJ":{"ow":[],"qi":[],"nv":[],"l1":[]},"u9":{"ow":[],"qi":[],"nv":[],"l1":[]},"wG":{"ow":[],"qi":[],"nv":[],"l1":[]},"abK":{"ow":[],"qi":[],"nv":[],"l1":[]},"aif":{"bG":[],"bl":[],"c":[]},"Gf":{"mg":["Gf"],"mg.E":"Gf"},"a8Y":{"M":[],"c":[]},"a8Z":{"T":["a8Y"]},"nn":{"iF":[],"aC":[],"l8":[]},"LU":{"nv":[],"l1":[]},"F7":{"nn":[],"iF":[],"aC":[],"l8":[]},"E0":{"a3":[],"c":[]},"aE5":{"a3":[],"c":[]},"a1v":{"a3":[],"c":[]},"aoe":{"a3":[],"c":[]},"a3N":{"a3":[],"c":[]},"LW":{"M":[],"c":[]},"aii":{"bG":[],"bl":[],"c":[]},"aik":{"M":[],"c":[]},"F9":{"T":["LW"]},"aW2":{"T":["aik"]},"aij":{"dq":["ox"],"aC":[],"Fb":[]},"aW0":{"bt":[],"aE":[],"c":[]},"aV8":{"J":[],"aZ":["J"],"H":[],"ay":[]},"ahY":{"cV":["U?"],"it":["U?"],"aC":[],"cV.T":"U?"},"l7":{"cB":[]},"a8U":{"fb":["l7"],"cg":["l7"],"cg.T":"l7","fb.T":"l7"},"U3":{"M":[],"c":[]},"xx":{"mh":[],"fg":[],"em":[],"eT":[]},"xy":{"mB":[],"fg":[],"em":[],"eT":[]},"UK":{"aC":[]},"wA":{"T":["1"]},"a98":{"M":[],"c":[]},"LY":{"T":["a98"],"Fb":[]},"agw":{"fb":["1"],"cg":["1"]},"aW8":{"fb":["qG"],"cg":["qG"],"cg.T":"qG","fb.T":"qG"},"aMx":{"fb":["p6"],"cg":["p6"],"cg.T":"p6","fb.T":"p6"},"B2":{"fb":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"v5":{"fb":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"aee":{"fb":["1"],"cg":["1"],"cg.T":"1","fb.T":"1"},"ais":{"dq":["ox"],"aC":[],"Fb":[]},"SU":{"dq":["ox"],"aC":[],"Fb":[]},"M_":{"M":[],"c":[]},"UQ":{"bG":[],"bl":[],"c":[]},"aWf":{"l9":[],"T":["M_"],"dq":["ox"],"aC":[]},"aEe":{"dq":["ox"],"aC":[],"Fb":[]},"a9v":{"M":[],"c":[]},"aWu":{"T":["a9v"]},"aWv":{"wc":["S"],"bG":[],"bl":[],"c":[],"wc.T":"S"},"ce":{"Fh":[]},"Md":{"M":[],"c":[]},"a9x":{"M":[],"c":[]},"ax9":{"JM":["K"],"Fh":[],"JM.T":"K"},"V2":{"aC":[]},"aiC":{"T":["Md"]},"a9y":{"aC":[]},"aiB":{"T":["a9x"]},"aWy":{"bG":[],"bl":[],"c":[]},"V3":{"a3":[],"c":[]},"YF":{"bt":[],"aE":[],"c":[]},"aWH":{"bO":[],"bJ":[],"u":[]},"ahP":{"J":[],"aZ":["J"],"EV":[],"H":[],"ay":[]},"aEX":{"aE":[],"c":[]},"Am":{"aE":[],"c":[]},"Ml":{"Am":[],"aE":[],"c":[]},"a9Q":{"Am":[],"aE":[],"c":[]},"Va":{"bO":[],"bJ":[],"u":[]},"a4I":{"h7":["u2"],"bl":[],"c":[],"h7.T":"u2"},"aEP":{"a3":[],"c":[]},"aWQ":{"Am":[],"aE":[],"c":[]},"aWT":{"bt":[],"aE":[],"c":[]},"aVd":{"da":[],"aZ":["da"],"H":[],"ay":[]},"aEO":{"a3":[],"c":[]},"aWP":{"bt":[],"aE":[],"c":[]},"aeM":{"M":[],"c":[]},"aEV":{"a3":[],"c":[]},"aeN":{"T":["aeM"]},"aWY":{"bO":[],"bJ":[],"u":[]},"Bi":{"aE":[],"c":[]},"aX0":{"Bi":[],"aE":[],"c":[]},"aVi":{"v9":[],"da":[],"aZ":["J"],"H":[],"ay":[]},"aX_":{"Bi":[],"aE":[],"c":[]},"aVh":{"v9":[],"da":[],"aZ":["J"],"H":[],"ay":[]},"aWR":{"Bi":[],"aE":[],"c":[]},"aVc":{"A1":[],"v9":[],"da":[],"aZ":["J"],"H":[],"ay":[]},"aWS":{"Bi":[],"aE":[],"c":[]},"aVb":{"A1":[],"v9":[],"da":[],"aZ":["J"],"H":[],"ay":[]},"a9S":{"mx":["1","2"],"aE":[],"c":[]},"a9T":{"bO":[],"bJ":[],"u":[]},"a9U":{"aC":[]},"aF2":{"bt":[],"aE":[],"c":[]},"Yo":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aF1":{"aC":[]},"ae9":{"aC":[]},"aFb":{"a3":[],"c":[]},"aa7":{"M":[],"c":[]},"aiW":{"T":["aa7"]},"aaD":{"aE":[],"c":[]},"aXL":{"bO":[],"bJ":[],"u":[]},"a8m":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Uj":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aFT":{"bt":[],"aE":[],"c":[]},"aO1":{"eT":[]},"aaM":{"bt":[],"aE":[],"c":[]},"aG3":{"bt":[],"aE":[],"c":[]},"Cr":{"eU":[],"bG":[],"bl":[],"c":[]},"d4m":{"eU":[],"bG":[],"bl":[],"c":[]},"eY":{"a3":[],"c":[]},"aSt":{"a3":[],"c":[]},"a1X":{"cB":[]},"Id":{"cB":[]},"If":{"cB":[]},"Ie":{"cB":[]},"mW":{"cB":[]},"vW":{"mW":[],"cB":[]},"vY":{"mW":[],"cB":[]},"Dh":{"mW":[],"cB":[]},"Df":{"mW":[],"cB":[]},"Dg":{"mW":[],"cB":[]},"pb":{"mW":[],"cB":[]},"yH":{"mW":[],"cB":[]},"yI":{"mW":[],"cB":[]},"IR":{"mW":[],"cB":[]},"IS":{"mW":[],"cB":[]},"vX":{"mW":[],"cB":[]},"Ab":{"cB":[]},"bhu":{"cB":[]},"qG":{"cB":[]},"p6":{"cB":[]},"EB":{"cB":[]},"EU":{"cB":[]},"uj":{"cB":[]},"FL":{"cB":[]},"t8":{"cB":[]},"FI":{"cB":[]},"asL":{"cB":[]},"nu":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"Bh":{"M":[],"c":[]},"aiu":{"M":[],"c":[]},"ab2":{"M":[],"c":[]},"aix":{"T":["Bh"]},"aiv":{"T":["aiu"]},"ajw":{"T":["ab2"]},"a0L":{"bm":["Ch"],"dq":["Ch"],"aC":[],"he":[]},"aGk":{"aE":[],"c":[]},"wV":{"M":[],"c":[]},"aet":{"bG":[],"bl":[],"c":[]},"aYn":{"T":["wV"]},"adA":{"dq":["1"],"aC":[]},"W2":{"a3":[],"c":[]},"a_6":{"M":[],"c":[]},"dg":{"bt":[],"aE":[],"c":[]},"OO":{"M":[],"c":[]},"acD":{"T":["a_6"]},"aEL":{"M":[],"c":[]},"azc":{"M":[],"c":[]},"aDX":{"M":[],"c":[]},"aDJ":{"M":[],"c":[]},"aEE":{"M":[],"c":[]},"U8":{"aP":["pq"],"aJ":["pq"],"aJ.T":"pq","aP.T":"pq"},"a7f":{"M":[],"c":[]},"ash":{"M":[],"c":[]},"asq":{"M":[],"c":[]},"Sm":{"M":[],"c":[]},"FJ":{"M":[],"c":[]},"ajS":{"T":["FJ<1>"]},"Wd":{"M":[],"c":[]},"We":{"T":["Wd<1>"]},"abG":{"bm":["Nd"],"dq":["Nd"],"aC":[]},"hc":{"M":[],"c":[]},"Z1":{"T":["hc<1>"]},"Og":{"bG":[],"bl":[],"c":[]},"agH":{"bG":[],"bl":[],"c":[]},"aHA":{"a3":[],"c":[]},"ah1":{"aE":[],"c":[]},"aUb":{"bO":[],"bJ":[],"u":[]},"aeb":{"kW":["1"],"il":[]},"AN":{"eH":[],"aE":[],"c":[]},"aZG":{"bO":[],"bJ":[],"u":[]},"aEw":{"eH":[],"aE":[],"c":[]},"FS":{"a3":[],"c":[]},"akd":{"bG":[],"bl":[],"c":[]},"aZH":{"bt":[],"aE":[],"c":[]},"aVr":{"J":[],"aZ":["J"],"H":[],"ay":[]},"kt":{"ki":[]},"aZR":{"h7":["pB"],"bl":[],"c":[],"h7.T":"pB"},"aKX":{"bt":[],"aE":[],"c":[]},"ahN":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Wx":{"M":[],"c":[]},"aZV":{"T":["Wx"]},"Qx":{"yK":[]},"Dk":{"yK":[]},"aA9":{"b7K":[]},"avG":{"cI9":[]},"avD":{"bP":[]},"auP":{"b6":[]},"aPF":{"iQ":["b6"],"iQ.T":"b6"},"aq5":{"b6":[]},"aq6":{"b6":[]},"aq7":{"b6":[]},"aq8":{"b6":[]},"aq9":{"b6":[]},"aqa":{"b6":[]},"aqb":{"b6":[]},"aqc":{"b6":[]},"aqd":{"b6":[]},"aqe":{"b6":[]},"aqf":{"b6":[]},"aqg":{"b6":[]},"aqh":{"b6":[]},"a1e":{"b6":[]},"aqi":{"b6":[]},"aqj":{"b6":[]},"a1f":{"b6":[]},"aqk":{"b6":[]},"aql":{"b6":[]},"aqm":{"b6":[]},"aqn":{"b6":[]},"aqo":{"b6":[]},"aqp":{"b6":[]},"aqq":{"b6":[]},"aqr":{"b6":[]},"a1g":{"b6":[]},"aqs":{"b6":[]},"aqt":{"b6":[]},"aqu":{"b6":[]},"aqv":{"b6":[]},"aqw":{"b6":[]},"aqx":{"b6":[]},"aqy":{"b6":[]},"aqz":{"b6":[]},"aqA":{"b6":[]},"aqB":{"b6":[]},"aqC":{"b6":[]},"aqD":{"b6":[]},"aqE":{"b6":[]},"aqF":{"b6":[]},"aqG":{"b6":[]},"aqH":{"b6":[]},"aqI":{"b6":[]},"aqJ":{"b6":[]},"aqK":{"b6":[]},"aqL":{"b6":[]},"aqM":{"b6":[]},"aqN":{"b6":[]},"aqO":{"b6":[]},"aqP":{"b6":[]},"aqQ":{"b6":[]},"a1h":{"b6":[]},"aqR":{"b6":[]},"aqS":{"b6":[]},"aqT":{"b6":[]},"aqU":{"b6":[]},"aqV":{"b6":[]},"aqW":{"b6":[]},"aqX":{"b6":[]},"aqY":{"b6":[]},"aqZ":{"b6":[]},"ar_":{"b6":[]},"ar0":{"b6":[]},"ar1":{"b6":[]},"ar2":{"b6":[]},"ar3":{"b6":[]},"ar4":{"b6":[]},"ar5":{"b6":[]},"ar6":{"b6":[]},"ar7":{"b6":[]},"ar8":{"b6":[]},"ar9":{"b6":[]},"ara":{"b6":[]},"arb":{"b6":[]},"arc":{"b6":[]},"ard":{"b6":[]},"are":{"b6":[]},"arf":{"b6":[]},"arg":{"b6":[]},"arh":{"b6":[]},"ari":{"b6":[]},"arj":{"b6":[]},"ark":{"b6":[]},"arl":{"b6":[]},"arm":{"b6":[]},"arn":{"b6":[]},"aro":{"b6":[]},"a1i":{"b6":[]},"arp":{"b6":[]},"arq":{"b6":[]},"arr":{"b6":[]},"ars":{"b6":[]},"art":{"b6":[]},"aru":{"b6":[]},"arv":{"b6":[]},"a1j":{"b6":[]},"arw":{"b6":[]},"arx":{"b6":[]},"ary":{"b6":[]},"arz":{"b6":[]},"arA":{"b6":[]},"arB":{"b6":[]},"arC":{"b6":[]},"arD":{"b6":[]},"arE":{"b6":[]},"arF":{"b6":[]},"arG":{"b6":[]},"arH":{"b6":[]},"arI":{"b6":[]},"a1k":{"b6":[]},"arJ":{"b6":[]},"a1l":{"b6":[]},"arK":{"b6":[]},"arL":{"b6":[]},"arM":{"b6":[]},"axn":{"b0":[]},"axo":{"b0":[]},"axp":{"b0":[]},"axq":{"b0":[]},"axr":{"b0":[]},"axs":{"b0":[]},"axt":{"b0":[]},"axu":{"b0":[]},"axv":{"b0":[]},"axw":{"b0":[]},"axx":{"b0":[]},"axy":{"b0":[]},"axz":{"b0":[]},"a5r":{"b0":[]},"axA":{"b0":[]},"axB":{"b0":[]},"a5s":{"b0":[]},"axC":{"b0":[]},"axD":{"b0":[]},"axE":{"b0":[]},"axF":{"b0":[]},"axG":{"b0":[]},"axH":{"b0":[]},"axI":{"b0":[]},"axJ":{"b0":[]},"a5t":{"b0":[]},"axK":{"b0":[]},"axL":{"b0":[]},"axM":{"b0":[]},"axN":{"b0":[]},"axO":{"b0":[]},"axP":{"b0":[]},"axQ":{"b0":[]},"axR":{"b0":[]},"axS":{"b0":[]},"axT":{"b0":[]},"axU":{"b0":[]},"axV":{"b0":[]},"axW":{"b0":[]},"axX":{"b0":[]},"axY":{"b0":[]},"axZ":{"b0":[]},"ay_":{"b0":[]},"ay0":{"b0":[]},"ay1":{"b0":[]},"ay2":{"b0":[]},"ay3":{"b0":[]},"ay4":{"b0":[]},"ay5":{"b0":[]},"ay6":{"b0":[]},"ay7":{"b0":[]},"a5u":{"b0":[]},"ay8":{"b0":[]},"ay9":{"b0":[]},"aya":{"b0":[]},"ayb":{"b0":[]},"ayc":{"b0":[]},"ayd":{"b0":[]},"aye":{"b0":[]},"ayf":{"b0":[]},"ayg":{"b0":[]},"ayh":{"b0":[]},"ayi":{"b0":[]},"ayj":{"b0":[]},"ayk":{"b0":[]},"ayl":{"b0":[]},"aym":{"b0":[]},"ayn":{"b0":[]},"ayo":{"b0":[]},"ayp":{"b0":[]},"ayq":{"b0":[]},"ayr":{"b0":[]},"ays":{"b0":[]},"ayt":{"b0":[]},"ayu":{"b0":[]},"ayv":{"b0":[]},"ayw":{"b0":[]},"ayx":{"b0":[]},"ayy":{"b0":[]},"ayz":{"b0":[]},"ayA":{"b0":[]},"ayB":{"b0":[]},"ayC":{"b0":[]},"ayD":{"b0":[]},"ayE":{"b0":[]},"ayF":{"b0":[]},"ayG":{"b0":[]},"ayH":{"b0":[]},"a5v":{"b0":[]},"ayI":{"b0":[]},"ayJ":{"b0":[]},"ayK":{"b0":[]},"ayL":{"b0":[]},"ayM":{"b0":[]},"ayN":{"b0":[]},"ayO":{"b0":[]},"a5w":{"b0":[]},"ayP":{"b0":[]},"ayQ":{"b0":[]},"ayR":{"b0":[]},"ayS":{"b0":[]},"ayT":{"b0":[]},"ayU":{"b0":[]},"ayV":{"b0":[]},"ayW":{"b0":[]},"ayX":{"b0":[]},"ayY":{"b0":[]},"ayZ":{"b0":[]},"az_":{"b0":[]},"az0":{"b0":[]},"a5x":{"b0":[]},"az1":{"b0":[]},"a5y":{"b0":[]},"az2":{"b0":[]},"az3":{"b0":[]},"az4":{"b0":[]},"aHU":{"b5":[]},"aHV":{"b5":[]},"aHW":{"b5":[]},"aHX":{"b5":[]},"aHY":{"b5":[]},"aHZ":{"b5":[]},"aI_":{"b5":[]},"aI0":{"b5":[]},"aI1":{"b5":[]},"aI2":{"b5":[]},"aI3":{"b5":[]},"aI4":{"b5":[]},"aI5":{"b5":[]},"ac6":{"b5":[]},"aI6":{"b5":[]},"aI7":{"b5":[]},"ac7":{"b5":[]},"aI8":{"b5":[]},"aI9":{"b5":[]},"aIa":{"b5":[]},"aIb":{"b5":[]},"aIc":{"b5":[]},"aId":{"b5":[]},"aIe":{"b5":[]},"aIf":{"b5":[]},"ac8":{"b5":[]},"aIg":{"b5":[]},"aIh":{"b5":[]},"aIi":{"b5":[]},"aIj":{"b5":[]},"aIk":{"b5":[]},"aIl":{"b5":[]},"aIm":{"b5":[]},"aIn":{"b5":[]},"aIo":{"b5":[]},"aIp":{"b5":[]},"aIq":{"b5":[]},"aIr":{"b5":[]},"aIs":{"b5":[]},"aIt":{"b5":[]},"aIu":{"b5":[]},"aIv":{"b5":[]},"aIw":{"b5":[]},"aIx":{"b5":[]},"aIy":{"b5":[]},"aIz":{"b5":[]},"aIA":{"b5":[]},"aIB":{"b5":[]},"aIC":{"b5":[]},"aID":{"b5":[]},"aIE":{"b5":[]},"ac9":{"b5":[]},"aIF":{"b5":[]},"aIG":{"b5":[]},"aIH":{"b5":[]},"aII":{"b5":[]},"aIJ":{"b5":[]},"aIK":{"b5":[]},"aIL":{"b5":[]},"aIM":{"b5":[]},"aIN":{"b5":[]},"aIO":{"b5":[]},"aIP":{"b5":[]},"aIQ":{"b5":[]},"aIR":{"b5":[]},"aIS":{"b5":[]},"aIT":{"b5":[]},"aIU":{"b5":[]},"aIV":{"b5":[]},"aIW":{"b5":[]},"aIX":{"b5":[]},"aIY":{"b5":[]},"aIZ":{"b5":[]},"aJ_":{"b5":[]},"aJ0":{"b5":[]},"aJ1":{"b5":[]},"aJ2":{"b5":[]},"aJ3":{"b5":[]},"aJ4":{"b5":[]},"aJ5":{"b5":[]},"aJ6":{"b5":[]},"aJ7":{"b5":[]},"aJ8":{"b5":[]},"aJ9":{"b5":[]},"aJa":{"b5":[]},"aJb":{"b5":[]},"aJc":{"b5":[]},"aJd":{"b5":[]},"aca":{"b5":[]},"aJe":{"b5":[]},"aJf":{"b5":[]},"aJg":{"b5":[]},"aJh":{"b5":[]},"aJi":{"b5":[]},"aJj":{"b5":[]},"aJk":{"b5":[]},"acb":{"b5":[]},"aJl":{"b5":[]},"aJm":{"b5":[]},"aJn":{"b5":[]},"aJo":{"b5":[]},"aJp":{"b5":[]},"aJq":{"b5":[]},"aJr":{"b5":[]},"aJs":{"b5":[]},"aJt":{"b5":[]},"aJu":{"b5":[]},"aJv":{"b5":[]},"aJw":{"b5":[]},"aJx":{"b5":[]},"acc":{"b5":[]},"aJy":{"b5":[]},"acd":{"b5":[]},"aJz":{"b5":[]},"aJA":{"b5":[]},"aJB":{"b5":[]},"auQ":{"b0":[]},"aRh":{"iQ":["b0"],"iQ.T":"b0"},"auR":{"b5":[]},"aZU":{"iQ":["b5"],"iQ.T":"b5"},"aBv":{"a3":[],"c":[]},"zL":{"a3":[],"c":[]},"dba":{"M":[],"c":[]},"diT":{"T":["dba"]},"wx":{"a3":[],"c":[]},"a7b":{"a3":[],"c":[]},"a10":{"M":[],"c":[]},"aMe":{"T":["a10"]},"apL":{"M":[],"c":[]},"a1_":{"T":["1"]},"apK":{"mz":[],"bJ":[],"u":[],"cNM":[]},"a7i":{"M":[],"c":[]},"Wb":{"bG":[],"bl":[],"c":[]},"aC6":{"T":["a7i"]},"ajV":{"mc":[],"bJ":[],"u":[]},"np":{"y9":[]},"aas":{"np":["~"],"y9":[],"np.T":"~"},"aap":{"np":["~"],"y9":[],"np.T":"~"},"aao":{"np":["ei"],"y9":[],"np.T":"ei"},"aar":{"np":["dv"],"y9":[],"np.T":"dv"},"aFG":{"a3":[],"c":[]},"aau":{"M":[],"c":[]},"v4":{"qc":[],"fg":[],"em":[],"eT":[]},"aav":{"T":["aau"]},"Vx":{"bG":[],"bl":[],"c":[]},"Vy":{"M":[],"c":[]},"aXu":{"T":["Vy"]},"Vz":{"M":[],"c":[]},"aXv":{"T":["Vz"]},"aaw":{"M":[],"c":[]},"aXt":{"T":["aaw"]},"a3Z":{"M":[],"c":[]},"ho":{"p0":[]},"uE":{"p0":[]},"FU":{"p0":[]},"akg":{"p0":[]},"Z2":{"p0":[]},"uT":{"p0":[]},"a55":{"B":["1"]},"hd":{"a3":[],"c":[]},"a4_":{"M":[],"c":[]},"Yp":{"bG":[],"bl":[],"c":[]},"a40":{"T":["a4_"]},"nX":{"ho":[],"p0":[]},"Gg":{"B":["o0"],"B.E":"o0"},"aZP":{"hd":[],"a3":[],"c":[]},"XR":{"bt":[],"aE":[],"c":[]},"ad2":{"bl":[],"c":[]},"aLo":{"bJ":[],"u":[]},"a0S":{"hd":[],"a3":[],"c":[]},"aaE":{"p0":[]},"w6":{"hd":[],"a3":[],"c":[]},"Q7":{"bt":[],"aE":[],"c":[]},"aq0":{"bt":[],"aE":[],"c":[]},"ahk":{"J":[],"aZ":["J"],"H":[],"ay":[]},"avs":{"bt":[],"aE":[],"c":[]},"Xy":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Jj":{"M":[],"c":[]},"Jk":{"a3":[],"c":[]},"af8":{"bG":[],"bl":[],"c":[]},"aPY":{"T":["Jj"]},"avx":{"a3":[],"c":[]},"avz":{"a3":[],"c":[]},"xk":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"avy":{"eH":[],"aE":[],"c":[]},"XK":{"bD":["J","xk"],"J":[],"ap":["J","xk"],"H":[],"ay":[],"ap.1":"xk","bD.1":"xk","bD.0":"J","ap.0":"J"},"Jl":{"aE":[],"c":[]},"afG":{"J":[],"H":[],"ay":[]},"Ru":{"eH":[],"aE":[],"c":[]},"xp":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"ai5":{"bD":["J","xp"],"J":[],"ap":["J","xp"],"H":[],"ay":[],"ap.1":"xp","bD.1":"xp","bD.0":"J","ap.0":"J"},"Rv":{"n4":[],"h7":["mK"],"bl":[],"c":[],"h7.T":"mK"},"n4":{"h7":["mK"],"bl":[],"c":[],"h7.T":"mK"},"mK":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"avA":{"eH":[],"aE":[],"c":[]},"aji":{"bD":["J","mK"],"J":[],"ap":["J","mK"],"H":[],"ay":[],"ap.1":"mK","bD.1":"mK","bD.0":"J","ap.0":"J"},"abN":{"M":[],"c":[]},"ak8":{"bG":[],"bl":[],"c":[]},"Bp":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aHo":{"bt":[],"aE":[],"c":[]},"aZq":{"T":["abN"]},"aZo":{"bt":[],"aE":[],"c":[]},"aZp":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Th":{"cT":["Th"]},"HV":{"cT":["HV"]},"aoL":{"q0":[]},"aoM":{"q0":[]},"aoT":{"q0":[]},"atb":{"q0":[]},"atc":{"q0":[]},"aBM":{"q0":[]},"aBN":{"q0":[]},"bz1":{"cT":["bz1"]},"abW":{"M":[],"c":[]},"aZC":{"T":["abW"]},"a_m":{"M":[],"c":[]},"aKW":{"T":["a_m"]},"aTb":{"a3":[],"c":[]},"aTL":{"a3":[],"c":[]},"agO":{"a3":[],"c":[]},"agh":{"a3":[],"c":[]},"aHM":{"T":["ac3"]},"ac3":{"M":[],"c":[]},"NA":{"M":[],"c":[]},"ae3":{"T":["NA"]},"a3J":{"aC":[]},"a3I":{"dq":["ot"],"aC":[],"he":[]},"l6":{"mv":[]},"mb":{"l6":[],"mv":[]},"lK":{"mv":[]},"a8E":{"eS":["h8","aN"]},"ai2":{"aT":["h8","aN"],"aT.S":"h8","aT.T":"aN"},"ai1":{"aT":["aN","h8"],"aT.S":"aN","aT.T":"h8"},"QQ":{"a3":[],"c":[]},"adb":{"M":[],"c":[]},"aLL":{"T":["adb"]},"auT":{"e3":[]},"Rk":{"bP":[]},"DH":{"bG":[],"bl":[],"c":[]},"Qb":{"a3":[],"c":[]},"KB":{"o_":["1"],"ne":["1"],"nm":[]},"o_":{"ne":["1"],"nm":[]},"ae4":{"iA":["1"],"hw":["1"],"dG":["1"]},"SD":{"a3":[],"c":[]},"w2":{"os":[]},"Aq":{"M":[],"c":[]},"Vi":{"T":["Aq"]},"Bf":{"it":["h8"],"aC":[]},"G3":{"M":[],"c":[]},"aEv":{"os":[]},"Mp":{"os":[]},"aLE":{"T":["G3"]},"aQd":{"a3":[],"c":[]},"a3K":{"n7":["Rl"],"bG":[],"bl":[],"c":[],"n7.T":"Rl"},"Rl":{"aC":[]},"BZ":{"eS":["B","B"]},"H5":{"aT":["B","B"],"aT.S":"B","aT.T":"B"},"ZO":{"aT":["B","B"],"aT.S":"B","aT.T":"B"},"av8":{"eS":["B","B"]},"av9":{"aT":["B","B"]},"a_F":{"aT":["B","B"]},"a_G":{"aT":["B","B"]},"kG":{"a0_":["1"]},"avk":{"e3":[]},"ao1":{"dN":["aH"]},"Qj":{"am":[],"cT":["am"]},"a1A":{"dN":["1"]},"asd":{"dN":["am"]},"aa9":{"aa8":[]},"Ht":{"a0_":["1"]},"Pd":{"Ht":["1"],"kG":["1"],"a0_":["1"]},"awK":{"Ht":["1"],"a0_":["1"]},"Rs":{"a2":["1"],"asv":["1"],"x":["1"],"aO":["1"],"B":["1"],"a2.E":"1","B.E":"1"},"NN":{"B":["1"],"B.E":"1"},"aka":{"B":["2"],"B.E":"2"},"ad7":{"dq":["2"],"aC":[]},"lp":{"cT":["S"]},"dk":{"iR":[]},"eV":{"K2":["iR"],"a2":["iR"],"x":["iR"],"aO":["iR"],"B":["iR"],"a2.E":"iR","B.E":"iR"},"a1Z":{"iR":[]},"vI":{"iR":[]},"a20":{"iR":[]},"wQ":{"iR":[]},"a0T":{"iR":[]},"atS":{"a2":["dk"],"x":["dk"],"aO":["dk"],"B":["dk"],"a2.E":"dk","B.E":"dk"},"oj":{"bP":[]},"tZ":{"hK":[]},"ao_":{"hK":[]},"a_E":{"hK":[]},"aw_":{"hK":[]},"amS":{"hK":[]},"RH":{"hK":[]},"aGa":{"hK":[]},"a4i":{"hK":[]},"RJ":{"hK":[]},"a4d":{"hK":[]},"a4e":{"hK":[]},"Jx":{"hK":[]},"a4g":{"hK":[]},"RI":{"hK":[]},"a4h":{"hK":[]},"aw0":{"hK":[]},"avZ":{"hK":[]},"amQ":{"hK":[]},"a4f":{"hK":[]},"amR":{"hK":[]},"amO":{"hK":[]},"amP":{"hK":[]},"ath":{"cZ":["f"],"bU":["f"],"aO":["f"],"B":["f"],"B.E":"f","cZ.E":"f"},"adH":{"cZ":["f"],"bU":["f"],"aO":["f"],"B":["f"]},"Xm":{"bP":[]},"K2":{"a2":["1"],"x":["1"],"aO":["1"],"B":["1"]},"t0":{"qO":[]},"Ar":{"qO":[]},"Fn":{"Ar":[],"qO":[]},"d7":{"Ar":[],"qO":[]},"be":{"t0":[],"qO":[]},"cH":{"t0":[],"qO":[]},"Mn":{"t0":[],"qO":[]},"PR":{"t0":[],"qO":[]},"a1Y":{"qO":[]},"amM":{"K2":["dk?"],"a2":["dk?"],"x":["dk?"],"aO":["dk?"],"B":["dk?"],"a2.E":"dk?","B.E":"dk?"},"anQ":{"aph":[]},"Ph":{"aph":[]},"Pm":{"bg":["x"],"bg.T":"x"},"PD":{"bP":[]},"aFp":{"Mr":[]},"a0g":{"e7":["f","f","1"],"aN":["f","1"],"e7.V":"1","e7.K":"f","e7.C":"f"},"X9":{"xf":[]},"Xb":{"xf":[]},"Xa":{"xf":[]},"ax6":{"bP":[]},"pg":{"vn":[]},"d1H":{"cEU":[]},"d4_":{"cEU":[]},"aBF":{"bP":[]},"aBG":{"bP":[]},"abJ":{"pg":[],"vn":[]},"aC0":{"pg":[],"vn":[]},"as0":{"pg":[],"vn":[]},"avo":{"pg":[],"vn":[]},"XA":{"re":[]},"azy":{"re":[]},"JK":{"re":[]},"z7":{"xX":[]},"avv":{"JK":[],"re":[]},"aHe":{"z7":[],"xX":[]},"aC2":{"z7":[],"xX":[]},"as2":{"z7":[],"xX":[]},"avq":{"z7":[],"xX":[]},"wg":{"cT":["wg"]},"a5T":{"M":[],"c":[]},"aRS":{"T":["a5T"]},"a5V":{"bm":["rG"],"dq":["rG"],"aC":[]},"of":{"bP":[]},"a6W":{"bP":[]},"Af":{"a3":[],"c":[]},"a9E":{"bJ":[],"u":[]},"Di":{"M":[],"c":[]},"aeD":{"T":["Di"]},"a6x":{"M":[],"c":[]},"aSC":{"T":["a6x"]},"oh":{"B":["1"]},"op":{"oh":["1"],"B":["1"]},"aBb":{"bP":[]},"azF":{"bP":[]},"aB5":{"kV":[],"bP":[]},"c2":{"bBZ":["1"],"bz":["1"]},"a5l":{"B":["1"],"B.E":"1"},"tS":{"jf":["1","f"],"bz":["f"],"jf.T":"1"},"a5i":{"jf":["1","2"],"bz":["2"],"jf.T":"1"},"abr":{"jf":["1","AD<1>"],"bz":["AD<1>"],"jf.T":"1"},"a9C":{"kb":[]},"HT":{"kb":[]},"axc":{"kb":[]},"aAb":{"kb":[]},"jr":{"kb":[]},"aHP":{"kb":[]},"HJ":{"K1":["1","1"],"bz":["1"],"K1.R":"1"},"jf":{"bz":["2"]},"M6":{"bz":["+(1,2)"]},"M7":{"bz":["+(1,2,3)"]},"a9n":{"bz":["+(1,2,3,4)"]},"a9o":{"bz":["+(1,2,3,4,5)"]},"a9p":{"bz":["+(1,2,3,4,5,6,7,8)"]},"K1":{"bz":["2"]},"qs":{"jf":["1","1"],"bz":["1"],"jf.T":"1"},"a9M":{"jf":["1","1"],"bz":["1"],"jf.T":"1"},"IC":{"bz":["1"]},"aA6":{"bz":["f"]},"rd":{"bz":["f"]},"Mh":{"bz":["f"]},"aBS":{"bz":["f"]},"aDq":{"bz":["f"]},"pj":{"jf":["1","x<1>"],"bz":["x<1>"],"jf.T":"1"},"a4W":{"jf":["1","x<1>"],"bz":["x<1>"]},"a7g":{"jf":["1","x<1>"],"bz":["x<1>"],"jf.T":"1"},"a8p":{"jf":["1","2"],"bz":["2"]},"a82":{"bD":["J","fr"],"J":[],"ap":["J","fr"],"H":[],"ay":[],"ap.1":"fr","bD.1":"fr","bD.0":"J","ap.0":"J"},"a8d":{"J":[],"ap":["J","pB"],"H":[],"ay":[],"ap.1":"pB","ap.0":"J"},"apJ":{"a3":[],"c":[]},"apN":{"a3":[],"c":[]},"zG":{"a3":[],"c":[]},"V6":{"a3":[],"c":[]},"avH":{"a3":[],"c":[]},"an_":{"a3":[],"c":[]},"au9":{"eH":[],"aE":[],"c":[]},"aDP":{"eH":[],"aE":[],"c":[]},"aFY":{"a3":[],"c":[]},"aDD":{"eH":[],"aE":[],"c":[]},"db7":{"bG":[],"bl":[],"c":[]},"aBq":{"fh":[],"aC":[]},"a78":{"nn":[],"iF":[],"aC":[],"l8":[]},"aFn":{"jd":[]},"bw5":{"jd":[]},"U7":{"bP":[]},"El":{"a_i":[]},"Et":{"a_i":[]},"TY":{"a_i":[]},"GX":{"jd":[]},"Qg":{"jd":[]},"C9":{"jd":[]},"Ca":{"jd":[]},"Cb":{"jd":[]},"Cd":{"jd":[]},"Cx":{"jd":[]},"Dw":{"jd":[]},"Dx":{"jd":[]},"Dy":{"jd":[]},"Em":{"jd":[]},"F3":{"jd":[]},"TS":{"jd":[]},"P1":{"hV":[]},"Cc":{"hV":[]},"DR":{"hV":[]},"Sv":{"hV":[]},"Sw":{"hV":[]},"Sx":{"hV":[]},"TT":{"hV":[]},"TU":{"hV":[]},"TV":{"hV":[]},"TW":{"hV":[]},"Uy":{"hV":[]},"Uz":{"hV":[]},"UA":{"hV":[]},"F1":{"hV":[]},"UB":{"hV":[]},"UC":{"hV":[]},"F2":{"hV":[]},"wF":{"hV":[]},"UD":{"hV":[]},"VU":{"hV":[]},"Ws":{"hV":[]},"yD":{"c1":[]},"at8":{"c0":[]},"q6":{"yD":[],"c1":[]},"a2g":{"c0":[]},"ake":{"cyy":[]},"ya":{"Sy":[]},"yb":{"Sy":[]},"yX":{"Sy":[]},"EJ":{"Sy":[]},"Eu":{"bw5":[],"jd":[]},"Rw":{"aAA":[]},"Td":{"aAA":[]},"BX":{"LX":[]},"C3":{"LX":[]},"R8":{"LX":[]},"a_A":{"jd":[]},"anN":{"a_i":[]},"anO":{"jd":[]},"anT":{"hV":[]},"anV":{"Sy":[]},"anX":{"aAA":[]},"a4H":{"hV":[]},"a5c":{"hV":[]},"axe":{"hV":[]},"aE9":{"LX":[]},"aBw":{"bP":[]},"a0h":{"RL":["1"],"Af":[],"a3":[],"c":[]},"a0Z":{"Af":[],"a3":[],"c":[]},"a52":{"RL":["1"],"Af":[],"a3":[],"c":[]},"aw3":{"u":[]},"oR":{"bG":[],"bl":[],"c":[]},"RL":{"Af":[],"a3":[],"c":[]},"afk":{"bJ":[],"u":[]},"NM":{"mc":[],"bJ":[],"aw3":["1"],"u":[]},"ak9":{"AU":["1","Z0<1>"],"AU.D":"Z0<1>"},"aC4":{"bP":[]},"aC3":{"bP":[]},"a7p":{"a2":["A"],"x":["A"],"aO":["A"],"B":["A"],"a2.E":"A","B.E":"A"},"TQ":{"cLe":[]},"a4t":{"bP":[]},"a7q":{"M":[],"c":[]},"aU0":{"T":["a7q"]},"agX":{"a3":[],"c":[]},"a7r":{"aC":[]},"a8i":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a8I":{"M":[],"c":[]},"aVP":{"T":["a8I"]},"a8o":{"M":[],"c":[]},"aDp":{"Fl":[],"ahV":["Fl"]},"ahW":{"T":["a8o"]},"aEF":{"bt":[],"aE":[],"c":[]},"xY":{"dL":["1"]},"vZ":{"is":[],"rL":[]},"hq":{"is":[],"mr":["1"],"rL":[]},"aoV":{"e3":[]},"yJ":{"NG":["2","3","5"],"vZ":["2"],"is":[],"rL":[]},"Bd":{"rT":["1"]},"Yc":{"rT":["1"]},"Li":{"mr":["2"]},"agU":{"mr":["2"]},"YD":{"rT":["2"]},"WU":{"agU":["1","2"],"mr":["2"]},"on":{"akb":["1"]},"a_o":{"RT":["1"],"hq":["1"],"is":[],"mr":["1"],"rL":[],"hq.0":"1"},"RT":{"hq":["1"],"is":[],"mr":["1"],"rL":[]},"a_p":{"a7h":["1"],"xY":["1"],"Hk":["1"],"dL":["1"],"dL.0":"1"},"a7h":{"dL":["1"]},"jt":{"Uq":["1"]},"ko":{"Uq":["1"]},"oF":{"hu":["1"],"hu.T":"1"},"uy":{"YK":["1","2"],"xR":["2"],"hq":["2"],"is":[],"mr":["2"],"rL":[],"hq.0":"2","xR.0":"2"},"aa5":{"yJ":["lM<1,2>","2","3","1","uy<1,2>"],"NG":["2","3","uy<1,2>"],"vZ":["2"],"is":[],"rL":[],"NG.1":"3","yJ.3":"1","yJ.0":"lM<1,2>"},"YK":{"hq":["2"],"is":[],"mr":["2"],"rL":[]},"Vh":{"dL":["2"],"lM":["1","2"],"dL.0":"2"},"anq":{"Ap":["1"]},"a_q":{"Oa":["1"],"hq":["1"],"is":[],"mr":["1"],"rL":[],"hq.0":"1"},"Oa":{"hq":["1"],"is":[],"mr":["1"],"rL":[]},"a_r":{"Ao":["1"],"xY":["1"],"anq":["1"],"dL":["1"],"Ap":["1"],"dL.0":"1"},"aa6":{"Oa":["1"],"xR":["1"],"hq":["1"],"is":[],"mr":["1"],"rL":[],"hq.0":"1","xR.0":"1"},"Ao":{"dL":["1"],"Ap":["1"],"dL.0":"1"},"HQ":{"bg":["2"],"bg.T":"2"},"a1I":{"bg":["1"],"bg.T":"1"},"T0":{"bg":["1"],"bg.T":"1"},"aHp":{"e3":[]},"C1":{"Mt":["1"],"hW":["1"],"bg":["1"],"bg.T":"1"},"dx":{"bg":["1"],"bg.T":"1"},"a7n":{"Mt":["1"],"hW":["1"],"bg":["1"],"bg.T":"1"},"Mt":{"hW":["1"],"bg":["1"]},"xv":{"bg":["1"],"bg.T":"1"},"nP":{"jx":["1","2"]},"a6K":{"nP":["1","x<1>"],"jx":["1","x<1>"],"nP.S":"1","nP.T":"x<1>","jx.S":"1","jx.T":"x<1>"},"aa4":{"jx":["1","1"],"jx.S":"1","jx.T":"1"},"aa3":{"jx":["1","1"],"jx.S":"1","jx.T":"1"},"XU":{"hW":["1"]},"aRn":{"J":[],"aZ":["J"],"H":[],"ay":[]},"pt":{"k":[]},"a5Q":{"M":[],"c":[]},"NX":{"M":[],"c":[]},"aRQ":{"T":["a5Q"]},"aTM":{"T":["NX"]},"a16":{"dN":["fJ"]},"a58":{"dN":["u4"]},"a6v":{"dN":["zD"]},"Q6":{"bP":[]},"Mm":{"M":[],"c":[]},"Iq":{"M":[],"c":[]},"aX4":{"T":["Mm"]},"aO0":{"T":["Iq"]},"IB":{"M":[],"c":[]},"I9":{"M":[],"c":[]},"JD":{"M":[],"c":[]},"Hr":{"M":[],"c":[]},"Ms":{"M":[],"c":[]},"t1":{"M":[],"c":[]},"aez":{"T":["IB<1>"]},"aNa":{"T":["I9"]},"aQq":{"T":["JD"]},"aLr":{"T":["Hr"]},"aXi":{"T":["Ms"]},"aXl":{"T":["t1<@>"]},"nM":{"a3":[],"c":[]},"Ox":{"a3":[],"c":[]},"Oy":{"a3":[],"c":[]},"eW":{"wz":[]},"oo":{"M":[],"c":[]},"aCa":{"wz":[]},"aEd":{"a3":[],"c":[]},"a7o":{"wz":[]},"aTZ":{"T":["oo"]},"uV":{"a3":[],"c":[]},"BR":{"a3":[],"c":[]},"as3":{"lu":[]},"aN2":{"vv":[]},"an9":{"a3":[],"c":[]},"awP":{"a3":[],"c":[]},"aec":{"M":[],"c":[]},"Ir":{"M":[],"c":[]},"asE":{"aC":[]},"aed":{"T":["aec"]},"a2e":{"T":["Ir"]},"a2I":{"a3":[],"c":[]},"ZV":{"M":[],"c":[]},"an0":{"T":["ZV"]},"OS":{"M":[],"c":[]},"acM":{"T":["OS"]},"rs":{"M":[],"c":[]},"aPN":{"T":["rs"]},"a2d":{"a3":[],"c":[]},"asA":{"a3":[],"c":[]},"Eh":{"aC":[]},"SV":{"M":[],"c":[]},"afi":{"n7":["Eh<@>"],"bG":[],"bl":[],"c":[],"n7.T":"Eh<@>"},"XV":{"T":["SV<1>"]},"rM":{"a3":[],"c":[]},"As":{"a3":[],"c":[]},"a0a":{"dN":["kH"]},"a3B":{"M":[],"c":[]},"aPw":{"T":["a3B"]},"a3A":{"M":[],"c":[]},"aPA":{"T":["a3A"],"he":[]},"J4":{"M":[],"c":[]},"aPv":{"T":["J4"]},"y3":{"hu":["p_"],"hu.T":"p_"},"zy":{"hu":["pz?"],"hu.T":"pz?"},"A6":{"hu":["A"],"hu.T":"A"},"OP":{"M":[],"c":[]},"aol":{"M":[],"c":[]},"atk":{"a3":[],"c":[]},"aDY":{"M":[],"c":[]},"a8S":{"a3":[],"c":[]},"a_H":{"a3":[],"c":[]},"aGp":{"M":[],"c":[]},"J6":{"M":[],"c":[]},"aPy":{"T":["J6"]},"a3C":{"M":[],"c":[]},"aPx":{"T":["a3C"]},"a3D":{"M":[],"c":[]},"aga":{"T":["a3D"],"he":[]},"azD":{"a3":[],"c":[]},"auA":{"M":[],"c":[]},"J5":{"M":[],"c":[]},"aRR":{"T":["J5"]},"yU":{"hu":["yV"],"hu.T":"yV"},"auz":{"M":[],"c":[]},"aoI":{"M":[],"c":[]},"aoF":{"M":[],"c":[]},"aoG":{"M":[],"c":[]},"aoH":{"M":[],"c":[]},"azC":{"M":[],"c":[]},"azE":{"M":[],"c":[]},"auD":{"M":[],"c":[]},"J7":{"M":[],"c":[]},"aVW":{"T":["J7"]},"av5":{"M":[],"c":[]},"pc":{"yZ":["w1"],"df":[],"kK":[],"yZ.T":"w1"},"auC":{"df":[]},"aBT":{"df":[]},"aDZ":{"VL":["Ax"],"df":[],"rV":[],"kK":[]},"aHL":{"yZ":["w1"],"df":[],"kK":[],"yZ.T":"w1"},"J8":{"M":[],"c":[]},"aXp":{"T":["J8"]},"akz":{"WN":["1","ku"],"WN.1":"ku"},"Mu":{"w1":["tW"],"Dp":["tW"],"t3":[],"df":[],"yT":[],"rV":[]},"aA7":{"VL":["Ax"],"df":[],"rV":[],"kK":[]},"T3":{"M":[],"c":[]},"aSD":{"T":["T3"]},"Kb":{"M":[],"c":[]},"afK":{"T":["Kb"]},"b_f":{"a7Q":[]},"b_g":{"a7Q":[]},"aOo":{"a7Q":[]},"aJZ":{"ani":[]},"a2t":{"dN":["a2s"]},"a2u":{"M":[],"c":[]},"aOe":{"T":["a2u"]},"abw":{"dN":["bY"]},"abx":{"dN":["fE"]},"a2Z":{"M":[],"c":[]},"aOH":{"T":["a2Z"]},"IO":{"M":[],"c":[]},"aOI":{"T":["IO"]},"IP":{"M":[],"c":[]},"aOJ":{"T":["IP"]},"a2V":{"M":[],"c":[]},"a2W":{"M":[],"c":[]},"aOE":{"T":["a2V"]},"aOF":{"T":["a2W"]},"IM":{"a3":[],"c":[]},"IN":{"a3":[],"c":[]},"a2X":{"M":[],"c":[]},"a2Y":{"M":[],"c":[]},"QU":{"a3":[],"c":[]},"aOG":{"T":["a2X"]},"atJ":{"a3":[],"c":[]},"aT3":{"T":["a2Y"]},"Nc":{"a3":[],"c":[]},"JZ":{"M":[],"c":[]},"aQV":{"T":["JZ"]},"K_":{"M":[],"c":[]},"aQW":{"T":["K_"]},"K8":{"M":[],"c":[]},"afJ":{"T":["K8"]},"R6":{"a3":[],"c":[]},"a2p":{"M":[],"c":[]},"aO8":{"T":["a2p"]},"QH":{"a3":[],"c":[]},"axg":{"a3":[],"c":[]},"Iu":{"M":[],"c":[]},"aO9":{"T":["Iu"]},"Iv":{"M":[],"c":[]},"aOa":{"T":["Iv"]},"Iw":{"M":[],"c":[]},"aOb":{"T":["Iw"]},"QK":{"a3":[],"c":[]},"Km":{"M":[],"c":[]},"aRm":{"T":["Km"]},"a3M":{"M":[],"c":[]},"aPM":{"T":["a3M"]},"v8":{"cT":["v8"]},"aeU":{"zp":[]},"aoN":{"zp":[]},"KA":{"M":[],"c":[]},"aSc":{"T":["KA"]},"apH":{"a3":[],"c":[]},"aFu":{"M":[],"c":[]},"aou":{"a3":[],"c":[]},"awH":{"a3":[],"c":[]},"aAr":{"a3":[],"c":[]},"aAp":{"a3":[],"c":[]},"a0V":{"M":[],"c":[]},"aaN":{"M":[],"c":[]},"adz":{"T":["a0V"]},"aXV":{"T":["aaN"]},"LP":{"M":[],"c":[]},"aic":{"T":["LP"],"he":[]},"TR":{"a3":[],"c":[]},"aBt":{"a3":[],"c":[]},"aCb":{"a3":[],"c":[]},"ao7":{"aC":[]},"a0t":{"dN":["a0s"]},"a0x":{"dN":["hp"]},"a0v":{"dN":["a0u"]},"a0w":{"dN":["vz"]},"a0E":{"dN":["a0D"]},"a0B":{"dN":["HN"]},"a0C":{"dN":["nU"]},"a0z":{"dN":["a0y"]},"a0A":{"M":[],"c":[]},"aM2":{"T":["a0A"]},"H2":{"M":[],"c":[]},"BM":{"M":[],"c":[]},"aKm":{"T":["H2"]},"aKn":{"T":["BM"]},"Hj":{"M":[],"c":[]},"H0":{"a3":[],"c":[]},"HM":{"M":[],"c":[]},"PB":{"a3":[],"c":[]},"aKU":{"T":["Hj"]},"adr":{"T":["HM"]},"vA":{"M":[],"c":[]},"ZF":{"M":[],"c":[]},"ZE":{"M":[],"c":[]},"aM1":{"T":["vA"]},"aKk":{"T":["ZF"]},"aKj":{"T":["ZE"]},"H1":{"a3":[],"c":[]},"acy":{"M":[],"c":[]},"aKi":{"T":["acy"]},"la":{"cT":["la"]},"h_":{"cT":["h_"]},"a9k":{"dN":["h_"]},"a9j":{"dN":["la"]},"a14":{"dN":["rl"]},"a2L":{"M":[],"c":[]},"aOs":{"T":["a2L"]},"IG":{"M":[],"c":[]},"aOt":{"T":["IG"]},"atD":{"a3":[],"c":[]},"atE":{"a3":[],"c":[]},"a2O":{"dN":["a2N"]},"a2Q":{"dN":["o6"]},"a2M":{"dN":["vV"]},"abE":{"dN":["AI"]},"a2P":{"M":[],"c":[]},"aOx":{"T":["a2P"]},"a2R":{"M":[],"c":[]},"aOz":{"T":["a2R"]},"IH":{"M":[],"c":[]},"aOv":{"T":["IH"]},"IK":{"M":[],"c":[]},"aOu":{"T":["IK"]},"Mz":{"M":[],"c":[]},"ajo":{"T":["Mz"]},"Jc":{"M":[],"c":[]},"II":{"M":[],"c":[]},"aPL":{"T":["Jc"]},"aOw":{"T":["II"]},"atG":{"a3":[],"c":[]},"IJ":{"M":[],"c":[]},"aOy":{"T":["IJ"]},"IL":{"M":[],"c":[]},"aOA":{"T":["IL"]},"QT":{"a3":[],"c":[]},"Dd":{"a3":[],"c":[]},"LS":{"M":[],"c":[]},"aVV":{"T":["LS"]},"a_K":{"dN":["a_J"]},"a_Q":{"dN":["a_P"]},"a_V":{"dN":["a_U"]},"a_M":{"dN":["a_L"]},"a_N":{"dN":["P6"]},"a_R":{"dN":["Hq"]},"a4U":{"M":[],"c":[]},"aQQ":{"T":["a4U"]},"JV":{"M":[],"c":[]},"P8":{"a3":[],"c":[]},"aQR":{"T":["JV"]},"C5":{"M":[],"c":[]},"a_O":{"M":[],"c":[]},"aLq":{"T":["C5"]},"aLp":{"T":["a_O"]},"JX":{"M":[],"c":[]},"P5":{"a3":[],"c":[]},"aQT":{"T":["JX"]},"JW":{"M":[],"c":[]},"aQS":{"T":["JW"]},"Hh":{"M":[],"c":[]},"aKR":{"T":["Hh"]},"a6u":{"dN":["T2"]},"a6q":{"dN":["a6p"]},"a6o":{"dN":["a6n"]},"a6m":{"M":[],"c":[]},"aSw":{"T":["a6m"]},"Hd":{"M":[],"c":[]},"a6s":{"M":[],"c":[]},"a6r":{"M":[],"c":[]},"aKM":{"T":["Hd"]},"aSy":{"T":["a6s"]},"aSx":{"T":["a6r"]},"KC":{"M":[],"c":[]},"a6t":{"M":[],"c":[]},"En":{"M":[],"c":[]},"aSA":{"T":["KC"]},"aSz":{"T":["a6t"]},"aSB":{"T":["En"]},"an8":{"a3":[],"c":[]},"Hi":{"M":[],"c":[]},"acJ":{"T":["Hi"]},"aAh":{"a3":[],"c":[]},"LT":{"M":[],"c":[]},"aVX":{"T":["LT"]},"aov":{"M":[],"c":[]},"apX":{"a3":[],"c":[]},"a9l":{"M":[],"c":[]},"aWn":{"T":["a9l"]},"a8R":{"dN":["jR"]},"acl":{"M":[],"c":[]},"akv":{"T":["acl"]},"Nl":{"M":[],"c":[]},"b_7":{"T":["Nl"]},"a11":{"a3":[],"c":[]},"LR":{"M":[],"c":[]},"aVU":{"T":["LR"]},"aco":{"dN":["acn"]},"acp":{"dN":["Nm"]},"acq":{"dN":["WK"]},"acu":{"dN":["act"]},"acs":{"dN":["acr"]},"acm":{"M":[],"c":[]},"b_8":{"T":["acm"]},"No":{"M":[],"c":[]},"G0":{"M":[],"c":[]},"b_a":{"T":["No"]},"b_9":{"T":["G0"]},"Np":{"M":[],"c":[]},"b_b":{"T":["Np"]},"Nq":{"M":[],"c":[]},"b_c":{"T":["Nq"]},"WJ":{"a3":[],"c":[]},"Nn":{"a3":[],"c":[]},"WI":{"a3":[],"c":[]},"WL":{"a3":[],"c":[]},"a57":{"bP":[]},"aAi":{"bP":[]},"a7l":{"dN":["jp"]},"GZ":{"M":[],"c":[]},"abU":{"M":[],"c":[]},"aKa":{"T":["GZ"]},"aZw":{"T":["abU"]},"I_":{"M":[],"c":[]},"MA":{"M":[],"c":[]},"aMA":{"T":["I_"]},"aXW":{"T":["MA"]},"Ig":{"M":[],"c":[]},"a1D":{"M":[],"c":[]},"aax":{"M":[],"c":[]},"aNv":{"T":["Ig"]},"ana":{"M":[],"c":[]},"aNd":{"T":["a1D"]},"aja":{"T":["aax"]},"asf":{"M":[],"c":[]},"M8":{"M":[],"c":[]},"aWo":{"T":["M8"]},"apf":{"a3":[],"c":[]},"aJK":{"a3":[],"c":[]},"JP":{"M":[],"c":[]},"afA":{"T":["JP"]},"Ll":{"M":[],"c":[]},"Lk":{"M":[],"c":[]},"aTY":{"T":["Ll"]},"aC8":{"a3":[],"c":[]},"agW":{"T":["Lk"]},"aex":{"a3":[],"c":[]},"agV":{"a3":[],"c":[]},"K7":{"M":[],"c":[]},"aab":{"M":[],"c":[]},"Hv":{"M":[],"c":[]},"a00":{"M":[],"c":[]},"vu":{"M":[],"c":[]},"aaa":{"M":[],"c":[]},"aR6":{"T":["K7"]},"aXe":{"T":["aab"]},"aLD":{"T":["Hv"]},"aLB":{"T":["a00"]},"aLC":{"T":["vu"]},"aXd":{"T":["aaa"]},"MH":{"M":[],"c":[]},"Yb":{"M":[],"c":[]},"agQ":{"M":[],"c":[]},"ajC":{"T":["MH"]},"aGn":{"a3":[],"c":[]},"aTQ":{"T":["Yb"]},"aTP":{"T":["agQ"]},"aC7":{"tK":[]},"abS":{"dN":["FO"]},"ab6":{"dN":["qN"]},"a9J":{"dN":["V"]},"a6k":{"aC":[]},"abh":{"abj":[]},"MO":{"abj":[]},"wW":{"abj":[]},"dY":{"jz":[]},"mF":{"jz":[]},"a03":{"mF":[],"jz":[]},"pD":{"dY":[],"jz":[]},"lQ":{"dY":[],"jz":[]},"mE":{"dY":[],"jz":[]},"ns":{"dY":[],"jz":[]},"nt":{"dY":[],"jz":[]},"iN":{"hb":[]},"ut":{"M":[],"c":[]},"LF":{"a3":[],"c":[]},"aiE":{"T":["ut"]},"wY":{"M":[],"c":[]},"VZ":{"a3":[],"c":[]},"ajH":{"T":["wY"]},"MS":{"M":[],"c":[]},"aYu":{"T":["MS"]},"Jw":{"M":[],"c":[]},"afb":{"T":["Jw"]},"MX":{"M":[],"c":[]},"aYx":{"T":["MX"]},"Kx":{"M":[],"c":[]},"MT":{"a3":[],"c":[]},"agi":{"T":["Kx"]},"aGv":{"a3":[],"c":[]},"aGz":{"M":[],"c":[]},"MN":{"M":[],"c":[]},"ajE":{"T":["MN"]},"MP":{"M":[],"c":[]},"ajF":{"T":["MP"]},"AA":{"M":[],"c":[]},"Tk":{"a3":[],"c":[]},"Tj":{"M":[],"c":[]},"ajJ":{"T":["AA"]},"aB1":{"a3":[],"c":[]},"aB2":{"a3":[],"c":[]},"aGC":{"a3":[],"c":[]},"wZ":{"M":[],"c":[]},"KQ":{"a3":[],"c":[]},"ajK":{"T":["wZ"]},"awU":{"a3":[],"c":[]},"a6L":{"a3":[],"c":[]},"MZ":{"M":[],"c":[]},"W0":{"M":[],"c":[]},"MY":{"M":[],"c":[]},"Lp":{"a3":[],"c":[]},"ajL":{"T":["MZ"]},"aYz":{"T":["W0"]},"aYy":{"T":["MY"]},"N0":{"M":[],"c":[]},"aYB":{"T":["N0"]},"N1":{"M":[],"c":[]},"ajM":{"T":["N1"]},"N_":{"M":[],"c":[]},"N2":{"M":[],"c":[]},"aYA":{"T":["N_"]},"aYC":{"T":["N2"]},"aGF":{"a3":[],"c":[]},"FF":{"M":[],"c":[]},"aYD":{"T":["FF"]},"N5":{"M":[],"c":[]},"aYE":{"T":["N5"]},"aGM":{"a3":[],"c":[]},"N6":{"M":[],"c":[]},"aYF":{"T":["N6"]},"aCj":{"M":[],"c":[]},"anr":{"M":[],"c":[]},"abe":{"M":[],"c":[]},"aYq":{"T":["abe"]},"aGD":{"tK":[]},"aGE":{"tK":[]},"aGy":{"tK":[]},"VW":{"a3":[],"c":[]},"aut":{"a3":[],"c":[]},"auu":{"a3":[],"c":[]},"abi":{"M":[],"c":[]},"abf":{"M":[],"c":[]},"abg":{"M":[],"c":[]},"aYt":{"T":["abi"]},"aYr":{"T":["abf"]},"aYs":{"T":["abg"]},"MQ":{"M":[],"c":[]},"ajG":{"T":["MQ"]},"MU":{"M":[],"c":[]},"ajI":{"T":["MU"]},"aGG":{"a3":[],"c":[]},"W1":{"a3":[],"c":[]},"N4":{"M":[],"c":[]},"ajN":{"T":["N4"]},"N3":{"a3":[],"c":[]},"MR":{"a3":[],"c":[]},"wX":{"a3":[],"c":[]},"aGx":{"M":[],"c":[]},"abl":{"a3":[],"c":[]},"To":{"a3":[],"c":[]},"ZH":{"a3":[],"c":[]},"N7":{"M":[],"c":[]},"ajO":{"T":["N7"]},"abm":{"bG":[],"bl":[],"c":[]},"AB":{"M":[],"c":[]},"abo":{"T":["AB"]},"aGu":{"a3":[],"c":[]},"aYp":{"a3":[],"c":[]},"abd":{"a3":[],"c":[]},"FD":{"a3":[],"c":[]},"a15":{"a3":[],"c":[]},"a1w":{"M":[],"c":[]},"MV":{"M":[],"c":[]},"Pf":{"a3":[],"c":[]},"arZ":{"T":["a1w"]},"aYv":{"T":["MV"]},"a4T":{"a3":[],"c":[]},"a0F":{"a3":[],"c":[]},"awS":{"a3":[],"c":[]},"atj":{"a3":[],"c":[]},"W_":{"a3":[],"c":[]},"avc":{"a3":[],"c":[]},"a3S":{"a3":[],"c":[]},"atl":{"a3":[],"c":[]},"ac4":{"M":[],"c":[]},"MW":{"M":[],"c":[]},"a4x":{"M":[],"c":[]},"HY":{"a3":[],"c":[]},"Fp":{"a3":[],"c":[]},"aHO":{"T":["ac4"]},"aYw":{"T":["MW"]},"abk":{"a3":[],"c":[]},"aw7":{"M":[],"c":[]},"aft":{"T":["a4x"]},"as4":{"a3":[],"c":[]},"aGK":{"a3":[],"c":[]},"a_k":{"aC":[]},"m3":{"hu":["1?"],"hu.T":"1?"},"vt":{"hu":["1"],"hu.T":"1"},"C7":{"hu":["A"],"hu.T":"A"},"u3":{"hu":["1"],"hu.T":"1"},"mq":{"a3":[],"c":[]},"Hz":{"M":[],"c":[]},"aLQ":{"T":["Hz"]},"aDz":{"a3":[],"c":[]},"a4a":{"M":[],"c":[]},"RC":{"a3":[],"c":[]},"aQ9":{"T":["a4a"]},"Ra":{"a3":[],"c":[]},"azN":{"a3":[],"c":[]},"aAc":{"a3":[],"c":[]},"a6F":{"M":[],"c":[]},"aSS":{"T":["a6F"]},"aiF":{"a3":[],"c":[]},"aSR":{"a3":[],"c":[]},"a4o":{"M":[],"c":[]},"aQh":{"T":["a4o"]},"Nk":{"M":[],"c":[]},"akf":{"T":["Nk"]},"azR":{"eH":[],"aE":[],"c":[]},"Eg":{"qJ":[],"f6":["H"],"dT":[]},"aCX":{"da":[],"ap":["H","Eg"],"H":[],"ay":[],"ap.1":"Eg","ap.0":"H"},"a8j":{"da":[],"aZ":["da"],"H":[],"ay":[]},"aDf":{"da":[],"aZ":["J"],"H":[],"ay":[]},"a9O":{"M":[],"c":[]},"aWN":{"T":["a9O"]},"aWM":{"bt":[],"aE":[],"c":[]},"aEW":{"bt":[],"aE":[],"c":[]},"lw":{"uv":[],"cT":["uv"]},"i8":{"An":[],"uw":[],"cT":["uw"]},"uv":{"cT":["uv"]},"aF8":{"uv":[],"cT":["uv"]},"uw":{"cT":["uw"]},"aF9":{"uw":[],"cT":["uw"]},"aFa":{"bP":[]},"Vd":{"kV":[],"bP":[]},"Ve":{"uw":[],"cT":["uw"]},"An":{"uw":[],"cT":["uw"]},"m5":{"dC":[]},"a4R":{"m5":[],"dC":[]},"JU":{"fM":[],"dC":[]},"fM":{"dC":[]},"uR":{"fU":[]},"aHn":{"dC":[]},"oT":{"mg":["oT<1>"],"mg.E":"oT<1>"},"aFi":{"e3":[]},"aah":{"kV":[],"bP":[]},"Yj":{"J":[],"aZ":["J"],"H":[],"ay":[]},"av1":{"bt":[],"aE":[],"c":[]},"ahw":{"J":[],"aZ":["J"],"H":[],"ay":[]},"av0":{"bt":[],"aE":[],"c":[]},"Nt":{"a3":[],"c":[]},"aRz":{"a3":[],"c":[]},"aRy":{"a3":[],"c":[]},"aRC":{"a3":[],"c":[]},"adD":{"M":[],"c":[]},"aMh":{"T":["adD"]},"asx":{"a3":[],"c":[]},"Q4":{"a3":[],"c":[]},"anR":{"bt":[],"aE":[],"c":[]},"O2":{"J":[],"aZ":["J"],"H":[],"ay":[]},"a5S":{"M":[],"c":[]},"adE":{"T":["a5S"]},"aR9":{"a3":[],"c":[]},"Ko":{"M":[],"c":[]},"ag4":{"T":["Ko"]},"aRJ":{"bt":[],"aE":[],"c":[]},"ahG":{"J":[],"aZ":["J"],"H":[],"ay":[]},"ti":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"azr":{"h7":["ti"],"bl":[],"c":[],"h7.T":"ti"},"azo":{"eH":[],"aE":[],"c":[]},"ahE":{"bD":["J","ti"],"J":[],"ap":["J","ti"],"H":[],"ay":[],"ap.1":"ti","bD.1":"ti","bD.0":"J","ap.0":"J"},"SL":{"M":[],"c":[]},"Ec":{"yu":["v1","SL"],"T":["SL"],"yu.0":"v1"},"ag6":{"M":[],"c":[]},"aRD":{"T":["ag6"]},"asO":{"fh":[],"aC":[]},"Yt":{"nn":[],"iF":[],"aC":[],"l8":[]},"Ha":{"M":[],"c":[]},"tj":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"aKx":{"T":["Ha"]},"azs":{"h7":["tj"],"bl":[],"c":[],"h7.T":"tj"},"azp":{"eH":[],"aE":[],"c":[]},"ahF":{"bD":["J","tj"],"J":[],"ap":["J","tj"],"H":[],"ay":[],"ap.1":"tj","bD.1":"tj","bD.0":"J","ap.0":"J"},"Kp":{"M":[],"c":[]},"aRH":{"T":["Kp"]},"aVT":{"a3":[],"c":[]},"Kq":{"M":[],"c":[]},"azv":{"T":["Kq"]},"aRu":{"a3":[],"c":[]},"SM":{"M":[],"c":[]},"SN":{"yu":["jn","SM"],"T":["SM"],"yu.0":"jn"},"Gh":{"M":[],"c":[]},"b_e":{"bt":[],"aE":[],"c":[]},"akw":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aRs":{"T":["Gh"]},"Ae":{"aC":[]},"Qq":{"Ag":[]},"asZ":{"Ag":[]},"KI":{"M":[],"c":[]},"Tc":{"T":["KI"],"cy3":[]},"acR":{"M":[],"c":[]},"aL8":{"T":["acR"]},"aiy":{"M":[],"c":[]},"Ma":{"a3":[],"c":[]},"aWr":{"T":["aiy"]},"a62":{"a3":[],"c":[]},"us":{"pm":[],"fg":[],"em":[],"eT":[]},"ur":{"mh":[],"fg":[],"em":[],"eT":[]},"aRx":{"a5M":[]},"aud":{"zl":[]},"jO":{"jn":[]},"qm":{"jn":[]},"P_":{"bt":[],"aE":[],"c":[]},"Ub":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Fj":{"aC":[]},"asY":{"Cv":[]},"azn":{"zl":[]},"a1S":{"a3":[],"c":[]},"aZQ":{"bt":[],"aE":[],"c":[]},"ahU":{"J":[],"aZ":["J"],"H":[],"ay":[]},"Wu":{"M":[],"c":[]},"Wv":{"T":["Wu"]},"aiK":{"J":[],"aZ":["J"],"H":[],"ay":[]},"aHS":{"Wv":[],"T":["Wu"]},"b_d":{"yq":["W"],"aC":[]},"aX3":{"bt":[],"aE":[],"c":[]},"aX2":{"eH":[],"aE":[],"c":[]},"NU":{"fa":["J"],"hf":[],"f6":["J"],"dT":[]},"ahT":{"bD":["J","fa"],"J":[],"ap":["J","fa"],"H":[],"ay":[],"ap.1":"fa","bD.1":"fa","bD.0":"J","ap.0":"J"},"ab1":{"M":[],"c":[]},"ajv":{"T":["ab1"]},"aDn":{"J":[],"H":[],"ay":[]},"aHq":{"bP":[]},"aDl":{"J":[],"H":[],"ay":[]},"aD_":{"J":[],"H":[],"ay":[]},"abQ":{"M":[],"c":[]},"aZv":{"T":["abQ"]},"aUa":{"bt":[],"aE":[],"c":[]},"aUc":{"bt":[],"aE":[],"c":[]},"aU9":{"bt":[],"aE":[],"c":[]},"lB":{"EC":[]},"qo":{"EC":[]},"kO":{"EC":[]},"a0M":{"EC":[]},"DZ":{"tX":[]},"ER":{"tX":[]},"m1":{"fL":[]},"aOn":{"fL":[]},"aH_":{"fL":[]},"aHH":{"m1":[],"fL":[]},"Tl":{"m1":[],"fL":[]},"aGb":{"m1":[],"fL":[]},"aDV":{"m1":[],"fL":[]},"a0I":{"fL":[]},"a5k":{"fL":[]},"Tr":{"m1":[],"fL":[]},"Qp":{"m1":[],"fL":[]},"aG9":{"m1":[],"fL":[]},"avS":{"m1":[],"fL":[]},"a6U":{"fL":[]},"Um":{"fL":[]},"aDx":{"fL":[]},"aDw":{"fL":[]},"aDt":{"fL":[]},"aDu":{"fL":[]},"a8r":{"fL":[]},"aDv":{"fL":[]},"FO":{"cT":["FO"]},"abX":{"M":[],"c":[]},"abZ":{"bm":["FR"],"dq":["FR"],"aC":[]},"aZB":{"he":[]},"aZD":{"T":["abX"]},"aZE":{"a3":[],"c":[]},"B1":{"bg":["1"],"bg.T":"1"},"aev":{"B1":["1"],"bg":["1"],"bg.T":"1"},"aeB":{"oH":["1"]},"aHN":{"a3":[],"c":[]},"aJR":{"FY":[]},"aJW":{"bP":[]},"aJY":{"kV":[],"bP":[]},"WH":{"bz":["f"]},"aJS":{"aT":["x","f"],"aT.S":"x","aT.T":"f"},"tc":{"hk":[]},"uW":{"hk":[]},"uX":{"hk":[]},"uY":{"hk":[]},"nw":{"hk":[]},"uZ":{"hk":[]},"mH":{"hk":[]},"ach":{"hk":[]},"FZ":{"ach":[],"hk":[]},"aJT":{"B":["hk"],"B.E":"hk"},"BO":{"hv":[]},"Fw":{"hv":[]},"abT":{"hv":[]},"aaF":{"hv":[]},"ZM":{"hv":[]},"F5":{"hv":[]},"aci":{"kV":[],"bP":[]},"acj":{"c3":["@","@"],"aHc":["@","@"],"x9":[],"aN":["@","@"],"c3.V":"@","c3.K":"@"},"aK0":{"a2":["@"],"x":["@"],"aO":["@"],"x9":[],"B":["@"],"a2.E":"@","B.E":"@"},"nx":{"x9":[]},"cwj":{"a32":[],"vH":[]},"cwK":{"a32":[],"Dj":[]},"d3G":{"M":[],"c":[]},"d9H":{"M":[],"c":[]},"d5a":{"M":[],"c":[]},"d5b":{"T":["d5a"]},"djr":{"bG":[],"bl":[],"c":[]},"daP":{"bG":[],"bl":[],"c":[]},"d4k":{"eU":[],"bG":[],"bl":[],"c":[]},"bBZ":{"bz":["1"]},"ddt":{"aC":[]},"d9a":{"L1":[]}}')) +A.djA(v.typeUniverse,JSON.parse('{"a37":1,"aHb":1,"Wh":1,"akH":2,"a0X":1,"SW":1,"hW":1,"azS":1,"aad":1,"aXC":1,"aNq":1,"Wi":2,"aX9":2,"aX8":2,"aiO":2,"aiP":1,"aiQ":1,"ak0":2,"aoR":1,"YP":1,"cT":1,"XF":1,"agY":1,"aHd":1,"ak1":1,"mm":1,"a8s":1,"a_t":1,"a3h":1,"a_B":1,"Ua":1,"dhj":1,"av7":1,"a3P":1,"anU":1,"aBQ":1,"P4":1,"ad0":1,"ad1":1,"BU":1,"PW":1,"adw":1,"adx":1,"ady":1,"a6O":1,"akD":1,"ald":1,"Z6":1,"Z7":1,"abq":1,"dq":1,"a5A":1,"afU":1,"ale":1,"Z4":1,"a93":1,"W4":1,"adB":1,"f6":1,"l4":1,"a7T":1,"Yi":1,"ahJ":1,"Uk":1,"lq":1,"Xr":1,"RF":1,"Hb":1,"XB":1,"ne":1,"aH1":1,"cKA":1,"oi":1,"it":1,"pr":1,"ahX":1,"aDM":1,"Ux":1,"Z5":1,"Ta":1,"ax5":1,"a7e":1,"NR":1,"Yd":1,"agw":1,"a9S":2,"aiI":2,"hM":1,"e5":1,"ajW":1,"a7b":2,"a1_":1,"FU":1,"a55":1,"avj":1,"af5":1,"af6":1,"af7":1,"aQv":3,"aDA":1,"a4W":1,"a8p":2,"a52":1,"aw3":1,"aNr":1,"aDU":1,"xY":1,"vZ":1,"ZP":1,"aAz":1,"aeE":5,"agR":1,"agS":2,"agT":2,"akB":2,"alf":2,"Hk":1,"acK":1,"afv":1,"Uq":1,"lM":2,"aiT":2,"anq":1,"Ap":1,"acL":1,"aiU":1,"a3y":2,"aHJ":2,"aty":2,"bhA":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, ",v:" or improve the response time of the server.",X:'"recorder" must not already be associated with another Canvas.',Y:"$remainingCount na character ang natitira",T:"% of the way to being a CircleBorder that is ",N:"' has been assigned during initialization.",g:"*.avi *.flv *.mkv *.mov *.mp4 *.mpeg *.webm *.wmv",f5:"*.avi *.flv *.mkv *.mov *.mp4 *.mpeg *.webm *.wmv *.bmp *.gif *.jpeg *.jpg *.png",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",fH:"04000000000000000000000000000000000000000000000000000000000000000041ece55743711a8c3cbf3783cd08c0ee4d4dc440d4641a8f366e550dfdb3bb67",eE:"0400000000000000000000000000000000000000000000000000000000000000018d91e471e0989cda27df505a453f2b7635294f2ddf23e3b122acc99c9e9f1e14",e:"5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b",j:"64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1",W:"7fffffffffffffffffffffff7fffffffffff8000000000007ffffffffffc",d:"7fffffffffffffffffffffff7fffffffffff8000000000007fffffffffff",fD:"8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565",d8:"8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53",dw:"9b9f605f5a858107ab1ec85e6b41c8aa582ca3511eddfb74f02f3a6598980bb9",ef:"9b9f605f5a858107ab1ec85e6b41c8aacf846e86789051d37998f7b9022d7598",dY:"9b9f605f5a858107ab1ec85e6b41c8aacf846e86789051d37998f7b9022d759b",fq:": URI should have a non-empty host name: ",C:"===== asynchronous gap ===========================\n",et:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+,",U:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t:"Broadcast stream controllers do not support pause callbacks",h8:"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.',bm:"ChaCha20 not initialized: please call init() first",b:"Chinese (Simplified, Hong Kong SAR China)",O:"Chinese (Traditional, Hong Kong SAR China)",d3:'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',f_:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type",e9:"Failed to load network image.\nImage URL: ",o:"Initialization vector must be the same length as block size",s:"Input buffer too short or requested length too long",P:"None of the patterns in the switch expression the matched input value. See https://github.com/dart-lang/language/issues/3488 for details.",dE:"Noors - Bokm\xe5l (Spitsbergen en Jan Mayen)",l:"Output buffer too short or requested length too long",gL:'PathMetricIterator is not pointing to a PathMetric. This can happen in two situations:\n- The iteration has not started yet. If so, call "moveNext" to start iteration.\n- The iterator ran out of elements. If so, check that "moveNext" returns true prior to calling "current".',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.",p:"SystemChrome.setApplicationSwitcherDescription",au:"TextInputClient.updateEditingStateWithDeltas",gP:"TextInputClient.updateEditingStateWithTag",r:"The `handler` has already been called, make sure each handler gets called only once.",aM:'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',a2:"There was a problem trying to load FontManifest.json",Z:"To use an in-app web view, you must provide an http(s) URL.",u:"Uint64 accessor not supported by dart2js.",_:"Ukingo wa Magharibi na Ukanda wa Gaza wa Palestina",g6:"Uni\xf3n de Rep\xfablicas Socialistas Sovi\xe9ticas",k:"You cannot add items while items are being added from addStream",f:"a9fb57dba1eea9bc3e660a909d838d718c397aa3b561a6f7901e0e82974856a7",cl:"a9fb57dba1eea9bc3e660a909d838d726e3bf623d52620282013481d1f6e5377",hg:"aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069",A:"aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3",f6:"application/vnd.oasis.opendocument.presentation",cD:"application/vnd.oasis.opendocument.spreadsheet",B:"application/vnd.openxmlformats-officedocument.presentationml.presentation",gK:"application/vnd.openxmlformats-officedocument.presentationml.template",I:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",eM:"application/vnd.openxmlformats-officedocument.spreadsheetml.template",G:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",m:"application/vnd.openxmlformats-officedocument.wordprocessingml.template",hh:"application/x-www-form-urlencoded;charset=utf-8",aP:"c302f41d932a36cda7a3462f9e9e916b5be8f1029ac4acc1",fN:"c302f41d932a36cda7a3463093d18db78fce476de1a86297",h:"called ProviderSubscription.read on a subscription that was closed",x:"d35e472036bc4fb7e13c785ed201e065f98fcfa5b68f12a32d482ec7ee8658e98691555b44c59311",gM:"d35e472036bc4fb7e13c785ed201e065f98fcfa6f6f40def4f92b9ec7893ec28fcd412b1f1b32e27",bn:"d7c134aa264366862a18302575d0fb98d116bc4b6ddebca3a5a7939f",H:"d7c134aa264366862a18302575d1d787b09f075797da89f57ec8c0ff",a:"dev.fluttercommunity.plus/share/unavailable",bc:"expected-attribute-value-but-got-right-bracket",gX:"expected-closing-tag-but-got-right-bracket",fa:"expected-doctype-name-but-got-right-bracket",e1:"expected-space-or-right-bracket-in-doctype",cn:"ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",L:"ffffffff00000001000000000000000000000000fffffffffffffffffffffffc",hf:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff",di:"ffffffffffffffffffffffff99def836146bc9b1b4d22831",R:"fffffffffffffffffffffffffffffffefffffffffffffffc",F:"fffffffffffffffffffffffffffffffeffffffffffffffff",e5:"ffffffffffffffffffffffffffffffff6c611070995ad10045841b09b761b893",d2:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd94",ep:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd97",y:"gl_Position = ((u_ctransform * position) * u_scale) + u_shift;",db:"handleError callback must take either an Object (the error), or both an Object (the error) and a StackTrace.",cR:"https://authserver.sit.edu.cn/authserver/index.do",n:"https://authserver.sit.edu.cn/authserver/login",i:"kineski (pojednostavljeno kinesko pismo, Kina)",gi:"kineski (pojednostavljeno kinesko pismo, Singapur)",bl:"kineski (tradicionalno kinesko pismo, Tajvan)",E:"max must be in range 0 < max \u2264 2^32, was ",gU:"portugisiskbasert kreol- eller pidginspr\xe5k",eu:"unexpected-bang-after-double-dash-in-comment",ey:"unexpected-character-after-attribute-value",gk:"unexpected-character-after-soldius-in-tag",cp:"unexpected-character-in-unquoted-attribute-value",gN:"unexpected-dash-after-double-dash-in-comment",fW:"unexpected-frameset-in-frameset-innerhtml",he:"unexpected-html-element-in-foreign-content",M:"unexpected-start-tag-implies-table-voodoo",fX:"unexpected-table-element-end-tag-in-select-in-table",e7:"unexpected-table-element-start-tag-in-select-in-table",J:"vec2 center = 0.5 * (u_resolution + u_tile_offset);",h7:"vec4 localCoord = m_gradient * vec4(gl_FragCoord.x - center.x, center.y - gl_FragCoord.y, 0, 1);",bb:"\u0435\u043d\u0433\u043b\u0435\u0441\u043a\u0438 (\u0411\u0440\u0438\u0442\u0430\u043d\u0441\u043a\u0430 \u0442\u0435\u0440\u0438\u0442\u043e\u0440\u0438\u0458\u0430 \u0443 \u0418\u043d\u0434\u0438\u0458\u0441\u043a\u043e\u043c \u043e\u043a\u0435\u0430\u043d\u0443)",c3:"\u043a\u0438\u043d\u0435\u0441\u043a\u0438 (\u043f\u043e\u0458\u0435\u0434\u043d\u043e\u0441\u0442\u0430\u0432\u0459\u0435\u043d\u043e \u043a\u0438\u043d\u0435\u0441\u043a\u043e \u043f\u0438\u0441\u043c\u043e, \u041a\u0438\u043d\u0430)",ee:"\u043a\u0438\u043d\u0435\u0441\u043a\u0438 (\u043f\u043e\u0458\u0435\u0434\u043d\u043e\u0441\u0442\u0430\u0432\u0459\u0435\u043d\u043e \u043a\u0438\u043d\u0435\u0441\u043a\u043e \u043f\u0438\u0441\u043c\u043e, \u0421\u0438\u043d\u0433\u0430\u043f\u0443\u0440)",gY:"\u043a\u0438\u043d\u0435\u0441\u043a\u0438 (\u043f\u043e\u0458\u0435\u0434\u043d\u043e\u0441\u0442\u0430\u0432\u0459\u0435\u043d\u043e \u043a\u0438\u043d\u0435\u0441\u043a\u043e \u043f\u0438\u0441\u043c\u043e, \u0425\u043e\u043d\u0433 \u041a\u043e\u043d\u0433 \u0421. \u0410. \u0420. \u041a\u0438\u043d\u0430)",eC:"\u043a\u0438\u043d\u0435\u0441\u043a\u0438 (\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e \u043a\u0438\u043d\u0435\u0441\u043a\u043e \u043f\u0438\u0441\u043c\u043e, \u0422\u0430\u0458\u0432\u0430\u043d)",g_:"\u043a\u0438\u043d\u0435\u0441\u043a\u0438 (\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e \u043a\u0438\u043d\u0435\u0441\u043a\u043e \u043f\u0438\u0441\u043c\u043e, \u0425\u043e\u043d\u0433 \u041a\u043e\u043d\u0433 \u0421. \u0410. \u0420. \u041a\u0438\u043d\u0430)",ca:"\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.al +return{cu:s("@<@>"),lB:s("OI"),vH:s("d1x"),od:s("cg"),_T:s("BM"),gj:s("xP"),F2:s("H4"),mf:s("amU"),pC:s("jE"),kt:s("ON"),ZU:s("ZQ"),A_:s("xU"),N3:s("cR"),Jo:s("cR"),rb:s("cR"),o:s("cR"),Bs:s("cR"),s1:s("a_d"),jx:s("anb"),XM:s("cP"),vp:s("Hf"),S7:s("a_h"),V5:s("b4b"),pR:s("BW"),MG:s("a_i"),Y_:s("a_k"),Pg:s("m1"),fN:s("d1T"),kE:s("dxc"),Tz:s("cEU"),Ie:s("cEW"),p_:s("re"),_B:s("OR"),jZ:s("a_n"),IN:s("vn"),CT:s("xX"),Ul:s("xZ"),M1:s("ant"),sE:s("nO"),rh:s("mS"),Wo:s("vo"),DK:s("hD"),PX:s("BY"),vs:s("k8"),Gu:s("nQ"),L4:s("lr"),y7:s("OY"),Al:s("C0"),vR:s("C1"),sP:s("aH"),UE:s("C2"),mw:s("jd"),kI:s("p_"),qX:s("y3"),fk:s("a_J"),Ma:s("a_L"),Ef:s("P6"),qt:s("a_P"),WZ:s("Hq"),m3:s("dJ"),Au:s("a_U"),Dy:s("Ht<@>"),k:s("aG"),cb:s("C7"),V6:s("m3"),LU:s("m3"),fO:s("m3"),dl:s("m3"),cm:s("m3"),K9:s("vt"),r:s("hf"),PG:s("kG<@>"),ZT:s("mU"),Oq:s("p0"),FN:s("ho"),v0:s("a04"),G9:s("ig"),fC:s("ig"),Z_:s("ig"),Gj:s("ig"),Xj:s("a06"),pI:s("aom"),V4:s("ei"),Pt:s("b7K"),LE:s("rg"),wY:s("ej
    "),nz:s("ej"),Nv:s("ej"),OZ:s("ej"),bg:s("ej"),_M:s("ej"),gv:s("ej"),Dd:s("ej"),D5:s("ej"),Tx:s("ej"),fn:s("ej"),sl:s("ej"),Tw:s("ej"),_n:s("ej"),Vf:s("ej"),f6:s("ej"),jU:s("ej"),vE:s("ej"),O1:s("Pn"),lD:s("kH"),zJ:s("aoz"),y_:s("pZ"),pa:s("ek?,dG<@>>"),Lp:s("rh"),JD:s("q_"),gZ:s("Pq"),f_:s("cFC"),R_:s("cFD"),Uq:s("HF"),Uc:s("m5"),I2:s("dxI"),ao:s("ka"),qF:s("cH"),ES:s("d2E"),Lt:s("a0j"),Ox:s("cFH"),aL:s("d2I"),Vo:s("jH"),iX:s("aoU"),me:s("aoW"),Lh:s("a0n"),XY:s("HK"),p1:s("tD"),qo:s("Px"),tG:s("ap8"),m6:s("ap9"),E_:s("Py"),Bn:s("HL"),wW:s("tE"),S3:s("a0q"),Hh:s("PA"),V1:s("apd"),wI:s("a0s"),o6:s("a0u"),mZ:s("vz"),pf:s("hp"),pb:s("a0y"),mv:s("HN"),id:s("nU"),wS:s("a0D"),nR:s("a0H"),Kb:s("aph()"),xG:s("PG"),O5:s("HO"),Ed:s("cFS"),Hz:s("e0"),hP:s("nV"),G:s("v"),Zn:s("PK"),U_:s("m6"),Qn:s("kI"),IC:s("fp"),R4:s("PQ<@>"),Ao:s("a0T"),HH:s("PR"),b8:s("cT<@>"),WG:s("PS<~>"),cA:s("df"),ny:s("cG3"),hk:s("PX"),nF:s("lt"),HA:s("tG"),F6:s("HU"),M:s("y"),w:s("y"),eL:s("y"),AH:s("y>"),fF:s("kd"),Bx:s("PZ"),Sh:s("a0Z"),_D:s("cvO"),a9:s("fa"),vn:s("Q1"),T:s("kJ"),pU:s("ap>"),Kl:s("Q5"),VQ:s("apR"),Ou:s("kK"),dz:s("yn"),wj:s("rl"),c0:s("kL"),W8:s("fJ"),d1:s("apZ"),oV:s("Q8"),YW:s("kN"),SO:s("Q9"),wB:s("Cl"),ZC:s("kO"),VD:s("d3G"),ho:s("b6"),Hn:s("nZ<~>"),My:s("a1p<@>"),At:s("Qe"),H5:s("a1s"),WS:s("vC"),HY:s("eA"),ip:s("a1u"),I7:s("vD"),Bk:s("I7"),ej:s("d48"),fs:s("Qh"),d:s("am"),C9:s("a1A"),je:s("Qj"),Hw:s("lu"),u5:s("Qn"),l4:s("d4h"),Uf:s("Cq"),Bt:s("d4k"),uy:s("d4m"),sp:s("Cr"),rg:s("dya"),JX:s("asG"),qu:s("asJ"),E2:s("hV"),aj:s("cGM"),I:s("rn"),ra:s("a1P"),Db:s("vH"),Tg:s("kT"),m4:s("cwj"),xm:s("mX"),Xq:s("Qu"),zo:s("jg"),uZ:s("asQ>"),tw:s("a1T"),Ud:s("a1U"),UL:s("a1V"),Jj:s("d4K"),V:s("a1Y"),VF:s("a1Z"),ft:s("a2_"),T6:s("vI"),By:s("asT"),ef:s("a20"),_q:s("yA"),s0:s("asU"),Cd:s("vK"),Do:s("yB>"),wV:s("Cv"),uL:s("vL"),zk:s("ro"),Rs:s("at1"),cs:s("d5d"),aD:s("ke"),Tu:s("aU"),bn:s("tO"),Ys:s("tP"),OM:s("Cy"),uN:s("Cz"),B_:s("CA"),yV:s("CB"),ac:s("CC"),Hr:s("CD"),An:s("CE"),hF:s("CF"),FO:s("CG"),ea:s("CH"),o9:s("CI"),GC:s("CJ"),bL:s("CK"),ms:s("CL"),Xe:s("CM"),Pi:s("CN"),Dq:s("CO"),Pe:s("CP"),Wy:s("CQ"),D0:s("CR"),TH:s("CS"),FU:s("CT"),G8:s("CU"),B0:s("CV"),O0:s("CW"),a5:s("CX"),mU:s("CY"),FF:s("CZ"),oC:s("D_"),EV:s("D0"),_r:s("D1"),BP:s("D2"),fQ:s("D3"),LZ:s("D4"),BS:s("D5"),U4:s("D6"),gy:s("D7"),cP:s("D8"),Jm:s("D9"),Wr:s("Da"),Pp:s("Db"),zH:s("a2i"),Wc:s("q6"),A0:s("h5"),__:s("dz5"),Ee:s("aO<@>"),JK:s("a2s"),lU:s("bJ"),Si:s("dk"),dr:s("d69"),wl:s("QJ"),GB:s("a2z"),rp:s("d7"),lz:s("yG"),m1:s("vR"),VZ:s("IA"),IH:s("a2E"),S9:s("ats"),X8:s("att"),Zs:s("a2G"),oy:s("IC"),TS:s("IC<~>"),T4:s("ch"),Cr:s("e3"),I3:s("bK"),fw:s("fd"),y8:s("vV"),K3:s("a2N"),RG:s("o6"),VI:s("bP"),IX:s("eE"),gt:s("Df"),oB:s("Dg"),Py:s("tQ"),mR:s("tQ>"),XT:s("tQ>"),q_:s("dR"),_w:s("vW"),jy:s("vX"),OO:s("pb"),oa:s("IR"),b9:s("IS"),P9:s("vY"),xC:s("Dh"),mh:s("a30"),gw:s("vZ"),ai:s("a31"),rq:s("n_"),sO:s("QW"),jL:s("q7"),cL:s("yK"),nZ:s("cI9"),vi:s("a32"),hS:s("Dj"),lC:s("cwK"),Q9:s("d7_"),yN:s("IW"),Gx:s("Dp"),Ii:s("tS>"),vo:s("tS>"),TJ:s("tS<+(f,x)>"),US:s("fr"),N8:s("a3l"),s4:s("bim"),OE:s("bin"),Kw:s("biJ"),mx:s("hG"),l5:s("yO"),zq:s("R3"),ia:s("IY"),Ig:s("R4"),VW:s("IZ"),FK:s("n2"),jX:s("a3x"),aB:s("J_"),c4:s("w0"),jR:s("o8"),eH:s("tW"),gx:s("q9<@>"),F0:s("R7"),bE:s("kV"),OP:s("qa"),Uy:s("J3"),Nh:s("n3"),OL:s("fU"),CE:s("pc"),_8:s("rr"),Z9:s("a8"),xd:s("a8(f,aN)"),Ev:s("a8()"),L0:s("a8<@>"),T8:s("a8"),f8:s("a8"),i4:s("a8"),f1:s("a8"),ML:s("a8"),Rt:s("a8"),yQ:s("a8"),Sg:s("a8"),uz:s("a8<~>"),bH:s("yU"),Be:s("auE"),Tk:s("auF"),nS:s("auG"),AG:s("yV"),AJ:s("Re"),jK:s("a9"),d0:s("a9"),yX:s("a9"),Fp:s("a9"),D:s("a9"),Je:s("a9"),B:s("a9"),TM:s("a9"),xL:s("a9"),KL:s("a9"),b4:s("ix"),Lu:s("ix"),MA:s("ix"),Ih:s("ix"),SP:s("Rh"),nd:s("em"),uE:s("dE"),C1:s("dE"),Uv:s("dE"),jn:s("dE"),YC:s("dE"),lG:s("dE